[Bug 755237] New: Caps Feature Negotiations have bad defaults

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Fri Sep 18 11:13:07 PDT 2015


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

            Bug ID: 755237
           Summary: Caps Feature Negotiations have bad defaults
    Classification: Platform
           Product: GStreamer
           Version: 1.4.1
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: Normal
         Component: gstreamer (core)
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: swestrup at gmail.com
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

I recently ran into an issue with the defaulting of Caps Features.

We have an element we've written that can optionally accept a
meta:GstTextOverlayComposition feature on input, so we set up our sink caps for
the element as:

Sink:
  video/x-raw(meta:GstTextOverlayComposition), ... ;
  video/x-raw, ...

But it was failing to negotiate a connection when there was text overlay
metadata. On examination of the negotiation, we saw that the element was being
presented with:

video/x-raw(memory:SystemMemory, meta:GstTextOverlayComposition), ...

and when our element did an intersect, it got an EMPTY result.

I checked the source code for gst_caps_intersect_full() and found that it only
assumes a default feature of memory:SystemMemory if features are completely
empty. Thus, when the negotiations presented

video/x-raw(memory:SystemMemory),...

negotiations succeeded, but when there was a text overlay, they failed.

Wouldn't it make more sense to assume memory:SystemMemory in the absence of any
other feature with a 'memory:' prefix, rather than requiring an empty feature
list? This would result in the same backwards compatibility, while making it
easier to work with the new Caps features.

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