我有此代码将视频拆分为多个部分:
@echo off
for %%i in (*.mp4) do (
ffmpeg -i "%%~i" -vcodec copy -acodec copy -ss 00:00:00 -t 00:00:05 "D:\Ebook\%%~ni_1.mp4"
ffmpeg -i "%%~i" -vcodec copy -acodec copy -ss 00:00:05 -t 00:00:10 "D:\Ebook\%%~ni_2.mp4"
ffmpeg -i "%%~i" -vcodec copy -acodec copy -ss 00:00:10 "D:\Ebook\%%~ni_3.mp4"
)
pause
但是,它只能分割 mp4 文件。现在我有更多类型的文件,例如:mkv 和 avi。如何分割所有文件并准确输出。谢谢!
答案1
您是否尝试过类似这样的事情:
@echo off
for %%i in (*.avi) do (
ffmpeg -i "%%~i" -vcodec copy -acodec copy -ss 00:00:00 -t 00:00:05 "D:\Ebook\%%~ni_1.avi"
ffmpeg -i "%%~i" -vcodec copy -acodec copy -ss 00:00:05 -t 00:00:10 "D:\Ebook\%%~ni_2.avi"
ffmpeg -i "%%~i" -vcodec copy -acodec copy -ss 00:00:10 "D:\Ebook\%%~ni_3.avi"
)
pause
请注意,我不熟悉批处理文件中的 Windows 通配符 - 我假设 %%~i 是正确的形式。