《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM9的媒體播放器的設(shè)計(jì)方案
基于ARM9的媒體播放器的設(shè)計(jì)方案
摘要: 本系統(tǒng)利用TQ2440硬件平臺(tái)的優(yōu)勢(shì),將Linux2.6.14內(nèi)核移植到開(kāi)發(fā)板中,設(shè)計(jì)實(shí)現(xiàn)了一款基于嵌入式Linux的機(jī)頂盒流媒體播放器,完成了其與網(wǎng)絡(luò)接口的實(shí)現(xiàn),通過(guò)TS流的解析實(shí)現(xiàn),提供了對(duì)主流的MPEG-2、MPEG-4、H.264等格式文件的支持。該系統(tǒng)具有良好的可移植性和可擴(kuò)展性,能夠滿足市場(chǎng)需求的不斷變化。
關(guān)鍵詞: ARM ARM9 媒體播放器 Linux S3C2440AL
Abstract:
Key words :

1 引言

計(jì)算機(jī)多媒體技術(shù)和網(wǎng)絡(luò)技術(shù)飛速發(fā)展使得基于流媒體的多媒體應(yīng)用也被運(yùn)用在多種領(lǐng)域,特別是網(wǎng)絡(luò)可視電話、遠(yuǎn)程監(jiān)控、視頻點(diǎn)播領(lǐng)域。伴隨著計(jì)算機(jī)多媒體壓縮技術(shù)的成熟和網(wǎng)絡(luò)傳輸技術(shù)的發(fā)展,開(kāi)發(fā)實(shí)時(shí)可靠、多功能、數(shù)字化、操作簡(jiǎn)單的基于計(jì)算機(jī)網(wǎng)絡(luò)通訊技術(shù)和多媒體應(yīng)用的網(wǎng)絡(luò)化流媒體播放器已成為計(jì)算機(jī)、通信、消費(fèi)電子產(chǎn)品領(lǐng)域(3C 產(chǎn)業(yè)-Computer、Communication、Consumer Electronics)技術(shù)發(fā)展的主要方向之一。

2 系統(tǒng)硬件設(shè)計(jì)

本文使用TQ2440 開(kāi)發(fā)板作為硬件平臺(tái)。

S3C2440AL 是控制核心,負(fù)責(zé)控制所有輔助設(shè)備。存儲(chǔ)器采用SDRAM 和Flash 兩種類型,能滿足系統(tǒng)運(yùn)行和調(diào)試的需要。基本端口包括以太網(wǎng)接口、USB 接口、兩個(gè)RS232 的串口。A/D 和D/A 模塊主要用于現(xiàn)場(chǎng)數(shù)據(jù)的采集與控制信號(hào)的輸出。DC/DC 模塊主要負(fù)責(zé)整個(gè)系統(tǒng)的供電。

S3C 2440AL 是三星公司設(shè)計(jì)開(kāi)發(fā)的基于精簡(jiǎn)指令集的ARM9 核的CPU, 工作頻率可以達(dá)到400MHz,且具有豐富的內(nèi)部設(shè)備,其中主要包括:存儲(chǔ)器管理單元MMU、16kB 的指令緩沖器和16kB 數(shù)據(jù)緩沖器、存儲(chǔ)器控制器(SDRAM 控制器)、NANDFlash 和NOR Flash 控制器、4 通道的外部DMA 請(qǐng)求控制、3 個(gè)串行口、SD 存儲(chǔ)卡讀取接口、USB 主機(jī)、USB 設(shè)備、5 個(gè)脈寬調(diào)制定時(shí)器。目前,S3C2440AL 已廣泛地應(yīng)用于PDA、智能手機(jī)、數(shù)字多媒體等方面。

3 系統(tǒng)的軟件設(shè)計(jì)

系統(tǒng)的軟件組成包括:嵌入式Linux 操作系統(tǒng)、設(shè)備驅(qū)動(dòng)程序、圖形界面和瀏覽器程序,這些只是IPTV 機(jī)頂盒軟件組成的關(guān)鍵部分。

3.1 嵌入式操作系統(tǒng)的選擇及移植

本系統(tǒng)采用Linux 作為操作系統(tǒng),并選用Linux2.6內(nèi)核在嵌入式微處理器S3C2410 上移植,具體移植方法如下:

(1)準(zhǔn)備Linux2.6 內(nèi)核移植所必需的文件(內(nèi)核壓縮包linux-2.6.tar.bz2 及交叉編譯器arm -linuxgcc-3.4.1.tar.bz2),這些文件可到Linux 官方網(wǎng)站免費(fèi)下載。

(2)利用Linux 命令(mkdir,tar,mv 及export)安裝交叉編譯器arm-linux-gcc-3.4.1.

