JP2024531112A - グリーンメタデータシグナリング - Google Patents

グリーンメタデータシグナリング Download PDF

Info

Publication number
JP2024531112A
JP2024531112A JP2024506707A JP2024506707A JP2024531112A JP 2024531112 A JP2024531112 A JP 2024531112A JP 2024506707 A JP2024506707 A JP 2024506707A JP 2024506707 A JP2024506707 A JP 2024506707A JP 2024531112 A JP2024531112 A JP 2024531112A
Authority
JP
Japan
Prior art keywords
bitstream
syntax element
granularity
picture
period
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2024506707A
Other languages
English (en)
Inventor
ヘー、ヨン
コバン、ムハンメド・ゼイド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2024531112A publication Critical patent/JP2024531112A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1883Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

ビデオデータを処理するためのシステム、方法、装置、およびコンピュータ可読媒体が開示される。たとえば、ビデオデータを処理するための装置が、少なくとも1つのメモリと、少なくとも1つのメモリに結合された少なくとも1つのプロセッサとを含み得、少なくとも1つのプロセッサは、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、ビットストリームに関連する期間タイプシンタックス要素を取り出すことと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとを行うように構成される。

Description

[0001] 本出願は、一般に、ビデオ処理に関する。たとえば、本出願の態様は、グリーンメタデータ(green metadata)に関してビデオコーディング技法(たとえば、ビデオを符号化および/または復号すること)を改善することに関する。
[0002] デジタルビデオ能力は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲーミングデバイス、ビデオゲームコンソール、セルラー電話または衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲のデバイスに組み込まれ得る。そのようなデバイスは、ビデオデータが消費のために処理および出力されることを可能にする。デジタルビデオデータは、消費者およびビデオプロバイダの需要を満たすための大量のデータを含む。たとえば、ビデオデータの消費者は、高い忠実度、解像度、フレームレートなどを伴う、最高の品質のビデオを望む。その結果、これらの需要を満たすために必要とされる大量のビデオデータは、ビデオデータを処理および記憶する通信ネットワークおよびデバイスに負担をかける。
[0003] デジタルビデオデバイスは、ビデオデータを圧縮するためのビデオコーディング技法を実装することができる。ビデオコーディングは、1つまたは複数のビデオコーディング規格またはフォーマットに従って実施される。たとえば、ビデオコーディング規格またはフォーマットは、特に、汎用ビデオコーディング(VVC)、高効率ビデオコーディング(HEVC)、アドバンストビデオコーディング(AVC)、MPEG-2 Part2コーディング(MPEGはムービングピクチャエキスパートグループを表す)、ならびにAlliance for Open Mediaによって開発されたAOMedia Video1(AV1)などのプロプライエタリビデオコーダデコーダ(コーデック)/フォーマットを含む。ビデオコーディングは、概してビデオ画像またはシーケンス中に存在する冗長を利用する予測方法(たとえば、インター予測、イントラ予測など)を利用する。ビデオコーディング技法の目標は、ビデオ品質に対する劣化を回避するかまたは最小限に抑えながら、より低いビットレートを使用する形式にビデオデータを圧縮することである。常に発展しつつあるビデオサービスが利用可能になるとともに、より良いコーディング効率をもつコーディング技法が必要とされる。
[0004] ビデオデータを処理するためのシステムおよび技法が本明細書で説明される。少なくとも1つの例によれば、ビットストリーム(bitstream)を取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素(granularity type syntax element)を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM:complexity metric)が適用可能であるグラニュラリティのタイプを指定する、を含む、ビデオを処理する方法が提供される。
[0005] ビデオデータを処理するためのシステム、方法、装置(apparatus)、およびコンピュータ可読媒体が開示される。1つの例示的な例では、ビデオデータを処理するための装置が提供される。本装置は、少なくとも1つのメモリと、少なくとも1つのメモリに結合された(たとえば、回路において実装される)少なくとも1つのプロセッサとを含み、少なくとも1つのプロセッサは、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャ(picture)のグラニュラリティのタイプを指定する、ビットストリームに関連する期間タイプシンタックス要素(period type syntax element)を取り出すことと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとを行うように構成される。
[0006] 別の例では、ビデオデータを処理するための方法が提供される。本方法は、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、ビットストリームに関連する期間タイプシンタックス要素を取り出すことと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとを含む。
[0007] 別の例では、1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、ビットストリームに関連する期間タイプシンタックス要素を取り出すことと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとを行わせる命令を有する、非一時的コンピュータ可読媒体が提供される。
[0008] 別の例では、ビデオデータを処理するための装置が提供される。本装置は、ビットストリームを取得するための手段と、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すための手段と、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、ビットストリームに関連する期間タイプシンタックス要素を取り出すための手段と、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号するための手段とを含む。
[0009] 別の例では、ビデオデータを処理するための装置が提供される。本装置は、少なくとも1つのメモリと、少なくとも1つのメモリに結合された(たとえば、回路において実装される)少なくとも1つのプロセッサとを含み、少なくとも1つのプロセッサは、ビデオデータを取得することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することと、ビットストリームについて、ビットストリームに関連する期間タイプシンタックス要素を生成することと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、ビデオデータに関連するビットストリームを生成することと、ビットストリームが、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とを含む、生成されたビットストリームを出力することとを行うように構成される。
[0010] 別の例では、ビデオデータを処理するための方法が提供される。本方法は、ビデオデータを取得することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することと、ビットストリームについて、ビットストリームに関連する期間タイプシンタックス要素を生成することと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、ビデオデータに関連するビットストリームを生成することと、ビットストリームが、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とを含む、生成されたビットストリームを出力することとを含む。
[0011] 別の例では、1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに、ビデオデータを取得することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することと、ビットストリームについて、ビットストリームに関連する期間タイプシンタックス要素を生成することと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、ビデオデータに関連するビットストリームを生成することと、ビットストリームが、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とを含む、生成されたビットストリームを出力することとを行わせる命令を有する、非一時的コンピュータ可読媒体が提供される。
[0012] 別の例では、ビデオデータを処理するための装置が提供される。本装置は、ビデオデータを取得するための手段と、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成するための手段と、ビットストリームについて、ビットストリームに関連する期間タイプシンタックス要素を生成するための手段と、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、ビデオデータに関連するビットストリームを生成するための手段と、ビットストリームが、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とを含む、生成されたビットストリームを出力するための手段とを含む。
[0013] 少なくとも1つの他の例によれば、少なくとも1つのメモリと、メモリに結合された(たとえば、回路において実装される)1つまたは複数のプロセッサとを含む、ビデオデータを処理するための装置が提供される。1つまたは複数のプロセッサは、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定する、を行うように構成される。
[0014] 少なくとも1つの他の例によれば、1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定する、を行わせる命令を含む、非一時的コンピュータ可読媒体が提供される。
[0015] 少なくとも1つの他の例によれば、ビットストリームを取得するための手段と、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すための手段と、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定する、を含む、ビデオデータを処理するための装置が提供される。
[0016] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャに適用可能であることを指定する。
[0017] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスライスに適用可能であることを指定する。
[0018] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのタイルに適用可能であることを指定する。
[0019] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのサブピクチャに適用可能であることを指定する。
[0020] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスケーラブルレイヤに適用可能であることを指定する。
[0021] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのコーディングツリーユニット(CTU:coding tree unit)行に適用可能であることを指定する。
[0022] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームに関連する期間タイプシンタックス要素を取り出すことを含むことができ、期間タイプシンタックス要素は、CMが適用可能である今度の期間(upcoming period)のタイプを指定する。
[0023] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームに関連するピクチャレベルCMシンタックス構造を取り出すことを含むことができ、ピクチャレベルCMシンタックス構造は、期間にわたる1つまたは複数のピクチャについての複雑さメトリックを指定する。
[0024] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームに関連するグラニュラリティレベルCMシンタックス構造(granularity level CM syntax structure)を取り出すことを含むことができ、グラニュラリティレベルCMシンタックス構造は、期間にわたる1つまたは複数のエンティティについてのグラニュラリティレベル複雑さメトリック(granularity level complexity metrics)を指定する。いくつかの態様では、1つまたは複数のエンティティは、スライス、タイル、サブピクチャ、およびレイヤのうちの少なくとも1つを含む。
[0025] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームに関連するサブピクチャシンタックス要素(subpicture syntax element)を取り出すことを含むことができ、サブピクチャシンタックス要素は、期間が複数のピクチャにわたるとき、サブピクチャ識別子(ID)がCM中でシグナリングされることを示す。
[0026] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素(coding tree block (CTB) number syntax element)を取り出すことを含むことができ、CTB数シンタックス要素は、グラニュラリティのタイプがスライスまたはタイルに等しく、期間が複数のピクチャにわたるとき、期間にわたるコーディングツリールーマブロック(coding tree luma block)の総数がCM中でシグナリングされ得ることを示す。
[0027] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームに関連する平均コーディングツリーブロック(CTB)数シンタックス要素を取り出すことを含むことができ、平均CTB数シンタックス要素(average CTB number syntax element)は、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数(average number)を示す。
[0028] いくつかの態様では、イントラコード化ブロック統計値(intra-coded block statistics)は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロック(intra-coded block)があるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。
[0029] いくつかの態様では、インターコード化ブロック統計値(inter-coded block statistics)は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロック(inter-coded block)があるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。
[0030] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームの1つまたは複数のグラニュラリティセグメント(granularity segment)に関連する1つまたは複数の品質復元メトリックを取り出すことを含むことができる。いくつかの態様では、ビットストリームの1つまたは複数のグラニュラリティセグメントは、スライス、タイル、およびサブピクチャのうちの少なくとも1つを含む。
[0031] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、補足エンハンスメント情報(SEI)メッセージを受信することと、SEIメッセージからグラニュラリティタイプシンタックス要素を取り出すこととを含むことができる。
[0032] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームに関連するCMに基づいて装置の動作周波数を決定することを含むことができる。
[0033] いくつかの態様では、本装置はデコーダを含む。
[0034] 少なくとも1つの他の例によれば、ビデオデータを取得することと、ビデオデータに関連するビットストリームを生成することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することとを含む、ビデオを処理する方法が提供される。
[0035] 少なくとも1つの他の例によれば、少なくとも1つのメモリと、メモリに結合された(たとえば、回路において実装される)1つまたは複数のプロセッサとを含む、ビデオデータを処理するための装置が提供される。1つまたは複数のプロセッサは、ビデオデータを取得することと、ビデオデータに関連するビットストリームを生成することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することとを行うように構成される。
[0036] 少なくとも1つの他の例によれば、1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに、ビデオデータを取得することと、ビデオデータに関連するビットストリームを生成することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することとを行わせる命令を含む、非一時的コンピュータ可読媒体が提供される。
[0037] 少なくとも1つの他の例によれば、ビデオデータを取得するための手段と、ビデオデータに関連するビットストリームを生成するための手段と、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成するための手段とを含む、ビデオデータを処理するための装置が提供される。
[0038] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャに適用可能であることを指定する。
[0039] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスライスに適用可能であることを指定する。
[0040] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのタイルに適用可能であることを指定する。
[0041] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのサブピクチャに適用可能であることを指定する。
[0042] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスケーラブルレイヤに適用可能であることを指定する。
[0043] いくつかの態様では、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのコーディングツリーユニット(CTU)行に適用可能であることを指定する。
[0044] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームについて、CMが適用可能である今度の期間のタイプを指定する期間タイプシンタックス要素を生成することを含むことができる。
[0045] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームについて、期間にわたる1つまたは複数のピクチャについての複雑さメトリックを指定するピクチャレベルCMシンタックス構造を生成することを含むことができる。
[0046] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームについて、期間にわたる1つまたは複数のエンティティについてのグラニュラリティレベル複雑さメトリックを指定するグラニュラリティレベルCMシンタックス構造を生成することを含むことができる。いくつかの態様では、1つまたは複数のエンティティは、スライス、タイル、サブピクチャ、およびレイヤのうちの少なくとも1つを含む。
[0047] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームについて、期間が複数のピクチャにわたるとき、サブピクチャ識別子(ID)がCM中でシグナリングされることを示すサブピクチャシンタックス要素を生成することを含むことができる。
[0048] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームについて、グラニュラリティのタイプがスライスまたはタイルに等しく、期間が複数のピクチャにわたるとき、期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、コーディングツリーブロック(CTB)数シンタックス要素を生成することを含むことができる。
[0049] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームについて、ピクチャごとのグラニュラリティごとのコーディングツリーブロック(CTB)または4×4ブロックの平均数を示す平均CTB数シンタックス要素を生成することを含むことができる。
[0050] いくつかの態様では、イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。
[0051] いくつかの態様では、インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。
[0052] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームについて、ビットストリームの1つまたは複数のグラニュラリティセグメントに関連する1つまたは複数の品質復元メトリックを生成することを含むことができる。
[0053] いくつかの態様では、ビットストリームの1つまたは複数のグラニュラリティセグメントは、スライス、タイル、およびサブピクチャのうちの少なくとも1つを含む。
[0054] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、補足エンハンスメント情報(SEI)メッセージを生成することと、グラニュラリティタイプシンタックス要素をSEIメッセージ中に含めることとを含むことができる。
[0055] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームを記憶することを含むことができる。
[0056] いくつかの態様では、上記で説明された方法、装置、および非一時的コンピュータ可読媒体は、ビットストリームを送信することを含むことができる。
[0057] いくつかの態様では、本装置はエンコーダを含む。
[0058] いくつかの態様では、デバイスは、モバイルデバイス(たとえば、携帯電話、またはいわゆる「スマートフォン」または他のモバイルデバイス)、ウェアラブルデバイス、エクステンデッドリアリティデバイス(たとえば、仮想現実(VR)デバイス、拡張現実(AR)デバイス、または複合現実(MR)デバイス)、カメラ、パーソナルコンピュータ、ラップトップコンピュータ、サーバコンピュータ、ビークルまたはビークルのコンピューティングデバイスもしくは構成要素、ロボティクスデバイスまたはシステム(テレビジョン)、あるいは他のデバイスであり、それらの一部であり、および/またはそれらを含む。いくつかの態様では、デバイスは、1つまたは複数の画像をキャプチャするための1つまたは複数のカメラを含む。いくつかの態様では、デバイスは、1つまたは複数の画像、通知、および/または他の表示可能なデータを表示するためのディスプレイを含む。いくつかの態様では、デバイスは、1つまたは複数のセンサ(たとえば、1つまたは複数のジャイロメータ、1つまたは複数の加速度計、それらの任意の組合せ、および/または他のセンサなど、1つまたは複数の慣性測定ユニット(IMU))を含むことができる。
[0059] この概要は、特許請求される主題の重要なまたは本質的な特徴を識別することを意図されておらず、また、特許請求される主題の範囲を決定するために分離して使用されることも意図されていない。主題は、本特許の明細書全体と、いずれかまたはすべての図面と、各請求項との適切な部分を参照することによって理解されるべきである。
[0060] 前述の内容は、他の特徴および実施形態とともに、以下の明細書、特許請求の範囲、および添付の図面を参照すれば、より明らかになるであろう。
[0061] 本出願の例示的な例が、以下の図を参照しながら以下で詳細に説明される。
[0062] 本開示のいくつかの例による、符号化デバイスおよび復号デバイスの一例を示すブロック図。 [0063] ビデオピクチャについてのグラニュラリティレベル複雑さメトリックの例示的な使用を示す図。 [0064] 本開示の態様による、符号化ビデオを復号するための技法を示す流れ図。 [0065] 本開示の態様による、ビデオを符号化するための技法を示す流れ図。 [0066] 本開示のいくつかの例による、例示的なビデオ復号デバイスを示すブロック図。 [0067] 本開示のいくつかの例による、例示的なビデオ符号化デバイスを示すブロック図。
[0068] 本開示のいくつかの態様および実施形態が以下で提供される。当業者に明らかであるように、これらの態様および実施形態のうちのいくつかは独立して適用され得、それらのうちのいくつかは組み合わせて適用され得る。以下の説明では、説明の目的で、本出願の実施形態の完全な理解を提供するために具体的な詳細が記載される。しかしながら、様々な実施形態は、これらの具体的な詳細なしに実践され得ることは明らかであろう。図および説明は限定するものではない。
[0069] 以下の説明は、例示的な実施形態を提供するにすぎず、本開示の範囲、適用可能性、または構成を限定するものではない。そうではなく、例示的な実施形態の以下の説明は、例示的な実施形態を実装することを可能にする説明を当業者に提供する。添付の特許請求の範囲に記載されるように、本出願の趣旨および範囲から逸脱することなく、要素の機能および構成において様々な変更が行われ得ることを理解されたい。
[0070] ビデオコーディングデバイスは、ビデオデータを効率的に符号化および復号するためのビデオ圧縮技法を実装する。ビデオ圧縮技法は、ビデオシーケンスに固有の冗長を低減または除去するために、空間予測(たとえば、イントラフレーム予測またはイントラ予測)、時間予測(たとえば、インターフレーム予測またはインター予測)、(ビデオデータの異なるレイヤにわたる)レイヤ間予測、および/または他の予測技法を含む、異なる予測モードを適用することを含み得る。ビデオエンコーダは、元のビデオシーケンスの各ピクチャを(以下でより詳細に説明される)ビデオブロックまたはコーディングユニットと呼ばれる矩形領域に区分することができる。これらのビデオブロックは、特定の予測モードを使用して符号化され得る。
[0071] ビデオブロックは、1つまたは複数のやり方で、より小さいブロックの1つまたは複数のグループに分割され得る。ブロックは、コーディングツリーブロック、予測ブロック、変換ブロック、または他の好適なブロックを含むことができる。概して「ブロック」への言及は、別段に規定されていない限り、そのようなビデオブロック(たとえば、当業者によって理解されるように、コーディングツリーブロック、コーディングブロック、予測ブロック、変換ブロック、あるいは他の適切なブロックまたはサブブロック)を指すことがある。さらに、これらのブロックの各々はまた、本明細書では、互換的に「ユニット」(たとえば、コーディングツリーユニット(CTU)、コーディングユニット、予測ユニット(PU)、変換ユニット(TU)など)と呼ばれることがある。いくつかの場合には、ユニットは、ビットストリーム中で符号化されるコーディング論理ユニットを示し得、ブロックは、プロセスがターゲットであるビデオフレームバッファの一部分を示し得る。
[0072] インター予測モードの場合、ビデオエンコーダは、参照フレームまたは参照ピクチャと呼ばれる、別の時間ロケーション中にあるフレーム(またはピクチャ)中で符号化されているブロックと同様のブロックを探索することができる。ビデオエンコーダは、その探索を、符号化されるべきブロックからのある空間変位に制限し得る。最良の一致が、水平変位成分と垂直変位成分とを含む2次元(2D)動きベクトルを使用して特定され得る。イントラ予測モードの場合、ビデオエンコーダは、同じピクチャ内の前に符号化された隣接ブロックからのデータに基づいて、空間予測技法を使用して、予測されたブロックを形成し得る。
[0073] ビデオエンコーダは予測誤差を決定し得る。たとえば、予測は、符号化されているブロック中のピクセル値と予測されたブロック中のピクセル値との間の差分として決定され得る。予測誤差は残差と呼ばれることもある。ビデオエンコーダはまた、変換係数を生成するために、予測誤差に変換(たとえば、離散コサイン変換(DCT)または他の好適な変換)を適用し得る。変換の後に、ビデオエンコーダは変換係数を量子化し得る。量子化された変換係数と動きベクトルとは、シンタックス要素を使用して表され、制御情報とともに、ビデオシーケンスのコード化表現を形成し得る。いくつかの事例では、ビデオエンコーダはシンタックス要素をエントロピーコーディングし、それにより、さらに、それらの表現のために必要とされるビット数を低減し得る。
[0074] ビデオデコーダは、上記で説明されたシンタックス要素および制御情報を使用して、現在フレームを復号するための予測データ(たとえば、予測ブロック)を構築し得る。たとえば、ビデオデコーダは、予測されたブロックと圧縮された予測誤差とを加え得る。ビデオデコーダは、量子化された係数を使用して変換基底関数を重み付けすることによって、圧縮された予測誤差を決定し得る。再構築されたフレームと元のフレームとの間の差分は、再構築誤差と呼ばれる。
[0075] (すべての目的のためにその全体が参照により本明細書に組み込まれる)国際規格番号ISO/IEC23001-11をもつ、エネルギー効率の高いメディア消費(グリーンメタデータまたはグリーンMPEG)規格は、メディア消費中のエネルギー使用の低減を促進するためにグリーンメタデータを指定する。エネルギー効率の高い復号のためのグリーンメタデータは、情報の2つのセット、すなわち、複雑さメトリック(CM)メタデータと復号演算低減要求(DOR-Req:Decoding Operation Reduction Request)メタデータとを指定する。たとえば、デコーダは、プロセッサの動作周波数を変動させ、したがって、デコーダ電力消費を低減するために、CMメタデータを使用することができる。1つの例示的な例では、ポイントツーポイントビデオ会議アプリケーションでは、(符号化ビットストリームを生成することができる)リモートエンコーダは、DOR-Reqメタデータを受信することができ、ビットストリームの復号複雑さを修正するためにDOR-Reqメタデータを使用し、したがって、ローカルデコーダ電力消費を低減することができる。ビットストリームの復号複雑さをシグナリングすることによって、ローカルデコーダは、ビットストリームを復号するために必要とされる電力量を推定することと、たとえば、より複雑でない(またはより複雑な)ビットストリームを要求することによって、残っているバッテリー電力の量に基づいて、ビットストリームを潜在的に適応させることとを行うことが可能であり得る。いくつかの場合には、補足エンハンスメント情報(SEI)メッセージが、ビットストリーム(たとえば、AVC、HEVC、VVC、AV1、または他のストリーム)中でグリーンメタデータをシグナリングするために使用され得る。
[0076] ISO/IEC23001-11の第2版においてAVCおよびHEVCについてグリーンメタデータが指定された。第3版グリーンMPEG(MPEG MDS20584_WG03_N00330)のワーキングドラフトにおいて、VVCコーダデコーダ(コーデック)をサポートするための新しいグリーンメタデータが提案され、CMは、様々なグラニュラリティにおいて指定された。シンタックス構造は、様々な期間タイプにわたってより多くのグラニュラリティタイプをサポートするために改善され得る。さらに、単一のタイプを使用してスライス、タイル、サブピクチャ、またはレイヤグラニュラリティについてのCMをシグナリングすることは、問題になり得る。VVCの場合など、いくつかの場合には、エンコーダは、符号化されているビデオのピクチャ(たとえば、フレーム)を、スライス、タイル、サブピクチャ、レイヤなど、1つまたは複数の部分に分割し得る。たとえば、ピクチャは1つまたは複数のタイルに分割され得、各タイルは1つまたは複数のブロックに分割され得る。スライスは、複数のタイルまたはタイル内の複数のブロックを含み得る。サブピクチャは、1つまたは複数の完全な矩形スライスであり得、各矩形スライスは、ピクチャの矩形領域をカバーする。サブピクチャは、同じピクチャの他のサブピクチャとは無関係にコーディングされることもされないこともある。
[0077] 現在、AVC/HEVCの場合などのデコーダは、CMがスライスについて計算されるのかタイルについて計算されるのかを識別するために、スライスの数およびタイルの数を使用することができる。たとえば、スライスの数がタイルの数に等しいとき、CMグラニュラリティを識別することは複雑である。さらに、AVCおよびHEVCは、サブピクチャグラニュラリティをサポートしない。サブピクチャグラニュラリティとレイヤグラニュラリティとを定義することとともに、異なるタイプにおいてスライスグラニュラリティとタイルグラニュラリティとを定義することは有益であろう。
[0078] VVCは、サブピクチャがコード化レイヤビデオシーケンス(CLVS)内の異なるサブピクチャと置き換えられることを可能にする。コード化ビデオシーケンス(CVS)は、CLVSのレイヤ単位のセットであり得る。いくつかの場合には、サブピクチャ識別子(ID)を使用してCMを特定のサブピクチャにマッピングするためのシグナリングが必要である。
[0079] また、VVCは、CLVSの解像度変更を可能にする。いくつかの場合には、スライスまたはタイルごとの正規化された符号化された統計値を解釈するために期間にわたる総コーディングブロックの数を導出するために、各スライスヘッダをパースすることは複雑であり得る。スライスヘッダはスライスとともに含まれ得、スライスヘッダは、関連するスライスに関する情報を伝達し得る。ピクチャのすべてのスライスに適用される情報は、ピクチャヘッダ中で伝達され得る。CTBの総数を示すためのシンタックス要素は、導出を簡略化するために有益であろう。
[0080] 現在、CMは、すべてのブロックがイントラコード化されたとき、イントラコード化ブロック統計値を提供する。PスライスおよびBスライスがインターコード化ブロックよりも多くのイントラコード化ブロックを有し得ること、あるいはPピクチャまたはBピクチャがインターコード化ブロックよりも多くのイントラコード化ブロックを有し得ることが可能である。その結果、CMは、複雑さを正確に表さないことがある。イントラコード化ブロックは、同じピクチャ内の別のブロックに基づいて予測されるブロックを指し、インターコード化ブロックは、異なるピクチャからの別のブロックに基づいて予測されるブロックを指す。Iスライスは、イントラコード化ブロックを含み、インターコード化ブロックを含まないスライスを指す。PスライスおよびBスライスは、イントラコード化ブロックとインターコード化ブロックの両方を含むことができる。
[0081] さらに、ピクチャ全体に対して品質メトリックを適用するのではなく、品質メトリックは、VVC中の個々のサブピクチャにそれぞれ適用され得る。
[0082] 本開示は、複雑さメトリック(CM)シグナリングを改善するためのものなど、拡張グリーンメタデータシグナリングを提供するためのシステム、装置、方法、およびコンピュータ可読媒体(「システムおよび技法」と総称される)について説明する。たとえば、いくつかの場合には、グラニュラリティタイプインジケータ(たとえば、granularity_typeなどのグラニュラリティタイプシンタックス要素)が、スライス、タイル、サブピクチャ、スケーラブルレイヤ、および/または他のグラニュラリティなど、様々なグラニュラリティをサポートするために提供される。いくつかの例では、期間タイプシンタックス要素(たとえば、period_type)のセマンティクスが修正される。
[0083] いくつかの場合には、システムおよび技法は、改善された複雑さメトリック(CM)シグナリングを提供する。たとえば、本明細書で説明されるシステムおよび技法は、ビデオコーデック(たとえば、ビデオエンコーダ、ビデオエンコーダ、または組み合わせられたビデオエンコーダデコーダ)が、ビデオの複数のピクチャについて、スライス、タイル、サブピクチャ、および/またはレイヤなど、ピクチャの部分に適用可能であるCM値を指定する能力を提供する。たとえば、前に説明されたように、サブピクチャが、符号化ビデオについて定義され得る。サブピクチャは、ピクチャの右上隅など、ピクチャの一部分を含む。CMがサブピクチャについて指定され得、ここで、そのCMは、ピクチャのスライス(または他の一部分)について指定される少なくとも1つの他のCMとは異なる。サブピクチャに関連するCM値は、第1のピクチャからの30個のピクチャについてなど、複数のピクチャについて1回定義され得る。CMは、符号化ビデオとともに含まれるメタデータの一部として提供され得る。単一のCM値が複数のフレームにわたるサブピクチャについて指定されることを可能にすることは、ピクチャの部分についてのCMを定義するための増加されたフレキシビリティおよびグラニュラリティを可能にしながら符号化ビデオについてのメタデータのサイズを低減するのに役立つ。
[0084] いくつかの態様では、解像度変更に関連するCMシグナリング変更が提供される。いくつかの場合には、イントラコード化ブロック統計値に関するCMシグナリング変更が提供される。いくつかの態様では、サブピクチャ品質メトリックが提供される。
[0085] 本明細書で説明されるシステムおよび技法は、汎用ビデオコーディング(VVC)、高効率ビデオコーディング(HEVC)、アドバンストビデオコーディング(AVC)、VP9、AV1フォーマット/コーデックなど、既存のビデオコーデック、および/あるいは開発中のまたは開発されることになる他のビデオコーディング規格、コーデック、フォーマットなどのいずれかに適用され得る。
[0086] 図1は、符号化デバイス104と復号デバイス112とを含むシステム100の一例を示すブロック図である。符号化デバイス104はソースデバイスの一部であり得、復号デバイス112は受信デバイスの一部であり得る。ソースデバイスおよび/または受信デバイスは、モバイルまたは固定電話ハンドセット(たとえば、スマートフォン、セルラー電話など)、デスクトップコンピュータ、ラップトップまたはノートブックコンピュータ、タブレットコンピュータ、セットトップボックス、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイス、インターネットプロトコル(IP)カメラ、あるいは任意の他の好適な電子デバイスなど、電子デバイスを含み得る。いくつかの例では、ソースデバイスと受信デバイスとは、ワイヤレス通信のための1つまたは複数のワイヤレストランシーバを含み得る。本明細書で説明されるコーディング技法は、(たとえば、インターネットを介した)ストリーミングビデオ送信、テレビジョン放送または送信、データ記憶媒体上に記憶するためのデジタルビデオの符号化、データ記憶媒体上に記憶されたデジタルビデオの復号、あるいは他の適用例を含む、様々なマルチメディア適用例におけるビデオコーディングに適用可能である。本明細書で使用されるコーディングという用語は、符号化および/または復号を指すことができる。いくつかの例では、システム100は、ビデオ会議、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、ゲーミング、および/またはビデオテレフォニーなどの適用例をサポートするために、一方向または二方向のビデオ送信をサポートすることができる。
[0087] 符号化デバイス104(またはエンコーダ)は、符号化されたビデオビットストリームを生成するためにビデオコーディング規格、フォーマット、コーデック、またはプロトコルを使用してビデオデータを符号化するために使用され得る。ビデオコーディング規格およびフォーマット/コーデックの例は、ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262またはISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual、そのスケーラブルビデオコーディング(SVC)拡張とマルチビュービデオコーディング(MVC)拡張とを含む(ISO/IEC MPEG-4 AVCとしても知られる)ITU-T H.264、高効率ビデオコーディング(HEVC)またはITU-T H.265、および汎用ビデオコーディング(VVC)またはITU-T H.266を含む。範囲およびスクリーンコンテンツコーディング拡張、3Dビデオコーディング(3D-HEVC)ならびにマルチビュー拡張(MV-HEVC)ならびにスケーラブル拡張(SHVC)を含む、マルチレイヤビデオコーディングに対処するHEVCへの様々な拡張が存在する。HEVCおよびそれの拡張は、ITU-Tビデオコーディングエキスパートグループ(VCEG)およびISO/IECモーションピクチャエキスパートグループ(MPEG)のジョイントコラボレーションチームオンビデオコーディング(JCT-VC)ならびにジョイントコラボレーションチームオン3Dビデオコーディング拡張開発(JCT-3V)によって開発された。VP9、Alliance for Open Media Alliance of Open Media(AOMedia)によって開発されたAOMedia Video1(AV1)、およびエッセンシャルビデオコーディング(EVC)は、本明細書で説明される技法が適用され得る他のビデオコーディング規格である。
[0088] 本明細書で説明される技法は、既存のビデオコーデック(たとえば、高効率ビデオコーディング(HEVC)、アドバンストビデオコーディング(AVC)、または他の好適な既存のビデオコーデック)のいずれかに適用され得るか、ならびに/あるいは、たとえば、VVC、および/または開発中のもしくは開発されることになる他のビデオコーディング規格など、任意の開発されているビデオコーディング規格および/または将来のビデオコーディング規格のための効率的なコーディングツールであり得る。たとえば、本明細書で説明される例は、VVC、HEVC、AVC、および/またはそれらの拡張などのビデオコーデックを使用して実施され得る。しかしながら、本明細書で説明される技法およびシステムは、MPEG、JPEG(または静止画像のための他のコーディング規格)、VP9、AV1、それらの拡張、あるいはすでに利用可能であるか、またはまだ利用可能ではないか、もしくは開発されていない他の好適なコーディング規格など、他のコーディング規格、コーデック、またはフォーマットにも適用可能であり得る。たとえば、いくつかの例では、符号化デバイス104および/または復号デバイス112は、AV1、AVIの拡張、および/あるいはAV1の後継バージョン(たとえば、AV2)、あるいは他のプロプライエタリフォーマットまたは業界規格など、プロプライエタリビデオコーデック/フォーマットに従って動作し得る。したがって、本明細書で説明される技法およびシステムは、特定のビデオコーディング規格を参照しながら説明され得るが、当業者は、説明がその特定の規格にのみ適用されると解釈されるべきではないことを諒解されよう。
[0089] 図1を参照すると、ビデオソース102は、符号化デバイス104にビデオデータを提供し得る。ビデオソース102は、ソースデバイスの一部であり得るか、またはソースデバイス以外のデバイスの一部であり得る。ビデオソース102は、ビデオキャプチャデバイス(たとえば、ビデオカメラ、カメラフォン、ビデオフォンなど)、記憶されたビデオを含んでいるビデオアーカイブ、ビデオデータを提供するビデオサーバまたはコンテンツプロバイダ、ビデオサーバまたはコンテンツプロバイダからビデオを受信するビデオフィードインターフェース、コンピュータグラフィックスビデオデータを生成するためのコンピュータグラフィックスシステム、そのようなソースの組合せ、あるいは任意の他の好適なビデオソースを含み得る。
[0090] ビデオソース102からのビデオデータは、1つまたは複数の入力ピクチャまたはフレームを含み得る。ピクチャまたはフレームは、いくつかの場合には、ビデオの一部である静止画像である。いくつかの例では、ビデオソース102からのデータは、ビデオの一部でない静止画像であり得る。HEVC、VVC、および他のビデオコーディング仕様では、ビデオシーケンスは、一連のピクチャを含むことができる。ピクチャは、SL、SCb、およびSCrと示される、3つのサンプルアレイを含み得る。SLはルーマサンプルの2次元アレイであり、SCbはCbクロミナンスサンプルの2次元アレイであり、SCrはCrクロミナンスサンプルの2次元アレイである。クロミナンスサンプルは、本明細書では「クロマ」サンプルと呼ばれることもある。ピクセルは、ピクチャのアレイ中の所与のロケーションについてのすべての3つの成分(ルーマおよびクロマサンプル)を指すことがある。他の事例では、ピクチャは、モノクロームであり得、ルーマサンプルのアレイのみを含み得、その場合、ピクセルおよびサンプルという用語は互換的に使用され得る。説明の目的で個々のサンプルに言及する本明細書で説明される例示的な技法に関して、同じ技法がピクセル(たとえば、ピクチャのアレイ中の所与のロケーションについてのすべて3つのサンプル成分)に適用され得る。説明の目的でピクセル(たとえば、ピクチャのアレイ中の所与のロケーションについてのすべて3つのサンプル成分)に言及する本明細書で説明される例示的な技法に関して、同じ技法が個々のサンプルに適用され得る。
[0091] 符号化デバイス104のエンコーダエンジン106(またはエンコーダ)は、符号化されたビデオビットストリームを生成するためにビデオデータを符号化する。いくつかの例では、符号化されたビデオビットストリーム(または「ビデオビットストリーム」または「ビットストリーム」)は、一連の1つまたは複数のコード化ビデオシーケンスである。コード化ビデオシーケンス(CVS)は、ベースレイヤ中の、いくつかのプロパティをもつランダムアクセスポイントピクチャを有するアクセスユニット(AU)で開始し、ベースレイヤ中の、いくつかのプロパティをもつランダムアクセスポイントピクチャを有する次のAUまでの、次のAUを含まない一連のAUを含む。たとえば、CVSを開始するランダムアクセスポイントピクチャのいくつかのプロパティは、1に等しいRASLフラグ(たとえば、NoRaslOutputFlag)を含み得る。他の場合、(0に等しいRASLフラグをもつ)ランダムアクセスポイントピクチャはCVSを開始しない。アクセスユニット(AU)は、1つまたは複数のコード化ピクチャと、同じ出力時間を共有するコード化ピクチャに対応する制御情報とを含む。ピクチャのコード化スライスは、ビットストリームレベルにおいて、ネットワークアブストラクションレイヤ(NAL)ユニットと呼ばれるデータユニット中にカプセル化される。たとえば、HEVCビデオビットストリームは、NALユニットを含む1つまたは複数のCVSを含み得る。NALユニットの各々はNALユニットヘッダを有する。一例では、ヘッダは、(マルチレイヤ拡張を除いて)H.264/AVCでは1バイトであり、HEVCでは2バイトである。NALユニットヘッダ中のシンタックス要素は、指定されたビットをとり、したがって、特にトランスポートストリーム、リアルタイムトランスポート(RTP)プロトコル、ファイルフォーマットなど、すべての種類のシステムおよびトランスポートレイヤに可視である。
[0092] ビデオコーディングレイヤ(VCL)NALユニットと非VCL NALユニットとを含む、NALユニットの2つのクラスがHEVC規格に存在する。VCL NALユニットは、コード化ビデオビットストリームを形成するコード化ピクチャデータを含む。たとえば、コード化ビデオビットストリームを形成するビットのシーケンスは、VCL NALユニット中に存在する。VCL NALユニットは、コーディングされたピクチャデータの(以下で説明される)1つのスライスまたはスライスセグメントを含むことができ、非VCL NALユニットは、1つまたは複数のコーディングされたピクチャに関係する制御情報を含む。いくつかの場合には、NALユニットはパケットと呼ばれることがある。HEVC AUは、コーディングされたピクチャデータを含んでいるVCL NALユニットと、(もしあれば)コーディングされたピクチャデータに対応する非VCL NALユニットとを含む。非VCL NALユニットは、他の情報に加えて、符号化ビデオビットストリームに関係する高レベル情報をもつパラメータセットを含んでいることがある。たとえば、パラメータセットは、ビデオパラメータセット(VPS)と、シーケンスパラメータセット(SPS)と、ピクチャパラメータセット(PPS)とを含み得る。いくつかの場合には、ビットストリームの各スライスまたは他の部分は、復号デバイス112がビットストリームのスライスまたは他の部分を復号するために使用され得る情報にアクセスすることを可能にするために単一のアクティブなPPS、SPS、および/またはVPSを参照することができる。
[0093] NALユニットは、ビデオ中のピクチャのコード化表現など、ビデオデータのコード化表現を形成するビットのシーケンス(たとえば、符号化ビデオビットストリーム、ビットストリームのCVSなど)を含んでいることがある。エンコーダエンジン106は、各ピクチャを複数のスライスに区分することによってピクチャのコード化表現を生成する。スライスは、スライス中の情報が、同じピクチャ内の他のスライスからのデータへの依存性なしにコーディングされるように、他のスライスから独立している。スライスは、独立したスライスセグメントを含む1つまたは複数のスライスセグメントと、存在する場合、前のスライスセグメントに依存する1つまたは複数の依存するスライスセグメントとを含む。
[0094] HEVCでは、スライスは、次いで、ルーマサンプルおよびクロマサンプルのコーディングツリーブロック(CTB)に区分される。ルーマサンプルのCTBおよびクロマサンプルの1つまたは複数のCTBは、サンプルのためのシンタックスとともに、コーディングツリーユニット(CTU)と呼ばれる。CTUは「ツリーブロック」または「最大コーディングユニット」(LCU)と呼ばれることもある。CTUは、HEVC符号化のための基本処理ユニットである。CTUは、様々なサイズの複数のコーディングユニット(CU)にスプリットされ得る。CUは、コーディングブロック(CB)と呼ばれるルーマおよびクロマサンプルアレイを含んでいる。
[0095] ルーマおよびクロマCBは、予測ブロック(PB)にさらにスプリットされ得る。PBは、(利用可能なとき、または使用のために有効にされたとき)インター予測またはイントラブロックコピー(IBC)予測のために同じ動きパラメータを使用するルーマ成分またはクロマ成分のサンプルのブロックである。ルーマPBおよび1つまたは複数のクロマPBは、関連するシンタックスとともに、予測ユニット(PU)を形成する。インター予測の場合、動きパラメータのセット(たとえば、1つまたは複数の動きベクトル、参照インデックスなど)は、PUごとにビットストリーム中でシグナリングされ、ルーマPBおよび1つまたは複数のクロマPBのインター予測のために使用される。動きパラメータは動き情報と呼ばれることもある。CBはまた、1つまたは複数の変換ブロック(TB)に区分され得る。TBは、予測残差信号をコーディングするために残差変換(たとえば、いくつかの場合には、同じ2次元変換)が適用される色成分のサンプルの正方形ブロックを表す。変換ユニット(TU)は、ルーマおよびクロマサンプルのTBと、対応するシンタックス要素とを表す。変換コーディングが以下でより詳細に説明される。
[0096] CUのサイズは、コーディングモードのサイズに対応し、形状が正方形であり得る。たとえば、CUのサイズは、8×8サンプル、16×16サンプル、32×32サンプル、64×64サンプル、または対応するCTUのサイズまでの任意の他の適切なサイズであり得る。「N×N」という句は、本明細書では、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法(たとえば、8ピクセル×8ピクセル)を指すために使用される。ブロック中のピクセルは行および列に配置され得る。いくつかの実装形態では、ブロックは、水平方向において垂直方向と同じ数のピクセルを有しないことがある。CUに関連するシンタックスデータは、たとえば、1つまたは複数のPUへのCUの区分を表し得る。区分モードは、CUがイントラ予測モード符号化されるのか、インター予測モード符号化されるのかの間で異なり得る。PUは、形状が非正方形になるように区分され得る。CUに関連するシンタックスデータは、たとえば、CTUに従う1つまたは複数のTUへのCUの区分をも表し得る。TUは、形状が正方形または非正方形であり得る。
[0097] HEVC規格によれば、変換は、変換ユニット(TU)を使用して実施され得る。TUは、異なるCUでは異なり得る。TUは、所与のCU内のPUのサイズに基づいてサイズ決定され得る。TUは、PUと同じサイズであるか、またはPUよりも小さいことがある。いくつかの例では、CUに対応する残差サンプルは、残差クワッドツリー(RQT:residual quad tree)として知られるクワッドツリー構造を使用して、より小さいユニットに再分割され得る。RQTのリーフノードはTUに対応し得る。TUに関連するピクセル差分値は、変換係数を作り出すために変換され得る。変換係数は、次いで、エンコーダエンジン106によって量子化され得る。
[0098] ビデオデータのピクチャがCUに区分されると、エンコーダエンジン106は、予測モードを使用して各PUを予測する。予測ユニットまたは予測ブロックは、次いで、(以下で説明される)残差を得るために元のビデオデータから減算される。CUごとに、シンタックスデータを使用してビットストリーム内で予測モードがシグナリングされ得る。予測モードは、イントラ予測(またはピクチャ内予測)またはインター予測(またはピクチャ間予測)を含み得る。イントラ予測は、ピクチャ内の空間的に隣接するサンプル間の相関を利用する。たとえば、イントラ予測を使用して、各PUは、たとえば、PUに関する平均値を見つけるためのDC予測、平坦面をPUに適合させるための平面予測、隣接データから外挿するための方向予測、または任意の他の好適なタイプの予測を使用して、同じピクチャ中の隣接画像データから予測される。インター予測は、画像サンプルのブロックについての動き補償予測を導出するためにピクチャ間の時間相関を使用する。たとえば、インター予測を使用して、各PUは、(出力順序において現在ピクチャの前または後の)1つまたは複数の参照ピクチャ中の画像データからの動き補償予測を使用して予測される。ピクチャ間予測を使用してピクチャエリアをコーディングすべきなのか、ピクチャ内予測を使用してピクチャエリアをコーディングすべきなのかの決定は、たとえば、CUレベルにおいて行われ得る。
[0099] エンコーダエンジン106および(以下でより詳細に説明される)デコーダエンジン116は、VVCに従って動作するように構成され得る。VVCによれば、(エンコーダエンジン106および/またはデコーダエンジン116などの)ビデオコーダは、ピクチャを複数のコーディングツリーユニット(CTU)に区分する(ここで、ルーマサンプルのCTBとクロマサンプルの1つまたは複数のCTBとが、サンプルのためのシンタックスとともに、CTUと呼ばれる)。ビデオコーダは、クワッドツリーバイナリツリー(QTBT)構造またはマルチタイプツリー(MTT)構造など、ツリー構造に従ってCTUを区分することができる。QTBT構造は、HEVCのCUとPUとTUとの間の分離など、複数の区分タイプの概念を除去する。QTBT構造は、クワッドツリー区分に従って区分される第1のレベルと、バイナリツリー区分に従って区分される第2のレベルとを含む、2つのレベルを含む。QTBT構造のルートノードは、CTUに対応する。バイナリツリーのリーフノードは、コーディングユニット(CU)に対応する。
[0100] MTT区分構造では、ブロックは、クワッドツリー区分と、バイナリツリー区分と、1つまたは複数のタイプのトリプルツリー区分とを使用して区分され得る。トリプルツリー区分は、ブロックが3つのサブブロックにスプリットされる区分である。いくつかの例では、トリプルツリー区分は、中心を通して元のブロックを分割することなしにブロックを3つのサブブロックに分割する。MTTにおける区分タイプ(たとえば、クワッドツリー、バイナリツリー、およびトライプツリー)は、対称的または非対称的であり得る。
[0101] AV1コーデックに従って動作するとき、ビデオエンコーダ200およびビデオデコーダ300は、ブロック中のビデオデータをコーディングするように構成され得る。AV1では、処理され得る最大コーディングブロックは、スーパーブロックと呼ばれる。AV1では、スーパーブロックは、128×128ルーマサンプルまたは64×64ルーマサンプルのいずれかであり得る。しかしながら、後継ビデオコーディングフォーマット(たとえば、AV2)では、スーパーブロックは、異なる(たとえば、より大きい)ルーマサンプルサイズによって定義され得る。いくつかの例では、スーパーブロックは、ブロッククワッドツリーのトップレベルである。ビデオエンコーダ200は、さらに、スーパーブロックをより小さいコーディングブロックに区分し得る。ビデオエンコーダ200は、正方形または非正方形区分を使用してスーパーブロックおよび他のコーディングブロックをより小さいブロックに区分し得る。非正方形ブロックは、N/2×N、N×N/2、N/4×N、およびN×N/4ブロックを含み得る。ビデオエンコーダ200およびビデオデコーダ300は、コーディングブロックの各々に対して別個の予測および変換プロセスを実施し得る。
[0102] AV1はまた、ビデオデータのタイルを定義する。タイルは、他のタイルから独立してコーディングされ得るスーパーブロックの矩形アレイである。すなわち、ビデオエンコーダ200およびビデオデコーダ300は、他のタイルからのビデオデータを使用せずにタイル内のコーディングブロックを、それぞれ、符号化および復号し得る。ただし、ビデオエンコーダ200およびビデオデコーダ300は、タイル境界にわたってフィルタ処理を実施し得る。タイルは、サイズが均一または非均一であり得る。タイルベースコーディングは、エンコーダおよびデコーダ実装形態のための並列処理および/またはマルチスレッディングを可能にし得る。
[0103] いくつかの例では、ビデオコーダは、ルミナンス成分とクロミナンス成分との各々を表すために単一のQTBTまたはMTT構造を使用することができ、他の例では、ビデオコーダは、ルミナンス成分のための1つのQTBTまたはMTT構造、および両方のクロミナンス成分のための別のQTBTまたはMTT構造(またはそれぞれのクロミナンス成分のための2つのQTBTおよび/またはMTT構造)など、2つまたはそれ以上のQTBTまたはMTT構造を使用することができる。
[0104] ビデオコーダは、クワッドツリー区分、QTBT区分、MTT区分、スーパーブロック区分、または他の区分構造を使用するように構成され得る。
[0105] いくつかの例では、ピクチャの1つまたは複数のスライスは、スライスタイプを割り当てられる。スライスタイプは、イントラコード化スライス(Iスライス)と、インターコード化Pスライスと、インターコード化Bスライスとを含む。Iスライス(イントラコード化フレーム、独立して復号可能)は、イントラ予測によってのみコーディングされるピクチャのスライスであり、したがって、Iスライスは、スライスの任意の予測ユニットまたは予測ブロックを予測するためにフレーム内のデータのみを必要とするので、独立して復号可能である。Pスライス(単方向予測されるフレーム)は、イントラ予測を用いて、および単方向インター予測を用いてコーディングされ得るピクチャのスライスである。Pスライス内の各予測ユニットまたは予測ブロックは、イントラ予測またはインター予測のいずれかを用いてコーディングされる。インター予測が適用されるとき、予測ユニットまたは予測ブロックは、1つの参照ピクチャによってのみ予測され、したがって、参照サンプルは、1つのフレームの1つの参照領域からのみのものである。Bスライス(双方向予測フレーム)は、イントラ予測を用いて、およびインター予測(たとえば、双予測または単予測のいずれか)を用いてコーディングされ得るピクチャのスライスである。Bスライスの予測ユニットまたは予測ブロックは、2つの参照ピクチャから双方向予測され得、ここで、各ピクチャが1つの参照領域を導き(contribute)、双方向予測されたブロックの予測信号を作り出すために、2つの参照領域のサンプルセットが(たとえば、等しい重みを用いて、または異なる重みを用いて)重み付けされる。上記で説明されたように、1つのピクチャのスライスが独立してコーディングされる。いくつかの場合には、ピクチャは、ただ1つのスライスとしてコーディングされ得る。
[0106] 上述のように、ピクチャのピクチャ内予測は、ピクチャ内の空間的に隣接するサンプル間の相関を利用する。(「イントラモード」とも呼ばれる)複数のイントラ予測モードがある。いくつかの例では、ルーマブロックのイントラ予測は、平面モードと、DCモードと、33個の角モード(たとえば、対角イントラ予測モードおよび対角イントラ予測モードに隣接する角モード)とを含む35個のモードを含む。イントラ予測の35個のモードは、以下の表1に示されているようにインデックス付けされる。他の例では、33個の角モードによってまだ表されていないことがある予測角度を含むより多くのイントラモードが定義され得る。他の例では、角モードに関連する予測角度は、HEVCにおいて使用されるものとは異なり得る。
Figure 2024531112000002
[0107] ピクチャ間予測は、画像サンプルのブロックについての動き補償予測を導出するためにピクチャ間の時間相関を使用する。並進動きモデルを使用して、前に復号されたピクチャ(参照ピクチャ)中のブロックの位置は、動きベクトル(Δx,Δy)によって示され、Δxは、現在ブロックの位置に対する参照ブロックの水平変位を指定し、Δyはその垂直変位を指定する。いくつかの場合には、動きベクトル(Δx,Δy)は、(整数正確さ(accuracy)とも呼ばれる)整数サンプル正確さであり得、その場合、動きベクトルは、参照フレームの整数ペルグリッド(または整数ピクセルサンプリンググリッド)を指す。いくつかの場合には、動きベクトル(Δx,Δy)は、参照フレームの整数ペルグリッドに制限されることなしに、基礎をなすオブジェクトの移動をより正確にキャプチャするために、(分数ペル正確さまたは非整数正確さとも呼ばれる)分数サンプル正確さのものであり得る。動きベクトルの正確さは、動きベクトルの量子化レベルによって表され得る。たとえば、量子化レベルは、整数正確さ(たとえば、1ピクセル)または分数ペル正確さ(たとえば、1/4ピクセル、1/2ピクセル、または他のサブピクセル値)であり得る。対応する動きベクトルが分数サンプル正確さを有するとき、予測信号を導出するために、参照ピクチャに補間が適用される。たとえば、整数位置において利用可能なサンプルは、分数位置における値を推定するために、(たとえば、1つまたは複数の補間フィルタを使用して)フィルタ処理され得る。前に復号された参照ピクチャは、参照ピクチャリストへの参照インデックス(refIdx)によって示される。動きベクトルおよび参照インデックスは、動きパラメータと呼ばれることがある。単予測と双予測とを含む、2つの種類のピクチャ間予測が実施され得る。
[0108] (双方向インター予測とも呼ばれる)双予測を使用するインター予測の場合、動きパラメータの2つのセット(Δx0、y0、refIdx0、および、Δx1、y1、refIdx1)が、(同じ参照ピクチャから、または場合によっては異なる参照ピクチャから)2つの動き補償予測を生成するために使用される。たとえば、双予測の場合、各予測ブロックは、2つの動き補償予測信号を使用し、B予測ユニットを生成する。2つの動き補償予測は、次いで、最終の動き補償予測を得るために組み合わせられる。たとえば、2つの動き補償予測は、平均化によって組み合わせられ得る。別の例では、重み付け予測が使用され得、その場合、異なる重みが、各動き補償予測に適用され得る。双予測において使用され得る参照ピクチャは、リスト0およびリスト1として示される、2つの別個のリストに記憶される。動きパラメータは、動き推定プロセスを使用してエンコーダにおいて導出され得る。
[0109] (単方向インター予測とも呼ばれる)単予測を使用するインター予測の場合、動きパラメータ(Δx0,y0,refIdx0)の1つのセットが、参照ピクチャから動き補償予測を生成するために使用される。たとえば、単予測の場合、各予測ブロックは、高々1つの動き補償予測信号を使用し、P予測ユニットを生成する。
[0110] PUは、予測プロセスに関係するデータ(たとえば、動きパラメータまたは他の好適なデータ)を含み得る。たとえば、PUがイントラ予測を使用して符号化されるとき、PUは、PUのためのイントラ予測モードを表すデータを含み得る。別の例として、PUがインター予測を使用して符号化されるとき、PUは、PUのための動きベクトルを定義するデータを含み得る。PUのための動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分(Δx)、動きベクトルの垂直成分(Δy)、動きベクトルの解像度(たとえば、整数精度(precision)、1/4ピクセル精度、または1/8ピクセル精度)、動きベクトルが指す参照ピクチャ、参照インデックス、動きベクトルのための参照ピクチャリスト(たとえば、リスト0、リスト1、またはリストC)、またはそれらの任意の組合せを表し得る。
[0111] AV1は、ビデオデータのコーディングブロックを符号化および復号するための2つの一般的な技法を含む。2つの一般的な技法は、イントラ予測(たとえば、イントラフレーム予測または空間予測)およびインター予測(たとえば、インターフレーム予測または時間予測)である。AV1のコンテキストでは、イントラ予測モードを使用するビデオデータの現在フレームのブロックを予測するとき、ビデオエンコーダ200およびビデオデコーダ300は、ビデオデータの他のフレームからのビデオデータを使用しない。たいていのイントラ予測モードでは、ビデオ符号化デバイス104は、現在ブロック中のサンプル値と、同じフレーム中の参照サンプルから生成される予測される値との間の差分に基づいて、現在フレームのブロックを符号化する。ビデオ符号化デバイス104は、イントラ予測モードに基づいて参照サンプルから生成される予測される値を決定する。
[0112] イントラ予測および/またはインター予測を使用して予測を実施した後に、符号化デバイス104は、変換および量子化を実施することができる。たとえば、予測の後に、エンコーダエンジン106は、PUに対応する残差値を計算し得る。残差値は、コーディングされているピクセルの現在ブロック(PU)と、現在ブロックを予測するために使用される予測ブロック(たとえば、現在ブロックの予測されたバージョン)との間のピクセル差分値を備え得る。たとえば、予測ブロックを生成した(たとえば、インター予測またはイントラ予測を出した)後に、エンコーダエンジン106は、現在ブロックから、予測ユニットによって作り出された予測ブロックを減算することによって、残差ブロックを生成することができる。残差ブロックは、現在ブロックのピクセル値と予測ブロックのピクセル値との間の差分を定量化するピクセル差分値のセットを含む。いくつかの例では、残差ブロックは、2次元ブロックフォーマット(たとえば、ピクセル値の2次元行列またはアレイ)で表され得る。そのような例では、残差ブロックはピクセル値の2次元表現である。
[0113] 予測が実施された後に残存していることがあるいずれの残差データも、離散コサイン変換、離散サイン変換、整数変換、ウェーブレット変換、他の好適な変換関数、またはそれらの任意の組合せに基づき得るブロック変換を使用して変換される。いくつかの場合には、1つまたは複数のブロック変換(たとえば、サイズ32×32、16×16、8×8、4×4、または他の好適なサイズ)が各CU中の残差データに適用され得る。いくつかの実施形態では、エンコーダエンジン106によって実装される変換および量子化プロセスのためにTUが使用され得る。1つまたは複数のPUを有する所与のCUは、1つまたは複数のTUをも含み得る。以下でさらに詳細に説明されるように、残差値は、ブロック変換を使用して変換係数に変換され得、次いで、エントロピーコーディングのためのシリアル化変換係数を作り出すために、TUを使用して量子化および走査され得る。
[0114] いくつかの実施形態では、CUのPUを使用したイントラ予測コーディングまたはインター予測コーディングの後に、エンコーダエンジン106は、CUのTUのための残差データを計算し得る。PUは、空間ドメイン(またはピクセルドメイン)においてピクセルデータを備え得る。TUは、ブロック変換の適用の後に変換ドメインにおいて係数を備え得る。前記のように、残差データは、符号化されていないピクチャのピクセルとPUに対応する予測値との間のピクセル差分値に対応し得る。エンコーダエンジン106は、CUのための残差データを含むTUを形成し得、次いで、CUのための変換係数を作り出すためにTUを変換し得る。
[0115] エンコーダエンジン106は、変換係数の量子化を実施し得る。量子化は、係数を表すために使用されるデータの量を低減するために変換係数を量子化することによって、さらなる圧縮を提供する。たとえば、量子化は、係数の一部または全部に関連するビット深度を低減し得る。一例では、nビット値をもつ係数は、量子化中にmビット値に切り捨てられ得、nはmよりも大きい。
[0116] 量子化が実施されると、コーディングされたビデオビットストリームは、量子化された変換係数と、予測情報(たとえば、予測モード、動きベクトル、ブロックベクトルなど)と、区分情報と、他のシンタックスデータなどの任意の他の好適なデータとを含む。コーディングされたビデオビットストリームの異なる要素は、次いで、エンコーダエンジン106によってエントロピー符号化され得る。いくつかの例では、エンコーダエンジン106は、エントロピー符号化され得るシリアル化ベクトルを作り出すために、量子化変換係数を走査するためにあらかじめ定義された走査順序を利用し得る。いくつかの例では、エンコーダエンジン106は適応型走査を実施し得る。ベクトル(たとえば、1次元ベクトル)を形成するために量子化変換係数を走査した後に、エンコーダエンジン106は、ベクトルをエントロピー符号化し得る。たとえば、エンコーダエンジン106は、コンテキスト適応型可変長コーディング、コンテキスト適応型バイナリ算術コーディング、シンタックスベースコンテキスト適応型バイナリ算術コーディング、確率間隔区分エントロピーコーディング、または別の好適なエントロピー符号化技法を使用し得る。
[0117] 符号化デバイス104の出力部110は、通信リンク120を介して受信デバイスの復号デバイス112に、符号化ビデオビットストリームデータを構成するNALユニットを送り得る。復号デバイス112の入力部114はNALユニットを受信し得る。通信リンク120は、ワイヤレスネットワーク、ワイヤードネットワーク、またはワイヤードネットワークとワイヤレスネットワークとの組合せによって提供されるチャネルを含み得る。ワイヤレスネットワークは、任意のワイヤレスインターフェースまたはワイヤレスインターフェースの組合せを含み得、任意の好適なワイヤレスネットワーク(たとえば、インターネットまたは他のワイドエリアネットワーク、パケットベースネットワーク、WiFi(登録商標)、無線周波数(RF)、超広帯域(UWB)、WiFi-Direct、セルラー、5G新無線(NR)、ロングタームエボリューション(LTE(登録商標))、WiMax(登録商標)など)を含み得る。ワイヤードネットワークは、任意のワイヤードインターフェース(たとえば、ファイバー、イーサネット(登録商標)、電力線イーサネット、同軸ケーブルを介したイーサネット、デジタル信号線(DSL)など)を含み得る。ワイヤードおよび/またはワイヤレスネットワークは、基地局、ルータ、アクセスポイント、ブリッジ、ゲートウェイ、スイッチなど、様々な機器を使用して実装され得る。符号化ビデオビットストリームデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、受信デバイスに送信され得る。
[0118] いくつかの例では、符号化デバイス104は、符号化ビデオビットストリームデータをストレージ108に記憶し得る。出力部110は、エンコーダエンジン106から、またはストレージ108から符号化ビデオビットストリームデータを取り出し得る。ストレージ108は、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。たとえば、ストレージ108は、ハードドライブ、記憶ディスク、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体を含み得る。ストレージ108は、インター予測において使用するための参照ピクチャを記憶するための復号ピクチャバッファ(DPB)をも含むことができる。さらなる例では、ストレージ108は、ソースデバイスによって生成された符号化ビデオを記憶し得るファイルサーバまたは別の中間記憶デバイスに対応することができる。そのような場合、復号デバイス112を含む受信デバイスは、ストリーミングまたはダウンロードを介して記憶デバイスから記憶されたビデオデータにアクセスすることができる。ファイルサーバは、符号化ビデオデータを記憶することと、その符号化ビデオデータを受信デバイスに送信することとが可能な任意のタイプのサーバであり得る。例示的なファイルサーバは、(たとえば、ウェブサイトのための)ウェブサーバ、FTPサーバ、ネットワーク接続記憶(NAS)デバイス、またはローカルディスクドライブを含む。受信デバイスは、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル(たとえば、Wi-Fi(登録商標)接続)、ワイヤード接続(たとえば、DSL、ケーブルモデムなど)、またはその両方の組合せを含み得る。ストレージ108からの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
[0119] 復号デバイス112の入力部114は、符号化ビデオビットストリームデータを受信し、ビデオビットストリームデータをデコーダエンジン116に、またはデコーダエンジン116による後の使用のためにストレージ118に提供し得る。たとえば、ストレージ118は、インター予測において使用するための参照ピクチャを記憶するためのDPBを含むことができる。復号デバイス112を含む受信デバイスは、ストレージ108を介して復号されるべき符号化ビデオデータを受信することができる。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、受信デバイスに送信され得る。符号化ビデオデータを送信するための通信媒体は、無線周波数(RF)スペクトルまたは1つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備えることができる。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイスから受信デバイスへの通信を可能にするために有用であり得る任意の他の機器を含み得る。
[0120] デコーダエンジン116は、(たとえば、エントロピーデコーダを使用して)エントロピー復号し、符号化ビデオデータを構成する1つまたは複数のコード化ビデオシーケンスの要素を抽出することによって、符号化ビデオビットストリームデータを復号し得る。デコーダエンジン116は、次いで、符号化ビデオビットストリームデータを再スケーリングし、符号化ビデオビットストリームデータに対して逆変換を実施し得る。残差データが、次いで、デコーダエンジン116の予測段階にパスされる。デコーダエンジン116は、次いで、ピクセルのブロック(たとえば、PU)を予測する。いくつかの例では、逆変換の出力(残差データ)に予測が加算される。
[0121] ビデオ復号デバイス112は、復号ビデオをビデオ宛先デバイス122に出力し得、ビデオ宛先デバイス122は、復号ビデオデータをコンテンツの消費者に表示するためのディスプレイまたは他の出力デバイスを含み得る。いくつかの態様では、ビデオ宛先デバイス122は、復号デバイス112を含む受信デバイスの一部であり得る。いくつかの態様では、ビデオ宛先デバイス122は、受信デバイス以外の別個のデバイスの一部であり得る。
[0122] いくつかの実施形態では、ビデオ符号化デバイス104および/またはビデオ復号デバイス112は、それぞれオーディオ符号化デバイスおよびオーディオ復号デバイスと統合され得る。ビデオ符号化デバイス104および/またはビデオ復号デバイス112はまた、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなど、上記で説明されたコーディング技法を実装するために必要である他のハードウェアまたはソフトウェアを含み得る。ビデオ符号化デバイス104およびビデオ復号デバイス112は、それぞれのデバイスにおいて複合エンコーダ/デコーダ(コーデック)の一部として統合され得る。
[0123] 図1に示されている例示的なシステムは、本明細書で使用され得る1つの例示的な例である。本明細書で説明される技法を使用してビデオデータを処理するための技法は、任意のデジタルビデオ符号化および/または復号デバイスによって実施され得る。概して、本開示の技法はビデオ符号化デバイスまたはビデオ復号デバイスによって実施されるが、本技法は、一般に「コーデック」と呼ばれる複合ビデオエンコーダ/デコーダによっても実施され得る。その上、本開示の技法はまた、ビデオプリプロセッサによって実施され得る。ソースデバイスおよび受信デバイスは、ソースデバイスが受信デバイスへの送信のためのコード化ビデオデータを生成するような、コーディングデバイスの例にすぎない。いくつかの例では、ソースデバイスおよび受信デバイスは、デバイスの各々がビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。したがって、例示的なシステムは、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオテレフォニーのための、ビデオデバイス間の一方向または二方向のビデオ送信をサポートし得る。
[0124] HEVC規格に対する拡張は、MV-HEVCと呼ばれるマルチビュービデオコーディング拡張と、SHVCと呼ばれるスケーラブルビデオコーディング拡張とを含む。MV-HEVC拡張およびSHVC拡張は、階層化コーディングの概念を共有し、異なるレイヤが符号化ビデオビットストリーム中に含まれる。コード化ビデオシーケンス中の各レイヤは、一意のレイヤ識別子(ID)によってアドレス指定される。レイヤIDは、NALユニットがそれに関連するレイヤを識別するために、NALユニットのヘッダ中に存在し得る。MV-HEVCでは、異なるレイヤは、通常、ビデオビットストリーム中の同じシーンの異なるビューを表す。SHVCでは、異なる空間解像度(またはピクチャ解像度)で、または異なる再構築忠実度でビデオビットストリームを表す異なるスケーラブルレイヤが提供される。スケーラブルレイヤは、(レイヤID=0である)ベースレイヤと(レイヤID=1、2、...nである)1つまたは複数のエンハンスメントレイヤとを含み得る。ベースレイヤは、HEVCの第1のバージョンのプロファイルに適合し得、ビットストリーム中の利用可能な最下位レイヤを表す。エンハンスメントレイヤは、ベースレイヤと比較して、増加された空間解像度、時間解像度またはフレームレート、および/あるいは再構築忠実度(または品質)を有する。エンハンスメントレイヤは、階層的に編成されており、下位レイヤに依存すること(または依存しないこと)がある。いくつかの例では、単一規格コーデックを使用して、異なるレイヤがコーディングされ得る(たとえば、HEVC、SHVC、または他のコーディング規格を使用して、すべてのレイヤが符号化される)。いくつかの例では、多規格コーデックを使用して、異なるレイヤがコーディングされ得る。たとえば、ベースレイヤは、AVCを使用してコーディングされ得るが、1つまたは複数のエンハンスメントレイヤは、HEVC規格に対するSHVC拡張および/またはMV-HEVC拡張を使用してコーディングされ得る。
[0125] 概して、レイヤは、VCL NALユニットのセットと非VCL NALユニットの対応するセットとを含む。NALユニットは、特定のレイヤID値を割り当てられる。レイヤは、あるレイヤが下位レイヤに依存し得るという意味で、階層的であり得る。レイヤセットは、自己完結型であるビットストリーム内で表されるレイヤのセットを指し、これは、レイヤセット内のレイヤが、復号プロセスにおいてレイヤセット中の他のレイヤに依存することがあるが、復号のために任意の他のレイヤに依存しないことを意味する。したがって、レイヤセット中のレイヤは、ビデオコンテンツを表すことができる独立したビットストリームを形成することができる。レイヤセット中のレイヤのセットは、サブビットストリーム抽出プロセスの動作によって別のビットストリームから取得され得る。レイヤセットは、デコーダがいくつかのパラメータに従って動作することを希望するときに復号されるべきであるレイヤのセットに対応し得る。
[0126] 前に説明されたように、HEVCビットストリームは、VCL NALユニットと非VCL NALユニットとを含む、NALユニットのグループを含む。VCL NALユニットは、コード化ビデオビットストリームを形成するコード化ピクチャデータを含む。たとえば、コード化ビデオビットストリームを形成するビットのシーケンスは、VCL NALユニット中に存在する。非VCL NALユニットは、他の情報に加えて、符号化ビデオビットストリームに関係する高レベル情報をもつパラメータセットを含んでいることがある。たとえば、パラメータセットは、ビデオパラメータセット(VPS)と、シーケンスパラメータセット(SPS)と、ピクチャパラメータセット(PPS)とを含み得る。パラメータセットの目標の例は、ビットレート効率と、エラーレジリエンシーと、システムレイヤインターフェースを提供することとを含む。各スライスは、復号デバイス112がそのスライスを復号するために使用し得る情報にアクセスするために、単一のアクティブなPPS、SPS、およびVPSを参照する。VPS識別子(ID)と、SPS IDと、PPS IDとを含むIDが、パラメータセットごとにコーディングされ得る。SPSは、SPS IDとVPS IDとを含む。PPSは、PPS IDとSPS IDとを含む。各スライスヘッダはPPS IDを含む。IDを使用して、アクティブなパラメータセットが所与のスライスについて識別され得る。
[0127] PPSは、所与のピクチャ中のすべてのスライスに適用される情報を含む。このため、ピクチャ中のすべてのスライスは、同じPPSを指す。異なるピクチャ中のスライスも、同じPPSを指すことがある。SPSは、同じコード化ビデオシーケンス(CVS)またはビットストリーム中のすべてのピクチャに適用される情報を含む。前に説明されたように、コード化ビデオシーケンスは、(上記で説明された)ベースレイヤ中の、いくつかのプロパティをもつランダムアクセスポイントピクチャ(たとえば、瞬時復号参照(IDR:instantaneous decode reference)ピクチャまたは切断リンクアクセス(BLA:broken link access)ピクチャ、あるいは他の適切なランダムアクセスポイントピクチャ)で開始し、ベースレイヤ中の、いくつかのプロパティをもつランダムアクセスポイントピクチャを有する次のアクセスユニット(AU)(またはビットストリームの終端)までの、それを含まない、一連のAUである。SPS中の情報は、コード化ビデオシーケンス内でピクチャごとに変化しないことがある。コード化ビデオシーケンス中のピクチャは、同じSPSを使用し得る。VPSは、コード化ビデオシーケンスまたはビットストリーム内のすべてのレイヤに適用される情報を含む。VPSは、コード化ビデオシーケンス全体に適用されるシンタックス要素をもつシンタックス構造を含む。いくつかの実施形態では、VPS、SPS、またはPPSは、符号化ビットストリームとともに帯域内で送信され得る。いくつかの実施形態では、VPS、SPS、またはPPSは、コード化ビデオデータを含んでいるNALユニットとは別個の送信において帯域外で送信され得る。
[0128] 本開示は、概して、シンタックス要素などのある情報を「シグナリング」することに言及し得る。「シグナリング」という用語は、概して、符号化ビデオデータを復号するために使用されるシンタックス要素および/または他のデータについての値の通信を指すことがある。たとえば、ビデオ符号化デバイス104は、ビットストリーム中のシンタックス要素についての値をシグナリングし得る。概して、シグナリングは、ビットストリーム中で値を生成することを指す。上述のように、ビデオソース102は、実質的にリアルタイムでビットストリームをビデオ宛先デバイス122にトランスポートするか、または、ビデオ宛先デバイス122による後の取出しのためにシンタックス要素をストレージ108に記憶するときに行われ得るように、非リアルタイムでビットストリームをビデオ宛先デバイス122にトランスポートし得る。
[0129] ビデオビットストリームは、補足エンハンスメント情報(SEI)メッセージをも含むことができる。たとえば、SEI NALユニットはビデオビットストリームの一部であり得る。いくつかの場合には、SEIメッセージは、復号プロセスによって必要とされない情報を含んでいることがある。たとえば、SEIメッセージ中の情報は、ビットストリームのビデオピクチャを復号するためのデコーダにとって必須でないことがあるが、デコーダは、ピクチャの表示または処理(たとえば、復号された出力)を改善するためにその情報を使用であることができる。SEIメッセージ中の情報は埋込みメタデータであり得る。1つの例示的な例では、SEIメッセージ中の情報は、コンテンツの視認性を改善するためにデコーダ側エンティティによって使用され得る。いくつかの事例では、いくつかの適用例規格は、適用例規格に準拠するすべてのデバイスに品質の改善がもたらされ得るように、ビットストリーム中のそのようなSEIメッセージの存在(たとえば、多くの他の例に加えて、フレームパッキングSEIメッセージがビデオのあらゆるフレームのために搬送される、フレーム互換平面立体視3DTVビデオフォーマットのためのフレームパッキングSEIメッセージの搬送、リカバリポイントSEIメッセージのハンドリング、DVBにおけるパンスキャンスキャン矩形SEIメッセージの使用)を規定し得る。
[0130] 上述のように、エネルギー効率の高いメディア消費規格(ISO/IEC23001-11)は、メディア消費中のエネルギー使用の低減を促進するためにグリーンメタデータを指定する。グリーンメタデータは、複雑さメトリック(CM)メタデータと復号演算低減要求(DOR-Req)メタデータとを含む。デコーダは、電力消費を低減するのを助けるために復号を実施するプロセッサの動作周波数を調整するのを助けるためにCMメタデータを使用し得る。前に説明されたように、CMシグナリングなど、グリーンメタデータを改善するためのシステムおよび技法が本明細書で説明される。たとえば、複数のピクチャにわたって単一のタイプを使用してスライス、タイル、および/またはサブフレームグラニュラリティについてのCMをシグナリングすることは、問題になり得る。いくつかの態様では、本明細書で説明されるシステムおよび技法は、より多くのグラニュラリティタイプ(たとえば、スライスグラニュラリティ、タイルグラニュラリティなど)を、いくつかの場合には、様々な期間タイプにわたってサポートするためにグリーンメタデータについてのシンタックス構造を改善する。いくつかの態様では、本明細書で説明されるシステムおよび技法は、サブピクチャ識別子(ID)を使用して1つまたは複数のCMを特定のサブピクチャにマッピングするためのシグナリングを提供する。いくつかの態様では、本明細書で説明されるシステムおよび技法は、ブロック(たとえば、CTBまたは他のブロック)の総数を示すためのシグナリング(たとえば、シンタックス要素)を提供する。いくつかの場合には(ブロックの総数を示す)そのようなシグナリングは、スライスまたはタイルごとの正規化された符号化された統計値を解釈するために期間にわたる総コーディングブロックの数の導出を簡略化することができる。シグナリングは、符号化ビデオとともに含まれるCMメタデータ中に含まれ得る。いくつかの態様では、本明細書で説明されるシステムおよび技法は、イントラコード化ブロック統計値のためのシグナリングを提供する。いくつかの場合には、そのようなイントラコード化ブロック統計値シグナリングは、すべてのブロックがイントラコード化されるときにCMがイントラコード化ブロック統計値を提供するとき(たとえば、PスライスおよびBスライスがインターコード化ブロックよりも多くのイントラコード化ブロックを有するとき、PピクチャまたはBピクチャがインターコード化ブロックよりも多くのイントラコード化ブロックを有するときなど)に起こる問題を解決することができる。いくつかの態様では、本明細書で説明されるシステムおよび技法は、ピクチャ全体に品質メトリックを適用するのではなく、品質メトリックを、VVC中のものなど、ピクチャの個々の部分に(たとえば、個々のサブピクチャに)それぞれ適用するための機構を提供する。
[0131] 次に、上述の複雑さメトリック(CM)シグナリングの様々な態様が説明される。たとえば、いくつかの態様では、グラニュラリティタイプインジケータ(たとえば、granularity_typeなどのグラニュラリティタイプシンタックス要素)が、スライス、タイル、サブピクチャ、スケーラブルレイヤ、および/または他のグラニュラリティなど、様々なグラニュラリティ(たとえば、グラニュラリティセグメント)をサポートするために提供される。たとえば、符号化デバイス104は、ビットストリーム中でまたはビットストリームを用いてグラニュラリティタイプインジケータをシグナリングし得る。グラニュラリティタイプインジケータは、複数のピクチャのために適用されるグラニュラリティCMシグナリングをサポートするために期間タイプシンタックス要素と組み合わせて使用され得る。いくつかの例では、期間タイプシンタックス要素(たとえば、period_type)のセマンティクスが修正される。1つの例示的な例では、VVCグリーンメタデータについてのCMシグナリングが、以下の表2で提供される(ISO/IEC23001-11への追加が<>間に示される(たとえば、<追加された文言>))。
Figure 2024531112000003
[0132] period_typeシンタックス要素(たとえば、変数)が、複雑さメトリックが適用可能である今度の期間のタイプを指定し、period_typeシンタックス要素についての値が(例示的な例として)以下の表3で定義され得る。
Figure 2024531112000004
[0133] granularity_typeシンタックス要素が、複雑さメトリックが適用可能であるグラニュラリティのタイプを指定し、granularity_typeシンタックス要素についての値が(例示的な例として)以下の表4で定義され得る。
Figure 2024531112000005
[0134] picture_level_CMsシンタックス構造が、期間にわたる特定のピクチャについての複雑さメトリックを指定する。picture_level_CMsシンタックス構造は、本明細書ではピクチャレベルCMシンタックス構造と呼ばれることがある。
[0135] granularity_level_CMsシンタックス構造が、期間にわたるスライス、タイル、サブピクチャ、またはレイヤなど、各エンティティについてのグラニュラリティレベル複雑さメトリックを指定する。granularity_level_CMsシンタックス構造は、本明細書ではグラニュラリティレベルCMシンタックス構造と呼ばれることがある。
[0136] 図2は、本開示の態様による、(フレームまたは画像とも呼ばれる)ビデオピクチャ200についてのグラニュラリティレベルCMの例示的な使用を示す図である。ビデオピクチャ200は、ビデオピクチャ200のビューにわたって乗っており、動いている、自転車に乗る人202を含み、自転車に乗る人202は、ビデオピクチャ200のピクチャのセット204中に現れる。ビデオピクチャ200の各ピクチャは(たとえば、符号化デバイス104などのエンコーダによって)スライス、タイル、サブピクチャ、レイヤなど、1つまたは複数の部分に分割され得る。16個のスライス208、4つのタイル210、および1つのサブピクチャ212に分割された、ピクチャのセット204のうちのピクチャ206が示され、ここで、各タイル210は4つのスライス208を含み、サブピクチャ212はピクチャの下側部分上に2つのタイル210を含む。
[0137] いくつかの場合には、復号デバイス(たとえば、復号デバイス112)に対して期間タイプとグラニュラリティタイプの両方を指定することが可能であることは、グラニュラリティレベルCMが複数のピクチャについてのスライス、タイル、サブピクチャ、またはレイヤについて1回定義されることを可能にすることによって、より大きいフレキシビリティおよび低減されたシグナリングを可能にする。たとえば、各ピクチャのサブピクチャについてのグラニュラリティレベルCMを定義しなければならないのではなく、符号化デバイス(たとえば、符号化デバイス104)は、単一のグラニュラリティレベルCMを、指定された時間間隔(time interval)におけるすべてのピクチャのサブピクチャに適用し得る。ビデオピクチャ200では、ビデオにおいて自転車に乗る人202が動くにつれて、自転車に乗る人202が現れるエリアは、(動きがほとんどまたはまったくない)ピクチャのセット204の他のエリアと比較して、符号化/復号するのにより複雑であり得、グラニュラリティレベルCMを使用して異なるCMがそれらのエリアについて指定され得る。たとえば、グラニュラリティレベルCMは、ピクチャのセット204のうちの6つのピクチャなど、ピクチャの数について(たとえば、num_pictures=6)、サブピクチャ212エリアについて(たとえば、granularity_type=3)、1回指定され得る。グラニュラリティレベルCMが特定の時間間隔(たとえば、ピクチャの設定された数、時間期間など)について設定されることを可能にすることによって、単一のグラニュラリティレベルCMが、ピクチャのセット204のうちの第1のピクチャに対応するメタデータ中で使用され得、このグラニュラリティレベルCMは、指定された時間間隔に基づいて、ピクチャのセット204中のすべてのピクチャに適用され得る。ピクチャのセット204の後に、サブピクチャ212についてのグラニュラリティレベルCMは、サブピクチャ212によってカバーされるエリア中に自転車に乗る人202がもはやいないので、調整され得、次に、そのエリアは、符号化/復号するのに複雑でなくなり得る。同様に、複数の、場合によっては異なるグラニュラリティレベルCMがピクチャ中の任意の数のスライス、タイル、サブピクチャ、またはレイヤについて指定され得、ここで、各グラニュラリティレベルCMは、異なる今度の期間(たとえば、単一のピクチャ、指定された時間間隔の間のすべてのピクチャ、ピクチャの数、次のスライスを含んでいるピクチャまでのすべてのピクチャなど)にわたって適用され得る。
[0138] いくつかの態様では、符号化デバイス(たとえば、符号化デバイス104)は、ビデオの複数のピクチャについて、スライス、タイル、サブピクチャ、および/またはレイヤなど、ピクチャの部分に適用可能であるCM値を指定し得る。たとえば、いくつかの態様によれば、符号化デバイスは、サブピクチャCMシグナリングを生成およびシグナリングし得る。サブピクチャCMシグナリングは、1つまたは複数のピクチャについて、CMが適用されるのはどのサブピクチャかを示す。一例では、サブピクチャグラニュラリティについて、(たとえば、サブピクチャシンタックス要素と呼ばれる)シンタックス要素は、期間が複数のピクチャにわたるとき(たとえば、グラニュラリティレベルCMが複数のピクチャに適用される場合)サブピクチャIDがCMメタデータ中でシグナリングされることを示す。一例が以下の表5に示されている。
Figure 2024531112000006
[0139] subpic_id[i]は、関連する複雑さメトリック(CM)のサブピクチャIDを指定する。
[0140] subpic_CMは、i番目のサブピクチャ複雑さメトリック構造である。
[0141] いくつかの場合には、subpic_idおよび/またはsubpic_CM(i)は、セグメントアドレスを指す1つまたは複数のシンタックス要素によって置き換えられ得る。いくつかの場合には、セグメントは、スライス、タイル、またはサブピクチャであり得、このセグメントアドレスは、たとえば、ピクチャの特定のスライス、タイル、および/またはサブピクチャを識別し得る。一例として、セグメントアドレス[t]は、t番目のセグメントのアドレスを示し得る。したがって、グラニュラリティタイプがサブピクチャグラニュラリティを指定する場合、セグメントアドレス[t]はt番目のサブピクチャのサブピクチャIDを示し得る。
[0142] いくつかの場合には、態様は解像度変更に関連する。たとえば、VVCでは、コード化レイヤビデオシーケンス(CLVS)内の解像度変更は、ピクチャ、スライス、およびタイルグラニュラリティに適用可能であるが、サブピクチャグラニュラリティにおいて適用可能でない。いくつかの態様によれば、期間にわたるコーディングツリールーマブロックの総数を示す(たとえば、コーディングツリーブロック(CTB)数シンタックス要素と呼ばれる)シンタックス要素は、グラニュラリティタイプがスライス(たとえば、表4からの0x01)またはタイル(たとえば、表4からの0x02)に等しく、期間タイプが複数のピクチャにわたるときなど、グリーンメタデータ中で(たとえば、CMシンタックステーブル中で、以下の表6におけるnum_ctbs_minus1など、1つまたは複数のシンタックス要素として)シグナリングされ得る。一例が以下の表6に示されている。
Figure 2024531112000007
[0143] num_ctbs_minus1は、期間にわたる関連する複雑さメトリックのコーディングツリーブロックの総数を指定する。
[0144] いくつかの態様では、代替シンタックス要素(たとえば、avg_number_ctbs_minus1)は、オーバーヘッドを低減するために、期間にわたるCTBの総数の代わりに、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロック(または他のサイズ決定されたブロック)の平均数を示し得る。そのようなシンタックス要素は、平均CTB数シンタックス要素と呼ばれることがある。
[0145] いくつかの場合には、態様は、イントラコード化ブロック統計値に関連する。たとえば、現在のグリーンメタデータCMシンタックスは、すべてのブロックがイントラコード化ブロックであるとき、イントラコード化ブロック統計値をシグナリングするにすぎない(たとえば、portion_intra_predicted_blocks_area==255)。以下の表7は、提案されるCMシグナリング変更を示し、ここで、追加が<>間に示され(たとえば、<追加された文言>)、削除が取り消し線付きテキストで示される(たとえば、《削除された文言》(注:《》は取り消し線の代替表示です))。イントラコード化ブロック統計値は、利用可能なイントラコード化ブロックがあるとき、シグナリングされる。インターコード化ブロック統計値は、利用可能なインターコード化ブロックがあるとき、シグナリングされる。
Figure 2024531112000008
[0146] 表7からの様々なシンタックス要素の定義の例が、VVCについて以下で提供される。
[0147] portion_intra_predicted_blocks_areaは、4サンプルグラニュラリティを使用する、指定された期間のピクチャ中のイントラ予測されたブロックによってカバーされるエリアの一部分を示し、以下のように定義される。
Figure 2024531112000009
[0148] NumIntraPredictedBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のイントラ予測されたブロックの数である。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000010
[0149] ここで、NumIntraPredictedBlocks_Xは、指定された期間中の、X=4、8、16、32、64、128、256、512、1024、2048、4096からのサンプルの数についてのイントラ予測を使用するブロックの数である。
[0150] NumIntraPredictedBlocksは、デコーダにおいてportion_intra_predicted_blocks_areaとTotalNum4BlocksInPeriodとから導出される。
[0151] portion_planar_blocks_in_intra_areaは、指定された期間中のイントラ予測されたエリアにおけるイントラ平面予測されたブロックエリアの一部分を示し、以下のように定義される。
Figure 2024531112000011
[0152] 存在しないとき、0に等しい。
[0153] NumPlanarPredictedBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のイントラ平面予測されたブロックの数である。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000012
[0154] ここで、NumIntraPlanarBlocks_Xは、指定された期間中の、X=4、8、16、32、64、128、256、512、1024、2048、4096からのサンプルの数についてのイントラ平面予測を使用するブロックの数である。
[0155] NumPlanarPredictedBlocksは、デコーダにおいてportion_planar_blocks_in_intra_areaとNumIntraPredictedBlocksとから導出される。
[0156] portion_dc_blocks_in_intra_areaは、指定された期間中のイントラ予測されたエリアにおけるイントラDC予測されたブロックエリアの一部分を示し、以下のように定義される。
Figure 2024531112000013
[0157] 存在しないとき、0に等しい。
[0158] NumDcPredictedBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のイントラDC予測されたブロックの数である。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000014
[0159] ここで、NumIntraDcBlocks_Xは、指定された期間中の、X=4、8、16、32、64、128、256、512、1024、2048、4096からのサンプルの数についてのイントラDC予測を使用するブロックの数である。
[0160] NumDcPredictedBlocksは、デコーダにおいてportion_dc_blocks_in_intra_areaとNumIntraPredictedBlocksとから導出される。
[0161] (portion_hv_blocks_in_intra_areaとも呼ばれる)portion_angular_hv_blocks_in_intra_areaは、指定された期間中のイントラ予測されたエリアにおけるイントラ水平および垂直方向予測されたブロックエリアの一部分を示し、以下のように定義される。
Figure 2024531112000015
[0162] 存在しないとき、0に等しい。
[0163] NumHvPredictedBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のイントラ水平および垂直方向予測されたブロックの数である。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000016
[0164] ここで、NumIntraHvBlocks_Xは、指定された期間中の、X=4、8、16、32、64、128、256、512、1024、2048、4096からのサンプルの数についてのイントラ水平および垂直方向予測を使用するブロックの数である。
[0165] NumHvPredictedBlocksは、デコーダにおいてportion_hv_blocks_in_intra_areaとNumIntraPredictedBlocksとから導出される。
[0166] portion_mip_blocks_in_intra_areaは、指定された期間中のイントラ予測されたエリアにおけるイントラMIP予測されたブロックエリアの一部分を示し、以下のように定義される。
Figure 2024531112000017
[0167] 存在しないとき、0に等しい。
[0168] NumMipPredictedBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のイントラMIP予測されたブロックの数である。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000018
[0169] ここで、NumIntraMipBlocks_Xは、指定された期間中の、X=4、8、16、32、64、128、256、512、1024、2048、4096からのサンプルの数についてのイントラMIP予測を使用するブロックの数である。
[0170] NumMipPredictedBlocksは、デコーダにおいてportion_mip_blocks_in_intra_areaとNumIntraPredictedBlocksとから導出される。
[0171] portion_bi_and_gpm_predicted_blocks_areaは、4サンプルグラニュラリティを使用する、指定された期間のピクチャ中のインター双予測またはGPM予測されたブロックによってカバーされるエリアの一部分を示し、以下のように定義される。
Figure 2024531112000019
[0172] NumBiAndGpmPredictedBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のインター双予測およびGPM予測されたブロックの数である。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000020
[0173] ここで、NumBiPredictedXBlocksは、指定された期間中の、X=4、8、16、32、64、128、256、512、1024、2048、4096からのサンプルの数についてのインター双予測またはGPM予測を使用するブロックの数である。
[0174] NumBiPredictedXBlocksは、デコーダにおいてportion_bi_and_gpm_predicted_blocks_areaとTotalNum4BlocksInPeriodとから導出される。
[0175] portion_deblocking_instancesは、指定された期間中の、本明細書の用語および定義において定義される、デブロッキングフィルタ処理インスタンスの一部分を示し、以下のように定義される。
Figure 2024531112000021
[0176] NumDeblockingInstancesは、指定された期間中のデブロッキングフィルタ処理インスタンスの数である。それは、デコーダにおいてportion_deblocking_instancesとMaxNumDeblockingInstancesとから導出される。
[0177] portion_sao_filtered_blocksは、4サンプルグラニュラリティを使用する、指定された期間中のSAOフィルタ処理されたブロックの一部分を示す。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000022
[0178] NumSaoFilteredBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のSAOフィルタ処理されたブロックの数である。それは、デコーダにおいてportion_sao_filtered_blocks、TotalNum4BlocksInPeriodから導出される。
[0179] portion_alf_filtered_blocksは、4サンプルグラニュラリティを使用する、指定された期間中のALFフィルタ処理されたブロックの一部分を示す。エンコーダ側において、それは、以下のように算出される。
Figure 2024531112000023
[0180] NumAlfFilteredBlocksは、4サンプルグラニュラリティを使用する、指定された期間中のALFフィルタ処理されたブロックの数である。それは、デコーダにおいてportion_alf_filtered_blocks、TotalNum4BlocksInPeriodから導出される。
[0181] いくつかの場合には、態様は、サブピクチャ品質メトリックに関連する。たとえば、品質復元メトリックは、各グラニュラリティセグメントに適用され得る。いくつかの場合には、セグメントは、スライス、タイル、またはサブピクチャであり得る。表8は、グリーンMPEGについて提案された品質復元のためのサブピクチャベースメトリックの一例を提供し、ここで、追加が<>間に示される(たとえば、<追加された文言>)。
Figure 2024531112000024
[0182] xsd_subpic_number_minus1は、関連するピクチャ中で利用可能なサブピクチャの数を指定する。xsd_subpic_number_minus1が0に等しいとき、品質復元メトリックはピクチャ全体に適用される。
[0183] xsd_metric_type[i]は、i番目の客観的品質メトリックについての客観的品質メトリックのタイプを示す。
[0184] xsd_metric_value[i][j]は、関連するj番目のサブピクチャについてのi番目の客観的品質メトリックの値を含んでいる。
[0185] 現在の品質メトリックは、各セグメントの最後のピクチャの品質について説明する。本明細書で説明される態様は、SEIメッセージが、関連するピクチャの品質について説明する品質メトリックを搬送することを可能にする。たとえば、符号化デバイス(たとえば、図1および図4の符号化デバイス104)は、品質メトリックをSEIメッセージに追加することができる。
[0186] 図3は、本開示の態様による、符号化ビデオ300を復号するためのプロセスを示す流れ図である。動作302において、プロセス300は、ビットストリームを取得することを含むことができる。動作304において、プロセス300は、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すこと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、を含むことができる。いくつかの場合には、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャまたはピクチャの一部分に適用可能であることを指定し、ピクチャの一部分はピクチャの全体よりも小さい。いくつかの場合には、グラニュラリティタイプシンタックス要素の値は、CMが、ビットストリームの1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する。
[0187] 動作306において、プロセス300は、ビットストリームに関連する期間タイプシンタックス要素を取り出すこと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、を含むことができる。いくつかの場合には、期間タイプシンタックス要素は、今度の期間についての指定された時間間隔、今度の期間についてのピクチャの数、今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す。いくつかの場合には、プロセス300は、ビットストリームに関連するグラニュラリティレベルCMシンタックス構造を取り出すことをも含むことができ、グラニュラリティレベルCMシンタックス構造は、今度の期間にわたるビットストリームの1つまたは複数のグラニュラリティセグメントについてのグラニュラリティレベル複雑さメトリックを指定する。いくつかの場合には、プロセス300は、ビットストリームに関連する追加の期間タイプシンタックス要素(additional period type syntax element)を取り出すことと、追加の期間タイプシンタックス要素がグラニュラリティタイプシンタックス要素に関連し、ここにおいて、追加の期間タイプシンタックス要素が期間タイプシンタックス要素とは異なる、グラニュラリティタイプシンタックス要素と追加の期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとをさらに含むことができる。
[0188] いくつかの場合には、プロセス300は、ビットストリームに関連するサブピクチャシンタックス要素、サブピクチャシンタックス要素は、CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、CTB数シンタックス要素は、グラニュラリティのタイプがスライスまたはタイルに等しく、今度の期間が複数のピクチャにわたるとき、今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいはビットストリームに関連する平均コーディングツリーブロック(CTB)数シンタックス要素、平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、のうちの少なくとも1つを取り出すことをも含むことができる。
[0189] いくつかの場合には、プロセス300について、イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。いくつかの場合には、インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。いくつかの場合には、プロセス300は、ビットストリームの少なくとも一部分をディスプレイ上に表示することをも含むことができる。いくつかの場合には、プロセス300は、ビットストリームに関連するCMに基づいてデバイスの動作周波数を決定することをさらに含むことができる。
[0190] 動作308において、プロセス300は、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することを含むことができる。いくつかの場合には、プロセス300は、モバイルデバイス、ウェアラブルデバイス、エクステンデッドリアリティデバイス、カメラ、パーソナルコンピュータ、車両、ロボティックデバイス、テレビジョン、またはコンピューティングデバイスのうちの1つによって実施され得る。
[0191] 図4は、本開示の態様による、ビデオを符号化するための技法を示す流れ図400である。動作402において、プロセス400は、ビデオデータを取得することを含むことができる。動作404において、プロセス400は、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することを含むことができる。いくつかの場合には、グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャまたはピクチャの一部分に適用可能であることを指定し、ピクチャの一部分はピクチャの全体よりも小さい。いくつかの場合には、グラニュラリティタイプシンタックス要素の値は、CMが、ビットストリームの1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する。
[0192] 動作406において、プロセス400は、ビットストリームについて、ビットストリームに関連する期間タイプシンタックス要素を生成すること、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、を含むことができる。いくつかの場合には、期間タイプシンタックス要素は、今度の期間についての指定された時間間隔、今度の期間についてのピクチャの数、今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す。いくつかの場合には、期間タイプシンタックス要素は、今度の期間についての指定された時間間隔、今度の期間についてのピクチャの数、今度の期間が、次のスライスを含んでいるピクチャまでのすべてのピクチャを含むこと、または今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す。
[0193] いくつかの場合には、プロセス400は、ビットストリームについて、今度の期間にわたる1つまたは複数のエンティティについてのグラニュラリティレベル複雑さメトリックを指定するグラニュラリティレベルCMシンタックス構造を生成することをも含むことができる。いくつかの場合には、プロセス400は、ビットストリームについて、グラニュラリティタイプシンタックス要素に関連する追加の期間タイプシンタックス要素を生成すること、ここにおいて、追加の期間タイプシンタックス要素が期間タイプシンタックス要素とは異なり、ここにおいて、追加の期間タイプシンタックス要素が、グラニュラリティタイプシンタックス要素でビットストリームの一部分を復号するためのものである、をさらに含むことができる。いくつかの場合には、プロセス400は、ビットストリームについて、ビットストリームに関連するサブピクチャシンタックス要素、サブピクチャシンタックス要素は、CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、CTB数シンタックス要素は、グラニュラリティのタイプがスライスまたはタイルに等しく、今度の期間が複数のピクチャにわたるとき、今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいはビットストリームに関連する平均コーディングツリーブロック(CTB)数シンタックス要素、平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、のうちの少なくとも1つを生成することをも含むことができる。
[0194] いくつかの場合には、プロセス400について、イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。いくつかの場合には、インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる。いくつかの場合には、プロセス400は、モバイルデバイス、ウェアラブルデバイス、エクステンデッドリアリティデバイス、カメラ、パーソナルコンピュータ、車両、ロボティックデバイス、テレビジョン、またはコンピューティングデバイスのうちの1つによって実施され得る。
[0195] いくつかの実装形態では、本明細書で説明されるプロセス(または方法)は、図1に示されているシステム100など、コンピューティングデバイスまたは装置によって実施され得る。たとえば、プロセスは、図1および図5に示されている符号化デバイス104によって、別のビデオソース側デバイスまたはビデオ送信デバイスによって、図1および図6に示されている復号デバイス112によって、ならびに/あるいは、プレーヤデバイス、ディスプレイ、または任意の他のクライアント側デバイスなど、別のクライアント側デバイスによって実施され得る。いくつかの場合には、コンピューティングデバイスまたは装置は、本明細書で説明される1つまたは複数のプロセスのステップを行うように構成された、1つまたは複数の入力デバイス、1つまたは複数の出力デバイス、1つまたは複数のプロセッサ、1つまたは複数のマイクロプロセッサ、1つまたは複数のマイクロコンピュータ、および/または(1つまたは複数の)他の構成要素を含み得る。
[0196] いくつかの例では、コンピューティングデバイスは、モバイルデバイス、デスクトップコンピュータ、サーバコンピュータおよび/またはサーバシステム、あるいは他のタイプのコンピューティングデバイスを含み得る。コンピューティングデバイスの構成要素(たとえば、1つまたは複数の入力デバイス、1つまたは複数の出力デバイス、1つまたは複数のプロセッサ、1つまたは複数のマイクロプロセッサ、1つまたは複数のマイクロコンピュータ、および/または他の構成要素)は、回路において実装され得る。たとえば、構成要素は、本明細書で説明される様々な動作を実施するために、1つまたは複数のプログラマブル電子回路(たとえば、マイクロプロセッサ、グラフィックス処理ユニット(GPU)、デジタル信号プロセッサ(DSP)、中央処理ユニット(CPU)、および/または他の好適な電子回路)を含むことができる、電子回路もしくは他の電子ハードウェアを含むことができ、および/またはそれらを使用して実装され得、ならびに/あるいは、コンピュータソフトウェア、ファームウェア、もしくはそれらの任意の組合せを含むことができ、および/またはそれらを使用して実装され得る。いくつかの例では、コンピューティングデバイスまたは装置は、ビデオフレームを含むビデオデータ(たとえば、ビデオシーケンス)をキャプチャするように構成されたカメラを含み得る。いくつかの例では、ビデオデータをキャプチャするカメラまたは他のキャプチャデバイスは、コンピューティングデバイスとは別個であり、その場合、コンピューティングデバイスは、キャプチャされたビデオデータを受信または取得する。コンピューティングデバイスは、ビデオデータを通信するように構成されたネットワークインターフェースを含み得る。ネットワークインターフェースは、インターネットプロトコル(IP)ベースのデータまたは他のタイプのデータを通信するように構成され得る。いくつかの例では、コンピューティングデバイスまたは装置は、ビデオビットストリームのピクチャのサンプルなど、出力ビデオコンテンツを表示するためのディスプレイを含み得る。
[0197] プロセスは、論理流れ図に関して説明され得、その動作は、ハードウェア、コンピュータ命令、またはそれらの組合せにおいて実施され得る動作のシーケンスを表す。コンピュータ命令のコンテキストでは、動作は、1つまたは複数のプロセッサによって実行されたとき、具陳された動作を実施する1つまたは複数のコンピュータ可読記憶媒体に記憶されたコンピュータ実行可能命令を表す。概して、コンピュータ実行可能命令は、特定の機能を実施するか、または特定のデータタイプを実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。動作が説明される順序は、限定として解釈されるものではなく、任意の数の説明される動作は、プロセスを実装するために任意の順序でおよび/または並行して組み合わされ得る。
[0198] さらに、プロセスは、実行可能命令で構成された1つまたは複数のコンピュータシステムの制御下で実施され得、まとめて1つまたは複数のプロセッサ上で、ハードウェアによって、あるいはそれらの組合せで実行するコード(たとえば、実行可能命令、1つまたは複数のコンピュータプログラム、または1つまたは複数のアプリケーション)として実装され得る。上述のように、コードは、たとえば、1つまたは複数のプロセッサによって実行可能な複数の命令を備えるコンピュータプログラムの形態で、コンピュータ可読または機械可読記憶媒体に記憶され得る。コンピュータ可読または機械可読記憶媒体は非一時的であり得る。
[0199] 本明細書で説明されるコーディング技法は、例示的なビデオ符号化および復号システム(たとえば、システム100)において実装され得る。いくつかの例では、システムは、宛先デバイスによって後で復号されるべき符号化ビデオデータを提供するソースデバイスを含む。特に、ソースデバイスは、コンピュータ可読媒体を介してビデオデータを宛先デバイスに提供する。ソースデバイスおよび宛先デバイスは、デスクトップコンピュータ、ノートブック(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。いくつかの場合には、ソースデバイスおよび宛先デバイスはワイヤレス通信のために装備され得る。
[0200] 宛先デバイスは、コンピュータ可読媒体を介して復号されるべき符号化ビデオデータを受信し得る。コンピュータ可読媒体は、ソースデバイスから宛先デバイスに符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体は、ソースデバイスが符号化ビデオデータを宛先デバイスにリアルタイムで直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイスに送信され得る。通信媒体は、無線周波数(RF)スペクトルまたは1つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイスから宛先デバイスへの通信を促進するために有用であり得る、ルータ、スイッチ、基地局、または任意の他の機器を含み得る。
[0201] いくつかの例では、符号化データは、出力インターフェースから記憶デバイスに出力され得る。同様に、符号化データは、入力インターフェースによって記憶デバイスからアクセスされ得る。記憶デバイスは、ハードドライブ、Blu-ray(登録商標)ディスク、DVD、CD-ROM、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、記憶デバイスは、ソースデバイスによって生成された符号化ビデオを記憶し得るファイルサーバまたは別の中間記憶デバイスに対応し得る。宛先デバイスは、ストリーミングまたはダウンロードを介して記憶デバイスから記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することと、その符号化ビデオデータを宛先デバイスに送信することとが可能な任意のタイプのサーバであり得る。例示的なファイルサーバは、(たとえば、ウェブサイトのための)ウェブサーバ、FTPサーバ、ネットワーク接続記憶(NAS)デバイス、またはローカルディスクドライブを含む。宛先デバイスは、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル(たとえば、Wi-Fi接続)、ワイヤード接続(たとえば、DSL、ケーブルモデムなど)、またはその両方の組合せを含み得る。記憶デバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
[0202] 本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーHTTP(DASH)などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システムは、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および/またはビデオテレフォニーなどの適用例をサポートするために、一方向または二方向のビデオ送信をサポートするように構成され得る。
[0203] 一例では、ソースデバイスは、ビデオソースと、ビデオエンコーダと、出力インターフェースとを含む。宛先デバイスは、入力インターフェースと、ビデオデコーダと、ディスプレイデバイスとを含み得る。ソースデバイスのビデオエンコーダは、本明細書で開示される技法を適用するように構成され得る。他の例では、ソースデバイスおよび宛先デバイスは、他の構成要素または配置を含み得る。たとえば、ソースデバイスは、外部カメラなどの外部ビデオソースからビデオデータを受信し得る。同様に、宛先デバイスは、一体型ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
[0204] 上記の例示的なシステムは一例にすぎない。ビデオデータを並行して処理するための技法は、任意のデジタルビデオ符号化および/または復号デバイスによって実施され得る。概して、本開示の技法はビデオ符号化デバイスによって実施されるが、本技法は、一般に「コーデック」と呼ばれるビデオエンコーダ/デコーダによっても実施され得る。その上、本開示の技法はまた、ビデオプリプロセッサによって実施され得る。ソースデバイスおよび宛先デバイスは、ソースデバイスが宛先デバイスに送信するためのコード化ビデオデータを生成するような、コーディングデバイスの例にすぎない。いくつかの例では、ソースデバイスおよび宛先デバイスは、デバイスの各々がビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。したがって、例示的なシステムは、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオテレフォニーのための、ビデオデバイス間の一方向または二方向のビデオ送信をサポートし得る。
[0205] ビデオソースは、ビデオカメラなどのビデオキャプチャデバイス、前にキャプチャされたビデオを含んでいるビデオアーカイブ、および/またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替として、ビデオソースは、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。いくつかの場合には、ビデオソースがビデオカメラである場合、ソースデバイスおよび宛先デバイスは、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、上述のように、本開示で説明される技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび/またはワイヤード適用例に適用され得る。各場合において、キャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータ生成ビデオは、ビデオエンコーダによって符号化され得る。符号化ビデオ情報は、次いで、出力インターフェースによってコンピュータ可読媒体上に出力され得る。
[0206] 述べられたように、コンピュータ可読媒体は、ワイヤレスブロードキャストまたはワイヤードネットワーク送信などの一時媒体、あるいはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Blu-rayディスク、または他のコンピュータ可読媒体などの記憶媒体(すなわち、非一時的記憶媒体)を含み得る。いくつかの例では、ネットワークサーバ(図示せず)は、たとえば、ネットワーク送信を介して、ソースデバイスから符号化ビデオデータを受信し、その符号化ビデオデータを宛先デバイスに与え得る。同様に、ディスクスタンピング設備など、媒体製造設備のコンピューティングデバイスは、ソースデバイスから符号化ビデオデータを受信し、その符号化ビデオデータを含んでいるディスクを作り出し得る。したがって、コンピュータ可読媒体は、様々な例において、様々な形態の1つまたは複数のコンピュータ可読媒体を含むことが理解され得る。
[0207] 宛先デバイスの入力インターフェースはコンピュータ可読媒体から情報を受信する。コンピュータ可読媒体の情報は、ビデオエンコーダによって定義され、またビデオデコーダによって使用される、ブロックおよび他のコード化ユニット、たとえば、ピクチャグループ(GOP)の特性および/または処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。ディスプレイデバイスは、復号ビデオデータをユーザに対して表示し、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。本出願の様々な実施形態が説明された。
[0208] 符号化デバイス104および復号デバイス112の具体的な詳細が、それぞれ図5および図6に示されている。図5は、本開示で説明される技法のうちの1つまたは複数を実装し得る例示的な符号化デバイス104を示すブロック図である。符号化デバイス104は、たとえば、本明細書で説明されるシンタックス要素および/または構造(たとえば、複雑さメトリック(CM)など、グリーンメタデータのシンタックス要素および/または構造、あるいは他のシンタックス要素および/または構造)を生成し得る。符号化デバイス104は、ビデオスライス、タイル、サブピクチャなどの内のビデオブロックのイントラ予測コーディングおよびインター予測コーディングを実施し得る。前に説明されたように、イントラコーディングは、所与のビデオフレームまたはピクチャ内の空間冗長性を低減または除去するために、空間予測に少なくとも部分的に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたは周囲のフレーム内の時間冗長性を低減または除去するために、時間予測に少なくとも部分的に依拠する。イントラモード(Iモード)は、いくつかの空間ベースの圧縮モードのいずれかを指すことがある。単方向予測(Pモード)または双予測(Bモード)などのインターモードは、いくつかの時間ベースの圧縮モードのいずれかを指すことがある。
[0209] 符号化デバイス104は、区分ユニット35と、予測処理ユニット41と、フィルタユニット63と、ピクチャメモリ64と、加算器50と、変換処理ユニット52と、量子化ユニット54と、エントロピー符号化ユニット56とを含む。予測処理ユニット41は、動き推定ユニット42と、動き補償ユニット44と、イントラ予測処理ユニット46とを含む。ビデオブロック再構築のために、符号化デバイス104はまた、逆量子化ユニット58と、逆変換処理ユニット60と、加算器62とを含む。フィルタユニット63は、デブロッキングフィルタ、適応ループフィルタ(ALF)、およびサンプル適応オフセット(SAO)フィルタなど、1つまたは複数のループフィルタを表すものとする。図5では、フィルタユニット63はループ内フィルタであるとして示されているが、他の構成では、フィルタユニット63はループ後フィルタとして実装され得る。後処理デバイス57は、符号化デバイス104によって生成された符号化ビデオデータに対して追加の処理を実施し得る。本開示の技法は、いくつかの事例では、符号化デバイス104によって実装され得る。しかしながら、他の事例では、本開示の技法のうちの1つまたは複数は、後処理デバイス57によって実装され得る。
[0210] 図5に示されているように、符号化デバイス104はビデオデータを受信し、区分ユニット35はデータをビデオブロックに区分する。区分はまた、たとえば、LCUおよびCUのクワッドツリー構造に従って、スライス、スライスセグメント、タイル、または他のより大きいユニットへの区分、ならびにビデオブロック区分を含み得る。符号化デバイス104は、概して、符号化されるべきビデオスライス内のビデオブロックを符号化する構成要素を示す。スライスは、複数のビデオブロックに(および場合によっては、タイルと呼ばれるビデオブロックのセットに)分割され得る。予測処理ユニット41は、誤差結果(たとえば、コーディングレートおよびひずみレベルなど)に基づいて現在ビデオブロックについて、複数のイントラ予測コーディングモードのうちの1つ、または複数のインター予測コーディングモードのうちの1つなど、複数の可能なコーディングモードのうちの1つを選択し得る。予測処理ユニット41は、得られたイントラコード化ブロックまたはインターコード化ブロックを、残差ブロックデータを生成するために加算器50に提供し、参照ピクチャとして使用するための符号化ブロックを再構築するために加算器62に提供し得る。
[0211] 予測処理ユニット41内のイントラ予測処理ユニット46は、空間圧縮を行うために、コーディングされるべき現在ブロックと同じフレームまたはスライス中の1つまたは複数の隣接ブロックに対して現在ビデオブロックのイントラ予測コーディングを実施し得る。予測処理ユニット41内の動き推定ユニット42および動き補償ユニット44は、時間圧縮を行うために、1つまたは複数の参照ピクチャ中の1つまたは複数の予測ブロックに対して現在ビデオブロックのインター予測コーディングを実施する。
[0212] 動き推定ユニット42は、ビデオシーケンスに対する所定のパターンに従って、ビデオスライスのためのインター予測モードを決定するように構成され得る。所定のパターンは、シーケンス中のビデオスライスを、Pスライス、Bスライス、またはGPBスライスに指定し得る。動き推定ユニット42と動き補償ユニット44とは、高度に統合され得るが、概念的な目的のために別個に示されている。動き推定ユニット42によって実施される動き推定は、ビデオブロックについての動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する、現在ビデオフレームまたはピクチャ内のビデオブロックの予測ユニット(PU)の変位を示し得る。
[0213] 予測ブロックは、絶対差分和(SAD)、2乗差分和(SSD)、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきビデオブロックのPUにぴったり一致することがわかるブロックである。いくつかの例では、符号化デバイス104は、ピクチャメモリ64に記憶された参照ピクチャのサブ整数ピクセル位置についての値を計算し得る。たとえば、符号化デバイス104は、参照ピクチャの1/4ピクセル位置、1/8ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット42は、フルピクセル位置および分数ピクセル位置に対して動き探索を実施し、分数ピクセル精度で動きベクトルを出力し得る。
[0214] 動き推定ユニット42は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックのPUについての動きベクトルを計算する。参照ピクチャは、第1の参照ピクチャリスト(リスト0)または第2の参照ピクチャリスト(リスト1)から選択され得、それらの各々は、ピクチャメモリ64に記憶された1つまたは複数の参照ピクチャを識別する。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56と動き補償ユニット44とに送る。
[0215] 動き補償ユニット44によって実施される動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成すること、場合によっては、サブピクセル精度への補間を実施することを伴い得る。現在ビデオブロックのPUのための動きベクトルを受信すると、動き補償ユニット44は、動きベクトルが参照ピクチャリストにおいて指す予測ブロックの位置を特定し得る。符号化デバイス104は、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。ピクセル差分値は、ブロックのための残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含み得る。加算器50は、この減算演算を実施する1つまたは複数の構成要素を表す。動き補償ユニット44はまた、ビデオスライスのビデオブロックを復号する際に復号デバイス112が使用するための、ビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
[0216] イントラ予測処理ユニット46は、上記で説明されたように、動き推定ユニット42と動き補償ユニット44とによって実施されるインター予測の代替として、現在ブロックをイントラ予測し得る。特に、イントラ予測処理ユニット46は、現在ブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測処理ユニット46は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在ブロックを符号化し得、イントラ予測処理ユニット46は、テストされたモードから使用するために適切なイントラ予測モードを選択し得る。たとえば、イントラ予測処理ユニット46は、様々なテストされたイントラ予測モードのためにレートひずみ分析を使用してレートひずみ値を計算し得、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを作り出すために符号化された元の符号化されていないブロックとの間のひずみ(または誤差)の量、ならびに符号化ブロックを作り出すために使用されるビットレート(すなわち、ビット数)を決定する。イントラ予測処理ユニット46は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを決定するために、様々な符号化ブロックのためのひずみおよびレートから比を計算し得る。
[0217] いずれの場合も、ブロックのためのイントラ予測モードを選択した後に、イントラ予測処理ユニット46は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット56に提供し得る。エントロピー符号化ユニット56は、選択されたイントラ予測モードを示す情報を符号化し得る。符号化デバイス104は、様々なブロックのための符号化コンテキストの構成データ定義、ならびにコンテキストの各々について使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および修正されたイントラ予測モードインデックステーブルの指示を送信ビットストリーム中に含め得る。ビットストリーム構成データは、複数のイントラ予測モードインデックステーブルと、(コードワードマッピングテーブルとも呼ばれる)複数の修正されたイントラ予測モードインデックステーブルとを含み得る。
[0218] 予測処理ユニット41が、インター予測またはイントラ予測のいずれかを介して、現在ビデオブロックのための予測ブロックを生成した後、符号化デバイス104は、現在ビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロック中の残差ビデオデータは、1つまたは複数のTU中に含まれ、変換処理ユニット52に適用され得る。変換処理ユニット52は、離散コサイン変換(DCT)または概念的に同様の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換する。変換処理ユニット52は、残差ビデオデータをピクセルドメインから周波数ドメインなどの変換ドメインにコンバートし得る。
[0219] 変換処理ユニット52は、得られた変換係数を量子化ユニット54に送り得る。量子化ユニット54は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例では、量子化ユニット54は、次いで、量子化変換係数を含む行列の走査を実施し得る。代替的に、エントロピー符号化ユニット56が走査を実施し得る。
[0220] 量子化の後に、エントロピー符号化ユニット56は、量子化された変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット56は、コンテキスト適応型可変長コーディング(CAVLC)、コンテキスト適応型バイナリ算術コーディング(CABAC)、シンタックスベースコンテキスト適応型バイナリ算術コーディング(SBAC)、確率間隔区分エントロピー(PIPE)コーディングまたは別のエントロピー符号化技法を実施し得る。エントロピー符号化ユニット56によるエントロピー符号化の後に、符号化ビットストリームは復号デバイス112に送信されるか、あるいは復号デバイス112が後で送信するかまたは取り出すためにアーカイブされ得る。エントロピー符号化ユニット56はまた、コーディングされている現在ビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化し得る。
[0221] 逆量子化ユニット58および逆変換処理ユニット60は、参照ピクチャの参照ブロックとして後で使用するためにピクセルドメインにおいて残差ブロックを再構築するために、それぞれ逆量子化および逆変換を適用する。動き補償ユニット44は、残差ブロックを参照ピクチャリスト内の参照ピクチャのうちの1つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット44はまた、動き推定において使用するためのサブ整数ピクセル値を計算するために、再構築された残差ブロックに1つまたは複数の補間フィルタを適用し得る。加算器62は、ピクチャメモリ64に記憶するための参照ブロックを作り出すために、再構築された残差ブロックを動き補償ユニット44によって作り出された動き補償予測ブロックに加算する。参照ブロックは、後続のビデオフレームまたはピクチャ中のブロックをインター予測するために、動き推定ユニット42および動き補償ユニット44によって参照ブロックとして使用され得る。
[0222] このようにして、図5の符号化デバイス104は、本明細書で説明される技法のいずれかを実施するように構成されたビデオエンコーダの一例を表す。いくつかの場合には、本開示の技法のうちのいくつかは、後処理デバイス57によっても実装され得る。
[0223] 図6は、例示的な復号デバイス112を示すブロック図である。復号デバイス112は、エントロピー復号ユニット80と、予測処理ユニット81と、逆量子化ユニット86と、逆変換処理ユニット88と、加算器90と、フィルタユニット91と、ピクチャメモリ92とを含む。予測処理ユニット81は、動き補償ユニット82と、イントラ予測処理ユニット84とを含む。復号デバイス112は、いくつかの例では、図5からの符号化デバイス104に関して説明された符号化パスとは概して逆の復号パスを実施し得る。
[0224] 復号プロセス中に、復号デバイス112は、符号化デバイス104によって送られた、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビデオビットストリームを受信する。いくつかの実施形態では、復号デバイス112は、符号化デバイス104から符号化ビデオビットストリームを受信し得る。いくつかの実施形態では、復号デバイス112は、サーバ、メディアアウェアネットワーク要素(MANE)、ビデオエディタ/スプライサ、または上記で説明された技法のうちの1つまたは複数を実装するように構成された他のそのようなデバイスなど、ネットワークエンティティ79から符号化ビデオビットストリームを受信し得る。ネットワークエンティティ79は、符号化デバイス104を含むことも、含まないこともある。本開示で説明される技法のうちのいくつかは、ネットワークエンティティ79が符号化ビデオビットストリームを復号デバイス112に送信するより前に、ネットワークエンティティ79によって実装され得る。いくつかのビデオ復号システムでは、ネットワークエンティティ79および復号デバイス112は別個のデバイスの部分であり得るが、他の事例では、ネットワークエンティティ79に関して説明される機能は、復号デバイス112を備える同じデバイスによって実施され得る。
[0225] 復号デバイス112のエントロピー復号ユニット80は、量子化係数と、動きベクトルと、他のシンタックス要素とを生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット80は、動きベクトルと他のシンタックス要素とを予測処理ユニット81に転送する。復号デバイス112は、ビデオスライスレベルおよび/またはビデオブロックレベルのシンタックス要素を受信し得る。エントロピー復号ユニット80は、VPS、SPS、およびPPSなど、または複数のパラメータセット中の固定長シンタックス要素と可変長シンタックス要素の両方を処理し、パースし得る。
[0226] ビデオスライスがイントラコード化(I)スライスとしてコーディングされたとき、予測処理ユニット81のイントラ予測処理ユニット84は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化(すなわち、B、PまたはGPB)スライスとしてコーディングされたとき、予測処理ユニット81の動き補償ユニット82は、エントロピー復号ユニット80から受信された動きベクトルおよび他のシンタックス要素に基づいて、現在ビデオスライスのビデオブロックのための予測ブロックを作り出す。予測ブロックは、参照ピクチャリスト内の参照ピクチャのうちの1つから作り出され得る。復号デバイス112は、ピクチャメモリ92に記憶された参照ピクチャに基づいて、デフォルトの構築技法を使用して、参照フレームリスト、すなわち、リスト0とリスト1とを構築し得る。
[0227] 動き補償ユニット82は、動きベクトルと他のシンタックス要素とをパースすることによって現在ビデオスライスのビデオブロックのための予測情報を決定し、復号されている現在ビデオブロックのための予測ブロックを作り出すために、その予測情報を使用する。たとえば、動き補償ユニット82は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード(たとえば、イントラまたはインター予測)と、インター予測スライスタイプ(たとえば、Bスライス、Pスライス、またはGPBスライス)と、スライスのための1つまたは複数の参照ピクチャリストのための構築情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在ビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、パラメータセット中の1つまたは複数のシンタックス要素を使用し得る。
[0228] 動き補償ユニット82はまた、補間フィルタに基づいて補間を実施し得る。動き補償ユニット82は、参照ブロックのサブ整数ピクセルのための補間値を計算するために、ビデオブロックの符号化中に符号化デバイス104によって使用された補間フィルタを使用し得る。この場合、動き補償ユニット82は、受信されたシンタックス要素から符号化デバイス104によって使用された補間フィルタを決定し得、予測ブロックを作り出すためにその補間フィルタを使用し得る。
[0229] 逆量子化ユニット86は、ビットストリーム中で与えられ、エントロピー復号ユニット80によって復号された量子化変換係数を逆量子化、すなわち、量子化解除する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべきである逆量子化の程度を決定するための、ビデオスライス中のビデオブロックごとに符号化デバイス104によって計算される量子化パラメータの使用を含み得る。逆変換処理ユニット88は、ピクセルドメインにおける残差ブロックを作り出すために、逆変換(たとえば、逆DCTまたは他の好適な逆変換)、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
[0230] 動き補償ユニット82が、動きベクトルおよび他のシンタックス要素に基づいて現在ビデオブロックのための予測ブロックを生成した後に、復号デバイス112は、逆変換処理ユニット88からの残差ブロックを動き補償ユニット82によって生成された対応する予測ブロックと加算することによって、復号ビデオブロックを形成する。加算器90は、この加算演算を実施する1つまたは複数の構成要素を表す。所望される場合、(コーディングループ内またはコーディングループ後のいずれかの)ループフィルタも、ピクセル遷移を平滑化するために、またはさもなければビデオ品質を改善するために使用され得る。フィルタユニット91は、デブロッキングフィルタ、適応ループフィルタ(ALF)、およびサンプル適応オフセット(SAO)フィルタなど、1つまたは複数のループフィルタを表すものとする。図6では、フィルタユニット91はループ内フィルタであるとして示されているが、他の構成では、フィルタユニット91はループ後フィルタとして実装され得る。所与のフレームまたはピクチャ中の復号ビデオブロックは、次いで、後続の動き補償のために使用される参照ピクチャを記憶するピクチャメモリ92に記憶される。ピクチャメモリ92はまた、図1に示されているビデオ宛先デバイス122など、ディスプレイデバイス上で、後で提示するために復号ビデオを記憶する。
[0231] このようにして、図6の復号デバイス112は、本明細書で説明される技法のいずれかを実施するように構成されたビデオデコーダの一例を表す。
[0232] 本明細書で使用される「コンピュータ可読媒体」という用語は、限定はしないが、ポータブルまたは非ポータブル記憶デバイス、光記憶デバイス、ならびに(1つまたは複数の)命令および/またはデータを記憶、含有、または搬送することが可能な様々な他の媒体を含む。コンピュータ可読媒体は、データがそこに記憶され得る非一時的媒体を含み得、それは、ワイヤレスにまたはワイヤード接続を介して伝搬する搬送波および/または一時的電子信号を含まない。非一時的媒体の例は、限定はしないが、磁気ディスクまたはテープ、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD)などの光記憶媒体、フラッシュメモリ、メモリまたはメモリデバイスを含み得る。コンピュータ可読媒体は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、あるいは命令、データ構造、またはプログラムステートメントの任意の組合せを表し得るコードおよび/または機械実行可能命令をその上に記憶していることがある。コードセグメントは、情報、データ、引数、パラメータ、またはメモリ内容をパスおよび/または受信することによって、別のコードセグメントまたはハードウェア回路に結合され得る。情報、引数、パラメータ、データなどは、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信などを含む、任意の好適な手段を介してパス、転送、または送信され得る。
[0233] いくつかの実施形態では、コンピュータ可読記憶デバイス、媒体、およびメモリは、ビットストリームなどを含んでいるケーブル信号またはワイヤレス信号を含むことができる。しかしながら、述べられるとき、非一時的コンピュータ可読記憶媒体は、エネルギー、キャリア信号、電磁波、および信号自体などの媒体を明確に除外する。
[0234] 本明細書で提供される実施形態および例の完全な理解を提供するために、具体的な詳細が上記の説明で提供される。ただし、実施形態はこれらの具体的な詳細なしに実践され得ることを当業者は理解されよう。説明の明快のために、いくつかの事例では、本技術は、デバイス、デバイス構成要素、ソフトウェアで具現される方法におけるステップまたはルーチン、あるいはハードウェアとソフトウェアとの組合せを備える機能ブロックを含む個々の機能ブロックを含むものとして提示され得る。図に示されているおよび/または本明細書で説明される構成要素以外の追加の構成要素が使用され得る。たとえば、回路、システム、ネットワーク、プロセス、および他の構成要素は、実施形態を不要な詳細で不明瞭にしないためにブロック図の形式で構成要素として示され得る。他の事例では、実施形態を不明瞭にすることを回避するために、よく知られている回路、プロセス、アルゴリズム、構造、および技法が不要な詳細なしに示され得る。
[0235] 個々の実施形態は、フローチャート、流れ図、データフロー図、構造図、またはブロック図として示されるプロセスまたは方法として、上記で説明され得る。フローチャートは動作を逐次プロセスとして説明することがあるが、動作の多くは並行してまたは同時に実施され得る。さらに、動作の順序は並べ替えられ得る。それの動作が完了されるとき、プロセスは終了されるが、図中に含まれない追加のステップを有し得る。プロセスは、方法、関数、プロシージャ、サブルーチン、サブプログラムなどに対応し得る。プロセスが関数に対応するとき、それの終了は、呼出し関数またはメイン関数への関数の復帰に対応することができる。
[0236] 上記で説明された例によるプロセスおよび方法は、記憶されるかまたはさもなければコンピュータ可読媒体から利用可能である、コンピュータ実行可能命令を使用して実装され得る。そのような命令は、たとえば、汎用コンピュータ、専用コンピュータ、または処理デバイスが、ある機能または機能のグループを実施することを引き起こすか、あるいはさもなければそれらを実施するように構成する、命令とデータとを含むことができる。使用されるコンピュータリソースの部分が、ネットワークを介してアクセス可能であり得る。コンピュータ実行可能命令は、たとえば、バイナリ、アセンブリ言語などの中間フォーマット命令、ファームウェア、ソースコードなどであり得る。命令、使用される情報、および/または説明される例による方法中に作成される情報を記憶するために使用され得るコンピュータ可読媒体の例は、磁気または光ディスク、フラッシュメモリ、不揮発性メモリを備えたUSBデバイス、ネットワーク化された記憶デバイスなどを含む。
[0237] これらの開示によるプロセスおよび方法を実装するデバイスは、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せを含むことができ、様々なフォームファクタのいずれかをとることができる。ソフトウェア、ファームウェア、ミドルウェア、またはマイクロコードで実装されるとき、必要なタスクを実施するためのプログラムコードまたはコードセグメント(たとえば、コンピュータプログラム製品)は、コンピュータ可読または機械可読媒体に記憶され得る。(1つまたは複数の)プロセッサが、必要なタスクを実施し得る。フォームファクタの一般的な例は、ラップトップ、スマートフォン、モバイルフォン、タブレットデバイスまたは他のスモールフォームファクタパーソナルコンピュータ、携帯情報端末、ラックマウント(rackmount)デバイス、スタンドアロンデバイスなどを含む。本明細書で説明される機能はまた、周辺機器またはアドインカードで具現され得る。そのような機能はまた、さらなる例として、単一のデバイスにおいて実行する異なるチップまたは異なるプロセスの間で回路板上に実装され得る。
[0238] 命令、そのような命令を伝達するための媒体、それらを実行するためのコンピューティングリソース、およびそのようなコンピューティングリソースをサポートするための他の構造は、本開示で説明される機能を提供するための例示的な手段である。
[0239] 上記の説明では、本出願の態様がそれの特定の実施形態を参照しながら説明されたが、本出願はそれに限定されないことを、当業者は認識されよう。したがって、本出願の例示的な実施形態が本明細書で詳細に説明されているが、従来技術によって限定される場合を除いて、発明概念が、場合によっては様々に具現および採用され得、添付の特許請求の範囲が、そのような変形形態を含むように解釈されるものであることを理解されたい。上記で説明された適用例の様々な特徴および態様は、個々にまたは一緒に使用され得る。さらに、実施形態は、本明細書のより広い趣旨および範囲から逸脱することなく、本明細書で説明される環境および適用例以外に、任意の数の環境および適用例において利用され得る。したがって、本明細書および図面は、限定的なものではなく例示的なものとして考慮されるべきである。説明の目的で、方法は特定の順序で説明された。代替実施形態では、方法は、説明された順序とは異なる順序で実施され得ることを諒解されたい。
[0240] 本明細書で使用される、よりも小さい(「<」)、および、よりも大きい(「>」)のシンボルまたは専門用語は、本説明の範囲から逸脱することなく、それぞれ、よりも小さいかまたはそれに等しい(「≦」)、および、よりも大きいかまたはそれに等しい(「≧」)のシンボルと置き換えられ得ることを、当業者は諒解されよう。
[0241] 構成要素が、ある動作を実施する「ように構成されて」いるものとして説明される場合、そのような構成は、たとえば、動作を実施するように電子回路または他のハードウェアを設計することによって、動作を実施するようにプログラマブル電子回路(たとえば、マイクロプロセッサ、または他の好適な電子回路)をプログラムすることによって、またはそれらの任意の組合せによって、達成され得る。
[0242] 「に結合された」という句は、直接的にまたは間接的にのいずれかで別の構成要素に物理的に接続された任意の構成要素、および/あるいは直接的にまたは間接的にのいずれかで別の構成要素と通信している(たとえば、ワイヤードまたはワイヤレス接続、および/あるいは他の好適な通信インターフェースを介して別の構成要素に接続された)任意の構成要素を指す。
[0243] セット「のうちの少なくとも1つ」、および/またはセットのうちの「1つまたは複数」を具陳するクレームの文言または本開示における他の文言は、セットのうちの1つのメンバーまたは(任意の組合せにおける)セットのうちの複数のメンバーがクレームを満足することを示す。たとえば、「AおよびBのうちの少なくとも1つ」を具陳するクレームの文言は、A、B、またはAおよびBを意味する。別の例では、「A、B、およびCのうちの少なくとも1つ」を具陳するクレームの文言は、A、B、C、またはAおよびB、またはAおよびC、またはBおよびC、またはAおよびBおよびCを意味する。セット「のうちの少なくとも1つ」および/またはセットのうちの「1つまたは複数」という文言は、セットを、セットに記載されている項目に限定しない。たとえば、「AおよびBのうちの少なくとも1つ」を具陳するクレームの文言は、A、B、またはAおよびBを意味することができ、さらに、AおよびBのセットに記載されていない項目を含むことができる。
[0244] 本明細書で開示される実施形態に関して説明される、様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、ファームウェア、またはそれらの組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップが、概してそれらの機能に関して上記で説明された。そのような機能がハードウェアとして実装されるのかソフトウェアとして実装されるのかは、特定の適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明される機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本出願の範囲からの逸脱を生じるものと解釈されるべきではない。
[0245] 本明細書で説明される技法はまた、電子ハードウェア、コンピュータソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセットおよび他のデバイスにおける適用を含む複数の用途を有する集積回路デバイスなど、様々なデバイスのいずれかにおいて実装され得る。モジュールまたは構成要素として説明される特徴は、集積論理デバイスに一緒に、または個別であるが相互運用可能な論理デバイスとして別個に実装され得る。ソフトウェアで実装された場合、本技法は、実行されたとき、上記で説明された方法のうちの1つまたは複数を実施する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体によって、少なくとも部分的に実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含み得るコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、シンクロナスダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM(登録商標))、フラッシュメモリ、磁気または光データ記憶媒体など、メモリまたはデータ記憶媒体を備え得る。本技法は、追加または代替として、伝搬信号または伝搬波などの、命令またはデータ構造の形態でプログラムコードを搬送または通信し、コンピュータによってアクセスされ、読み取られ、および/または実行され得るコンピュータ可読通信媒体によって少なくとも部分的に実現され得る。
[0246] プログラムコードは、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、あるいは他の等価の集積回路またはディスクリート論理回路など、1つまたは複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示で説明される技法のいずれかを実施するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。したがって、本明細書で使用される「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、あるいは本明細書で説明される技法の実装に好適な任意の他の構造または装置のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明される機能は、符号化および復号のために構成された専用のソフトウェアモジュールまたはハードウェアモジュール内に提供され得、あるいは複合ビデオエンコーダ/デコーダ(コーデック)に組み込まれ得る。
[0247] 本開示の例示的な態様は以下を含む。
[0248] 態様1.ビデオデータを処理するための装置であって、少なくとも1つのメモリと、少なくとも1つのメモリに結合された少なくとも1つのプロセッサとを備え、少なくとも1つのプロセッサは、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、ビットストリームに関連する期間タイプシンタックス要素を取り出すことと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとを行うように構成された、装置。
[0249] 態様2.グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャまたはピクチャの一部分に適用可能であることを指定し、ピクチャの一部分がピクチャの全体よりも小さい、請求項1に記載の装置。
[0250] 態様3.グラニュラリティタイプシンタックス要素の値は、CMが、ビットストリームの1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する、請求項1に記載の装置。
[0251] 態様4.期間タイプシンタックス要素は、今度の期間についての指定された時間間隔、今度の期間についてのピクチャの数、今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項1に記載の装置。
[0252] 態様5.少なくとも1つのプロセッサが、ビットストリームに関連するグラニュラリティレベルCMシンタックス構造を取り出すように構成され、グラニュラリティレベルCMシンタックス構造が、今度の期間にわたるビットストリームの1つまたは複数のグラニュラリティセグメントについてのグラニュラリティレベル複雑さメトリックを指定する、請求項1に記載の装置。
[0253] 態様6.少なくとも1つのプロセッサは、ビットストリームに関連する追加の期間タイプシンタックス要素を取り出すことと、追加の期間タイプシンタックス要素がグラニュラリティタイプシンタックス要素に関連し、ここにおいて、追加の期間タイプシンタックス要素が期間タイプシンタックス要素とは異なる、グラニュラリティタイプシンタックス要素と追加の期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとを行うように構成された、請求項1に記載の装置。
[0254] 態様7.少なくとも1つのプロセッサは、ビットストリームに関連するサブピクチャシンタックス要素、サブピクチャシンタックス要素は、CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、CTB数シンタックス要素は、グラニュラリティのタイプがスライスまたはタイルに等しく、今度の期間が複数のピクチャにわたるとき、今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいはビットストリームに関連する平均コーディングツリーブロック(CTB)数シンタックス要素、平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、のうちの少なくとも1つを取り出すように構成された、請求項1に記載の装置。
[0255] 態様8.イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、請求項1に記載の装置。
[0256] 態様9.インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、請求項1に記載の装置。
[0257] 態様10.少なくとも1つのプロセッサが、ビットストリームに関連するCMに基づいて装置の動作周波数を決定するように構成された、請求項1に記載の装置。
[0258] 態様11.ビットストリームの少なくとも一部分を表示するように構成されたディスプレイをさらに備える、請求項1に記載の装置。
[0259] 態様12.装置が、モバイルデバイス、ウェアラブルデバイス、エクステンデッドリアリティデバイス、カメラ、パーソナルコンピュータ、車両、ロボティックデバイス、テレビジョン、またはコンピューティングデバイスのうちの1つである、請求項1に記載の装置。
[0260] 態様13.ビデオデータを処理するための方法であって、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、ビットストリームに関連する期間タイプシンタックス要素を取り出すことと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとを備える、方法。
[0261] 態様14.グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャまたはピクチャの一部分に適用可能であることを指定し、ピクチャの一部分がピクチャの全体よりも小さい、請求項13に記載の方法。
[0262] 態様15.グラニュラリティタイプシンタックス要素の値は、CMが、ビットストリームの1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する、請求項13に記載の方法。
[0263] 態様16.期間タイプシンタックス要素は、今度の期間についての指定された時間間隔、今度の期間についてのピクチャの数、今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項13に記載の方法。
[0264] 態様17.ビットストリームに関連するグラニュラリティレベルCMシンタックス構造を取り出すことをさらに備え、グラニュラリティレベルCMシンタックス構造が、今度の期間にわたるビットストリームの1つまたは複数のグラニュラリティセグメントについてのグラニュラリティレベル複雑さメトリックを指定する、請求項13に記載の方法。
[0265] 態様18.ビットストリームに関連する追加の期間タイプシンタックス要素を取り出すことと、追加の期間タイプシンタックス要素がグラニュラリティタイプシンタックス要素に関連し、ここにおいて、追加の期間タイプシンタックス要素が期間タイプシンタックス要素とは異なる、グラニュラリティタイプシンタックス要素と追加の期間タイプシンタックス要素とに基づいてビットストリームの一部分を復号することとをさらに備える、請求項13に記載の方法。
[0266] 態様19.ビットストリームに関連するサブピクチャシンタックス要素、サブピクチャシンタックス要素は、CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、CTB数シンタックス要素は、グラニュラリティのタイプがスライスまたはタイルに等しく、今度の期間が複数のピクチャにわたるとき、今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいはビットストリームに関連する平均コーディングツリーブロック(CTB)数シンタックス要素、平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、のうちの少なくとも1つを取り出すことをさらに備える、請求項13に記載の方法。
[0267] 態様20.イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、請求項13に記載の方法。
[0268] 態様21.インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、請求項13に記載の方法。
[0269] 態様22.ビットストリームの少なくとも一部分をディスプレイ上に表示することをさらに備える、請求項13に記載の方法。
[0270] 態様23.ビットストリームに関連するCMに基づいてデバイスの動作周波数を決定することをさらに備える、請求項13に記載の方法。
[0271] 態様24.ビデオデータを処理するための装置であって、少なくとも1つのメモリと、少なくとも1つのメモリに結合された少なくとも1つのプロセッサとを備え、少なくとも1つのプロセッサは、ビデオデータを取得することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することと、ビットストリームについて、ビットストリームに関連する期間タイプシンタックス要素を生成することと、期間タイプシンタックス要素が、CMが適用可能である今度の時間期間またはピクチャのセットを示す、ビデオデータに関連するビットストリームを生成することと、ビットストリームが、グラニュラリティタイプシンタックス要素と期間タイプシンタックス要素とを含む、生成されたビットストリームを出力することとを行うように構成された、装置。
[0272] 態様25.グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャまたはピクチャの一部分に適用可能であることを指定し、ピクチャの一部分がピクチャの全体よりも小さい、請求項24に記載の装置。
[0273] 態様26.グラニュラリティタイプシンタックス要素の値は、CMが、ビットストリームの1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する、請求項24に記載の装置。
[0274] 態様27.期間タイプシンタックス要素は、今度の期間についての指定された時間間隔、今度の期間についてのピクチャの数、今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項24に記載の装置。
[0275] 態様28.1つまたは複数のプロセッサが、ビットストリームについて、今度の期間にわたる1つまたは複数のエンティティについてのグラニュラリティレベル複雑さメトリックを指定するグラニュラリティレベルCMシンタックス構造を生成するように構成された、請求項24に記載の装置。
[0276] 態様29.期間タイプシンタックス要素は、今度の期間についての指定された時間間隔、今度の期間についてのピクチャの数、今度の期間が、次のスライスを含んでいるピクチャまでのすべてのピクチャを含むこと、または今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項24に記載の装置。
[0277] 態様30.少なくとも1つのプロセッサが、ビットストリームについて、関連する追加の期間タイプシンタックス要素を生成するように構成され、追加の期間タイプシンタックス要素がグラニュラリティタイプシンタックス要素に関連し、ここにおいて、追加の期間タイプシンタックス要素が期間タイプシンタックス要素とは異なり、ここにおいて、追加の期間タイプシンタックス要素が、グラニュラリティタイプシンタックス要素でビットストリームの一部分を復号するためのものである、請求項24に記載の装置。
[0278] 態様31.少なくとも1つのプロセッサは、ビットストリームについて、ビットストリームに関連するサブピクチャシンタックス要素、サブピクチャシンタックス要素は、CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、CTB数シンタックス要素は、グラニュラリティのタイプがスライスまたはタイルに等しく、今度の期間が複数のピクチャにわたるとき、今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいはビットストリームに関連する平均コーディングツリーブロック(CTB)数シンタックス要素、平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、のうちの少なくとも1つを生成するように構成された、請求項24に記載の装置。
[0279] 態様32.イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、請求項24に記載の装置。
[0280] 態様33.インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、請求項24に記載の装置。
[0281] 態様34.ビデオデータをキャプチャするように構成されたカメラをさらに備える、請求項24に記載の装置。
[0282] 態様35.装置が、モバイルデバイス、ウェアラブルデバイス、エクステンデッドリアリティデバイス、カメラ、パーソナルコンピュータ、車両、ロボティックデバイス、テレビジョン、またはコンピューティングデバイスのうちの1つである、請求項24に記載の装置。
[0283] 態様36.少なくとも1つのプロセッサが、ビットストリームの1つまたは複数のグラニュラリティセグメントに関連する1つまたは複数の品質復元メトリックを取り出すように構成された、請求項1に記載の装置。
[0284] 態様37.少なくとも1つのプロセッサが、補足エンハンスメント情報(SEI)メッセージを受信することと、SEIメッセージからグラニュラリティタイプシンタックス要素を取り出すこととを行うように構成された、請求項1に記載の装置。
[0285] 態様38.装置がデコーダを含む、請求項1に記載の装置。
[0286] 態様39.装置が、1つまたは複数のピクチャをキャプチャするように構成されたカメラを含む、請求項1に記載の装置。
[0287] 態様40.少なくとも1つのプロセッサが、ビットストリームの1つまたは複数のグラニュラリティセグメントに関連する1つまたは複数の品質復元メトリックを取り出すように構成された、請求項13に記載の方法。
[0288] 態様41.少なくとも1つのプロセッサが、補足エンハンスメント情報(SEI)メッセージを受信することと、SEIメッセージからグラニュラリティタイプシンタックス要素を取り出すこととを行うように構成された、請求項13に記載の方法。
[0289] 態様42.装置がデコーダを含む、請求項13に記載の方法。
[0290] 態様43.装置が、1つまたは複数のピクチャをキャプチャするように構成されたカメラを含む、請求項13に記載の方法。
[0291] 態様44.少なくとも1つのプロセッサが、ビットストリームの1つまたは複数のグラニュラリティセグメントに関連する1つまたは複数の品質復元メトリックを符号化するように構成された、請求項24に記載の装置。
[0292] 態様45.少なくとも1つのプロセッサが、グラニュラリティタイプシンタックス要素で補足エンハンスメント情報(SEI)メッセージを符号化するように構成された、請求項24に記載の装置。
[0293] 態様46.装置がデコーダを含む、請求項24に記載の装置。
[0294] 態様47.装置が、ビデオデータの1つまたは複数のピクチャをキャプチャするように構成されたカメラを含む、請求項24に記載の装置。
[0295] 態様48:態様24から47のいずれかに記載の動作のうちの1つまたは複数を備える、ビデオデータを処理する方法。
[0296] 態様49:1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに態様13から23および態様48のいずれかに記載の動作のうちの1つまたは複数を実施させる命令を記憶した非一時的コンピュータ可読媒体。
[0297] 態様50:態様13から23および態様48のいずれかに記載の動作のうちの1つまたは複数を実施するための手段を備える、ビデオデータを処理するための装置。
[0298] 態様1A:ビデオデータを処理するための装置であって、少なくとも1つのメモリと、少なくとも1つのメモリに結合された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、ビットストリームを取得することと、ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、グラニュラリティタイプシンタックス要素が、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定する、を行うように構成された、装置。
[0299] 態様2A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャに適用可能であることを指定する、態様1Aに記載の装置。
[0300] 態様3A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスライスに適用可能であることを指定する、態様2Aに記載の装置。
[0301] 態様4A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのタイルに適用可能であることを指定する、態様2Aに記載の装置。
[0302] 態様5A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのサブピクチャに適用可能であることを指定する、態様2Aに記載の装置。
[0303] 態様6A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスケーラブルレイヤに適用可能であることを指定する、態様2Aに記載の装置。
[0304] 態様7A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのコーディングツリーユニット(CTU)行に適用可能であることを指定する、態様2Aに記載の装置。
[0305] 態様8A:1つまたは複数のプロセッサが、ビットストリームに関連する期間タイプシンタックス要素を取り出すように構成され、期間タイプシンタックス要素は、CMが適用可能である今度の期間のタイプを指定する、態様1Aから7Aのいずれかに記載の装置。
[0306] 態様9A:1つまたは複数のプロセッサが、ビットストリームに関連するピクチャレベルCMシンタックス構造を取り出すように構成され、ピクチャレベルCMシンタックス構造が、期間にわたる1つまたは複数のピクチャについての複雑さメトリックを指定する、態様1Aから8Aのいずれかに記載の装置。
[0307] 態様10A:1つまたは複数のプロセッサが、ビットストリームに関連するグラニュラリティレベルCMシンタックス構造を取り出すように構成され、グラニュラリティレベルCMシンタックス構造が、期間にわたる1つまたは複数のエンティティについてのグラニュラリティレベル複雑さメトリックを指定する、態様1Aから9Aのいずれかに記載の装置。
[0308] 態様11A:1つまたは複数のエンティティが、スライス、タイル、サブピクチャ、およびレイヤのうちの少なくとも1つを含む、態様10Aに記載の装置。
[0309] 態様12A:1つまたは複数のプロセッサが、ビットストリームに関連するサブピクチャシンタックス要素を取り出すように構成され、サブピクチャシンタックス要素は、期間が複数のピクチャにわたるとき、サブピクチャ識別子(ID)がCM中でシグナリングされることを示す、態様1Aから11Aのいずれかに記載の装置。
[0310] 態様13A:1つまたは複数のプロセッサが、ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素を取り出すように構成され、CTB数シンタックス要素は、グラニュラリティのタイプがスライスまたはタイルに等しく、期間が複数のピクチャにわたるとき、期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、態様1Aから12Aのいずれかに記載の装置。
[0311] 態様14A:1つまたは複数のプロセッサが、ビットストリームに関連する平均コーディングツリーブロック(CTB)数シンタックス要素を取り出すように構成され、平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、態様1Aから13Aのいずれかに記載の装置。
[0312] 態様15A:イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、態様1Aから14Aのいずれかに記載の装置。
[0313] 態様16A:インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、態様1Aから15Aのいずれかに記載の装置。
[0314] 態様17A:1つまたは複数のプロセッサが、ビットストリームの1つまたは複数のグラニュラリティセグメントに関連する1つまたは複数の品質復元メトリックを取り出すように構成された、態様1Aから16Aのいずれかに記載の装置。
[0315] 態様18A:ビットストリームの1つまたは複数のグラニュラリティセグメントが、スライス、タイル、およびサブピクチャのうちの少なくとも1つを含む、態様17Aに記載の装置。
[0316] 態様19A:1つまたは複数のプロセッサが、補足エンハンスメント情報(SEI)メッセージを受信することと、SEIメッセージからグラニュラリティタイプシンタックス要素を取り出すこととを行うように構成された、態様1Aから18Aのいずれかに記載の装置。
[0317] 態様20A:1つまたは複数のプロセッサが、ビットストリームに関連するCMに基づいて装置の動作周波数を決定するように構成された、態様1Aから19Aのいずれかに記載の装置。
[0318] 態様21A:装置がデコーダを含む、態様1Aから20Aのいずれかに記載の装置。
[0319] 態様22A:1つまたは複数の出力ピクチャを表示するように構成されたディスプレイをさらに備える、態様1Aから21Aのいずれかに記載の装置。
[0320] 態様23A:1つまたは複数のピクチャをキャプチャするように構成されたカメラをさらに備える、態様1Aから22Aのいずれかに記載の装置。
[0321] 態様24A:装置がモバイルデバイスである、態様1Aから23Aのいずれかに記載の装置。
[0322] 態様25A:態様1Aから24Aのいずれかに記載の動作のうちの1つまたは複数を備える、ビデオデータを処理する方法。
[0323] 態様26A:1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに態様1Aから24Aのいずれかに記載の動作のうちの1つまたは複数を実施させる命令を記憶した非一時的コンピュータ可読媒体。
[0324] 態様27A:態様1Aから24Aのいずれかに記載の動作のうちの1つまたは複数を実施するための手段を備える、ビデオデータを処理するための装置。
[0325] 態様28A:ビデオデータを処理するための装置であって、メモリと、メモリに結合された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、ビデオデータを取得することと、ビデオデータに関連するビットストリームを生成することと、ビットストリームについて、ビットストリームに関連する複雑さメトリック(CM)が適用可能であるグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することとを行うように構成された、装置。
[0326] 態様29A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのピクチャに適用可能であることを指定する、態様28Aに記載の装置。
[0327] 態様30A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスライスに適用可能であることを指定する、態様29Aに記載の装置。
[0328] 態様31A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのタイルに適用可能であることを指定する、態様29Aに記載の装置。
[0329] 態様32A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのサブピクチャに適用可能であることを指定する、態様29Aに記載の装置。
[0330] 態様33A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのスケーラブルレイヤに適用可能であることを指定する、態様29Aに記載の装置。
[0331] 態様34A:グラニュラリティタイプシンタックス要素の値は、CMがビットストリームのコーディングツリーユニット(CTU)行に適用可能であることを指定する、態様29Aに記載の装置。
[0332] 態様35A:1つまたは複数のプロセッサは、ビットストリームについて、CMが適用可能である今度の期間のタイプを指定する期間タイプシンタックス要素を生成するように構成された、態様28Aから34Aのいずれかに記載の装置。
[0333] 態様36A:1つまたは複数のプロセッサが、ビットストリームについて、期間にわたる1つまたは複数のピクチャについての複雑さメトリックを指定するピクチャレベルCMシンタックス構造を生成するように構成された、態様28Aから35Aのいずれかに記載の装置。
[0334] 態様37A:1つまたは複数のプロセッサが、ビットストリームについて、期間にわたる1つまたは複数のエンティティについてのグラニュラリティレベル複雑さメトリックを指定するグラニュラリティレベルCMシンタックス構造を生成するように構成された、態様28Aから36Aのいずれかに記載の装置。
[0335] 態様38A:1つまたは複数のエンティティが、スライス、タイル、サブピクチャ、およびレイヤのうちの少なくとも1つを含む、態様37Aに記載の装置。
[0336] 態様39A:1つまたは複数のプロセッサは、ビットストリームについて、期間が複数のピクチャにわたるとき、サブピクチャ識別子(ID)がCM中でシグナリングされることを示すサブピクチャシンタックス要素を生成するように構成された、態様28Aから38Aのいずれかに記載の装置。
[0337] 態様40A:1つまたは複数のプロセッサは、ビットストリームについて、グラニュラリティのタイプがスライスまたはタイルに等しく、期間が複数のピクチャにわたるとき、期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、コーディングツリーブロック(CTB)数シンタックス要素を生成するように構成された、態様28Aから39Aのいずれかに記載の装置。
[0338] 態様41A:1つまたは複数のプロセッサが、ビットストリームについて、ピクチャごとのグラニュラリティごとのコーディングツリーブロック(CTB)または4×4ブロックの平均数を示す平均CTB数シンタックス要素を生成するように構成された、態様28Aから40Aのいずれかに記載の装置。
[0339] 態様42A:イントラコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、態様28Aから41Aのいずれかに記載の装置。
[0340] 態様43A:インターコード化ブロック統計値は、ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、ビットストリームの少なくとも一部分に関連してシグナリングされる、態様28Aから42Aのいずれかに記載の装置。
[0341] 態様44A:1つまたは複数のプロセッサが、ビットストリームについて、ビットストリームの1つまたは複数のグラニュラリティセグメントに関連する1つまたは複数の品質復元メトリックを生成するように構成された、態様28Aから43Aのいずれかに記載の装置。
[0342] 態様45A:ビットストリームの1つまたは複数のグラニュラリティセグメントが、スライス、タイル、およびサブピクチャのうちの少なくとも1つを含む、態様44Aに記載の装置。
[0343] 態様46A:1つまたは複数のプロセッサが、補足エンハンスメント情報(SEI)メッセージを生成することと、グラニュラリティタイプシンタックス要素をSEIメッセージ中に含めることとを行うように構成された、態様28Aから45Aのいずれかに記載の装置。
[0344] 態様47A:1つまたは複数のプロセッサが、ビットストリームを記憶するように構成された、態様28Aから46Aのいずれかに記載の装置。
[0345] 態様48A:1つまたは複数のプロセッサが、ビットストリームを送信するように構成された、態様28Aから47Aのいずれかに記載の装置。
[0346] 態様49A:装置がエンコーダを含む、態様28Aから48Aのいずれかに記載の装置。
[0347] 態様50A:1つまたは複数の出力ピクチャを表示するように構成されたディスプレイをさらに備える、態様28Aから49Aのいずれかに記載の装置。
[0348] 態様51A:1つまたは複数のピクチャをキャプチャするように構成されたカメラをさらに備える、態様28Aから50Aのいずれかに記載の装置。
[0349] 態様52A:装置がモバイルデバイスである、態様28Aから51Aのいずれかに記載の装置。
[0350] 態様53A:態様28Aから52Aのいずれかに記載の動作のうちの1つまたは複数を備える、ビデオデータを処理する方法。
[0351] 態様54A:1つまたは複数のプロセッサによって実行されたとき、1つまたは複数のプロセッサに態様28Aから52Aのいずれかに記載の動作のうちの1つまたは複数を実施させる命令を記憶した非一時的コンピュータ可読媒体。
[0352] 態様55A:態様28Aから52Aのいずれかに記載の動作のうちの1つまたは複数を実施するための手段を備える、ビデオデータを処理するための装置。

