[Bug 752802] avviddec: Sends incorrect CAPS event before the correct one

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Aug 11 08:06:31 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=752802

--- Comment #20 from Nicolas Dufresne (stormer) <nicolas.dufresne at collabora.co.uk> ---
(In reply to Tim-Philipp Müller from comment #19)
> What's up with this? Are we trying to figure out which option to go for?

The plan that should work to gain back partial direct rendering is to start in
direct rendering using internal video buffer pool (aligned as needed). Then,
when we know the final caps, we negotiate the allocation, try the new pool
(allocating a buffer) check if the strides match and if so, exchange the pools
to effectively do direct rendering with downstream pool. In all other case,
we'd copy the frame out, which is what ffmpeg do internal in non-direct
rendering mode.

> What are the chances ffmpeg people will fix up to their API in the longer
> run?

None, their argument is strong, they start decoding as soon as they can
figure-out the allocation size. Waiting longer make no sense and would increase
delays. GStreamer does not have this distinction (allocation size vs final
caps). I'm starting to agree this is slightly a GStreamer limitation to confuse
the allocation information with the final caps.

I have comunicated intention to try and address this limitation (allowing
allocation query to happen before the caps event, and with caps that may or may
not match the final caps (caps should still match in allocation size, at least
when combined with VideoAlignment).

-- 
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