[Live-devel] Require some info regarding live555

Ross Finlayson finlayson at live555.com
Fri Jan 6 07:06:57 PST 2012


> In the current Live555 source we have a sample application testMPEG2TransportStreamer
> which reads a MPEG Transport Stream file (named "test.ts"), and streams it, using RTP,
> to the multicast group 239.255.42.42, port 1234 and i can change the file also.
>  
> Now my question is how i can multicast the same file on multiple multicast addresses using the same
> application and how can i multicast other source (ts) files on multiple multicast addresses using the same
> application?

You can do this very easily - using the existing "testMPEG2TransportStreamer" code as a model.

For each multicast address that you want to send to, you:
	1/ create two "Groupsock" objects - one for RTP, the other for RTCP.  (The port number for RTP should be even; the next higher (i.e., odd) port number should be for RTCP.)
	2/ create a new "SimpleRTPSink" object from the RTP "Groupsock"
	3/ create a new "RTCPInstance" object from the RTCP "Groupsock"
	4/ create a new "ByteStreamFileSource" object (for the file that you want to read from)
	5/ create a new "MPEG2TransportStreamFramer" object (for the "ByteStreamFileSource" object that you created in step 4/)
	6/ call "startPlaying()" on the "SimpleRTPSink" object that you created in step 4/, taking, as parameter, the "MPEG2TransportStreamFramer" object that you created in step 5/

I.e., you do steps 1/ through 6/ for each file+multicast address that you want to stream.

Then (and only then), once you've done all this, you call
	env->taskScheduler().doEventLoop();
to enter the application's 'event loop' (which is where the actual streaming gets done).


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/20120106/e5ba1b05/attachment-0001.html>


More information about the live-devel mailing list