[Bug 687183] playbin: caps negotation if VIDEO_FORMAT is unknown

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Jun 11 07:08:44 PDT 2013


https://bugzilla.gnome.org/show_bug.cgi?id=687183
  GStreamer | gst-plugins-base | git

--- Comment #22 from Gwenole Beauchesne <gb.devel at gmail.com> 2013-06-11 14:08:36 UTC ---
(In reply to comment #20)

> One of the major issue with the buffer-pool re-negotiation (in case of vaapi): 
> The vaapi surfaces are bound to vacontext. So we cannot just create vasurfaces
> for decoding .If we destroy and create a new vasurface , then it meant to
> destory the vacontext also, which is an expensive operation. Gwenole was trying
> to do something with the driver for this. But don't know about the progress in
> this.

Well, there unfortunately won't be progress on that. Some VA drivers, that are
not really open, depend on the fact that a VA context holds VA surfaces, as in:
it also holds extra internal buffers/mappings to those VA surfaces. If we kill
the VA context, we kill those internal buffers(!), which could also represent
some decode state that the HW requires for correctly decoding the next frames.

In short, it's better to stick to the current model: you allocate a decode
session (VA context) once, and it is live until the encoded resolution changes,
thus requiring new VA surfaces. Though, in order to initialize that context,
you will also need to know the maximum number of possible VA surfaces to
allocate, i.e. parsing at least the sequence packets/layer.

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