dimanche 4 avril 2010

Encoder avec l'encodeur x264

Nous vous avons parlé dans un autre article de la qualité des codecs h.264, et de la version 'open' de l'encodeur x264.

Peut-être aurez-vous souhaité le tester et aurez été un peu décontenancés par son installation et utilisation.

Petite revue de détails.
Le x264 n'a pas de GUI (interface graphique d'utilisation). Son mode de mise en œuvre le plus fréquent se fait via Avisynth, un logiciel en lignes de commandes plutôt puissant qui permet d'appliquer des filtres vidéos et aussi d'encoder (avec entre autres le x264).
x264 n'est pas un codec, mais une bibliothèque d'encodage. En gros, x264 ne servira pas à décoder vos vidéos. Ici comme on est cool on ne hurlera pas si vous parlez de "codec x264" (nous aussi on le fait pour simplifier et ne pas paraître trop puriste).

Le x264 ne sera donc sûrement pas intégré dans la liste de codecs de votre logiciel d'édition vidéo, et s'il l'était cet article n'aura donc pas raison d'être pour vous.

Dans un proche futur, l'arrivée de VLMC, un logiciel de montage libre réalisé par la même équipe que l'excellent VLC VideoLAN devrait changer un peu la donne, puisque VideoLAN hébergent le projet x264.
Il y a donc fort à parier que VLMC sera capable de rendus directement en x264. On ne sait pas vous, mais nous, on a hâte.

Voici donc, en attendant 4 manières de faire (1 et 2 sont proches, 1 étant peut être un peu plus simple d'utilisation et 2 plus geek oriented... encore que.)

  1.  Le logiciel SUPER est gratuit et offre la possibilité de convertir vos vidéos en x.264 et AAC compatibles Quicktime, ce qui peut être une alternative de qualité. On lui reprochera juste une petite tendance à avoir quelques petits bugs (on pense notamment à la gestion directshow et le maintien du bitrate). Un autre logiciel qui utilise le x.264 est MediaCoder, disponible aussi en 64 bits. Enfin, l'excellent Avidemux propose lui aussi cet encodage (dans vidéo, choisir "copier", puis MPEG-4 AVC).

    Cela nécessite d'avoir exporté au préalable votre montage (par exemple avec le codec lossless Huffyuv, puis de réencoder en x.264
  2. Vous exportez d'abord votre vidéo depuis votre logiciel de montage vers un codec lossless : Huffyuv. Vous obtenez ainsi un gros fichier sans perte de qualité.

    Pour réduire la taille de fichier, vous utiliserez soit directement avisynth si vous aimez vous prendre la tête avec votre clavier (lignes de commandes), soit avisynth en passant par une interface graphique telle que MeGUI dans laquelle vous réglerez les options d'export en x264 . Je vous laisse chercher un peu sur internet pour déterminer comment appliquer les options qui vous vont bien.

  3. Vous téléchargez un logiciel frameserver. Pour avisynth et les logiciels de montage vidéos les plus courants (premiere, sony vegas, ulead...) on vous recommande Debugmode . Désolé pour ceux qui tournent en 64 bits, mais Debugmode n'est pour le moment compatible que 32 bits. Le développeur de Debugmode est un peu surbooké et a mis son projet en OpenSource avec appel aux développeurs volontaires pour porter l'application en 64 bits. Avis aux volontaires.

    Le principe du frameserver, c'est de balancer des données vidéo d'un programme à un autre. En gros Debugmode se charge de transférer directement à avisynth les données vidéos, vous épargnant l'étape d'encodage lossless. Sympa.
     
  4. Il existe des versions non officielles de x264 développées par des particuliers avec une interface graphique. Vous pouvez donc rechercher sous google des x264vfw (Video For Windows), afin que votre codec apparaisse enfin dans la liste des codecs de votre logiciel de montage.
    Il faudra alors chercher dans le conteneur AVI.
    C'est d'ailleurs ce qui en fait une solution peu recommandée dans les milieux autorisés, du fait de l'ancienneté du conteneur avi.

    Si vous ne trouvez pas votre bonheur dans nos propositions, il vous reste bien entendu des codecs MP4 payants, ou ceux proposés par votre logiciel (par exemple le main concept sous Sony Vegas).



    .

5 commentaires:

vermeersch julien a dit…

bonjour,
premièrement félicitation pour le site qui réunie tout ce qui peut exister et se passer sur cette "CAMERA".
Il reste tout de meme un point qui n'est pas encore éclairci pour MA part c'est cette histoire d'encodage.
Pour les utilisateurs débutants comme moi je n'ai toujours pas trouver le moyen de monter une video a partir de cette caméra sans perdre aucune qualité et pouvoir exploiter le ralenti.
Le fait d'encoder avec l'encodeur que tu nous a proposé me fait peur et me demande encore plus de manipulations et je répète je ne suis pas fortiche en ordi. Egalement (si j'ai bien compris) on peut y perdre de la qualité.
Connaitrais tu un moyen simple de réaliser des videos.
Je possede un macbook
Merci d'avoir lu jusqu'au bout^^

GoPro Cameras Hacks & astuces a dit…

Bonjour Julien,
Le x.264 présenté ici n'est pas la seule alternative qui existe (heureusement !), il faut juste trouver la méthode qui te conviendra en fonction de tes besoins.

Ce qu'il faut retenir :
il existe des méthodes d'encodage sans perte de qualité mais qui vont générer de très, très gros fichiers.

Il existe d'autres méthodes qui vont compresser les flux vidéos. Toutes ne se valent pas et actuellement la plus efficace est d'utiliser un encodage h.264 (le x.264 est une version "open").
Ce sont généralement des vidéos reprises sous le conteneur générique "mp4".

La méthode la plus simple est bien entendu d'encoder directement de ton logiciel de montage (par exemple imovie si tu es sous mac) vers du h.264, s'il le permet.
Il te faudra jouer alors sur les paramètres pour trouver le compromis qui te satisfait entre qualité et taille de fichier.

L'article suivant peut être un bon complément pour t'aider à comprendre : http://goprohacks.blogspot.com/2010/03/encoder-ses-films-avec-le-meilleur.html

Pour te donner un exemple plus concret, tu peux commencer par régler tes paramètres d'encodage h.264 en sélectionnant un bitrate variable (VBR) avec encodage en 2 passes (meilleure qualité mais plus long) et un débit de données moyen d'environ 8 Mb/s.
Cela devrait te donner des résultats satisfaisants, à toi de faire varier les paramètres selon que tu souhaites une qualité la plus proche possible de l'original, ou bien un fichier de taille plus modeste.

Si ton logiciel ne permet pas l'encodage en h.264 (qui est une solution commerciale), ce qui devient de plus en plus rare, l'article ci-dessus te décrit des méthodes possibles de conversion gratuites avec x.264.

Le principe : réaliser son montage, l'exporter dans la meilleure qualité possible, puis faire un encodage à part sur ce dernier fichier pour finalement obtenir une vidéo de qualité proche de l'original, mais beaucoup moins lourde.

Je te recommande tout particulièrement l'utilisation d'Avidemux, que l'on utilise dans d'autres articles, notamment celui-ci : http://goprohacks.blogspot.com/2010/05/enlever-les-temps-morts-des-videos.html

Concernant les ralentis, un article dédié sera à venir pour bien tout comprendre.

Si tout n'est pas clair pour toi, n'hésite pas à nous contacter par mail sur des questions plus spécifiques (gopro.hacks@gmail.com)

julien vermeersch a dit…

ok. avant tout autre questions je vais essayer en tous cas merci pour la reponse rapide

Dynomite a dit…

Bonjour, premièrement bravo pour ce site c'est vraiment bien. Je suis nouveau dans le milieu de GoPro mais pas nouveau dans le montage video. J'utilise Premiere CS3 qui ne me permet pas d'importer le video de la GoPro directement sur la timeline. Donc je doit transformer le fichier mp4 en avi ou mpeg. Quels programmes sont bien pour faire cela?? J'ai essayé quelques logiciels que vous suggérez dans cette article mais sans succes.

GoPro Cameras Hacks & astuces a dit…

Salut, tu devrais jeter un œil à cet article : http://goprohacks.blogspot.com/2010/03/modifier-ses-fichiers-pour-faciliter-le.html
À priori retiens surtout quicktime (payant) ou mp4cam2avi (cf article)