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

基于ROKU機(jī)頂盒的IPTV接入應(yīng)用開發(fā)

2017-01-20 10:00:06翟關(guān)貿(mào)榮偉董志豪楊三青
軟件 2016年4期
關(guān)鍵詞:用戶信息系統(tǒng)

翟關(guān)貿(mào) 榮偉 董志豪 楊三青

摘要:本文基于Roku流媒體播放器,設(shè)計(jì)開發(fā)了IPTV接入應(yīng)用。分析了IPTV的體系架構(gòu),和業(yè)務(wù)流程;詳細(xì)介紹了基于Roku的IPTV應(yīng)用系統(tǒng)的接入應(yīng)用開發(fā):包括Roku與web服務(wù)器的數(shù)據(jù)通信,數(shù)據(jù)解析,Roku開發(fā)平臺(tái)及編程語言BrightScript的介紹,Roku程序界面的設(shè)計(jì),測試了Roku程序的可操作性,業(yè)務(wù)能力的可操作性,基本直播點(diǎn)播功能的可操作性,給出了該系統(tǒng)的運(yùn)行結(jié)果,結(jié)果顯示:Roku能夠?qū)崿F(xiàn)IPTV系統(tǒng)在客戶端設(shè)計(jì)應(yīng)滿足的功能,Roku程序界面友好,滿足系統(tǒng)所需功能,符合預(yù)期。

關(guān)鍵詞:通信與信息工程;Roku;IPTV;BrightScript;XML數(shù)據(jù)解析

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.3969/j.issn.1003-6970.2016.04.023

0 引言

近年來,隨著網(wǎng)絡(luò)通信、普適計(jì)算和多媒體技術(shù)的不斷發(fā)展,視頻交互式多媒體業(yè)務(wù)進(jìn)入到人們生活的諸多方面,帶來巨大的市場商機(jī)和產(chǎn)業(yè)價(jià)值,并將成為未來通信業(yè)務(wù)新的增長點(diǎn)。IPTV作為典型的交互式多媒體業(yè)務(wù),將廣電業(yè)、電信業(yè)和計(jì)算機(jī)業(yè)3個(gè)領(lǐng)域技術(shù)結(jié)合在一起,以配置機(jī)頂盒的家用電視機(jī)或一體機(jī)或計(jì)算機(jī)為收視終端,向家庭用戶提供包括電視節(jié)目在內(nèi)的多種交互式數(shù)字媒體服務(wù)。

IPTV是一種包含運(yùn)營支撐層、業(yè)務(wù)應(yīng)用層、承載層和用戶終端在內(nèi)的集多個(gè)層面為一體的綜合系統(tǒng),提供包括視頻點(diǎn)播、個(gè)人視頻錄制、電子節(jié)目指南,電子郵件及Internet訪問、電視商務(wù)、即時(shí)信息等服務(wù)內(nèi)容,是對(duì)傳統(tǒng)電視內(nèi)容服務(wù)的重大突破。這些內(nèi)容服務(wù)的實(shí)現(xiàn)又與視音頻編解碼技術(shù)、內(nèi)容分發(fā)網(wǎng)絡(luò)技術(shù)、內(nèi)容分發(fā)技網(wǎng)絡(luò)技術(shù)、服務(wù)質(zhì)量技術(shù)、流媒體技術(shù)、數(shù)字版權(quán)保護(hù)技術(shù)等幾項(xiàng)技術(shù)密不可分。

我們選定國外廣泛使用的Roku流媒體播放器開發(fā)用戶終端程序,使用Linux操作系統(tǒng)提供流媒體服務(wù),本論文的目的就是設(shè)計(jì)出基于Roku的IPTV實(shí)驗(yàn)平臺(tái),著重陳述IPTV系統(tǒng)用戶終端Roku和流媒體服務(wù)的開發(fā)工作。

1 IPTV系統(tǒng)分析

1.1 系統(tǒng)架構(gòu)

該IPTV系統(tǒng)包括視頻源系統(tǒng)、視頻服務(wù)器、寬帶接入網(wǎng)、用戶端設(shè)備和業(yè)務(wù)管理系統(tǒng)等,主要功能包括視頻采集、流媒體服務(wù)、寬帶傳輸、客戶端應(yīng)用呈現(xiàn)以及用戶管理與鑒權(quán)、繳費(fèi)、內(nèi)容管理等,其系統(tǒng)框圖如圖1所示。

