專利名稱:用于執(zhí)行應用程序同步重放的重放裝置的制作方法
技術領域:
本發(fā)明屬于數(shù)字流和應用程序同步重放的技術領域。
背景技術:
應用程序同步重放是用于在重放皿或用于播放視頻的對1 置中運 行Java (注冊商標)應用程序的同時播放數(shù)字流的一項技術,并且屬于在 今后制造的消費品中將吸弓l大量關注的技術領域。用于同步的應用禾聘和 數(shù)字流以被稱為"標題"的重放為單位彼此相聯(lián)系。下面描述傳統(tǒng)的m
。傳統(tǒng)的m^文,由虛擬文件系統(tǒng)單元、模塊管理器、S^文單元和平
臺單元構成。
虛擬文件系統(tǒng)單元管理由重放,訪問的多個記錄介質,例如光記錄 介質(例如DVD-ROM, BI>ROM,在后面作為例子描述后者)和磁記錄 介質(例如硬盤),并且^M^也顯a些記錄介質斷己錄內容的包信息。
每^信息被稱為虛擬包,其在記錄于這些記錄介質上的l^流和應 用辦(在下文簡稱為"鵬辦")的,執(zhí)行中MH^,就如同它們實 際記錄在單"^中。
模塊管理器選擇多個標題中的一個作為當前標題。
重放單元從包信息所示的數(shù)字流中播放構成當前標題的數(shù)字流(即記 錄在光或磁記錄介質上)。
平臺單元從包信息所示的應用程序中運行構成當前標題的應用程序 (即記錄在光或磁記錄介質上)。
根據(jù)以上結構,記錄在不同記錄介質例如BD^ROM和5MJ:的數(shù)字流
和應用,可以作為單一 (虛擬)包,待,并且m^,倉嫩以標題為
5單位實,爐制。
以上結構中的標題不僅用于記錄在用于S^夂的BI>ROM上的數(shù)字流而 且用于記錄在5M上的數(shù)字流。由于硬盤是可重寫的記錄介質,因此標題 的組成要素可能通過S^文部分地被替換,例如當^頓新采集的數(shù)字流新生 成包信息時。
在很大禾號上認為這樣的替換弓胞的情7,隹以恢復例如在SJ文期間由
sm單元的異,作產(chǎn)生的視頻中斷。
如果s^文裝置中的mj文單刃頃序地檢驗例如用于重放的數(shù)據(jù)流和m^文
控制信息的要素的一致性,可以預期MilS5文部分地替換S^Mm。然而, 假設需要檢驗的信息類型互異,^M^單^it成了很大負擔。
為了絕對保證設備的穩(wěn)定操作,理想的是當在硬盤上的記錄內容中有 變化時重啟設備自身,就象當你安裝軟件時那樣。然而,假設在任何地方 動設備花費幾秒到幾併中的處理時間,這并不是用戶能輕松承擔的事瞎。
發(fā)明內容
本發(fā)明的目標是提供一種重放裝置,即使在重放對象中有變化時 所述重放裝置也能夠實現(xiàn)穩(wěn)定重放。
為了解決以上問題,本發(fā)明是一種結合應用程序播放數(shù)字流的重 放裝置,其包括包管理單元,用于根據(jù)合并管理信息通過合并記錄在 第一記錄介質和第二記錄介質上的文件所述包管理單元生成包信息, 和選擇單元,用于檢測來自包信息的多個可播放標題,并且選擇檢測 到的標題中的一個作為當前標題。當應用程序通過指定新合并管理信 息請求包管理單元更新合并管理信息之后,在更新包信息之前包管理 單元將從新指定合并管理信息引用的文件變?yōu)橹蛔x,并且在數(shù)字流重 放由于當前標題由選擇單元改變而停止時,包管理單元根據(jù)新指定的 合并管理信息通過組合記錄在第一和第二記錄介質上的文件生成新 包信息。
由于具有以上結構,本發(fā)明保證了在應用程序通過指定新合并管 理信息請求包管理單元更新合并管理信息的情況下,從新指定的合并 管理信息引用的文件的內容從提出更新請求的時間直到當前標題變化都未被改變,這是因為在更新包信息之前包管理單元將從新指定的 合并管理信息引用的文件設置為只讀。而且,通過在數(shù)字流重放由于 當前標題變化被停止時更新包信息,即使例如用于重放/執(zhí)行的數(shù)字 流或應用程序由于更新被替換也不會引起重放裝置的異常操作。
因而,由于可以通過動態(tài)地合并記錄在第一和第二兩個記錄介質 上的文件并且同時保證重放裝置的穩(wěn)定操作而實現(xiàn)重放控制,擴大了 電影作品的表達寬度。
在這里,包管理單元可以被配置成如果請求更新的應用程序的許
可標記(tag)中的信息指示應用程序已被分配更新包信息的權利, 則更新包信息,如果該信息指示未被分配更新的權利,則拒絕更新請 求并且執(zhí)行異常處理。
該結構能夠阻止未授權應用程序請求的包信息的更新。
圖l是系統(tǒng)圖2顯示了 BD-ROM 100的內部結構;
圖3系統(tǒng)地顯示了怎樣構造擴展名為"m2ts"的文件;
圖4顯示了PL信息的結構;
圖5顯示了 AVClip和PL之間的關系;
圖6顯示了使用四個Clip—Information一file一names的分批指定; 圖7顯示了 PLMark信息的內部結構; 圖8顯示了使用PLMarks的章節(jié)定義; 圖9顯示了 Subpath信息的內部結構;
圖10顯示了同步指定和SubClip時間軸上的重放間隔定義;
圖IIA顯示了被包含在檔案文件中的程序數(shù)據(jù);
圖11B顯示了類文件的內部結構;
圖12顯示了BD-J對象的內部結構;
圖13顯示了 INDEX.BDMV的內部結構;
圖14顯示了本地存儲器中的目錄結構;
圖15顯示了由存儲在本地存儲器中的PL信息定義的播放列表重放時間軸的類型;
圖16A顯示了存儲在BD-ROM上的AVClip和存儲在本地存儲 器中的Java應用程序和AVClip;
圖16B顯示了作為單一標題來對待的Java應用程序和 AVClip綱4;
圖17顯示了合并管理信息文件的典型內部結構;
圖18顯示了重放裝置的硬件配置;
圖19描繪了由硬件和存儲在指令ROM 21上的軟件組成的以層 狀結構重布置的元件;
圖20顯示了 Java虛擬機30的內部結構;
圖21顯示了由標題變化產(chǎn)生的狀態(tài)轉變;
圖22顯示了由虛擬文件系統(tǒng)單元38典型地產(chǎn)生虛擬包信息;
圖23A顯示了整個光盤的時間軸;
圖23B顯示了整個光盤的時間軸的結構;
圖24是由Java應用程序執(zhí)行的下載處理的流程圖25是更新"準備"過程的流程圖26是虛擬包"更新"過程的流程圖27是由模塊管理器執(zhí)行的處理的流程圖28是PL重放過程的流程圖29顯示了在標題變化期間怎樣更新虛擬包信息;
圖30顯示了將當前合并管理信息文件發(fā)送到服務器的Java應用 程序;
圖31顯示了下載內容文件、新合并管理信息文件和新簽名信息 文件的Java應用程序;
圖32顯示了向虛擬文件系統(tǒng)單元38提出更新請求的Java應用 程序;
圖33顯示了合并管理和簽名信息文件的替換,和內容文件的映
射;
圖34A是當標題調用之后暫停當前標題的重放時由重放控制引 擎執(zhí)行的處理的流程圖;圖34B是當所調用的標題的重放結束之后繼續(xù)重放原始標題時
由重放控制引擎執(zhí)行的處理的流程圖35顯示了實施方式3中的合并管理信息文件; 圖36顯示了關于實施方式3的Java應用程序,該應用程序請求
更新虛擬包;
圖37顯示了由使用合并管理信息文件的常駐應用程序向用戶顯 示的典型附加內容列表;
圖38是關于實施方式3的從BD-ROM的裝載直到重放的處理流 程的流程圖39顯示了當請求虛擬包更新時被指定的有效間隔; 圖40是關于實施方式4的從BD-ROM的裝載(或重放裝置的重 啟)直到重放的處理流程的流程圖41顯示了用于篩選虛擬包更新請求的許可請求文件;
圖42顯示了強加在用于合并的本地存儲器中的目錄上的訪問限
制;
圖43顯示了其生命周期被限制到單一標題的Java應用程序和其 生命周期持續(xù)多個標題的Java應用程序;
圖44顯示了在標題變化期間當更新虛擬包時在未綁定標題 (title-unbound)的應用程序上執(zhí)行的處理;
圖45是考慮未綁定標題的應用程序的標題變化處理的流程和
圖46是在INDEX.BDMV文件變化之后的虛擬包更新的流程圖。
具體實施例方式
實施例1
下面描述與本發(fā)明相關的記錄介質的實施例。首先,描述關于本發(fā)明
的m^裝置的實 w式中的一種使用形式。圖i顯示了關于本發(fā)明的重放
體的典型^頓形式。在圖1中,關于本發(fā)明的S^體是S^體200。
s^文體2oo用于據(jù)庭影^^統(tǒng)中衝共電影作品,戶;f^庭影院系統(tǒng)例
如由M5C^g200,,器30Q,和電視400鄉(xiāng)賊。
9關于本發(fā)明的重放裝置的典型使用形式如上所述。接著描述用于由關 于本發(fā)明的重放裝置進行重放的記錄介質。在給出的例子中,由關于本發(fā)
明的S^^S播放的記錄介質是BD"ROM100 (光記錄介質)。圖2顯示了
BD-ROM 100的內部結構。
在圖2中的第四層級顯示了 BD-ROM 100,而在第三層級顯示了
BI>ROM上的軌道。圖2中描繪的劫道由從BD-ROM的內圓周到外圓周的
軌道螺旋產(chǎn)生,其對于偵靦已經(jīng)被畫出。該軌道由導入?yún)^(qū)、巻區(qū)和導出區(qū)
會滅。圖2中的巻區(qū)具有由物鵬、文件系鄉(xiāng)媳和應用層鄉(xiāng)賊的層狀結構。
使用目;^構,BI>ROM的應用格式給出了圖2中的第一層級。BDMV
目錄方JO在BD"ROM中的第一層級的根目錄下。
INDEX.BDMV文件布置在BDMV目錄中,并且在BDMV目錄下存在
五行目錄,它們被稱為PLAYLIST目錄,CLIPINF目錄,STREAM目錄,
BDJA目錄,和BDBJ目錄。
STREAM目錄存儲形戯數(shù)字流的文件,艦展名"m2ts"分酉離
文件(00001,m2ts)。
在PLAYLIST目錄中存在擴展名為"mpls"的文件(00001.mpls)。 在CLIPINF目錄中雜擴展名為"clpi"的文件(OOOOl.clpO。 在BDJA目錄中存在擴展名為"jar"的文件(OOOOl.jar)。 在BDBJ目錄中存在擴展名為"bdbj"的文件(00001.bdbj)。 接著描腿些文件。 AVClip
首先描3^廣展名為"m2ts"的文件(00001.m2ts)。圖3系皿顯示了 怎樣構itT展名為"m2ts"的文件。i^t件存儲AVClip。 M31多路^fflTS 包構成AVClip (中間層級),通過將由多個視頻幀(圖片pjl, pj2, pj3)組 成的視頻流和由多傾頻幀會賊的魏流(上面第一層級)首先轉換成PES 包(上面第二層級),然后轉換成TS包(上面第三層級),并且以相同的方 淵^幕圖形顯示(P圖形或PG)流(下面第一層級)和對話交互圖形(I 圖形或IG)流(下面第一層級)轉換成TS包(下面第三層級)來產(chǎn)^B/f 述TS包。
除了如圖3中戶;f^M31多路OT獲得的AVClip之外,也存在不是由多路復用產(chǎn)生的AVClip。這些被稱為SubClip,并且包括構成:^員流、圖形流 或文本^^t (TextST流)等的AVClip。 剪輯信息
擴展名為"dpi"的文件(OOOOl.clpi)是與AVClip對應的一條離信 息。剪輯信息是管理信息,其包含顯示GOP的^g的EP—map,和諸如 AVClip中的流的編碼格式、幀頻、比特 [1^|)摔等的信息。
PL信息
擴展名為"mpls"的文件(00001.mpls)存儲播放列表(PL)信息。PL 信EiM:參考AVClip定義播放列表。圖4顯示了 PL信息的結構,如圖的 左側所示,PL信息由MainPath信息,PLMark信息和SubPath信息構成。
MainPath信息"MainPath()"由箭頭mpl所指示的播放項目信息 "PlayltemO"組成。播放項目是ilil在一個或多個AVClip時間軸上指定 In—time和Out_time來定義的重放間隔。多條播放項目信息的放置定義由多 個重放間隔組成的列表。圖4中的箭頭mp2顯示了播放項目信息的內部結 構的特寫。如圖4中戶際,播放項目信息由lnjime, Out—time和顯示相應 的AVClip的Clip—Information_ffle_name組成。圖5顯示了 AVClip和PL之 間的絲。第一層,示AVClip的時間軸,而第二層級顯示PL的時間軸。 PL信息包括三條播放項目信息(Playlten^lW),其中三個重放間隔由 Playltem#l、 #2禾脂3的In—times禾口 Out_times定義。當這些:1^間隔以線布 置時定義不同于AVClip的時間軸。這是錢二層l^f示的PL時間軸。因 而允許M播^ 頁目信息中的定M定義不同于AVClip的時間軸。
通常,在〗if可一個時間指定一個AVClip,盡管多個AVClip的分批指定 也是可能的。使用播放項目信息中的Clip_Information_file_names執(zhí)行 AVClip的分批指定。圖6顯示了鵬四個Clipjnformation—file—names分批 指定AVClip。圖中的第一至第四層,示了四個AVClip時間軸(時間軸 AVClips#l~#4),而第EM,示了 PL時間軸。四個時間軸由包括在播放項 目信息中的這四個Clip_Information_file_names指定。這允許由In—times和 Out—times定義四種備選的可播放的M^間隔。結果,在PL時間軸上定義 由多條可切換角視頻(所,爾的多角度間隔)纟皿的間隔。
PLMark信息"PLMark()"指定PL時間軸上的任意間隔作為章節(jié)。圖7顯示了 PLMark信息的內部結構,該內部結構包括箭頭pml所指示的 ref—to_playitem—id和Mark—time—stamp。圖8顯示了^ffi PLMark定義章節(jié)。 圖8中的第一層級顯示AVClip時間軸,而第二層級顯示PL時間軸。圖8 中的箭頭沐l和pk2顯示PLMark中的播放項目(ref_to_playitem_id)和時 間點(Mark_time—stamp)的指定。由于這些指定在PL時間軸上定t個 章節(jié)(Chapters#l~#3)。這完成了對PLMaik的描述。 接著描述SubPalh信息。
SubPath信息"SubPathO"通過在SubClip時間軸上指定In—time和 Out—time定義一個或多個重放間隔,并且具有圖9中所示的內部結構。 SubPath信息由箭頭shl所 際的子播方夂項目信息"SubPiayltemO"組成。 在箭頭sh2所^H己的特寫中,子播放項目信息由Clip—Infomiation—file—name, In—time, Out—time, Sync_PlayItem—Id,和Sync—Start—PTS一of—Playltem纟賊。 使用包括在子播放項目信息中的Clip_Information_file—name, In—time和 Out—time指定SubClip時間軸上的In—times和Out—times 。Sync_PlayItem—Id, 和Sync—Start—PTS—of_PlayItem用于使SubClip時間軸和PL時間軸上的重放 間隔同步。這允許在SubClip時間軸和PL時間軸上的處理以ttt同^iS行。
圖10顯示了同步指定和SubClip時間軸上的S^間隔的定義。圖10中 的第一層級顯示PL時間軸,而第二層M示SubClip時間軸。圖10中的 SubPlayltem. In—time和SubPlayltem. Out—time分別顯示S^間隔的開始和結 束。因而顯然S^夂間隔也在SubClip時間軸上被定義。箭頭Snl所^H己的 Sync—Playltemjd顯示播放項目的同步指示,而箭頭Sn2所標記的 Sync—Start_PTS_of_PlayItem指定PL時間軸上的播放項目期間的一點。
BI>ROM中的PL信息的特征在于它使得定義允許切換AVClip的多角 度間隔和允許同步AVClip和SubClip的同步間隔成為可能。將剪輯信息和 PL信息歸類為"靜態(tài)腳本"。
下面描述"動態(tài)腳本"。在這里"動態(tài)"指的是S^爐制的內容由于用 戶鍵^f特nS^文,200中的狀^^化 變化。.使用BI>ROM,可以使 用與Java CT^J^相同的描皿描述SSffi制。也就是說,j頓BI>ROM, Java i5Zffi禾號充當動態(tài)腳本。
Java應用辦
12下面描述Java應用禾MI^。 Java應用禾,由裝載在^J以機的堆積區(qū)(也 稱為工作存儲器)中的一個或多個xlet禾iJ^Sj龍。自超字由裝載在工作 存儲器中的xlet程序以及itM勾成。Java應用禾i^結構如上戶,。
實際Java目,聘是存儲在圖2中的BDMV目錄下的BDJA目錄中的 Java檔案文件(OOOOljar)。下面參考圖11描述Java檔案文件。
Java檔案文件
Java檔案文件(圖2中的OOOOl.jar)是一個或多個類文件和 文件 等的集合。圖UA顯示了il^S檔案文件中的禾M^和i^。圖11A中的數(shù) 據(jù)是由Java檔案庫存儲器收集并且排列在框內所示的目錄結構中的多個文 件。該目錄結構由根目錄,Java目錄,和圖像目錄組成,其中common.pkg 文件,類文件(aaa.class, bbb.class),和menu.jpg文件方燈在各自的目錄內。 Java檔案文件是Java檔案庫存儲器將這些文件收敏一起的結果。當從 BD-ROM讀入高速緩存時類文件和i^被擴展,并且在高速緩存中作為存 在于目錄中的多個文件M待。Java檔案文件的文件名中的五位數(shù)字數(shù)值 "00001"顯示Java檔案文件的豐gi只符(ID),并且BD-J m^(頓該fl^參 考Java檔案文件。當將Java檔案文件讀入到高速緩存中時M51參考文件名 中的該數(shù)值,有可能提取構成任意Java^ffl,的f^以及禾,。
圖UA中的類文件(aaa.class, bbb.class)對應于以上的xlet超芋。使 用這些類文件的xlet禾將(BP實例)定義由Java平臺支持的工^t莫式(BD-J) 中的重M:程。xlet禾M^是f^JOT Java多媒^1S架(JMF)接口的Java 禾M^,并且基于根據(jù)JMF等的鍵割^l行處理。
Itb^卜,xlet禾聘也可以執(zhí)行訪問網(wǎng)站和下載內容的過程。這允許S5M 迚混合下載內容和歹據(jù)創(chuàng)建的原始作品。
接著描述xlet禾將的類文件。圖11B顯示了類文件的內部結構。如圖 IIB中所示,麟文件與普通類文#!1似,由常數(shù)池,接口,和方法l, 2, 3…n組成。類文件中的方法包括由預記載的鍵事件觸發(fā)的那些方法 (EventListener)和用于調用S^文裝置200中的應用編程接口 (API)函數(shù) 的那些方法。通過利用分酉^合指定方法的局部變量和調用戶腿方法時出現(xiàn) 的自 描^^些方法中的計算過程等。Java檔案文件如J^M。
接著描述擴展名為"bdbj"的文件。該文件(00001 .bdbj)存儲BIM據(jù)。BDJ繊是信息,該信1JM:使PL信息中被定義的AVClip與應用 禾Mi^相聯(lián)系來定義標題。圖12顯示了BD-J自的內部結構。BD-Jm顯 示應用f聘管理表和PL信息參考值。應用禾辦管理表顯示Java應用禾群, 戶,Java程序的生命周期是由BD-J XmM枚舉單個Java應用程序的ID (應用程序ID)和屬于ft^OT禾i^的Java檔案文件的ID來定義的標題。 換句話說,^h應用禾M^由一個或多個Java檔案文件構成。 PL信息參考i!M示當開始標題時待顯示的PL信息。
擴展名為"Mbj"的文件如上戶;M。
鶴描述腸EX.BDMV文件。
INDEX.BDMV是與整個BD-ROM有關的管理信息。該文件包含以下 信息,諸如+射只電影作品供應商的組織ID和分配給由供應商提供的單個 BD"ROM的,E)。當裝^^:之后首先M:讀取INDEX.BDMV在S^ 錢中唯一地i湖U爐。INDEX.BDMV可以附加地包JS^樣的表,該表將 BD-ROM中的多個可播放標題,到定義單個標題的BDJ m。下面描 述可記錄到BI>ROM的標題的類型,所述類型包括FirstPlayTMe, TopjnenuTitle,禾口標鵬l氛
FirstPlayTitle負責當裝載BD-ROM時在做其他事情之前播放BI>ROM 的動態(tài)商標。FirstPlayTitle因而實現(xiàn)了當裝載BD-ROM時播放〗,電影作
品的創(chuàng)作者和/^:行人的動態(tài)商標。
TopjnenuTMe由AVClip和播放位于BD^ROM中的菜單層次的最頂層 的菜單的卿辦艦。
標激l、 #2柳對應于普通電影作品。
換句iSi兌,INDEX.BDMV顯示FiistPlayTitle, Top—menuTitle和標題 #143與單個BD-J)(^的對應^^。
圖13顯示了 INDEX.BDMV的內部結構。M件顯示FirstPlayTitle信 息,Top—menuTitle信息,標飄l信息,標飄2信息,和標飄3信息與標 題ED和定義這些標題的BDJ對象的對應關系。定義標題的BDJ ,可以 4頓標題信Eia行^i只,而用于同步的PL信息和鵬禾號可以從這些BDJ )^導出。這完成了對BD^ROM的描述。
BI>ROM不是關于本發(fā)明的S^^g^ 用的唯一記錄介質。在重放期間也使用與重放,一體化的硬盤(本地存儲器)。下面描述 記錄在本地存儲器中的 。
圖14顯示了本地存儲器中的目錄結構。在該目錄結構中,子目錄 "o屯anization^ 1"位于根目錄下,在該目錄下有子目錄"disc# 1"和"disc#2 "。 organization^目錄被分配給電影作品的特定供應商。disc#l和disc#2目錄 被分酉激由^H共應商鵬的不同的BD-ROM。在這些目錄名中禾鵬在各 自BD-ROM中的INDEX.BDMV文件中所示的組織ID和皿ID。
Mf共與對應^ff寺定供應商的目錄中的BI>ROMs對應的目錄允許3te 地存儲與單個BD^ROMs有關的下M^。在這些子目錄下存儲了 PL信息, 剪輯信息,和AVClip,與存儲在BI>ROM上的內^^似。也附加地存在 Java檔案文件,BDJ對象,合并管理信息文件,和簽名信息文件。
與僅僅涉及BI>ROM上的AVClip的BI>ROM上的PL信息相比,本 地存儲器中的PL信息包括涉及BI>ROM上的和本地存儲器中的AVClip的 信息;也就是,作為戯包M添加的PL信息,^^寺定例子是圖14中的 PLINFO#20
在這里,由四條播放項目信息構^:地存儲器中的PL信息(播放項目 信息#1_#4)。在M (播放項目信,默l)涉及BD"ROM上的剪輯信息而其 余三條(播放項目信息#2~#4)涉及本地存儲器中的,信息的情況下,該 PL信息可以從BD^ROM上的和本地存儲器中的AVClip定義單一麵, 列,如圖15中所示。
圖15顯示了由存儲在本地存儲器中的PL信息定義的播船懷S^文時 間軸的鄉(xiāng)。第一層^M示存儲在BD"ROM上的AVClip^1的M^文時間軸, 而第二層級顯示在存儲在本地存儲器中的PL信息中定義的播放列表的翻 時間軸,第三、第四和第碟級分別顯示存儲在本地存儲器中的AVCli-2、 #3和糾的重放時間軸。
在播放項目信1^2、 #3和斜指定AVClip#2、 #3禾朋4作為重放間隔的 情況下,本地存儲器中的PL信息g,將BI>ROM上的和本地存儲器中的 AVClip定義為單一繊,列。
如上戶皿,BI>ROM上的和本地存儲器中的AVClip可以被定義為單一 ^0¥列,并_§3131合并該1^,列和BI>ROM上的或本地存儲器中的,超爭,可以由AVClip和由記錄在BD-ROM上的或本地存儲器中的 應用辦構鵬一標題。如圖16A中戶標,在AVClip#l記錄在BD-ROM 上而AVClip#2*和Java應用禾驕記錄在本地存儲器中的情況下,這些 AVClip和Java應用禾驕可以如圖16B中戶標作為單一標^W待。
接著描述合并管理信息。合并管理信息唯一地顯示本地存儲器中的 disc#l禾照2目錄中的構雌擬包的所有文件,并且被存儲在指定文件(在 下文被稱為"合并管理信息文件")中。圖17顯示了合并管理信息文件的 典型內部結構。合并管理信息文件由本地存儲器中構成虛擬包的每個文件 的存儲位置信息組成。存儲位置信息由訪問作為虛擬包的各個文件的標識 符和指示本地存儲器中各個文件的存儲位置的文件路徑細戎。
接著描述簽名信息文件。簽名信息文件在合并管理信息文件上顯示供 應商的電子簽名。通常使用的電子簽名通過計算需要防竄改的信息的散列 值,并《頓某種秘逾密鑰加密該齢!K魏獲得。
這完成了對本地存儲器的描述。
下面描述關于本發(fā)明的重放裝置的 例。圖18顯示了重放裝置的硬 件配置。S^S由BI>ROM驅動器1 ,讀緩沖器2,多^>鵬(Demux) 3,視步^ 碼器4,視瀕平面5,圖形顯示(P圖形)解碼器6,圖形顯示(P 圖形)平面7,合^^元8,字體發(fā)生器9,妊圖形(I圖形)解碼器IO, 開關ll,妊圖形(I圖形)平面12,合^L元13,顏色查矛婊(CLUT) 單元14,顏色查矛嫁(CLUT)單元15,音Mf碼器16,網(wǎng)絡設備17,本 地存儲器18,讀緩沖器19,多1^} (Demux) 20,指令ROM21,用 戶事件(UE)處理單元22,播放微態(tài)寄存器(PSR)組23,中央處理單 元(CPU) 24,腳絲儲器25,本地存儲器26,和開關27。
首先描述關于記錄在BD-ROM 100上的AVClip的重放的元件 (BWIOM驅動器1 —音鵬碼器16)。
BI>ROM驅動器1裝^/退出BD"ROMs,并且訪問BI>ROM 100。
讀緩沖器2是5feS先出(FIFO)存儲器,其中從BD"ROM100^地 存儲器18皿的^lr流(TS)包在先進先出的基礎上被存儲。
Demux3從讀緩沖器2讀取TS包,并且將這些TS包轉換成打包基本 流(PES)包。具有由CPU 24設置的包禾斜只符(PID)的PES包,然后被輸出至訴見懶軒馬器4, P圖形解碼器6, I圖形解碼器IO,和^W碼器16 中的一個。
視 碼器4解碼從Demux 3輸出的PES包以獲得未壓縮格式的圖片, 并且將這些圖片寫入視頻平面5。
視頻平面5用于存儲未壓縮圖片。平面是im^a中用于存^^屏像
素,的存儲區(qū)。頓瀕平面5具有1920X1080的^fjf率,其中存儲的圖片 繊由16位YUV鋭的像素繊構成。在視頻平面5中,每幀視頻流中 的SJ文視頻可以被縮放??s放包括將每幀的S^文視頻變化為旨視頻平面5 的1/4 (四分之一)或1/1 (全比例尺)。在BDJ模式中根據(jù)來自CPU 24 的指令執(zhí),,放,從而允許屏幕產(chǎn)生,由此視頻流的重放圖像被轉移到屏 幕的角上或投影PM^屏幕上。
P圖形解碼器6解碼從BI>ROM讀取的P圖形流,并且^l每未壓縮圖形 寫入P圖形平面7。字幕由于圖形流^f碼出現(xiàn),幕上。
P圖形平面7是帶有用于一屏數(shù)據(jù)的存儲空間的存儲器,其育,存儲一 屏未壓縮圖形。該平面具有1920X1080的分辨率,其中P圖形平面7中的 未壓縮圖形的像素由8位索引顏色,。存儲在P圖形平面7中的未MI 圖形MM頓CLUT轉換索弓頗色f鵬交以供顯示。
合,元8合^#儲在視頻平面5中的未壓縮圖片I^和P圖形平面7 的存儲內容。
字體發(fā)生器9 f頓字符字體來擴展包括在位圖中的TextST流中的文本 代碼,并且艦靴碼寫入P圖形平面7。
I圖形解碼器10在DVEMike豐M中解碼從BD-ROM ^地存儲器18 讀取的I圖 ,并且將未JM圖形寫入I圖形平面12。
開關11選擇性地^#發(fā)生器9 ,的^#序列和由P圖形解碼器6 解碼產(chǎn)生的圖形中的一個寫入到P圖形平面7。
用由I圖形解碼器10解碼產(chǎn)生的未JBi圖形寫入I圖形平面12。 {頓 a RGB全彩色在BDJ模式中將應用禾將織啲字符和圖形寫入到I圖形平 面12中。
合^^元13合成I圖形平面12的存儲內容和從合^L元8輸出的合成 圖像(S哈成未壓縮圖片繊和P圖形平面7的存儲內容)。該合成允許由
17自程序寫入i圖形解碼器io的字符和圖形重疊⑩壓縮圖片i^上并且 觀示。
CLUT單元14將存儲在視頻平面5中的未壓縮圖形中的索引顏色轉換 成Y/Cr/Cb。
當在DVD4ike模式(即用于播方i^傳統(tǒng)DVD這樣的數(shù)字流的模式) 中工作時CLUT單元15將存儲在I圖形平面15中的未壓縮圖形中的索引 顏色轉MY/Cr/Cb。當在BDJ模式(B卩用于與Java應用程序同步地播放 數(shù)字流的模式)中工作時,CLUT單元15將a RGB全彩色轉換成Y/Cr/Cb。 需要注意的是Java ,禾旨可以綁定或不綁定到標題,以及綁定或不綁定 到光盤。
音 碼器16解碼從Demux 3輸出的PES包并且輸出未壓縮音頻數(shù)據(jù)。
關于AVClip S^文的元件如i^M。下面描述關于在BD-J模式中工作 的元件(網(wǎng)絡設備17—Demux20)。
網(wǎng)絡設備17實現(xiàn)S^文^S中的通信功能。⑩用,在BDJ模式中 指定URL的情況下,網(wǎng)絡設備17粒與URL所f際的網(wǎng)站的^tl控制協(xié) 議(TCP) ^倒專送協(xié)議(FIP)連接等。由于連擻皮^ZlJava鵬禾驕 從網(wǎng)站被下載。
本地存儲器18是石 ,其用于剤i!3M:網(wǎng)絡設備17 ^:的連接從網(wǎng)
站下載的內容,從除BD^ROM之外的通信和記錄介^f共的內容,以E 。元 翻于綁定和管理本地存儲器18中的下載內容的信息。ffl31 訪問本地存儲器18, BDJ模式中的應用禾i^可以iM下載內mm午多處 理。本地存儲器18也保存合并管理信息文件。
讀緩沖器19是FIFO存儲器,,SubClip被包括在存儲于BI>ROM 100上或本地存儲器18中的下載內容中的情況下基于先入先存儲構成 SubCKp的TS包。
Demux 20從i賣緩沖器19讀取TS包,并且將讀取的TS包轉換成PES 包。具有特定PID的PES包然后輸出到P圖形解碼器6,字體勝器9,和 音W碼器16。
以上元件17-20允許由Java應用禾Mj^lil網(wǎng)絡下載的內容以類似于記錄在BD-ROM上的內容的方式被播放。下面描述用于實iim^文裝置中的集
中控制的元4牛(指令ROM21—開關27)。
指令ROM21存儲軟件,該軟件定義與S^,有關的控制。 響應S^夂^S的ii^器或前面板的,作,UE處理單元22將用于執(zhí)
^i^^喿作的用戶事件輸出到CPU 24。
PSR組23是在Sm體內部的一組寄存器,由64個播放mit態(tài)寄存
器(PSR)和4096個通用寄存器(GPR)組成。PSR4^8用于表示當前S^點。
PSR4由于被設置到1-100的值^^當前重放點的標題。纟每PSR4設置 為"0"表示當frm點是菜單頂部(topme皿)。
PSR5由于被設置到1-999的值 際當前重放點的章節(jié)編號。將PSR5 設置為"0xFFFF" ^^在S^裝置中的章節(jié)編號為零。
PSR6由于被設置到0-999的值t際當frS^點所屬的PL (當前PL)
的編號。
PSR7由于被設置到0-255的值 際當ltM點所屬的播放項目(當前 播方文項目)的編號。
PSR 8由于被OT到0-OxFFFFFFFF的值J際使用45KHz的時間精度 的當ltt^點(當前顯示時間或"P1M")。 PSR 4-8允許在圖23A中戶標 的旨BD"ROM的時間軸上+示識當IO^點。
CPU24運行存儲在指令ROM21中的軟件以執(zhí)行與^hTO^g有關 的控制。這,制動態(tài)地變化,其取決于從UE處理單元22輸出的用戶事 件和PSR組23中的PSR值。
腳^#儲器25用于存儲當前PL信息和當鵬輯信息。當前PL信息是 記錄在BD^ROM上的當前l(fā)艦理的一條PL信息。當W^信息是記錄在 Bl>ROM上的當前被處理的一條im信息。
假設從BD^ROMf^i讀取,本地存儲器26是臨時存儲BD"ROM的記 錄內容的高速緩沖存儲器。本地存儲器26的提供允許BDJ模式中的應用 辦高效雌行。
開關27選擇性地將從BD-ROM和本地存儲器18讀取的繊輸送到讀 緩沖器2,讀緩沖器19,膽M^儲器25和本地存儲器26中的一個。關于本實施例的m裝置的硬件配置如上戶;M。下面描述關于本實施 例的s^,置中的軟件結構。
圖19描繪了由硬件和存儲在指令ROM21上的軟件組成的以層狀結構 重布置的元件。如圖19中戶g, S^C,的層狀結構由第一層(BD層), 第二層(BD播放^i型),和第三層(應用禾齡運行時間環(huán)境)會M。
圖18中所示的l^文裝置的硬件酉fig屬于第一層。在該硬件配置中,在 圖19中的第一層的"BD播放器"包括由視步M 碼器4, P圖形解碼器6, I圖形解碼器10和著涉 碼器16組成的"解碼器",由豐見步員平面5, P圖形 平面7和I圖形平面12組成的"平面",BI>ROM 100和相^fc件系統(tǒng),本 地存儲器18和相效件系統(tǒng),以及網(wǎng)絡設備17。
在第二層的"BD播放器模型"由用于顯示引擎31和虛擬文件系統(tǒng)單 元38的下層和用于m^爐制引擎32的上層組成,并且衝共與更高級別有 關的API函數(shù)。
圖18中所示的PSR組23和腳蹄儲器25存在于Kffi制弓摩32內部。
在第三層的"應用S^運行時間環(huán)境"由包括?!婪蚬芾砥?3的層會賊, 戶;ft&模塊管理器33堆疊在包括DVD4ike模±央29a和Java平臺29b的層上。 下面描述該軟件結構中的元件。 DVEMike模塊29a, Java平臺29b
DVEMike模塊29a解碼導航命令,并且基,碼結果執(zhí)行與S^制 弓摩32有關的函數(shù)調用。
Java平臺29b ;^^fi胃的具有層次結構的Java平臺,戶/MM次結構由Java 虛擬機30和JavaJ^TOi行的中間軟件(未示出)組成。
Java^t幾30
Java戯機30將構j^^辦的xlet禾_1^載到工作存儲器中,解碼 xl改禾M^,并且根據(jù)解碼結果在下層上執(zhí)行控制。為了執(zhí)4T^^S制,Java JM機30向中間軟件發(fā)布方法,使中間軟件用對應于BDJ^文裝置的函數(shù) 調用替^^脫方法,并且向l^ffi制弓摩32發(fā)布戶服函數(shù)調用。
JavaJ^以機30的內部結構
下面描述Java 0JMI30的內部結構。圖20顯示了 Java 機30的
20內部結構。如圖20中戶^, Java^J以機30由CPU24,用戶類裝載器52, 方法區(qū)53,工作存儲器54,線程55a, 55b,…55n,和Java棧56a, 56b,… 56n構成。
用戶類裝載器52從本地存儲器26等讀取BDJA目錄中的Java檔案文 件中的類文件,并且將讀取的類文件存儲在方法區(qū)53中。由用戶類裝載器 52讀取類文件由于模塊管理器33 )l射旨定文件路徑的讀指令^Ii,戶類裝 ■ 52被執(zhí)行。如果文件路徑指示本地存儲器26,用戶類裝,52將構 ,用程序的Java檔案文件中的類文件從本地存儲器26讀入工作存儲器 54。如果文件路徑J際文件系統(tǒng)中的目錄,用戶類裝鄉(xiāng)52將構鵬用程 序的Java檔案文件中的類文件從BMIOM或本地存儲器18讀入工作存儲 器54。
方法區(qū)53存儲由用戶類裝載器52從本地存儲器26讀取的類文件。 工作存儲器54 ^^i胃的存儲各種類文件的實例的堆積區(qū)。工作存儲器 54存儲對應于常Si^禾M^的實例和讀入到方法區(qū)53的類文件。 一個實例 是構^ffi,的xlet禾,,M將xlet ,方,到工作存儲器54中{妙萬 鵬用辦可執(zhí)行。
線程55a, 55b,…55n翻于執(zhí)行存儲虹作存儲器54中的方法的邏
輯執(zhí)行實體。它們使用局部變量和存儲在操作數(shù)棧中作為操作數(shù)的自變量 執(zhí)行計算,并且將計算結果存儲在局部^M或操作t^戔中。圖20中的箭頭 kyl , ky2,和kyn象征性地指示方法紅作存儲器54鵬^g 55a, 55b,... 55n。盡管CPU是唯一的物理執(zhí)行實體,在Java JM機30中可以有高達 64 ^ig輯執(zhí)行實體或線程。,可以^ff創(chuàng)建并且現(xiàn)有線程可以在該數(shù)值 限度內被刪除,而且當Java虛擬機30工作時工作線程的數(shù)目可以變化。能 夠適當?shù)卦黾泳€程的數(shù)目也使得有可能使用每個實例的多個線程并行ite 行實例,并且由此加速實例的執(zhí)行。
Java棧56a, 56b,…56n與線程55a, 55b, ".55n—比一地存在,并且 ^具有,計數(shù)器(圖20中的"PC")和一個或多個幀。禾驕計數(shù)器顯 示當前正在執(zhí)行實例的明H^P分。幀是分醇合方法的每次調用的桟型區(qū)域, 并且由用于存儲與調用同時出現(xiàn)的自變量的操作數(shù)棧和被所調用的方謝吏 用的局部變量棧(圖20中的"局部 ")組成。由于^i侖何時進行調用幀都堆疊在Java桟56a, 56b,…56n上,因雌歸地調用自身的方法的幀 也一個堆疊在另一個上面。
Java虛擬機的內部結構如上戶;M。具有以上結構的Java虛擬機充當事 件驅動執(zhí)行實體。這完成了對Java虛擬機的描述。
顯示引擎31
顯示弓摩31執(zhí)行AV M^文功能。重放體的AV S^夂功能^A人DVD播 放器和CD播放器 的傳統(tǒng)功能組,包括播放,停止,暫停開始(PAUSE ON),暫停結束(PAUSE OFF),靜音(STILL OFF),快進播放(x2, x4 等),快退播放(x2, x4等),音頻變化,字,化,和角度變化。為了實 現(xiàn)這些AVS^文功能,顯示引擎31控制視頻解碼器4, P圖形解碼器6, I 圖形解碼器10和音^W碼器16以解碼讀入至l贖緩沖器2的AVClip的一部 分,戶腐部分對應于預期時間。i!3i將PSR8所指示的地方(當前PIM) 解碼為預期時間,可以致使AVClip中的任意點可播放。
Wd^制弓摩32執(zhí)行各種功能,包括(i)對播鵬據(jù)的重方idS制和(ii) 采紫體PSR組23的狀態(tài)。m^S制功能包括根據(jù)當前PL信息和M:信 息^M示弓摩31執(zhí)行以上AV魏功能中的播放和停止。功能(i)和(ii) 根據(jù)從DVD-like模塊29a和Java平臺29b的函數(shù)調用l^l行。
接著描述W^制弓摩32執(zhí)行的處理與Java ^J以機執(zhí)行的處理的同 步。當調用函數(shù)時MdS制引擎32執(zhí)行基于PL信息的處理。棚于S^夂 的AVClip的持續(xù)時間執(zhí)行該處理,^5i侖m時間是15併中還是30分鐘。 這里的問題是在Java娜機30返回^ 加向應的時間和MdS制弓摩32實 際結束處理的時間之間存在延時(timelag)。作為事件驅動執(zhí)行實體的Java 娜機30在調用之后立即返回指示翻是否成功的響應,而S^娥制弓摩 32在15或30 ,m持續(xù)時間過去之后結束AVClip和播放項目的重放。 因而,成功響艦回至I臉用辦的時間不會調作M 15或30 ,以后處 理結束的基礎。當在PLS^期間執(zhí)行快進或倒帶日^M:處理結束變得B J口 困難,這是由于15或30倂中的魏時間發(fā)生變化。鑒于此,當^h播放 項目或AVClip的S^夂結束時,S^3d^制弓摩32粉旨示播放項目和AVClip S^文結束的事件輸出到應用禾,。這種輸出使得應用,知道M控制弓I擎32在明P個點結束播放項目或AVClip S&文。 模塊管理器33
模塊管理器33讀取INDEX.BDMV并皿擇INDEX.BDMV中的多條 標題信息中的一剝乍為當前標題信息。?!姥牍芾砥?3讀取當前標題信息所 指示的BD-J贈,并且基于BDJ聰中所描述的PL信息控制S^d^制弓I 擎32執(zhí)行S^爐制。模塊管理器33也控制Java虛擬機30以讀取和執(zhí)行 BD-J X^中所描述的Java檔案文件。
如果基于PL信息的數(shù)字流的S^和應用禾聘的執(zhí)行結束,藏如果用 戶調用菜單,模±央管理器33讀取定義另一標題的標題信息,并腿蹄條 標題信息作為當前標題信息。根據(jù)數(shù)字流S^夂或用戶菜單調用選擇另一條 標題信息作為當前標題信息的過程被稱為"標題變化"。
圖21中戶^的狀態(tài)轉變可以M重復地執(zhí)行標題變化實現(xiàn)。圖21中 的橢圓窗口表示標題。
標題包括當BI>ROM首次被裝載時用于S^文的"FirstPlayritle",構成 頂部菜單的"Top—memOltle",和其他普通標題。圖21中的箭頭jhl, jh2, jh3, jh4, jh5, jh6, jh7和jh8象征性地^^標歐間的轉移。
圖21中戶^的狀態(tài)轉變包括當BI>ROM被裝載B対番放FirstPlayTitle, 然后轉移到Top—menulMe并且等待從頂麟單選擇。
當用戶M單選擇時,在再^M回到Top—memmtle之前根據(jù)選擇播放 各個標題。直到光盤被退出無P鵬重復該處理的過程是光盤內容所獨有的 狀態(tài)轉變。該狀態(tài)轉變^hife的模i央管理器33的控制下實現(xiàn)。
這完成了對Java虛擬機30,顯示引擎31, mffi制弓摩32,和?!姥?管理器33的描述。由Java娜機30對S^dS制弓摩32的控制MilMl包
被執(zhí)行。為了M31MI包實5財m^制弓摩32的控制,ss^a包括網(wǎng)
絡管理1t^ 37和 文件系統(tǒng)單元38 。接著描皿些元j牛。 網(wǎng)絡管理模塊37
網(wǎng)絡管理模塊37根據(jù)MiS用禾Mm的方法調用從電影作品的供應商所管
理的網(wǎng)站下載產(chǎn)生戯以包所需的數(shù)據(jù)。該,包括替換或添加到合并管理 信息文件,簽名信息文件,和BI>ROM上的文件的文件(PL信息,離 信息,AVCUp, Java檔案文件,等等)。當工作存儲器54中的應用禾ii^i出下載i青求時,網(wǎng)絡管理模塊37M網(wǎng)絡下i^生虛擬^M需的i^,并 且將下載的自寫A^地存儲器18。 虛擬文件系統(tǒng)^^38
虛擬文件系統(tǒng)單元38是屬于圖19中的第二層的元件,其根據(jù)M用 程序的方法調用產(chǎn),擬包。虛擬包的產(chǎn)生包括管理構,擬包的AVClip 的狀態(tài)的處理和生自擬包信息的處理。
虛擬包信息
虛擬包信息擴展BD-ROM上的巻管理信息。這里涉及的巻管理信息定 義存在于記錄介質上的目錄結構,并且由與目錄有關的目錄管理信息和與 文j特關的文件管理信息艦。
虛擬包信息通過將新文件管理信息添加到顯示目錄結構的巻管理信息 來擴展BD-ROM上的目錄結構。添加到巻管理信息的文件管理信息涉及存 在于本地存儲器18中的PL信息,!^^信息,AVClip和Java檔案文件。產(chǎn) 生該文件管理信息已被添加到其中的虛擬包信息和將離擬包信息^i共給 S^d^制弓摩32的過程允許mg制引擎識別如存在于BD-ROM上的存 儲在本地存儲器18中的PL信息,離信息,AVClip和Java檔案文件。圖 22顯示了由虛擬文件系統(tǒng)單元38典型地產(chǎn),擬包信息。在圖22的左上 方是BD-ROM上的目錄結構,這與圖2相同。駐下方是本地存儲器18 中的目雜構,這與圖14相同。與本地存儲器18中的PL信息,剪輯信息, AVClip和Java檔案文ft^關的文件管理信息被添加到BI>ROM上的巻管 理信息。
具休而言
i) 與本地存儲器18中的播游懷信息#2 (00002.mpls)有關的文件管 理信息被添加到PLAYLIST目錄中的目錄管理信息;
ii) 與本地存儲器18中的剪輯信^#2、 #3和斜(00002.clip, 00003.clip, 00004.clip)有關的文件管理信息被添加到CLIPINF目錄中的目錄管理信息;
與本地存儲器18中的AVClip#2、 #3和#4 (00002.m2ts, 00003.m2ts, 00004.m2ts)有關的文件管理信息敗添力瞎U STREAM目錄中的目錄管理信 息;
iv)與本地存儲器18中的Java檔案文件"00002jar"有關的文件管理信息被添加到BDJA目錄中的目錄管理信息;
由此獲得虛擬包信息。換句話說,虛擬包信息是以上面的方式己被添
加的巻管理信息。
然后將離擬包信息衝共給 娥制引擎32, S^爐制弓摩由此育辦 在與BD-ROM上的PL信息,剪輯信息,AVClip,和Java檔案文件同等的 基礎上處理本地存儲器18中的PL信息,剪輯信息,AVClip,和Java檔案 文件。娜包信息的生成如J^脫
下面描雌擬包信息更新的定時。
假設當按照圖21中的箭頭jhl, jh2, jh3, jh4等所J際的參考^i己的 數(shù)衝l(Sim行轉移之后BD-ROM被退出。這允許從BI>ROM的裝載到退 出的連續(xù)時間間隙被看作單一時間軸。該時間軸被作為^光盤的時間軸。 圖23A顯示了^h光盤的時間軸,而圖23B顯示了該時間軸的結構。如圖 23B中所示,整個光盤的時間軸由播放FirstPlayTitle的間隔,播放 Top_menuritle的間隔,和播放普通標題(標飄l等)的間隔組成。關于定 ,些標題的E&文間隔的方式,由于^^示題僅僅由一個BDJ X^構成,
因ltW封可給定的BD-J x^有效的間隔可以,皮當作標題的m^文間隔。這些重
放間隔之間的空隙,或者從一個標題變化至U另一標題的些微間隔(即"標
題變化"),擬包信息Mi 的時間。
接著使用圖24描述由Javai^禾iiWl行的下載新合并管理和簽名信息 文件以及內容文件的過程。
Java ,,首先將當前合并管理信息文件皿到服務器(步驟Sl 1 ), 由此請求下載,并且判斷是否已接棘自服務器的,(步驟S12)。當數(shù) 據(jù)被下載時,Java應用 ^在相應 目錄中創(chuàng)飾目錄,并且將下載的 合并管理信息文件和簽名信息文件寫Af 目錄(步驟S13)。需要注意的是 如果下載的合并管理和簽名信息文件的文件名不與皿目錄中的現(xiàn)有合并 管理和簽名信息文件一致,下 件可以直接皿在現(xiàn)存目錄(^!#1文 件)之TM不創(chuàng)織目錄。將下載的AVClip,離信息,PL信息,和Java 檔案文件寫入相應目錄(步驟S14)。 Java應用禾辦然后iOT新合并管理和 簽名信息文件的文件路徑作為自Mi周用^f i青求方法(步驟S15)。 Java ,禾M^判斷醫(yī)回fl^否為false (步驟S16),并且如果為false則終li^h理。如果返回ite不是false,則Java應用,M)^f頓更新的虛擬包信息執(zhí)行處理 (步驟S17)。
需要注意的J^管根據(jù)當請求下載時Java應用禾imi每當前合并管理信 息文件發(fā)超鵬務器描述了以上處理,Java應用程序可以僅僅發(fā)送合并管 理信息文件的ID。
接著^ffl圖25描述一旦接收Mf i青求由虛擬文件系統(tǒng)單元38執(zhí)行的 魏"準備"過程。
虛擬文件系統(tǒng)單元38首先使用當調用方法時充當自z,的文件路徑讀 取新合并管理和簽名信息文件(步驟S21),并且魁正簽名以便檢驗新合并 管理信息文件是否已被竄改(步驟S22)。如果簽名不能被驗證則執(zhí)行異常 終止。如果簽名被^i正,則 文件系統(tǒng)單元38檢斷周用應用禾1^的權限 (步驟S23)。如果調用自,M^未I^權則執(zhí)行異常終止。如果調用應用 禾M^Mg權,貝1」 文件系統(tǒng)單元38判W 合并管理信息文件所指定的文 件是否實際存在于本地存儲器中(步驟S24)。如果這些文件并不存在貝U執(zhí) 行異常終止。如果這些文件#&則M文件系統(tǒng)單元38將新合并管理和 簽名信息文件以及從新合^H言息文件弓l用的本地存儲器中的所有文件變?yōu)?只讀(步驟S25)。
圖26是由,文{牛系統(tǒng)單元38執(zhí)行的^J以包"更新"處理的流程圖。
文件系統(tǒng)單元38首先^HiW應于被裝載的BI>ROM的皿目錄,并 ■ Java ,^m周用Mffi青求方法時、充當自 的^:{牛路^^指定的 新合并管理和簽名信息文件替換光盤目錄中的合并管理和簽名信息文件 (步驟S3"。 ;M文件系統(tǒng)單元38然后將本地存儲器18中的合并管理信 息文件所指定的PL信息的文件管理信息添加到PLAYLIST目錄中的目錄管 理信息中(步驟S32),并J^l行步驟S33到S37的循環(huán)。該循環(huán)包括對于 ,于本地存儲器18中的每一條剪輯信息重復步驟S34到S36。在皿, 用于循環(huán)處理的一條,信息假定為剪輯信息x。虛擬文件系統(tǒng)單元38標 i口樹應于剪輯信息x的AVClip (步驟S34),將本地存儲器18中的合并管 理信息文件所指定的l^:信息x的文件管理信息添加到CLIPINF目錄中的 目錄管理信息中(步驟S35),并且將本地存儲器18中的合并管理信息文件 所指定的AVOip x的文件管理信息添加到STREAM目錄中的目錄管理信息中(步驟S36)。 iim于本地存儲器18中的所有剪輯信息和AVClip重復 以上處理,與剪輯信息和AVClip有關的文件管理信息被添加至捲管理信息。 由此獲得的巻管理信息是虛擬包信息。虛擬文件系統(tǒng)單元38將該虛擬包信 息衝共纟^S行^J以包調用的自,,(步驟S38),并且結束處理。
圖27是由模i央管理器33執(zhí)行的處理的流禾呈圖。
模土央管理器33首5fe^擇FirstPlayritle作為當前標題(步驟S41 ),指定 對應于當前標題的BDjm作為當前BDJ對象(步驟S42),并且iM^ 控制引擎32基于當前BDJ鄉(xiāng)中所描述的PL信息執(zhí)行PL SJ夂(步驟 S43 )。?!姥牍芾砥?3然后使Java平臺29b運行其生命周期是當前BD-J對 象的應用程序管理表中的當前標題的Java應用禾Mi^(步驟S44),并且使Java 平臺29b終止其生命周期不是當前標題的Java應用禾聘(步驟S45)。模±央 管理器33然后判斷基于當前PL信息的PL重放是否己經(jīng)完成(步驟S46), 并且如果完成,模塊管理器33則+gi只下一個標題(步驟S47),并雌絲 標題作為當前標題(步驟S48)。如果當前PL m^完成,則?!姥牍芾?器33判斷是否已發(fā)生標題調用(步驟S49),并且如果是這樣的話則移動到 步驟S47。如果未發(fā)生標題調用,貝鵬土央管理器33判斷是否已發(fā)生標躪^ 轉(步驟S50),并且如果是這樣的話則移動到步驟S47。如M發(fā)生標題 瑕瞎,則模塊管理器33判斷當前標題的述用禾將是否已結束(步驟S51) 并且如果^^樣的話貝賂動到步驟S47。如果主細禾將絲結束,貝訴對央 管理器33返回到步驟S46。
圖28是由S^制弓摩32執(zhí)行的g^文處理的流程圖。在將當前PL信 息中的第一條播放項目信息體為播放項目i之后MdS制弓摩32執(zhí)fi^ 驟S62到S68的循環(huán)(步驟S61)。該循環(huán)中的控制變量是變量i。在執(zhí)行步 驟S62到S66之后在步驟S68重方娥制弓摩32鵬制變量i增加"1"直到 體i鵬番放項目的M (步驟S67)。
接著描述步驟S62到S66。重放控制引擎32將播放項目i中的 Clip—information—file—name中所描述的AVClip ,為AVCUpj (步驟S62), 并且指示驅動設備和解碼^ 番方JO!APlayltem.In—time到PlayItem.Out一time的 AVCUpj (步驟S63)。 H^爐制弓摩32判斷在Sync^Playltem—Id中是否存 在指定播放項目i的子播放項目k (步驟S64),并且如果該子播放項目并不
27存在則直接移動到步驟S67。如果子播放項目k存在,則m^鵬制引擎32 將子播放項目k的Clip—information—ffle_name所描述的AVClip設置為 AVClip h (步驟S65 ),指示驅動設備和解碼器重放從 Sync—Start—PTS—of—Playltem到Out—time的AVClip h (步驟S66),并且移動 到步驟S67。
由于對于構成PL信息的所有播放項目信息重復該處理,PL信息所定
義的i^箭um列被播放。
圖29顯示了在標題變化期間怎樣Mf 虛擬包信息。
圖29中的第一層級顯示時間軸上的標題重放間隔,第二層級顯示其生 命周期是標飄l的Java應用程序,第三層級顯示數(shù)字流,第四層級顯示虛 擬文件系統(tǒng)單元38的狀態(tài)。
一旦接^*自JavaOT禾i^的MfH青求,^J以文件系統(tǒng)單元38凈戯爐 在"準備"狀態(tài),并且執(zhí)行圖25中戶標的處理。
在執(zhí)行該處fe后,虛擬文件系統(tǒng)單元38在"準備好"狀^待標題 變化。當發(fā)生標題變化時,戯以文件系統(tǒng)單元38l頗燈在"MIT狀態(tài),
并且在回E^j "穩(wěn)定"狀態(tài)之前執(zhí)行圖26中戶; ^的處理以Mi 虛擬包。如
果在J^擬文件系統(tǒng)單元38回穀lj "穩(wěn)定"狀態(tài)之后,再7她Top—menuTWe
選#+示飄1,則^^,的 包播放標 1。
在這里,當?!姥牍芾砥?3例如由于 列的 (結束或由用戶調 用菜單而選杯同標題作為當前標題時,發(fā)生標題變化。
使用圖30到33示意性地描述以上處理。
圖30顯示了將當前合并管理信息文件^i鵬務器的Java OT程序。 ROOT下所示的文#^于本地存儲器中,而BDMV下的文^Hi于^J以包中。
圖3i顯示了下載內容文件、新合并管理信息文件和im名信息文件的
Java應用禾歸。"00012.clpi"和"00012.m2ts"是下載的內容文件,而存儲 在newMF目錄中的合并管理和簽名信息文件已 被下載。
圖32顯示了請求^J以文件系統(tǒng)單元38將現(xiàn)有合并管理和簽名信息文 件更新為:WTF載的文件的Java CT禾,。M3i^ffl文件路^^指定新合 并管理和簽名信息文J權出該MiH青求。
圖33顯示了合并管理和簽名信息文件的替換以及內容文件的鵬才。在圖33的左側顯示了更新期間舊合并管理和簽名信息文件的替換。在圖33 的右側顯示了標題變化后內容文件的B鄉(xiāng)。
需要注意的是從舊合并管理信息而不是從新合并管理信息引用的文件 的只讀屬性被移除,從而使這些文件可由Java應用禾Mff寫入。
合并管理信息文件包括指示添加到本地存儲器的內容的位置的信息。 指示附加內^g的信息包括內容ID,內蹄儲于其中的目錄的目剝射5, 或單個內容文件的文件路徑。當將這些文件日,到虛擬包時可以在合并管 理信息文件中描述文件名日,信息,從而允許在虛擬包中的不同文件名下 訪問這些文件。在這里,文件名日劃寸信息用本地存儲器中的文件名(包括 文件路徑)鵬寸虛擬包中的文件名(包括文件路45)。
在該情況下,作為虛擬包介質由虛擬文件系統(tǒng)單元38產(chǎn)生j^以包,所 述虛擬包介質由這樣的文件構成,文件名鵬信息中所描述的虛擬包中的 戶皿文件的文件名已被添加到BI>ROM上的文l牛結構中。由Java應用禾, 訪問的J^包中的文件被指定為,包中的文件而不是BD^ROM上或本地 存儲器中的文件。當Java卿辦請求訪問娜包中的文件時,虛擬文件 系統(tǒng)單元38基于文件名映射信息將訪問目的地切換到本地存儲器或 BD"ROM。如果在文件名,信息中描述了所期望的文件,訪問目的地變 為本地存儲器中的相應文件。如果未在文件名,信息中描述所期望的文 件,訪問目的地變?yōu)锽D^ROM上的相應文件。
換句話說,Java應用辦的創(chuàng)作者不需要知道單個文件存儲于其上的 介質(BD^ROM^i也存儲器),因為 (文件系統(tǒng)單元38將 包中由 Java應用禾,指定的文件的訪問目的地切換到實際存儲戶;M文件的介質, 由此離了禾鵬'j作的負擔。
根據(jù)本實施例,虛擬包在標題變化期間被更新,這意I^SW^的
替換將不會導id^^S的異,作。
實施例2
本實施例涉及當執(zhí)行標題調用時的改進。標題調用導致在首先暫停當 前標M^后播放被調用標題,然后在被調用標題的重放結束之后繼續(xù)原始 標題。由于標題調用以繼續(xù)S^文為前提,因此當調用標題時M^制弓摩 32將存儲在PSR中的用于S^爐制的系統(tǒng)參數(shù)保存到M3、PSR中,并且在被調用標題的重放結^后將被保^數(shù)恢復到PSR中。
下面是存儲在PSR中的系統(tǒng)參數(shù)的列表。PSR0到PSR 12存儲顯示重 放狀態(tài)的系統(tǒng)參數(shù),PSR 13到PSR 19存儲由播放器設置為雌的系統(tǒng)參數(shù), PSR 20至lj PSR 32是碰PSR。
PSRO: I圖形流編號 PSR1:音頻流編號
PSR2: P圖^/TextST流編號 PSR3:角度編號 PSR4:當前標題編號 PSR5:當前章節(jié)編號 PSR6:當前播放列表ID PSR7:當前播放項目ID
PSR8: m時間信息
PSR9:導航定時器
PSR10:選離信息
PSR11: I圖皿中的當前頁ID
PSR12: P圖形 卩TextST流中的用戶樣式ID
PSR 13:視口脾麟級(parental level)
PSR 14:字幕支離息
PSR 15:播放器設定值(翻)
PSR 16:音頻流的語言代碼
PSR 17: P圖形、凝n TextST流的語言代碼
PSR 18:菜單的語言代碼
PSR 19:播放器的版本信息
PSR20: PSRO的縱
PSR21: PSR1的縱
PSR22: PSR2的錄
PSR23: PSR3的碰
PSR24: PSR4的錄
PSR25: PSR5的碰PSR26: PSR6的Mj、 PSR27: PSR7的Mj、 PSR28: PSR8的錄 PSR29: PSR9的縫 PSR30: PSR10的Mj、 PSR31: PSR11的Mj、 PSR32: PSR12的縱
在標題調用期間更新虛擬包信息導致調用前后虛擬包信息的差異。 由于當恢復原始標題時虛擬包信息將變化,因此如果S5爐制引擎32 試圖^ffl^Kt播放原始標題則會出現(xiàn)錯誤。該問Milil當Java ,禾辨 請求魏時凊除紐PSR得以避免。然而,假定變化沒有影響取決于合并 管理信息文件的內容,關于是否清除系統(tǒng)參數(shù)值的決定可以留待Java應用 辦處理。
圖34A是當標題調用之后暫停當前標題的S^文時由 ^制弓摩32執(zhí) 行的處理的流程圖。圖34B是當被調用標題的重放結m^后繼續(xù)S^文原始 標題時由Wd^制弓摩32執(zhí)行的處理的流程圖。
當暫停當前標題離時,S^^制弓摩32將PSR0-12保存到PSR20-32 (步驟S71)。
當被調用標題的離結^t后繼續(xù)原始標題離時,S^制引擎32 首先判斷J^J以包是否已被,(步驟S81)。如果未,則將PSR2(W2恢 復到PSR(M2 (步驟S83),如果自包信息已Mf 則在執(zhí)fi^驟S83之 辦刀始化PSR20-32 (步驟S82)。
根據(jù)本實施例,在標題調用期間當虛擬包信息已,皮Sf 時初始化M PSR,由此消除當纖原始標題魏時發(fā)生S^夂觀的危險。因而4 ^ 制引擎32穩(wěn)定工作。
需要注意的是當虛擬包信息被魏時,PSR中的系統(tǒng)參數(shù)值可以被強 制清除,而不是將該決定留待Java應用禾,處理。
實施例3
本實施例涉及一種方法,該方法用于管理合并管理信息的版本和從重 放驢中的常SiS用禾號指定用于合并的附加內容。圖35顯示了關于本實
31施例的合并管理信息文件的典型內容。在實施例1中,艦改寫舊合并管 理信息更新合并管理信息文件(或更確切地說存儲在其中的合并管理信
息),從而導致舊信息被擦除。在本實施例中,新合并管理信息不斷地被添
加到文件中,而且即i樹于相同的爐ID也不改寫舊信息。因而,如果虛 擬文件系統(tǒng)單元38取消產(chǎn)^f以包并且回復到原始BD-ROM,則反映該狀 態(tài)的信息被保留在合并管理信息文件中。在該情況下,合并管理信息文件 的合并目標目錄中的相應單元被留下空白或新己下指示原始BMIOM的字 符串。
通 行更新時不改寫舊合并管理信息使將先前的合并管理信息(的 歷史)保留在合并管理信息文件中,然后如果用戶想要虛擬包的舊版本, 可以參考先前的合并管理信息產(chǎn)生舊版本。而且,先前由用戶產(chǎn)生的虛擬 包可以參考合并管理信息文件(或者更確切地說存儲在其中的舊合并管理 信息)不i30Uava應用禾Mmi皿S^裝置中的常馬ffi用禾i^產(chǎn)生。
由常,用禾im^先前的合并管理信息的另一例T^括顯示附加內 容列表,從而用戶可以從常駐應用禾聘刪除不想要的附加內容。由于合并 管理信息文件可以用于區(qū)分存儲附加內容的目錄,因此也可以從除了存儲 附力吶容的Java鵬禾聘之外的應用禾驕(即常-SiSffi禾醉)檢索和刪除 附加內容。
圖36顯示了關于本 例的請求虛擬包,的Java ,禾旨。與實施 例1的差異在于這樣的事實,即在不改寫舊信息的情況下不附也添加合并 管理信息,即使用于目標皿ID的合并管理信息已經(jīng)存在。當請求虛擬包 魏時Java應用禾M^允許aM3a加日期信息綺只合并管理信息文件中織 的一絲并管理信息。日期信息不P艮于日期,也可以簡單地為3i^l號。
圖37顯示了由使用合并管理信息文件的常lffl用程序向用戶顯示的典 型附加內欲瞎。在這里,^M示的附加內容列魏于圖35中戶標的合并 管理信息文件。理想的題示i頓戶掌握附加內激步及的信息。圖37中的 附加內^M示為內容名。盡管僅僅日期信息被添加到圖36中的合并管理 信息,但是也可以添加附加內容的提要,因為常-艦用禾聘倉,執(zhí)t諒樣 的顯示。在該瞎況下,微附加內容的提要用于當Java應用f驕請求戯 包 時與內容ID —起輸入。這,要可以為包含各自提要的文{襯旨定文件路徑,而不是簡單地包括字符串的直接輸入。因而除了Mif日期之外合 并管理信息存儲內容提要,并且常駐應用禾辨能夠連同日期信息一起在附 加內容列表中顯^,要。
勝于使Java應用禾MJ^指定內容提要,顯示特定內容關于什么的元信息 可以被追加到內容本身,常駐應用程序可以讀取該信息并且基于讀取的信 息顯示提要。
圖37中的"添加"^M示各個附吶容首次與B)ROM合并的日期。 該信息也可以從合并管理信息讀取。
需要注意的是首次合并附加內容的日期可以與合并管理信息分開保 存。這些日期也可以從存儲附加內容的目錄被創(chuàng)建的日期確定。當顯示在 附加內容列表中的選擇按鈕之一被按壓時,常駐應用禾驕將戶腿內容的目 ^S射5/光盤ID和選擇日期作為相應合并管理信息寫入到合并管理信息文 件中。換句話說,最織擇的附加內容變?yōu)樽钚潞喜⒐芾硇畔?。如果選擇 原始BD"ROM,暢原始BD-ROM的值或空白單元被插入至恰并管理信息 文件的合并目標目錄中。當顯示在附加內容列表中的刪除按鈕之一被按壓 時,常SI^禾聘參考合并管理信息文件讀鵬M滁的附加內容的目錄, 并朋嶸該目錄。對應于該內容的內容ID的合并管理信息也從合并管理信 息文件W滁。
圖38是關于本魏例的從BI>ROM的裝鶴到S^文的處理^f呈的流 程圖。虛以文件系統(tǒng)單元38首先檢驗被裝載的BD^ROM的爐ID (步驟 S91),讀取合并管理信息文件(步驟S92),并且判斷是否存頓應于被裝 載的BMIOM的MID的合并管理信息(步驟S93)。如果判斷是否定的 (步驟S93-否),則僅僅4頓原始BD"ROM執(zhí)行M^文(步驟S94)。如果判 斷是肯定的(步驟S93-是),則^M最新合并管理信息產(chǎn)生虛擬包(步驟 S95 )。妒^J以包期間,^M文件系統(tǒng)單元38判斷是否已檢測到麟(步 驟S96)。如果判斷^#定的(步驟S96^是),貝U戯文件系統(tǒng)單元38判斷 是否存^f應于BD-ROM的MID的在先的合并管理信息(步驟S97)。 如果判斷是肯定的(步驟S97:是),則,在M 合并管理信息之前的合并 管理信息的版本產(chǎn)M^l包(步驟S98)。如果判斷是否定的(步驟S97-否), 則僅僅^ffi原始BI>ROM執(zhí)行重放(步驟S94)。如果在步驟S96未檢測至U職,艦產(chǎn)生的虛擬包執(zhí)行SJ夂(步驟S99)。典型ltm包括^i 合并 管理信息中的I^和不存^M播放列表弓1用的 流等。
根據(jù)本實施例,通過將先前的合并管理信息保存在合并管理信息文件 中,可以參考合并管理信息文件的內容歷史使用合并管理信息的舊版本從 E^裝置中的常駐應用禾旨產(chǎn)生虛擬包。如果在產(chǎn)生虛擬包期間出現(xiàn)l^, 可以通過產(chǎn)生虛擬包的舊版本作為備選的動作過程避免所述問題。
實施例4
本實施例涉及一種方法,該方法用于當Java應用禾1^請求 包,
附旨定戯以包的有效期限,和僅僅在有效期限內4頓虛擬包執(zhí)行m^
圖39顯示了當請求^J以包更新時被指定的有效期限。Java鵬禾聘指 定用于合并的附加內容的內容ID和用于lW包的使用的有效期限。例如, 如果用戶想要作為虛擬包播放內容直到光盤被退出并且然后在重裝載光盤 之后僅僅4頓原始BD^ROM播放內容,貝U到M:被退出為止J際^J以包是 有效的值在從Java自禾Mi^請求虛擬包更新時的自M中被指定。
圖40是關于本 例的從BD~ROM的裝載(^m裝置的重啟)直 到重放的處理流程的流程圖。虛擬文件系統(tǒng)單元38首先檢驗被裝載的 BD-ROM的她ID (步驟S101),微合并管理信息文件(步驟S102), 并且判斷是否存^"應于被裝載的BMlOM的光盤ID的合并管理信息(步 驟S103)。如果判斷是否定的(步驟S103-否),則僅僅《柳原始BD-ROM 執(zhí)行mm (步驟S104)。如果判斷是肯定的(步驟8103=是),則虛擬文件 系統(tǒng)單元38判斷相應的合并管理信息是否在有效期限內(步驟S105)。如 果不再有效,貝腿鵬相應的合并管理信息(步驟S106),并且僅僅4頓原始 BI>ROM執(zhí)行S^夂(步驟S104)。如果臓有效,貝IJ相應的合并管理信息 用于產(chǎn)頓以包(步驟S107),并且艦虛擬包執(zhí)行誠(步驟S108)。
需要注意的是作為本實施例的鵬也可以想至'淇中僅Java模^^擬包 被產(chǎn)生的方式。如果當從Java應用,請求產(chǎn)MJ以包時僅指定Java ,試, 當存抓DVD-like模式到Java模式的過渡時,虛擬文件系統(tǒng)單元38產(chǎn)生 ^m包并且然后變換到Java模式。相反地,當存^EA人Java模式到DVD4ike 豐試的遺度時,在取消虛擬包并回穀(J原始BE^ROM之后虛擬文件系統(tǒng)單 元38變換到DVEMike模式。根據(jù)本實施例,有可能使用虛擬包指定重放的有效期限,由此允許使
用僅一7,擬包(即一旦BD^ROM被退出就被禁止的虛擬包)進行S^文, 和產(chǎn)生帶有使用期限限制的虛擬包。
需要注意的是在本實施例中有效期限在請求虛擬包更新時被指定,有 效期限也可以在裝載BD-ROM之后請求產(chǎn)生虛擬包時被指定。
實施例5
下面是關于在實施例1的圖25中的步驟S23的調用,禾,的權限的 具鵬述。具體而言,本實施例涉及拒鄉(xiāng)缺自未授權Java鵬禾群的^J以 包Mf i青求的方法。
圖41顯示了用于篩選虛擬包更新青求的許可請求文件。如上戶皿,在 來自Java應用禾旨的更f i青求的基礎上執(zhí)行虛擬包Mf 。然而,當在來自 未授權Java應用禾,的請求的^5出上執(zhí)《亍Mi 時,由于 限制被改變或 者僅僅可以在某些條件下查看的視頻剪輯的重放被允許,存在光盤內容被 一瞎更新的危險。鑒于此,根據(jù)本實施例的虛擬包更新僅僅可以由具有更 ffi午可的Java應用禾,請求,戶皿Mifi午可^M禍青求,的許可已被準 許的信息。Mt驗與發(fā)布請求的Java ,禾辦對應的許可請求文件的內 容判斷是否具有魏許可。具體而言,類裝載器根據(jù)各個許可請求文件的 內容限制Java應用禾辦的功能。例如,如果許可請求文件中的頓屬性值 為"真"則處理^ffi青求,如果為"假"貝IJ拒絕。
圖42顯示了3動口OT于合并的本地存儲器中的目:^1的訪問限制。如 果用于合并的目錄的內容由未授權Java 更改,即使^i i青求被篩 選也存在虛擬包的內^l婦瞎改變的危險。鑒于此,也在各個許可請求文 件的內容的基礎上限制對本地存儲器訪問的許可。例如,如果許可請求文 件中的讀和寫屬性值都為"真",下載的內容可以被寫入并且存儲的文件可 以被讀取和編輯。然而,將在帶有讀和寫屬性之一或兩者為"假"的許可 請求文件的Javai^禾,,或不帶有許可請求文件的Java,禾,上^J口
文件訪問限制。
根據(jù)本實施例,可以防1 授權Java應用旨Hi 虛擬包和改變本地 存儲器中的目錄的內容。
下面是4頓許可請求文件來限制虛擬包更新的具體例子??紤]一個例子,其中本地存儲器中的目錄被分i^合電影作品的特定f共應商。具體而言,
假設由A工作室、B工作室和C公司跑共的內容同時存儲在本地存儲器中 和BD-ROM上。在這里,C公司是數(shù)字^V志的供應商。當合并本地存儲器 和BD-ROM中的內容時,例如如果B工作^^f提供的內容與A工作室所 劍共的內容合并將出現(xiàn)問題。鑒于此,僅僅準許C公司的Mf i午可(即許 可請求文件中的更新屬性值設置為"真"),由此允許使各種服務可用。A 工作室和B工作室僅僅會^I多合并它們自己的內容。 實施例6
本實施例涉及一種方法,該方法用于在Java應用辦在多個標肚操 作的情況下在標題變化期間,虛擬包。
圖43顯示了其生命周期被限制到單一標題的Java應用禾聘和其生命周 期^^賣多個標題的Java ,禾旨。Java應用程序的生命周期,用程序管 理信息中MM示,并且?!姥牍芾砥?3根據(jù) 用禾聘管理信息管理Java應 用禾雖芋的開始和結束。Java應用禾M^包括僅僅在它們開始的標題內存在的 那,用禾ij^ (在下文被稱為"標 定自禾驕")和可以在多個標^h 存在的那些應用旨(在下文t皮稱為1示g綁定應用,")。應用禾iif 管理信息包創(chuàng)示題數(shù)目,應用禾Mi^ ID和顯^f寺定Java應用禾M1^是否被綁定 的信息。
在圖43戶標的鵬禾聘管理信息中,例如,在標雕l中Java應用程 序#1被綁定而Java應用禾M)f #2鄉(xiāng)定。模塊管理器33連同標飄l的結束 —起終止綁定Java鵬禾辦l。在另一方面,在標飄l結貌后允許總 定的Java,^^粒存活,并且根據(jù)下一個標題的,程序管理信息作出 是否終止i^S用超芋的決定。由于圖43中的應用程序管理信息的例子表明 Java,ID^2可以同時在標題#1和標 2中存在,因此允i午i^ffl, ^EiA標騮l至訴示騮2的逾度期間存活。然而,由于Java卿禾Mi^2在標 飄2中是標題綁定的,因此?!姥牍芾砥?3連同該標題的結束一起終lh^用 辦。
圖44顯示了在標題變化期間當Mf ^m包時在^^定標題的自禾聘 上執(zhí)行的處理。如圖43中戶^,可以在標題變4tt前的標題和之后的標題 中同時存在的標駄綁定應用禾歸在標題變化期間繼續(xù)工作。然而,如果請求虛擬包更新,包括標題*^定應用,驕的所有應用禾,在標題變化期 間被終止。在更新虛擬包之后,標題未綁定應用禾,然后與屬于下一個標 題的標,定自,,一起ltt新啟動。
圖45是考慮總定標題鵬禾聘的標題變化處理的流程圖。當標題重 放開始時(步驟Slll),齒以文件系統(tǒng)單元38首先判斷在當前標題SJ文期 間是否已從Java應用禾im青求虛擬包魏(步驟S112)。如果判斷是肯定 的(步驟S112二是),則虛擬文4牛系統(tǒng)單元38執(zhí)《亍S)f準備(步驟S113)。
當標題變化發(fā)生時(步驟siM),虛擬文件系統(tǒng)單元38判斷miH青求是否
已被處理(步驟S115)。如果判斷是肯定的(步驟S115-是),終止包括標 題未綁定應用程序的所有應用程序(步驟S116),并且,虛擬包(步驟 S117)。然后在標題變fct后播放下一個標題(步驟S118)。如果在步驟S112 虛擬包Mf ^被請棘者如果在S115挪青^^被處理,則當標題變 化發(fā)生,塊管理器33僅僅終止標鵬定鵬辦(步驟S119)。
由于本實施例保iiE^有應用禾驕在虛擬包的Mi 期間被終止,因此根 據(jù)對舊的Mf 前文件的參考仍然保留在高速緩存中或者新文件與舊文件一 起雜于高速緩存中,有可能在完^ 包魏之后防止^{可連貫性損失。
需要注意的是如果肖激在多"tmh存在的Java自禾辦
定應用禾聘")在請求虛擬包iEif之后發(fā)生標題變化時正ffl:作,皿以與
光盤變化操作相同的方式對待虛擬包更新,光盤未綁定應用,可以繼續(xù) 工作而不會被強制終止。
還需要注意的是^^標題變4tt后模塊管理器33可以根據(jù)完自擬
包更新之后Mf 的應用禾i^管理信息,管理標^^綁定應用禾,的開始和 結束,而不會在,期間終止標g綁定應用,。在該情況下,在更新 完虹前,使標^l^定應用辦參考頓前的戯以包。 實施例7
本實施例涉及在INDEX.BDMV文j牧tt^后的^J以包Mf 。 一旦接 收來自Java應用程序的虛擬包更新請求,虛擬文件系統(tǒng)單元38確認 INDEX.BDMV文件存在于用于合并的目錄中。如果INDEX.BDMV文件存 在,戯文件系統(tǒng)單元38為準備Mff^取INDEX.BDMV文件。然后現(xiàn)有 的INDEX.BDMV文件M^效而新的INDEX.BDMV文件生效。如果例如行標題搜索或Java細禾將采穀示題信息,在 標題變粒前艦該新歸EX.BDMV文件。換句話說,在魏標題結構 之后事先通知Java 1^,im和用戶使得有可能防止標題變化為將在Mfi之 后停止存在的標題^t示題變化到未予鵬月的標題。
圖46是在INDEX.BDMV文j牧^t后的虛擬包Mi 的流程圖。首先, 當在Java模式中播放標題時(步驟S121),虛擬文件系統(tǒng)單元38判斷Java 應用辦是否已請求娜包更新(步驟S122),并且如果己請求,貝爐擬文 件系統(tǒng)單元38接收請求并且^l行Mff準備(步驟S123)。在檢驗文件和目 錄結構是否正確的同時,虛擬文件系統(tǒng)單元38判斷INDEX.BDMV文件是 否存在(歩驟S124)。如果INDEX.BDMV文件存在,則在判斷是否已發(fā)生 標題調用之前(步驟S126),虛擬文件系統(tǒng)單元38使現(xiàn)有的INDEX.BDMV 文件無效并且鄉(xiāng)的膨EX.BDMV文件生效(步驟S125)。參考在步驟 S125中生效的INDEX.BDMV文件從BD播放器中的常S^用禾,^A人 Java ,fiWl行標題變化。當標題變化發(fā)生時戯以文件系統(tǒng)單元38執(zhí)行 魏(步驟S127)。
因而,盡管在更f i青求后發(fā)生標題變tt^前不執(zhí)行虛擬包更新,在標 題變粒前可以鄉(xiāng)INDEX.BDMV文件可用。這意贈在挪青fe后, 在標題,期間顯示的標題列表將在標題變化發(fā)^t前已變化。
由于用戶然后基于改變的標題列 擇標題,因此可以防止由選稱每 在更新之后停止存在的標題弓胞的錯誤。因而可以在標題變化期間更新虛 擬包而不會出現(xiàn)問題,即使由于Mf 而改變了標題結構。
需要注意的是可以 啟BD播放器之后執(zhí)行在INDEX.BDMV文ff^ 粒后的娜包魏。
翅
以上基于,實施例描述了關于本發(fā)明的S^文,,盡管本發(fā)明當然 不限于這些實施例。
關于其僅有的功能是播放記錄介質的S^S描述了以上實施例,盡 管本發(fā)明并不限于此。例如,本發(fā)明可以是具有記錄和離功能的記敦重
、文件可以方燈在^頓任何類型結構的本地存儲器中,只要與用于合并的BD-ROM上的文件的對應M被清楚地顯示。
在以上實施例中,Java (注冊商標)用作^J以機的編程語言,盡管也可 以使用除了 Java之外的編程語言,這樣的例子包括Perl Script, ECMA Script 和B-Shdl等,其與UN1X (、 商標)操作系統(tǒng)一起f頓。
關于播放BD-ROM的MJ夂^g描述了以上實施例,盡管當然可以在如 以上實施例中描述的BD-ROM上的必要 被記錄在可寫光記錄介質上的 情況下實現(xiàn)與以上相同的效果。
而且,當然可以在如以上實施例中描述的BI>ROM上的必要,被記 錄在除了光記錄介質之外的便攜式記錄介質(例如SD卡,小型閃存等)上 的情況下實現(xiàn)與以上相同的效果。
構成本發(fā)明的重放裝置可以在制造業(yè)中經(jīng)營地、持續(xù)地和重復地 被制造。該重放裝置特別應用于關于視頻內容產(chǎn)品的電影和消費用品 產(chǎn)業(yè)。
權利要求
1.一種邊與執(zhí)行中的應用程序相連動、邊播放數(shù)字流的重放裝置,所述重放裝置包括包管理單元,用于根據(jù)可重寫記錄介質上記錄的合并管理信息,來組合記錄在記錄介質上的文件和記錄在可重寫記錄介質上的文件,從而生成虛擬包,以及將所述虛擬包的生成所使用的合并管理信息所指示的文件變?yōu)橹蛔x,所述合并管理信息指示用于組合到所述記錄介質的文件;選擇單元,用于從所述虛擬包檢測出多個可播放標題,并且選擇其中一個作為當前標題;處理單元,用于執(zhí)行與所述當前標題相關的應用程序;以及重放控制引擎,用于根據(jù)所述當前標題中指定的、并且包括在所述虛擬包中的播放列表信息,控制數(shù)字流的重放,其中所述虛擬包的生成所使用的合并管理信息包括文件名映射信息,該文件名映射信息包括所述可重寫記錄介質上記錄的第一文件的名稱和該第一文件的文件路徑,以及,在所述生成的虛擬包中利用該第一文件時的文件的名稱和所述生成的虛擬包中利用的文件的文件路徑,當通過所執(zhí)行的所述應用程序指定與所述包信息的生成所使用的合并管理信息不同、且被記錄在所述可重寫記錄介質上的新的合并管理信息,來請求所述包管理單元進行所述生成的包信息的更新時,所述包管理單元,在更新所述虛擬包之前,將所述指定的新的合并管理信息所指示的、記錄在所述可重寫記錄介質上的文件變?yōu)橹蛔x,并且,在由于所述選擇單元進行的新的當前標題的選擇,使得重放控制引擎停止根據(jù)所述當前標題中指示的播放列表信息進行的數(shù)字流重放時,根據(jù)所述指定的新的合并管理信息,組合記錄在所述記錄介質上的文件和記錄在所述可重寫記錄介質上的文件,生成新的虛擬包,同時,當所執(zhí)行的所述應用程序指定所述生成的虛擬包上的文件路徑和文件的名稱并請求訪問時,根據(jù)所述虛擬包的生成所使用的合并管理信息中包含的文件名影射信息,在該指定的名稱的文件是第一文件的情況下,訪問由所述第一文件的存儲位置標識的所述可重寫記錄介質上記錄的第一文件。
2. —種邊與執(zhí)行中的應用程序相連動、邊播放數(shù)字流的重放方法,所述重放方法包括虛擬包生成步驟,用于根據(jù)可重寫記錄介質上記錄的合并管理信 息,來組合記錄在記錄介質上的文件和記錄在可重寫記錄介質上的文 件,從而生成虛擬包,所述合并管理信息指示用于組合到所述記錄介 質的文件;屬性變更步驟,將所述虛擬包的生成所使用的合并管理信息所指 示的文件變?yōu)橹蛔x;選擇步驟,用于從所述虛擬包檢測出多個可播放標題,并且選擇 其中一個作為當前標題;處理步驟,用于執(zhí)行與所述當前標題相關的應用程序;以及重放控制步驟,用于根據(jù)所述當前標題中指定的、并且包括在所 述虛擬包中的播放列表信息,控制數(shù)字流的重放,其中所述虛擬包的生成所使用的合并管理信息包括文件名,信息, 該文件名日^f信息包括:戶7M可重寫記錄介質上記錄的第一文件的名稱 和該第一文件的文件路徑,以及,在所述生成的虛擬包中利用該第一 文件時的文件的名稱和所述生成的虛擬包中利用的文件的文件路徑,當通過所執(zhí)行的所述應用程序指定與所述虛擬包的生成所使用 的合并管理信息不同、且被記錄在所述可重寫記錄介質上的新的合并 管理信息,來請求所述生成的虛擬包的更新時,在更新所述虛擬包之前,通過所述屬性變更步驟,將所述指定的 新的合并管理信息所指示的、記錄在所述可重寫記錄介質上的文件變 為只讀,并且,在由于所述選擇步驟中的新的當前標題的選擇,使得重放控制步 驟停止根據(jù)所述當前標題中指示的播放列表信息進行的數(shù)字流重放 時,在所述虛擬包生成步驟中,根據(jù)所述指定的新的合并管理信息,組合記錄在所述記錄介質上的文件和記錄在所述可重寫記錄介質上 的文件,生成新的虛擬包,同時,當所執(zhí)行的所述應用程序指定所述生成的虛擬包上的文件 路徑和文件的名稱并請求訪問時,根據(jù)所述虛擬包的生成所使用的合 并管理信息中包含的文件名影射信息,在該指定的名稱的文件是第一 文件的情況下,訪問由所述第一文件的存儲位置標識的所述可重寫記 錄介質上記錄的第一文件。
全文摘要
一種結合應用程序用于播放數(shù)字流的重放裝置包括包管理單元,用于根據(jù)合并管理信息通過合并記錄在第一記錄介質和第二記錄介質上的文件來生成包信息,和選擇單元,用于檢測來自包信息的多個可播放標題,并且選擇所檢測到的標題中的一個作為當前標題。在應用程序通過指定新合并管理信息請求包管理單元更新合并管理信息之后,在更新包信息之前,包管理單元將從新指定合并管理信息引用的文件變?yōu)橹蛔x,并且在數(shù)字流重放由于選擇單元選擇的當前標題變化而停止時,包管理單元根據(jù)新指定的合并管理信息通過組合記錄在第一和第二記錄介質上的文件生成新包信息。
文檔編號G11B27/34GK101587736SQ20091015126
公開日2009年11月25日 申請日期2005年7月21日 優(yōu)先權日2004年7月22日
發(fā)明者大戶英隆, 大蘆雅弘, 田中敬一 申請人:松下電器產(chǎn)業(yè)株式會社