Comment convertir des vidéos au format H.265 / HEVC sous Ubuntu?

Je constate que l’encodage H.265 / HEVC prend de l’ampleur, mais sous certaines versions d’Ubuntu, la production de stream vidéo H.265 n’est pas si simple.

Comment puis-je utiliser x265 de manière à s’intégrer à Ubuntu (en particulier les versions LTS Trusty et Xenial) pour produire des fichiers vidéo HEVC sous Ubuntu?

Les références:

  1. x265 HEVC Encoder : Le codeur en ligne de commande
  2. x265 : site Videolan

Méthode 01

Vous pouvez installer un encodeur de média convivial pour Internet:

entrez la description de l'image ici

Exécutez ces commandes dans votre terminal:

sudo add-apt-repository -y ppa:upubuntu-com/multimedia sudo apt-get update sudo apt-get install ifme 

Vous pouvez maintenant ouvrir le programme ifme de Dash.

la source

Méthode 02

Une fois que vous avez compilé le programme en suivant les instructions ici ou ici , vous devez d’abord encoder la vidéo au format YUV:

 avconv -i MyVideo.mp4 MyVideo.yuv 

Ensuite, vous pouvez convertir une vidéo YUV au format x265:

 ./x265 --input-res 640x360 --fps 24000/100 MyVideo.yuv -o MyVideo.h265 

La meilleure solution à ce jour sur mon système a été:

  1. Pour Trusty Tahr 14.04 LTS: utilisez un FFmpeg à jour et le dernier x265, ce qui nécessite une compilation et un conditionnement ultérieur.
  2. Pour Xenial Xerus 16.04 LTS: exécutez simplement:

     sudo apt-get install ffmpeg libavcodec-extra 

Avec l’ une des méthodes précédentes, utilisez ce qui suit:

 ffmpeg -i input \ -c:v libx265 -preset slow -x265-params crf=22 \ -c:a libmp3lame -b:a 128k \ output.mp4 

Notez que cela crée un stream audio mp3 ainsi qu’un stream vidéo h.265. Pour créer un stream aac, la ligne -c:a libmp3lame -b:a 128k peut être remplacé par ce qui suit:

 -c:a aac -ssortingct experimental -b:a 128k 

L’option -ssortingct experimental ne sera pas nécessaire si votre copie de FFmpeg a été publiée après décembre 2015, date à laquelle le développement du codeur aac natif a mûri . Gardez à l’esprit que cette option sera toujours requirejse pour le référentiel FFmpeg pour Xenial Xerus 16.04 LTS.

Les références:

  • FFmpeg trac: Guide d’encodage FFmpeg et H.265
  • FFmpeg git: aacenc: enlève le drapeau expérimental

Ce script a fonctionné pour moi:

 ffmpeg -i input_file.mpg -pix_fmt yuv420p -f yuv4mpegpipe - |\ x265-10bit --profile main10 --preset slower --crf 20 --input - --y4m -o output_file.mpg