首先,視頻源系統(tǒng)通過電視卡、錄像機(jī)等源采集視頻內(nèi)容,經(jīng)過視頻服務(wù)器分發(fā)到各用戶,各注冊且生效的用戶從WEB服務(wù)器獲取電子節(jié)目單,從而獲取該用戶所有的內(nèi)容。而用戶信息通過業(yè)務(wù)管理系統(tǒng)進(jìn)行管理,為用戶調(diào)配不同的權(quán)限。

1.2 直播以及點(diǎn)播業(yè)務(wù)流程的實(shí)現(xiàn)

直播業(yè)務(wù)的流程為:首先,用戶通過Roku機(jī)頂盒請求直播,點(diǎn)播頻道服務(wù),EPG向業(yè)務(wù)管理系統(tǒng)發(fā)出請求信息(用戶SN,頻道ID等);業(yè)務(wù)管理系統(tǒng)收到請求后,判斷該用戶是否訂購了該頻道,并且判斷此頻道是否受限,并且將相關(guān)信息反回給Roku機(jī)頂盒,機(jī)頂盒通過XML技術(shù)解析之后看是否已經(jīng)訂購該頻道;如果用戶可以收看該頻道,EPG向CDN發(fā)出頻道URL重定向請求,CDN根據(jù)全局負(fù)載均衡情況重定向頻道的URL,并且根據(jù)事先約定的加密算法生成授權(quán)碼,并向機(jī)頂盒返回可以定向的URL,如果用戶沒有訂購該頻道,則提醒用戶轉(zhuǎn)入訂購流程;EPG接收到頻道的URL后,然后返回給Roku機(jī)頂盒,Roku機(jī)頂盒根據(jù)URL請求之后,加入組播頻道;組播控制點(diǎn)收到直播請求后,檢驗(yàn)URL的授權(quán)碼,如果為非法請求,則拒絕服務(wù),如果請求合法,則組播控制點(diǎn)向EPG發(fā)出相應(yīng)的狀態(tài)信息,EPG系統(tǒng)向業(yè)務(wù)管理系統(tǒng)發(fā)出啟動(dòng)使用信息;業(yè)務(wù)管理系統(tǒng)開始記錄用戶的信息,并且將結(jié)果返回給EPG;EPG向組播控制點(diǎn)發(fā)出使用通知信息,組播控制點(diǎn)向Roku機(jī)頂盒提供直播流,Roku機(jī)頂隔接收直播流并解碼,播放;當(dāng)用戶提出主動(dòng)退出時(shí),Roku機(jī)頂盒向組播控制點(diǎn)發(fā)出退出請求,組播控制點(diǎn)接收請求后,返回結(jié)束通知,EPG收到此通知后,將此請求轉(zhuǎn)發(fā)給業(yè)務(wù)管理系統(tǒng),業(yè)務(wù)管理系統(tǒng)根據(jù)請求中的相關(guān)信息寫入日志,并將結(jié)果返回給EPG;EPG將結(jié)果發(fā)給組播控制點(diǎn),直播,點(diǎn)播業(yè)務(wù)結(jié)束。直播及點(diǎn)播的流程圖如圖2所示。

2 Roku接入應(yīng)用設(shè)計(jì)及分析

2.1 開發(fā)環(huán)境及編程語言

2.1.1 Roku機(jī)頂盒系統(tǒng)架構(gòu)

本IPTV系統(tǒng)所選用的機(jī)頂盒設(shè)備為Roku 2 XS,該播放器采用ARM處理器,256Mb的RAM和Flash,提供豐富的接口。基于Linux2.6內(nèi)核,Roku使用自己的平臺(tái)RokuDVP softwarePlatform和自己的開發(fā)語言。圖3所示為Roku機(jī)頂盒系統(tǒng)架構(gòu)。

2.1.2 編程語言語言

在Roku平臺(tái)上進(jìn)行開發(fā)的語言為BrightScript,Roku BrightScipt是一種功能強(qiáng)大的腳本語言,因此在嵌入式設(shè)備上能夠很快和很便捷的進(jìn)行媒體和網(wǎng)絡(luò)應(yīng)用開發(fā),BrightScipt語言集成支持BrightScipt組件和這些組件的輕量級(jí)的庫。這種平臺(tái)的API開發(fā)都是通過調(diào)用BrightScipt的組件來運(yùn)行的。

