標題: | 使用具單指令多資料流程之Intel處理器實現MPEG-4即時視訊編碼 Real-Time Implementation of MPEG-4 Video Encoder Using SIMD-Enhanced Intel Processor |
作者: | 劉夢遠 Meng-Yuan Liu 林大衛 David W. Lin 電機學院電子與光電學程 |
關鍵字: | MPEG-4即時視訊壓縮;Intel MMX 技術;單指令多資料流程;Real-Time MPEG-4 Video Encoder;Intel MMX Technology;SIMD |
公開日期: | 2003 |
摘要: | MPEG-4提供一些新的架構與工具來達成高壓縮率的視訊編碼。在本篇論文中,我們使用具單指令多資料流程之Intel處理器實現即時MPEG-4視訊編碼。主要以Intel MMX技術為主,包含SSE及SSE2。MMX是Intel公司為了在Intel Architecture (IA) 的微處理器上能夠用來加強多媒體及通訊的處理能力所增加的延伸技術,採用了單指令多資料流程架構 (SIMD) 來平行處理資料運算。 在程式執行方面,我們使用一公開的程式Microsoft MPEG-4 Visual Reference Software加以修改以完成MPEG-4即時視訊編碼。由於MPEG-4的壓縮方式需要非常大的計算量,因此要達成即時的壓縮和解壓縮必須要有高速的硬體和有效率的軟體互相配合。為了解決龐大運算量的問題,平行處理是一個相當有效的方式。平行處理簡單的說就是把原本需要排隊循序處理的工作變成讓數個工作能同時獨立地運算,以加速工作的進行。本篇論文即是使用Intel的MMX指令集來改寫Microsoft MPEG-4 Visual Reference Software的部分核心程式,增加平行處理的程度,達成加速程式執行的目的。而最後程式在Intel Pentium 4 CPU 2.66G, 480MB RAM及Microsoft Windows XP Professional作業系統下實際測試的結果,使用MMX技術配合其他演算法壓縮有形狀訊息的CIF foreman測試檔案可達每秒30張約為原始程式的6倍左右。 在本篇論文中,我們會先簡單介紹MPEG-4的系統架構與Intel MMX技術及指令,然後我們會針對MPEG-4實作時的改善與加速提供詳細的介紹,我們會將加速後的程式與原先的程式作比較,並討論其優缺點。論文最後做一結論並提出未來可再繼續發展的主題。 The MPEG-4 standard is a very efficient coding standard for multimedia data defined by ISO/IEC MPEG. In this thesis, we use SIMD-enhanced Intel Processor to deal with MPEG-4 video encoding and to achieve the goal of real-time coding. The main technology is Intel’s MMX including SSE and SSE2. The Intel MMX technology was introduced into the Intel Architecture (IA) processor. The extension introduced in the MMX technology support a single-instruction, multiple-data (SIMD) execution model that is designed to accelerate the performance of advanced media and communications applications. In this thesis, we use the public-domain software, Microsoft MPEG-4 Visual Reference Software, to establish an MPEG-4 coding and decoding system. We need high-processing-speed hardware and effective software to achieve real-time MPEG-4 video compression and decompression, and parallel processing is the practical method that can solve huge computation problem in MPEG-4 encoding and decoding. Parallel processing means letting several independent operations or tasks run in parallel simultaneously, and then it can speed up the whole processing by this method. In this thesis, we modify some kernels of Microsoft MPEG-4 Visual Reference Software using Intel’s MMX technology to get more parallel processing ability to speed up the encoding processing. After optimization, we can encoder CIF foreman test sequence with shape information up to 30 frame per second on our test system. The test system is based on Intel Pentium 4 CPU 2.66G, 480MB RAM and Microsoft Windows XP Professional Version 2002. The speed-up is approximately 6 times than the original reference software. In our thesis, we introduce the MPEG-4 and Intel’s MMX technology first. Then we discuss the optimization of the MPEG-4 video encoder by using Intel’s MMX technology. We also present experimental results on the speed and the rate-distortion performance of the optimized code. Finally, we give a conclusion and point out some subjects for potential future work. |
URI: | http://140.113.39.130/cdrfb3/record/nctu/#GT008967508 http://hdl.handle.net/11536/79825 |
顯示於類別: | 畢業論文 |