FFMPEG Windows批处理-基于递归转换和基于帧高度的设置

FFMPEG Windows批处理-基于递归转换和基于帧高度的设置,windows,batch-file,ffmpeg,Windows,Batch File,Ffmpeg,因此,我试图制作一个批处理文件,使用FFMPEG转换约1000 MP4的视频文件 我想递归地浏览这些文件夹,可能使用ffprobe来发现帧高度,然后根据帧高度选项(360、480、720或1080帧高度)分别为它们提供不同的ffmpeg命令 就批处理而言,我一直在阅读各种方法 到目前为止,我处于这个阶段: for %%a in ("*.*") do C:\ffinstall\local64\bin-video\ffmpeg -i "%%a" -c:v libx264 -crf 18 -pres

因此,我试图制作一个批处理文件,使用FFMPEG转换约1000 MP4的视频文件

我想递归地浏览这些文件夹,可能使用ffprobe来发现帧高度,然后根据帧高度选项(360、480、720或1080帧高度)分别为它们提供不同的ffmpeg命令

就批处理而言,我一直在阅读各种方法

到目前为止,我处于这个阶段:

for %%a in ("*.*") do C:\ffinstall\local64\bin-video\ffmpeg -i "%%a"  -c:v libx264 -crf 18 -preset veryslow -tune film -refs 8 -bf 6 -aq-mode 2 -filter_complex "[0:v][1:v]overlay=30:main_h-overlay_h-30,subtitles='D:\add.ass'" -c:a copy "encoded\%%~na.mp4"
停顿

查找框架高度的代码:

ffprobe -v error -show_entries stream=height -of default=noprint_wrappers=1 inputfile.mp4
试图弄清楚条件句及其语法。另外,我得到一个无法解析选项值“add.ass”的图像大小错误。我认为这是因为没有看到字幕文件


关于我可以从哪里开始有什么建议吗?谢谢你的帮助

由于输入高度的不同,命令之间有什么区别?您发布的代码与您的问题无关,因为您已经告诉我们您可能需要使用ffprobe。因此,了解如何使用ffprobe,创建相关代码,测试它,并通过相应地编辑原始问题发回。Mulvya-不同大小的水印和水印的不同覆盖位置。对于非常小的文件,使用较低的CRF编号。