Home / LinuxUser / 2013 / 05 / Audio-Codec Opus: Einer für Alle(s)

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Eingedost
(161 Punkte bei 4 Stimmen)
Aufteiler
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.

Tonmeister

Audio-Codec Opus: Einer für Alle(s)

Opus selbst gemacht

Mit Ubuntu 12.04 gestaltet sich die Arbeit mit Opus zäh. Weder das GStreamer-Framework noch der damit ausgelieferte VLC 2.0.5 unterstützen Opus. Das Kompilieren der Opus-Tools [6] scheitert an der fehlenden Libogg-Bibliothek in Version 1.3. Auch ein Nachinstallieren behob das Problem nicht. Wer Ffmpeg selbst kompiliert [7], kann Libopus mit dem Schalter --enable-libopus bei ./configure dazu packen und dann Opus-Dateien kodieren. Zum Abspielen muss unter Ubuntu 12.04 allerdings ein inoffizieller Mediaplayer-Backport mit Libopus herhalten – oder Firefox ab Version 15.

Erst unter Ubuntu 12.10 macht Opus wirklich Spaß. Hier spielen nicht nur Firefox und VLC die Dateien ab, auch Rhythmbox, Banshee und Totem unterstützen das Format via GStreamer. Ein mit Libopus ausgestatteter Ffmpeg kodiert Dateien folgendermaßen:

$ ffmpeg -i Input -vn -c:a libopus -b:a 96k Output.opus

Freilich eignet sich dafür auch der Standalone-Encoder Opusenc aus den Opus-Tools. Er akzeptiert als Input-Format aber lediglich WAV- oder AIFF-Dateien. Liegen die Quellen nicht in diesem Format vor, geben Sie die Datei am besten mit einem Player wie MPlayer oder Mpg123 via stdout raw-sound in 48-kHz-Stereo aus und pipen sie an Opusenc im Raw-Modus (Listing 1).

Listing 1

$ mplayer -novideo -af resample=48000:0:2,channels=2,format=s16le -ao pcm:nowaveheader:file=/dev/stdout -really-quiet Input | opusenc --bitrate=96 --raw - Output.opus

Opusenc erlaubt auch die Übergabe zusätzlicher Parameter wie beispielsweise CBR, Frame-Größe, Metadaten oder Parameter des Raw-Inputs. Details dazu finden Sie in der Manpage des Programms. In Listing 1 resampeln wir mit Mplayer und seinen besten Resampling-Routinen auf 48 kHz, aber Opusenc könnte man über den Parameter --raw-rate auch an die Sampling-Rate des Input-Signals anpassen.

Generell sollten Sie überflüssiges Resampling wo immer möglich vermeiden. Falls die Quelle also schon die anvisierte Sampling-Rate aufweist, verzichten Sie am besten auf alle Resampling-Optionen. Eine falsche Sampling-Rate erkennen Sie daran, dass das resultierende Opus-File zu schnell oder zu langsam spielt.

Fazit

Opus ist eine kleine Revolution: Der freie Codec übertrifft die Konkurrenz qualitativ um Längen und lässt sich dabei so vielseitig einsetzen wie kein anderer. Während Vorbis der kommerziellen Konkurrenz lediglich an den Hacken kratzt, stellt Opus diese vor allem bei hohen Kompressionsraten locker in den Schatten. Schlussendlich bleibt nur ein kleiner Wermutstropfen, der für die meisten derzeit aber nur eine untergeordnete Rolle spielen dürfte (siehe Kasten "Mehrkanal-Versäumnisse").

Mehrkanal-Versäumnisse

Opus unterstützt nativ nicht mehr als zwei Kanäle. Die momentane Lösung sieht vor, dass der OGG-Container mehrere Mono- oder Stereo-Opus-Streams enthält, denen dann die jeweiligen Kanäle zugewiesen werden. Das funktioniert zwar, aber dadurch profitiert Opus nur von der Signalähnlichkeit zwischen zwei Kanälen, aber nicht über alle, wie es echte Surround-Codecs wie Dolby Digital oder DTS praktizieren. Ob Opus diesen Surround-Platzhirschen bei gleicher Bitrate das Wasser reichen kann, bleibt somit fraglich.

