999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

IPTV影音服務之設計與實作

2013-04-12 00:00:00黃圣凱李孟晃
現代電子技術 2013年8期

摘 要: 由于數位化及互動化的需求,IP技術也自然導入到 TV的領域,演變成所謂 IPTV服務。視訊資料需具有實時性及高帶寬的需求,所以各國在發展寬帶網路的過程,都把IPTV服務的成功視為重要技術的突破。影音服務的豐富度及展現性是IPTV產業成功的重要因素,所以以串流影音區段播放、前臺頁面廣播消息偵測、封鎖特定IP使用者及限制最大上線人數、影片播放狀態偵測等技術,以實踐影音內容快速重組機制以呈現特定主題之影音服務,影音及視訊強制廣播功能,以及在線人數及帶寬有效掌握等影音服務。整體系統是架構在Media Service 9, Microsoft Visual Studio 2008, SQL Server 2000等環境開發。

關鍵詞: IPTV; SMIL; 時序數據庫; 影音控制; 多媒體隨選

中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2013)08?0079?05

1 研究動機與目的

由于數位化及互動化的需求,IP技術自然而然地導入到 TV的領域,演變成所謂的 IPTV[1]。由于視訊資料需具有實時性(real?time)及高帶寬的需求,所以各國在發展寬帶網路的過程,莫不把IPTV服務的成功視為重要的技術突破。臺灣的中華電信在2003年10月正式宣告MOD(Multimedia on Demand)的服務,歷經近九年的時間,目前(截至2012年4月底)已突破百萬用戶的規模;有線電信業者也在許多區域進行IPTV的服務測試,這些都有助于將視訊服務的對象,由傳統TV族群,擴及到計算機網路族群。

影音服務的豐富度及展現性,是IPTV產業成功的重要因素。因此本文發展了串流影音區段播放、前臺頁面廣播消息偵測、封鎖特定IP使用者及限制最大上線人數、影片播放狀態偵測等技術,讓內容提供商在數字版權的不可重制性及破壞性的前提下[2],將影音內容快速重組以呈現特定主題之影音服務;除了傳統的點播服務外,亦能提供影音及視頻強制廣播功能;同時又能有效掌握在線人數及帶寬。本文以W3C定義的SMIL(Synchronized Multimedia Integration Language)技術來達到影音內容組合及分割的區段播放功能;由于.NET的Application及Session物件的變量存取,在前臺頁面判斷后臺的廣播消息;在后臺以IP位置及聯機數來達到封鎖特定IP及設定最大在線影音觀看人數;通過Windows Media Player之播放屬性,來判斷前臺影音目前的播放狀態,達到影音的播放控制。

整體系統是在架構在Windows Server 2003,結合了Media Service 9, Microsoft Visual Studio 2008, SQL Server 2000等開發環境。經測試,系統確能有效達成上述之功能,使IPTV的影音服務更具彈性及豐富度。

2 文獻探討

2.1 微軟開發環境

MMS(Microsoft Media Server)為一種串流媒體傳送的通信協議,若用戶在任何計算機的Windows Media Player中開啟一個URL以連接影音內容,則必須使用MMS協議引用該串流。微軟Windows Media Services指定某個文件夾為影片目錄來源,以作為影音服務器設定MMS的發行端點。由于播放來源可能是一個影片檔案或是播放列表,因此可以設定2個MMS發行端點,讓其中一個目錄文件夾專門存放完整的影片檔案;另一個則存放影片播放列表。SMIL為一種XML語言[3] ,而wsx (WCF service extension)是微軟Media Services特有的文件格式,為一種 XML 檔,可以使用SMIL定義播放列表中的內容,以及播放列表應有的行為表現。wsx 文件支持各種項目和屬性(Attribute),以加強對媒體播放的控制,而不只是單純地作播放視頻。wsx檔案必須存放在Windows Media Service專屬的playlist目錄夾,并且利用語法clipBegin及clipEnd將影片做區段播放[4?5]。

在微軟ASP.NET的開發環境下,可以使用Application及Session物件,在同一個Web網站間傳遞和保存不同用戶端的資料。同一個Web應用程序和不同用戶端的數據傳遞和保存,可以去存取Application變量,例如:在線人數統計、網站瀏覽次數。同一個Web應用程序和相同用戶端的數據傳遞和保存,可以去存取自己專屬的Session變量,例如:使用者個人資料及設定。Global.asax檔案定義了Application或Session物件起始或結束時需要執行的動作,以響應Application或Session的事件[6]。ActiveX是微軟Component Object Model的技術之一,可以在Web網頁中插入多媒體效果、并產生互動及執行復雜程序。ActiveX提供了許多ActiveX控件(ActiveX controls),微軟Windows的應用軟件就利用ActiveX將這些應用軟件的某些功能封裝成ActiveX控件,使用內嵌方式嵌入到其他的應用程序。Windows Media Player是以Object元素內嵌在Web網頁。object元素中包含param元素,可以指定Windows Media Player 的ActiveX控件、操作按鈕,以及其他內容。Windows Media Player 9 Series SDK定義了許多ActiveX控件的屬性(Property)、事件(Event)和方法(Method)。JavaScript可以控制這些屬性、事件和方法。與串流播放有直接關系的屬性為PlayState,其值可以代表播放器運作的情況。例如,playState的值為1代表影片狀態為停止;值為2代表影片狀態為暫停;值為3代表影片狀態為播放。在要引用此屬性時,必須要先知道網頁中Windows Media Player物件的id名稱,例如id為MPlyr的話,語法MPlyr. playState就可以得知目前播放器播放之狀況。

2.2 Smart?iTV系統

Smart?iTV系統為本研究室與臺灣夢工場科技及中華電信MOD合作8年的開發平臺。Smart?iTV是一個IPTV影音播放平臺,影音服務的相關內容是由管理員先在后臺管理系統,將文字、縮圖及影音的meta?data(影片名稱、影片來源、主題類別、影片描述、提供者)等數據建立于數據庫中。前臺服務頁面再從數據庫中讀取這些信息,將內容呈現給觀眾[7?10]。系統是架構在Windows Server 2003,結合了Media Service 9, Microsoft Visual Studio 2008, SQL Server 2000等環境來開發。

3 使用情境及系統架構

3.1 影音內容快速重組機制以呈現特定主題之影音服務

本文的時序數據庫(Time Code Database),紀錄不同影音內容的組合時序及分割時序之meta?data。所以影音服務的播放對象,不是影音內容本身,而是由時序數據庫的meta?data所組合的SMIL檔案。以總長120 min的球類介紹影片(檔名為Sport.wmv),其中包含6個不同的主題段落:0~20 min為籃球的歷史發展,20~40 min為籃球的比賽規則;40~60 min為排球的歷史發展,60~80 min為排球的比賽規則;80~100 min為桌球的歷史發展,100~120 min為桌球的比賽規則。

由于影片都是節目內容商所制作提供,所以學校外購的影片有時候很難符合各老師的教學需求。比如有A,B,C三位體育老師,A老師想規劃的課程單元是籃球介紹,B老師想規劃的是各球類的比賽規則,而C老師想規劃的則是各球類的發展歷史。所以上述的Sport.wmv就會被這3位老師的課程規劃需求而被以時間區段形成的meta?data來作區隔。課程規劃單元及時間區段則如圖1所示。三位體育老師想播放的區段中,有部分是重迭的。若現在按照傳統方式使用影音軟件剪輯,不但耗時且有影片著作權等問題。加上會有多個影片檔案的產生,對于片段的重復,更會浪費系統服務器上的儲存空間[9]。

三位體育老師的不同課程規劃,可以在Smart?iTV后臺管理頁面(如圖2中的步驟1所示),將Sport.wmv這部影片依照各自的課程規劃,設定不同的區段播放時間(如圖2中的步驟2),這些meta?data會記錄在Time Code Database中(如圖2中的步驟3)。學生只要聯機至前臺服務頁面,透過微軟Media Service的串流功能,自動從Time Code Database中讀取時間段落信息,就可以呈現不同課程單元之影音區段給學生點播(如圖2中的步驟4)。同樣的Sport.wmv影音檔,卻可同時提供3種課程單元,對課程規劃的彈性及豐富度,確實有很大的幫助。

