我使用 ffmpeg 从视频中捕获屏幕截图。这是命令代码:
ffmpeg -i /my_video_file_dir/video.flv -y -f image2 -ss 8 -sameq -t 0.001
-s 320*240 /image_dir/screenshot.jpg
例如,我想在一个很好的时间单位 8.344 捕获屏幕截图
但是上面的命令并没有输出截图图像
在我的测试中, -ss 1,1.5,2,2.5 ... 工作正常,而其他的则不是 1.1,1.11
andbody 知道为什么会发生这种情况以及如何在 x.xxx 时间捕获屏幕截图
最佳答案
试试这个:
ffmpeg -ss 00:00:01.01 -i /my_video_file_dir/video.flv -y -f image2 \
-vcodec mjpeg -vframes 1 /image_dir/screenshot.jpg
请注意,由于大多数视频的帧速率较低,因此非常小的增量通常不会产生不同的图像。 0.001s 增量仅适用于 1000fps 帧速率的视频 :) 0.03 增量应适用于 30fps 视频等。
关于ffmpeg 以精细的时间单位从视频文件中捕获屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3827611/