BrightScipt腳本語言有以下特點(diǎn):

1.BrightScipt通過一個(gè)編譯器將代碼編譯為字節(jié)碼,每次當(dāng)腳本加載和運(yùn)行的時(shí)候就會(huì)進(jìn)行編譯,它不需要事先進(jìn)行單獨(dú)的編譯,而且編譯結(jié)果會(huì)保存在一個(gè)二進(jìn)制文件中,這種方式類似于JavaScript。

2.BrightScipt語句語法不像C結(jié)構(gòu)形式的,而是類似于Basic,Python或者像Ruby和Lua。BrightScipt對(duì)象和賦值的數(shù)據(jù)結(jié)構(gòu)體是通過關(guān)聯(lián)數(shù)組(AssociativeArrays)實(shí)現(xiàn)的,這種方式類似于JavaScfipt或者是Luau,BrightScipt支持動(dòng)態(tài)類型(類似于JavaScfipt),或聲明類型(類似于c或者Java),JavaScfipt使用“interfaces”和“Components'作為它的API,這又類似于“.Net”或“Java”。

3.BrightScript對(duì)于嵌入式設(shè)備來說是一個(gè)功能強(qiáng)大的優(yōu)化字節(jié)碼解釋腳本語言,在這種意義上,它是獨(dú)一無二的。例如BrightScript和BrightScriptComponent體系結(jié)構(gòu)100%都是通過C完成的,具有快速、高效和可移植性的特點(diǎn)。BrightScript廣泛使用“整數(shù)”類型的(因?yàn)楹芏嗲度胧教幚砥鳑]有浮點(diǎn)單位)。這是不同于JavaScript語言的因?yàn)槠鋽?shù)字總是—個(gè)浮點(diǎn)數(shù)。BrightScript數(shù)字只有在必要的時(shí)候才是浮點(diǎn)型的。

BrightScript作為“glue”連接底層組件為網(wǎng)絡(luò)連接,多媒體播放,UI Screen設(shè)計(jì)進(jìn)行的優(yōu)化,實(shí)現(xiàn)了以最小的程序員工作量達(dá)到用戶友好體驗(yàn)的應(yīng)用程序設(shè)計(jì)效果。

2.1.3 開發(fā)環(huán)境

Roku應(yīng)用程序的開發(fā)環(huán)境可集成在eelipse上,用戶只需下載并安裝DTLK(dynamic language toolkit)插件和brightscript插件,即可開始創(chuàng)建工程了。

2.2 客戶端架構(gòu)設(shè)計(jì)

對(duì)于Roku應(yīng)用,在功能上主要需要實(shí)現(xiàn):(1)用戶驗(yàn)證與列表獲取;(2)列表呈現(xiàn);(3)視頻播放。Roku程序的信息流程如圖4。

由于每個(gè)Roku設(shè)備都有對(duì)應(yīng)的唯一SN,因此,對(duì)于用戶驗(yàn)證只需要向web服務(wù)器通過Get請求提交自己的身份信息,web服務(wù)器在接收到Roku的請求和身份信息后將從數(shù)據(jù)庫中查找驗(yàn)證其身份是否合法,對(duì)于合法的用戶,web服務(wù)器將返回節(jié)目單。Roku接收到節(jié)目單后呈現(xiàn)節(jié)目列表,如果用戶選擇了某一個(gè)節(jié)目,Roku將通過這個(gè)節(jié)目的流媒體鏈接向流媒體服務(wù)器獲取并播放視頻。

2.3 Roku客戶端與Web服務(wù)器通信實(shí)現(xiàn)

2.3.1 基于XML-RPC的web通信

為了解決異構(gòu)系統(tǒng)之間的通信難題,在不同的系統(tǒng)中采用XML格式文本來交換數(shù)據(jù),文本基于HTTP協(xié)議傳輸,這樣不同的操作系統(tǒng),不同的平臺(tái)自己解析文本文件。文獻(xiàn)分析XML/Web Services技術(shù)在電子商務(wù)應(yīng)用中的優(yōu)勢,這里同樣適用于IPTV系統(tǒng)的數(shù)據(jù)傳輸。

