After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 660275 - jpegdec doesn't implement upstream negotiation
jpegdec doesn't implement upstream negotiation
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal normal
: 0.10.31
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-09-27 18:29 UTC by Sjoerd Simons
Modified: 2011-10-10 21:40 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed patch (2.54 KB, patch)
2011-09-27 18:29 UTC, Sjoerd Simons
needs-work Details | Review

Description Sjoerd Simons 2011-09-27 18:29:31 UTC
Created attachment 197594 [details] [review]
Proposed patch

Example pipeline:
 gst-launch-0.10 v4l2src  ! jpegdec ! video/x-raw-yuv,width=1280,height=720,framerate=30/1 ! xvimagesink 

Works fine after the attched patch, fails to negotiate before
Comment 1 Sebastian Dröge (slomo) 2011-10-03 09:36:46 UTC
Review of attachment 197594 [details] [review]:

Looks good, please push after fixing these two comments:

::: ext/jpeg/gstjpegdec.c
@@ +785,3 @@
+    return gst_caps_ref (GST_PAD_CAPS (pad));
+
+  peer = gst_pad_get_peer (dec->srcpad);

You're leaking the peer here

@@ +805,3 @@
+
+    templ_caps = gst_pad_get_pad_template_caps (pad);
+    caps = gst_caps_intersect (peer_caps, templ_caps);

intersect_full (peer_caps, templ_caps, GST_CAPS_INTERSECT_FIRST) makes more sense here
Comment 2 Sjoerd Simons 2011-10-10 20:46:42 UTC
This problem has been fixed in the development version (with the comments in the review). The fix will be available in the next major software release. Thank you for your bug report.