TWI480756B - 用於最佳化計時標記之執行的機器可讀取儲存裝置及設備 - Google Patents

用於最佳化計時標記之執行的機器可讀取儲存裝置及設備 Download PDF

Info

Publication number
TWI480756B
TWI480756B TW097100229A TW97100229A TWI480756B TW I480756 B TWI480756 B TW I480756B TW 097100229 A TW097100229 A TW 097100229A TW 97100229 A TW97100229 A TW 97100229A TW I480756 B TWI480756 B TW I480756B
Authority
TW
Taiwan
Prior art keywords
representations
timing
representation
machine readable
storage device
Prior art date
Application number
TW097100229A
Other languages
English (en)
Other versions
TW200836084A (en
Inventor
Joel B Deaguero
Jeffrey A Davis
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of TW200836084A publication Critical patent/TW200836084A/zh
Application granted granted Critical
Publication of TWI480756B publication Critical patent/TWI480756B/zh

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/322Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier used signal is digitally coded
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2579HD-DVDs [high definition DVDs]; AODs [advanced optical discs]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Processing Or Creating Images (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Description

用於最佳化計時標記之執行的機器可讀取儲存裝置及設備
本發明是有關於HD-DVD計時標記之執行作業最佳化。
高清晰度數位光碟(HD-DVD)媒體及相關的播放器變得愈來愈普及並且廣泛運用。隨著愈來愈多製造廠商進入市場,競爭增高而傾向於將價格向下壓低。在此價格環境下,在DVD播放器內運行的軟體通常是運行於相對價廉的消費性硬體上。
而將HD-DVD內容與風格標記轉換成有形形式以供顯示,在經計算後是相當昂貴的。一般說來,HD-DVD標記之顯現速率的合理目標係約為每秒24個訊框顯現,對於使用者體驗而言是可接受的。而當藉由在低成本的消費性硬體上執行經計算之高成本任務以嘗試觸抵此一顯現速率目標時,用以轉換並顯現HD-DVD標記的傳統技術就可能會面臨到多項困難。
茲說明用以將高清晰度光碟(HD-DVD)計時標記之執行作業予以最佳化的系統、方法及/或技術(「工具」)。該等工具可接收讀取自一HD-DVD任務的計時標記,並且利用本揭所述之一或更多最佳化策略以將該計時標記處理最 佳化。
本「發明內容」係經提供以介紹一種按一較簡化形式,而在後文「實施方式」所進一步描述的選擇概念。本「發明內容」並非為以識別所主張之主題項目的各項關鍵或基本特性,亦非為以用於決定所主張主題項目之範圍的輔助。例如,該詞彙「工具」可參指於如前述說明以及本案全篇所供允之(多項)系統、方法、電腦可讀取指令及/或技術。
概要
底下文件描述能夠進行及/或支援多項技術及處理功能的工具。底下討論描述其中該等工具可將HD-DVD計時標記之執行作業予以最佳化的示範性方式。此討論亦描述該等工具可執行的其他技術及/或處理程序。
第1圖說明用以將HD-DVD計時標記之執行作業最佳化的操作環境100。該操作環境100可供一或更多的使用者102播放一或更多的HD-DVD碟片104。這些HD-DVD碟片104可含有一或更多的機器可讀取軟體組件。這些組件可例如包含一或更多的標記檔案106。該等標記檔案106可經實作如一宣告性XML式語言,並且可含有不同的字彙或標記組件。
該等標記檔案的範例可至少包含內容標記108、風格標記110及計時標記112。該內容標記108可經納入在一 給定標記文件的主<body>區段之內,並且描述該在該標記內所定義之物件或元件的整體佈置結構。下列表1即說明一範例HD-DVD內容標記元件的樹狀表。
該風格標記110係一描述可如何地將物件或元件格式化的字彙。該風格標記局部110可包含一XML字彙,此者描述當對該使用者表現時,該等經納入在該內容標記局部108之內的元件應如何地顯現。換言之,該內容標記局部可標定出對使用者顯現哪些元件;而該風格標記局部則可標定是如何地對該使用者顯現這些元件。
該計時標記112係一字彙,此者描述可如何地隨著時間,並透過與該使用者的互動,修改該內容。即如本揭所述,HD-DVD計時標記係一業界標準SMIL語言的子集合,然增入一些延伸項,這些可讓該SMIL語言能夠被納入在該標記文件的<body>區段之外。例如,本揭所描述的計時標記增入一稱為「cue」而並非由SMIL所定義的特殊計時 容器,該者定義在該標記文件之內的元件而可對其施用一動畫性質。
可按一宣告性程式語言以實作該等內容標記局部、風格標記局部及計時標記局部。然而,可按一令定式程式設計字彙以實作一腳本局部113,這可在時間上於該風格標記之內造成非決定性的變化。
整體來看,該等內容標記108、風格標記110及計時標記112定義一文件物件模型(DOM)115。可利用一XML字彙而按如一樹狀表資料結構以實作該DOM 115。該DOM可包含複數個個別標記元件,在第2圖中概經標註為117。前文表1描述合法親代-子代元件組合的集合,並提供DOM狀態115的特定範例。
第1圖在117a及117n處顯示兩個標記元件範例。然而,該DOM的實作可含有任意數量的元件204,同時該DOM樹狀表可採行任何適當形式。該腳本113可為一令定式(imperative)程式語言,而按非決定性的方式改變該DOM。
HD-DVD含有一互動層,而除其他事項外,該者可定義該HD-DVD進階應用程式與該使用者,和一音訊/視訊播放系統,進行互動的方式。此互動層之一範例可為由Microsoft Corporation公司按商標HDiTM 所提供者。該HDiTM 互動層係經編碼為一按如「Advanced Application」內容所定義的資料格式類集。這些格式提供該內容一的宣告性說明,並且可為自XML所導得。
該等操作環境100可讓使用者102能夠將HD-DVD碟片104插入到一HD-DVD播放器114以供播放,即如虛線116所示。該HD-DVD播放器114可為一電腦式系統,此者含有一或更多的處理器而經標註為118。這些處理器118亦可經歸類或特徵表現為具有一給定類型之架構,然可或無須具有相同類型或架構。在可能的實作裡,該等處理器可含有一或更多的互動命令處理器(ICP)。
該HD-DVD播放器亦可含有一或更多的機器可讀取或電腦可讀取儲存媒體之實例,而概經表註為120。該電腦可讀取媒體120可含有多項指令,在當由該處理器118加以執行時,可執行任何工具或相關功能,而本揭中係經描述為由該HD-DVD播放器之內的任何組件所執行。該處理器可存取及/或執行經嵌入或編碼在該電腦可讀取媒體之上的指令,並/或可存取經儲存在該電腦可讀取媒體之內的資料。
現對該電腦可讀取媒體120進一步加以說明,此者可含有一HD-DVD表現引擎122的一或更多實例。該HD-DVD表現引擎122可例如包含一或更多的軟體模組,而在當經載入該處理器之內並予執行時,該等可令該HD-DVD播放器自該HD-DVD碟片104載入標記和其他元件,這些包含該計時標記106。該表現引擎122可將自該HD-DVD碟片所讀取的標記予以格式化,並且對映至適合於對該使用者顯示的所顯示內容。第1圖概於124表註此所顯示內容。
即如第1圖所示,該HD-DVD播放器114可提供一使 用者介面126,而該使用者102可經此以與該HD-DVD播放器進行互動。該使用者介面126可包含由該HD-DVD播放器所提供的硬體,或者可包含由另一裝置所提供的硬體,例如該HD-DVD播放器所連接或耦接至的電視機或顯示器螢幕。一般說來,該使用者介面126可代表任何適用以讓該使用者能夠與該HD-DVD播放器進行互動的硬體及/或軟體組件。第1圖概略代表該使用者102與該HD-DVD播放器108之間在128處的互動。
該所顯現內容124可包含選單、提示或是其他由該表現引擎122所產生的項目,藉以誘發來自該使用者的回應或輸入。此回應或輸入可例如包含字面或話語命令、透過一裝置所輸入之命令(即如一與該使用者介面126及/或該HD-DVD播放器114相關聯的遙控器)、透過由該HD-DVD播放器所提供之按鍵而輸入的命令,或者是任何其他的適當形式。
現回到該電腦可讀取媒體120,其中可包含一計時最佳化引擎130,此者可與該表現引擎122併同運作以將該計時標記112的處理最佳化。即如本揭所述,該計時最佳化引擎130可運用一或更多的策略,藉此讓該表現引擎122能夠將內容按一足夠訊框顯現速率自該HD-DVD顯現予該使用者,俾提供一可接受的使用者體驗。
在既已藉第1圖描述該等操作環境100之後,現將進一步詳細討論如第2圖所表示的表現引擎122及計時標記112。
第2圖說明該表現引擎122及該計時標記112的額外特點200。為簡便起見,然非限制,茲將部分的前文所述元件載入至該第2圖內,並依相同的參考編號所標註。
該表現引擎122可按一概經標註為202的訊框顯現速率而運作。此訊框顯現速率可為由該HD-DVD 104的作者所設定。更詳細地說,該作者可在該標記裡標定一目標訊框顯現速率。例如,該作者可在一稱為「播放列表(playlist)」檔案裡宣告一所欲訊框顯現速率。在另一範例裡,該作者可按逐個計時區段為基礎而宣告一時鐘分除器。不過,該HD-DVD規格文件並未保證在當處理計時標記時能夠達到這些目標訊框顯現速率。該作者可宣告一每區段60個訊框顯現的目標訊框顯現速率,然而確由HD-DVD軟體的實作細節,連帶該系統運行於此之上的硬體平台,決定是否能夠達到該目標訊框顯現速率。從而,本揭所述之計時標記處理最佳化作業能夠提高達到該目標訊框顯現速率的可能性。
該表現引擎122可接收計時時鐘脈衝或刻度(tick),該者概經標註為204,且調控或同步化從該HD-DVD所讀取之標記的處理、格式和顯現作業。該HD-DVD播放器108可利用任何適當技術以產生該等刻度204,只要該等刻度確與該HD-DVD計時模型相符即可。
現進一步說明自該HD-DVD碟片104所讀取的計時標記106,此標記可定義一或更多的計時容器206實例。第2圖提供兩項計時容器範例而經標註為206a及206n。不過, 注意到該計時標記106的實例可定義任意數量的計時容器206。
該等計時容器206可具備任何類型或形式。在第2圖所示之範例裡,該等計時容器可含有循序計時容器208,或簡稱<seqs>。該等計時容器可含有平行計時容器210,或簡稱<pars>。該等計時容器可含有示意計時容器212,或簡稱<cues>。
該等<Par>及<Seq>計時容器可含有一或更多的子代計時容器實例(亦即<seqs>208a、<pars>210a及<cues>212a)。該等<Par>及<Seq>計時容器可控制何時且如何地對其個別子代進行求值。<par>計時容器的子代是按平行方式處理,而<seq>的子代則是以循序方式處理。<Cues>並不含有其他的計時容器,但是可含有一或更多有關於該標記內容的性質214,或者可含有零個以上的事件216,而該(等)可對一傾聽器218發出訊令。該傾聽器218可為按如由該HD-DVD應用程式之作者所撰寫的JavaScript程式碼而實作。
<Cue>計時容器212a可含有特定事件216。更詳細地說,該等計時容器可含有一或更多的屬性,此等定義該等計時容器何時成為作用中及非作用中,以及該等特定動畫動作係施用於哪些特定節點。動畫動作之範例包含<animate>、<set>及<event>事件。第2圖顯示三項計時相關屬性的範例,該等係經標註為一開始時間屬性220、一結束時間屬性222及一時段長度屬性224。
現進一步詳細說明這些屬性,該開始時間屬性220可標定何時應開始一特定時間間隔,並且該結束時間屬性222可標定何時應結束一特定時間間隔。該時段長度屬性224可自該開始時間屬性220及該結束時間屬性222所導算出,或者可按如該等屬性220及222之一屬性而標定。
記得先前討論中說明一計時容器可為一<par>、一<seq>或一<cue>。該等計時容器含有多項定義該等容器何時為非作用中或作用中的屬性(即如begin、end、dur)。一<cue>亦可含有一「select」屬性,此者定義在該DOM內而對其施用該等給定動畫動作的節點。這些屬性「begin」、「end」及「select」可利用一時間表示式。該時間表示式可包含一限定的時間間隔或者一XPATH表示式(即如「id('myButton')[state: focusedO=true()]」)。
現進一步詳細說明該時段長度屬性,在一些實例裡,該計時容器可按照特定的時間位移以標定時段長度。在這些實例裡,由此一特定時間位移所定義的時間間隔可被視為是一種「限定」時間間隔,即如在第2圖中以226所表示者。該等限定時間間隔的範例可包含經標定之時段長度,像是10秒、20毫秒等等。
使用者互動性以及其他對該DOM之變動可對一時間間隔的時段長度產生影響。例如,任何計時容器的「end」屬性皆可為按如一XPATH表示式所定義。該XPATH表示式可向該DOM詢查對一或更多性質的特定變化,而該等變化係起因於使用者輸入或是由於該作者在腳本中之變動 而改變。而這些變化又會影響到該計時容器的時段長度。在這些實例裡,由該等特定時間位移所定義的時間間隔可被視為是一「非限定」時間間隔,即如第2圖中以228所表註者。在一些實作裡,計時容器可按照XML Path表示或XPATH表示式以標定這些非限定時間間隔。第2圖提供兩項XPATH表示式的範例,而經標註為230a及230n(概為230)。不過,計時容器的實作可含有任何適當數量的XPATH表示式230。
底下為一計時標記範例:
上述範例定義一單一par時間容器(即如210),而其時段長度為一2秒的限定時間間隔,並且其相關的內容節點集合係一具有識別碼id=「mybutton」的元件。此pat時間容器含有一單一seq計時容器(即如208),而該者自其親代par容器繼承一2秒的時段長度。
該par計時容器含有兩個以上的cue計時容器。第一個cue計時容器執行一秒,並且將該標記元件「mybutton」 的背景顏色設定為紅色。由該第一cue所設定之背景顏色係一可保持一表現值之性質的範例(即如214)。該第一cue亦可在當該第一cue成為作用中時發出一稱為「myevent」的事件(即如216)。
由於第一及第二cue的親代容器為seq,因此在第一個cue完成之後即啟動第二cue。第二cue執行一秒。當第二cue為作用中時,此者從0到100像素動畫繪製該標記元件「mybutton」的x位置,並且亦將該標記元件「mybutton」的背景顏色改變為藍色。當這些cue成為非作用中時,就會復原成該背景顏色的原始性質值。
在一些計時容器實作裡,一個XPATH表示式可為在另一XPATH表示式內巢狀化。在其他實作裡,可按一親代-子代關係來排置兩個以上由XPATH表示式所定義的時間間隔。在這些情況下,時間間隔可為「保持」,意思是子代時間間隔會維持其最後一組所算得性質值一親代或其他祖代時間間隔的時間長度。
在既已參照第2圖進一步詳細地描述該表現引擎及該計時標記之後,現將按如第3圖所示以繼續討論一XPATH表示式管理器和計時標記處理最佳化策略。
第3圖說明一XPATH表示式管理器之特點300以及用以將計時標記處理最佳化的策略。為簡便之目的,然非限制,一些前文所述元件係經載入至第3圖,並藉相同參考編號而標註。
當該表現引擎122回應於刻度204而處理讀取自該 HD-DVD104的元件時,這可能會遭遇到該計時標記112裡的一或更多XPATH表示式218a。而當該表現引擎在該標記內找到XPATH表示式時,該表現引擎可將這些XPATH表示式轉傳至一XPATH表示式管理器組件302以供處理並求值。第3圖在218b標註該XPATH表示式而如轉傳至該XPATH表示式管理器。
此外,該XPATH表示式管理器可接收當處理該計時標記112時所發生的資料表現風格及狀態變化。第3圖在303表註這些風格及狀態變化。當一時間間隔成為作用中時,該者含有一份當該間隔為作用中時所待予施用之一或更多動畫動作的列表,以及一個應對其施用這些動畫動作的特定目標節點集合。動畫動作例如包含<set>、<animate>、<event>及<link>。下列範例係為以便於說明,然非限制可能實作:
上述範例顯示一範例標記檔案的計時區段及本體區段兩者。該計時區段包含兩個計時容器:一<par>及一<cue>。該<par>係未經定義,然含有<cue>,而此者可動畫繪製由該「select」屬性所關聯的節點集合。該「select」屬性係經定義如一固定XPATH表示式=id('div2'),這意味著該元件而其id=div2。此<cue>的「begin」屬性係經定義如一非限定XPATH表示式,並且意味著在當此一其id=「animate 1」之元件的作用狀態為真時,該<cue>成為作用中。一旦符合此條件,該時間間隔(在本例中為<cue>)即成為真,並且該時間間隔施用該者所含有的動畫繪製動作。在本範例裡,該等動畫繪製動作包含:
1)<animate>:對該時間間隔的時段長度,在一數 值範圍上將該style:x內插至該目標節點集合(在本例中為「div2」);2)<set>:將對於該style: backgroundColor性質的數值「blue」施用在該目標節點集合「div2」; 3)<event>:僅在該時間間隔為作用中之時點處,將其名稱為「myEvent」的事件發出至該目標節點集合「div2」。一經定義於該作者所撰寫之腳本中的傾聽器函數(即如218)可接收此通知,並且在當收到此通知時可叫用該腳本中任意數量的運算。
該XPATH表示式管理器組件可包含一或更多含有用以求值該等XPATH表示式之指令的軟體模組。此外,該XPATH表示式管理器302可將該等XPATH表示式218轉傳至該最佳化引擎130,藉以決定該等XPATH表示式218的處理是否確經最佳化。第3圖在218c標註該等XPATH表示式而如轉傳至該最佳化引擎。
在一些情況下,該最佳化引擎可利用一或更多的本揭所述策略以將該XPATH表示式的處理最佳化。在這些情況下,該最佳化引擎可送返獲自於該等XPATH表示式之最佳化求值作業的結果304。第3圖顯示一範例,其中該最佳化引擎將這些結果304送返至,或經過,該XPATH表示式管理器302。
在一些實例裡,該等XPATH表示式218可利用任何本揭所述策略而無須承受於該等經最佳化處理。在這些實例 裡,該XPATH表示式管理器302本身可求值這些XPATH表示式,將該等數值306送返至該表現引擎。該等數值306代表非最佳化求值的結果。
該最佳化引擎130可含有一或更多的軟體模組,該等可實作用以對該計時標記106之處理進行最佳化的策略。第3圖係按區塊形式標註這些策略,並且後隨圖式將進一步詳細說明這些策略。
即如區塊308中所示,一項策略可包含預剖析並且預先計算至少一部分在讀取自該HD-DVD之標記中所定義的XPATH表示式。一如區塊310所示之策略可包含對根據焦點狀態而定之表示式處理的最佳化。一如區塊312所示之策略可包含藉由利用一有限狀態機以將處理最佳化。一如區塊314所示之策略可包含藉由辨識且求值互補性表示式以將計時容器處理予以最佳化。一如區塊316所示之策略可包含藉由利用一共享之記憶體池庫(pool)來儲存與計時相關的資料結構以對計時容器處理進行最佳化。而一如區塊318所示之策略則可包含藉由利用一排程器以將處理最佳化。
底下雖進一步詳細說明這些各式策略308-318,然注意到本揭說明之實作可視適當需要包含其一、部分或所有的這些策略之組合。同時,可按個別軟體模組,或經整合於一或更多模組,之方式以實作這些策略。從而,注意到第3圖中按個別區塊顯示這些策略僅係為便於說明及參考,然非為以限制這些可能實作。
該最佳化引擎130可與一XPATH求值引擎320共同運作以對任何並未利用該等最佳化策略308-318而最佳化的XPATH表示式進行再求值。該XPATH求值引擎320可相符於HD-DVD XPATH語法,此者係W3C XPATH 2.0的衍生項。該XPATH表示式管理器302可直接地呼叫該XPATH求值引擎320以再求值一給定XPATH表示式。第3圖中的虛線318d表示此呼叫,並且將該XPATH表示式按如輸入方式提供至該XPATH求值引擎320。而該XPATH求值引擎320又可產生求值結果322,並且將這些結果提供至該最佳化引擎。
既已描述過該XPATH表示式管理器及一些策略後,對於參照第3圖的計時標記處理最佳化,現將參照第4圖以繼續討論對於處理該計時標記之資料及處理流程的說明。
第4圖說明用以處理該計時標記的資料及處理流程400。為簡便之目的,然非限制,一些前文所述元件係經載入至第4圖,並藉相同參考編號而標註。此外,為便於說明,然非限制,第4圖顯示該資料及處理流程400的部分特點係由一些組件所執行。
區塊402表示因應於收到一時脈脈衝或刻度(即如204)而產生一時脈元組(tuple)。該時脈元組可含有一標題時脈、頁面時脈及應用時脈值。當發生刻度時,區塊402即產生相對應的時脈元組。這些時脈元組係經同步化於相同的時脈基底。即如第4圖所示,一處理器(即如ICP 112)可執行區塊402。在一些實作裡,一位於該處理器電路板 上之震盪器或類似計時元件可執行區塊402。而在其他實作裡,該震盪器或計時元件則可位在該處理器的外部。
區塊404表示包含因應於該時脈脈衝以建立並發送一刻度上訊息。此刻度上訊息提供一通知機制,以向第4圖所示之多項處理元件的其餘部分說明發生有一時脈脈衝。
區塊406表示將在區塊402之內所建立的時脈元組發送至例如一表現引擎(像是122)。第4圖在408標註該時脈元組而按如發送至該表現引擎。該時脈元組408可包含該刻度上訊息,此者係經標註為410。該刻度上訊息410可例如包含一目前頁面時脈值412、一標題時脈值414及一應用時脈值416的一或更多者。
在該表現引擎處,區塊418表示收到該時脈元組408。區塊420表示對在該經輸入之時脈元組內所表示的刻度進行時間解析作業。在執行區塊420裡,該表現引擎可詢查一資料結構,像是一文件物件模型(DOM)422。該DOM 422可例如含有內容標記、風格標記、腳本及該計時標記406,而按如經編碼於一HD-DVD碟片(即如104)上並可自其讀取。該DOM可利用一XML字彙而經實作如一樹狀表資料結構。
該DOM 422可儲存在當刻度204發生時成為與處理相關的一或更多XPATH表示式(即如218)。該DOM可回應於來自該表現引擎的詢查而提供這些XPATH表示式218,即如在第4圖中連接區塊422及420的虛線所示。
區塊424表示因應於該時脈元組而更新一作用中動畫 列表。更詳細地說,區塊424可包含對該新時脈元組更新一作用中時間間隔列表。為減少整體處理開支,可快取先前的結果,並且在該作用中時間間隔列表中僅反映出肇因於該新時脈元組之變化。當計時時間間隔成為作用中時,會將該等增入至該作用中時間間隔列表內;而相反地,當計時時間間隔成為非作用中時,可將該等自該作用中時間間隔列表移除。
該作用中時間間隔列表表示出哪些時間間隔為作用中。換言之,區塊424可包含決定在一給定刻度處,於該等XPATH表示式中所標定的哪些時間間隔是,或成為,作用中。在一給定時間處為作用中的計時時間間隔稱為「作用中時間間隔」。
區塊426代表動畫繪製處理,此者可包含求值該等作用中時間間隔,並且計算出對於該等作用中時間間隔的新表現值。這些時間間隔的數值可經疊層化,使得能夠按各種方式將該等疊層加以合併或模糊化。該詞彙「表現值」是指對於一給定時間點的淨值或有效值。在一給定時間間隔過程中可令該表現值能夠被使用者觸及,然其他數值可為關聯於此時間間隔、經隱藏於分層中,及/或經合併以貢獻於此一整體表現值。區塊426可包含根據一三明治模型計算這些新表現值,即如概於428所標註者。該三明治模型可標定對於給定刻度的表現值,並且可標定與在該DOM之佈置區段內相關節點相關聯的動態性質。
區塊430代表執行對於獲自於區塊426之表現值的格 式化及佈置運算。區塊430可包含利用「可延展風格表單語言(XSL)」以標定該格式化及佈置。
既已參照第4圖以描述對於計時標記處理之資料及處理流程後,現將藉第5圖所顯現者,繼續討論有關於這些資料及處理流程之部分特點的額外細節說明。
第5圖說明第4圖所示之資料及處理流程的額外特點500。為簡便起見,然非限制,茲將部分的前文所述元件載入至該第5圖內,並依相同的參考編號所標註。
即如第5圖所示,該DOM 422可包含複數個個別標記元件,而在第5圖中概經標註於502。第5圖於502a、502b及502n處顯示有三個標記元件範例。然而,該DOM的實作可含有任意數量的元件502,同時該DOM樹狀表可採行任何適當形式。這些標記元件可定義一在螢幕上向使用者所顯現者的場景說明。
即如第4圖中所述,區塊424代表產生一作用中動畫列表,此者可含有複數個計時容器。區塊424可包含藉由bigin time屬性(即如第2圖的208)以對在該作用中動畫列表內的計時容器進行排序,即按區塊504所表示。區塊424亦可包含對在該作用中動畫列表內的計時容器進行詞語性排序,即按區塊506所表示。
時間間隔排序或定序處理可為利用適當的資料結構而「在場地」完成。利用本揭所述技術,不需在各個時脈刻度處對所有的作用中時間間隔重新排序或重新定序。例如,資料結構可追蹤經增入該作用時間間隔列表之內的最 後時間及計時時間間隔。該等資料結構可含有已驅動該處理400或500的統計證據,藉以按內定方式將最新近計時間間隔增入至該作用中時間間隔列表的結束處。僅在例外的情況下,該處理可進一步回查該作用中時間間隔列表,藉以定位出對於該新計時時間間隔的適當插入點。該適當插入點通常是鄰近於最新近增入的時間間隔。然而,亦可根據一HD-DVD計時標記之本體的先前統計分析以定位出此一插入點。
現參照區塊426,此區塊可進一步表示處理經納入在該作用中動畫列表之內的作用中時間間隔,即如區塊508所表示。區塊426亦可包含計算對於該目前刻度的新表現值,,即如區塊510所表示。區塊426可包含產生標記特定之事件,即如區塊512所表示。最後,區塊426可包含復原任何非作用中計時時間間隔,即如區塊514所表示。
利用在此所顯示的工具及技術,該等處理程序400及500可將XPATH表示式的處理最佳化。即如本揭所述,將XPATH表示式的處理最佳化可達到更快速的訊框顯現速率,並且在當與HD-DVD內容進行互動時提供更佳的使用者或觀看者體驗。
既已參照第5圖描述這些資料及處理流程的額外特點之後,現將即以第6圖開始繼續討論該等最佳化策略的進一步詳細說明。
第6圖說明相關於牽涉到預剖析及預先計算一些XPATH表示式之最佳化策略的組件及處理流程600。為簡 便之目的,然非限制,一些前文所述元件係經載入至第6圖,並藉相同參考編號而標註。
即如第6圖所示,一最佳化引擎(即如130)可含有適用於預剖析及預先計算一些XPATH表示式的軟體組件。第3圖於第3圖的308處標註此等軟體組件之範例,並且區塊308係經帶至第6圖內。該最佳化引擎可連同於一XPATH表示式管理器(即如302)而運作。
第6圖顯示藉預剖析及預先計算以對XPATH表示式進行最佳化處理的處理流程600。區塊602表示剖析一經輸入之XPATH表示式,而按如由該XPATH表示式管理器所接收。第6圖帶入218處的XPATH表示式範例。
區塊604表示識別發生在該經輸入XPATH表示式218內的一或更多中介XPATH表示式。第6圖在606a及606n處標註兩個這些中介表示式範例。然而,在一給定XPATH表示式218裡可發生有任意數量的中介表示式606。
區塊608表示快取該等中介表示式606,並且將該等關聯於該DOM樹狀表之內的相對應元件或節點。該DOM樹狀表422和相關節點502係經帶入至第6圖內。一快取610可儲存該DOM樹狀表和相關節點。
區塊612表示對整個XPATH表示式計算結果,即如不同於對組成整個XPATH表示式之中介表示式計算結果。即如後文所詳述,由於在一些時脈刻度上無一中介XPATH表示式能夠改變數值,因此整個XPATH表示式的數值會維持為固定。
區塊614代表快取一對於整個XPATH表示式的數值。在其中在一給定刻度後整個XPATH表示式之數值維持為固定的實例裡,可接著自該快取中擷取出整個XPATH表示式的先前值。
注意到可按平行於區塊612-614的方式以執行區塊602-608。按此方式,可將整個XPATH表示式剖析成中介表示式(即如606a及606n),而且對於各式中介表示式計算出數值並予快取。同時,可計算出整個XPATH表示式的數值並予快取,即如區塊616所示。
區塊618表示收到一刻度或其他計時事件。因應於該刻度,區塊620表示求值該經預剖析且預先計算的中介表示式(即如606),而如儲存在該快取之內。區塊620亦可包含求值該經預先計算的整個表示式(即如616)而如儲存在該快取之內。區塊622表示送返獲自於區塊620內所執行之求值作業的數值。在此之後,該處理流程600可回返至區塊618以等待次一刻度。
在第6圖所述之技術裡,該中介表示式將各個XPATH數軸完整地清晰成一正準(canonical)形式,這包含一節點集合的二進位表示,運算子的二進位列表以及一謂語過濾器的二進位表示。除該謂語過濾器以外,所有皆可經完整清晰,意思是既已將該中介表示式完整地剖析,而數軸節點集合係參照於一參考資料結構,此者表示在該數軸內之DOM節點的列表,並且該等謂語過濾器既已將按其宣告形式之原始字串資料轉換成一較簡易的二進位形式,這可有 效率地求值而無須再度解譯。
可藉不同機制以快取這些表示式,包含將一對於該經剖析表示式的參照儲存在一裹裝一時間間隔節點的資料結構/物件上。該等XPATH表示式可在載入時間或在連續刻度/佈置運算之前的何時點處經剖析、預先計算並轉換至一二進位正準形式。注意到對一給定DOM此運算僅進行一次,並且僅若該DOM改變方才重新進行。一旦該XPATH表示式經剖析且經至少部分地解析之後(在一些情況下為完全解析),該表示式管理器可僅對該亦既經簡化之謂語過濾器以求值該表示式。
考慮下列範例:<cue begin="//button [style: backgroundColor()='red']"dur="500ms"…>
該XPATH表示式「//button [style: backgroundColor()='red']」意思是詢查在該XML DOM中其元件名稱為「button」的所有元件,並且自該集合,送返任何其style: backgroundColor性質之目前所算得數值為等於數值「red」者。
在一典型環境裡,可首先剖析此表示式然後進行求值。該剖析階段將該原始字串轉換成一系列的一或更多碼號,並且將該等儲存在一參考資料結構內,此資料結構描述該原始字串表示式的一較簡易且有效率形式。一般說來,可利用一遞迴下降剖析演算法以剖析該表示式。然而,亦可其他的剖析演算法及方式。
一種可在剖析階段過程中執行的處理程序稱為數軸解析。數軸解析是指一項建立一或更多節點集合的處理程序,而零或更多個謂語過濾器將對其等進行運算。當各時間間隔剖析其非限定XPATH表示式時,該時間間隔會維持一個對於該經剖析且經部分解析之表示式的參考。通常,此一參考可消除任何對於再度地執行此剖析階段的需要,除非是該底層DOM改變(而這在HD-DVD應用中通常是並不多見)。
一旦完成該剖析階段之後,可將較簡易且更具效率的二進位資料結構運用在第二階段,即表示式求值。表示式求值係對一較簡易資料結構上執行,並且僅牽涉到根據零或更多的謂語過濾器以解析並產生結果。該等謂語過濾器亦係按二進位正準形式所表示,因此可減少與表示式求值相關聯的處理開支。
在第6圖所示之法則下,該耗時且處理密集的XPATH表示式剖析任務僅完成一次,並且該中介表示式係經部份地(或在一些情況下為完全地)解析。這些最佳化可顯著地減少與XPATH表示式處理及求值作業相關聯的處理開支。
既已參照第6圖以描述牽涉到表示式預先計算的最佳化策略之後,現將繼續進一步詳細討論牽涉到事件驅動表示式的最佳化策略。
現進一步詳細說明牽涉到事件驅動表示式最佳化策略,第3圖在310處說明牽涉到事件驅動表示式的最佳化策略,而該者可為由該最佳化引擎130所提供。這些最佳 化策略可包含將非限定表示式劃分為可由事件所驅動,或根據其發生性而定,的表示式,以及其底層值可由輪詢所決定的表示式。例如,計時容器(即如par、seq及cue)可利用該HD-DVD狀態名稱空間以定義其個別的時間間隔究於何時成為作用中或非作用中。互動狀態(即如state: foreground、state: focused、state: pointer、state: actioned、state: value及state: enabled)主要由該使用者透過一控制器所發起的事件而驅動。可離出於該計時標記之處理範域以處置該等事件驅動事件。可利用這些事件或狀態轉移以觸發一事件驅動機制,而消除或減少逐一刻度所執行之表示式求值的次數。
該HD-DVD規格定義如何將控制器事件或「姿態(gestures)」傳播至該表現引擎。可按離出於該「刻度」處理範域之方式來發送這些事件,並且可影響該標記DOM的「狀態」名稱空間。該三明治模型的觀點,該HD-DVD規格係按不同於「風格」名稱空間之方式來定義該「狀態」名稱空間,這是在於「狀態」會立即地改變該DOM內的底層屬性。
由於狀態值是從刻度及佈置處理中抽離出而所處置,因此可將姿態事件的處置程序關聯於管理動畫列表的資料結構,而這是在刻度上處理之過程中後續地處置。當一狀態值改變時,可將此者直接地鏈結至任何等待此狀態變化之清晰結果的XPATH表示式。
考慮下列含有一begin XPATH表示式的cue: <cue begin="id('myButtonl)[state: focused()=1]"…>
此cue宣告,對於其唯一名稱為「myButtonl」之元件,當state: focused屬性被設定為「one」時,此者即必須開始。在該表現引擎之內的姿態處理邏輯可管理使用者輸入以及後續的狀態管理。不以連續地輪詢該XPATH引擎此表示式何時為真,該姿態處理邏輯可具備預設知識,以供其清晰該XPATH表示式而無須求值該XPATH表示式,藉以避免對該XPATH表示式進行求值的開支。
既已描述有關於最佳化事件驅動表示式的預處理之後,現將繼續討論當發生事件時可予執行的處理,即如第7圖所示。
第7圖說明與事件驅動表示式最佳化相關聯的組件及流程700。為簡便之目的,然非限制,一些前文所述元件係經載入至第7圖,並藉相同參考編號而標註。
即如在此所使用者,該詞彙「事件」可指來自使用者輸入而對風格及狀態的變化,以及獲自於動畫及/或獲自於腳本之風格及狀態的變化。更詳細地說,該XPATH表示式管理器(即如302)建立一與該表現引擎(即如122)的關係,在此之下該XPATH表示式管理器可接受獲自於如前述之作者定義的腳本碼、使用者輸入或動畫繪製而對狀態及風格性質之變化。換言之,腳本碼可修改零個以上性質值(狀態及風格兩者),使用者輸入可改變任何互動元件的狀態, 並且動畫繪製(即如計時元件的處理)可獲致元件狀態及風格的更動。該XPATH表示式管理器接受這些輸入,並且據此管理及更新其內部的XPATH表示式快取。
即如前述,一使用者(即如102)可對該HD-DVD播放器(即如第1圖之108)提供輸入。例如,該使用者可輸入命令,或者回應至由一表現引擎(即如122)所顯示的提示或選單。第7圖在702處概略地標駐此一使用者輸入,並且可包含話語命令、透過一遙控裝置或是經由該HD-DVD播放器之按鍵所輸入的命令等等。該表現引擎可包含,或併同運作於,接收並處理使用者輸入702的姿態處理邏輯704。
該姿態處理邏輯704可因應於該使用者輸入702而辨識所發生的特定事件,並且可藉對應於這些事件的識別碼以詢查一快取706。第7圖在708提供此等識別碼的範例。第7圖在710標駐這些詢查。而該快取706又可送返任何符合該輸入事件識別碼708的欄位。若該輸入事件識別碼符合該快取之內的任何欄位或記錄,則該快取可送返任何與該等相符欄位或記錄相關聯的經求值表示式712。該等表示式712包含這些其數值可回應於獲自該使用者輸入702之事件而改變的表示式。
現參照該表現引擎,當刻度204發生時,該表現引擎122可因應於這些刻度而接收來自該DOM 422的XPATH表示式218。該表現引擎122可將該等XPATH表示式218與任何自該快取706所送返之事件驅動或事件相關表示式 712加以比較。此一比較可識別出該等其求值作業係與獲自該使用者輸入702之事件無關的XPATH表示式,並且識別出其求值作業可因該等事件而改變的XPATH表示式。前者可稱為事件無關表示式,並經標註為218a。而後者可稱為事件驅動或事件相關表示式,並經標註為218b。
現參照該事件無關表示式218a,這些表示式的數值或求值結果並不會因為(多項)使用者事件而改變。因此,若先前既已快取此等表示式的先前值(即如在一快取714內),則這些先前值可維持為不變、目前且正確。從而,該表現引擎122可將這些事件無關表示式218a轉傳至一經標註為302a的XPATH表示式管理器實例。該XPATH表示式管理器302a可自該快取714擷取出這些事件無關XPATH表示式的先前值。接著該XPATH表示式管理器302a可將對於這些經求值表示式(標註為716)的數值轉傳至該表現引擎以供使用者。
現參照該等事件相關XPATH表示式218b,這些表示式可因使用者輸入702而改變數值或求值結果。在這些情況下,該表現引擎122可將任何事件相關表示式218b轉傳至該XPATH表示式管理器之一實例,此者係經標註為302b,而對這些事件相關表示式218b重新求值,並且送返對於這些經重新求值之表示式的更新值,即經標註於718者。
第7圖顯示不同的XPATH表示式管理器實例僅係便於說明且參考,然非為以限制可能實作。更詳細地說,在一 些實作裡,一單一XPATH表示式管理器302可處理事件無關表示式218a及事件相關表示式218b兩者。
第8圖說明用於將事件相關或事件驅動表示式之處理最佳化的處理流程800。第8圖係按流程圖形式顯示關聯於第7圖而說明及描述的處理。為簡便起見,然非限制,茲將部分的前文所述元件載入至該第8圖內,並依相同的參考編號所標註。
此外,為便於說明,然非限制,第8圖將部份的處理元件排置在對應於一表現引擎(即如122)及一最佳化引擎(即如130)的縱行之內。該最佳化引擎可包含與該事件驅動表示式(即如310)之處理最佳化相關聯的軟體組件。
區塊802表示自一使用者收到輸入。第7圖顯示一在102處之使用者的範例,並且提供一在802接收自該使用者之輸入的範例。
區塊804表示識別出任何獲自於區塊802內所收到之使用者輸入的狀態變化或事件。區塊804可包含識別出任何可對應於經預定義之事件識別碼(即如第7圖的708)的事件。這些預定義事件識別碼可供識別出任何其數值可因這些事件而改變的XPATH表示式。
區塊806代表識別出事件驅動或事件相關表示式。區塊806可包含詢查一事件識別碼快取,此者係關聯於相對應而若發生一或更多底層事件則其數值可改變的XPATH表示式。第7圖提供此一快取706,連同事件識別碼708及事件相關表示式712的範例。
區塊808代表接收到一刻度或其他計時輸入既已發生的表示。第7圖及其他圖式在此是顯示204處之刻度的範例。
區塊810代表回應於區塊808的刻度而收到一或更多的XPATH表示式。第7圖及其他圖式顯示在218處之XPATH表示式的範例,並且區塊810包含自一DOM(即如第7圖內的422)收到這些XPATH表示式。
注意到在區塊802-806中所表示之處理可為按與區塊808及810中所表示之處理相平行的方式進行。按此方式,該處理流程800可處理入方的使用者事件,而同時也處理輸入計時刻度。
區塊812表示進行求值,無論在區塊810內所收到之XPATH表示式是否相關於任何自區塊802中所收到之使用者輸入的事件皆同。若該等XPATH表示式係事件驅動或事件相關,則這些表示式的數值可因關聯於在區塊8702中所收到之使用者輸入的事件而改變。從而,處理流程800可採行「是」分支814而前至區塊816,這代表因發生使用者事件而請求對任何事件驅動XPATH表示式進行重新求值。區塊816可包含請求一XPATH表示式管理器(即如302)對該表示式進行重新求值。第8圖在818表示此請求。
現參照XPATH表示式管理器302,區塊820代表接收一請求以對一XPATH表示式重新求值。區塊820可包含接收一請求以對一事件相關或事件驅動XPATH表示式重新求值。
區塊822代表因應於該請求818以對一或更多XPATH表示式求值。區塊822可包含回應於發生一或更多事件以對一或更多事件驅動XPATH表示式重新求值。
區塊824代表發送獲自於區塊822內對該表示式重新求值的數值。換言之,區塊824代表更新表示式數值,以回對於發生任何該等表示式所與相關聯的事件。第8圖在826標註這些表示式重新求值的結果。
區塊828表示接收在區塊824內進行表示式重新求值的結果。在第8圖所示之範例裡,該表現引擎可執行區塊828。
現回到求值區塊812,若所輸入之表示式並非與一使用者事件相關,則該處理流程800可採行「否」分支830而前至區塊832,此者代表擷取該表示式的一先前值。例如,區塊832可包含擷取該表示式先前求值的結果,而如儲存在一快取(即如714)內。按此方式,該處理流程800可避免在區塊816-828內所表示,而對於任何其數值並不與底層使用者事件之發生相關的XPATH表示式之處理。
既已描述第8圖內對於事件驅動表示式之處理最佳化的處理流程800,現如第9圖呈現以討論利用有限狀態機之最佳化技術的說明。
第9圖說明利用有限狀態機的最佳化技術900。為簡便之目的,然非限制,一些前文所述元件係經載入至第9圖,並藉相同參考編號而標註。
第9圖提供關聯於牽涉到有限狀態機,概如312所標 註,之最佳化技術的處理之進一步說明。該最佳化引擎130可提供這些最佳化技術。
一有限狀態機,即如本揭所述,提供一種可經嵌入於一動畫引擎內,以供有效率地處理各種計時時間間隔及其相關祖代的機制。基本狀態為非作用中、作用中及握留。在一給定計時時間間隔之內的中介狀態變數可包含restartable(可重開始)、indeterminate(未決定)及resolved(已清晰)。這些狀態變數亦可包含任何特定begin、end及duration屬性(若確適用)。第2圖在220、222及224顯示此等屬性的範例。
在動畫引擎內運用此一狀態機機制可供在一特定時間表單裡有效率地處理時間時間間隔,因為這有助於跳略計時時間間隔的完整子樹狀表。非為以限制可能實作,而在此所使用的詞彙「時間表單」可指所有皆經同步化於相同時間基底之計時元件的容器。此外,若一給定親代時間時間間隔成為非作用中,則其所有的子代都成為非作用中以及可重開始。該狀態機亦可追蹤一給定時間時間間隔的可重開始狀態。
即如第9圖所示,區塊902代表接收一至少一刻度、計時脈衝或其他時脈相關事件的表示。區塊904表示對一在一給定XPATH表示式內的親代計時容器是否為作用中進行評估。若否,則區塊906代表省略該親代計時容器之任何子代的處理。否則,若該親代計時容器為作用中,則區塊908表示選擇該親代之一子代計時容器以進行處理。
區塊910代表評估在該子代計時容器之內所標定的任何開始條件是否為真。若如此,則區塊912代表對在該子代計時容器之內所標定的任何表示式進行求值。否則,區塊914代表評估該親代計時容器是否還有其他更多待予求值的子代。若是,則區塊916表示選擇一次一子代計時容器以進行處理。之後,該處理程序900回返到之前的區塊910,藉以重複對於此次一子代的處理程序。
從區塊914可見,若該親代計時容器並無其他的子代,則區塊918表示評估是否任何其他的親代計時容器尚待求值。若是,則區塊920表示選擇一次一親代計時容器以進行處理。之後,該處理程序900回返到之前的區塊904,並且重複對於此次一親代的處理程序。
從區塊918可見,若已無其他親代計時容器,則該處理程序900可觸抵結束狀態922。
前揭之處理程序900可為按如一或更多執行本揭所說明及描述之功能的有限狀態機所實作。
其他的最佳化技術,即概如第3圖中314所表註者,可辨識出互補性表示式,藉此避免對重複的表示式求值,同時關注於對唯一XPATH表示式進行求值。一「互補性」表示式係按布林邏輯所定義。例如,若一表示式「A」為真,則所有參照於「非A」之表示式的情況皆為偽。
HD-DVD內容之作者可在一給定「隱藏」的輸入元件上利用state: value,藉此來控制計時容器的行為。當多次使用相同的表示式然而是在不同計時容器的情境下時,僅 單次表示式求值即可足夠。可將其他對於該表示式之參照加以更新,藉此反映該單一求值的狀態。
同樣地,亦可跳略互補於這些表示式的表示式(亦即利用相反布林運算子),因為僅單次求值即足以決定任何後續互補性表示式究係為真或偽。考慮下列cue: <cuebegin="id('myButtonl')[state: value()='HELLO']"…> <cuebegin='id('myButtonl')[style: value()!='HELLO']"…> <cue begin="id('myButtonl')[style: value()='WORLD']"…>
假定一計時引擎對該第一cue求值,並且決定此者為作用中(或真)。在此情況下,該計時引擎可跳略對第二cue求值,因為該第二cue可為該第一cue的相反結果。同時該計時引擎可跳略對第三cue求值,因為若該第一cue為真,則該第三cue不可能亦為真。
可利用參考性資料結構以實作此最佳化,此結構可在載入時間過程之中加以修改,藉以鏈結相關及互補性表示式。亦可在刻度處理過程中取得這些參考性資料結構,因此該等可在當完成求值將該表示式的清晰結果加以更新。
第10圖說明與利用一共享記憶體池庫以將計時標記處理最佳化相關聯之組件及流程1000。為簡便之目的,然非限制,一些前文所述元件係經載入至第10圖,並藉相同參考編號而標註。
第10圖提供關於牽涉到使用共享記憶體之最佳化技 術,即概如第3圖中區塊316處所標註者,的進一步細節。一最佳化引擎(即如130)可實作這些最佳化技術316。
一快取1002可經實作如一共享記憶體池庫(pool)1004。該共享記憶體池庫1004可儲存複數個具微小固定大小之參考性資料結構(即如1006a及1006n),該等裹裝用以有效率地行旅(traversing)該DOM計時樹狀表的資訊(即如在422處而藉計時節點502)。
該等資料結構可供多個排序鏈結,並且可供根據節點的狀態以跳略多組計時節點組。第10圖在1008a(將該結構1006a鏈結至節點502a)及1008n(將該結構1006n鏈結至節點502n)處顯示此等鏈結的範例。
該共享記憶體池庫1004可有助於快速地行旅該DOM樹狀表,因為對於支援L1資料快取之CPU而言,記憶體係易於本地快取。該等資料結構1006的參考性本質可支援根據其狀態以跳略在該標記計時內之多個節點的能力。此外,該等資料結構可提供利用一索引增量或一指標相加運算以快速地行旅整個DOM樹狀表的能力。而併同這些技術,可運用相關的共享記憶體池庫以輔助該等表示式、排序索引及查核鍵值的關係,這有助於快速且具空間效率性的計時及XPATH相關資料結構查核作業。
既已在第10圖中說明關聯於運用共享記憶體池庫的最佳化技術之後,現將繼續參照第11圖以說明相關於利用排程器的最佳化技術。
第11圖說明有關於利用排程器1102以避免進行整個 計時樹狀表行旅的最佳化技術。該排程器1102將多個計時節點502自該計時標記106放置在一工作佇列1104之內。更詳細地說,該排程器1102僅放置該等在任何給定刻度處對求值而言具有永固性的計時節點。在該工作佇列內由該排程器所處理之各個項目或計時節點皆含有一對於一計時時間間隔(即如1106a及1106n),以及其相關子代(即如1108a及1108n),的參考。
當發生在標記DOM之內時,該工作佇列可藉開始時間,然後再按詞語性方式,而排序。此排序可提高僅將應予求值或處理之計時時間間隔放置在該工作佇列內的機率,因此消除任何多餘的計時樹狀表處理。此外,此機制亦可供較佳的運算序列化,而這些可潛在地離出處理範圍之外(即如姿態處理)。這種方式可併同於前述的記憶體池庫方式而運用,藉以提供工作項目及相關資料的更佳快取本地性。
結論
前文說明雖係按一HD-DVD計時標記處理最佳化之情境所顯現,然注意到本揭所述之工具及技術可適用於處理其他類型的媒體,或者適用以處理除本揭所述者以外之類型的標記。
雖既已按照特定於結構特性及/或方法動作之語言來描述本系統及方法,然應瞭解在後載申請專利範圍中所定義之系統及方法並非必然地受限於前述各項特定特性或動 作。相反地,上述特定特性及動作係按如實作所主張之系統及方法的範例形式而揭示。
此外,關於在此所描述與說明的部份資料與流程圖,應注意到可按該等所敘述者以外之順序來執行在此所描繪的處理程序及子處理程序,而不致悖離本揭說明之精神及範圍。同時,該等資料及處理流程在此雖係關聯於部分組件而敘述,然應注意到確可藉由其他組件以執行該等資料及處理流程,而不致悖離本揭說明之精神及範圍。
100‧‧‧操作環境
102‧‧‧使用者
104‧‧‧HD-DVD碟片
106‧‧‧標記檔案
108‧‧‧內容標記
110‧‧‧風格標記
112‧‧‧計時標記
113‧‧‧腳本
114‧‧‧HD-DVD播放器
115‧‧‧文件物件模型 (DOM)
116‧‧‧播放
117‧‧‧標記元件
118‧‧‧處理器
120‧‧‧電腦可讀取媒體
122‧‧‧表現引擎
124‧‧‧所顯示內容
126‧‧‧使用者介面
128‧‧‧使用者互動
130‧‧‧計時最佳化引擎
200‧‧‧額外特點
202‧‧‧訊框顯現速率
204‧‧‧刻度
206‧‧‧計時容器
208‧‧‧循序計時容器
210‧‧‧平行計時容器
212‧‧‧示意計時容器
214‧‧‧性質
216‧‧‧事件
218‧‧‧傾聽器
220‧‧‧開始時間屬性
222‧‧‧結束時間屬性
224‧‧‧時段長度屬性
226‧‧‧限定時間間隔
228‧‧‧非限定時間間隔
230‧‧‧XPATH表示式
300‧‧‧XPATH表示式管理器特點
302‧‧‧XPATH表示式管理器組件
303‧‧‧風格及狀態變化(事件)
304‧‧‧求值結果
306‧‧‧數值
308‧‧‧預剖析表示式
310‧‧‧最佳化焦點狀態表示式
312‧‧‧利用有限狀態機進行最佳化
314‧‧‧利用互補性表示式進行最佳化
316‧‧‧最佳化共享記憶體
318‧‧‧排程器式處理
320‧‧‧XPATH求值引擎
322‧‧‧XPATH求值結果
400‧‧‧處理流程
402‧‧‧產生時脈元組
404‧‧‧建立刻度上訊息
406‧‧‧發送時脈元組
408‧‧‧時脈元組
410‧‧‧刻度上訊息
412‧‧‧目前頁面時脈
414‧‧‧標題時脈
416‧‧‧應用時脈
418‧‧‧接收時脈元組
420‧‧‧更新時間清晰
422‧‧‧DOM
424‧‧‧更新作用中時間間 隔列表
426‧‧‧執行動畫處理
428‧‧‧三明治模型
430‧‧‧執行格式化及佈置
500‧‧‧額外特點
502‧‧‧標記元件
504‧‧‧按BEGIN排序
506‧‧‧按語詞方式排序
508‧‧‧處理作用中時間間隔
510‧‧‧計算新數值
512‧‧‧對標記產生事件
514‧‧‧復原非作用中時間間隔
600‧‧‧處理流程
602‧‧‧剖析XPATH表示式
604‧‧‧識別中介表示式
606‧‧‧中介表示式
608‧‧‧以DOM節點快取中介表示式
610‧‧‧快取
612‧‧‧計算整個XPATH表示式
614‧‧‧以DOM節點快取整 個XPATH表示式
616‧‧‧整個XPATH表示式
618‧‧‧接收刻度
620‧‧‧求值經快取表示式
622‧‧‧送返數值
700‧‧‧組件及流程圖
702‧‧‧使用者輸入
704‧‧‧姿態處理邏輯
706‧‧‧快取
708‧‧‧事件識別碼
710‧‧‧詢查(事件/狀態變化)
712‧‧‧相關的事件表示式
714‧‧‧快取
716‧‧‧先前求值之表示式
718‧‧‧經重新求值之表示式
800‧‧‧處理流程
802‧‧‧接收使用者輸入
804‧‧‧識別/狀態變化事件
806‧‧‧識別事件相關表示式
808‧‧‧接收刻度
810‧‧‧對於刻度接收 XPATH‧‧‧表示式
812‧‧‧表示式相關於事件?
814‧‧‧否
816‧‧‧請求表示式管理器以對表示式重新求值
818‧‧‧對表示式求值之請求
820‧‧‧接收請求以對表示式求值
822‧‧‧表示式求值
824‧‧‧發送數值
826‧‧‧重新求值表示式
828‧‧‧接收數值
830‧‧‧是
900‧‧‧最佳化技術
902‧‧‧接收刻度
904‧‧‧親代計時容器作用中?
906‧‧‧省略處理子代
908‧‧‧選擇親代的子代
910‧‧‧開始條件為真?
912‧‧‧對子代進行表示式求值
914‧‧‧親代下更多子代?
916‧‧‧選擇次一子代
918‧‧‧更多親代?
920‧‧‧選擇次一親代
922‧‧‧結束
1000‧‧‧組件及流程圖
1002‧‧‧快取
1004‧‧‧共享記憶體池庫
1006‧‧‧參考性資料結構
1008‧‧‧鏈結
1102‧‧‧排程器
1104‧‧‧工作佇列
1106‧‧‧計時時間間隔
1108‧‧‧相關子代
與HD-DVD計時標記執行作業之最佳化相關的工具將關聯於隨附圖式而敘述。在全篇揭示與圖式中使用相同的編號以參照於類似組件及特性。在一參考編號中的第一個數字是表示引入該參考編號的圖式。
第1圖係一用以將HD-DVD計時標記執行作業最佳化之操作環境的區塊圖。
第2圖係一表現引擎與計時標記之額外特點的區塊圖。
第3圖係一XPATH表示式管理器特點以及用以將該計時標記處理最佳化之策略的區塊圖。
第4圖係一用以處理該計時標記之資料及處理流程的區塊圖。
第5圖係一第4圖中所示之資料及處理流程額外特點的區塊圖。
第6圖係一與組件及處理流程相關聯之區塊圖,該等係牽涉到預剖析及預先計算一些XPATH表示式的最佳化策略。
第7圖係一與將事件驅動表示式最佳化相關聯之組件及流程的區塊圖。
第8圖係一用以將事件獨立表示式處理最佳化之處理流程的區塊圖。
第9圖係一利用有限狀態機之最佳化技術的區塊圖。
第10圖係一與利用一共享記憶體池庫以將計時標記處理最佳化相關聯之組件及流程的區塊圖。
第11圖係一與利用排程器以減低計時樹行旅之相關聯之最佳化技術的區塊圖。
100‧‧‧操作環境
102‧‧‧使用者
104‧‧‧HD-DVD碟片
106‧‧‧標記檔案
108‧‧‧內容標記
110‧‧‧風格標記
112‧‧‧計時標記
113‧‧‧腳本
114‧‧‧HD-DVD播放器
115‧‧‧文件物件模型(DOM)
116‧‧‧播放
117‧‧‧標記元件
118‧‧‧處理器
120‧‧‧電腦可讀取媒體
122‧‧‧表現引擎
124‧‧‧所顯示內容
126‧‧‧使用者介面
128‧‧‧使用者互動
130‧‧‧計時最佳化引擎