XML被設(shè)計(jì)用來進(jìn)行結(jié)構(gòu)化數(shù)據(jù)、存儲(chǔ)以及傳輸數(shù)據(jù)信息,Web service可以被當(dāng)作是一個(gè)應(yīng)用程序,該程序向外界暴露出一個(gè)能夠通過Web方式進(jìn)行調(diào)用的API接口。Web Service通信有兩種常見的協(xié)議標(biāo)準(zhǔn)XML-RPC和SOAP,其中XML-RPC相對(duì)而言比較簡單,而SOAP比前者復(fù)雜很多,一般在要求系統(tǒng)穩(wěn)定、健壯、安全,并且交互過程復(fù)雜時(shí)才使用。XML-RPC是XMLRemote Procedure Calling的縮寫,它是Web Service的一種實(shí)現(xiàn)并且比WebServices簡單,是面向Internet環(huán)境的分布式處理標(biāo)準(zhǔn)。它通過利用HTTP協(xié)議傳輸XML數(shù)據(jù)來實(shí)現(xiàn)通信。它是一種遠(yuǎn)程調(diào)用機(jī)制,用于調(diào)用可能駐留在其他機(jī)器之上以及可能用其他語言編寫的過程。

RPC通信的流程是首先需要構(gòu)造一個(gè)RPC服務(wù)器端,用它來接收從RPC客戶端傳遞過來的使用XML封裝的請求,服務(wù)端接收請求并把處理結(jié)果通過XML的形式返回給RPC客戶端,客戶端分析XML,獲取客戶端需要的數(shù)據(jù)。

遠(yuǎn)程過程調(diào)用的流程:在客戶端請求方法,該方法和方法攜帶的參數(shù)以XML格式描述,包裝請求methodCall,其中有方法名(medthodName)、方法的參數(shù)(Params)該請求通過XML包裝以HTTP請求發(fā)送到WEB服務(wù)端,WEB服務(wù)執(zhí)行對(duì)應(yīng)的方法,以XML返回方法執(zhí)行的結(jié)果,通過HTTP傳回客戶端。方法響應(yīng)(methodResponse)、返回參數(shù)Params,返回值在String中。此處請求為rpc_server,參數(shù)為get;方法執(zhí)行返回結(jié)果為response data。

在客戶端解析出返回的xml格式的響應(yīng),然后,可以根據(jù)服務(wù)端與客戶端事先定義好的協(xié)議通信標(biāo)準(zhǔn),對(duì)返回的數(shù)據(jù)做相應(yīng)的處理與解析,這個(gè)解析過程通常為客戶端完成,解析完數(shù)據(jù),客戶端便獲得了對(duì)應(yīng)請求的數(shù)據(jù)信息。

2.3.2 Roku平臺(tái)的XML解析

BrightScript中的roXMLElement支持解析、生成,包含XML。并且將解析出來的元素放在roxmllist對(duì)象中。Roku的XML文件解析過程類似于DOM解析,解析過程如圖5所示:

2.4 程序流程圖與界面實(shí)現(xiàn)

2.4.1 流程圖

Roku客戶端軟程序的核心功能之一是聯(lián)網(wǎng)。客戶端與WEB服務(wù)器交互數(shù)據(jù)的基本流程是:檢測網(wǎng)絡(luò)是否可用,進(jìn)入用戶驗(yàn)證、獲取應(yīng)用電視節(jié)目分類列表、獲取具體分類下的應(yīng)用節(jié)目列表、應(yīng)用節(jié)目詳細(xì)介紹等功能。Roku應(yīng)用程序的播放程序流程圖見圖6。

2.4.2 Roku界面的實(shí)現(xiàn)

Roku程序?qū)嶋H實(shí)現(xiàn)是運(yùn)用BrightScript語言調(diào)用Roku的接口(即為對(duì)應(yīng)的component)產(chǎn)生屏幕界面和實(shí)現(xiàn)各種功能,具體怎么實(shí)現(xiàn)可以參考附錄,這里不再詳述。編程中需要的component有:

roPosterScreen:呈現(xiàn)功能列表;

roGridScreen:呈現(xiàn)視頻列表;