(3)修改Makefile 文件及相關(guān)硬件文件。由于內(nèi)核的編譯是根據(jù)Makefile 文件的指示進(jìn)行的,Makefile 文件來(lái)組織內(nèi)核的各模塊之間的關(guān)系,記錄了各個(gè)模塊之間的相互聯(lián)系和依賴關(guān)系。所以,開(kāi)發(fā)人員要首先修改Linux2.6 根目錄下的Makfile 文件,修改的主要內(nèi)容是目標(biāo)代碼的類型和為編譯內(nèi)核指定一個(gè)編譯器。

(4)運(yùn)用Make 命令編譯內(nèi)核生成內(nèi)核鏡像文件zImage 文件,通過(guò)相應(yīng)的固化軟件把這個(gè)文件固化在系統(tǒng)相應(yīng)的存儲(chǔ)器中,完成Linux2.6 內(nèi)核在ARM 微處理器上的移植。

3.2 媒體播放器的總體架構(gòu)

系統(tǒng)實(shí)現(xiàn)原理:在嵌入式微處理器S3C2440AL的控制下,TQ2440 開(kāi)發(fā)板通過(guò)網(wǎng)絡(luò)接口接收來(lái)自內(nèi)容服務(wù)提供商的音視頻廣播信息,之后運(yùn)行圖形界面程序獲取音視頻信息,并在此基礎(chǔ)上生成音視頻節(jié)目清單,將信號(hào)傳至顯示屏進(jìn)行顯示,將節(jié)目呈現(xiàn)給用戶。用戶利用顯示系統(tǒng)提供的圖形界面和瀏覽器使用鍵盤、鼠標(biāo)進(jìn)行控制,觀看節(jié)目,其總體架構(gòu)如圖1 所示。

圖1 媒體播放器的總體架構(gòu)

3.2.1 媒體播放器與網(wǎng)絡(luò)接口的實(shí)現(xiàn)

媒體播放器播放網(wǎng)絡(luò)上的多媒體文件時(shí)最大的特點(diǎn)是邊下載邊播放的"流式"特性。在IPTV 應(yīng)用中,因?yàn)槎嗝襟w數(shù)據(jù)的流式特性需要媒體播放器與媒體服務(wù)器之間進(jìn)行信息交互,所以它們之間須共同遵循一個(gè)交互協(xié)議標(biāo)準(zhǔn)。本系統(tǒng)播放器采用RTSP 協(xié)議與服務(wù)器之間建立及管理RTSP 會(huì)話,通過(guò)網(wǎng)絡(luò)傳輸協(xié)議接收來(lái)自網(wǎng)絡(luò)上的媒體數(shù)據(jù)。媒體播放器數(shù)據(jù)接收流程如圖2 所示。

圖2 媒體播放器數(shù)據(jù)接收流程

3.2.2 TS 流解析實(shí)現(xiàn)

在MPEG-2 系統(tǒng)中根據(jù)傳輸媒體的質(zhì)量不同定義了兩種復(fù)合信息流:傳送流(TS:Transport Stream)和節(jié)目流(PS:Program Stream)。TS 流與PS 流的區(qū)別在于TS 流的包結(jié)構(gòu)是固定長(zhǎng)度的,而PS 流的包結(jié)構(gòu)是可變長(zhǎng)度的。PS 包TS 包在結(jié)構(gòu)上的這種差異,致使TS 流比PS 流對(duì)傳輸誤碼的抵抗能力更強(qiáng),因此在本設(shè)計(jì)中的網(wǎng)絡(luò)多媒體數(shù)據(jù)采用了TS 的封裝格式。TS 包的結(jié)構(gòu)如圖3 所示,由包頭和包數(shù)據(jù)兩部分組成,包頭長(zhǎng)度占4B,自適應(yīng)區(qū)和包數(shù)據(jù)共占184B,整個(gè)TS 包長(zhǎng)度相當(dāng)于4 個(gè)ATM 包長(zhǎng)。

圖3 TS 包的結(jié)構(gòu)

因?yàn)樵赥S 流里可以填入很多東西,所以制定TS流標(biāo)準(zhǔn)的機(jī)構(gòu)就規(guī)定了PSI (Program SpecificInformation)表,其作用是從一個(gè)攜帶多個(gè)節(jié)目的某一個(gè)TS 流中正確找到特定的節(jié)目。

PSI 表包括以下四個(gè)表:

(1)PAT 表(Program Association Table)即節(jié)目關(guān)聯(lián)表,它的主要作用是指出該傳輸流ID,以及該路傳輸流中所對(duì)應(yīng)的幾路節(jié)目流的MAP 表和網(wǎng)絡(luò)信息表的PID.

(2)PMT 表(Program Map Table)即節(jié)目映射表,該表的PID 由PAT 提供,通過(guò)該表可以得到一路節(jié)目中包含的信息。

