GNOME Bugzilla – Bug 736760
RTSP connection to IP camera failed
Last modified: 2018-01-24 09:27:58 UTC
In older GStreamer version (0.10) I can do the following and it works very well: gst-launch-0.10 playbin2 uri=rtsp://192.168.0.27/VideoInput/1/h264/1 If I do the same with current version (1.4.1) it failes very often: gst-launch-1.0 playbin uri=rtsp://192.168.0.27/VideoInput/1/h264/1 With 0.10 version it works very reliable. With 1.0 version it's very unreliable and only works sometimes. C:\>gst-launch-1.0 -v playbin uri=rtsp://192.168.0.27/VideoInput/1/h264/1 Setting pipeline to PAUSED ... /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: ring-buffer-max-size = 0 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: buffer-size = -1 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: buffer-duration = -1 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: use-buffering = false /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: download = false /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: uri = rtsp://192.168.0.27/VideoInput/1/h264/1 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: connection-speed = 0 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0: source = "\(GstRTSPSrc\)\ source" Pipeline is live and does not need PREROLL ... Progress: (open) Opening Stream Progress: (connect) Connecting to rtsp://192.168.0.27/VideoInput/1/h264/1 Progress: (open) Retrieving server options Progress: (open) Retrieving media info Progress: (request) SETUP stream 0 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager: latency = 2000 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager: ntp-sync = false /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager: use-pipeline-clock = false /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager: drop-on-latency = false /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager: buffer-mode = Slave receiver to sender clock /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc1: timeout = 5000000000 /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc1: caps = "application/x-rtp\,\ media\=\(string\)video\,\ payload \=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(string\)42E01E\,\ sprop-parameter-sets\=\(string\)\"Z0 LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc2: caps = application/x-rtcp Progress: (open) Opened Stream Setting pipeline to PLAYING ... /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager: buffer-mode = Slave receiver to sender clock New clock: GstSystemClock Progress: (request) Sending PLAY request /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc1.GstPad:src: caps = "application/x-rtp\,\ media\=\(string\)video \,\ payload\=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(string\)42E01E\,\ sprop-parameter-sets\=\(s tring\)\"Z0LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" Progress: (request) Sending PLAY request /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc1.GstPad:src: caps = "application/x-rtp\,\ media\=\(string\)video \,\ payload\=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(string\)42E01E\,\ sprop-parameter-sets\=\(s tring\)\"Z0LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" Progress: (request) Sent PLAY request /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager.GstGhostPad:recv_rtp_sink_0.GstProxyPad:proxypad0: caps = "appl ication/x-rtp\,\ media\=\(string\)video\,\ payload\=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(stri ng\)42E01E\,\ sprop-parameter-sets\=\(string\)\"Z0LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager/GstRtpSession:rtpsession0.GstPad:recv_rtp_src: caps = "applicat ion/x-rtp\,\ media\=\(string\)video\,\ payload\=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(string\) 42E01E\,\ sprop-parameter-sets\=\(string\)\"Z0LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager/GstRtpSsrcDemux:rtpssrcdemux0.GstPad:sink: caps = "application/ x-rtp\,\ media\=\(string\)video\,\ payload\=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(string\)42E0 1E\,\ sprop-parameter-sets\=\(string\)\"Z0LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager/GstRtpSession:rtpsession0.GstPad:recv_rtp_sink: caps = "applica tion/x-rtp\,\ media\=\(string\)video\,\ payload\=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(string\ )42E01E\,\ sprop-parameter-sets\=\(string\)\"Z0LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstRtpBin:manager.GstGhostPad:recv_rtp_sink_0: caps = "application/x-rtp\,\ media \=\(string\)video\,\ payload\=\(int\)96\,\ clock-rate\=\(int\)90000\,\ encoding-name\=\(string\)H264\,\ profile-level-id\=\(string\)42E01E\,\ sprop-pa rameter-sets\=\(string\)\"Z0LgHtoC0Em/8AEAAPEAAA4QAAK/IIQ\\\=\\\,aM4zyA\\\=\\\=\"" ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc1: Could not read from resource. Additional debug info: gstudpsrc.c(552): gst_udpsrc_create (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc1: get available bytes failed Execution ended after 0:00:00.135937675 Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... Freeing pipeline ... C:\> The device which I used here is a video encoder from Siqura. But I got the same problems with IP cameras from Sony and Siemens. They also worked very well in 0.10 version but not in 1.0. If it would help I could supply Wireshark capture files.
> get available bytes failed This is quite a strange error, can't think of a reason why this would ever fail, unless the socket was closed by accident or something. An strace log might be interesting. Having said that, any chance you could re-test with udpsrc from git master? The code that triggers the error doesn't exist any more in git master.
(In reply to comment #1) > > get available bytes failed > > This is quite a strange error, can't think of a reason why this would ever > fail, unless the socket was closed by accident or something. An strace log > might be interesting. > > Having said that, any chance you could re-test with udpsrc from git master? The > code that triggers the error doesn't exist any more in git master. I tried to use 'StraceNt' for Windows, but it seems that it doesn't work under Win7-64Bit. So here is a debug log from udpsrc: C:\>gst-launch-1.0 --gst-debug=udpsrc:9 playbin uri=rtsp://192.168.0.27/VideoInput/1/h264/1 Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... Progress: (open) Opening Stream Progress: (connect) Connecting to rtsp://192.168.0.27/VideoInput/1/h264/1 Progress: (op0e:n0)0 :R0e0t.r4i3e0v0i8n2g2 8s4e rve r4 4o9p2tion s 08B4C870 ProDgErBeUsGs : (ope n ) R e t r i e v i n g umdepdsirac ignsftou psrc.c:830:gst_udpsrc_open:<udpsrc0> allocating socket for 0.0.0.0:0 0:00:00.456899642 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:803:gst_udpsrc_resolve:<udpsrc0> IP address for host 0.0.0.0 is 0.0.0.0 0:00:00.466703019 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:843:gst_udpsrc_open:<udpsrc0> got socket 08D63250 0:00:00.475846836 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:850:gst_udpsrc_open:<udpsrc0> binding on port 0 0:00:00.484967921 4492 08B4C870 INFO udpsrc gstudpsrc.c:898:gst_udpsrc_open:<udpsrc0> setting udp buffer of 524288 bytes 0:00:00.494377466 4492 08B4C870 INFO udpsrc gstudpsrc.c:918:gst_udpsrc_open:<udpsrc0> have udp buffer of 524288 bytes 0:00:00.503818653 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:991:gst_udpsrc_open:<udpsrc0> bound, on port 59308 0:00:00.512933287 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:994:gst_udpsrc_open:<udpsrc0> notifying port 59308 0:00:00.522342218 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:830:gst_udpsrc_open:<udpsrc1> allocating socket for 0.0.0.0:59309 0:00:00.531949293 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:803:gst_udpsrc_resolve:<udpsrc1> IP address for host 0.0.0.0 is 0.0.0.0 0:00:00.541631940 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:843:gst_udpsrc_open:<udpsrc1> got socket 08D63360 0:00:00.550803406 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:850:gst_udpsrc_open:<udpsrc1> binding on port 59309 0:00:00.560287908 4492 08B4C870 INFO udpsrc gstudpsrc.c:918:gst_udpsrc_open:<udpsrc1> have udp buffer of 8192 bytes 0:00:00.569715579 4492 08B4C870 DEBUG udpsrc gstudpsrc.c:991:gst_udpsrc_open:<udpsrc1> bound, on port 59309 Progress: (request) SETUP stream 0 Progress: (open) Opened Stream Setting pipeline to PLAYING ... New c0:l00:00o.6c19k52:84 17G s t44S9y2s t 0e8mBC4lCo8c7k0 LOG P r ogr e s s : ( r e q u e s t )u dSpesnrdci nggs tPuLdApYs rrce.qcu:e1s0t6 :gst_udpsrc_unlock_stop:<udpsrc0> No longer flushing 0:00:00.646320278 4492 08B4C870 LOG udpsrc gstudpsrc.c:1062:gst_udpsrc_unlock_stop:<udpsrc1> No longer flushing 0:0P0r:o0g0r.e6s4s6:5 5(6r5e1q5u est) 4S4e9n2ding P L0A8YB 4rCeBqEu0e st LOG udpsrc gstudpsrc.c:425:gst_udpsrc_create:<udpsrc0> doing select, timeout 5000000 Pro0g:r0e0s:s0:0 .(6r5e5q9u9e6s4t7)3 Sent 4P4L9A2Y re q u e0s8tB CC08 LOG udpsrc gstudpsrc.c:425:gst_udpsrc_create:<udpsrc1> doing select, timeout -1 0:00:00.672511562 4492 08B4CBE0 WARN udpsrc gstudpsrc.c:552:gst_udpsrc_create:<udpsrc0> error: get available bytes failed ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc0: Could not read from resource. Additional debug info: gstudpsrc.c(552): gst_udpsrc_create (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc0: get available bytes failed Execution ended after 0:00:00.121490044 Setting pipeline to PAUSED ... Setting pipeline to READY ... 0:00:00.764446172 4492 08C9BDE0 LOG udpsrc gstudpsrc.c:1049:gst_udpsrc_unlock:<udpsrc0> Flushing 0:00:00.773431166 4492 08C9BDE0 LOG udpsrc gstudpsrc.c:1049:gst_udpsrc_unlock:<udpsrc0> Flushing 0:00:00.782349499 4492 08C9BDE0 LOG udpsrc gstudpsrc.c:1062:gst_udpsrc_unlock_stop:<udpsrc0> No longer flushing 0:00:00.791747063 4492 08C9BDE0 LOG udpsrc gstudpsrc.c:1049:gst_udpsrc_unlock:<udpsrc1> Flushing 0:00:00.800659559 4492 08B4CC08 DEBUG udpsrc gstudpsrc.c:545:gst_udpsrc_create: stop called 0:00:00.809598781 4492 08C9BDE0 LOG udpsrc gstudpsrc.c:1049:gst_udpsrc_unlock:<udpsrc1> Flushing 0:00:00.818550291 4492 08C9BDE0 LOG udpsrc gstudpsrc.c:1062:gst_udpsrc_unlock_stop:<udpsrc1> No longer flushing 0:00:00.828131562 4492 08C9BDE0 DEBUG udpsrc gstudpsrc.c:1071:gst_udpsrc_close: closing sockets 0:00:00.837343270 4492 08C9BDE0 DEBUG udpsrc gstudpsrc.c:1071:gst_udpsrc_close: closing sockets Setting pipeline to NULL ... Freeing pipeline ... How can I get udpsrc from git master? I think I have to compile it by myself? I tried something like this: git clone git://anongit.freedesktop.org/gstreamer/gstreamer git clone git://anongit.freedesktop.org/gstreamer/common git clone git://anongit.freedesktop.org/gstreamer/gst-plugins-base git clone git://anongit.freedesktop.org/gstreamer/gst-plugins-good I opened \gst-plugins-good\win32\vs8\gst-plugins-good.sln in VS2008, converted the projects and tried to build libgstudp.vcproj but it failed. Seems there are more dependencies e.g. glib? Can you please give me a hint how to compile the gstreamer libs for Windows? BTW: \gst-plugins-good\ChangeLog said: release 1.4.0 Did I really got the latest version? Sorry, but I never tried to build gstreamer by myself.
I have tested this issue with the current version 1.4.3 and the behaviour is the same. When it failed it looks like this: C:\>gst-launch-1.0 --gst-debug=udpsrc:5 playbin uri=rtsp://192.168.0.27/VideoInput/1/h264/1 Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... Progress: (open) Opening Stream Progress: (connect) Connecting to rtsp://192.168.0.27/VideoInput/1/h264/1 Progress: (open) Retrieving server options Progress: (open) Retrieving media info 0:00:00.437959225 6412 089F3870 DEBUG udpsrc gstudpsrc.c:830:gst_udpsrc_open:<udpsrc0> allocating socket for 0.0.0.0:0 0:00:00.442614833 6412 089F3870 DEBUG udpsrc gstudpsrc.c:803:gst_udpsrc_resolve:<udpsrc0> IP address for host 0.0.0.0 is 0.0.0.0 0:00:00.448094350 6412 089F3870 DEBUG udpsrc gstudpsrc.c:843:gst_udpsrc_open:<udpsrc0> got socket 08C26250 0:00:00.453338859 6412 089F3870 DEBUG udpsrc gstudpsrc.c:850:gst_udpsrc_open:<udpsrc0> binding on port 0 0:00:00.458379388 6412 089F3870 INFO udpsrc gstudpsrc.c:898:gst_udpsrc_open:<udpsrc0> setting udp buffer of 524288 bytes 0:00:00.463508083 6412 089F3870 INFO udpsrc gstudpsrc.c:918:gst_udpsrc_open:<udpsrc0> have udp buffer of 524288 bytes 0:00:00.468905577 6412 089F3870 DEBUG udpsrc gstudpsrc.c:991:gst_udpsrc_open:<udpsrc0> bound, on port 61278 0:00:00.473787898 6412 089F3870 DEBUG udpsrc gstudpsrc.c:994:gst_udpsrc_open:<udpsrc0> notifying port 61278 0:00:00.479158974 6412 089F3870 DEBUG udpsrc gstudpsrc.c:830:gst_udpsrc_open:<udpsrc1> allocating socket for 0.0.0.0:61279 0:00:00.484412085 6412 089F3870 DEBUG udpsrc gstudpsrc.c:803:gst_udpsrc_resolve:<udpsrc1> IP address for host 0.0.0.0 is 0.0.0.0 0:00:00.489748447 6412 089F3870 DEBUG udpsrc gstudpsrc.c:843:gst_udpsrc_open:<udpsrc1> got socket 08C26360 0:00:00.494682070 6412 089F3870 DEBUG udpsrc gstudpsrc.c:850:gst_udpsrc_open:<udpsrc1> binding on port 61279 0:00:00.499982182 6412 089F3870 INFO udpsrc gstudpsrc.c:918:gst_udpsrc_open:<udpsrc1> have udp buffer of 8192 bytes 0:00:00.505075550 6412 089F3870 DEBUG udpsrc gstudpsrc.c:991:gst_udpsrc_open:<udpsrc1> bound, on port 61279 Progress: (request) SETUP stream 0 Progress: (open) Opened Stream Setting pipeline to PLAYING ... New clock: GstSystemCl0o:c0k0 00.P5r3o4g2r2e9s7s0:0 (req u6e4s1t2) Se n d i0n8g9 FP3LCA0Y8 requWeAsRtN udpsrPcr oggsrteusdsp:s r(cr.ecq:u5e5s2t:)g sSte_nuddipnsgr cP_LcArYe arteeq:u<eusdtp rc0> error: get available bytes failed ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc0: Could not read from resource. Additional debug info: gstudpsrc.c(552): gst_udpsrc_create (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstRTSPSrc:source/GstUDPSrc:udpsrc0: get available bytes failed Execution ended after 0:00:00.039272072 Setting pipeline to PAUSED ... Setting pipeline to READY ... 0:00:00.584736057 6412 089F3BE0 DEBUG udpsrc gstudpsrc.c:545:gst_udpsrc_create: stop called 0:00:00.589723133 6412 08C21080 DEBUG udpsrc gstudpsrc.c:1071:gst_udpsrc_close: closing sockets 0:00:00.595206951 6412 08C21080 DEBUG udpsrc gstudpsrc.c:1071:gst_udpsrc_close: closing sockets Setting pipeline to NULL ... Freeing pipeline ... C:\> When I look at the debug output, for me it looks like some messages are damaged (starting with "New clock: GstSystemCl0o:c0k0"). Perhaps it's overwriting some memory by accident? When the connection succeeds it looks like this (I let it playing some seconds and then I closed the window): C:\>gst-launch-1.0 --gst-debug=udpsrc:5 playbin uri=rtsp://192.168.0.27/VideoInput/1/h264/1 Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... Progress: (open) Opening Stream Progress: (connect) Connecting to rtsp://192.168.0.27/VideoInput/1/h264/1 Progress: (open) Retrieving server options Progress: (open) Retrieving media info 0:00:00.436708616 4568 08A03870 DEBUG udpsrc gstudpsrc.c:830:gst_udpsrc_open:<udpsrc0> allocating socket for 0.0.0.0:0 0:00:00.441308313 4568 08A03870 DEBUG udpsrc gstudpsrc.c:803:gst_udpsrc_resolve:<udpsrc0> IP address for host 0.0.0.0 is 0.0.0.0 0:00:00.446668329 4568 08A03870 DEBUG udpsrc gstudpsrc.c:843:gst_udpsrc_open:<udpsrc0> got socket 08C36250 0:00:00.451446203 4568 08A03870 DEBUG udpsrc gstudpsrc.c:850:gst_udpsrc_open:<udpsrc0> binding on port 0 0:00:00.456311321 4568 08A03870 INFO udpsrc gstudpsrc.c:898:gst_udpsrc_open:<udpsrc0> setting udp buffer of 524288 bytes 0:00:00.461373661 4568 08A03870 INFO udpsrc gstudpsrc.c:918:gst_udpsrc_open:<udpsrc0> have udp buffer of 524288 bytes 0:00:00.466476244 4568 08A03870 DEBUG udpsrc gstudpsrc.c:991:gst_udpsrc_open:<udpsrc0> bound, on port 49318 0:00:00.471231691 4568 08A03870 DEBUG udpsrc gstudpsrc.c:994:gst_udpsrc_open:<udpsrc0> notifying port 49318 0:00:00.476656527 4568 08A03870 DEBUG udpsrc gstudpsrc.c:830:gst_udpsrc_open:<udpsrc1> allocating socket for 0.0.0.0:49319 0:00:00.481596909 4568 08A03870 DEBUG udpsrc gstudpsrc.c:803:gst_udpsrc_resolve:<udpsrc1> IP address for host 0.0.0.0 is 0.0.0.0 0:00:00.486881354 4568 08A03870 DEBUG udpsrc gstudpsrc.c:843:gst_udpsrc_open:<udpsrc1> got socket 08C36360 0:00:00.491761832 4568 08A03870 DEBUG udpsrc gstudpsrc.c:850:gst_udpsrc_open:<udpsrc1> binding on port 49319 0:00:00.496651218 4568 08A03870 INFO udpsrc gstudpsrc.c:918:gst_udpsrc_open:<udpsrc1> have udp buffer of 8192 bytes 0:00:00.501687139 4568 08A03870 DEBUG udpsrc gstudpsrc.c:991:gst_udpsrc_open:<udpsrc1> bound, on port 49319 Progress: (request) SETUP stream 0 Progress: (open) Opened Stream Setting pipeline to PLAYING ... New clock: GstSystemClock Progress: (request) Sending PLAY request Progress: (request) Sending PLAY request Progress: (request) Sent PLAY request Redistribute latency... ERROR: from element /GstPlayBin:playbin0/GstPlaySink:playsink/GstBin:vbin/GstD3DVideoSink:d3dvideosink0: Output window was closed Additional debug info: d3dhelpers.c(1824): d3d_render_buffer (): /GstPlayBin:playbin0/GstPlaySink:playsink/GstBin:vbin/GstD3DVideoSink:d3dvideosink0 Execution ended after 0:00:17.637897232 Setting pipeline to PAUSED ... Setting pipeline to READY ... 0:00:18.203069905 4568 0C92E150 DEBUG udpsrc gstudpsrc.c:545:gst_udpsrc_create: stop called 0:00:18.207525834 4568 08C31080 DEBUG udpsrc gstudpsrc.c:1071:gst_udpsrc_close: closing sockets 0:00:18.213302720 4568 08C31080 DEBUG udpsrc gstudpsrc.c:1071:gst_udpsrc_close: closing sockets Setting pipeline to NULL ... Freeing pipeline ... C:\>
I'm having the same issue, I tried a build from March 12th, 2015. Here's the output trying to open a rtsp stream. $ ./gst-launch-1.0.exe rtspsrc --gst-debug-level=3 location="rtsp:/ /192.168.1.8/rtsp_tunnel?h26x=4&line=1&inst=1" ! decodebin ! autovideosink WARNING: no real random source present! Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... Progress: (open) Opening Stream Progress: (connect) Connecting to rtsp://192.168.1.8/rtsp_tunnel?h26x=4&line=1&i nst=1 Progress: (open) Retrieving server options Progress: (open) Retrieving media info Progress: (request) SETUP stream 0 Progress: (open) Opened Stream Setting pipeline to PLAYING ... New clock: GstSyste0m:C0l0o:c0k0 48182P6r6o2g5r ess: 9(7r3e6ques t ) 0S9e2n8dEi5n8g0 PLAYF IrXeMqEu e s t P rdoegfraeuslst: g(srteuqtuielsst.)c :S3e7n0d9i:nggs tP_LpAaYd _rc erqeuaetset_ tream_idP_riongtreersnsa:l :(<rfeaqkueessrtc)0 :Ssernct> PLA YC rreeaqtuiensgt andom stream-id, consider implementing a deterministic way of creating a stream- id 0:00:00.492501753 9736 0928E5A8 WARN udpsrc gstudpsrc.c:650: gst_udpsrc_create:<udpsrc0> error: receive error -1: Error receiving message: An existing connection was forcibly closed by the remote host. 0:00:00.499083415 ERROR: from element /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0 /GstUDPSrc:udpsrc0: Could not read from resource. 9736Additional debug info: gstudpsrc.c(650): gst_udpsrc_create (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsr c0/GstUDPSrc:udpsrc0: receive error -1: Error receiving message: An existing connection was forcibly c losed by the remote host. 0E9x2e8cEu5tAi8o n enWdAeRdN a f t er 0 : 0 0 : 0 0 . 0 2 9 2 5 4b9a5s1e rc gSsettbtaisnegs rpci.pce:l2i9n4e3 :tgos tP_AbUaSsEeD_ s.r.c._ oop:<udpsrc0> error: Internal data flow error. 0:00:00.515551757 9736 0928E5A8 WARN basesrc gstbasesrc.c:294 3:gst_base_src_loop:<udpsrc0> error: streaming task paused, reason error (-5) Setting pipeline to READY ... Setting pipeline to NULL ... 0:00:00.522410523 9736 0928F9E0 WARN d3dvideosink d3dhelpers.c:109 7:d3d_set_window_handle:<autovideosink0-actual-sink-d3dvideo> Window HWND alread y set to: 0 0:00:00.532482543 9736 02DEA5B0 WARN rtspsrc gstrtspsrc.c:566 4:gst_rtspsrc_try_send:<rtspsrc0> receive interrupted 0:00:00.536554576 9736 02DEA5B0 WARN rtspsrc gstrtspsrc.c:725 5:gst_rtspsrc_close:<rtspsrc0> TEARDOWN interrupted Freeing pipeline ...
Now I'm using the latest version 1.4.5 and the issue is still the same. The error occurs with many IP-Cams from different vendors and only some models are working well (AXIS).
Not sure what to do about this, there isn't really much information to go on. However, the code that triggered the error is gone from udpsrc, so hopefully it's not a problem any more and/or has been fixed in the last few years. If it's still a problem with recent versions of GStreamer, please re-open or file a new bug, thanks!
I haven't seen the issue for a very long time and current version 1.12.4 is not affected anymore. So it seems that this bug is fixed meanwhile, thank you.