以上位體育老師將Sport.wmv依照自己的課程規劃,分割成不同段落,這些段落的開始時間及結束時間是記錄于Time Code Database中的。如表1所示,其中s1是老師A設定;s2,s3,s4是老師B所設定;s5,s6,s7是老師C所設定。由于老師C只想在前臺服務頁面呈現一個各球類歷史發展的按鈕選項, 因此s5,s6,s7為此選項相對應之區段影音。

表1 3位老師規劃不同時間區段需求紀錄于

Time Code Database,影音檔名同為Sport.wmv

當3位老師于Smart?iTV后臺管理頁面設定完每一個影音區段后,前臺服務頁面就會自動產生一個相對應之點播選項;若老師想要使用一個點播選項包含所有影音段的話,這時可以將所需要之影音段落全部寫入到wsx的程序代碼中。以老師C規劃之各球類歷史發展課程為例,前臺服務頁面產生之點播選項只有一個,其wsx的程序代碼如圖3所示。

3.2 影音及實時視訊強制廣播功能

當系統管理員想要主動將影音信息實時讓觀眾收看,就必須使用廣播。廣播方式有2類,一類為影音檔案廣播;另一類為實時視頻廣播。假設學校每間教室都有裝設Smart?iTV系統,平常提供師生點播影音內容。若今天學校想要做防災影片倡導,點播方式無法保證每位師生都會去收看;因此將不同類的災害,如:地震、火災等,制作成一個影音檔案,就可通過Smart?iTV后臺管理頁面,主動將影音檔案實時廣播。若今天因為臺風因素,學校臨時接獲通知要向全校師生宣布停班停課,便可以在后臺管理頁面,通過攝影機,就可以將此信息以實時視頻廣播,快速讓全校師生知道。當廣播發生時,前臺頁面會暫停目前的服務,強制導入后臺廣播消息;當廣播結束時,會自動導回原來的服務畫面。當后臺無廣播事件發生時,前臺頁面正常提供點播服務,如圖4所示;當要立即進行影音檔案或live視頻廣播,學校可以在后臺管理頁面點選開始廣播。這時無論前臺服務頁面的動作如何,都會被暫時中斷并強制收看廣播消息,如圖5所示。此功能有別于點播方式,學校可以更實時主動地將影片播放給師生觀看。影音檔案本身是一個wsx檔案,存放路徑和點播的影音檔案一樣,都是放在playlist文件夾,通過MMS串流協議讀取播放;而live視訊廣播,需要外接一部攝影機,通過Windows Media Encoder進行編碼,Smart?iTV再讀取此串流影音的發行端點進行播放。

3.3 在線人數及帶寬有效掌握

影音控制的目的,在于掌握服務器的影音帶寬使用,并且可以設定在線最大聯機數,降低服務器帶寬的負擔。系統管理員可以在后臺頁面查看所有在線用戶的IP位置及設定最大在線影音觀看人數。若發現有可疑的IP位置,可能會危害到系統本身效能,此時可以針對這些IP位置進行封鎖動作,而被封鎖的IP位置,就無法于前臺頁面播放影片。對于影音帶寬的控制,主要是利用Application物件、Session物件來取得目前實時的用戶信息,監控所有在線正在播放影音的使用者,同時也可以中斷使用者影音的播放。若系統管理員在后臺管理頁面將IP位置為120.96.183.88的使用者加以封鎖,并設定最大影音觀看人數為300人。儲存完成后,設定值會傳送至前臺服務頁面。當前臺服務頁面有觀眾要點播影音時,頁面會檢查是否有被封鎖的IP位置及影音觀看人數是否超過設定值。如圖6所示,第301位及IP位置為120.96.183.88的觀眾,就無法點播影音。

最大影音觀看人數示意圖

4 系統實作技術

4.1 影音內容快速重組機制以呈現特定主題之影音服務

為了呈現不同教學單元的需求,于Smart?iTV前臺服務頁面中,選單會依照3位老師的規劃出現籃球介紹、各球類比賽規則介紹及各球類歷史發展介紹的頁面。以體育老師C為例,老師C將不同的影音區段合成同一個點播選項。當觀賞者點選這些選項時,該影音段落就可以直接播放。

圖7雖然是單選主題,影片其實都是來自同一個檔案的3個不同的時間區段(見表1及圖3),此3個時間區段對應的開始播放時間及結束播放時間分別記錄在Time Code Database中,但前臺服務頁面則以單一wsx播放列表組合再一起(見圖3),當用戶點播時,則依序連續播放,如同播放單一影音服務一般。

