MIPS架構(gòu)的醫(yī)院智能導(dǎo)診系統(tǒng)設(shè)計(jì)
SMP8654分層服務(wù)模型如圖3所示。最下面的一層是相關(guān)硬件,如CPU、視頻解碼器、音頻解碼器、并行I/O接口。中間的一層MRUA(Movim iento rectiline unitormemente acelerado)提供了訪問(wèn)這些硬件的抽象接口,另外DCC(Decoding Chain Control)是通過(guò)訪問(wèn)MRUA的接口實(shí)現(xiàn)對(duì)視頻播放控制、音頻解碼的操作。最頂層是軟件播放器,可以基于DCC實(shí)現(xiàn)網(wǎng)絡(luò)流媒體應(yīng)用,或者定制自己的軟件播放器。
3.2 利用圖形加速引擎優(yōu)化文字和高清圖片顯示
DCC是為應(yīng)用程序提供的編程接口,而MRUA面向底層硬件,為上層的DCC提供硬件抽象和功能接口。在深入理解了DCC是如何控制硬件顯示文字、處理圖片以及播放視頻之后,智能導(dǎo)診系統(tǒng)利用MRUA庫(kù)函數(shù)直接操作硬件特性,加快字體顯示、圖片處理效率,以及提升視頻播放等各方面性能。DCC提供的多個(gè)對(duì)象為應(yīng)用程序完成實(shí)際的功能提供函數(shù)接口,這些對(duì)象包括:
①Route。可以將Route理解為某個(gè)具體的媒體內(nèi)容(Content)到硬件視頻混合器(Hardware Video Mixer)的數(shù)據(jù)通道,它只負(fù)責(zé)把具體的媒體內(nèi)容傳送到硬件視頻混合器中。
②Surface。可以將Surface理解為視頻對(duì)象層(Video Object layer)。視頻信息,屏幕顯示以及字幕組成了一個(gè)完整的Content。在每一個(gè)Route對(duì)象中,通常會(huì)存在相同類(lèi)型的多個(gè)Surface對(duì)象。
③VideoSource。可以將VideoSource理解為一個(gè)專(zhuān)為Surface生成圖片的生產(chǎn)者,這個(gè)生成者可能是一個(gè)硬件視頻解碼器(Hardware MPEG decoder)。
④AudioMixer??梢詫udioMixer理解為一個(gè)類(lèi)似Route的東兩,它代表的也是一個(gè)數(shù)據(jù)通道,只不過(guò)它只負(fù)責(zé)將AudioSource這個(gè)音頻生產(chǎn)者生成的音頻幀信息組合成一個(gè)輸出。
⑤AudioSource??梢詫udioSource理解為音頻幀的生產(chǎn)者。
⑥D(zhuǎn)emuxSource。它是一個(gè)可分離流,并且將數(shù)據(jù)發(fā)送到視頻、音頻解碼器的一個(gè)對(duì)象。當(dāng)然也可以將它理解為一個(gè)生成者,負(fù)責(zé)將流(stream)數(shù)據(jù)分離出音頻和視頻信息,并發(fā)送到相關(guān)處理單元處理。
如圖3所示,流解析器從內(nèi)存中檢索到與文件有關(guān)的信息之后,將數(shù)據(jù)流分解,然后組包成視頻解碼器以及音頻解碼器所處理的數(shù)據(jù),并且交由DSP和Display Engine這樣的設(shè)備進(jìn)行處理。這些都可以由DCC控制,是由MRUA層抽象出的相關(guān)硬件功能。只要通過(guò)DCC層去控制相關(guān)硬件設(shè)備,便可以實(shí)現(xiàn)圖片和文字的高清顯示。下面將介紹如何通過(guò)DCC去控制GFX引擎實(shí)現(xiàn)圖片和文字的顯示。
GFX在圖中沒(méi)有畫(huà)出,它是某個(gè)具體的圖形加速設(shè)備。當(dāng)要播放一個(gè)高清的圖片或者繪制文字時(shí),通常要經(jīng)過(guò)幾個(gè)步驟:RUA實(shí)例初始化,DCC實(shí)例初始化,設(shè)置圖片的顯示窗口,初始化GFX引擎,執(zhí)行繪制,清空資源并退出。下面以偽碼的方式給出其具體實(shí)現(xiàn)過(guò)程:
int main(int argc,char*argv[]){
創(chuàng)建RUA實(shí)例;
創(chuàng)建DCC對(duì)象實(shí)例;
初始化圖片的顯示選項(xiàng);
初始化視頻的濕示選項(xiàng);
初始化播放控制選項(xiàng);
從命令行參數(shù)獲得欲顯示的文件信息以及圖片、視頻播放控制選項(xiàng)(如果沒(méi)有就使用默認(rèn)值)
裝載相關(guān)硬件單元微碼;
創(chuàng)建硬件混合器Mixer;
創(chuàng)建ScaIer對(duì)象;
//scaler=EMHWLIB_MODULE(DispGFXMultiScaler,0);
為當(dāng)前的Mixer對(duì)象創(chuàng)建一個(gè)關(guān)聯(lián)Scaler對(duì)象的索引;
初始化GFX引擎;
設(shè)置GFX對(duì)象的各通道屬性;
開(kāi)始在GFX上投遞繪制請(qǐng)求;
關(guān)閉GFX引擎,并依次關(guān)閉DCC實(shí)例對(duì)象,RUA實(shí)例對(duì)象;
}
結(jié)語(yǔ)
智能導(dǎo)診系統(tǒng)基于MiniGUI和SMP8654的SDK完成了視頻播放、文字圖片顯示的功能?;贛iniGUI的圖形及文字繪制函數(shù),如CreateLog Font、DrawText、LoadBitmap等的使用以及利用與硬件相關(guān)的圖形加速引擎繪制圖片和文件相結(jié)合的方式,增加了系統(tǒng)的圖形繪制效果,提升了智能導(dǎo)診系統(tǒng)性能。
綜上所述,系統(tǒng)基于MIPS架構(gòu)設(shè)計(jì)實(shí)現(xiàn)了高清播放機(jī)所要完成的視頻播放以及圖片文字顯示功能。通過(guò)研究基于MIPS架構(gòu)下的高清播放機(jī)最終選擇了速度比較好的高清播放機(jī)芯片SMP8654,使得視頻處理更加穩(wěn)定,圖片的加速解碼及顯示的速度更快。基于此架構(gòu)的系統(tǒng),可以擴(kuò)展到各種信息發(fā)布系統(tǒng)中,如醫(yī)院的信息發(fā)布系統(tǒng)、車(chē)載娛樂(lè)系統(tǒng),具有很好的應(yīng)用前景。
光耦相關(guān)文章:光耦原理
萬(wàn)用表相關(guān)文章:萬(wàn)用表怎么用
dc相關(guān)文章:dc是什么
手機(jī)電池相關(guān)文章:手機(jī)電池修復(fù)
c語(yǔ)言相關(guān)文章:c語(yǔ)言教程
linux相關(guān)文章:linux教程
c++相關(guān)文章:c++教程
評(píng)論