¿Se pueden convertir los archivos de audio Apple Lossless (ALAC) a archivos de audio FLAC sin pérdida de fidelidad?
¿Se pueden convertir los archivos de audio Apple Lossless (ALAC) a archivos de audio FLAC sin pérdida de fidelidad?
Respuestas:
Sí, dado que ambos son matemáticamente sin pérdidas, la conversión tampoco tiene pérdidas.
La razón de esto es que la señal siempre se puede reconstruir a su forma original cuando se decodifica un archivo FLAC / ALAC. Por lo tanto, son equivalentes y no debería experimentar pérdida al transcodificar, incluso cuando transcodifica varias veces.
El único error que podría imaginar sería aritmético, por ejemplo, a través de una precisión limitada de coma flotante en los cálculos. No creo que esto se aplique ni a FLAC ni a ALAC.
En caso de que solo use un códec sin pérdidas "psicoacústicamente", esto no es posible. Sin pérdida en un sentido psicoacústico significaría que no se puede distinguir la versión original y la versión comprimida, sin embargo, son muy diferentes entre sí. MP3 o MPEG-4 AAC utilizan varias técnicas psicoacústicas para lograr esto. Por lo tanto, al transcodificar, la versión original no se puede reconstruir y experimentaría una pérdida de calidad.
En caso de que desee convertir ALAC a FLAC, ffmpeg
sería una buena opción, ya que es gratis y está disponible para casi todas las plataformas.
ffmpeg -i audio.m4a -c:a flac audio.flac
FFmpeg leerá ALAC sin problemas. Para los sistemas * nix, también hay un script llamado Convert to FLAC que facilita todo el proceso. Con Bash también puedes convertir todos los archivos en un solo directorio:
for f in *.m4a; do ffmpeg -i "$f" -c:a flac "${f%.m4a}.flac"; done
Nota: Si recibe un mensaje acerca de ffmpeg
ser desaprobado, este no es el caso, sigue siendo un programa desarrollado activamente. Sin embargo, los mantenedores de paquetes de Ubuntu simplemente decidieron cambiar a la bifurcación Libav de FFmpeg y, por lo tanto, proporcionarle en avconv
lugar de ffmpeg
. La versión de ffmpeg
disponible en Ubuntu está por lo tanto desactualizada. Puede obtener una reciente descargando una compilación estática o compilándola usted mismo. Siga leyendo para obtener más información: ¿Quién puede decirme la diferencia y la relación entre ffmpeg, libav y avconv?
for f in *.m4a; do ffmpeg -i "$f" -acodec flac "${f%.m4a}.flac"; done
Esto funciona en Linux, pero también en un Git bash en Windows, por ejemplo.
*** THIS PROGRAM IS DEPRECATED *** This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
Para hacer esto usando aconv, haga esto en su lugar: for f in *.m4a; do avconv -i "$f" "${f%.m4a}.flac"; done
para Windows en Powershell (usando ffmpeg) puede hacer esto para convertir alac a flac:
Get-ChildItem . -filter *.m4a| ForEach-Object { ffmpeg -i "$_" -acodec flac "$($_.basename).flac" }
y viceversa, haga esto para convertir a alac
Get-ChildItem . -filter *.flac | ForEach-Object { ffmpeg -i "$_" -acodec alac $($_.basename).m4a" }