<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Ok, so I did a quick run of the
liveProxyServer. See 400 Bad Request below, this is when I
connect my RTSPClient to <a class="moz-txt-link-freetext" href="rtsp://172.16.10.100/proxyStream">rtsp://172.16.10.100/proxyStream</a> (The
client was gstreamer playbin2)<br>
<br>
root@custom:~# live555ProxyServer -V <a class="moz-txt-link-freetext" href="rtsp://172.16.10.109/live.s">rtsp://172.16.10.109/live.s</a><br>
dp<br>
LIVE555 Proxy Server<br>
(LIVE555 Streaming Media library version 2013.10.25)<br>
<br>
Opening connection to 172.16.10.109, port 554...<br>
RTSP stream, proxying the stream <a class="moz-txt-link-rfc2396E" href="rtsp://172.16.10.109/live.sdp">"rtsp://172.16.10.109/live.sdp"</a><br>
Play this stream using the URL:
<a class="moz-txt-link-freetext" href="rtsp://172.16.10.100/proxyStream">rtsp://172.16.10.100/proxyStream</a><br>
<br>
(We use port 80 for optional RTSP-over-HTTP tunneling.)<br>
...remote connection opened<br>
Sending request: DESCRIBE <a class="moz-txt-link-freetext" href="rtsp://172.16.10.109/live.sdp">rtsp://172.16.10.109/live.sdp</a> RTSP/1.0<br>
CSeq: 2<br>
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2013.10.25)<br>
Accept: application/sdp<br>
<br>
<br>
Received 509 new bytes of response data.<br>
Received a complete DESCRIBE response:<br>
RTSP/1.0 200 OK<br>
CSeq: 2<br>
Date: Sun, 3 Nov 2013 1:43:44 GMT<br>
Content-Base: <a class="moz-txt-link-freetext" href="rtsp://172.16.10.109/live.sdp/">rtsp://172.16.10.109/live.sdp/</a><br>
Content-Type: application/sdp<br>
Content-Length: 348<br>
<br>
v=0<br>
o=RTSP 1383443024 281 IN IP4 0.0.0.0<br>
s=RTSP server<br>
c=IN IP4 0.0.0.0<br>
t=0 0<br>
a=charset:Shift_JIS<br>
a=range:npt=0-<br>
a=control:*<br>
a=etag:1234567890<br>
m=video 0 RTP/AVP 98<br>
b=AS:0<br>
a=rtpmap:98 H264/90000<br>
a=control:trackID=1<br>
a=fmtp:98 packetization-mode=1; profile-level-id=64401f;
sprop-parameter-sets=J2RAH6wsagFAFumoKDAqAAAH0gAB1MAo,KO4EYsA=<br>
<br>
ProxyServerMediaSession[<a class="moz-txt-link-rfc2396E" href="rtsp://172.16.10.109/live.sdp/">"rtsp://172.16.10.109/live.sdp/"</a>] added
new "ProxyServerMediaSubsession" for RTP/video/H264 track<br>
<br>
Opening connection to 172.16.10.109, port 554...<br>
...remote connection opened<br>
Sending request: OPTIONS <a class="moz-txt-link-freetext" href="rtsp://172.16.10.109/live.sdp/">rtsp://172.16.10.109/live.sdp/</a> RTSP/1.0<br>
CSeq: 3<br>
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2013.10.25)<br>
<br>
<br>
Received 143 new bytes of response data.<br>
Received a complete OPTIONS response:<br>
RTSP/1.0 200 OK<br>
CSeq: 3<br>
Date: Sun, 3 Nov 2013 1:44:32 GMT<br>
Public: OPTIONS, DESCRIBE, PLAY, SETUP, GET_PARAMETER,
SET_PARAMETER, TEARDOWN<br>
<br>
ProxyServerMediaSubsession["H264"]::createNewStreamSource(session
id 0)<br>
Initiated: ProxyServerMediaSubsession["H264"]<br>
ProxyServerMediaSubsession["H264"]::createNewRTPSink()<br>
ProxyServerMediaSubsession["H264"]::closeStreamSource()<br>
ProxyServerMediaSubsession["H264"]::createNewStreamSource(session
id 4232835661)<br>
Opening connection to 172.16.10.109, port 554...<br>
ProxyServerMediaSubsession["H264"]::createNewRTPSink()<br>
...remote connection opened<br>
Sending request: SETUP <a class="moz-txt-link-freetext" href="rtsp://172.16.10.109/live.sdp/trackID=1">rtsp://172.16.10.109/live.sdp/trackID=1</a>
RTSP/1.0<br>
CSeq: 4<br>
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2013.10.25)<br>
Transport: RTP/AVP;unicast;client_port=60278-60279<br>
<br>
<br>
Received 37 new bytes of response data.<br>
<b>Received a complete SETUP response:</b><b><br>
</b><b>RTSP/1.0 400 Bad Request</b><b><br>
</b><b>CSeq: 4</b><b><br>
</b><br>
<br>
<br>
ProxyServerMediaSubsession["H264"]::closeStreamSource()<br>
ProxyServerMediaSubsession["H264"]::createNewStreamSource(session
id 468786568)<br>
Opening connection to 172.16.10.109, port 554...<br>
ProxyServerMediaSubsession["H264"]::createNewRTPSink()<br>
...remote connection opened<br>
Opening connection to 172.16.10.109, port 554...<br>
...remote connection opened<br>
Sending request: OPTIONS <a class="moz-txt-link-freetext" href="rtsp://172.16.10.109/live.sdp/">rtsp://172.16.10.109/live.sdp/</a> RTSP/1.0<br>
CSeq: 6<br>
User-Agent: ProxyRTSPClient (LIVE555 Streaming Media v2013.10.25)<br>
<br>
<br>
Received 143 new bytes of response data.<br>
Received a complete OPTIONS response:<br>
RTSP/1.0 200 OK<br>
CSeq: 6<br>
Date: Sun, 3 Nov 2013 1:45:26 GMT<br>
Public: OPTIONS, DESCRIBE, PLAY, SETUP, GET_PARAMETER,
SET_PARAMETER, TEARDOWN<br>
<br>
<br>
-----------<br>
<br>
<br>
I was looking into the RTSPClient code and in the <b>handleResponseBytes</b>(),
it does not a handle a 400 Bad request. Which maybe ideal when
not a proxy server. However in the case of<i> </i>being a proxy
server you would want to treat a failure such as a 400 as a
disconnect (I would think) and reconnect as if the liveness
responded with an error?<br>
<br>
As a test I modified handleResponseBytes() to call a virtual
function that I can override in the ProxyRTSPClient to handle 400
like a disconnect. As if the continueAfterLivenessCommand() was
called with a resultCode < 0. It sometimes recovers now, but
it causes problems with my RTSP Client and fails too. So I wait
for your guidence.<br>
<br>
Thanks,<br>
Craig<br>
<br>
<br>
<br>
On 11/03/2013 01:32 AM, Ross Finlayson wrote:<br>
</div>
<blockquote
cite="mid:CD11C909-1F24-4128-8A20-B59E89F5F941@live555.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
Please post an example of the diagnostic output from the
*unmodified* proxy server, when run with the back-end server that
causes you a problem. I.e., run the server with the "-V"
command-line option.
<div><br>
</div>
<div>(And, as always, make sure you're using the most up-to-date
version of the code.)<br>
<br>
<div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse:
separate; color: rgb(0, 0, 0); font-family: Helvetica;
font-style: normal; font-variant: normal; font-weight:
normal; letter-spacing: normal; line-height: normal;
orphans: 2; text-align: -webkit-auto; text-indent: 0px;
text-transform: none; white-space: normal; widows: 2;
word-spacing: 0px; -webkit-border-horizontal-spacing: 0px;
-webkit-border-vertical-spacing: 0px;
-webkit-text-decorations-in-effect: none;
-webkit-text-size-adjust: auto; -webkit-text-stroke-width:
0px; "><span class="Apple-style-span"
style="border-collapse: separate; color: rgb(0, 0, 0);
font-family: Helvetica; font-style: normal; font-variant:
normal; font-weight: normal; letter-spacing: normal;
line-height: normal; orphans: 2; text-align: -webkit-auto;
text-indent: 0px; text-transform: none; white-space:
normal; widows: 2; word-spacing: 0px;
-webkit-border-horizontal-spacing: 0px;
-webkit-border-vertical-spacing: 0px;
-webkit-text-decorations-in-effect: none;
-webkit-text-size-adjust: auto; -webkit-text-stroke-width:
0px; ">Ross Finlayson<br>
Live Networks, Inc.<br>
<a moz-do-not-send="true" href="http://www.live555.com/">http://www.live555.com/</a></span></span>
</div>
<br>
</div>
</blockquote>
<br>
</body>
</html>