8.1 MPEG-2 systems

8.1 MPEG-2 systems

The MPEG-1 standard targeted coding of audio and video for storage, where the media error rate is negligible [2]. Hence the MPEG-1 system is not designed to be robust to bit error rates. Also, MPEG-1 was aimed at software oriented image processing, where large and variable length packets could reduce the software overhead [3].

The MPEG-2 standard on the other hand is more generic for a variety of audiovisual coding applications. It has to include error resilience for broadcasting, and ATM networks. Moreover, it has to deliver multiple programs simultaneously without requiring them to have a common time base. These require that the MPEG-2 transport packet length should be short and fixed.

MPEG-2 defines two types of stream: the program stream and the transport stream. The program stream is similar to the MPEG-1 systems stream, but uses a modified syntax and new functions to support advanced functionalities (e.g. scalability). It also provides compatibility with the MPEG-1 systems stream, that is MPEG-2 should be capable of decoding an MPEG-1 bit stream. Like the MPEG-1 decoder, program stream decoders typically employ long and variable length packets. Such packets are well suited for software-based processing and error-free transmission environments, such as coding for storage of video on a disc. Here the packet sizes are usually 1–2 kbytes long, chosen to match the disc sector sizes (typically 2 kbytes). However, packet sizes as long as 64 kbytes are also supported.

The program stream also includes features not supported by MPEG-1 systems. These include scrambling of data, assignment of different priorities to packets, information to assist alignment of elementary stream packets, indication of copyright, indication of fast forward, fast reverse and other trick modes for storage devices. An optional field in the packets is provided for testing the network performance, and optional numbering of a sequence of packets is used to detect lost packets.

In the transport stream, MPEG-2 significantly differs from MPEG-1 [4]. The transport stream offers robustness for noisy channels as well as the ability to assemble multiple programs into a single stream. The transport stream uses fixed length packets of size 188 bytes with a new header syntax. This can be segmented into four 47-bytes to be accommodated in the payload of four ATM cells, with of the AAL1 adaptation scheme [5]. It is therefore more suitable for hardware processing and for error correction schemes, such as those required in television broadcasting, satellite/cable TV and ATM networks. Furthermore, multiple programs with independent time bases can be multiplexed in one transport stream. The transport stream also allows synchronous multiplexing of programs, fast access to the desired program for channel hopping, multiplexing of programs with clocks unrelated to transport clock and correct synchronisation of elementary streams for playback. It also allows control of the decoder buffers during start up and playback for both constant and variable bit rate programs.

A basic data structure that is common to the organisation of both the program stream and transport stream is called the packetised elementary stream (PES) packet. Packetising the continuous streams of compressed video and audio bit streams (elementary streams) generates PES packets. Simply stringing together PES packets from the various encoders with other packets containing necessary data to generate a single bit stream generates a program stream. A transport stream consists of packets of fixed length containing four bytes of header followed by 184 bytes of data, where the data is obtained by segmenting the PES packets.

Figure 8.1 illustrates both types of program and transport stream multiplexes of MPEG-2 systems. Like MPEG-1, the MPEG-2 systems layer is also capable of combining multiple sources of user data along with encoded audio and video. The audio and video streams are packetised to form PES packets that are sent to either a program multiplexer or a transport multiplexer, resulting in a program stream or transport stream, respectively. As mentioned earlier, program streams are intended for an error-free environment such as digital storage media (DSM). Transport streams are intended for noisier environments such as terrestrial broadcast channels.

click to expand
Figure 8.1: MPEG-2 systems multiplex of program and transport streams

At the receiver the transport streams are decoded by a transport demultiplexer (which includes a clock extraction mechanism), unpacketised by a depacketiser, and sent to audio and video decoders for decoding, as shown in Figure 8.2.

click to expand
Figure 8.2: MPEG-2 systems demultiplexing of program and transport streams

The decoded signals are sent to the receiver buffer and presentation units, which output them to a display device and a speaker at the appropriate time. Similarly, if the program streams are used, they are decoded by the program stream demultiplexer, depacketiser and sent to the audio and video decoders. The decoded signals are sent to the respective buffer to await presentation. Also similar to MPEG-1 systems, the information about systems timing is carried by the clock reference field in the bit stream that is used to synchronise the decoder systems clock (STC). Presentation time stamps (PTS) that are also carried by the bit stream control the presentation of the decoded output.



Standard Codecs(c) Image Compression to Advanced Video Coding
Standard Codecs: Image Compression to Advanced Video Coding (IET Telecommunications Series)
ISBN: 0852967101
EAN: 2147483647
Year: 2005
Pages: 148
Authors: M. Ghanbari

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net