Claims (35)

  1. ビデオデータを処理するための装置であって、
    少なくとも1つのメモリと、
    前記少なくとも1つのメモリに結合された少なくとも1つのプロセッサと
    を備え、前記少なくとも1つのプロセッサは、
    ビットストリームを取得することと、
    前記ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、前記グラニュラリティタイプシンタックス要素が、前記ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、
    前記ビットストリームに関連する期間タイプシンタックス要素を取り出すことと、前記期間タイプシンタックス要素が、前記CMが適用可能である今度の時間期間またはピクチャのセットを示す、
    前記グラニュラリティタイプシンタックス要素と前記期間タイプシンタックス要素とに基づいて前記ビットストリームの一部分を復号することと
    を行うように構成された、装置。
  2. 前記グラニュラリティタイプシンタックス要素の値は、前記CMが前記ビットストリームのピクチャまたは前記ピクチャの一部分に適用可能であることを指定し、前記ピクチャの前記一部分が前記ピクチャの全体よりも小さい、請求項1に記載の装置。
  3. 前記グラニュラリティタイプシンタックス要素の値は、前記CMが、前記ビットストリームの前記1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する、請求項1に記載の装置。
  4. 前記期間タイプシンタックス要素は、前記今度の期間についての指定された時間間隔、前記今度の期間についてのピクチャの数、前記今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または前記今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項1に記載の装置。
  5. 前記少なくとも1つのプロセッサが、前記ビットストリームに関連するグラニュラリティレベルCMシンタックス構造を取り出すように構成され、前記グラニュラリティレベルCMシンタックス構造が、前記今度の期間にわたる前記ビットストリームの1つまたは複数のグラニュラリティセグメントについてのグラニュラリティレベル複雑さメトリックを指定する、請求項1に記載の装置。
  6. 前記少なくとも1つのプロセッサは、
    前記ビットストリームに関連する追加の期間タイプシンタックス要素を取り出すことと、前記追加の期間タイプシンタックス要素が前記グラニュラリティタイプシンタックス要素に関連し、ここにおいて、前記追加の期間タイプシンタックス要素が前記期間タイプシンタックス要素とは異なる、
    前記グラニュラリティタイプシンタックス要素と前記追加の期間タイプシンタックス要素とに基づいて前記ビットストリームの前記一部分を復号することと
    を行うように構成された、請求項1に記載の装置。
  7. 前記少なくとも1つのプロセッサは、
    前記ビットストリームに関連するサブピクチャシンタックス要素、前記サブピクチャシンタックス要素は、前記CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、
    前記ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、前記CTB数シンタックス要素は、グラニュラリティの前記タイプがスライスまたはタイルに等しく、前記今度の期間が複数のピクチャにわたるとき、前記今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいは
    前記ビットストリームに関連する平均CTB数シンタックス要素、前記平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、
    のうちの少なくとも1つを取り出すように構成された、請求項1に記載の装置。
  8. イントラコード化ブロック統計値は、前記ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、前記ビットストリームの少なくとも前記一部分に関連してシグナリングされる、請求項1に記載の装置。
  9. インターコード化ブロック統計値は、前記ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、前記ビットストリームの少なくとも前記一部分に関連してシグナリングされる、請求項1に記載の装置。
  10. 前記少なくとも1つのプロセッサが、前記ビットストリームに関連する前記CMに基づいて前記装置の動作周波数を決定するように構成された、請求項1に記載の装置。
  11. 前記ビットストリームの少なくとも前記一部分を表示するように構成されたディスプレイをさらに備える、請求項1に記載の装置。
  12. 前記装置が、モバイルデバイス、ウェアラブルデバイス、エクステンデッドリアリティデバイス、カメラ、パーソナルコンピュータ、車両、ロボティックデバイス、テレビジョン、またはコンピューティングデバイスのうちの1つである、請求項1に記載の装置。
  13. ビデオデータを処理するための方法であって、
    ビットストリームを取得することと、
    前記ビットストリームに関連するグラニュラリティタイプシンタックス要素を取り出すことと、前記グラニュラリティタイプシンタックス要素が、前記ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定する、
    前記ビットストリームに関連する期間タイプシンタックス要素を取り出すことと、前記期間タイプシンタックス要素が、前記CMが適用可能である今度の時間期間またはピクチャのセットを示す、
    前記グラニュラリティタイプシンタックス要素と前記期間タイプシンタックス要素とに基づいて前記ビットストリームの一部分を復号することと
    を備える、方法。
  14. 前記グラニュラリティタイプシンタックス要素の値は、前記CMが前記ビットストリームのピクチャまたは前記ピクチャの一部分に適用可能であることを指定し、前記ピクチャの前記一部分が前記ピクチャの全体よりも小さい、請求項13に記載の方法。
  15. 前記グラニュラリティタイプシンタックス要素の値は、前記CMが、前記ビットストリームの前記1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する、請求項13に記載の方法。
  16. 前記期間タイプシンタックス要素は、前記今度の期間についての指定された時間間隔、前記今度の期間についてのピクチャの数、前記今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または前記今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項13に記載の方法。
  17. 前記ビットストリームに関連するグラニュラリティレベルCMシンタックス構造を取り出すことをさらに備え、前記グラニュラリティレベルCMシンタックス構造が、前記今度の期間にわたる前記ビットストリームの1つまたは複数のグラニュラリティセグメントについてのグラニュラリティレベル複雑さメトリックを指定する、請求項13に記載の方法。
  18. 前記ビットストリームに関連する追加の期間タイプシンタックス要素を取り出すことと、前記追加の期間タイプシンタックス要素が前記グラニュラリティタイプシンタックス要素に関連し、ここにおいて、前記追加の期間タイプシンタックス要素が前記期間タイプシンタックス要素とは異なる、
    前記グラニュラリティタイプシンタックス要素と前記追加の期間タイプシンタックス要素とに基づいて前記ビットストリームの一部分を復号することと
    をさらに備える、請求項13に記載の方法。
  19. 前記ビットストリームに関連するサブピクチャシンタックス要素、前記サブピクチャシンタックス要素は、前記CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、
    前記ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、前記CTB数シンタックス要素は、グラニュラリティの前記タイプがスライスまたはタイルに等しく、前記今度の期間が複数のピクチャにわたるとき、前記今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいは
    前記ビットストリームに関連する平均CTB数シンタックス要素、前記平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、
    のうちの少なくとも1つを取り出すことをさらに備える、請求項13に記載の方法。
  20. イントラコード化ブロック統計値は、前記ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、前記ビットストリームの少なくとも前記一部分に関連してシグナリングされる、請求項13に記載の方法。
  21. インターコード化ブロック統計値は、前記ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、前記ビットストリームの少なくとも前記一部分に関連してシグナリングされる、請求項13に記載の方法。
  22. 前記ビットストリームの少なくとも前記一部分をディスプレイ上に表示することをさらに備える、請求項13に記載の方法。
  23. 前記ビットストリームに関連する前記CMに基づいてデバイスの動作周波数を決定することをさらに備える、請求項13に記載の方法。
  24. ビデオデータを処理するための装置であって、
    少なくとも1つのメモリと、
    前記少なくとも1つのメモリに結合された少なくとも1つのプロセッサと
    を備え、前記少なくとも1つのプロセッサは、
    ビデオデータを取得することと、
    ビットストリームについて、前記ビットストリームに関連する複雑さメトリック(CM)が適用可能である1つまたは複数のピクチャのグラニュラリティのタイプを指定するグラニュラリティタイプシンタックス要素を生成することと、
    前記ビットストリームについて、前記ビットストリームに関連する期間タイプシンタックス要素を生成することと、前記期間タイプシンタックス要素が、前記CMが適用可能である今度の時間期間またはピクチャのセットを示す、
    前記ビデオデータに関連する前記ビットストリームを生成することと、前記ビットストリームが、前記グラニュラリティタイプシンタックス要素と前記期間タイプシンタックス要素とを含む、
    前記生成されたビットストリームを出力することと
    を行うように構成された、装置。
  25. 前記グラニュラリティタイプシンタックス要素の値は、前記CMが前記ビットストリームのピクチャまたは前記ピクチャの一部分に適用可能であることを指定し、前記ピクチャの前記一部分が前記ピクチャの全体よりも小さい、請求項24に記載の装置。
  26. 前記グラニュラリティタイプシンタックス要素の値は、前記CMが、前記ビットストリームの前記1つまたは複数のピクチャのスライス、タイル、サブピクチャ、スケーラブルレイヤ、またはコーディングツリーユニット(CTU)行のうちの少なくとも1つに適用可能であることを指定する、請求項24に記載の装置。
  27. 前記期間タイプシンタックス要素は、前記今度の期間についての指定された時間間隔、前記今度の期間についてのピクチャの数、前記今度の期間が、次のスライスを含むピクチャまでのすべてのピクチャを含むこと、または前記今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項24に記載の装置。
  28. 前記少なくとも1つのプロセッサが、前記ビットストリームについて、前記今度の期間にわたる1つまたは複数のエンティティについてのグラニュラリティレベル複雑さメトリックを指定するグラニュラリティレベルCMシンタックス構造を生成するように構成された、請求項24に記載の装置。
  29. 前記期間タイプシンタックス要素は、前記今度の期間についての指定された時間間隔、前記今度の期間についてのピクチャの数、前記今度の期間が、次のスライスを含んでいるピクチャまでのすべてのピクチャを含むこと、または前記今度の期間が単一のピクチャを含むことのうちの少なくとも1つを示す、請求項24に記載の装置。
  30. 前記少なくとも1つのプロセッサが、前記ビットストリームについて、関連する追加の期間タイプシンタックス要素を生成するように構成され、前記追加の期間タイプシンタックス要素が前記グラニュラリティタイプシンタックス要素に関連し、ここにおいて、前記追加の期間タイプシンタックス要素が前記期間タイプシンタックス要素とは異なり、ここにおいて、前記追加の期間タイプシンタックス要素が、前記グラニュラリティタイプシンタックス要素で前記ビットストリームの一部分を復号するためのものである、請求項24に記載の装置。
  31. 前記少なくとも1つのプロセッサは、前記ビットストリームについて、
    前記ビットストリームに関連するサブピクチャシンタックス要素、前記サブピクチャシンタックス要素は、前記CMが複数のピクチャに適用されるとき、サブピクチャ識別子(ID)がシグナリングされることを示す、
    前記ビットストリームに関連するコーディングツリーブロック(CTB)数シンタックス要素、前記CTB数シンタックス要素は、グラニュラリティの前記タイプがスライスまたはタイルに等しく、前記今度の期間が複数のピクチャにわたるとき、前記今度の期間にわたるコーディングツリールーマブロックの総数がCM中でシグナリングされ得ることを示す、あるいは
    前記ビットストリームに関連する平均CTB数シンタックス要素、前記平均CTB数シンタックス要素が、ピクチャごとのグラニュラリティごとのCTBまたは4×4ブロックの平均数を示す、
    のうちの少なくとも1つを生成するように構成された、請求項24に記載の装置。
  32. イントラコード化ブロック統計値は、前記ビットストリームの少なくとも一部分中で利用可能なイントラコード化ブロックがあるとき、前記ビットストリームの少なくとも前記一部分に関連してシグナリングされる、請求項24に記載の装置。
  33. インターコード化ブロック統計値は、前記ビットストリームの少なくとも一部分中で利用可能なインターコード化ブロックがあるとき、前記ビットストリームの少なくとも前記一部分に関連してシグナリングされる、請求項24に記載の装置。
  34. 前記ビデオデータをキャプチャするように構成されたカメラをさらに備える、請求項24に記載の装置。
  35. 前記装置が、モバイルデバイス、ウェアラブルデバイス、エクステンデッドリアリティデバイス、カメラ、パーソナルコンピュータ、車両、ロボティックデバイス、テレビジョン、またはコンピューティングデバイスのうちの1つである、請求項24に記載の装置。
