Respaldo mis CD en FLAC y luego los transcodifico en archivos AAC (.m4a) para poder transportarlos en mi teléfono Android y en el iPhone de la esposa. Había estado usando XLD en Mac y hace un gran trabajo, pero prefiero no robarle su Mac para hacer esto y poder hacerlo en mi propia caja de Debian. Los siguientes trabajos:
avconv -i "inputfile.flac" -acodec aac -strict experimental "outputfile.m4a" -map_metadata "inputfile.flac":"outputfile.m4a"
Pero lo siguiente no (bueno, lo hace, pero ignora el 320 para la calidad de audio y los resultados son los mismos que los anteriores):
avconv -i "inputfile.flac" -acodec aac -aq 320 -strict experimental "outputfile.m4a" -map_metadata "inputfile.flac":"outputfile.m4a"
Encontré otros comandos en línea, como "ffmpeg", pero aparentemente la mayoría o todos ellos se deprecian a favor del método avconv anterior. Cualquier ayuda sería muy apreciada! Podría vivir con 320 Kbps si no es cierto VBR, pero LC VBR de al menos 320 sería lo mejor.
audio
conversion
flac
estático
fuente
fuente
Respuestas:
En primer lugar,
-aq
establece una velocidad de bits variable basada en la calidad: creo que lo está buscando-ab
(tenga en cuenta que soy un usuario de ffmpeg, por lo que mi conocimiento de la sintaxis de avconv es limitado; no tengo idea de cuán lejos se ha derivado desde el tenedor).En cualquier caso, el codificador AAC avconv / ffmpeg incorporado es bastante malo.
fdk_aac
El único codificador AAC realmente bueno para avconv / ffmpeg es libfdk_aac, pero la licencia para eso es incompatible con la GPL, por lo que para obtener acceso a él tendrá que compilar el suyo (es una guía de compilación de ffmpeg, ya que no No sé uno para avconv: la guía de Ubuntu debería estar bien para Debian, ya que no creo que haya nada específico de Ubuntu allí).
Una vez que lo tenga, siga la guía de codificación AAC ; Recomiendo probar la
-vbr
opción de fdk_aac : una configuración de 3 suena transparente para mí en todos los archivos que he probado, si desea el placebo de una tasa de bits más alta, o si es un ingeniero de sonido, puede probar una configuración de 5)No es necesario
-map_metadata
, ya que ffmpeg transferirá metadatos automáticamente (y estoy bastante seguro de que avconv también lo hará).Para una velocidad de bits fija de 320 kbit / s (en serio, esto no vale la pena, AAC logra la transparencia de audio frente al audio de CD original a aproximadamente 128 kbit / s fijos):
neroAacEnc
El codificador AAC de Nero debe considerarse a la par con fdk_aac y qaac (Quicktime AAC). Diferentes personas darán diferentes opiniones sobre cuál es mejor, pero solo notará las diferencias a tasas de bits muy bajas, y todos están de acuerdo en que todos son de muy alta calidad.
neroAacEnc
está disponible en el sitio web de Nero . Descomprímalo y colóquelo en algún lugar de su $ PATH.Lamentablemente
neroAacEnc
solo puede tomar audio WAV como entrada; puede solucionar esto usando avconv o ffmpeg como decodificador:Desafortunadamente, esto eliminará los metadatos; para transferir eso, use avprobe / ffprobe (with
-show_format
) para extraer y neroAacTag para insertar. Un script bash probablemente estaría en orden.Consulte la página de HydrogenAudio en neroAacEnc : desde la memoria, una
-q
configuración de 0.4 me pareció genial. Puede dirigirse a una velocidad de bits con-br
(de nuevo, creo que esto sería así una exageración):EDITAR: aquí hay un script para convertir archivos de audio a m4a con neroAacEnc, luego etiquetar con ffprobe y neroAacTag (requiere que todos estén en un directorio en su $ PATH). Puede tomar múltiples archivos de entrada, por lo que si lo guarda como
convert-to-m4a
, puede convertir cada archivo FLAC en un directorio conNo se limita solo a los archivos FLAC; funcionará cualquier formato de audio que su ffmpeg / avconv pueda decodificar. Es posible que desee cambiar ffprobe y ffmpeg a avprobe y avconv:
fuente
brew install ffmpeg --with-fdk-aac
. Puede obtener una lista de opciones conbrew info ffmpeg
. Pero es una buena idea no robar la Mac de tu esposa :)Sugiero usar FFmpeg para convertir de FLAC a AAC. FFmpeg se instala fácilmente en una máquina Mac OS X con brew:
Luego ejecute el siguiente comando para convertir todos los archivos FLAC en el directorio actual a AAC:
Y para convertirlos a MP3:
fuente
for i in *flac;do of="${i/.flac/.m4a}"; ffmpeg -i "${i}" -vn -acodec aac -b:a 320k -f mp4 -y "${of}";done
Este es mi script que envuelve ffmpeg para convertir cualquier formato de audio compatible a AAC (usando el codificador libfdk-aac, que es el codificador aac recomendado por ffmpeg wiki).
El mensaje de ayuda de la línea de comando:
fuente
Respuesta suplementaria (a la respuesta de evilsoup)
Manejar
find
's-print0
+xarg
' s-0
)$1
delsh -c
argumento posicional--FILE
establecido porxarg
's-I
)Un trazador de líneas
fuente