[Live-devel] RTSP Client and multicast with AXIS cameras
Ross Finlayson
finlayson at live555.com
Wed Nov 2 10:02:18 PST 2005
>The first problem is in RTSPClient::setupMediaSubsession, when
>building the SETUP message: transportTypeStr =
>IsMulticastAddress(connectionAddress) ? ";multicast" : ";unicast";
>
>This line is not working well. The function IsMulticastAddress()
>recognizes the null direction in the sdp (c= IN IP4 0.0.0.0) as an
>unicast address and sends a unicast transmission SETUP, instead of a
>multicast SETUP. So, after the PLAY, the server starts streaming unicast.
>
>I added a bool parameter as input to the
>RTSPClient::setupMediaSubsession(.... ,bool useMulticast)
I have now installed a new version (2005.11.02a) of the code that
includes such a parameter. This (optional) parameter is called
"forceMulticastOnUnspecified"; see
"liveMedia/include/RTSPClient.hh". (Note that if you set this
parameter to True, then the previous parameters - "streamOutgoing"
and "streamUsingTCP" must be False.)
>Second problem: I've been loking at the new parsing of the
>"destination=" field. I dont understand why you are assigning it to
>the foundServerAddressStr variable.
This is just a hack - don't worry about it. (What actually ends up
getting set is the 'connection endpoint' address, which - for a
multicast stream - is the multicast address, not the address of the server.)
>I think you are missing also the port: field whis comes in the same
>message, and specifies the RTP/RTCP port pair for multicast. e.g.
>"port: 3456-3457".
Yes, I've now updated the "parseTransportResponse()" function to
recognize the "port=" field in the "Transport:" header (for multicast streams).
Ross Finlayson
Live Networks, Inc. (LIVE555.COM)
<http://www.live555.com/>
More information about the live-devel
mailing list