Hallo, nochmal alles Gute imn Neuen Jahr 2014! Die Frage die ich jetzt stelle ist schon ein Problem zu formulieren. AMBE ist ein Vocoder der für ganz langsame Bitraten einen Audiostream (Sprache) in Coeffizienten umwandelt. Ein Sprachsignal wird analyziert dann in Coeffizienten umgewandelt mit einem FEC (Forward Error Correction) versehen und dann via einem Funksignal als DMR (Digital Mobile Radio) über dem Äther verschickt. Die Empfangsseite entpackt die Datenpakete und syntetisiert die Coeffizenten wieder zu einem Sprachsignal. Leider gibt es denn AMBE nur als Hardware das bedeutet das man keinen Umsetzer für so ein Siganl basteln kann wenn man z.B. auf einen anderen Audiostream umrechnen möchte. Kennt jemand dieses Verfahren das hier angewendet wird und/oder kann mir jemand erklären wie man so einen Analyzer programmieren kann. Das Problem für mich ist das ich schon verstehe das man hierführ einen Audioanalyzer programmieren muss und dann mittels DFT/FFT die Coeffizenten analysiert. Genau das ist es was ich machen will. Einen Analysator und dann das Ergebniss dieser Analyse wieder synthetisieren und abspielen. Ob der Raspberry Pi das nun verarbeiten kann weis ich nicht oder zumindest ein PC kann das auf jeden Fall. Für Anregungen und Infos bin ich natürlich Dankbar. LG weakbit
Da das Ding durch Patente geschützt ist, wirst du kaum jemanden finden, der das als Opensource anbietet. Das ist ja schließlich einer der wesentlichen Kritikpunkte an D-STAR.
@Jörg, danke einmal für Deine Antwort - das ist nicht nur die Kritik an D-Star sondern an fast alle Digitalen Systemen. Da dieser Chip in D-Star, DMR, dPMR, APCO P25, Nexedge... und andere. Jedoch kann man die Koeffizienten Analyse und das Verfahren nicht patentieren. Ich suche nicht unbedingt genau den Vocoder sondern Jemand der sich da auskennt ob das nun das Gleiche ist oder ein so ähnliches Verfahren ist ist mir eigentlich nicht so Wichtig. Ich will auch keinen Chip nachbauen sondern lediglich verstehen wie das Ding funktioniert das ich ein Programm das ähnlich funktioniert schreiben kann. Wie kann man ein Geheimnis durch ein Patent Schützen ausser gar nicht - denn wenn ich das System nachbauen will so lese ich einfach die Patente aber da steht genau nichts drinnen. Was ich wissen will ist wie man so etwas programmiert - ich denke mir das es einen Softwareweg geben muss z.B. von diesem Codec auf einen anderen Codec umsetze kann. Als Beispiel wenn man nun diesen Codec empfangt so braucht man einen Decoder dann reformatiert man das Signal und sendet es mit einem anderen Codec Verfahren komprimiert weiter. Das Problem: Wir haben nun zig verschiedene Digital-Systeme das ganze erinnert an die 80er Jahre wo Video2000, VHS, Betamax den Markt bombardierten aber welches der Systeme ohne sich jetzt alle kaufen zu müssen setzt sich durch? Das bedeutet ads ein D-Star Nutzer nicht mit einem DMR Nutzer sprechen kann da liegt das Problem. Wenn man mit GSM telefoniert sagt man auch nicht welches System die BTS hat oder? Als HAM benötigt man einen Goldenen Esel um das alles mitzumachen, die Lager der Einzelnen Verfahren spalten sich in "ich hab Geld und bin besser(Markenfetischisten und Fans)" und/oder "ich kann nicht alle Geräte kaufen weil mir das alles zu teuer ist(wenn ich mir ein Gerät irgend eines Standards leiste kann, kann ich mit meinen Nachbarstationen nicht oder nur beschränkt mitreden)" Das bedeutet aber auch das sich die Lager von einander entfernen und nichts gemeinsames ausser über das Geld entscheidende System auf der Amateurfunkseite bleibt! Soll heissen diejenigen die sich das alles leisten können spalten das Lager in mehrere Teile - ab diesem Punkt ist es kein HAM Spirit mehr das muss auch gesagt werden und dann gibt es überhaupt keinen mehr der sich für dieses Hobby interessiert(vor allem die Jugend interessiert sich dann überhaupt nicht mehr im Zeitalter von Skype und Co.). Man kann aus der Problematik alleine hier im Raum Wien feststellen das es D-Star, DMR 70cm, DMR 2m, C4FM(das neue Verfahren) wenn man in Vorarlberg ist gibt es APCO P25. Also wie viele Geräte benötigt man!? Es ist ein Wahnsinn und erinnert an die 80er als noch jedes Land ein anderes Mobilnetz hatte. LG weakbit
:
Bearbeitet durch User
Hans Grüner schrieb: > Was ich wissen will ist wie man so etwas programmiert Ich vermute, dass du da im DSP-Forum die kompetenteren Leute treffen wirst.
Hans Grüner schrieb: > patentieren. Ich suche nicht unbedingt genau den Vocoder sondern Jemand > der sich da auskennt ob das nun das Gleiche ist oder ein so ähnliches > Verfahren ist ist mir eigentlich nicht so Wichtig. Ich will auch keinen > Chip nachbauen sondern lediglich verstehen wie das Ding funktioniert Das Prinzip ist ja nicht so wahnsinnig schwer. Auf der einen Seite hat man eine Welle, auf der anderen Seite eine Standardgleichung mit unbekannten Koeffizienten. Die Analyse besteht nun darin, die Koeffizienten dergestalt zu bestimmen, dass die Gleichung mit eingesetzten Koeffizienten möglichst exakt die ursprüngliche Welle beschreibt. Das Stichwort 'Fourier-Analyse' bzw. die mathematische Vorstufe 'Fourier-Reihe' ist schon nicht schlecht. Im Prinzip ist das auch nichts anderes als ein Curve-Fitting, dessen einfachster Fall die lineare Regression darstellt. Anstelle einer Punktwolke bleiben nur noch 2 Werte k und d übrig, die die Punktwolke näherungsweise beschreiben, weil die Punkte alle auf der Geraden y = k * x + d liegen. Nur das du hier natürlich keine Geradengleichung nimmst, sondern eine Gleichung, die grundsätzlich schon mal eine periodische Welle abbilden kann, wie zb eine Sinus oder Cosinus-Funktion, bzw. entsprechende Kombinationen davon. Und man sucht auch nicht nach Koeffizienten, die die Welle als Ganzes möglichst gut beschreiben, denn dann würde man nie fertig, sondern man beschränkt sich dann eben zb auf die Kurve, die sich ergibt, wenn man die nächsten (Hausnummer) 200 Sampling-Punkte betrachtet. Die Frage ist dann zb, wie die Koeffizienten von
1 | y = a1 * cos( k1 * t + phi1 ) + a2 * cos( k2 * t + phi2 ) + ...... |
sein müssen, damit dieses a1, k1, phi1, a2, k2, phi2, ... in die Gleichung eingesetzt und für verschiedene hintereinanderliegende Zeitpunkte t ausgerechnet, möglichst gut wieder die originalen Samplingpunkte ergibt. Übertragen werden brauchen dann nämlich nicht die 200 Sampling Punkte der originalen Aufzeichnung, sondern nur das a1, k1, phi1, a2, k2, phi2 (und alle weiteren Koeffizienten der Gleichung) und der Empfänger kann damit und mit der Kenntnis der Gleichung die Samplingwerte über die Zeit t wieder errechnen. Das grundsätzliche Prinzip ist nicht so wahnsinnig schwer. Schwer ist es, das dazu nötige Tempo zu erreichen.
:
Bearbeitet durch User
Ich kenne AMBE nicht, aber Sprachkodierer sind meiner Meinung nach nicht so ganz einfach zu realisieren: http://de.wikipedia.org/wiki/Code_Excited_Linear_Prediction
Vielleicht sollte man erst mal erklären, was AMBE ist: http://de.wikipedia.org/wiki/Advanced_Multi-Band_Excitation
Hier gibt es eine Seite, mit einem Open-Source 2400Bit/s Codec: http://www.rowetel.com/blog/?page_id=452 Es gibt auch einen Link auf das SVN-Repository. Ich würde mal sagen, die Software ist ziemlich aufwendig.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.