[Bug 762461] New: gst_link_filtered returns TRUE for incompatibles pads

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Feb 22 14:34:10 UTC 2016


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

            Bug ID: 762461
           Summary: gst_link_filtered returns TRUE for incompatibles pads
    Classification: Platform
           Product: GStreamer
           Version: 1.x
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
          Assignee: gstreamer-bugs at lists.freedesktop.org
          Reporter: hoel.vasseur at openwide.fr
        QA Contact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---

Hi 

I tried to filters out some videos. I used gst_link_filtered, and
gst_element_linkpads_filtered to filter out videos with a wrong resolution.
However, the filter works fine using raw video formats, but always returns true
when using mpeg4 videos. 
example: here the filter caps creation 

GstCaps    *caps = gst_caps_new_simple ("video/mpeg",
                                     "width", G_TYPE_INT, 384,
                                     "height", G_TYPE_INT, 288,
                                     "mpegversion", G_TYPE_INT, 4,
                                     NULL);

the video source caps: 
video/mpeg, mpegversion=(int)4, systemstream=(boolean)false,
profile=(string)simple, width=(int)1920, height=(int)1080,
framerate=(fraction)30/1, pixel-aspect-ratio=(fraction)1/1

assertions:
gst_element_link_filtered (src, dest, caps)
gst_element_link_pads_filtered (src, NULL, dest, NULL, caps)

both return TRUE.

According to resolution, they should not.

Look into the source code: gstpad.c, and 
gst_pad_link_prepare returns GST_PAD_LINK_OK, I  think it should not.
I see that there is a "fixme" in the function.

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