《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 嵌入式媒體服務器語音編解碼算法集成與優化
嵌入式媒體服務器語音編解碼算法集成與優化
來源:電子技術應用2014年第4期
李昊然,谷源濤
(清華大學 電子工程系,北京100084)
摘要: 介紹面向視頻會議的嵌入式媒體服務器中語音編解碼算法的集成和優化技術。本系統采用ARM+DSP的嵌入式架構并基于TMS320DM8168芯片實現。在實現G.722語音編解碼算法的基礎上,參考xDM標準對編解碼函數進行封裝。隨后將此函數集成入遠程處理器執行框架(RPE),并在ARM端成功調用DSP上的語音編解碼模塊。實際測試驗證,上述編解碼模塊運行功能正確,執行效率較高,滿足了視頻會議對媒體服務器的語音處理要求。
中圖分類號:TN912
文獻標識碼:A
文章編號:0258-7998(2014)04-0008-03
Integration and optimization of speech codec algorithm in embedded media server
Li Haoran,Gu Yuantao
Department of Electronic Engineering,Tsinghua University,Beijing 100084,China
Abstract: Aiming at the implementation of an embedded media server for video conference system, the packaging and optimization techniques for speech codec are studied. This embedded system is designed based on TMS320DM8168, which has an ARM+DSP heterogeneous architecture. After optimizing and validating the G.722 speech codecs, the codec functions are packaged into xDM-compliant modules. Consequently, these modules are integrated into a framework of remote processor execution (RPE), which makes the speech codec modules executed in DSP and utilizable for the on-chip ARM. Finally, in real implementation, the codec modules are validated. The result shows that the modules have high efficiency and meet the speech codec requirement for the media server in video conference system.
Key words : embedded system;DaVinci technology;video conference;RPE;G.722

    視頻會議系統因其便捷、高效、經濟、安全等特點,在政府、軍事、商貿、醫療、教育等部門有著廣泛的應用和需求。隨著通信技術和計算機技術的不斷發展,實現高集成度、低成本的嵌入式視頻會議系統方案已成為可能[1]。
    在基于TMS320DM8168達芬奇多核處理器的嵌入式視頻會議媒體服務器的語音編解碼器解決方案中,視頻流的編解碼處理可以使用芯片內部的專用高清視頻協處理器(HVICP2)高效完成[2]。而語音流的編解碼處理需要在DSP中自行設計編解碼處理算法完成。此外,還需要提供一種支持ARM端遠程控制并調用DSP端算法的解決方案。
    本文討論G.722編解碼器在DM8168上的C674x DSP核的實現和優化策略,并將實現的G.722編解碼算法封裝為標準的xDM模塊。此外,本文還介紹一種ARM端調用DSP執行該算法的方案:利用達芬奇技術的特性,通過遠程處理器執行(RPE)機制,在ARM端成功調用DSP上的編解碼模塊。實驗和測試結果表明,該算法和集成方案可以滿足視頻會議媒體服務器中的語音編解碼處理的功能需求。
1 視頻會議媒體服務器系統方案
    本設計中,嵌入式視頻會議媒體服務器主芯片選用德州儀器公司新近推出的達芬奇系列多媒體處理芯片TMS320DM8168。該芯片上集成了1個1.2 GHz的ARM Cortex A8、1個1 GHz的浮定點兼容的C674x DSP、3個高清視頻圖像協處理器(HDVICP2)以及大量的外設單元。其中片上集成的3個HDVICP2處理器可以進行3路獨立的1 080 p、60 f/s的H.264編碼或解碼,或者更多路低分辨率、低幀速率的編碼或解碼。DSP則用來做定制算法的開發。在嵌入式視頻會議媒體服務器的系統設計中采用ARM+HVICP2+DSP的異質多核架構,既能夠保持系統構建的靈活性,又能提供強大的處理能力。
    嵌入式視頻會議媒體服務器的主要功能是:從會議預先商定的多個網絡端口獲取來自不同會議終端的視頻流,并將遵循H.264編碼標準的視頻流解碼后進行混合拼接,將拼接結果重新編碼后通過指定網絡端口分別發至各會議終端。語音流的處理類似,媒體服務器將來自各終端的G.722語音流解碼后,完成混音疊加,再將不同的混音結果按照G.722標準編碼發送至各與會終端。
    本系統的處理框圖如圖1所示。以太網上解包獲得的多路H.264視頻流的編解碼處理全交由片上的HVICP2處理器來完成。ARM端負責系統高層信息流控制和各通道解碼后YUV視頻流的混合拼接,以及語音流的混音疊加功能。本文將著重介紹DSP端的G.722編解碼算法實現、優化,以及在ARM端的調用框架。

    圖3所示為G.722解碼器框圖[3],由于解碼器的構成與編碼器的構成有較強的對稱性,在此不再贅述。

