[Bug 746373] New: New fundamental type for caps - GstFlagSet
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Tue Mar 17 15:28:16 PDT 2015
https://bugzilla.gnome.org/show_bug.cgi?id=746373
Bug ID: 746373
Summary: New fundamental type for caps - GstFlagSet
Classification: Platform
Product: GStreamer
Version: git master
OS: Linux
Status: NEW
Severity: enhancement
Priority: Normal
Component: gstreamer (core)
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: thaytan at noraisin.net
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
GstFlagSet is a new type for caps, which is like a bitmask field, but which can
be negotiated more efficiently.
A GstFlagSet is a bitfield of flags, plus a bitmask that indicates which flags
are important. Together, they allow an element to more compactly express
support for various flag values than with a GstBitmask.
For example, an element that wants to support receiving caps where a particular
flag must be declared, but can be either true or false - the receiver doesn't
care. Currently, we could add a boolean field to the caps, and the receiver can
put field = (boolean) { TRUE, FALSE } in its caps. When there are many such
properties of the stream, the number of extra caps fields grows quickly, and if
there are interdependencies between the properties, then the caps has to become
a list of intersecting values.
With a GstFlagSet, and element can express combinations of flags, using the
mask to indicate a 'dont care' value for any given flag.
A fixed GstFlagSet has a mask of (guint64)(-1) to indicate all flags bits must
exactly match when intersecting caps.
--
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