如何使用 FFmpeg 将视频转换为 GIF

Ram*_*mar 2 gif ffmpeg video-conversion

我在 XAMPP 上安装了 FFmpeg,用于将视频流转换为 GIF 图像。

我使用了下面的代码,但它不起作用。

ffmpeg -ss 00:00:05.0 -t 00:00:10.0 -i input.wmv -acodec copy -vcodec copy -async 1 output.gif
Run Code Online (Sandbox Code Playgroud)

slh*_*hck 6

您的问题是:您不能简单地将输入视频和音频流复制到 GIF。GIF 需要以不同的方式编码。基本上你是在告诉 FFmpeg 实际上不转换任何东西。

试试这个:

ffmpeg -ss 5 -i input.wmv -t 10 -pix_fmt rgb24 output.gif
Run Code Online (Sandbox Code Playgroud)

笔记:

  • 我缩短了时间戳。如果您只需要几秒钟,那么指定这些就足够了。
  • -t是一个输出选项,应该在-i您的输出文件名之间。
  • GIF 需要 RGB 像素格式,您也必须指定该格式。
  • 您可能需要缩小视频的尺寸,以免 GIF 变得不必要地大。尝试添加-filter:v "scale=-1:320"或类似地将输出缩小到 320 像素的高度(并自动调整宽度 ( -1)。

提示:“它不起作用”不是足够具体的问题描述。在询问 FFmpeg 问题时,请始终包含完整的、未删减的 FFmpeg 命令输出。