Leitfaden für Web-Audiocodecs

Selbst einfache, hochauflösende Stereo-Sounds können eine beträchtliche Menge an Speicherplatz beanspruchen. Für Webentwickler ist vor allem die benötigte Netzwerkbandbreite wichtig, um Audio zu übertragen, sei es für das Streaming oder für den Download zur Nutzung während eines Spiels. Die Verarbeitung von Audiodaten zum Kodieren und Dekodieren wird von einem Audio-Codec (COder/DECoder) durchgeführt. In diesem Artikel betrachten wir die auf dem Web verwendeten Audiocodecs zur Komprimierung und Dekomprimierung von Audio, ihre Fähigkeiten und Anwendungsfälle und geben Hinweise bei der Auswahl von Audiocodecs für Ihre Inhalte.

Darüber hinaus verwenden WebRTC-Implementierungen im Allgemeinen eine Teilmenge dieser Codecs zum Kodieren und Dekodieren von Medien und können zusätzliche Codecs unterstützen, um eine optimale plattformübergreifende Unterstützung für Video- und Audiokonferenzen zu gewährleisten und besser mit älteren Telekommunikationslösungen zu integrieren. Siehe Von WebRTC verwendete Codecs für Details.

Informationen zu den grundlegenden Konzepten, wie digitale Audio funktioniert, finden Sie im Artikel Konzepte digitaler Audio.

Übliche Codecs

Die folgende Liste zeigt die auf dem Web am häufigsten verwendeten Codecs und welche Container (Dateitypen) sie unterstützen. Wenn Sie nur wissen müssen, welche Codecs überhaupt verwendet werden können, ist dies für Sie. Natürlich können einzelne Browser entscheiden, nicht alle dieser Codecs zu unterstützen, und ihre Unterstützung für die Containerarten, die sie verwenden können, kann ebenfalls variieren. Darüber hinaus können Browser entscheiden, zusätzliche Codecs zu unterstützen, die nicht in dieser Liste enthalten sind.

Codec-Name (kurz) Vollständiger Codec-Name Containerunterstützung
AAC Advanced Audio Coding MP4, ADTS, 3GP
ALAC Apple Lossless Audio Codec MP4, QuickTime (MOV)
AMR Adaptive Multi-Rate 3GP
FLAC Free Lossless Audio Codec MP4, Ogg, FLAC
G.711 Impuls-Code-Modulation (PCM) von Sprachfrequenzen RTP / WebRTC
G.722 7 kHz Audiokodierung innerhalb von 64 kbps (für Telefonie/VoIP) RTP / WebRTC
MP3 MPEG-1 Audio Layer III MP4, ADTS, MPEG, 3GP

Wenn MPEG-1 Audio Layer III Codecdaten in einer MPEG-Datei gespeichert werden und es keinen Videotrack in der Datei gibt, wird die Datei typischerweise als MP3-Datei bezeichnet, obwohl sie immer noch eine MPEG-Formatdatei ist.

Opus Opus WebM, MP4, Ogg
Vorbis Vorbis WebM, Ogg

Faktoren, die das kodierte Audio beeinflussen

Es gibt zwei allgemeine Kategorien von Faktoren, die das durch den Encoder eines Audiocodecs ausgegebene kodierte Audio beeinflussen: Informationen über das Format und den Inhalt der Quell-Audio und der Codec sowie seine Konfiguration während des Kodierungsprozesses.

Für jeden Faktor, der das kodierte Audio beeinflusst, gibt es eine einfache Regel, die in fast allen Fällen wahr ist: Da die Genauigkeit des digitalen Audios durch die Granularität und Präzision der aufgenommenen Samples bestimmt wird, um es in einen Datenstrom zu konvertieren, gilt: Je mehr Daten verwendet werden, um die digitale Version des Audios darzustellen, desto näher werden die aufgenommenen Klänge dem Ausgangsmaterial entsprechen.

Die Auswirkung des Quell-Audioformats auf die kodierte Audioausgabe

Da kodiertes Audio von Natur aus weniger Bits verwendet, um jedes Sample darzustellen, kann das Quell-Audioformat tatsächlich weniger Einfluss auf die Größe des kodierten Audios haben, als man erwarten könnte. Dennoch beeinflussen eine Reihe von Faktoren die Qualität und die Größe des kodierten Audios. Die folgende Tabelle listet einige wichtige Faktoren des Quell-Audiodateiformats und ihre Auswirkung auf das kodierte Audio auf.

Die Auswirkung von Quell-Audioformat und Inhalt auf die Qualität und Größe des kodierten Audios
Merkmal Auswirkung auf die Qualität Auswirkung auf die Größe
Kanalanzahl Die Anzahl der Kanäle beeinflusst nur die Wahrnehmung von Richtungswirkung, nicht die Qualität. Jeder Kanal kann die Größe des kodierten Audios erheblich erhöhen, abhängig von Inhalt und Encoder-Einstellungen.
Rauschen / Zischen Unerwünschtes Hintergrundrauschen oder Zischen neigt dazu, die Audioqualität sowohl direkt (durch Überdecken von Details der Vordergrund-Audio) als auch indirekt (durch Komplizieren der Audiowellenform, wodurch es schwieriger wird, die Größe zu reduzieren und trotzdem die Präzision zu bewahren) zu verringern. Rauschen, statische Aufladungen oder Hintergrundrauschen erhöhen die Audiokomplexität, was im Allgemeinen die Möglichkeit der Komprimierung reduziert.
Abtastrate Je mehr Samples pro Sekunde verfügbar sind, desto höher ist die zu erwartende Klangtreue des kodierten Audios. Eine Erhöhung der Abtastrate erhöht die Größe der kodierten Audiodatei.
Sample-Größe Je größer die Samples sind, desto mehr Details kann jedes Sample enthalten, was zu einer genaueren Darstellung jedes Samples führt. Hängt vom Codec ab; Codecs haben typischerweise ein internes Sample-Format, das möglicherweise nicht mit der Original-Sample-Größe übereinstimmt. Mehr Quelldetails können die kodierte Datei vergrößern; sie werden sie niemals verkleinern.

Natürlich können diese Effekte durch Entscheidungen beim Kodieren des Audios verändert werden. Wenn zum Beispiel der Encoder so konfiguriert ist, dass die Abtastrate reduziert wird, wird die Auswirkung der Abtastrate auf die Ausgabedatei entsprechend reduziert.

Für weitere Informationen über diese und andere Merkmale von Audiodaten, siehe Audio-Datenformat und Struktur.

