Forum: Mikrocontroller und Digitale Elektronik Audiosignale schmalbandig digital übertragen.


von thomas b (Gast)


Lesenswert?

Hallo Freunde der digitalen Kreativität,

ich suche eine einfache Möglichkeit Audiosignale möglichst schmalbandig 
digital zu übertragen. So 9,6 kB/s wäre das Maximum, eher weniger. Die 
Qualität der Audiostrecke ist weniger von Bedeutung (Sprache), die 
Bandbreite sollte so klein wie möglich sein. Wie fängt man da am besten 
an?

cu & thx tb

von BernhardT (Gast)


Lesenswert?

Hallo Thomas,
Wenn du was einfaches suchst: mit dem uraltem ADPCM - Packalgorithmus 
könnte es hinkommen. Ist auch sehr einfach - du speicherst nicht die 
gesampelten Werte, sondern nur die Differenz zwischen zwei Samples.
Gruß Bernhard

von Pirelli (Gast)


Lesenswert?

Darf man fragen wofür Du das brauchst, und vor allem, woher die 
Forderung des schmalen Bandes kommt?

Ansonsten würd ichs wahrscheinlich ISDN-ähnlich probieren, also 
abgestufte Quanisierungskennlinie (such mal nach A-Law) um bei niedrigen 
Pegeln besseren Rauschabstand zu bekommen. dann stellt sich noch ndie 
Frage, ob Du die Daten Roh, oder nach einem Kompriemeirungsverfahren 
schrumpfen willst. (Man könnte z.B. nur die Änderung zum vorherigen 
Abtastwert übertragen.)

von thomas b (Gast)


Lesenswert?

Ich versuche eine digitale Sprachübertragung über Datenfunkmodule zu 
realisieren. Die mache halt nur 9.6kb/s.

Die Differenz zwischen zwei Samples hat leider die  gleiche Dynamik wie 
der Wertebereich auch, wenn die Samplefrequenz am unteren Ende gewählt 
wird, und damit kaum einen komprimiereffekt, die 
ISDN-Quantisierungskennlinie ist schon ok, bringt aber keine 
komprimierung.

Ich hab da eher eine Chiplösung im Kopf, A/D/A + i2c + mp3.
Es gibt da den PCM1720 (glaub ich), Informationen zu diesem Thema 
scheinen eher dünn gesäht.

danke und weiter so. C.

von BernhardT (Gast)


Lesenswert?

MP3 - mit nem 8 bit Controler wirst du da kaum noch hin kommen -und das 
für Sprache. Enkoder und Dekoder Plus Audiocodec in einem Chip ?? - Ich 
kenn keinen ( PCM *** steht übrigens für Burr Brown, die sind von TI 
gekauft worden, also schau mal bei Texas).
Ansonsten googel mal nach Audio Kompressor ist in jedem Handy drin 
(billige IC's). Komprimiert den Dynamikbereich und reduziert damit die 
benötigte Bandbreite - Sprache wird dadurch aber eher vertändlicher.

Gruß Bernhard

von BernhardT (Gast)


Lesenswert?

P.S. der Audio Komperator ist natürlich nur eine erste Stufe um die 
Bandbreite zu reduzieren, reicht natürlich nicht aus. Ich glaube, das du 
nur mit einer Kombination von verschiedenen Techniken und mit Verzicht 
auf Übertragungsqualität  auf ein halbwegs wirtschaftliche Lösung 
kommst. Wenn Geld und Stromverbracu keine Rolle spielt => MP3.
Gruß Bernhard

von thomas b (Gast)


Lesenswert?

Wir bewegen uns in die richtige Richtung.
Dieser PCM-IC isr wirklich von Texas, hat A/D/A Wandler und integrierten 
mpg-Codec, wird angesteuert über i2c.
Also eigentlich genau das richtige, aber ich bekomme keiner weiteren 
Infos oder Bezugsquellen.

In Handys wird so was in der Art verbaut, das ist immer ein vergossener 
Chip, der alle Informationssignale verarbeitet.
Nennt sich wohl COBBA. Im Nokia 3210: NMP70643 Audio Codec (D/A and A/D 
convertor , to PCM 8kHz) and I/Q codec.

Ich denke das geht in die richtige Richtung, aber die verfügbaren 
Informationen werden weniger.

Geld spielt bei dem Projekt eine eher untergeordnete Rolle,
 Schmalbandigkeit heißt das Ziel.

cu & thx tb

von Benno (Gast)


Lesenswert?

@thomas b
Du hast doch eine Art Grafikkarte gebastelt hat, um einen TFT Monitor 
anzusteuern ?

Ich wäre an der Schaltung interessiert.

Könntest du einen Schaltplan zeichnen, oder zumindest die Schaltung grob 
beschreiben ?

von thomas b (Gast)


Angehängte Dateien:

Lesenswert?

@benno: hab mal ein paket aus schaltplan(nur grob), Sourcen, und ein 
Foto als Zip in den anhang gelegt.
Das Modul besteht aus einem Taktgeneraror, 4 NANDgattern, einem 
Binärzähler, einen SRAM und ein AVR. Der Zähler generiert direkt und 
ungepuffert den RAM. Er wird getaktet vom AVR(Schreibmode) oder vom 
Quarz, dieses stellt der AVR ein. Der Zähler kann vom AVR oder/und 
(steuerbar vom AVR) vom SRAM rückgesetzt werden. Der SRAM ist über 1k 
Widerstände direkt mit den AVR verbunden, so das dieser den RAM 
schreiben und lesen kann. Der SRAM Datenbus wird zusätzlich als E/A Port 
genutzt (ungepuffert). So kann man aus 5 IC's eine Graka mit freier 
Auflösung und freien Timing ralisieren. Die freien Datenbits kann man 
kostenlosen Datenlogger nutzen.
Ich hab mir eine Simulation unter Delphi geschrieben und programmiere 
erst mal hier die Grundlagen weiter, im Moment liegt das Projekt auf 
Eis.

Ich such weiter Informationen zur Audio Komprimierung.
MP3 könnte die Lösung sein, wenn ich einen einfachen MP3-coder finde. 
Helft mir, bitte.

cu & thx tb

von Benno (Gast)


Lesenswert?

Erstmal danke für die Infos. Wenn ich wieder mal Zeit habe, werde ich es 
ausprobieren.

Zur Audiokomprimierung:
Nach einem einfachen Verfahren, um Sprache auf <=8kBit/s zu komprimieren 
suche ich auch schon lange.
Meine bisherigen Erfolge: Leichte Datenreduktion durch u-Law usw.
In einem Anrufbeantworter werden 30 Sekunden Sprache in guter Qualität 
in einem 32kByte RAM gespeichert. Oder die Gespräche von bis zu 15 
Minuten Länge in 512kByte !
Auf der Platine sitzt ein unbekanntes IC:
D6308G11AQC
(c) (M) 1996 DSPG
AK0922.1
TM3712A-0004B 9727

Mal davon abgesehn, dass diese IC speziell für
Anrufbeantworter gebaut wurde, könnte man solch ein IC bestimmt auch für 
andere Dinge missbrauchen:
Das IC ist direkt mit dem EPROM  (für die Sprachausgabe der Menüführung) 
und einem 512kB DRAM verbunden. Die Audiodaten werden seriell mit 
64kbit/s (entspricht 8kHz) an einen DA Wandler gesendet (bzw. empfangen 
für die Aufzeichnung).
Ich habe alles mal ausgerechnet: Das IC komprimiert die Audiodaten von 
64kbit/s auf etwa 8kbit/s. Wenn es solche ICs einzeln gäbe (zu 
akzeptablen Preisen), dann wäre es wirklich super.

von thomas b (Gast)


Lesenswert?

Danke für die Info.
Der IC scheint ein programmierter DSP zu sein,
keine Informationen dazu gefunden, waäre aber von den Daten her genau 
das richtige.

 32kb-30sec -> 1kB/s
512kb-15min -> 0,5kB/s

-> genau das brauche ich.

Zur not schlachte ich so einen AB, was für einen hast Du denn (Fa., 
Typ). Bei Ebay ersteigere ich ab und zu Geräte als Teilespender, sieht 
so aus als ob ich einen neuen AB brauche :-)
Wenn es nicht so viel Umstände macht, könnte ich dann eine 
Funktionsskizze von Deinen Erkenntnissen bekommem?

cu & thx tb

von BernhardT (Gast)


Lesenswert?