(3)CAT 表(Conditional Access Table)即條件訪問(wèn)表,PID 是0x01.CAT 攜帶的是服務(wù)器的私有信息(CA 系統(tǒng)就需要使用該表格實(shí)現(xiàn)節(jié)目的解密)。

(4)NIT 表(Network Information Table) 即網(wǎng)絡(luò)信息表,該表包括數(shù)字電視網(wǎng)中所有的傳輸流的物理傳輸網(wǎng)信息,包含節(jié)目的頻道調(diào)諧參數(shù)、頻率、符號(hào)率等,這些信息使得接收機(jī)可以按照用戶的選擇以很少的延時(shí)或無(wú)延時(shí)地改變頻道、調(diào)諧參數(shù),正確地解碼出TS。

所以TS 流解析流程如圖4所示:先接收一個(gè)負(fù)載里為PAT 的數(shù)據(jù)包,在整個(gè)數(shù)據(jù)包里找到一個(gè)PMT 包的ID.然后再接收一個(gè)含有PMT 的數(shù)據(jù)包,在這個(gè)數(shù)據(jù)包里找到有關(guān)填入數(shù)據(jù)類型的ID.之后就在接收到的TS 包里找到含有這個(gè)ID 的負(fù)載內(nèi)容就是填入的信息。根據(jù)填入的數(shù)據(jù)類型的ID 的不同,在TS 流復(fù)合多種信息,解有這些信息的傳輸包即可解出音視頻的PES 包,最終解出音頻流和視頻流。

圖4 TS 流解析流程

由于時(shí)間和資源有限,本設(shè)計(jì)中移植成熟的QT/Embedded 庫(kù)到機(jī)頂盒的嵌入式系統(tǒng),作為其圖形界面類庫(kù)。Qt/Embedded 采用frame buffer (幀緩沖)作為底層圖形接口。同時(shí),將外部輸入設(shè)備抽象為keyboard 和mouse 輸入事件。Qt/Embedded 的應(yīng)用程序可以直接寫內(nèi)核緩沖幀,這避免開(kāi)發(fā)者使用繁瑣的XLIB/Server 系統(tǒng)。界面程序流程圖如圖5 所示。

圖5 界面程序流程圖

4 結(jié)語(yǔ)

