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