Die Auswirkung der Codec-Konfiguration auf die kodierte Audioausgabe

Audiocodecs verwenden in der Regel ausgeklügelte und hochkomplexe mathematische Algorithmen, um Quelldaten zu komprimieren und erheblich weniger Speicherplatz in Anspruch zu nehmen oder weniger Netzwerkbandbreite zu benötigen. Neben der Auswahl des zu verwendenden Encoders haben Sie möglicherweise die Möglichkeit, den Encoder mithilfe von Parametern anzupassen, die spezifische Algorithmen auswählen, diese Algorithmen abstimmen und die Anzahl der Durchläufe festlegen, die während der Kodierung angewendet werden sollen.

Auswirkungen der Audio-Encoder-Konfiguration auf Qualität und Größe
Merkmal Auswirkung auf die Qualität Auswirkung auf die Größe
Verlustfreie Kompression Kein Verlust an Klangtreue Wahrscheinlich nicht mehr als 40-50% Kompression
Verlustbehaftete Kompression Immer etwas Verlust an Klangtreue; je höher die Kompression, desto größer der Verlust Kompression von bis zu 80-95% möglich
Bitrate Je höher die Bitrate, desto höher kann die Qualität sein Je höher die Bitrate, desto größer ist die kodierte Datei wahrscheinlich
Audiofrequenz-Bandbreite Wenn sich in dem entfernten Frequenzband Audio befindet, kann ein wahrnehmbarer Verlust an Klangtreue auftreten Das Entfernen von Frequenzbändern bedeutet weniger Daten zum Kodieren und somit kleinere kodierte Dateien
Stereo-Kodierung Einfache Stereo- und Mid-Side-Stereo-Kodierung beeinflussen die Qualität nicht; Intensitäts-Stereo-Kodierung führt jedoch zu einem Verlust an Detailgenauigkeit. Joint-Stereo kann die Größe des kodierten Audios bis zu einem gewissen Grad reduzieren

Die verfügbaren Parameter und der Bereich möglicher Werte variieren von Codec zu Codec und sogar bei verschiedenen Kodierungsprogrammen für denselben Codec, daher lesen Sie die Dokumentation, die mit der von Ihnen verwendeten Kodierungssoftware geliefert wird, um mehr zu erfahren.

Merkmale, die die Größe des kodierten Audios beeinflussen

Mehrere Faktoren beeinflussen die Größe des kodierten Audios. Einige davon betreffen die Form des Quell-Audios; andere sind mit Entscheidungen verbunden, die während der Kodierung des Audios getroffen werden.

Verlustfreie versus verlustbehaftete Codecs

Es gibt zwei grundlegende Kategorien der Audiokomprimierung. Verlustfreie Kompressionsalgorithmen reduzieren die Größe des Audios, ohne die Qualität oder Klangtreue zu beeinträchtigen. Beim Dekodieren von Audio, das mit einem verlustfreien Codec wie FLAC oder ALAC komprimiert wurde, ist das Ergebnis in jeder Weise identisch mit dem Original-Sound, bis auf das Bit genau.

Verlustbehaftete Codecs hingegen nutzen die Tatsache, dass das menschliche Ohr kein perfekter Interpret von Audio ist, und die Tatsache, dass das menschliche Gehirn die wichtigen Informationen aus unvollständigem oder rauschendem Audio herausfiltern kann. Sie entfernen Audiofrequenzen, die nicht oft verwendet werden, tolerieren einen Verlust an Präzision in der dekodierten Ausgabe und verwenden andere Methoden, um Audioinhalte, Qualität und Klangtreue zu verlieren, um kleinere kodierte Medien zu erzeugen. Beim Dekodieren ist die Ausgabe in unterschiedlichem Maße immer noch verständlich. Der spezifische verwendete Codec und die ausgewählte Kompressionskonfiguration bestimmen, wie nah die Ausgabe dem ursprünglichen, unkomprimierten Audiosignal zu sein scheint, wenn sie vom menschlichen Ohr gehört wird.

Aufgrund der Unterschiede in der Funktionsweise verlustbehafteter Codecs im Vergleich zu verlustfreien, insbesondere der Tatsache, dass verlustfreie weitaus vorsichtiger in ihrer Komprimierung sein müssen, führen verlustbehaftete Codecs nahezu immer zu wesentlich kleineren komprimierten Audiodaten als verlustfreie Codecs.

Allgemein gesagt sind die häufigsten Gründe für die Wahl verlustfreier Audios die Anforderungen an eine Archivierungsqualitätsspeicherung oder das Verlangen, Audiosamples neu zu mischen und zu komprimieren, um eine Verstärkung von Artefakten im Audio aufgrund der erneuten Komprimierung zu vermeiden. Für das Echtzeit-Streaming von Audio ist in der Regel ein verlustbehafteter Codec erforderlich, um sicherzustellen, dass der Datenfluss mit der Audio-Wiedergaberate mithalten kann, unabhängig von der Netzwerkleistung.

Maximale Anzahl von Kanälen

Der an jeden Lautsprecher in einem Soundsystem gelieferte Ton wird von einem Audiokanal in einem Stream bereitgestellt. Mono-Sound ist ein einzelner Kanal. Stereo-Sound sind zwei. 5.1-Surround-Sound hat fünf Audiokanäle plus einen Low Frequency Enhancement (LFE)-Kanal.

LFE-Kanäle sind speziell dafür ausgelegt, niederfrequente Audiodaten zu speichern, und werden häufig verwendet, um Audiodaten für Subwoofer bereitzustellen, beispielsweise. Wenn Sie die Anzahl der Audiokanäle in der Form X.Y (wie 2.1 oder 5.1) geschrieben sehen, ist die Zahl nach dem Dezimalpunkt, Y, die Anzahl der LFE-Kanäle. Zum Beispiel unterstützt MP3 einen LFE-Kanal, während AAC bis zu 16 unterstützt.

Zusätzlich zur Bereitstellung von Audio für bestimmte Lautsprecher in einem Soundsystem erlauben einige Codecs möglicherweise, dass Audiokanäle verwendet werden, um alternative Audioinhalte bereitzustellen, wie z. B. Gesang in verschiedenen Sprachen oder Beschreibungen für sehbehinderte Menschen.

Audiofrequenz-Bandbreite

