Display static image?

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Display static image?

Francis Rammeloo
I'm using the videomixer plugin to create a combined video from two incoming video streams. Both videos are positioned horizontally next to each other. The second video has a smaller height than the first one. Resulting in a black rectangular area in the lower right corner of the video.

I would like to fill this black hole with a static image. I have tried loading an image using a filesrc linked with a jpegdec element, but the problem is that the video gets an EOS event after having loaded the image, so it only shows for a fraction of a second.

Is there any way to do it? I'm currently loading all my pipelines using the gst-launch parser, so a solution in gst-launch syntax would be ideal. However, I'd be willing to do it in code if needed.

Francis

------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Display static image?

gst-2
> I'm using the videomixer plugin to create a combined video from two
> incoming
> video streams. Both videos are positioned horizontally next to each other.
> The second video has a smaller height than the first one. Resulting in a
> black rectangular area in the lower right corner of the video.
>
> I would like to fill this black hole with a static image. I have tried
> loading an image using a filesrc linked with a jpegdec element, but the
> problem is that the video gets an EOS event after having loaded the image,
> so it only shows for a fraction of a second.
>
> Is there any way to do it? I'm currently loading all my pipelines using
> the
> gst-launch parser, so a solution in gst-launch syntax would be ideal.
> However, I'd be willing to do it in code if needed.

You can use the videobox plugin for this. See
http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/gst-plugins-good-plugins-videomixer.html
for an example pipeline:

gst-launch videotestsrc pattern=1 ! video/x-raw-yuv,
framerate=\(fraction\)10/1, width=100, height=100 ! videobox
border-alpha=0 alpha=0.5 top=-70 bottom=-70 right=-220 ! videomixer
name=mix ! ffmpegcolorspace ! xvimagesink videotestsrc ! video/x-raw-yuv,
framerate=\(fraction\)5/1, width=320, height=240 ! alpha alpha=0.7 ! mix.

Best regards,
Roland


------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Display static image?

Roland Hermans
In reply to this post by Francis Rammeloo
Hi Francis,

> I would like to fill this black hole with a static image. I have tried
> loading an image using a filesrc linked with a jpegdec element, but the
> problem is that the video gets an EOS event after having loaded the image,
> so it only shows for a fraction of a second.
>
> Is there any way to do it? I'm currently loading all my pipelines using
> the
> gst-launch parser, so a solution in gst-launch syntax would be ideal.

A workaround that I have used is a multifilesrc with a fixed location, so
that it keeps reading the same image over and over again. For example:

gst-launch multifilesrc location=yourfile.jpg
caps=image/jpeg,framerate=\(fraction\)1/1 ! jpegdec ! ffmpegcolorspace !
video/x-raw-rgb,framerate=\(fraction\)1/1 ! timeoverlay ! ximagesink

But it might very well be that there is a better solution and I would be
interested in it as well.

Roland


------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Display static image?

Stefan Sauer
Am 28.12.2009 10:36, schrieb Roland Hermans:

> Hi Francis,
>
>> I would like to fill this black hole with a static image. I have tried
>> loading an image using a filesrc linked with a jpegdec element, but the
>> problem is that the video gets an EOS event after having loaded the image,
>> so it only shows for a fraction of a second.
>>
>> Is there any way to do it? I'm currently loading all my pipelines using
>> the
>> gst-launch parser, so a solution in gst-launch syntax would be ideal.
>
> A workaround that I have used is a multifilesrc with a fixed location, so
> that it keeps reading the same image over and over again. For example:
>
> gst-launch multifilesrc location=yourfile.jpg
> caps=image/jpeg,framerate=\(fraction\)1/1 ! jpegdec ! ffmpegcolorspace !
> video/x-raw-rgb,framerate=\(fraction\)1/1 ! timeoverlay ! ximagesink
>
> But it might very well be that there is a better solution and I would be
> interested in it as well.

There is a element called freeze for that.

Stefan

>
> Roland
>
>
> ------------------------------------------------------------------------------
> This SF.Net email is sponsored by the Verizon Developer Community
> Take advantage of Verizon's best-in-class app development support
> A streamlined, 14 day to market process makes app distribution fast and easy
> Join now and get one step closer to millions of Verizon customers
> http://p.sf.net/sfu/verizon-dev2dev 
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel