定位設(shè)備
背景技術(shù):常規(guī)設(shè)置中的用戶終端(例如個人計算機)具有單個屏幕。近來,使用兩個或更多個屏幕來顯示單個圖像已經(jīng)變得更普遍。圖1a中示出了一種示例性配置。在圖1a中,用戶終端10具有主屏幕12和輔助屏幕14。當使用兩個或更多個屏幕時,用戶終端10的用戶能夠配置兩個顯示器來示出跨這兩個屏幕延伸的連續(xù)的桌面圖像。由蘋果公司開發(fā)的Macintosh計算機正是可以以這種方式配置的用戶終端的一個例子。操作系統(tǒng)MacOSX使得Macintosh計算機的用戶能夠手動地在控制面板中安排多個屏幕。這將現(xiàn)在參考圖1b來描述。圖1b圖示了用戶能夠通過適當?shù)牟藛芜x擇來訪問的控制面板100。控制面板100允許用戶配置由塊102代表的第一屏幕和由塊104代表的第二屏幕。如圖1b所示,當配置這兩個屏幕時,Macintosh計算機的MacOSX操作系統(tǒng)假定這兩個屏幕被定位在同一平面中、彼此相鄰以便它們構(gòu)成連續(xù)的表面以及其直邊中的兩個垂直對齊,并且操作系統(tǒng)基于這些假定來控制信息在兩個屏幕上的顯示。然而,通常的情況是,兩個屏幕將不具有這種特定的安排,以及因此操作系統(tǒng)將以不是針對屏幕的特定定向和位置所定制的方式在屏幕上顯示內(nèi)容,這因而干擾針對觀看者的圖像。
技術(shù)實現(xiàn)要素:本發(fā)明內(nèi)容被提供來以簡化的形式介紹概念的選擇,這些概念將在下面的具體實施方式中進一步描述。本發(fā)明內(nèi)容不旨在識別要求保護的主題的關(guān)鍵特征或必要特征,也不旨在被用來限制要求保護的主題的范圍。各種實施例提供了用戶終端上的應(yīng)用編程接口(API),以便在用戶終端處執(zhí)行的軟件應(yīng)用知道連接到用戶終端的一個或多個設(shè)備的位置以用于處理與所述一個或多個設(shè)備有關(guān)的數(shù)據(jù)。在一個或多個實施例中,在用戶終端上的處理器上執(zhí)行的操作系統(tǒng)被安排成接收連接到用戶終端的一個或多個設(shè)備的位置信息。在用戶終端處執(zhí)行的軟件應(yīng)用通過向操作系統(tǒng)發(fā)送查詢來獲得位置信息。API處理從軟件應(yīng)用發(fā)送至操作系統(tǒng)的查詢,以便其向軟件應(yīng)用提供所請求的位置信息。在各種實施例中,位置信息能夠被許多不同應(yīng)用中的軟件應(yīng)用使用,如在下文中更充分地指明的那樣。附圖說明為了更好地理解所描述的實施例并且為了示出如何實施它們,現(xiàn)在將通過例子參考以下附圖,其中:圖1a示出了計算機配置;圖1b示出了用于配置多個計算機屏幕的控制面板;圖2示出了用戶終端的示意圖;圖3示出了用于處理數(shù)據(jù)的過程的流程圖。具體實施方式現(xiàn)在參考圖2,其圖示了根據(jù)一個或多個實施例的用戶終端200。用戶終端可以例如是移動電話、個人數(shù)字助理(“PDA”)、個人計算機(“PC”)(包括例如Windows?、MacOS?和Linux?PCs)、平板計算機、游戲設(shè)備、電視或其它嵌入式設(shè)備。用戶終端200包括CPU202,諸如屏幕的顯示器218連接到所述CPU202。應(yīng)當認識到,塊218可以代表連接到CPU202的多個屏幕。適當?shù)挠脩糨斎脒x擇可以通過用戶終端200的用戶觸摸一個或多個屏幕來接收。CPU202可以連接到其它輸入設(shè)備,諸如鍵盤206和諸如鼠標208的指向設(shè)備。揚聲器220、麥克風212和攝像頭216(通常稱作為網(wǎng)絡(luò)攝像頭或Webcam)也連接到CPU202。應(yīng)當認識到,麥克風塊212可以代表多個麥克風,攝像頭塊216可以代表多個攝像頭,顯示器塊218可以代表多個顯示器,以及揚聲器塊212可以代表多個揚聲器。還應(yīng)當認識到,麥克風212、攝像頭216和揚聲器220中的一個或多個可以被集成到顯示器218中,或替換地作為連接到用戶終端200的外部設(shè)備。CPU108也可以連接到網(wǎng)絡(luò)接口204以用于與網(wǎng)絡(luò)(未示出)通信。圖2還圖示了在CPU202上執(zhí)行的操作系統(tǒng)(“OS”)230。OS230被安排成接收麥克風212、攝像頭216或揚聲器220中的至少一個的位置信息。當顯示器塊218包括主顯示器和輔助顯示器時,OS230也被安排成接收輔助顯示器的位置信息。麥克風212、攝像頭216、揚聲器220和輔助顯示器將在下文中稱作輔助設(shè)備。術(shù)語“輔助設(shè)備”在這里被用來表示連接到CPU的、與CPU交換數(shù)據(jù)的物理設(shè)備。輔助設(shè)備可以經(jīng)由有線或無線連接而連接到用戶終端。為了清楚,位置信息定義在用戶終端200的空間領(lǐng)域中的輔助設(shè)備相對于所述用戶終端的物理位置。OS230還被安排成接收輔助設(shè)備中的一個或多個的定向信息和物理尺寸信息。CPU202還連接到定位模塊210,其被配置成確定所述設(shè)備中的一個或多個的位置信息,定位模塊210的操作將在后文中進一步詳細地描述。如圖2所示,OS230上方運行的是軟件應(yīng)用234和物理位置應(yīng)用編程用戶接口API232。用戶終端200還包括耦合到處理器202的存儲器214,諸如電可擦除可編程存儲器(EEPROM或“閃速”存儲器)。所述存儲器被安排成存儲代碼,所述代碼被安排成在處理器202上執(zhí)行以實施軟件應(yīng)用234。所述代碼234可以使用如現(xiàn)有技術(shù)中已知的計算機可讀介質(zhì)而被載入存儲器214。替換地,被安排成在處理器202上執(zhí)行來實施軟件應(yīng)用234的代碼可以作為運行于網(wǎng)頁中的Flash或JavaScript而被臨時下載。在一個實施例中,所述代碼是通信代碼,其被安排成在處理器202上執(zhí)行并且被配置成當被執(zhí)行時參與使用網(wǎng)絡(luò)接口204在網(wǎng)絡(luò)上進行的通信。所述通信代碼優(yōu)選地包括用于執(zhí)行與其它用戶終端的通信(諸如語音或視頻呼叫)的通信客戶端應(yīng)用。這些通信可以在基于分組的網(wǎng)絡(luò)上使用網(wǎng)絡(luò)接口204來實施,所述網(wǎng)絡(luò)例如是互聯(lián)網(wǎng)和/或移動蜂窩網(wǎng)和/或諸如公用電話交換網(wǎng)(PSTN)的電路交換網(wǎng)。除了語音和視頻通信之外,客戶端還可以建立針對其它通信媒體的連接,諸如即時消息傳送(“IM”)、SMS消息傳送、文件傳輸和語音信箱。在另一個實施例中,代碼包括沒有被配置成參與網(wǎng)絡(luò)上的通信的獨立的圖像捕獲應(yīng)用。替換地,圖像捕獲代碼能夠構(gòu)成通信客戶端應(yīng)用的一部分。物理位置用戶接口API232提供了操作系統(tǒng)230與軟件應(yīng)用234的用戶接口組件236之間的接口。物理位置用戶接口API232被安排成處理從軟件應(yīng)用234發(fā)送到操作系統(tǒng)230的查詢,以便其能夠?qū)⑴c用戶終端關(guān)聯(lián)的輔助設(shè)備的位置信息提供給軟件應(yīng)用234以用于在所述軟件應(yīng)用處理與所述設(shè)備有關(guān)的數(shù)據(jù)時使用。在一些情況下,同一個API也可以報告用戶終端200的一個或多個用戶的位置(例如在Kinect或其它設(shè)備已經(jīng)收集了所述信息的條件下)。參考圖3,現(xiàn)在將描述使用位置信息定位輔助設(shè)備和處理數(shù)據(jù)的方法。在步驟301,OS230接收與用戶終端200關(guān)聯(lián)的一個或多個輔助設(shè)備的位置信息。所述位置信息可以用公制單位(例如厘米)或英制單位(例如英尺)來表示,并且相對于用戶終端200的諸如主顯示器的固定部分被表示。OS230可以以若干方式接收位置信息。在一種方法中,定位模塊210被配置成確定輔助設(shè)備中的一個或多個的位置并且將這個位置信息提供給操作系統(tǒng)230。定位模塊210可以實施各種各樣的不同的方法之一來確定輔助設(shè)備的位置。這些方法包括使用聲吶、雷達、近場無線電、紅外信號或全球定位系統(tǒng)技術(shù)(GPS)。在這個場景中,輔助設(shè)備被安排成將位置信息傳送至用戶終端200。從輔助設(shè)備傳送至用戶終端200的消息可以包括標識符,因此用戶終端200能夠確定是哪個輔助設(shè)備正在報告其位置。所述消息可以使用有線或無線連接從輔助設(shè)備被傳送到用戶終端200。這樣類型的連接是現(xiàn)有技術(shù)中公知的,并且不在這里詳細描述。在另一種方法中,輔助設(shè)備可以用作傳感器來確定另一個輔助設(shè)備的位置。攝像頭216是可以被用來確定另一個輔助設(shè)備的位置的一個示例性傳感器。攝像頭216可以被安排成檢測輔助設(shè)備的視覺簽名。例如,攝像頭216可以被安排成檢測輔助設(shè)備的燈或輔助顯示器的屏幕的光學輸出。在這個例子中,OS230可以在輔助設(shè)備的光學輸出上呈現(xiàn)圖像或其它變化,并且然后分析攝像頭圖像以便找到期望的顯示器圖案。在另一個例子中,攝像頭216可以被安排成檢測輔助設(shè)備上的特定的可識別標記。所述可識別標記可以包括任何機器可識別的圖形,諸如線性條碼或二維條碼(即QR碼)。可以使用多個攝像頭來提高準確度或覆蓋更大的區(qū)域。圖像分析也可以揭示輔助設(shè)備的定向。麥克風(216)是可以被用來確定另一個輔助設(shè)備的位置的另一個示例性傳感器。在一個例子中,OS230可以在揚聲器220上或若揚聲器被集成到輔助顯示器中則在輔助顯示器上呈現(xiàn)可識別的聲音,并且使用麥克風216來搜索這些可識別的聲音。OS230可以被配置成動態(tài)地收集輔助設(shè)備的位置信息。這允許OS230即使在輔助設(shè)備的位置改變的情況下也具有準確的位置信息。在又另一種方法中,用戶控制面板可以被顯示在顯示器218上并且被用戶終端200的用戶用來手動地向OS230通知輔助設(shè)備的位置。用戶控制面板也可以被用戶終端200的用戶用來手動地向OS230通知輔助設(shè)備的物理尺寸和定向。所述手動輸入的信息可以被標記有指示符,所述指示符向OS230通知信息從用戶輸入獲取到并且不一定是準確的。在麥克風212、攝像頭216和揚聲器220中的一個或多個被集成到顯示器218的情況下,OS230能夠檢索輔助設(shè)備的固定位置、物理尺寸和定向信息,其是從顯示器的制造中產(chǎn)生的。僅作為例子,用戶終端200可以是具有特定尺寸的屏幕的膝上型計算機,攝像頭216位于屏幕的頂部邊緣之上1/4處并居中。這個固定位置信息可以被存儲在存儲器214中以用于由操作系統(tǒng)訪問。因此可以看出,在步驟301,除了位置信息之外,OS230也可以接收輔助設(shè)備的物理尺寸和定向信息。例如,OS230可以接收主顯示器的物理尺寸信息,以及在連接的情況下可以接收輔助顯示器的物理尺寸信息。如位置信息那樣,物理尺寸信息可以以公制或英制單位來表示。在步驟303,OS230接收從軟件應(yīng)用234發(fā)送的位置查詢。所述查詢是針對位置信息和就輔助設(shè)備而言可能是已知的任何其它信息的請求,所述其它信息諸如其物理尺寸、定向和設(shè)備的模式。在步驟305,軟件應(yīng)用用戶接口API232處理從軟件應(yīng)用234發(fā)送至OS230的查詢,以便其向軟件應(yīng)用234提供與用戶終端關(guān)聯(lián)的輔助設(shè)備的所請求信息。在步驟307,軟件應(yīng)用234使用所請求的信息來處理與輔助設(shè)備有關(guān)的數(shù)據(jù)。各種實施例具有若干不同的應(yīng)用?,F(xiàn)在將參考以下例子來描述軟件應(yīng)用234可以如何使用在步驟305中請求的信息來處理與輔助設(shè)備有關(guān)的數(shù)據(jù)。在一個例子中,軟件應(yīng)用可以顯示帶有消息的指向輔助設(shè)備的箭頭。例如,如果輔助設(shè)備是麥克風212,則軟件應(yīng)用可以顯示帶有消息“在麥克風中說話”的指向麥克風的箭頭,以及如果輔助設(shè)備是攝像頭216,則軟件應(yīng)用可以顯示帶有消息“對著攝像頭微笑!”的指向攝像頭的箭頭。如果輔助設(shè)備是攝像頭216,則通過提供攝像頭位置給軟件應(yīng)用234,所述軟件應(yīng)用234對于針對各種各樣的目的使用所述位置信息是可用的,這改進了圖像捕獲效用。例如,在多攝像頭應(yīng)用中,軟件應(yīng)用234可以使用位置信息來提供針對連接到用戶終端200的輔助設(shè)備的名稱,即像“左攝像頭”、“右攝像頭”和“頂部攝像頭”這樣的缺省值。使用定向數(shù)據(jù),軟件應(yīng)用234能夠告知用戶攝像頭目前遠離用戶終端200而指向。在另一個例子中,如果輔助設(shè)備是攝像頭216,則軟件應(yīng)用可以被安排成捕獲圖像數(shù)據(jù)和在顯示器218上顯示預(yù)覽圖像。知道攝像頭216的位置允許軟件應(yīng)用234在顯示器218上接近于攝像頭216的位置中顯示預(yù)覽圖像。例如,如果攝像頭216被定位在顯示器218的一側(cè)并且被定向成捕獲用戶終端200的用戶的圖像數(shù)據(jù),則預(yù)覽圖像能夠被呈現(xiàn)在顯示器218的一側(cè)(接近于攝像頭),以使得所述預(yù)覽圖像被顯示在顯示器218上接近于當攝像頭捕獲針對預(yù)覽圖像的圖像數(shù)據(jù)時用戶正看向的位置。也就是說,顯示器218上顯示的預(yù)覽圖像的位置取決于攝像頭216的位置信息。在另一個例子中,輔助設(shè)備是外部連接到用戶終端200的揚聲器220。知道揚聲器的位置允許軟件應(yīng)用234改變從揚聲器輸出的音頻的音量和/或平衡。也就是說,軟件應(yīng)用可以根據(jù)用戶終端處的參考位置(referencelocation)與揚聲器之間的距離來增大或減小從揚聲器輸出的音頻的音量。這使得從揚聲器輸出的音頻能在某一音量上,以便音頻信息被用戶終端的用戶容易地聽到。這防止了當揚聲器被移至用戶環(huán)境中的不同位置時,用戶不得不手動改變針對揚聲器的音頻設(shè)置。在另一個例子中,輔助設(shè)備是外部連接到用戶終端200的麥克風212。知道麥克風的位置允許軟件應(yīng)用234改變麥克風的輸入音量。也就是說,軟件應(yīng)用可以根據(jù)用戶終端處的參考位置與麥克風之間的距離來增大或減小麥克風的輸入音量。也就是說,麥克風被放置成距參考位置越遠,麥克風的輸入音量可以被增大以改進麥克風捕獲輸入音頻數(shù)據(jù)的能力。這防止了當麥克風被移至用戶環(huán)境中的不同位置時,用戶不得不手動改變針對麥克風的音頻設(shè)置。在另一個例子中,輔助設(shè)備是除主顯示器之外連接到用戶終端200的輔助顯示器。知道輔助顯示器的位置允許軟件應(yīng)用234呈現(xiàn)跨所述兩個顯示器延伸的有用的全景視圖,其比假定的連續(xù)平面布置上的視圖更準確。也就是說,OS230在顯示器上顯示針對主和輔助顯示器的特定位置定制的內(nèi)容。例如,在飛行器模擬中,所述視圖能夠如穿過兩個屏幕“駕駛艙窗口”一樣被呈現(xiàn)。在這個例子中,如果主和輔助顯示器彼此間相距某一距離,則軟件應(yīng)用234不產(chǎn)生直接地鄰近的視圖,而代替地產(chǎn)生適合于“窗口”的位置的視圖。在另一個例子中,如果輔助設(shè)備是除主顯示器之外連接到用戶終端200的輔助顯示器,則知道輔助顯示器的實際位置允許軟件應(yīng)用234在輔助顯示器上顯示信息以增強用戶的體驗。例如,如果軟件應(yīng)用234確定輔助顯示器離用戶的距離比主顯示器要遠,則軟件應(yīng)用234可以增大在輔助顯示器上顯示的文本的尺寸(即字體)或圖像的尺寸。這使得在輔助顯示器上顯示的信息能夠被調(diào)整大小以便所述信息可被用戶終端的用戶容易地看到。這防止了當顯示器被移至用戶環(huán)境中的不同位置時,用戶不得不手動改變輔助顯示器的顯示設(shè)置。應(yīng)當認識到,當主顯示器連接到一個以上的附加顯示器時,位置信息可以包括這些附加顯示器的位置信息。盡管已經(jīng)具體地示出和描述了各種實施例,但是本領(lǐng)域技術(shù)人員應(yīng)當理解,可以在不背離要求保護的主題的范圍的情況下做出形式和細節(jié)上的各種改變。根據(jù)一個實施例,提供了一種定位與用戶終端關(guān)聯(lián)的輔助設(shè)備的方法,所述方法包括:在所述用戶終端的接口處接收與所述用戶終端關(guān)聯(lián)的一個或多個輔助設(shè)備的位置信息,所述位置信息定義所述輔助設(shè)備相對于所述用戶終端處的參考位置的物理空間位置;在所述用戶終端處執(zhí)行軟件應(yīng)用,所述應(yīng)用能夠利用所述參考位置并且被配置成處理與所述輔助設(shè)備有關(guān)的數(shù)據(jù);以及向所述軟件應(yīng)用提供所述位置信息,所述軟件應(yīng)用被配置成使用所述位置信息來處理所述數(shù)據(jù)。在一個或多個實施例中,所述接口是安裝在用戶終端處的軟件應(yīng)用編程接口。所述應(yīng)用編程接口被安裝在用戶終端處的操作系統(tǒng)上,所述應(yīng)用編程接口被安排成響應(yīng)于發(fā)送自所述軟件應(yīng)用的查詢而向所述軟件應(yīng)用提供所述位置信息。所述方法還可以包括在所述用戶終端處確定所述位置信息并且提供所述位置信息給所述接口,其中,確定所述位置信息的步驟包括:使用定位模塊;或在所述用戶終端處分析由一個或多個攝像頭捕獲的與所述輔助設(shè)備有關(guān)的數(shù)據(jù);或在所述用戶終端處分析由一個或多個麥克風捕獲的與所述輔助設(shè)備有關(guān)的數(shù)據(jù)。所述方法還可以包括在所述用戶終端處接收用戶輸入的位置信息并且將所述位置信息提供給所述接口。如果所述輔助設(shè)備被集成到所述用戶終端中,則所述方法可以包括在所述用戶終端處自動地確定所述位置信息并且將所述位置信息提供給所述接口。在一個或多個實施例中,與所述輔助設(shè)備有關(guān)的數(shù)據(jù)包括以下數(shù)據(jù)之一:由與用戶終端關(guān)聯(lián)的攝像頭捕獲的圖像數(shù)據(jù);由與用戶終端關(guān)聯(lián)的麥克風捕獲的音頻數(shù)據(jù);從與用戶終端關(guān)聯(lián)的揚聲器輸出的音頻數(shù)據(jù);以及向與用戶終端關(guān)聯(lián)的輔助顯示器生成的圖像數(shù)據(jù)。所述軟件應(yīng)用可以生成在用戶終端的顯示器上的指示,其識別輔助設(shè)備的位置。在一個例子中,如果與輔助設(shè)備有關(guān)的數(shù)據(jù)是由與用戶終端關(guān)聯(lián)的攝像頭捕獲的圖像數(shù)據(jù),則軟件應(yīng)用可以被配置成使用位置信息來處理所述數(shù)據(jù)以便在用戶終端的顯示器上接近于攝像頭的位置處顯示所述圖像數(shù)據(jù)。在一個例子中,如果與輔助設(shè)備有關(guān)的數(shù)據(jù)是從與用戶終端關(guān)聯(lián)的揚聲器輸出的音頻數(shù)據(jù),則軟件應(yīng)用可以被配置成使用位置信息來處理所述數(shù)據(jù)以便基于所述位置信息控制音頻數(shù)據(jù)的音量。在一個例子中,如果與輔助設(shè)備有關(guān)的數(shù)據(jù)是向與用戶終端關(guān)聯(lián)的輔助顯示器生成的圖像數(shù)據(jù),則軟件應(yīng)用可以被配置成使用位置信息來處理所述數(shù)據(jù)以便基于所述位置信息控制在輔助顯示器上顯示的文本的尺寸。所述方法還可以包括在所述用戶終端的接口處接收所述輔助設(shè)備的定向信息,并且將所述定向信息提供給所述軟件應(yīng)用,所述軟件應(yīng)用被配置成使用所述定向信息處理所述數(shù)據(jù)。根據(jù)另一個實施例,提供了一種與輔助設(shè)備關(guān)聯(lián)的用戶終端,所述用戶終端包括:接口,其被配置成接收與所述用戶終端關(guān)聯(lián)的一個或多個輔助設(shè)備的位置信息,所述位置信息定義所述輔助設(shè)備相對于所述用戶終端處的參考位置的物理空間位置;和處理器,其用于執(zhí)行軟件應(yīng)用,所述應(yīng)用能夠利用所述參考位置并且被配置成處理與所述輔助設(shè)備有關(guān)的數(shù)據(jù),其中所述接口向所述軟件應(yīng)用提供所述位置信息,所述軟件應(yīng)用被配置成使用所述位置信息處理所述數(shù)據(jù)。所述用戶終端還可以包括主顯示器,并且所述輔助設(shè)備可以是攝像頭、麥克風、揚聲器和輔助顯示器中的至少一個。所述用戶終端還可以包括用于確定所述位置信息的定位模塊。所述定位模塊可以包括基于信令的定位系統(tǒng),所述系統(tǒng)被配置成確定所述位置信息并且提供所述位置信息給所述接口,其中,所述基于信令的定位系統(tǒng)使用雷達、聲吶、近場無線電、紅外信號中的至少一個。替換地,所述定位模塊可以是全球定位系統(tǒng)。所述用戶終端還可以包括被配置成接收用戶輸入的位置信息的輸入裝置。在一個或多個實施例中,軟件應(yīng)用是通信客戶端應(yīng)用或圖像捕獲應(yīng)用。根據(jù)另一個實施例,提供了一種用戶終端,其包括:主顯示器;輔助顯示器;軟件應(yīng)用編程接口,其被配置成接收所述輔助顯示器的位置信息,所述位置信息定義所述輔助設(shè)備相對于所述用戶終端處的參考位置的物理空間位置;和處理器,其用于執(zhí)行軟件應(yīng)用,所述應(yīng)用能夠利用所述參考位置并且被配置成處理向所述輔助顯示器生成的圖像數(shù)據(jù),其中,所述接口向所述軟件應(yīng)用提供所述位置信息,所述軟件應(yīng)用被配置成使用所述位置信息處理所述數(shù)據(jù),其中,所述應(yīng)用編程接口被安裝在所述用戶終端處的操作系統(tǒng)上,所述應(yīng)用編程接口被安排成響應(yīng)于從所述軟件應(yīng)用發(fā)送的查詢而向所述軟件應(yīng)用提供所述位置信息。