用于多屏幕應(yīng)用程序的屏幕錄制的制作方法
【專利說明】用于多屏幕應(yīng)用程序的屏幕錄制
[0001]相關(guān)申請的交叉引用
[0002]本申請要求2013年3月15號提交的標(biāo)題為“SCREENCASTING FOR MULT1-SCREENAPPLICAT1NS”的美國非臨時專利申請?zhí)?3/843,693的優(yōu)先權(quán),并為其繼續(xù)申請,所述申請的公開內(nèi)容以引用方式整體并入本文。
技術(shù)領(lǐng)域
[0003]本說明書涉及顯示圖像或內(nèi)容,并且更具體地涉及在遠(yuǎn)程顯示器上顯示由本地計算裝置產(chǎn)生的圖像。
【背景技術(shù)】
[0004]傳統(tǒng)的遠(yuǎn)程桌面實現(xiàn)方案操作為客戶端/服務(wù)器計算環(huán)境??刂朴嬎銠C(jī)(在本上下文中被稱為客戶端)顯示從受控計算機(jī)(在這個上下文中是服務(wù)器)的顯示屏幕接收的圖像的副本。通常以定時間隔或者在遠(yuǎn)程控制軟件注意到屏幕上的改變時更新所述副本??刂朴嬎銠C(jī)上的軟件將其本身的鍵盤和鼠標(biāo)活動傳輸?shù)绞芸赜嬎銠C(jī),在所述受控計算機(jī)中遠(yuǎn)程控制軟件實現(xiàn)這些動作。受控計算機(jī)隨后表現(xiàn)得好像所述動作是直接在那個計算機(jī)處執(zhí)行的。在許多情況下,本地顯示器和輸入裝置可能被禁用,從而使得不能查看或干涉遠(yuǎn)程會話。
【發(fā)明內(nèi)容】
[0005]根據(jù)一個一般方面,一種方法可包括通過本地計算裝置的處理器來確定網(wǎng)頁的用于渲染以便通過遠(yuǎn)程裝置的遠(yuǎn)程顯示器顯示的部分。所述方法還可包括通過基于遠(yuǎn)程裝置的至少一個特性渲染網(wǎng)頁的所述部分來產(chǎn)生渲染的呈現(xiàn)信息。所述方法可包括將渲染的呈現(xiàn)信息傳輸?shù)竭h(yuǎn)程裝置。
[0006]實現(xiàn)方案可包括以下特征中的一個或多個。例如,產(chǎn)生渲染的呈現(xiàn)信息可包括選擇與遠(yuǎn)程顯示器相關(guān)聯(lián)的一組呈現(xiàn)特性信息和/或基于與遠(yuǎn)程顯示器相關(guān)聯(lián)的所述一組呈現(xiàn)特性信息來渲染網(wǎng)頁的所述部分。傳輸可包括根據(jù)實時通信協(xié)議重新格式化渲染的呈現(xiàn)信息。實時通信協(xié)議可大致順應(yīng)網(wǎng)絡(luò)實時通信(WebRTC)。網(wǎng)頁的用于渲染以便顯示的部分可包括音頻部分。產(chǎn)生渲染的呈現(xiàn)信息可包括基于遠(yuǎn)程裝置的音頻部件的至少一個特性產(chǎn)生音頻信號。
[0007]例如,所述方法的步驟可還包括:確定網(wǎng)頁的用于渲染以便通過本地計算裝置的本地顯示器顯示的第二部分;通過基于本地顯示器的至少一個特性渲染網(wǎng)頁的第二部分來產(chǎn)生第二渲染的呈現(xiàn)信息;和/或通過本地顯示器顯示第二渲染的呈現(xiàn)信息。另外,通過本地顯示器顯示第二渲染的呈現(xiàn)信息可包括使顯示第二渲染的呈現(xiàn)信息與渲染的呈現(xiàn)信息傳輸?shù)竭h(yuǎn)程裝置同步進(jìn)行。此外,網(wǎng)頁的用于渲染以便通過本地顯示器顯示的第二部分可包括網(wǎng)頁的用于渲染以便通過遠(yuǎn)程顯示器至少顯示的部分。所述方法的步驟還可包括通過本地計算裝置接收用戶輸入。另外,確定網(wǎng)頁的用于渲染以便通過遠(yuǎn)程顯示器顯示的部分可以是至少部分地基于用戶輸入。
[0008]根據(jù)另一個一般方面,一種設(shè)備可包括處理器和網(wǎng)絡(luò)接口。處理器可被配置來確定網(wǎng)頁的用于渲染以便通過遠(yuǎn)程裝置的遠(yuǎn)程顯示器顯示的部分,并且通過基于遠(yuǎn)程裝置的至少一個特性渲染網(wǎng)頁的所述部分來產(chǎn)生渲染的呈現(xiàn)信息。網(wǎng)絡(luò)接口可被配置來將渲染的呈現(xiàn)信息傳輸?shù)竭h(yuǎn)程裝置。
[0009]實現(xiàn)方案可包括以下特征中的一個或多個。例如,處理器可被配置來選擇與遠(yuǎn)程顯示器相關(guān)聯(lián)的一組呈現(xiàn)特性信息,和/或基于與遠(yuǎn)程顯示器相關(guān)聯(lián)的所述一組呈現(xiàn)特性信息來渲染網(wǎng)頁的所述部分。處理器可被配置來根據(jù)實時通信協(xié)議重新格式化渲染的呈現(xiàn)信息。實時通信協(xié)議可大致順應(yīng)網(wǎng)絡(luò)實時通信(WebRTC)。網(wǎng)頁的用于渲染以便顯示的至少部分可包括音頻部分。處理器可被配置來基于遠(yuǎn)程裝置的音頻部件的至少一個特性產(chǎn)生音頻信號。
[0010]例如,處理器可進(jìn)一步被配置來確定網(wǎng)頁的用于渲染以便通過設(shè)備的本地監(jiān)視器顯示的第二部分,和/或通過基于本地監(jiān)視器的至少一個特性渲染網(wǎng)頁的第二部分來產(chǎn)生第二渲染的呈現(xiàn)信息。本地監(jiān)視器可被配置來顯示第二渲染的呈現(xiàn)信息。處理器可進(jìn)一步被配置來使顯示第二渲染的呈現(xiàn)信息與渲染的呈現(xiàn)信息傳輸?shù)竭h(yuǎn)程裝置同步進(jìn)行。網(wǎng)頁的用于渲染以便通過本地監(jiān)視器顯示的第二部分可包括網(wǎng)頁的用于渲染以便通過遠(yuǎn)程顯示器至少顯示的部分。處理器可進(jìn)一步被配置來通過設(shè)備接收用戶輸入,和/或至少部分地基于用戶輸入確定網(wǎng)頁的用于渲染以便通過遠(yuǎn)程顯示器顯示的部分。
[0011]根據(jù)另一個一般方面,一種有形地體現(xiàn)的計算機(jī)可讀介質(zhì)可包括機(jī)器可執(zhí)行程序的可執(zhí)行代碼,所述可執(zhí)行代碼在被執(zhí)行時可被配置來致使設(shè)備:通過設(shè)備的處理器來確定網(wǎng)頁的用于渲染以便通過遠(yuǎn)程設(shè)備的遠(yuǎn)程呈現(xiàn)硬件部件呈現(xiàn)的部分;通過基于遠(yuǎn)程設(shè)備的至少一個特性渲染網(wǎng)頁的所述部分來產(chǎn)生渲染的呈現(xiàn)信息;并且將渲染的呈現(xiàn)信息傳輸?shù)竭h(yuǎn)程設(shè)備。
[0012]實現(xiàn)方案可包括以下特征中的一個或多個。例如,產(chǎn)生渲染的呈現(xiàn)信息可包括選擇與遠(yuǎn)程顯示器相關(guān)聯(lián)的一組呈現(xiàn)特性信息和/或基于與遠(yuǎn)程顯示器相關(guān)聯(lián)的所述一組呈現(xiàn)特性信息來渲染網(wǎng)頁的所述部分。傳輸可包括根據(jù)實時通信協(xié)議重新格式化渲染的呈現(xiàn)信息。實時通信協(xié)議可大致順應(yīng)網(wǎng)絡(luò)實時通信(WebRTC)。網(wǎng)頁的用于渲染以便顯示的部分可包括音頻部分。產(chǎn)生渲染的呈現(xiàn)信息可包括基于遠(yuǎn)程裝置的音頻部件的至少一個特性產(chǎn)生音頻信號。
[0013]例如,所述方法的步驟還可包括:確定網(wǎng)頁的用于渲染以便通過本地計算裝置的本地顯示器顯示的第二部分;通過基于本地顯示器的至少一個特性渲染網(wǎng)頁的第二部分來產(chǎn)生第二渲染的呈現(xiàn)信息;和/或通過本地顯示器顯示第二渲染的呈現(xiàn)信息。另外,通過本地顯示器顯示第二渲染的呈現(xiàn)信息可包括使顯示第二渲染的呈現(xiàn)信息與渲染的呈現(xiàn)信息傳輸?shù)竭h(yuǎn)程裝置同步進(jìn)行。此外,網(wǎng)頁的用于渲染以便通過本地顯示器顯示的第二部分可包括網(wǎng)頁的用于渲染以便通過遠(yuǎn)程顯示器至少顯示的部分。所述方法的步驟還可包括通過本地計算裝置接收用戶輸入。另外,確定網(wǎng)頁的用于渲染以便通過遠(yuǎn)程顯示器顯示的部分可以是至少部分地基于用戶輸入。
[0014]—個或多個實現(xiàn)方案的細(xì)節(jié)在附圖和以下描述中闡明。從描述和附圖,并且從權(quán)利要求書,將明確看出其他特征。
[0015]大致如結(jié)合至少一個附圖示出和/或描述的用于顯示信息的系統(tǒng)和/或方法在權(quán)利要求書中更全面地闡明。
【附圖說明】
[0016]圖1是根據(jù)所公開的主題的系統(tǒng)的示例性實施方案的框圖。
[0017]圖2是根據(jù)所公開的主題的系統(tǒng)的示例性實施方案的框圖。
[0018]圖3是根據(jù)所公開的主題的系統(tǒng)的示例性實施方案的框圖。
[0019]圖4是根據(jù)所公開的主題的技術(shù)的示例性實施方案的流程圖。
[0020]圖5示出可用于實現(xiàn)本文描述的技術(shù)的計算機(jī)裝置和移動計算機(jī)裝置的實例。
[0021]在各圖中,類似的參考符號指示類似的元件。
【具體實施方式】
[0022]圖1是根據(jù)所公開的主題的系統(tǒng)100的示例性實施方案的框圖。在一個實施方案中,系統(tǒng)100可包括由用戶190使用或操作的計算裝置102。在一些實施方案中,系統(tǒng)100還可包括被配置來顯示或呈現(xiàn)一個或多個音頻和/或視覺信號或一條或多條信息的顯示裝置104。在另一個實施方案中,系統(tǒng)100可包括被配置來提供一個或多個網(wǎng)頁170的一個或多個服務(wù)器裝置106。
[0023]在各種實施方案中,客戶端或處理裝置102可包括計算裝置,例如像膝上型計算機(jī)、桌上型計算機(jī)、工作站、個人數(shù)字助理、智能手機(jī)、平板電腦以及其他適當(dāng)?shù)挠嬎銠C(jī)等,或其虛擬機(jī)或虛擬計算裝置。在這種實施方案中,處理裝置102可包括足以產(chǎn)生用于由顯示裝置104顯示的呈現(xiàn)信息的計算資源(例如,處理能力、存儲器等)。
[0024]在這種實施方案中,處理裝置102可被配置來獲取網(wǎng)頁142或其他組原始信息,并且使用那個信息來產(chǎn)生所需的呈現(xiàn)信息以便將所述信息呈現(xiàn)給用戶191和/或用戶190。隨后可將這個呈現(xiàn)信息146傳達(dá)到顯示裝置104,在所述顯示裝置104中將其呈現(xiàn)給用戶191。
[0025]在這個上下文中,術(shù)語“呈現(xiàn)”和其各種單詞形式(例如,“呈現(xiàn)了”、“呈現(xiàn)的”等)可包括通過與一種感官知覺形式(例如,液晶顯示器(LCD)、耳機(jī)、觸覺硬件等)相關(guān)聯(lián)的至少一個硬件部件將信息輸出給用戶(例如,用戶191等)。例如,在一個實施方案中,向用戶呈現(xiàn)信息可僅包括向用戶顯示視頻信號或視覺信息。在另一個實施方案中,呈現(xiàn)可包括顯示視頻信號或視覺信息以及通過擴(kuò)音器向用戶播放音頻信號。在又一個實施方案中,其中顯示器或呈現(xiàn)裝置的輸出硬件包括觸覺硬件(例如,隆隆聲控制器、觸覺觸摸屏等),呈現(xiàn)可包括根據(jù)與這種觸覺裝置相關(guān)聯(lián)的信號或信息控制觸覺硬件。應(yīng)當(dāng)理解,以上只是一些說明性的實例,所公開的主題并不限于此。
[0026]在本文的各種實施方案中,在討論所公開的主題時術(shù)語“顯示”可用于說明性目的,應(yīng)當(dāng)理解,這只是說明性的并且所公開的主題并不僅僅限于信息的視覺呈現(xiàn)。
[0027]在各種實施方案中,計算裝置102可包括被配置來執(zhí)行一個或多個機(jī)器可執(zhí)行指令或一個或多個軟件、固件片段或其組合的處理器112。在一些實施方案中,計算裝置102可包括被配置來以暫時、永久、半永久或其組合的方式存儲一條或多條數(shù)據(jù)的存儲器114。另夕卜,存儲器114可包括易失性存儲器、非易失性存儲器或其組合。在各種實施方案中,計算裝置102可包括被配置來以半永久或大致永久的形式存儲數(shù)據(jù)的存儲介質(zhì)115。在各種實施方案中,存儲器114可包括存儲介質(zhì)115。在一些實施方案中,計算裝置102可包括一個或多個網(wǎng)絡(luò)接口 116,所述一個或多個網(wǎng)絡(luò)接口 116被配置來與一個或多個通信網(wǎng)絡(luò)(例如,有線網(wǎng)絡(luò)、無線網(wǎng)絡(luò)、蜂窩網(wǎng)絡(luò)等)相關(guān)聯(lián)并且通過所述一個或多個通信網(wǎng)絡(luò)進(jìn)行通信。在一些實施方案中,計算裝置102可包括人類輸出裝置(HOD)118,如監(jiān)視器、顯示器、擴(kuò)音器、耳機(jī)等,計算裝置102可通過所述HOD 118向用戶190呈現(xiàn)信息。在各種實施方案中,計算裝置102可包括一個或多個其他硬件部件113(例如,鍵盤、觸摸屏、照相機(jī)、指紋讀取器、視頻處理器等)O
[0028]在各種實施方案中,計算裝置102可包括操作系統(tǒng)(OS)117,所述OS 117被配置來向應(yīng)用程序120提供一種或多種服務(wù)并且管理應(yīng)用程序(例如,應(yīng)用程序120等)和計算裝置102的各種硬件部件(例如,處理器112、網(wǎng)絡(luò)接口 116等)或充當(dāng)它們之間的中介。
[0029]在這種實施方案中,計算裝置102可包括一個或多個本地應(yīng)用程序(例如,應(yīng)用程序120等),所述一個或多個本地應(yīng)用程序可安裝在本地(例如,在存儲介質(zhì)115內(nèi)等)并且被配置來由處理器112直接執(zhí)行且直接與OS 117相互作用。在這種實施方案中,本地應(yīng)用程序可包括預(yù)編譯的機(jī)器可執(zhí)行代碼。在一些實施方案中,本地應(yīng)用程序可包括被配置來將源代碼或目標(biāo)代碼翻譯成隨后由處理器112執(zhí)行的可執(zhí)行代碼的腳本解釋器(例如,C shell(csh)、AppleScript、AutoHotKey等)或虛擬機(jī)(例如,Java虛擬機(jī)、微軟公共語言運行時等)O
[0030]在一些實施方案中,計算裝置102可包括網(wǎng)絡(luò)瀏覽器120,所述網(wǎng)絡(luò)瀏覽器120被配置來從物理遠(yuǎn)程服務(wù)器或網(wǎng)絡(luò)服務(wù)器(例如,服務(wù)器106等)訪問網(wǎng)站或網(wǎng)頁、腳本等的集合。在一些實施方案中,可包括網(wǎng)絡(luò)瀏覽器120作為本地應(yīng)用程序中的一個或操作系統(tǒng)117的一部分。
[0031]在各種實施方案中,網(wǎng)絡(luò)應(yīng)用程序120可被配置來在圖形用戶界面(GUI)中同時顯示若干文檔或網(wǎng)頁。在GUI的區(qū)域中,標(biāo)簽式文檔界面(T