Table des matières

, , ,

Avidemux

Avidemux est un logiciel vidéo, permettant d'effectuer des coupes, des montages simples, d'appliquer des filtres, des sous-titres, et de ré-encoder des vidéos.

Il est considéré comme l'équivalent de VirtualDub (disponible uniquement sous Windows). Avidemux est simple d'utilisation : quelques clics suffisent pour éditer et encoder une vidéo. Il permet l'encodage dans un grand nombre de formats vidéo dont le H264 et un grand nombre de conteneurs, notamment MPEG, MP4 et MKV. Vous pouvez mettre une vidéo à l'envers (exemple).

Installation

Avidemux n'est pas dans les dépôts Ubuntu.

Avec Flatpak (recommandé)

Avidemux est disponible en flatpak sur le dépôt Flathub et peut donc s'installer en suivant cette procédure puis en installant le paquet org.avidemux.Avidemux.

Au format appimage

Article dédié au fonctionnement de cette méthode : appimage.

Les développeurs d'Avidemux fournissent un fichier en version 64 bits hébergé sur Fosshub

Depuis un PPA

Ces PPAs ne sont pas maintenus par des organismes officiels.

Cette méthode est donc déconseillée.

Vous pouvez installer avidemux via un PPA (18.04 LTS uniquement) :

Et à partir de Ubuntu Focal (LTS 20.04) :

Exemples d'utilisation

Réduire la taille d'une vidéo

Vidéo de vacances prête à subir un filtre en noir et blanc

Les vidéos provenant de DVD, d'appareils photo numériques ou de la télévision utilisent des codecs anciens et peu performants. Pour les conserver ou les passer à ses amis, il est souvent préférable de les ré-encoder avec la dernière génération de codecs : le H264. Il est ainsi possible de réduire leur taille sans altérer la qualité. Attention toutefois, toutes les combinaisons de codecs vidéo/audio et de conteneurs ne fonctionnent pas et il faudra utiliser un lecteur vidéo performant capable de lire les vidéos ainsi créées. La marche à suivre explicitée ci-dessous ne devrait pas poser de problèmes sous GNU/Linux.

  1. Ouvrez la vidéo à ré-encoder.
  2. Choisissez vos codecs dans les menus déroulants du panneau vertical à gauche :
    • le codec vidéo MPEG-4 AVC
    • le codec audio AAC (FAAC)
    • le format (conteneur) AVI
  3. Les configurations par défaut de vos codecs sont probablement bonnes, mais vous pourriez vouloir affiner un peu. Pour cela, cliquer sur le bouton « Configurer » présent sous le nom des codecs dans le panneau vertical.
    • vidéo : plusieurs onglets sont disponibles, le seul accessible aux débutants est l'onglet Débit. Le mieux est de conserver le Mode d'encodage par défaut: Une passe - Qualité Quantificateur (moyenne). Vous pouvez légèrement baisser le Quantificateur (par exemple à 24) pour une meilleure qualité vidéo ou l'augmenter (ex. : 28) pour obtenir un fichier de plus petite taille. Vous pourriez avoir un objectif de taille pour votre vidéo, sélectionner alors leMode d'encodage: Deux passes - Taille de la vidéo puis dans la ligne du dessous, indiquez la taille voulue de votre vidéo en mégaoctets (Mio).
    • audio : indiquez le débit audio en kilobits par seconde (kbps). Cliquer sur Filtres, cocher Rééchantillonnage et saisir 48000 ou 44100 Hz si l'étape d'enregistrement vous retourne l'erreur [BuildChain] Encoder initialization failed Not activated, make sure number of channels and bitrate are compatible with encoder!
Certaines vidéos (notamment sur certains DVD) provoquent un décalage entre l'audio et la vidéo dans Avidemux. Ce décalage est visible dans: Audio - Piste… (exemple: "560 ms shift"; dans ce cas mettez un décalage audio de -560 ms).

