(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024123203
(43)【公開日】2024-09-10
(54)【発明の名称】ビットストリームマージ
(51)【国際特許分類】
H04N 19/70 20140101AFI20240903BHJP
【FI】
H04N19/70
【審査請求】有
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2024102170
(22)【出願日】2024-06-25
(62)【分割の表示】P 2023168401の分割
【原出願日】2019-09-12
(31)【優先権主張番号】18194348.1
(32)【優先日】2018-09-13
(33)【優先権主張国・地域又は機関】EP
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Blu-ray
(71)【出願人】
【識別番号】500341779
【氏名又は名称】フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン
(74)【代理人】
【識別番号】110002952
【氏名又は名称】弁理士法人鷲田国際特許事務所
(72)【発明者】
【氏名】スク―ピン,ローベルト
(72)【発明者】
【氏名】サンチェス デ ラ フェンテ,ヤゴ
(72)【発明者】
【氏名】ヘルグ,コーネリウス
(72)【発明者】
【氏名】シエル,トーマス
(72)【発明者】
【氏名】ズーリング,カルステン
(72)【発明者】
【氏名】ヴィ―ガント,トーマス
(57)【要約】 (修正有)
【課題】映像ビットストリームを効率的にマージするためのビデオコーデックを提供する。
【解決手段】映像符号器(2)は、複数の符号化パラメータ(20、22、26、30)を記述する符号化されたパラメータ情報、符号化された映像コンテンツ情報ならびに符号化された映像表現(12)を別の符号化された映像表現とマージできるか否かおよび/またはどのようにしてマージできるかを指示する1つまたは複数のマージ識別子を含む映像ストリーム(12)を提供する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
複数の符号化された映像表現に基づいてマージされた映像表現を提供するための映像マージャであって、
前記映像マージャが、複数の符号化パラメータを記述する符号化されたパラメータ情報、符号化された映像コンテンツ情報、複数の所定の機能レベルの中の機能レベルを有する映像復号器との映像ストリームの互換性を示す、レベル情報、および、前記複数の所定の機能レベルのうちの1つの分率を示す、分率レベル情報を含む複数の映像ストリームを受け取るように構成され、
前記映像マージャが、前記レベル情報および前記分率レベル情報に依存して2つ以上の映像ストリームをマージするように構成される、映像マージャ。
【請求項2】
前記分率レベル情報は、比率値またはパーセンテージ値を含む、請求項1に記載の映像マージャ。
【請求項3】
前記分率レベル情報は、1秒あたりの最大許容ルマサンプルの量の分率を示す、請求項1に記載の映像マージャ。
【請求項4】
前記分率レベル情報は、最大画像サイズの分率を示す、請求項1に記載の映像マージャ。
【請求項5】
前記分率レベル情報は、最大ビットレートの分率を示す、請求項1に記載の映像マージャ。
【請求項6】
前記分率レベル情報は、バッファ占有量の分率を示す、請求項1に記載の映像マージャ。
【請求項7】
前記分率レベル情報は、最大タイル数の分率を示す、請求項1に記載の映像マージャ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像の符号化/復号に関する。
【背景技術】
【0002】
映像合成は、複数の映像ソースの合成がユーザに提示される多数の用途で使用される。一般的な例が、例えば、広告やユーザインターフェースのための、オーバーレイの映像コンテンツとのピクチャ・イン・ピクチャ(picture-in-picture(PiP))合成および融合である。画素領域でのそのような合成を生成するには、計算が複雑であり、単一のハードウェア復号器またはそれ以外の限られたリソースを備えたデバイス上では実行不可能でさえあり得る入力映像ビットストリームの並列復号が必要である。例えば、現在のIPTVシステム設計では、対応するセット・トップ・ボックスが合成を実行し、それらの複雑さ、分配および限られた寿命のために主要なサービスコスト要因である。これらのコスト要因の削減が、セット・トップ・ボックスの機能を仮想化しようとする継続的な努力、例えば、ユーザインターフェース生成のクラウドリソースへのシフトの動機になっている。そのようなアプローチでは、映像復号器のみ、いわゆるゼロクライアントが、顧客宅内に残る唯一のハードウェアである。そのようなシステム設計の最先端技術は、トランスコーディングに基づく、すなわち、復号、画素領域の合成、および搬送前または搬送中の再符号化の、その最も単純な形での合成である。完全な復号および符号化サイクルから作業負荷を削減するために、画素領域ではなく変換係数領域での操作がPiP合成についてまず提案された。それ以来、個々の合成ステップを融合または短縮し、それらを現在のビデオコーデックに適用するための多数の技法が提案された。しかしながら、一般的な合成のためのトランスコーディングに基づくアプローチは依然として計算が複雑であり、システムのスケーラビリティを損なう。トランスコーディングのアプローチによっては、そのような合成は、レート歪み(rate distortion(RD))性能に影響を及ぼす可能性もある。
【0003】
加えて、タイル上に構築される広範な用途が存在し、タイルは、隣接するタイルから独立して符号化された映像平面の空間サブセットである。360°ビデオ用のタイルベースのストリーミングシステムは、360°ビデオを、様々な解像度のサブビットストリームに符号化され、現在のユーザの見る向きに応じてクライアント側で単一のビットストリームにマージされるタイルに分割することによって機能する。サブビットストリームのマージを伴う別の用途は、例えば、従来の映像コンテンツとバナー広告との結合である。さらに、サブビットストリームの再結合は、複数のユーザが個々の映像ストリームを、ストリームが最終的にマージされる受信機に送信する、ビデオ会議システムにおいても重要な部分になり得る。さらに、映像がタイルに分割され、タイル符号化が別々の独立したインスタンスに分配されるタイルベースのクラウド符号化システムは、結果として得られるタイルビットストリームが単一のビットストリームにマージして戻される前のフェイルセーフチェックに依拠する。これらすべての用途において、既知の適合性点を用いた単一の映像復号器での復号を可能にするためにストリームがマージされる。ここでのマージとは、ビットストリームまたは画素値の再構築のエントロピー符号化されたデータの完全な復号操作および符号化操作を必要としない軽量のビットストリーム書き換えを意味する。しかしながら、ビットストリームマージの形成の成功、すなわち、結果として得られるマージされたビットストリームの適合性を保証するために使用される技法は、非常に異なる適用シナリオに由来するものであった。
【0004】
例えば、従来(レガシー)のコーデックは、符号器が、画像間のインター予測を、タイルまたは画像の境界内に限定されるように、すなわち、同じタイルに属さないか、または画像境界の外側に位置するサンプル値または構文要素値を使用せずに制約する、動き制約タイルセット(Motion Constrained Tile Set(MCTS))と呼ばれる技法をサポートする。この技術の起源は、関心領域(Region of Interest(ROI))復号であり、ROI復号では復号器は、解像不能な依存関係に遭遇し、ドリフトを回避することなく、ビットストリームおよび符号化画像の特定のサブセクションのみを復号することができる。このコンテキストでの別の最先端技術が、適用されたビットストリーム構造、すなわち、画像の順序およびインター予測の参照構造の指示を与える、ストラクチャ・オブ・ピクチャ(Structure of Pictures(SOP))SEIメッセージである。この情報は、2つのランダム・アクセス・ポイント(Random Access Point(RAP))間の画像ごとに、ピクチャ・オーダ・カウント(Picture Order Count(POC))値、アクティブなシーケンス・パラメータ・セット(Sequence Parameter Set(SPS))識別子、アクティブなSPSへの参照画像セット(Reference Picture Set(RPS))インデックスを要約することによって提供される。この情報に基づき、トランスコーダ、ミドルボックスまたはメディア対応ネットワークエンティティ(media-aware network entity(MANE))またはメディアプレーヤが、ビットレートの調整、コマ落とし、早送りなどの、ビットストリームの操作または変更するのを支援できるビットストリーム構造を識別することができる。
【0005】
上記の例示的な通知の技法の両方が、簡単ではない構文変更または完全なトランスコーディングさえもなしでサブビットストリームの軽量マージを実行できるか否かを理解する際に不可欠であるが、これらは決して十分ではない。より詳細には、このコンテキストにおける軽量マージは、わずかな書き換え操作のみでソースビットストリームのNALユニットをインターリーブして、すなわち、一緒に使用されるパラメータセットを新しい画像サイズおよびタイル構造と共に記述して、マージされるべきすべてのビットストリームが別々のタイル領域に位置するようにすることを特徴とする。マージの複雑さの次のレベルは、理想的には、スライスヘッダ内の可変長符号を変更することのないスライスヘッダ要素のわずかな書き換えによって構成される。マージの複雑さのさらなるレベルが存在し、これらのレベルは、例えば、スライスデータに対してエントロピー符号化を再実行して、エントロピー符号化されているが、映像の復号および符号化を伴う完全なトランスコードと比較して有益であり、むしろ軽量とみなすことができる画素値の再構築を必要とせずに変更できる特定の構文要素を変更するためのものであり、軽量とはみなされない。
【0006】
マージされたビットストリームでは、すべてのスライスが同じパラメータセットを参照する必要がある。元のビットストリームのパラメータセットが大幅に異なる設定を使用する場合、パラメータセットの構文要素の多くがスライスヘッダおよびスライスペイロードの構文にさらなる影響を及ぼし、その影響の程度が異なるため、軽量マージが不可能な場合がある。構文要素が含まれる復号プロセスの下流に行くほど、マージ/書き換えがより複雑になる。(パラメータセットおよびその他の構造の)構文依存関係のいくつかの注目すべき一般的なカテゴリを以下のように区別することができる。
A.構文の存在指示
B.値計算の依存関係
C.スライスペイロードの符号化ツール制御
a.復号プロセスの初期に使用される構文(係数符号隠蔽、ブロック分割制限など)
b.復号プロセスの後期に使用される構文(動き補正(motion comp)、ループフィルタなど)または一般的な復号プロセス制御(参照画像、ビットストリーム順序)
D.ソース・フォーマット・パラメータ
【0007】
カテゴリAでは、パラメータセットは、様々なツールの多数の存在フラグ(dependent_slice_segments_enabled_flagやoutput_flag_present_flagなど)を含む。そのようなフラグに違いがある場合、フラグを結合パラメータセットにおいて有効であるように設定することができ、マージ前に構文要素を含まなかったビットストリーム内のスライスのマージされたスライスヘッダに、デフォルト値を明示的に書き込むことができ、すなわち、この場合、マージは、パラメータセットおよびスライスヘッダの構文への変更を必要とする。
【0008】
カテゴリBでは、パラメータセットの構文の通知された値が、計算において、他のパラメータセットまたはスライスヘッダのパラメータと一緒に使用されてもよく、例えば、HEVCでは、スライスのスライス量子化パラメータ(quantization parameter(QP))が、スライスの残差信号の変換係数の量子化の粗さを制御するために使用される。ビットストリームにおけるスライスQPの通知(SliceQpY)は、以下のようにピクチャ・パラメータ・セット(picture parameter set(PPS))レベルでのQP通知に依存する。
SliceQpY=26+init_qp_minus26(PPSからの)+slice_qp_delta(スライスヘッダからの)
【0009】
(マージされた)符号化ビデオ画像内のすべてのスライスが同じアクティブ化されたPPSを参照する必要があるため、マージされるべきである個々のストリームのPPSのinit_qp_minus26の違いが、init_qp_minus26の新しい共通の値を反映するようなスライスヘッダの調整を必要とする。すなわち、この場合、マージは、カテゴリ1の場合と同様に、パラメータセットおよびスライスヘッダの構文への変更を必要とする。
【0010】
カテゴリCでは、さらなるパラメータセットの構文要素が、スライスペイロードのビットストリーム構造に影響を及ぼす符号化ツールを制御する。サブカテゴリC.aとサブカテゴリC.bとは、復号プロセスのどのくらい下流に構文要素が含まれるか、および(これに関連して)これらの構文要素への変更と関連付けられる複雑さ、すなわち、構文要素がエントロピー符号化と画素レベル再構築との間のどこに含まれるかに応じて区別することができる。
【0011】
例えば、カテゴリC.aの1つの要素は、符号化された変換係数の符号データの導出を制御するsign_data_hiding_enabled_flagである。符号データ隠蔽を容易に非アクティブ化することができ、対応する推測される符号データがスライスペイロードに明示的に書き込まれる。ただし、このカテゴリでのスライスペイロードへのそのような変更では、画素ごとのマージ映像を再度符号化する前に完全な復号によって画素領域に進む必要がない。別の例は、推測されるブロック分割の決定であり、または推測される値をビットストリームに容易に書き込むことができる任意の他の構文である。すなわち、この場合、マージは、パラメータセット、スライスヘッダの構文、およびエントロピー復号/符号化を必要とするスライスペイロードへの変更を必要とする。
【0012】
しかしながら、サブカテゴリC.bは、復号のずっと下流のプロセスに関連する構文要素を必要とし、したがって、複雑な復号プロセスの多くが、いずれにせよ、残りの復号ステップを回避することが実装上および計算上望ましくない方法で実行される必要がある。例えば、動き補償制約「時間的動き制約タイルセットSEI(ストラクチャ・オブ・ピクチャ情報)メッセージ」または「SEIメッセージ」などの様々な復号プロセス関連の構文に接続された構文要素の違いにより画素レベルのトランスコーディングが回避できなくなる。サブカテゴリC.aとは対照的に、完全な画素レベルのトランスコーディングなしでは変更できない方法でスライスペイロードに影響を及ぼす符号器の決定が多数ある。
【0013】
カテゴリDでは、異なる値によりサブビットストリームをマージするために画素レベルのトランスコーディングを不可避とするパラメータセットの構文要素(chroma_format_idcによって指示されるクロマサブサンプリングなど)がある。すなわち、この場合、マージは、完全な復号、画素レベルのマージおよび完全な符号化のプロセスを必要とする。
【0014】
上記のリストは決して網羅的ではないが、広範なパラメータが様々な方法でサブビットストリームの共通のビットストリームへのマージのメリットに影響を及ぼすこと、およびこれらのパラメータを追跡および解析することに手間がかかることが明らかになる。
【発明の概要】
【発明が解決しようとする課題】
【0015】
本発明の目的は、映像ビットストリームを効率的にマージするためのビデオコーデックを提供することにある。
【課題を解決するための手段】
【0016】
この目的は、本出願の特許請求の範囲の主題によって達成される。
【0017】
本発明の基礎をなす基本的な考え方は、複数の映像ストリームのマージの改善が1つまたは複数のマージ識別子を含めることによって達成されることである。このアプローチにより、計算リソースの負荷を軽減するとともに、マージプロセスを加速することが可能になる。
【0018】
本発明の実施形態によれば、映像符号器は、複数の符号化パラメータを記述する符号化されたパラメータ情報、符号化された映像コンテンツ情報、すなわち、パラメータ情報によって定義された符号化パラメータを使用して符号化された情報、ならびに符号化された映像表現を別の符号化された映像表現とマージできるか否か、および/または、どのようにして、例えば、どの複雑さを使用して、マージできるかを指示する1つまたは複数のマージ識別子を含む映像ストリームを提供するように構成される。どの複雑さを使用するかは、パラメータ情報によって定義されたパラメータ値に基づいて決定され得る。マージ識別子は、2つの異なる符号化された映像表現を所定の複雑さを使用してマージすることができるようにするために2つの異なる符号化された映像表現において等しくなければならない、複数の符号化パラメータの連結であり得る。加えて、マージ識別子は、2つの異なる符号化された映像表現を所定の複雑さを使用してマージできるようにするために2つの異なる符号化された映像表現において等しくなければならない、複数の符号化パラメータの連結のハッシュ値であり得る。
【0019】
本発明の実施形態によれば、マージ識別子は、パラメータセットの書き換えによりマージするか、またはパラメータセットおよびスライスヘッダの書き換えによりマージするか、またはパラメータセット、スライスヘッダ、スライスペイロードの書き換えによりマージするマージ手順または、一般的に、「適切な」マージ方法の複雑さを表すマージ識別子タイプを指示することができ、マージ識別子は、マージ識別子タイプに関連付けられており、マージ識別子タイプに関連付けられたマージ識別子は、2つの異なる符号化された映像表現が、マージ識別子タイプによって表されるマージ手順の複雑さを使用してマージ可能であるように、2つの異なる符号化された映像表現において等しくなければならない符号化パラメータを含む。マージ識別子タイプの値はマージプロセスを指示することができ、映像符号器は、マージ識別子タイプの以下の値、すなわち、パラメータセットの書き換えによるマージプロセスを表すマージ識別子タイプの第1の値、パラメータセットおよびスライスヘッダの書き換えによるマージプロセスを表すマージ識別子タイプの第2の値、ならびにパラメータセット、スライスヘッダ、およびスライスペイロードの書き換えによるマージプロセスを表すマージ識別子タイプの第3の値、のうちの少なくとも2つを切り替えるように構成される。
【0020】
本発明の実施形態によれば、複数のマージ識別子がマージ手順の異なる複雑さと関連付けられており、例えば、各識別子は、マージ手順のパラメータセット/ハッシュおよびタイプを指示する。符号器は、マージ識別子の提供のために評価される符号化パラメータが映像シーケンスのすべてのユニットにおいて同一であるか否かをチェックし、チェックに依存してマージ識別子を提供するように構成され得る。
【0021】
本発明の実施形態によれば、複数の符号化パラメータは、完全な画素復号によるマージよりも複雑さが少ないマージを可能にするために、異なる映像ストリーム、すなわち、符号化された映像表現において同一でなければならないマージ関連パラメータを含むことができ、映像符号器は、マージ関連パラメータに基づいて1つまたは複数のマージ識別子を提供するように構成され、すなわち、2つの符号化された映像表現間に共通のパラメータがない場合には、完全な画素復号が実行され、すなわち、マージプロセスの複雑さを軽減する可能性がない。マージ関連パラメータは、以下のパラメータ:タイル境界における動き制約、例えば、動き制約タイルセットの補助強化情報(motion constrain tail set supplemental enhancement information(MCTS SEI))を記述するパラメータ、画像群(group of picture(GOP))構造、すなわち、符号化順序の表示順序へのマッピング、ランダム・アクセス・ポイント指示、例えば、SOP:ストラクチャ・オブ・ピクチャを用いた時間的階層化、SEIに関する情報、クロマ符号化フォーマットを記述するパラメータおよびルマ符号化フォーマットを記述するパラメータ、例えば、少なくともクロマフォーマットおよびビット深度のルマ/クロマを含むセット、高度動きベクトル予測を記述するパラメータ、サンプル適応オフセットを記述するパラメータ、時間的動きベクトル予測を記述するパラメータ、ならびにループフィルタを記述するパラメータおよびその他の符号化パラメータ、のうちの1つまたは複数または全部を含み、すなわち、パラメータセット(参照画像セット、基準量子化パラメータなどを含む)、スライスヘッダ、スライスペイロードが、2つの符号化された映像表現をマージするために書き換えられる。
【0022】
本発明の実施形態によれば、マージ手順の第1の複雑さと関連付けられたマージ識別子が、第1の複雑さよりも高いマージ手順の第2の複雑さと関連付けられたマージパラメータが、第1の符号化パラメータセットの真のサブセットである第2の符号化パラメータセットに基づいて決定されるときに、第1の符号化パラメータセットに基づいて決定され得る。第2の複雑さよりも高いマージ手順の第3の複雑さと関連付けられたマージ識別子が、第2の符号化パラメータセットの真のサブセットである第3の符号化パラメータセットに基づいて決定され得る。映像符号器は、マージ手順の第1の複雑さと関連付けられたマージ識別子を、符号化パラメータセット、例えば、スライスヘッダおよびスライスペイロードを不変のままにして複数のスライスに適用可能なパラメータセットを変更するだけの映像ストリームのマージ、すなわち、パラメータセットの書き換え(のみ)によるマージプロセスを可能にするために2つの異なる映像ストリーム、例えば、符号化された映像表現において等しくなければならない第1のセットに基づいて決定するように構成される。映像符号器は、マージ手順の第2の複雑さと関連付けられたマージ識別子を、符号化パラメータセット、例えば、スライスペイロードを不変のままにして複数のスライスに適用可能なパラメータセットを変更し、スライスヘッダも変更する映像ストリームのマージ、すなわち、パラメータセットおよびスライスヘッダの書き換えによるマージプロセスを可能にするために2つの異なる映像ストリーム、例えば、符号化された映像表現において等しくなければならない第2のセットに基づいて決定するように構成され得る。映像符号器は、マージ手順の第3の複雑さと関連付けられたマージ識別子を、符号化パラメータセット、例えば、複数のスライスに適用可能なパラメータセットを変更し、スライスヘッダおよびスライスペイロードも変更するが、完全な画素復号および画素再符号化を実行されない映像ストリームのマージ、すなわち、パラメータセット、スライスヘッダ、およびスライスペイロードの書き換えによるマージプロセスを可能にするために2つの異なる映像ストリーム、例えば、符号化された映像表現において等しくなければならない第3のセットに基づいて決定するように構成され得る。
【0023】
本発明の実施形態によれば、提供された複数の符号化された映像表現、例えば、映像ストリームに基づいてマージされた映像表現を提供するための映像マージャ、映像マージャは、複数の符号化パラメータを記述する符号化されたパラメータ情報、符号化された映像コンテンツ情報、すなわち、パラメータ情報によって定義された符号化パラメータを使用して符号化された情報、ならびに符号化された映像表現を別の符号化された映像表現とマージできるか否か、および/または、どのようにして、例えば、どの複雑さを使用して、マージできるかを指示する1つまたは複数のマージ識別子を含む複数の映像ストリームを受け取るように構成され、映像マージャは、マージ方法の使用法、例えば、マージタイプ、マージプロセスに関して、マージ識別子に依存して、すなわち、異なる映像ストリームのマージ識別子の比較に依存して決定するように構成される。映像マージャは、マージ識別子に依存して、複数のマージ方法の中から、マージ方法を選択するように構成される。映像マージャは、以下のマージ方法、すなわち、1つまたは複数のマージ識別子に依存した異なる複雑さを有するマージ方法である、スライスヘッダおよびスライスペイロードを不変のままにして複数のスライスに適用可能なパラメータセットを変更するだけの映像ストリームのマージである、第1のマージ方法、スライスペイロードを不変のままにして複数のスライスに適用可能なパラメータセットを変更し、スライスヘッダも変更する映像ストリームのマージである、第2のマージ方法、ならびに複数のスライスに適用可能なパラメータセットを変更し、スライスヘッダおよびスライスペイロードも変更するが、完全な画素復号および画素再符号化を実行されない映像ストリームのマージである、第3のマージ方法、のうちの少なくとも2つから選択するように構成され得る。
【0024】
本発明の実施形態によれば、映像マージャは、同じ所与のマージ方法と関連付けられるか、または同じマージ識別子タイプと関連付けられた2つ以上の映像ストリームのマージ識別子を比較し、比較の結果に依存して所与のマージ方法を使用してマージを実行するか否かの判断を実行するように構成される。映像マージャは、比較により、所与のマージ方法と関連付けられた2つ以上の映像ストリームのマージ識別子が等しいことが指示される場合、所与のマージ方法を使用してマージを選択的に実行するように構成され得る。映像マージャは、マージ識別子の比較により、所与のマージ方法と関連付けられた2つ以上の映像ストリームのマージ識別子が異なることが指示される場合、すなわち、符号化パラメータ自体をさらに比較することなく、比較されたマージ識別子が関連付けられている所与のマージ方法よりも高い複雑さを有するマージ方法を使用するように構成され得る。映像マージャは、マージ識別子の比較により、所与のマージ方法と関連付けられた2つ以上の映像ストリームのマージ識別子が等しいことが指示される場合、所与のマージ方法を使用した映像ストリームのマージを可能にするために2つ以上の映像ストリームにおいて等しくなければならない符号化パラメータを選択的に比較するように構成されてもよく、映像マージャは、前記符号化パラメータ、すなわち、所与のマージ方法を使用した映像ストリームのマージを可能にするために2つ以上の映像ストリームにおいて等しくなければならない符号化パラメータの比較により、符号化パラメータが等しいことが指示される場合、所与のマージ方法を使用してマージを選択的に実行するように構成され、映像マージャは、前記符号化パラメータの比較により、符号化パラメータが違いを含むことが指示される場合、所与のマージ方法よりも高い複雑さを有するマージ方法を使用してマージを実行するように構成される。
【0025】
本発明の実施形態によれば、映像マージャは、異なる複雑さを有するマージ方法と関連付けられたマージ識別子を比較する、すなわち、ハッシュを比較するように構成されてもよく、映像マージャは、マージされるべき2つ以上の映像ストリームにおいて関連付けられたマージ識別子が等しい最低の複雑さのマージ方法を識別するように構成され、映像マージャは、識別されたマージ方法を使用したマージを可能にするためにマージされるべき2つ以上の映像ストリームにおいて等しくなければならない、符号化パラメータのハッシュバージョンではなく、符号化パラメータセット、すなわち、個々の符号化パラメータを比較するように構成され、異なる、通常はオーバーラップする符号化パラメータセットが、異なる複雑さのマージ方法と関連付けられており、映像マージャは、比較により、識別されたマージ方法と関連付けられた符号化パラメータセットの符号化パラメータがマージされるべき映像ストリームにおいて等しいことが指示される場合、識別されたマージ方法を使用して2つ以上の映像ストリームを選択的にマージするように構成され、映像マージャは、比較により、識別されたマージ方法と関連付けられた符号化パラメータセットの符号化パラメータが違いを含むことが指示される場合、その識別されたマージ方法よりも高い複雑さを有するマージ方法を使用して2つ以上の映像ストリームをマージするように構成される。映像マージャは、例えば、マージされるべき異なる映像ストリームの、同じマージ方法または「マージ識別子タイプ」と関連付けられた、マージ識別子間の1つまたは複数の違いに依存して、どの符号化パラメータがマージプロセス、すなわち、映像ストリームのマージにおいて変更されるべきかを決定するように構成される。
【0026】
本発明の実施形態によれば、映像マージャは、マージされるべき映像ストリームの符号化パラメータに基づいて、マージされるべきすべての映像ストリームのスライスと関連付けられている、結合符号化パラメータまたは結合符号化パラメータセット、例えば、シーケンス・パラメータ・セットSPSおよびピクチャ・パラメータ・セットPPSを取得し、例えば、1つの符号化された映像表現と他の符号化された映像表現のすべての符号化パラメータの値が同じである場合に、結合符号化パラメータをマージされた映像ストリームに含めるように構成され、符号化パラメータは、符号化された映像表現の符号化パラメータ間に違いがある場合には、共通のパラメータをコピーすることによって更新され、符号化パラメータは、メインの(すなわち、一方がメインであり、他方がサブである)符号化された映像表現に基づいて更新され、例えば、いくつかの符号化パラメータが、映像ストリームの組み合わせ、例えば、合計画像サイズに従って適応され得る。映像マージャは、マージされた映像ストリームに含められるべき変更されたスライスを取得するために、個々のビデオスライスと個別に関連付けられた、例えば、スライスヘッダにおいて定義された、または、例えば、最低よりも高い複雑さを有するマージ方法を使用するときの、符号化パラメータを適応させるように構成される。適応された符号化パラメータは、マージされた符号化された映像表現の画像サイズを表すパラメータを含み、画像サイズは、マージされるべき符号化された映像表現の画像サイズに基づいて、すなわち、それぞれの次元で、それらの空間配置のコンテキストにおいて計算される。
【0027】
本発明の実施形態によれば、提供された符号化された映像表現、すなわち、映像ストリームを提供するための映像符号器、映像符号器は、複数の所定の機能レベルのうちの機能レベルを有する映像復号器との映像ストリームの互換性、例えば、映像復号器による映像ストリームの復号可能性を記述する、粗い粒度機能需要情報(a coarse granularity capability demand information)、例えば、レベル情報、レベル3またはレベル4またはレベル5、を提供するように構成されてもよく、映像符号器は、符号化された映像表現を復号するために所定の機能レベルのうちの1つと関連付けられた許容可能な機能需要のどの分率(fraction)、すなわち、復号器機能が必要であるかを記述する、および/または許容可能な機能需要のどの分率、すなわち、「マージされたビットストリームのレベル制限」を、符号化された映像表現、すなわち、サブビットストリームが、その機能需要が所定の機能レベルのうちの1つと一致する、すなわち、その機能需要が許容可能な機能需要以下である、映像ストリームがマージされるマージされた映像ストリームに寄与するかを記述する、細かい粒度機能需要情報、例えば、マージレベル制限情報を提供するように構成され、「所定の機能レベルのうちの1つと一致するマージされたビットストリームの許容可能な機能需要」は、「マージされたビットストリームのレベル制限」に対応する。映像符号器は、細かい粒度機能需要情報が、所定の機能レベルのうちの1つを参照する比率値またはパーセンテージ値を含むような、細かい粒度機能需要情報を提供するように構成される。映像符号器は、細かい粒度機能需要情報が参照情報および分率情報を含むような、細かい粒度機能需要情報を提供するように構成され、参照情報は、細かい粒度機能需要情報が全体として所定の機能レベルのうちの1つの分率を記述するように、分率情報が所定の機能レベルのうちのどれを参照するかを記述する。
【0028】
本発明の実施形態によれば、提供された複数の符号化された映像表現、すなわち、映像ストリームに基づいてマージされた映像表現を提供するための映像マージャ、映像マージャは、複数の符号化パラメータを記述する符号化されたパラメータ情報、符号化された映像コンテンツ情報、例えば、パラメータ情報によって定義された符号化パラメータを使用して符号化された情報、複数の所定の機能レベルのうちの機能レベルを有する映像復号器との映像ストリームの互換性、すなわち、映像復号器による映像ストリームの復号可能性を記述する、粗い粒度機能需要情報、例えば、レベル情報、レベル3またはレベル4またはレベル5、および細かい粒度機能需要情報、例えば、マージレベル制限情報を含む複数の映像ストリームを受け取るように構成されてもよく、映像マージャは、粗い粒度機能需要情報および細かい粒度機能需要情報に依存して2つ以上の映像ストリームをマージするように構成される。映像マージャは、すなわち、許容可能な機能需要に違反することなく、すなわち、マージされた映像ストリームの機能需要が細かい解像度機能需要情報に依存した所定の機能レベルのうちの1つと一致するように、どの映像ストリームをマージされた映像ストリームに含めることができるか、また含めるかを判断するように構成され得る。映像マージャは、例えば、許容可能な機能需要に違反しない、すなわち、マージされた映像ストリームの機能需要が所定の機能レベルのうちの1つと一致するような、有効なマージされた映像ストリームを、細かい解像度機能需要情報に依存して2つ以上の映像ストリームをマージすることによって取得できるか否かを判断するように構成され得る。映像マージャは、例えば、どの映像ストリームを含めることができるかを判断するために、または有効なマージされた映像ストリームを取得できるか否かを判断するために、マージされるべき複数の映像ストリームの細かい粒度機能需要情報を要約するように構成される。
【0029】
本発明の好ましい実施形態を、以下で図を参照して説明する。
【図面の簡単な説明】
【0030】
【
図1】本発明の実施形態によるビットストリームマージ概念を実施することができる映像符号器の一例として、符号化された映像表現を提供するための装置を示すブロック図である。
【
図2】本発明の実施形態によるビットストリーム構造の一例を示す概略図である。
【
図3】本発明の実施形態によるビットストリームマージ概念を実施することができる映像符号器の別の例として、符号化された映像表現を提供するための装置を示すブロック図である。
【
図4-1】本発明の実施形態による符号化パラメータの一例を示す概略図である。
【
図4-2】本発明の実施形態による符号化パラメータの一例を示す概略図である。
【
図4-3】本発明の実施形態による符号化パラメータの一例を示す概略図である。
【
図4-4】本発明の実施形態による符号化パラメータの一例を示す概略図である。
【
図5a】
図4に示される詳細なシーケンス・パラメータ・セット(SPS)の例を示す図である。
【
図5b】
図4に示される詳細なシーケンス・パラメータ・セット(SPS)の例を示す図である。
【
図6a】
図4に示す詳細なピクチャ・パラメータ・セット(PPS)の例を示す図である。
【
図6b】
図4に示す詳細なピクチャ・パラメータ・セット(PPS)の例を示す図である。
【
図7a】
図4に示す詳細なスライスヘッダの例を示す図である。
【
図7b】
図4に示す詳細なスライスヘッダの例を示す図である。
【
図7c】
図4に示す詳細なスライスヘッダの例を示す図である。
【
図7d】
図4に示す詳細なスライスヘッダの例を示す図である。
【
図8】
図4に示す補助強化情報(SEI)メッセージにおける詳細なストラクチャ・オブ・ピクチャを示す図である。
【
図9】
図4に示すSEIメッセージにおける詳細な動き制約タイルセットを示す図である。
【
図10】本発明の実施形態によるビットストリームマージ概念を実施することができる映像マージャの一例として、マージされた映像表現を提供するための装置を示すブロック図である。
【
図11】本発明の実施形態によるマージの複雑さの判断プロセスを示す概略図である。
【
図12】マージされるべき複数の映像表現のビットストリーム構造および本発明のビットストリームマージ概念によるマージされた映像表現のビットストリーム構造を示す概略図である。
【
図13】本発明の実施形態によるビットストリームマージ概念を実施することができる映像マージャの別の例として、マージされた映像表現を提供するための装置を示すブロック図である。
【
図14】本発明の実施形態によるマージされた映像表現の機能需要情報を提供する映像符号器の一例として、符号化された映像表現を提供するための装置を示すブロック図である。
【
図15】本発明の実施形態によるマージされた映像表現の機能需要情報を提供する映像マージャの一例として、マージされた映像表現を提供するための装置を示すブロック図である。
【発明を実施するための形態】
【0031】
以下の説明では、限定ではなく説明を目的として、特定の実施形態、手順、技法、などといった具体的な詳細を述べる。これらの具体的な詳細は別として他の実施形態も用いられ得ることが当業者には理解されるであろう。例えば、以下の説明は、非限定的な例示的な用途を使用して進められるが、この技術は、任意のタイプのビデオコーデックに適用され得る。場合によっては、不要な詳細で説明を分かりにくくしないように、周知の方法、インターフェース、回路およびデバイスの詳細な説明が省かれる。
【0032】
以下の説明では、同等または等価の機能を有する同等または等価の要素が、同等または等価の参照符号で表されている。
【0033】
本明細書の発明は、VVC(Versatile Video Coding)などの将来のビデオコーデックに、一緒にリーガルビットストリームにマージされ得るサブビットストリームの識別または所与のレベルの複雑さ(complexity)で一緒にリーガルビットストリームにマージすることができないサブストリームの識別を可能にする指示を各サブビットストリームに入れる手段を提供することである。この指示は、以下では「マージ識別子」と呼ばれ、「マージ識別子タイプ」と呼ばれる指示を介して適切なマージ方法に関する情報をさらに提供する。2つのビットストリームが「マージ識別子」およびその同じ値を有するものとすると、サブビットストリームを所与のレベルのマージの複雑さ(関連するマージ方法)で新しい結合ビットストリームにマージすることが可能である。
【0034】
図1に、符号化パラメータ決定メンバ14およびマージ識別子提供6を含む符号器コア4を含む提供された(入力された)映像ストリーム10に基づいて符号化された映像表現、すなわち、符号化された映像ストリーム12を提供するために映像符号器2を示す。提供された映像ストリーム10ならびに符号化された映像ストリーム12は、例えば、
図2に簡略化された構成として示されるような、ビットストリーム構造をそれぞれ有する。このビットストリーム構造は、複数のネットワーク抽象化層(Network Abstraction Layer(NAL))ユニットから構成され、各NALユニットは、様々なパラメータおよび/またはデータ、例えば、シーケンス・パラメータ・セット(SPS)20、ピクチャ・パラメータ・セット(PPS)22、瞬時復号器リフレッシュ(instantaneous decoder refresh(IDR))24、補助強化情報(SEI)26、および複数のスライス28を含む。SEI26は、様々なメッセージ、すなわち、ストラクチャ・オブ・ピクチャ、動き制約タイルセットなどを含む。スライス28は、ヘッダ30およびペイロード32を含む。符号化パラメータ決定メンバ14は、SPS20、PPS22、SEI26およびスライスヘッダ30に基づいて符号化パラメータを決定する。IDR24は、必ずしも本発明による符号化パラメータを決定する要因ではないが、符号化パラメータを決定するためにIDR24を任意選択で含めることもできる。マージ識別子提供6は、符号化された映像ストリームを別の符号化された映像ストリームとマージできるか否か、および/または、どのようにして(どの複雑さで)マージできるかを指示するマージ識別子を提供する。マージ識別子は、例えば、パラメータセットの書き換えによりマージするか、またはパラメータセットおよびスライスヘッダの書き換えによりマージするか、またはパラメータセット、スライスヘッダ、スライスペイロードの書き換えによりマージするマージ手順の複雑さ、または、一般的に、「適切な」マージ方法に関連付けられたことを表すマージ識別子タイプを指示するマージ識別子を決定し、マージ識別子はマージ識別子タイプに関連付けられており、マージ識別子タイプと関連付けられたマージ識別子は、2つの異なる符号化された映像表現が、マージ識別子タイプによって表されるマージ手順の複雑さを使用してマージ可能であるように、2つの異なる符号化された映像表現において等しくなければならない符号化パラメータを含む。
【0035】
結果として、符号化された映像ストリーム12は、複数の符号化パラメータ、符号化された映像コンテンツ情報および1つまたは複数のマージ識別子を記述する符号化されたパラメータ情報を含む。この実施形態では、マージ識別子は、符号化パラメータに基づいて決定される。しかしながら、マージ識別子値は、符号器オペレータの望みに従って設定され、クローズドシステムでは十分な衝突回避の保証がほとんどない可能性もある。DVB(Digital Video Broadcasting)、ATSC(Advanced Television Systems Committee)などの第三者エンティティが、それらのシステム内で使用されるべきマージ識別子の値を定義することもできる。
【0036】
マージ識別子タイプは、
図3から
図9を使用して本発明による別の実施形態を考慮して以下のように説明する。
【0037】
図3に、符号器コア4およびマージ識別器6aを含む符号器2(2a)を示し、符号器2aにおけるデータフローを示す。マージ識別器6aは、マージタイプを指示するためのマージ識別子としてハッシュ値を提供する第1のハッシュメンバ16aおよび第2のハッシュメンバ16bを含む。すなわち、マージ値は、以下でハッシュセットと呼ばれる、ビットストリームの構文要素(符号化パラメータ)の定義されたセットの符号化された値の連結からマージ値が形成され得る。マージ識別子値も、符号化された値の上記の連結を、MD5、SHA-3または任意の他の適切な関数などの周知のハッシュ関数に与えることによって形成され得る。
図3に示されるように、入力映像ストリーム10は入力映像情報を含み、入力映像ストリーム10は符号器コア4で処理される。符号器コア4は入力映像コンテンツを符号化し、符号化された映像コンテンツ情報はペイロード32に格納される。符号化パラメータ決定メンバ14は、SPS、PPS、スライスヘッダおよびSEIメッセージを含むパラメータ情報を受け取る。パラメータ情報は、各対応するユニットに格納され、マージ識別子提供6aで受け取られ、すなわち、第1のハッシュメンバ16aおよび第2のハッシュメンバ16bでそれぞれ受け取られる。第1のハッシュメンバ16aは、例えば、符号化パラメータに基づいてマージ識別子タイプ2を指示するハッシュ値を生成し、第2のハッシュメンバ16bは、例えば、符号化パラメータに基づいてマージ識別子タイプ1を指示するハッシュ値を生成する。
【0038】
ハッシュセットの内容、すなわち、マージ識別子値を形成するために連結される構文要素(すなわち、マージパラメータ)値によって、上記の構文カテゴリに関するマージ可能性指示の品質が決定される。
【0039】
例えば、マージ識別子タイプは、以下のように、マージ識別子に関する適切なマージ方法、すなわち、ハッシュセットに組み込まれた構文要素に対応する異なるレベルのマージ可能性を指示する。
タイプ0:パラメータセットの書き換えによるマージのためのマージ識別子
タイプ1:パラメータセットおよびスライスヘッダの書き換えによるマージのためのマージ識別子
タイプ2:パラメータセット、スライスヘッダ、およびスライスペイロードの書き換えによるマージのためのマージ識別子
【0040】
例えば、用途のコンテキストにおいてマージされるべき2つの入力サブビットストリームが与えられた場合、デバイスは、マージ識別子およびマージ識別子タイプの値を比較し、2つのサブビットストリームに対してマージ識別子タイプと関連付けられた方法を使用する可能性について結論を出すことができる。
【0041】
以下の表に、構文要素カテゴリと関連付けられたマージ方法との間のマッピングを示す。
【表1】
【0042】
すでに上述したように、構文カテゴリは決して網羅的ではないが、広範なパラメータが様々な方法でサブビットストリームの共通のビットストリームへのマージのメリットに影響を及ぼすこと、およびこれらのパラメータを追跡および解析することに手間がかかることが明らかになる。加えて、構文カテゴリとマージ方法(タイプ)とは完全には対応しておらず、したがって、例えば、カテゴリBにはいくつかのパラメータが必要であるが、マージ方法1には同じパラメータは不要である。
【0043】
デバイスが適用可能なマージ方法を容易に識別することを可能にするために、上記のマージ識別子タイプ値のうちの2つ以上によるマージ識別子値が生成され、ビットストリームに書き込まれる。マージ方法(タイプ)0はマージ識別子タイプの第1の値を指示し、マージ方法(タイプ)1はマージ識別子タイプの第2の値を指示し、マージ方法(タイプ)2はマージ識別子タイプの第3の値を指示する。
【0044】
以下の例示的な構文がハッシュセットに組み込まれる必要がある。
<タイルおよび画像境界における動き制約を指示する時間的動き制約タイルセットSEIメッセージ(マージ方法0、1、2、構文カテゴリC.b)>
<GOP構造(すなわち、符号化順序の表示順序へのマッピング、ランダム・アクセス・ポイント指示、時間的階層化、参照構造)を定義するストラクチャ・オブ・ピクチャ情報SEIメッセージ(マージ方法0、1、2、構文カテゴリC.b)>
<パラメータセットの構文要素値>
参照画像セット(マージ方法0、構文カテゴリB)
クロマフォーマット(マージ方法0、1、2、構文カテゴリD)
基準QP、クロマQPオフセット(マージ方法0、構文カテゴリB)
ビット深度ルマ/クロマ(マージ方法0、1、2、構文カテゴリD)
<hrdパラメータ>
初期到着遅延(マージ方法0、構文カテゴリB)
初期削除遅延(マージ方法0、構文カテゴリB)
<符号化ツール>
符号化ブロック構造(最大/最小ブロックサイズ、推測される分割)(マージ方法0、1、構文カテゴリC.a)
変換サイズ(最小/最大)(マージ方法0、1、構文カテゴリC.a)
PCMブロック使用法(マージ方法0、1、構文カテゴリC.a)
高度動きベクトル予測(マージ方法0、1、2、構文カテゴリC.b)
サンプル適応オフセット(マージ方法0、構文カテゴリC.b)
時間的動きベクトル予測(マージ方法0、1、2、構文カテゴリC.b)
イントラ平滑化(マージ方法0、1、構文カテゴリC.a)
依存スライス(マージ方法0、構文カテゴリA)
符号隠蔽(マージ方法0、1、構文カテゴリC.a)
重み付き予測(マージ方法0、構文カテゴリA)
トランスクワントバイパス(transquant bypass)(マージ方法0、1、構文カテゴリC.a)
エントロピー符号化同期(マージ方法0、1、構文カテゴリC.a)(Skup4)
ループフィルタ(マージ方法0、1、2、構文カテゴリC.b)
<スライスヘッダ値>
パラメータセットID(マージ方法0、構文カテゴリC.a)
参照画像セット(マージ方法0、1、構文カテゴリB)
<暗黙的なCTUアドレスシグナリングcp.の使用法(欧州特許出願EP18153516によって参照されている)(マージ方法0、構文カテゴリA)>
【0045】
すなわち、マージ識別子タイプの第1の値、すなわち、タイプ0では、構文要素(パラメータ)、つまりタイルおよび画像境界における動き制約、GOP構造、参照画像セット、クロマフォーマット、基準量子化パラメータおよびクロマ量子化パラメータ、ビット深度ルマ/クロマ、初期到着遅延に関するパラメータおよびパラメータ初期削除遅延を含む仮想の参照復号器パラメータ、符号化ブロック構造、変換最小および/または最大サイズ、パルス符号変調ブロックの使用法、高度動きベクトル予測、サンプル適応オフセット、時間的動きベクトル予測、イントラ平滑化を記述する、依存スライス、符号隠蔽、重み付き予測、トランスクワントバイパス、エントロピー符号化同期、ループフィルタ、パラメータセットIDを含むスライスヘッダ値、参照画像セットを含むスライスヘッダ値、ならびに暗黙的な符号化変換ユニット・アドレス・通知の使用法がハッシュセットに組み込まれる必要がある。
【0046】
マージ識別子タイプの第2の値、すなわち、タイプ1では、構文要素(パラメータ)、つまりタイルおよび画像境界における動き制約、GOP構造、クロマフォーマット、ビット深度ルマ/クロマ、符号化ブロック構造、変換最小および/または最大サイズ、パルス符号変調ブロックの使用法、高度動きベクトル予測、サンプル適応オフセット、時間的動きベクトル予測、イントラ平滑化、符号隠蔽、トランスクワントバイパス、エントロピー符号化同期、ループフィルタ、ならびに参照画像セットを含むスライスヘッダ値。
【0047】
マージ識別子タイプの第3の値、すなわち、タイプ2では、構文要素(パラメータ)、つまりタイルおよび画像境界における動き制約、GOP構造、クロマフォーマット、ビット深度ルマ/クロマ、高度動きベクトル予測、サンプル適応オフセット、時間的動きベクトル予測、ループフィルタ。
【0048】
図4に、本発明の実施形態による符号化パラメータの一例を示す概略図を示す。
図4において、参照符号40はタイプ0を表し、タイプ0に属する構文要素は点線で指示されている。参照符号42はタイプ1を表し、タイプ1に属する構文要素は通常の線で指示されている。参照符号44はタイプ2を表し、タイプ2に属する構文要素は破線で指示されている。
【0049】
図5aおよび
図5bは、シーケンス・パラメータ・セット(SPS)20の一例であり、タイプ0に必要な構文要素は参照符号40で指示されている。同様に、タイプ1に必要な構文要素は参照符号42で指示されており、タイプ2に必要な構文要素は参照符号44で指示されている。
【0050】
図6aおよび
図6bは、ピクチャ・パラメータ・セット(PPS)22の一例であり、タイプ0に必要な構文要素は参照符号40で指示されており、タイプ1に必要な構文要素は参照符号42で指示されている。
【0051】
図7aから
図7dは、スライスヘッダ30の一例であり、
図7cに参照符号40で指示されているようにタイプ0にはスライスヘッダの1つの構文要素のみが必要である。
【0052】
図8は、ストラクチャ・オブ・ピクチャ(SOP)26aの一例であり、すべての構文要素がSOPに属することがタイプ2に必要である。
【0053】
図9は、動き制約タイルセット(MCTS)26bの一例であり、すべての構文要素がMCTSに属することがタイプ2に必要である。
【0054】
上記のように、
図3のマージ識別器6aは、ハッシュメンバ16aおよびハッシュメンバ16bでハッシュ関数を使用してマージ識別子値を生成する。ハッシュ関数を使用して2つ以上のマージ識別子値が生成される場合、ハッシュは、第1のマージ識別子に関してハッシュセット内の追加の要素を包含する第2のマージ識別子のハッシュ関数への入力が、ハッシュ関数への入力の連結にそれぞれの構文要素値の代わりに第1のマージ識別子(ハッシュ結果)を使用するという意味で、接続されている。
【0055】
加えて、マージ識別子の存在はまた、ハッシュセットに組み込まれた構文要素が、符号化された映像シーケンス(CVS)、および/または、ビットストリームのすべてのアクセスユニット(access unit(AU))において同じ値を有する保証も提供する。さらに、この保証は、パラメータセットのプロファイル/レベル構文における制約フラグの形を有する。
【0056】
マージプロセスは、
図10から
図13を使用して本発明による別の実施形態を考慮して以下のように説明する。
【0057】
図10に、複数の符号化された映像表現に基づいてマージされた映像ストリームを提供するための映像マージャを示す。映像マージャ50は、入力映像ストリーム12(
図12に指示される12aおよび12b)が受信される受信機52、マージ方法識別器54およびマージプロセッサ56を含む。マージされた映像ストリーム60は復号器に伝送される。映像マージャ50が復号器に含まれる場合、マージされた映像ストリームは、マージされた映像ストリームを表示するためにユーザ機器または任意の他の装置に伝送される。
【0058】
マージプロセスは、上記のマージ識別子およびマージ識別子タイプによって駆動される。マージプロセスは、パラメータセットの生成とNALユニットのインターリーブのみを実行することができ、これは、マージ識別子タイプ値0、すなわち、第1の複雑さと関連付けられたマージの最も軽量な形である。
図12に、第1の複雑さのマージ方法の一例を示す。
図12に指示されるように、パラメータセット、すなわち、映像ストリーム12aのSPS1および映像ストリーム12bのSPS2がマージされ(SPS1およびSPS2に基づいてマージされたSPSが生成される)、映像ストリーム12aのPPS1および映像ストリーム12bのPPS2がマージされる(PPS1およびPPS2に基づいてマージされたPPSが生成される)。IDRは任意選択のデータであり、したがって、説明を省く。加えて、マージされた映像ストリーム60として示されているように映像ストリーム12aのスライス1,1およびスライス1,2ならびに映像ストリーム12bのスライス2,1およびスライス2,2がインターリーブされる。
図10および
図12では、2つの映像ストリーム12aおよび映像ストリーム12bが例として入力されている。しかしながら、より多くの映像ストリームが入力され、同じ方法でマージされてもよい。
【0059】
必要に応じてマージプロセスは、マージ識別子タイプ値1、すなわち、第2の複雑さと関連付けられる、NALユニットインターリーブ中のビットストリーム内のスライスヘッダの書き換えも含むことができる。さらに最後に、マージ識別子タイプ値2、すなわち、第3の複雑さと関連付けられる、NALユニットインターリーブ中のエントロピー復号および符号化を必要とするスライスペイロード内の構文要素が調整される必要がある場合がある。マージ識別子およびマージ識別子タイプは、実行されるべきマージプロセスのうちの1つの選択およびその詳細の決定を駆動する。
【0060】
マージプロセスへの入力は、空間配置も表す入力サブビットストリームのリストである。プロセスへの出力はマージされたビットストリームである。一般に、すべてのビットストリーム・マージ・プロセスにおいて、新しい出力ビットストリームのパラメータセットが生成される必要があり、これは入力サブビットストリームのパラメータセット、例えば、第1の入力サブビットストリームに基づくものとすることができる。パラメータセットの必要な更新は、画像サイズを含む。例えば、出力ビットストリームの画像サイズは、それぞれの次元の、それらの空間配置のコンテキストでの入力サブビットストリームの画像サイズの和として計算される。
【0061】
すべての入力サブビットストリームがマージ識別子およびマージ識別子タイプの少なくとも1つのインスタンスの同じ値を有することがビットストリーム・マージ・プロセスの要件である。一実施形態では、すべてのサブビットストリームがマージ識別子の同じ値を有するマージ識別子タイプの最低値と関連付けられたマージプロセスが実行される。
【0062】
例えば、特定のマージ識別子タイプ値を有するマージ識別子値の差分が、マージプロセスにおいて、そのマージ識別子値が一致するマージ識別子タイプの差分値に従ってマージプロセスの詳細を決定するために使用される。例えば、
図11に示されるように、マージ識別子タイプ値が0に等しい第1のマージ識別子70は、2つの入力サブビットストリーム70a、70b間で一致しないが、マージ識別子タイプ値が1に等しい第2のマージ識別子80は2つの入力サブビットストリーム80a、80b間で一致する場合、第1のマージ識別子70のビット位置の違いは、すべてのスライスでの調整を必要とする(スライスヘッダに関連した)構文要素を指示する。
【0063】
図13に、受信機(図示されない)、マージ方法識別器がマージ識別子比較器54aおよび符号化パラメータ比較器54bを含む、ならびにマージプロセッサ56を含む映像マージャ50(50a)を示す。入力映像ストリーム12がマージ識別子値としてハッシュ値を含む場合、各入力映像ストリームの値はマージ識別子比較器54aで比較される。例えば、両方の入力映像ストリームが同じマージ識別子値を有する場合、各入力映像ストリームの個々の符号化パラメータが符号化パラメータ比較器54bで比較される。符号化パラメータ比較結果に基づいて、マージ方法が決定され、マージプロセッサ56が、決定されたマージ方法を使用して入力映像ストリーム12をマージする。マージ識別子値(ハッシュ値)がマージ方法も指示する場合、個々の符号化パラメータの比較は不要である。
【0064】
上記では、3つのマージ方法、第1の複雑さ、第2の複雑さおよび第3の複雑さのマージ方法が説明されている。第4のマージ方法は、完全な画素復号および画素再符号化を使用した映像ストリームのマージである。第4のマージ方法は、3つすべてのマージ方法が適用できない場合に適用される。
【0065】
図14および
図15を使用して本発明による別の実施形態を考慮して、マージ結果のレベルを識別するためのプロセスを以下に説明する。マージ結果のレベルの識別は、サブビットストリームに情報を配置すること、そのサブビットストリームを組み込んだマージされたビットストリームのレベル制限に対するサブビットストリームの寄与がどれほど大きいかを意味する。
【0066】
図14に、符号化パラメータ決定14を含む符号器コア、マージ識別子提供(図示されない)、および粒度機能提供器8を含む符号器2(2b)を示す。
【0067】
一般に、サブビットストリームが結合ビットストリームにマージされることになる場合、個々のサブビットストリームが、潜在的なマージされたビットストリームが順守しなければならないコーデックシステムのレベル固有の制限にどのように寄与するかについての指示は、リーガル結合ビットストリームの作成を確実にするために不可欠である。従来、コーデックレベルの粒度はかなり粗いものであり、例えば、720p、1080pまたは4Kなどの識別主要解像度であるが、マージレベル制限の指示は、ずっと細かい粒度を必要とする。この従来のレベル指示の粒度は、マージされたビットストリームへの個々のサブビットストリームの寄与を表すには不十分である。マージされるべきタイルの数が事前には未知であるものとすると、柔軟性とビットレートコストとの合理的なトレードオフを見つける必要があるが、これは、一般に、従来のレベル制限の粒度をはるかに超える。1つの例示的な使用例が、サービス提供者が、360度ビデオにつき12タイル、24タイルまたは96タイルなどの異なるタイル構造からの選択の自由を必要とする360度映像ストリームであり、各タイルストリームは、等しいレート分布を想定すると、8Kなどの全体のレベル制限の1/12、1/24または1/96に寄与することになる。さらに、例えば、映像平面にわたる均一な品質を達成するための、タイル間の不均一なレート分布を想定すると、任意の細かい粒度が必要になり得る。
【0068】
そのような通知(signaling)は、例えば、通知された比率および/または追加で通知されたレベルのパーセンテージになる。例えば、参加者が4人の会議シナリオでは、各参加者は、指示、すなわち、粗い粒度機能情報に含まれるレベル情報も含む、リーガルレベル3のビットストリームを送信することになり、指示は、送信ビットストリームがレベル5の制限の1/3および/または33%を順守することを示し、すなわち、この情報は、細かい粒度機能情報に含まれ得る。複数のそのようなストリームの受信機、すなわち、
図15に示されるような映像マージャ50(50b)は、例えば、よって、3つのそのようなビットストリームがレベル5を順守する単一の結合ビットストリームにマージ可能であり得ることを知ることができる。
【0069】
粒度機能情報は、比率および/またはパーセンテージの指示を値のベクトルとして有していてもよく、各次元はコーデックレベル制限の別の態様、例えば、1秒あたりの最大許容ルマサンプルの量、最大画像サイズ、ビットレート、バッファ占有量、タイルの数などに関する。加えて、比率および/またはパーセンテージは、映像ビットストリームの一般的なコーデックレベルを指す。
【0070】
いくつかの態様が装置またはシステムの文脈で説明されているが、これらの態様が、ブロックまたはデバイスが方法ステップまたは方法ステップの特徴に対応する、対応する方法の説明も表すことは明らかである。同様に、方法ステップの文脈で説明された態様も、対応する装置および/またはシステムのブロックまたは項目または特徴の説明を表す。方法ステップの一部または全部が、例えば、マイクロプロセッサ、プログラマブルコンピュータ、または電子回路のようなハードウェア装置によって(またはハードウェア装置を使用して)実行されてもよい。いくつかの実施形態では、最も重要な方法ステップのうちの1つまたは複数がそのような装置によって実行され得る。
【0071】
本発明のデータストリームは、デジタル記憶媒体に格納することができ、またはインターネットなどの無線伝送媒体や有線伝送媒体といった伝送媒体で伝送することができる。
【0072】
特定の実施要件に応じて、本発明の実施形態を、ハードウェアまたはソフトウェアで実施することができる。実施態様は、それぞれの方法が実行されるようにプログラマブル・コンピュータ・システムと協働する(または協働することができる)、電子的に読み取り可能な制御信号が格納されたデジタル記憶媒体、例えば、フロッピーディスク、DVD、Blu-Ray、CD、ROM、PROM、EPROM、EEPROMまたはフラッシュメモリを使用して実行することができる。したがって、デジタル記憶媒体はコンピュータ可読であり得る。
【0073】
本発明によるいくつかの実施形態は、本明細書に記載される方法のうちの1つが実行されるように、プログラマブル・コンピュータ・システムと協働することができる、電子的に読み取り可能な制御信号を有するデータキャリアを含む。
【0074】
一般に、本発明の実施形態は、プログラムコードを有するコンピュータプログラム製品として実施することができ、プログラムコードは、コンピュータプログラム製品がコンピュータ上で動作すると、方法のうちの1つを実行するように動作する。プログラムコードは、例えば、機械可読キャリアに格納され得る。
【0075】
他の実施形態は、機械可読キャリアに格納された、本明細書に記載される方法のうちの1つを実行するためのコンピュータプログラムを含む。
【0076】
言い換えると、本発明の方法の一実施形態は、したがって、コンピュータプログラムがコンピュータ上で動作するときに本明細書に記載される方法のうちの1つを実行するためのプログラムコードを有するコンピュータプログラムである。
【0077】
本発明の方法の別の実施形態は、したがって、本明細書に記載される方法のうちの1つを実行するためのコンピュータプログラムが記録されているデータキャリア(またはデジタル記憶媒体、またはコンピュータ可読媒体)である。データキャリア、デジタル記憶媒体、または記録された媒体は通常、有形および/または非一時的である。
【0078】
本発明の方法の別の実施形態は、したがって、本明細書に記載される方法のうちの1つを実行するためのコンピュータプログラムを表すデータストリームまたは信号のシーケンスである。データストリームまたは信号のシーケンスは、例えば、データ通信接続を介して、例えばインターネットを介して転送されるように構成され得る。
【0079】
別の実施形態は、本明細書に記載される方法のうちの1つを実行するように構成または適合された処理手段、例えば、コンピュータ、またはプログラマブル・ロジック・デバイスを含む。
【0080】
別の実施形態は、本明細書に記載される方法のうちの1つを実行するためのコンピュータプログラムがインストールされたコンピュータを含む。
【0081】
本発明による別の実施形態は、本明細書に記載される方法のうちの1つを実行するためのコンピュータプログラムを受信機に(例えば、電子的または光学的に)転送するように構成された装置またはシステムを含む。受信機は、例えば、コンピュータ、モバイルデバイス、メモリデバイスなどであり得る。装置またはシステムは、例えば、コンピュータプログラムを受信機に転送するためのファイルサーバを含み得る。
【0082】
いくつかの実施形態では、プログラマブル・ロジック・デバイス(例えば、フィールド・プログラマブル・ゲート・アレイ)を使用して、本明細書に記載される方法の機能の一部または全部が実行され得る。いくつかの実施形態では、フィールド・プログラマブル・ゲート・アレイが、本明細書に記載される方法のうちの1つを実行するためにマイクロプロセッサと協働し得る。一般に、これらの方法は、好ましくは、任意のハードウェア装置によって実行される。
【0083】
本明細書に記載される装置は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータの組み合わせを使用して実施され得る。
【0084】
本明細書に記載される装置、または本明細書に記載される装置の任意の構成要素は、少なくとも部分的に、ハードウェアとして、および/またはソフトウェアとして実施され得る。
【0085】
本明細書に記載される方法は、ハードウェア装置を使用して、またはコンピュータを使用して、またはハードウェア装置とコンピュータの組み合わせを使用して実行され得る。
【0086】
本明細書に記載される方法、または本明細書に記載される方法の任意の構成要素は、少なくとも部分的に、ハードウェアによって、および/またはソフトウェアによって実施され得る。
【0087】
上述した実施形態は、本発明の原理の単なる例示である。当業者には本明細書に記載される構成および詳細の改変および変形が明らかになることを理解されたい。したがって、本明細書において実施形態の記述および説明として提示された具体的な詳細によってではなく、添付された特許請求の範囲によってのみ限定されることが意図されている。