[摘要]流媒體是近幾年來新興的多媒體技術(shù),具備有優(yōu)秀的即時性和良好的交互性,本文深入介紹了流媒體平臺采用的技術(shù)、同時重點介紹了一個流媒體基礎(chǔ)平臺設(shè)計與實現(xiàn)的解決方案。
[關(guān)鍵詞]流媒體Windows Media Service
一、引言
隨著多媒體與網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,網(wǎng)絡(luò)帶寬與校園網(wǎng)建設(shè)等的不斷完善,基于IP的流媒體平臺得到了廣泛的應(yīng)用,充分利用流媒體進行實時交互,是一種全新的展示方式,也是對傳統(tǒng)Web展示手段的補充和延伸,本文在介紹流媒體技術(shù)和應(yīng)用的基礎(chǔ)上,從實踐角度闡述了搭建一個流媒體基礎(chǔ)平臺的解決方案。
二、流媒體技術(shù)概述
1. 流媒體技術(shù)的定義
從概念上理解,流媒體是指在網(wǎng)絡(luò)中使用流式傳輸技術(shù)的連續(xù)媒體,例如,音頻、視頻、動畫或其它多媒體文件。流媒體技術(shù),也稱為流式媒體技術(shù)(Stream Media),就是把影像和聲音信息經(jīng)過壓縮處理后放到網(wǎng)絡(luò)服務(wù)器上,讓瀏覽者一邊下載一邊觀看、收聽,而不需要等要整個多媒體文件下載完成就可以實時觀看的技術(shù)。
2. 流媒體的播放方式與含義
流媒體的播放方式包括單播、多播、點播與廣播,并可組合為點播單播、廣播單播、廣播多播等播放方式。它們的含義如下所示。
單播:是客戶端與服務(wù)器之間的點到點連接。在客戶端媒體服務(wù)器之間建立一個單獨的數(shù)據(jù)通道,1臺服務(wù)器送出的每個數(shù)據(jù)包只能傳送給1個客戶機。
多播。是通過啟用多播的網(wǎng)絡(luò)傳遞內(nèi)容流,網(wǎng)絡(luò)中的所有客戶端共享同一內(nèi)容流。由多播技術(shù)構(gòu)建的網(wǎng)絡(luò),允許路由器一次將數(shù)據(jù)包復(fù)制到多個通道上。
點播。是客戶端與服務(wù)器之間的主動的連接。用戶通過選擇內(nèi)容項目來初始化客戶端連接。用戶可以開始、停止、后退、快進或暫停流。
廣播。指的是用戶被動接收流。在廣播過程中,客戶端接收流,但不能控制流。例如,用戶不能暫停、快進或后退該流。
點播單播。 客戶端連接到服務(wù)器以接收特定內(nèi)容,而該內(nèi)容也只傳往一個客戶端。
廣播單播。 客戶端通過發(fā)布點上的別名訪問流。用戶可單擊網(wǎng)頁上的鏈接或獲得該別名的 URL,從而連接到流。每個連接到流的用戶都有其自己的連接和來自服務(wù)器的流。
廣播多播。被動的用戶通過監(jiān)視特定的 IP 地址接收多播 ASF 流(與以特定頻率從收音機或電視臺接收信號類似)。
3. 流媒體平臺的解決方案
目前,實現(xiàn)流媒體平臺主要有以下三種解決方案。
(1)Real System。Real System由媒體內(nèi)容制作工具Real Producer、服務(wù)器Real Server、客戶端Real Player三部分組成。其流媒體文件包括Real Audio、Real Video、Real Presentation和Real Flash四類文件,分別用于傳送不同的文件。
(2)Windows Media Technology。Windows Media Technology 是Microsoft提出的流媒體技術(shù)應(yīng)用解決方案,主要是由Media Tools、Media Server和Media Player工具構(gòu)成。通過各種工具可以創(chuàng)建、編輯、播放和加密視頻流,并具有多種文件發(fā)布形式和監(jiān)控管理功能。
(3)QuickTime。Apple公司的QuickTime包括服務(wù)器QuickTime Streaming Server、帶編輯功能的播放器QuickTime Player、制作工具QuickTimePro、圖像瀏覽器PictureViewer,以及使瀏覽器能夠播放的QuickTime插件。
三、流媒體基礎(chǔ)平臺的設(shè)計與實現(xiàn)
為便于說明,筆者通過利用Windows Media Service實現(xiàn)一個廣播與點播的流媒體基礎(chǔ)平臺為例,逐步介紹流媒體基礎(chǔ)平臺的設(shè)計和實現(xiàn)步驟。
1. 系統(tǒng)設(shè)計
流媒體基礎(chǔ)平臺由4臺HP ProLiant DL380 G4和1臺 HP ProLiant DL380 G5服務(wù)器組成,分別作為數(shù)據(jù)庫、點播、多播、制作、授權(quán)應(yīng)用。服務(wù)器操作系統(tǒng)采用Microsoft Windows 2003企業(yè)版,流媒體軟件采用系統(tǒng)自帶的Windows Media Service,實現(xiàn)流媒體的制作、發(fā)布、點播與廣播等功能,各臺服務(wù)器都接入校園的互聯(lián)網(wǎng),確保雙方之間能正確互訪。
2.系統(tǒng)軟硬件配置與安裝
在各臺機器中安裝Windows 2003企業(yè)版操作系統(tǒng),并完成Sp2補丁包的升級,由于管理員賬號不能隨便使用,因此,在系統(tǒng)安裝完成后統(tǒng)一創(chuàng)建WMSAdmin賬戶,通過這個賬戶,在系統(tǒng)運行時可以啟動各種服務(wù)并可用于各服務(wù)器中共享訪問,一般情況不要修改該賬戶密碼,如果需要修改,則必需同時修改利用賬戶所啟用的服務(wù)密碼。安裝完成后,根據(jù)下表安裝相應(yīng)軟件。
3.點播、廣播與數(shù)據(jù)庫服務(wù)器配置
以上系統(tǒng)軟件與應(yīng)用軟件安裝成功后,即可以進行點播、廣播服務(wù)器與數(shù)據(jù)庫服務(wù)器的配置,配置過程如下表所示。
(1)為各目錄添加相應(yīng)權(quán)限。在%systemdrive%\wmpub目錄安全性中授予WMSAdmin用戶讀取權(quán)限。
在%SystemRoot%\System32\windows meida\server目錄安全性中授予WMSAdmin用戶的寫入、修改權(quán)限。
在%windir%\System32\LogFiles\WMS目錄安全性中添加WMSAdmin用戶寫入、修改權(quán)限。
在%systemdrive%\wmpub\WMArchive目錄安全性中添加WMSAdmin用戶寫入、修改權(quán)限。
(2)修改注冊表。HKLM\Software\Microsoft\Windows Media\Server\Namespace\Storage權(quán)限中添加WMSAdmin讀取權(quán)限。
(3)修改服務(wù)啟動賬號。在控制面板-管理工具—服務(wù)中,停止WMS(Windows Media Service)服務(wù),并修改服務(wù)屬性中的登錄,把啟動服務(wù)的賬戶修改為WMSAdmin。并重啟WMS服務(wù)。
(4)配置WMS服務(wù)。啟動WMS服務(wù)控制臺,因發(fā)布點所指向的源是在遠程存儲中,因此需要修改發(fā)布點屬性,即禁用服務(wù)器屬性—授權(quán)—WMS NTFS ACL 授權(quán),并啟用WMS發(fā)布點ACL授權(quán),啟用后點擊WMS發(fā)布點ACL授權(quán)屬性,添加WMSAdmin賬戶,并授予該賬戶讀取與寫入權(quán)限。
(5)遠程共享緩沖配置。停止WMS(Windows Media Service)服務(wù)
用記事本打開%SystemRoot%\System32\windows media\server目錄下的ServerNamespace.xml文件,找到node name=“WMS文件數(shù)據(jù)源”
在
(6)數(shù)據(jù)庫服務(wù)器。共享存儲媒體文件的文件夾、并在目錄安全性中添加WMSAdmin用戶讀取權(quán)限。
4.使用Windows Media編碼器轉(zhuǎn)換媒體
(1)轉(zhuǎn)換單個媒體。在制作服務(wù)器中運行Windows Media編碼器,在向?qū)е羞x擇要轉(zhuǎn)換的源文件,并選擇輸出的目的文件,目的文件應(yīng)指向媒體存儲服務(wù)器中的共享目錄。再選擇媒體的分發(fā)方式為:Windows Media 服務(wù)器(流式處理),再選擇編碼比特率,例如,548Kbps,填寫文件信息,并取消“完成后轉(zhuǎn)換”選項,在會話屬性中,修改輸出選項,如果轉(zhuǎn)換后需保存為WMV文件,啟用“存檔到文件”;如果需要向廣播服務(wù)器傳遞轉(zhuǎn)換后媒體,啟用“自編碼拉傳遞”。如果選擇了“向服務(wù)器推傳遞”,即只支持單播發(fā)布點。設(shè)置完成后點擊“應(yīng)用”,最后在工具欄中點擊“開始編碼”,編碼器開始轉(zhuǎn)換文件同時廣播服務(wù)器輸出媒體流。
(2)轉(zhuǎn)換多個媒體。在制作服務(wù)器中運行Windows Media編碼器,取消向?qū)?,點擊“新建會話”進入會話的屬性,添加多個源,選擇文件,并定義各個源的之間的動作。如果媒體內(nèi)容需要不斷地重復(fù)廣播,則最后一個源的結(jié)束動作應(yīng)選擇“滾動到第一個源”,如果只做一次性轉(zhuǎn)換,則最后一個源的結(jié)束動作選擇“停止”。輸出設(shè)置可以選擇保存到文件,也可以選擇自編碼器拉傳遞。再設(shè)置壓縮參數(shù),例如,548Kbps,設(shè)置完成后點擊“應(yīng)用”,最后在工具欄中點擊“開始編碼”,編碼器開始轉(zhuǎn)換文件同時廣播服務(wù)器輸出媒體流。
5.點播與多播的發(fā)布點
(1)點播發(fā)布點
①打開WMS(windows Media Service)控制臺,在點播服務(wù)器添加發(fā)布點。
①指定發(fā)布點名稱、選擇內(nèi)容類型,如果要發(fā)布一組媒體文件,則選擇播入列表,接著點擊“下一步”按鈕。
③選擇發(fā)布點類型為“點播發(fā)布點”,點擊“下一步”按鈕。
④新建播放列表,也可以使用編輯好的播放列表,接著根據(jù)向?qū)爻牲c播發(fā)布點的創(chuàng)建,啟動發(fā)布點。
⑤客戶端啟動Windows Media Player打開mms://URL/發(fā)布點名稱,即可以觀看該發(fā)布點的內(nèi)容。
⑥停止發(fā)布點,即點擊“拒絕連接”。
(2)廣播發(fā)布點
①在廣播服務(wù)器新建一個發(fā)布點,如果名稱為“/”,則為默認的站點。
②然后選擇傳輸內(nèi)容的類型,選擇“編碼器(實況流)”,點擊“下一步”按鈕。
③在選擇之前需確定編碼器已經(jīng)開始編碼,選擇發(fā)布點類型為“廣播發(fā)布點”,點擊“下一步”按鈕。
④點擊“多播”選項,點擊“下一步”按鈕。
⑤輸入編碼器的IP和端口,這里輸入制作服務(wù)器的IP地址和端口號,例如,http://192.168.1.50∶8080。
⑥這里系統(tǒng)顯示多播公告向?qū)Вc擊“下一步”按鈕,根據(jù)提示運行多播向?qū)А?/p>
⑦點擊創(chuàng)建多播信息文件.nsc和公告文件.asx,點擊自動創(chuàng)建Web頁,點擊“下一步”按鈕。
⑧選擇檢索流格式方式為“自動從我的編碼器檢索流格式”,點擊“下一步”按鈕。
⑨定義公告文件的名稱和位置,例如:
多播信息文件(.nsc)名:c:\inetpub\wwwroot\pub.nsc
公告文件(.asx)名:c:\inetpub\wwwroot\pub.asx
帶有嵌入的播放機的網(wǎng)頁(.htm):c:\inetpub\wwwroot\pub.htm。
⑩定義客戶端的訪問方式。
選擇Web服務(wù)器選項,并輸入:http://192.168.1.49/pub.nsc,即廣播服務(wù)器的IP站點地址。
B11編輯公告元數(shù)據(jù),完成廣播發(fā)布點的創(chuàng)建。
B12??蛻舳送ㄟ^瀏覽器訪問http://192.168.1.49/pub.htm,可以啟動Windows Media Player打開http://10.249.61.49/pub.nsc觀看廣播內(nèi)容。
四、結(jié)束語
本文的目的是給出一個利用Windows Media Service設(shè)計和實現(xiàn)流媒體基礎(chǔ)平臺的一個實例,相信對構(gòu)建網(wǎng)絡(luò)環(huán)境下的流媒體平臺具有一定的參考意義。在設(shè)計與實現(xiàn)了流媒體的基礎(chǔ)平臺后,可以輕松地在現(xiàn)有基礎(chǔ)平臺上進行擴展開發(fā),例如,針對上文的基礎(chǔ)平臺,結(jié)合SQL2005數(shù)據(jù)庫平臺和Windows Media Service SDK可以開發(fā)出一套可授權(quán)性、交互性更強的流媒體應(yīng)用系統(tǒng)。
參考文獻:
[1]王志強.《計算機網(wǎng)絡(luò)與多媒體教學(xué)》.北京電子工業(yè)出版社,2002.
[2]楊輝華.《多媒體技術(shù)》.科技出版社,2002年9月.
(作者單位:廣東汕頭市第二技工學(xué)校)