在我的另一篇日志中,说到利用FFmpeg从视频截图的命令,那天在找从视频截取指定帧的图片的办法,这么多天没有进展,原来我从网上找的关于FFmpeg的参数命令列表并不全,少了-ss这么一个参数.于是这个问题也到现在才解决.

    今天利用FFmpeg -h > ffmpeg.txt,把FFmpeg的命令打印出来后,才发现了这一参数:

-ss time_off set the start time offset

使用-ss参数,可以从指定的时间开始处理转换任务.如:

ffmpeg -i test2.asf -y -f image2 -ss 08.010 -t 0.001 -s 352x240 b.jpg

那么从任意一帧截图的问题也就解决了.只要-ss后的时间参数是随机产生,并且在视频的有效时间内,就可以了.

 另外,-ss后跟的时间单位为秒。

2006
-06-27 补充:


另外,通过指定
-ss,和-vframes也可以达到同样的效果。

这时候
-ss参数后跟的时间有两种写法,hh:mm:ss 或 直接写秒数 :

ffmpeg 
-i test.asf --f  image2  -ss 00:01:00 -vframes 1  test1.jpg
or
ffmpeg 
-i test.asf --f  image2  -ss 60 -vframes 1  test1.jpg

这样输出的图片是相同的。