[Live-devel] liveProxy handling of a failed SETUP command

Craig Matsuura cmatsuura at vivint.com
Wed Jul 29 13:12:52 PDT 2015


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 at 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 <live-devel-bounces at ns.live555.com> on behalf of Ross Finlayson <finlayson at live555.com>
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/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20150729/46abf964/attachment.html>


More information about the live-devel mailing list