Glossar

ITU

International Telecommunication Union. Diese Sonderorganisation der Vereinten Nationen beschäftigt sich offiziell und weltweit mit technischen Aspekten der Telekommunikation. Dazu gibt sie Standards in Form sogenannter Recommendations ("Empfehlungen") heraus, deren Umsetzung dann nationale oder supranationale Normungsgremien erledigen.

IETF

Internet Engineering Task Force. Dieses internationale Gremium von Herstellern, Netzbetreibern, Technikern und Anwendern beschäftigt sich mit Vorschlägen zur Standardisierung des Internets und steht jedem interessierten Individuum offen. Die Arbeitsergebnisse ihrer sogenannten Working Groups veröffentlicht die IETF in Form von RFCs (Request for Comment).

Silk

Skypes sehr rechenintensiver, patentierter Sprach-Codec basiert auf Linear Predictive Coding (LPC), einem Verfahren, das die Sprache analysiert und das Signal dann als Parameter für einen Sprachsynthesizer kodiert. Er unterstützt Bitraten bis 32 kbit/s sowie Frequenzen bis 8 kHz im Narrow- und Wideband. Damit übertrifft Silk den OSS-Sprachcodec Speex technisch in allen Aspekten. Aufgrund seiner Arbeitsweise eignet sich Silk nicht für Musik.

CELT

Constrained-Energy Lapped Transform verwendet als technische Basis MDCT (Modifizierte diskrete Kosinus-Transformation), wie es auch bei MP3, Vorbis, AAC und Dolby Digital zum Einsatz kommt. MDCT ist das gängigste Verfahren, um ein Audio-Signal in verschiedene Frequenzbänder zu zerlegen, diese dann individuell zu quantisieren und so die Datenrate zu reduzieren. CELT arbeitet am besten im Fullband mit 48 kHz und ist sinnvoll ab etwa 40 kbit/s.

AMR

Adaptive Multi-Rate. Ein Satz von Sprachcodecs, die unter anderem in Mobilfunksystemen der zweiten und dritten Generation zum Einsatz kommen.

Tip a friend    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 110 Punkte (2 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 05/2014

Aktuelle Ausgabe kaufen:

Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,95 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 60,60) können Sie im Medialinx-Shop bestellen.

Tipp der Woche

Bilder vergleichen mit diffimg
Bilder vergleichen mit diffimg
Tim Schürmann, 01.04.2014 12:40, 1 Kommentare

Das kleine Werkzeug diffimg kann zwei (scheinbar) identische Bilder miteinander vergleichen und die Unterschiede optisch hervorheben. Damit lassen sich nicht nur Rätsel a la „Orignial und Fäls...

Aktuelle Fragen

programm suche
Hans-Joachim Köpke, 13.04.2014 10:43, 8 Antworten
suche noch programme die zu windows gibt, die auch unter linux laufen bzw sich ähneln sozusagen a...
Funknetz (Web-Stick)
Hans-Joachim Köpke, 04.04.2014 07:31, 2 Antworten
Bei Windows7 brauche ich den Stick nur ins USB-Fach schieben dann erkennt Windows7 Automatisch, a...
Ubuntu 13.10 überschreibt immer Windows 8 Bootmanager
Thomas Weiss, 15.03.2014 19:20, 8 Antworten
Hallo Leute, ich hoffe das ich richtig bin. Ich habe einen Dell Insipron 660 Ich möchte gerne Ub...
USB-PTP-Class Kamera wird nicht erkannt (Windows-only)
Wimpy *, 14.03.2014 13:04, 15 Antworten
ich habe meiner Frau eine Digitalkamera, AGFA Optima 103, gekauft und wir sind sehr zufrieden dam...
Treiber
Michael Kristahn, 12.03.2014 08:28, 5 Antworten
Habe mir ein Scanner gebraucht gekauft von Canon CanoScan LiDE 70 kein Treiber wie bekomme ich de...