[Bug 727180] videoscaling negotiation with videomixer

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Thu Aug 14 05:21:16 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=727180
  GStreamer | gst-plugins-good | 1.x

--- Comment #9 from Michael Wood <michael.g.wood at linux.intel.com> 2014-08-14 10:25:41 UTC ---

(In reply to comment #8)
> If you mean with full resolution the maximum of all input streams as layed out
> on the composited surface, then you'll currently have to negotiate that. 

The documentation says: "[The] output video frames will have the geometry of
the biggest incoming video stream". So I think that's well defined and indeed
what I expected.

> I think if downstream allows everything, then videomixer tries to use that
> currently. If downstream has a specific preference (like in the above cases),
> it will use that instead.

Right, so if downstream accepts everything, we'll have the maximum of all input
stream as output size. That works.

Now when we put a videoscale + capsfilter after videomixer, that's what this
bug is about. The expected behaviour is for videomixer to work with the maximum
size of all input stream, and then have videoscale take that buffer and scale
it down. Currently, the resulting buffer is a crop of the output of videomixer.

> Maybe videomixer should always use this maximum if it is supported by
> downstream, even if it has a different preference.

That may be the "bug" indeed. Yes, I think videomixer should always use that
maximum for its sink pad. I did a quick test to force that behaviour and the
results is what I expected (and how it worked in 0.10): Here, ximagesrc outputs
3926x1440 frames. Forcing the output caps of videomixer does the trick. I
believe it should be the default behaviour (ie using that maximum size as
output caps).

gst-launch-1.0 -vv ximagesrc  ! videomixer name=mix !
video/x-raw,width=3926,height=1440 ! videoscale !
video/x-raw,width=400,height=300 ! ximagesink

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list