Quelques explications s'imposent sur les différents paramètres passables à mencoder :
-oac : Output Audio Codec, permet de choisir le codec audio de sortie. Si vous ne désirez pas réencoder le flux audio, il faut marquer « copy ». Pour suivre parfaitement la norme MPEG-4 AVC, vous désirerez mettre le flux audio au format AAC par la commande « -oac faac ».
Pour voir la liste des codecs disponibles, vous pouvez taper la commande « mencoder -oac help ».
-audiocodecopts : Ce paramètre dont le nom s'adapte en fonction du codec audio précisé, permet de paramètrer les options d'encodage propre au codec utilisé. Par exemple, il est possible d'indiquer que l'on veut utiliser une piste audio AAC en 128kbps CBR grâce à la commande « -faacencopts br=128. Les options les plus utilisées sont : br (bitrate en kbps), quality (si vous préférez spécifier un facteur de qualité), mpeg (pour spécifier le format mpeg2 ou mpeg4). Chaque options passées en paramètres des options du codec doit être séparée par « : ».
-ovc : Output Video Codec, permet de choisir le codec vidéo de sortie. Ainsi, lorsque la librairie x264 est installée, il vous suffit d'y indiquer « x264 » pour que votre vidéo soit encodée en H.264.
Pour voir la liste des codecs disponibles, vous pouvez taper la commande « mencoder -ovc help ».
-videocodecopts : Ce paramètre est semblable à celui pour le flux audio mais porte sur le codec video. Les options les plus utilisées sont : pass (Pour indiquer le numéro de pass actuel dans le cas d'un encodage en plusieurs pass dont le fonctionnement a déjà été expliqué précédemment), qcomp (Pour modifier le taux de compensation en terme de bits alloués dans les transitions entre scènes mouvementées et les scènes plus simple), frameref et subq (Qui influent énormément sur le rapport vitesse/qualité d'encodage), bframes (Pour indiquer le nombre de bframes par défaut à utiliser. Mais par défaut le x264 va détecter les scènes où le nombre de bframes est trop important pour la scène.)
Vous pourrez trouver plus de précisions sur la doc officielle : http://www.mplayerhq.hu/DOCS/HTML/fr/menc-feat-x264.html
-o : Output permet de spécifier le nom du fichier de sortie.
Voici donc maintenant quelques exemples de configuration pour encoder :
Pour une vidéo de 2:00:00, supposons que nous voulons que le résultat fasse 700 Mo.
mencoder -nosound -oac copy -ovc x264 -x264encopts pass=1:bitrate=682:frameref=1:subq=1:bframes=3 video_source.vob -o /dev/null && mencoder -oac faac -faacopts br=96:mpeg=4 -ovc x264 -x264encopts pass=2:bitrate=682:frameref=2:subq=5:4x4mv:bframes=3 video_source.vob -o video_finale.mp4
Pour encoder une vidéo directement depuis un dvd en coupant les bandes noires (supposons que vous désirez encoder la première piste 1 du dvd) :
mencoder -oac faac -faacopts br=96 -ovc x264 -x264encops bitrate=900 -dvd-device /dev/dvd dvd://1 -o sortie.mp4
Si vous ne disposez pas de la dernière version de Mencoder, il se peut que la version de libav qu'il utilise soit cassée et ne supporte pas les B-Frames pour muxer le fichier dans un mp4.
Vous devez donc pour outrepasser l'erreur indiquer l'option « -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames » (et donc spécifier bframes=0 dans les options du codec également).