- ビデオの長さがオーディオの長さよりも短い場合
-shortest
は、これで十分です。
- ビデオの長さがオーディオの長さよりも長い場合、フラグはまったく必要ありません。
この決定を自動化するためのフラグはありません。
編集
@deadcodeの答えに触発されて、私が明確にする必要があります。再エンコードするつもりなら、「自動化するフラグがない」というのはもちろん本当ではありません。この場合apad
は、@ deadcodeの提案に従ってください。
ただし、再エンコード(つまり-c:v copy
)を避けたい場合は、その答えが有効です。
ffconcat
デマルチプレクサを使用する回避策はありますが、少し作業が必要です。
- 音声ファイルとまったく同じ形式で無音を含むファイルを作成します( "silence.wav")
- 連結ファイル "audio.ffconcat"を作成します(音声が十分に長いことを確認するために必要な数の無音行を含む):
。
file 'audiofile.wav'
file 'silence.wav'
file 'silence.wav'
...
file 'silence.wav'
- 走る
ffmpeg -i videofile.mp4 -f concat -i audio.ffconcat -c:v copy output.mp4
これにより、apad
フィルターグラフなしでフィルターが合成されるため、再エンコードせずにマルチプレクサを使用できます。