在手册中它说:
ffmpeg -i input.mkv -filter:v 'setpts=0.5*PTS' output.mkv
但是当我运行时:
ffmpeg -i input.mp4 -filter:v 'setpts=0.5*PTS' speedup.mp4
我收到一个错误:
[AVFilterGraph @ 0000000002500600] No such filter: 'setpts=0.5*PTS'
Error opening filters!
不确定这是否意味着过滤器根本无法打开,或者只是此过滤器不可用。
如何正确运行它?或者,也许我的版本不支持它,那么我在哪里可以获得正常工作的版本?Win32/x64 二进制
同时使用setpts
和atempo
来加快视频和音频的速度:
ffmpeg -i input-video.mp4 -vf "setpts=0.68*PTS" -filter:a "atempo=1.467" output-video.mp4
寄件人: https://trac.ffmpeg.org/wiki/How%20to%20speed%20up%20/%20slow%20down%20a%20video
当然,你必须对数字进行正确的数学计算。 setpts
需要变小以使视频播放得更快,但atempo
需要变大以加快音频速度。
Audio value needed = 1 / Video value
如果你有ffmpeg.exe(我的Windows)对于EX,你可以用这个命令行列出所有可用的过滤器,你可以编辑txt文件c:\filters.txt来查看它们。
FFMPEG -filters> c:\yfilters.txt
在我的我身上,我可以SE过滤器SETPS(仅限视频到视频):
设置V->V设置输出视频帧的PTS。
您的命令行是正确的,并且适用于具有此过滤器的ffmpeg版本(尝试下载最新版本)
这个命令行也适用于我:ffmpeg -i video_input -vf "setpts=factor*PTS" video_output
该因素可以是:
1.用于加速视频 0.2,0.4,0.6,0.8..(<1)
2.用于减慢视频速度:1.2,1.4,1.6,1.8,2.0,3.0,4.0,5.0,10.0...(>1)
尝试使用双引号,例如 ffmpeg -i input.mp4 -filter:v "setpts=0.5*PTS" speedup.mp4