專利名稱:用于智能地將客戶端請(qǐng)求分配到服務(wù)器中心的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本公開總體上涉及改善用戶操作及存取音頻和視頻媒體的能力的數(shù)據(jù)處理系統(tǒng) 的領(lǐng)域。
背景技術(shù):
自從托馬斯·愛迪生(Thomas Edison)時(shí)代以來,記錄的音頻及電影媒體已成為 社會(huì)的一方面。在20世紀(jì)初期,記錄的音頻媒體(磁柱及唱片)及電影媒體(投幣式自動(dòng) 點(diǎn)唱機(jī)及電影)廣泛發(fā)行,但兩種技術(shù)仍處于其起步階段。在20世紀(jì)20年代后期,在大 眾市場的基礎(chǔ)上將電影與音頻組合,之后將彩色電影與音頻組合。無線電廣播逐漸演變成 很大程度上支持廣告的形式的廣播大眾市場音頻媒體。當(dāng)在20世紀(jì)40年代中期建立電視 (TV)廣播標(biāo)準(zhǔn)時(shí),電視與無線電以廣播大眾市場媒體的形式接合,從而將先前記錄的或現(xiàn) 場直播的電影帶入家庭中。至20世紀(jì)中期為止,大部分美國家庭已具有用于播放記錄的音頻媒體的唱片播 放器(phonograph record player)、用于接收現(xiàn)場直播的廣播音頻的無線電設(shè)備,及用于 播放現(xiàn)場直播的廣播音頻/視頻(A/V)媒體的電視機(jī)。常常將所述3個(gè)“媒體播放器”(唱 片播放器、無線電設(shè)備及TV)組合到共有公共揚(yáng)聲器的櫥柜中,變成家庭的“媒體中心”。盡 管對(duì)于消費(fèi)者而言媒體選擇有限,但媒體“生態(tài)系統(tǒng)”非常穩(wěn)定。大多數(shù)消費(fèi)者知道如何使 用“媒體播放器”且能夠享受其能力的全部范圍。同時(shí),媒體的出版商(大多為電影和電視 工作室,及音樂公司)能夠?qū)⑵涿襟w分配給電影院與家庭兩者,而不遭受廣泛的盜版或“二 次銷售”(也即,已使用媒體的重新銷售)。通常,出版商不會(huì)從二次銷售得到收入,且因此, 二次銷售減少了出版商對(duì)于新的銷售從原本可自己使用媒體的購買者得到的收入。盡管在 20世紀(jì)中期期間的確存有已使用的唱片出售,但所述銷售不會(huì)對(duì)唱片出版商有大影響,因 為不同于電影或視頻節(jié)目(其通常被成年人觀看一次或僅數(shù)次),音樂曲目可被收聽數(shù)百 次或甚至數(shù)千次。因此,音樂媒體遠(yuǎn)比電影/視頻媒體“經(jīng)久”(也即,對(duì)于成年消費(fèi)者而 言,其具有持久價(jià)值)。一旦購買了唱片,若消費(fèi)者喜歡該音樂,則消費(fèi)者可能將其保持很長 時(shí)間。自20世紀(jì)中期到現(xiàn)在,媒體生態(tài)系統(tǒng)對(duì)于消費(fèi)者與出版商的利益及損失來說都 經(jīng)歷了一系列根本改變。在音頻錄音機(jī)(尤其是具有高質(zhì)量立體聲的盒式磁帶)的廣泛 引入的情況下,的確有較高程度的消費(fèi)者便利。但其也標(biāo)志著現(xiàn)在廣泛的消費(fèi)者媒體實(shí) 踐_盜版的開始。的確,許多消費(fèi)者純粹出于便利起見而使用盒式磁帶來錄制其自己的唱 片,但日益增加的消費(fèi)者(例如,宿舍中準(zhǔn)備存取彼此的唱片收集的學(xué)生)將進(jìn)行盜版復(fù)
3制。而且,消費(fèi)者將錄制經(jīng)由無線電播放的音樂,而非從出版商購買唱片或磁帶。消費(fèi)者VCR的出現(xiàn)導(dǎo)致更多的消費(fèi)者便利,因?yàn)楝F(xiàn)在VCR被設(shè)置為記錄TV節(jié)目, 其可在稍后時(shí)間觀看,且VCR也導(dǎo)致視頻租賃業(yè)的建立,其中電影以及TV節(jié)目設(shè)計(jì)可在“點(diǎn) 播”基礎(chǔ)上進(jìn)行存取。自20世紀(jì)80年代中期以來的大眾市場家庭媒體設(shè)備的快速開發(fā)已 導(dǎo)致消費(fèi)者的空前的選擇及便利程度,且也導(dǎo)致媒體出版市場的快速擴(kuò)張?,F(xiàn)今,消費(fèi)者面對(duì)過多媒體選擇以及過多媒體設(shè)備,其中許多被綁定到特定形式 的媒體或特定出版商。熱衷的媒體消費(fèi)者可能將一堆設(shè)備連接到房屋各房間中的TV及計(jì) 算機(jī),造成至一或多個(gè)電視機(jī)和/或個(gè)人計(jì)算機(jī)(PC)的“鼠窩式”電纜以及一群遠(yuǎn)程控制。 (在本申請(qǐng)的上下文中,術(shù)語“個(gè)人計(jì)算機(jī)”或“PC”指代適合于在家庭或辦公室中使用的任 何種類的計(jì)算機(jī)),包括臺(tái)式計(jì)算機(jī)、Macintosh (麥金托什機(jī)器)⑧或其他非Windows (視 窗)計(jì)算機(jī)、與Windows相容的設(shè)備、Unix變體、筆記本計(jì)算機(jī)等)。所述設(shè)備可包括視頻游 戲控制臺(tái)、VCR、DVD播放器、音頻環(huán)繞音效處理器/放大器、衛(wèi)星機(jī)頂盒、電纜TV機(jī)頂盒等。 此外,對(duì)于熱衷的消費(fèi)者,可能由于相容性問題而存在多個(gè)類似功能的設(shè)備。舉例而言,消 費(fèi)者可能擁有HD-DVD與藍(lán)光(Blu-ray)DVD播放器兩者,或Microsoft Xbox(微軟家用游戲 機(jī)) 與Sony Playstation (索尼游戲站) 視頻游戲系統(tǒng)兩者。實(shí)際上,由于一些跨游戲 控制臺(tái)版本的的游戲的不相容性,消費(fèi)者可能擁有XBox與稍后的版本(諸如,Xbox 360 )兩者。經(jīng)常地,消費(fèi)者對(duì)于使用哪個(gè)視頻輸入端及哪個(gè)遠(yuǎn)端感到迷惑。甚至在將光碟置放 于正確的播放器(例如,DVD、HD_DVD、藍(lán)光、Xbox或Playstation)中、選擇用于該設(shè)備的視 頻及音頻輸入端且發(fā)現(xiàn)正確遠(yuǎn)程控制之后,消費(fèi)者仍面臨技術(shù)挑戰(zhàn)。舉例而言,在寬屏DVD 的狀況下,用戶可能需要首先確定正確的縱橫比(例如,4 3、完全、放大、寬放大、電影院 寬等)且接著在其TV或監(jiān)視器屏幕上設(shè)定正確的縱橫比。類似地,用戶可能需要首先確定 正確的音頻環(huán)繞音效系統(tǒng)格式(例如,AC-3、杜比數(shù)字、DTS等)且接著設(shè)定正確的音頻環(huán) 繞音效系統(tǒng)格式。時(shí)常,消費(fèi)者未意識(shí)到其可能未享受到其電視或音頻系統(tǒng)的全部能力下 的媒體內(nèi)容(例如,觀看以錯(cuò)誤縱橫比擠壓的電影,或收聽立體聲的音頻而非環(huán)繞音效的 音頻)。日益增加地,已將以基于互聯(lián)網(wǎng)的媒體設(shè)備添加到設(shè)備的堆棧中。類似Sonos (索 羅斯) 數(shù)字音樂系統(tǒng)的音頻設(shè)備使音頻直接從互聯(lián)網(wǎng)流動(dòng)(stream)。同樣地,類似 Slingbox (視靈寶 )娛樂播放器的設(shè)備記錄視頻且使其經(jīng)由家庭網(wǎng)絡(luò)流動(dòng)或經(jīng)由互聯(lián)網(wǎng) 流動(dòng)而出,其中可在PC上遠(yuǎn)程觀看該視頻。且互聯(lián)網(wǎng)協(xié)議電視(IPTV)服務(wù)經(jīng)由數(shù)字用戶 線(DSL)或其他家庭互聯(lián)網(wǎng)連接而提供類似電纜TV的服務(wù)。近來還努力將多個(gè)媒體功能 整合到單個(gè)設(shè)備(諸如,Moxi (摩西)⑧媒體中心及執(zhí)行Windows XP媒體中心版本的PC) 中。盡管所述設(shè)備中的每個(gè)設(shè)備對(duì)其執(zhí)行的功能提供一點(diǎn)便利,但每個(gè)設(shè)備缺乏對(duì)大多數(shù) 媒體的普遍且簡單的存取。另外,常常由于昂貴的處理和/或本地儲(chǔ)存的需要而使得所述 設(shè)備經(jīng)?;ㄙM(fèi)數(shù)百美元來制造。另外,所述現(xiàn)代的消費(fèi)者電子設(shè)備通常消耗大量電力,甚至 當(dāng)閑置時(shí)也消耗大量電力,這意謂著其隨著時(shí)間而更加昂貴且浪費(fèi)能源。舉例而言,若消費(fèi) 者忘記將設(shè)備切斷或?qū)⑵淝袚Q到不同視頻輸入端,則該設(shè)備可能繼續(xù)操作。此外,因?yàn)樗?設(shè)備當(dāng)中沒有一個(gè)設(shè)備為完全的解決方案,所以必須將其與家庭中的其他設(shè)備的堆棧整合 在一起,這仍對(duì)用戶留下鼠窩式線及許多遠(yuǎn)程控制。此外,當(dāng)許多較新的以互聯(lián)網(wǎng)為基礎(chǔ)的設(shè)備適當(dāng)?shù)毓ぷ鲿r(shí),其通常提供更一般形式(與其原本可能可用的形式相比)的媒體。舉例而言,使視頻經(jīng)由互聯(lián)網(wǎng)流動(dòng)的設(shè)備常 常僅使視頻材料流動(dòng),而不能使常常伴隨DVD的互動(dòng)式“額外項(xiàng)目”流動(dòng),如視頻的“制作”、 游戲或?qū)а菰u(píng)論。這是由于以下事實(shí)互動(dòng)式材料經(jīng)常是以特定格式制作,該特定格式意 欲用于在本地處理互動(dòng)性的特定設(shè)備。舉例而言,DVD、HD-DVD及藍(lán)光光碟中每一者具有其 自身的特定互動(dòng)格式。任何家庭媒體設(shè)備或本地計(jì)算機(jī)(其可能經(jīng)開發(fā)以支持所有流行格 式)將需要一定程度的尖端性(sophistication)及靈活性,其將可能對(duì)于消費(fèi)者操作而言 過于昂貴及復(fù)雜。使該問題加重,若稍后在將來引入新格式,則本地設(shè)備可能不具有支持新格式的 硬件能力,這將意味著消費(fèi)者將必須購買升級(jí)的本地媒體設(shè)備。舉例而言,若在稍后的日期 引入較高分辨率的視頻或立體視頻(例如,每一只眼一個(gè)視頻流),則本地設(shè)備可能不具有 解碼該視頻的計(jì)算能力,或其可能不具有用于以新格式輸出該視頻的硬件(例如,假定通 過與遮光眼鏡(shuttered glassess)同步的120fps視頻來實(shí)現(xiàn)立體視覺,其中將60fps 傳送到每一只眼,若消費(fèi)者的視頻硬件僅可支持60fps視頻,則該選項(xiàng)在缺乏升級(jí)的硬件 購買的情況下將不可用)。當(dāng)談及尖端的互動(dòng)式媒體(尤其是視頻游戲)時(shí),媒體設(shè)備廢棄及復(fù)雜度的問題 為嚴(yán)重問題。現(xiàn)代視頻游戲應(yīng)用基本上劃分成四個(gè)主要非便攜式式硬件平臺(tái) Sony PlayStation ι、2 及 3(PSl、PS2,及 PS3) ; Microsoft Xbox 及 Xbox 360 ;及 Nintendo Gamecube (任天堂方糖);以及以PC為基礎(chǔ)的游戲。所述平臺(tái)中的每一 者不同于其他者,使得被編寫以在一個(gè)平臺(tái)上執(zhí)行的游戲通常不會(huì)在另一平臺(tái)上執(zhí)行。也 可能存在一代設(shè)備與下一代設(shè)備的相容性問題。即使大多數(shù)軟件游戲開發(fā)者建立獨(dú)立于特 定平臺(tái)而設(shè)計(jì)的軟件游戲,為了在特定平臺(tái)上執(zhí)行特定游戲,也需要專有軟件層(其經(jīng)常 被稱為“游戲開發(fā)引擎」”)來調(diào)適游戲以在特定平臺(tái)上使用。每一個(gè)平臺(tái)以“控制臺(tái)”(也 即,附接到TV或監(jiān)視器/揚(yáng)聲器的脫機(jī)盒(standalone box))的形式出售給消費(fèi)者或其本 身為PC。通常,視頻游戲在諸如藍(lán)光DVD、DVD_R0M或⑶-ROM的光學(xué)媒體上出售,該光學(xué)媒 體含有體現(xiàn)為尖端的實(shí)時(shí)軟件應(yīng)用程序的視頻游戲。隨著家庭寬帶速度增加,視頻游戲正 日益變得可用于下載。由于高級(jí)視頻游戲的實(shí)時(shí)性及高計(jì)算要求而使得實(shí)現(xiàn)與視頻游戲軟件的平臺(tái)相 容性的特殊性要求極端苛刻。舉例而言,一個(gè)人可能期望從一代視頻游戲到下一代視頻游 戲(例如,自 XBox 至 XBox 360,或自 Playstation 2(“PS2”)至 Playstation 3(“PS3”)) 的完全游戲相容性,正如存在從一個(gè)PC到具有較快處理單元或核心的另一 PC的生產(chǎn)力應(yīng) 用程序(例如,MicrosoftWord(微軟文字處理軟件))的普遍相容性。然而,對(duì)于視頻游戲 并非是這種狀況。因?yàn)楫?dāng)發(fā)行一代視頻游戲時(shí),視頻游戲制造商通常尋求對(duì)于給定價(jià)格點(diǎn) 的最高可能性能,所以經(jīng)常對(duì)系統(tǒng)進(jìn)行動(dòng)態(tài)架構(gòu)改變,以使得被編寫以用于前代系統(tǒng)的許 多游戲在稍后一代系統(tǒng)上不能工作。舉例而言,XBox基于x86系列處理器,而XBox 360基 于PowerPC系列??衫眉夹g(shù)來模仿先前架構(gòu),但假定視頻游戲?yàn)閷?shí)時(shí)應(yīng)用程序,則在模仿中達(dá)成 完全相同的行為常常不切實(shí)際。這是對(duì)消費(fèi)者、視頻游戲控制臺(tái)制造商及視頻游戲軟件出 版商的損失。對(duì)于消費(fèi)者而言,這意味著將舊的一代視頻游戲控制臺(tái)與新的一代視頻游戲
5控制臺(tái)兩者保持接通到TV以便能夠玩所有游戲的必要性。對(duì)于控制臺(tái)制造商而言,這意味 著與新控制臺(tái)的模仿及較慢采用相關(guān)的成本。且對(duì)于出版商而言,這意味著可能必須發(fā)行 新游戲的多個(gè)版本以便涵蓋所有潛在的消費(fèi)者_(dá)不僅發(fā)行用于視頻游戲的每個(gè)商標(biāo)(例 如,XBohPlaystation)的版本,而且常常發(fā)行用于給定商標(biāo)的每個(gè)版本(例如,PS2及PS3) 的版本。舉例而言,開發(fā)藝電有限公司(Electronic Arts)的“瘋狂橄欖球08”的單獨(dú)版本 以用于XBox, XBox 360、PS2、PS3、Gamecube、Wii及PC平臺(tái)以及其他平臺(tái)。便攜式設(shè)備(諸如,移動(dòng)電話及便攜式媒體播放器)也對(duì)游戲開發(fā)商提出挑戰(zhàn)。日 益增加地,所述設(shè)備連接到無線數(shù)據(jù)網(wǎng)絡(luò)且能夠下載視頻游戲。但是,市場中存在具有多種 不同顯示分辨率及計(jì)算能力的多種移動(dòng)電話及媒體設(shè)備。而且,因?yàn)樗鲈O(shè)備通常具有電 力消耗、成本及重量約束,所以其通常缺乏類似于圖形處理單元(“GPU”)的高級(jí)圖形加速 硬件(諸如,由美國加州的圣克拉拉的NVIDIA(英偉達(dá)公司)制造的設(shè)備)。因此,游戲軟 件開發(fā)商通常開發(fā)同時(shí)用于許多不同類型的便攜式設(shè)備的給定游戲標(biāo)題。用戶可發(fā)現(xiàn)給 定游戲標(biāo)題不可用于其特定移動(dòng)電話或便攜式媒體播放器。在家庭游戲控制臺(tái)的狀況下,硬件平臺(tái)制造商通常向軟件游戲開發(fā)商收取用于在 其平臺(tái)上發(fā)布游戲的能力的版稅。移動(dòng)電話無線通信公司通常也向游戲出版商收取用于將 游戲下載到移動(dòng)電話中的版稅。在PC游戲的狀況下,不存在用于發(fā)布游戲所支付的版稅, 但由于用于支持多種PC配置及可能引起的安裝問題的較高消費(fèi)者服務(wù)負(fù)擔(dān)而使得游戲開 發(fā)商通常面臨高成本。而且,PC通常較少阻礙游戲軟件的盜版,因?yàn)槠淇珊苋菀椎赜删?技術(shù)的用戶重新編程且游戲可更容易地被盜版且更容易地被分配(例如,經(jīng)由互聯(lián)網(wǎng))。因 此,對(duì)于軟件游戲開發(fā)商而言,在游戲控制臺(tái)、移動(dòng)電話及PC上發(fā)行具有成本及不利之處。對(duì)于控制臺(tái)及PC軟件的游戲出版商而言,成本不止于此。為了經(jīng)由零售通道分配 游戲,出版商向零售商收取低于出售價(jià)格的批發(fā)價(jià)格以使零售商具有利潤率。出版商通常 也必須支付制造及分配保存游戲的物理媒體的成本。零售商經(jīng)常也向出版商收取“價(jià)格保 護(hù)費(fèi)”以涵蓋可能的意外費(fèi)用(諸如,游戲售不出,或游戲的價(jià)格降低,或零售商必須退還部 分或所有批發(fā)價(jià)格和/或從購買者收回游戲)。另外,零售商通常也向出版商收取用于幫助 在廣告?zhèn)鲉沃袖N售游戲的費(fèi)用。此外,零售商日益增加地從已玩完游戲的用戶購買回游戲, 且接著將所述游戲以使用過的游戲出售,通常不與游戲出版商分享使用過的游戲的收入。 以下事實(shí)增加了施加給游戲出版商的成本負(fù)擔(dān)游戲常常被經(jīng)由互聯(lián)網(wǎng)盜版及分配以供用 戶下載及進(jìn)行免費(fèi)復(fù)制。隨著互聯(lián)網(wǎng)寬帶速度增加且寬帶連接性在美國及全世界變得更廣泛(更具體地, 到家庭和到租賃連接互聯(lián)網(wǎng)的PC的“網(wǎng)吧”),游戲被更多地經(jīng)由下載而分配到PC或控制 臺(tái)。而且,寬帶連接更多地用于玩多人及大型多人在線游戲(該兩者在本公開中由首字母 縮寫詞“MM0G”來指代)。這些改變減輕了與零售分配相關(guān)的一些成本及問題。下載在線游 戲解決了游戲出版商的一些不利之處,因?yàn)榉峙涑杀就ǔ]^小且存在較少或不存在未出售 媒體的成本。但已下載的游戲仍被盜版,且由于其大小(大小常常為幾十億字節(jié))而使得 其可能花費(fèi)非常長的時(shí)間來下載。另外,多個(gè)游戲可裝滿小磁盤驅(qū)動(dòng)器,例如連同便攜式計(jì) 算機(jī)一起或連同視頻游戲控制臺(tái)一起出售的那些磁盤驅(qū)動(dòng)器。然而,就游戲或MMOG需要在 線連接以使得游戲可玩的程度而言,盜版問題得以減輕,因?yàn)橥ǔP枰脩艟哂杏行У挠?戶帳戶。不同于可由相機(jī)拍攝顯示屏幕的視頻或由麥克風(fēng)記錄來自揚(yáng)聲器的音頻來復(fù)制的
6線性媒體(例如,視頻及音樂),每個(gè)視頻游戲體驗(yàn)是唯一的,且不可使用簡單的視頻/音 頻記錄來復(fù)制。因此,甚至在未強(qiáng)力執(zhí)行版權(quán)法且盜版猖獗的區(qū)域中,也可保護(hù)MMOG免于 被盜版,從而可支持商業(yè)。舉例而言,已成功地部署Vivendi SA(維旺迪公司)的“魔獸世 界”MM0G,而在全世界未遭受盜版。且許多在線或MMOG游戲(諸如,Linden Lab (林登實(shí)驗(yàn) 室)的“第二人生”MM0G)通過建在游戲中的經(jīng)濟(jì)模型而產(chǎn)生游戲運(yùn)營商的收入,其中資產(chǎn) 可使用在線工具而帶來、出售且甚至建立。因此,可使用除傳統(tǒng)游戲軟件購買或訂閱之外的 機(jī)制來為在線游戲的使用付費(fèi)。盡管由于在線或MMOG的性質(zhì)而使得常常可減輕盜版,但在線游戲運(yùn)營商仍面臨 其余挑戰(zhàn)。許多游戲需要大量的本地(也即,家庭內(nèi))處理資源以供在線或MMOG適當(dāng)?shù)毓?作。若用戶具有低性能的本地計(jì)算機(jī)(例如,不具有GPU的計(jì)算機(jī),諸如低端筆記本計(jì)算 機(jī)),則其可能不能夠玩該游戲。另外,隨著游戲控制臺(tái)老化,其遠(yuǎn)落后于目前技術(shù)狀態(tài)且 可能不能夠處理更高級(jí)的游戲。即使假定用戶的本地PC能夠處理游戲的計(jì)算要求,常常也 存在安裝復(fù)雜度??赡艽嬖隍?qū)動(dòng)器不相容性(例如,若下載新游戲,則可能安裝新版本的圖 形驅(qū)動(dòng)器,其致使依賴于舊版本圖形驅(qū)動(dòng)器的先前已安裝的游戲不可操作)。隨著下載更 多游戲,控制臺(tái)可能用完本地磁盤空間。當(dāng)發(fā)現(xiàn)缺陷并修復(fù)時(shí)或若對(duì)游戲進(jìn)行了修改(例 如,若游戲開發(fā)商發(fā)現(xiàn)游戲的級(jí)別太難玩或太容易玩),復(fù)雜游戲通常隨著時(shí)間推移而從游 戲開發(fā)商接收下載的補(bǔ)丁(patch)。該補(bǔ)丁需要新的下載。但有時(shí)并非所有用戶完成所有 補(bǔ)丁的下載。在其他時(shí)候,下載的補(bǔ)丁引入其他相容性或磁盤空間消耗問題。而且,在游戲播放期間,可能需要大數(shù)據(jù)下載以將圖形或行為信息提供到本地PC 或控制臺(tái)。舉例而言,若用戶進(jìn)入MMOG中的一個(gè)房間中,且遇到由圖形數(shù)據(jù)組成或具有在 用戶的本地機(jī)器上不可用的行為的場景或人物,則必須下載那個(gè)場景或人物的數(shù)據(jù)。若互 聯(lián)網(wǎng)連接不夠快,則此可導(dǎo)致玩游戲期間的實(shí)質(zhì)延遲。此外,若所遇到的場景或人物需要超 過本地PC或控制臺(tái)的儲(chǔ)存空間或計(jì)算能力的儲(chǔ)存空間或計(jì)算能力,則其可產(chǎn)生下述情形 其中用戶不能在游戲中繼續(xù),或必須以質(zhì)量降低的圖形繼續(xù)。因此,在線或MMOG游戲常常 限制其儲(chǔ)存和/或計(jì)算復(fù)雜度要求。另外,其常常限制游戲期間的數(shù)據(jù)傳送的量。在線或 MMOG游戲也可使可玩游戲的用戶的市場變窄。此外,精通技術(shù)的用戶越來越多地對(duì)游戲的本地復(fù)本進(jìn)行反向工程且修改游戲以 使得他們可以作弊。作弊可能與進(jìn)行比用人力可能的速度快的重復(fù)按鈕按壓(例如,為了 非??焖俚厣鋼?一樣簡單。在支持游戲中資產(chǎn)交易的游戲中,作弊可達(dá)到導(dǎo)致欺騙性交 易涉及具有實(shí)際經(jīng)濟(jì)價(jià)值的資產(chǎn)的欺詐程度。當(dāng)在線或MMOG經(jīng)濟(jì)模型基于所述資產(chǎn)交易 時(shí),這可導(dǎo)致對(duì)游戲運(yùn)營商的實(shí)質(zhì)有害后果。開發(fā)新游戲的成本隨著PC及控制臺(tái)能夠制作越來越尖端的游戲(例如,具有更逼 真的圖形(諸如,實(shí)時(shí)光線追蹤),及更逼真的行為(諸如,實(shí)時(shí)物理學(xué)仿真))而增長。在 視頻游戲業(yè)的早期,視頻游戲開發(fā)是應(yīng)用程序軟件開發(fā)非常類似的過程;也即,大多數(shù)開發(fā) 成本在軟件的開發(fā)中(與圖形、音頻及行為要素或“資產(chǎn)”的開發(fā)相對(duì)比),諸如可被開發(fā)以 用于具有廣泛特殊效果的電影的那些軟件開發(fā)?,F(xiàn)今,許多尖端的視頻游戲開發(fā)成果比軟 件開發(fā)更類似于富有特效的電影開發(fā)。舉例而言,許多視頻游戲提供3-D世界的仿真,且產(chǎn) 生更加真實(shí)(也即,看似與攝影拍攝的實(shí)景(live action)圖像一樣逼真的計(jì)算機(jī)圖形) 的人物、道具及環(huán)境。照片一樣逼真的游戲開發(fā)的最具挑戰(zhàn)方面中的一者為創(chuàng)建不能區(qū)別于實(shí)景人臉的計(jì)算機(jī)產(chǎn)生的人臉。面部捕獲技術(shù)(諸如,由加州的圣弗朗西斯科的Mova開 發(fā)的Contour (輪廓 )真實(shí)性捕獲系統(tǒng))捕獲表演者的面部的精確幾何形狀并在表演者 處于運(yùn)動(dòng)中時(shí)以高分辨率追蹤表演者的面部的精確幾何形狀。此技術(shù)允許在PC或游戲控 制臺(tái)上再現(xiàn)3D面部,該3D面部實(shí)際上不能區(qū)別于所捕獲的實(shí)景面部。精確地捕獲及再現(xiàn) “照片一樣逼真的”人臉在多個(gè)方面是有用的。首先,高度可識(shí)別的名人或運(yùn)動(dòng)員常常用于 視頻游戲中(常常被高成本雇用),且不完美性可能對(duì)于用戶而言顯而易見,從而使觀看體 驗(yàn)(viewing experience)分心或令人不愉快。經(jīng)常地,需要高度細(xì)節(jié)來實(shí)現(xiàn)高度的照片一 樣的逼真感_潛在地需要再現(xiàn)大量多邊形及高分辨率紋理(在多邊形和/或紋理在幀接幀 的基礎(chǔ)上隨著面部移動(dòng)而改變的情況下)。當(dāng)具有詳細(xì)紋理的高多邊形計(jì)數(shù)場景快速改變時(shí),支持游戲的PC或游戲控制臺(tái) 可能不具有足夠的RAM來儲(chǔ)存用于游戲片段中所產(chǎn)生的所需數(shù)目的動(dòng)畫幀的足夠多邊形 及紋理數(shù)據(jù)。另外,通??捎糜赑C或游戲控制臺(tái)上的單個(gè)光學(xué)驅(qū)動(dòng)器或單個(gè)磁盤驅(qū)動(dòng)器通 常比RAM緩慢得多,且通常不能跟上GPU在再現(xiàn)多邊形及紋理中可接受的最大數(shù)據(jù)速率。當(dāng) 前游戲通常將大多數(shù)多邊形及紋理載入到RAM中,這意味著給定場景在復(fù)雜度及持續(xù)時(shí)間 上很大程度上受RAM的容量限制。在例如面部動(dòng)畫制作的狀況下,這可能將PC或游戲控制 臺(tái)限制于并無真實(shí)感的低分辨率面部,或限制于僅可在游戲暫停且載入用于更多幀的多邊 形及紋理(及其他數(shù)據(jù))之前在有限數(shù)目的幀中制作成動(dòng)畫的真實(shí)感面部。當(dāng)PC或控制臺(tái)顯示類似于“正在載入...”的消息時(shí),觀看進(jìn)程條跨屏幕緩慢地 移動(dòng)被現(xiàn)今的復(fù)雜視頻游戲的用戶公認(rèn)為是內(nèi)在缺點(diǎn)。下一個(gè)場景從磁盤(除非另外有 條件,否則本文中的“磁盤”指非易失性光學(xué)媒體或磁性媒體,以及諸如半導(dǎo)體“閃存”存儲(chǔ) 器的非磁盤媒體)載入時(shí)的延遲可花費(fèi)若干秒或甚至若干分鐘。這浪費(fèi)時(shí)間且可能使游戲 玩家相當(dāng)沮喪。如先前所述,大量或所有延遲可能是由于來自磁盤的多邊形、紋理或其他數(shù) 據(jù)的載入時(shí)間,但也可能是以下狀況當(dāng)PC或控制臺(tái)中的處理器和/或GPU準(zhǔn)備用于場景 的數(shù)據(jù)時(shí),花費(fèi)一部分載入時(shí)間。舉例而言,英式足球視頻游戲可允許玩家在大量玩家、小 組、運(yùn)動(dòng)場及天氣條件當(dāng)中選擇。因此,取決于選擇什么特定組合,可能需要用于場景的不 同多邊形、紋理及其他數(shù)據(jù)(統(tǒng)稱“對(duì)象”)(例如,不同小組在其制服上具有不同色彩及圖 案)??赡芤信e各種排列中的許多或所有排列且提前預(yù)先計(jì)算對(duì)象中的許多或所有對(duì)象 并將對(duì)象儲(chǔ)存在用于儲(chǔ)存游戲的磁盤上。但是,若排列的數(shù)目很大,則所有對(duì)象所需的儲(chǔ)存 量可能過大以致不能安裝在磁盤上(或太不切實(shí)際以致不能下載)。因此,現(xiàn)有的PC及控 制臺(tái)系統(tǒng)通常在給定場景的復(fù)雜度與播放持續(xù)時(shí)間兩者上受約束且對(duì)于復(fù)雜場景遭受長 的載入時(shí)間。先前技術(shù)的視頻游戲系統(tǒng)及應(yīng)用程序軟件系統(tǒng)的另一顯著限制在于其越來越多 地使用例如3D對(duì)象的大數(shù)據(jù)庫(諸如,多邊形及紋理),所述大數(shù)據(jù)庫需要被載入到PC或 游戲控制臺(tái)中以用于處理。如上所述,當(dāng)將所述數(shù)據(jù)庫在本地儲(chǔ)存于磁盤上時(shí),所述數(shù)據(jù)庫 可花費(fèi)長時(shí)間來載入。然而,若數(shù)據(jù)庫系儲(chǔ)存于遠(yuǎn)程位置且經(jīng)由互聯(lián)網(wǎng)來存取,則載入時(shí)間 通常嚴(yán)重得多。在此種情形下,下載大數(shù)據(jù)庫可能花費(fèi)幾分鐘、幾小時(shí)或甚至幾天。另外, 所述數(shù)據(jù)庫常常產(chǎn)生大量費(fèi)用(例如,用于游戲、電影或歷史記錄片中的詳細(xì)的高的有桅 帆船的3D模型)且意欲用于銷售給本地終端用戶。然而,一旦數(shù)據(jù)庫被下載至本地用戶, 其就有被盜版的風(fēng)險(xiǎn)。在許多狀況下,用戶僅為了評(píng)估數(shù)據(jù)庫來觀看其是否適合用戶的需
8要(例如,當(dāng)用戶執(zhí)行特定移動(dòng)時(shí),用于游戲人物的3D服裝是否具有滿意的外觀或外表) 的目的而希望下載數(shù)據(jù)庫。對(duì)于在決定進(jìn)行購買之前評(píng)估3D數(shù)據(jù)庫的用戶而言,長載入時(shí) 間可能是阻礙。類似問題在MMOG (更具體地,如允許用戶利用更加定制化的人物的游戲)中出現(xiàn)。 對(duì)于顯示人物的PC或游戲控制臺(tái),其需要能夠存取具有3D幾何形狀(多邊形、紋理等)以 及所述人物的行為(例如,若人物具有盾牌,則盾牌是否足夠強(qiáng)以使矛偏轉(zhuǎn))的數(shù)據(jù)庫。通 常,當(dāng)MMOG由用戶初次玩時(shí),用于人物的大量數(shù)據(jù)庫在游戲的初始復(fù)本下已經(jīng)可用,游戲 的初始復(fù)本在本地在游戲光盤上可用或被下載到磁盤。但是,隨著游戲進(jìn)展,若用戶遇到數(shù) 據(jù)庫在本地不可用的人物或?qū)ο?例如,若另一用戶已建立一定制人物),則在可顯示該人 物或?qū)ο笾?,必須下載其數(shù)據(jù)庫。這可導(dǎo)致游戲的實(shí)質(zhì)延遲。給定視頻游戲的尖端性及復(fù)雜度,則在先前技術(shù)視頻游戲控制臺(tái)情況下對(duì)視頻游 戲開發(fā)商及出版商的另一挑戰(zhàn)在于開發(fā)視頻游戲經(jīng)?;ㄙM(fèi)2年到3年,成本在數(shù)千萬美 元。假定新視頻游戲控制臺(tái)平臺(tái)以大致每隔五年一次的速率引入,則游戲開發(fā)商需要在新 游戲控制臺(tái)發(fā)行之前的數(shù)年開始那些游戲的開發(fā)工作,以便在發(fā)行新平臺(tái)時(shí)使視頻游戲同 時(shí)可用。來自競爭性制造商的若干個(gè)控制臺(tái)有時(shí)大約同時(shí)發(fā)行(例如,彼此在一年或兩年 內(nèi)),但尚待分曉的是每個(gè)控制臺(tái)的流行性(例如,哪個(gè)控制臺(tái)將產(chǎn)生最大的視頻游戲軟件 銷售)。舉例而言,在最近的控制臺(tái)周期中,Microsoft XBox 360、SonyPlaystation 3及 Nintendo Wii計(jì)劃在大約相同的大體時(shí)段引進(jìn)。但在所述引進(jìn)之前的數(shù)年中,游戲開發(fā)商 實(shí)質(zhì)上必須“壓注(place bets)”哪些控制臺(tái)平臺(tái)將比其他者更成功,且相應(yīng)地投入其開 發(fā)資源。電影制作公司也必須在電影發(fā)行之前很長時(shí)間基于其估計(jì)可能成功的電影而分 攤其有限的制作資源。給定視頻游戲所需的投資的增長程度,則游戲制作越加變得類似電 影制作,且游戲制作公司常規(guī)上基于其對(duì)特定視頻游戲的將來成功的估計(jì)而投入其制作資 源。但是,不同于電影公司,此壓注并非僅基于制作本身的成功;而是,其依據(jù)于游戲要在其 上執(zhí)行的游戲控制臺(tái)的成功。同時(shí)在多個(gè)控制臺(tái)上發(fā)行游戲可減輕風(fēng)險(xiǎn),但此額外努力增 加成本,且經(jīng)常延遲游戲的實(shí)際發(fā)行。PC上的應(yīng)用程序軟件及用戶環(huán)境正變得更為計(jì)算上密集、動(dòng)態(tài)及互動(dòng),不僅使其 在視覺上更吸引用戶,而且使其更有用及直觀。舉例而言,新Windows Vista(視窗遠(yuǎn)景) 操作系統(tǒng)與Macintosh 操作系統(tǒng)的后續(xù)版本兩者并入了視覺動(dòng)畫效應(yīng)。高級(jí)圖形工具 (諸如,來自Autodesk(歐特克)公司的Maya (瑪雅 ))提供非常尖端的3D再現(xiàn)及動(dòng)畫 制作能力(其推動(dòng)了目前技術(shù)狀態(tài)的CPU及GPU的限制)。然而,這些新工具的計(jì)算要求對(duì) 于所述產(chǎn)品的用戶及軟件開發(fā)商而言產(chǎn)生了許多實(shí)際問題。因?yàn)椴僮飨到y(tǒng)(OS)的視覺顯示必須在多種計(jì)算機(jī)(包括不再出售但仍可隨著新 OS而升級(jí)的前代計(jì)算機(jī))上工作,OS圖形要求在很大程度上受OS要用于的計(jì)算機(jī)(其通 常包括不包括GPU的計(jì)算機(jī))的最少共同點(diǎn)限制。這嚴(yán)重地限制OS的圖形能力。此外,電 池供電的便攜式計(jì)算機(jī)(例如,筆記本計(jì)算機(jī))限制視覺顯示能力,因?yàn)镃PU或GPU中的高 計(jì)算活動(dòng)通常導(dǎo)致較高電力消耗及較短電池壽命。便攜式計(jì)算機(jī)通常包括在不利用處理 器時(shí)自動(dòng)地減低處理器活動(dòng)性以降低電力消耗的軟件。在一些計(jì)算機(jī)型號(hào)中,用戶可手動(dòng) 地減低處理器活動(dòng)性。舉例而言,Sony的VGN-SZ280P筆記本計(jì)算機(jī)包括在一側(cè)上標(biāo)記為 "Stamina (持久性)”(用于低性能,更長電池壽命)且另一側(cè)上標(biāo)記為“Speed (速度)”(用
9于高性能,較短電池壽命)的交換器。在便攜式計(jì)算機(jī)上執(zhí)行的OS必須能夠即使在計(jì)算機(jī) 以其峰值性能能力的一小部分執(zhí)行的情況下也可用地起作用。因此,OS圖形性能常常保持 為遠(yuǎn)低于目前技術(shù)狀態(tài)的可用計(jì)算能力。經(jīng)常出售高端的計(jì)算上密集的應(yīng)用程序(如Maya),期望所述應(yīng)用程序?qū)⒂糜诟?性能PC上。此通常產(chǎn)生高得多的性能,及更昂貴且便攜性較差、最少共同點(diǎn)的要求。因此, 所述應(yīng)用程序具有比通用OS(或通用生產(chǎn)力應(yīng)用程序,類似Microsoft Office)有限得多 的目標(biāo)受眾且通常以比通用OS軟件或通用應(yīng)用程序軟件低得多的量出售。潛在的受眾進(jìn) 一步受限制,因?yàn)轭A(yù)期的用戶時(shí)常難以提前試用所述計(jì)算上密集的應(yīng)用程序。舉例而言,假 設(shè)學(xué)生希望了解如何使用Maya或已經(jīng)知道所述應(yīng)用程序的潛在購買者在購買中希望在進(jìn) 行投資之前試用Maya (此可能涉及也購買能夠執(zhí)行Maya的高端計(jì)算機(jī))。當(dāng)學(xué)生或潛在購 買者可下載Maya的演示版本或得到Maya演示版本的物理媒體復(fù)本時(shí),若其缺乏能夠執(zhí)行 Maya的全部潛能(例如,處理復(fù)雜3D場景)的計(jì)算機(jī),則其將不能夠進(jìn)行產(chǎn)品的全方位評(píng) 估。此實(shí)質(zhì)上限制所述高端應(yīng)用程序的受眾。這也使出售價(jià)格變高,因?yàn)殚_發(fā)成本通常經(jīng) 過比通用應(yīng)用程序的購買次數(shù)小得多的購買次數(shù)而分?jǐn)?。高價(jià)應(yīng)用程序也對(duì)使用應(yīng)用程序軟件的盜版復(fù)本的個(gè)體及商業(yè)產(chǎn)生更多刺激。因 此,高端應(yīng)用程序軟件遭受猖獗盜版,盡管該軟件的出版商進(jìn)行了大量努力來通過各種技 術(shù)減輕該盜版。但是,甚至當(dāng)使用盜版的高端應(yīng)用程序時(shí),用戶也不可能排除投資昂貴的目 前技術(shù)狀態(tài)的PC來執(zhí)行盜版復(fù)本的需要。因此,盡管用戶可以用軟件應(yīng)用程序的實(shí)際零 售價(jià)格的一小部分獲得軟件應(yīng)用程序的使用,但盜版軟件的用戶仍需要購買或獲得昂貴的 PC,以便完全利用該應(yīng)用程序。此對(duì)于高性能盜版視頻游戲的用戶同樣成立。盡管盜版者可以用游戲的實(shí)際價(jià)格 的一小部分得到游戲,但其仍需要購買適當(dāng)?shù)赝嬗螒蛩璧陌嘿F計(jì)算硬件(例如,GPU-增 強(qiáng)型PC,或類似XBox 360的高端視頻游戲控制臺(tái))。假定視頻游戲通常是消費(fèi)者的娛樂, 則用于高端視頻游戲系統(tǒng)的額外成本可能是過于昂貴的。該情形在當(dāng)前工人的平均年收入 相當(dāng)?shù)?相對(duì)于美國的當(dāng)前工人平均年收入)的國家(例如,中國)中更糟。這樣,小得多 的百分比的人口擁有高端視頻游戲系統(tǒng)或高端PC。在這些國家中,用戶可支付費(fèi)用以使用 連接到互聯(lián)網(wǎng)的計(jì)算機(jī)的“網(wǎng)吧”相當(dāng)普遍。經(jīng)常地,所述網(wǎng)吧具有不具有高性能特征(諸 如,原本可使玩家能夠玩計(jì)算上密集的視頻游戲的GPU)的較舊型號(hào)或低端PC。這是在低端 PC上執(zhí)行的游戲成功的關(guān)鍵因素(諸如,Vivendi的“魔獸世界”,其在中國高度成功,且通 常是在中國的網(wǎng)吧中玩)。相比之下,計(jì)算上密集的游戲(如“第二人生”)更不可能在安 裝于中國網(wǎng)吧中的PC上玩。所述游戲?qū)嶋H上對(duì)于僅能夠存取網(wǎng)吧中的低性能PC的用戶來 說是不可訪問的。對(duì)于考慮購買視頻游戲且首先愿意通過經(jīng)由互聯(lián)網(wǎng)將演示下載到其家庭而試用 游戲的示范版本的用戶也存在障礙。視頻游戲演示常常為游戲的全能版本,其中一些特征 停用,或?qū)τ螒虿シ诺牧渴┘酉拗?。此可能涉及在可將游戲安裝于PC或控制臺(tái)上且在PC或 控制臺(tái)上執(zhí)行之前下載數(shù)十億字節(jié)的數(shù)據(jù)的長過程(可能幾個(gè)小時(shí))。在PC的狀況下,其 也可能涉及算出游戲需要哪些特殊驅(qū)動(dòng)器(例如,DirectX或OpenGL驅(qū)動(dòng)器),下載正確的 版本,安裝正確的版本,及接著確定PC是否能夠播放該游戲。后者步驟可能涉及確定PC是 否具有足夠的處理(CPU及GPU)能力、足夠的RAM及相容的OS (例如,一些游戲在Windows
10XP上執(zhí)行而不在Vista上執(zhí)行)。因此,在試圖執(zhí)行視頻游戲演示的長過程之后,用戶可能 發(fā)現(xiàn)在給定用戶的PC配置的情況下視頻游戲演示不可能玩。更糟地,一旦用戶已下載新驅(qū) 動(dòng)器以用于嘗試該演示,這些驅(qū)動(dòng)器版本就可能與用戶在PC上習(xí)慣使用的其他游戲或應(yīng) 用程序不相容,因此,演示的安裝可致使先前可操作的游戲或應(yīng)用程序不能操作。這些障 礙不僅使用戶沮喪,而且其也對(duì)視頻游戲軟件出版商及視頻游戲開發(fā)商銷售其游戲產(chǎn)生障 礙。導(dǎo)致不具經(jīng)濟(jì)效益的另一問題與以下事實(shí)有關(guān)給定PC或游戲控制臺(tái)通常被設(shè) 計(jì)以適應(yīng)對(duì)應(yīng)用程序和/或游戲的特定程度的性能要求。舉例而言,一些PC具有或多或少 的RAM、較慢或較快的CPU及較慢或較快的GPU (若其具有GPU)。一些游戲或應(yīng)用程序利用 給定PC或控制臺(tái)的全計(jì)算能力,而一些游戲或應(yīng)用程序卻不利用給定PC或控制臺(tái)的全計(jì) 算能力。若用戶的游戲或應(yīng)用程序的選擇未達(dá)到本地PC或控制臺(tái)的峰值性能能力,則用戶 可能由于未利用的特征而在PC或控制臺(tái)上浪費(fèi)了財(cái)力。在控制臺(tái)的狀況下,控制臺(tái)制造商 可能支付比資助控制臺(tái)成本所要的多的成本。存在于視頻游戲的銷售及享受中的另一問題涉及在用戶實(shí)施購買游戲之前允許 用戶觀看他人玩游戲。存在用于記錄視頻游戲以在稍后時(shí)間重放的若干先前技術(shù)方法。舉 例而言,美國專利第5,558,339號(hào)教導(dǎo)了在“游戲播放”期間將游戲狀態(tài)信息(包括游戲控 制器動(dòng)作)記錄在視頻游戲客戶端計(jì)算機(jī)(由同一個(gè)或不同用戶擁有)中。此狀態(tài)信息可 在稍后時(shí)間使用以在視頻游戲客戶端計(jì)算機(jī)(例如,PC或控制臺(tái))上重放一些或所有游戲 動(dòng)作。該方法的顯著缺點(diǎn)在于對(duì)于觀看已記錄的游戲的用戶,用戶必須具有能夠播放該游 戲的視頻游戲客戶端計(jì)算機(jī)且必須具有在該計(jì)算機(jī)上執(zhí)行的視頻游戲應(yīng)用程序,以使得當(dāng) 重放被記錄的游戲狀態(tài)時(shí)游戲播放是完全相同的。除此之外,視頻游戲應(yīng)用程序必須是以 在被記錄的游戲與經(jīng)回放的游戲之間不存在可能的執(zhí)行差異的方式編寫。舉例而言,游戲圖形大體在幀接幀基礎(chǔ)上計(jì)算。對(duì)于許多游戲,取決于場景是否特 別復(fù)雜或是否存在減緩執(zhí)行的其他延遲(例如,在PC上,另一過程可能正在執(zhí)行,以致從游 戲應(yīng)用程序奪走CPU周期),游戲邏輯有時(shí)可能花費(fèi)比一幀時(shí)間短或比一幀時(shí)間長的時(shí)間 來計(jì)算為下一個(gè)幀而顯示的圖形。在此種游戲中,以比一幀時(shí)間稍少的時(shí)間(例如,少幾個(gè) CPU時(shí)鐘周期)計(jì)算的“臨限值”巾貞最終可出現(xiàn)。當(dāng)使用完全相同的游戲狀態(tài)信息再次計(jì)算 該同一場景時(shí),可能容易花費(fèi)比一幀時(shí)間多幾個(gè)CPU時(shí)鐘周期的時(shí)間(例如,若內(nèi)部CPU總 線稍微與外部DRAM總線不同相,且即使不存在來自從游戲處理奪走數(shù)毫秒CPU時(shí)間的另一 過程的大延遲,其也引入幾個(gè)CPU周期時(shí)間的延遲)。因此,當(dāng)回放游戲時(shí),幀變成以兩個(gè) 幀時(shí)間計(jì)算而非以單個(gè)幀時(shí)間計(jì)算。一些行為基于游戲計(jì)算新幀的頻率(例如,當(dāng)游戲取 樣來自游戲控制器的輸入時(shí))。當(dāng)播放游戲時(shí),用于不同行為的時(shí)間參考中的該偏差不會(huì) 影響游戲播放,但其可導(dǎo)致所回放的游戲產(chǎn)生不同結(jié)果。舉例而言,若籃球的軌道是以穩(wěn)定 的60fps速率來計(jì)算,但游戲控制器輸入是基于計(jì)算的幀的速率來取樣,則當(dāng)記錄游戲時(shí), 計(jì)算的幀的速率可能為53fps,而當(dāng)重放游戲時(shí),計(jì)算的幀的速率可能為52fps,此可使得 籃球是否被阻止進(jìn)入籃中存在差異,從而導(dǎo)致不同結(jié)果。因此,使用游戲狀態(tài)記錄視頻游戲 需要非常謹(jǐn)慎的游戲軟件設(shè)計(jì),以確保使用同一游戲狀態(tài)信息重放產(chǎn)生完全相同的結(jié)果。用于記錄視頻游戲的另一先前技術(shù)方法是僅記錄PC或視頻游戲系統(tǒng)的視頻輸出 (例如,到VCR、DVD記錄器,或到PC上的視頻捕獲板)。接著可將視頻回倒及重放,或替代地,將記錄的視頻上傳到互聯(lián)網(wǎng)(通常在將視頻壓縮之后)。該方法的不利之處在于當(dāng)回 放3D游戲序列時(shí),用戶限于僅從觀看點(diǎn)(序列從該觀看點(diǎn)被記錄)來觀看序列。換言之, 用戶不可改變場景的觀看點(diǎn)。另外,當(dāng)經(jīng)由互聯(lián)網(wǎng)而使在家庭PC或游戲控制臺(tái)上播放的記錄的游戲序列的經(jīng) 壓縮的視頻為其他用戶可用時(shí),即使視頻是實(shí)時(shí)壓縮,也不可能實(shí)時(shí)地將經(jīng)壓縮的視頻上 傳到互聯(lián)網(wǎng)。其原因是因?yàn)槭澜缟线B接到互聯(lián)網(wǎng)的許多家庭具有高度不對(duì)稱的寬帶連接 (例如,DSL及電纜調(diào)制解調(diào)器通常具有比上流帶寬高得多的下流帶寬)。被壓縮的高分辨 率視頻序列常常具有比網(wǎng)絡(luò)的上傳帶寬容量高的帶寬,使得其不可能實(shí)時(shí)上傳。因此,在播 放游戲序列之后(可能幾分鐘或甚至幾小時(shí)),在互聯(lián)網(wǎng)上的另一用戶能夠觀看該游戲之 前,將存在顯著延遲。盡管該延遲在特定情形下(例如,觀看在先前時(shí)間出現(xiàn)的游戲玩家的 成果)可容忍,但其消除了觀看游戲現(xiàn)場直播(例如,由優(yōu)勝玩家玩的籃球錦標(biāo)賽)的能力 或現(xiàn)場直播地播放游戲時(shí)的“即刻重放”能力。另一先前技術(shù)方法允許具有電視接收器的觀看者觀看視頻游戲現(xiàn)場直播,但僅在 電視制作人員的控制下。美國與其他國家中的一些電視頻道提供視頻游戲觀看頻道,其中 電視觀眾能夠在視頻游戲頻道上觀看特定的視頻游戲用戶(例如,參加錦標(biāo)賽煩人頂級(jí)玩 家)。這通過將視頻游戲系統(tǒng)(PC和/或控制臺(tái))的視頻輸出饋送至用于電視頻道的視頻 分配及處理設(shè)備中來完成。這正如電視頻道廣播現(xiàn)場直播的籃球比賽時(shí)的情況,其中若干 個(gè)相機(jī)從籃球場周圍的不同角度提供現(xiàn)場直播的饋送。電視頻道接著能夠利用其視頻/音 頻處理及效應(yīng)設(shè)備來操作來自各種視頻游戲系統(tǒng)的輸出。舉例而言,電視頻道可在來自視 頻游戲的視頻之上疊加指示不同玩家的狀態(tài)的文字(正如其可在現(xiàn)場直播的籃球比賽期 間疊加文字),且電視頻道可加錄來自評(píng)論員(其可論述在比賽期間出現(xiàn)的動(dòng)作)的音頻。 另外,可將視頻游戲輸出與記錄游戲的實(shí)際玩家的視頻的相機(jī)(例如,顯示玩家對(duì)游戲的 情緒反應(yīng))組合。該方法的一個(gè)問題在于必須實(shí)時(shí)地使所述現(xiàn)場直播的視頻饋送為電視頻道的視 頻分配及處理設(shè)備可用,以便使其具有現(xiàn)場直播的廣播的刺激性。然而,如先前所述,當(dāng)視 頻游戲系統(tǒng)從家庭執(zhí)行時(shí)(尤其是當(dāng)廣播的一部分包括來自正捕獲游戲玩家的真實(shí)世界 視頻的相機(jī)的現(xiàn)場直播的視頻時(shí)),這常常不可能。另外,在錦標(biāo)賽情形下,所關(guān)注的是家庭 中游戲者可修改游戲及作弊,如先前所述。由于這些原因,電視頻道上的所述視頻游戲廣播 常常配置有聚集于公共位置處(例如,在電視演播室處或在競技場中)的播放器及視頻游 戲系統(tǒng),其中電視制作設(shè)備可接受來自多個(gè)視頻游戲系統(tǒng)及潛在的現(xiàn)場直播的相機(jī)的視頻 饋送。盡管所述先前技術(shù)視頻游戲電視頻道可為電視觀眾提供非常刺激的演出(這是 與現(xiàn)場直播的運(yùn)動(dòng)事件同類(例如,與以“運(yùn)動(dòng)員”呈現(xiàn)的視頻游戲玩家同類)的體驗(yàn),不 僅根據(jù)其在視頻游戲世界中的動(dòng)作,而且根據(jù)其在真實(shí)世界中的動(dòng)作),但這些視頻游戲系 統(tǒng)常常限于玩家彼此身體上極接近的情形。此外,因?yàn)殡娨曨l道被廣播,所以每個(gè)被廣播的 頻道僅可顯示由電視頻道的制作人員選擇的一個(gè)視頻流。由于這些限制及廣播時(shí)間、制作 設(shè)備及制作人員的高成本,所述電視頻道通常僅顯示參加頂級(jí)錦標(biāo)賽的頂級(jí)玩家。另外,向全部電視觀眾廣播視頻游戲的全屏幕圖像的給定電視頻道每次僅顯示一 個(gè)視頻游戲。這嚴(yán)重地限制電視觀看者的選擇。舉例而言,電視觀看者可能對(duì)給定時(shí)間顯
12示的游戲不感興趣。另一觀看者可能僅對(duì)觀看并非由電視頻道在給定時(shí)間放映的特定玩家 的游戲播放感興趣。在其他狀況下,觀看者可能僅對(duì)觀看內(nèi)行玩家如何處理游戲中的特定 級(jí)別感興趣。其他觀看者可能希望控制觀看點(diǎn)(視頻游戲從該觀看點(diǎn)來看),該觀看點(diǎn)不同 于由制作小組等選擇的觀看點(diǎn)。簡言之,電視觀看者在觀看視頻游戲中可能具有無數(shù)的偏 好(即使若干個(gè)不同電視頻道可用,電視網(wǎng)絡(luò)的特定廣播也不適應(yīng)所述偏好)。由于所有上 述原因,使得先前技術(shù)視頻游戲電視頻道在向電視觀看者呈現(xiàn)視頻游戲中具有顯著限制。先前技術(shù)視頻游戲系統(tǒng)及應(yīng)用程序軟件系統(tǒng)的另一缺點(diǎn)在于他們很復(fù)雜,且通 常遭受錯(cuò)誤、崩潰和/或無意識(shí)且不需要的行為(統(tǒng)稱“缺陷”)。盡管游戲及應(yīng)用程序在 發(fā)行之前通常經(jīng)歷除錯(cuò)及調(diào)諧過程(經(jīng)常稱為“軟件質(zhì)量保證”或SQA),但幾乎不變的是 一旦游戲或應(yīng)用程序被發(fā)行到領(lǐng)域中的廣大受眾,缺陷就會(huì)突然出現(xiàn)。遺憾的是,軟件開發(fā) 商難以在發(fā)行之后識(shí)別及追蹤到許多缺陷。軟件開發(fā)商可能難以意識(shí)到缺陷。即使當(dāng)其了 解缺陷時(shí),也可能僅存在其可用于識(shí)別是什么引起該缺陷的有限量的信息。舉例而言,用戶 可打電話給游戲開發(fā)商的消費(fèi)者服務(wù)熱線且留下消息,該消息陳述當(dāng)玩游戲時(shí),屏幕開始 閃爍,接著變成固體藍(lán)(solid blue)且PC凍結(jié)。其為SQA小組提供了在追蹤缺陷中有用 的非常少的信息。在線連接的一些游戲或應(yīng)用程序在特定狀況下有時(shí)可提供更多信息。舉 例而言,有時(shí)可使用”看門狗”過程來監(jiān)視游戲或應(yīng)用程序是否“崩潰”??撮T狗過程可收 集游戲或應(yīng)用程序崩潰時(shí)關(guān)于游戲或應(yīng)用程序過程的狀態(tài)(例如,存儲(chǔ)器堆棧使用狀態(tài)、 游戲或應(yīng)用程序進(jìn)展到的程度等)的統(tǒng)計(jì),且接著經(jīng)由互聯(lián)網(wǎng)而將所述信息上傳至SQA小 組。但在復(fù)雜游戲或應(yīng)用程序中,該信息可花費(fèi)非常長的時(shí)間來解密,以便準(zhǔn)確地確定在崩 潰時(shí)用戶正在進(jìn)行什么。盡管如此,也不可能確定什么事件序列導(dǎo)致崩潰。與PC及游戲控制臺(tái)相關(guān)聯(lián)的又一問題在于其經(jīng)受使消費(fèi)者極不便利的服務(wù)問 題。服務(wù)問題也影響PC或游戲控制臺(tái)的制造商,因?yàn)槠渫ǔP枰l(fā)送特殊盒子以安全地裝 運(yùn)破損的PC或控制臺(tái),且因而招致修理的成本(若PC或控制臺(tái)處于保修期內(nèi))。游戲或應(yīng) 用程序軟件出版商也可受處于修理狀態(tài)中的PC和/或控制臺(tái)引起的銷售損失(或在線服 務(wù)使用)影響。圖 1 說明諸如 Sony Playstation 3、Microsoft Xbox 360 、NintendoWii 、以 Windows為基礎(chǔ)的個(gè)人計(jì)算機(jī)或Apple Macintosh的先前技術(shù)視頻游戲系統(tǒng)。所述系統(tǒng)中 的每一者包括用于執(zhí)行程序碼的中央處理單元(CPU)(通常為用于執(zhí)行高級(jí)圖形操作的圖 形處理單元(GPU)),及用于與外部設(shè)備及用戶通信的多個(gè)形式的輸入/輸出(1/0)。為簡 單起見,將所述組件顯示為組合在一起為單個(gè)單元100。圖1的先前技術(shù)視頻游戲系統(tǒng)也顯 示為包括光學(xué)媒體驅(qū)動(dòng)器104 (例如,DVD-ROM驅(qū)動(dòng)器);用于儲(chǔ)存視頻游戲程序代碼及數(shù)據(jù) 的硬盤驅(qū)動(dòng)器103 ;用于播放多人游戲、用于下載游戲、補(bǔ)丁、演示或其他媒體的網(wǎng)絡(luò)連接 105 ;用于儲(chǔ)存當(dāng)前正由CPU/GPU 100執(zhí)行的程序碼的隨機(jī)存取存儲(chǔ)器(RAM)IOl ;用于在游 戲播放期間接收來自用戶的輸入命令的游戲控制器106 ;及顯示設(shè)備102(例如,SDTV/HDTV 或計(jì)算機(jī)監(jiān)視器)。圖1中所顯示的先前技術(shù)系統(tǒng)受到若干限制。首先,與RAM 101的存取速度相比 較,光學(xué)驅(qū)動(dòng)器104及硬碟機(jī)103往往具有慢得多的存取速度。當(dāng)直接通過RAM 101工作 時(shí),由于RAM 101通常具有高得多的帶寬且不會(huì)受到磁盤機(jī)構(gòu)相對(duì)長的搜尋延遲的事實(shí), CPU/GPU 100在實(shí)踐中可處理比直接從硬盤驅(qū)動(dòng)器103或光學(xué)驅(qū)動(dòng)器104讀出程序代碼及
13數(shù)據(jù)時(shí)可能的每秒多邊形數(shù)多得多的每秒多邊形數(shù)。但僅有限量的RAM提供于這些先前技 術(shù)系統(tǒng)中(例如,256-512兆字節(jié))。因此,常常需要“正在載入...”序列,其中RAM 101被 周期性地填充有用于視頻游戲的下一個(gè)場景的數(shù)據(jù)。一些系統(tǒng)試圖同時(shí)地重迭程序代碼的載入與游戲播放,但這僅可在存在已知序列 的事件時(shí)進(jìn)行(例如,若正沿道路駕駛車,則可在駕駛車的同時(shí)載入路旁的正接近的建筑 物的幾何形狀)。對(duì)于復(fù)雜和/或快速場景改變,此類型的重迭通常不起作用。舉例而言, 在用戶處于戰(zhàn)役進(jìn)行之中且在那時(shí)刻的視圖內(nèi)RAM 101完全被填滿表示對(duì)象的數(shù)據(jù)的狀 況下,若用戶將視圖快速地向左移動(dòng)以觀看當(dāng)前未載入在RAM 101中的對(duì)象,則將導(dǎo)致動(dòng) 作的不連續(xù)性,因?yàn)椴淮嬖谧銐虻臅r(shí)間來將新對(duì)象自硬盤驅(qū)動(dòng)器103或光學(xué)媒體104載入 到 RAM 101 中。圖1的系統(tǒng)的另一問題是由于硬盤驅(qū)動(dòng)器103及光學(xué)媒體104的儲(chǔ)存容量的限制 引起。盡管磁盤儲(chǔ)存設(shè)備可被制造成有相對(duì)較大的儲(chǔ)存容量(例如,500億字節(jié)或500億字 節(jié)以上),但其仍不提供用于在當(dāng)前視頻游戲中所遇到的特定情況的足夠儲(chǔ)存容量。舉例而 言,如先前所述,英式足球視頻游戲可允許用戶在全世界的許多小組、玩家及運(yùn)動(dòng)場當(dāng)中選 擇。對(duì)于每個(gè)小組、每個(gè)玩家及每個(gè)運(yùn)動(dòng)場,需要大量紋理映射及環(huán)境映射來特征化世界上 的3D表面(例如,每個(gè)小組具有唯一運(yùn)動(dòng)衫,每一者需要唯一紋理映射)。用于解決上述后者問題的一個(gè)技術(shù)是對(duì)于游戲,一旦用戶選擇了紋理及環(huán)境映 射,就預(yù)先計(jì)算紋理及環(huán)境映射。此可涉及許多計(jì)算上密集的過程,包括解壓縮圖像、3D映 射、加陰影、組織數(shù)據(jù)結(jié)構(gòu)等。因此,當(dāng)視頻游戲執(zhí)行這些計(jì)算時(shí),對(duì)于用戶可能存在延遲。 減少此延遲的一個(gè)方法原則上為最初開發(fā)游戲時(shí)執(zhí)行所有這些計(jì)算_包括小組、玩家名 冊(cè)及運(yùn)動(dòng)場的每個(gè)排列。游戲的發(fā)行版本因而將包括儲(chǔ)存在光學(xué)媒體104上或互聯(lián)網(wǎng)上的 一個(gè)或多個(gè)服務(wù)器上的所有所述經(jīng)預(yù)先處理的數(shù)據(jù),當(dāng)用戶作出選擇時(shí),僅經(jīng)由互聯(lián)網(wǎng)將 用于給定小組、玩家名冊(cè)、運(yùn)動(dòng)場選擇的選定的預(yù)先處理的數(shù)據(jù)下載到硬盤驅(qū)動(dòng)器103。然 而,作為實(shí)際問題,游戲播放中可能的每個(gè)排列的該預(yù)先載入的數(shù)據(jù)可能輕易地為幾兆兆 字節(jié)(terabyte)的數(shù)據(jù),其遠(yuǎn)超過現(xiàn)今的光學(xué)媒體設(shè)備的容量。此外,用于給定小組、玩家 名冊(cè)、運(yùn)動(dòng)場選擇的數(shù)據(jù)可能輕易地為幾億字節(jié)的數(shù)據(jù)或幾億字節(jié)以上的數(shù)據(jù)。在家庭網(wǎng) 絡(luò)連接的情況下(例如,IOMbps),經(jīng)由網(wǎng)絡(luò)連接105下載該數(shù)據(jù)將比在本地計(jì)算數(shù)據(jù)花費(fèi) 更長時(shí)間。因此,圖1中所顯示的先前技術(shù)游戲架構(gòu)使用戶在復(fù)雜游戲的較大場景轉(zhuǎn)變之間 經(jīng)受顯著延遲。諸如圖1中所顯示的先前技術(shù)方法的先前技術(shù)方法的另一問題在于這些年來, 視頻游戲傾向于變得更高級(jí)且需要更多CPU/GPU處理能力。因此,即使采用無限量的RAM, 視頻游戲硬件要求也超過所述系統(tǒng)中可用的處理能力的峰值水平。因此,需要用戶每隔幾 年升級(jí)游戲硬件以保持同步(或以較低質(zhì)量水準(zhǔn)玩較新游戲)。比以往更高級(jí)的視頻游戲 的趨勢的后果為用于家庭用途的玩視頻游戲的機(jī)器通常不具經(jīng)濟(jì)效益,因?yàn)槠涑杀就ǔ?由其可支持的最高性能游戲的要求來確定。舉例而言,可能使用XBox 360來玩類似“戰(zhàn)爭 機(jī)器(Gears of War) ”的游戲,該游戲要求高性能的CPU、GPU及幾億字節(jié)的RAM,或者可能 使用XBox 360來玩“吃豆(Pac Man) ”,其為來自20世紀(jì)70年代的游戲,其僅需要幾千字 節(jié)的RAM及非常低性能的CPU。實(shí)際上,XBox 360具有同時(shí)主機(jī)代管許多同時(shí)的“吃豆”游
14戲的足夠計(jì)算能力。在一周的大多數(shù)小時(shí)中,通常關(guān)閉視頻游戲機(jī)。根據(jù)2006年7月Nielsen(尼爾 森)娛樂對(duì)13歲及13歲以上的活躍游戲者的研究,平均起來,活躍游戲者一周中花費(fèi)十四 個(gè)小時(shí)或一周中的全部小時(shí)的僅12%來玩控制臺(tái)視頻游戲。這意味著平均視頻游戲控制臺(tái) 在88%的時(shí)間內(nèi)閑置,這是昂貴資源的無效率使用。假定視頻游戲控制臺(tái)常常是由制造商 來資助以降低購買價(jià)格(期望該資助將通過來自未來視頻游戲軟件購買的版稅來賺回), 則這特別有意義。視頻游戲控制臺(tái)也造成與幾乎任何消費(fèi)者電子設(shè)備相關(guān)的成本。舉例而言,需要 將系統(tǒng)的電子設(shè)備及機(jī)構(gòu)容納于外殼中。制造商需要提供服務(wù)保證。出售該系統(tǒng)的零售商 需要收取關(guān)于系統(tǒng)的銷售和/或關(guān)于視頻游戲軟件的銷售的利潤。所有這些因素添加視頻 游戲控制臺(tái)的成本,該成本必須由制造商來資助、傳遞至消費(fèi)者,或者由制造商與消費(fèi)者兩 者來資助。另外,盜版是視頻游戲工業(yè)的較大問題。實(shí)際上每個(gè)較大視頻游戲系統(tǒng)上所利用 的安全機(jī)構(gòu)這些年來已“破裂”,導(dǎo)致視頻游戲的未經(jīng)授權(quán)的復(fù)制。舉例而言,Xbox 360安 全系統(tǒng)在2006年7月破裂且用戶現(xiàn)在能夠在線下載非法復(fù)本??上螺d的游戲(例如,用于 PC或Mac的游戲)特別容易經(jīng)受盜版。在世界的特定區(qū)域(其中盜版管制不強(qiáng))中,實(shí)質(zhì) 上不存在獨(dú)立視頻游戲軟件的可行市場,因?yàn)橛脩艨膳c合法復(fù)本一般容易地以成本的非常 小一部分購買盜版復(fù)本。而且,在世界的許多地方,游戲控制臺(tái)的成本占收入的高百分比, 以致即使盜版受控制,也很少有人可買得起目前技術(shù)狀態(tài)的游戲系統(tǒng)。另外,已使用的游戲的市場減少了視頻游戲業(yè)的收入。當(dāng)用戶變得對(duì)游戲厭倦時(shí), 其可將游戲出售給將游戲轉(zhuǎn)售給其他用戶的店鋪。這種未經(jīng)授權(quán)但普遍的實(shí)踐顯著減少 了游戲出版商的收入。類似地,當(dāng)每隔幾年存在平臺(tái)轉(zhuǎn)變時(shí),通常出現(xiàn)大約50%的銷售減 少。這是因?yàn)楫?dāng)用戶知道即將發(fā)行較新版本的平臺(tái)時(shí),用戶停止購買用于較舊平臺(tái)的游戲 (例如,當(dāng)即將發(fā)行Playstation 3時(shí),用戶停止購買Playstation 2游戲)。組合起來,銷 售的損失及與新平臺(tái)相關(guān)的增加的開發(fā)成本可對(duì)游戲開發(fā)商的收益性有非常顯著的不利 影響。新游戲控制臺(tái)也非常昂貴。Xbox360、Nintendo Wii 及 Sony Playstation 3 均 以數(shù)百美元零售。高能力的個(gè)人計(jì)算機(jī)游戲系統(tǒng)可花費(fèi)高達(dá)$8000。這表示用戶的顯著投 資,具體來說,考慮到硬件在幾年后變陳舊及許多系統(tǒng)是為孩子而購買的事實(shí)。上述問題的一個(gè)方法是在線游戲,其中將游戲程序代碼及數(shù)據(jù)主機(jī)代管于服務(wù)器 上且按要求將其傳送至客戶端機(jī)器,經(jīng)壓縮的視頻及音頻經(jīng)由數(shù)字寬帶網(wǎng)絡(luò)而流動(dòng)。一些 公司(諸如,芬蘭的G-ClusteHG-群集公司),其現(xiàn)在為日本的SOFTBANK Broadmedia(軟 銀寬媒)的子公司)當(dāng)前在線提供所述服務(wù)。類似游戲服務(wù)變得在本地網(wǎng)絡(luò)(諸如,旅館 內(nèi)及由DSL及電纜電視提供者提供的那些網(wǎng)絡(luò))中可用。這些系統(tǒng)的較大缺點(diǎn)是延時(shí)的問 題,也即,信號(hào)行進(jìn)到游戲服務(wù)器及從游戲服務(wù)器行進(jìn)所花費(fèi)的時(shí)間,游戲服務(wù)器通常定位 在運(yùn)營商的“前端”中。快速動(dòng)作視頻游戲(也稱為“極速(twitch)”視頻游戲)在用戶 通過游戲控制器執(zhí)行動(dòng)作的時(shí)間與更新顯示屏幕以顯示用戶動(dòng)作的結(jié)果的時(shí)間之間需要 非常低的延時(shí)。需要低延時(shí),以使得用戶感覺到游戲“即刻地”響應(yīng)??梢曈螒虻念愋图坝?戶的熟練程度而以不同延時(shí)間隔來滿足用戶。舉例而言,對(duì)于緩慢的非正式游戲(類似西
15洋雙陸棋)或慢動(dòng)作角色扮演游戲而言,100毫秒的延時(shí)可能是可容忍的,但在快動(dòng)作游戲 中,超過70毫秒或80毫秒的延時(shí)可引起用戶在游戲中更拙劣地表現(xiàn),且因此不可接受。舉 例而言,在需要快反應(yīng)時(shí)間的游戲中,當(dāng)延時(shí)自50毫秒增加至100毫秒時(shí),存在準(zhǔn)確度的銳 降。當(dāng)游戲或應(yīng)用服務(wù)器安裝在附近的受控網(wǎng)絡(luò)環(huán)境或至用戶的網(wǎng)絡(luò)路徑可預(yù)測和/ 或可容忍帶寬峰值的網(wǎng)絡(luò)環(huán)境中時(shí),在最大延時(shí)以及延時(shí)的一致性方面,控制延時(shí)容易得 多(例如,因此用戶經(jīng)由網(wǎng)絡(luò)觀察到來自數(shù)字視頻流動(dòng)的穩(wěn)定運(yùn)動(dòng))。該程度的控制可在以 下達(dá)成在電纜TV網(wǎng)絡(luò)前端到電纜TV用戶的家庭之間,或自DSL中央辦公室至DSL用戶的 家庭,或在來自服務(wù)器或用戶的商業(yè)辦公室區(qū)域網(wǎng)絡(luò)(LAN)環(huán)境中。而且,有可能獲得商業(yè) 之間的具有得到保證的帶寬及延時(shí)的特定分級(jí)的點(diǎn)到點(diǎn)私用連接。但在將游戲主機(jī)代管于 連接到通用互聯(lián)網(wǎng)的服務(wù)器中心中且接著經(jīng)由寬帶連接而使經(jīng)壓縮的視頻流動(dòng)(stream) 到用戶的游戲或應(yīng)用系統(tǒng)中,許多因素造成延時(shí),導(dǎo)致先前技術(shù)系統(tǒng)的部署中的嚴(yán)重限制。在典型的連接寬帶的家庭中,用戶可具有用于寬帶服務(wù)的DSL或電纜調(diào)制解調(diào) 器。所述寬帶服務(wù)通常造成用戶的家庭與通用互聯(lián)網(wǎng)之間的多達(dá)25毫秒的來回行程延時(shí) (且有時(shí)更多)。另外,存在由于經(jīng)由互聯(lián)網(wǎng)將數(shù)據(jù)路由到服務(wù)器中心而造成的來回行程延 時(shí)。經(jīng)由互聯(lián)網(wǎng)的延時(shí)基于給出數(shù)據(jù)的路線及數(shù)據(jù)被路由時(shí)數(shù)據(jù)所造成的延遲而改變。除 路由延遲之外,還由于光穿過使大多數(shù)互聯(lián)網(wǎng)互連的光纖的速度而造成來回行程延時(shí)。舉 例而言,對(duì)于每1000英里,由于光穿過光纖的速度及其他耗用而造成約22毫秒的來回行程 延時(shí)。額外延時(shí)可由于經(jīng)由互聯(lián)網(wǎng)流動(dòng)的數(shù)據(jù)的數(shù)據(jù)速率而造成。舉例而言,若用戶具 有以“6Mbps DSL服務(wù)”出售的DSL服務(wù),則在實(shí)踐中,用戶將很可能最多得到小于5Mbps 的下行輸送量,且將可能周期性地看見由于各種因素(諸如,峰值載入時(shí)間期間在數(shù)字用 戶線接入復(fù)用器(DSLAM)處的擁擠)產(chǎn)生的連接降級(jí)。若經(jīng)由相鄰者循環(huán)的本地共用同軸 電纜中存在擁擠或電纜調(diào)制解調(diào)器系統(tǒng)網(wǎng)絡(luò)中的其他地方存在擁擠,則類似問題可出現(xiàn), 從而將用于以“6Mbps電纜調(diào)制解調(diào)器服務(wù)”出售的連接的電纜調(diào)制解調(diào)器的數(shù)據(jù)速率減 小至遠(yuǎn)小于該數(shù)據(jù)速率。若使4Mbps的穩(wěn)定速率下的數(shù)據(jù)分組以用戶數(shù)據(jù)報(bào)協(xié)議(UDP)格 式單向地從服務(wù)器中心經(jīng)由所述連接而流動(dòng),若一切都適當(dāng)?shù)毓ぷ鳎瑒t數(shù)據(jù)分組將通過而 不造成額外延時(shí),但若存在擁擠(或其他妨礙)且僅3. 5Mbps可用于使數(shù)據(jù)流動(dòng)到用戶,則 在典型情形下,包將被丟棄,導(dǎo)致丟失數(shù)據(jù),或者分組將在擁擠點(diǎn)處排隊(duì)直至它們可被發(fā)送 為止,從而引入了額外延時(shí)。不同擁擠點(diǎn)具有用于保存被延遲的分組的不同隊(duì)列容量,因此 在一些狀況下,立即將不可成功解決擁擠的分組丟棄。在其他狀況下,將幾百萬比特的數(shù)據(jù) 排隊(duì)且最終將其發(fā)送。但是,在幾乎所有狀況下,擁擠點(diǎn)處的排隊(duì)具有容量限制,且一旦超 過該限制,隊(duì)列將溢出且分組將被丟棄。因此,為了避免造成額外延時(shí)(或更糟地,分組丟 失),必須避免超過從游戲或應(yīng)用服務(wù)器到用戶的數(shù)據(jù)速率容量。還由于在服務(wù)器中壓縮視頻及在客戶端設(shè)備中解壓縮視頻所需的時(shí)間而造成延 時(shí)。當(dāng)在服務(wù)器上執(zhí)行的視頻游戲正在計(jì)算待顯示的下一個(gè)幀時(shí),進(jìn)一步造成延時(shí)。當(dāng)前可 用的視頻壓縮算法受到高數(shù)據(jù)速率或高延時(shí)。舉例而言,運(yùn)動(dòng)JPEG為僅幀內(nèi)有損的壓縮算 法,該壓縮算法特征為低延時(shí)。視頻的每個(gè)幀獨(dú)立于視頻的每個(gè)其他幀而壓縮。當(dāng)客戶端 設(shè)備接收經(jīng)壓縮的運(yùn)動(dòng)JPEG視頻的一個(gè)幀時(shí),其可立即解壓縮該幀且顯示該幀,從而導(dǎo)致
16非常低的延時(shí)。但因?yàn)槊總€(gè)幀分開進(jìn)行壓縮,所以算法不能夠利用連續(xù)幀之間的類似性,且 因此僅幀內(nèi)視頻壓縮算法受到非常高的數(shù)據(jù)速率。舉例而言,60fps (每秒幀數(shù))640X480 運(yùn)動(dòng)JPEG視頻可能需要40Mbps (每秒百萬比特)或40Mbps (每秒百萬比特)以上的數(shù)據(jù)。 用于所述低分辨率視頻窗的所述高數(shù)據(jù)速率在許多寬帶應(yīng)用程序中將是過于昂貴的(且 對(duì)于大多數(shù)消費(fèi)者的基于互聯(lián)網(wǎng)的應(yīng)用程序的確如此)。另外,因?yàn)槊總€(gè)幀經(jīng)獨(dú)立壓縮,所 以可能由于有損壓縮而產(chǎn)生的幀中的假影可能出現(xiàn)于連續(xù)幀中的不同位置處。這可導(dǎo)致當(dāng) 解壓縮視頻時(shí),在觀看者看來為移動(dòng)的視覺假影。其他壓縮算法(諸如,來自Microsoft公司的MPEG2、H. 264或VC9)當(dāng)用于先前技 術(shù)的配置中時(shí),可實(shí)現(xiàn)高壓縮比率,但以高延時(shí)為代價(jià)。所述算法利用幀間壓縮以及幀內(nèi)壓 縮。周期性地,所述算法執(zhí)行幀的僅幀內(nèi)壓縮。這種幀被稱為關(guān)鍵幀(通常稱作“I”幀)。 接著,該算法通常將I幀與先前幀與相繼幀兩者相比較。并非獨(dú)立地壓縮先前幀及相繼幀, 而是算法確定圖像從I幀到先前幀及相繼幀有什么改變,且接著將該改變儲(chǔ)存為“B”幀 (對(duì)于I幀之前的改變)及“P”幀(對(duì)于I幀之后的改變)。這導(dǎo)致比僅幀內(nèi)壓縮低得多 的數(shù)據(jù)速率。但是,其通常以較高延時(shí)為代價(jià)。I幀通常比B幀或P幀大得多(常常大10 倍),且因此,以給定數(shù)據(jù)速率傳輸成比例地花費(fèi)較長的時(shí)間??紤](例如)一個(gè)i情形其中I幀為B幀及P幀的大小的10倍,且對(duì)于每個(gè)單 個(gè)I幀內(nèi),存在29個(gè)B幀+30個(gè)P幀=59個(gè)幀間,或?qū)τ诿總€(gè)“幀群”(GOP)總共60個(gè)幀。 因此,在60fps下,每秒存在1個(gè)60幀G0P。假設(shè)傳輸信道具有2Mbps的最大數(shù)據(jù)速率。為 了在信道中達(dá)成最高質(zhì)量的視頻,壓縮算法將產(chǎn)生2Mbps數(shù)據(jù)流,且給定上述比率,這將產(chǎn) 生每幀內(nèi)2百萬比特(Mb)/(59+10) = 30,394個(gè)比特及每I幀303,935個(gè)比特。當(dāng)通過解 壓縮算法接收經(jīng)壓縮的視頻流時(shí),為了穩(wěn)定地播放視頻,需要以規(guī)則間隔(例如,60fps)解 壓縮及顯示每個(gè)幀。為了實(shí)現(xiàn)該結(jié)果,若任何幀受到傳輸延時(shí),則需要將所有幀延遲至少該 延時(shí),因此最糟狀況的幀延時(shí)將限定用于每個(gè)視頻幀的延時(shí)。因?yàn)镮幀最大,所以I幀引入 最長傳輸延時(shí),且整個(gè)I幀將必須在可解壓縮及顯示I幀(或取決于I幀的任何幀間)之 前接收。假定信道數(shù)據(jù)速率為2Mbps,則傳輸I幀將花費(fèi)303,935/2Mb = 145毫秒。使用傳輸信道的帶寬的大百分比的幀間視頻壓縮系統(tǒng)(如上所述)將由于I幀相 對(duì)于幀的平均大小的大的大小而經(jīng)受長延時(shí)。或者,換言之,當(dāng)先前技術(shù)幀間壓縮算法達(dá)成 比僅幀內(nèi)壓縮算法低的平均每幀數(shù)據(jù)速率(例如,2Mbps對(duì)40Mbps)時(shí),其由于大I幀而仍 遭受高的峰值每幀數(shù)據(jù)速率(例如,303,935*60 = 18. 2Mbps)。但請(qǐng)記住上述分析假定P 幀及B幀均比I幀小得多。盡管這大體成立,但對(duì)于具有與先前幀、高運(yùn)動(dòng)或場景改變不相 關(guān)的高圖像復(fù)雜度的幀,這不成立。在所述情形下,P幀或B幀可變得與I幀一般大(若P 幀或B幀變得比I幀大,則尖端壓縮算法通常將“強(qiáng)制”I幀且用I幀替換P幀或B幀)。因 此,I幀大小的數(shù)據(jù)速率峰值可在任何時(shí)刻出現(xiàn)于數(shù)字視頻流中。因此,對(duì)于經(jīng)壓縮的視頻, 當(dāng)平均視頻數(shù)據(jù)速率接近傳輸信道的數(shù)據(jù)速率容量時(shí)(經(jīng)常為該狀況,給定對(duì)于視頻的高 數(shù)據(jù)速率要求),來自I幀或大的P幀或B幀的高峰值數(shù)據(jù)速率導(dǎo)致高幀延時(shí)。當(dāng)然,上述論述僅特征化由GOP中的大的B幀、P幀或I幀產(chǎn)生的壓縮算法延時(shí)。 若使用B幀,則延時(shí)將更高。原因是因?yàn)樵诳娠@示B幀之前,必須接收B幀之后的所有B幀 及I幀。因此,在諸如BBBBBIPPPPPBBBBBIPPPPP的圖片群(GOP)序列中,其中在每個(gè)I幀之 前存在5個(gè)B幀,只有在接收到隨后的B幀及I幀之后才可由視頻解壓縮器顯示第一 B幀。
17因此,若使視頻以60fps (也即,16. 67毫秒/幀)流動(dòng),則在可解壓縮第一 B幀之前,不管 信道帶寬如何快,接收五個(gè)B幀及I幀將花費(fèi)16. 67*6 = 100毫秒,且這是僅5個(gè)B幀的情 況。具有30個(gè)B幀的經(jīng)壓縮的視頻序列相當(dāng)普遍。此外,在如2Mbps的低信道帶寬下,由 于I幀的大小而引起的延時(shí)影響很大程度上增加到由于等待B幀到達(dá)而產(chǎn)生的延時(shí)影響。 因此,在2Mbps信道上,在大量B幀的情況下,使用先前技術(shù)視頻壓縮技術(shù)超過500毫秒或 500毫秒以上的延時(shí)相當(dāng)容易。若不使用B幀(對(duì)于給定質(zhì)量水準(zhǔn),以較低壓縮比率為代 價(jià)),則不招致B幀延時(shí),但仍招致上文所描述的由于峰值幀大小而引起的延時(shí)。問題恰恰由于許多視頻游戲的性質(zhì)而加重。利用上文所描述的GOP結(jié)構(gòu)的視頻壓 縮算法很大程度上被最佳化以用于連同要用于被動(dòng)觀看的現(xiàn)場直播的視頻或電影材料一 起使用。通常,相機(jī)(真實(shí)相機(jī),或者計(jì)算機(jī)產(chǎn)生的動(dòng)畫的狀況下的虛擬相機(jī))及場景相對(duì) 穩(wěn)定,僅因?yàn)槿粝鄼C(jī)或場景太顛簸地來回移動(dòng),則視頻或電影材料(a)通常觀看起來令人 不愉快,且(b)若其正被觀看,當(dāng)相機(jī)突然來回顛簸時(shí),觀看者通常不能夠緊密地跟隨該動(dòng) 作(例如,若相機(jī)在拍攝吹滅生日蛋糕上的蠟燭的孩子時(shí)被擾動(dòng)且突然在蛋糕之間來回顛 簸,則觀看者通常集中于孩子及蛋糕上,而不理會(huì)相機(jī)突然移動(dòng)時(shí)的簡短中斷)。在視頻會(huì) 談或視頻電話會(huì)議的狀況下,可將相機(jī)固持于固定位置中且根本不移動(dòng),從而導(dǎo)致根本非 常少的數(shù)據(jù)峰值。但3D高動(dòng)作視頻游戲通過恒定運(yùn)動(dòng)來被特征化(例如,考慮3D競賽,其 中整個(gè)幀在競賽的持續(xù)時(shí)間中處于快速運(yùn)動(dòng)中,或者考慮第一人稱射擊游戲,其中虛擬相 機(jī)恒定地顛簸地來回移動(dòng))。所述視頻游戲可產(chǎn)生具有大的及頻繁的峰值的幀序列,其中用 戶可能需要清楚地看見在該突然運(yùn)動(dòng)期間發(fā)生了什么。因此,在3D高動(dòng)作視頻游戲中,壓 縮假影遠(yuǎn)不可容忍。因此,許多視頻游戲的視頻輸出(由于其性質(zhì))產(chǎn)生具有非常高且頻 繁的峰值的經(jīng)壓縮的視頻流。假定快動(dòng)作視頻游戲的用戶對(duì)于高延時(shí)具有小的容忍度,且給定所有上述延時(shí)原 因,至今存在對(duì)于使視頻在互聯(lián)網(wǎng)上流動(dòng)的服務(wù)器主機(jī)代管的視頻游戲的限制。另外,若需 要高度互動(dòng)性的應(yīng)用程序被主機(jī)代管于通用互聯(lián)網(wǎng)上且使視頻流動(dòng),則所述應(yīng)用程序的用 戶遭受類似限制。所述服務(wù)需要網(wǎng)絡(luò)配置,其中主機(jī)代管服務(wù)器直接設(shè)置于前端(在電纜 寬帶的狀況下)或中央辦公室(在數(shù)字用戶線(DSL)的狀況下)中,或商業(yè)背景中的LAN內(nèi) (或特別分級(jí)的私用連接上),以便控制自客戶端設(shè)備至服務(wù)器的路線及距離以最小化延 時(shí)且可適應(yīng)峰值而不造成延時(shí)。LAN(通常額定在lOOMbps-lGbps)及具有足夠帶寬的租用 線路通??芍С址逯祹捯?例如,18Mbps峰值帶寬為100Mbps LAN容量的一小部分)。若進(jìn)行特殊適應(yīng),則峰值帶寬要求也可由住宅寬帶基礎(chǔ)架構(gòu)來適應(yīng)。舉例而言,在 電纜TV系統(tǒng)上,可為數(shù)字視頻通信給出專用帶寬,該專用帶寬可處理諸如大I幀的峰值。此 外,在DSL系統(tǒng)上,可供應(yīng)較高速度的DSL調(diào)制解調(diào)器(考慮高峰值),或可供應(yīng)可處理較高 數(shù)據(jù)速率的特別分級(jí)的連接。但是,附接至通用互聯(lián)網(wǎng)的傳統(tǒng)電纜調(diào)制解調(diào)器及DSL基礎(chǔ) 架構(gòu)對(duì)于用于壓縮的視頻的峰值帶寬要求而言遠(yuǎn)不能容忍。因此,在線服務(wù)(將視頻游戲 或應(yīng)用程序主機(jī)代管于距客戶端設(shè)備長距離的服務(wù)器中心中,且接著經(jīng)由傳統(tǒng)的住宅寬帶 連接經(jīng)由互聯(lián)網(wǎng)而使經(jīng)壓縮的視頻輸出流動(dòng))遭受顯著的延時(shí)及峰值帶寬要求-尤其對(duì)于 需要非常低的延時(shí)的游戲及應(yīng)用程序(例如,第一人稱射擊游戲及其他多用戶、互動(dòng)式動(dòng) 作游戲,或需要快響應(yīng)時(shí)間的應(yīng)用程序)。
18
根據(jù)下面的詳細(xì)描述并根據(jù)附圖可以更完整地理解本公開,然而,所述附圖并不 用來將公開的主題限制到所示特定實(shí)施方式中,而只是用作解釋和理解。圖1示出了先前技術(shù)視頻游戲系統(tǒng)的架構(gòu)。圖2a至圖2b示出了根據(jù)一個(gè)實(shí)施例的高級(jí)系統(tǒng)架構(gòu)。圖3示出了用于客戶端與服務(wù)器之間的通信的實(shí)際的、額定的及所需的數(shù)據(jù)速率。圖4a示出了根據(jù)一個(gè)實(shí)施例而使用的主機(jī)服務(wù)及客戶端。圖4b示出了與客戶端與主機(jī)服務(wù)之間的通信相關(guān)的例示性延時(shí)。圖4c示出了根據(jù)一個(gè)實(shí)施例的客戶端設(shè)備。圖4d示出了根據(jù)另一個(gè)實(shí)施例的客戶端設(shè)備。圖4e示出了圖4c中的客戶端設(shè)備的實(shí)例方塊圖。圖4f示出了圖4d中的客戶端設(shè)備的實(shí)例方塊圖。圖5示出了可根據(jù)一個(gè)實(shí)施例而使用的視頻壓縮的一個(gè)實(shí)例。圖6a示出了可在另一個(gè)實(shí)施例中使用的視頻壓縮的一個(gè)實(shí)例。圖6b示出了與傳輸?shù)蛷?fù)雜度、低動(dòng)作視頻序列相關(guān)的數(shù)據(jù)速率中的峰值。圖6c示出了與傳輸高復(fù)雜度、高動(dòng)作視頻序列相關(guān)的數(shù)據(jù)速率中的峰值。圖7a至圖7b示出了在一個(gè)實(shí)施例中使用的實(shí)例視頻壓縮技術(shù)。圖8示出了在一個(gè)實(shí)施例中使用的額外實(shí)例視頻壓縮技術(shù)。圖9a至圖9c示出了在一個(gè)實(shí)施例中使用以用于緩解數(shù)據(jù)速率峰值的實(shí)例技術(shù)。圖IOa至圖IOb示出了將圖像圖像塊有效地封裝于分組內(nèi)的一個(gè)實(shí)施例。圖Ila至圖Ild示出了使用前向糾錯(cuò)技術(shù)的實(shí)施例。圖12示出了使用多核心處理單元來進(jìn)行壓縮的一個(gè)實(shí)施例。圖13a至圖13b示出了根據(jù)各種實(shí)施例的主機(jī)服務(wù)之間的地理定位及通信。圖14示出了與客戶端與主機(jī)服務(wù)之間的通信相關(guān)的示例性延時(shí)。圖15示出了實(shí)例主機(jī)服務(wù)服務(wù)器中心架構(gòu)。圖16示出了包括多個(gè)現(xiàn)場直播的視頻窗的用戶接口的一個(gè)實(shí)施例的實(shí)例屏幕拍攝。圖17示出了在選擇特定視頻窗之后的圖16的用戶接口。圖18示出了在將特定視頻窗放大至全屏幕大小之后的圖17的用戶接口。圖19示出了疊加在多人游戲的屏幕上的實(shí)例合作用戶視頻數(shù)據(jù)。圖20示出了用于主機(jī)服務(wù)上的游戲玩家的實(shí)例用戶頁面。圖21示出了實(shí)例3D互動(dòng)式廣告。圖22示出了用于自現(xiàn)場直播的表演的表面捕獲產(chǎn)生具有紋理表面的照片般逼真 的圖像的實(shí)例步驟序列。圖23示出了允許選擇線性媒體內(nèi)容的實(shí)例用戶接口頁面。圖24為示出了在現(xiàn)場直播網(wǎng)頁之前消逝的時(shí)間量與連接速度的曲線圖。
19
具體實(shí)施例方式在以下描述中列舉了特定細(xì)節(jié)(諸如,設(shè)備類型、系統(tǒng)配置、通信方法等),以便提 供對(duì)本公開的徹底理解。然而,一般本領(lǐng)域的技術(shù)人員應(yīng)了解,實(shí)踐所描述的所述實(shí)施例可 能不需要這些特定細(xì)節(jié)。圖2a至圖2b提供兩個(gè)實(shí)施例的高級(jí)架構(gòu),其中視頻游戲及軟件應(yīng)用程序由主機(jī) 服務(wù)210主機(jī)代管且在訂閱服務(wù)下由用戶場所211 (注意,“用戶場所”意思是用戶所定位的 無論何處的位置,若使用移動(dòng)設(shè)備則包括室外)處的客戶端設(shè)備205經(jīng)由互聯(lián)網(wǎng)206 (或其 他公眾網(wǎng)絡(luò)或私用網(wǎng)絡(luò))來存取。客戶端設(shè)備205可為具有至互聯(lián)網(wǎng)的有線或無線連接、 具有內(nèi)部或外部顯示設(shè)備222的通用計(jì)算機(jī)(諸如,以Microsoft Windows或Linux為基 礎(chǔ)的PC或Apple公司的Macintosh計(jì)算機(jī)),或者其可為將視頻及音頻輸出到監(jiān)視器或電 視機(jī)222的諸如機(jī)頂盒的專用客戶端設(shè)備(具有至互聯(lián)網(wǎng)的有線或無線連接),或者其可為 推測起來具有至互聯(lián)網(wǎng)的無線連接的行動(dòng)設(shè)備。所述設(shè)備中的任一者可具有其自身的用戶輸入設(shè)備(例如,鍵盤、按鈕、觸摸屏 幕、追蹤板(track pad)或慣性感測棒(inertial-sensing wand)、視頻捕獲相機(jī)和/或運(yùn) 動(dòng)追蹤相機(jī)等),或者其可使用通過有線或無線連接的外部輸入設(shè)備221 (例如,鍵盤、鼠 標(biāo)、游戲控制器、慣性感測棒、視頻捕獲相機(jī)和/或運(yùn)動(dòng)追蹤相機(jī)等)。如下文更詳細(xì)描述, 主機(jī)服務(wù)210包括各種性能水平的服務(wù)器(包括具有高能力CPU/GPU處理能力的那些服務(wù) 器)。在播放游戲或使用主機(jī)服務(wù)210上的應(yīng)用程序期間,家庭或辦公室客戶端設(shè)備205 接收來自用戶的鍵盤和/或控制器輸入,且接著其將控制器輸入經(jīng)由互聯(lián)網(wǎng)206傳輸至主 機(jī)服務(wù)210,主機(jī)服務(wù)210作為響應(yīng)來執(zhí)行游戲程序代碼并產(chǎn)生用于游戲或應(yīng)用程序軟件 的視頻輸出(視頻圖像序列)的相繼幀(例如,若用戶按壓將會(huì)指引屏幕上的人物向右移 動(dòng)的按鈕,則游戲程序接著將產(chǎn)生顯示人物向右移動(dòng)的視頻圖像序列)。接著使用低延時(shí) 視頻壓縮器壓縮該視頻圖像序列,且主機(jī)服務(wù)210接著經(jīng)由互聯(lián)網(wǎng)206而傳輸?shù)脱訒r(shí)視頻 流。家庭或辦公室客戶端設(shè)備接著解碼經(jīng)壓縮的視頻流并將經(jīng)解壓縮的視頻圖像再現(xiàn)于監(jiān) 視器或TV上。因此,顯著地減少客戶端設(shè)備205的計(jì)算及圖形硬件要求??蛻舳?05僅需 要具有用于將鍵盤/控制器輸入轉(zhuǎn)發(fā)到互聯(lián)網(wǎng)206且解碼并解壓縮從互聯(lián)網(wǎng)206所接收的 經(jīng)壓縮的視頻流的處理能力,實(shí)際上現(xiàn)今任何個(gè)人計(jì)算機(jī)均能夠在其CPU上以軟件來進(jìn)行 這些(例如,以約2GHz執(zhí)行的Intel公司雙核CPU能夠解壓縮使用諸如H. 264及Windows 媒體VC9的壓縮器編碼的720p HDTV)。此外,在任何客戶端設(shè)備的狀況下,專用芯片也可以 比通用CPU低得多的成本及比通用CPU少得多的電力消耗(諸如,現(xiàn)代PC所需的)來實(shí)時(shí) 地執(zhí)行用于所述標(biāo)準(zhǔn)的視頻解壓縮。值得注意地,為了執(zhí)行轉(zhuǎn)遞控制器輸入及解壓縮視頻 的功能,家庭客戶端設(shè)備205不需要任何專門化的圖形處理單元(GPU)、光學(xué)驅(qū)動(dòng)器或硬盤 驅(qū)動(dòng)器(諸如,圖1中所顯示的先前技術(shù)視頻游戲系統(tǒng))。隨著游戲及應(yīng)用程序軟件變得更復(fù)雜及更具照片般逼真感,其將需要較高性能的 CPU、GPU、較多RAM,及較大且較快的磁盤驅(qū)動(dòng)器,且可使主機(jī)服務(wù)210處的計(jì)算能力不斷地 升級(jí),但終端用戶將不需要使家庭或辦公室客戶端平臺(tái)205升級(jí),因?yàn)閷⑼ㄟ^給定視頻解 壓縮算法而使家庭或辦公室客戶端平臺(tái)205的處理要求對(duì)于顯示分辨率及幀速率保持恒 定。因此,圖2a至圖2b中所說明的系統(tǒng)中不存在現(xiàn)今所見的硬件限制及相容性問題。另外,因?yàn)橛螒蚣皯?yīng)用程序軟件僅在主機(jī)服務(wù)210中的服務(wù)器中執(zhí)行,所以在用
20戶的家庭或辦公室(除非另外有條件,否則如本文中所使用的“辦公室”將包括任何非住宅 背景,包括(例如)教室)中決不存在游戲或應(yīng)用程序軟件的復(fù)本(光學(xué)媒體的形式,或者 為下載的軟件)。這顯著減輕游戲或應(yīng)用程序軟件被非法復(fù)制(盜版)的可能性,以及減輕 可由游戲或應(yīng)用程序軟件使用的有價(jià)值的數(shù)據(jù)庫被盜版的可能性。實(shí)際上,若需要專門化 的服務(wù)器(例如,需要非常昂貴的、大的或有噪音的設(shè)備)來播放對(duì)于家庭或辦公室使用不 可行的游戲或應(yīng)用程序軟件,則即使獲得游戲或應(yīng)用程序軟件的盜版復(fù)本,其也將不可在 家庭或辦公室中操作。在一個(gè)實(shí)施例中,主機(jī)服務(wù)210向設(shè)計(jì)視頻游戲的游戲或應(yīng)用程序軟件開發(fā)商 (其大體指代軟件開發(fā)公司、游戲或電影工作室,或游戲或應(yīng)用程序軟件出版商)220提供 軟件開發(fā)工具,以使得其可設(shè)計(jì)能夠在主機(jī)服務(wù)210上執(zhí)行的游戲。所述工具允許開發(fā)商 利用主機(jī)服務(wù)的特征(所述特征通常在獨(dú)立PC或游戲控制臺(tái)中將不可用)(例如,快速存 取復(fù)雜幾何形狀的非常大的數(shù)據(jù)庫(除非另外有條件,否則“幾何形狀”將在本文中用于指 代限定3D數(shù)據(jù)集的多邊形、紋理、索具、照明、行為及其他組件及參數(shù)))。在該架構(gòu)下,不同商業(yè)模型是可能的。在一個(gè)模型下,主機(jī)服務(wù)210從終端用戶 收取訂閱費(fèi)用且向開發(fā)商220支付版稅,如圖2a中所顯示。在替代實(shí)施中(圖2b中所顯 示),開發(fā)商220直接從用戶收取訂閱費(fèi)用且向主機(jī)服務(wù)210支付用于主機(jī)代管游戲或應(yīng)用 程序內(nèi)容的費(fèi)用。這些基本原理不限于用于提供在線游戲或應(yīng)用程序主機(jī)代管的任何特定 商業(yè)模型。經(jīng)壓縮的視頻特性如先前所論述,在線提供視頻游戲服務(wù)或應(yīng)用程序軟件服務(wù)的一個(gè)顯著問題在于 延時(shí)。70毫秒-80毫秒的延時(shí)(自輸入設(shè)備被用戶致動(dòng)(actuate)的時(shí)刻到在顯示設(shè)備上 顯示響應(yīng)時(shí)的時(shí)刻)為用于需要快響應(yīng)時(shí)間的游戲及應(yīng)用程序的上限。然而,由于大量實(shí) 際及物理約束而使得這在圖2a及圖2b中所顯示的架構(gòu)的情況下非常難以達(dá)成。如圖3中所指示,當(dāng)用戶訂閱互聯(lián)網(wǎng)服務(wù)時(shí),連接通常額定為到用戶的家庭或辦 公室的標(biāo)定最大數(shù)據(jù)速率301。取決于提供者的策略及路由設(shè)備能力,該最大數(shù)據(jù)速率可或 多或少被嚴(yán)格地強(qiáng)制執(zhí)行,但通常由于許多不同原因中的一者而使得實(shí)際可用數(shù)據(jù)速率較 低。舉例而言,可能在DSL中央辦公室處或在本地電纜調(diào)制解調(diào)器回路上存在過多網(wǎng)絡(luò)通 信通信,或可能在電纜線上存在噪音,從而引起丟棄的分組,或提供者可能建立每用戶每月 最大數(shù)目的比特。當(dāng)前,用于電纜及DSL服務(wù)的最大下行數(shù)據(jù)速率通常在數(shù)百千比特/秒 (Kbps)到30Mbps的范圍內(nèi)。蜂窩式服務(wù)通常限于數(shù)百Kbps的下行數(shù)據(jù)。然而,寬帶服務(wù) 的速度及訂閱寬帶服務(wù)的用戶的數(shù)目將隨著時(shí)間而急劇增加。當(dāng)前,一些分析者估計(jì)33% 的美國寬帶用戶具有2Mbps或2Mbps以上的下行數(shù)據(jù)速率。舉例而言,一些分析者預(yù)測至 2010年止,超過85%的美國寬帶用戶將具有2Mbps或2Mbps以上的數(shù)據(jù)速率。如圖3中所指示,實(shí)際可用最大數(shù)據(jù)速率302可隨著時(shí)間而波動(dòng)。因此,在低延 時(shí)、在線游戲或應(yīng)用程序軟件情況下,有時(shí)難以預(yù)測用于特定視頻流的實(shí)際可用數(shù)據(jù)速率。 若對(duì)于特定量的場景復(fù)雜度及運(yùn)動(dòng)在給定數(shù)目的每秒幀數(shù)(fps)下以給定分辨率(例如, 640X480i60fps)維持給定質(zhì)量水平所需的數(shù)據(jù)速率303升高高于實(shí)際可用最大數(shù)據(jù)速率 302 (如通過圖3中的峰值指示),則可出現(xiàn)若干問題。舉例而言,一些互聯(lián)網(wǎng)服務(wù)將僅丟棄 分組,從而導(dǎo)致用戶的視頻屏幕上的丟失的數(shù)據(jù)及失真的/丟失的圖像。其他服務(wù)將暫時(shí)
21緩沖(也即,排隊(duì))額外分組且以可用數(shù)據(jù)速率將所述分組提供到客戶端,從而導(dǎo)致延時(shí)的 增加-對(duì)于許多視頻游戲及應(yīng)用程序而言為不可接受的結(jié)果。最后,一些互聯(lián)網(wǎng)服務(wù)提供 者將數(shù)據(jù)速率的增加視為惡意攻擊(諸如,否認(rèn)服務(wù)攻擊(由計(jì)算機(jī)黑客用以使網(wǎng)絡(luò)連接 停用的公知技術(shù))),且將在特定時(shí)間周期中切斷用戶的互聯(lián)網(wǎng)連接。因此,本文中所描述的 實(shí)施例設(shè)法確保用于視頻游戲的所需數(shù)據(jù)速率不會(huì)超過最大可用數(shù)據(jù)速率。主機(jī)服務(wù)架構(gòu)圖4a說明根據(jù)一個(gè)實(shí)施例的主機(jī)服務(wù)210的架構(gòu)。主機(jī)服務(wù)210可位于單個(gè)服務(wù) 器中心中,或者可跨越多個(gè)服務(wù)器中心而分散(以為具有比其他者低延時(shí)的至特定服務(wù)器中 心的路徑的用戶提供低延時(shí)連接,以在用戶之間提供負(fù)載平衡,且在一或多個(gè)服務(wù)器中心出 故障的狀況下提供冗余)。主機(jī)服務(wù)210最終可包括成千上萬個(gè)或甚至數(shù)百萬個(gè)服務(wù)器402, 從而服務(wù)非常大的用戶基礎(chǔ)(user base)。主機(jī)服務(wù)控制系統(tǒng)401提供對(duì)主機(jī)服務(wù)210的總 體控制,且指引路由器、服務(wù)器、視頻壓縮系統(tǒng)、計(jì)費(fèi)及帳務(wù)系統(tǒng)等。在一個(gè)實(shí)施例中,主機(jī)服 務(wù)控制系統(tǒng)401實(shí)施在基于Linux的分散式處理系統(tǒng)上,該處理系統(tǒng)綁定到用于儲(chǔ)存用于用 戶信息、服務(wù)器信息及系統(tǒng)統(tǒng)計(jì)數(shù)據(jù)的數(shù)據(jù)庫的RAID陣列。在上述描述中,除非歸因于其他 特定系統(tǒng),否則由主機(jī)服務(wù)210實(shí)施的各種動(dòng)作由主機(jī)服務(wù)控制系統(tǒng)401來起始及控制。主機(jī)服務(wù)210包括許多服務(wù)器402,諸如當(dāng)前可從Intel (因特爾公司)、IBM(美 國國際商用機(jī)器公司)及Hewlett Packard(惠普公司)及其他者得到的所述服務(wù)器?;?者,可將服務(wù)器402裝配成定制組件配置,或者最終可將服務(wù)器402整合以便將整個(gè)服務(wù)器 實(shí)施為單個(gè)芯片。盡管此圖為說明起見而顯示少數(shù)服務(wù)器402,但在實(shí)際部署中,可能存在 少至一個(gè)服務(wù)器402或多達(dá)數(shù)百萬個(gè)或數(shù)百萬個(gè)以上服務(wù)器402的服務(wù)器。服務(wù)器402均 可以相同方式配置(作為一些配置參數(shù)的實(shí)例,具有相同CPU類型及性能;具有或不具有 GPU,且若具有GPU,則具有相同GPU類型及性能;具有相同數(shù)目的CPU及GPU ;具有相同量及 相同類型/速度的RAM ;及具有相同RAM配置),或服務(wù)器402的各種子集可具有相同配置 (例如,25%的服務(wù)器可以一個(gè)特定方式配置,50%的服務(wù)器以不同方式配置,且25%的服 務(wù)器以又一個(gè)方式配置),或每個(gè)服務(wù)器402可不同。在一個(gè)實(shí)施例中,服務(wù)器402無磁盤,也即,并非具有其自身的本地大容量儲(chǔ)存器 (其為光學(xué)或磁性儲(chǔ)存器,或者基于半導(dǎo)體的儲(chǔ)存器,諸如閃存或服務(wù)類似功能的其他大 容量儲(chǔ)存裝置),每一個(gè)服務(wù)器經(jīng)由快速底板或網(wǎng)絡(luò)連接而存取共用的大容量儲(chǔ)存器。在 一個(gè)實(shí)施例中,該快速連接為連接到獨(dú)立冗余磁盤陣列(RAID)405系列的儲(chǔ)存區(qū)域網(wǎng)絡(luò) (SAN)403,在使用超高速以太網(wǎng)實(shí)施的設(shè)備之間具有連接。如本領(lǐng)域的技術(shù)人員已知的, SAN 403可用于將許多RAID陣列405組合在一起,從而導(dǎo)致極高的帶寬_接近或可能超過 可自用于當(dāng)前游戲控制臺(tái)及PC中的RAM得到的帶寬。此外,盡管基于諸如磁性媒體的旋轉(zhuǎn) 媒體的RAID陣列經(jīng)常具有顯著的搜尋時(shí)間存取延時(shí),但基于半導(dǎo)體儲(chǔ)存器的RAID陣列可 實(shí)施為具有低得多的存取延時(shí)。在另一配置中,一些或所有服務(wù)器402在本地提供一些或 所有其自身的大容量儲(chǔ)存器。舉例而言,服務(wù)器402可將頻繁存取的信息(諸如,其操作 系統(tǒng)及視頻游戲或應(yīng)用程序的復(fù)本)儲(chǔ)存在基于低延時(shí)本地閃存的儲(chǔ)存器上,但其可利用 SAN來存取基于旋轉(zhuǎn)媒體的具有較高搜尋延時(shí)的RAID陣列405,以較不頻繁地存取幾何形 狀或游戲狀態(tài)信息的大數(shù)據(jù)庫。另外,在一個(gè)實(shí)施例中,主機(jī)服務(wù)210使用下文詳細(xì)描述的低延時(shí)視頻壓縮邏輯
22404。視頻壓縮邏輯404可以軟件、硬件或其任何組合來實(shí)施(下文描述其特定實(shí)施例)。 視頻壓縮邏輯404包括用于壓縮音頻以及視覺材料的邏輯。在操作中,當(dāng)經(jīng)由鍵盤、鼠標(biāo)、游戲控制器或其他輸入設(shè)備421而玩視頻游戲或使 用用戶場所211處的應(yīng)用程序時(shí),客戶端415上的控制信號(hào)邏輯413將表示由用戶促使的 按鈕按壓(及其他類型的用戶輸入)的控制信號(hào)406a-b(通常為UDP分組的形式)傳輸 到主機(jī)服務(wù)210。將來自給定用戶的控制信號(hào)路由到適當(dāng)服務(wù)器(或若多個(gè)服務(wù)器響應(yīng)于 用戶的輸入設(shè)備,則路由至多個(gè)服務(wù)器)402。如圖4a中所說明,可經(jīng)由SAN而將控制信號(hào) 406a路由至服務(wù)器402??商鎿Q地或另外,可經(jīng)由主機(jī)服務(wù)網(wǎng)絡(luò)(例如,基于以太網(wǎng)的區(qū)域 網(wǎng)絡(luò))而將控制信號(hào)406b直接路由至服務(wù)器402。不管控制信號(hào)406a-b是如何被傳輸,該 或所述服務(wù)器均響應(yīng)于控制信號(hào)406a_b而執(zhí)行游戲或應(yīng)用程序軟件。盡管圖4a中未說明, 但各種網(wǎng)絡(luò)連接組件(諸如,防火墻和/或網(wǎng)關(guān))可處理主機(jī)服務(wù)210的邊緣處(例如,主 機(jī)服務(wù)210與互聯(lián)網(wǎng)410之間)和/或用戶場所211的邊緣處(互聯(lián)網(wǎng)410與家庭或辦公 室客戶端415之間)的傳入及傳出的通信。所執(zhí)行的游戲或應(yīng)用程序軟件的圖形及音頻輸 出(也即,新的視頻圖像序列)提供至低延時(shí)視頻壓縮邏輯404,低延時(shí)視頻壓縮邏輯404 根據(jù)低延時(shí)視頻壓縮技術(shù)(諸如,本文中所描述的所述技術(shù))而壓縮視頻圖像序列且經(jīng)由 互聯(lián)網(wǎng)410(或,如下文所描述,經(jīng)由繞過通用互聯(lián)網(wǎng)的最佳高速網(wǎng)絡(luò)服務(wù))而將經(jīng)壓縮的 視頻流(通常具有經(jīng)壓縮或未經(jīng)壓縮的音頻)傳輸回至客戶端415。接著,客戶端415上的 低延時(shí)視頻解壓縮邏輯412解壓縮視頻及音頻流并再現(xiàn)經(jīng)解壓縮的視頻流,且通常在顯示 設(shè)備422上播放經(jīng)解壓縮的音頻流?;蛘撸稍谂c顯示設(shè)備422分開的揚(yáng)聲器上播放音頻 或根本不播放音頻。注意,盡管輸入設(shè)備421及顯示設(shè)備422在圖2a及圖2b中顯示為獨(dú) 立式設(shè)備,但其可集成在諸如便攜式計(jì)算機(jī)或行動(dòng)設(shè)備的客戶端設(shè)備內(nèi)。家庭或辦公室客戶端415 (先前在圖2a及圖2b中描述為家庭或辦公室客戶端 205)可為非常低廉且低能力的設(shè)備,其具有非常有限的計(jì)算或圖形性能且可能具有非常 有限的本地大容量儲(chǔ)存器或不具有本地大容量儲(chǔ)存器。相比之下,耦合至SAN 403及多個(gè) RAID 405的每一個(gè)服務(wù)器402可為格外高性能的計(jì)算系統(tǒng),且實(shí)際上,若多個(gè)服務(wù)器以并 列處理配置合作地使用,則幾乎不存在對(duì)可承受的計(jì)算量及圖形處理能力的限制。此外,由 于低延時(shí)視頻壓縮404及低延時(shí)視頻解壓縮412(由用戶感知地),所以將服務(wù)器402的計(jì) 算能力提供給用戶。當(dāng)用戶按壓輸入設(shè)備421上的按鈕時(shí),顯示器422上的圖像被響應(yīng)于 按鈕按壓而更新(在感知上無有意義的延遲),好像游戲或應(yīng)用程序軟件在本地執(zhí)行。因 此,對(duì)于為非常低性能的計(jì)算機(jī)或只是實(shí)施低延時(shí)視頻解壓縮及控制信號(hào)邏輯413的低廉 芯片的家庭或辦公室客戶端415,自看來在本地可用的遠(yuǎn)程位置有效地為用戶提供任意計(jì) 算能力。此為用戶給出用于玩最高級(jí)、處理器密集的(通常為新的)視頻游戲及最高性能 的應(yīng)用程序的能力。圖4c顯示非?;A(chǔ)且低廉的家庭或辦公室客戶端設(shè)備465。該設(shè)備為根據(jù)圖4a 及圖4b的家庭或辦公室客戶端415的一個(gè)實(shí)施例。其大約2英寸長。其具有與具有以太 網(wǎng)供電(PoE)的以太網(wǎng)電纜相接口的以太網(wǎng)插孔462,該設(shè)備從以太網(wǎng)插孔462得到其電 力及其到互聯(lián)網(wǎng)的連接性。該設(shè)備能夠在支持網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)的網(wǎng)絡(luò)內(nèi)執(zhí)行NAT。在 辦公室環(huán)境中,許多新的以太網(wǎng)交換器具有PoE且將PoE直接帶到辦公室中的以太網(wǎng)插孔。 在此種情形下,所需的為從壁式插孔到客戶端465的以太網(wǎng)電纜。若可用的以太網(wǎng)連接不運(yùn)輸電力(例如,在具有DSL或電纜調(diào)制解調(diào)器但無PoE的家庭中),則存在可用的低廉的 壁式“磚塊(brick)”(也即,電源),其將接受無電力的以太網(wǎng)電纜且輸出具有PoE的以太 網(wǎng)??蛻舳?65含有耦合至藍(lán)牙無線接口的控制信號(hào)邏輯413 (圖4a),該藍(lán)牙無線接 口與諸如鍵盤、鼠標(biāo)、游戲控制器和/或麥克風(fēng)和/或耳機(jī)的藍(lán)牙輸入設(shè)備479相接口。而 且,客戶端465的一個(gè)實(shí)施例在與顯示設(shè)備468耦合的情況下能夠以120fps輸出視頻,顯 示設(shè)備468能夠支持120fps視頻且向一對(duì)遮光眼鏡466發(fā)信號(hào)(通常經(jīng)由紅外)以對(duì)于 每個(gè)相繼幀交替地遮蔽一只眼接著遮蔽另一只眼。用戶所感覺的效果為“跳出”顯示屏幕 的立體3D圖像。支持該操作的一種該顯示設(shè)備468為Samsung HL-T5076S。因?yàn)橛糜诿恳?只眼的視頻流是單獨(dú)的,所以在兩個(gè)獨(dú)立視頻流由主機(jī)服務(wù)210壓縮的一個(gè)實(shí)施例中,幀 在時(shí)間上交錯(cuò),且?guī)诳蛻舳?65內(nèi)以兩個(gè)獨(dú)立解壓縮過程來解壓縮??蛻舳?65也含有低延時(shí)視頻解壓縮邏輯412,其解壓縮傳入的視頻及音頻且經(jīng) 由HDMI (高清晰度多媒體接口 )、連接器463輸出,HDMI (高清晰度多媒體接口 )、連接器463 插入到SDTV (標(biāo)準(zhǔn)清晰度電視)或HDTV (高清晰度電視)468中,從而向TV提供視頻及音 頻,或插入到支持HDMI的監(jiān)視器468中。若用戶的監(jiān)視器468不支持HDMI,則可使用HDMI 至DVI (數(shù)字視覺接口),但音頻將丟失。在HDMI標(biāo)準(zhǔn)下,顯示能力(例如,所支持的分辨 率,幀速率)464從顯示設(shè)備468表達(dá),且接著經(jīng)由互聯(lián)網(wǎng)連接462將該信息傳回到主機(jī)服 務(wù)210,因此主機(jī)服務(wù)210可使經(jīng)壓縮的視頻以適合于該顯示設(shè)備的格式流動(dòng)。圖4d顯示家庭或辦公室客戶端設(shè)備475,除了客戶端設(shè)備475具有更多外部接口 之外,其與圖4c中所顯示的家庭或辦公室客戶端設(shè)備465相同。而且,客戶端475可接受 PoE來供電,或者其可占用插入墻壁中的外部電源適配器(未圖示)。視頻相機(jī)477使用客 戶端475 USB輸入將經(jīng)壓縮的視頻提供到客戶端475,經(jīng)壓縮的視頻由客戶端475上傳到主 機(jī)服務(wù)210以用于下文所描述的用途。將利用下文所描述的壓縮技術(shù)將低延時(shí)壓縮器創(chuàng)建 到相機(jī)477中。除具有用于其互聯(lián)網(wǎng)連接的以太網(wǎng)連接器之外,客戶端475還具有到互聯(lián)網(wǎng)的 802. Ilg無線接口。兩種接口均能夠在支持NAT的網(wǎng)絡(luò)內(nèi)使用NAT。而且,除具有用于輸出視頻及音頻的HDMI連接器之外,客戶端475還具有雙鏈接 DVI-I連接器,雙鏈接DVI-I連接器包括模擬輸出端(且具有將提供VGA輸出的標(biāo)準(zhǔn)適配器 電纜)。其還具有用于復(fù)合視頻及S視頻的模擬輸出端。對(duì)于音頻,客戶端475具有左/右模擬立體RCA插孔,且對(duì)于數(shù)字音頻輸出,其具 有T0SLINK (光纖)輸出端。除了到輸入設(shè)備479的藍(lán)牙無線接口之外,其還具有用于接口到輸入設(shè)備的USB 插孔。圖4e顯示客戶端465的內(nèi)部架構(gòu)的一個(gè)實(shí)施例。該圖中所顯示的所有設(shè)備或一 些設(shè)備可實(shí)施在場可程序化邏輯陣列、定制ASIC中或若干個(gè)離散設(shè)備(定制設(shè)計(jì)或者現(xiàn)成 的)中。具有PoE的以太網(wǎng)497附接到以太網(wǎng)接口 481。電力499才具有PoE的以太網(wǎng)497 得到且連接到客戶端465中的其余設(shè)備??偩€480為用于設(shè)備之間的通信的公同總線。執(zhí)行來自閃存476的小客戶端控制應(yīng)用程序的控制CPU 483 (幾乎任何小CPU都是適當(dāng)?shù)?,諸如具有嵌入式RAM的IOOMHz下的MIPS R4000系列CPU)實(shí)施用于網(wǎng)絡(luò)(也即, 以太網(wǎng)接口)的協(xié)議棧且還與主機(jī)服務(wù)210通信,并配置客戶端465中的所有設(shè)備。其還 處理與輸入設(shè)備469的接口并將分組(必要時(shí),連同受前向糾錯(cuò)保護(hù)的用戶控制器數(shù)據(jù)一 起)發(fā)送回至主機(jī)服務(wù)210。而且,控制CPU 483監(jiān)視分組通信(例如,分組是丟失還是延 遲,以及其到達(dá)的時(shí)間戳)。將此信息發(fā)送回至主機(jī)服務(wù)210,以使得其可恒定地監(jiān)視網(wǎng)絡(luò) 連接且相應(yīng)地調(diào)整其發(fā)送的內(nèi)容。最初在制造時(shí)為閃存476載入用于控制CPU 483的控制 程序以及對(duì)于特定客戶端465單元而言唯一的序號(hào)。此序號(hào)允許主機(jī)服務(wù)210唯一地識(shí)別 客戶端465單元。藍(lán)牙接口 484經(jīng)由其天線(在客戶端465內(nèi)部)無線地通信至輸入設(shè)備469。視頻解壓縮器486為經(jīng)配置以實(shí)施本文中所描述的視頻解壓縮的低延時(shí)視頻解 壓縮器。大量視頻解壓縮設(shè)備存在,或者為現(xiàn)成產(chǎn)品,或者作為具有可整合在FPGA或定制 ASIC中的設(shè)計(jì)的知識(shí)產(chǎn)權(quán)(IP)。一個(gè)提供用于H. 264解碼器的IP的公司為澳大利亞新南 威爾士州(NSW Australia)的Ocean Logicof Manly。使用IP的優(yōu)點(diǎn)在于本文中所使用 的壓縮技術(shù)與壓縮標(biāo)準(zhǔn)不相符。一些標(biāo)準(zhǔn)解壓縮器足夠靈活以經(jīng)配置以適應(yīng)本文中的壓縮 技術(shù),但一些標(biāo)準(zhǔn)解壓縮器可能并非如此。但是,在IP的情況下,在視需要而重新設(shè)計(jì)解壓 縮器中存在完全靈活性。視頻解壓縮器的輸出端耦合至視頻輸出子系統(tǒng)487,視頻輸出子系統(tǒng)487將視頻 耦合至HDMI接口 490的視頻輸出端。音頻解壓縮子系統(tǒng)488或者使用可用的標(biāo)準(zhǔn)音頻解壓縮器來實(shí)施,或者其可實(shí)施 為IP,或者可在可(例如)實(shí)施VorbiS音頻解壓縮器的控制處理器483內(nèi)實(shí)施音頻解壓 縮。實(shí)施音頻解壓縮的設(shè)備耦合到音頻輸出子系統(tǒng)489,音頻輸出子系統(tǒng)489將音頻 耦合至HDMI接口 490的音頻輸出端。圖4f顯示客戶端475的內(nèi)部架構(gòu)的一個(gè)實(shí)施例。如可見,除額外接口及來自插入 墻壁中的電源適配器的可選外部DC電力(且若如此使用,則可選外部DC電力替換將來自 以太網(wǎng)PoE 497的電力)之外,該架構(gòu)與客戶端465的架構(gòu)相同。下文中將不重復(fù)與客戶 端465共同的功能性,但將額外功能性描述如下。CPU 483與額外設(shè)備通信且配置額外設(shè)備。WiFi子系統(tǒng)482經(jīng)由其天線提供無線互聯(lián)網(wǎng)存取,作為對(duì)以太網(wǎng)497的替代。WiFi 子系統(tǒng)可購自多家制造商,包括美國加州的圣克拉拉的AtherosCommunications (阿特赫 魯斯通信公司)。USB子系統(tǒng)485提供對(duì)用于有線USB輸入設(shè)備479的藍(lán)牙通信的替代。USB子系 統(tǒng)相當(dāng)標(biāo)準(zhǔn)且可容易地用于FPGA及ASIC,且經(jīng)常創(chuàng)建到執(zhí)行如視頻解壓縮的其他功能的 現(xiàn)成設(shè)備中。與客戶端465內(nèi)的視頻輸出相比較,視頻輸出子系統(tǒng)487產(chǎn)生較寬范圍的視頻輸 出。除提供HDMI 490視頻輸出之外,其提供DVI-I 491、S-視頻492及合成視頻493。而 且,當(dāng)DVI-I 491接口用于數(shù)字視頻時(shí),將顯示能力464自顯示設(shè)備傳回至控制CPU 483,以 使得其可向主機(jī)服務(wù)210通知顯示設(shè)備478的能力。由視頻輸出子系統(tǒng)487提供的所有接 口均為相當(dāng)標(biāo)準(zhǔn)的接口且容易以許多形式可用。
25
音頻輸出子系統(tǒng)489經(jīng)由數(shù)字接口 494(S/PDIF和/或Toslink)數(shù)字地輸出音頻 且經(jīng)由立體模擬接口 495輸出模擬形式的音頻。來回行程延時(shí)分析當(dāng)然,為了實(shí)現(xiàn)前一段的利益,用戶使用輸入設(shè)備421的動(dòng)作與在顯示設(shè)備420上 看見該動(dòng)作的后果之間的來回行程延時(shí)應(yīng)不大于70毫秒-80毫秒。此延時(shí)必須考慮在自用 戶場所211中的輸入設(shè)備421到主機(jī)服務(wù)210及再次返回到用戶場所211至顯示設(shè)備422 的路徑中的所有因素。圖4b說明各種組件及網(wǎng)絡(luò)(信號(hào)必須經(jīng)由該組件或網(wǎng)絡(luò)行進(jìn)),且 該組件及網(wǎng)絡(luò)上方的為時(shí)間線,該時(shí)間線列出實(shí)際實(shí)施中可預(yù)期的例示性延時(shí)。注意,圖4b 經(jīng)簡化以便僅顯示重要路徑路由。下文描述用于系統(tǒng)的其他特征的數(shù)據(jù)的其他路由。雙頭 箭頭(例如,箭頭453)指示來回行程延時(shí)且單頭箭頭(例如,箭頭457)指示單向延時(shí),且 “ ”表示近似量測。應(yīng)指出,將存在所列的延時(shí)不可達(dá)成的真實(shí)世界情形,但在大量狀況 下,在美國,使用至用戶場所211的DSL及電纜調(diào)制解調(diào)器連接,該延時(shí)可在下一段中所描 述的情形中達(dá)成。而且,注意,盡管至互聯(lián)網(wǎng)的蜂窩式無線連接性的確將在所顯示的系統(tǒng)中 工作,但大多數(shù)當(dāng)前美國蜂窩式數(shù)據(jù)系統(tǒng)(諸如,EVD0)招致非常高的延時(shí)且將不能夠達(dá)成 圖4b中所顯示的延時(shí)。然而,這些基本原理可在可能能夠?qū)嵤┰撍降难訒r(shí)的未來蜂窩式 技術(shù)上實(shí)施。自用戶場所211處的輸入設(shè)備421開始,一旦用戶致動(dòng)輸入設(shè)備421,就將用戶控 制信號(hào)發(fā)送至客戶端415 (其可為諸如機(jī)頂盒的獨(dú)立設(shè)備,或其可為在諸如PC或行動(dòng)設(shè)備 的另一設(shè)備中執(zhí)行的軟件或硬件),且將其分組化(在一個(gè)實(shí)施例中以UDP格式)并為分組 給出目的地地址以到達(dá)主機(jī)服務(wù)210。分組將也含有用于指示控制信號(hào)來自哪個(gè)用戶的信 息。接著經(jīng)由防火墻/路由器/NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)設(shè)備443將控制信號(hào)分組轉(zhuǎn)發(fā)到WAN 接口 442。WAN接口 442為由用戶的ISP (互聯(lián)網(wǎng)服務(wù)提供者)提供到用戶場所211的接口 設(shè)備。WAN接口 442可以是電纜或DSL數(shù)據(jù)機(jī)、WiMax收發(fā)器、光纖收發(fā)器、蜂窩式數(shù)據(jù)接 □、電網(wǎng)十辦i^din (InternetProtocol-over-powerline interface), ^ilJSKN 的許多接口中的任何其他接口。另外,可將防火墻/路由器/NAT設(shè)備443 (及(可能地) WAN接口 442)整合到客戶端415中。該一個(gè)實(shí)例將為移動(dòng)電話,其包括用于實(shí)施家庭或辦 公室客戶端415的功能性的軟件,以及用于經(jīng)由某標(biāo)準(zhǔn)(例如,802. Ilg)而無線地路由及連 接到互聯(lián)網(wǎng)的裝置。WAN接口 442接著將控制信號(hào)路由至本文中所稱的用于用戶的互聯(lián)網(wǎng)服務(wù)提供者 (ISP)的“存在點(diǎn)”441,WAN接口 442為提供連接至用戶場所211的WAN輸送器與通用互聯(lián) 網(wǎng)或私用網(wǎng)絡(luò)之間的接口的設(shè)施。存在點(diǎn)的特性將視所提供的互聯(lián)網(wǎng)服務(wù)的性質(zhì)而改變。 對(duì)于DSL,其通常是DSLAM位于的電話公司中央辦公室。對(duì)于電纜調(diào)制解調(diào)器,其通常是電 纜多系統(tǒng)運(yùn)營商(MSO)前端。對(duì)于蜂窩式系統(tǒng),其通常是與蜂窩式塔相關(guān)的控制室。但無 論存在點(diǎn)的性質(zhì)怎樣,其均將接著將控制信號(hào)分組路由至通用互聯(lián)網(wǎng)410。接著經(jīng)由將最 可能系光纖收發(fā)器接口的接口將控制信號(hào)分組路由至WAN接口 444至主機(jī)服務(wù)210。WAN 444將接著將控制信號(hào)分組路由至路由邏輯409 (其可以許多不同方式來實(shí)施,包括以太網(wǎng) 交換器及路由服務(wù)器),路由邏輯409估計(jì)用戶的地址且將控制信號(hào)路由至用于給定用戶 的正確的服務(wù)器402。服務(wù)器402接著將所述控制信號(hào)視為在服務(wù)器402上執(zhí)行的游戲或應(yīng)用程序軟件的輸入且使用所述控制信號(hào)來處理游戲或應(yīng)用程序的下一個(gè)幀。一旦產(chǎn)生下一個(gè)幀,就將 視頻及音頻自服務(wù)器402輸出至視頻壓縮器404??山?jīng)由各種裝置將視頻及音頻自服務(wù)器 402輸出至壓縮器404。首先,可將壓縮器404創(chuàng)建到服務(wù)器402中,因此可在服務(wù)器402 內(nèi)在本地實(shí)施壓縮?;蛘?,可經(jīng)由到網(wǎng)絡(luò)(其或者是服務(wù)器402與視頻壓縮器404之間的 私用網(wǎng)絡(luò),或者是經(jīng)由諸如SAN 403的共用網(wǎng)絡(luò)的網(wǎng)絡(luò))的網(wǎng)絡(luò)連接(諸如,以太網(wǎng)連接) 以分組化的形式輸出視頻和/或音頻。或者,可經(jīng)由視頻輸出連接器(諸如,DVI或VGA連 接器)將視頻自服務(wù)器402輸出,且接著由視頻壓縮器404來捕獲。而且,可將音頻自服務(wù) 器402輸出為數(shù)字音頻(例如,經(jīng)由T0SLINK或S/PDIF連接器)或模擬音頻,模擬音頻由 視頻壓縮器404內(nèi)的音頻壓縮邏輯來數(shù)字化并編碼?!┮曨l壓縮器404已捕獲來自服務(wù)器402的視頻幀及在該幀時(shí)間期間所產(chǎn)生的 音頻,則視頻壓縮器將使用下文所描述的技術(shù)壓縮視頻及音頻。一旦視頻及音頻被壓縮,就 通過一地址將其分組化以將其發(fā)送回至用戶的客戶端415,且將其路由至WAN接口 444,WAN 接口 444接著經(jīng)由通用互聯(lián)網(wǎng)410路由視頻及音頻分組,通用互聯(lián)網(wǎng)410接著將視頻及音 頻分組路由至用戶的ISP的存在點(diǎn)441,存在點(diǎn)441將視頻及音頻分組路由至用戶場所處的 WAN接口 442,WAN接口 442將視頻及音頻分組路由至防火墻/路由器/NAT設(shè)備443,防火 墻/路由器/NAT設(shè)備443接著將視頻及音頻分組路由至客戶端415??蛻舳?15解壓縮視頻及音頻,且接著在顯示設(shè)備422(或客戶端的內(nèi)置顯示設(shè) 備)上顯示視頻并將音頻發(fā)送到顯示設(shè)備422或到單獨(dú)的放大器/揚(yáng)聲器或到創(chuàng)建到客戶 端中的放大器/揚(yáng)聲器。為使用戶感覺到剛才所描述的整個(gè)過程在感知上沒有滯后,來回行程延遲需要小 于70毫秒或80毫秒。所描述的來回行程路徑中的一些延時(shí)延遲受主機(jī)服務(wù)210和/或用 戶的控制,而其他的延時(shí)延遲不受主機(jī)服務(wù)210和/或用戶的控制。盡管如此,基于大量真 實(shí)世界情況的分析及測試,以下為近似量測。用于發(fā)送控制信號(hào)的單向傳輸時(shí)間451通常小于1毫秒,經(jīng)由用戶場所的來回行 程路由452通常使用以太網(wǎng)上的易得的消費(fèi)者級(jí)防火墻/路由器/NAT交換器而在約1毫 秒內(nèi)完成。用戶ISP廣泛地改變其來回行程延遲453,但在DSL及電纜調(diào)制解調(diào)器提供者 的情況下,通常看見其在10毫秒與25毫秒之間。通用互聯(lián)網(wǎng)410上的來回行程延時(shí)可視 頻務(wù)被如何路由及路在線是否存在任何故障(且該問題在下文加以論述)而極大地改變, 但通常通用互聯(lián)網(wǎng)提供相當(dāng)最佳的路由且延時(shí)很大程度上由光穿過光纖的速度(給定到 目的地的距離)來確定。如下文進(jìn)一步論述,已確定1000英里作為期望將主機(jī)服務(wù)210遠(yuǎn) 離用戶場所211置放的大致最遠(yuǎn)距離。在1000英里處(來回行程2000英里),用于信號(hào) 經(jīng)由互聯(lián)網(wǎng)的實(shí)際傳輸時(shí)間為約22毫秒。至主機(jī)服務(wù)210的WAN接口 444通常為具有可 忽略的延時(shí)的商業(yè)級(jí)光纖高速接口。因此,通用互聯(lián)網(wǎng)延時(shí)454通常在1毫秒與10毫秒之 間。經(jīng)由主機(jī)服務(wù)210的單向路由455延時(shí)可在小于1毫秒內(nèi)達(dá)成。服務(wù)器402通常將在 小于一幀時(shí)間(其在60fps下為16. 7毫秒)的時(shí)間中計(jì)算用于游戲或應(yīng)用程序的新幀,因 此16毫秒為將使用的合理的最大單向延時(shí)456。在本文中所描述的視頻壓縮及音頻壓縮算 法的最佳硬件實(shí)施中,壓縮457可在1毫秒內(nèi)完成。在次佳版本中,壓縮可花費(fèi)多達(dá)6毫秒 (當(dāng)然,更欠佳的版本可花費(fèi)更長時(shí)間,但所述實(shí)施將影響來回行程的總延時(shí)且將需要其他 延時(shí)較短(例如,可減小經(jīng)由通用互聯(lián)網(wǎng)的可允許的距離)以維持70毫秒-80毫秒延時(shí)目
27標(biāo))。已經(jīng)考慮互聯(lián)網(wǎng)454、用戶ISP 453及用戶場所路由452的來回行程延時(shí),因此剩余 的為視頻解壓縮458延時(shí),視頻解壓縮458延時(shí)取決于視頻解壓縮458是實(shí)施于專用硬件 中還是實(shí)施于客戶端設(shè)備415 (諸如,PC或行動(dòng)設(shè)備)上的軟件中,可視顯示器的大小及解 壓縮CPU的性能而改變。通常,解壓縮458花費(fèi)1毫秒與8毫秒之間的時(shí)間。因此,可通過將在實(shí)踐中所見的所有最糟狀況的延時(shí)加在一起來確定圖4a中所顯 示的系統(tǒng)的用戶可預(yù)期將經(jīng)歷的最糟狀況的來回行程延時(shí)。他們是1+1+25+22+1+16+6+8 =80毫秒。此外,實(shí)際上,在實(shí)踐中(具有下文所論述的防止誤解的說明),此大致為使用 圖4a中所顯示的系統(tǒng)的原型版本(在美國使用現(xiàn)成的Windows PC作為客戶端設(shè)備及家庭 DSL及電纜調(diào)制解調(diào)器連接)所見的來回行程延時(shí)。當(dāng)然,優(yōu)于最糟狀況的情況可導(dǎo)致短得 多的延時(shí),但不可依賴其來開發(fā)廣泛使用的商業(yè)服務(wù)。為了經(jīng)由通用互聯(lián)網(wǎng)達(dá)成圖4b中所列出的延時(shí),需要客戶端415中的視頻壓縮器 404及視頻解壓縮器412 (來自圖4a)產(chǎn)生具有非常特定的特性的分組流,以使得經(jīng)由自主 機(jī)服務(wù)210至顯示設(shè)備422的整個(gè)路徑所產(chǎn)生的分組序列不經(jīng)受延遲或過多分組丟失,且 詳言之,始終如一地落在經(jīng)由用戶的互聯(lián)網(wǎng)連接(經(jīng)由WAN接口 442及防火墻/路由器/ NAT 433)而可用于用戶的帶寬的約束內(nèi)。另外,視頻壓縮器必須產(chǎn)生足夠強(qiáng)健的分組流,以 使得其可容忍在正?;ヂ?lián)網(wǎng)及網(wǎng)絡(luò)傳輸中出現(xiàn)的不可避免的分組丟失及分組重排序。低延時(shí)視頻壓縮為了完成上述目標(biāo),一個(gè)實(shí)施例采用新的視頻壓縮方法,該方法降低用于傳輸視 頻的延時(shí)及峰值帶寬要求。在描述該實(shí)施例之前,將關(guān)于圖5及圖6a至圖6b提供對(duì)當(dāng)前 視頻壓縮技術(shù)的分析。當(dāng)然,若用戶具備足以處理所述技術(shù)所需的數(shù)據(jù)速率的帶寬,則該技 術(shù)可根據(jù)基本原理來使用。注意,本文中不解決音頻壓縮,而是陳述音頻壓縮與視頻壓縮同 時(shí)且同步地來實(shí)施。滿足用于該系統(tǒng)的要求的先前技術(shù)音頻壓縮技術(shù)存在。圖5說明用于壓縮視頻的一個(gè)特定先前技術(shù),其中由壓縮邏輯520使用特定壓縮 算法來壓縮每個(gè)個(gè)別視頻幀501-503以產(chǎn)生一系列經(jīng)壓縮的幀511-513。該技術(shù)的一個(gè)實(shí) 施例是“運(yùn)動(dòng)JPEG”,其中根據(jù)聯(lián)合圖像專家群(JPEG)壓縮算法基于離散余弦變換(DCT) 來壓縮每一幀??墒褂酶鞣N不同類型的壓縮算法,然而,仍遵守該基本原理(例如,以小波 為基礎(chǔ)的壓縮算法,諸如JPEG-2000)。此類型壓縮的一個(gè)問題在于其減小了每個(gè)幀的數(shù)據(jù)速率,但其不利用連續(xù)幀之 間的類似性來減小總視頻流的數(shù)據(jù)速率。舉例而言,如圖5中所說明,假定640 X 480 X 24比 特/像素=640*480*24/8/1024 = 900千字節(jié)/幀(KB/幀)的幀速率,則對(duì)于給定質(zhì)量的 圖像,運(yùn)動(dòng)JPEG可能僅將該流壓縮1/10,從而產(chǎn)生90KB/幀的數(shù)據(jù)流。在60幀/秒下,此 將需要90KB*8比特*60幀/秒=42. 2Mbps的信道帶寬,其對(duì)于美國現(xiàn)今幾乎所有的家庭 互聯(lián)網(wǎng)連接而言將為極高的帶寬,且對(duì)于許多辦公室互聯(lián)網(wǎng)連接而言為過高的帶寬。實(shí)際 上,假定其在此種高帶寬的情況下要求恒定數(shù)據(jù)流,且其將僅服務(wù)一個(gè)用戶,則即使在辦公 室LAN環(huán)境中,其也將消耗IOOMbps以太網(wǎng)LAN的帶寬的大百分比及支持LAN的負(fù)擔(dān)沉重的 以太網(wǎng)交換器。因此,當(dāng)與其他壓縮技術(shù)(諸如下文所描述的那些技術(shù))相比較時(shí),用于運(yùn) 動(dòng)視頻的壓縮無效率。此外,使用有損壓縮算法的單個(gè)幀壓縮算法(如JPEG及JPEG-2000) 產(chǎn)生在靜止圖像中可能不引人注意的壓縮假影(例如,場景中的密集樹葉內(nèi)的假影可能不 呈現(xiàn)為假影,因?yàn)檠鄄⒉淮_切地知道密集樹葉應(yīng)如何呈現(xiàn))。但是,一旦場景在運(yùn)動(dòng)中,假影就可能突出,因?yàn)檠蹅蓽y到自幀至幀而改變的假影,盡管假影在場景的區(qū)域(在該區(qū)域中, 假影在靜止圖像中可能不引人注意)中。此導(dǎo)致幀序列中的“背景噪音”的感知,該“背景 噪音”的外觀與邊緣模擬TV接收期間可見的“雪花”雜音類似。當(dāng)然,該類型的壓縮仍可用 于本文中所描述的特定實(shí)施例中,但一般而言,為了避免場景中的背景噪音,對(duì)于給定感知 質(zhì)量,需要高數(shù)據(jù)速率(也即,低壓縮比率)。其他類型的壓縮(諸如,H. 264,或Windows媒體VC9、MPEG2及MPEG4)在壓縮視頻 流中均更有效,因?yàn)槠淅眠B續(xù)幀之間的類似性。這些技術(shù)均依賴于用于壓縮視頻的相同 的一般技術(shù)。因此,盡管將描述H. 264標(biāo)準(zhǔn),但相同的一般原理適用于各種其他壓縮算法。 大量H. 264壓縮器及解壓縮器可用,包括用于壓縮H. 264的x264開放源軟件庫及用于解壓 縮H. 264的FFmpeg (—種視頻和音頻流方案)開放源軟件庫。圖6a及圖6b說明例示性先前技術(shù)壓縮技術(shù),其中由壓縮邏輯620將一系列未 經(jīng)壓縮的視頻幀501-503,559-561壓縮成一系列“I幀” 611、671 ;“P幀” 612-613 ;及“B 幀” 670。圖6a中的垂直軸大體表示經(jīng)編碼的幀中的每一者的所得大小(盡管所述幀未按 比例進(jìn)行繪制)。如上所述,本領(lǐng)域的技術(shù)人員良好地理解使用I幀、B幀及P幀的視頻寫 碼。簡言之,I幀611為完全未壓縮的幀501的基于DCT的壓縮(類似于如上所述的經(jīng)壓縮 的JPEG圖像)。P幀612-613的大小通常顯著小于I幀611的大小,因?yàn)槠淅孟惹癐幀 或P幀中的數(shù)據(jù);也即,其含有指示先前I幀或P幀之間的改變的數(shù)據(jù)。除B幀使用隨后參 考幀中的幀以及(可能地)之前參考幀中的幀之外,B幀670類似于P幀。對(duì)于以下論述,將假定所要的幀速率為60幀/秒,每個(gè)I幀為約160Kb,平均 P幀及B幀為16Kb且每隔一秒產(chǎn)生一新的I幀。在該組參數(shù)下,平均數(shù)據(jù)速率將為 160Kb+16Kb*59 = 1. 1Mbps。該數(shù)據(jù)速率適當(dāng)?shù)芈湓谟糜诘郊彝ゼ稗k公室的許多當(dāng)前寬帶 互聯(lián)網(wǎng)連接的最大數(shù)據(jù)速率內(nèi)。該技術(shù)也傾向于避免來自僅幀內(nèi)編碼的背景噪音問題,因 為P幀及B幀追蹤幀之間的差異,因此壓縮假影傾向于不自幀至幀而呈現(xiàn)及消失,從而減少 上文所描述的背景噪音問題。上述類型的壓縮的一個(gè)問題在于盡管平均數(shù)據(jù)速率相對(duì)低(例如,1. IMbps),但 單個(gè)I幀可能花費(fèi)若干個(gè)幀時(shí)間來傳輸。舉例而言,使用先前技術(shù),2. 2Mbps網(wǎng)絡(luò)連接(例 如,DSL或電纜調(diào)制解調(diào)器,其具有來自圖3a的最大可用數(shù)據(jù)速率302的2. 2Mbps峰值) 通常將足夠使視頻以1. IMbps流動(dòng),每60個(gè)幀一個(gè)160Kbps的I幀。這將通過使解壓縮器 在解壓縮視頻之前將1秒視頻排入隊(duì)列來完成。在1秒內(nèi),將傳輸1. 1Mb的數(shù)據(jù),其將通過 2. 2Mbps最大可用數(shù)據(jù)速率來容易地適應(yīng),即使假定可用數(shù)據(jù)速率可能周期性地下降多達(dá) 50%也如此。遺憾地,此先前技術(shù)方法將由于接收器處的1秒視頻緩沖而導(dǎo)致視頻的1秒 延時(shí)。此種延遲對(duì)于許多先前技術(shù)應(yīng)用程序(例如,線性視頻的回放)而言足夠,但對(duì)于不 可容忍大于70毫秒-80毫秒的延時(shí)的快動(dòng)作視頻游戲而言其為極長的延時(shí)。若進(jìn)行嘗試來消除1秒視頻緩沖,其仍將不會(huì)導(dǎo)致用于快動(dòng)作視頻游戲的足夠延 時(shí)減少。舉例而言,如先前所述,B幀的使用將需要接收I幀的前的所有B幀以及I幀。若 假定在P幀與B幀之間大致分裂59個(gè)非I幀,則將存在至少29個(gè)B幀且可顯示任何B幀 之前所接收的I幀。因此,不管信道的可用帶寬如何,均需要29+1 = 30個(gè)幀每一者1/60 秒持續(xù)時(shí)間的延遲,或500毫秒的延時(shí)。顯而易見,該時(shí)間極長。因此,另一方法將是消除B幀且僅使用I幀及P幀。(其中一個(gè)后果是對(duì)于給定質(zhì)量水平,數(shù)據(jù)速率將增加,但出于此實(shí)例中的一致性起見,繼續(xù)假定每個(gè)I幀的大小為 160Kb且平均P幀的大小為16Kb,且因此數(shù)據(jù)速率仍為1. IMbps)。該方法消除了由B幀引 入的不可避免的延時(shí),因?yàn)槊總€(gè)P幀的解碼僅依賴于先前所接收的幀。該方法仍存在的問 題在于1幀比平均P幀大得多,以致在低帶寬信道上(如大多數(shù)家庭中及許多辦公室中典 型的),I幀的傳輸添加實(shí)質(zhì)延時(shí)。此在圖6b中加以說明。視頻流數(shù)據(jù)速率624低于可用 最大數(shù)據(jù)速率621 (除對(duì)于I幀之外),其中I幀所需的峰值數(shù)據(jù)速率623遠(yuǎn)超過可用最大 數(shù)據(jù)速率622 (且甚至超過額定最大數(shù)據(jù)速率621)。P幀所需的數(shù)據(jù)速率小于可用最大數(shù)據(jù) 速率。即使在2. 2Mbps的可用最大數(shù)據(jù)速率峰值穩(wěn)定地保持在其2. 2Mbps峰值速率,也將花 費(fèi)160Kb/2. 2Mb = 71毫秒來傳輸I幀,且若可用最大數(shù)據(jù)速率622下降50% (1. 1Mbps),則 將花費(fèi)142毫秒來傳輸I幀。因此,傳輸I幀中的延時(shí)將落在71毫秒與142毫秒之間的某 處。該延時(shí)添加到圖4b中所識(shí)別的延時(shí)(所述延時(shí)在最糟狀況下總計(jì)達(dá)70毫秒),因此, 這將導(dǎo)致從用戶致動(dòng)輸入設(shè)備421的時(shí)刻直到圖像呈現(xiàn)于顯示設(shè)備422上的為141-222毫 秒的總來回行程延時(shí),其極高。且若可用最大數(shù)據(jù)速率下降至低于2. 2Mbps,則延時(shí)將進(jìn)一 步增加。還注意到,以遠(yuǎn)超過可用數(shù)據(jù)速率622的峰值數(shù)據(jù)速率623使ISP “堵塞”通常存 在嚴(yán)重后果。不同ISP中的設(shè)備將不同地表現(xiàn),但當(dāng)以比可用數(shù)據(jù)速率622高得多的數(shù)據(jù) 速率接收分組時(shí),以下行為在DSL及電纜調(diào)制解調(diào)器ISP當(dāng)中相當(dāng)普遍(a)通過將分組排 入隊(duì)列而使分組延遲(引入延時(shí)),(b)丟棄一些或所有分組,(c)將連接停用一時(shí)間周期 (最可能因?yàn)镮SP擔(dān)憂其為惡意攻擊,諸如“否認(rèn)服務(wù)”攻擊)。因此,以全數(shù)據(jù)速率傳輸分 組流(具有諸如圖6b中所顯示的所述特性的特性)并非為可行的選項(xiàng)??稍谥鳈C(jī)服務(wù)210 處將峰值623排入隊(duì)列且以低于可用最大數(shù)據(jù)速率的數(shù)據(jù)速率進(jìn)行發(fā)送,從而引入前一段 中所描述的不可接受的延時(shí)。另外,圖6b中所顯示的視頻流數(shù)據(jù)速率序列624為非?!榜Z服的(tame) ”視頻流數(shù) 據(jù)速率序列,且將是由于壓縮來自視頻序列的視頻而預(yù)期產(chǎn)生的該種數(shù)據(jù)速率序列,該視 頻序列并不改變很大且具有非常少的運(yùn)動(dòng)(例如,如在視頻電話會(huì)議中將是普遍的,在視 頻電話會(huì)議中,相機(jī)處于固定位置中且具有非常少的運(yùn)動(dòng),且場景(例如,就座的人談話) 中的對(duì)象顯示較少運(yùn)動(dòng))。圖6c中所顯示的視頻流數(shù)據(jù)速率序列634為從具有多得多的動(dòng)作的視頻(諸如, 可能在電影或視頻游戲中或在某應(yīng)用程序軟件中產(chǎn)生)預(yù)期可見的典型序列。注意,除I 幀峰值633之外,還存在相當(dāng)大且在許多場合上超過可用最大數(shù)據(jù)速率的P幀峰值(諸如, 635及636)。盡管所述P幀峰值并不如I幀峰值一般相當(dāng)大,但其仍極大以致不能由信道 以全數(shù)據(jù)速率來運(yùn)輸,且如同I幀峰值一樣,P幀峰值必須緩慢地傳輸(借此增加延時(shí))。在高帶寬信道(例如,100Mbps LAN,或高帶寬IOOMbps私用連接)上,網(wǎng)絡(luò)將能 夠容忍諸如I幀峰值633或P幀峰值636的大峰值,但原則上,可維持低延時(shí)。但是,所述 網(wǎng)絡(luò)經(jīng)常在許多用戶當(dāng)中共用(例如,在辦公室環(huán)境中),且該“有峰”數(shù)據(jù)將影響LAN的 性能,尤其在網(wǎng)絡(luò)通信經(jīng)路由至私用共用連接(例如,從遠(yuǎn)程數(shù)據(jù)中心到辦公室)的情況 下。首先,記住此實(shí)例是60fps下640X480像素的相對(duì)低分辨率的視頻流的實(shí)例。60fps 下的1920X1080的HDTV流容易由現(xiàn)代計(jì)算機(jī)及顯示器來處理,且60fps下的2560X1440 分辨率顯示器日益可用(例如,Apple公司的30"顯示器)。使用!1.264壓縮,60邙8下的
301920X1080的高動(dòng)作視頻序列可能需要4. 5Mbps以獲得合理質(zhì)量水平。若假定I幀峰值為 標(biāo)定數(shù)據(jù)速率的10倍,則其將產(chǎn)生45Mbps峰值,以及較小但仍相當(dāng)大的P幀峰值。若若干 個(gè)用戶正在同一 IOOMbps網(wǎng)絡(luò)(例如,辦公室與數(shù)據(jù)中心之間的私用網(wǎng)絡(luò)連接)上接收視 頻流,則容易看見來自若干用戶的視頻流的峰值可如何碰巧對(duì)準(zhǔn),從而淹沒網(wǎng)絡(luò)的帶寬,且 可能淹沒網(wǎng)絡(luò)上支持用戶的交換器的底板的帶寬。即使在超高速以太網(wǎng)的狀況下,若足夠 的用戶具有同時(shí)對(duì)準(zhǔn)的足夠峰值,則其可淹沒網(wǎng)絡(luò)或網(wǎng)絡(luò)交換器。此外,一旦2560X1440 分辨率視頻變得更常見,平均視頻流數(shù)據(jù)速率就可能為9. 5Mbps,從而或許產(chǎn)生95Mbps峰 值數(shù)據(jù)速率。不用說,數(shù)據(jù)中心與辦公室之間的IOOMbps連接(其在現(xiàn)今為格外快的連接) 將完全被來自單一用戶的峰值通信擊潰。因此,即使LAN及私用網(wǎng)絡(luò)連接對(duì)有峰流動(dòng)視頻 可具有更高容忍度,具有高峰值的流動(dòng)視頻也是不需要的且可能需要辦公室的IT部門的 特殊計(jì)劃及適應(yīng)。當(dāng)然,對(duì)于標(biāo)準(zhǔn)線性視頻應(yīng)用程序,該問題并不是問題,因?yàn)閿?shù)據(jù)速率在傳輸點(diǎn) “經(jīng)平滑化”且用于每一幀的數(shù)據(jù)低于最大可用數(shù)據(jù)速率622,且在解壓縮I幀、P幀及B幀 序列之前,客戶端中的緩沖器儲(chǔ)存I幀、P幀及B幀序列。因此,網(wǎng)絡(luò)上的數(shù)據(jù)速率保持接 近于視頻流的平均數(shù)據(jù)速率。很遺憾地,這引入延時(shí),即使不使用B幀,對(duì)于諸如需要快響 應(yīng)時(shí)間的視頻游戲及應(yīng)用程序的低延時(shí)應(yīng)用程序而言,這也是不可接受的。用于減輕具有高峰值的視頻流的一個(gè)先前技術(shù)解決方法是使用常常被稱作“恒定 比特速率”(CBR)編碼的技術(shù)。盡管術(shù)語CBR看來似乎暗示將所有幀壓縮以具有相同比特速 率(也即,大小),但其經(jīng)常提及的為壓縮范例,在壓縮范例中,允許跨越特定數(shù)目的幀(在 我們的狀況下,1個(gè)幀)的最大比特速率。舉例而言,在圖6c的狀況下,若對(duì)編碼施加CBR 約束(其將比特速率限于(例如)額定最大數(shù)據(jù)速率621的70% ),則壓縮算法將限制所 述幀中的每一者的壓縮,以使得通常將使用額定最大數(shù)據(jù)速率621的70%以上來壓縮的任 何幀將以較少比特來壓縮。這個(gè)結(jié)果是將使通常將需要更多比特來維持給定質(zhì)量水平的 幀“極度缺乏”比特且所述幀的圖像質(zhì)量將比不需要比額定最大數(shù)據(jù)速率621的70%多的 比特的其他幀的圖像質(zhì)量糟。此方法對(duì)于特定類型的經(jīng)壓縮視頻(其中(a)預(yù)期較少運(yùn)動(dòng) 或場景改變且(b)用戶可接受周期性的質(zhì)量降級(jí))可產(chǎn)生可接受的結(jié)果。適合CBR的應(yīng)用 的良好實(shí)例為視頻電話會(huì)議,因?yàn)榇嬖谳^少峰值,且在質(zhì)量暫時(shí)降級(jí)的情況下(例如,若使 相機(jī)掃視,從而導(dǎo)致顯著場景運(yùn)動(dòng)及大峰值,則在掃視期間可能不存在足夠的比特用于高 質(zhì)量圖像壓縮,其將導(dǎo)致降級(jí)的圖像質(zhì)量),大多數(shù)用戶可接受。很遺憾地,CBR并非良好地 適合具有高復(fù)雜度的場景或大量運(yùn)動(dòng)和/或需要合理恒定的質(zhì)量水平的許多其他應(yīng)用。在一個(gè)實(shí)施例中所使用的低延時(shí)壓縮邏輯404使用若干不同技術(shù)來解決流動(dòng)低 延時(shí)經(jīng)壓縮視頻同時(shí)維持高質(zhì)量的許多問題。首先,低延時(shí)壓縮邏輯404僅產(chǎn)生I幀及P 幀,從而緩解等待若干個(gè)幀時(shí)間來解碼每個(gè)B幀的需要。另外,如圖7a中所說明,在一個(gè)實(shí) 施例中,低延時(shí)壓縮邏輯404將每個(gè)未經(jīng)壓縮的幀701-760再分成一系列“圖像塊(tile) ” 且將每個(gè)圖像塊個(gè)別地編碼為I幀或P幀。在本文中將該群經(jīng)壓縮的I幀及P幀稱作“R 幀”711-770。在圖7a中所顯示的特定實(shí)例中,將每個(gè)未經(jīng)壓縮的幀再分成4X4矩陣的16 個(gè)圖像塊。然而,所述基本原理不限于任何特定再分機(jī)制。在一實(shí)施例中,低延時(shí)壓縮邏輯404將視頻幀劃分成許多圖像塊,且將來自每個(gè) 幀的一個(gè)圖像塊編碼(也即,壓縮)為I幀(也即,將該圖像塊壓縮,好像其為全圖像的大小的1/16的單獨(dú)視頻幀,且用于此“迷你型”巾貞的壓縮為I幀壓縮)并將剩余圖像塊編碼為 P幀(也即,用于每個(gè)“迷你型” 1/16幀的壓縮為P幀壓縮)。經(jīng)壓縮為I幀的圖像塊及經(jīng) 壓縮為P幀的圖像塊將分別被稱作“I圖像塊”及“P圖像塊”。隨著每個(gè)相繼視頻幀而改變 待編碼為I圖像塊的圖像塊。因此,在給定幀時(shí)間中,視頻幀中的所述圖像塊中僅一個(gè)圖像 塊為I圖像塊,且所述圖像塊中的剩余者為P圖像塊。舉例而言,在圖7a中,未經(jīng)壓縮的幀 701的圖像塊0經(jīng)編碼為I圖像塊IO且剩余的1-15圖像塊經(jīng)編碼為P圖像塊(Pl至P15) 以產(chǎn)生R幀711。在下一個(gè)未經(jīng)壓縮的視頻幀702中,未經(jīng)壓縮的幀701的圖像塊1經(jīng)編碼 為I圖像塊Il且剩余的圖像塊0及2至15經(jīng)編碼為P圖像塊(P0,及P2至P15)以產(chǎn)生R 幀712。因此,用于圖像塊的I圖像塊及P圖像塊在相繼幀上逐漸地在時(shí)間上交錯(cuò)。該過 程繼續(xù),直至產(chǎn)生R圖像塊770(矩陣中最末圖像塊經(jīng)編碼為I圖像塊(也即,115))為止。 該過程接著重新開始,從而產(chǎn)生諸如幀711(也即,對(duì)于圖像塊0,編碼I圖像塊)等的另一 個(gè)R幀。盡管圖7a中未說明,但在一個(gè)實(shí)施例中,R幀的視頻序列的第一 R幀僅含有I圖 像塊(也即,以使得隨后的P幀具有參考圖像數(shù)據(jù)(自其開始計(jì)算運(yùn)動(dòng)))。或者,在一實(shí)施 例中,啟動(dòng)序列使用與正常相同的I圖像塊型樣,但不包括用于尚未連同I圖像塊一起編碼 的所述圖像塊的P圖像塊。換言之,在第一I圖像塊到達(dá)之前不連同任何數(shù)據(jù)一起編碼特 定圖像塊,從而避免圖9a中的視頻流數(shù)據(jù)速率934中的啟動(dòng)峰值,其在下文進(jìn)一步詳細(xì)說 明。此外,如下所述,各種不同大小及形狀可用于所述圖像塊同時(shí)仍遵守所述基本原理。在客戶端415上執(zhí)行的視頻解壓縮邏輯412解壓縮每個(gè)圖像塊,好像其為小I幀 及P幀的單獨(dú)視頻序列,且接著將每個(gè)圖像塊再現(xiàn)給驅(qū)動(dòng)顯示設(shè)備422的幀緩沖器。舉例 而言,使用來自R幀711至770的IO及PO來解壓縮并再現(xiàn)視頻圖像的圖像塊0。類似地, 使用來自R幀711至770的Il及Pl來重建圖像塊1,等等。如上所述,I幀及P幀的解壓 縮是這項(xiàng)技術(shù)中眾所熟知的,且I圖像塊及P圖像塊的解壓縮可通過使視頻解壓縮器的多 個(gè)執(zhí)行個(gè)體在客戶端415上執(zhí)行來完成。盡管倍增過程看來似乎增加客戶端415上的計(jì)算 負(fù)擔(dān),但實(shí)際上其不會(huì)增加客戶端415上的計(jì)算負(fù)擔(dān),因?yàn)閳D像塊本身成比例地較小(相對(duì) 于額外處理的數(shù)目而言),因此所顯示的像素的數(shù)目相同,好像存在一個(gè)處理且使用傳統(tǒng)的 全大小的I幀及P幀。該R幀技術(shù)顯著減輕通常與I幀相關(guān)聯(lián)的帶寬峰值(圖6b及圖6c中所說明),因 為任何給定幀主要是由通常比I幀小的P幀構(gòu)成。舉例而言,再次假定典型I幀為160Kb, 則圖7a中所說明的幀中的每一者的I圖像塊將為該量的大致1/16或10Kb。類似地,假定 典型P幀為16Kb,則用于圖7a中所說明的圖像塊中的每一者的P幀可為大致1Kb。最終結(jié) 果為約10Kb+15*lKb = 25Kb的R幀。因此,每一 60幀序列將是25Kb*60 = 1. 5Mbps。因 此,在60幀/秒下,這將需要能夠維持1. 5Mbps的帶寬的信道,但由于I圖像塊是貫穿60 幀間隔而分散而使得具有低得多的峰值。注意,在先前實(shí)例中,在用于I幀及P幀的相同假定數(shù)據(jù)速率情況下,平均數(shù)據(jù)速 率為1. 1Mbps。這是因?yàn)樵谙惹皩?shí)例中,每隔60個(gè)幀時(shí)間僅引入新I幀,而在此實(shí)例中,構(gòu) 成I幀的16個(gè)圖像塊在16個(gè)幀時(shí)間中循環(huán),且因此,每隔16個(gè)幀時(shí)間引入I幀的均等物, 從而導(dǎo)致稍高的平均數(shù)據(jù)速率。盡管如此,但在實(shí)踐中,引入更頻繁的I幀并不會(huì)線性地增 加數(shù)據(jù)速率。這是由于以下事實(shí)P幀(或P圖像塊)主要編碼自先前幀至下一個(gè)幀的差 異。因此,若先前幀與下一個(gè)幀相當(dāng)類似,則P幀將非常小,若先前幀與下一個(gè)幀相當(dāng)不同,
32則P幀將非常大。但因?yàn)镻幀很大程度上是自先前幀導(dǎo)出,而非自實(shí)際幀導(dǎo)出,所以所得的 經(jīng)編碼幀可能含有比具有足夠數(shù)目的比特的I幀多的錯(cuò)誤(例如,視覺假影)。此外,當(dāng)一 個(gè)P幀跟隨另一 P幀時(shí),可出現(xiàn)錯(cuò)誤累加(當(dāng)存在長P幀序列時(shí),變得更糟)?,F(xiàn)在,尖端的 視頻壓縮器將偵測到圖像的質(zhì)量在一序列P幀的后降級(jí)的事實(shí),且必要時(shí),其將更多比特 分配給隨后的P幀以提高質(zhì)量,或若其為最有效的動(dòng)作過程,則用I幀替換P幀。因此,當(dāng) 使用長P幀序列(例如,59個(gè)P幀,如上文先前實(shí)例中)時(shí),特定言的當(dāng)場景具有大量復(fù)雜 度和/或運(yùn)動(dòng)時(shí),通常,對(duì)于P幀而言需要更多比特(因?yàn)槠渥兊镁郔幀更遠(yuǎn))。或者,自相對(duì)觀看點(diǎn)看P幀,緊密地跟隨I幀的P幀傾向于需要比距I幀更遠(yuǎn)的P 幀少的比特。因此,在圖7a中所顯示的實(shí)例中,沒有P幀比距I幀隔開15個(gè)幀更遠(yuǎn)(在I 幀之前),而在先前實(shí)例中,P幀可能從I幀隔開59個(gè)幀。因此,在更頻繁的I幀情況下,P 幀較小。當(dāng)然,確切相對(duì)大小將基于視頻流的性質(zhì)而改變,但在圖7a的實(shí)例中,若I圖像塊 為10Kb,則P圖像塊的大小平均可為僅0. 75kb,從而導(dǎo)致10Kb+15*0. 75Kb = 21. 25Kb,或在 60幀/秒下,數(shù)據(jù)速率將為21. 25Kb*60 = 1. 3Mbps,或比1. IMbps下的具有I幀隨后跟著 59個(gè)P幀的流的數(shù)據(jù)速率高約16%。再一次,用于視頻壓縮的所述兩種方法之間的相對(duì)結(jié) 果將視視頻序列而改變,但通常,我們憑經(jīng)驗(yàn)發(fā)現(xiàn),對(duì)于給定質(zhì)量水平,使用R幀比使用I/P 幀序列需要多約20%的比特。但是,當(dāng)然,R幀急劇地減少峰值,這使視頻序列在遠(yuǎn)小于I/ P幀序列的延時(shí)下可用。可視視頻序列的性質(zhì)、信道的可靠性及可用數(shù)據(jù)速率而以多種不同方式來配置R 幀。在替代實(shí)施例中,在4X4配置中使用不同于16的數(shù)目的圖像塊。舉例而言,可在2X1 或1X2配置中使用2個(gè)圖像塊,可在2X2、4X1或1X4配置中使用4個(gè)圖像塊,可在3X2、 2X3、6X1或1X6配置中使用6個(gè)圖像塊或可在4X2(如圖7b中所顯示)、2X4、8X 1或 1 X 8配置中使用8個(gè)圖像塊。注意,圖像塊不需要為方形,視頻幀也不必為方形,或甚至矩 形??蓪D像塊分解成最佳地適合所使用的視頻流及應(yīng)用程序的無論什么形狀。在另一實(shí)施例中,I圖像塊及P圖像塊的循環(huán)不鎖定到圖像塊的數(shù)目。舉例而言, 在8圖像塊4X2配置中,仍可如圖7b中所說明而使用16循環(huán)序列。順序的未經(jīng)壓縮的幀 721、722、723各自經(jīng)劃分成8個(gè)圖像塊0_7,且每個(gè)圖像塊被個(gè)別壓縮。自R幀731,僅圖 像塊0被壓縮為I圖像塊,且剩余圖像塊被壓縮為P圖像塊。對(duì)于隨后的R幀732,所有8 個(gè)圖像塊被壓縮為P圖像塊,且接著對(duì)于隨后的R幀733,圖像塊1被壓縮為I圖像塊且其 他圖像塊均被壓縮為P圖像塊。此外,如此對(duì)于16個(gè)幀繼續(xù)進(jìn)行排序,僅每隔一幀產(chǎn)生一 個(gè)I圖像塊,因此在第15個(gè)幀時(shí)間期間(圖7b中未圖示)及在第16個(gè)幀時(shí)間期間產(chǎn)生用 于圖像塊7的最末I圖像塊(使用所有的P圖像塊壓縮R幀780)。接著,序列再次以圖像 塊0被壓縮為I圖像塊且其他圖像塊被壓縮為P圖像塊開始。如在先前實(shí)施例中,整個(gè)視 頻序列的第一幀通常將均為I圖像塊,以提供用于從該點(diǎn)向前的P圖像塊的參考。I圖像 塊及P圖像塊的循環(huán)甚至不需要為圖像塊的數(shù)目的偶倍數(shù)。舉例而言,在8個(gè)圖像塊的情 況下,在使用另一 I圖像塊之前,具有一個(gè)I圖像塊的每一幀之后可為所有都為P圖像塊的 2個(gè)幀。在又一實(shí)施例中,若(例如)已知屏幕的特定區(qū)域具有更多運(yùn)動(dòng)(需要更頻繁的I 圖像塊),而其他區(qū)域更為靜態(tài)(例如,顯示游戲的分?jǐn)?shù))(需要較不頻繁的I圖像塊),則 與其他圖像塊相比,可更經(jīng)常地將特定圖像塊連同I圖像塊一起進(jìn)行排序。此外,盡管在圖 7a-圖7b中說明每個(gè)幀具有單個(gè)I圖像塊,但可在單個(gè)幀中編碼多個(gè)I圖像塊(取決于傳
33輸信道的帶寬)。相反地,特定幀或幀序列可在不具有I圖像塊(也即,僅P圖像塊)的情 況下傳輸。前一段的方法適當(dāng)起作用的原因在于盡管不具有跨越每個(gè)單個(gè)幀而分散的I圖 像塊看來似乎導(dǎo)致較大峰值,但系統(tǒng)的行為并不如此簡單。因?yàn)槊總€(gè)圖像塊是與其他圖像 塊分開進(jìn)行壓縮,所以當(dāng)圖像塊變小時(shí),每個(gè)圖像塊的編碼可變得較不有效,因?yàn)榻o定圖像 塊的壓縮器不能夠利用來自其他圖像塊的類似圖像特征及類似運(yùn)動(dòng)。因此,與將屏幕劃分 成8個(gè)圖像塊相比較,將屏幕劃分成16個(gè)圖像塊通常將導(dǎo)致較不有效的編碼。但是,若將 屏幕劃分成8個(gè)圖像塊且其引起每隔8個(gè)幀(而非每隔16個(gè)幀)引入一個(gè)完全I(xiàn)幀的數(shù) 據(jù),則其導(dǎo)致總體上高得多的數(shù)據(jù)速率。因此,通過每隔16個(gè)幀(而非每隔8個(gè)幀)引入 一個(gè)完全I(xiàn)幀,減小了總數(shù)據(jù)速率。而且,通過使用8個(gè)較大圖像塊(而非16個(gè)較小圖像 塊),減小了總數(shù)據(jù)速率,其也將由較大圖像塊引起的數(shù)據(jù)峰值減輕至某種程度。在另一實(shí)施例中,圖7a及圖7b中的低延時(shí)視頻壓縮邏輯404通過基于待壓縮的 視頻序列的已知特性而通過設(shè)定預(yù)先配置或者基于每個(gè)圖像塊中的圖像質(zhì)量的正在進(jìn)行 的分析而自動(dòng)地控制至R幀中的各圖像塊的比特的分配。舉例而言,在一些競賽視頻游戲 中,玩家的汽車(其為場景中相對(duì)無運(yùn)動(dòng)的)的前方占據(jù)屏幕的下半部的大部分,而屏幕 的上半部完全被填滿正接近的道路、建筑物及風(fēng)景,其幾乎總是在運(yùn)動(dòng)中。若壓縮邏輯404 將相等數(shù)目的比特分配給每個(gè)圖像塊,則圖7b中的未經(jīng)壓縮的幀721中的屏幕的下半部 上的圖像塊(圖像塊4-7)通常將以比圖7b中的未經(jīng)壓縮的幀721中的屏幕的上半部中的 圖像塊(圖像塊0-3)高的質(zhì)量而壓縮。若已知該特定游戲或游戲的此特定場景具有所述 特性,則主機(jī)服務(wù)210的運(yùn)營商可配置壓縮邏輯404以將更多比特分配給屏幕的頂部的圖 像塊(與分配給屏幕的底部處的圖像塊的比特相比)。或者,壓縮邏輯404可在壓縮幀之 后估計(jì)圖像塊的壓縮質(zhì)量(使用許多壓縮質(zhì)量度量中的一者或多者,諸如峰值信號(hào)噪音比 (PSNR)),且若確定在特定時(shí)間窗上,特定圖像塊始終如一地產(chǎn)生較佳質(zhì)量結(jié)果,則其逐漸 地將更多比特分配給產(chǎn)生較低質(zhì)量結(jié)果的圖像塊,直至各種圖像塊達(dá)到類似水平的質(zhì)量為 止。在替代實(shí)施例中,壓縮器邏輯404分配比特以在特定圖像塊或圖像塊群中達(dá)成較高質(zhì) 量。舉例而言,其可提供較佳的總體感知外觀,以在屏幕的中心具有比邊緣處高的質(zhì)量。在一個(gè)實(shí)施例中,為了改良視頻流的特定區(qū)域的分辨率,視頻壓縮邏輯404使用 較小圖像塊來編碼視頻流的具有相對(duì)多的場景復(fù)雜度和/或運(yùn)動(dòng)的區(qū)域(與視頻流的具 有相對(duì)少的場景復(fù)雜度和/或運(yùn)動(dòng)的區(qū)域相比)。舉例而言,如圖8中所說明,在一個(gè)R幀 811 (可能隨后跟著具有相同圖像塊大小的一系列R幀(未圖示))的一個(gè)區(qū)域中的移動(dòng)人 物805的周圍使用較小圖像塊。接著,當(dāng)人物805移動(dòng)至圖像的新區(qū)域時(shí),在另一 R幀812 內(nèi)的此新區(qū)域的周圍使用較小圖像塊,如所說明。如上所述,各種不同大小及形狀可用作 “圖像塊”同時(shí)仍遵守所述基本原理。盡管上文所描述的循環(huán)I/P圖像塊實(shí)質(zhì)上減小視頻流的數(shù)據(jù)速率中的峰值,但其 并不完全消除峰值,尤其在快速改變或高度復(fù)雜的視頻圖像(諸如在電影、視頻游戲及某 一應(yīng)用程序軟件下出現(xiàn))的狀況下。舉例而言,在突然場景轉(zhuǎn)變期間,復(fù)雜幀可能隨后跟著 完全不同的另一復(fù)雜幀。即使若干個(gè)I圖像塊可領(lǐng)先于場景轉(zhuǎn)變僅幾個(gè)幀時(shí)間,其在該情 形下也沒有幫助,因?yàn)樾聨牟牧吓c先前I圖像塊無關(guān)。在這種情形下(及在即使并非一 切都改變,大量圖像也改變的其他情形下),視頻壓縮器404將確定將許多(若并非所有)P圖像塊更有效地寫碼為I圖像塊,且所導(dǎo)致的是所述幀的數(shù)據(jù)速率中的非常大的峰值。如先前所論述,其僅為對(duì)于大多數(shù)消費(fèi)者級(jí)互聯(lián)網(wǎng)連接(及許多辦公室連接)的 狀況,其僅不可“堵塞”超過圖6c中顯示為622的可用最大數(shù)據(jù)速率以及額定最大數(shù)據(jù)速 率621的數(shù)據(jù)。注意,額定最大數(shù)據(jù)速率621 (例如,“6Mbps DSL”)實(shí)質(zhì)上為對(duì)于考慮購買 互聯(lián)網(wǎng)連接的用戶的銷售數(shù)字,但通常其不保證性能水平。出于該應(yīng)用的目的,其是不相關(guān) 的,因?yàn)槲覀儍H關(guān)注經(jīng)由連接使視頻流動(dòng)時(shí)的可用最大數(shù)據(jù)速率622。因此,在圖9a及圖 9c中,當(dāng)描述對(duì)峰值問題的解決方法時(shí),自曲線圖省略額定最大數(shù)據(jù)速率,且僅顯示可用最 大數(shù)據(jù)速率922。視頻流數(shù)據(jù)速率不得超過可用最大數(shù)據(jù)速率922。為了解決此問題,視頻壓縮器404進(jìn)行的第一件事是確定峰值數(shù)據(jù)速率941,其為 信道能夠穩(wěn)定地處理的數(shù)據(jù)速率。該速率可通過許多技術(shù)來確定。一種該技術(shù)是將越加變 高的數(shù)據(jù)速率測試流自主機(jī)服務(wù)210逐漸發(fā)送至客戶端415 (圖4a及圖4b中),且使客戶 端將關(guān)于分組丟失及延時(shí)的水平的反饋提供至主機(jī)服務(wù)。當(dāng)分組丟失和/或延時(shí)開始顯示 尖銳增加時(shí),其為達(dá)到可用最大數(shù)據(jù)速率922的指示。之后,主機(jī)服務(wù)210可逐漸地減小測 試流的數(shù)據(jù)速率,直至客戶端415報(bào)告在合理的時(shí)間周期中已接收到測試流(分組丟失及 延時(shí)的可接受水平接近最小)為止。這確定峰值最大數(shù)據(jù)速率941,其接著將用作用于流動(dòng) 視頻的峰值數(shù)據(jù)速率。隨著時(shí)間的推移,峰值數(shù)據(jù)速率941將波動(dòng)(例如,若家庭中的另一 用戶開始嚴(yán)重地使用互聯(lián)網(wǎng)連接),且客戶端415將需要恒定地監(jiān)視峰值數(shù)據(jù)速率941以觀 看分組丟失或延時(shí)是否增加(指示可用最大數(shù)據(jù)速率922下降至低于先前所確定的峰值數(shù) 據(jù)速率941),且若如此,則峰值數(shù)據(jù)速率941。類似地,若隨著時(shí)間的推移,客戶端415發(fā)現(xiàn) 分組丟失及延時(shí)保持在最佳水平,則其可請(qǐng)求視頻壓縮器緩慢地增加數(shù)據(jù)速率以觀看可用 最大數(shù)據(jù)速率是否增加(例如,若家庭中的另一用戶已停止對(duì)互聯(lián)網(wǎng)連接的嚴(yán)重使用),且 再次等待直至分組丟失和/或較高延時(shí)指示已超過可用最大數(shù)據(jù)速率922為止,且可再次 發(fā)現(xiàn)用于峰值數(shù)據(jù)速率941的較低水平,但該較低水平可能高于測試增加的數(shù)據(jù)速率之前 的水平。因此,可通過使用該技術(shù)(及類似其的其他技術(shù))而發(fā)現(xiàn)峰值數(shù)據(jù)速率941,且視 需要而周期性地進(jìn)行調(diào)整。峰值數(shù)據(jù)速率941確定可由視頻壓縮器404使用以使視頻流動(dòng) 至用戶的最大數(shù)據(jù)速率。用于確定峰值數(shù)據(jù)速率的邏輯可在用戶場所211處和/或在主機(jī) 服務(wù)210上加以實(shí)施。在用戶場所211處,客戶端設(shè)備415執(zhí)行計(jì)算以確定峰值數(shù)據(jù)速率 且將此信息傳輸回至主機(jī)服務(wù)210 ;在主機(jī)服務(wù)210處,主機(jī)服務(wù)處的服務(wù)器402執(zhí)行計(jì)算 以基于自客戶端415所接收的統(tǒng)計(jì)數(shù)據(jù)(例如,峰值丟失、延時(shí)、最大數(shù)據(jù)速率等)而確定 峰值數(shù)據(jù)速率。圖9a顯示具有實(shí)質(zhì)場景復(fù)雜度和/或運(yùn)動(dòng)的實(shí)例視頻流數(shù)據(jù)速率934,其是使用 先前所描述且在圖7a、圖7b及圖8中加以說明的循環(huán)I/P圖像塊壓縮技術(shù)而產(chǎn)生。視頻 壓縮器404經(jīng)配置而以低于峰值數(shù)據(jù)速率941的平均數(shù)據(jù)速率輸出經(jīng)壓縮的視頻,且注意, 大部分時(shí)間,視頻流數(shù)據(jù)速率保持低于峰值數(shù)據(jù)速率941。數(shù)據(jù)速率934與圖6c中所顯示 的視頻流數(shù)據(jù)速率634 (其是使用I/P/B或I/P幀而產(chǎn)生)的比較顯示循環(huán)I/P圖像塊壓 縮產(chǎn)生平滑得多的數(shù)據(jù)速率。但在幀2倍峰值952 (其接近2倍峰值數(shù)據(jù)速率942)及幀4 倍峰值954 (其接近4倍峰值數(shù)據(jù)速率944)下,數(shù)據(jù)速率仍超過峰值數(shù)據(jù)速率941,這是不 可接受的。在實(shí)踐中,即使對(duì)于來自快速改變的視頻游戲的高動(dòng)作視頻,超過峰值數(shù)據(jù)速率 941的峰值也在小于2%的幀中出現(xiàn),超過2倍峰值數(shù)據(jù)速率942的峰值很少出現(xiàn),且超過3倍峰值數(shù)據(jù)速率943的峰值難得出現(xiàn)。但是,當(dāng)其確實(shí)出現(xiàn)時(shí)(例如,在場景轉(zhuǎn)變期間), 其所需的數(shù)據(jù)速率必須產(chǎn)生良好質(zhì)量的視頻圖像。解決此問題的一個(gè)方式是簡單地配置視頻壓縮器404以使得其最大數(shù)據(jù)速率輸 出為峰值數(shù)據(jù)速率941。遺憾地,峰值幀期間的所得視頻輸出質(zhì)量不良,因?yàn)閴嚎s算法“極 度缺乏”比特。所導(dǎo)致的為當(dāng)存在突然轉(zhuǎn)變或快速運(yùn)動(dòng)時(shí)出現(xiàn)壓縮假影,且及時(shí)地,用戶開 始認(rèn)識(shí)到當(dāng)存在突然改變或快速運(yùn)動(dòng)時(shí)假影總是突然出現(xiàn),且其可變得相當(dāng)討厭。盡管人的視覺系統(tǒng)對(duì)在突然改變或快速運(yùn)動(dòng)期間出現(xiàn)的視覺假影相當(dāng)敏感,但對(duì) 在所述情形下偵測到幀速率的減小并不是非常敏感。事實(shí)上,當(dāng)所述突然改變出現(xiàn)時(shí),看來 似乎人的視覺系統(tǒng)專注于追蹤所述改變,且若幀速率暫時(shí)從60fps下降到30fps且接著立 即返回到60fps,則人的視覺系統(tǒng)不會(huì)注意到。此外,在非常急劇的轉(zhuǎn)變(如突然場景改變) 的狀況下,若幀速率下降到20fps或甚至15fps且接著立即返回到60fps,則人的視覺系統(tǒng) 不會(huì)注意到。只要幀速率減小僅偶爾出現(xiàn),對(duì)于人觀察者而言,看來似乎視頻以60fps不斷 地執(zhí)行。通過圖9b中所說明的技術(shù)來利用人的視覺系統(tǒng)的此特性。服務(wù)器402 (來自圖4a 及圖4b)以穩(wěn)定幀速率(在一個(gè)實(shí)施例中,在60fps下)產(chǎn)生未經(jīng)壓縮的視頻輸出流。時(shí)間 線顯示每個(gè)1/60秒每個(gè)幀961-970輸出。自幀961開始,將每個(gè)未經(jīng)壓縮的視頻幀輸出至 低延時(shí)視頻壓縮器404,低延時(shí)視頻壓縮器404在小于一幀時(shí)間的時(shí)間中壓縮所述幀,產(chǎn)生 用于第一幀的經(jīng)壓縮的幀1981。經(jīng)產(chǎn)生用于經(jīng)壓縮的幀1981的數(shù)據(jù)可視如先前所描述的 許多因素而較大或較小。若數(shù)據(jù)足夠小以致可以峰值數(shù)據(jù)速率941在一幀時(shí)間(1/60秒) 或小于一幀時(shí)間內(nèi)將其傳輸至客戶端415,則在傳輸時(shí)間(xmit時(shí)間)991(指示傳輸時(shí)間的 持續(xù)時(shí)間的箭頭的長度)期間將其傳輸。在下一個(gè)幀時(shí)間中,服務(wù)器402產(chǎn)生未經(jīng)壓縮的 幀2962,將其壓縮成經(jīng)壓縮的幀2982,且在小于一幀時(shí)間的傳輸時(shí)間992期間以峰值數(shù)據(jù) 速率941將其傳輸至客戶端415。接著,在下一個(gè)幀時(shí)間中,服務(wù)器402產(chǎn)生未經(jīng)壓縮的幀3963。當(dāng)由視頻壓縮器 404來壓縮未經(jīng)壓縮的幀3963時(shí),所得的經(jīng)壓縮的幀3983為比可以峰值數(shù)據(jù)速率941在一 幀時(shí)間中傳輸?shù)臄?shù)據(jù)多的數(shù)據(jù)。因此,在傳輸時(shí)間(2倍峰值)993期間將其傳輸,其占據(jù)所 有幀時(shí)間及下一個(gè)幀時(shí)間的一部分?,F(xiàn)在,在下一個(gè)幀時(shí)間期間,服務(wù)器402產(chǎn)生另一未經(jīng) 壓縮的幀4964且將其輸出至視頻壓縮器404,但數(shù)據(jù)被忽略且通過974來說明。這是因?yàn)?視頻壓縮器404經(jīng)配置以忽略在其仍傳輸先前經(jīng)壓縮的幀時(shí)到達(dá)的其他未經(jīng)壓縮的視頻 幀。當(dāng)然,客戶端415的視頻解壓縮器將未能接收到幀4,但其簡單地繼續(xù)在顯示設(shè)備422 上顯示幀3歷時(shí)2個(gè)幀時(shí)間(也即,暫時(shí)將幀速率自60fps減小至30fps)。對(duì)于下一個(gè)幀5,服務(wù)器402輸出未經(jīng)壓縮的幀5965,將其壓縮成經(jīng)壓縮的幀5985 且在傳輸時(shí)間995期間在1幀內(nèi)將其傳輸。客戶端415的視頻解壓縮器解壓縮幀5并將其 顯示于顯示設(shè)備422上。接著,服務(wù)器402輸出未經(jīng)壓縮的幀6966,視頻壓縮器404將其壓 縮成經(jīng)壓縮的幀6986,但此時(shí)所得的數(shù)據(jù)非常大。在傳輸時(shí)間(4倍峰值)996期間以峰值 數(shù)據(jù)速率941傳輸經(jīng)壓縮的幀,但花費(fèi)幾乎4個(gè)幀時(shí)間來傳輸幀。在接下來的3個(gè)幀時(shí)間 期間,視頻壓縮器404忽略來自服務(wù)器402的3個(gè)幀,且客戶端415的解壓縮器將幀6穩(wěn)定 地保持在顯示設(shè)備422上歷時(shí)4個(gè)幀時(shí)間(也即,暫時(shí)將幀速率自60fps減小至15fps)。 接著最后,服務(wù)器402輸出幀10 970,視頻壓縮器404將其壓縮成經(jīng)壓縮的幀10 987,且在傳輸時(shí)間997期間將其傳輸,且客戶端415的解壓縮器解壓縮幀10并將其顯示于顯示設(shè)備 422上且再一次視頻以60fps重新開始。注意,盡管視頻壓縮器404丟棄了來自由服務(wù)器402產(chǎn)生的視頻流的視頻幀,但其 不會(huì)丟棄音頻數(shù)據(jù)(不管音頻是以什么形式來的),且當(dāng)丟棄視頻幀時(shí)視頻壓縮器404繼 續(xù)壓縮音頻數(shù)據(jù)并將其傳輸至客戶端415,客戶端415繼續(xù)解壓縮音頻數(shù)據(jù)并將音頻提供 至由用戶使用以回放音頻的無論什么設(shè)備。因此在丟棄幀的周期期間,音頻繼續(xù)而不減弱。 與經(jīng)壓縮的視頻相比,經(jīng)壓縮的音頻消耗相對(duì)小百分比的帶寬,且因此不會(huì)對(duì)總數(shù)據(jù)速率 有較大影響。盡管在數(shù)據(jù)速率圖中的任一者中都未說明,但峰值數(shù)據(jù)速率941內(nèi)總是存在 經(jīng)保留用于經(jīng)壓縮音頻流的數(shù)據(jù)速率容量。選擇剛剛在圖9b中所描述的實(shí)例來說明在數(shù)據(jù)速率峰值期間幀速率如何下降, 但未說明的是當(dāng)使用先前所描述的循環(huán)I/P圖像塊技術(shù)時(shí),所述數(shù)據(jù)速率峰值及隨的發(fā)生 的丟棄的幀很少,即使在高場景復(fù)雜度/高動(dòng)作序列(諸如在視頻游戲、電影及某個(gè)應(yīng)用程 序軟件中出現(xiàn)的那些)期間也如此。因此,減小的幀速率罕有且暫時(shí),且人的視覺系統(tǒng)不會(huì) 偵測到它們。若將剛剛所描述的幀速率減小機(jī)制應(yīng)用于圖9a中所說明的視頻流數(shù)據(jù)速率,則 在圖9c中說明所得的視頻流數(shù)據(jù)速率。在此實(shí)例中,2倍峰值952已減小至平坦化的2倍 峰值953,且4倍峰值955已減小至平坦化的4倍峰值955,且整個(gè)視頻流數(shù)據(jù)速率934保 持處于或低于峰值數(shù)據(jù)速率941。因此,使用上文所描述的技術(shù),可經(jīng)由通用互聯(lián)網(wǎng)及消費(fèi)者級(jí)互聯(lián)網(wǎng)連接而以低 延時(shí)來傳輸高動(dòng)作視頻流。另外,在LAN(例如,IOOMbs以太網(wǎng)或802. Ilg無線網(wǎng)絡(luò))上或 私用網(wǎng)絡(luò)(例如,數(shù)據(jù)中心與辦公室之間的100Mbps連接)上的辦公室環(huán)境中,可在無峰值情況下傳輸高動(dòng)作視頻流,以使得多 個(gè)用戶(例如,以4. 5Mbps傳輸60fps下的1920X1080)可使用LAN或共用私用數(shù)據(jù)連接, 而不使重迭峰值淹沒(overwhelm)網(wǎng)絡(luò)或網(wǎng)絡(luò)交換器底板。數(shù)據(jù)速率調(diào)整在一個(gè)實(shí)施例中,主機(jī)服務(wù)210最初評(píng)估信道的可用最大數(shù)據(jù)速率622及延時(shí)以 確定用于視頻流的適當(dāng)數(shù)據(jù)速率且接著響應(yīng)于此而動(dòng)態(tài)地調(diào)整數(shù)據(jù)速率。為了調(diào)整數(shù)據(jù)速 率,主機(jī)服務(wù)210可(例如)修改待發(fā)送至客戶端415的視頻流的圖像分辨率和/或每秒 幀數(shù)。而且,主機(jī)服務(wù)可調(diào)整經(jīng)壓縮視頻的質(zhì)量水平。當(dāng)改變視頻流的分辨率時(shí)(例如,自 1280 X 720分辨率至640 X 360),客戶端415上的視頻解壓縮邏輯412可將圖像按比例增加 以在顯示屏幕上維持相同圖像大小。在一個(gè)實(shí)施例中,在信道完全退出的情形下,主機(jī)服務(wù)210將游戲暫停。在多人游 戲的狀況下,主機(jī)服務(wù)向其他用戶報(bào)告該用戶已退出游戲和/或?qū)⒂螒驎和R杂糜谄渌脩?。丟棄或延遲的分組在一個(gè)實(shí)施例中,若數(shù)據(jù)由于圖4a或圖4b中的視頻壓縮器404與客戶端415之間 的分組丟失而丟失,或由于到達(dá)得過晚以致不能解壓縮及滿足經(jīng)解壓縮幀的延時(shí)要求的分 組被無次序地接收而丟失,則視頻解壓縮邏輯412能夠減輕視覺假影。在流動(dòng)I/P幀實(shí)施 中,若存在丟失/延遲的分組,則整個(gè)屏幕受影響,從而可能引起屏幕完全凍結(jié)一段時(shí)間周期或顯示其他屏幕寬視覺假影。舉例而言,若丟失/延遲的分組引起I幀的丟失,則在接收 新的I幀之前,解壓縮器將缺乏用于跟隨的所有P幀的參考。若丟失P幀,則其將影響跟隨 的用于整個(gè)屏幕的P幀。視I幀出現(xiàn)之前有多久,這將具有較長或較短的視覺影響。使用 如圖7a及圖7b中所顯示的交錯(cuò)I/P圖像塊,丟失/延遲的分組不太可能影響整個(gè)屏幕,因 為其僅影響受影響的分組中所含有的圖像塊。若每個(gè)圖像塊的數(shù)據(jù)是在個(gè)別分組內(nèi)發(fā)送, 則若分組丟失,則其僅影響一個(gè)圖像塊。當(dāng)然,視覺假影的持續(xù)時(shí)間將取決于I圖像塊分組 是否丟失及在P圖像塊丟失的情況下在I圖像塊出現(xiàn)之前將花費(fèi)多少個(gè)幀。但是,假定屏 幕上的不同圖像塊是通過I幀非常頻繁地(可能每個(gè)幀)更新,則即使屏幕上的一圖像塊 受影響,其他圖像塊也可能不受影響。另外,若某一事件引起若干分組同時(shí)丟失(例如,鄰 接DSL線的電力中的暫時(shí)中斷數(shù)據(jù)流的尖峰信號(hào)),則一些圖像塊將比其他圖像塊受到更 大影響,但因?yàn)橐恍﹫D像塊將通過新的I圖像塊迅速地更新,所以其僅暫時(shí)受影響。而且, 在流動(dòng)I/P幀實(shí)施的情況下,不僅I幀為最關(guān)鍵幀,而且I幀極大,因此若存在引起丟棄/ 延遲的分組的事件,則與小得多的I圖像塊相比,I幀受影響存在較高機(jī)率(也即,若I幀 的任何部分丟失,則根本不可能可解壓縮I幀)。由于所有所述原因,與I/P幀的情況相比, 當(dāng)分組被丟棄/延遲時(shí),使用I/P圖像塊導(dǎo)致小得多的視覺假影。一個(gè)實(shí)施例試圖通過將經(jīng)壓縮的圖像塊智能地封裝于TCP(傳輸控制協(xié)議)分組 或UDP(用戶數(shù)據(jù)報(bào)協(xié)議)分組內(nèi)而減少丟失分組的效應(yīng)。舉例而言,在一個(gè)實(shí)施例中,只 要可能,即將圖像塊與分組邊界對(duì)準(zhǔn)。圖IOa說明可如何在不實(shí)施此特征的情況下將圖像 塊封裝于一系列分組1001-1005內(nèi)。具體言之,在圖IOa中,圖像塊越過分組邊界且經(jīng)無效 率地封裝以致單一分組的丟失導(dǎo)致多個(gè)幀的丟失。舉例而言,若分組1003或1004丟失,則 丟失三個(gè)圖像塊,導(dǎo)致視覺假影。相比之下,圖IOb說明用于將圖像塊智能地封裝于分組內(nèi)以減少分組丟失的效應(yīng) 的圖像塊封裝邏輯1010。首先,圖像塊封裝邏輯1010將圖像塊與分組邊界對(duì)準(zhǔn)。因此,圖 像塊T1、T3、T4、T7及Τ2分別與分組1001-1005的邊界對(duì)準(zhǔn)。圖像塊封裝邏輯也試圖以可 能的更有效的方式將圖像塊組合于分組內(nèi),而不越過分組邊界。基于圖像塊中的每一者的 大小,將圖像塊Tl與Τ6組合于一個(gè)分組1001中;將Τ3與Τ5組合于一個(gè)分組1002中;將 圖像塊Τ4與Τ8組合于一個(gè)分組1003中;將圖像塊Τ8添加至分組1004 ;且將圖像塊Τ2添 加至分組1005。因此,在此方案下,單個(gè)分組丟失將導(dǎo)致不多于2個(gè)圖像塊(而非如圖IOa 中所說明的3個(gè)圖像塊)的丟失。圖IOb中所顯示的實(shí)施例的一個(gè)額外益處在于圖像塊是以其在圖像內(nèi)被顯示的 不同次序進(jìn)行傳輸。若鄰近分組由于干擾傳輸?shù)耐皇录?其將影響屏幕上彼此不接近的 區(qū)域)而丟失,則此方式在顯示器上產(chǎn)生較不引人注意的假影。一個(gè)實(shí)施例使用前向糾錯(cuò)(FEC)技術(shù)來保護(hù)視頻流的特定部分以使其免受信道 錯(cuò)誤的影響。如此項(xiàng)技術(shù)中已知,諸如里德-所羅門及Viterbi (維特比)的FEC技術(shù)產(chǎn)生 糾錯(cuò)數(shù)據(jù)信息并將其附加至經(jīng)由通信信道而傳輸?shù)臄?shù)據(jù)。若錯(cuò)誤在基本數(shù)據(jù)(例如,I幀) 中出現(xiàn),則FEC可用于校正該錯(cuò)誤。FEC碼增加傳輸?shù)臄?shù)據(jù)速率,因此理想地,其僅在最需要時(shí)使用。若數(shù)據(jù)正被發(fā)送, 且其將不導(dǎo)致非常引人注意的視覺假影,則可較佳不使用FEC碼來保護(hù)數(shù)據(jù)。舉例而言,緊 接于丟失的I圖像塊之前的P圖像塊將僅在屏幕上產(chǎn)生1/60秒的視覺假影(也即,屏幕上
38影幾乎不能被人眼偵測到。隨著P圖像塊自I圖像塊 進(jìn)一步向后,丟失P圖像塊越加變得更引人注意。舉例而言,若圖像塊循環(huán)型樣為在I圖像 塊再次可用之前I圖像塊隨后跟著15個(gè)P圖像塊,則若緊接于I圖像塊之后的P圖像塊丟 失,則其導(dǎo)致該圖像塊顯示不正確的圖像歷時(shí)15個(gè)幀時(shí)間(在60fps下,這將為250毫秒)。 人眼將容易偵測到250毫秒的流的中斷。因此,P圖像塊距新的I圖像塊越向后(也即,P 圖像塊跟隨I圖像塊越接近),則假影越引人注意。如先前所論述,盡管如此,但一般而言, P圖像塊跟隨I圖像塊越接近,用于該P(yáng)圖像塊的數(shù)據(jù)越小。因此,跟隨I圖像塊的P圖像 塊不僅對(duì)于保護(hù)以免丟失而言更關(guān)鍵,而且其大小較小。此外,一般而言,需要保護(hù)的數(shù)據(jù) 越小,保護(hù)其所需的FEC碼越小。因此,如圖Ila中所說明,在一個(gè)實(shí)施例中,由于I圖像塊在視頻流中的重要性,僅 I圖像塊具備FEC碼。因此,F(xiàn)EC 1101含有用于I圖像塊1100的糾錯(cuò)碼且FEC 1104含有 用于I圖像塊1103的糾錯(cuò)碼。在此實(shí)施例中,對(duì)于P圖像塊不產(chǎn)生FEC。在圖lib中所說明的一個(gè)實(shí)施例中,對(duì)于在丟失時(shí)最可能引起視覺假影的P圖像 塊也產(chǎn)生FEC碼。在此實(shí)施例中,F(xiàn)EC 1105提供用于前3個(gè)P圖像塊但不用于跟隨的P圖 像塊的糾錯(cuò)碼。在另一實(shí)施例中,對(duì)于數(shù)據(jù)大小最小的P圖像塊產(chǎn)生FEC碼(其將傾向于 自選在I圖像塊的后最早出現(xiàn)的P圖像塊,其對(duì)于保護(hù)最為關(guān)鍵)。在另一實(shí)施例中,并非將FEC碼連同圖像塊一起發(fā)送,而是將圖像塊傳輸兩次,每 次在不同分組中傳輸。若一分組丟失/延遲,則使用另一分組。在圖Ilc中所顯示的一個(gè)實(shí)施例中,產(chǎn)生分別用于與視頻同時(shí)自主機(jī)服務(wù)傳輸?shù)?音頻分組1110及1112的FEC碼1111及1113。維持視頻流中的音頻的完整性特別重要,因 為失真的音頻(例如,滴答聲或嘶嘶聲)將導(dǎo)致特別不合需要的用戶體驗(yàn)。FEC碼幫助確保 音頻內(nèi)容在客戶端計(jì)算機(jī)415處無失真地再現(xiàn)。在另一實(shí)施例中,并非將FEC碼連同音頻數(shù)據(jù)一起發(fā)送,而是將音頻數(shù)據(jù)傳輸兩 次,每次在不同分組中傳輸。若一個(gè)分組丟失/延遲,則使用另一分組。另外,在圖Ild中所說明的一個(gè)實(shí)施例中,F(xiàn)EC碼1121及1123分別用于自客戶 端415上行傳輸?shù)街鳈C(jī)服務(wù)210的用戶輸入命令(例如,按鈕按壓)1120及1122。這是重 要的,因?yàn)樵谝曨l游戲或應(yīng)用程序中漏掉按鈕按壓或鼠標(biāo)運(yùn)動(dòng)可能導(dǎo)致不合需要的用戶體 驗(yàn)。在另一實(shí)施例中,并非將FEC碼連同用戶輸入命令數(shù)據(jù)一起發(fā)送,而是將用戶輸 入命令數(shù)據(jù)傳輸兩次,每次在不同分組中傳輸。若一個(gè)分組丟失/延遲,則使用另一分組。在一個(gè)實(shí)施例中,主機(jī)服務(wù)210評(píng)估與客戶端415的通信信道的質(zhì)量,以確定是否 使用FEC,且若使用,則確定應(yīng)對(duì)視頻、音頻及用戶命令的何部分應(yīng)用FEC。評(píng)估信道的“質(zhì) 量”可包括如上所述的諸如估計(jì)分組丟失、延時(shí)等的功能。若信道特別不可靠,則主機(jī)服務(wù) 210可對(duì)所有I圖像塊、P圖像塊、音頻及用戶命令應(yīng)用FEC。相比之下,若信道可靠,則主 機(jī)服務(wù)210可僅對(duì)音頻及用戶命令應(yīng)用FEC,或可不對(duì)音頻或視頻應(yīng)用FEC,或可根本不使 用FEC??墒褂肍EC的應(yīng)用的各種其他排列,同時(shí)仍遵守所述基本原理。在一個(gè)實(shí)施例中, 主機(jī)服務(wù)210不斷地監(jiān)視信道的狀況且相應(yīng)地改變FEC策略。在另一實(shí)施例中,參看圖4a及圖4b,當(dāng)分組丟失/延遲,從而導(dǎo)致圖像塊數(shù)據(jù)的丟 失時(shí),或若可能由于特別糟的分組丟失而使得FEC不能夠校正丟失的圖像塊數(shù)據(jù),客戶端
39415評(píng)估在將接收新的I圖像塊之前剩余多少個(gè)幀且將其與自客戶端415至主機(jī)服務(wù)210 的來回行程延時(shí)相比較。若來回行程延時(shí)小于新的I圖像塊應(yīng)到達(dá)之前的幀的數(shù)目,則客 戶端415向主機(jī)服務(wù)210發(fā)送消息,請(qǐng)求新的I圖像塊。將此消息路由至視頻壓縮器404, 且其并非產(chǎn)生用于數(shù)據(jù)已丟失的圖像塊的P圖像塊,而是產(chǎn)生I圖像塊。假定圖4a及圖 4b中所顯示的系統(tǒng)經(jīng)設(shè)計(jì)以提供通常小于80毫秒的來回行程延時(shí),則這導(dǎo)致圖像塊被校 正于80毫秒內(nèi)(在60fps下,幀具有16. 67毫秒的持續(xù)時(shí)間,因此在全幀時(shí)間中,80毫秒 延時(shí)將導(dǎo)致83. 33毫秒內(nèi)的經(jīng)校正的圖像塊,83. 33毫秒為5個(gè)幀時(shí)間,其為引人注意的中 斷,但遠(yuǎn)不及(例如)對(duì)于15個(gè)幀250毫秒中斷引人注意)。當(dāng)壓縮器404脫離其通常的 循環(huán)次序而產(chǎn)生此種I圖像塊時(shí),若I圖像塊將引起所述幀的帶寬超過可用帶寬,則壓縮器 404將延遲其他圖像塊的循環(huán),以使得其他圖像塊在所述幀時(shí)間期間接收P圖像塊(即使在 所述幀期間一個(gè)圖像塊通常將應(yīng)為I圖像塊),且接著通常的循環(huán)將自下一個(gè)幀開始繼續(xù), 且通常將已接收到先前幀中的I圖像塊的圖像塊將接收I圖像塊。盡管此動(dòng)作暫時(shí)延遲R 幀循環(huán)的階段,但其通常將在視覺上不引人注意。視頻及音頻壓縮器/解壓縮器實(shí)施圖12說明一個(gè)特定實(shí)施例,其中使用多核和/或多處理器1200來并行地壓縮8個(gè) 圖像塊。在一實(shí)施例中,使用在2. 66GHz或更高下執(zhí)行的雙核處理器、四核Xeon (至強(qiáng))CPU 計(jì)算機(jī)系統(tǒng),每個(gè)核心作為獨(dú)立過程實(shí)施開源x264H. 264壓縮器。然而,可使用各種其他硬 件/軟件配置,同時(shí)仍遵守所述基本原理。舉例而言,CPU核心中的每一者可通過以FPGA實(shí) 施的H. 264壓縮器來替換。在圖12中所顯示的實(shí)例中,核心1201-1208用于作為八個(gè)獨(dú)立 線緒來同時(shí)處理I圖像塊及P圖像塊。如此項(xiàng)技術(shù)中眾所周知的,當(dāng)前多核及多處理器計(jì) 算機(jī)系統(tǒng)與諸如Microsoft Windows XP專業(yè)版(64比特版或者32比特版)及Linux的多 線緒處理操作系統(tǒng)整合時(shí),其固有地能夠進(jìn)行多線緒處理。在圖12中所說明的實(shí)施例中,因?yàn)樵?個(gè)核心中的每一者僅負(fù)責(zé)一個(gè)圖像塊, 所以其很大程度上獨(dú)立于其他核心而操作,每一者執(zhí)行x264的單獨(dú)實(shí)例化。使用以PCI Express xl 為基礎(chǔ)的 DVI 捕獲卡(諸如,來自 Netherlands 的Microtronix of Oosterhout 的Sendero視頻成像IP開發(fā)板)來捕獲640X480、800X600或1280X720分辨率下的未 經(jīng)壓縮的視頻,且卡上的FPGA使用直接存儲(chǔ)器存取(DMA)來將所捕獲的視頻經(jīng)由DVI總線 傳送至系統(tǒng)RAM中。將所述圖像塊配置成4X2配置1205 (盡管其說明為方形圖像塊,但在 該實(shí)施例中,其具有160 X 240分辨率)。x264的每個(gè)實(shí)例化被配置成壓縮該8個(gè)160 X 240 圖像塊中的一者,且其經(jīng)同步化以使得在初始I圖像塊壓縮的后每一核心進(jìn)入一循環(huán),每 一幀與另一幀不同相,以壓縮一 I圖像塊繼的以七個(gè)P圖像塊,如圖12中所說明。在每一幀時(shí)間,使用先前所描述的技術(shù)將所得的經(jīng)壓縮圖像塊組合成分組流,且 接著將經(jīng)壓縮圖像塊傳輸至目的地客戶端415。盡管圖12中未說明,但若組合的8個(gè)圖像塊的數(shù)據(jù)速率超過指定峰值數(shù)據(jù)速率 941,則所有8個(gè)x264過程將暫時(shí)中止歷時(shí)達(dá)必要的幀時(shí)間,直至已傳輸用于組合的8個(gè)圖 像塊的數(shù)據(jù)為止。在一個(gè)實(shí)施例中,將客戶端415實(shí)施為執(zhí)行FFmpeg的8個(gè)實(shí)例化的PC上的軟件。 接收過程接收8個(gè)圖像塊,且將每一圖像塊路由至FFmpeg實(shí)例化,F(xiàn)Fmpeg實(shí)例化解壓縮圖 像塊并將其再現(xiàn)至顯示設(shè)備422上的適當(dāng)圖像塊位置。
40
客戶端415接收來自PC的輸入設(shè)備驅(qū)動(dòng)器的鍵盤、鼠標(biāo)或游戲控制器輸入并將其 傳輸?shù)椒?wù)器402。服務(wù)器402接著應(yīng)用所接收的輸入設(shè)備數(shù)據(jù)并將其應(yīng)用于在服務(wù)器402 上執(zhí)行的游戲或應(yīng)用程序,服務(wù)器402為使用Intel 2. 16GHz雙核CPU執(zhí)行Windows的PC。 服務(wù)器402接著產(chǎn)生新幀并經(jīng)由其DVI輸出端將新幀自以主機(jī)板為基礎(chǔ)的圖形系統(tǒng)或者經(jīng) 由 NVIDIA8800GTX PCI Express 卡的 DVI 輸出端輸出。同時(shí),服務(wù)器402經(jīng)由其數(shù)字音頻輸出端(例如,S/PDIF)輸出由游戲或應(yīng)用程序 產(chǎn)生的音頻,該數(shù)字音頻輸出端耦合至實(shí)施視頻壓縮的以雙四核Xeon為基礎(chǔ)的PC上的數(shù) 字音頻輸入端。Vorbis開源音頻壓縮器用于使用可用于處理線緒的無論什么核心來與視頻 同時(shí)地壓縮音頻。在一個(gè)實(shí)施例中,完成壓縮其圖像塊的核心首先執(zhí)行音頻壓縮。接著將 經(jīng)壓縮的音頻連同經(jīng)壓縮的視頻一起傳輸,并在客戶端415上使用Vorbis音頻解壓縮器來 解壓縮經(jīng)壓縮的音頻。主機(jī)服務(wù)服務(wù)器中心分配經(jīng)由玻璃(諸如,光纖)的光以光在真空中的速度的某一部分行進(jìn),且因此可確定 光在光纖中的確切傳播速度。但是,在實(shí)踐中,考慮用于路由延遲、傳輸無效率及其他耗用 的時(shí)間,我們觀察到互聯(lián)網(wǎng)上的最佳延時(shí)反映較接近光速的50%的傳輸速度。因此,最佳 1000英里來回行程延時(shí)為約22毫秒,且最佳3000英里來回行程延時(shí)為約64毫秒。因此, 一美國海岸上的單個(gè)服務(wù)器將距離過遠(yuǎn)以致不能以所要的延時(shí)伺服另一海岸上的客戶端 (其可能達(dá)3000英里遠(yuǎn))。然而,如圖13a中所說明,若主機(jī)服務(wù)210服務(wù)器中心1300定位 于美國的中心(例如,堪薩斯州、內(nèi)布拉斯加州等),以致至美國大陸中的任何點(diǎn)的距離為 約1500英里或1500英里以下,來回行程互聯(lián)網(wǎng)延時(shí)可低至32毫秒。參看圖4b,注意盡管 用戶ISP 453所允許的最糟狀況延時(shí)為25毫秒,但通常,在DSL及電纜調(diào)制解調(diào)器系統(tǒng)的 情況下我們觀察到較接近10-15毫秒的延時(shí)。而且,圖4b假定自用戶場所211至主機(jī)代管 中心210的最大距離為1000英里。因此,在所使用的典型的15毫秒的用戶ISP來回行程延 時(shí)及對(duì)于32毫秒的來回行程延時(shí)的1500英里的最大互聯(lián)網(wǎng)距離的情況下,自用戶致動(dòng)輸 入設(shè)備421的時(shí)刻至在顯示設(shè)備422上看見響應(yīng)的總來回行程延時(shí)為1+1+15+32+1+16+6+8 =80毫秒。因此,通??稍?500英里的互聯(lián)網(wǎng)距離上達(dá)成80毫秒響應(yīng)時(shí)間。這將允許美 國大陸中具有足夠短的用戶ISP延時(shí)453的任何用戶場所存取在中心定位的單個(gè)服務(wù)器中 心。在圖13b中所說明的另一實(shí)施例中,主機(jī)服務(wù)210服務(wù)器中心HS1-HS6戰(zhàn)略上定 位于美國(或其他地理區(qū)域)的周圍,特定較大的主機(jī)服務(wù)服務(wù)器中心接近高人口中心而 定位(例如,HS2及HS5)。在一個(gè)實(shí)施例中,服務(wù)器中心HS1-HS6經(jīng)由網(wǎng)絡(luò)1301交換信息, 網(wǎng)絡(luò)1301可為互聯(lián)網(wǎng)或私用網(wǎng)絡(luò)或兩者的組合。在多個(gè)服務(wù)器中心的情況下,可以較低延 時(shí)向具有高用戶ISP延時(shí)453的用戶提供服務(wù)。盡管互聯(lián)網(wǎng)上的距離的確為對(duì)經(jīng)由互聯(lián)網(wǎng)的來回行程延時(shí)有影響的因素,但有時(shí) 很大程度上與延時(shí)無關(guān)的其他因素也起作用。有時(shí)經(jīng)由互聯(lián)網(wǎng)將分組流路由至距離遠(yuǎn)的位 置且再次返回,從而導(dǎo)致來自長循環(huán)的延時(shí)。有時(shí)在路徑上存在不適當(dāng)操作的路由設(shè)備,從 而導(dǎo)致傳輸?shù)难舆t。有時(shí)存在使路徑超載的通信,其引入延遲。此外,有時(shí),根本是存在防 止用戶的ISP路由至給定目的地的故障。因此,盡管通用互聯(lián)網(wǎng)通常以相當(dāng)可靠且最佳的 路由及延時(shí)來提供從一點(diǎn)到另一點(diǎn)的連接,該相當(dāng)可靠且最佳的路線及延時(shí)很大程度上是的外部的長距離連接的情況下), 但該可靠性及延時(shí)得不到任何保證且常常不可自用戶的場所至通用互聯(lián)網(wǎng)上的給定目的 地而達(dá)成。在一個(gè)實(shí)施例中,當(dāng)用戶客戶端415最初連接到主機(jī)服務(wù)210以玩視頻游戲或使 用應(yīng)用程序時(shí),客戶端在啟動(dòng)時(shí)與可用的主機(jī)服務(wù)服務(wù)器中心HS1-HS6中的每一者通信 (例如,使用上文所描述的技術(shù))。若延時(shí)對(duì)于特定連接而言足夠低,則使用該連接。在一 個(gè)實(shí)施例中,客戶端與所有主機(jī)服務(wù)服務(wù)器中心或主機(jī)服務(wù)服務(wù)器中心的一個(gè)子集通信, 選擇具有最低延時(shí)連接的主機(jī)服務(wù)服務(wù)器中心。客戶端可選擇具有最低延時(shí)連接的服務(wù)中 心,或服務(wù)器中心可識(shí)別具有最低延時(shí)連接的服務(wù)器中心并將此信息(例如,以互聯(lián)網(wǎng)地 址的形式)提供給客戶端。若特定主機(jī)服務(wù)服務(wù)器中心超載和/或用戶的游戲或應(yīng)用程序可容忍至另一、較 少載入的主機(jī)服務(wù)服務(wù)器中心的延時(shí),則可將客戶端415重定向至另一主機(jī)服務(wù)服務(wù)器中 心。在此種情形下,將使用戶正執(zhí)行的游戲或應(yīng)用程序在用戶的超載服務(wù)器中心處的服務(wù) 器402上暫停,且將游戲或應(yīng)用程序狀態(tài)數(shù)據(jù)傳送至另一主機(jī)服務(wù)服務(wù)器中心處的服務(wù)器 402。接著將重新開始該游戲或應(yīng)用程序。在一個(gè)實(shí)施例中,主機(jī)服務(wù)210將等待直至游戲 或應(yīng)用程序達(dá)到自然暫停點(diǎn)(例如,游戲中的級(jí)別之間,或者在用戶在應(yīng)用程序中起始“保 存”操作之后)才進(jìn)行傳送。在又一實(shí)施例中,主機(jī)服務(wù)210將等待直至用戶活動(dòng)停止歷時(shí) 指定時(shí)間周期(例如,1分鐘)為止且接著將在這時(shí)起始傳送。如上所述,在一個(gè)實(shí)施例中,主機(jī)服務(wù)210訂閱圖14的互聯(lián)網(wǎng)旁路服務(wù)440以試 圖將得到保證的延時(shí)提供給其客戶端。如本文中所使用的互聯(lián)網(wǎng)旁路服務(wù)是提供自互聯(lián)網(wǎng) 上的一點(diǎn)至另一點(diǎn)的具有得到保證的特性(例如,延時(shí)、數(shù)據(jù)速率等)的私用網(wǎng)絡(luò)路線的服 務(wù)。舉例而言,若主機(jī)服務(wù)210正使用在圣弗朗西斯科提供的AT&T的DSL服務(wù)接收來自 用戶的大量通信(而非路由至以AT&T的圣弗朗西斯科為基地的中央辦公室),則主機(jī)服務(wù) 210將在以圣弗朗西斯科為基地的中央辦公室與用于主機(jī)服務(wù)210的服務(wù)器中心中的一或 多者之間租用來自服務(wù)提供者(可能為AT&T本身或另一提供者)的高容量私用數(shù)據(jù)連接。 接著,若自所有主機(jī)服務(wù)服務(wù)器中心HS1-HS6經(jīng)由通用互聯(lián)網(wǎng)至圣弗朗西斯科中使用AT&T DSL的用戶的路線導(dǎo)致過高延時(shí),則可改為使用私用數(shù)據(jù)連接。盡管私用數(shù)據(jù)連接通常比經(jīng) 由通用互聯(lián)網(wǎng)的路線更昂貴,但只要其保持主機(jī)服務(wù)210的一小百分比連接至用戶,總成 本影響就低,且用戶將體驗(yàn)到更一貫的服務(wù)體驗(yàn)。在電力故障的情況下,服務(wù)器中心常常具有兩個(gè)備用電力層。第一層通常為來自 電池(或來自替代的立即可用的能量源,諸如保持運(yùn)轉(zhuǎn)且附接至發(fā)電機(jī)的飛輪)的備用電 力,其在電力干線出故障時(shí)立即提供電力且保持服務(wù)器中心運(yùn)轉(zhuǎn)。若電力故障為暫時(shí)的,且 電力干線迅速返回(例如,在一分鐘內(nèi)),則電池所需的是保持服務(wù)器中心運(yùn)轉(zhuǎn)。但若電力 故障歷時(shí)較長的時(shí)間周期,則通常啟動(dòng)發(fā)電機(jī)(例如,柴油機(jī)供電)來取代電池且發(fā)電機(jī)只 要具有燃料即可運(yùn)轉(zhuǎn)。所述發(fā)電機(jī)極昂貴,因?yàn)槠浔仨毮軌虍a(chǎn)生多達(dá)服務(wù)器中心通常自電 力干線所得到的電力。在一個(gè)實(shí)施例中,主機(jī)服務(wù)HS1-HS5中的每一者彼此共用用戶數(shù)據(jù),以便在一個(gè) 服務(wù)器中心具有電力故障時(shí),其可將在進(jìn)行中的游戲及應(yīng)用程序暫停,且接著將游戲或應(yīng) 用程序狀態(tài)數(shù)據(jù)自每個(gè)服務(wù)器402傳送至其他服務(wù)器中心處的服務(wù)器402,且接著將通知
42每一用戶的客戶端415以指導(dǎo)其傳達(dá)至新的服務(wù)器402。假定所述情形偶爾出現(xiàn),則將用戶 轉(zhuǎn)移至不能夠提供最佳延時(shí)的主機(jī)服務(wù)服務(wù)器中心(也即,用戶將僅必須容忍較高延時(shí)歷 時(shí)電力故障的持續(xù)時(shí)間)可為可接受的,其將允許用于轉(zhuǎn)移用戶的寬得多的范圍的選項(xiàng)。 舉例而言,給定跨越美國的時(shí)區(qū)差,則東海岸上的用戶在11 30PM可能將要睡眠,而西海岸 上的用戶在8:30PM正開始在視頻游戲使用上達(dá)到峰值。若那時(shí)西海岸上的主機(jī)服務(wù)服務(wù) 器中心中存在電力故障,則其他主機(jī)服務(wù)服務(wù)器中心處可能不存在用于處理所有用戶的足 夠的西海岸服務(wù)器402。在此種情形下,可將一些用戶轉(zhuǎn)移至東海岸上具有可用服務(wù)器402 的主機(jī)服務(wù)服務(wù)器中心,且對(duì)于用戶而言的唯一后果將是較高延時(shí)。一旦將用戶自失去電 力的服務(wù)器中心轉(zhuǎn)移,服務(wù)器中心接著就可開始其服務(wù)器及設(shè)備的有序切斷,以便在電池 (或其他立即電力備用)耗盡之前切斷所有設(shè)備。以此方式,可避免用于服務(wù)器中心的發(fā)電 機(jī)的成本。在一個(gè)實(shí)施例中,在主機(jī)服務(wù)210的嚴(yán)重載入的時(shí)間期間(或者由于峰值用戶載 入,或者因?yàn)橐粋€(gè)或多個(gè)服務(wù)器中心出故障),基于用戶正使用的游戲或應(yīng)用程序的延時(shí)要 求將用戶轉(zhuǎn)移至其他服務(wù)器中心。因此,將為使用需要低延時(shí)的游戲或應(yīng)用程序的用戶給 出對(duì)存在有限供應(yīng)的可用低延時(shí)服務(wù)器連接的優(yōu)選。主機(jī)服務(wù)特征圖15說明在以下特征描述中利用的用于主機(jī)服務(wù)210的服務(wù)器中心的組件的實(shí) 施例。如同圖2a中所說明的主機(jī)服務(wù)210 —樣,除非另外有條件,否則此服務(wù)器中心的組 件由主機(jī)服務(wù)210控制系統(tǒng)401來控制及協(xié)調(diào)。將來自用戶客戶端415的入埠互聯(lián)網(wǎng)通信1501指引至入埠路由1502。通常,入埠 互聯(lián)網(wǎng)通信1501將經(jīng)由至互聯(lián)網(wǎng)的高速光纖連接而進(jìn)入服務(wù)器中心,但具有足夠帶寬、可 靠性及低延時(shí)的任何網(wǎng)絡(luò)連接裝置將是足夠的。入埠路由1502是網(wǎng)絡(luò)(該網(wǎng)絡(luò)可實(shí)施為 以太網(wǎng)、光纖信道網(wǎng)絡(luò),或經(jīng)由任何其他輸送裝置)交換器及支持所述交換器的路由服務(wù) 器的系統(tǒng),其取得到達(dá)的分組且將每個(gè)分組路由到適當(dāng)應(yīng)用程序/游戲服務(wù)器1521-1525。 在一實(shí)施例中,傳送至特定應(yīng)用程序/游戲服務(wù)器的分組表示自客戶端所接收的數(shù)據(jù)的一 子集和/或可由數(shù)據(jù)中心內(nèi)的其他組件(例如,網(wǎng)絡(luò)連接組件,諸如網(wǎng)關(guān)及路由器)來轉(zhuǎn) 譯/改變。在一些狀況下,(例如)若游戲或應(yīng)用程序同時(shí)并行地在多個(gè)服務(wù)器上執(zhí)行,則 每次將分組路由至一個(gè)以上服務(wù)器1521-1525。RAID陣列1511-1512連接至入埠路由網(wǎng)絡(luò) 1502,以使得應(yīng)用程序/游戲服務(wù)器1521-1525可讀取RAID陣列1511-1512及寫入RAID 陣列1511-1512。另外,RAID陣列1515 (其可實(shí)施為多個(gè)RAID陣列)也連接至入埠路由 1502,且來自RAID陣列1515的數(shù)據(jù)可自應(yīng)用程序/游戲服務(wù)器1521-1525來讀取。入埠路 由1502可在多種先前技術(shù)網(wǎng)絡(luò)架構(gòu)(包括樹結(jié)構(gòu)的交換器,入埠互聯(lián)網(wǎng)通信1501在其根 部)中實(shí)施;在互連所有各種設(shè)備的網(wǎng)狀結(jié)構(gòu)中實(shí)施;或作為互連的子網(wǎng)絡(luò)序列(互通設(shè) 備當(dāng)中的集中通信與其他設(shè)備當(dāng)中的集中通信隔離)來實(shí)施。一類型的網(wǎng)絡(luò)配置為SAN(存 儲(chǔ)區(qū)域網(wǎng)絡(luò)),其盡管通常用于儲(chǔ)存設(shè)備,但其也可用于設(shè)備之間的通用高速數(shù)據(jù)傳送。又, 應(yīng)用程序/游戲服務(wù)器1521-1525可各自具有至入埠路由1502的多個(gè)網(wǎng)絡(luò)連接。舉例而 言,服務(wù)器1521-1525可具有至附接至RAID陣列1511-1512的子網(wǎng)絡(luò)的網(wǎng)絡(luò)連接及至附接 至其他設(shè)備的子網(wǎng)絡(luò)的另一網(wǎng)絡(luò)連接。應(yīng)用程序/游戲服務(wù)器1521-1525可經(jīng)相同地、有些不同地或全部不同地來配置,
43如先前關(guān)于圖4a中所說明的實(shí)施例中的服務(wù)器402所描述的。在一實(shí)施例中,每一用戶當(dāng) 使用主機(jī)服務(wù)時(shí)通常為至少一應(yīng)用程序/游戲服務(wù)器1521-1525。出于說明的簡單起見,將 假定給定用戶正使用應(yīng)用程序/游戲服務(wù)器1521,但多個(gè)服務(wù)器可由一用戶使用,且多個(gè) 用戶可共用單一應(yīng)用程序/游戲服務(wù)器1521-1525。自客戶端415 (如先前所描述)所發(fā) 送的用戶的控制輸入經(jīng)接收為入埠互聯(lián)網(wǎng)通信1501,且經(jīng)由入埠路由1502而路由至應(yīng)用 程序/游戲服務(wù)器1521。應(yīng)用程序/游戲服務(wù)器1521使用用戶的控制輸入作為至在服務(wù) 器上執(zhí)行的游戲或應(yīng)用程序的控制輸入,且計(jì)算視頻及與其相關(guān)聯(lián)的音頻的下一個(gè)幀。應(yīng) 用程序/游戲服務(wù)器1521接著將未經(jīng)壓縮的視頻/音頻1529輸出至共用視頻壓縮1530。 應(yīng)用程序/游戲服務(wù)器可經(jīng)由任何裝置(包括一或多個(gè)超高速以太網(wǎng)連接)而輸出未經(jīng)壓 縮的視頻,但在一實(shí)施例中,視頻是經(jīng)由DVI (交互式數(shù)字視頻系統(tǒng))連接而輸出,且音頻及 其他壓縮及通信信道狀態(tài)信息系經(jīng)由通用串列總線(USB)連接而輸出。共用視頻壓縮1530壓縮來自應(yīng)用程序/游戲服務(wù)器1521-1525的未經(jīng)壓縮的視 頻及音頻。該壓縮可完全以硬件或以執(zhí)行軟件的硬件來實(shí)施。可存在用于每個(gè)應(yīng)用程序/ 游戲服務(wù)器1521-1525的專用壓縮器,或若壓縮器足夠快,則可使用給定壓縮器來壓縮來 自一個(gè)以上應(yīng)用程序/游戲服務(wù)器1521-1525的視頻/音頻。舉例而言,在60fps下,視頻 幀時(shí)間為16. 67毫秒。若壓縮器能夠在1毫秒內(nèi)壓縮1幀,則該壓縮器可用于通過取得來 自一個(gè)接一個(gè)的服務(wù)器的輸入而壓縮來自多達(dá)16個(gè)應(yīng)用程序/游戲服務(wù)器1521-1525的 視頻/音頻,該壓縮器保存每個(gè)視頻/音頻壓縮過程的狀態(tài)且當(dāng)其在來自服務(wù)器的視頻/ 音頻流當(dāng)中循環(huán)時(shí)切換背景。這導(dǎo)致壓縮硬件的實(shí)質(zhì)成本節(jié)省。因?yàn)椴煌?wù)器將在不同 時(shí)間完成幀,所以在一個(gè)實(shí)施例中,壓縮器資源是處于具有用于儲(chǔ)存每個(gè)壓縮過程的狀態(tài) 的共用儲(chǔ)存裝置(例如,RAM,閃存)的共用集區(qū)1530中,且當(dāng)服務(wù)器1521-1525幀完整且 準(zhǔn)備被壓縮時(shí),控制裝置確定那時(shí)哪個(gè)壓縮資源可用,為該壓縮資源提供服務(wù)器的壓縮過 程的狀態(tài)及待壓縮的未經(jīng)壓縮的視頻/音頻的幀。注意,用于每個(gè)服務(wù)器的壓縮過程的狀態(tài)的一部分包括關(guān)于壓縮本身的信息,諸 如先前幀的經(jīng)解壓縮的幀緩沖數(shù)據(jù)(其可用作用于P圖像塊的參考)、視頻輸出的分辨率; 壓縮的質(zhì)量;圖像塊結(jié)構(gòu);每圖像塊的比特的分配;壓縮質(zhì)量、音頻格式(例如,立體聲、環(huán) 繞音效、Dolby AC-3(杜比 )AC-3)。但是壓縮過程狀態(tài)也包括關(guān)于以下的通信信道狀 態(tài)信息峰值數(shù)據(jù)速率941,及先前幀(如圖9b中所說明)當(dāng)前是否正被輸出(且因此應(yīng) 忽略當(dāng)前幀),及潛在地是否存在應(yīng)在壓縮中考慮的(諸如,過多分組丟失)影響壓縮決策 (例如,在I圖像塊的頻率方面,等)的信道特性。因?yàn)榉逯禂?shù)據(jù)速率941或其他信道特性 隨著時(shí)間而改變,如由支持每個(gè)用戶監(jiān)視從客戶端415發(fā)送的數(shù)據(jù)的應(yīng)用程序/游戲服務(wù) 器1521-1525所確定的,所以應(yīng)用程序/游戲服務(wù)器1521-1525將相關(guān)信息發(fā)送至共用硬 件壓縮1530。共用硬件壓縮1530也使用諸如先前所描述的所述裝置的裝置將經(jīng)壓縮的視頻/ 音頻分組化,且在適當(dāng)時(shí),應(yīng)用FEC碼,復(fù)制特定數(shù)據(jù),或采取其他步驟,以便充分地確保視 頻/音頻數(shù)據(jù)流由客戶端415接收且以可行的高質(zhì)量及可靠性解壓縮的能力。一些應(yīng)用程序(諸如,下文所描述的應(yīng)用程序)需要給定應(yīng)用程序/游戲服務(wù)器 1521-1525的視頻/音頻輸出同時(shí)在多個(gè)分辨率下(或以其他多個(gè)格式)可用。若應(yīng)用程 序/游戲服務(wù)器1521-1525如此通知共用硬件壓縮1530資源,則該應(yīng)用程序/游戲服務(wù)器1521-1525的未經(jīng)壓縮的視頻音頻1529將被以不同格式、不同分辨率和/或在不同分組 /糾錯(cuò)結(jié)構(gòu)中同時(shí)壓縮。在一些狀況下,一些壓縮資源可在壓縮同一視頻/音頻的多個(gè)壓 縮過程當(dāng)中共用(例如,在許多壓縮算法中,存在借以在應(yīng)用壓縮的前將圖像按比例調(diào)整 成多個(gè)大小的步驟。若需要輸出不同大小的圖像,則該步驟可用于同時(shí)服務(wù)若干個(gè)壓縮過 程)。在其他狀況下,對(duì)于每個(gè)格式將需要單獨(dú)的壓縮資源。在任何狀況下,將用于給定應(yīng) 用程序/游戲服務(wù)器1521-1525 (—或多個(gè))所需的所有各種分辨率及格式的經(jīng)壓縮的視 頻/音頻1539同時(shí)輸出到出埠路由1540。在一個(gè)實(shí)施例中,經(jīng)壓縮的視頻/音頻1539的 輸出是處于UDP格式,因此其為單向分組流。出埠路由網(wǎng)絡(luò)1540包含一系列路由服務(wù)器及交換器,該系列路由服務(wù)器及交換 器將每個(gè)經(jīng)壓縮的視頻/音頻流經(jīng)由出埠互聯(lián)網(wǎng)通信1599接口(其通常將連接到至互聯(lián) 網(wǎng)的光纖接口)而指引到有意的用戶或其他目的地和/或返回至延遲緩沖器1515,和/或 返回至入埠路由1502,和/或經(jīng)由私用網(wǎng)絡(luò)(未圖示)而輸出以供進(jìn)行視頻分配。注意(如 下所述)出埠路由1540可將給定視頻/音頻流同時(shí)輸出至多個(gè)目的地。在一實(shí)施例中, 這是使用互聯(lián)網(wǎng)協(xié)議(IP)多播來實(shí)施,其中廣播意欲同時(shí)流動(dòng)到多個(gè)目的地的給定UDP 流,且該廣播由出埠路由1540中的路由服務(wù)器及交換器來重復(fù)。廣播的該多個(gè)目的地可經(jīng) 由互聯(lián)網(wǎng)而至多個(gè)用戶的客戶端415、經(jīng)由入埠路由1502而到多個(gè)應(yīng)用程序/游戲服務(wù)器 1521-1525,和/或到一個(gè)或多個(gè)延遲緩沖器1515。因此,將給定服務(wù)器1521-1522的輸出 壓縮成一個(gè)或多個(gè)格式,且將每個(gè)經(jīng)壓縮的流指引到一個(gè)或多個(gè)目的地。另外,在另一實(shí)施例中,若多個(gè)應(yīng)用程序/游戲服務(wù)器1521-1525同時(shí)由一個(gè)用戶 使用(例如,在用于產(chǎn)生具有復(fù)雜場景的3D輸出的并行處理配置中)且每個(gè)服務(wù)器產(chǎn)生 所得圖像的部分,則可由共用硬件壓縮1530將多個(gè)服務(wù)器1521-1525的視頻輸出組合成 一組合幀,且自該點(diǎn)向前如上所述處理該組合幀,好像其來自單個(gè)應(yīng)用程序/游戲服務(wù)器 1521-1525。注意,在一個(gè)實(shí)施例中,將由應(yīng)用程序/游戲服務(wù)器1521-1525產(chǎn)生的所有視頻的 復(fù)本(至少以由用戶觀看的視頻的分辨率或更高分辨率)記錄于延遲緩沖器1515中歷時(shí) 至少某一數(shù)目的分鐘(在一個(gè)實(shí)施例中為15分鐘)。這允許每個(gè)用戶“回放”來自每個(gè)會(huì) 話的視頻,以便核查先前工作或業(yè)績(在游戲的狀況下)。因此,在一個(gè)實(shí)施例中,將路由至 用戶客戶端415的每個(gè)經(jīng)壓縮視頻/音頻輸出1539流也多播至延遲緩沖器1515。當(dāng)將視 頻/音頻儲(chǔ)存于延遲緩沖器1515上時(shí),延遲緩沖器1515上的目錄提供應(yīng)用程序/游戲服 務(wù)器1521-1525 (其為延遲的視頻/音頻的來源)的網(wǎng)絡(luò)地址與延遲緩沖器1515上可發(fā)現(xiàn) 延遲的視頻/音頻的位置之間的交叉參考?,F(xiàn)場直播的、可即刻觀看的、可即刻播放的游戲應(yīng)用程序/游戲服務(wù)器1521-1525不僅可用于執(zhí)行用戶的給定應(yīng)用程序或視頻 游戲,而且其可用于建立用于支持經(jīng)由主機(jī)服務(wù)210的導(dǎo)航及其他特征的主機(jī)服務(wù)210的 用戶接口應(yīng)用程序。一種該用戶接口應(yīng)用程序的屏幕拍攝顯示在圖16中(“游戲取景器 (Game Finder) ”屏幕)。該特定用戶接口屏幕允許用戶觀看由其他用戶現(xiàn)場玩的(或延遲 的)15個(gè)游戲?!翱s略圖” 1視頻窗中的每一者(諸如,1600)為在運(yùn)動(dòng)中的現(xiàn)場直播的視頻 窗,其顯示來自一個(gè)用戶的游戲的一個(gè)視頻??s略圖中所顯示的視圖可為用戶正看的同一 視圖,或其可為延遲的視圖(例如,若用戶正玩搏斗游戲,則用戶可能不希望其他用戶看見其隱藏在哪里且其可選擇將其游戲播放的任何視圖延遲一時(shí)間周期(例如,10分鐘))。視 圖也可為不同于任何用戶的視圖的游戲的相機(jī)視圖。通過菜單選擇(此說明中未圖示),用 戶可基于多種標(biāo)準(zhǔn)來選擇要同時(shí)觀看的游戲的選擇。作為例示性選擇的小取樣,用戶可選 擇游戲的隨機(jī)選擇(諸如圖16中所顯示的游戲)、所有一個(gè)類別的游戲(均由不同玩家來 玩)、僅游戲的頂級(jí)玩家、游戲中的給定級(jí)別的玩家,或較低級(jí)玩家(例如,若玩家正學(xué)習(xí)基 礎(chǔ))、是“搭檔”(或?yàn)楦偁幷?的玩家、具有最多數(shù)目觀看者的游戲等。注意,通常,每個(gè)用戶將決定來自其游戲或應(yīng)用程序的視頻是否可由他人觀看,且 若如此,則決定該視頻可由哪些他人觀看及何時(shí)可由他人觀看,決定該視頻是否只可在具 有延遲的情況下觀看。產(chǎn)生圖16中所顯示的用戶接口屏幕的應(yīng)用程序/游戲服務(wù)器1521-1525通過向 每個(gè)用戶(該應(yīng)用程序/游戲服務(wù)器1521-1525正請(qǐng)求來自該用戶的游戲)的應(yīng)用程序 /游戲服務(wù)器1521-1525發(fā)送消息而獲取該15個(gè)視頻/音頻饋送。該消息經(jīng)由入埠路由 1502或另一網(wǎng)絡(luò)來發(fā)送。該消息將包括被請(qǐng)求的視頻/音頻的大小及格式,且將識(shí)別觀看 用戶接口屏幕的用戶。給定用戶可選擇選擇“盜版”模式且不準(zhǔn)許任何其他用戶觀看其游 戲的視頻/音頻(自其觀看點(diǎn)或者自另一觀看點(diǎn)),或如先前的段中所描述,用戶可選擇允 許觀看來自其游戲的視頻/音頻,但延遲所觀看的視頻/音頻。用戶應(yīng)用程序/游戲服務(wù) 器1521-1525 (其接收并接受允許其視頻/音頻被觀看的請(qǐng)求)將因此向請(qǐng)求服務(wù)器確認(rèn), 且其也將通知共用硬件壓縮1530需要產(chǎn)生被請(qǐng)求格式或屏幕大小(假定格式及屏幕大小 不同于已經(jīng)產(chǎn)生的格式及屏幕大小)的額外經(jīng)壓縮視頻流,且其也將指示經(jīng)壓縮視頻的目 的地(也即,請(qǐng)求服務(wù)器)。若被請(qǐng)求的視頻/音頻僅被延遲,則請(qǐng)求應(yīng)用程序/游戲服務(wù) 器1521-1525將被這樣通知,且其將通過查找延遲緩沖器1515上的目錄中的視頻/音頻的 位置及為延遲的視頻/音頻的來源的應(yīng)用程序/游戲服務(wù)器1521-1525的網(wǎng)絡(luò)地址而自延 遲緩沖器1515獲取延遲的視頻/音頻。一旦所有該請(qǐng)求被產(chǎn)生并處理,則將高達(dá)15個(gè)現(xiàn) 場直播的縮略圖大小的視頻流從出埠路由1540路由到入埠路由1502、到產(chǎn)生用戶接口屏 幕的應(yīng)用程序/游戲服務(wù)器1521-1525,且將由該服務(wù)器來解壓縮及顯示。延遲的視頻/音 頻流可能處于過大的屏幕大小,如果這樣,則應(yīng)用程序/游戲服務(wù)器1521-1525將解壓縮所 述流并將視頻流按比例縮減至縮略圖大小。在一個(gè)實(shí)施例中,將對(duì)音頻/視頻的請(qǐng)求發(fā)送 到與圖4a的主機(jī)服務(wù)控制系統(tǒng)類似的中央“管理”服務(wù)(圖15中未顯示)(且由中央“管 理”服務(wù)來管理),中央“管理”服務(wù)接著將所述請(qǐng)求重定向到適當(dāng)應(yīng)用程序/游戲服務(wù)器 1521-1525。此外,在一個(gè)實(shí)施例中,可能不需要請(qǐng)求,因?yàn)榭s略圖被“推送”至允許其的那 些用戶的客戶端。來自15個(gè)游戲的所有同時(shí)混合的音頻可能產(chǎn)生刺耳的聲音。用戶可選擇以此方 式將所有聲音混合在一起(可能就為得到由被觀看的所有動(dòng)作產(chǎn)生的“喧囂”的感覺),或 者用戶可選擇每次僅收聽來自一個(gè)游戲的音頻。單個(gè)游戲的選擇是通過將黃色選擇幀1601 移動(dòng)到給定游戲來完成(黃色幀移動(dòng)可通過使用鍵盤上的箭頭鍵、通過移動(dòng)鼠標(biāo)、通過移 動(dòng)操縱桿或通過推動(dòng)諸如移動(dòng)電話的另一設(shè)備上的方向按鈕來完成)。一旦選擇了單個(gè)游 戲,則只有來自該游戲的音頻播放。而且,顯示游戲信息1602。在該游戲的狀況下,例如, 出版商標(biāo)志(“EA”)及游戲標(biāo)志“極品飛車卡本峽谷”及橙色橫條在相對(duì)條件下指示在該 特定時(shí)刻玩游戲或觀看游戲的人的數(shù)目(在此狀況下,許多,因此游戲?yàn)椤盁衢T”)。另外提
46供“狀態(tài)”,指示存在145個(gè)玩家正積極地玩極品飛車游戲的80個(gè)不同具體實(shí)例(也即,該 游戲可通過個(gè)別玩家游戲或多人游戲來玩),且存在680個(gè)觀看者(此用戶是其中之一)。 注意,該統(tǒng)計(jì)數(shù)據(jù)(及其他統(tǒng)計(jì)數(shù)據(jù))由主機(jī)服務(wù)控制系統(tǒng)401來收集并儲(chǔ)存于RAID陣列 1511-1512上,以用于保持主機(jī)服務(wù)210操作的日志且用于適當(dāng)?shù)叵蛴脩粲?jì)費(fèi)并向提供內(nèi) 容的出版商支付費(fèi)用。一些統(tǒng)計(jì)數(shù)據(jù)是由于由服務(wù)控制系統(tǒng)401進(jìn)行的動(dòng)作而記錄,且一 些統(tǒng)計(jì)數(shù)據(jù)是由個(gè)別應(yīng)用程序/游戲服務(wù)器1521-1525報(bào)告給服務(wù)控制系統(tǒng)401。舉例而 言,當(dāng)游戲正被觀看時(shí)(及當(dāng)游戲被停止觀看時(shí)),執(zhí)行此游戲取景器應(yīng)用程序的應(yīng)用程序 /游戲服務(wù)器1521-1525向主機(jī)服務(wù)控制系統(tǒng)401發(fā)送消息,以使得主機(jī)服務(wù)控制系統(tǒng)401 可更新多少個(gè)游戲處于觀看中的統(tǒng)計(jì)數(shù)據(jù)。一些統(tǒng)計(jì)數(shù)據(jù)可為用戶接口應(yīng)用程序(諸如, 此游戲取景器應(yīng)用程序)所用。若用戶單擊其輸入設(shè)備上的啟動(dòng)按鈕,則其將看見黃色幀中的縮略圖視頻放大同 時(shí)縮略圖視頻保持現(xiàn)場直播為全屏幕大小。該效果顯示在圖17中的過程中。注意,視頻窗 1700的大小增大。為了實(shí)施該效果,應(yīng)用程序/游戲服務(wù)器1521-1525從運(yùn)行選定的游戲 的應(yīng)用程序/游戲服務(wù)器1521-1525請(qǐng)求具有路由到其的游戲的全屏幕大小(以用戶的顯 示設(shè)備422的分辨率)的視頻流的復(fù)本。執(zhí)行游戲的應(yīng)用程序/游戲服務(wù)器1521-1525通 知共用硬件壓縮器1530不再需要游戲的縮略圖大小的復(fù)本(除非另一應(yīng)用程序/游戲服 務(wù)器1521-1525需要這種縮略圖),且接著其指引共用硬件壓縮器1530將視頻的全屏幕大 小的復(fù)本發(fā)送至放大視頻的應(yīng)用程序/游戲服務(wù)器1521-1525。玩該游戲的用戶可或可不 具有分辨率與將游戲放大的用戶的所述顯示設(shè)備的分辨率相同的顯示設(shè)備422。另外,游 戲的其他觀看者可或可不具有分辨率與將游戲放大的用戶相同的顯示設(shè)備422(且可具有 不同的音頻回放裝置,例如,立體聲或環(huán)繞音效)。因此,共用硬件壓縮器1530確定是否已 經(jīng)產(chǎn)生滿足請(qǐng)求視頻/音頻流的用戶的要求的合適的經(jīng)壓縮視頻/音頻流,且若合適的經(jīng) 壓縮視頻/音頻流確實(shí)存在,則共用硬件壓縮器1530通知出埠路由1540將該流的復(fù)本路 由至放大該視頻的應(yīng)用程序/游戲服務(wù)器1521-1525,且若合適的經(jīng)壓縮視頻/音頻流不 存在,則壓縮視頻的適合于所述用戶的另一復(fù)本并指導(dǎo)出埠路由將該流發(fā)送回至入埠路由 1502及放大該視頻的應(yīng)用程序/游戲服務(wù)器1521-1525?,F(xiàn)在接收選定視頻的全屏幕版本 的該服務(wù)器將解壓縮該全屏幕版本并將其逐漸地按比例放大至全大小。圖18說明在將游戲完全放大至全屏幕且以用戶的顯示設(shè)備422的全分辨率顯示 游戲之后屏幕看起來如何(如通過箭頭1800指向的圖像所指示的)。執(zhí)行游戲取景器應(yīng) 用程序的應(yīng)用程序/游戲服務(wù)器1521-1525向提供縮略圖的其他應(yīng)用程序/游戲服務(wù)器 1521-1525發(fā)送消息以指示所述縮略圖不再需要且向主機(jī)服務(wù)控制服務(wù)器401發(fā)送消息以 指示不再觀看其他游戲。此時(shí),產(chǎn)生的唯一顯示為屏幕頂部的疊加層(overlay) 1801,其將 信息及菜單控制提供給用戶。注意,隨著該游戲進(jìn)展,觀眾增長至2,503個(gè)觀看者。在如此 多的觀看者的情況下,必然存在具有顯示設(shè)備422的許多觀看者,所述顯示設(shè)備422具有相 同或接近的分辨率(每個(gè)應(yīng)用程序/游戲服務(wù)器1521-1525具有按比例調(diào)整視頻以用于調(diào) 整配合度的能力)。因?yàn)樗@示的游戲?yàn)槎嗳擞螒颍杂脩艨蓻Q定在某時(shí)刻加入該游戲。由于多種 原因,主機(jī)服務(wù)210可或可不允許用戶加入該游戲。舉例而言,用戶可能必須支付玩游戲的 費(fèi)用而選擇不支付,用戶可能不具有足以加入所述特定游戲的足夠等級(jí)(例如,對(duì)于其他
47玩家而言,其將不有競爭性),或者用戶的互聯(lián)網(wǎng)連接可能不具有足以允許用戶玩的足夠低 的延時(shí)(例如,不存在用于觀看游戲的延時(shí)約束,因此可在無延時(shí)關(guān)注的情況下觀看被遠(yuǎn) 距離地(實(shí)際上,在另一大陸上)玩的游戲,但對(duì)于待玩的游戲而言,延時(shí)必須足夠低以使 用戶(a)享受該游戲,且(b)處于與可能具有較低延時(shí)連接的其他玩家相等的地位)。若 準(zhǔn)許用戶玩,則為用戶提供游戲取景器用戶接口的應(yīng)用程序/游戲服務(wù)器1521-1525將請(qǐng) 求主機(jī)服務(wù)控制服務(wù)器401初始化(也即,定位并啟動(dòng))被合適地配置以用于播放特定游 戲的應(yīng)用程序/游戲服務(wù)器1521-1525從而從RAID陣列1511-1512載入該游戲,且接著主 機(jī)服務(wù)控制服務(wù)器401將指導(dǎo)入埠路由1502將來自用戶的控制信號(hào)傳送至現(xiàn)在對(duì)游戲進(jìn) 行主機(jī)代管的應(yīng)用程序/游戲服務(wù)器且現(xiàn)在對(duì)游戲進(jìn)行主機(jī)代管的應(yīng)用程序/游戲服務(wù)器 將指導(dǎo)共用硬件壓縮1530自壓縮來從主機(jī)代管游戲取景器應(yīng)用程序的應(yīng)用程序/游戲服 務(wù)器的視頻/音頻切換至壓縮來自現(xiàn)在對(duì)游戲進(jìn)行主機(jī)代管的應(yīng)用程序/游戲服務(wù)器的視 頻/音頻。游戲取景器應(yīng)用程序/游戲服務(wù)與對(duì)游戲進(jìn)行主機(jī)代管的新的應(yīng)用程序/游戲 服務(wù)器的垂直同步并不同步,且因此在該兩個(gè)同步之間可能存在時(shí)間差。因?yàn)楣灿靡曨l壓 縮硬件1530將在應(yīng)用程序/游戲服務(wù)器1521-1525完成視頻幀之后即開始?jí)嚎s視頻,所以 來自新服務(wù)器的第一幀可比舊服務(wù)器的全幀時(shí)間完成得早,來自新服務(wù)器的第一幀可能在 先前經(jīng)壓縮的幀完成其傳輸之前(例如,考慮圖9b的傳輸時(shí)間992 若未經(jīng)壓縮的幀3 963 早一幀時(shí)間的一半地完成,則其將影響(impinge)傳輸時(shí)間992)。在這種情形下,共用視 頻壓縮硬件1530將忽略來自新服務(wù)器的第一幀(例如,如忽略(974)幀4 964),且客戶端 415將來自舊服務(wù)器的最末幀保持額外一幀時(shí)間,且共用視頻壓縮硬件1530將開始?jí)嚎s來 自對(duì)游戲進(jìn)行主機(jī)代管的新應(yīng)用程序/游戲服務(wù)器的下一幀時(shí)間視頻。對(duì)于用戶而言,在 視覺上,從一個(gè)應(yīng)用程序/游戲服務(wù)器至另一應(yīng)用程序/游戲服務(wù)器的轉(zhuǎn)變將是無縫的。 主機(jī)服務(wù)控制服務(wù)器401接著將通知對(duì)游戲取景器進(jìn)行主機(jī)代管的應(yīng)用程序/游戲服務(wù)器 1521-1525切換至閑置狀態(tài),直至再次需要其為止。用戶接著能夠玩該游戲。此外,例外的是游戲?qū)⒃诟兄霞纯痰夭シ?因?yàn)橛螒?已被以十億比特/秒速度從Raid陣列1511-1512載入到應(yīng)用程序/游戲服務(wù)器1521-1525 上),且將通過理想的驅(qū)動(dòng)器、暫存器配置(在Windows的狀況下)將游戲連同被正確配置 以用于該游戲的操作系統(tǒng)一起載入到準(zhǔn)確適合于該游戲的服務(wù)器上,且沒有可能與該游戲 的操作競爭的其他應(yīng)用程序在該服務(wù)器上執(zhí)行。而且,隨著用戶在游戲中進(jìn)展,游戲的片段中的每一者將以十億比特/秒的速度 (也即,在8秒內(nèi)載入十億字節(jié))從RAID陣列1511-1512載入服務(wù)器中,且由于RAID陣 列1511-1512的巨大儲(chǔ)存容量(因?yàn)槠錇樵S多用戶的共用資源,所以其可能非常大,但仍 具成本效益),使得可預(yù)先計(jì)算幾何形狀設(shè)置或其他游戲片段設(shè)置并將其儲(chǔ)存于RAID陣列 1511-1512上且極快速地進(jìn)行載入。此外,因?yàn)槊總€(gè)應(yīng)用程序/游戲服務(wù)器1521-1525的硬 件配置及計(jì)算能力是已知的,所以可預(yù)先計(jì)算像素及頂點(diǎn)著色。因此,游戲可幾乎即刻啟動(dòng),其將在理想環(huán)境中執(zhí)行,且隨后的片段將幾乎即刻載 入。但是,除這些優(yōu)點(diǎn)之外,用戶將能夠觀看他人玩游戲(經(jīng)由先前所描述的游戲取 景器,及其他裝置),且兩者均決定游戲是否有趣,如果這樣,則自觀看他人來學(xué)習(xí)技巧。此 外,用戶將能夠即刻地演示該游戲,而不必等待大的下載和/或安裝,且用戶將能夠即刻玩該游戲(可能在較小費(fèi)用的試用基礎(chǔ)上,或在較長期的基礎(chǔ)上)。此外,用戶將能夠通過足 夠低延時(shí)的無線連接而在Windows PC、MaCint0Sh上、在電視機(jī)上、在家里、在行進(jìn)時(shí)且甚至 在移動(dòng)電話上玩該游戲。此外,這均可在并非曾經(jīng)實(shí)體擁有游戲復(fù)本的情況下完成。如先前所敘述,用戶可決定不允許其游戲播放可被他人觀看,允許其游戲可在延 遲之后觀看,允許其游戲可被選定用戶觀看,或允許其游戲可被所有用戶觀看。不管怎樣, 在一個(gè)實(shí)施例中,將視頻/音頻儲(chǔ)存于延遲緩沖器1515中歷時(shí)15分鐘,且用戶將能夠“回 倒”并觀看其先前的游戲播放,且將游戲暫停,將游戲緩慢地回放,將游戲快進(jìn)等,正如其在 觀看具有數(shù)字視頻記錄器(DVR)的TV時(shí)所能夠進(jìn)行的。盡管在該實(shí)例中,用戶在玩游戲, 但若用戶正使用應(yīng)用程序,則相同“DVR”能力是可用的。這在核查先前工作中及在如下詳 述的其他應(yīng)用中可是有用的。另外,若游戲經(jīng)設(shè)計(jì)為具有基于利用游戲狀態(tài)信息而回倒的 能力,以便可改變相機(jī)視圖等,則也將支持此“3D DVR”能力,但其將需要將游戲設(shè)計(jì)為支持 “3D DVR”能力。使用延遲緩沖器1515的“DVR”能力將連同任何游戲或應(yīng)用程序(當(dāng)然,限 于在使用游戲或應(yīng)用程序時(shí)所產(chǎn)生的視頻)一起起作用,但在具有3D DVR能力的游戲的狀 況下,用戶可控制先前所播放的片段的3D “飛越(fly-through) ”,且使延遲緩沖器1515記 錄所得視頻并記錄游戲片段的游戲狀態(tài)。因此,將特定“飛越”記錄為經(jīng)壓縮的視頻,但因 為也將記錄游戲狀態(tài),所以不同的飛越將可能在游戲的同一片段的稍后日期。如下所述,主機(jī)服務(wù)210上的用戶將各自具有一個(gè)用戶頁面,在該用戶頁面中,用 戶可公布關(guān)于其本身的信息及其他數(shù)據(jù)。用戶將能夠公布的事情之一為來自其已保存的游 戲播放的視頻片段。舉例而言,若用戶已克服游戲中的特別困難的挑戰(zhàn),則用戶可剛好“回 倒”到其在游戲中獲得其大成果的地點(diǎn)之前,且接著指導(dǎo)主機(jī)服務(wù)210將某一持續(xù)時(shí)間(例 如,30秒)的視頻片段保存在用戶的用戶頁面上以供其他用戶觀看。為了實(shí)施這些,用戶正 使用的應(yīng)用程序/游戲服務(wù)器1521-1525僅要做的事情是將儲(chǔ)存于延遲緩沖器1515中的 視頻回放至RAID陣列1511-1512且接著在用戶的用戶頁面上給所述視頻片段編索引。若游戲具有3D DVR的能力,如上所述,則也可由用戶來記錄3D DVR所需的游戲狀 態(tài)信息且使其為用戶的用戶頁面可用。在游戲經(jīng)設(shè)計(jì)為除具有活躍玩家外還具有“旁觀者”(也即,能夠在不參與的情況 下在3D世界行進(jìn)并觀察到動(dòng)作的用戶)的情況下,則游戲取景器應(yīng)用程序?qū)⑹褂脩裟軌蜃?為旁觀者以及玩家加入游戲。從觀看的實(shí)施點(diǎn)看,對(duì)于主機(jī)系統(tǒng)210而言,用戶是旁觀者而 不是活躍玩家是不存在差異的。將游戲載入應(yīng)用程序/游戲服務(wù)器1521-1525上且用戶將 控制該游戲(例如,控制觀看世界的虛擬相機(jī))。唯一的差異是用戶的游戲體驗(yàn)。多個(gè)用戶合作主機(jī)服務(wù)210的另一特征是多個(gè)用戶在觀看現(xiàn)場直播的視頻的同時(shí)合作的能力 (即使使用迥然不同的設(shè)備來觀看也如此)。當(dāng)玩游戲時(shí)及當(dāng)使用應(yīng)用程序時(shí),這都有用。許多PC及移動(dòng)電話裝備有視頻相機(jī)且具有進(jìn)行實(shí)時(shí)視頻壓縮的能力(尤其當(dāng)圖 像小時(shí))。而且,小相機(jī)是可用的,可附接到電視,且以軟件或使用用于壓縮視頻的許多硬件 壓縮設(shè)備中的一者來實(shí)施實(shí)時(shí)壓縮并不困難。而且,許多PC及所有移動(dòng)電話具有麥克風(fēng), 且耳機(jī)在具有麥克風(fēng)情況下可用。組合有本地視頻/音頻壓縮能力(具體來說,使用本文中所描述的低延時(shí)視頻壓 縮技術(shù))的所述相機(jī)和/或麥克風(fēng)將使用戶能夠?qū)⒁曨l和/或音頻連同輸入設(shè)備控制數(shù)據(jù)
49一起從用戶場所211傳輸?shù)街鳈C(jī)服務(wù)210。當(dāng)使用所述技術(shù)時(shí),則可實(shí)現(xiàn)圖19中所說明的 能力用戶可使其視頻及音頻1900出現(xiàn)在另一用戶的游戲或應(yīng)用程序內(nèi)的屏幕上。該實(shí)例 為多人游戲,其中隊(duì)友在賽車中合作。用戶的視頻/音頻僅可被其隊(duì)友選擇性地觀看/聽 到。此外,因?yàn)槭褂蒙衔乃枋龅募夹g(shù)將有效地不存在延時(shí),所以玩家將能夠?qū)崟r(shí)地彼此談 話或進(jìn)行運(yùn)動(dòng)而沒有可感知的延遲。該視頻/音頻整合是通過使來自用戶的相機(jī)/麥克風(fēng)的經(jīng)壓縮視頻和/或音頻作 為入埠互聯(lián)網(wǎng)通信1501到達(dá)而完成。接著,入埠路由1502將該視頻和/或音頻路由到被 準(zhǔn)許觀看/聽到視頻和/或音頻的應(yīng)用程序/游戲服務(wù)器1521-1525。接著,選擇使用視頻 和/或音頻的各別應(yīng)用程序/游戲服務(wù)器1521-1525的用戶解壓縮視頻和/或音頻且視需 要而將其整合以出現(xiàn)于游戲或應(yīng)用程序內(nèi),諸如通過1900所說明的。圖19的實(shí)例顯示如何在游戲中使用該合作,但該合作可為用于應(yīng)用程序的極其 強(qiáng)大的工具??紤]一各情形其中一大建筑物正由在芝加哥的建筑師為以紐約為基地的房 地產(chǎn)開發(fā)商為紐約市設(shè)計(jì),但該決策涉及在旅游中且碰巧在邁阿密機(jī)場的財(cái)務(wù)投資者,且 需要進(jìn)行關(guān)于建筑物的特定設(shè)計(jì)要素(在其如何搭配其附近的建筑物方面)的決策,以滿 足投資者與房地產(chǎn)開發(fā)商兩者。假定建筑公司在芝加哥具有具有附接到PC的相機(jī)的高分 辨率監(jiān)視器,房地產(chǎn)開發(fā)商在紐約具有帶相機(jī)的筆記本計(jì)算機(jī),且投資者在邁阿密具有帶 相機(jī)的移動(dòng)電話。建筑公司可使用主機(jī)服務(wù)210來對(duì)能夠進(jìn)行高度逼真3D再現(xiàn)的強(qiáng)大的 建筑設(shè)計(jì)應(yīng)用程序進(jìn)行主機(jī)代管,且其可利用紐約市的建筑物的大數(shù)據(jù)庫,以及正設(shè)計(jì)的 建筑物的數(shù)據(jù)庫。建筑設(shè)計(jì)應(yīng)用程序?qū)⒃趹?yīng)用程序/游戲服務(wù)器1521-1525中的一者上 (或若其需要大量計(jì)算能力,則在若干者上)執(zhí)行。處于全異(disparate)位置處的3個(gè)用 戶中的每一者將連接至主機(jī)服務(wù)210,且每一者將具有對(duì)建筑設(shè)計(jì)應(yīng)用程序的視頻輸出的 同時(shí)觀看,但其將被針對(duì)每個(gè)用戶具有的給定設(shè)備及網(wǎng)絡(luò)連接特性而由共用硬件壓縮1530 適當(dāng)?shù)卦O(shè)定大小(例如,建筑公司可經(jīng)由20Mbps商用互聯(lián)網(wǎng)連接看見2560X1440 60fps 顯示,紐約的房地產(chǎn)開發(fā)商可經(jīng)由其筆記本計(jì)算機(jī)上的6Mbps DSL連接看見1280X720 60fps圖像,且投資者可經(jīng)由其移動(dòng)電話上的250Kbps蜂窩式數(shù)據(jù)連接看見320X180 60fps圖像)。每一方將聽到其他方的語音(將通過應(yīng)用程序/游戲服務(wù)器1521-1525中 的許多廣泛可用的會(huì)議呼叫套裝軟件中的任一者來處理會(huì)議呼叫),且經(jīng)由用戶輸入設(shè)備 上的按鈕的致動(dòng),用戶將能夠使用其本地相機(jī)使視頻出現(xiàn)。隨著會(huì)議進(jìn)行,建筑師將能夠通 過極具照片般逼真感的3D再現(xiàn)顯示當(dāng)其使建筑物旋轉(zhuǎn)且使其鄰接該區(qū)域中的另一建筑物 飛越(fly-by)時(shí)建筑物看起來像什么,且所有方均將在各方的顯示設(shè)備的分辨率下可見 到相同視頻。由任何方使用的本地設(shè)備中的任一者均能夠以該真實(shí)感處理3D動(dòng)畫不是問 題,更不用說下載或甚至儲(chǔ)存再現(xiàn)紐約市的周圍建筑物所需的巨大數(shù)據(jù)庫。自用戶中的每 一者的觀點(diǎn)看,盡管距離很遠(yuǎn),且盡管是全異本地設(shè)備,但其將簡單地在難以置信的真實(shí)感 程度下具有無縫體驗(yàn)。此外,當(dāng)一方希望其面部被看來較佳地傳達(dá)其情緒狀態(tài)時(shí),其可如此 進(jìn)行。另外,若房地產(chǎn)開發(fā)商或投資者希望控制建筑程序且使用其自身的輸入設(shè)備(其為 鍵盤、鼠標(biāo)、小鍵盤或觸摸屏幕),則其可如此,且其可以用無感知的延時(shí)來響應(yīng)(假定其網(wǎng) 絡(luò)連接不具有不合理的延時(shí))。舉例而言,在移動(dòng)電話的狀況下,若移動(dòng)電話連接至機(jī)場的 WiFi網(wǎng)絡(luò),則其將具有非常低的延時(shí)。但若其使用美國現(xiàn)今可用的蜂窩式數(shù)據(jù)網(wǎng)絡(luò),則其很 可能將遭受引人注意的滯后。但是,對(duì)于會(huì)議的大多數(shù)目的(其中投資者正觀看建筑師控制建筑物飛越或正談?wù)撘曨l電話會(huì)議),甚至蜂窩式延時(shí)也應(yīng)是可接受的。最后,在合作性會(huì)議呼叫結(jié)束時(shí),房地產(chǎn)開發(fā)商及投資者將進(jìn)行其評(píng)論且從主機(jī) 服務(wù)停播,建筑公司將能夠“回倒”已記錄在延遲緩沖器1515上的會(huì)議的視頻且核查在會(huì) 議期間進(jìn)行的應(yīng)用于建筑物的3D模型的評(píng)論、面部表情和/或動(dòng)作。若存在其希望保存的 特定片段,則可將視頻/音頻的所述片段自延遲緩沖器1515移動(dòng)至RAID陣列1511-1512 以用于檔案儲(chǔ)存及稍后回放。而且,從成本觀點(diǎn)看,若建筑師僅需要使用紐約市的計(jì)算能力及大數(shù)據(jù)庫歷時(shí)15 分鐘的會(huì)議呼叫,則其僅需要支付所述資源被使用的時(shí)間的費(fèi)用,而不必?fù)碛懈吣芰Φ墓?作臺(tái)且不必購買大數(shù)據(jù)庫的昂貴復(fù)本。視頻豐富的社區(qū)服務(wù)主機(jī)服務(wù)210使得有空前機(jī)會(huì)來在互聯(lián)網(wǎng)上建立視頻豐富的社區(qū)服務(wù)。圖20顯 示用于主機(jī)服務(wù)210上的游戲玩家的例示性用戶頁面。如同游戲取景器應(yīng)用程序一樣,用 戶頁面為在應(yīng)用程序/游戲服務(wù)器1521-1525中的一者上執(zhí)行的應(yīng)用程序。該頁面上的所 有縮略圖及視頻窗顯示恒定地移動(dòng)的視頻(若片段短,則其循環(huán))。使用視頻相機(jī)或通過上傳視頻,用戶(其用戶名為“KILLHAZARD”)能夠公布其本 身的視頻2000 (其他用戶可觀看該視頻)。該視頻儲(chǔ)存于RAID陣列1511-1512上。而且, 當(dāng)其他用戶來到KILLHAZARD的用戶頁面時(shí),若KILLHAZARD此時(shí)正使用主機(jī)服務(wù)210,則將 顯示其正進(jìn)行的無論什么的現(xiàn)場直播的視頻2001 (假定KILLHAZARD準(zhǔn)許觀看其用戶頁面 的用戶觀看該視頻)。這將由對(duì)用戶頁面應(yīng)用程序進(jìn)行主機(jī)代管的應(yīng)用程序/游戲服務(wù)器 1521-1525從服務(wù)控制系統(tǒng)401請(qǐng)求KILLHAZARD是否為活躍的(且若如此,則請(qǐng)求其正使 用的應(yīng)用程序/游戲服務(wù)器1521-1525)來完成。接著,使用由游戲取景器應(yīng)用程序使用的 相同方法,將合適分辨率及格式的經(jīng)壓縮的視頻流發(fā)送至執(zhí)行用戶頁面應(yīng)用程序的應(yīng)用程 序/游戲服務(wù)器1521-1525且將其顯示。若用戶選擇具有KILLHAZARD的現(xiàn)場直播的游戲 播放的窗口且接著適當(dāng)?shù)貑螕羝漭斎朐O(shè)備,則該窗口將放大(再次使用與游戲取景器應(yīng)用 程序相同的方法),且現(xiàn)場直播的視頻將以觀看用戶的顯示設(shè)備422的分辨率(適合于觀看 用戶的互聯(lián)網(wǎng)連接的特性)填充屏幕。這優(yōu)于先前技術(shù)方法的關(guān)鍵優(yōu)點(diǎn)是觀看用戶頁面的用戶能夠看見用戶不擁有的 現(xiàn)場直播地播放的游戲,且可不具有能夠玩該游戲的本地計(jì)算機(jī)或游戲控制臺(tái)。其為用戶 提供看用戶頁面中顯示為“活動(dòng)中”的用戶玩游戲的極好機(jī)會(huì),且這是了解觀看用戶可能希 望嘗試或較擅長的游戲的機(jī)會(huì)。來自KILLHAZARD的搭檔2002的相機(jī)記錄的或上傳的視頻剪輯也顯示于用戶頁面 上,且每個(gè)視頻剪輯的下方為指示該搭檔是否在線玩游戲的文字(例如,siX_sh0t正玩游 戲“龍騎士(Eragon) ”且MrSnUggleS99離線等)。通過單擊菜單項(xiàng)(未圖示),搭檔視頻 剪輯自顯示已記錄的或上傳的視頻切換至當(dāng)前正玩主機(jī)服務(wù)210上的游戲的搭檔在所述 時(shí)刻在其游戲中正在進(jìn)行的內(nèi)容的現(xiàn)場直播的視頻。因此,其變成為搭檔分群的游戲取景 器。若選擇搭檔的游戲且用戶單擊該游戲,則該游戲?qū)⒎糯笾寥聊唬矣脩魧⒛軌蛴^看全 屏幕現(xiàn)場直播地播放的游戲。再次,觀看搭檔的游戲的用戶不擁有游戲的復(fù)本,也不擁有用于玩該游戲的本地 計(jì)算/游戲控制臺(tái)資源。游戲觀看是有效瞬時(shí)的。
51
如上文先前所描述,當(dāng)用戶玩主機(jī)服務(wù)210上的游戲時(shí),用戶能夠“回倒”游戲且 發(fā)現(xiàn)其希望保存的視頻片段,且接著將該視頻片段保存到其用戶頁面。這被稱為“自賞剪 輯(Brag Clip)”。視頻片段2003都是由KILLHAZARD從其所玩的先前游戲保存的自賞剪 輯2003。數(shù)字2004顯示自賞剪輯已被觀看多少次,及自賞剪輯何時(shí)被觀看,用戶具有對(duì)其 評(píng)定等級(jí)的機(jī)會(huì),且橙色鑰匙孔形狀的圖示2005的數(shù)目指示等級(jí)是多高。當(dāng)用戶觀看用戶 頁面時(shí),自賞剪輯2003連同頁面上的其余視頻一起恒定地循環(huán)。若用戶選擇并單擊自賞剪 輯2003中的一者,則其放大以呈現(xiàn)自賞剪輯2003,以及允許播放、暫停、回倒、快進(jìn)、步進(jìn)等 該剪輯的DVR控制。自賞剪輯2003回放是通過應(yīng)用程序/游戲服務(wù)器1521-1525載入用戶記錄自賞 剪輯時(shí)儲(chǔ)存于RAID陣列1511-1512上的經(jīng)壓縮視頻片段且將其解壓縮并將其回放來實(shí)施。自賞剪輯2003也可為來自支持3D DVR能力的游戲的“3D DVR”視頻片段(也即, 來自可被重放且允許用戶改變相機(jī)觀看點(diǎn)的游戲的游戲狀態(tài)序列)。在此狀況下,除用戶 在記錄游戲片段時(shí)進(jìn)行的特定“飛越”的經(jīng)壓縮視頻記錄之外,也儲(chǔ)存游戲狀態(tài)信息。當(dāng)用 戶頁面正被觀看且所有縮略圖及視頻窗均恒定地循環(huán)時(shí),3D DVR自賞剪輯2003將使在用 戶記錄游戲片段的“飛越”時(shí)記錄為經(jīng)壓縮視頻的自賞剪輯2003恒定地循環(huán)。但是,當(dāng)用 戶選擇3D DVR自賞剪輯2003并單擊3D DVR自賞剪輯2003時(shí),除允許播放經(jīng)壓縮視頻自 賞剪輯的DVR控制之外,用戶將能夠單擊給出其用于游戲片段的3D DVR能力的按鈕。其將 能夠獨(dú)立地控制游戲片段期間的相機(jī)“飛越”,且若其希望(且擁有用戶頁面的用戶允許如 此),則其將能夠以經(jīng)壓縮的視頻的形式記錄替代性自賞剪輯“飛越”,替代性自賞剪輯“飛 越”將接著可為用戶頁面的其他觀看者所用(立即地,或者在用戶頁面的擁有者具有核查自 賞剪輯的機(jī)會(huì)之后)。該3D DVR自賞剪輯2003能力是通過啟動(dòng)將要在另一應(yīng)用程序/游戲服務(wù)器 1521-1525上重放已記錄的游戲狀態(tài)信息的游戲來啟用。因?yàn)橛螒蚩杀粠缀跛矔r(shí)地啟動(dòng) (如先前所描述),所以啟動(dòng)其(其播放限于由自賞剪輯片段記錄的游戲狀態(tài))且接著允許 用戶在將經(jīng)壓縮視頻記錄到延遲緩沖器1515的同時(shí)用相機(jī)進(jìn)行“飛越”并不困難。一旦用 戶完成進(jìn)行“飛越”,則將游戲撤銷啟動(dòng)。從用戶的觀點(diǎn)看,啟動(dòng)具有3D DVR自賞剪輯2003的“飛越”并不比控制線性自賞 剪輯2003的DVR控制難。用戶可不知道該游戲或甚至不知道如何玩該游戲。用戶指示盯 著看另一操作者記錄的游戲片段期間的3D世界的虛擬相機(jī)操作者。用戶將也能夠?qū)⑵渥陨淼囊纛l加錄于自賞剪輯上(或者自麥克風(fēng)記錄或者上 傳)。以這種方式,可使用自賞剪輯來使用來自游戲的人物及動(dòng)作產(chǎn)生定制動(dòng)畫。此動(dòng)畫制 作技術(shù)通常被稱為“游戲電影(machinima) ”。隨著用戶在游戲中進(jìn)展,其將達(dá)成不同技能級(jí)別。所播放的游戲?qū)⒊晒麍?bào)告給服 務(wù)控制系統(tǒng)401,且所述技能級(jí)別也將顯示于用戶頁面上。互動(dòng)式動(dòng)畫廣告在線廣告已自文字轉(zhuǎn)變至靜態(tài)圖像、視頻,且現(xiàn)在轉(zhuǎn)變至互動(dòng)式片段,通常使用如 Adobe Flash的動(dòng)畫精簡型客戶端來實(shí)施。使用動(dòng)畫精簡型客戶端的原因在于用戶通常 對(duì)于因向其推銷產(chǎn)品或服務(wù)的特權(quán)而被延遲較無耐心。而且,精簡型客戶端在非常低性能 的PC上執(zhí)行,且因此廣告商可具有高度信心互動(dòng)式廣告將適當(dāng)?shù)毓ぷ?。很遺憾地,諸如
52Adobe Flash的動(dòng)畫精簡型客戶端在互動(dòng)性的程度及體驗(yàn)(以減少下載時(shí)間)的持續(xù)時(shí)間 上受限制。圖21說明一個(gè)互動(dòng)式廣告,其中用戶將在汽車在陳列室中旋轉(zhuǎn)時(shí)選擇汽車的外 部及內(nèi)部色彩,同時(shí)實(shí)時(shí)射線追蹤顯示汽車看起來如何。接著用戶選擇角色來駕駛汽車,且 接著用戶可采用該汽車來用于在競賽軌道上或者穿過諸如摩納哥的外國場所駕駛。用戶 可選擇較大引擎或較佳輪胎,且接著可看見改變的配置如何影響汽車加速或保持穩(wěn)定的能 力。當(dāng)然,廣告有效地的為尖端的3D視頻游戲。但對(duì)于可在PC或視頻游戲控制臺(tái)上播 放的這種廣告,其將需要可能100MB下載,且在PC的狀況下,其可能需要安裝特殊驅(qū)動(dòng)器, 且可能在PC缺乏足夠CPU或GPU計(jì)算能力時(shí)根本不執(zhí)行。因此,所述廣告在先前技術(shù)配置 中不切實(shí)際。在主機(jī)服務(wù)210中,所述廣告幾乎即刻地投放,且較佳地執(zhí)行,無論用戶的客戶端 415能力如何。因此,其比精簡型客戶端互動(dòng)式廣告更迅速地投放,體驗(yàn)上更加豐富,且高度可靠。實(shí)時(shí)動(dòng)畫期間流動(dòng)的幾何形狀RAID陣列1511-1512及入埠路由1502可提供如此快的數(shù)據(jù)速率且具有如此低的 延時(shí),以致有可能設(shè)計(jì)依賴于RAID陣列1511-1512及入埠路由1502來在實(shí)時(shí)動(dòng)畫(例如, 具有復(fù)雜數(shù)據(jù)庫的飛越)期間于游戲播放的中間或應(yīng)用程序中可靠地直接傳送幾何形狀 的視頻游戲及應(yīng)用程序。在先前技術(shù)的系統(tǒng)(諸如,圖1中所顯示的視頻游戲系統(tǒng))下,可用的大量儲(chǔ)存設(shè) 備(尤其是在實(shí)用的家庭設(shè)備中)極緩慢以致不能在游戲播放期間流動(dòng)幾何形狀(除了所 需的幾何形狀稍微可預(yù)測的情形之外)。舉例而言,在存在指定道路的駕駛游戲中,可合理 地適當(dāng)預(yù)測用于進(jìn)入視野內(nèi)的建筑物的幾何形狀且大量儲(chǔ)存設(shè)備可提前搜尋即將到來的 幾何形狀所定位的位置。但在具有不可預(yù)測的改變的復(fù)雜場景中(例如,在周圍具有復(fù)雜人物的戰(zhàn)役場景 中),若PC或視頻游戲系統(tǒng)上的RAM完全被填滿用于當(dāng)前在視圖中的對(duì)象的幾何形狀,且接 著用戶突然將其人物轉(zhuǎn)向以觀看其人物之后是什么,若未將幾何形狀預(yù)先載入RAM中,則 可能在可顯示幾何形狀之前存在延遲。在主機(jī)服務(wù)210中,RAID陣列1511-1512可以超過超高速以太網(wǎng)速度的速度使數(shù) 據(jù)流動(dòng),且在SAN網(wǎng)絡(luò)下,有可能達(dá)到優(yōu)于10個(gè)十億比特以太網(wǎng)或優(yōu)于其他網(wǎng)絡(luò)技術(shù)的100 億比特/秒的速度。100億比特/秒將在小于一秒內(nèi)載入十億字節(jié)的數(shù)據(jù)。在60fps幀時(shí) 間(16. 67毫秒)內(nèi),可載入約170百萬比特(21MB)的數(shù)據(jù)。當(dāng)然,甚至在RAID配置中,旋 轉(zhuǎn)媒體也仍將導(dǎo)致大于一幀時(shí)間的延時(shí),但以閃存為基礎(chǔ)的RAID儲(chǔ)存器最終將與旋轉(zhuǎn)媒 體RAID陣列一般大且將不會(huì)招致該高延時(shí)。在一各實(shí)施例中,使用經(jīng)由大量RAM寫入的高 速緩存來提供非常低延時(shí)的存取。因此,在足夠高的網(wǎng)絡(luò)速度,以及足夠低延時(shí)的大量儲(chǔ)存器下,可與CPU和/或GPU 可處理3D數(shù)據(jù)一般快地將幾何形狀流動(dòng)到應(yīng)用程序/游戲服務(wù)器1521-1525中。因此,在 先前所給出的實(shí)例中,其中用戶突然將其人物轉(zhuǎn)向且向后看,可在人物完成旋轉(zhuǎn)之前載入 其身后的所有人物的幾何形狀,且因此,對(duì)于用戶而言,將看來似乎其處于與現(xiàn)場直播的動(dòng)
53作一般真實(shí)的照片般逼真的世界中。如先前所論述,照片般逼真的計(jì)算機(jī)動(dòng)畫中的最后的邊界中的一者是人臉,且由 于人眼對(duì)于不完全性的敏感性,來自照片般逼真的面部的最輕微錯(cuò)誤可導(dǎo)致來自觀看者的 負(fù)面反應(yīng)。圖22顯示使用Contour 真實(shí)性捕獲技術(shù)(以下共同待審申請(qǐng)中的申請(qǐng)的主 題2004 年 9 月 15 日申請(qǐng)的第 10/942,609 號(hào) “Apparatus and method for capturing the motion of a performer,,;2004 年 9 月 15 日申請(qǐng)的第 10/942,413 號(hào)"Apparatus and method for capturing theexpression of a performer,,;2005 年 2 月 25 日申請(qǐng)的第 11/066,954號(hào)“Apparatusand method for improving marker identification within a motion capturesystem,,;2005年 3 月 10 日申請(qǐng)的第 11/077,628 號(hào)"Apparatus and method forperforming motion capture using shutter synchronization,,;2005 年 10 月 20 El 串 i青白勺第 11/255, 854 ^ "Apparatus and method for performing motion captureusing a random pattern on capture surfaces,,;2006 年 6 月 7 日申請(qǐng)的第 11/449,131 號(hào)“System and method for performing motion capture usingphosphor application techniques"; 2006 ^ 6 7 H ^itWH 11/449, 043 "System and method for performing motion capture by strobing a f luorescentlamp" ;2006 年6 月 7 日申請(qǐng)的第 11/449,127 號(hào)"System and method for threedimensional capture of stop-motion animated characters”,上述申請(qǐng)中的每一者都被轉(zhuǎn)讓給本CIP申請(qǐng)的受讓人)捕獲的現(xiàn)場直播的表 演如何導(dǎo)致非常平滑的捕獲表面,既而達(dá)成高多邊形計(jì)數(shù)的追蹤表面(也即,多邊形運(yùn)動(dòng) 精確地追隨面部的運(yùn)動(dòng))。最后,當(dāng)將現(xiàn)場直播的表演的視頻映射于追蹤表面上以產(chǎn)生紋理 表面時(shí),產(chǎn)生照片般逼真的結(jié)果。盡管當(dāng)前GPU技術(shù)能夠再現(xiàn)追蹤表面及紋理中的許多多邊形且實(shí)時(shí)地照明該表 面,但若多邊形及紋理每一幀時(shí)間改變(其將產(chǎn)生最具照片般逼真感的結(jié)果),則其將迅速 地消耗現(xiàn)代PC或視頻游戲控制臺(tái)的所有可用RAM。使用上文所描述的流動(dòng)幾何形狀技術(shù),將幾何形狀不斷地饋送至應(yīng)用程序/游戲 服務(wù)器1521-1525中以使得其可不斷地動(dòng)畫制作照片般逼真的面部從而允許產(chǎn)生具有幾 乎不能區(qū)別于現(xiàn)場直播的動(dòng)作面部的面部的視頻游戲變得實(shí)際。線性內(nèi)容與互動(dòng)式特征的整合電影、電視節(jié)目及音頻材料(統(tǒng)稱“線性內(nèi)容”)廣泛地以許多形式可用于家庭及 辦公室用戶。線性內(nèi)容可在如⑶、DVD、HD-DVD及藍(lán)光媒體的實(shí)體媒體上獲取。其也可通過 來自衛(wèi)星及電纜TV廣播的DVR來記錄。此外,其可以經(jīng)由衛(wèi)星及電纜TV的即付即看(PPV) 內(nèi)容及以電纜TV上的視頻點(diǎn)播(VOD)可用。日益增加的線性內(nèi)容可經(jīng)由互聯(lián)網(wǎng)以下載的內(nèi)容及流動(dòng)內(nèi)容可用?,F(xiàn)今,確實(shí)不 存在一個(gè)能體驗(yàn)與線性媒體相關(guān)的所有特征的位置。舉例而言,DVD及其他視頻光學(xué)媒體 通常具有在其他位置處不可用的互動(dòng)式特征(如導(dǎo)演的評(píng)論、“花絮”短片等)。在線音樂 站點(diǎn)具有通常在CD上不可用的封面藝術(shù)及歌曲信息,但并非所有CD在線可用。且與電視 節(jié)目相關(guān)聯(lián)的網(wǎng)站常常具有額外特征、博客及有時(shí)來自演員或創(chuàng)作人員的評(píng)論。另外,在許多電影或運(yùn)動(dòng)事件的情況下,通常有經(jīng)常連同線性媒體一起發(fā)行(在 電影的狀況下)或(在運(yùn)動(dòng)的狀況下)可以被緊密地聯(lián)系到真實(shí)世界事件(例如,玩家的 交易)的視頻游戲。
54
主機(jī)服務(wù)210非常適合于在將全異形式的相關(guān)內(nèi)容連結(jié)在一起時(shí)傳送線性內(nèi)容。 的確,傳送電影不如傳送高度互動(dòng)式視頻游戲有挑戰(zhàn),且主機(jī)服務(wù)210能夠?qū)⒕€性內(nèi)容傳 送至家庭或辦公室中的多種設(shè)備,或傳送至移動(dòng)設(shè)備。圖23顯示用于主機(jī)服務(wù)210的例示 性用戶接口頁面,其顯示線性內(nèi)容的選擇。但是,不同于大多數(shù)線性內(nèi)容傳送系統(tǒng),主機(jī)服務(wù)210還能夠傳送相關(guān)的互動(dòng)式 成份(例如,DVD上的菜單及特征、HD-DVD上的互動(dòng)式疊加層,及網(wǎng)站上的Adobe Flash動(dòng) 畫(如下文所述))。因此,客戶端設(shè)備415限制不再引入哪些特征可用的限制。另外,主機(jī)代管系統(tǒng)210能夠動(dòng)態(tài)且實(shí)時(shí)地將線性內(nèi)容與視頻游戲內(nèi)容連結(jié)在一 起。舉例而言,若用戶正觀看哈利波特電影中的Quidditch(魁地奇)比賽,且決定其愿意 嘗試玩Quidditch,則其可僅僅單擊按鈕且電影將暫停且其將被立即輸送到哈利波特視頻 游戲的Quidditch片段。在玩Quidditch比賽的后,另一次單擊按鈕,且電影將即刻重新開 始。在照片般逼真的圖形及制作技術(shù)的情況下,其中攝影捕獲的視頻不能區(qū)別于現(xiàn)場 直播的動(dòng)作人物,當(dāng)用戶進(jìn)行自現(xiàn)場直播的動(dòng)作電影中的Quidditch游戲至主機(jī)服務(wù)上的 視頻游戲中的Quidditch游戲的轉(zhuǎn)變時(shí)(如本文中所述),該兩個(gè)場景實(shí)際上不能區(qū)別。此 為線性內(nèi)容與互動(dòng)式(例如,視頻游戲)內(nèi)容兩者的導(dǎo)演提供全新的創(chuàng)作選項(xiàng),因?yàn)樵搩蓚€(gè) 世界之間的線變得不能區(qū)別。利用圖14中所顯示的主機(jī)服務(wù)架構(gòu),可將3D電影中的虛擬相機(jī)的控制提供給觀 看者。舉例而言,在發(fā)生于列車內(nèi)的場景中,將有可能允許觀看者在故事進(jìn)展時(shí)控制虛擬相 機(jī)且環(huán)顧列車。此假定列車中的所有3D對(duì)象(“資產(chǎn)”)以及能夠?qū)崟r(shí)地再現(xiàn)所述場景以 及原始電影的足夠計(jì)算能力水平可用。且甚至對(duì)于非計(jì)算機(jī)產(chǎn)生的娛樂,存在可提供的非常刺激的互動(dòng)式特征。舉例而 言,2005電影“傲慢與偏見”具有裝飾華麗的舊英國大廈中的許多場景。對(duì)于特定大廈場景, 用戶可將視頻暫停且接著控制相機(jī)以巡視大廈,或可能的周圍區(qū)域。為了實(shí)施這些,可攜 帶具有魚眼鏡頭的相機(jī)穿過大廈,當(dāng)其追蹤其位置時(shí),非常類似于實(shí)施先前技術(shù)Apple (蘋 果)公司的QuickTimeVR。各種幀接著將被轉(zhuǎn)換,因此圖像不失真,且接著其連同電影一起 被儲(chǔ)存于RAID陣列1511-1512上,且在用戶選擇繼續(xù)虛擬巡視時(shí)被回放。在運(yùn)動(dòng)事件的情況下,可經(jīng)由主機(jī)服務(wù)210來使現(xiàn)場直播的運(yùn)動(dòng)事件(諸如,籃球 比賽)流動(dòng)以供用戶觀看(如同其對(duì)于常見TV所想要的那樣)。在用戶觀看特定播放之 后,游戲的視頻游戲(最終籃球玩家看起來與真實(shí)玩家一般照片般逼真)可趕上在同一位 置中開始的玩家,且用戶(可能各自控制一玩家)可重新玩以觀看其是否可比所述玩家做 得更佳。本文中所描述的主機(jī)服務(wù)210極其適合于支持此未來世界,因?yàn)槠淠軌虺惺懿磺?實(shí)際以致不能安裝于家庭中或大多數(shù)辦公室背景中的計(jì)算能力及大容量儲(chǔ)存資源,而且其 計(jì)算資源總是最新的(在可用的最新的計(jì)算硬件的情況下),但是在家庭背景中,將總是存 在具有較舊代的PC及視頻游戲的家庭。此外,在主機(jī)服務(wù)210中,用戶被隱瞞所有此計(jì)算 復(fù)雜度,因此,即使用戶可能正使用非常尖端的系統(tǒng),自用戶的觀點(diǎn)看,也如改變電視上的 信道一般簡單。另外,用戶將能夠存取所有計(jì)算能力及計(jì)算能力將自任何客戶端415帶來 的體驗(yàn)。
55
多人游戲?qū)τ谟螒驗(yàn)槎嗳擞螒虻某潭龋瑒t游戲?qū)⒛軌虿粌H經(jīng)由入埠路由1502網(wǎng)絡(luò)傳達(dá)到 應(yīng)用程序/游戲服務(wù)器1521-1525,而且通過網(wǎng)絡(luò)橋接器傳達(dá)至具有不在主機(jī)服務(wù)210中 執(zhí)行的服務(wù)器或游戲機(jī)器的互聯(lián)網(wǎng)(未圖示)。當(dāng)通過通用互聯(lián)網(wǎng)上的計(jì)算機(jī)玩多人游戲 時(shí),則應(yīng)用程序/游戲服務(wù)器1521-1525將具有極快訪問互聯(lián)網(wǎng)的益處(與游戲在家庭中 的服務(wù)器上執(zhí)行的情況相比),但其將受在較緩慢連接上玩游戲的其他計(jì)算機(jī)的能力限制, 且也潛在地受互聯(lián)網(wǎng)上的游戲服務(wù)器被設(shè)計(jì)以適應(yīng)最少共同點(diǎn)(common denominator)(所 述游戲服務(wù)器是相對(duì)較慢的消費(fèi)者互聯(lián)網(wǎng)連接上的家庭計(jì)算機(jī))的事實(shí)限制。但當(dāng)完全在主機(jī)服務(wù)210服務(wù)器中心內(nèi)玩多人游戲時(shí),則可達(dá)到極大差異。對(duì)用 于用戶的游戲進(jìn)行主機(jī)代管的每個(gè)應(yīng)用程序/游戲服務(wù)器1521-1525將與其他應(yīng)用程序/ 游戲服務(wù)器1521-1525以及用極高速度、極低延時(shí)連接性及巨大、非常快的儲(chǔ)存陣列對(duì)針 對(duì)多人游戲的中央控制進(jìn)行主機(jī)代管的任何服務(wù)器互連。舉例而言,若超高速以太網(wǎng)用于 入埠路由1502網(wǎng)絡(luò),則應(yīng)用程序/游戲服務(wù)器1521-1525將在彼此當(dāng)中傳達(dá),且傳達(dá)到以 十億比特/秒速度在潛在的僅1毫秒或1毫秒以下的延時(shí)下對(duì)針對(duì)多人游戲的中央控制進(jìn) 行主機(jī)代管的任何服務(wù)器。另外,RAID陣列1511-1512將能夠非??焖俚仨憫?yīng)且接著以十 億比特/秒速度傳送數(shù)據(jù)。作為一個(gè)實(shí)例,若用戶在外表及服裝方面定制人物,以使得人物 具有對(duì)于人物而言唯一的大量幾何形狀及行為,在限于在家庭中在PC或游戲控制臺(tái)上執(zhí) 行的游戲客戶端的先前技術(shù)系統(tǒng)下,若所述人物將進(jìn)入另一用戶的視野中,則用戶將必須 等待直到長的緩慢下載完成為止,以便將所有幾何形狀及行為數(shù)據(jù)載入其計(jì)算機(jī)中。在主 機(jī)服務(wù)210內(nèi),所述相同下載可優(yōu)于以十億比特/秒速度從RAID陣列1511-1512服務(wù)的超 高速以太網(wǎng)。即使家庭用戶具有8Mbps互聯(lián)網(wǎng)連接(其根據(jù)現(xiàn)今的標(biāo)準(zhǔn)來看極快),超高速 以太網(wǎng)也快100倍。因此,在快的互聯(lián)網(wǎng)連接上花費(fèi)一分鐘進(jìn)行的工作在超高速以太網(wǎng)上 將花費(fèi)小于一秒。頂級(jí)玩家分群及錦標(biāo)賽主機(jī)服務(wù)210極其適合于錦標(biāo)賽。因?yàn)闊o游戲在本地客戶端中執(zhí)行,所以不存在 用戶作弊的機(jī)會(huì)。而且,由于輸出路由1540多播UDP流的能力,使得主機(jī)服務(wù)210能夠同 時(shí)向觀眾中的數(shù)千人廣播較大錦標(biāo)賽。事實(shí)上,當(dāng)存在如此風(fēng)行以致數(shù)千名用戶正接收相同流的特定視頻流時(shí)(例 如,顯示較大錦標(biāo)賽的視圖),可以更有效的將視頻流發(fā)送到內(nèi)容傳送網(wǎng)絡(luò)(⑶N)(諸如, Akamai (阿卡邁公司)或Limelight (聚光燈公司))以用于大量分配到許多客戶端設(shè)備 415。當(dāng)使用CDN來顯示頂級(jí)玩家分群的游戲取景器頁面時(shí),可獲得類似水平的效率。對(duì)于較大錦標(biāo)賽,可使用現(xiàn)場直播的名人解說員來在特定比賽期間提供評(píng)論。盡 管大量用戶將是在觀看較大錦標(biāo)賽,且相對(duì)小數(shù)目將是在錦標(biāo)賽中玩。可將來自名人解說 員的音頻路由到對(duì)在錦標(biāo)賽中玩的用戶進(jìn)行主機(jī)代管且對(duì)錦標(biāo)賽中的游戲的任何旁觀者 模式復(fù)本進(jìn)行主機(jī)代管的應(yīng)用程序/游戲服務(wù)器1521-1525,且可將音頻加錄于游戲音頻 之上??稍谟螒蛏?也可能剛好在旁觀者視圖上)疊加名人解說員的視頻。網(wǎng)頁載入的加速全球信息網(wǎng)的主要傳送協(xié)議、超文本傳輸協(xié)議(HTTP)是被構(gòu)想并被限定在其中
56僅商業(yè)具有高速互聯(lián)網(wǎng)連接,且在線的消費(fèi)者使用撥號(hào)數(shù)據(jù)機(jī)或ISDN的時(shí)代中。此時(shí),用 于快速連接的“黃金標(biāo)準(zhǔn)”是Tl線,其對(duì)稱地提供1. 5Mbps數(shù)據(jù)速率(也即,兩個(gè)方向中具 有相等數(shù)據(jù)速率)?,F(xiàn)今,情形完全不同。大量發(fā)達(dá)世界中經(jīng)由DSL或電纜調(diào)制解調(diào)器連接的平均家 庭連接速度具有比Tl線高得多的下行數(shù)據(jù)速率。事實(shí)上,在世界的一些地方中,光纖到路 邊(fiber-to-the-curb)正將高達(dá)50Mbps至IOOMbps的數(shù)據(jù)速率帶入家庭。遺憾地,HTTP沒有被架構(gòu)(也沒有被實(shí)施)成有效地利用該急劇的速度改善。網(wǎng) 站為遠(yuǎn)程服務(wù)器上的檔案的集合。非常簡單地說,HTTP請(qǐng)求第一檔案,等待下載該檔案,且 接著請(qǐng)求第二檔案,等待下載該檔案等。事實(shí)上,HTTP允許一個(gè)以上“開放連接”(也即,每 次請(qǐng)求一個(gè)以上檔案),但由于商定的標(biāo)準(zhǔn)(及防止網(wǎng)絡(luò)服務(wù)器被超載的愿望)而使得僅準(zhǔn) 許非常少的開放連接。此外,由于網(wǎng)頁被構(gòu)造的方式,瀏覽器常常未意識(shí)到可用于立即下載 的多個(gè)同時(shí)頁面(也即,僅在剖析一個(gè)頁面之后才變得顯而易見需要下載如圖像的新檔 案)。因此,網(wǎng)站上的檔案實(shí)質(zhì)上是逐個(gè)地載入。此外,由于由HTTP使用的請(qǐng)求及響應(yīng)協(xié) 議,存在與所載入的每個(gè)檔案相關(guān)的大致(訪問美國的典型網(wǎng)絡(luò)服務(wù)器)100毫秒的延時(shí)。在相對(duì)低速連接的情況下,這不會(huì)引入大量問題,因?yàn)橛糜跈n案本身的下載時(shí)間 決定網(wǎng)頁的等待時(shí)間。但是,隨著連接速度增大(尤其是復(fù)雜網(wǎng)頁情況下),開始引起問題。在圖24中所顯示的實(shí)例中,顯示了典型商業(yè)網(wǎng)站(該特定網(wǎng)站來自較大的運(yùn)動(dòng)鞋 商標(biāo))。網(wǎng)站上具有54個(gè)檔案。檔案包括HTML、CSS、JPEG、PHP、JavaScript及Flash檔 案,且包括視頻內(nèi)容。在現(xiàn)場直播網(wǎng)頁(也即,用戶可單擊該網(wǎng)頁并開始使用該網(wǎng)頁)之 前,必須載入總共1.5M字節(jié)。對(duì)于大量檔案存在許多原因。首先,該網(wǎng)頁為復(fù)雜且尖端的 網(wǎng)頁,且其次,該網(wǎng)頁為基于關(guān)于存取該頁面的用戶的信息動(dòng)態(tài)地組合的網(wǎng)頁(例如,用戶 來自哪個(gè)國家,何種語言,用戶之前是否進(jìn)行購買等),且視所有這些因素而下載不同檔案。 但是,其仍為非常典型的商業(yè)網(wǎng)頁。圖24顯示隨著連接速度增大在現(xiàn)場直播網(wǎng)頁之前經(jīng)過的時(shí)間量。在1. 5Mbps連接速度2401下,使用具有傳統(tǒng)網(wǎng)絡(luò)瀏覽器的傳統(tǒng)網(wǎng)絡(luò)服務(wù)器,在現(xiàn)場直播 網(wǎng)頁之前花費(fèi)13. 5秒。在12Mbps連接速度2402下,載入時(shí)間減少至6. 5秒,或約快一倍。 但在96Mbps連接速度2403下,載入時(shí)間僅減少至約5. 5秒。這個(gè)原因是因?yàn)樵谶@種高下 載速度下,下載檔案本身的時(shí)間最小,但每個(gè)檔案各自大致100毫秒的延時(shí)仍保持,從而導(dǎo) 致54個(gè)檔案*100毫秒=5. 4秒的延時(shí)。因此,無論到家庭的連接多快,該網(wǎng)站在現(xiàn)場直播 之前將總是花費(fèi)至少5. 4秒。另一因素是服務(wù)器側(cè)排隊(duì);每個(gè)HTTP請(qǐng)求是在隊(duì)列的后部添 加,因此在忙碌的服務(wù)器上這將具有顯著影響,因?yàn)閷?duì)于要從網(wǎng)絡(luò)服務(wù)器得到的每個(gè)小項(xiàng) 目,HTTP請(qǐng)求需要等待其返回。解決這些問題的一個(gè)方式是廢棄或重新限定HTTP。或者,可能使網(wǎng)站擁有者較佳 地將其檔案合并成單一檔案(例如,以Adobe Flash格式)。但是,作為一個(gè)實(shí)際問題,該 公司以及許多他人在其網(wǎng)站架構(gòu)中具有大量投資。另外,盡管一些家庭具有12-lOOMbps連 接,但大多數(shù)家庭仍具有較緩慢的速度,且HTTP在緩慢速度下確實(shí)工作良好。一個(gè)替代方法是在應(yīng)用程序/游戲服務(wù)器1521-1525上對(duì)網(wǎng)絡(luò)瀏覽器進(jìn)行主機(jī) 代管,且在RAID陣列1511-1512上(或潛在地在對(duì)網(wǎng)絡(luò)瀏覽器進(jìn)行主機(jī)代管的應(yīng)用程序/ 游戲服務(wù)器1521-1525上的RAM中或本地儲(chǔ)存器上)對(duì)用于網(wǎng)絡(luò)服務(wù)器的檔案進(jìn)行主機(jī)代管。由于經(jīng)由入埠路由1502 (或至本地儲(chǔ)存器)的非??斓幕ミB,并非在使用HTTP下每檔 案具有100毫秒的延時(shí),而是在使用HTTP下將存在每檔案最小延時(shí)。接著,并非使家庭中 的用戶經(jīng)由HTTP存取網(wǎng)頁,而是用戶可經(jīng)由客戶端415存取網(wǎng)頁。接著,甚至在1.5Mbps 連接下(因?yàn)榇司W(wǎng)頁不需要大量帶寬來用于其視頻),網(wǎng)頁也將在每個(gè)線2400小于1秒的 時(shí)間內(nèi)處于現(xiàn)場直播。實(shí)質(zhì)上,在應(yīng)用程序/游戲服務(wù)器1521-1525上執(zhí)行的網(wǎng)絡(luò)瀏覽器 顯示現(xiàn)場直播的頁面之前將不存在延時(shí),且在客戶端415顯示來自網(wǎng)絡(luò)瀏覽器的視頻輸出 之前將不存在可偵測到的延時(shí)。當(dāng)用戶使用鼠標(biāo)搜尋網(wǎng)頁和/或在網(wǎng)頁上鍵入字時(shí),將用 戶的輸入信息發(fā)送至在應(yīng)用程序/游戲服務(wù)器1521-1525上執(zhí)行的網(wǎng)絡(luò)瀏覽器,且網(wǎng)絡(luò)瀏 覽器將相應(yīng)地作出響應(yīng)。此方法的一個(gè)不利之處是若壓縮器正恒定地傳輸視頻數(shù)據(jù),則使用帶寬,即使網(wǎng) 頁變成靜態(tài)也如此。這可通過配置壓縮器以僅在(并且如果)網(wǎng)頁改變時(shí)才傳輸數(shù)據(jù)且接 著僅將數(shù)據(jù)傳輸?shù)桨l(fā)生改變的頁面部分來補(bǔ)救。當(dāng)存在具有恒定地改變的閃爍標(biāo)語等的一 些網(wǎng)頁時(shí),所述網(wǎng)頁往往令人討厭,且除非存在要移動(dòng)某物(例如,視頻剪輯)的原因,否 則通常網(wǎng)頁為靜態(tài)的。對(duì)于所述網(wǎng)頁,可能為以下狀況使用主機(jī)服務(wù)210將傳輸較少數(shù) 據(jù)(與傳統(tǒng)網(wǎng)絡(luò)服務(wù)器相比),因?yàn)閷H傳輸實(shí)際顯示的圖像,沒有精簡型客戶端可執(zhí)行代 碼,且沒有可能從不被觀看的大對(duì)象(諸如,滾動(dòng)翻轉(zhuǎn)圖像)。因此,使用主機(jī)服務(wù)210來對(duì)舊版網(wǎng)頁進(jìn)行主機(jī)代管,可將網(wǎng)頁載入時(shí)間減少到 打開網(wǎng)頁是類似改變電視上的頻道的程度有效地即刻地現(xiàn)場直播該網(wǎng)頁。便于游戲及應(yīng)用程序的除錯(cuò)如先前所述,具有實(shí)時(shí)圖形的視頻游戲及應(yīng)用程序?yàn)榉浅?fù)雜的應(yīng)用程序且通常 當(dāng)其被發(fā)行到該領(lǐng)域中時(shí),其含有缺陷。盡管軟件開發(fā)商將自用戶得到關(guān)于缺陷的反饋,且 其可能具有用于在崩潰之后將機(jī)器狀態(tài)傳回的一些方式,但確切地識(shí)別是什么引起游戲或 實(shí)時(shí)應(yīng)用程序崩潰或不適當(dāng)?shù)貓?zhí)行非常困難。當(dāng)游戲或應(yīng)用程序在主機(jī)服務(wù)210中執(zhí)行時(shí),將游戲或應(yīng)用程序的視頻/音頻輸 出恒定地記錄在延遲緩沖器1515上。另外,看門狗進(jìn)程執(zhí)行每個(gè)應(yīng)用程序/游戲服務(wù)器 1521-1525,該看門狗進(jìn)程將向主機(jī)服務(wù)控制系統(tǒng)401定期地報(bào)告應(yīng)用程序/游戲服務(wù)器 1521-1525正平穩(wěn)地執(zhí)行。若看門狗進(jìn)程未能報(bào)告,則服務(wù)器控制系統(tǒng)401將試圖與應(yīng)用程 序/游戲服務(wù)器1521-1525通信,且若成功,則將收集可用的無論什么機(jī)器狀態(tài)。將無論什 么可用的信息連同由延遲緩沖器1515記錄的視頻/音頻一起發(fā)送到軟件開發(fā)商。因此,當(dāng)游戲或應(yīng)用程序軟件開發(fā)商自主機(jī)服務(wù)210得到崩潰的通知時(shí),其得到 導(dǎo)致崩潰的原因的幀接幀的紀(jì)錄。該信息在追蹤到缺陷并將缺陷修復(fù)中可能是極具價(jià)值 的。還應(yīng)該注意,當(dāng)應(yīng)用程序/游戲服務(wù)器1521-1525崩潰時(shí),在最近的可重新啟動(dòng)的 時(shí)刻重新啟動(dòng)服務(wù)器,且將消息提供給用戶,從而就技術(shù)困難道歉。資源共用及成本節(jié)省圖4a及圖4b中所顯示的系統(tǒng)為終端用戶與游戲及應(yīng)用程序開發(fā)商兩者提供多種 益處。舉例而言,通常,家庭及辦公室客戶端系統(tǒng)(例如,PC或游戲控制臺(tái))僅在一周中的 小百分比的小時(shí)中處于使用中。根據(jù)由Nielsen(尼爾森)娛樂“Active Gamer Benchmark Study (活躍游戲者基準(zhǔn)點(diǎn)研究)” (http://www. prnewswire. com/cgi-bin/stories, pi ?ACCT = 104&ST0RY = /www/story/10-05-2006/0004446115&EDATE =)的 2006 年 10 月 5 日通信稿,活躍的游戲者一周平均花費(fèi)14個(gè)小時(shí)來在視頻游戲控制臺(tái)上玩且約一周17個(gè) 小時(shí)在手持設(shè)備上玩。該報(bào)告還陳述對(duì)于所有游戲播放活動(dòng)(包括控制臺(tái)、手持設(shè)備及 PC游戲播放),活躍的游戲者平均一周13個(gè)小時(shí)??紤]較高數(shù)字的控制臺(tái)視頻游戲播放時(shí) 間,存在一周24*7 = 168個(gè)小時(shí),這暗示在活躍游戲者的家中,視頻游戲控制臺(tái)僅在一周 的17/168 = 10%的小時(shí)中處于使用中?;蛘撸?0%的時(shí)間,視頻游戲控制臺(tái)是閑置的。給 定視頻游戲控制臺(tái)的高成本,及制造商資助所述設(shè)備的事實(shí),這是昂貴資源的非常無效率 的使用。商業(yè)內(nèi)的PC通常也僅在一周的一部分小時(shí)中使用,尤其是高端應(yīng)用程序(諸如, Autodesk Maya)常常所需的非便攜式臺(tái)式PC。盡管一些商業(yè)在所有小時(shí)及假日都操作,且 一些PC (例如,帶回家以用于在晚上進(jìn)行工作的便攜式PC)是在所有小時(shí)及假日使用,但大 多數(shù)商業(yè)活動(dòng)傾向于在給定商業(yè)時(shí)區(qū)中集中在從周一至周五的約9AM至5PM、較少的假日 以及休息時(shí)間(諸如,午餐),且因?yàn)榇蠖鄶?shù)PC使用在用戶積極地利用PC時(shí)出現(xiàn),所以其遵 循臺(tái)式PC的利用傾向于遵循這些操作小時(shí)數(shù)。若假定一周中的五天的自9AM至5PM不斷 地使用PC,則這將暗示PC在一周的40/168 = 24%的小時(shí)中被使用。高性能臺(tái)式PC是用 于商業(yè)的非常昂貴的投資,且這反映了非常低的利用度。在臺(tái)式計(jì)算機(jī)上教學(xué)的學(xué)校可在 一周的甚至更小部分中使用計(jì)算機(jī),且盡管其視教學(xué)的小時(shí)數(shù)而改變,但大多數(shù)教學(xué)在自 周一至周五的日間小時(shí)期間出現(xiàn)。因此,一般而言,PC及視頻游戲控制臺(tái)僅在一周的小部 分小時(shí)中被利用。值得注意地,因?yàn)樵S多人在非假日的周一至周五的日間小時(shí)期間在商業(yè)或在學(xué)校 工作,所以這些人通常在這些小時(shí)期間不玩視頻游戲,且因此當(dāng)其確實(shí)玩視頻游戲時(shí),其通 常是在其他小時(shí)期間(諸如,晚上、周末及假日)。給定圖4a中所顯示的主機(jī)服務(wù)的配置,則上述兩段中所描述的使用模式導(dǎo)致資 源的非常有效的利用。顯而易見,存在對(duì)于可在給定時(shí)間由主機(jī)服務(wù)210來服務(wù)的用戶的 數(shù)目的限制,尤其在用戶需要用于復(fù)雜應(yīng)用程序(如尖端3D視頻游戲)的實(shí)時(shí)響應(yīng)性的情 況下。但是,不同于家庭中的視頻游戲控制臺(tái)或由商業(yè)使用的PC(其通常在大多數(shù)時(shí)間閑 置放置),服務(wù)器402可由不同用戶在不同時(shí)間重新利用。舉例而言,具有高性能雙CPU及 雙GPU及大量RAM的高性能服務(wù)器402可由商業(yè)及學(xué)校在非假日的9AM至5PM利用,但由 玩尖端視頻游戲的游戲者在晚上、周末及假日利用。類似地,低性能應(yīng)用程序可由商業(yè)及學(xué) 校在商業(yè)小時(shí)期間在具有Celeron (賽揚(yáng))CPU、無GPU (或非常低端的GPU)及有限RAM的低 性能服務(wù)器402上利用且低性能游戲可在非商業(yè)小時(shí)期間利用低性能服務(wù)器402。另外,在本文中所描述的主機(jī)服務(wù)配置的情況下,資源是在數(shù)千名(若非數(shù)百萬 名)用戶當(dāng)中有效地共用。一般而言,在線服務(wù)僅具有其總用戶基礎(chǔ)的小百分比在給定 時(shí)間使用服務(wù)。若考慮先前所列出的Nielsen視頻游戲使用統(tǒng)計(jì)數(shù)據(jù),則容易了解為什 么。若活躍游戲者一周僅17個(gè)小時(shí)玩控制臺(tái)游戲,且若假定游戲的峰值使用時(shí)間是在晚上 (5-12AM,7*5天=35小時(shí)/周)及周末(8AM-12AM,16*2 = 32小時(shí)/周)的典型非工作、 非商業(yè)小時(shí)期間,則對(duì)于17個(gè)小時(shí)的游戲播放,一周存在35+32 = 65個(gè)峰值小時(shí)。由于 以下許多原因而使得難以估計(jì)系統(tǒng)上的確切峰值用戶負(fù)載一些用戶將在峰值外時(shí)間期間 玩,可能存在特定日間時(shí)間存在用戶的叢集(clustering)峰值,峰值時(shí)間可受所玩游戲的 類型(例如,孩子的游戲?qū)⒖赡苁窃谕砩系妮^早時(shí)間玩)等影響。但是,假定當(dāng)游戲者可能
59玩游戲時(shí),游戲者玩的平均小時(shí)數(shù)遠(yuǎn)小于日間的小時(shí)數(shù),則僅主機(jī)服務(wù)210的一部分?jǐn)?shù)目 的用戶將是在給定時(shí)間使用主機(jī)服務(wù)210。為了該分析,我們假定峰值負(fù)載為12.5%。因 此,僅12. 5%的計(jì)算、壓縮及帶寬資源是在給定時(shí)間使用,從而由于資源的再使用而導(dǎo)致僅 12. 5%的硬件成本來支持給定用戶玩性能游戲的給定級(jí)別。此外,假定一些游戲及應(yīng)用程序需要比其他者多的計(jì)算能力,則可基于被用戶玩 的游戲或由用戶執(zhí)行的應(yīng)用程序來動(dòng)態(tài)地分配資源。因此,選擇低性能游戲或應(yīng)用程序的 用戶將被分配低性能(較低廉)服務(wù)器402,且選擇高性能游戲或應(yīng)用程序的用戶將被分配 高性能(較昂貴)服務(wù)器402。實(shí)際上,給定游戲或應(yīng)用程序可能具有游戲或應(yīng)用程序的 較低性能及較高性能區(qū),且可在游戲或應(yīng)用程序的區(qū)之間將用戶從一個(gè)服務(wù)器402切換到 另一服務(wù)器402,以保持用戶在滿足游戲或應(yīng)用程序的需要的最低成本服務(wù)器402上執(zhí)行。 注意,比單個(gè)磁盤快得多的RAID陣列405將可以被甚至低性能服務(wù)器402所用,這具有較 快磁盤傳送速率的益處。因此,跨越所有所玩游戲或所使用的應(yīng)用程序的每服務(wù)器402平 均成本比玩最高性能游戲或應(yīng)用程序的大多數(shù)昂貴服務(wù)器402的成本小得多,然而,即使 低性能服務(wù)器402也會(huì)從RAID陣列405得到磁盤性能益處。另外,主機(jī)服務(wù)210中的服務(wù)器402可能只是不具有磁盤或周邊接口(不同于網(wǎng) 絡(luò)接口)的PC主機(jī)板,且恰好,可向下整合成剛好具有到SAN 403的快速網(wǎng)絡(luò)接口的單個(gè) 芯片。而且,RAID陣列405可能將在比存在磁盤的情況多得多的用戶當(dāng)中共用,因此每個(gè)活 躍的用戶的磁盤成本將遠(yuǎn)小于一個(gè)磁盤驅(qū)動(dòng)器。所有該設(shè)備將可能駐留于環(huán)境上受控制的 服務(wù)器室環(huán)境中的支架中。若服務(wù)器402出故障,則其可容易地在主機(jī)服務(wù)210處進(jìn)行修 理或替換。相比之下,家庭或辦公室中的PC或游戲控制臺(tái)必須堅(jiān)固,必須能夠幸免于合理 的磨損及撕裂以防被重?fù)艋蚪德涞莫?dú)立器具需要外殼,具有至少一個(gè)磁盤驅(qū)動(dòng)器,必須幸 免于不利的環(huán)境條件(例如,被勉強(qiáng)塞入具有其他用具的過熱AV櫥柜中),需要服務(wù)保證, 必須被封裝及裝運(yùn),且由可能收取零售利潤的零售商來出售。另外,PC或游戲控制臺(tái)必須 被配置以滿足將在未來某一時(shí)刻使用的計(jì)算上最密集的預(yù)期游戲或應(yīng)用程序的峰值性能, 即使較低性能游戲或應(yīng)用程序(或游戲或應(yīng)用程序的區(qū))也可能在大多數(shù)時(shí)間玩。此外, 若PC或控制臺(tái)出故障,則使其得到修理是昂貴且耗時(shí)的過程(不利地影響制造商、用戶及 軟件開發(fā)商)。因此,假定圖4a中所顯示的系統(tǒng)將相當(dāng)于本地計(jì)算資源的體驗(yàn)的體驗(yàn)提供給用 戶,以供用戶在家庭、辦公室或?qū)W校中體驗(yàn)給定水平的計(jì)算能力,則通過圖4a中所顯示的 架構(gòu)提供所述計(jì)算能力要低廉得多。消除對(duì)升級(jí)的需要另外,用戶不必再擔(dān)憂將PC和/或控制臺(tái)升級(jí)以玩新游戲或處理較高性能的新 應(yīng)用程序。主機(jī)服務(wù)210上的任何游戲或應(yīng)用程序(不管所述游戲或應(yīng)用程序需要何類 型的服務(wù)器402)均可為用戶所用,且所有游戲及應(yīng)用程序接近即刻地執(zhí)行(也即,快速地 從RAID陣列405或服務(wù)器402上的本地儲(chǔ)存器載入)且適當(dāng)?shù)鼐哂凶钚赂录叭毕菪迯?fù) (也即,軟件開發(fā)商將能夠選擇用于執(zhí)行給定游戲或應(yīng)用程序的服務(wù)器402的理想服務(wù)器 配置,且接著將服務(wù)器402配置有最佳驅(qū)動(dòng)器,且接著隨著時(shí)間的推移,開發(fā)商將能夠同時(shí) 將更新、缺陷修復(fù)等提供給主機(jī)服務(wù)210中的游戲或應(yīng)用程序的所有復(fù)本)。實(shí)際上,在用 戶開始使用主機(jī)服務(wù)210之后,用戶可能發(fā)現(xiàn)游戲及應(yīng)用程序繼續(xù)提供較佳體驗(yàn)(例如,經(jīng)
60由更新和/或缺陷修復(fù))且可能是以下狀況用戶一年后發(fā)現(xiàn)新游戲或應(yīng)用程序可用于利 用計(jì)算技術(shù)(例如,較高性能的GPU)(其在一年前甚至不存在)的服務(wù)210上,因此對(duì)于用 戶而言,將不可能購買將在一年后玩游戲或執(zhí)行應(yīng)用程序的一年前的技術(shù)。因?yàn)橥嬗螒蚧?執(zhí)行應(yīng)用程序的計(jì)算資源對(duì)于用戶而言不可見(也即,自用戶的觀點(diǎn)看,用戶僅選擇開始 接近即刻地執(zhí)行的游戲或應(yīng)用程序_更像用戶改變電視上的信道),所以用戶的硬件將在 用戶甚至未意識(shí)到升級(jí)的情況下已被“升級(jí)”。消除對(duì)于備份的需要對(duì)于商業(yè)、學(xué)校及家庭中的用戶的另一較大問題是備份。若磁盤出故障,或若存在 無意擦除,則儲(chǔ)存在本地PC或視頻游戲控制臺(tái)中的信息(例如,在控制臺(tái)的狀況下,用戶的 游戲成果及等級(jí))可能丟失。存在提供用于PC的手動(dòng)或自動(dòng)備份的許多可用的應(yīng)用程序, 且可將游戲控制臺(tái)狀態(tài)上傳至在線服務(wù)器以供備份,但通常將本地備份復(fù)制至必須儲(chǔ)存于 安全且有組織的某處的另一本地磁盤(或其他非揮發(fā)性儲(chǔ)存設(shè)備),且由于經(jīng)由典型低成 本互聯(lián)網(wǎng)連接可用的緩慢上行速度而使得對(duì)于在線服務(wù)的備份常常有限。在圖4a的主機(jī) 服務(wù)210下,儲(chǔ)存于RAID陣列405中的數(shù)據(jù)可使用為本領(lǐng)域技術(shù)人員所熟知的先前技術(shù) RAID配置技術(shù)來配置,以使得當(dāng)磁盤出故障時(shí),將不丟失數(shù)據(jù),且將通知在容納出故障的磁 盤的服務(wù)器中心處的技術(shù)員,且接著技術(shù)員將替換該磁盤,該磁盤接著將被自動(dòng)地更新以 使得RAID陣列再一次容忍故障。另外,因?yàn)樗写疟P驅(qū)動(dòng)器彼此接近且其間具有經(jīng)由SAN 403的快速本地網(wǎng)絡(luò),所以在服務(wù)器中心中將所有磁盤系統(tǒng)配置定期地備份到次級(jí)儲(chǔ)存器 (其可儲(chǔ)存于服務(wù)器中心處或者經(jīng)易地重新定位)并不困難。從主機(jī)服務(wù)210的用戶的觀 點(diǎn)看,其數(shù)據(jù)始終完全安全,且其從不必考慮備份。對(duì)演示的存取用戶經(jīng)常希望在購買游戲或應(yīng)用程序的前試用游戲或應(yīng)用程序。如先前所述,存 在先前技術(shù)裝置,通過該先前技術(shù)裝置來演示(“演示”的動(dòng)詞形式意思是試用演示版本,演 示版本也被稱為“演示”,但作為名詞)游戲及應(yīng)用程序,但其中的每一者遭受限制和/或不 便利。使用主機(jī)服務(wù)210,對(duì)于用戶而言,容易且便于試用演示。實(shí)際上,用戶所進(jìn)行的系經(jīng) 由用戶接口(諸如,下文所描述的用戶接口)選擇演示且試用該演示。演示將幾乎即刻地 載入適合于該演示的服務(wù)器402上,且其將完全類似任何其他游戲或應(yīng)用程序而執(zhí)行。無 論演示需要非常高性能的服務(wù)器402還是低性能的服務(wù)器402,且無論用戶使用的家庭或 辦公室客戶端415是何類型,自用戶的觀點(diǎn)看,演示均將工作。游戲演示或應(yīng)用程序演示的 軟件出版商將能夠確切地控制準(zhǔn)許用戶試用何演示及試用多長時(shí)間,且當(dāng)然,演示可包括 為用戶提供獲得對(duì)所演示的游戲或應(yīng)用程序的全版本的存取機(jī)會(huì)的用戶接口要素。因?yàn)檠菔究赡苁堑陀诔杀緝r(jià)或免費(fèi)提供,所以一些用戶可能試圖使用重復(fù)的演示 (尤其是重復(fù)地玩可能有趣的游戲演示)。主機(jī)服務(wù)210可使用各種技術(shù)來限制用于給定 用戶的演示使用。最直接的方法是建立用于每個(gè)用戶的用戶ID且限制允許給定用戶ID播 放演示的次數(shù)。然而,用戶可設(shè)置多個(gè)用戶ID,尤其是其是自由的情況下。用于解決此問 題的一個(gè)技術(shù)是限制允許給定客戶端415播放演示的次數(shù)。若客戶端為獨(dú)立設(shè)備,則該設(shè) 備將具有一序號(hào),且主機(jī)服務(wù)210可限制演示可由具有所述序號(hào)的客戶端存取的次數(shù)。若 客戶端415正以PC或其他設(shè)備上的軟件執(zhí)行,則可由主機(jī)服務(wù)210來指派序號(hào)且將該序號(hào) 儲(chǔ)存于PC上并使用該序號(hào)來限制演示使用,但假定PC可由用戶來重新程序化,且序號(hào)被擦除或改變,則另一選項(xiàng)是主機(jī)服務(wù)210保持PC網(wǎng)絡(luò)適配器媒體訪問控制(MAC)地址(和/ 或其他機(jī)器特定識(shí)別符,諸如硬盤驅(qū)動(dòng)器序號(hào)等)的紀(jì)錄并將演示使用限制于該MAC地址。 假定可改變網(wǎng)絡(luò)適配器的MAC地址,然而,這并非極簡單的方法。另一方法是限制演示可被 播放到給定IP地址的次數(shù)。盡管可由電纜調(diào)制解調(diào)器及DSL提供者來周期性地重新指派 IP地址,但其在實(shí)踐中不會(huì)非常頻繁地發(fā)生,且若可確定(例如,通過聯(lián)系ISP) IP是處于用 于住宅DSL或電纜調(diào)制解調(diào)器存取的IP地址的區(qū)塊中,則通??山⒂糜诮o定家庭的小數(shù) 目的演示使用。而且,在家庭中在共用同一 IP地址的NAT路由器之后可能存在多個(gè)設(shè)備, 但通常在住宅背景中,將存在有限數(shù)目的所述設(shè)備。若IP地址是處于服務(wù)商業(yè)的區(qū)塊中, 則可建立用于商業(yè)的較大數(shù)目的演示。但是,最后,所有先前所述方法的組合是限制PC上 的演示的數(shù)目的最佳方式。盡管可能不存在使得所確定的且技術(shù)上熟練的用戶可能在重復(fù) 播放演示的數(shù)目中受到限制的極簡單的方式,但建立大量障礙可建立足夠阻礙以使得大多 數(shù)PC用戶不值得費(fèi)神去濫用演示系統(tǒng),且相反,其在其意欲試用新游戲及應(yīng)用程序時(shí)使用 演示。對(duì)學(xué)校、商業(yè)及其他機(jī)構(gòu)的益處顯著益處尤其出現(xiàn)在利用圖4a中所顯示的系統(tǒng)的商業(yè)、學(xué)校及其他機(jī)構(gòu)。商業(yè)及 學(xué)校具有與安裝、維護(hù)及升級(jí)PC相關(guān)聯(lián)的實(shí)質(zhì)成本,尤其當(dāng)談及執(zhí)行諸如Maya的高性能應(yīng) 用程序的PC時(shí)。如先前所陳述,PC通常僅在一周的小時(shí)的一部分中被利用,且如在家庭中, 具有給定水平的性能能力的PC在辦公室或?qū)W校環(huán)境中的成本遠(yuǎn)高于在服務(wù)器中心環(huán)境中 的成本。在較大商業(yè)或?qū)W校(例如,大的大學(xué))的狀況下,所述實(shí)體的IT部門設(shè)置服務(wù) 器中心且維護(hù)經(jīng)由LAN級(jí)連接而遠(yuǎn)程地存取的計(jì)算機(jī)可以是實(shí)際的。存在用于經(jīng)由LAN 或經(jīng)由辦公室之間的私用高帶寬連接而遠(yuǎn)程存取計(jì)算機(jī)的許多解決方法。舉例而言, 通過Microsoft的Windows終端機(jī)服務(wù)器,或者通過虛擬網(wǎng)絡(luò)計(jì)算應(yīng)用程序(如來自 RealVNC(遠(yuǎn)程控制)有限公司的VNC)或者通過來自Sun Microsystems (太陽計(jì)算機(jī)系統(tǒng) 公司)的精簡型客戶端裝置,用戶可獲得對(duì)PC或服務(wù)器的遠(yuǎn)程存取,在圖形響應(yīng)時(shí)間及用 戶體驗(yàn)中具有一定范圍的質(zhì)量。另外,所述自行管理的服務(wù)器中心通常專用于單個(gè)商業(yè)或 學(xué)校,且因此不能夠利用在全異應(yīng)用程序(例如,娛樂及商業(yè)應(yīng)用程序)在一周的不同時(shí)間 利用同一計(jì)算資源時(shí)所可能的使用的重疊。因此,許多商業(yè)及學(xué)校缺乏獨(dú)立設(shè)置具有至每 一用戶的LAN速度的網(wǎng)絡(luò)連接的服務(wù)器中心的規(guī)模、資源或?qū)iT技能。實(shí)際上,大百分比的 學(xué)校及商業(yè)具有與家庭相同的互聯(lián)網(wǎng)連接(例如,DSL、電纜調(diào)制解調(diào)器)。然而,所述組織仍可能具有對(duì)于非常高性能的計(jì)算的需要(或者定期地或者周期 性地)。舉例而言,小建筑公司可能僅具有小數(shù)目的建筑師,當(dāng)進(jìn)行設(shè)計(jì)工作時(shí),具有相對(duì)適 度的計(jì)算需要,但其可能周期性地需要非常高性能的3D計(jì)算(例如,當(dāng)建立用于客戶端的 新建筑設(shè)計(jì)的3D飛越時(shí))。圖4a中所顯示的系統(tǒng)極其適合于所述組織。所述組織僅需要 為提供至家庭的同一種類的網(wǎng)絡(luò)連接(例如,DSL、電纜調(diào)制解調(diào)器)且通常非常低廉。其 可利用低廉的PC作為客戶端415,或者完全沒有PC也可以,而利用簡單實(shí)施控制信號(hào)邏輯 413及低延時(shí)視頻解壓縮412的低廉的專用設(shè)備。該特征對(duì)于可能具有PC的偷竊或?qū)C 內(nèi)的專用組件的損壞的問題的學(xué)校特別有吸引力。這種配置解決了用于所述組織的許多問題(且許多這種優(yōu)點(diǎn)也為進(jìn)行通用計(jì)算
62的家庭用戶共用)。舉例而言,操作成本(其最終必須以某種形式傳遞回至用戶以便具有 可行的商業(yè))可能低得多,因?yàn)?a)計(jì)算資源是與在一周中具有不同峰值使用時(shí)間的其他 應(yīng)用程序共用,(b)所述組織可僅在需要時(shí)獲得(且招致成本)對(duì)高性能計(jì)算資源的存取, (C)所述組織不必提供用于備份或以其他方式維護(hù)高性能計(jì)算資源的資源。盜版的消除另外,游戲、應(yīng)用程序、互動(dòng)式電影等可能不再如現(xiàn)今這樣被盜版。因?yàn)橛螒蚴窃?服務(wù)器中心處執(zhí)行,所以用戶不具備對(duì)于基本程序碼的存取,因此不存在盜版。即使用戶將 要復(fù)制原始碼,用戶也不能夠在標(biāo)準(zhǔn)游戲控制臺(tái)或家庭計(jì)算機(jī)上執(zhí)行該碼。此打開了標(biāo)準(zhǔn) 視頻游戲不可用的世界各地(諸如,中國)的市場。已使用的游戲的重新銷售也是不可能 的。對(duì)于游戲開發(fā)商而言,如同現(xiàn)今的狀況,存在較少市場不連續(xù)性。與全新的一代技 術(shù)迫使用戶及開發(fā)商升級(jí)且游戲開發(fā)商取決于硬件平臺(tái)的及時(shí)傳送的當(dāng)前情形對(duì)比,可隨 著時(shí)間隨著游戲要求改變而逐漸地更新主機(jī)服務(wù)210。流動(dòng)互動(dòng)式視頻以上描述提供由以通用互聯(lián)網(wǎng)為基礎(chǔ)的低延時(shí)流動(dòng)互動(dòng)式視頻(其隱含地也包 括連同視頻一起的音頻,如本文中所使用)的新穎基本概念致能的多種應(yīng)用。經(jīng)由互聯(lián)網(wǎng) 而提供流動(dòng)視頻的先前技術(shù)系統(tǒng)僅具有可通過高延時(shí)互動(dòng)實(shí)施的所致能的應(yīng)用。舉例而 言,用于線性視頻的基本回放控制(例如,暫停、回倒、快進(jìn))在高延時(shí)下適當(dāng)?shù)毓ぷ?,且?可能在線性視頻饋送當(dāng)中進(jìn)行選擇。此外,如先前所陳述,一些視頻游戲的性質(zhì)允許其以高 延時(shí)來播放。但是,用于流動(dòng)視頻的先前技術(shù)方法的高延時(shí)(或低壓縮比率)嚴(yán)重限制流 動(dòng)視頻的潛在應(yīng)用或使其部署變窄到專門化的網(wǎng)絡(luò)環(huán)境,且甚至在所述環(huán)境中,先前技術(shù) 也引入網(wǎng)絡(luò)上的實(shí)質(zhì)負(fù)擔(dān)。本文中所描述的技術(shù)打開了在經(jīng)由互聯(lián)網(wǎng)的低延時(shí)流動(dòng)互動(dòng)式 視頻下可能的多種應(yīng)用的大門,尤其是經(jīng)由消費(fèi)者級(jí)互聯(lián)網(wǎng)連接而致能的所述應(yīng)用。實(shí)際上,在與圖4c的客戶端465 —般小的客戶端設(shè)備下,足以通過有效的任意量 的計(jì)算能力、任意量的快速儲(chǔ)存及強(qiáng)大服務(wù)器之間的極快網(wǎng)絡(luò)連接而提供增強(qiáng)的用戶體 驗(yàn),其使新的計(jì)算時(shí)代成為可能。另外,因?yàn)閹捯蟛⒉浑S著系統(tǒng)的計(jì)算能力增長而增長 (也即,因?yàn)閹捯髢H關(guān)于顯示分辨率、質(zhì)量及幀速率),所以一旦寬帶互聯(lián)網(wǎng)連接性是 普遍存在的(例如,經(jīng)由分布廣的低延時(shí)無線涵蓋)、可靠的且具有足以滿足所有用戶的顯 示設(shè)備422的需要的足夠高的帶寬,則問題將是典型消費(fèi)者及商業(yè)應(yīng)用所必要的是厚重客 戶端(諸如,執(zhí)行Windows、Linux、OSX等的PC或移動(dòng)電話)還是甚至精簡型客戶端(諸 如,Adobe Flash 或 Java)。流動(dòng)互動(dòng)式視頻的出現(xiàn)導(dǎo)致關(guān)于計(jì)算架構(gòu)的結(jié)構(gòu)的假定的重新考慮。該一個(gè)實(shí)例 是圖15中所顯示的主機(jī)服務(wù)210服務(wù)器中心實(shí)施例。用于延遲緩沖G器和/或分群視頻 1550的視頻路徑是反饋回路,其中應(yīng)用程序/游戲服務(wù)器1521-1525的經(jīng)多播的流動(dòng)互動(dòng) 式視頻輸出經(jīng)由路徑1552而實(shí)時(shí)地或者經(jīng)由路徑1551在可選擇的延遲之后被反饋回到應(yīng) 用程序/游戲服務(wù)器1521-1525中。這使得通過先前技術(shù)服務(wù)器或本地計(jì)算架構(gòu)將是不可 能或不可行的多種實(shí)際應(yīng)用(例如,諸如圖16、圖17及圖20中所說明的應(yīng)用)成為可能。 但是,作為更一般的架構(gòu)特征,反饋回路1550所提供的是流動(dòng)互動(dòng)式視頻水平下的遞歸, 因?yàn)榭稍趹?yīng)用程序需要視頻時(shí)將視頻無限地循環(huán)。這使得之前從未可用的多種應(yīng)用可能性成為可能。另一關(guān)鍵架構(gòu)特征在于視頻流是單向UDP流。這有效地實(shí)現(xiàn)流動(dòng)互動(dòng)式視頻的 任意程度的多播(相比之下,諸如TCP/IP流的雙向流將隨著用戶的數(shù)目增加而在來自來回 通信的網(wǎng)絡(luò)上產(chǎn)生越來越多的通信停滯)。多播是服務(wù)器中心內(nèi)的重要能力,因?yàn)槠湓试S系 統(tǒng)對(duì)互聯(lián)網(wǎng)用戶(且實(shí)際上,世界的人口)的增長的需要作出響應(yīng)以在一對(duì)多或甚至多對(duì) 多基礎(chǔ)上通信。再次,本文中所論述的說明流動(dòng)互動(dòng)式視頻遞歸與多播兩者的使用的實(shí)例 (諸如,圖16)僅為具有可能性的非常大的冰山的尖端。在一個(gè)實(shí)施例中,本文中所說明的各種功能模組及相關(guān)聯(lián)的步驟可由含有用于執(zhí) 行所述步驟的固線式邏輯的特定硬件組件(諸如,特殊用途集成電路(“ASIC”))或由被編 程的計(jì)算機(jī)組件與定制硬件組件的任何組合來執(zhí)行。在一個(gè)實(shí)施例中,可將所述模組實(shí)施于諸如Texas儀器的TMS320x架構(gòu)(例如, TMS320C6000, TMS320C5000,...等)的可編程數(shù)字信號(hào)處理器(“DSP”)上??墒褂酶鞣N 不同的DSP,同時(shí)仍遵守所述基本原理。實(shí)施例可包括如上文所闡述的各種步驟。所述步驟可體現(xiàn)于引起通用或?qū)S锰幚?器執(zhí)行特定步驟的機(jī)器可執(zhí)行指令中。已將與這些基本原理無關(guān)的各種元件(諸如,計(jì)算 機(jī)存儲(chǔ)器、硬碟機(jī)、輸入設(shè)備)從圖中省去以避免混淆相關(guān)方面。所公開的標(biāo)的物的要素也可作為用于儲(chǔ)存機(jī)器可執(zhí)行指令的機(jī)器可讀媒體來提 供。機(jī)器可讀媒體可包括(但不限于)閃存、光碟、CD-ROM、DVDROM、RAM、EPR0M、EEPR0M、磁 卡或光卡、傳播媒體或適合于儲(chǔ)存電子指令的其他類型的機(jī)器可讀媒體。舉例而言,本發(fā)明 可作為計(jì)算機(jī)程序來下載,該計(jì)算機(jī)程序可經(jīng)由通信鏈路(例如,數(shù)據(jù)機(jī)或網(wǎng)絡(luò)連接)借助 于體現(xiàn)在載波或其他傳播媒體中的數(shù)據(jù)信號(hào)而從遠(yuǎn)程計(jì)算機(jī)(例如,服務(wù)器)傳送到請(qǐng)求 計(jì)算機(jī)(例如,客戶端)。還應(yīng)理解,所公開的標(biāo)的物的要素也可作為計(jì)算機(jī)程序產(chǎn)品來提供,該計(jì)算機(jī)程 序產(chǎn)品可包括在上面儲(chǔ)存有指令的機(jī)器可讀媒體,所述指令可用于程序化計(jì)算機(jī)(例如, 處理器或其他電子設(shè)備)以執(zhí)行一序列操作。或者,所述操作可通過硬件與軟件的組合來 執(zhí)行。機(jī)器可讀媒體可包括(但不限于)軟盤、光盤、CD-ROM,及磁光盤、ROM、RAM、EPROM、 EEPR0M、磁卡或光卡、傳播媒體或適合于儲(chǔ)存電子指令的其他類型的媒體/機(jī)器可讀媒體。 舉例而言,所公開的標(biāo)的物的要素可作為計(jì)算機(jī)程序產(chǎn)品來下載,其中程序可經(jīng)由通信鏈 路(例如,數(shù)據(jù)機(jī)或網(wǎng)絡(luò)連接)借助于體現(xiàn)于載波或其他傳播媒體中的數(shù)據(jù)信號(hào)而自遠(yuǎn)程 計(jì)算機(jī)或電子設(shè)備傳送至請(qǐng)求過程。另外,盡管已結(jié)合特定實(shí)施例描述所公開的標(biāo)的物,但眾多修改及變更將適當(dāng)?shù)?處于本公開的范疇內(nèi)。因此,說明書及圖式應(yīng)視為說明性的而非限制性的意義。
6權(quán)利要求
一種計(jì)算機(jī)實(shí)施的方法,該方法包括在不同的地理位置從戰(zhàn)略上定位多個(gè)應(yīng)用服務(wù)器中心;從客戶端接收請(qǐng)求以執(zhí)行在線應(yīng)用程序;基于由所述客戶端請(qǐng)求的應(yīng)用程序的類型來確定延時(shí)要求;以及至少基于所請(qǐng)求的應(yīng)用程序的延時(shí)要求來將客戶端請(qǐng)求發(fā)送到在所述多個(gè)應(yīng)用服務(wù)器中心內(nèi)的特定應(yīng)用服務(wù)器中心。
2.根據(jù)權(quán)利要求1所述的方法,其中所述應(yīng)用程序是互動(dòng)式視頻游戲。
全文摘要
描述了一種用于智能地將客戶端請(qǐng)求分配到服務(wù)器中心以提供實(shí)時(shí)流動(dòng)互動(dòng)式視頻的系統(tǒng)和方法。例如,一種計(jì)算機(jī)實(shí)施的方法的一個(gè)實(shí)施方式包括在不同的地理位置從戰(zhàn)略上定位多個(gè)應(yīng)用服務(wù)器中心;從客戶端接收請(qǐng)求以執(zhí)行在線應(yīng)用程序;基于由所述客戶端請(qǐng)求的應(yīng)用程序的類型來確定延時(shí)要求;以及至少基于所請(qǐng)求的應(yīng)用程序的延時(shí)要求來將客戶端請(qǐng)求發(fā)送到在所述多個(gè)應(yīng)用服務(wù)器中心內(nèi)的特定應(yīng)用服務(wù)器中心。
文檔編號(hào)G06F15/16GK101918933SQ200880119147
公開日2010年12月15日 申請(qǐng)日期2008年12月4日 優(yōu)先權(quán)日2007年12月5日
發(fā)明者R·范德拉安, S·G·珀?duì)柭?申請(qǐng)人:生命力有限公司