Claims (18)

  1. 一種機器可讀取儲存裝置,該機器可讀取儲存裝置含有機器可讀取指令,在當該等機器可讀取指令由一機器執行時,可令該機器執行一方法,此方法包含以下步驟:接收一標記檔,該標記檔包括至少一計時標記,該計時標記包括一或更多表示式,該一或更多表示式中之至少一者定義一非限定計時屬性(indefinite timing attribute),該非限定計時屬性描述一標記元素的一開始時間、該標記元素的一結束時間、或該標記元素的一持續時間;決定是否能夠使用一最佳化策略來最佳化該表示式;以及回應於決定該表示式能夠被最佳化,則基於該最佳化策略來將該計時標記之處理予以最佳化,其中該最佳化策略包含預先計算經納入該計時標記之內的該一或更多表示式,及其中該最佳化策略包含識別在該一或更多表示式中之一者內的複數個中介表示式,以及將該等複數個中介表示式關聯到一文件物件模型中之個別節點。
  2. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中該最佳化策略包含識別在該一或更多表示式中之一者之內的至少一中介表示式。
  3. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中該最佳化策略包含快取在該一或更多表示式中之一者內經識別之至少一中介表示式。
  4. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中該最佳化策略包含對在該一或更多表示式中之一者內經識別之至少一中介表示式進行求值。
  5. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中該最佳化策略包含識別該計時標記中之該一或更多表示式,以及決定該一或更多表示式的數值是否與經預先定義事件之發生相關。
  6. 如申請專利範圍第5項所述之機器可讀取儲存裝置,其中該方法進一步包含將該等預先定義事件關聯到事件識別碼,其中該等事件係關聯於使用者輸入。
  7. 如申請專利範圍第6項所述之機器可讀取儲存裝置,其中該方法進一步包含將該等事件識別碼關聯於該一或更多表示式中之至少一者,其中該至少一表示式係與該等預先定義事件的至少一者之發生相關。
  8. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中該方法進一步包含接收已發生一計時刻度(tick)之表示。
  9. 如申請專利範圍第8項所述之機器可讀取儲存裝置,其中該方法進一步包含因應於收到該刻度之表示而接收該一或更多表示式中之至少一者。
  10. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中該方法進一步包含決定該一或更多表示式中之至少一者是否與關聯於使用者輸入的該預先定義事件之發生相關。
  11. 如申請專利範圍第10項所述之機器可讀取儲存裝置,其中該方法進一步包含一旦接收到發生該使用者輸入的表示時即重新對該一或更多表示式中之該至少一者求值,該一或更多表示式中之該至少一者與該預先定義事件之發生相關。
  12. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中該方法進一步包含跳略對該一或更多表示式中之至少一者重新求值,以及一旦決定該至少一表示式係與一預先定義事件之發生無關時立即擷取該至少一表示式之一先前 值。
  13. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中將處理子以最佳化的該步驟包含利用一有限狀態機。
  14. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中將處理予以最佳化的該步驟包含跳略對該一或更多表示式之一互補性表示式進行求值。
  15. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中將處理子以最佳化的該步驟包含利用一共享記憶體池庫。
  16. 如申請專利範圍第1項所述之機器可讀取儲存裝置,其中將處理予以最佳化的該步驟包含利用一排程器。
  17. 一種用於最佳化計時標記之執行的設備,包含:一或更多處理器;以及記憶體,該記憶體包含機器可讀取指令,當該等機器可讀取指令由該一或更多處理器所執行時,致使該設備進行下列步驟:接收一標記檔,該標記檔包括至少一計時標記,該計時標記包括一或更多表示式,該一或更多表示式中之 至少一者定義一非限定計時屬性(indefinite timing attribute),該非限定計時屬性描述一標記元素的一開始時間、該標記元素的一結束時間、或該標記元素的一持續時間;決定是否能夠使用一最佳化策略來最佳化該表示式;以及回應於決定該表示式能夠被最佳化,則基於該最佳化策略來將該計時標記之處理予以最佳化,其中該最佳化策略包含預先計算經納入該計時標記之內的該一或更多表示式,及其中該最佳化策略包含識別在該一或更多表示式中之一者內的複數個中介表示式,以及將該等複數個中介表示式關聯到一文件物件模型中之個別節點。
  18. 如申請專利範圍第17項所述之設備,其中該一或更多表示式為可延伸標記語言(XML)路徑(Path)表示式。
TW097100229A 2007-01-05 2008-01-03 用於最佳化計時標記之執行的機器可讀取儲存裝置及設備 TWI480756B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US88375107P 2007-01-05 2007-01-05
US11/770,167 US20080165281A1 (en) 2007-01-05 2007-06-28 Optimizing Execution of HD-DVD Timing Markup

Publications (2)

Publication Number Publication Date
TW200836084A TW200836084A (en) 2008-09-01
TWI480756B true TWI480756B (zh) 2015-04-11

Family

ID=39593937

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097100229A TWI480756B (zh) 2007-01-05 2008-01-03 用於最佳化計時標記之執行的機器可讀取儲存裝置及設備

Country Status (15)

Country Link
US (1) US20080165281A1 (zh)
EP (1) EP2100303A4 (zh)
JP (1) JP5059124B2 (zh)
KR (1) KR20090096619A (zh)
CN (1) CN101573758B (zh)
AU (1) AU2007342158B2 (zh)
BR (1) BRPI0720615A2 (zh)
CA (1) CA2674059A1 (zh)
IL (1) IL199578A0 (zh)
MX (1) MX2009007269A (zh)
NO (1) NO20092510L (zh)
RU (1) RU2460157C2 (zh)
TW (1) TWI480756B (zh)
WO (1) WO2008085730A1 (zh)
ZA (1) ZA200904536B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101359497A (zh) * 2007-07-30 2009-02-04 科立尔数位科技股份有限公司 时间标记的检测及表示方法与记录其数据结构的记录媒体
US10104436B1 (en) * 2009-02-23 2018-10-16 Beachfront Media Llc Automated video-preroll method and device
US10706105B2 (en) 2017-02-09 2020-07-07 Micron Technology, Inc. Merge tree garbage metrics
US10725988B2 (en) * 2017-02-09 2020-07-28 Micron Technology, Inc. KVS tree
US10719495B2 (en) 2017-02-09 2020-07-21 Micron Technology, Inc. Stream selection for multi-stream storage devices
US10706106B2 (en) 2017-02-09 2020-07-07 Micron Technology, Inc. Merge tree modifications for maintenance operations
TWI643043B (zh) * 2017-06-16 2018-12-01 東元電機股份有限公司 控制命令產生方法及其裝置
US11100071B2 (en) 2018-10-10 2021-08-24 Micron Technology, Inc. Key-value store tree data block spill with compaction
US10915546B2 (en) 2018-10-10 2021-02-09 Micron Technology, Inc. Counter-based compaction of key-value store tree data block
US11048755B2 (en) 2018-12-14 2021-06-29 Micron Technology, Inc. Key-value store tree with selective use of key portion
US10852978B2 (en) 2018-12-14 2020-12-01 Micron Technology, Inc. Key-value store using journaling with selective data storage format
US10936661B2 (en) 2018-12-26 2021-03-02 Micron Technology, Inc. Data tree with order-based node traversal

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6519594B1 (en) * 1998-11-14 2003-02-11 Sony Electronics, Inc. Computer-implemented sharing of java classes for increased memory efficiency and communication method
TWI263923B (en) * 2004-05-11 2006-10-11 Ali Corp Audio fast-forward playing method
US20060233531A1 (en) * 2005-02-25 2006-10-19 Kabushiki Kaisha Toshiba Content reproduction apparatus and subtitle reproduction method

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0165439B1 (ko) * 1995-09-14 1999-03-20 김광호 디지탈 비디오 테이프 레코더의 화면 구성 장치 및 방법
US6038573A (en) * 1997-04-04 2000-03-14 Avid Technology, Inc. News story markup language and system and process for editing and processing documents
KR100287366B1 (ko) * 1997-11-24 2001-04-16 윤순조 엠피이지 방식을 이용한 휴대용 음향 재생장치 및 방법
US6810503B1 (en) * 1998-02-11 2004-10-26 Microsoft Corporation Method and apparatus for controlling the timing of the invocation of events within a computer runtime environment
US6654030B1 (en) * 1999-03-31 2003-11-25 Canon Kabushiki Kaisha Time marker for synchronized multimedia
US20020112247A1 (en) * 2001-02-09 2002-08-15 Horner David R. Method and system for creation, delivery, and presentation of time-synchronized multimedia presentations
JP2002312180A (ja) * 2001-04-11 2002-10-25 Hitachi Ltd 動的命令変換機能を有するプロセッサシステム、該プロセッサシステムを備えたコンピュータにて実行されるバイナリートランスレーションプログラム及びそのプロセッサシステムを実装した半導体デバイス
US20040014013A1 (en) * 2001-11-01 2004-01-22 Telecommunications Research Associates Interface for a presentation system
ATE513415T1 (de) * 2001-12-28 2011-07-15 Koninkl Philips Electronics Nv Verfahren zur verarbeitung von multimediainhalt
JP4039484B2 (ja) * 2002-02-28 2008-01-30 インターナショナル・ビジネス・マシーンズ・コーポレーション XPath評価方法、これを用いたXML文書処理システム及びプログラム
AU2003243169B2 (en) * 2002-04-24 2009-03-19 Intel Corporation System and method for processing of XML documents represented as an event stream
KR20030095048A (ko) * 2002-06-11 2003-12-18 엘지전자 주식회사 멀티미디어 재생 방법 및 장치
BR0306986A (pt) * 2002-07-23 2005-06-28 Samsung Electronics Co Ltd Estrutura de ìndice de meta-dados divididos em fragmentos e mìdia para leitura em computador
EP1403778A1 (en) * 2002-09-27 2004-03-31 Sony International (Europe) GmbH Adaptive multimedia integration language (AMIL) for adaptive multimedia applications and presentations
US7519616B2 (en) * 2002-10-07 2009-04-14 Microsoft Corporation Time references for multimedia objects
JP3719516B2 (ja) * 2003-06-11 2005-11-24 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体
US7644064B2 (en) * 2004-02-19 2010-01-05 Microsoft Corporation Systems and methods for filter table optimization
US7877366B2 (en) * 2004-03-12 2011-01-25 Oracle International Corporation Streaming XML data retrieval using XPath
US20050257201A1 (en) * 2004-05-17 2005-11-17 International Business Machines Corporation Optimization of XPath expressions for evaluation upon streaming XML data
US7603426B2 (en) * 2004-06-18 2009-10-13 Microsoft Corporation Flexible context management for enumeration sessions using context exchange
US20050289175A1 (en) * 2004-06-23 2005-12-29 Oracle International Corporation Providing XML node identity based operations in a value based SQL system
US7512592B2 (en) * 2004-07-02 2009-03-31 Tarari, Inc. System and method of XML query processing
DE102004034004A1 (de) * 2004-07-14 2006-02-09 Siemens Ag Verfahren zum Codieren eines XML-Dokuments, sowie Verfahren zum Decodieren, Verfahren zum Codieren und Decodieren, Codiervorrichtung, Decodiervorrichtung und Vorrichtung zum Codieren und Decodieren
WO2006071000A1 (en) * 2004-12-29 2006-07-06 Lg Electronics Inc. Structure of navigation information for video data recorded on a recording medium and recording/reproducing method and apparatus using the structure
WO2006081474A2 (en) * 2005-01-27 2006-08-03 Intel Corp. Multi-path simultaneous xpath evaluation over data streams
JP2006236411A (ja) * 2005-02-22 2006-09-07 Toshiba Corp 情報記憶媒体、情報記録方法、および情報再生方法
US7711095B2 (en) * 2005-03-10 2010-05-04 Avaya Inc. Coordination of content streams in interactive voice response systems
JP2006294152A (ja) * 2005-04-12 2006-10-26 Toshiba Corp 情報記憶媒体、情報記録装置、および情報再生装置
US20070006078A1 (en) * 2005-07-01 2007-01-04 Microsoft Corporation Declaratively responding to state changes in an interactive multimedia environment
US20070006079A1 (en) * 2005-07-01 2007-01-04 Microsoft Corporation State-based timing for interactive multimedia presentations
JP2007048348A (ja) * 2005-08-08 2007-02-22 Toshiba Corp 情報記憶媒体、情報再生装置、情報再生方法、及び情報再生プログラム
JP2008041199A (ja) * 2006-08-08 2008-02-21 Toshiba Corp 情報処理装置、および再生方法
US8321845B2 (en) * 2006-10-13 2012-11-27 International Business Machines Corporation Extensible markup language (XML) path (XPATH) debugging framework
US8209424B2 (en) * 2006-12-20 2012-06-26 United Video Properties, Inc. Systems and methods for providing remote access to interactive media guidance applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6519594B1 (en) * 1998-11-14 2003-02-11 Sony Electronics, Inc. Computer-implemented sharing of java classes for increased memory efficiency and communication method
TWI263923B (en) * 2004-05-11 2006-10-11 Ali Corp Audio fast-forward playing method
US20060233531A1 (en) * 2005-02-25 2006-10-19 Kabushiki Kaisha Toshiba Content reproduction apparatus and subtitle reproduction method