Hallo Thomas, schau dir das mal an:
http://www.telecom.fh-htwchur.ch/seminar/download/Sprachkompression.pdf
Gruß Bernhard

von Benno (Gast)


Angehängte Dateien:

Lesenswert?

Die PDF Datei ist interessant, und zeigt das was ich bereits vermutet 
hatte:
Ohne aufwendigen DSP ist alles unmöglich.

Zum Anrufbeantwortet:
Hersteller: Loewe (kann ich zwar nicht glauben, denn irgendwie sah alles 
nach Billigmüll aus Fernost aus.)

Auf der Hauptplatine: Analoge Bauelemente, um den Anruf zu erkennen usw. 
Das ganze Zeug halt.
Eine Digitalplatine (mit dem Controller, DRAM und EPROM) ist über ein 
30-50 poliges Kabel verbunen.
Die Schaltung zweckentfremden zu können, wäre echt super, aber ich halte 
dies für unmöglich.
Die Daten im EPROM scheinen keine puren Audiodaten zu enthalten, sondern 
auch Steuercodes (bzw. Adressen) zu enthalten, wann die einzelnen 
Audiodaten beginnen bzw, enden.
Die ersten 406 Bytes als 16 bit Werte gelesen ergeben steigende Werte.
Wenn man die Daten verändert, kann es passieren dass ein Wort oder 
Satzteil unendlich lange wiederholt wird.
Ich habe schon mehrer Nachmittage lang zu diesem Thema+Anrufbeantworter 
im Internet gesucht, aber vor allem nur Software Codecs gefunden.
Ich habe den Inhalt des EPROMs mal angehängt.

von thomas b (Gast)


Lesenswert?

Danke für die Infos.

Ergebnisse:

 MP3   -> Audio als chiplösung kein Problem
 Audio -> Mp3 Problem!
 andere Codec als Chiplösung noch nicht gefunden.

Sieht so aus als müsste ich wirklich ein MP3-Diktiergerät kaufen und 
schlachten, seufz ....

cu & thx tb

von Michael Kiausch (Gast)


Lesenswert?

es gibt einen all_in_wonder mpeg/voice encoder/decoder chip

http://www.yountel.com/product-eng/all_product.htm

ist allerdings fraglich, ob der fuer normalsterbliche erwerblich ist, 
sieht fast nicht danach aus

mfg Michael

von thomas b (Gast)


Lesenswert?

@michel: dicht dran, hat zwar eigentlich nur 16kB/s, aber wenn man das 
Teil einfach langsamer taktet?
Danke für die Info, wir kommen immer näher ran.

cu & thx tb

von Michael Kiausch (Gast)


Lesenswert?

hab nochmal was gesucht, und ne ganz interessante linkseite gefunden:
http://users.iafrica.com/k/ku/kurient/dsp/links.html

dann ne review ueber nen mp3 encoder/decoderchip:
http://www.chipcenter.com/analog/products_600-699/prod637.htm

mfg
Michael

von thomas b (Gast)


Lesenswert?

Hi Leutz,

noch mal Danke an alle die geholfen haben.
Ich hab noch folgendes gefunden:

http://www.dspguide.com/datacomp.htm

Mal sehen was wird.
Falls noch jemand eine Info findet, immer raus damit.

cu & thx tb

von BernhardT (Gast)


Lesenswert?

Bei den letzten MP3 player Postings hat NIK ne quelle für Micronas MAS 
3587F http://www.vitrum.cz/snail/eng/mp3sale.htm
in Tschechien (33 EURO + )gepostet . Wenn ich das Datenblat nicht total 
missverstehe, ist das ein all-in one AD/DA MP3 Decoder und Encoder der 
wohl auch bis runter zu 8 kB/sec kann. Ich in deinem Fall würde bei Beck 
GmbH  oder Micronas in München versuchen 2 - 3 Mas3504D als Muster zu 
erbetteln (die Jungs sind es sicher gewohnt das ständig irgendwelche 
Bastler die nen MP3 - Player nachbauen wollen bei Ihnen anrufen - dein 
Projekt ist für die warscheinlich mal was neues. Der Mas3504D ist leider 
ohne AD/DA aber dank G.729 echt goile Compression, optimiert für Sprache 
(voice-recorder).
Zieh dir mal die Datenblätter.
Gruß Bernhard

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
Noch kein Account? Hier anmelden.