[Live-devel] stream descriptor only reachable by HTTP

Ross Finlayson finlayson at live555.com
Thu Jan 17 16:37:10 PST 2013


> I have an RTP source where it’s stream descriptor is only available via HTTP – any advice on how to go about it?
[...]
> Browser output:
>  
> v=0
> o=- 8161451 8161451 IN IP4 10.0.70.25
> s=ESP H264 STREAM
> e=NONE
> t=0 0
> m=video 8800 RTP/AVP 96
> c=IN IP4 10.0.71.24
> a=rtpmap:96 H264/90000
> a=fmtp:96 media=video; clock-rate=90000; encoding-name=H264; sprop-parameter-sets=Z0IAH6aAUAW5AA==,aM44gAAAAAA=

Grumble....  I wish people (in this case, the developers of that server) would stop thinking that they can avoid implementing RTSP.  The RTSP protocol was designed and standardized for a good reason!  Generally speaking, trying to specify a stream using a SDP description only - without using the RTSP protocol - works only for multicast streams, not unicast streams like this.

But what *might* work here is the following:
1/ Call "MediaSession::createNew()" with this SDP description (string) as parameter, to create a new "MediaSession" object.
2/ Call "MediaSession::initiate()" on this "MediaSession" object.  This will create a "RTPSource" (and corresponding "RTCPInstance") objects, to receive the stream.
3/ Then, iterate through the "MediaSubsession" objects (there should be just one) of the "MediaSession" object, and call
	yourMediaSinkObject->startPlaying(*(subsession->readSource()), <etc>);

One potential issue here is that - using this approach - RTCP "RR" packets from you (the receiver) will not get sent back to the server (because the receiver - because it didn't use RTSP - has no way of knowing the server's IP address).  This means that if the server uses "RR" packets coming from the receiver to indicate 'liveness', then it will eventually time out the connection.

If you have any control over the server, it would be better if you told it to stream via multicast instead of unicast, or - even better - to implement RTSP!


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/20130117/deff18a6/attachment.html>


More information about the live-devel mailing list