A Data-Parallel Approach for Real-Time MPEG-2 Video Encoding

In this paper, we present a fine-grained parallel implementation of the MPEG-2 video encoder an the Intel Paragon XP/S parallel computer. We use a data-parallel approach and exploit parallelism within each frame, unlike some of the previous approaches that employ multiple processing of several disjoint video sequences. This makes our encoder suitable for real-time applications where the complete video sequence may not be present on the disk and may become available on a frame-by-frame basis with time. The Express parallel programming environment is employed as the underlying message-passing system making our encoder portable across a wide range of parallel and distributed architectures. The encoder also provides control over various parameters such as the number of processors in each dimension, the size of the motion search window, buffer management, and bitrate. Moreover, it has the flexibility to allow the inclusion of fast and new algorithms for different stages of the codec into the program, replacing current algorithms. Comparisons of execution times, speedups, and frame encoding rates using different numbers of processors are provided. An analysis of frame data distribution among multiple processors is also presented. In addition, our study reveals the degrees of parallelism and bottlenecks in the various computational modules of the MPEG-2 algorithm. We have used two motion estimation techniques and five different video sequences for our experiments. Using maximum parallelism by dividing one block per processor, an encoding rate higher than 30 frames/s has been achieved.

[1]  Rüdiger Esser,et al.  CM-5E, KSR2, Paragon XP/S: A Comparative Description of Massively Parallel Computers , 1995, Parallel Comput..

[2]  Yoshinori Takeuchi,et al.  Distributed Load Balancing Schemes for Parallel Video Encoding System , 1994 .

[3]  Cesar A. Gonzales,et al.  Motion video adaptive quantization in the transform domain , 1991, IEEE Trans. Circuits Syst. Video Technol..

[4]  Hiroaki Kunieda,et al.  RHINE: Reconfigurable Multiprocessor System for Video CODEC , 1993 .

[5]  T. Akiyama,et al.  MPEG2 Video Codec Using Image Compression DSP , 1994, IEEE International Conference on Consumer Electronics.

[6]  Zhongde Wang Fast algorithms for the discrete W transform and for the discrete Fourier transform , 1984 .

[7]  Ming Lei Liou,et al.  Genetic motion search algorithm for video compression , 1993, IEEE Trans. Circuits Syst. Video Technol..

[8]  N. Cho,et al.  Fast algorithm and implementation of 2-D discrete cosine transform , 1991 .

[9]  Peter Pirsch,et al.  MIMD (multiple instruction multiple data) multiprocessor system for real-time image processing , 1991, Electronic Imaging.

[10]  H. H. Taylor,et al.  A MPEG encoder implementation on the Princeton Engine video supercomputer , 1993, [Proceedings] DCC `93: Data Compression Conference.

[11]  Shahriar M. Akramullah Real-time MPEG-2 video encoding on parallel and distributed systems , 1995 .

[12]  Dimitris Anastassiou,et al.  Software implementation of MPEG-II video encoding using socket programming in LAN , 1994, Electronic Imaging.

[13]  Edward J. Delp,et al.  Parallel implementation of an MPEG-1 encoder: faster than real time , 1995, Electronic Imaging.

[14]  Frans Sijstermans,et al.  CD-I full-motion video encoding on a parallel computer , 1991, CACM.

[15]  Hsueh-Ming Hang,et al.  Image and video coding standards , 1993, AT&T Technical Journal.

[16]  Anil K. Jain,et al.  Displacement Measurement and Its Application in Interframe Image Coding , 1981, IEEE Trans. Commun..