數字電視接收機功能接口設計方法
【專利摘要】本發明涉及數字電視接收設備領域,其公開了一種數字電視接收機功能接口設計方法,解決傳統數字電視接收機上,數字電視功能接口不方便在通用瀏覽器中調用,也無法通過網絡在手機等其他網絡終端設備上調用的問題。該方法包括:a.在數字電視接收設備中,將數字電視功能軟件從實現方式上劃分為服務端和客戶端兩大類;b.將數字電視的功能封裝成一套API接口,此套接口滿足JSON RPC 2.0規范,使用HTTP協議傳輸;c.客戶端設備與數字電視接收設備的服務端之間通過調用API接口完成交互功能。本發明適用于數字電視接收機功能接口設計。
【專利說明】
數字電視接收機功能接口設計方法
技術領域
[0001]本發明涉及數字電視接收設備領域,具體涉及一種數字電視接收機功能接口設計方法。
【背景技術】
[0002]傳統的數字電視接收機中,數字電視功能接口的設計上通常沒有分客戶端和服務端。雖然有的也分客戶端和服務端,但接口主要是C語言風格的接口,或者是android系統中提供的java語言風格的接口,調用的數據規范和使用的語言相互捆綁,這種情況在不同的終端上調用比較困難,尤其不方便在瀏覽器中通過javascipt去調用。
[0003]在NGB(NextGenerat1n Broadcasting Network,下一代廣播網)規范中,定義了調用數字電視功能的Javascipt接口。但這套接口依賴定制的瀏覽器,且必須是擴展了NGB規范的瀏覽器才能使用。因此目前支持NGB規范中的數字電視功能調用,只能在數字電視接收設備上實現,還沒有在通用瀏覽器比如IE,Chrome,FireFox等瀏覽器上實現,也沒有在其他個人網絡終端設備上實現,嚴重阻礙數字電視通過網絡實現多屏共享。
【發明內容】
[0004]本發明所要解決的技術問題是:提出一種數字電視接收機功能接口設計方法,解決傳統數字電視接收機上,數字電視功能接口不方便在通用瀏覽器中調用,也無法通過網絡在手機等其他網絡終端設備上調用的問題。
[0005]本發明解決其技術問題所采用的技術方案是:數字電視接收機功能接口設計方法,包括以下步驟:
[0006]a.在數字電視接收設備中,將數字電視功能軟件從實現方式上劃分為服務端和客戶端兩大類;
[0007]b.將數字電視的功能封裝成一套API接口,此套接口滿足JSON RPC 2.0規范,使用HTTP協議傳輸;
[0008]c.客戶端設備與數字電視接收設備的服務端之間通過調用API接口完成交互功會K。
[0009]作為進一步優化,步驟a中,所述劃分,是在應用層次之前、底層驅動之上,脫離了硬件相關特性,在功能定義的中間層劃分。
[0010]作為進一步優化,步驟b中,所述使用HTTP協議傳輸的方式為:使用HTTPPOST方式或者是使用HTML5WEB SOCKET方式傳輸。
[0011 ] 作為進一步優化,當使用HTTP POST方式的HTTP協議時,設置服務端的HTTP服務器支持服務端支持XMLHttpRequest Level 2,即支持跨域傳輸。
[0012]作為進一步優化,所述API接口數據傳輸還支持HTTPS協議。
[0013]作為進一步優化,步驟c中,所述客戶端設備為手機或PC這些聯網設備,或者為數字電視接收設備本身。
[0014]作為進一步優化,步驟c中,客戶端設備調用API接口獲取音視頻數據時,對于音視頻數據的調用地址,采用符合HTTP協議或者RTSP協議的URL地址,在URL地址參數中指定節目所需的參數,客戶端設備的播放器通過這個地址可以播放某個數字電視節目。
[0015]作為進一步優化,所述采用符合HTTP協議或者RTSP協議的URL地址,在URL地址參數中指定節目所需的參數,客戶端設備的播放器通過這個地址可以播放某個數字電視節目,具體包括:
[0016]客戶端播放器發送HTTP或者RTSP請求,服務端收到請求,從請求地址中獲取節目相關的參數,通過這些參數進行解擾和從傳輸流中過濾指定節目的音視頻數據,并按協議返回到客戶端進行播放。
[0017]本發明的有益效果是:可以方便地在各類數字電視設備和個人網絡終端設備上,實現滿足通用瀏覽器要求的NGB規范的數字電視功能調用接口。相關應用可以作為WEB應用部署到前端網站上,這對于應用功能的更新、添加都非常方便。
【附圖說明】
[0018]圖1為客戶端調用服務端流程框圖;
[0019]圖2為調用數據封裝過程示意圖。
【具體實施方式】
[0020]本發明旨在提出一種數字電視接收機功能接口設計方法,解決傳統數字電視接收機上,數字電視功能接口不方便在通用瀏覽器中調用,也無法通過網絡在手機等其他網絡終端設備上調用的問題。
[0021 ]在具體實現上,本發明中的數字電視接收機功能接口設計方法,包括以下步驟:
[0022]1.在機頂盒,電視機等數字電視接收設備中,把數字電視功能軟件,從實現方式上分為服務端和客戶端兩大類。這個劃分在應用層次之前、底層驅動之上,脫離了硬件相關特性,在功能定義的中間層劃分。
[0023]2.將數字電視的功能封裝成一套 API (Applicat1n Programming Interface,應用程序編程接口)接口,此套接口滿足JSON RPC 2.0規范,使用HTTP協議傳輸;
[0024]3.客戶端調用服務端的功能接口 API實現功能。
[0025]基于該API接口,客戶端和服務端的交互具有如下特征:
[0026]I)客戶端可以是手機或PC等其他聯網設備,也可以和服務端在一個設備。客戶端和服務端的API交互數據在HTTP協議上傳輸。使用HTTP協議傳輸的意義在于方便在瀏覽器中進行訪問,也方便把相關的功能應用部署到前端WEB服務器上。
[0027]2)所述HTTP協議具體為使用HTTP POST方法或者是HTML5WEB SOCKET這兩種方式傳輸。使用HTTP POST方法可以帶上負載,傳遞復雜的參數,又可以方便的在瀏覽器頁面上使用AJAX(Asynchronous JavaScript and XML)調用;采用WEB SOCKET方式交互可以保持客戶端和服務端的連接,減少開銷.
[0028]3)傳輸的負載數據滿足JSON RPC 2.0規范;此規范主要特點是由客戶端發送一個JSON數據,服務端返回一個JSON數據來完成調用,規范對發送和返回的JSON數據做了規定;以JSON格式作為交互的數據格式,其優勢在于瀏覽器中Javascript可以直接處理JSON數據為Javascript的對象,Javascript對象也可以直接轉換為JSON數據,使用上非常方便。
[0029]如圖1所示,從HTTP客戶端,通常是瀏覽器上運行html頁面的Javascript腳本中,發送HTTP POST請求,請求發送到服務端HTTP服務器,HTTP服務器中把JSON RPC 2.0規范的負載數據傳遞到JSON RPC 2.0處理模塊,處理模塊調用底層驅動接口和OS等完成功能調用,返回值返回到HTTP服務器,HTTP服務器把返回值返回到客戶端。
[0030]4)傳輸可以選擇支持HTTPS協議;此協議的作用在于可以加密傳輸的數據,對傳輸數據安全有要求時可以采用這種方式。
[0031 ] 5)對于音視頻數據的調用地址,采用符合HTTP協議或者RTSP協議的URL地址。播放器通過這個地址可以播放某個數字電視節目,在地址參數中指定電視節目的頻點等參數。提供這樣的URL接口方便在播放器中進行播放。在這種方式下,客戶端播放器發送HTTP或者RTSP請求,服務端收到請求,從請求地址中獲取節目相關的參數,通過這些參數進行解擾和從傳輸流中過濾指定節目的音視頻數據,并按協議返回到客戶端進行播放。
[0032]6)HTTP POST方法的傳輸可以支持到XML HttpRequest Level 2,即第二層的AJAX調用,也就是支持跨域傳輸。這個是需要服務端支持才能使用的。這里XMLHttpRequest是用于HTML頁面中,Javascript調用POST方法的Javascript對象。使用該對象調用方法來完成POST方法調用。第二層的XMLHttpRequest支持跨域傳輸。這樣就可以把數字電視的功能通過HTML頁面部署在前端,終端使用機頂盒中的通用瀏覽器即可。瀏覽器執行中,來自前端站點的HTML頁面中的Javascript代碼中就可以通過XMLHttpRequest調用機頂盒設備上的功能,地址可以直接使用http://127.0.0.1。跨域傳輸是HTML5的新功能,不支持的話,無法在一個站點的頁面上通過XMLHttpRequest向另外一個站點請求數據。
[0033]下面是一個調用、傳輸數據示例,客戶端發送請求,讓服務端用求和(sum)的方法計算1+2,(其中斜體字為HTTP傳輸的負載數據):
[0034]POST/dvb/rpc HTTP/1.1
[0035]Host:192.168.60.10:18080
[0036]Content-Length:38
[0037]Content-Type: text/plain;charset = UTF_8
[0038]{"id":1,"method":"sum","params":[1,2]}
[0039]服務端返回數據:
[0040]HTTP/I.I 2000K
[0041 ] Content-Type: applicat1n/jsons
[0042]Content-Length:45
[0043]{"jsonrpc":"2.0","result":3,"id":1}
[0044]上述傳輸示例的調用數據封裝過程如圖2所示,在進行調用服務端進行1+2時,首先是定義方法名稱為sum,參數為JSON格式的數組,數組元素為數字類型,然后封裝成JSONRPC2.0規范的數據,通過POST發送到服務端,POST發送時會加上HTTP的傳輸頭。服務端HTTP服務器收到發送數據,得到負載為JSON RPC2.0規范格式的數據,解析出方法名稱和參數,通過本地功能模塊計算出來結果,把結果通過HTTP服務器返回到客戶端,客戶端解析出JSON數據,進一步解析出結果值3。
[0045]實施例:
[0046]以一種具體的PC瀏覽器上看數字電視的技術方案為例;
[0047](I)數字電視接收機中,把數字電視的功能封裝成一套API接口,這套接口滿足JSON RPC2.0規范,使用HTTP傳輸,在服務端的HTTP服務器中,設置支持XMLHttpRequestLevel 2;并且提供HTTP或者RTSP協議格式的URL地址用于播放直播節目。
[0048](2)在數字電視接收機服務端的HTTP服務器中,把數字電視中搜索頻道以及播放頻道等功能用做成HTML頁面,頁面中通過Javascript中調用步驟(I)中的API來實現數字電視相關功能。比如要播放中央I臺,在搜臺時在服務端保存了中央I臺的參數,HTML頁面播放部分的Javascript處理中,需要調用API獲取中央I臺的參數,把這些參數組裝成url地址,HTML頁面中加入播放器插件來播放這個ur I地址。
[0049](3)在PC端,使用firefox瀏覽器訪問接收機中的HTML功能頁面,瀏覽器處理頁面時,其中的Javascript代碼時會調用服務端的API接口實現數字電視等功能,播臺時可以通過預先頁面指定的播放器插件進行播放。
【主權項】
1.數字電視接收機功能接口設計方法,其特征在于,包括以下步驟: a.在數字電視接收設備中,將數字電視功能軟件從實現方式上劃分為服務端和客戶端兩大類; b.將數字電視的功能封裝成一套API接口,此套接口滿足JSONRPC 2.0規范,使用HTTP協議傳輸; c.客戶端設備與數字電視接收設備的服務端之間通過調用API接口完成交互功能。2.如權利要求1所述的數字電視接收機功能接口設計方法,其特征在于, 步驟a中,所述劃分,是在應用層次之前、底層驅動之上,脫離了硬件相關特性,在功能定義的中間層劃分。3.如權利要求1所述的數字電視接收機功能接口設計方法,其特征在于,步驟b中,所述使用HTTP協議傳輸的方式為:使用HTTP POST方式或者是使用HTML5WEB SOCKET方式傳輸。4.如權利要求3所述的數字電視接收機功能接口設計方法,其特征在于,當使用HTTPPOST方式的HTTP協議時,設置服務端的HTTP服務器支持服務端支持XMLHttpRequest Level2,即支持跨域傳輸。5.如權利要求4所述的數字電視接收機功能接口設計方法,其特征在于,所述API接口數據傳輸還支持HTTPS協議。6.如權利要求1所述的數字電視接收機功能接口設計方法,其特征在于, 步驟C中,所述客戶端設備為手機或PC這些聯網設備,或者為數字電視接收設備本身。7.如權利要求1所述的數字電視接收機功能接口設計方法,其特征在于, 步驟c中,客戶端設備調用API接口獲取音視頻數據時,對于音視頻數據的調用地址,采用符合HTTP協議或者RTSP協議的URL地址,在URL地址參數中指定節目所需的參數,客戶端設備的播放器通過這個地址可以播放某個數字電視節目。8.如權利要求7所述的數字電視接收機功能接口設計方法,其特征在于, 所述采用符合HTTP協議或者RTSP協議的URL地址,在URL地址參數中指定節目所需的參數,客戶端設備的播放器通過這個地址可以播放某個數字電視節目,具體包括: 客戶端播放器發送HTTP或者RTSP請求,服務端收到請求,從請求地址中獲取節目相關的參數,通過這些參數進行解擾和從傳輸流中過濾指定節目的音視頻數據,并按協議返回到客戶端進行播放。
【文檔編號】H04N21/443GK105933721SQ201610511334
【公開日】2016年9月7日
【申請日】2016年6月29日
【發明人】常呂倫, 張雷鳴, 周志武, 吳純彬
【申請人】四川長虹電器股份有限公司