新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于IntelPXA270平臺(tái)的嵌入式流媒體播放器設(shè)計(jì)

基于IntelPXA270平臺(tái)的嵌入式流媒體播放器設(shè)計(jì)

作者: 時(shí)間:2012-04-05 來源:網(wǎng)絡(luò) 收藏


解碼格式的可擴(kuò)展性

播放器支持的文件格式越多,其生命力也就越強(qiáng)大, 嵌入式處理器加上2700G 多媒體加速芯片的搭配方案為媒體播放提供了強(qiáng)大的硬件支持,通過軟件升級(jí),理論上可以支持任何媒體格式。本方案的做法是:在播放器中實(shí)現(xiàn)一個(gè)索引表類,將來根據(jù)需要新添加的編碼格式作為獨(dú)立的類注冊到索引表中。基于linux 的c++解碼類源代碼可以由網(wǎng)上開放源碼的解碼器網(wǎng)站下載,系統(tǒng)中的MP1,MP2,MP3 和WAV 的解碼就是采用這種方法實(shí)現(xiàn)的。

播放模塊實(shí)現(xiàn)

文件的輸入

在播放器系統(tǒng)中,文件的來源有兩種:由網(wǎng)卡讀入存儲(chǔ)器后播放或通過其它數(shù)據(jù)傳輸途徑寫入存儲(chǔ)器,在存儲(chǔ)器中直接播放。sophia 板提供了網(wǎng)卡的驅(qū)動(dòng)模塊,可以使用命令modprobe usbcore 和modprobe usbwlnc動(dòng)態(tài)加載,為數(shù)據(jù)從網(wǎng)卡經(jīng)由操作系統(tǒng)到達(dá)播放進(jìn)程提供一個(gè)全雙工的通道。數(shù)據(jù)的處理由播放器中的stream input 類來實(shí)現(xiàn)。

協(xié)議

實(shí)現(xiàn)流式傳輸有兩種方法:實(shí)時(shí)流式傳輸和順序流式傳輸,系統(tǒng)使用的是實(shí)時(shí)流式傳輸,需要標(biāo)準(zhǔn)化的協(xié)議來保證客戶機(jī)和專用的服務(wù)器之間進(jìn)行通信。根據(jù)流媒體協(xié)議的功能可以分為兩類:

基本網(wǎng)絡(luò)協(xié)議

為媒體傳輸提供基本的網(wǎng)絡(luò)服務(wù)支持,由于TCP需要較多的開銷,不太適合傳輸實(shí)時(shí)數(shù)據(jù)。在流式傳輸?shù)膶?shí)現(xiàn)方案中,采用RTSP/TCP 來傳輸控制信息,而用RTP/UDP 來傳輸實(shí)時(shí)聲音、圖像數(shù)據(jù)。

傳輸協(xié)議

傳輸協(xié)議包括RTP、RTCP、RTSP 和RSVP,RTP和RTCP 控制端到端網(wǎng)絡(luò)數(shù)據(jù)的傳輸,RTSP 提供話路控制的功能,RSVP 是可選的,它為播放進(jìn)程在網(wǎng)上預(yù)先申請一部分網(wǎng)絡(luò)資源( 即帶寬),能在一定程度上為流媒體在Internet 上的傳輸提供特殊服務(wù)質(zhì)量QoS。為流媒體設(shè)計(jì)的協(xié)議棧如圖3 所示:從UDP/TCP層得到的數(shù)據(jù)包處理后得到打包的RTP 數(shù)據(jù)流,通過RTP/RTCP/RTSP 層分離出定時(shí)和同步信息以及包的序列號(hào),將讀出的流文件交給ASF 和RM解碼模塊。



關(guān)鍵詞: PXA270 MPEG-4 流媒體

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