Hallo, ich möchte gerne Sprache über ein Mikrofon aufnehmen und diese über das TCP/IP Protokoll an einen Server senden der die Daten weiterverarbeitet. Die Qualitätsanforderungen an die Sprache sind sehr gering. Simple Telefonqualität reicht völlig aus! Ebenfalls soll auch Sprache von einem Server per TCP/IP entgegengenommen werden und wiedergegeben werden. Reicht für dieses Vorhaben ein 8bit Controller (z.B. AVR) mit entsprechendem Netzwerk-IC oder sollte man besser in Richtung AVR32 Controller und Linux gehen? Herzliche Grüße Bernd
hmmm ... ist jetzt nicht mein Fachgebiet, aber ich hol den Beitrag mal hoch, würd mich auch interessieren. Der Haken beim ottonormal AVR ist zweierlei. Der ADC ist nicht besonders schnell in höherer Auflösung und in niedriger ist die Quali nicht so besonders. Aber gehen wir mal von 8 Bit Auflösung und 7KHz Abtastrate aus, das sollte noch einigermaßen verständlich sein, dann sind das jede Sekunde 7KB an Daten die der Rechenknecht verwursteln müsste ... aufnehmen, puffern, verpacken und verschicken ... als unkomprimierte Daten versteht sich. Kompression aufm AVR wird schon noch mal ne Nummer haariger. hmmm ... ich würd schätzen, da stößt er an die Grenzen von RAM und Geschwindigkeit. AVR32 ist schon ne ganze Nummer mächtiger, die Programmierung nicht gerade trivial, schon garnicht im Vergleich mit dem Ottonormal_AVR und ob das unter Linux in Echtzeit geht ... keine Ahnung. Du schleppst halt das OS mit rum.
In der Atmel Application-Note AVR335 wird mit einem 8MHz getaktem 80S8535 Sprache (4kHz Bandbreite) auf DataFlash abgespeichert. So aus dem Bauch heraus: Ein Atmega der neueren Generation mit 20Mhz getakt sollte für Dein Vorhaben genügen.
Ich denke* (spekuliere) das einer der Größeren 8 Bit AVRs (also kein Tiny11) zumindest dem Audiopart gewachsen sein dürfte, wenn du dich in der Qualität beschränkst. Zu aller erst solltest du austesten welche Samplerate du mindestens brauchst um die benötigte Qualität zu erreichen. Da wahrscheinlich die Sprachverständlichkeit im Vordergrund steht solltest du ein paar 'Hörproben' machen. Sobald du weisst was du brauchst kannst du dir benötigte Datenrate (nur um das Audio zwischen Netzwerk und DA/AD Wandlern hin und her zu schieben) ja ausrechnen. Das Signal zu Komprimieren wird wohl nicht gehen von der Geschwindigkeit her mit einem 8bitter in Software. Dann musst du klären wie viel Overhead der TCP/IP Stack mit bringt. Wenn das alles passt, so grob über den Daumen, dann -> 8Bit. Ansonsten solltest du schauen ob es nicht irgendeinen Hardware En/Decoder gibt (mp3?) der das Signal für deinen 8Bitter eindampft. (Und das Preislich sinn macht...) Ansonsten solltest einen etwas dickeren Prozessor nehmen, doch linux ist für eine solch triviale Aufgabe wahrscheinlich eher hinderlich als hilfreich. Alle Angaben ohne Gewehr* *peng
Okay, danke für die Überlegungen! Mir macht momentan weniger die Abtastung als vielmehr die Netzwerkkommunikation Sorgen :) Habe momentan noch keinen Schimmer wie man mit einem 8-bitter eine TCP/IP Kommunikation hinbekommen kann wo dann auch noch ein "Audiostream" drüber gesendet bzw. empfangen wird...
>Habe momentan noch keinen Schimmer wie man mit einem 8-bitter eine >TCP/IP Kommunikation hinbekommen kann wo dann auch noch ein >"Audiostream" drüber gesendet bzw. empfangen wird... Dann macht man sich halt mal selber schlau. Suchen, suchen, suchen....
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.