Die Audiofrequenz-Bandbreite eines Codecs gibt den Bereich der Audiofrequenzen an, die mit dem Codec dargestellt werden können. Einige Codecs arbeiten speziell, indem sie Audio, das außerhalb eines bestimmten Frequenzbereichs liegt, eliminieren. Es gibt einen Zusammenhang zwischen der Abtastrate und der maximalen Schallfrequenz, die von einer mit einem Codec dargestellten Wellenform dargestellt werden kann. Auf theoretischer Ebene ist die maximale Frequenz, die ein Codec darstellen kann, die Abtastrate geteilt durch zwei; diese Frequenz wird als Nyquist-Frequenz bezeichnet. In der Praxis liegt das Maximum etwas niedriger, aber es liegt nahe.

Die Audiofrequenz-Bandbreite kommt besonders lebhaft zum Tragen, wenn ein Codec speziell dafür ausgelegt oder konfiguriert ist, menschliche Sprache anstelle eines breiten Spektrums von Klängen darzustellen. Menschliche Sprache liegt in der Regel im Audiofrequenzbereich von 300 Hz bis 18 kHz. Der Großteil der menschlichen Vokalisationen existiert jedoch im Bereich von 300 Hz bis 8 kHz, und Sie können genug menschliche Vokalisationen im Frequenzbereich von 500 Hz bis 3 kHz erfassen, damit sie noch verständlich sind.

Aus diesem Grund beginnen sprachspezifische Codecs häufig mit dem Entfernen von Geräuschen, die außerhalb eines festgelegten Bereichs liegen. Dieser Bereich ist die Audiofrequenz-Bandbreite. G.722 entfernt beispielsweise Geräusche außerhalb der Audiofrequenz-Bandbreite von 50 Hz bis 7 kHz. Dies reduziert die Datenmenge, die von Anfang an codiert werden muss.

Codec-Details

Im Folgenden werfen wir einen kurzen Blick auf jeden dieser Codecs, betrachten deren grundlegende Fähigkeiten und ihre Hauptanwendungsfälle.

AAC (Advanced Audio Coding)

Der Advanced Audio Coding (AAC)-Codec ist Teil des MPEG-4 (H.264) Standards; speziell ist er Teil von MPEG-4 Part 3 und MPEG-2 Part 7. Entwickelt, um mehr Kompression bei höherer Audioqualität als MP3 zu bieten, hat sich AAC zu einer beliebten Wahl entwickelt und ist das Standardformat für Audio in vielen Arten von Medien, einschließlich Blu-Ray-Discs und HDTV, sowie das Format für online ge kaufte Lieder, unter anderem bei iTunes.

AAC verfügt über eine Reihe von Profilen, die Methoden zur Komprimierung von Audio für spezifische Anwendungsfälle definieren, einschließlich alles von hochwertigem Surround-Sound bis hin zu Audio mit niedriger Qualität für Sprachgebrauch.

Als patentbelastetes Format ist die Unterstützung von AAC etwas weniger vorhersehbar. Beispielsweise unterstützt Firefox AAC nur, wenn die Unterstützung vom Betriebssystem oder einer externen Bibliothek bereitgestellt wird.

Unterstützte Bitraten Beliebig, bis zu 512 kbps
Variable Bitrate (VBR) Unterstützung Ja
Unterstützte Abtastformate 32-Bit-Integer
Unterstützte Abtastraten 8 kHz - 96 kHz
Empfohlene Mindestbitrate für Stereo-Sound 96 kbps bei 48 kHz Abtastrate
Kompression Verlustbehaftet
Maximale Audiokanäle 48 (plus 16 Kanäle für niederfrequente Verstärkung)
Audio-Frequenzbandbreite 0 Hz - 96 kHz (Standard-Audiokanäle)
0 Hz - 120 Hz (LFE-Kanäle)
Latenz 20 ms bis 405 ms
Browser-Kompatibilität

Aufgrund von Patentproblemen unterstützt Firefox AAC nicht direkt. Stattdessen verlässt sich Firefox auf die native Unterstützung der Plattform für AAC. Diese Fähigkeit wurde auf jeder Plattform in verschiedenen Firefox-Versionen eingeführt:

Chrome unterstützt AAC nur in MP4-Containern und unterstützt nur das Main Profile von AAC. Darüber hinaus ist AAC in Chromium-Builds nicht verfügbar.

Container-Unterstützung MP4, ADTS, 3GP
RTP / WebRTC kompatibel Ja
Lizenzierung Zum Streamen oder Verteilen von AAC-kodierten Inhalten: keine Lizenz erforderlich; Entwickler von Codecs müssen eine Patentlizenz über VIA Licensing erwerben.

ALAC (Apple Lossless Audio Codec)

Der Apple Lossless Audio Codec (ALAC oder Apple Lossless) ist ein verlustfreier Codec, der von Apple entwickelt wurde. Nachdem er zunächst ein geschlossenes Format war, öffnete Apple es unter einer Apache-Lizenz.

Plattformübergreifende und Browser-Unterstützung für ALAC ist nicht sehr stark, was ihn zu einer weniger idealen Wahl für den allgemeinen Gebrauch macht. Wenn Ihr Ziel jedoch hauptsächlich macOS- und iOS-Nutzer sind, könnte er es wert sein, in Betracht gezogen zu werden, da die Betriebssysteme integrierte Unterstützung für ALAC bieten. Andernfalls ist FLAC wahrscheinlich die bessere Wahl, wenn Sie einen verlustfreien Codec verwenden müssen.

Beachten Sie jedoch, dass verlustfreie Codecs erheblich mehr Bandbreite und Speicherkapazität erfordern und möglicherweise außerhalb sehr spezifischer Anwendungsfälle keine gute Wahl sind.

Unterstützte Bitraten Basierend auf dem Abtastformat und der Abtastrate sowie dem Komprimierungsgrad
Variable Bitrate (VBR) Unterstützung Nein
Unterstützte Abtastformate 16-Bit, 20-Bit, 24-Bit und 32-Bit-Integer
Unterstützte Abtastraten 1 Hz bis 384.000 Hz
Empfohlene Mindestbitrate für Stereo-Sound n/a
Kompression Verlustfrei; bis zu 45-60%
Maximale Audiokanäle 8 (bis zu 7.1 Surround)
Audio-Frequenzbandbreite ?
Latenz ?
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
ALAC-Unterstützung Nein Nein Nein Nein Ja
Container-Unterstützung MP4
RTP / WebRTC kompatibel Nein
Lizenzierung Offene Lizenz (Apache License 2.0); Quellcode auf GitHub verfügbar

AMR (Adaptive Multi-Rate)

