GNOME Bugzilla – Bug 676549
[icydemux] icydemux doesn't autoplug on master&0.11
Last modified: 2012-05-23 08:06:19 UTC
Patches are attached; the sample output with 'warning-if-setting-srcpad-caps-fails' one applied: $ gst-launch-1.0 --gst-debug=3 playbin uri=http://u16b.di.fm:80/di_ambient Setting pipeline to PAUSED ... Pipeline is PREROLLING ... 0:00:00.140571669 10141 0x2619b70 WARN GST_PADS gstpad.c:3432:gst_pad_peer_query:<typefindelement0:src> pad has no peer 0:00:00.768875073 10141 0x2619b70 WARN GST_PADS gstpad.c:3432:gst_pad_peer_query:<queue2-0:src> pad has no peer 0:00:00.775417927 10141 0x7f0adc0239e0 WARN icydemux gsticydemux.c:237:gst_icydemux_add_srcpad:<icydemux0> Failed to set caps on src pad 0:00:00.775472401 10141 0x7f0adc0239e0 WARN decodebin gstdecodebin2.c:1707:analyze_new_pad:<icydemux0:src> pad has ANY caps, not able to autoplug to anything 0:00:00.898384015 10141 0x2619b70 WARN basesrc gstbasesrc.c:2710:gst_base_src_loop:<source> error: Internal data flow error. 0:00:00.898422780 10141 0x2619b70 WARN basesrc gstbasesrc.c:2710:gst_base_src_loop:<source> error: streaming task paused, reason not-linked (-1) ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstSoupHTTPSrc:source: Internal data flow error. Additional debug info: gstbasesrc.c(2710): gst_base_src_loop (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstSoupHTTPSrc:source: streaming task paused, reason not-linked (-1) ERROR: pipeline doesn't want to preroll.
Created attachment 214645 [details] [review] supposed fix
Created attachment 214646 [details] [review] patch for warning
git tree: git://github.com/an146/gst-plugins-good.git
commit eba7494ab03f8a8e981e7b420071e0167ab41df8 Author: Anton Novikov <random.plant@gmail.com> Date: Tue May 22 12:35:04 2012 +0400 icydemux: warning if setting srcpad caps fails commit 6c31088adc2b8dcb7da3fb08c5ceb7977fcd9ae7 Author: Anton Novikov <random.plant@gmail.com> Date: Tue May 22 12:35:29 2012 +0400 icydemux: activate srcpad before setting caps Before gst_pad_set_active() is called, the pad has FLUSHING flag set, so setting the caps fails