Hierarchical Parallelization of an H.264/AVC Video Encoder
International Symposium on Parallel Computing in Electrical Engineering (PARELEC'06)
https://doi.org/10.1109/PARELEC.2006.42Abstract
Last generation video encoding standards increase computing demands in order to reach the limits on compression efficiency. This is particularly the case of H.264/AVC specification that is gaining interest in industry. We are interested in applying parallel processing to H.264 encoders in order to fulfill the computation requirements imposed by stressing applications like video on demand, videoconference, live broadcast, etc. Given a delivered video quality and bit rate, the main complexity parameters are image resolution, frame rate and latency. These parameters can still be pushed forward in such a way that special purpose hardware solutions are not available. Parallel processing based on off-the-shelf components is a more flexible general purpose alternative. In this work we propose a hierarchical parallelization of H.264 encoders very well suited to low cost clusters. Our proposal uses MPI message passing parallelization at two levels: GOP and frame. The GOP level encodes simultaneously several groups of consecutive frames and the frame level encodes in parallel several slices of one frame. In previous work we found that GOP parallelism alone gives good speed-up but imposes very high latency, on the other side frame parallelism gets less efficiency but low latency. Combining both approaches we obtain a compromise between speed-up and latency and then a broader spectrum of applications can be covered.
References (13)
- References
- ISO/IEC 14496-10:2003, "Coding of Audiovisual Objects-Part 10: Advanced Video Coding," 2003,
- Pacheco, P.S.: Parallel Programming with MPI, Morgan Kaufman Publishers, Inc
- R. Chandra et al., "Parallel Programming in OpenMP", Morgan kaufmann, 2000.
- Intel Integrated Performance Primitives, http://www.intel. com/cd/software/products/asmo-na/eng/perflib/ipp/index.htm
- AMD Core Math Library (ACML), http://developer. amd.com/acml.aspx
- OpenGL Architecture Review Board et al., "OpenGL(R) Reference Manual ", 5th edition, Ed. Dave Shreiner, 2005.
- J.C. Fernández and M. P. Malumbres, "A Parallel implementation of H.26L video encoder", in proc. of EuroPar 2002 conf. (LNCS 2400), pp. 830, 833, Padderborn, 2002.
- A. Rodriguez, A. González and M.P. Malumbres, "Performance evaluation of parallel MPEG-4 video coding algorithms on clusters of workstations", IEEE Int. Conference on Parallel Computing in Electrical Engineering, pp. 354, 357, Dresden, 2004
- E.D. Lazowska, J. Zahorjan,G.S. Gaham, K.C. Sevcik, Quantitative System Performance, Prentice-Hall, 1984
- Arjan J.C. van Gemund, "Symbolic Performance Modeling of Parallel Systems", IEEE Transactions on Parallel and Distributed Systems, vol 14, no 2, Feb. 2003.
- Intel MPI Benchmarks: Users Guide and Methodology Description, Intel GmbH, Germany, 2004.
- H.264/AVC Reference Software: http://iphome.hhi.de/ suehring/tml/.