ffmpeg实现变速播放

 1、新建一个txt文件,并复制如下代码进入,然后保存。

@echo off & title
 
cd /d %~dp0
 
for %%a in (*.mp4) do (
 
 ffmpeg -i "%%~sa" -i "%%~sa" -filter_complex "[0:v]setpts=PTS/0.8[v];[0:a]atempo=0.8[a]" -map "[v]" -map "[a]" -y -q:v 1 "out\%%~na.mp4"
 
)
 
pause

2、把文件后缀修改为bat 。

3、把后缀为bat的文件放到要批量处理的视频文件夹里面。

4、在确保安装了ffmpeg的情况下,双击bat文件执行即可。

5、参数说明:

-i          输入文件,这里指的就是视频文件。

-y        表示无需询问,直接覆盖输出文件(如果有原文件的话)。

-q:v 1        q是质量,v是视频,v的取值范围是[1, 35],取值1的时候,对应着最佳的视频质量。

-filter_complex    使用ffmpeg复杂滤镜。

setpts    用于修改视频的播放速率。取值范围[0.25,4]。对视频进行加速时,如果不想丢帧,可以用-r 参数指定输出视频FPS。pts(Presentation Time Stamp):即显示时间戳,这个时间戳用来告诉播放器该在什么时候显示这一帧的数据。

atempo    用于修改音频的播放速率,取值范围[0.5,2.0], 如果需要调整4倍可采用以下方法:

ffmpeg -i input.mkv -filter:a "atempo=2.0,atempo=2.0" -vn output.mkv

猜你喜欢

转载自blog.csdn.net/mj412828668/article/details/121327359
今日推荐