在windows下写一个批处理程序使用了FFmpeg 60版本命令行工具来批量去除视频的片头和片尾并保存为新视频文件。并解释代码注意:ffmpeg已加入系统环境变量
@echo off setlocal enabledelayedexpansion
set input_folder=C:\Users\input_folder set output_folder=C:\Users\output_folder
for %%a in ("%input_folder%*.mp4") do ( ffmpeg -i "%%a" -ss 00:00:05 -to 00:00:55 -c copy "%output_folder%\new_%%~na.mp4" )
echo All done! pause
解释:
-
@echo off 表示关闭命令行窗口的回显功能,只输出执行结果。
-
setlocal enabledelayedexpansion 告诉批处理程序在执行过程中启用延迟环境变量扩展,这样可以动态地获取变量的值。
-
set input_folder=C:\Users\input_folder 设置输入视频文件夹的路径。
-
set output_folder=C:\Users\output_folder 设置输出视频文件夹的路径。
-
for %%a in ("%input_folder%*.mp4") do ( ) 遍历输入文件夹中所有的.mp4格式的视频文件,%%a表示当前正在处理的文件。
-
ffmpeg -i "%%a" -ss 00:00:05 -to 00:00:55 -c copy "%output_folder%\new_%%~na.mp4" 使用FFmpeg命令行工具去除视频的片头和片尾,并将新视频文件保存到输出文件夹中,文件名以new_为前缀,后面跟原文件名(去掉扩展名),最后加上.mp4扩展名。
-
echo All done! 输出“处理完成”的提示信息。
-
pause 暂停程序的执行,等待用户按下任意键继续
原文地址: https://www.cveoy.top/t/topic/cT2T 著作权归作者所有。请勿转载和采集!