4. Avidemux comprend de nombreux filtres vidéo que vous pouvez sélectionner en cliquant sur Filtres, toujours dans le panneau vertical de gauche. Vous pourrez prévisualiser l'effet de la plupart de vos filtrages en remplaçant Entrée par Sortie ou Haut (ou un autre) dans le menu déroulant au dessus de l'image.

Pour que l'option filtre soit accessible, vous devez ré-encoder la vidéo (décocher donc "copie")

Parmi les filtres les plus utiles, citons :

5. Enregistrez votre vidéo en donnant un nom finissant par « .avi ».

Incruster des sous-titres

  1. Avant tout vous devez ré-encoder la vidéo, et donc choisir autre chose que "Copie" dans la boîte "Vidéo", ainsi qu'un format autre que "Copie" sans la boîte "Audio". (pour voir les encodages originaux, allez dans "fichier", "propriétés".
  2. Ouvrez ensuite la rubrique "Filtres" dans l'onglet "Video" .
  3. Dans la section sous-titres, choisissez le module correspondant au fichier de sous-titres que vous avez (.sub …), double cliquez dessus
  4. Choisissez une police (ex: /usr/share/fonts/truetype/ttf-liberation/LiberationSans-Regular.ttf)
  5. Réglez les paramètres d'écriture comme la couleur (blanc par exemple), la hauteur, et la taille du texte.
  6. Lancez l'encodage (en enregistrant votre vidéo quelque part).
Vous pouvez voir le résultat avant encodage en visualisant la sortie (dans la boîte déroulante en haut) ou en cliquant sur Preview.

FIXME Ce module de Avidemux ne semble pas prendre en compte les balises (<i>italique</i> …)

Effectuer des coupes

Les coupes s'effectuent à l'aide des curseurs A [ et B ] qu'il suffit de placer sur la barre de progression.

Transcodage d'une vidéo MKV en AVI

Beaucoup de télévisions ou de lecteurs de salon ne lisent pas encore le matroska (MKV), et ne reconnaissent que l'AVI. Il peut donc être utile de savoir convertir vers ce dernier format "conteneur", même s'il est beaucoup plus pauvre en fonctionnalités.

Les indications ci-dessous relèvent de la version 2.6 d'Avidemux :

Ouvrez Avidemux, cliquez sur "ouvrir" pour charger le film en MKV, à transcoder en AVI. Ce n'est pas obligatoire, mais le menu Fichier > Informations vous permettra d'avoir un aperçu des caractéristiques du fichier original (les codecs utilisés). Si la vidéo est déjà dans un format/codec supporté par le conteneur AVI (MPEG2,3,4, Xvid, DivX), le traitement sera évidement plus rapide, puisqu'il n'y aura rien à réencoder (juste à changer le conteneur)..

Vous devez désormais faire 3 opérations : choisir un format de sortie vidéo (le choix du codec), choisir un format de sortie Audio (le choix du codec), et choisir le format de sortie AVI (le conteneur qui embarque les 2 codecs précédents).

Tout se fait sur la gauche de l'écran ou ces 3 options sont rangées :

En Sortie Vidéo, sélectionnez "MPEG4 ASP (Xvid)" (sauf si le format de fichier existant est déjà compatible avec AVI → MPEG2,3,4, Xvid, DivX). Ne touchez pas aux autres options.

En Sortie Vidéo, sélectionnez "MPEG4 ASP (Xvid)" (sauf si le format de fichier existant est déjà compatible avec AVI → MPEG2,3,4, Xvid, DivX). Ne touchez pas aux autres options. Si ce format n'est pas lu par votre télé, essayez le codec "Mpeg4 AVC (x264)" (vous aurez un message déconseillant l'utilisation de ce codec avec un AVI, mais ce n'est pas bloquant).

Pour "Format de sortie", choisissez AVI Muxer (normalement déjà pré-sélectionné). Ne touchez pas aux autres options.