Der Adaptive Multi-Rate Audio Codec ist darauf optimiert, menschliche Sprache effizient zu kodieren. Er wurde 1999 als Teil des 3GPP-Audiostandards standardisiert, der sowohl für GSM als auch für UMTS Mobiltelefonie verwendet wird. Er nutzt einen Mehrfrequenz-Normalband-Algorithmus, um Audiofrequenzen auf einem telephonetauglichen Qualitätsniveau bei etwa 7.4 kbps zu kodieren. Zusätzlich zur Nutzung für Echtzeit-Telefonie kann AMR-Audio auch für Voicemail und andere kurze Audioaufnahmen verwendet werden.

AMR-Audio, das in Dateien gespeichert ist, kann als .amr getypt werden, kann jedoch auch in .3gp-Dateien gekapselt werden.

Als sprachspezifischer Codec ist AMR im Wesentlichen für jeglichen anderen Inhalt nutzlos, einschließlich Audio, das nur Gesangsstimmen enthält. Außerdem erfasst AMR, da er dafür entwickelt wurde, die Kapazitätsanforderungen zu minimieren, nur den Teil des gesamten Audiobandbreitenbereichs menschlicher Sprache, der absolut notwendig ist, um zu verstehen, was gesagt wird, sodass die Qualität entsprechend reduziert wird. Wenn Sie die Möglichkeit benötigen, Audio mit minimalen Auswirkungen auf Netzwerk- und/oder Speicherkapazität aufzunehmen, kann AMR eine großartige Wahl sein. Wenn Sie jedoch eine hochauflösende Wiedergabe menschlicher Sprache—oder sogar eine minderwertige Musikwiedergabe—benötigen, müssen Sie ein anderes Format wählen.

Unterstützte Bitraten Halbrate (HR) und Volle Rate (FR): 1.8 kbps, 4.75 kbps, 5.15 kbps, 5.9 kbps, 6.7 kbps, 7.4 kbps, 7.95 kbps
Volle Rate (FR) nur: 10.2 kbps und 12.2 kbps
Variable Bitrate (VBR) Unterstützung Nein
Unterstützte Abtastformate 13-Bit-Integer
Unterstützte Abtastraten 8 kHz
Empfohlene Mindestbitrate für Stereo-Sound n/a
Kompression Verlustbehaftet
Maximale Audiokanäle 1
Audio-Frequenzbandbreite 200 Hz bis 3.400 Hz
Latenz 25 ms
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
AMR-Unterstützung Nein ? Nein Nein ?

Während der Chrome-Browser AMR nicht unterstützt, unterstützt ChromeOS AMR-NB (Narrowband) und AMR-WB (Wideband).

Container-Unterstützung AMR, 3GPP
RTP / WebRTC kompatibel Nein
Lizenzierung Nicht kostenlos; Lizenzgebühren und jährliche Abgaben fallen an. Siehe VoiceAge-Lizenzierung für Details

FLAC (Free Lossless Audio Codec)

FLAC (Free Lossless Audio Codec) ist ein verlustfreier Audiocodec, der von der Xiph.org Foundation veröffentlicht wurde. Er bietet gute Kompressionsraten ohne Verlust der Audioqualität; das heißt, das dekomprimierte Audio ist identisch mit dem Original. Da der Kompressionsalgorithmus speziell für Audio entwickelt wurde, liefert er bessere Ergebnisse als ein allgemeiner Kompressionsalgorithmus.

FLAC ist eine gute Wahl für kleinere Audioeffektdateien, bei denen makellose Qualität und Klanggenauigkeit gewünscht sind, sowie für die Archivierung von Musik.

Unterstützte Bitraten
Variable Bitrate (VBR) Unterstützung Nein
Unterstützte Abtastformate 4-Bit bis 24-Bit-Integer
Unterstützte Abtastraten 1 Hz bis 65.535 Hz (in 1 Hz-Schritten) oder 10 Hz bis 655.350 Hz in 10 Hz-Schritten
Empfohlene Mindestbitrate für Stereo-Sound
Kompression Verlustfrei; bis zu 40-50% Größenreduktion
Maximale Audiokanäle 8
Audio-Frequenzbandbreite Vollspektrum
Latenz 4.3 ms bis 92 ms mit 46.4 ms als typischem Durchschnitt
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
FLAC-Unterstützung Ja Ja 51 (Desktop)
58 (Mobil)
Ja 11
Container-Unterstützung MP4, Ogg, FLAC
RTP / WebRTC kompatibel Nein
Lizenzierung Vollständig offen und frei von jeglichen Lizenzanforderungen

G.711 (Puls-Code-Modulation von Sprachfrequenzen)

Die G.711-Spezifikation, veröffentlicht von der International Telecommunications Union (ITU), wurde 1972 herausgegeben, um die Standard-Audiokodierung für Telefonanwendungen zu definieren. Sie unterstützt sprachgerechtes Audio, das Frequenzen von 300 bis 3400 Hz abdeckt. Sie wird umfangreich für Telefongespräche und Voicemail verwendet und ist die höchste Audioqualität, die über das öffentliche Telefonnetz übertragen werden kann.

G.711 ist kein hochauflösender Codec, sondern stattdessen darauf optimiert, eine breite Palette von Sprachpegeln (von Flüstern bis Schreien) zu unterstützen und dabei hohe Verständlichkeit und geringe Rechenkomplexität zu bewahren. G.711 verwendet einen logarithmischen Kompaktierungsalgorithmus, der 14 Bit dynamischen Bereich in einer 8-Bit-Abtastung bietet. Es verwendet eine Abtastrate von 8000 Abtastungen/Sekunde, was einer Bitrate von 64000 bps entspricht.

Es gibt zwei Varianten von G.711, die die exakte mathematische Gleichung für den Algorithmus angeben: µ-law (häufig in Nordamerika und Japan verwendet) und A-law (in den übrigen Teilen der Welt verbreitet). Es gibt keinen wesentlichen Qualitätsunterschied zwischen den beiden Gesetzen, und es ist einfach, Audio von einem ins andere zu transcodieren. Dennoch ist es wichtig, anzugeben, welches Gesetz bei jeder Wiedergabeanwendung oder Dateiformat verwendet wird. A-law-Audio wird schlecht wiedergegeben, wenn es fälschlicherweise mit dem µ-law-Algorithmus dekomprimiert wird, und umgekehrt.

Dieser Codec muss von allen WebRTC-Lösungen unterstützt werden, weil er einfach, leicht zu implementieren, weit verbreitet und breit kompatibel auf allen modernen Computerplattformen ist.

