專利名稱:具有可配置功能的電視機頂盒的制作方法
本申請要求1998年10月19日提交的美國在先申請No.60/104,777的優(yōu)先權(quán)。
本發(fā)明提供了一種軟機頂盒的軟件體系結(jié)構(gòu)框架,并把不同的體系結(jié)構(gòu)部件(component)與開放電纜(opencable)高級機頂盒API分類相關(guān)聯(lián)。
目前的開放電纜高級API分類在下面詳述的第7節(jié)中概述。
本文使用下面的縮寫和術(shù)語API-應(yīng)用程序接口;ATSC-高級電視系統(tǒng)委員會;ATM-異步傳送模式;CA-條件存取;CORBA-公用對象請求代理程序體系結(jié)構(gòu);CSLIP-無連接串行線路接口協(xié)議;DASE-ATSC T3/S17數(shù)字電視應(yīng)用軟件環(huán)境;DAVIC-數(shù)字視聽協(xié)會;DC-2-通用設(shè)備(GI)公司專用的數(shù)字密碼II(tm)、數(shù)字視頻標準;DSMCC-數(shù)字存儲媒體命令和控制;DTV-數(shù)字電視;DVB-數(shù)字視頻廣播;DVD-數(shù)字視盤;EPG-電子節(jié)目指南;FTP-文件傳送協(xié)議;
GUI-圖形用戶接口;HSSIO-高速串行I/O;I/O-輸入/輸出;IIOP-網(wǎng)際Orb間協(xié)議;IP-網(wǎng)際協(xié)議;IPG-交互式節(jié)目指南;IRD-綜合接收機解碼器;ISO-國際標準化組織;JVM-Java虛擬機;MIB-管理信息庫;MPEG-運動圖象專家組;PSIP-節(jié)目和系統(tǒng)信息協(xié)議(用于地面廣播和有線);RAM-隨機存取存儲器;RMI-遠程方法調(diào)用;Sat-衛(wèi)星;SI-(DVB)服務(wù)信息;SMPTE-電影與電視工程師協(xié)會;SNMP-簡單網(wǎng)絡(luò)管理協(xié)議;SODA-表示通用設(shè)備公司專用的一種安全芯片;S/PDIG-STAMP-機頂盒應(yīng)用和中件平臺;S-vid-視頻連接器接口;TCP-傳輸控制協(xié)議;UHF-特高頻;UML-統(tǒng)一模型化(modeling)語言;v.34-一種物理接口標準;和xDSL-高速數(shù)字用戶回路調(diào)制解調(diào)技術(shù)。
機頂盒,也稱作綜合接收解碼器(IRD)或用戶端,是一種接收和解碼由電視表示的電視信號的設(shè)備。這些信號可通過衛(wèi)星、電纜線路設(shè)備或通過地面廣播的方式傳送。新式的機頂盒還支持視頻點播(VOD)、按次付費電視、交互式購物、電子商務(wù),并且允許因特網(wǎng)連通性操作以及可能的基于因特網(wǎng)的電話操作。通過專用的硬件和軟件啟動機頂盒的功能。
過去,提供較簡單功能的機頂盒軟件小而非結(jié)構(gòu)化,并且主要目的是盡量減少所需的存儲容量和處理周期。但是,對諸如數(shù)據(jù)、因特網(wǎng)、因特網(wǎng)電話等服務(wù)的支持引出了一組新問題,包括多用戶的安全存取、多個應(yīng)用的管理、資源管理、音頻、視頻、圖形和其它數(shù)據(jù)等的解碼、合成、協(xié)調(diào)和表示?,F(xiàn)有機頂盒軟件的解決方案不能解決這些問題。
因此希望提供一種可在尋優(yōu)進程中取得進展的機頂盒軟件,即從功能較簡單、小而非結(jié)構(gòu)化、節(jié)省存儲容量和處理周期的軟件發(fā)展到具有較復(fù)雜功能、大而結(jié)構(gòu)化、并且存儲容量和處理周期增加的軟件。構(gòu)成下一代機頂盒軟件體系結(jié)構(gòu)的基礎(chǔ)的基本技術(shù)最好采用Java(tm)、ActiveX(tm)或同類的基于組件的面向?qū)ο蟮募夹g(shù)。
該技術(shù)應(yīng)當(dāng)允許考慮與操作系統(tǒng)和硬件無關(guān)的機頂盒應(yīng)用和中件軟件的功能。
另外還希望提供一種設(shè)備和機器,它支持多用戶,資源的安全控制存取,應(yīng)用下載、注冊、啟動、停止和監(jiān)控,資源下載、注冊、啟動、停止和監(jiān)控,音頻、視頻和數(shù)據(jù)表示的管理以及其它一些附加功能。
本發(fā)明提供了一種具有上述及其它優(yōu)點的系統(tǒng)。我們把這種技術(shù)稱作通用設(shè)備公司的“機頂盒應(yīng)用和中件平臺(STAMP)”。
本發(fā)明提供了一種軟機頂盒的軟件體系結(jié)構(gòu)框架。
該機頂盒軟件應(yīng)當(dāng)允許考慮與操作系統(tǒng)和硬件無關(guān)的機頂盒應(yīng)用和中件軟件的功能。
本發(fā)明可支持各種功能,如多用戶,資源的安全控制存取,應(yīng)用程序下載、注冊、啟動、停止和監(jiān)控,資源下載、注冊、啟動、停止和監(jiān)控,音頻、視頻和數(shù)據(jù)表示的管理。
在一個特定實施方案中,本發(fā)明用于提供一種具有軟件的電視機頂盒終端。該終端包括具有計算機程序碼裝置的計算機可讀媒體和用于執(zhí)行計算機程序碼裝置以執(zhí)行分層軟件體系結(jié)構(gòu)的裝置。在該分層軟件體系結(jié)構(gòu)中,應(yīng)用層允許用戶與終端交互作用;中件層通過提供應(yīng)用程序接口(API)支持應(yīng)用層;操作系統(tǒng)層支持中件層;且硬件層支持操作系統(tǒng)層。另外,該分層軟件體系結(jié)構(gòu)允許與操作系統(tǒng)層和硬件層無關(guān)的應(yīng)用層和中件層的功能配置。
該分層軟件體系結(jié)構(gòu)包括一個機頂盒管理層,它通過配置該終端的管理服務(wù)來支持應(yīng)用層。管理服務(wù)至少包括應(yīng)用、用戶、資源和表示管理之一。
機頂盒管理層可執(zhí)行狀態(tài)信息模塊以指示該終端資源的狀態(tài)。該狀態(tài)信息模塊可基于ITU-T X.731標準。
該軟件體系結(jié)構(gòu)還可提供一個應(yīng)用程序接口(API)以用于提供可配置的功能。該API可使能該終端以支持多用戶,或支持資源的安全控制存取。該API可使能該終端以下載、注冊、啟動、停止和監(jiān)控應(yīng)用層的應(yīng)用。該API還可使能該終端以管理音頻、視頻和/或其它數(shù)據(jù)表示。
該軟件體系結(jié)構(gòu)也可提供以下的一種或多種機頂盒管理器、表示管理器、應(yīng)用管理器、用戶管理器、資源管理器、機頂盒代理(agent)、和節(jié)目觀看助手。
另外還提供了一種相應(yīng)的方法。
圖1示出了根據(jù)本發(fā)明的機頂盒終端的軟件體系結(jié)構(gòu)的改進。
圖2示出了根據(jù)本發(fā)明的詳細的機頂盒終端的軟件體系結(jié)構(gòu)。
圖3示出了根據(jù)本發(fā)明的機頂盒管理的頂層分類(class)圖。
圖4示出了根據(jù)本發(fā)明的機頂盒應(yīng)用管理器的頂層分類圖。
圖5示出了根據(jù)本發(fā)明的機頂盒應(yīng)用管理關(guān)系的頂層分類圖。
圖6示出了根據(jù)本發(fā)明的機頂盒控制應(yīng)用的頂層分類圖。
圖7示出了根據(jù)本發(fā)明的機頂盒用戶管理器的頂層分類圖。
圖8示出了根據(jù)本發(fā)明的機頂盒資源管理器的頂層分類圖。
圖9示出了根據(jù)本發(fā)明的可用機頂盒設(shè)備的頂層分類圖。
圖10示出了根據(jù)本發(fā)明的機頂盒軟件體系結(jié)構(gòu)的框架。
本發(fā)明提供了一種軟機頂盒的軟件體系結(jié)構(gòu)框架。
圖1示出了根據(jù)本發(fā)明的機頂盒終端的軟件體系結(jié)構(gòu)的改進。
機頂盒軟件可被看作是一個尋優(yōu)進程,它從功能較簡單、小而非結(jié)構(gòu)化、節(jié)省存儲容量和處理周期的軟件發(fā)展為功能較復(fù)雜、大而結(jié)構(gòu)化、存儲容量和處理周期增加的軟件。Java(tm)、ActiveX(tm)或同類的以組件為基礎(chǔ)的面向?qū)ο蟮募夹g(shù)可被看作是構(gòu)成下一代機頂盒軟件體系結(jié)構(gòu)基礎(chǔ)的基本技術(shù)。
我們把這種技術(shù)稱作“通用設(shè)備公司的機頂盒應(yīng)用和中件平臺(STAMP)”。這種技術(shù)允許考慮與操作系統(tǒng)和硬件無關(guān)的機頂盒應(yīng)用和中件軟件的功能。
STAMP提供了一種設(shè)備和機器,它支持多用戶,資源的安全控制存取、應(yīng)用程序下載、注冊、啟動、停止和監(jiān)控,資源下載、注冊、啟動、停止和監(jiān)控,音頻、視頻、數(shù)據(jù)表示的管理以及其它一些附加功能。這種技術(shù)允許考慮與操作系統(tǒng)和硬件無關(guān)的機頂盒應(yīng)用和中件軟件功能。
STAMP是根據(jù)Java API平臺構(gòu)建的。因此,其最直接的ATAMP實現(xiàn)是使用Java。圖1以簡化的形式示出了機頂盒的軟件體系結(jié)構(gòu)的改進。該體系結(jié)構(gòu)包括硬件層100、操作系統(tǒng)層110以及本機應(yīng)用和中件層120?!氨緳C”應(yīng)用和中件設(shè)計用于特定的操作系統(tǒng)和硬件環(huán)境中。在未來近期的體系結(jié)構(gòu)中,應(yīng)用和中件層120發(fā)展為包括專用應(yīng)用和中件122和本機應(yīng)用和中件120的組合。在未來長期的體系結(jié)構(gòu)中,應(yīng)用和中件層120發(fā)展為僅包括與操作系統(tǒng)和硬件環(huán)境無關(guān)的專用應(yīng)用和中件122。例如,諸如瀏覽器的應(yīng)用程序被寫入與操作系統(tǒng)和硬件環(huán)境無關(guān)的一個抽象層。
在STAMP的設(shè)計中采用的方法是使用STAMP組件,除非其由于性能或其它要求的原因而不可行,這時,STAMP組件可由本機組件代替。
圖2示出了根據(jù)本發(fā)明的詳細的機頂盒終端的軟件體系結(jié)構(gòu)。該圖顯示了STAMP的近期解決方案的分層體系結(jié)構(gòu)。
體系結(jié)構(gòu)200包括硬件層205、設(shè)備驅(qū)動層210和實時操作系統(tǒng)層215。另一個層222包括STAMP解釋程序任務(wù)220、編譯的STAMP任務(wù)225和本機應(yīng)用程序任務(wù)230。下一層232包括本機API265和若干個子層,包括STAMP組件子層260、STAMP應(yīng)用API子層255、包含諸如DAVIC、DVB、ATSC等標準的標準API子層250、STAMP中件API子層245、和具有STAMP解釋程序任務(wù)235和STAMP編譯程序240的子層。
接著提供了STAMP機頂盒管理層270,之后是具有STAMP應(yīng)用275和本機應(yīng)用280的層272。還提供了JAVA小程序(applet)層285。
該軟件體系結(jié)構(gòu)內(nèi)的層指示出了從較高層到較低層的可能的相關(guān)性。例如,一個應(yīng)用程序?qū)⑹褂肧TAMP部件260,STAMP部件260接著使用一些標準API250,API250可在STAMP解釋程序235上運行或者可在STAMP編譯程序240上編譯。
一般認為每個層支持或服務(wù)于其上一層。
用戶通過兩個最高層,JAVA小程序?qū)?85和應(yīng)用層275、280與機頂盒交互作用。與機頂盒的任何形式的交互作用都經(jīng)過了這些應(yīng)用或JAVA小程序。通過下面的理論已經(jīng)定義了不同的層1.最頂層包含處理實體,它們本質(zhì)上是暫時的并且在諸如瀏覽器的應(yīng)用程序內(nèi)運行,并且經(jīng)廣播信道、因特網(wǎng)下載,或者是被分布。JAVA小程序在應(yīng)用程序內(nèi)運行,因而可利用應(yīng)用程序的資源并且被限制在它們的能力之內(nèi)。應(yīng)用可以是STAMP應(yīng)用或本機應(yīng)用。
2.應(yīng)用是永久的或者至少是長期的。它們是僅有的單元層應(yīng)用處理實體并且是基本機頂盒軟件分布或隨后通過代碼下載更新的一些分布或其它裝置的一部分。在STAMP側(cè),它們作為輕便進程組(例如Java線程(thread)組)而被實施。
3.STAMP的機頂盒管理控制所有的機頂盒資源并在不同的機頂盒應(yīng)用之間多路復(fù)用它們。
4.應(yīng)用、JAVA小程序和管理部件置于STAMP部件組(例如,Java程序封裝組件(bean bag))之外。不同的部件組針對不同的問題范疇而被定義,例如圖形、連網(wǎng)等。使用部件組的優(yōu)點在于部件的統(tǒng)一性,即用磚會比用大小不同的石頭更易于建造房子。
5.STAMP部件使用各種API來構(gòu)建。軟件體系結(jié)構(gòu)中的最高API層由那些已被定義為產(chǎn)生諸如條件存取、機頂盒管理等不同范疇的適當(dāng)抽象的API構(gòu)成。STAMP部件可使用任何API層,但最佳的API存取層是接下來的一層,它是STAMP應(yīng)用API層255。
6.STAMP應(yīng)用API使用標準API定義,該標準API定義諸如MPEG PSI、DVB SI等的公用機頂盒功能的全行業(yè)的可行抽象。STAMP應(yīng)用API可使用任何API層,但最佳API存取層是接下來的較低一層,它是標準API層250。
7.標準API使用STAMP中件API 245來定義,例如,如個人Java的標準Java API,Java安全API等。
8.STAMP中件API在解釋程序(諸如JVM)上執(zhí)行或被編譯。
9.如果STAMP中件API被解釋,則該解釋程序作為操作系統(tǒng)215之內(nèi)的任務(wù)或任務(wù)組來執(zhí)行。
10.操作系統(tǒng)215控制所有的機頂盒資源并且啟動各種任務(wù)和資源之間的交互作用。
11.操作系統(tǒng)215利用設(shè)備驅(qū)動程序210控制各種設(shè)備并與各種設(shè)備通信。
12.最底層是實際的硬件。
代理(agent)是使能代表另一個實體的功能的處理單元。代理的例子可以是一個“管理”代理,它允許由首端設(shè)備通過MPEG傳送、調(diào)制解調(diào)或其它方法來遠程管理IRD。或者,“個人”代理可對用戶的行為起作用以監(jiān)控用戶的動作并且搜索與他們的行為相匹配的材料(例如,節(jié)目觀看助手)。
§1.執(zhí)行和管理框架在打開機頂盒之后,STAMP設(shè)定下面的步驟順序1.在OS啟動并運行后,STAMP解釋程序開始于GI機頂盒程序。
2.GI機頂盒程序由一個用以初始化并啟動處理線程的單無限循環(huán)組成。
·啟動的第一線程是“管理線程”,它服務(wù)于其它所有線程。這些線程也會有初始化設(shè)備的例外情況。
3.應(yīng)用線程作為機頂盒管理器線程組的動作結(jié)果而被啟動。
4.JAVA小程序由應(yīng)用啟動。
5.機頂盒管理器線程組控制解釋程序之內(nèi)或之外的機頂盒上的所有任務(wù)。
6.機頂盒管理器線程組可停止JVM或機頂盒本身。
機頂盒管理框架由下面的管理實體構(gòu)成1.機頂盒管理器(SetTopManager)-控制機頂盒并初始化和啟動所有功能;配置所有管理服務(wù),包括應(yīng)用、用戶、資源和表示管理;密切地與表示管理器交互作用,表示管理器控制所有視聽素材的表示;配置、啟動、停止并與機頂盒代理交互作用,該機頂盒代理通過因特網(wǎng)或傳輸流啟動遠程機頂盒管理;配置、啟動、停止并與節(jié)目觀看助手交互。
2.表示管理器-由三個元件構(gòu)成,即解碼器、合成器和表示器;配置所有的可表示設(shè)備(視頻、音頻等);控制所有可表示素材的解碼;組合用于音頻和/或視頻表示的所有可表示素材;表示所有的可表示素材;可與所有處理并轉(zhuǎn)發(fā)至所有注冊應(yīng)用的事件交互作用;支持用于表示優(yōu)先級的用戶接口。
3.應(yīng)用管理器-管理應(yīng)用的壽命周期,包括應(yīng)用的注冊(裝入)、一系列可用應(yīng)用的維護、可能的解密或解壓并移動至地址空間、評價應(yīng)用程序是否可根據(jù)其執(zhí)行屬性運行、啟動/停止/監(jiān)控應(yīng)用程序線程和分配的資源、應(yīng)用內(nèi)通信的載體、傳播事件至所考慮的應(yīng)用(注冊的);并支持用于應(yīng)用管理的用戶接口。
4.用戶管理器-管理一系列用戶、它們的優(yōu)先級和它們對機頂盒資源的存取權(quán)限。驗證授權(quán)/安全以使元件能夠進行操作。支持用于用戶優(yōu)先級、用戶管理和機頂盒存取控制管理的用戶接口。
5.資源管理器-通過各種資源專用API提供所有機頂盒資源的存取。管理這些資源。支持用于資源管理的用戶接口。
6.機頂盒代理-具有MIB的Java SNMP代理,其允許機頂盒的缺省、配置、記帳、性能及安全管理。
7.節(jié)目觀看助手-利用基于通代算法的前向鏈接的智能代理;它至少允許用戶與使用IPG數(shù)據(jù)庫的各類不同表示素材相關(guān)聯(lián);它支持交互顯示,該顯示可作為一個應(yīng)用程序而啟動,或者以后臺方式通過提示、操作快捷方式或其它類型的幫助來幫助用戶。
下面所討論的圖是統(tǒng)一模型化語言(UML)的分類圖,它描繪了各種機頂盒管理部件之間的分類關(guān)系。
圖3示出了根據(jù)本發(fā)明的機頂盒管理的頂級分類圖。圖3使用了由美國Rational軟件公司開發(fā)的統(tǒng)一模型化語言。分類圖表示一個系統(tǒng)的靜態(tài)結(jié)構(gòu),并且表示該系統(tǒng)呈現(xiàn)的行為模式。這通過表示分類的存在以及它們的關(guān)系來實現(xiàn)。每個分類由具有三個部分的框表示。最上面的部分列出了分類名稱。中間部分表示一系列屬性,而最下面的部分表示一系列操作。在該圖中,為了簡便起見只顯示了分類名稱。
分類之間的實線表示相互關(guān)系。具有白色菱形尖端的實線以標記(reference)來表示集合,而黑色菱形尖端以數(shù)值來表示集合。三角箭頭表示受到限制的導(dǎo)航,如操作而非結(jié)構(gòu)的繼承。
另外,數(shù)字可任選地表示在與分類框接觸的線末端的旁邊,以表示相互關(guān)系的基數(shù),如0、1...。另外,“*”表示“或者更大”,例如,“0…*”表示“0或更大”?!?…1”表示0或1的集合。
所有的管理實體都由處理線程構(gòu)成(輕便進程或任務(wù))。所有的管理處理線程都是機頂盒管理器線程組305的一部分,并且機頂盒管理器線程組305還進一步分為應(yīng)用管理器310、表示管理器315、用戶管理器320、資源管理器325和機頂盒代理330的線程組。
所有的管理實體都連接機頂盒管理信息庫(SetTopMIB)335。每個管理實體(MngmtEntity)335控制MIB的一部分,同時機頂盒代理330提供MIB的外部存取(即,SNMP、RMI、CORBA、IIOP等)。MngmtEntity 335與均源自Java.lang的線程360和線程組365相關(guān)聯(lián)。
應(yīng)用管理器310控制應(yīng)用注冊(AppRegistry)340,表示管理器控制表示注冊345,用戶管理器控制用戶注冊(UserRegistry)350,并且資源管理器控制資源注冊(ResourceRegistry)355。下面的各小節(jié)更詳細地描述了不同的管理實體。
應(yīng)當(dāng)指出,本發(fā)明在應(yīng)用、資源和機頂盒MIB之內(nèi)啟動以諸如ITU-T X.731標準所描述的通用狀態(tài)信息模塊的應(yīng)用程序。這個標準是電信管理網(wǎng)絡(luò)(TMN)采用的Q3標準的一部分。TMN標準由CCITT(現(xiàn)在的ITU-T)開發(fā)以提供一種體系結(jié)構(gòu),以實現(xiàn)各種管理系統(tǒng)和電信設(shè)備之間的互聯(lián),以用于經(jīng)標準化接口來交換管理信息。TMN主要基于OSI管理標準,并包括TMN的原理(ITU-T M.3010和M.3020),它定義該體系結(jié)構(gòu);通用網(wǎng)絡(luò)信息模型(ITU-T M.3100);管理服務(wù)(ITU-T M.3200);管理功能(ITU-T M.3400);和管理接口的協(xié)議概述(profile)(ITU-TQ.811,Q.812,Q.773)。
所有網(wǎng)絡(luò)、電信服務(wù)和主要類型的設(shè)備都可由TMN管理。
TMN通過ITU-T X-700系列(OSI系統(tǒng)管理)標準的方式起到交換管理信息的作用。TMN層中的每個軟件部分表示其自身以及它所管理的作為管理對象的上層的資源。管理器和代理之間的交互作用通過CMISE/CMIP的方式定義。信息體系結(jié)構(gòu)的組織,即MIB包括了可通過通用網(wǎng)絡(luò)信息模塊ITU-T M-3100中提供的通用模板來細化的特定技術(shù)的管理對象。
所有的TMN通信均基于代理管理器的范例(paradigm)。Q3接口依賴于使用OSI公用管理信息協(xié)議的OSI管理模型。CMIP在公用管理信息服務(wù)元素(CMISE)之間使用以提供公用管理信息服務(wù)(CMIS)。
§1.1.應(yīng)用管理應(yīng)用管理器控制若干應(yīng)用,這些應(yīng)用均根據(jù)通用應(yīng)用模板構(gòu)建,該通用應(yīng)用模板能夠進行應(yīng)用管理器的監(jiān)控。
應(yīng)用管理API向系統(tǒng)提供與應(yīng)用壽命周期和應(yīng)用完整性相關(guān)的功能。
應(yīng)用驗證和確認API-應(yīng)用驗證和確認API向系統(tǒng)提供TBD的功能。
應(yīng)用壽命周期API-應(yīng)用壽命周期API向系統(tǒng)提供裝入、啟動、暫停、停止和卸載應(yīng)用程序的功能。
應(yīng)用注冊API-應(yīng)用注冊API向系統(tǒng)提供注冊應(yīng)用程序版本和應(yīng)用資源信息的功能。
圖4示出了根據(jù)本發(fā)明的機頂盒應(yīng)用管理器的頂層UML分類圖。
各圖中的相似元件彼此對應(yīng)。
這里,資源客戶分類405與通用應(yīng)用分類410相關(guān),通用應(yīng)用分類410與調(diào)制解調(diào)代理服務(wù)器(Proxy)分類415相關(guān),調(diào)制解調(diào)代理服務(wù)器分類415與資源代理服務(wù)器分類420相關(guān)。
資源客戶分類405和資源代理服務(wù)器分類420可源自org.davic.resources。通用應(yīng)用分類410可源自gi.settop.application。
通用應(yīng)用執(zhí)行由各個應(yīng)用所使用的所有資源的資源客戶405和資源代理420的接口。
所有的應(yīng)用,雖然只由應(yīng)用管理器管理,但必須與表示315、用戶320和資源管理器325交互。
圖5示出了根據(jù)本發(fā)明的機頂盒應(yīng)用管理關(guān)系的頂層UML分類圖。
通用應(yīng)用分類410可與各種分類相關(guān)聯(lián),如下載分類505、觀看電視分類510、電子郵件分類515、斷續(xù)器(ticker)分類520、網(wǎng)絡(luò)瀏覽器分類525和EPG分類530,其中的每個分類均可源自gi.settop.applications。
用戶和所有管理實體間的交互可通過機頂盒控制應(yīng)用程序?qū)崿F(xiàn),機頂盒控制應(yīng)用程序與其它所有應(yīng)用一樣也是由應(yīng)用管理器310通過通用應(yīng)用410的模板來控制。
圖6示出了根據(jù)本發(fā)明的機頂盒控制應(yīng)用的頂層UML分類圖。
機頂盒控制應(yīng)用(SetTopControlApp)605通過機頂盒控制GUI(SetTopControlGUI)610和不同的機頂盒管理器310、315、320和325來協(xié)調(diào)用戶間的交互作用。
機頂盒控制應(yīng)用605和機頂盒控制GUI610可源自gi.settop.applications。
§1.2.用戶管理用戶簡要表API向系統(tǒng)提供以用戶為中心和以帳戶為中心的功能。
計費API-計費API向系統(tǒng)提供管理帳戶并執(zhí)行與帳戶有關(guān)的事務(wù)的功能。
優(yōu)先級API-優(yōu)先級API向系統(tǒng)提供管理以用戶為中心的特性的功能。
喜好服務(wù)API-喜好服務(wù)向系統(tǒng)提供管理用戶定義的服務(wù)集和子集的功能。
安全API向系統(tǒng)提供控制和管理應(yīng)用、內(nèi)容和服務(wù)的存取的功能。
內(nèi)容控制API-內(nèi)容控制API向系統(tǒng)提供用于根據(jù)以用戶為中心的準則(父母鎖)來控制應(yīng)用、內(nèi)容和服務(wù)的存取的功能。
條件存取API-條件存取API向系統(tǒng)提供用于根據(jù)服務(wù)限制和帳戶限制控制存取服務(wù)的功能。
授權(quán)和驗證管理API-授權(quán)和驗證管理API向系統(tǒng)提供TBD的功能。
密碼術(shù)API-密碼術(shù)API向系統(tǒng)提供用于加密和解密廣播至系統(tǒng)、存儲在系統(tǒng)上或從系統(tǒng)發(fā)送的內(nèi)容的功能。
機頂盒的用戶存取控制和用戶優(yōu)先級管理由用戶管理器處理。用戶管理器使用機頂盒MIB作為其信息存儲器并且通過機頂盒控制應(yīng)用與用戶交互。
圖7示出了根據(jù)本發(fā)明的機頂盒用戶管理器的UML頂層分類圖。
安全管理器分類705可源自java.lang。
§1.3.資源管理資源管理API向系統(tǒng)提供用于測量、分配和去分配(de-allocating)限制硬件系統(tǒng)和服務(wù)的用戶的功能。
系統(tǒng)簡要表API-系統(tǒng)簡要表API向系統(tǒng)提供確定系統(tǒng)資源和配置信息的功能。
同步API-同步API向系統(tǒng)提供用于使諸如音頻和視頻解碼器的不同資源同步的功能。
資源分配API-資源分配API向系統(tǒng)提供請求、評估和釋放硬件系統(tǒng)和服務(wù)的功能。
系統(tǒng)測試API-系統(tǒng)測試APT向系統(tǒng)提供外部應(yīng)用測試硬件系統(tǒng)和服務(wù)的功能。
系統(tǒng)診斷API-系統(tǒng)診斷API向系統(tǒng)提供內(nèi)部測試和診斷系統(tǒng)故障的功能。
圖8示出了根據(jù)本發(fā)明的機頂盒資源管理器的UML頂層分類圖。
可源自gi.settop.devices的通用設(shè)備分類805與資源管理器分類325相關(guān)。
機頂盒應(yīng)用對所有機頂盒資源的存取是通過資源管理器325管理的。該資源管理器可使用DAVIC資源API。
圖9示出了根據(jù)本發(fā)明的可用機頂盒設(shè)備的UML頂層分類圖。
通用設(shè)備分類805可與下面的一個或多個作為例子的分類相關(guān)聯(lián)硬驅(qū)902、磁盤驅(qū)動器904、RAM盤906、智能卡908、DVD 910、DC2Sat 912、ATSC終端914、MPEG916、MPEG視頻918、MPEG/AC3音頻920、終端922、DVBSat 924、鍵盤926、輸入設(shè)備928、HSSIO930、視頻輸出932、音頻輸出934、前面板顯示936、SODA 938、IEEE1284并行、UHF遙控942、紅外遙控944、IEEE1394 946、模擬音頻948、S/PDIG數(shù)字音頻950、通信952、數(shù)字電纜954、XDSL956、V34958、10BaseT960、ATM962、SMPTE視頻輸出964、RGB視頻輸出966和CCIR16視頻輸出968。
每個分類均可源自gi.settop.devices。
可用資源通過通用設(shè)備的原理進行交互作用。設(shè)備控制API向系統(tǒng)提供管理設(shè)備的功能。媒體控制API包括調(diào)諧和多路分用API-調(diào)諧和多路分用API向系統(tǒng)提供選擇服務(wù)和流的功能。
解碼器API-解碼器API向系統(tǒng)提供解碼視頻流、音頻流、數(shù)據(jù)流和這些流中的元素的功能。
重放控制API-重放控制API向系統(tǒng)提供管理流重放的功能。
§1.4.表示管理表示管理和表示API在機頂盒中的兩種方案(scenario)中起一定的作用。
1.可表示對象(圖形、視頻、音頻)作為應(yīng)用啟動或與應(yīng)用有關(guān)的處理結(jié)果而產(chǎn)生。
2.表示對象作為經(jīng)轉(zhuǎn)盤式磁帶、因特網(wǎng)輸入的數(shù)據(jù)的解碼處理結(jié)果而產(chǎn)生。
表示API和表示管理器(PM)以相同的方式簡化兩個方案,即產(chǎn)生相同的對象并具有可被啟動的相同方法。
表示API向系統(tǒng)提供顯示和控制向用戶顯示信息、狀態(tài)、內(nèi)容和控制的功能。
視頻表示API-視頻表示API向系統(tǒng)提供管理在主顯示面上顯示視頻數(shù)據(jù)的功能。
前面板顯示管理器API-前面板顯示管理器API向系統(tǒng)提供管理在前面板顯示面上顯示信息、狀態(tài)和控制的功能。
圖形表示API-圖形表示API向系統(tǒng)提供管理在主顯示面上顯示圖形數(shù)據(jù)的功能。
字體管理API-字體管理API向系統(tǒng)提供裝入、選擇和在主顯示面上顯示字體的功能。
音頻表示API-音頻表示API向系統(tǒng)提供管理在主音頻輸出端重放音頻數(shù)據(jù)的功能。
STAMP內(nèi)的若干應(yīng)用和JAVA小程序具有GUI。它們包括1.安裝&診斷屏;2.機頂盒選頂屏,它們提供對主要機頂盒特征和應(yīng)用的存取并且執(zhí)行配置屏(例如,等級優(yōu)先、語言優(yōu)先、音頻/視頻模式等。);3.觀看電視的標題和詳細信息;4.IPG屏;5.網(wǎng)絡(luò)瀏覽器屏;6.電子郵件屏;7.斷續(xù)器(如用于股票價格);8.JAVA小程序屏;和9.可下載的應(yīng)用屏。
所有這些GUI均在通過表示API定義的一組部件之外構(gòu)建。
§2.JAVA小程序在擁有Java使能的Java瀏覽器或Java使能的本地瀏覽器的機頂盒上支持Java小程序。該JAVA小程序通過因特網(wǎng)上的Http下載或通過DSMCC轉(zhuǎn)盤式磁帶服務(wù)下載。
§3.應(yīng)用§3.1.觀看電視觀看電視-系統(tǒng)提供一個簡單的廣播電視觀看環(huán)境。用戶可向上換頻道、向下?lián)Q頻道、或返回至前個頻道并且選擇一個特定頻道。
觀看帶有父母鎖的電視-系統(tǒng)可向用戶提供一種裝置以限制服務(wù)、頻道或事件的存取??诹钛b置可改寫存取限制。存取可基于頻道、事件等級、事件方案或一些其它準則。
觀看具有條件存取的電視-系統(tǒng)可提供一個裝置以便于根據(jù)作為服務(wù)供應(yīng)商的顧客的用戶的存取權(quán)限來限制服務(wù)、頻道和事件的存取。存取權(quán)限與服務(wù)限制或帳戶限制有關(guān)。
觀看具有另外可選的音頻的電視-系統(tǒng)針對一個特定視頻流可獲得不止一個音頻流。用戶具有選擇與視頻流同步重放的另一個可選音頻流的機會。
觀看帶有副標題的電視-系統(tǒng)可獲得一個或多個文本或圖形流以與視頻流同步或疊加在視頻流上。
§3.2.下載應(yīng)用下載應(yīng)用的方案描述了廣播應(yīng)用或數(shù)據(jù)服務(wù)被購買或存儲到系統(tǒng)中的情況。
觀看具有永久未同步數(shù)據(jù)服務(wù)的電視-系統(tǒng)提供一個與當(dāng)前音頻和視頻流不同步的數(shù)據(jù)服務(wù)(例如股票斷續(xù)器)。使用該數(shù)據(jù)服務(wù)(如股票斷續(xù)器的圖形用戶接口)的應(yīng)用程序已常駐于系統(tǒng)上,在這個方案中傳送的僅僅是數(shù)據(jù)(股價)。
觀看具有永久同步數(shù)據(jù)服務(wù)的電視-系統(tǒng)提供一種與當(dāng)前音頻和視頻流同步的數(shù)據(jù)服務(wù)(如對應(yīng)于目前屏幕上的運動員的運動統(tǒng)計數(shù)據(jù))。使用該數(shù)據(jù)服務(wù)的應(yīng)用已常駐于系統(tǒng)中,在這個方案中傳送的僅僅是數(shù)據(jù)。
觀看可在規(guī)定時間下載應(yīng)用的電視-系統(tǒng)提供一種裝置以用于規(guī)定時間并在隨后下載不在當(dāng)前服務(wù)的服務(wù)上的應(yīng)用。
觀看具有應(yīng)用的沖動購買的電視-系統(tǒng)向用戶提供一種向其通知可獲得的應(yīng)用的裝置并向用戶提供一種購買和下載應(yīng)用的裝置。
觀看具有后臺應(yīng)用更新的電視-系統(tǒng)向用戶提供一種在后臺下載應(yīng)用的裝置(不破壞當(dāng)前的音頻和視頻表示)。
§3.3.電視購物電視購物的方案描述了用戶可通過在系統(tǒng)上可獲得的應(yīng)用程序請求信息、產(chǎn)品或服務(wù)的情況。
觀看電視并請求信息-系統(tǒng)向用戶提供一種請求對應(yīng)于當(dāng)前正在播放的視頻和音頻的信息的裝置。例如,在汽車交易期間,用戶可請求一個小冊子。
觀看電視并沖動購買-系統(tǒng)向用戶提供一種購買對應(yīng)于當(dāng)前正在播放的視頻和音頻的產(chǎn)品的裝置。例如,在紀念牌的交易期間,用戶可購買該牌。
通過以視頻為中心的目錄瀏覽并購買-系統(tǒng)向用戶提供一種通過包含圖形、視頻和音頻的目錄導(dǎo)航的裝置。用戶可選擇和購買目錄中的商品或服務(wù)。
通過以音頻為中心的目錄瀏覽并購買-系統(tǒng)向用戶提供一種通過包括圖形和音頻的目錄導(dǎo)航的裝置。用戶可選擇和購買目錄中的商品或服務(wù)。
通過以圖形為中心的目錄瀏覽并購買-系統(tǒng)向用戶提供一種通過包括圖形的目錄導(dǎo)航的裝置。用戶可選擇和購買目錄中的商品或服務(wù)。
§3.4.近似視頻點播近似視頻點播(NVOD)方案描述了用戶可從相似電影或服務(wù)的多種復(fù)用中選擇電影(或其它一些音頻-視頻服務(wù))的情況。
按次付費電視-系統(tǒng)向用戶提供一種從多路復(fù)用的服務(wù)中購買一個服務(wù)的裝置。交互性通常被限制在選擇和購買過程中。
交互式按次付費電視-系統(tǒng)向用戶提供一種從多路復(fù)用的服務(wù)中購買一個服務(wù)的裝置。用戶可“暫?!痹摲?wù),直到下一次可用該服務(wù)為止。
§3.5.游戲游戲方案允許用戶通過網(wǎng)絡(luò)傳送的服務(wù)玩游戲。游戲可以是單用戶或多用戶游戲,可完全置于系統(tǒng)上(本地),也可通過網(wǎng)絡(luò)來玩。
觀看電視和本地參與-系統(tǒng)向用戶提供一種觀看電視節(jié)目和“同時玩”單用戶本地應(yīng)用的裝置。例如,在玩“幸運轉(zhuǎn)盤”期間,用戶可“旋轉(zhuǎn)該轉(zhuǎn)盤”并做出它們自己的猜測。
觀看電視和多用戶參與-系統(tǒng)可向用戶提供一種觀看電視節(jié)目和“同時”與其它用戶競爭的裝置。
單人游戲-系統(tǒng)向用戶提供一種沒有其它遠程參與者的玩基于系統(tǒng)的游戲的裝置。
多用戶游戲-系統(tǒng)向用戶提供一種有其它遠程參與者一起玩基于系統(tǒng)的游戲的裝置。
§3.6.互聯(lián)網(wǎng)存取互聯(lián)網(wǎng)存取方案允許用戶存取基于因特網(wǎng)的內(nèi)容或功能html網(wǎng)頁、電子郵件、聊天、流式音頻等。
瀏覽網(wǎng)絡(luò)-系統(tǒng)向用戶提供了一種瀏覽網(wǎng)站的裝置。
電子郵件-系統(tǒng)向用戶提供了一種讀、寫和回復(fù)電子郵件的裝置。
聊天-系統(tǒng)向用戶提供了一種在因特網(wǎng)上與其它用戶實時交流的裝置。
觀看具有因特網(wǎng)內(nèi)容的電視-系統(tǒng)向用戶提供一種同時觀看音頻和視頻服務(wù)同時執(zhí)行基于因特網(wǎng)的活動的裝置,其中該活動可利用或通過該音頻-視頻服務(wù)獲得。
瀏覽具有電視內(nèi)容的網(wǎng)頁-系統(tǒng)向用戶提供一種觀看通過基于因特網(wǎng)的項目得到的音頻或視頻服務(wù)的裝置。
§3.7.信息點播信息點播方案允許用戶在它們希望或定制他們的優(yōu)先級時存取與信息有關(guān)的內(nèi)容。
按次付費新聞服務(wù)-系統(tǒng)向用戶提供一個購買音頻、視頻或以文本為中心的新聞服務(wù)的裝置。該服務(wù)可提供標題類的細節(jié)、深度細節(jié)、編輯信息或一些其它程度的服務(wù)。
新聞項的詢問-系統(tǒng)向用戶提供一個詢問多個可用源中的與用戶定義或用戶所選標準相關(guān)的一個或多個“文章”的裝置。
個人化新聞-系統(tǒng)向用戶提供一種把新聞服務(wù)定制為它們優(yōu)選的主題的裝置。
訂購服務(wù)-系統(tǒng)向用戶提供一種購買和預(yù)定訂購音頻、視頻或以文本為中心的新聞服務(wù)的裝置。
§3.8.電子節(jié)目指南電子節(jié)目指南方案允許用戶存取頻道、服務(wù)和事件信息。通常,用戶也可使用這種信息控制系統(tǒng)或在系統(tǒng)內(nèi)導(dǎo)航。
當(dāng)前頻道的現(xiàn)在和下一個-系統(tǒng)提供有關(guān)在當(dāng)前頻道上目前可獲得什么服務(wù)并且接下來是什么服務(wù)的信息。
所有頻道的現(xiàn)在和下一個-系統(tǒng)提供有關(guān)在所有已知頻道上目前可獲得什么服務(wù)并且接下來是什么服務(wù)的信息。
所有頻道的現(xiàn)在和下一個-系統(tǒng)提供有關(guān)在所有已知頻道上目前可獲得什么服務(wù)并且在未來的某個預(yù)定時間可獲得什么服務(wù)的信息。
通過指南請求預(yù)覽-系統(tǒng)向用戶提供一個請求服務(wù)樣本的裝置。例如,用戶可能會請求一部電影的結(jié)尾或一個應(yīng)用的演示。
通過指南購買事件-系統(tǒng)向用戶提供通過電子節(jié)目指南購買未來事件或服務(wù)的裝置。
設(shè)置節(jié)目提示信號-系統(tǒng)向用戶提供一個規(guī)定在未來某個時刻通知未來事件的時間的裝置。
通過指南購買應(yīng)用-系統(tǒng)向用戶提供一種購買通過電子節(jié)目指南下載的應(yīng)用的裝置。
§3.9.遠程學(xué)習(xí)遠程學(xué)習(xí)方案描述了一種學(xué)生和老師不在同一地點的虛擬教室。
觀看具有交談的電視-系統(tǒng)提供虛擬教室的視頻和音頻。系統(tǒng)向用戶提供一種通過交談與教師或其它學(xué)生(位于不同地點)一起參與的裝置。
觀看具有測試的電視-系統(tǒng)提供虛擬教室的視頻和音頻。系統(tǒng)向用戶提供一種通過交談與教師或其它學(xué)生(位于不同地點)一起參與的裝置。
§3.10.家庭銀行家庭銀行方案描述了與用戶在零售業(yè)務(wù)銀行(retail bank)可獲得的服務(wù)差不多的服務(wù)。
信息檢索-系統(tǒng)向用戶提供一種存取與銀行功能和它們的個人帳戶有關(guān)的信息的裝置。
事務(wù)-系統(tǒng)向用戶提供一種執(zhí)行典型的零售業(yè)務(wù)銀行的電子轉(zhuǎn)讓的裝置。
服務(wù)應(yīng)用-系統(tǒng)向用戶提供一種應(yīng)用于諸如信用卡、貸款和開支票的零售業(yè)務(wù)銀行服務(wù)的裝置。
咨詢-系統(tǒng)向用戶提供一種獲得個人化財務(wù)幫助的裝置。
§3.11.導(dǎo)航導(dǎo)航方案描述了用戶啟動在系統(tǒng)上可用的服務(wù)、應(yīng)用和內(nèi)容的情況。
應(yīng)用啟動-系統(tǒng)向用戶提供一種啟動(運行或裝入(launch))應(yīng)用的裝置。
應(yīng)用刪除-系統(tǒng)向用戶提供一種從系統(tǒng)存儲器、本地存儲器或與系統(tǒng)有關(guān)的遠程存儲器中刪除應(yīng)用的裝置。
系統(tǒng)優(yōu)先級-系統(tǒng)向用戶提供一種識別與系統(tǒng)或其用戶接口的操作有關(guān)的以用戶為中心的優(yōu)先級的裝置。
喜好頻道設(shè)置-系統(tǒng)向用戶提供一種識別或定制可獲得的服務(wù)的集合或子集的裝置。
§4.STAMP部件體系結(jié)構(gòu)部件組(封裝程序組件(bearn bag))被定義為方便域?qū)S?例如IPG)應(yīng)用部件構(gòu)建的集合。這些集合不是斷開的。JAVA程序封裝組件是1.GI應(yīng)用系統(tǒng)封裝程序組件-這組部件包括所有不同應(yīng)用部件組都通用的所有封裝程序(bean)。這可包括信息交換裝置、同步裝置、定時裝置、存儲裝置等。
2.GI GUI封裝程序組件-這組部件包括所有不同應(yīng)用都通用的所有GUI封裝程序;這可包括列表、按鈕、滑動觸頭等。
3.GI HotJAVA程序封裝組件-這組部件包括可作為瀏覽器一部分的所有部件。
4.GI IPG封裝程序組件-這組部件包括可作為IPG應(yīng)用的一部分的所有部件。
5.GI調(diào)諧封裝程序組件-這組部件包括可作為調(diào)諧應(yīng)用一部分的所有部件。
6.GI電子郵件封裝程序組件-這組部件包括可作為電子郵件應(yīng)用一部分的所有部件。
7.GI下載封裝程序組件-這組部件包括可作為下載應(yīng)用一部分的所有部件。
8.GI斷續(xù)器封裝程序組件-這組部件包括可作為信息斷續(xù)器應(yīng)用一部分的所有部件。
9.GI玩游戲者封裝程序組件-這組部件包括可作為玩游戲者應(yīng)用一部分的所有部件。
§5.應(yīng)用程序接口(API)API向系統(tǒng)提供硬件和操作系統(tǒng)的獨立抽象層。這允許廣播應(yīng)用傳送到處理器和操作系統(tǒng)大大不同的系統(tǒng)從具有RISC處理器和實時操作系統(tǒng)的機頂盒到具有微處理器和非實時操作系統(tǒng)的個人計算機。
所有API都可與本機應(yīng)用或Java應(yīng)用分開使用。下面的API需要在由DAVIC定義的那些API和JavaSoft標準化的那些API的范圍之外來定義。
§5.1.事件管理API事件管理API向系統(tǒng)提供用于發(fā)送和接收信息、事件和“中斷”的功能。
事件分送(dispatch)API-事件發(fā)送API向系統(tǒng)提供分送信息、事件和“中斷”的功能。
用戶輸入API-用戶輸入API向系統(tǒng)提供接收和發(fā)送源于用戶的事件的功能(鍵盤、鼠標、前面板、遙控器等)。
進程間(inter-process)通信API-進程間通信API向系統(tǒng)提供用于在應(yīng)用、進程和線程之間發(fā)送信息和事件的功能。
調(diào)度API-調(diào)度API向系統(tǒng)提供用于建立時間和日期觸發(fā)事件和“中斷”的功能。
§5.2.應(yīng)用公用(utility)API應(yīng)用公用API向系統(tǒng)提供由應(yīng)用程序通用的通用功能。
數(shù)學(xué)API-數(shù)學(xué)API向系統(tǒng)提供執(zhí)行數(shù)學(xué)程序的功能。
時間API-時間API向系統(tǒng)提供存取時間和日期并執(zhí)行公用時間程序的功能。
字符串API-字符串API向系統(tǒng)提供用于裝入、卸載和操縱字符串的功能。
表API-表API向系統(tǒng)提供管理表和其它公用動態(tài)數(shù)據(jù)結(jié)構(gòu)的功能。
文件API-文件API向系統(tǒng)提供執(zhí)行與文件有關(guān)的操作的功能。
定位(localization)API-定位API向系統(tǒng)提供執(zhí)行公用定位操作的功能。
通信API-包括拔號連網(wǎng)、因特網(wǎng)、路由選擇、傳輸流等的所有通信和通信管理部件的高級接口。
對象服務(wù)API-支持對象間的信息交換;這包括信息模型、類型、相互關(guān)系、操作、特性、命名、注冊、分布等。
數(shù)據(jù)庫服務(wù)API-支持數(shù)據(jù)存儲和檢索裝置,包括通用文件系統(tǒng)和注冊。
下載服務(wù)API-支持下載服務(wù)。
§5.3.內(nèi)容管理API內(nèi)容管理API向系統(tǒng)提供與內(nèi)容壽命周期和內(nèi)容完整性有關(guān)的功能。
內(nèi)容完整性API-內(nèi)容完整性API向系統(tǒng)提供用于TBD的功能。
內(nèi)容下載API-內(nèi)容下載API向系統(tǒng)提供用于存儲廣播至系統(tǒng)的應(yīng)用的功能。
內(nèi)容版本控制API-內(nèi)容版本控制API向系統(tǒng)提供用于管理存儲的或裝載的內(nèi)容版本的功能。
內(nèi)容存儲API-內(nèi)容存儲API向系統(tǒng)提供用于存儲和檢索系統(tǒng)中的內(nèi)容或利用遠程存儲器存儲和檢索內(nèi)容的功能。
§5.4.系統(tǒng)信息API系統(tǒng)信息API向系統(tǒng)提供與MPEG-2系統(tǒng)信息和節(jié)目信息流有關(guān)的功能。
事件信息API-事件信息API向系統(tǒng)提供解釋事件信息流的功能。
頻道和服務(wù)映射API-頻道和服務(wù)映射API向系統(tǒng)提供解釋該系統(tǒng)和服務(wù)信息流的功能。
§5.5.GI表示API見機頂盒管理一節(jié)。啟動諸如解碼器、合成器和表示器的表示管理器部件的構(gòu)建;存取除了DAVIC和標準Java API之外所需的包括圖形、音頻和視頻的所有表示子系統(tǒng);操縱除了DAVIC和標準JavaAPI之外所需的所有表示子系統(tǒng);所有表示部件的初始化、啟動、操縱、關(guān)閉和協(xié)調(diào);如此等等。
§5.6.GI機頂盒管理API見機頂盒管理一節(jié)。這個API通過下面的步驟啟動機頂盒管理應(yīng)用,即通過提供部件掛鉤(hook-up)功能、部件監(jiān)視和控制功能、所有內(nèi)部進程/守護程序/應(yīng)用的初始化、啟動、關(guān)閉和協(xié)調(diào);異步事件以及通過收集信息產(chǎn)生的事件的處理;等等。
操作支持API-通過Java/非Java接口以及SNMP代理API簡化機頂盒管理API。
§5.7.DAVIC API下面的DAVIC API被支持1.資源通知API(org.davic.resources)-應(yīng)用的標準裝置,用以在稀有資源中注冊興趣所在,并用于通知這些資源的變化或在該環(huán)境下刪除這些資源。
2.MPEG API(org.davic.mpeg)-包括MPEG部件API、MPEG單元濾波器API和MPEG傳輸流API。
3.調(diào)諧API(org.davic.net.tuning)-包括多網(wǎng)絡(luò)接口(本地和/或遠程)的網(wǎng)絡(luò)接口的調(diào)諧。
4.條件存取API(org.davic.net.ca)-用于存取CA功能的CA系統(tǒng)獨立接口。
5.DVB SI API(org.davic.net.dvb.si)-DVB SI數(shù)據(jù)庫的接口(包括通過任選的高速緩沖存儲器的實際傳輸流的存取)。
6.ATSC PSIP API(org.davic.atsc.psip)-ATSC SI和PSI數(shù)據(jù)庫的接口(包括通過任選的高速緩沖存儲器的實際傳輸流的存取)。
7.媒體播放器API(org.davic.media)-Java媒體框架的擴展以簡化機頂盒。
8.DSM-CC U-U API(davic.dsmccuu)-執(zhí)行在ISO/IEC 13818-6中定義的DSM-CC-U-U API的子集。
§5.8.標準Java API1.個人Java-這個API是JDK 1.1 API的一個子集,由設(shè)計用于滿足聯(lián)網(wǎng)的嵌入式應(yīng)用程序的要求的少數(shù)新API補充。在JDK 1.1之后引出的Java API將不會自動成為個人Java API的一部分。新的API在被添加到個人Java之前將被審查和評估其適合程度。
包含在個人Java中的JDK 1.1包是java.appletjava.awtjava.awt.datatransferjava.awt.eventjava.awt.imagejava.awt.peerjava.beansjava.iojava.langjava.lang.reflectjava.netjava.util2.Java文本API-支持國際化。
3.Java安全API是用于開發(fā)者的一個框架,以便容易且安全地把安全功能包括在它們的JAVA小程序和應(yīng)用中。這個功能包括使用數(shù)字簽名、加密和授權(quán)的加密術(shù)。
4.Java商務(wù)API將帶給網(wǎng)絡(luò)以安全購買和財務(wù)管理。Java錢包是初始元件,它定義和執(zhí)行客戶端的貸記卡、借記卡和電子現(xiàn)金事務(wù)的框架。
5.Java媒體框架(JMF)規(guī)定統(tǒng)一體系結(jié)構(gòu),用以傳遞協(xié)議和對媒體播放器、Java媒體捕獲和Java媒體會議的接口進行編程。JMF將被公布為三個API。首先公布Java媒體播放器;Java媒體捕獲和Java媒體會議API將在隨后被公布。Java媒體播放器是一個用以同步、控制、處理和表示包括視頻和音頻的壓縮流化和定時存儲的媒體的API。
6.Java RMI(包括CORBA)-支持CORBA的面向?qū)ο蟮姆植际教幚鞟PI。
§6機頂盒的軟件體系結(jié)構(gòu)圖10示出了根據(jù)本發(fā)明的機頂盒軟件體系結(jié)構(gòu)的框架。
體系結(jié)構(gòu)1000對應(yīng)于圖2的體系結(jié)構(gòu)200,但進一步提供了每層的細節(jié)和實例。
在層210中的設(shè)備驅(qū)動程序的核心模塊通常對應(yīng)于圖9中的分類。
§7.與開放電纜API的關(guān)系以下各節(jié)概述了當(dāng)前的開放電纜API的分類。
§7.1.操作系統(tǒng)<->網(wǎng)絡(luò)API網(wǎng)絡(luò)協(xié)議用在ASB的所有層中,以便與其它客戶、應(yīng)用和服務(wù)器進行通信。盡管應(yīng)用也使用網(wǎng)絡(luò)協(xié)議,但它們中的很多實際上是OS執(zhí)行的網(wǎng)絡(luò)堆棧,稱作經(jīng)過OS<->應(yīng)用API。專用于處理應(yīng)用層客戶服務(wù)器的問題的協(xié)議將涵蓋在客戶<->服務(wù)器一節(jié)中。
§7.1.1.視頻和數(shù)據(jù)網(wǎng)絡(luò)/傳送協(xié)議這些協(xié)議用于網(wǎng)絡(luò)包路由選擇、連接建立、控制和拆卸(teardown)。行業(yè)公開標準是用于面向連接傳送的TCP,用于非連接實時業(yè)務(wù)傳送的UDP,和用于包路由選擇的IP。RSVP用于網(wǎng)絡(luò)帶寬和信道備用。MPEG-2顯然在視頻傳送中受到青睞。
§7.1.2.會話/表示協(xié)議這些協(xié)議用于會話維護,并用以向應(yīng)用程序提供用于從內(nèi)容服務(wù)器請求和接收數(shù)據(jù)的公共過程。FTP用于文件傳送、HTTP用于WWW存取和HTML傳輸,NNTP用于新聞服務(wù)器存取,而SMTP和IMAP用于電子郵件。但沒有用于交談的標準。
§7.1.3.目錄服務(wù)協(xié)議目錄是大部分只讀的分布式數(shù)據(jù)庫,設(shè)計用于屬性檢查以定位、授權(quán)和更新網(wǎng)絡(luò)對象。作為TCP/IP網(wǎng)絡(luò)的標準目錄而快速出現(xiàn)的LDAP是X.500的更復(fù)雜目錄存取協(xié)議的輕便版本。LDAP已經(jīng)被超過40個主要軟件廠商采用,并且支持與存取無關(guān)的數(shù)據(jù)觀看、分層存儲、多存儲方案、豐富存取控制、多種數(shù)據(jù)庫類型和實例,以及網(wǎng)絡(luò)復(fù)制。
§7.1.4.數(shù)據(jù)鏈接、物理、MAC層協(xié)議這些API控制電纜線路設(shè)備的數(shù)據(jù)流的調(diào)制、編碼和管理。
§7.1.5.網(wǎng)絡(luò)加密協(xié)議這些協(xié)議用于加密和解密視頻、數(shù)據(jù)和交易方案。
§7.1.6多用戶/網(wǎng)絡(luò)廣播協(xié)議是在網(wǎng)絡(luò)間有效地廣播數(shù)據(jù)流所需要的。
§7.2.OS<->應(yīng)用API操作系統(tǒng)向應(yīng)用程序提供兩組關(guān)鍵服務(wù),它們允許這些應(yīng)用在系統(tǒng)的頂部實施。諸如調(diào)度、虛擬存儲、多線程等的基本OS服務(wù)是提供給幾乎所有應(yīng)用的基本服務(wù),而不需要程序員一方太多的工作量。用于這些服務(wù)的API大部分不可見。另一方面,OS標準庫是預(yù)定的代碼模塊,當(dāng)執(zhí)行OS支持的功能時則促使應(yīng)用程序使用該模塊。例如,網(wǎng)絡(luò)應(yīng)用被鼓勵使用OS的網(wǎng)絡(luò)庫,幾乎所有的應(yīng)用都被鼓勵使用OS的GUI庫,如此等等。實質(zhì)上,標準庫用于維護一致性,防止復(fù)制努力和加速開發(fā)。有時,出于審美原因或為了優(yōu)化代碼,應(yīng)用將忽略某些庫。
§7.2.1.應(yīng)用服務(wù)和庫這些API控制機頂盒的心臟。本機應(yīng)用(專門為ASB寫入的應(yīng)用,要求最大的性能和硬件交互)將根據(jù)通過這些API提供的OS服務(wù)和庫來執(zhí)行。
§7.2.2.計算機圖形這些API控制2D和3D對象的畫圖和再現(xiàn)。應(yīng)用設(shè)計者使用它們來簡化圖形功能。它們也用于執(zhí)行圖形用戶接口并且為應(yīng)用程序打開工具箱的窗口。
§7.2.3.遠程執(zhí)行環(huán)境/虛擬機允許存儲在網(wǎng)絡(luò)上的應(yīng)用被下載、執(zhí)行和丟棄。封裝運行時間環(huán)境、安全模型和對象模型。目前的競爭對手是與平臺無關(guān)的Java和Windows專用的ActiveX。腳本包括JavaScript和VBScript。
§7.3.操作系統(tǒng)<->硬件API通常稱作設(shè)備驅(qū)動程序的這些API允許操作系統(tǒng)控制各種硬件。它們通常由設(shè)備制造商在軟件中執(zhí)行,設(shè)備制造商通過操作系統(tǒng)廠商提供的良好定義的設(shè)備驅(qū)動程序的體系結(jié)構(gòu)API將它們插入操作系統(tǒng)中。對于良好定義的設(shè)備目錄來說,操作系統(tǒng)廠商有時提供整個設(shè)備分類的通用設(shè)備驅(qū)動程序。這個通用驅(qū)動程序在制造商的驅(qū)動程序不可用時可提供最低的公用標準(denominator)的功能,即Macintosh OS為所有的激光打印機提供通用激光寫驅(qū)動程序,但具有其自己可用驅(qū)動程序的打印機可利用廠商/模型專用特征。自動識別設(shè)備并裝入適當(dāng)?shù)尿?qū)動程序的系統(tǒng)被分類為即插即用。
§7.3.1.硬件抽象層(HAL)APIHAL把硬件與OS分離,并且使OS在支持HAL的任意平臺間移植。
§7.3.2.注冊API本地快速RAM存儲器的存儲格式和控制。
§7.4.操作系統(tǒng)<->操作系統(tǒng)API這些API在與虛擬機中的情況一樣的一個OS在另一個OS的頂部執(zhí)行時或兩個OS彼此通信時使用。后一種情況很少見,并且通常通過網(wǎng)絡(luò)協(xié)議進行處理,但一些部件和對象模型允許分布的對象在OS間通信。
§7.4.1.遠程執(zhí)行環(huán)境/虛擬機(VM)鏈接到OS在現(xiàn)有RTOS上控制虛擬機的實施方案的細節(jié)。如果專用VM被實施,或者如果公開VM利用與OS的專門鏈接來實施,則對于VM的可移植性來說是重要的。
§7.4.2.分布式對象模型允許應(yīng)用程序以公用對象格式存儲并與其它連網(wǎng)應(yīng)用程序交換數(shù)據(jù)。競爭對手是微軟的分布式部件對象模型(DCOM)和JavaBeans/CORBA(公用對象請求代理體系結(jié)構(gòu))。遠程過程呼叫裝置(ONC、DCE)也在這個API之內(nèi)。
§7.5.客戶<->服務(wù)器API客戶和服務(wù)器常常通過標準連網(wǎng)協(xié)議傳送應(yīng)用程序數(shù)據(jù),但遠程客戶管理、授權(quán)、軟件下載和更新將通過特定的客戶-服務(wù)器API處理。這些API一般往往是閉合且分裂的,這是由于大量的潛在組合和問題所引起的。
§7.5.1.網(wǎng)絡(luò)管理所有網(wǎng)絡(luò)元素的遠程網(wǎng)絡(luò)管理。
§7.5.2.軟件管理和更新控制軟件下載和模塊裝入程序的API。
§7.5.3.網(wǎng)絡(luò)/遠程文件系統(tǒng)控制文件存儲和檢索方法§7.5.4.數(shù)字證書控制用戶、廠商和產(chǎn)品的授權(quán)。
§7.5.5.日歷服務(wù)器協(xié)議確定用戶確定日期和調(diào)度功能的存儲和交互格式。
§7.5.6.同步協(xié)議時鐘同步和定時所需。
§7.5.7.使用數(shù)據(jù)收集API定義使用數(shù)據(jù)收集、存儲和傳輸?shù)姆椒ê透袷健?br>
§7.5.8.計費系統(tǒng)API定義對數(shù)據(jù)收集、存儲和傳輸計費的方法和格式。
§7.6.應(yīng)用<->文件API應(yīng)用使用特定格式存儲和檢索它們使用的數(shù)據(jù)。除了少數(shù)高可見性格式(ASCII,HTML)例外,這些格式在本質(zhì)上是閉合且專用的。除了只支持靜態(tài)數(shù)據(jù)外,一些應(yīng)用還支持插入代碼模塊的存儲、檢索和執(zhí)行,并且釋放允許第三方廠商構(gòu)建這些插件的API。
§7.6.1.文本文檔的存儲格式純文本文檔的存儲格式。
§7.6.2.超鏈接文檔的存儲格式豐富超鏈接文本的存儲格式§7.6.3.圖象存儲格式圖象的壓縮格式。
§7.6.4. 3D圖形文檔的存儲格式3D數(shù)據(jù)的壓縮格式。
§7.6.5.視頻片斷的存儲格式流式和非流式視頻片斷的編碼。
§7.6.6.音頻文檔的存儲格式聲音和音樂的編碼。
§7.6.7.動畫文檔的存儲格式動畫編碼。
§7.6.8.網(wǎng)絡(luò)/視頻組合格式定義用于把基于網(wǎng)絡(luò)的內(nèi)容與傳統(tǒng)電視節(jié)目組合在一起的庫和方法。
例子包括超鏈接廣告、按鈕條和斷續(xù)器重疊、虛擬網(wǎng)絡(luò)頻道等。
§7.6.9.個人信息存儲用戶識別信息、優(yōu)先級和存取控制信息的存儲。
§7.7.客戶<->內(nèi)容API這組API控制從各類服務(wù)器到客戶的內(nèi)容的服務(wù)和傳遞。它實際上是客戶-服務(wù)器API的子集,但只是被明顯地提及,這是因為一些廠商可能會努力通過要求專用服務(wù)器來分布內(nèi)容而實現(xiàn)鎖定。
§7.7.1.網(wǎng)絡(luò)數(shù)據(jù)服務(wù)適合于網(wǎng)絡(luò)內(nèi)容的格式。除了標準HTTP以外,一些網(wǎng)絡(luò)服務(wù)器可使用專用服務(wù)方法(即,現(xiàn)用服務(wù)器網(wǎng)頁(Active Server Pages))。
§7.7.2.視頻數(shù)據(jù)服務(wù)適合于視頻內(nèi)容的格式。
§7.7.3.組合數(shù)據(jù)服務(wù)組合的網(wǎng)絡(luò)/數(shù)據(jù)內(nèi)容的服務(wù)和協(xié)調(diào)。
§7.8.內(nèi)容<->存取API這組API控制從各類服務(wù)器到客戶的內(nèi)容的服務(wù)和傳遞。它實際上是客戶-服務(wù)器API的一個子集,但只是被明顯地提及,這是因為一些廠商可能會努力通過要求專用服務(wù)器來分布內(nèi)容而實現(xiàn)鎖定。
§7.8.1.視頻存取控制視頻流的存取控制和加密。
§7.8.2.數(shù)據(jù)存取控制數(shù)據(jù)內(nèi)容傳輸?shù)氖跈?quán)。
§7.9.瀏覽器<->常駐引擎API本質(zhì)上并不真正是API的一個獨立子集,瀏覽器<->常駐引擎交互作用實際上是OS<->應(yīng)用的一個子目錄,并且是明確表示出來的,這是由于其策略的重要性和大部分瀏覽器廠商把這種API包含進了它們的產(chǎn)品中的事實而引起的。在一個良好設(shè)計的操作系統(tǒng)中,常駐HTML、VRML、Java和高速緩存引擎是OS提供給所有感興趣的應(yīng)用的服務(wù)。但是,大多數(shù)瀏覽器廠商將這些重要的引擎捆綁到瀏覽器中,從而隱蔽和控制這些重要的API,即使是在它們應(yīng)當(dāng)被明顯露出的情況下。
§7.9.1.顯式HTML引擎控制一旦HTML再現(xiàn)引擎與瀏覽器分離,則控制存取和使用它。另外,如果使用了專用格式,OS供應(yīng)商就應(yīng)當(dāng)提供所使用的API的資料,并把權(quán)限永久提供給這些免費的API。
§7.9.2.顯式高速緩沖存儲器控制一旦高速緩存引擎與瀏覽器分離,則控制存取和使用它。
因此可以看出,本發(fā)明提供了一種機頂盒軟件體系結(jié)構(gòu),它允許考慮與操作系統(tǒng)和硬件無關(guān)的機頂盒應(yīng)用程序和中件軟件的功能。
本發(fā)明可支持各種功能,如多用戶,資源的安全控制存取,應(yīng)用程序下載、注冊、啟動、停止和監(jiān)控,資源下載、注冊、啟動、停止和監(jiān)控,音頻、視頻、數(shù)據(jù)表示的管理。
盡管本發(fā)明是結(jié)合各種特定實施例進行描述的,但本專業(yè)技術(shù)人員應(yīng)當(dāng)理解,在不背離權(quán)利要求書中所述的本發(fā)明范圍和精神的情況下可以進行大量的適應(yīng)和改進。
例如,盡管本文已經(jīng)討論了各種語法元素,但應(yīng)當(dāng)指出,它們僅僅是實例而已,任何語法都是可以使用的。
而且,本發(fā)明實際上適用于任意類型的網(wǎng)絡(luò),包括有線或衛(wèi)星電視寬帶通信網(wǎng)、局域網(wǎng)(LAN)、城域網(wǎng)(MAN)、廣域網(wǎng)(WAN)、互聯(lián)網(wǎng)、內(nèi)部網(wǎng)、和因特網(wǎng),或者是它們的組合。
權(quán)利要求
1.一種具有軟件的電視機頂盒終端,包括一個計算機可讀媒體,具有計算機程序代碼裝置;和一個用于執(zhí)行所述計算機程序代碼裝置以執(zhí)行分層軟件體系結(jié)構(gòu)的裝置,其中一個應(yīng)用層允許用戶與該終端交互作用;一個中件層通過提供應(yīng)用程序接口(API)支持應(yīng)用層;一個操作系統(tǒng)層支持中件層;一個硬件層支持操作系統(tǒng)層;以及所述分層軟件體系結(jié)構(gòu)允許與操作系統(tǒng)層和硬件層無關(guān)的應(yīng)用層和中件層的功能配置。
2.根據(jù)權(quán)利要求1的終端,其中該分層軟件體系結(jié)構(gòu)包括機頂盒管理層,該管理層通過配置該終端的管理服務(wù)來支持應(yīng)用層。
3.根據(jù)權(quán)利要求2的終端,其中所述管理服務(wù)至少包括應(yīng)用、用戶、資源和表示管理之一。
4.根據(jù)權(quán)利要求2的終端,其中該機頂盒管理層執(zhí)行一個狀態(tài)信息模塊以指定該終端的資源狀態(tài)。
5.根據(jù)權(quán)利要求4的終端,其中所述狀態(tài)信息模塊基于ITU-T X.731標準。
6.根據(jù)權(quán)利要求1的終端,還包括一個用于提供可配置功能的應(yīng)用程序接口(API)。
7.根據(jù)權(quán)利要求6的終端,其中所述API使所述終端能夠支持多個用戶。
8.根據(jù)權(quán)利要求6的終端,其中所述API使所述終端能夠安全控制存取資源。
9.根據(jù)權(quán)利要求6的終端,其中其中所述API使所述終端能夠下載、注冊、啟動、停止和監(jiān)視應(yīng)用層的應(yīng)用程序。
10.根據(jù)權(quán)利要求6的終端,其中所述API使所述終端能夠管理音頻、視頻和/或其它數(shù)據(jù)表示。
11.根據(jù)權(quán)利要求1的終端,還至少包括以下之一一個機頂盒管理器;一個表示管理器;一個應(yīng)用管理器;一個用戶管理器;一個資源管理器;一個機頂盒代理;和一個節(jié)目觀看助手。
12.一種用于執(zhí)行電視機頂盒終端的分層軟件體系結(jié)構(gòu)的方法,包括的步驟是提供一個計算機可讀媒體,它具有計算機程序代碼裝置;和執(zhí)行所述計算機程序代碼裝置以執(zhí)行分層軟件體系結(jié)構(gòu),其中一個應(yīng)用層允許用戶與該終端交互作用;一個中件層通過提供應(yīng)用程序接口(API)支持應(yīng)用層;一個操作系統(tǒng)層支持中件層;一個硬件層支持操作系統(tǒng)層;以及所述分層軟件體系結(jié)構(gòu)允許與操作系統(tǒng)層和硬件層無關(guān)的應(yīng)用層和中件層的功能配置。
13.根據(jù)權(quán)利要求12的方法,其中該分層軟件體系結(jié)構(gòu)包括一個機頂盒管理層,它通過配置該方法的管理服務(wù)來支持應(yīng)用層。
14.根據(jù)權(quán)利要求13的方法,其中所述管理服務(wù)至少包括應(yīng)用、用戶、資源和表示管理之一。
15.根據(jù)權(quán)利要求13的方法,其中該機頂盒管理層執(zhí)行一個狀態(tài)信息模塊以指定該方法的資源狀態(tài)。
16.根據(jù)權(quán)利要求15的方法,其中所述狀態(tài)信息模塊基于ITU-T X.731標準。
17.根據(jù)權(quán)利要求12的方法,其中所述分層軟件體系結(jié)構(gòu)通過提供可配置功能來提供應(yīng)用程序接口(API)。
18.根據(jù)權(quán)利要求17的方法,其中所述API能夠支持多個用戶。
19.根據(jù)權(quán)利要求17的方法,其中所述API能夠確保資源的控制存取。
20.根據(jù)權(quán)利要求17的方法,其中所述API能夠下載、注冊、啟動、停止和監(jiān)控應(yīng)用層的應(yīng)用程序。
21.根據(jù)權(quán)利要求17的方法,其中所述API能夠管理音頻、視頻和/或其它數(shù)據(jù)表示。
22.根據(jù)權(quán)利要求12的方法,其中在所述分層軟件體系結(jié)構(gòu)中至少提供以下之一一個機頂盒管理器;一個表示管理器;一個應(yīng)用管理器;一個用戶管理器;一個資源管理器;一個機頂盒代理;和一個節(jié)目觀看助手。
全文摘要
一種軟機頂盒的軟件體系結(jié)構(gòu)框架。機頂盒軟件體系結(jié)構(gòu)(200,1000)允許考慮與操作系統(tǒng)(110)和硬件(100)無關(guān)的機頂盒應(yīng)用和中件軟件功能(120)。本發(fā)明可支持各種功能,如多用戶,資源的安全控制存取,應(yīng)用程序下載、注冊、啟動、停止和監(jiān)控,資源下載、注冊、啟動、停止和監(jiān)控,音頻、視頻和數(shù)據(jù)表示的管理。
文檔編號H04N5/00GK1326638SQ99813491
公開日2001年12月12日 申請日期1999年9月22日 優(yōu)先權(quán)日1998年10月19日
發(fā)明者布拉尼斯拉夫·N·梅安德茲亞 申請人:通用儀器公司