如何使用 ffmpeg 从视频中提取 webp 格式的视频帧?

如何使用 ffmpeg 从视频中提取 webp 格式的视频帧?

我想使用多幅图像制作动画。为此,我想从视频中提取图像。我尝试了 vlc,但它挂了,没有得到好的结果。

因此想使用ffmpeg。

答案1

首先你需要安装 ffmpeg。它是一个命令行工具。

  1. 前往ffmpeg 下载站点并下载最适合您计算机规格的 zip 文件。选择“静态”链接和“nightly git”版本以获得最新的可用性。
  2. 在您的计算机上创建一个文件夹来解压 zip 文件。此文件夹将是您的“安装”文件夹。我选择了 C:\Program Files\ffmpeg。这是一个好主意,因为您将像对待常规程序一样对待它。将 zip 文件解压到此文件夹中。
  3. 该文件夹现在应该包含许多其他文件夹,包括一个名为 bin 的文件夹,其中保存了 ffmpeg.exe。我们还没有完成。双击该文件不会执行任何操作。请记住,这是一个命令行程序。它在 cmd 中运行。
  4. 在 cmd 中使用 ffmpeg.exe 之前,您必须告诉计算机在哪里可以找到它。您需要添加一个新的系统路径。首先,右键单击此电脑(Windows 10)或计算机(Windows 7),然后单击属性 > 高级系统设置 > 高级选项卡 > 环境变量。
  5. 在环境变量窗口中,单击“变量”列下的“路径”行,然后单击编辑
  6. Windows 10 和 Windows 7 的“编辑环境变量”窗口看起来不同。在 Windows 10 中,单击新建,然后将路径粘贴到您之前创建的保存 ffmpeg.exe 的文件夹。在本例中,该路径为 C:\Program Files\ffmpeg\bin\

https://video.stackexchange.com/a/20496/25366

现在使用以下代码导出所有帧。(注意:它可能会产生数千张图像)

ffmpeg -i anim.mp4 f%04d.webp

仅提取关键帧使用

ffmpeg -i video.webm -vf“select=eq(pict_type\,I)”-vsync vfr thumb%04d.jpg

定期提取帧

ffmpeg -i 视频.webm -vf fps=1 thumb%04d.jpg

https://www.bugcodemaster.com/article/extract-images-frame-frame-video-file-using-ffmpeg

答案2

使用:

ffmpeg -i vid.mkv -r 3.5 -c:v libwebp frame_%00d.webp
  • -r [framerate]设置帧速率
  • -c:v libwebp指定编解码器libwebp

相关内容