Unterstützte Bitraten 64 kbps
Variable Bitrate (VBR) Unterstützung Nein
Unterstützte Abtastformate Kodiertes Audio ist 8 Bit pro Abtastung
Unterstützte Abtastraten 8 kHz
Empfohlene Mindestbitrate für Stereo-Sound 128 kbps
Kompression Logarithmische Kompaktierung (µ-law oder A-law)
Maximale Audiokanäle 2
Audio-Frequenzbandbreite 300 Hz – 3400 Hz
Latenz 0.125 ms
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
G.711-Unterstützung 23 15 22 43 11

G.711 wird nur für WebRTC-Verbindungen unterstützt.

Container-Unterstützung 3GP, WAV
RTP / WebRTC kompatibel Ja
Lizenzierung Alle zutreffenden Patente sind abgelaufen, daher kann G.711 ohne Einschränkungen verwendet werden

G.722 (64 kbps (7 kHz) Audiokodierung)

Veröffentlicht von der International Telecommunications Union (ITU), ist der G.722-Codec speziell für Sprachkomprimierung entwickelt. Die Audiokodierungsbandbreite ist auf den Bereich von 50 Hz bis 7.000 Hz beschränkt, welcher die meisten Frequenzen typischer menschlicher Lautäußerungen abdeckt. Das macht ihn ungeeignet zum Handhaben von Audio, das außerhalb des menschlichen Sprachbereichs liegen könnte, wie zum Beispiel Musik.

G.722-Audio wird mit Adaptive Differential Pulse Code Modulation (ADPCM) kodiert, bei der jede Abtastung nicht durch ihren absoluten Wert dargestellt wird, sondern als ein Wert, der angibt, wie sehr sich die neue Abtastung von der vorherigen unterscheidet.

G.722 wird hauptsächlich mit WebRTC-Verbindungen verwendet, da es einer der Audiocodecs ist, die von der WebRTC-Spezifikation vorgeschrieben sind.

Unterstützte Bitraten G.722: 48 kbps, 56 kbps und 64 kbps; in der Praxis wird jedoch immer 64 kbps verwendet
G.722 Annex B Super Wide-Band: 64 kbps, 80 kbps und 96 kbps
G.722 Annex D Stereo Wide-Band: 64 kbps und 80 kbps
G.722 Annex D Stereo Super Wide-Band: 80 kbps, 96 kbps, 112 kbps und 128 kbps
Variable Bitrate (VBR) Unterstützung Nein
Unterstützte Abtastformate 14-Bit-Integer
Unterstützte Abtastraten 16 kHz (ADPCM ist spezifiziert für 8 kHz, 11.025 kHz, 22.05 kHz, 44.1 kHz, aber G.722 verwendet 16 kHz)
Empfohlene Mindestbitrate für Stereo-Sound 128 kbps bei 44.1 kHz Abtastrate
Kompression Verlustbehaftet
Maximale Audiokanäle 2
Audio-Frequenzbandbreite 50 Hz - 7 kHz
Latenz 4 ms
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
G.722-Unterstützung Ja Ja Ja Ja Ja

Nur WebRTC.

Container-Unterstützung 3GP, AMR-WB
RTP / WebRTC kompatibel Ja
Lizenzierung Alle zutreffenden Patente sind abgelaufen; G.722 kann ohne Einschränkungen verwendet werden

MP3 (MPEG-1 Audio Layer III)

Von den durch die MPEG/MPEG-2 Standards spezifizierten Audioformaten ist MPEG-1 Audio Layer III—auch bekannt als MP3—bei weitem das meistgenutzte und bekannteste. Der MP3-Codec ist durch MPEG-1 Part 3 und MPEG-2 Part 3 definiert und wurde 1991 eingeführt (und 1992 finalisiert).

Wenn MP3-Format-Audio in einem MPEG-Container gespeichert wird, wird die resultierende Datei ebenfalls einfach als "MP3-Datei" oder "MP3" bezeichnet. Dateien mit der allgegenwärtigen .mp3 Erweiterung sind in dem vielleicht meistverbreiteten Audio-Dateiformat der Welt gespeichert, was zu einem Großteil für die digitale Audio-Revolution der späten 1990er und frühen 2000er Jahre verantwortlich ist.

MPEG-1 MP3-Audio unterstützt höhere Bitraten sowie höhere Abtastraten als MP3-Audio in MPEG-2-Dateien. Das MPEG-1 MP3-Format ist im Allgemeinen am besten für Musik oder andere komplexe Audios geeignet, während MPEG-2 Modus MP3-Audio für Sprache und andere einfachere Töne akzeptabel ist.

Die Patente hinter MP3 sind abgelaufen, wodurch viele oder die meisten Lizenzierungsbedenken beim Einsatz von MP3-Dateien in Ihren Projekten entfallen. Das macht sie für viele Projekte zu einer guten Wahl.

Unterstützte Bitraten MPEG-1 Modus: 32 kbps, 40 kbps, 48 kbps, 56 kbps, 64 kbps, 80 kbps, 96 kbps, 112 kbps, 128 kbps, 160 kbps, 192 kbps, 224 kbps, 256 kbps, 320 kbps
MPEG-2 Modus: 8 kbps, 16 kbps, 24 kbps, 32 kbps, 40 kbps, 48 kbps, 56 kbps, 64 kbps, 80 kbps, 96 kbps, 112 kbps, 128 kbps, 144 kbps, 160 kbps
Variable Bitrate (VBR) Unterstützung Ja
Unterstützte Abtastformate 16-Bit-Integer
Unterstützte Abtastraten MPEG-1 Modus: 32000 Hz, 44100 Hz, 48000 Hz
MPEG-2 Modus: 16000 Hz, 22050 Hz, 24000 Hz (Die Hälfte der Frequenz der von MPEG-1 unterstützten Modi)
Empfohlene Mindestbitrate für Stereo-Sound 128 kbps bei 48 kHz Abtastrate
Kompression Verlustbehaftet
Maximale Audiokanäle MPEG-1 Modus: 2 [2.0]
MPEG-2 Modus: 5 (plus 1 optionaler Kanal für niederfrequente Verstärkung) [5.1]
Audio-Frequenzbandbreite Variiert, abhängig von Bitrate und psychoakustischer Analyse
Latenz Mindestens 100 ms
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
MP3-Unterstützung Ja Ja Ja Ja 3.1
Container-Unterstützung MPEG-1, MPEG-2, MP4, ADTS, 3GP
RTP / WebRTC kompatibel Nein
Lizenzierung In der EU seit 2012 patentfrei; in den USA seit dem 16. April 2017 patentfrei; jetzt frei verwendbar