本系統(tǒng)利用TQ2440 硬件平臺(tái)的優(yōu)勢(shì),將Linux2.6.14 內(nèi)核移植到開(kāi)發(fā)板中,設(shè)計(jì)實(shí)現(xiàn)了一款基于嵌入式Linux 的機(jī)頂盒流媒體播放器,完成了其與網(wǎng)絡(luò)接口的實(shí)現(xiàn),通過(guò)TS 流的解析實(shí)現(xiàn),提供了對(duì)主流的MPEG-2、MPEG-4、H.264 等格式文件的支持。該系統(tǒng)具有良好的可移植性和可擴(kuò)展性,能夠滿足市場(chǎng)需求的不斷變化。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲在线观看免费视频| 亚洲国产精品传媒在线观看| 国产日韩一区二区| 欧美日韩一卡二卡| 欧美国产亚洲视频| 免费不卡视频| 六月丁香综合| 久久婷婷一区| 久久久亚洲欧洲日产国码αv| 午夜精品短视频| 亚洲欧美一区二区激情| 亚洲影院在线观看| 亚洲图片欧美日产| 国产精品99久久久久久久久久久久| 最新日韩av| 亚洲黄色有码视频| 亚洲精品国产拍免费91在线| 亚洲国产美国国产综合一区二区 | 在线免费观看日本一区| 国产亚洲精品久久久久久| 国产精品手机在线| 国产精品亚洲第一区在线暖暖韩国| 国产精品九色蝌蚪自拍| 国产精品va在线播放| 国产精品丝袜白浆摸在线| 国产欧美欧洲在线观看| 国产一区二区三区的电影| 韩国精品在线观看| 亚洲国产欧美在线人成| 亚洲精选中文字幕| 国产精品99久久久久久宅男| 亚洲欧美日韩直播| 欧美一区2区三区4区公司二百| 亚洲第一黄色| 亚洲靠逼com| 亚洲一区在线免费| 欧美在线网址| 久色成人在线| 欧美区日韩区| 国产精品久久久久久久久免费樱桃| 国产精品夜夜夜| 黑人中文字幕一区二区三区| 亚洲黄色尤物视频| 一二美女精品欧洲| 午夜影院日韩| 亚洲精品国产欧美| 亚洲字幕在线观看| 欧美专区在线播放| 欧美~级网站不卡| 欧美色视频日本高清在线观看| 国产欧美va欧美不卡在线| 黄色成人av网| 一区二区高清| 久久精品国产亚洲aⅴ| 99视频精品| 欧美一区二区三区喷汁尤物| 美日韩精品视频免费看| 欧美日韩精品伦理作品在线免费观看| 国产精品美腿一区在线看| 国内精品亚洲| aa级大片欧美三级| 久久成人精品| 一区二区三区日韩欧美精品| 久久av一区二区三区亚洲| 美腿丝袜亚洲色图| 国产精品国产三级国产aⅴ入口| 国产在线拍偷自揄拍精品| 亚洲精品一区二区三区福利| 午夜精品久久久久久久白皮肤| 亚洲黄色有码视频| 欧美亚洲免费在线| 欧美精品一区二区三区在线播放| 国产日韩欧美精品一区| 亚洲精品一区在线观看香蕉| 欧美在线一二三四区| 一本色道久久综合亚洲精品不卡 | 欧美国产成人在线| 国产日韩欧美成人| 亚洲精品视频在线观看免费| 久久国产天堂福利天堂| 亚洲一区自拍| 欧美激情第二页| 国产综合色一区二区三区| 在线天堂一区av电影| 亚洲日本中文| 久久久久一区二区三区四区| 欧美视频在线播放| 在线欧美一区| 欧美一区二区三区在线视频| 亚洲性夜色噜噜噜7777| 欧美第一黄色网| 国产真实乱子伦精品视频| 一本一本久久| 日韩视频欧美视频| 麻豆国产精品一区二区三区 | 国产亚洲免费的视频看| 一二三区精品| 一区二区欧美在线| 欧美国产另类| 精品动漫3d一区二区三区| 亚洲影院免费观看| 亚洲视频高清| 欧美人妖另类| 亚洲国产另类久久精品| 久久精品九九| 久久九九99| 国产欧美va欧美va香蕉在| 亚洲无毛电影| 亚洲宅男天堂在线观看无病毒| 欧美精品色综合| 亚洲国产精彩中文乱码av在线播放| 久久精品噜噜噜成人av农村| 久久精品国产欧美亚洲人人爽| 国产精品美女在线观看| 在线亚洲免费| 亚洲影院在线| 国产精品久久久久久久久久直播| 一区二区三区**美女毛片| 国产精品99久久不卡二区| 欧美日韩天堂| 99精品国产在热久久| 亚洲调教视频在线观看| 欧美午夜在线观看| 亚洲小说区图片区| 亚洲宅男天堂在线观看无病毒| 国产精品va在线| 亚洲一区二区三区精品视频| 午夜精品久久久久久久99黑人| 国产精品久久激情| 亚洲一区二区三区久久 | 欧美有码视频| 国产视频久久久久久久| 性欧美长视频| 久久九九免费视频| 国语自产精品视频在线看| 久久精品1区| 欧美成人国产| 亚洲精品视频一区| 亚洲女与黑人做爰| 国产女主播一区二区三区| 午夜精品网站| 久久人人爽人人| 亚洲高清成人| 亚洲无线一线二线三线区别av| 国产精品日韩精品欧美精品| 午夜欧美大尺度福利影院在线看 | 狠狠色2019综合网| 亚洲激情网站免费观看| 欧美精品1区2区3区| 一区二区三区欧美| 欧美一区网站| 伊人久久大香线蕉av超碰演员| 亚洲精品美女久久久久| 欧美日韩亚洲一区二区三区| 亚洲性xxxx| 久久一区国产| 亚洲另类黄色| 欧美一区二区性| 亚洲高清免费在线| 亚洲淫性视频| 激情91久久| 亚洲特色特黄| 国产亚洲欧美一区二区| 亚洲日本黄色| 国产精品久久久久久久久借妻| 香蕉久久一区二区不卡无毒影院| 蜜臀久久久99精品久久久久久| 日韩午夜在线电影| 久久www成人_看片免费不卡| 亚洲缚视频在线观看| 亚洲欧美日韩视频二区| 狠久久av成人天堂| 亚洲图片激情小说| 国产在线精品一区二区中文| 亚洲最新在线视频| 国产视频在线观看一区| 日韩视频三区| 国产一区日韩二区欧美三区| 99国内精品久久| 国产日韩一区二区| 一区二区不卡在线视频 午夜欧美不卡在| 国产精品你懂的在线| 亚洲高清一二三区| 欧美性色aⅴ视频一区日韩精品| 久久国产精品免费一区| 欧美日韩三级| 亚洲国产一区视频| 国产精品久久久久久久久久ktv| 亚洲国产片色| 国产美女一区二区| av成人激情| 黄色亚洲在线| 午夜精品理论片| 91久久精品一区二区别| 久久国产精品99久久久久久老狼| 亚洲精品久久久一区二区三区| 久久久久久久综合| 一区二区免费在线视频| 欧美 日韩 国产一区二区在线视频 | 欧美在线网址|