[Live-devel] MPEG2TransportStreamMultiplexor
Stefan De Laere
Stefan.Delaere at DZINE.BE
Fri Feb 9 07:53:38 PST 2007
Hi Ross,
Some context: I have the following setup:
- An in house designed embedded x86 platform
- An in house designed add-on module (PCIExpress interface) which features
an nGene-Decypher (Micronas-WISChip) High definition
(MPEG2/H264/MPEG4/VC1) decoder solution. This add-on module must be fed
with a Constant Bitrate Transport Stream (possibly containing null
packets) using DMA transfers over the PCIExpress bus. Actually I need a
transport stream source with a fixed bitrate and a stable clock with a
precision better than 100ppm
With this setup, I have to achieve the following functionality:
1. Play prerecorded constant bitrate transport streams (already containing
null packets) that are stored on harddisk. This is already implemented.
2. Play MPEG1/MPEG2 program streams stored on harddisk (because our
product supports program streams and we have to be backwards compatible).
3. Play transport streams coming in from the network using RTP/RTCP. I'm
already using the live555 libraries for this purpose.
My question concerns the creation of a transport stream.
For the moment I am using the MPEG1or2Demux,
MPEG1or2DemuxedElementaryStream and MPEG2TransportStreamMultiplexor
classes for creating the transport stream in case of MPEG2. Problem is
that this transport stream is not a constant bitrate one and I need to
insert null packets. The data output from the
MPEG2TransportStreamMultiplexor is fed to a MediaSink derived object but
it is missing fPresentationTime and durationInMicroseconds. Can this
easily be added to the doGetNextFrame() function in
MPEG2TransportStreamMultiplexor? Or do you have any other suggestions of
how I can create such a constant bitrate transport stream.
Likewise, for MPEG4, H264 and VC1, I will also have to create a constant
bitrate transport stream...
Best Regards,
Stefan De Laere
R&D Department
Email: stefan.delaere at dzine.be
't Hoge 49
B-8500 KORTRIJK
BELGIUM
www.dzine.be
More information about the live-devel
mailing list