前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的流媒體播放器主題范文,僅供參考,歡迎閱讀并收藏。
關(guān)鍵詞:ARM;Qt;嵌入式Linux;流媒體播放器;Xvid
中圖分類號(hào):TP302.1 文獻(xiàn)標(biāo)識(shí)碼: A文章編號(hào):1009-3044(2010)10-2466-02
Design of Embedded Streaming Media Player Based on ARM and Qt
GUI Ling
(College of Computer Science & Technology, Wuhan University of Technology, Wuhan 430063, China)
Abstract: This paper is focused on the design of embedded streaming media player based on the MC9328MX21 of Freescale as the core processor. And the operating system is embedded Linux which source code is open. In addition, it selects the latest version of Xvid as the decoder and takes Qt development library to design the graphical user interface. With a real-time streaming transmission technology, the play, pause, stop and other functions of streaming media are implemented in this player. At the same time the player can remote control the streaming media server.
Key words: ARM; Qt; embedded Linux; streaming media player; Xvid
隨著數(shù)字信息技術(shù)和網(wǎng)絡(luò)技術(shù)的高速發(fā)展,人們的日常生活已經(jīng)越來(lái)越離不開(kāi)嵌入式系統(tǒng)?,F(xiàn)今,開(kāi)發(fā)功能齊全、可靠性高、操作簡(jiǎn)單的嵌入式流媒體播放器己經(jīng)成為計(jì)算機(jī)、通信以及消費(fèi)電子產(chǎn)業(yè)技術(shù)發(fā)展的主要方向之一[1]。
本文中的流媒體播放器采用嵌入式技術(shù)、MPEG-4圖像編碼技術(shù)以及實(shí)時(shí)流式傳輸技術(shù),把從流媒體服務(wù)器接收的壓縮碼流,進(jìn)行實(shí)時(shí)解碼并同步播放,同時(shí)還能遠(yuǎn)程控制流媒體服務(wù)器,實(shí)現(xiàn)對(duì)流媒體的播放、暫停、停止等功能。另外,利用ARM集成技術(shù)還可以實(shí)現(xiàn)系統(tǒng)的小型化、 模塊化,提高了系統(tǒng)的通用性和可擴(kuò)展性。
1 系統(tǒng)的整體設(shè)計(jì)
嵌入式流媒體播放器的系統(tǒng)體系結(jié)構(gòu)可以劃分為以下三層:硬件層、內(nèi)核層和應(yīng)用層,如圖1所示。
系統(tǒng)的軟件部分主要分為內(nèi)核層軟件和應(yīng)用層軟件。內(nèi)核層軟件包含嵌入式操作系統(tǒng)以及硬件設(shè)備的驅(qū)動(dòng)程序。其中,嵌入式操作系統(tǒng)采用嵌入式Linux系統(tǒng),其構(gòu)建過(guò)程包括:建立系統(tǒng)引導(dǎo)程序Bootloader、定制Linux的內(nèi)核、創(chuàng)建根文件系統(tǒng)[2]。音視頻解碼器、通信協(xié)議棧和圖形用戶界面三個(gè)主要模塊組成了應(yīng)用層軟件。通信協(xié)議棧的主要任務(wù)是:建立與流媒體服務(wù)器間的通信,接收流媒體碼流并對(duì)碼流進(jìn)行相應(yīng)處理;通過(guò)音視頻解碼器對(duì)音視頻壓縮碼流進(jìn)行實(shí)時(shí)解碼;圖形用戶界面用來(lái)向用戶提供交互式的操作界面,使用戶能控制、播放解壓縮后的音視頻數(shù)據(jù)。
嵌入式微處理器和各種設(shè)備構(gòu)成了系統(tǒng)的硬件部分。在該系統(tǒng)中,選擇Freescale公司的MC9328MX21嵌入式微處理器,它是整個(gè)硬件系統(tǒng)的核心。系統(tǒng)的設(shè)備主要包括:LCD輸出模塊、網(wǎng)絡(luò)通信模塊、系統(tǒng)存儲(chǔ)模塊、音頻輸出模塊和USB主控模塊等,系統(tǒng)硬件部分的構(gòu)成如圖2所示。
2 軟件的設(shè)計(jì)與實(shí)現(xiàn)
2.1 構(gòu)建嵌入式系統(tǒng)
嵌入式系統(tǒng)由于硬件資源非常有限,因此不能直接使用Linux作為其操作系統(tǒng),而應(yīng)該針對(duì)具體的應(yīng)用,通過(guò)裁減shell 和嵌入式C庫(kù)、重新配置內(nèi)核等手段定制系統(tǒng),使整個(gè)系統(tǒng)能夠更高效的運(yùn)行并存放到容量較小的 Flash 中。所有Linux系統(tǒng)的核心組件都是內(nèi)核,其性能在很大程度上決定了整個(gè)系統(tǒng)的性能。本系統(tǒng)采用了定制的ARM-Linux內(nèi)核,版本為2.6.13,它啟用了MMU(內(nèi)存管理單元),是針對(duì)支持 MMU的處理器設(shè)計(jì)的。另外,在保證內(nèi)核基本組件的基礎(chǔ)上,添加了TCP/ IP協(xié)議、文件系統(tǒng)等組件的支持,定制出最小適用內(nèi)核。
隨機(jī)存儲(chǔ)器 RAM(DRAM,SDRAM)和只讀存儲(chǔ)器ROM(常采用FLASH存儲(chǔ)器)是嵌入式系統(tǒng)的主要存儲(chǔ)設(shè)備。以存儲(chǔ)設(shè)備為基礎(chǔ)的嵌入式文件系統(tǒng)主要有YAFFS[3](Yet Another Flash File System)、JFFS(Journaling Flash File System,日志閃速文件系統(tǒng))、 JFFS2、ROMFS(只讀小文件系統(tǒng))、CRAMFS(用于MTD設(shè)備的數(shù)據(jù)壓縮文件系統(tǒng))、RAMFS/TMPFS等。本系統(tǒng)的硬件平臺(tái)是以NAND Flash為存儲(chǔ)芯片并選擇NAND Flash的YAFFS作為文件系統(tǒng)。
要使Linux系統(tǒng)能正常工作,根文件系統(tǒng)是其運(yùn)行所必需的文件及應(yīng)用程序的集合。本文的根文件系統(tǒng)主要包括:基于busybox的 shell、支持應(yīng)用程序的最基本庫(kù)文件、GUI程序及gcc應(yīng)用程序等。
圖形用戶界面使用面向?qū)ο篌w系結(jié)構(gòu)的Qt/Embedded來(lái)實(shí)現(xiàn),使代碼結(jié)構(gòu)化、可重用。
2.2 MPEG-4視頻解碼器的實(shí)現(xiàn)
MPEG-4視頻解碼就是對(duì)按照MPEG-4編碼的壓縮碼流進(jìn)行反變換獲得圖像的YUV值,這是一個(gè)視頻恢復(fù)的過(guò)程,它的流程如圖3所示。在嵌入式系統(tǒng)的應(yīng)用中,MPEG-4視頻解碼器的實(shí)現(xiàn)一般有硬件實(shí)現(xiàn)和軟件實(shí)現(xiàn)兩種方法。為降低成本,本系統(tǒng)以Xvid編解碼器模型為基礎(chǔ),采用軟件方法實(shí)現(xiàn)MPEG-4視頻解碼器。
Xvid是一個(gè)開(kāi)放源代碼的、以GNU GPL協(xié)議[4]為基礎(chǔ),基于OpenDivX編寫的MPEG -4多媒體編解碼器,它是目前世界上最快的MPEG編解碼器。在ARM-Linux系統(tǒng)平臺(tái)下,Xvid視頻解碼器的嵌入式移植過(guò)程主要有七個(gè)步驟:
1)從Xvid的官方網(wǎng)站上免費(fèi)下載其源代碼,為解碼器移植做準(zhǔn)備。Xvid的源碼可以從其官方網(wǎng)站上免費(fèi)下載,本文下載的版本為1.2.2。解碼器的移植采用宿主機(jī)/目標(biāo)板的開(kāi)發(fā)模式,宿主機(jī)為PC機(jī)+Ubuntu 9.04,交叉編譯器的版本為arm-linux-gcc-4.3.2。
2)刪除多余代碼。由于我們的目標(biāo)平臺(tái)是ARM,因此可以將關(guān)于PPC、X86的代碼刪除。另外,有部分代碼是與編碼相關(guān)的,解碼不需要,故也可以刪除。
3)運(yùn)行配置腳本,生成Makefile。進(jìn)入xvidcore-1.2.2/xvidcore/build/generic目錄,執(zhí)行以下命令:#./configure Cdisable Cassembly。
4)將Makefile的C語(yǔ)言編譯器修改為arm-linux-gcc交叉編譯器。將platform.inc文件里的CC=gcc修改為CC=arm-linux-gcc。
5)執(zhí)行make命令,生成Xvid類庫(kù)文件。
6)將上一步生成的類庫(kù)文件拷貝至交叉編譯器的默認(rèn)庫(kù)搜索路徑。對(duì)于本系統(tǒng)交叉編譯器的默認(rèn)庫(kù)搜索路徑為/usr/local/arm/4.3.2/arm-linux-gcc/lib。
7)調(diào)用Xvid解碼器提供的接口函數(shù)編寫應(yīng)用程序,交叉編譯應(yīng)用程序,將生成的可行文件拷貝至目標(biāo)板調(diào)試執(zhí)行。
經(jīng)過(guò)以上步驟,即完成了對(duì)Xvid視頻解碼器的移植并實(shí)現(xiàn)了MPEG-4視頻解碼器。相對(duì)于以前的版本,Xvid 1.2.2最主要的改進(jìn)是增強(qiáng)了RGB與YUV之間相互轉(zhuǎn)換的精度。
2.3 GUI程序的設(shè)計(jì)
播放器的圖形界面在Qtopia視窗環(huán)境下運(yùn)行,采用版本為3.3.6的Qt/embedded作為底層圖形庫(kù)。Qt是一個(gè)跨平臺(tái)的C++圖形用戶界面應(yīng)用程序框架,它提供了豐富的窗口部件集,具有面向?qū)ο蟆⒁子跀U(kuò)展、真正的組件編程等特點(diǎn),Qt/Embedded是面向嵌入式系統(tǒng)的版本。信號(hào)和槽機(jī)制是Qt的核心機(jī)制,Qt的窗口部件中有多個(gè)預(yù)定義的信號(hào),我們也可以通過(guò)繼承來(lái)加入自己的信號(hào),槽是一個(gè)可以被調(diào)用處理特定信號(hào)的函數(shù),當(dāng)一個(gè)特定事件發(fā)生的時(shí)候,一個(gè)信號(hào)被發(fā)射,對(duì)應(yīng)的槽就會(huì)調(diào)用相應(yīng)的函數(shù)[5]。
圖形界面主要包括主界面窗口、文件操作窗口、播放列表窗口。界面窗口有一個(gè)顯示屏和一些控制按鈕,包括播放、暫停、快進(jìn)、快退、音量調(diào)整及播放進(jìn)度條和播放時(shí)間顯示。文件窗口可以讓用戶選擇要播放的多媒體文件。播放列表用來(lái)顯示最近播放的多媒體文件。
3 MPEG-4視頻流的實(shí)時(shí)傳輸
MPEG-4系統(tǒng)層模型自上而下包括壓縮層、同步層和傳輸層。由于復(fù)雜度較高,本文沒(méi)有采用在傳輸層中制定的傳輸多媒體框架DMIF(Delivery Multimedia Integration Framework)標(biāo)準(zhǔn),而是利用RTSP、RTP和RTCP來(lái)實(shí)現(xiàn)MPEG-4視頻流的實(shí)時(shí)傳輸。其中RTSP是用來(lái)控制MPEG-4視頻數(shù)據(jù)傳輸?shù)?RTP是用來(lái)實(shí)際傳輸MPEG-4視頻數(shù)據(jù)的,RTCP是用來(lái)實(shí)現(xiàn)擁塞控制和流量控制服務(wù)的。各個(gè)協(xié)議之間的關(guān)系如圖4所示。
MPEG-4視頻流實(shí)時(shí)傳輸系統(tǒng)是以RTP/RTCP/RTSP協(xié)議為基礎(chǔ)的,圖5是其總體框架。單個(gè)的MPEG-4視頻數(shù)據(jù)流在傳輸時(shí),用戶需要打開(kāi)3個(gè)與服務(wù)器進(jìn)行交互的網(wǎng)絡(luò)端口,即RTP視頻流接收端口、RTCP控制信息交互端口以及RTSP控制信息交互端口。
4 結(jié)束語(yǔ)
本文以嵌入式技術(shù)、Qt、流媒體技術(shù)為基礎(chǔ),研究并初步設(shè)計(jì)了一種基于嵌入式系統(tǒng)平臺(tái)的流媒體播放器。該方案的優(yōu)點(diǎn)在于視頻流的實(shí)時(shí)傳輸方法較之MPEG-4制定的標(biāo)準(zhǔn),更加簡(jiǎn)單易行,容易實(shí)現(xiàn),并采用了最新版本的Xvid,增強(qiáng)了RGB與YUV之間相互轉(zhuǎn)換的精度。但該方案還有很多地方有待改進(jìn),在后續(xù)開(kāi)發(fā)中,可以從以下幾個(gè)方面展開(kāi)工作:完善嵌入式圖形用戶界面、優(yōu)化Xvid視頻解碼器在ARM上的運(yùn)行效率、擴(kuò)展解碼器功能以支持更多的多媒體格式。
參考文獻(xiàn):
[1] 鐘玉琢,向哲,沈洪.流媒體和視頻服務(wù)器[M].北京:清華大學(xué)出版社,2003.
隨著數(shù)碼相機(jī)、智能手機(jī)以及各種Pad平板電腦的大行其道,越來(lái)越多的人開(kāi)始習(xí)慣于隨手拍照或是隨手錄像;再加上價(jià)格不斷下降的各種數(shù)字音樂(lè)、數(shù)字影片,越來(lái)越多的人手中開(kāi)始積累大量的數(shù)字媒體文件。通常情況下,這些文件絕大多數(shù)都是存放在電腦中,或是存放于某些大容量移動(dòng)存儲(chǔ)設(shè)備上――不幸的是,隨著時(shí)間的流逝,某些文件可能會(huì)損壞而變得不再可用。聽(tīng)著自己喜愛(ài)的音樂(lè),翻看一下以前的照片,或是放上幾段視頻,的確是件令人很愜意的事情――但要欣賞這些,其實(shí)并不一定非要坐在電腦前。
其實(shí),在不同設(shè)備以及平臺(tái)之間,共享數(shù)字媒體是件很簡(jiǎn)單的事情。其簡(jiǎn)單之程度,可能會(huì)讓你感到吃驚。Windows 7內(nèi)置了媒體播放器以及相應(yīng)的工具,并提供DLNA/UPnP支持,可以和兼容設(shè)備非常容易的共享數(shù)字媒體庫(kù)。而對(duì)想通過(guò)網(wǎng)絡(luò)(或者網(wǎng)頁(yè))來(lái)訪問(wèn)這些媒體文件的人來(lái)說(shuō),也只需極少的幾步配置即可。
當(dāng)然,有幾個(gè)先決條件你必須達(dá)到;此外,對(duì)于Windows媒體播放器的不同分享選項(xiàng),你也應(yīng)該有相應(yīng)程度的熟悉。首先,存有媒體文件庫(kù)的電腦必須已連到局域網(wǎng)網(wǎng)上(這樣才能在內(nèi)部網(wǎng)共享),或是連到Internet上(如果是打算通過(guò)互聯(lián)網(wǎng)共享文件的話)。你必須根據(jù)要求,在Windows媒體播放器中啟用了相應(yīng)的一些設(shè)定。如果連到互聯(lián)網(wǎng)的主機(jī)是位于某個(gè)路由器或者防火墻之后,則還需在電腦上打開(kāi)幾個(gè)相應(yīng)的端口,以便外部連接的訪問(wèn)請(qǐng)求能夠順利通過(guò)。
起步
在Windows 7電腦上共享數(shù)字媒體的第一步,是在Windows媒體播放器中建立并管理數(shù)字媒體庫(kù)。如果你已將相應(yīng)的文件都放到了“我的音樂(lè)”、“我的照片”,以及“我的視頻”等文件夾中,則WMP應(yīng)該會(huì)自動(dòng)發(fā)現(xiàn)它們。如果將這些文件放到了另一個(gè)磁盤驅(qū)動(dòng)器上,或者是放到了某個(gè)網(wǎng)絡(luò)存儲(chǔ)設(shè)備上的話,則需要自己手動(dòng)將這些文件導(dǎo)入Windows媒體播放器中。具體做法是打開(kāi)WMP(Windows媒體播放器),切換到“媒體庫(kù)”。然后點(diǎn)擊下拉菜單“組織”中的“管理媒體庫(kù)”,再根據(jù)需要選擇“音樂(lè)”、“視頻”或“圖片”。然后會(huì)出現(xiàn)一個(gè)“視頻庫(kù)位置”的窗口,你可以在這個(gè)窗口中點(diǎn)擊“添加”按鈕,然后找到要加入文件的具體文件夾位置即可。
當(dāng)然了,還有一條是不言而喻的,那就是開(kāi)始共享之前,這臺(tái)裝有數(shù)字媒體的電腦必須已開(kāi)機(jī)且連到網(wǎng)上了。如果想通過(guò)互聯(lián)網(wǎng)和另一臺(tái)電腦進(jìn)行共享的話,你還必須先連入Internet。達(dá)到了上述這些必備條件之后,就可以開(kāi)啟“共享”了。打開(kāi)媒體播放器(切換到媒體庫(kù)頁(yè)面,如果需要的話),點(diǎn)擊上部“媒體流”下拉菜單中的“自動(dòng)允許設(shè)備播放我的媒體”。啟用這個(gè)選項(xiàng),將把你的電腦轉(zhuǎn)化成一臺(tái)兼容DLNA的數(shù)字媒體服務(wù)器(DLNA,數(shù)字化實(shí)時(shí)網(wǎng)絡(luò)設(shè)備)。而那些能訪問(wèn)這些文件的遠(yuǎn)程系統(tǒng)或設(shè)備,將作為數(shù)字媒體播放器出現(xiàn)。一個(gè)網(wǎng)絡(luò)之中,可以同時(shí)存在多臺(tái)數(shù)字媒體服務(wù)器;那些作為數(shù)字媒體播放器出現(xiàn)的電腦或設(shè)備(遵守DLNA設(shè)備類定義),也可以成為數(shù)字媒體服務(wù)器主機(jī)。
下一步,再次點(diǎn)擊“媒體流”下拉菜單,選擇“更多流選項(xiàng)”。在這個(gè)頁(yè)面中,你可以對(duì)媒體庫(kù)進(jìn)行命名。同時(shí),該屏幕上也會(huì)顯示一個(gè)網(wǎng)絡(luò)中可以訪問(wèn)該庫(kù)的設(shè)備列表。如果你想允許或者禁止某個(gè)列表中的設(shè)備訪問(wèn)你的媒體庫(kù),可以在此進(jìn)行設(shè)置。
這樣,你就已經(jīng)準(zhǔn)備好開(kāi)始通過(guò)網(wǎng)絡(luò)與另一臺(tái)設(shè)備共享媒體流了。如果你想更進(jìn)一步,通過(guò)網(wǎng)頁(yè)與人共享的話,你還要打開(kāi)另一個(gè)選項(xiàng)。在媒體播放器中的“媒體流”下拉菜單中,選中“允許網(wǎng)絡(luò)訪問(wèn)家庭媒體”。然后程序會(huì)彈出一個(gè)窗口,提示你允許互聯(lián)網(wǎng)連接,以便“鏈接聯(lián)機(jī)ID”(比如某個(gè)Windows Live賬號(hào))到媒體庫(kù)上;務(wù)必注意根據(jù)屏幕上的提示,妥善完成上述步驟。當(dāng)賬號(hào)鏈接成功后,你就可以使用該賬號(hào)鏈接到其他電腦上,并通過(guò)網(wǎng)頁(yè)來(lái)訪問(wèn)該媒體庫(kù)。
不過(guò),想通過(guò)網(wǎng)頁(yè)遠(yuǎn)程訪問(wèn)電腦的話,一般都會(huì)需要對(duì)路由器或者防火墻進(jìn)行一些調(diào)整。以前我們就已經(jīng)解釋過(guò)如何打開(kāi)某些特定的端口,但這里你需要確切的知道應(yīng)當(dāng)打開(kāi)哪些端口,以便網(wǎng)絡(luò)共享能夠正常工作。要想找出這些端口,首先在媒體播放器中的“媒體流”下拉菜單中,點(diǎn)擊“允許網(wǎng)絡(luò)訪問(wèn)家庭媒體”,然后在子窗口中,點(diǎn)擊“測(cè)試連接”?;ヂ?lián)網(wǎng)媒體流檢測(cè)工具將打開(kāi)并運(yùn)行一些快速測(cè)試。在窗口底部,點(diǎn)擊“轉(zhuǎn)發(fā)端口信息”連接,可以看到一個(gè)需要轉(zhuǎn)發(fā)的端口列表。將這些端口轉(zhuǎn)發(fā)給相應(yīng)的主機(jī)(或相關(guān)DMS設(shè)備)的IP地址,你就算萬(wàn)事俱備了。
下面,我會(huì)告訴你如何與其他設(shè)備共享媒體流。
局域網(wǎng)電腦共享
對(duì)于在同一網(wǎng)絡(luò)上,或是在同一家庭組中的電腦來(lái)說(shuō),訪問(wèn)共享系統(tǒng)中的數(shù)字媒體庫(kù)是十分簡(jiǎn)單的。如果你已經(jīng)按照上文設(shè)定了允許設(shè)備自動(dòng)播放媒體,共享的媒體庫(kù)將會(huì)顯示在Windows媒體播放器的主界面中。
如果你的電腦正確連入網(wǎng)絡(luò),并且你的主機(jī)已經(jīng)開(kāi)機(jī)可以正常使用的話,打開(kāi)Windows媒體播放器,給它一點(diǎn)時(shí)間,讓它掃描一遍整個(gè)網(wǎng)絡(luò)。在它左側(cè)的庫(kù)面板上,庫(kù)列表底部位置,應(yīng)當(dāng)可以看到在其他媒體庫(kù)的下面,是主機(jī)共享的媒體庫(kù)。點(diǎn)擊該庫(kù),就可以使用該庫(kù)中的音樂(lè),視頻,圖片,錄制的電視節(jié)目,以及播放列表了。
互聯(lián)網(wǎng)電腦共享
至于通過(guò)網(wǎng)頁(yè)訪問(wèn)數(shù)字媒體庫(kù)的過(guò)程,在微軟手里也變得十分簡(jiǎn)單。首先,確保你已經(jīng)按照我上文所述進(jìn)行了正確的設(shè)定。此時(shí),你應(yīng)該可以在媒體播放器的“媒體流”下拉菜單中,看到“允許網(wǎng)絡(luò)訪問(wèn)家庭媒體”被勾選了;同時(shí),你應(yīng)當(dāng)也為該媒體庫(kù)鏈接了一個(gè)聯(lián)機(jī)ID。
基本上,你需要在遠(yuǎn)程電腦上同樣執(zhí)行一遍那些必要的步驟。在遠(yuǎn)程電腦上,打開(kāi)Windows媒體播放器,然后選中“允許網(wǎng)絡(luò)訪問(wèn)家庭媒體”選項(xiàng)。然后會(huì)出現(xiàn)一個(gè)新窗口,標(biāo)有“網(wǎng)絡(luò)訪問(wèn)家庭媒體”。點(diǎn)擊“鏈接在線ID”按鈕,然后將該電腦鏈接到你用于設(shè)定主機(jī)系統(tǒng)(DMS)的同一聯(lián)機(jī)ID上。當(dāng)該電腦開(kāi)機(jī)并聯(lián)入互聯(lián)網(wǎng)后,(如果有必要,事先應(yīng)在路由器中設(shè)定好需轉(zhuǎn)發(fā)的相應(yīng)端口),它的媒體庫(kù)應(yīng)當(dāng)會(huì)顯示在其他庫(kù)的類別下面,就好像這些電腦被連入同一局域網(wǎng)時(shí)所表現(xiàn)的那樣。
游戲終端共享流媒體
至于和游戲終端(比如Xbox 360或者PS 3)共享數(shù)字媒體,則更是異乎尋常的簡(jiǎn)單。只需將該游戲設(shè)備連入該電腦(或數(shù)字媒體服務(wù)器)所在的網(wǎng)絡(luò)即可。無(wú)論是Xbox 360還是PS 3,訪問(wèn)Win7電腦上的數(shù)字媒體,就像打開(kāi)游戲終端電源,然后播放終端內(nèi)的照片、視頻或者音樂(lè)一樣簡(jiǎn)單。如果數(shù)字媒體服務(wù)器和游戲終端是位于同一網(wǎng)絡(luò)上的話,服務(wù)器上的數(shù)字媒體庫(kù)應(yīng)當(dāng)會(huì)被列出來(lái),用終端直接播放庫(kù)中的文件即可。
使用Xbox 360訪問(wèn)Win7電腦相當(dāng)快捷簡(jiǎn)單,需要做的無(wú)非是事先在媒體播放器中啟用媒體流而已。不過(guò),如果在Windows中事先關(guān)閉了“文件與打印機(jī)共享”服務(wù)的話,用戶使用PS 3游戲終端訪問(wèn)Win7電腦時(shí)將會(huì)遇到問(wèn)題。解決方法是將Win7的“文件與打印機(jī)共享”服務(wù)重新開(kāi)啟――具體做法是點(diǎn)擊“開(kāi)始”按鈕,在“搜索程序和文件”框中,輸入“管理高級(jí)共享設(shè)置”,然后按下回車鍵。在彈出的控制面板窗口中,確?!皢⒂梦募痛蛴C(jī)共享”被選中,而“媒體流”選項(xiàng)顯示為“媒體流已打開(kāi)”。
如果覺(jué)得上述操作搞不定的話,PS3的用戶們還可以嘗試另外一招,那就是在電腦中運(yùn)行一個(gè)第三方的DLNA/UPnP媒體服務(wù)器軟件,比如Ps3mediaServer。
DLNA電視或機(jī)頂盒共享
如今為數(shù)眾多的HDTV和機(jī)頂盒設(shè)備(比如藍(lán)光播放器)都是具備聯(lián)網(wǎng)功能的“智能設(shè)備”,內(nèi)置有數(shù)字媒體播放工具,支持DLNA。如果將這些設(shè)備連入Win7電腦所在的網(wǎng)絡(luò)(Win7電腦已事先正確開(kāi)啟了媒體流設(shè)置以及其他相應(yīng)的共享選項(xiàng)),它們能像其他設(shè)備一樣,快速便捷的訪問(wèn)Win7電腦中的媒體文件。
我們分別使用了一臺(tái)三星HDTV,以及一臺(tái)三星藍(lán)光播放器來(lái)訪問(wèn)電腦。雖然因?yàn)閮膳_(tái)設(shè)備的界面極其類似,所以導(dǎo)致了測(cè)試過(guò)程中的表現(xiàn)看起來(lái)也幾乎完全相同,但實(shí)際上卻是來(lái)自于完全不同的設(shè)備制造商。這一點(diǎn)表明,凡是兼容DLNA的類似設(shè)備,大概這些相同的步驟都是必不可少的。
首先,我們打開(kāi)了三星藍(lán)光播放器的電源(但沒(méi)有插入碟片),于是我們直接看到了播放器的主界面,可進(jìn)行相關(guān)設(shè)定或運(yùn)行相關(guān)應(yīng)用。我們確認(rèn)該播放器已連入網(wǎng)絡(luò)(本例中我們是使用了無(wú)線網(wǎng)),并在網(wǎng)絡(luò)設(shè)定菜單中,確認(rèn)該播放器已獲得IP地址。然后我們進(jìn)入設(shè)備菜單,開(kāi)始掃描整個(gè)網(wǎng)絡(luò),尋找DLNA數(shù)字媒體服務(wù)器。找到之后就很簡(jiǎn)單了,直接在設(shè)備菜單中選中該電腦(或數(shù)字媒體服務(wù)器),然后打開(kāi)要觀賞的音樂(lè)、視頻或圖片文件夾,播放相應(yīng)的文件即可。
安卓智能手機(jī)(平板電腦)共享
需要說(shuō)明的是,雖然文章中所提到的只是基于安卓系統(tǒng)的設(shè)備,但實(shí)際上為數(shù)眾多的蘋果系統(tǒng)(iOS)應(yīng)用程序,也提供了類似的功能。此外,基于Windows系統(tǒng)的智能手機(jī)或設(shè)備,也有不少類似的功能(或是直接內(nèi)置,或是可以借助第三方應(yīng)用程序?qū)崿F(xiàn))。只要事先正確設(shè)置好主機(jī),絕大部分應(yīng)用程序的工作表現(xiàn)都很雷同,使用方式也是相當(dāng)?shù)暮?jiǎn)單易用。
手機(jī)客戶端軟件是指安裝在手機(jī)上的軟件,用戶可以通過(guò)啟動(dòng)該軟件訪問(wèn)網(wǎng)絡(luò)、聊天、收看視頻等。前不久,中國(guó)移動(dòng)的飛信免費(fèi)推出;而就在6月,最大的手機(jī)上網(wǎng)門戶3G門戶(),也開(kāi)始大張旗鼓地在全國(guó)路演,通過(guò)林一峰@3G門戶中國(guó)唱游活動(dòng)推廣3G門戶最新流媒體客戶端GGLive。
手機(jī)這塊方寸之地的客戶端爭(zhēng)奪大戰(zhàn)已全面展開(kāi)?
手機(jī)客戶端――無(wú)線互聯(lián)網(wǎng)領(lǐng)
域的核心競(jìng)爭(zhēng)力
類似Outlook(郵件客戶端)、IM(即時(shí)通訊)、流媒體播放器等傳統(tǒng)PC上的客戶端,手機(jī)客戶端是指用戶下載在手機(jī)上的一些軟件,通過(guò)這些操作簡(jiǎn)便、界面友好的軟件,用戶可以快捷、方便地用手機(jī)看電視、看電影,有了這些軟件,WAP站就像把根扎在了用戶的手機(jī)上,比起“書(shū)簽”更加有價(jià)值。
對(duì)于小小的手機(jī)來(lái)講,手機(jī)客戶端爭(zhēng)奪戰(zhàn)的激烈程度似乎比電腦更高,因?yàn)槭謾C(jī)可容納的軟件少,操作難度高。
業(yè)內(nèi)人士分析,手機(jī)客戶端既能吸引大量用戶,同時(shí),也為免費(fèi)WAP網(wǎng)站拓展新的業(yè)務(wù)增長(zhǎng)點(diǎn)和盈利模式奠定了良好基礎(chǔ)。
縱觀傳統(tǒng)互聯(lián)網(wǎng)行業(yè)歷史,1996年第一批電腦上網(wǎng)的人都會(huì)記得那只小企鵝,隨后,這只企鵝也伴隨了他們十來(lái)年?;ヂ?lián)網(wǎng)上網(wǎng)民一代接一代,而桌面的小企鵝也從簡(jiǎn)單的通訊工具上更衍生出了游戲、新聞、社區(qū)、甚至娛樂(lè)門戶。
而在手機(jī)平臺(tái)上第一個(gè)占據(jù)手機(jī)桌面,并且將伴隨一代又一代手機(jī)網(wǎng)民成長(zhǎng)的客戶端將會(huì)是什么?
3G門戶G家族全面登場(chǎng)
2006年5月,3G門戶推出第一版手機(jī)音樂(lè)軟件GGMusic,支持手機(jī)音樂(lè)在線試聽(tīng)與免費(fèi)下載。
2006年6月,3G門戶又推出第一版手機(jī)流媒體播放器GGTV,主要用于支持手機(jī)電視直播、手機(jī)電影、網(wǎng)絡(luò)視頻等點(diǎn)播。GGTV在當(dāng)時(shí)的網(wǎng)絡(luò)狀態(tài)下是技術(shù)領(lǐng)先性最高、畫(huà)質(zhì)與流暢程度最有保障的播放器,免費(fèi)提供給手機(jī)網(wǎng)民下載,受到用戶的關(guān)注和青睞。截至2007年3月,GGTV直接注冊(cè)用戶已達(dá)到300萬(wàn),每天獨(dú)立活躍用戶超過(guò)50萬(wàn)。
鄧裕強(qiáng)分析說(shuō):“從3G門戶去年推出的GGTV來(lái)看,用戶每天使用視頻點(diǎn)播服務(wù)的時(shí)間要遠(yuǎn)遠(yuǎn)超過(guò)電視直播服務(wù),是其10倍以上。原因就在于點(diǎn)播類業(yè)務(wù)更具可控性和互動(dòng)性,而電視直播類服務(wù)更多的是滿足用戶對(duì)突發(fā)及實(shí)時(shí)性要求(比如體育比賽直播)較高的內(nèi)容需求?!?/p>
2007年4月,3G門戶宣布推出全新流媒體播放器GGLive,則是針對(duì)以上問(wèn)題的解決方案。手機(jī)網(wǎng)民通過(guò)登錄免費(fèi)下載該軟件后,除了點(diǎn)播節(jié)目,還可以隨時(shí)隨地收看各類直播,如NBA、娛樂(lè)明星訪談、演唱會(huì)現(xiàn)場(chǎng)等等。并且同時(shí)跳轉(zhuǎn)WAP頁(yè)面進(jìn)行即時(shí)投票、抽獎(jiǎng),增強(qiáng)互動(dòng)。此外,GGLive還整合了3G門戶GGRadio的全部功能,支持在線收聽(tīng)多個(gè)電臺(tái)節(jié)目。
與此同時(shí),改進(jìn)后的GGMusic2.0也推出,進(jìn)一步優(yōu)化了用戶界面,并新增了推薦音樂(lè)專輯等功能。以GGLive為核心的客戶端系列G家族終于全面登場(chǎng)。
“GGLive將逐步取代GGTV。在這個(gè)新的播放器上,我們將更注重用戶的新需求,用最領(lǐng)先的手機(jī)流媒體技術(shù)引領(lǐng)用戶進(jìn)入真正的手機(jī)互動(dòng)娛樂(lè)時(shí)代。”3G門戶CEO鄧裕強(qiáng)表示。
流媒體技術(shù)作為一種新的網(wǎng)絡(luò)媒體傳輸方式,突破了網(wǎng)絡(luò)帶寬限制,實(shí)現(xiàn)了動(dòng)態(tài)音視頻資源的數(shù)字化、網(wǎng)絡(luò)化存儲(chǔ)、傳輸和管理,使高?,F(xiàn)有校園網(wǎng)絡(luò)環(huán)境下教學(xué)信息資源的應(yīng)用價(jià)值和利用率得到了極大提高。當(dāng)前主流流媒體系統(tǒng)平臺(tái)主要有Microsoft Windows Media系統(tǒng)、Real system系統(tǒng)、Apple QuickTime系統(tǒng)以及Abobe Flash Media系統(tǒng)。Microsoft系統(tǒng)支持的網(wǎng)絡(luò)協(xié)議有HTTP/MMS/WMS,流媒體格式為ASF/WMA/WMV等,其優(yōu)點(diǎn)主要有通用性好、集成度高、系統(tǒng)資源占用率低等,缺點(diǎn)是支持網(wǎng)絡(luò)協(xié)議較少、平臺(tái)兼容性較差;Real系統(tǒng)則主要支持自己特有的RTSP協(xié)議,主要流媒體格式為特有的RM/RA/ RMVB等,其優(yōu)點(diǎn)主要在于擴(kuò)展性較強(qiáng)、支持多速率傳輸,缺點(diǎn)是系統(tǒng)價(jià)格較貴、后期費(fèi)用較高、平臺(tái)通用性較差;Apple系統(tǒng)通常以MOV/QT,其優(yōu)點(diǎn)在于系統(tǒng)相對(duì)安全、穩(wěn)定性好,缺點(diǎn)是用戶規(guī)模以及數(shù)量太小、移植性較差;Adobe系統(tǒng)是近幾年剛興起的流媒體系統(tǒng),只要支持RTMP網(wǎng)絡(luò)協(xié)議,格式通常為SWF/FLV格式,其優(yōu)點(diǎn)主要有文件簡(jiǎn)單,體積??;清晰度高、加載速度快、版權(quán)保護(hù)有效等,缺點(diǎn)是安全穩(wěn)定性較差、較易受攻擊;系統(tǒng)資源耗費(fèi)較大。
總體來(lái)說(shuō),四大主流媒體技術(shù)出于保密以及商業(yè)競(jìng)爭(zhēng)的需要,各家技術(shù)都具有一定排他性。而開(kāi)源技術(shù)則可以較好地解決這一問(wèn)題,可以使視頻流媒體系統(tǒng)方案的制訂更加先進(jìn),更加完善,同時(shí)也更加的開(kāi)放。
二、視頻流媒體平臺(tái)總體架構(gòu)
VLC系統(tǒng)是近年來(lái)由VideoLan項(xiàng)目開(kāi)發(fā)的流媒體系統(tǒng)。作為第三方開(kāi)源軟件,目前的VLC既是一個(gè)能夠支持大量媒體文件格式和檔案格式的跨平臺(tái)多媒體播放器,同時(shí)也可以作為高性能的支持單播/組播、IPv4/IPv6的視頻流媒體服務(wù)器來(lái)使用。[2]其優(yōu)點(diǎn)是功能強(qiáng)大、簡(jiǎn)單易用,兼容平臺(tái)多,對(duì)多種流媒體傳輸協(xié)議能夠很好兼容。VLC還能夠支持各種格式的視頻文件、網(wǎng)絡(luò)串流、加密VCD/DVD、數(shù)字?jǐn)z像機(jī)、數(shù)字衛(wèi)星頻道以及數(shù)字地球電視頻道等多種信號(hào)源;能夠?qū)崟r(shí)捕捉視頻并實(shí)現(xiàn)在多種編碼和碼率間的壓縮與轉(zhuǎn)換;可以在企業(yè)級(jí)或高校級(jí)局域網(wǎng)里實(shí)現(xiàn)低成本的視頻點(diǎn)播或直播。通常一個(gè)完整的網(wǎng)絡(luò)教學(xué)視頻系統(tǒng)由流媒體服務(wù)器、WEB服務(wù)器/數(shù)據(jù)庫(kù)服務(wù)器、視頻編碼/存儲(chǔ)服務(wù)器、網(wǎng)絡(luò)客戶端組成。
三、系統(tǒng)設(shè)計(jì)思路及過(guò)程
1.系統(tǒng)設(shè)計(jì)思路
本系統(tǒng)以Window Server 2008操作系統(tǒng)為開(kāi)發(fā)平臺(tái),以SQL Server 2008為WEB應(yīng)用程序和數(shù)據(jù)庫(kù)服務(wù)器,采用腳本語(yǔ)言對(duì)視頻流媒體平臺(tái)動(dòng)態(tài)網(wǎng)站進(jìn)行開(kāi)發(fā),然后通過(guò)開(kāi)源VLC流媒體服務(wù)器和開(kāi)源軟件Putty的配合使用實(shí)現(xiàn)相關(guān)教學(xué)視頻資源的網(wǎng)絡(luò)形式。本文著重介紹該網(wǎng)絡(luò)教學(xué)視頻流媒體資源平臺(tái)的具體實(shí)施方案。
2.視頻流媒體服務(wù)器及客戶端配置
(1)VLC流媒體服務(wù)器配置
配合優(yōu)秀的開(kāi)源遠(yuǎn)程登陸工具Putty,VLC可以作為高性能的局域網(wǎng)流媒體服務(wù)器,實(shí)現(xiàn)IPv4/IPv6網(wǎng)絡(luò)環(huán)境下的點(diǎn)播、組播功能,具體操作步驟如下:①為VLC增加Telnet遠(yuǎn)程服務(wù)功能:②以IP地址為192.168.1.103為例,監(jiān)控端口號(hào)為4212的流媒體服務(wù)器為例進(jìn)行配置,通過(guò)Putty開(kāi)源軟件服務(wù)器進(jìn)行遠(yuǎn)程登錄控制;③ 點(diǎn)擊打開(kāi),在Password:后輸入默認(rèn)密碼“admin”。如果遠(yuǎn)程登錄成功,Putty界面會(huì)顯示:Welcome,Master歡迎界面,然后,開(kāi)始對(duì)VLC流媒體服務(wù)器進(jìn)行配置;④利用VLC提供點(diǎn)播服務(wù)的命令。其中,new為新建命令,vod*為點(diǎn)播文件標(biāo)識(shí)名,demo.*為點(diǎn)播文件的文件名。通常,該文件應(yīng)放置在VLC Media Player安裝路徑下;如果文件不在該路徑下,可以使用絕對(duì)路徑。例如:setup vod1 input d:\media\demo.mpg如果要設(shè)置多個(gè)點(diǎn)播文件,可以重復(fù)上述的操作。⑤利用VLC提供組播服務(wù)的命令。其中,new為新建命令,group為組播名,demo為要經(jīng)組播發(fā)送的流視頻文件。#duplicate{dst=rtp{dst=multicast,mux=ts,port=*}}表示將遵循rtp協(xié)議的以ts流進(jìn)行封裝的流視頻發(fā)送到特定組播IP地址(multicast)的特定端口。通常,組播IP地址多為D類IP地址,即224.0.0.0-239.255.255.255之間的IP地址,端口一般為1234。另外,control group后面還可以加stop,pause,seek+%,分別表示停止,暫停和跳轉(zhuǎn)到百分之幾的位置。與提供點(diǎn)播服務(wù)一樣,通常需要發(fā)送的流視頻文件應(yīng)放置在VLC Media Player安裝路徑下;如果文件不在該路徑下,可以使用絕對(duì)路徑。
(2)網(wǎng)絡(luò)客戶端配置
在服務(wù)器上建立好新的流媒體輸出后,網(wǎng)絡(luò)客戶端用戶既可以通過(guò)獨(dú)立的VLC、Windows Media Player等通用媒體播放器來(lái)接收,并實(shí)現(xiàn)播放、控制(開(kāi)始、暫停、停止、快進(jìn))等,也可以通過(guò)ActiveX控件的方式在Web頁(yè)面中嵌入播放器代碼,通過(guò)通用瀏覽器進(jìn)行收看。①獨(dú)立客戶端設(shè)置,VLC Media Player作為客戶端播放器時(shí),設(shè)置接收流媒體視頻服務(wù)。另外,如果學(xué)習(xí)者需要對(duì)教學(xué)視頻資源進(jìn)行實(shí)時(shí)錄制,可以在VLC串流輸出選項(xiàng)中進(jìn)行設(shè)置。②基于瀏覽器的WEB嵌入式實(shí)現(xiàn)。該方式主要是通過(guò)ActiveX控件的方式在Web頁(yè)面中嵌入相應(yīng)播放器代碼實(shí)現(xiàn)的,其中播放器源代碼是實(shí)現(xiàn)視頻流媒體接收的關(guān)鍵。
【參考文獻(xiàn)】
[1]夏亞. 基于ASF的視頻型網(wǎng)絡(luò)教學(xué)設(shè)計(jì)與實(shí)現(xiàn). 計(jì)算機(jī)與現(xiàn)代化,2009(3).
英最高法院駁回?zé)煵莨緦?duì)平裝法的上訴
近日,英國(guó)最高法院對(duì)英國(guó)煙草平裝法案件作出最終判決,該判決駁回了煙草公司的上訴。在法院駁回?zé)煵莨緦?duì)新立法提出的異議之后,從下個(gè)月起,在英國(guó)出售的所有煙草必須采用標(biāo)準(zhǔn)包裝。四家煙草公司――菲利普莫里斯國(guó)際公司(PMI)、英美煙草集團(tuán)(BAT)、帝國(guó)煙草公司(Imperial Tobacco)和日本煙草國(guó)際公司(JTI)最初對(duì)實(shí)施煙草產(chǎn)品第2014/40/EU號(hào)指令的新平裝立法提出了異議。2016年5月,英國(guó)高等法院駁回?zé)煵莨咎岢龅漠愖h。同年11月,英國(guó)上訴法院維持原判。日前,最高法院駁回?zé)煵莨咎崞鸬纳显V。根據(jù)新的立法,自2017年5月21日起,所有的煙草包裝必須是橄欖綠色,而且健康警示圖片須占前后包裝面積的65%。
英國(guó)網(wǎng)絡(luò)盜版者將要面臨最高可達(dá)10年的刑期
新《數(shù)字經(jīng)濟(jì)法(Digital Economy Bill)》將把該類型犯罪的刑期從原先的2-8年升至10年。網(wǎng)絡(luò)盜版者在英國(guó)將可能要為網(wǎng)絡(luò)侵權(quán)行為付出最高刑期可達(dá)10年的代價(jià)。獲悉,這一新法已被提升到法律級(jí)別,然而許多互聯(lián)網(wǎng)用戶對(duì)此持反對(duì)意見(jiàn)?!稊?shù)字經(jīng)濟(jì)法》的誕生主要是為了“協(xié)調(diào)”受1988年《版權(quán)、設(shè)計(jì)與專利法(Copyright, Designs and Patents Act)》保o的網(wǎng)絡(luò)版權(quán)侵權(quán)制裁問(wèn)題。將為企業(yè)提供更大力度的保護(hù),并由此向犯罪分子傳達(dá)出更加明確的信息。過(guò)去,英國(guó)政府不會(huì)對(duì)網(wǎng)絡(luò)侵權(quán)個(gè)人采取過(guò)于嚴(yán)厲的懲罰,但新法卻不再有這樣的區(qū)別對(duì)待,按照這一法律規(guī)定,任何在網(wǎng)絡(luò)上侵權(quán)了版權(quán)的個(gè)人都將可能面臨犯罪的危險(xiǎn)。至于法院最終會(huì)作出怎樣的裁決則仍有待觀察。
MP3音樂(lè)格式相關(guān)專利授權(quán)被終止
5月13日,自上世紀(jì)90年代以來(lái)革新了用戶收聽(tīng)音樂(lè)方式的播放格式MP3,如今已經(jīng)正式退出了歷史舞臺(tái)。發(fā)明這種音樂(lè)播放格式的德國(guó)研究機(jī)構(gòu)――夫瑯和費(fèi)集成電路研究所(Fraunhofer Institute for Integrated Circuits)近日宣布,該機(jī)構(gòu)已經(jīng)終止了某些MP3相關(guān)專利的授權(quán),從另一方面來(lái)看,這就意味著該機(jī)構(gòu)不想再對(duì)這種格式繼續(xù)提供支持,因?yàn)?017年已有諸多更好的音樂(lè)存儲(chǔ)和播放方式出現(xiàn),因而MP3該壽終正寢了。夫瑯和費(fèi)集成電路研究所的主任表示,高級(jí)音頻編碼(AAC)格式業(yè)已成為“手機(jī)下載音樂(lè)和視頻等內(nèi)容的實(shí)際標(biāo)準(zhǔn)”。這種格式的效率比MP3的更高,而且功能也更加強(qiáng)大,在傳輸流電視和音頻廣播等內(nèi)容時(shí),使用這種格式將能夠發(fā)送高質(zhì)量的音頻內(nèi)容,而且位速率比MP3低得多。
歐盟年底前將立法約束蘋果谷歌
近日,歐盟委員會(huì)正計(jì)劃推新法來(lái)約束像蘋果和谷歌等科技巨頭的不正當(dāng)競(jìng)爭(zhēng)行為。歐盟委員會(huì)表示將在今年年底前拿出新法案來(lái)解決平臺(tái)和公司間不公平的條款和貿(mào)易慣例。此前,就有提案要求歐盟解除在線服務(wù)上的條條框框,給歐洲公司機(jī)會(huì),以便它們能與美國(guó)科技巨頭如谷歌、蘋果和Facebook等競(jìng)爭(zhēng)。之前,Spotify、Rocket Internet和Deezer等歐洲科技公司曾向歐盟抱怨稱其他在線平臺(tái),如搜索引擎和應(yīng)用商店正在濫用它們作為用戶入口的地位來(lái)推動(dòng)自家服務(wù)的發(fā)展,同時(shí)它們還借助這一優(yōu)勢(shì)設(shè)定了許多不平等條款。歐盟委員會(huì)想建立一套公平的實(shí)踐標(biāo)準(zhǔn),提升市場(chǎng)透明度并解決公司間的紛爭(zhēng)。
歐洲法院收緊“流媒體”
近日,歐洲法院作出一項(xiàng)判決顯示“銷售可以在網(wǎng)絡(luò)上非法查看以及在電視上免費(fèi)觀看電影的多媒體播放器屬于版權(quán)侵權(quán)行為?!贝戆鏅?quán)所有人的一家名為Stichting Brein的基金會(huì)在荷蘭一地區(qū)法院了荷蘭企業(yè)家杰克?弗拉迪克?伍勒姆(Jack Frederik Wullems),該地區(qū)法院將該案件移交至盧森堡法院。伍勒姆銷售了能夠讓用戶輕松從電視機(jī)調(diào)到網(wǎng)絡(luò)流媒體平臺(tái)的多媒體播放器,并對(duì)能夠獲取受版權(quán)保護(hù)的資料的“Filmspeler”進(jìn)行了宣傳。法官在判決中稱,“毫無(wú)疑問(wèn)的是,多媒體播放器目的在于盈利,購(gòu)買多媒體播放器主要是為了直接獲取流媒體網(wǎng)站上的受版權(quán)保護(hù)的作品,但這并未經(jīng)過(guò)版權(quán)所有人的同意?!狈ü賯円虼艘罁?jù)《歐盟版權(quán)指令》第3條(1)款的規(guī)定而支持地區(qū)法院的解釋――伍勒姆未經(jīng)版權(quán)所有人同意而銷售多媒體播放器的行為構(gòu)成“向公共傳播”。
關(guān)鍵詞:J2ME;MMAPI;視頻技術(shù);播放器
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)07-1556-03
1 概述
隨著移動(dòng)媒體技術(shù)的發(fā)展,J2ME在手機(jī)、PDA等移動(dòng)設(shè)備上的到了廣泛的應(yīng)用,目前已成為手機(jī)開(kāi)發(fā)的主流平臺(tái)之一,該文首先介紹了J2ME層次結(jié)構(gòu),MMAPI框架。然后對(duì)視頻播放器的功能要求做了分析,搭建開(kāi)發(fā)平臺(tái),設(shè)計(jì)了并實(shí)現(xiàn)了一款基于J2ME的移動(dòng)媒體播放器。
2 技術(shù)分析
2.1 J2ME體系框架概述
J2ME平臺(tái)有一系列技術(shù)規(guī)范組成。J2ME主要由配置(configuration)、簡(jiǎn)表(profile)和可選包(層)三部分組成。J2ME體系框架結(jié)構(gòu)如圖1所示。
2.2 MMAPI框架分析
移動(dòng)媒體API(Mobile Media API,MMAPI)是JSR135定義的可選包,處于J2ME體系框架的可選包層。提供了一個(gè)功能強(qiáng)大,使用簡(jiǎn)單的多媒體框架。開(kāi)發(fā)人員可以使用這個(gè)多媒體框架在移動(dòng)設(shè)備上處理音頻和視頻數(shù)據(jù)。MMAPI框架有一個(gè)管理器、一個(gè)數(shù)據(jù)源、一個(gè)播放器和若干個(gè)控制器組成,其中播放器是MMAPI的核心。他們之間的關(guān)系如圖2所示。
現(xiàn)對(duì)MMAPI框架中的各個(gè)組件說(shuō)明如下:(1)數(shù)據(jù)源(DataSource):數(shù)據(jù)源由抽象類javax.microedition.media.protocol.DataSource描述,負(fù)責(zé)把多媒體數(shù)據(jù)從原始位置傳輸?shù)讲シ牌?。多媒體數(shù)據(jù)可以存儲(chǔ)在各種不同的位置。如文件、遠(yuǎn)程服務(wù)器或者記錄管理系統(tǒng)等。根據(jù)多媒體數(shù)據(jù)的存儲(chǔ)位置,數(shù)據(jù)源采用不同的傳輸協(xié)議。(2)播放器(player):播放器是MMAPI框架的核心,負(fù)責(zé)和解碼數(shù)據(jù)源提供的多媒體數(shù)據(jù),并把解析后的數(shù)據(jù)發(fā)送到輸出設(shè)備的緩沖區(qū)中。Java.microediton.media.Player接口定義了管理器播放器生命周期、控制媒體重放和同步的方法。(3)控制器(Control):控制器負(fù)責(zé)改變播放器的行為。如聲音控制器可以調(diào)整音頻播發(fā)器的聲音大小。(4)管理器(Manager):管理器又javax.microedition.media.Manager類實(shí)現(xiàn),負(fù)責(zé)創(chuàng)建播放器和數(shù)據(jù)源。它提供了創(chuàng)建播放器的靜態(tài)方法createPlayer。
2.3 使用MMAPI
視頻播放的基本流程是:首先通過(guò)一定的網(wǎng)絡(luò)協(xié)議或本地的位置獲取傳遞來(lái)的流數(shù)據(jù),然后將這些流數(shù)據(jù)傳輸給DataSource類進(jìn)行處理,DataSource類將讀取視頻流和音頻流數(shù)據(jù)并將它們提供給Player類,最后由Player類解析和解碼數(shù)據(jù)以及識(shí)別媒體數(shù)據(jù)類型和傳送媒體數(shù)據(jù)到相應(yīng)的輸出設(shè)備緩沖中,Player通過(guò)同步機(jī)制使用音頻和視頻設(shè)備實(shí)現(xiàn)視頻和音頻的播放。
播放器在其生命周期中有5種狀態(tài),圖3描述了播放器的生命周期。播放器被創(chuàng)建成功,此時(shí)播放器處于unrealized狀態(tài)。調(diào)用realized()方法初始化數(shù)據(jù)傳輸,當(dāng)從該方法返回時(shí),播放器處于realized狀態(tài)。然后調(diào)用prefetch()方法獲取音頻設(shè)備、視頻設(shè)備等專用資源,直到成功獲取這些資源,播放器進(jìn)入prefetched狀態(tài)。此時(shí)播放器就可以調(diào)用start()方法開(kāi)始播放媒體數(shù)據(jù),播放器進(jìn)入started狀態(tài)。而在任何一種狀態(tài)下,都可以調(diào)用close( )方法使播放器處于closed狀態(tài)。如果播放器unrealized狀態(tài)直接調(diào)用start()方法,系統(tǒng)將自動(dòng)調(diào)用中間的realized()方法和prefetch()方法。
3 實(shí)例應(yīng)用
3.1 設(shè)計(jì)要求
設(shè)計(jì)一款視頻播放器能夠播放MPEG格式的視頻文件。具體要求如下:(1)當(dāng)用戶選擇“打開(kāi)視頻文件”選項(xiàng)時(shí),在屏幕上顯示一個(gè)文件對(duì)話框。在文件對(duì)話框中列出了當(dāng)前目錄下所有的子目錄和MPEG格式的視頻文件。用戶可以選擇打開(kāi)一個(gè)視頻文件,也可以選擇進(jìn)入目錄或者上一級(jí)目錄。文件對(duì)話框第一次顯示時(shí),將列出移動(dòng)設(shè)備中所有文件系統(tǒng)的根目錄。(2)當(dāng)用戶打開(kāi)一個(gè)視頻文件時(shí),將啟動(dòng)播放器,在屏幕上播放選擇的視頻文件。在播放視頻的過(guò)程中,用戶可以通過(guò)屏幕上的命令暫時(shí)播放和繼續(xù)播放視頻。用戶還可以通過(guò)按下方向鍵改變音。(3)用戶尅停止播放視頻,返回播放器的主菜單,再次打開(kāi)文件對(duì)話框,打開(kāi)新的視頻文件。
3.2 類設(shè)計(jì)
移動(dòng)視頻播放器共包含4個(gè)類和一個(gè)接口。一個(gè)控制器類MobilPlayerMIDlet;一個(gè)視圖類VedioCanvas;一個(gè)視頻播放器類VedioPlayer以及一個(gè)文件對(duì)話框類VedioFileDialog和文件對(duì)話框命令的處理接口VedioFileDialogListener。圖4顯示了它們之間的關(guān)系。
1)控制器類MobilPlayerMIDlet:該類是應(yīng)用程序主類,實(shí)現(xiàn)了MIDlet的生命周期控制方法。該類實(shí)現(xiàn)了PlayerListener接口,能夠監(jiān)視播放器的變化。同時(shí),該類還實(shí)現(xiàn)了CommandListener接口,處理播放、暫停等命令。2)播放器類VedioPlayer:該類描述了視頻播放過(guò)程。為了避免播放視頻阻塞用戶界面線程,視頻的播放過(guò)程在一個(gè)線程中完成。
3.3 實(shí)例實(shí)現(xiàn)
移動(dòng)視頻播放器在eclispeME+SDK平臺(tái)下,采用Sun公司的WTK進(jìn)行模擬,通過(guò)實(shí)驗(yàn)達(dá)到了預(yù)期的效果。以下是運(yùn)行的效果,如圖5所示。
4 結(jié)束語(yǔ)
移動(dòng)媒體的軟件開(kāi)發(fā)是當(dāng)前研究的熱點(diǎn)。該文闡述了J2ME的系統(tǒng)架構(gòu),分析了MMAPI框架,采用該技術(shù)設(shè)計(jì)實(shí)現(xiàn)了一款手機(jī)視頻播放器。通過(guò)實(shí)驗(yàn),取得了預(yù)期的效果。
參考文獻(xiàn):
[1] 盧軍.J2ME移動(dòng)軟件程序設(shè)計(jì)[M].北京:水利水電出版社,2010.
[2] 傅偉.基于J2ME的手機(jī)摜蛋網(wǎng)絡(luò)游戲的研究[J].計(jì)算機(jī)應(yīng)用軟件,2013(3).
[3] 黃志宏.基于J2ME的流媒體視頻服務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(19).
這樣的一個(gè)上行/下行非對(duì)等分配的方式正符合目前In2ternet服務(wù)使用者的行為模式。在這個(gè)基礎(chǔ)上,數(shù)字內(nèi)容能夠以IP層為核心進(jìn)行匯聚,媒體服務(wù)可以以非線性化方式呈現(xiàn),與觀眾的直接互動(dòng)變得可能。一個(gè)基本的DVB-IPDC標(biāo)準(zhǔn)體系結(jié)構(gòu)如圖1所示。事實(shí)上,DVB-IPDC標(biāo)準(zhǔn)是一系列應(yīng)用規(guī)范的集合,定義了所有的在IP層之上的功能組件,主要包括有:ESG(ElectronicServiceGuide,電子服務(wù)指南)、CDP(ContentDeliveryProtocol,內(nèi)容投遞協(xié)議)、SPP(Ser2vicePurchaseandProtection,服務(wù)購(gòu)買與保護(hù)),以及NotificationFramew本論文由整理提供ork(通知業(yè)務(wù)框架)[2,3]。
ESG標(biāo)準(zhǔn)定義了一整套數(shù)據(jù)模型,用以描述在DVB-H廣播網(wǎng)絡(luò)中,透過(guò)CDP所能夠傳送的各種應(yīng)用服務(wù)以及傳輸?shù)募?xì)節(jié)。終端上的ESG處理程序負(fù)責(zé)輔助用戶瀏覽收到ESG數(shù)據(jù)和選取在DVB-H廣播網(wǎng)絡(luò)上所傳送的服務(wù)。
CDP標(biāo)準(zhǔn)定義了在DVB-H廣播網(wǎng)絡(luò)和移動(dòng)通信網(wǎng)絡(luò)上,以IP數(shù)據(jù)包傳送音視頻媒體流以及數(shù)據(jù)文件所需的通信協(xié)議集,包括FLUTE(FiledeLiv2eryoverUnidirectionalTransport,單向文件傳輸協(xié)議)、RTP(Real-timeTransportProtocol,實(shí)時(shí)傳輸協(xié)議)和HTTP(HyperTextTransferProtocol,超文本傳輸協(xié)議)。SPP標(biāo)準(zhǔn)則是實(shí)現(xiàn)收費(fèi)服務(wù)的基礎(chǔ),定義了保護(hù)前述的音視頻媒體流廣播服務(wù)及數(shù)據(jù)文件廣播服務(wù)所需的CA(ConditionalAccess,條件接取)與DRM(DigitalRightManagement,數(shù)字版權(quán)管理)技術(shù)。而正在制訂中的NotificationFramework標(biāo)準(zhǔn)則被用來(lái)作為交互應(yīng)用服務(wù)的基礎(chǔ)框架,應(yīng)用服務(wù)的數(shù)據(jù)內(nèi)容都能以通知消息的形式傳輸,并通過(guò)通知應(yīng)用服務(wù)(NotificationService)的方式提供給終端應(yīng)用程序使用。在這個(gè)通知業(yè)務(wù)框架中,通知消息被用來(lái)作為向終端或者用戶提供即將到達(dá)的或不可預(yù)知的服務(wù)事件或者信息。一條通知消息可能觸發(fā)一系列隨之而本論文由整理提供來(lái)的交互應(yīng)用操作[3]。
在DVB-IPDC的框架下,現(xiàn)有網(wǎng)絡(luò)中IP層之上的各種多媒體應(yīng)用服務(wù),都可以彈性地跨平臺(tái)應(yīng)用。從服務(wù)的角度來(lái)看,以提供數(shù)字媒體內(nèi)容為主的流媒體服務(wù),無(wú)疑是目前的主流業(yè)務(wù)。通知應(yīng)用服務(wù)則可以作為媒體服務(wù)的附屬增值業(yè)務(wù)或者獨(dú)立的應(yīng)用服務(wù)業(yè)務(wù),提供增強(qiáng)型的多媒體交互應(yīng)用。
而ESG服務(wù)則提供了訪問(wèn)由上述兩種基本服務(wù)組合的各種不同應(yīng)用服務(wù)的用戶界面和訪問(wèn)指南,是與用戶交互的接口。DVB-IPDC標(biāo)準(zhǔn)體系結(jié)構(gòu)下文將主要探討一個(gè)基于該框架的,實(shí)現(xiàn)上述服務(wù)應(yīng)用處理的移動(dòng)多媒體終端原型系統(tǒng)的設(shè)計(jì)與具體實(shí)現(xiàn)方案。
2系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
2.1本論文由整理提供總體架構(gòu)服務(wù)端采用實(shí)驗(yàn)室開(kāi)發(fā)的DVB-IPDC多媒體綜合服務(wù)系統(tǒng)提供各種應(yīng)用服務(wù),本終端的設(shè)計(jì)目標(biāo)是在DVB-本論文由整理提供IPDC的框架內(nèi),能夠接收服務(wù)端用各種協(xié)議會(huì)話傳輸過(guò)來(lái)的數(shù)據(jù)信息,實(shí)現(xiàn)流媒體服務(wù)應(yīng)用、ESG服務(wù)應(yīng)用、通知服務(wù)應(yīng)用的處理及用戶配置與注冊(cè)等管理功能。整個(gè)系統(tǒng)以Java作為基礎(chǔ)平臺(tái)進(jìn)行開(kāi)發(fā),根據(jù)功能需求,采用分層設(shè)計(jì)的方案,如圖2所示。1)傳輸層:向上層應(yīng)用提供指定會(huì)話協(xié)議的通信功能。
其中RTP模塊主要負(fù)責(zé)接收音視頻流媒體以及具有時(shí)間同步、服務(wù)相關(guān)性要求的通知應(yīng)用服務(wù)數(shù)據(jù)。FLUTE模塊用來(lái)接收絕大部分通過(guò)DVB-H網(wǎng)絡(luò)傳輸?shù)耐ㄖ獞?yīng)用服務(wù)數(shù)據(jù)。HTTP模塊則提供了一個(gè)雙向通道,使終端可以完成服務(wù)注冊(cè)或者向服務(wù)端請(qǐng)求個(gè)性的通知應(yīng)用服務(wù)信息,提供了點(diǎn)對(duì)點(diǎn)的交互功能。2)功能層:在傳輸層提供通信服務(wù)的基礎(chǔ)上,該層負(fù)責(zé)相關(guān)應(yīng)用服務(wù)的數(shù)據(jù)處理以及終端系統(tǒng)的管理。會(huì)話管理模塊負(fù)責(zé)其他功能模塊調(diào)用下層協(xié)議通信模塊創(chuàng)建服務(wù)接收會(huì)話。媒體處理模塊負(fù)責(zé)提供音視頻流媒體的解碼以及同步處理。ESG處理模塊主要負(fù)責(zé)ESG分片的維護(hù)、聚合以及解析,實(shí)現(xiàn)DVB-IPDC標(biāo)準(zhǔn)定義的ESG數(shù)據(jù)模型處理。
通知消息管理模塊負(fù)責(zé)終端接收到的通知消息的解析、過(guò)濾、生命周期管理以及服務(wù)應(yīng)用投遞。訂閱管理模塊負(fù)責(zé)終端的服務(wù)申請(qǐng)與注冊(cè)功能。
配置管理模塊負(fù)責(zé)處理用戶對(duì)終端的系統(tǒng)參數(shù)設(shè)置管理。存儲(chǔ)管理模塊負(fù)責(zé)終端的用戶參數(shù)、ESG應(yīng)用服務(wù)數(shù)據(jù)以及通知應(yīng)用服務(wù)的相關(guān)信息本論文由整理提供數(shù)據(jù)的存儲(chǔ)。應(yīng)用管理模塊則向各種應(yīng)用服務(wù)提供了一個(gè)公共的應(yīng)用框架,用戶通過(guò)獲取或者訂閱啟動(dòng)使用的應(yīng)用服務(wù)都集成于該框架之內(nèi),通過(guò)公用的接口調(diào)用其他模塊的功能,使得終端能夠動(dòng)態(tài)加載各種應(yīng)用服務(wù),而具體的應(yīng)用服務(wù)的功能邏輯實(shí)現(xiàn)與平臺(tái)無(wú)關(guān)。3)應(yīng)用層:媒體播放器負(fù)責(zé)播放經(jīng)解碼和同步處理后的音視頻媒體流。
ESG瀏覽器能夠顯示終端得到的ESG數(shù)據(jù)信息并支持與用戶交互。用戶配置使得用戶能夠設(shè)置終端的用戶應(yīng)用參數(shù)。通知應(yīng)用界面容器是用來(lái)裝載各種通知應(yīng)用的用戶界面接口,提供終端用戶與通知應(yīng)用服務(wù)的交互。終端架構(gòu)2.2ESG數(shù)據(jù)的處理與顯示。
ESG用XMLSchema來(lái)定義其數(shù)據(jù)結(jié)構(gòu)[4]。分片(Fragment)是ESG內(nèi)容的最小組成單位。根據(jù)分片攜帶信息數(shù)據(jù)的屬性的不同,可以分為3大類共7種類型的分片:①服務(wù)信息相關(guān)分片:Service、Sched2uleEvent、Content,提供有關(guān)服務(wù)類型、時(shí)間安排、服務(wù)內(nèi)容等應(yīng)用服務(wù)的業(yè)務(wù)信息;②訂閱購(gòu)買信息相關(guān)分片:ServiceBundle、Purchase、PurchaseChannel,提供有關(guān)購(gòu)買組合、價(jià)格等相關(guān)信息;③獲得信息分片:Ac2quisition,提供應(yīng)用服務(wù)的訪問(wèn)途徑和參數(shù),對(duì)于用戶不可見(jiàn),但卻是終端訪問(wèn)業(yè)務(wù)應(yīng)用的入口。通過(guò)分片機(jī)制,終端可以獨(dú)立地接收和更新不同分片,而不管其發(fā)送順序,并且可以在接收部分的分片后就根據(jù)各分片之間的關(guān)系進(jìn)行聚合(Aggregate),通過(guò)ESG瀏覽器展現(xiàn)內(nèi)容給用戶,不需要等待全部分片到達(dá)。
目前以XMLDOM樹(shù)形式來(lái)組織本論文由整理提供管理ESG分片信息。符合ESG數(shù)據(jù)模型定義的分片到達(dá)終端后,通過(guò)遍歷該DOM樹(shù),可以作為新節(jié)點(diǎn)加入或者更新相應(yīng)位置的節(jié)點(diǎn)信息,同時(shí)檢查是否有失效的分片信息,進(jìn)行刪減維護(hù)。ESG顯示處理采用MVC模式[5],后臺(tái)DOM樹(shù)數(shù)據(jù)對(duì)象發(fā)生的變化,可以實(shí)時(shí)地反映到ESG瀏覽器。
2)流媒體服務(wù)與特定通知應(yīng)用服務(wù)的關(guān)聯(lián)與信息同步問(wèn)題?;贒VB-IPDC框架的多媒體服務(wù)相對(duì)于傳統(tǒng)多媒體服務(wù)的最大優(yōu)勢(shì)就在于支持用戶實(shí)時(shí)交互。流媒體服務(wù)不再是單純的數(shù)字媒體收視,而是可以與通知應(yīng)用服務(wù)進(jìn)行綁定,提供交互應(yīng)用,并且通知消息與流媒體服務(wù)的媒體內(nèi)容可以進(jìn)行緊密的時(shí)間同步[6]。
前者通過(guò)在應(yīng)用服務(wù)ESG數(shù)據(jù)的Service分片描述中指出了服務(wù)關(guān)聯(lián)。而對(duì)于通知消息與媒體內(nèi)容的時(shí)間同步,可基于RTP/RTCP傳輸協(xié)議進(jìn)行。RTP/RTCP協(xié)議中的同步采用時(shí)間戳方法,不同媒體之間依靠RTCP報(bào)文中包含的參考時(shí)鐘信息和相關(guān)的RTP時(shí)間戳信息來(lái)進(jìn)行同步[7,8]。
終端系統(tǒng)在RTP協(xié)議會(huì)話上接收到音視頻媒體流和通知消息數(shù)據(jù)流后,依據(jù)同步的各方共享的遠(yuǎn)端參考時(shí)鐘,建立一個(gè)虛擬的時(shí)間軸來(lái)決定媒體的下一幀表現(xiàn)時(shí)間和通知消息的應(yīng)用時(shí)間。需要指出的是,通知消息并不像媒體數(shù)據(jù)那樣具有持續(xù)時(shí)間(Duration)的概念[9],目前采取的處理方法是,用每條消息的首包中的RTP時(shí)間戳來(lái)對(duì)齊參考時(shí)間軸,在完整地接收到一條通知消息后,用得到的應(yīng)用時(shí)間值設(shè)置一個(gè)計(jì)時(shí)器綁定該通知消息,然后提交給通知消息管理本論文由整理提供模塊,由計(jì)時(shí)器來(lái)觸發(fā)后續(xù)的應(yīng)用處理動(dòng)作。
3)通知消息管理。在終端的通知應(yīng)用中,雖然通知消息的處理是由承載的數(shù)據(jù)內(nèi)容和通知應(yīng)用程序決定,但終端系統(tǒng)處于動(dòng)態(tài)變化的移動(dòng)環(huán)境下,行為并不具有可預(yù)測(cè)性,尤其是在通知消息丟失后,可能會(huì)導(dǎo)致終端異常。為此DVB組織提出了一種管理通知消息在特定狀態(tài)下的潛在應(yīng)用動(dòng)作的生命周期參考模型[3]本論文由整理提供
。
根據(jù)消息本身的時(shí)間特性和數(shù)據(jù)內(nèi)容的接收情況,通知消息可能處于3種穩(wěn)定狀態(tài)和1種過(guò)渡狀態(tài)中的某一狀態(tài)中,狀態(tài)之間的變遷具有確定的處理動(dòng)作。具體如圖3所示:通知消息的默認(rèn)初始狀態(tài)為Absent,這同時(shí)也是通知消息從系統(tǒng)中刪除后的最終狀態(tài)。該狀態(tài)下無(wú)計(jì)時(shí)器與通知消息關(guān)聯(lián),從該狀態(tài)向其他狀態(tài)變遷意味著加載該通知消息。Loaded狀態(tài)表示該通知消息已經(jīng)下載完畢,但是沒(méi)有后續(xù)的被啟動(dòng)媒體播放器,通知應(yīng)用程序啟動(dòng)自己的應(yīng)用界面)。
然后該應(yīng)用服務(wù)程序通過(guò)會(huì)話管理模塊調(diào)用底層協(xié)議通信模塊,根據(jù)應(yīng)用服務(wù)的訪問(wèn)信息創(chuàng)建對(duì)應(yīng)的服務(wù)會(huì)話接收應(yīng)用服務(wù)數(shù)據(jù)。如果是流媒體服務(wù),則將媒體數(shù)據(jù)信息交由媒體處理模塊處理后在媒體播放器展現(xiàn);如果是特定的通知應(yīng)用,則經(jīng)通知本論文由整理提供消息處理后分發(fā)給該通知應(yīng)用程序使用。如果該通知應(yīng)用存在交互動(dòng)作,用戶能夠通過(guò)HTTP模塊同服務(wù)端進(jìn)行交互操作(如圖6所示)。圖6ESG交互與應(yīng)用服務(wù)啟動(dòng)3結(jié)束語(yǔ)隨著DVB-IPDC的推廣,基于該框架的移動(dòng)多媒體業(yè)務(wù)應(yīng)用必將得到廣泛發(fā)展。筆者在DVB-IPDC技術(shù)框架的基礎(chǔ)上,提出了一個(gè)移動(dòng)多媒體終端的設(shè)計(jì)與實(shí)現(xiàn)方案,并對(duì)實(shí)現(xiàn)過(guò)程中的關(guān)鍵問(wèn)題和相關(guān)技術(shù)方法作了一定探討,目前已經(jīng)初步完成了一個(gè)基于上述方案的原型系統(tǒng)。下一步的工作是在該原型系統(tǒng)的基礎(chǔ)上,進(jìn)一步優(yōu)化業(yè)務(wù)流程處理,進(jìn)行平臺(tái)移植測(cè)試。
參考文獻(xiàn):
[1]高鵬,李薰春,謝錦輝.移動(dòng)多媒體廣播技術(shù)發(fā)展綜述[J].廣播與電視技術(shù),2006(3):63-65.
[2]KornfeldM,MayG1DVB-HandIPDatacast:BroadcasttoHandheldDevices[J].IEEETransactionsonBroadcasting,2007,53(1):161-170.
[3]DVBCBMS.IPDatacastoverDVB-H:NotificationFrame2work[S].ETSITS102832,2008.
[4]楊晨,王慧,唐曉晟,等.移動(dòng)多媒體廣播中電子業(yè)務(wù)指南的生成與解析[J].電視技術(shù),2007(31):37-39.
[5]任中方,張華,閆明松,等.MVC模式研究的綜述[J].計(jì)算機(jī)應(yīng)用研究,2004(10):1-5.
[6]蔡倩,谷建華,倪紅波,等.基于數(shù)字電視中間件的媒體播放器研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2007(3):737-739.
[7]崔莉,王敏,吉逸.流媒體同步機(jī)制研究[J].計(jì)算機(jī)應(yīng)用研究,2005(1):73-75.
[8]逄棟,姜昌金.流媒體技術(shù)及其開(kāi)發(fā)方法[J].計(jì)算機(jī)技術(shù)與發(fā)展,2006,16(2):145-147.
關(guān)鍵詞:流媒體;現(xiàn)代遠(yuǎn)程教育;網(wǎng)絡(luò)
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)22-5407-02
Application of Streaming Media Technology in Modern Long-distance Education
YU Zheng-hong,YANG Hua-yong
(Department of Information Engineering, City College, Wuhan University of Science and Technology, Wuhan 430083, China)
Abstract: With the development of computer and network technology, streaming media technology has matured and improved,then has been widely used in many areas, its application has injected new vitality to the network teaching in modern distance education. This paper analyses of streaming media technology and its application in modern long-distance education, with a view to discussion on streaming media technology and development of modern long-distance education.
Key words: streaming media; modern long-distance education; network
現(xiàn)代遠(yuǎn)程教育是隨著現(xiàn)代信息技術(shù)的發(fā)展而產(chǎn)生的一種新型教育形式,它突破了傳統(tǒng)在時(shí)間和空間上的限制,最大限度的實(shí)現(xiàn)了教育資源的共享。現(xiàn)代遠(yuǎn)程教育的授課方式一般有同步授課和異步授課兩種:同步授課可實(shí)現(xiàn)教師和學(xué)員之間的交互學(xué)習(xí)、實(shí)時(shí)交流,但需要占用較大的寬帶;異步授課是指采用Web技術(shù),事先將多媒體課件放到服務(wù)器上,用戶需要時(shí)可將其下載到本地計(jì)算機(jī)上播放,但由于數(shù)據(jù)量大需占用大量的服務(wù)器空間,且用戶下載需要等待一定的時(shí)間。由于互聯(lián)網(wǎng)絡(luò)帶寬的限制,很難將結(jié)構(gòu)類型復(fù)雜、內(nèi)容龐大的教學(xué)資源文件在教師端和學(xué)生端進(jìn)行有效、實(shí)時(shí)地傳輸。但流媒體技術(shù)的出現(xiàn)對(duì)解決上述問(wèn)題提供了極大幫助,利用該技術(shù)可以在任意時(shí)間把各種龐大的教學(xué)資源如視頻、音頻、文本、圖像、課件、動(dòng)畫(huà)等,通過(guò)互聯(lián)網(wǎng)絡(luò)傳輸給任意地點(diǎn)的學(xué)習(xí)者,使現(xiàn)代遠(yuǎn)程教育系統(tǒng)更好的發(fā)揮其教育功用[1]。
1流媒體技術(shù)簡(jiǎn)介
流媒體(Streaming Media)是指應(yīng)用流技術(shù)將連續(xù)的多媒體文件分割壓縮后在互聯(lián)網(wǎng)上傳輸與播放的媒體格式。
1.1流媒體技術(shù)原理
流媒體技術(shù)是將完整的多媒體文件(如視頻、音頻等)經(jīng)過(guò)壓縮后保存在網(wǎng)站服務(wù)器上,流媒體的傳輸需要緩存的支持。當(dāng)用戶點(diǎn)擊播放多媒體文件時(shí),系統(tǒng)會(huì)先創(chuàng)建一個(gè)緩存,然后采用流式傳輸技術(shù)分段傳輸數(shù)據(jù),用戶可以邊下載邊播放。
多媒體文件通過(guò)Internet進(jìn)行傳輸時(shí)先被分解成許多數(shù)據(jù)包,然后進(jìn)行斷續(xù)的異步傳輸,但是,由于網(wǎng)絡(luò)是實(shí)時(shí)動(dòng)態(tài)變化的,各個(gè)數(shù)據(jù)包選擇的路由可能不同,導(dǎo)致各數(shù)據(jù)包到達(dá)客戶端的順序會(huì)不同于服務(wù)端發(fā)送的順序。基于這種情況,要使得客戶端按照正確的順序播放多媒體文件,就需要使用緩存系統(tǒng)來(lái)彌補(bǔ)延遲和抖動(dòng),客戶端收到數(shù)據(jù)包后先緩存起來(lái),播放器再?gòu)木彺嬷邪创涡蜃x取數(shù)據(jù)。采用了緩存機(jī)制后,即便發(fā)生網(wǎng)絡(luò)擁堵,數(shù)據(jù)量不能及時(shí)到達(dá)客戶端,也不會(huì)影響播放,因?yàn)椴シ牌骺梢宰x取以前緩存的數(shù)據(jù),等到網(wǎng)絡(luò)正常后,新的數(shù)據(jù)會(huì)繼續(xù)添加到緩存中。但這并不會(huì)給客戶端造成較大的負(fù)荷,因?yàn)楦咚倬彺嫠璧娜萘枯^小,所以,普通的客戶端可以完全滿足對(duì)流媒體文件的接收。一般用戶端接收機(jī)的高速緩存使用環(huán)形鏈表結(jié)構(gòu)來(lái)存儲(chǔ)數(shù)據(jù),這樣當(dāng)接收到的內(nèi)容一旦播放完畢便要被丟棄,釋放出原有緩存空間重新接收緩存其他未被播放的數(shù)據(jù)包,實(shí)現(xiàn)數(shù)據(jù)包的實(shí)時(shí)流動(dòng)更新,直至傳輸結(jié)束[2]。
1.2流媒體的傳輸協(xié)議
流媒體的傳輸采用的是效率較高的RTP/UDP協(xié)議,雖然TCP傳輸協(xié)議可靠性較高,但其開(kāi)銷多,難以滿足流數(shù)據(jù)的實(shí)時(shí)傳輸,但是TCP協(xié)議可以用來(lái)傳輸控制信息。流媒體傳輸原理如圖1。
Web服務(wù)器為用戶提供流媒體的操作界面。當(dāng)學(xué)習(xí)者在瀏覽器上選擇播放某一視頻時(shí),Web服務(wù)器接到請(qǐng)求后會(huì)將這一資源的流媒體服務(wù)器地址、路徑等信息提供給客戶端,然后啟動(dòng)流媒體播放器,連接流媒體服務(wù)器,播放流媒體文件。流媒體播放器與流媒體服務(wù)器之間的信息交換與控制使用的是RTSP協(xié)議,完成對(duì)流媒體文件的播放、暫停、快進(jìn)、后退等操作的命令和方法。通過(guò)RTSP協(xié)議,客戶端向服務(wù)器提出了播放某一流媒體資源的請(qǐng)求,服務(wù)器響應(yīng)了這個(gè)請(qǐng)求后,就可以把流媒體數(shù)據(jù)傳輸給客戶端了[3]。
但是,對(duì)于流媒體數(shù)據(jù)的傳輸并不是依靠RTSP協(xié)議,而是基于UDP的RTP協(xié)議,RTSP協(xié)議在傳輸過(guò)程中具有控制數(shù)據(jù)傳輸?shù)淖饔谩?/p>
1.3流媒體的播放方式
流媒體服務(wù)器可以提供的播放方式主要有三種,即:?jiǎn)尾?unicast)、組播(Multicast)和廣播(Broadcast)。單播是指每個(gè)客戶端單獨(dú)與流媒體服務(wù)器建立數(shù)據(jù)通道,服務(wù)器只將數(shù)據(jù)傳給這一個(gè)客戶端。用戶通過(guò)單播方式可以滿足自己的個(gè)性化需求,可實(shí)現(xiàn)暫停、快進(jìn)、后退等功能。其缺點(diǎn)是對(duì)流媒體服務(wù)器的性能要求和網(wǎng)絡(luò)速度要求很高,當(dāng)單播用戶較多時(shí),造成服務(wù)器負(fù)擔(dān)較重,造成播放停頓或停止。組播方式是基于“組”的播放方式,流媒體服務(wù)器發(fā)出數(shù)據(jù)時(shí),某一特定的組能夠接收到,其他之外的客戶端則接收不到,這就大大減輕了服務(wù)器的負(fù)擔(dān)。但是接收到流數(shù)據(jù)的組,并不能控制流,也就是在播放時(shí)不能根據(jù)自己的需要進(jìn)行暫停、快進(jìn)、后退等操作。廣播是流媒體服務(wù)器發(fā)出的數(shù)據(jù)可以被同一網(wǎng)段上的所有客戶端所接受,它是組播的一個(gè)特例。組播和廣播都是只傳輸一份流數(shù)據(jù),發(fā)送給多個(gè)客戶,這樣可以保證流數(shù)據(jù)占用最小的網(wǎng)絡(luò)寬帶。
圖1流媒體傳輸原理圖
2流媒體在現(xiàn)代遠(yuǎn)程教育中的應(yīng)用
流媒體在現(xiàn)代遠(yuǎn)程教育中的應(yīng)用極大的提高了網(wǎng)絡(luò)教學(xué)質(zhì)量,推動(dòng)了現(xiàn)代遠(yuǎn)程教育的發(fā)展,其應(yīng)用主要有以下幾點(diǎn):
2.1實(shí)現(xiàn)教學(xué)課堂的網(wǎng)絡(luò)直播
遠(yuǎn)程課堂教學(xué)是現(xiàn)代遠(yuǎn)程教育的一個(gè)重要環(huán)節(jié),在傳統(tǒng)的遠(yuǎn)程教育中,學(xué)生想通過(guò)視頻學(xué)習(xí)或觀看講座的前提是已經(jīng)有錄制好的視頻文件存儲(chǔ)在服務(wù)器上,然后學(xué)生下載到客戶端,才能觀看。流媒體技術(shù)在遠(yuǎn)程教育中得以應(yīng)用之后,學(xué)習(xí)者可以在Internet網(wǎng)絡(luò)上直接觀看教學(xué)直播,無(wú)需事先錄制媒體文件,而是采用實(shí)時(shí)生成的多媒體流的方式直接進(jìn)行廣播,學(xué)習(xí)者可以不受地點(diǎn)的限制,在任何一臺(tái)多媒體計(jì)算機(jī)上受到課堂教育,創(chuàng)建一種“面對(duì)面”的教學(xué)環(huán)境,縮短教學(xué)雙方的空間距離。直播結(jié)束后,還可以生成基于流媒體方式的教學(xué)節(jié)目,存儲(chǔ)到流媒體服務(wù)器上,方便學(xué)生隨時(shí)點(diǎn)播。
遠(yuǎn)程廣播實(shí)現(xiàn)方式如圖2,攝像機(jī)及話筒采集到的視頻、音頻信息經(jīng)數(shù)字化之后傳輸給Windows media encoder進(jìn)行實(shí)時(shí)壓縮編碼,生成實(shí)時(shí)的ASF數(shù)據(jù)流,編碼輸出的節(jié)目流經(jīng)Windows media server實(shí)現(xiàn)網(wǎng)上直播。S代表學(xué)生端。
圖2遠(yuǎn)程廣播實(shí)現(xiàn)示意圖
2.2視頻點(diǎn)播,自主學(xué)習(xí)
采用流媒體技術(shù)以后,學(xué)習(xí)者可以即時(shí)點(diǎn)播所需的多媒體文件,只需要幾秒鐘的下載時(shí)間,便可以邊下載邊播放,而不用像以前一樣下載到本地計(jì)算機(jī),節(jié)省了下載的時(shí)間和客戶端的存儲(chǔ)資源。學(xué)習(xí)者可以自由選擇學(xué)習(xí)時(shí)間和地點(diǎn)根據(jù)自己的學(xué)習(xí)進(jìn)程選擇適當(dāng)?shù)恼n程,點(diǎn)播視頻進(jìn)行自主學(xué)習(xí)。同時(shí),學(xué)習(xí)者在觀看視頻的過(guò)程中可以靈活控制觀看進(jìn)度,對(duì)視頻進(jìn)行快進(jìn)、后退、暫停等操作。在這種學(xué)習(xí)方式中,學(xué)生完全掌握學(xué)習(xí)的主動(dòng)權(quán),可以根據(jù)自己的情況,自由選擇教學(xué)內(nèi)容、教學(xué)進(jìn)度,學(xué)生不再是被動(dòng)地接受知識(shí),而是積極主動(dòng)地參與到學(xué)習(xí)過(guò)程中[4]。
2.3遠(yuǎn)程交互式教學(xué)
借助流媒體技術(shù)還可以實(shí)現(xiàn)教師端與學(xué)生端的遠(yuǎn)程互動(dòng),加強(qiáng)師生之間的交流,達(dá)到更好的教學(xué)效果。交互模式包括異步交互、同步語(yǔ)音交互、同步文本交互、同步視頻交互等方式,通過(guò)同步交互可以實(shí)現(xiàn)教師和學(xué)生的實(shí)時(shí)互動(dòng),方便與教師對(duì)學(xué)生的在線指導(dǎo)。交互過(guò)程要借助攝像機(jī)、話筒等設(shè)備對(duì)視頻、音頻信息進(jìn)行采集和處理,然后上傳流媒體服務(wù)器,流媒體服務(wù)器再到終端計(jì)算機(jī),實(shí)現(xiàn)交互式教學(xué)。流媒體技術(shù)結(jié)合其他多種網(wǎng)絡(luò)實(shí)現(xiàn)技術(shù),再充分利用傳統(tǒng)多媒體教學(xué)資料庫(kù),我們將能夠更有效地開(kāi)展基于網(wǎng)絡(luò)的教學(xué),提高教學(xué)效果[5]。
3總結(jié)
流媒體技術(shù)在現(xiàn)代遠(yuǎn)程教育中的應(yīng)用給網(wǎng)絡(luò)教學(xué)帶來(lái)了新的活力,隨著計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,流媒體技術(shù)也將有長(zhǎng)足的進(jìn)步,其在現(xiàn)代遠(yuǎn)程教育中的應(yīng)用也將更加廣泛和成熟,將更好的促進(jìn)現(xiàn)代遠(yuǎn)程教育的發(fā)展,為我國(guó)終身教育體系和學(xué)習(xí)型社會(huì)的建立貢獻(xiàn)了力量。
參考文獻(xiàn):
[1]周穎,曹茜,周恕義.流媒體技術(shù)及其在遠(yuǎn)程教育中的應(yīng)用[J].中國(guó)現(xiàn)代教育裝備,2006,6:1-7.
[2]孫瑩瑩.流媒體技術(shù)與現(xiàn)代遠(yuǎn)程教育[J].長(zhǎng)江大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,7(3):400-401.
[3]林天峰.Linux服務(wù)器架設(shè)指南[M].北京:清華大學(xué)出版社,2010,523-526.
My Book Live個(gè)人云存儲(chǔ)解決方案兼具公共云與個(gè)人云的優(yōu)勢(shì),幫助用戶將媒體和文件安全地保存在家中的硬盤里,并通過(guò)WD移動(dòng)應(yīng)用程序在任何聯(lián)網(wǎng)的PC、Mac電腦、平板電腦和智能手機(jī)上訪問(wèn)這些內(nèi)容。通過(guò)My Book Live,用戶可以分享文件、流媒體和在任何地方訪問(wèn)媒體文件,無(wú)需月租費(fèi),也會(huì)對(duì)保存在家中的數(shù)據(jù)擁有完全的掌控。除此之外,通過(guò)WD 2go Pro應(yīng)用程序可與朋友、家人和同事共享幾乎所有的私人文件,從圖片、個(gè)人視頻到工作文檔和演示文件。
WD 2go web是WD的第二代遠(yuǎn)程訪問(wèn)技術(shù),可實(shí)現(xiàn)My Book Live和遠(yuǎn)程電腦之間的對(duì)等網(wǎng)絡(luò)連接,實(shí)現(xiàn)速度和流量最大化?!坝脩粝M谌魏蔚胤?、通過(guò)任何設(shè)備都可以訪問(wèn)個(gè)人云,而且不需要支付月租費(fèi),不會(huì)對(duì)個(gè)人數(shù)據(jù)失去控制。其次,可以隨心所欲地訪問(wèn)所有文件,無(wú)需擔(dān)心文件是否與設(shè)備同步?,F(xiàn)在,通過(guò)WD 2go移動(dòng)應(yīng)用程序和WD My Book Live個(gè)人云存儲(chǔ)方案,用戶在任何地方都能用移動(dòng)設(shè)備存儲(chǔ)、分享和訪問(wèn)所有數(shù)據(jù)?!蔽鞑繑?shù)據(jù)外置產(chǎn)品與消費(fèi)電子集團(tuán)執(zhí)行副總裁兼總經(jīng)理Jim Welsh表示。
WD一直致力于提供安全存儲(chǔ)與在任何屏幕上、任何地點(diǎn)訪問(wèn)數(shù)字內(nèi)容。WD 2go應(yīng)用是這一愿景的最新實(shí)現(xiàn),支持多種流媒體電影、音樂(lè)或訪問(wèn)包括Microsoft Office辦公軟件文件在內(nèi)的媒體文件格式。除了具備WD 2go應(yīng)用程序的所有功能之外,WD 2go Pro還擁有如下高級(jí)功能:
剪輯用戶可以剪輯從My Book Live硬盤下載到移動(dòng)設(shè)備的文件、圖片、歌曲、視頻或文件夾,以便離線訪問(wèn);
自動(dòng)同步將My Book Live中的新增文件自動(dòng)與移動(dòng)設(shè)備同步;
內(nèi)容共享使用電子郵件發(fā)送文件,通過(guò)鏈接共享文件,利用第三方應(yīng)用程序打印和打開(kāi)文件;
附加安全性使用 4 位密碼鎖定訪問(wèn)權(quán)限。