[Live-devel] QuickTime does not work with proxyServer program

Ross Finlayson finlayson at live555.com
Thu Dec 27 09:50:27 PST 2012


> I'm trying to access a live RTSP stream from an AXIS camera through the RTSP proxy with the proxyServer program. So far no luck. It works just fine for VLC but not for QuickTime. The problem seems to be that RR packets are not treated the same way: with VLC the noteClientLiveness method is called so the client session does not timeout. With QuickTime noteClientLiveness is not called so after a few seconds I get the message "RTSP client session (id "6F559A12", stream name "proxyStream") has timed out (due to inactivity)". Find attached both logs in verbose and debug mode. Any ideas?

Hmm, you failed to mention that there are a lot of things different about your two client sessions - apart from just the media player application that they use.  

You are apparently running VLC on the same computer (192.168.0.26) on which you're running the "LIVE555 Proxy Server".  That's OK, but strange.

On the other hand, you are running QuickTime Player on a different computer: 192.168.0.28.  That's also OK (and not strange :-).  What *is* strange, however, is that QuickTime Player is requesting RTSP-over-HTTP streaming (using port 8000), even though it seems to be running on the same subnet as the proxy server, and therefore could probably just requested regular RTSP streaming instead.

The problem seems to be that - for some unknown reason (perhaps an incompatibility in the way that QuickTime Player implements RTSP-over-HTTP streaming?) - the QuickTime Player client is not sending periodic RTCP packets to indicate its liveness.

The quickest solution would be to stop your QuickTime Player client from requesting RTSP-over-HTTP streaming - something that it probably doesn't need to do.

Another solution (not recommended) would be to stop the proxy server from timing out clients due to inactivity.  You can do that by setting the "reclamationTestSeconds" parameter to 0 in the calls to "RTSPServer::createNew()" in "proxyServer/live555ProxyServer.cpp".  I.e., change the calls to
	RTSPServer::createNew(*env, rtspServerPortNum, authDB);
to
	RTSPServer::createNew(*env, rtspServerPortNum, authDB, 0);
(The disadvantage of this, however, is that TCP connections (and sockets) for clients that die without doing a RTSP "TEARDOWN" will stay around indefinitely, and eventually your proxy server will run out of sockets.)

The ideal solution would be fix whatever problem is causing QuickTime (when using RTSP-over-HTTP streaming) to apparently not send RTCP "RR" packets correctly.  Unfortunately we can't help you with this; however, you should make sure that QuickTime is up-to-date on this computer (which looks like it's running Windows XP).


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/20121228/1b30dde6/attachment.html>


More information about the live-devel mailing list