1 引言 隨著多媒體技術和網絡技術的不斷發展,在樓宇電視廣告播放技術上,網絡化的播放系統將逐漸取代現行的廣告機本地播放方式。多樣化、實時化的發布模式以及智能化、人性化的管理平臺,將推動樓宇電視廣告行業的發展。 在網絡化的播放系統中,具有聯網功能的多媒體播放終端是一個關鍵設備,它可以播放圖片、音樂、視頻、文字,成了整個播放系統不可分割的一部分。在新一代的播放系統中,中心管理員可以通過互聯網或內部網對其進行方便的配置和管理,安排具有個性化的播放內容,有效地解決了現有播放終端內容相對單調固定的缺陷。 本文根據這一新的需求,提出了一種新穎的適合網絡播放的多媒體播放終端的設計方案。 2 硬件設計 2.1 功能分析 表1對新一代網絡播放終端與獨立播放機進行了比較。 為了實現網絡遠程控制播放,多媒體播放終端必須具備以下功能:1)連接服務器:啟動后,自動連接遠程服務器;2)定時通信:定時與服務器進行握手通信;3)日志管理:記錄終端運行狀態,形成日志文件,定時向服務器反饋日志信息;4)遠程接受任務并按要求執行:隨時接受中心/分中心發送的任務,任務內容包 括:定時自動開關機、定時自動下載播放文件、定時播放指定的媒體文件;5)支持多種視音頻和圖片格式,播放質量達到DVD級畫質及音質要求;6)可監控各區域播放工作狀態;7)多種視頻輸出接口,可外接LCD,LED,PDP等多種顯示終端;8)支持遠程軟件升級。 2.2 硬件平臺選擇 目前,生產多媒體處理器并推出相應解決方案的半導體供應商多達十幾家,比較典型的有Intel,AMD,TI,Freescale,ADI,NXP,SigmaDesigns,ST,Sharp,Sunplus(凌陽)以及深圳安凱等。這些廠商提供的處理器因為源自不同的架構,在性能、接口、功耗等方面差異很大,在選擇方案時,要從處理能力、支持的視頻格式、支持的接口、功耗、軟件和操作系統(OS)支持以及成本等方面作精心比較: 1) 處理能力及支持的視頻格式 Intel的PXA270和AMD的Au1200都是通用處理器,性能較強大,支持的音視頻格式有MPEG-1/2/4,WMV9,DivX,XVID,MP3,WMA,WAV,ASF,AVI,JPEG等。但PXA270需媒體加速器配合才能更好地工作,方案相對較復雜。基于DSP的解決方案包括TI的DM270/DM320、NXP的PNX0190和ADI的Blackfin系列。此類方案仍需一個MCU(ARM7或ARM9)來處理系統的通用功能,如操作系統和用戶接口等。音視頻解碼是DSP的專長,一般支持MPEG-1/2/4,DivX,WMV9和JPEG等格式。 2) 支持的接口 豐富的接口使開發人員可以擴展功能或在確定外圍器件時有更多的選擇。多媒體處理器的外圍接口主要包括存儲器接口、USB接口、存儲卡接口、攝像頭接口、硬盤接口、顯示接口、網絡接口等。現有的方案都支持SDRAM,不過只有AMD,Intel和NXP還能同時支持DDR存儲器,這有利于實現更快的編解碼速率。主流方案都支持USB2.0。多數方案至少支持兩種存儲卡格式,如MMC/SD或SD/CF等,部分方案支持網絡接口,如AMD,Intel和SigmaDesigns等。 3) 支持的操作系統 軟件開發是播放器開發的重要組成部分,如能縮短軟件開發時間,就可加速產品上市。對于不同結構的硬件,軟件開發的難易程度也有區別。基于X86指令的PXA270處理器,編程較容易。DSP的算法最復雜,需要耗費大量的編程時間,所以供應商往往會提供完整的軟件解決方案,如TI和NXP都提供了開發套件。基于MCU的解決方案提供了比DSP解決方案更容易的可編程性。大多數方案支持Linux操作系統,此外還需要中間件(如媒體播放器)、編解碼器和應用程序等。 4) 功耗 一般來說,依靠軟件編解碼的方案將具有更高的功耗,例如Intel和AMD的方案;而依靠硬件進行編解碼的方案更省電,如Freescale的方案;DSP+ARM方案的功耗介于兩者之間。對于本文設計的交流供電的播放器,功耗不是問題。 筆者選用AMD公司的Alchemy Au1200作為多媒體處理器,其功耗低。 2.3 硬件系統結構 本播放終端是一個嵌入式系統,是以微計算機技術為基礎的軟硬件結合的專用系統,整個系統按分層結構設計: 1) 應用層:圖形用戶界面設計、媒體文件播放等; 2) 操作系統層:線程調度、文件系統等; 3) 多媒體解碼:媒體加速引擎,MPEG-1/2/4、WMV9等的解碼; 4)驅動層:音頻、以太網、IDE、LCD、USB2.0等。 系統的硬件結構框圖見圖1。 2.4 模塊設計 系統主要由處理器、內存、啟動ROM、硬盤、LCD屏、外圍擴展接口等部分構成。 Au1200處理器最高可支持DDR2-533內存芯片,系統內存采用2片三星的DDR-266 SDRAM,型號為K4H510838E-TLAA,總容量為128 Mbyte。啟動系統固化在Flash存儲器中,Au1200通過靜態總線控制Flash存儲器,由于地址總線只有15位,需加入1片鎖存器來鎖存地址信號。由于系統是一個下載播放系統,多媒體文件的存儲采用普通微硬盤。 Au1200集成了LCD控制器,通過對垂直和水平同步信號、偏置信號和象素時鐘信號的編程,可支持目前大多數LCD屏工作。本系統用于公眾場合信息的顯示,宜選用43 cm以上的LCD屏。 在此對網絡接口設計加以特別的說明:系統采用以太網接口,網絡控制器選用DAVCOM公司的DM9000快速以太網控制處理器,該控制器與Au1200處理器具有很好的兼容性,DM9000配備有 標準10/100 Mbit/s以太網接口,物理層支持以太網接口協議,集成有接收緩沖區。DM9000支持TCP/IP硬加速,可減輕CPU負擔,提高網絡上傳和下傳的速度,采用的是Linux驅動,使更改驅動、升級更加靈活方便. 在設計時,實現DM9000與Au1200連接,要對兩者間的數據、地址、控制三大總線進行連接和轉換,圖2給出了連接示意圖。 DM9000默認I/O基地址為300H,數據端口和地址端口的地址碼由下式決定 DM9000地址端口=高位片選地址+300H+0 (1) DM9000數據端口=高位片選地址+300H+4 (2) 網絡接口模塊的軟件包括TCP/IP協議軟件和以太網芯片DM9000驅動程序。Linux用TCP/IP作參考模型,共有4層:應用層、傳輸層、互聯網層和主機至網絡層。驅動程序包括了面向操作系統核心的接口程序和面向物理層(主機至網絡層)的接口程序。面向操作系統核心接口程序,用于發現、檢測網卡參數及發送數據結構例程。 3 系統軟件設計 系統的軟件由3部分組成:嵌入式Linux移植、驅動和應用程序編寫。嵌入式Linux操作系統是用戶控制系統的平臺,系統驅動程序采用模塊化形式,向上為用戶層的解碼應用程序提供API函數,向下通過系統硬件APl函數控制系統硬件。嵌入式Linux設計有3個層次:引導裝載程序、Linux內核和圖形系統: 1) 引導裝載程序 引導裝載程序通常是在硬件上執行的第一段代碼。系統采用一個專用軟件JFlash-Linux作為引導裝載程序。它支持多種類型的芯片,可以直接與遠程系統上的閃存設備進行交互,并將引導裝載程序安裝在閃存的給定位置中。 2) 嵌入式Linux內核 內核檢查硬件并加載根設備,然后查找根文件系統的init 程序并執行該程序。配置內核時選擇:模塊編入內核、386處理器、物理內存off、支持ELF、標準PC軟盤、支持RAM盤、支持initial RAMdisk、虛擬終端、虛擬終端控制臺、標準串口、ext2文件系統、控制臺驅動,以及VGAtext console,DOS FAT,MSDOS文件系統。 3) 圖形系統 本嵌入式系統采用一種輕量級的GUI,具有輕型、占用資源少、高可靠性的特點。系統分層設計,最底層是一組屏幕、鼠標/觸摸屏、鍵盤的抽象接口;中間層是可移植的圖形引擎;最高層是各種API,供圖形應用程序調用。最底層的SCREEN抽象接口建立在Linux Framebuffer(幀緩存)設備基礎上。 應用程序信息管理程序主要實現任務管理和網絡通信,其流程如圖3所示。 4 系統應用 本設備主要應用是基于網絡的廣告播放系統,該系統由四部分組成:播放終端、中心服務器、分中心服務器和管理中心,其系統網絡結構如圖4所示。 將本播放終端接入圖4所示的應用系統中,對幾個不同大小、不同格式的多媒體文件進行下載播放,得到測試結果如表2所示,證明系統設計符合實際使用要求。 本文設計的基于Alchemy Au1200的多媒體播放終端,具有強大的多媒體播放功能,其主要創新思想在于增加了網絡和信息管理功能,使其可實現網絡遠程控制,達到了高智能化程度,在目前的樓宇視頻聯播廣告系統應用領域具有廣闊的市場前景 |