convertir a granel / lote archivos mp3 a ogg a través de la línea de comandos?

44

¿Es posible convertir mp3 a ogg a través de la línea de comando?

Me gustaría convertir de forma masiva mis archivos mp3 a ogg para poder reproducirlos en Firefox sin ningún problema.

chrisjlee
fuente
Firefox debería reproducir archivos mp3 bien
mchid

Respuestas:

37

Buscando paquetes que coincidan con ogg, encontré dir2ogg que parece ser exactamente lo que quieres. Sólo

sudo apt-get install dir2ogg
dir2ogg -r /path/to/mp3s/

Y encuentra y convierte recursivamente todos los archivos mp3 /path/to/mp3s/a ogg (suponiendo que haya leído el manual correctamente).

geirha
fuente
30

Use una combinación de FFMPEG y manipulación de cadenas .

Cambie a la carpeta donde se encuentran sus mp3:

cd mp3folder

Un ejemplo es usar un bucle simple "for":

for file in *.mp3
  do ffmpeg -i "${file}" "${file/%mp3/ogg}"
done

Las comillas dobles evitan que los espacios en los nombres de archivo se traten como 'nuevas líneas'.

ffmpeg tiene varias opciones para incluir en la conversión, como códecs, velocidad de bits, tamaño de muestra, estéreo / mono, etc. La anterior es la conversión más genérica con la configuración predeterminada.

SaultDon
fuente
Excelente. dir2ogg no funcionaba en sibilante, pero esta respuesta funcionaba como un encanto
Onimusha
dir2ogg tampoco funcionó para mí, pero estaba convirtiendo m4a -> ogg. <a href=" linuxquestions.org/questions/linux-general-1/… "title= linuxquestions.org"> lq </a> pero el bucle for anterior sí lo hizo (reemplazando ffmpeg con avconv). Al convertir m4a / mp3 a ogg con el proceso anterior, el tamaño del archivo aumenta 9 veces. Sin embargo, si primero convierte m4a a mp3 y luego mp3 a ogg, el tamaño del archivo es solo 4 veces mayor. <pre> <code> avconv -i "ManjusriMantra.m4a" " ManjusriMantra.mp3 "wait avconv -i" ManjusriMantra.mp3 "" ManjusriMantra.ogg "<código> <pre>
afc888ny
esto funcionó para mí: ffmpeg -i sound.mp3 -c:a libvorbis -q:a 10 sound.oggconfiguración de la más alta calidad, aún notablemente peor que la original. La configuración predeterminada no funcionó para mí en absoluto (en Cygwin, por lo que demandarme :)), pero esta pregunta tenía buena información: superuser.com/questions/273797/convert-mp3-to-ogg-vorbis
Kai Carver
19

¡Tenga cuidado con las conversiones de MP3, M4A, etc. a OGG porque el resultado puede sonar pobre!

Advertencia : tanto MP3 como OGG son formatos con pérdida, a diferencia de WAV o FLAC. Esto significa que logran su compresión en gran parte al desechar fragmentos de información de audio que son imperceptibles para el oído humano (llamados psicoacústicos [wikipedia] )

Cuando codifica (transcodifica) de un formato con pérdida a otro, la mayoría de esos bits psicoacústicamente redundantes ya han desaparecido, por lo que la calidad de la transcodificación sufrirá e incluso puede ser "acumulable" en el resultado. Por lo tanto, no se recomienda hacer tales conversiones a menos que sea absolutamente necesario.


Minimice el efecto si lo hace eligiendo una tasa de bits de destino más alta que la tasa de bits de origen

Si realiza esta conversión de MP3 a OGG, puede minimizar la posibilidad de artefactos (mala calidad) utilizando una tasa de bits de destino más alta que la tasa de bits de origen , por ejemplo, si sus MP3 están a 128 kbps, intente usar Ogg a -q7(nivel de tasa de bits variable 7), que generalmente es de alrededor de ~ 200 kbps.

Puede pasar la -qopción a dir2ogg (disponible en los repositorios como @geirha mencionó) que debería hacer lo que quiera.

ish
fuente
10

puede usar el programa avconv a gpl, hice un shell para ejemplificar (ejecutarlo en la carpeta con los archivos .mp3):

#!/bin/bash
if hash avconv > /dev/null; then
    for file in *.mp3
        do avconv -i "${file}" "`echo ${file%.mp3}.ogg`";
    done
else
    echo "avconv not found"
fi

o una versión más simple, sin validación de la instalación de avconv:

#!/bin/bash
for file in *.mp3
    do avconv -i "${file}" "`echo ${file%.mp3}.ogg`";
done
ademar111190
fuente
NOTA: El paquete avconv es una rama / bifurcación reciente de ffmpeg , con características y sintaxis similares.
david6
NOTA 2: ffmpeg está en desuso oficial y menciona explícitamente que debe usar avconven su lugar.
cenizas999
3

El análisis / reemplazo de mp3 por ogg es incorrecto. La forma correcta debe ser:

for file in *.mp3;

   do ffmpeg -i "${file}" -acodec libvorbis "${file%mp3}ogg";

done
John Jacq
fuente
2

Aquí hay uno que usa mplayer, creo que esto es más rápido que avconv. Aunque, Firefox debería reproducir archivos mp3 de forma nativa.

#!/bin/bash
for f in *.mp3; do
 newname=`echo $f | tr ' ' '_' `
 mv "$f" $newname
 f=$newname
 mplayer $f -novideo -ao pcm:file=tmp.wav
 lame -V 0 -q 0 tmp.wav ${f/.mp3/.ogg}
 rm -f tmp.wav
done
mchid
fuente
1

En caso de que solo esté haciendo audio, use el siguiente código [de lo contrario, FF no reproduce el .ogg]

for file in *.mp3;
   do ffmpeg -i "${file}" -acodec libvorbis "${file/%mp3/ogg}"; 
done
Arup Bhanja
fuente
1

También hay convertidor de sonido . Es compatible con la GUI y la CLI y puede realizar transformaciones masivas en ambos modos.

zakkak
fuente
0

Parece que podría resolver su problema http://www.perturb.org/display/entry/687/

Garry Cairns
fuente
¿Puedes explicar qué es "eso"? Agregaría más contexto a su respuesta y mejoraría su usabilidad si el enlace al que hace referencia desapareciera algún día =)
SaultDon
Iba a hacer lo que sugieres, pero luego vi la respuesta de Geirha, que parece mucho mejor que la mía, así que la he votado.
Garry Cairns