systems

所属分类:mpeg/mp3
开发工具:C/C++
文件大小:98KB
下载次数:11
上传日期:2009-07-09 09:48:12
上 传 者kis4868
说明:  13818-1 MPEG-TS Reference SW

文件列表:
systems\doc.text (28894, 1995-06-26)
systems\src\Consumer.C (1569, 1995-06-13)
systems\src\Consumer.H (3181, 1995-06-22)
systems\src\Consumer.o (1886, 2004-04-14)
systems\src\decode.C (6606, 1995-06-26)
systems\src\decode.o (6432, 2004-04-14)
systems\src\Decoder.C (6917, 1995-06-22)
systems\src\Decoder.H (3309, 1995-06-26)
systems\src\Decoder.o (9063, 2004-04-14)
systems\src\Directory.C (4987, 1995-06-23)
systems\src\Directory.H (3519, 1995-06-23)
systems\src\Directory.o (4020, 2004-04-14)
systems\src\encode.C (4186, 1995-06-30)
systems\src\encode.o (5271, 2004-04-14)
systems\src\Encoder.C (7907, 1995-06-22)
systems\src\Encoder.H (3976, 1995-06-26)
systems\src\Events.C (1780, 1995-06-10)
systems\src\Events.H (3553, 1995-06-23)
systems\src\InputPort.C (5387, 1995-06-23)
systems\src\InputPort.H (3683, 1995-06-23)
systems\src\IPortFromFile.C (2887, 1995-06-30)
systems\src\IPortFromFile.H (2372, 1995-06-23)
systems\src\IPortFromRam.C (2117, 1995-06-23)
systems\src\IPortFromRam.H (2048, 1995-06-23)
systems\src\Makefile (1958, 1995-06-22)
systems\src\OPortToFile.C (2533, 1995-06-23)
systems\src\OPortToFile.H (2229, 1995-06-30)
systems\src\OPortToRam.C (2203, 1995-06-14)
systems\src\OPortToRam.H (2230, 1995-06-23)
systems\src\OutputPort.C (4049, 1995-06-23)
systems\src\OutputPort.H (3918, 1995-06-23)
systems\src\PES.C (7219, 1995-06-30)
systems\src\PES.H (5113, 1995-06-30)
systems\src\PESConsumer.C (11528, 1995-06-23)
systems\src\PESConsumer.H (3361, 1995-06-22)
systems\src\pesin.C (2819, 1995-06-26)
systems\src\pesout.C (2279, 1995-06-30)
systems\src\PESProducer.C (9413, 1995-06-22)
systems\src\PESProducer.H (3010, 1995-06-22)
... ...

GENERAL INFO 6/1/95 This is Release 1.0 of the MSYS Toolkit, a set of C++ classes for building and manipulating MPEG System streams. With these classes one build MPEG System multiplexors and demultiplexors and other MPEG System-related applications. Examples of an encoder (in encode.C) and a decoder (in decode.C) are provided. A technical disclaimer: The purpose of this system is instructional - it was not written to be terribly efficient in terms of storage or speed (encode outputs a transport packet every 1-2 msec; decode handles a transport packet roughly every .5-1.0 msec on a Sparc 10). TO BUILD THE TOOLKIT First make sure that the GNU tools (specifically g++) are installed. Now type make. If you want to build other applications besides the four specified in the Makefile, then you will have to modify the Makefile. TO RUN THE SAMPLES To run the sample encoder type "encode ". A number of transport packets will be constructed and placed in the file . To run the decoder type "decode " and the transport packets in the file will be decoded. The individual PES streams are written to files named "stream" where n is the pid value if the elementary stream. pesout will generate a sequence of PES packets.: type "pesout ". To parse a sequence of PES packets (it is assumed that these are from the same elementary stream) type "pesin ". Try this with the PES streams extracted when "decode" is run. See the source code comments on each of the sample programs for more detailed descriptions of usage. Read the file doc.text to learn about the library. Read the documentation notes in each .H file to learn more about each class. Experiment with the sample applications to learn how to build applications. THINGS LEFT TO DO There is still lots of additional work that can be done. For example: 1. The generation of indefinite length PES packets (i.e. PES packet with zero length fields). The decoder will correctly parse them. 2. Versioning. The insertion and deletion of elementary streams and programs is not complete. 3. Clocks and timestamps have to be reworked completely. Currently the Encoder maintains a single clock based on the transport stream output rate for stamping PCRs. Instead there should be a notion of a clock coming along with a selected elementary stream on a per-program basis. There should also be enough understanding of the elementary stream structure (e.g. picture start codes, frame rates and picture types) to build and timestamp meaningful PES packets. 4. STD buffer simulation. There are also lots of little things that need fixing - you will find comments starting with the prefix "// FIX --" marking these locations in the code. EXPERIENCE WITH ISO COMMITTEE BITSTREAMS The decoder has been run on a number of the bitstreams exchanged by the ISO committee over the last two years. Although it would not be appropriate to release the results of those runs into the public domain, I would be happy to correspond with others who has access to the ISO bitstreams and either have decoded or expect to decode them. Finally, write back in the happy event that you wish to contribute code to MSYS. Enjoy. Guy Cherry -------- email: guyc@crl.labs.tek.com US Mail: Guy Cherry, Communication Systems Research Lab, Tektronix, Inc. Box 500 MS 50-370 Beaverton OR 97077 Phone: 503-627-1123 (... 5, 8, 13, 21, ...) Fax: 503-627-1736

近期下载者

相关文件


收藏者