13.1. Sélection des codecs et du format du container

Les codecs sonores et vidéos sont sélectionnés respectivement avec l'option -oac et l'option -ovc. Par exemple :

mencoder -ovc help

permettra de lister tous les codecs vidéo supportés par la version de MEncoder sur votre machine. Les choix disponibles sont :

Codecs Audio:

Noms des codecs AudioDescription
mp3lameEncode en VBR, ABR ou CBR MP3 avec LAME
lavcUtilise un des codecs audio libavcodec.
faacL'encodeur audio ACC FAAC
toolameEncoder Audio MPEG Layer 2
twolameL'encodeur Audio MPEG Layer 2 basé sur tooLAME
pcmFormat PCM audio non compressé
copyNe réencode pas, il compresse juste les frames

Codecs Vidéo :

Noms des codecs VidéoDescription
lavcUtilise un des codecs vidéo libavcodec.
xvidLe Xvid, un codec ASP MPEG-4 (Advanced Simple Profile)
x264Le x264, un codec MPEG-4 AVC (Advanced Video Coding), le AKA H.264
nuvLe format vidéo nuppel, utilisé pour certaines applications temps réel.
rawFrames vidéos non compressées
copyNe réencode pas, il compresse juste les frames
framenoUtilisé pour l'encodage en 3 passes, (not recommended)

Les options de sorties pour le type de container sont sélectionnées grâce à l'option -of. Type:

mencoder -of help

permettra de lister tous les codecs vidéo supportés par la version de MEncoder sur votre machine. Les choix disponibles sont :

Container formats:

Nom du format du ContainerDescription
lavfUn des containers supporté par libavformat.
aviAudio-Vidéo Interleaved
mpegMPEG-1 and MPEG-2 PS
rawvideoFlux vidéo en raw (un seul flux vidéo, pas de multiplexage)
rawaudioFlux audio en raw (un seul flux audio, pas de multiplexage)

Le container AVI est le container natif de MEncoder, ce qui veut dire que c'est le mieux supporté et que MEncoder a été crée pour cela. Malgré ceci, d'autres formats de containers sont utilisables, mais vous risquez d'avoir certains problèmes à les utiliser.

Containers libavformat :

Si vous avez sélectionné If you selected libavformat pour le multiplexage du fichier de sortie (en utilisant l'option -of lavf), le choix du format du container sera déterminé en fonction de l'extention du fichier de sortie. Mais vous pouvez toujours forcer le format du container avec les options du format de libavformat.

Container libavformat nameDescription
mpgMPEG-1 and MPEG-2 PS
asfAdvanced Streaming Format : Format évolué pour le streaming
aviAudio-Video Interleaved
wavPour l'Audio
swfMacromedia Flash
flvvidéo Macromedia Flash
rmRealMedia
auSUN AU
nutle container libre NUT (expérimental et ne respectant pas encore les spécifications)
movQuickTime
mp4Format MPEG-4
dvContainer numérique des vidéos Sony

Comme vous pouvez le voir, le libavformat permet à MEncoder de multiplexer un grand nombre de containers différents. Malheureusement, comme MEncoder n'a pas été originalement crée pour le support de format de containers autre que l'AVI, vous devez vérifier à deux fois que le résultat est correct. Pensez ben à vérifier la synchronisation de l'audio avec la vidéo et que le fichier est lisible par un autre lecteur que MPlayer.

Exemple :

Création d'une vidéo Macromedia Flash afin de la lire dans un navigateur internet ayant le plugin Macromedia Flash :

mencoder input.avi -o
output.flv -of lavf -oac mp3lame
-lameopts abr:br=56 -ovc lavc \
-lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 \
-srate 22050