使用Microsoft Media Service实现网络影音多媒体应用系列第三篇---技术要点
技術(shù)要點(diǎn)解說(shuō):
l? 對(duì)Media Service的引用
Imports Microsoft.WindowsMediaServices.Interop
Imports System.Runtime.InteropServices
引入以上兩個(gè)命名空間以后,就可以看到WMSServer這個(gè)類,它就是指向Media Service的類。Activator.CreateInstance(tServerType)獲取的就是當(dāng)前開發(fā)服務(wù)器上的Media Service的實(shí)例。
?
l? PublishPoint播放點(diǎn)
所謂播放點(diǎn),就是我們?cè)贛edia Service上可以看到的點(diǎn)播,直播與廣播節(jié)目。以上三種影音服務(wù)方式的特點(diǎn)及異同,后面再討論。
我們通過(guò)上一步驟獲取了當(dāng)前服務(wù)器上Media Service實(shí)例之后,就可以在它的屬性中找到PublishPoints屬性,引用的就是已經(jīng)存在的播放點(diǎn)集合。
播放點(diǎn)對(duì)應(yīng)的類,包括IWMSPublishingPoint,IWMSPublishingPoint2這兩個(gè),我們通常只需要使用前一個(gè),后一個(gè)如何使用,可以參閱SDK說(shuō)明。
使用如下語(yǔ)法來(lái)添加播放點(diǎn):
PublishingPoints.Add(PubName,WMS_PUBLISHING_POINT_CATEGORY.WMS_PUBLISHING_POINT_ON_DEMAND, MediaPath)
PublishingPoints.Remove()可以移除一個(gè)已經(jīng)存在的播放點(diǎn)
播放點(diǎn)類型的枚舉:
WMS_PUBLISHING_POINT_CATEGORY.WMS_PUBLISHING_POINT_ON_DEMAND
WMS_PUBLISHING_POINT_CATEGORY.WMS_PUBLISHING_POINT_ON_BROADCAST
?
l? 播放列表PlayList概念
所謂播放列表,就是把多個(gè)媒體檔或播放列表組合嵌套,以一定的順序,由一個(gè)播放點(diǎn)來(lái)依次播出。
一個(gè)播放列表,實(shí)際就是一個(gè)XML檔,我們這里介紹的播放列表是.wsx,形式如下所示:
<?wsx version = '1.0'?>
<smil>
??? <media src="c:\media\自然百科\Butterfly.wmv">
??????? <clientdata title="myPlaylist" author="Liucy"/>
??? </media>
</smil>
除了.wsx播放列表以外,還有一種播放列表,就是.asx,這種播放列表是一種客戶端播放列表,形式如下:
<ASX Version = "3.0">
<Entry> <Ref href = "http://server/song1.asf" /> </Entry>
<Entry> <Ref href = "http://server/song2.asf" /> </Entry>
<Entry> <Ref href = "http://server/song3.asf" /> </Entry>
<Entry> <Ref href = "http://server/song4.asf" /> </Entry>
</ASX>
這種播放列表,是隨頁(yè)面加載到客戶端以后,由客戶端播放插件或完整播放器來(lái)使用。從這一點(diǎn)來(lái)看.wsx就是服務(wù)器端播放列表。
?
備注:關(guān)于播放列表的具體語(yǔ)法,請(qǐng)參閱Media Service SDK
?
l? 播放列表如何在開發(fā)中使用:
Imports interop_msxml
必須引入以上命名空間,播放列表相關(guān)類,如下:
Dim Playlist As IXMLDOMDocument
Dim ElementSmil As IXMLDOMElement
Dim ElementMedia As IXMLDOMElement
Dim ElementClientData As IXMLDOMElement
Dim ProcInst As IXMLDOMNode
Dim Root As IXMLDOMNode
Dim Node As IXMLDOMNode
?
新建播放列表:
MediaService實(shí)例.CreatePlaylist()
播放列表實(shí)例創(chuàng)建以后,我們就可以把它作為一個(gè)普通的XML檔一樣來(lái)操作。
播放列表可以像一個(gè)普通媒體檔一樣作為播放點(diǎn)的節(jié)目來(lái)源。
l? 關(guān)于播放點(diǎn)的節(jié)目來(lái)源分類:
轉(zhuǎn)載于:https://www.cnblogs.com/liucy1898/archive/2010/05/20/1740039.html
總結(jié)
以上是生活随笔為你收集整理的使用Microsoft Media Service实现网络影音多媒体应用系列第三篇---技术要点的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python进阶(十七)正则json(上
- 下一篇: (原创)浅谈任意文件下载漏洞的利用