Os arquivos de áudio Apple Lossless (ALAC) podem ser convertidos em arquivos de áudio FLAC sem perda de fidelidade?
Os arquivos de áudio Apple Lossless (ALAC) podem ser convertidos em arquivos de áudio FLAC sem perda de fidelidade?
Respostas:
Sim, dado que ambos são matematicamente sem perdas, a conversão também é sem perdas.
A razão para isso é que o sinal sempre pode ser reconstruído para sua forma original quando um arquivo FLAC / ALAC é decodificado. Portanto, eles são equivalentes e você não deve perder perdas ao transcodificar - mesmo ao transcodificar várias vezes.
O único erro que eu poderia imaginar seria aritmético, por exemplo, através da precisão limitada do ponto flutuante nos cálculos. Acho que isso não se aplica ao FLAC ou ao ALAC.
Caso você use apenas um codec sem perdas "psicoacústica", isso não é possível. Sem perdas, no sentido psicoacústico, significa que você não pode distinguir a versão original e a versão compactada, mas elas são muito diferentes uma da outra. MP3 ou MPEG-4 AAC usam várias técnicas psicoacústicas para conseguir isso. Assim, ao transcodificar, a versão original não pode ser reconstruída e você experimentará uma perda de qualidade.
Caso você queira converter ALAC para FLAC, ffmpeg
seria uma boa opção, pois é gratuita e disponível para quase todas as plataformas.
ffmpeg -i audio.m4a -c:a flac audio.flac
O FFmpeg lerá o ALAC sem problemas. Para sistemas * nix, também existe um script chamado Convert to FLAC, que facilita todo o processo. Com o Bash, você pode simplesmente converter todos os arquivos em um único diretório:
for f in *.m4a; do ffmpeg -i "$f" -c:a flac "${f%.m4a}.flac"; done
Nota: Se você receber uma mensagem sobre ffmpeg
a descontinuação, esse não é realmente o caso - ainda é um programa desenvolvido ativamente. No entanto, os mantenedores de pacotes do Ubuntu decidiram mudar para o fork do Libav do FFmpeg e, assim, fornecer a você em avconv
vez de ffmpeg
. A versão ffmpeg
disponível no Ubuntu está desatualizada. Você pode obter uma versão recente baixando uma compilação estática ou compilando você mesmo. Continue lendo para obter mais informações: Quem pode me dizer a diferença e a relação entre ffmpeg, libav e avconv
for f in *.m4a; do ffmpeg -i "$f" -acodec flac "${f%.m4a}.flac"; done
Isso funciona no Linux, mas também em uma festa do Git no Windows, por exemplo.
*** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
A fim de fazer isso usando aconv, fazer isso em vez disso: for f in *.m4a; do avconv -i "$f" "${f%.m4a}.flac"; done
para Windows no Powershell (usando ffmpeg), você pode fazer isso para converter alac para flac:
Get-ChildItem . -filter *.m4a| ForEach-Object { ffmpeg -i "$_" -acodec flac "$($_.basename).flac" }
e, inversamente, faça isso para converter para alac
Get-ChildItem . -filter *.flac | ForEach-Object { ffmpeg -i "$_" -acodec alac $($_.basename).m4a" }