簡(jiǎn)述無(wú)線車載終端播放器設(shè)計(jì)與實(shí)現(xiàn)
引 言
人民生活水平的提高,公車、轎車等交通工具作為人們的代步工具,越來(lái)越普及,汽車的智能化、個(gè)性化需求越來(lái)越高,尤其是客車、公交汽車中娛樂(lè)以及信息服務(wù)也越來(lái)越受到重視,集成媒體播放,硬盤錄像,無(wú)線傳輸?shù)榷囗?xiàng)功能于一體的車載終端產(chǎn)品,集成定位,通信、汽車行駛記錄儀等多項(xiàng)功能;具有強(qiáng)大的業(yè)務(wù)調(diào)度功能和數(shù)據(jù)處理能力;支持電話本呼叫、文字信息語(yǔ)音播報(bào);具有安防報(bào)警、剪線報(bào)警及遠(yuǎn)程安全斷油、斷電安全保護(hù)功能;預(yù)留多個(gè)RS-232接口和RS485接口,可外接計(jì)價(jià)器、攝像頭、麥克風(fēng)、耳機(jī)、TTS語(yǔ)音合成盒子。分體式設(shè)計(jì)主機(jī)可隱蔽安裝,自備高量備用電池可供車載終端的無(wú)電情況下工作報(bào)警。
1 無(wú)線車載終端系統(tǒng)簡(jiǎn)介
車載無(wú)線終端,屬于出租車管理領(lǐng)域。本實(shí)用新型使得乘客在乘車時(shí)可以接收到管理中心發(fā)送的各種信息,乘客也可以反饋信息到管理中心或者登陸互聯(lián)網(wǎng)。本實(shí)用新型包括控制模塊、無(wú)線通信模塊LCD模塊、鍵盤模塊。所述控制模塊耦接所述無(wú)線通信模塊,該無(wú)線通信模塊可接收來(lái)自控制模塊的信號(hào)并向管理中心發(fā)送信息,也可接收管理中心發(fā)送的信息并向控制模塊發(fā)送相關(guān)指令。所述LCD模塊和鍵盤分別與所述無(wú)線通信模塊耦接,乘客通過(guò)鍵盤輸入各種指令給所述無(wú)線通信模塊,無(wú)線通信模塊接收到的信息通過(guò)LCD模塊顯示出來(lái)。
無(wú)線車載終端系統(tǒng)采用AU1200的嵌入式CPU內(nèi)核,配以車載硬盤、無(wú)線網(wǎng)卡、攝像頭、用戶控制鍵盤、顯示器等部分組成。在車站采用服務(wù)器管理系統(tǒng),可通過(guò)車站的Wi-Fi網(wǎng)絡(luò)實(shí)現(xiàn)車載終端系統(tǒng)和車站服務(wù)器之間的無(wú)線數(shù)據(jù)傳輸,車輛進(jìn)站時(shí),服務(wù)器會(huì)自動(dòng)對(duì)車載終端系統(tǒng)進(jìn)行檢查和記錄,并進(jìn)行相應(yīng)更新,其包括節(jié)目、廣告的下載和錄像圖片或視頻的上傳。車輛還可通過(guò)用戶控制鍵盤選擇是否上傳車程中PVR(Personal Video Recoder)錄像。PVR 實(shí)際上是不需要錄像帶的VCR(錄像機(jī))。 普通的VCR只是將電視機(jī)節(jié)目錄制到VHS 錄像帶上,而PVR用一塊內(nèi)置硬盤驅(qū)動(dòng)器代替了錄像帶。在將電視節(jié)目錄制到PVR的內(nèi)置硬盤中,您就可以播放錄制的節(jié)目,可以快進(jìn),想看多少便就看多少遍,等最后看夠了,就從硬盤上刪除。所有的PVR在機(jī)殼后部的面板上都有耳機(jī)插孔。通過(guò)這個(gè)插孔還可以用來(lái)更新PVR的節(jié)目收視指南,您可以瀏覽在接下來(lái)的一周內(nèi)將要播放的所有節(jié)目,您還可以通過(guò)編排節(jié)目收視指南,只錄制具有某些關(guān)鍵詞的節(jié)目。其框圖如圖1所示。
2 無(wú)線車載終端播放器硬件設(shè)計(jì)
該方案由處理器、電源、存儲(chǔ)器、外設(shè)接口、人機(jī)界面等組成。圖2是車載終端硬件電路模塊示意圖。
?。?)處理器:采用Alchemy Au1200,是MIPS架構(gòu)的一款低功耗,高性能處理器??芍С諻indows CE,Linux等操作系統(tǒng)。它的主頻可達(dá)500 MHz功耗低于400 mW,集成媒體加速引擎,可支持的媒體格式包括MPEG1,MPEG2,MPEG4,WMV9,H.263,DivX,Xvid,MP3,WMA,WAV,ASF,AVI,JPEG等。
?。?)電源:一般車載電源為12 V直流電源,需經(jīng)過(guò)變換為5 V,3.3 V,1.8 V和1.2 V的直流電源,該電路采用芯片LM2676ADJ和LM2381實(shí)現(xiàn)。
?。?)存儲(chǔ)器部分:分為內(nèi)存和外存儲(chǔ)器。內(nèi)存由FLASH和DDR共同構(gòu)成,主要功能是存儲(chǔ)并運(yùn)行bootloader以及應(yīng)用程序、驅(qū)動(dòng)程序等二進(jìn)制文件。
Flash 是一種創(chuàng)作工具,設(shè)計(jì)人員和開(kāi)發(fā)人員可使用它來(lái)創(chuàng)建演示文稿、應(yīng)用程序和其它允許用戶交互的內(nèi)容。Flash 可以包含簡(jiǎn)單的動(dòng)畫(huà)、視頻內(nèi)容、復(fù)雜演示文稿和應(yīng)用程序以及介于它們之間的任何內(nèi)容。通常,使用 Flash 創(chuàng)作的各個(gè)內(nèi)容單元稱為應(yīng)用程序,即使它們可能只是很簡(jiǎn)單的動(dòng)畫(huà)。您也可以通過(guò)添加圖片、聲音、視頻和特殊效果,構(gòu)建包含豐富媒體的 Flash 應(yīng)用程序。FLASH采用的是Intel公司的TE28F128J3C,DDR采用NT5TU32M16AG。外存是硬盤,用于存放通過(guò)無(wú)線網(wǎng)絡(luò)下載的多媒體文件以及在客車行駛過(guò)程中拍攝的PVR錄像,硬盤部分主要通過(guò)兩片雙向總線數(shù)據(jù)收發(fā)器74LVC245實(shí)現(xiàn)。
?。?)外設(shè)接口:實(shí)現(xiàn)功能包括目標(biāo)板與PC機(jī)的通信,多媒體文件傳輸及保存,音視頻數(shù)據(jù)的播放等。采用的接口有串口,以太網(wǎng)口,VGA(Video Graphics Ar-ray),Audio,IDE以及USB口。串口主要用于在宿主機(jī)開(kāi)發(fā)環(huán)境中目標(biāo)板與PC機(jī)之間的通信;以太網(wǎng)接口主要用于文件系統(tǒng)的掛載;IDE接口用于硬盤的連接,針對(duì)車載系統(tǒng)不可避免的顛簸抖動(dòng),IDE接口減少了硬盤接口的電纜數(shù)目與長(zhǎng)度,數(shù)據(jù)傳輸?shù)目煽啃缘玫搅嗽鰪?qiáng);VGA接口用于連接終端顯示器,處理器內(nèi)部以數(shù)字方式生成的顯示圖像信息經(jīng)過(guò)數(shù)/模轉(zhuǎn)換器ADV7123轉(zhuǎn)變?yōu)镽,G,B三原色信號(hào)和行、場(chǎng)同步信號(hào),信號(hào)通過(guò)電纜傳輸?shù)斤@示設(shè)備中,使圖像顯示更加清晰。
3 無(wú)線車載終端播放器的軟件實(shí)現(xiàn)
無(wú)線車載終端播放器要實(shí)現(xiàn)包括MPEG1,MPEG2,MPEG3,MPEG4,H.263,H.264等格式的多媒體的播放。采用在軟件解碼的基礎(chǔ)上加AU1200的媒體加速引擎(MAE)實(shí)現(xiàn)。這里設(shè)計(jì)的無(wú)線車載終端播放器的軟件整體架構(gòu)圖如圖3所示。車載系統(tǒng)采用軟硬件結(jié)合的方式對(duì)多媒體文件進(jìn)行解碼。軟件解碼主要采用媒體應(yīng)用接口MAI(Media ApplicationInterface)和多媒體引擎MAI Engine,硬件解碼主要采用AU1200的板載硬件設(shè)備MAE(Media AccelerationEngine)。
?。?)MAI:是一個(gè)流媒體的架構(gòu),用于對(duì)多媒體的管理。MAI Engine會(huì)接收由輸入設(shè)備輸入的媒體信息,根據(jù)多媒體文件的類型連接MAI相應(yīng)的解碼算法文件處理該媒體流,并將其輸出到視頻或音頻設(shè)備。MAIEngine對(duì)媒體流的控制主要包括以下幾個(gè)方面:
①預(yù)覽媒體流以確定格式;
②載入并連接所需的各獨(dú)立元素用于對(duì)媒體流的解碼等工作;
?、厶幚聿シ诺拿睿喝鐣和?、播放、定位等;
?、苷聿シ胚M(jìn)度以及錯(cuò)誤信息并向應(yīng)用程序報(bào)告。
?。?)播放器應(yīng)用層:包括:播放器應(yīng)用程序,MAIEngine的引擎函數(shù),MAI針對(duì)各種格式的多媒體文件的元素庫(kù)。
?。?)音視頻解碼:播放器軟件解碼程序的流圖如圖4所示。在多媒體文件解碼過(guò)程中,首先播放器應(yīng)用程序分別調(diào)用播放文件函數(shù):Player_PlayFile()和引擎函數(shù)MAIengine_QuerySupport()進(jìn)行對(duì)多媒體文件的讀取和多媒體文件類型的檢測(cè),支持此過(guò)程完成的庫(kù)函數(shù)是Libmaifilereader.so。接下來(lái),播放器應(yīng)用程序調(diào)用引擎函數(shù)MAIengine AutoConnect(),該函數(shù)會(huì)根據(jù)多媒體文件的類型調(diào)用庫(kù)文件對(duì)多媒體文件進(jìn)行解復(fù)用,支持解復(fù)用的庫(kù)文件包括Libmaimpeg2demux.so和Lib-maimpeg4demux.so等;再根據(jù)解復(fù)用后的音視頻格式調(diào)用庫(kù)文件進(jìn)行音視頻的解碼,播放器可解碼的音頻格式有MP3,OGG,WAV等,可解碼的視頻格式有MPEG1,MPEG2,MPEG4等;支持解碼的庫(kù)函數(shù)主要包括Lib-maimp3dec.so,Libmaimpeg2dec.so等;解碼后分別通過(guò)調(diào)用庫(kù)文件Libmaiaudrend.so和Libmaividrend.so對(duì)音視頻數(shù)據(jù)進(jìn)行渲染。
?。?)MAE:是一種能解碼的基于塊的視頻格式的硬件加速單元,它主要負(fù)責(zé)對(duì)上層軟件解碼出來(lái)的可變長(zhǎng)度編碼進(jìn)行解碼。在AlchemyTM AU1200TM proces-sor承擔(dān)了視頻解碼、縮放、顏色空間轉(zhuǎn)換和過(guò)濾功能的片上硬件。通過(guò)在硬件上完成大部分的視頻解碼任務(wù),因此省掉了外部DSP電路,MAE把MIPS32TM處理器核解放出來(lái)去執(zhí)行用戶交互,音頻處理和其他任務(wù)。同時(shí),因?yàn)樘幚砥魃线\(yùn)行的軟件將不同長(zhǎng)度的解碼信息傳遞給MAE。MAE硬件上被分為前端和后端,各自執(zhí)行特定的任務(wù)。
(5)外設(shè)驅(qū)動(dòng):AU1200將上層軟件解析出來(lái)的視頻宏塊數(shù)據(jù)寫回給DDR存儲(chǔ)器;然后通過(guò)DMA控制MAE從DDR存儲(chǔ)器取出視頻宏塊數(shù)據(jù),將其解壓縮成RGB數(shù)字信號(hào),并將RGB數(shù)字信號(hào)再寫回到DDR存儲(chǔ)器,然后由LCD控制器從DDR存儲(chǔ)器中取出該數(shù)據(jù)輸人輸出到數(shù)/模轉(zhuǎn)換器ADV 7123,經(jīng)ADV 7123轉(zhuǎn)換為R,G,B三原色信號(hào)和行、場(chǎng)同步信號(hào),信號(hào)通過(guò)VGA接口輸?shù)斤@示設(shè)備中,至此,便完成了視頻的播放。
4 結(jié) 語(yǔ)
無(wú)線車載多媒體終端系統(tǒng)是目前研究的熱點(diǎn)之一,這里提供了一種基于AU1200的嵌入式車載終端播放器的設(shè)計(jì)實(shí)現(xiàn)方案,具有功耗低,軟硬件解碼,省略外部DSP電路,通過(guò)Wi-Fi網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)的無(wú)線下載,節(jié)目源的更新,且功能模塊化,便于升級(jí)等,具有較大的實(shí)用價(jià)值。