專利名稱:提供多屏幕的設(shè)備和動態(tài)地配置多屏幕的方法
提供多屏幕的設(shè)備和動態(tài)地配置多屏幕的方法技術(shù)領(lǐng)域根據(jù)本發(fā)明的設(shè)備和方法涉及提供多屏幕(multiple screens)和動態(tài)地配 置多屏幕,更具體地講,涉及;f企索屏幕的類型和屏幕之間的連接關(guān)系以動態(tài) 地配置在物理顯示裝置上提供多個服務(wù)的多屏幕。
背景技術(shù):
諸如數(shù)字電視(TV)或數(shù)字機頂盒的現(xiàn)有技術(shù)的廣播接收機在一個物理 顯示裝置上僅提供一個內(nèi)容要素,或者在一個物理顯示裝置上同時顯示主屏 幕和子屏幕。即使現(xiàn)有技術(shù)的廣播接收機能夠在同一顯示屏幕上同時顯示主屏幕和子 屏幕,現(xiàn)有技術(shù)的廣播接收機也僅能以有限的幾種方式來布置主屏幕和子屏 幕。在主屏幕內(nèi)顯示內(nèi)容的情況下,內(nèi)容的所有要素(即,視頻數(shù)據(jù)、音頻 數(shù)據(jù)和其它數(shù)據(jù))都被顯示。另一方面,在子屏幕內(nèi)顯示內(nèi)容的情況下,僅顯示內(nèi)容的一部分要素。內(nèi)容源包括諸如衛(wèi)星廣播商、地面廣播商或有線廣播商的廣播服務(wù)、諸 如數(shù)字通用盤(DVD)的存儲介質(zhì)或者連接到輸入端的外部裝置。然而,利 用現(xiàn)有的廣播接收機將這樣的多種內(nèi)容源所提供的內(nèi)容顯示在一個顯示屏幕 上是非常困難的。在交互TV應(yīng)用程序環(huán)境,如多媒體家庭平臺(MHP)、高級通用應(yīng)用平 臺(ACAP)和開放式有線應(yīng)用平臺(OCAP)下, -假設(shè)在一個物理顯示裝置 上僅輸出一個屏幕。在交互TV應(yīng)用程序環(huán)境下,采用例如基于家庭音頻/視頻交互技術(shù) (HAVi)的用戶界面(UI)。根據(jù)HAVi UI標準,即使對一個物理顯示裝置 上顯示的屏幕的數(shù)量沒有強加限制,在一個物理顯示裝置上通常也僅顯示一 個屏幕。發(fā)明內(nèi)容技術(shù)問題在這樣的環(huán)境下,在獨立的屏幕上顯示多媒體內(nèi)容時,難以針對顯示在 屏幕上的多媒體內(nèi)容之一來執(zhí)行諸如解碼、數(shù)字信號處理、用戶交互處理等 操作。此外,也難以以屏幕為單位來動態(tài)控制應(yīng)用程序的生命周期以及資源 的使用。因此,需要一種在動態(tài)地配置的屏幕上顯示多種內(nèi)容的方法。技術(shù)方案本發(fā)明提供一種用于提供多屏幕的設(shè)備和方法,其中,檢索裝置中屏幕 的類型和屏幕之間的連接關(guān)系,以在物理顯示裝置上動態(tài)地配置顯示多個服 務(wù)的多屏幕。根據(jù)本發(fā)明的一方面,提供了一種用于提供多屏幕的設(shè)備,該設(shè)備包括 操作模塊,產(chǎn)生用于顯示接收的服務(wù)的至少一個屏幕;檢索模塊,在所述屏根據(jù)本發(fā)明的另一方面,提供了一種用于提供多屏幕的設(shè)備,該設(shè)備包 括操作模塊,產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕和邏輯屏幕映射到的顯 示屏幕;檢索模塊,檢索操作模塊產(chǎn)生的所有邏輯屏幕和顯示屏幕。根據(jù)本發(fā)明的另一方面,提供了一種用于提供多屏幕的設(shè)備,該設(shè)備包 括操作模塊,產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕和邏輯屏幕映射到的顯 示屏幕;檢索模塊,檢索邏輯屏幕和顯示屏幕。根據(jù)本發(fā)明的另一方面,提供了一種用于提供多屏幕的設(shè)備,該設(shè)備包 括廣播信號接收模塊,接收服務(wù);操作模塊,產(chǎn)生邏輯屏幕和邏輯屏幕映 射到的顯示屏幕;檢索模塊,檢索顯示服務(wù)的屏幕是邏輯屏幕還是顯示屏幕。根據(jù)本發(fā)明的另一方面,提供了一種動態(tài)地配置多屏幕的方法,該方法 包括產(chǎn)生用于顯示接收的服務(wù)的至少一個屏幕;在所述屏幕中檢索包括在 所述服務(wù)中的預(yù)定應(yīng)用程序在其上執(zhí)行的屏幕。根據(jù)本發(fā)明的另一方面,提供了一種動態(tài)地配置多屏幕的方法,該方法 包括產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕;產(chǎn)生邏輯屏幕映射到的顯示屏 幕;檢索產(chǎn)生的所有邏輯屏幕和顯示屏幕。才艮據(jù)本發(fā)明的另一方面,提供了一種動態(tài)地配置多屏幕的方法,該方法 包括產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕;產(chǎn)生邏輯屏幕映射到的顯示屏 幕;檢索邏輯屏幕和顯示屏幕。根據(jù)本發(fā)明的另一方面,提供了一種用于動態(tài)地配置多屏幕的方法,該方法包括接收服務(wù);產(chǎn)生邏輯屏幕;產(chǎn)生邏輯屏幕映射到的顯示屏幕;檢 索顯示服務(wù)的屏幕是邏輯屏幕還是顯示屏幕。
通過下面結(jié)合附圖對示例性實施例進行的詳細描述,本發(fā)明的上述和其 它方面將會變得更加清楚,其中圖1A至圖1H是示出根據(jù)本發(fā)明示例性實施例的PiP屏幕的配置的示圖;圖2是示出根據(jù)本發(fā)明示例性實施例的邏輯屏幕和顯示屏幕之間的關(guān)系 的示圖;圖3A至圖3E是示出根據(jù)本發(fā)明示例性實施例的包括映射器的屏幕的配 置的示圖;圖4是示出才艮據(jù)本發(fā)明示例性實施例的服務(wù)源的框圖; 圖5A和圖5B是示出根據(jù)本發(fā)明示例性實施例的非抽象服務(wù)和抽象服務(wù) 的示圖;圖6是示出邏輯屏幕和顯示屏幕的屬性信息和接口的示圖;圖7是示出根據(jù)本發(fā)明示例性實施例的邏輯屏幕的屬性"z-order"的示圖;圖8A和圖8B是示出根據(jù)本發(fā)明示例性實施例的邏輯屏幕的屬性 "Display—Area"的示圖;圖9是示出根據(jù)本發(fā)明示例性實施例的將兩個服務(wù)映射到顯示屏幕的方 法的示圖;圖10是示出根據(jù)本發(fā)明示例性實施例的用于提供多屏幕的設(shè)備的構(gòu)造 的框圖;圖11是示出根據(jù)本發(fā)明示例性實施例的動態(tài)地配置多屏幕的方法的流程圖;圖12是示出根據(jù)本發(fā)明示例性實施例的用于提供多屏幕的軟件架構(gòu)的示圖;圖13是示出根據(jù)本發(fā)明示例性實施例的構(gòu)成應(yīng)用程序接口 (API)層的 模塊之間的關(guān)系的示圖;圖14是示出根據(jù)本發(fā)明示例性實施例的通過圖13所示的模塊將顯示在 各相應(yīng)邏輯屏幕上的多個服務(wù)顯示在顯示屏幕上的方法的流程圖;圖15是示出根據(jù)本發(fā)明示例性實施例的檢索模塊的操作的示圖; 圖16A至圖16F是示出根據(jù)本發(fā)明示例性實施例的用于檢索屏幕的代碼 的示圖;圖17是示出根據(jù)本發(fā)明示例性實施例的在圖13所示的各模塊之間交換 顯示在邏輯屏幕上的服務(wù)的方法的流程圖。
具體實施方式
通過參照下面對示例性實施例以及附圖的詳細描述,本發(fā)明的優(yōu)點和特 點及實現(xiàn)其的方法可更容易理解。然而,本發(fā)明可以以許多不同的形式實施, 而不應(yīng)被理解為限于這里所闡述的示例性實施例。相反,提供這些示例性實 施例是為了使本公開徹底和完整,并向本領(lǐng)域技術(shù)人員充分傳達本發(fā)明的構(gòu) 思,本發(fā)明僅由權(quán)利要求限定。貫穿說明書,相同的標號表示相同的部件。以下,參照根據(jù)本發(fā)明示例性實施例的用戶界面、方法和計算機程序產(chǎn) 品的流程圖來描述本發(fā)明。應(yīng)該理解,流程圖中的每一方框以及流程圖中方 框的組合可通過計算機程序指令來實現(xiàn)。這些計算機程序指令可被提供給通 用計算機、專用計算機或其它可編程數(shù)據(jù)處理設(shè)備的處理器,以產(chǎn)生機器從 而使得經(jīng)計算機或其它可編程數(shù)據(jù)處理設(shè)備的處理器運行的指令創(chuàng)建實現(xiàn)一 個流程圖方框或多個流程圖方框中所指定的功能的裝置。這些計算機程序指令還可被存儲在能夠引導(dǎo)計算機或其它可編程數(shù)據(jù)處 理設(shè)備以特定方式工作的計算機可用或計算機可讀存儲器中,使得存儲在計 算機可用或計算機可讀存儲器中的指令產(chǎn)生包含實現(xiàn)流程圖方框中所指定的 功能的指令裝置的產(chǎn)品。計算機程序指令還可被載入計算機或其它可編程數(shù)據(jù)處理設(shè)備中以使得 在計算機或其它可編程設(shè)備上執(zhí)行一 系列操作步驟,以產(chǎn)生計算機實現(xiàn)的處 理,從而在計算機或其它可編程設(shè)備上執(zhí)行的指令提供實現(xiàn)流程圖方框中所 指定的功能的步驟。流程圖的每一方框可代表包含用于執(zhí)行指定的邏輯功能的一個或多個可 執(zhí)行指令的模塊、代碼段或部分代碼。還應(yīng)該注意的是,在一些可替換實現(xiàn) 方式中,方框中示出的功能可以不按順序發(fā)生。例如,根據(jù)所涉及的功能,連續(xù)示出的兩個方框?qū)嶋H上可以基本同時執(zhí)行,或者有時,這兩個方框可以 以相反的順序執(zhí)行。為了更好地理解本發(fā)明,現(xiàn)在將定義本^Hf中所使用的術(shù)語。術(shù)語"服務(wù)"表示一起顯示的一組多媒體內(nèi)容,即, 一組服務(wù)組分(service component )。服務(wù)組分是服務(wù)的要素,包括視頻組分、音頻組分和數(shù)據(jù)組分。數(shù)據(jù)組 分是服務(wù)中的應(yīng)用程序。此外,應(yīng)用程序分為未綁定應(yīng)用程序和服務(wù)綁定應(yīng)用程序。由于未綁定 應(yīng)用程序具有高優(yōu)先級,所以資源被平穩(wěn)地分配。監(jiān)視器應(yīng)用程序(monitor application )對應(yīng)于具有最高優(yōu)先級的特定的未綁定應(yīng)用程序。服務(wù)綁定應(yīng)用程序與傳輸流有關(guān),并且允許優(yōu)先級比未綁定應(yīng)用程序的 優(yōu)先級低。服務(wù)綁定應(yīng)用程序不用作關(guān)鍵系統(tǒng)。當(dāng)發(fā)生對資源的竟爭時,與 未綁定應(yīng)用程序相比,服務(wù)綁定應(yīng)用程序放棄資源分配的可能性更高。服務(wù) 綁定應(yīng)用程序包括鏈接類型的服務(wù)綁定應(yīng)用程序,其與當(dāng)前正傳輸?shù)牧鲄f(xié) 作地運行;非鏈接類型的服務(wù)綁定應(yīng)用程序,獨立于當(dāng)前正傳輸?shù)牧鞫\行。術(shù)語"服務(wù)上下文"表示能夠控制服務(wù)的執(zhí)行的對象,包括提供服務(wù)所 需的各種資源、裝置以及執(zhí)行狀態(tài)信息。術(shù)語"物理顯示裝置,,表示實際顯示服務(wù)的內(nèi)容的物理空間。術(shù)語"顯示屏幕"表示實際顯示在物理顯示裝置上的屏幕。任意服務(wù)可 被直接設(shè)置在顯示屏幕上,并且顯示屏幕可被顯示在物理顯示裝置上??蛇x 地,映射到顯示屏幕的特定區(qū)域的至少一個邏輯屏幕可被顯示在物理顯示裝 置上。術(shù)語"邏輯屏幕"表示顯示任意服務(wù)的空間。在被映射到顯示屏幕之前,邏輯屏幕是虛擬屏幕,因此不被顯示在物理顯示裝置上。邏輯屏幕和顯示屏幕可以是背景靜止圖像、視頻光柵(raster)和圖形光柵的組合。圖形光柵可以是文本、線、顏色和圖像的組合或者視頻幀的混合。 術(shù)語"主服務(wù)"表示用戶通過顯示在物理顯示裝置上的菜單或遙控器選擇為主服務(wù)的服務(wù),或者應(yīng)用程序通過API選擇為主服務(wù)的服務(wù),顯示主服務(wù)的屏幕被稱為"主屏幕"。術(shù)語"畫中畫服務(wù)(PiP服務(wù))"表示用戶經(jīng)應(yīng)用程序的API通過顯示在物理顯示裝置上的菜單或遙控器選擇為主服務(wù)中的次服務(wù)的服務(wù),PiP服務(wù)可被顯示在畫中畫屏幕(PiP屏幕)或主屏幕上。PiP屏幕包括如圖1A至圖1D所示的占據(jù)一個屏幕的一部分的屏幕,以 及如圖1E至1F所示的在不與一個屏幕重疊的情況下與該屏幕同時顯示的屏 幕。在這種情況下,應(yīng)該理解,PiP屏幕可包括顯示在物理顯示裝置的任意位 置或區(qū)域的屏幕或者疊蓋另一屏幕的屏幕,如圖1G和圖1H所示。圖2是示出根據(jù)本發(fā)明示例性實施例的邏輯屏幕和顯示屏幕之間的關(guān)系 的示圖。參照圖2,可利用邏輯屏幕210、 212和214來顯示服務(wù)。邏輯屏幕210、 212和214通過映射塊230被映射到顯示屏幕220、 222和224。詳細地講,邏輯屏幕210和212被映射到顯示屏幕220,邏輯屏幕212 和214^皮映射到顯示屏幕222,邏輯屏幕210、 212和214^皮映射到顯示屏幕 224。簡言之,至少一個顯示服務(wù)的邏輯屏幕被映射到顯示屏幕的任意區(qū)域。映射塊230是將邏輯屏幕映射到顯示屏幕所需的各種信息的集合。所述 各種信息的示例包括多個邏輯屏幕中的每一個被映射到顯示屏幕上的預(yù)定區(qū) 域的坐標信息、邏輯屏幕和顯示屏幕的標識信息以及指定邏輯屏幕被顯示在 顯示屏幕上的次序的信息。映射塊230可改變邏輯屏幕的大小以將其分配到顯示屏幕的任意區(qū)域。 即,映射塊230可執(zhí)行邏輯屏幕的縮放以及邏輯屏幕的位置的分配,圖3A 至圖3E是示出包括作為映射塊的映射器的屏幕的配置的示圖。參照圖3A,包括背景靜止圖像B、視頻光柵V和圖形光柵G的主屏幕 被映射器按照正常大小映射到整個顯示屏幕。僅包括視頻組分的PiP屏幕被 映射器按照減小的大小映射到整個顯示屏幕。在這種情況下,映射的PiP屏 幕被顯示在主屏幕上,這基于Z值來確定。參考特征Z指將在隨后描述的z 次序值。可將覆蓋屏幕(overlay screen)與顯示屏幕組合。所述覆蓋屏幕是 被置于最外側(cè)的特定屏幕,可在提供字幕功能時使用。PiP屏幕可如圖3A所 示僅具有視頻組分,或者可如圖3B所示具有背景靜止圖像B、視頻光柵V 和圖形光片冊G的組合。參照圖3C,包括背景靜止圖像B、視頻光柵V和圖形光柵G的組合的 主屏幕被映射器按照正常大小映射到整個顯示屏幕。僅具有視頻組分的兩個 PiP屏幕弁l和#2被映射器按照減小的大小映射到顯示屏幕的任意區(qū)域。在這10種情況下,映射的PiP屏幕被布置在主屏幕上,并且Z值可保持不變。此外, 可將覆蓋屏幕與顯示屏幕組合。屏幕的配置可如圖3C所示具有僅包括視頻組分的多個PiP屏幕,或者如圖3D所示具有包括背景靜止圖像B、視頻光柵V 和圖形光柵G的組合的多個PiP屏幕。圖3E示出了畫上畫(Picture-on-Picture, PoP )屏幕。應(yīng)該理解,傳統(tǒng)的 PiP屏幕顯示在主屏幕之內(nèi),而POP屏幕顯示在主屏幕之外。參照圖3E,包 括背景靜止圖像B、視頻光柵V和圖形光柵G的組合的多個PiP屏幕#1和#2 被映射器按照減小的大小映射到顯示屏幕的任意區(qū)域。在這種情況下,映射 的PoP屏幕# 1和#2的Z值可保持不變。此外,可將覆蓋屏幕與顯示屏幕 組合。映射塊230可通過將要運行的各種計算機程序語言所準備的接口或函數(shù) 來實現(xiàn),并且映射塊230可利用上述信息作為參數(shù)來創(chuàng)建或改變邏輯屏幕和 顯示屏幕之間的關(guān)系。此外,映射塊230可通過具有邏輯屏幕和顯示屏幕之間的映射功能的硬 件來實現(xiàn)。此外,由各種服務(wù)源提供的服務(wù)可被顯示在顯示屏幕上,并且顯示屏幕 可被顯示在物理顯示裝置上,如圖4所示。存在提供廣播服務(wù)的服務(wù)源(如地面廣播商320和有線廣播商330 )、提 供存儲在存儲介質(zhì)中的服務(wù)的服務(wù)源(如個人視頻記錄器(PVR) 340)以及 經(jīng)有線網(wǎng)絡(luò)或無線網(wǎng)絡(luò)提供服務(wù)的服務(wù)源(圖4中未示出)。廣播接收機310從所述服務(wù)源接收服務(wù),并生成顯示接收的每個服務(wù)的 邏輯屏幕。然后,通過預(yù)定義的方法或者由用戶或應(yīng)用程序設(shè)置的方法將任意服務(wù) 直接設(shè)置在將顯示在物理顯示裝置上的顯示屏幕上。另外,映射到顯示屏幕 的任意區(qū)域的至少一個邏輯屏幕顯示在物理顯示裝置350上。簡言之,由地 面廣播商320、有線廣播商330和PVR提供的服務(wù)被顯示在物理顯示裝置350 上。圖4中示出了地面廣播商320、有線廣播商330和PVR 340作為服務(wù)源, 但是本發(fā)明不限于此。提供能夠 一起顯示的多媒體內(nèi)容的任何類型的多媒體 內(nèi)容源都可以是根據(jù)本發(fā)明的示例性實施例的服務(wù)源。如圖5A和圖5B所示,根據(jù)本發(fā)明示例性實施例的服務(wù)可分為抽象服務(wù)(abstract service )和非4由象月良務(wù)(non-abstract service )。抽象服務(wù)不是實時傳輸?shù)膹V播信號所提供的服務(wù),而是獨立于廣播信道 的服務(wù)。抽象服務(wù)僅包括廣播數(shù)據(jù)組分,即應(yīng)用程序,而不包括視頻組分和 音頻組分。抽象服務(wù)的示例包括具有基于標準的未綁定應(yīng)用程序的服務(wù)。非抽象服務(wù)被認為是除了抽象服務(wù)之外的服務(wù)。根據(jù)本發(fā)明的當(dāng)前示例性實施例,抽象服務(wù)和非抽象服務(wù)是獨立的。例 如,抽象服務(wù)可不通過邏輯屏幕而被直接設(shè)置在物理顯示裝置上,非抽象服 務(wù)可被顯示在邏輯屏幕上。然后,所述邏輯屏幕可被映射到設(shè)置了抽象服務(wù) 的顯示屏幕。之后,可通過物理顯示裝置輸出顯示屏幕。這樣,抽象服務(wù)可 獨立于非抽象服務(wù)被顯示在顯示屏幕上。此外,抽象服務(wù)和非抽象服務(wù)可被 映射到不同的邏輯屏幕。之后,這些邏輯屏幕可被映射到一個顯示屏幕。換 言之,抽象服務(wù)可獨立于非抽象服務(wù)被顯示在顯示屏幕上。根據(jù)本發(fā)明的當(dāng)前示例性實施例,邏輯屏幕和顯示屏幕可被分為不同的 對象??蛇x地,根據(jù)一個屏幕對象的屬性信息,屏幕可用作邏輯屏幕或顯示 屏幕。詳細地講,屏幕對象是邏輯屏幕還是顯示屏幕取決于屏幕對象的屬性中 的"Type (類型)"信息。屏幕對象的屬性包括"Type"、 "z-Order ( z次序)"、"Display_Area (顯 示區(qū)i或),,、"Visibility (可牙見性)"、"Associated—Display—Screen (相關(guān)顯示屏 幕)"、"Associated_Service—Contexts (相關(guān)月良務(wù)上下文)"和"OutputPort (輸 出端口 )"。圖6示出屏幕對象的屬性信息以及用于處理屏幕的屬性的接口。 屬性"Type" 510用于確定屏幕類型是邏輯屏幕還是顯示屏幕。 屬性"z-Order" 520用于確定多個邏輯屏幕沿z軸的排列次序。圖7示 出對于邏輯屏幕"z-Order"屬性值的組合,物理顯示裝置上的邏輯屏幕的配置。參照圖7,第一邏輯屏幕620和第二邏輯屏幕630分別映射到顯示屏幕 610的預(yù)定區(qū)域。詳細地講,第一邏輯屏幕620被顯示在顯示屏幕610上, 第二邏輯屏幕630與第一邏輯屏幕620部分重疊地顯示在顯示屏幕上。換言 之,顯示屏幕610、第一邏輯屏幕620和第二邏輯屏幕630沿著z軸方向順序 布置。在這種情況下,第一邏輯屏幕620的"z-Order"屬性可一皮設(shè)置為值l,第二邏輯屏幕630的"z-Order"屬性可被設(shè)置為值2。第一邏輯屏幕620和 第二邏輯屏幕630的"z-Order"屬性可被設(shè)置為任何數(shù)字或字符,只要這些 數(shù)字或字符能夠表示第一邏輯屏幕620和第二邏輯屏幕630沿z軸布置的特 定次序即可。屬性"Display—Area" 530是與邏輯屏幕的顯示屏幕區(qū)域(如圖8A和圖 8B所示)有關(guān)的信息。圖8A示出邏輯屏幕710被映射到顯示屏幕720的整個區(qū)域,圖8B示出 邏輯屏幕730被映射到顯示屏幕740的部分區(qū)域。"Display一Area"屬性可包括指定邏輯屏幕將映射到的顯示屏幕的預(yù)定部 分的二維坐標的信息,或者可包括指定顯示屏幕上的預(yù)定位置和邏輯屏幕相 對于顯示屏幕上的所述預(yù)定位置偏移了多少的偏移值的信息。屬性"Visibility" 540確定邏輯屏幕將被可視地顯示在顯示屏幕上還是將 被不可視地顯示在顯示屏幕上??赏ㄟ^改變屬性"Visibility" 540的值來使邏 輯屏幕出現(xiàn)在顯示屏幕上或者從顯示屏幕上消失。屬性"Associated—Display—Screen" 550是關(guān)于與邏輯屏幕相關(guān)的顯示屏 幕的信息。不與任何顯示屏幕相關(guān)的邏輯屏幕可以不被顯示在物理顯示裝置 上,也可以不被傳輸給外部輸出裝置。屬性"Associated—Service—Contexts" 560是與連接到邏輯屏幕、或顯示 屏幕的服務(wù)上下文有關(guān)的信息。設(shè)置在這樣的服務(wù)上下文中的服務(wù)可被顯示 在邏輯屏幕或顯示屏幕上。屬性"OutputPort" 570是與將輸出顯示屏幕的裝置有關(guān)的信息,這樣的 裝置包括顯示器屏幕、有線/無線通信媒體以及各種存儲媒體??商峁﹫D6所示的用于識別或改變屬性值的接口。參照圖6,所述接口 可包括接口 "Set",用于設(shè)置屬性值或者將邏輯屏幕連接到顯示屏幕;接 口 "Add",用于添加屬性值或者將邏輯屏幕連接到服務(wù);接口 "Get",用于 識別屬性值;接口 "Remove",用于刪除屬性值。這些接口可包括分別執(zhí)行 它們的功能的進程、函數(shù)、過程或方法。例如,方法"getDisplayScreen(void)"返回與當(dāng)前屏幕有關(guān)的顯示屏幕。 詳細地講,如果當(dāng)前屏幕是邏輯屏幕,則方法"getDisplayScreen(void)"返回 有關(guān)的顯示屏幕。如果當(dāng)前屏幕是顯示屏幕,則方法"getDisplayScreen(void)" 返回與當(dāng)前屏幕有關(guān)的參考信息。此外,如果當(dāng)前屏幕是邏輯屏幕,但是沒有相關(guān)屏幕,則方法"getDisplayScreen(void)"返回"NULL"值。#4居另 一示例,方法"public void setDisplayArea(HScreenRectangle rect) throws SecurityException, IllegalStateException"提供用于將當(dāng)前邏輯屏幕映射 到有關(guān)顯示屏幕的預(yù)定區(qū)域的功能。被提供作為參數(shù)的實例是包"org.havi.ui" 的類 "HScreenRectangle ,,, 并具有二維位置信息??蛇M行方法"SecurityException ,, 和 "IllegalStateException ,, 的執(zhí)行,作為方法"setOutputScreen(HScreen screen)"的例外操作。可在當(dāng)前屏幕是邏輯屏幕時, 或者在與當(dāng)前邏輯屏幕有關(guān)的顯示屏幕的一部分由于主機平臺的特性而不能 改變時,4丸4亍方法"IllegalStateException"。根據(jù)另一示例,方法"getOutputArea(void)"返回當(dāng)前屏幕的區(qū)域信息作 為HScreenRectangle信息。如果當(dāng)前屏幕對應(yīng)于顯示屏幕,則方法"getOutputArea(void),, 返回其值與 HScreenRectangle(O,O,l,l)相同的 HScreenRectangle信息。如果當(dāng)前屏幕是邏輯屏幕,則方法"getOutputArea(void),,返回與顯示屏幕上被當(dāng)前屏幕占據(jù)的區(qū)域有關(guān)的信 息。如果當(dāng)前屏幕是邏輯屏幕,但是該屏幕與任何顯示屏幕都不相關(guān),則方 法"getOutputArea(void)"返回"NULL"值。在下面的描述中始終使用特定術(shù)語來表示特定接口。然而,本領(lǐng)域技術(shù) 人員應(yīng)該理解,對特定函數(shù)命名只是為了表示其功能。對示例性實施例的詳 細描述并非是為了區(qū)分名稱不同(而非功能不同)的函數(shù)。圖9是示出兩個服務(wù)被設(shè)置在被映射到一個顯示屏幕的兩個邏輯屏幕上 的過程的示圖。參照圖9,第一服務(wù)包括所有的三個服務(wù)組分,即視頻、音頻和數(shù)據(jù)組 分,第二服務(wù)僅包括視頻和音頻組分。然而,本發(fā)明不對服務(wù)組分強加任何 限制,圖8所示的第 一服務(wù)和第二服務(wù)僅是示意性的。如圖9所示,第一服務(wù)和第二服務(wù)按照與現(xiàn)有技術(shù)基本相同的方式被顯 示在物理顯示裝置上。根據(jù)本發(fā)明的當(dāng)前示例性實施例,可在物理顯示裝置 上彼此獨立地顯示多個服務(wù),而不對一個顯示屏幕上能夠顯示的服務(wù)的數(shù)量 強加任何限制。圖10是根據(jù)本發(fā)明示例性實施例的提供多屏幕的設(shè)備的框圖。 參照圖10,提供多屏幕的設(shè)備900包括數(shù)字信號處理模塊940、操作模 塊970、用戶/應(yīng)用程序接口模塊950和檢索模塊960。此外,設(shè)備900包括廣播信號接收模塊910、存儲介質(zhì)920a和外部輸入 模塊930作為服務(wù)源,包括物理顯示裝置980、存儲介質(zhì)920b和外部輸出模 塊990作為服務(wù)輸出媒體。這里所使用的術(shù)語"模塊"表示(但不限于)執(zhí)行特定任務(wù)的軟件或硬 件組件,如現(xiàn)場可編程門陣列(FPGA)或?qū)S眉呻娐?ASIC)。模塊可方 便地構(gòu)造為駐留在可尋址存儲介質(zhì)上,并被構(gòu)造為在一個或多個處理器上運 行。因此,模塊可包括(例如)諸如軟件組件、面向?qū)ο蟮能浖M件、類組 件和任務(wù)組件的組件、進程、函數(shù)、屬性、過程、子進程、程序代碼段、驅(qū) 動程序、固件、微碼、電路、數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)、表、數(shù)組和變量。 組件和模塊中提供的功能可被組合為更少的組件和模塊,或者被進一步分為另外的組件和模塊。數(shù)字信號處理模塊940從廣播信號接收模塊910、存儲介質(zhì)920a或外部 輸入模塊930接收諸如多媒體內(nèi)容的服務(wù)的各種信息,例如視頻信息、音頻 信息或數(shù)據(jù)信息。廣播信號接收模塊910接收衛(wèi)星廣播信號、地面廣播信號或有線廣播信 號,并發(fā)送所接收的廣播信號,存儲介質(zhì)920a存儲服務(wù)的視頻信息、音頻信 息或數(shù)據(jù)信息,外部輸入模塊930從外部裝置(如連接到網(wǎng)絡(luò)的網(wǎng)絡(luò)接口模 塊)接收服務(wù)的視頻信息、音頻信息或數(shù)據(jù)信息。數(shù)字信號處理模塊940利用接收的服務(wù)組分恢復(fù)多個服務(wù)?;謴?fù)的服務(wù) 包括抽象服務(wù)或非抽象服務(wù)。這里,短語"多個服務(wù)"表示由廣播信號接收^^莫塊910發(fā)送的兩個或更 多個服務(wù),或者由廣播信號接收模塊910和存儲介質(zhì)920a分別發(fā)送的兩個或 更多個服務(wù)。塊950進行的選擇來恢復(fù)服務(wù)。在這種情況下,用戶或應(yīng)用程序可選擇任意 服務(wù)與屏幕之間的連接。操作模塊970顯示數(shù)字信號處理模塊940恢復(fù)的服務(wù),然后將邏輯屏幕 映射到顯示屏幕,或者在顯示屏幕上直接顯示服務(wù)。為此,操作模塊9卯可 包括服務(wù)處理模塊972或輸出模塊974。服務(wù)處理模塊972生成一個或多個邏輯屏幕,以顯示由數(shù)字信號處理模 塊940恢復(fù)的服務(wù)。輸出模塊974將由服務(wù)處理模塊972生成的多個邏輯屏幕映射到顯示屏方法來進行邏輯屏幕到顯示屏幕的映射。由數(shù)字信號處理模塊940恢復(fù)的服務(wù)可以不被服務(wù)處理模塊972處理。 相反,由數(shù)字信號處理模塊940恢復(fù)的服務(wù)可被直接映射到由輸出模塊974 生成的顯示屏幕的特定部分。由輸出模塊974提供的顯示屏幕可被顯示在物理顯示裝置980上,或者 可被存儲在存儲介質(zhì)920b中。存儲介質(zhì)920b的示例包括計算機可讀軟盤、 硬盤、CD-ROM、 DVD、 DVD-ROM、 BD (藍光盤)和半導(dǎo)體存儲器。此外,由輸出模塊974提供的顯示屏幕可經(jīng)外部輸出模塊990被發(fā)送到 連接到網(wǎng)絡(luò)的外部裝置。為此,輸出模塊974可包括多個輸出端口,可經(jīng)所述多個輸出端口提供 顯示屏幕。在這種情況下,可經(jīng)預(yù)先設(shè)置為默認的輸出端口來提供顯示屏幕, 或者可經(jīng)用戶借助用戶/應(yīng)用程序接口模塊950所選擇的輸出端口來提供顯示 屏幕。檢索模塊960在系統(tǒng)中檢索屏幕的類型以及屏幕之間的連接關(guān)系。這種 檢索被分為四種類型,例如,第一檢索處理,在至少一個屏幕中檢索包括在 接收的服務(wù)中的應(yīng)用程序在其上執(zhí)行的屏幕;第二檢索處理,檢索系統(tǒng)中產(chǎn) 生的所有邏輯屏幕和顯示屏幕;第三檢索處理,檢索顯示接收的服務(wù)的邏輯 屏幕和所述邏輯屏幕映射到的顯示屏幕;第四檢索處理,檢索顯示接收的服 務(wù)的屏幕是邏輯屏幕還是顯示屏幕。在這種情況下,通過第一至第四檢索處理檢索的屏幕可以是邏輯屏幕或 顯示屏幕。在第一檢索處理期間,檢索模塊960可檢索應(yīng)用程序在其上執(zhí)行的屏幕 的設(shè)置類型。所述設(shè)置類型包括單屏幕類型、覆蓋屏幕類型、PiP屏幕類型、 覆蓋PiP屏幕類型、畫上畫(PoP)屏幕類型、覆蓋PoP屏幕類型和除了上述 屏幕之外的一般屏幕類型。根據(jù)單屏幕類型,應(yīng)用程序在其上執(zhí)行的屏幕對 應(yīng)于顯示屏幕。在覆蓋屏幕類型中,單個屏幕與至少一個覆蓋屏幕共存。在 PiP屏幕類型中,應(yīng)用程序在其上執(zhí)行的屏幕對應(yīng)于映射到顯示屏幕的整個區(qū) 域的邏輯屏幕、映射到顯示屏幕的至少一個非覆蓋邏輯屏幕,但不對應(yīng)于覆 蓋屏幕。在覆蓋PiP屏幕類型中,PiP屏幕與至少一個覆蓋屏幕共存。在PoP屏幕類型中,應(yīng)用程序在其上執(zhí)行的屏幕對應(yīng)于映射到顯示屏幕的整個區(qū)域 的至少兩個非覆蓋邏輯屏幕的組合,但是并不對應(yīng)于覆蓋屏幕。在覆蓋PoP 屏幕類型中,PoP屏幕與至少一個覆蓋屏幕共存。在第二檢索處理期間,只有在權(quán)限被給予參考應(yīng)用程序的權(quán)限范圍的應(yīng) 用程序時,檢索模塊960才可僅對邏輯屏幕和顯示屏幕執(zhí)行檢索。應(yīng)用程序的權(quán)限范圍由服務(wù)提供商授予,檢索模塊960僅檢索操作模塊970創(chuàng)建的屏 幕中包括在應(yīng)用程序的權(quán)限范圍內(nèi)的一些屏幕。同時,當(dāng)沒有服務(wù)提供商授 予的權(quán)限時,檢索模塊960可檢索所有邏輯屏幕和顯示屏幕。在第四檢索處理期間,當(dāng)應(yīng)用程序在其上執(zhí)行的屏幕是邏輯屏幕(以下 稱為執(zhí)行邏輯屏幕)時,檢索模塊960可檢索在顯示屏幕上執(zhí)行邏輯屏幕的 位置和大小以及執(zhí)行邏輯屏幕與顯示屏幕上的另一邏輯屏幕之間的覆蓋關(guān) 系。在這種情況下,執(zhí)行邏輯屏幕的位置包括顯示屏幕上的平面坐標和作為 Z軸上的次序的次序"Z-order"。此外,在第四檢索處理期間,檢索模塊960可檢索被檢索的屏幕的服務(wù) 上下文。檢索模塊960根據(jù)用戶輸入的控制命令或服務(wù)提供商提供的應(yīng)用程序的 控制命令來檢索。根據(jù)應(yīng)用程序的控制命令的檢索是指檢索模塊960根據(jù)當(dāng) 前傳送的應(yīng)用程序或先前存儲的應(yīng)用程序執(zhí)行的檢索。用戶或應(yīng)用程序可使用用戶/應(yīng)用程序接口模塊950選4奪多個服務(wù)之一或 者恢復(fù)期望的服務(wù)。此外,用戶可使用用戶/應(yīng)用程序接口模塊950選擇多個 顯示屏幕之一。為了執(zhí)行上述操作,用戶/應(yīng)用程序接口模塊950可使用檢索 模塊960的檢索結(jié)果。因為圖10所示的模塊根據(jù)它們的功能被劃分,所以可以被連接到其他模塊。圖11是示出根據(jù)本發(fā)明示例性實施例的動態(tài)地配置多屏幕的方法的流程圖。通常,按照預(yù)定的格式(例如,MPEG流格式)來傳輸構(gòu)成多媒體內(nèi)容 的視頻信息、音頻信息和數(shù)據(jù)信息。在操作SIOIO,提供諸如多媒體內(nèi)容服 務(wù)的服務(wù)的設(shè)備接收視頻信息、音頻信息和數(shù)據(jù)信息,并基于所述視頻信息、 音頻信息和數(shù)據(jù)信息來恢復(fù)服務(wù)。這里,可由用戶或應(yīng)用程序選擇或預(yù)先確 定在操作S1010中恢復(fù)的服務(wù)。用戶可利用顯示裝置上顯示的菜單或者遙控器來選擇一任意屏幕與一屏幕之間的連接。應(yīng)用程序可利用API來選擇所述 連接。此外,數(shù)據(jù)信息包括與服務(wù)的應(yīng)用程序有關(guān)的應(yīng)用程序信息,這些應(yīng)用 程序信息包括指示應(yīng)用程序是否可在PiP屏幕上執(zhí)行的信號信息。應(yīng)用程序信息的示例包括基于MHP標準的應(yīng)用程序信息表(AIT )和基于OCAP標準 的擴展應(yīng)用程序信息表(XAIT)。信號信息可以被添加到所述應(yīng)用程序信息。之后,在操作S1020,恢復(fù)的服務(wù)被設(shè)置以便其能夠被顯示在邏輯屏幕 上。在操作S1030,邏輯屏幕被映射到顯示屏幕。在操作S1040,利用顯示器 屏幕、存儲介質(zhì)或網(wǎng)絡(luò)將顯示屏幕提供給用戶。在創(chuàng)建邏輯屏幕和顯示屏幕之后,在操作S1050,檢索模塊960檢索創(chuàng) 建的屏幕。檢索模塊960進行的檢索包括第一至第四檢索處理,第一至第四 檢索處理可根據(jù)通過用戶/應(yīng)用程序接口模塊950輸入的用戶或者應(yīng)用程序的 控制命令執(zhí)行。上面已經(jīng)參照圖IO提供了檢索處理的詳細描述。圖11中示出了恢復(fù)的服務(wù)經(jīng)邏輯屏幕被顯示在物理顯示裝置上。然而, 恢復(fù)的服務(wù)可被直接顯示在物理顯示裝置上,而不必經(jīng)過邏輯屏幕。當(dāng)用戶選擇PiP服務(wù)時,按照兩種模式來實現(xiàn)PiP服務(wù)。在第一種模式 下,僅提供在主屏幕上選擇的PiP服務(wù)的視頻組分,而不對PiP服務(wù)創(chuàng)建單 獨的邏輯屏幕,即,PiP屏幕。在第二種模式下,對PiP服務(wù)創(chuàng)建單獨的邏輯 屏幕,以在創(chuàng)建的PiP屏幕上提供所選擇的PiP服務(wù)。圖11為了簡明示出了僅將一個服務(wù)映射到顯示屏幕的方法。然而,可通 過或者可不通過多個邏輯屏幕將多個服務(wù)映射到顯示屏幕。當(dāng)以這樣的方式將顯示屏幕提供給用戶時,用戶可執(zhí)行多個服務(wù)。圖12是示出根據(jù)本發(fā)明示例性實施例的提供多屏幕的軟件架構(gòu)的示圖。參照圖12,軟件架構(gòu)1100包括裝置驅(qū)動程序?qū)?110、 API層1120和應(yīng) 用程序?qū)?130。裝置驅(qū)動程序?qū)?110從各種多媒體內(nèi)容源接收服務(wù)組分,并對接收的服 務(wù)組分進行解碼。接收的服務(wù)組分的示例包括視頻信息、音頻信息和數(shù)據(jù)信 息。API層1120產(chǎn)生邏輯屏幕和顯示屏幕,并將服務(wù)、邏輯屏幕和顯示屏幕 相互映射。應(yīng)用程序?qū)?130提供用戶界面以便用戶能夠動態(tài)地配置顯示服務(wù)的邏輯屏幕,或者向API層1120發(fā)送用戶命令以^更API層1120能夠執(zhí)行該用戶 命令。為了執(zhí)行上述操作,應(yīng)用程序?qū)?130可通過當(dāng)前傳送的應(yīng)用程序或者先 前存儲的應(yīng)用程序來操作,應(yīng)用程序?qū)?130可執(zhí)行屏幕檢索操作。用戶借助應(yīng)用程序?qū)?130來使裝置驅(qū)動程序?qū)?110能夠經(jīng)物理顯示裝 置提供顯示屏幕或者將顯示屏幕存儲在存儲介質(zhì)920b中。此外,用戶可使裝 置驅(qū)動程序?qū)?110能夠經(jīng)網(wǎng)絡(luò)將顯示屏幕發(fā)送給外部裝置。為此,裝置驅(qū)動程序?qū)?110可包括能夠提供顯示屏幕的多個輸出端口。 或者,API層1120可包括所述多個輸出端口。為了在顯示屏幕上動態(tài)地配置多個邏輯屏幕,API層1120可包括多個軟 件模塊,例如多屏幕管理器模塊"MultiscreenManager" 1210、多屏幕上下文 模塊 "MultiscreenContext " 1230 、多屏幕上下文監(jiān)聽器模塊 "MultiscreenContextListener " 1250 和多屏幕上下文事件才莫塊 "MultiscreenContextEvent"1240,如圖13所示。多屏幕管理器模塊1210管理多屏幕上下文模塊1230,檢索期望的屏幕, 顯示指定哪些裝置被屏幕共享的信息,注冊多屏幕上下文監(jiān)聽器模塊1250, 或者取消多屏幕上下文監(jiān)聽器模塊1250的注冊。多屏幕上下文才莫塊1230是與屏幕對象1220有關(guān)的接口對象,根據(jù)由多 屏幕上下文模塊1230執(zhí)行的接口操作確定屏幕對象1220將成為邏輯屏幕還 是顯示屏幕。圖6中所示的各種屬性(諸如屬性510至570 )可被設(shè)置在多 屏幕上下文模塊1230中。多屏幕上下文模塊1230可提供上面參照圖6所描 述的函lt "Set"、 "Add"、 "Get"和"Remove"。當(dāng)屏幕對象1220的屬性信息被多屏幕上下文模塊1230改變時,多屏幕 上下文事件模塊1240用作通告屏幕對象1220的屬性信息被改變的事件類, 多屏幕上下文監(jiān)聽器模塊1250用作監(jiān)聽器接口對象,該監(jiān)聽器接口對象能夠 在嘗試接收多屏幕上下文事件模塊1240所提示的事件的預(yù)定應(yīng)用程序類中 實現(xiàn)。應(yīng)用程序1260是在應(yīng)用程序?qū)?130上被驅(qū)動的模塊。應(yīng)用程序1260 允許用戶選擇期望的服務(wù)并自由地在顯示屏幕上設(shè)置多個邏輯屏幕。詳細地講,應(yīng)用程序1260向多屏幕管理器^f莫塊1210發(fā)送允許用戶動態(tài) 地配置和管理邏輯屏幕的各種命令,多屏幕管理器模塊1210通過多屏幕上下文模塊1230來控制與將執(zhí)行的各種命令對應(yīng)的操作。多屏幕上下文模塊1230與屏幕對象1220相關(guān),用于管理如圖6所示的 屏幕對象1220的屬性信息。為了管理屏幕對象1220的屬性信息,多屏幕上 下文模塊1230可包括各種函數(shù)或方法。多屏幕管理器模塊1210可從裝置驅(qū)動程序?qū)?110接收各種服務(wù)源所提 供的服務(wù)組分,并執(zhí)行將接收的服務(wù)組分顯示在邏輯屏幕或顯示屏幕上的操 作。此外,應(yīng)用程序使用檢索模塊960來檢索屏幕,稍后將參照圖15對此進 行描述。圖14是示出根據(jù)本發(fā)明示例性實施例的通過圖13所示的模塊將顯示在 各相應(yīng)邏輯屏幕上的多個服務(wù)顯示在顯示屏幕上的方法的流程圖。參照圖14,在操作S1310,多屏幕管理器模塊1210生成顯示屏幕和與將 執(zhí)行的服務(wù)的數(shù)量對應(yīng)的多個邏輯屏幕。在操作S1320,多屏幕管理器模塊1210將邏輯屏幕連接到從裝置驅(qū)動程 序?qū)?110接收的各個相應(yīng)的服務(wù)。多屏幕管理器模塊1210可通過將接收的 服務(wù)的服務(wù)上下文對象設(shè)置為邏輯屏幕服務(wù)的參數(shù),來調(diào)用每一邏輯屏幕的 方法"addServiceContext"。方法"addServiceContext" ^夸邏輯屏幕連4妻到月良 務(wù),并且可由多屏幕上下文模塊1230提供。在操作1330, 一旦邏輯屏幕被連接到各個服務(wù),多屏幕管理器模塊1210 就將邏輯屏幕連接到顯示屏幕。此時,多屏幕管理器^t塊1210可通過將邏輯 屏幕所連接到的顯示屏幕對象設(shè)置為參數(shù)來調(diào)用每一邏輯屏幕的 "setDisplayScreen"方法。方法"setDisplayScreen"將邏輯屏幕連4妄到顯示 屏幕,并且可由多屏幕上下文模塊1230提供。方';去 "setDisplayScreen" 可凈皮i殳置為 "public void setDisplayScreen (HScreen Screen) throws SecurityException, IllegalStateException",該方法允許 被提供作為參數(shù)的實例"HScreen"與當(dāng)前邏輯屏幕相關(guān)。在這種情況下,實 例"HScreen"最好是顯示屏幕。方法"setDisplayScreen(HScreen screen)"的參凄t可包4舌"NULL"值。在 這種情況下,當(dāng)方法"setDisplayScreen(HScreen screen)"在沒有例外處理的 情況下被執(zhí)行時,當(dāng)前邏輯屏幕不再與顯示屏幕相關(guān)??蛇M4亍方法"SecurityException"禾口 "IllegalStateException"的4丸4iM乍為方法"setDisplayScreen(HScreen screen)"的例夕卜4喿作??稍诋?dāng)前屏幕是邏輯屏幕時,或者在與當(dāng)前邏輯屏幕相關(guān)的顯示屏幕的 一部分由于主機平臺的特性而不能改變時,執(zhí)行方法"IllegalStateException"。 在操作S1340,確定顯示屏幕上的邏輯屏幕將分別被映射到的區(qū)域。此 時,可調(diào)用由多屏幕上下文模塊1230提供的預(yù)定方法來確定顯示屏幕上的將 顯示邏輯屏幕的區(qū)域。圖15是示出根據(jù)本發(fā)明示例性實施例的檢索模塊960的操作的示圖,檢 索模塊960執(zhí)行第一至第四檢索處理1510、 1520、 1530和1540。為了執(zhí)行第一檢索處理1510,檢索模塊960可調(diào)用方法 "getScreenConfiguration,,。方法"getScreenConfiguration,,返回用于設(shè)置當(dāng)前 激活的屏幕的類型的實例,而且由類"MultiScreenConfiguration"提供。例 戈口 , 方';去 "getScreenConfiguration " 可 由 才各 式 " pubicMultiScreenConfiguration getScreenConfiguration() throws java.lang.SecurityException,,表示,該方法返回 "MultiScreenConfiguration", "MultiScreenConfiguration"是當(dāng)前激活的屏幕的設(shè)置類型的實例。當(dāng)不允i午調(diào)用方法 "getScreenConfiguration ,, 時,可#L行例夕卜 "SecurityException,,。此外,為了確認屏幕的特定設(shè)置類型,檢索模塊960可調(diào)用方法 "getScreenConfigurationType"。方;去"getScreenConfigurationType"返回當(dāng)前 激活的屏幕的設(shè)置類型,而且由實例"MultiScreenConfiguration"提供。例 i口 ,方'法"getScreenConfigurationType "可 由才各式 " pubicMultiScreenConfiguration getScreenConfiguration() throws java.lang.SecurityException " 表示,并返回 "MultiScreenConfiguration ", "MultiScreenConfiguration"是當(dāng)前激活的屏幕的設(shè)置類型的實例。當(dāng)不允許調(diào)用方法 "getScreenConfiguration " 時,可執(zhí)行例夕卜 "SecurityException,,。此外,為了確認屏幕的特定設(shè)置類型,檢索模塊960可調(diào)用方法 "getScreenConfigurationType "。 在 這種 t青;兄 下, 方;去 "getScreenConfigurationType"返回當(dāng)前激活的屏幕的設(shè)置類型,而且由實例 "MultiScreenConfiguration"提供。才艮才居另一示例,方法"getScreenConfigurationType"可由才各式int getScreenConfigurationType(){return SCREEN—CONFIGURATION—NON—PIP,SCREEN—CONFIGURATION—NON—PIP—WITH—OVERLAY,SCREEN—CONFIGURATION PIP,SCREEN—CONFIGURATION—PIP—WITH—OVERLAY,SCREEN—CONFIGURATION—POP,SCREEN—CONFIGURATION POP_WITH—OVERLAY,SCREEN—CONFIGURATION—GENERAL)表示,該方法返回一個整數(shù)作為當(dāng) 前激活的屏幕的設(shè)置類型,其中,整數(shù)是該方法的數(shù)據(jù)類型。以上格式對應(yīng) 于單屏幕類型、覆蓋屏幕類型、PiP屏幕類型、覆蓋PiP屏幕類型、PoP屏幕 類型、覆蓋PoP屏幕類型和一般屏幕類型。圖16A是示出用于檢索屏幕的設(shè)置類型的代碼和用于檢索當(dāng)前激活的屏 幕的設(shè)置類型是PiP還是PoP的代碼的示圖。當(dāng)所述代碼是 SCREEN—CONFIGURATION—PIP和SCREEN—CONFIGURATION—PIP—WITH —OVERLAY時,檢索模塊960將設(shè)置類型視為PiP類型,當(dāng)所述代碼是 SCREEN—CONFIGURATION POP和SCREEN—CONFIGURATION—POP— WITH—OVERLAY時,檢索模塊960將設(shè)置類型視為PoP類型,否則,檢索 模塊960將設(shè)置類型視為既不是PoP類型也不是PiP類型。為了執(zhí)行第二^f企索處理,檢索模塊960可調(diào)用方法"getScreens"。方法"getScreens"返回裝置中所產(chǎn)生的所有屏幕,數(shù)據(jù)格式是包"org.havi.ui"的 類"Hscreen,,。即,方法"getScreen"返回裝置中所產(chǎn)生的所有Hscreen實例。圖16B是示出用于檢索裝置中所產(chǎn)生的所有屏幕的實例的代碼的示圖, 所述代碼使用檢索到的實例來檢索屏幕的設(shè)置類型。即,提取方法"getScreens"返回的可訪問屏幕的實例"screen",然后順序檢索各屏幕的設(shè) 置類型。為了執(zhí)行第三檢索處理,檢索模塊960調(diào)用方法 "Org.havi.ui.H:Screen.getDefaultHScreen"。方'法"getDefaultHScreen"用于4全索單個屏幕。當(dāng)應(yīng)用程序的缺省屏幕被定義為應(yīng)用程序所屬的屏幕時,應(yīng)用程序使用"getDefaultHScreen" API確認應(yīng)用程序所屬的屏幕。為了檢索映射到邏輯屏幕的顯示屏幕,檢索模塊960可調(diào)用方法 "getDisplayScreen"。方法"getDisplayScreen"返回連4妻到邏輯屏幕的顯示屏幕,數(shù)據(jù)格式是類"HScreen",由接口 "MultiScreenContext,,提供。如果調(diào)用的"HScreen"是顯示屏幕,則方法"getDisplayScreen"返回顯 示屏幕的引用地址。如果調(diào)用的"HScreen,,是邏輯屏幕且該邏輯屏幕連接到 顯示屏幕,則該方法返回顯示屏幕的引用地址。同時,如果調(diào)用的"HScreen,, 是邏輯屏幕但是與顯示屏幕不相關(guān),則方法"getDisplayScreen,,返回"NULL" 值。圖16C是示出用于檢索應(yīng)用程序所屬的屏幕的代碼的示圖,所述代碼在 確定應(yīng)用程序所屬的屏幕是邏輯屏幕還是顯示屏幕之后^f企索顯示屏幕。4吏用方法"getDefaultHscreen,, 4是耳又擊夾省屏幕"screen",擊夾省屏幕"screen" 被應(yīng)用于方法"getScreenType",從而確認屏幕是邏輯屏幕還是顯示屏幕。隨 后,方法"getDisplayScreen"基于該結(jié)果返回顯示屏幕。為了執(zhí)行第四4企索處理,檢索模塊960調(diào)用方法"getScreenType"、方法 "getDisplayArea,,、 方法 "getZOrder,, 和方法 "getServiceContext"。 方法 "getScreenType"檢索屏幕是邏輯屏幕還是顯示屏幕,數(shù)據(jù)格式是整數(shù),并 返回值"SCREEN—TYPE—DISPLAY"或"SCREEN—TYPE—LOGICAL"。值"SCREEN—TYPE_DISPL.AY,,表示顯示屏幕。當(dāng)"HScreen"連接到 "VideoOutputPort"并映射到"VideoOutputPort"所產(chǎn)生的視頻光柵時, "HScreen"的格式變?yōu)?SCREEN—TYPE—DISPLAY"。在這種情況下, "HScreen"被稱為顯示"HScreen"。此外,值"SCREEN—TYPE—LOGICAL"表示邏輯屏幕。當(dāng)"HScreen" 沒有連4妻到"VideoOutputPort"并映射到"VideoOutputPort"所產(chǎn)生的一見頻光 柵的子區(qū)域時,"HScreen"的格式變?yōu)?SCREEN—TYPE—LOGICAL"。在這 種情況下,"HScreen" -故稱為邏輯"HScreen"。邏輯"HScreen"可以連接到顯示"HScreen"。當(dāng)邏輯"HScreen"沒有 連才妄到顯示"HScreen"日于,連接到邏輯"HScreen"的"ServiceContext"不 能產(chǎn)生可視和可聽服務(wù)。圖16D是示出用于檢索應(yīng)用程序所屬的屏幕的類型的代碼的示圖,所述 代碼使用方法"getScreenType"檢索屏幕是邏輯屏幕還是顯示屏幕。為了檢索設(shè)置在顯示屏幕上的應(yīng)用程序的坐標和z次序,可調(diào)用方法 "getDisplayArea,,和"getZOrder',。方法"getDisplayArea"返回映射到顯示屏幕的邏輯屏幕的坐標,數(shù)據(jù)類型是類"'org.havi.ui.HScreenRectangle"。方法"getDisplayArea,,返回"HScreen" 的extend。如果"HScreen"的類型是"SCREEN—TYPE—DISPLAY",則所述 方法返回"HScreenRectangle(O, 0, 1, 1)"。如果"HScreen ,,的類型是 "SCREEN—TYPE—LOGICAL"且"HScreen"連接到輸出"HScreen",則所 述方法返回分配給邏輯"HScreen"的區(qū)域。此外,如果"HScreen"的類型 是"SCREEN—TYPE—LOGICAL"且"HScreen"沒有連接到輸出"HScreen", 則所述方法返回"NULL"值。圖16E是示出用于檢索顯示屏幕上的位置和應(yīng)用程序所屬的邏輯屏幕的 大小的代碼的示圖,所述代碼使用方法"getDisplayArea"檢索所述位置和屏 幕的大小。方法"getDisplayArea"返回映射到顯示屏幕的邏輯屏幕的z-order,數(shù)據(jù) 類型是整tt。如果"HScreen"是顯示"HScreen",則方法"getZOrder"返回 值為0的"z-order"。如果"HScreen"是邏輯"HScreen",則方法"getZOrdcr" 返回4直為1或更大的"z-order"。為了4企索與屏幕有關(guān)的服務(wù)上下文,可調(diào)用方法"getServiceContext"。方法"getServiceContext"返回連接到"HScreen"的一組服務(wù)上下文, 數(shù)據(jù)格式是類"java.tv.service.selection.ServiceContext"。圖16F是示出用于檢索應(yīng)用程序所屬的屏幕的服務(wù)上下文的代碼的示 圖,所述代碼4吏用方法"getServiceContext"檢索屏幕的服務(wù)上下文。圖17是示出根據(jù)本發(fā)明示例性實施例的通過圖3所示的模塊交換顯示在 邏輯屏幕上的服務(wù)的過程的流程圖。在操作S1410,多屏幕管理器模塊1210臨時終止將在兩個邏輯屏幕之間 交換的服務(wù)。之后,在操作S1420,在兩個邏輯屏幕之間交換關(guān)于所述服務(wù)的信息。 此時,對兩個邏輯屏幕中的每個調(diào)用方法"removeServiceContext"和方法"addServiceContext",從而在兩個邏輯屏幕之間交換設(shè)置在兩個邏輯屏幕中 的服務(wù)上下文。方法"removeContext,,去除連接到邏輯屏幕的服務(wù)上下文, 方法"addServiceContext,,將新的服務(wù)上下文添加到邏輯屏幕。方法"removeServiceContext,,和方法"addServiceContext"可由多屏幕上下文才莫 塊,1230提供。根據(jù)本發(fā)明當(dāng)前示例性實施例,在邏輯服務(wù)之間交換關(guān)于連接 到邏輯服務(wù)的服務(wù)的服務(wù)信息,從而獲得交換主屏幕和子屏幕的效果。此外,根據(jù)本發(fā)明當(dāng)前示例性實施例,即使在顯示屏幕上執(zhí)行三個或更多個服務(wù)時, 也可以在任意數(shù)量的邏輯屏幕之間交換所述服務(wù)。在操作S1430,產(chǎn)生服務(wù)和兩個邏輯屏幕之間的連接已經(jīng)改變的事件。之后,在操作S1440,多屏幕上下文事件模塊1240將所述事件發(fā)送給多屏幕 上下文監(jiān)聽器模塊1250,新連接到兩個邏輯屏幕的服務(wù)開始執(zhí)行。產(chǎn)業(yè)上的可利用性根據(jù)本發(fā)明,可以通過^r索系統(tǒng)中屏幕的類型和屏幕之間的連接關(guān)系在 物理顯示裝置上動態(tài)地配置提供多個內(nèi)容的多個服務(wù)。盡管已參照本發(fā)明的示例性實施例具體地示出和描述了本發(fā)明,但是本 領(lǐng)域普通技術(shù)人員應(yīng)該理解,在不脫離由權(quán)利要求限定的本發(fā)明的精神和范 圍的情況下,可進行各種形成和細節(jié)上的改變。因此,應(yīng)該理解,提供上述 示例性實施例僅是處于描述性目的,而不應(yīng)被理解為對本發(fā)明的范圍的限制。
權(quán)利要求
1、一種用于提供多屏幕的設(shè)備,該設(shè)備包括操作模塊,產(chǎn)生用于顯示接收的服務(wù)的至少一個屏幕;檢索模塊,在所述屏幕中檢索包括在所述服務(wù)中的應(yīng)用程序在其上執(zhí)行的屏幕。
2、 如權(quán)利要求l所述的設(shè)備,其中,所述屏幕包括畫中畫屏幕。
3、 如權(quán)利要求l所述的設(shè)備,其中,所述屏幕包括畫上畫屏幕。
4、 如權(quán)利要求1所述的設(shè)備,其中,檢索模塊檢索應(yīng)用程序在其上執(zhí)行 的屏幕的設(shè)置類型。
5、 如權(quán)利要求4所述的設(shè)備,其中,所述設(shè)置類型包括以下設(shè)置類型中 的至少一個單屏幕類型,應(yīng)用程序在其上執(zhí)行的屏幕對應(yīng)于顯示屏幕;覆 蓋屏幕類型,單個屏幕與至少一個覆蓋屏幕共存;畫中畫(PiP)屏幕類型, 應(yīng)用程序在其上執(zhí)行的屏幕對應(yīng)于映射到顯示屏幕的整個區(qū)域的邏輯屏幕和 映射到顯示屏幕的至少一個非覆蓋邏輯屏幕,但不對應(yīng)于覆蓋屏幕;覆蓋PiP 屏幕類型,PiP屏幕與至少一個覆蓋屏幕共存;畫上畫(PoP)屏幕類型,應(yīng) 用程序在其上執(zhí)行的屏幕對應(yīng)于映射到顯示屏幕的整個區(qū)域的至少兩個非覆 蓋邏輯屏幕的組合,但不對應(yīng)于覆蓋屏幕;覆蓋PoP屏幕類型,PoP屏幕與 至少一個覆蓋屏幕共存; 一般屏幕類型。
6、 如權(quán)利要求l所述的設(shè)備,其中,操作模塊將應(yīng)用程序在其上執(zhí)行的 邏輯屏幕映射到顯示屏幕。
7、 如權(quán)利要求l所述的設(shè)備,其中,操作模塊在顯示屏幕上執(zhí)行應(yīng)用程序。
8、 一種用于提供多屏幕的設(shè)備,該設(shè)備包括操作模塊,產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕和邏輯屏幕映射到的顯 示屏幕;檢索模塊,檢索所有邏輯屏幕和顯示屏幕。
9、 如權(quán)利要求8所述的設(shè)備,其中,檢索模塊僅檢索包括在服務(wù)中的應(yīng) 用程序的權(quán)限范圍內(nèi)的邏輯屏幕和顯示屏幕。
10、 如權(quán)利要求8所述的設(shè)備,其中,邏輯屏幕包括畫中畫屏幕。
11、 如權(quán)利要求8所述的設(shè)備,其中,邏輯屏幕包括畫上畫屏幕。
12、 一種用于提供多屏幕的設(shè)備,該設(shè)備包括操作模塊,產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕和邏輯屏幕映射到的顯 示屏幕;檢索模塊,檢索邏輯屏幕和顯示屏幕。
13、 如權(quán)利要求12所述的設(shè)備,其中,邏輯屏幕之一包括畫中畫屏幕。
14、 如權(quán)利要求12所述的設(shè)備,其中,邏輯屏幕之一包括畫上畫屏幕。
15、 一種用于提供多屏幕的設(shè)備,該設(shè)備包括 廣播信號接收模塊,接收服務(wù);操作模塊,產(chǎn)生邏輯屏幕和邏輯屏幕映射到的顯示屏幕; 檢索模塊,檢索顯示服務(wù)的屏幕是邏輯屏幕還是顯示屏幕。
16、 如權(quán)利要求15所述的設(shè)備,其中,如果顯示服務(wù)的屏幕是邏輯屏幕, 則操作模塊檢索顯示屏幕上的位置、該邏輯屏幕的大小以及該邏輯屏幕與顯 示屏幕上的另 一邏輯屏幕之間的覆蓋關(guān)系。
17、 如權(quán)利要求15所述的設(shè)備,其中,操作模塊檢索顯示服務(wù)的屏幕的 服務(wù)上下文。
18、 一種動態(tài)地配置多屏幕的方法,該方法包括 產(chǎn)生用于顯示接收的服務(wù)的至少一個屏幕;
19、 如權(quán)利要求18所述的方法,其中,所述屏幕包括畫中畫屏幕。
20、 如權(quán)利要求18所述的方法,其中,所述屏幕包括畫上畫屏幕。
21、 如權(quán)利要求18所述的方法,其中,檢索屏幕的步驟包括檢索應(yīng)用程 序在其上執(zhí)行的屏幕的設(shè)置類型。
22、 如權(quán)利要求21所述的方法,其中,所述設(shè)置類型包括以下設(shè)置類型 中的至少一個單屏幕類型,應(yīng)用程序在其上執(zhí)行的屏幕對應(yīng)于顯示屏幕; 覆蓋屏幕類型,單個屏幕與至少一個覆蓋屏幕共存;畫中畫(PiP)屏幕類型, 應(yīng)用程序在其上執(zhí)行的屏幕對應(yīng)于映射到顯示屏幕的整個區(qū)域的邏輯屏幕和 映射到顯示屏幕的至少一個非覆蓋邏輯屏幕,但不對應(yīng)于覆蓋屏幕;覆蓋PiP 屏幕類型,PiP屏幕與至少一個覆蓋屏幕共存;畫上畫(PoP)屏幕類型,應(yīng) 用程序在其上執(zhí)行的屏幕對應(yīng)于映射到顯示屏幕的整個區(qū)域的至少兩個非覆 蓋邏輯屏幕的組合,但不對應(yīng)于覆蓋屏幕;覆蓋PoP屏幕類型,PoP屏幕與 至少一個覆蓋屏幕共存; 一般屏幕類型。
23、 如權(quán)利要求18所述的方法,還包括將應(yīng)用程序在其上執(zhí)行的邏輯 屏幕映射到顯示屏幕。
24、 如權(quán)利要求18所述的方法,還包括在顯示屏幕上執(zhí)行應(yīng)用程序。
25、 一種動態(tài)地配置多屏幕的方法,該方法包括 產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕; 產(chǎn)生邏輯屏幕映射到的顯示屏幕; 檢索所有邏輯屏幕和顯示屏幕。
26、 如權(quán)利要求25所述的方法,其中,所述檢索包括僅檢索包括在服 務(wù)中的應(yīng)用程序的權(quán)限范圍內(nèi)的邏輯屏幕和顯示屏幕。
27、 如權(quán)利要求25所述的方法,其中,邏輯屏幕之一包括畫中畫屏幕。
28、 如權(quán)利要求25所述的方法,其中,邏輯屏幕之一包括畫上畫屏幕。
29、 一種動態(tài)地配置多屏幕的方法,該方法包括 產(chǎn)生用于顯示接收的服務(wù)的邏輯屏幕; 產(chǎn)生邏輯屏幕映射到的顯示屏幕; 檢索邏輯屏幕和顯示屏幕。
30、 如權(quán)利要求29所述的方法,其中,邏輯屏幕之一包括畫中畫屏幕。
31、 如權(quán)利要求29所述的方法,其中,邏輯屏幕之一包括畫上畫屏幕。
32、 一種動態(tài)地配置多屏幕的方法,該方法包括 接收服務(wù);產(chǎn)生邏輯屏幕;產(chǎn)生邏輯屏幕映射到的顯示屏幕; 檢索顯示服務(wù)的屏幕是邏輯屏幕還是顯示屏幕。
33、 如權(quán)利要求32所述的方法,其中,所述檢索包括如果顯示服務(wù)的 屏幕是邏輯屏幕,則^f企索顯示屏幕上的位置、該邏輯屏幕的大小以及該邏輯 屏幕與顯示屏幕上的另 一邏輯屏幕之間的覆蓋關(guān)系。
34、 如權(quán)利要求32所述的方法,其中,所述檢索包括檢索顯示服務(wù)的 屏幕的服務(wù)上下文。
全文摘要
提供了一種提供多屏幕的設(shè)備和動態(tài)地配置多屏幕的方法。所述用于提供多屏幕的設(shè)備檢索裝置中屏幕的類型和屏幕之間的連接關(guān)系,以在物理顯示裝置上動態(tài)地配置提供多個服務(wù)的多屏幕。所述用于提供多屏幕的設(shè)備包括操作模塊,產(chǎn)生用于顯示接收的服務(wù)的至少一個屏幕;檢索模塊,在所述屏幕中檢索包括在所述服務(wù)中的應(yīng)用程序在其上執(zhí)行的屏幕。
文檔編號H04N5/44GK101238717SQ200680028655
公開日2008年8月6日 申請日期2006年8月4日 優(yōu)先權(quán)日2005年8月5日
發(fā)明者李光基, 李鐘昊, 格倫·A·亞當(dāng)斯, 鄭云教 申請人:三星電子株式會社