GNOME Bugzilla – Bug 724414
rtmpsrc: Can't play live streams
Last modified: 2014-02-20 10:46:18 UTC
Using "livestreamer" I can watch a live RTMP stream (seems to use vlc to do the streaming by default). URL: https://github.com/chrippa/livestreamer $ livestreamer -j euronews.com best -l debug { "params": { "swfUrl": "http://euronews.com/media/player_live_1_14.swf", "live": true, "playpath": "fr_video750_rtp.sdp", "rtmp": "rtmp://fr-par-10-stream-relay.hexaglobe.net/rtpeuronewslive/" }, "type": "rtmp" } $ livestreamer -j euronews.com will start the playback Trying to play that same stream fails: $ gst-play-1.0 "rtmp://fr-par-10-stream-relay.hexaglobe.net/rtpeuronewslive/fr_video750_rtp.sdp playpath=fr_video750_rtp.sdp swfVfy=1 swfUrl=http://euronews.com/media/player_live_1_14.swf live=1" Now playing rtmp://fr-par-10-stream-relay.hexaglobe.net/rtpeuronewslive/fr_video750_rtp.sdp playpath=fr_video750_rtp.sdp swfVfy=1 swfUrl=http://euronews.com/media/player_live_1_14.swf live=1 Prerolling... (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed Redistribute latency... (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_ref: assertion 'mini_object != NULL' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_intersect_full: assertion 'GST_IS_CAPS (caps1)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed (gst-play-1.0:27936): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object != NULL' failed ERROR Internal data flow error. for rtmp://fr-par-10-stream-relay.hexaglobe.net/rtpeuronewslive/fr_video750_rtp.sdp playpath=fr_video750_rtp.sdp swfVfy=1 swfUrl=http://euronews.com/media/player_live_1_14.swf live=1 ERROR debug information: gstbasesrc.c(2865): gst_base_src_loop (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0/GstRTMPSrc:source: streaming task paused, reason not-negotiated (-4) Reached end of play list.
I just tried with latest git and it worked for me. Can you still reproduce with latest git? Do can you provide a GST_DEBUG=6 debug log or a backtrace for those assertions? Thanks
Not sure what state my system was in, but I'm guessing newer GStreamer with everything else old. Plays back fine in against master and the latest 1.2 releases, thanks.