后臺管理頁面設定的這些影音相關信息,都會寫入到Smart?iTV的Time Code Database中,并自動產生wsx檔案。當觀眾從前臺服務頁面播放影音時,系統會導入到鑲嵌在Web網頁中的Windows Media Player,并透過MMS串流協議連結相對應的wsx檔,藉由wsx檔案取得影音區段播放時間,開始做播放。以老師C的課程規劃頁面為例,如圖8所示。

4.2 影音及實時視訊強制廣播功能

前臺服務頁面每3 s就會自動偵測一次后臺是否有廣播事件發生。當影音或live視頻廣播事件發生時,前臺服務頁面會暫停所有動作,并強制導入到廣播頁面。廣播頁面導入后,前臺頁面中嵌入的Windows Media Player會依據廣播類型的不同,讓MMS串流協議讀取的檔案也不同。(影音廣播是讀取wsx檔案;實時視頻廣播是讀取一串URL)。無論使用何種廣播方式,此時觀眾皆無法再進行任何指令操作。廣播影音或實時視頻結束后,前臺頁面會自動導回原來的點播畫面,讓觀眾繼續使用。若要使用影音檔案廣播,可以在后臺管理頁面選擇廣播清單后,按下開始廣播按鈕。若要使用實時視頻廣播,可以將影音編碼的發行端點,設定直播網址字段,如圖9所示。前臺服務頁面一旦偵測到有廣播消息,任何動作會被暫時中斷,并強制導入廣播影音內容。

