基于Intel Sitsang平臺的便攜式多媒體中心
概述
本文引用地址:http://dyxdggzs.com/article/148725.htmSitsang開(kāi)發(fā)平臺是Intel專(zhuān)為嵌入式處理器PXA255設計的一個(gè)綜合開(kāi)發(fā)平臺。PXA255 是Intel推出的取代StrongARMSA1110 的新一代嵌入式應用處理器,它擁有Thumb 壓縮指令、64位長(cháng)乘法指令、擴展型DSP 指令等先進(jìn)特性,并集成了多通信信道、LCD控制器、增強型存儲控制器、PCMCIA/CF 控制器以及通用I/O 口。Sitsang 開(kāi)發(fā)平臺以PXA255為核心,配備了存儲器、液晶顯示屏、網(wǎng)卡、聲卡、USB控制器等設備,提供了豐富的外圍數據接口,包括IrDA、UART、USB擴展槽等外部數據接口。
本設計以Sitsang開(kāi)發(fā)板作為嵌入式開(kāi)發(fā)平臺,將“隨身看”、影音錄制、視頻輸出、海量存儲、視頻點(diǎn)播、網(wǎng)絡(luò )下載等多種功能融為一體,實(shí)現一個(gè)兼顧家庭娛樂(lè )和戶(hù)外便攜的便攜式多媒體中心。
; 系統總體方案
根據Sitsang開(kāi)發(fā)平臺的資源情況以及設計的目標要求,本設計在原有的Sitsang開(kāi)發(fā)平臺上擴展了一塊視頻擴展板,視頻擴展板的主要功能是視頻信號的輸出和錄制。系統總體結構如圖1所示。
圖1 系統框圖
系統實(shí)現
媒體播放器
多媒體功能是本系統的重點(diǎn),所以媒體播放器在本系統中具有舉足輕重的地位。為了能夠流暢播放多種格式的視頻文件,本系統在Sitsang開(kāi)發(fā)板上移植、修改并優(yōu)化了Linux媒體播放器MPlayer。
MPlayer是Linux 上最優(yōu)秀的多媒體播放器。它能使用眾多的編解碼器,支持廣泛的輸出設備。
MPlayer在Sitsang板上播放時(shí),顏色會(huì )出現偏差;正常模式不能在FrameBuffer的中間顯示;帶-fs的全屏參數播放后,只是將播放位置移到中間,并不放大,而且該模式不支持在播放時(shí)通過(guò)鍵盤(pán)事件觸發(fā)。如果要放大屏幕,需要加-vf scale=
MPlayer自帶的mp3lib浮點(diǎn)音頻解碼庫在Sitsang開(kāi)發(fā)板上的解碼效率很低,因此使用基于定點(diǎn)運算的libmad音頻解碼庫替代原有的mp3lib庫進(jìn)行音頻解碼。
MPlayer圖形界面在Qtopia視窗環(huán)境下無(wú)法運行。為了方便用戶(hù)使用,本系統提供了MPlayer在Qtopia下的用戶(hù)圖形界面。為了能將圖形界面的控制命令及時(shí)傳遞給MPlayer,使用MPlayer的-input選項,通過(guò)一個(gè)FIFO從GUI向后端程序傳遞控制信息。
通過(guò)上述優(yōu)化、修改后的MPlayer,能夠滿(mǎn)足系統方案中提出的流暢播放各種格式音、視頻文件的要求。
視頻輸出
本系統的視頻輸出電路(圖2)采用將Sitsang開(kāi)發(fā)板上的LCD輸出直接映射到電視機上的方式。這樣做的好處是:兩個(gè)輸出完全同步,媒體播放器可以不必理會(huì )輸出對象的改變。 具體的實(shí)現是通過(guò)硬件完成的。LCD控制器輸出的視頻信號(RGB數字信號)通過(guò)Philips公司的視頻編碼芯片SAA7102轉換成模擬復合視頻信號(CVBS)和分量視頻信號(Y/C),然后傳輸給電視機。因為L(cháng)CD輸出的時(shí)鐘頻率和SAA7102工作的時(shí)鐘頻率不同步,數據寬度也不相同,所以在系統中加了一片FIFO(74V3690),起數據緩存、時(shí)鐘轉換及數據寬度轉換的作用。在每幀信號開(kāi)始的時(shí)候,由VSYNC信號實(shí)現三者同步。由于LCD輸出的數據寬度是SAA7102輸入數據的兩倍,所以用了一個(gè)倍頻電路將SAA7102的時(shí)鐘信號加倍,以滿(mǎn)足數據傳輸的速率要求。
圖2 視頻輸出電路框圖
評論