Hi,
I am trying to make Clementine play an internet radio that has a playlist URL that includes a long secret query string: http://some.radio.com/1fm/_definst_/1fm.stream/playlist.m3u8?_lsu_sa_=3935363f5cd ... e734b0ae2ddd2 I tried this in VLC (which does not use GStreamer of course), and it works. However, I would like to make it work on Clementine. On Clementine fora, it is suggested that the problem lies with GStreamer. For example, I tried using on Debian 9.5 (raplaced part of the string by ... for the sake of brevity here): ``` gst-launch-1.0 -v playbin uri=http://some.radio.com/1fm/_definst_/1fm.stream/playlist.m3u8?_lsu_sa_=3935363f5cd23e03e1...efc6c3e734b0ae2ddd2 ``` This results in the following output: ``` Setting pipeline to PAUSED ... Pipeline is PREROLLING ... /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: ring-buffer-max-size = 0 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: buffer-size = -1 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: buffer-duration = -1 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: use-buffering = false /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: download = false /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: uri = http://kong.kbskme.gscdn.com/1fm/_definst_/1fm.stream/playlist.m3u8?_lsu_sa_=3935363f5cd23e03e180773f3d01da3a63bf60922489c40a6814cf3be0043f69a8d23e0a3a13b5617cdd33b5c1bdd3a27a2bf587ac7386a4a2dd64b5f0fd89ccf55f2133a4013efc6c3e734b0ae2ddd2 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: connection-speed = 0 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: source = "\(GstSoupHTTPSrc\)\ source" /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0/GstTypeFindElement:typefindelement0.GstPad:src: caps = application/x-hls /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0/GstHLSDemux:hlsdemux0.GstPad:sink: caps = application/x-hls /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0/GstHLSDemux:hlsdemux0.GstPad:src_0: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0/GstQueue2:queue2-1.GstPad:sink: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0/GstQueue2:queue2-1.GstPad:src: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0.GstGhostPad:src_0: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0.GstGhostPad:sink.GstProxyPad:proxypad0: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0.GstGhostPad:sink.GstProxyPad:proxypad3: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0/GstTypeFindElement:typefind.GstPad:src: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0/GstTSDemux:tsdemux0.GstPad:sink: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0/GstTypeFindElement:typefind.GstPad:sink: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0.GstGhostPad:sink: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0.GstGhostPad:sink: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0.GstGhostPad:src_0.GstProxyPad:proxypad2: caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0/GstParseBin:parsebin0/GstAacParse:aacparse0.GstPad:sink: caps = audio/mpeg, mpegversion=(int)2, stream-format=(string)adts ``` But it stops after that. If I use playbin3, I get a single additiona line ``` buffering...0% ``` Anyone has an idea what is going on or what the required modifications might be to make Clementine work with this kind of URL ? Thanks!!! ``` -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Thu, 2019-01-17 at 23:47 -0600, diracsbracket wrote:
> Hi, > I am trying to make Clementine play an internet radio that has a > playlist > URL that includes a long secret query string: > > http://some.radio.com/1fm/_definst_/1fm.stream/playlist.m3u8?_lsu_sa_=3935363f5cd > ... e734b0ae2ddd2 > > I tried this in VLC (which does not use GStreamer of course), and it > works. > However, I would like to make it work on Clementine. On Clementine > fora, it > is suggested that the problem lies with GStreamer. > > For example, I tried using on Debian 9.5 (raplaced part of the string > by ... > for the sake of brevity here): > > ``` > gst-launch-1.0 -v playbin > uri= > http://some.radio.com/1fm/_definst_/1fm.stream/playlist.m3u8?_lsu_sa_=3935363f5cd23e03e1...efc6c3e734b0ae2ddd2 > ``` > > This results in the following output: > > ``` > Setting pipeline to PAUSED ... > Pipeline is PREROLLING ... > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: ring-buffer- > max-size > = 0 > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: buffer-size = > -1 > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: buffer- > duration = -1 > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: use-buffering > = false > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: download = > false > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: uri = > http://kong.kbskme.gscdn.com/1fm/_definst_/1fm.stream/playlist.m3u8?_lsu_sa_=3935363f5cd23e03e180773f3d01da3a63bf60922489c40a6814cf3be0043f69a8d23e0a3a13b5617cdd33b5c1bdd3a27a2bf587ac7386a4a2dd64b5f0fd89ccf55f2133a4013efc6c3e734b0ae2ddd2 > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: connection- > speed = 0 > /GstPlayBin3:playbin3-0/GstURISourceBin:urisourcebin0: source = > "\(GstSoupHTTPSrc\)\ source" > /GstPlayBin3:playbin3- > 0/GstURISourceBin:urisourcebin0/GstTypeFindElement:typefindelement0.G > stPad:src: > caps = application/x-hls > /GstPlayBin3:playbin3- > 0/GstURISourceBin:urisourcebin0/GstHLSDemux:hlsdemux0.GstPad:sink: > caps = application/x-hls > /GstPlayBin3:playbin3- > 0/GstURISourceBin:urisourcebin0/GstHLSDemux:hlsdemux0.GstPad:src_0: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3- > 0/GstURISourceBin:urisourcebin0/GstQueue2:queue2-1.GstPad:sink: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3- > 0/GstURISourceBin:urisourcebin0/GstQueue2:queue2-1.GstPad:src: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3- > 0/GstURISourceBin:urisourcebin0.GstGhostPad:src_0: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3- > 0.GstGhostPad:sink.GstProxyPad:proxypad0: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3- > 0/GstParseBin:parsebin0.GstGhostPad:sink.GstProxyPad:proxypad3: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3- > 0/GstParseBin:parsebin0/GstTypeFindElement:typefind.GstPad:src: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3- > 0/GstParseBin:parsebin0/GstTSDemux:tsdemux0.GstPad:sink: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3- > 0/GstParseBin:parsebin0/GstTypeFindElement:typefind.GstPad:sink: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3- > 0/GstParseBin:parsebin0.GstGhostPad:sink: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3-0.GstGhostPad:sink: > caps = > video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3- > 0/GstURISourceBin:urisourcebin0.GstGhostPad:src_0.GstProxyPad:proxypa > d2: > caps = video/mpegts, systemstream=(boolean)true, packetsize=(int)188 > /GstPlayBin3:playbin3-0/GstDecodebin3:decodebin3- > 0/GstParseBin:parsebin0/GstAacParse:aacparse0.GstPad:sink: > caps = audio/mpeg, mpegversion=(int)2, stream-format=(string)adts > ``` > > But it stops after that. If I use playbin3, I get a single additiona > line > > ``` > buffering...0% > ``` > > Anyone has an idea what is going on or what the required > modifications might > be to make Clementine work with this kind of URL ? > The streaming server might perform checks on the client (user-agent, referer or cookies). Can you set GST_DEBUG like this? GST_DEBUG_FILE=gst.log GST_DEBUG="3,soup*:6" gst-launch-1.0 ... And send the compressed gst.log file please. Philippe > Thanks!!! > ``` > > > > -- > Sent from: http://gstreamer-devel.966125.n4.nabble.com/ > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hi Philippe,
Many thanks for taking the time to look into this. I attached the gst.log file as you requested. Merci! gst.log <http://gstreamer-devel.966125.n4.nabble.com/file/t378649/gst.log> -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
In reply to this post by Philippe Normand
Hi,
So it's not a server-side issue it seems, HLS fragments are correctly downloaded but then the mpegts packetizer is unable to compute the PTS values to stream time. Philippe On Sat, 2019-01-19 at 03:57 -0600, diracsbracket wrote: > Hi Philippe, > Many thanks for taking the time to look into this. > > I attached the gst.log file as you requested. > > Merci! > > gst.log < > http://gstreamer-devel.966125.n4.nabble.com/file/t378649/gst.log> > > > > -- > Sent from: http://gstreamer-devel.966125.n4.nabble.com/ > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hi Philippe,
Thanks for showing how to get log files. The problem is clear from there, and it seems I should be looking in mpegtspacketizer.c or so. Since that one seems to be part of the gst-plugins-bad set, I suppose there is no point in submitting a bug report? -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Mon, 2019-01-21 at 07:09 -0600, diracsbracket wrote:
> Hi Philippe, > Thanks for showing how to get log files. The problem is clear from > there, > and it seems I should be looking > in mpegtspacketizer.c or so. > > Since that one seems to be part of the gst-plugins-bad set, I suppose > there > is no point in submitting a bug report? > Of course there is. gst-plugins-bad is not bad! Please file a bug report. If you can also, please attach a short sample which you could get with something like gst-launch-1.0 <uri> ! hlsdemux ! filesink location=stream.ts Philippe > > > -- > Sent from: http://gstreamer-devel.966125.n4.nabble.com/ > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Thank you Philippe.
I submitted a bug report: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/875 <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/875> Paul -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |