国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      在交互式媒體環(huán)境中呈現(xiàn)和合成多個應(yīng)用程序的制作方法

      文檔序號:6568039閱讀:158來源:國知局
      專利名稱:在交互式媒體環(huán)境中呈現(xiàn)和合成多個應(yīng)用程序的制作方法
      在交互式媒體環(huán)境中呈現(xiàn)和合成多個應(yīng)用程序 相關(guān)申請聲明本申請要求2005年7月1日提交的臨時申請第60/695,944號的優(yōu)先權(quán),該臨 時申請通過引用結(jié)合于此。技術(shù)領(lǐng)域所描述的安排、系統(tǒng)和方法一般涉及交互式媒體,尤其涉及在交互式媒體環(huán) 境中呈現(xiàn)和合成多個應(yīng)用程序。背景交互式媒體環(huán)境一般是在可用處理能力、存儲器和對該環(huán)境中運行的應(yīng)用程 序可用的其它資源方面受到約束的資源。交互式媒體的一個常見示例是在DVD(數(shù) 字多功能盤)上編碼的視頻,其中用戶可以與圖形菜單或其它控件交互以導(dǎo)航到特 定的視頻內(nèi)容或調(diào)用被設(shè)計到DVD中的特殊特征。在典型的交互式媒體環(huán)境中,諸如圖形和菜單等可視元素被給予"Z順序", 它為顯示屏上的元素提供一視覺順序。Z順序控制可視元素如何顯現(xiàn)為沿從該顯示 屏向外延伸的假想z軸一個堆疊在另一個上。具有較低Z順序的可視元素顯現(xiàn)為 在顯示的底部(并且遠(yuǎn)離觀眾),而具有較高Z順序的可視元素顯現(xiàn)為在較低Z 順序元素之上(并且因此更接近觀眾)。一般而言,當(dāng)呈現(xiàn)用于顯示的可視元素時,首先繪制較低Z順序的元素,然 后是較高Z順序的元素。較高Z順序的可視元素因此被繪制在較低Z順序的元素 上,且可能會遮蔽其一部分或全部。這樣,顯示能正確地顯現(xiàn),其中堆棧中的可視 元素具有正確的重疊和相對順序。然而,這種方法迫使資源聚焦在最底部的可視元 素上(因為它們被最先繪制),這可能是低效的。處理能力浪費在繪制低Z順序 的可視元素上,即使這些元素在完全繪出的情形中最終會被較高Z順序的元素遮 擋。這種低效可能會使系統(tǒng)資源負(fù)擔(dān)過重,并且導(dǎo)致諸如視頻回放中的中斷以及該 環(huán)境中視頻和圖形之間的同步等不合需要的播放器行為。
      概述在交互式媒體環(huán)境中,提供了一種模型,其中各自包括零個或多個腳本組件 以及零個或多個標(biāo)記文件的應(yīng)用程序本身作為具有Z順序的可視元素被處理。利 用了一呈現(xiàn)順序,其中在交互式媒體環(huán)境中具有焦點(根據(jù)其接收用戶事件)的應(yīng) 用程序被首先呈現(xiàn)。然后以從頂向下的順序,即以相反的Z順序呈現(xiàn)其余的應(yīng)用程序。呈現(xiàn)是通過繪制到與相應(yīng)應(yīng)用程序相關(guān)聯(lián)的一個或多個圖形緩沖區(qū)中來執(zhí)行 的。用于應(yīng)用程序的幀從底向上以Z順序從圖形緩沖區(qū)中合成,以向顯示提供正 確外觀。在各個說明性示例中,回放系統(tǒng)中的導(dǎo)航管理器為運行在該回放系統(tǒng)上的應(yīng) 用程序維護Z順序。演示引擎將應(yīng)用程序繪制到應(yīng)用程序標(biāo)記中的畫布對象上,該畫布對象以相反的z順序按照應(yīng)用程序被呈現(xiàn)到相應(yīng)的圖形緩沖區(qū)中。圖形呈 現(xiàn)引擎使用畫家(Painter)算法以Z順序按照應(yīng)用程序從圖形緩沖區(qū)中合成幀。應(yīng) 用程序還可調(diào)用各種方法以穿過堆疊在其上(即,具有較高Z順序)的應(yīng)用程序 來可視地將應(yīng)用程序可視元素從堆棧底部提升,或?qū)⒃叵聣旱斤@示中更低的位 置。有利的是,將應(yīng)用程序按照相反的Z順序呈現(xiàn)到圖形緩沖區(qū)中,之后按照Z 順序來合成顯示在包括處理器周期和存儲器在內(nèi)的硬件資源一般受到限制的環(huán)境 中提供了一種資源高效的模型。給予聚焦應(yīng)用程序和較高Z順序的應(yīng)用程序更自 然的優(yōu)先級,使得在繪制最終可能會被覆蓋繪制并遮蔽的較低Z順序的可視元素 時花費更少的資源。附圖簡述

      圖1是示出構(gòu)成在交互式媒體環(huán)境中使用的應(yīng)用程序的元素的說明性框圖; 圖2是示出多個標(biāo)記文檔和腳本之間的關(guān)系的圖示;圖3是包括交互式內(nèi)容處理器、視頻內(nèi)容處理器和混合器的說明性交互式媒 體播放器的框圖;圖4是第二說明性交互式媒體播放器的框圖;圖5是具有多個事件隊列和單個應(yīng)用程序線程的說明性安排的框圖;圖6是一說明性事件隊列的框圖,它示出了首先按照開始時間,然后按照工 作項被插入到事件隊列中的時間對工作項的排序;
      圖7是應(yīng)用程序線程自動將兩個工作項插入到事件隊列的結(jié)尾處的說明性安 排的框圖;圖8是用于將與交互式媒體環(huán)境中發(fā)生的事件相關(guān)聯(lián)的工作項排隊的說明性 方法的流程圖;圖9是在交互式圖形合成模型中使用的一組平面的框圖;圖10是示出第一說明性應(yīng)用程序中的可視元素的Z順序的圖示;圖11是示出第二說明性應(yīng)用程序中的可視元素的Z順序的圖示;圖12是示出具有從圖10和ll所示的應(yīng)用程序生成的可視元素的合成顯示的圖示;圖13是示出其中應(yīng)用程序按照優(yōu)先級順序來呈現(xiàn)并以從底向上的順序來合成 的說明性安排的圖示;圖14是其中應(yīng)用程序以優(yōu)先級順序來呈現(xiàn)并以從底向上的順序來合成的說明 性方法的流程圖;以及圖15是一說明性回放系統(tǒng)的框圖;。詳細(xì)描述參考圖1,示出了構(gòu)成在交互式媒體環(huán)境中使用的應(yīng)用程序110的元素的說明 性框圖。通常在交互式媒體環(huán)境中使用應(yīng)用程序來允許用戶與在耦合的顯示設(shè)備 (諸如電視機或監(jiān)視器)上呈現(xiàn)圖形和視頻的交互式媒體播放器之間通過諸如遙控 器等用戶接口的交互。更具體地,應(yīng)用程序控制該環(huán)境中各種內(nèi)容對象的演示行為, 包括視頻回放。視頻上諸如菜單和交互式按鈕等圖形對象的演示也是使用應(yīng)用程序 來實現(xiàn)的。應(yīng)用程序還管理并控制該環(huán)境中的音頻回放和聲音??梢詷?gòu)想,多個應(yīng) 用程序一般將同時在最具交互性的媒體設(shè)置下運行。然而,對于應(yīng)用程序同時運行 并沒有要求,并且在特定的設(shè)置下劃分或聚集應(yīng)用程序的決定是交互式媒體作者的 設(shè)計選擇。應(yīng)用程序還可取決于特定設(shè)置的要求在邏輯上被細(xì)分為應(yīng)用程序頁。應(yīng)用程序110包括包含零個或多個腳本文件117和119的腳本主機115以及 用于生成文檔對象模型(DOM)的零個或多個標(biāo)記文檔120。標(biāo)記文檔120包括 與例如圖形對象的內(nèi)容、樣式、定時和布局有關(guān)的信息。由此, 一般使用標(biāo)記上下 文在交互式媒體環(huán)境中的圖形平面上提供圖形。在該說明性示例中,標(biāo)記文檔是依照W3C標(biāo)準(zhǔn)的XML文檔文件。如圖1所 示,可使用標(biāo)記中〈head〉(首部)部分中的〈nclude〉(包括)元素來訪問多個物
      理XML文件。在某些設(shè)置中,對應(yīng)用程序而言較佳的可能是一次沒有多于一個的活動標(biāo)記。然而,應(yīng)用程序可通過使用標(biāo)記中的^ink〉(鏈接)元素來切換其標(biāo)記 120?;蛘?,應(yīng)用程序可通過利用允許應(yīng)用程序獲取對當(dāng)前應(yīng)用程序內(nèi)的功能對象 的訪問的應(yīng)用程序編程接口(API)來切換其標(biāo)記120。使用通過API的loadMarkup() (加載標(biāo)記)調(diào)用,應(yīng)用程序可通過經(jīng)由API傳遞新標(biāo)記的統(tǒng)一資源標(biāo)識符(URI) 來切換標(biāo)記文件120。在應(yīng)用程序訪問新標(biāo)記的情況下,API調(diào)用僅在應(yīng)用程序中的當(dāng)前事件處理程 序完成執(zhí)行其當(dāng)前任務(wù)之后才生效。待決的任何當(dāng)前標(biāo)記相關(guān)事件處理程序也被取 消,因為一旦新標(biāo)記被加載,該新標(biāo)記將使那些事件處理程序無效。在該說明性示例中,腳本主機115包含與標(biāo)記120 —起使用來實現(xiàn)交互式媒 體體驗的腳本文件117和119。腳本文件117和119可例如使用如由國際歐洲計算 機制造協(xié)會(Ecma International)在ECMA-262規(guī)范中定義的ECMAScript (ECMA 腳本)來實現(xiàn)。被歸入ECMA-262的常見腳本化編程語言包括JavaScript和JScript。 在某些設(shè)置中,可能期望使用ECMAScript 262的一個子集,具體地是ECMA-327, 連同一主機環(huán)境和一組公共API來實現(xiàn)腳本117和119。大多數(shù)設(shè)置中的腳本上下 文用于處理來自用戶的交互式控制問題以及系統(tǒng)事件、圖形控制、視頻回放、資源 管理(例如,使用高速緩存或持久存儲資源)以及僅使用標(biāo)記120不能容易或有效 地實現(xiàn)的其它問題。API以及資源對應(yīng)用程序110的可用性由圖1中的參考標(biāo)號125來指示。資源 包括例如音頻和視頻文件、字體、圖片和圖像(例如,采用常見的文件格式,包括 PNG、 JPEG、 GIF、 BMP、 TIFF等)以及應(yīng)用程序根據(jù)特定設(shè)置的環(huán)境所需的其 它資源。每一應(yīng)用程序110維護其自己的腳本主機115,它維護用于腳本的變量、函數(shù) 和其它狀態(tài)的上下文。在大多數(shù)設(shè)置中, 一個應(yīng)用程序中的變量和函數(shù)對另一應(yīng)用 程序是不可見的,除非該應(yīng)用程序例如通過使用跨所有應(yīng)用程序共享的對象被特別 地設(shè)置成允許這樣的跨應(yīng)用程序可見性。例如,在該說明性示例中,交互式媒體播 放器具有跨所有應(yīng)用程序共享的單個實例。因此,可任選地,特殊對象可例如使用 0++對象而被置于腳本主機115內(nèi)部,以實現(xiàn)其中該特殊對象都引用例如播放器的 同一內(nèi)部函數(shù)的單元素(singleton)(即, 一對象具有有限的實例化)。該可任選 方面允許交互式媒體腳本作者在邏輯上將公共對象作為單元素來對待,同時仍允許 腳本主機115實現(xiàn)將一對象展示給單個腳本主機所必需的功能。
      現(xiàn)在參考圖2,提供了示出多個標(biāo)記文檔和腳本之間的關(guān)系的圖示。應(yīng)用程序清單230與應(yīng)用程序交互,如上所述,應(yīng)用程序一般由所示的資源125、腳本205 和標(biāo)記文檔251、 260和275來定義。每一應(yīng)用程序在大多數(shù)設(shè)置中通常使用單個 應(yīng)用程序清單文件,但是應(yīng)用程序清單不是應(yīng)用程序的運行時狀態(tài)的一部分。在該 說明性示例中,應(yīng)用程序清單230被編碼為XML文檔文件。應(yīng)用程序清單230描述了要由應(yīng)用程序110 (圖1)使用的初始標(biāo)記文件251 以及腳本主機115 (圖l)中包含的腳本文件一在圖2中由帶參考標(biāo)號205的矩形 來共同指示。如果應(yīng)用程序清單230列出了一個以上腳本,如本說明性示例中所示 的,則所有腳本都被加載到交互式媒體播放器的腳本處理引擎中。由此,多個腳本 文件如同腳本作者將所有腳本文件按照應(yīng)用程序清單230中列出的順序串接成單 個大文件那樣被對待和表現(xiàn)。如圖2所示,應(yīng)用程序清單230引用資源125。對交互式媒體環(huán)境中應(yīng)用程序 可用的資源形成了一有向圖,其根為應(yīng)用程序清單230中引用的資源125。用于每 一應(yīng)用程序的圖形的允許范圍由應(yīng)用程序清單230來規(guī)定。圖2示出了在交互式媒體環(huán)境中運行的應(yīng)用程序。如上所述,應(yīng)用程序一次 可以僅有一個活動標(biāo)記,且應(yīng)用程序內(nèi)容按應(yīng)用程序保持分開。如由標(biāo)記頁251、 260和275之間的箭頭所指示的,應(yīng)用程序能夠經(jīng)由腳本205從標(biāo)記頁251前進到 260,之后從頁260前進到275。交互式媒體環(huán)境中應(yīng)用程序的上下文執(zhí)行行進由播放列表290來指導(dǎo),播放 列表描述了環(huán)境中包括由播放器呈現(xiàn)到顯示設(shè)備上的演示對象在內(nèi)的對象之間的 關(guān)系以及其它內(nèi)容。這些演示對象通常包括由應(yīng)用程序產(chǎn)生的視頻(可以包括如以 下更詳細(xì)描述的多個流)和圖形。播放列表290還將跨交互式媒體環(huán)境的多個資源作為單個管理實體來管理, 以有效地分配并控制應(yīng)用程序?qū)Y源的消費。如同應(yīng)用程序清單230 —樣,播放列 表290在大多數(shù)設(shè)置中可被有利地具體化為XML文檔文件。圖2中的標(biāo)記頁可在某些設(shè)置中用于向執(zhí)行上下文(由圖1中的腳本文件117 和119創(chuàng)建)激發(fā)事件。執(zhí)行上下文然后操縱由當(dāng)前應(yīng)用程序標(biāo)記創(chuàng)建的DOM。 當(dāng)在交互式媒體環(huán)境中使用標(biāo)記來指定該環(huán)境中的圖形對象的樣式、內(nèi)容、定時和 布局(如由圖2中的元素253、 262和277所表示的)時,腳本和標(biāo)記的組合允許 創(chuàng)建一組綜合能力。圖3是第一說明性交互式媒體播放器305的框圖,它包括交互式內(nèi)容處理器 (ICP) 335、視頻內(nèi)容處理器(VCP) 310和混合器339。注意,圖3所示的安排 提供了描述說明性交互式媒體播放器305中與應(yīng)用程序狀態(tài)管理有關(guān)的特征和功 能的邏輯模型。由此,交互式媒體播放器的實際實現(xiàn)可利用各種結(jié)構(gòu)形式,同時仍 如此處所描述的操作以實現(xiàn)應(yīng)用程序狀態(tài)管理的好處。交互式媒體播放器305通常 用諸如單機消費者電子設(shè)備等專用硬件來實現(xiàn),或者使用采用計算機可讀介質(zhì)以及 諸如在個人計算機中找到的通用處理器的軟件實現(xiàn)來實現(xiàn)。VCP 310管理可通過網(wǎng)絡(luò)從多個源接收到的一個或多個媒體流,這些源包括 諸如DVD驅(qū)動器或高清晰度DVD (HD-DVD)驅(qū)動器等本地光驅(qū)、本地存儲器或 遠(yuǎn)程寬帶源。在本說明性示例中,VCP310包括一個或多個媒體處理器1,2.,.N, 如由圖3中的元素304和306所指示的。媒體處理器304和306處理所接收的通常 包括音頻和視頻的媒體流,以解碼并呈現(xiàn)作為音頻/視頻流在線路325上輸出的對 應(yīng)的圖像和聲音。音頻/視頻流325可以表示多個視頻元素,例如用于使用"畫中 畫"類型配置來呈現(xiàn)多個單獨的視頻窗口。媒體處理器304和306各自包括媒體源接口、多路分解器和解碼器。媒體處 理器304和306也可任選地包括解密能力。顯示設(shè)備355被耦合以接收并顯示音頻 /視頻流。利用媒體時鐘312,使得每一接收到的媒體具有相關(guān)聯(lián)的"媒體時間"。當(dāng)在 交互式媒體播放器305上暫停一視頻流時,媒體時鐘312也被暫停。當(dāng)視頻流被用 戶設(shè)置成比實時快或慢地行進時(例如,當(dāng)視頻流被置于快進、回退或慢動作模式 時一對這些模式中任一個的使用被稱為"特效播放"),則媒體時鐘312相應(yīng)地加 速或減慢。因此,媒體時間從媒體時鐘以及媒體處理器304和306的操作中得到。 媒體時間通過線路315被傳遞到ICP 335中的播放列表管理器337。交互式媒體環(huán) 境中的時間,包括媒體時間通常以"報時信號(tick)"來計數(shù)。ICP 335執(zhí)行所有應(yīng)用程序相關(guān)處理,并且可從可用硬件、軟件、固件或其組 合來實現(xiàn)的若干組件中安排。ICP335的組件包括,例如標(biāo)記引擎、腳本語言解釋 器以及XML解析組件(未示出)。ICP 335在線路321上輸出與視頻/音頻流325 同步的圖形流?;旌掀?38取線路321上的圖形流以及線路325上的音頻/視頻流, 使得圖形在視頻流上的圖形層中呈現(xiàn)以實現(xiàn)對用戶的交互式媒體會話。在大多數(shù)設(shè)置中,ICP 335輸出在逐幀的基礎(chǔ)上與視頻流同步的圖形。然而, 這一同步可使用其它基礎(chǔ)來執(zhí)行,包括例如時間(包括如以下定義的標(biāo)題時間和媒 體時間)、視頻中的內(nèi)容、或嵌入在視頻中的用于指示或標(biāo)記流中的特定點的其它
      元數(shù)據(jù)。ICP 335包括播放列表管理器337和任務(wù)管理器330。播放列表管理器337負(fù) 責(zé)控制環(huán)境中的演示對象。這些對象包括播放器305上的視頻回放以及運行以生成 交互式圖形的應(yīng)用程序。播放列表管理器337管理以上在伴隨圖2的文本中描述的 播放列表290。播放列表管理器337還計算與媒體流中的內(nèi)容的每一部分相關(guān)聯(lián)的"標(biāo)題時 間"。標(biāo)題是視頻和音頻內(nèi)容的唯一序列,它具有通常由DVD作者定義的開始和 結(jié)束時間。然而,這一作者定義的標(biāo)題可以是任意的。由此,視頻中察覺到的特定 內(nèi)容可以是一個標(biāo)題的一部分、 一個完整標(biāo)題或跨多個標(biāo)題運行。標(biāo)題的一個示例是美國在所有模擬和數(shù)字形式的預(yù)錄制視頻之前的版權(quán)警 告。DVD上有特色的吸引人的東西(例如,主電影)是另一示例,且通常是最長 的標(biāo)題。在某些設(shè)置中,電影中的各個章節(jié)可能被DVD作者指定為單獨的標(biāo)題。 對于所有這些標(biāo)題,標(biāo)題時間被定義為如在媒體時鐘312上所示的自從給定標(biāo)題開 始播放以來已經(jīng)過的時間。演示時鐘360在線路362上耦合到播放列表管理器。演示時鐘360是其時間 以與真實世界時鐘相同的步調(diào)改變的時鐘(g卩,演示時鐘360花費一秒的真實時間 來前進一秒)。與媒體時鐘312形成對比,演示時鐘360從不停止,并且不能被加 速或減慢。來自演示時鐘360的演示時間被傳遞到任務(wù)管理器330,后者使用它來 計算"應(yīng)用程序時間"和應(yīng)用程序"頁時間"。應(yīng)用程序時間是自從應(yīng)用程序啟動(或如以下更詳細(xì)描述地進入"活動"狀 態(tài))以來已經(jīng)過的時間。當(dāng)多個應(yīng)用程序在運行時,每一應(yīng)用程序具有其自己的應(yīng) 用程序時間的觀念。對于每一應(yīng)用程序,應(yīng)用程序時間總是在應(yīng)用程序在環(huán)境中啟 動時從零開始。例如,如果應(yīng)用程序Appl在20個任意時間單位的演示時間(對Appl是0 時間單位)處開始,并且應(yīng)用程序App2在25個時間單位的演示時間(對App2 是O時間單位)處開始,則在35個時間單位的演示時間處,Appl的應(yīng)用程序時間 是15個時間單位,而App2的應(yīng)用程序時間是10個時間單位。對于在邏輯上被細(xì) 分成頁的應(yīng)用程序,頁時間是自從應(yīng)用程序的頁被加載以來已經(jīng)過的時間。圖4是第二說明性媒體播放器405的框圖,它包括ICP435、 VCP410和混合 器439。說明性媒體播放器405在形式和功能上類似于圖3所示的交互式媒體播放 器305。然而,要注意,VCP 435包括被安排成向混合器439提供單獨的饋送425
      和427的媒體處理器1,2…N (如由圖4中的元素404和406所指示的)。這種安 排在對個別媒體流的操縱在混合之前執(zhí)行的某些設(shè)置中是合乎需要的。例如,諸如 對媒體流中的視頻的掃視和縮放等圖像處理/選擇技術(shù)可以在由圖4中的參考標(biāo)號 425和427所表示的N個單獨饋送中的一個或多個上實現(xiàn)。音頻/視頻饋送425和427以及來自ICP 435的同步圖形流在混合器439中混 合,并在線路441上輸出到顯示設(shè)備455。圖4中的其它元素,包括ICP 435 (包 括播放列表管理器437和任務(wù)管理器430) 、 VCP410中的媒體時鐘412以及演示 時鐘460以與其在圖3中示出并在相應(yīng)的文本中描述的對應(yīng)物相似的方式來配置和 運作。圖5是說明性安排500的框圖,它具有分別由參考標(biāo)號510、 515和518指示 的多個事件隊列1,2...N,以及單個應(yīng)用程序線程523。在這一說明性安排中,運 行在ICP (諸如圖4中的ICP 435)上的所有應(yīng)用程序都是單線程的,并且應(yīng)用程 序線程523專用于這一目的。然而,ICP 435本身不必是單線程的。在替換實現(xiàn)中, ICP 435可以利用其它線程,例如用于將資源預(yù)取到高速緩存中。事件隊列510、 515和518中的每一個被安排成從其頭端(位于圖5的右側(cè)) 饋入應(yīng)用程序線程523。分別由參考標(biāo)號527、530和532指示的多個應(yīng)用程序Appl, App2 ... AppN被安排成將分別由參考標(biāo)號535指示的工作項從隊列尾端(在圖5 的左側(cè))置入隊列510、 515和518中。應(yīng)用程序事件是由應(yīng)用程序激發(fā)的事件。這些可包括由腳本(例如,圖1中 的腳本主機115)或標(biāo)記(例如,圖1中的標(biāo)記120)激發(fā)的事件。在大多數(shù)情形 中,應(yīng)用程序事件僅由腳本來處理。然而,應(yīng)用程序527、 530和532不直接調(diào)用 腳本或標(biāo)記功能。相反,所有這些功能都以工作項的形式被置入應(yīng)用程序各自的事 件隊列中,并在應(yīng)用程序線程523處理該工作項時被調(diào)用。在替換安排中,來自除應(yīng)用程序之外的源的事件也使用事件隊列來調(diào)度。例 如,用戶事件通過用戶與遙控器的交互來激發(fā)。系統(tǒng)事件是由諸如圖4所示并在相 應(yīng)的文本中描述的播放器405等交互式媒體播放器激發(fā)的事件。事件隊列510、 515和518中的每一工作項包含如圖5所示的字段。這些字段 包括應(yīng)用程序關(guān)聯(lián)字段540、方法字段545、開始時間(BeginTime)字段552、結(jié) 束時間(EndTime)字段555以及可任選的時鐘選擇器(ClockSelector)字段558。應(yīng)用程序關(guān)聯(lián)字段540指示向其應(yīng)用工作項的特定應(yīng)用程序。方法字段545 包含當(dāng)該工作項由應(yīng)用程序線程523處理時調(diào)用的方法。方法字段545還包括用于
      該方法的自變量。開始時間字段552和結(jié)束時間字段555分別用于指示該工作項的方法何時開始和結(jié)束。在該說明性示例中,時間是使用應(yīng)用程序時間來表達(dá)的。然而,在替換示例中,開始時間字段552和結(jié)束時間字段555包含取決于特定設(shè)置的要求可替換 地用標(biāo)題時間、應(yīng)用程序時間或頁時間來表達(dá)的值。在這些情況下,由工作項使用 的特定時間幀在時鐘選擇器字段558中指示。不論所利用的時間幀是什么,工作項 的開始時間必定總是小于結(jié)束時間。圖6是示出其中包含的工作項的排序的事件隊列515的框圖。圖6中為便于 清晰說明起見沒有示出其它事件隊列510和518 (圖5)。然而,以下描述的排序 方法同樣適用于這些其它事件隊列。事件隊列515包括如分別由參考標(biāo)號605、 610、 615和620指示的工作項1、 2、 3…N。每一工作項包括圖5所示并在相應(yīng)的文本中描述的字段。工作項605包括開始時間i以及相關(guān)聯(lián)的插入到事件隊列515中的插入時間tp 如由圖6中的框630所指示的。類似地,工作項610包括開始時間2,以及相關(guān)聯(lián) 的插入到事件隊列515中的插入時間t2,如在框635中所指示的。工作項615包括 開始時間3,以及相關(guān)聯(lián)的插入到事件隊列515中的插入時間t3,如在框640中所 指示的。并且,工作項620包括開始時間N,以及相關(guān)聯(lián)的插入到事件隊列515 中的插入時間^,如在框645中指示的。在該說明性示例中,工作項在事件隊列515中首先按照開始時間,然后按照 工作項被插入到事件隊列中的時間來排序。這種排序?qū)е聭?yīng)用程序線程523按照開 始時間的順序來處理工作項,或者當(dāng)兩個工作項具有相同的開始時間時,按照FIFO (先進先出)的順序來處理。由此,當(dāng)工作項620位于事件隊列515的頭部時,暗示了開始時間w〈開始時 間3;或者如果開始時間^開始時間3,則&<13(即,工作項620在工作項615之 前插入到事件隊列515中)。根據(jù)這一相同的推導(dǎo),對于工作項605、 610和615, 則開始時間3<開'始時間2;或者如果開始時間3=開始時間2,貝ljt^t2;并且開始時間2<開始時間1;或者如果開始時間2=開始時間p則 事件隊列中對工作項的排序使用兩種替代方法來執(zhí)行工作項可在被插入到
      事件隊列時或者在處理之前從事件隊列中提取工作項時排序。任一安排都同樣可 用,只要對來自事件隊列的工作項的處理是按照開始時間然后按照隊列插入時間來 執(zhí)行的。圖7是一說明性安排的框圖,其中應(yīng)用程序線程523將兩個工作項705和715 自動插入到事件隊列515的尾部。為便于清晰說明起見,圖7中未示出其它事件隊 列510和518 (圖5)。然而,如下所述的應(yīng)用程序線程對工作項的自動插入同樣 適用于這些其它事件隊列。如圖所示,自動插入的工作項705和715在事件隊列 515中跟在工作項605和620后面。在一個說明性示例中,兩個工作項的自動插入 是在應(yīng)用程序啟動并且在每一報時信號之后重新調(diào)度工作項時執(zhí)行的。工作項705包括對標(biāo)記引擎(例如,圖4的ICP435中設(shè)置的標(biāo)記引擎)的調(diào) 用以處理對應(yīng)用程序App2 530中的頁的定時,如框730所示。在框735中,工作 項715包括對標(biāo)記的調(diào)用以使應(yīng)用程序App2的標(biāo)記回流來反映已處理的事件然后 在顯示設(shè)備(例如,圖4中的顯示器455)上呈現(xiàn)標(biāo)記。工作項705和715總是在 應(yīng)用程序的報時信號中由應(yīng)用程序線程523最后處理的工作項。圖8是用于對在交互式媒體環(huán)境中發(fā)生的事件相關(guān)聯(lián)的工作項排隊的方法的 流程圖。在采用單個應(yīng)用程序線程的事件排隊的說明性示例中,該方法由圖4-7所 示并在相應(yīng)的文本中描述的安排來執(zhí)行。所示的方法通常對每一報時信號迭代地執(zhí) 行。該過程在框805處開始。在框810處,當(dāng)應(yīng)用程序線程523 (圖5-7)能夠自 由處理工作項時,它首先標(biāo)記事件隊列中其開始時間對應(yīng)于當(dāng)前或先前的報時信號 的每一工作項。應(yīng)用程序線程523僅處理所標(biāo)記的工作項。由此,事件隊列515 中的工作項從不在其開始時間之前處理。在判別框816處,如果所標(biāo)記的工作項的結(jié)束時間已經(jīng)過去,則如框819中 所指示地,從事件隊列515中丟棄該工作項。在這一情況下,將不執(zhí)行對該工作項 的任何處理。萬一應(yīng)用程序App2 530重新加載其頁,則該應(yīng)用程序的頁時鐘被復(fù) 位為零,并且基于該應(yīng)用程序的頁時鐘的所有未決(即,排隊)的工作項如同它們 已到達(dá)其結(jié)束時間那樣從事件隊列丟棄。如果在判別框816處,所標(biāo)記的工作項的結(jié)束時間還未過去,則控制被傳遞 到框822,并且應(yīng)用程序線程523處理該工作項。如上在描述附圖6時所述的,每 一工作項按照來自事件隊列515的順序來處理首先按照開始時間,然后按照每一 工作項被插入到事件隊列515中的時間。 重復(fù)事件和一次性(即,單次發(fā)生、非重復(fù))事件都使用圖8所示的方法來 管理。重復(fù)事件可包括其中相關(guān)聯(lián)的工作項具有等于下一調(diào)度的開始時間的結(jié)束時 間的周期性事件。即,每一周期性事件具有等于該事件的周期的持續(xù)時間。周期性事件通常包括如定時器事件和應(yīng)用程序繪制事件等事件。例如,如果 應(yīng)用程序的腳本(例如,在圖1中的腳本主機115中)創(chuàng)建將每IO秒回叫的定時器,則它將向事件隊列515添加一開始時間等于當(dāng)前事件加上10秒的定時器工作 項。結(jié)束時間將被設(shè)為開始時間加上10秒。 一旦定時器工作項在事件隊列515外 執(zhí)行,則開始時間和結(jié)束時間將通過增加另外的IO秒來調(diào)整,并且工作項基于新 的開始時間在適當(dāng)?shù)奈恢蒙媳恢匦虏迦氲绞录犃?15中。周期性事件在只要可能的時候就被調(diào)用。但是,如果它們不能由應(yīng)用程序線 程523在其相關(guān)聯(lián)的工作項中的結(jié)束時間期滿之前被處理,則該特定調(diào)用被丟棄, 并且用一新的工作項調(diào)度下一調(diào)用。由此,周期性事件會遭受工作項超時。有利的是,該事件排隊方法允許參數(shù)可被傳遞到定時器事件以指示要調(diào)用該 事件的時間。該參數(shù)必須與相關(guān)聯(lián)的工作項中的開始時間相同。如上所述,與周期 性定時器事件相關(guān)聯(lián)的腳本可能不是精確地在調(diào)用時間上運行。然而,由于每一工 作項包括指定該方法的自變量的方法字段545 (圖5),因此該自變量的值將反映 預(yù)期的調(diào)用時間而非實際時間。因此,用于定時器事件的處理程序?qū)⒅浪谔?理什么時間(即,報時信號)。一次性事件具有帶不定(INFINITE)結(jié)束時間的相應(yīng)的工作項。因此, 一次 性事件從不被從事件隊列515中丟棄。例如,如果一次性事件是輸入事件,則該事 件的處理程序作為事件隊列515中帶不定結(jié)束時間的工作項來調(diào)度。如框822中所指示的,處理是在已提交的基礎(chǔ)上執(zhí)行的。即, 一旦應(yīng)用程序 線程523開始處理來自事件隊列515的工作項,它不會停止處理。例如,可以長時 間運行的腳本不會被異常中止,異常也不會被注入到腳本中以將其拋出。盡管這一 模式可能在應(yīng)用程序線程處理腳本時使應(yīng)用程序停滯,但是如上所述,ICP(例如, 圖4中的ICP 435)可被安排成包括在提交的工作項處理期間繼續(xù)運行的其它線程。在框830處,在所標(biāo)記的工作項的處理期間創(chuàng)建的任何新的工作項在所標(biāo)記 的工作項之后被插入到事件隊列515中,而不論其開始時間如何。標(biāo)記工作項、提 交它們以及在事件隊列中在提交的工作項之后插入新工作項的過程(如框810、 822 和830所示)確保應(yīng)用程序總是能夠負(fù)擔(dān)某些可見的進展。如圖8中的框835和828處所指示的,應(yīng)用程序線程對每一報時信號自動將
      兩個工作項插入到每一應(yīng)用程序事件隊列中,如圖7所示并在相應(yīng)文本中描述的。 這些工作項調(diào)用每一應(yīng)用程序的標(biāo)記引擎以評估應(yīng)用程序定時,然后回流并在顯示 設(shè)備上呈現(xiàn)標(biāo)記。如上所述,工作項在應(yīng)用程序啟動時被插入,并且在每一報時信 號之后被重新調(diào)度。另外,這兩個工作項總是對一個應(yīng)用程序報時信號要處理的最后兩個工作項,并且作為可從事件隊列515中丟棄的周期性事件來處理。圖9是在說明性圖形合成模型中用于對顯示上的可視元素按照功能和/或來源 在邏輯上進行分組的一組圖形平面900的圖示。圖形平面組900包括光標(biāo)平面905、 圖形平面912、子圖片平面918、子視頻平面922以及主視頻平面925。光標(biāo)平面 905是圖形平面組900中最頂上的(即,用戶930覺得最接近的)平面,其中顯示 如指針等光標(biāo)對象。其余的平面如由圖9中的箭頭935所示地按顯示的頂部到底部, 從左到右排列。圖形平面組900中的所有平面使用一稱為畫布的公共xy坐標(biāo)系統(tǒng)。第三維由 如圖9中的參考標(biāo)號940所指示地從顯示器向外投影的z軸來描述。在交互式媒體 環(huán)境中運行的應(yīng)用程序?qū)儆谔囟ㄆ矫?。?yīng)用程序不能被顯式或任一地分配給平面一 關(guān)聯(lián)是根據(jù)應(yīng)用程序的類型來隱式地作出的。例如,字幕應(yīng)用程序在子圖片平面 918中呈現(xiàn),而大多數(shù)其它應(yīng)用程序在圖形平面912中呈現(xiàn)。圖形平面912是圖形平面組900的第二平面,并且由演示引擎如下所述地生 成。如上所述,在交互式媒體環(huán)境中生成諸如圖形和菜單等交互式內(nèi)容的應(yīng)用程序 通常被呈現(xiàn)到圖形平面912中。子圖片平面918是圖形平面組900的第三平面,并且通常用于顯示由相應(yīng)的 應(yīng)用程序產(chǎn)生的字幕和/或文字說明。子視頻平面922是圖形平面組900中的第四 平面,并且通常被用作"畫中畫"(PIP)安排中的次要視頻顯示。如由參考標(biāo)號 942所指示的PIP窗口通常小于主視頻顯示,并且可具有其它不同特性,諸如降低 的分辨率、不同的寬高比等等。主視頻平面925是圖形平面組900中的第五平面,并且位于平面堆棧的底部。 主視頻平面925通常用于在交互式媒體環(huán)境中顯示包括如上在對附圖3的描述中描 述的視頻標(biāo)題的視頻內(nèi)容。如圖9所示,圖形平面組900中的所有平面由如下所述 的圖形呈現(xiàn)引擎混合并合成為單個顯示950。圖10是示出稱為被AppA的第一說明性應(yīng)用程序中三個可視元素的Z順序的 圖示。要強調(diào)的是應(yīng)用程序內(nèi)的Z順序不同于應(yīng)用程序的Z順序。即,應(yīng)用程序 生成應(yīng)用程序內(nèi)具有Z順序的可視元素,并且應(yīng)用程序本身在運行在ICP (主
      4的ICP 435)上的多個應(yīng)用程序之中是Z排序的。應(yīng)用程序AppA生成三個可視元素,包括元素1010 (十字形)、元素1020 (星) 以及元素1030 (箭頭),它們分別具有如圖所示的堆棧排列中的Z順序O、 l和2。 由此,對于一組N個元素, 一組Z順序值以針對該堆棧中的最低元素的O處開始, 并以針對該堆棧中的最高元素的N-l處結(jié)束。元素1010、 1020和1030被繪制在 顯示1045上。圖10中的窗口 1050如同"從側(cè)面"觀看顯示1045那樣示出了由 AppA產(chǎn)生的可視元素的Z順序。顯示1045和窗口 1050如由xyz坐標(biāo)1055所指 示地相對于彼此定向。圖11是示出被稱為AppB的第二說明性應(yīng)用程序內(nèi)的可視元素的Z順序的圖 示。應(yīng)用程序AppB生成三個可視元素,包括元素1110 (三角)、元素1020 (橢 圓)和元素1030 (矩形),它們分別具有顯示1145上堆桟排列中的Z順序0、 1 和2。窗口 1150如由xyz坐標(biāo)1155所指示地以顯示l 145的側(cè)面視圖示出了由AppB 產(chǎn)生的可視元素的Z順序。圖12是示出具有從應(yīng)用程序AppA和AppB兩者生成的可視元素(由參考標(biāo) 號1210共同指示)的合成顯示1245的圖示。窗口 1250提供了顯示1245的側(cè)面視 圖(如由坐標(biāo)1255所指示的),并示出了應(yīng)用程序AppA和AppB具有相對于彼 此的相對Z順序。另外,應(yīng)用程序AppA和AppB各自生成在應(yīng)用程序內(nèi)維持其Z 順序的可視元素,如圖10和11所示并在相應(yīng)文本中描述的。圖13是示出說明性安排1300的圖示,其中應(yīng)用程序以優(yōu)先順序呈現(xiàn)并以從 底向上的順序合成。安排1300包括顯示的側(cè)面視圖1350,它如由xyz坐標(biāo)1355 所指示地朝向用戶1330定向。在其它說明性排列(圖13中未示出)中,呈現(xiàn)是響 應(yīng)于特定設(shè)置的要求從底向上(即,按照Z順序)來執(zhí)行的。五個應(yīng)用程序在交互式媒體環(huán)境中運行,包括如分別由參考標(biāo)號1305、 1310、 1315、 1320和1325指示的AppA、 AppB、 AppC、 AppD和AppE。應(yīng)用程序如由 箭頭1352所指示地在窗口 1350中按照Z順序從底向上合成。合成以2順序=0的 應(yīng)用程序AppA 1305開始,并以Z順序=4的應(yīng)用程序AppD 1325結(jié)束。在該說明性示例中,如在圖13所示的時間瞬間處所示,應(yīng)用程序AppC1320 是產(chǎn)生接收用戶輸入的可視元素1358的聚焦應(yīng)用程序。然而,由于在動態(tài)環(huán)境中 運行,具有焦點的特定應(yīng)用程序通常根據(jù)設(shè)計隨時間變化,并且所有應(yīng)用程序通常 可在視頻標(biāo)題進展時按照Z順序上下移動(盡管還要強調(diào),應(yīng)用程序能夠在它們 運行和操作時,甚至在主視頻被停止、暫?;騼鼋Y(jié)的情況下改變Z順序)。另外,
      聚焦應(yīng)用程序可以位于堆棧中的任何位置(即,具有任何Z順序)。然而,在許 多情況下,聚焦應(yīng)用程序?qū)⒊蝻@示順序的頂部,使得它能以與用戶期望相一致的方式與用戶1330交互并接收諸如按鈕按下(例如,從遙控器1332)、鼠標(biāo)點擊等 用戶事件。如由箭頭1362所指示的,應(yīng)用程序以優(yōu)先順序來呈現(xiàn),從聚焦應(yīng)用程序(例 如,應(yīng)用程序AppD 1320)開始,之后按照從頂部向下,即相反的Z順序呈現(xiàn)其 余應(yīng)用程序。圖14是其中應(yīng)用程序按照優(yōu)先順序呈現(xiàn)并按照從底向上的順序合成的說明性 方法的流程圖。該方法在框1405處開始。在框1412處,如上所述,對運行在交互 式媒體環(huán)境中的應(yīng)用程序維護Z順序。對與特定視頻標(biāo)題相關(guān)聯(lián)的應(yīng)用程序的初 始Z順序由播放列表290 (圖2)使用絕對值(例如,1、 2、 5、 7、…87等)來指 定。這些絕對值通過使用播放列表詞匯排序基于播放列表Z順序來對所有應(yīng)用程 序排序而立即被轉(zhuǎn)換成相對Z排序,以打破任何捆綁。在框1415中,允許應(yīng)用程序在視頻標(biāo)題進展時調(diào)用方法來操縱其相對Z排序。 這些方法包括,例如a)將應(yīng)用程序移至平面內(nèi)Z順序的頂部;b)將應(yīng)用程序移 至平面內(nèi)Z順序的底部;以及c)將應(yīng)用程序的Z順序改為緊靠在顯示堆棧中其上 方的應(yīng)用程序上方。如上所述,應(yīng)用程序?qū)儆谔囟ǖ钠矫?,這對應(yīng)用程序通過調(diào)用Z順序操縱方 法可以在Z順序中移動多遠(yuǎn)施加了限制。例如,調(diào)用將字幕應(yīng)用程序移至頂部的 方法將使字幕應(yīng)用程序成為子圖片平面918 (圖9)中的最頂部應(yīng)用程序,但是其 中生成的可視元素可能仍被由該平面中的應(yīng)用程序呈現(xiàn)到圖形平面912中的可視 元素遮蔽(即,遮擋)。類似地,調(diào)用將常規(guī)交互式應(yīng)用程序移至底部的方法將使 其成為圖形平面912中的最底部應(yīng)用程序,但仍將其留在所有字幕應(yīng)用程序上方。在框1416處,應(yīng)用程序接收提供應(yīng)用程序的Z順序被改變的通知的事件。這 一通知替換地被安排成在應(yīng)用程序轉(zhuǎn)換到最頂部應(yīng)用程序或從最頂部應(yīng)用程序轉(zhuǎn) 換出來時接收。這一通知允許例如游戲應(yīng)用程序在由菜單生成應(yīng)用程序產(chǎn)生的菜單 移至具有最高Z順序的位置時暫停其自身。該說明性方法在框1418處繼續(xù),其中來自應(yīng)用程序的可視元素被呈現(xiàn)到一個 或多個圖形緩沖區(qū)中。在大多數(shù)情況下,呈現(xiàn)是按照優(yōu)先順序來執(zhí)行的,以聚焦的 應(yīng)用程序開始,之后從顯示的頂部開始向下按照相反的Z順序呈現(xiàn)其余的應(yīng)用程 序。繪制(即,二維"2D"繪制)通過繪制到應(yīng)用程序的標(biāo)記(例如,圖1中的
      標(biāo)記120)中的"畫布"對象上來處理,該對象然后以與呈現(xiàn)PNG (可移植網(wǎng)絡(luò)圖形)文件幾乎相同的方式被呈現(xiàn)到圖形緩沖區(qū)中。在圖14所示的說明性方法中,安排了緩沖步驟,使得應(yīng)用程序通過將對應(yīng)于周期性呈現(xiàn)事件的工作項置入相應(yīng)的應(yīng)用程序事件隊列中來呈現(xiàn)??捎糜谶@一安排的事件隊列和相關(guān)聯(lián)的方法在圖5-8中示出并在相應(yīng)的文本中描述。工作項的放置意味著應(yīng)用程序幀的呈現(xiàn)要遭受工作項超時。因此,執(zhí)行對應(yīng) 用程序的雙倍緩沖以適應(yīng)在回放系統(tǒng)中的別處施加優(yōu)先級的情況下新應(yīng)用程序幀 可能并不總是對每一視頻幀呈現(xiàn)的概率。在這一情況下,最近可用的幀將繼續(xù)被示 出,直到完成了一個新的幀。在框1421處,在合成顯示之前,檢査每一應(yīng)用程序以查看它在其標(biāo)記(例如, 圖1中的標(biāo)記120)中是否包括〈clearrect〉元素。包括這一元素以產(chǎn)生由應(yīng)用程序 產(chǎn)生的圖形中的開口 (即,"孔"),通過該開口可看見主視頻平面925。〈clearrect〉 元素產(chǎn)生一矩形的開口,但是取決于特定設(shè)置的要求,也可使用其它規(guī)則的幾何形 狀、不規(guī)則形狀以及其它任意的形狀。諸如〈clearrect〉等元素以及其它這種產(chǎn)生開口的元素當(dāng)在方法的框1418中呈 現(xiàn)應(yīng)用程序時不被包括在圖形緩沖區(qū)中。相反,在合成期間,在Z順序低于具有 化learrec^元素的應(yīng)用程序的應(yīng)用程序中清除孔,使得主視頻平面925可通過應(yīng)用 程序中的孔來看見。由于呈現(xiàn)是按照優(yōu)先化的方式來執(zhí)行的,因此在將應(yīng)用程序呈 現(xiàn)到緩沖區(qū)時實現(xiàn)〈clearrect〉元素是不切實際的。如果如此實現(xiàn),并且沒有立即更 新較低優(yōu)先級應(yīng)用程序,則孔可能會不恰當(dāng)?shù)爻霈F(xiàn)。這例如在改變Z順序或終止 具有"learrect〉元素的應(yīng)用程序而較低優(yōu)先級應(yīng)用程序正在等待更新且同時超時 的情況下發(fā)生。在框1425處,如圖12所示并在相應(yīng)文本中描述的,按照Z順序從底向上合 成應(yīng)用程序。在大多數(shù)設(shè)置下,可使用簡單的畫家(Painter)算法,其中每一應(yīng)用 程序的標(biāo)記使用對每一應(yīng)用程序最近緩沖的幀來呈現(xiàn)到圖形平面912中。另外,如 上所述,在合成步驟期間實現(xiàn)〈dearrect〉或其它產(chǎn)生開口的元素。該說明性方法在 框1433處結(jié)束。圖15是說明性回放系統(tǒng)1500的框圖。導(dǎo)航管理器1505維護運行在交互式媒 體環(huán)境中的N個應(yīng)用程序的嚴(yán)格排序。每一應(yīng)用程序被給予了從0到N-1的Z順 序,且所有應(yīng)用程序具有唯一的Z順序。在排序之間沒有間隙,并且沒有兩個應(yīng) 用程序具有相同的Z順序。Z順序0出現(xiàn)在顯示1512的底部,而Z順序N-1出現(xiàn)
      在頂部。當(dāng)視頻標(biāo)題在時間中進展時,導(dǎo)航管理器1505從由播放列表(例如,圖2中的播放列表290)設(shè)置的初始Z順序值開始以動態(tài)的方式維護應(yīng)用程序的Z順 序,如上所述。導(dǎo)航管理器1505耦合到演示引擎1515和圖形呈現(xiàn)引擎1518。在大多數(shù)設(shè)置 中,演示引擎1515被安排成將圖形平面組900中的每一平面提供給圖形呈現(xiàn)引擎 1518,后者執(zhí)行將平面和其中的應(yīng)用程序合成到顯示1512中。設(shè)置在演示引擎1515和圖形呈現(xiàn)引擎1518之間的是分別由參考標(biāo)號1522、 1526和1528指示的一個或多個圖形緩沖區(qū)1、 2、…N。這N個緩沖區(qū)被安排成在 一對一的基礎(chǔ)上映射到相應(yīng)的應(yīng)用程序。即,N緩沖區(qū)二N應(yīng)雕序。在替換安排中,對所 有應(yīng)用程序使用單個緩沖區(qū)(由參考標(biāo)號1540指示),或者在不相等的基礎(chǔ)上將 圖形緩沖區(qū)映射到應(yīng)用程序。注意,為清晰且易于說明起見,在以上描述中,數(shù)據(jù)、程序以及諸如操作系 統(tǒng)等其它可執(zhí)行程序組件被示為離散的塊、框或其它元素,但可以認(rèn)識到并強調(diào), 這些程序和組件可在不同的時刻駐留在所使用的任何硬件主機的不同存儲、存儲器 或處理組件中,并由這些主機硬件中的一個或多個處理器執(zhí)行。盡管示出并描述了用于在交互式媒體環(huán)境中管理應(yīng)用程序狀態(tài)的各種說明性 安排和方法,但是應(yīng)當(dāng)理解,所附權(quán)利要求書的范圍不必限于所描述的具體特征、 安排或方法。相反,這些具體特征、安排或方法是作為以下更特別地要求保護的在 交互式媒體環(huán)境中實現(xiàn)受管應(yīng)用程序狀態(tài)的說明性形式來公開的。
      權(quán)利要求
      1.一種用于合成顯示的方法,所述方法包括以下步驟為在交互式媒體環(huán)境(1250)中運行的多個應(yīng)用程序中的每一個維護Z順序,其中所述Z順序描述了可視元素在所述顯示上的相對順序;將應(yīng)用程序呈現(xiàn)到與應(yīng)用程序相關(guān)聯(lián)的相應(yīng)圖形緩沖區(qū)(1528)中,其中所述呈現(xiàn)是按照應(yīng)用程序來執(zhí)行的,從具有焦點的應(yīng)用程序開始呈現(xiàn)、并從最高到最低Z順序(1362)來繼續(xù)呈現(xiàn)所述多個應(yīng)用程序中的其余應(yīng)用程序;以及從所述圖形緩沖區(qū)中的可視元素合成所述顯示,其中所述合成是按照應(yīng)用程序從最低到最高Z順序(1352)來執(zhí)行的。
      2. 如權(quán)利要求1所述的方法,其特征在于,在一播放列表(290)中設(shè)置初 始Z順序。
      3. 如權(quán)利要求1所述的方法,其特征在于,所述呈現(xiàn)包括使用雙倍緩沖安排, 使得所呈現(xiàn)的元素在被合成以供顯示之前被雙倍緩沖。
      4. 如權(quán)利要求1所述的方法,其特征在于,所述交互式媒體環(huán)境包括多個顯 示平面(900),并且所述應(yīng)用程序被分配為呈現(xiàn)到所述多個顯示平面(卯0)中的 一圖形平面(912)中。
      5. 如權(quán)利要求l所述的方法,其特征在于,所述交互式媒體環(huán)境包括多個顯 示平面(900),并且所述應(yīng)用程序被分配為呈現(xiàn)到所述多個顯示平面(卯0)中的 一子圖片平面(918)中。
      6. 如權(quán)利要求l所述的方法,其特征在于,所述相應(yīng)圖形緩沖區(qū)作為其中呈 現(xiàn)來自所有應(yīng)用程序的可視元素的單個圖形緩沖區(qū)來維護。
      7. —種與顯示器連接的回放系統(tǒng),所述回放系統(tǒng)包括導(dǎo)航管理器(1505),用于為在一交互式媒體環(huán)境中運行的應(yīng)用程序維護Z 順序,其中所述Z順序描述了可視元素在所述顯示器上的相對順序;一個或多個圖形緩沖區(qū)(1528),用于緩沖由所述應(yīng)用程序生成的可視元素;操作上耦合到所述導(dǎo)航管理器的演示引擎(1515),用于按照相反的Z順序 按應(yīng)用程序?qū)⒖梢曉爻尸F(xiàn)到所述圖形緩沖區(qū)中;以及圖形呈現(xiàn)引擎(1518),用于從所述一個或多個圖形緩沖區(qū)中為所述顯示器 合成幀圖像,其中所述合成是按照應(yīng)用程序以Z順序來執(zhí)行的。
      8. 如權(quán)利要求7所述的回放系統(tǒng),其特征在于,所述合成包括清除Z順序低 于在標(biāo)記中帶有清除開口元素的應(yīng)用程序的所有應(yīng)用程序的圖形緩沖區(qū)內(nèi)的開口,使得可穿過所述開口看見視頻平面(925)。
      9. 如權(quán)利要求8所述的回放系統(tǒng),其特征在于,所述開口具有選自多種形狀 之一的形狀,這些形狀包括矩形、圓形、橢圓形和任意形狀。
      10. 如權(quán)利要求7所述的回放系統(tǒng),其特征在于,所合成的幀圖像對每一視 頻幀包括一應(yīng)用程序幀。
      11. 如權(quán)利要求10所述的回放系統(tǒng),其特征在于,所述應(yīng)用程序幀是在一新 應(yīng)用程序幀不可用時的最近可用的應(yīng)用程序幀。
      12. —種計算機可讀介質(zhì),它在由電子設(shè)備中的一個或多個處理器執(zhí)行時執(zhí) 行一種用于為多個N個應(yīng)用程序設(shè)置繪制順序的方法,所述多個應(yīng)用程序中的每 一個可被呈現(xiàn)為顯示上的可視元素,所述方法包括以下步驟-允許一應(yīng)用程序調(diào)用用于操縱該應(yīng)用程序在所述顯示上的Z順序(1415)的 一個或多個方法,其中所述Z順序描述了所述N個應(yīng)用程序在所述顯示上的相對 順序,并且Z順序的值選自一由0和N-1界定的集合;以及將所述多個應(yīng)用程序呈現(xiàn)到與這些應(yīng)用程序相關(guān)聯(lián)的相應(yīng)圖形緩沖區(qū)中 (1418),其中所述呈現(xiàn)以相反的Z順序、從N-1開始并在0處結(jié)束、按照應(yīng)用程序來執(zhí)行。
      13.如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,所述呈現(xiàn)是使用被 插入到一事件隊列(515)中的一個或多個工作項(535)來執(zhí)行的。
      14. 如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,還包括當(dāng)一應(yīng)用程 序的Z順序改變時向該應(yīng)用程序提供一通知(1416)的步驟。
      15. 如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,所述呈現(xiàn)包括繪制 到應(yīng)用程序的標(biāo)記中的畫布對象中。
      16. 如權(quán)利要求15所述的計算機可讀介質(zhì),其特征在于,所述畫布對象被呈現(xiàn)到所述應(yīng)用程序的相應(yīng)圖形緩沖區(qū)中。
      17. 如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,還包括使用畫家算 法從最近的緩沖區(qū)中合成所述顯示(1425)的步驟。
      18. 如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,所述調(diào)用的方法包 括將一應(yīng)用程序移至最高的Z順序。
      19. 如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,所述調(diào)用的方法包 括將一應(yīng)用程序移至最低的Z順序。
      20.如權(quán)利要求12所述的計算機可讀介質(zhì),其特征在于,所述調(diào)用的方法包括將一應(yīng)用程序移至緊靠在具有比該正在移動的應(yīng)用程序高一位的z順序的應(yīng)用程序上方的位置。
      全文摘要
      在交互式媒體環(huán)境(1250)中,提供了一種模型,其中各自包括零個或多個腳本組件以及零個或多個標(biāo)記組件的應(yīng)用程序本身作為具有Z順序的可視元素被處理。提供了一種資源高效的呈現(xiàn)順序,其中在交互式媒體環(huán)境(1250)中具有焦點(根據(jù)其接收用戶輸入)的應(yīng)用程序被首先呈現(xiàn)。其余的應(yīng)用程序按照從頂向下,即相反的Z順序來呈現(xiàn)(1362)。呈現(xiàn)是通過繪制到與相應(yīng)的應(yīng)用程序相關(guān)聯(lián)的一個或多個圖形緩沖區(qū)(1528)中來執(zhí)行的。用于應(yīng)用程序的幀從底向上按照Z順序從圖形緩沖區(qū)(1528)中合成(1352),以向顯示提供正確外觀。
      文檔編號G06F17/00GK101213540SQ200680024208
      公開日2008年7月2日 申請日期2006年6月22日 優(yōu)先權(quán)日2005年7月1日
      發(fā)明者A·W·J·弗利曼, J·A·伊馮, J·C·芬格, K·瑪扎, O·科勒 申請人:微軟公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1