專利名稱:音視頻重放的制作方法
技術領域:
本發明涉及一種輸出記錄的音視頻內容、特別是與例如提供交互式內容的應用程序相組合的音視頻內容的方法。
背景技術:
交互式電視需要傳送音視頻內容以及能夠響應用戶輸入的應用程序。用于提供和回放交互式電視的開放式協議對于交互式電視的廣泛采用至關重要。
一個標準是多媒體家用平臺(MHP),它涉及交互式廣播素材。在這個已被世界上數個國家引入的標準中,可以和音視頻內容一起廣播復雜的應用程序。廣播應用程序信息表來通知MHP應用程序。然而,該標準并不能解決把此類內容存儲在諸如數字多功能盤(DVD)的可移動媒體中的問題。
MHP并不是唯一一種可以為應用程序提供廣播內容的交互式電視系統。其它系統包括開放式電視(OpenTV)、傳媒高速設備(MediaHighway)以及MHEG-5。
一個最近的標準是數字存儲媒體-命令和控制(DSM-CC)標準,其定義了消息和會話標準。
當在適當的接收器上接收到被廣播的交互式電視傳輸時,搜索輸入傳輸流中的應用程序數據,并且可以將應用程序數據存儲在存儲器中。當用戶在他或她的遙控器或者其它數據輸入裝置上按下適當的按鈕時,開始運行應用程序。在被轉讓給OpenTV有限公司的美國專利US6427238中描述了可能會發生的緩存的實例。
然而,當傳統的DVD視頻記錄器記錄這種素材時,只能夠回放所傳送的MHP流的音視頻內容,而不能回放附加的應用程序,例如,實現交互式功能的應用程序。因而需要一種方式來回放所記錄的交互式電視傳輸。
發明內容
根據本發明,提供了一種方法,輸出在一個存儲有音視頻內容的可移動存儲介質上所存儲的交互式音視頻內容、一個控制應用程序以及在預定交互式電視平臺獨立標準中的至少一個附加的鏈接應用程序,該方法包括步驟啟動存儲在該可移動存儲介質上的一個控制應用程序;從該控制應用程序調用音視頻顯示應用程序;使用該音視頻顯示應用程序從該可移動存儲介質讀取音視頻數據并且根據其內容提供音視頻顯示;從該控制應用程序調用至少一個鏈接應用程序以便執行所述或者每一個鏈接應用程序;其中存儲在該可移動存儲介質上的控制應用程序實現獨立于交互式電視預定平臺的標準的部分功能,包括該獨立于預定交互式電視平臺的標準的一個應用編程接口的至少一部分;并且在執行時該至少一個鏈接應用程序調用該獨立于預定平臺的標準的該應用編程接口。
以這樣的方式,即便當播放器自身不能充分實現所述獨立于平臺的標準,或者甚至根本不能實現該標準時,播放器可以再現交互式音視頻內容。
注意,控制應用程序可以根據需要以任何順序啟動該音視頻顯示應用程序和所述至少一個鏈接應用程序。
優選地,以獨立于計算機平臺的標準來編寫所述控制應用程序,該控制應用程序用于實現獨立于該預定的交互式電視平臺的標準的功能的至少一部分。前一種標準是可以由播放器解釋的Java字節代碼或者其它代碼。
為了識別鏈接應用程序,可以提供一個應用程序信息表。該控制應用程序可以讀取存儲在可移動存儲介質上的應用程序信息表,并且根據該應用程序信息表中的信息來調用至少一個鏈接應用程序。
在一個優選方案中,該至少一個鏈接應用程序是MHP應用程序,并且該控制應用程序實現該MHP應用編程接口的至少一部分。該可移動存儲介質可以是DVD盤并且該音視頻顯示應用程序可以是一個DVD視頻閱讀器,用于從所述盤讀取DVD視頻內容。
盡管DVD播放器也許不具有實現諸如MHP的廣播應用格式的功能,但是存儲在該盤上的控制應用程序可以提供必須的附加功能。
優選地,該音視頻顯示應用程序判斷何時產生規定的事件,并且當產生一個或者多個該規定事件時,從該音視頻顯示應用調用回到該控制應用程序。這樣,控制應用程序可以在音視頻呈現的特定時間根據需要來啟動或者停止鏈接應用程序。
另一方面,本發明涉及一種計算機程序,用于使播放器執行以上給出的方法步驟。
本發明還涉及一種可移動存儲介質,包括音視頻內容;獨立于預定平臺的標準中的應用程序代碼;以及用于調用該應用程序代碼并且用于調用一個虛擬機來顯示所述音視頻內容的控制應用程序;其中該可移動存儲介質包括用于該獨立于預定平臺的標準的應用編程接口的至少一部分,這樣應用程序代碼調用該部分的應用編程接口來實施該獨立于平臺的標準的至少某些功能。
現在將純粹以示例的方式并借助于附圖來描述本發明的一個優選
具體實施例方式
本發明從原理上涉及所記錄的交互式TV傳輸的回放。
在一個具體的實例中,在一個擴展DVD回放讀取器上執行所述回放,以下將對其進行闡述。
DVD視頻記錄器/播放器2包括一個DVD讀取器4,用于讀取可移動存儲介質,其在形式上可以是插入到該記錄器/播放器2中的DVD盤6。該DVD視頻記錄器/播放器2還包括一個處理器10和存儲器12。該DVD視頻記錄器/播放器還可以具有多個其它部件,例如在是獨立的記錄器/播放器的情形下可以具有遙控器14。否則,如果在常規的個人計算機上實現該DVD視頻記錄器/播放器2,則可以用眾所周知的鍵盤和鼠標或者其它數據輸入系統來代替遙控器14。
DVD視頻記錄器/播放器2被連接到諸如常規電視機的音視頻再現系統16上。如本領域技術人員所熟知的,該音視頻再現系統可能遠比一個簡單的電視機復雜,并且包括環繞聲解碼器、多路放大器以及許多其它部件。
該存儲器12包括代碼18用于在該DVD記錄器/播放器2中實現獨立于平臺的虛擬機。“虛擬機”意味著能夠實現標準指令的系統,以允許以獨立于平臺的方式來實現程序。在所描述的具體實例中,虛擬機是Java虛擬機18,其允許DVD視頻記錄器/播放器執行Java字節代碼。例如,MHP應用程序使用Java字節代碼。然而,如本領域技術人員所了解的,也存在其它獨立于平臺的標準,例如OpenTV應用使用o代碼(o-code),并且可以替代地或者附加地使用這些代碼。
存儲器12還包括實現DVD-V虛擬機的代碼20。大部分的這種功能是標準的,并且允許DVD視頻記錄器/播放器2簡單地回放音視頻DVD視頻內容,利用遙控器14來訪問菜單,并且執行DVD視頻記錄器/播放器的所有標準功能。
在優選實施例中,用該獨立于平臺的虛擬機18的獨立于平臺的代碼來實現DVD VM 20。這在DVD VM 20和直接運行于該獨立于平臺的虛擬機18中的外部應用之間產生通信。然而,本領域技術人員將理解怎樣在運行于同一DVD記錄器/播放器的不同應用程序上的進程間實現通信,因此DVD VM不必運行于同一獨立于平臺的虛擬機18上。
該DVD VM 20包括應用編程接口(API)30,其賦予DVD視頻記錄器/播放器2增強的功能。圖2示例了DVD VM API 30的組件,它們可以被分開調用來訪問該DVD VM 20的功能。
該API暴露了該DVD視頻數據和該虛擬機的結構因為對API的調用可以被用于訪問數據,所述數據包括單元、視頻對象以及DVD視頻數據的各種其它標準部分。API調用可以被用于執行以下功能(1)啟動32該VM,即啟動DVD視頻的解碼;(2)停止34VM;(3)向VM登記36規定的事件,例如DVD視頻數據中的特定位置,諸如正在訪問的特定單元,或者在特定菜單中選擇的特定選項;并且(4)改變要由VM顯示的菜單38。
可以理解的是,這并不是一個詳盡的清單,如果需要也可以提供其它功能,例如除了簡單地改變菜單之外還可以提供其它方式來改變數據結構。
發生規定的事件時,DVD VM 20還能將處理返回到調用該DVD VMAPI 30的程序。通常,這些是由調用先前向DVD VM API 30登記的事件,但是其它事件也可以引起回調,例如當達到該DVD視頻數據的結尾時。
在圖3中示意性地示出了含有來自MHP流的記錄信息的DVD盤6。
該DVD包括視頻數據22并且還附帶地包括具有標準名字的Java歸檔文件(.jar文件)24,例如start.jar,其存儲在該DVD的UDF/ISO文件系統中。該歸檔文件存儲許多文件,包括清單文件(manifestfile)26,通常在Java歸檔文件中被稱為META_INF/MANIFEST.MF,其包括自動啟動控制應用程序文件28的位置。諸如控制應用程序的應用程序因而被存儲在獨立于計算機標準平臺的代碼中,在此是Java字節代碼。也可以使用其它適當的獨立于計算機標準平臺的代碼,只要它們能被播放器2解釋。
該DVD還存儲一個或者多個MHP應用程序29,即在分級文件系統中的代碼和數據。這些代碼提供了附加功能,特別是可以被用于提供交互式TV功能。在具體的實施例中,該MHP應用程序被記錄為數字存儲媒體-命令和控制DMS-CC消息格式。
這些檔案文件還包括應用程序信息表(AIT)27的表示,如在MHP廣播環境中被用于指示一個MHP應用程序。該AIT識別MHP應用程序29和啟動參數。該AIT可以被包含在Java歸檔文件中的控制應用程序28解釋。
如附圖4所示例的,該控制應用程序28控制所記錄的交互式音視頻呈現的回放,即音視頻內容以及相關應用程序的回放。它調用DVD VM20來顯示音視頻內容,并且在需要時根據需要來調用MHP應用程序。該DVD VM 20依次從盤中獲得音視頻數據22并且,該(或者每個)MHP應用程序29調用MHP API 40來實現MHP功能。
在具體的實施例中,實現用于訪問MHP功能的MHP API 40的代碼也被存儲在盤上,便利地以Java字節代碼或者以其它機器可讀格式存儲。
在將DVD盤6插入到讀取器中的時候,Java歸檔文件24被解壓縮,并且Jar清單用于利用適當的參數來運行該控制應用程序28。該控制應用程序28在DVD視頻記錄器/播放器2中在Java虛擬機18上運行。
控制應用程序28調用DVD視頻API來登記事件。具體而言,當控制應用程序28需要采取行動例如來開始或者停止該MHP應用程序29之一時,它調用DVD視頻API將這登記為事件發生時機。
如可以理解的,許多MHP應用程序是自動啟動的應用程序,并且因此該控制應用程序28將按照AIT 27中的指示啟動每個自動啟動MHP應用程序29的一個實例。
在本例中的MHP應用程序運行在Java虛擬機18上,但是需要附加的功能。為了提供這種功能,在運行時MHP應用程序29將在需要時根據需要來調用MHP API 40。
在這些初始步驟之后,控制應用程序28然后調用DVD視頻API,啟動DVD VM 20回放音視頻數據22。當DVD VM 20經過登記事件之一時,控制從該DVD VM 20被傳遞回控制應用程序28,以便允許該控制應用程序處理該事件。
具體而言,這些事件中的一些將啟動MHP應用程序29。例如,最初廣播的MHP信號可以在音視頻圖像的特定點處包括控制應用程序。這通過安排該控制應用程序將所述音視頻呈現中的特定點登記為一個事件來在記錄版本中重現。當達到該點時,DVD VM 20把控制傳遞給該控制應用程序28,后者啟動該MHP應用程序29,由此獲得初始MHP廣播的效果。
其它事件可以指示MHP應用程序文件系統中的版本改變。例如,如果在原始廣播期間廣播文件系統中的一個文件改變了版本,這將會在記錄版本中由音視頻數據流中的一個事件來重現。當達到該事件時,DVD VM 20把控制交還給控制應用程序,后者更新其針對MHP應用程序文件系統的解碼器,這樣MHP應用程序可以看到該文件的正確版本。
在某些情形下,期望停止該DVD VM,并且這可以由一個從該控制應用程序28到DVD VM API 30的適當調用來執行。在其它情形下,希望DVD VM 20只是繼續下去。這在MHP應用程序29的控制下是可以獲得的,所述MHP應用程序29可以通過API 40來調用該控制應用程序28,以使得該控制應用程序根據MHP標準來處理該請求,然后其要求控制應用程序28使用正確的參數來調用DVD VM API 30,以便啟動或者停止或者在其他情形下控制該音視頻回放。
在處理一個事件之后,控制可以傳遞回該DVD VM 20,以便繼續DVD視頻回放。該MHP應用程序29可以并行運行,例如等待用戶輸入。在接收到這種用戶輸入時,該MHP應用程序則可以調用在控制應用程序28中實現的MHP API 40,來請求例如停止該音視頻回放,這是通過調用DVD VM API 30來完成的。
注意在備選實施方案中,在DVD盤6上所提供的功能的數量可以變化。具體而言,控制應用程序28需要能夠對DMS-CC數據的處理、對提供TV信息的DVB服務信息以及其它特性進行訪問。這一功能可以在存儲于DVD盤6上之上的控制應用程序28代碼中提供,或者在播放器2自身存儲的代碼中提供。例如,播放器2可以包括Java虛擬機和匹配個人基本配置文件(Personal Basic Profi1e)的API集合(一個Java 2微型版規范提供了基本的I/O和圖像API),其將實現MHP應用程序的大多數的圖形要求,但是將DSMCC以及SI處理留給控制應用程序28。在這種情形下,該MHP API 40的大部分功能可以由存儲在播放器上的代碼完成。然而,仍然在存儲于該盤上的代碼中提供DMS-CC功能和SI功能。
MHP API 40需要實現多個功能。和上面所討論的DSMCC API一樣,MHP需要其它API,例如提供TV節目信息的服務信息API,后者可以由控制應用程序28以各種方式仿真。例如,服務信息API可以解析記錄在音視頻流中的數據,或者只報告在開始記錄時創建的盤上的文件內容。
因而,控制應用程序28和播放器2一起提供一種MHP API 40,所述MHP應用程序29將其視為實現所有的MHP功能。
注意控制應用程序28轉而調用DVD VM 20,以便實現它提供給MHP應用程序29的部分功能。因而,控制應用程序進行工作,以模仿該MHP應用程序的廣播環境。
因而,提供交互式回放的功能是通過MHP應用程序、控制應用程序以及DVD VM的交互來提供的,三者通過DVD VM API和MHP API彼此進行訪問。
到目前為止,描述都集中在回放上,其構成了本發明的核心。首先,有眾多不同的可能來記錄音視頻數據,包括盤上的交互式TV應用程序。這并不是完全微不足道的任務,因為,應用程序所看到的文件與盤上的固定文件系統不同,表現在兩個重要方面。首先,文件可以隨著時間改變,文件的新版本可在任意時刻出現。其次,所看到的文件系統包含非目錄(non-directory)、非文件對象,這會引用流事件、媒體流或者時間基準。
有多種方案來解決這些問題。
在第一種方案中,文件系統僅作為UDF文件系統存儲,因為它在單個時間點上存在于播放器中。流對象被存儲在一個特殊的文件中,其在回放時被解碼。這種方案的優點是比較簡單,但是如可以看到的,由于所記錄的文件系統是固定的并且不隨時間改變,因而不能解決所有問題。因此,該方案不能對所有的應用情況起作用,特別是當可用的所記錄的應用程序隨時間變化時該方案不起作用。
在第二種方案中,DMSCC消息的整個廣播流被存儲在盤上,并且就像該流被廣播那樣被解碼。這在盤空間和解碼器成本方面非常浪費。
在第三種方案中,只存儲DSMCC消息的新版本,并且維持每個消息的有效期的數據庫。解碼器需要參考該數據庫,根據相對于該音視頻時間的當前時間來撤回合適的消息。
本發明旨在使用這些方案中的任意一種來回放所記錄的MHP。
本發明特別適用于組合的DVD/MHP記錄器/播放器,但是也可以適用于任何合適的記錄器/播放器。該DVD盤6可以被壓縮盤(CD)或者其它可以移動存儲介質所替代,這些存儲介質例如是閃存,其是任何特定應用程序所需要的。特別地,本發明可以用于實現組合的MHP/CD文件系統。
在以上的實例中,控制應用程序和鏈接應用程序都被編碼為相同的虛擬機標準(Java虛擬機)并且控制應用程序28僅僅通過API 40增加附加的功能。
在一個備選的實施例中,控制應用程序可能需要提供更多的支持。例如,一個有效表示的虛擬機可以支持仿真不同虛擬機環境的控制應用程序。
在第二個實施例中,MHEG-5應用程序29(在英國的“Freeview”廣播中使用)被存儲在盤上。Java控制應用程序28仿真完整的MHEG-5API運行時環境,并且鏈接MHEG-5應用程序被該控制應用程序逐指令地進行解釋。因而,在這種情形下,控制應用程序28用作一個完整的解釋器。
通過閱讀本公開,本領域技術人員將會理解其它的變形和修改。這些變形和修改包含了在音視頻播放器和廣播系統的設計、制造和使用中已知的、并且可以用來替換或者輔助此處所描述的特征的等價替換和其它特征。
盡管在本申請中權利要求闡明了特定特征的組合,應當理解的是本公開的范圍還包括任何新穎的特征或者此處公開的特征的任何新穎的組合,無論它們是明確的、隱含的還是這些特征的任何歸納,也不管它是否同本發明一樣可以解決所有相同的技術問題,或者解決這些技術問題中的一部分。本發明在此給出以下評論新的權利要求被表達為在本申請或者從它衍生的任何進一步的申請執行階段的任何此類特征和/或此類特征的組合。
具體而言,所描述的實施例涉及一個MHP系統,但是本領域技術人員可以明白,也存在其它標準并且可以使用這些備選的標準來實現本發明。
此外,盡管以上描述中引用了“控制應用程序28”作為單個應用程序,實際上該控制應用程序可以由多個在需要時可以根據需要加載的獨立程序和模塊構成。
權利要求
1.一種方法,從播放器(2)輸出在一個存儲有音視頻內容的可移動存儲介質上所存儲的交互式音視頻內容、一個控制應用程序以及獨立于預定交互式電視平臺的標準中的至少一個附加的鏈接應用程序,該方法包括步驟啟動存儲在該可移動存儲介質(6)上的控制應用程序(28);從該控制應用程序(28)調用音視頻顯示應用程序(20);使用該音視頻顯示應用程序(20)從該可移動存儲介質讀取音視頻數據并且根據其內容提供音視頻顯示;從該控制應用程序(28)調用至少一個鏈接應用程序(29)以執行所述或者每一個鏈接應用程序(29);其中存儲在可移動存儲介質(6)中的該控制應用程序(28)實現獨立于該交互式電視預定平臺的標準的至少部分功能,包括獨立于該預定平臺的標準的應用編程接口(40)的至少一部分;以及在執行時,所述至少一個鏈接應用程序(29)調用獨立于該預定平臺的標準的應用程序編程接口(40)。
2.權利要求1所述的方法,其中以獨立于計算機平臺的標準來編寫實現所述獨立于預定交互式平臺的標準至少部分功能的該控制應用程序(28)。
3.權利要求1或者2所述的方法,其中該控制應用程序(28)讀取存儲在可移動存儲介質(6)上的應用程序信息表(27)并且根據該應用程序信息表(27)中的信息來調用所述至少一個鏈接應用程序(29)。
4.前述任意一個權利要求所述的方法,還包括向音視頻顯示應用程序(20)登記規定的事件;以及當所述規定事件中的一個或者多個發生時,從所述音視頻顯示應用程序(20)回調到該控制應用程序(28)。
5.前述任意一個權利要求所述的方法,其中該獨立于預定交互式電視平臺的標準是MHP。
6.前述任意一個權利要求所述的方法,其中該盤是DVD盤并且所述音視頻顯示應用程序(20)是DVD視頻讀取器,用于從盤中讀取DVD視頻內容。
7.前述任意一個權利要求所述的方法,其中該控制應用程序(28)作為一個解釋器工作,用來解釋鏈接應用程序的代碼。
8.一種可移動存儲介質(6),包括音視頻內容(22);獨立于預定交互式電視平臺的標準中的應用程序代碼(29);以及控制應用程序(28),用于調用該應用程序代碼(29)并用于調用虛擬機(20)來顯示所述音視頻內容;其中控制應用程序(28)實現獨立于所述交互式電視預定平臺的標準的部分功能,包括獨立于該預定平臺的標準的應用編程接口(40)的至少一部分,這樣應用程序代碼(29)調用所述部分的應用編程接口(40)來實現所述獨立于交互式電視平臺的標準的至少一些功能。
9.權利要求8所述的可移動存儲介質(6),其中所述獨立于交互式電視平臺的標準是MHP。
10.權利要求8或者9所述的可移動存儲介質,其中所述可移動存儲介質(6)是DVD盤。
全文摘要
描述了一種回放音視頻內容以及相關的應用程序內容的方法,例如使用一個擴展DVD系統來回放包括交互式內容的MHP廣播內容。所述DVD盤包括MHP API的至少一部分以增強DVD播放器的能力。
文檔編號H04N7/173GK1788490SQ200480013025
公開日2006年6月14日 申請日期2004年5月10日 優先權日2003年5月15日
發明者A·S·R·阿斯萊, I·本杰斯, J·C·福斯特, R·J·豪德斯沃思 申請人:皇家飛利浦電子股份有限公司