web-dev-qa-db-fra.com

Conversion en vrac / batch de fichiers mp3 en ogg via la ligne de commande?

est-il possible de convertir des fichiers mp3 en ogg via une ligne de commande?

J'aimerais convertir en un seul coup mes fichiers mp3 en ogg afin que je puisse les lire dans Firefox sans aucun problème.

44
chrisjlee

En recherchant les paquets correspondant à ogg, j’ai trouvé dir2ogg qui semble être exactement ce que vous voulez. Juste

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

Et il trouve et convertit tous les fichiers mp3 de /path/to/mp3s/ en ogg de manière récursive (en supposant que j'ai lu le manuel correctement).

37
geirha

Utilisez une combinaison de FFMPEG et String Manipulation .

Allez dans le dossier où se trouvent vos mp3:

cd mp3folder

Un exemple consiste à utiliser une simple boucle "pour":

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

Les guillemets doubles empêchent que des espaces dans les noms de fichiers soient traités comme des "nouvelles lignes".

ffmpeg a plusieurs options à inclure dans la conversion, telles que codecs, débit, taille d’échantillon, stéréo/mono, etc ... La conversion ci-dessus est la plus générique avec les paramètres par défaut.

30
SaultDon

Soyez prudent avec les conversions de MP3, M4A, etc. en OGG, car le résultat peut = un son médiocre!

Avertissement : Les formats MP3 et OGG sont des formats avec perte , contrairement à WAV ou FLAC. Cela signifie qu'ils parviennent en grande partie à leur compression en rejetant des informations audio imperceptibles pour l'oreille humaine (appelée [psychoacoustique] [wikipedia] =)

Lorsque vous encodez (transcodez) d'un format avec perte à un autre, la plupart de ces bits redondants sur le plan psychoacoustique ont déjà disparu, de sorte que la qualité du transcodage en souffre et peut même être "compréhensible" dans le résultat. Par conséquent, il n'est pas recommandé de faire de telles conversions sauf en cas d'absolue nécessité.


Réduisez l'effet si vous le faites en choisissant un débit binaire supérieur supérieur au débit binaire source

Si vous effectuez cette conversion de MP3 à OGG, vous pouvez réduire le risque d’artefacts (qualité médiocre) en utilisant un débit binaire supérieur supérieur au débit source, par exemple, si votre Les MP3 sont à 128 kbps, essayez d’utiliser Ogg à -q7 (niveau de débit binaire variable 7), ce qui correspond généralement à environ 200 kbps.

Vous pouvez passer l'option -q à dir2ogg (disponible dans le dépôt, comme indiqué par @geirha), qui doit faire ce que vous voulez.

19
ish

vous pouvez utiliser le avconv un programme gpl, j’ai fait un shell pour exemplify (l’exécuter sur un dossier contenant les fichiers .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

ou une version plus simple, sans validation de l'installation avconv:

#!/bin/bash
for file in *.mp3
    do avconv -i "${file}" "`echo ${file%.mp3}.ogg`";
done
10
ademar111190

L'analyse/le remplacement de mp3 par ogg est incorrect. La forme correcte devrait être:

for file in *.mp3;

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

done
3
John Jacq

En voici une qui utilise mplayer, je pense que c'est plus rapide que avconv. Bien que Firefox devrait lire les fichiers mp3 de manière native.

#!/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
2
mchid

Il y a aussi soundconverter . Il prend en charge les interfaces utilisateur graphique et de ligne de commande et peut effectuer des transformations en masse dans les deux modes.

1
zakkak

Si vous n'utilisez que de l'audio, utilisez le code ci-dessous [sinon, FF ne lit pas le .ogg]

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

Cela semble résoudre votre problème http://www.perturb.org/display/entry/687/

0
Garry Cairns