Synchronized changes of videoscale and videomixer properties

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

Synchronized changes of videoscale and videomixer properties

Benjamin Le Bozec
Hi,

We have a live pipeline which looks like this : 

src1 --> videoscale --> capsfilter --> 
                                                           compositor --> sink
src2 --> videoscale --> capsfilter --> 

It allows us to mix two inputs in side by side or picture in picture configuration. 

While the pipeline is running, we want to change from one to another configuration several times. 

To change the videoscale properties (width and height), we change the caps of the capsfilters, and to change the compositor configuration, we use the xpos and ypos of the input pads. 

That works well, except that those changes are not synchronized, and we see the videos in the output moving and then being resized. 

We found the GstController, which can operate on the properties of the compositor input pads, doing the updates according to the running time of the pipeline.

But the GstController approach does not seem to work for caps properties, since ControlBinding only works for element properties. 

So here is our question : How can we synchronize against the running time both changes on the videoscale and the compositor ?

Thank you for your advice,

Benjamin

--

Benjamin Le Bozec

Tél. +33 (0)2 99 63 42 36
http://www.vodalys.com

 


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Synchronized changes of videoscale and videomixer properties

Arjen Veenhuizen
Would it be an option to let compositor do the scaling for you as well (using
the width and height sink pad properties)?



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Synchronized changes of videoscale and videomixer properties

Benjamin Le Bozec
Yes that can be an option. But unless we're missing something, the compositor does not keep aspect ratio as videoscale does (with add-border=true). 

Surely we can work something out for a simple scaling/compositing configuration, but since other interesting plugins use caps to get configured (for example videobox uses caps for width and height configuration), we are looking for a way that matches every cases.

2018-01-10 11:55 GMT+01:00 Arjen Veenhuizen <[hidden email]>:
Would it be an option to let compositor do the scaling for you as well (using
the width and height sink pad properties)?



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



--

Benjamin Le Bozec

Tél. +33 (0)2 99 63 42 36
http://www.vodalys.com

 


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Synchronized changes of videoscale and videomixer properties

Nicolas Dufresne-5


Le 10 janv. 2018 6:31 AM, "Benjamin Le Bozec" <[hidden email]> a écrit :
Yes that can be an option. But unless we're missing something, the compositor does not keep aspect ratio as videoscale does (with add-border=true). 

This could be added to compositor of course.


Surely we can work something out for a simple scaling/compositing configuration, but since other interesting plugins use caps to get configured (for example videobox uses caps for width and height configuration), we are looking for a way that matches every cases.

2018-01-10 11:55 GMT+01:00 Arjen Veenhuizen <[hidden email]>:
Would it be an option to let compositor do the scaling for you as well (using
the width and height sink pad properties)?



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



--

Benjamin Le Bozec

Tél. <a href="tel:+33%202%2099%2063%2042%2036" value="+33299634236" target="_blank">+33 (0)2 99 63 42 36
http://www.vodalys.com

 


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Synchronized changes of videoscale and videomixer properties

Arjen Veenhuizen
This made me think about a problem I faced a couple of years ago. You could
use GstMetadata to transport the width/height/crop information along with
each frame but this might/will require modification of several elements:
http://gstreamer-devel.966125.n4.nabble.com/videocrop-compositor-Change-output-of-videocrop-just-in-time-using-GstVideoCropMeta-metadata-td4677790.html



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel