2

これは私がこれまでに行ったことです:

透明なPNG画像を作成するコマンド:

convert -size 640x480 -background transparent -fill blue \
-gravity South label:ROCK image1-0.png

透明なビデオを作成するコマンド:

ffmpeg -loop 1 -f image2 -i image1-0.png -r 20 -vframes 100 \
-vcodec png -pix_fmt bgra mov-1.mov

この投稿によると)-私はこのビデオが透明なビデオであることを期待しています。

ビデオを別のビデオとオーバーレイするコマンド:

ffmpeg -i final-video.mov -sameq -ar 44100 \
-vf "movie=mov-1.mov [logo];[in][logo] overlay=0:0 [out]" \
-strict experimental final-video.mov

上記のコマンドは完璧に機能し、問題は発生していませんが、透かし効果のような期待どおりの効果が得られません。mov-1.movをfinal-video.movで透過的にしたいと思います。

質問:

  1. 生成されたビデオが透明であるかどうかを確認する方法はありますか?マージ以外?
  2. 上記のmov-1.movがfinal-video.movとマージされたときに透過的でない理由はわかりませんが、この問題を解決するための情報は素晴らしいでしょう。

助けてください。

4

1 に答える 1

1

ImageMagickは、FFmpegが理解できる方法で透明なpngを常に生成するとは限りません。 この問題に最後に直面したとき、私はGIMPを使用してインデックス付きの透明な画像を作成することになりました。気にしないでください。この回答を 振り返ると、FFmpegが設定すること、ImageMagickに透明度を生成させることができたようですpng:color-type。変換コマンドは次のようになります。

convert -size 640x480 -background transparent -fill blue \
-gravity South label:ROCK -define png:color-type=6 image1-0.png

そうは言っても、画像を独自のムービーに変える必要はありません。ビデオフィルターは、movie入力として透明なpngを受け入れます。

于 2012-06-12T02:35:05.860 に答える