
我正在尋找 ffmpeg 的 .bat 腳本並遇到論壇上的這個貼文在這裡。
有問題的程式碼是
for %%F in (*.mp4) do (
If not Exist "%%~nF" MkDir "%%~nF"
ffmpeg -i %%F -r 1 -qscale:v 2 %%~nF\%%~nF-%%3d.jpg
)
FFMPEG 添加到 PATH 中,當我嘗試在資料夾上使用此批次腳本時,會建立資料夾但不會出現圖像。
除了讓螢幕截圖出現在資料夾中之外,我還想知道是否有更好的命令來包含多種文件格式 - 我的大部分內容都是 .mkv 格式,但這裡也有隨機的其他格式。
會
for %%F in (*.mp4, *.mkv) do (
為此工作?
我忘了添加,我不確定這是否重要,但文件位於外部硬碟上(不是 C:/),腳本從包含文件的資料夾中運行。
我很抱歉創建一篇新帖子,我本來會在該帖子中發表評論並希望評論者做出回應,但我是一個新帳戶,沒有聲譽。非常感謝任何幫助,感謝您的寶貴時間!
答案1
ffmpeg
對於包含空格的路徑/檔名,不會儲存複製程式碼的行。
將 - 行更改ffmpeg
為以下內容:
ffmpeg -i "%%F" -r 1 -qscale:v 2 "%%~nF\%%~nF-%%3d.jpg"
請注意新增的報價。
我只是想知道是否有更好的命令來包含多種文件格式 - 我的大部分內容都在 .mkv 中,但這裡也有隨機的其他格式。
會
for %%F in (*.mp4, *.mkv) do (
為此工作?
為什麼不自己測試一下這個已知的程式碼呢?測試這個絕對是微不足道的。你自己就能輕易解決的問題是不禮貌的。 — 它禁止我們幫助他人。
但是,是的:要透過擴展名捕獲不同的檔案格式,對程式碼最簡單的更改是您自己的建議。
更新
不幸的是,我更改了線路,但它仍然立即關閉,資料夾中沒有出現任何內容
這向我暗示您可以透過快捷方式圖示啟動批次處理,而不是從開啟的命令外殼中啟動。
若要查看程式碼的工作情況,請開啟命令 shell 並將腳本作為 shell 命令啟動。請複製輸出作為您問題的更新。
也許您想產生視訊集合的小型測試結構,以限制合理的輸出量。