Können Apple Lossless-Audiodateien (ALAC) ohne Qualitätsverlust in FLAC-Audiodateien konvertiert werden?
Können Apple Lossless-Audiodateien (ALAC) ohne Qualitätsverlust in FLAC-Audiodateien konvertiert werden?
Antworten:
Ja, da beide mathematisch verlustfrei sind, ist auch die Konvertierung verlustfrei.
Der Grund dafür ist, dass das Signal immer in seine ursprüngliche Form wiederhergestellt werden kann, wenn eine FLAC / ALAC-Datei decodiert wird. Somit sind sie gleichwertig und Sie sollten beim Transcodieren keinen Verlust erleiden - selbst wenn Sie mehrmals transcodieren.
Der einzige Fehler, den ich mir vorstellen könnte, wäre ein arithmetischer Fehler, z. B. durch begrenzte Gleitkommapräzision bei Berechnungen. Ich denke nicht, dass dies für FLAC oder ALAC gilt.
Falls Sie nur einen "psychoakustisch" verlustfreien Codec verwenden, ist dies nicht möglich. Verlustfrei im psychoakustischen Sinne würde bedeuten, dass Sie die ursprüngliche und die komprimierte Version nicht unterscheiden können, obwohl sie sich sehr voneinander unterscheiden. MP3 oder MPEG-4 AAC verwenden dazu verschiedene psychoakustische Techniken. Daher kann beim Transcodieren die Originalversion nicht wiederhergestellt werden, und es kommt zu einem Qualitätsverlust.
Wenn Sie ALAC in FLAC konvertieren ffmpeg
möchten, ist dies eine gute Option, da es kostenlos und für nahezu jede Plattform verfügbar ist.
ffmpeg -i audio.m4a -c:a flac audio.flac
FFmpeg liest ALAC ohne Probleme. Für * nix-Systeme gibt es auch ein Skript namens In FLAC konvertieren, das den gesamten Vorgang vereinfacht. Mit Bash können Sie auch einfach alle Dateien in ein einziges Verzeichnis konvertieren:
for f in *.m4a; do ffmpeg -i "$f" -c:a flac "${f%.m4a}.flac"; done
Hinweis: Wenn Sie eine Meldung erhalten, ffmpeg
dass Sie veraltet sind, ist dies eigentlich nicht der Fall - es ist immer noch ein aktiv entwickeltes Programm. Die Paketbetreuer von Ubuntu haben sich jedoch gerade entschlossen, auf die Libav-Verzweigung von FFmpeg umzusteigen und Sie avconv
stattdessen mit zu versorgen ffmpeg
. Die ffmpeg
auf Ubuntu verfügbare Version ist daher veraltet. Sie können eine aktuelle Version herunterladen , indem Sie stattdessen eine statische Version herunterladen oder diese selbst kompilieren. Lesen Sie weiter für weitere Informationen: Wer kann mir den Unterschied und die Beziehung zwischen ffmpeg, libav und avconv erklären?
for f in *.m4a; do ffmpeg -i "$f" -acodec flac "${f%.m4a}.flac"; done
Dies funktioniert unter Linux, aber auch in einer Git-Bash unter Windows.
*** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
Um dies mit aconv zu tun, machen Sie stattdessen Folgendes: for f in *.m4a; do avconv -i "$f" "${f%.m4a}.flac"; done
für Windows in Powershell (mit ffmpeg) können Sie dies tun, um alac in flac zu konvertieren:
Get-ChildItem . -filter *.m4a| ForEach-Object { ffmpeg -i "$_" -acodec flac "$($_.basename).flac" }
und umgekehrt, um nach alac zu konvertieren
Get-ChildItem . -filter *.flac | ForEach-Object { ffmpeg -i "$_" -acodec alac $($_.basename).m4a" }