我正在尝试使用ffmpeg制作电影的视频预览。
我希望预览视频为:
所以,使用ffprobe,我计算X以便:
ServerAdmin root@localhost
ServerNAme example.biz
DocumentRoot /var/www/html # I wasn't using this folder
然后我做了:
X = source duration * source fps / (3 frames * 5 seconds)
为了加快速度,我还想使用 -skip_frame nokey ,因为我并没有真正依赖于精确间隔的帧。
我还尝试使用 -vf thumbnail = {X},setpts = N / TB 作为过滤器,但在这两种情况下,我都没有得到预期的结果。
命令行如:
ffmpeg -hide_banner -ss 5 -i d:\test.mp4 -y
-vf "select='not(mod(n, {X defined above}))',setpts=N/3/TB,scale=320:-2"
-an -vcodec libx264 -t 5 -r 3 output.mp4
创建一个单帧的文件154秒(1541是上面定义的值{X},对于这部测试影片),所以有些东西我不理解。即使它有效,也不会让我们使用最接近的关键帧,因为 skip_frame nokey 选项在这里没有任何帮助。 ffplay将播放6帧,vlc只显示一帧...
我做错了什么?