我正在创建一个批处理脚本,每天将屏幕截图转换为视频,除了我不能让屏幕上限每天从0001开始,所以我当前的脚本失败。
在FFMPEG中有没有一种方法可以只读取一个文件夹中的所有文件(例如,如果我有一个文件夹,其中有500个文件,以01234.jpg开头,另一个文件夹中的文件以87654.jpg开头)?
如果没有,我可以使用批处理脚本找到起点和终点并将其发送到ffmpeg吗?
我的剧本
@echo off
setlocal enabledelayedexpansion
rem Check if a new folder has been added to the watched folder
for /f "tokens=*" %%a in ('dir "Y:\fastone_timelapse" /B /AD') do (
set "new_folder=%%a"
rem Check if jpeg files are present in the new folder
if exist "Y:\ft\!new_folder!\*.jpg" (
ffmpeg.exe -f image2 -framerate 25 -pattern_type sequence -start_number 00001 -i "Y:\ft\!new_folder!\%%05d.jpg" -c:v libx265 -b:v 5000k -g 100 "Y:\ft\!new_folder!.mp4"
)
)
endlocal
1条答案
按热度按时间xqk2d5yq1#
顺便说一句,你似乎不需要
new_folder
,因为!new_folder!
的每个外观都可以被%%a
替换。