Verwenden von ffmpeg zum Codieren eines RAW-Videos im H. 264-Format

Unter Ubuntu 10.04 versuche ich, ein RAW-Video (YUV-Format) mit den folgenden ffmpeg-Befehlen in ein H. 264-codiertes Video zu codieren:

ffmpeg -i input.mp4 output.h264

Aber ich erhalte eine Fehlermeldung mit der Aufschrift

Nicht unterstützter Codec für Ausgabestream # 0.0

Wenn ich diese Option versuche:

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

Es kodiert immer noch nicht.

Jetzt habe ich verstanden, dass ffmpeg libx264 zum Codieren in das H. 264-Format verwendet. Jetzt habe ich das Paket x264 - fast H. 264 Encoder auf diesem installiert Ubuntu.

Meine Fragen:

  1. Gibt es eine Beziehung zwischen diesem libx264, das ffmpeg benötigt, und dem x264-Programm?
  2. Wie installiere ich libx264 und lasse ffmpeg damit ein Video in das H. 264-Format codieren?
Author: slhck, 2011-08-12

2 answers

Zunächst einmal sehen die von Ihnen verwendeten Befehle syntaktisch falsch aus. Damit ffmpeg x264 verwendet, müssen Sie das Argument -c:v libx264 angeben.

Wenn Sie nun eine rohe YUV-Datei haben, müssen Sie ffmpeg mitteilen, welches Pixelformat, welche Größe usw. verwendet:

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

Ändern Sie diese entsprechend den Spezifikationen Ihrer YUV-Datei. Sehen Sie sich ffmpeg -pix_fmts für eine Liste der unterstützten Pixelformate an. fourcc.org ist auch eine gute Ressource dafür.

Wenn Sie nur das rohe H. 264 wollen bitstream in einer .264 Datei:

ffmpeg -f rawvideo -pix_fmt yuv420p -s:v 1920x1080 -r 25 -i input.yuv \
-c:v libx264 -f rawvideo output.264
 13
Author: slhck,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-09-03 15:40:17

Ffmpeg -f rawvideo -pix_fmt yuv420p -s:v-1920x1080 -r 23.976 -ich raw_i420_1920_1080 -vcodec libx264 -f rawvideo-Ausgang.264

-vcodec sagt ihm, welchen Codec er verwenden soll. man ffmpeg wird Ihnen helfen, mehr zu lernen.

 0
Author: Vishwanath Patil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-09-23 19:41:03