Ceci est une ancienne révision du document !



Mencoder

Mencoder fait partie du logiciel mplayer. Mencoder s'utilise le plus souvent en ligne de commande ou dans des scripts associés à des logiciels de lecture/encodage de vidéo.

Il sert à encoder des fichiers. Ce logiciel est capable de faire beaucoup de choses différentes en matière de vidéo.

Les principaux formats d'encodage sont les suivants:

Vidéo:

  • stream copy
  • Xvid
  • h263(+)
  • x264 (h264)
  • MPEG 1 ou 2
  • MJPEG (Motion JPEG)
  • LJPEG (lossless JPEG)
  • MPEG4 (compatible xvid, divx)
  • msmpeg4 (v1 et v2)
  • wmv (version 7 et 8)
  • huffyuv
  • ffvhuff (implémentation du codage huffman mais avec support du YV12)
  • ffv1 (lossless expérimental)
  • svq1 (sorenson video 1)
  • Sony Digital Video
  • Snow (codec expérimental basé sur les ondelettes ou "wavelet" )
  • DVR-MS (Un format propriétaire de devinez qui…utilisé pour l'enregistrement télé par Windows Media Center) FIXME Un doute subsiste sur le support dvr-ms, si quelqu'un a expérimenté qu'il complète/corrige

Audio:

  • streamcopy
  • mp3 (avec libavcodec ou lame)
  • aac
  • mp2 avec toolame, twolame ou lavc
  • uncompressed pcm
  • sonic (implémentation originale d'un format lossless ou lossy basé sur les spécifications de Francis Harrison)
  • ac3…
  • wma2

Mencoder se trouve dans le dépôt Multiverse

Site officiel

La meilleure documentation possible de ce logiciel est disponible sur le site officiel de MPlayer disponible à l'adresse ci-dessous :

Utilisation basique de MEncoder

L'encodage avec MEncoder

pytube

Voir page dédiée : pytube

gmencoder

Voir page dédiée : gmencoder

Développement arrêté depuis 2003

konverter

Pour KDE (ou si vous n'aimez vraiment pas gmencoder) :

http://www.kraus.tk/projects/konverter/

Installez le paquet libxine1 sinon le programme ne se lancera pas (FIXME : il doit y avoir d'autres paquets style liblame0 etc…)

Développement arrêté depuis 2005

Neodivx

neodivx_lazarus

Cette application est un Freeware, elle n'est pas libre
Plus aucun liens ne fonctionne. Il semble que ce logiciel n'existe plus.

Hyper Video Converter

Gui utilisant Mencoder, Ffmpeg et ffmpeg2theora pour de l'encodage en masse (à l'image de winff) Voir la page Hyper Video Converter

Intégration sous titres (srt) dans une vidéo

Avec la commande :

mencoder -sub nom_du_fichier_soustitres.srt -fontconfig -font Arial -subfont-text-scale 4  -oac mp3lame -lameopts cbr:br=128 -ovc xvid -xvidencopts bitrate=900 nom_de_la_video.avi -o nom_de_la_video_avec_les_soustitres.avi

Il faut bien sûr se placer dans le répertoire de la vidéo et du fichier sous-titres avant de lancer la commande. Et n'oubliez pas de modifier la commande avec le titre de la vidéo, et le titre du fichier sous-titres.

Détails :

mencoder : nom du logiciel

-sub: nom du fichier sous-titres

-fontconfig -font Arial : on donne la police

-subfont-text-scale 4.5 : taille du sous-titrage

-oac mp3lame -lameopts cbr:br=128 : on détermine le codec audio (ici mp3lame pour utiliser le format MP3), et les options associées à ce codec pour la qualité audio : 128 est le débit binaire, représente une qualité audio normale.

-ovc xvid -xvidencopts bitrate=900 : on détermine le codec vidéo (ici xvid) et les options associées à ce codec pour gérer la qualité de la vidéo

-o : détermine le nom du fichier de sortie que vous souhaitez.

(cf : Incruster des sous-titres)

Par défaut mencoder considère que les fichiers de sous-titres (.srt) sont encodés en UTF8. Si ce n'est pas le cas de votre fichier, l'option -subfont-encoding iso-8859-15 (par exemple pour un fichier encodé iso-8859-15) sera la bienvenue.

Exemple :

mencoder video_originale.avi -sub fichier_soustitre.srt -subfont-encoding iso-8859-15 -fontconfig -font Arial -subfont-text-scale 3 -oac copy -ovc xvid -xvidencopts bitrate=900 -o video_soustitrée.avi

Mov to Flv

Pour passer du format .mov à .flv il suffit d'utiliser cette commande :

mencoder nom_de_la_video_à_encoder.mov -ofps 15 -ovc lavc -lavcopts vcodec=flv:acodec=mp3 -vop scale=largeur:hauteur -ffourcc FLV1 -oac mp3lame -o nom_de_sortie_de_la_vidéo.flv

N'oubliez pas de modifier la commande avec vos valeurs de hauteur et de largeur .

L'option -ofps xx permet de limiter le nombre d'images par seconde (Frames Per Second), par exemple -ofps 25, l'encodage de la vidéo limitera le nombre de FPS à 25.

Mkv to Avi

Pour passer du format .mkv à .avi , voici deux exemples de commandes possibles via mencoder :

mencoder nom_du_fichier.mkv -ovc copy -oac pcm -o nom_du_fichier.avi
mencoder -oac lavc -lavcopts acodec=vorbis -ovc lavc -lavcopts vcodec=libxvid:vbitrate=900 nom_du_fichier.mkv -o nom_du_fichier_final.avi

La première commande se contente de copier le flux vidéo et encode en PCM non compressé l'audio. Il n'y a donc pas de pertes.

La deuxième commande encode en OGG/vorbis l'audio (avec le débit binaire audio par défaut de 220 kbps) et en xvid la vidéo (avec un bitrate de 900). La qualité est donc moindre, mais le poids aussi …

Jpeg to Avi

Pour passer du format .jpeg à .avi utilisez la commande suivante :

mencoder mf://*.jpg -mf w=320:h=240:fps=25:type=jpeg -ovc lavc -o sequence_dimage.avi 

DVD to Mkv

Pour encoder votre DVD de plus de 9 Gio (ou moins, peu importe) en un film de seulement 700 Mio (ou d'une autre taille si vous le voulez) avec une qualité d'image digne du DVD lui-même, avec plusieurs pistes audios, plusieurs pistes de sous-titres et un chapitrage complet du DVD, vous devez le convertir et utliser le format MKV.

Pour encoder votre film, consultez cette page spécialement dédiée à la conversion DVD → MKV.

Retourner une vidéo

Retourner une vidéo dans le sens anti-horaire:

mencoder original.avi -o video_retourne.avi -oac copy -ovc lavc -vf rotate=2

Ou dans le sens horaire:

mencoder original.avi -o video_retourne.avi -oac copy -ovc lavc -vf rotate=1

Découper une vidéo

Découper une vidéo a partir de 20 secondes pendant 50 secondes:

mencoder big-file.avi -ss 20 -endpos 50 -ovc copy -oac copy -o cutted.avi

Transcodage multi-tache

Mencoder, par le biais de LAVC supporte l'encodage sur plusieurs tâches (threads) ; pour cela, il faut passer l'option -theads=X à l'encodeur :

mencoder some-file.avi -ovc lavc  -lavcopts "threads=3" -o new-file.avi

Les options suivantes sont disponibles :

  • 0 ou 1 : pas de multi-tâche,
  • 2, 3, 4 : en fonction du nombre de coeur,
  • auto : détection automatique.

Sur ce lien, il semble que les CODECs suivants supporte le multi-tâche :

  • x264,
  • libavcodec,
  • xvid

Transcoder une vidéo pour un usage sur lecteur mp4 (160x128 15fps)

mencoder some-file.avi -ofps 15 -vf-add scale=160:128 -vf-add expand=160:128:-1:-1:1 -srate 44100 -ovc xvid -xvidencopts bitrate=400:max_bframes=0:quant_type=h263 -oac lavc -lavcopts acodec=mp2:abitrate=96 -o new-file.avi
  • Un excellent guide d'explication en français sur les commandes et options possibles de MEncoder est disponible sur : le forum Hardware.fr
  • mencoder.1268407588.txt.gz
  • Dernière modification: Le 12/03/2010, 16:26
  • par 213.95.41.13