¿Existe una buena herramienta de línea de comandos para convertir hacia y desde el formato de audio FLAC?

Respuestas:

11

La herramienta fundamental para las conversiones de formato de sonido y las transformaciones simples es SoX, la navaja suiza de los programas de procesamiento de sonido .

sox foo.mp3 foo.flac

Si está ejecutando Debian, el soporte para escribir MP3 soxestá roto en Lenny y Squeeze (y hasta donde yo sé, el mismo problema afecta a Ubuntu 10.04 y 10.10). Este error se solucionó a principios de marzo de 2011, por lo que tomar la última fuente (o tomar un binario para sox14.3.1-1build1 o más reciente) y volver a compilarlo debería funcionar.

Una alternativa para codificar .mp3es lame. No lee .flac, pero se puede utilizar soxo flacconvertir de .flaca .wavy después lamede .wava .mp3.

flac -d foo.flac -c | lame - foo.mp3
Gilles 'SO- deja de ser malvado'
fuente
7

Sox versión 13 y posteriores son compatibles con FLAC, junto con muchos otros formatos . sox puede hacer muchas cosas en un archivo de audio, no solo convertir de un formato a otro. Es para audio lo que ImageMagick es para gráficos.

Warren Young
fuente
Gran analogía, hombre. eso te consiguió un voto positivo.
ixtmixilix
2

Se llama flac, por extraño que parezca. Es algo doloroso de usar, o estaba de vuelta cuando escribí un trabajo de transcodificación con él.

geekosaur
fuente
0

Por supuesto, puede usar SoX, como otras personas ya mencionaron, pero sugiero usar lamey flac:

Su primera pregunta va de .mp3a .flac(vea a continuación por qué suele ser una mala idea):

lame --decode <file>.mp3 - | flac -o <file>.flac -

Esto usará encabezados WAV, que tienen limitaciones cuando se trata de archivos muy largos (cuatro horas o más archivos de sonido largos, etc.)

Su segunda pregunta es cómo pasar de .flaca .mp3:

flac -d -c <file>.flac | lame - <file>.mp3

Esta configuración asume niveles de calidad predeterminados, etc. Lea la página de manual de lamey / o flacpara tener una mejor idea de cómo ajustarlos.


Ahora, puede ser que tengas grabaciones muy largas, que luego quieras volver a codificar en un formato con pérdida. Este fue uno de mis casos de uso, y se me ocurrió esto:

Pasando .flaca .mp3usar la configuración de calidad predeterminada:

flac -d --force-raw-format --endian=little --sign=signed <file>.flac -c | lame -r -s 48 - <file>.mp3

Esto supone que el formato sin procesar es un dato PCM. Frecuencia de muestreo 48 kHz, dos canales. Cada muestra es de 16 bits, little endian, entero con signo.

El proceso de codificación de lameestá utilizando la configuración de calidad predeterminada aquí, que puede no ser lo suficientemente sofisticada para usted, eso sí.


Cabe señalar que no tiene sentido crear un archivo FLAC a partir de un archivo MP3, porque el MP3 ya está codificado con pérdida.

Pasar de MP3 -> FLAC y luego FLAC -> MP3 no tiene sentido, ya que la calidad se verá afectada desde el primer paso de codificación original de MP3.

Sin embargo, supongo que tiene un caso de uso razonable para esto ...

polemon
fuente