Also Published As

Publication number Publication date
ZA200904536B (en) 2010-09-29
IL199578A0 (en) 2010-03-28
CN101573758A (zh) 2009-11-04
NO20092510L (no) 2009-07-03
MX2009007269A (es) 2009-10-08
RU2460157C2 (ru) 2012-08-27
TW200836084A (en) 2008-09-01
EP2100303A4 (en) 2013-01-23
AU2007342158A1 (en) 2008-07-17
EP2100303A1 (en) 2009-09-16
JP2010516011A (ja) 2010-05-13
WO2008085730A1 (en) 2008-07-17
CA2674059A1 (en) 2008-07-17
AU2007342158B2 (en) 2012-01-12
CN101573758B (zh) 2012-02-08
US20080165281A1 (en) 2008-07-10
KR20090096619A (ko) 2009-09-11
RU2009125537A (ru) 2011-01-10
BRPI0720615A2 (pt) 2014-04-15
JP5059124B2 (ja) 2012-10-24

Similar Documents

Publication Publication Date Title
TWI480756B (zh) 用於最佳化計時標記之執行的機器可讀取儲存裝置及設備
KR101517460B1 (ko) 데이터 관계의 그래픽 표현
US9418054B2 (en) Document comment management
US20110161371A1 (en) Sql generation
US10120654B2 (en) Domain specific language design
US9524279B2 (en) Help document animated visualization
US20140033015A1 (en) Comment presentation in electronic documents
US20110161946A1 (en) Batch data processing
EP2343644A1 (en) Transformation of data between hierarchical data formats
US20110078607A1 (en) Workflow integration with adobe™flex™user interface
US20110161918A1 (en) Applying rules to data
JP2010534870A (ja) ソフトウェア資産ベースのソリューションを開発する一貫した方法システムおよびコンピュータ・プログラム
US8732596B2 (en) Transformation of hierarchical data formats using graphical rules
CN113177168B (zh) 一种基于Web元素属性特征的定位方法
EP2357554A1 (en) Processing collections of data items
US20110161934A1 (en) Generating and monitoring data items
Rossi et al. Model-based web application development
CN114897296A (zh) Rpa流程标注方法、执行过程回放方法及存储介质
US8433729B2 (en) Method and system for automatically generating a communication interface
Mihalcik et al. The design and implementation of ViPER
US20070208767A1 (en) Legacy Software Multimedia Capture and Analysis
CN109814857B (zh) 一种可定制图元联动的方法及装置
JP2006350901A (ja) 構造化文書処理システム
Gonnokami et al. Condition-Task-Store: A Declarative Abstraction for Microtask-based Complex Crowd-sourcing.
TWI313422B (en) Interface data designing system and method

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees