11 votes

Utilisation de ffmpeg pour encoder une vidéo brute au format H.264

Sur une Ubuntu 10.04, j'essaie d'encoder une vidéo brute (format YUV) en une vidéo encodée H.264 en utilisant les commandes ffmpeg ci-dessous :

ffmpeg -i input.mp4 output.h264

mais je reçois une erreur disant

Codec non supporté pour le flux de sortie #0.0

Ensuite, quand j'essaie cette option :

ffmpeg -i input.mp4 -formats h264 output.h264

il ne code toujours pas.

J'ai compris que ffmpeg utilise libx264 pour encoder au format H.264. Maintenant j'ai le paquet x264 - fast H.264 encoder installé sur cette Ubuntu.

Mes questions :

  1. Y a-t-il une relation entre cette libx264 dont ffmpeg a besoin et le programme x264 ?
  2. Comment installer libx264 et faire en sorte que ffmpeg l'utilise pour me permettre d'encoder une vidéo au format H.264 ?

13voto

slhck Points 209720

Tout d'abord, les commandes que vous utilisez semblent syntaxiquement incorrectes. Pour que ffmpeg utilise x264, vous devez fournir le paramètre -c:v libx264 argument.

Maintenant, si vous avez un fichier YUV brut, vous devez indiquer à ffmpeg quel format de pixel, quelle taille, etc. est utilisé :

ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 25 -i input.yuv \
-c:v libx264 output.mp4

Modifiez-les en fonction des spécifications de votre fichier YUV. Jetez un coup d'œil à ffmpeg -pix_fmts pour obtenir une liste des formats de pixels pris en charge. fourcc.org est également une bonne ressource à ce sujet.

Si vous voulez simplement le flux binaire H.264 brut dans un format .264 fichier :

ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 25 -i input.yuv \
-c:v libx264 -f rawvideo output.264

0voto

ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 23.976 -i raw_i420_1920_1080 -vcodec libx264 -f rawvideo output.264

-vcodec lui indique le codec à utiliser. man ffmpeg vous aidera à en savoir plus.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X