Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Audio
Notiz: bedeutende Sound-System-Hersteller
HiFi-Standard
In den 1970er Jahren wurde der "HiFi-Standard" verabschiedet, der vorgeschrieben hat, dass jede Komponente den Frequenzbereich von 20 Hz bis 20 kHz übertragen können muß. Leider wurden mit dem Standard aber keine Grenzwerte festgelegt…!
Somit ist dieser alte Standard kaum etwas wert.
High Resolution
- Hi-Res Audio - ist das wirklich besser? - Er ist der Meinung, dass die CD-Samplingrate zu klein ist
- Der große Nepp: High Definition / Resolution Audio - Betrug mit Herz und Auflösung - Er ist der Meinung, dass die CD-Samplingrate ausreicht
- Was bringt Highres Audio? Mythen, Fakten und Antworten - hier wird High Resolution genau erklärt
High Resolution bezieht sich auf digitale Musikdaten, die mit einer höheren Auflösung (Samplingrate, nicht Bitrate) aufgenommen wurden als die ursprüngliche Auflösung der CD von 44,1 kHz / 16 Bit. Diese Auflösung wird oft als „Standard-Auflösung“ bezeichnet.
Für eine CD in Standardauflösung wird das Musiksignal beispielsweise 44.100 Mal in der Sekunde (= 44.100 Hertz = 44,1 kHz) mit einer Genauigkeit von 16 Bit abgetastet. Für jeden Sampling-Punkt kann damit einer von 2^16 = 65.536 verschiedenen Zuständen gespeichert werden. Das ist schon ziemlich genau, und hat auf der CD ja auch über mehr als vier Jahrzehnte gute Dienste geleistet.
Von High Resolution spricht man also bei digitalen Musik-Aufnahmen, die noch genauere Daten enthalten als die CD.
So gilt eine Musikdatei mit 48 kHz / 16 Bit gemeinhin noch nicht als Highres, ein File mit 48 kHz / 24 Bit jedoch schon. Meist sind aber Auflösungen von 96 kHz / 24 Bit oder 192 kHz / 24 Bit gemeint, wenn man von Highres-Audio spricht, da diese Auflösungen auch oft während der Aufnahmen in Studios genutzt werden. Dementsprechend vermarkten Anbieter diese Aufnahmen dann vielfach auch als Studio-Qualität oder Studio-Master-Qualität. Es existieren auch Titel und Alben mit Samplingraten von 88,2 kHz, 176,4 kHz, 352,8 kHz oder sogar 384 kHz, jeweils mit Sampling-Tiefen von 24 oder sogar 32 Bit.
Was bringt die höhere Samplingrate? Will man Frequenzen von bis zu 20kHz digitalisieren, dann reichen die 44,1kHz aus. Aber in der Musik klingen Töne mit beispielsweise 10kHz von unterschiedlichen Instrumenten anders, das koommt von den Obertönen. Die Obertöne sind für die Klangfarbe zuständig und Obertöne haben eine vielfach höhere Frequenz als die Grundfrequenz des Tones mit seinen 10kHz.
Will man die Klangfarbe von hohen Tönen noch mit speichern, dann braucht man eine höhere Samplingrate.
Software-Frequenzweiche (Convolver)
Ubuntu Linux (16.04.6 LTS):
> apt install brutefir
FreeBSD (12.0-RELEASE-p8):
> pkg install audio/zita-convolver
ID3 - Tag
Hilfe anzeigen:
> eyeD3 --help
alle Genres mit ihren IDs anzeigen:
> eyeD3 --plugin=genres
…so setzt z. B. abcde die ID3-Tags:
> eyeD3 --encoding utf16 -A 'Seiltänzertraum (1993)' -a PUR -t 'Hör Gut Zu' -G 13 -n 01 -N 13 --text-frame=TDRC:1993 PUR_-_Seiltänzertraum_-_Hör_Gut_Zu.mp3
Musik-Download
- Durchbruch: Apple startet Musikverkauf ohne Kopierschutz - diese Meldung ist vom 2. April 2007
- Musik-Download ohne DRM - diese Meldung ist vom 15. Mai 2007
Amazon
Bei Amazon bekommt man noch MP3s ohne Kopierschutz. Das MP3-Format ist zwar nicht das beste aber die hier erhältlichen Dateien sind mit einer sehr hohen Bitrate (ca. 256 kbps) kodiert worden, so dass die Schwächen des MP3-Formates überhaupt nicht in Kraft treten.
Die MP3-Dateien kann man dort nicht direkt runter laden,
man bekommt dort nur eine "*.amz"-Datei,
mit der man dann die eigentlichen MP3-Dateien bekommt.
Dazu braucht man allerdings ein entsprechendes Programm.
Ich verwende am liebsten das kleine "clamz", da es
bereits im Paketmanagement der meisten Distributionen
enthalten ist und keine großen Abhängigkeiten benötigt.
Installation des Download-Programmes:
# aptitude install clamz
herrunter laden:
# clamz AmazonMP3-1325368293.amz
Letztes mal hatte ich mir mit Ubuntu im Jahre 2008 bei Amazon Musik gekauft,
damals bekam ich eine amz-Datei und konnte (wie oben beschrieben) damit meine
Musik in Form von MP3-Dateien saugen.
Jetzt (7. Februar 2013) habe ich mir wieder Musik bei Amazon gekauft…
…und ich bin sehr enttäuscht!
Ich habe keine amz-Datei mehr bekommen,
leider konnte ich die Musik-Dateien nur in den Amazon-Cloud-Player laden.
Von dort kann man die Musik-Dateien mit Linux nur einzeln und mit FreeBSD garnicht runterladen.
Ich glaube, ich muss über eine alternative Möglichkeit zum Kauf von DRM-freier Musik nachdenken,
hier soll es auchnoch DRM-freie Musik geben (hab ich noch nicht geprüft):
Wenn clamz bzw. AmazonMP3DownloaderInstall.deb sich nicht installieren lassen
LXC
…dann nimmt man am besten einen LXC-Container mit einer älteren Linux-Version, zu der es "clamz" noch gibt,
um clamz zu installieren muss man mindestens Ubuntu 10.10 verwenden:
# lxc-create -n u1004 -t ubuntu -- -a i386 -r maverick -b Fritz
um AmazonMP3DownloaderInstall.deb zu installieren nimmt man am besten Ubuntu 08.10 (weil das Paket von Amazon für "Ubuntu 08.10" gebaut wurde):
# lxc-create -n u1004 -t ubuntu -- -a i386 -r intrepid -b Fritz
Durch den Parameter "-b Fritz" wird beim starten des Containers gleich das HOME-Verzeichnis des Benutzers Fritz (per BIND-Mount) in den Container rein gemountet. Dadurch hat man im Container gleich Zugriff auf alle Dateien aus dem entsprechenden HOME-Verzeichnis.
clamz kompilieren (Ubuntu 12.04)
Erstmal brauchen wir die Pakete "libgcrypt", "libcurl" und "libexpat":
# aptitude install libgcrypt11 libcurl3 libexpat1 libgcrypt11-dev libcurl3-dev libexpat1-dev
Und damit wir auch kompilieren können, brauchen wir noch einen Kompiler:
# aptitude install gcc
oder wenn einer auch gleich ein Paket daraus bauen will, dann braucht er das hier (ich nicht):
# aptitude install build-essential
jetzt muss das SCR-Paket von hier gesaugt werden: http://code.google.com/p/clamz/
in den Standard-Pfad (/usr/local) installieren
kompileren:
# tar xfvz clamz-0.5.tar.gz # cd clamz-0.5 # ./configure # make
installieren (als "root"):
# cd .../clamz-0.5 # make install
nach /opt installieren
kompileren:
# tar xfvz clamz-0.5.tar.gz # cd clamz-0.5 # ./configure --prefix=/opt # make
installieren (als "root"):
# cd .../clamz-0.5
# make install
# ln -s /opt/bin/clamz /usr/bin/
# touch /etc/profile.d/clamz.sh
# chmod 0755 /etc/profile.d/clamz.sh
# vi /etc/profile.d/clamz.sh
if [ -z "${LD_LIBRARY_PATH}" ] ; then
LD_LIBRARY_PATH="/opt/share"
else
LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/opt/share"
fi
export LD_LIBRARY_PATH
Jetzt muss man sich ausloggen und wieder einloggen, damit diese Ändeung aktiv wird.
aufräumen
jetzt können wir die, von der Installation, verbliebenen Überreste löschen:
# rm -fr clamz-0.5.tar.gz clamz-0.5
Aktivierung
Jetzt kann man den "MP3 downloader" noch im Amazon-Store aktivieren, dazu muss der entsprechende Link auf dieser Seite angeklickt werden: http://code.google.com/p/clamz/
Mitte 2012 wurde auf diese URL weiter geleitet, wenn man auf "(Germany)" geklickt hat:
http://www.amazon.de/gp/dmusic/after_download_manager_install.html?AMDVersion=1.0.9
Tempo- bzw. Längen-Anpassung einer Audiodatei
Audiodatei um 10% verkürzen bzw. 10% schneller machen:
# soundstretch Audio.wav Audio_plus11proz.wav -tempo=+10
Audio-Codecs
Eigenschaften
MP2
"technisch veraltet"
MPEG-1 Audio Layer 2 ist von 1994 bis 1995 das Standard-Audio-Format auf VCD's und der damals neuen DVD's gewesen.
a52/AC3
Das Format wurde vom Advanced Television Systems Committee mit der Dokumentnummer A/52 international standardisiert und trägt somit offiziell den Namen ATSC A/52. Dolby Digital ist der Marketingname (oft abgekürzt zu DD). AC-3 schließlich bezeichnet das Bitstream-Format (Adaptive Transform Coder 3) und hat sich ebenfalls als Bezeichnung eingebürgert. Daher kommt auch die typische Dateiendung .ac3.
AC3 ist seit 1995 das Standard-Audio-Format auf DVD's, da es im Gegensatz zum vorherigen Audio-Format (MP2) mehr als 2 Audio-Kanäle unterstützt. Es ist (unter anderem) bei dem DivX/Xvid-Video-Format (MPEG-4 Part 2) ein mögliches Standard-Audio-Format.
Sein Nachfolger von Dolby Digital (AC3) ist Dolby Digital Plus.
Ich frage mich nur ob es bei AC-3 irgend welche rechtlichen Einschränkungen gibt, wie bei MP3. Bis jetzt habe ich nur den Hinweis auf der Webseite von ATSC gefunden, das die ATCS eine internationale, gemeinnützige Organisation ist, die kostenlose Standards für die digitale Fernsehtechnik entwickelt.
Auf der Webseite von Dolby wird auch ausdrücklich beschrieben, dass die Nutzung der //Dolby-Digital//-Technologie in Filmen, den Abschluss eines Dienstleistungsvertrages erfordert.
Wenn man sich die Lizenzbedingungen genauer durch liest, dann verstehe ich es so, dass nur für Hard- und Software Lizenzkosten anfallen, die Dolby-Technologie enthalten. Ich konnte auf der Dolby-Webseite allerdings nichts davon lesen, das auch für Produkte Lizenzkosten erhoben werden, die mit Hilfe von Dolby-Technologien erstellt wurden (DVD's oder Blu-Ray's).
An anderer Stelle im Internet wird soetwas zwar behauptet, auf der Dolby-Seite konnte ich es jedoch nicht finden. Möglicherweise haben sich die Lizenzkosten auch geändert und die Webseite mit dieser Behauptung wurde seit dem nur noch nicht aktuallisiert.
Ich würde sowieso nur die freie A/52-Bibliothek verwenden. Und solange nicht auf Datenträger, die Dolbi-Digital-codierten Inhalt enthalten, eine Lizenz erhoben wird, ist das kein Problem.
MP3 (Patentrecht ist 2017 ausgelaufen)
"Das MP3-Format wurde im Fraunhofer-Institut entwickelt und ist technisch (noch nicht) veraltet, aber sehr ausgereift."
Das MP3-Format, ist das, zur Zeit, mit Abstand am besten unterstützte Audio-Format. Will man bestmögliche Kompatibilität, dann nutzt man das MP3-Format. Der MP3-Codec wird von den Container-Formaten mpg, mp3, mp4, avi, flv, mkv, m2ts und ts unterstützt.
MPEG-1 Audio Layer 3 ist (unter anderem) bei dem DivX/Xvid-Video-Format (MPEG-4 Part 2) ein Standard-Audio-Format. Im OpenSouce-Umfgeld wird MP3 in vielen Fällen durch OGG/Vorbis und im kommerziellen Umfeld wird es zunehmend durch AAC abgelöst.
> ffmpeg -i multimedia.mov -vn -sn -c:a libmp3lame -ar 48000 -ac 2 -f mp3 -y audio.mp3 > ffmpeg -v quiet -i multimedia.mov -vn -sn -c:a pcm_s32le -ac 2 -f wav - | lame -V 4 --preset standard -s 48000 - audio.mp3
AAC (patentrechtlich geschützt)
Das AAC-Format wurde im Fraunhofer-Institut als Nachfolger des MP3-Formates entwickelt.
Advanced Audio Coding (AAC) ist ein von der Moving Picture Experts Group (MPEG) entwickeltes, verlustbehaftetes Audiodatenkompressionsverfahren, das als Weiterentwicklung von MPEG-2 Multichannel im MPEG-2-Standard spezifiziert wurde. Bei der Entwicklung von MPEG-4 Part 3 wurden die Schwächen des MP3-Verfahrens verringert, dessen Kodierungsverfahren verbessert und mit neuen Verfahren (sogenannten Tools) ergänzt.
Bereits ab 64 kbit/s akzeptable, wenn auch eingeschränkte Stereo-Qualität. 96 kbit/s entsprechen guter UKW-Qualität, und 128 kbit/s gelten als CD-nah (hohe Transparenz).
AAC basiert nicht wie MPEG Layer 3 (MP3) auf dem Filterbank-Design von MPEG Layer 2, sondern ist eine Neuentwicklung und benutzt wie Dolby Digital und Vorbis allein die MDCT als Basistransformation. Bei geringerer Komplexität als MP3 sind bei gleicher Datenrate bessere Qualitäten erreichbar. Mehrkanal-Kodierung wird direkt unterstützt. Außerdem werden verschiedene „Tools“ unterstützt; das sind Methoden, die in Profilen mit höherer Komplexität erlaubt sind, um kritische Signale besser kodieren zu können.
https://en.wikipedia.org/wiki/Fraunhofer_FDK_AAC war im Jahre 2016 der beste freie https://trac.ffmpeg.org/wiki/Encode/AAC-Encoder.
Um AAC-komprimierte Inhalte zu verbreiten, sind keine Lizenzzahlungen notwendig. Allerdings müssen Hersteller einer Implementierung von AAC eine Lizenz erwerben. Aus diesem Grund wird Freie Software, die den Codec implementiert, nur im Quelltext verbreitet, um Patentverletzungen zu vermeiden.
FFmpeg unterstützt zwei AAC-LC Encoder (aac und libfdk_aac) und einen HE-AAC (v1 / 2) Encoder (libfdk_aac). Die Lizenz von libfdk_aac ist nicht mit GPL kompatibel, daher erlaubt die GPL keine Verteilung von Binärdateien mit inkompatiblem Code, wenn GPL-lizenzierter Code ebenfalls enthalten ist. Daher wurde dieser Encoder als "nicht frei" bezeichnet, und Sie können keine vorgefertigte ffmpeg herunterladen, die dies unterstützt. Dies kann gelöst werden, indem Sie ffmpeg selbst kompilieren. Siehe auch Encode / HighQualityAudio für allgemeine Richtlinien zur Audiocodierung von FFmpeg (die auch einen Vergleich enthält, welcher AAC-Encoder die beste Qualität ist).
empfohlene Einsatzgebiete vom Hersteller:
AAC (Main / LC): über 96 kbit/s AAC+ v1: von 48 bis 96 kbit/s AAC+ v2: unter 48 kbit/s
Bei höheren Bitraten als 96 kbps wird wegen der besseren Qualität weiterhin AAC in den Profilen Main oder Low Complexity (LC) benutzt.
Da SBR hohe Frequenzen nur synthetisch erzeugt, kann mit HE-AAC im Gegensatz zu AAC (Main- oder LC-Profil) keine Transparenz erreicht werden.
Neben der Dateiendung .aac sind auch .mp4 und die von Apple verwendeten Endungen .m4a (Audiodateien), .m4b (Hörbuchdateien) oder .m4p (Audiodateien mit Kopierschutz) verbreitet.
AAC-Dateien sind bei gleicher Qualität wie MP3-Dateien, etwa um ein Viertel kleiner.
Es ist das neue MPEG-4/AVC Standard-Audio-Format.
MPC
"technisch veraltet, sehr gute Qualität aber kaum unterstützt"
Musepack (ehem. MPEGplus) ist ein freier, auf MP2-Algorithmen basierender Codec zur verlustbehafteten Audiodatenkompression, der auf sehr gute Klangqualität bei hohen Bitraten hin optimiert wurde.
Er ist ein reiner Subband-Coder, so dass zunächst eher Ähnlichkeiten zu MPEG Layer 1 und 2 (MP1, MP2) als zum derzeit gebräuchlichsten Format MP3 bestehen. Das eigentliche Format - die Bitstromsyntax - beinhaltet effiziente Methoden zur verlustfreien Kompression. Zusammen mit einer Vielzahl von Erweiterungen und Optimierungen am psychoakustischen Modell erreicht das Format eine hervorragende, nahezu transparente Qualität bei Bitraten von ~160-170 kbps.
Das kostenlose Open-Source Programm ist für verschiedene Betriebssysteme verfügbar und wird von zahlreichen Rippern und Konvertern unterstützt. Auch die Wiedergabe mit Winamp und zahlreichen anderen Playern ist dank Plugins und DirectShow-Filter kein Problem.
Zum Zeitpunkt der Entstehung Musepacks (1997) verwendeten die verbreiteten Audiocodecs (wie der am weitesten verbreitete MP3-Codec) hauptsächlich konstante Bitraten, was sich insgesamt sehr negativ auf die Klangqualität auswirkte. Im Kontrast dazu verwendet Musepack ausschließlich variable Bitraten, wobei die Bitrate zwischen 3 und 1300 kbps schwanken kann. Des weiteren wurden verschiedene technische Neuerungen eingeführt wie z.B. Huffmann-Codierung, Noise Substitution und mehr. Aktuelle Codecs wie AAC unterstützen diese oder vergleichbare Verfahren inzwischen jedoch ebenfalls.
Musepackdateien haben die Dateinamenserweiterung mpc, mpp oder mp+. Metadaten werden in Form von APEv2-Tags angefügt.
Vorbis (patentfrei, kann Mehrkanalton)
"technisch gesehen besser als MP3 aber Entwicklungsseitig für Musik optimiert"
OGG/Vorbis ist bei dem Theora-Video-Format das Standard-Audio-Format. Es wird aber auch als ausschließliches Audio-Format verwendet, da es mehr leisten kann als das verbreitete MP3-Format und auch keine Lizenzkosten bei der Verbreitung anfallen, wie sie bei MP3 anfallen.
Unter den verschiedenen Audio-Kompressionsformaten präsentiert sich Ogg Vorbis als Alternative zu MP3. Der kostenlose und lizenzfreie Audio-Codec liefert hervorragende Qualität, sowohl bei niedrigen Bitraten, als auch bei der hochwertigen Audiokodierung.
Damit ist Ogg/Vorbis ein universeller Audio-Codec, der für Internetradio, portable Player und CD-Archivierung gleichermaßen geeignet ist. Als lizenzfreier Audio Codec ist Ogg Vorbis bereits in vielen Programmen fest integriert. Inzwischen gibt es auch vermehrt portable Player, die Ogg Vorbis abspielen.
https://de.wikipedia.org/wiki/Vorbis#Vergleich_mit_MP3_und_AAC
Was mir bei OGG/Vorbis nicht gefällt
Leider gibt es eine ganze Reihe an Codec-Tag's bei Vorbis, das ist an sich nicht schlimm, schlimm ist nur, dass die älteren davon in Filmen nicht mehr abgespielt werden können. Wobei ich unter "älter" nicht 20 Jahre verstehe, hier wird zum Beispiel die Version mit dem Codec-Tag "0x6771" (er ist von 2004, also nur ca. 5 Jahre alt) von keinem meiner Software-Video-Player mehr abgespielt! Es gibt aber noch mehr alte Vorbis-Tag's:
- 0x26479
- 0x676F
- 0x6771
Allerdings kann ein reiner Audio-Player diese Codec's oft noch abspielen, wenigstens etwas…
Dieses Beispiel zeigt, dass OGG/Vorbis kein nachhaltiger Video-Codec ist!
Aus diesem Grund würde ich, wenn möglich, lieber "Opus" (libopus) verwenden.
Opus (patentfrei, kann nativ nur Stereo, Mehrkanalton ist nur durch Kombination möglich)
Opus stellt den Nachfolger von Vorbis dar.
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.
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.
Leider gibt es bei der Implementation von Opus in FFmpeg ein paar Fehler. Deshalb kann FFmpeg auch keine Mehrkanaltonspuren im opus-Format erzeugen. Dafür muß man die Tonspur durch einen Extra-Encoder schicken.
> ffmpeg -v quiet -i Film.avi -vn -acodec pcm_s16le -f wav - | opusenc --ignorelength - Tonspur.opus
Quelle: https://www.reddit.com/r/ffmpeg/comments/t2u0v0/multichannel_opus_audio/
Vergleich verschiedener Formate
Neben MP3 existieren zahlreiche weitere Audioformate. Das Format Ogg-Vorbis (Dateiendung .ogg) ist quelloffen und wird von den Entwicklern als im Gegensatz zu MP3 patentfrei bezeichnet. Vorbis hat sich bei technischen Analysen und in Blindtests gegenüber MP3 vor allem in niedrigen und mittleren Bitratenbereichen als überlegen erwiesen, während im hohen Bereich (um 256 kbit/s) der Vorsprung minimal ist. Außerdem bietet Ogg-Vorbis Mehrkanal-Unterstützung, und das Containerformat Ogg erlaubt zudem auch Video- und Textdaten.
Das freie, auf MP2-Algorithmen basierende Musepack (früher MPEGPlus) wurde entwickelt, um bei Bitraten über 160 kbit/s noch bessere Qualität als das MP3-Format zu ermöglichen. Es konnte sich aber nicht breit durchsetzen, da es auf die Anwendung im High-End-Bereich abzielt und im kommerziellen Bereich kaum unterstützt wird. Dateien im Musepack-Format erkennt man an der Erweiterung mpc oder mp+.
Advanced Audio Coding (AAC) ist ein im Rahmen von MPEG-2 und MPEG-4 standardisiertes Verfahren, welches von mehreren großen Unternehmen entwickelt wurde. Apple und RealMedia setzen dieses Format für ihre Online-Musikläden ein, und die Nero AG stellt einen Encoder für das Format bereit. Mit faac ist auch ein freier Encoder erhältlich. AAC ist bei niedrigen Bitraten bis etwa 160 kbit/s MP3 in der Klangqualität überlegen – je niedriger die Bitrate, desto deutlicher –, erlaubt Mehrkanal-Ton und wird von der Industrie (z. B. bei Mobiltelefonen und MP3-Playern) breit unterstützt.
Musik-CDs kopieren
aptitude install cdparanoia vorbis-tools lame faac
Musik-CD's rippen (Linux + X)
…hier sind ein paar Handgriffe nötig…
Musik-CD's rippen (FreeBSD + CLI)
…hier muss nur die CD eingelegt werden und das Programm gestartet werden, sonst nichts…
Größenvergleich
| Größenvergleichswert | Encoder mit Parameter |
|---|---|
| 10 | oggenc -q 0 |
| 11 | lame -V 9 |
| 12 | oggenc -q 1 |
| 14 | faac -q 64 |
| 15 | lame -V 8 |
| 15 | oggenc -q 2 |
| 16 | faac -q 80 |
| 17 | lame -V 7 |
| 18 | oggenc -q 3 |
| 19 | faac -q 96 |
| 21 | oggenc -q 4 |
| 21 | lame -V 6 |
| 21 | faac -q 112 |
| 24 | lame -V 5 |
| 24 | faac -q 128 |
| 26 | oggenc -q 5 |
| 27 | faac -q 144 |
| 27 | lame -V 4 |
| 28 | faac -q 160 |
| 29 | faac -q 176 |
| 30 | oggenc -q 6 |
| 30 | lame -V 3 |
| 30 | faac -q 192 |
| 31 | faac -q 208 |
| 32 | lame -V 2 |
| 32 | faac -q 224 |
| 33 | oggenc -q 7 |
| 33 | faac -q 240 |
| 34 | faac -q 256 |
| 35 | lame -V 1 |
| 37 | oggenc -q 8 |
| 38 | lame -V 0 |
| 49 | oggenc -q 9 |
Ist der Größenvergleichswert in mehreren Zeilen gleich, bedeutet das, das die Encoder mit den entsprechenden Parametern in der rechten Spalte, aus einer WAVE-Datei ungefähr gleichgroße codierte Dateien erzeugen.
Zur Erstellung dieser Referenzwerte, die in der linken Spalte stehen (Größenvergleichswert), wurden 16 WAVE-Dateien mit festlicher Weihnachtsmusik codiert.
Da jeder hier verwendete Encoder unterschiedliche Eigenschaften hat, kann man von der Größe (bzw. dem Größenvergleichswert) nicht auf die Qualität der codierten Datei schließen!
Qualitätsvorschläge
Wenn man die aller Beste Qualität haben will, dann sollte man die Original-WAVE-Dateien verwenden oder eine verlustfreie Kompression wie zum Beispiel FLAC. Das halbiert den Platzbedarf ohne die Audiodaten zu verändern.
z.B. so:
# flac -8 -o test.flac test.wav
oder mit OGG-Audio-Container:
# flac -8 -o test.oga test.wav
Will man dagegen möglichst kleine Dateien haben, dann muss man Qualitätseinschränkungen in Kauf nehmen. In der Regel sind diese Qualitätseinschränkungen mit den modernen Kompressionsmethoden, für einen normalen Menschen, nicht hörbar.
Der Trick hierbei ist der, dass man bei der Kompression, der Audiodateien nur soviel Qualität wählt, wie unbedingt nötig. Hier ein paar Vorschläge die, für den normalen Menschen, vernünftige Ergebnisse liefern.
Sprache:
# lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" -V 6 datei.wav datei.mp3 # faac --title "Musiktitel" --artist "Sänger" --album "CD-Name" -w -q 100 -o datei.m4a datei.wav
Sprache (etwas bessere Qualität):
# lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" -V 5 datei.wav datei.mp3 # lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" --preset medium datei.wav datei.mp3 # faac --title "Musiktitel" --artist "Sänger" --album "CD-Name" -w -q 110 -o datei.m4a datei.wav
Film (Standardqualität):
# lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" -V 3 datei.wav datei.mp3 # lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" --preset standard datei.wav datei.mp3 # faac --title "Musiktitel" --artist "Sänger" --album "CD-Name" -w -q 140 -o datei.m4a datei.wav
Film (etwas bessere Qualität):
# lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" -V 2 datei.wav datei.mp3 # faac --title "Musiktitel" --artist "Sänger" --album "CD-Name" -w -q 160 -o datei.m4a datei.wav
Musik:
# lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" -V 1 datei.wav datei.mp3 # lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" --preset extrem datei.wav datei.mp3 # faac --title "Musiktitel" --artist "Sänger" --album "CD-Name" -w -q 220 -o datei.m4a datei.wav
Musik (etwas bessere Qualität):
# lame --tt "Musiktitel" --ta "Sänger" --tl "CD-Name" -V 0 datei.wav datei.mp3 # faac --title "Musiktitel" --artist "Sänger" --album "CD-Name" -w -q 280 -o datei.m4a datei.wav
von CD auf die Platte
So werden alle Titel von der CD als WAV auf die Platte kopiert:
# cdparanoia -B cdparanoia III release 10.2 (September 11, 2008)
Ripping from sector 0 (track 1 [0:00.00])
to sector 311659 (track 18 [4:35.69])
outputting to track01.cdda.wav
(== PROGRESS == [ | 004332 00 ] == :^D * ==)
# mplayer track01.cdda.wav
========================================================================== Opening audio decoder: [pcm] Uncompressed PCM audio decoder AUDIO: 44100 Hz, 2 ch, s16le, 1411.2 kbit/100.00% (ratio: 176400->176400) Selected audio codec: [pcm] afm: pcm (Uncompressed PCM) ==========================================================================
von WAV zu OGG/Vorbis/Tremor
Die Xiph.Org Foundation ist eine gemeinnützige Organisation für die Entwicklung von freien Multimedia-Formaten, -Protokollen und -Standards. Die Stiftung wurde von Chris Montgomery gegründet, der auch das Ogg-Containerformat entwickelt hat.
Ursprünglich gab es für Audio's und Video's nur das Container-Format OGG, leider fehlten ihm wichtige Funktionen, die dann jemand anders rein-gehackt hat. Dieses neue Container-Format wurde OGM genannt. Mit diesem Hack war die Xiph.Org Foundation nicht besonders glücklich und so haben sie zwei neue Container-Formate geschaffen. Jetzt wird für Audio das Container-Format OGA und für Video das Container-Format OGV verwendet. OGM soll nicht mehr verwendet werden und gilt als überholt, leider verwendet der Software-Video-Player VLC noch dieses Container-Format.
Leider ist die OGG-Endung so populär, das niemand von den neuen Dateiendungen Gebrauch macht.
So wird die WAV-Datei in eine OGG/Vorbis-Datei konvertiert:
# oggenc -t "Song Titel" -a "Interpret" -l "Album" -q 8 -o track01.ogg track01.cdda.wav
# ls -lh -rw-r--r-- 1 root root 47M 2010-04-25 19:18 track01.cdda.wav -rw-r--r-- 1 root root 8,3M 2010-04-25 20:46 track01.ogg
# mplayer track01.ogg
========================================================================== Opening audio decoder: [tremor] Ogg/Vorbis audio decoder AUDIO: 44100 Hz, 2 ch, s16le, 499.8 kbit/35.42% (ratio: 62477->176400) Selected audio codec: [tremor] afm: tremor (OggVorbis audio) ==========================================================================
Das -q 10 steht für beste Qualität, was aber auch bedeutet, das die Dateien recht groß sind.
Sollen die Dateien kleiner werden, dann muss man eine etwas niedrigere Qualität einstellen. Im folgenden wird die durchschnittliche Datenrate bei den einzelnen Qualitätsangaben aufgelistet:
- -q 0: 64 kbps
- -q 1: 80 kbps
- -q 2: 96 kbps
- -q 3: 112 kbps
- -q 4: 128 kbps
- -q 5: 160 kbps
- -q 6: 192 kbps
- -q 7: 224 kbps
- -q 8: 256 kbps
- -q 9: 320 kbps
- -q10: 448 kbps
# ls -lh -rw-r--r-- 1 root root 47M 2010-04-25 19:18 track02.cdda.wav -rw-r--r-- 1 root root 14M 2010-04-26 00:19 track02_q10.ogg -rw-r--r-- 1 root root 11M 2010-04-26 00:17 track02_q9.ogg -rw-r--r-- 1 root root 8,3M 2010-04-26 00:17 track02_q8.ogg -rw-r--r-- 1 root root 6,7M 2010-04-26 00:16 track02_q7.ogg -rw-r--r-- 1 root root 5,4M 2010-04-26 00:16 track02_q6.ogg -rw-r--r-- 1 root root 4,4M 2010-04-26 00:15 track02_q5.ogg -rw-r--r-- 1 root root 3,5M 2010-04-26 00:15 track02_q4.ogg -rw-r--r-- 1 root root 3,3M 2010-04-26 00:15 track02_q3.ogg -rw-r--r-- 1 root root 2,8M 2010-04-26 00:14 track02_q2.ogg -rw-r--r-- 1 root root 2,5M 2010-04-26 00:14 track02_q1.ogg -rw-r--r-- 1 root root 2,0M 2010-04-26 00:13 track02_q0.ogg
Leider legen die Entwickler den Schwerpunkt auf die Musik, so das die Mehrkanalton-Qualitäten, die für den Videobereich interessant sind, leider noch nicht ausgereift sind. Auch werden die älteren Vorbis-Versionen (von 2003/2004) schon längst nicht mehr von Software-Videoplayern unterstützt, nur noch von einigen reinen Audioplayern.
Also als Video-Tonspur ist dieser Codec nicht zu empfehlen, dafür sollte man entweder weiterhin MP3 oder AAC einsetzen.
von WAV zu MP3
Möchte man lieber MP3-Dateien, dann geht das so:
# lame --tt "Song Titel" --ta "Interpret" --tl "Album" -q 0 -V 0 track01.cdda.wav track01.mp3 LAME 3.98.2 32bits (http://www.mp3dev.org/) CPU features: MMX (ASM used), SSE (ASM used), SSE2 Using polyphase lowpass filter, transition band: 19383 Hz - 19916 Hz Encoding AMARICAN_EULOGY.wav to AMARICAN_EULOGY.mp3 Encoding as 44.1 kHz j-stereo MPEG-1 Layer III VBR(q=0)
# ls -lh -rw-r--r-- 1 root root 11M 2010-04-22 17:43 track01.mp3 -rw-r--r-- 1 root root 55M 2010-04-22 16:40 track01.cdda.wav
Wichtig ist mir hier der Parameter "-q 0", er steht für die Qualität der eingesetzten Algorithmen zur Berechnung der Rauschformung. "0" steht hier für den besten Algorithmus, der beim transcodieren allerdings auch der langsamste ist. Ich persönlich habe hier allerdings keinen nennenswerten Rechenzeitunterschied, zu den anderen q-Werten, fest stellen können. Die Rauschformung filtert das Quantisierungsrauschen eines digitalen Musiksignals nach psychoakustischen Vorgaben.
# mplayer track01.mp3
========================================================================== Opening audio decoder: [mp3lib] MPEG layer-2, layer-3 AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400) Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3) ==========================================================================
Unter Verwendung von VBR (Variable bitrate) soll man die besten Ergebnisse erziehlen! Hier gibt es vier Einstellungen, die man sich merken sollte:
- -V 0
- –preset extreme
- –preset standard
- –preset medium
Wobei -V 0 von den vieren die beste Qualität liefert und medium die kleinsten Dateien. Will man noch kleinere Dateien, dann sollte man am besten den Wert für -V erhöhen. Im folgenden habe ich mit den drei vordefinierten Profilen und allen V-Werten zwischen 0 und 9 eine Tonspur transkodiert. Die Datei mit der besten Qualität steht ganz oben (das Original), alle anderen sind übersetzt worden und sind in der Qualität nach unten absteigend:
# ls -lh -rw-r--r-- 1 root root 47M Apr 24 01:34 track02.cdda.wav -rw-r--r-- 1 root root 7.2M Apr 25 22:34 track02_V0.mp3 -rw-r--r-- 1 root root 6.9M Apr 25 23:01 track02_extreme.mp3 -rw-r--r-- 1 root root 6.4M Apr 25 22:50 track02_V1.mp3 -rw-r--r-- 1 root root 5.9M Apr 25 22:51 track02_V2.mp3 -rw-r--r-- 1 root root 5.6M Apr 25 23:00 track02_standard.mp3 -rw-r--r-- 1 root root 5.5M Apr 25 22:51 track02_V3.mp3 -rw-r--r-- 1 root root 5.1M Apr 25 22:51 track02_V4.mp3 -rw-r--r-- 1 root root 4.8M Apr 25 22:59 track02_medium.mp3 -rw-r--r-- 1 root root 4.6M Apr 25 22:51 track02_V5.mp3 -rw-r--r-- 1 root root 4.2M Apr 25 22:51 track02_V6.mp3 -rw-r--r-- 1 root root 3.5M Apr 25 22:52 track02_V7.mp3 -rw-r--r-- 1 root root 3.0M Apr 25 22:52 track02_V8.mp3 -rw-r--r-- 1 root root 2.1M Apr 25 22:52 track02_V9.mp3
Alternativ kann man auch die Average Bitrate (ABR) angeben. Hier sind die Dateigrößen leichter kalkulierbar, aber die maximale Qualität bei gegebener Dateigröße ist geringer als beim VBR-Verfahren.
# lame -q 0 --abr 256 track02.cdda.wav track02_abr_256.mp3
# ls -lh -rw-r--r-- 1 root root 47M Apr 24 01:34 track02.cdda.wav -rw-r--r-- 1 root root 7.7M Apr 25 22:42 track02_abr_256.mp3 -rw-r--r-- 1 root root 5.6M Apr 25 22:41 track02_abr_192.mp3 -rw-r--r-- 1 root root 3.6M Apr 25 22:39 track02_abr_128.mp3
von WAV zu AAC
Möchte man lieber AAC-Dateien, dann geht das so:
# faac --tns -o track01.aac track01.cdda.wav Freeware Advanced Audio Coder FAAC 1.28 Quantization quality: 100 Bandwidth: 16000 Hz Object type: Low Complexity(MPEG-2) + TNS + M/S Container format: Transport Stream (ADTS)
Ohne die Parameter "-r" oder "-w" und mit der Endung ".aac" wird der Datenstrom in einen ADTS-Container (Transport-Container) geschrieben.
# faac -r --tns -o track01.aac track01.cdda.wav Freeware Advanced Audio Coder FAAC 1.28 Quantization quality: 100 Bandwidth: 16000 Hz Object type: Low Complexity(MPEG-2) + TNS + M/S Container format: Headerless AAC (RAW)
Mit dem Parameter -r wird angegeben, dass die Daten RAW (Headerless AAC) geschrieben werden.
So wird eine gleichmäßige Qualität von ca. "256 kbps" festgelegt, der Rest ist dynamisch:
# faac -r --tns -q 256 -o track01_256.aac track01.cdda.wav Freeware Advanced Audio Coder FAAC 1.28 Quantization quality: 256 Bandwidth: 22050 Hz Object type: Low Complexity(MPEG-2) + TNS + M/S Container format: Headerless AAC (RAW)
Mit dem Parameter -q 256 wird die durchschnittliche Datenrate von 256 kbps angegeben.
Mit dem Parameter –tns wird die Rauschunterdrückung aktiviert.
Mit dem Parameter -q wird die gewünschte Qualität angegeben, "100" soll ca. "120 kbps" entsprechen. Meine Erfahrung nach kann man das aber ungefähr gleich setzen (100=100). Die möglichen Übergabewerte liegen hier zwischen "10" und "500".
Eine gleichmäßige Qualität von ca. 256 kbps im Blu-Ray-kompatibelen Format (Low Complexity (MPEG-4)):
# faac --tns -q 256 -o track01_256.m4a track01.cdda.wav Freeware Advanced Audio Coder FAAC 1.28 Quantization quality: 256 Bandwidth: 22050 Hz Object type: Low Complexity(MPEG-4) + TNS + M/S Container format: MPEG-4 File Format (MP4) Encoding track01.cdda.wav to track01_256.m4a
Ohne die Parameter "-r" oder "-w" und mit einer MPEG4-Endung (.mp4, .m4a, m4b) wird der Datenstrom in einen MP4-Container geschrieben. Das selbe passiert unter Angabe des Parameters "-w".
Ein MP4-Container ist unbedingt erforderlich, wenn man die ID3-Tags in der Datei beschreiben möchte. Zu empfehlen ist der MP4-Container auch dann, wenn man diese Audio-Spur mit einer Video-Spur zusammen muxen möchte (z.B. mit MKVMerge)!
Der Parameter -q 160 ist ein guter Kompromiss zwischen Qualität und Dateigröße:
# faac -q 160 -o track01_160.aac track01.cdda.wav Freeware Advanced Audio Coder FAAC 1.26.1 (Aug 16 2008) UNSTABLE Quantization quality: 160 Bandwidth: 22050 Hz Object type: Low Complexity(MPEG-2) + M/S Container format: Transport Stream (ADTS) Encoding track01.cdda.wav to track01_160.aac
# du -sk track01* 1157978 track01.cdda.wav 118619 track01.aac 182539 track01_256.aac 183692 track01_256.m4a
Die Datei track01_160.aac habe ich nicht gemessen aber ihre Größe dürfte sich (in diesem Beispiel) in dem Bereich zwischen 148000 kB und 158000 kB bewegen.
Die oben gezeigten Werte, sollte man sowieso nicht als absolut annehmen, da der Kompressionsfaktor stark von der Art der Musik abhängig ist.
5.1 Kanäle aus der WAVE-Datei erhalten und in eine 5.1 AAC-Datei (M4A) übertragen:
# faac -I 5,6 -C 6 -q 160 -w -o tonspur.m4a tonspur.wav
rippen per Script
Als erstes legt man die CD ins Laufwerk und dann startet man dieses Script mit den beiden Parametern:
- "Interpreten- bzw. Gruppen-Bezeichnung"
- "Album-Name"
… dann legt es los und man hat am Ende ein Verzeichnis rip in dem die Musik von der CD als WAV-, OGG- und MP3-Dateien drin liegen.
zum Beispiel so:
# ./cdrip.sh "FALCO" "The Spirit Never Dies"
...
#================================================================#
LAME 3.99.5 64bits (http://lame.sf.net)
Using polyphase lowpass filter, transition band: 18671 Hz - 19205 Hz
Encoding track32.cdda.wav to track32.mp3
Encoding as 44.1 kHz j-stereo MPEG-1 Layer III VBR(q=2)
Frame | CPU time/estim | REAL time/estim | play/CPU | ETA
2610/2610 (100%)| 0:02/ 0:02| 0:02/ 0:02| 24.309x| 0:00
32 [ 92] %**********
40 [ 1] %
48 [ 1] %
56 [ 0]
64 [ 1] %
80 [ 2] %
96 [ 2] %
112 [ 1] %
128 [ 57] %%*****
160 [1261] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%***************************************************************************************************
192 [ 947] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%******************************************
224 [ 118] %%%%%%%%%%%***
256 [ 109] %%%%%%%%%%%%*
320 [ 18] %%*
------------------------------------------------------------------------------------------------------------------------------------------------------------
kbps LR MS % long switch short %
174.2 46.0 54.0 95.8 2.5 1.8
Writing LAME Tag...done
ReplayGain: -1.8dB
track32.mp3 -> mp3/track32.mp3
#----------------------------------------------------------------#
Opening with wav module: WAV file reader
Encoding "track32.cdda.wav" to
"track32.ogg"
at quality 5,00
[ 99,9%] [ 0m00s remaining] |
Done encoding file "track32.ogg"
File length: 1m 08,0s
Elapsed time: 0m 02,6s
Rate: 25,7158
Average bitrate: 154,2 kb/s
track32.ogg -> ogg/track32.ogg
#----------------------------------------------------------------#
Freeware Advanced Audio Coder
FAAC 1.28
Quantization quality: 128
Bandwidth: 19360 Hz
Object type: Low Complexity(MPEG-4) + M/S
Container format: MPEG-4 File Format (MP4)
Encoding track32.cdda.wav to track32.m4a
frame | bitrate | elapsed/estim | play/CPU | ETA
2936/2936 (100%)| 144.1 | 3.6/3.6 | 18.91x | 0.0
track32.m4a -> m4a/track32.m4a
#----------------------------------------------------------------#
Wichtig ist, dass die doppelten Anführungszeichen nicht vergessen werden, wenn die Bezeichnungen Leerzeichen enthalten!
cdrip.sh
#!/bin/sh
#
# die CD muss natürlich bereits im Laufwerk liegen
#
if [ -z "${2}" ] ; then
echo "${0} [Artist/Interpret] [Album]"
exit 0
fi
#
# vorher muss man die gewünschten Titel von der CD
# als Wave-Dateien auf die HDD ablegen:
cdparanoia -d /dev/cd0 -B || exit 1
#
ls *.wav | while read DATEI
do
TITEL="$(echo "${DATEI}" | rev | sed 's/[.]addc[.]/./;s/[ ]/_/g;s/[.]/ /;s/[.]/_/g' | rev | awk '{print $1}')"
ENDUNG="$(echo "${DATEI}" | rev | sed 's/[ ]/_/g;s/[.]/ /;s/[.]/_/g' | rev | awk '{print $2}')"
echo '#================================================================#'
### MP3
# maximale Qualität
#lame --tt "${TITEL}" --ta "${1}" --tl "${2}" -q 0 -V 0 "${DATEI}" ${TITEL}.mp3
# guter Kompromiss zwischen Qualität und Dateigröße (--preset standard -> ca. 160kbps)
lame --tt "${TITEL}" --ta "${1}" --tl "${2}" --preset standard "${DATEI}" ${TITEL}.mp3
mkdir -p mp3
mv -v ${TITEL}.mp3 mp3/
echo '#----------------------------------------------------------------#'
### OGG/Vorbis
# maximale Qualität (-q10 -> ca. 448kbps)
#oggenc -t "${TITEL}" -a "${1}" -l "${2}" -q 10 -o ${TITEL}.ogg "${DATEI}"
# guter Kompromiss zwischen Qualität und Dateigröße (-p 5 -> ca. 160kbps)
oggenc -t "${TITEL}" -a "${1}" -l "${2}" -q 5 -o ${TITEL}.ogg "${DATEI}"
mkdir -p ogg
mv -v ${TITEL}.ogg ogg/
echo '#----------------------------------------------------------------#'
### AAC
# maximale Qualität
#faac --title "${TITEL}" --artist "${1}" --album "${2}" -q 500 -w -o ${TITEL}.m4a "${DATEI}"
# guter Kompromiss zwischen Qualität und Dateigröße (-q 128 -> ca. 160kbps)
faac --title "${TITEL}" --artist "${1}" --album "${2}" -q 128 -w -o ${TITEL}.m4a "${DATEI}"
mkdir -p m4a
mv -v ${TITEL}.m4a m4a/
echo '#----------------------------------------------------------------#'
done
MP3 in WAVE umwandeln
Meistens wird die Umwandlung genau andersherum gemacht. Aber manchmal möchte man eine MP3-Datei auch auf eine klassische Musik-CD brennen, dann braucht man meistens eine WAVE oder eine AU-Datei.