當在后臺按下開始廣播按鈕后,后臺broadcast_control.aspx頁面會改變廣播狀態為playing,儲存在Session物件的BroadStatus變量中;并將廣播消息如影音廣播、實時視頻廣播的文件名,儲存在Application物件的broad_data變量中(對于影音廣播來講,例如:aaa.wmv;對于實時視頻廣播,例如:http://120.96.183.35:8080)。前臺Default.aspx頁面每3 s就會使用JavaScript呼叫一次broadcast_check.aspx頁面(broadcast_check.aspx是以iframe方式嵌入在Default.aspx頁面),該頁面會從Session物件中讀取廣播狀態,以及從Application物件中讀取廣播的文件名。若有廣播事件發生,則會導入至前臺msplayer.aspx播放頁面,并從 Application變量值取得廣播的文件名,透過微軟MMS串流協議開始播放。如圖10所示。

廣播影片播放完畢后,系統自行導回至點播時的畫面。前臺播放器msplayer.aspx頁面的JavaScript每1 s會呼叫一次media_time函式,去檢查Windows Media Player的playState屬性。如果playState等于0的話,代表影音廣播或實時視頻廣播停止,就自動回到用戶原來的畫面。程序代碼如圖11所示。

4.3 在線人數及帶寬有效掌握

當使用者上線時,若超過后臺設定之最大在線人數,系統會顯示已超過最大聯機數的提示窗口,用戶即無法再做影音播放;當使用者正在觀賞影音,若使用的IP位置已被后臺封鎖,系統會顯示此IP位置已被封鎖的提示窗口,影音自動停止播放。當管理員將最大聯機數的值設定完成后,此值會儲存在后臺的media_control.aspx頁面的Session物件的max_user變量中;等到前臺msplayer.aspx播放頁面時,會從Session取得變量值,判斷其值是否超過最大聯機數。此外,管理員要中斷某特定IP的使用者的影音播放,該IP將設定在Application物件的User_IP變量;而前臺的msplayer.aspx頁面的JavaScript每1 s執行media_check.aspx頁面(media_check.aspx是以iframe方式嵌入msplayer頁面),如圖12所示。

media_check.aspx頁面中使用JavaScript程序,讓在線用戶的IP位置與后臺封鎖的IP位置做比對。若相符,mediaObj變量會取得前臺播放器id, 并讓播放器停止播放,如圖13所示。

是否被封鎖之程序代碼

5 結 語

本文以串流影音區段播放、前臺頁面廣播消息偵測、封鎖特定IP使用者及限制最大上線人數、影片播放狀態偵測等技術,以實踐影音內容快速重組機制以呈現特定主題之影音服務;影音及視頻強制廣播功能,以及在線人數及帶寬有效掌握等影音服務。整體系統經測試,系統確能有效達成上述之功能,使IPTV的影音服務更具彈性及豐富度。

參考文獻

[1] Anon. Research on China's IPTV industry [M]. [S.l.]: [s.n.], 2006.

[2] 國家版權局.中華人民共和國著作權法最新[EB/OL].[2001?10?27].http://www.edu.cn/20011105/3008137.shtml.

[3] 吳建興.下一代網頁影音同步技術:SMIL[J].資策會信息尖兵,2001(7):9?11.

[4] 葉耀明.SMIL網絡多媒體內容技術[EB/OL].[2008?09?11].數字電視與廣播教學推動聯盟中心.

[5] Anon. Synchronized multimedia integration language [EB/OL]. [2001?08?07]. http://www.w3.org/TR/SMIL.

[6] Microsoft Developer Network. Global.asax [EB/OL]. [2008?03?27]. http://msdn.microsoft.com.

[7] 李孟晃,黃奕誠,賴學淵.串流影音區段播放的架構與實作[R].臺北:實踐大學信息科技與管理學系專題計劃報告,2012.

[8] 李孟晃,陳思妤.PC與IPTV影音服務選單之數字匯流技術開發[J].現代電子技術,2010,33(6):94?98.

[9] 孫浩然.IPTV之nPVR之設計與研發[D].臺北:實踐大學,2010.

[10] 黃圣凱,李孟晃.基于SMIL技術之IPTV影音服務之研究與建置[C].臺北:第18屆海峽兩岸信息管理發展與策略學術研討會論文,2012.

主站蜘蛛池模板: 欧美激情综合一区二区| 久久狠狠色噜噜狠狠狠狠97视色| 东京热一区二区三区无码视频| 国产高潮流白浆视频| 老汉色老汉首页a亚洲| 欧美日韩激情在线| 精品五夜婷香蕉国产线看观看| 日韩在线观看网站| 久久久噜噜噜| 91精品免费久久久| 亚洲欧美自拍中文| 亚洲第一中文字幕| 九九这里只有精品视频| 精品无码国产自产野外拍在线| 欧美三级日韩三级| 日本免费精品| 东京热一区二区三区无码视频| 尤物精品国产福利网站| 精品伊人久久久久7777人| 国产精品视频猛进猛出| 亚洲AⅤ永久无码精品毛片| 国产精品久久久久久影院| 国产一级毛片网站| 四虎国产在线观看| jizz亚洲高清在线观看| 五月婷婷丁香综合| 国产永久免费视频m3u8| 亚洲一欧洲中文字幕在线 | 国内自拍久第一页| 99精品福利视频| 91精选国产大片| 在线观看欧美国产| 青青草国产免费国产| 国产噜噜噜| 精品少妇三级亚洲| 久久a毛片| 亚洲另类色| 亚洲天堂.com| 激情無極限的亚洲一区免费| 成人福利在线视频免费观看| 精品亚洲麻豆1区2区3区| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产丝袜第一页| 国产成人免费手机在线观看视频 | 区国产精品搜索视频| 国产三级国产精品国产普男人| a级毛片在线免费| 国产青榴视频| 操国产美女| 中文字幕 欧美日韩| 操美女免费网站| 在线看片中文字幕| 97国产在线视频| 另类综合视频| 中文无码精品A∨在线观看不卡 | 日韩国产高清无码| 特级aaaaaaaaa毛片免费视频| 色综合色国产热无码一| 中文字幕无码中文字幕有码在线| 日韩第一页在线| 亚洲成综合人影院在院播放| 中国特黄美女一级视频| 国产视频你懂得| 国产精品私拍在线爆乳| 亚洲天堂区| 久久无码免费束人妻| 欧美一级在线| 欧美成人免费午夜全| 中文字幕佐山爱一区二区免费| 欧美日韩资源| 国产综合欧美| 久久免费成人| 青草精品视频| 国产白浆视频| 亚洲视频欧美不卡| 亚洲精品片911| 国产亚洲男人的天堂在线观看| 国产色婷婷| 精品精品国产高清A毛片| 999国产精品永久免费视频精品久久 | 色偷偷av男人的天堂不卡| 亚洲视频免|