Abstract
High definition video applications often require heavy computation, high bandwidth and high memory requirements which make their real-time implementation difficult. Multi-core architecture with parallelism provides new solutions to implementing complex multimedia applications in real-time. It is well-known that the speed of the H.264 encoder can be increased on a multi-core architecture using the parallelism concept. Most of the parallelization methods proposed earlier for these purposes suffer from the drawbacks of limited scalability and data dependency. In this paper, we present a result obtained using data-level parallelism at the Group-Of-Pictures (GOP) level for the video encoder. The proposed technique involves each GOP being encoded independently and implemented on JM 18.0 using advanced data structures and OpenMP programming techniques. The performance of the parallelized video encoder is evaluated for various resolutions based on the parameters such as encoding speed, bit rate, memory requirements and PSNR. The results show that with GOP level parallelism, very high speed up values can be achieved without much degradation in the video quality.
Similar content being viewed by others
References
International Standard of Joint Video specification (ITU-T Rec. H. 264 ISO/IEC) (2009)
Ostermann, J., Bormans, J., List, P., Marpe, D., Narroschke, M., Pereira, F., Stockhammer, T., Wedi, T.: Video coding with H.264/AVC: tools, performance, and complexity. IEEE Circuits Syst. Mag. 4(1), 7–28 (2004)
Kwon, S-k, Tamhankar, A., Rao, K.R.: Overview of H.264/MPEG-4 part 10. J. Vis. Commun. Image Represent. 17(2), 186–216 (2006)
Schwarz, H., Marpe, D., Wiegand, T.: Overview of the scalable video coding extension of the H.264/AVC standard. IEEE Trans. Circuits Syst. Video Technol. 17(9), 1103–1120 (2007)
Hoogerbrugge, J., Terechko, A.: A multithreaded multicore system for embedded media processing. Trans. High Perform. Embed. Archit. Compil. III, LNCS 6590, 154–173 (2011)
Gschwind, M.: The cell broadband engine: exploiting multiple levels of parallelism in a chip multiprocessor. Int. J. Parallel Program., Kluwer, Norwell, MA, USA 35, 233–262 (2007)
Sankaraiah, S., Shuan, L.H., Eswaran, C.: GOP level parallelism on H.264 video encoder for multicore architecture. IPCSIT, IACSIT Press 7, 127–132 (2011)
Rodriguez, A., Gonzalez, A., Malumbres, M.P.: Hierarchical parallelization of an h.264/avc video encoder. In: Proceedings of the International Symposium on Parallel Computing in Electrical Engineering (PARELEC’06), Bialystok, pp. 363–368 (2006)
Rodrigues, A., Roma, N., Sousa, L.: p264: open platform for designing parallel H.264/AVC video encoders on multi-core systems. In: 20th International Workshop on Network and Operating Systems Support for Digital Audio and Video (NOSSDAV 2010), Proceedings. ACM, Amsterdam, The Netherlands, June, pp. 81–86 (2010)
Chen, Y.-K., Li, E.Q., Zhou, X., Ge, S.: Implementation of H.264 encoder and decoder on personal computers. J. Vis. Commun. Image Represent. 17(2), 509–532 (2006)
Azevedo, A., Juurlink, B.H.H., Meenderinck, C.H., Terechko, A., Hoogerbrugge, J., Alvarez, M., Ramirez, A., Valero, M.: A highly scalable parallel implementation of H.264. Trans. High Perform. Embed. Archit. Compil (HiPEAC) 4(2), 1–25 (2009)
Van Der Tol, E.B., Jaspers, E.G.T., Gelderblom, R.H.: Mapping of H.264 decoding on a multiprocessor architecture. In: Image and Video Communications and Processing, Proceedings of SPIE 5022 Santa Clara, CA, pp. 707–718 (2003)
Kim, M., Song, J., Kim, D.H., Lee, S.: H.264 decoder on embedded dual core with dynamically load-balanced functional paritioning. In: 17th IEEE International Conference on Image Processing (ICIP), Hongkong, pp. 3749–3752 (2010)
Gürhanli, A., Chen, C.C.-P., Hung, S.-H.: GOP-level parallelization of the H.264 decoder without a start-code scanner. In: Proceedings of 2nd International Conference on Signal Processing Systems (ICSPS), Dalian, China,3, pp. 627–630 (2010)
Gurhanli, A., Chen, C.C.-P., Hung, S.-H.: Coarse grain parallelization of H.264 video decoder and memory bottleneck in multi-core architectures. Int. J. Comput. Theory Eng. 3(3), 375–381 (2011)
Meenderinck, C., Azevedo, A., Alvarez, M., Juurlink, B., Ramirez, A.: Parallel scalability of H.264. In: Proceedings of the first workshop on programmability issues for multi-core computers (MULTPROG-1), Goteborg, Sweden, pp. 1–12 (2008)
Meenderinck, C., Azevedo, A., Juurlink, B., Mesa, M.A., Ramirez, A.: Parallel scalability of video decoders. J. Signal Process. Syst. 57(2), 173–194 (2009)
Alvarez Mesa, M., Ramirez, A., Azevedo, A., Meenderinck, C., Juurlink, B., Valero, M.: Scalability of macroblock-level parallelism for H.264 decoding. In: Proceedings 15th International Conference on Parallel and Distributed Systems (ICPADS’09), Shenzhen, China, pp. 236–243 (2009)
Chen, Y.-K., Tian, X., Ge, S., Girkar, M.: Towards efficient multilevel threading of H.264 encoder on intel hyper-threading architectures. In: Proceedings of the 18th International Parallel and Distributed Processing Symposium, Santa Fe, New Mexico, pp. 63–67 (2004)
Ge, S., Tian, X., Chen, Y.-K.: Efficient multithreading implementation of H.264 encoder on intel hyper-threading architectures. In: Proceedings of the Joint Conference of the Fourth International Conference on Information, Communications and Signal Processing and Fourth Pacific Rim Conference on Multimedia, Singapore, pp. 469–473 (2003)
Kim, Y.-I, Kim, J.-T., Bae, S., Baik, H., Song, H.J.: H.264/AVC decoder parallelization and optimization on asymmetric multicore platform using dynamic load balancing. In: IEEE International Conference on Multimedia and Expo, Hannover, pp. 1001–1004 (2008)
Taylor, S.: Optimizing Applications for Multi-Core Processors: Using the Intel Integrated Performance Primitives, 2nd edn. Intel Press, USA (2007)
Gerber, R., Bik, A.J.C., Smith, K.B., Tian, X.: The Software Optimization Cookbook: High-Performance Recipes for IA-32 Platforms, 2nd edn. Intel Press, USA (2005)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Sankaraiah, S., Shuan, L.H., Eswaran, C. et al. Performance Optimization of Video Coding Process on Multi-Core Platform Using Gop Level Parallelism. Int J Parallel Prog 42, 931–947 (2014). https://doi.org/10.1007/s10766-013-0267-4
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10766-013-0267-4