TWI847125B - 視埠相關媒體處理的方法及系統 - Google Patents
視埠相關媒體處理的方法及系統 Download PDFInfo
- Publication number
- TWI847125B TWI847125B TW111114861A TW111114861A TWI847125B TW I847125 B TWI847125 B TW I847125B TW 111114861 A TW111114861 A TW 111114861A TW 111114861 A TW111114861 A TW 111114861A TW I847125 B TWI847125 B TW I847125B
- Authority
- TW
- Taiwan
- Prior art keywords
- viewport
- media
- tracks
- adaptation
- server
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 132
- 238000012545 processing Methods 0.000 title claims description 75
- 230000001419 dependent effect Effects 0.000 title description 10
- 230000006978 adaptation Effects 0.000 claims description 179
- 238000009877 rendering Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 5
- 238000009795 derivation Methods 0.000 abstract description 15
- 230000008569 process Effects 0.000 description 35
- 230000003044 adaptive effect Effects 0.000 description 30
- 230000006870 function Effects 0.000 description 29
- 238000013459 approach Methods 0.000 description 12
- 239000012634 fragment Substances 0.000 description 12
- 238000003860 storage Methods 0.000 description 12
- 230000000007 visual effect Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 11
- 230000009466 transformation Effects 0.000 description 11
- 230000015572 biosynthetic process Effects 0.000 description 10
- 238000003786 synthesis reaction Methods 0.000 description 10
- 238000010276 construction Methods 0.000 description 9
- 230000009471 action Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 230000002123 temporal effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000002441 reversible effect Effects 0.000 description 4
- 239000004576 sand Substances 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 239000002131 composite material Substances 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- VBRBNWWNRIMAII-WYMLVPIESA-N 3-[(e)-5-(4-ethylphenoxy)-3-methylpent-3-enyl]-2,2-dimethyloxirane Chemical compound C1=CC(CC)=CC=C1OC\C=C(/C)CCC1C(C)(C)O1 VBRBNWWNRIMAII-WYMLVPIESA-N 0.000 description 1
- 101000606504 Drosophila melanogaster Tyrosine-protein kinase-like otk Proteins 0.000 description 1
- 101100421142 Mus musculus Selenon gene Proteins 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000005415 magnetization Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
Abstract
本文描述了一種視埠相關媒體處理的方法及系統,用於生成和獲得沉浸式媒體的視訊資料。獲得沉浸式媒體的視訊資料的方法由與服務器通信的客戶端設備實現,包括向服務器發送對與客戶端設備的視埠相對應的部分媒體資料的請求;從服務器接收包括部分媒體資料的一個或多個適配軌道;以及部分媒體資料是從對應於視埠的一組軌道生成的,其中組軌道除了對應於視埠的部分媒體資料之外,還包含對應於不同於視埠的沉浸式媒體的空間部分的不同媒體資料。本文的視埠相關媒體處理的方法及系統可以減少解碼器的處理負擔並節省帶寬。
Description
本文所描述的技術一般涉及用於視埠相關媒體處理的服務器端動態適配,包括服務器端動態空間適配。
存在各種類型的3D內容和多向內容。例如,全向視訊是一種使用一組攝像機,而不是像傳統單向視訊那樣僅使用單個攝像機捕獲的視訊。例如,可以將攝像機放置在特定的中心點周圍,以便每個攝像機捕獲場景的球形覆蓋範圍內的一部分視訊,從而捕獲360度視訊。來自多個攝像機的視訊可以被拼接、可能旋轉和投影,以生成代表球形內容的投影二維圖像。例如,可以使用等長矩形投影將球面圖放入二維圖像中。然後可以進一步使用例如二維編碼和壓縮技術處理。最終,使用期望的傳送機制(例如,閃存(thumb drive)、數位視訊磁盤(DVD)、文件下載、數位廣播和/或在線流媒體)來存儲和傳送編碼和壓縮的內容。這種視訊可用於虛擬現實(VR)和/或3D視訊。
在客戶端,當客戶端處理內容時,視訊解碼器對編碼和壓縮的視訊進行解碼,並執行逆投影以將內容放回球體上。用戶然後可以查看呈現的內容,例如使用頭戴式查看設備。內容通常根據用戶的視埠(viewport)呈現,視埠代表用戶查看內容的角度。視埠還可以包括表示觀看區域的組件,該組件可以描述觀看者以特定角度觀看的區域的大小和形狀。
當視訊處理不以視埠相關的方式進行時,使得視訊編碼器和/或解碼器不知道用戶將實際觀看什麼,那麼整個編碼、傳送和解碼過程將處理整個球面內容。例如,這可以允許用戶在任何特定視埠和/或區域查看內容,因為所有球形內容都被編碼、傳遞和解碼。但是,處理所有球形內容可能是計算密集型的,並且會消耗大量帶寬。
在線流(Online streaming)技術,例如基於HTTP的動態自適應流(dynamic adaptive streaming over HTTP,簡寫為DASH),可以提供自適應位元率媒體流技術(包括多向內容和/或其他媒體內容)。例如,DASH可以允許客戶端請求可用的多個內容版本之一,以便客戶端選擇所請求的內容以滿足客戶端的當前需求和/或處理能力。然而,這樣的流技術需要客戶端執行的適配會給客戶端設備帶來沉重的負擔和/或可能無法通過低成本設備實現。
根據所公開的主題,提供了一種視埠相關媒體處理的方法及系統,用於生成和獲得沉浸式媒體的視訊資料。
根據一個實施例,獲得沉浸式媒體的視訊資料的方法由與服務器通信的客戶端設備實現,包括向服務器發送對與客戶端設備的視埠相對應的部分媒體資料的請求;從服務器接收包括部分媒體資料的一個或多個適配軌道;以及部分媒體資料是從對應於視埠的一組軌道生成的,其中組軌道除了對應於視埠的部分媒體資料之外,還包含對應於不同於視埠的沉浸式媒體的空間部分的不同媒體資料。
根據另一實施例,用於為沉浸式媒體提供視訊資料的方法由與客戶端設備通信的服務器實現,該方法包括:從該客戶端設備接收對與該客戶端設備的視埠相對應的部分媒體資料的請求;訪問包括多個媒體軌道的多媒體資
料,每個媒體軌道包括對應於沉浸式媒體的不同空間部分的不同媒體資料;基於該請求,從該多個媒體軌道中確定與該客戶端設備的該視埠相對應的一組媒體軌道;以及生成包括該部分媒體資料的一個或多個適配軌道並將包含該部分媒體資料的該一個或多個適配軌道傳輸到該客戶端設備。
根據另一實施例,提供了一種視埠相關媒體處理系統,包括:至少一個處理器,被配置為執行用於獲得沉浸式媒體的視訊資料的方法,該方法由與該服務器通信的客戶端設備實現,該方法包括:向該服務器發送對與該客戶端設備的視埠相對應的部分媒體資料的請求;從該服務器接收包括該部分媒體資料的一個或多個適配軌道,其中:基於該客戶端設備的該視埠,該部分媒體資料適配於該客戶端設備;以及該部分媒體資料是從對應於該視埠的一組軌道生成的,其中該組軌道除了對應於該視埠的該部分媒體資料之外,還包含對應於不同於該視埠的沉浸式媒體的空間部分的不同媒體資料。
根據又一實施例,提供了一種視埠相關媒體處理系統,包括:至少一個處理器,被配置為執行用於為沉浸式媒體提供視訊資料的方法,該方法由與客戶端設備通信的服務器實現,該方法包括:從該客戶端設備接收對與該客戶端設備的視埠相對應的部分媒體資料的請求;訪問包括多個媒體軌道的多媒體資料,每個媒體軌道包括對應於該沉浸式媒體的不同空間部分的不同媒體資料;基於該請求,從該多個媒體軌道中確定與該客戶端設備的視埠相對應的一組媒體軌道;以及生成包括該部分媒體資料的一個或多個適配軌道並將包含該部分媒體資料的該一個或多個適配軌道傳輸到該客戶端設備。
本文的視埠相關媒體處理的方法及系統可以減少解碼器的處理負擔並節省帶寬。
因此,已經相當廣泛地概述了所公開主題的特徵,以便可以更好地理解下面的詳細描述,並且可以更好地理解對本領域的當前貢獻。當然,所
公開的主題的附加特徵將在下文中描述並且將形成所附申請專利範圍的主題。應當理解,這裡使用的措辭和術語是為了描述的目的而不應被視為限制性的。
100:視訊編碼配置
102A-102N:相機
104:編碼設備
106:視訊處理器
108:編碼器
110:解碼設備
112:解碼器
114:渲染器
116:顯示器
200、1800:流程
201:球形視埠
202~212:塊
300:軌道分層結構
302~314k、404、408、502~508、711、721A、721B、731、741A、741B:軌道
400:示例
402A~402N:輸入軌道/圖像
406:軌道導出操作
500、600:語法
502、602:參數
700:自適應流系統
701、1110:流客戶端
705、1141:清單
702、851、1151、1612、1614、1616、1712、1714、1716:片段
703:服務器
1001、2002~2008、2102~2104:步驟
704:HTTP緩存
706:清單遞送功能
750、1600、1700:媒體呈現描述
754、756、758、1260、1730:適配集
752、762、1610、1620、1710:表示
762A:片段資訊
764:片段訪問
800、1100、1500、1900:配置
861、1561:HTTP高速緩存
822、1122、1522:服務器
810、1510:流客戶端
820、1120、1520:媒體片段遞送功能
821、1121、1521:片段遞送服務器
811、1123、1523:適配邏輯
812、1112、1512:流訪問引擎
813、1113、1513:媒體引擎
900、1201:流程
911、912、913、1211~1213:流
901-903、1201:片段
1001~1008、1301~1308、1401~1408:步驟
1114:HTTP訪問客戶端
1220:適配
1902:NBMP源
1904:NBMP工作流管理器
1906:功能庫
1908:媒體處理實體
1910:媒體源
1912:媒體接收器
2000、2100:方法
在附圖中,各個圖中所示的每個相同或幾乎相同的部件由相同的附圖標記表示。為清楚起見,並非每個組件都可以在每張圖中標記。附圖不一定按比例繪製,而是重點放在說明本文描述的技術和設備的各個方面。
第1圖示出了根據一些實施例的示例性視訊編碼配置。
第2圖示出了根據一些示例的用於VR內容的視埠相關(viewport dependent)內容流程。
第3圖示出了根據一些實施例的示例性軌道分層結構。
第4圖示出了根據一些示例的軌道導出操作的示例。
第5圖示出了根據一些示例的用於從輸入軌道的樣本中選擇一個樣本的示例性句法,其中軌道來自相同的交替組。
第6圖示出了根據一些示例的用於從輸入軌道的樣本中選擇一個樣本的示例性語法,其中這些軌道來自相同的切換組。
第7A圖示出了根據一些實施例的通用自適應流系統的示例性配置。
第7B圖示出了根據一些示例的包括媒體呈現描述(MPD)的示例性清單。
第8圖示出了客戶端動態自適應流系統的示例性配置。
第9圖示出了根據一些實施例的端到端流媒體處理的示例。
第10圖示出了根據一些實施例的用於客戶端自適應流的客戶端設備和服務器(或CDN)之間的示例性消息傳遞工作流。
第11圖示出了根據一些實施例的服務器端自適應流系統的示例性配置。
第12圖示出了根據一些實施例的使用服務器端自適應流的端到端流媒體處理的
示例。
第13圖示出了根據一些實施例的用於服務器端自適應流傳輸的客戶端設備和服務器。
第14圖示出了根據一些實施例的用於SSSA的客戶端設備和服務器之間的另一個示例性工作流。之間的示例性工作流。
第15圖示出了根據一些實施例的混合側自適應流(mixed side adaptive streaming)系統的示例性配置。
第16圖示出了根據一些實施例的在用於常規客戶端自適應流傳輸的適配集中具有多個表示的周期的媒體表示描述的示例。
第17圖示出了根據一些實施例的用於服務器端自適應流傳輸的適配集中的單個表示的示例。
第18圖示出了根據一些示例的用於服務器端流適配的VR內容的視埠相關內容流程。
第19圖示出了根據一些實施例的用於服務器端流適配的基於網路的媒體處理(NBMP)的示例性配置。
第20圖示出了根據一些實施例的用於與客戶端設備通信的服務器的示例性計算機化方法。
第21圖示出了根據一些實施例的用於與服務器通信的客戶端設備的示例性計算機化方法。
傳統的自適應媒體流技術依賴於客戶端設備來執行適配,客戶端通常基於由客戶端確定和/或對客戶端可用的適配參數(adaptation parameter)來執行適配。例如,客戶端可以接收可用媒體的描述(例如,包括不同的可用位
元率),確定其處理能力和/或網路帶寬,並使用確定的資訊從可用位元率中選擇滿足客戶當前的處理能力的最佳可用位元率。客戶端可以隨時間更新相關的適配參數,並相應地調整請求的位元率以動態調整內容以適應不斷變化的客戶端條件。
發明人已經發現並意識到傳統客戶端流適配方法的缺陷。特別是,這種範式將內容適配的負擔放在了客戶端上,因此客戶端負責獲取其相關處理參數並處理可用內容以在可用表示中進行選擇,以找到客戶端參數的最佳表示。適配過程是迭代的,因此客戶端必須隨著時間的推移重複執行適配過程。
特別是,客戶端驅動的流適配,其中客戶端根據用戶的視埠請求內容,通常需要客戶端在任何給定時間對用戶視埠內圖像的圖塊和/或部分(例如,可能只是可用內容的一小部分)進行多次請求。因此,客戶端隨後接收並處理圖像的各個圖塊或部分,客戶端必須將它們組合起來以進行顯示。這通常被稱為客戶端動態適應(client-side dynamic adaptation,CSDA)。由於CSDA方法要求客戶端下載多個圖塊的多個資料,因此通常需要客戶端在客戶端設備上即時拼接這些資料塊。因此,這可能需要在客戶端無縫拼接拼圖塊段。CSDA方法還要求對檢索和拼接的圖塊段進行一致的品質管理,例如,避免拼接不同品質的圖塊。一些CSDA方法試圖預測用戶的移動(以及視埠),這通常需要緩衝區管理來緩衝與預測的用戶移動相關的圖塊,並可能下載可能最終不會使用的圖塊(例如,如果用戶的移動不是正如預測的那樣)。
因此,給客戶端帶來了沉重的計算和處理負擔,並且需要客戶端設備具有足夠的最小處理能力。基於某些類型的內容,這種客戶端負擔可能會進一步加重。例如,某些內容(例如,沉浸式媒體內容)需要客戶端執行各種計算密集型處理步驟,以便將內容解碼並呈現給用戶。為了解決傳統客戶端驅動的流適配方法的這些和其他問題,本文描述的技術提供服務器側適配
(server-side adaptation),其中媒體和/或網路服務器可以執行流適配(streaming adaptation)的方面,否則這些方面通常由客戶端設備執行。
在一些實施例中,客戶端設備可以向服務器提供渲染資訊。例如,在一些實施例中,客戶端設備可以為沉浸式媒體場景向服務器提供視埠資訊。例如,視埠資訊可以包括視埠方向、大小、高度和/或寬度。服務器可以使用視埠資訊在服務器端為客戶端構建視埠,而不需要客戶端設備進行視埠的拼接和構建。服務器隨後可以確定對應於視埠的區域和/或圖塊並執行區域和/或圖塊的拼接。因此,可以將空間媒體處理任務移動到自適應流實現的服務器端。根據一些實施例,響應於檢測到視埠已經改變,客戶端設備可以向服務器發送第二參數。
在一些實施例中,本文描述的用於導出的軌道選擇和軌道切換的技術可以用於在運行時(at run time)能夠分別從替代軌道組和切換軌道組進行軌道選擇和切換以傳送到客戶端設備。因此,服務器可以使用包括選擇和切換導出操作的導出軌道,該操作允許服務器基於可用的媒體軌道(例如,來自不同位元率的媒體軌道)為用戶構建單個媒體軌道。本文描述了提供可用於在樣本級別(例如,不是軌道級別)執行軌道選擇和軌道切換的軌道導出操作的變換操作。如本文所述,可以通過軌道選擇導出操作處理多個輸入軌道(例如,不同位元率、品質等的軌道),以在樣本級別從輸入軌道之一選擇樣本,從而生成輸出軌道的媒體樣本。因此,本文描述的基於選擇的軌道導出(selection-based track derivation)技術允許在導出操作時從一組軌道中的軌道選擇樣本。在一些實施例中,基於選擇的軌道導出可以提供軌道樣本的軌道封裝作為導出軌道的導出操作的輸出,其中軌道樣本是從一組軌道中選擇或切換的。結果,軌道選擇導出操作可以將來自任何輸入軌道的樣本提供給由導出軌道的變換指定的導出操作,以生成所得到的樣本的軌道封裝。
在以下描述中,闡述了關於所公開主題的系統和方法以及這些系統和方法可以在其中運行的環境等的許多具體細節,以便提供對所公開主題的透徹理解。此外,應當理解,以下提供的示例是示例性的,並且可以預期在所公開主題的範圍內還有其他系統和方法。
第1圖示出了根據一些實施例的示例性視訊編解碼配置100。攝像機102A-102N是N個攝像機,並且可以是任何類型的攝像機(例如,包括音訊記錄能力的攝像機,和/或單獨的攝像機和音訊記錄功能)。編碼設備104包括視訊處理器106和編碼器108。視訊處理器106處理從相機102A-102N接收的視訊,例如拼接、投影和/或映射。編碼器108對二維視訊資料進行編碼和/或壓縮。解碼裝置110接收編碼資料。解碼設備110可以通過廣播網路、通過移動網路(例如,蜂窩網路)和/或通過互聯網接收作為視訊產品(例如,數位視訊盤或其他計算機可讀媒體)的視訊。解碼裝置110例如可以是計算機、手持裝置、頭戴式顯示器的一部分或任何其他具有解碼能力的裝置。解碼設備110包括解碼器112,其被配置為對編碼的視訊進行解碼。解碼設備110還包括渲染器114,用於將二維內容渲染回用於回放的格式。顯示器116顯示來自渲染器114的渲染內容。
通常,可以使用球形內容來表示3D內容,以提供場景的360度視圖(例如,有時稱為全向媒體內容)。雖然使用3D球體可以支持多個視圖,但終端用戶通常只查看3D球體上的一部分內容。傳輸整個3D球體所需的帶寬會給網路帶來沉重的負擔,並且可能不足以支持球體內容。因此,希望使3D內容的交付(3D content delivery)更有效。可以執行視埠相關處理以改進3D內容交付。3D球面內容可以劃分為區域/圖塊/子圖像(regions/tiles/sub-picture),只有與觀看屏幕相關的內容(例如,視埠)才能傳輸並交付給終端用戶。
第2圖示出了根據一些示例的用於VR內容的視埠相關內容流程
200。如圖所示,球形視埠201(例如,其可以包括整個球體)在塊202處經歷拼接、投影、映射(以生成投影和映射區域),在塊204處被編碼(以生成多種品質的編碼/轉碼圖塊),在塊206交付(作為圖塊),在塊208解碼(以生成解碼的圖塊),在塊210構建(以構建球形渲染視埠),並在塊212渲染。塊214處的用戶交互可以選擇一個視埠,它會啟動多個“即時(just-in-time)”流程步驟,如虛線箭頭所示。
在過程200中,由於當前網路帶寬限制和各種適配要求(例如,在不同的品質、編解碼器和保護方案上),3D球形VR內容首先被處理(拼接、投影和映射)到2D平面(塊202)然後封裝在多個基於圖塊的(或基於子圖像的)和片段的文件中(塊204)以用於傳送和回放。在這種基於圖塊和片段的文件中,2D平面中的空間圖塊(例如,它表示空間部分,通常為2D平面內容的矩形)通常被封裝為其變體的集合,例如以不同的品質和位元率,或採用不同的編解碼器和保護方案(例如,不同的加密算法和模式)。在一些示例中,這些變體對應於MPEG DASH中的適配集中的表示。在一些示例中,基於用戶在視埠上的選擇,當放在一起時,提供所選視埠的覆蓋範圍的不同圖塊的這些變體中的一些變體由接收器檢索或傳送到接收器(通過傳送塊206),然後解碼(在塊208)以構建和渲染所需的視埠(在塊210和212)。
如第2圖所示,視埠的概念是終端用戶所看到的,它涉及球體上區域的角度和大小。對於360度內容,通常,這些技術將所需的圖塊/子圖像內容傳遞給客戶端,以覆蓋用戶將查看的內容。這個過程是視埠相關的,因為這些技術只提供覆蓋當前感興趣的視埠的內容,而非整個球形內容。視埠(例如,一種球形區域)可以改變,因此不是靜態的。例如,當用戶移動他們的頭部時,系統需要獲取相鄰的圖塊(或子圖像)以覆蓋用戶接下來想要查看的內容。
例如,可以將內容的平面文件結構用於單個電影的視訊軌道。對
於VR內容,存在多於接收設備發送和/或顯示的內容的內容。例如,如本文所討論的,可以存在整個3D球體的內容,其中用戶僅觀看一小部分。為了更有效地編碼、存儲、處理和/或傳遞這樣的內容,可以將內容分成不同的軌道。第3圖示出了根據一些實施例的示例性軌道分層結構300。頂部軌道302是3D VR球形內容軌道,頂部軌道302下方是關聯元資料軌道304(每個軌道具有關聯元資料)。軌道306是2D投影軌道。軌道308是2D大圖像軌道(big picture track)。區域軌道被示為軌道310A到310R,通常稱為子圖像軌道310。每個區域軌道310具有一組相關聯的變體軌道。區域軌道310A包括變體軌道312A到312K。區域軌道310R包括變體軌道314A到314K。因此,如軌道層次結構300所示,可以開發以實體多個變體區域軌道312開始的結構,並且可以為區域軌道310(子圖像或圖塊軌道)、投影和打包的2D軌道308、投影2D軌道306和VR 3D視訊軌道302,以及與它們相關聯的適當元資料軌道建立軌道層次結構。
在操作中,變體軌道包括實際的圖像資料。設備在交替變化的軌道中進行選擇,以挑選代表子圖像區域(或子圖像軌道)310的那個。子圖像軌道310被平鋪並一起組合成2D大圖像軌道308。然後最終,軌道308被反向映射,例如,以重新排列一些部分以生成軌道306。軌道306然後被逆投影回3D軌道302,其是原始3D圖像。
示例性軌道分層結構可以包括以下方面所述的方面,例如:m39971,“Deriving Composite Tracks in ISOBMFF”,2017年1月(日內瓦,CH);m40384,“Deriving Composite Tracks in ISOBMFF using track grouping mechanisms”,2017年4月(澳大利亞霍巴特);m40385,“Deriving VR Projection and Mapping related Tracks in ISOBMFF”;m40412,“Deriving VR ROI and Viewport related Tracks in ISOBMFF”,MPEG第118次會議,2017年4月,通過引用將其全部併入本文。在第3圖中,rProjection、rPacking、compose
和alternate分別表示軌道導出TransformProperty項reverse'proj'、reverse'pack'、'cmpa'和'cmp1',用於說明目的並且不旨在限制。元資料軌道中顯示的元資料類似地用於說明目的並且不旨在限制。例如,可以使用來自OMAF的元資料框,如w17235,“Text of ISO/IEC FDIS 23090-2 Omnidirectional Media Format”,MPEG第120次會議,2017年10月(中國澳門)中所述,其通過引用併入本文它的全部。
第3圖中所示的軌道數旨在說明性而非限制性的。例如,在如第3圖所示的層次結構中不一定需要一些中間導出軌道的情況下,可以將相關的導出步驟組合成一個(例如,將反向打包和逆投影組合在一起以消除投影軌道306的存在)。
導出的視覺軌道可以通過其所包含類型“dtrk”的樣本條目來指示。導出樣本包含要對輸入圖像或樣本的有序列表執行的操作的有序列表。每個操作都可以由變換屬性(Transform Property)指定或指示。通過按順序執行指定的操作來重建導出的視覺樣本。ISOBMFF中可用於指定軌道導出的變換屬性示例,包括最新的ISOBMFF正在考慮的技術(Technologies Under Consideration,簡寫為TuC)中的那些(例如,參見N17833,“Technologies under Consideration for ISOBMFF”,2018年7月,盧布爾雅那,SK,其全部內容通過引用併入本文),包括:'idtt'(身份)變換屬性;'clap'(清潔光圈(clean aperture)))變換屬性;'srot'(旋轉)變換屬性;'dslv'(溶解(dissolve))變換屬性;'2dcc'(ROI裁剪)變換屬性;'tocp'(軌道疊加合成)變換屬性;'tgcp'(跟踪網格合成)變換屬性;'tgmc'(使用矩陣值跟踪網格合成)變換屬性;'tgsc'(跟踪網格子圖像合成)變換屬性;'tmcp'(變換矩陣合成)變換屬性;'tgcp'(軌道分組合成)變換屬性;和“tmcp”(使用矩陣值的軌道分組合成)變換屬性。所有這些軌道導出都與空間處理有關,包括圖像處理和輸入軌道的空間合成。
導出的視覺軌道可用於指定將應用於導出操作的輸入軌蹟的視覺變換操作的定時序列(timed sequence)。輸入軌道可以包括例如具有靜止圖像和/或圖像的定時序列樣本的軌道。在一些實施例中,導出的視覺軌道可以包含在ISOBMFF中提供的方面,其在w18855,“Text of ISO/IEC 14496-12 6th edition”(2019年10月,日內瓦,CH)中指定,其通過引用整體併入本文。例如,ISOBMFF可用於提供基本媒體文件設計和一組轉換操作。示例性變換操作包括,例如,Identity、Dissolve、Crop、Rotate、Mirror、Scaling、Region-of-interest和Track Grid,如w19428,“Revised text of ISO/IEC CD 23001-16 Derived visual tracks in the ISO base media file format”(2020年7月,在線會議)中所提到的,通過引用將其全部併入本文。在TuC w19450,“Technologies under Consideration on ISO/IEC 23001-16”(2020年7月,在線會議)中提供了一些額外的導出轉換候選,包括與合成和沉浸式媒體處理相關的轉換操作,在此通過引用將其全部內容併入本文。
第4圖示出了根據一些示例的軌道導出操作400的示例。多個輸入軌道/圖像一(1)402A、二(2)402B到N 402N被輸入到導出的視覺軌道404,其承載變換樣本的變換操作。軌道導出操作406將變換操作應用於導出視覺軌道404的變換樣本以生成包括視覺樣本的導出的視覺軌道408。
在m39971(“Deriving Composite Tracks in ISOBMFF”(2017年1月,日內瓦,CH),其通過引用整體併入本文)中提出了两种基于轨道选择的推导变换,即“Selection of One”('sel1')和“Selection of Any”('seln')。然而,這兩種變換都是為輸入軌道的圖像合成而設計的,因此需要維度資訊來進行合成操作。
第5圖示出了根據一些示例的用於從輸入軌道的樣本中選擇一個樣本的示例性句法,其中軌道來自相同的交替組(alternate group)。
“AlternateGroupSelection”導出變換語法500從輸入軌道的樣本中選擇一個(並且只有一個樣本)。語法500的輸入軌道來自相同的交替組,例如,輸入軌道在它們的軌道頭(track header)中可以具有相同的非零值alternate_group,指示特定的交替組。可以在軌道導出時進行選擇。例如,可以根據ISOBMFF規範w18855(“Text of ISO/IEC 14496-12 6th edition”,2019年10月,日內瓦,CH)中提供的alternate_group規範在軌道導出時進行選擇,包括與合成和沉浸式媒體處理相關的轉換操作,通過引用將其全部併入本文。
可以根據導出變換中的參數attribute_list[]502中提供的描述和區分屬性列表進一步限制選擇。這些屬性可以用作描述或區分標準,以按照屬性在列表中出現的順序,從其軌道選擇框(例如,TrackSelectionBox)中逐一匹配所有屬性的輸入軌道中選擇一個軌道。當列表為空時,導出不會對選擇施加額外的限制。請注意,這些屬性可能是也可能不是每個輸入軌道的軌道選擇框(例如,TrackSelectionBox)中屬性的子集。
第6圖示出了根據一些示例的用於從輸入軌道的樣本中選擇一個樣本的示例性語法,其中這些軌道來自相同的切換組(switch group)。‘SwitchGroupSelection’導出變換語法600從輸入軌道樣本中選擇一個且僅一個樣本。輸入軌道可以來自相同的切換組,例如,每個輸入軌道可以包含軌道選擇框(例如,TrackSelectionBox)並且可以在軌道選擇框中具有相同的非零值'switch_group',指示一個特定的切換組。可以在軌道導出時進行選擇。例如,可以根據ISOBMFF規範w18855中提供的alternate_group規範在軌道導出時進行選擇。
可以根據導出變換中的參數attribute_list[]602中提供的描述和區分屬性列表進一步限制選擇。這些屬性可以用作描述或區分標準,以按照屬性在列表中出現的順序,從其軌道選擇框(例如,TrackSelectionBox)中逐一匹配
所有屬性的輸入軌道中選擇一個軌道。當列表為空時,導出不會對選擇施加額外的限制。請注意,這些屬性可能是也可能不是每個輸入軌道的軌道選擇框(例如,TrackSelectionBox)中屬性的子集。
傳統的自適應媒體流技術依賴於客戶端設備來執行基於客戶端可用的適配參數的任何適配。不意在限制,為了便於參考,此類技術通常可以稱為客戶端流適配(CSSA),其中客戶端設備負責在自適應媒體流系統中執行流適配。第7A圖示出了根據一些實施例的通用自適應流系統700的示例性配置。與諸如HTTP服務器703之類的服務器通信的流客戶端701可以接收清單705。清單705描述內容(例如,視訊、音訊、字幕、位元率等)。在該示例中,清單遞送功能706可以向流媒體客戶端703提供清單705。清單遞送功能706和服務器703可以與媒體呈現準備模塊707通信。流客戶端701可以使用例如HTTP緩存704(例如,服務器端緩存和/或內容交付網路的緩存)從服務器703請求(和接收)片段702。例如,這些片段可以與短媒體片段相關聯,例如6-10秒長片段。有關說明性示例的更多詳細資訊,請參見例如w18609,“Text of ISO/IEC FDIS 23009-1:2014 4th edition”,2019年7月,瑞典哥德堡,其通過引用整體併入本文。
第7B圖示出了根據一些示例的包括媒體呈現描述(MPD)750的示例性清單。例如,清單可以是發送到流客戶端701的清單705。MPD 750包括一系列週期,這些週期將內容分成不同的時間部分,每個部分具有不同的ID和開始時間(例如,0秒、100秒、300秒等)。每個時段可以包括一組多個適配集(例如,字幕、音訊、視訊等)。週期752A顯示每個週期如何可以具有一組關聯的適配集,在此示例中包括用於意大利語字幕的適配集0 754、用於視訊的適配集1 756、用於英語音訊的適配集2 758和用於德語音訊的適配集3 760。每個適配集可以包括一組表示(representation)以提供適配集的相關內容的不同
品質。如該示例中所示,適配集1 756包括表示1-4 762,每個具有不同的支持位元率(即,500Kbps、1Mbps、2Mbps和3Mbps)。每個表示可以具有不同品質的段資訊。如圖所示,例如,表示3 752A包括片段資訊762A,其具有10秒的持續時間和模板,以及片段訪問(segment access)764,其包括初始化片段和一系列媒體片段(例如,在本示例中,十秒長的媒體片段)。
在傳統的自適應流配置中,流客戶端,例如流客戶端701,實現用於流適配的適配邏輯。特別地,流媒體客戶端701可以接收MPD 750,並且選擇(例如,基於客戶端的適配參數,例如帶寬、CPU處理能力等)MPD的每個週期(可能隨時間、給定的不同網路條件和/或客戶端處理能力改變)的表示,並檢索相關的段以呈現給用戶。隨著客戶端的適配參數發生變化,客戶端可以相應地選擇不同的表示(例如,如果可用網路帶寬減少和/或客戶端處理能力低,則使用較低的位元率資料,或者如果可用帶寬增加和/或客戶端資料處理能力高,則使用較高的位元率)。在根據一些適配參數從不同媒體流中選擇片段時,適配邏輯可以包括靜態適配和動態適配。例如,這在w18609的“MPD Selection Metadata”中進行了描述,通過引用將其整體併入本文。
第8圖示出了客戶端動態自適應流系統的示例性配置800。如本文所述,配置800包括通過HTTP高速緩存861與服務器822通信的流客戶端810。服務器822可以被包括在媒體片段遞送功能820中,其包括片段遞送服務器821。片段遞送服務器821被配置為將片段851傳輸到流訪問引擎812。流訪問引擎還從清單遞送功能830接收清單841。
如本文所述,在常規配置中,客戶端設備810執行適配邏輯811。客戶端設備810通過清單遞送功能830接收清單。客戶端設備810還從流訪問引擎812接收適配參數並發送對流訪問引擎812選擇的片段的請求。流訪問引擎還與媒體引擎813通信。
第9圖示出了根據一些實施例的端到端流媒體處理的示例。在端到端流媒體處理流程900中,客戶端執行適配邏輯,該適配邏輯以從一組可用流911、912和913中選擇(例如,加密的)片段的形式來執行流適配,例如,片段URL 901-903。這樣,每個加密段901、902和903通過內容交付網路(CDN)910傳輸並且全部傳輸到客戶端設備。客戶端設備然後可以選擇這些段。
第10圖示出了根據一些實施例的用於客戶端自適應流的客戶端設備和服務器(或CDN)之間的示例性消息傳遞工作流。在傳統的自適應流方法中,客戶端可以首先在步驟1001發送對清單的請求。服務器和/或CDN可以在步驟1002發送清單。客戶端設備可以隨後分別在步驟1003和1004收集適配參數並選擇表示。然後客戶端可以在1005請求片段,在1006從客戶端接收片段,並且可以在1008由客戶端回放內容。可以在1007重複該過程,使得可以更新適配參數,客戶端可以基於更新的適配參數請求新的和/或不同的片段,在1008,可以下載片段並且可以由客戶端回放內容。適配參數的示例包括與網路帶寬和設備處理/CPU處理有關的參數。
傳統的客戶端流適配方法存在缺陷。特別地,這樣的範式被設計為使得客戶端既獲得內容適配所需的資訊(例如,適配參數),接收所有可用內容和相關表示(例如,不同位元率)的完整描述,又處理可用內容以在可用的表示中進行選擇,以找到最適合客戶端適應參數的表示。隨著時間的推移,客戶端必須進一步重複執行該過程,包括更新適配參數以及根據更新的參數選擇相同和/或不同的表示。因此,客戶端的負擔很重,需要客戶端設備具備足夠的處理能力。此外,此類配置通常需要客戶端發出多個請求以啟動流會話,包括(1)獲取可用內容的清單和/或其他描述,(2)請求初始化片段,以及(3)然後請求內容片段。因此,這種方法通常需要三個或更多調用。對於說明性示例,假設每個調用大約需要500毫秒,那麼啟動過程可能會消耗一秒或多秒的時
間。
對於某些類型的內容,例如沉浸式媒體,客戶端需要執行計算密集型操作。例如,傳統的沉浸式媒體處理向發出請求的客戶端提供圖塊。因此,客戶端設備需要從解碼的圖塊構建視埠,以便將視埠呈現給用戶。這種構建和/或拼接可能需要大量的客戶端處理能力。此外,這樣的方法可能需要客戶端設備接收一些最終沒有呈現到視埠中的內容,從而消耗不必要的存儲和帶寬。
在一些實施例中,本文描述的技術提供用於媒體軌道的服務器端選擇和/或切換。不意在進行限制,為了便於參考,此類技術通常可以稱為服務器端流適配(SSSA),其中服務器可以執行流適配的方面,否則這些方面通常由客戶端設備執行。因此,與傳統方法相比,這些技術提供了主要的範式轉變。在一些實施例中,這些技術可以將一些和/或大部分適配邏輯移動到服務器,使得客戶端可以簡單地向服務器提供適當的適配資訊和/或參數,並且服務器可以為該客戶端生成適當的媒體流。結果,客戶端處理可以簡化為接收和播放媒體,而不是同時執行適配。
在一些實施例中,這些技術提供了一組適配參數。適配參數可以由客戶端和/或網路收集並傳送到服務器以支持服務器端內容適配。例如,參數可以支持位元率自適應(例如,用於在不同的可用表示之間切換)。作為另一個示例,參數可以提供時間適應(例如,支持特技播放)。作為又一示例,這些技術可以提供空間適配(例如,視埠和/或視埠相關媒體處理適配)。作為另一個示例,這些技術可以提供內容適應(例如,用於預渲染、故事情節選擇等)。
在一些實施例中,本文描述的用於導出的軌道選擇和軌道切換的技術可以用於在運行時能夠分別從替代軌道組和切換軌道組進行軌道選擇和切換以傳送到客戶端設備。因此,服務器可以使用包括選擇和切換導出操作的導出軌道,該操作允許服務器基於可用的媒體軌道(例如,來自不同位元率的媒
體軌道)為用戶構建單個媒體軌道。還參見,例如,m54876(“Track Derivations for Track Selection and Switching in ISOBMFF”,2020年10月,在線會議)中包含的導出,其通過引用整體併入本文。
在一些實施例中,可用軌道和/或表述(representation)可以存儲為單獨的軌道。如本文所述,變換操作可用於在樣本級別(例如,不是軌道級別)執行軌道選擇和軌道切換。因此,本文描述的用於導出的軌道選擇和軌道切換的技術可以用於在運行時從一組可用媒體軌道(例如,不同位元率的軌道)中選擇和切換軌道,以傳送到客戶端設備。因此,服務器可以使用包括選擇和切換導出操作的導出軌道,該操作允許服務器基於可用的媒體軌道(例如,來自不同位元率的媒體軌道)和客戶端的適配為用戶構建單個媒體軌道參數。例如,軌道選擇和/或切換可以以從輸入軌道中選擇以確定哪個輸入軌道最適合客戶端的適應參數的方式來執行。結果,可以通過軌道選擇導出操作處理多個輸入軌道(例如,不同位元率、品質等的軌道),以從樣本級別的輸入軌道之一中選擇樣本,以生成媒體樣本的媒體樣本,其隨著時間的推移動態調整以滿足客戶端的適應參數。如本文所述,在一些實施例中,基於選擇的軌道導出可以將軌道樣本封裝為來自導出軌道的導出操作的輸出。結果,軌道選擇導出操作可以將來自任何輸入軌道的樣本提供給由導出軌道的變換指定的導出操作,以生成樣本的軌道封裝。生成的(新)軌道可以傳輸到客戶端設備進行播放。
在一些實施例中,客戶端設備可以向服務器提供空間適應資訊,例如空間渲染資訊。例如,在一些實施例中,客戶端設備可以為沉浸式媒體場景向服務器提供視埠資訊(在2D、球形和/或3D視埠上)。服務器可以使用視埠資訊在服務器端為客戶端構建視埠,而不需要客戶端設備執行(2D、球面或3D)視埠的拼接和構建。因此,空間媒體處理任務可以移動到自適應流實現的服務器端。
在一些實施例中,客戶端可以提供其他適應資訊,包括時間和/或基於內容的適應資訊。例如,客戶端可以提供位元率適配資訊(例如,用於表示切換)。作為另一個示例,客戶端可以提供時間適應資訊(例如,諸如用於特技播放、低延遲適應、快速上交(fast-turn-ins)等)。作為另一個示例,客戶端可以提供內容適配資訊(例如,用於預渲染、故事情節選擇等)。服務器端可以被配置為接收和處理這樣的適配資訊,以為客戶端設備提供時間和/或基於內容的適配。
例如,第11圖示出了根據一些實施例的服務器端自適應流系統的示例性配置。如本文所述,配置1100包括通過HTTP緩存1161與服務器1122通信的流客戶端1110。流客戶端1110包括流訪問引擎1112、媒體引擎1113和HTTP訪問客戶端1114。服務器1122可以是媒體片段遞送功能1120的一部分,其包括片段遞送服務器1121。片段遞送服務器1121被配置為將片段1151傳輸到流媒體客戶端1110的流媒體訪問引擎1112。流媒體訪問引擎1112還自清單遞送功能1130接收清單1141。與第8圖的示例不同,客戶端設備不執行適配邏輯在可用表示和/或片段中進行選擇。相反,適配邏輯1123併入媒體傳遞功能1120中,使得服務器端執行適配邏輯以基於客戶端適配參數動態選擇內容。因此,流客戶端1110可以簡單地向媒體段遞送功能1120提供適配資訊和/或適配參數,該功能又為客戶端執行選擇。在如本文所述的一些實施例中,流客戶端1110可以請求與服務器為客戶端生成的內容流相關聯的一般(例如,佔位符)片段。
如本文進一步描述的,可以使用各種技術來傳達適配參數。例如,適配參數可以作為查詢參數(例如,URL查詢參數)、HTTP參數(例如,作為HTTP頭參數)、SAND消息(例如,攜帶由客戶端和/或其他設備收集的適配參數)等提供。URL查詢參數的示例可以包括例如:$bitrate=1024、$2D_viewport_x=0、$2D_viewport_y=0、$2D_viewport_width=1024、
$2D_viewport_height=512等。HTTP報頭參數的示例可以包括例如:位元率=1024、2D_viewport_x=0、2D_viewport_y=0、2D_viewport_width=1024、2D_viewport_height=512等。
第12圖示出了根據一些實施例的使用服務器端自適應流的端到端流媒體處理的示例。在端到端流媒體處理流程1200中,服務器而不是如第9圖的CSDA的示例中的客戶端設備執行一些和/或所有的適配邏輯,該適配邏輯用於從這裡討論的一組可用流中選擇(例如,加密的)片段。例如,服務器設備可以執行適配1220以從可用流1211-1213的集合中選擇片段。服務器設備可以選擇例如片段1201。片段1201可以相應地經由內容遞送網路(CDN)從服務器傳送到客戶端設備。如圖所示,客戶端設備因此可以使用如本文所討論的單個URL來從服務器獲取內容(而不是客戶端配置通常需要的多個URL,以便區分可用內容的不同格式(例如,不同的位元率)。
第13圖示出了根據一些實施例的用於服務器端自適應流傳輸的客戶端設備和服務器之間的示例性工作流。客戶端可以首先在步驟1301發送對清單的請求。服務器和/或CDN可以在步驟1302向客戶端發送清單。客戶端設備隨後可以在步驟1303收集適配參數。客戶端設備然後可以在1304發送對具有適配參數的一般和/或占位符段的請求(例如,服務器可以使用其來選擇段)。作為響應,服務器和/或CDN可以在1305使用參數從可用軌道中選擇片段並且在1306將選擇的片段傳輸到客戶端設備,這可以在步驟1308回放。客戶端設備可以重複1307處的過程以向服務器提供新的/更新的適配參數,以接收新的片段,並相應地回放接收到的內容。
根據一些實施例,本文描述的軌道導出可用於選擇和/或切換軌道以實現CSSD。在一些實施例中,當導出的切換軌道用於實現SSSA時,上述工作流程可以被修改,如第14圖所示,其示出了根據一些實施例的用於SSSA的客
戶端設備和服務器之間的另一個示例性工作流。
在第14圖中,客戶端可以首先在步驟1401發送對清單的請求。服務器和/或CDN可以在步驟1402發送清單。客戶端設備可以隨後在步驟1403收集適配參數。在步驟1404,客戶端設備然後可以以該些參數請求導出的切換軌道的段。作為響應,服務器和/或CDN可以在步驟1405使用參數得到導出的切換軌道的段,並且在步驟1406將選擇的段傳輸到客戶端設備。客戶端設備可以在步驟1407重複並在步驟1408回放內容。
根據一些實施例,在使用服務器端流適配時,客戶端設備可以進行一個或多個靜態選擇(例如,與視訊編解碼器配置文件、屏幕尺寸和加密算法相關的選擇),並且只留下動態媒體適配(例如,那些與視訊位元率、網路帶寬有關的)到服務器。例如,客戶端設備可以收集自適應邏輯所需的動態適配參數並將其作為片段請求的一部分傳遞給服務器。這些適配參數的通信可以在包括URL查詢參數、HTTP報頭參數和/或SAND消息的機制中實現,例如,攜帶客戶端和其他DANE收集的適配參數。參見例如w16230,“Text of ISO/IEC FDIS 23009-5 Server and Network Assisted DASH”,2016年6月,日內瓦,CH,其通過引用整體併入本文。
在一些實施例中,流客戶端和服務器都可以執行自適應邏輯的相關方面。根據一些實施例,例如,這樣的配置可以包括客戶端設備執行適配邏輯以首先選擇適配集中的表示(包括一個或多個表示),然後隨後將適配參數傳輸到服務器。服務器然後可以使用適配參數並且此後執行適配邏輯以隨時間動態地為客戶端設備選擇內容。作為另一示例,服務器可以執行第一次適配,而客戶端執行一個或多個後續適配。作為另一示例,客戶端和服務器可以隨著時間以某種方式交替哪個設備執行適配(例如,基於客戶端設備處的可用處理能力、網路延遲等)。
第15圖示出了根據一些實施例的混合側自適應流(mixed side adaptive streaming)系統的示例性配置。配置1500包括通過HTTP緩存1561與服務器1522通信的流客戶端1510。流客戶端1510包括適配邏輯1511、流訪問引擎1512、媒體引擎1513和HTTP訪問客戶端1514。服務器1522可以是媒體片段遞送功能1520,其包括片段遞送服務器1521和適配邏輯1510。片段遞送服務器1521被配置為將片段1551傳輸到流客戶端1510的流訪問引擎1512。流訪問引擎1512進一步從清單遞送功能1530接收清單1541。
媒體段遞送功能1520和客戶端設備1510兩者都執行適配邏輯的關聯部分,如包括適配邏輯1523的媒體段遞送功能1520和包括適配邏輯1511的流客戶端1510所示。因此,客戶端設備1510經由流訪問引擎1512接收和/或確定適配參數,從清單1541中呈現的可用段集合中確定(例如,第一)段,並將對該段的請求發送到段遞送服務器1521。流客戶端1510還可以被配置為隨時間確定和更新適配參數,並且將適配參數提供給服務器,使得媒體片段遞送功能1520可以隨時間繼續為流傳輸客戶端1510執行適配。
在服務器端和混合端配置中,媒體呈現描述都可以如本文所討論的那樣進行交換。第16圖示出了根據一些實施例的在用於常規客戶端自適應流傳輸的適配集中具有多個表示的周期的媒體表示描述的示例。如圖所示(例如,並且如結合第7B圖所討論的),每個週期的適配集可以包括在該示例中顯示為表示1610到表示1620的多個表示。每個表示,例如針對表示1610示出的,可以包括初始化段1612和一組媒體段(在該示例中顯示為1614到1616)。
在一些實施例中,對於服務器端和/或混合端配置,可以修改適配集,使得每個適配集僅包括一個表示。第17圖示出了根據一些實施例的用於服務器端自適應流傳輸的適配集1730中的單個表示1710的示例。與第16圖的媒體呈現描述1600相比,對於服務器端流適配,可以為媒體呈現描述1700中的每
個適配集1730包括單個表示1710而不是多個表示。這是可能的,因為客戶端設備不執行從可用表示中進行選擇的邏輯,因此客戶端不需要知道不同內容品質之間的任何區別等。在一些實施例中,媒體呈現描述1600可以用於混合端配置,其中客戶端執行一些適配處理,同時服務器執行一些適配處理(例如,客戶端選擇初始表示和/或後續表示)。在一些實施例中,單個表示1710可以包括指向包含導出操作的導出軌道的URL,以基於客戶端的(適配)參數生成適配的軌道(adapted track)。客戶端設備然後可以訪問通用URL並向服務器提供參數,使得服務器可以為客戶端構建軌道。在一些實施例中,相同和/或不同的URL可以用於初始化段1712和媒體段1714。例如,如果客戶端將不同的適配參數傳遞給服務器以區分兩種不同類型的請求,例如使用一組參數進行初始化,另一組參數用於段。作為另一個示例,不同的URL可以用於初始化和媒體段(例如,在兩個或多個不同的段之間進行區分)。客戶端可以使用單個表示連續請求段,因此使用單個通用URL。
服務器端適配會導致帶寬減少以及整體內容處理的減少,不然的話某些類型的內容(例如沉浸式媒體)可能需要這些處理。返回以參考第2圖,舉例來說,第2圖示出了用於服務器端流適配的虛擬現實(VR)內容的視埠相關內容流程200。如所描述的,球形視埠201在塊202經歷拼接、投影、映射,在塊204被編碼,在塊206被傳遞,並且在塊208被解碼。客戶端設備構建(210)用於用戶視埠的媒體(例如,從一組適配的圖塊和/或圖塊軌道)向用戶呈現(212)用戶視埠的內容。當使用服務器端流適配時,構建過程可以在服務器端而不是客戶端執行(例如,從而減少和/或消除將在塊210處需要由客戶端設備執行的處理)。例如,通過將適配和軌道生成轉移到服務器端,可以避免構建過程210,因為可以在服務器端生成精確的內容,減少解碼器的處理負擔並節省帶寬,因為關聯的圖塊軌道通常包括未呈現到用戶視埠上的附加內容。例如,客戶端可
以向服務器提供視埠資訊(例如,視埠的位置、視埠的形狀、視埠的大小等)以從服務器請求覆蓋視埠的視訊。服務器可以使用接收到的視埠資訊來傳遞僅針對該視埠的相關媒體集,並為客戶端設備執行空間適配。
通常,這裡描述的技術提供了服務器端適配方法。在一些實施例中,與在自適應流系統中的客戶端流適配CSSA不同,導出的合成、選擇和切換軌道可用於實現SSSA,用於依賴於視埠的媒體處理。例如,m54876(“Track Derivations for Track Selection and Switching in ISOBMFF”,2020年10月(在線會議))、w19961(“Study of ISO/IEC 23001-16 DIS”,2021年1月(在線會議))和w19956(“Technologies under Consideration of ISO/IEC 23001-16”,2021年1月(在線會議))描述了導出的合成、選擇和切換軌道,通過引用將其全部併入本文。
如本文所述,出於各種原因,沉浸式媒體處理通常採用視埠相關的方法。例如,3D球形內容首先被處理(拼接、投影和映射)到2D平面上,然後封裝在許多基於圖塊的片段文件中以供播放和交付。在這種基於圖塊和片段的文件中,2D平面中的空間圖塊或子圖像,通常表示2D平面的矩形空間部分,被封裝為其變體的集合(例如支持不同品質的變體和位元率,或在不同的編解碼器和保護方案中)。例如,這樣的變體可以對應於MPEG DASH中的適配集中的表示。它基於用戶在視埠上的選擇,將這些不同圖塊的變體中的一些變體放在一起時,提供所選視埠的覆蓋範圍,由接收器檢索或傳遞給接收器,然後解碼以構建和渲染所需的視埠。
其他內容可以有類似的高級方案。例如,當使用MPEG DASH交付VR內容時,用例通常需要在MPD內為VR內容發信視埠和ROI,以便客戶端可以幫助用戶決定要交付並渲染哪些視埠和ROI(如果有)。作為另一個示例,對於全向內容之外的沉浸式媒體內容(例如,點雲和3D沉浸式視
訊),可以使用類似的視埠相關方法進行處理,其中視埠和圖塊是3D視埠和3D區域,而不是2D視埠和2D子圖像。
因此,客戶需要為各種類型的媒體執行計算成本高的構建過程。特別是,由於內容被劃分為區域/圖塊/等,客端可以選擇哪些部分將用於覆蓋客戶端的視埠。實際上,用戶正在查看的可能只是內容的一小部分。服務器還需要使內容(包括部分/圖塊)對客戶端可用。一旦客戶端選擇了不同的東西(例如,基於帶寬),或者一旦用戶移動和視埠改變,那麼客戶端需要請求不同的區域。由於客戶端需要對這裡討論的各種圖塊和/或表示執行多次下載和/或檢索,因此對於每個子圖像或圖塊,客戶端可能需要進行多個單獨的請求(例如,單獨的HTTP請求、例如對與視埠關聯的四個不同圖塊的四個請求)。
發明人已經發現並理解,可能希望從客戶端移除一些和/或所有構建過程(例如,結合第2圖討論的步驟210)。特別是,在客戶端執行構建可能需要在客戶端動態(on-the-fly)圖塊拼貼(例如,這可能需要圖塊片段的無縫拼接,包括圖塊邊界填充)。客戶端的構建還可以要求客戶端對檢索和拼接的圖塊段執行一致的品質管理(例如,避免拼接不同品質的圖塊)。另外或替代地,客戶端上的構建還可以要求客戶端執行圖塊緩衝管理(例如,包括讓客戶端嘗試預測用戶的移動而不下載不必要的圖塊)。客戶端的構建可以附加地或替代地要求客戶端執行3D點雲和沉浸式視訊的視埠生成(例如,包括從壓縮的分量視訊片段構建視埠)。
為了解決這些和其他問題,這裡描述的技術將空間媒體處理從客戶端移動到服務器。在一些實施例中,客戶端將空間相關資訊(例如,視埠相關資訊)傳遞給服務器,使得服務器可以執行一些和/或所有空間媒體處理。例如,如果客戶端需要一個X×Y區域,客戶端可以簡單地將視場的位置和/或大小傳遞給服務器,服務器可以確定請求的區域並執行構建過程以拼接相關圖塊覆
蓋請求的視埠,並且僅將拼接的內容交付回客戶端。因此,客戶端只需要對交付的內容進行解碼和渲染。進一步地,當視埠發生變化時,客戶端可以向服務器發送新的視埠資訊,服務器可以相應地改變傳遞的內容。因此,客戶端無需確定使用哪些圖塊來構建視埠,而是可以將視埠資訊發送到服務器,服務器可以為客戶端處理和生成單個視埠段。這樣的方法可以解決上面提到的各種缺陷,例如減少和/或消除客戶端執行動態拼接、品質管理、圖塊緩衝區管理等的需要。此外,如果內容被加密,這種方法可以簡化加密,因為它只需要在客戶定制的媒體上執行。
根據一些實施例,在本文描述的SSSA方法中,一組動態適配參數可以由客戶端或網路收集並傳送到服務器。例如,參數可以包括DASH或SAND參數,並且可以用於支持位元率自適應,例如表示切換(representation switching)(例如,如w18609(“Text of ISO/IEC FDIS 23009-1:2014 4th edition”,2019年7月,Gothenburg,SE)和w16230(“Text of ISO/IEC FDIS 23009-5 Server and Network Assisted DASH”,2016年6月,日內瓦,CH)中所述,兩者均以引用方式全文併入本文)、時間適應(temporal adaptation)(例如,諸如w18609中描述的特技播放)、如視埠/依賴視點的媒體處理的空間適應(例如,如w19786(“Text of ISO/IEC FDIS 23090-2 2nd edition OMAF”,ISO/IEC JTC 1/SC 29/WG 3,2020年10月)和WG03N0163(“Draft text of ISO/IEC FDIS 23090-10 Carriage of Visual Volumetric Video-based Coding Data”,2021年1月,在線會議)所述,在此全部引入以上內容),以及內容適配,例如預渲染和故事情節選擇(例如,如w19062(“Text of ISO/IEC FDIS 23090-8 Network-based Media Processing”,2020年1月,布魯塞爾,比利時)中所述)。
在接收到這些參數後,服務器可以基於從客戶端和網路收集的參數進行動態適配,例如用於構建客戶端將在CSSA方法中構建的視埠的空間適
配。由於服務器的處理能力和雲計算的趨勢,這種SSSA方法可能比客戶端對視埠相關媒體處理的傳統動態適應更有優勢。
在一些實施例中,這裡討論的選擇和切換軌道可以用於在服務器側啟用流適配。特別是,由於選擇和切換軌道可以在運行時分別從備用軌道組和切換軌道組進行軌道選擇和切換,因此可以在服務器端而不是客戶端執行流適配,以簡化流客戶端實現。
由於基於選擇的軌道導出可以在導出時提供從替代或切換組中選擇軌道樣本,因此可以實現各種改進。例如,這種導出可以為從替代或切換組中選擇或切換的軌道樣本提供軌道封裝。這種軌道封裝可以提供關於所選或切換軌道的元資料與其軌道封裝本身的直接關聯,而不是與從中選擇或切換軌道的軌道組的關聯。例如,為了指定在運行時從軌道組中選擇的軌道具有感興趣區域(region of interest,簡寫為ROI),可以在導出軌道的元資料框('meta')中輕鬆地發信ROI(例如,當ROI是靜態的)和/或定時元資料軌道可用於引用導出軌道(例如,當ROI是動態時,使用引用類型“cdsc”)。相比之下,不用導出軌道就沒有直接的方式來發信ROI元資料:在備用或切換組中的每個軌道的元資料框中發信靜態ROI並不傳達相同的含義,而是傳達了每個軌道都有靜態ROI。此外,使用表示動態ROI的定時元資料軌道(timed metadata track)來引用備用或切換組需要指定新的軌道引用類型,因為軌道引用框中的現有軌道引用狀態,當用於引用軌道組時,“軌道引用單獨應用於所引用的軌道組的每個軌道”,這不是預期的結果。
導出的軌道封裝還可以實現基於軌道的媒體處理工作流的規範和執行,例如在基於網路的媒體處理中,以將導出的軌道不僅作為輸出而且在工作流中用作中間輸入。
導出的軌道封裝還可以提供軌道選擇或切換,使其對動態自適應
流媒體(例如DASH)的客戶端是透明的,並在相應的服務器或分發網路內執行(例如,結合SAND實現)。這可以幫助簡化客戶端邏輯和實現,將動態內容適配從流清單級別轉移到文件格式導出的軌道級別(file format derived track level)(例如,基於w18855中8.3.3子條款中定義的描述性和區分屬性)。借助基於選擇的導出的軌道,DASH客戶端和DASH感知網路元素(DASH aware network elements,簡寫為DANE)可以提供導出的軌道中所需的屬性值(例如,編解碼器“cdec”、屏幕尺寸“scsz”、位元率“bitr”),並讓媒體源服務器和CND從一組可用媒體軌道中提供內容選擇和切換。這可能會導致,例如,消除AdaptationSet的使用和/或將其使用限制為僅包含DASH中的單個表示。
第18圖示出了根據一些示例的用於服務器端流適配的VR內容的視埠相關內容流程1800。如本文所述,球形視埠201(例如,其可以包括整個球體)在塊202處經歷拼接、投影、映射(以生成投影和映射區域),在塊204處被編碼(以生成多種品質的編碼/轉碼塊)),在塊206被傳遞(作為圖塊),並且在塊208被解碼(以生成解碼的圖塊)。如第18圖所示,球形視埠可能不需要在塊210構建(以構建球形渲染的視埠,例如當構建由如本文所述的服務器執行時),因此內容可以繼續在塊212渲染。如在200中,在塊214的用戶交互可以選擇視埠,其啟動多個“即時”處理步驟,如虛線箭頭所示。
在一些實施例中,本文描述的SSSA技術可以在基於網路的媒體處理框架內使用。例如,在一些實施例中,視埠構建可以被認為是一個或多個基於網路的功能(例如,除了其他功能,例如360度拼接、6DoF預渲染、引導轉碼、電子競技流、OMAF打包器、測量、MiFiFo緩衝、1toN拆分、Nto1合併等)。第19圖示出了根據一些實施例的用於服務器端流適配的基於網路的媒體處理(NBMP)的示例性配置1900。如圖所示,NBMP架構可以包括NBMP源1902,NBMP源1902通過NBMP工作流API向NBMP工作流管理器1904提供工作
流描述,NBMP工作流管理器1904通過功能發現API與功能庫1906通信以獲得功能描述。NBMP工作流管理器1904與一組媒體處理實體1908通信,媒體處理實體1908執行MPE任務以處理來自媒體源1910的媒體以將媒體遞送到媒體接收器1912(例如,客戶端設備和/或其他MPE)。在一些實施例中,動態適配可以實現為NBMP架構中的NBMP功能。例如,這些功能可以包括用於拼接(例如,360度拼接)、預渲染(例如,6DoF預渲染)、轉碼、流(例如,電子競技流)、打包(例如,OMAF打包)、測量、緩衝(例如,MiFiFo緩衝)、拆分(例如,1到N拆分)、合併(例如,N到1合併)等的功能。
第20圖示出了根據一些實施例的用於與客戶端設備通信的服務器的示例性計算機化方法2000。在步驟2002,服務器從客戶端設備接收對與客戶端設備的視埠相對應的媒體資料的一部分的請求。
在步驟2004,服務器訪問包括多個媒體軌道的多媒體資料,每個媒體軌道包括對應於沉浸式媒體的不同空間部分的不同媒體資料。例如,對對應於視埠的媒體資料部分的請求可以包括視埠的一個或多個參數。根據一些示例,一個或多個參數可以包括視埠的三維尺寸。在步驟2006,服務器基於請求從多個媒體軌道中確定與客戶端設備的視埠相對應的一組媒體軌道。
在步驟2008,服務器生成包括媒體資料部分的一個或多個適配軌道並將包含媒體資料部分的一個或多個適配軌道傳輸到客戶端設備。根據一些實施例,一個或多個適配軌道包括多個縫合的圖塊軌道。根據一些實施例,一個或多個適配軌道可以包括單個軌道,該軌道承載已經為設備渲染的視埠的媒體資料。
根據一些實施例,該方法還可以包括從客戶端設備請求視埠的一個或多個參數。
第21圖示出了根據一些實施例的用於與服務器通信的客戶端設
備的示例性計算機化方法2100。在步驟2102,客戶端設備向服務器發送對與客戶端設備的視埠相對應的媒體資料的一部分的請求。根據一些實施例,對對應於視埠的媒體資料部分的請求包括視埠的一個或多個參數。在一些實施例中,視埠的一個或多個參數包括視埠的三維尺寸。在一些實施例中,客戶端設備響應於從服務器接收到對視埠的一個或多個參數的請求而發送請求。在一些實施例中,一個或多個適配軌道包括多個縫合的圖塊軌道。在步驟2104,客戶端設備從服務器接收包括媒體資料部分的一個或多個適配軌道,其中媒體資料部分基於客戶端設備的視埠適配於客戶端設備;該媒體資料部分是從對應於視埠的一組軌道生成的,其中該組軌道除了包含對應於視埠的媒體資料部分之外,還包含對應於不同於視埠的沉浸式媒體的空間部分的不同媒體資料。在一些實施例中,一個或多個適配軌道包括單個軌道,該軌道承載已經為設備渲染的視埠的媒體資料。根據一些實施例,該方法還包括解碼該部分媒體資料。在一些實施例中,該方法包括使用媒體資料的解碼部分來呈現沉浸式媒體體驗。
根據本文描述的原理操作的技術可以以任何合適的方式實施。上述流程圖的處理和決策塊表示可能包含在執行這些不同過程的算法中的步驟和動作。源自這些過程的算法可以實現為與一個或多個單一或多用途處理器集成並指導其操作的軟體,可以實現為功能等效電路,例如數位信號處理(DSP)電路或應用程式專用積體電路(ASIC),或者可以以任何其他合適的方式實現。應當理解,這裡包括的流程圖不描述任何特定電路或任何特定程式語言或程式語言類型的語法或操作。相反,流程圖說明了所屬領域具有通常知識者可用於製造電路或實現計算機軟體算法以執行本文描述的技術類型的特定裝置的處理的功能資訊。還應當理解,除非本文另有說明,否則每個流程圖中描述的步驟和/或動作的特定順序僅說明可以實現並且可以在本文描述的原理的實現和實施例中變化的算法。
因此,在一些實施例中,本文描述的技術可以體現為實現為軟體的計算機可執行指令,包括應用軟體、系統軟體、韌體、中間件、嵌入式代碼或任何其他合適類型的計算機代碼。這樣的計算機可執行指令可以使用多種合適的程式語言和/或程式或腳本工具中的任何一種來編寫,並且還可以編譯為在框架或虛擬機上執行的可執行機器語言代碼或中間代碼。
當本文描述的技術體現為計算機可執行指令時,這些計算機可執行指令可以以任何合適的方式實現,包括作為多個功能設施,每個提供一個或多個操作以完成根據這些技術操作的算法的執行。“功能設施”,無論如何實例化,都是計算機系統的結構組件,當它與一台或多台計算機集成並由一台或多台計算機執行時,會使一台或多台計算機執行特定的操作角色。功能設施可以是軟體元素的一部分或整個軟體元素。例如,功能設施可以實現為過程的函數,或作為離散過程,或任何其他合適的處理單元。如果此處描述的技術被實現為多個功能設施,則每個功能設施都可以以其自己的方式實現;所有這些都不需要以相同的方式實現。此外,這些功能設施可以酌情並行和/或串行執行,並且可以使用正在執行它們的計算機上的共享記憶體、使用消息傳遞協議或以其他任何合適的方式在彼此之間傳遞資訊。
通常,功能設施包括執行特定任務或實現特定抽像資料類型的例程、程式、對象、組件、資料結構等。通常,功能設施的功能可以根據需要在它們運行的系統中組合或分佈。在一些實施方式中,執行本文技術的一個或多個功能設施可以一起形成完整的軟體包。在替代實施例中,這些功能設施可以適於與其他不相關的功能設施和/或過程交互,以實現軟體程式應用。
這裡已經描述了一些示例性功能設施,用於執行一項或多項任務。然而,應當理解,所描述的功能設施和任務的劃分僅僅是說明可以實現本文描述的示例性技術的功能設施的類型,並且實施例不限於以任何特定數量、
劃分、或功能設施類型。在一些實現中,所有功能都可以在單個功能設施中實現。還應當理解,在一些實施方式中,本文描述的一些功能設施可以與其他功能設施一起或分開實施(即,作為單個單元或單獨的單元),或者這些功能設施中的一些可以不實施。
在一些實施例中,實現本文描述的技術的計算機可執行指令(當實現為一個或多個功能設施或以任何其他方式實現時)可以被編碼在一個或多個計算機可讀介質上以向該介質提供功能。計算機可讀介質包括諸如硬碟驅動器之類的磁性介質、諸如壓縮碟(CD)或數位多功能碟(DVD)之類的光學介質、持久性或非持久性固態記憶體(例如,閃存、磁RAM等)或任何其他合適的存儲介質。這種計算機可讀介質可以以任何合適的方式實現。如本文所用,“計算機可讀介質”(也稱為“計算機可讀存儲介質”)是指有形存儲介質。有形存儲介質是非臨時性的,並且具有至少一個實體結構組件。在如本文所用的“計算機可讀介質”中,至少一個實體結構組件具有至少一個實體特性,該實體特性可以在創建具有嵌入資訊的介質的過程、在其上記錄資訊的過程期間以某種方式改變,或任何其他用資訊對媒體進行編碼的過程。例如,計算機可讀介質的實體結構的一部分的磁化狀態可以在記錄過程中改變。
此外,上述一些技術包括以某些方式存儲資訊(例如,資料和/或指令)以供這些技術使用的動作。在這些技術的一些實施方式中——例如這些技術被實施為計算機可執行指令的實施方式——資訊可以被編碼在計算機可讀存儲介質上。在本文將特定結構描述為存儲該資訊的有利格式的情況下,這些結構可用於在編碼在存儲介質上時賦予資訊的實體組織。然後,這些有利的結構可以通過影響與資訊交互的一個或多個處理器的操作來為存儲介質提供功能;例如,通過提高處理器執行的計算機操作的效率。
在其中技術可以體現為計算機可執行指令的一些但不是全部實
現中,這些指令可以在一個或多個在任何合適的計算機系統中運行的合適的計算設備或一個或多個計算設備上執行(或者一個或多個計算設備的一個或多個處理器)可以被程式為執行計算機可執行指令。計算設備或處理器可以被程式為在指令以計算設備或處理器可訪問的方式存儲時執行指令,例如在資料存儲(例如,片上高速緩存或指令寄存器、計算機可讀存儲)中可通過匯流排訪問的介質、可通過一個或多個網路訪問且可由設備/處理器訪問的計算機可讀存儲介質等)。包括這些計算機可執行指令的功能設施可以與單個多功能可程式數位計算設備、共享處理能力並共同執行本文所述技術的兩個或多個多功能計算設備的協調系統集成並指導其操作、專用於執行本文所述技術的單個計算設備或計算設備的協調系統(位於同一地點或地理分佈)、用於執行本文所述技術的一個或多個現場可程式門陣列(FPGA)或任何其他合適的系統。
計算設備可以包括至少一個處理器、網路適配器和計算機可讀存儲介質。計算設備可以是例如台式或膝上型個人計算機、個人數位助理(PDA)、智能移動電話、服務器或任何其他合適的計算設備。網路適配器可以是使計算設備能夠通過任何合適的計算網路與任何其他合適的計算設備進行有線和/或無線通信的任何合適的硬體和/或軟體。計算網路可以包括無線接入點、交換機、路由器、網關和/或其他網路設備以及任何合適的有線和/或無線通信介質或用於在兩個或多個計算機之間交換資料的介質,包括互聯網。計算機可讀介質可以適於存儲要處理的資料和/或要由處理器執行的指令。處理器能夠處理資料和執行指令。資料和指令可以存儲在計算機可讀存儲介質上。
計算設備可以另外具有一個或多個組件和外圍設備,包括輸入和輸出設備。除其他外,這些設備可用於呈現用戶界面。可用於提供用戶界面的輸出設備的示例包括用於視覺呈現輸出的打印機或顯示屏以及用於可聽呈現輸出的揚聲器或其他聲音生成設備。可用於用戶界面的輸入設備的示例包括鍵盤
和指針設備,例如滑鼠、觸摸板和數位化平板電腦。作為另一個示例,計算設備可以通過語音識別或其他可聽格式接收輸入資訊。
已經描述了在電路和/或計算機可執行指令中實現技術的實施例。應當理解,一些實施例可以是一種方法的形式,已經提供了該方法的至少一個示例。作為該方法的一部分執行的動作可以以任何合適的方式排序。因此,可以構造其中以不同於圖示的順序執行動作的實施例,這可以包括同時執行一些動作,即使在說明性實施例中被示為順序動作。
上述實施例的各個方面可以單獨使用、組合使用或以在前述實施例中未具體討論的各種佈置方式使用,因此其應用不限於本說明書中闡述的部件的細節和佈置。前面的描述或在附圖中說明。例如,一個實施例中描述的方面可以以任何方式與其他實施例中描述的方面組合。
在申請專利範圍中使用諸如“第一”、“第二”、“第三”等順序術語來修改申請專利範圍要素本身並不意味著一個申請專利範圍要素相對於另一個或時間的任何優先權、優先級或順序執行方法的動作的順序,但僅用作標籤,以區分具有特定名稱的一個申請專利範圍元素與另一個具有相同名稱的元素(但使用序數術語)以區分申請專利範圍元素。
此外,本文使用的措辭和術語是出於描述的目的,不應被視為限制。本文中使用的“包括”、“包含”、“具有”、“由...組成”、“涉及”及其變體意在涵蓋其後列出的項目及其等同物以及附加項目。
此處使用“示例性”一詞來表示用作示例、實例或說明。因此,本文作為示例性描述的任何實施例、實施方式、過程、特徵等應被理解為說明性示例並且不應被理解為優選或有利示例,除非另有說明。
已經如此描述了至少一個實施例的幾個方面,應當理解,所屬領域具有通常知識者將容易想到各種改變、修改和改進。此類變更、修改和改進
旨在成為本公開的一部分,並且旨在落入本文所述原理的精神和範圍內。因此,前述描述和附圖僅作為示例。
2100:方法
2102~2104:步驟
Claims (20)
- 一種獲得沉浸式媒體的視訊資料的方法,由與服務器通信的客戶端設備實現,該方法包括:向該服務器發送對與該客戶端設備的視埠相對應的部分媒體資料的請求;從該服務器接收包括該部分媒體資料的一個或多個適配軌道,其中:基於該客戶端設備的該視埠,該部分媒體資料適配於該客戶端設備;以及該部分媒體資料是該服務器根據該請求執行流適配從對應於該視埠的一組軌道生成的,其中該組軌道除了對應於該視埠的該部分媒體資料之外,還包含對應於不同於該視埠的沉浸式媒體的空間部分的不同媒體資料。
- 如請求項1所述之方法,還包括解碼該部分媒體資料。
- 如請求項2所述之方法,還包括使用解碼的該部分媒體資料來呈現沉浸式媒體體驗。
- 如請求項1所述之方法,其中,所述對與該視埠相對應的該部分媒體資料的請求包括該視埠的一個或多個參數。
- 如請求項4所述之方法,其中,該視埠的該一個或多個參數包括該視埠的三維尺寸。
- 如請求項4所述之方法,其中,該客戶端設備響應於從該服務器接收到對該視埠的一個或多個參數的請求而發送該請求。
- 如請求項1所述之方法,其中,該一個或多個適配軌道包括多個縫合的圖塊軌道。
- 如請求項1所述之方法,其中,該一個或多個適配軌道包括攜帶已經為該設備渲染的該視埠的該媒體資料的單個軌道。
- 一種用於為沉浸式媒體提供視訊資料的方法,該方法由與客戶端設備通信的服務器實現,該方法包括: 從該客戶端設備接收對與該客戶端設備的視埠相對應的部分媒體資料的請求;訪問包括多個媒體軌道的多媒體資料,每個媒體軌道包括對應於沉浸式媒體的不同空間部分的不同媒體資料;基於該請求執行流適配,從該多個媒體軌道中確定與該客戶端設備的該視埠相對應的一組媒體軌道;以及生成包括該部分媒體資料的一個或多個適配軌道並將包含該部分媒體資料的該一個或多個適配軌道傳輸到該客戶端設備。
- 如請求項9所述之方法,其中,所述對與該視埠相對應的該部分媒體資料的該請求包括該視埠的一個或多個參數。
- 如請求項10所述之方法,其中,該視埠的該一個或多個參數包括該視埠的三維尺寸。
- 如請求項10所述之方法,其中,該方法還包括從該客戶端設備請求該視埠的該一個或多個參數。
- 如請求項9所述之方法,其中,該一個或多個適配軌道包括多個縫合的圖塊軌道。
- 如請求項9所述之方法,其中,該一個或多個適配軌道包括攜帶已經為該設備渲染的該視埠的該媒體資料的單個軌道。
- 一種視埠相關媒體處理系統,包括:至少一個處理器,被配置為執行用於獲得沉浸式媒體的視訊資料的方法,該方法由與該服務器通信的客戶端設備實現,該方法包括:向該服務器發送對與該客戶端設備的視埠相對應的部分媒體資料的請求;從該服務器接收包括該部分媒體資料的一個或多個適配軌道,其中:基於該客戶端設備的該視埠,該部分媒體資料適配於該客戶端設備;以及 該部分媒體資料是該服務器根據該請求執行流適配從對應於該視埠的一組軌道生成的,其中該組軌道除了對應於該視埠的該部分媒體資料之外,還包含對應於不同於該視埠的沉浸式媒體的空間部分的不同媒體資料。
- 如請求項15所述之視埠相關媒體處理系統,其中,該處理器還被配置為執行對該部分媒體資料進行解碼。
- 如請求項16所述之視埠相關媒體處理系統,其中,該處理器還被配置為使用解碼的該部分媒體資料來執行呈現沉浸式媒體體驗。
- 一種視埠相關媒體處理系統,包括:至少一個處理器,被配置為執行用於為沉浸式媒體提供視訊資料的方法,該方法由與客戶端設備通信的服務器實現,該方法包括:從該客戶端設備接收對與該客戶端設備的視埠相對應的部分媒體資料的請求;訪問包括多個媒體軌道的多媒體資料,每個媒體軌道包括對應於該沉浸式媒體的不同空間部分的不同媒體資料;基於該請求執行流適配,從該多個媒體軌道中確定與該客戶端設備的視埠相對應的一組媒體軌道;以及生成包括該部分媒體資料的一個或多個適配軌道並將包含該部分媒體資料的該一個或多個適配軌道傳輸到該客戶端設備。
- 如請求項18所述之視埠相關媒體處理系統,其中對對應於該視埠的該部分媒體資料的該請求包括該視埠的一個或多個參數。
- 如請求項19所述之視埠相關媒體處理系統,其中,該視埠的該一個或多個參數包括該視埠的三維尺寸。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163176384P | 2021-04-19 | 2021-04-19 | |
US63/176,384 | 2021-04-19 | ||
US17/707,052 | 2022-03-29 | ||
US17/707,052 US20220337800A1 (en) | 2021-04-19 | 2022-03-29 | Systems and methods of server-side dynamic adaptation for viewport-dependent media processing |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202315395A TW202315395A (zh) | 2023-04-01 |
TWI847125B true TWI847125B (zh) | 2024-07-01 |
Family
ID=
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020234373A1 (en) | 2019-05-20 | 2020-11-26 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Immersive media content presentation and interactive 360° video communication |
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020234373A1 (en) | 2019-05-20 | 2020-11-26 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Immersive media content presentation and interactive 360° video communication |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI740347B (zh) | 發信點雲多媒體資料的視埠以及興趣區域的方法及裝置 | |
TWI735038B (zh) | 將軌道推導用於基於網路的媒體處理的方法和裝置 | |
US11245926B2 (en) | Methods and apparatus for track derivation for immersive media data tracks | |
US10911512B2 (en) | Personalized content streams using aligned encoded content segments | |
US10931930B2 (en) | Methods and apparatus for immersive media content overlays | |
TWI734951B (zh) | 用於編碼和解碼虛擬實境內容的方法和裝置 | |
TWI674797B (zh) | 球面區域呈現之方法與裝置 | |
WO2019202207A1 (en) | Processing video patches for three-dimensional content | |
TW202118289A (zh) | 用於編碼/解碼沉浸式媒體的視訊資料的方法和裝置 | |
US20220038791A1 (en) | Method and apparatus for storage and signaling of media segment sizes and priority ranks | |
CN113574903B (zh) | 针对媒体内容中的后期绑定的方法和装置 | |
US11589032B2 (en) | Methods and apparatus for using track derivations to generate new tracks for network based media processing applications | |
US20230224512A1 (en) | System and method of server-side dynamic adaptation for split rendering | |
JP6632550B2 (ja) | タイムピリオドにまたがってオブジェクトを識別する方法および対応デバイス | |
TWI815187B (zh) | 適應性媒體串流系統之伺服器側串流適應系統和方法 | |
US11922561B2 (en) | Methods and systems for implementing scene descriptions using derived visual tracks | |
TWI847125B (zh) | 視埠相關媒體處理的方法及系統 | |
US20220337800A1 (en) | Systems and methods of server-side dynamic adaptation for viewport-dependent media processing | |
US20230007314A1 (en) | System and method of server-side dynamic spatial and temporal adaptations for media processing and streaming | |
TWI793743B (zh) | 處理多媒體資料的方法和裝置 | |
US11706374B2 (en) | Methods and apparatus for re-timing and scaling input video tracks | |
TW202232958A (zh) | 用於導出的沉浸式軌道的方法和系統 |