本發(fā)明涉及確定感興趣區(qū)域(ROI),并且尤其(不過不排它地)涉及一種用于根據(jù)一個(gè)或多個(gè)HEVC拼貼(HEVC-tiled)的視頻流來確定感興趣區(qū)域的方法、一種用于確定和再現(xiàn)所述感興趣區(qū)域的客戶端設(shè)備、一種用來存儲(chǔ)用于確定和再現(xiàn)感興趣區(qū)域的視頻流和數(shù)據(jù)結(jié)構(gòu)的非瞬時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)以及一種使用這種方法的計(jì)算機(jī)程序產(chǎn)品。
背景技術(shù):
在過去幾年中,在相機(jī)和圖像處理技術(shù)上的進(jìn)步不僅能實(shí)現(xiàn)以高得多的分辨率進(jìn)行記錄,而且還能實(shí)現(xiàn)把多個(gè)相機(jī)的輸出縫合在一起(stitch together),允許一起以比8Kx4K高得多的分辨率全360度地記錄的一組相機(jī)。
這些發(fā)展可以改變用戶體驗(yàn)視頻的方式。按照慣例,例如足球比賽的廣播包括由導(dǎo)演小心對(duì)準(zhǔn)和控制的相機(jī)鏡頭的序列。在這種廣播流中,在最終流中的每個(gè)相機(jī)移動(dòng)對(duì)應(yīng)于相機(jī)自身的位置、角度或變焦級(jí)別的物理變化。然而,高分辨率的全景視頻使用戶(和/或?qū)а荩┠軌蚺c所述用戶(和/或?qū)а荩┱^看(執(zhí)導(dǎo))的視頻有某種程度的交互,而不必在物理意義上操縱相機(jī)。使用搖攝-傾斜-變焦(pan-tilt-zoom)交互,可以從高分辨率的全景視頻中提取用戶或?qū)а莞信d趣的視頻的子區(qū)域。此子區(qū)域可以被稱作感興趣區(qū)域(ROI)。
由于在此特定使用情況中具體用戶在任何給定時(shí)刻只觀看完整視頻全景的子集,所以能夠通過只發(fā)送用戶感興趣的視頻的一部分來降低帶寬要求。存在能夠用來實(shí)現(xiàn)這種功能的多種技術(shù)。這些技術(shù)之一是所謂的拼貼(tiled)流送技術(shù),用該技術(shù)把完整視頻全景劃分為多個(gè)獨(dú)立編碼的視頻,由此客戶端使多個(gè)解碼器允許所述客戶端重構(gòu)所述完整視頻全景的任何一部分,如果必要的話通過把多個(gè)這種獨(dú)立的視頻縫合在一起來重構(gòu)。
然而在大部分用戶情況下,用戶與視頻全景連續(xù)地相交互是不必要的甚至是不想要的。例如在足球比賽的情況下,人們能夠想象用戶只在某些時(shí)間點(diǎn)(例如當(dāng)發(fā)生觀眾視線外發(fā)生的犯規(guī)但是導(dǎo)演相反卻決定追隨足球時(shí))才有興趣與視頻交互。然而大部分時(shí)間,用戶可能只是想要追隨導(dǎo)演的指向。在這種情況下,使用拼貼的流送不是用于流送視頻的最高效方法。對(duì)此的一個(gè)原因在于這樣的事實(shí):在編碼方案中使用的時(shí)間和空間預(yù)測并未被優(yōu)化,這是由于它們受貼片(tile)尺寸的限制。第二個(gè)原因是由于任何給定的貼片組幾乎從不確切地包括ROI,所以會(huì)發(fā)送對(duì)重構(gòu)給定ROI來說并非是嚴(yán)格必須的一些附加的像素/宏塊。
在Mavlankar A.等人的文章“用于在線演講觀看的交互式感興趣區(qū)域視頻流送系統(tǒng)(An interactive region-of-interest video streaming system for online lecture viewing)”,分組視頻研討會(huì)(Packet Video Workshop)(PV),2010年第18期國際版,卷,號(hào),第64-71頁,2010年12月13-14日中,描述了‘跟蹤貼片’的概念。此跟蹤貼片是獨(dú)立編碼的視頻,所述獨(dú)立編碼的視頻由視頻全景的連續(xù)更新的裁切組成。通過選擇跟蹤貼片模式,用戶能夠被動(dòng)地追隨視頻全景中某一移動(dòng)的感興趣點(diǎn)(例如在足球比賽中球的位置),而不必親自主動(dòng)地在視頻全景四處導(dǎo)航。人們能夠想象跟蹤貼片在視頻全景內(nèi)的位置類似于如何有規(guī)律地發(fā)生廣播的方式由導(dǎo)演控制或者甚至由自動(dòng)圖像識(shí)別系統(tǒng)控制。
雖然使用跟蹤貼片向用戶提供了在視頻全景四處導(dǎo)航的自由度并且允許它們被動(dòng)地追隨感興趣點(diǎn),但是由Mavlankar等人描述的跟蹤貼片概念沒有提供用于執(zhí)行從追隨跟蹤貼片到用戶自己導(dǎo)航通過全景的無縫轉(zhuǎn)變的能力。如果人們想象用戶正觀看在足球比賽中追隨球的跟蹤貼片,跨過視頻全景移動(dòng),那么用戶可能突然想要向左移動(dòng)多一點(diǎn),例如來查看正發(fā)生的犯規(guī)。
利用Mavlankar等人所描述的跟蹤貼片方案,無縫遷移是不可能的,這是由于系統(tǒng)不知道在給定時(shí)間點(diǎn)跟蹤貼片在視頻全景中的位置。因此用戶將必須親自尋找全景中的特定位置由此破壞了連續(xù)體驗(yàn)。因?yàn)樵佻F(xiàn)和顯示了用戶不感興趣的視頻貼片,所以在跟蹤貼片模式和用戶控制模式之間的切換花費(fèi)了相當(dāng)數(shù)量的時(shí)間,導(dǎo)致了資源浪費(fèi)。
因此,在本領(lǐng)域中需要一種能夠向客戶端高效地流送寬視場圖像區(qū)域的ROI的改進(jìn)方法和系統(tǒng)。此外,在本領(lǐng)域中需要在(在非拼貼模式中)向客戶端根據(jù)單個(gè)流來流送ROI和(在拼貼模式中)向客戶端根據(jù)一個(gè)或多個(gè)分離貼片流來流送ROI之間實(shí)現(xiàn)平滑甚至是無縫的切換。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是減少或消除在現(xiàn)有技術(shù)中已知的至少一個(gè)缺點(diǎn)。在第一方面中,本發(fā)明可以涉及一種用于根據(jù)至少一個(gè)HEVC拼貼的(全景)視頻流確定和/或再現(xiàn)客戶端設(shè)備的感興趣區(qū)域(ROI)的方法。
在一個(gè)實(shí)施例中,所述方法可以包括:優(yōu)選地在客戶端設(shè)備接收ROI視頻流以便再現(xiàn)第一ROI,所述第一ROI定義了在所述HEVC拼貼視頻流的完整圖像區(qū)域內(nèi)的第一子區(qū)域,在所述HEVC拼貼全景視頻中的HEVC貼片的位置由貼片位置信息定義;優(yōu)選地在所述客戶端設(shè)備提供與所述ROI視頻流的至少一個(gè)視頻幀相關(guān)聯(lián)的ROI位置信息,所述ROI位置信息包括所述第一ROI的至少第一位置;優(yōu)選地由所述客戶端設(shè)備根據(jù)所述ROI位置信息和所述貼片位置信息識(shí)別所述HEVC拼貼視頻流的一個(gè)或多個(gè)HEVC貼片,優(yōu)選地識(shí)別與所述第一ROI重疊的一個(gè)或多個(gè)HEVC貼片;并且優(yōu)選地由所述客戶端設(shè)備請(qǐng)求與所述一個(gè)或多個(gè)識(shí)別的HEVC貼片相關(guān)聯(lián)的視頻數(shù)據(jù)以便再現(xiàn)第二ROI,所述第二ROI定義了在所述HEVC拼貼視頻流的完整圖像區(qū)域內(nèi)的第二子區(qū)域。應(yīng)當(dāng)注意,盡管按照?qǐng)?zhí)行所述方法的步驟的客戶端設(shè)備定義了本發(fā)明的最佳方式,不過本發(fā)明也設(shè)想了其中由除客戶端設(shè)備之外的其它實(shí)體執(zhí)行依照本發(fā)明的方法的某些步驟的實(shí)施例。例如如果ROI位置信息和貼片位置信息被提供到除客戶端設(shè)備之外的另一實(shí)體(例如被連接到客戶端設(shè)備的設(shè)備,諸如服務(wù)器計(jì)算機(jī)),那么此另一實(shí)體(另一設(shè)備)可以執(zhí)行如上公開的識(shí)別步驟。
因此,ROI流可以包括HEVC拼貼視頻流的完整圖像區(qū)域的子區(qū)域(ROI)的內(nèi)容(例如視頻數(shù)據(jù))。HEVC拼貼視頻可以是高分辨率或超高分辨率視頻??商鎿Q地,可以從多個(gè)差異視頻(例如不同的相機(jī)角度)形成(構(gòu)成/縫合)HEVC拼貼流。在播放ROI流期間,ROI的位置(在HEVC拼貼流的HEVC拼貼圖像區(qū)域內(nèi)的子區(qū)域的空間位置或方向)可以在時(shí)間上變化。
當(dāng)從根據(jù)非拼貼ROI流(例如常規(guī)的非拼貼MPEG流)再現(xiàn)ROI(ROI流送模式)切換到根據(jù)也被稱為HEVC貼片的一個(gè)或多個(gè)HEVC拼貼流再現(xiàn)ROI(拼貼流送模式)時(shí),包括ROI視頻流的至少一個(gè)圖像幀的位置(即ROI坐標(biāo))的ROI位置信息可以用來確定當(dāng)開始HEVC貼片流模式時(shí)客戶端設(shè)備可以使用(例如請(qǐng)求、獲取和再現(xiàn))的一個(gè)或多個(gè)HEVC貼片的HEVC編碼的視頻數(shù)據(jù)。ROI流(也被稱為ROI視頻流)的ROI的位置可以在幀級(jí)別(即已經(jīng)由客戶端設(shè)備接收的視頻幀)上提供,使得能夠?qū)崿F(xiàn)到拼貼流送模式的平滑或無縫轉(zhuǎn)變。
HEVC標(biāo)準(zhǔn)支持所謂的HEVC貼片。HEVC編碼器可以被配置為把視頻中的視頻幀劃分為所謂的HEVC貼片,其中一個(gè)HEVC貼片是按照CTU的特定分組定義的矩形區(qū)域。HEVC貼片可以把全景視頻的圖像區(qū)劃分為多個(gè)鄰近的矩形區(qū)域,其中所述HEVC貼片的邊界在列和行方向上由HEVC貼片邊界定義。在本申請(qǐng)中,包括HEVC貼片的HEVC編碼的視頻流(也被稱為HEVC流、HEVC視頻或HEVC視頻流)可以被稱作HEVC拼貼的視頻流。HEVC貼片可以被分開地請(qǐng)求和獲取并且因此也被稱為HEVC貼片流。這些HEVC貼片流/ HEVC貼片一起形成HEVC編碼的視頻。
HEVC貼片最初被引入到用于使用多核處理器編碼和解碼視頻數(shù)據(jù)的HEVC標(biāo)準(zhǔn)中,使得可以并行處理(編碼和解碼)HEVC拼貼流中的貼片。HEVC貼片也可以用于只獲取和/或播放HEVC拼貼流的HEVC貼片的子集。
這種子集例如可以涉及全景視頻(HEVC拼貼視頻)的圖像區(qū)(完整圖像區(qū)域)中的/的感興趣區(qū)域(ROI),例如子區(qū)域。在該情況下,HEVC貼片應(yīng)當(dāng)隨時(shí)間推移獨(dú)立地編碼,使得解碼器能夠只解碼在多個(gè)幀上的HEVC貼片的子集。為了產(chǎn)生可獨(dú)立解碼的HEVC貼片的這種組,HEVC標(biāo)準(zhǔn)允許HEVC編碼器被配置為把視頻編碼中的時(shí)間預(yù)測(例如運(yùn)動(dòng)向量和回路濾波器)限制在一個(gè)或多個(gè)HEVC貼片的邊界內(nèi)。使用可以對(duì)每個(gè)HEVC貼片流要求獨(dú)立的解碼器(或解碼器實(shí)例)的其它編解碼器,當(dāng)與在現(xiàn)有技術(shù)中描述的拼貼方案相比較時(shí),由單個(gè)HEVC解碼器處理HEVC貼片就資源而言提供了顯著的優(yōu)點(diǎn)。
在此公開中所描述的貼片概念可以被不同的視頻編解碼器支持。例如,高效率視頻編碼(HEVC)標(biāo)準(zhǔn)允許使用可獨(dú)立地解碼的貼片(HEVC貼片)。HEVC貼片可以由編碼器創(chuàng)建,所述編碼器把媒體流的每個(gè)視頻幀劃分為多個(gè)行和列(“貼片網(wǎng)格”),多個(gè)行和列定義了用編碼樹塊(CTB)的單元表示的預(yù)定義寬度和高度的貼片。HEVC比特流可以包括用于向解碼器通知視頻幀應(yīng)當(dāng)怎樣被劃分成貼片的解碼器信息。解碼器信息可以向解碼器通知依照不同方式的視頻幀的貼片劃分。在一個(gè)變形中,解碼器信息可以包括關(guān)于n乘m個(gè)貼片的均勻網(wǎng)格的信息,其中能夠根據(jù)幀的寬度和CTB尺寸來推導(dǎo)出在網(wǎng)格中的貼片的尺寸。由于四舍五入不準(zhǔn)確,所以并非所有貼片具有精確的相同尺寸。在另一變形中,解碼器信息可以包括關(guān)于貼片的寬度和高度(例如按照編碼樹塊單元)的顯式信息。這樣視頻幀可以劃分成不同尺寸的貼片。只有對(duì)于最后一行和最后一列的貼片,可以根據(jù)剩余的CTB數(shù)目導(dǎo)出尺寸。此后,分組器可以把原始HEVC比特流分組化為由傳輸協(xié)議使用的適當(dāng)?shù)拿襟w容器。
支持獨(dú)立地可解碼的貼片的其它視頻編解碼包括谷歌的視頻編解碼VP9或者在一定程度上包括MPEG-4部分10 AVC/H.264,高級(jí)視頻編碼(AVC)標(biāo)準(zhǔn)。在VP9編碼中,沿著垂直貼片邊界破壞相關(guān)性,這意味著可以同時(shí)解碼在相同的貼片行中的兩個(gè)貼片。類似地,在AVC編碼中,片段(slice)可以用來把每個(gè)幀劃分為多個(gè)行,其中在媒體數(shù)據(jù)是獨(dú)立地可解碼的意義上這些行中的每個(gè)定義了貼片。因此,在此公開中術(shù)語“HEVC貼片”不只局限于依照HEVC標(biāo)準(zhǔn)的貼片,而是一般地定義了在視頻幀的圖像區(qū)域內(nèi)任意形狀和/或維度的子區(qū)域,其中在貼片的邊界內(nèi)的媒體數(shù)據(jù)是獨(dú)立地可解碼的。在其它視頻編因此解碼器中,諸如分段或片段之類的其它術(shù)語可以用于這種獨(dú)立地可解碼區(qū)域。因此應(yīng)當(dāng)進(jìn)一步注意到,本發(fā)明同樣適于供這樣的視頻編解碼使用,所述視頻編解碼不同于HEVC(例如VP9)或是來自HEVC的(將來)衍生物,只要這些編解碼器具有它們適合于編碼視頻的特性,由此用于表示視頻的圖像的不同區(qū)域(子區(qū))能夠在單編碼過程中獨(dú)立地編碼,并且由此獨(dú)立編碼的區(qū)域能夠在單解碼過程中解碼。術(shù)語獨(dú)立地指的是以在這些區(qū)域之間不存在編碼相關(guān)性的方式執(zhí)行編碼的概念。
在實(shí)施例中,所述方法可以進(jìn)一步包括:根據(jù)所述請(qǐng)求的視頻數(shù)據(jù)和所述ROI位置信息來再現(xiàn)所述第二ROI。
在實(shí)施例中,提供ROI位置信息可以進(jìn)一步包括:提供所述ROI視頻流的至少第一圖像幀的第一ROI坐標(biāo),所述第一ROI坐標(biāo)定義在接收用于再現(xiàn)第二ROI的指令的第一時(shí)間實(shí)例時(shí)所述第一ROI的第一位置,所述指令優(yōu)選為用戶發(fā)起的指令。在此實(shí)施例中,由客戶端設(shè)備在例如經(jīng)由用戶交互命令客戶端設(shè)備的時(shí)刻所處理的幀的ROI坐標(biāo)可以用來確定切換到HEVC貼片流模式(即根據(jù)HEVC貼片再現(xiàn)用戶發(fā)起的ROI而不是用于再現(xiàn)預(yù)定(“導(dǎo)演剪切”)的ROI的ROI流)所需要的一個(gè)或多個(gè)HEVC貼片。
在一個(gè)實(shí)施例中,所述指令可以包括用于表明所述第一ROI的位置變化的ROI向量,所述第一ROI坐標(biāo)和所述ROI向量用于識(shí)別所述一個(gè)或多個(gè)HEVC貼片。ROI向量可以關(guān)聯(lián)于確定的用戶交互,例如搖攝、變焦和/或傾斜,并且可以用于選擇適于請(qǐng)求的用戶交互的貼片表示。
在一個(gè)實(shí)施例中,提供所述ROI位置信息可以進(jìn)一步包括:提供所述ROI視頻流的至少第二圖像幀的第二ROI坐標(biāo),所述第二ROI坐標(biāo)定義了在由客戶端設(shè)備處理(例如接收、緩沖和/或解碼)所述ROI視頻流的第二時(shí)間實(shí)例時(shí)的所述第一ROI的第二位置;所述第一和第二ROI坐標(biāo)用于識(shí)別所述一個(gè)或多個(gè)HEVC貼片。在此實(shí)施例中,可以減少由于在請(qǐng)求HEVC貼片流和由客戶端設(shè)備處理所述HEVC貼片流之間的ROI移動(dòng)所導(dǎo)致的不利影響。
在一個(gè)實(shí)施例中,其中請(qǐng)求的視頻數(shù)據(jù)是HEVC編碼的,所述再現(xiàn)所述第二ROI可以包括:根據(jù)請(qǐng)求的HEVC編碼的視頻數(shù)據(jù)來形成解碼的圖像區(qū)域;和可選地從所述解碼的圖像區(qū)域中裁切所述第二ROI。確定的HEVC貼片的視頻數(shù)據(jù)可以用來在圖像區(qū)域中形成第二子區(qū)域。ROI坐標(biāo)可以用來從第二子區(qū)域中創(chuàng)建(裁切)第二ROI,使得到拼貼流送模式的平滑轉(zhuǎn)變被確保。
在一個(gè)實(shí)施例中,提供ROI位置信息可以進(jìn)一步包括:提供與所述ROI視頻流的至少一個(gè)視頻幀相關(guān)聯(lián)的先行位置信息,在所述先行位置信息被提供到所述客戶端設(shè)備的時(shí)刻所述ROI視頻流尚未被所述客戶端設(shè)備接收,所述先行位置信息包括在所述完整圖像區(qū)域中第二ROI的第二位置。
ROI位置信息可以被時(shí)移,使得客戶端設(shè)備可以提前接收ROI位置信息。這樣,即使當(dāng)ROI是非常動(dòng)態(tài)的時(shí)(例如當(dāng)在與ROI相關(guān)聯(lián)的子區(qū)域的HEVC拼貼(全景)視頻的完整圖像區(qū)域內(nèi)的空間定向頻繁變化時(shí)),客戶端也可以請(qǐng)求正確的HEVC貼片流。當(dāng)處理包括動(dòng)態(tài)ROI軌跡的ROI流時(shí),此實(shí)施例是特別有益的。
時(shí)移補(bǔ)償了ROI在請(qǐng)求HEVC貼片流和由客戶端設(shè)備處理HEVC貼片流之間的時(shí)間段期間的移動(dòng)。這樣,由請(qǐng)求的HEVC貼片流形成的子區(qū)域始終包括請(qǐng)求的ROI。
在一個(gè)實(shí)施例中,所述先行位置信息可以包括在尚未被所述客戶端設(shè)備接收的所述ROI視頻流中的一個(gè)或多個(gè)圖像幀的一個(gè)或多個(gè)時(shí)移的第一ROI坐標(biāo),優(yōu)選地所述時(shí)移的第一ROI坐標(biāo)在所述一個(gè)或多個(gè)圖像幀之前被提供到所述客戶端設(shè)備,更優(yōu)選的是所述時(shí)移的ROI坐標(biāo)被進(jìn)一步與用于確定時(shí)移的時(shí)移信息相關(guān)聯(lián),所述時(shí)移信息優(yōu)選為時(shí)間戳。
在一個(gè)實(shí)施例中,所述ROI位置信息的至少一部分在所述ROI視頻流的比特流-優(yōu)選地定義在所述比特流中所述ROI坐標(biāo)的位置的ROI坐標(biāo)標(biāo)志或SEI消息-中被傳輸?shù)娇蛻舳嗽O(shè)備,;
在一個(gè)實(shí)施例中,所述ROI位置信息的至少一部分可以在MPEG傳輸流中-優(yōu)選地在所述MPEG傳輸流中的基本傳輸流中;或者作為在所述MPEG傳輸流中的DVB定義的SAD(同步輔助數(shù)據(jù))分組-被傳輸?shù)娇蛻舳嗽O(shè)備,可選地所述SAD分組包括時(shí)移的ROI坐標(biāo)。
在一個(gè)實(shí)施例中,所述ROI位置信息的至少一部分可以在MPEG-4流中的預(yù)定義框(box)中-優(yōu)選在MPEG-4流的moov、trak和/或stbl框中-傳輸;
在一個(gè)實(shí)施例中,所述ROI位置信息的至少一部分可以作為水印-優(yōu)選作為所述ROI視頻流中的水印-傳輸?shù)剿隹蛻舳嗽O(shè)備。
在一個(gè)實(shí)施例中,所述貼片位置信息的至少一部分在所述HEVC拼貼視頻流中-優(yōu)選在所述HEVC拼貼視頻流的moov或moof框中-被提供到所述客戶端設(shè)備。
在一個(gè)實(shí)施例中,HEVC貼片的視頻數(shù)據(jù)可以作為分開的視頻軌道被存儲(chǔ)在所述記錄區(qū)域中;并且至少一個(gè)基礎(chǔ)軌道包括一個(gè)或多個(gè)提取器,其中提取器指向視頻軌道。
在一個(gè)實(shí)施例中,所述貼片位置信息的至少一部分可以在空間清單文件中被提供到所述客戶端設(shè)備,所述清單文件包括用于定位一個(gè)或多個(gè)遞送節(jié)點(diǎn)的一個(gè)或多個(gè)流標(biāo)識(shí)符,所述遞送節(jié)點(diǎn)被配置為把HEVC拼貼視頻流和/或所述ROI視頻流遞送到所述客戶端設(shè)備。
在一個(gè)實(shí)施例中,可以根據(jù)空間清單文件請(qǐng)求與所述一個(gè)或多個(gè)識(shí)別的HEVC貼片相關(guān)聯(lián)的所述視頻數(shù)據(jù),所述空間清單文件包括至少一個(gè)或多個(gè)HEVC貼片標(biāo)識(shí)符-優(yōu)選為一個(gè)或多個(gè)URL-和所述貼片位置信息;和可選地與一個(gè)或多個(gè)ROI視頻流相關(guān)聯(lián)的一個(gè)或多個(gè)ROI視頻流標(biāo)識(shí)符,優(yōu)選地至少所述一個(gè)或多個(gè)ROI視頻流標(biāo)識(shí)符與用于表明ROI位置信息在時(shí)間上變化的動(dòng)態(tài)指示符相關(guān)聯(lián)。
在一個(gè)實(shí)施例中,可以根據(jù)空間清單文件請(qǐng)求所述HEVC編碼的視頻數(shù)據(jù),所述空間清單文件包括一個(gè)或多個(gè)HEVC貼片表示,每個(gè)HEVC貼片表示與HEVC拼貼視頻流相關(guān)聯(lián),HEVC貼片表示包括與一個(gè)或多個(gè)HEVC拼貼流和/或一個(gè)或多個(gè)HEVC貼片流相關(guān)聯(lián)的一個(gè)或多個(gè)HEVC貼片標(biāo)識(shí)符-優(yōu)選為一個(gè)或多個(gè)URL的至少一部分。每個(gè)HEVC貼片表示可以(例如當(dāng)每個(gè)表示涉及不同的變焦級(jí)別而不是每個(gè)變焦級(jí)別包含相同的完整圖像區(qū)域時(shí))與其自己的HEVC拼貼視頻流相關(guān)聯(lián)和/或(例如如果每個(gè)變焦級(jí)別包含相同的完整圖像區(qū)域的話)與單個(gè)HEVC視頻(文件或流)相關(guān)聯(lián)。
在進(jìn)一步方面中,本發(fā)明可以涉及一種用于再現(xiàn)感興趣區(qū)域(ROI)的客戶端設(shè)備,其中所述客戶端可以被配置為:接收ROI視頻流以便再現(xiàn)第一ROI,所述第一ROI定義在HEVC拼貼視頻流的完整圖像區(qū)域內(nèi)的第一子區(qū)域,在所述HEVC拼貼視頻流中的HEVC貼片的位置由貼片位置信息定義;提供與所述ROI視頻流的至少一個(gè)視頻幀相關(guān)聯(lián)的ROI位置信息,所述ROI位置信息包括所述第一ROI的至少第一位置;根據(jù)所述ROI位置信息和所述貼片位置信息識(shí)別所述HEVC拼貼視頻流的一個(gè)或多個(gè)HEVC貼片,優(yōu)選地與所述第一ROI重疊的一個(gè)或多個(gè)HEVC貼片;并且請(qǐng)求與所述一個(gè)或多個(gè)識(shí)別的HEVC貼片相關(guān)聯(lián)的視頻數(shù)據(jù)-優(yōu)選被包括在一個(gè)或多個(gè)HEVC貼片流中-以便再現(xiàn)第二ROI,所述第二ROI定義在所述HEVC拼貼視頻流的完整圖像區(qū)域內(nèi)的第二子區(qū)域;并且可選地根據(jù)所述請(qǐng)求的視頻數(shù)據(jù)和所述ROI位置信息來再現(xiàn)所述第二ROI。
在另一方面中,本發(fā)明可以涉及一種用于存儲(chǔ)視頻數(shù)據(jù)的非瞬時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述存儲(chǔ)介質(zhì)包括記錄區(qū)域,包括:ROI流的視頻數(shù)據(jù),其中所述ROI定義了所述HEVC拼貼視頻流的完整圖像區(qū)域內(nèi)的子區(qū)域;和在所述完整圖像區(qū)域中的所述子區(qū)域的位置信息-優(yōu)選為坐標(biāo)。
在一個(gè)實(shí)施例中,所述位置信息可以被插入到所述ROI流的比特流-優(yōu)選為定義在所述比特流中所述ROI坐標(biāo)的位置的ROI坐標(biāo)標(biāo)志或SEI消息-中;
在一個(gè)實(shí)施例中,所述視頻數(shù)據(jù)可以作為MPEG傳輸流記錄,其中所述ROI位置信息的至少一部分被包含在所述MPEG傳輸流中。
在一個(gè)實(shí)施例中,所述ROI位置信息可以被包含在所述MPEG傳輸流中作為基本的傳輸流或作為DVB定義的SAD(同步輔助數(shù)據(jù))。在進(jìn)一步實(shí)施例中,所述SAD分組可以包括一個(gè)或多個(gè)時(shí)移的ROI坐標(biāo);
在一個(gè)實(shí)施例中,所述視頻數(shù)據(jù)可以作為MPEG4流記錄,所述ROI位置信息的至少一部分在預(yù)定義框中-優(yōu)選在moov、trak和/或stbl框中-被包含到MPEG4流中;
在實(shí)施例中,所述ROI位置信息的至少一部分可以作為水印被插入到所述視頻數(shù)據(jù)中。
在再又一方面中,本發(fā)明可以涉及一種非瞬時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述非瞬時(shí)性計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu),優(yōu)選為空間清單文件的至少一部分,并且優(yōu)選地適合于供如上所述的客戶端設(shè)備使用,其中所述數(shù)據(jù)結(jié)構(gòu)可以包括:一個(gè)或多個(gè)HEVC貼片表示,每個(gè)HEVC貼片表示代表HEVC拼貼視頻流,HEVC貼片表示包括用于識(shí)別一個(gè)或多個(gè)HEVC貼片的一個(gè)或多個(gè)HEVC貼片標(biāo)識(shí)符,貼片位置信息定義了HEVC拼貼視頻流中HEVC貼片的位置;所述數(shù)據(jù)結(jié)構(gòu)可以進(jìn)一步包括含有ROI位置信息的ROI流的至少一個(gè)ROI流標(biāo)識(shí)符-優(yōu)選為URL,所述ROI流包括用于再現(xiàn)第一ROI的視頻數(shù)據(jù),所述第一ROI定義了在所述HEVC拼貼視頻流的完整圖像區(qū)域內(nèi)的子區(qū)域。作可替換地或另外,所述數(shù)據(jù)結(jié)構(gòu)可以包括ROI位置信息,用于定義在所述HEVC拼貼視頻流的完整圖像區(qū)域內(nèi)的所述子區(qū)域的位置。此選項(xiàng)在這些情況中(其中例如ROI流不包括ROI位置信息)被預(yù)見。在優(yōu)選實(shí)施例中,數(shù)據(jù)結(jié)構(gòu)被配置成根據(jù)HTTP自適應(yīng)流送協(xié)議獲取貼片作為HEVC拼貼流。
本發(fā)明也可以涉及包括軟件代碼部分的計(jì)算機(jī)程序產(chǎn)品,所述軟件代碼部分被配置為當(dāng)在計(jì)算機(jī)的存儲(chǔ)器中運(yùn)行時(shí)執(zhí)行根據(jù)以上權(quán)利要求中任何一個(gè)的方法步驟。
將參考附圖進(jìn)一步說明本發(fā)明,所述附圖示意地示出了依照本發(fā)明的實(shí)施例。應(yīng)當(dāng)理解本發(fā)明不以任何方式局限于這些具體實(shí)施例。
附圖說明
圖1描繪了依照本發(fā)明實(shí)施例的感興趣區(qū)域(ROI)的流送過程。
圖2描繪了依照本發(fā)明實(shí)施例的ROI流送過程。
圖3描繪了依照本發(fā)明實(shí)施例的用在ROI流送過程中的HEVC編碼的MPEG文件的數(shù)據(jù)格式。
圖4示意地描繪了依照本發(fā)明實(shí)施例的用于產(chǎn)生ROI流和相關(guān)聯(lián)的拼貼內(nèi)容的過程。
圖5示意地描繪了依照本發(fā)明一個(gè)實(shí)施例的用于管理ROI流送過程的數(shù)據(jù)結(jié)構(gòu)。
圖6描繪了依照本發(fā)明實(shí)施例的用于管理ROI流送過程的空間清單文件。
圖7描繪了依照本發(fā)明實(shí)施例的用于管理ROI流送過程的空間清單文件。
圖8A和8B描繪了依照本發(fā)明實(shí)施例的用于管理ROI流送過程的空間清單文件。
圖9描繪了依照本發(fā)明實(shí)施例的被配置為根據(jù)空間清單文件再現(xiàn)ROI流的客戶端設(shè)備。
圖10A和10B描繪了依照本發(fā)明實(shí)施例的用于再現(xiàn)ROI流的過程的示意圖。
圖11A和11B描繪了依照本發(fā)明實(shí)施例的ROI流送過程的流程圖。
圖12A和12B描繪了依照本發(fā)明實(shí)施例的用于在非拼貼ROI流送模式和拼貼ROI流送模式之間的無縫切換的過程的示意圖。
圖13A和13B描繪了依照本發(fā)明另一實(shí)施例的用于在非拼貼ROI流送模式和拼貼ROI流送模式之間的無縫切換的過程的示意圖。
圖14描繪了依照本發(fā)明的各個(gè)實(shí)施例的ROI數(shù)據(jù)格式。
圖15描繪了依照本發(fā)明實(shí)施例的用于在MPEG傳輸流中傳輸ROI數(shù)據(jù)作為基本流的數(shù)據(jù)格式。
圖16A和16B描繪了用于在MPEG流的編碼比特流中傳輸ROI數(shù)據(jù)的數(shù)據(jù)格式。
圖17A和17B描繪了用于在MPEG-4流的新框中傳輸ROI數(shù)據(jù)的數(shù)據(jù)格式。
圖18描繪了用于傳輸ROI數(shù)據(jù)作為MPEG-4流的元數(shù)據(jù)軌道的數(shù)據(jù)格式。
圖19A和19B描繪了依照本發(fā)明實(shí)施例的用于拼貼流送的空間緩沖器的使用。
圖20描述了依照本發(fā)明實(shí)施例的三模式ROI流送模型。
圖21是圖示可以用在參考圖1-20所描述的系統(tǒng)和方法中的示例性數(shù)據(jù)處理系統(tǒng)的框圖。
具體實(shí)施方式
圖1描繪了依照本發(fā)明實(shí)施例的感興趣區(qū)域(ROI)的流送過程。在本申請(qǐng)中,ROI被定義為圖像區(qū)域100(例如源視頻的寬視場(全景)圖像區(qū)域)的子區(qū)域106、110??梢愿鶕?jù)(例如組合)一個(gè)或多個(gè)高分辨率的視頻文件來形成源視頻,所述高分辨率的視頻文件可以具有寬視場、不同的相機(jī)位置、不同的相機(jī)角度、3D等??梢愿鶕?jù)ROI坐標(biāo)103定義ROI在圖像區(qū)域100內(nèi)的位置和尺寸。如圖1所示,ROI可以追隨ROI軌跡,其中第一ROI在圖像區(qū)域內(nèi)的第一位置106的第一時(shí)間實(shí)例處以及在第二位置110的第二時(shí)間實(shí)例處。
可以使用跟蹤算法或攝影師預(yù)先選擇ROI??梢酝ㄟ^從源視頻的解碼幀的圖像區(qū)域中裁切ROI并且在例如MPEG和/或DVB編碼流的獨(dú)立流中編碼裁切區(qū)域來產(chǎn)生流。此流可以被稱作ROI流107。裁切區(qū)域的坐標(biāo)可以被稱作ROI坐標(biāo)。例如,源視頻可以涉及足球比賽的高分辨率的、寬視場(全景)視頻,并且可以通過從源視頻的解碼幀中裁切與球相關(guān)聯(lián)的ROI來根據(jù)源視頻產(chǎn)生ROI流。
可替換地,ROI流可以作為例如源自追隨球的廣播相機(jī)的獨(dú)立流產(chǎn)生。在該情況下,圖像處理器可以使用公知的圖像識(shí)別和跟蹤算法,以便使廣播視頻的(有限)視場與源視頻的寬視場圖像區(qū)域的特定子區(qū)域(ROI)相關(guān)。這樣,圖像處理器可以使所謂的ROI坐標(biāo)與ROI流中的幀相關(guān)。
在一個(gè)實(shí)施例中,可以使用諸如DVB之類的廣播技術(shù)或多播技術(shù)來傳送ROI流。在另一實(shí)施例中,可以根據(jù)諸如HTTP自適應(yīng)流送(HTTP Adaptive Streaming)(HAS)之類的自適應(yīng)流送協(xié)議向客戶端傳送ROI流。為了那個(gè)目的,清單文件108可以定義用于定位一個(gè)或多個(gè)遞送節(jié)點(diǎn)的分段標(biāo)識(shí)符,例如URL(的一部分),所述遞送節(jié)點(diǎn)被配置為向客戶端遞送分段。自適應(yīng)流送協(xié)議的例子包括蘋果HTTP實(shí)況流送(Apple HTTP Live Streaming) [ http://tools.ietf.org/html/draft-pantos-http-live-streaming-13]、微軟平滑流送( Microsoft Smooth Streaming)[http://www.iis.net/download/SmoothStreaming]、Adobe HTTP動(dòng)態(tài)流送(Adobe HTTP Dynamic Streaming )[http://www.adobe.com/products/httpdynamicstreaming]、3GPP-DASH [TS 26.247透明端到端分組交換流送業(yè)務(wù)(Transparent end-to-end Packet-switched Streaming Service)(PSS);HTTP上漸進(jìn)式下載和動(dòng)態(tài)自適應(yīng)流送(Progressive Download and Dynamic Adaptive Streaming over HTTP)]和HTTP上MPEG動(dòng)態(tài)自適應(yīng)流送(MPEG Dynamic Adaptive Streaming over HTTP)[ MPEG DASH ISO/IEC 23001-6]。HTTP允許用于向客戶端遞送視頻流(和分段)的高效、防火墻友好的和可擴(kuò)展的方案。在一個(gè)實(shí)施例中,可以使用HEVC編解碼器編碼ROI流。
在以上的例子中,當(dāng)形成ROI流時(shí)可以確定ROI位置信息112。ROI位置信息定義了在源視頻的寬視場圖像區(qū)域內(nèi)ROI視頻的(有限視場)圖像區(qū)域的位置。因此,ROI視頻的視頻幀可以定義在源視頻的視頻幀的圖像區(qū)域內(nèi)的子區(qū)域。ROI位置信息可以包括用于定義在源視頻的圖像區(qū)域內(nèi)的ROI的位置和尺寸的ROI坐標(biāo)。在一個(gè)實(shí)施例中,對(duì)于ROI流中的每個(gè)幀(或每組幀),可以產(chǎn)生ROI位置信息(ROI坐標(biāo))。在播放ROI流期間,ROI的位置可以在源視頻的完整圖像區(qū)域內(nèi)移動(dòng)。在播放ROI流期間,ROI坐標(biāo)可以在時(shí)間上變化由此形成ROI坐標(biāo)流。ROI坐標(biāo)流可以定義在源視頻的圖像區(qū)域內(nèi)的空間軌跡。
在一個(gè)實(shí)施例中,ROI位置信息可以包括ROI坐標(biāo)流,ROI坐標(biāo)流可以與ROI流(同步)被發(fā)送到客戶端。ROI位置信息可以在獨(dú)立的通信信道中被發(fā)送到客戶端??商鎿Q地,ROI位置信息可以作為視頻幀的傳輸容器的一部分被傳輸?shù)娇蛻舳?。在下面將更詳?xì)地描述例子。
在圖1中圖示了在源視頻的圖像區(qū)域內(nèi)ROI在時(shí)間上的軌跡。(用于表示ROI的)第一子區(qū)域可以在與第一ROI坐標(biāo)和第一ROI尺寸相關(guān)聯(lián)的第一ROI位置106處的第一時(shí)間實(shí)例處開始,并且一段時(shí)間之后子區(qū)域可以移到與第二ROI坐標(biāo)和第二ROI尺寸相關(guān)聯(lián)的第二ROI位置110。在軌跡期間,ROI可以變焦到源視頻的圖像區(qū)域的預(yù)定部分中。因此,在圖1中所描繪的ROI在其在源文件的圖像區(qū)域內(nèi)的位置及其相對(duì)于源文件的圖像區(qū)域的尺寸可以在時(shí)間上變化的意義上是動(dòng)態(tài)ROI。
在圖1中所描繪的流—第一(源)流和第二(ROI)流—可以使用諸如HTTP自適應(yīng)流送(HAS)協(xié)議之類的自適應(yīng)流送協(xié)議被遞送到客戶端以便播放。在該情況中,可以在特殊數(shù)據(jù)結(jié)構(gòu)中描述在第一(ROI)視頻流和第二(寬視場)視頻流之間的空間關(guān)系,所述特殊數(shù)據(jù)結(jié)構(gòu)以下將被稱作空間清單文件(spatial manifest file)( SMF)。所述SMF可以包括流標(biāo)識(shí)符(例如URL(的一部分)),客戶端可以使用所述流標(biāo)識(shí)符以便定位和訪問一個(gè)或多個(gè)遞送節(jié)點(diǎn)(例如媒體服務(wù)器),所述遞送節(jié)點(diǎn)能夠向客戶端傳送所述流。除流標(biāo)識(shí)符之外,所述清單文件還可以包括位置信息,位置信息描述了在參考系統(tǒng)內(nèi)的視頻流的圖像區(qū)域的空間關(guān)系。
典型情況下,客戶端設(shè)備具有有限的再現(xiàn)和帶寬能力,并且因此可能不能接收并再現(xiàn)高分辨率質(zhì)量的源視頻的完整圖像區(qū)域??梢酝ㄟ^使用所謂的拼貼流送技術(shù)來解決此問題的至少一部分,其中源流(通常為全景視頻流)在空間上被劃分為一組貼片流。然后貼片流通常被分開地編碼,并且并非源于源視頻的單個(gè)編碼過程??蛻舳丝梢酝ㄟ^請(qǐng)求全景視頻的貼片流的子集來重構(gòu)源流的任何一部分。因?yàn)樵诂F(xiàn)有技術(shù)的編碼方案中這些貼片流被獨(dú)立地編碼,所以當(dāng)接收這些(編碼的)貼片流時(shí),在能夠向用戶顯示視頻數(shù)據(jù)之前客戶端需要使用多個(gè)解碼器實(shí)例來解碼所述貼片流并且把解碼的貼片流的視頻數(shù)據(jù)縫合在一起。
然而用于一個(gè)客戶端的多個(gè)解碼器實(shí)例的使用付出了大量處理器資源的代價(jià)。特別是當(dāng)使用大量貼片時(shí),客戶端進(jìn)程變得很復(fù)雜并且極其資源密集。可以通過使用HEVC視頻壓縮標(biāo)準(zhǔn)解決此問題。
圖2描繪了依照本發(fā)明實(shí)施例的ROI流送過程,其中源文件(視頻)可以被編碼為HEVC拼貼流。
在HEVC中,視頻幀被劃分為所謂的編碼樹單元(coding tree units) CTU),它是在用于解碼過程的HEVC標(biāo)準(zhǔn)中的基本處理單元。此外,HEVC編碼器可以被配置為把HEVC流中的視頻幀200劃分為所謂的HEVC貼片201,其中HEVC貼片是按照CTU的特定分組定義的矩形區(qū)。HEVC貼片可以例如把全景視頻的圖像區(qū)域劃分為多個(gè)鄰近的矩形區(qū)域(矩形區(qū)域可以具有不同的尺寸),其中所述HEVC貼片的邊界在列和行方向上由HEVC貼片邊界定義。在本申請(qǐng)中,包括一個(gè)或多個(gè)HEVC貼片的HEVC編碼的視頻流可以被稱作HEVC拼貼流。
HEVC貼片被引入到HEVC編解碼器中以用于(使用多核處理器)并行編碼和解碼視頻數(shù)據(jù),使得可以實(shí)現(xiàn)視頻數(shù)據(jù)的高效處理。這樣,可以使用單個(gè)HEVC解碼器高效地解碼HEVC拼貼視頻。另外,HEVC貼片也可以用于只播放在HEVC拼貼流中所包含的HEVC貼片的子集。
為了那個(gè)目的,HEVC標(biāo)準(zhǔn)允許與每個(gè)HEVC貼片相關(guān)聯(lián)的空間和時(shí)間約束的信令以便確保編碼和解碼過程的總獨(dú)立性。特別地是,HEVC標(biāo)準(zhǔn)允許把視頻編碼中公知的空間和時(shí)間預(yù)測(例如運(yùn)動(dòng)向量和回路濾波器)限制在HEVC貼片的邊界內(nèi)。使用這些空間和時(shí)間約束,與HEVC貼片能夠被流送客戶端各個(gè)地存儲(chǔ)和訪問相比,HEVC編碼器可以被配置為產(chǎn)生可獨(dú)立解碼的HEVC貼片。
在HEVC拼貼流中的HEVC貼片的位置可以由貼片位置信息205確定,貼片位置信息205可以根據(jù)坐標(biāo)系203來定義。因此,HEVC貼片的位置指的是在HEVC拼貼流的完整圖像區(qū)域(區(qū))內(nèi)貼片的圖像區(qū)(子區(qū)域)的空間位置或定向。
在HEVC流的圖像區(qū)域中的一個(gè)或多個(gè)移動(dòng)的ROI 206、210的位置可以依照參考圖1所描述的類似方式由ROI位置信息212定義。ROI位置信息可以在時(shí)間上改變,由此定義了在源文件的圖像區(qū)域內(nèi)的移動(dòng)ROI的軌跡。也可以使用用于定義貼片位置信息的坐標(biāo)系以便如參考圖1所詳細(xì)描述的那樣確定在ROI流中ROI的ROI坐標(biāo)。在圖像區(qū)域涉及2D或3D圖像區(qū)域的情況下,可以使用笛卡兒坐標(biāo)系??商鎿Q地,在圖像區(qū)域涉及彎曲圖像區(qū)域的情況下,可以使用其它非笛卡爾的曲線坐標(biāo)系,例如柱面、球面或極坐標(biāo)系。
在一個(gè)實(shí)施例中,HEVC編碼器可以被配置為用于產(chǎn)生與HEVC拼貼視頻流相關(guān)聯(lián)的HEVC貼片202,以致HEVC貼片能夠被獨(dú)立地存儲(chǔ)并且被HEVC解碼器獨(dú)立地解碼。例如,圖3描繪了依照本發(fā)明實(shí)施例的在ROI流送過程中可以使用的HEVC拼貼MPEG文件或流302的數(shù)據(jù)格式300的例子。在一個(gè)實(shí)施例中,與(在HEVC貼片流中所包括的)HEVC貼片相關(guān)聯(lián)的獨(dú)立可編碼的視頻數(shù)據(jù)可以作為軌道304-312存儲(chǔ)。特別地是,與HEVC貼片相關(guān)聯(lián)的視頻數(shù)據(jù)314可以作為所謂的(HEVC)貼片軌道306-312存儲(chǔ)。
當(dāng)產(chǎn)生用于貼片軌道的視頻數(shù)據(jù)時(shí),把用于視頻編碼的空間和時(shí)間預(yù)測(例如運(yùn)動(dòng)向量和環(huán)路濾波器)完全保持在一個(gè)HEVC貼片的邊界內(nèi)。這樣,在視頻幀中的一個(gè)HEVC貼片的視頻數(shù)據(jù)和所述視頻幀中的其它HEVC貼片的視頻數(shù)據(jù)之間不存在空間解碼相關(guān)性。另外,在視頻幀中的一個(gè)HEVC貼片的視頻數(shù)據(jù)和較早視頻幀中的其它HEVC貼片的視頻數(shù)據(jù)之間也不存在空間解碼相關(guān)性。
在一個(gè)實(shí)施例中,貼片軌道可以進(jìn)一步包括貼片位置信息316。解碼器可以使用貼片位置信息以便確定它需要從HEVC流中提取哪個(gè)軌道來用于解碼。在一個(gè)實(shí)施例中,軌道中的貼片位置信息可以包括貼片來原點(diǎn)和貼片尺寸信息(例如寬度和高度參數(shù))以便如參考圖1和2所描述的那樣在由坐標(biāo)系所定義的參考空間中安置所述貼片。
在一個(gè)實(shí)施例中,圖3的數(shù)據(jù)格式300可以包括所謂的基礎(chǔ)軌道304。所述基礎(chǔ)軌道可以包括提取器318,其中提取器定義了對(duì)一個(gè)或多個(gè)相應(yīng)貼片軌道的參考。通過解析基礎(chǔ)軌道,解碼器可以利用它涉及的貼片軌道的音頻和/或視頻數(shù)據(jù)來代替提取器。如果特定的視頻應(yīng)用不要求特定的貼片,那么解碼器可以簡單地忽略其相應(yīng)的提取器。如果沒有接收或獲取特定軌道的視頻數(shù)據(jù)。這種軌道的不存在可以被HEVC解碼器解釋為“缺失數(shù)據(jù)”。因?yàn)镠EVC貼片可以獨(dú)立于其它HEVC貼片被解碼,因此來自一個(gè)或多個(gè)軌道的數(shù)據(jù)的不存在(“缺失數(shù)據(jù)”)并不阻止解碼器解碼能夠獲取的其它軌道。
在一個(gè)實(shí)施例中,圖3的數(shù)據(jù)格式可以進(jìn)一步包括ROI軌道,所述ROI軌道包括ROI位置信息,例如在HEVC拼貼流的完整圖像區(qū)域內(nèi)ROI流的(有限視場)圖像區(qū)域的ROI坐標(biāo)。ROI位置信息可以包括ROI坐標(biāo), ROI坐標(biāo)可以根據(jù)與HEVC拼貼流的完整圖像區(qū)域相關(guān)聯(lián)的坐標(biāo)系103來定義。在進(jìn)一步實(shí)施例中,ROI軌道可以包括ROI的視頻數(shù)據(jù)。
也可以使用在圖3中所描繪的數(shù)據(jù)格式以便存儲(chǔ)HEVC拼貼流的HEVC貼片作為獨(dú)立的HEVC貼片流,以致在客戶端設(shè)備中的客戶端可以使用SMF以便分別地向遞送節(jié)點(diǎn)(例如媒體服務(wù)器)請(qǐng)求HEVC貼片流。為了那個(gè)目的,SMF可以包括一個(gè)或多個(gè)貼片標(biāo)識(shí)符(例如URI或URL的至少一部分)。貼片標(biāo)識(shí)符可以由客戶端用來定位一個(gè)或多個(gè)遞送節(jié)點(diǎn)(例如一個(gè)或多個(gè)媒體服務(wù)器或CDN),一個(gè)或多個(gè)遞送節(jié)點(diǎn)被配置為存儲(chǔ)和遞送HEVC拼貼視頻數(shù)據(jù)。包括一個(gè)HEVC貼片的HEVC拼貼流可以被稱作HEVC貼片流。
在圖2中所描繪的HEVC貼片流和ROI流可以被遞送到客戶端設(shè)備以便使用諸如HTTP自適應(yīng)流送(HAS)協(xié)議之類的自適應(yīng)流送協(xié)議來播放。為了那個(gè)目的,HEVC貼片流可以在時(shí)間上被劃分成預(yù)定時(shí)段的時(shí)間分段。因此,在該情況下SMF可以進(jìn)一步包括與HEVC拼貼流相關(guān)聯(lián)的時(shí)間分段標(biāo)識(shí)符,使得客戶端設(shè)備可以向網(wǎng)絡(luò)中的一個(gè)或多個(gè)遞送節(jié)點(diǎn)順序地請(qǐng)求HEVC拼貼流的時(shí)間分段。在空間清單文件(SMF)204中可以定義在第一(ROI)視頻流和一個(gè)或多個(gè)HEVC拼貼視頻流之間的時(shí)間和空間關(guān)系。在MPEG-DASH流送協(xié)議的情況下,清單文件也可以被稱作媒體呈現(xiàn)描述(MPD)。
SMF可以包括一個(gè)或多個(gè)HEVC流標(biāo)識(shí)符、一個(gè)或多個(gè)ROI流標(biāo)識(shí)符和/或一個(gè)或多個(gè)HEVC貼片標(biāo)識(shí)符。SMF可以進(jìn)一步包括用于在特定的坐標(biāo)系內(nèi)描述在一個(gè)或多個(gè)ROI流和一個(gè)或多個(gè)HEVC流之間的空間關(guān)系的位置信息。在另一實(shí)施例中,位置信息可以進(jìn)一步包括用于在坐標(biāo)系內(nèi)描述在一個(gè)或多個(gè)HECV貼片之間的空間關(guān)系的信息。關(guān)于HEVC貼片的空間信息也可以被稱作貼片位置信息。在下面參考圖5-8描述了依照本發(fā)明的各個(gè)實(shí)施例的空間清單文件的更詳細(xì)例子。
可以產(chǎn)生一個(gè)源文件的不同的HEVC貼片表示或—簡言之—貼片表示(用于表示例如貼片尺寸、2D和3D格式、不同的視頻和/或音頻質(zhì)量(例如SD/HD/UHD,比特率等)、不同的分辨率、不同的視場、相機(jī)角度等)。對(duì)于每個(gè)貼片表示,源文件的視頻幀可以被編碼到包括預(yù)定數(shù)目的(優(yōu)選獨(dú)立地)可解碼的HEVC貼片的HEVC拼貼視頻文件(HEVC拼貼視頻文件也被稱為HEVC拼貼視頻流,因?yàn)樗鼘?shí)質(zhì)上包含可以被流送到客戶端設(shè)備的HEVC編碼的視頻數(shù)據(jù))中,其中每個(gè)HEVC貼片201可以表示HEVC拼貼視頻文件的完整圖像區(qū)域的子區(qū)域??梢允褂肏EVC編碼器以便根據(jù)源文件的視頻幀產(chǎn)生包括HEVC貼片的HEVC編碼的MPEG流。
根據(jù)(包括HEVC貼片的坐標(biāo)的)貼片位置信息和(包括ROI流的ROI坐標(biāo)的)ROI位置信息,客戶端設(shè)備可以請(qǐng)求HEVC貼片流或多個(gè)HEVC貼片流,HEVC貼片流或多個(gè)HEVC貼片流可以由客戶端設(shè)備用來構(gòu)造包括第一子區(qū)域(ROI)的子區(qū)域。特別地是,空間鄰接的HEVC貼片可以由解碼器用來構(gòu)造優(yōu)選包括ROI流的ROI的子區(qū)域。
例如,如圖2所示,在第一時(shí)間實(shí)例,ROI坐標(biāo)定義了與四個(gè)HEVC貼片(在這種情況下為在位置(1,0)、(1,1)、(2,0)和(2,1)的HEVC貼片)重疊的第一ROI 206。這四個(gè)HEVC貼片可以形成在包括在第一時(shí)間實(shí)例的ROI的HEVC拼貼全景流的圖像區(qū)域內(nèi)的第二子區(qū)域。類似地,在第二時(shí)間實(shí)例,ROI坐標(biāo)可以定義與兩個(gè)HEVC貼片(在這種情況下為在位置(0,2)和(1,2)的HEVC貼片)重疊的第二ROI 210。這兩個(gè)HEVC貼片可以形成在包括第二時(shí)間實(shí)例的ROI的HEVC拼貼全景流內(nèi)的第二子區(qū)域。此方案可以用來從ROI流平滑地切換到拼貼流。
如下面更詳細(xì)地描述,用戶可以使用用戶接口(例如觸摸屏或指向設(shè)備)與顯示的圖像區(qū)域相交互并且(例如根據(jù)搖攝、變焦、傾斜操作)操縱顯示的內(nèi)容。響應(yīng)于此用戶交互,接口可以產(chǎn)生讓客戶端設(shè)備開始根據(jù)HEVC拼貼流再現(xiàn)用戶請(qǐng)求的ROI的指令。因此,用戶可以移動(dòng)和/或擴(kuò)展ROI以及——作為響應(yīng)——適當(dāng)?shù)馁N片表示,可以選擇在該貼片表示內(nèi)的HEVC拼貼流和所述HEVC拼貼流的一個(gè)或多個(gè)HEVC貼片以便形成鄰近的HEVC貼片的區(qū)域,在該區(qū)域中定位ROI。如果與貼片相關(guān)聯(lián)的視頻數(shù)據(jù)已經(jīng)存在于客戶端設(shè)備,那么在所述視頻數(shù)據(jù)能夠用于再現(xiàn)ROI之前,所述貼片不必作為HEVC貼片流被流送到客戶端設(shè)備。如果這些數(shù)據(jù)不存在,那么在再現(xiàn)ROI之前它們首先被作為一個(gè)或多個(gè)HEVC貼片流流送。再現(xiàn)用戶選擇的ROI的此模式可以被稱作拼貼流送模式。
因此,從以上可以看出:1)用戶可以根據(jù)ROI流在第一模式(在((非拼貼)ROI流送模式)中觀看確定場景(如參考圖1所描述),其中ROI流可以例如作為MPEG流被遞送到客戶端設(shè)備;和2)用戶可以根據(jù)HEVC拼貼流在第二模式(拼貼流送模式)中觀看相同的場景、場景的細(xì)節(jié)或場景周圍的區(qū)域(如參考圖2所描述)。如圖1和2所示,根據(jù)ROI位置信息,即與ROI流相關(guān)聯(lián)的ROI坐標(biāo),來實(shí)現(xiàn)從ROI流送模式到拼貼流送模式的轉(zhuǎn)變(以及反過來)。
在默認(rèn)流送模式、(非拼貼)ROI流送模式中客戶端可以使用ROI流,其中客戶端設(shè)備再現(xiàn)廣播、多播或單播ROI流。HEVC拼貼流可以由客戶端用來再現(xiàn)ROI,所述ROI可以由用戶使用客戶端設(shè)備的用戶接口(UI)操縱。當(dāng)在ROI流送模式中客戶端正再現(xiàn)ROI流時(shí),客戶端根據(jù)ROI位置信息將知道在源視頻的完整圖像區(qū)域內(nèi)ROI的位置。與ROI流相關(guān)聯(lián)的ROI位置信息可以由客戶端用來平滑地甚至無縫地切換到拼貼流送模式。
圖4示意地描繪了依照本發(fā)明實(shí)施例的用于產(chǎn)生ROI流和相關(guān)聯(lián)的HEVC拼貼流的過程。在此例子中,一個(gè)或多個(gè)相機(jī)402,例如一個(gè)或多個(gè)高分辨率的、寬視場相機(jī),可以用來產(chǎn)生或構(gòu)成源視頻,通常為全景視頻。HEVC編碼器404可以用來根據(jù)源視頻產(chǎn)生一個(gè)或多個(gè)HEVC拼貼流408。HEVC拼貼流可以定義源視頻的不同貼片表示409,其中在SMF 410中可以定義關(guān)于HEVC拼貼流、在每個(gè)HEVC拼貼流中的HEVC貼片的信息以及在一些實(shí)施例中在HEVC拼貼流中的分段的時(shí)間關(guān)系。
源視頻可以被進(jìn)一步遞送到ROI流產(chǎn)生器412。ROI流產(chǎn)生器被配置為通過搖攝和變焦源幀的幀的圖像區(qū)域來選擇ROI(例如具有特定活動(dòng)的區(qū)域),以及通過從視頻幀中裁切ROI并且根據(jù)裁切的圖像區(qū)域構(gòu)建新的視頻流(ROI流414)產(chǎn)生ROI流??梢允褂盟惴ɑ蛴糜谶x擇ROI的操作員來自動(dòng)地選擇ROI,所述算法例如用于跟蹤圖像中的特定對(duì)象的跟蹤算法。在ROI流的產(chǎn)生期間,可以收集ROI的坐標(biāo)作為ROI位置信息418。ROI位置信息可以作為ROI流中的元數(shù)據(jù)或作為獨(dú)立的數(shù)據(jù)文件被發(fā)送到客戶端。如果在獨(dú)立的流中發(fā)送ROI位置信息,那么ROI位置信息可以包括用于把例如ROI坐標(biāo)的ROI位置信息鏈接到ROI流中的幀的信息(例如幀數(shù))。在進(jìn)一步實(shí)施例中,ROI流可以被配置為在時(shí)間上分段的流以用于自適應(yīng)流送。在該情況下,可以在ROI清單文件416中定義ROI流的分段。
在一個(gè)實(shí)施例中,ROI流不是根據(jù)源文件(例如通過裁切)形成,而是獨(dú)立的廣播相機(jī)的直接輸出,即廣播流,獨(dú)立的廣播相機(jī)捕獲參考圖1所描述的源視頻中所包含的相同場景的一部分。
組合器420可以在把ROI流發(fā)送到遞送網(wǎng)絡(luò)422之前把ROI流與一個(gè)或多個(gè)HEVC拼貼流408組合。把ROI流與HEVC拼貼流組合可以包括形成SMF,SMF包括關(guān)于HEVC拼貼流和ROI流的信息兩者。在一個(gè)實(shí)施例中,組合器可以把ROI流標(biāo)識(shí)符(例如URI或URL的至少一部分)以及在一些實(shí)施例中與ROI流的時(shí)間分段相關(guān)聯(lián)的清單文件插入到SMF中。
一個(gè)或多個(gè)HEVC拼貼流(可選地作為獨(dú)立的HEVC貼片流的集合)和ROI流可以存儲(chǔ)在網(wǎng)絡(luò)中的一個(gè)或多個(gè)遞送節(jié)點(diǎn)4261,2,其中遞送節(jié)點(diǎn)被配置為把一個(gè)或多個(gè)HEVC拼貼流的至少一部分(例如一個(gè)或多個(gè)HEVC貼片流)和/或ROI流遞送到(移動(dòng))客戶端設(shè)備中的客戶端428。
在一個(gè)實(shí)施例中,遞送節(jié)點(diǎn)可以是媒體服務(wù)器。在另一實(shí)施例中,至少一部分遞送節(jié)點(diǎn)(有時(shí)也被稱為代理節(jié)點(diǎn))可以是專用內(nèi)容遞送網(wǎng)絡(luò)(CDN)一部分。在該情況下,HEVC拼貼流和ROI流可以被內(nèi)容遞送網(wǎng)絡(luò)控制功能424(CDNCF)攝取。CDNCF然后在不同的遞送節(jié)點(diǎn)上分送HEVC拼貼流和ROI流,以便確保流的高效分發(fā)。在一個(gè)實(shí)施例中,CDN可以更新貼片(和分段)標(biāo)識(shí)符(URL),以致客戶端可以高效地訪問CDN的遞送節(jié)點(diǎn)以便請(qǐng)求(拼貼的)內(nèi)容的遞送。
當(dāng)客戶端設(shè)備的客戶端428想要訪問ROI和/或HEVC拼貼流時(shí),它可以從內(nèi)容提供者或CDN接收SMF并且使用所述SMF請(qǐng)求和播放ROI流和/或HEVC拼貼流的一個(gè)或多個(gè)相關(guān)聯(lián)的HEVC貼片??蛻舳嗽O(shè)備一般可以涉及(移動(dòng))內(nèi)容播放設(shè)備,諸如電子平板、智能電話、筆記本、媒體播放器、具有家庭網(wǎng)關(guān)或DASH功能的設(shè)備,諸如具有DASH功能的HbbTV顯示設(shè)備??商鎿Q地,客戶端設(shè)備可以是機(jī)頂盒或內(nèi)容存儲(chǔ)設(shè)備,機(jī)頂盒或內(nèi)容存儲(chǔ)設(shè)備被配置為處理和臨時(shí)存儲(chǔ)將來供內(nèi)容播放設(shè)備消費(fèi)的內(nèi)容,所述內(nèi)容播放設(shè)備可以訪問存儲(chǔ)的內(nèi)容。
圖5示意地描繪了依照本發(fā)明一個(gè)實(shí)施例的用于管理ROI流送過程的數(shù)據(jù)結(jié)構(gòu)500。特別地是,圖5描繪了空間清單文件(SMF),空間清單文件可以包括幾個(gè)分層的數(shù)據(jù)級(jí)502、508、5181,2。第一數(shù)據(jù)級(jí)502可以涉及用于定義源視頻(例如source1.mp4)的一個(gè)或多個(gè)貼片表示5061-3的貼片構(gòu)成信息。典型情況下,可以根據(jù)一個(gè)或多個(gè)高分辨率的并且常常寬視場HD甚至UHD視頻流或文件來形成源視頻。
下一數(shù)據(jù)級(jí)508可以定義貼片表示5061-3。貼片表示508可以定義一組確定質(zhì)量的HEVC貼片511。HEVC貼片實(shí)例5121-4可以定義HEVC貼片。在一個(gè)實(shí)施例中,該組HEVC貼片可以被定義為HEVC拼貼流中的HEVC貼片軌道。在本發(fā)明的實(shí)施例中,該組HEVC貼片可以被定義為一組可分別存儲(chǔ)和訪問的HEVC貼片流。
貼片位置信息可以定義在確定貼片表示的HEVC拼貼流中HEVC貼片的位置。例如,兩個(gè)HEVC貼片(貼片位置(1,1)和(1,2))包括與源視頻(相關(guān)聯(lián)的HEVC拼貼視頻)中的圖像區(qū)域的上半部相關(guān)聯(lián)的內(nèi)容。
貼片表示可以進(jìn)一步包括關(guān)于源分辨率510的信息,所述源分辨率510用于表明源視頻的分辨率版本,源視頻的分辨率版本用來產(chǎn)生在空間圖中涉及的HEVC貼片。例如,在圖5中,在空間圖中涉及的HEVC貼片可以根據(jù)源視頻的4096 x 2160分辨率版本來產(chǎn)生。
在一個(gè)實(shí)施例中,與一個(gè)HEVC貼片相關(guān)聯(lián)的數(shù)據(jù)可以被構(gòu)造為貼片信息5181,2,即關(guān)于各自HEVC貼片的信息。貼片信息可以包括HEVC貼片的位置信息5201,2,例如貼片坐標(biāo)。貼片坐標(biāo)可以是基于絕對(duì)或相對(duì)坐標(biāo)系并且可以由HEVC解碼器用來把HEVC貼片在空間上安置到無縫視頻圖像中以便顯示。
貼片信息可以進(jìn)一步包括一個(gè)或多個(gè)貼片標(biāo)識(shí)符5221,2(例如URI或URL的一部分)。在一個(gè)實(shí)施例中,貼片信息可以用于定位一個(gè)或多個(gè)遞送節(jié)點(diǎn)和/或用于定位一個(gè)或多個(gè)具體文件,所述遞送節(jié)點(diǎn)被配置為把HEVC貼片流中的HEVC貼片的視頻數(shù)據(jù)傳送到客戶端設(shè)備,所述具體文件優(yōu)選為在這些遞送節(jié)點(diǎn)之一上的可流送文件。
在一個(gè)實(shí)施例中,SMF可以進(jìn)一步包括一個(gè)或多個(gè)ROI流的數(shù)據(jù)結(jié)構(gòu)505(例如清單文件或?qū)η鍐挝募膮⒖迹渲兴鯮OI流可以根據(jù)與HEVC貼片相同的源視頻產(chǎn)生。在一個(gè)實(shí)施例中,ROI流可以包括ROI位置信息。在另一實(shí)施例中,SMF可以包括對(duì)包括ROI 507的位置信息的流或者文件的參考(例如URL)。
圖6描繪了依照本發(fā)明實(shí)施例的用于管理ROI流送過程的空間清單文件600。特別地是,圖6描繪了用于定義不同的MPD視頻元素的MPEG-DASH MPD的例子,所述MPD視頻元素關(guān)聯(lián)于標(biāo)識(shí)符,例如URL或URI(的一部分)。(駐留在客戶端設(shè)備上的)DASH客戶端可以使用標(biāo)識(shí)符來訪問和獲取與MPD視頻元素相關(guān)聯(lián)的視頻數(shù)據(jù)。例如在此例子中,第一MPD視頻元素602可以與至少一個(gè)全景視頻(由URI“full_panorama.mp4(“完整_全景.mp4)”606定義的寬視場視頻)相關(guān)聯(lián)。第二MPD元素604可以與ROI視頻(ROI video)(由URI“zoomed_part.mp4(“被變焦_部分.mp4)”608定義的ROI視頻)相關(guān)聯(lián),其中在MPD視頻元素之間的空間關(guān)系的至少一部分根據(jù)位置信息來定義,這將在下面更詳細(xì)地進(jìn)行描述。
MPD視頻元素可以被定義為“適配集(AdaptationSet)”屬性,“適配集(AdaptationSet)”屬性包括一個(gè)或多個(gè)表示(相同或相關(guān)聯(lián)的內(nèi)容的不同版本,其中可以用一個(gè)或多個(gè)編碼參數(shù)來定義差異)。
DASH客戶端可以使用MPD中的信息來向網(wǎng)絡(luò)請(qǐng)求與MPD視頻元素相關(guān)聯(lián)的視頻數(shù)據(jù)。此外,DASH客戶端可以使用MPD中的信息(元數(shù)據(jù))來配置HEVC解碼器,使得一旦接收視頻數(shù)據(jù)所述HEVC解碼器就可以開始解碼HEVC編碼流的視頻數(shù)據(jù)。用于配置HEVC解碼器的信息(元數(shù)據(jù))可以包括在MPD視頻元素(在這種情況下為HEVC拼貼全景視頻流和ROI流)之間的空間關(guān)系。為此,MPD作者可以把位置信息包括在MPD中。可以用一個(gè)或多個(gè)空間關(guān)系描述符(SRD)610、612定義位置信息。可以在必要特性(EssentialProperty)屬性(當(dāng)處理描述符時(shí)要求要被客戶端理解的信息)或補(bǔ)充特性(SupplementalProperty)屬性(當(dāng)處理描述符時(shí)可以被客戶端丟棄的信息)中使用SRD以便向解碼器特別是HEVC解碼器通知在MPD視頻元素之間的空間關(guān)系存在。在一個(gè)實(shí)施例中,可以使用空間關(guān)系描述符schemeldUri“urn:mpeg:dash:srd:2014”。
在一個(gè)實(shí)施例中,可以根據(jù)@value(@值)屬性614、616定義位置信息,所述@value屬性614、616可以包括多個(gè)參數(shù),多個(gè)參數(shù)包括但不局限于:
-source_id(源-id)參數(shù)618、619可以定義MPD元素(適應(yīng)集(AdaptationSet)或子表示(SubRepresentation))的組,MPD元素互相具有空間關(guān)系。
-位置參數(shù)620、621 x,y,w,h可以定義MPD視頻元素的位置,其中坐標(biāo)x、y定義了MPD視頻元素的圖像區(qū)域的原點(diǎn)并且w和h定義了圖像區(qū)域的寬度和高度。位置參數(shù)可以用給定任意單元(例如像素單元)表示。
-元組W和H 622、623定義了用與x、y、w和h相同的任意單元表示的參考空間的維度。
-spatial_set_id (空間_集_id)624、625允許在相干組中MPD元素的分組。MPD元素的這種組可以例如被用作為分辨率層指示符。
-動(dòng)態(tài)(dynamic)參數(shù)626可以用來發(fā)信號(hào)通知空間表示描述符612的位置隨時(shí)間推移改變。在該情況下,值x和y被設(shè)置為0,意思是MPD沒有提供它們,但是它們?cè)贛PD外部被發(fā)信號(hào)通知。隱含地,將在視頻容器中發(fā)現(xiàn)表示的位置。
因此,在圖6中所描述的清單文件可以定義一個(gè)或多個(gè)HEVC拼貼流(例如HEVC拼貼全景流)和一個(gè)或多個(gè)動(dòng)態(tài)ROI流,它們?cè)诒舜酥g具有空間關(guān)系。在不同的MPD視頻元素的位置信息中的源參數(shù)“1”表明不同的MPD視頻元素在空間上彼此相關(guān)。
可以根據(jù)HEVC拼貼流和ROI流的位置參數(shù)來定義在流之間的初始空間關(guān)系。此后,因?yàn)樵贛PD中的ROI流被定義為“動(dòng)態(tài)”ROI流(由動(dòng)態(tài)參數(shù)所表明),所以在流之間的空間關(guān)系可以在時(shí)間上連續(xù)地改變。ROI的移動(dòng)可以依據(jù)ROI位置信息被提供到客戶端。ROI位置信息可以包括ROI位置數(shù)據(jù)(ROI坐標(biāo)),ROI位置數(shù)據(jù)可以與ROI流一起被傳送到客戶端設(shè)備。
因此,在視頻數(shù)據(jù)實(shí)際上被客戶端接收之前,與MPD視頻元素相關(guān)聯(lián)的位置信息可以由DASH客戶端用來向HEVC解碼器通知流的空間關(guān)系。這樣,HEVC解碼器可以被初始化并且一接收到所述視頻數(shù)據(jù)就開始解碼視頻數(shù)據(jù)。
圖7描繪了依照本發(fā)明另一實(shí)施例的用于管理ROI流送過程的空間清單文件700。特別地是,圖7描繪了用于定義不同的MPD視頻元素的MPEG-DASH MPD的例子,所述不同的MPD視頻元素包括與至少一個(gè)HEVC拼貼視頻流(在此特定的例子中為由URL“full_panorama.mp4(“完整_全景.mp4)”識(shí)別的寬視場視頻)相關(guān)聯(lián)的至少一個(gè)第一MPD視頻元素702和與ROI視頻流(在此特定的例子中為由URL“roi.mp4”定義的ROI視頻)相關(guān)聯(lián)的至少一個(gè)第二MPD元素704,其中根據(jù)位置信息(例如采用一個(gè)或多個(gè)SRD的形式)定義在HEVC拼貼視頻流和ROI流中的不同的HEVC貼片之間的空間關(guān)系。
第一MPD視頻元素可以被定義為適應(yīng)集(AdaptationSet),適應(yīng)集包括表示703(Representation)和一個(gè)或多個(gè)子表示(SubRepresentation)7161-4(即構(gòu)成此表示的部分,它們能夠被鏈接到參考圖3所描述的處于容器級(jí)別的軌道的概念)。這例如可以是在分離的軌道中的相同的文件容器中內(nèi)容(音頻和視頻)被復(fù)用時(shí)的情況。在一個(gè)實(shí)施例中,第一MPD視頻元素可以定義HEVC拼貼視頻流,其中表示703定義了拼貼的寬視場全景流(在這種情況下由四個(gè)HEVC貼片構(gòu)成)。子表示7161-4定義了各自HEVC貼片,其中每個(gè)HEVC貼片可以作為獨(dú)立的軌道存儲(chǔ)在MPEG流中,如上面的圖3中所示??梢跃幋a軌道中的視頻數(shù)據(jù),以致由解碼器獨(dú)立播放HEVC貼片的(時(shí)間分段)是可以的。
編碼器屬性“編解碼器(codecs)”7191-4指的是“hvt1”類型編解碼器(hvt1中的t指的是貼片),“hvt1”類型編解碼器表明視頻數(shù)據(jù)屬于HEVC貼片。此外,子表示中的每個(gè)HEVC貼片可以與SRD 7181-4相關(guān)聯(lián),所述SRD 7181-4包括用于定義HEVC貼片的位置的一個(gè)或多個(gè)位置參數(shù)7201-4。
第二MPD視頻元素可以利用用于定義ROI流的位置的一個(gè)或多個(gè)位置參數(shù)708來定義在ROI視頻的必要特性(EssentialProperty)屬性中的ROI視頻流SRD 706。
在一個(gè)實(shí)施例中,SRD方案可以由schemeldUri“urn:mpeg:dash:srd:2014”定義,其中可以根據(jù)@value屬性值708、710、714、7201-4來定義空間關(guān)系。因?yàn)镽OI流的ROI坐標(biāo)在時(shí)間上改變,所以ROI視頻的SRD可以包括“動(dòng)態(tài)”參數(shù)710,如參考圖6詳細(xì)描述的。
第一和第二MPD視頻元素的SRD 712、706、7181-4可以用于向HEVC解碼器通知不同流的空間關(guān)系。
在圖7的例子中,HEVC拼貼流可以作為一個(gè)流被發(fā)送到客戶端設(shè)備。選擇HEVC貼片以供播放可以在解碼階段實(shí)現(xiàn)。
在一個(gè)實(shí)施例中,軌道視頻數(shù)據(jù)可以被順序地存儲(chǔ),由此允許DASH客戶端獲取對(duì)應(yīng)于一個(gè)子表示的子分段的一部分。這種HTTP請(qǐng)求會(huì)利用字節(jié)范圍信令,其中依照ISO/IEC 14496部分12在所謂的“ssix”框中提供用于每個(gè)子表示的字節(jié)范圍。
在從軌道提取的時(shí)間分段并非自給自足的情況下,可以提供初始化分段URL作為表示的屬性以克服此問題??梢远x所謂的初始化分段,所謂的初始化分段包括為再現(xiàn)HEVC貼片的分段中的視頻數(shù)據(jù)所必須的元數(shù)據(jù)。在初始化分段中,可以提供HEVC貼片的貼片結(jié)構(gòu)和/或位置。
圖8A描繪了依照本發(fā)明另一實(shí)施例的用于管理ROI流送過程的空間清單文件800。特別地是,圖8A描繪了用于定義不同的MPD視頻元素802、8031,2、804的MPEG-DASH MPD的例子。第一MPD視頻元素802與由URI“full_panorama-base.mp4(完整_全景-基礎(chǔ).mp4)”8141定義的HEVC拼貼全景視頻相關(guān)聯(lián)。這里,HEVC拼貼全景視頻被定義為包括“提取器”的基礎(chǔ)軌道,所述提取器指的是由MPD視頻元素8031,2定義的一個(gè)或多個(gè)可分別尋址的貼片軌道(依照與參考圖3描述的類似方式)。
MPD視頻元素8031可以定義包括由第一貼片標(biāo)識(shí)符8142(“full_panorama-tile1.mp4(完整_全景-貼片1.mp4)”)識(shí)別的第一HEVC貼片的視頻數(shù)據(jù)的第一貼片軌道,并且MPD視頻元素8032可以定義包括由第二貼片標(biāo)識(shí)符8143(“full_panorama-tile2.mp4(完整_全景-貼片2.mp4)”)識(shí)別的第二HEVC貼片的視頻數(shù)據(jù)的第二貼片軌道。最后的MPD視頻元素804可以定義ROI視頻流(在此特定的例子中為由ROI流標(biāo)識(shí)符“zoomed_part.mp4(被變焦的_部分.mp4)”806定義的ROI視頻)。
位置信息可以用于向HEVC解碼器通知在MPD視頻元素之間的空間關(guān)系,所述位置信息包括在ROI視頻的EssentialProperty(必要特性)屬性中的SRD 808和在MPD視頻元素的SupplementalProperty(補(bǔ)充特性)屬性中的SRD 8161-3。在一個(gè)實(shí)施例中,空間關(guān)系描述符schemeldUri“urn:mpeg:dash:srd:2014”可以用于定義位置信息,其中可以根據(jù)@value屬性值810、8181-3和“動(dòng)態(tài)”參數(shù)定義空間關(guān)系,如參考圖6所詳細(xì)描述的。
在此特定的實(shí)施例中,HEVC貼片被格式化為獨(dú)立地可儲(chǔ)存的和可尋址的HEVC貼片流。由@id“panorama(全景)”識(shí)別的表示802表示如上參考圖3解釋的基礎(chǔ)軌道,并且可以結(jié)合由@id“tile1(貼片1)”和“tile2(貼片2)”識(shí)別的表示8031-3定義的HEVC貼片使用。
因此,客戶端可以使用SMF以便向遞送節(jié)點(diǎn)(使用基礎(chǔ)軌道中的信息)請(qǐng)求HEVC拼貼全景視頻流和請(qǐng)求HEVC貼片流。然后,當(dāng)接收請(qǐng)求的軌道時(shí),解碼器可以解析基礎(chǔ)軌道并且利用它涉及的貼片軌道的音頻和/或視頻數(shù)據(jù)來代替所述基礎(chǔ)軌道中的提取器??商鎿Q地,在另一實(shí)施例中,客戶端可以使用SMF以便分別地請(qǐng)求分離的HEVC貼片軌道并且HEVC解碼器可以解碼貼片軌道以便再現(xiàn)。
圖8B描繪了依照本發(fā)明另一實(shí)施例的用于管理ROI流送過程的空間清單文件800。特別地是,圖8A依照與參考圖8A描述的類似方式描繪了用于定義包括兩個(gè)HEVC貼片的HEVC拼貼全景視頻的MPEG-DASH MPD的例子。然而在此實(shí)施例中,在ROI流822被描述為包括與ROI視頻數(shù)據(jù)相關(guān)聯(lián)的第一子表示8241和與ROI坐標(biāo)相關(guān)聯(lián)的第二子表示8242的表示的意義上不同地定義所述ROI流822。
因此,在此特定的實(shí)施例中,ROI視頻數(shù)據(jù)和ROI坐標(biāo)被存儲(chǔ)在分離的軌道中,即包括HEVC編碼的視頻數(shù)據(jù)的視頻軌道(用編解碼器屬性“hvc1”826所標(biāo)示的)和包括坐標(biāo)的元數(shù)據(jù)軌道(用編解碼器屬性“coor”828所標(biāo)示的)。
因此,從以上可以看出:客戶端不僅使用SMF中的信息來定位網(wǎng)絡(luò)節(jié)點(diǎn)中的遞送節(jié)點(diǎn),其中所述遞送節(jié)點(diǎn)能夠把想要的視頻數(shù)據(jù)遞送到客戶端,而且使用在SMF中定義的ROI流和HEVC拼貼流的元數(shù)據(jù)以便在客戶端接收HEVC拼貼視頻數(shù)據(jù)和/或ROI(視頻)數(shù)據(jù)之前配置解碼器。此元數(shù)據(jù)可以包括例如:
-用于確定選擇的空間分段與HEVC拼貼視頻數(shù)據(jù)相關(guān)的信息(例如編解碼器屬性“hvt1”);
-用于(使用用于定義HEVC貼片的子表示)發(fā)信號(hào)通知HEVC貼片的視頻數(shù)據(jù)被存儲(chǔ)在分離的軌道中的信息;
-用于確定HEVC貼片的數(shù)目和/或尺寸的信息(例如被表示為子表示的HEVC貼片的數(shù)目和/或與SRD相關(guān)聯(lián)的位置信息的一部分);
-用于確定HEVC貼片或ROI流的位置的位置的信息(例如與SRD相關(guān)聯(lián)的位置信息的一部分);
-用于(例如使用“動(dòng)態(tài)”參數(shù))發(fā)信號(hào)通知ROI位置和/或ROI的尺寸在時(shí)間上改變的信息;
-用于(例如使用用于定義元數(shù)據(jù)軌道的子表示)發(fā)信號(hào)通知ROI位置信息被存儲(chǔ)在與ROI視頻數(shù)據(jù)分離的軌道中的信息。
圖9描繪了依照本發(fā)明一個(gè)實(shí)施例的客戶端設(shè)備。特別地是,圖9描繪了包括用于解釋與(拼貼)內(nèi)容的用戶交互的用戶導(dǎo)航功能904的客戶端設(shè)備,所述(拼貼)內(nèi)容由可以包括HEVC解碼器922和裁切器924的媒體播放器906處理。用戶導(dǎo)航功能可以連接到用戶接口,所述用戶接口可以包括觸摸屏、相機(jī)、鍵盤、鼠標(biāo)、軌跡球、游戲桿、麥克風(fēng)、頭部跟蹤傳感器、眼睛和視線跟蹤、按鈕或允許操縱(例如搖攝、變焦和/或傾斜)顯示內(nèi)容的任何其它人機(jī)接口。
客戶端設(shè)備可以進(jìn)一步包括清單高速緩存器922,用于從網(wǎng)絡(luò)中的內(nèi)容提供者或內(nèi)容源(例如媒體服務(wù)器或CDN)接收一個(gè)或多個(gè)空間清單文件(SMF)。如參考圖5-8所詳細(xì)描述,SMF 916可以定義一個(gè)或多個(gè)HEVC拼貼流的貼片標(biāo)識(shí)符(URL)(的一部分)。此外,SMF可以包括含有HEVC貼片的位置的貼片位置信息。
在一些實(shí)施例中,SMF可以進(jìn)一步包括用于定義ROI流的數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)結(jié)構(gòu)可以根據(jù)HTTP自適應(yīng)流送協(xié)議被格式化??商鎿Q地,用于定義ROI流的數(shù)據(jù)結(jié)構(gòu)可以作為分離的清單文件存儲(chǔ)在清單高速緩存器中。
在一個(gè)實(shí)施例中,ROI流可以是單播流。在另一實(shí)施例中,ROI流可以是其中嵌入ROI坐標(biāo)的多播或廣播流。在該情況下,客戶端設(shè)備可以被配置為分別請(qǐng)求(調(diào)入或加入)廣播流或多播流。
清單高速緩存器可以被連接到流獲取器910和流選擇器912。流選擇器可以選擇一個(gè)或多個(gè)流(HEVC拼貼流、一個(gè)或多個(gè)HEVC貼片流和/或ROI流)并且依照確定方案指示所述流獲取器向網(wǎng)絡(luò)920請(qǐng)求一個(gè)或多個(gè)選擇的流。
在沒有用戶交互的默認(rèn)情況下,如參考圖1和2所詳細(xì)描述的,可以根據(jù)包括ROI位置信息(或與之相關(guān)聯(lián))的ROI流把與SMF相關(guān)聯(lián)的內(nèi)容流送到客戶端設(shè)備。因此,在ROI流是HAS流的情況下,流選擇器可以指示流獲取器請(qǐng)求(默認(rèn)的)ROI流的時(shí)間分段。ROI流的分段不被流處理器處理而是被直接轉(zhuǎn)發(fā)到媒體播放器的緩沖器908。類似地,在ROI流是廣播或多播流的情況下,流選擇器可以加入或調(diào)入到所需要的廣播流中并且流接收器可以把分組直接轉(zhuǎn)發(fā)到緩沖器908。
當(dāng)用戶導(dǎo)航功能被用戶交互觸發(fā)時(shí),所述用戶導(dǎo)航功能可以指示流處理器從ROI流中提取ROI位置信息并且把該信息轉(zhuǎn)發(fā)到ROI產(chǎn)生器。ROI產(chǎn)生器可以開始產(chǎn)生ROI坐標(biāo),其中第一坐標(biāo)可以對(duì)應(yīng)于在檢測到用戶交互的時(shí)間實(shí)例時(shí)被客戶端設(shè)備處理的ROI流的一個(gè)或多個(gè)幀的ROI坐標(biāo)。
在另一實(shí)施例中,流處理器可以始終從ROI流提取ROI位置信息并且把此信息提供到ROI產(chǎn)生器。在該情況下,在ROI流的流送和再現(xiàn)期間,再現(xiàn)的幀的ROI坐標(biāo)始終可用于客戶端設(shè)備。在一些實(shí)施例中,可以在不解碼幀的情況下從ROI流提取ROI位置信息。在其它實(shí)施例中,可以在解碼幀之后從ROI流提取ROI位置信息。在該情況下,流處理器可以屬于媒體播放器的一部分,所述媒體播放器包括用于解碼編碼幀的解碼器。
ROI產(chǎn)生器可以根據(jù)用戶導(dǎo)航輸出和ROI流的ROI坐標(biāo)來開始計(jì)算ROI坐標(biāo)。在一個(gè)實(shí)施例中,用戶導(dǎo)航功能可以解釋用戶交互并且產(chǎn)生ROI向量,所述ROI向量允許ROI產(chǎn)生器計(jì)算與特定的用戶交互有關(guān)的新的ROI坐標(biāo)。例如,用戶導(dǎo)航功能可以把一個(gè)手指滑動(dòng)手勢(shì)解釋為ROI的搖攝(平移)并且產(chǎn)生用于該ROI產(chǎn)生器的平移向量。依照類似方式,兩個(gè)手指的捏合手勢(shì)可以被解釋為ROI的變焦動(dòng)作,保持按鈕被解釋為凍結(jié)ROI,并且口頭的用戶命令“全屏幕”被解釋為變焦到全屏幕。當(dāng)接收用戶輸入時(shí),ROI產(chǎn)生器繼續(xù)計(jì)算ROI坐標(biāo)。
當(dāng)流選擇器從ROI產(chǎn)生器接收計(jì)算的ROI坐標(biāo)時(shí),它可以使用SMF中的貼片位置信息和來源于ROI產(chǎn)生器計(jì)算的ROI坐標(biāo)以便選擇一組鄰近的HEVC貼片,所述一組鄰近的HEVC貼片可以用于形成完整圖像區(qū)域內(nèi)的子區(qū)域,并且其中每個(gè)HEVC貼片的視頻數(shù)據(jù)是獨(dú)立地可存儲(chǔ)的和可解碼的。與這些HEVC貼片相關(guān)聯(lián)的視頻數(shù)據(jù)然后可以如上面參考圖1-9所描述的根據(jù)SMF被請(qǐng)求并且作為一組分離的HEVC貼片流被流送到客戶端設(shè)備。在接收HEVC貼片流之后,在向HEVC解碼器924發(fā)送視頻數(shù)據(jù)以便產(chǎn)生包括ROI的圖像區(qū)域的解碼圖像數(shù)據(jù)之前,流處理器可以同步和復(fù)用不同的HEVC貼片流的視頻數(shù)據(jù)??梢杂刹们衅?26根據(jù)ROI坐標(biāo)裁切圖像區(qū)域。因此,最終ROI可以小于由解碼過程所導(dǎo)致的圖像區(qū)域。裁切的圖像(均包括ROI)可以被緩沖并且被在顯示器(未示出)上再現(xiàn)。
因此,從以上可以看出:用戶交互可以導(dǎo)致客戶端設(shè)備從其中顯示預(yù)定的ROI的(默認(rèn))非拼貼ROI流模式切換到其中可以經(jīng)由用戶交互操縱顯示給用戶的ROI的拼貼流送模式。術(shù)語“預(yù)定”涉及以下事實(shí):在圖像區(qū)域內(nèi)此ROI的空間安置在一段時(shí)間上是預(yù)定的并且在客戶端設(shè)備的控制之外。在一個(gè)實(shí)施例中,當(dāng)從ROI流送模式切換到拼貼流送模式時(shí),客戶端設(shè)備在切換時(shí)確定這種預(yù)定ROI流的ROI的ROI坐標(biāo)并且使用這些ROI坐標(biāo)以便形成基本上相同的ROI(例如在拼貼流送模式中具有相同尺寸以及基本上相同的位置的ROI),使得實(shí)現(xiàn)在再現(xiàn)內(nèi)容期間的平滑轉(zhuǎn)變。
在一個(gè)實(shí)施例中,外部信號(hào)可以使客戶端設(shè)備從非拼貼ROI流模式切換到拼貼流送模式。例如,ROI產(chǎn)生器可以被觸發(fā)以開始根據(jù)ROI流中的信號(hào)或另一外部信號(hào)計(jì)算ROI坐標(biāo)。
當(dāng)從ROI流送模式切換到貼片流送模式時(shí),ROI流中的幀和選擇的HEVC貼片流的幀被客戶端接收并且可以根據(jù)共用的內(nèi)容播放時(shí)間線被同步,使得啟用在兩個(gè)模式之間的平滑甚至無縫的轉(zhuǎn)變。
圖10A和10B描繪了依照本發(fā)明實(shí)施例的客戶端過程的示意圖。特別地是,圖10A描繪了用于根據(jù)源于用戶導(dǎo)航功能的信息控制ROI的產(chǎn)生的客戶端過程。所述過程可以在(默認(rèn))ROI流送模式開始(步驟1000)。只要沒檢測到用戶交互,客戶端設(shè)備(也被稱為“客戶端”)就可以根據(jù)ROI流繼續(xù)ROI的再現(xiàn)(ROI流送模式)。如果客戶端檢測到用戶交互(步驟1002),那么可以開始ROI產(chǎn)生器(步驟1004)以便計(jì)算用于流選擇器和流處理器的ROI坐標(biāo)(步驟1006)。由ROI產(chǎn)生器確定的第一ROI坐標(biāo)可以對(duì)應(yīng)于在用戶開始與之交互的ROI流中的一個(gè)或多個(gè)再現(xiàn)幀的ROI坐標(biāo)。這些ROI坐標(biāo)可以被轉(zhuǎn)發(fā)到流選擇器(步驟1006)以便切換到拼貼流送模式(步驟1008;如參考圖10B更詳細(xì)地描述的)。
用戶導(dǎo)航功能可以解釋特定的用戶交互(步驟1010)并且把此信息(作為ROI向量)轉(zhuǎn)發(fā)到ROI產(chǎn)生器,所述ROI產(chǎn)生器繼續(xù)接收與由客戶端再現(xiàn)的ROI幀相關(guān)聯(lián)的ROI位置信息。ROI產(chǎn)生器可以根據(jù)ROI流的ROI位置信息和ROI向量計(jì)算進(jìn)一步的ROI坐標(biāo)(步驟1012)并且把計(jì)算的ROI坐標(biāo)轉(zhuǎn)發(fā)到流選擇器和流處理器以便在拼貼流送模式中再現(xiàn)ROI。只要檢測到用戶交互,此過程就可以繼續(xù)(步驟1014)。當(dāng)ROI產(chǎn)生器檢測到不再有用戶活動(dòng)時(shí)(步驟1014),ROI產(chǎn)生器可以停止ROI坐標(biāo)的產(chǎn)生。
特別地是,圖10B描繪了用于從在ROI流送模式中再現(xiàn)ROI切換到在拼貼流送模式中再現(xiàn)ROI的客戶端過程。所述過程可以通過流選擇器從ROI產(chǎn)生器接收計(jì)算的ROI坐標(biāo)開始(步驟1020)。由流選擇器接收的第一ROI坐標(biāo)可以對(duì)應(yīng)于在用戶開始了與之交互的ROI流中的一個(gè)或多個(gè)再現(xiàn)幀的ROI坐標(biāo)。流選擇器可以使用貼片位置信息和ROI坐標(biāo)確定幀中的HEVC貼片,可以從HEVC貼片形成圖像區(qū)域,所述圖像區(qū)域包括計(jì)算的ROI(步驟1022)??蛻舳丝梢詮脑谇鍐胃咚倬彺嫫髦写鎯?chǔ)的SMF中獲取貼片位置信息。
可替換地,在另一實(shí)施例中,客戶端設(shè)備(例如客戶端設(shè)備中的流處理器)可以從(存儲(chǔ)的)HEVC拼貼視頻中直接獲得貼片位置信息。例如如參考圖3所詳細(xì)描述的,(作為文件存儲(chǔ)的)HEVC拼貼視頻流可以包括貼片軌道,其中每個(gè)貼片軌道包括貼片位置信息。在該情況下,為了確定哪些HEVC貼片與想要的ROI重疊,不需要任何SMF。
流選擇器可以指示流獲取器向網(wǎng)絡(luò)請(qǐng)求與選擇的HEVC貼片相關(guān)聯(lián)的視頻數(shù)據(jù)(步驟1024)。當(dāng)客戶端接收到所請(qǐng)求的HEVC貼片流時(shí),它可以根據(jù)它們共用的內(nèi)容播放時(shí)間線同步所述流,把視頻數(shù)據(jù)復(fù)用到HEVC拼貼視頻流中并且向HEVC解碼器發(fā)送用于解碼的視頻數(shù)據(jù)(步驟1026)。用于表示包括ROI的子區(qū)域的解碼圖像數(shù)據(jù)可以根據(jù)計(jì)算的ROI坐標(biāo)裁切(步驟1028)。裁切的圖像可以被緩沖和被在顯示器上再現(xiàn)(步驟1030)。上述過程確保當(dāng)切換到拼貼流送模式時(shí),在ROI流送模式中最后再現(xiàn)的ROI基本上匹配在拼貼流送模式中的第一再現(xiàn)的ROI。這樣,客戶端能夠從在ROI流送模式中再現(xiàn)ROI平滑地切換到在拼貼流送模式中再現(xiàn)ROI。
圖11A和11B描繪了依照本發(fā)明實(shí)施例的ROI流送過程。在此特定的例子中,可以使用諸如HTTP自適應(yīng)流送協(xié)議之類的自適應(yīng)流送協(xié)議由CDN把HEVC貼片流分送到客戶端設(shè)備(也被稱為“客戶端”)。所述過程可以以客戶端向內(nèi)容提供者CP請(qǐng)求和接收空間清單文件SMF開始(步驟1100和1102)??蛻舳丝梢越馕鯯MF(步驟1104)和在ROI流送模式中開始流送過程。為了那個(gè)目的,客戶端可以根據(jù)SMF選擇ROI流的第一時(shí)間(ROI)分段并且向CDN的路由請(qǐng)求RR節(jié)點(diǎn)發(fā)送請(qǐng)求消息(步驟1106),例如HTTP GET(取得)消息。請(qǐng)求路由節(jié)點(diǎn)可以定位其上存儲(chǔ)有請(qǐng)求的時(shí)間ROI分段的遞送節(jié)點(diǎn)并且把重定向消息中的定位的遞送節(jié)點(diǎn)的URL發(fā)送回到客戶端(步驟1108)。術(shù)語‘時(shí)間’指的是以下概念,分段具有與分段的(內(nèi)容)的播放時(shí)段相關(guān)聯(lián)的確定持續(xù)時(shí)間。因此時(shí)間分段是在時(shí)間維度上源視頻內(nèi)容的分段的結(jié)果。在本申請(qǐng)中涉及的任何分段具有確定的播放時(shí)段。不僅如此,(在SMF或空間清單文件中參考的那些)確定類別分段可以是附加空間分段過程的結(jié)果,其中視頻內(nèi)容被分段以致分段包括作為源視頻內(nèi)容的圖像區(qū)的子集(例如部分)的圖像區(qū)。這些分段有時(shí)視情況而定也被稱為空間分段或貼片分段。應(yīng)當(dāng)注意,貼片分段是與貼片/(HEVC)貼片流相關(guān)聯(lián)的時(shí)間分段的等效物。ROI分段在它是時(shí)間分段的意義上是不同的,但是它不是空間分段的結(jié)果,因此,不需要具有(但是可以具有)‘靜態(tài)’位置信息。相比之下,貼片分段與貼片位置信息相關(guān)聯(lián),所述貼片位置信息隨時(shí)間推移是靜態(tài)的而且反映空間分段。客戶端可以使用URL來請(qǐng)求在SMF中識(shí)別的ROI分段。
因此,在重定向消息之后,客戶端可以把請(qǐng)求消息發(fā)送回到遞送節(jié)點(diǎn),所述遞送節(jié)點(diǎn)包括請(qǐng)求的時(shí)間ROI分段(步驟1110)。遞送節(jié)點(diǎn)可以把請(qǐng)求的第一ROI分段發(fā)送回到客戶端(步驟1112)。在此特定的例子中,ROI分段可以包括ROI的ROI坐標(biāo)。ROI坐標(biāo)可以定義在源視頻的空間表示內(nèi)的軌跡。在下面更詳細(xì)地描述了傳輸流內(nèi)的ROI坐標(biāo)的不同方式。第一時(shí)間ROI分段可以被客戶端緩沖并播放(步驟1114),同時(shí)可以繼續(xù)對(duì)進(jìn)一步時(shí)間分段的獲取過程。
在確定時(shí)間之后,例如在第六ROI分段的播放期間(步驟1116-1118),客戶端可以被觸發(fā)以切換到拼貼流送模式(步驟1120)。例如,客戶端可以檢測被用戶導(dǎo)航功能解釋為搖攝動(dòng)作的用戶交互。當(dāng)觸發(fā)以便切換到拼貼流送模式時(shí),客戶端可以確定與在檢測的用戶交互期間再現(xiàn)的一個(gè)或多個(gè)幀相關(guān)聯(lián)的第一ROI坐標(biāo)(步驟1122)。此后,客戶端可以繼續(xù)依照與上面參考圖9和10A和10B描述的類似方式根據(jù)ROI流的ROI位置信息來確定進(jìn)一步的ROI坐標(biāo)。
在一個(gè)實(shí)施例中,客戶端可以使用SMF中的貼片位置信息和第一ROI坐標(biāo)以便確定一組空間鄰接的HEVC貼片,所述一組空間鄰接的HEVC貼片可以用來形成包括ROI的圖像區(qū)域。在此例子中,與選擇的HEVC貼片相關(guān)聯(lián)的HEVC貼片流可以在時(shí)間上被分段,使得HAS(HTTP自適應(yīng)流送)協(xié)議可以用來把貼片分段遞送到客戶端。此后,客戶端可以開始根據(jù)SMF來請(qǐng)求選擇的HEVC貼片流的這些貼片分段。特別地是,客戶端可以發(fā)送包括HEVC貼片的選擇時(shí)間分段(在這種情況下為HEVC貼片7、11和12(即video(視頻)7_7、video(視頻)7_11和video(視頻)7_12)的第七時(shí)間分段)的URL的請(qǐng)求消息(步驟1124-1126),并且作為響應(yīng)從包括選擇的HEVC貼片流的請(qǐng)求時(shí)間分段的遞送節(jié)點(diǎn)接收響應(yīng)消息(步驟1128-1130)。
在HEVC貼片的視頻數(shù)據(jù)被存儲(chǔ)在分離的視頻軌道的情況(如參考圖3所詳細(xì)描述的)下,基礎(chǔ)軌道也應(yīng)當(dāng)被客戶端設(shè)備(請(qǐng)求未示出)。包括提取器的基礎(chǔ)軌道可以由HEVC解碼器用來把選擇的HEVC貼片的視頻數(shù)據(jù)解碼為連續(xù)圖像。
在確定和請(qǐng)求HEVC貼片流的上述過程期間,客戶端連續(xù)播放ROI分段(未示出)。
當(dāng)接收請(qǐng)求的HEVC貼片流時(shí),客戶端可以根據(jù)共用的內(nèi)容播放時(shí)間線同步HEVC貼片流和再現(xiàn)的ROI流。鄰接HEVC貼片流的同步幀(即與特定的共用播放時(shí)間相關(guān)聯(lián)的幀)可以被HEVC解碼器解碼為包括ROI的圖像區(qū)域(步驟1132)。如果需要,ROI坐標(biāo)可以用來把圖像區(qū)域裁切為基本上與ROI流的ROI類似的圖像區(qū)域,所述ROI流在客戶端接收請(qǐng)求的HEVC貼片流時(shí)被播放。
當(dāng)根據(jù)HEVC貼片流形成圖像區(qū)域與播放ROI流中的幀同步時(shí),客戶端可以從根據(jù)ROI流再現(xiàn)ROI切換到根據(jù)HEVC貼片流再現(xiàn)用戶產(chǎn)生的ROI(步驟1134)。在拼貼流送模式中客戶端可以繼續(xù)請(qǐng)求HEVC貼片流的時(shí)間分段,把與共用的播放時(shí)間相關(guān)聯(lián)的幀解碼為圖像區(qū)域并且(可選地)在顯示器上再現(xiàn)它之前裁切圖像區(qū)域。
在確定時(shí)間之后,例如在播放根據(jù)選擇的HEVC貼片流的第8和第9時(shí)間分段產(chǎn)生的裁切圖像區(qū)域之后(步驟1136和1138),用戶可以與客戶端設(shè)備相交互以便切換回到默認(rèn)ROI流送模式(步驟1140)。在此模式中,可以根據(jù)第10 ROI分段繼續(xù)再現(xiàn)內(nèi)容(步驟1142)。
圖12A和12B描繪了依照本發(fā)明實(shí)施例的用于在非拼貼流送模式和拼貼流送模式之間無縫切換的過程。如圖12A和12B所示,根據(jù)ROI位置信息確定為開始拼貼流送模式正選擇的HEVC貼片流,所述ROI位置信息與在時(shí)間T的ROI流的一個(gè)或多個(gè)ROI幀相關(guān)聯(lián),其中在時(shí)間T客戶端接收(例如由于用戶交互引起的)用于切換到拼貼模式的觸發(fā)。
此實(shí)施例可以用于ROI流或ROI流的特定部分,其中ROI軌跡將不在圖像區(qū)域之外,所述圖像區(qū)域可以在接收到用于切換到拼貼流送模式的信號(hào)時(shí)用客戶端選擇的鄰接的HEVC貼片流形成。
圖12A描繪了其中客戶端設(shè)備(也被稱為“客戶端”)在時(shí)間T接收用于從ROI流送模式切換到拼貼流送模式的信號(hào)的情況。在該時(shí)間,客戶端正再現(xiàn)ROI流的幀f。與幀f相關(guān)聯(lián)的ROI位置信息可以包括幀f的ROI坐標(biāo)(圖12A中的pos0)。這些ROI坐標(biāo)用來獲取一組空間鄰接(同步)的HEVC貼片流,所述一組空間鄰接(同步)的HEVC貼片流可以用來形成包括幀f的ROI的圖像區(qū)域。
在獲取選擇的HEVC貼片流所需要的時(shí)間段Δt期間,可以由客戶端再現(xiàn)數(shù)目n個(gè)的ROI幀,其中n = Δt * R并且其中R是遞送節(jié)點(diǎn)用來向客戶端傳送ROI流的(平均)幀傳輸率。在時(shí)間T+n,客戶端將接收請(qǐng)求的鄰接HEVC貼片流,把貼片幀與ROI流的ROI幀同步,把HEVC貼片流的同步幀解碼到包括ROI的圖像區(qū)域中。如果必要的話,客戶端可以在時(shí)間T+n使用ROI流中的ROI的ROI坐標(biāo)以便把圖像區(qū)域裁切為在T+n基本上匹配ROI幀的ROI的ROI的圖像。此后,客戶端可以從根據(jù)ROI流再現(xiàn)ROI切換到根據(jù)裁切的圖像再現(xiàn)ROI,使得實(shí)現(xiàn)到拼貼流送模式的平滑轉(zhuǎn)變。
圖12B描繪了用于實(shí)現(xiàn)如圖12A中所圖示的到拼貼流送模式的平滑轉(zhuǎn)變的步驟的過程流。首先,客戶端可以接收用于切換到拼貼流送模式的信號(hào)(步驟1202)。然后向客戶端提供與幀f相關(guān)聯(lián)的ROI坐標(biāo)(步驟1204)??蛻舳丝梢允褂肧MF中的貼片位置信息和ROI坐標(biāo)(步驟1206)以便確定一組鄰接的HEVC貼片流,所述一組鄰接的HEVC貼片流能夠用來在稍后時(shí)間點(diǎn)(即在客戶端接收選擇的貼片流的時(shí)間T+n)形成包括ROI流的ROI的圖像區(qū)域(步驟1208)。
選擇的HEVC貼片流可以被獲?。ú襟E1210)并且由客戶端在時(shí)間T+n接收。此后,鄰接的HEVC貼片流的幀和再現(xiàn)的ROI流的ROI幀可以被同步。在內(nèi)容呈現(xiàn)時(shí)間線上具有相同位置的空間鄰接的HEVC貼片流的貼片幀f+n可以被HEVC解碼器解碼(步驟1212),以便形成包括ROI流的幀f+n的ROI的圖像區(qū)域(步驟1214)。然后,與ROI幀f+n相關(guān)聯(lián)的ROI坐標(biāo)可以用來從圖像區(qū)域中裁切ROI(步驟1216)。此后,內(nèi)容的顯示可以從再現(xiàn)ROI流中的ROI幀切換到再現(xiàn)由HEVC貼片流的視頻數(shù)據(jù)提供的裁切的圖像區(qū)域(步驟1218)。這樣,從ROI流送模式到拼貼流送的平滑轉(zhuǎn)變。
如果為了任何特定的原因,顯示區(qū)是不可用的,這是因?yàn)橘N片尚未被接收和/或因?yàn)镽OI(部分地)處于由請(qǐng)求的鄰接HEVC貼片流定義的圖像區(qū)域外部,那么可以實(shí)現(xiàn)后退機(jī)制。在一個(gè)實(shí)施例中,源內(nèi)容的低分辨率視頻流可以被流送到客戶端作為在整個(gè)流送過程期間的后臺(tái)過程。當(dāng)一確定內(nèi)容不可用時(shí),低分辨率視頻可以用來臨時(shí)裁切缺失的內(nèi)容并且在獲取所述缺失的HEVC貼片流時(shí)再現(xiàn)該內(nèi)容。這樣,可以實(shí)現(xiàn)到拼貼流送模式的平滑轉(zhuǎn)變,即使稍后可以再現(xiàn)高質(zhì)量視頻也是如此。
圖13A和13B描繪了依照本發(fā)明另一實(shí)施例的在ROI流送模式和拼貼流送模式之間無縫切換的過程。在一些情況中,用于獲取貼片分段的時(shí)間Δt可以具有幾秒的數(shù)量級(jí)(特別是在盡力而為的網(wǎng)絡(luò)上遞送數(shù)據(jù)時(shí)尤其如此)。此外在一些情況中,ROI流中的ROI的軌跡可以是很動(dòng)態(tài)的,例如它可以包括在短時(shí)間段情況下的在源文件的圖像區(qū)內(nèi)的大平移和/或變焦動(dòng)作。因此,在HEVC貼片的時(shí)間分段的獲取時(shí)間期間,ROI的軌跡可以已經(jīng)移動(dòng)到最初在時(shí)間T選擇的所述組貼片的圖像區(qū)域外部了,從而妨礙了ROI流送模式中的再現(xiàn)到拼貼流送模式的平滑轉(zhuǎn)變。
為了處理此問題,在依照本發(fā)明的某些實(shí)施例中,ROI位置信息可以包括與ROI視頻流的一個(gè)或多個(gè)視頻幀相關(guān)聯(lián)的先行位置信息(先行位置),當(dāng)接收這種先行位置信息時(shí)所述ROI視頻流的一個(gè)或多個(gè)視頻幀尚未被客戶端接收。在一個(gè)實(shí)施例中,先行位置信息可以包括所述ROI視頻流中的一個(gè)或多個(gè)圖像幀的一個(gè)或多個(gè)時(shí)移的第一ROI坐標(biāo),在接收先行位置信息時(shí),所述所述ROI視頻流中的一個(gè)或多個(gè)圖像幀尚未被所述客戶端設(shè)備接收。因此,在接收相關(guān)聯(lián)的圖像幀之前,這些時(shí)移的ROI坐標(biāo)正被提供到客戶端設(shè)備。在進(jìn)一步實(shí)施例中,所述時(shí)移的ROI坐標(biāo)可以與用于確定時(shí)移的時(shí)移信息相關(guān)聯(lián),所述時(shí)移信息優(yōu)選為時(shí)間戳。時(shí)移表示在收到時(shí)移的ROI坐標(biāo)和收到視頻內(nèi)容之間的時(shí)段,所述視頻內(nèi)容優(yōu)選為ROI坐標(biāo)涉及的一個(gè)或多個(gè)圖像幀。在此實(shí)施例中,ROI位置信息被時(shí)移,從而客戶端設(shè)備可以提前接收ROI位置信息。這樣,即使當(dāng)ROI在源視頻的圖像區(qū)域(例如HEVC拼貼視頻的圖像區(qū)域)內(nèi)在時(shí)間上追隨很動(dòng)態(tài)的軌跡時(shí),客戶端也可以請(qǐng)求正確的HEVC貼片流。
在圖13A和13B中,ROI位置信息中的ROI坐標(biāo)可以相對(duì)于ROI流中相關(guān)聯(lián)的幀被提前提供到客戶端。在一個(gè)實(shí)施例中,ROI位置信息可以被時(shí)移一個(gè)時(shí)段(用幀的數(shù)目來表示)n = Δt * R,其中R是由遞送節(jié)點(diǎn)用來向客戶端傳送ROI流的(平均)幀傳輸率。時(shí)移的ROI位置信息可以由網(wǎng)絡(luò)中的CDN或另一實(shí)體準(zhǔn)備,并且Δt可以是CDN用于向客戶端遞送分段的最大時(shí)段。
可以根據(jù)網(wǎng)絡(luò)的特性遞送所需時(shí)間來確定時(shí)移Δt。例如,在盡力而為的網(wǎng)絡(luò)中,Δt可以相對(duì)較大,例如幾秒或更多,并且在依照某些QoS規(guī)則遞送數(shù)據(jù)的網(wǎng)絡(luò)中,Δt可以較小,例如小于幾秒甚至小于一秒。
在圖13A中示意地描繪了上述過程,其中客戶端在時(shí)間T接收用于從ROI流送模式切換到拼貼流送模式的信號(hào)。在該時(shí)間,客戶端正再現(xiàn)ROI流的幀f。與幀f相關(guān)聯(lián)的ROI位置信息可以是在時(shí)間上向前移動(dòng)的ROI坐標(biāo)。特別地是,幀f的ROI位置信息可以包括將來ROI幀f+n(其中n = Δt * R)的ROI坐標(biāo)??蛻舳丝梢愿鶕?jù)SMF中的貼片位置信息和時(shí)移的ROI坐標(biāo)來確定該組HEVC貼片流。
在時(shí)段Δt(n幀)之后,選擇的HEVC貼片流的第一幀將在時(shí)間T+n到達(dá)客戶端。客戶端可以根據(jù)共用的內(nèi)容播放時(shí)間線同步HEVC貼片流和再現(xiàn)的ROI流。鄰接的HEVC貼片流的同步幀(即與特定的共用播放時(shí)間相關(guān)聯(lián)的選擇的HEVC貼片流的幀)可以被HEVC解碼器解碼為包括ROI的圖像區(qū)域??蛻舳巳缓罂梢孕纬砂≧OI的圖像區(qū)域,使用時(shí)移的ROI坐標(biāo)pos f+n以便裁切對(duì)應(yīng)于幀f+n的ROI的圖像。這樣,即使當(dāng)在獲取HEVC貼片流期間正移動(dòng)ROI時(shí),也確保到拼貼流送模式的平滑轉(zhuǎn)變。
圖13B描繪了用于實(shí)現(xiàn)如圖13A中所圖示的到拼貼流送模式的平滑轉(zhuǎn)變的步驟的過程流。首先,客戶端可以接收用于切換到拼貼流送模式的信號(hào)(步驟1302)。然后向客戶端提供與幀f+n相關(guān)聯(lián)的時(shí)移的ROI坐標(biāo)(步驟1304)??蛻舳丝梢允褂肧MF中的貼片位置信息和時(shí)移的ROI坐標(biāo)(步驟1306)以便確定一組鄰接的HEVC貼片流,所述一組鄰接的HEVC貼片流能夠用來形成包括ROI流的幀f+n的ROI的圖像區(qū)域(步驟1308)。選擇的HEVC貼片流可以被獲取(步驟1310)并且由客戶端在時(shí)間T+n接收。此后,鄰接的HEVC貼片流的貼片幀和再現(xiàn)的ROI流的ROI幀可以被同步。在內(nèi)容呈現(xiàn)時(shí)間線上具有相同位置的空間鄰接的HEVC貼片流的幀f+n可以被解碼(步驟1312),以便形成包括ROI流的幀f+n的ROI的圖像區(qū)域(步驟1314)。時(shí)移的ROI坐標(biāo)(pos f+n)可以用來從圖像區(qū)域中裁切ROI(步驟1316)并且內(nèi)容的顯示可以從再現(xiàn)ROI流中的ROI幀切換到再現(xiàn)HEVC貼片流的裁切的圖像區(qū)域(步驟1318)。這樣,即便ROI流送模式的播放內(nèi)容涉及高度動(dòng)態(tài)的ROI軌跡,也能夠進(jìn)行從ROI流送模式到拼貼流送模式的平滑轉(zhuǎn)變。
可以認(rèn)為:圖13A和13B只提供了使用先行位置信息的一個(gè)實(shí)施例,并且其它實(shí)施方式也是可以的。例如在一個(gè)實(shí)施例中,可以通過一算法來產(chǎn)生先行位置信息,所述算法使用例如已知的外推算法來預(yù)測在源視頻的圖像區(qū)域內(nèi)的ROI的軌跡,所述外推算法使用在客戶端設(shè)備的緩沖器中可用的ROI位置信息。
圖14A-14C描繪了依照本發(fā)明的各個(gè)實(shí)施例的ROI位置信息。圖14A描繪了用XML編碼的、用于描述特定的感興趣區(qū)域的ROI位置信息的例子。圖14A中的ROI位置信息描繪了三個(gè)連續(xù)的ROI標(biāo)簽。
ROI標(biāo)簽可以包括用于把ROI標(biāo)簽與ROI流中的ROI幀相關(guān)的信息。例如,在圖14A中,<AbsoluteTime(絕對(duì)時(shí)間)>標(biāo)簽可以包括可以用來識(shí)別流中幀的時(shí)間戳或另一(唯一)值。時(shí)間戳可以定義與ROI相關(guān)聯(lián)的絕對(duì)時(shí)間。在一個(gè)實(shí)施例中,時(shí)間戳可以包括用于定義與之相關(guān)聯(lián)的ROI幀的記錄時(shí)間的掛鐘時(shí)間。絕對(duì)時(shí)間可以用浮點(diǎn)記數(shù)法編碼為從1970年1月1日(例如Unix紀(jì)元時(shí)間)開始的秒數(shù)。當(dāng)使用時(shí)間戳?xí)r,所述時(shí)間戳也應(yīng)當(dāng)嵌入到(多個(gè))視頻幀中,從而所述幀可以被與正確的ROI位置信息(ROI標(biāo)簽)相關(guān)。
此外,ROI標(biāo)簽可以包括ROI的位置信息。例如,<PixelX1X2Y1Y2(像素X1X2Y1Y2)>標(biāo)簽可以用像素單元為單位描述ROI的位置。屏幕的左上方像素可以對(duì)應(yīng)于(X,Y)=(0,0)。這樣X1定義了ROI的左側(cè);X2定義了ROI的右側(cè);Y1定義了ROI的頂側(cè);并且Y2定義了ROI的底側(cè)。在用于完整HD 1920x1080屏幕的這種方案中,右下像素對(duì)應(yīng)于(X,Y)=(1919,1079)。
在所述例子中的第一ROI可以定義完整屏幕。在所述例子中的第二ROI可以表示按照80%變焦到中心。所述例子中的第三ROI可以表示向右平移20個(gè)像素。
圖14B描繪了用XML編碼的ROI位置信息的另一實(shí)施例。ROI標(biāo)簽可以包括<RelativeTime(相對(duì)時(shí)間)>標(biāo)簽,<RelativeTime(相對(duì)時(shí)間)>標(biāo)簽用于描述應(yīng)用到ROI的相對(duì)時(shí)間。相對(duì)時(shí)間可以從視頻內(nèi)容的起點(diǎn)計(jì)數(shù)并且可以用浮點(diǎn)記數(shù)法編碼為秒。相對(duì)時(shí)間可以被用為相關(guān)性信息以便使ROI標(biāo)簽相關(guān)到ROI幀。當(dāng)使用相對(duì)時(shí)間時(shí),應(yīng)當(dāng)定義ROI流的清楚定義的起點(diǎn)。
此外,ROI標(biāo)簽可以包括<NormalizedXYzoom(標(biāo)準(zhǔn)化XY變焦)>標(biāo)簽,<NormalizedXYzoom(標(biāo)準(zhǔn)化XY變焦)>標(biāo)簽用于描述ROI的位置(所述位置用標(biāo)準(zhǔn)化格式(X,Y,變焦)描述)。這里,坐標(biāo)“X,Y”可以指示采用浮點(diǎn)記數(shù)法的ROI的左上方像素的位置,其中X和Y二者處于范圍0-1中。在此例子中,屏幕的左上方像素對(duì)應(yīng)于(X,Y)=(0,0)并且完整屏幕的右下方對(duì)應(yīng)于(X,Y)=(1,1)。參數(shù)“zoom(變焦)”可以定義變焦級(jí)別,變焦級(jí)別也可以采用浮點(diǎn)記數(shù)法。Zoom = 1可以對(duì)應(yīng)于完整屏幕。
圖14B的第一ROI標(biāo)簽可以表示完整屏幕。第二ROI可以表示按照50%變焦到左上方。所述例子中的第三ROI可以表示ROI的左上方移動(dòng)到屏幕的中心。
圖14C描繪了可以在ROI標(biāo)簽中使用的標(biāo)簽的例子。如果能夠從內(nèi)容導(dǎo)出幀數(shù),那么FrameNumber(幀數(shù))標(biāo)簽可以被用為相信息。PixelXYWH(像素XYWH)標(biāo)簽可以定義用像素單元表示的ROI的X,Y坐標(biāo)加上寬度和高度。RadialNormalizedXYR(半徑標(biāo)準(zhǔn)化XYR)標(biāo)簽可以定義圓形ROI 的X,Y坐標(biāo)及其半徑。在一個(gè)實(shí)施例中,X,Y坐標(biāo)可以被標(biāo)準(zhǔn)化到0-1比例。SpeedPixeldXdYdWdH(速度像素dXdYdWdH)標(biāo)簽可以定義用每秒像素表示的ROI的X、Y、寬度和高度的時(shí)間導(dǎo)數(shù)。
圖15描繪了其中ROI位置信息被作為MPEG傳輸流(MPEG TS)中的基本流傳輸?shù)膶?shí)施例。特別地是,ROI流的ROI坐標(biāo)可以被封裝到具有私有數(shù)據(jù)流ID的分離PES(分組化的基本流)中。此PES流可以被稱作ROI坐標(biāo)流,此PES流然后可以被復(fù)用到也包括ROI流的MPEG傳輸流中。
圖15描繪了PMT的XML表示,PMT包括視頻流(類型= 0x2,PID = 0x1B63),音頻流(類型= 0x3,PID = 0x1B64)以及ROI坐標(biāo)流(新類型= 0x20,PID = 0x1B66)。新的流類型可以表明包含ROI坐標(biāo)信息的PES流。此流類型然后能夠用在PMT(程序映射表)表中用以表明包含ROI坐標(biāo)流的PID。
在客戶端側(cè),可以通過使用PTS時(shí)間戳實(shí)現(xiàn)在視頻和ROI坐標(biāo)之間的同步,所述PTS時(shí)間戳共用于屬于特定程序的所有PES分組(并且用單個(gè)PMT描述)。作為一個(gè)例子,如果客戶端需要在確定時(shí)刻檢查ROI流的ROI坐標(biāo),那么它可以檢查當(dāng)前顯示的視頻幀的PTS值。此后,它可以在包括ROI坐標(biāo)的PES(ROI坐標(biāo)流)中搜索具有相同PTS的分組。在此分組內(nèi),它將發(fā)現(xiàn)該特定視頻幀的ROI坐標(biāo)信息。
在進(jìn)一步實(shí)施例(它也可以被用于MPEG傳輸流)中,代替定義新的流類型,可以使用DVB定義的SAD(同步輔助數(shù)據(jù)(SynchronisedAuxilary Data)結(jié)構(gòu)(參見TS 102 823)來傳輸ROI坐標(biāo)數(shù)據(jù)(例如(可選地,時(shí)移的)ROI坐標(biāo))。在該情況下,PMT表通告0x06流類型用以表明私有數(shù)據(jù)PES流。為了表明特定的SAD包括ROI坐標(biāo),可以定義新的輔助數(shù)據(jù)描述符(參見TS 102 823的部分5.1)。
除使用SAD結(jié)構(gòu)來攜帶并表明ROI坐標(biāo)流以代替定義新的PES流類型之外,此實(shí)施例的所有其它方面類似于為參考圖15描述的實(shí)施例所描述的那些方面。由于SAD分組也包含PTS值,所以這些分組能夠用來提供在ROI坐標(biāo)流和ROI流之間的同步。
在再又一實(shí)施例中,為了傳輸時(shí)移的ROI坐標(biāo),SAD分組不僅包括ROI坐標(biāo)數(shù)據(jù)而且還包括該坐標(biāo)涉及的時(shí)間戳。這種時(shí)間戳能夠采用幀數(shù)、內(nèi)容時(shí)間戳或PTS/DTS值的形式。在后一種情況,分組首部中的PTS值由TS多路復(fù)用器使用來把分組安置在TS流中,而在有效載荷中包括的PTS分組被使用來使坐標(biāo)與特定視頻幀相關(guān)。
圖16A和16B描繪了本發(fā)明的實(shí)施例,其中在MPEG流的比特流中傳輸ROI數(shù)據(jù)。特別地是,圖16A描繪了這樣的實(shí)施例,在該實(shí)施例中,把ROI數(shù)據(jù)作為補(bǔ)足增強(qiáng)信息(SEI)消息插入到使用基于H.264/MPEG-4的編解碼器編碼的MPEG流的比特流中。
采用這種方案,NAL單元可以定義比特流中的基本塊。SEI消息被定義為與補(bǔ)足增強(qiáng)信息(SEI)相關(guān)聯(lián)的NAL單元(參見ISO/IEC 14496-10 AVC中的7.4.1 NAL單元語義)。這里SEI消息被定義為第5類型消息:用戶數(shù)據(jù)未注冊(cè)。SEI消息可以包括用于ROI數(shù)據(jù)的參數(shù)的預(yù)定數(shù)目的整數(shù)(在此例子中為四個(gè)整數(shù))。
SEI消息可以攜帶額外信息以便幫助解碼過程。不過,為了構(gòu)造解碼信號(hào)的目的,它們的存在并非是強(qiáng)制性的,從從而不要求相符合的解碼器來考慮此額外的信息。在ISO/IEC 14496-10:2012的D.2中定義了各種SEI消息及其語義的定義。
被稱為用戶數(shù)據(jù)未注冊(cè)的SEI消息類型允許在比特流中攜帶任意數(shù)據(jù)。在ROI坐標(biāo)的情況下,此SEI消息可以用來攜帶ROI坐標(biāo)。四個(gè)參數(shù)即左上角的水平位置和垂直位置以及寬度和高度可以用來在源視頻的解碼幀的圖像區(qū)域中定義ROI。
圖16B描繪了本發(fā)明的另一個(gè)實(shí)施例,在該實(shí)施例中,在編碼的比特流中傳輸ROI數(shù)據(jù)。在幀首部中的布爾標(biāo)志可以表明這種信息是否存在。在設(shè)置標(biāo)志的情況下,在標(biāo)志之后的比特可以表示ROI坐標(biāo),例如在源視頻的解碼幀的圖像區(qū)內(nèi)ROI的寬度和高度以及在水平和垂直軸上左上角的位置。
圖17A和17B描繪了其中在視頻容器中傳輸ROI數(shù)據(jù)的本發(fā)明的實(shí)施例。
特別地是,這些圖涉及這樣的實(shí)施例,其中在諸如MP4文件格式(ISO/IEC 14496-14)的視頻容器中傳輸ROI坐標(biāo)。在圖17A中描述了這種文件的通用結(jié)構(gòu)。MP4文件格式指定一組框,它構(gòu)成了用于存儲(chǔ)和訪問媒體數(shù)據(jù)和與之相關(guān)聯(lián)的元數(shù)據(jù)的分層結(jié)構(gòu)。例如,用于與內(nèi)容相關(guān)的元數(shù)據(jù)的根框是“moov”框,而媒體數(shù)據(jù)被存儲(chǔ)在“mdat”框中。更特別地是,“stbl”框或“采樣表框(Sample Table Box)”給用于允許使附加數(shù)據(jù)與每個(gè)采樣關(guān)聯(lián)的軌道的媒體采樣編制索引。在視頻軌道的情況下,采樣是視頻幀。結(jié)果,在框“stbl”內(nèi)增加稱作“采樣ROI坐標(biāo)(Sample ROI coordinates)”或“stro”的新框可以用來存儲(chǔ)視頻軌道的每個(gè)幀的ROI坐標(biāo)。圖17B描繪了其中在新的框“stro”中傳輸ROI坐標(biāo)的本發(fā)明的實(shí)施例,所述新框“stro”可以包括視頻軌道的部分或所有視頻采樣的ROI坐標(biāo)。
圖18描繪了本發(fā)明的實(shí)施例,其中ROI位置信息作為MPEG-4流的專用元數(shù)據(jù)軌道被傳輸。ROI位置信息軌道遵循常規(guī)軌道(像音頻或視頻)的結(jié)構(gòu),然而其中的數(shù)據(jù)不是視頻或音頻幀而是包含ROI坐標(biāo)的元數(shù)據(jù)(具有具體采樣入口代碼)。
標(biāo)準(zhǔn)的ISO/IEC 14496部分12提供了用于在ISO基礎(chǔ)媒體文件格式內(nèi)包括計(jì)時(shí)元數(shù)據(jù)軌道(并且繼承MP4文件格式)的機(jī)制。在此實(shí)施例中,元數(shù)據(jù)軌道和視頻軌道必須被同步,使得ROI數(shù)據(jù)軌道的采樣(ROI坐標(biāo))被映射到視頻軌道的采樣(視頻幀)。在實(shí)踐中,元數(shù)據(jù)軌道使用軌道參考‘tref’框被鏈接到視頻軌道,軌道參考‘tref’框的引用類型為‘cdsc’并且軌道_id (track_id)為參考的軌道的id。
在進(jìn)一步實(shí)施例中,ROI坐標(biāo)可以經(jīng)由帶外文件或流被遞送到客戶端設(shè)備。可以使用時(shí)間戳實(shí)現(xiàn)同步。在一個(gè)實(shí)施例中,ROI坐標(biāo)可以被置于文件中,(例如在VoD流的情況下)在開始重放之前或者(在實(shí)況流的情況下)在經(jīng)由網(wǎng)絡(luò)套接字(WebSocket)遞送數(shù)據(jù)之前,所述文件被獲取。
由于在這種情況下ROI坐標(biāo)與實(shí)際視頻數(shù)據(jù)一起被帶外發(fā)送,所以同步不能夠基于視頻容器內(nèi)部信息,諸如PTS值。作為替代,能夠使用內(nèi)容時(shí)間戳。這種時(shí)間戳能夠基于內(nèi)容時(shí)間(即起始于在視頻流開始時(shí)的00:00:00),或基于用于實(shí)況廣播流的掛鐘時(shí)間(例如20:31:11)。類似的時(shí)間戳也應(yīng)當(dāng)存在于視頻流自身中。對(duì)于MPEG DASH或HLS流,這種時(shí)間戳可以由MPD或清單文件提供。在通過例如DVB遞送ROI流的情況下,可以使用在MPEG TS 復(fù)用中插入的DVB時(shí)間線分組(參見102 823)。
在另一實(shí)施例中,ROI坐標(biāo)可以作為視頻中的水?。ㄋ。﹤鬏敗T谶M(jìn)一步實(shí)施例中,ROI坐標(biāo)可以作為水印被放置到ROI流自身中。
圖19A和19B描繪了依照本發(fā)明實(shí)施例的用于拼貼流送的所謂的“空間緩沖器”的使用。圖19A描繪了ROI流的ROI幀,其中ROI幀包括“空間緩沖器”1902,即當(dāng)用戶不與顯示的內(nèi)容相交互時(shí)或當(dāng)不允許用戶與顯示的內(nèi)容相交互時(shí)被傳送到客戶端而未顯示的圖像數(shù)據(jù)的(在圖像1904的中心區(qū)域周圍的)邊緣區(qū)域。因此在該情況下,當(dāng)不存在用戶交互時(shí)可以被顯示的中心區(qū)域被從ROI幀中裁切并且被顯示給用戶。然后,當(dāng)用戶與內(nèi)容相交互時(shí),ROI 1906(的一部分)被導(dǎo)航到被定義為空間緩沖器的區(qū)中。然而,因?yàn)榇嬖谟脩艚换?,所以允許顯示來自空間緩沖器的圖像數(shù)據(jù)。用戶交互可以觸發(fā)客戶端來切換到拼貼流送模式并且根據(jù)ROI請(qǐng)求貼片,如參考上面的圖9-14所詳細(xì)描述的。在獲取HEVC貼片流期間,可以通過從部分位于空間緩沖器的區(qū)中的圖像區(qū)域中裁切ROI來顯示移動(dòng)的ROI 1908。在依照本發(fā)明的一個(gè)實(shí)施例中,在SMF中(優(yōu)選為MPD(媒體呈現(xiàn)描述中)定義一個(gè)或多個(gè)參數(shù),用以表明空間緩沖器的圖像區(qū)的維度(空間緩沖器的圖像區(qū)是未顯示的ROI流的圖像的區(qū))。被稱作例如@spatialbuffersize(@空間緩沖器尺寸)的此參數(shù)例如可以采用以下格式中的一個(gè)或多個(gè)定義:
(ROI的圖像區(qū)的)按寬度和高度的百分比計(jì)的邊緣尺寸
(在ROI的顯示圖像區(qū)周圍均勻分布的)按像素計(jì)的邊緣尺寸
(在ROI的顯示圖像區(qū)周圍的左、右、頂、底的)按像素計(jì)的邊緣尺寸
作為備選,一組可用的ROI坐標(biāo)可以備從4(x,y,w,h)推廣到8,因此分別表示內(nèi)部(顯示的)ROI和外部ROI(包括空間緩沖器)的維度。
圖20描述了依照本發(fā)明實(shí)施例的三模式的ROI流送模型。在此特定的實(shí)施例中,客戶端可以處于拼貼流送模式(第一模式)中,其中根據(jù)四個(gè)貼片再現(xiàn)用戶產(chǎn)生的ROI。如果用戶停止交互并且想要在ROI流送模式(第三模式)中查看內(nèi)容,那么系統(tǒng)可以切換達(dá)預(yù)定時(shí)間之久才切換到第二模式而不是立即切換到ROI流送模式。在此第二模式中,客戶端留在拼貼流送模式中,同時(shí)接收ROI流的ROI位置信息。然后客戶端使用ROI位置信息以便選擇貼片并且根據(jù)一組HEVC貼片流的同步幀產(chǎn)生裁切的圖像,如上面參考圖9-14所詳細(xì)描述的。如果用戶開始與顯示的內(nèi)容相交互,那么它可以立即切換到拼貼流送模式(第一模式)以便顯示用戶產(chǎn)生的ROI。可替換地,如果客戶端預(yù)測用戶即將交互或如果內(nèi)容顯示的確定時(shí)段開始或?qū)⒁_始,其中存在用戶可能想要與內(nèi)容相交互的高變化,那么客戶端邏輯可以導(dǎo)致切換到第二模式,從而可以依照快速和平滑(無縫的)方式實(shí)現(xiàn)到拼貼流送模式以顯示用戶產(chǎn)生的ROI的轉(zhuǎn)變。
圖21是圖示可以用在如參考圖1-20描述的系統(tǒng)和方法中的示例性數(shù)據(jù)處理系統(tǒng)的框圖。數(shù)據(jù)處理系統(tǒng)1000可以包括通過系統(tǒng)總線2106耦合到存儲(chǔ)元件2104的至少一個(gè)處理器2102。因而,數(shù)據(jù)處理系統(tǒng)可以在存儲(chǔ)元件2104內(nèi)存儲(chǔ)程序代碼。此外,處理器2102可以執(zhí)行經(jīng)由系統(tǒng)總線2106從存儲(chǔ)元件2104訪問的程序代碼。在一個(gè)方面,數(shù)據(jù)處理系統(tǒng)可以被實(shí)現(xiàn)為適于存儲(chǔ)和/或執(zhí)行程序代碼的計(jì)算機(jī)。然而應(yīng)當(dāng)理解,可以采用任何系統(tǒng)的形式實(shí)現(xiàn)數(shù)據(jù)處理系統(tǒng)2100,所述任何系統(tǒng)包括能夠執(zhí)行在此說明書內(nèi)描述的功能的處理器和存儲(chǔ)器。
存儲(chǔ)元件2104可以包括一個(gè)或多個(gè)物理存儲(chǔ)器設(shè)備,諸如本地存儲(chǔ)器2108和一個(gè)或多個(gè)大容量存儲(chǔ)設(shè)備2110。本地存儲(chǔ)器可以指代在實(shí)際執(zhí)行程序代碼期間一般使用的隨機(jī)存取存儲(chǔ)器或其它非持久性存儲(chǔ)設(shè)備(多個(gè))。大容量存儲(chǔ)設(shè)備可以被實(shí)現(xiàn)為硬盤驅(qū)動(dòng)器或其它持久性數(shù)據(jù)存儲(chǔ)設(shè)備。處理系統(tǒng)2100還可以包括一個(gè)或多個(gè)高速緩存存儲(chǔ)器(未示出),一個(gè)或多個(gè)高速緩存存儲(chǔ)器提供至少一些程序代碼的臨時(shí)存儲(chǔ),以便減少在執(zhí)行期間必須從大容量存儲(chǔ)器2110中獲取程序代碼的次數(shù)。
被描繪為輸入設(shè)備2112和輸出設(shè)備2114的輸入/輸出(I/O)設(shè)備可選地能夠被耦合到數(shù)據(jù)處理系統(tǒng)。輸入設(shè)備的例子可以包括但不限于:例如鍵盤、諸如鼠標(biāo)的指向設(shè)備等。輸出設(shè)備的例子可以包括但不限于例如監(jiān)視器或顯示器、揚(yáng)聲器等。輸入設(shè)備和/或輸出設(shè)備可以或者直接地或通過介于中間的I/O控制器被耦合到數(shù)據(jù)處理系統(tǒng)或。網(wǎng)絡(luò)適配器2116還可以被耦合到數(shù)據(jù)處理系統(tǒng)以使它能夠通過介于中間的私有或公共網(wǎng)絡(luò)變得耦合到其它系統(tǒng)、計(jì)算機(jī)系統(tǒng)、遠(yuǎn)程網(wǎng)絡(luò)設(shè)備和/或遠(yuǎn)程存儲(chǔ)設(shè)備。網(wǎng)絡(luò)適配器可以包括用于接收由所述系統(tǒng)、設(shè)備和/或網(wǎng)絡(luò)發(fā)送的數(shù)據(jù)的數(shù)據(jù)接收器和用于向所述系統(tǒng)、設(shè)備和/或網(wǎng)絡(luò)傳送數(shù)據(jù)的數(shù)據(jù)傳送器。調(diào)制解調(diào)器、電纜調(diào)制解調(diào)器和以太網(wǎng)卡是可以被用于數(shù)據(jù)處理系統(tǒng)2150的不同類型的網(wǎng)絡(luò)適配器的例子。
如在圖21中所描畫的,存儲(chǔ)器元件2104可以存儲(chǔ)應(yīng)用2118。應(yīng)當(dāng)理解,數(shù)據(jù)處理系統(tǒng)2100可以進(jìn)一步執(zhí)行操作系統(tǒng)(未示出),所述操作系統(tǒng)能夠便于應(yīng)用的執(zhí)行。采用可執(zhí)行程序代碼形式實(shí)現(xiàn)的應(yīng)用能夠由數(shù)據(jù)處理系統(tǒng)2100(例如由處理器2102)執(zhí)行。響應(yīng)于執(zhí)行應(yīng)用,數(shù)據(jù)處理系統(tǒng)可以被配置為執(zhí)行本文進(jìn)一步詳細(xì)描述的一個(gè)或多個(gè)操作。
在一個(gè)方面中,例如,數(shù)據(jù)處理系統(tǒng)1000可以表示客戶端數(shù)據(jù)處理系統(tǒng)。客戶端數(shù)據(jù)處理系統(tǒng)也被稱為客戶端設(shè)備。在該情況下,應(yīng)用2118可以表示客戶端應(yīng)用,所述客戶端應(yīng)用當(dāng)被執(zhí)行時(shí)配置數(shù)據(jù)處理系統(tǒng)2100以便執(zhí)行本文參考“客戶端”描述的各個(gè)功能??蛻舳说睦幽軌虬ǖ幌抻趥€(gè)人計(jì)算機(jī)、便攜式計(jì)算機(jī)、移動(dòng)電話等。
本文使用的術(shù)語只是為了描述特定的實(shí)施例的目的并且不意在限制本發(fā)明。如本文所使用的,單數(shù)形式“一”、“一種”和“該”也意在包括復(fù)數(shù)形式,除非上下文另外清楚地表明。還應(yīng)當(dāng)理解的是,術(shù)語“包含”和/或“包括”當(dāng)在本說明書中使用時(shí)指定陳述的特征、整數(shù)、步驟、操作、元件和/或組件的存在,但是不排除存在或增加一個(gè)或多個(gè)其它特征、整數(shù)、步驟、操作、元件、組件和/或其組合。
所有方法或步驟的相應(yīng)結(jié)構(gòu)、材料、動(dòng)作和等效物加上下面權(quán)利要求中的功能元件意在包括用于按照所特別主張保護(hù)的那樣結(jié)合其它主張保護(hù)的元件執(zhí)行功能的任何結(jié)構(gòu)、材料或動(dòng)作。為了說明和描述已經(jīng)給出了本發(fā)明的描述,但是并不意在把本發(fā)明窮舉或限制為所公開的形式。在不脫離本發(fā)明的精神或范圍的情況下許多修改和改變對(duì)那些本領(lǐng)域技術(shù)人員來說是清楚的。選擇并描述了實(shí)施例以便最好地解釋本發(fā)明的原理及其實(shí)際應(yīng)用,并且使其它本領(lǐng)域普通技術(shù)人員能夠在適于所預(yù)期的特定使用的各種改變的情況下因各個(gè)實(shí)施例而理解本發(fā)明。