2017-10-16 11 views
0

複数の音声ファイルを1つの画像と組み合わせてWebMビデオに書き込むコードを書いた。 (オーディオ1はデフォルトのjpgと組み合わせ、オーディオ2はデフォルトのjpgと組み合わせるなど)。ffmpeg - 映像と音声を映像に合成した後の音声よりも長い映像

これは、その後、ビデオの長さがオーディオの長さより25秒優れているためです(ビデオの最後の25秒前にオーディオがカットされる)。

オーディオと同じタイミングでビデオを停止する方法はありますか?ここでは、これはある種の溶液Iを使用したコード(私はBATコマンドファイルを起動)

@echo off 
for %%F in (*.ogg) do ( 
    ffmpeg -loop 1 -framerate 1 -i "default.jpg" -i "%%F" -acodec libopus -b:a 384k -vcodec libvpx-vp9 -lossless 1 -speed 4 -vf scale=1280x720 -shortest "%%F.webm" 
) 
+0

助けが必要ですか?非常に重要です。 –

+0

これはバグです。https://trac.ffmpeg.org/ticket/5456 – Mulvya

+0

私はすでにそれを見ましたが、それは助けになりません。私はffmpegの2012バージョンを使用しません..そうそれはffmpegで各作成されたメディアのビデオの最後の25秒を削除することは可能ですか?各オーディオを特定の画像と結合して複数の動画を作成し、最後の25秒を削除する –

答えて

0

OKですされています

まず、あなたのオリジナルのコマンドを実行します

ffmpeg -loop 1 -framerate 1 -i "default.jpg" -i "%%F" 
     -acodec libopus -b:a 384k -vcodec libvpx-vp9 -lossless 1 -speed 4 -vf scale=1280x720 -shortest temp.webm 

、その後

ffmpeg -i temp.webm -c copy -fflags shortest -max_interleave_delta 10000000000 -flush_packets 0 "%%F.webm" 

これは、オーディオの持続時間より1秒長くファイルを生成します。

0

ありがとうございました!代わりの解決策(これは今解決されました)では、 "コピー"によって-b:a 384kが置き換えられます。再コーディングを行わずにオーディオソースの品質をそのままにしておくと、画像/オーディオを組み合わせたメディアを作成すると、オーディオ/ビデオの長さを同期させることができます。それが問題でした。

関連する問題