基于嵌入式Linux流媒體播放器系統軟硬件解決方案
摘要:本系統選用TQ2440 開發板作為硬件平臺,采用嵌入式Linux 操作系統給出流媒體播放器系統具體的軟硬件解決方案,設計了一款基于嵌入式Linux 的機頂盒媒體播放器。完成了其與網絡接口的實現,通過TS 流的解析實現,提供了對主流的MPEG- 2、MPEG- 4、H.264 等格式文件的支持。該系統具有良好的可移植性和可擴展性,能夠滿足不斷變化的市場需求。
本文引用地址:http://www.104case.com/article/148904.htm1 引言
計算機多媒體技術和網絡技術飛速發展使得基于流媒體的多媒體應用也被運用在多種領域,特別是網絡可視電話、遠程監控、視頻點播領域。伴隨著計算機多媒體壓縮技術的成熟和網絡傳輸技術的發展,開發實時可靠、多功能、數字化、操作簡單的基于計算機網絡通訊技術和多媒體應用的網絡化流媒體播放器已成為計算機、通信、消費電子產品領域(3C 產業-Computer、Communication、Consumer Electronics)技術發展的主要方向之一。
2 系統硬件設計
本文使用TQ2440 開發板作為硬件平臺。
S3C2440AL 是控制核心,負責控制所有輔助設備。存儲器采用SDRAM 和Flash 兩種類型,能滿足系統運行和調試的需要。基本端口包括以太網接口、USB 接口、兩個RS232 的串口。A/D 和D/A 模塊主要用于現場數據的采集與控制信號的輸出。DC/DC 模塊主要負責整個系統的供電。
S3C 2440AL 是三星公司設計開發的基于精簡指令集的ARM9 核的CPU, 工作頻率可以達到400MHz,且具有豐富的內部設備,其中主要包括:存儲器管理單元MMU、16kB 的指令緩沖器和16kB 數據緩沖器、存儲器控制器(SDRAM 控制器)、NANDFlash 和NOR Flash 控制器、4 通道的外部DMA 請求控制、3 個串行口、SD 存儲卡讀取接口、USB 主機、USB 設備、5 個脈寬調制定時器。目前,S3C2440AL 已廣泛地應用于PDA、智能手機、數字多媒體等方面。
3 系統的軟件設計
系統的軟件組成包括:嵌入式Linux 操作系統、設備驅動程序、圖形界面和瀏覽器程序,這些只是IPTV 機頂盒軟件組成的關鍵部分。
3.1 嵌入式操作系統的選擇及移植
本系統采用Linux 作為操作系統,并選用Linux2.6內核在嵌入式微處理器S3C2410 上移植,具體移植方法如下:
(1)準備Linux2.6 內核移植所必需的文件(內核壓縮包linux-2.6.tar.bz2 及交叉編譯器arm -linuxgcc-3.4.1.tar.bz2),這些文件可到Linux 官方網站免費下載。
(2)利用Linux 命令(mkdir,tar,mv 及export)安裝交叉編譯器arm-linux-gcc-3.4.1.
(3)修改Makefile 文件及相關硬件文件。由于內核的編譯是根據Makefile 文件的指示進行的,Makefile 文件來組織內核的各模塊之間的關系,記錄了各個模塊之間的相互聯系和依賴關系。所以,開發人員要首先修改Linux2.6 根目錄下的Makfile 文件,修改的主要內容是目標代碼的類型和為編譯內核指定一個編譯器。
(4)運用Make 命令編譯內核生成內核鏡像文件zImage 文件,通過相應的固化軟件把這個文件固化在系統相應的存儲器中,完成Linux2.6 內核在ARM 微處理器上的移植。
3.2 媒體播放器的總體架構
系統實現原理:在嵌入式微處理器S3C2440AL的控制下,TQ2440 開發板通過網絡接口接收來自內容服務提供商的音視頻廣播信息,之后運行圖形界面程序獲取音視頻信息,并在此基礎上生成音視頻節目清單,將信號傳至顯示屏進行顯示,將節目呈現給用戶。用戶利用顯示系統提供的圖形界面和瀏覽器使用鍵盤、鼠標進行控制,觀看節目,其總體架構如圖1 所示。
圖1 媒體播放器的總體架構
3.2.1 媒體播放器與網絡接口的實現
媒體播放器播放網絡上的多媒體文件時最大的特點是邊下載邊播放的“流式”特性。在IPTV 應用中,因為多媒體數據的流式特性需要媒體播放器與媒體服務器之間進行信息交互,所以它們之間須共同遵循一個交互協議標準。本系統播放器采用RTSP 協議與服務器之間建立及管理RTSP 會話,通過網絡傳輸協議接收來自網絡上的媒體數據。媒體播放器數據接收流程如圖2 所示。
圖2 媒體播放器數據接收流程
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論