Die Audioverarbeitung ist ein Teilbereich der digitalen Signalverarbeitung. Audiosignale werden in digitalem Format erfasst, und bestimmte Eigenschaften des menschlichen Gehörs werden zusammen mit einigen mathematischen Techniken zur Komprimierung genutzt, um Audiodaten in Studioqualität und mit hoher Wiedergabetreue auf kleinen Datenträgern zu speichern oder die Daten mit niedrigeren Bitraten zu übertragen.
Anatomie des menschlichen Ohrs aus der Perspektive der Audioverarbeitung
Lassen Sie uns zunächst verstehen, wie das Ohr als Spektrumanalysator funktioniert. Das Ohr ist in drei Bereiche unterteilt: das Außenohr, das Mittelohr und das Innenohr.
Das Außenohr endet am Trommelfell und das Mittelohr beginnt am Trommelfell. Die in den Gehörgang des Außenohrs eintretenden Schallwellen werden in das Trommelfell geleitet und versetzen das Trommelfell in Schwingung. Die Intensität der Schwingungen hängt von den in der Schallwelle enthaltenen Frequenzen und der Stärke/Lautstärke dieser Frequenzen ab. Die Schwingungen werden über das Mittelohr an die Hörschnecke weitergeleitet. Die Cochlea ist ein Teil des Innenohrs. Das Innenohr kann mit Hilfe des "Digitalen Filtermodells", das in diesem Artikel beschrieben wird, mathematisch modelliert werden.
Abbildung 1: Die Anatomie des Ohrs aus der Sicht der Audioverarbeitung
(Mit freundlicher Genehmigung: https://www.webmd.com/cold-and-flu/ear-infection/picture-of-the-ear#1)
Der gekrümmte Teil der Cochlea (siehe Abbildung oben) enthält die Basilarmembran. Verschiedene Punkte auf der Basilarmembran im Längsschnitt einer entrollten Cochlea sind empfindlich für bestimmte Tonfrequenzen und dienen somit als Spektrumanalysator. Die Länge der Basilarmembran beträgt ca. 3,5 cm, nachdem die Cochlea abgerollt wurde.
Abbildung 2: Die Anatomie der Cochlea aus der Perspektive der Audioverarbeitung
(Mit freundlicher Genehmigung: https://www.britannica.com/science/ear/Transmission-of-sound-within-the-inner-ear)
Digitales Filtermodell der Basilarmembran
Wir modellieren kleine Abschnitte dieser Basilarmembran als digitale Filter. So kann die gesamte Basilarmembran als digitaler Filter dargestellt werden.
Abbildung 3: Digitales Filtermodell der Basilarmembran
Der Teil des Mittelohrs in der obigen Abbildung wirkt wie ein Bandpassfilter. Der Schalldruck in der Basilarmembran wird durch die oben gezeigten Filterbänder in elektrische Signale umgewandelt. Der Ausgang des Mittelohrs (Bandpassfilter) wird an kaskadierte Filter zweiter Ordnung weitergeleitet. In der Basilarmembran gibt es 128 Filter. Wenn ein Signal alle diese Filter durchläuft und einer nach dem anderen verarbeitet wird, dauert es aufgrund der Gruppenverzögerung aller 128 Filter zusammen zu lange, um in Echtzeit verarbeitet zu werden. Auch die für die Implementierung dieser 128 Filter erforderliche Rechenleistung ist enorm. Im menschlichen Ohr benötigt das Signal für den Weg vom Mittelohr zum Apex etwa 10 ms, aber wenn wir versuchen, es in Echtzeit zu implementieren, ist es praktisch unmöglich, die Ausgabe in Echtzeit zu erhalten.
Damit das obige Modell in Echtzeit funktioniert, wurde ein "paralleles Filterbankmodell" für die digitale Verarbeitung von Audiosignalen entwickelt. Wir wissen, dass jeder dieser 128 Filter ein bestimmtes Frequenzband verarbeitet. Um Echtzeitfähigkeit zu erreichen, verarbeiten wir daher ein Signal mit 32 parallelen Filterbänken. Diese 32 Filterbänder werden auch als Critical-Band-Filter bezeichnet.
Abbildung 4: Kritische Filterbänder
Das menschliche Gehör wird als Filterbank modelliert, und die Skala, die im Allgemeinen für die Modellierung des menschlichen Gehörs verwendet wird, ist als Bark-Skala bekannt, bei der die Mittenfrequenz in logarithmischer Weise organisiert ist.
Maskierung des menschlichen Gehörs
Der Frequenzbereich von 20 Hz bis 20 KHz wird im Allgemeinen in logarithmisch angeordnete kritische Bänder (Bark Bands) unterteilt. Experimente zu den Hörfähigkeiten des menschlichen Ohrs haben bestimmte Ergebnisse erbracht, auf deren Grundlage die Idee der Bark Bands entstand. Für diese Experimente wurden komplexe Signale verwendet, und die Hörfähigkeit des menschlichen Ohrs wurde anhand der Maskierung von Klängen, der Wahrnehmung der Phase von Klängen und der Lautheitskomponente in komplexen Klängen analysiert.
Abbildung 5: Überlappende Rindenbänder mit den jeweiligen Mittenfrequenzen
(Mit freundlicher Genehmigung: http://www-i6.informatik.rwth-aachen.de/web/Misc/Coding/365/li/material/notes/Chap4/Chap4.4/Chap4.4.html)
Es wurde festgestellt, dass die Signalkomponenten in einem kritischen Band (Bark Band) durch andere Komponenten im selben Band maskiert werden können. Dieses Phänomen wurde als "Intra-Band-Maskierung" bezeichnet.
Es wurde festgestellt, dass die Signalkomponenten in einem kritischen Band (Bark Band) durch Signalkomponenten in den benachbarten Bändern maskiert werden können. Dieses Phänomen wurde als "Inter-Band-Maskierung" bezeichnet.
Wenn wir also das menschliche Gehör als Frequenzanalysegerät betrachten, kann man den Audiofrequenzbereich in Filterbänke einteilen, die aus sich überlappenden Bandpassfiltern bestehen.
Die Maskierungskurve sieht für alle Frequenzen auf einer Rindenskala gleich aus. Die Maskierungskurve maskiert alle Signale unter der Kurve.
Die Maskierung kann in zwei Formen beschrieben werden:
- Simultanmaskierung (auch bekannt als "Frequenzmaskierung")Ein Beispiel für Simultanmaskierung wäre eine Person, die sich mit einer anderen Person unterhält, während eine andere Person vorbeigeht und lauthals schreit. In einem solchen Fall wird die leise menschliche Stimme durch die laute Stimme des Passanten verdeckt. Auch in der Musik lassen sich ähnliche Effekte beobachten, wenn sich verschiedene Instrumente gegenseitig verdecken können. Wie in der nachstehenden Abbildung zu sehen ist, werden bestimmte Frequenzen (in der Nähe der Maskierungskurve), die einen niedrigeren Schalldruckpegel als die "Maskierungsfrequenz" haben, ausgeblendet und sind daher nicht mehr hörbar.
Abbildung 6: Gleichzeitige Maskierung
(Mit freundlicher Genehmigung: https://www.researchgate.net/figure/Figure-1-Threshold-in-quite-and-masking-threshold-acoustical-events-in-the-closed-curve_fig1_272655094)
- Nicht-gleichzeitige Maskierung (auch bekannt als 'Temporal Masking')Dies geschieht im Zeitbereich. Temporale Maskierung kann innerhalb eines kleinen Zeitintervalls auftreten. Die akustischen Ereignisse unter den gekrümmten Bereichen (Pre-Masking und Post-Masking) in der Abbildung unten werden maskiert, wobei das Post-Masking-Phänomen von der Dauer des Maskers abhängt.
Abbildung 7: Nicht-gleichzeitige Maskierung (Temporal Masking)
(Mit freundlicher Genehmigung: https://www.sciencedirect.com/topics/computer-science/masking-effect)
Die Maskierungseffekte werden bei der Entwicklung von Audiocodiersystemen berücksichtigt. (Psycho-Akustisches Modell)
Bei der MP3-Codierung werden sowohl die zeitliche Maskierung als auch die Frequenzmaskierung verwendet, um die Ausgangsbitrate zu verringern. Die maskierten Signalinformationen (in der Nähe des Maskierers sowohl bei der Frequenz- als auch bei der zeitlichen Maskierung) werden in der Regel entfernt, und nur die "Maskierer"-Daten werden kodiert, wodurch die Ausgangsbits reduziert werden. Dies ist der Kernpunkt der Audio-Encoding-Technik.
Breitband-Audiocodierung
Die Datenrate eines hochwertigen Stereosignals beträgt etwa 1,4 Mbit/s bei einer Abtastrate von 44,1 KHz und einer einheitlichen Quantisierung von 16 Bit pro Abtastung. Bei der Codierung mit niedriger Bitrate werden die Maskierungseigenschaften des menschlichen Gehörs (wie oben erläutert) genutzt, um die unhörbaren Signale zu entfernen. Die niedrige Bitrate wird erreicht, indem der Frequenzbereich zunächst in eine Reihe von Bändern unterteilt wird (wie im Abschnitt Bark Band weiter oben erläutert), von denen jedes dann unabhängig verarbeitet wird. Das psychoakustische Modell (wie im Abschnitt über die Maskierung des menschlichen Gehörs erläutert) führt zu Datenraten im Bereich von 2 bis 4 Bits pro 16-Bit-Eingangssample. Der Ton wird in der Regel unabhängig für jeden Kanal verarbeitet.
Zunächst wird der Maskierungsschwellenwert bestimmt, dann werden die redundanten maskierten Abtastwerte verworfen und die verbleibenden Abtastwerte mit einem deterministischen Bit-Zuweisungsalgorithmus kodiert, um eine reduzierte Bit-Rate für hochqualitative Audiosignale zu erhalten. Wir verwerfen die redundanten Informationen auf der Kodierungsseite, so dass sie am Dekoderausgang nicht rekonstruiert werden können, weshalb wir diese Kodierungs-/Dekodierungstechnik als verlustbehafteten Kompressionsalgorithmus einstufen.
Die obige Technik wird in MP3- und AAC-Audiocodecs verwendet, die am häufigsten in der eingebetteten Medienverarbeitung eingesetzt werden.
Im Folgenden werden einige Audiocodecs beschrieben:
- MP3: Der beliebteste Standard für die Audiocodierung in der Branche der eingebetteten Medienverarbeitung. Er ist offiziell bekannt als MPEG-1 Audio Layer 3 Standard der Moving Picture Experts Group (MPEG) aus dem Jahr 1992 als Ergänzung zu ihrem MPEG-1 Videostandard. Polyphasige Digitalfilter werden verwendet, um das Eingangsaudiosignal in Teilbänder (Bark Bands) zu trennen, die modifizierte diskrete Kosinustransformation (MDCT) wird dann verwendet, um den Signalrahmen vom Zeitbereich in den Frequenzbereich zu konvertieren. Schließlich wird das psychoakustische Modell angewandt, um die redundanten Teile des Audiosignals zu entfernen (wie oben erläutert), und die Frequenzkoeffizienten werden kodiert, um das Audiosignal zu komprimieren.
- AAC: Advanced Audio Coding ist ein Codec der zweiten Generation, der nach MP3 entwickelt wurde. Er ist ähnlich wie MP3, erreicht aber eine deutlich bessere Komprimierung als MP3.
- WMA: Microsoft hat seinen eigenen (proprietären) Codec mit der Bezeichnung Windows Media Audio (WMA) als Konkurrenz zum MP3-Standard für die bezahlte Musikindustrie entwickelt. Daher ist auch das DRM (Digital Rights Management) in den Codec integriert.
- Vorbis: Es handelt sich um einen lizenzfreien verlustbehafteten Codec, der von Xiph.org veröffentlicht wird. Dieser Codec wird zunehmend bei der Verarbeitung eingebetteter Medien verwendet. Er unterstützt die Mehrkanal-Komprimierung und verwendet außerdem Techniken/Algorithmen zur Entfernung redundanter Informationen aus nahe gelegenen Kanälen.
- FLAC: Es handelt sich um einen lizenzfreien, verlustfreien Codec, der von Xiph.org herausgegeben wird und nicht die oben beschriebenen psychoakustischen Kodierungstechniken verwendet. Der Free Lossless Audio Codec (FLAC) bietet aufgrund seiner verlustfreien Natur keine so gute Kompression wie die oben genannten Codecs.
- AC-3: Dieser Audiocodec wurde von Dolby Laboratories entwickelt, um Mehrkanalton zu verarbeiten.
Schlussfolgerung
Die Komprimierung von Audiodaten unter Verwendung psychoakustischer Eigenschaften ist ein Erfolg im Bereich der eingebetteten Medienverarbeitung. Es wurde eine Vielzahl von Kompressionsalgorithmen entwickelt, die eine effiziente Implementierung von Audiocodecs (Audiokompressionsalgorithmen) ermöglichen. Die aktuellen Audiocodecs haben noch Spielraum für Verbesserungen in Bezug auf Qualität und Bitraten, aber das psychoakustische Modell wird ein wesentlicher Bestandteil der Codec-Implementierung bleiben.
Wir bei eInfochips bieten Softwareentwicklungsdienste für DSP-Middleware, d.h. Portierung, Optimierung, Support und Wartungslösungen für Sprach-, Audio- und Multimedia-Codecs für verschiedene Plattformen.
eInfochips bietet Dienstleistungen wie Integration, Prüfung und Validierung von Multimedia-Codecs. Wir kümmern uns auch um die Portierung und Optimierung von Deep-Learning-Algorithmen, Algorithmen für 3D-Sound, Pre-Processing und Post-Processing von Audio- und Videoblöcken. Auch die Implementierung und Parallelisierung kundenspezifischer Algorithmen auf Multi-Core-Plattformen ist unsere Stärke.
Für weitere Informationen zur Audioverarbeitung nehmen Sie bitte noch heute Kontakt mit uns auf.
Referenzen:
https://www.webmd.com/cold-and-flu/ear-infection/picture-of-the-ear#1
https://www.britannica.com/science/ear/Transmission-of-sound-within-the-inner-ear
https://en.wikipedia.org/wiki/Bark_scale
https://www.sciencedirect.com/topics/computer-science/masking-effect
http://www-i6.informatik.rwth-aachen.de/web/Misc/Coding/365/li/material/notes/Chap4/Chap4.4/Chap4.4.html