| 研究生: |
林黃淳 Huang-Chun Lin |
|---|---|
| 論文名稱: |
以數位信號處理器實現H.264/SVC解碼器及其最佳化演算法設計 The Realization and Optimization Technique for H.264/SVC decoder on Digital Signal ProcessorPlatform |
| 指導教授: |
蔡宗漢
Tsung-Han Tsai |
| 口試委員: | |
| 學位類別: |
碩士 Master |
| 系所名稱: |
資訊電機學院 - 電機工程學系 Department of Electrical Engineering |
| 畢業學年度: | 98 |
| 語文別: | 中文 |
| 論文頁數: | 88 |
| 中文關鍵詞: | 餘弦離散轉換 、可調式解碼器 、數位訊號處理器 、視訊解碼器 |
| 外文關鍵詞: | DCT, Decoder, H.264/SVC, Digital signal processor |
| 相關次數: | 點閱:13 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
隨著多媒體的應用越來越多,要使一個多媒體視訊壓縮影片符合不同的多媒體媒
介,例如:車用通訊、手機影音、電腦和HD 電視等多媒體設備,則多媒體編解碼器需
要更符合這些硬體配備的需求來進行視訊的編解碼,為了因應這種需求,ITU-T Video
Coding Experts Group基於H.264/AVC發展了延伸於H.264編解碼標準H.264/SVC[1],
H.264/SVC 編解碼標準針對了撥放影格率、解析度、畫面品質精細度這三種不同的型態
來進行可伸縮視訊編碼,編碼後的視訊位元流可以解碼成符合不同解析度、網路條件和
硬體能力的多媒體設備的影片資訊。然而,這種編解碼技術其模組複雜度相當的高,而
降低其複雜度在現今乃是一個非常重要的議題。
本篇論文利用數位訊號處理器實現H.264/SVC解碼器,而在H.264/SVC解碼器方面
是以參考軟體JSVM9.16[2]來移植於數位處理器平台DM6437[3]。我們經由計算各種不
同可伸縮功能Temporal、Spatial、SNR 及Combine 模式來進行其分析,針對分析出來
的結果來進行各模組的最佳化。此篇論文提出了在反離散餘弦轉換模組(Inverse
discrete cosine transform)及內插放大模組(Interpolation Up-sampling)這兩個部
份的基於DM6437的最佳化方法,並分別達到10.7倍和平均12.29倍的效能提升。除此
之外利用開發環境的工具、記憶體的規劃及一些特殊指令來最佳化我們的H.264/SVC解
碼器系統使其在Combine的模式下得到5.79 倍的效能提升。
在本篇最後,會闡述一個可伸縮視訊解碼撥放器完整的系統實現在DM6437 開發平
台上,此系統利用網路由電腦傳輸壓縮過的視訊位元流將其傳送到DM6437 開發板進行
資料的解壓縮,解壓縮過後的資料並以液晶螢幕顯示出來,在可伸縮的功能實現上,我
們利用開發平台的指撥開關來調整Temporal、Spatial、SNR 和Combine 等模式,而此
功能的實現還需嵌入一個位元流擷取器(Bitstream Extractor)方得實現。
The video coding technique has been extensively applied in many scenarios of our daily
life. For example: vehicle electronics applications, mobile phone, computer, high-definition
television ...etc. To support such various applications, a versatile video coding scheme is
essential. Therefore, ITU-T Video Coding Experts Group has developed a video standard
H.264/SVC [1], an extension of H.264/AVC [7]. It can provide the bitstream adaption to fit in
with different resolution, network condition and hardware capability. The H.264/SVC
includes three types of scalability: temporal, spatial and SNR scalability. However, the
complexity of H.264/SVC decoder is very high. For this reason, how to reduce the complexity
of H.264/SVC is very important issue.
In this thesis, we realize the H.264/SVC decoder with Texas Instrument DM6437 DSP
platform. This work transplants the reference software JSVM9.16 [2] to the DSP platform
DM6437 [3]. We separately analyze the complexity of H.264/SVC decoder in for temporal,
spatial, SNR and Combine scalability. According to the analysis result, we optimize each
module of H.264/SVC decoder. This thesis proposed two optimization methodologies in
inverse discrete cosine transform (IDCT) module and up-sampling module. With both
optimizations, the performance of IDCT and up sampling module can be increased as high as
10.7x and 12.29x, respectively. Besides, we also utilized the Code Composer Studio (CCS) to
draw up the memory mapping and explored some special intrinsic instructions to improve the
decoding performance. The overall decoder system can speed up 5.79x on average.
Finally, we will show a complete H.264/SVC decoder system. It is implemented in
DM6437 DSK. This system received the bitstream through network and decoded the
bitstream to obtain video information. Furthermore, the bitstream extractor is also
transplanted into this system. The decoded video information is displayed on LCD monitor.
To switch scalability function, we applied DIP switchs to separately enable temporal, spatial,
SNR, and combine scalability.
[1] ITU-T and ISO/IEC JTC 1, “Advanced Video Coding for Generic Audiovisual Services,”
ITU-T Recommendation H.264 and ISO/IEC 14496-10 (MPEG-4 AVC), Version 8 (including
the SVC extension): Consented in July 2007.
[2] Jerome Vieron, Mathias Wien Heiko Schwarz, “ Draft reference software for
SVC,“ ISO/IEC MPEG & ITU-T VCEG, JVT-AC203, October, 2008.
[3] Texas Instruments, “TMS320DM6437 Digital Media Processor,” Literature number:
SPRS345D, JUNE 2008.
[4] T. Wiegand, G. J. Sullivan, G. Biontegaard, and A. Luthra, “Overview of the H.264/AVC
Video Coding Standard,” IEEE Transactions on Circuit and System for VideoTechnology,
VOL. 13, Issue 7, pp. 560-576, Jul. 2003.
[5] Heiko Schwarz, Detlev Marpe,, and Thomas Wiegand, “Overview of the Scalable Video
Coding Extension of the H.264/AVC Standard,” Ieee Transactions On Circuits And Systems
For Video Technology, VOL. 17, pp. 1103-1120, Sep. 2007.
[6] Heiko Schwarz, Mathias Wien, “The Scalable Video Coding Extension of the H.264/AVC
Standard,” IEEE Signal processing Magazine, pp. 135-144, March 2008.
[7] “Advanced Video Coding for Generic Audiovisual Services, “ ITU-T Rec.H.264 and
ISO/IEC 14496-10 (MPEG-4 AVC), ITU-T and ISO/IEC JTC 1, Version 1: May 2003,
Version 2: May 2004, Version 3: Mar. 2005, Version 4: Sept. 2005, Version 5 and Version 6:
June 2006, Version 7: Apr. 2007, Version 8 (including SVC extension): Consented in July
2007.
[8] Heiko Schwarz, Detlev Marpe, and Thomas Wiegand, “ANALYSIS OF HIERARCHICAL
B PICTURES AND MCTF,” in Proc. ICME, Toronto, ON, Canada, Jul.2006, pp. 1929–1932.
[9] Texas Instruments, “Code Composer Studio User’s Guide,” Literature number:
SPRU328B, February 2000.
[10] Texas Instruments, “TMS320DM6437 DVDP Getting Started Guide,” Literature number:SPRUEV6, July 2007.
[11] Texas Instruments, “TMS320C64x/C64x+ DSP CPU and Instruction Set Reference
Guide,” Literature number: SPRU732G, February 2008.
[12] Jeremiah Golston, David Hoyle, Vishal Markandey, Jagadeesh Sankaran, Joe Zbiciak,
“C64x VelociTI.2 extensions support media-rich broadband infrastructure
and image analysis systems, ” Media processors. Conference, San Jose CA , ETATS-UNIS
(23/01/2001) 2001 , vol. 4313, pp. 1-10.
[13] Texas Instruments, “TMS320C64x+ DSP Cache User''s Guide,” Literature number:
SPRU862B, February 2009.
[14] Texas Instruments, “TMS320DM643x DMP Enhanced Direct Memory Access (EDMA3)
Controller,” Literature number: SPRU987A, March 2008.
[15] Texas Instruments, “TMS320C6000 DSP/BIOS 5.32 Application Programming Interface
(API) Reference Guide,” Literature number: SPRU403O, September 2007.
[16] Texas Instruments, “DSP/BIOS, RTDX and Host-Target Communications,” Literature
number: SPRA895, February 2003.
[17] Texas Instruments, “TMS320C6000 Optimizing Compiler User’s Guide,” Literature
number: SPRU187L, May 2004.
[18] Texas Instruments, “TMS320C6000 Programmer’s Guide,” Literature number:
SPRU198I, March 2006.
[19] Texas Instruments, “TMS320C6000 Assembly Language Tools v 6.0 Beta User''s guide,”
Literature number: SPRU186P, October 2006.
[20] Joohyun Lee, Gwanggil Jeon, Sangjun Park, Taeyoung Jung, and Jechang Jeong, “SIMD
Optimization of the H.264/SVC decoder with efficient data structure,” in Proc. ICME 2008,
Hannover, Germany, June 2008.
[21] Sung D.Kim, Jeong H.Lee, Jung M. Yang, Myung H. Sunwoo, and Sung K. Oh, “Novel
instructions and their hardware architecture for video signal processing ,” in Proc. ISCAS
2005, Kobe, Japan, May 2005.