[Bug 672019] New: rtph264pay restricts sinkpad caps before linking

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Mar 13 14:45:41 PDT 2012


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

           Summary: rtph264pay restricts sinkpad caps before linking
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-good
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: jonas.holmberg at axis.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


profile=(string)constrained-baseline is added to the sinkpad caps of rtph264pay
if the srcpad has been linked to a peer pad that does not have profile-level-id
in caps.

Example:

GST_DEBUG=2 gst-launch-0.10 filesrc location=h264_main_profile.mkv !
matroskademux ! rtph264pay ! rtph264depay ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
0:00:00.017022666 26975       0xe95cf0 WARN           matroskademux
matroska-demux.c:4498:gst_matroska_demux_loop:<matroskademux0> error: stream
stopped, reason not-linked
ERROR: from element /GstPipeline:pipeline0/GstMatroskaDemux:matroskademux0:
GStreamer encountered a general stream error.
Additional debug info:
matroska-demux.c(4498): gst_matroska_demux_loop ():
/GstPipeline:pipeline0/GstMatroskaDemux:matroskademux0:
stream stopped, reason not-linked
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

This patch would make it work:

diff --git a/gst/rtp/gstrtph264pay.c b/gst/rtp/gstrtph264pay.c
index 87c9b7e..80a5797 100644
--- a/gst/rtp/gstrtph264pay.c
+++ b/gst/rtp/gstrtph264pay.c
@@ -367,11 +367,6 @@ gst_rtp_h264_pay_getcaps (GstBaseRTPPayload * payload,
GstP
         gst_structure_set (new_s,
             "profile", G_TYPE_STRING, "constrained-baseline", NULL);
       }
-    } else {
-      /* No profile-level-id also means baseline */
-
-      gst_structure_set (new_s,
-          "profile", G_TYPE_STRING, "constrained-baseline", NULL);
     }

     gst_caps_merge_structure (caps, new_s);

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