GNOME Bugzilla – Bug 589983
gst-rtsp-server with quicktime issue
Last modified: 2009-08-03 11:50:57 UTC
I am using gst-rtsp-server as the streaming server and quicktime as the streaming client.I setted up the port of gst-rtsp-server as port 80 and setup the transport method of client as tcp(for getting http tuennling). In my first attempt, it got segfault.After that for each time,it will try for tcp connection for the first few minutes and then fall down to udp transport.and getting the error messages like lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_source_add_poll: assertion `!SOURCE_DESTROYED (source)' failed follwing the gdb output of this, ** Message: listening on port 80 ** Message: added new client 0x9e932f0 ip 114.143.222.36:51080 ** Message: attaching to context 0x9e90248 ** Message: client 0x9e932f0: tunnel start ** Message: client 0x9e932f0: inserting Z7kJwAukAAAM+S8KD4AAAA ** Message: added new client 0x9e93320 ip 114.143.222.36:51336 ** Message: attaching to context 0x9e90248 ** Message: client 0x9e93320: tunnel complete ** Message: client 0x9e93320: found tunnel 0x9e932f0 ** Message: finalize client 0x9e93320 RTSP request message 0x9f8108c request line: method: 'DESCRIBE' uri: 'rtsp://carinov.dyndns.biz:80/test.mp4' version: '1.0' headers: key: 'CSeq', value: '1' key: 'Accept', value: 'application/sdp' key: 'Bandwidth', value: '384000' key: 'Accept-Language', value: 'en-US' key: 'User-Agent', value: 'QuickTime/7.6.2 (qtver=7.6.2;os=Windows NT 5.2Service Pack 2)' body: ** Message: client 0x9e932f0: received a request ** Message: found media 0x9eb8c40 for url abspath /test.mp4 ** Message: enter mainloop ** Message: found stream 0 with payloader 0x9fbb0e8 ** Message: found stream 1 with payloader 0x9fbf0d0 ** Message: constructed media 0x9fc4000 for url /test.mp4 ** Message: preparing media 0x9fc4000 ** Message: 0x9fc4000: got message type tag ** Message: 0x9fc4000: got message type tag ** Message: 0x9fc4000: got message type tag ** Message: stream 0x9fc4f58 received caps 0xa016080, application/x-rtp, media=(string)audio, clock-rate=(int)8000, encoding-name=(string)MPEG4-GENERIC, encoding-params=(string)1, streamtype=(string)5, profile-level-id=(string)1, mode=(string)AAC-hbr, config=(string)0d88, sizelength=(string)13, indexlength=(string)3, indexdeltalength=(string)3, ssrc=(guint)756170000, payload=(int)97, clock-base=(guint)1685296378, seqnum-base=(guint)23693 ** Message: stream 0x9fc4f58 received caps 0xa016080, application/x-rtp, media=(string)audio, clock-rate=(int)8000, encoding-name=(string)MPEG4-GENERIC, encoding-params=(string)1, streamtype=(string)5, profile-level-id=(string)1, mode=(string)AAC-hbr, config=(string)0d88, sizelength=(string)13, indexlength=(string)3, indexdeltalength=(string)3, ssrc=(guint)756170000, payload=(int)97, clock-base=(guint)1685296378, seqnum-base=(guint)23693 ** Message: stream 0x9fc3e00 received caps 0xa005380, application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)1, config=(string)000001b001000001b58913000001000000012000c48d8800f50a041e1463, ssrc=(guint)870141718, payload=(int)96, clock-base=(guint)2264805768, seqnum-base=(guint)45259 ** Message: stream 0x9fc3e00 received caps 0xa005380, application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)1, config=(string)000001b001000001b58913000001000000012000c48d8800f50a041e1463, ssrc=(guint)870141718, payload=(int)96, clock-base=(guint)2264805768, seqnum-base=(guint)45259 ** Message: 0x9fc4000: got message type async-done ** Message: stats: position 0:00:00.000000000, duration 0:00:31.533333333 ** Message: object 0x9fc4000 is prerolled RTSP response message 0xbf899fa0 status line: code: '200' reason: 'OK' version: '1.0' headers: key: 'CSeq', value: '1' key: 'Content-Type', value: 'application/sdp' key: 'Content-Base', value: 'rtsp://carinov.dyndns.biz:80/test.mp4/' key: 'Server', value: 'GStreamer RTSP server' body: length 577 00000000 (0xa026418): 76 3d 30 0d 0a 6f 3d 2d 20 31 31 38 38 33 34 30 v=0..o=- 1188340 00000010 (0xa026428): 36 35 36 31 38 30 38 38 33 20 31 20 49 4e 20 49 656180883 1 IN I 00000020 (0xa026438): 50 34 20 31 32 37 2e 30 2e 30 2e 31 0d 0a 73 3d P4 127.0.0.1..s= 00000030 (0xa026448): 53 65 73 73 69 6f 6e 20 73 74 72 65 61 6d 65 64 Session streamed 00000040 (0xa026458): 20 77 69 74 68 20 47 53 74 72 65 61 6d 65 72 0d with GStreamer. 00000050 (0xa026468): 0a 69 3d 72 74 73 70 2d 73 65 72 76 65 72 0d 0a .i=rtsp-server.. 00000060 (0xa026478): 65 3d 4e 4f 4e 45 0d 0a 74 3d 30 20 30 0d 0a 61 e=NONE..t=0 0..a 00000070 (0xa026488): 3d 74 6f 6f 6c 3a 47 53 74 72 65 61 6d 65 72 0d =tool:GStreamer. 00000080 (0xa026498): 0a 61 3d 74 79 70 65 3a 62 72 6f 61 64 63 61 73 .a=type:broadcas 00000090 (0xa0264a8): 74 0d 0a 61 3d 72 61 6e 67 65 3a 6e 70 74 3d 30 t..a=range:npt=0 000000a0 (0xa0264b8): 2e 30 30 30 30 30 30 2d 33 31 2e 35 33 33 33 33 .000000-31.53333 000000b0 (0xa0264c8): 33 0d 0a 6d 3d 76 69 64 65 6f 20 30 20 52 54 50 3..m=video 0 RTP 000000c0 (0xa0264d8): 2f 41 56 50 20 39 36 0d 0a 63 3d 49 4e 20 49 50 /AVP 96..c=IN IP 000000d0 (0xa0264e8): 34 20 31 32 37 2e 30 2e 30 2e 31 0d 0a 61 3d 72 4 127.0.0.1..a=r 000000e0 (0xa0264f8): 74 70 6d 61 70 3a 39 36 20 4d 50 34 56 2d 45 53 tpmap:96 MP4V-ES 000000f0 (0xa026508): 2f 39 30 30 30 30 0d 0a 61 3d 63 6f 6e 74 72 6f /90000..a=contro 00000100 (0xa026518): 6c 3a 73 74 72 65 61 6d 3d 30 0d 0a 61 3d 66 6d l:stream=0..a=fm 00000110 (0xa026528): 74 70 3a 39 36 20 70 72 6f 66 69 6c 65 2d 6c 65 tp:96 profile-le 00000120 (0xa026538): 76 65 6c 2d 69 64 3d 31 3b 63 6f 6e 66 69 67 3d vel-id=1;config= 00000130 (0xa026548): 30 30 30 30 30 31 62 30 30 31 30 30 30 30 30 31 000001b001000001 00000140 (0xa026558): 62 35 38 39 31 33 30 30 30 30 30 31 30 30 30 30 b589130000010000 00000150 (0xa026568): 30 30 30 31 32 30 30 30 63 34 38 64 38 38 30 30 00012000c48d8800 00000160 (0xa026578): 66 35 30 61 30 34 31 65 31 34 36 33 0d 0a 6d 3d f50a041e1463..m= 00000170 (0xa026588): 61 75 64 69 6f 20 30 20 52 54 50 2f 41 56 50 20 audio 0 RTP/AVP 00000180 (0xa026598): 39 37 0d 0a 63 3d 49 4e 20 49 50 34 20 31 32 37 97..c=IN IP4 127 00000190 (0xa0265a8): 2e 30 2e 30 2e 31 0d 0a 61 3d 72 74 70 6d 61 70 .0.0.1..a=rtpmap 000001a0 (0xa0265b8): 3a 39 37 20 4d 50 45 47 34 2d 47 45 4e 45 52 49 :97 MPEG4-GENERI 000001b0 (0xa0265c8): 43 2f 38 30 30 30 2f 31 0d 0a 61 3d 63 6f 6e 74 C/8000/1..a=cont 000001c0 (0xa0265d8): 72 6f 6c 3a 73 74 72 65 61 6d 3d 31 0d 0a 61 3d rol:stream=1..a= 000001d0 (0xa0265e8): 66 6d 74 70 3a 39 37 20 73 74 72 65 61 6d 74 79 fmtp:97 streamty 000001e0 (0xa0265f8): 70 65 3d 35 3b 70 72 6f 66 69 6c 65 2d 6c 65 76 pe=5;profile-lev 000001f0 (0xa026608): 65 6c 2d 69 64 3d 31 3b 6d 6f 64 65 3d 41 41 43 el-id=1;mode=AAC 00000200 (0xa026618): 2d 68 62 72 3b 63 6f 6e 66 69 67 3d 30 64 38 38 -hbr;config=0d88 00000210 (0xa026628): 3b 73 69 7a 65 6c 65 6e 67 74 68 3d 31 33 3b 69 ;sizelength=13;i 00000220 (0xa026638): 6e 64 65 78 6c 65 6e 67 74 68 3d 33 3b 69 6e 64 ndexlength=3;ind 00000230 (0xa026648): 65 78 64 65 6c 74 61 6c 65 6e 67 74 68 3d 33 0d exdeltalength=3. 00000240 (0xa026658): 0a . ** Message: client 0x9e932f0: sent a message with cseq 1 RTSP request message 0x9f8108c request line: method: 'SETUP' uri: 'rtsp://carinov.dyndns.biz:80/test.mp4/stream=0' version: '1.0' headers: key: 'CSeq', value: '2' key: 'Transport', value: 'RTP/AVP/TCP;unicast' key: 'User-Agent', value: 'QuickTime/7.6.2 (qtver=7.6.2;os=Windows NT 5.2Service Pack 2)' key: 'Accept-Language', value: 'en-US' body: ** Message: client 0x9e932f0: received a request ** Message: reusing cached media 0x9fc4000 ** Message: manage new media 0x9fc4000 in session 0xa024b00 RTSP response message 0xbf899f84 status line: code: '200' reason: 'OK' version: '1.0' headers: key: 'CSeq', value: '2' key: 'Transport', value: 'RTP/AVP/TCP;unicast;mode="PLAY"' key: 'Server', value: 'GStreamer RTSP server' key: 'Session', value: 'bgowkmunwcfmclti' body: length 0 ** Message: client 0x9e932f0: sent a message with cseq 2 RTSP request message 0x9f8108c request line: method: 'SETUP' uri: 'rtsp://carinov.dyndns.biz:80/test.mp4/stream=1' version: '1.0' headers: key: 'CSeq', value: '3' key: 'Transport', value: 'RTP/AVP/TCP;unicast' key: 'Session', value: 'bgowkmunwcfmclti' key: 'User-Agent', value: 'QuickTime/7.6.2 (qtver=7.6.2;os=Windows NT 5.2Service Pack 2)' key: 'Accept-Language', value: 'en-US' body: ** Message: client 0x9e932f0: received a request ** Message: watching session 0x9ff7390 RTSP response message 0xbf899f84 status line: code: '200' reason: 'OK' version: '1.0' headers: key: 'CSeq', value: '3' key: 'Transport', value: 'RTP/AVP/TCP;unicast;mode="PLAY"' key: 'Server', value: 'GStreamer RTSP server' key: 'Session', value: 'bgowkmunwcfmclti' body: length 0 ** Message: client 0x9e932f0: sent a message with cseq 3 RTSP request message 0x9f8108c request line: method: 'PLAY' uri: 'rtsp://carinov.dyndns.biz:80/test.mp4' version: '1.0' headers: key: 'CSeq', value: '4' key: 'Range', value: 'npt=0.000000-31.533333' key: 'Session', value: 'bgowkmunwcfmclti' key: 'User-Agent', value: 'QuickTime/7.6.2 (qtver=7.6.2;os=Windows NT 5.2Service Pack 2)' body: ** Message: client 0x9e932f0: received a request ** Message: seeking to 99:99:99.999999999 - 0:00:31.533332824 ** Message: done seeking 1 ** Message: prerolled again ** Message: stats: position 0:00:01.000000000, duration 0:00:31.533333333 RTSP response message 0xbf899f68 status line: code: '200' reason: 'OK' version: '1.0' headers: ** Message: 0x9fc4000: got message type async-done key: 'CSeq', value: '4' key: 'RTP-Info', value: 'url=rtsp://carinov.dyndns.biz:80/test.mp4/stream=0;seq=45266;rtptime=2264805768, url=rtsp://carinov.dyndns.biz:80/test.mp4/stream=1;seq=23694;rtptime=561595494' key: 'Range', value: 'npt=1.000000-31.533333' key: 'Server', value: 'GStreamer RTSP server' key: 'Session', value: 'bgowkmunwcfmclti' body: length 0 ** Message: going to state PLAYING media 0x9fc4000 ** Message: adding TCP 114.143.222.36 ** Message: adding TCP 114.143.222.36 ** Message: active 2 media 0x9fc4000 ** Message: state PLAYING media 0x9fc4000 ** Message: 0x9fc4000: got message type new-clock ** Message: client 0x9e932f0: sent a message with cseq 4 ** Message: client 0x9e932f0: received an error System error: Connection reset by peer ** Message: finalize client 0x9e932f0 (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_source_add_poll: assertion `!SOURCE_DESTROYED (source)' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (lt-test-mp4:21190): GLib-CRITICAL **: g_async_queue_push: assertion `queue' failed (gdb) thread apply all bt
+ Trace 216660
oho, i got segmentation fault once again.i will paste the gdb tracking of "thread apply all bt"
Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb4193b90 (LWP 10359)] IA__g_async_queue_push (queue=<value optimized out>, data=<value optimized out>) at gasyncqueue.c:222 222 g_return_if_fail (g_atomic_int_get (&queue->ref_count) > 0); (gdb) n [Stepped over thread exit] Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists. (gdb) thread apply all bt No registers.
THE BACKTRACE with gdb Program received signal SIGSEGV, Segmentation fault.
+ Trace 216662
Thread 3022171024 (LWP 11391)
(gdb) thread apply all bt
+ Trace 216663
Thread 8 (Thread 0xb422ab90 (LWP 11391))
Thread 1 (Thread 0xb8032710 (LWP 11315))
should be fixed in git with this commit: commit 7338ab81e1ffb5ddf600fa15ff06bc8a7736057b Author: Wim Taymans <wim.taymans@collabora.co.uk> Date: Mon Jul 27 19:42:44 2009 +0200 rtsp: allocate channels in TCP mode When the client does not provide us with channels in TCP mode, allocate channels ourselves.
*** Bug 585324 has been marked as a duplicate of this bug. ***
*** Bug 589606 has been marked as a duplicate of this bug. ***
*** Bug 589838 has been marked as a duplicate of this bug. ***