O plugin Alpha no GStreamer não está funcionando

2

Estou tentando compor dois vídeos e estou usando o plug-in alfa para tornar a cor branca transparente. Para testar o plug-in alfa, estou criando o pipeline com o gst-launch.

O primeiro teste que fiz foi:

gst-launch videotestsrc pattern=smpte75 ! alpha method=custom target-r=255 target-g=255 target-b=255 angle=10 ! videomixer name=mixer ! ffmpegcolorspace ! autovideosink videotestsrc pattern=snow ! mixer.

e funciona muito bem! Então eu criei dois vídeos com essas linhas:

gst-launch videotestsrc pattern=snow ! ffmpegcolorspace ! theoraenc ! oggmux ! filesink location=snow.ogv
gst-launch videotestsrc pattern=smpte75 ! ffmpegcolorspace ! theoraenc ! oggmux ! filesink location=bars75.ogv

E alterou as videotestes para um filesrc e continua funcionando:

gst-launch filesrc location=bars75.ogv ! decodebin2 ! alpha method=custom target-r=255 target-g=255 target-b=255 angle=10 ! videomixer name=mixer ! ffmpegcolorspace ! autovideosink filesrc location=snow.ogv ! decodebin2 ! alpha ! mixer.

No entanto, quando uso o vídeo que quero compor, não consigo tornar a cor branca transparente:

gst-launch filesrc location=video.ogv ! decodebin2 ! alpha method=custom target-r=255 target-g=255 target-b=255 angle=10 ! videomixer name=mixer ! ffmpegcolorspace ! autovideosink filesrc location=snow.ogv ! decodebin2 ! alpha ! mixer.

Alguma ideia do que está acontecendo? Estou usando o GStreamer 0.10.28.

Você pode baixar os vídeos de teste aqui:

http://polimedia.upv.es/pub/gst/gst.zip

    
por Miguel Escriva 03.05.2010 / 11:22

1 resposta

2

Eu testei sua abordagem, ela funciona melhor do que você imagina ... basta trocar os vídeos e vice-versa; -)

gst-launch filesrc location=snow.ogv ! decodebin2  ! alpha method=custom target-r=255 target-g=255 target-b=255 angle=10  ! videomixer name=mixer ! ffmpegcolorspace ! autovideosink filesrc location=bars75.ogv ! decodebin2 ! alpha ! mixer.

Idéia engraçada. Parabéns!

    
por 27.05.2011 / 17:18