數字視頻系統中的集成新概念
數字視頻配置工具
本文引用地址:http://dyxdggzs.com/article/171601.htm將數字視頻嵌入應用中的首要難題在于實(shí)施視頻的復雜性要遠遠超過(guò)簡(jiǎn)單的圖像與音頻壓縮和解壓縮。
數字視頻可以采用形形色色的形式與格式,開(kāi)發(fā)人員需要支持繁雜的配置和各種不同的方面,其中包括不同的分辨率/顯示器尺寸、不同的比特率、實(shí)時(shí)問(wèn)題乃至視頻源的可靠性等,例如來(lái)自硬盤(pán)驅動(dòng)器的視頻流與來(lái)自無(wú)線(xiàn)通信鏈路的視頻流的區別和處理。即使是那些看似簡(jiǎn)單明了的任務(wù)—如高效管理音頻/視頻同步以及在 IP 網(wǎng)絡(luò )上實(shí)現可靠的視頻傳輸,仍然會(huì )讓開(kāi)發(fā)人員傷透腦筋。
如何使這些技術(shù)難題迎刃而解就成為采用達芬奇技術(shù)成功實(shí)現數字視頻系統設計的關(guān)鍵。達芬奇技術(shù)所包含的四大要素,即處理器、開(kāi)發(fā)工具、軟件以及系統專(zhuān)業(yè)技術(shù)對于數字視頻設計的集成具有重要的作用,其中一個(gè)極為有效的工具就是包含在TI為配合達芬奇開(kāi)發(fā)所提供的數字視頻開(kāi)發(fā)包(DVSDK)中的數字視頻配置工具(eXpressDSP Configuration Kit)。
由于在達芬奇技術(shù)軟件結構中引入了編解碼引擎(Codec Engine)結構,Codec Engine就提供了對DSP標準化算法(XDAIS)的完全包裝,使得應用程序與DSP程序的開(kāi)發(fā)分離,更為方便簡(jiǎn)捷,Codec Engine使得DSP開(kāi)發(fā)人員不必關(guān)心應用程序端,只需按照相應的標準開(kāi)發(fā)出Codec Server,即可被應用程序正確調用。有了eXpressDSP配置工具的支持,開(kāi)發(fā)人員模塊之間的接口,eXpressDSP配置工具會(huì )自動(dòng)綁定編解碼器(CODEC)以及符合x(chóng)DM標準的軟件模塊,不需要任何其它的操作,幾乎可以將開(kāi)發(fā)時(shí)間從數月降到幾周之內,使軟件的重使用率大大增加。 eXpressDSP配置工具匯集了Linux和達芬奇技術(shù)的CODEC ENGINE以及DSP/BIOS,DSP/BIOS LINK。圖1為系統集成圖。
圖1 系統集成圖
數字視頻配置工具使得配置一個(gè)CODEC的過(guò)程極其簡(jiǎn)單,只需進(jìn)行簡(jiǎn)單的腳本配置,無(wú)需DSP編程便可以完成,首先得到在DSP上的符合x(chóng)DM 標準Codec庫,通過(guò)腳本配置語(yǔ)言進(jìn)行簡(jiǎn)單的配置,將此Codec庫至于Codec Engine中,進(jìn)行再次編譯鏈接。至此已經(jīng)完成了Codec上的全部工作。下面將逐步描述一個(gè)基于達芬奇開(kāi)發(fā)板的應用程序的生成過(guò)程:
第一步,開(kāi)發(fā)并完成Codec。就是要開(kāi)發(fā)音視頻編解碼的核心算法,按照xDM標準封裝成為Codec庫,Codec主要完成音視頻的核心算法,應用程序運行時(shí)被調用,并不參與其他功能。
第二步,將Codec集成到Codec Engine中。將第一步開(kāi)發(fā)完成的Codec或已有的符合x(chóng)DM的Codec集成到Codec Engine中,這一步需要配置兩個(gè)javascript的腳本文件,其中一個(gè)腳本文件表明了,Codec的使用和配置信息,文件名一般為*.cfg,另一個(gè)描述了Codec在達芬奇上的內存分配的配置,文件名一般為*tcf,配置好這兩個(gè)文件后,使用make命令即可生成Codec Engine,其文件名一般為*.X64P??杀粦贸绦蛑苯诱{用。
第三步,開(kāi)發(fā)音視頻應用程序,并在其中調用Codec Engine。在Linux下開(kāi)發(fā)音視頻應用程序,包括用戶(hù)界面,音視頻的采集、播放、同步等,其中完成對Codec Engine的調用,應用程序也要完成一個(gè)擴展名為cfg的腳本配置文件,以表明對Codec Engine的使用狀況。
第四步,加載DSPLINK和CMEM模塊,運行應用程序
至此一個(gè)完整的達芬奇音視頻應用程序就完成了,其中許多過(guò)程是通過(guò)腳本文件配置完成的,過(guò)程非常簡(jiǎn)單易懂,下面我們需要在達芬奇上運行它,首先要加載 DSPLINK和CMEM兩個(gè)驅動(dòng)程序模塊,其中DSPLINK主要實(shí)現了arm和dsp的底層通信,而CMEM則主要是完成了在物理段上分配連續內存的功能,加載完這兩個(gè)模塊,我們便可以直接運行已完成的應用程序。
圖形系統可視化工具
將多個(gè)軟件模塊集成只是整個(gè)開(kāi)發(fā)過(guò)程的第一步,DVDSK還包含一個(gè)圖形系統可視化工具,可用于分析和顯示整個(gè)系統的性能,從而幫助快速開(kāi)發(fā)數字媒體軟件?;?TMS320DM644x SoC分析器的可視化分析,以最小化的干預快速辨別和分離系統的各部分執行狀況,并通過(guò)捕捉數據鑒定程序運行狀況,以及顯示系統交互,負載分布和其它類(lèi)型的行為。在消除大量不必要的斷點(diǎn)跟蹤調試后,開(kāi)發(fā)者便可判斷出系統的瓶頸在哪里并加以解決。
TMS320DM644x SoC分析器使用戶(hù)花費時(shí)間解決問(wèn)題而不僅僅是發(fā)現問(wèn)題,作為一個(gè)完全的可視化分析工具,通過(guò)它用戶(hù)可以得到諸如系統交互分析、各部分負荷分析、瓶頸分離、異常行為分析和應用的基準性能等功能。
當一個(gè)任務(wù)在DSP和ARM上同時(shí)運行時(shí),分析器采集并顯示數據,提供了對應用程序完全的系統可視化,消除了手工收集、對比數據的繁瑣過(guò)程,如圖2所示可視化分析流程。
圖2 可視化分析流程
評論