Real-time Optimization of H.264 Software Encoder on Embedded DSP System

임베디드 DSP 기반 시스템을 위한 H.264 소프트웨어 부호기의 실시간 최적화

  • 노시봉 ((주) 디지털 아리아 기술원구소) ;
  • 안희준 (서울산업대학교 제어계측공학과 임베디드 통신연구실) ;
  • 이명진 (한국항공대학교 항공전자및정보통신공학부) ;
  • 오혁준 (광운대학교 전자통신공학과)
  • Published : 2009.10.31

Abstract

While H.264/AVC is in wide use for multimedia applications such as DMB and IPTV service, we have limited usage cases for embedded real-time applications due to its high computational demand. The paper provides judicious guide line for optimization method selection, by presenting the detailed experiments data through the development process of a real time H.264 software encoder on embedded DSP. The experimental analysis includes an intensive profiling analysis, fast algorithm application, optimal memory assignment, and intrinsic-based instruction selection. We have realized a real-time software that encodes CIF resolution videos 15 fps on TMS320DM64x processors.

H.264 영상압축표준은 우수한 부호화 성능 때문에 현재 DMB와 IPTV 등에 다양한 응용에 활용되고 있으나, 높은 계산량으로 인하여 임베디드 환경에서의 실시간 부호화기로의 활용은 매우 제한적이다. 본 논문은 DSP 시스템이 제공하는 컴파일러 옵션 최적화, 인트린식과 어셈블코드 적용, 데이터 메모리 배치 최적화 과정을 H.264 부호화기 최적화의 입장에서, 비판적, 종합적으로 분석하고 반영한 결과를 소개한다. 특히, 대표적인 DSP인 TMS320DM64x를 사용하여 적용된 최적화 방식에 따른 연산이득을 구체적으로 제시하였으며, 그 결과 CIF급의 영상은 현재시장에 유통되는 DSP기반으로 실시간 구현이 가능함을 확인하였다.

Keywords

References

  1. Joint Video Team of ITU-T VCEG and ISO/IEC MPEG, Draft ITU-T Recommendation and Final Draft International Standard of Joint Video Specification, ITU-T Rec. H.264 and ISO/IEC 14496-10 AVC Version 1, 05. 2003
  2. 노시봉, 'TI DM64x상의 실시간 H.264 소프트웨어 부호기의 최적화 연구' 서울산업대 대학원 석사학위 논문, 2009. 2
  3. 김용환, 김제우, 김태완, 최병호, 'SIMD 명령어를 이용한 H.264 인코더의 최적화', 한국멀티미디어학회 추계학술대회, 10, 2003
  4. 석진욱, 김범호, 이정우, 조창식, 'HD급 H.264 기술의 발전 동향', 전자통신동향분석 제21권 제1호 2006년 2월
  5. Robert Oshana, 'DSP Software Development Techniques for Embedded and Real-Time Systems,' Newnes, 2006
  6. Texas Instruments, 'TMS320C64x DSP Two-Level Internal Memory Reference Guide' (spru610), Aug., 2002
  7. Texas Instruments, 'TMS320C6000 CPU and Instruction Set Reference Guide'(SPRU189F), Oct 2000
  8. Texas Instruments, 'TMS320DM642 Video/Imaging Fixed-Point Digital Signal Processor' (SPRS2000L), Jan., 2007
  9. Texas Instruments, 'TMS320C6000 Instruction Set Simulator Technical Reference'(SPRU600F), Apr., 2005
  10. Texas Instruments, 'TMS320C6000 Optimizing Compiler User's Guide'(spru1871), May, 2004
  11. J. Labrousse and G.A Slavenburg, 'A 50 MHz Microprocessor with a VLIW Architecture,' ISSCC, 1990
  12. Nat Sehan, 'High VelociTI Processing Teaxas Instruments VLIW DSP Architecture,' IEEE Signal Procesing Magazine, Mar, 1998
  13. Chaonan Peng, Hui Wang, Chuanzhen Li and Qin Zhang, 'The Optimization of H.264 Encoder Based On TI TMS320DM642,' FGCN2007, Dec., 2007
  14. Hong-Jun Wang, Yong-Jian Huang and Hua Li, 'H.264/AVC Video Encoder Implementation Based on TI TMS320DM642,' IIH-MSP'06, Dec., 2006
  15. Li Zhuo, Qiang Wang, David Dagan Feng, Lansun Shen, 'Optimization and Implementation of H.264 Encoder on DSP Platform,' ICMP 2007, Aug., 2007
  16. JM reference software Available: p://iphome.hhi.de/suehring/tml/index.htm
  17. VideoLAN http://www.videolan.org/developers/x264.html
  18. Loren Merritt, Rahul Vanam, 'Improved Rate Control and Motion Estimation for H.264 Encoder,' ICIP 2007, Oct., 2007
  19. Dmitriy Vatolin, Dmitriy Kulikov, Alexander Parshin, 'MPEG-4 AVC/H.264 Video Codecs Comparison,' MSU Fourth Annual MPEG-4 AVC/H.264 Video Codecs Comparison (December 2007), http://www.compression.ru
  20. Nejat Kamaci, Yucel Altunbasak, 'Performance comparison of the emerging H.264 video coding standard with the existing standards,' ICME 2003, July, 2003 https://doi.org/10.1109/ICME.2003.1220925
  21. 정제창, 'H.264/AVC 비디오 압축 표준', 홍릉과학 출판사, 2005