基于TMS320DM642 的X264 視頻編碼器的優(yōu)化
下面舉一個(gè)SAD_4×4 的例子來(lái)說(shuō)明上述各項是如何實(shí)現的。SAD_4×4 的C 語(yǔ)言版本的代碼為:

SAD_4×4 的匯編語(yǔ)言版本的代碼為:

完成匯編指令的編寫(xiě)后,進(jìn)行匯編語(yǔ)言的調試。由于X264 工程比較大,如果直接在工程中調試,難度較大,所以在調試過(guò)程中建立一個(gè)小工程, 從文件中讀出一段數據來(lái)測試匯編語(yǔ)言功能的正確性。具體的步驟是:采用單步調試的同時(shí), 開(kāi)啟調試器CCS 里面的view memory 和view core registers 選項來(lái)觀(guān)察相應的memory 和寄存器里面的值是否按照邏輯設計進(jìn)行改變。如果結果不對,則考慮是否錯誤地使用了寄存器, 或者是沒(méi)有等待足夠多的延時(shí)周期, 或者是出于軟件流水的目的錯誤地安排了指令的順序,直到找出錯誤的地方。
4 小結
筆者首先分析了從PC 平臺移植到DSP 平臺后的X264 編碼工程,其編碼速率低,滿(mǎn)足不了視頻壓縮實(shí)時(shí)性要求。接著(zhù)從提高編碼器的編碼速度角度出發(fā),對編碼工程進(jìn)行了優(yōu)化,介紹了在實(shí)際中用到的幾種DSP 平臺優(yōu)化方法:算法與程序系統結構的優(yōu)化,EDMA 與乒乓緩存優(yōu)化,循環(huán)體的優(yōu)化,編譯器優(yōu)化和DSP 匯編。對CIF格式圖像采用BASE_LINE 進(jìn)行編碼, 優(yōu)化前X264 編碼速度約為5~8 f/s(幀/秒),優(yōu)化后的編碼速度為20 f/s 左右,速度得到明顯提升,基本能夠實(shí)現實(shí)時(shí)編碼。本文引用地址:http://dyxdggzs.com/article/166324.htm
評論