分案申請說明
本申請是申請日為2014年4月14日、申請?zhí)枮?01410148296.1、最早優(yōu)先權(quán)日為2013年4月12日、題為“信令傳輸使用3d視頻編碼的高效率視頻編碼擴(kuò)展的變形圖”的中國發(fā)明專利申請的分案申請。
人類通常使用立體視覺來觀看。觀看者的左眼和右眼各自感知到場景的稍微不同的視圖,并且觀看者的大腦將稍微不同的視圖融合成包括深度信息的單個圖像。深度信息允許觀看者感知到與場景中各種物體的相對距離。用單個攝像機(jī)拍攝的電影無法將這樣的深度信息提供給觀看者從而易于看起來像是平面的。
背景技術(shù):
3-d電影技術(shù)方面的早期努力使用了立體影片,其中相同場景的兩個圖像(在它們之間具有相對偏移)被重疊在單件電影膠片上,其中圖像經(jīng)受互補(bǔ)濾色器(complimentarycolorfilter)(例如,紅色和綠色)。觀看者戴上特殊眼鏡,這樣一個圖像將僅被左眼看見而另一個將僅被右眼看見。當(dāng)觀看者的大腦融合兩個圖像時,結(jié)果是深度的錯覺。在二十世紀(jì)五十年代,“雙片”保護(hù)技術(shù)被廣泛地用來放映3-d電影。使用雙片保護(hù)技術(shù),兩個膠片被同步并排地投射,其中來自每個投射儀的光被反向地偏振。觀看者戴上偏振眼鏡,每只眼僅將看見兩個圖像中的一個。最近,有源偏振已被用來區(qū)分左眼和右眼圖像。使用有源方向翻轉(zhuǎn)圓形偏光器(activedirection-flippingcircularpolarizer)按順序地投射左眼圖像和右眼圖像,其中,有源方向翻轉(zhuǎn)圓形偏光器對左眼幀和右眼幀應(yīng)用相反圓形偏振。觀看者戴上對于每只眼具有相反固定的圓形偏光器的眼鏡,以便每只眼僅看見預(yù)定幀。多年來,用于投射3-d電影的各種其它系統(tǒng)也已被使用。
在電影院中和在家庭娛樂系統(tǒng)中的3-d電影的趨勢一直在增長。3-d電影可以使用立體技術(shù)來產(chǎn)生。立體技術(shù)從一對2-d圖像中創(chuàng)建深度的錯覺,其中的每一個2-d圖像都被呈現(xiàn)給觀看者的一只眼睛。該對2-d圖像可以呈現(xiàn)場景的兩個稍微不同的透視。稍微不同的透視可以類似于觀看者的眼睛的自然雙目視覺。通過分別將稍微不同的透視的2-d圖像呈現(xiàn)給觀看者的右眼以及左眼,觀看者可以感知到2-d圖像的三維合成,其中場景的某些物體看起來比場景的其它物體更靠近觀看者。也就是說,觀看者的大腦可以合并或者融合左眼和右眼圖像以創(chuàng)建深度的感知。
物體在圖像對中的偏移程度確定了物體被觀看者感知到所在的深度。當(dāng)左眼圖像的位置或坐標(biāo)與右眼圖像的位置或坐標(biāo)交叉(例如,負(fù)視差)時,物體可能看起來朝觀看者突出并遠(yuǎn)離中性面或屏幕突出。而當(dāng)左眼圖像和右眼圖像的位置或坐標(biāo)不交叉(例如,正視差)時,物體可能看起來遠(yuǎn)離屏幕或者在屏幕后面。
對于電影來說,以立體拍攝(在真人電影的情況下)或者成像(在渲染動畫的情況下)以得到3-d觀看效果是日益常見的。用來產(chǎn)生立體視頻(stereoscopicvideo或stereovideo)的圖像幀可以被稱為立體圖像。圖像幀(或簡單地稱為“幀”)指的是在特定時間點(diǎn)處的圖像??梢酝ㄟ^將多個每秒幀數(shù)(fps)(諸如二十四至三十個fps)呈現(xiàn)給觀看者來實現(xiàn)運(yùn)動的錯覺。幀可以包括用兩個或更多個攝像機(jī)所拍攝的真人電影的內(nèi)容。幀還可以包括使用兩個攝像機(jī)位置所成像的渲染動畫的內(nèi)容。在立體視頻中,通過將左眼圖像流和右眼圖像流呈現(xiàn)給觀看者來產(chǎn)生立體感知。
技術(shù)實現(xiàn)要素:
在本公開中呈現(xiàn)的實施例提供了一種基于視頻編碼方案執(zhí)行視圖生成的操作的方法、計算機(jī)可讀介質(zhì)以及系統(tǒng)。操作包括接收基于視頻編碼方案所編碼的第一比特流。第一比特流包括視頻、一個或多個量化的變形圖偏移(warpmapoffset),以及由視頻編碼方案所指定的預(yù)定義消息類型的第一消息。第一消息包含包括第一語法元素和第二語法元素的多個語法元素。操作還包括基于在第一消息中包括的第一語法元素將從第一比特流解碼的深度樣本解釋為包括量化的變形圖偏移的第一預(yù)定義深度格式;操作還包括基于從第一比特流解釋的一個或多個量化的變形圖偏移、并且進(jìn)一步基于至少第二語法元素來生成一個或多個變形圖。操作還包括使用圖像域變形(warping)并且基于視頻和一個或多個變形圖來生成一個或多個視圖。
本文中所呈現(xiàn)的其它實施例提供了一種基于視頻編碼方案的視圖生成方法。方法包括生成基于視頻編碼方案編碼的第一比特流。第一比特流包括視頻、一個或多個量化的變形圖偏移以及由視頻編碼方案所指定的預(yù)定義消息類型的第一消息。第一消息包含包括第一語法元素和第二語法元素的多個語法元素。方法還包括將第一比特流發(fā)送到接收實體。接收實體被配置成基于在第一消息中包括的第一語法元素將從第一比特流解碼的深度樣本解釋為包括量化的變形圖偏移的第一預(yù)定義深度格式。接收實體還被配置成基于從第一比特流解釋的一個或多個量化的變形圖偏移、并且進(jìn)一步基于至少第二語法元素來生成一個或多個變形圖。接收實體還被配置成使用圖像域變形并且基于視頻和一個或多個變形圖來生成一個或多個視圖。
附圖說明
因此,以能夠詳細(xì)地理解本公開中所呈現(xiàn)的上述特征的方式,以上簡要地概括的更特定描述可以通過參考實施例來獲得,實施例中的一些被圖示在附圖中。然而,應(yīng)當(dāng)注意,附圖僅圖示了本公開中所呈現(xiàn)的典型實施例,因此將不被認(rèn)為限制本公開的范圍,因為本公開可包括其它等效實施例。
圖1是圖示了根據(jù)本公開中所呈現(xiàn)的一個實施例的用于基于視頻編碼方案的視圖生成系統(tǒng)的數(shù)據(jù)流程圖。
圖2描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的用于互補(bǔ)增強(qiáng)信息(supplementaryenhancementinformation,簡稱為sei)消息的語法。
圖3描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的從由sei消息所提供的解碼的深度樣本和語法元素得到的變形圖的偽代碼。
圖4圖示了根據(jù)本公開中所呈現(xiàn)的一個實施例的示例性攝像機(jī)位置和關(guān)聯(lián)的變形圖。
圖5描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的使用在不同位置處的輸入視圖得到用來在任意位置合成視圖的變形圖的偽代碼。
圖6是描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的用于基于視頻編碼方案的視圖生成方法的流程圖。
圖7是描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的用于基于視頻編碼方案的視圖生成方法的流程圖。
圖8是圖示了根據(jù)本公開中所呈現(xiàn)的一個實施例的用于視圖生成系統(tǒng)的組件的框圖。
具體實施方式
本公開中所呈現(xiàn)的實施例提供了用于基于視頻編碼方案的視圖生成技術(shù)。在一些實施例中,可以基于變形圖來生成視圖。常常可以期望生成多個視圖,諸如以便支持多視覺顯示的使用,這便于立體觀看而無需用戶戴上任何眼鏡。在內(nèi)容產(chǎn)生期間生成變形圖的場景下,為了便于通過接收應(yīng)用來生成多個視圖,可以期望將變形圖連同視頻數(shù)據(jù)一起發(fā)送到用戶??梢曰谝曨l編碼方案并且根據(jù)本文中所公開的實施例來發(fā)送變形圖。
在一個實施例中,視頻編碼方案可以被調(diào)整以便于包含多視圖視頻和深度圖數(shù)據(jù)的比特流的傳輸。在一個實施例中,量化的變形圖偏移在該比特流中被發(fā)送,其中量化的變形圖偏移可以具有與深度圖相同的格式。量化的變形圖偏移在本文中還可以被稱為量化的圖偏移。因此,接收應(yīng)用能夠適當(dāng)?shù)亟忉屗邮盏降谋忍亓?,預(yù)定義消息在該比特流中被提交。在一個實施例中,視頻編碼方案是3d視頻編碼的高效率視頻編碼(highefficiencyvideocoding,簡稱為hevc)擴(kuò)展(3d-hevc),并且預(yù)定義消息是互補(bǔ)增強(qiáng)信息(sei)消息。
在一個實施例中,消息向接收應(yīng)用指示圖像域變形而非基于深度圖像的渲染將被用作視圖合成技術(shù)。另外地或可替代地,消息向接收應(yīng)用指示從比特流解碼的深度樣本將被解釋為與諸如深度圖的深度樣本相反的量化的變形圖偏移。消息還可以向接收應(yīng)用指示在消息中包括的語法元素將被用來基于量化的變形圖偏移來生成變形圖。消息還可以向接收應(yīng)用指示所生成的變形圖將用于基于圖像域變形生成視圖。進(jìn)一步地,在一些情況下,例如在期望基于視頻編碼方案發(fā)送多視圖視頻和深度圖數(shù)據(jù)的情況下,未必需要發(fā)送該消息。在這樣的情況下,接收應(yīng)用使用基于深度圖像的渲染代替圖像域變形來生成視圖。在本公開中指定了與消息相關(guān)聯(lián)的語法和語義,包括于此附加的附錄a-b。
至少在一些實施例中,通常,生成變形圖比生成深度圖更高效或更方便。例如,生成變形圖通常不需要與生成深度圖一樣多的人為干預(yù)。在一些實施例中,變形圖生成可以是基本上或甚至完全是自動的。通過使用本文中所公開的技術(shù)來基于變形圖生成視圖,還可以至少在一些情況下更加高效或更加方便地生成視圖。
圖1是圖示了根據(jù)本公開中所呈現(xiàn)的一個實施例的用于基于視頻編碼方案的視圖生成系統(tǒng)100的數(shù)據(jù)流程圖。如圖所示,系統(tǒng)100包括發(fā)送應(yīng)用102和接收應(yīng)用104。在一個實施例中,發(fā)送應(yīng)用102生成基于視頻編碼方案編碼的比特流106。比特流106包括視頻112、量化的變形圖偏移116以及由視頻編碼方案所指定的消息類型的消息114。消息114包含語法元素118。發(fā)送應(yīng)用102將比特流106發(fā)送到接收應(yīng)用104。接收應(yīng)用104接收比特流106并且基于在消息114中包括的第一語法元素118將從比特流106解碼的深度樣本解釋為量化的變形圖偏移的第一深度格式。然后,接收應(yīng)用104基于從比特流106解釋的量化的變形圖偏移并且進(jìn)一步基于在消息114中包括的第二語法元素118來生成變形圖108。之后,接收應(yīng)用104使用圖像域變形并且基于視頻112和變形圖108來生成視圖110。
在一個實施例中,視頻編碼方案是3d-hevc,并且消息類型是sei消息類型。視頻112可以是多視圖視頻。進(jìn)一步地,可以使用圖像域變形代替基于深度圖像的渲染,并且深度樣本可以被解釋為量化的變形圖偏移來代替深度圖。在一些實施例中,多視圖視頻和深度圖數(shù)據(jù)使用3d-hevc并且代替sei消息被發(fā)送。第一語法元素可以指定多個預(yù)定義深度類型中的任一個,諸如量化的變形圖偏移、深度圖等等。
圖2描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的用于sei消息的語法200。語法200指定sei消息中的語法元素202和多個描述符204,每個描述符指示對于相應(yīng)語法元素的預(yù)定義解析過程。在一個實施例中,sei消息用信令通信以將解碼的深度樣本解釋為可替代深度格式。sei消息中的第一語法元素206指定期望的可替代深度類型。在一個實施例中,零深度類型值指示使用解碼的深度樣本來得到變形圖并且進(jìn)一步指示經(jīng)由圖像域變形來執(zhí)行視圖合成,而其它深度類型值(例如,一至三)是保留值。在一個實施例中,除零以外的預(yù)定義深度類型值指示基于深度圖像的渲染而不是基于圖像域變形來執(zhí)行視圖合成。
在一個實施例中,在sei消息中包含的其他語法元素被用來從每個視圖的解碼的深度樣本得到對應(yīng)的變形圖。例如,sei消息中的第二語法元素208指定變形圖的水平方向的最小偏移的整數(shù)部分。第三語法元素210指定變形圖的水平方向的最小偏移的小數(shù)部分。這些語法元素208、210可以被用來得到如下的最小水平偏移:
min_x_offset=min_x_offset_int+min_x_offset_frac256(等式1)
類似地,第四語法元素212指定變形圖的水平方向的最大偏移的整數(shù)部分。第五語法元素214指定變形圖的水平方向的最大偏移的小數(shù)部分。語法元素212、214可以被用來得到如下的最大水平偏:
max_x_offset=max_x_offset_int+max_x_offset_frac256(等式2)
在一個實施例中,sei消息中的第六語法元素216是標(biāo)志,其當(dāng)被設(shè)置時,指示垂直方向存在最小和最大偏移值。第七語法元素218指定變形圖的垂直方向的最小偏移的整數(shù)部分。第八語法元素220指定變形圖的垂直方向的最小偏移的小數(shù)部分。語法元素218、220可以被用來得到如下的最小垂直偏移:
if(y_offset_present_flag)
min_y_offset=min_x_offset_int+min_x_offset_frac256
else
min_y_offset=0(等式3)
類似地,第九語法元素222指定變形圖的垂直方向的最大偏移的整數(shù)部分。第十語法元素224指定變形圖的垂直方向的最大偏移的小數(shù)部分。語法元素222、224可以被用來得到如下的最大垂直偏移:
if(y_offset_present_flag)
max_y_offset=max_x_offset_int+max_x_offset_frac256
else
max_y_offset=0(等式4)
在一個實施例中,sei消息中的第十一語法元素226是標(biāo)志,其當(dāng)被設(shè)置時,以輸出次序指定對于當(dāng)前和全部隨后的變形圖存在有效的新的變形圖尺寸,直到另一新的變形圖尺寸被明確指定為止。當(dāng)該標(biāo)志被清除時,該標(biāo)志指定變形圖尺寸保持不變。第十二語法元素228和第十三語法元素230分別指定變形圖的寬度和高度。在一個實施例中,給出如下的語法元素228、230的有效值:
0<=warp_map_width<=pic_width_in_luma_samples
if(!y_offset_present_flag)
0<=warp_map_height<=pic_height_in_luma_samples
else
0<=warp_map_height<=pic_height_in_luma_samples/2(表達(dá)式1)
盡管參考語法200和語法元素202對本文中的實施例進(jìn)行了描述,但是這不旨在限制所公開的實施例,并且在本公開中廣泛地設(shè)想了其它語法、語法元素、描述符以及值。
圖3描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的從由sei消息所提供的解碼的深度樣本和語法元素得到變形圖的偽代碼300。如圖所示,偽代碼300分別迭代變形圖的寬度和高度,基于解碼的深度樣本和語法元素來得到變形圖的每個值。以這樣的方式,每個視圖的解碼的深度樣本被用來為相應(yīng)的視圖得到對應(yīng)的變形圖。解碼的深度樣本和變形圖分別在偽代碼300中被表示為d和w。在一個實施例中,這樣得到的每個變形圖被分配給與其對應(yīng)的輸入視圖。進(jìn)一步地,每個變形圖具有將所對應(yīng)的輸入視圖映射到中央攝像機(jī)位置的屬性。
圖4圖示了根據(jù)本公開中所呈現(xiàn)的一個實施例的示例性攝像機(jī)位置和關(guān)聯(lián)的變形圖406。如由圖例408所指示的那樣,攝像機(jī)位置包括輸入攝像機(jī)位置402和中央攝像機(jī)位置404。在這個特定示例中,僅最左邊的輸入視圖的變形圖wa,m_ab將與其對應(yīng)的輸入視圖映射到在其右邊的中央攝像機(jī)位置4041。相比之下,其它變形圖wb,m_ab、wc,m_bc、wd,m_cd分別將與它們對應(yīng)的輸入視圖映射到在它們左邊的中央攝像機(jī)位置4041、4042、4043。
圖5描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的使用在位置p處的輸入視圖來得到用來合成在任意位置q處的視圖的變形圖的偽代碼500。位置p對應(yīng)于圖4中的任一位置a、b、c或d。在偽代碼500中表示為w_pq的變形圖來自于變形圖w_pm,變形圖w_pm將相同的輸入視圖映射到圖4中的中央攝像機(jī)位置m。變形圖w_pq然后被用來根據(jù)在位置p處視圖的紋理(texture)來合成在位置q處視圖的紋理。
在一個實施例中,變形圖樣本被解釋為合成視圖中的二維子像素位置,在子像素位置(x*deltax,y*deltax)處的輸入視圖的色彩樣本被映射到所述二維子像素位置。變形圖樣本在偽代碼中被表示為w_pq[x][y][0]和w_pq[x][y][1]。變形圖還表示輸入視圖的四元組(quad)的色彩樣本到合成視圖中的對應(yīng)四元組的映射。在一個實施例中,輸入視圖的四元組由通過表達(dá)式2所給出的四個位置來定義:
(x*deltax,y*deltay),((x+1)*deltax,y*deltay),
((x+1)*deltax,(y+1)*deltay),and(x*deltax,(y+1)*deltay)(表達(dá)式2)
合成視圖中的對應(yīng)四元組由通過表達(dá)式3所給出的對應(yīng)位置來定義:
(w_pq[x][y][0],w_pq[x][y][1]),(w_pq[x+1][y][0],w_pq[x+1][y][1]),
(w_pq[x+1][y+1][0],w_pq[x+1][y+1][1]),and(w_pq[x][y+1][0],w_pq[x][y+1][1])(表達(dá)式3)
因此,上面所描述的基于四元組的色彩映射過程提供了根據(jù)在位置p處的輸入視圖和變形圖w_pq在位置q處的任意視圖的合成,其中變形圖w_pq得自于變形圖w_pm,而變形圖w_pm得自于由sei消息所提供的解碼的深度樣本和語法元素。取決于實施例,要合成的視圖的位置可不必被置于兩個輸入視圖之間。在視圖確實被置于兩個輸入視圖之間的情況下,那么可以合成視圖的兩個不同版本,包括基于最靠近其左邊的輸入視圖的第一版本,以及基于最靠近其右邊的輸入視圖的第二版本。之后,最終合成視圖可以經(jīng)由預(yù)定義視圖合成技術(shù)(例如,逐像素混合)通過兩個結(jié)果的組合來計算。另一方面,在要合成的視圖未被置于輸入視圖之間的情況下,那么最靠近的輸入視圖可以被用來合成該視圖。
圖6是描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的基于視頻編碼方案的視圖生成方法600的流程圖。如圖所示,方法600在步驟602處開始,其中發(fā)送應(yīng)用102生成基于視頻編碼方案編碼的第一比特流。第一比特流包括視頻、一個或多個量化的變形圖偏移以及由視頻編碼方案所指定的預(yù)定義消息類型的第一消息。第一消息包含含有第一語法元素和第二語法元素的語法元素。每個語法元素被置于在第一消息內(nèi)的任意定義的偏移處。換句話說,對第一語法元素的引用未必意味著第一語法元素相對于第一消息中的其它語法元素是順次第一個。取決于實施例,第一語法元素可以是順次第一個、順次第二個、順次最后一個等。在步驟604處,發(fā)送應(yīng)用102將第一比特流發(fā)送到接收應(yīng)用104。
在步驟606處,接收應(yīng)用104從發(fā)送應(yīng)用接收第一比特流。在步驟608處,接收應(yīng)用104基于在第一消息中包括的第一語法元素將從第一比特流解碼的深度樣本解釋為量化的變形圖偏移的第一預(yù)定義深度格式。在步驟610處,接收應(yīng)用104基于從第一比特流解釋的一個或多個量化的變形圖偏移并且進(jìn)一步基于至少第二語法元素來生成一個或多個變形圖。在步驟612處,接收應(yīng)用104使用圖像域變形并且基于視頻和一個或多個變形圖來生成一個或多個視圖。
圖7是描繪了根據(jù)本公開中所呈現(xiàn)的一個實施例的基于視頻編碼方案的視圖生成方法700的流程圖。如圖所示,方法700在步驟702處開始,其中發(fā)送應(yīng)用生成基于視頻編碼方案編碼的第二比特流。第二比特流包括視頻、一個或多個深度圖以及由視頻編碼方案所指定的預(yù)定義消息類型的第二消息。取決于實施例,在第二比特流中包括的視頻可以與在第一比特流中包括的視頻相同或不同。第二消息包含第一語法元素。第二消息中的第一語法元素指定不同于第一消息中的第一語法元素的深度類型。在步驟704處,發(fā)送應(yīng)用102將第二比特流發(fā)送到接收應(yīng)用104。
在步驟706處,接收應(yīng)用104從發(fā)送應(yīng)用102接收第二比特流。在步驟708處,接收應(yīng)用104基于在第二消息中包括的第一語法元素將從第二比特流解碼的深度樣本解釋為深度圖的第二預(yù)定義格式。在步驟710處,接收應(yīng)用104使用基于深度圖像的渲染并且基于視頻和從第二比特流解釋的一個或多個深度圖來生成一個或多個視圖。
圖8是圖示了根據(jù)本公開中所呈現(xiàn)的一個實施例的視圖生成系統(tǒng)800的組件的框圖。系統(tǒng)800對應(yīng)于圖1的系統(tǒng)100。如圖所示,系統(tǒng)800包括多個客戶端系統(tǒng)852和多個服務(wù)器系統(tǒng)850。多個客戶端系統(tǒng)852經(jīng)由網(wǎng)絡(luò)803而被通信地耦合。在一些實施例中,服務(wù)器系統(tǒng)850還可以經(jīng)由網(wǎng)絡(luò)803或者經(jīng)由除網(wǎng)絡(luò)803以外的網(wǎng)絡(luò)而被通信地耦合。在一個實施例中,網(wǎng)絡(luò)803是連接多個蜂窩電話的自組織網(wǎng)絡(luò)(adhocnetwork)。
在一個實施例中,客戶端系統(tǒng)852可以包括現(xiàn)有的計算機(jī)系統(tǒng),例如,智能電話和其它蜂窩電話、臺式計算機(jī)、服務(wù)器計算機(jī)、膝上型計算機(jī)、平板計算機(jī)、游戲控制臺、手持式或便攜式設(shè)備等等。然而,圖8中所圖示的客戶端系統(tǒng)852僅僅是在其中可以使用本文中所公開的實施例的計算機(jī)系統(tǒng)的示例。本文中所公開的實施例可以被不同地實現(xiàn),而不管計算機(jī)系統(tǒng)是否是復(fù)雜的多用戶計算系統(tǒng),諸如通過高速網(wǎng)絡(luò)連接的個人計算機(jī)、單用戶工作站或缺少非易失性存儲裝置的網(wǎng)絡(luò)設(shè)備的集群。而且,明顯地設(shè)想到的是,本文中所公開的實施例可以使用能夠執(zhí)行本文中所描述的功能的任何設(shè)備或計算機(jī)系統(tǒng)來實現(xiàn)。
如圖所示,每個客戶端系統(tǒng)852和服務(wù)器系統(tǒng)850都包括但不限于處理器804,所述處理器804經(jīng)由總線810從存儲器806和存儲裝置808獲得指令和數(shù)據(jù)。處理器804是執(zhí)行指令、邏輯以及算術(shù)處理的可編程邏輯設(shè)備,并且可以代表一個或多個cpu。存儲器806是足夠大以保持必要的程序和數(shù)據(jù)結(jié)構(gòu)的任何存儲器。存儲器806可以是存儲器設(shè)備中的一個或組合,包括隨機(jī)訪問存儲器、非易失性或備份存儲器(例如,可編程或閃速存儲器、只讀存儲器等)。
如圖所示,存儲器806包括操作系統(tǒng)(“operatingsystem,簡稱為os”)812。操作系統(tǒng)812是用于管理客戶端系統(tǒng)852或服務(wù)器系統(tǒng)850的操作的軟件。os812的示例包括unix、微軟
在一個實施例中,存儲裝置808代表硬盤驅(qū)動器、閃速存儲器設(shè)備、光學(xué)介質(zhì)等等。一般地,存儲裝置808存儲應(yīng)用程序和數(shù)據(jù)以供客戶端系統(tǒng)852使用。此外,存儲器806和存儲裝置808可以被認(rèn)為包括物理上位于別處的存儲器,例如,在經(jīng)由總線810耦合到客戶端系統(tǒng)852或耦合到服務(wù)器系統(tǒng)850的另一計算機(jī)上。客戶端系統(tǒng)852和服務(wù)器系統(tǒng)850包括用于經(jīng)由諸如網(wǎng)絡(luò)803之類的網(wǎng)絡(luò)可操作地連接到彼此的多個網(wǎng)絡(luò)接口。如圖所示,服務(wù)器系統(tǒng)850的存儲裝置8082包括待發(fā)送到客戶端系統(tǒng)852的比特流106。根據(jù)上面所描述的實施例,客戶端系統(tǒng)852的存儲裝置8081包括從服務(wù)器系統(tǒng)850接收到的比特流106。
在一個實施例中,客戶端系統(tǒng)852中的每個都被耦合到顯示設(shè)備814。顯示設(shè)備814可以包括諸如蜂窩電話顯示器、電影院顯示器、監(jiān)視器、觸摸屏顯示器等等之類的輸出設(shè)備。在一些實施例中,每個客戶端系統(tǒng)852還被耦合到輸入設(shè)備816。輸入設(shè)備816可以包括小鍵盤、鍵盤、鼠標(biāo)、控制器等等。
在前面,對本公開中所呈現(xiàn)的實施例進(jìn)行參考。然而,本公開的范圍不限于特定描述的實施例。替代地,以下特征和元素的任何組合,無論與不同的實施例相關(guān)與否,都被設(shè)想成實現(xiàn)并且實踐設(shè)想的實施例。此外,盡管本文中所公開的實施例可以實現(xiàn)優(yōu)于其它可能的解決方案或優(yōu)于現(xiàn)有技術(shù)的優(yōu)點(diǎn),但是特定優(yōu)點(diǎn)是否由給定實施例來實現(xiàn)不限制本公開的范圍。因此,除了在被明確記載在(一個或多個)權(quán)利要求中的情況下,前面的方面、特征、實施例以及優(yōu)點(diǎn)僅僅是說明性的并且不被認(rèn)為是權(quán)利要求的元素或限制。同樣地,除了在被明確記載在(一個或多個)權(quán)利要求中的情況下,對“本發(fā)明”的引用不應(yīng)該被解釋為本文中所公開的任何發(fā)明主題的一般化并且不應(yīng)該被認(rèn)為是權(quán)利要求的元素或限制。
本公開中所呈現(xiàn)的方面可以被體現(xiàn)為系統(tǒng)、方法或計算機(jī)程序產(chǎn)品。因此,本文中所公開的方面可以采取全硬件實施例、全軟件實施例(包括固件、駐留軟件、微代碼等)或組合全部一般可以在本文中被稱為“電路”、“模塊”或“系統(tǒng)”的軟件和硬件方面的實施例的形式。此外,本文中所公開的方面可以采取體現(xiàn)在一個或多個計算機(jī)可讀介質(zhì)中的計算機(jī)程序產(chǎn)品的形式,其中,計算機(jī)可讀介質(zhì)上具有計算機(jī)可讀程序代碼。
可以利用一個或多個計算機(jī)可讀介質(zhì)的任何組合。計算機(jī)可讀介質(zhì)可以是計算機(jī)可讀信號介質(zhì)或者計算機(jī)可讀存儲介質(zhì)。計算機(jī)可讀存儲介質(zhì)可以是例如但不限于電子、磁、光學(xué)、電磁、紅外或半導(dǎo)體系統(tǒng)、裝置或設(shè)備,或前述項的任何適合的組合。計算機(jī)可讀存儲介質(zhì)的更特定示例(非詳盡列表)將包括下列各項:具有一個或多個電線的電氣連接、便攜式計算機(jī)軟盤、硬盤、隨機(jī)訪問存儲器(ram)、只讀存儲器(rom)、可擦可編程只讀存儲器(eprom或閃速存儲器)、光纖、便攜式光盤只讀存儲器(cd-rom)、光學(xué)存儲設(shè)備、磁存儲設(shè)備,或前述項的任何適合的組合。在本公開的上下文中,計算機(jī)可讀存儲介質(zhì)可以是能夠包含或者存儲程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用的或連同指令執(zhí)行系統(tǒng)、裝置或設(shè)備一起使用的任何有形介質(zhì)。
計算機(jī)可讀信號介質(zhì)可以包括具有(例如,在基帶中或者作為載波的一部分的)傳播數(shù)據(jù)信號,在傳播數(shù)據(jù)信號上具有計算機(jī)可讀程序代碼。這樣的傳播信號可以采取各種形式中的任一個,包括但不限于電磁、光學(xué)或其任何適合的組合。計算機(jī)可讀信號介質(zhì)可以是不為計算機(jī)可讀存儲介質(zhì)并且能夠傳送、傳播或者傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備一起使用的任何計算機(jī)可讀介質(zhì)。
在計算機(jī)可讀介質(zhì)上具體化的程序代碼可以使用任何適當(dāng)?shù)慕橘|(zhì)來發(fā)送,所述任何適當(dāng)?shù)慕橘|(zhì)包括但不限于無線、有線線路、光纖電纜、rf等,或前述項的任何適合的組合。
用于執(zhí)行本文中所公開的方面的操作的計算機(jī)程序代碼可以用一個或多個編程語言的任何組合來編寫,所述一個或多個編程語言包括諸如java、smalltalk、c++等等之類的面向?qū)ο缶幊陶Z言和諸如“c”編程語言或類似編程語言之類的常規(guī)過程編程語言。程序代碼可以完全地在用戶的計算機(jī)上、部分地在用戶的計算機(jī)上、作為獨(dú)立軟件包、部分地在用戶的計算機(jī)上并且部分地在遠(yuǎn)程計算機(jī)上、或者完全地在遠(yuǎn)程計算機(jī)或服務(wù)器上執(zhí)行。在后者場景中,遠(yuǎn)程計算機(jī)可以經(jīng)由任何類型的網(wǎng)絡(luò)而被連接到用戶的計算機(jī),所述網(wǎng)絡(luò)包括局域網(wǎng)(lan)或廣域網(wǎng)(wan),或者可以進(jìn)行到外部計算機(jī)的連接(例如,使用因特網(wǎng)服務(wù)提供商通過因特網(wǎng))。
以上參考根據(jù)本文中所公開的實施例的方法、裝置(系統(tǒng))以及計算機(jī)程序產(chǎn)品的流程圖圖示或框圖描述了本公開中所呈現(xiàn)的各方面。應(yīng)當(dāng)理解的是,流程圖圖示或框圖的每個塊和流程圖圖示或框圖中各塊的組合能夠由計算機(jī)程序指令來實現(xiàn)。這些計算機(jī)程序指令可以被提供給通用計算機(jī)、專用計算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器來產(chǎn)生機(jī)制,使得經(jīng)由計算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的指令創(chuàng)建用于實現(xiàn)在流程圖或框圖的一個或多個塊中所指定的功能/行為的手段。
這些計算機(jī)程序指令還可以被存儲在能夠指導(dǎo)計算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備以特定方式起作用的計算機(jī)可讀介質(zhì)中,使得在計算機(jī)可讀介質(zhì)中存儲的指令產(chǎn)生包括實現(xiàn)在流程圖或框圖的一個或多個塊中所指定的功能/行為的指令的制品。
計算機(jī)程序指令還可以被加載到計算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備上以便使一系列操作步驟在計算機(jī)、其它可編程裝置或其它設(shè)備上被執(zhí)行以產(chǎn)生計算機(jī)實現(xiàn)的過程,使得在計算機(jī)或其它可編程裝置上執(zhí)行的指令提供用于實現(xiàn)在流程圖或框圖的一個或多個塊中所指定的功能/行為的過程。
本文中所公開的實施例可以通過云計算基礎(chǔ)設(shè)施而被提供給終端用戶。云計算一般地指的是通過網(wǎng)絡(luò)提供作為服務(wù)的可伸縮計算資源。更正式地,云計算可以被定義為計算能力,所述計算能力提供計算資源與其底層技術(shù)架構(gòu)(例如,服務(wù)器、存儲裝置、網(wǎng)絡(luò))之間的抽象,使得能實現(xiàn)對可配置計算資源的共享池的方便的按需網(wǎng)絡(luò)訪問,可配置計算資源能夠以最少管理努力或服務(wù)提供商交互迅速地被提供和釋放。因此,云計算允許用戶訪問“云”中的虛擬計算資源(例如,存儲裝置、數(shù)據(jù)、應(yīng)用,以及甚至完整的虛擬化計算系統(tǒng)),而不用考慮用來提供計算資源的底層物理系統(tǒng)(或那些系統(tǒng)的位置)。
典型地,云計算資源在按使用次數(shù)付費(fèi)的基礎(chǔ)上被提供給用戶,其中用戶僅針對實際上使用的計算資源(例如,由用戶所消耗的存儲空間的量或由用戶所實例化的虛擬化系統(tǒng)的數(shù)目)被收費(fèi)。用戶能夠在任何時間以及從跨越因特網(wǎng)的任何地方訪問駐留在云中的資源中的任一個。在本公開的上下文中,比特流106可以被存儲在云中,并且發(fā)送應(yīng)用102或接收應(yīng)用104可以附加地在云中執(zhí)行,從而至少在一些情況下提高比特流106的可訪問性。
圖中的流程圖和框圖圖示了根據(jù)本文中所公開的各種實施例的系統(tǒng)、方法以及計算機(jī)程序產(chǎn)品的可能的實施方式的架構(gòu)、功能性以及操作。在這點(diǎn)上,流程圖或框圖中的每個塊可以表示包括用于實現(xiàn)所指定的(一個或多個)邏輯功能的一個或多個可執(zhí)行指令的模塊、段或代碼的一部分。在一些可替代實施方式中,在塊中所指出的功能可以按圖中所指出的次序發(fā)生。例如,取決于所牽涉的功能性,實際上可以基本上同時執(zhí)行相繼地示出的兩個塊,或者有時可以以相反的次序執(zhí)行塊??驁D或流程圖圖示中的每個塊和框圖或流程圖圖示中各塊的組合能夠由執(zhí)行所指定的功能或行為的基于專用硬件的系統(tǒng)、或?qū)S糜布陀嬎銠C(jī)指令的組合來實現(xiàn)。
雖然上文是針對本公開中所呈現(xiàn)的實施例的,但是在不背離設(shè)想的實施例的基本范圍的情況下可以設(shè)計其它和另外的實施例。也就是說,盡管特定實施例和許多特定細(xì)節(jié)被闡述來提供對本公開的更徹底地理解,但是,本領(lǐng)域的技術(shù)人員將理解的是,在不背離本公開的更寬精神和范圍的情況下,可以對其做出各種修改和改變。前面的描述和附圖因此被認(rèn)為是說明性的而不非限制性的。