2.2 G.722算法優化方案
    在本設計中,系統同時存在多路語音輸入,需要實例化多個G.722解碼模塊。為在保證實時性的同時節省計算資源,有必要研究提升算法性能的方法。由于G.722算法是在DM8168內部集成的C674x DSP內核上實現,所以可以通過改進算法的數據結構和DSP操作順序,充分利用C674x內核的并行性和按字處理的機制,提高算法執行效率。
    G.722編碼器和解碼器的正交鏡像濾波器具有一定的對稱性,結合C674x DSP的特點,可以對正交鏡像濾波器進行改進。
    如圖4所示,以編碼端為例,編碼正交鏡像濾波器執行子帶采樣和濾波,需要按照式(1)~式(4)對輸入xin進行濾波處理,生成xL和xH,即兩個子帶自適應脈沖調制編碼器的輸入。系統輸入的xin為16 bit寬度的有符號整型變量,在內存空間中連續存儲,可以直接使用DSP 32 bit內存訪問指令,一次載入兩個16 bit數據(圖4中I)。同時注意到在系統中,奇數序號的移位寄存器單元(x[2k+1])僅影響奇數部分(圖4左半部分)濾波器的輸出xodd,偶數移位寄存器單元僅影響偶數部分(圖4右半部分)濾波器輸出xeven,移位寄存器工作時也可以按照32 bit數直接處理(圖4中II)。此外,在進行濾波的乘累加運算時,若將兩個相鄰的16 bit奇數寄存器(如:x[23]和x[21])數據和兩個相鄰的濾波器系數(如:h[0]和h[1])數據分組后,分別以32 bit形式存儲,則可運用C674x DSP提供的半字乘加運算DOTP2,用一個指令完成兩次乘運算和一個加運算(圖4中III、IV)。使用圖4的結構可以減少DSP在進行編碼正交鏡像濾波時的所需的指令數。同樣,改進手段也適用于解碼部分的正交鏡像濾波器。

    表1列出了幾種不同優化情況下,編解碼器核心處理函數處理長度為10 ms的單幀語音數據時,C674x DSP上的執行指令數對比。

    從運行指令數可以看出,結合-o2編譯選項和本文提出的代碼優化方案后可以大幅度縮減算法執行所需的周期,提高算法性能。
3 G.722語音處理算法集成
3.1 xDM算法標準封裝

    出于系統開發和集成的考慮,在達芬奇平臺上進行DSP算法開發時需要遵循一定的標準規范,即TI提出的DSP算法標準xDAIS。xDAIS標準是一個龐大的體系,TI在此基礎上進行擴展,提供一個輕量級的算法標準框架xDM(xDAIS for Digital Media)。使用xDM標準可以較快速地將一個開發者自定義的算法實體集成至達芬奇系統。
    本設計中,按照xDMiUniversal接口標準,通過修改數據結構和上層處理調用接口,將G.722語音編解碼算法代碼分別封裝為G722ENC和G722DEC兩個xDM算法包。
3.2 遠程調用機制
    在達芬奇處理器的軟件結構中,ARM負責運行嵌入式Linux操作系統,主控系統信流,調度資源并分配任務。在如上以ARM為主核的機制下,為使ARM能夠調度DSP執行特定的算法操作,需要一種跨內核的算法調度機制。基于TI提供的Codec Engine(CE)方案是實現該跨核調度機制的一種方法[4]。然而,在本視頻會議系統中,由于多路視頻處理的需要,底層選取的多通道處理框架McFw(Multichannel Framework)與Codec Engine并不兼容。因此,本設計方案選取了遠程處理器執行框架RPE(Remote Processor Execution)來實現ARM對DSP的跨核調度功能。
    如圖5所示,虛線框內是RPE框架。RPE客戶端可以通過xDM解編函數將RPE操作接口執行的操作傳輸到消息隊列;DSP端的RPE根服務器和RPE實例服務器將檢查消息隊列并控制xDM算法服務器,創建或調用某個特定的xDM算法實例。所以ARM調用DSP執行算法的實質是:ARM端通過本地調用RPE操作接口,RPE通過底層的消息隊列機制傳輸操作消息,由xDM解編函數完成地址轉換和參數傳遞,控制DSP端RPE服務器框架加載并執行指定的xDM算法實例。

