Apple Lossless
Apple Lossless, auch bekannt als Apple Lossless Audio Codec (ALAC), ist ein von Apple entwickelter, freier[1] Codec zur verlustfreien Audiodatenkompression. Die komprimierten Audiodaten werden in MP4-Dateien mit der Dateiendung .m4a oder .mp4 abgespeichert. Das Verfahren komprimiert das Original auf durchschnittlich etwa 60 Prozent der Ausgangsgröße.[2] Es bietet keinerlei Optionen oder verschiedene Modifikationen und braucht verhältnismäßig wenig Rechenaufwand zum Dekodieren.
Mit Apples eigener Software iTunes lässt sich damit unkomprimiertes lineares PCM-Material aus WAV- oder AIFF-Dateien (zum Beispiel von Audio-CDs) komprimieren.
Apple Lossless wird auch von Apples AirPlay-Dienst verwendet, der Musik über WLAN zu anderen AirPlay-fähigen Geräten streamt. Das Apple Lossless Format kann ebenfalls von allen Multimedia-Geräten von Apple, wie iPod, iPhone, iPad oder Apple TV, abgespielt werden.
Technik
Er basiert auf linearer Vorhersage mit Codierung des Restsignals per Golomb-Rice-Codes. Der Bitstrom wird über eine eigene, nicht standardisierte Erweiterung im MP4-Containerformat gespeichert, da das Verfahren selbst nicht im Standard enthalten oder vorgesehen ist. (Der standardisierte verlustfreie Audiocodec im MPEG-4-Standard ist MPEG-4 ALS.)
Geschichte
Apple Lossless wurde als Bestandteil von QuickTime 6.5.1 am 28. April 2004 eingeführt. Das Format kann von allen Programmen genutzt werden, die Quicktime unterstützen, beispielsweise Apples iTunes ab Version 4.5.
Durch Reverse-Engineering-Arbeiten des australischen Studenten und Hackers David Hammerton ist seit dem 5. März 2005 Code für einen simplen Decoder in der Programmiersprache C verfügbar. Daraus entstand ein Programm, das Dateien im Format Apple Lossless in das WAV-Format überführen kann.
Im Rahmen eines Google-Summer-of-Code-Projektes implementierte Jai Menon einen freien (unter LGPL) Encoder für das Format, der seit dem 20. August 2008 im FFmpeg-Paket enthalten ist.
Seit Oktober 2011 ist der Apple Lossless Audio Codec freie Software und unterliegt der Apache-Lizenz.[1]
Dadurch konnte diese Funktion in viele Geräte und Programme eingebettet werden, darunter Android-basierte Smartphones, Linux- und Windows-Mediaplayer und Konverter. Apple aktualisierte die proprietäre Version seines Decoders mehrmals und behob Sicherheitslücken. Der der gemeinsame Code wurde dagegen seit 2011 nicht aktualisiert. Er ist anfällig für Angriffe. Qualcomm und MediaTek setzten anfälligen ALAC-Code in Audio-Decodern in mehr als der Hälfte aller Smartphones weltweit ein. Ende 2021 wurden 48 Prozent aller in den USA verkauften Android-Telefone von MediaTek betrieben, während Qualcomm dort einen Marktanteil von 47 Prozent hält. Über Remote-Code-Execution-Angriffe (RCE) lässt sich aus der Ferne bösartiger Code ausführen. MediaTek ordnete CVE-2021-0674 und CVE-2021-0675 den ALAC-Problemen zu, Qualcomm veröffentlichte einen Patch für CVE-2021-30351 Ende 2021.[3]
Unterstützte Medienspieler
Hardware
- Denon DJ Prime 4
- PonoPlayer
Software
- Apple Music
- aTunes
- Clementine
- FFmpeg konvertiert verschiedene Audio-Formate zu Apple Lossless inklusive Tags (Künstler, Titel etc.)
- foobar2000
- iTunes
- Mp3tag kann Apple Lossless Dateien (.m4a) bearbeiten
- QuickTime
- Rockbox
- VLC
- GStreamer[4] und damit alle Programme die es nutzen wie z. B. Phonon
- XLD konvertiert alle Audio-Qualitäten (also auch z. B. Formate mit 24 bit und 96 kS/s und höher) zu Apple Lossless oder in andere Dateiformate
- Poweramp (Android)
Siehe auch
- Audioformat für eine Liste weiterer Verfahren.
Weblinks
- (Linux-)Decoder von David Hammerton (Memento vom 27. April 2015 im Internet Archive)
- http://alac.macosforge.org/ (engl.)
Einzelnachweise
- ↑ a b http://alac.macosforge.org/
- ↑ members.home.nl: Performance comparison of lossless audio compressors (Memento vom 25. November 2010 im Internet Archive)
- ↑ Largest Mobile Chipset Manufacturers used Vulnerable Audio Decoder, 2/3 of Android users’ Privacy around the World were at Risk. checkpoint.com, 21. April 2022, abgerufen am 22. April 2022 (englisch).
- ↑ http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-plugins/html/gst-plugins-bad-plugins-plugin-faac.html