0

私は、videos \ *。*フォルダー内のすべてのビデオファイルを取得し、それぞれにffmpegを使用して、ファイル名が同じであるconverted\*。mp4にファイルを出力するスクリプトを作成する方法を理解しようとしています。

ただし、ループを機能させる方法がわからないforため、処理しているファイルの名前と拡張子の種類を抽出できます。

for %%f IN (videos\*.*) DO (convert.bat %%f)

convert.bat

ffmpeg.exe -i %1 -f mp4 converted\%~n.mp4

二重引用符を使用する場合と使用しない場合の両方を試しました。ただし、ファイルは認識されません。

4

1 に答える 1

5

1つのライナーバッチファイルコマンド:

for %%F in (videos\*.*) do ffmpeg.exe -i "%%~fF" "%%~dpF\converted\%%~nF.mp4"

あなたが持っていた2つのライナー:(callコマンド、引用符、およびを追加~

for %%F IN (videos\*.*) DO (call convert.bat "%%~fF")

convert.bat(~、オプション、および引用符を使用したパラメーターの使用法の修正)

ffmpeg.exe -i "%~f1" "%~dp1\converted\%~n1.mp4"

ヘルプについてはfor /?、、call /?を参照してください。ffmpeg

于 2012-12-27T15:10:26.273 に答える