[Live-devel] saving incoming RTP A/V stream as MPEG-2 transport stream

Ross Finlayson finlayson at live555.com
Wed Apr 17 23:59:31 PDT 2013


> Do I call [...]sink->startPlaying(

Yes, of course.  All LIVE555-based applications call "startPlaying()" on one or more 'sink' objects (subclasses of "MediaSink").  (For "testRTSPClient" and the "*Streamer" applications, this is done just before entering the event loop; for the RTSP server applications, this is done when handling an event within the event loop.)

The big difference between "testRTSPClient" and your proposed application is that "testRTSPClient" creates several "DummySink" objects (one for each subsession), and calls "startPlaying()" on each one.

Your application, on the other hand, will have just one 'sink' object - a "FileSink" - and you will call "startPlaying()" on it (just once!), with the "MPEG2TransportStreamFromESSource" object as source parameter.

I suggest that your "continueAfterSETUP()" function call "addNewVideoSource()" or "addNewAudioSource()" (depending on the media type) on the "MPEG2TransportStreamFromESSource" object (using the corresponding subsession's "readSource()" as parameter).  Then, for the *final* "continueAfterSETUP()" call only, call "startPlaying()" on the "FileSink" object.

> How Do I feed a MPEG2TransportStreamFromESSource into the file sink?

By calling "startPlaying()" on it (just once).


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/20130417/ac406347/attachment.html>


More information about the live-devel mailing list