3.3 編解碼器集成性能測試
    實際系統中需要在ARM端完成對G.722編解碼器的調用,同時統計RPE框架和DSP語音數據處理的實際性能,以確保系統對語音處理的實時性。測試中選取的語音測試向量單幀緩存長度為10 ms,對應的編碼器和解碼器輸入數據緩存長度分別為320 B和80 B。ARM端通過RPE機制分別調用G.722編解碼模塊處理對應長度緩存的10 000幀數據,統計計算RPE調用和G.722編解碼所需的總時間以及處理單幀所需的平均時間。測試方法如圖6所示。

    實際測試結果表明,使用本文提出的代碼優化方案后編解碼處理效率有明顯提高,所需計算資源減少。而且處理單幀數據所需時間遠小于數據間隔(10 ms),可以滿足系統實時性的要求,在多線程的處理處理條件下,可以更大程度上節省DSP的計算開銷。
    利用TMS320DM8168達芬奇處理器構建嵌入式視頻會議媒體服務器時,視頻流編解碼處理可以由專用的視頻協處理器HVICP2完成,而語音G.722編解碼器則需要利用片上資源自行設計實現。本文介紹了G.722編碼器和解碼器在片內DSP核上的實現,并根據TI C674x DSP核的特點改進了正交鏡像濾波的流程,提升了算法運行效率。同時還介紹了G.722編解碼器的xDM算法封裝技術,通過RPE架構,成功在ARM端應用程序調用DSP執行G.722編解碼。編解碼實驗和嵌入式視頻會議系統實際運行測試表明,該集成框架和編解碼算法處理數據速度快,精度高,完全能夠滿足嵌入式視頻會議系統中多路語音實時編解碼處理功能的要求。
參考文獻
[1] TALLA D,GOLSTON J.Using DaVinci technology for digital  video devices[J].IEEE Journals & Magazines,2007(40):53-61.
[2] Texas Instrument Incorporated.TMS320DM816x DaVinci  video processors(Rev D)[R].Dallas:Texas Instruments Inc.2013.
[3] ITU.Recommendation ITU-T G.722:7 kHz audio-coding  within 64 kbit/s[S].Geneva,2012.
[4] Kong Xiangping,Lin Hezhi,Huang Lianfen.Implementation  of G.729 codec based on DaVinci technology[C].International Conference on Multimedia and Information Technology,Chiang Tailand,2008:11-40.
[5] 陳發堂,郭麗強.ARM+DSP嵌入式系統BootLoader在LTE中的實現[J].電子技術應用,2013,39(5):25-28.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 最黄网站 | 欧美激情一级 | 1769亚洲资源站365在线 | 97色噜噜刺激有声小说 | 最新亚洲人成网站在线影院 | 日本成片免费高清 | 欧美视频在线免费播放 | 99精品视频在线播放2 | 午夜精品国产 | 国产成人免费福利网站 | 激情久久久久久久久久 | 免费成人黄色大片 | 乱理最新乱理片中文 | 奇米影视一区二区三区 | 本日三级 | 2017天天干天天射 | 日韩成人在线播放 | 欧美日本色图 | 欧美国产三级 | 任你躁在线精品免费视频网站 | 国产一区曰韩二区欧美三区 | 精品乱人伦一区二区 | 亚洲成a人片77777老司机 | 欧美中文字幕 | www.精品视频 | 国产亚洲一区二区麻豆 | 国产观看精品一区二区三区 | 国产性xxx| 最近中文字幕mv免费视频 | 欧美成人免费草草影院视频 | 狠狠2018| 最近中文字幕免费完整国语 | 五月激情综合网 | 黄色影院网站 | 在线精品欧美日韩 | 人人做人人澡人人人爽 | 99成人在线视频 | 日本三级香港三级三级人 | 亚久久伊人精品青青草原2020 | 成人午夜影视 | 在线观看视频一区二区 |