FFMPEG は透明な MOV 用に色付きの背景を処理し、HTML5 MP4 に変換しようとしています

FFMPEG は透明な MOV 用に色付きの背景を処理し、HTML5 MP4 に変換しようとしています

ここ 1 時間、透明な MOV をカラー背景と組み合わせようと試みてきました。これは、次のコマンドで実行できます。

ffmpeg -i input.mov -filter_complex "color=#f5a3a3,format=rgb24[c];[c][0]scale2ref[c][i];[c][i]overlay=format=auto:shortest=1,setsar=1" output.mp4

問題は、mp4 が にフォーマットされているため再生できないことですyuv444。 結果の mp4 を取得し、単純なフィルターを使用して に再エンコードしようとしましたyuv420pが、できないようです。

これに関してアドバイスをいただければ幸いです。

回避策: 私は、MOV から WEBM (いずれにせよ必要でした) に移行し、複雑なフィルターを含めることで、この問題を回避できました。その後、WEBM から MP4 に移行したところ、すべてうまくいきました。しかし、元の質問についてはまだ興味があります。

答え1

オーバーレイの後にフォーマット フィルターを挿入して変換します。

ffmpeg -i input.mov -filter_complex "color=#f5a3a3,format=rgb24[c];[c][0]scale2ref[c][i];[c][i]overlay=format=auto:shortest=1,format=yuv420p,setsar=1" output.mp4

関連情報