roDevicelnfo:獲取設(shè)備信息;

roUrlTransfer:在web server間傳輸節(jié)目單;

roXMLElement:解析節(jié)目單;

roVideoPlayer:播放視頻;

roTimeSpan:記錄時(shí)間。

實(shí)現(xiàn)的界面如圖7,8,9所示

3 結(jié)束語

本文首先對(duì)IPTV系統(tǒng)的架構(gòu)和業(yè)務(wù)流程做了分析,然后詳細(xì)介紹了基于Roku機(jī)頂盒的IPTV系統(tǒng)客戶端播放器的程序的開發(fā)。通過實(shí)驗(yàn),我們看到Roku應(yīng)用程序界面簡潔友好,操作直觀,視頻播放流暢,開發(fā)工具齊全,開發(fā)過程簡單,非常適合作為IPTV系統(tǒng)的接入應(yīng)用。

但由于Roku的主要市場在海外,國內(nèi)并沒有很多中文資料,這給國內(nèi)開發(fā)者提出了一些難度。并且,如果該系統(tǒng)要投入運(yùn)營,作為客戶端,還需要進(jìn)一步考慮界面的美觀性和用戶體驗(yàn)。

此項(xiàng)目涉及知識(shí)廣泛,包括BrightScript腳本語言的學(xué)習(xí),xml數(shù)據(jù)解析,IPTV體系架構(gòu)等知識(shí),通過對(duì)該項(xiàng)目的實(shí)踐,學(xué)習(xí)者可以學(xué)到許多知識(shí)。

猜你喜歡
用戶信息系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
展會(huì)信息
主站蜘蛛池模板: 五月婷婷精品| 亚洲精品第一在线观看视频| 久久永久视频| 欧美三级自拍| 欧美精品综合视频一区二区| 亚洲视频在线青青| 黄色成年视频| 怡春院欧美一区二区三区免费| 国产丝袜无码精品| jizz国产视频| 欧美精品v欧洲精品| 国产精品专区第1页| 色婷婷国产精品视频| 五月天在线网站| 亚洲av无码成人专区| 国产人成乱码视频免费观看| 四虎精品黑人视频| 久久久久国产精品嫩草影院| 欧美精品成人一区二区在线观看| 久久频这里精品99香蕉久网址| 久久久久人妻精品一区三寸蜜桃| V一区无码内射国产| 伊人网址在线| 在线播放真实国产乱子伦| 亚洲第一色网站| 九九九国产| 日韩欧美国产区| 强乱中文字幕在线播放不卡| 青青国产视频| 国产一区亚洲一区| 国产大全韩国亚洲一区二区三区| 国产sm重味一区二区三区| 思思99思思久久最新精品| 久久毛片基地| 色综合五月婷婷| 亚洲码在线中文在线观看| 亚洲一区网站| 亚洲第一黄色网址| 久久鸭综合久久国产| 国产又粗又猛又爽视频| 精品国产一区二区三区在线观看 | 日韩欧美色综合| 四虎永久免费地址在线网站| 国产精品30p| 综合亚洲网| 青草视频久久| 成年A级毛片| 婷婷六月综合网| 国产三级成人| 亚洲精品天堂在线观看| 五月婷婷综合在线视频| 熟妇无码人妻| 久草视频一区| 一级毛片免费观看久| 国产日本视频91| 蜜桃臀无码内射一区二区三区| 首页亚洲国产丝袜长腿综合| 中文字幕不卡免费高清视频| 国产一级在线播放| 一级毛片免费的| 精品午夜国产福利观看| 国产无码精品在线播放| 东京热av无码电影一区二区| 欧美激情伊人| 日本黄色不卡视频| 日本不卡免费高清视频| 亚洲人成网站色7777| 亚洲第一网站男人都懂| 色妺妺在线视频喷水| 热热久久狠狠偷偷色男同| 极品私人尤物在线精品首页| 91蜜芽尤物福利在线观看| 国产精品lululu在线观看| 国产亚洲精品无码专| 日韩欧美网址| 人妻丰满熟妇AV无码区| 毛片久久网站小视频| 狠狠做深爱婷婷久久一区| 亚洲综合天堂网| 国产偷国产偷在线高清| 国产菊爆视频在线观看| 亚洲精品中文字幕午夜|