En las últimas semanas, pasé de un enfoque bastante práctico a la transcodificación .flac -> .mp3, a uno que es mucho más "configurar y olvidar".
El primer paso fue dejar de usar una interfaz gráfica de usuario (Audacity con un complemento LAME) y, en su lugar, usar el método que describí aquí .
El segundo paso fue encontrar un script de shell bash que le dijera a ese ciclo de comandos que funcionara recursivamente, permitiendo que los directorios con muchos subdirectorios que contienen archivos .flac se transcodifiquen en un solo paso. Esa respuesta fue proporcionada por un usuario en askubuntu.com.
Ahora deseo aprender cómo refinar aún más las cosas para preservar la información de la etiqueta ID3. Los métodos vinculados a los datos de etiqueta ID3 de la tira anterior, dejando el mínimo (es decir, solo queda el campo de título).
¿Alguien puede enseñarme cómo escribir un script de shell?
El script de shell se ha actualizado así:
#!/bin/bash
file="$1"
flac -cd "$file" | lame --preset fast extreme - "${file%.flac}.mp3"
id3cp "$file" "${file%.flac}.mp3"
Hacer find . -name '*.flac' -exec ~/bin/flac2mp3 '{}' \;
en ~ / Desktop / stack da el siguiente resultado:
01 - Amon Tobin - Chomp Samba.flac: done
LAME 3.98.4 64bits (http://www.mp3dev.org/)
Using polyphase lowpass filter, transition band: 19383 Hz - 19916 Hz
Encoding <stdin> to ./01 - Amon Tobin - Chomp Samba.mp3
Encoding as 44.1 kHz j-stereo MPEG-1 Layer III VBR(q=0)
Parsing ./01 - Amon Tobin - Chomp Samba.flac: done. Copying to ./01 - Amon Tobin - Chomp Samba.mp3: done
id3info
para el .flac original y el .mp3 resultante da, respectivamente:
*** Tag information for 01 - Amon Tobin - Chomp Samba.flac
(es decir, nada);
*** Tag information for 01 - Amon Tobin - Chomp Samba.mp3
*** mp3 info
MPEG1/layer III
Bitrate: 128KBps
Frequency: 44KHz
El .flac definitivamente tiene información de etiqueta. Puedo verificar esto abriendo EasyTAG. EasyTAG se refiere a esto como 'Etiqueta FLAC Vorbis' pero 'Etiqueta ID3' para el .mp3. ¿Es este el problema?
ffmpeg
?Respuestas:
fuente
Cómo usar mp3fs para codificar en masa flac a mp3
En lugar de usar un programa para convertir archivos flac a mp3, puede usar mp3fs para presentarlos como mp3 virtuales y un programa que puede poner en cola trabajos de copia. Funciona maravillosamente bien para mí.
Descargue e instale mp3fs y ultracopiadora:
Cree un par de directorios flac y mp3 para cada mp3fs que desee ejecutar. Tengo una CPU de doble núcleo, así que ejecuto dos. Si mantiene los directorios flac en la partición donde están sus archivos flac, puede moverlos rápidamente. Esa partición se llama "Almacenamiento" en mi sistema.
Puede montar los directorios desde la línea de comandos o agregándolos a
/etc/fstab
. También puede configurar la tasa de bits y el algoritmo de codificación de los mp3 virtuales en el momento del montaje. Quiero mp3's con una tasa de bits constante de 320 kbps, y cojo puede tomar todo el tiempo necesario para producir el mejor mp3 posible.En la línea de comando:
Si el fusible se queja, como
luego descomente la
user_allow_other
opción en/etc/fuse.conf
, y / o hágala legible conO de
/etc/fstab
:Después de agregar los directorios a
/etc/fstab
, puede montarlos usando¡Hecho! Inicie la ultracopiadora. Colocará un ícono indicador en su panel de gnomos o lo que sea que use. Haga clic en él, seleccione agregar copia. Lo hice dos veces para usar dos núcleos. Use su navegador de archivos para mover algunos flacs a flac_1. Navegue hasta el directorio mp3_1 y arrastre sus mp3 a una de las ventanas de la ultracopiadora para iniciar una cola de copia. Ultracopier le preguntará el destino de los archivos. Ahora tiene un núcleo ocupado codificando un lote de flacs a mp3.
Para usar el otro núcleo, mueva los archivos flac a flac_2 y arrastre los mp3 de mp3_2 a la segunda ventana de la ultracopiadora.
Actualización: en lugar de la ultracopiadora, ahora estoy usando MiniCopier, es un poco más fácil de usar. Ver comentarios a continuación.
fuente
id3cp
no puede funcionar ya que FLAC no usa ID3; utiliza etiquetas Vorbis en su lugar.avconv
tiene una opción para mantener las etiquetas a través de la conversión. Es un poco voluble, su valor depende de la combinación de códecs , pero funciona así en su caso (versión 9.16-6):Aplicar esto todos los archivos FLAC en una carpeta (recursivamente) es tan fácil como esto: (usando
bash
)Tenga en cuenta que
avconv
utiliza cojo automáticamente; existen otras opciones para controlar la calidad y otras cosas. Verifique losman avconv
detalles.fuente