專利名稱:向遠(yuǎn)程客戶機(jī)發(fā)送可視內(nèi)容的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及改變可視內(nèi)容通信,尤其涉及向遠(yuǎn)程客戶機(jī)發(fā)送可視內(nèi)容的方法和系統(tǒng)。
背景技術(shù):
在終端服務(wù)器會(huì)話中傳遞視頻內(nèi)容可能是效率低下的,因?yàn)樾纬梢曨l內(nèi)容的相對(duì)較大量的數(shù)據(jù)可以頻繁地連同其它可視內(nèi)容一起更新。例如,視頻數(shù)據(jù)可以與諸如文本等其它屏幕內(nèi)容一起刷新和傳遞。附加內(nèi)容可以與視頻內(nèi)容一起傳遞,即使該附加內(nèi)容可能并非以與視頻內(nèi)容相同的速率改變。
發(fā)明內(nèi)容
討論用于呈現(xiàn)包括視頻、動(dòng)畫等在內(nèi)的改變的可視內(nèi)容作為覆蓋圖的技術(shù)。可以從包括在可視演示中的其它可視元素中標(biāo)識(shí)包括在該可視演示中的改變的可視內(nèi)容??苫谂c為客戶機(jī)呈現(xiàn)改變的可視內(nèi)容作為覆蓋圖相關(guān)聯(lián)的可用資源來操縱改變的可視內(nèi)容。提供本概述是為了以簡化的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概念。本概述不旨在標(biāo)識(shí)所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。
參考附圖來描述詳細(xì)描述。在附圖中,附圖標(biāo)記中最左邊的數(shù)字標(biāo)識(shí)該附圖標(biāo)記首次出現(xiàn)的附圖。在說明書和附圖中的不同的實(shí)例中使用相同的附圖標(biāo)記可指示相似或相同的項(xiàng)目。圖1示出了可使用改變的可視內(nèi)容的示例性實(shí)現(xiàn)中的環(huán)境。圖2是描繪傳遞改變的可視內(nèi)容時(shí)的示例性數(shù)據(jù)流的流程圖。圖3是描繪其中傳遞改變的可視內(nèi)容的示例性實(shí)現(xiàn)中的過程的流程圖。圖4是描繪其中將可視內(nèi)容作為覆蓋圖來傳遞的示例性實(shí)現(xiàn)中的過程的流程圖。
具體實(shí)施例方式概覽因此,描述了可準(zhǔn)許遠(yuǎn)程呈現(xiàn)改變的可視內(nèi)容的技術(shù),改變的可視內(nèi)容包括基于閾值或與其它可視內(nèi)容相比頻繁地改變的視頻內(nèi)容、動(dòng)畫等。例如,所標(biāo)識(shí)的改變的可視內(nèi)容可被表示為遠(yuǎn)程設(shè)備上的覆蓋圖。改變的可視內(nèi)容可以與未改變、以比改變的可視內(nèi)容更小的速率改變或未達(dá)到改變閾值的其它可視內(nèi)容不同地對(duì)待。將改變的可視內(nèi)容呈現(xiàn)為覆蓋圖可允許基于可用資源將形成內(nèi)容的數(shù)據(jù)作為改變的內(nèi)容(例如,視頻)來處理??梢圆倏v和傳遞改變的可視內(nèi)容以使得可以高效地使用可用資源。在各實(shí)現(xiàn)中,包括標(biāo)識(shí)模塊的系統(tǒng)可標(biāo)識(shí)改變的可視內(nèi)容。例如,包括超過所設(shè)閾值的屏幕更新的動(dòng)畫可基于表示動(dòng)畫內(nèi)容的位圖的寬高比來標(biāo)識(shí)。以此方式,改變的動(dòng)畫可以從其它可視內(nèi)容中標(biāo)識(shí)并基于此來操縱。所標(biāo)識(shí)的可視內(nèi)容可取決于可用資源來操縱。操縱可包括壓縮形成內(nèi)容的數(shù)據(jù),丟棄更新例如視頻幀等,這些可取決于可用于處理改變的可視內(nèi)容的資源來實(shí)現(xiàn)。示例性環(huán)境圖1示出了可遠(yuǎn)程地呈現(xiàn)改變的可視內(nèi)容的示例性實(shí)現(xiàn)中的環(huán)境100。圖2示出了可由此處所討論的示例性實(shí)現(xiàn)執(zhí)行的示例性技術(shù)和數(shù)據(jù)流。服務(wù)器系統(tǒng)102可包括用于確定可視內(nèi)容中是否包括改變的可視內(nèi)容的視頻檢測模塊104。例如,如果屏幕更新處理器模塊106提供視頻內(nèi)容和其它可視內(nèi)容(其可能不改變),視頻檢測模塊104可標(biāo)識(shí)所提供的可視內(nèi)容中改變的視頻內(nèi)容的存在。雖然主要討論視頻內(nèi)容,但示例性改變的可視內(nèi)容可包括但不限于可與其它可視數(shù)據(jù)相比而改變或改變超過所設(shè)閾值(例如,不改變)等的動(dòng)畫、過渡(諸如POWERPOINT (華盛頓州雷蒙德市的微軟公司)過渡)等。屏幕更新處理器模塊106可將諸如文本、圖形對(duì)象等其它可視內(nèi)容轉(zhuǎn)發(fā)給遠(yuǎn)程客戶機(jī)108以便顯示,同時(shí)如此處所討論的那樣處理改變的可視內(nèi)容。例如,其它可視內(nèi)容可以與視頻、動(dòng)畫或其它改變的可視內(nèi)容相比而較不頻繁地更新,如果前一可視分量名義上改變或不改變的話。與對(duì)改變的可視內(nèi)容和其它可視內(nèi)容應(yīng)用共同的壓縮方案相比,不同地對(duì)待其它可視內(nèi)容可最小化各種壓縮方案的影響。可以包括音頻處理器模塊110以便獲取與改變的可視內(nèi)容相關(guān)聯(lián)的音頻內(nèi)容。音頻內(nèi)容可以與改變的可視內(nèi)容分開處理以使得可以按內(nèi)容專用方式處理該內(nèi)容。對(duì)于未壓縮的視頻剪輯,可將音頻數(shù)據(jù)與視頻數(shù)據(jù)隔開以便隨后使用時(shí)間戳來重新組合以便在呈現(xiàn)在遠(yuǎn)程客戶機(jī)108上時(shí)將音頻數(shù)據(jù)與對(duì)應(yīng)的視頻數(shù)據(jù)同步。使用視頻檢測模塊104來標(biāo)識(shí)改變的可視內(nèi)容可準(zhǔn)許與其它可視內(nèi)容不同地處理底層數(shù)據(jù)。雖然可以按第一方式處理和傳遞改變的可視內(nèi)容(諸如試駕視頻112),但可以按不同的或第二方式對(duì)待未改變或最低限度改變的可視內(nèi)容以使得其它內(nèi)容不會(huì)過度消耗資源,并可準(zhǔn)許以改變的可視內(nèi)容專用的方式處理改變的可視內(nèi)容。視頻檢測模塊104可標(biāo)識(shí)處在未壓縮狀態(tài)中的改變的可視信息。其它可視內(nèi)容可以按比改變的可視內(nèi)容小的速率更新并由此最小化所傳送的總數(shù)據(jù)。視頻內(nèi)容或其它改變的可視內(nèi)容可基于包括可用于執(zhí)行任務(wù)的通信資源在內(nèi)的計(jì)算資源來編碼和/或傳遞。結(jié)果,可以高效地使用系統(tǒng)的編碼能力(諸如編碼器114-118)和通信資源(例如,網(wǎng)絡(luò)120)而不使計(jì)算資源陷入停頓,同時(shí)以改變的可視內(nèi)容專用的方式處理改變的可視內(nèi)容。例如,如果顯示器包括flash視頻以及文本和圖形對(duì)象,則該文本和圖形對(duì)象可以不改變或者可以與視頻內(nèi)容或用于將改變的內(nèi)容與不改變的內(nèi)容區(qū)分開來的閾值更新速率相比很少改變。不改變或最低限度改變的內(nèi)容的示例可包括但不限于可以不改變或者以與改變的可視內(nèi)容相比不頻繁地改變的文本、圖像對(duì)象等等。
在一示例中,可以在窗口中呈現(xiàn)試駕視頻112,同時(shí)可以在該顯示畫面的其它部分上呈現(xiàn)準(zhǔn)許用戶聯(lián)系經(jīng)銷商、接收?qǐng)?bào)價(jià)的文本和圖形對(duì)象122。相比較而言,顯示畫面的視頻部分與其它可視內(nèi)容或某一準(zhǔn)則相比可頻繁地改變。文本和圖形對(duì)象可保持不變或基于類似的比較或預(yù)定屏幕更新標(biāo)準(zhǔn)不頻繁地改變。視頻檢測模塊104可標(biāo)識(shí)可視內(nèi)容正基于各種準(zhǔn)則來改變。示例性準(zhǔn)則可包括但不限于屏幕更新頻率、寬高比、窗口類名、屏幕更新的進(jìn)程名等。此外,視頻內(nèi)容檢測模塊104可確定改變的內(nèi)容是否已經(jīng)停止播放或已被暫停。如果改變的內(nèi)容已停止,則視頻檢測模塊104可標(biāo)識(shí)在客戶機(jī)設(shè)備上復(fù)制時(shí)應(yīng)終止用于呈現(xiàn)改變的可視內(nèi)容的窗口。如果僅僅暫停改變的內(nèi)容的播放,則在客戶機(jī)設(shè)備上呈現(xiàn)改變的內(nèi)容的覆蓋圖可以保持,但可以不呈現(xiàn)內(nèi)容或者可以熄滅(black out)覆蓋圖。屏幕更新頻率可根據(jù)每秒屏幕更新次數(shù)來標(biāo)識(shí),例如,電影是每秒二十四幀,歐洲電視是每秒二十五幀,美國電視是每秒三十幀等。在各實(shí)現(xiàn)中,屏幕更新速率可用作確定可視內(nèi)容是否正在改變的閾值。上述示例僅僅是示例性的。在各實(shí)現(xiàn)中,可以使用準(zhǔn)則組合來標(biāo)識(shí)。在其它示例中,可以試探性地標(biāo)識(shí)改變的可視內(nèi)容。改變的可視內(nèi)容寬高比可根據(jù)表示該可視內(nèi)容的位圖的寬高比來標(biāo)識(shí)。例如,4:3比率可指示標(biāo)準(zhǔn)電視內(nèi)容,而16:9比率可指示寬屏改變內(nèi)容。窗口類名可包括用于呈現(xiàn)將至少部分地覆蓋將在其上呈現(xiàn)可視內(nèi)容的屏幕的窗口的呈現(xiàn)器的名稱。如果窗口具有4:3比率并且正以大致每秒二十四幀更新,則可標(biāo)識(shí)改變的可視內(nèi)容??梢曁幚砥髂K124可引導(dǎo)對(duì)所標(biāo)識(shí)的改變的可視內(nèi)容的操縱。例如,一旦被標(biāo)識(shí),就可如處理器模塊所引導(dǎo)的那樣基于可用于包括傳遞數(shù)據(jù)的處理的計(jì)算資源來操縱動(dòng)畫內(nèi)容。操縱可包括丟棄幀(對(duì)于視頻)或屏幕更新(對(duì)于動(dòng)畫);壓縮內(nèi)容;不發(fā)送改變的可視內(nèi)容;使用特定編碼方案等。例如,可以丟棄表示動(dòng)畫或視頻的位圖。例如,如果相對(duì)大量帶寬可用,則可視處理器模塊124可指示一個(gè)或多個(gè)編碼器114-118模塊實(shí)現(xiàn)簡單編碼方案(例如,有損編碼技術(shù))以最小化用于改變的可視內(nèi)容的處理器開銷。相反,如果可用帶寬有限,則可使用資源密集編碼技術(shù)來最小化帶寬消耗。也可考慮因素的組合,包括專用于其它無關(guān)任務(wù)的資源等。例如,編碼器模塊“1-N” 114-118可實(shí)現(xiàn)各種格式,包括但不限于,視頻編解碼器I (VC1)、運(yùn)動(dòng)圖像專家組(MPEG)、聯(lián)合圖像專家組(JPEG)等。可將控制信息與形成可視內(nèi)容的數(shù)據(jù)包括在一起。控制信息可包括用于指示將要如何遠(yuǎn)程呈現(xiàn)改變的可視內(nèi)容的數(shù)據(jù)。例如,控制信息可包括將呈現(xiàn)改變的數(shù)據(jù)的覆蓋圖的大小、覆蓋圖在顯示器上的位置、時(shí)間戳等等(例如,遠(yuǎn)程客戶機(jī)108上包括汽車視頻136的覆蓋圖)。一個(gè)或多個(gè)編碼器模塊可將控制信息與改變的可視內(nèi)容編碼在一起以便傳遞至遠(yuǎn)程客戶機(jī)。例如,在遠(yuǎn)程呈現(xiàn)時(shí),包括改變的可視內(nèi)容的可視內(nèi)容可反映該可視數(shù)據(jù)的服務(wù)器配置。即,當(dāng)由服務(wù)器屏幕更新處理器模塊106獲取可視內(nèi)容時(shí),可以在客戶機(jī)上呈現(xiàn)覆蓋圖以及其他可視內(nèi)容。在其它實(shí)現(xiàn)中,控制數(shù)據(jù)可以單獨(dú)地發(fā)送,在將內(nèi)容數(shù)據(jù)和控制數(shù)據(jù)等轉(zhuǎn)發(fā)的數(shù)據(jù)流的分隔部分中與準(zhǔn)許同步音頻和可視內(nèi)容的時(shí)間戳一起發(fā)送。資源監(jiān)視器模塊126可監(jiān)視包括通信資源在內(nèi)的與遠(yuǎn)程地呈現(xiàn)可視內(nèi)容相關(guān)聯(lián)的計(jì)算資源的可用性。例如,包括在服務(wù)器系統(tǒng)中的資源監(jiān)視器模塊126可向可視處理器模塊124發(fā)送與在遠(yuǎn)程客戶機(jī)上呈現(xiàn)可視內(nèi)容相關(guān)聯(lián)的計(jì)算資源的指示。例如,如果帶寬有限,則可視處理器模塊124可基于如由資源監(jiān)視器確定的資源來選擇丟棄幀,使用特定編碼技術(shù)等。相關(guān)資源指示可包括但不限于關(guān)于以下各項(xiàng)的指示:通信帶寬(例如,網(wǎng)絡(luò)120)的可用性、可用處理器資源(例如,服務(wù)器資源和/或客戶機(jī)資源)、可用編碼器等。以此方式,可視處理器模塊124可訪問用于遠(yuǎn)程地呈現(xiàn)改變的可視內(nèi)容的可用資源而不淹沒計(jì)算資源或過度消耗計(jì)算資源。使用資源監(jiān)視器模塊126可根據(jù)可用計(jì)算資源來定制將要如何傳遞改變的可視內(nèi)容、傳遞什么改變的可視內(nèi)容等。在將改變的可視內(nèi)容提供給遠(yuǎn)程客戶機(jī)時(shí),資源使用可基于資源可用性而改變。遠(yuǎn)程客戶機(jī)108可包括確定如何呈現(xiàn)已解碼的改變的可視內(nèi)容的客戶機(jī)處理器模塊128。例如,客戶機(jī)處理器模塊128可基于與內(nèi)容數(shù)據(jù)一起編碼的控制數(shù)據(jù)將改變的內(nèi)容(其由客戶機(jī)解碼器“1-N” 130-132解碼)呈現(xiàn)為覆蓋圖。以上述方式,客戶機(jī)處理器模塊128可重構(gòu)改變的可視內(nèi)容以使得改變的可視內(nèi)容的呈現(xiàn)匹配服務(wù)器系統(tǒng)102處的呈現(xiàn),就像該內(nèi)容呈現(xiàn)在與服務(wù)器系統(tǒng)102相關(guān)聯(lián)的顯示器上那樣。例如,可由與改變的視頻內(nèi)容包括在一起的控制數(shù)據(jù)指定大小、寬高比等??刂茢?shù)據(jù)可包括關(guān)于子視頻窗口檢測、幾何結(jié)構(gòu)跟蹤等信息,這些信息可對(duì)應(yīng)地由客戶機(jī)處理器模塊在確定要如何呈現(xiàn)改變的可視內(nèi)容時(shí)使用。如果適用,則可使用協(xié)調(diào)多媒體的時(shí)間戳來將音頻與改變的可視內(nèi)容重新組
口 ο客戶機(jī)屏幕處理器134可以在適當(dāng)時(shí)從服務(wù)器屏幕更新處理器接收其它可視數(shù)據(jù)。例如,在將視頻作為覆蓋圖呈現(xiàn)在客戶機(jī)顯示器上時(shí),可將文本、圖形對(duì)象等作為該覆蓋圖的“背景”來呈現(xiàn)。即,雖然可以個(gè)別地隔開和對(duì)待視頻,但可以在客戶機(jī)顯示器上將大致不改變的可視內(nèi)容部分與視頻內(nèi)容部分一起呈現(xiàn)在該顯示器的至少一部分上??梢园才藕团渲酶采w圖和其它可視內(nèi)容(如果存在的話)以使得顯示在客戶機(jī)上的內(nèi)容匹配來自服務(wù)器屏幕更新處理器模塊106的內(nèi)容。一般而言,在此描述的任何功能可使用軟件、固件、硬件(例如,固定邏輯電路)、手動(dòng)處理或這些實(shí)現(xiàn)的組合來實(shí)現(xiàn)。本文使用的術(shù)語“模塊”、“功能”和“邏輯”通常表示軟件、固件、硬件、或其組合。例如,在軟件實(shí)現(xiàn)的情況下,模塊、功能或邏輯表示當(dāng)在處理器(例如,一個(gè)或多個(gè)CPU)上執(zhí)行時(shí)實(shí)現(xiàn)指定任務(wù)的程序代碼。程序代碼可被儲(chǔ)存在例如有形介質(zhì)等一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲(chǔ)器設(shè)備中。以下討論描述了可利用上述系統(tǒng)和設(shè)備來實(shí)現(xiàn)的各種變換技術(shù)。這些過程中每一過程的各方面可用硬件、固件、或軟件、或其組合來實(shí)現(xiàn)。這些過程被示為指定由一個(gè)或多個(gè)設(shè)備執(zhí)行的操作的一組框,并且其不必限于所示由各框執(zhí)行操作的次序。示例性過程以下討論描述了可利用上述系統(tǒng)和設(shè)備來實(shí)現(xiàn)的方法。這些過程中每一過程的各方面可用硬件、固件、或軟件、或其組合來實(shí)現(xiàn)。這些過程被示為指定由一個(gè)或多個(gè)設(shè)備執(zhí)行的操作的一組框,并且其不必限于所示由各框執(zhí)行操作的次序。也可以考慮各種其他示例。圖3公開了用于將改變的可視數(shù)據(jù)作為覆蓋圖來提供的示例性過程。顯示與所設(shè)標(biāo)準(zhǔn)或其它可視內(nèi)容相比頻繁地改變的改變的可視內(nèi)容可準(zhǔn)許在低層處理形成改變的可視數(shù)據(jù)的數(shù)據(jù),同時(shí)根據(jù)可用計(jì)算資源來定制數(shù)據(jù)處理。例如,可以在從web服務(wù)器訪問視頻內(nèi)容的客戶機(jī)設(shè)備上遠(yuǎn)程地呈現(xiàn)可視演示。
可以在非壓縮狀態(tài)中標(biāo)識(shí)可以與其它可視內(nèi)容(不改變或以可忽略不計(jì)的速率改變)一起作為屏幕更新302的一部分包括的改變的可視內(nèi)容304。例如,改變的可視內(nèi)容可包括但不限于以大致規(guī)則的間隔更新的視頻、過渡、動(dòng)畫等。在適當(dāng)時(shí),改變的可視內(nèi)容可以與未改變的可視內(nèi)容、最低限度改變的內(nèi)容形成對(duì)比,或者可以與某一所設(shè)標(biāo)準(zhǔn)(例如,改變或屏幕更新的速率)相比較。改變的可視內(nèi)容的標(biāo)識(shí)304可以至少部分地基于更新頻率、內(nèi)容的寬高比、窗口標(biāo)識(shí)、進(jìn)程名等??梢越Y(jié)合標(biāo)識(shí)改變的可視內(nèi)容適用試探技術(shù)。在各示例中,可以考慮以上準(zhǔn)則的組合。改變的可視內(nèi)容標(biāo)識(shí)304可基于窗口的寬高比是否匹配電影或影片顯示畫面的寬高比以及傳入屏幕更新的進(jìn)程名是否匹配視頻播放器的進(jìn)程名。例如,如果內(nèi)容的寬高比為4:3,并且更新的進(jìn)程名匹配與用于播放電視廣播的播放器相關(guān)聯(lián)的進(jìn)程名,則可將可視內(nèi)容標(biāo)識(shí)為改變的內(nèi)容,即使例如該改變的內(nèi)容的回放播放暫時(shí)暫停。示例性進(jìn)程名可包括但不限于WINDOWS MEDIA CENTER(華盛頓州雷蒙德市的微軟公司)等等。如果改變的可視內(nèi)容不存在或者可視內(nèi)容已經(jīng)停止流傳輸,則其它內(nèi)容的更新可能發(fā)生或者可以移除來自停止的改變內(nèi)容的覆蓋圖306??梢栽u(píng)估可用資源308??筛鶕?jù)處理遠(yuǎn)程演示的計(jì)算資源的參數(shù)來選擇特定操縱和/或壓縮方案310。例如,可以評(píng)估計(jì)算資源以確定可用性308??梢栽诓倏v和/或引導(dǎo)改變的可視內(nèi)容的編碼310時(shí)考慮的示例性計(jì)算資源參數(shù)包括但不限于服務(wù)器資源、客戶機(jī)資源、以及通信資源。例如,如果與可以傳遞的數(shù)據(jù)相比相對(duì)較少的帶寬可用,則可以通過暫停視頻312或丟棄幀作為操縱改變的可視內(nèi)容310的一部分來不發(fā)送改變的可視內(nèi)容。因此,可基于可用計(jì)算資源308來處理改變的視頻或動(dòng)畫內(nèi)容,同時(shí)經(jīng)由其它技術(shù)來處理其它可視內(nèi)容。例如,可以分開地傳輸最低限度改變的文本和圖形對(duì)象以便客戶機(jī)演示。如果適當(dāng),則可以按不同的方式處理其它可視內(nèi)容。例如,最低限度改變的可視內(nèi)容可以按不同的速率更新或單獨(dú)傳遞。以此方式,改變的可視內(nèi)容可以覆蓋在最低限度改變的內(nèi)容的上方以使得客戶機(jī)可視演示匹配提供該可視內(nèi)容的遠(yuǎn)程源的可視演示。在各實(shí)現(xiàn)中,可以重新創(chuàng)建改變的可視內(nèi)容和其它可視內(nèi)容(例如,改變的內(nèi)容在覆蓋圖中)以使得可視演示匹配在標(biāo)識(shí)時(shí)的可視內(nèi)容的可視演示。在其它情況下,最低限度改變的內(nèi)容可以覆蓋在改變的內(nèi)容的上方。上述的示例可包括諸如通知彈出窗口(諸如OUTLOOK(華盛頓州雷蒙德市的微軟公司)通知彈出窗口)等覆蓋在改變的內(nèi)容的上方的不規(guī)則區(qū)域。以此方式,改變的內(nèi)容可以被未改變的內(nèi)容部分地遮蔽??砂葱璨倏v所標(biāo)識(shí)的改變的可視內(nèi)容310。例如,操縱可包括壓縮改變的可視內(nèi)容、對(duì)改變的可視內(nèi)容丟棄幀或屏幕更新,暫停改變的可視內(nèi)容的播放312等。例如,可以操縱改變的可視內(nèi)容310以使得覆蓋的視頻或動(dòng)畫在客戶機(jī)上出現(xiàn)在顯示器上的特定位置,匹配指定大小、寬高比等等。在各實(shí)現(xiàn)中,可以在創(chuàng)建覆蓋圖以呈現(xiàn)改變的可視內(nèi)容時(shí)使用子窗口檢測、幾何結(jié)構(gòu)跟蹤或類似技術(shù)。以上技術(shù)可準(zhǔn)許改變的可視內(nèi)容的低層遙控。示例性的資源考慮事項(xiàng)包括但不限于選擇特定編碼技術(shù)或丟棄幀以最小化帶寬消耗,基于服務(wù)器正在處理的其它任務(wù)來操縱改變的可視內(nèi)容。例如,如果帶寬非常珍貴,則可適用有損壓縮方案。因此,雖然編碼內(nèi)容310可能較密集,但減少的帶寬消耗可以是主要考慮事項(xiàng)。可以編碼改變的可視內(nèi)容310以便傳遞至客戶機(jī)。例如,控制數(shù)據(jù)和形成改變的可視內(nèi)容的數(shù)據(jù)可以經(jīng)由各種技術(shù)來編碼以便傳遞至遠(yuǎn)程客戶機(jī)312。在其它情況下,可以分開傳遞控制數(shù)據(jù)和內(nèi)容數(shù)據(jù)。編碼/指示編碼可包括使用VC1、MPEG以及用于編碼和/或壓縮內(nèi)容以便遠(yuǎn)程演示的類似技術(shù)??梢詥为?dú)地處理和傳遞音頻內(nèi)容。例如,時(shí)間戳可以與音頻和視頻內(nèi)容相關(guān)聯(lián)并且用于將音頻內(nèi)容的演示與視頻、動(dòng)畫或其它改變的可視內(nèi)容重新同步或匹配。從客戶機(jī)的觀點(diǎn)來看,改變的可視內(nèi)容可被呈現(xiàn)為覆蓋圖,該覆蓋圖覆蓋未改變或以最低限度的方式改變的可視內(nèi)容。例如,客戶機(jī)可將供呈現(xiàn)的改變的可視內(nèi)容314解碼為覆蓋圖。覆蓋圖可基于提供可視內(nèi)容的服務(wù)器系統(tǒng)所轉(zhuǎn)發(fā)的控制信息來重新創(chuàng)建。例如,可使用子窗口跟蹤、幾何結(jié)構(gòu)跟蹤技術(shù)來生成和/或重新創(chuàng)建改變的可視內(nèi)容以使該可視內(nèi)容如在標(biāo)識(shí)304處所配置和安排的那樣出現(xiàn)。如果音頻內(nèi)容與動(dòng)畫或視頻內(nèi)容(例如,多媒體演示)相關(guān)聯(lián),則可將該音頻與改變的可視內(nèi)容重新組合316。例如,可使用分別綁定到音頻和可視數(shù)據(jù)的對(duì)應(yīng)的時(shí)間戳來重新同步音頻和視頻以便由客戶機(jī)呈現(xiàn)??蓧嚎s音頻內(nèi)容以便傳輸。例如,可以解壓在單獨(dú)的數(shù)據(jù)流中傳輸?shù)囊褖嚎s的音頻內(nèi)容并且在與視頻內(nèi)容重新組合時(shí)使用時(shí)間戳。在其它情況下,可以在公共數(shù)據(jù)流中傳輸已壓縮音頻和已壓縮改變的視頻內(nèi)容。圖4公開了用于將改變的可視數(shù)據(jù)作為覆蓋圖來提供的示例性過程和指令。例如,以下討論的技術(shù)可被實(shí)現(xiàn)為用于遠(yuǎn)程地呈現(xiàn)改變的視頻、動(dòng)畫或其它改變的可視內(nèi)容的一組計(jì)算機(jī)可執(zhí)行指令??苫诎ㄆ聊桓骂l率、寬高比、窗口名稱的準(zhǔn)則來從其它可視分量中標(biāo)識(shí)包括在屏幕更新402中的未壓縮的改變的可視內(nèi)容404,如果屏幕的一部分被窗口覆蓋,則也可考慮屏幕更新的進(jìn)程名。可以考慮以上標(biāo)識(shí)參數(shù)或準(zhǔn)則的組合。例如,可基于表示視頻的位圖的幀更新頻率來標(biāo)識(shí)視頻,而其它可視內(nèi)容可保持基本不變??墒褂迷囂叫詫W(xué)習(xí)技術(shù)來改進(jìn)改變的可視內(nèi)容的標(biāo)識(shí)。如果未標(biāo)識(shí)改變的可視內(nèi)容,則可將未改變或僅僅最低限度改變的其它可視內(nèi)容獨(dú)立地傳遞至客戶機(jī)設(shè)備406。例如,如果視頻已經(jīng)停止播放,則可更新其它圖形元素并且可以移除先前呈現(xiàn)視頻的覆蓋圖406。在標(biāo)識(shí)404時(shí),可檢查涉及遠(yuǎn)程地傳遞和呈現(xiàn)可視內(nèi)容的各種計(jì)算資源以確定這些計(jì)算資源是否可用于處理改變的可視內(nèi)容408。資源考慮事項(xiàng)可包括但不限于編碼器可用性、網(wǎng)絡(luò)帶寬、客戶機(jī)參數(shù)、可用服務(wù)器處理器能力等。如果可用計(jì)算資源不足,則可以不傳遞改變的可視內(nèi)容412。例如,如果傳遞內(nèi)容的網(wǎng)絡(luò)不具有足夠吞吐量,則可以不發(fā)送包括視頻內(nèi)容改變的屏幕更新。如果計(jì)算資源可用,則可基于涉及處理和/或傳遞改變的可視內(nèi)容的計(jì)算資源408來操縱形成該改變的可視內(nèi)容的未壓縮數(shù)據(jù)410。例如,根據(jù)資源可用性,操縱410可包括指示編碼器使用特定編碼技術(shù)、丟棄幀或屏幕更新、不傳遞改變的可視內(nèi)容412、壓縮改變的可視內(nèi)容數(shù)據(jù)、包括控制信息等??刂菩畔⒖砂P(guān)于可用于在重新創(chuàng)建改變的可視內(nèi)容時(shí)指示客戶機(jī)的子窗口檢測和/或幾何結(jié)構(gòu)跟蹤的數(shù)據(jù)。在各實(shí)現(xiàn)中,控制信息可以與形成改變的可視內(nèi)容一起編碼,而在其它情況下,控制數(shù)據(jù)可以與形成改變的可視內(nèi)容的數(shù)據(jù)同延地傳遞。控制數(shù)據(jù)可指定客戶機(jī)應(yīng)如何重新創(chuàng)建改變的可視內(nèi)容。例如,控制數(shù)據(jù)可指示以下各項(xiàng)中的一個(gè)或多個(gè):用于呈現(xiàn)視頻的覆蓋圖的大小、覆蓋圖的寬高比、覆蓋圖的位置等。
可以單獨(dú)地處理最低限度改變或不改變的其它可視元素。例如,雖然可以按第一方式處理視頻內(nèi)容,但可以按第二方式處理和/或傳遞未改變的圖形元素。例如,最低限度改變的項(xiàng)目可經(jīng)由不同的方法、以不同的更新間隔等來傳遞。如果音頻內(nèi)容與改變的可視內(nèi)容相關(guān)聯(lián),則可以實(shí)現(xiàn)時(shí)間戳414以便協(xié)調(diào)改變的可視內(nèi)容和可以分開處理的音頻內(nèi)容。例如,可將時(shí)間戳與視頻包括在一起以使得可將音頻與客戶機(jī)設(shè)備上的視頻覆蓋圖相匹配。以此方式,音頻可以按音頻專用方式傳遞,而改變的可視內(nèi)容可以如此處所討論的那樣處理和/或傳遞??筛鶕?jù)所確定的計(jì)算資源來傳遞已編碼的改變的可視內(nèi)容416。例如,如果相對(duì)大量網(wǎng)絡(luò)帶寬可用(與改變的可視內(nèi)容相比),則可使用較簡單的算法,該算法可使用較少的計(jì)算資源來編碼/解碼。相反,如果帶寬是非常珍貴的,則可使用較復(fù)雜的算法,該算法消耗較少帶寬但可能加重編碼器和/或解碼器的負(fù)擔(dān)。從客戶機(jī)側(cè),客戶機(jī)可解碼改變的可視內(nèi)容以便呈現(xiàn)為覆蓋圖418。改變的可視內(nèi)容可被呈現(xiàn)為覆蓋圖,該覆蓋圖覆蓋未改變或以最低限度的方式改變的可視內(nèi)容。覆蓋圖可基于提供可視內(nèi)容的服務(wù)器系統(tǒng)所轉(zhuǎn)發(fā)的控制信息來重新創(chuàng)建。例如,可使用子窗口跟蹤、幾何結(jié)構(gòu)跟蹤技術(shù)來生成和/或重新創(chuàng)建改變的可視內(nèi)容以使該可視內(nèi)容如在屏幕更新402處所配置和安排的那樣出現(xiàn)。諸如未改變或最低限度改變的其它可視內(nèi)容可以覆蓋在改變的可視內(nèi)容的上方。例如,彈出窗口可遮蔽改變的可視內(nèi)容覆蓋圖的一部分。如果音頻內(nèi)容與動(dòng)畫或視頻內(nèi)容相關(guān)聯(lián)(例如,多媒體演示),則可將該音頻與改變的可視內(nèi)容進(jìn)行匹配420。例如,可使用分別綁定到音頻和可視數(shù)據(jù)的對(duì)應(yīng)的時(shí)間戳來重新同步覆蓋圖中的音頻和視頻以便由客戶機(jī)呈現(xiàn)。結(jié)論雖然已經(jīng)用結(jié)構(gòu)特征和/或方法動(dòng)作特定的語言描述了本發(fā)明,但是應(yīng)該理解在所附權(quán)利要求中定義的本發(fā)明不必限于所述具體特征或動(dòng)作。相反,這些具體特征和動(dòng)作是作為實(shí)現(xiàn)要求保護(hù)的發(fā)明的示例性形式而公開的。
權(quán)利要求
1.一種在計(jì)算系統(tǒng)上實(shí)現(xiàn)的用于向遠(yuǎn)程客戶機(jī)發(fā)送可視內(nèi)容的方法,包括: 標(biāo)識(shí)所述可視內(nèi)容,所述可視內(nèi)容包括改變的可視內(nèi)容和最小改變的可視內(nèi)容; 區(qū)分所述改變的可視內(nèi)容與所述最小改變的可視內(nèi)容; 標(biāo)識(shí)與所述改變的可視內(nèi)容相關(guān)聯(lián)的音頻內(nèi)容,所述音頻內(nèi)容和所述改變的可視內(nèi)容包括相應(yīng)的時(shí)間戳; 將所述最小改變的可視內(nèi)容以第一格式發(fā)送到所述遠(yuǎn)程客戶機(jī); 將所述音頻內(nèi)容以第二格式發(fā)送到所述遠(yuǎn)程客戶機(jī);以及 將所述改變的可視內(nèi)容以第三格式發(fā)送到所述遠(yuǎn)程客戶機(jī),所述相應(yīng)的時(shí)間戳使得所述遠(yuǎn)程客戶機(jī)能夠?qū)l(fā)送的音頻內(nèi)容和發(fā)送的改變的可視內(nèi)容同步。
2.如權(quán)利要求1所述的方法,其特征在于,所述改變的可視內(nèi)容是基于以下中的至少一個(gè)來被標(biāo)識(shí)的: 更新頻率、寬高比、窗口標(biāo)識(shí)、以及進(jìn)程名。
3.如權(quán)利要求1所述的方法,其特征在于,所述相應(yīng)的時(shí)間戳使得所述遠(yuǎn)程客戶機(jī)將發(fā)送的改變的可視內(nèi)容覆蓋在發(fā)送的音頻內(nèi)容之上。
4.如權(quán)利要求1所述的方法,其特征在于,所述改變的可視內(nèi)容是以下至少之一: 動(dòng)畫、視頻內(nèi)容、以及過渡。
5.如權(quán)利要求1所述的方法,其特征在于,發(fā)送改變的可視內(nèi)容進(jìn)一步包括: 發(fā)送控制信息,所述控制信息用于在所述遠(yuǎn)程客戶機(jī)處將所述改變的可視內(nèi)容重新創(chuàng)建為所述最小改變的可視內(nèi)容上的覆蓋圖,其中所述控制信息包括以下至少之一:子視頻窗口檢測數(shù)據(jù)和幾何結(jié)構(gòu)跟蹤數(shù)據(jù)。
6.如權(quán)利要求1所述的方法,其特征在于,還包括: 評(píng)估可用資源,包括以下中的兩個(gè)或更多: 評(píng)估服務(wù)器上可用的資源; 評(píng)估將所述服務(wù)器和所述遠(yuǎn)程客戶機(jī)通信上耦合的網(wǎng)絡(luò)上可用的資源; 評(píng)估所述遠(yuǎn)程客戶機(jī)上可用的資源;以及 至少部分地基于對(duì)可用資源的評(píng)估來操縱所述改變的可視內(nèi)容。
7.如權(quán)利要求6所述的方法,其特征在于,操縱所述改變的可視內(nèi)容包括以下至少之 壓縮形成所述改變的可視內(nèi)容的數(shù)據(jù)、丟棄屏幕更新、以及丟棄視頻幀。
8.—種包括計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),所述計(jì)算機(jī)可執(zhí)行指令在被處理器執(zhí)行時(shí)指示計(jì)算系統(tǒng)實(shí)現(xiàn)一種用于向遠(yuǎn)程客戶機(jī)發(fā)送可視內(nèi)容的方法,所述方法包括: 接收所述可視內(nèi)容,所述可視內(nèi)容包括改變的可視內(nèi)容和最小改變的可視內(nèi)容; 區(qū)分所述改變的可視內(nèi)容與所述最小改變的可視內(nèi)容; 標(biāo)識(shí)與所述改變的可視內(nèi)容相關(guān)聯(lián)的音頻內(nèi)容,所述音頻內(nèi)容和所述改變的可視內(nèi)容包括相應(yīng)的時(shí)間戳; 將所述最小改變的可視內(nèi)容以第一格式發(fā)送到所述遠(yuǎn)程客戶機(jī); 將所述音頻內(nèi)容以第二格式發(fā)送到所述遠(yuǎn)程客戶機(jī);以及 將所述改變的可視內(nèi)容以第三格式發(fā)送到所述遠(yuǎn)程客戶機(jī),所述相應(yīng)的時(shí)間戳使得所述遠(yuǎn)程客戶機(jī)能夠?qū)l(fā)送的音頻內(nèi)容和發(fā)送的改變的可視內(nèi)容同步。
9.如權(quán)利要求8所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述改變的可視內(nèi)容是基于以下中的至少一個(gè)來被標(biāo)識(shí)的: 更新頻率、寬高比、窗口標(biāo)識(shí)、以及進(jìn)程名。
10.如權(quán)利要求8所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述改變的可視內(nèi)容是通過使用屏幕更新率作為閾值來被標(biāo)識(shí)的。
11.如權(quán)利要求8所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述相應(yīng)的時(shí)間戳使得所述遠(yuǎn)程客戶機(jī)將發(fā)送的改變的可視內(nèi)容覆蓋在發(fā)送的音頻內(nèi)容之上。
12.如權(quán)利要求8所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,還包括: 評(píng)估可用資源,包括以下中的兩個(gè)或更多: 評(píng)估服務(wù)器上可用的資源; 評(píng)估將所述服務(wù)器和所述遠(yuǎn)程客戶機(jī)通信上耦合的網(wǎng)絡(luò)上可用的資源; 評(píng)估所述遠(yuǎn)程客戶機(jī)上可用的資源;以及 至少部分地基于對(duì)可用資源的評(píng)估來操縱所述改變的可視內(nèi)容。
13.一種計(jì)算系統(tǒng),包括: 至少一個(gè)處理器;以及 通信上耦合于所述至少一個(gè)處理器的至少一個(gè)存儲(chǔ)器,所述至少一個(gè)存儲(chǔ)器包括計(jì)算機(jī)可讀指令,所述計(jì)算機(jī)可讀指令在被所述至少一個(gè)處理器執(zhí)行時(shí)指示所述計(jì)算系統(tǒng)實(shí)現(xiàn)一種用于向遠(yuǎn)程客戶機(jī)發(fā)送可視內(nèi)容的方法,所述方法包括: 標(biāo)識(shí)所述可視內(nèi)容,所述可視內(nèi)容包括改變的可視內(nèi)容和最小改變的可視內(nèi)容; 區(qū)分所述改變的可視內(nèi)容與所述最小改變的可視內(nèi)容; 標(biāo)識(shí)與所述改變的可視內(nèi)容相關(guān)聯(lián)的音頻內(nèi)容,所述音頻內(nèi)容和所述改變的可視內(nèi)容包括相應(yīng)的時(shí)間戳; 將所述最小改變的可視內(nèi)容以第一格式發(fā)送到所述遠(yuǎn)程客戶機(jī); 將所述音頻內(nèi)容以第二格式發(fā)送到所述遠(yuǎn)程客戶機(jī);以及 將所述改變的可視內(nèi)容以第三格式發(fā)送到所述遠(yuǎn)程客戶機(jī),所述相應(yīng)的時(shí)間戳使得所述遠(yuǎn)程客戶機(jī)能夠?qū)l(fā)送的音頻內(nèi)容和發(fā)送的改變的可視內(nèi)容同步。
14.如權(quán)利要求13所述的計(jì)算系統(tǒng),其特征在于,還包括: 評(píng)估可用資源,包括以下中的兩個(gè)或更多: 評(píng)估服務(wù)器上可用的資源; 評(píng)估將所述服務(wù)器和所述遠(yuǎn)程客戶機(jī)通信上耦合的網(wǎng)絡(luò)上可用的資源; 評(píng)估所述遠(yuǎn)程客戶機(jī)上可用的資源;以及 至少部分地基于對(duì)可用資源的評(píng)估來操縱所述改變的可視內(nèi)容。
15.如權(quán)利要求14所述的方法,其特征在于,操縱所述改變的可視內(nèi)容包括以下至少之一: 壓縮形成所述改變的可視內(nèi)容的數(shù)據(jù)、丟棄屏幕更新、以及丟棄視頻幀。
全文摘要
提供了向遠(yuǎn)程客戶機(jī)發(fā)送可視內(nèi)容的方法和系統(tǒng)。討論用于將包括視頻、動(dòng)畫等在內(nèi)的改變的可視內(nèi)容作為覆蓋圖來呈現(xiàn)的技術(shù)??梢詮陌ㄔ诳梢曆菔局械钠渌梢曉刂袠?biāo)識(shí)包括在該可視演示中的改變的可視內(nèi)容??苫谂c為客戶機(jī)呈現(xiàn)改變的可視內(nèi)容作為覆蓋圖相關(guān)聯(lián)的可用資源來操縱改變的可視內(nèi)容。
文檔編號(hào)G09G5/14GK103151023SQ201310060728
公開日2013年6月12日 申請(qǐng)日期2008年11月26日 優(yōu)先權(quán)日2007年12月14日
發(fā)明者R·瑪哈簡, V·斯托亞諾夫, C·德沃萊克 申請(qǐng)人:微軟公司