
そこで、SD カードから破損したビデオ ファイルを再構築するために、recover_mp4 を ffmpeg と組み合わせて使用しています。300 以上のファイルがあるため、プロセスを自動化しようとしています。
最も簡単な例として、バッチ ファイルをまとめてみました。最初の 2 つのコマンドでは「var」変数が正常に渡されますが、FFMPEG では受け入れられないようです。FFMPEG で、テキスト ファイル名 + rec (badfile1-rec.mp4) を使用して修正された出力ファイルを作成したいと思います。
FFMPEG の設定が足りないのでしょうか?
これが私のバッチ ファイルです:
@echo off
for /f "delims=" %%a in (bad-videos.txt) do set var=%%a&call :process
:process
call ""c:\recover\bin\recover_mp4.exe good.mp4 --analyze""
timeout 5
call ""c:\recover\bin\recover_mp4.exe %var% recovered.h264 recovered.aac""
timeout 5
call ""c:\recover\bin\ffmpeg.exe -r 30 -i recovered.h264 -i recovered.aac -bsf:a aac_adtstoasc -c:v copy -c:a copy %var%-rec.mp4""
timeout 60
goto :eof
答え1
あなたのスクリプトをちょっと見てみました。これを試してください:
@echo off
for /f "delims=" %%a in (bad-videos.txt) do set var=%%a&call :process
goto :eof
:process
call ""c:\recover\bin\recover_mp4.exe good.mp4 --analyze""
timeout 5
call ""c:\recover\bin\recover_mp4.exe %var% recovered.h264 recovered.aac""
timeout 5
call ""c:\recover\bin\ffmpeg.exe -r 30 -i recovered.h264 -i recovered.aac -bsf:a aac_adtstoasc -c:v copy -c:a copy %var%-rec.mp4""
timeout 60
goto :eof