HEADSHOT.MOVとSCREEN.MOVの2本のビデオがあります。どちらも大きなファイルであり、縮小(サイズ、ビットレートなど)して、これら2つを同じ非常に幅の広いビデオフレームに並べて配置することを検討しています。最終結果は、output_video.mp4を再生すると、非常に広いフレームで両方のビデオが同期し、同じレートで再生されることになります。
これが私がやろうとしていることの構文的に正しくないバージョンです:
ffmpeg -i HEADSHOT.MOV -t 00:02:00 -acodec libfaac -ab 64k -vcodec libx264 -r 30 -pass 1 -s 374x210 -vf "movie=SCREEN.MOV [small]; [in][small] -an -r 30 -pass 1 -s 374x210 overlay=10:10 -t 00:02:00 [out]" -threads 0 output_movie.mp4
上記の例では、テストムービーの再生時間を2分間に設定しようとしましたが、これは別の問題を引き起こします。
これまでに参考にしたリソースは次のとおりです。
http://ffmpeg.org/ffmpeg.html#overlay-1
どんな助け/アドバイスでも大歓迎です。 FFMPEG構文に問題があります!ありがとうございました!
結果は、スケール、パッド、オーバーレイフィルターの組み合わせで次のように実現できます。
ffmpeg.exe -i LeftInput.mp4 -vf "[in] scale=iw/2:ih/2, pad=2*iw:ih [left];
movie=RightInput.mp4, scale=iw/3:ih/3, fade=out:300:30:alpha=1 [right];
[left][right] overlay=main_w/2:0 [out]" -b:v 768k Output.mp4
ここで、最初のビデオは半分に縮小され、元のサイズにパディングされます。 2番目のビデオは3分の2に縮小され、最初のビデオの右半分(パディング領域)にオーバーレイされます。
短いビデオはフェードアウトできます。それ以外の場合、最後のフレームは、結合されたビデオの最後まで表示されます。
結果のビットレートは-b:v
オプションで設定できます。また、ビデオのサイズと位置は、パッド、スケール、オーバーレイフィルターのピクセル単位で指定できます。