JP2024506707A 2021-08-09 2022-08-01 グリーンメタデータシグナリング Pending JP2024531112A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202163231015P 2021-08-09 2021-08-09
US63/231,015 2021-08-09
US17/816,237 US11838553B2 (en) 2021-08-09 2022-07-29 Green metadata signaling
US17/816,237 2022-07-29
PCT/US2022/074402 WO2023019071A1 (en) 2021-08-09 2022-08-01 Green metadata signaling

Publications (1)

Publication Number Publication Date
JP2024531112A true JP2024531112A (ja) 2024-08-29

Family

ID=83049820

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024506707A Pending JP2024531112A (ja) 2021-08-09 2022-08-01 グリーンメタデータシグナリング

Country Status (6)

Country Link
US (1) US11838553B2 (ja)
EP (1) EP4385208A1 (ja)
JP (1) JP2024531112A (ja)
KR (1) KR20240046714A (ja)
TW (1) TW202312739A (ja)
WO (1) WO2023019071A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024144957A1 (en) * 2022-12-30 2024-07-04 Qualcomm Incorporated Parallel processing for video coding

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9866846B2 (en) * 2014-10-14 2018-01-09 Samsung Electronics Co., Ltd. Method and apparatus for video processing with complexity information

Also Published As

Publication number Publication date
US11838553B2 (en) 2023-12-05
EP4385208A1 (en) 2024-06-19
KR20240046714A (ko) 2024-04-09
US20230056436A1 (en) 2023-02-23
TW202312739A (zh) 2023-03-16
WO2023019071A1 (en) 2023-02-16