Cliquez ensuite sur "Fichier > Sauver" (ou sur l'icône de la disquette). Dans la fenêtre qui s'ouvre, sélectionnez l'emplacement, un nom pour le fichier (Par exemple "Film.[XviD].avi") et sauvegardez. Le réencodage va commencer, cela peut prendre pas mal de temps: l'encodage vidéo est très coûteux en terme de puissance processeur.

Extraire la bande son d'une vidéo

Ouvrez la vidéo dont vous voulez extraire la bande son, puis suivez les instructions :

  1. Sur la partie gauche d'Avidemux , Allez dans la liste déroulante Vidéo
    et laissez : copier .
  2. Ouvrez la liste déroulante Audio et choisissez le format Audio voulu (par exemple : MP3 (LAME)).
  3. Cliquez sur le bouton Configurer et choisissez le débit qui va bien. Validez le tout.

Ensuite dans le menu Audio :

1. Cliquez sur Enregistrer. Choisissez le répertoire que vous voulez et donnez un nom à votre future musique (par exemple musique.mp3 (indiquez bien l'extension !).

Ne cliquez pas sur le bouton "Enregistrer" présent sur l'interface ! Mais allez bien dans le menu "Audio" → "Enregistrer" !

2. Cliquez sur Enregistrer et le travail commence.

Traitement par lot

Avec Avidemux, il est possible de traiter plusieurs vidéo avec les même paramètres. Il existe deux méthodes. La première méthode utilise un script en bash et ligne de commande mais reste limité en nombre de paramètres disponibles. La seconde méthode utilise le javascript mais permet d'utiliser la totalité des paramètres existant dans Avidemux.

Script en bash

Grâce à un script en bash, il est possible de scanner le contenu d'un dossier et d'appeler récursivement Avidemux pour le traitement via la commande

avidemux --quit

La liste des paramètres disponibles est consultable sur le wiki d'Avidemux.

L'exemple ci dessous permet :

#!/bin/bash

#Création du répertoire de destination
mkdir ./conversion

#Paramètres pour avidemux
video_codec="Xvid"
quality="cbr=3000"
audio_codec="MP3"
output_format="AVI"

#Commande pour avidemux pour les vidéos MOV et AVI
shopt -s nocaseglob
for file in *.{mov,avi}; do
  avidemux --force-alt-h264 --video-codec "$video_codec" --video-conf "$quality" --audio-codec "$audio_codec" --load "$file" --save "./conversion/${file%.*}.${output_format,,}" --output-format "$output_format" --quit
done

Le fichier contenant le script doit être placé dans le répertoire contenant les vidéos et peut être exécuter dans un terminal via la commande:

bash <nom_du_script>

Script avec l'application image pour changement de partition et de type de fichier

ENTREE=DoubleFBpourTV #Nom du répertoire de premier niveau contenant les fichiers à traiter.
SORTIE=freebox        #Nom du répertoire de premier niveau contenant les fichiers traités.
RESULTAT=avidemux    #  Début du nom de fichiers contenant les résultats
## Transcoder tous les fichiers d'une partition dans une autre partition.
## Obtenir la liste des fichiers
LIST=$RESULTAT-FIC-$(date +"%m-%d-%H-%M").txt
find /media/$ENTREE -type f -name *.AVI >$LIST
find /media/$ENTREE -type f -name *.avi >>$LIST
find /media/$ENTREE -type f -name *.mpg >>$LIST
find /media/$ENTREE -type f -name "*.m2ts" >>$LIST 
head -1 $LIST; tail -1 $LIST ; wc -l $LIST
=====================================================================
ERR0=$RESULTAT-ERR-$(date +"%m-%d-%H-%M").txt 
SUIVI=$RESULTAT-SUIVI-$(date +"%m-%d-%H-%M").txt
##Lancer ou relancer le transcodage. 
shopt -s globstar
while read i ; do  echo  $(date +"%y-%m-%d %H:%M") Traitememt de "'$i'";
## Modifier le répertoire de destination et l'extension fichier
j=${i/$ENTREE/$SORTIE};j=${j/.avi/.mkv};j=${j/.AVI/.mkv};j=${j/.mpg/.mkv};j=${j/.m2ts/.mkv}
## Si le dossier sortie n'existe pas, il faut le créer. Attention des répertoires peuvent avoir des espaces.
DIR="$(dirname "$j")"; if [ ! -d "$DIR" ]; then   mkdir -pv "$DIR"; fi
##Regardons quand même si par hasard le fichier sortie est déjà présent.
if [ -e "$j" ]; then   echo $(date +"%y-%m-%d %H:%M") Traitement  déjà fait pour le fichier "$i">>$SUIVI
else 
sleep 10  #   Au cas où on souhaiterait interrompre  facilement le script.
######set video codec (Copy|x264|x265|xvid4|ffMpeg2|ffNvEnc|...) 
######set audio codec (MP2/MP3/AC3/NONE (WAV PCM)/TWOLAME/COPY)
ERR1=$RESULTAT-ERR-$(date +"%m-%d-%H-%M").txt;ERR2=$RESULTAT-ERR-$(date +"%m-%d-%H-%M").txt
$HOME/Téléchargements/avidemux_2.8.1.appImage --load "$i" --video-codec x264 --audio-codec AC3 --output-format MKV  --save "$j" --quit 1>$ERR1 2>$ERR2
### Il reste à trouver une solution pour les noms ayant certains accents => Le processus est bloqué jusqu'à la validation de l'erreur.
##Il faut supprimer le fichier de manoeuvre s'il a été créé, sinon on va manquer de place.
rm  "${j/.*/.idx2}" 2>/dev/null
A=$(cat $ERR1)
if [[ $A  =~  "End of video stream reached" ]]; then  echo $(date +"%y-%m-%d %H:%M") Bon traitement du fichier "$i" >>$SUIVI 
else 
if [[ $A  =~  "100% done	frames" ]]; then  echo $(date +"%y-%m-%d %H:%M") Mauvaise fin du fichier "$i" >>$SUIVI 
else 
echo $(date +"%y-%m-%d %H:%M") Erreur de traitement du fichier "$i">>$SUIVI;  echo "$i" >> $ERR0 ; rm "$j" 2>/dev/null
fi
rm $ERR1 $ERR2
fi;fi
## Je considère que le traitement est fait et je supprime le fichier de la liste pour pouvoir relancer sans difficulté.
sed -i '1d' $LIST
done<$LIST
date;wc -l $LIST;wc -l $SUIVI;wc -l $ERR0

Script en javascript

Le rédacteur n'a pas d'exemple à proposer mais vous pouvez générer un premier script en enregistrant votre projet. Le projet est enregistré au format javascript, vous pouvez modifier le fichier en vous inspirant des informations indiquées dans le wiki de Avidemux concernant le ECMAScript ou la rubrique Scripting.

Problèmes connus

Avidemux peut se figer voire crasher avec les fichiers TS en raison de ces bugs

Il faudra passer par la case "conversion" avec VLC pour obtenir des fichiers MP4 ou MKV

Problèmes lors de l'initialisation du dispositif audio

Allez dans Edition - Préférences - Audio et essayez de changer le périphérique de sortie par SDL ou Pulse Audio

Problèmes de son

Si lors de la lecture le son est haché, vous entendez des craquements ou après encodage vous vous apercevez que le son se décale au fur et à mesure de la lecture sur la vidéo finale, il faut comme précédemment aller dans Edition - Préférences - Audio et essayer de changer le périphérique de sortie. Essayez les différents périphériques jusqu'à ce que le problème soit réglé. Par ailleurs:

  1. AAC: Si la source est AAC, Installer le paquet faad (lit plus de format & stable)
  2. Forcer le décalage de Son (ex: -5ms)

Problèmes de coupure de fichier à 4GB

Pour résoudre ce problème, cochez la case "Créer des fichiers openDML" dans "Éditions/Préférences/Sortie"

Désinstallation

Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.

Voir aussi


Contributeurs : Kmeleon, Laurent Bellegarde, ZondeR - Relu par Mean et KaoT