J'ai réussi à convertir des fichiers AVI en MP4 en utilisant avidemux et le résultat est entièrement satisfaisant. Comme j'ai beaucoup de fichiers à convertir, je voudrais les convertir en lots en utilisant le terminal. J'ai trouvé le script
#!/bin/bash
VIDEOCODEC="Xvid"
AUDIOCODEC="MP3"
for FIL in `ls *mp4 | sort` ; do
avidemux2 --video-codec $VIDEOCODEC --audio-codec $AUDIOCODEC --force-alt-h264 --load "$FIL" --save ${FIL%.*}.avi --quit
done
depuis la page http://www.avidemux.org/admWiki/doku.php?id=tutorial:batch_processing#command-line_only_batch_processing
mais je me retrouve avec l'erreur
./scriptAvidemuxBatch: line 5: avidemux2: command not found
J'ai quelque chose qui fonctionne quand je remplace
avidemux2 --video-codec $VIDEOCODEC --audio-codec $AUDIOCODEC --force-alt-h264 --load "$FIL" --save ${FIL%.*}.mp4 --quit
par
avidemux --video-codec $VIDEOCODEC --audio-codec $AUDIOCODEC --force-alt-h264 --load "$FIL" --save ${FIL%.*}.mp4 --quit
("2" supprimé) mais le gui apparaît toujours et demande que je clique sur plusieurs boutons avant de poursuivre le processus de conversion.
Mes questions sont:
-Est-il possible de remplacer "avidemux2" par "avidemux" dans le script?
-Y a-t-il un moyen d'inclure la sélection faite en cliquant sur les boutons dans le script pour que tout le processus puisse se faire sans mon intervention?
Avidemux est un programme graphique, si vous voulez bénéficier de la puissance de bash, utilisez simplement un programme terminal. Livré avec * buntus actuel, il y a avconv
pour cela.
Un convertisseur de lot est aussi simple que
for i in *.avi; do avconv -i "$i" "${i/%avi/mp4}"; done
Vous voudrez peut-être ajouter des options avconv, voir ici et ici .