JP2016514931A - 出力レイヤセットのビデオデータのコーディング - Google Patents

出力レイヤセットのビデオデータのコーディング Download PDF

Info

Publication number
JP2016514931A
JP2016514931A JP2016506688A JP2016506688A JP2016514931A JP 2016514931 A JP2016514931 A JP 2016514931A JP 2016506688 A JP2016506688 A JP 2016506688A JP 2016506688 A JP2016506688 A JP 2016506688A JP 2016514931 A JP2016514931 A JP 2016514931A
Authority
JP
Japan
Prior art keywords
layer
sps
video
vps
output
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.)
Granted
Application number
JP2016506688A
Other languages
English (en)
Other versions
JP6386532B2 (ja
JP2016514931A5 (ja
Inventor
イェ−クイ・ワン
イン・チェン
アダルシュ・クリシュナン・ラマスブラモニアン
Original Assignee
クアルコム,インコーポレイテッド
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 クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2016514931A publication Critical patent/JP2016514931A/ja
Publication of JP2016514931A5 publication Critical patent/JP2016514931A5/ja
Application granted granted Critical
Publication of JP6386532B2 publication Critical patent/JP6386532B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/29Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding involving scalability at the object level, e.g. video object layer [VOL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

マルチレイヤビデオデータを符号化、復号、送信、または受信することを含み得る、マルチレイヤビデオデータをコーディングするためのシステム、方法、およびデバイスが開示される。このシステム、方法、およびデバイスは、レイヤセットの第1の出力レイヤセットを受信または送信し、レイヤセットの第2の出力レイヤセットを受信または送信してよい。このシステム、方法、およびデバイスは、第1の出力レイヤセットおよび第2の出力レイヤセットの少なくとも一方に関するビデオデータをコーディング(符号化または復号)する。

Description

本出願は、参照によって全体が本明細書に組み込まれている、2013年4月8日に出願された米国仮出願第61/809,858号の利益を主張するものである。
本開示は、ビデオコーディングにおけるパラメータセットのコーディングに関する。
デジタルビデオ機能は、デジタルテレビ、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップコンピュータまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ会議デバイス、ビデオストリーミングデバイスなどを含む、幅広いデバイスに組み込まれ得る。デジタルビデオデバイスは、MPEG-2、MPEG-4、ITU-T H.263またはITU-T H.264/MPEG-4、Part 10、Advanced Video Coding(AVC)、High Efficiency Video Coding(HEVC)規格、およびそのような規格の拡張によって定義される規格に記載されるような、ビデオ圧縮技法を実施する。これらのビデオデバイスは、そのようなビデオ圧縮技法を実施することによるデジタルビデオ情報のより効率的な送信、受信、符号化、復号、および/または記憶を行い得る。
ビデオ圧縮技法は、空間的(ピクチャ内)予測および/または時間的(ピクチャ間)予測を実行して、ビデオシーケンスに固有の冗長性を低減または除去する。ブロックベースのビデオコーディングでは、ビデオスライス(すなわち、ビデオフレームまたはビデオフレームの一部)が、ツリーブロック、コーディングユニット(CU)、および/またはコーディングノードと呼ばれることもあるビデオブロックに区分されてよい。ピクチャのイントラコーディングされた(I)スライスにおけるビデオブロックは、同じピクチャ内の隣接ブロックにおける参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコーディングされた(PまたはB)スライスにおけるビデオブロックは、同じピクチャ内の隣接ブロックにおける参照サンプルに対する空間予測または他の参照ピクチャにおける参照サンプルに対する時間予測を使用して符号化されてよい。ピクチャは、フレームと呼ばれてよく、参照ピクチャは参照フレームと呼ばれてよい。
空間予測または時間予測によってコーディングすべきブロックの予測ブロックが得られる。残差データは、コーディングすべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコーディングされたブロックは、予測ブロックを形成する参照サンプルのブロックを指し示す動きベクトル、およびコーディングされたブロックと予測ブロックとの間の差を示す残差データに応じて符号化される。イントラコーディングされたブロックは、イントラコーディングモードおよび残差データに応じて符号化される。さらなる圧縮を行うために、残差データがピクセル領域から変換領域に変換されて残差変換係数が得られてよく、次いでこれらの係数が量子化されてよい。量子化された変換係数は、最初2次元アレイとして配置され、変換係数の1次元ベクトルを生成するようにスキャンされてよく、さらなる圧縮を実現するために変換係数にエントロピー符号化が適用されてよい。
JCTVC-L1003v34、Brossら、「High efficiency video coding (HEVC) text specification draft 10 (for FDIS & Last Call)」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 12th Meeting:スイス、ジュネーブ、14-23、2013年1月 JCTVC-H1003、Brossら、「High-Efficiency Video Coding (HEVC) text specification draft 6」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 8th Meeting:米国カリフォルニア州サンホセ、2012年2月 JCTVC-J1003、Brossら、「High-Efficiency Video Coding (HEVC) text specification draft 8」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 10th Meeting:スウェーデン、ストックホルム、11-20、2012年7月 JCTVC-N1005_v3、Flynnら、「High-Efficiency Video Coding (HEVC) Range Extensions text specification: Draft 4」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 13th Meeting:大韓民国、仁川、18-26、2012年4月
本開示は、複数の出力レイヤセットが1つのレイヤセットに関してコーディングされ得るようにパラメータセットをコーディングするための技法に関する。一例では、ビデオデータをコーディングするためにレイヤセットの第1の出力レイヤセットおよびレイヤセットの第2の出力レイヤセットが使用されてよい。たとえば、ビデオデータは第1の出力レイヤセットおよび第2の出力レイヤセットに関してコーディングされてよい。
本開示は、パラメータセットをコーディングするための技法に関する。たとえば、ビデオコーダは、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報をコーディングしてよく、プロファイル情報、ティア情報、レベル情報は、1つのプロファイル構造、ティア構造、レベルシンタックス構造によってシグナリングされる各出力レイヤセットに、いくつかの例では、エントロピー復号なしにアクセスできるように関連付けられてよい。一例では、本開示は、いくつかの例では、エントロピー符号化なしに(すなわち、パラメータセット拡張内の任意のエントロピー符号化されたシンタックス要素の前に)アクセスできるパラメータセット拡張シンタックス内の位置における、ビデオパラメータセット(VPS)拡張シンタックスなどのパラメータセット拡張シンタックスのprofile_tier_levelシンタックス構造をコーディングするための技法について説明する。いくつかの例では、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報がエントロピー符号化なしにアクセス可能であり得るが、他の例では、VPS内の一部またはすべてのプロファイル情報、ティア情報、および/またはレベル情報により少ない量のエントロピー符号化またはある限られたエントロピー符号化が必要になることがある。
別の例では、本開示は、VPS内のマルチレイヤビデオデータにおけるレイヤ依存情報を、エントロピー符号化なしにアクセスできるようにコーディングするための技法に関する。いくつかの例では、VPS拡張内の、エントロピー符号化されたパラメータセット拡張のシンタックス要素の前の位置にある、非エントロピー符号化レイヤ依存情報を送信または受信することを含め、マルチレイヤビデオデータをコーディングしてよい。この技法は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータをコーディングすることを含んでよい。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示す。
別の例では、本開示は、パラメータセットをコーディングするための技法に関する。たとえば、ビデオコーダは、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報をコーディングしてよく、プロファイル情報、ティア情報、レベル情報は、1つのプロファイル構造、ティア構造、レベルシンタックス構造によってシグナリングされる各出力レイヤセットに、いくつかの例では、エントロピー復号なしにアクセスできるように関連付けられてよい。いくつかの例では、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報がエントロピー符号化なしにアクセス可能であり得るが、他の例では、VPS内の一部またはすべてのプロファイル情報、ティア情報、および/またはレベル情報により少ない量のエントロピー符号化またはある限られたエントロピー符号化が必要になることがある。
別の例では、本開示は、VPSのレイヤごとにvideo_format、video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffsなどの視覚的信号情報をコーディングするための技法に関する。
別の例では、本開示は、それぞれに異なる空間解像度、ビット深度、またはカラーフォーマットのレイヤによるSPS共有の技法に関する。
別の例では、本開示は、レイヤID(nuh_layer_id)が0よりも大きいシーケンスパラメータセット(SPS)のビデオ活用性情報(VUI)にはタイミング情報が含められるようなビデオコーディングの技法に関する。
別の例では、本開示は、デフォルト出力レイヤセットには目標出力レイヤの明白なシグナリングが行われないようなビデオコーディングの技法に関する。
別の例では、本開示は、各コーディング済みビデオシーケンス(CVS)(sps_max_sub_layers_minus1)に存在し得る最大数の時間的サブレイヤのシグナリングまたはレイヤIDが0よりも大きいSPS内のCVS(sps_temporal_id_nesting_flag)に関してインター予測が追加的に制限されるかどうかのシグナリングを回避するための技法に関する。
別の例では、本開示は、本開示の技法に従ってシンタックス要素output_layer_set_idx[i]をoutput_layer_set_idx_minus1[i]に変更するための技法に関する。
一例では、本開示は、マルチレイヤビデオデータを復号する方法であって、レイヤセットの第1の出力レイヤセットを受信することと、レイヤセットの第2の出力レイヤセットを受信することと、第1の出力レイヤセットと第2の出力レイヤセットの少なくとも一方のビデオデータを復号することとを含む方法について説明する。
別の例では、本開示は、マルチレイヤビデオデータを符号化する方法であって、第1の出力レイヤセットと第2の出力レイヤセットの少なくとも一方のビデオデータを符号化することであって、第1の出力レイヤセットと第2の出力レイヤセットがどちらも1つのレイヤセットに関するレイヤセットであることと、レイヤセットの第1の出力を送信することと、レイヤセットの第2の出力を送信することとを含む方法について説明する。
別の例では、本開示は、ビデオデータを復号するための装置であって、ビデオデータを記憶するように構成されたメモリと、レイヤセットの第1の出力レイヤセットを受信し、レイヤセットの第2の出力レイヤセットを受信し、第1の出力レイヤセットと第2の出力レイヤセットの少なくとも一方のビデオデータを復号するように構成された1つまたは複数のプロセッサとを備える装置について説明する。
別の例では、本開示は、ビデオデータを復号するための装置であって、レイヤセットの第1の出力レイヤセットを受信するための手段と、レイヤセットの第2の出力レイヤセットを受信するための手段と、第1の出力レイヤセットと第2の出力レイヤセットの少なくとも一方のビデオデータを復号するための手段とを備える装置について説明する。
別の例では、本開示は、コンピュータ可読記憶媒体について説明する。命令を記憶したコンピュータ可読記憶媒体であって、命令が、実行されたときに、1つまたは複数のプロセッサに、レイヤセットの第1の出力レイヤセットを受信することと、レイヤセットの第2の出力レイヤセットを受信することと、第1の出力レイヤセットと第2の出力レイヤセットの少なくとも一方のビデオデータを復号することとを行わせるコンピュータ可読記憶媒体。
1つまたは複数の例の詳細が、以下の添付の図面および説明において述べられる。他の特徴、目的、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
本開示で説明する技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図である。 本開示で説明する技法を実施し得る例示的なビデオエンコーダを示すブロック図である。 本開示で説明する技法を実施し得る例示的なビデオデコーダを示すブロック図である。 本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを符号化するための別の例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。 本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。
本開示は概して、ビデオコーディングおよび圧縮の分野に関する。一例として、本開示は、現在開発中の高効率ビデオコーディング(HEVC)規格に関する。「コーディング」という用語は、符号化および復号を指し、この技法は符号化、復号、または符号化と復号の両方に適用されてよい。より詳細に説明するように、この技法は、ピクチャ内のブロックが同じピクチャ内の別のブロックまたは複数のブロックに対して予想される(すなわち、空間予測)イントラコーディング(たとえば、イントラ予測)に関連し得る。
前述のビデオコーディングシステムでは、レイヤセットのプロファイル、ティア、およびレベルにアクセスするにはエントロピー復号が必要である。同様に、レイヤ依存情報はエントロピー復号なしではアクセスできない。出力レイヤセットのシグナリングでも問題が生じ効率が悪くなることがある。
本明細書で説明するシステム、方法、およびデバイスの一例は、ビデオパラメータセット(VPS)拡張シンタックスなどのパラメータセット拡張シンタックス内の、場合によっては、エントロピー符号化なしで(すなわち、拡張シンタックス内のエントロピー符号化された要素より前に)ならびに/あるいは低減または限定されたある程度のエントロピー符号化を用いてアクセスすることのできる拡張シンタックス内の位置にある、1組のprofile_tier_level()シンタックス構造をシグナリングするのを可能にする。VPS拡張シンタックスについて、例として本開示全体にわたって説明する。一例では、VPSは、各スライスセグメントヘッダにあるシンタックス要素によって参照されるPPS内にあるシンタックス要素によって参照されるSPS内にあるシンタックス要素のコンテンツによって決定されるような0個以上のコーディング済みビデオシーケンス(CVS)全体に適用されるシンタックス要素を含むシンタックス構造である。一例では、CVSは、NoRaslOutputFlagが1に等しいIRAPアクセスユニットと、その後に、NoRaslOutputFlagが1に等しいIRAPアクセス可能ユニットではなく、NoRaslOutputFlagが1に等しいIRAPアクセスユニットである以後のアクセスユニットまで(NoRaslOutputFlagが1に等しいIRAPアクセスユニットを含まない)のすべての以後のアクセスユニットを含む、0個以上のアクセスユニットとを復号順に含むアクセスユニットのシーケンスである。さらに、profile_tier_level()シンタックス構造はレイヤセットではなく出力レイヤセットに関連付けられてよい。その理由は、レイヤセットは、複数の出力レイヤセットに対応してもよく、1つのレイヤセットに対応する様々な出力レイヤセットが様々なレベルに適合してもよいからである。
profile_tier_level()シンタックス構造は、プロファイル、ティア、およびレベルに関連するシンタックス情報を与えるシンタックス構造である。プロファイル、ティア、およびレベルは、HEVC規格またはHEVC拡張規格を、同様の機能要件を有し得る様々なアプリケーション全体にわたって相互運用できるように実施するための様々な適合点を指定する。いくつかの例では、プロファイルは、適合ビットストリームを生成する際に使用し得る1組のコーディングツールまたはアルゴリズムを定義してよい。いくつかの例では、ティアおよびレベルは、ビットストリームのパラメータのいくつかに制約を課してもよい。いくつかの例では、これらのパラメータは、デコーダ処理負荷およびデコーダメモリ機能に対応してよい。レベル情報は、データの処理に対する制約を確立してよい。たとえば、レベル情報は、最大サンプルレート、最大ピクチャサイズ、最大ビットレート、最小圧縮比を含んでよい。レベル情報は、復号済みピクチャバッファ(DPB)およびコーディング済みピクチャバッファ(CPB)の機能を含んでもよい。CPBは、圧縮データをデータフロー管理を目的として復号する前に保持する。DPBは、復号済みピクチャデータを保持する。
本明細書において説明するシステム、方法、およびデバイスの別の例は、ビデオデータのレイヤを含むマルチレイヤビデオデータをコーディングするのを可能にする。これらのシステム、方法、およびデバイスは、VPS拡張シンタックスなどのパラメータセット拡張シンタックス内の、エントロピー符号化された拡張のシンタックス要素の前の位置にある、非エントロピー符号化レイヤ依存性情報を送受信することを含んでよい。さらに、これらのシステム、方法、およびデバイスは、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを復号することを含んでよい。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示す。VPS拡張シンタックスについて、例として本開示全体にわたって再び説明する。
以下でより詳細に説明するように、一例では、1つのレイヤセットに関して複数の出力レイヤセットをシグナリングしてよい。たとえば、本明細書で説明するように、シンタックス要素output_layer_flag[lsIdx][j]がoutput_layer_flag[i][j]に変更されてよく、関連するセマンティクスがそれに応じて変更されてよい。
以下にさらに詳しく説明するように、別の例では、プロファイル情報、ティア情報、およびレベル情報が、エントロピー復号なしにアクセスできるようにVPS内でシグナリングされてよい。このことは、ue(v)(ue(V)はエントロピー符号化を示す)以外の記述子を有するパラメータを含む以下の表のうちの1つまたは複数に示されている。たとえば、記述子は、固定長コーディング、たとえばu(n)を示すことができ、この場合、nは整数1以上である。
以下にさらに詳しく説明するように、別の例では、レイヤ依存情報が、エントロピーなしにアクセスできるようにVPS内でシグナリングされてよい。このことは、ue(v)以外の記述子を有するパラメータを含む以下の表のうちの1つまたは複数に示されている。たとえば、記述子は、固定長コーディング、たとえばu(n)を示すことができ、この場合、nは整数1以上である。
以下にさらに詳しく説明するように、別の例では、表現フォーマットが、エントロピー復号または低減もしくは限定されたある程度のエントロピー符号化なしにアクセスできるようにVPS内でシグナリングされてよい。たとえば、chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、bit_depth_vps_luma_minus8
、およびbit_depth_vps_chroma_minus8などの表現フォーマットパラメータが、VPS内でシグナリングされ、いくつかの例ではエントロピー符号化されない。このことは、ue(v)以外の記述子を有するパラメータを含む以下の表のうちの1つまたは複数に示されている。これらの表現フォーマットパラメータは、特定のパラメータが固定長コーディング、たとえば、u(n)であることを示す記述子を有してよく、この場合、nは整数1以上である。場合によっては、「_vps」は様々なパラメータ名から除去されており、たとえば、chroma_format_vps_idcはchroma_format_idcと呼ばれ、separate_colour_plane_ vps_flagはseparate_colour_plane_flagと呼ばれ、pic_width_vps_in_luma_samplesはpic_width_in_luma_samplesと呼ばれ、pic_height_in_luma_samplesはpic_height_in_luma_samplesと呼ばれ、bit_depth_vps_luma_minus8はbit_depth_luma_minus8と呼ばれ、bit_depth_vps_chroma_minus8はbit_depth_chroma_minus8と呼ばれ、他のパラメータについても同様である。
以下でより詳細に説明するように、別の例では、video_format、video_full_range_flag、colour_primaries、transfer_characteristics、またはmatrix_coeffsなどの視覚的信号情報が、VPS内でレイヤごとにシグナリングされてよい。本明細書で説明するように、video_format、video_full_range_flag、colour_primari、transfer_characteristics、またはmatrix_coeffsなどの視覚的信号情報は、たとえばHEVC規格の付属書類Eに明記されたようにビデオ活用性情報(VUI)パラメータのサブセットであってよい。VUI、したがって視覚的信号情報は、VPSに含まれ、VPS内でレイヤごとにシグナリングされてよい。
以下でより詳細に説明するように、別の例では、それぞれに異なる空間解像度、ビット深度、またはカラーフォーマットを有するレイヤによってシーケンスパラメータセット(SPS)共有が実行されてよい。一例では、SPSは、各スライスセグメントヘッダにあるシンタックス要素によって参照されるPPS内にあるシンタックス要素のコンテンツによって決定されるような0個以上のCVS全体に適用されるシンタックス要素を含むシンタックス構造である。いくつかの例では、マルチレイヤビデオデータを復号する方法は、ビデオパラメータセットおよび第1のシーケンスパラメータセットを受信することを含んでよい。この方法は、第1のシーケンスパラメータセットを参照する第1のレイヤを受信することと、空間解像度、ビット深度、およびカラーフォーマットのうちの少なくとも1つについて第1のレイヤとは異なる値を有し、第1のシーケンスパラメータセットを参照する第2のレイヤを受信することとを含んでもよい。さらに、この例示的な方法は、ビデオパラメータセットおよび第1のシーケンスパラメータセットからの情報に基づいて第1および第2のレイヤのビデオデータを復号することを含んでよい。
以下でより詳細に説明するように、別の例では、レイヤID(nuh_layer_id)が0よりも大きいSPSのVUIにおいてタイミング情報はコーディングされない。いくつかの例では、レイヤIDが0よりも大きいSPSを参照するレイヤには、VPS内でシグナリングされるタイミング情報が使用される。
以下でより詳細に説明するように、別の例では、デフォルトの出力レイヤセットに目標出力レイヤの明示的なシグナリングは使用されない。たとえば、multiple_output_layer_sets_in_layer_set_flagが0に等しいことは、VPSによってレイヤごとに1つの出力レイヤのみが指定され、最上位レイヤが唯一の目標出力レイヤであることを明示するので、デフォルトの出力レイヤセットに関する目標出力レイヤの明示的なシグナリングは必要とされない。たとえば、multiple_output_layer_sets_in_layer_set_flagが0に等しいときには、各レイヤセットの出力レイヤは1つだけであり、最上位レイヤが唯一の目標出力レイヤであるので、どのレイヤを出力すべきかをシグナリングする必要はない。
以下でより詳細に説明するように、別の例では、sps_max_sub_layers_minus1およびsps_temporal_id_nesting_flagはSPS内でシグナリングされない。場合によっては、nuh_layer_id_>0であるときにSPS内でこのシグナリングは行われない。
以下でより詳細に説明するように、別の例では、シンタックス要素output_layer_set_idx[i]がoutput_layer_set_idx_minus1[i]に変更されてよい。この理由は、0に等しいoutput_layer_set_idx[i]が使用されるシンタックス要素layer_id_included_flag[i][j]がレイヤセット0のシンタックス要素であり、一方、レイヤセット0にはlayer_id_included_flag[i][j]が定義されないからである。さらに、レイヤセット0の目標出力レイヤは常にレイヤ0である(ベースレイヤ)。
上記の様々な例は、エントロピー符号化されない様々なデータ、パラメータなどを有する態様を含んでよい。このことに起因して、データ、パラメータなどには、エントロピー符号化を行うエントロピーコーダを有さないデバイスからアクセス可能であってよい。たとえば、場合によっては、メディアアウェアネットワークエンティティ(MANE)はエントロピー符号化デバイスを有さないことがあるが、一般に、データ、パラメータなどの非エントロピー符号化情報をコーディングする(たとえば、復号する)ことができる。
「HEVC作業草案10」または「WD10」と呼ばれるHEVC規格の最近の草案が、JCTVC-L1003v34、Brossら、「High efficiency video coding (HEVC) text specification draft 10 (for FDIS & Last Call)」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 12th Meeting:スイス、ジュネーブ、14-23、2013年1月という文献に記載されており、2013年10月15日現在で以下のサイトからダウンロード可能である。
http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip
「HEVC作業草案6」または「WD6」と呼ばれるHEVCの別の最近の作業草案(WD)が、JCTVC-H1003、Brossら、「High-Efficiency Video Coding (HEVC) text specification draft 6」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 8th Meeting:米国カリフォルニア州サンホセ、2012年2月という文献に記載されており、2013年10月15日現在で以下のサイトからダウンロード可能である。
http://phenix.int-evry.fr/jct/doc_end_user/documents/8_San%20Jose/wg11/JCTVC-H1003-v22.zip
「HEVC作業草案8」または「WD8」と呼ばれるHEVCの別の最近の作業草案(WD)が、JCTVC-J1003、Brossら、「High-Efficiency Video Coding (HEVC) text specification draft 8」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 10th Meeting:スウェーデン、ストックホルム、11-20、2012年7月という文献に記載されており、2013年10月15日現在で以下のサイトからダウンロード可能である。
http://phenix.int-evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-v8.zip
HEVC範囲拡張は、JCTVC-N1005_v3、Flynnら、「High-Efficiency Video Coding (HEVC) Range Extensions text specification: Draft 4」、Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 13th Meeting:大韓民国、仁川、18-26、2013年4月という文献に記載されており、2013年10月15日現在で以下のサイトからダウンロード可能である。
http://phenix.it-sudparis.eu/jct/doc_end_user/current-document.php?id=8139
図1は、本開示で説明する技法を利用し得る例示的なビデオ符号化および復号システム10を示すブロック図である。図1に示すように、システム10は、後でビデオデコーダ30によって復号すべき符号化ビデオデータを生成するビデオエンコーダ20を含む。送信元デバイス12および宛先デバイス14は、デスクトップコンピュータ、ノート(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのうちの任意のデバイスを備えてよい。場合によっては、送信元デバイス12および宛先デバイス14はワイヤレス通信が可能であってよい。
宛先デバイス14は、復号すべき符号化ビデオデータをリンク16を介して受信してよい。リンク16は、符号化ビデオデータをビデオエンコーダ20からビデオデコーダ30に移動させることができる任意の種類の媒体またはデバイスを備えてよい。一例では、リンク16は、ビデオエンコーダ20が符号化ビデオデータをリアルタイムに直接ビデオデコーダ30に送信するのを可能にする通信媒体を備えてよい。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調されてよく、宛先デバイス14に送信されてよい。通信媒体は、無線周波数(RF)スペクトルまたは1つまたは複数の物理伝送線路などの任意のワイヤレス通信媒体または有線通信媒体を備えてよい。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなどのパケットベースのネットワークの一部を形成してよい。通信媒体は、ルータ、スイッチ、基地局、または送信元デバイス12から宛先デバイス14への通信を容易にするうえで有用であり得る任意の他の機器を含んでよい。
代替的に、符号化データは出力インターフェース22から記憶デバイス34に出力されてよい。同様に、入力インターフェース28は記憶デバイス34から符号化データにアクセスしてよい。記憶デバイス34は、ハードドライブ、ブルーレイディスク、DVD、CD-ROM、フラッシュメモリ、揮発性もしくは不揮発性のメモリ、または符号化ビデオデータを記憶するための任意の他の適切なデジタル記憶媒体などの様々な分散されるかまたはローカルにアクセスされるデータ記憶媒体のうちの任意の記憶媒体を含んでよい。さらなる一例では、記憶デバイス34は、ビデオエンコーダ20によって生成された符号化ビデオを保持することのできるファイルサーバまたは別の中間記憶デバイスに対応してよい。宛先デバイス14は、記憶デバイス34の記憶されたビデオデータにストリーミングを介してアクセスするかまたは記憶されたビデオデータを入力インターフェース28を介してダウンロードしてよい。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータをビデオデコーダ30に送信することのできる任意の種類のサーバであってよい。ファイルサーバの例には、(たとえば、ウェブサイトの)ウェブサーバ、ファイル転送プロトコル(FTP)サーバ、ネットワーク接続ストレージ(NAS)デバイス、またはローカルディスクドライブが含まれる。ビデオデコーダ30は、インターネット接続を含む、任意の標準的なデータ接続を介して符号化ビデオデータにアクセスしてよい。これには、ワイヤレスチャネル(たとえば、Wi-Fi接続)、有線接続(たとえば、DSL、ケーブルモデムなど)、またはファイルサーバ上に記憶された符号化ビデオデータにアクセスするのに適したワイヤレスチャネルと有線接続の組合せを含めてよい。記憶デバイス34からの符号化ビデオデータの送信は、ストリーミング送信であっても、またはダウンロード送信であっても、またはそれらの組合せであってもよい。
本開示の技法は、必ずしもワイヤレスアプリケーションまたはワイヤレス設定に限定されるとは限らない。本開示の技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体上に記憶されたデジタルビデオの符号化、データ記憶媒体上に記憶されたデジタルビデオの復号、または他のアプリケーションなどの様々なマルチメディアアプリケーションのうちの任意のマルチメディアアプリケーションのサポートとしてビデオコーディングに適用されてよい。いくつかの例では、システム10は、ビデオストリーミング、ビデオ再生、ビデオ放送、および/またはビデオテレフォニーなどのアプリケーションをサポートするために一方向または双方向ビデオ送信をサポートするように構成されてよい。
図1の例では、送信元デバイス12は、ビデオソース18と、ビデオエンコーダ20と、出力インターフェース22とを含む。場合によっては、出力インターフェース22は、変調器/復調器(モデム)および/または送信機を含んでよい。ビデオソース18は、ビデオキャプチャデバイス、たとえば、ビデオカメラ、あらかじめキャプチャされたビデオを含むビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および/またはソースビデオとしてコンピュータグラフィクスデータを生成するためのコンピュータグラフィクスシステムなどのソース、あるいはそのようなソースの組合せを含んでよい。一例として、ビデオソース18がビデオカメラである場合、送信元デバイス12および宛先デバイス14はいわゆるカメラ付き携帯電話またはビデオ付き携帯電話を形成してよい。しかし、本開示に記載された技法は、ビデオコーディング全般に適用可能であってよく、ワイヤレスアプリケーションおよび/または有線アプリケーションに適用されてよい。
ビデオエンコーダ20は、ビデオソース18から受信されたキャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータによって生成されたビデオを符号化する。キャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータによって生成されたビデオは、4:2:0サンプルフォーマット、4:2:2サンプルフォーマット、または4:4:4サンプルフォーマットを含む上述のサンプルフォーマットのうちのいずれかに従ってフォーマットされてよい。ビデオエンコーダ20は、4:2:0サンプルフォーマット、4:2:2サンプルフォーマット、または4:4:4サンプルフォーマットのうちのいずれかに従ってフォーマットされたビデオに対してビデオコーディングを実行してよい。場合によっては、ビデオエンコーダ20は、コーディングプロセスの一部として、キャプチャされたビデオ、プリキャプチャされたビデオ、またはコンピュータによって生成されたビデオをアップサンプリングまたはダウンサンプリングしてよい。たとえば、キャプチャされたビデオは、4:4:4サンプルフォーマットに従ってフォーマットされてよく、ビデオエンコーダ20は、キャプチャされたビデオを4:2:2フォーマットにダウンサンプリングし、ダウンサンプリングしたビデオにビデオエンコーディングを実行してよい。符号化されたビデオデータは、送信元デバイス12の出力インターフェース22を介して宛先デバイス14に直接送信されてよい。符号化されたビデオデータはさらに(または代替として)、以後の宛先デバイス14またはその他の装置によるアクセス、復号、および/または再生が可能なように記憶デバイス34上に記憶されてよい。
宛先デバイス14は、入力インターフェース28と、ビデオデコーダ30と、ディスプレイデバイス32とを含む。場合によっては、入力インターフェース28は、受信機および/またはモデムを含んでよい。宛先デバイス14の入力インターフェース28は、符号化ビデオデータをリンク16を介して受信する。リンク16を介して伝達されるかまたは記憶デバイス34上に供給される符号化ビデオデータは、ビデオデコーダ30などのビデオデコーダによってビデオデータを復号する際に使用できる、ビデオエンコーダ20によって生成された様々なシンタックス要素を含んでよい。そのようなシンタックス要素は、通信媒体上で送信される符号化ビデオデータ、記憶媒体上に記憶される符号化ビデオデータ、またはファイルサーバ上に記憶される符号化ビデオデータに含められてよい。
ディスプレイデバイス32は、宛先デバイス14と一体であってもよく、または宛先デバイス14の外部に設けられてもよい。いくつかの例では、宛先デバイス14は、集積ディスプレイデバイスを含み、さらに外部ディスプレイデバイスとインターフェースするように構成されてよい。他の例では、宛先デバイス14はディスプレイデバイスであってよい。概して、ディスプレイデバイス32は、復号されたビデオデータをユーザに表示し、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別の種類のディスプレイデバイスなどの様々な種類のディスプレイデバイスのうちの任意のディスプレイデバイスを備えてよい。
ビデオエンコーダ20およびビデオデコーダ30は、現在策定中の高効率ビデオコーディング(HEVC)規格などのビデオ圧縮規格に従って動作することができ、概して現在のHEVCテストモデル(HM)または将来のHMに適合することができる。
代替的に、ビデオエンコーダ20およびビデオデコーダ30は、代替的にMPEG-4、Part 10と呼ばれるITU-T H.264規格、アドバンストビデオコーディング(AVC)、またはそのような規格の改訂もしくは拡張などの、他の独自規格または業界規格に従って動作してよい。本開示の技法は、HEVC拡張に適用可能であるように記載されているが、必ずしも任意の特定のコーディング規格に限定されるとは限らない。ビデオ圧縮規格の他の例にはMPEG-2およびITU-T H.263が含まれる。
図1には示されていないが、いくつかの態様では、ビデオエンコーダ20およびビデオデコーダ30は各々、オーディオエンコーダおよびオーディオデコーダを組み込んでよく、共通のデータストリームまたは別々のデータストリーム内のオーディオとビデオの両方の符号化に対処するために適切なMUX-DEMUXユニット、または他のハードウェアおよびソフトウェアを含んでよい。MUX-DEMUXユニットは、適用可能な場合、いくつかの例において、ITU H.223マルチプレクサプロトコル、またはユーザデータプロトコル(UDP)などの他のプロトコルに適合してよい。
ビデオエンコーダ20およびビデオデコーダ30は各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組合せのような、種々の適切なエンコーダ回路のいずれかとして、実装され得る。本開示の技法がソフトウェアに部分的に実装されるとき、デバイスは、ソフトウェアに対する命令を適切な非一時的コンピュータ可読媒体に記憶し、1つまたは複数のプロセッサを使用して命令をハードウェアにおいて実行して本開示の技法を実施してよい。ビデオエンコーダ20およびビデオデコーダ30の各々は、1つまたは複数のエンコーダまたはデコーダに含まれてよく、これらのいずれもが、それぞれのデバイスにおいて、結合されたビデオエンコーダ/デコーダ(コーデック)の一部として統合され得る。
図1に示された例では、ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を送信または受信してよい。たとえば、ビデオエンコーダ20は、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を送信してよく、ビデオデコーダ30は、たとえばビデオエンコーダ20から送られたエントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を受信してよい。
エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造は、VPS拡張内の、エントロピー符号化されたVPS拡張の他のシンタックス要素の前の位置に存在してよい。ビデオコーダ(たとえば、ビデオエンコーダ20またはビデオデコーダ30)は、複数の出力レイヤセットの各々に関するプロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照し、出力レイヤセット関して参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいてその出力レイヤセットのうちの1つのビデオデータを復号してよい。たとえば、ビデオエンコーダ20は、複数の出力レイヤセットの各々に関するプロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照し、出力レイヤセットに関して参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいてその出力レイヤセットのうちの1つビデオデータを符号化してよい。ビデオデコーダ30は、複数の出力レイヤセットの各々に関するプロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照し、出力レイヤセットに関して参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいてその出力レイヤセットのうちの1つのビデオデータを復号してよい。
いくつかの例では、ビデオコーダは、nuh_layer_idが0に等しいシーケンスパラメータセット(SPS)をさらに送信または受信してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。nuh_layer_idは、特定のレイヤを示すために使用されてよい。レイヤは、すべてが特定の値のnuh_layer_idを有するビデオコーディングレイヤ(VCL)ネットワークアブストラクションレイヤ(NAL)ユニットと、関連する非VCL NALユニットとの組、または階層的関係を有する1組の構文的構造の1つであってよい。nuh_layer_idは、1つのレイヤのみを含むビットストリームにおいて0に等しいものとする。他の値のnuh_layer_idは、複数のレイヤを含むビットストリームに現れ得る。一例では、NALユニットは、後続のデータの種類の表示と、必要に応じてエミュレーション防止バイトが交ぜられたローバイトシーケンスペイロード(RBSP)の形をしたデータを含むバイトとを含むシンタックス構造である。一例では、RBSPは、NALユニット内にカプセル化され、空であるかまたはシンタックス要素を含むデータビットのストリング、その後に続くRBSPストップビットおよびそれに続く、0に等しい0個以上のビットの形を有する整数個のバイトを含むシンタックス構造である。
ビデオエンコーダ20は、nuh_layer_idが0に等しいSPSをさらに送信または受信してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。ビデオデコーダ30は、nuh_layer_idが0に等しいSPSを受信してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。
いくつかの例では、nuh_layer_idが0よりも大きいレイヤがSPSを参照するとき、ビデオデコーダは、SPSのプロファイル、ティア、およびレベルシンタックス構造を使用したnuh_layer_idが0よりも大きいレイヤのビデオデータの復号を行わないことがある。いくつかの例では、プロファイル、ティア、およびレベルシンタックス構造を出力レイヤセットのそれぞれにリンクしてよい。したがって、1つまたは複数の特定のプロファイル、ティア、およびレベルシンタックス構造は、1つまたは複数の特定の出力レイヤセットの符号化および/または復号を行うのに使用できるように1つまたは複数の特定の出力レイヤセットに接続されてよい。リンクすることは、プロファイル、ティア、およびレベルシンタックス構造のインデックスを表すシンタックス要素に基づいて、プロファイル、ティア、およびレベルシンタックス構造の各々がリンクされる出力レイヤセットの各々を識別することを含んでよい。ビデオデータを復号することは、それぞれの出力レイヤセットにリンクされたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいて、1つまたは複数の出力レイヤセットのビデオデータを復号することを含んでよい。
複数のレイヤを含む例では、すべてのレイヤのビットストリームが複数の適合ビットストリームに分割され、たとえば、レイヤセットごとに1つのビットストリームに分割されてよい。これらの複数の適合ビットストリームの各々はレイヤセットと呼ばれてもよい。レイヤセットは、特定のレイヤおよびその特定のレイヤが復号のために依存する任意の参照レイヤの参照を含んでよい。この場合、特定のレイヤが依存する参照レイヤがあると仮定する。したがって、レイヤセットは特定のレイヤに関連するNALユニットと特定のレイヤを復号するのに必要なあらゆる参照レイヤに関するNALユニットとを含んでよい適合ビットストリームである。
出力レイヤセットは、目標出力レイヤのリストが指定されたレイヤセットである。レイヤセットについては、目標出力レイヤのリストは指定されない。出力レイヤセットは、表示のために出力されることが意図された1つまたは複数の特定のレイヤの出力レイヤセットであってよい。いくつかの例では、1つのレイヤセットに関して複数の出力レイヤセットをシグナリングしてよい。
いくつかの例では、ビデオコーダ(たとえば、ビデオエンコーダ20またはビデオデコーダ30)は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を必要に応じて送信または受信してよい。たとえば、ビデオエンコーダ20は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してよい。ビデオデコーダ30は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してよい。
ビデオコーダ(たとえば、ビデオエンコーダ20またはビデオデコーダ30)は、出力レイヤフラグ[i][j]が1に等しいことに対応するレイヤを目標出力レイヤの関連するリストとして指定することによって、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを生成してもよい。たとえば、ビデオエンコーダ20は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを符号化してよい。ビデオデコーダ30は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを復号してよい。図1に示された例では、ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、ビデオデータのレイヤを含むマルチレイヤビデオデータをコーディングしてよい。
ビデオコーダ(たとえば、ビデオエンコーダ20またはビデオデコーダ30)は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置にある、非エントロピー符号化レイヤ依存情報を送信または受信してよい。これによって、たとえば、MANEなどの、エントロピーコーダを含まないデバイスによってレイヤ依存情報を符号化または復号することが可能になる。さらに、レイヤ依存情報をより早くコーディングすることも可能になる。たとえば、レイヤ依存情報を復号プロセスにおいてより早く復号することができる。たとえば、ビデオエンコーダ20は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置において、非エントロピー符号化レイヤ依存情報を送信してよい。ビデオデコーダ30は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置において、非エントロピー符号化レイヤ依存情報を受信してよい。
ビデオコーダ(たとえば、ビデオエンコーダ20またはビデオデコーダ30)は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータをコーディングしてよい。たとえば、ビデオエンコーダ20は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを符号化してよい。ビデオデコーダ30は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを復号してよい。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示す。
いくつかの例では、レイヤ依存情報は、0に等しいときに、インデックスjを有するレイヤがインデックスIを有するレイヤの直接参照レイヤではないことを明示し、1に等しいときに、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤになり得ることを明示するdirect_dependency_flag[i][j]を含む。
本明細書で説明するシステム、方法、およびデバイスの一例は、1組のprofile_tier_level()シンタックス構造をVPS拡張シンタックス内でシグナリングするのを可能にする。いくつかの例では、1組のprofile_tier_level()シンタックス構造は、VPS拡張シンタックス内の、エントロピー符号化なしでアクセス可能である位置、すなわち、VPS拡張シンタックス内のエントロピー符号化要素の前の位置においてシグナリングされる。
いくつかの例では、VPS拡張シンタックスのエントロピー符号化要素の前にプロファイル、ティア、およびレベルシンタックス構造を存在させる。これらのシンタックス構造は、出力レイヤセットにリンクされてよい。いくつかの例では、シンタックス要素 vps_num_layer_sets_minus1 plus 1は、VPSによって指定されたレイヤセットの数を指定する。レイヤセットは、あるレイヤとそのレイヤが依存する任意の(0個以上の)他のレイヤとを含むセットであってよい。たとえば、スケーラブルビデオコーディングにおけるレイヤ2のレイヤセットは、レイヤ0、レイヤ1、およびレイヤ2を含んでよい。レイヤセットごとに、1つまたは複数の出力レイヤセットが指定されてよい。各出力レイヤセットは、プロファイル、レベル、およびティアを有するように指定される。
本開示の一例では、VPSシンタックスの一部は、Table 1(表1)に示す通りであってよい。
Figure 2016514931
上記でTable 1(表1)の例に示すように、vps_num_layer_sets_minus1は、VPS内ではue(v)記述子によって示されるようにエントロピー符号化され、VPS内のvps_num_layer_sets_minus1の前に他のエントロピー符号化シンタックス要素がある。いくつかの例では、エントロピー復号が望ましくないことがある。このことは、スプライシングまたはストリーム適応(たとえば、時間率、品質、空間適応)を実行することのできる中間ネットワークデバイスに特に当てはまる。デコーダ(たとえば、ビデオデコーダ30)は一般に、エントロピーデコーダを有する。しかし、多くの場合、中間ネットワークデバイスがエントロピーデコーダを有さないことが望ましい。これによって中間デバイスが簡略化され、場合によってはコストが削減され電力消費量が低減する。さらに、いずれの場合も、エントロピー復号を実行する必要なしにプロファイル情報、ティア情報、およびレベル情報に迅速にアクセスすることが望ましいことがある。
プロファイル、ティア、およびレベルシンタックス構造(profile_tier_level()シンタックス)をエントロピー復号するのを避けるために、いくつかの例では、本開示は、VPS拡張シンタックス内のエントロピー符号化要素の前に、エントロピー符号化されたvps_num_layer_sets_minus1シンタックス要素を解析せずにアクセス可能なプロファイル、ティア、およびレベルシンタックス構造を存在させてよい。場合によっては、HEVCビデオコーディング規格などのビデオコーディング規格に関して拡張規格が策定されてよい。このような拡張規格は、ビデオコーディング規格では実現されずまたは必要とされない追加の機能を実現してよい。拡張シンタックスは、ビデオコーディング規格のこのような拡張規格のうちの1つに関するシンタックスである。たとえば、VPS拡張シンタックスは、HEVCビデオコーディング規格の拡張規格に使用されるメッセージのシンタックスを含んでよい。従来、このようなシンタックスは、各レイヤがアクセスされるときにアクセスされると考えられている。現在、本明細書で説明する概念のうちの1つまたは複数を実施するシステム、方法、または装置は、すべてのシンタックスに前もってアクセスし、後でそれらをリンクすることができる。
Figure 2016514931
Table 2(表2)で使用されているように、vps_num_profile_tier_level_minus1 plus 1は、VPS内のprofile_tier_level()シンタックス構造の数を指定する。vps_profile_present_flag[i]が1に等しい場合は、プロファイル情報およびティア情報がi番目のprofile_tier_level()シンタックス構造に存在することを明示する。vps_profile_present_flag[lsIdx]が0に等しい場合は、プロファイル情報およびティア情報が、i番目のprofile_tier_level()シンタックス構造に存在せず、i番目のprofile_tier_level()シンタックス構造に関して推定できることを明示する。
シンタックス要素profile_ref_minus1[i]は、i番目のprofile_tier_level()シンタックス構造に関するプロファイル情報およびティア情報が、(profile_ref_minus1[i]+1)番目のprofile_tier_level()シンタックス構造に関するプロファイル情報およびティア情報と等しいと推定できることを明示する。profile_ref_minus1[i]+1の値はi未満であってよい。
Table 2(表2)に示すように、上記のシンタックスでは、デコーダまたは中間ネットワークデバイスは、エントロピー符号化が必要なシンタックスの要素を解析する前に1組のprofile_tier_level ()シンタックス構造をループしてそれらのシンタックス構造にアクセスする(後にVPS拡張シンタックス内で)。シンタックス構造は、別のルーピングプロセスによって対応するレイヤセットにリンクされてもよい。特に、profile_level_tier_idx[i]は、i番目の出力レイヤセットに適用されるprofile_tier_level()シンタックス構造の、VPS内の1組のprofile_tier_level()シンタックス構造のインデックスを指定する。
別の例示的な態様では、本明細書で説明する1つまたは複数の例を実施するシステム、方法、およびデバイスは、output_layer_set_idx_minus1[i]を使用してレイヤ0(ベースレイヤ)の上方のレイヤのレイヤセットのインデックスを示してよい。
output_layer_set_idx_minus1[i]プラス1は、i番目の出力レイヤセットのレイヤセットに関するインデックス(lsIdx)を指定する。一例では、output_layer_set_idx_minus1[i]の値は、0からvps_num_layer_sets_minus1-1の範囲(両端値を含む)内であってよい。output_layer_set_idx_minus1[i]シンタックス要素の長さは、Ceil(Log2(vps_num_layer_sets_minus1))ビットである。
本明細書において説明するシステム、方法、およびデバイスの別の例は、ビデオデータのレイヤを含むマルチレイヤビデオデータをコーディングするのを可能にする。これらのシステム、方法、およびデバイスは、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置において、非エントロピー符号化レイヤ依存情報を送信または受信することを含む動作を実行するように構成されてよい。さらに、これらのシステム、方法、およびデバイスは、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを復号することを含んでよい。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示す。
一例によれば、ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、本開示の技法に従って1つのレイヤセットの複数の出力レイヤセットをコーディングしてよい。たとえば、ビデオエンコーダ20は1つのレイヤセットの複数の出力レイヤセットを符号化してよい。符号化された出力レイヤセットは、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。符号化出力レイヤセットはビデオデコーダ30によって復号されてよい。
別の例によれば、ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報を、場合によっては本開示の技法に従ってエントロピー復号なしでアクセスできるようにコーディングしてよい。たとえば、ビデオエンコーダ20は、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報を、場合によっては、エントロピー復号なしで、すなわち、プロファイル情報、ティア情報、および/またはレベル情報をエントロピー符号化することなくアクセスできるように符号化してよい。VPS内の符号化されたプロファイル情報、ティア情報、および/またはレベル情報は、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。VPS内の符号化されたプロファイル情報、ティア情報、および/またはレベル情報は、MANEなどの、エントロピーデコーダを含まないデバイスであってよいビデオデコーダ30によって復号されてよい。いくつかの例では、VPS内のプロファイル情報、ティア情報、およびレベル情報に低減または限定されたエントロピー符号化を使用してよい。たとえば、場合によっては、VPS内の一部のプロファイル、ティア、レベル情報がエントロピー符号化され、一方、VPS内の他のプロファイル、ティア、レベル情報はエントロピー符号化されない。
別の例によれば、ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、VPS内のレイヤ依存情報を、本開示の技法に従ってエントロピー復号なしでアクセスできるようにコーディングしてよい。たとえば、ビデオエンコーダ20は、VPS内のレイヤ依存情報を、場合によっては、エントロピー復号なしで、すなわち、レイヤ依存情報をエントロピー符号化することなくアクセスできるように符号化してよい。VPS内の符号化されたレイヤ依存情報は、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。VPS内の符号化レイヤ依存情報は、MANEなどの、エントロピーデコーダを含まないデバイスであってよいビデオデコーダ30によって復号されてよい。
別の例によれば、ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、VPS内の表現フォーマットを、場合によっては本開示の技法に従ってエントロピー復号なしでアクセスできるようにコーディングしてよく、各レイヤは、特定の表現フォーマットに関連付けられてよい。たとえば、ビデオエンコーダ20は、VPS内の表現フォーマットを、場合によっては、エントロピー復号なしで、すなわち、VPS内の表現フォーマットをエントロピー符号化することなくアクセスできるように符号化してよい。VPS内の符号化された表現フォーマットは、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。VPS内の符号化された表現フォーマットは、MANEなどの、エントロピーデコーダを含まないデバイスであってよいビデオデコーダ30によって復号されてよい。いくつかの例では、VPS内のプロファイル情報、ティア情報、およびレベル情報に低減または限定されたエントロピー復号を使用してよい。たとえば、場合によっては、VPS内の一部のプロファイル、ティア、レベル情報がエントロピー復号され、一方、VPS内の他のプロファイル、ティア、レベル情報はエントロピー復号されない(その理由は、たとえば、VPS内の一部のプロファイル、ティア、レベル情報がエントロピー符号化され、一方、VPS内の他のプロファイル、ティア、レベル情報はエントロピー符号化されなかったことである)。
別の例によれば、ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、視覚的信号情報(video_format、video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffs)を本開示の技法に従ってVPS内のレイヤごとにコーディングしてよい。たとえば、ビデオエンコーダ20は、VPS内のレイヤごとに視覚的信号情報を符号化してよい。符号化された視覚的信号情報は、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。VPS内のレイヤごとの符号化された視覚的信号情報はビデオデコーダ30によって復号されてよい。いくつかの例では、video_formatパラメータは、コーディングすべきピクチャの表現のフォーマットを示す。video_full_range_flagパラメータは、黒レベルならびにルーマ信号およびクロマ信号の範囲を示す。colour_primariesパラメータは、ソース原色の色度座標を示す。transfer_characteristicsパラメータは、ソースピクチャの光電子伝達特性を示す。matrix_coeffsは、緑、青、および赤の原色からルーマ信号およびクロマ信号を導くうえで使用されるマトリックス係数を表す。
別の例によれば、SPSは、本開示の技法に従って様々な空間解像度、ビット深度、またはカラーフォーマットを有するレイヤによって共有されてよい。ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダはSPSをコーディングしてよい。たとえば、ビデオエンコーダ20はSPSを符号化してよい。符号化されたSPSは、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。符号化されたSPSはビデオデコーダ30によって復号されてよい。
別の例によれば、本開示の技法に従ってレイヤIDが0よりも大きいSPSのVUIにはタイミング情報が含められない。ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、VUIにタイミング情報を含めない、レイヤIDが0よりも大きいSPSをコーディングしてよい。たとえば、ビデオエンコーダ20はSPSを符号化してよい。符号化されたSPSは、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。符号化されたSPSはビデオデコーダ30によって復号されてよい。
別の例によれば、本開示の技法に従ってデフォルトの出力レイヤセットには目標出力レイヤの明示的なシグナリングは行われない。ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、デフォルトの出力レイヤセットの目標出力レイヤの明示的なシグナリングを含まないデフォルトの出力レイヤセットをコーディングしてよい。たとえば、ビデオエンコーダ20はデフォルトの出力レイヤセットを符号化する。符号化されたデフォルト出力レイヤセットは、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。符号化されたデフォルト出力レイヤセットはビデオデコーダ30によって復号されてよい。
別の例によれば、存在し得る時間的サブレイヤの最大数(sps_max_sub_layers_minus1)およびインター予測が追加的に制限されるかどうか(sps_temporal_id_nesting_flag)のシグナリングは、レイヤID(nuh_layer_id)が0よりも大きいSPSには存在しない。ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、レイヤIDが0よりも大きいSPSにおいて、SPSを参照する各CVSに存在し得る時間的サブレイヤの最大数をコーディングせず、かつSPSを参照するCVSに関してインター予測が追加的に制限されるかどうかをコーディングせずに、ビデオデータをコーディングしてよい。たとえば、ビデオエンコーダ20は、レイヤIDが0よりも大きいSPSにおける、SPSを参照する各CVSに存在し得る時間的サブレイヤの最大数、およびSPSを参照するCVSに関してインター予測が追加的に制限されるかどうかをコーディングせずに、ビデオデータを符号化してよい。符号化された情報は、出力インターフェース22によってリンク16を介すかまたは記憶デバイス34を使用してシグナリングされるか、送信されるか、またはその他の方法で転送され、入力インターフェース28によって受信されてよい。符号化された情報はビデオデコーダ30によって復号されてよい。
別の例によれば、本開示の技法に従ってシンタックス要素output_layer_set_idx[i]がoutput_layer_set_idx_minus1[i]に変更されてよい。ビデオエンコーダ20またはビデオデコーダ30などのビデオコーダは、output_layer_set_idx_minus1[i]を、出力レイヤセットに対応するレイヤセットのインデックスを示すようにコーディングしてよい。
図2は、本開示で説明する技法を実施し得る例示的なビデオエンコーダ20を示すブロック図である。ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行してよい。イントラコーディングは、空間的予測に依存して所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減させるかまたは除去する。インターコーディングは、時間的予測またはインターレイヤに依存して、同じレイヤにおいてまたはビデオシーケンスのそれぞれに異なるレイヤ全体にわたって互いに隣接するフレームまたはピクチャ内のビデオの時間的冗長性またはレイヤ間冗長性を低減させるかまたは除去する。イントラモード(Iモード)は、空間ベースのいくつかの圧縮モードのいずれかを指すことがある。単方向予測(Pモード)または双予測(Bモード)などのインターモードは、時間ベースのいくつかの圧縮モードのいずれかを指すことがある。
図2の例では、ビデオエンコーダ20は、ビデオデータメモリ40と、予測処理ユニット41と、参照ピクチャメモリ64と、加算器50と、変換処理ユニット52と、量子化処理ユニット54と、エントロピー符号化処理ユニット56とを含む。予測処理ユニット41は、動き推定処理ユニット42と、動き補償処理ユニット44と、イントラ予測処理ユニット46とを含む。ビデオエンコーダ20は、ビデオブロック再構成に関して、逆量子化処理ユニット58と、逆変換処理ユニット60と、加算器62も含む。ブロック境界をフィルタリングして再構成されたビデオからブロッキネスアーティファクトを除去するためにデブロッキングフィルタ(図2には示されていない)が含まれてもよい。デブロッキングフィルタは通常、必要に応じて、加算器62の出力をフィルタリングする。デブロッキングフィルタに加えて追加的なループフィルタ(インループまたはポストループ)が使用されてもよい。
ビデオデータメモリ40は、ビデオエンコーダ20の構成要素によって符号化すべきビデオデータを記憶してよい。ビデオデータメモリ40に記憶されるビデオデータは、たとえば、ビデオソース18から得られてよい。復号済みピクチャバッファ(DPB)は、ビデオエンコーダ20によってビデオデータを、たとえば、イントラコーディングモードまたはインターコーディングモードで符号化する際に使用できる参照ビデオデータを記憶する参照ピクチャメモリ64であってよい。ビデオデータメモリ40およびDPB(たとえば、参照ピクチャメモリ64)は、同期DRAM(SDRAM)を含むダイナミックランダムアクセスメモリ(DRAM)、磁気抵抗RAM(MRAM)、抵抗性RAM(RRAM(登録商標))、または他の種類のメモリデバイスなどの様々なメモリデバイスのうちのいずれかによって形成されてよい。ビデオデータメモリ40およびDPB(たとえば、参照ピクチャメモリ64)は、同じメモリデバイスによって実現されてもまたは別々のメモリデバイスによって実現されてもよい。様々な例では、ビデオデータメモリ101は、ビデオエンコーダ20の他の構成要素とともにオンチップであっても、またはそのような構成要素に対してオフチップであってもよい。
図2に示すように、ビデオエンコーダ20はビデオデータを受信し、予測処理ユニット41はデータをビデオブロックに区分する。場合によっては、予測処理ユニット41は、レートひずみ分析に基づいてビデオデータを区分してよい。受信されたビデオデータは、上述のサンプルフォーマットのうちのいずれかに従ってフォーマットされてよい。たとえば、ビデオデータは4:2:2サンプルフォーマットに従ってフォーマットされてよい。区分することは、ビデオデータをスライス、タイル、またはより大きい他のユニットに区分することと、たとえばLCUおよびCUの4分木構造に従ったビデオブロック区分を含んでよい。
ビデオエンコーダ20は概して、符号化すべきビデオスライス内のビデオブロックを符号化する構成要素を示す。スライスは、複数のビデオブロック(場合によってはタイルと呼ばれるビデオブロックの組)に分割されてよい。予測処理ユニット41は、現在のビデオブロックに関して、エラー結果(たとえば、コーディングレートおよびひずみレベル)に基づいて、複数のイントラコーディングモードのうちの1つまたは複数のインターコーディングモードのうちの1つなど、複数の可能なコーディングモードのうちの1つを選択してよい。予測処理ユニット41は、得られたイントラコーディング済みブロックまたはインターコーディング済みブロックを加算器50に供給して残差ブロックを生成し、かつ加算器62に供給して参照ピクチャとして使用できる符号化ブロックを再構成する。
予測処理ユニット41内のイントラ予測処理ユニット46は、コーディングすべき現在のブロックと同じフレームまたはスライス内の1つまたは複数の隣接ブロックに対して現在のビデオブロックのイントラ予測コーディングを実行して空間的圧縮を実施してよい。予測処理ユニット41内の動き推定処理ユニット42および動き補償処理ユニット44は、1つまたは複数の参照ピクチャ内の1つまたは複数の予測ブロックに対して現在のビデオブロックのインター予測コーディングを実行して時間的圧縮を実施してよい。
動き推定処理ユニット42は、ビデオシーケンスの所定のパターンに従ってビデオスライスのインター予測モードを判定するように構成されてよい。所定のパターンは、シーケンス内のビデオスライスをPスライスまたはBスライスとして指定してよい。動き推定処理ユニット42および動き補償処理ユニット44は、高度に集積されてよいが、概念的な目的のために別々に図示されている。動き推定は、動き推定処理ユニット42によって実行され、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックの予測ユニット(PU)の変位を示してよい。
予測ブロックは、インターコーディングの場合、絶対差の和(SAD)によって、2乗差の和(SSD)によって、または他の差分メトリックによって求めることができるピクセル差分に関して、コーディングすべきビデオブロックのPUに厳密に一致するブロックとして見つけられるブロックであってよい。代替として、予測ブロックは、イントラコーディングの場合、1つまたは複数の隣接ブロックから得られるピクセル値に対する空間的予測に基づいて形成されるブロックであってよい。いくつかの例では、インター予測の場合、ビデオエンコーダ20は、参照ピクチャメモリ64に記憶された参照ピクチャのサブ整数ピクセル位置の値を算出してよい。たとえば、ビデオエンコーダ20は、参照ピクチャの4分の1ピクセル位置、8分の1ピクセル位置、または他の分数ピクセル位置の値を補間してよい。したがって、動き推定処理ユニット42は、全ピクセル位置および分数ピクセル位置に対して動き探索を実行し分数ピクセル精度を有する動きベクトルを出力してよい。
動き推定処理ユニット42は、PUの位置と参照ピクチャの予測ブロックの位置を比較することによってインターコーディング済みスライス内のビデオブロックのPUに関する動きベクトルを算出する。参照ピクチャは、各々が、参照ピクチャメモリ64に記憶された1つまたは複数の参照ピクチャを識別する、第1の参照ピクチャリスト(リスト0)または第2の参照ピクチャリスト(リスト1)から選択されてよい。動き推定処理ユニット42は、算出された動きベクトルをエントロピー符号化処理ユニット56および動き補償処理ユニット44に送る。
動き補償は、動き補償処理ユニット44によって実行され、動き推定によって判定される動きベクトルに基づいて予測ブロックを取り込むかまたは生成し、場合によってはサブピクセル精度の補間を実行することを含んでよい。動き補償処理ユニット44は、現在のビデオブロックのPUに関する動きベクトルを受信すると、動きベクトルが参照ピクチャリストのうちの1つのリスト内で指し示す予測ブロックを見つけることができる。
ビデオエンコーダ20は、インターコーディングまたはイントラコーディングの場合に、コーディング中の現在のビデオブロックのピクセル値から予測ブロックのピクセル値を減算することによって残差ビデオブロックを形成し、ピクセル差分値を形成する。ピクセル差分値は、ブロックの残差データを形成し、ルーマ差分構成要素とクロマ差分構成要素の両方を含んでよい。加算器50は、この減算演算を実行する構成要素を表す。動き補償処理ユニット44は、ビデオスライスのビデオブロックを復号する際にビデオデコーダ30によって使用されるビデオブロックおよびビデオスライスに関連するシンタックス要素を生成してもよい。
イントラ予測処理ユニット46は、上述のように動き推定処理ユニット42および動き補償処理ユニット44によって実行されるインター予測の代替として、現在のブロックをイントラ予測してよい。特に、イントラ予測処理ユニット46は、現在のブロックを符号化するために使用すべきイントラ予測モードを判定してよい。いくつかの例では、イントラ予測処理ユニット46は、たとえば別々の符号化パス時に、様々なイントラ予測モードを使用して現在のブロックを符号化してよく、イントラ予測処理ユニット46(またはいくつかの例では、モード選択処理ユニット)は、試験されたモードから使用すべき適切なイントラ予測モードを選択してよい。
たとえば、イントラ予測処理ユニット46は、様々な試験されたイントラ予測モードにレートひずみ分析を使用してレートひずみ値を算出し、試験されたモードのうちで最良のレートひずみ特性を有するイントラ予測モードを選択してよい。レートひずみ分析は概して、符号化されたブロックと符号化されたブロックを生成するために符号化された符号化されていない元のブロックとの間のひずみ(またはエラー)の量、ならびに符号化されたブロックを生成するために使用されたビットレート(すなわち、ビットの数)を求める。イントラ予測処理ユニット46は、符号化された様々なブロックのひずみおよびレートから比を算出し、どのイントラ予測モードがブロックの最良のレートひずみ値を示すかを判定してよい。レートひずみ分析が色成分の組合せに対して実行されてよいことに留意されたい。
いずれの場合も、イントラ予測処理ユニット46は、ブロックのイントラ予測モードを選択した後、ブロックの選択されたイントラ予測モードを示す情報をエントロピー符号化処理ユニット56に供給してよい。エントロピー符号化処理ユニット56は、本開示の技法に従って選択されたイントラ予測モードを示す情報を符号化してよい。ビデオエンコーダ20は、複数のイントラ予測モードインデックステーブルおよび複数の修正されたイントラ予測モードインデックステーブル(コードワードマッピングテーブルとも呼ばれる)を含んでよい送信されるビットストリーム構成データ内に、様々なブロックの符号化コンテキストの定義、ならびにコンテキストの各々に使用すべき最確イントラ予測モード、イントラ予測モードインデックステーブル、および修正されたイントラ予測モードインデックステーブルの表示を含んでよい。ビットストリームはさらに(または代替として)、以後の宛先デバイス14またはその他の装置によるアクセス、復号、および/または再生が可能なように記憶デバイス34上に記憶されてよい。
予測処理ユニット41がインター予測またはイントラ予測を介して現在のビデオブロックの予測ブロックを生成した後、ビデオエンコーダ20は、現在のビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロック内の残差ビデオデータは、1つまたは複数の変換ユニット(TU)に含められ、変換処理ユニット52に適用されてよい。変換処理ユニット52がビデオエンコーダ20の構成要素、モジュール、プロセッサ、または機能ユニットを指し、変換処理ユニット52を、変換および量子化プロセスに関するデータの基本ユニットであるTUと混同すべきではないことに留意されたい。変換処理ユニット52は、離散コサイン変換(DCT)または概念的に同様の変換などの変換を使用して残差ビデオデータを残差変換係数に変換する。変換処理ユニット52は、残差ビデオデータをピクセル領域から周波数領域などの変換領域に変換してよい。変換処理ユニット52は、得られた変換係数を量子化処理ユニット54に送ってよい。
図2に示す例では、ビデオエンコーダ20は、複数の出力レイヤセットの各々に関するプロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照し、出力レイヤセットのうちの1つに関して参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいてその出力レイヤセットのビデオデータを符号化してよい。
ビデオエンコーダ20は、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を送信してよい。エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置に配置されてよく、それによって、中間ネットワーキングデバイス、スプライシングエンジン、メディアアウェアネットワーク要素、またはデコーダは、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造をエントロピー符号化の必要なしに解析することができる。
いくつかの例では、ビデオエンコーダ20は、nuh_layer_idが0に等しいSPSを送信または受信してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。たとえば、ビデオエンコーダ20は、nuh_layer_idが0に等しいSPSを送ってよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。
ビデオデコーダ20は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを符号化してよい。ビデオデコーダ20は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してもよい。
ビデオエンコーダ20は、ビデオデータのレイヤのうちの1つまたは複数のレイヤにおける一部のビデオデータを非エントロピー符号化してよい。非エントロピー符号化されたビデオデータはレイヤ依存情報を含んでよい。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示してよい。いくつかの例では、レイヤ依存情報は、0に等しいときに、インデックスjを有するレイヤがインデックスIを有するレイヤの直接参照レイヤではないことを明示し、1に等しいときに、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤになり得ることを明示するdirect_dependency_flag[i][j]を含む。
ビデオデコーダ20は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置にある非エントロピー符号化レイヤ依存情報を送信してよい。
一例によれば、ビデオエンコーダ20は1つのレイヤセットの複数の出力レイヤセットを符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実施され得る。
別の例によれば、ビデオエンコーダ20は、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報を、場合によっては、エントロピー符号化なしで、すなわち、プロファイル情報、ティア情報、および/またはレベル情報をエントロピー復号することなくアクセスできるように符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実行されるが、エントロピー符号化なしで実施され得る。したがって、エントロピー符号化処理ユニットは、エントロピー符号化に加えて他の種類の符号化を実施してよい。
別の例によれば、ビデオエンコーダ20は、VPS内のレイヤ依存情報を、エントロピー復号なしで、すなわち、レイヤ依存情報をエントロピー符号化することなくアクセスできるように符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実行されるが、エントロピー符号化なしで実施され得る。したがって、エントロピー符号化処理ユニットは、エントロピー符号化に加えて他の種類の符号化を実施してよい。
別の例によれば、ビデオエンコーダ20は、VPS内の表現フォーマットを、場合によっては、エントロピー復号なしで、すなわち、VPS内の表現フォーマットをエントロピー符号化することなくアクセスできるように符号化してよい。いくつかの例では、各レイヤは特定の表現フォーマットに関連付けられてよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実行されるが、エントロピー符号化なしで実施され得る。したがって、エントロピー符号化処理ユニットは、エントロピー符号化に加えて他の種類の符号化を実施してよい。ビデオエンコーダ20は、VPS内の表現フォーマットを、場合によっては本開示の技法に従ってエントロピー復号なしでアクセスできるように符号化してよく、各レイヤは、特定の表現フォーマットに関連付けられてよい。
別の例によれば、ビデオエンコーダ20は、視覚的信号情報(video_format、video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffs)を本開示の技法に従ってVPS内のレイヤごとにコーディングしてよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実施され得る。
別の例によれば、SPSは、本開示の技法に従って様々な空間解像度、ビット深度、またはカラーフォーマットを有するレイヤによって共有されてよい。ビデオエンコーダ20はSPSを符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実施され得る。
別の例によれば、本開示の技法に従ってレイヤIDが0よりも大きいSPSのVUIにはタイミング情報が含められない。ビデオエンコーダ20はSPSを符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実施され得る。
別の例によれば、本開示の技法に従ってデフォルトの出力レイヤセットには目標出力レイヤの明示的なシグナリングは行われない。ビデオエンコーダ20は、デフォルトの出力レイヤセットを符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理システム56によって実施され得る。
別の例によれば、存在し得る時間的サブレイヤの最大数(sps_max_sub_layers_minus1)およびインター予測が追加的に制限されるかどうか(sps_temporal_id_nesting_flag)のシグナリングは、nuh_layer_idが0に等しいときにのみSPS内で行われ、すなわち、レイヤIDが0よりも大きいSPSではシグナリングは行われない。ビデオエンコーダ20は、レイヤIDが0よりも大きいSPSにおける、SPSを参照する各CVSに存在し得る時間的サブレイヤの最大数、およびSPSを参照するCVSに関してインター予測が追加的に制限されるかどうかをコーディングせずに、ビデオデータを符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実施され得る。
別の例によれば、本開示の技法に従ってシンタックス要素output_layer_set_idx[i]がoutput_layer_set_idx_minus1[i]に変更されてよい。ビデオエンコーダ20は、シンタックス要素output_layer_set_idx_minus1[i]を、VPSによって指定されたi番目の出力レイヤセットに対応するレイヤセットのインデックスを示すように符号化してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット56によって実施され得る。
図3は、本開示で説明する技法を実施し得る例示的なビデオデコーダ30を示すブロック図である。図3の例では、ビデオデコーダ30は、ビデオデータメモリ78と、エントロピー復号処理ユニット80と、予測処理ユニット81と、逆量子化処理ユニット86と、逆変換処理ユニット88と、加算器90と、参照ピクチャメモリ92とを含む。予測処理ユニット81は、動き補償処理ユニット82とイントラ予測処理ユニット84とを含む。ビデオデコーダ30は、いくつかの例では、図2においてビデオエンコーダ20に関して説明した符号化パスを概ね反転させた復号パスを実行してよい。
ビデオデータメモリ78は、ビデオデコーダ30の構成要素によって復号すべき、符号化ビデオビットストリームなどのビデオデータを記憶してよい。ビデオデータメモリ78に記憶されるビデオデータは、たとえばコンピュータ可読媒体から、またはたとえばカメラなどのローカルビデオソースから、またはビデオデータの有線ネットワーク通信もしくはワイヤレス通信を介して、または物理データ記憶媒体にアクセスすることによって得られてよい。ビデオデータメモリ78は、符号化ビデオビットストリームからの符号化ビデオデータを記憶するコーディング済みピクチャバッファ(CPB)を形成してよい。復号済みピクチャバッファ(DPB)は、ビデオデコーダ30によってビデオデータを、たとえば、イントラコーディングモードまたはインターコーディングモードで復号する際に使用できる参照ビデオデータを記憶する参照ピクチャメモリ92であってよい。ビデオデータメモリ78およびDPBは、同期DRAM(SDRAM)を含むダイナミックランダムアクセスメモリ(DRAM)、磁気抵抗RAM(MRAM)、抵抗性RAM(RRAM(登録商標))、または他の種類のメモリデバイスなどの様々なメモリデバイスのうちのいずれかによって形成されてよい。ビデオデータメモリ78およびDPBは、同じメモリデバイスによって実現されてもまたは別々のメモリデバイスによって実現されてもよい。様々な例では、ビデオデータメモリ78は、ビデオデコーダ30の他の構成要素とともにオンチップであっても、またはそのような構成要素に対してオフチップであってもよい。
復号プロセスの間、ビデオデコーダ30は、符号化ビデオスライスのビデオブロックおよび関連するシンタックス要素を表す符号化ビットストリームをビデオエンコーダ20から受信する。ビデオデコーダ30のエントロピー復号処理ユニット80は、ビットストリームをエントロピー復号して量子化係数、動きベクトル、およびその他のシンタックス要素を生成する。エントロピー復号処理ユニット80は、動きベクトルおよびその他のシンタックス要素を予測処理ユニット81に転送する。ビデオデコーダ30は、ビデオスライスレベルおよび/またはビデオブロックレベルのシンタックス要素を受信してよい。
ビデオスライスがイントラコーディング(I)済みスライスとしてコーディングされているとき、予測処理ユニット81のイントラ予測処理ユニット84は、あらかじめ復号されたブロックからのシグナリングされたイントラ予測モードおよび前に復号された現在のフレームまたはピクチャのブロックのデータに基づいて現在のビデオスライスのビデオブロックに関する予測データを生成してよい。ビデオフレームがインターコーディング済み(すなわち、BまたはP)スライスとしてコーディングされているとき、予測処理ユニット81の動き補償処理ユニット82は、エントロピー復号処理ユニット80から受信された動きベクトルおよびその他のシンタックス要素に基づいて現在のビデオスライスのビデオブロックに関する予測ブロックを生成する。予測ブロックは、1つの参照ピクチャリスト内の参照ピクチャのうちの1つから生成されてよい。ビデオデコーダ30は、参照ピクチャメモリ92に記憶された参照ピクチャに基づくデフォルトの構成技法を使用して参照フレームリストのリスト0およびリスト1を構成してよい。
動き補償処理ユニット82は、動きベクトルおよびその他のシンタックス要素を解析することによって現在のビデオスライスのビデオブロックに関する予測情報を判定し、予測情報を使用して復号中の現在のビデオブロックの予測ブロックを生成する。たとえば、動き補償処理ユニット82は、受信されたシンタックス要素のうちのいくつかを使用して、ビデオスライスのビデオブロックをコーディングするのに使用される予測モード(たとえば、複数のインター予測モードのうちの1つ)、インター予測スライスタイプ(たとえば、BスライスまたはPスライス)、スライスの参照ピクチャリストのうちの1つまたは複数の参照ピクチャリストに関する構成情報、スライスの各インター符号化済みビデオブロックの動きベクトル、スライスの各インターコーディング済みビデオブロックのインター予測ステータス、および現在のビデオスライス内のビデオブロックを復号するためのその他の情報を判定する。
動き補償処理ユニット82は、補間フィルタに基づいて補間を実行してもよい。動き補償処理ユニット82は、ビデオブロックの符号化中にビデオエンコーダ20によって使用されるような補間フィルタを使用して参照ブロックのサブ整数ピクセルの補間された値を算出してよい。この場合、動き補償処理ユニット82は、受信されたシンタックス要素からビデオエンコーダ20によって使用される補間フィルタを判定し、この補間フィルタを使用して予測ブロックを生成してよい。
逆量子化処理ユニット86は、ビットストリームに含められエントロピー復号処理ユニット80によって復号された量子化変換係数を逆量子化(すなわち、非量子化)する。逆量子化プロセスは、ビデオエンコーダ20によって算出された量子化パラメータをビデオスライス内のビデオブロックごとに使用して、適用すべき量子化の程度を求め、同様に、適用すべき逆量子化の程度を求めることを含んでよい。
逆変換処理ユニット88は、変換係数を受信し、逆変換、たとえば、逆DCT、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用してピクセル領域内に残差ブロックを生成する。いくつかの例では、逆変換処理ユニット88は、変換ユニット区分技法に基づいてビデオエンコーダによって生成された変換係数を受信してよい。
動き補償処理ユニット82またはイントラ予測処理ユニット84が動きベクトルおよびその他のシンタックス要素に基づく現在のビデオブロックの予測ブロックを生成した後、ビデオデコーダ30は、逆変換処理ユニット88からの残差ブロックと動き補償処理ユニット82によって生成された対応する予測ブロックを合計することによって復号ビデオブロックを形成する。加算器90は、この加算演算を実行する構成要素を表す。
必要に応じて、デブロッキングフィルタを適用して復号ブロックをフィルタリングしブロッキネスアーティファクトを除去してもよい。(コーディングループ内またはコーディングループ後の)他のループフィルタを使用してピクセル遷移を平滑化するか、または場合によってはビデオ品質を向上させてもよい。次いで、所与のフレームまたはピクチャ内の復号ビデオブロックが、以後の動き補償に使用される参照ピクチャを記憶する参照ピクチャメモリ92に記憶される。参照ピクチャメモリ92はまた、復号ビデオを図1のディスプレイデバイス32などのディスプレイデバイス上に後で表示できるように記憶する。
図3に示された例では、ビデオデコーダ30は、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を受信してよい。
ビデオデコーダ30は、複数の出力レイヤセットの各々に関するプロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照し、出力レイヤセットのうちの1つに関して参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいてその出力レイヤセットのビデオデータを復号してよい。
いくつかの例では、ビデオコーダは、nuh_layer_idが0に等しいSPSを送信または受信してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。ビデオデコーダ30は、nuh_layer_idが0に等しいSPSを受信してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。
いくつかの例では、nuh_layer_idが0よりも大きいレイヤがSPSを参照するとき、ビデオデコーダ30は、SPSのプロファイル、ティア、およびレベルシンタックス構造を使用したnuh_layer_idが0よりも大きいレイヤのビデオデータの復号を行わないことがある。
ビデオデコーダ30は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してよい。
ビデオデコーダ30は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを生成してもよい。
図3に示された例では、ビデオデコーダ30は、ビデオデータのレイヤを含むマルチレイヤビデオデータを復号してよい。
ビデオデコーダ30は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置にある非エントロピー符号化レイヤ依存情報を受信してよい。
ビデオデコーダ30は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを復号してよい。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示す。
いくつかの例では、レイヤ依存情報は、0に等しいときに、インデックスjを有するレイヤがインデックスIを有するレイヤの直接参照レイヤではないことを明示し、1に等しいときに、インデックスjを有するレイヤがインデックスIを有するレイヤの直接参照レイヤになり得ることを明示するdirect_dependency_flag[i][j]を含む。
いくつかの例では、本開示は、出力レイヤセットに関するプロファイル、ティア、およびレベル情報のシグナリング、出力レイヤセットのシグナリング、およびレイヤ依存性のシグナリングの変更を含む、HEVC拡張シンタックスに関するVPSおよびSPSの設計を向上させるための方法について説明する。いくつかの例では、本開示は、表現フォーマットに関する情報(セッション交渉のためのVPS(拡張シンタックス)における空間解像度、カラーフォーマット、およびビット深度)のシグナリングの変更、ならびに様々な範疇の個々の制御によるSPSパラメータの効率的なシグナリングを含む、HEVC拡張シンタックスに関するVPSおよびSPSの設計を向上させるための方法についても説明する。
いくつかの例では、現在のVPS設計およびSPS設計は少なくとも以下の問題を伴うことがある。(1)シンタックス要素vps_num_layer_sets_minus1がue(v)コーディングされ、このシンタックス要素の前に他のue(v)コーディング済みシンタックス要素もあるので、現在、レイヤセットのプロファイル、ティア、およびレベルにアクセスするにはエントロピー符号化が必要である。(2)同様に、エントロピー復号なしではレイヤ依存情報にアクセスできず、(3)出力レイヤセットのシグナリングには問題があり効率的ではない。理由は以下の通りである。(a)0に等しいoutput_layer_set_idx[i]に使用されるシンタックス要素layer_id_included_flag[][]はレイヤセット0に関するシンタックス要素であり、一方、レイヤセット0に関しては、HEVCバージョン1(すなわち、HEVC WD10)ではlayer_id_included_flag[][]は定義されておらず、(b)レイヤセット0の目標出力レイヤがレイヤ0(ベースレイヤ)であることは明らかであり、(c)現在、レイヤセットごとにシグナリングできる出力レイヤセットは1つ以下であり、(d)現在、シンタックスでは、0からVPS内の最大のレイヤIDまでのレイヤIDのループを使用しているが、これは複雑である。
マルチビューシナリオでは、多くの場合、1つのレイヤセットがそれぞれに異なる目標出力レイヤの複数の組に関連付けられる。したがって、シンタックス要素output_layer_flag[lsIdx][j]がoutput_layer_flag[i][j]に変更され、それに応じて関連するセマンティクスが変更され、上記の項目(d)において述べたように、現在、シンタックスでは、0からVPS内の最大のレイヤIDまでのレイヤIDのループを使用しているが、これは複雑である。レイヤセット内の最上レイヤは確実に目標出力レイヤであるので、このレイヤを除くレイヤセット内の各レイヤのループを使用する方がずっと簡単である。
一例によれば、ビデオデコーダ30は1つのレイヤセットの複数の出力レイヤセットを復号してよい。いくつかの例では、復号は、エントロピー復号処理システム80によって実施され得る。
別の例によれば、ビデオデコーダ30は、VPS内のすべてのプロファイル情報、ティア情報、および/またはレベル情報を、場合によっては、エントロピー復号の必要なしにアクセスできるように復号してよい。いくつかの例では、復号は、エントロピー復号処理ユニット80によって実行されるが、エントロピー復号なしで実施され得る。したがって、復号はエントロピーデコーダを有さないデバイスによって実行されてよい。
別の例によれば、ビデオデコーダ30は、VPS内のレイヤ依存情報を、エントロピー復号なしでアクセスできるように復号してよい。いくつかの例では、復号は、エントロピー復号処理ユニット80によって実行されるが、エントロピー符号化なしで実施され得る。したがって、復号はエントロピーデコーダを有さないデバイスによって実行されてよい。
別の例によれば、ビデオデコーダ30は、VPS内の表現フォーマットを、場合によっては、エントロピー復号なしで、すなわち、VPS内の表現フォーマットをエントロピー符号化することなくアクセスできるように復号してよい。いくつかの例では、復号は、エントロピー復号処理ユニット80によって実行されるが、エントロピー復号なしで実施され得る。したがって、復号はエントロピーデコーダを有さないデバイスによって実行されてよい。ビデオデコーダ30は、VPS内の表現フォーマットを、場合によっては本開示の技法に従ってエントロピー復号なしで復号してよく、各レイヤは、特定の表現フォーマットに関連付けられてよい。
別の例によれば、ビデオデコーダ30は、視覚的信号情報(video_format、video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffs)を本開示の技法に従ってVPS内のレイヤごとに復号してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット80によって実施され得る。いくつかの例では、video_formatパラメータは、コーディングすべきピクチャの表現のフォーマットを示す。video_full_range_flagパラメータは、黒レベルならびにルーマ信号およびクロマ信号の範囲を示す。colour_primariesパラメータは、ソース原色の色度座標を示す。transfer_characteristicパラメータは、ソースピクチャの光電子伝達特性を示す。matrix_coeffsパラメータは、緑、青、および赤の原色からルーマ信号およびクロマ信号を導くうえで使用されるマトリックス係数を表す。
別の例によれば、SPSは、本開示の技法に従って様々な空間解像度、ビット深度、またはカラーフォーマットを有するレイヤによって共有されてよい。ビデオデコーダ30はSPSを復号してよい。いくつかの例では、符号化は、エントロピー符号化処理ユニット80によって実施され得る。
別の例によれば、本開示の技法に従ってレイヤIDが0よりも大きいSPSのVUIにはタイミング情報が含められない。ビデオデコーダ30はSPSを復号してよい。いくつかの例では、復号は、エントロピー復号処理ユニット80によって実施され得る。
別の例によれば、本開示の技法に従ってデフォルトの出力レイヤセットには目標出力レイヤの明示的なシグナリングは行われない。ビデオデコーダ30は、デフォルトの出力レイヤセットを復号してよい。いくつかの例では、復号は、エントロピー復号処理ユニット80によって実施され得る。
別の例によれば、存在し得る時間的サブレイヤの最大数(sps_max_sub_layers_minus1)およびインター予測が追加的に制限されるかどうか(sps_temporal_id_nesting_flag)のシグナリングは、レイヤID(nuh_layer_id)が0に等しいSPSで行われる。ビデオデコーダ30は、レイヤIDが0よりも大きいSPSにおける、SPSを参照する各CVSに存在し得る時間的サブレイヤの最大数、およびSPSを参照するCVSに関してインター予測が追加的に制限されるかどうかをコーディングせずに、ビデオデータを復号してよい。いくつかの例では、復号は、エントロピー復号処理ユニット80によって実施され得る。
別の例によれば、本開示の技法に従ってシンタックス要素output_layer_set_idx[i]がoutput_layer_set_idx_minus1[i]に変更されてよい。ビデオデコーダ30は、シンタックス要素output_layer_set_idx_minus1[i]を、VPSによって指定されたi番目の出力レイヤセットに対応するレイヤセットのインデックスを示すように復号してよい。
以下の例では、括弧付きのラベル(たとえば、[開始例A]および[終了例A])は、示される例に関連する記述を示すために使用される。2013年4月2日現在で、http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1008-v1.zipからダウンロード可能なSHVCの現在のバージョンまたは2013年4月2日現在でhttp://phenix.int-sudparis.eu/jct2/doc_end_user/documents/3_Geneva/wg11/JCT3V-C1004-v4.zipからダウンロード可能なMV-HEVC規格に関して変更が示されることがある。
レイヤセット、出力レイヤセットのシグナリング、およびレイヤ依存性のシグナリングに関するプロファイル、ティア、およびレベル情報のシグナリングに対するいくつかの変更は、本開示の態様による、本明細書に含まれる例Aを示すためにこの提案において使用される[開始例A]および[終了例A]によって示される。
シンタックス要素vps_num_layer_sets_minus1がue(v)コーディングされ(すなわち、エントロピー符号化され)、このシンタックス要素の前に他のue(v)コーディング済みシンタックス要素もあるので、現在、レイヤセットのプロファイル、ティア、およびレベルにアクセスするにはエントロピー復号が必要である。エントロピー復号なしでこの情報にアクセスできるようにするには、エントロピー復号なしでアクセスできる位置でprofile_tier_level()シンタックス構造の組をシグナリングすればよい。次いで、profile_tier_level()シンタックス構造の組を出力レイヤセットにリンクできるように参照してよい。同じレイヤセットの複数の出力レイヤセットが、それぞれに異なるDPBサイズを必要とすることがあり、したがって、様々なレベルに適合してよい。
いくつかの例では、後述のように、シンタックス要素output_layer_set_idx[i]がoutput_layer_set_idx_minus1[i]に変更されてよい。nuh_layer_idが0に等しいSPSがnuh_layer_idが0よりも大きいレイヤによって参照されるとき、SPS内のprofile_tier_level()シンタックス構造はそのレイヤには適用されない。上記と同様の理由で、レイヤ依存性のシグナリングはエントロピー復号なしでアクセスできるように上位に移される。シンタックス要素output_layer_set_idx[i]をoutput_layer_set_idx_minus1[i]に変更するのは以下の理由による。0に等しいoutput_layer_set_idx[i]に使用されるシンタックス要素layer_id_included_flag[][]はレイヤセット0のシンタックス要素であり、一方、レイヤセット0にはlayer_id_included_flag[][]が定義されない。レイヤセット0の目標出力レイヤがレイヤ0(ベースレイヤ)であることは明確である。
したがって、上記からわかるように、各レイヤはSPSを参照する必要がある。従来、空間解像度、ビット深度、またはカラーフォーマットの値が異なる任意の2つのレイヤは、これらの表現フォーマットパラメータがSPS内でシグナリングされるので2つの異なるSPSを参照する必要がある。しかし、nuh_layer_idが0に等しいSPSを除くすべてのSPSに関するこれらのパラメータがVPSに移され、nuh_layer_idが0よりも大きいレイヤによって参照されるnuh_layer_idが0に等しいSPS内の表現フォーマットパラメータを無視することが規定されるとき、空間解像度、ビット深度、またはカラーフォーマットの値が異なる各レイヤは同じSPSを参照することが可能である。言い換えれば、本開示のいくつかの実装形態では、空間解像度、ビット深度、またはカラーフォーマットの値が異なる各レイヤが他のSPSである限り、同じSPSを共有することができる。
本明細書で説明するいくつかの例では、出力レイヤセットシグナリングのためにシンタックスおよびセマンティクスを変更する。場合によっては、これによって、以下の問題のうちの1つまたは複数を解決することができ、まず、現在レイヤセットごとにシグナリングできる出力レイヤセットは1つ以下である。マルチビューシナリオでは、多くの場合、1つのレイヤセットがそれぞれに異なる目標出力レイヤの複数の組に関連付けられる。したがって、シンタックス要素output_layer_flag[lsIdx][j]がoutput_layer_flag[i][j]に変更されてよく、関連するセマンティクスがそれに応じて変更されてよい。したがって、1つのレイヤセットに関して複数の出力レイヤセットをシグナリングしてよい。第2に、現在、シンタックスでは、0からVPS内の最大のレイヤIDまでのレイヤIDのループを使用しているが、これは複雑である。むしろ、レイヤセット内の最上位レイヤを除くレイヤセット内の各レイヤのループを使用する方がずっと簡単である。その理由は、レイヤセット内の最上レイヤが確実に目標出力レイヤであることである。
例Bを示すためにこの提案で使用される、括弧付きのラベル[開始例B]および[終了例B]を使用して変更が示される、表現フォーマットに関する情報(セッション交渉のためのVPS(拡張シンタックス)における空間解像度、カラーフォーマット、およびビット深度)のシグナリング。表現フォーマットは、そのような情報のリストのインデックスによって、ベースレイヤを含むレイヤごとにシグナリングされ、profile_tier_level()シンタックス構造の場合と同様に、nuh_layer_idが0よりも大きいSPSではシグナリングされない。したがって、これによって、nuh_layer_idが0よりも大きい様々なSPS内の同じ表現フォーマット情報を重複して送ることも少なくなる。nuh_layer_idが0に等しいSPSがnuh_layer_idが0よりも大きいレイヤによって参照されるとき、シンタックス要素chroma_format_idc、separate_colour_plane_flag、pic_width_in_luma_samples、pic_height_in_luma_samples、bit_depth_chroma_minus8、およびbit_depth_chroma_minus8の値はそのレイヤには適用されない。
様々な範疇を個々に制御するSPSパラメータを効率的にシグナリングする際、SPSに含めることのできるパラメータは以下の6つの範疇に分類されてよい。(1) Cat1:すでにスケーラブルHEVCビデオコーディング(SHVC)WD1およびマルチビューHEVC(MV-HEVC)WD3および上記で対処されているプロファイル-ティア-レベル情報、(2) Cat2:上記で対処されている表現フォーマット情報、(3) Cat3:サブレイヤ情報(sps_max_sub_layers_minus1、sps_temporal_id_nesting_flag、sps_max_dec_pic_buffering_minus1[i]、sps_max_num_reorder_pics[i]、およびsps_max_latency_increase_plus1[i])(これらの変更は、Cat3とも呼ばれる例Cを示すためにこの提案で使用される[開始例C]および[終了例C]という括弧付きラベルによって示される)、(4) Cat4:短期参照ピクチャセット(RPS)候補(このための変更は、Cat4とも呼ばれる例Dを示すためにこの提案で使用される[開始例D]および[終了例D]という括弧付きラベルによって示される)、(5) Cat5:ビデオ活用性情報(VUI)パラメータ(このための変更は、Cat5とも呼ばれる例Eを示すためにこの提案で使用される[開始例E]および[終了例E]という括弧付きラベルによって示される)、および(6) Cat6:他のSPSパラメータ、このための変更および共通の変更は、Cat6とも呼ばれる例Fを示すためにこの提案で使用される[開始例F]および[終了例F]という括弧付きラベルによって示される。
拡張レイヤを含む拡張レイヤまたはレイヤセットの場合、範疇3〜6の情報はアクティブなVPSから継承されるかまたはSPS内で直接シグナリングされてよく、一方、範疇1および2の情報は、セッション交渉に重要であるのでVPS内でシグナリングする必要がある。nuh_layer_idが0よりも大きいSPSでは、VPS ID、SPS ID、および(範疇3〜6(Cat3〜Cat6)のデータがSPSに存在するかそれともアクティブなVPSから継承されるかを示すための)フラグをシグナリングするための、最小限の3つのシンタックス要素のみが存在する。そのようなダミーSPSの役割は、アクティブVPS IDをピクチャパラメータセット(PPS)に渡し、次いで間接的にビデオコーディングレイヤ(VCL)ネットワークアブストラクションレイヤ(NAL)ユニットに渡すことである。
以下の変更は、MV-HEVC WD3およびSHVC WD1に基づいており、上述のように、それぞれに異なるカラーコードによって識別され、すなわち、それぞれに異なる色で強調されており、削除事項には取り消し線が施されている。言及されていない部分はMV-HEVC WD3およびSHVC WD1と同じである。
以下のTable 3(表3)には、ローバイトシーケンスペイロード(RBSP)シンタックスおよびセマンティクスのビデオパラメータセット(VPS)に関する例示的なシンタックスが示されている。これはSHVC WD1およびMV-HEVC WD3と同じである。便宜上、このシンタックスを以下に(Table 3(表3))コピーする。
Figure 2016514931
Table 4(表4)は、ビデオパラメータセット拡張シンタックスおよびセマンティクスの例を示す。
Figure 2016514931
Figure 2016514931
Figure 2016514931
[開始例A]パラメータvps_num_profile_tier_level_minus1 plus 1は、VPS内のprofile_tier_level()シンタックス構造の数を指定する。Vps_profile_present_flag[i]が1に等しい場合は、プロファイル情報およびティア情報がi番目のprofile_tier_level()シンタックス構造に存在することを明示する。Vps_profile_present_flag[lsIdx]が0に等しい場合は、プロファイル情報およびティア情報が、i番目のprofile_tier_level()シンタックス構造に存在せず、i番目のprofile_tier_level()シンタックス構造に関して推定できることを明示する。
パラメータprofile_ref_minus1[i]は、i番目のprofile_tier_level()シンタックス構造に関するプロファイル情報およびティア情報が、(profile_ref_minus1[i]+1)番目のprofile_tier_level()シンタックス構造に関するプロファイル情報およびティア情報と等しいと推定できることを明示する。profile_ref_minus1[i]+1の値はi未満であってよい。
パラメータdirect_dependency_flag[i][j]が0に等しい場合は、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤではないことを明示する。direct_dependency_flag[i][j]が1に等しい場合は、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤであり得ることを明示する。direct_dependency_flag[i][j]は、0からvps_max_layers_minus1の範囲でiおよびjに関して存在しないときには0に等しいと推定されてよい。
変数NumDirectRefLayers[i]およびRefLayerId[i][j]は次のように導出されてよい。
for(i=1; i <= vps_max_layers_minus1; i++)
for(j=0, NumDirectRefLayers[i] = 0; j<i; j++)
if(direct_dependency_flag[i][j] == 1)
RefLayerId[i][NumDirectRefLayers[i]++] =レイヤ_ID_in_nuh[j][終了例A]
[開始例B]パラメータvps_num_rep_formatsは、VPS内の後続のrep_format()シンタックス構造の数を指定する。vps_rep_format_idx[i]は、nuh_layer_idがレイヤ_ID_in_nuh[i]に等しいレイヤに適用されるrep_format()シンタックス構造の、VPS内のrep_format()シンタックス構造の組に対するインデックスを指定する。iが0に等しいかまたはvps_num_rep_formatsが1に等しいとき、vps_rep_format_idx[i]は0に等しいと推定されてよい。vps_rep_format_idx[i]の値は、0からvps_num_rep_formats-1の範囲(両端値を含む)内であってよい。[終了例B]
[開始例C]max_sub_layers_vps_predict_flag[i]が1に等しい場合は、max_sub_layers_vps_minus1[i]がmax_sub_layers_vps_minus1[i-1]に等しいと推定されてよく、かつsub_layer_vps_ordering_predict_flag[i]が存在することを明示する。max_sub_layers_vps_predict_flag[i]が0に等しい場合は、max_sub_layers_vps_minus1[i]が明示的にシグナリングされることを明示する。max_sub_layers_vps_predict_flag[0]の値は0に等しいと推定されてよい。
パラメータmax_sub_layers_vps_minus1[i]は、SPSシンタックス要素sps_max_sub_layers_minus1の推定に使用される。max_sub_layers_vps_predict_flag[i]が1に等しいとき、max_sub_layers_vps_minus1[i]はmax_sub_layers_vps_minus1に等しいと推定されてよい。max_sub_layers_vps_minus1[i]の値はvps_max_sub_layers_minus1に等しいと推定されてよい。[終了例C][開始例A]multiple_output_layer_sets_in_layer_set_flagが1に等しい場合は、VPSによってレイヤセットごとに複数の出力レイヤセットが指定されてよいことを明示する。multiple_output_layer_sets_in_layer_set_flagが0に等しい場合は、VPSによってレイヤセットごとに1つの出力レイヤセットのみが指定され、最上位レイヤが唯一の目標出力レイヤであることを明示する。したがって、multiple_output_layer_sets_in_layer_set_flagが0に等しい場合は、VPSによってレイヤごとに1つの出力レイヤのみが指定され、最上位レイヤが唯一の目標出力レイヤであることを明示するので、デフォルトの出力レイヤセットに関する目標出力レイヤの明示的なシグナリングは必要とされない。たとえば、各レイヤセットの出力レイヤは1つだけであるので、どのレイヤを出力すべきかをシグナリングする必要はない。
パラメータnum_output_layer_sets_minus1 plus 1は、VPSによって指定される出力レイヤセットの数を指定する。num_output_layer_sets_minus1 の値は、0から1023の範囲(両端値を含む)内であってよい。[終了例A]
代替的に、num_output_layer_sets_minus1の代わりに、vps_num_layers_sets_minus1+1に加えて出力レイヤセットの数を示すnum_addn_output_layer_setsがシグナリングされてよい。
[開始例A]パラメータoutput_layer_set_idx_minus1[i]plus 1は、i番目の出力レイヤセットのレイヤセットのインデックスを指定する。output_layer_set_idx_minus1[i]の値は、0からvps_num_layers_sets_minus1-1の範囲(両端値を含む)内であってよい。output_layer_set_idx_minus1[i]シンタックス要素の長さは、Ceil(Log2(vps_num_layers_sets_minus1))ビットである。
output_layer_flag[i][j]が1に等しい場合は、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、output_layer_flag[i][j]が0に等しい場合は、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する。
output_layer_flag[i][NumLayersInIdList[lsIdx]-1]の値は1に等しいと推定されてよく、その場合、lsIdxはoutput_layer_set_idx_minus1[i]+1に等しい。[終了例A]
代替的に、output_layer_flag[i][NumLayersInIdList[lsIdx]-1]の値は1に等しいと推定されてよく、その場合、lsIdxはoutput_layer_set_idx_minus1[i]+1に等しく、iは0からvps_num_layers_sets_minus1の範囲(両端値を含む)内であり、output_layer_flag[i][j]の値は、iが0からvps_num_layers_sets_minus1の範囲(両端値を含む)内であり、jが0からNumLayersInIdList[lsIdx]-2の範囲(両端値を含む)内である場合に0に等しいと推定されてよく、lsIdxはoutput_layer_set_idx_minus1[i]+1に等しい。
[開始例A]パラメータprofile_level_tier_idx[i]は、i番目の出力レイヤセットに適用されるprofile_tier_level()シンタックス構造の、VPS内のprofile_tier_level()シンタックス構造の組のインデックスを指定する。profile_level_tier_idx[i]シンタックス要素の長さは、Ceil(Log2(vps_num_profile_tier_level_minus1+1))ビットである。profile_level_tier_idx[0]の値は0に等しいと推定されてよい。profile_level_tier_idx[i]の値は、0からvps_num_profile_tier_level_minus1の範囲(両端値を含む)内であってよい。[終了例A]
[開始例F]パラメータvps_num_other_sps_paramsは、VPS内の後続のother_sps_parameters()シンタックス構造の数を指定する。vps_num_other_sps_paramsの値は、0から15の範囲(両端値を含む)内であってよい。[終了例F]
[開始例D]パラメータvps_num_st_rps_candidatesは、VPS内の後続のshort_term_rps_candidates()シンタックス構造の数を指定する。vps_num_st_rps_candidatesの値は、0から15の範囲(両端値を含む)内であってよい。[終了例D]
[開始例E]パラメータvps_num_vui_paramsは、VPS内の後続のvui_parameters()シンタックス構造の数を指定する。vps_num_vui_paramsの値は、0から15の範囲(両端値を含む)内であってよい。[終了例E]
[開始例F]vps_other_sps_params_idx[i]は、nuh_layer_idがlayer_id_in_nuh[i]に等しいレイヤに適用されるother_sps_parameters()シンタックス構造の、VPS内のother_sps_parameters()シンタックス構造の組のインデックスを指定する。vps_other_sps_params_idx[i]シンタックス要素の長さは、Ceil(Log2(vps_num_other_sps_params))ビットであってよい。Vps_num_other_sps_paramsが1に等しいとき、vps_other_sps_params_idx[i]は0に等しいと推定されてよい。vps_other_sps_params_idx[i]の値は、0からvps_num_other_sps_params-1の範囲(両端値を含む)内であってよい。[終了例F]
[開始例D]パラメータvps_st_rps_idx[i]は、nuh_layer_idがlayer_id_in_nuh[i]に等しいレイヤに適用されるshort_term_rps_candidates()シンタックス構造の、VPS内のshort_term_rps_candidates()シンタックス構造の組のインデックスを指定する。vps_st_rps_idx[i]シンタックス要素の長さは、Ceil(Log2(vps_num_st_rps_candidates))ビットであってよい。vps_num_st_rps_candidatesが1に等しいとき、vps_st_rps_idx[i]は0に等しいと推定されてよい。vps_st_rps_idx[i]の値は、0からvps_num_st_rps_candidates-1の範囲(両端値を含む)内であってよい。[終了例D]
[開始例E]パラメータvps_vui_params_idx[i]は、nuh_layer_idがlayer_id_in_nuh[i]に等しいレイヤに適用されるvui_parameters()シンタックス構造の、VPS内のvui_parameters()シンタックス構造の組のインデックスを指定する。vps_vui_params_idx[i]シンタックス要素の長さは、Ceil(Log2(vps_num_vui_params))ビットであってよい。vps_num_vui_paramsが1に等しいとき、vps_vui_params_idx[i]の値は0に等しいと推定されてよい。vps_vui_params_idx[i]の値は、0からvps_num_vui_params-1の範囲(両端値を含む)内であってよい。[終了例E]
[開始例C]0からnum_output_layer_sets-1の範囲(両端値を含む)内のsetIdの変数MaxSubLayers[setId]は次のように導出される。
for(setId = 0; setId <num_output_layer_sets; setId++){
lsIdx =output_layer_set_idx_minus1[setId]+1//レイヤセットインデックス
highestLayerId = LayerSetLayerIdList[lsIdx][NumLayersInIdList[lsIdx]-1]
MaxSubLayers[setId] = (max_sub_layers_vps_minus1[highestLayerId]+1)
}
max_sub_layers_vps_predict_flag[i]が1に等しい場合は、max_sub_layers_vps_minus1[i]がmax_sub_layers_vps_minus1[i]に等しいと推定されてよく、かつsub_layer_vps_ordering_predict_flag[i]が存在することを明示する。max_sub_layers_vps_predict_flag[i]が0に等しい場合は、max_sub_layers_vps_minus1[i]が明示的にシグナリングされることを明示する。max_sub_layers_vps_predict_flag[0]の値は0に等しいと推定されてよい。
sub_layer_vps_buf_info_predict_flag[i]が1に等しい場合は、max_vps_dec_pic_buffering_minus1[i][j]が、jの各値についてmax_vps_dec_pic_buffering_minus1[i-1][j]に等しいと推定されてよい。sub_layer_vps_buf_info_predict_flag[i]が0に等しい場合は、jの少なくとも1つの値についてのmax_vps_dec_pic_buffering_minus1[i][j]が明示的にシグナリングされることを明示する。
パラメータsub_layer_vps_buf_info_present_flag[i]が1に等しい場合は、MaxSubLayers[i]個のサブレイヤに関してmax_vps_dec_pic_buffering_minus1[i][j]が存在することを明示する。sub_layer_vps_buf_info_present_flag[i]が0に等しい場合は、max_vps_dec_pic_buffering_minus1[i][MaxSubLayers[i]-1]の値がすべてのサブレイヤに適用されることを明示する。
パラメータmax_vps_dec_pic_buffering_minus1[i][j]はSPSシンタックス要素sps_max_dec_pic_buffering_minus1[j]の値を推定するために使用される。max_vps_dec_pic_buffering_minus1[i][j]は、sub_layer_vps_buf_info_present_flag[i]が0に等しいことに起因してiが0からMaxSubLayers[i]-2の範囲(両端値を含む)内である場合に存在しないとき、max_vps_dec_pic_buffering_minus1[i][MaxSubLayers[i]-1]に等しいと推定されてよい。
jの各値についてのmax_vps_dec_pic_buffering_minus1[0][j]はvps_max_dec_pic_buffering_minus1[j]に等しいと推定されてよい。
パラメータsub_layer_vps_ordering_info_predict_flag[i]が1に等しい場合は、シンタックス要素sub_layer_vps_ordering_info_present_flag[i]、max_vps_num_reorder_pics[i][j]、およびmax_vps_latency_increase_plus1[i][j]がそれぞれ、sub_layer_vps_ordering_info_present_flag[i-1]、max_vps_num_reorder_pics[i-1][j]、およびmax_vps_latency_increase_plus1[i-1][j]に等しいと推定される。sub_layer_vps_ordering_info_predict_flag[i]が0に等しい場合は、sub_layer_vps_ordering_info_present_flag[i]、max_vps_num_reorder_pics[i][j]、およびmax_vps_latency_increase_plus1[i][j]シンタックス要素が明示的にシグナリングされる。sub_layer_vps_ordering_info_predict_flag[i]が存在しないとき、その値は0に等しく設定される。
パラメータsub_layer_vps_ordering_info_present_flag[i]が1に等しい場合は、max_sub_layers_vps_minus1+1個のサブ_レイヤに関してmax_vps_num_reorder_pics[i][j]およびmax_vps_latency_increase_plus1[i][j]が存在することを明示する。sub_layer_vps_ordering_info_present_flag[i]が0に等しい場合は、max_vps_num_reorder_pics[i][vps_max_sub_layers_minus1]およびmax_vps_latency_increase_plus1[i][max_sub_layers_vps_minus1]がすべてのサブレイヤに適用されることを明示する。
パラメータmax_vps_num_reorder_pics[i][j]はSPSシンタックス要素sps_max_num_reorder_pics[j]の値を推定するために使用される。max_vps_num_reorder_pics[i][j]は、sub_layer_vps_ordering_info_present_flag[i]が0に等しいことに起因してiが0からmax_sub_layers_vps_minus1[i]-1の範囲(両端値を含む)内である場合に存在しないとき、max_vps_num_reorder_pics[i][max_sub_layers_vps_minus1[i]]に等しいと推定されてよい。
パラメータmax_vps_latency_increase_plus1[i][j]はSPSシンタックス要素sps_max_latency_increase_plus1[j]の値を推定するために使用される。max_vps_latency_increase_plus1[i][j]は、sub_layer_vps_ordering_info_present_flag[i]が0に等しいことに起因してiが0からmax_sub_layers_vps_minus1[i]-1の範囲(両端値を含む)内である場合に存在しないとき、max_vps_latency_increase_plus1[i][max_sub_layers_vps_minus1[i]]に等しいと推定されてよい。[終了例C]
[開始例B]
Table 5(表5)は、代表的なフォーマットおよびセマンティクスの例を示す。
Figure 2016514931
パラメータchroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、bit_depth_vps_chroma_minus8、およびbit_depth_vps_chroma_minus8はそれぞれ、VPSを参照するSPSごとに、SPSシンタックス要素chroma_format_idc、separate_colour_plane_flag、pic_width_in_luma_samples、pic_height_in_luma_samples、bit_depth_luma_minus8、およびbit_depth_chroma_minus8の値を推定するために使用されてよい。これらのシンタックス要素の各々に関しても、対応するSPSシンタックス要素の値に適用される制約がある場合には、それらの制約のすべてが適用される。[終了例B]表現フォーマット情報は概して、たとえば、シーケンスのビット深度、クロマサンプリングフォーマット、解像度を含んでよい。Table 5(表5)の例に示すように、表現フォーマットは、chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、bit_depth_vps_chroma_minus8、およびbit_depth_vps_chroma_minus8を含んでよい。さらに、Table 5(表5)に示すように、VPS内の表現フォーマットのシグナリングは、表現フォーマット、たとえば、chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、bit_depth_vps_chroma_minus8、およびbit_depth_vps_chroma_minus8がエントロピー復号なしでアクセスできるように実行されてよい。言い換えれば、Table 5(表5)に示すように、chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、bit_depth_vps_chroma_minus8、およびbit_depth_vps_chroma_minus8はエントロピー符号化されず、すなわち、記述子はue(v)ではない。いくつかの例では、各レイヤは特定の表現フォーマットに関連付けられてよい。
[開始例F]Table 6(表6)は、他のSPSパラメータシンタックスおよびセマンティクスの例を示す。
Figure 2016514931
以下のシンタックス要素の各々に関しても、対応するSPSシンタックス要素の値に適用される制約がある場合には、それらの制約のすべてが適用される。conformance_window_vps_flag、conf_win_vps_left_offset、conf_win_vps_right_offset、conf_win_vps_top_offset、conf_win_vps_bottom_offset、log2_vps_max_pic_order_cnt_lsb_minus4、log2_vps_min_luma_coding_block_size_minus3、log2_vps_diff_max_min_luma_coding_block_size、log2_vps_min_transform_block_size_minus2、log2_vps_diff_max_min_transform_block_size、max_vps_transform_hierarchy_depth_inter、max_vps_transform_hierarchy_depth_intra、scaling_list_enabled_vps_flag、scaling_list_enabled_vps_flag、amp_enabled_vps_flag、sample_adaptive_offset_enabled_vps_flag、pcm_enabled_vps_flag、pcm_vps_sample_bit_depth_luma_minus1、pcm_vps_sample_bit_depth_chroma_minus1、log2_vps_min_pcm_luma_coding_block_size_minus3、log2_vps_diff_max_min_pcm_luma_coding_block_size、pcm_vps_loop_filter_disabled_flag、long_term_ref_pics_present_vps_flag、num_long_term_ref_pics_vps、lt_ref_pic_poc_lsb_vps[i]、used_by_curr_pic_lt_vps_flag[i]、temporal_mvp_enabled_vps_flag、およびstrong_
intra_smoothing_enabled_vps_flagはそれぞれ、シンタックス要素conformance_window_flag、conf_win_left_offset、conf_win_right_offset、conf_win_top_offset、conf_win_bottom_offset、log2_max_pic_order_cnt_lsb_minus4、log2_min_luma_coding_block_size_minus3、log2_diff_max_min_luma_coding_block_size、log2_min_transform_block_size_minus2、log2_diff_max_min_transform_block_size、max_transform_hierarchy_depth_inter、max_transform_hierarchy_depth_intra、scaling_list_enabled_flag、sps_scaling_list_data_present_flag、amp_enabled_flag、sample_adaptive_offset_enabled_flag、pcm_enabled_flag、pcm_sample_bit_depth_luma_minus1、pcm_sample_bit_depth_chroma_minus1、log2_min_pcm_luma_coding_block_size_minus3、log2_diff_max_min_pcm_luma_coding_block_size、pcm_loop_filter_disabled_flag、long_term_ref_pics_present_flag、num_long_term_ref_pics_sps、lt_ref_pic_poc_lsb_sps[i]、used_by_curr_pic_lt_flag[i]、sps_temporal_mvp_enabled_flag、およびstrong_intra_smoothing_enabled_flagの値を推定するために使用されてよい。
[終了例F]
[開始例D]Table 7(表7)は、短期RPS候補シンタックスおよびセマンティクスの例を示す。
Figure 2016514931
パラメータnum_short_term_ref_pic_setsは、後続のshort_term_ref_pic_set()シンタックス構造の数を指定する。num_short_term_ref_pic_setsの値は、0から64の範囲(両端値を含む)内であってよい。
注1-現在のピクチャのスライスヘッダには直接シグナリングされるshort_term_ref_pic_set()シンタックス構造があり得るので、デコーダは、num_short_term_ref_pic_sets+1short_term_ref_pic_set()シンタックス構造の総数にメモリを割り振るべきである。現在のピクチャのスライスヘッダにおいて直接シグナリングされるshort_term_ref_pic_set()シンタックス構造は、num_short_term_ref_pic_setsに等しいインデックスを有する。
パラメータpred_st_rps_cand_idx_plus1 minus 1は、現在のshort_term_rps_candidates()シンタックス構造の少なくとも1つのshort_term_ref_pic_set()シンタックス構造を推定するのに使用されるshort_term_rps_candidates()シンタックス構造の、VPS内のshort_term_rps_candidates()シンタックス構造の組のインデックスを指定する。pred_st_rps_cand_idx_plus1は、存在しないとき、0に等しいと推定されてよい。pred_st_rps_cand_idx_plus1の値は、1からvps_num_st_rps_candidates-1の範囲(両端値を含む)内であってよい。
pred_from_rps_cand_list_flag[i]が1に等しい場合、現在のshort_term_rps_candidates()シンタックス構造のi番目のshort_term_ref_pic_set()シンタックス構造は、存在せず、別のshort_term_rps_candidates()シンタックス構造に存在するshort_term_ref_pic_set()シンタックス構造のうちの1つであるように設定されることを明示する。pred_from_rps_cand_list_flag[i]が0に等しい場合、現在のshort_term_rps_candidates()シンタックス構造のi番目のshort_term_ref_pic_set()シンタックス構造が存在することを明示する。pred_from_rps_cand_list_flag[i]が存在しないとき、その値は0に等しいと推定されてよい。[終了例D]
代替的に、pred_from_rps_cand_list_flag[i]が1に等しい場合、i番目のshort_term_ref_pic_set()に対応する変数DeltaPocS0、DeltaPocS1、UsedByCurrPicS1、UsedByCurrPicS0、NumPositivePics、NumNegativePics、およびNumDeltaPocsがそれぞれ、別のshort_term_rps_candidates()構造に対応する変数DeltaPocS0、DeltaPocS1、UsedByCurrPicS1、UsedByCurrPicS0、NumPositivePics、NumNegativePics、およびNumDeltaPocsに等しくなるように導出されることを明示する。
[開始例D]パラメータidx_in_rps_cand[i]は、現在のshort_term_rps_candidates()のi番目のshort_term_ref_pic_set()シンタックス構造と同一のshort_term_ref_pic_set()シンタックス構造の、VPS内の(pred_st_rps_cand_idx_plus1-1)番目のshort_term_rps_candidates()シンタックス構造のshort_term_ref_pic_set()シンタックス構造の組のインデックスを指定する。
pred_from_rps_cand_list_flag[i]が1に等しい場合、現在のshort_term_rps_candidates()シンタックス構造内のi番目のshort_term_ref_pic_set()シンタックス構造は、VPS内の(pred_st_rps_cand_idx_plus1-1)番目のshort_term_rps_candidates()シンタックス構造のidx_in_rps_cand[i]番目のshort_term_ref_pic_set()シンタックス構造と同じに設定される。[終了例D]
代替的に、pred_from_rps_cand_list_flag[i]が1に等しい場合、現在のshort_term_rps_candidates()シンタックス構造内のi番目のshort_term_ref_pic_set()シンタックス構造に対応する変数DeltaPocS0、DeltaPocS1、UsedByCurrPicS1、UsedByCurrPicS0、NumPositivePics、NumNegativePics、およびNumDeltaPocsがそれぞれ、VPS内の(pred_st_rps_cand_idx_plus1-1)番目のshort_term_rps_candidates()シンタックス構造のidx_in_rps_cand[i]番目のshort_term_ref_pic_set()シンタックス構造に対応する変数DeltaPocS0、DeltaPocS1、UsedByCurrPicS1、UsedByCurrPicS0、NumPositivePics、NumNegativePics、およびNumDeltaPocsに等しく設定されることを明示する。Table 8(表8)は、VUIパラメータシンタックスおよびセマンティクスの例を示す。
Figure 2016514931
Figure 2016514931
[開始例E]timingParamsPresentFlagが0に等しいときには、以下のことが適用される。vui_timing_info_present_flag、vui_num_units_in_tick、vui_time_scale、vui_poc_proportional_to_timing_flag、およびvui_num_ticks_poc_diff_one_minus1の値はそれぞれ、vps_timing_info_present_flag、vps_num_units_in_tick、vps_time_scale、vps_poc_proportional_to_timing_flag、およびvps_num_ticks_poc_diff_one_minus1に等しいと推定される。vui_hrd_parameters_present_flagの値は、0に等しいと推定されてよい。
パラメータvui_parameters_present_flagが1に等しい場合、vui_parameters()シンタックス構造内にシンタックス要素がまだあることを明示する。パラメータvui_parameters_present_flagが0に等しい場合、vui_parameters()シンタックス構造内にはもはやシンタックス要素がないことを明示する。[終了例E]
一例では、Table 8(表8)を見るとわかるように、視覚的信号情報(たとえば、video_format、video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffs)はVUIパラメータのサブセットである。さらに、Table 4(表4)の例に示すように、VUI、したがって、視覚的信号情報は、VPSに含まれる。Table 4(表4)およびTable 8(表8)から得られる情報を組み合わせることによって、視覚的信号情報がVPS内のレイヤごとにシグナリングされることがわかる。
Table 9(表9)は、例示的なシーケンスパラメータセットRBSPシンタックスおよびセマンティクスを示す。
Figure 2016514931
Figure 2016514931
Figure 2016514931
[開始例B]
SPSのnuh_layer_idが0に等しいとき、chroma_format_idc、separate_colour_plane_flag、pic_width_in_luma_samples、pic_height_in_luma_samples、bit_depth_luma_minus8、およびbit_depth_chroma_minus8の値はそれぞれ、アクティブなVPS内の0番目のrep_format()シンタックス構造のchroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、bit_depth_vps_chroma_minus8、およびbit_depth_vps_chroma_minus8に等しくてよい。
SPSを参照するnuh_layer_idが0よりも大きい各レイヤについて、layerIdxを、layer_id_in_nuh[layerIdx]がレイヤのnuh_layer_idに等しくなる値に等しく設定すると、以下のことが適用される。[終了例B]
[開始例A]SPSのnuh_layer_idが0に等しいとき、SPS内のprofile_tier_level()シンタックス構造は無視される。[終了例A]
Table 8(表8)およびTable 9(表9)に示すように、SPS VUIにおいて、たとえば0よりも大きいレイヤに関してタイミング情報はシグナリングされない。
-[開始例B]chroma_format_idc、separate_colour_plane_flag、pic_width_in_luma_samples、pic_height_in_luma_samples、bit_depth_luma_minus8、およびbit_depth_chroma_minus8の値はそれぞれ、chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、bit_depth_vps_chroma_minus8、およびbit_depth_vps_chroma_minus8がVPSに存在するかどうかにかかわらず、アクティブなVPS内のvps_rep_format_idx[layerIdx]番目のrep_format()シンタックス構造のこれらのシンタックス要素に等しいと推定される。[終了例B]
[開始例F]パラメータinherit_sps_params_from_vps_flagが1に等しい場合は、SPS RBSPに関して、sps_video_parameter_set_idおよびシンタックス要素sps_seq_parameter_set_id以外の、sps_extension_flagまでのすべてのシンタックス要素およびシンタックス構造の値が、アクティブなVPSから継承されてよいことを明示する。inherit_sps_params_from_vps_flagが0に等しい場合は、これらの値がアクティブなVPSから継承されないことを明示する。inherit_sps_params_from_vps_flagが存在しないとき、その値は0に等しいと推定されてよい。vps_num_rep_fromats、vps_num_other_sps_params、vps_num_st_rps_candidates、またはvps_num_vui_paramsが0に等しいとき、inherit_sps_params_from_vps_flagの値は0に等しくてよい。inherit_sps_params_from_vps_flaが1に等しいときには、以下のことが適用される。[終了例F]
[開始例C]SPSを参照するレイヤごとのsps_max_sub_layers_minus1の値は、max_sub_layers_vps_minus1[layerIdx]に等しいと推定されてよく、この場合、layerIdxは、layer_id_in_nuh[layerIdx]がレイヤのnuh_layer_idに等しくなる値に等しい。
SPSを参照するレイヤごとのsps_max_dec_pic_buffering_minus1[i]の値は、iが0からMaxSubLayers[lxIdx]-1の範囲(両端値を含む)内ではmax_vps_dec_pic_buffering_minus1[lsIdx][i]に等しいと推定されてよく、この場合、lsIdxは、0からvps_num_layers_sets_minus1の範囲(両端値を含む)内であり、レイヤが最上位レイヤでかつ唯一の目標出力レイヤである出力レイヤセットの、各出力レイヤセットのうちのVPSによって指定されるセットのインデックスを示す。
SPSを参照するレイヤごとのsps_max_num_reorder_pics[i]およびsps_max_latency_increase_plus1[i]の値は、max_vps_num_reorder_pics[layerIdx][i]およびmax_vps_latency_increase_plus1[layerIdx]に等しいと推定され、この場合、layerIdxは、iが0からsps_max_sub_layers_minus1の範囲(両端値を含む)内において、layer_id_in_nuh[layerIdx]がレイヤのnuh_layer_idに等しくなる値に等しい。SPSを参照するレイヤごとのsps_temporal_id_nesting_flagの値は、vps_temporal_id_nesting_flagに等しいと推定されてよい。[終了例C]
上記の説明およびTable 9(表9)からわかるように、いくつかの例では、nuh_layer_id_>0であるときsps_max_sub_layers_minus1およびsps_temporal_id_nesting_flagをシグナリングしない。
[開始例F]SPSを参照するレイヤごとのconformance_window_flag、conf_win_left_offset、conf_win_right_offset、conf_win_top_offset、conf_win_bottom_offset、log2_max_pic_order_cnt_lsb_minus4、log2_min_luma_coding_block_size_minus3、log2_diff_max_min_luma_coding_block_size、log2_min_transform_block_size_minus2、log2_diff_max_min_transform_block_size、max_transform_hierarchy_depth_inter、max_transform_hierarchy_depth_intra、scaling_list_enabled_flag、sps_scaling_list_data_present_flag、amp_enabled_flag、sample_adaptive_offset_enabled_flag、pcm_enabled_flag、pcm_sample_bit_depth_luma_minus1、pcm_sample_bit_depth_chroma_minus1、log2_min_pcm_luma_coding_block_size_minus3、log2_diff_max_min_pcm_luma_coding_block_size、pcm_loop_filter_disabled_flag、long_term_ref_pics_present_flag、num_long_term_ref_pics_sps、lt_ref_pic_poc_lsb_sps[i]、used_by_curr_pic_lt_flag[i]、sps_temporal_mvp_enabled_flag、およびstrong_intra_smoothing_enabled_flagの値はそれぞれ、アクティブなVPS内のvps_other_sps_params_idx[layerIdx]番目のother_sps_parameters()シンタックス構造のconformance_window_vps_flag、conf_win_vps_left_offset、conf_win_vps_right_offset、conf_win_vps_top_offset、conf_win_vps_bottom_offset、log2_vps_max_pic_order_cnt_lsb_minus4、log2_vps_min_luma_coding_block_size_minus3、log2_vps_diff_max_min_luma_coding_block_size、log2_vps_min_transform_block_size_minus2、log2_vps_diff_max_min_transform_block_size、max_vps_transform_hierarchy_depth_inter、max_vps_transform_hierarchy_depth_intra、scaling_list_enabled_vps_flag、scaling_list_enabled_vps_flag、amp_enabled_vps_flag、sample_adaptive_offset_enabled_vps_flag、pcm_enabled_vps_flag、pcm_vps_sample_bit_depth_luma_minus1、pcm_vps_sample_bit_depth_chroma_minus1、log2_vps_min_pcm_luma_coding_block_size_minus3、log2_vps_diff_max_min_pcm_luma_coding_block_size、pcm_vps_loop_filter_disabled_flag、long_term_ref_pics_present_vps_flag、num_long_term_ref_pics_vps、lt_ref_pic_poc_lsb_vps、used_by_curr_pic_lt_vps_flag[i]、temporal_mvp_enabled_vps_flag、およびstrong_intra_smoothing_enabled_vps_flagに等しいと推定され、この場合、layerIdxは、layer_id_in_nuh[layerIdx]がレイヤのnuh_layer_idに等しくなる値に等しい。
scaling_list_enabled_vps_flagが1に等しいとき、SPSを参照するレイヤごとのシンタックス構造scaling_list_data()の値は、アクティブなVPS内のvps_other_sps_params_idx[layerIdx]番目のother_sps_parameters()シンタックス構造におけるシンタックス構造scaling_list_data()に等しいと推定されてよい。[終了例F]
[開始例D]SPSを参照するレイヤごとのシンタックス構造short_term_rps_candidates()の値は、アクティブなVPS内のvps_st_rps_idx[layerIdx]番目のshort_term_rps_candidates()に等しいと推定されてよく、この場合、layerIdxは、layer_id_in_nuh[layerIdx]がレイヤのnuh_layer_idに等しくなる値に等しい。[終了例D]
[開始例E]SPSを参照するレイヤごとのシンタックス構造vui_parameters()の値は、アクティブなVPS内のvps_vui_params_idx[layerIdx]番目のvui_parameters()シンタックス構造に等しいと推定されてよく、この場合、layerIdxは、layer_id_in_nuh[layerIdx]がレイヤのnuh_layer_idに等しくなる値に等しい。[終了例E]
...
パラメータconf_win_left_offset、conf_win_right_offset、conf_win_top_offset、およびconf_win_bottom_offsetは、出力対象としてピクチャ座標で指定された矩形領域として、復号プロセスから出力されるコーディング済みビデオストリーム(CVS)内のピクチャのサンプルを指定する。[開始例F]inherit_sps_params_from_vps_flagが0に等しく[終了例F]conformance_window_flagが0に等しいとき、conf_win_left_offset、conf_win_right_offset、conf_win_top_offset、およびconf_win_bottom_offsetの値は0に等しいと推定されてよい。
適合クロッピングウィンドウは、水平ピクチャ座標がSubWidthC*conf_win_left_offsetからpic_width_in_luma_samples(SubWidthC*適合_ウィンドウ_オフセット+1)まで(両端値を含む)で、垂直方向ピクチャ座標がSubHeightC*conf_win_top_offsetからpic_height_in_luma_samples(SubHeightC*conf_win_bottom_offset+1)まで(両端値を含む)のルーマサンプルを含む。
SubWidthC*(conf_win_left_offset+conf_win_right_offset)の値はpic_width_in_luma_samplesよりも小さくてよく、SubHeightC*(conf_win_top_offset+conf_win_bottom_offset)の値はpic_height_in_luma_samplesよりも小さくてよい。
ChromaArrayTypeが0に等しくないとき、2つのクロマアレイの対応する指定されるサンプルは、ピクチャ座標(x/SubWidthC, y/SubHeightC)を有するサンプルであり、この場合、(x, y)は指定されたルーマサンプルのピクチャ座標である。
注3-適合クロッピングウィンドウオフセットパラメータは出力にのみ適用される。すべての内部復号プロセスは、クロッピングされていないピクチャサイズに適用される。
...
inherit_sps_params_from_vps_flagが0、[終了例C]に等しいときにパラメータsps_sub_layer_ordering_info_present_flagが1[開始例C]に等しい場合は、sps_max_sub_layers_minus1+1に関してsps_max_dec_pic_buffering_minus1[i]、sps_max_num_reorder_pics[i]、およびsps_max_latency_increase_plus1[i]が存在することを明示する。inherit_sps_params_from_vps_flagが0、[終了例C]に等しいときにsps_sub_layer_ordering_info_present_flagが0、[開始例C]に等しい場合は、sps_max_dec_pic_buffering_minus1[sps_max_sub_layers_minus1]、sps_max_num_reorder_pics[sps_max_sub_layers_minus1]、およびsps_max_latency_increase_plus1[sps_max_sub_layers_minus1]がすべてのサブレイヤに適用されることを明示する。
パラメータsps_max_dec_pic_buffering_minus1[i] plus 1は、HighestTidがiに等しいときのピクチャ記憶バッファの単位でのCVSの復号済みピクチャバッファの最大必要サイズを指定する。いくつかの例では、sps_max_dec_pic_buffering_minus1[i]の値は0から(A.4節に指定されているような)MaxDpbSize-1の範囲(両端値を含む)内であってよい。iが0よりも大きいとき、sps_max_dec_pic_buffering_minus1[i]は、sps_max_dec_pic_buffering_minus1[i-1]以上であってよい。sps_max_dec_pic_buffering_minus1[i]は、iの各値についてvps_max_dec_pic_buffering_minus1[i]以下であってよい。[開始例C]sps_max_dec_pic_buffering_minus1が0に等しく、iが0からsps_max_sub_layers_minus1-1の範囲(両端値を含む)内である場合に、sps_sub_layer_ordering_info_present_flagが0に等しいことに起因して、[終了例C]sps_max_dec_pic_buffering_minus1[i]が存在しないとき、sps_max_dec_pic_buffering_minus1[i]は、sps_max_dec_pic_buffering_minus1[sps_max_sub_layers_minus1]に等しいと推定される。
パラメータsps_max_num_reorder_pics[i]は、HighestTidがiに等しいときに、CVS内の任意のピクチャよりも前に位置するピクチャの最大許容数を復号順に示し、そのピクチャよりも後に位置するピクチャの最大許容数を出力順に示す。sps_max_num_reorder_pics[i]の値は、0からsps_max_dec_pic_buffering_minus1[i]の範囲(両端値を含む)内であってよい。iが0よりも大きいとき、sps_max_num_reorder_pics[i]はsps_max_num_reorder_pics[i-1]以上であってよい。Sps_max_num_reorder_pics[i]は、iの各値についてvps__max_num_reorder_pics[i]以下であってよい。[開始例C]inherit_sps_params_from_vps_flagが0に等しく、iが0からsps_max_sub_layers_minus1-1の範囲(両端値を含む)内である場合に、sps_sub_layer_ordering_info_present_flagが0に等しいことに起因して、[終了例C]sps_max_num_reorder_pics[i]が存在しないとき、sps_max_num_reorder_pics[i]はsps_max_num_reorder_pics[sps_max_sub_layers_minus1]に等しいと推定される。
パラメータsps_max_latency_increase_plus1[i]が0に等しくない場合は、HighestTidがiに等しいときに、CVS内の任意のピクチャよりも前に位置するピクチャの最大許容数を出力順に明示し、そのピクチャよりも後に位置するピクチャの最大許容数を復号順に明示するSpsMaxLatencyPictures[i]の値を算出するのに使用される。
sps_max_latency_increase_plus1[i]が0に等しくないとき、SpsMaxLatencyPictures[i]の値は次のように指定される。SpsMaxLatencyPictures[i]=sps_max_num_reorder_pics[i]+ (7-9)
sps_max_latency_increase_plus1[i]-1
sps_max_latency_increase_plus1[i]が0に等しいとき、対応する限界は表現されない。いくつかの例では、sps_max_latency_increase_plus1[i]の値は、0から232-2の範囲(両端値を含む)内であってよい。いくつかの例では、vps_max_latency_increase_plus1[i]が0に等しくないとき、sps_max_latency_increase_plus1[i]の値は、0に等しくなくてよく、iの各値についてvps_max_latency_increase_plus1[i]以下であってよい。[開始例C]inherit_sps_params_from_vps_flagが0に等しく、iが0からsps_max_sub_layers_minus1-1の範囲(両端値を含む)内である場合に、sps_sub_layer_ordering_info_present_flagが0に等しいことに起因して、[終了例C]sps_max_latency_increase_plus1[i]が存在しないとき、vps_max_latency_increase_plus1[i]はsps_max_latency_increase_plus1[sps_max_sub_layers_minus1]に等しいと推定される。
...
パラメータsps_scaling_list_data_present_flagが1に等しい場合は、スケーリングリストデータは、SPS[開始例F]に存在するかまたはアクティブなVPS[終了例F]から継承されることを明示する。いくつかの例では、sps_scaling_list_data_present_flagが0に等しい場合は、スケーリングリストデータは、SPS[開始例F]には存在せず、かつアクティブなVPS[終了例F]から継承されないことを明示する。[開始例F]inherit_sps_params_from_vps_flagが0に等しく、sps_scaling_list_data_present_flag[終了例F]が存在しないとき、sps_scaling_list_data_present_flagの値は0に等しいと推定されてよい。scaling_list_enabled_flagが1に等しく、sps_scaling_list_data_present_flagが0に等しいとき、デフォルトのスケーリングリストデータが、HEVC規格の7.4.5節に指定されたスケーリングリストデータセマンティクスに記載されたようなアレイスケーリングファクタを導くのに使用される。
パラメータpcm_loop_filter_disabled_flagは、次のようにpcm_flagが1に等しいコーディングユニット内の再構成されたサンプルに対してループフィルタプロセスを無効化するかどうかを指定する。pcm_loop_filter_disabled_flagが1に等しい場合、pcm_flagが無効化されたコーディングユニット内の再構成されたサンプルに対するデブロッキングフィルタおよびサンプル適応オフセットフィルタプロセスが無効化される。他の場合(pcm_loop_filter_disabled_flag値が0に等しい場合)には、pcm_flagが1に等しいコーディングユニット内の再構成されたサンプルに対するデブロッキングフィルタおよびサンプル適応オフセットフィルタプロセスは無効化されない。
[開始例F]inherit_sps_params_from_vps_flagが0に等しく、[終了例F]pcm_loop_filter_disabled_flagが存在しないとき、pcm_loop_filter_disabled_flagは0に等しいと推定されてよい。
[開始例D]num_short_term_ref_pic_setsは、SPSに含まれるshort_term_ref_pic_set()シンタックス構造の数を特定する。num_short_term_ref_pic_setsの値は、0から64の範囲(両端値を含む)内であってよい。
注5-現在のピクチャのスライスヘッダには直接シグナリングされるshort_term_ref_pic_set()シンタックス構造があり得るので、メモリデコーダは、num_short_term_ref_pic_sets+1short_term_ref_pic_set()シンタックス構造の総数にメモリを割り振るべきである。現在のピクチャのスライスヘッダにおいて直接シグナリングされるshort_term_ref_pic_set()シンタックス構造は、num_short_term_ref_pic_setsに等しいインデックスを有する。[終了例D]
...
パラメータlt_ref_pic_poc_lsb_sps[i]は、i番目の候補長期参照ピクチャ指定[開始例F]by[終了例F]SPSのピクチャ順序カウントモジュロMaxPicOrderCntLsbsbを指定する。lt_ref_pic_poc_lsb_sps[i]を表すのに使用されるビットの数はlog2_max_pic_order_cnt_lsb_minus4+4に等しい。
パラメータused_by_curr_pic_lt_sps_flag[i]が0に等しい場合は、i番目の候補長期参照ピクチャ指定[開始例F]by[終了例F]SPSが、i番目の候補長期参照ピクチャ指定[開始例F]by[終了例F]SPSを長期RPSに含むピクチャによる参照には使用されないことを明示する。
...
[開始例E]1に等しいvui_parameters_present_flagは、付属書類Eに明記されたvui_parameters( )シンタックス構造が存在することを明示する。0に等しいvui_parameters_present_flagは、付属書類Eに明記されたvui_parameters( )シンタックス構造が存在しないことを明示する。[終了例E]
図4は、本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。図4に示された例では、ビデオデコーダ30は、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を受信してよい(402)。エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置に存在してよい。
ビデオデコーダ30は、複数の出力レイヤセット(404)の各々に関するプロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照し、出力レイヤセットのうちの1つに関して参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいてその出力レイヤセットのビデオデータを復号してよい(406)。たとえば、ビデオデコーダ30は、出力レイヤセットのビットストリームのプロファイル、ティア、およびレベルが、デコーダのプロファイル、ティア、およびレベルによって示されるようなビデオデコーダ30の復号機能よりも高い機能がビットストリームの復号に必要であることを示す場合には出力レイヤセットを無視してよい。出力レイヤセットのビットストリームのプロファイル、ティア、およびレベルによって示されるような必要な復号機能がビデオデコーダ30の復号機能よりも低いときは、ビデオデコーダ30は、ビットストリームのプロファイル、ティア、およびレベルによって示されるような必要な復号プロセスを使用して出力レイヤセットのビットストリームを復号する。
いくつかの例では、ビデオデコーダ30は、nuh_layer_idが0に等しいSPSを受信してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。
いくつかの例では、ビデオデコーダ30は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を受信してよい。たとえば、ビデオエンコーダ20は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してよい。ビデオデコーダ30は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してよい。
ビデオデコーダ30は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを生成してもよい。たとえば、ビデオエンコーダ20は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを符号化してもよい。
図5は、本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。図5に示す例では、ビデオエンコーダ20は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを生成してよい。たとえば、ビデオエンコーダ20は、複数の出力レイヤセットの各々に関してプロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照してよい(502)。ビデオエンコーダ20は、出力レイヤフラグ[i][j]に基づいて出力レイヤセットを符号化してもよい(504)。
ビデオエンコーダ20は、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を有するVPS拡張シンタックスを含むVPSを符号化してよい(506)。いくつかの例では、ビデオエンコーダ20は、エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を有するVPSおよびVPS拡張シンタックスを送信しても、または記憶しても、または記憶させてもよい。エントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置に存在してよい。たとえば、ビデオエンコーダ20は、選択されたプロファイル、ティア、およびレベルに従ってビデオデータを符号化してよい。ビデオエンコーダ20は、デコーダによって使用されるVPS内のプロファイル、ティア、およびレベルシンタックスを符号化してもよい。
いくつかの例では、ビデオエンコーダ20は、nuh_layer_idが0に等しいSPSを符号化してよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。たとえば、ビデオエンコーダ20は、nuh_layer_idが0に等しいSPSを送ってよく、この場合、SPSは、ビデオデータのレイヤに関するプロファイル、ティア、およびレベルシンタックス構造を含む。nuh_layer_idが0に等しいSPSがnuh_layer_idが0よりも大きいレイヤによって参照されるとき、SPS内のprofile_tier_level()シンタックス構造はそのレイヤには適用されない。
したがって、上記からわかるように、各レイヤはSPSを参照する必要がある。従来、空間解像度、ビット深度、またはカラーフォーマットの値が異なる任意の2つのレイヤは、これらの表現フォーマットパラメータがSPS内でシグナリングされるので2つの異なるSPSを参照する必要がある。しかし、nuh_layer_idが0に等しいSPSを除くすべてのSPSに関するこれらのパラメータがVPSに移され、nuh_layer_idが0よりも大きいレイヤによって参照されるnuh_layer_idが0に等しいSPS内の表現フォーマットパラメータを無視することが規定されるとき、空間解像度、ビット深度、またはカラーフォーマットの値が異なる各レイヤは同じSPSを参照することが可能である。言い換えれば、本開示のいくつかの実装形態では、空間解像度、ビット深度、またはカラーフォーマットの値が異なる各レイヤは、レイヤに必要な他のSPSパラメータが同じである限り、同じSPSを共有することができる。
いくつかの例では、ビデオエンコーダ20は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してよい。たとえば、ビデオエンコーダ20は、1に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤであることを明示し、0に等しいときに、レイヤセット内のj番目のレイヤがi番目の出力レイヤセットの目標出力レイヤではないことを明示する出力レイヤフラグ[i][j]を送信してよい。
図6は、本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。図6に示す例では、ビデオデコーダ30は、VPS拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置にある非エントロピー符号化レイヤ依存情報を受信してよい(602)。
ビデオデコーダ30は、エントロピー符号化シンタックス要素の前の非エントロピー符号化レイヤ依存情報を復号してよい(604)。一例では、ビデオデコーダ30は、任意のエントロピー符号化シンタックス要素の前の非エントロピー符号化レイヤ依存情報を復号してよい。
ビデオデコーダ30は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを復号してよい(606)。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示してよい。いくつかの例では、レイヤ依存情報は、1つのレイヤが別のレイヤの直接参照レイヤであるかどうかを示すときに、どの1つのレイヤが別のレイヤの直接参照レイヤであるかを示してもよい。言い換えれば、レイヤ依存情報は、1つのレイヤが別のレイヤの直接参照レイヤであるかどうかを示し、別のレイヤの直接参照レイヤである1つのレイヤを特定してよい。いくつかの例では、レイヤ依存情報は、0に等しいときに、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤではないことを明示し、1に等しいときに、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤであり得ることを明示する直接_依存_フラグ[i][j]を含む。ビデオデコーダ30は、ピクチャを復号する際、情報の中でも特にレイヤ依存情報に基づいてレイヤ間参照ピクチャセットを導出してよく、情報の中でも特にレイヤ間参照ピクチャセットに基づいて参照ピクチャセットをさらに導出してよく、次いで、直接参照レイヤ内のピクチャによるレイヤ間予測を使用してピクチャを復号してよい。
図7は、本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。ビデオエンコーダ20は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを符号化してよい(702)。ビデオエンコーダ20は、ビデオパラメータセット(VPS)拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置にある非エントロピー符号化レイヤ依存情報を符号化してよい(704)。たとえば、ビデオエンコーダ20は、非エントロピー符号化レイヤ依存情報に基づいてビデオデータのレイヤのうちの1つまたは複数のレイヤのビデオデータを符号化してよい。レイヤ依存情報は、レイヤの1つが別のレイヤの直接参照レイヤであるかどうかを示してよい。いくつかの例では、ビデオエンコーダ20は、ビデオパラメータセット(VPS)拡張内の、エントロピー符号化されたVPS拡張のシンタックス要素の前の位置にある非エントロピー符号化レイヤ依存情報を送信しても、または記憶しても、記憶させてもよい。
いくつかの例では、レイヤ依存情報は、0に等しいときに、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤではないことを明示し、1に等しいときに、インデックスjを有するレイヤがインデックスiを有するレイヤの直接参照レイヤになり得ることを明示する直接_依存_フラグ[i][j]を含む。
図8は、本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。図8の例では、1つのレイヤセットに関して複数の出力レイヤセットをシグナリングしてよい。したがって、1つのレイヤセットに関して複数の出力レイヤセットをシグナリングする場合、ビデオデコーダ30は、たとえば、入力インターフェース28を介して、レイヤセットの第1の出力レイヤセットを受信してよい(802)。ビデオデコーダ30は、レイヤセットの第2の出力レイヤセットを受信してもよい(804)。さらに、図8の例は、1つのレイヤセットの2つの出力レイヤセットを示すが、レイヤセットに関して3つもしくは4つの出力レイヤセット、または場合によっては5つ以上の出力レイヤセットをシグナリングしてもよいことが理解されよう。ビデオデコーダ30は、第1の出力レイヤセットおよび第2の出力レイヤセットの少なくとも一方のビデオデータを復号してよい(806)。
図9は、本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。図9の例では、1つのレイヤセットに関して複数の出力レイヤセットをシグナリングしてよい。したがって、ビデオエンコーダ20は、第1の出力レイヤセットおよび第2の出力レイヤセットの少なくとも一方のビデオデータを符号化してよい(902)。したがって、出力インターフェース22はビデオエンコーダ20から符号化データを送信してよい。送信されるデータは、レイヤセットの第1の出力レイヤセット(904)とレイヤセットの第2の出力レイヤセット(906)とを含んでよい。いくつかの例では、出力インターフェース22は入力インターフェース28にデータを送信してよい。他の例では、出力インターフェース22はデータを記憶するために記憶デバイス34に送信してよい。
図10は、本明細書で説明するシステムおよび方法によるビデオデータを復号するための例示的な方法を示すフローチャートである。図10の例は、VPS内の表現フォーマットを、場合によってはエントロピー復号なしでアクセスできるようにシグナリングすることを示す。言い換えれば、VPS内の表現フォーマットはエントロピー符号化されない。VPS内の表現フォーマットは、たとえば固定長コーディングされる。したがって、ビデオデコーダ30は、VPS内の非エントロピー符号化された表現フォーマットを、たとえば入力インターフェース28を介して受信してよい(1002)。表現フォーマットには、クロマフォーマット、それぞれに異なるカラープレーンを別々にコーディングするかどうか、ピクチャ幅、ピクチャ高さ、ルーマビット深度、およびクロマビット深度のうちの1つまたは複数を含めてよい。ビデオデコーダ30は、VPS内の非エントロピー符号化表現フォーマットに基づいてビデオデータを復号してもよい(1004)。表現フォーマットは、場合によってはエントロピー復号デバイスなしでアクセスできるようにVPS内に位置するので、エントロピー符号化を実行しないデバイスが表現フォーマットにアクセスしてよく、たとえば、場合によっては、メディアアウェアネットワークエンティティ(MANE)はエントロピー符号化デバイスを有さないことがある。ビデオデコーダ30は、VPS内の表現フォーマットを、場合によっては本開示の技法に従ってエントロピー復号なしで復号してよく、各レイヤは、特定の表現フォーマットに関連付けられてよい。
図11は、本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。図11の例は、VPS内の表現フォーマットを、場合によってはエントロピー復号なしでアクセスできるようにシグナリングすることを示す。言い換えれば、VPS内の表現フォーマットはエントロピー符号化されない。VPS内の表現フォーマットは、たとえば固定長コーディングされる。したがって、ビデオエンコーダ20は、VPS内の非エントロピー符号化表現フォーマットに基づいてビデオデータを符号化してもよい(1102)。表現フォーマットには、クロマフォーマット、それぞれに異なるカラープレーンを別々にコーディングするかどうか、ピクチャ幅、ピクチャ高さ、ルーマビット深度、およびクロマビット深度のうちの1つまたは複数を含めてよい。ビデオエンコーダ20は、VPS内の非エントロピー符号化表現フォーマットを送信してよい(1104)。ビデオエンコーダ20は、VPS内の表現フォーマットを、本開示の技法に従ってエントロピー復号なしでアクセスできるように符号化してよく、各レイヤは、特定の表現フォーマットに関連付けられてよい。
図12は、本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。図12の例は、VPS内のレイヤごとの視覚的信号情報、たとえば、video_format、video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffsのシグナリングを示す。したがって、ビデオデコーダ30は、各レイヤが視覚的信号情報を含む一連のレイヤを含むVPSを受信してよい(1002)。ビデオデコーダ30は、VPS内のレイヤごとにシグナリングされ受信された視覚的信号情報に基づいてビデオデータを復号してもよい。
図13は、本明細書で説明するシステムおよび方法によるビデオデータを符号化するための例示的な方法を示すフローチャートである。図13の例は、VPS内のレイヤごとの視覚的信号情報、たとえば、video_format、video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffのシグナリングを示す。したがって、ビデオエンコーダ20は、VPS内のレイヤごとにシグナリングされ受信された視覚的信号情報に基づいてビデオデータを符号化してよい(1302)。ビデオエンコーダ20は、各レイヤが一連のレイヤの各々の視覚的信号情報を含む一連のレイヤを含むVPSを送信してよい(1304)。
1つまたは複数の例において、前述の機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。各機能は、ソフトウェアに実装される場合、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶され、あるいはコンピュータ可読媒体を介して送信されてよく、かつハードウェアに基づく処理ユニットによって実行されてよい。コンピュータ可読媒体は、データ記憶媒体のような有形媒体、または、たとえば通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を支援する任意の媒体を含む通信媒体に相当する、コンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は一般に、(1)非一時的な有形コンピュータ可読記憶媒体または(2)信号波もしくは搬送波のような通信媒体に相当し得る。データ記憶媒体は、本開示で説明される技法を実装するための、命令、コード、および/またはデータ構造を取り出すために、1つもしくは複数のコンピュータまたは1つもしくは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であってよい。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令もしくはデータ構造の形式の所望のプログラムコードを記憶するために使用され、コンピュータによってアクセスされ得る任意の他の媒体を含み得る。また、当然、あらゆる接続がコンピュータ可読媒体と呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的な媒体を含まず、代わりに非一時的な有形記憶媒体を指すことを理解されたい。本明細書で使用される場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(DVD)、フロッピー(登録商標)ディスク、およびブルーレイディスクを含み、ディスク(disk)は通常、磁気的にデータを再生し、ディスク(disc)はレーザーで光学的にデータを再生する。前述の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、または他の等価の集積論理回路もしくはディスクリート論理回路のような、1つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される用語「プロセッサ」は、前述の構造、または、本明細書で説明される技法の実装に適した任意の他の構造の、いずれをも指し得る。加えて、いくつかの態様では、本明細書で説明される機能は、符号化および復号のために構成された、専用のハードウェアモジュールおよび/またはソフトウェアモジュール内で提供されてよく、または、組み合わされたコーデックに組み込まれてよい。また、技法は、1つまたは複数の回路素子または論理素子において完全に実装されてもよい。
本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、またはICのセット(たとえば、チップセット)を含む、多様なデバイスまたは装置において実装され得る。様々なコンポーネント、モジュール、またはユニットが、開示される技法を実行するように構成されるデバイスの機能的な側面を強調するために、本開示において説明されるが、必ずしも異なるハードウェアユニットによる実現を必要としない。むしろ上で説明されたように、様々なユニットは、コーデックハードウェアユニットへと結合されてよく、または、適切なソフトウェアおよび/またはファームウェアとともに、上で説明されたような1つまたは複数のプロセッサを含む相互動作可能なハードウェアユニットの集合体によって与えられてよい。
様々な例について説明した。これらの例および他の例は、以下の特許請求の範囲内に入る。
12 送信元デバイス
14 宛先デバイス
16 リンク
18 ビデオソース
20 ビデオエンコーダ
22 出力インターフェース
28 入力インターフェース
30 ビデオデコーダ
32 ディスプレイデバイス
34 記憶デバイス
40 ビデオデータメモリ
41 予測処理ユニット
42 動き推定処理ユニット
44 動き補償処理ユニット
46 イントラ予測処理ユニット
50 加算器
52 変換処理ユニット
54 量子化処理ユニット
56 エントロピー符号化処理ユニット
58 逆量子化処理ユニット
60 逆変換処理ユニット
62 加算器
64 参照ピクチャメモリ
78 ビデオデータメモリ
80 エントロピー復号処理ユニット
81 予測処理ユニット
82 動き補償処理ユニット
84 イントラ予測処理ユニット
86 逆量子化処理ユニット
88 逆変換処理ユニット
90 加算器
92 参照ピクチャメモリ

Claims (29)

  1. マルチレイヤビデオデータを復号する方法であって、
    レイヤセットの第1の出力レイヤセットを受信するステップと、
    前記レイヤセットの第2の出力レイヤセットを受信するステップと、
    前記第1の出力レイヤセットおよび前記第2の出力レイヤセットの少なくとも一方に関するビデオデータを復号するステップとを含む方法。
  2. 前記ビデオデータの第1のシンタックス要素を前記ビデオデータの第2のシンタックス要素にコピーすることによって前記第1のシンタックス要素を前記第2のシンタックス要素に変更するステップをさらに含む、請求項1に記載の方法。
  3. 前記第1のシンタックス要素はoutput_layer_flag[lsIdx][j]を含み、前記第2のシンタックス要素はoutput_layer_flag[i][j]を含む、請求項2に記載の方法。
  4. 前記ビデオデータのビデオパラメータセットを受信するステップと、
    前記ビデオデータの第1のシーケンスパラメータセット(SPS)を受信するステップと、
    前記第1のSPSに関連する前記ビデオデータの第1のレイヤを受信するステップと、
    空間解像度、ビット深度、またはカラーフォーマットのうちの少なくとも1つについて前記第1のレイヤとは異なる値を有し、かつ前記第1のSPSに関連する第2のレイヤを受信するステップと、
    前記ビデオパラメータセットおよび前記第1のSPSからの情報に基づいて前記第1および第2のレイヤのビデオデータを復号するステップとをさらに含む、請求項1に記載の方法。
  5. 前記ビデオデータのSPSを受信するステップであって、前記SPSがビデオ活用性情報(VUI)を含むステップをさらに含み、
    前記VUIを含む前記SPSにはタイミング情報が含まれない、請求項1に記載の方法。
  6. 前記レイヤセット内のレイヤが、デフォルトの出力レイヤセットである前記第1の出力レイヤセットおよび前記第2の出力レイヤセットのうちの一方の目標出力レイヤであり、前記デフォルトの出力レイヤセットの前記目標出力レイヤには明示的なシグナリングが行われない、請求項1に記載の方法。
  7. 前記ビデオデータに関するレイヤIDが0よりも大きいSPSを受信するステップをさらに含み、
    前記SPS内では信号sps_max_sub_layers_minus1およびsps_temporal_id_nesting_flagはシグナリングされない、請求項1に記載の方法。
  8. 0に等しいoutput_layer_set_idx[i]に使用される前記ビデオデータのシンタックス要素layer_id_included_flag[][]がレイヤセット0に関するシンタックス要素であると判定するステップと、
    前記判定に基づいてoutput_layer_set_idx_minus1[i]をoutput_layer_set_idx[i]にコピーするステップとをさらに含む、請求項1に記載の方法。
  9. ビデオパラメータセット(VPS)拡張シンタックスにおけるエントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を受信するステップと、
    複数の出力レイヤセットの各々に関して前記プロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照するステップと、
    前記出力レイヤセットに関して参照された前記プロファイル、ティア、およびレベルシンタックス構造からの情報に基づいて前記第1の出力レイヤセットおよび前記第2の出力レイヤセットのうちの一方のビデオデータを復号するステップとをさらに含む、請求項1に記載の方法。
  10. マルチレイヤビデオデータを符号化する方法であって、
    第1の出力レイヤセットおよび第2の出力レイヤセットの少なくとも一方に関するビデオデータを符号化するステップであって、前記第1の出力レイヤセットと前記第2の出力レイヤセットがともに1つのレイヤセットに関する出力レイヤセットであるステップと、
    前記レイヤセットの前記第1の出力レイヤセットを送信するステップと、
    前記レイヤセットの前記第2の出力レイヤセットを送信するステップとを含む方法。
  11. 前記ビデオデータの第1のシンタックス要素を前記ビデオデータの第2のシンタックス要素にコピーすることによって前記第1のシンタックス要素を前記第2のシンタックス要素に変更するステップをさらに含む、請求項10に記載の方法。
  12. 前記第1のシンタックス要素はoutput_layer_flag[lsIdx][j]を含み、前記第2のシンタックス要素はoutput_layer_flag[i][j]を含む、請求項11に記載の方法。
  13. 前記ビデオデータのビデオパラメータセットを送信するステップと、
    前記ビデオデータの第1のシーケンスパラメータセット(SPS)を送信するステップと、
    前記第1のSPSに関連する前記ビデオデータの第1のレイヤを送信するステップと、
    空間解像度、ビット深度、またはカラーフォーマットのうちの少なくとも1つについて前記第1のレイヤとは異なる値を有し、かつ前記第1のSPSに関連する第2のレイヤを送信するステップと、
    前記ビデオパラメータセットおよび前記第1のSPSからの情報に基づいて前記第1および第2のレイヤのビデオデータを符号化するステップとをさらに含む、請求項10に記載の方法。
  14. 前記ビデオデータのSPSを送信するステップであって、前記SPSがビデオ活用性情報(VUI)を含むステップをさらに含み、
    前記VUIを含む前記SPSにはタイミング情報が含まれない、請求項10に記載の方法。
  15. 前記レイヤセット内のレイヤが、デフォルトの出力レイヤセットである前記第1の出力レイヤセットおよび前記第2の出力レイヤセットのうちの一方の目標出力レイヤであり、前記デフォルトの出力レイヤセットの前記目標出力レイヤには明示的なシグナリングが行われない、請求項10に記載の方法。
  16. 前記ビデオデータに関するレイヤIDが0よりも大きいSPSを受信するステップをさらに含み、
    前記SPS内では信号sps_max_sub_layers_minus1およびsps_temporal_id_nesting_flagはシグナリングされない、請求項10に記載の方法。
  17. 0に等しいoutput_layer_set_idx[i]に使用される前記ビデオデータのシンタックス要素layer_id_included_flag[][]がレイヤセット0に関するシンタックス要素であると判定するステップと、
    前記判定に基づいてoutput_layer_set_idx_minus1[i]をoutput_layer_set_idx[i]にコピーするステップとをさらに含む、請求項10に記載の方法。
  18. ビデオパラメータセット(VPS)拡張シンタックスにおけるエントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を送信するステップと、
    複数の出力レイヤセットの各々に関して前記プロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照するステップと、
    前記出力レイヤセットに関して参照された前記プロファイル、ティア、およびレベルシンタックス構造からの情報に基づいて前記第1の出力レイヤセットおよび前記第2の出力レイヤセットのうちの一方のビデオデータを符号化するステップとをさらに含む、請求項10に記載の方法。
  19. ビデオデータを復号するための装置であって、
    前記ビデオデータを記憶するように構成されたメモリと、
    1つまたは複数の処理ユニットとを備え、前記1つまたは複数の処理ユニットが、
    レイヤセットの第1の出力レイヤセットを受信することと、
    前記レイヤセットの第2の出力レイヤセットを受信することと、
    前記第1の出力レイヤセットおよび前記第2の出力レイヤセットの少なくとも一方に関するビデオデータを復号することとを行うように構成される装置。
  20. 前記ビデオデータの第1のシンタックス要素を前記ビデオデータの第2のシンタックス要素にコピーすることによって前記第1のシンタックス要素を前記第2のシンタックス要素に変更することをさらに含む、請求項19に記載の装置。
  21. 前記第1のシンタックス要素はoutput_layer_flag[lsIdx][j]を含み、前記第2のシンタックス要素はoutput_layer_flag[i][j]を含む、請求項20に記載の装置。
  22. 前記1つまたは複数のプロセッサが、
    前記ビデオデータのビデオパラメータセットを受信することと、
    前記ビデオデータの第1のシーケンスパラメータセット(SPS)を受信することと、
    前記第1のSPSに関連する前記ビデオデータの第1のレイヤを受信することと、
    空間解像度、ビット深度、またはカラーフォーマットのうちの少なくとも1つについて前記第1のレイヤとは異なる値を有し、かつ前記第1のSPSに関連する第2のレイヤを受信することと、
    前記ビデオパラメータセットおよび前記第1のSPSからの情報に基づいて前記第1および第2のレイヤのビデオデータを復号することとを行うようにさらに構成される、請求項19に記載の装置。
  23. 前記1つまたは複数のプロセッサが、
    前記ビデオデータのSPSを受信することであって、前記SPSがビデオ活用性情報(VUI)を含む、受信することを行うようにさらに構成され、
    前記VUIを含む前記SPSにはタイミング情報が含まれない、請求項19に記載の装置。
  24. 前記レイヤセット内のレイヤが、デフォルトの出力レイヤセットである前記第1の出力レイヤセットおよび前記第2の出力レイヤセットのうちの一方の目標出力レイヤであり、前記デフォルトの出力レイヤセットの前記目標出力レイヤには明示的なシグナリングが行われない、請求項19に記載の装置。
  25. 前記1つまたは複数のプロセッサが、
    前記ビデオデータに関するレイヤIDが0よりも大きいSPSを受信することを行うようにさらに構成され、
    前記SPS内では信号sps_max_sub_layers_minus1およびsps_temporal_id_nesting_flagはシグナリングされない、請求項19に記載の装置。
  26. 前記1つまたは複数のプロセッサが、
    0に等しいoutput_layer_set_idx[i]に使用される前記ビデオデータのシンタックス要素layer_id_included_flag[][]がレイヤセット0に関するシンタックス要素であると判定することと、
    前記判定に基づいてoutput_layer_set_idx_minus1[i]をoutput_layer_set_idx[i]にコピーすることとを行うようにさらに構成される、請求項19に記載の装置。
  27. 前記1つまたは複数のプロセッサが、
    ビデオパラメータセット(VPS)拡張シンタックスにおけるエントロピー符号化されない1組のプロファイル、ティア、およびレベルシンタックス構造を受信することと、
    複数の出力レイヤセットの各々に関して前記プロファイル、ティア、およびレベルシンタックス構造のうちの1つを参照することと、
    前記出力レイヤセットに関して参照された前記プロファイル、ティア、およびレベルシンタックス構造からの情報に基づいて前記第1の出力レイヤセットおよび前記第2の出力レイヤセットのうちの一方のビデオデータを復号することとを行うようにさらに構成される、請求項19に記載の装置。
  28. ビデオデータを復号するための装置であって、
    レイヤセットの第1の出力レイヤセットを受信するための手段と、
    前記レイヤセットの第2の出力レイヤセットを受信するための手段と、
    前記第1の出力レイヤセットおよび前記第2の出力レイヤセットの少なくとも一方に関するビデオデータを復号するための手段とを備える装置。
  29. 命令を記憶した非一時的コンピュータ可読記憶媒体であって、前記命令が、1つまたは複数のプロセッサによって実行されたときに、前記1つまたは複数のプロセッサに、
    レイヤセットの第1の出力レイヤセットを受信することと、
    前記レイヤセットの第2の出力レイヤセットを受信することと、
    前記第1の出力レイヤセットおよび前記第2の出力レイヤセットの少なくとも一方に関するビデオデータを復号することとを行わせる、非一時的コンピュータ可読記憶媒体。
JP2016506688A 2013-04-08 2014-04-08 出力レイヤセットのビデオデータのコーディング Active JP6386532B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361809858P 2013-04-08 2013-04-08
US61/809,858 2013-04-08
US14/247,110 2014-04-07
US14/247,110 US9473771B2 (en) 2013-04-08 2014-04-07 Coding video data for an output layer set
PCT/US2014/033367 WO2014168965A1 (en) 2013-04-08 2014-04-08 Coding video data for an output layer set

Publications (3)

Publication Number Publication Date
JP2016514931A true JP2016514931A (ja) 2016-05-23
JP2016514931A5 JP2016514931A5 (ja) 2017-03-30
JP6386532B2 JP6386532B2 (ja) 2018-09-05

Family

ID=51654435

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016506689A Active JP6370879B2 (ja) 2013-04-08 2014-04-08 ビデオコーディング拡張のためのパラメータセット設計
JP2016506688A Active JP6386532B2 (ja) 2013-04-08 2014-04-08 出力レイヤセットのビデオデータのコーディング

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016506689A Active JP6370879B2 (ja) 2013-04-08 2014-04-08 ビデオコーディング拡張のためのパラメータセット設計

Country Status (7)

Country Link
US (5) US20140307803A1 (ja)
EP (2) EP2984843B1 (ja)
JP (2) JP6370879B2 (ja)
KR (2) KR101787864B1 (ja)
CN (2) CN105103561B (ja)
ES (1) ES2837853T3 (ja)
WO (5) WO2014168976A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022533307A (ja) * 2019-11-22 2022-07-22 テンセント・アメリカ・エルエルシー ニューラルネットワークモデル圧縮のための量子化、適応ブロック分割、及びコードブック符号化の方法及び装置、並びにコンピュータープログラム
US11671110B2 (en) 2019-11-22 2023-06-06 Tencent America LLC Method and apparatus for neural network model compression/decompression
US12010310B2 (en) 2019-11-22 2024-06-11 Tencent America LLC Method and apparatus for quantization, adaptive block partitioning and codebook coding for neural network model compression

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8767824B2 (en) * 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
US9451252B2 (en) 2012-01-14 2016-09-20 Qualcomm Incorporated Coding parameter sets and NAL unit headers for video coding
KR20130116782A (ko) 2012-04-16 2013-10-24 한국전자통신연구원 계층적 비디오 부호화에서의 계층정보 표현방식
US9602827B2 (en) 2012-07-02 2017-03-21 Qualcomm Incorporated Video parameter set including an offset syntax element
EP2868092A4 (en) * 2012-07-02 2016-05-04 Nokia Technologies Oy METHOD AND DEVICE FOR VIDEO CODING
US20140307803A1 (en) 2013-04-08 2014-10-16 Qualcomm Incorporated Non-entropy encoded layer dependency information
EP3056007A4 (en) * 2013-10-11 2017-05-24 Sharp Kabushiki Kaisha Color information and chromaticity signaling
EP3056005A4 (en) * 2013-10-11 2017-05-17 Sharp Kabushiki Kaisha Signaling information for coding
KR102246546B1 (ko) * 2013-10-12 2021-04-30 삼성전자주식회사 멀티 레이어 비디오 부호화 방법 및 장치, 멀티 레이어 비디오 복호화 방법 및 장치
WO2015060699A1 (ko) * 2013-10-26 2015-04-30 삼성전자 주식회사 멀티 레이어 비디오 부호화 방법 및 장치, 멀티 레이어 비디오 복호화 방법 및 장치
JP6472449B2 (ja) * 2014-01-02 2019-02-20 シャープ株式会社 ビデオシーケンスを復号するための方法
WO2015102042A1 (en) * 2014-01-02 2015-07-09 Sharp Kabushiki Kaisha Parameter set signaling
US10171823B2 (en) * 2014-05-26 2019-01-01 Sharp Kabushiki Kaisha Image decoding device and image coding device
CN104093028B (zh) * 2014-06-25 2019-02-01 中兴通讯股份有限公司 一种设备能力协商的方法和装置
US10123028B2 (en) * 2014-09-17 2018-11-06 Mediatek Inc. Syntax parsing apparatus with multiple syntax parsing circuits for processing multiple image regions within same frame or processing multiple frames and related syntax parsing method
JP6530854B2 (ja) 2015-07-16 2019-06-12 ドルビー ラボラトリーズ ライセンシング コーポレイション Hdrおよび広色域の信号のための信号整形および符号化
WO2018037985A1 (ja) * 2016-08-22 2018-03-01 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
EP3577899A4 (en) * 2017-01-31 2020-06-17 Sharp Kabushiki Kaisha SYSTEMS AND METHODS FOR SCALING TRANSFORM COEFFICIENT LEVEL VALUES
JP2020515169A (ja) * 2017-03-20 2020-05-21 シャープ株式会社 メディアアプリケーションフォーマットでスケーラブル動画像をシグナリングするためのシステム及び方法
CN107241325A (zh) * 2017-06-05 2017-10-10 威创集团股份有限公司 一种ip视频超低延时传输方法及装置
CN108769681B (zh) * 2018-06-20 2022-06-10 腾讯科技(深圳)有限公司 视频编码、解码方法、装置、计算机设备和存储介质
US20220210403A1 (en) * 2019-04-15 2022-06-30 Lg Electronics Inc. Scaling list parameter-based video or image coding
US11432004B2 (en) * 2019-04-25 2022-08-30 Hfi Innovation Inc. Method and apparatus of constraining merge flag signaling in video coding
KR20210149867A (ko) * 2019-06-11 2021-12-09 엘지전자 주식회사 스케일링 리스트 파라미터 기반 비디오 또는 영상 코딩
US11109069B2 (en) * 2019-09-20 2021-08-31 Tencent America LLC Signaling of scalability parameters in video bitstream
US11375223B2 (en) * 2019-09-20 2022-06-28 Tencent America LLC Method for signaling output layer set with sub-picture
BR112022005466A2 (pt) * 2019-09-24 2022-06-14 Huawei Tech Co Ltd Dispositivos de codificação, e de decodificação de vídeo, e de produto de computador, e métodos associados
WO2021061530A1 (en) * 2019-09-24 2021-04-01 Futurewei Technologies, Inc. Ols for spatial and snr scalability
WO2021061394A1 (en) * 2019-09-24 2021-04-01 Futurewei Technologies, Inc. Simulcast layers for multiview in video coding
BR112022005370A2 (pt) 2019-09-24 2022-06-14 Huawei Tech Co Ltd Sinalização de parâmetros de dpb para fluxos de bits de vídeo de múltiplas camadas
JP7381731B2 (ja) * 2019-09-24 2023-11-15 華為技術有限公司 マルチレイヤービデオビットストリームにおける不要なレイヤーの禁止
BR112022005485A2 (pt) * 2019-09-24 2022-06-14 Huawei Tech Co Ltd Ols para escalabilidade múltiplas visualizações
WO2021063419A1 (en) 2019-10-05 2021-04-08 Beijing Bytedance Network Technology Co., Ltd. Downsampling filter type for chroma blending mask generation
CN114514751B (zh) * 2019-10-07 2024-03-15 华为技术有限公司 避免多层视频码流中的冗余指示
EP4026094A4 (en) * 2019-10-07 2022-11-09 Huawei Technologies Co., Ltd. VIDEO-BASED POINT CLOUD COMPRESSION (V-PCC) TIME INFORMATION
MX2022004193A (es) * 2019-10-07 2022-05-02 Huawei Tech Co Ltd Un codificador, un decodificador y metodos correspondientes.
CN114631317B (zh) 2019-10-18 2024-03-15 北京字节跳动网络技术有限公司 子图片的参数集信令中的语法约束
US20210168406A1 (en) * 2019-11-29 2021-06-03 Tencent America LLC Signaling of video coding tools supporting various chroma formats
WO2021134015A1 (en) 2019-12-26 2021-07-01 Bytedance Inc. Profile, tier and layer indication in video coding
EP4062634A4 (en) 2019-12-26 2022-12-28 ByteDance Inc. LIMITATIONS ON SIGNALING HYPOTHETICAL REFERENCE DECODER PARAMETERS IN VIDEO BITSTREAMS
WO2021129866A1 (en) 2019-12-27 2021-07-01 Beijing Bytedance Network Technology Co., Ltd. Signaling of slice types in video pictures headers
WO2021128295A1 (en) * 2019-12-27 2021-07-01 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods for inter prediction
EP4066386A4 (en) 2019-12-27 2023-01-25 ByteDance Inc. SIGNALING SUBPICTURES IN VIDEO ENCODING
CN117395441A (zh) 2020-01-09 2024-01-12 字节跳动有限公司 视频流中的填充数据单元的处理
US11272214B2 (en) * 2020-01-27 2022-03-08 Tencent America LLC Method for picture output with output layer set
MX2022011208A (es) * 2020-03-17 2022-09-19 Bytedance Inc Uso de conjunto de parametros de video en codificacion de video.
CA3173179A1 (en) * 2020-03-24 2021-09-30 Biao Wang An encoder, a decoder and corresponding methods for video or picture bitstream
US11297350B1 (en) * 2020-03-27 2022-04-05 Tencent America LLC Method for output layer set for multilayered video stream
US11228776B1 (en) * 2020-03-27 2022-01-18 Tencent America LLC Method for output layer set mode in multilayered video stream
WO2021201663A1 (ko) * 2020-04-03 2021-10-07 엘지전자 주식회사 Sps를 시그널링하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2021218890A1 (en) * 2020-04-30 2021-11-04 Mediatek Inc. Method and apparatus for imposing bitstream constraints in video coding
KR20220037382A (ko) 2020-09-17 2022-03-24 레몬 인크. 디코더 구성 레코드에서의 픽처 치수 표시
US11792433B2 (en) * 2020-09-28 2023-10-17 Sharp Kabushiki Kaisha Systems and methods for signaling profile and level information in video coding
WO2022139260A1 (ko) * 2020-12-21 2022-06-30 엘지전자 주식회사 미디어 파일을 생성하고 처리하는 방법 및 장치
KR20240039139A (ko) * 2021-07-09 2024-03-26 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 비디오 코딩을 위한 잔여 및 계수 코딩
US20230098691A1 (en) * 2021-09-29 2023-03-30 Tencent America LLC Techniques for constraint flag signaling for range extension with extended precision

Family Cites Families (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100393138C (zh) 1996-11-06 2008-06-04 松下电器产业株式会社 图象解码方法
US6094443A (en) 1997-10-30 2000-07-25 Advanced Micro Devices, Inc. Apparatus and method for detecting a prescribed pattern in a data stream by selectively skipping groups of nonrelevant data bytes
JP3990011B2 (ja) 1997-10-31 2007-10-10 沖電気工業株式会社 復号画像変換回路および復号画像変換装置
US6301428B1 (en) 1997-12-09 2001-10-09 Lsi Logic Corporation Compressed video editor with transition buffer matcher
US6445776B1 (en) 1998-12-31 2002-09-03 Nortel Networks Limited Abstract interface for media and telephony services
US6651252B1 (en) 1999-10-27 2003-11-18 Diva Systems Corporation Method and apparatus for transmitting video and graphics in a compressed form
JP2001309372A (ja) 2000-04-17 2001-11-02 Mitsubishi Electric Corp 符号化装置
US7302490B1 (en) 2000-05-03 2007-11-27 Microsoft Corporation Media file format to support switching between multiple timeline-altered media streams
JP2002010261A (ja) 2000-06-16 2002-01-11 Nec Corp 画像符号化方式変換装置
US7548565B2 (en) 2000-07-24 2009-06-16 Vmark, Inc. Method and apparatus for fast metadata generation, delivery and access for live broadcast program
US20040006575A1 (en) 2002-04-29 2004-01-08 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
EP1385337A1 (en) 2002-07-22 2004-01-28 Deutsche Thomson-Brandt Gmbh Method and apparatus for storing and transmitting audio-visual data
US6661358B1 (en) 2002-09-17 2003-12-09 Enroute, Inc. Decoding variable length codes without conditional branching
WO2004030369A1 (en) 2002-09-27 2004-04-08 Videosoft, Inc. Real-time video coding/decoding
US7373005B2 (en) 2003-04-10 2008-05-13 Micron Technology, Inc. Compression system for integrated sensor devices
US7724818B2 (en) 2003-04-30 2010-05-25 Nokia Corporation Method for coding sequences of pictures
US8582659B2 (en) 2003-09-07 2013-11-12 Microsoft Corporation Determining a decoding time stamp from buffer fullness
WO2005081532A1 (en) 2004-01-21 2005-09-01 Koninklijke Philips Electronics N.V. Method of spatial and snr fine granular scalable video encoding and transmission
US6989773B2 (en) 2004-02-13 2006-01-24 Hewlett-Packard Development Company, L.P. Media data encoding device
CN101095348B (zh) 2004-03-03 2014-08-13 分组视频网络技术方案有限公司 用于从网络节点取回数字多媒体内容的系统和方法
US20050254575A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
KR20050113501A (ko) 2004-05-29 2005-12-02 삼성전자주식회사 에이치 264 비디오 디코더를 위한 구문 분석기
KR100662350B1 (ko) 2004-08-23 2007-01-02 엘지전자 주식회사 영상 전송 장치 및 방법
US9560367B2 (en) 2004-09-03 2017-01-31 Nokia Technologies Oy Parameter set and picture header in video coding
DE102004042819A1 (de) 2004-09-03 2006-03-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen eines codierten Multikanalsignals und Vorrichtung und Verfahren zum Decodieren eines codierten Multikanalsignals
JP4727342B2 (ja) 2004-09-15 2011-07-20 ソニー株式会社 画像処理装置、画像処理方法、画像処理プログラム及びプログラム格納媒体
US20060098001A1 (en) 2004-10-26 2006-05-11 Lai Jimmy K L System and method for effectively preventing image tearing artifacts in displayed image data
CN100593332C (zh) 2004-12-10 2010-03-03 美国博通公司 有线电视通信系统中的上行信道绑定
WO2006075901A1 (en) 2005-01-14 2006-07-20 Sungkyunkwan University Methods of and apparatuses for adaptive entropy encoding and adaptive entropy decoding for scalable video encoding
RU2377736C2 (ru) 2005-04-13 2009-12-27 Нокиа Корпорейшн Кодирование, хранение и передача информации о масштабируемости
US20060233247A1 (en) 2005-04-13 2006-10-19 Visharam Mohammed Z Storing SVC streams in the AVC file format
WO2006111845A2 (en) 2005-04-22 2006-10-26 Nortel Networks Limited Session initiation from application servers in an ip multimedia subsystem
US20060239563A1 (en) 2005-04-25 2006-10-26 Nokia Corporation Method and device for compressed domain video editing
US7974341B2 (en) 2005-05-03 2011-07-05 Qualcomm, Incorporated Rate control for multi-layer video design
US8457203B2 (en) 2005-05-26 2013-06-04 Ntt Docomo, Inc. Method and apparatus for coding motion and prediction weighting parameters
US8208564B2 (en) 2005-06-24 2012-06-26 Ntt Docomo, Inc. Method and apparatus for video encoding and decoding using adaptive interpolation
WO2007042914A1 (en) * 2005-10-11 2007-04-19 Nokia Corporation Efficient decoded picture buffer management for scalable video coding
US20070177671A1 (en) 2006-01-12 2007-08-02 Lg Electronics Inc. Processing multiview video
EP1999967A2 (en) 2006-03-29 2008-12-10 Thomson Licensing Multi-view video coding method and device
AU2007232607B2 (en) 2006-03-30 2010-09-16 Lg Electronics Inc. A method and apparatus for decoding/encoding a video signal
US8358704B2 (en) 2006-04-04 2013-01-22 Qualcomm Incorporated Frame level multimedia decoding with frame information table
US7535383B2 (en) * 2006-07-10 2009-05-19 Sharp Laboratories Of America Inc. Methods and systems for signaling multi-layer bitstream data
EP1985121A4 (en) 2006-11-17 2010-01-13 Lg Electronics Inc METHOD AND DEVICE FOR DECODING / CODING A VIDEO SIGNAL
EP2418851A3 (en) 2006-12-21 2012-05-23 Thomson Licensing Methods and apparatus for improved signaling using high level syntax for multi-view video coding and decoding
EP1994721A4 (en) 2007-01-12 2013-09-25 Univ Kyung Hee Univ Ind Coop Group PACKET FORMAT OF A NETWORK ABSTRACTION LAYER UNIT, ALGORITHM AND VIDEO ENCODING AND DECODING APPARATUS USING THE SAME, QOS CONTROL ALGORITHM AND IPV6 LABEL SWITCHING APPARATUS USING THE FORMAT
CN101669367A (zh) 2007-03-02 2010-03-10 Lg电子株式会社 用于解码/编码视频信号的方法及设备
US8548261B2 (en) 2007-04-11 2013-10-01 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding multi-view image
US20080253467A1 (en) 2007-04-13 2008-10-16 Nokia Corporation System and method for using redundant pictures for inter-layer prediction in scalable video coding
US20090003431A1 (en) 2007-06-28 2009-01-01 Lihua Zhu Method for encoding video data in a scalable manner
PL2528341T3 (pl) 2007-04-18 2017-10-31 Dolby Int Ab System kodowania, stosujący uzupełniający zestaw parametrów sekwencyjnych do skalowalnego kodowania wideo lub kodowania wielowidokowego
KR101365596B1 (ko) 2007-09-14 2014-03-12 삼성전자주식회사 영상 부호화장치 및 방법과 그 영상 복호화장치 및 방법
EP2198620A2 (en) 2007-10-05 2010-06-23 Thomson Licensing Methods and apparatus for incorporating video usability information (vui) within a multi-view video (mvc) coding system
US8891619B2 (en) 2008-06-16 2014-11-18 Dolby Laboratories Licensing Corporation Rate control model adaptation based on slice dependencies for video coding
JP5462259B2 (ja) 2008-07-16 2014-04-02 シズベル インターナショナル エス.アー. トラックおよびトラックサブセットグループ化の方法および装置
US8332725B2 (en) 2008-08-20 2012-12-11 Densbits Technologies Ltd. Reprogramming non volatile memory portions
US20100091841A1 (en) 2008-10-07 2010-04-15 Motorola, Inc. System and method of optimized bit extraction for scalable video coding
US20100132007A1 (en) 2008-11-25 2010-05-27 Cisco Technology, Inc. Accelerating channel change time with external picture property markings
US8683515B2 (en) 2008-11-25 2014-03-25 Cisco Technology, Inc. Receiver for accelerating channel change time
EP2392138A4 (en) 2009-01-28 2012-08-29 Nokia Corp METHOD AND APPARATUS FOR VIDEO ENCODING AND DECODING
US8760492B2 (en) 2009-01-30 2014-06-24 Polycom, Inc. Method and system for switching between video streams in a continuous presence conference
KR101710619B1 (ko) 2009-02-04 2017-02-28 삼성전자주식회사 단계적인 영상 부호화, 복호화 방법 및 장치
US9036705B2 (en) 2009-03-13 2015-05-19 Telefonaktiebolaget L M Ericsson (Publ) Technique for bringing encoded data items into conformity with a scalable coding protocol
KR20120013966A (ko) 2009-05-01 2012-02-15 톰슨 라이센싱 3dv를 위한 기준 화상 리스트
US9774882B2 (en) 2009-07-04 2017-09-26 Dolby Laboratories Licensing Corporation Encoding and decoding architectures for format compatible 3D video delivery
KR101504887B1 (ko) 2009-10-23 2015-03-24 삼성전자 주식회사 데이터 단위 레벨의 독립적 파싱 또는 복호화에 따른 비디오 복호화 방법 및 그 장치, 그리고 데이터 단위 레벨의 독립적 파싱 또는 복호화를 위한 비디오 부호화 방법 및 그 장치
US8462797B2 (en) 2009-11-30 2013-06-11 Alcatel Lucent Method of priority based transmission of wireless video
US8520958B2 (en) 2009-12-21 2013-08-27 Stmicroelectronics International N.V. Parallelization of variable length decoding
US9094658B2 (en) 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
US9131033B2 (en) * 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
US20120063515A1 (en) 2010-09-09 2012-03-15 Qualcomm Incorporated Efficient Coding of Video Parameters for Weighted Motion Compensated Prediction in Video Coding
US20120124633A1 (en) 2010-11-15 2012-05-17 International Business Machines Corporation Wireless Video Streaming Quality Management for Bandwidth Constrained Cellular Network
JP5752268B2 (ja) 2011-01-14 2015-07-22 ヴィディオ・インコーポレーテッド 時間スケーラビリティのための高いレイヤのシンタックス
US9113172B2 (en) 2011-01-14 2015-08-18 Vidyo, Inc. Techniques for describing temporal coding structure
US9706227B2 (en) * 2011-03-10 2017-07-11 Qualcomm Incorporated Video coding techniques for coding dependent pictures after random access
CN103416002B (zh) 2011-03-10 2015-04-01 维德约股份有限公司 视频位流中的渲染定向信息
CA2829335A1 (en) 2011-03-10 2012-09-13 Vidyo, Inc. Parameter set maintenance in video coding
WO2012122246A1 (en) * 2011-03-10 2012-09-13 Vidyo, Inc. Dependency parameter set for scalable video coding
US9635355B2 (en) 2011-07-28 2017-04-25 Qualcomm Incorporated Multiview video coding
US10237565B2 (en) 2011-08-01 2019-03-19 Qualcomm Incorporated Coding parameter sets for various dimensions in video coding
US8787688B2 (en) 2011-10-13 2014-07-22 Sharp Laboratories Of America, Inc. Tracking a reference picture based on a designated picture on an electronic device
US20130114694A1 (en) 2011-11-08 2013-05-09 Qualcomm Incorporated Parameter set groups for coded video data
TWI556629B (zh) * 2012-01-03 2016-11-01 杜比實驗室特許公司 規定視覺動態範圍編碼操作及參數
WO2013106521A2 (en) 2012-01-10 2013-07-18 Vidyo, Inc. Techniques for layered video encoding and decoding
US9451252B2 (en) 2012-01-14 2016-09-20 Qualcomm Incorporated Coding parameter sets and NAL unit headers for video coding
EP2838264A4 (en) 2012-04-23 2016-01-06 Samsung Electronics Co Ltd METHOD FOR ENCODING MULTIVUE VIDEO USING A MULTIVUE VIDEO PREDICTION REFERENCE LIST AND DEVICE THEREFOR, AND METHOD FOR DECODING MULTIVUE VIDEO USING A MULTIVUE VIDEO PREDICTION REFERENCE LIST AND DEVICE THEREOF
US9602827B2 (en) 2012-07-02 2017-03-21 Qualcomm Incorporated Video parameter set including an offset syntax element
US9654802B2 (en) 2012-09-24 2017-05-16 Qualcomm Incorporated Sequence level flag for sub-picture level coded picture buffer parameters
US20150245063A1 (en) 2012-10-09 2015-08-27 Nokia Technologies Oy Method and apparatus for video coding
WO2014103606A1 (ja) 2012-12-26 2014-07-03 シャープ株式会社 画像復号装置
US20140218473A1 (en) 2013-01-07 2014-08-07 Nokia Corporation Method and apparatus for video coding and decoding
US20140307803A1 (en) 2013-04-08 2014-10-16 Qualcomm Incorporated Non-entropy encoded layer dependency information

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
ADARSH K. RAMASUBRAMONIAN ET AL.: "MV-HEVC/SHVC HLS: Representation format information in VPS", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-N0092r1, JPN6018026334, July 2013 (2013-07-01), pages 1 - 5 *
BENJAMIN BROSS ET AL., HIGH EFFICIENCY VIDEO CODING (HEVC) TEXT SPECIFICATION DRAFT 10 (FOR FDIS & LAST CALL), JPN6017014846, 19 March 2013 (2013-03-19), pages 2 - 9 *
BENJAMIN BROSS ET AL.: "High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Last Call)", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-L1003_v34, JPN6017014846, March 2013 (2013-03-01), pages 2 - 9, XP055126521 *
BYEONGDOO CHOI ET AL.: "Video parameter set design", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-L0132, JPN6018026335, January 2013 (2013-01-01), pages 1 - 5 *
JIANLE CHEN ET AL., SHVC DRAFT TEXT 1, JPN6017014844, 20 March 2013 (2013-03-20), pages pp.7-11,16 *
JIANLE CHEN ET AL.: "SHVC Draft Text 1", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-L1008, JPN6017014844, March 2013 (2013-03-01), pages pp.7-11,16 *
JILL BOYCE: "VPS syntax for scalable and 3D extensions", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-K0204, JPN6018026332, October 2012 (2012-10-01), pages 1 - 6 *
THOMAS RUSERT ET AL., INTER-LAYER SPS PREDICTION FOR HEVC EXTENSIONS, JPN6017014847, 19 January 2013 (2013-01-19) *
THOMAS RUSERT: "Inter-layer SPS prediction for HEVC extensions", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-L0137, JPN6017014847, January 2013 (2013-01-01), pages 1 - 8 *
YE-KUI WANG, YING CHEN AND ADARSH K. RAMASUBRAMONIAN: "AHG9: On VPS and SPS in HEVC 3DV and scalable extensions", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-M0268_v2, JPN6018026333, April 2013 (2013-04-01), pages 1 - 25 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022533307A (ja) * 2019-11-22 2022-07-22 テンセント・アメリカ・エルエルシー ニューラルネットワークモデル圧縮のための量子化、適応ブロック分割、及びコードブック符号化の方法及び装置、並びにコンピュータープログラム
US11671110B2 (en) 2019-11-22 2023-06-06 Tencent America LLC Method and apparatus for neural network model compression/decompression
JP7337950B2 (ja) 2019-11-22 2023-09-04 テンセント・アメリカ・エルエルシー ニューラルネットワークモデル圧縮のための量子化、適応ブロック分割、及びコードブック符号化の方法及び装置、並びにコンピュータープログラム
US11791837B2 (en) 2019-11-22 2023-10-17 Tencent America LLC Method and apparatus for neural network model compression/decompression
US12010310B2 (en) 2019-11-22 2024-06-11 Tencent America LLC Method and apparatus for quantization, adaptive block partitioning and codebook coding for neural network model compression

Also Published As

Publication number Publication date
US9565437B2 (en) 2017-02-07
CN105103561B (zh) 2019-10-18
CN105075262A (zh) 2015-11-18
EP2984833A1 (en) 2016-02-17
ES2837853T3 (es) 2021-07-01
EP2984843B1 (en) 2024-04-24
WO2014168965A1 (en) 2014-10-16
KR20150139945A (ko) 2015-12-14
WO2014168976A1 (en) 2014-10-16
EP2984833B1 (en) 2020-09-23
WO2014168982A1 (en) 2014-10-16
KR20150139946A (ko) 2015-12-14
EP2984843C0 (en) 2024-04-24
US9473771B2 (en) 2016-10-18
WO2014168971A1 (en) 2014-10-16
US20140301441A1 (en) 2014-10-09
US20140301483A1 (en) 2014-10-09
JP6386532B2 (ja) 2018-09-05
US20140301484A1 (en) 2014-10-09
WO2014168978A1 (en) 2014-10-16
US20140307803A1 (en) 2014-10-16
KR101787864B1 (ko) 2017-10-18
US20140301469A1 (en) 2014-10-09
CN105103561A (zh) 2015-11-25
US9467700B2 (en) 2016-10-11
EP2984843A1 (en) 2016-02-17
US9485508B2 (en) 2016-11-01
CN105075262B (zh) 2019-04-05
KR102220258B1 (ko) 2021-02-24
BR112015025643A2 (pt) 2017-07-18
JP6370879B2 (ja) 2018-08-08
JP2016519510A (ja) 2016-06-30

Similar Documents

Publication Publication Date Title
JP6386532B2 (ja) 出力レイヤセットのビデオデータのコーディング
JP6608386B2 (ja) マルチレイヤコーデックのためのhevc復号ピクチャハッシュseiメッセージの使用
JP6498673B2 (ja) マルチレイヤビデオコーディングにおける色域スケーラビリティのための3dルックアップテーブルに関する色値のシグナリング
JP6585096B2 (ja) マルチレイヤビデオコーディング
JP6158422B2 (ja) アラインされていないirapピクチャを含み得るマルチレイヤビットストリームのクロスレイヤpocアラインメント
JP2019176483A (ja) マルチレイヤビデオコーディングにおける3次元ルックアップテーブルベースの色域スケーラビリティ
KR102434872B1 (ko) 멀티-계층 비디오 코딩에 대한 poc 값 설계
JP6701100B2 (ja) マルチレイヤビデオコーデック内の回復点seiメッセージ
JP2017507513A (ja) マルチレイヤビデオコーディングにおける色域スケーラビリティのための3dルックアップテーブルに関する区分情報のシグナリング
JP2017507545A (ja) マルチレイヤコード化においてレイヤ間参照ピクチャセット(RPS)をコード化し、ビットストリーム終端(EoB)ネットワークアクセスレイヤ(NAL)単位をコード化するための方法
BR112015025643B1 (pt) Codificação de dados de vídeo para um conjunto de camada de saída

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170220

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170220

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170220

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170410

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170915

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171215

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180515

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20180523

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180713

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180809

R150 Certificate of patent or registration of utility model

Ref document number: 6386532

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250