ffmpeg多次裁切同一視頻

ffmpeg多次裁切同一視頻

我完全是 FFmpeg 和編程的新手,所以這個問題可能太愚蠢了...我有一個視頻,想將其裁剪成小塊並渲染每個塊,所以我嘗試使用 FOR 循環:

FOR /l %x IN (0,40,1000) DO ffmpeg -i sample.avi -filter:v "crop=20:20:x:x" outx.avi; done

我得到的是: [NULL @ 0000000002624220] 無法找到「outx.avi」的合適輸出格式; outx.avi;:無效參數

任何人都可以幫忙解決這個問題嗎?

答案1

您顯然正在使用 Windows 批次檔。這裡,FOR循環不像 Bash 循環那樣有尾隨; done

在Windows下:

FOR ... IN ... DO ...

在重擊下:

for ... in ...; do ...; done

因此,請確保您的 shell 使用正確的語法。


請注意,簡單地指定out.avi將使 ffmpeg 分別選擇 MPEG-4 和 MP3 作為視訊和音訊編解碼器,並且您的品質可能會很差。理想情況下,指定視訊和音訊編碼器,例如:

ffmpeg -i <input> -c:v libx264 -crf 23 -c:a aac -b:a 192k out.mp4

閱讀H.264編碼指南了解更多。

相關內容