Aus patentbedingten Gründen unterstützte Firefox vor Version 71 MP3 nicht direkt; stattdessen wurden plattform-eigene Bibliotheken zur Unterstützung von MP3 verwendet. Diese Fähigkeit wurde auf jeder Plattform in verschiedenen Firefox-Versionen eingeführt:

MP3-Unterstützung mit externer Bibliothek, nach Plattform, in Firefox
Plattform Erste Firefox-Version
mit MP3-Unterstützung
Windows (Vista und später) 22
Android 20
Linux (abhängig von GStreamer) 26
macOS 35

Opus

Das Opus Audioformat wurde von der Xiph.org Foundation als vollständig offenes Audioformat entwickelt; es wurde von der IETF als RFC 6716 standardisiert. Es ist ein guter Allzweck-Audiocodec, der effizient sowohl Audio mit geringer Komplexität wie Sprache als auch Musik und andere Töne mit hoher Komplexität verarbeiten kann.

Opus unterstützt mehrere Kompressionsalgorithmen und kann sogar mehr als einen Algorithmus in derselben Audiodatei verwenden, da der Encoder die Bitrate, Audiobandbreite, den Algorithmus und andere Details der Komprimierungseinstellungen für jedes Audioframe festlegen kann.

Opus ist ein guter Allround-Audiocodec für die Verwendung in Ihren Webanwendungen und kann für alle Audiouppgaben verwendet werden, die Sie im Kopf haben.

Unterstützte Bitraten 6 kbps - 510 kbps
Variable Bitrate (VBR) Unterstützung Ja
Unterstützte Abtastformate 16-Bit-Integer und 32-Bit-Gleitkomma (-1.0 bis 1.0)
Unterstützte Abtastraten
Profil Effektive Abtastrate
Narrowband (NB) 8 kHz
Medium Band (MB) 12 kHz
Wideband (WB) 16 kHz
Super Wideband (SWB) 24 kHz
Fullband (FB) 48 kHz

Die angegebenen Abtastraten sind effektive Abtastraten. Opus verwendet einen Algorithmus, der auf Audiobandbreiten basiert, anstatt auf Abtastraten. Siehe RFC 6716, Abschnitt 2 für Details. Zusätzlich gibt es einen optional Teil der Opus-Spezifikation (Opus Custom), der nicht standardmäßige Abtastraten erlaubt, aber die Verwendung dieses Features wird nicht empfohlen.

Empfohlene Mindestbitrate für Stereo-Sound 96 kbps bei 48 kHz Abtastrate
Kompression Verlustbehaftet
Maximale Audiokanäle 255 (bis zu 1 LFE-Kanal)
Audio-Frequenzbandbreite
Profil Audiobandbreite
Narrowband (NB) 4 kHz
Medium Band (MB) 6 kHz
Wideband (WB) 8 kHz
Super Wideband (SWB) 12 kHz
Fullband (FB) 20 kHz

Obwohl das Nyquist-Shannon-Abtasttheorem zeigt, dass die Audiobandbreite bis zur Hälfte der Abtastrate betragen kann, erlaubt Opus keine Kodierung außerhalb eines maximalen 20 kHz Audiobandbereichs, da das menschliche Ohr ohnehin nichts über der 20 kHz-Grenze wahrnehmen kann. Dadurch wird etwas Platz im kodierten Audio eingespart.

Latenz 5 ms bis 66.5 ms
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
Opus-Unterstützung 33 14 15 20 11

Diese Informationen beziehen sich auf die Unterstützung von Opus in HTML <audio> und <video> Elementen und nicht auf WebRTC.

Safari unterstützt Opus im <audio>-Element nur, wenn es in einer CAF-Datei verpackt ist, und nur auf macOS High Sierra (10.13) oder iOS 11.

Container-Unterstützung Ogg, WebM, MPEG-TS, MP4
RTP / WebRTC kompatibel Ja
Lizenzierung Vollständig offen und frei von jeglichen Lizenzanforderungen

Vorbis

Vorbis ist ein offenes Format von der Xiph.org Foundation, das eine breite Palette an Kanalkombinationen unterstützt, einschließlich monaural, stereo, polyphon, quadraphon, 5.1 Surround, ambisonisch oder bis zu 255 diskreten Audiokanälen. Je nach während der Kodierung verwendeter Qualitätsstufe kann die resultierende Bitrate von etwa 45 kbps bis 500 kbps variieren. Vorbis verwendet von Natur aus eine variable Bitratenkodierung; die Bitrate kann je nach Bedarf während des Komprimierungsprozesses von einer Abtastung zur nächsten variieren.

Im Allgemeinen ist Vorbis bei ähnlichen Qualitätsniveaus effizienter in Bezug auf Größe und Bitrate als MP3. Dies sowie seine freie und offene Lizenz machen ihn zu einer guten Wahl für viele Arten von Audiodaten, solange die hohe Latenz kein Problem darstellt.

Unterstützte Bitraten 45 kbps - 500 kbps
Variable Bitrate (VBR) Unterstützung Ja
Unterstützte Abtastformate 16-Bit-Integer
Unterstützte Abtastraten 8 kHz - 192 kHz
Empfohlene Mindestbitrate für Stereo-Sound 192 kbps bei 48 kHz; dies wird typischerweise erreicht, indem die Qualitätsstufe auf 6 bis 8 gesetzt wird.
Kompression Verlustbehaftet
Maximale Audiokanäle 255
Audio-Frequenzbandbreite
Latenz Mindestens 100 ms
Browser-Kompatibilität
Feature Chrome Edge Firefox Opera Safari
Vorbis-Unterstützung 4 17 3.5 11.5 Nein

Diese Informationen beziehen sich auf die Unterstützung von Vorbis in HTML <audio> und <video> Elementen, und nicht auf WebRTC.

Container-Unterstützung Ogg, WebM
RTP / WebRTC kompatibel Ja
Lizenzierung Vollständig offen und frei von jeglichen Lizenzanforderungen

Auswahl eines Audiocodecs

Typischerweise, unabhängig davon, welchen Codec Sie verwenden, wird er allgemein die Aufgabe erfüllen, selbst wenn er nicht die ideale Wahl ist, solange Sie einen Codec wählen, der nicht speziell für eine völlig andere Art von Quell-Audio entwickelt wurde. Einen sprachspezifischen Codec zu wählen und zu versuchen, ihn für Musik zu verwenden, wird Ihnen zum Beispiel keine brauchbaren Ergebnisse liefern.

Einige Codecs können jedoch die Kompatibilität einschränken, und andere können für Ihre Bedürfnisse optimaler sein als andere. Hier geben wir eine Anleitung, um Ihnen zu helfen, einen geeigneten Codec für Ihren Anwendungsfall auszuwählen.