Similar Documents

Publication Publication Date Title
US11323712B2 (en) Chroma quantization parameter (QP) offset
US11368684B2 (en) Adaptation parameter sets (APS) for adaptive loop filter (ALF) parameters
US11190758B2 (en) Block-based quantized residual domain pulse code modulation assignment for intra prediction mode derivation
CN107852498B (zh) 一种编码视频数据的方法、设备及计算机可读媒体
KR102276273B1 (ko) 다중-계층 비디오 코딩에서의 3차원 룩업 테이블 기반 색역 스케일러빌리티
CN114128277B (zh) 针对局部双树的调色板预测器更新
JP2023521969A (ja) 色フォーマットサポートのための適応ループフィルタ処理
TW202203650A (zh) 解碼圖片緩衝器(dpb)操作和存取單元定界符(aud)
US11838553B2 (en) Green metadata signaling
US20230179805A1 (en) Adaptive film grain synthesis
TWI851707B (zh) 用於適應性迴圈濾波器變數之適應變數集合
RU2816752C9 (ru) Назначение импульсно-кодовой модуляции области квантованных на блочной основе остатков для выведения режима интра-предсказания
US20240214564A1 (en) Area optimized storage scheme for cross-component adaptive loop filtering
US20240015326A1 (en) Non-separable transform for inter-coded blocks
CN117769835A (zh) 绿色元数据信令
TW202433920A (zh) 用於跨分量適應性迴路濾波的區域優化儲存方案
JP2023552980A (ja) 高ビット深度ビデオコーディングのライスパラメータ導出のための低複雑度の履歴使用
KR20240087746A (ko) 그래디언트의 히스토그램 생성