[FFmpeg-trac] #4264(undetermined:new): ffmpeg supposedly hangs if RTSP session id contains $ or +
FFmpeg
trac at avcodec.org
Thu Jul 30 02:03:24 CEST 2015
#4264: ffmpeg supposedly hangs if RTSP session id contains $ or +
-------------------------------------+-------------------------------------
Reporter: sebras | Owner:
Type: defect | Status: new
Priority: important | Component:
Version: unspecified | undetermined
Keywords: rtsp | Resolution:
deadlock | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Comment (by sebras):
I used gst-rtsp-server to reproduce this locally at my machine just now. I
made gst-rtsp-server unconditionally _always_ choose to emit Session-
headers starting with two dollar signs.
The Session header used when I got the backtrace was "$$8fytI8KQRmjSJ_". I
can see part of that in buf in frame 4 below. Should I be able to do that?
Now that I can reproduce this consistently I'm able to help out in
debugging this.
{{{
#0 0x00007ffff586153d in poll ()
#1 0x00000000005ccf7a in ff_network_wait_fd (write=0, fd=6)
at libavformat/network.c:78
#2 ff_network_wait_fd_timeout (fd=6, write=write at entry=0, timeout=0,
int_cb=int_cb at entry=0x7fffe4005810)
at libavformat/network.c:90
#3 0x0000000000620c55 in tcp_read (h=h at entry=0x7fffe40057e0,
buf=buf at entry=0x7fffea867c45 "", size=size at entry=971)
at libavformat/tcp.c:172
#4 0x000000000052efc8 in retry_transfer_wrapper (
transfer_func=0x620c30 <tcp_read>, size_min=1024, size=1024,
buf=0x7fffea867c10 "ytI8KQRmjSJ_\r\nDate: Wed, 29 Jul 2015 23:56:02
GMT\r\n\r\n", h=0x7fffe40057e0)
at libavformat/avio.c:306
#5 ffurl_read_complete (h=0x7fffe40057e0,
buf=buf at entry=0x7fffea867c10 "ytI8KQRmjSJ_\r\nDate: Wed, 29 Jul 2015
23:56:02 GMT\r\n\r\n", size=size at entry=1024)
at libavformat/avio.c:344
#6 0x000000000060712e in ff_rtsp_skip_packet (s=0x7fffe4005ca0)
at libavformat/rtsp.c:1123
#7 ff_rtsp_read_reply (s=s at entry=0x7fffe4005ca0,
reply=reply at entry=0x7fffea86a6e0, content_ptr=content_ptr at entry=0x0,
return_on_interleaved_data=return_on_interleaved_data at entry=0,
method=method at entry=0xe58e1a "SETUP")
at libavformat/rtsp.c:1163
#8 0x0000000000608833 in ff_rtsp_send_cmd_with_content (
send_content_length=0, send_content=0x0, content_ptr=0x0,
reply=0x7fffea86a6e0,
header=0x7fffea8696e0 "Transport:
RTP/AVP/UDP;unicast;client_port=17082-17083\r\n", url=0x7fffe4004e1c
"rtsp://127.0.0.1:8554/test/stream=0",
method=0xe58e1a "SETUP", s=0x7fffe4005ca0)
at libavformat/rtsp.c:1372
#9 ff_rtsp_send_cmd (content_ptr=0x0, reply=0x7fffea86a6e0,
headers=0x7fffea8696e0 "Transport:
RTP/AVP/UDP;unicast;client_port=17082-17083\r\n", url=0x7fffe4004e1c
"rtsp://127.0.0.1:8554/test/stream=0",
method=0xe58e1a "SETUP", s=0x7fffe4005ca0)
at libavformat/rtsp.c:1349
#10 ff_rtsp_make_setup_request (s=s at entry=0x7fffe4005ca0,
host=host at entry=0x7fffea86c420 "127.0.0.1", port=<optimized out>,
lower_transport=lower_transport at entry=0, real_challenge=0x0)
at libavformat/rtsp.c:1532
#11 0x0000000000609788 in ff_rtsp_connect (s=s at entry=0x7fffe4005ca0)
at libavformat/rtsp.c:1868
#12 0x000000000060bdb8 in rtsp_read_header (s=0x7fffe4005ca0)
at libavformat/rtspdec.c:726
#13 0x0000000000632bf3 in avformat_open_input (ps=ps at entry=0x7fffea86fc30,
filename=filename at entry=0x7ffff7f25c64 "rtsp://127.0.0.1:8554/test",
fmt=<optimized out>, options=0x19b9528 <format_opts>)
at libavformat/utils.c:470
#14 0x000000000047bf56 in read_thread (arg=0x7ffff7e24040)
at ffplay.c:2769
#15 0x00007ffff66ad2f8 in ?? ()
#16 0x00007ffff66efe99 in ?? ()
#17 0x00007ffff5b350a4 in start_thread (arg=0x7fffea870700)
#18 0x00007ffff586a07d in clone ()
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4264#comment:3>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list