暴露媒體處理特征的制作方法
【專利摘要】本文描述設(shè)備和系統(tǒng)。該設(shè)備包括呈現(xiàn)視頻的邏輯。該設(shè)備還包括響應于功率消耗而調(diào)整視頻的特征的邏輯,其中調(diào)整視頻的特征的邏輯被集成到設(shè)備的操作系統(tǒng)中。
【專利說明】暴露媒體處理特征
【技術(shù)領(lǐng)域】
[0001]本公開的實施例涉及媒體處理,更具體來說,涉及用于媒體處理的方法、裝置和系統(tǒng)。
【背景技術(shù)】
[0002]諸如平板和智能電話之類的移動裝置可使用操作系統(tǒng)或者提供對裝置的某些硬件資源的訪問的框架來操作。Android框架包括內(nèi)核、中間件、庫以及訪問裝置硬件的各種應用編程接口(API)。Android框架的媒體框架部分稱作Stagefright。Stagefright實現(xiàn)各種媒體功能。如本文所使用的“媒體功能”是視頻重放、視頻記錄、音頻重放、音頻記錄、圖像捕獲、圖像呈現(xiàn)等等。
【發(fā)明內(nèi)容】
[0003]按照本公開的一個方面,提供一種用于暴露媒體處理特征的設(shè)備,所述設(shè)備包括:呈現(xiàn)視頻的邏輯;當所述設(shè)備呈現(xiàn)視頻時響應于功率消耗而調(diào)整視頻的特征的邏輯,其中,所述調(diào)整視頻的特征的邏輯被集成到所述設(shè)備的操作系統(tǒng)中。
[0004]按照本公開的另一方面,提供一種用于暴露媒體處理特征的系統(tǒng),包括:配置成執(zhí)行所存儲指令的處理器以及存儲指令的存儲裝置,其中所述存儲裝置包括處理器可執(zhí)行代碼,所述代碼在由所述處理器執(zhí)行時配置成:
執(zhí)行媒體功能;
確定所述系統(tǒng)的功率狀態(tài);以及
基于所述系統(tǒng)的所述功率狀態(tài)來調(diào)整所述媒體功能的一個或多個特征。
[0005]按照本公開的又一方面,提供一種用于暴露媒體處理特征的系統(tǒng),包括:功率控制服務,其中,所述功率控制服務用來收集所述系統(tǒng)的組件的功率消耗狀態(tài);以及視頻重放調(diào)度器,其中,所述視頻重放調(diào)度器計算確保所述系統(tǒng)完整地呈現(xiàn)視頻的所有可能的解決方案,并且使用所述系統(tǒng)的附加框架來修改一個或多個視頻處理特征。
[0006]按照本公開的再一方面,提供一種有形的非暫時的計算機可讀介質(zhì),包括代碼以指導處理器來:執(zhí)行媒體功能;確定系統(tǒng)的功率狀態(tài);以及基于所述系統(tǒng)的所述功率狀態(tài)來調(diào)整所述媒體功能的一個或多個特征。
【專利附圖】
【附圖說明】
[0007]圖1示出用于JAVA應用的暴露視頻處理框架;
圖2示出用于C/C++應用的暴露視頻處理框架;
圖3示出用于具有公共用戶界面(CUI)的JAVA應用的暴露視頻處理框架;
圖4是示出使用C/C++應用的用于暴露視頻處理特征的控制流程的簡圖;
圖5是采用JAVA應用的功率控制的框圖;
圖6是可按照實施例使用的計算裝置的框圖; 圖7是暴露媒體特征的示范系統(tǒng)的框圖;
圖8是可實施圖7的系統(tǒng)的小形狀因數(shù)裝置的示意圖;以及
圖9是示出存儲用于暴露媒體處理特征的代碼的有形的非暫時的計算機可讀介質(zhì)的框圖。
[0008]相同的標號在本公開和附圖中通篇用來表示相似的組件和特征。100系列中的標號表示最初見于圖1的特征;200系列中的標號表示最初見于圖2的特征;等等。
【具體實施方式】
[0009]如上所述,Android框架通過Stagefright實現(xiàn)媒體重放和記錄。Stagefright所支持的其它服務包括對于流播數(shù)據(jù)、媒體下載、漸進重放、視頻電話、音頻編解碼器、語音編解碼器、視頻編碼器和解碼器以及圖像編碼器和解碼器的網(wǎng)絡(luò)協(xié)議支持。Stagefright提供對視頻處理(例如調(diào)整視頻質(zhì)量)的訪問。例如,Android框架不支持使用Stagefright將降噪特征運用于媒體重放的應用。如視頻降噪之類的視頻處理通常由可編程管線(例如圖形呈現(xiàn)管線)來完成。其它視頻處理包括但不限于幀速率轉(zhuǎn)換(FRC)、圖像穩(wěn)定化、視頻縮放、組成、色調(diào)-飽和度-亮度-對比度(HSBC)。視頻處理能夠消耗媒體重放期間的大部分功率。另外,Android框架沒有實現(xiàn)對圖形驅(qū)動器中包含的或者嵌入處理單元(例如Intel?商標處理單元)中的視頻處理特征的訪問。結(jié)果,Android框架實現(xiàn)了媒體重放、記錄和捕獲,而沒有實現(xiàn)當執(zhí)行媒體重放、記錄和捕獲時對處理特征的調(diào)整。
[0010]本文所述的實施例實現(xiàn)附加框架,該附加框架在涉及功率消耗時調(diào)整媒體質(zhì)量。附加框架提供對嵌入裝置的硬件和驅(qū)動器中的媒體處理特征的訪問。使用附加框架,應用能夠確定完成媒體重放的時間量、捕獲剩余電池功率以及在媒體重放期間調(diào)整一個或多個視頻處理特征以降低功率消耗。結(jié)果,媒體功能能夠以功率感知方式來執(zhí)行,其中應用知道裝置可用的功率量,并且能夠調(diào)整裝置的媒體處理特征以延長可用功率。類似地,在實施例中,應用能夠確定媒體功能的類型、捕獲剩余電池功率以及在媒體記錄期間調(diào)整一個或多個處理特征以降低功率消耗。這樣,應用能夠通過對媒體功能的調(diào)整來節(jié)省功率消耗。雖然本文所提供的技術(shù)使用視頻重放媒體功能來描述,但是能夠使用任何媒體功能。例如,視頻記錄特征也可基于裝置的可用功率來暴露和調(diào)整。
[0011]在以下描述和權(quán)利要求書中,可使用術(shù)語“耦合”和“連接”及其派生詞。應當理解,這些術(shù)語并不是要作為彼此的同義詞。相反,在具體實施例中,“連接”可用來表示兩個或更多元件相互直接物理或電接觸?!榜詈稀笨杀硎緝蓚€或更多元件直接物理或電接觸。但是,“耦合”也可表示兩個或更多元件不是相互直接接觸,但是仍然相互配合或交互。
[0012]一些實施例可通過硬件、固件和軟件其中之一或者它們的組合來實現(xiàn)。一些實施例還可作為機器可讀介質(zhì)上存儲的指令來實現(xiàn),所述指令可由計算平臺讀取和執(zhí)行以完成本文所述的操作。機器可讀介質(zhì)可包括用于存儲或傳送機器(例如計算機)可讀形式的信息的任何機制。例如,機器可讀介質(zhì)可包括:只讀存儲器(ROM);隨機存取存儲器(RAM);磁盤存儲介質(zhì);光存儲介質(zhì);閃存裝置;或者電、光、聲或其它形式的傳播信號,例如載波、紅外信號、數(shù)字信號、或者發(fā)送和/或接收信號的接口等等。
[0013]一個實施例是一種實現(xiàn)或示例。本說明書中提到“實施例”、“一個實施例”、“一些實施例”、“各種實施例”或者“其它實施例”表示結(jié)合這些實施例所述的具體特征、結(jié)構(gòu)或特性包含在本發(fā)明的至少一些實施例中,但不一定是全部實施例中。各處出現(xiàn)的“實施例”、“一個實施例”或“一些實施例”不一定都指的是同一實施例。來自一個實施例的元件或方面能夠與另一實施例的元件或方面組合。
[0014]并非本文所述和所示的所有組件、特征、結(jié)構(gòu)、特性等都需要包含在一個或多個具體實施例中。例如,如果說明書提到組件、特征、結(jié)構(gòu)或特性“可”、“可能”、“能”或者“能夠”被包含,則并不要求包含該具體組件、特征、結(jié)構(gòu)或特性。如果說明書或權(quán)利要求書提到“一”或“一個”元件,則并不表示只有一個這種元件。如果說明書或權(quán)利要求書提到“一個附加”元件,則不排除存在不止一個這種附加元件的情況。
[0015]要注意,雖然一些實施例參照具體實現(xiàn)來描述,但是按照一些實施例,其它實現(xiàn)是可能的。另外,附圖所示和/或本文所述的電路元件或其它特征的布置和/或順序無需按照所示和所述的具體方式來布置。按照一些實施例,許多其它布置是可能的。
[0016]在附圖所示的各系統(tǒng)中,一些情況中的元件各可具有相同的參考標號或者不同的參考標號,以暗示所表示的元件可能是不同的和/或相似的。但是,元件可以足夠靈活以具有不同實現(xiàn),并且與本文所示或所述的系統(tǒng)的部分或全部配合工作。附圖所示的各種元件可以是相同的或不同的。哪個稱作第一元件和哪個稱作第二元件是任意的。
[0017]圖1示出用于JAVA應用的暴露視頻處理框架100。雖然本文所述的視頻處理框架100包含某些元件,但是視頻處理框架可包含比本文所述的那些元件更多或更少的元件。
[0018]視頻處理框架100包括硬件102。硬件102包括但不限于中央處理單元(CPU)、圖形處理單元(GPU)、圖形硬件、媒體引擎、數(shù)字信號處理器(DSP)、硬件加速器、數(shù)據(jù)存儲裝置、話筒、揚聲器、顯示器、存儲裝置和連網(wǎng)接口卡。GPU和其它圖形硬件可使用圖形驅(qū)動器104來操作。在實施例中,圖形驅(qū)動器104能夠向圖形硬件發(fā)出命令和中斷。
[0019]視頻處理框架100還包括視頻加速庫(LibVA) 106。LibVA 106實現(xiàn)硬件加速的視頻處理。例如,圖形硬件能夠用來從CPU卸載編碼和解碼過程,以使用LibVA 106來實現(xiàn)硬件加速。諸如運動補償、離散余弦逆變換、環(huán)內(nèi)去塊、幀內(nèi)預測、可變長度解碼和比特流處理之類的其它視頻處理特征能夠使用LibVA 106來卸載和加速。
[0020]至少一個或多個編解碼器庫108包含在視頻處理框架100中。編解碼器庫108包括用于視頻和音頻數(shù)據(jù)的編碼和解碼的各種編解碼器。Stagefright層110使用開放媒體加速(OpenMax)編程接口(1MX)與編解碼器庫108進行接口。通過使用Ι0ΜΧ,媒體應用能夠以平臺獨立方式來設(shè)計。Android軟件開發(fā)包(SDK)JAVA本地接口(JNI) 112用來使以JAVA編碼的應用114能夠調(diào)用以不同于JAVA的語言(例如C、C++和匯編語言)所編寫的庫和本地應用,以及被所述庫和本地應用調(diào)用。因此,獨立軟件廠商(ISV)應用114是以JAVA編寫的應用。
[0021]Stagefright層110不提供應用114訪問或修改視頻處理特征的功能性。為了給予應用114對視頻處理特征的訪問,SDK附件(SDK Add-On) 116用來得到指向1MX 117的指針。SDK附件116能夠使用1MX 117來訪問OpenMax擴展118。OpenMax擴展118可以是OpenMax集成層的組件,并且能夠用來訪問編解碼器庫108內(nèi)的各種編解碼器。具體來說,視頻處理中使用的編解碼器可使用視頻處理擴展120來訪問。視頻處理擴展訪問LibVA106以及圖形驅(qū)動器104,以根據(jù)需要執(zhí)行對視頻處理控制的調(diào)整。SDK附件116用來暴露Android框架內(nèi)的、使用Stagefright層110和Android SDK JNI 112不可訪問的視頻特征。此外,SDK附件116能夠用來訪問嵌入系統(tǒng)的圖形驅(qū)動器104和硬件102中的視頻處理特征。
[0022]質(zhì)量控制122表示由Android框架所播放的媒體的質(zhì)量。通過改變或調(diào)整所暴露的視頻處理特征,也可改變或調(diào)整媒體的質(zhì)量。媒體的質(zhì)量與包括這種框架的裝置的功率消耗相關(guān)。當媒體重放的質(zhì)量較高時,各視頻處理特征可用來產(chǎn)生高質(zhì)量媒體重放或記錄。但是,以這種方式使用視頻處理特征還消耗大量功率。因此,可降低視頻的質(zhì)量,以便降低媒體重放或記錄期間的功率消耗。
[0023]圖2示出用于C/C++應用的暴露視頻處理框架200。雖然本文所述的視頻處理框架200包含某些元件,但是視頻處理框架可包含比本文所述那些元件更多或更少的元件。
[0024]視頻處理框架200包括針對圖1所述的硬件102、圖形驅(qū)動器104、LibVA 106、編解碼器庫108、Stagefright層110和質(zhì)量控制122。視頻處理框架200還包括以C/C++編寫的獨立軟件廠商(ISV)應用202。當以C或C++來編寫應用202時,AndroidSDK JNI 112沒有用來在應用202與Stagefright層110之間進行接口,因為應用202和Stagefright層110是以相同編程語言來編寫的。因此,調(diào)用可在應用202與Stagefright層110之間未經(jīng)翻譯地傳遞。此外,Android框架中包含的媒體播放器服務接口(IMediaPlayerService) 204能夠用來得到如上所述的指向1MX 117的指針。以這種方式,MediaPlayerService 204用來暴露Android框架內(nèi)當應用202以C或C++編寫時使用Stagefright層110不可訪問的視頻特征。在實施例中,IMediaPlayerService 204充當執(zhí)行媒體功能的媒體播放器服務的代理。在示例中,應用202能夠通過IMediaPlayerService204向媒體播放器服務發(fā)送視頻處理控制。媒體播放器服務則可通過到編解碼器庫108的1MX接口 117來控制如視頻處理之類的特征。另外,應用202能夠用來訪問嵌入系統(tǒng)的圖形驅(qū)動器104和硬件102中的視頻處理特征。
[0025]圖3示出用于具有公共用戶界面(⑶I) 302的JAVA應用的暴露視頻處理框架300。雖然本文所述的視頻處理框架100包含某些元件,但是視頻處理框架可包含比本文所述那些元件更多或更少的元件。
[0026]視頻處理框架300包括針對圖1所述的硬件102、圖形驅(qū)動器104、LibVA 106、編解碼器庫 108、Stagefright 層 110、Android SDK 112、ISV 應用 114、SDK 附件 116、1MX117、Open Max擴展118、視頻處理擴展120和質(zhì)量控制122。提供⑶I 302,其實現(xiàn)用來調(diào)整視頻處理特征的接口。在實施例中,⑶I 302是Intel?CUI。此外,在實施例中,⑶I 302實現(xiàn)對視頻處理特征的全局變更。將全局變更運用于每個應用114,而與應用114的視頻處理設(shè)定無關(guān)。此外,在實施例中,一個或多個功率控制也可以是使用CUI 302可用的。功率控制表示裝置以及裝置的組件的功率狀態(tài)。如果裝置功率低于如用戶所確定的閾值,則視頻處理特征可使用⑶I 302來修改、調(diào)整或禁用。
[0027]圖4是示出使用C/C++應用的用于暴露視頻處理特征的控制流程的簡圖。在階段402, IMediaPlayerService 使用 IServiceManager: getService ( “media, play,,)命令來例示。在階段404,iMediaPlayerService用來訪問Ι0ΜΧ。在階段406,1MX用來列出所有節(jié)點,以得到特定OMX組件,該組件用來修改、改變或調(diào)整視頻處理特征。如本文所使用的“節(jié)點”是對應于編解碼器庫內(nèi)的各編解碼器的OMX組件。在階段408, SendCommand (async)命令或GetParameter(sync)用來修改、改變或調(diào)整視頻處理特征,如上所述。
[0028]圖5是采用JAVA應用的功率控制的框圖500。在圖5中,JAVA應用是JAVA播放器502。JAVA播放器502得到媒體內(nèi)容的大小。JAVA播放器502還計算媒體重放應當花費多長時間完成。功率狀態(tài)可從功率或電池服務504得到。使用SDK附件116,JAVA播放器502能夠得到視頻重放中使用的各視頻處理特征的功率消耗。具體來說,JAVA播放器502能夠得到來自圖形驅(qū)動器104或硬件102的功率消耗。SDK附件116能夠使用1MX 117來訪問OpenMax擴展118和視頻處理擴展120,以暴露能夠使用圖形驅(qū)動器104或硬件102來調(diào)整、修改或改變的視頻特征。媒體服務506還能夠控制編碼器和解碼器功能的軟件組件。
[0029]然后,JAVA播放器502能夠基于當前視頻處理特征和可用功率來計算它能夠支持的重放時間量。如果重放時間量不足以完整地播放預期內(nèi)容,則視頻處理特征能夠被改變、調(diào)整或修改,以便節(jié)省功率以使得能夠支持整個媒體重放。在實施例中,可使用SDK附件116、OpenMax擴展118和視頻處理擴展120來改變、調(diào)整或修改視頻處理特征,如上所述。在Android框架內(nèi)以功率感知方式來調(diào)整視頻處理特征,以便降低功率消耗,以滿足系統(tǒng)的當前媒體要求。通過利用Android SDK附件以及1MX接口,以避免Android框架的分裂的方式進行調(diào)整。其它媒體特征可基于可用功率量來修改、調(diào)整或禁用,以完整地執(zhí)行媒體功能。例如,當用戶期望使用圖像捕獲媒體功能時,所捕獲圖像的圖像處理能夠基于裝置可用的功率量來調(diào)整。
[0030]在實施例中,功率控制服務可用來收集便攜裝置內(nèi)的組件的功率消耗狀態(tài)。組件包括但不限于圖形、W1-Fi/3G/Bluet00th、顯示器和操作系統(tǒng)。采用功率消耗信息,視頻重放調(diào)度器能夠計算確信視頻能夠播放到結(jié)束的所有可能的解決方案。如果以當前功率狀態(tài)不能完成視頻重放,則視頻重放調(diào)度器可使用戶能夠選擇所建議的解決方案。在實施例中,用戶可使用CUI來選擇所建議的解決方案。此外,在實施例中,功率控制服務可稱作功率狀態(tài)取樣器。因此,視頻重放的粒度基于裝置的功率狀態(tài)來選擇。此外,視頻重放調(diào)度器還可基于當前功率狀態(tài)來確定要采取什么動作,而不向用戶提出解決方案。具體來說,視頻重放調(diào)度器可修改、改變、調(diào)整或禁用視頻處理特征。例如,視頻重放調(diào)度器能夠降低視頻的幀速率,或者禁用某些重放特征、例如環(huán)內(nèi)去塊。
[0031]視頻重放調(diào)度器連同功率控制服務一起能夠基于各種粒度來控制視頻重放。例如,當電池的功率狀態(tài)降至總可用功率的40%時,視頻重放調(diào)度器能夠禁用某些特征。當電池的功率狀態(tài)降至總可用功率的20%時,視頻重放調(diào)度器能夠關(guān)閉未使用的硬件。視頻重放調(diào)度器所采取的節(jié)省功率的動作能夠隨著可用功率下降而變得更有效力。在實施例中,視頻重放調(diào)度器能夠調(diào)用圖形呈現(xiàn)管線內(nèi)的各個組件,以執(zhí)行質(zhì)量縮放,例如幀速率降低和禁用某些視頻后處理特征,以便節(jié)省功率。此外,在調(diào)度器修改、改變或禁用媒體特征之前,圖形呈現(xiàn)管線內(nèi)的各個組件向調(diào)度器發(fā)送可縮放質(zhì)量控制選項。
[0032]圖6是可按照實施例使用的計算裝置600的框圖。計算裝置600可以是例如膝上型計算機、臺式計算機、超級本、平板計算機、移動裝置或服務器等等。計算裝置600可包括中央處理單元(CPU) 602 (其配置成執(zhí)行所存儲指令)以及存儲器裝置604 (其存儲CPU 602可執(zhí)行的指令)。CPU可通過總線606耦合到存儲器裝置604。另外,CPU 602能夠是單核處理器、多核處理器、計算集群或者任何數(shù)量的其它配置。此外,計算裝置600可包括不止一個 CPU 602。
[0033]計算裝置600還可包括圖形處理單元(GPU) 608。如所示,CPU 602可通過總線606耦合到GPU 608。GPU 608可配置成執(zhí)行計算裝置600內(nèi)的任何數(shù)量的圖形操作。例如,GPU608可配置成呈現(xiàn)或操縱圖形圖像、圖形幀、視頻等,以便向計算裝置600的用戶顯示。
[0034]存儲器裝置604能夠包括隨機存取存儲器(RAM)、只讀存儲器(ROM)、閃存或者任何其它適當存儲器系統(tǒng)。例如,存儲器裝置604可包括動態(tài)隨機存取存儲器(DRAM)。計算裝置600包括圖像捕獲機構(gòu)610。在實施例中,圖像捕獲機構(gòu)610是照相機、立體照相機、掃描儀、紅外傳感器等。
[0035]CPU 602可通過總線606鏈接到顯示器接口 612,顯示器接口 612配置成將計算裝置600連接到顯示裝置614。顯示裝置614可包括作為計算裝置600的內(nèi)置組件的顯示屏幕。顯示裝置614還可包括外部連接到計算裝置600的計算機監(jiān)視器、電視機或投影儀等坐寸ο
[0036]CPU 602還可通過總線606連接到輸入/輸出(I/O)裝置接口 616,I/O裝置接口616配置成將計算裝置600連接到一個或多個I/O裝置618。I/O裝置618可包括例如鍵盤和定點裝置,其中定點裝置可包括觸摸板或觸摸屏等等。I/O裝置618可以是計算裝置600的內(nèi)置組件,或者可以是外部連接到計算裝置600的裝置。
[0037]計算裝置還包括存儲裝置620。存儲裝置620是物理存儲器,諸如硬盤驅(qū)動器、光驅(qū)動器、拇指驅(qū)動器(thumbdrive)、驅(qū)動器陣列或者它們的任何組合。存儲裝置620還可包括遠程存儲驅(qū)動器。計算裝置600還可包括網(wǎng)絡(luò)接口控制器(NIC)622,NIC 622可配置成通過總線606將計算裝置600連接到網(wǎng)絡(luò)624。網(wǎng)絡(luò)624可以是廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)或因特網(wǎng)等等。
[0038]圖6的框圖不是要表明計算裝置600將包含圖6所示的所有組件。此外,計算裝置600可包括圖6未示出的任何數(shù)量的附加組件,這取決于特定實現(xiàn)的細節(jié)。
[0039]圖7是暴露媒體特征的示范系統(tǒng)700的框圖。相似標號的項目如針對圖6所述。在一些實施例中,系統(tǒng)700是媒體系統(tǒng)。另外,系統(tǒng)700可結(jié)合到個人計算機(PC)、膝上型計算機、超膝上型計算機、服務器計算機、平板、觸摸板、便攜計算機、手持計算機、掌上計算機、個人數(shù)字助理(PDA)、蜂窩電話、組合蜂窩電話/PDA、電視機、智能裝置(例如智能電話、智能平板或者智能電視機)、移動因特網(wǎng)裝置(MID)、消息傳遞裝置、數(shù)據(jù)通信裝置、打印裝置、嵌入式裝置等等中。
[0040]在各種實施例中,系統(tǒng)700包括耦合到顯示器704的平臺702。平臺702可從諸如內(nèi)容服務裝置706或內(nèi)容傳遞裝置708之類的內(nèi)容裝置或者其它類似內(nèi)容源接收內(nèi)容。包括一個或多個導航特征的導航控制器710可用來與例如平臺702和/或顯示器704進行交互。下面更詳細描述這些組件中的每一個。
[0041]平臺702可包括芯片組712、中央處理單元(CPU) 602、存儲器裝置604、存儲裝置620、圖形子系統(tǒng)714、應用720和無線電單元716的任何組合。芯片組712可提供CPU 602、存儲器裝置604、存儲裝置622、圖形子系統(tǒng)714、應用720和無線電單元716之間的相互通信。例如,芯片組712可包括存儲適配器(未示出),其能夠提供與存儲裝置620的相互通信。應用720可以是如上所述的應用114、應用202或者應用502。
[0042]CPU 602可實現(xiàn)為復雜指令集計算機(CISC)或簡化指令集計算機(RISC)處理器、x86指令集兼容處理器、多核或者任何其它微處理器或中央處理單元(CPU)。在一些實施例中,CPU 602包括多核處理器、多核移動處理器等。存儲器裝置604可實現(xiàn)為易失性存儲器裝置,諸如但不限于隨機存取存儲器(RAM)、動態(tài)隨機存取存儲器(DRAM)或靜態(tài)RAM(SRAM)。存儲裝置620可實現(xiàn)為非易失性存儲裝置,諸如但不限于磁盤驅(qū)動器、光盤驅(qū)動器、磁帶驅(qū)動器、固態(tài)驅(qū)動器、內(nèi)部存儲裝置、附連存儲裝置、閃存、電池支持的SDRAM(同步DRAM)和/或網(wǎng)絡(luò)可訪問的存儲裝置。在一些實施例中,例如,存儲裝置620包括在包括多個硬盤驅(qū)動器時為有價值的數(shù)字媒體增加存儲性能增強保護的技術(shù)。
[0043]圖形子系統(tǒng)714可執(zhí)行諸如靜止或視頻之類的圖像的處理以供顯示。例如,圖形子系統(tǒng)714可包括圖形處理單元(GPU),諸如GPU 608或視覺處理單元(VPU)。模擬或數(shù)字接口可用來在通信上耦合圖形子系統(tǒng)714和顯示器704。例如,接口可以是高清晰度多媒體接口、DisplayPort、無線HDMI和/或符合無線HD的技術(shù)中的任一個。圖形子系統(tǒng)714可集成到CPU 602或芯片組712中。備選地,圖形子系統(tǒng)714可以是通信上耦合到芯片組712的獨立卡。
[0044]本文所述的圖形和/或視頻處理技術(shù)可在各種硬件架構(gòu)中實現(xiàn)。例如,圖形和/或視頻功能性可集成在芯片組712內(nèi)。備選地,可使用分立的圖形和/或視頻處理器。作為又一個實施例,圖形和/或視頻功能可通過包括多核處理器的通用處理器來實現(xiàn)。在另一實施例中,這些功能可在消費電子裝置中實現(xiàn)。
[0045]無線電單元716可包括一個或多個無線電單元,其能夠使用各種適當?shù)臒o線通信技術(shù)來發(fā)送和接收信號。這類技術(shù)可涉及跨一個或多個無線網(wǎng)絡(luò)的通信。示范無線網(wǎng)絡(luò)包括無線局域網(wǎng)(WLAN)、無線個人區(qū)域網(wǎng)(WPAN)、無線城域網(wǎng)(WMAN)、蜂窩網(wǎng)絡(luò)、衛(wèi)星網(wǎng)絡(luò)等。在跨這類網(wǎng)絡(luò)的通信中,無線電單元716可按照任何版本的一個或多個適用標準來操作。
[0046]顯示器704可包括任何電視機類型監(jiān)視器或顯示器。例如,顯示器704可包括計算機顯示屏幕、觸摸屏顯示器、視頻監(jiān)視器、電視機等。顯示器704可以是數(shù)字的和/或模擬的。在一些實施例中,顯示器704是全息顯示器。另外,顯示器704可以是可接收視覺投影的透明表面。這類投影可傳達各種形式的信息、圖像、對象等。例如,這類投影可以是移動增強現(xiàn)實(MAR)應用的視覺覆蓋。在一個或多個應用720的控制下,平臺702可在顯示器704上顯示用戶界面718。
[0047]內(nèi)容服務裝置706可由任何國家的、國際的或獨立的服務來接管,并且因而可以是平臺702經(jīng)由例如因特網(wǎng)可訪問的。內(nèi)容服務裝置706可耦合到平臺702和/或顯示器704。平臺702和/或內(nèi)容服務裝置706可耦合到網(wǎng)絡(luò)624,以便向和從網(wǎng)絡(luò)624傳遞(例如發(fā)送和/或接收)媒體信息。內(nèi)容傳遞裝置708還可耦合到平臺702和/或顯示器704。
[0048]內(nèi)容服務裝置706可包括有線電視盒、個人計算機、網(wǎng)絡(luò)、電話或者能夠傳遞數(shù)字信息的因特網(wǎng)使能裝置。另外,內(nèi)容服務裝置706可包括能夠經(jīng)由網(wǎng)絡(luò)624或者直接地在內(nèi)容提供商與平臺702或顯示器704之間單向或雙向傳遞內(nèi)容的任何其它類似裝置。將會理解,可經(jīng)由網(wǎng)絡(luò)624向和從系統(tǒng)700中的任一個組件和內(nèi)容提供商單向和/或雙向傳遞內(nèi)容。內(nèi)容的示例可包括任何媒體信息,其中包括例如視頻、音樂、醫(yī)療和游戲信息等。
[0049]內(nèi)容服務裝置706可接收內(nèi)容,例如包括媒體信息的有線電視節(jié)目、數(shù)字信息或其它內(nèi)容。內(nèi)容提供商的示例可包括任何有線或衛(wèi)星電視或無線電或者因特網(wǎng)內(nèi)容提供商坐坐寸寸ο
[0050]在一些實施例中,平臺702從包括一個或多個導航特征的導航控制器710接收控制信號。例如,導航控制器710的導航特征可用來與用戶界面718進行交互。導航控制器710可以是定點裝置或者觸摸屏裝置,其可以是允許用戶將空間(例如連續(xù)并且多維的)數(shù)據(jù)輸入計算機中的計算機硬件組件(特別是人類界面裝置)。諸如圖形用戶界面(GUI)之類的許多系統(tǒng)以及電視機和監(jiān)視器允許用戶使用形體姿態(tài)來控制并且將數(shù)據(jù)提供給計算機或電視機。形體姿態(tài)包括但不限于臉部表情、臉部移動,各種肢體的移動,身體移動、身體語言或者它們的任何組合。這類形體姿態(tài)能夠被識別并且轉(zhuǎn)化為命令或指令。
[0051]通過移動顯示器704上顯示的指針、光標、聚焦環(huán)或者其它視覺指示符,可在顯示器704上仿效導航控制器710的導航特征的移動。例如,在應用720的控制下,位于導航控制器710上的導航特征可映射到用戶界面718上顯示的虛擬導航特征。在一些實施例中,導航控制器710可以不是分開的組件,而是可集成到平臺702和/或顯示器704中。
[0052]系統(tǒng)700可包括驅(qū)動器(未示出),驅(qū)動器包括例如在被啟用時使用戶能夠通過在初始引導之后觸摸按鈕來立即開啟和關(guān)斷平臺702的技術(shù)。程序邏輯可允許平臺702在平臺被“關(guān)斷”時,將內(nèi)容流播到媒體適配器或者其它內(nèi)容服務裝置706或內(nèi)容傳遞裝置708。另外,例如,芯片組712可包括對于6.1環(huán)繞聲音頻和/或高清晰度7.1環(huán)繞聲音頻的硬件和/或軟件支持。驅(qū)動器可包括用于集成圖形平臺的圖形驅(qū)動器。在一些實施例中,圖形驅(qū)動器包括外圍部件互連快遞(PCIe)圖形卡。
[0053]在各種實施例中,可集成系統(tǒng)700中所示組件的任一個或多個。例如,可集成平臺702和內(nèi)容服務裝置706 ;可集成平臺702和內(nèi)容傳遞裝置708 ;或者可集成平臺702、內(nèi)容服務裝置706和內(nèi)容傳遞裝置708。在一些實施例中,平臺702和顯示器704是集成單元。例如,可集成顯示器704和內(nèi)容服務裝置706,或者可集成顯示器704和內(nèi)容傳遞裝置708。
[0054]系統(tǒng)700可實現(xiàn)為無線系統(tǒng)或者有線系統(tǒng)。當實現(xiàn)為無線系統(tǒng)時,系統(tǒng)700可包括適合于通過無線共享介質(zhì)(諸如一個或多個天線、發(fā)射器、接收器、收發(fā)器、放大器、濾波器、控制邏輯等)進行通信的組件和接口。無線共享介質(zhì)的示例可包括無線譜的部分,例如RF譜。當實現(xiàn)為有線系統(tǒng)時,系統(tǒng)700可包括適合于通過有線通信介質(zhì)(諸如輸入/輸出(I/O)適配器、將I/O適配器與對應有線通信介質(zhì)連接的物理連接器、網(wǎng)絡(luò)接口卡(NIC)、盤控制器、視頻控制器、音頻控制器等)進行通信的組件和接口。有線通信介質(zhì)的示例可包括電線、電纜、金屬引線、印刷電路板(PCB)、底板、交換結(jié)構(gòu)、半導體材料、雙絞線、同軸電纜、光纖等等。
[0055]平臺702可建立一個或多個邏輯或物理信道以傳遞信息。信息可包括媒體信息和控制信息。媒體信息可指表示要用于用戶的內(nèi)容的任何數(shù)據(jù)。內(nèi)容的示例可包括例如來自語音對話的數(shù)據(jù)、視頻會議、流播視頻、電子郵件(email)消息、語音郵件消息、字母數(shù)字符號、圖形、圖像、視頻、文本等。來自語音對話的數(shù)據(jù)可以是例如話音信息、靜寂周期、背景噪聲、舒適噪聲、信號音等。控制信息可指表示要用于自動化系統(tǒng)的命令、指令或控制字的任何數(shù)據(jù)。例如,控制信息可用于通過系統(tǒng)路由媒體信息,或者指示節(jié)點以預定方式處理媒體信息。但是,實施例并不局限于圖7所示或所述的元件或上下文。
[0056]圖8是可實施圖7的系統(tǒng)700的小形狀因數(shù)裝置800的示意圖。相似標號的項目如針對圖7所述。在一些實施例中,例如,裝置800被實現(xiàn)為具有無線能力的移動計算裝置。例如,移動計算裝置可指具有處理系統(tǒng)和移動電源或電力供應(例如一個或多個電池)的任何裝置。
[0057]如上所述,移動計算裝置的示例可包括個人計算機(PC)、膝上型計算機、超膝上型計算機、服務器計算機、平板、觸摸板、便攜計算機、手持計算機、掌上計算機、個人數(shù)字助理(PDA)、蜂窩電話、組合蜂窩電話/PDA、電視機、智能裝置(例如智能電話、智能平板或者智能電視機)、移動因特網(wǎng)裝置(MID)、消息傳遞裝置、數(shù)據(jù)通信裝置等。
[0058]移動計算裝置的示例還可包括設(shè)置成供人佩戴的計算機,諸如手腕計算機、手指計算機、指環(huán)計算機、眼鏡計算機、皮帶夾計算機、臂章計算機、靴式計算機、服飾計算機或者任何其它適當類型的可佩戴計算機。例如,移動計算裝置可實現(xiàn)為智能電話,其能夠執(zhí)行計算機應用以及語音通信和/或數(shù)據(jù)通信。雖然作為舉例可采用實現(xiàn)為智能電話的移動計算裝置來描述一些實施例,但是可理解,其它實施例也可使用其它有線或無線移動計算裝置來實現(xiàn)。
[0059]如圖8所示,裝置800可包括殼體802、顯示器804、輸入/輸出(I/O)裝置806和天線808。裝置800還可包括導航特征812。顯示器804可包括用于顯示適合于移動計算裝置的信息的任何適當顯示器810單元。I/O裝置806可包括用于將信息輸入移動計算裝置中的任何適當I/O裝置。例如,I/O裝置806可包括字母數(shù)字鍵盤、數(shù)字小鍵盤、觸摸板、輸入按鍵、按鈕、開關(guān)、搖臂開關(guān)、話筒、揚聲器、語音識別裝置和軟件等。信息也可通過話筒輸入到裝置800中。這種信息可由語音識別裝置來數(shù)字化。
[0060]圖9是示出存儲用于暴露媒體處理特征的代碼的有形的非暫時的計算機可讀介質(zhì)900的框圖。有形的非暫時的計算機可讀介質(zhì)900可由處理器902通過計算機總線904來訪問。此外,有形的非暫時的計算機可讀介質(zhì)900可包括配置成指導處理器902執(zhí)行本文所述方法的代碼。
[0061]本文所述的各種軟件組件可存儲在一個或多個有形的非暫時的計算機可讀介質(zhì)900上,如圖9所示。例如,視頻控制模塊906可配置成執(zhí)行媒體功能。另外,視頻控制模塊基于系統(tǒng)的功率狀態(tài)來調(diào)整媒體功能的一個或多個特征。功率模塊908可配置成確定系統(tǒng)的功率狀態(tài)。
[0062]圖9的框圖不是要表明有形的非暫時的計算機可讀介質(zhì)900將包含圖9所示的所有組件。此外,有形的非暫時的計算機可讀介質(zhì)900可包括圖9未示出的任何數(shù)量的附加組件,這取決于特定實現(xiàn)的細節(jié)。
[0063]示例 I
本文描述一種設(shè)備。該設(shè)備包括呈現(xiàn)視頻的邏輯。另外,該設(shè)備包括當設(shè)備呈現(xiàn)視頻時響應于功率消耗而調(diào)整視頻的特征的邏輯,其中調(diào)整視頻的特征的邏輯被集成到設(shè)備的操作系統(tǒng)中。
[0064]調(diào)整視頻的特征的邏輯可以是應用編程接口(API),API使設(shè)備的應用能夠響應于功率消耗而調(diào)整視頻的特征。該設(shè)備還可包括確定設(shè)備的電池的剩余功率時間的邏輯,以及調(diào)整視頻的特征以使得視頻在設(shè)備的電池的剩余功率時間之內(nèi)完全呈現(xiàn)的邏輯。另夕卜,該設(shè)備可包括使用戶通過忽略基于功率消耗調(diào)整視頻的特征的邏輯來調(diào)整視頻的特征的邏輯,以及用于控制面板的邏輯,在控制面板中用戶能夠調(diào)整視頻的特征。此外,該設(shè)備可包括確定完全呈現(xiàn)視頻的時間長度的邏輯、確定電池的功率狀態(tài)的邏輯、對于視頻的特征確定從電池的功率消耗的邏輯、基于從電池的功率消耗和電池的功率狀態(tài)來計算使用該特征能夠呈現(xiàn)視頻的時間長度的邏輯、以及禁用特征以使得可完全呈現(xiàn)視頻的邏輯。操作系統(tǒng)可以是Android操作系統(tǒng)。另外,當修改或禁用視頻的特征時,可降低功率消耗。該特征可以是視頻處理特征。
[0065]示例2
本文描述一種系統(tǒng)。該系統(tǒng)包括配置成執(zhí)行所存儲指令的處理器以及存儲指令的存儲裝置,其中存儲裝置包括處理器可執(zhí)行代碼,其在由處理器執(zhí)行時配置成執(zhí)行媒體功能。處理器可執(zhí)行代碼還配置成確定系統(tǒng)的功率狀態(tài),并且基于系統(tǒng)的功率狀態(tài)來調(diào)整媒體功能的一個或多個特征。
[0066]一個或多個特征可以是視頻處理特征。確定系統(tǒng)的功率狀態(tài)可包括確定系統(tǒng)的電池的剩余功率時間。命令用戶界面可提供用戶能夠修改的設(shè)定,以便基于系統(tǒng)的功率狀態(tài)來調(diào)整媒體功能的一個或多個特征。功率控制服務可得到系統(tǒng)的各功能或組件的功率消耗狀態(tài)。此外,視頻重放調(diào)度器可基于系統(tǒng)的功率狀態(tài)來確定是否能夠完成媒體功能。該系統(tǒng)可以功率感知方式來執(zhí)行媒體功能。另外,一個或多個特征可包括幀速率轉(zhuǎn)換(FRC)、圖像穩(wěn)定化、視頻縮放、組成、色調(diào)-飽和度-亮度-對比度(HSBC)、修改媒體功能的任何其它處理中的至少一個或者它們的任何組合。
[0067]示例3
本文描述一種系統(tǒng)。該系統(tǒng)包括功率控制服務,其中功率控制服務用來收集系統(tǒng)的組件的功率消耗狀態(tài)。該系統(tǒng)還包括視頻重放調(diào)度器,其中視頻重放調(diào)度器計算確保系統(tǒng)完整呈現(xiàn)視頻的所有可能的解決方案,并且使用系統(tǒng)的附加框架來修改一個或多個視頻處理特征。
[0068]圖形呈現(xiàn)管線可向視頻重放調(diào)度器發(fā)送可縮放質(zhì)量控制選項。另外,命令用戶界面修改系統(tǒng)的一個或多個視頻處理特征。
[0069]示例 4
本文描述一種有形的非暫時的計算機可讀介質(zhì)。有形的非暫時的計算機可讀介質(zhì)包括指導處理器執(zhí)行媒體功能、確定系統(tǒng)的功率狀態(tài)以及基于系統(tǒng)的功率狀態(tài)來調(diào)整媒體功能的一個或多個特征的代碼。
[0070]要理解,上述示例中的具體細節(jié)可在一個或多個實施例中的任何位置使用。例如,上述計算裝置的所有可選特征也可針對本文所述的方法或計算機可讀介質(zhì)的任一個來實現(xiàn)。此外,雖然本文中可能使用了流程圖和/或狀態(tài)圖來描述實施例,但是,本發(fā)明并不局限于那些簡圖或者本文中的對應描述。例如,流程無需經(jīng)過每個所示的框或狀態(tài),或者按照與本文所示和所述的順序完全相同的順序。
[0071]本發(fā)明并不局限于本文所列出的具體細節(jié)。實際上,獲益于本公開的本領(lǐng)域的技術(shù)人員會理解,在本發(fā)明的范圍內(nèi)可對以上描述和附圖進行其它許多變更。因此,以下權(quán)利要求書以及對其的任何修改定義本發(fā)明的范圍。
【權(quán)利要求】
1.一種用于暴露媒體處理特征的設(shè)備,所述設(shè)備包括: 呈現(xiàn)視頻的邏輯; 當所述設(shè)備呈現(xiàn)視頻時響應于功率消耗而調(diào)整視頻的特征的邏輯,其中,所述調(diào)整視頻的特征的邏輯被集成到所述設(shè)備的操作系統(tǒng)中。
2.如權(quán)利要求1所述的設(shè)備,其中,所述調(diào)整視頻的特征的邏輯是應用編程接口(API),所述API使所述設(shè)備的應用能夠響應于所述功率消耗而調(diào)整所述視頻的特征。
3.如權(quán)利要求1所述的設(shè)備,還包括確定所述設(shè)備的電池的剩余功率時間以及調(diào)整所述視頻的特征以使得所述視頻在所述設(shè)備的所述電池的所述剩余功率時間之內(nèi)完全呈現(xiàn)的邏輯。
4.如權(quán)利要求1所述的設(shè)備,還包括使用戶通過忽略基于功率消耗來調(diào)整視頻的特征的所述邏輯來調(diào)整所述視頻的特征的邏輯。
5.如權(quán)利要求1所述的設(shè)備,還包括用于控制面板的邏輯,在所述控制面板中,用戶能夠調(diào)整所述視頻的特征。
6.如權(quán)利要求1所述的設(shè)備,還包括: 確定完全呈現(xiàn)所述視頻的時間長度的邏輯; 確定電池的功率狀態(tài)的邏輯; 對于所述視頻的特征確定從所述電池的所述功率消耗的邏輯; 基于從所述電池的所述功率消耗和所述電池的所述功率狀態(tài)來計算使用所述特征能夠呈現(xiàn)所述視頻的時間長度的邏輯;以及 禁用所述特征以使得所述視頻能夠被完全呈現(xiàn)的邏輯。
7.如權(quán)利要求1所述的設(shè)備,其中,所述操作系統(tǒng)是Android操作系統(tǒng)。
8.如權(quán)利要求1所述的設(shè)備,其中,當修改或禁用所述視頻的所述特征時,降低所述功率消耗。
9.如權(quán)利要求1所述的設(shè)備,其中,所述特征是視頻處理特征。
10.一種用于暴露媒體處理特征的系統(tǒng),包括: 配置成執(zhí)行所存儲指令的處理器以及存儲指令的存儲裝置,其中所述存儲裝置包括處理器可執(zhí)行代碼,所述代碼在由所述處理器執(zhí)行時配置成: 執(zhí)行媒體功能; 確定所述系統(tǒng)的功率狀態(tài);以及 基于所述系統(tǒng)的所述功率狀態(tài)來調(diào)整所述媒體功能的一個或多個特征。
11.如權(quán)利要求10所述的系統(tǒng),其中,所述一個或多個特征是視頻處理特征。
12.如權(quán)利要求10所述的系統(tǒng),其中,確定所述系統(tǒng)的功率狀態(tài)包括確定所述系統(tǒng)的電池的剩余功率時間。
13.如權(quán)利要求10所述的系統(tǒng),其中,命令用戶界面提供用戶能夠修改的設(shè)定,以便基于所述系統(tǒng)的所述功率狀態(tài)來調(diào)整所述媒體功能的所述一個或多個特征。
14.如權(quán)利要求10所述的系統(tǒng),其中,功率控制服務得到所述系統(tǒng)的各功能或組件的功率消耗狀態(tài)。
15.如權(quán)利要求10所述的系統(tǒng),其中,視頻重放調(diào)度器基于所述系統(tǒng)的所述功率狀態(tài)來確定是否能夠完成所述媒體功能。
16.如權(quán)利要求10所述的系統(tǒng),其中,所述系統(tǒng)以功率感知方式執(zhí)行所述媒體功能。
17.如權(quán)利要求10所述的系統(tǒng),其中,所述一個或多個特征包括幀速率轉(zhuǎn)換(FRC)、圖像穩(wěn)定化、視頻縮放、組成、色調(diào)-飽和度-亮度-對比度(HSBC)、修改所述媒體功能的任何其它處理中的至少一個或者它們的任何組合。
18.一種用于暴露媒體處理特征的系統(tǒng),包括: 功率控制服務,其中,所述功率控制服務用來收集所述系統(tǒng)的組件的功率消耗狀態(tài);以及 視頻重放調(diào)度器,其中,所述視頻重放調(diào)度器計算確保所述系統(tǒng)完整地呈現(xiàn)視頻的所有可能的解決方案,并且使用所述系統(tǒng)的附加框架來修改一個或多個視頻處理特征。
19.如權(quán)利要求18所述的系統(tǒng),其中,圖形呈現(xiàn)管線向所述視頻重放調(diào)度器發(fā)送可縮放質(zhì)量控制選項。
20.如權(quán)利要求18所述的系統(tǒng),其中,命令用戶界面修改所述系統(tǒng)的所述一個或多個視頻處理特征。
21.一種有 形的非暫時的計算機可讀介質(zhì),包括代碼以指導處理器來: 執(zhí)行媒體功能; 確定系統(tǒng)的功率狀態(tài);以及 基于所述系統(tǒng)的所述功率狀態(tài)來調(diào)整所述媒體功能的一個或多個特征。
22.如權(quán)利要求21所述的計算機可讀介質(zhì),其中,所述媒體功能是視頻重放功能,以及所述一個或多個特征是視頻處理特征。
【文檔編號】G06F1/32GK104049967SQ201410089362
【公開日】2014年9月17日 申請日期:2014年3月12日 優(yōu)先權(quán)日:2013年3月12日
【發(fā)明者】王長亮, 林云標, R.文卡塔拉曼 申請人:英特爾公司