ffmpeg指令在cmd中工作但不在批次檔中工作

ffmpeg指令在cmd中工作但不在批次檔中工作

我有一個命令將資料夾中的 mkv 檔案轉換為 mp4。當我嘗試向轉換後的文件添加浮水印時,它在cmd 提示符下工作正常,但是當我在批處理文件中運行它時,它會給出一個錯誤,提示錯誤用參數初始化過濾器“drawtext” 。以下是 ffmpeg 指令:

ffmpeg -y -r 20 -i %~d1%~p1%~n1.mkv -vf "drawtext=text='Watermark Text':x=10:y=H-th-10:fontfile=/Windows/Fonts/Calibri.ttf:fontsize=45:[email protected]: x=(w-text_w)/2: y=(h-text_h)/2" -c:v libx264 -preset ultrafast -b:v 1000k %~d1%~p1%~n1

我哪裡錯了?

答案1

嘗試對批次檔使用轉義字元:

ffmpeg -y -r 20 -i %~d1%~p1%~n1.mkv -vf ^"drawtext=text='Watermark Text':x=10:y=H-th-10:fontfile=/Windows/Fonts/Calibri.ttf:fontsize=45:[email protected]: x=(w-text_w)/2: y=(h-text_h)/2^" -c:v libx264 -preset ultrafast -b:v 1000k %~d1%~p1%~n1

相關內容