IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェラインの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-14
(45)【発行日】2022-09-26
(54)【発明の名称】分割ビデオストリーミングの概念
(51)【国際特許分類】
   H04N 21/438 20110101AFI20220915BHJP
   H04N 19/167 20140101ALI20220915BHJP
【FI】
H04N21/438
H04N19/167
【請求項の数】 17
(21)【出願番号】P 2019572660
(86)(22)【出願日】2018-07-06
(65)【公表番号】
(43)【公表日】2020-08-27
(86)【国際出願番号】 EP2018068445
(87)【国際公開番号】W WO2019008174
(87)【国際公開日】2019-01-10
【審査請求日】2020-02-21
(31)【優先権主張番号】17180149.1
(32)【優先日】2017-07-06
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500341779
【氏名又は名称】フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン
(74)【代理人】
【識別番号】100205981
【弁理士】
【氏名又は名称】野口 大輔
(72)【発明者】
【氏名】ロベルト・シュクピン
(72)【発明者】
【氏名】コルネリウス・ヘルゲ
(72)【発明者】
【氏名】トーマス・シーレ
(72)【発明者】
【氏名】ヤゴ・サンチェス デ ラ フエンテ
(72)【発明者】
【氏名】ディミトゥリ・ポドゥボルスキ
【審査官】大西 宏
(56)【参考文献】
【文献】特表2005-532700(JP,A)
【文献】特表2017-515336(JP,A)
【文献】国際公開第2016/022979(WO,A1)
【文献】中国特許出願公開第104284208(CN,A)
【文献】中国特許出願公開第106664443(CN,A)
【文献】Qualcomm Incorporated,FS_VR: OMAF Progress[online],3GPP TSG SA WG4 #93 S4-170324,米国,Internet<URL:http://www.3gpp.org/ftp/tsg_sa/WG4_CODEC/TSGS4_93/Docs/S4-170324.zip>,2017年04月19日,pp1-12
【文献】Mousa Farajallah et al.,ROI encryption for the HEVC coded video contents,2015 IEEE International Conference on Image Processing (ICIP),米国,IEEE,2015年09月27日,pp.3096-3100,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7351373
【文献】Robert Skupin et al.,HEVC tile based streaming to head mounted displays,2017 14th IEEE Annual Consumer Communications & Networking Conference (CCNC),IEEE,2017年01月08日,pp.613-615,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=7983191
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/10
H04N 7/14 - 7/173
H04N 7/20 - 7/56
H04N 21/00 -21/858
H04N 7/12 - 7/12
H04N 19/00 -19/98
(57)【特許請求の範囲】
【請求項1】
タイルベースのビデオストリーミングによってROI固有のビデオストリーム(40)をダウンロードするための装置であって、
関心領域(ROI)(22)に応じて、エクストラクタ(20)とともにビットストリーム(12)のセット(32)を識別してダウンロードするために、マニフェストファイル(24)を検査するステップであって、ビットストリーム(12)の前記セット(32)は、ビデオピクチャエリア(16)の異なる部分(14)を符号化されている、検査するステップ、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セット(32)の各々から、現在のピクチャフレーム(30)に関連するピクチャ部分(34)を抽出し、前記抽出されているピクチャ部分(34)からコンパイル済みビットストリーム(40)を形成することにより、前記エクストラクタ(20)を使用して、ビットストリームの前記セット(32)から前記コンパイル済みビットストリーム(40)をコンパイルするステップであって、結果、前記コンパイル済みビットストリーム(40)は、前記コンパイル済みビットストリーム(40)が形成されるビットストリームの前記セットの各々の前記ピクチャ部分(34)のサブピクチャ部分(44)を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分(44)のコード化ペイロードセクション(48)を解析するサブステップ(102)、および/もしくは
それぞれの前記サブピクチャ部分(44)内のヘッダ(46)からそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)の境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリーム(40)の1つまたは複数の前記サブピクチャ部分(44)のサブセットの各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)を解読するステップ、
を行うように構成されており、
前記装置は、1つまたは複数のサブピクチャ部分の前記サブセットに対して相互に異なる初期化状態を導出することにより、解読されるべき各サブピクチャ部分に対して前記再初期化を実行するように構成され、
前記装置は、前記現在のピクチャフレームの基本初期化状態に相互に異なる修正を適用することにより、1つまたは複数のサブピクチャ部分の前記サブセットに対する相互に異なる初期化状態の前記導出を実施するように構成されている、装置。
【請求項2】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための装置であって、ビットストリームの前記セットは、ビデオピクチャエリアの異なる部分を符号化されており、前記装置は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分内のヘッダからそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリームの1つまたは複数の前記サブピクチャ部分のサブセットの各サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、を行うように構成されており、
前記装置は、1つまたは複数のサブピクチャ部分の前記サブセットに対して相互に異なる初期化状態を導出することにより、解読されるべき各サブピクチャ部分に対して前記再初期化を実行するように構成され、
前記装置は、前記現在のピクチャフレームの基本初期化状態に相互に異なる修正を適用することにより、1つまたは複数のサブピクチャ部分の前記サブセットに対する相互に異なる初期化状態の前記導出を実施するように構成されている、装置。
【請求項3】
前記それぞれのサブピクチャ部分が関係する前記ビデオピクチャエリアの部分に応じて、または
前記それぞれのサブピクチャ部分のインデックスに応じて、
各サブピクチャの前記相互に異なる修正を導出するように構成されている、請求項1又は2に記載の装置。
【請求項4】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための装置であって、ビットストリームの前記セットは、ビデオピクチャエリアの異なる部分を符号化されており、前記装置は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分内のヘッダからそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリームの1つまたは複数の前記サブピクチャ部分のサブセットの各サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、を行うように構成されており、
前記装置は、前記エクストラクタ内の初期化状態リストから、1つまたは複数のサブピクチャ部分の前記サブセットの各々に対する初期化状態を導出することにより、解読されるべき各サブピクチャ部分に対して前記再初期化を実行するように構成されている、装置。
【請求項5】
タイルベースのビデオストリーミングによってROI固有のビデオストリーム(40)をダウンロードするための装置であって、
関心領域(ROI)(22)に応じて、エクストラクタ(20)とともにビットストリーム(12)のセット(32)を識別してダウンロードするために、マニフェストファイル(24)を検査するステップであって、ビットストリーム(12)の前記セット(32)は、ビデオピクチャエリア(16)の異なる部分(14)を符号化されている、検査するステップ、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セット(32)の各々から、現在のピクチャフレーム(30)に関連するピクチャ部分(34)を抽出し、前記抽出されているピクチャ部分(34)からコンパイル済みビットストリーム(40)を形成することにより、前記エクストラクタ(20)を使用して、ビットストリームの前記セット(32)から前記コンパイル済みビットストリーム(40)をコンパイルするステップであって、結果、前記コンパイル済みビットストリーム(40)は、前記コンパイル済みビットストリーム(40)が形成されるビットストリームの前記セットの各々の前記ピクチャ部分(34)のサブピクチャ部分(44)を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分(44)のコード化ペイロードセクション(48)を解析するサブステップ(102)、および/もしくは
それぞれの前記サブピクチャ部分(44)内のヘッダ(46)からそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)の境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリーム(40)の1つまたは複数の前記サブピクチャ部分(44)のサブセットの各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)を解読するステップ、
を行うように構成されており、
前記エクストラクタ内の明示的な境界位置情報を無視した発見のために、前記コード化ペイロードセクションの前記解析、前記コード化ペイロードセクションの長さの前記導出、または前記ビットストリーム長もしくは前記ポインタ指示の前記使用を実施するように構成されている、装置。
【請求項6】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための装置であって、ビットストリームの前記セットは、ビデオピクチャエリアの異なる部分を符号化されており、前記装置は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分内のヘッダからそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリームの1つまたは複数の前記サブピクチャ部分のサブセットの各サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、を行うように構成されており、
前記装置は、前記エクストラクタ内の明示的な境界位置情報を無視した発見のために、前記コード化ペイロードセクションの前記解析、前記コード化ペイロードセクションの長さの前記導出、または前記ビットストリーム長もしくは前記ポインタ指示の前記使用を実施するように構成されている、装置。
【請求項7】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための装置であって、ビットストリームの前記セットはビデオピクチャエリアの異なる部分を符号化されており、前記装置は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、および
前記エクストラクタまたは前記サブピクチャ部分におけるシグナリングに基づいて、前記コンパイル済みビットストリームの前記サブピクチャ部分から所定のサブピクチャ部分を識別するステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
1つの所定の前記サブピクチャ部分内のヘッダから前記コード化ペイロードセクションの長さを導出するサブステップ、または
所定の前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップによって、暗号化されるべき所定の前記サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、前記コンパイル済みビットストリームの前記サブピクチャ部分の所定の前記サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、
を行うように構成されており、
いくつかのピクチャフレームの所定の前記サブピクチャ部分の前記識別を、
前記いくつかのピクチャフレームが、所定の前記サブピクチャ部分が前記異なる部分のうちの異なる部分に対応し、かつ/または
前記いくつかのピクチャフレームが、正確に1つの前記サブピクチャ部分が所定の前記サブピクチャ部分と同一である第1のピクチャフレーム、および、所定の前記サブピクチャ部分と同一であるサブピクチャ部分が存在しない、前記第1のピクチャフレーム間に散在する第2のピクチャフレームを含む
ように実施するように構成されている、装置。
【請求項8】
ビデオピクチャエリアの異なる部分のサブピクチャ部分を含むビットストリームからビデオストリームを復元するための装置であって、
外部から入来するシグナリングまたは前記サブピクチャ部分内のシグナリングに基づいて前記ビットストリームの前記サブピクチャ部分から所定のサブピクチャ部分を識別するステップ、
現在解読されている位置までコード化ペイロードセクションを解析するサブステップ、および/もしくは
所定の前記サブピクチャ部分内のヘッダから前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
所定の前記サブピクチャ部分の外側からシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき所定の前記サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、前記ビットストリームの前記サブピクチャ部分の所定の前記サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、
を行うように構成されており、
いくつかのピクチャフレームの所定の前記サブピクチャ部分の前記識別を、
前記いくつかのピクチャフレームが、所定の前記サブピクチャ部分が前記異なる部分のうちの異なる部分に対応し、かつ/または
前記いくつかのピクチャフレームが、正確に1つの前記サブピクチャ部分が所定の前記サブピクチャ部分と同一である第1のピクチャフレーム、および、所定の前記サブピクチャ部分と同一であるサブピクチャ部分が存在しない、前記第1のピクチャフレーム間に散在する第2のピクチャフレームを含む
ように実施するように構成されている、装置。
【請求項9】
前記解読は、平文マスクおよび/またはブロック解読鍵の順次変化の使用によるブロック解読を含む、請求項7または8のいずれか1項に記載の装置。
【請求項10】
タイルベースのビデオストリーミングによってROI固有のビデオストリーム(40)をダウンロードするための方法であって、
関心領域(ROI)(22)に応じて、エクストラクタ(20)とともにビットストリーム(12)のセット(32)を識別してダウンロードするために、マニフェストファイル(24)を検査するステップであって、ビットストリーム(12)の前記セット(32)は、ビデオピクチャエリア(16)の異なる部分(14)を符号化されている、検査するステップ、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セット(32)の各々から、現在のピクチャフレーム(30)に関連するピクチャ部分(34)を抽出し、前記抽出されているピクチャ部分(34)からコンパイル済みビットストリーム(40)を形成することにより、前記エクストラクタ(20)を使用して、ビットストリームの前記セット(32)から前記コンパイル済みビットストリーム(40)をコンパイルするステップであって、結果、前記コンパイル済みビットストリーム(40)は、前記コンパイル済みビットストリーム(40)が形成されるビットストリームの前記セットの各々の前記ピクチャ部分(34)のサブピクチャ部分(44)を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分(44)のコード化ペイロードセクション(48)を解析するサブステップ(102)、および/もしくは
それぞれの前記サブピクチャ部分(44)内のヘッダ(46)からそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)の境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリーム(40)の1つまたは複数の前記サブピクチャ部分(44)のサブセットの各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)を解読するステップ、
を含み、
1つまたは複数のサブピクチャ部分の前記サブセットに対して相互に異なる初期化状態を導出することにより、解読されるべき各サブピクチャ部分に対して前記再初期化を実行し、
前記現在のピクチャフレームの基本初期化状態に相互に異なる修正を適用することにより、1つまたは複数のサブピクチャ部分の前記サブセットに対する相互に異なる初期化状態の導出を実行する、方法。
【請求項11】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための方法であって、ビットストリームの前記セットは、ビデオピクチャエリアの異なる部分を符号化されており、前記方法は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分内のヘッダからそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリームの1つまたは複数の前記サブピクチャ部分のサブセットの各サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、
を含み、
1つまたは複数のサブピクチャ部分の前記サブセットに対して相互に異なる初期化状態を導出することにより、解読されるべき各サブピクチャ部分に対して前記再初期化を実行し、
前記現在のピクチャフレームの基本初期化状態に相互に異なる修正を適用することにより、1つまたは複数のサブピクチャ部分の前記サブセットに対する相互に異なる初期化状態の導出を実行する、方法。
【請求項12】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための方法であって、ビットストリームの前記セットは、ビデオピクチャエリアの異なる部分を符号化されており、前記方法は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分内のヘッダからそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリームの1つまたは複数の前記サブピクチャ部分のサブセットの各サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、
を含み、
前記エクストラクタ内の初期化状態リストから、1つまたは複数のサブピクチャ部分の前記サブセットの各々に対する初期化状態を導出することにより、解読されるべき各サブピクチャ部分に対して前記再初期化を実行する、方法。
【請求項13】
タイルベースのビデオストリーミングによってROI固有のビデオストリーム(40)をダウンロードするための方法であって、
関心領域(ROI)(22)に応じて、エクストラクタ(20)とともにビットストリーム(12)のセット(32)を識別してダウンロードするために、マニフェストファイル(24)を検査するステップであって、ビットストリーム(12)の前記セット(32)は、ビデオピクチャエリア(16)の異なる部分(14)を符号化されている、検査するステップ、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セット(32)の各々から、現在のピクチャフレーム(30)に関連するピクチャ部分(34)を抽出し、前記抽出されているピクチャ部分(34)からコンパイル済みビットストリーム(40)を形成することにより、前記エクストラクタ(20)を使用して、ビットストリームの前記セット(32)から前記コンパイル済みビットストリーム(40)をコンパイルするステップであって、結果、前記コンパイル済みビットストリーム(40)は、前記コンパイル済みビットストリーム(40)が形成されるビットストリームの前記セットの各々の前記ピクチャ部分(34)のサブピクチャ部分(44)を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分(44)のコード化ペイロードセクション(48)を解析するサブステップ(102)、および/もしくは
それぞれの前記サブピクチャ部分(44)内のヘッダ(46)からそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)の境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリーム(40)の1つまたは複数の前記サブピクチャ部分(44)のサブセットの各サブピクチャ部分(44)の前記コード化ペイロードセクション(48)を解読するステップ、
を含み、
前記エクストラクタ内の明示的な境界位置情報を無視した発見のために、前記コード化ペイロードセクションの前記解析、前記コード化ペイロードセクションの長さの前記導出、または前記ビットストリーム長もしくは前記ポインタ指示の前記使用を実行する、方法。
【請求項14】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための方法であって、ビットストリームの前記セットは、ビデオピクチャエリアの異なる部分を符号化されており、前記方法は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分内のヘッダからそれぞれの前記サブピクチャ部分の前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
それぞれの前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき各サブピクチャ部分の順次変化を再初期化し、暗号化されるべき各サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、平文マスクおよび/またはブロック暗号鍵の前記順次変化を使用することによるブロック単位の解読を使用することによって、前記コンパイル済みビットストリームの1つまたは複数の前記サブピクチャ部分のサブセットの各サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、
を含み、
前記エクストラクタ内の明示的な境界位置情報を無視した発見のために、前記コード化ペイロードセクションの前記解析、前記コード化ペイロードセクションの長さの前記導出、または前記ビットストリーム長もしくは前記ポインタ指示の前記使用を実行する、方法。
【請求項15】
ビットストリームのセットおよびエクストラクタからビデオストリームを復元するための方法であって、ビットストリームの前記セットはビデオピクチャエリアの異なる部分を符号化されており、前記方法は、
それぞれの前記ビットストリームを解析することによって、ビットストリームの前記セットの各々から、現在のピクチャフレームに関連するピクチャ部分を抽出し、前記抽出されているピクチャ部分からコンパイル済みビットストリームを形成することにより、前記エクストラクタを使用して、ビットストリームの前記セットから前記コンパイル済みビットストリームをコンパイルするステップであって、結果、前記コンパイル済みビットストリームは、前記コンパイル済みビットストリームが形成されるビットストリームの前記セットの各々の前記ピクチャ部分のサブピクチャ部分を含む、コンパイルするステップ、および
前記エクストラクタまたは前記サブピクチャ部分におけるシグナリングに基づいて、前記コンパイル済みビットストリームの前記サブピクチャ部分から所定のサブピクチャ部分を識別するステップ、
現在解読されている位置までそれぞれの前記サブピクチャ部分のコード化ペイロードセクションを解析するサブステップ、および/もしくは
1つの所定の前記サブピクチャ部分内のヘッダから前記コード化ペイロードセクションの長さを導出するサブステップ、もしくは
所定の前記サブピクチャ部分が属する前記ピクチャ部分が抽出される前記ビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき所定の前記サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、前記コンパイル済みビットストリームの前記サブピクチャ部分の所定の前記サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、
を含み、
いくつかのピクチャフレームの所定の前記サブピクチャ部分の前記識別を、
前記いくつかのピクチャフレームが、所定の前記サブピクチャ部分が前記異なる部分のうちの異なる部分に対応し、かつ/または
前記いくつかのピクチャフレームが、正確に1つの前記サブピクチャ部分が所定の前記サブピクチャ部分と同一である第1のピクチャフレーム、および、所定の前記サブピクチャ部分と同一であるサブピクチャ部分が存在しない、前記第1のピクチャフレーム間に散在する第2のピクチャフレームを含む
ように実行する、方法。
【請求項16】
ビデオピクチャエリアの異なる部分のサブピクチャ部分を含むビットストリームからビデオストリームを復元するための方法であって、
外部から入来するシグナリングまたは前記サブピクチャ部分内のシグナリングに基づいて前記ビットストリームの前記サブピクチャ部分から所定のサブピクチャ部分を識別するステップ、
現在解読されている位置までコード化ペイロードセクションを解析するサブステップ、および/もしくは
所定の前記サブピクチャ部分内のヘッダから前記コード化ペイロードセクションの長さを導出するサブステップ、および/もしくは
所定の前記サブピクチャ部分の外側からシグナリングされるビットストリーム長またはポインタ指示を使用するサブステップ
によって、暗号化されるべき所定の前記サブピクチャ部分の前記コード化ペイロードセクションの境界を発見することによって、前記ビットストリームの前記サブピクチャ部分の所定の前記サブピクチャ部分の前記コード化ペイロードセクションを解読するステップ、
を含み、
いくつかのピクチャフレームの所定の前記サブピクチャ部分の前記識別を、
前記いくつかのピクチャフレームが、所定の前記サブピクチャ部分が前記異なる部分のうちの異なる部分に対応し、かつ/または
前記いくつかのピクチャフレームが、正確に1つの前記サブピクチャ部分が所定の前記サブピクチャ部分と同一である第1のピクチャフレーム、および、所定の前記サブピクチャ部分と同一であるサブピクチャ部分が存在しない、前記第1のピクチャフレーム間に散在する第2のピクチャフレームを含む
ように実行する、方法。
【請求項17】
コンピュータ上で実行されると、請求項15または16に記載の方法を実行するコンピュータプログラムを格納する、コンピュータで読み取り可能な記録媒体
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、部分ベースまたはタイルベースのビデオストリーミングの概念に関する。
【背景技術】
【0002】
現在のビデオストリーミングシステムにおけるメディア暗号化は、例えばAdvanced Encryption Standard(AES)の方法に従って、ブロック単位に、順方向暗号関数および鍵を使用してメディアデータ(平文として参照される)を暗号化し、逆方向関数および鍵を使用して結果(暗号テキストとして参照される)を解読することを可能にする暗号関数に基づいている[1]。加えて、メディア暗号化の基本的な概念は、暗号文ブロックの一意性を確保するために順方向暗号関数に渡される前に平文を変更することである。すなわち、共通の単語または構文構造などの同一の平文ブロックを繰り返しても、同一の暗号文ブロックにならないようにするべきである。平文は、暗号関数に入る前(および同様に逆関数を実行した後)に、各平文ブロックおよび暗号化メタデータの計算的に安価な演算、すなわち排他的OR(XOR)を使用して変更される。ほとんどの手法において、最初のブロックの暗号化メタデータは初期化値または初期化ベクトル(IV)から構成される。次の平文ブロックの暗号化メタデータが生成される方法を定義するブロック演算モードのバリエーション[2]が多数存在する。現在の暗号化メディアストリーミング市場において最も普及しているこの概念の2つのバリエーションは、図1a、図1bに示すように、暗号化メタデータおよび暗号ブロックチェーン(CBC)の一部としてカウンタ(CTR)を維持することに基づいており、現在の暗号文ブロックが、次の平文ブロックの暗号化メタデータとして使用される。
【0003】
MPEG Common Encryption Standard[3]は、AES-CTRおよびAES-CBCに触発された様々な方式を定義することにより、MPEGエコシステムにおけるメディアデータ、すなわちISOベースメディアファイルフォーマット[4][5](FF)コンテナにカプセル化されたコード化メディアデータの暗号化を定義している。特に、方式は、コード化メディアデータのいずれの部分が暗号化される平文を構成するかを記述する。暗号化方式は、16バイトの平文のブロックに対して動作する。当然ながら、コード化メディアデータのすべてよりも少ない暗号化を行い、コード化データ内の様々な空間的および時間的依存性を通じて、暗号化メディアデータの不正な使用(すなわち、暗号鍵を欠く不正な解読)を依然として禁止することが可能である。
【0004】
FFコンテナに含まれるコード化ビデオデータのコンテキストでは、単一の時間インスタンスに関連付けられ、解読後にビデオピクチャをもたらすコード化データは、通常サンプルとして参照される。FFコンテナ内のサンプルは、さらに論理的および空間的に細分化してサブサンプルにすることができ、例えば、空間細分化のためのビデオコーデックツール、例えばHEVC[6]におけるスライスまたはタイルが使用される場合、コーデックの観点からの一定レベルの独立性を達成することができる。
【0005】
いくつかの暗号化方式(CTRに基づく「cenc」および「cens」ならびにCBCに基づく「cbc1」および「cbcs」)が、[3]において定義されており、コード化メディアデータ、すなわち[6]によるビデオ符号化層(VCL)と関連付けられるNALユニットのストリームのいずれの部分が平文を構成し、したがって暗号化されるかをシグナリングすることを可能にする。図2は、コード化メディアデータ内の1つのサンプル(すなわち、例えば、各々が別個のNALユニット内にある2つのタイルから構成されるビデオピクチャ)に関連付けられた一連のNALユニット、ならびに、ヘッダおよびエントロピー符号化されたペイロードから構成されるビデオスライスの構造を示す。後者は、図ではビデオスライスデータとして参照される。ISOメディアサイズヘッダは、NALユニット(NALU)の長さを記述子、以下ではパート15 NALサイズヘッダとして参照されることもある。ビデオスライスデータ(またはスライスペイロード)は、通常、コード化データストリームの最大部分を構成する。
【0006】
前述のように、コード化ビデオの様々なコード化および予測の依存関係により、すべてのサンプルの一部のみを暗号化し(例えば、1つおきのサンプル、または、さらには、いわゆるパターン暗号化方式「cens」および「cbcs」における、1つおきの平文ブロックもしくは別のシグナリング比)、依然として、コンテンツの良好な保護を維持することが可能であり、処理パワーが節約される。さらに、メディアデータの一部、特にNALユニットヘッダまたはスライスヘッダを暗号化せずにおくことが有益な場合があり、これらのデータは、コード化ピクセル値は含まず、例えばコード化メディアデータストリームをHEVC Annex Bバイトストリーム形式に書き換えることを目的とする、暗号化ストリームの処理について、システム層上で有用であり得る制御情報を含む。したがって、[3]のサブサンプル暗号化フォーマットでは、例えば、NALユニットおよびスライスヘッダなど、特定の部分を暗号化しないままにすることが義務付けられている。暗号化方式に応じて、サブサンプルの最後の部分平文ブロックの処理が異なる。CTRベースの方式「cenc」では、平文ブロックがサブサンプルの境界をまたぐ場合があり、一方、CBCベースの方式「cbcs」では、サブサンプルの最後の部分平文ブロックは暗号化されないままである。方式「cens」および「cbc1」では、サブサンプル開始時の暗号化されていないバイトの範囲が適切に選択され、結果、部分平文ブロックは発生しない。
【0007】
全方向メディアフォーマット(OMAF:Omnidirectional Media Format)[7]によって定義されるようなタイルベースのビデオストリーミングアプリケーションでは、クライアント側ビデオデータストリーム内のビデオピクチャは、ビデオの部分または領域を、ユーザに応じて他の部分または領域とは異なる解像度または品質で描写するタイルに分割することができる。これにより、関連するシステムリソース(ネットワークスループットまたはビデオデコーダピクセルスループット)を、例えば、360°ビデオストリーミングアプリケーション内の、ユーザが見ている方向の内容を表す領域など、ユーザの注意の中心にあるビデオ領域に集中させることができる。
【0008】
このようなコンテンツは、例えば、MPEG DASH[8]など、良好に確立されたHTTPベースのストリーミング形式を使用して配信されることが多い。ここで、コード化メディアデータは、セグメント化FFコンテナ内のHTTPサーバ上に存在し、アダプテーションセット(例えば、タイルなどの個々のメディアコンテンツ片)およびリプレゼンテーション(Representation)(同じコンテンツ片の様々なビットレートのバリエーション)にさらに構造化される、利用可能なセグメントのダウンロード可能なXML記述、すなわちMedia Presentation Description(MPD)を提供することにより広告される。360°ビデオのサブピクチャまたはタイルはアダプテーションセットとして提供することができ、一方、他のアダプテーションセットは、いわゆるFFエクストラクタトラック(FF extractor track)を介して個々のサブピクチャまたはタイルの(ビューポート依存の混合解像度)構成を記述する。これらのFFエクストラクタトラックは、以下の2つの集約概念を通じて、対応するサブピクチャトラックを参照する。
・dependencyIdとして参照される概念(図3、1つのエクストラクタトラックが、構成のコンテンツ片、すなわちコンテンツ片の特定のビットレートバリエーションを含む、アダプテーションセット内のリプレゼンテーションを明示的に参照する)。これは、クライアント側で再生されたときにエクストラクタトラックによって抽出されるサブサンプルの正確なバイトサイズが、エクストラクタトラックの作成中に分かることを意味する。または
・プレセレクションとして参照される概念(図4、1つのエクストラクタトラックがアダプテーションセットレベルでのみ構成のコンテンツを参照し、正確なリプレゼンテーションの決定はクライアントに委ねられる)。これは、クライアント側で再生されたときにエクストラクタトラックによって抽出されるサブサンプルの正確なバイトサイズが、エクストラクタトラックの作成中に分からず、クライアントダウンロードの後でしか分からないことを意味する。
【0009】
図3に示すように、3つの異なるビットレートにおいてこの例の2つの異なるタイルのすべての可能な組み合わせをシグナリングするためにdependencyIdが使用される場合、9つの表現がAdaptationSet(アダプテーションセット)3内でシグナリングされる(図では6つのみを示す)。すべての表現をサーバにおいて利用可能にする必要があり、各表現のエクストラクタトラックを生成する必要がある。図4は、プレセレクションを使用すると、9つの可能な組み合わせのいずれかから有効なビットストリームを生成するために有効な単一のエクストラクタトラックを含む単一の表現がAdaptationSet3において利用可能になることを示している。
【0010】
プラットフォームの少なくとも一部によってサポートされている、暗号化タイルベースのDASHサービスの現行技術水準の手法は以下のとおりである。
【0011】
・MPDがdependencyIdを使用し、すべてのサブピクチャ/タイルが「cbcs」暗号化される。
・MPDがdependencyIdを使用し、任意の単一のサブピクチャ/タイルのみがCTR、すなわち「cenc」または「cens」暗号化される。
【0012】
ただし、そのようなコンテンツが、デジタル著作権管理(DRM)を実現するために暗号化形式において、幅広い既存のプラットフォーム、すなわちAndroidまたはiOSベースのモバイルデバイス、SmartTVおよびセットトップボックス、ブラウザ実装などのようなデバイスエコシステムに提供される場合、多種多様な問題が発生する。
【0013】
・一部のプラットフォームはCBCベースの暗号化手法のみをサポートすることができ、他のプラットフォームはCTRベースの暗号化のみをサポートすることができる。
・上記のdependencyIdベースの手法を使用するタイルベースのストリーミングサービスは、サービスオペレータにとって魅力のない、比較的冗長で大きいMPDを維持することを必要とする。前述のプレセレクション手法を使用すると、タイルベースのストリーミングサービスにおけるMPDサイズおよび複雑さを大幅に削減することができる(比較については、図3および図4を参照されたい)。
・CTRベースの暗号化方式における平文は、ピクチャ内のタイルの順序またはビットレート(バイトサイズ)が変更を受けるタイルベースの手法を禁止するサンプル内のすべてのサブサンプル/タイルペイロードデータの連結から構成される。
【0014】
上記の様々な問題から明らかなように、既存の暗号化方式は、現在、タイルベースのビデオストリーミングのコンテキストにおいてDRMを実現することを可能にしない。
【0015】
本出願が関係するさらなる態様は、全方向ビデオ、および、シーンにわたってビデオ品質が変化する場合の全方向ビデオの処理に関する。全方向ビデオの品質は、領域ごとに異なる。品質の空間的な差を記述するために、全方向メディアフォーマット(OMAF)は、ISOBMFFとDASHの両方のシグナリング方法を指定する。ISOBMFFの場合、視覚的なサンプルエントリでSphereRegionQualityRankingBox(図5aを参照)または2DRegionQualityRankingBox(図5bを参照)を使用して、領域ごとの品質の差を示すことができる。
【0016】
両方のボックスが、quality_ranking属性の値を指定することにより、全方向ビデオの異なる領域の相対的な品質差をシグナリングすることを可能にする。領域Aのquality_ranking値が領域Bの値より小さい場合、領域Aは領域Bよりも高い品質を有する。
【0017】
DASHにおいて様々な領域の相対的な品質差をシグナリングするために、OMAFは、「urn:mpeg:omaf:rwqr:2017」に等しい@schemeIdUri属性および下記の表に指定するような値のコンマ区切りリストとしての@valueを有するSupplementalProperty要素を使用する、領域ごとの品質記述子を定義する。
【0018】
【0019】
この記述子は、アダプテーションセットレベルで現れ、他のレベルには存在しないものとする。例えば、2つのタイルが2つの異なる解像度(高解像度および低解像度)によって符号化されている場合、図6に示すように、それらのタイルの各々を別個のAdaptationSetによって記述することができる。各AdaptationSetは、異なるビットレートで符号化されている、同じタイルの異なる表現を含み得る。各リプレゼンテーションはまた、同じAdaptationSet内の他のリプレゼンテーションに対する現在のリプレゼンテーションの品質ランキングを指定する任意選択の属性@qualityRankingも含み得る(値が小さいほど品質が高くなる)。AdaptationSet 3(およびAdaptationSet 6)のリプレゼンテーションは、AdaptationSet 1の中の1つのリプレゼンテーションと、AdaptationSet 2(またはそれぞれAdaptationSet 4およびAdaptationSet 5)の1つの表現との任意の組み合わせを可能にするエクストラクタトラックを含む。
【0020】
クライアントが、ビューポート依存ソリューションに対応するAdaptationSet 3または6を選択する場合、コンテンツの焦点がどこにあるかを理解するために、領域ごとの品質の説明を提供することが望ましい。与えられている例では、2つの領域があり、1つはquality_ranking=1の値を有する高解像度を含み、もう1つはquality_ranking=2(または、より高解像度の領域がより高い品質を有することを示す任意の他の数値)を有する低解像度を含む。
【0021】
したがって、ユーザは、そのAdaptationSetを選択すると、ビューポート依存表現の焦点がどこにあるかを直ちに理解する。ただし、プレセレクションがAdaptationSetレベルで使用される場合、対応するリプレゼンテーションの可能な組み合わせは定義されず、対応するAdaptationSetからの任意のリプレゼンテーションを使用することができる(同時に、それらのリプレゼンテーションの@qualityRanking属性が存在する場合がある)。@qualityRanking値は、領域ごとの品質記述子によって指定される値と矛盾する場合がある。
【発明の概要】
【0022】
したがって、本発明の目的は、分割ビデオストリーミングのためのより効率的な概念を提供することである。
【0023】
この目的は、本出願の独立請求項の主題により達成される。
【0024】
本出願の第1の態様は、タイルベースのビデオストリーミングに暗号化/解読を適用する概念に関する。第1の変形形態によれば、例えば、各サブセットが、ビデオピクチャエリアの対応する部分に関連し、異なる品質のビットストリームを収集する、ビットストリームの1つまたは複数のサブセットが、エクストラクタによってこれらのサブセットの各々から1つのビットストリームを取り出すことからもたらされるコンパイル済みビットストリームが、現在のピクチャフレームに対して、各暗号化サブセットからの1つのビットストリームの1つの暗号化ピクチャ部分を有するような暗号化を受ける。この第1の態様によれば、暗号化はブロック単位の暗号化およびブロック単位の解読によって行われ、これらは両方とも平文マスクおよび/またはブロック解読鍵の順次変化を使用することによって行われ、特に順次変化は、コンパイル済みビットストリーム内のそれぞれのサブピクチャ部分を形成する各ピクチャ部分の再初期化を受ける。したがって、サブピクチャ部分ごとの再初期化により、暗号化サブセットからいずれのビットストリームがコンパイル済みビットストリームのコンパイルに選択されたかは重要ではない。特定のピクチャフレームに関連するピクチャ部分の長さは、暗号化/解読に問題を引き起こすことなく、ピクチャエリアの特定の部分に関連する特定のサブセット間で変えることができる。クライアント側において、すなわち、ダウンロード側において、暗号化サブピクチャ部分のコード化ペイロードセクションの境界が、以下の代替形態、すなわち、現在解読された位置までのそのような暗号化サブピクチャ部分のコード化ペイロードセクションを解析すること、および/もしくは、それぞれのサブピクチャ部分内のヘッダからそれぞれのサブピクチャ部分のコード化ペイロードセクションの長さを導出すること、ならびに/または、それぞれのサブピクチャ部分が属するピクチャ部分が導出されるビットストリーム内でシグナリングされるビットストリーム長またはポインタ指示を使用すること、のうちの1つに基づいて検出される。-実際、この方法で、タイルベースのビデオストリーミング環境に暗号化/解読を効率的に、すなわち、そのような環境に、ダウンロードされた構成済みビットストリームを形成するためにプレセレクションをも使用する機会が与えられるように、適用するソリューションが発見された。
【0025】
さらなる変形形態によれば、暗号化/解読が、その状況が現在のピクチャフレームのビデオピクチャエリアの1つの部分の識別に同期する、現在のピクチャフレームを通じたビットストリームのサブセットの識別された1つに焦点を当てるように、タイルベースのビデオストリーミング環境に暗号化/解読が適用される。識別は、例えば、エクストラクタまたは暗号化を受けるサブピクチャ部分自体においてシグナリングされる。ここで、暗号化/解読は、平文マスクおよび/もしくはブロック解読鍵の順次変化を使用するか、または、暗号化/解読の取り組みをシーンの様々な部分の1つのみに効率的に集中させることに利点がある他の手段によって行うことができる。
【0026】
本出願の別の態様は、分割ビデオストリーミング環境のクライアントが、特定のプレセレクションアダプテーションセットがそのROIをどこに有するかの理解を導出し、および/または、品質に関してそのようなプレセレクションアダプテーションセットによって提供される個々の組み合わせオプション間の相対的ランキングの良好な推定を導出する機会を与えられる、効率的な方法に関する。この態様によれば、第1の変形形態において、マニフェストファイルが、出力ピクチャエリアの各領域に、マニフェストファイル内のそれぞれのパラメータセットによっても定義されるピクチャ部分固有のアダプテーションセットの1つを割り当てる、プレセレクションアダプテーションセットを定義する少なくとも1つのパラメータセットを含む。以下の状況のうちの少なくとも1つが適用される。すなわち、少なくとも1つの第2のパラメータセットが、クライアント側において、これらの範囲が出力ピクチャエリアの領域にわたって空間的に変化する品質のより良い理解を得、結果、ROIがどこにあるか、すなわち、より高品質の領域がどこにあるかを示唆すること、および/または、それぞれのプレセレクションアダプテーションセットによって提供される様々な組み合わせオプションに関連する品質のより良い理解を得ることを支援するように、それぞれの領域に割り当てられているピクチャ部分固有のアダプテーションセットの表現の品質レベルをカバーする品質レベル範囲を示す、出力ピクチャエリアの各領域の1つまたは複数のパラメータを含む、付加的にまたは代替的に、マニフェストファイルは、ピクチャ部分固有のアダプテーションセットを定義するパラメータセットによって示される品質レベルが、第1のパラメータセットの異なるパラメータにわたって順序スケーリングされるように、共通の順序尺度上で定義されるか否かの指示を含む。したがって、クライアントは、出力ピクチャエリアをもたらす領域214の照合におけるROIの位置に関する情報を得るために、参照される部分固有のアダプテーションセットのパラメータセット内の品質レベルを検査することができる。したがって、付加的にまたは代替的に、プレセレクションアダプテーションセットによって提供される様々な組み合わせオプションに関連する品質の正確な理解が利用可能になる。付加的にまたは代替的に、プレセレクションアダプテーションセットのパラメータセットは、出力ピクチャエリアの領域ごとに、品質レベルなどの独自の品質ヒント、および、品質ヒントが、参照される部分固有のアダプテーションセットのパラメータセットに含まれる、ローカル定義の品質レベルと共通の尺度上にあるか否かの指示を含む。品質ヒントは共通パラメータセット、すなわちプレセレクションアダプテーションセットの1つにおいて定義されるため、それらはいずれにしても共通の尺度上で定義され、クライアントデバイスが、対応するプレセレクションアダプテーションセットに関連付けられたROIを位置特定することを可能にする。加えて、プレセレクションアダプテーションセットのパラメータセット内の品質および部分固有のアダプテーションセット内の品質は共通の尺度で定義され、結果、プレセレクションアダプテーションセットの利用可能なオプションを正確に理解することができる。付加的にまたは代替的に、プレセレクションアダプテーションセットのパラメータセットは、出力ピクチャエリアの領域ごとに、クライアントがそれを使用して少なくとも、領域の照合に対する、すなわち、出力ピクチャエリアの周囲内での品質の空間分布に関してプレセレクションアダプテーションセットを解釈することが可能であり、結果、対応するプレセレクションアダプテーションセットに関連付けられたROIを位置特定することが可能である品質レベルなどの独自の品質ヒントを含む。同様に、対応する態様によれば、品質ヒントは、部分的に変化する品質の表現を相互に関連付けるために使用され、表現は最高品質の部分の位置に一致する。またなおさらに、ファイルフォーマット記述子に同様の情報を提供して、受信側において同様の利点を実現することができる。
【0027】
本出願の有利な実施形態は、従属請求項の主題である。本出願の好ましい実施形態は、図面に関連して以下で説明される。
【図面の簡単な説明】
【0028】
図1a】ここでは、サブサンプル境界を越えて継続するように実行されるものとして例示されているが、後続の実施形態では、サブサンプルごとに再初期化が行われ得ることが明確になる、暗号ブロックチェーンを使用したブロック単位の暗号化を示す概略図である。
図1b】CTRを使用したブロック単位の暗号化を示す概略図である。
図2】[3]による、コード化メディアデータおよびFFコンテナ内のスライス構造内の一連のNALユニットを示す概略図である。
図3】(依存関係IDを使用した、高解像度の2つのタイルおよび低解像度の1つのタイルに関する)マニフェストファイル/MPD内の表現を示す概略図である。
図4】プレセレクションを使用した、高解像度の1つのタイルおよび低解像度の1つのタイルの、2つのタイルに関する、マニフェストファイル(MPD)内の表現を示す概略図である。
図5a】球形領域に関する、中間大文字とともに記述された球体領域の品質ランキングボックスの一例を示す図である。
図5b】球形領域に関する、ISOMBMFFに従って中間大文字とともに記述された2D領域品質ランキングボックスの一例を示す図である。
図6】2つのプレセレクションアダプテーションセットがマニフェストファイル内で定義されているところを示す概略図である。
図7】本出願の実施形態に従って、暗号化/解読をタイルベースのビデオストリーミングと組み合わせる概念を示す概略図である。
図8】一実施形態によるエクストラクタを使用した、ダウンロードされたビットストリームに基づく構成済みビットストリームの構成を示す概略図である。
図9】ブロック単位の暗号化/解読に関連付けられたブロック区分化におけるコード化ペイロードセクションの境界を示している、後に暗号化/解読を受ける、構成済みビットストリームのサブピクチャ部分の単位の暗号化された符号化ペイロードセクションの具体化を示す図である。
図10】一実施形態によるダウンロード装置の概略ブロック図である。
図11】本出願の実施形態に従って使用される解読/通過境界検出を交互に行うプロセスを示す概略フロー図である。
図12】プレセレクション、2つのタイル、および1つのエクストラクタトラックを使用したマニフェストファイル(MPD)の表現を示す概略図である。
図13】サブサンプルごとの初期化ベクトルIVおよびカウンタを用いたCTRベースの暗号化を示す概略図である。
図14-1】品質レベル範囲を定義する本出願の一実施形態によるRWQR記述子の例を示す図である。
図14-2】品質レベル範囲を定義する本出願の一実施形態によるRWQR記述子の例を示す図である。
図15-1】領域固有のアダプテーションセット内の表現に対して示される品質レベルが共通の順序尺度上で定義され、したがって互いに比較可能であるか否かの指示を使用する実施形態によるRWQR記述子の一例を示す図である。
図15-2】領域固有のアダプテーションセット内の表現に対して示される品質レベルが共通の順序尺度上で定義され、したがって互いに比較可能であるか否かの指示を使用する実施形態によるRWQR記述子の一例を示す図である。
図16】領域固有のアダプテーションセットの品質レベルに対して示される品質レベルを互いにどのようにオフセットするかに関して、プレセレクションアダプテーションセットに対してシグナリングする実施形態を示す概略図である。
図17】切頭四角錐のRWQRオフセットの使用を示す概略図である。
図18】クライアント側の改善された品質評価に関連する本出願の実施形態に関与する、クライアントデバイスならびに表現およびマニフェストファイルを含むデータを示す概略図である。
図19】品質評価を改善するための品質レベル範囲指示の使用を示す概略図である。
図20】グローバリティ指標を使用したクライアント側のより容易な品質評価を示す概略図である。
【発明を実施するための形態】
【0029】
本出願の第1の態様に関する実施形態の以下の説明は、本明細書の導入部分で上述した分割またはタイルベースのビデオストリーミングに関する暗号化の処理の説明を予備的に再開する。この目的のために、MPEGの環境における既知の技術のあり得る修正が提示される。したがって、これらの修正は、本出願の第1の態様の実施形態を表し、修正はMPEG環境での使用に限定されず、他の場所で有利に使用することができるように、以下に要約される。
【0030】
特に、以下でさらに説明する実施形態は、利用可能なプラットフォームのより広いセットにわたるタイルベースのビデオストリーミングシステムでのコンテンツメディア暗号化を効率的な様式で可能にし、この点に関して本明細書の導入部分に存在する暗号化方式の欠点を克服する。特に、これは、以下を用いるタイルベースのストリーミングサービスを含む。
-すべてのサブピクチャのCTRベースの暗号化、
-DASHプレセレクションを用いた暗号化メディア(CTRまたはCBC)。
【0031】
プレセレクションを用いてすべてのサブサンプルを「cbcs」暗号化することを可能にする、実施形態の後述する変更に従って使用される第1のツールは、以下では必須サブサンプル識別概念またはアルゴリズムと呼ばれる。このアルゴリズムにより、MPDにおいてプレセレクションが使用される場合に、CBCベースの暗号化方式を利用することが可能である。共通暗号化[3]は、サブサンプル境界を、したがって、以下において参照のために再現される暗号化および非暗号化データのバイト範囲を識別するための2つの方法を提供する。すなわち、解読器が、NALユニットを解析してそれらのタイプヘッダによってビデオNALを位置特定することによって解読し、次いで、それらのスライスヘッダを解析して暗号化パターンの開始位置を特定し、それらのパート15 NALサイズヘッダを解析してNALの終端および一致するサブサンプル保護データ範囲を決定する。したがって、(a)このアルゴリズムを使用して、すなわち、サンプル補助情報を解析し、無視するか、または(b)このアルゴリズムを無視してサンプル補助情報を使用するかのいずれかで、トラックを解読することができる。
【0032】
サンプル補助情報(SAI)は、暗号化および非暗号化データのバイトの位置および範囲をともに示す、[4]において定義されている2つのボックス「saiz」および「saio」から構成される。ただし、プレセレクションを用いたタイルベースのストリーミングシナリオでは、結果もたらされるクライアント側ビットストリームの各サブピクチャ/タイルのビットレート(および、したがってバイトサイズ)を知ることはできない。したがって、エクストラクタトラックが正しいSAIを事前に含むことはできない。
【0033】
したがって、本明細書で説明する実施形態によれば、存在する場合、エクストラクタトラック内の明瞭な/保護バイト範囲に関連する誤ったSAIパラメータは考慮されず、代わりに、暗号化および非暗号化データの位置およびバイト範囲の導出に上記のアルゴリズムが使用されることが、OMAFなどのアプリケーションフォーマット仕様においてシグナリングまたは義務付けられる。
【0034】
第1の実施形態によれば、この概念は、以下で説明するように、ビデオコンテンツ部分/タイル単位の暗号化とともに使用される。
【0035】
特に、図7は、タイルベースのビデオストリーミングによりROI固有のビデオストリームをダウンロードするためのデータ10の集合を示している。実際のストリーミングの実施形態およびそれに含まれるエンティティの実施形態を以下でさらに説明する。データ10は、ビデオピクチャエリア16の各部分14がビットストリーム12のサブセット18に異なる品質で符号化されるように、その部分が以下において教示されるタイルであり得る、ビデオピクチャエリア16の部分14の1つに各々が符号化されたビットストリーム12を含む。したがって、サブセット18は、部分固有のサブセット18を形成する。これらのサブセット18は、適応ストリーミングおよびマニフェスト24の記述に関して、図3および図4に示されるように個々のアダプテーションセットとして扱うことができ、ここで、例示的に、タイル(したがって、部分14を形成する)ごとに1つのアダプテーションセット(したがって、サブセット18を形成する)が存在しており、各タイルは、タイル固有の表現セットを形成する(したがって、ビットストリーム12を形成する)。特に、タイル1には1つのアダプテーションセットAdaptationSet 1、タイル2には別のアダプテーションセットAdaptationSet 2が存在している。したがって、ビットストリーム12は、MPD24内の表現として扱うことができ、または別の言い方をすれば、これは異なる表現に分散され得る。
【0036】
データ10は、ビデオピクチャエリアのROI22に関連付けられた少なくとも1つのエクストラクタ20、すなわちエクストラクタデータまたはエクストラクタファイルまたはエクストラクタトラック、およびマニフェストファイル24をさらに含む。後者は、所定のROI 22について、矢印26で示すように、ビットストリーム12のセットを識別し、そのセットは、ビデオピクチャエリア16がROI22に上に集中するように区分化される異なる部分14に符号化されるように、サブセット18ごとに1つのビットストリーム12から構成される。この集中は、例えば、ROI内のサブセット18について、構成されるセットに寄与するこのサブセット18からの1ビットストリームが、対応するサブセット18から選択されてROI固有のセットに含まれる1つのビットストリームの品質がより低いROI22の外部の部分14に関係するサブセット18と比較して、より高品質になるように、セットを構成することによって行われる。したがって、参照26によって形成され、マニフェスト24によって示されるセットは、ビットストリームのROI固有のセットである。一例を図8に示し、以下でさらに説明する。
【0037】
ビットストリーム12は、例えば、N個のビデオデータストリームのM個の独立してコード化されたタイルによって形成され得、これらは各々、これらのM個のタイル14の単位において、ただし異なる品質レベルで符号化されたビデオピクチャエリア16を有することに留意されたい。したがって、MビットストリームをN倍すると、図7はM=16を示し、例えばNはサブセット18あたりのビットストリーム12の数である。ROI固有のセットは、各サブセット18から1つの、M個のビットストリームから構成される。ただし、これは単なる例であり、他の例も同様に実行可能である。例えば、NはM個の部分14の間で異なり得る。ROI固有のセットは、サブセット18のうち、少なくともROI22をカバーする部分14に関係するサブセットのみから構成され得る。
【0038】
ビットストリーム12は、後で教示されるように、クライアントによって断片的に選択的にダウンロードされるためにストレージ上に格納することができるが、MPD 24内の個々の表現として扱われてもよく、これは同じくクライアントによるダウンロードのために格納され、ビットストリーム12のダウンロードのためアドレスをクライアントに示す。ただし、ビットストリーム12に対応する表現は、個別に再生するために専用のものではない、すなわち、アダプテーションセットによって形成されるROI固有のセットの一部でない場合の再生専用のものではないものとして示され得る。エクストラクタ20はまた、マニフェスト24において示されているアドレスによって別個に、または、メディアファイルのトラックなどのビットストリームのいずれかとともに、クライアントによるダウンロードのために格納される。本明細書のさらなる説明では、エクストラクタ20はFFエクストラクタファイルとしても示されている。1つのサブセット18内の表現が関係する品質レベルは、例えば、SNRおよび/または空間解像度および/または色度に関して変化し得る。
【0039】
エクストラクタファイル20は、ROI固有のセットからコンパイル済みビットストリームを構築するためのコンストラクタに類似する。エクストラクタファイルは、ビットストリーム12のROI固有のセットとともに、クライアントによってダウンロードされ得る。エクストラクタファイルは、ポインタおよび/または構築命令により、ビットストリームのサブセット18の各々について、ROI固有のセットに含まれる、ビットストリームのそれぞれのサブセット18の1つのビットストリームから、現在のピクチャフレームに関連するピクチャ部分を識別し26、識別されたピクチャ部分からのコンパイル済みビットストリームのコンパイルをシグナリングし、結果、コンパイル済みビットストリームが、コンパイル済みビットストリームがそれらから形成される、ビットストリームのサブセット18の各々の選択されたビットストリームのピクチャ部分のサブピクチャ部分を含むようにすることによって、ビットストリームのROI固有のセットからのコンパイル済みビットストリームのコンパイルを示す。例えば、図7では、3つの連続したピクチャフレームが示されている。図8は、1つのそのようなピクチャフレーム30、ビットストリーム12のROI固有のセット32、および、ピクチャフレーム30に関係するセット32の各ビットストリーム内のピクチャ部分34を示す。ピクチャ部分34は、部分番号13に関連するセット32のビットストリーム12について例示的に示されるように、NALユニット36などの1つまたは複数のユニットに空間的に区分化されるように示され得、各ユニットは、それぞれのピクチャ部分が関係する部分14の対応するパーティション38を符号化する。エクストラクタ20に従ってともに構成されると、構成済みビットストリーム40が得られ、これは、アクセスユニット42、または、本明細書の他の部分で使用されるファイルフォーマットドメインで言えば、ピクチャフレーム30などの各ピクチャフレームのサンプルを有する。各アクセスユニット42は、ROI22内の品質の向上とともに空間的に変化する品質でピクチャエリア16に符号化され、部分14あたり1つのサブピクチャ部分44に細分されており、各サブピクチャ部分44は対応するピクチャ部分32、すなわち同じ部分14に関係するピクチャ部分によって形成される。
【0040】
図4が参照するプレセレクションの場合、エクストラクタ20はROIに関連付けられるが、このエクストラクタ20は、すべてが向上した品質を有する異なるROI固有のセット32を構成する、すなわち、ROI 22内で、サブセット18の間で品質が向上したビットストリームを選択するために使用されることに留意されたい。すなわち、クライアントが所望のROIのセット32を選択するある種の自由がある。マニフェスト24においてROI 22について、図3が参照する、1つの特定のROI 22と、異なるROI固有のセット32のうちの1つとの各対を定義するアダプテーションセットを定義する場合、エクストラクタ20は具体的には、そのROIおよび対応するROI固有のセット32に関連付けられ、一方、そのROI22と、例えば、ROI内の部分14に関係するサブセット18内の選択されているビットストリーム12、および/または、ROIの外部の部分14に関係するサブセット18内の選択されているビットストリーム12内の前者のセット32とは異なる別のROI固有のセット32との別の対に対応する別のエクストラクタ20が提示され得る。加えて、以下に示すように、データ10内には複数のROI22が想定され得、結果、これらのROIの各々について、1つまたは複数のエクストラクタ20がデータ内に存在し得、マニフェストは対応する情報を含む。
【0041】
ビットストリームの各サブセット18の各ビットストリーム12のピクチャ部分34のコード化ペイロードセクションは、各ピクチャ部分34について順次変化を再初期化することによって、平文マスクおよび/またはブロック暗号鍵の順次変化を使用することによってブロック単位の暗号化を使用することにより暗号化される。すなわち、セット32のように間で順次変化を再初期化することなく連続的に、その部分14がともにピクチャエリア16をカバーし、すべてが共通のピクチャフレーム30に属するビットストリームの集合のピクチャ部分34のコード化ペイロードセクションを暗号化する代わりに、暗号化は各ピクチャ部分34に対して別個に行われる。
【0042】
コード化ペイロードセクションの暗号化は、ピクチャ16の中央の部分14に関係するサブセット18、または、例えば市松模様のように領域16に分布する2つおきの部分14に関係するサブセット18など、ビットストリームのサブセット18のうちの1つまたは複数の「暗号化されたセット」のいずれかに属するビットストリーム12のピクチャ部分34に制約され得ることに留意されたい。
【0043】
例えば、図9は、構成済みビットストリーム40に寄与する可能性のあるピクチャ部分34を示している。これは、例示的に、複数のユニット36からなるシーケンスから構成される。各ユニット(NALユニットなど)は、ヘッダ46と、ペイロードセクション48とを含む。後者は、予測パラメータ、および、ピクチャ部分34に対応する領域16の部分14が符号化された予測残差関連構文要素をすべて含むことができ、前者は、そのペイロードセクション36が、動き情報および残差データなどの、そのペイロードセクション36が符号化するパーティション38全体に対して有効な符号化設定を含むことができる。次に、下位部分44を形成するピクチャ部分34のペイロードセクション48の連結50が暗号化される。決定論的な方法で、平文マスクおよび/またはブロック解読鍵の順次変化が、連結50のブロックブロック単位の暗号化において行われる。すなわち、連結データ50は、図1aおよび図1bでは平文ブロックと呼ばれていたブロック52に分割され、ブロック間で、CTRの場合に連続する平文ブロックの異なるブロック暗号鍵を取得するために、暗号(非線形全単射)入力の増分変更が行われる。すなわち、特定の一般鍵によって制御される非線形関数または暗号関数、すなわち、図1bにおいてCIPHと呼ばれる関数および鍵と呼ばれる一般鍵が、平文ブロックごとに変化するカウンタと呼ばれる増分値またはカウンタ値を供給され、結果、それぞれ、暗号化された暗号ブロックを取得するために、対応する暗号鍵/解読鍵とXOR演算された連続するブロックの異なる暗号鍵/解読鍵が取得される。中間暗号鍵(連続する平文ブロック「平文#」について図4の「出力ブロック#」で出力されるは、解読に使用される解読鍵と同じである。CBRでは、先行する暗号ブロック、すなわち先行するブロック52の暗号化バージョンが、現在の平文ブロックが非線形全単射関数を使用して暗号化される前に、現在の平文ブロックをマスクするための平文マスクとして使用される。セクション48は、ペイロードセクション48間の境界がブロック境界と一致するように、暗号化のブロック長の整数倍に対応する長さを有するようにエンコーダによって生成されている場合がある。これは、上記の解読アルゴリズムと解析アルゴリズムとを交互に使用して境界検出を行う場合に特に有利である。特に、クライアントなどの受信エンティティは、連続するペイロードセクション間の境界54、および、連結50の終端部の境界56、すなわち、例えば最後のペイロードセクションの終端境界を検出する必要がある。
【0044】
したがって、まだ解読されていない形式にある、ビットストリームのROI固有のセット32、および、エクストラクタ20は、ともに暗号化ビデオストリームを表す。ビットストリーム12のROI固有のセット32は、ビデオピクチャエリア16の部分14に符号化されており、エクストラクタ20は、このセット32からのコンパイル済みビットストリームのコンパイルを示す。セット32からの、または単にそれらの間のビットストリームの暗号化セットの各ビットストリーム12からのピクチャ部分34のコード化ペイロードセクション48は、平文マスクおよび/またはブロック暗号鍵の順次変化を使用し、各ピクチャ部分34について順次変化を再初期化することによって、ブロック単位の暗号化を使用することにより暗号化される。
【0045】
図10は、タイルベースのビデオストリーミングによりROI固有のビデオストリームをダウンロードするための装置80の実施形態を示している。したがって、装置は、クライアントまたはクライアントデバイスと呼ばれる場合がある。示されているように、これは、DASHクライアント82、ファイルハンドラ84、および解読器86、ならびにオプションでデコーダ88を連結したものから構成されてもよい。DASHは適応的ストリーミング環境の例にすぎないことに留意されたい。別のものも使用されてもよい。ファイルハンドラ84および解読器86は、並行して動作することができ、または異なる言い方をすれば、厳密に順次動作する必要はなく、ファイルハンドラ84、解読器86、およびデコーダ88hを考慮するときに同じことが当てはまる。この装置は、図7に関して説明したように準備されたビデオシーンを処理、すなわちダウンロードおよび解読することができ、これは、説明したように、現在想定されているROIまたはビューポートに関係なく、すべてのサブサンプル44、すなわちすべての部分14が暗号化された、ダウンロードされた構成済みストリーム40になり得る。上記で言及しなかったが、図7のデータは、さらなるエクストラクタ20を有し、例えば、シーン内のユーザの視線方向を追跡することができるように、複数のROI、すなわちエリア16に分布するROIのセットに対する、ビットストリーム12のセット32を示すマニフェストファイル24を有することは明らかである。装置80は、例えばインターネットなどのネットワーク90を介してデータ10にアクセスすることができる。
【0046】
DASHクライアント82は、例えば、図7の22のように、ユーザが対応するビューポートを見ているために現在関心のあるROIに応じて、両方ともそのROI 22に関連付けられている、ビットストリーム12のROI固有のセット32と、エクストラクタファイル20とをともに識別してダウンロードするために、マニフェストファイル24をダウンロードして検査する。
【0047】
ファイルハンドラ84は、それぞれのビットストリームを解析することによって、これらのビットストリームの各々から、現在のピクチャフレーム30に関連するピクチャ部分34を抽出し、コンパイル済みビットストリーム40が各部分14について1つの、対応するサブピクチャ部分44から構成されるように、抽出されたピクチャ部分34からコンパイル済みビットストリーム40を形成することによって、エクストラクタファイル20を使用して、ビットストリーム12のROI固有のセット32からコンパイル済みビットストリーム40をコンパイルする。ROI固有のセット32のビットストリームを受信した時点では、ピクチャ部分のペイロードセクションはまだ暗号化されていることに留意されたい。しかしながら、ピクチャ部分はパケット化されており、結果、ファイルハンドラはそれらを処理することができる。
【0048】
解読器86は、平文マスクおよび/またはブロック解読鍵の順次変化を使用することによるブロック単位の解読を使用することにより、各サブピクチャ部分44の暗号化されたコード化ペイロードセクション48を解読する。この目的のために、解読器86は、各サブピクチャ部分44が解読されるように、すなわち、連結50の開始92または第1のユニット36のペイロードセクション48の開始境界において、順次変化を再初期化する。解読器は、各サブピクチャ部分44のコード化ペイロードセクションを現在の解読位置まで解析することにより、または異なる言い方をすると、連結50のペイロードセクションの解読および解析を交互に行うことにより、解読される各サブピクチャ部分44のコード化ペイロードセクション(複数可)の境界54、56を発見する。
【0049】
例えば、解読器が、ペイロードデータ50の最初のブロックの順次変化のために平文マスクおよび/またはブロック解読鍵を初期化した後、例えば上記のCTRまたはCBRを使用して、現在のブロックを解読100して、その平文バージョンを取得し、その後、後者が解析102され、すなわち、現在のユニット36の現在のペイロードセクション48に対する解析が、現在解読されているブロックの終わりまで続行されることを示す図11を参照されたい。104において、現在のブロック52の終端が現在のペイロードセクション48の終端を表すか否かがチェックされ、そうでない場合、手順は、現在のセクション48内の次のブロック52に飛ぶ106。しかし、肯定の場合、108において、連結50の最後のセクション48の終端に到達したか否かがチェックされ、そうである場合、現在のセクション48の境界または終端が発見されており、手順が現在のサブピクチャ部分44について終了し、そうでない場合、次のセクション48または次のユニット36の最初のブロックが110において追跡される。デフォルトでは、各ピクチャ部分34またはサブピクチャ部分44は、単に1つのユニット36から構成されている場合があり、その場合、ステップ108および110は省略することができる。実際に、このように、手順はペイロードセクション48の開始および終端を発見する。
【0050】
ペイロードデータセクション48は、図2ではビデオスライスデータと示されていることに留意されたい。サブピクチャ部分44は、上記ではサブサンプルと示されている。マニフェスト24がROI2およびROI固有のセット32およびエクストラクタの間の関係を定義する方法は、図4に示されるプレセレクションの概念に従うか、または図3の概念に従い得ることに留意されたい。また、上記の説明は利用可能なビデオピクチャエリア16全体に関係するダウンロードを想定しているが、ROIを含むそのセクションのみがダウンロードされたストリーム40によってカバーされ得ることにも留意されたい。すなわち、境界は、各サブピクチャ部分のコード化ペイロードセクション48の別のブロック52が解読されるべきか否かを決定するために、解読と解析の継続とを交互に行うことにより発見される。
【0051】
実際には、ビットストリーム12のダウンロードされたROI固有のセット32および対応するエクストラクタ20からビデオストリームを復元するための装置からのファイルハンドラ84および解読器86の連結または組み合わせ。ビデオストリームは、オプションとしてその装置の一部であってもよく、またはそうでなくてもよいデコーダ88に供給され得る。ファイルハンドラは、エクストラクタファイル20を使用してコンパイルを実行し、解読器86は、図11の解析/解読を交互に行う概念を使用してコード化ペイロードセクション48の解読を実行する。
【0052】
解読器86は、このとき、コンパイル済みビットストリーム40からデコーダ88によって復号されるためにビデオストリームを復元するための装置を表し、この装置は、図11の解析/解読を交互に行う概念を使用して各サブピクチャ部分44のコード化ペイロードセクションを解読するように構成される。
【0053】
説明したように、ペイロードセクション境界を発見するための図11によるコード化ペイロードセクション48の解析には、エクストラクタ20に含まれる可能性のある明示的な境界位置情報の無視を伴う場合があるが、これは誤っている場合があり、ファイルフォーマット規格に準拠するためだけに中に存在する場合があることに留意されたい。
【0054】
上記の実施形態は、ダウンロードされたすべてのサブサンプル44の暗号化を可能にした。しかし、次に説明する実施形態によれば、暗号化は、例えば1つのサブサンプル44に集中させることができる。ここでも、本明細書の導入における上記の説明が、広範な実施形態を提示する前に最初に再開される。特に、ここでは、暗号化サブサンプルのインデックスが、交番(または交番することを可能にする)単一(1つの|最も重要な|高解像度)サブサンプル暗号化に対処するために使用され、これは、CTRまたはcbc1暗号化およびプレセレクションの使用と組み合わせ可能である。
【0055】
図11に示すサブサンプル識別アルゴリズムに基づいて、マニフェスト24におけるプレセレクションを用いた暗号化方式が実現され、暗号化はサブピクチャごとに、ピクチャ平面16内の様々なタイル14に交互に適用され、以下を考慮し得る戦略においてタイルおよびピクチャが選択される。
・コード化構造および依存関係に対する相対的な「重要性」。例えば、より低い時間レベルのキーフレームは、例えばエラー伝播の観点から、デコード結果にとって非常に重要である。
・描写されたコンテンツの相対的な「重要性」。例えば、現在または予測されるビューポートまたはディレクタを描いたより高解像度のタイルは、360°ビデオアプリケーションではカットされる。
【0056】
このサブサンプル暗号化を有効にするために、暗号化サブサンプルへのインデックスがシグナリングされ、結果、解読器が暗号化サブサンプル44を識別することができる。例えば、解読器は、解読器が暗号化サブサンプルのシグナリングインデックスに到達するまで、サンプル42内のサブサンプル44を単純にカウントすることができ、図11に関して教示したように、パート15ヘッダからNALU長を収集し、解読するバイト数を識別することにより、サブサンプル44のセクション48を解読することができる。一実施形態は、OMAF仕様が、暗号化サブサンプル44のインデックスを示すようにFF Boxを定義するか、または、SAIから暗号化および非暗号化バイトを導出するために使用される共通暗号化[3]で定義される「senc」ボックスを改善することである。現在の「senc」ボックスは以下のように定義される。
aligned(8) class SampleEncryptionBox
extends FullBox(‘senc’, version=0, flags)
{
unsigned int(32) sample_count;
{
unsigned int(Per_Sample_IV_Size*8) InitializationVector;
if (flags & 0x000002)
{
unsigned int(16) subsample_count;
{
unsigned int(16) BytesOfClearData;
unsigned int(32) BytesOfProtectedData;
} [ subsample_count ]
}
}[ sample_count ]
}
【0057】
一実施形態は、不正確なバイト範囲のシグナリングを省略し、代わりに暗号化サブサンプルのインデックスが以下のとおりであることを示す「senc」ボックスの新しいバージョンである。
aligned(8) class SampleEncryptionBox_Invention2
extends FullBox(‘senc’, version, flags)
{
unsigned int(32) sample_count;
{
unsigned int(Per_Sample_IV_Size*8) InitializationVector;
if (flags & 0x000002)
{
if (version == 0){
unsigned int(16) subsample_count;
{
unsigned int(16) BytesOfClearData;
unsigned int(32) BytesOfProtectedData;
}[ subsample_count ]
} else if (version == 1){
unsigned int(32) EncryptedSubsampleIndex;
}
}
}[ sample_count ]
}
【0058】
ここで、EncryptedSubsampleIndexは、現在のサンプル42内の暗号化サブサンプル44を指す。
【0059】
上記の変更は、図7図11を参照することにより説明され得る実施形態をもたらす。そのような抽象化された実施形態の以下の説明は、これらの図に関してこれまでに説明された実施形態に関する修正に焦点を当てている。特に、ダウンロードされたストリーム40のすべてのサブサンプル44が1つのサンプル42内で暗号化されるわけではなく、1つのサブサンプル44のみが暗号化される。いずれのサブサンプルになるかは、例えば、例として「関心のある」シーンコンテンツに対応する、1つのサブセット18内のビットストリーム12のいずれかに属する、対応するピクチャフレーム30のピクチャ部分34が暗号化され、結果、ダウンロードされているストリーム40内の対応する暗号化サブフレーム44をもたらすように、実行中にまたは具体的には要求されているROI 22の暗号化の前に、または事前に決定されている場合がある。
【0060】
このように、図7は、後者の代替形態に従って、タイルベースのビデオストリーミングによってROI固有のビデオストリームをダウンロードするためのデータ10の集合を示し、これは、ビットストリーム12を含み、ビットストリーム12は各々、ビデオピクチャエリア16の部分141の1つを符号化されており、結果、ビデオピクチャエリアの各部分14が、異なる品質においてビットストリーム12のサブセット18に符号化され、ビデオピクチャエリアのROI 22に関連付けられた少なくとも1つのエクストラクタ20、ならびに、所定のROI 22について、ビットストリーム12のROI固有のセット32を識別するマニフェストファイル24が、例えばROI 22内で、外側と比較してより高品質であるという点でROIに焦点を当るように、ビデオピクチャエリア16の部分14に符号化されている。エクストラクタ20は、上述の方法で、ROI固有のセット32からのコンパイル済みビットストリーム40のコンパイルを示す。しかしながら、所定のサブピクチャ部分40が、コンパイル済みビットストリーム40のサブピクチャ部分44から識別される。これは、ビットストリームのサブセット18または同義的に所定の部分14からビットストリームの所定のサブセットを識別することにより行われ、結果、ビットストリーム12の所定のサブセット18の選択されたビットストリーム12のピクチャ部分34、すなわちROI固有のセット32に含まれるものが、暗号化されており、解読されるべきものである所定のサブピクチャ部分44になる。シグナリングは、上述のようにエクストラクタ20に含まれていてもよい。しかしながら、代替的に、このシグナリングがサブピクチャ部分40によって構成されることもあり得る。ビットストリーム12の所定のサブセット18、すなわち所定の部分14に対応するサブセットのビットストリーム12のピクチャ部分34のコード化ペイロードセクションは、そのサブセット18内のすべてのビットストリーム12に対して暗号化され、ダウンロードされたストリーム40は、ROI固有のセット32によるその部分14の選択される品質に関係なく、所定部分の暗号化サブピクチャ部分またはサブサンプル44を含む。
【0061】
後者の実施形態に従ってダウンロードされたデータは、ビットストリーム12のROI固有のセット32およびエクストラクタ20を含むビデオストリームを表し、ビットストリーム12のROI固有のセット32は、ビデオピクチャエリアの部分14を符号化されており、エクストラクタ20は、上記で概説した方法で、ビットストリーム12のROI固有のセット32からのコンパイル済みビットストリーム40のコンパイルを示す。このコンパイル済みビットストリーム内の所定のサブピクチャ部分44は、エクストラクタ20またはサブピクチャ部分44の少なくとも1つに含まれるシグナリングにより、コンパイル済みビットストリーム40のサブピクチャ部分44から識別される。所定のサブピクチャ部分のコード化ペイロードセクションは暗号化されている。
【0062】
図7の上記の再解釈に沿って、図10は、対応する代替実施形態に従って、タイルベースのビデオストリーミングによってROI固有のビデオストリームをダウンロードするための装置、すなわち、識別されたサブピクチャ部分のみの暗号化に関する上記の説明とは異なるクライアントを示し得る。すなわち、DASHクライアントは、マニフェストファイル24を検査して、所望のROI22に応じて、エクストラクタ20を伴うビットストリーム12、すなわち前の段落で概説したビデオストリームのROI固有のセット32を識別およびダウンロードする。ファイルハンドラ84は、それぞれのビットストリーム12を解析することによって、これらのビットストリームの各々から、現在のピクチャフレーム30に関連するピクチャ部分34を抽出し、コンパイル済みビットストリーム40が、コンパイル済みビットストリームが形成されるビットストリーム12のROI固有のセット32の各々のピクチャ部分34に対する、ピクチャ部分34によって形成されるサブピクチャ部分44を含むように、抽出されたピクチャ部分34からコンパイル済みビットストリーム40を形成することによって、エクストラクタ20を使用して、ビットストリーム12のROI固有のセット32からコンパイル済みビットストリーム40をコンパイルする。解読器86は、前述のように、そのようなエクストラクタ20の少なくとも1つの中にあるシグナリングに基づいて、現在のピクチャフレーム30のコンパイル済みビットストリーム40のサブピクチャ部分44から所定のサブピクチャ部分44を識別し、そのようなシグナリングは、上記でEncryptedSubsampleIndex、またはサブピクチャ部分と呼ばれる。次に、解読器86は、図11で説明した解析と解読とを交互に行うプロセスによって解読される所定のサブピクチャ部分44のコード化ペイロードセクション48の境界を発見することにより、所定のサブピクチャ部分44のコード化ペイロードセクション48を解読する。同様に、ファイルハンドラ84と解読器86とはともに、エクストラクタ20を使用してコンパイルを実行し、エクストラクタファイルまたはサブピクチャ部分の少なくとも1つでのシグナリングに基づいて、所定の/暗号化サブピクチャ部分44を識別することにより、ビットストリームのROI固有のセット32およびエクストラクタ20からビデオストリームを復元するための装置を形成する。次に、これは、図11に従って境界検出を実行することにより、暗号化サブピクチャ部分のコード化ペイロードセクション48を解読する。
【0063】
解読器86は、このとき、ビットストリーム40からビデオストリームを復元するための装置を表し、装置は、外部から、すなわち、エクストラクタ20のシグナリングから取得されるものとしてこの情報を、または、サブピクチャ部分44のシグナリングからその情報自体を転送するファイルハンドラ84から入来するシグナリングに基づいて、暗号化サブピクチャ部分44を識別するように構成される。次に、これは、図11に従って境界検出を形成することにより、暗号化サブピクチャ部分44のコード化ペイロードセクション48の解読を実施する。
【0064】
シグナリングは、解読器84が現在のサンプル42のサブサンプル44をカウントして、サンプル42内のn番目のサブサンプル44を検出することができるように、コンパイル済みビットストリーム40の現在のサンプル42のサブサンプルからの暗号化サブサンプル44を、サンプル42内のそのランクの形態でインデックス付けまたはアドレス指定することができ、でnはシグナリングによって示されるランクである、
【0065】
いくつかのピクチャフレームの暗号化サブピクチャ部分の識別は、いくつかのピクチャフレームが、暗号化サブピクチャ部分44が異なる部分14に対応するピクチャフレーム30を含み、かつ/または、いくつかのピクチャフレームが、正確に1つの暗号化サブピクチャ部分44が存在する第1のピクチャフレーム、および、暗号化サブピクチャ部分であると識別されるサブピクチャ部分が存在しない、第1のピクチャフレーム間に散在する第2のピクチャフレームを含むように行われてもよい。すなわち、一部のフレームでは、任意のポートイン14に関して暗号化が行われない場合がある。
【0066】
ここでも、図7図11に関して最初に説明したすべての詳細が、適応的に、すべてのまたはより多くのサブサンプルが暗号化されるようにすることに関するすべての詳細を除き、1つのサブサンプルの暗号化の修正に関して以下で説明されている実施形態にも適用されることに留意されたい。
【0067】
図11に関して明示的に言及していないが、セクション48の末尾の境界または終端に遭遇104した後に解読を再開106する際に、解読器86は後続のユニット36のスライスヘッダ46を解析して、この後続のユニット36のペイロードセクション48の始まりを検出することができることに留意されたい。
【0068】
次に、暗号化範囲48を検出するために解読/解析を交互に行う手順を必要としない上記実施形態の修正について説明する。次に説明するプレセレクションによるすべてのサブサンプルの「cbcs」暗号化を可能にする拡張SAI変形形態は、プレセレクションによるこのすべてのサブサンプルの「cbcs」暗号化を可能にするが、スライスヘッダを解析する必要はない。次の変形形態によると、エクストラクタトラック内の明確で保護されたデータ範囲の明示的なシグナリングまたは単純な導出が可能にされる。
【0069】
最初に、暗号化バイト範囲の導出にNAL長(すなわち、抽出されたバイト)を使用する「senc」ボックス拡張について説明する。前に説明したように、構成済みビットストリーム32内の個々のサブサンプルのサイズは、プレセレクションが使用される場合、抽出されるデータに応じて異なり得る。ビデオビットストリーム構造を使用して、暗号化バイト範囲、特にPart 15 NALU長ヘッダを導出することができる。一実施形態は、ボックスの第2のバージョンを以下のように定義することである。
aligned(8) class SampleEncryptionBox_Invention3.1
extends FullBox(‘senc’, version, flags)
{
unsigned int(32) sample_count;
{
unsigned int(Per_Sample_IV_Size*8) InitializationVector;
if (flags & 0x000002)
{
unsigned int(16) subsample_count;
{
if (version == 0){
unsigned int(16) BytesOfClearData;
unsigned int(32) BytesOfProtectedData;
}else if (version == 1){
unsigned int(1) WholeDataClear;
unsigned int(15) BytesOfClearData;
}
} [ subsample_count ]
}
}[ sample_count ]
}
【0070】
この実施形態では、単純化が想定され、これはサブサンプルがNALユニットに等しくなければならないということである。サブサンプルのサイズはNALULengthによって決定される。これは、サンプルの最初の位置(最初の4バイトなど)(これはサンプルの最初のサブサンプルに適用される)およびPos_i=Sum{i=1..N}(NALULengthi)の位置(サンプル内の残りのサブサンプルの)において発見される。WholeDataClearが1でない場合、BytesOfProtectedDataの長さは、subsample-BytesOfClearDataの長さとして導出される。WholeDataClearが1に等しい場合、BytesOfProtectedDataは0に等しいと推測され、BytesOfClearData(ただしこの場合、ボックス/構文で0としてシグナリングされることが義務付けられている)は、Part 15 NALU長ヘッダから導出されるサブサンプル長に等しいと推測される。
【0071】
すなわち、図10に関して上述した装置のすべての実施形態によれば、図11による交互の解読および解析を使用する境界検出は、以下の方法で不要にされ得る。すなわち、データ10のビットストリーム12は、暗号化ビットストリーム12のすべてのピクチャ部分34が、単に1つのユニット36(NALユニット)から構成されるように生成される。すなわち、サブセット18が暗号化されている部分14ごとに、現在のフレーム30のピクチャ部分あたりただ1つのNALユニットが存在する。構成済みビットストリームの各サブサンプル44は、ピクチャ部分などによって形成されるため、すなわち、これがROI固有のセット32に属するビットストリーム21の一部である場合、各暗号化サブサンプル44も1 NALユニット長になる。上記の代替形態、すなわち、フレーム30ごとの暗号化サブサンプルは、すべてまたは1つだけであり得ることに留意されたい。次に、交互の解読/解析境界検出は、これらのサブピクチャ部分44内のヘッダ、すなわちNALユニットヘッダ46からの暗号化サブピクチャ部分44のコード化ペイロードセクション48の長さの単純な導出によって置き換え可能である。長さ指示に関して暗号化サブサンプル44のヘッダを解析するプロセスは実行が容易であり、サブサンプルとNALユニットとの間の1対1の対応により、実行中に行うことができ、この情報は、対応する1つのみのNALユニット内の長さ指示に基づいて導出することができ、この長さ指示はほとんど、暗号化サブサンプルの始まりにある。
【0072】
交互の解読/解析境界検出を回避する別のオプションは、CENCと呼ばれ得る。「FF「senc」継承ボックス」が、任意のサブピクチャトラックまたはビットストリーム12からそれぞれエクストラクタトラックまたは構成済みビットストリーム40へとサブサンプルサイズを継承するために使用される。
【0073】
このオプションの目的は、従属トラック(セット32のビットストリーム12)からサブサンプル値を導出する継承ボックスを定義することである。従属トラックは、「moov」ボックス内の「tref」ボックス、すなわちエクストラクタ20でシグナリングされる。この情報は、従属トラックからサンプルを取得するために使用され、結果、構成済みビットストリーム40のサブサンプル44になる。同様に、BytesOfProtectedDataは、いくつかのヒント(オフセットの検索方法など)およびを使用して従属トラックのボックス(「senc」ボックスなど)に継承することができ、これは常に同じサイズであるため、BytesOfClearDataは継承ボックス内で、プレセレクションの使用時に使用される表現とは無関係にシグナリングされる。したがって、サブサンプルを搬送する従属トラック内でシグナリングされている情報からの「senc」関連情報の継承が可能にされる。この情報を収集するためのヒントは、エクストラクタ20内でシグナリングされる。図12は、各々が、異なるビットレートバージョンを有する3つのリプレゼンテーションおよびエクストラクタトラック(最も右側)を有する1つのアダプテーションセットを含む、タイルあたり1つのアダプテーションセットを有するMPD構造を示す。いわゆる「継承される「senc」」ボックスは、クライアント側で選択される各タイル表現内の「senc」ボックスから保護されているデータのバイト範囲を継承する。
【0074】
すなわち、図10に関して上述した装置のすべての実施形態によれば、図11による交互の解読および解析を使用する境界検出は、以下の方法で不要にされ得る。すなわち、データ10のビットストリーム12は、暗号化ビットストリーム12のすべてのピクチャ部分34が、それぞれのピクチャ部分のユニットのペイロードセクションを示すファイルフォーマット(FF)ボックスなどの中の情報を伴うように生成される。これは、構成済みビットストリームのサブサンプル44に由来するはずである、ROI固有のセット32に属するサブセット18のビットストリーム12に関係なく、エクストラクタ20から情報が参照され得るように、行われる。例えば、サブストリームのピクチャ部分の間で同じ位置にあるものは、同じサブセット18に属し、同じフレーム30に属する。次に、交互の解読/解析境界検出は、セット32内のビットストリーム12からこの情報を継承することによって、暗号化サブピクチャ部分44内のコード化ペイロードセクション48の位置の単純な導出によって置き換え可能である。すなわち、それぞれのサブピクチャ部分44が属する暗号化ピクチャ部分34がそこから抽出される、ビットストリーム12内でシグナリングされるビットストリーム長またはポインタ指示が、その中の境界54および56を検出するために使用される。
【0075】
何であれ境界検出の代替形態が使用される場合は、クライアント装置10は、エクストラクタ20内の明示的な境界位置情報を無視する可能性があり、それは間違っている可能性があり、また、規格に適合するためだけに存在し得るか、または、別の言い方をすれば、例えば、標準に従って必須であるため存在するが、各アダプテーションセット内の表現の間での選択におけるプレセレクション固有の自由のために正しくない場合がある。
【0076】
次に、上記の実施形態の可能な拡張が提示される。それらは、「ces2」、すなわち、サブサンプル初期化ベクトルを用いたCTRベースの暗号化として参照され得る。
【0077】
ここで、CTRベースのサブピクチャ暗号化方式は、各タイルの暗号化データストリームの独立を可能にする暗号化メタデータ(すなわち、サブサンプルごとの初期化ベクトル(複数可)を用いて各サブサンプルの暗号化チェーンの再初期化を可能にする手段)によって強化される。図13は、ブロック動作図の観点からこれを示している。サンプルごとのIVの代わりに、サブサンプルごとのIV(IVA、IVB、IVC)を使用し、それぞれのカウンタを維持しながら、サンプルの各サブサンプル(N、N+1、N+2…)について暗号化チェーンが再開される。
【0078】
CBCベースの「cbcs」方式に使用することができる比較手法は、サンプルのすべてのサブサンプルに1つのIVを使用することである。これには、平文ブロックが類似している場合、各サブサンプルの始まりに類似した暗号文ブロックが生じるという欠点がある。
【0079】
現在議論されている可能性は、クライアント側で変化するサブサンプルごとのIVを導出するための様々なモードを必要とする。まず、IVは、以下に示す「senc」ボックスの新しいバージョンにおいて明示的にシグナリングすることができる。
aligned(8) class SampleEncryptionBox_Invention4
extends FullBox(‘senc’, version, flags)
{
unsigned int(32) sample_count;
{
if (version == 0){
unsigned int(Per_Sample_IV_Size*8) InitializationVector;
if (flags & 0x000002){
unsigned int(16) subsample_count;
{
unsigned int(16) BytesOfClearData;
unsigned int(32) BytesOfProtectedData;
} [ subsample_count ]
}
} else if (version == 1){
if (flags & 0x000002){
unsigned int(16) subsample_count;
{
unsigned int(Per_Sample_IV_Size*8)
InitializationVectorPerSubsample;
unsigned int(16) BytesOfClearData;
unsigned int(32) BytesOfProtectedData;
} [ subsample_count ]
}
}
}[ sample_count ]
}
【0080】
さらなる可能性は、既存の「senc」ボックスのようにサンプルごとの単一のシグナリングされるIVに基づいてクライアント側でサブサンプルIVを導出することであるが、追加のサブサンプル依存オフセットがある。この場合のオフセットは、以下のいずれかである。
・Nバイトカウンタについて、数値関数を使用して計算される(例えば、オフセットはsubsample_index*((2(N*8)-1)/subsample_countに等しい)。
・事前に準備された擬似ランダムシーケンスのsubsample_index-thエントリから導出される。
【0081】
図7図11に関して上述した上記実施形態および図12に関して説明したその修正において要約すると、現在のピクチャフレーム30内の各ピクチャ部分34の再初期化は、相互に異なる初期化状態に基づくことができる。言い換えれば、複数のサブセット18のビットストリーム12を暗号化する場合、これらのサブセットには、各サブセット18に1つずつ、相互に異なる初期化状態が使用される。これにより、構成済みビットストリーム内の暗号化サブピクチャ部分44の各々について、相互に異なる初期化状態が導出される。相互に異なる初期化状態は、現在のピクチャフレームの基本初期化状態に相互に異なる修正を適用した結果であり得、これは上記のサンプルごとの単一のシグナリングされる信号IVと呼ばれる。したがって、図8に関して上記で説明した装置は、現在のピクチャフレーム30の基本初期化状態に相互に異なる修正を適用することにより、アクセスユニット4または現在のフレーム30ごとにサブピクチャ部分44の暗号化サブセットの相互に異なる初期化状態を導出することができる。各サブピクチャ部分44またはサブセット18の相互に異なる修正はそれぞれ、それぞれのサブピクチャ部分44またはサブセット18が関係するビデオピクチャエリア16の部分14に応じて、または、それぞれのサブピクチャ部分44またはサブセット18または部分14のインデックスに応じて導出することができる。上記のように、この目的で計算またはテーブル検索を使用することができる。インデックスは、上記ではサブサンプルインデックスと呼ばれている。エクストラクタ20は、現在のピクチャフレーム30内の各ピクチャ部分34の初期化状態をシグナリングする初期化状態リストを含むことができる。初期化状態は、それぞれのピクチャ部分が属するか、または由来するビットストリームでさらにシグナリングされてもよい。
【0082】
以下の説明は、本出願の別の態様に焦点を当てている。特に、ここでは、実施形態は、プレセレクションアダプテーションセットの使用に関連する問題、すなわち、このプレセレクションアダプテーションセットによって出力ピクチャエリアの領域の各々に割り当てられる各ピクチャ部分固有のアダプテーションセットから1つの表現を選択することにより、クライアントに対してそのようなプレセレクションアダプテーションセットによって提供される組み合わせオプションが、これらの組み合わせオプション間の品質ランキング、および、それらが対応する出力ピクチャエリアの周囲内のROIの全体的な位置に関して理解するのが困難であるという問題を克服することを模索する。以下の実施形態は、この問題を克服することを模索する。暗号化/解読関連の実施形態に関して以前に行われたように、以下の説明は、導入部に示された技法の可能な修正を提示すことにより、本出願の明細書の導入部に示された説明を再開することから始まる。その後、これらの修正によって表される実施形態は、実施形態を拡張することにより拡大される。
【0083】
特に、先ほど概説した問題に対処するには、以下のソリューションのいずれかを使用することができる。
【0084】
第1の実施形態:図14-1及び図14-2に示すように、領域ごとの品質記述子にmax_quality_rankingおよびmin_quality_ranking属性を追加する。
【0085】
第2の実施形態:品質値の範囲が図15-1及び図15-2に示すようにアダプテーションセット内のみであることを示すフラグを追加する。
【0086】
RWQR記述子内でlocal_quality_rankingの値が異なる領域を定義することは望ましくない。これは、表現間で異なる領域の品質の意味を解釈するのは困難であるためである。したがって、アダプテーションセット内のすべてのRWQR記述子は、local_quality_rankingに対して同じ値を有する必要があり得る。代替的に、RWQR記述子からシグナリングを実行し、それをMPDに追加することもできる(例えば、アダプテーションセットレベルで)。
【0087】
第3の実施形態:RWQRを、表現のために示されたqualityRankingにデルタとして追加する。
【0088】
AdaptationSet内の焦点と同じビューポートを有するすべての表現をグループ化することが望ましい。したがって、所与のAdaptationSetについて、いずれの領域を強調するかを示し、各領域の品質関係を記述することが有用である。このような指示は、グループ化メカニズムとして使用することができる。例えば、図16では、2つの領域および1の品質差を有する3つの表現が指定されているが、各表現は異なるビットレートで符号化されており、したがって、品質が異なる(Rep 1=3,4;Rep2=2,3;Rep3=1,2)。
【0089】
この例では、RWQR1の領域の品質がRWQR2よりも良好であり、それをシグナリングするためにAdaptationSetレベルで領域ごとの品質記述子が使用されていると想定している。したがって、RWQRは、表現をグループ化し、領域の品質関係を示すために使用される。これは、表現自体について示される品質ランキングへのデルタ/オフセットとして行われる。したがって、同じAdaptationSet内のすべての表現からの@qualityRanking属性が、領域ごとの品質ランキング記述子(RWQR1およびRWQR2)とともに領域の実際の品質値を計算するために使用される。
【0090】
オプションは、記述された記述子をタイルベースのストリーミングに適用することであり得、この場合、dependencyIdsは、領域ごとの品質ランキング記述子が配置されているAdaptationSet内で、リプレゼンテーションおよびそれらの@qualityRanking属性のすべての組み合わせが同じ関係(提案されているRWQRのシグナリングされているデルタ)を有するように、使用される。例えば、RWQR1およびRWQR2の値が1のデルタ/オフセット値を定義する場合、qualityRanking属性は常に同じ関係になる。
【0091】
明らかに、同じ手法を他のビューポート依存ソリューションに使用することができる。これは、例えば、360ビデオの一部が、角錐の他面よりも高い解像度を有する、角錐の底面にマッピングすることによって強調される、切頭角錐投影(TSP)(図17の投影の例を参照)の場合のように、ビューポート依存性が特定の投影方法を使用して達成される場合である。このような場合、領域ごとの品質ランキング記述子を使用して、その投影の領域の品質の関係をシグナリングする。例えば、図17では、前面の領域(RWQR1記述子で表されている)は、残りのすべての面(RWQR2)よりも品質が高くなっている。
【0092】
ちょうど概説した修正実施形態に関して特定の拡大実施形態を説明するために、以下の実施形態が扱う一般的な環境を示す図18を参照する。部分的に、図1図17の説明に関して使用されていた参照符号が、図18の説明に関して再利用されている。再利用とは、以下の説明の理解を容易にすることを補助するために使用されるが、当然のことながら、再利用は、例えば暗号化/暗号化に関して上記で説明した詳細を、続いて説明される実施形態に転換可能であるものとすることを意味するものではない。
【0093】
図18は、タイルベースのストリーミングを使用して、サーバなどからビデオコンテンツをダウンロードするためのダウンロード装置またはクライアント80を示す。ダウンロード装置80の内部構造は、図10に示されるものに必ずしも対応するものではない。しかしながら、ダウンロード装置80は、例えば図10に示されるようにダッシュクライアント82を備えてもよく、オプションとしてまたファイルハンドラ84、および、オプションとしてデコーダ88、および、さらにオプションとして解読器86を備えてもよい。ダウンロード装置80は、ネットワーク90を介して、複数のビットストリーム12およびマニフェストファイル24を含むデータ10にアクセスすることができる。ビットストリーム12は、タイルまたは部分ベースの方法で符号化されたビデオピクチャエリア16を有する。これに対して、ビットストリーム12はサブセット18に区分化され、各サブセット18はビデオピクチャエリアがそれに区分化される特定の部分またはタイル14に関連付けられ、結果、1つのサブセット18のビットストリーム12はそこに符号化された同じ関連部分/タイル14を有するが、品質は異なる。上述のように、品質は、SNR、空間分解能などのような点において、様々な態様の1つまたは複数で相互に異なる場合がある。理解を容易にするために、図18には2つの部分/タイル14のみが示されており、それにより図6に示されている場合に対応している。図6にさらに準拠して、図18は、各サブセット18が6つの異なるビットストリーム12を含む例示的な事例を示す。マニフェストファイル24により、各ビットストリーム12は、アダプテーションセット200の少なくとも1つ、いわゆるシーン部分またはピクチャ部分固有のアダプテーションセット内の表現としてクライアント80に示される。図18では、図6に示すアダプテーションセット1~4に対応する2つのそのような部分固有のアダプテーションセット200が各タイル14に対して存在するが、タイル14あたりのアダプテーションセットの数は2に限定されず、さらには部分14の間で異なってもよいことは明らかである。また、物理ビットストリーム12は、2つ以上のアダプテーションセット200に部分的に割り当てられてもよく、または、異なる言い方をすれば、2つ以上のアダプテーションセット200によって共同所有または共有される表現を表してもよいことに留意されたい。率直に言って、1つのサブセット18に属し、したがって同じシーン部分14を参照する表現12のグループ化は、1つのアダプテーションセット200に属する表現の品質が少なくとも平均して、別のアダプテーションセットに属する同じサブセット18の表現より高くなるように行われる。サブセット18の表現12のアダプテーションセット200へのグループ化はさらには、そのサブセット18の1つのアダプテーションセット200の任意の表現が他のアダプテーションセット内の他の表現よりも品質が高くなるように行われてもよい。ただし、これは必須ではなく、以下の説明から明らかになる。
【0094】
マニフェストファイル24は、少なくとも、第1のパラメータセット202、すなわち各アダプテーションセット200に1つのパラメータセットを含む。各パラメータセット#i、202は、対応するシーン部分固有のアダプテーションセット#i、200を、このアダプテーションセット#iに、1つのサブセット18内の表現12の特定のサブグループを関連付けることによって定義し、結果、そのような各アダプテーションセット200内の表現12は、同じシーン部分14を符号化されるが、品質は異なる。これらのパラメータセット202の各々は、それぞれのパラメータセットが定義するアダプテーションセット内の各表現12に対して、品質レベル、または品質レベルを示す構文要素204を含む。この目的のために、アダプテーションセット#iを定義するパラメータセット202は、そのアダプテーションセットi内の各表現#jに対して品質レベルQ(j)を有する。これは、図6に対応するアダプテーションセット1、2、4、5にも示されており、アダプテーションセット1は部分/タイル1に対応し、アダプテーションセット2および5は部分/タイル2に対応する。ここで、Qは、各優先度セット202によって示される品質レベルに対応する。
【0095】
加えて、マニフェストファイル24は、プレセレクションアダプテーションセットを定義するパラメータセット206を含む。各プレセレクションアダプテーションセット208は、出力ピクチャエリアの領域の各々に、タイル固有のアダプテーションセット200の1つを割り当てる。このように定義されたプレセレクションアダプテーションセット208は、タイル固有のアダプテーションセット200の、領域への割り当てが異なる。率直に言って、プレセレクションアダプテーションセットが、例えば、ROIからより離れた領域に割り当てられたアダプテーションセットの表現12の品質と比較して、ROIに対応する1つまたは複数の領域により高品質の表現12のアダプテーションセット200を割り当てるという点、または、例えば、プレセレクションアダプテーションセットが、ROIから離れた領域を除外して、ROIおよびその周辺の領域に関連するアダプテーションセット200のみを収集するという点において、プレセレクションアダプテーションセットはROIに固有である。しかし、クライアントが、特定のプレセレクションアダプテーションセットがどのROIに関連するかについて、クライアント自身が、以下でさらに概説する方法で確認する必要があるという点に問題がある。品質204は、それらが含まれる同じセット202内で単に順序スケーリングされるため、それ自体のみではこの目的に適していない。
【0096】
一般に、言及された領域および出力ピクチャエリアは、ピクチャまたはシーンエリア16を、それらを使用してビットストリーム12がタイルベースの符号化によって得られた可能性のある部分14に区分化することに対応し得るが、出力ピクチャエリアは代替的に、部分14を再配置および/またはスケーリングおよび/または回転させて出力ピクチャエリアを生成してもよく、この再配置および/またはスケーリングおよび/または回転も、場合によって、マニフェストファイル24内で示されるか、または出力ピクチャエリアのみが部分14の適切なサブセットから構成される。以下の実施形態の主要なトピックの説明を容易にするために、出力ピクチャエリアはシーンエリア16のように見え、部分14は、各プレセレクションアダプテーションセット208が対応するアダプテーションセット200の1つを割り当てる領域14を表すと事前に仮定するものとする。図18は、例えば、アダプテーションセット6がそれに関連付けられた出力ピクチャエリア216を有し、出力ピクチャエリア216がさらに領域214に細分化または区分化されることを示している。データ10に含まれ、参照符号20で示されるエクストラクタまたはエクストラクタファイル/トラックは、例えば、1つの領域を符号化するためのアダプテーションセット番号5からクライアント80によって選択される表現、および、他の領域214を符号化するためのアダプテーションセット4からクライアント80によって選択される表現を使用することによって、出力ピクチャエリア216を示す、対応するビデオデータストリームを含む。しかしながら、上述したように、出力ピクチャエリア216は、異なる品質でタイルベースの符号化を使用していずれのビットストリーム12が生成された可能性があるかに基づいて、ピクチャエリア14の任意の構成と異なり得る。アダプテーションセット3も、エクストラクタファイル20を関連付けられている可能性があり、他のアダプテーションセット6の出力ピクチャエリア216と比較して、形状、サイズ、および領域の数がアダプテーションセット6と一致する場合がある。
【0097】
図18に関して、例えば、エクストラクタ20の存在は、表現12の起源が、これらの表現に個別にコード化されるそれらのピクチャ部分14が、共通ビデオピクチャエリア16上で定義されず、個々のエリア上で定義されるような性質のものであり得る点において、必要ではなく、結果、プレセレクションアダプテーションセット206によるそれらの構成のみによって、そのピクチャ内容、すなわちそのピクチャ部分14がまとめられて、結果として領域214になり、したがって、出力ピクチャエリア216になる。
【0098】
図18に関してこれまでに提示された説明を要約すると、各プレセレクションアダプテーションセット206は、出力ピクチャエリア216の各領域214に対して選択された表現12に関して、クライアントデバイス80に何らかの決定を委ねる。各アダプテーションセット206は、ピクチャ部分固有のアダプテーションセット200を領域214に関連付けるにすぎず、クライアントデバイス80は、各領域214について、それぞれのプレセレクションアダプテーションセット206によってその領域214に割り当てられた表現12の1つを選択する自由を有する。ここで、図18のこの例では、これは、理論的には、各プレセレクションアダプテーションセット206について選択する9つのオプションがあることを意味することになる。残念ながら、パラメータセット内で提供される品質204は、プレセレクションアダプテーションセット208の出力ピクチャエリア216内で、ROIが、他の手段なしでは部分固有のアダプテーションセットごとに順序スケーリングされることのみが保証される品質として存在する評価を可能にしない。またさらに、クライアントは、品質に関して特定のプレセレクションアダプテーションセットの様々な組み合わせオプションを合理的にランク付けすることさえできない。上述の実施形態は、特定のプレセレクションアダプテーションセットのROI位置を評価し、ならびに/または、品質に関して、および、場合によってはさらにプレセレクションアダプテーションセットのROI特異性を考慮したオプションの有意性に関して特定のプレセレクションアダプテーションセット206の組み合わせオプション間のランキングを評価するための効率的なガイダンスをクライアントデバイス80に提供することを可能にする。
【0099】
この目的のために、各プレセレクションアダプテーションセット206は、特定の追加の品質ガイダンスデータ218、すなわち、それぞれのプレセレクションアダプテーションセット206によって品質に関して領域214に相互に割り当てられたピクチャ部分固有のアダプテーションセット200の間のランキングを定義することを可能にし、オプションとして、品質に関して特定のプレセレクションアダプテーションセット206によって割り当てられた、割り当て済みのピクチャ部分固有のアダプテーションセット200に含まれる表現12間の相互関係のさらに細かい評価を可能にしてもよいガイダンスデータ218を含む。
【0100】
本出願の明細書の導入部に記載された技法の修正の上記説明によって伝達される第1の実施形態が、図19に関して説明される。図19によれば、各プレセレクションパラメータセット206は、各領域214の1つまたは複数のパラメータを含み、これは、このパラメータセット216によって定義されたプレセレクションアダプテーションセット214によってそれぞれの領域に割り当てられたピクチャ部分固有のアダプテーションセット200の表現12の品質レベル204をカバーする品質レベル範囲220を示す。例えば、図19は、追加の品質ガイダンス情報218が、参照符号219によって示されるように、それぞれのガイダンス情報218がその一部である、パラメータセット206によってそれぞれの領域iに割り当てられるピクチャ部分固有のアダプテーションセット200に含まれる表現の品質、すなわち、表現jのQ1…3(i)が中に存在する範囲220を示すために、各領域iの品質最大レベルパラメータQi,maxおよび品質最小レベルパラメータQi,minを含むことを示す。ガイダンス情報218のパラメータは、共通の品質尺度222上の品質レベル範囲220を定義し、結果、クライアントデバイス80が、共通尺度222上の様々な領域に対して示される品質レベル範囲220の相互位置を使用して、第2のパラメータセット206が属する、すなわち、より高品質の領域(複数可)が位置する、プレセレクションアダプテーションセット208のROIが存在する場所に関して評価することが可能になる。クライアントは、例えば、ROIを、品質範囲220が最高である領域(複数可)214の照合、または品質範囲220がエリア216内のすべての領域214の範囲220の間で最小ではない領域(複数可)214の照合であると想定することができる。クライアントはさらには、品質に関して対応するパラメータセット206によって定義される、対応するプレセレクションアダプテーションセットによって提供される可能な表現の組み合わせの間のランキングを品質レベル範囲220から導出することさえできる。特に、品質ガイダンス情報218内の範囲情報219の純粋な存在はまた、部分的な局所品質レベルも共通尺度上で定義されるという、クライアントへのシグナルを表すことができる。すなわち、特定の領域iの品質レベルQj(i)は、領域iについて示される範囲内にある。その場合、クライアントは、ガイダンス情報218内の範囲情報の純粋な存在から、部分固有のアダプテーションセット200全体にわたって品質が相互に比較可能であると推定することができる。代替的に、品質ガイダンス情報218内の範囲情報の存在は、品質204が1つのセット202内、すなわち1つのアダプテーションセット200内でのみ順序スケーリングされるという状況を変えない。しかしながら、後者の場合、クライアントデバイス80は、範囲情報を使用して、共通尺度222上で定義された品質に品質レベル204をマッピングし得る。クライアントは、例えば、ピクチャ部分固有のアダプテーションセット200内の表現12の数が、その品質に関して、対応する領域のガイダンス情報218によって示される品質レベル範囲220にわたって均一に分布していると仮定することができ、したがって、ピクチャ部分固有のアダプテーションセット200の対応するアダプテーションセット202によって示される相互品質指標またはランキング値204をさらに使用することにより、クライアントデバイス80は、共通の品質尺度222上で特定のプレセレクションアダプテーションセットに寄与するすべてのビットストリームの品質を決定することができる。ちょうど概説した例を再開することとする。Qi,maxおよびQi,minを使用して、クライアントは、Q(i)を、Q(i)→(j-1)・(Qi,max-Qi,min)+Qi,minまたはQ(i)→(Q(i)-min{Q(i)})・(max{Q(i)}-min{Q(i)})・(Qi,max-Qi,min)+Qi,minにマッピングすることができる。結果として得られる品質は、すべてのjおよびiについて、通常互いに順序スケーリングされる。ガイダンス情報がなければ、クライアントは、各アダプテーションセットi 200内の表現jを個別にランク付けするのみであり得る。
【0101】
図14-1及び図14-2の上記の例では、ガイダンス情報218は、各領域のRwQR記述子内の構文要素max_quality_rankingおよびmin_quality_rankingを含んでいた。したがって、プレセレクションアダプテーションセットによって提供されるビットストリームの可能な組み合わせオプションの中から、クライアントは、例えば、ROIの外側の領域の品質がROI内の品質よりも高くなるようにするオプションのために、プレセレクションアダプテーションセットのROI特異性と競合するオプションを除外することができる。付加的にまたは代替的に、クライアントは、ユーザの閲覧速度、利用可能なネットワークダウンロード速度などの現在の状況に基づいて、例えば、いずれのオプションを選択すべきかを決定するために、ガイダンス情報を使用して、様々なオプションのROI関連領域とROIから独立した領域との間の品質オフセットをよりよく理解することができる。そして何よりも、クライアントは、特定のプレセレクションアダプテーションセットのROIがどこにあるかを推定し、それに応じて、いくつかのプレセレクションアダプテーションセットの中から、例えば現在のユーザのビューポートとROIが一致する利用可能なセットを選択することができる。
【0102】
図15-1及び図15-2の説明から導出されるさらなる実施形態は、マニフェストファイル24に関する以下の詳細に関係する。特に、図20に関して再び説明されているように、品質ガイダンス情報218は、実際には、ピクチャ部分固有のアダプテーションセット200のパラメータセット202内で示される領域jの品質レベルQ(j)が、図20の下半分に示されるように、共通の順序尺度222上で定義されるか、または、これらのパラメータセット202によって示される品質レベルQ(j)が別個の順序尺度224上で定義されるかを示す指示223を含むことができる。共通の順序尺度222で定義される場合、図20のタイル1のものなどの特定のパラメータセット202によって特定のピクチャ部分固有のアダプテーションセット内の表現について示される品質レベル204を序数で比較することができ、品質レベルは、指示218が属する同じプレセレクションアダプテーションセット206によって別の領域に割り当てられた別のピクチャ部分固有のアダプテーションセット200の別のパラメータセット202によって示される。これまでのところ、指示218は一種の「グローバリティ指標」である。別個の順序尺度で定義される他の事例において、品質レベル204は、これらの品質レベル204を含む、パラメータセット202が属するピクチャ部分固有のアダプテーションセット200内の表現の品質間の相互順序関係を示すが、グローバリティ指標218が属するプレセレクションアダプテーションセットによって異なる領域214に割り当てられた異なるピクチャ部分固有のアダプテーションセット200の品質レベル204は、互いに比較可能ではない、すなわち、いずれのビットストリームの品質が、対応する品質レベル204に基づいてより良好であるかは決定できない場合がある。すなわち、グローバリティが適用される場合、クライアントはすべてのjおよびiについてすべてのQ(i)を比較することができる。それらはグローバルに、相互に順序スケーリングされる。グローバリティがなければ、クライアントは、各アダプテーションセットi 200内の表現jを個別にランク付けするのみであり得る。次いで、クライアントは、例えば、プレセレクションアダプテーションセットのROIが、品質レベル204が最高である領域(複数可)214の照合、または品質レベル204がエリア216内のすべての領域214の品質レベル204の間で最小ではない領域(複数可)214の照合であると決定することができる。
【0103】
図19では、プレセレクションパラメータセット206の第2のパラメータセット206が、出力ピクチャエリア216の各領域214について、ここで領域iおよび参照されているアダプテーションセット200をそれぞれ代表する品質レベルQ’(i)によって例示される、それぞれの領域214の品質レベルヒントを示す1つまたは複数のパラメータを含み得ることを示す。それらは1つのパラメータセット、すなわち296において定義されているため、共通の尺度上で相互に定義される。しかしながら、ガイダンス情報218は、これまでのところ両方の指示を同時に制御する指示223と一致し得るか、または指示223の代わりに使用され得る、各領域iについての、それぞれの領域214,iの品質レベルヒント、および、それぞれの領域214に割り当てられたピクチャ部分固有のアダプテーションセット200の第1のパラメータセット202によって定義される品質レベル204が、それらの間で順序スケーリングされるように相互に共通の順序尺度上で定義されるか、または、レベルヒントQ’(i)、および、それぞれの領域iに割り当てられたピクチャ部分固有のアダプテーションセット200の第1のパラメータセット202によって定義される品質レベル204が、別個の順序尺度224上で定義されるかの指示を含むことができる。前者の場合、品質レベルQ’(i)がいずれにしても同じセット206内のそれらの定義によって相互に順序スケーリングされるため、すべての品質レベルQ’(i)およびQj(i)は実際には共通の順序尺度222上で定義される可能性がある。再び、クライアントは、Q’(i)’に基づいて、特定のアダプテーションセット208のROIがどこにあるかに関して導出することができ、指示223が適用される場合、クライアントはさらに、品質に関して個々の組み合わせオプションの理解を得ることができる。
【0104】
さらに別の実施形態によれば、ガイダンス情報2018は、223または218のないQ’(i)’のみを含む。さらにここでも、クライアントは特定のプレセレクションアダプテーションセット206のRIOを決定することができ、したがって、所望のビューポートに適合するプレセレクションアダプテーションセットを選択することができる。特に、そのようなquality_rankingパラメータQ’(i)によって実現される、割り当てられたピクチャ部分固有のアダプテーションセット200間の単なるランキングにより、クライアントデバイス80は、少なくとも、エリア216全体の全般的な品質勾配を正しく評価してROIを発見することができる。
【0105】
指示223は、視点が一致する、すなわち、ビデオピクチャエリア16のそれぞれの部分14がそこから捕捉され、例えば、それぞれのパラメータセット202内で示される視点が一致する、すべてのピクチャ部分固有のアダプテーションセット200のすべての品質レベル204について共通の順序尺度222をシグナリングするように解釈することができることに留意されたい。これにより、以下が明確になる。すなわち、図15-1及び図15-2に関して上述したように、グローバリティ指標223は、プレセレクションアダプテーションセットに関するパラメータセット206内に存在する必要はない。グローバリティ指標223は、マニフェストファイル24または他の場所に位置決めされ得る。
【0106】
品質ガイダンス情報223がパラメータセット206の外側のマニフェストファイル24内に代替的に位置決めされ得る後者の態様は、図18に破線で示されている。
【0107】
図19の説明の代替として、特定のパラメータセット206が関係する各領域214の品質レベル範囲220の指示は、ピクチャ部分固有のアダプテーションセットに関係するパラメータセット202内で示される品質レベル、すなわち品質レベル204の間の単なる品質レベルオフセットの指示によって置き換えることができることに留意されたい。したがって、追加の品質ガイダンス218は、次いで、相互に比較可能にするために品質レベル204に適用される相対オフセットを示すことになる。例えば、品質ガイダンス218は、共通の順序尺度222上で定義されるように、他のタイルの品質レベル204と比較される前に、タイル1の品質レベルが特定の値だけ増加される必要があることを示すことができる。セット202によって示される品質Q(i)間のオフセットΔQmnに関するそのような情報218を使用して、クライアントは、特定のセットi200のQ(i)をQ(i)→Q(i)-ΔQikにマッピングして、それらを特定のセットk 200のQ(k)と比較することができる。結果として得られる品質は、すべてのjおよびiについて、通常互いに順序スケーリングされる。ガイダンス情報がなければ、クライアントは、各アダプテーションセットi 200内の表現jを個別にランク付けするのみであり得る。
【0108】
すでに上で述べたように、エクストラクタ20の存在は、図18図20に関して説明された利点を達成するために必須ではない。ただし、存在する場合、SphereRegionQualityRankingBoxなどのファイルフォーマット記述子/ボックスを使用して、上記の情報をマニフェストファイルに伝達することができる。特に、エクストラクタは、ビデオピクチャエリア216の部分214の異なる部分に各々関連付けられたビットストリームのサブセットのうち40などのコンパイル済みビットストリームのコンパイルを示し、各部分に対して、ビットストリームの関連付けられるサブセットの1つのビットストリームを選択する自由が残っており、ファイルフォーマット記述子は、ビデオピクチャエリア216の各部分214の1つまたは複数のパラメータを含み、このパラメータは、それぞれの部分214に割り当てられた表現のサブセットの表現12(ここではトラック)においてシグナリングされる品質レベルをカバーする品質レベル範囲220、または、表現の異なるサブセットの表現12の品質レベル間の品質オフセットを示し、および/または、表現において示される品質レベルが、異なるサブセットの異なる表現にわたって順序スケーリングされるように共通の順序尺度上で定義されるか、または、表現によって示される品質レベルが、サブセットごとに別個の順序尺度224上で定義されるかの指示を含む。言い換えれば、図18の1つのセット200内のすべてのビットストリーム12は、そのボックスのうちの1つの中に品質値を有し得る。同様に、ファイルフォーマット記述子は、付加的にまたは代替的に、出力ピクチャエリア216の各部分214について、それぞれの部分の品質レベルヒント、およびそれぞれの部分に関連付けられたサブセットに含まれる表現内に示される品質レベルが、順序尺度上で定義されるように共通の順序尺度上で定義されるか、または、それぞれの部分と関連付けられたサブセットに含まれる表現内に示される品質レベルヒントおよび品質レベル204が、別個の順序尺度224上で定義され、および/もしくは、出力ピクチャエリア216の部分214について、部分214間の品質ランキングを示す1つもしくは複数のパラメータを含むかの指示を示す1つまたは複数のパラメータを含むことができる。上記のうちの1つがまとめられ、特定のエクストラクタ20によって参照されると、ビットストリームの品質が互いにどのように関係するか、および/またはそのようなダウンロードされたビデオストリームのROIがどこにあるかという疑問が生じ得る。この目的のために、エクストラクタが属する対応するROIを提示することを所望するクライアントによってダウンロードする準備ができているファイルフォーマットボックスまたは記述子を費やすことができる。上記のファイルフォーマットボックスは、MPDについて218によって考えられるのと同様の情報を有する。それは、様々なサブセット200のビットストリームの品質が他とどのように関係しているか、および、より高い品質を有する部分214がエリア216内のどこにあるかを示し、結果、ROIがどこにあるかを示す。さらに言い換えれば、特定のROIに関連付けられたエクストラクタ20は、参照により、領域214あたり表現の1つのサブセット200を収集する。後に、実際のダウンロード時に、エクストラクタは、各サブセット200および関連する領域ごとに1つ、それぞれのサブセット200から選択されている表現とともにファイルを形成する。後者が参照するビットストリーム12は、ファイルのトラックを形成する。それらはセット32からのものである。MPDの品質204と同様に、各々が中に品質値を有する。上記のFF記述子が追加され、例えば、異なる領域214に関連する異なるサブセット200から生じる異なるトラックに存在するこれらのすべての品質値が、共通の尺度222もしくは別個の尺度224上で定義されるか、または共通の尺度222上の範囲220を示すかを示す。FF記述子は、品質グローバリティを示すFF記述子が属するエクストラクタ20に関連付けられたROIに関心があるクライアントによってダウンロードされる構成済みビデオストリームの初期化セグメントの一部であり得、ファイルは、言及されているように、セット32の参照されるトラック12、およびエクストラクタ20を有する。参照される各トラックは、例えばローカルFFボックス/記述子内にその品質値を有し、本明細書で概説するFF記述子/ボックスは、ファイルの設定を取得するためにクライアントによって最初にダウンロードされる初期化セグメントの一部であり得る。
【0109】
完全を期すために、各ピクチャ部分固有のアダプテーションセット200について、対応する第1のパラメータセット202は、それぞれのピクチャ部分固有のアダプテーションセットの表現に符号化されるピクチャ部分14に関する視野情報を定義することができることに言及すべきである。次に、第2のパラメータセット206は、領域214の照合に関する視野情報、すなわち、すべての領域214のオーバーレイから生じる視野を定義することができる。図18に示すように、それぞれのプレセレクションアダプテーションセット208の3つ以上の第2のパラメータセット206がある場合、各々が、その領域214の照合に関して視野情報を定義することができ、照合は上記少なくとも2つの第2のパラメータセットの間で一致する。すなわち、出力ピクチャエリア216の周囲は、これらのセット208について一致し得る。ただし、プレセレクションアダプテーションセット206は、それらのパラメータセット206が領域214の中で最高品質の領域を定義し、照合内の位置がパラメータセット206にわたって変化するという点で異なり得る。したがって、最高品質の領域は、様々なアダプテーションセット208が関連付けられているROIに対応することになる。
【0110】
説明されているように、クライアントデバイスは、マニフェストファイル24を検査し、品質レベル範囲および/または指示に基づいて、サーバからビデオを適応的にストリーミングする際のストリーミング戦略を変更することができる。所望されるビューポートに関してプレセレクションアダプテーションセットをランク付けするために、品質レベル、品質レベル範囲、品質レベルヒント、および/または指示を使用することができる。
【0111】
図17に関して説明したように、プレセレクションアダプテーションセットのオプションを定義するビットストリームの集合は、代替的に、マニフェストファイル内の1つのアダプテーションセットにグループ化された異なる表現として定義されてもよい。これにより、領域214内のビデオピクチャエリア216の下位区分に一致する表現のセットを定義する領域ごとにコンパイルされているアダプテーションセットのパラメータセットを含むマニフェストファイルが得られ、表現は、各領域に領域固有の品質レベルを割り当てる異なる品質レベルタプルにおいてビデオピクチャエリアの領域214を符号化されている。したがって、表現はすべて、エリア216を個別にカバーする。それらは、様々な領域に割り当てられた品質に関連して異なる。パラメータセットは、このとき、図17のRWQRiによって示されるすべての領域のアダプテーションセット品質レベル指示、および、@ qualityRankingによって示される各表現について表現固有の品質レベル指示を含む。各表現について、図17の括弧内に示されているそれぞれの表現の品質レベルタプルは、アダプテーションセット品質レベル指示と、それぞれの表現について表現固有の品質レベル指示との組み合わせから、これらを加算することなどによって導出可能である。クライアントデバイスは、マニフェストファイルを検査し、サーバからビデオを適応的にストリーミングするためのストリーミング戦略において表現の品質レベルタプルを使用することができる。所望されるビューポートに関して表現をランク付けするために、表現の品質レベルタプルを使用することができる。
【0112】
いくつかの態様を装置の文脈で説明してきたが、これらの態様は、対応する方法の説明も表していることは明らかであり、方法において、ブロックまたはデバイスは、方法ステップまたは方法ステップの特徴に対応する。同様に、方法ステップの文脈で説明されている態様は、対応する装置の対応するブロックまたは項目または特徴の説明をも表す。方法ステップの一部または全部は、例えば、マイクロプロセッサ、プログラム可能なコンピュータまたは電子回路のようなハードウェア装置によって(またはそれを使用して)実行されてもよい。いくつかの実施形態では、最も重要な方法ステップの1つまたは複数は、そのような装置によって実行されてもよい。
【0113】
データ集合、ビデオストリーム、マニフェストファイル、記述子などの本発明のデータ信号は、デジタル記憶媒体に格納することができ、または、インターネットなどの、無線伝送媒体もしくは有線伝送媒体のような伝送媒体上で送信することができる。
【0114】
特定の実装要件に応じて、本発明の実施形態は、ハードウェアもしくはソフトウェアにおいて実装することができる。実装態様は、電子的に読み取り可能な制御信号が記憶された、例えばフロッピーディスク、DVD、Blu-Ray、CD、ROM、PROM、EPROM、EEPROMまたはフラッシュメモリなどのデジタル記憶媒体を使用して実行することができ、これらはそれぞれの方法が実行されるようにプログラム可能なコンピュータシステムと協働する(または協働することができる)。したがって、デジタル記憶媒体はコンピュータ可読であってもよい。
【0115】
本発明によるいくつかの実施形態は、本明細書に記載の方法の1つが実行されるように、プログラム可能なコンピュータシステムと協働することができる電子可読制御信号を有するデータキャリアを備える。
【0116】
一般に、本発明の実施形態は、プログラムコードを有するコンピュータプログラム製品として実装することができ、プログラムコードは、コンピュータプログラム製品がコンピュータ上で動作するときに、方法の1つを実行するように動作する。プログラムコードは、例えば、機械可読キャリアに格納することができる。
【0117】
他の実施形態は、機械可読キャリアに格納される、本明細書に記載の方法の1つを実行するためのコンピュータプログラムを含む。
【0118】
換言すれば、それゆえ、本発明の方法の実施形態は、コンピュータプログラムがコンピュータ上で実行されるときに、本明細書に記載の方法の1つを実行するためのプログラムコードを有するコンピュータプログラムである。
【0119】
したがって、本発明の方法のさらなる実施形態は、本明細書に記載の方法のうちの1つを実行するためのコンピュータプログラムを記録されているデータキャリア(またはデジタル記憶媒体もしくはコンピュータ可読媒体)である。データキャリア、デジタル記憶媒体または記録媒体は、典型的には有形かつ/または非一時的である。
【0120】
したがって、本発明の方法のさらなる実施形態は、本明細書に記載の方法のうちの1つを実行するためのコンピュータプログラムを表すデータストリームまたは一連の信号である。データストリームまたは一連の信号は、例えば、データ通信接続を介して、例えば、インターネットを介して転送されるように構成することができる。
【0121】
さらなる実施形態は、本明細書に記載の方法のうちの1つを実行するように構成または適合される処理手段、例えばコンピュータまたはプログラマブル論理デバイスを含む。
【0122】
さらなる実施形態は、本明細書に記載の方法の1つを実行するためのコンピュータプログラムをインストールされているコンピュータを含む。
【0123】
本発明によるさらなる実施形態は、本明細書で説明される方法の1つを実行するためのコンピュータプログラムを受信機に(例えば、電子的にまたは光学的に)転送するように構成された装置またはシステムを含む。受信機は、例えば、コンピュータ、モバイルデバイス、メモリデバイスなどであってもよい。この装置またはシステムは、例えば、コンピュータプログラムを受信機に転送するためのファイルサーバを含むことができる。
【0124】
いくつかの実施形態では、プログラマブル論理デバイス(例えば、フィールド・プログラマブル・ゲート・アレイ)を使用して、本明細書に記載の方法の機能の一部または全部を実行することができる。いくつかの実施形態では、フィールド・プログラマブル・ゲート・アレイは、本明細書で説明する方法の1つを実行するためにマイクロプロセッサと協働することができる。一般に、これらの方法は、好ましくは、任意のハードウェア装置によって実行される。
【0125】
本明細書に記載の装置は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータとの組み合わせを使用して実装することができる。
【0126】
本明細書に記載の装置、または本明細書に記載の装置の任意の構成要素は、少なくとも部分的にハードウェアおよび/またはソフトウェアにおいて実装されてもよい。
【0127】
本明細書に記載の方法は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータとの組み合わせを使用して実施することができる。
【0128】
本明細書に記載の方法、または本明細書に記載の装置の任意の構成要素は、少なくとも部分的にハードウェアおよび/またはソフトウェアによって実施されてもよい。
【0129】
上述の実施形態は、本発明の原理の例示にすぎない。当業者には、本明細書に記載された構成および詳細の修正および変形が明らかになることは理解されたい。したがって、本発明は添付の特許請求の範囲によってのみ限定され、本明細書の実施形態の記述および説明によって示される特定の詳細によっては限定されないことが意図される。
【0130】
(参照文献)
[1]NIST,“ADVANCED ENCRYPTION STANDARD (AES)”, 2001, online: http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.197.pdf
[2]NIST, “Recommendation for Block 2001 Edition Cipher Modes of Operation”, NIST Special Publication 800-38A 2001 Edition, online: http://dx.doi.org/10.6028/NIST.SP.800-38A
[3]ISO/IEC 23001-7:2016, Information technology -- MPEG systems technologies -- Part 7: Common encryption in ISO base media file format files
[4]ISO/IEC 14496-12:2015, Information technology -- Coding of audio-visual objects -- Part 12: ISO base media file format
[5]ISO/IEC 14496-15:2017, Information technology -- Coding of audio-visual objects -- Part 15: Carriage of network abstraction layer (NAL) unit structured video in the ISO base media file format
[6]ISO/IEC 23008-2:2013, Information technology -- High efficiency coding and media delivery in heterogeneous environments -- Part 2: High efficiency video coding
[7]Byeongdoo Choi, Ye-Kui Wang, Miska M. Hannuksela, Youngkwon Lim (editors), “OMAF DIS text with updates based on Berlin OMAF AHG meeting agreements”, m40849, 2017-06-16
[8]ISO/IEC 23009-1:2014, Information technology -- Dynamic adaptive streaming over HTTP (DASH) -- Part 1: Media presentation description and segment formats
図1a
図1b
図2
図3
図4
図5a
図5b
図6
図7
図8
図9
図10
図11
図12
図13
図14-1】
図14-2】
図15-1】
図15-2】
図16
図17
図18
図19
図20