本發(fā)明涉及移動(dòng)設(shè)備的顯示,尤其涉及通過動(dòng)態(tài)分辨率縮放來減少移動(dòng)設(shè)備的功耗。
背景技術(shù):
計(jì)算設(shè)備越來越多地具有以高顯示器密度來顯示內(nèi)容的高分辨率顯示器。然而,這些高分辨率顯示器消耗大量的系統(tǒng)資源,尤其是處理功率,這進(jìn)而導(dǎo)致較高的系統(tǒng)功耗。由于電池壽命對(duì)于計(jì)算設(shè)備而言(尤其對(duì)于移動(dòng)設(shè)備而言)是至關(guān)重要的,這些高分辨率顯示器通過限制在電池需要充電之前用戶可與他們的電子設(shè)備交互的時(shí)間量可能導(dǎo)致較差的用戶體驗(yàn)。此外,在許多情形中,此類高顯示器密度顯示器以遠(yuǎn)超人類視力的視覺可感知性的尺寸來呈現(xiàn)像素,即便在查看距離非常近的情況下。因而,以超過人類的視覺可感知性的顯示器密度來呈現(xiàn)內(nèi)容導(dǎo)致功耗增加而用戶查看體驗(yàn)方面卻沒有任何提升。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)描述了用于減少處理和渲染圖形內(nèi)容所要求的系統(tǒng)資源量的動(dòng)態(tài)分辨率縮放(DRS)技術(shù)。在電池供電的設(shè)備的情形中,這可進(jìn)而導(dǎo)致用于執(zhí)行圖形處理操作的系統(tǒng)資源的較少功耗。人類具有他們能夠在視覺上感知的像素顯示密度的上限。例如,被認(rèn)為具有正常視力(例如,20/20視力)的用戶在站立在20英尺以外時(shí)能夠?qū)@示器上相距約1.75mm的輪廓分開。人類視覺敏銳度一般隨著人類離他們正在查看的對(duì)象越近而增加,并且隨著人類離他們正在查看的對(duì)象越遠(yuǎn)而降低。本申請(qǐng)中描述的技術(shù)動(dòng)態(tài)地調(diào)節(jié)顯示分辨率以減少用于處理和渲染內(nèi)容的系統(tǒng)資源而不犧牲用戶體驗(yàn)。
在一個(gè)示例中,計(jì)算設(shè)備可以使用計(jì)算設(shè)備的一個(gè)或多個(gè)傳感器(例如聲學(xué)傳感器)來檢測計(jì)算設(shè)備的用戶與計(jì)算設(shè)備的顯示器之間的查看距離。計(jì)算設(shè)備可 以至少部分地基于檢測到的查看距離用具有閾值像素密度的分辨率在顯示器上呈現(xiàn)內(nèi)容。例如,計(jì)算設(shè)備可以用具有低于最大顯示分辨率但等于或高于在該距離處最大人類視覺可感知性的像素密度的分辨率來呈現(xiàn)內(nèi)容。這可導(dǎo)致降低顯示內(nèi)容所要求的處理功率而不降低用戶的查看體驗(yàn)。
在一些示例中,計(jì)算設(shè)備可以局部地修改顯示分辨率。代替用默認(rèn)分辨率(例如,接收到的分辨率或所存儲(chǔ)的分辨率)來處理內(nèi)容,計(jì)算設(shè)備可以在內(nèi)容被一個(gè)或多個(gè)處理器處理之前修改顯示分辨率。通過在由計(jì)算設(shè)備的處理器執(zhí)行圖形處理操作之前降低內(nèi)容的顯示分辨率,可以降低圖形處理負(fù)荷,這進(jìn)而可導(dǎo)致降低計(jì)算設(shè)備的功耗。
提供本發(fā)明內(nèi)容是為了以簡化的形式介紹將在以下具體實(shí)施例中進(jìn)一步描述的一些概念。本發(fā)明內(nèi)容并不旨在標(biāo)識(shí)所要求保護(hù)主題的關(guān)鍵特征或必要特征,也不旨在用于限制所要求保護(hù)主題的范圍。
附圖說明
參考附圖來描述詳細(xì)描述。在附圖中,附圖標(biāo)記最左邊的數(shù)字標(biāo)識(shí)該附圖標(biāo)記首次出現(xiàn)的附圖。在不同的附圖中使用相同的附圖標(biāo)記指示類似或相同的項(xiàng)。此外,各附圖旨在示出一般概念,并且不指示所需和/或必要元素。
圖1A-1B解說用于確定用戶和計(jì)算設(shè)備的顯示器之間的距離以及修改在顯示器上所呈現(xiàn)的內(nèi)容的分辨率的示例場景。
圖2解說了計(jì)算設(shè)備的示例細(xì)節(jié)。
圖3是示出用于與計(jì)算設(shè)備的圖形處理操作交互以修改計(jì)算設(shè)備要顯示的內(nèi)容的分辨率的示例配置的組件示圖。
圖4是示出用于修改計(jì)算設(shè)備要顯示的內(nèi)容的分辨率的示例方法的流程圖。
具體實(shí)施方式
如上所討論的,計(jì)算設(shè)備越來越多地具有以高顯示分辨率來顯示內(nèi)容的顯示器。以高像素顯示器密度來顯示內(nèi)容要求大量的系統(tǒng)資源(諸如處理功率),這進(jìn)而導(dǎo)致較高的系統(tǒng)功耗。然而,許多此類高像素顯示器密度超過了人類的視覺可感知性。因此,許多顯示器設(shè)備用要求大量處理功率的分辨率來顯示內(nèi)容,但與較低 分辨率可以提供的用戶體驗(yàn)相比并未得到改善的用戶體驗(yàn)。
本公開描述了用于至少部分地基于用戶離顯示器的距離來標(biāo)識(shí)要向用戶顯示內(nèi)容的像素密度的技術(shù)。例如,計(jì)算設(shè)備可以用低于計(jì)算設(shè)備的最大顯示器密度但等于或高于該距離處人類視覺可感知性密度(即,一高于其具有20/20視力的平均人類無法感知到圖像質(zhì)量改善的密度)的像素密度來呈現(xiàn)內(nèi)容。應(yīng)用這些技術(shù)可以限制用于處理和渲染圖形內(nèi)容所要求的系統(tǒng)資源量而不犧牲用戶體驗(yàn)。在電池供電的設(shè)備的情形中,這可進(jìn)而導(dǎo)致用于執(zhí)行圖形處理操作的系統(tǒng)資源的較少功耗。
在一些示例中,本文描述的技術(shù)可以使用計(jì)算設(shè)備的傳感器來實(shí)現(xiàn)。例如,計(jì)算設(shè)備的傳感器可以確定設(shè)備的用戶離計(jì)算設(shè)備的顯示器有多遠(yuǎn)。盡管本文的示例描述了使用聲學(xué)傳感器(例如超音速傳感器、音速傳感器和/或次聲速傳感器),但也可采用可用于測量距離的任何其他傳感器(例如相機(jī)或熱傳感器)。使用聲學(xué)傳感器是用于測量計(jì)算設(shè)備的用戶和顯示器之間的距離的一個(gè)示例低功率技術(shù)。例如,聲學(xué)傳感器可包括發(fā)射機(jī)和接收機(jī),并且是計(jì)算設(shè)備的一部分,或者在通信上附連于計(jì)算設(shè)備。聲學(xué)傳感器可被用來從顯示器朝用戶發(fā)射聲學(xué)信號(hào)。聲學(xué)傳感器可以隨后在聲學(xué)信號(hào)已經(jīng)反射離開用戶之后接收到該信號(hào)。通過知曉發(fā)射信號(hào)的頻率以及發(fā)送信號(hào)和接收其反射之間的時(shí)間量,計(jì)算設(shè)備可以計(jì)算正在查看計(jì)算設(shè)備的顯示器的用戶所處的查看距離。
在計(jì)算用戶的查看距離之后,計(jì)算設(shè)備可以基于該距離來確定要在屏幕上顯示內(nèi)容的像素密度。在一些示例中,計(jì)算設(shè)備可具有采用各種算法來計(jì)算人類能夠在視覺上感知像素的像素密度閾值的組件。例如,當(dāng)用戶越靠近計(jì)算設(shè)備的顯示器時(shí),像素密度可以比用戶越遠(yuǎn)離計(jì)算設(shè)備的顯示器的情況下更高(例如,更小的像素尺寸或每英寸更多的像素(PPI))。在一些示例中,像素密度計(jì)算可以是因用戶而異的。例如,計(jì)算設(shè)備可以獲得用戶的視覺敏銳度(例如,通過經(jīng)由計(jì)算設(shè)備的用戶界面的顯式輸入或通過觀察用戶的查看距離以及用于查看各種內(nèi)容的習(xí)慣的隱式輸入),并且基于用戶的具體視覺可感知性來選擇要顯示內(nèi)容的像素密度。在其他示例中,計(jì)算設(shè)備可以查詢包含各個(gè)像素密度和與人類視覺可感知性相關(guān)聯(lián)的關(guān)聯(lián)查看距離的查找表。基于所確定的查看距離,查找表可以提供要顯示內(nèi)容的像素密度。在一些示例中,計(jì)算設(shè)備可以基于所確定的查看距離采用各種數(shù)學(xué)函數(shù)或公式來計(jì)算像素密度。這些計(jì)算可以實(shí)時(shí)地或近乎實(shí)時(shí)地被采用。關(guān)于數(shù)學(xué)公式 的細(xì)節(jié)參考圖4更詳細(xì)地描述。
一旦選擇了顯示器像素密度,計(jì)算設(shè)備的一個(gè)或多個(gè)組件可以與圖形處理操作(例如圖形流水線)交互以修改內(nèi)容的像素密度。例如,內(nèi)容的提供者(例如,應(yīng)用,諸如或)可以按默認(rèn)像素密度(例如,計(jì)算設(shè)備顯示器的默認(rèn)像素密度)將內(nèi)容傳送給計(jì)算設(shè)備。在一些示例中,內(nèi)容可以被本地地存儲(chǔ)在計(jì)算設(shè)備的存儲(chǔ)器上。例如,應(yīng)用可以訪問存儲(chǔ)在存儲(chǔ)器中的內(nèi)容,諸如訪問被加載和存儲(chǔ)在計(jì)算設(shè)備的存儲(chǔ)器上的視頻和/或音頻的媒體播放器應(yīng)用。類似地,應(yīng)用可以按默認(rèn)像素密度在計(jì)算設(shè)備的顯示器上顯示內(nèi)容。各個(gè)組件可以截取從提供內(nèi)容的應(yīng)用發(fā)送到管理處理器(例如,中央處理單元(CPU)、圖形處理單元(GPU)等)的API的調(diào)用以修改默認(rèn)像素密度。在截取來自應(yīng)用的調(diào)用之際,各個(gè)組件可以向調(diào)用的各個(gè)參數(shù)(諸如默認(rèn)像素密度)應(yīng)用縮放因子。通過在處理器處處理內(nèi)容之前縮小默認(rèn)像素密度,這可以通過減少需要在圖形流水線操作之下被處理的像素?cái)?shù)目來降低處理器負(fù)荷。例如,通過降低像素密度,需要經(jīng)歷圖形處理操作(例如渲染)的像素?cái)?shù)目可以被降低,這可進(jìn)而降低處理器所要求的時(shí)間和功率。這可進(jìn)而降低用于處理供顯示的內(nèi)容的處理器的功率要求。
在以上討論的示例中并且在以下的許多示例中,描述了使用作為軟件組件的各組件的技術(shù)。通過使用軟件組件來實(shí)現(xiàn)本文描述的技術(shù),可以允許實(shí)現(xiàn)本發(fā)明而不要求對(duì)計(jì)算設(shè)備的硬件、中間件、操作系統(tǒng)和/或應(yīng)用的改變。然而,在其他示例中,各個(gè)技術(shù)可以使用硬件組件來應(yīng)用。
本文描述的技術(shù)可以完全或部分地由位于計(jì)算設(shè)備上的一個(gè)或多個(gè)系統(tǒng)資源來實(shí)現(xiàn)。如此處所使用的,系統(tǒng)資源涉及計(jì)算設(shè)備的物理硬件資源,諸如處理器(例如CPU、GPU等)、存儲(chǔ)器(例如RAM、ROM等)等。
在一些實(shí)施例中,各個(gè)技術(shù)可以通過降低要被顯示的內(nèi)容的像素密度來減少計(jì)算設(shè)備的處理負(fù)荷。處理負(fù)荷的這一減少可導(dǎo)致較少的系統(tǒng)功率要求,這可進(jìn)而導(dǎo)致更長的電池壽命。另外,處理負(fù)荷的減少還可減少處理中所涉及的硬件組件產(chǎn)生和發(fā)出的熱量,這也可提高電池壽命。在一些實(shí)施例中,電池壽命可以在不犧牲用戶體驗(yàn)的情況下被提高。在一些示例中,各個(gè)技術(shù)可以將個(gè)體用戶的視覺敏銳度考慮在內(nèi)。
出于方便和解說而提供了這一簡要介紹。這一介紹不意味著限制權(quán)利要求書 和之后章節(jié)的范圍。此外,下文詳細(xì)描述的技術(shù)可以用多種方式且在多種上下文中實(shí)現(xiàn)。如下文更詳細(xì)描述的,參考以下附圖提供了示例實(shí)現(xiàn)和上下文。然而,將領(lǐng)會(huì)以下實(shí)現(xiàn)和上下文僅僅是許多示例中的一些示例。
示例場景
圖1解說用于確定計(jì)算設(shè)備的用戶和顯示器之間的距離以及修改在顯示器上呈現(xiàn)的內(nèi)容的像素密度的一示例場景。示例場景100包括對(duì)本文描述的技術(shù)的兩個(gè)不同解說,圖1A和1B。如圖1A所示,(諸)計(jì)算設(shè)備102可包括用于顯示內(nèi)容(在這一示例中是汽車)的(諸)顯示器104。(諸)計(jì)算設(shè)備102可以被實(shí)現(xiàn)為任何類型的計(jì)算設(shè)備,其包括但不限于,膝上型計(jì)算機(jī)、平板、智能電話、臺(tái)式計(jì)算機(jī)、游戲控制臺(tái)、電子閱讀器設(shè)備、便攜式媒體播放器、移動(dòng)手持機(jī)、個(gè)人數(shù)字助理(PDA)、計(jì)算機(jī)監(jiān)視器或顯示器、機(jī)頂盒、車輛中的計(jì)算機(jī)系統(tǒng)、手持式游戲設(shè)備、智能電視(TV)、智能手表等。在一些實(shí)例中,(諸)計(jì)算設(shè)備102可包括移動(dòng)設(shè)備,該移動(dòng)設(shè)備的至少一部分可以相對(duì)于用戶移動(dòng),而在其他實(shí)例中,設(shè)備可以是靜止的,并且用戶可以相對(duì)于設(shè)備或其一部分而移動(dòng)。
(諸)計(jì)算設(shè)備102可具有用于測量(諸)計(jì)算設(shè)備102的(諸)顯示器104與用戶108之間距離的(諸)傳感器106。在一些示例中,(諸)傳感器106可被內(nèi)置到(諸)計(jì)算設(shè)備102中,諸如相機(jī)、話筒和接收機(jī)(例如用于收聽電話以及對(duì)電話說話)、聲學(xué)傳感器、熱傳感器,或用于測量距離的任何其他恰適傳感器。在其他示例中,(諸)傳感器106可以是用戶能夠在通信上連接并且可移動(dòng)地附連到計(jì)算設(shè)備的(諸)可分離傳感器。
如圖1A的示例場景中所示,(諸)傳感器106可包括聲學(xué)傳感器,其包括發(fā)射機(jī)和接收機(jī)。發(fā)射機(jī)可以發(fā)射預(yù)定頻率的(諸)信號(hào)110。在一些實(shí)例中,該頻率可以按高于人類聽力范圍(例如,至少約20KHz或更高)、低于人類聽力范圍(例如,最多約20Hz或更低)或在人類聽力范圍之內(nèi)(例如,在20Hz至20KHz左右之間)的一個(gè)或多個(gè)頻率來傳送。(諸)傳感器106可以被定位成與(諸)顯示器104面向相同方向以便在用戶108的方向上發(fā)射(諸)信號(hào)110。在(諸)傳感器106朝用戶108發(fā)射信號(hào)110之后,(諸)信號(hào)110的至少一部分可以反射離開用戶108并且回頭朝著(諸)傳感器106反彈,傳感器106收集所反射的(諸) 信號(hào)112。(諸)計(jì)算設(shè)備102可以確定(諸)傳感器106發(fā)射(諸)信號(hào)110的時(shí)間與(諸)傳感器106接收所反射的(諸)信號(hào)112的時(shí)間之間的時(shí)間量?;谒_定的時(shí)間量和預(yù)定頻率,(諸)計(jì)算設(shè)備102可以計(jì)算用戶108與(諸)顯示器104之間的距離A。如下文更詳細(xì)地描述的,(諸)計(jì)算設(shè)備102可以基于人類的視覺敏銳度和所計(jì)算的距離A來確定要在(諸)顯示器104上顯示內(nèi)容的像素密度。
(諸)計(jì)算設(shè)備102可包含電池114,電池114可被用來對(duì)(諸)計(jì)算設(shè)備102供電。附加地或替換地,(諸)計(jì)算設(shè)備102可以連接到AC電源(例如電網(wǎng))。電池114可包括多個(gè)電池或單個(gè)電池。在一些實(shí)例中,電池114可以被包含在(諸)計(jì)算設(shè)備102內(nèi)部,或者在(諸)計(jì)算設(shè)備102外部。另外,在一些實(shí)例中,(諸)傳感器106可包括它們自己的電池,或者由(諸)計(jì)算設(shè)備102的電池114供電。
在一些示例中,如圖1B所示,當(dāng)用戶108在離計(jì)算設(shè)備達(dá)距離B并且距離B大于距離A時(shí),內(nèi)容可以按較低的像素密度來顯示。
示例計(jì)算設(shè)備
圖2解說了被配置成修改內(nèi)容的像素密度的計(jì)算設(shè)備(諸如如在示例場景100中所描繪的(諸)計(jì)算設(shè)備102)的示例細(xì)節(jié)。(諸)計(jì)算設(shè)備102可包括(諸)處理器202、(諸)顯示器106、(諸)傳感器106和在通信上耦合至(諸)處理器202的存儲(chǔ)器204。(諸)處理器202可以包括中央處理單元(CPU)、圖形處理單元(GPU)、微處理器等等。(諸)計(jì)算設(shè)備102可進(jìn)一步包括附加元件,諸如話筒、觸摸屏、無線網(wǎng)絡(luò)傳感器、加速度計(jì)、指南針、陀螺儀、全球定位系統(tǒng)(GPS)或其他元件。(諸)傳感器106可包括相機(jī)、運(yùn)動(dòng)傳感器、聲學(xué)傳感器、電磁傳感器、熱傳感器,或適于確定(諸)顯示器104與用戶108之間的距離的任何其他傳感器。
如所解說的,存儲(chǔ)器204可包括操作系統(tǒng)(OS)206,操作系統(tǒng)(OS)206可管理(諸)計(jì)算設(shè)備102的資源和/或向(諸)應(yīng)用208提供功能。(諸)應(yīng)用208可以是各種應(yīng)用,諸如web瀏覽器、移動(dòng)應(yīng)用、桌面應(yīng)用或任何其他應(yīng)用。在一個(gè)示例中,(諸)應(yīng)用208可以是顯示供用戶108選擇的媒體的音樂庫應(yīng)用。在另一示例中,(諸)應(yīng)用208可以是通過一個(gè)或多個(gè)網(wǎng)絡(luò)與提供視頻內(nèi)容的服務(wù)器 通信的視頻流送應(yīng)用。在其他示例中,(諸)應(yīng)用208可以是用于播放本地媒體或存儲(chǔ)在(諸)計(jì)算設(shè)備102上的媒體的媒體播放器。一個(gè)或多個(gè)網(wǎng)絡(luò)可以包括多種不同類型的網(wǎng)絡(luò)中的任一個(gè)或其組合,諸如蜂窩網(wǎng)絡(luò)、無線網(wǎng)絡(luò)、局域網(wǎng)(LAN)、廣域網(wǎng)(WAN)、個(gè)域網(wǎng)(PAN)和因特網(wǎng)。
在一些實(shí)施例中,(諸)應(yīng)用208可以被存儲(chǔ)在(諸)計(jì)算設(shè)備102的存儲(chǔ)器204上。在接收到要被顯示的內(nèi)容之后,(諸)應(yīng)用208可以調(diào)用(例如,向其發(fā)送請(qǐng)求)(諸)應(yīng)用編程接口(API)210以促進(jìn)對(duì)要被顯示的內(nèi)容的處理。例如,API 210可以是能由(諸)應(yīng)用208調(diào)用以致使執(zhí)行它們相關(guān)聯(lián)的功能的預(yù)定義命令或函數(shù)集。在一些示例中,API 210可以被組織成能由(諸)應(yīng)用208調(diào)用的庫(例如,和ES)。
API 210可包括單個(gè)API或多個(gè)API,其中每一個(gè)API 210可被調(diào)用以執(zhí)行一個(gè)或多個(gè)功能。(諸)應(yīng)用208可以調(diào)用(諸)API 210,API 210的功能被存儲(chǔ)在庫(例如,用于嵌入式系統(tǒng)的開放圖形庫(ES))中。在一些示例中,(諸)應(yīng)用208可以調(diào)用API 210,API 210的功能用于采用(諸)處理器202來對(duì)內(nèi)容執(zhí)行圖形處理以準(zhǔn)備供顯示的內(nèi)容。例如,API 210可包括使用(諸)處理器202來執(zhí)行圖形流水線操作的功能,這將在下文參考圖3更詳細(xì)地討論。在一些示例中,執(zhí)行圖形流水線操作的(諸)處理器202可以是GPU、CPU或這兩者的組合。
在一些示例中,分辨率控制組件212可以與圖形處理操作(例如圖形流水線操作)交互以修改要在(諸)顯示器104上顯示的內(nèi)容的顯示分辨率。在一些示例中,內(nèi)容可以由(諸)應(yīng)用208提供。例如,分辨率控制組件可以在來自(諸)應(yīng)用208的調(diào)用抵達(dá)API 210之前截取該調(diào)用。該調(diào)用可指示一個(gè)或多個(gè)參數(shù),該參數(shù)指示了如何渲染內(nèi)容。在一些實(shí)例中,一個(gè)或多個(gè)參數(shù)可指示用于顯示內(nèi)容的默認(rèn)像素密度,并且還可指示用于在(諸)顯示器104上顯示內(nèi)容的默認(rèn)尺寸。默認(rèn)像素密度可以由內(nèi)容提供者(例如(諸)應(yīng)用208)來確定,或者默認(rèn)像素密度可以基于能夠顯示內(nèi)容的(諸)顯示器104的一個(gè)或多個(gè)像素密度來確定。在其他示例中,默認(rèn)像素密度可以基于(諸)顯示器104的默認(rèn)像素密度來確定。在調(diào)用被API 110接收到之前,分辨率控制組件212可以截取(諸)應(yīng)用208發(fā)送的調(diào)用。分辨率控制組件212可以對(duì)調(diào)用的一個(gè)或多個(gè)參數(shù)應(yīng)用一個(gè)或多個(gè)縮放因子。例如, 分辨率控制組件212可以對(duì)一個(gè)或多個(gè)參數(shù)應(yīng)用縮放因子以致使內(nèi)容按照與默認(rèn)像素密度不同的像素密度(例如經(jīng)修改或計(jì)算的像素密度)來被處理和顯示。
在一些實(shí)例中,像素密度可以基于正在查看(諸)顯示器104的用戶108的查看距離來確定。像素密度可附加地或替換地基于人類的預(yù)定視覺敏銳度來確定。預(yù)定視覺敏銳度可以是因用戶而異的,或者可以基于平均人類視力(例如正常或20/20)。在一些示例中,分辨率控制組件212可以提供用戶108能夠輸入他們的視力的圖形用戶界面(GUI)?;谟脩粢暳?,分辨率控制組件212可以計(jì)算要用來顯示內(nèi)容的更新的像素密度。在一些實(shí)例中,這可以提供較佳的用戶查看體驗(yàn),并且可以進(jìn)一步降低(諸)計(jì)算設(shè)備102的功耗。例如,具有較差視力(例如比20/20更差)的用戶可具有較低的視覺可感知性,針對(duì)各不同距離他們能夠按較低的視覺可感知性檢測像素。因而,對(duì)于那些用戶,分辨率控制組件212可以為一查看距離確定與具有正常或平均視力的用戶108的像素密度相比較低的像素密度(例如,更大的像素尺寸)來顯示內(nèi)容。因而,基于用戶108的視覺敏銳度或預(yù)定視覺敏銳度值(例如“正?!被?0/20),分辨率控制組件212可以確定要用來在(諸)顯示器104上顯示內(nèi)容的像素密度。在一些示例中,分辨率控制組件212可以查詢用各自與一個(gè)或多個(gè)像素密度相關(guān)聯(lián)的查看距離來填充的查找表。附加地或替換地,分辨率控制組件212可以采用各種算法來計(jì)算要用來顯示內(nèi)容的像素密度,各個(gè)算法的細(xì)節(jié)將在下文參考圖3來討論。
分辨率控制組件212可以被實(shí)現(xiàn)為硬件,或?qū)崿F(xiàn)為軟件,或者這兩者的組合。在一些實(shí)例中,分辨率控制組件212可以被實(shí)現(xiàn)為操作系統(tǒng)的一部分,而在其他實(shí)例中,分辨率控制組件212可以是與操作系統(tǒng)對(duì)接的可下載軟件(例如“補(bǔ)丁”)。另外,在一些實(shí)例中,將分辨率控制組件212實(shí)現(xiàn)為軟件組件可能是有利的。例如,通過將分辨率控制組件212實(shí)現(xiàn)為可下載的軟件組件(例如補(bǔ)丁),可以不要求對(duì)硬件、操作系統(tǒng)206或(諸)應(yīng)用208的改變。因而,分辨率控制組件212可以被實(shí)現(xiàn)在(諸)計(jì)算設(shè)備102上以與API 210、操作系統(tǒng)206和/或系統(tǒng)級(jí)上的(諸)應(yīng)用208對(duì)接以此方式與任何(諸)應(yīng)用208聯(lián)用。代替與(諸)應(yīng)用208交互,分辨率控制組件212可以在系統(tǒng)級(jí)經(jīng)由API 210與系統(tǒng)功能交互,如此以使得內(nèi)容分辨率可被改變而不要求對(duì)(諸)應(yīng)用208的任何改變。
一旦分辨率控制組件212計(jì)算了要用來顯示內(nèi)容的像素密度,并且基于所計(jì) 算的像素密度對(duì)一個(gè)或多個(gè)參數(shù)應(yīng)用了縮放因子,分辨率控制組件212可以向API210發(fā)送調(diào)用以促進(jìn)由(諸)處理器202按照所計(jì)算的像素密度對(duì)內(nèi)容的圖形處理。通過致使(諸)處理器202按照所計(jì)算的像素密度來執(zhí)行圖形處理操作,這可導(dǎo)致(諸)處理器202處理較少的數(shù)據(jù)以供顯示,這可導(dǎo)致要求較少的功耗。圖形處理操作將在下文參考圖3來更詳細(xì)的描述。
一旦(諸)處理器202完成了按照所計(jì)算的像素密度對(duì)內(nèi)容的圖形處理,處理結(jié)果可被存儲(chǔ)在(諸)圖形緩沖器214中。在一些實(shí)例中,(諸)圖形緩沖器可包括單個(gè)圖形緩沖器或多個(gè)圖形緩沖器。例如,每一(諸)應(yīng)用208可以被指派其自己的(諸)圖形緩沖器214以用于存儲(chǔ)已經(jīng)被(諸)處理器202處理的內(nèi)容。在將處理結(jié)果或被處理內(nèi)容存儲(chǔ)在(諸)圖形緩沖器214中之后,合成器組件216可以協(xié)調(diào)來自(諸)應(yīng)用208的所有圖形層。另外,合成器組件216可以將所有可見圖形層合成在一起。一旦合成器組件216將所有可見層合成在一起,合成器組件216就可生成最終圖形數(shù)據(jù)進(jìn)入(諸)圖形緩沖器214中。(諸)圖形緩沖器214可包括任何類型的數(shù)據(jù)緩沖器,諸如系統(tǒng)數(shù)據(jù)緩沖器(例如幀緩沖器)。
盡管合成器組件216可以是單個(gè)軟件組件,但它也可用若干不同組件來實(shí)現(xiàn),諸如系統(tǒng)表面和硬件合成器。例如,合成器組件216可包括系統(tǒng)服務(wù)(例如表面拋射器)以協(xié)調(diào)來自運(yùn)行中的(諸)應(yīng)用208的所有圖形層。系統(tǒng)服務(wù)可以收集可見層的所有(諸)圖形緩沖器216并且請(qǐng)求單獨(dú)的組件(例如硬件合成器)來將所有可見層合成在一起。在一些實(shí)例中,硬件合成器可執(zhí)行合成并且將最終圖形數(shù)據(jù)加載到系統(tǒng)中,而在其他實(shí)例中,硬件合成器可以請(qǐng)求系統(tǒng)服務(wù)(例如表面拋射器)來調(diào)用API 210以使用(諸)處理器212以進(jìn)行緩沖器合成。在完成合成之際,最終圖形數(shù)據(jù)可以被加載到(諸)圖形緩沖器216(例如幀緩沖器)中以供在(諸)顯示器104上顯示。
示例技術(shù)
圖3示出用于與計(jì)算設(shè)備的圖形處理操作交互以修改要由(諸)計(jì)算設(shè)備102的(諸)顯示器104顯示的內(nèi)容的分辨率的示例配置的組件示圖300。如上所述,(諸)應(yīng)用212可以向API 210發(fā)送調(diào)用302(例如請(qǐng)求)。一般來說,調(diào)用302包括指示(諸)應(yīng)用208正向API 210請(qǐng)求什么的一個(gè)或多個(gè)函數(shù)調(diào)用。例如,調(diào) 用302可包括請(qǐng)求要對(duì)由(諸)應(yīng)用210提供的內(nèi)容執(zhí)行圖形渲染以在(諸)顯示器104處顯示的一個(gè)或多個(gè)函數(shù)。在調(diào)用302包括請(qǐng)求圖形渲染的函數(shù)的情形中,調(diào)用302可包括指示用于分辨率縮放的默認(rèn)渲染目標(biāo)的一個(gè)或多個(gè)參數(shù)。在傳統(tǒng)實(shí)例中,調(diào)用302將繼續(xù)至API 210,API 210將進(jìn)而致使(諸)處理器202對(duì)要被渲染的內(nèi)容執(zhí)行圖形操作。然而在一個(gè)示例中,分辨率控制組件212可以插入上層304以在調(diào)用302抵達(dá)API 210之前截取調(diào)用302。上層304可以使用API掛鉤的形式來截取調(diào)用302。例如,上層304可檢查發(fā)送自(諸)應(yīng)用208的調(diào)用302以確定正被調(diào)用的API 210的功能。如果上層304確定調(diào)用302正請(qǐng)求API 210渲染內(nèi)容以供顯示,則分辨率控制組件212可致使上層304在調(diào)用302抵達(dá)API 210之前截取調(diào)用302。
在調(diào)用302被截取之后,分辨率控制組件212可以對(duì)調(diào)用302的一個(gè)或多個(gè)參數(shù)應(yīng)用縮放因子。例如,假定(諸)計(jì)算設(shè)備102的默認(rèn)像素密度是1024x 1024像素,并且用來在(諸)顯示器104上顯示內(nèi)容的所計(jì)算的像素密度是512x 512像素。在這一實(shí)例中,分辨率控制組件212可以應(yīng)用縮放因子0.5以使像素密度縮小2倍。通過對(duì)調(diào)用302的函數(shù)應(yīng)用縮放因子,函數(shù)調(diào)用302的一個(gè)或多個(gè)參數(shù)可以被縮小以按照512x 512像素來顯示內(nèi)容。因而,通過在調(diào)用302抵達(dá)API 210之前截取調(diào)用302,要被顯示的內(nèi)容的像素密度可以由(諸)處理器202按照較低的像素密度處理,這可降低處理器負(fù)荷并且可導(dǎo)致較低的系統(tǒng)功率要求,從而延長(諸)計(jì)算設(shè)備102的電池壽命。
一旦分辨率組件216已經(jīng)應(yīng)用了所計(jì)算的縮放因子(其細(xì)節(jié)將參考圖4更詳細(xì)地描述),調(diào)用302可以被發(fā)送給API 210,API 210促進(jìn)對(duì)內(nèi)容的圖形處理。圖形處理可以由(諸)計(jì)算設(shè)備102中包含的CPU、GPU或任何其他(諸)處理器202來執(zhí)行。API 210可以將內(nèi)容存儲(chǔ)在(諸)圖形緩沖器214中并且致使(諸)處理器202按照所計(jì)算的像素密度對(duì)內(nèi)容執(zhí)行圖形處理。
一般而言,圖形處理包括被稱為圖形流水線的操作序列。盡管現(xiàn)代圖形流水線可包括十個(gè)以上的階段或操作,但這些操作可以被分組成三個(gè)高層操作:頂點(diǎn)處理、光柵化和像素處理。頂點(diǎn)處理一般包括處理幾何場景的頂點(diǎn)和關(guān)系。頂點(diǎn)可以通過執(zhí)行諸如變形和蒙皮等操作來處理。一旦頂點(diǎn)處理操作完成,光柵化操作求解各頂點(diǎn)之間的關(guān)系并且將由頂點(diǎn)形成的線和三角形映射到窗口像素空間。最后,像 素處理操作為每一像素生成數(shù)據(jù),諸如每一像素的顏色和深度。這也是在窗口坐標(biāo)空間中完成的。
在一些實(shí)例中,每一個(gè)操作可具有它們自己的調(diào)用302和相關(guān)聯(lián)的函數(shù)。頂點(diǎn)處理操作和像素處理操作可具有使用著色器程序定義的函數(shù),其中源代碼可以通過API調(diào)用302在運(yùn)行時(shí)被編譯和鏈接。因而,由于每一圖形處理操作可具有它們自己的調(diào)用302,上層304可截取來自(諸)應(yīng)用208的多個(gè)調(diào)用302以對(duì)要被渲染以供顯示的內(nèi)容的一個(gè)或多個(gè)參數(shù)執(zhí)行縮放操作。
一旦圖形處理操作完成,經(jīng)處理的內(nèi)容可以被存儲(chǔ)在(諸)圖形緩沖器214(例如緩沖器隊(duì)列)中。在一些實(shí)例中,(諸)圖形緩沖器214可包括單個(gè)緩沖器或多個(gè)緩沖器。在將經(jīng)處理的內(nèi)容存儲(chǔ)在(諸)圖形緩沖器214中之后,合成器組件216可以協(xié)調(diào)來自運(yùn)行中的(諸)應(yīng)用208的所有圖形層。在一些示例中,合成器組件216可以基于幀周期來收集所有(諸)圖形緩沖器214。例如,(諸)顯示器104可以具有用于每一幀周期的預(yù)定義刷新率(例如60fps)?;谠擃A(yù)定義刷洗率,合成器組件216可以為每一幀周期收集所有(諸)圖形緩沖器214。在一些示例中,合成器組件216可以包括為每一幀周期執(zhí)行收集(諸)圖形緩沖器214的系統(tǒng)服務(wù)(例如表面拋射器)。一旦收集了包含內(nèi)容的(諸)圖形緩沖器214,合成器組件216就可將所有可見層合成在一起。在一些示例中,合成器組件216可包括硬件合成器、軟件合成器或這兩者,這些合成器執(zhí)行對(duì)可見層的合成并且將最終圖形數(shù)據(jù)生成到(諸)圖形緩沖器214中。在一些示例中,合成器組件216可使用(諸)處理器202來執(zhí)行緩沖器合成。
在一些實(shí)例中,分辨率控制組件212可進(jìn)一步插入下層306以截取調(diào)用302以確保合成是以所計(jì)算的像素密度來完成的。下層306可以在合成器組件216合成了所有可見層之后被插入。在其他實(shí)例中,下層306可以被插入在合成器組件216的不同組件之間。例如,如上所述,合成器組件216可包括用于協(xié)調(diào)所有圖形層的系統(tǒng)服務(wù),以及用于執(zhí)行合成并且將最終圖形數(shù)據(jù)加載到系統(tǒng)中的硬件合成器。在這一示例中,分辨率控制組件212可以在上層304與下層306之間協(xié)調(diào)以確保合成是以正確的像素密度來完成的。在其中像素密度已經(jīng)被上層304使用縮放因子改變的實(shí)例中這可能是必要的。例如,調(diào)用302可以被下層306截取以允許分辨率控制組件212將經(jīng)縮減的像素塊放大至原始尺寸(例如在應(yīng)用縮放因子之前)以使得它 可以按正確尺寸在(諸)顯示器104上顯示。因而,分辨率控制組件212可以使用同步方案來協(xié)調(diào)上層304與下層306以確保在上層304應(yīng)用縮放因子之前內(nèi)容以正確尺寸或原始尺寸被顯示。
一旦分辨率控制組件212使用上層304和下層306應(yīng)用了同步方案,內(nèi)容可以被加載到(諸)圖形緩沖器214(例如幀緩沖器)中以供在(諸)顯示器104上顯示。
在一些實(shí)施例中,分辨率控制組件212所執(zhí)行的交互可以在(諸)計(jì)算設(shè)備102處執(zhí)行,或者遠(yuǎn)離(諸)計(jì)算設(shè)備102(例如在提供內(nèi)容的服務(wù)器處)執(zhí)行。然而,在一些實(shí)例中,在(諸)計(jì)算設(shè)備102處與所執(zhí)行的圖形處理步驟交互可能是有利的。例如,代替需要向提供內(nèi)容的(諸)應(yīng)用208的服務(wù)器發(fā)送請(qǐng)求以改變內(nèi)容的像素密度,對(duì)內(nèi)容的像素密度的改變可以在(諸)計(jì)算設(shè)備102處被應(yīng)用。在(諸)計(jì)算設(shè)備102處執(zhí)行對(duì)內(nèi)容像素密度的縮放操作與在提供內(nèi)容的服務(wù)器處執(zhí)行操作相比可具有各種優(yōu)點(diǎn)。例如,可能要求附加時(shí)間來向(諸)應(yīng)用208的服務(wù)器發(fā)送請(qǐng)求以及從(諸)應(yīng)用208的服務(wù)器接收請(qǐng)求。因而,通過降低更新內(nèi)容所要求的時(shí)間量,在(諸)計(jì)算設(shè)備102處執(zhí)行縮放操作可以減少等待時(shí)間問題,并且因而可以增強(qiáng)用戶查看體驗(yàn)。
示例方法
圖4是示出用于修改要由計(jì)算設(shè)備顯示的內(nèi)容的像素密度的示例方法的流程圖。在操作402,可以確定計(jì)算設(shè)備與計(jì)算設(shè)備的用戶之間的查看距離。如上所述,這可以使用(諸)傳感器106來實(shí)現(xiàn)。在一些示例中,(諸)傳感器106可包括聲學(xué)傳感器、熱傳感器、相機(jī)或可用于測量用戶與計(jì)算設(shè)備之間的距離的任何其他傳感器。例如,(諸)傳感器106可包括聲學(xué)傳感器。聲學(xué)傳感器可包括一個(gè)或多個(gè)發(fā)射機(jī)和接收機(jī)。為了測量用戶108與(諸)計(jì)算設(shè)備102之間的距離,聲學(xué)傳感器的發(fā)射機(jī)可以從(諸)計(jì)算設(shè)備102朝用戶108發(fā)射(例如傳送)(諸)信號(hào)110。(諸)聲學(xué)信號(hào)110可以以預(yù)定義頻率來傳送,該預(yù)定義頻率可能無法由用戶108檢測(例如,以超過人類聽力范圍的頻率)。通過朝用戶108傳送(諸)信號(hào)110,(諸)信號(hào)110的至少一部分可以反射離開用戶108回頭朝向(諸)傳感器106。這一所反射的(諸)信號(hào)112可以由(諸)聲學(xué)傳感器106的接收機(jī)接收。 基于(諸)傳送信號(hào)110和接收(諸)所反射的信號(hào)112之間的時(shí)間量,可以計(jì)算(諸)計(jì)算設(shè)備102與用戶108之間的距離。例如,通過知曉(諸)信號(hào)110被傳送的預(yù)定義頻率、時(shí)間和頻率之間的關(guān)系(例如,頻率是時(shí)間的倒數(shù))以及傳送信號(hào)110和接收所反射的信號(hào)112之間的時(shí)間量,可以計(jì)算距離。在一些示例中,在測量距離和實(shí)際距離之間可能存在輕微誤差。在諸如這些的示例中,操作402可應(yīng)用保守辦法通過確保測得距離永不大于現(xiàn)實(shí)距離來確定該距離。這可導(dǎo)致增強(qiáng)的用戶體驗(yàn)以確保像素密度總是處于剛剛超過人類視覺可感知性的密度。
在操作404,內(nèi)容可被接收以在(諸)顯示器104上顯示。在一些實(shí)例中,內(nèi)容可以從(諸)應(yīng)用208(例如,從應(yīng)用208的服務(wù)器)接收以在(諸)顯示器104上顯示。內(nèi)容可包括能夠在(諸)計(jì)算設(shè)備102的(諸)顯示器104上顯示的任何內(nèi)容(例如文本或視頻)。(諸)應(yīng)用208可包括用戶108在(諸)計(jì)算設(shè)備102上使用的任何類型的應(yīng)用(例如,web瀏覽器、視頻播放器、音樂庫、電子郵件應(yīng)用)。
在操作406,可以確定是否要針對(duì)接收到的內(nèi)容更新顯示像素密度。例如,可以基于用戶108與(諸)計(jì)算設(shè)備102之間的查看距離以及正常用戶108的視覺敏銳度(例如,平均視力或20/20)來確定默認(rèn)像素密度可能以超過人類在視覺上能感知的像素密度來顯示內(nèi)容。換言之,內(nèi)容的默認(rèn)像素密度可能遠(yuǎn)超過用戶108實(shí)際上能夠觀察到的像素密度。在其他實(shí)例中,用戶108可指示要用來顯示某些內(nèi)容的像素密度。例如,視頻內(nèi)容可以用較高的像素密度來顯示,而文本內(nèi)容可以用較低的像素密度來顯示。另外,可以基于剩余電池電量來確定以不同像素密度來顯示內(nèi)容。例如,如果(諸)計(jì)算設(shè)備102的電池電量降到低于某一閾值(例如百分之20),則可以確定以較低的像素密度來顯示內(nèi)容以增加(諸)計(jì)算設(shè)備102的電池壽命。
在操作408,在確定要更新內(nèi)容的像素密度之后,可以為接收到的內(nèi)容計(jì)算經(jīng)更新的像素密度。例如,內(nèi)容可以用默認(rèn)像素密度來接收,在一些實(shí)例中,默認(rèn)像素密度對(duì)應(yīng)于(諸)顯示器104的分辨率。如上所提及的,內(nèi)容像素密度可以基于所確定的用戶108與(諸)計(jì)算設(shè)備102之間的查看距離來更新。一般而言,人類成人當(dāng)他們站在20英尺遠(yuǎn)的地方時(shí)能夠?qū)?duì)象上相距約1.75毫米的輪廓分開可被認(rèn)為具有正常視力。為了在數(shù)學(xué)上將用戶108的視覺敏銳度與用來顯示內(nèi)容的像素 密度相關(guān),可以使用角分辨敏銳度來定義用戶108在所確定的距離處的視覺敏銳度。對(duì)象的角尺寸可以一般地使用等式來描述,其中d是對(duì)象的實(shí)際尺寸(例如像素尺寸),D是對(duì)象(例如顯示器上的像素)與用戶108之間的距離,而δ是以弧度計(jì)的對(duì)象的角尺寸。使用這一等式,正常視力(例如20/20)可以用角分辨敏銳度弧度δ正常=2.9x10-4弧度來表示,而δ最優(yōu)=1.45x10-4弧度用于比正常視力更好的視力(例如20/10)。將此應(yīng)用于具體(諸)顯示器104,當(dāng)像素密度滿足用戶108在所確定的距離處的視覺敏銳度的閾值時(shí),操作408可將(諸)顯示器104的較長一側(cè)處的像素?cái)?shù)目視為可分辨像素?cái)?shù)目??煞直嫦袼?cái)?shù)目會(huì)基于(諸)顯示器104的尺寸而改變??煞直嫦袼?cái)?shù)目、用戶108的查看距離以及用戶視覺敏銳度之間的關(guān)系可以使用等式來近似地描述,其中N是可分辨像素?cái)?shù)目,L是(諸)顯示器104的較長尺寸或一側(cè)的長度,D是所確定的查看距離,而δ是用戶的角分辨敏銳度。
如上所提及的,δ可以是一般的預(yù)定視覺敏銳度(例如,20/20或20/10),或者可以是因用戶而異的。在一些實(shí)例中,用戶108可以被提示將他們的視覺敏銳度輸入到由分辨率控制組件212所提供的用戶界面中。本領(lǐng)域技術(shù)人員還將領(lǐng)會(huì),此處所使用的等式僅僅解說用于計(jì)算像素密度的一種方式。在其他示例中,不同的等式或算法可被用來計(jì)算用于顯示內(nèi)容的像素密度。在操作410,與(諸)計(jì)算設(shè)備102的圖形處理操作的交互可以按照操作408中所確定的所計(jì)算的像素密度來修改要被顯示的內(nèi)容。例如,(諸)計(jì)算設(shè)備102的一個(gè)或多個(gè)組件可以截取從(諸)應(yīng)用208發(fā)送到API 210的調(diào)用302。調(diào)用302可以是對(duì)API 210的請(qǐng)求以致使用于顯示內(nèi)容所必要的圖形處理操作由(諸)處理器202執(zhí)行。調(diào)用302可包含致使要用來顯示內(nèi)容的默認(rèn)像素密度的一個(gè)或多個(gè)參數(shù)。通過在調(diào)用302抵達(dá)API 210之前截取調(diào)用302,可以向一個(gè)或多個(gè)參數(shù)應(yīng)用縮放因子以修改默認(rèn)像素密度。例如,可以對(duì)一個(gè)或多個(gè)參數(shù)應(yīng)用縮放因子以將要被顯示的內(nèi)容的像素密度降低或在一些實(shí)例中增加成操作408所計(jì)算的像素密度。通過在調(diào)用302抵達(dá)API 210之前對(duì)一個(gè)或多個(gè)參數(shù)應(yīng)用縮放因子,圖形處理操作可以按照與默認(rèn)像素密度相比較低的像素密度來執(zhí)行,這可要求用于促進(jìn)內(nèi)容的顯示的較少的系統(tǒng)資源(諸如功率資源)。通過降低(諸)處理器202用于執(zhí)行圖形處理操作所要求的功率資源,這可 延長(諸)計(jì)算設(shè)備102的電池壽命同時(shí)維持或提升用戶體驗(yàn)。(諸)圖形處理操作的結(jié)果可以被存儲(chǔ)在(諸)圖形緩沖器216中。在經(jīng)處理的內(nèi)容在(諸)顯示器104上被顯示之前,(諸)計(jì)算設(shè)備102的一個(gè)或多個(gè)組件可以截取調(diào)用302或內(nèi)容以確保要以所計(jì)算的像素密度來顯示的內(nèi)容將按照與內(nèi)容被顯示的默認(rèn)尺寸相同的尺寸來顯示。
在操作412,(諸)計(jì)算設(shè)備102的一個(gè)或多個(gè)組件可以致使內(nèi)容以經(jīng)更新的或所計(jì)算的像素密度來顯示。在一些實(shí)例中,經(jīng)更新的像素密度可以是比默認(rèn)分辨率低的像素密度。另外,經(jīng)更新的像素密度可以用剛剛高于人類能夠看見的閾值密度的像素密度來呈現(xiàn)內(nèi)容。因而,通過降低要被顯示的內(nèi)容的像素密度同時(shí)使像素密度保持高于閾值,可以用較低的像素密度來呈現(xiàn)內(nèi)容以降低處理要求并且延長電池壽命同時(shí)提供如同是按照默認(rèn)像素密度來呈現(xiàn)分辨率那樣相同的用戶體驗(yàn)。
在一些示例中,操作402到412中的一個(gè)或全部可以按照預(yù)定義頻率被重復(fù)。例如,操作402到412中的一個(gè)或全部可以大約每秒重復(fù)3次(例如3Hz)。在其他示例中,操作402到412中的每一個(gè)可以按照不同的預(yù)定義頻率被重復(fù)。例如,操作402可以按照每秒3次的頻率或3Hz被重復(fù),而操作406到410可以每秒1次或1Hz被重復(fù)。在一些示例中,操作402到412可以根據(jù)預(yù)定義的平滑算法來執(zhí)行。例如,平滑算法可以指定預(yù)定義的時(shí)間周期以提升或維持用戶體驗(yàn)。如果像素密度改變得太頻繁或太不頻繁,則用戶可能會(huì)注意到并且導(dǎo)致使用戶體驗(yàn)下降。例如,操作402可以按照每秒3次的頻率或3Hz被重復(fù),而操作406到412可以按照每秒1次的頻率或1Hz被重復(fù)。然而,在執(zhí)行操作402到412中可以采用執(zhí)行操作的操作和頻率的任何組合。
如此處所使用的,存儲(chǔ)器可包括“計(jì)算機(jī)可讀介質(zhì)”。計(jì)算機(jī)可讀介質(zhì)包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括以存儲(chǔ)如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)等信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動(dòng)和不可移動(dòng)介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括但不限于,隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程存儲(chǔ)器(EEPROM)、閃存或其他存儲(chǔ)器技術(shù)、緊致盤ROM(CD-ROM)、數(shù)字多功能盤(DVD)或其他光存儲(chǔ)、磁帶盒、磁帶、磁盤存儲(chǔ)或其他磁存儲(chǔ)設(shè)備,或者可用于存儲(chǔ)信息以供計(jì)算設(shè)備訪問的任何其他非傳輸介質(zhì)。相反,通信介質(zhì)可具體化在諸如結(jié)合載波等已調(diào)制數(shù)據(jù)信號(hào)中定 義的計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)。如本文所定義的,計(jì)算機(jī)存儲(chǔ)介質(zhì)不包括通信介質(zhì)。
盡管某些功能在本文被描述為由能由一個(gè)或多個(gè)處理器和其他組件執(zhí)行的模塊來實(shí)現(xiàn),但這些模塊或其他組件中的任何一個(gè)或全部可以完整或部分地由用于執(zhí)行所述功能的一個(gè)或多個(gè)硬件邏輯組件來實(shí)現(xiàn)。例如,但非限制,可被使用的硬件邏輯組件的說明性類型包括現(xiàn)場可編程門陣列(FPGA)、應(yīng)用專用集成電路(ASIC)、應(yīng)用專用標(biāo)準(zhǔn)產(chǎn)品(ASSP)、片上系統(tǒng)(SOC)、復(fù)雜可編程邏輯器件(CPLD)等。因此,盡管本文討論了各種模塊,但它們的功能和/或類似功能可被不同地安排(例如,組合成更少數(shù)量的模塊,打破為更多數(shù)量的模塊等)。
示例
示例A,一種計(jì)算設(shè)備,包括:一個(gè)或多個(gè)處理器;通信耦合到該一個(gè)或多個(gè)處理器的存儲(chǔ)器;顯示器,通信耦合到該一個(gè)或多個(gè)處理器并且被配置成以多個(gè)像素密度來顯示內(nèi)容;一個(gè)或多個(gè)傳感器,用于確定計(jì)算設(shè)備的顯示器與用戶之間的查看距離;分辨率控制組件,其被存儲(chǔ)在存儲(chǔ)器中并且能由一個(gè)或多個(gè)處理器執(zhí)行以:至少部分地基于查看距離來確定要用來在顯示器上顯示內(nèi)容的多個(gè)像素密度中的像素密度;截取從提供內(nèi)容的應(yīng)用發(fā)送到應(yīng)用編程接口(API)的調(diào)用,該調(diào)用指示用于按照第一像素密度來渲染內(nèi)容的一個(gè)或多個(gè)參數(shù),第一像素密度包括第一顯示器尺寸;對(duì)一個(gè)或多個(gè)參數(shù)應(yīng)用縮放因子以創(chuàng)建用于按照該像素密度來渲染內(nèi)容的一個(gè)或多個(gè)經(jīng)縮放參數(shù);以及將調(diào)用發(fā)送給API,其中該API致使一個(gè)或多個(gè)處理器基于一個(gè)或多個(gè)經(jīng)縮放參數(shù)對(duì)內(nèi)容執(zhí)行光柵化和像素處理;以及合成器組件,用于致使按照該像素密度在計(jì)算設(shè)備的顯示器上顯示內(nèi)容。
示例B,示例A的計(jì)算設(shè)備,其中一個(gè)或多個(gè)傳感器包括包含一個(gè)或多個(gè)聲學(xué)發(fā)射機(jī)和接收機(jī)的一個(gè)或多個(gè)聲學(xué)傳感器,一個(gè)或多個(gè)聲學(xué)發(fā)射機(jī)和接收機(jī)位于顯示器處并且與顯示器面向相同方向。
示例C,示例A或B的計(jì)算設(shè)備,其中一個(gè)或多個(gè)傳感器通過以下來確定計(jì)算設(shè)備的顯示器與用戶之間的查看距離:由一個(gè)或多個(gè)聲學(xué)發(fā)射機(jī)以預(yù)定義頻率來發(fā)送信號(hào);由一個(gè)或多個(gè)聲學(xué)接收機(jī)檢測已經(jīng)反射離開計(jì)算設(shè)備的用戶的該信號(hào)的至少一部分;確定發(fā)送信號(hào)以及檢測到已經(jīng)被反射的信號(hào)的部分之間的時(shí)間段;以 及基于該時(shí)間段和該預(yù)定義頻率,確定計(jì)算設(shè)備的顯示器與用戶之間的查看距離。
示例D,示例A-C中的任一者的計(jì)算設(shè)備,其中信號(hào)按照第一采樣率來發(fā)送而檢測按照第二采樣率來執(zhí)行。
示例E,示例A-D中的任一者的計(jì)算設(shè)備,其中分辨率控制組件通過以下來確定像素密度:至少部分地基于視覺敏銳度值、查看距離和顯示器的尺寸來采用一個(gè)或多個(gè)算法來計(jì)算用來顯示內(nèi)容的像素密度;或者查詢存儲(chǔ)在存儲(chǔ)器中并且用預(yù)定義像素密度來填充的查找表,以標(biāo)識(shí)用來顯示內(nèi)容的像素密度,每一個(gè)預(yù)定義像素密度與一個(gè)或多個(gè)預(yù)定義距離測量相關(guān)聯(lián),以及從查找表中選擇與該距離測量相關(guān)聯(lián)的像素密度。
示例F,示例A-E中的任一者的計(jì)算設(shè)備,其中預(yù)定視覺敏銳度值基于以下至少之一:通過由分辨率控制器提供的用戶界面接收到的因用戶而異的視覺敏銳度;或者約20/20的視覺敏銳度。
示例G,示例A-F中的任一者的計(jì)算設(shè)備,其中分辨率組件進(jìn)一步與一個(gè)或多個(gè)圖形處理操作交互以通過以下來修改內(nèi)容:截取從API發(fā)送到合成器組件的調(diào)用;以及對(duì)一個(gè)或多個(gè)經(jīng)縮放的參數(shù)應(yīng)用第二縮放因子以按照與第一顯示器尺寸相同的尺寸在顯示器上顯示內(nèi)容。
示例H,一種方法,包括:在一個(gè)或多個(gè)處理器的控制之下:確定計(jì)算設(shè)備的顯示器與計(jì)算設(shè)備的用戶之間的查看距離;接收要在計(jì)算設(shè)備的顯示器上顯示的內(nèi)容,該內(nèi)容采用第一像素密度;至少部分地基于查看距離,計(jì)算內(nèi)容的經(jīng)更新的像素密度;截取從與內(nèi)容相關(guān)聯(lián)的應(yīng)用發(fā)送到計(jì)算設(shè)備的應(yīng)用編程接口(API)的調(diào)用,該調(diào)用包括要由一個(gè)或多個(gè)處理器在顯示器上渲染內(nèi)容的請(qǐng)求并且指示用于按照第一像素密度來渲染內(nèi)容的一個(gè)或多個(gè)參數(shù),第一像素密度包括第一顯示器尺寸;對(duì)一個(gè)或多個(gè)參數(shù)應(yīng)用縮放因子以創(chuàng)建用于按照經(jīng)更新的像素密度來渲染內(nèi)容的一個(gè)或多個(gè)經(jīng)縮放參數(shù);以及將調(diào)用發(fā)送給API,其中API致使一個(gè)或多個(gè)處理器執(zhí)行渲染操作以在顯示器上顯示內(nèi)容;以及致使按照經(jīng)更新的像素密度在計(jì)算設(shè)備的顯示器上顯示內(nèi)容。
示例I,示例H的方法,其中確定計(jì)算設(shè)備與計(jì)算設(shè)備的用戶之間的查看距離包括:采用計(jì)算設(shè)備的一個(gè)或多個(gè)聲學(xué)傳感器從鄰近顯示器的位置朝用戶發(fā)射信號(hào),該信號(hào)以第一頻率來傳送;
在一個(gè)或多個(gè)聲學(xué)傳感器處接收已經(jīng)反射離開用戶的信號(hào)的至少一部分;
確定發(fā)射信號(hào)與接收到反射離開用戶的信號(hào)的至少一部分之間的時(shí)間量;以及
至少部分地基于該時(shí)間量和該第一頻率,確定計(jì)算設(shè)備與用戶之間的查看距離。
示例J,示例H或I的方法,其中計(jì)算內(nèi)容的經(jīng)更新的像素密度包括至少部分地基于視覺敏銳度值、查看距離、和顯示器的尺寸來計(jì)算用于顯示內(nèi)容的像素密度。
示例K,示例H-J中的任一者的方法,其中視覺敏銳度值基于通過顯示器的用戶界面接收到的因用戶而異的視覺敏銳度。
示例L,示例H-K中的任一者的方法,其中內(nèi)容按照經(jīng)更新的分辨率以及按照與第一顯示器尺寸相同的尺寸在顯示器上顯示。
示例M,示例H-L中的任一者的方法,其中一個(gè)或多個(gè)聲學(xué)傳感器包括一個(gè)或多個(gè)超音傳感器或次聲傳感器。
示例N,示例H-M中的任一者的方法,其中一個(gè)或多個(gè)超音傳感器或次聲傳感器發(fā)射高于上閾值頻率或低于下閾值頻率的信號(hào)。
示例O,示例H-N中的任一者的方法,進(jìn)一步包括對(duì)一個(gè)或多個(gè)經(jīng)縮放的參數(shù)應(yīng)用第二縮放因子以按照與第一顯示器尺寸相同的尺寸在顯示器上顯示內(nèi)容。
結(jié)語
總而言之,盡管用對(duì)結(jié)構(gòu)特征和/或方法動(dòng)作專用的語言描述了各實(shí)施方式,但可以理解,所附權(quán)利要求書中定義的主題不必限于所述具體特征或動(dòng)作。相反,這些具體特征和動(dòng)作是作為實(shí)現(xiàn)所要求保護(hù)的主題內(nèi)容的示例形式而公開的。