Bei der Auswahl eines zu verwendenden Codecs für Ihr Audio sollten Sie zuerst die folgenden Fragen berücksichtigen:

  • Wird das kodierte Audio remixt oder neu komprimiert? Wenn ja, vermeiden Sie verlustbehaftete Kompression, die durch erneutes Komprimieren des Audios verstärkt werden würde; oder verwenden Sie zumindest so wenig Kompression wie möglich.
  • Wenn das Audio in einen bestimmten Dateityp eingefügt werden muss, denken Sie daran, dass Media-Container typischerweise eine spezifische Teilmenge der verfügbaren Codecs unterstützen.
  • Welche Art von Audiocontent wird der Codec bearbeiten? Bestimmte Codecs sind speziell für Sprachinhalte ausgelegt (sie nutzen den verringerten Frequenzbereich, der für menschliche Sprache benötigt wird). Andere können eine algorithmische Neigung haben, schlechter zu funktionieren, wenn sie bestimmte Genres von Musik kodieren.
  • Welche Bitraten und anderen konfigurierbaren Eigenschaften hat jeder Codec, die ihn zu einer guten (oder schlechten) Wahl machen können?
  • Inwieweit spielt die Latenz für Ihre Bedürfnisse eine Rolle? Wenn der Klang sehr genau getimt sein muss, desto geringer die Latenz, desto besser.
  • Welche Menge an Kompression müssen Sie erreichen?

Lassen Sie uns ein paar häufige Szenarien betrachten, um ein Gefühl für den Entscheidungsprozess zu bekommen.

Beispiel: Musik zum Streaming

Für Streaming-Musik möchten Sie einen Codec wählen, der die Bandbreitennutzung so weit wie möglich minimiert, während er so wenige Artefakte wie möglich in das Audio durch Kompression einführt. Dies ist notwendig, da die Geschwindigkeit, mit der die Musik heruntergeladen wird, nicht höher sein darf, als die verfügbare Bandbreite im Netzwerk, und idealerweise sollte noch Spielraum für Netzschwankungen und die Nutzung des Netzwerks durch andere Anwendungen bleiben.

Sofern es keinen speziellen Bedarf für verlustfreie Kompression gibt oder die Netzwerkbandbreite nicht garantiert ausreichend hoch ist, um sie zu unterstützen, ist ein verlustbehaftetes Kompressionselement eine gute Wahl. Welches Sie wählen, hängt von der Browserkompatibilität und der Verfügbarkeit spezieller Funktionen ab, die der Codec unterstützen muss.

Normalerweise ist die Latenz beim Streaming von Musik nicht besonders wichtig. Mögliche Ausnahmen sind Musik in Schleifen, bei der die Musik in der Lage sein muss, nahtlos immer wieder abgespielt zu werden, oder wenn Sie in der Lage sein wollen, Songs nahtlos hintereinander abzuspielen. Dies kann besonders wichtig für klassische Musik, Theatersoundtracks und Hintergrundmusik während des Spielens sein.

Für die allgemeine Musikwiedergabe sind die drei wahrscheinlichsten Kandidaten MP3, AAC und Vorbis.

  • AAC in einem MP4-Container wird von allen großen Browsern unterstützt, was diese Wahl zu einer großartigen Option macht.
  • Vorbis wird fast immer in Ogg-Dateien verwendet, aber Ogg-Container werden nicht universell unterstützt. Auch Microsoft Edge, das sowohl Vorbis als auch die Container unterstützt, unterstützt noch keine Ogg-Container.
  • MP3 (MPEG-1 Audio Layer III) wird von allen großen Browsern unterstützt. Diese Dateien sind MPEG-1-Dateien, die eine Audio-III-Schichtspur enthalten.

Wenn Sie die Latenz während der Musikwiedergabe minimieren müssen, sollten Sie dringend Opus in Betracht ziehen, das den geringsten Latenzbereich der allgemeinen Codecs hat (5 ms bis 66.5 ms, im Vergleich zu mindestens 100 ms für die anderen).

Hinweis: Die hier beschriebene Kompatibilitätsinformation ist im Allgemeinen korrekt zum Zeitpunkt der Erstellung dieses Artikels; jedoch können Details und Ausnahmen vorliegen. Vergewissern Sie sich, die Kompatibilitätstabellen zu konsultieren, bevor Sie sich auf ein bestimmtes Medienformat festlegen.

Auf dieser Grundlage ist AAC wahrscheinlich Ihre beste Wahl, wenn Sie nur ein Audioformat unterstützen können. Natürlich können Sie, wenn Sie mehrere Formate bereitstellen können (zum Beispiel durch die Verwendung des <source>-Elements innerhalb Ihrer <audio> und <video>-Elemente), viele oder alle dieser Ausnahmen umgehen.

Beispiel: Musik zum Herunterladen

Musik, die vom Benutzer heruntergeladen wird, kann zu einer größeren Gesamtdateigröße als gestreamte Musik komprimiert werden, da (im Gegensatz zum Streaming) es egal ist, ob die Download-Geschwindigkeit langsamer ist als die Wiedergabegeschwindigkeit des Mediums. Das bedeutet, dass Sie verlustbehaftete Kompression bei höheren Bitraten in Erwägung ziehen können, was zu größeren Dateien, aber mit weniger Verlust an Treue führt. Oder Sie können ein verlustfreies Format wählen. Die Wahl hängt zu einem großen Teil von den Anforderungen Ihrer Anwendung und den Vorlieben Ihrer Nutzer ab.

Für einen echten Musikdownloaddienst könnten Sie Lieder zum Herunterladen als 128 Kbps MP3-Dateien, 256 kbps AAC-Dateien (in MP4-Containern) oder FLAC-Dateien anbieten, abhängig von einer vom Benutzer gewählten Präferenz. Wenn Sie nur ein Format wählen müssen, wählen Sie eines, das angesichts Ihrer Anforderungen und der Art des heruntergeladenen Audioconts sinnvoll ist.

Generell ist MP3 natürlich das am häufigsten verwendete Format für Musik; wählen Sie eine Bitrate von mindestens 192 kbps, wenn möglich. Der iTunes Store hingegen verteilt Musik im 256 kbps AAC-Format.

Beispiel: Sprachaufnahme und -wiedergabe

Die spezifischen Eigenschaften menschlicher Sprache ermöglichen es sprachorientierten Codecs, das Audio weitaus mehr zu komprimieren, als es die meisten allgemeinen Codecs können. Dies liegt daran, dass, obwohl Menschen Frequenzen von etwa 20 Hz bis 20000 Hz hören, und menschliche Sprachklänge von etwa 300 Hz bis 18000 Hz reichen, der Großteil der Sprachklänge, die wir benötigen, um zu verstehen, was gesagt wird, im Frequenzbereich von 500 Hz bis etwa 3000 Hz liegt. Das bedeutet, dass stimmenspezifische Codecs alles andere wegwerfen können.

Die sprachspezifischen Codecs sind jedoch alle per se sehr verlustbehaftet, und alle Geräusche mit signifikanten Informationen in den Frequenzbändern außerhalb des erfassten Stimmumfangs gehen vollständig verloren. Dies macht diese Codecs völlig ungeeignet für alles außer gesprochene Worte. Selbst Audio, das nur Stimmen, aber Gesang statt Sprache enthält, wird in einem dieser Formate wahrscheinlich nicht von akzeptabler Qualität sein.

Sprachaufnahme und -wiedergabe muss in der Regel latenzarm sein, um mit Videospuren synchronisiert zu werden oder um Übersprechen oder andere Probleme zu vermeiden. Glücklicherweise führen die Eigenschaften, die Sprachcodecs so speichereffizient machen, auch dazu, dass sie in der Regel sehr niedrig in der Latenz sind. Wenn Sie mit WebRTC arbeiten, hat G.722 zum Beispiel 4 ms Latenz (im Vergleich zu über 100 ms für MP3), und die Latenz von AMR beträgt etwa 25 ms.

Hinweis: Für mehr über WebRTC und die von ihm verwendeten Codecs, siehe Codecs used by WebRTC.

Die im Web allgemein verwendeten Codecs, die für die Sprachkodierung verwendet werden, sind G.722 und AMR. AMR ist ein Schmalband-Codec, der nur die Frequenzen zwischen 200 Hz und 3400 Hz bei Bitraten typischerweise um 7,4 kbps kodiert, während G.722 ein Breitband-Codec ist, der die Audiobandbreite auf 50 Hz bis 7000 Hz bei viel höheren Bitraten, typischerweise 64 kbps, erweitert.

Wenn Ihnen genügend Netzwerkbandbreite zur Verfügung steht und Sie vernünftigerweise sicher sind, dass dies auch für Ihre Nutzer gilt, ist G.722 die bessere Wahl. Um die Speicher- und Netzeffizienz in einer eingeschränkten Umgebung zu maximieren, wählen Sie AMR.

Beispiel: Audioclips für professionelles Mixing

Wenn Sie Audio komprimieren, das gemischt oder remixt wird, möchten Sie in der Regel keinen oder nahezu keinen Verlust der Klangtreue haben, was darauf hindeutet, dass möglicherweise ein verlustfreier Codec erforderlich ist. Da verlustfreies Kodieren jedoch natürlich einen wesentlich niedrigeren Kompressionsgrad als verlustbehaftetes Kodieren bietet, können Sie feststellen, dass Sie, wenn Ihr Ausgangsaudio groß genug ist, möglicherweise ohnehin einen verlustbehafteten Encoder wählen müssen, insbesondere in einer Webumgebung, in der Sie die Download-Geschwindigkeit der Medien nicht kontrollieren können.

Angenommen, dass verlustfreie Kompression hier die beste Option ist (was sie in der Regel ist, solange die Audiodateien klein sind), sind die drei stärksten Kandidaten aus Sicht eines Codecs FLAC, Apple Lossless (ALAC) und MPEG-4 ALS. Welche wir wählen, hängt von der Browserunterstützung und den unterstützten Mediencontainerformaten ab.

Für die Zwecke dieses Beispiels nehmen wir an, dass alle Browser die gleiche Codec- und Containerunterstützung wie Firefox haben (obwohl dies weit davon entfernt ist, in der Realität zu sein). Betrachten Sie die tatsächliche Unterstützung der Codecs, wenn Sie Ihre Entscheidungen treffen.

  • Firefox unterstützt FLAC in den nativen Containern von FLAC sowie in Ogg- und MPEG-4 (MP4)-Dateien.
  • Firefox unterstützt Apple Lossless nur durch seine plattformspezifische QuickTime-Unterstützung.
  • Firefox unterstützt MP4 ALS nicht.

In diesem Fall scheint FLAC wahrscheinlich der beste Codec zu sein; ALAC hat wenig bis gar keine direkte Browserunterstützung.

Audio-Encoding-Software

Es gibt viele Werkzeuge, die zum Kodieren von Audio zur Verfügung stehen. Die einfachsten sind diejenigen, die zum Rippen von CDs oder zum Importieren von Audiodateien und zum schnellen und automatischen Konvertieren in das MP3- oder AAC-Format gedacht sind, um in einer Bibliothek gespeichert zu werden, wie iTunes. Aber beim Entwickeln von Web-Apps, die Audio als Komponente der App verwenden, wie Spiele, benötigen Sie mehr Kontrolle über den Kodierungsprozess und mehr Optionen in Bezug auf das Format, das beim Kodieren des Audios verwendet wird.

Einige beliebte Optionen:

FFmpeg

Wahrscheinlich das bekannteste und angesehenste Open-Source-Codec-Paket, das verfügbar ist. FFmpeg unterstützt die Mehrheit der beliebtesten Audioformate und bietet Kommandozeilen-Tools und Bibliotheken zum Kodieren, Dekodieren und Ausführen von Formatkonvertierungen von sowohl Audio als auch Video. Binärdateien sind für macOS, Linux und Windows verfügbar.

Handbrake

Eine sehr beliebte Open-Source-Benutzeroberfläche für FFmpeg, die eine grafische Benutzeroberfläche hinzufügt, die es viel einfacher macht, die breite Palette von Optionen zu steuern, die FFmpeg beim Kodieren von Audio und/oder Video bietet. Binärdateien sind für macOS, Linux und Windows verfügbar.

Audacity

Ein Open-Source-Audio-Editor, der das Laden von Audio in vielen verschiedenen Formaten, das Bearbeiten, Filtern und Anpassen des Audios sowie das Speichern in entweder dem Originalformat oder einem neuen Format unterstützt. Verfügbar für macOS, Linux und Windows.

LAME

Ein hochwertiger Open-Source-MP3-Encoder mit Unterstützung für CBR, ABR und VBR Kodierung sowie einer Vielzahl anderer Optionen. Nur als Quellcode vom LAME-Projekt verteilt, kann aber über Homebrew oder ähnliche Werkzeuge installiert werden.

Siehe auch