Ross,
Below is the output of the live55ProxyServer.
Here is what happens when the rtsp server we are connecting to fails on the
SETUP (returns a 400) when the proxy is trying to connect and play.
I have a rtspserver at 192.168.5.104 on port 9554. The first time I connect the
SETUP fails, the second time I connect I get a segfault.
OPTION succeed so you can not count on the OPTION liveness to recover this
situation. We choose to handle and error on SETUP doing the DESCRIBE again. The
second time the SETUP succeeds and all is good. But wonder if there is a better
solution, I am using the latest code as of 2015.07.23.
============================ Output of live555proxyServer ====================
craig@craig-ThinkPad-W530:~/Downloads/live/proxyServer$ ./live555ProxyServer -V
rtsp://192.168.5.104:9554/Video
LIVE555 Proxy Server
(LIVE555 Streaming Media library version 2015.07.23)
Opening connection to 192.168.5.104, port 9554...
RTSP stream, proxying the stream "rtsp://192.168.5.104:9554/Video"
Play this stream using the URL: rtsp://192.168.5.105:8554/proxyStream
(We use port 8000 for optional RTSP-over-HTTP tunneling.)
...remote connection opened
Sending request: DESCRIBE rtsp://192.168.5.104:9554/Video RTSP/1.0
CSeq: 2
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2015.07.23)
Accept: application/sdp
Received 195 new bytes of response data.
Have received 195 total bytes of a DESCRIBE RTSP response; awaiting 193 bytes
more.
Received 193 new bytes of response data.
Received a complete DESCRIBE response:
RTSP/1.0 200 OK
Server: PanelCam/1.0 Python/3.4.0
Date: Wed, 29 Jul 2015 20:01:35 GMT
Cseq: 2
Content-Type: application/sdp
Content-Base: rtsp://192.168.5.104:9554/Video
Content-Length: 193
v=0
o=- 1188340656180883 1 IN IP4 192.168.5.104
s=Session streamed by GStreamer
i=server.sh
t=0 0
a=tool:GStreamer
a=type:broadcast
m=video 5000 RTP/AVP 96
c=IN IP4 192.168.5.104
a=rtpmap:96 H264/90000
ProxyServerMediaSession["rtsp://192.168.5.104:9554/Video"] added new
"ProxyServerMediaSubsession" for RTP/video/H264 track
Sending request: OPTIONS rtsp://192.168.5.104:9554/Video RTSP/1.0
CSeq: 3
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2015.07.23)
Received 150 new bytes of response data.
Received a complete OPTIONS response:
RTSP/1.0 200 OK
Server: PanelCam/1.0 Python/3.4.0
Date: Wed, 29 Jul 2015 20:02:17 GMT
Cseq: 3
Public: OPTIONS, DESCRIBE, PLAY, SETUP, TEARDOWN
Sending request: OPTIONS rtsp://192.168.5.104:9554/Video RTSP/1.0
CSeq: 4
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2015.07.23)
Received 150 new bytes of response data.
Received a complete OPTIONS response:
RTSP/1.0 200 OK
Server: PanelCam/1.0 Python/3.4.0
Date: Wed, 29 Jul 2015 20:02:52 GMT
Cseq: 4
Public: OPTIONS, DESCRIBE, PLAY, SETUP, TEARDOWN
ProxyServerMediaSubsession["H264"]::createNewStreamSource(session id 0)
Initiated: ProxyServerMediaSubsession["H264"]
ProxyServerMediaSubsession["H264"]::createNewRTPSink()
ProxyServerMediaSubsession["H264"]::closeStreamSource()
ProxyServerMediaSubsession["H264"]::createNewStreamSource(session id 760553905)
Sending request: SETUP rtsp://192.168.5.104:9554/Video/ RTSP/1.0
CSeq: 5
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2015.07.23)
Transport: RTP/AVP;unicast;client_port=5000-5001
ProxyServerMediaSubsession["H264"]::createNewRTPSink()
Received 181 new bytes of response data.
Have received 181 total bytes of a SETUP RTSP response; awaiting 462 bytes more.
Received 462 new bytes of response data.
Received a complete SETUP response:
RTSP/1.0 400 Resource Busy
Server: PanelCam/1.0 Python/3.4.0
Date: Wed, 29 Jul 2015 20:02:58 GMT
Content-Type: text/html;charset=utf-8
Connection: close
Content-Length: 462
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<title>Error response</title>
</head>
<body>
<h1>Error response</h1>
<p>Error code: 400</p>
<p>Message: Resource Busy.</p>
<p>Error code explanation: 400 - Bad request syntax or unsupported
method.</p>
</body>
</html>
ProxyServerMediaSubsession["H264"]::closeStreamSource()
Opening connection to 192.168.5.104, port 9554...
...remote connection opened
Sending request: OPTIONS rtsp://192.168.5.104:9554/Video RTSP/1.0
CSeq: 6
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2015.07.23)
Received 150 new bytes of response data.
Received a complete OPTIONS response:
RTSP/1.0 200 OK
Server: PanelCam/1.0 Python/3.4.0
Date: Wed, 29 Jul 2015 20:03:22 GMT
Cseq: 6
Public: OPTIONS, DESCRIBE, PLAY, SETUP, TEARDOWN
Sending request: OPTIONS rtsp://192.168.5.104:9554/Video RTSP/1.0
CSeq: 7
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2015.07.23)
Received 150 new bytes of response data.
Received a complete OPTIONS response:
RTSP/1.0 200 OK
Server: PanelCam/1.0 Python/3.4.0
Date: Wed, 29 Jul 2015 20:03:52 GMT
Cseq: 7
Public: OPTIONS, DESCRIBE, PLAY, SETUP, TEARDOWN
Sending request: OPTIONS rtsp://192.168.5.104:9554/Video RTSP/1.0
CSeq: 8
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2015.07.23)
Received 150 new bytes of response data.
Received a complete OPTIONS response:
RTSP/1.0 200 OK
Server: PanelCam/1.0 Python/3.4.0
Date: Wed, 29 Jul 2015 20:04:22 GMT
Cseq: 8
Public: OPTIONS, DESCRIBE, PLAY, SETUP, TEARDOWN
ProxyServerMediaSubsession["H264"]::createNewStreamSource(session id 2192885553)
ProxyRTSPClient["rtsp://192.168.5.104:9554/Video"]: lost connection to server
('errno': 115). Resetting...
ProxyServerMediaSubsession["H264"]::~ProxyServerMediaSubsession()
Opening connection to 192.168.5.104, port 9554...
Segmentation fault (core dumped)
Thanks,
Craig
________________________________
From: live-devel <[email protected]> on behalf of Ross
Finlayson <[email protected]>
Sent: Monday, July 27, 2015 2:37 PM
To: LIVE555 Streaming Media - development & use
Subject: Re: [Live-devel] liveProxy handling of a failed SETUP command
One thing I learned (the hard way) from wasting too much time on the numerous
questions that you posted a year or so ago is that it's better not to try to
answer the question that you're asking, but instead try to address the *actual
problem* that you're seeing. (It's better for me, rather than you, to try to
diagnose whatever problem you're having.)
So, could you please tell us what specific problem you're having with the proxy
server - by posting the diagnostic output that you see when you run it with the
"-V" option?
Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
_______________________________________________
live-devel mailing list
[email protected]
http://lists.live555.com/mailman/listinfo/live-devel