[Bug 668483] video: add support for global-alpha multiplicator for overlay rectangles

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Mar 21 12:29:24 PDT 2012


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

--- Comment #16 from Holger Kaelberer <hk at getslash.de> 2012-03-21 19:29:15 UTC ---
(In reply to comment #15)
> 
> A consumer can't 100% rely on the buffer pointer values to identify the same
> buffer (unless it keeps a ref to the buffer itself), since the buffer structure
> could be recycled by GSlice etc. GST_BUFFER_OFFSET() is a field in the buffer
> structure, which we could abuse to store a seqnum, which could then be used to
> uniquely identify buffers.

I see

> 
> I didn't see the point of doing a remove_rectangle, since you have to make the
> composition writable anyway before doing that, and then you could just not
> bother and not cache the composition in the producer and only keep on to the
> rectangles and always create a new composition. But we could add a
> _remove_rectangle() or _steal_rectangle() if that makes things easier.

Maybe for convenience, but everything is already possible with what is there. I
think, I was just expecting something else, and was a bit confused about
keeping rectangles and recreating their container in each step -- coming from
an application context, where a 'composition' (or its equivalent) is something
more static: you add children to it in response to key-events, and remove them
when they're faded out ... ;-)

I'm fine with the current interface. Yes, maybe a more verbose usage
documentation in the overview part.

> 
> I don't know what to do about that right now, let's just update the seq_num as
> you do and ignore the issue for now. I think this needs more thought. Perhaps
> document in _get_seqnum() that those aren't as useful as they may seem.

Ok, added something there.

> So the case where you need to apply global alpha on the rectangle, but no
> scaling is needed/wanted is handled in the "scaling code path" as well, right?

Yes, it was, which is in fact an unnecessary step. I changed this, with the new
patch, no interim cached rect is created anymore.

Thanks for your comments, I changed the minor details.

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