Hallo, ich habe einige Fragen zur Aufnahme und Wiedergabe von Audio. 1) Angenommen ich habe ein Elektret-Mikrofon als Audio-Quelle. Das Mikrofon-Signal wird verstärkt, tiefpass gefilter und AD-gewandelt. Dabei interessiert mich der Spektralbereich bis 3,4kHz. Wie dimensioniere ich meinen Tiefpassfilter? Angenommen ich taste mit 8kHz ab und meine Auflösung beträgt 12bit. Orientiert sich die benötigte Dämpfung des Tiefpasses bei 8kHz dann aus dem Quantisierungsrauschen, also entsprechend etwa -72dB? Oder orientiere ich mich eher an dem ENOB Wert des AD-Wandlers? Oder doch ganz anders? 2) Wenn ich jetzt beispielsweise mit 16kHz überabtaste und dann entsprechend digital filtere und downsample, dann lege ich meinen analogen Filter so aus, dass er bei 24kHz die benötigte Dämpfung hat. Im Bereich von 8kHz bis 16kHz entstehen dann zwar Aliasing-Effekte, diese filtere ich dann aber ja digital wieder heraus. Oder? 3) Nun möchte ich mein Audiosignal mit Hilfe einer PWM ausgeben, es gilt wieder 12bit und 8kHz. Zunächst beträgt die PWM Frequenz 8kHz. Wie dimensioniere ich jetzt meinen analogen Filter? Orientiere ich mich wieder an dem Qunatisierungsrauschen, also etwa -72dB? 4) Was passiert, wenn ich die PWM-Frequenz in den nicht hörbaren Bereich verlagere, beispielsweise 40kHz. Wie bestimme ich dann meinen Filter? -Ich benutze gar keinen analogen Filter, die Frequenz kann man eh nciht hören -Ich bestimme die Dämpfung des Gesamtsystems, bestehend aus einem analogen Filter, einem Verstärker und einem Lautsprecher, so, dass ich bei 40kHz eine Dämpfung von -72dB habe? -Oder bestimme ich das entpsrechend schon wie bei Frage 3? Ich würde mich sehr freuen, wenn ihr mir die ein oder andere Frage beantworten könntet? Zur Not hätte ich auch noch mehr ;-) Viele Grüße Michael
>Wie dimensioniere ich meinen Tiefpassfilter? Angenommen ich taste mit >8kHz ab und meine Auflösung beträgt 12bit. Orientiert sich die benötigte >Dämpfung des Tiefpasses bei 8kHz dann aus dem Quantisierungsrauschen, >also entsprechend etwa -72dB? Oder orientiere ich mich eher an dem ENOB >Wert des AD-Wandlers? Ich denke, das Filter muss schon bei 4,6kHz die ausreichende Dämpfung haben, egal ob du dich am Quantisierungsrauschen oder an der eff. Auflösung orientierst. Alles was oberhalb 4,6kHz (bis 8 + 3,4kHz, dann periodisch wiederholend) noch im Signal ist, taucht bei der DA-Wandlung wieder im Nutzspektrum auf. >Wenn ich jetzt beispielsweise mit 16kHz überabtaste und dann >entsprechend digital filtere und downsample, dann lege ich meinen >analogen Filter so aus, dass er bei 24kHz die benötigte Dämpfung hat. Im >Bereich von 8kHz bis 16kHz entstehen dann zwar Aliasing-Effekte, diese >filtere ich dann aber ja digital wieder heraus. Oder? Bei der Überabtastung mit 16kHz sollte entsprechend das Signal ab 16-3.4kHz sauber sein. Die Signale um 16 +- 3,4kHz sind nachher im Nutzsspektrum und auch digital nicht entfernbar.
Vielen Dank für deine Antwort. Da hatte ich wohl gestern abend einen Denkfehler. Ist klar, du hast natürlich recht. Aber für welche Dämpfgung lege ich das ganze denn genau aus? Wirklich für das Quantisierungsrauschen? Oder kann ich da Kompromisse eingehen? Von der Qualtität soll es nichts besonderes werden, Telefonqualität halt. Es sollte aber schon "sauber" designed sein. Viele Grüße Michael
Exakte Fakten habe ich da keine parat - aber: - die effektiven Bits geben eh die erreichbare Auflösung an, besser musst du also nicht werden. Wieviel da möglich ist, hängt vom Wandler und vom Aufbau ab. Bei 12Bit nominal sollten schon so ca. 10-11 bit effektiv erreicht werden, also 60-66 dB. - ausserdem sind im Nutzspektrum die Frequenzanteile bei den höheren Frequenzen mit geringerem Pegel enthalten: das kommt dir entgegen. Falls du keine Synthesizermusik übertragen willst ;-) - bei geforderter Telefonqualität sollten locker 60dB @ 4.6KHz ausreichen - wäre meiner Ansicht nach noch sauber designed. - für ein Spardesign müssen auch 45-50dB bei 4,6kHz ausreichen. Die Filterdämpfung nimmt in Richtung Abtastfrequenz ja weiter zu und die Signalpegel bei einer natürlichen Quelle nehmen ab. - bei Überabtastung mit 16kHz solltest du die Dämpfung bei 12.6kHz erreicht haben, d.h. das Filter wird einfacher. Und dort sind die Eingangssignalanteile noch viel geringer, so dass hier erst recht die 50dB ausreichen müssten. Theoretisch sind es natürlich die von dir genannten 72dB. Theoretisch hat der AD-Wandler aber auch 12 Bit Auflösung. Für reine Telefonqualität gab es (zumindest Anfang der 1980er) Wandler, die speziell für Telefon designed waren. Es waren eigentlich 12-bit-Wandler, denen aber eine gekrümmte Kennlinie (Stichwort A-Law bzw. µ-Law) vor- bzw. nachgeschaltet war, so dass damit die Ausgabe auf 8 Bit reduziert werden konnte. Bei leisen Signalen war die Auflösung 12 Bit udn damit geringes Quantisierungsgeräusch), bei sehr lauten jedoch nur 6 Bit, das höhere Quantisierungsgeräusch wurde aber durch das laute Nutzsignal zugedeckt. Ich müsste meine Diplomarbeit wieder heraussuchen ....
See this link: AVR335: Digital Sound Recorder http://www.atmel.com/dyn/resources/prod_documents/doc1456.pdf
Hey HildeK, es klingt so, als könntest du mir wirklich weiterhelfen ;-) Vielleicht kurz zum Hintergrund: Ich schreibe gerade an meiner Diplomarbeit, die sich im Wesentlichen mit der Komprimierung von Audiodaten beschäftigt. Also durchaus angefangen bei A-law und µ-law. Dazu soll auch ein einfaches Demonstrationssystem für die Sprachaufnahme,-speicherung und -wiedergabe entwickelt werden. Bislang habe ich aber halt noch keine genauen Quellen gefunden, die sich mit der Dimensionierung der benötigten Filter beschäftigen. Also wenn du mir vielleicht noch irgendeine Quelle nennen könntest, auf die ich bei der Dimensionierung entsprechend verweisen kann, dann würdest du mich so glücklich machen ;-)Von mir aus auch deine Diplomarbeit ;-) Und dann noch zwei zusätzliche Fragen: -Mein Rekonstruktionstiefpass lege ich entsprechend auf die gleiche Dämpfung wie beim Eingangsfilter aus? -Habe ich das richtig verstanden, dass sich die benötigte Dämpfung aber schon an der Auflösung orientiert? Also wenn du schreibst, für Spardesigns reichen 45-50dB, bezieht sich das auf 12bit oder? -Hierzu im Anschluss gleich noch ein Gedanke von mir, wo ich aber nicht sicher bin, ob das geht: Wenn ich die Auflösung des AD-Wandlers auf beispielsweise 11bit beschränke, mit 32kHz abtaste, meinen Tiefpass entsprechend dimensioniere und dann durch Oversampling mir mein eines "verlorenes" Bit wiederhole? Wäre das grundsätzlich möglich? Danke schonmal, Michael PS: Alle Antworten sind willkommen, es kann natürlich auch jeder andere als HildeK antworten :-)
@ Anonymous: Danke für den Hinweis. Leider wird in dieser Application Note, wie in irgendwie keiner, auf die benötigte Dämpfung eingegangen. Man kann zwar zurückrechnen, sich in der Praxis anschauen, das es funktioniert usw. Das reicht aber leider nicht so als theoretische Grundlage ;-)
>Bislang habe ich aber halt noch keine genauen Quellen gefunden, die sich >mit der Dimensionierung der benötigten Filter beschäftigen. Also wenn du >mir vielleicht noch irgendeine Quelle nennen könntest, auf die ich bei >der Dimensionierung entsprechend verweisen kann, dann würdest du mich so >glücklich machen ;-)Von mir aus auch deine Diplomarbeit ;-) Die Diplomarbeit ist irgendwo in Papierform auf dem Speicher (hoffentlich) - damals gabs noch kein Internet, noch nicht mal PCs. Es gibt also nichts in elektronischer Form. Ich baute einen digitalen Fernsprechapparat für ein Voruntersuchungssystem des heutigen ISDN. Soweit ich mich erinnere, hatte der eingesetzte Chip bereits die notwendige Filterei enthalten, ich musste da die Details nicht mehr erarbeiten - sorry, ist einfach zu lange her. Suche mal im Bereich Anti-Alias-Filter, Shannon, Nyquist, ITU G.711 >Und dann noch zwei zusätzliche Fragen: >-Mein Rekonstruktionstiefpass lege ich entsprechend auf die gleiche >Dämpfung wie beim Eingangsfilter aus? Schon - bei der DA-Wandlung wird das ursprüngliche Spektrum von 0.3-3.4kHz ja um die Abtastfrequenz herum wiederholt. Ohne Filter hast du dann um 8kHz nochmals zwei Bänder und die sollten wieder soweit gedämpft werden, dass das Quantisierungsgeräusch das einzige ist, was übrigbleibt. >-Habe ich das richtig verstanden, dass sich die benötigte Dämpfung aber >schon an der Auflösung orientiert? Also wenn du schreibst, für >Spardesigns reichen 45-50dB, bezieht sich das auf 12bit oder? Ja, die notwendige Dämpfung orientiert sich schon an der erforderlichen oder erreichbaren Auflösung des AD. Mehr muss nicht, den der Rest geht im Quantisierungsgeräusch unter. Andererseits auch an die Anforderungen an das Ergebnis und den zu leistenden Aufwand, z.B. 16 Bit AD für Sprachübertragung im Telefon wäre eben oversized! Meine 'Spar'-Aussage ist so zu verstehen, dass man für die allgemein akzeptierte Telefonqualität eigentlich mit weniger auskommen müsste. Die 3,4 kHz Bandbegrenzung sind ja qualitativ auch nicht gerade ein Renner. >-Hierzu im Anschluss gleich noch ein Gedanke von mir, wo ich aber nicht >sicher bin, ob das geht: Wenn ich die Auflösung des AD-Wandlers auf >beispielsweise 11bit beschränke, mit 32kHz abtaste, meinen Tiefpass >entsprechend dimensioniere und dann durch Oversampling mir mein eines >"verlorenes" Bit wiederhole? Wäre das grundsätzlich möglich? Meiner Meinung nach schon. Der größte Vorteil der OV-Methode ist aber die geringeren Anforderungen an die Filterflanken im Analogen mit dem Aufwand eines nachgeschaltete digitalen Filters. Dort kann man dann aber Typen wählen, die analog gar nicht zu bauen sind. Stichwort "lineare Phase". Ich habe mich mit der Oversampling-Sache noch kaum beschäftigt. Da würde ich dir mal raten, im Bereich AD/DA-Wandler für CD-Audio zu suchen. Dort wird meines Wissens auch mit 1 Bit DA gearbeitet. Aber: DA! Oben haben wir von Überabtastung und digitaler Nachfilterung geredet, jetzt von Erhöhung der Auflösung bei Überabtastung. Kann eng zusammenhängen, muss aber nicht - das überschaue ich gerade nicht, zumindest bei der AD-Wandlung. Darf man eigentlich so lange Postings schreiben ???
Hallo, ich bin mir nicht ganz sicher ob ich hier richtig bin, aber vielleicht könnt ihr mir trotzdem helfen. Ich beschäftige mich zur Zeit auch mit der Aufnahme und Wiedergabe von Audiosignalen mit einem LPC2138. Mein Problem dabei ist die Speicherung der Daten. Ich möchte gerne 10-30sec Aufzeichnen, das aber möglichst ununterbrochen in einem Ringpuffer (Datenrate: 10-16kByte/s). Mein erster Ansatz war, die Daten mit Speex zu komprimieren (1kByte/s)um sie im RAM zu halten. Das Problem dabei ist, daß die Kompression und Dekompression der Daten viel zu lange dauert (d.h. die Rechenleistung nicht ausreicht). Die Speicherung unkomprimierter Daten in den Flash ROM ist erstens wegen des zu langsamen schreibzugriffs (min. 1ms) und zweitens wegen der begrenzten Anzahl der schreib-lese- zugriffe nicht geeignet. Der Prozessor hatt auch kein Interface für externen Speicher. Wie würdet ihr das Problem lösen? Kennt jemand vielleicht ein geeignetes Hardwacodec, daß mir die Daten bereits komprimiert liefert oder einen eigenen Speicher besitzt? Gruß Harry
Danke für die schnelle Antwort, aber das mit dem Flash funktioniert (wie oben schon erwähnt) nicht, da ich alle paar ms (spätestens nach 1s) drauf schreiben muss. Der Speicher würde das nicht lange mitmachen.
zum Thema Oversampling fällt mir grad ein: ich hatte mal einen 1 Bit delta-Sigma converter gebaut, der durch oversampling eine genauigkeit von 10 Bit hatte. Allerdings für einem Temp. Sensor. (Microchip Applnotes) Soweit ich weis, ist das bei CD-Playern schon weit verbreitet.
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.