(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-04
(45)【発行日】2023-07-12
(54)【発明の名称】ビデオコーディングにおける適応パラメータセットの格納
(51)【国際特許分類】
H04N 19/46 20140101AFI20230705BHJP
H04N 21/236 20110101ALI20230705BHJP
【FI】
H04N19/46
H04N21/236
【外国語出願】
(21)【出願番号】P 2021160900
(22)【出願日】2021-09-30
【審査請求日】2021-10-19
(32)【優先日】2020-10-07
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】521388058
【氏名又は名称】レモン インコーポレイテッド
【氏名又は名称原語表記】Lemon Inc.
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】イェ-クイ ワン
【審査官】田中 純一
(56)【参考文献】
【文献】国際公開第2020/097232(WO,A1)
【文献】特表2017-508334(JP,A)
【文献】特表2022-506623(JP,A)
【文献】特表2022-524354(JP,A)
【文献】国際公開第2020/179713(WO,A1)
【文献】米国特許出願公開第2019/0014162(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
H04N 5/91 - 5/956
H04N 7/10 - 7/173
H04N 7/20 - 7/56
H04N 21/00 - 21/858
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
視覚メディアデータを処理する方法であって、
視覚メディアファイルと視覚メディアデータのビットストリームとの間の変換をフォーマット規則に従って実行するステップを有し、
前記フォーマット規則は、第1適応パラメータセットネットワーク抽象型レイヤユニットが、(1)ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方、及び(2)非ビデオコーディングレイヤトラックのサンプルで、前記視覚メディアファイルに同時に格納されないようにすることを指定し、
前記ビデオコーディングレイヤトラックは、ビデオコーディングレイヤネットワーク抽象型レイヤユニットを含むトラックであり、
前記第1適応パラメータセットネットワーク抽象型レイヤユニットは、ビデオストリームのためのクロマスケーリング付きルーママッピングパラメータと、前記ビデオストリームのためのスケーリングリストパラメータとを含
み、
前記フォーマット規則は、第2適応パラメータセットネットワーク抽象型レイヤユニットが、(1)ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方、及び(2)非ビデオコーディングレイヤトラックのサンプルで、前記視覚メディアファイルに同時に格納されることを許されることを更に指定し、
前記ビデオコーディングレイヤトラックは、ビデオコーディングレイヤネットワーク抽象型レイヤユニットを含むトラックであり、
前記第2適応パラメータセットネットワーク抽象型レイヤユニットは、ビデオストリームのための適応ループフィルタパラメータを含む、
方法。
【請求項2】
前記フォーマット規則は、前記第1適応パラメータセットネットワーク抽象型レイヤユニットが前記ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方で前記視覚メディアファイルに格納されることを指定する、
請求項1に記載の方法。
【請求項3】
前記フォーマット規則は、前記第1適応パラメータセットネットワーク抽象型レイヤユニットが前記非ビデオコーディングレイヤトラックのサンプルで前記視覚メディアファイルに格納されることを指定する、
請求項1に記載の方法。
【請求項4】
前記フォーマット規則は、前記第2適応パラメータセットネットワーク抽象型レイヤユニットが前記ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方で前記視覚メディアファイルに格納されることを指定する、
請求項
1に記載の方法。
【請求項5】
前記フォーマット規則は、前記第2適応パラメータセットネットワーク抽象型レイヤユニットが前記非ビデオコーディングレイヤトラックのサンプルで前記視覚メディアファイルに格納されることを指定する、
請求項
1に記載の方法。
【請求項6】
前記変換は、前記視覚メディアファイルを生成し、前記フォーマット規則に従って前記視覚メディアファイルに前記ビットストリームを格納することを有する、
請求項1乃至
5のうちいずれか一項に記載の方法。
【請求項7】
前記変換は、前記視覚メディアファイルを生成することを有し、
当該方法は、非一時的なコンピュータ可読記録媒体に前記視覚メディアファイルを記憶することを更に有する、
請求項1乃至
5のうちいずれか一項に記載の方法。
【請求項8】
前記変換は、前記ビットストリームを再構成するよう前記フォーマット規則に従って前記視覚メディアファイルをパースすることを有する、
請求項1乃至
5のうちいずれか一項に記載の方法。
【請求項9】
前記視覚メディアファイルは、バーサタイル・ビデオ・コーディング(VVC)によって処理され、
前記ビデオコーディングレイヤトラック又は前記非ビデオコーディングレイヤトラックは、VVCトラックである、
請求項1乃至
8のうちいずれか一項に記載の方法。
【請求項10】
視覚メディアデータを処理する装置であって、
プロセッサと、命令を記憶している非一時的なメモリとを有し、
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、請求項1乃至
9のうちいずれか一項に記載の方法を実装させる、
装置。
【請求項11】
プロセッサに、請求項1乃至
9のうちいずれか一項に記載の方法を実装させる命令を記憶している非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願への相互参照]
適用可能な特許法及び/又はパリ条約に従う規則の下で、本願は、2020年10月7日付けで出願された米国特許仮出願第63/088809号の優先権及び利益を適宜主張するよう行われている。法の下での全ての目的のために、上記の出願の全開示は、本願の開示の部分として参照により組み込まれる。
【0002】
[技術分野]
本特許文献は、ファイルフォーマットでのデジタルオーディオビデオメディア情報の生成、記憶及び消費に関係がある。
【背景技術】
【0003】
デジタルビデオは、インターネット及び他のデジタル通信ネットワーク上で最大バンド幅使用を占める。ビデオを受信及び表示することが可能なユーザデバイスの接続数が増えるにつれて、デジタルビデオ利用のためのバンド幅需要は成長し続けることが予期される。
【発明の概要】
【0004】
本特許文献は、ファイルフォーマットに従ってビデオ又は画像のコーディングされた表現を処理するビデオエンコーダ及びデコーダによって使用され得る技術を開示する。
【0005】
一例となる態様で、ビデオ処理方法が開示される。方法は、視覚メディアファイルと視覚メディアデータのビットストリームとの間の変換をフォーマット規則に従って実行するステップを含み、フォーマット規則は、第1適応パラメータセットネットワーク抽象型レイヤユニットが、(1)ビデオコーディングレイヤトラックのサンプル又はビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方、及び(2)非ビデオコーディングレイヤトラックのサンプルで、視覚メディアファイルに同時に格納されないようにすることを指定し、ビデオコーディングレイヤトラックは、ビデオコーディングレイヤネットワーク抽象型レイヤユニットを含むトラックであり、第1適応パラメータセットネットワーク抽象型レイヤユニットは、ビデオストリームのためのクロマスケーリング付きルーママッピング(luma mapping with chroma scaling)パラメータと、ビデオストリームのためのスケーリングリストパラメータとを含む。
【0006】
他の例となる態様で、ビデオ処理方法が開示される。方法は、視覚メディアデータと視覚メディアデータに対応する情報を格納するファイルとの間の変換をフォーマット規則に従って実行するステップを含み、フォーマット規則は、ファイルの非ビデオコーディングレイヤ(非VCL)トラックを識別する第1条件及び/又はファイルのビデオコーディングレイヤ(VCL)トラックを識別する第2条件を指定する。
【0007】
更なる他の例となる態様で、ビデオエンコーダ装置が開示される。ビデオエンコーダは、上記の方法を実装するよう構成されたプロセッサを有する。
【0008】
更なる他の例となる態様で、ビデオデコーダ装置が開示される。ビデオデコーダは、上記の方法を実装するよう構成されたプロセッサを有する。
【0009】
更なる他の例となる態様で、コードを記憶しているコンピュータ可読媒体が開示される。コードは、プロセッサ実行可能なコードの形で、ここで記載されている方法の1つを具現する。
【0010】
更なる他の例となる態様で、ビットストリームを記憶しているコンピュータ可読媒体が開示される。ビットストリームは、本文書で記載されている方法を用いて生成又は処理される。
【0011】
これら及び他の特徴は、本文書を通じて記載される。
【図面の簡単な説明】
【0012】
【
図1】例となるビデオ処理システムのブロック図である。
【
図3】ビデオ処理の方法の例についてのフローチャートである。
【
図4】本開示のいくつかの実施形態に従ってビデオコーディングシステムを表すブロック図である。
【
図5】本開示のいくつかの実施形態に従ってエンコーダを表すブロック図である。
【
図6】本開示のいくつかの実施形態に従ってデコーダを表すブロック図である。
【
図8】ビデオ処理の方法の例についてのフローチャートである。
【発明を実施するための形態】
【0013】
セクション見出しは、理解を簡単にするために本文書中で使用されており、各セクションで開示されている技術及び実施形態の適用可能性をそのセクションにのみ限定しない。更に、H.266の専門用語は、理解を簡単にするためにのみ一部の記載で使用されており、開示されている技術の範囲を限定するためではない。従って、ここで記載される技術は、他のビデオコーデックプロトコル及び設計にも適用可能である。本文書中、編集の変更は、VVC仕様又はISOBMFFファイルフォーマット仕様の現在の草案に対して、取り消されたテキストを二重括弧(例えば、[[・・・]])で示し、追加されたテキストを太字イタリック体で示すことによって、テキストに示されている。
【0014】
1.簡潔な解説
本文書は、画像ファイルフォーマットに関係がある。具体的に、それは、ISO基本メディアファイルフォーマット(ISO Base media File Format,ISOBMFF)に基づいたメディアファイルでのピクチャヘッダ(Picture Header,PH)、適応パラメータセット(Adaptation Parameter Set,APS)、デコーディング能力情報(Decoding Capability Information,DCI)、及びバーサタイル・ビデオ・コーディング(Versatile Video Coding,VVC)ビデオビットストリームの動作点情報(Operating Point Information,OPI)ネットワーク抽象型レイヤ(Network Abstraction Layer,NAL)ユニットのシグナリング及びストレージに関係がある。アイデアは、任意のコーデック、例えば、VVC標準規格によってコーディングされている画像に対して、そして、任意の画像ファイルフォーマット、例えば、開発中のVVCビデオファイルフォーマットに対して、個々に又は様々な組み合わせで適用されてよい。
【0015】
2.略称
ACT Adaptive Colour Transform
ALF Adaptive Loop Filter
AMVR Adaptive Motion Vector Resolution
AU Access Unit
AUD Access Unit Delimiter
AVC Advanced Video Coding(Rec.ITU-T H264|ISO/IEC 14496-10)
B Bi-predictive
BCW Bi-prediction with CU-level Weights
BDOF Di-Directional Optical Flow
BDPCM Block-based Delta Pulse Code Modulation
BP Buffering Period
CABAC Context-based Adaptive Binary Arithmetic Coding
CB Coding Block
CBR Constant Bit Rate
CCALF Cross-Component Adaptive Loop Filter
CPB Coded Picture Buffer
CRA Clean Random Access
CRC Cyclic Redundancy Check
CTB Coding Tree Block
CTU Coding Tree Unit
CU Coding Unit
CVS Coded Video Sequence
DPB Decoded Picture Buffer
DCI Decoding Capability Information
DRAP Dependent Random Access Point
DU Decoding Unit
DUI Decoding Unit Information
EG Exponential-Golomb
EGk k-th order Exponential-Golomb
EOB End Of Bitstream
EOS End Of Sequence
FD Filler Data
FIFO First-In, First-Out
FL Fixed-Length
GBR Green, Blue, and Red
GCI General Constraints Information
GDR Gradual Decoding Refresh
GPM Geometric Partitioning Mode
HEVC High Efficiency Video Coding(Rec.ITU-T H.265|ISO/IEC 23008-2)
HRD Hypothetical Reference Decoder
HSS Hypothetical Stream Scheduler
I Intra
IBC Intra Block Copy
IDR Instantaneous Decoding Refresh
ILRP Inter-Layer Reference Picture
IRAP Intra Random Access Picture
LFNST Low Frequency Non-Separable Transform
LPS Least Probable Symbol
LSB Least Significant Bit
LTRP Long-Term Reference Picture
LMCS Luma Mapping with Chroma Scaling
MIP Matrix-based Intra Prediction
MPS Most Probable Symbol
MSB Most Significant Bit
MTS Multiple Transform Selection
MVP Motion Vector Prediction
NAL Network Abstraction Layer
OLS Output Layer Set
OP Operation Point
OPI Operating Point Information
P Predictive
PH Picture Header
POC Picture Order Count
PPS Picture Parameter Set
PROF Prediction Refinement with Optical Flow
PT Picture Timing
PU Picture Unit
QP Quantization Parameter
RADL Random Access Decodable Leading(ピクチャ)
RASL Random Access Skipped Leading(ピクチャ)
RBSP Raw Byte Sequence Payload
RGB Red, Green, and Blue
RPL Reference Picture List
SAO Sample Adaptive Offset
SAR Sample Aspect Ratio
SEI Supplemental Enhancement Information
SH Slice Header
SLI Subpicture Level Information
SODB String Of Data Bits
SPS Sequence Parameter Set
STRP Short-Term Reference Picture
STSA Step-wise Temporal Sublayer Access
TR Truncated Rice
VBR Variable Bit Rate
VCL Video Coding Layer
VPS Video Parameter Set
VSEI Versatile Supplemental Enhancement Information(Rec.ITU-T H.274|ISO/IEC 23002-7)
VUI Video Usability Information
VVC Versatile Video Coding(Rec.ITU-T H.266|ISO/IEC 23090-3)
【0016】
3.ビデオコーディングの紹介
3.1.ビデオコーディング標準規格
ビデオコーディング標準規格は、主として、よく知られているITU-T及びISO/IEC標準規格の開発を通じて、進化してきた。ITU-Tは、H.261及びH.263を作り出し、ISO/IECは、MPEG-1及びMPEG-4 Visualを作り出し、2つの組織は共同で、H.262/MPEG-2 Video及びH264/MPEG-4 AVC(Advanced Video Coding)並びにH.265/HEVC標準規格を作り出した。H.262以降、ビデオコーディング標準規格は、ハイブリッドビデオコーディング構造に基づいており、時間予測及び変換コーディングが利用される。HEVCを越える将来のビデオコーディング技術を探るために、JVET(Joint Video Exploration Team)が2015年にVCEG及びMPEGによって共同設立された。それ以来、多くの新しい方法がJVETによって導入され、JEM(Joint Exploration Model)と名付けられた参照ソフトウェアに置かれてきた。JVETは、VVC(Versatile Video Coding)プロジェクトが公式に始まったときに、JVET(Joint Video Experts Team)であるよう後に改名された。VVCは、2020年7月1日に終了したその第19回会議でJVETによってまとめられた、HEVCと比較してビットレート50%減を目指す新しいコーディング標準規格である。
【0017】
VVC(Versatile Video Coding)標準規格(ITU-T H.266|ISO/IEC 23090-3)及び関連するVSEI(Versatile Supplemental Enhancement Information)標準規格(ITU-T H.274|ISO/IEC 23002-7)は、テレビ放送、ビデオ会議、又は記憶媒体からの再生などの従来の使用と、適応ビットレートストリーミング、ビデオ領域抽出、複数のコーディングされたビデオビットストリームからのコンテンツの合成及びマージ、マルチビュービデオ、スケーラブルレイヤードコーディング、並びにビューポート適応360°没入メディアなどのより新しくかつより高度な使用ケースとの両方を含む最大限に広い範囲の用途での使用のために設計されている。
【0018】
3.2.ファイルフォーマット標準規格
メディアストリーミングアプリケーションは、通常は、IP、TCP、及びHTTPトランスポート方法に基づいており、通常は、ISO基本メディアファイルフォーマット(ISOBMFF)などのファイルフォーマットに依存する。1つのそのようなストリーミングシステムは、HTTPを介した動的適応ストリーミング(Dynamic Adaptive Streaming over HTTP,DASH)である。ISOBMFF及びDASHによるビデオフォーマットを使用するために、AVCファイルフォーマット及びHEVCファイルフォーマットなどのビデオフォーマットに特有のファイルフォーマット規格が、ISOBMFFトラックにおける並びにDASH表現及びセグメントにおけるビデオコンテンツのカプセル化のために必要とされることになった。ビデオビットストリームに関する重要な情報、例えば、プロファイル、ティア、及びレベル、並びにその他多くは、コンテンツ選択を目的として、例えば、ストリーミングセッションの開始時の初期化及びストリーミングセッション中のストリーム適応の両方のための適切なメディアセグメントの選択のために、ファイルフォーマットレベルメタデータ及び/又はDASHメディア提示記述(Media Presentation Description,MPD)として公開されることが必要となった。
【0019】
同様に、ISOBMFFによる画像フォーマットを使用するために、AVC画像ファイルフォーマット及びHEVC画像ファイルフォーマットなどの画像フォーマットに特有のファイルフォーマット規格が必要とされる可能性がある。
【0020】
ISOBMFFに基づくVVCビデオコンテンツの格納のためのファイルフォーマットであるVVCビデオファイルフォーマットは、現在、MPEGによって開発中である。
【0021】
ISOBMFFに基づく、VVCを用いてコーディングされた画像コンテンツの格納のためのファイルフォーマットである、VVC画像ファイルフォーマットは、現在、MPEGによって開発中である。
【0022】
3.3.VVCにおけるPH、APS、DCI及びOPI NALユニット
PH、APS、DCI及びOPI NALユニットを含む、いくつかの新しいタイプのNALユニットが、VVCに導入されている。
【0023】
3.3.1.適応パラメータセット(APS)
適応パラメータセット(APS)は、ピクチャの複数のスライスによって及び/又は異なるピクチャのスライスによって共有され得るが、ピクチャ間で頻繁に変化する可能性があり、変動の総数が高くなるので、PPSへの包含には適さないピクチャ及び/又はスライスレベルの情報を運ぶ。APSには、3種類のパラメータが含まれる。適応ループフィルタ(ALF)パラメータ、クロマスケーリング付きルーマサンプリング(LMCS)パラメータ、及びスケーリングリストパラメータである。APSは、プリフィックス又はサフィックスとして、関連するスライスの前又は後のどちらかにある2つの相異なるNALユニットタイプで運ばれ得る。後者は、超低遅延シナリオで役立ち、例えば、エンコーダが、デコーディング順序で後続のピクチャによって使用されることになっているALFパラメータの生成前にピクチャのスライスを送信することを可能にすることができる。
【0024】
3.3.2.ピクチャヘッダ(PH)
ピクチャヘッダ(PH)構造は、PUごとに存在する。PHは、別個のPH NALユニットに存在するか、あるいは、スライスヘッダ(SH)に含まれるかのどちらかである。PHは、PUがただ1つのスライスから成る場合には、SHにしか含まれ得ない。設計を簡単にするために、CLVS内で、PHは、全部がPH NALユニットに又は全部がSHにのみあることができる。PHがSHにある場合に、CLVSにはPH NALユニットはない。
【0025】
PHは、2つの目的のために設計される。第1の目的は、ピクチャの全てのスライスについて同じ値を有している全てのパラメータを運んで、各SHで同じパラメータを繰り返さないようにすることによって、ピクチャごとに複数のスライスを含むピクチャについてSHのシグナリングオーバーヘッドを低減するのを助けることである。パラメータには、IRAP/GDRピクチャ指示、インター/イントラスライス許可フラグ、及びPOC、PRL、デブロッキングフィルタ、SAO、ALD、LMCS、スケーリングリスト、QPデルタ、重み付き予測、コーディングブロックパーティショニング、仮想境界、同一位置(collocated)ピクチャ、などに関する情報がある。第2の目的は、デコーダが複数のスライスを含む各コーディングされたピクチャの最初のスライスを識別するのを助けることである。ただ1つのPHがPUごとに存在するので、デコーダがPH NALユニットを受信する場合に、それは、次のVCL NALユニットがピクチャの最初のスライスであると容易に分かる。
【0026】
3.3.3.デコーディング能力情報(DCI)
DCI NALユニットは、ビットストリームレベルのPTL情報を含む。DCI NALユニットは、VVCビットストリームの送信側及び受信側の間のセッションネゴシエーション中に使用され得る1つ以上のPTLシンタックス構造を含む。DCI NALユニットがVVCビットストリームに存在する場合に、ビットストリームのCVSにおける各出力レイヤセット(Output Layer Set,OLS)は、DCI NALユニット内のPTL構造の少なくとも1つで運ばれるPTL情報に従うべきである。
【0027】
AVC及びHEVCで、セッションネゴシエーションのためのPTL情報は、SPSで(HEVC及びAVCについて)及びVSPで(HEVC階層化拡張について)利用可能である。HEVC及びAVCでセッションネゴシエーションのためのPTL情報を運ぶこの設計には、SPS及びVPSの範囲が、ビットストリーム全体ではなく、CVS内にあるので、欠点がある。そのため、送信側及び受信側のセッション開始は、新しいCVSごとにビットストリームストリーミング中に再開される可能性がある。DCIは、それがビットストリームレベルの情報を運ぶということで、この問題を解決する。よって、支持されているデコーディング能力への準拠は、ビットストリームの終わりまで保証され得る。
【0028】
3.3.4.動作点情報(OPI)
HEVC及びVVCのデコーディングプロセスは、デコーダAPIを通じて、デコーディング動作点、すなわちデコードされるべきビットストリームのターゲットOLS及び最上位サブレイヤ、をセットするための類似した入力変数を有している。しかし、ビットストリームのレイヤ及び/又はサブレイヤが伝送中に取り除かれるか、又はデバイスがデコーダAPIをアプリケーションに公開しないシナリオでは、デコーダは、デコーダが所与のビットストリームを処理するための動作点を正確に通知され得ないことが起こり得る。従って、デコーダは、ビットストリーム内のピクチャの特性、例えば、デコードされたピクチャのための適切なバッファ割り当て及び個々のピクチャが出力されるか否か、について結論を下すことができない可能性がある。この問題に対処するために、VVCは、これら2つの変数をビットストリーム内で示すモードを、新たに導入された動作点情報(OPI)NALユニットを通じて追加する。ビットストリームの最初にあるAU及びその個々のCVSで、OPI NALユニットは、デコードされるべきビットストリームのターゲットをデコーダに通知する。
【0029】
OPI NALユニットが存在し、動作点もデコーダAPI情報を介してデコーダへ供給される(例えば、アプリケーションは、ターゲットOLS及びサブレイヤに関する更に更新された情報を有し得る)場合に、デコーダAPI情報は優先される。デコーダAPI及び任意のOPI NALユニットの両方がビットストリームにない場合には、適切な予備的選択が、適切なデコーダ動作を可能にするようVVCで指定される。
【0030】
3.4.VVCビデオファイルフォーマットのいくつかの仕様
3.4.1.トラックのタイプ
VVCビデオファイルフォーマットは、ISOBMFFファイルでのVVCビットストリームの搬送のために、次のタイプのビデオトラックを規定する:
a)VVCトラック:
VVCトラックは、そのサンプル及びサンプルエントリにNALユニットを含めることによって、場合により、VVCビットストリームの他のサブレイヤを含む他のVVCトラックを参照することによって、かつ、場合により、VVCサブピクチャトラックを参照することによって、VVCビットストリームを表す。VVCトラックがVVCサブピクチャトラックを参照する場合に、それはVVC基本トラックと呼ばれる。
b)VVC非VCLトラック:
ALF、LMCS、又はスケーリングリストパラメータを運ぶAPS、及び他の非VCL NALユニットは、VCL NALユニットを含むトラックとは別個であるトラックに格納され、それを通じて伝送され得る。これはVVC非VCLトラックである。
c)VVCサブピクチャトラック:
VVCサブピクチャトラックは、次の:
1つ以上のVVCサブピクチャのシーケンス、
長方形エリアを形成する1つ以上の完全スライスのシーケンス
のうちのどちらか一方を含む。
VVCサブピクチャトラックのサンプルは、次の:
デコーディング順序において連続している、ISO/IEC 23090-3で規定されている1つ以上の完全サブピクチャ、
長方形エリアを形成しかつデコーディング順序において連続している、ISO/IEC 23090-3で規定されている1つ以上の完全スライス
のうちのどちらか一方を含む。
VVCサブピクチャトラックのいずれかのサンプルに含まれているVVCサブピクチャ又はスライスは、デコーディング順序において連続している。
注釈:VVC非VCLトラック及びVVCサブピクチャトラックは、次のように、ストリーミングアプリケーションでのVVCビデオの最適な配信を可能にする。これらのトラックは夫々、それら自体のDASH表現で運ばれ得る。トラックのサブセットのデコーディング及びレンダリングのために、VVCサブピクチャトラックのサブセットを含むDASH表現及び非VCLトラックを含むDASH表現は、セグメントごとに、クライアントによって要求可能である。このようにして、APS及び他の非VCL NALユニットの冗長な伝送は回避され得る。
【0031】
3.4.2.VVCエレメンタリストリーム構造
これらのタイプのエレメンタリストリームは、VVCコンテンツを格納するために定義される:
如何なるパラメータセットも含まないビデオエレメンタリストリーム(video elementary stream);全てのパラメータセットは、1つ以上のサンプルエントリに格納される;
パラメータセットを含むことができ、それらの1つ以上のサンプルエントリに格納されたパラメータセットも有することができるビデオ及びパラメータセットエレメンタリストリーム(video and parameter set elementary stream);
ビデオトラックで運ばれるエレメンタリストリームと同期した非VCL NALユニットを含む非VCLエレメンタリストリーム(non-VCL elementary stream)。
注釈:VVC非VCLトラックは、そのサンプルエントリでパラメータセットを含まない。
【0032】
3.4.3.デコーダ設定情報サンプルグループ
3.4.3.1.定義
このサンプルグループのサンプルグループ記述エントリはDCI NALユニットを含む。同じデコーダ設定情報サンプルグループ記述エントリにマッピングされた全てのサンプルは、同じVVCビットストリームに属する。
このサンプルグループは、同じDCI NALユニットがVVCトラック内の異なるサンプルエントリに対して使用されるかどうか、つまり、異なるサンプルエントリに属するサンプルが同じVVCビットストリームを属するかどうかを示す。2つのサンプルエントリのサンプルが同じデコーダ設定情報サンプルグループ記述エントリにマッピングされる場合に、プレイヤーは、デコーダの再初期化なしでサンプルエントリを切り替えることができる。
いずれかのDCI NALユニットがいずれかのサンプルエントリに又はインバンドに存在する場合には、それは、デコーダ設定情報サンプルグループに含まれているDCI NALユニットと厳密に同じであるべきである。
【0033】
【0034】
3.4.3.3.セマンティクス
deciNalUnitLengthは、DCI NALユニットのバイトの長さを示す。
deciNalUnitは、ISO/IEC 23090-3で規定されているDCI NALユニットを含む。
【0035】
4.開示されている技術的解決法によって解決される技術的課題の例
PH、APS、DCI、及びOPI NALユニットのシグナリングに関するVVCビデオファイルフォーマットの最新の設計には、次の問題がある:
1)VVC基本トラック及びVVC非VCLトラックは、VCL NALユニットを含むべきではない。しかし、VVC非VCLトラックの現在の定義は、VVC基本トラックにも適用されることになる。更に、現在の定義によって、VVC非VCLトラックは常にAPS NALユニットを含む。しかし、それにより、非VCL NALユニットには、APS NALユニットを除いて、ピクチャヘッダNALユニット及び場合により他の非VCL NALユニットを含めることができなくなる。
そのようなVVC非VCLトラックを認めることは、例えば、1つのPHトラック(VVC基本トラックで見られるような同じ情報を含むが、非VCLトラックとして)、複数のAPSトラック(VVC非VCLトラックとして)、及び夫々がサブピクチャシーケンスを含む複数のVVCサブピクチャトラックを有することによって、異なるサブピクチャがAPSの異なるセットを使用する場合に、サブピクチャトラックのレイトバンディング(late-banding)のために、ファイルでの抽出可能なサブピクチャベースのシングルレイヤビットストリームの最適な格納を可能にする。
2)APS NALユニットは全て、1つのVVC非VCLトラックに又はVVCトラックに格納される。言い換えると、APS NALユニットは、1つよりも多いトラックに格納され得ない。これは、LMCSパラメータを含むAPS NALユニット(すなわち、LMCS APS)又はスケーリングリスト(Scaling List,SL)パラメータを含むAPS NALユニット(すなわち、SL APS)に有効であるが、ALFパラメータを含むAPS NALユニット(すなわち、ALF APS)にとって理想的でない。異なるVVCサブピクチャトラックはALF APSの異なるセットを使用する可能性があるので、複数のVVC非VCLトラックがVVCビットストリームのためにALF APSを運ぶことを可能にすることが望ましい。
3)DCI NALユニットは、ビデオエレメンタリストリームとビデオ及びパラメータセットエレメンタリストリームとの定義において考慮されない。その結果、ビデオエレメンタリストリームは、パラメータセットを含まないが、DCI NALユニットを含み得る。
4)非VCLエレメンタリストリームの定義は、非VCLエレメンタリストリームでVCL NALユニットを含む可能性を除外する。
5)デコーダ設定情報サンプルグループは、DCI NALユニットのシグナリングのためのメカニズムを提供する。しかし、次の問題が存在する:
a.最も一般的な使用ケースで、トラックの全てのサンプルは、同じビットストリームに属することになる(あるいは、ビットストリームの数に関わらず、同じDCIを共有することになる)。そのような場合については、適用可能なDCIをサンプルグループシグナリングを通じて見つけ出すことが複雑である。
b.同じデコーダ設定情報サンプルグループ記述エントリにマッピングされた全てのサンプルは同じVVCビットストリームに属する、と言われている。しかし、これは、(例えば、EOB NALユニットによって決定された)複数のVVCビットストリームに属するが同じトラック内にあるサンプルが、可能な場合でも同じDCI NALユニットを共有することを認めない。
6)OPI NALユニットは、同じエントリ記述に含められることを認められない。しかし、多くの場合に、OPI NALユニットは、VVCビットストリームに存在する場合に、パラメータセットと同様に扱われるべきであるから、それらは同じエントリ記述に含まれることを認められるべきである。
【0036】
5.例となる解決法及び実施形態
上記の問題及び他を解決するために、以下で要約された方法が開示される。項目は、一般概念を説明するための例として見なされるべきであり、狭い意味で解釈されるべきではない。更に、これらの項目は、個々に適用されても又は何らかの方法で組み合わされてもよい。
1)問題1及び2を解決するために、次の項目のうちの1つ以上が提案される:
a.VVC非VCLトラックは、非VCL NALユニットのみを含むトラックとして定義され、VVCトラックによって‘vvcN’トラック参照を通じて参照される。
b.VVC非VCLトラックは、他の非VCL NALユニットの有無によらず、VCL NALユニットを含むトラックとは別個であるトラックに格納され、それを通じて伝送されるALF、LMCS、又はスケーリングリストパラメータを運ぶAPSを含んでもよいことが定められる。
c.VVC非VCLトラックは、APS NALユニットの有無によらず、かつ、他の非VCL NALユニットの有無によらず、VCL NALユニットを含むトラックであるトラックに格納され、それを通じて伝送されるピクチャヘッダNALユニットも含んでもよいことが定められる。
d.ビデオストリームのためのピクチャヘッダNALユニットは、VVCトラックのサンプル又はVVC非VCLトラックのサンプルのどちらかに格納され得るが、同時に両方にではないことが定められる。
e.ビデオストリームのためのLMCS APS NALユニット(すなわち、LMCSパラメータを含むAPS NALユニット)及びスケーリングリストAPS NALユニット(すなわち、スケーリングリストパラメータを含むAPS NALユニット)は、VVCトラックのサンプル及び/又はサンプルエントリ、あるいは、VVC非VCLトラックのサンプルのどちらかに格納され得るが、同時に両方にではないことが定められる。
f.ビデオストリームのためのALF APS NALユニット(すなわち、ALFパラメータを含むAPS NALユニット)は、VVCトラックのサンプル及び/又はサンプルエントリに、VVC非VCLトラックのサンプルに、あるいは、同時に両方に格納され得ることが定められる。
2)問題3を解決するために、次の項目のうちの1つ以上が提案される:
a.ビデオエレメンタリストリームは、VCL NALユニットを含むが、如何なるパラメータセット、DCI、又はOPI NALユニットも含まないエレメンタリストリームとして定義される;全てのパラメータセット、DCI、及びOPI NALユニットはサンプルエントリに格納される。
i.代替的に、ビデオエレメンタリストリームは、VCL NALユニットを含むが、如何なるパラメータセット又はDCI NALユニットも含まないエレメンタリストリームとして定義される;全てのパラメータセット及びDCI NALユニットはサンプルエントリに格納される。
b.DCI NALユニットをパラメータセットと厳密に同じに扱うべきである。つまり、DCI NALユニットは、ビデオトラックのサンプルエントリにのみ含まれ得る(例えば、サンプルエントリタイプ名が‘vvc1’である場合)か、あるいは、ビデオトラックのサンプル及びサンプルエントリのどちらか一方又は両方にあることができる(例えば、サンプルエントリタイプ名が‘vvi1’である場合)。
3)問題4を解決するために、非VCLエレメンタリストリームは、非VCL NALユニットのみを含むエレメンタリストリームであり、これらの非VCL NALユニットは、ビデオトラックで運ばれるエレメンタリストリームと同期することが定められる。
4)問題5を解決するために、次の項目のうちの1つ以上が提案される:
a.トラックの全てのサンプルが同じビットストリームに属する(又はビットストリームの数に関わらず、同じDCIを共有する)場合については、DCI NALユニットは、トラックレベルボックス、例えば,トラックヘッダボックス、トラックレベルメタボックス、又は他のトラックレベルボックスでシグナリングされてもよい。
b.(例えば、EOB NALユニットによって決定された)複数のVVCビットストリームに属するが同じトラック内にあるサンプルが、同じDデコーダ設定情報サンプルグループに属し、その結果、同じデコーダ設定情報サンプルグループ記述エントリを共有することを認める。
5)問題6を解決するために、OPI NALユニットは、例えば、デコーダ設定記録での非VCL NALユニットアレイの1つとして、サンプルエントリ記述に含まれることを認められる。
a.代替的に、OPI NALユニットをパラメータセットと厳密に同じに扱うべきである。つまり、OPI NALユニットは、ビデオトラックのサンプルエントリにのみ含まれ得る(例えば、サンプルエントリタイプ名が‘vvc1’である場合)か、あるいは、ビデオトラックのサンプル及びサンプルエントリのどちらか一方又は両方にあることができる(例えば、サンプルエントリタイプ名が‘vvi1’である場合)。
【0037】
6.実施形態
以下は、上記のセクション5で要約された発明態様のいくつかについての実施形態のいくつかの例であり、これらは、VVCビデオファイルフォーマットのための標準仕様に適用され得る。変更されたテキストは、最新の仕様草案に基づく。追加又は修正されている最も関連する部分は、太字イタリック体で示され、削除された部分のいくつかは、削除またはキャンセルされたテキストを二重括弧(例えば、[[・・・]])で囲むことで示される。本質的に編集に関するものであって、強調表示されないその他の変更も存在することがある。
【0038】
6.1.第1実施形態
この実施形態は、項目1a、1b、1cに関する。
【0039】
6.1.1.トラックのタイプ
この仕様は、VVCビットストリームの搬送のために次のタイプのビデオトラックを規定する。
a)VVCトラック:
【表1】
b)VVC非VCLトラック:
【表2】
c)VVCサブピクチャトラック:
VVCサブピクチャトラックは、次の:
1つ以上のVVCサブピクチャのシーケンス、
長方形エリアを形成する1つ以上の完全スライスのシーケンス
のうちのどちらか一方を含む。
VVCサブピクチャトラックのサンプルは、次の:
デコーディング順序において連続している、ISO/IEC 23090-3で規定されている1つ以上の完全サブピクチャ、
長方形エリアを形成しかつデコーディング順序において連続している、ISO/IEC 23090-3で規定されている1つ以上の完全スライス
のうちのどちらか一方を含む。
VVCサブピクチャトラックのいずれかのサンプルに含まれているVVCサブピクチャ又はスライスは、デコーディング順序において連続している。
【表3】
【0040】
6.2.第2実施形態
この実施形態は、項目4bに関する。
【表4】
【0041】
6.3.第3実施形態
この実施形態は、項目5に関する。
【0042】
6.3.1.VVCデコーダ設定記録の定義
この従属節は、ISO/IEC 23090-3ビデオコンテンツのためのデコーダ設定情報を規定する。
【表5】
【0043】
6.3.2.VVCデコーダ設定記録のセマンティクス
【表6】
【0044】
6.4.第4実施形態
この実施形態は、1a、1b、1c、1d、1e及び1fに関する。
【0045】
6.4.1.背景:VVCの特徴(参考情報)
VVCコンテンツの格納は、ISO基本メディアファイルフォーマットの既存の能力を使用するが、VVCコーデックの次の特徴をサポートするための拡張も定義する:
d)パラメータセット並びにDCI及びOPI NALユニット:
【表7】
e)ピクチャヘッダ
ピクチャヘッダ(PH)構造は、ピクチャの全てのスライスに対して同じであるパラメータを含み、ピクチャごとに存在し、それ自体のNALユニットに又はスライスヘッダ(SH)に直接に存在する。PHは、ピクチャが1つしかスライスを有してない場合には、SHにしか含まれ得ない。CLVS内で、PHは、全てPH NALユニットにのみ、又は全てSHにのみ存在し得る。
f)サブピクチャ
VVCサブピクチャは、ピクチャ内の1つ以上のスライスの長方形領域である。エンコーダは、ピクチャ境界のようにサブピクチャ境界を扱ってもよく、サブピクチャ境界にわたってループフィルタリングをオフしてもよい。よって、選択された構造がVVCビットストリームから抽出されたり、又はあて先VVCビットストリームへマージされたりすることができるように、サブピクチャをエンコードすることが可能である。更に、そのようなVVCビットストリーム抽出又はマージ動作は、VCL NALユニットの変更なしで行われ得る。ビットストリームに存在するサブピクチャのサブピクチャ識別子(ID)は、SPS又はPPSで示されてもよい。
【0046】
6.4.2.トラックのタイプ
この仕様は、VVCビットストリームの搬送のために次のタイプのビデオトラックを規定する。
g)VVCトラック:
【表8】
h)VVC非VCLトラック:
【表9】
i)VVCサブピクチャトラック:
VVCサブピクチャトラックは、次の:
1つ以上のVVCサブピクチャのシーケンス、
長方形エリアを形成する1つ以上の完全スライスのシーケンス
のうちのどちらか一方を含む。
VVCサブピクチャトラックのサンプルは、次の:
デコーディング順序において連続している、ISO/IEC 23090-3で規定されている1つ以上の完全サブピクチャ、
長方形エリアを形成しかつデコーディング順序において連続している、ISO/IEC 23090-3で規定されている1つ以上の完全スライス
のうちのどちらか一方を含む。
VVCサブピクチャトラックのいずれかのサンプルに含まれているVVCサブピクチャ又はスライスは、デコーディング順序において連続している。
【表10】
【0047】
6.4.3.規範的な順序及び制限
規範的なストリームフォーマットは、4.3.2での一般的な条件に加えて次の条件を満足するVVCエレメンタリストリームである:
【表11】
【0048】
図1は、本明細書で開示されている様々な技術が実装され得る例示的なビデオ処理システム1900を示すブロック図である。様々な実施には、システム1900のコンポーネントの一部又は全てが含まれ得る。システム1900は、ビデオコンテンツを受け取る入力部1902を含んでよい。ビデオコンテンツは、生の(raw)又は圧縮されていないフォーマットで受け取られてよく、例えば、8又は10ビットのマルチコンポーネントピクセル値であり、あるいは、圧縮された又はエンコードされたフォーマットであってもよい。入力部1902は、ネットワークインターフェース、ペリフェラルバスインターフェース、又はストレージインターフェースに相当し得る。ネットワークインターフェースの例には、Ethernet(登録商標)、受動光ネットワーク(PON)などの有線インターフェース、及びWi-Fi又はセルラーインターフェースなどの無線インターフェースが含まれる。
【0049】
システム1900は、本明細書で説明されている様々なコーディング又はエンコーディング方法を実装し得るコーディングコンポーネント1904を含んでよい。コーディングコンポーネント1904は、ビデオのコーディングされた表現を生成するよう、入力部1902からコーディングコンポーネント1904の出力部へのビデオの平均ビットレートを低減し得る。従って、コーディング技術は、ビデオ圧縮又はビデオトランスコーディング技術と時々呼ばれる。コーディングコンポーネント1904の出力は、コンポーネント1906によって表されるように、保存されるか、あるいは、接続された通信を介して伝送されてよい。入力部1902で受け取られたビデオの保存又は通信されたビットストリーム(又はコーディングされた)表現は、ピクセル値又は表示インターフェース1910へ送られる表示可能なビデオを生成するコンポーネント1908によって使用されてよい。ユーザが見ることができるビデオをビットストリーム表現から生成するプロセスは、ビデオ圧縮解除と時々呼ばれる。更に、特定のビデオ処理動作が「コーディング」動作又はツールと呼ばれる一方で、そのようなコーディングツール又は動作はエンコーダで使用され、コーディングの結果を入れ替える対応するデコーディングツール又は動作は、デコーダによって実行されることになることが理解されるだろう。
【0050】
ペリフェラルバスインターフェース又は表示インターフェースの例には、ユニバーサルシリアルバス(USB)又は高精細マルチメディアインターフェース(HDMI(登録商標))又はDisplayport(登録商標)などが含まれ得る。ストレージインターフェースの例には、SATA(Serial Advanced Technology Attachment)、PCI、IDEインターフェース、などがある。本明細書で説明されている技術は、携帯電話機、ラップトップ、スマートフォン、又はデジタルデータ処理及び/又はビデオ表示を実行する能力がある他のデバイスなどの様々な電子デバイスで具現されてもよい。
【0051】
図2は、ビデオ処理装置3600のブロック図である。装置3600は、本明細書で記載される方法の1つ以上を実装するために使用されてよい。装置3600は、スマートフォン、タブレット、コンピュータ、インターネット・オブ・シングス(IoT)レシーバ、などで具現されてもよい。装置3600は、1つ以上のプロセッサ3602、1つ以上のメモリ3604、及びビデオ処理ハードウェア3606を含んでよい。プロセッサ3602は、本明細書で記載される1つ以上の方法を実装するよう構成されてよい。メモリ(複数であってもよい)3604は、本明細書で記載される方法及び技術を実装するために使用されるデータ及びコードを記憶するために使用されてよい。ビデオ処理ハードウェア3606は、ハードウェア回路において、本明細書で記載されるいくつかの技術を実装するために使用されてよい。いくつかの実施形態で、ビデオ処理ハードウェア3606は、プロセッサ3602、例えば、グラフィクス・コプロセッサに少なくとも部分的に含まれてもよい。
【0052】
図4は、本開示の技術を利用し得る例示的なビデオコーディングシステム100を表すブロック図である。
【0053】
図4に示されるように、ビデオコーディングシステム100は、発信元デバイス110及び送信先デバイス120を含んでよい。発信元デバイス110は、エンコードされたビデオデータを生成し、ビデオエンコーディングデバイスと呼ばれ得る。送信先デバイス120は、発信元デバイス110によって生成されたエンコードされたビデオデータをデコードすることができ、ビデオデコーディングデバイスと呼ばれ得る。
【0054】
発信元デバイス110は、ビデオソース112、ビデオエンコーダ114、及び入出力(I/O)インターフェース116を含んでよい。
【0055】
ビデオソース112は、ビデオ捕捉デバイスなどのソース、ビデオコンテンツプロバイダからビデオデータを受け取るインターフェース、及び/又はビデオデータを生成するコンピュータグラフィクスシステム、あるいは、そのようなソースの組み合わせを含んでよい。ビデオデータは1つ以上のピクチャを有してもよい。ビデオエンコーダ114は、ビットストリームを生成するようビデオソース112からのビデオデータをエンコードする。ビットストリームは、ビデオデータのコーディングされた表現を形成するビットのシーケンスを含んでよい。ビットストリームは、コーディングされたピクチャ及び関連するデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディングされた表現である。関連するデータは、シーケンスパラメータセット、ピクチャパラメータセット、及び他のシンタックス構造を含んでもよい。I/Oインターフェース116は、変調器/復調器(モデム)及び/又は送信器を含んでよい。エンコードされたビデオデータは、I/Oインターフェース116を介して送信先デバイス120に対してネットワーク130aを通じて直接に伝送されてよい。エンコードされたビデオデータはまた、送信先デバイス120によるアクセスのために記憶媒体/サーバ130bに記憶されてもよい。
【0056】
送信先デバイス120は、I/Oインターフェース126、ビデオデコーダ124、及び表示デバイス122を含んでよい。
【0057】
I/Oインターフェース126は、受信器及び/又はモデムを含んでよい。I/Oインターフェース126は、発信元デバイス110又は記憶媒体/サーバ130bからエンコードされたビデオデータを取得してよい。ビデオデコーダ124は、エンコードされたビデオデータをデコードしてよい。表示デバイス122は、デコードされたビデオデータをユーザに表示してよい。表示デバイス122は、送信先デバイス120と一体化されてもよく、あるいは、外付け表示デバイスとインターフェース接続するよう構成されて送信先デバイス120の外にあってもよい。
【0058】
ビデオエンコーダ114及びビデオデコーダ124は、HEVC(High Efficiency Video Coding)標準規格、VVC(Versatile Video Coding)標準規格、並びに他の現在の及び/又は更なる標準規格などのビデオ圧縮規格に従って作動してもよい。
【0059】
図5は、ビデオエンコーダ200の例を表すブロックであり、
図4に表されているシステム100のビデオエンコーダ114であってよい。
【0060】
ビデオエンコーダ200は、本開示の技術のいずれか又は全てを実行するよう構成されてよい。
図5の例で、ビデオエンコーダ200は、複数の機能コンポーネントを含む。本開示で記載される技術は、ビデオエンコーダ200の様々なコンポーネントの間で共有されてよい。いくつかの例で、プロセッサは、本開示で記載される技術のいずれか又は全てを実行するよう構成されてよい。
【0061】
ビデオエンコーダ200の機能コンポーネントは、パーティションユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205及びイントラ予測ユニット206を含み得る予測ユニット202と、残差生成ユニット207と、変換ユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆変換ユニット211と、再構成ユニット212と、バッファ213と、エントロピエンコーディングユニット214とを含んでよい。
【0062】
他の例で、ビデオエンコーダ200は、より多い、より少ない、又は異なる機能コンポーネントを含んでよい。例において、予測ユニット202は、イントラブロックコピー(Intra Block Copy,IBC)ユニットを含んでよい。IBCユニットは、少なくとも1つの参照ピクチャが、現在のビデオブロックが位置しているピクチャであるIBCモードで、予測を実行してよい。
【0063】
更に、動き推定ユニット204及び動き補償ユニット205などのいくつかのコンポーネントは、高度に集積されてもよいが、説明のために
図5の例では別々に表されている。
【0064】
パーティションユニット201は、ピクチャを1つ以上のビデオブロックにパーティション化してよい。ビデオエンコーダ200及びビデオデコーダ300は、様々なビデオブロックサイズをサポートしてよい。
【0065】
モード選択ユニット203は、例えば、エラー結果に基づいて、イントラ又はインターのコーディングモードの1つを選択し、結果として得られたイントラ又はインターコーディングされたブロックを、残差ブロックデータを生成する残差生成ユニット207へ、及び参照ピクチャとしての使用のために、エンコードされたブロックを再構成する再構成ユニット212へ供給してよい。いくつかの例で、モード選択ユニット203は、予測がインター予測信号及びイントラ予測信号に基づくイントラ及びインター予測複合(Combination of Intra and Inter Prediction,CIIP)モードを選択してもよい。モード選択ユニット203はまた、インター予測の場合に、ブロックの動きベクトルのための分解能(例えば、サブピクセル又は整数ピクセル精度)を選択してもよい。
【0066】
現在のビデオブロックに対してインター予測を実行するために、動き推定ユニット204は、バッファ213からの1つ以上の参照フレームを現在のビデオブロックと比較することによって、現在のビデオブロックの動き情報を生成してよい。動き補償ユニット205は、動き情報と、現在のビデオブロックに関連したピクチャ以外のバッファ213からのピクチャのデコードされたサンプルとに基づいて、現在のビデオブロックの予測されたビデオブロックを決定してよい。
【0067】
動き推定ユニット204及び動き補償ユニット205は、例えば、現在のビデオブロックがIスライス、Pスライス、又はBスライスであるかどうかに応じて、現在のビデオブロックのために異なる動作を実行してよい。
【0068】
いくつかの例で、動き推定ユニット204は、現在のビデオブロックのために一方向予測を実行してもよく、動き推定ユニット204は、現在のビデオブロックのための参照ビデオブロックをリスト0又はリスト1の参照ピクチャから探してもよい。動き推定ユニット204は、次いで、参照ビデオブロックを含むリスト0又はリスト1内の参照ピクチャを示す参照インデックスと、現在のビデオブロックと参照ビデオブロックとの間の空間変位を示す動きベクトルとを生成してよい。動き推定ユニット204は、現在のビデオブロックの動き情報として参照インデックス、予測方向インジケータ、及び動きベクトルを出力してよい。動き補償ユニット205は、現在のビデオブロックの動き情報によって示されている参照ビデオブロックに基づいて、現在のブロックの予測されたビデオブロックを生成してよい。
【0069】
他の例では、動き推定ユニット204は、現在のビデオブロックのために双方向予測を実行してもよく、動き推定ユニット204は、現在のビデオブロックのための参照ビデオブロックをリスト0内の参照ピクチャから探してもよく、また、現在のビデオブロックのためのもう1つの参照ビデオブロックをリスト1内の参照ピクチャから探してもよい。動き推定ユニット204は、次いで、参照ビデオブロックを含むリスト0及びリスト1内の参照ピクチャを示す参照インデックスと、参照ビデオブロックと現在のビデオブロックとの間の空間変位を示す動きベクトルとを生成してよい。動き推定ユニット204は、現在のビデオブロックの動き情報として現在のビデオブロックの参照インデックス及び動きベクトルを出力してよい。動き補償ユニット205は、現在のビデオブロックの動き情報によって示されている参照ビデオブロックに基づいて、現在のビデオブロックの予測されたビデオブロックを生成してよい。
【0070】
いくつかの例で、動き推定ユニット204は、デコーダのデコーディング処理のために動き情報のフルセットを出力してよい。
【0071】
いくつかの例で、動き推定ユニット204は、現在のビデオの動き情報のフルセットを出力しなくてもよい。むしろ、動き推定ユニット204は、他のビデオブロックの動き情報を参照して現在のビデオブロックの動き情報をシグナリングしてもよい。例えば、動き推定ユニット204は、現在のビデオブロックの動き情報が隣接ビデオブロックの動き情報と十分に類似していることを決定してもよい。
【0072】
一例で、動き推定ユニット204は、現在のビデオブロックに関連したシンタックス構造で、現在のビデオブロックが他のビデオブロックと同じ動き情報を有していることをビデオデコーダ300に示す値を示してもよい。
【0073】
他の例では、動き推定ユニット204は、現在のビデオブロックに関連したシンタックス構造で、他のビデオブロック及び動きベクトル差分(Motion Vector Difference,MVD)を特定してもよい。動きベクトル差分は、現在のビデオブロックの動きベクトルと、特定されているビデオブロックの動きベクトルとの間の差を示す。ビデオデコーダ300は、現在のビデオブロックの動きベクトルを決定するために、特定されているビデオブロックの動きベクトル及び動きベクトル差分を使用してもよい。
【0074】
上述されたように、ビデオエンコーダ200は、動きベクトルを予測的にシグナリングしてよい。ビデオエンコーダ200によって実装され得る予測シグナリング技術の2つの例には、アドバンスド動きベクトル予測(Advanced Motion Vector Prediction,AMVP)及びマージモードシグナリングがある。
【0075】
イントラ予測ユニット206は、現在のビデオブロックに対してイントラ予測を実行してよい。イントラ予測ユニット206が現在のビデオブロックに対してイントラ予測を実行する場合に、イントラ予測ユニット206は、同じピクチャ内の他のビデオブロックのデコードされたサンプルに基づいて、現在のビデオブロックの予測データを生成してよい。現在のビデオブロックの予測データは、予測されたビデオブロック及び様々なシンタックス要素を含んでよい。
【0076】
残差生成ユニット207は、現在のビデオブロックから現在のビデオブロックの予測されたビデオブロックを減じること(例えば、マイナス符号によって示される)によって、現在のビデオブロックの残差データを生成してよい。現在のビデオブロックの残差データは、現在のビデオブロック内のサンプルの異なるサンプルコンポーネントに対応する残差ビデオブロックを含んでよい。
【0077】
他の例では、例えば、スキップモードで、現在のビデオブロックの残差データは存在しなくてもよく、残差生成ユニット207は、減算演算を実行しなくてもよい。
【0078】
変換処理ユニット208は、現在のビデオブロックに関連した残差ビデオブロックに1つ以上の変換を適用することによって、現在のビデオブロックの1つ以上の変換係数ビデオブロックを生成してよい。
【0079】
変換処理ユニット208が現在のビデオブロックに関連した変換係数ビデオブロックを生成した後、量子化ユニット209は、現在のビデオブロックに関連した1つ以上の量子化パラメータ(QP)値に基づいて、現在のビデオブロックに関連した変換係数ビデオブロックを量子化してよい。
【0080】
逆量子化ユニット210及び逆変換ユニット211は、変換係数ビデオブロックに各々逆量子化及び逆変換を適用して、変換係数ビデオブロックから残差ビデオブロックを再構成してよい。再構成ユニット212は、再構成された残差ビデオブロックを、予測ユニット202によって生成された1つ以上の予測されたビデオブロックからの対応するサンプルに加えて、バッファ213での記憶のために、現在のブロックに関連した再構成されたビデオブロックを生成してよい。
【0081】
再構成ユニット212がビデオブロックを再構成した後、ループフィルタリング動作が、ビデオブロックにおいてビデオブロッキングアーチファクトを低減するよう実行されてもよい。
【0082】
エントロピエンコーディングユニット214は、ビデオエンコーダ200の他の機能コンポーネントからデータを受け取ってもよい。エントロピエンコーディングユニット214がデータを受け取るとき、エントロピエンコーディングユニット214は、エントロピエンコードされたデータを生成し、そのエントロピエンコードされたデータを含むビットストリームを生成するよう、1つ以上のエントロピエンコーディング動作を実行してよい。
【0083】
図6は、ビデオデコーダ300の例を表すブロック図であり、
図4で表されているシステム100のビデオデコーダ124であってよい。
【0084】
ビデオデコーダ300は、本開示の技術のいずれか又は全てを実行するよう構成されてよい。
図6の例で、ビデオデコーダ300は、複数の機能コンポーネントを含む。本開示で記載される技術は、ビデオデコーダ300の様々なコンポーネントの間で共有されてよい。いくつかの例で、プロセッサは、本開示で記載される技術のいずれか又は全てを実行するよう構成されてよい。
【0085】
図6の例で、ビデオデコーダ300は、エントロピデコーディングユニット301と、動き補償ユニット302と、イントラ予測ユニット303と、逆量子化ユニット304と、逆変換ユニット305と、再構成ユニット306と、バッファ307とを含む。ビデオデコーダ300は、いくつかの例で、ビデオエンコーダ200(
図5)に関して記載されたエンコーディングパスとは概して逆のデコーディングパスを実行してよい。
【0086】
エントロピデコーディングユニット301は、エンコードされたビットストリームを取り出してよい。エンコードされたビットストリームは、エントロピコーディングされたビデオデータ(例えば、ビデオデータのエンコードされたブロック)を含んでよい。エントロピデコーディングユニット301は、エントロピコーディングされたビデオデータをデコードしてよく、エントロピデコードされたビデオデータから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、及び他の動き情報を含む動き情報を決定してよい。動き補償ユニット302は、例えば、AMVP及びマージモードを実行することによって、そのような情報を決定してよい。
【0087】
動き補償ユニット302は、場合により、補間フィルタに基づく補間を実行して、動き補償されたブロックを生成してもよい。サブピクセル精度で使用される補間フィルタのための識別子は、シンタックス要素に含まれてもよい。
【0088】
動き補償ユニット302は、参照ブロックのサブ整数ピクセルについて補間値を計算するために、ビデオブロックのエンコード中にビデオエンコーダ200によって使用された補間フィルタを使用してもよい。動き補償ユニット302は、受け取られたシンタックス情報に従って、ビデオエンコーダ200によって使用された補間フィルタを決定し、その補間フィルタを使用して、予測ブロックを生成し得る。
【0089】
動き補償ユニット302は、エンコードされたビデオシーケンスのフレーム及び/又はスライスをエンコードするために使用されるブロックのサイズと、エンコードされたビデオシーケンスのピクチャの各マクロブロックがどのようにパーティション化されるかを記述するパーティション情報と、各インターコーディングされたブロックについての1つ以上の参照フレーム(及び参照フレームリスト)と、エンコードされたビデオシーケンスをデコードするための他の情報とを決定するために、シンタックス情報のいくつかを使用してもよい。
【0090】
イントラ予測ユニット303は、空間的に隣接するブロックから予測ブロックを形成するよう、例えば、ビットストリームで受け取られたイントラ予測モードを使用してよい。逆量子化ユニット304は、ビットストリームで供給されてエントロピデコーディングユニット301によってデコードされた量子化されたビデオブロック係数を逆量子化する、すなわち、量子化解除する。逆変換ユニット305は、逆変換を適用する。
【0091】
再構成ユニット306は、動き補償ユニット302又はイントラ予測ユニット303によって生成された対応する予測ブロックを残差ブロックに加算して、デコードされたブロックを形成してよい。望まれる場合には、デブロッキングフィルタも、ブロッキネスアーチファクトを取り除くために、デコードされたブロックにフィルタをかけるよう適用されてもよい。デコードされたビデオブロックは、次いで、バッファ307に格納され、バッファ307は、その後の動き補償/イントラ予測のために参照ブロックを提供し、更には、デコードされたビデオを表示デバイスでの提示のために生成する。
【0092】
いくつかの実施形態によって望まれる解決法の列挙が、次に与えられる。
【0093】
以下の解決法は、前のセクション(例えば、項目1~4)で議論されている技術の例示的な実施形態を示す。
【0094】
1.視覚メディア処理方法(例えば、
図3に表されている方法3000)であって、
視覚メディアデータと前記視覚メディアデータに対応する情報を格納するファイルとの間の変換をフォーマット規則に従って実行するステップ(3002)を含み、
前記フォーマット規則は、前記ファイルの非ビデオコーディングレイヤ(非VCL)トラックを識別する第1条件及び/又は前記ファイルのビデオコーディングレイヤ(VCL)トラックを識別する第2条件を指定する、
方法。
【0095】
2.解決法1の方法であって、
前記第1条件は、前記非VCLトラックが非VCLネットワーク抽象型レイヤのみを含み、特定のトラック参照を通じて前記VCLトラックで識別されることを指定する、
方法。
【0096】
3.解決法1~2の方法であって、
前記第1条件は、前記非VCLトラックが、前記VCLトラックに対応する適応パラメータセット(APS)を含むことを指定する、
方法。
【0097】
4.解決法1~3のいずれかの方法であって、
前記VCLトラックのための前記第2条件は、前記VCLトラックがデコーディング能力情報(DCI)又は動作点情報(OPI)ネットワーク抽象型レイヤユニットを含むことができないことを指定する、
方法。
【0098】
5.解決法1の方法であって、
前記第1条件は、前記非VCLトラックが、非VCLネットワーク抽象型レイヤユニットを含む1つ以上のエレメンタリストリームを含み、
前記非VCLネットワーク抽象型レイヤユニットは、前記VCLトラック内のエレメンタリストリームと同期する、
方法。
【0099】
6.解決法1~5のいずれかの方法であって、
前記変換は、前記視覚メディアデータのビットストリーム表現を生成し、該ビットストリーム表現を前記ファイルフォーマット規則に従って前記ファイルに格納することを有する、
方法。
【0100】
7.解決法1~5のいずれかの方法であって、
前記変換は、前記視覚メディアデータを回復するよう前記フォーマット規則に従って前記ファイルをパースすることを有する、
方法。
【0101】
8.解決法1~7の1つ以上で記載されている方法を実装するよう構成されたプロセッサを有するビデオデコーディング装置。
【0102】
9.解決法1~7の1つ以上で記載されている方法を実装するよう構成されたプロセッサを有するビデオエンコーディング装置。
【0103】
10.コンピュータコードを記憶しており、該コードは、プロセッサデ実行される場合に、該プロセッサに、解決法1~7のいずれかに記載されている方法を実装させる、
コンピュータプログラム製品。
【0104】
11.解決法1~7のいずれかに従って生成されるファイルフォーマットに従うビットストリーム表現を記憶するコンピュータ可読媒体。
【0105】
12.本開示で記載される方法、装置、又はシステム。
【0106】
本明細書で記載される解決法では、エンコーダは、コーディングされた表現をフォーマット規則に従って生成することによって、フォーマット規則に従い得る。本明細書で記載される解決法では、デコーダは、デコードされたビデオを生成するよう、フォーマット規則に従ってシンタックス要素の有無を知った上で、コーディングされた表現内のシンタックス要素をパースするためにフォーマット規則を使用し得る。
【0107】
技術1.視覚メディアデータを処理する方法(
図8に表される方法8000)であって、
視覚メディアファイルと視覚メディアデータのビットストリームとの間の変換をフォーマット規則に従って実行するステップ(8002)を有し、
前記フォーマット規則は、適応パラメータセットネットワーク抽象型レイヤユニットが、(1)ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方、及び(2)非ビデオコーディングレイヤトラックのサンプルで、前記視覚メディアファイルに同時に格納されないようにすることを指定し、
前記ビデオコーディングレイヤトラックは、ビデオコーディングレイヤネットワーク抽象型レイヤユニットを含むトラックであり、
前記適応パラメータセットネットワーク抽象型レイヤユニットは、ビデオストリームのためのクロマスケーリング付きルーママッピングパラメータと、前記ビデオストリームのためのスケーリングリストパラメータとを含む、
方法。
【0108】
技術2.技術1の方法であって、
前記フォーマット規則は、前記適応パラメータセットネットワーク抽象型レイヤユニットが前記ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方で前記視覚メディアファイルに格納されることを指定する、
方法。
【0109】
技術3.技術1の方法であって、
前記フォーマット規則は、前記適応パラメータセットネットワーク抽象型レイヤユニットが前記非ビデオコーディングレイヤトラックのサンプルで前記視覚メディアファイルに格納されることを指定する、
方法。
【0110】
技術4.技術1の方法であって、
前記フォーマット規則は、第2適応パラメータセットネットワーク抽象型レイヤユニットが、(1)ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方、及び(2)非ビデオコーディングレイヤトラックのサンプルで、前記視覚メディアファイルに同時に格納されることを許されることを更に指定し、
前記ビデオコーディングレイヤトラックは、ビデオコーディングレイヤネットワーク抽象型レイヤユニットを含むトラックであり、
前記第2適応パラメータセットネットワーク抽象型レイヤユニットは、ビデオストリームのための適応ループフィルタパラメータを含む、
方法。いくつかの実施形態で、視覚メディアデータを処理方法は、視覚メディアファイルと視覚メディアデータのビットストリームとの間の変換をフォーマット規則に従って実行するステップを有し、フォーマット規則は、適応パラメータセットが、(1)ビデオコーディングレイヤトラックのサンプル又はビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方、及び(2)非ビデオコーディングレイヤトラックのサンプルで、視覚メディアファイルに同時に格納されることを許されることを指定し、ビデオコーディングレイヤトラックは、ビデオコーディングレイヤネットワーク抽象型レイヤユニットを含むトラックであり、適応パラメータセットネットワーク抽象型レイヤユニットは、ビデオストリームのための適応ループフィルタパラメータを含む。
【0111】
技術5.技術4の方法であって、
前記フォーマット規則は、前記第2適応パラメータセットネットワーク抽象型レイヤユニットが前記ビデオコーディングレイヤトラックのサンプル又は前記ビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方で前記視覚メディアファイルに格納されることを指定する、
方法。いくつかの実施形態で、フォーマット規則は、適応パラメータセットネットワーク抽象型レイヤユニットが、ビデオコーディングレイヤトラックのサンプル又はビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方で視覚メディアファイルに格納されることを指定する。
【0112】
技術6.技術4の方法であって、
前記フォーマット規則は、前記第2適応パラメータセットネットワーク抽象型レイヤユニットが前記非ビデオコーディングレイヤトラックのサンプルで前記視覚メディアファイルに格納されることを指定する、
方法。いくつかの実施形態で、フォーマット規則は、適応パラメータセットネットワーク抽象型レイヤユニットが非ビデオコーディングレイヤトラックのサンプルで視覚メディアファイルに格納されることを指定する。
【0113】
技術7.技術1~6のいずれかの方法であって、
前記変換は、前記視覚メディアファイルを生成し、前記フォーマット規則に従って前記視覚メディアファイルに前記ビットストリームを格納することを有する、
方法。
【0114】
技術8.技術1~6のいずれかの方法であって、
前記変換は、前記視覚メディアファイルを生成することを有し、
当該方法は、非一時的なコンピュータ可読記録媒体に前記視覚メディアファイルを記憶することを更に有する、
方法。
【0115】
技術9.技術1~6のいずれかの方法であって、
前記変換は、前記ビットストリームを再構成するよう前記フォーマット規則に従って前記視覚メディアファイルをパースすることを有する、
方法。
【0116】
技術10.技術1~9のいずれかの方法であって、
前記視覚メディアファイルは、バーサタイル・ビデオ・コーディング(VVC)によって処理され、
前記ビデオコーディングレイヤトラック又は前記非ビデオコーディングレイヤトラックは、VVCトラックである、
方法。
【0117】
技術11.視覚メディアデータを処理する装置であって、
プロセッサと、命令を記憶している非一時的なメモリとを有し、
前記命令は、前記プロセッサによって実行されると、前記プロセッサに、技術1~10の1つ以上で記載されている方法を実装させる、
装置。
【0118】
技術12.プロセッサに、技術1~10の1つ以上で記載されている方法を実装させる命令を記憶している非一時的なコンピュータ可読記憶媒体。
【0119】
技術13.ビデオ処理装置によって実行された方法によって生成される視覚メディアファイルのビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、
前記方法は、
技術1~10の1つ以上で記載されている方法に従ってフォーマット規則を決定するステップと、
前記決定に基づき前記視覚メディアファイルを生成するステップと
を有する、
非一時的なコンピュータ可読記録媒体。いくつかの実施形態で、非一時的なコンピュータ可読記録媒体は、ビデオ処理装置によって実行された方法によって生成される視覚メディアファイルのビットストリームを記憶しており、方法は、フォーマット規則に従って視覚メディアデータに基づき視覚メディアファイルを生成するステップを有し、フォーマット規則は、第1適応パラメータセットネットワーク抽象型レイヤユニットが、(1)ビデオコーディングレイヤトラックのサンプル又はビデオコーディングレイヤトラックのサンプルエントリのいずれか一方又は両方、及び(2)非ビデオコーディングレイヤトラックのサンプルで、視覚メディアファイルに同時に格納されないようにすることを指定し、記ビデオコーディングレイヤトラックは、ビデオコーディングレイヤネットワーク抽象型レイヤユニットを含むトラックであり、第1適応パラメータセットネットワーク抽象型レイヤユニットは、ビデオストリームのためのクロマスケーリング付きルーママッピングパラメータと、前記ビデオストリームのためのスケーリングリストパラメータとを含む。
【0120】
技術14.技術1~10の1つ以上で記載されている方法を実装するよう構成されたプロセッサを有するビデオデコーディング装置。
【0121】
技術15.技術1~10の1つ以上で記載されている方法を実装するよう構成されたプロセッサを有するビデオエンコーディング装置。
【0122】
技術16.コンピュータコードを記憶しており、該コードは、プロセッサデ実行される場合に、該プロセッサに、技術1~10のいずれかに記載されている方法を実装させる、
コンピュータプログラム製品。
【0123】
技術17.技術1~10のいずれかに従って生成されるファイルフォーマットに従うビットストリーム表現を記憶するコンピュータ可読媒体。
【0124】
技術18.技術1~10のいずれかで記載されている方法がビデオ処理装置で実行されることによって生成される視覚メディアファイルのビットストリームを記憶する非一時的なコンピュータ可読記録媒体。
【0125】
技術19.視覚メディアファイル生成の方法であって、
技術1~10のいずれかで記載されている方法に従って視覚メディアファイルを生成するステップと、
前記視覚メディアファイルをコンピュータ可読プログラム媒体に記憶するステップと
を有する方法。
【0126】
本明細書中、「ビデオ処理」という用語は、ビデオエンコーディング、ビデオデコーディング、ビデオ圧縮又はビデオ圧縮解除を指し得る。例えば、ビデオ圧縮アルゴリズムは、ビデオのピクセル表現から、対応するビットストリーム表現への変換中に、又はその逆も同様に、適用されてよい。現在のビデオブロックのビットストリーム表現は、例えば、シンタックスによって定義されるような、ビットストリーム内で同一位置にあるか又は異なった場所に広がっているかのどちらかであるビットに対応してよい。例えば、マクロブロックは、変換及びコーディングされた誤差残余値に関して、更には、ビットストリーム内のヘッダ及び他のフィールドにおけるビットを用いて、エンコードされてよい。更には、変換中、デコーダは、上記の解決法で説明されているように、決定に基づいて、いくつかのフィールドの有無の可能性を分かった上でビットストリームをパースしてよい。同様に、エンコーダは、特定のシンタックスフィールドが含まれるべきか否かを決定し、それに応じて、ビットストリーム表現からシンタックスフィールドを含めるか又は除くことによって、ビットストリーム表現を生成してよい。
【0127】
本明細書で説明されている開示の及び他の解決法、例、実施形態、モジュール及び機能動作は、デジタル電子回路において、あるいは、本明細書で開示されている構造及びそれらの構造的同等物を含むコンピュータソフトウェア、ファームウェア、若しくはハードウェアにおいて、あるいは、それらの1つ以上の組み合わせにおいて実装可能である。開示されている実施形態及び他の実施形態は、1つ以上のコンピュータプログラム製品、例えば、データ処理装置による実行のために又はその動作を制御するためにコンピュータ可読媒体上で符号化されたコンピュータプログラム命令の1つ以上のモジュールとして、実装可能である。コンピュータ可読媒体は、機械読み出し可能な記憶デバイス、機械読み出し可能な記憶担体、メモリデバイス、機械読み出し可能な伝搬信号をもたらす組成物、又はそれらの1つ以上の組み合わせであることができる。「データ処理装置」との用語は、例として、プログラム可能なプロセッサ、コンピュータ、又は複数のプロセッサ若しくはコンピュータを含め、データを処理する全ての装置、デバイス、及び機械を包含する。装置は、ハードウェアに加えて、問題となっているコンピュータプログラムのための実行環境を作り出すコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、又はそれらの1つ以上の組み合わせを構成するコードを含むことができる。伝搬信号は、人工的に生成された信号、例えば、機械により生成された電気的、光学的、又は電磁気的信号であって、適切なレシーバ装置への伝送のために情報を符号化するよう生成される。
【0128】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られる。)は、コンパイル済み又は解釈済みの言語を含む如何なる形式のプログラミング言語でも記述可能であり、それは、スタンドアロンプログラムとして又はコンピューティング環境における使用に適したモジュール、コンポーネント、サブルーチン、若しくは他のユニットとしてを含め、如何なる形式でもデプロイ可能である。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応しない。プログラムは、問題となっているプログラムに専用の単一のファイルで、又は複数の協調したファイル(例えば、1つ以上のモジュール、サブプログラム、又はコードの部分を保存するファイル)で、他のプログラム又はデータ(例えば、マークアップ言語文書で保存された1つ以上のスクリプト)を保持するファイルの部分において保存可能である。コンピュータプログラムは、1つのコンピュータで、あるいは、1つの場所に位置しているか、又は複数の場所にわたって分布しており、通信ネットワークによって相互接続されている複数のコンピュータで実行されるようデプロイ可能である。
【0129】
本明細書で説明されているプロセス及びロジックフローは、入力データに作用して出力を生成することによって機能を実行するよう1つ以上のコンピュータプログラムを実行する1つ以上のプログラム可能なプロセッサによって実行可能である。プロセス及びロジックフローはまた、専用のロジック回路、例えば、フィールド・プログラマブル・ゲート・アレイ(FPGA)又は特定用途向け集積回路(ASIC)によっても実行可能であり、装置は、そのようなものとして実装可能である。
【0130】
コンピュータプログラムの実行に適したプロセッサは、例として、汎用のマイクロプロセッサ及び専用のマイクロプロセッサの両方、並びにあらゆる種類のデジタルコンピュータのいずれか1つ以上のプロセッサを含む。一般に、プロセッサは、リード・オンリー・メモリ若しくはランダム・アクセス・メモリ又はその両方から命令及びデータを読み出すことになる。コンピュータの必須の要素は、命令を実行するプロセッサと、命令及びデータを保存する1つ以上のメモリデバイスとである。一般に、コンピュータはまた、データを保存する1つ以上の大容量記憶デバイス、例えば、磁気、光学磁気ディスク、又は光ディスクを含むか、あるいは、そのような1つ以上の大容量記憶デバイスからのデータの受信若しくはそれへのデータの転送又はその両方のために動作可能に結合されることになる。しかし、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令及びデータを保存するのに適したコンピュータ可読媒体は、例として、半導体メモリデバイス、例えば、EPROM、EEPROM、及びフラッシュメモリデバイス;磁気ディスク、例えば、内蔵ハードディスク又はリムーバブルディスク;光学磁気ディスク;並びにCDROM及びDVD-ROMディスクを含む全ての形式の不揮発性メモリ、媒体及びメモリデバイスを含む。プロセッサ及びメモリは、専用のロジック回路によって強化されるか、あるいは、それに組み込まれ得る。
【0131】
本明細書は、多数の詳細を含むが、それらは、あらゆる対象の又は請求される可能性があるものの範囲に対する限定としてではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明として解釈されるべきである。別々の実施形態に関連して本明細書で説明されている特定の特徴は、単一の実施形態と組み合わせても実装可能である。逆に、単一の実施形態に関連して説明されている様々な特徴はまた、複数の実施形態で別々に、又は何らかの適切なサブコンビネーションで実装可能である。更に、特徴は、特定の組み合わせで動作するものとして先に説明され、更には、そのようなものとして最初に請求されることがあるが、請求されている組み合わせからの1つ以上の特徴は、いくつかの場合に、その組み合わせから削除可能であり、請求されている組み合わせは、サブコンビネーションまたはサブコンビネーションの変形に向けられてもよい。
【0132】
同様に、動作は、特定の順序で図面において表されているが、これは、所望の結果を達成するために、そのような動作が示されているその特定の順序で又は順次的な順序で実行されること、あるいは、表されている全ての動作が実行されることを求めている、と理解されるべきではない。更に、本明細書で説明されている実施形態における様々なシステムコンポーネントの分離は、全ての実施形態でそのような分離を求めている、と理解されるべきではない。
【0133】
ほんのわずかの実施及び例が説明されており、他の実施、強化及び変形は、本特許文献で記載及び例示されているものに基づいて行われ得る。
【符号の説明】
【0134】
100 ビデオコーディングシステム
110 発信元デバイス
112 ビデオソース
114,200 ビデオエンコーダ
116,126 入出力(I/O)インターフェース
120 送信先デバイス
122 表示デバイス
124,300 ビデオデコーダ
130a ネットワーク
130b 記憶媒体/サーバ
201 パーティションユニット
202 予測ユニット
203 モード選択ユニット
204 動き推定ユニット
205,302 動き補償ユニット
206,303 イントラ予測ユニット
207 残差生成ユニット
208 変換ユニット
209 量子化ユニット
210,304 逆量子化ユニット
211,305 逆変換ユニット
212,306 再構成ユニット
213、307 バッファ
214 エントロピエンコーディングユニット
301 エントロピデコーディングユニット
1900 ビデオ処理システム
3600 ビデオ処理装置
3602 プロセッサ
3604 メモリ
3606 ビデオ処理ハードウェア