[Live-devel] TR: MP4 Video over Transport Stream

Ross Finlayson finlayson at live555.com
Mon Mar 3 07:19:09 PST 2014


> I receive a MP4 video stream over MPEG TS:
> I use test program testMPEG2TransportReceiver and It works fine.
> Now I need to write an AVI file containing the MPG4 video Frames. 
> But I don't find which filter i need to use in order to convert MPEG TS packets to MP4V frames and how I can detect key frames inside this stream.
Unfortunately we don't provide any 'demultiplexor' for Transport Streams, so you can't do this using our software.

> 
> I also need to stream these AVI files using MPEG TS:
> I think to use  testMPEG2TransportStreamer test program 
> But I don't find which filter i need to use in order to convert MP4V frames  to MPEG TS packets.
You could do this using our software by
	1/ Creating a "MPEG2TransportStreamFromESSource" object
	2/ Calling "addNewVideoSource()" on this "MPEG2TransportStreamFromESSource" object, with the input MPEG-4 video source as parameter, and with a "mpegVersion" parameter of 4.
		(If the MPEG-4 video comes from a MPEG-4 Video Elementary Stream file - *not* an AVI file - then you must first pass this file through a "MPEG4VideoStreamFramer" object.  Unfortunately, however, we don't support reading from AVI files.)
	3/ Creating a "FileSink" object (for the output Transport Stream file)
	4/ Calling "startPlaying()" on the "FileSink" object, with the "MPEG2TransportStreamFromESSource" object as source.
	5/ Call "doEventLoop()" to enter the LIVE555 event loop (if you're not already in it).

In short, if your input file is a MPEG-4 Video Elementary Stream file - *not* an AVI file - then you could use the code for the "testH264VideoToTransportStream" demo application (in the "testProgs" directory), except that
	- You would use "MPEG4VideoStreamFramer" rather than "H264VideoStreamFramer".
	- The "addNewVideoSource()" call would use a "mpegVersion" parameter of 4 rather than 5.


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/20140304/f5897b09/attachment-0001.html>


More information about the live-devel mailing list