目录
要使用PowerShell将MP4视频加速,可以使用FFmpeg工具。以下是在Windows上使用PowerShell和FFmpeg的步骤:
下载FFmpeg
在Windows上使用PowerShell之前,需要先下载FFmpeg。可以从官方网站 https://ffmpeg.org/download.html 下载适合你的操作系统的版本。
我用的下载地址:
https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-essentials.7z
下载之后解压到文件夹。
视频倍速
操作流程
打开PowerShell
在Windows上,可以按下Win + X,然后选择“Windows PowerShell”打开PowerShell。
进入FFmpeg目录
在PowerShell中,使用cd命令进入FFmpeg的bin目录。例如,如果FFmpeg安装在C:\ffmpeg,则可以使用以下命令进入bin目录:
cd C:\ffmpeg\bin
使用以下命令将视频加速两倍:
./ffmpeg -i input.mp4 -filter_complex "[0:v]setpts=0.5*PTS[v];[0:a]atempo=2[a]" -map "[v]" -map "[a]" -r 30 output.mp4
代码解释
这个命令中的参数含义如下:
- `-i input.mp4`:指定输入文件为input.mp4。
- `-filter_complex`:指定复杂的视频过滤器。
- `[0:v]setpts=0.5*PTS[v]`:将视频流加速两倍,但保持每秒30帧。`[0:v]`表示输入文件的视频流,`setpts=0.5*PTS`表示将视频流的PTS(Presentation Time Stamp)减半,`[v]`表示输出视频流。
- `[0:a]atempo=2[a]`:将音频流加速两倍。`[0:a]`表示输入文件的音频流,`atempo=2`表示将音频流的速度加倍,`[a]`表示输出音频流。
- `-map "[v]" -map "[a]"`:指定输出文件中包含视频流和音频流。
- `-r 30`:指定输出文件的帧率为30帧/秒。
- `output.mp4`:指定输出文件名为output.mp4。
运行命令后,FFmpeg将会将输入文件input.mp4加速两倍,并将输出文件保存为output.mp4。
画面裁剪
操作流程:
比如,把1280帧宽度裁剪为640
在....\ffmpeg\bin目录下打开powershell,执行:
./ffmpeg -i input.mp4 -filter_complex "[0:v]crop=640:trunc(ih/2)