我正在使用FFmpeg将webm转换为mp4 .
我的批处理文件是
cd "C:\Users\Matt\Desktop\" && for %f in (*.webm) do ffmpeg -y -i "C:\Users\Matt\Desktop\%~f" -vcodec libx264 -b:v 600K -pass 1 -acodec aac -b:a 128k "C:\Users\Matt\Desktop\%~nf.mp4" && ffmpeg -y -i "C:\Users\Matt\Desktop\" -vcodec libx264 -b:v 600K -pass 2 -acodec aac -b:a 128k "C:\Users\Matt\Desktop\%~nf.mp4"
它适用于CRF和1 Pass,但使用2 Pass它会在第二次传递时停止并给出错误:
C:\ Users \ Matt \ Desktop“-vcodec libx264 -b:v 600K -pass 2 -acodec aac -b:a 128k C:\ Users \ Matt \ Desktop \ video:参数无效
路径上缺少第一个双引号,文件名“video 01.mp4”被截断 .
1 回答
您的代码只能直接在cmd中工作,在批处理中您必须将for变量的百分号加倍 .
批量 生产环境 中不需要一个衬管 .
我希望这更清楚,更有效 .