JP2022550320A - ビデオ符号化におけるseiメッセージ依存性の簡略化 - Google Patents

ビデオ符号化におけるseiメッセージ依存性の簡略化 Download PDF

Info

Publication number
JP2022550320A
JP2022550320A JP2022519005A JP2022519005A JP2022550320A JP 2022550320 A JP2022550320 A JP 2022550320A JP 2022519005 A JP2022519005 A JP 2022519005A JP 2022519005 A JP2022519005 A JP 2022519005A JP 2022550320 A JP2022550320 A JP 2022550320A
Authority
JP
Japan
Prior art keywords
hrd
sei
sei message
flag
bitstream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022519005A
Other languages
English (en)
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 JP2022550320A publication Critical patent/JP2022550320A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • 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)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

ビデオ符号化メカニズムが開示される。メカニズムは、符号化済みピクチャをビットストリームに符号化することを含む。復号ユニット(DU)仮想参照デコーダ(HRD)パラメータ存在フラグ(du_hrd_params_present_flag)を含む現在の補足拡張情報(SEI)メッセージもビットストリームに符号化される。du_hrd_params_present_flagは、ビットストリームにDUレベルHRDパラメータが存在するかどうかを指定する。ビットストリーム適合性試験のセットが、現在のSEIメッセージに基づいてビットストリームに対して実行される。ビットストリームは、デコーダへの通信のために記憶される。

Description

関連出願の相互参照
本特許出願は、参照により本特許出願に援用されるYe-Kui Wangによって2019年9月24日に出願された「Video Coding Improvements」と題する米国仮特許出願第62/905,236号の利益を主張する。
本開示は、一般に、ビデオ符号化に関し、具体的には、マルチレイヤビットストリームの符号化をサポートするためのシグナリングパラメータの改善に関する。
たとえ比較的短いビデオであっても、これを表すのに必要なビデオデータはかなりの量となるため、データのストリーミングが行われたり、帯域幅容量に限りがある通信ネットワークにまたがってデータが伝達されたりする場合には困難が生じることがある。このため、ビデオデータは通常、今日の通信ネットワークを介して伝達される前に圧縮される。ビデオが記憶装置に格納される場合に、メモリリソースが乏しい場合もあるため、ビデオのサイズが問題になることもある。ビデオ圧縮デバイスは多くの場合、送信または保管に先立ち供給元でソフトウェアおよび/またはハードウェアを使ってビデオデータを符号化し、そうすることでデジタルビデオ画像を表すのに必要なデータの量を減らす。その後に、圧縮されたデータは、供給先でビデオデータを復号するビデオ解凍デバイスによって受け取られる。ネットワークリソースには限りがあり、より高いビデオ品質を求める要求が増大しているため、画質をほとんど犠牲にしないか全く犠牲にせずに圧縮率を高める改善された圧縮・解凍技法が望まれている。
一実施形態では、本開示は、デコーダによって実施される方法を含み、本方法は、デコーダの受信機によって、符号化済みピクチャを含むビットストリームと、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定する復号ユニット(DU:decoding unit)仮想参照デコーダ(HRD:hypothetical reference decoder)パラメータ存在フラグ(du_hrd_params_present_flag)を含む現在の補足拡張情報(SEI:supplemental enhancement information)メッセージとを受信するステップと、デコーダのプロセッサによって、復号済みピクチャを生成するために符号化済みピクチャを復号するステップとを含む。
ビデオ符号化システムは、ビデオシーケンスを一連の符号化済みピクチャとしてビットストリームに符号化することができる。ビデオシーケンスの復号をサポートするために、様々なパラメータを符号化することもできる。例えば、ビデオパラメータセット(VPS:video parameter set)は、ビデオシーケンス内のレイヤ、サブレイヤ、および/または出力レイヤセット(OLS:output layer set)の構成に関連するパラメータを含むことができる。さらに、ビデオシーケンスは、標準への適合性についてHRDによってチェックされ得る。そのような適合性試験をサポートするために、VPSおよび/またはSPSはHRDパラメータを含むことができる。HRD関連パラメータもSEIメッセージに含めることができる。SEIメッセージは、復号済みピクチャ内のサンプルの値を決定するために復号プロセスによって必要とされない情報を含む。例えば、SEIメッセージは、VPSに含まれるHRDパラメータに照らしてHRDプロセスをさらに記述するHRDパラメータを含むことができる。いくつかのビデオ符号化システムでは、SEIメッセージは、VPSを直接参照するパラメータを含み得る。この依存関係は、特定の困難をもたらす。例えば、VPSは、単一レイヤを含むOLSを送信するときにビットストリームから除去され得る。デコーダが1つのレイヤのみを受信する場合、VPSは有用な情報を含まないため、この手法はいくつかの場合に有益であり得る。しかしながら、VPSを省略することにより、VPSへの依存性に起因してSEIメッセージが適切に分析されることを妨げ得る。具体的には、VPSを省略すると、VPS内でSEIメッセージが依存するデータがデコーダで受信されないため、SEIメッセージがエラーを返す可能性がある。
この例は、VPSとSEIメッセージとの間の依存関係を除去するためのメカニズムを含む。例えば、du_hrd_params_present_flagは、現在のSEIメッセージ内に符号化することができる。du_hrd_params_present_flagは、HRDがアクセスユニット(AU:access unit)レベルで動作するか、DUレベルで動作するかを指定する。さらに、現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージに存在するか、または復号ユニット情報(DUI:decoding unit information)SEIメッセージに存在するかを指定するDU符号化済みピクチャバッファ(CPB:coded picture buffer)パラメータ・イン・ピクチャタイミング(PT:picture timing)SEIフラグ(du_cpb_params_in_pic_timing_sei_flag)を含むことができる。これらのフラグを現在のSEIメッセージに含めることにより、現在のSEIメッセージはVPSに依存しない。したがって、ビットストリームからVPSを省略しても、現在のSEIメッセージをパースすることができる。したがって、様々なエラーを回避することができる。その結果、エンコーダおよびデコーダの機能が向上する。さらに、SEIメッセージとVPSとの間の依存関係を除去することは、特定の場合にはVPSの除去をサポートし、これは符号化効率を向上させ、したがって、エンコーダおよびデコーダの両方におけるプロセッサ、メモリ、および/またはネットワークシグナリングリソース使用量を低減する。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、du_hrd_params_present_flagは、HRDがアクセスユニット(AU)レベルで動作するかDUレベルで動作するかをさらに指定する。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実施では、DUレベルHRDパラメータが存在しHRDがAUレベルまたはDUレベルで動作し得ることを指定するときにdu_hrd_params_present_flagが1に設定され、DUレベルHRDパラメータが存在せずHRDがAUレベルで動作することを指定するときに0に設定される。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在するかどうかを指定するDU符号化済みピクチャバッファ(CPB)パラメータ・イン・ピクチャタイミング(PT)SEIフラグ(du_cpb_params_in_pic_timing_sei_flag)をさらに含む。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、du_cpb_params_in_pic_timing_sei_flagは、DUレベルCPB除去遅延パラメータが復号ユニット情報(DUI)SEIメッセージ内に存在するかどうかをさらに指定する。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在しDUI SEIメッセージが利用できないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが1に設定され、DUレベルCPB除去遅延パラメータがDUI SEIメッセージ内に存在しPT SEIメッセージがDUレベルCPB除去遅延パラメータを含まないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが0に設定される。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、現在のSEIメッセージは、バッファリング期間(BP:buffering period)SEIメッセージ、PT SEIメッセージ、またはDUI SEIメッセージである。
一実施形態では、本開示は、エンコーダによって実施される方法を含み、本方法は、エンコーダのプロセッサによって、符号化済みピクチャをビットストリームに符号化するステップと、プロセッサによって、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するdu_hrd_params_present_flagを含む現在のSEIメッセージをビットストリーム内に符号化するステップと、プロセッサによって、現在のSEIメッセージに基づいてビットストリームに対してビットストリーム適合性試験のセットを実行するステップと、プロセッサに結合されたメモリによって、デコーダへの通信のためにビットストリームを記憶するステップとを含む。
ビデオ符号化システムは、ビデオシーケンスを一連の符号化済みピクチャとしてビットストリームに符号化することができる。ビデオシーケンスの復号をサポートするために、様々なパラメータを符号化することもできる。例えば、VPSは、ビデオシーケンス内のレイヤ、サブレイヤ、および/またはOLSの構成に関連するパラメータを含むことができる。さらに、ビデオシーケンスは、標準への適合性についてHRDによってチェックされ得る。そのような適合性試験をサポートするために、VPSおよび/またはSPSはHRDパラメータを含むことができる。HRD関連パラメータもSEIメッセージに含めることができる。SEIメッセージは、復号済みピクチャ内のサンプルの値を決定するために復号プロセスによって必要とされない情報を含む。例えば、SEIメッセージは、VPSに含まれるHRDパラメータに照らしてHRDプロセスをさらに記述するHRDパラメータを含むことができる。いくつかのビデオ符号化システムでは、SEIメッセージは、VPSを直接参照するパラメータを含み得る。この依存関係は、特定の困難をもたらす。例えば、VPSは、単一レイヤを含むOLSを送信するときにビットストリームから除去され得る。デコーダが1つのレイヤのみを受信する場合、VPSは有用な情報を含まないため、この手法はいくつかの場合に有益であり得る。しかしながら、VPSを省略することにより、VPSへの依存性に起因してSEIメッセージが適切に分析されることを妨げ得る。具体的には、VPSを省略すると、VPS内でSEIメッセージが依存するデータがデコーダで受信されないため、SEIメッセージがエラーを返す可能性がある。
この例は、VPSとSEIメッセージとの間の依存関係を除去するためのメカニズムを含む。例えば、du_hrd_params_present_flagは、現在のSEIメッセージ内に符号化することができる。du_hrd_params_present_flagは、HRDがAUレベルで動作するか、DUレベルで動作するかを指定する。さらに、現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージに存在するか、またはDUI SEIメッセージに存在するかを指定するdu_cpb_params_in_pic_timing_sei_flagを含むことができる。これらのフラグを現在のSEIメッセージに含めることにより、現在のSEIメッセージはVPSに依存しない。したがって、ビットストリームからVPSを省略しても、現在のSEIメッセージをパースすることができる。したがって、様々なエラーを回避することができる。その結果、エンコーダおよびデコーダの機能が向上する。さらに、SEIメッセージとVPSとの間の依存関係を除去することは、特定の場合にはVPSの除去をサポートし、これは符号化効率を向上させ、したがって、エンコーダおよびデコーダの両方におけるプロセッサ、メモリ、および/またはネットワークシグナリングリソース使用量を低減する。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、du_hrd_params_present_flagは、HRDがAUレベルで動作するかDUレベルで動作するかをさらに指定する。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実施では、DUレベルHRDパラメータが存在しHRDがAUレベルまたはDUレベルで動作し得ることを指定するときにdu_hrd_params_present_flagが1に設定され、DUレベルHRDパラメータが存在せずHRDがAUレベルで動作することを指定するときに0に設定される。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在するかどうかを指定するdu_cpb_params_in_pic_timing_sei_flagをさらに含む。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、du_cpb_params_in_pic_timing_sei_flagは、DUレベルCPB除去遅延パラメータがDUI SEIメッセージ内に存在するかどうかをさらに指定する。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在しDUI SEIメッセージが利用できないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが1に設定され、DUレベルCPB除去遅延パラメータがDUI SEIメッセージ内に存在しPT SEIメッセージがDUレベルCPB除去遅延パラメータを含まないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが0に設定される。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、現在のSEIメッセージは、BP SEIメッセージ、PT SEIメッセージ、またはDUI SEIメッセージである。
一実施形態において、本開示は、プロセッサと、プロセッサに結合された受信機と、プロセッサに結合されたメモリと、プロセッサに結合された送信機とを備えたビデオ符号化装置を含み、プロセッサ、受信機、メモリ、および送信機が、前述の態様のいずれかの方法を実行するように構成される。
一実施形態において、本開示は、ビデオ符号化装置によって使用されるコンピュータプログラム製品を含む非一時的コンピュータ可読媒体を含み、コンピュータプログラム製品は、非一時的コンピュータ可読媒体に記憶されたコンピュータ実行可能命令を含み、コンピュータ実行可能命令は、プロセッサによって実行されるときに、ビデオ符号化装置に前述の態様のいずれかの方法を実行させる。
一実施形態では、本開示は、符号化済みピクチャを含むビットストリームと、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するdu_hrd_params_present_flagを含む現在のSEIメッセージとを受信する受信手段と、復号済みピクチャを生成するために符号化済みピクチャを復号する復号手段と、復号済みビデオシーケンスの一部として表示のために復号済みピクチャを転送する転送手段とを備えるデコーダを含む。
ビデオ符号化システムは、ビデオシーケンスを一連の符号化済みピクチャとしてビットストリームに符号化することができる。ビデオシーケンスの復号をサポートするために、様々なパラメータを符号化することもできる。例えば、VPSは、ビデオシーケンス内のレイヤ、サブレイヤ、および/またはOLSの構成に関連するパラメータを含むことができる。さらに、ビデオシーケンスは、標準への適合性についてHRDによってチェックされ得る。そのような適合性試験をサポートするために、VPSおよび/またはSPSはHRDパラメータを含むことができる。HRD関連パラメータもSEIメッセージに含めることができる。SEIメッセージは、復号済みピクチャ内のサンプルの値を決定するために復号プロセスによって必要とされない情報を含む。例えば、SEIメッセージは、VPSに含まれるHRDパラメータに照らしてHRDプロセスをさらに記述するHRDパラメータを含むことができる。いくつかのビデオ符号化システムでは、SEIメッセージは、VPSを直接参照するパラメータを含み得る。この依存関係は、特定の困難をもたらす。例えば、VPSは、単一レイヤを含むOLSを送信するときにビットストリームから除去され得る。デコーダが1つのレイヤのみを受信する場合、VPSは有用な情報を含まないため、この手法はいくつかの場合に有益であり得る。しかしながら、VPSを省略することにより、VPSへの依存性に起因してSEIメッセージが適切に分析されることを妨げ得る。具体的には、VPSを省略すると、VPS内でSEIメッセージが依存するデータがデコーダで受信されないため、SEIメッセージがエラーを返す可能性がある。
この例は、VPSとSEIメッセージとの間の依存関係を除去するためのメカニズムを含む。例えば、du_hrd_params_present_flagは、現在のSEIメッセージ内に符号化することができる。du_hrd_params_present_flagは、HRDがAUレベルで動作するか、DUレベルで動作するかを指定する。さらに、現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージに存在するか、またはDUI SEIメッセージに存在するかを指定するdu_cpb_params_in_pic_timing_sei_flagを含むことができる。これらのフラグを現在のSEIメッセージに含めることにより、現在のSEIメッセージはVPSに依存しない。したがって、ビットストリームからVPSを省略しても、現在のSEIメッセージをパースすることができる。したがって、様々なエラーを回避することができる。その結果、エンコーダおよびデコーダの機能が向上する。さらに、SEIメッセージとVPSとの間の依存関係を除去することは、特定の場合にはVPSの除去をサポートし、これは符号化効率を向上させ、したがって、エンコーダおよびデコーダの両方におけるプロセッサ、メモリ、および/またはネットワークシグナリングリソース使用量を低減する。
任意選択的に、前述した態様のいずれかにおいて、態様の別の実装形態では、デコーダは、前述した態様のいずれかの方法を実行するようにさらに構成される。
一実施形態では、本開示は、符号化済みピクチャをビットストリームに符号化し、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するdu_hrd_params_present_flagを含む現在のSEIメッセージをビットストリーム内に符号化する符号化手段と、現在のSEIメッセージに基づいてビットストリームに対してビットストリーム適合性試験のセットを実行するHRD手段と、デコーダへの通信のためにビットストリームを記憶する記憶手段とを備えるエンコーダを含む。
ビデオ符号化システムは、ビデオシーケンスを一連の符号化済みピクチャとしてビットストリームに符号化することができる。ビデオシーケンスの復号をサポートするために、様々なパラメータを符号化することもできる。例えば、VPSは、ビデオシーケンス内のレイヤ、サブレイヤ、および/またはOLSの構成に関連するパラメータを含むことができる。さらに、ビデオシーケンスは、標準への適合性についてHRDによってチェックされ得る。そのような適合性試験をサポートするために、VPSおよび/またはSPSはHRDパラメータを含むことができる。HRD関連パラメータもSEIメッセージに含めることができる。SEIメッセージは、復号済みピクチャ内のサンプルの値を決定するために復号プロセスによって必要とされない情報を含む。例えば、SEIメッセージは、VPSに含まれるHRDパラメータに照らしてHRDプロセスをさらに記述するHRDパラメータを含むことができる。いくつかのビデオ符号化システムでは、SEIメッセージは、VPSを直接参照するパラメータを含み得る。この依存関係は、特定の困難をもたらす。例えば、VPSは、単一レイヤを含むOLSを送信するときにビットストリームから除去され得る。デコーダが1つのレイヤのみを受信する場合、VPSは有用な情報を含まないため、この手法はいくつかの場合に有益であり得る。しかしながら、VPSを省略することにより、VPSへの依存性に起因してSEIメッセージが適切に分析されることを妨げ得る。具体的には、VPSを省略すると、VPS内でSEIメッセージが依存するデータがデコーダで受信されないため、SEIメッセージがエラーを返す可能性がある。
この例は、VPSとSEIメッセージとの間の依存関係を除去するためのメカニズムを含む。例えば、du_hrd_params_present_flagは、現在のSEIメッセージ内に符号化することができる。du_hrd_params_present_flagは、HRDがAUレベルで動作するか、DUレベルで動作するかを指定する。さらに、現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージに存在するか、またはDUI SEIメッセージに存在するかを指定するdu_cpb_params_in_pic_timing_sei_flagを含むことができる。これらのフラグを現在のSEIメッセージに含めることにより、現在のSEIメッセージはVPSに依存しない。したがって、ビットストリームからVPSを省略しても、現在のSEIメッセージをパースすることができる。したがって、様々なエラーを回避することができる。その結果、エンコーダおよびデコーダの機能が向上する。さらに、SEIメッセージとVPSとの間の依存関係を除去することは、特定の場合にはVPSの除去をサポートし、これは符号化効率を向上させ、したがって、エンコーダおよびデコーダの両方におけるプロセッサ、メモリ、および/またはネットワークシグナリングリソース使用量を低減する。
任意選択的に、前述の態様のいずれかにおいて、エンコーダは、前述の態様のいずれかの方法を実行するようにさらに構成される。
明確にするために、前述の実施形態のいずれか1つは、他の前述の実施形態のいずれか1つまたは複数と組み合わされて、本開示の範囲内の新しい実施形態を作成する場合がある。
上記その他の特徴は、以下の詳細な説明を添付の図面および特許請求の範囲と併せて読めばより明確に理解されるであろう。
本開示をより十分に理解するために、次に、添付の図面および詳細な説明と関連して理解される以下の簡単な説明を参照する。添付の図面および詳細な説明において、類似の参照番号は類似の部分を表す。
ビデオ信号を符号化する例示的な方法のフローチャートである。 ビデオ符号化のための例示的な符号化・復号(コーデック)システムの概略図である。 例示的なビデオエンコーダを示す概略図である。 例示的なビデオデコーダを示す概略図である。 例示的な仮想参照デコーダ(HRD)を示す概略図である。 例示的なマルチレイヤビデオシーケンスを示す概略図である。 例示的なビットストリームを示す概略図である。 例示的なビデオ符号化装置の概略図である。 ビデオパラメータセット(VPS)に依存しなくてもよい補足拡張情報(SEI)メッセージを使用することによって、ビデオシーケンスをビットストリームに符号化する例示的な方法のフローチャートである。 VPSに依存しなくてもよいSEIメッセージを使用するビットストリームからビデオシーケンスを復号する例示的な方法のフローチャートである。 VPSに依存しなくてもよいSEIメッセージを使用するビットストリームを使用してビデオシーケンスを符号化する例示的なシステムの概略図である。
最初に、1つまたは複数の実施形態の例示的な実施態様が以下に提供されるが、開示されたシステムおよび/または方法は、現在知られているか存在するかにかかわらず、任意の数の技術を使用して実装され得ることを理解されたい。本開示は、本明細書において図示または記載される例示的な設計および実装形態を含む、以下に示される例示的な実装形態、図面、および技法に決して限定されるべきでなく、それらの均等物の全範囲とともに添付の特許請求の範囲の範囲内で修正されてよい。
以下の用語は、本明細書で反対の文脈で使用されない限り、次のように定義される。具体的に述べると、以下の定義は本開示をさらに明確にすることを意図している。しかしながら、用語は、異なる文脈では異なって記載される場合がある。したがって、以下の定義は補助的なものとみなされるべきであり、本明細書でこのような用語に与えられている説明の他の定義を制限するものと考えられるべきではない。
ビットストリームは、エンコーダとデコーダとの間での送信のために圧縮されたビデオデータを含む、ビットのシーケンスである。エンコーダは、ビデオデータを圧縮してビットストリームにするために、符号化プロセスを使用するように構成された装置である。デコーダは、表示のためにビットストリームからビデオデータを復元するために、復号プロセスを使用するように構成された装置である。ピクチャは、フレームまたはそのフィールドを生成するルーマサンプルのアレイおよび/またはクロマサンプルのアレイである。スライスは、単一のネットワーク抽象化レイヤ(NAL:network abstraction layer)ユニットに排他的に含まれる、整数個の完全なタイル、またはピクチャの(例えば、タイル内の)整数個の連続する完全な符号化ツリーユニット(CTU:coding tree unit)行である。説明を明確にするために、符号化または復号されているピクチャを現在のピクチャと呼ぶことができる。符号化済みピクチャは、アクセスユニット(AU)内のNALユニットヘッダレイヤ識別子(nuh_layer_id)の特定の値を有するビデオ符号化レイヤ(VCL:video coding layer)NALユニットを備え、ピクチャのすべての符号化ツリーユニット(CTU)を含むピクチャの符号化済み表現である。復号済みピクチャは、符号化済みピクチャに復号プロセスを適用することによって生成されたピクチャである。
AUは、異なるレイヤに含まれ、復号済みピクチャバッファ(DPB:decoded picture buffer)からの出力のために同じ時間に関連付けられた、符号化済みピクチャのセットである。復号ユニット(DU)は、AU、または、AU内の1つまたは複数のVCL NALユニットおよび関連付けられた非VCL NALユニットを含むAUのサブセットである。NALユニットは、生バイトシーケンスペイロード(RBSP:Raw Byte Sequence Payload)の形態のデータ、データのタイプの指示を含むシンタクス構造であり、エミュレーション防止バイトを用いて所望に応じて散在される。VCL NALユニットは、ピクチャの符号化済みスライスなどのビデオデータを含むように符号化されたNALユニットである。非VCL NALユニットは、ビデオデータの復号、適合性チェックの実行、または他の動作をサポートするシンタクスおよび/またはパラメータなどの非ビデオデータを含むNALユニットである。レイヤは、レイヤIDおよび関連付けられた非VCL NALユニットによって示されるように、指定された特性(例えば、共通解像度、フレームレート、画像サイズなど)を共有するVCL NALユニットのセットである。
仮想参照デコーダ(HRD)は、指定された制約条件に対する適合性を検証するために、符号化プロセスで生成されたビットストリームの可変性を検査する、エンコーダで動作するデコーダモデルである。ビットストリーム適合性試験は、符号化済みビットストリームが多用途ビデオ符号化(VVC:Versatile Video Coding)などの標準に準拠しているかどうかを判定するための試験である。HRDパラメータは、HRDの動作条件を初期化および/または定義するシンタクス要素である。HRDパラメータは、補足拡張情報(SEI)メッセージ、シーケンスパラメータセット(SPS:sequence parameter set)、および/またはビデオパラメータセット(VPS)に含まれ得る。DU HRDパラメータ存在フラグ(du_hrd_params_present_flag)は、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するシンタクス要素である。AUレベルは、1つまたは複数のAU全体に適用される(例えば、同じ出力時間を共有する1つまたは複数のピクチャグループ全体に適用される)ような動作の記述である。DUレベルは、1つまたは複数のDU全体に適用される(例えば、1つまたは複数のピクチャに適用される)ような動作の記述である。
SEIメッセージは、復号済みピクチャ内のサンプルの値を決定するために、復号プロセスで必要とされない情報を伝達する、指定されたセマンティクスを有するシンタクス構造である。SEI NALユニットは、1つまたは複数のSEIメッセージを含むNALユニットである。特定のSEI NALユニットは、現在のSEI NALユニットと称されてもよい。バッファリング期間(BP)SEIメッセージは、符号化済みピクチャバッファ(CPB)を管理するために、HRDを初期化するためのHRDパラメータを含むSEIメッセージである。ピクチャタイミング(PT)SEIメッセージは、CPBおよび/または復号済みピクチャバッファ(DPB)におけるAUのための配信情報を管理するためのHRDパラメータを含む一種のSEIメッセージである。復号ユニット情報(DUI)SEIメッセージは、CPBおよび/またはDPBにおけるDUの配信情報を管理するためのHRDパラメータを含む一種のSEIメッセージである。PT SEI内のDU CPBパラメータフラグ(du_cpb_params_in_pic_timing_sei_flag)は、DUレベルCPB除去遅延パラメータがPT SEIメッセージおよび/またはDUI SEIメッセージ内に存在するかどうかを指定するシンタクス要素である。CPBは、復号順にDUを含むHRDの先入れ先出しバッファである。CPB除去遅延は、HRDにおいてDPBに転送される前に、1つまたは複数のピクチャがCPBに残ることができる時間である。VPSは、ビットストリーム全体に関するデータを含むシンタクス構造である。SPSは、0個以上の符号化済みレイヤビデオシーケンス全体に適用されるシンタクス要素を含むシンタクス構造である。符号化済みビデオシーケンスは、1つまたは複数の符号化済みピクチャのセットである。復号済みビデオシーケンスは、1つまたは複数の復号済みピクチャのセットである。
本明細書では、以下の頭字語、すなわち、アクセスユニット(AU)、符号化ツリーブロック(CTB:Coding Tree Block)、符号化ツリーユニット(CTU)、符号化ユニット(CU:Coding Unit)、符号化済みレイヤビデオシーケンス(CLVS:Coded Layer Video Sequence)、符号化済みレイヤビデオシーケンス開始(CLVSS:Coded Layer Video Sequence Start)、符号化済みビデオシーケンス(CVS:Coded Video Sequence)、符号化済みビデオシーケンス開始(CVSS:Coded Video Sequence Start)、合同ビデオエキスパートチーム(JVET:Joint Video Experts Team)、仮想参照デコーダHRD、動き制約付きタイルセット(MCTS:Motion Constrained Tile Set)、最大転送ユニット(MTU:Maximum Transfer Unit)、ネットワーク抽象化レイヤ(NAL)、出力レイヤセット(OLS)、ピクチャ順序カウント(POC:Picture Order Count)、ランダムアクセスポイント(RAP:Random Access Point)、生バイトシーケンスペイロード(RBSP)、シーケンスパラメータセット(SPS)、ビデオパラメータセット(VPS)、多用途ビデオ符号化(VVC)、が使用される。
データ損失を最小にしながらビデオファイルのサイズを縮小するために、多くのビデオ圧縮技法を使用することができる。例えば、ビデオ圧縮技法は、ビデオシーケンスにおけるデータ冗長性を低減または除去するために、空間的(例えば、ピクチャ内)予測および/または時間的(例えば、ピクチャ間)予測を実行することを含むことができる。ブロックベースのビデオ符号化では、ビデオスライス(例えば、ビデオピクチャまたはビデオピクチャの一部)はビデオブロックに分割されてよく、ビデオブロックは、ツリーブロック、符号化ツリーブロック(CTB)、符号化ツリーユニット(CTU)、符号化ユニット(CU)、および/または、符号化ノードとも称されてよい。ピクチャのイントラ符号化済み(I)スライス内のビデオブロックは、同じピクチャ内の隣り合うブロックにおける、参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインター符号化済み一方向予測(P)または双方向予測(B)スライス内のビデオブロックは、同じピクチャ内の隣り合うブロックにおける参照サンプルに対する空間的予測、または他の参照ピクチャ内の参照サンプルに対する時間的予測を使用して符号化されてよい。ピクチャはフレームおよび/または画像と称されてもよく、参照ピクチャは参照フレームおよび/または参照画像と称されてよい。空間的または時間的予測の結果として、画像ブロックを表す予測ブロックが生じる。残余データは、元の画像ブロックと予測ブロックとの間の画素差を表す。したがって、インター符号化済みブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、符号化済みブロックと予測ブロックとの間の差分を示す残余データとに従って符号化される。イントラ符号化済みブロックは、イントラ符号化モードと残余データとに従って符号化される。さらに圧縮するために、残余データは、画素ドメインから変換ドメインに変換されてよい。これらは残余変換係数になり、量子化され得る。量子化済み変換係数は、最初は2次元配列に配置されてよい。量子化済み変換係数は、変換係数の1次元ベクトルを生成するためにスキャンされ得る。さらなる圧縮を実現するために、エントロピー符号化が適用され得る。このようなビデオ圧縮技法が、以下でより詳細に説明される。
符号化済みビデオを正確に復号できるように、ビデオは、対応するビデオ符号化標準に従って符号化および復号される。ビデオ符号化標準には、国際電気通信連合(ITU)標準化部門(ITU-T)H.261、国際標準化機構/国際電気標準会議(ISO/IEC)動画エキスパートグループ(MPEG)-1パート2、ITU-T H.262またはISO/IEC MPEG-2パート2、ITU-T H.263、ISO/IEC MPEG-4パート2、ITU-T H.264またはISO/IEC MPEG-4パート10としても知られるアドバンストビデオ符号化(AVC:Advanced Video Coding)、およびITU-T H.265またはMPEG-Hパート2としても知られる高効率ビデオ符号化(HEVC:High Efficiency Video Coding)が含まれる。AVCは、スケーラブルビデオ符号化(SVC:Scalable Video Coding)、マルチビュービデオ符号化(MVC:Multiview Video Coding)、マルチビュービデオ符号化プラス深度(MVC+D:Multiview Video Coding plus Depth)、および3次元(3D)AVC(3D-AVC)などの拡張を含む。HEVCは、スケーラブルHEVC(SHVC:Scalable HEVC)、マルチビューHEVC(MV-HEVC:Multiview HEVC)、および3D HEVC(3D-HEVC)などの拡張を含む。ITU-TおよびISO/IECの合同ビデオエキスパートチーム(JVET)は、多用途ビデオ符号化(VVC)と称されるビデオ符号化標準の開発に着手した。VVCは草案(WD:Working Draft)に含まれており、これはJVET-O2001-v14を含む。
ビデオ符号化システムは、ビデオシーケンスを一連の符号化済みピクチャとしてビットストリームに符号化することができる。ビデオシーケンスの復号をサポートするために、様々なパラメータを符号化することもできる。例えば、ビデオパラメータセット(VPS:video parameter set)は、ビデオシーケンス内のレイヤ、サブレイヤ、および/または出力レイヤセット(OLS:output layer set)の構成に関連するパラメータを含むことができる。さらに、ビデオシーケンスは、標準への適合性について仮想参照デコーダ(HRD)によってチェックされ得る。そのような適合性試験をサポートするために、VPSおよび/またはSPSはHRDパラメータを含むことができる。HRD関連パラメータはまた、補足拡張情報(SEI)メッセージに含まれ得る。SEIメッセージは、復号済みピクチャ内のサンプルの値を決定するために復号プロセスによって必要とされない情報を含む。例えば、SEIメッセージは、VPSに含まれるHRDパラメータに照らしてHRDプロセスをさらに記述するHRDパラメータを含むことができる。いくつかのビデオ符号化システムでは、SEIメッセージは、VPSを直接参照するパラメータを含み得る。この依存関係は、特定の困難をもたらす。例えば、VPSは、単一レイヤを含むOLSを送信するときにビットストリームから除去され得る。デコーダが1つのレイヤのみを受信する場合、VPSは有用な情報を含まないため、この手法はいくつかの場合に有益であり得る。しかしながら、VPSを省略することにより、VPSへの依存性に起因してSEIメッセージが適切に分析されることを妨げ得る。具体的には、VPSを省略すると、VPS内でSEIメッセージが依存するデータがデコーダで受信されないため、SEIメッセージがエラーを返す可能性がある。
本明細書では、VPSとSEIメッセージとの間の依存関係を除去するためのメカニズムが開示される。例えば、復号ユニット(DU)仮想参照デコーダ(HRD)パラメータ存在フラグ(du_hrd_params_present_flag)は、現在のSEIメッセージ内に符号化することができる。du_hrd_params_present_flagは、HRDがアクセスユニット(AU)レベルで動作するか、復号ユニット(DU)レベルで動作するかを指定する。さらに、現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージに存在するか、または復号ユニット情報(DUI:decoding unit information)SEIメッセージに存在するかを指定するDU符号化済みピクチャバッファ(CPB:coded picture buffer)パラメータ・イン・ピクチャタイミング(PT:picture timing)SEIフラグ(du_cpb_params_in_pic_timing_sei_flag)を含むことができる。これらのフラグを現在のSEIメッセージに含めることにより、現在のSEIメッセージはVPSに依存しない。したがって、ビットストリームからVPSを省略しても、現在のSEIメッセージをパースすることができる。したがって、様々なエラーを回避することができる。その結果、エンコーダおよびデコーダの機能が向上する。さらに、SEIメッセージとVPSとの間の依存関係を除去することは、特定の場合にはVPSの除去をサポートし、これは符号化効率を向上させ、したがって、エンコーダおよびデコーダの両方におけるプロセッサ、メモリ、および/またはネットワークシグナリングリソース使用量を低減する。
図1は、ビデオ信号を符号化する例示的な動作方法100のフローチャートである。具体的に述べると、ビデオ信号はエンコーダで符号化される。符号化プロセスは、ビデオファイルのサイズを減じる様々なメカニズムを使用してビデオ信号を圧縮する。ファイルのサイズが小さければ、関連する帯域幅オーバーヘッドを減らしながら、圧縮済みビデオファイルをユーザへ送信することが可能となる。その後、デコーダは圧縮済みビデオファイルを復号し、エンドユーザに向けて表示するため元のビデオ信号を復元する。デコーダでビデオ信号を着実に復元することを可能にするため、復号プロセスは通常、符号化プロセスを反映する。
ステップ101で、ビデオ信号がエンコーダに入力される。例えば、ビデオ信号はメモリに記憶された非圧縮ビデオファイルであってよい。別の例として、ビデオカメラなどのビデオキャプチャ装置によってビデオファイルがキャプチャされ、ビデオのライブストリーミングをサポートするため符号化されてもよい。ビデオファイルはオーディオ成分とビデオ成分の両方を含み得る。ビデオ成分は一連の画像フレームを含み、これが連続して見られると、視覚的な動きの印象を与える。フレームは画素を含み、画素は、ここでルーマ成分(またはルーマサンプル)と呼ばれる光と、クロマ成分(または色サンプル)と呼ばれる色とによって表される。いくつかの例では、3次元閲覧をサポートするため、フレームが深度値を含むこともある。
ステップ103で、ビデオがブロックに分割される。分割は、各フレーム内の画素を圧縮のために正方形および/または長方形のブロックに細分することを含む。例えば、高効率ビデオ符号化(HEVC)(H.265およびMPEG-Hパート2としても知られている)では、フレームは、まず符号化ツリーユニット(CTU)に細分化でき、これは所定のサイズ(例えば、64画素×64画素)のブロックである。CTUはルーマおよびクロマの両方のサンプルを含む。符号化ツリーを使ってCTUをブロックに細分し、その後、さらなる符号化をサポートする構成が達成されるまでブロックを再帰的に細分することができる。例えば、フレームのルーマ成分は、個々のブロックが比較的均一な照明値を含むようになるまで細分されてよい。さらに、フレームのクロマ成分は、個々のブロックが比較的均一な色値を含むようになるまで細分されてよい。したがって、分割メカニズムはビデオフレームの内容に応じて異なる。
ステップ105で、ステップ103で分割された画像ブロックを様々な圧縮メカニズムを用いて圧縮する。例えば、インター予測および/またはイントラ予測が使用され得る。インター予測は、一般的なシーンの中の物体が連続するフレームに現れる傾向があるという事実を利用するように設計される。したがって、参照フレーム内の物体を表すブロックは、隣接するフレームで繰り返し記述される必要はない。具体的に述べると、机などの物体は複数のフレームにわたって一定の位置に留まることがある。したがって、机は一度記述され、隣接するフレームは参照フレームを参照できる。パターンマッチングメカニズムを使用することで、複数のフレームにわたって物体をマッチングさせることができる。さらに、例えば物体の移動やカメラの移動により、複数のフレームにわたって動く物体が表されることがある。特定の一例として、ビデオは複数のフレームにわたって画面を横切る自動車を表示することがある。このような移動は動きベクトルを使って記述できる。動きベクトルは、あるフレーム内のある物体の座標から参照フレーム内の当該物体の座標までのオフセットを提供する2次元ベクトルである。このため、インター予測は、現在のフレーム内の画像ブロックを、参照フレーム内の対応するブロックからのオフセットを示す1組の動きベクトルとして符号化できる。
イントラ予測は、一般的なフレーム内のブロックを符号化する。イントラ予測は、ルーマ成分とクロマ成分がフレームの中で集まる傾向があるという事実を利用する。例えば、木の一部分にある緑のパッチは、同様の緑のパッチの近くに位置する傾向がある。イントラ予測は、複数の方向性予測モード(例えばHEVCで33)、平面モード、および直流(DC)モードを使用する。方向性モードは、現在のブロックが対応する方向で近隣ブロックのサンプルと同様/同じであることを指示する。平面モードは、行/列(例えば平面)に沿った一連のブロックを、行のエッジの近隣ブロックに基づいて補間できることを指示する。平面モードは、実際には、変化する値の比較的一定の傾きを使用することによって、行/列にわたる光/色の滑らかな遷移を示す。DCモードは境界平滑化に使用され、ブロックが、方向性予測モードの角度方向と関連するすべての近隣ブロックのサンプルと関連する平均値と同様/同じであることを指示する。したがって、イントラ予測ブロックは、実際の値の代わりに様々な関係予測モード値として画像ブロックを表すことができる。さらに、インター予測ブロックは、実際の値の代わりに動きベクトル値として画像ブロックを表すことができる。いずれの場合でも、予測ブロックは場合によっては画像ブロックを正確に表さないことがある。差は残余ブロックに記憶される。ファイルをさらに圧縮するため、残余ブロックには変換が適用できる。
ステップ107で、様々なフィルタリング技法が適用され得る。HEVCではループ内フィルタリング方式に従ってフィルタが適用される。上述したブロックベースの予測は、デコーダでブロック状の画像を作ることがある。さらに、ブロックベースの予測方式はブロックを符号化し、符号化済みブロックを後ほど参照ブロックとして使用するため復元することができる。ループ内フィルタリング方式は、ノイズ抑制フィルタ、デブロッキングフィルタ、適応型ループフィルタ、およびサンプル適応型オフセット(SAO:sample adaptive offset)フィルタをブロック/フレームに繰り返し適用する。これらのフィルタはそのようなブロッキングアーチファクトを軽減するため、符号化済みファイルは正確に復元できる。さらに、これらのフィルタは復元済み参照ブロックでアーチファクトを軽減するため、復元済み参照ブロックに基づいて符号化される後続のブロックでさらなるアーチファクトが発生する見込みは少なくなる。
ビデオ信号が分割され、圧縮され、フィルタリングされた後、結果として得られるデータがステップ109でビットストリームに符号化される。このビットストリームは上述したデータを含むほか、デコーダでの適切なビデオ信号復元をサポートするにあたって望ましいシグナリングデータを含む。例えば、このようなデータは、分割データ、予測データ、残余ブロック、およびデコーダに符号化命令を提供する様々なフラグを含み得る。ビットストリームは、要求に応じてデコーダへ送信できるようにメモリに記憶されてよい。ビットストリームはまた、複数のデコーダに向けてブロードキャストおよび/またはマルチキャストされてもよい。ビットストリームの作成は反復プロセスである。したがって、ステップ101、103、105、107、および109は、多数のフレームおよびブロックにわたって連続的に、および/または同時に、行われてよい。図1に示された順序は説明を明瞭かつ平易にするために提示されており、ビデオ符号化プロセスを特定の順序に限定することを意図するものではない。
デコーダはビットストリームを受信し、ステップ111で復号プロセスを開始する。具体的に述べると、デコーダはエントロピー復号方式を用いてビットストリームを対応するシンタクスデータとビデオデータに変換する。ステップ111で、デコーダはビットストリームからのシンタクスデータを使用してフレームの分割を判定する。分割はステップ103におけるブロック分割の結果に整合しなければならない。以下、ステップ111で使用されるエントロピー符号化/復号を説明する。エンコーダは、入力画像における値の空間的配置に基づいて数通りの可能なオプションからブロック分割方式を選択するなど、圧縮プロセス中に多数の選択を行う。正確なオプションを伝えるため、多数のビンを使用することがある。本明細書で使用される場合、ビンは、変数として扱われるバイナリ値である(例えば、状況に応じて変わり得るビット値)。エントロピー符号化では、エンコーダは特定の状況で明らかに成り立たないオプションを破棄し、許容可能なオプションからなる集合を残すことができる。その後、それぞれの許容可能オプションには符号語が割り当てられる。符号語の長さは許容可能オプションの数に基づく(例えば、2つのオプションに対し1ビン、3~4個のオプションに対し2ビンなど)。その後、エンコーダは選択されたオプションの符号語を符号化する。符号語は、すべての可能なオプションからなる潜在的に大きい集合からの選択を一意に指示するのに対し、許容可能オプションからなる小さい部分集合からの選択を一意に指示する場合に所望の大きさになるため、この方式は符号語のサイズを縮小する。その後、デコーダは、エンコーダと同様に許容可能オプションからなる集合を判定することによって選択を復号する。デコーダは、許容可能オプションからなる集合を判定することによって符号語を読み取り、エンコーダによって行われた選択を判定することができる。
ステップ113で、デコーダがブロック復号を実行する。具体的に述べると、デコーダは逆変換を使用して残余ブロックを生成する。その後、デコーダは残余ブロックと、対応する予測ブロックとを使用し、分割に基づいて画像ブロックを復元する。予測ブロックは、ステップ105においてエンコーダで生成されたイントラ予測ブロックとインター予測ブロックの両方を含み得る。その後、復元済み画像ブロックは、ステップ111で判定された分割データに基づいて復元済みビデオ信号のフレームの中に配置される。ステップ113のシンタクスも上述したエントロピー符号化によりビットストリームで伝達されてよい。
ステップ115で、エンコーダにおけるステップ107と同様に復元済みビデオ信号のフレームに対してフィルタリングが実行される。ブロッキングアーチファクトを除去するため、例えばノイズ抑制フィルタ、デブロッキングフィルタ、適応型ループフィルタ、およびSAOフィルタをフレームに適用できる。フレームがフィルタリングされた後、ステップ117でビデオ信号をエンドユーザによる閲覧のためディスプレイに出力できる。
図2は、ビデオ符号化のための例示的な符号化および復号(コーデック)システム200の概略図である。具体的に述べると、コーデックシステム200は動作方法100の実装形態をサポートする機能を提供する。コーデックシステム200は、エンコーダとデコーダの両方で使用されるコンポーネントを表すように一般化されている。コーデックシステム200は、動作方法100のステップ101および103に関して述べたようにビデオ信号を受信し、これを分割し、その結果、分割済みビデオ信号201が得られる。コーデックシステム200はその後、方法100のステップ105、107、および109に関して述べたようにエンコーダとして機能する場合に、分割済みビデオ信号201を符号化済みビットストリームに圧縮する。コーデックシステム200は、デコーダとして機能する場合に、動作方法100のステップ111、113、115、および117に関して述べたように、ビットストリームから出力ビデオ信号を生成する。コーデックシステム200は、一般コーダ制御コンポーネント211、変換スケーリング量子化コンポーネント213、ピクチャ内推定コンポーネント215、ピクチャ内予測コンポーネント217、動き補償コンポーネント219、動き推定コンポーネント221、スケーリング逆変換コンポーネント229、フィルタ制御分析コンポーネント227、ループ内フィルタコンポーネント225、復号済みピクチャバッファコンポーネント223、およびヘッダフォーマッティング・コンテキスト適応型バイナリ算術符号化(CABAC:context adaptive binary arithmetic coding)コンポーネント231を含む。このようなコンポーネントは図示された通りに結合されている。図2で、黒線は符号化/復号されるデータの動きを示しており、破線は他のコンポーネントの動作を制御する制御データの動きを示している。コーデックシステム200のコンポーネントはすべてエンコーダ内に存在し得る。デコーダはコーデックシステム200のコンポーネントのサブセットを含み得る。例えば、デコーダは、ピクチャ内予測コンポーネント217、動き補償コンポーネント219、スケーリング逆変換コンポーネント229、ループ内フィルタコンポーネント225、および復号済みピクチャバッファコンポーネント223を含み得る。以下、これらのコンポーネントを説明する。
分割済みビデオ信号201は、符号化ツリーによって画素のブロックに分割されたキャプチャ済みビデオシーケンスである。符号化ツリーは様々なスプリットモードを使用して画素のブロックを画素のより小さいブロックに細分する。その後、これらのブロックはより小さいブロックにさらに細分できる。ブロックは符号化ツリー上でノードと呼ばれることがある。より大きい親ノードは小さい子ノードにスプリットされる。ノードが細分される回数はノード/符号化ツリーの深度と呼ばれる。細分済みブロックは、場合によっては符号化ユニット(CU)に含まれ得る。例えば、CUは、対応するCUのシンタクス命令とともに、ルーマブロック、(1つまたは複数の)赤差分クロマ(Cr)ブロック、および(1つまたは複数の)青差分クロマ(Cb)ブロックを含む、CTUのサブ部分であり得る。スプリットモードは、バイナリツリー(BT:binary tree)、トリプルツリー(TT:triple tree)、およびクアドツリー(QT:quad tree)を含み、これらのモードは、使用するスプリットモードに応じて形が異なる2つ、3つ、または4つの子ノードにノードを分割するために使用される。分割済みビデオ信号201は、圧縮のため、一般コーダ制御コンポーネント211、変換スケーリング量子化コンポーネント213、ピクチャ内推定コンポーネント215、フィルタ制御分析コンポーネント227、および動き推定コンポーネント221へ転送される。
一般コーダ制御コンポーネント211は、用途の制約条件に従ってビデオシーケンスの画像をビットストリームに符号化することに関係する決定を下すように構成される。例えば、一般コーダ制御コンポーネント211は、ビットレート/ビットストリームサイズと復元品質との最適化を管理する。そのような決定は、ストレージ空間/帯域幅の可用性と画像の解像度要求に基づいて下されてよい。一般コーダ制御コンポーネント211はまた、バッファのアンダーラン問題とオーバーラン問題を軽減するため、伝送速度を踏まえてバッファの使用状況を管理する。これらの問題を管理するため、一般コーダ制御コンポーネント211は、他のコンポーネントによる分割、予測、およびフィルタリングを管理する。例えば、一般コーダ制御コンポーネント211は、解像度を上げて帯域幅使用を増大させるために圧縮の複雑度を動的に増大させることができ、または解像度と帯域幅使用を低下させるために圧縮の複雑度を低下させることができる。したがって、一般コーダ制御コンポーネント211は、コーデックシステム200の他のコンポーネントを制御することで、ビデオ信号の復元品質とビットレート問題のバランスをとる。一般コーダ制御コンポーネント211は、他のコンポーネントの動作を制御する制御データを生成する。制御データはまた、デコーダでの復号のためのパラメータをシグナリングするため、ヘッダフォーマッティングCABACコンポーネント231へ転送されてビットストリームに符号化される。
分割済みビデオ信号201は、インター予測のため、動き推定コンポーネント221および動き補償コンポーネント219にも送信される。分割済みビデオ信号201のフレームまたはスライスは複数のビデオブロックに細分できる。動き推定コンポーネント221および動き補償コンポーネント219は、時間的予測を提供するため、1つまたは複数の参照フレーム内の1つまたは複数のブロックを基準にして、受信したビデオブロックのインター予測符号化を実行する。コーデックシステム200は、例えばビデオデータのブロックごとに適切な符号化モードを選択するために、複数の符号化パスを実行できる。
動き推定コンポーネント221および動き補償コンポーネント219は高度に一体化されてもよいが、概念的な目的のため別々に示されている。動き推定コンポーネント221によって行われる動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、例えば、予測ブロックに対する符号化された物体の変位を示すことができる。予測ブロックとは、画素差に関して、符号化されるべきブロックによく一致することが分かっているブロックである。予測ブロックは参照ブロックとも称されてよい。このような画素差は、絶対差の和(SAD:sum of absolute difference)、二乗差の和(SSD:sum of square difference)、またはその他の差指標によって決定することができる。HEVCは、CTU、符号化ツリーブロック(CTB)、およびCUを含むいくつかの符号化された物体を使用する。例えば、CTUはCTBに分割でき、その後CTBは、CUに含めるためにCBに細分することができる。CUは、予測データを含む予測ユニットおよび/またはCUのための変換残余データを含む変換ユニット(TU:transform unit)として符号化することができる。動き推定コンポーネント221は、レート歪み最適化プロセスの一部としてレート歪み分析を使用することによって動きベクトル、予測ユニット、およびTUを生成する。例えば、動き推定コンポーネント221は、現在のブロック/フレームについて複数の参照ブロック、複数の動きベクトルなどを決定することができ、最良のレート歪み特性を有する参照ブロック、動きベクトルなどを選択できる。最良のレート歪み特性とは、ビデオ復元の品質(例えば、圧縮によるデータ損失量)と符号化効率(例えば、最終的な符号化のサイズ)とのバランスをとる。
いくつかの例において、コーデックシステム200は、復号済みピクチャバッファコンポーネント223に記憶された参照ピクチャのサブ整数画素位置の値を計算できる。例えば、ビデオコーデックシステム200は、参照ピクチャの4分の1画素位置、8分の1画素位置、または他の小数画素位置の値を補間できる。したがって、動き推定コンポーネント221は完全画素位置と小数画素位置に対する動き探索を実行し、小数画素精度の動きベクトルを出力できる。動き推定コンポーネント221は、予測ユニットの位置を参照ピクチャの予測ブロックの位置と比較することによって、インター符号化スライス内のビデオブロックの予測ユニットに対する動きベクトルを計算する。動き推定コンポーネント221は、計算した動きベクトルを動きデータとしてヘッダフォーマッティングCABACコンポーネント231に符号化のために出力し、動き補償コンポーネント219に動きを出力する。
動き補償コンポーネント219によって実行される動き補償は、動き推定コンポーネント221によって決定された動きベクトルに基づいて予測ブロックを取得または生成することを含み得る。繰り返しになるが、いくつかの例では、動き推定コンポーネント221と動き補償コンポーネント219は機能的に一体化されてもよい。現在のビデオブロックの予測ユニットの動きベクトルを受信した後、動き補償コンポーネント219は、動きベクトルが指す予測ブロックの位置を特定できる。その後、符号化される現在のビデオブロックの画素値から予測ブロックの画素値を引いて画素差の値を形成することによって、残余ビデオブロックが形成される。一般に、動き推定コンポーネント221はルーマ成分に対する動き推定を実行し、動き補償コンポーネント219はルーマ成分に基づいて計算された動きベクトルをクロマ成分およびルーマ成分の両方に使用する。予測ブロックおよび残余ブロックは変換スケーリング量子化コンポーネント213へ転送される。
分割済みビデオ信号201はピクチャ内推定コンポーネント215およびピクチャ内予測コンポーネント217にも送信される。動き推定コンポーネント221および動き補償コンポーネント219と同様に、ピクチャ内推定コンポーネント215およびピクチャ内予測コンポーネント217も高度に一体化されてよいが、概念的な目的のため別々に示されている。ピクチャ内推定コンポーネント215およびピクチャ内予測コンポーネント217は、上述したように、動き推定コンポーネント221および動き補償コンポーネント219によってフレーム間で実行されるインター予測の代わりに、現在のフレーム内のブロックに対して現在のブロックをイントラ予測する。具体的に述べると、ピクチャ内推定コンポーネント215は、現在のブロックを符号化するために使用するイントラ予測モードを決定する。いくつかの例では、ピクチャ内推定コンポーネント215は、複数の試験済みイントラ予測モードから現在のブロックを符号化する適切なイントラ予測モードを選択する。その後、選択されたイントラ予測モードは、符号化のためヘッダフォーマッティングCABACコンポーネント231へ転送される。
例えば、ピクチャ内推定コンポーネント215は様々な試験済みイントラ予測モードについてレート歪み分析を用いてレート歪み値を計算し、試験済みモードの中から最良のレート歪み特性を有するイントラ予測モードを選択する。レート歪み分析は一般に、符号化済みブロックと、符号化済みブロックを生成するために符号化された元の符号化されていないブロックとの間の歪み(または誤差)の量と、符号化済みブロックを生成するために使用されたビットレート(例えばビット数)を決定する。ピクチャ内推定コンポーネント215は様々な符号化済みブロックの歪みおよびレートから比率を計算することで、ブロックで最良のレート歪み値を示すイントラ予測モードがどれかを判断する。加えて、ピクチャ内推定コンポーネント215は、レート歪み最適化(RDO)に基づく深度モデリングモード(DMM)を使って深度マップの深度ブロックを符号化するように構成されてよい。
ピクチャ内予測コンポーネント217は、エンコーダ上で実施される場合は、ピクチャ内推定コンポーネント215によって決定された選択済みのイントラ予測モードに基づいて予測ブロックから残余ブロックを生成でき、またはデコーダ上で実施される場合は、ビットストリームから残余ブロックを読み取ることができる。残余ブロックは、予測ブロックと元のブロックとの間の値の差を含み、行列として表現される。その後、残余ブロックは変換スケーリング量子化コンポーネント213へ転送される。ピクチャ内推定コンポーネント215およびピクチャ内予測コンポーネント217は、ルーマ成分およびクロマ成分の両方に作用できる。
変換スケーリング量子化コンポーネント213は、残余ブロックをさらに圧縮するように構成される。変換スケーリング量子化コンポーネント213は、離散コサイン変換(DCT)、離散サイン変換(DST)、または概念的に類似する変換などの変換を残余ブロックに適用し、残余変換係数値を含むビデオブロックを生成する。ウェーブレット変換、整数変換、サブバンド変換、または他種の変換を用いることもできる。変換は、画素値ドメインから周波数ドメインなどの変換ドメインに残余情報を変換できる。変換スケーリング量子化コンポーネント213はまた、例えば周波数に基づいて、変換済み残余情報をスケーリングするように構成される。このようなスケーリングは、残余情報にスケール係数をかけることを含み、これにより様々な周波数情報が様々な粒度で量子化され、これは、復元済みビデオの最終的な視覚的品質に影響し得る。変換スケーリング量子化コンポーネント213はまた、ビットレートをさらに低減するため、変換係数を量子化するように構成される。量子化プロセスは係数の一部または全部に関連するビット深度を減らすことができる。量子化の度合いは量子化パラメータを調節することによって変更できる。いくつかの例では、変換スケーリング量子化コンポーネント213はその後、量子化済み変換係数を含む行列のスキャンを実行することができる。量子化済み変換係数は、ビットストリーム内に符号化されるために、ヘッダフォーマッティングCABACコンポーネント231へ転送される。
スケーリング逆変換コンポーネント229は、動き推定をサポートするために、変換スケーリング量子化コンポーネント213の逆の操作を適用する。スケーリング逆変換コンポーネント229は、逆スケーリング、変換、および/または量子化を適用することで、例えば、別の現在のブロックの予測ブロックになり得る参照ブロックとして後ほど使用するため、残余ブロックを画素ドメインで復元する。動き推定コンポーネント221および/または動き補償コンポーネント219は、残余ブロックを、後のブロック/フレームの動き推定で使用するための対応する予測ブロックに加えることによって、参照ブロックを計算できる。スケーリング、量子化、および変換のときに生じるアーチファクトを軽減するため、復元済み参照ブロックにフィルタが適用される。さもないと、後続のブロックが予測されるときに、そのようなアーチファクトによって予測が不正確になる(および、さらなるアーチファクトが生じる)可能性がある。
フィルタ制御分析コンポーネント227およびループ内フィルタコンポーネント225は、残余ブロックに、および/または復元済み画像ブロックに、フィルタを適用する。例えば、元の画像ブロックを復元するため、スケーリング逆変換コンポーネント229からの変換済み残余ブロックを、ピクチャ内予測コンポーネント217および/または動き補償コンポーネント219からの対応する予測ブロックに組み合わせることができる。その後、復元済み画像ブロックにフィルタを適用できる。いくつかの例では、フィルタは、代わりに、残余ブロックに適用できる。図2の他のコンポーネントと同様、フィルタ制御分析コンポーネント227およびループ内フィルタコンポーネント225は高度に一体化されて共に実施されてもよいが、概念的な目的のため別々に描かれている。復元済み参照ブロックに適用されるフィルタは特定の空間領域に適用され、このようなフィルタがどのように適用されるかを調整する複数のパラメータを含む。フィルタ制御分析コンポーネント227は、復元済み参照ブロックを分析することで、このようなフィルタが適用されるべき状況を判断し、対応するパラメータを設定する。このようなデータは、符号化のためのフィルタ制御データとしてヘッダフォーマッティングCABACコンポーネント231へ転送される。ループ内フィルタコンポーネント225は、フィルタ制御データに基づいてこのようなフィルタを適用する。フィルタは、デブロッキングフィルタ、ノイズ抑制フィルタ、SAOフィルタ、および適応型ループフィルタを含み得る。このようなフィルタは、例に応じて(例えば、復元済み画素ブロック上の)空間/画素ドメインで、または周波数ドメインで、適用されてよい。
エンコーダとして動作する場合、フィルタリングされた復元済み画像ブロック、残余ブロック、および/または予測ブロックは、上述した動き推定で後ほど使用するため復号済みピクチャバッファコンポーネント223に記憶される。デコーダとして動作する場合、復号済みピクチャバッファコンポーネント223は、復元されフィルタリングされたブロックを記憶し、出力ビデオ信号の一部としてディスプレイへ転送する。復号済みピクチャバッファコンポーネント223は、予測ブロック、残余ブロック、および/または復元済み画像ブロックを記憶できる何らかのメモリ装置であってよい。
ヘッダフォーマッティングCABACコンポーネント231はコーデックシステム200の様々なコンポーネントからデータを受信し、このようなデータをデコーダへ送信するために、符号化済みビットストリームに符号化する。具体的に述べると、ヘッダフォーマッティングCABACコンポーネント231は、一般制御データおよびフィルタ制御データなどの制御データを符号化するために、様々なヘッダを生成する。さらに、イントラ予測および動きデータを含む予測データ、ならびに量子化済み変換係数データの形をとる残余データは、すべてビットストリームに符号化される。最終的なビットストリームは、デコーダが元の分割済みビデオ信号201を復元するために必要となる全情報を含む。このような情報は、イントラ予測モードインデックステーブル(符号語マッピングテーブルとも呼ばれる)、様々なブロックの符号化コンテキストの定義、最も可能性の高いイントラ予測モードの指示、分割情報の指示なども含み得る。このようなデータは、エントロピー符号化を使用して符号化され得る。例えば、情報は、コンテキスト適応型可変長符号化(CAVLC:context adaptive variable length coding)、CABAC、シンタクスベースコンテキスト適応型バイナリ算術符号化(SBAC:syntax-based context-adaptive binary arithmetic coding)、確率区間分割エントロピー(PIPE:probability interval partitioning entropy)符号化、または他のエントロピー符号化技法を用いて符号化できる。エントロピー符号化の後には、符号化済みビットストリームを別の装置(例えば、ビデオデコーダ)へ送信でき、または後ほど送信したり取り出したりするため保管できる。
図3は、例示的なビデオエンコーダ300を示すブロック図である。ビデオエンコーダ300は、コーデックシステム200の符号化機能を実施するため、および/または動作方法100のステップ101、103、105、107、および/または109を実施するために使用され得る。エンコーダ300は入力ビデオ信号を分割し、その結果として得られる分割済みビデオ信号301は分割済みビデオ信号201と実質的に同様である。その後、分割済みビデオ信号301はエンコーダ300のコンポーネントによって圧縮され、ビットストリームに符号化される。
具体的に述べると、分割済みビデオ信号301はイントラ予測のためピクチャ内予測コンポーネント317へ転送される。ピクチャ内予測コンポーネント317はピクチャ内推定コンポーネント215およびピクチャ内予測コンポーネント217と実質的に同様であってよい。分割済みビデオ信号301は、復号済みピクチャバッファコンポーネント323内の参照ブロックに基づくインター予測のため、動き補償コンポーネント321にも転送される。動き補償コンポーネント321は動き推定コンポーネント221および動き補償コンポーネント219と実質的に同様であってよい。ピクチャ内予測コンポーネント317および動き補償コンポーネント321からの予測ブロックおよび残余ブロックは、残余ブロックの変換および量子化のため、変換量子化コンポーネント313へ転送される。変換量子化コンポーネント313は変換スケーリング量子化コンポーネント213と実質的に同様であってよい。変換され量子化された残余ブロックおよび対応する予測ブロックは(関連する制御データとともに)、ビットストリームへの符号化のため、エントロピー符号化コンポーネント331へ転送される。エントロピー符号化コンポーネント331はヘッダフォーマッティングCABACコンポーネント231と実質的に同様であってよい。
変換され量子化された残余ブロックおよび/または対応する予測ブロックは、動き補償コンポーネント321によって使用される参照ブロックへの復元のため、変換量子化コンポーネント313から逆変換量子化コンポーネント329にも転送される。逆変換量子化コンポーネント329はスケーリング逆変換コンポーネント229と実質的に同様であってよい。例によっては、残余ブロックおよび/または復元済み参照ブロックにループ内フィルタコンポーネント325内のループ内フィルタも適用される。ループ内フィルタコンポーネント325はフィルタ制御分析コンポーネント227およびループ内フィルタコンポーネント225と実質的に同様であってよい。ループ内フィルタコンポーネント325はループ内フィルタコンポーネント225に関して述べた複数のフィルタを含み得る。フィルタリングされたブロックはその後、動き補償コンポーネント321によって参照ブロックとして使用されるため、復号済みピクチャバッファコンポーネント323に記憶される。復号済みピクチャバッファコンポーネント323は復号済みピクチャバッファコンポーネント223と実質的に同様であってよい。
図4は、例示的なビデオデコーダ400を示すブロック図である。ビデオデコーダ400は、コーデックシステム200の復号機能を実施するため、および/または動作方法100のステップ111、113、115、および/または117を実施するために使用され得る。デコーダ400は、例えばエンコーダ300から、ビットストリームを受信し、エンドユーザ向けの表示のため、ビットストリームに基づいて復元済み出力ビデオ信号を生成する。
ビットストリームはエントロピー復号コンポーネント433によって受信される。エントロピー復号コンポーネント433は、CAVLC、CABAC、SBAC、PIPE符号化、または他のエントロピー符号化技法など、エントロピー復号方式を実施するように構成される。例えば、エントロピー復号コンポーネント433はヘッダ情報を使用して、ビットストリームに符号語として符号化される追加データを解釈するためのコンテキストを提供できる。復号済み情報は、一般制御データ、フィルタ制御データ、分割情報、動きデータ、予測データ、残余ブロックからの量子化済み変換係数など、ビデオ信号を復号するための所望される情報を含む。量子化済み変換係数は残余ブロックへの復元のため逆変換量子化コンポーネント429へ転送される。逆変換量子化コンポーネント429は逆変換量子化コンポーネント329と同様であってよい。
復元済み残余ブロックおよび/または予測ブロックは、イントラ予測操作に基づく画像ブロックへの復元のためピクチャ内予測コンポーネント417へ転送される。ピクチャ内予測コンポーネント417はピクチャ内推定コンポーネント215およびピクチャ内予測コンポーネント217と同様であってよい。具体的に述べると、ピクチャ内予測コンポーネント417は予測モードを使用してフレーム内で参照ブロックの位置を特定し、その結果に残余ブロックを適用してイントラ予測された画像ブロックを復元する。復元されたイントラ予測済み画像ブロックおよび/または残余ブロックならびに対応するインター予測データは、ループ内フィルタコンポーネント425を経由して復号済みピクチャバッファコンポーネント423へ転送され、これらのコンポーネントはそれぞれ復号済みピクチャバッファコンポーネント223およびループ内フィルタコンポーネント225と実質的に同様であってよい。ループ内フィルタコンポーネント425は復元済み画像ブロック、残余ブロック、および/または予測ブロックをフィルタリングし、このような情報は復号済みピクチャバッファコンポーネント423に記憶される。復元済み画像ブロックはインター予測のため復号済みピクチャバッファコンポーネント423から動き補償コンポーネント421へ転送される。動き補償コンポーネント421は動き推定コンポーネント221および/または動き補償コンポーネント219と実質的に同様であってよい。具体的に述べると、動き補償コンポーネント421は参照ブロックからの動きベクトルを使用して予測ブロックを生成し、その結果に残余ブロックを適用して画像ブロックを復元する。そうして得られた復元済みブロックもまた、ループ内フィルタコンポーネント425を経由して復号済みピクチャバッファコンポーネント423へ転送されてもよい。復号済みピクチャバッファコンポーネント423はさらなる復元済み画像ブロックを引き続き記憶し、これらの復元済み画像ブロックは分割情報によってフレームに復元できる。このようなフレームはシーケンスにも並べられてもよい。このシーケンスは復元済み出力ビデオ信号としてディスプレイへ出力される。
図5は、例示的なHRD 500を示す概略図である。HRD 500は、コーデックシステム200および/またはエンコーダ300などのエンコーダで使用され得る。HRD 500は、ビットストリームがデコーダ400などのデコーダに転送される前に、方法100のステップ109で生成されたビットストリームを検査し得る。いくつかの例では、ビットストリームが符号化されると、ビットストリームはHRD 500を介して継続的に転送され得る。ビットストリームの一部が関連する制約条件に適合しない場合、HRD 500は、エンコーダがビットストリームの対応部分を別のメカニズムで再符号化するように、このような異常をエンコーダに示すことができる。
HRD 500は、仮想ストリームスケジューラ(HSS:hypothetical stream scheduler)541を備える。HSS 541は、仮想配信メカニズムを実行するように構成されたコンポーネントである。仮想配信メカニズムは、HRD 500に入力されるビットストリーム551のタイミングおよびデータフローに関して、ビットストリームまたはデコーダの適合性を検査するために使用される。例えば、HSS 541は、エンコーダから出力されたビットストリーム551を受信し、ビットストリーム551の適合性試験のプロセスを管理し得る。特定の例では、HSS 541は、符号化済みピクチャがHRD 500を通過するレートを制御し、ビットストリーム551が不適合データを含んでいないことを検証することができる。
HSS 541は、CPB 543にビットストリーム551を所定のレートで転送し得る。HRD 500は、復号ユニット(DU)553でデータを管理することができる。DU 553は、アクセスユニット(AU)、またはAUおよび関連する非ビデオ符号化レイヤ(VCL)ネットワーク抽象化レイヤ(NAL)ユニットのサブセットである。具体的には、AUは、出力時刻に関連付けられた1つまたは複数のピクチャを含む。例えば、AUは、単一レイヤのビットストリームに単一のピクチャを含み、マルチレイヤビットストリームに各レイヤのピクチャを含み得る。AUの各ピクチャは、対応するVCL NALユニットにそれぞれ含まれるスライスに細分され得る。したがって、DU 553は、1つもしくは複数のピクチャ、ピクチャの1つもしくは複数のスライス、またはそれらの組合せを含み得る。また、AU、ピクチャ、および/またはスライスを復号するために使用されるパラメータは、非VCL NALユニットに含まれ得る。したがって、DU 553は、DU 553内のVCL NALユニットの復号をサポートするために必要なデータを含む非VCL NALユニットを含む。CPB 543は、HRD 500の先入れ先出しバッファである。CPB 543は、復号順にビデオデータを含むDU 553を含む。CPB 543は、ビットストリーム適合性検証中に使用するために、ビデオデータを記憶する。
CPB 543は、DU 553を復号プロセスコンポーネント545に転送する。復号プロセスコンポーネント545は、VVC標準に適合したコンポーネントである。例えば、復号プロセスコンポーネント545は、エンドユーザによって使用されるデコーダ400をエミュレートしてよい。復号プロセスコンポーネント545は、例示的なエンドユーザデコーダで達成できるレートでDU 553を復号する。復号プロセスコンポーネント545が、CPB 543のオーバーフローを防止するほど充分な速さでDU 553を復号できない場合は、ビットストリーム551は標準に適合しておらず、再符号化されるべきである。
復号プロセスコンポーネント545はDU 553を復号し、復号済みDU 555を生成する。復号済みDU 555は、復号済みピクチャを含む。復号済みDU 555は、DPB 547に転送される。DPB 547は、復号済みピクチャバッファコンポーネント223、323、および/または423と実質的に同様であってよい。インター予測をサポートするため、復号済みDU 555から取得された、参照ピクチャ556として使用するためにマーキングされたピクチャは、さらなる復号をサポートするために、復号プロセスコンポーネント545に戻される。DPB 547は、復号済みビデオシーケンスを一連のピクチャ557として出力する。ピクチャ557は、一般にエンコーダによってビットストリーム551に符号化されたピクチャを反映した、復元済みピクチャである。
ピクチャ557は、出力クロッピングコンポーネント549に転送される。出力クロッピングコンポーネント549は、ピクチャ557に適合性クロッピングウィンドウを適用するように構成される。これにより、出力クロッピング済みピクチャ559が得られる。出力クロッピング済みピクチャ559は、完全に復元されたピクチャである。したがって、出力クロッピング済みピクチャ559は、ビットストリーム551を復号したときにエンドユーザが見ることになるものを模倣している。このようにエンコーダは、符号化が良好なことを確実にするために、出力クロッピング済みピクチャ559を検討することができる。
HRD 500は、ビットストリーム551内のHRDパラメータに基づいて初期化される。例えば、HRD 500は、VPS、SPS、および/またはSEIメッセージからHRDパラメータを読み取ることができる。次いで、HRD 500は、そのようなHRDパラメータ内の情報に基づいてビットストリーム551に対して適合性試験動作を実行することができる。具体例として、HRD 500は、HRDパラメータから1つまたは複数のCPB配信スケジュールを決定することができる。配信スケジュールは、CPBおよび/またはDPBなどのメモリ位置との間のビデオデータの配信のタイミングを指定する。したがって、CPB配信スケジュールは、CPB 543との間のAU、DU 553、および/またはピクチャの配信のタイミングを指定する。HRD 500は、CPB配信スケジュールと同様のDPB 547のDPB配信スケジュールを使用することができることに留意されたい。
ビデオは、様々なレベルのハードウェア能力を有するデコーダによって使用するために、また様々なネットワーク条件のために、異なるレイヤおよび/またはOLSに符号化され得る。CPB配信スケジュールは、これらの問題を反映するように選択される。したがって、上位レイヤサブビットストリームは、最適なハードウェアおよびネットワーク条件に指定され、したがって、上位レイヤは、CPB 543内の大量のメモリおよびDPB 547へのDU 553の転送のための短い遅延を使用する1つまたは複数のCPB配信スケジュールを受信することができる。同様に、下位レイヤサブビットストリームは、限られたデコーダハードウェア能力および/または劣悪なネットワーク条件に対して指定される。したがって、下位レイヤは、CPB 543内の少量のメモリおよびDPB 547へのDU 553の転送のためのより長い遅延を使用する1つまたは複数のCPB配信スケジュールを受信することができる。その後、OLS、レイヤ、サブレイヤ、またはこれらの組合せは、結果として得られるサブビットストリームがサブビットストリームに対して期待される条件下で正しく復号され得ることを保証するために、対応する配信スケジュールに従って試験され得る。したがって、ビットストリーム551内のHRDパラメータは、CPB配信スケジュールを示すとともに、HRD 500がCPB配信スケジュールを決定し、CPB配信スケジュールを対応するOLS、レイヤ、および/またはサブレイヤに相関付けることを可能にするのに十分なデータを含み得る。
図6は、例示的なマルチレイヤビデオシーケンス600を示す概略図である。マルチレイヤビデオシーケンス600は、例えば方法100に従って、コーデックシステム200および/またはエンコーダ300などのエンコーダによって符号化され、コーデックシステム200および/またはデコーダ400などのデコーダによって復号され得る。さらに、マルチレイヤビデオシーケンス600は、HRD 500などのHRDによって標準適合性についてチェックすることができる。マルチレイヤビデオシーケンス600は、符号化されたビデオシーケンス内のレイヤの例示的なアプリケーションを示すために含まれる。マルチレイヤビデオシーケンス600は、レイヤN 631およびレイヤN+1 632などの複数のレイヤを使用する任意のビデオシーケンスである。
一例では、マルチレイヤビデオシーケンス600は、レイヤ間予測621を使用することができる。レイヤ間予測621は、異なるレイヤのピクチャ611、612、613、および614とピクチャ615、616、617、および618との間に適用される。図示した例では、ピクチャ611、612、613、および614はレイヤN+1 632の一部であり、ピクチャ615、616、617、および618はレイヤN 631の一部である。レイヤN 631および/またはレイヤN+1 632などのレイヤは、すべて、同様のサイズ、品質、解像度、信号対雑音比、能力などの特性の同様の値に関連付けられたピクチャのグループである。レイヤは、同じレイヤIDおよび関連する非VCL NALユニットを共有するVCL NALユニットのセットとして形式的に定義され得る。VCL NALユニットは、ピクチャの符号化済みスライスなどのビデオデータを含むように符号化されたNALユニットである。非VCL NALユニットは、ビデオデータの復号、適合性チェックの実行、または他の動作をサポートするシンタクスおよび/またはパラメータなどの非ビデオデータを含むNALユニットである。
図示した例では、レイヤN+1 632は、レイヤN 631よりも大きい画像サイズに関連付けられている。したがって、この例では、レイヤN+1 632のピクチャ611、612、613、および614のピクチャサイズ(例えば、より大きな高さおよび幅、したがってより多くのサンプル)は、レイヤN 631のピクチャ615、616、617、および618のピクチャサイズよりも大きい。しかしながら、このようなピクチャは、他の特性によって、レイヤN+1 632とレイヤN 631との間で分離され得る。レイヤN+1 632およびレイヤN 631の2つのレイヤのみが示されているが、ピクチャのセットは、関連する特性に基づいて任意の数のレイヤに分離することができる。レイヤN+1 632およびレイヤN 631はまた、レイヤIDによって示されてもよい。レイヤIDは、ピクチャに関連付けられたデータの項目であり、ピクチャが指示されたレイヤの一部であることを示す。したがって、各ピクチャ611~618は、どのレイヤN+1 632またはレイヤN 631が対応するピクチャを含むかを示すために、対応するレイヤIDに関連付けられ得る。例えば、レイヤIDは、NALユニット(例えば、レイヤ内のピクチャのスライスおよび/またはパラメータを含む)を含むレイヤの識別子を指定するシンタクス要素であるNALユニットヘッダレイヤID(nuh_layer_id)を含んでもよい。レイヤN 631などのより低い品質/より小さい画像サイズ/より小さいビットストリームサイズに関連付けられたレイヤは、一般に、下位レイヤIDが割り当てられ、下位レイヤと呼ばれる。さらに、レイヤN+1 632などの、より高い品質/より大きい画像サイズ/より大きいビットストリームサイズに関連付けられたレイヤには、一般に、より高いレイヤIDが割り当てられ、上位レイヤと呼ばれる。
異なるレイヤ631~632内のピクチャ611~618は、代替的に表示されるように構成される。具体的な例として、デコーダは、より小さいピクチャが望まれる場合、現在の表示時間においてピクチャ615を復号および表示してもよく、または、デコーダは、より大きいピクチャが望まれる場合、現在の表示時間においてピクチャ611を復号および表示してもよい。したがって、上位レイヤN+1 632におけるピクチャ611~614は、(ピクチャサイズの違いにかかわらず)下位レイヤN 631における対応するピクチャ615~618と実質的に同じ画像データを含む。具体的には、ピクチャ611はピクチャ615と実質的に同じ画像データを含み、ピクチャ612はピクチャ616と実質的に同じ画像データを含む、などである。
ピクチャ611~618は、同じレイヤN 631またはN+1 632内の他のピクチャ611~618を参照することによって符号化され得る。同じレイヤ内の別のピクチャを参照してピクチャを符号化すると、インター予測623が得られる。インター予測623は実線矢印で示されている。例えば、ピクチャ613は、レイヤN+1 632内のピクチャ611、612、および/または614のうちの1つまたは2つを参照として使用するインター予測623を使用することによって符号化されてもよく、1つのピクチャが単方向インター予測のために参照され、および/または2つのピクチャが双方向インター予測のために参照される。さらに、ピクチャ617は、レイヤN 631内のピクチャ615、616、および/または618のうちの1つまたは2つを参照として使用してインター予測623を使用することによって符号化されてもよく、一方向インター予測のためには1つのピクチャが参照され、および/または双方向インター予測のためには2つのピクチャが参照される。インター予測623を実行する際に、あるピクチャが同じレイヤ内の別のピクチャの参照として使用される場合、そのピクチャは参照ピクチャと呼ばれ得る。例えば、ピクチャ612は、インター予測623に従ってピクチャ613を符号化するために使用される参照ピクチャであり得る。インター予測623は、マルチレイヤコンテキストにおけるレイヤ内予測とも呼ばれ得る。したがって、インター予測623は、参照ピクチャと現在のピクチャとが同じレイヤ内にある現在のピクチャとは異なる参照ピクチャ内の指示されたサンプルを参照することによって現在のピクチャのサンプルを符号化するメカニズムである。
ピクチャ611~618は、異なるレイヤ内の他のピクチャ611~618を参照することによって符号化することもできる。このプロセスはレイヤ間予測621として知られており、破線の矢印で示されている。レイヤ間予測621は、現在のピクチャと参照ピクチャとが異なるレイヤにあり、したがってnuh_layer_idの値が異なる参照ピクチャ内の指示されたサンプルを参照することによって現在のピクチャのサンプルを符号化するメカニズムである。例えば、下位レイヤN 631のピクチャを参照ピクチャとして使用して、上位レイヤN+1 632の対応するピクチャを符号化することができる。具体的な一例として、ピクチャ611は、レイヤ間予測621に従ってピクチャ615を参照することによって符号化され得る。このような場合、ピクチャ615がレイヤ間参照ピクチャとして用いられる。レイヤ間参照ピクチャは、レイヤ間予測621に用いられる参照ピクチャである。ほとんどの場合、レイヤ間予測621は、ピクチャ611などの現在のピクチャが、同じAU 627に含まれ、ピクチャ615などの下位レイヤにあるレイヤ間参照ピクチャのみを使用できるように制約される。複数のレイヤ(例えば、2個を超える)が利用可能である場合、レイヤ間予測621は、現在のピクチャよりも低いレベルにある複数のレイヤ間参照ピクチャに基づいて現在のピクチャを符号化/復号することができる。
ビデオエンコーダは、マルチレイヤビデオシーケンス600を使用して、インター予測623およびレイヤ間予測621の多くの異なる組合せおよび/または順列によってピクチャ611~618を符号化することができる。例えば、ピクチャ615は、イントラ予測に従って符号化され得る。その後、ピクチャ616~618は、ピクチャ615を参照ピクチャとして使用することによってインター予測623に従って符号化され得る。さらに、ピクチャ611は、ピクチャ615をレイヤ間参照ピクチャとして使用することにより、レイヤ間予測621に従って符号化され得る。その後、ピクチャ612~614は、ピクチャ611を参照ピクチャとして使用することによってインター予測623に従って符号化され得る。したがって、参照ピクチャは、異なる符号化メカニズムのための単一レイヤ参照ピクチャおよびレイヤ間参照ピクチャの両方として機能することができる。下位レイヤN 631個のピクチャに基づいて上位レイヤN+1 632個のピクチャを符号化することにより、上位レイヤN+1 632は、インター予測623およびレイヤ間予測621よりもはるかに低い符号化効率を有するイントラ予測を使用することを回避することができる。このように、イントラ予測の不十分な符号化効率は、最小/最低品質のピクチャに制限され、したがって、最小量のビデオデータを符号化することに制限され得る。参照ピクチャおよび/またはレイヤ間参照ピクチャとして使用されるピクチャは、参照ピクチャリスト構造に含まれる参照ピクチャリストのエントリに示すことができる。
ピクチャ611~618はまた、アクセスユニット(AU)627に含まれ得る。AU 627は、異なるレイヤに含まれる、復号時の出力時刻が同一の符号化済みピクチャのセットである。したがって、同じAU 627内の符号化済みピクチャは、同時にデコーダにおいてDPBから出力されるようにスケジュールされる。例えば、ピクチャ614および618は、同じAU 627内にある。ピクチャ613および617は、ピクチャ614および618とは異なるAU 627にある。同じAU 627内のピクチャ614および618が代替的に表示されてもよい。例えば、小さいピクチャサイズが望まれる場合にピクチャ618が表示され、大きいピクチャサイズが望まれる場合にピクチャ614が表示されてもよい。大きいピクチャサイズが望まれる場合、ピクチャ614が出力され、ピクチャ618はレイヤ間予測621にのみ使用される。この場合、ピクチャ618は、レイヤ間予測621が完了すると、出力されずに破棄される。
適合性試験の目的のために、AU 627は、DU 628にさらに細分することができる。DU 628は、AU 627、または、AU 627内の1つまたは複数のVCL NALユニットおよび関連する非VCL NALユニットを含むAU 627のサブセットとして定義され得る。別の言い方をすれば、DU 628は、ピクチャの復号をサポートするために、シンタクス要素とともに単一の符号化済みピクチャを含むことができる。単一レイヤビットストリームでは、DU 628はAU 627である。マルチレイヤビットストリームでは、DU 628はAU 627のサブセットである。HRDで適合性試験を実行するときに、AU 627とDU 628との間の区別を使用することができる。例えば、いくつかの適合性試験は各AU 627に適用されるように構成され、他の適合性試験は各AU 627内の各DU 628に適用されるように構成される。1つまたは複数の完全なAU 627に適用される適合性試験は、AUレベル動作と呼ぶことができる。1つまたは複数のDU 628に適用される適合性試験は、DUレベル動作と呼ぶことができる。したがって、AUレベルは、1つまたは複数の完全なAU 627に適用され、したがって、同じ出力時間を共有する1つまたは複数の完全なピクチャグループに適用されるような動作の記述である。また、DUレベルは、1つまたは複数の完全なDU 628に適用され、したがって1つまたは複数のピクチャに適用される動作の記述である。
図7は、例示的なビットストリーム700を示す概略図である。例えば、ビットストリーム700は、方法100に従って、コーデックシステム200および/またはデコーダ400で復号するために、コーデックシステム200および/またはエンコーダ300で生成することができる。さらに、ビットストリーム700は、マルチレイヤビデオシーケンス600を含み得る。さらに、ビットストリーム700は、HRD 500などのHRDの動作を制御するための様々なパラメータを含み得る。そのようなパラメータに基づいて、HRDは、復号のためにデコーダへ送信する前に、標準への適合性についてビットストリーム700をチェックすることができる。
ビットストリーム700は、VPS 711と、1つまたは複数のSPS 713と、複数のピクチャパラメータセット(PPS:Picture Parameter Set)715と、複数のスライスヘッダ717と、画像データ720と、バッファリング期間(BP)SEIメッセージ716と、PT SEIメッセージ718、および/または、DUI SEIメッセージ719とを含む。VPS 711は、ビットストリーム700全体に関するデータを含む。例えば、VPS 711は、ビットストリーム700で使用されるデータ関連OLS、レイヤ、および/またはサブレイヤを含み得る。SPS 713は、ビットストリーム700に含まれる符号化済みビデオシーケンス内のすべてのピクチャに共通のシーケンスデータを含む。例えば、各レイヤは、1つまたは複数の符号化済みビデオシーケンスを含むことができ、各符号化済みビデオシーケンスは、対応するパラメータについてSPS 713を参照することができる。SPS 713内のパラメータは、ピクチャサイジング、ビット深度、符号化ツールパラメータ、ビットレート制限などを含み得る。各シーケンスはSPS 713を参照するが、いくつかの例では、単一のSPS 713は複数のシーケンスのデータを含み得ることに留意されたい。PPS 715は、ピクチャ全体に適用されるパラメータを含む。したがって、ビデオシーケンスにおける各ピクチャは、PPS 715を参照し得る。各ピクチャはPPS 715を参照するが、いくつかの例では、単一のPPS 715が複数のピクチャのデータを含むことができることに留意されたい。例えば、複数の類似したピクチャが、類似したパラメータに従って符号化されてよい。そのような場合、単一のPPS 715が、そのような類似ピクチャのためのデータを含み得る。PPS 715は、対応するピクチャ内のスライスに利用可能な符号化ツール、量子化パラメータ、オフセットなどを示すことができる。
スライスヘッダ717は、ピクチャ内の各スライスに固有のパラメータを含む。したがって、ビデオシーケンス内のスライス727ごとに1つのスライスヘッダ717が存在し得る。スライスヘッダ717は、スライスタイプ情報、フィルタリング情報、予測重み、タイルエントリポイント、デブロッキングパラメータなどを含むことができる。いくつかの例では、ビットストリーム700は、単一のピクチャ725内のすべてのスライス727に適用されるパラメータを含むシンタクス構造であるピクチャヘッダも含むことができることに留意されたい。このため、ピクチャヘッダおよびスライスヘッダ717は、いくつかのコンテキストにおいて交換可能に使用され得る。例えば、特定のパラメータは、そのようなパラメータがピクチャ725内のすべてのスライス727に共通であるかどうかに応じて、スライスヘッダ717とピクチャヘッダとの間で移動され得る。
画像データ720は、インター予測および/またはイントラ予測に従って符号化されたビデオデータ、ならびに対応する変換され量子化された残余データを含む。例えば、画像データ720は、レイヤ723、ピクチャ725、および/またはスライス727を含み得る。レイヤ723は、nuh_layer_idなどのレイヤIDによって示されるような指定された特性(例えば、共通解像度、フレームレート、画像サイズなど)を共有するVCL NALユニットと、関連する非VCL NALユニットとのセットである。例えば、レイヤ723は、同じnuh_layer_idならびに関連するパラメータセットおよび/またはSEIメッセージを共有するピクチャ725のセットを含むことができる。レイヤ723は、レイヤ631および/または632と実質的に同様であってもよい。nuh_layer_idは、少なくとも1つのNALユニットを含むレイヤ723の識別子を指定するシンタクス要素である。例えば、ベース層として知られる最低品質レイヤ723はnuh_layer_idの最低値を含むことができ、より高い品質のレイヤ723についてnuh_layer_idの値が増加する。したがって、下位レイヤはnuh_layer_idの値がより小さいレイヤ723であり、上位レイヤはnuh_layer_idの値がより大きいレイヤ723である。レイヤ723はまた、OLSを含むことができる。OLSは、1つまたは複数のレイヤ723が出力レイヤとして指定されるレイヤ723のセットである。出力レイヤは、デコーダにおける出力および表示のために指定される任意のレイヤ723である。出力レイヤではないレイヤ723は、例えばレイヤ間予測を介して出力レイヤの復号をサポートするためにOLSに含めることができる。
ピクチャ725は、フレームまたはそのフィールドを生成するルーマサンプルのアレイおよび/またはクロマサンプルのアレイである。例えば、ピクチャ725は、表示のために出力され得るか、または、出力のための他のピクチャ725の符号化をサポートするために使用され得る符号化済み画像である。ピクチャ725は、1つまたは複数のスライス727を含む。スライス727は、整数個の完全なタイル、または単一のNALユニットに排他的に含まれるピクチャ725の(例えば、タイル内の)整数個の連続する完全な符号化ツリーユニット(CTU)行として定義され得る。スライス727は、CTUおよび/または符号化ツリーブロック(CTB)にさらに細分される。CTUは、符号化ツリーで分割できる、所定のサイズのサンプルのグループである。CTBは、CTUのサブセットであり、CTUのルーマ成分またはクロマ成分を含む。CTU/CTBは、符号化ツリーに基づいて、符号化ブロックにさらに細分される。符号化ブロックは、次に、予測メカニズムに従って符号化/復号することができる。
SEIメッセージは、復号済みピクチャ内のサンプルの値を決定するために、復号プロセスで必要とされない情報を伝達する、指定されたセマンティクスを有するシンタクス構造である。例えば、SEIメッセージは、HRDプロセスをサポートするためのデータ、またはデコーダにおけるビットストリーム700の復号に直接関連しない他のサポートデータを含み得る。BP SEIメッセージ716は、対応するOLSおよび/またはレイヤ723を試験するためのCPBを管理するためにHRDを初期化するためのHRDパラメータを含むSEIメッセージである。PT SEIメッセージ718は、対応するOLSおよび/またはレイヤ723を試験するためのCPBおよび/またはDPBにおけるAUの配信情報を管理するためのHRDパラメータを含むSEIメッセージである。DUI SEIメッセージ719は、対応するOLSおよび/またはレイヤ723を試験するためにCPBおよび/またはDPBにおけるDUの配信情報を管理するためのHRDパラメータを含むSEIメッセージである。
ビットストリーム700は、NALユニットのシーケンスとして符号化され得ることに留意されたい。NALユニットは、ビデオデータおよび/またはサポートシンタクスのためのコンテナである。NALユニットは、VCL NALユニットまたは非VCL NALユニットであり得る。VCL NALユニットは、ビデオデータを含むように符号化されたNALユニットである。具体的には、VCL NALユニットは、スライス727および関連するスライスヘッダ717を含む。非VCL NALユニットは、ビデオデータの復号、適合性チェックの実行、または他の動作をサポートするシンタクスおよび/またはパラメータなどの非ビデオデータを含むNALユニットである。非VCL NALユニットは、VPS NALユニット、SPS NALユニット、およびPPS NALユニットを含むことができ、これらはそれぞれ、VPS 711、SPS 713、およびPPS 715を含む。非VCL NALユニットはまた、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719を含むことができるSEI NALユニットを含むことができる。したがって、SEI NALユニットは、SEIメッセージを含むNALユニットである。NALユニットの前述のリストは例示的であり、網羅的ではないことに留意されたい。
HRD 500などのHRDを使用して、標準への適合性についてビットストリーム700をチェックすることができる。HRDは、HRDパラメータを使用してビットストリーム700に対して適合性試験を実行することができる。HRDパラメータ735は、VPS 711および/またはSPS 713内のシンタクス構造に格納することができる。HRDパラメータ735は、HRDの動作条件を初期化および/または定義するシンタクス要素である。BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719は、VPS 711および/またはSPS 713内のHRDパラメータ735に基づいて、特定のシーケンス、AU、および/またはDUに対するHRDの動作をさらに定義するパラメータを含む。
いくつかのビデオ符号化システムでは、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719は、VPS 711を直接参照するパラメータを含み得る。この依存関係は、特定の困難をもたらす。例えば、ビットストリーム700は、様々なレイヤ723および/またはOLSで符号化することができる。デコーダがOLSを要求すると、エンコーダ、スライサ、および/または中間ストレージサーバは、デコーダ能力に基づいて、および/または現在のネットワーク条件に基づいて、レイヤ723のOLSをデコーダに送信することができる。具体的には、エンコーダ、スライサ、および/またはストレージサーバは、ビットストリーム抽出プロセスを使用して、ビットストリーム700からOLSの外側のレイヤ723を除去し、残りのレイヤ723をデコーダに向けて送信する。このプロセスにより、多くの異なるデコーダが、デコーダ側の条件に基づいてビットストリーム700の異なる表現をそれぞれ取得することが可能になる。上述したように、VPS 711は、OLSおよび/またはレイヤ723に関連するデータを含む。しかしながら、いくつかのOLSは単一のレイヤ723を含む。単一のレイヤ723を有するOLSがデコーダに送信されるとき、SPS 713、PPS 715、およびスライスヘッダ717内のデータは単一レイヤ723のビットストリームを復号するのに十分であり得るので、デコーダはVPS 711内のデータを必要としない場合がある。不要なデータの送信を回避するために、エンコーダ、スライサ、および/またはストレージサーバは、ビットストリーム抽出プロセスの一部としてVPS 711を除去することができる。この手法は、抽出されてデコーダに送信されるサブビットストリームの符号化効率を高めることができるため、有益であり得る。しかしながら、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719の依存関係は、VPS 711が除去されるときにエラーを生じる可能性がある。具体的には、VPS 711を省略すると、VPS 711が削除されたときに、VPS 711内でSEIメッセージが依存するデータがデコーダで受信されないため、SEIメッセージがエラーを返す可能性がある。さらに、HRDは、デコーダを模倣することによって適合性についてビットストリームをチェックする。したがって、HRDは、VPS 711を解析することなく、単一のレイヤ723を有するOLSをチェックし得る。したがって、いくつかのシステムのHRDは、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719のパラメータを解決することができない可能性があり、したがって、HRDは、適合性についてそのようなOLSをチェックすることができない可能性がある。
ビットストリーム700は、上記の問題を修正するために改善される。具体的には、VPS 711への依存性を除去するために、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719にパラメータが追加される。したがって、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719は、単一レイヤ723を含むOLSのためにVPS 711が省略されている場合であっても、HRDおよび/またはデコーダによって完全に解析および解決され得る。依存関係は、du_hrd_params_present_flag 731およびdu_cpb_params_in_pic_timing_sei_flag 733をSEIメッセージのうちの1つまたは複数に含めることによって除去され得る。図示した例では、du_hrd_params_present_flag 731およびdu_cpb_params_in_pic_timing_sei_flag 733がBP SEIメッセージ716に含まれる。
du_hrd_params_present_flag 731は、HRDがAUレベルで動作すべきかDUレベルで動作すべきかを指定するシンタクス要素である。AUレベルは、1つまたは複数のAU全体に適用される(例えば、同じ出力時間を共有する1つまたは複数のピクチャグループ全体に適用される)ような動作の記述である。DUレベルは、1つまたは複数のDU全体に適用される(例えば、1つまたは複数のピクチャに適用される)ような動作の記述である。具体的な一例では、du_hrd_params_present_flag 731は、DUレベルHRDパラメータが存在し、HRDがAUレベルまたはDUレベルで動作可能であることを指定する場合には、1に設定され、DUレベルHRDパラメータが存在せず、HRDがAUレベルで動作することを指定する場合には、0に設定される。
HRDがDUレベル(例えば、du_hrd_params_present_flag 731が1に設定された場合)で動作する場合、HRDは、CPB除去遅延737などのDUパラメータを参照すべきである。CPB除去遅延737は、DUのCPB除去遅延を指定するシンタクス要素であり、これは、HRDのDPBに転送される前に、1つまたは複数のDU(ピクチャ725)がCPBに留まることができる時間である。しかしながら、例によっては、関連するCPB除去遅延737は、PT SEIメッセージ718またはDUI SEIメッセージ719に含まれてもよい。du_cpb_params_in_pic_timing_sei_flag 733は、DUレベルのCPB除去遅延737パラメータがPT SEIメッセージ718に存在するか、DUI SEIメッセージ719に存在するかを指定するシンタクス要素である。特定の例では、du_cpb_params_in_pic_timing_sei_flag 733は、DUレベルCPB除去遅延737パラメータがPT SEIメッセージ718に存在し、DUI SEIメッセージ719が利用できないことを指定するときに1に設定される。さらに、DUレベルのCPB除去遅延737パラメータがDUI SEIメッセージ719内に存在し、PT SEIメッセージ718がDUレベルのCPB除去遅延737パラメータを含まないことを指定する場合、du_cpb_params_in_pic_timing_sei_flag 733を0に設定することができる。
du_hrd_params_present_flag 731およびdu_cpb_params_in_pic_timing_sei_flag 733をSEIメッセージに含めることにより、SEIメッセージはVPS 711に依存しない。したがって、ビットストリーム700からVPS 711が省略されても、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719を解析することができる。したがって、HRDは、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719を適切に解析し、単一レイヤを有するOLSの適合性試験を実行することができる。さらに、デコーダは、復号プロセスをサポートするために、BP SEIメッセージ716、PT SEIメッセージ718、および/またはDUI SEIメッセージ719内のシンタクス要素を必要に応じて解析および使用することができる。その結果、エンコーダおよびデコーダの機能が向上し、エラーが回避される。さらに、SEIメッセージとVPS 711との間の依存関係を除去することは、特定の場合にはVPS 711の除去をサポートし、これは符号化効率を向上させ、したがって、そのような場合にはエンコーダおよびデコーダの両方におけるプロセッサ、メモリ、および/またはネットワークシグナリングリソース使用量を低減する。
ここで、前述した情報が以下でより詳細に説明される。階層化ビデオ符号化は、スケーラブル符号化またはスケーラビリティを有するビデオ符号化とも呼ばれる。ビデオ符号化におけるスケーラビリティは、マルチレイヤ符号化技術を使用することによってサポートされ得る。マルチレイヤビットストリームは、ベースレイヤ(BL:base layer)および1つまたは複数のエンハンスメントレイヤ(EL:enhancement layer)を含む。スケーラビリティの例は、空間スケーラビリティ、品質/信号対雑音比(SNR)スケーラビリティ、マルチビュースケーラビリティ、フレームレートスケーラビリティなどを含む。マルチレイヤ符号化技術が使用される場合、ピクチャまたはその一部は、参照ピクチャを使用せずに符号化されてもよく(イントラ予測)、同じレイヤ内の参照ピクチャを参照することによって符号化されてもよく(インター予測)、および/または他のレイヤ内の参照ピクチャを参照することによって符号化されてもよい(レイヤ間予測)。現在のピクチャのレイヤ間予測に用いられる参照ピクチャをレイヤ間参照ピクチャ(ILRP:inter-layer reference picture)と呼ぶ。図6は、異なるレイヤのピクチャが異なる解像度を有する空間スケーラビリティのためのマルチレイヤ符号化の例を示す。
いくつかのビデオ符号化ファミリは、単一レイヤ符号化のためのプロファイルから分離されたプロファイルにおけるスケーラビリティのサポートを提供する。スケーラブルビデオ符号化(SVC)は、空間的、時間的、および品質のスケーラビリティをサポートするアドバンストビデオ符号化(AVC)のスケーラブルな拡張である。SVCの場合、ELピクチャ内の各マクロブロック(MB:macroblock)においてフラグがシグナリングされることにより、下位レイヤからのコロケートブロックを使用してEL MBが予測されるかどうかを示す。コロケートブロックからの予測は、テクスチャ、動きベクトル、および/または符号化モードを含み得る。SVCの実装は、それらの設計において修正されていないAVC実装を直接再利用しない場合がある。SVC ELマクロブロックのシンタクスおよび復号プロセスは、AVCのシンタクスおよび復号プロセスとは異なる。
スケーラブルHEVC(SHVC:scalable HEVC)は、空間的および品質のスケーラビリティをサポートするHEVCの拡張である。マルチビューHEVC(MV-HEVC:multiview HEVC)は、マルチビュースケーラビリティのサポートを提供するHEVCの拡張である。3D HEVC(3D-HEVC)は、MV-HEVCよりも高度で効率的な3Dビデオ符号化のサポートを提供するHEVCの拡張である。時間的スケーラビリティは、単一レイヤHEVCコーデックの不可欠な部分として含まれ得る。HEVCのマルチレイヤ拡張では、レイヤ間予測に用いられる復号済みピクチャは、同じAUのみに由来し、長期参照ピクチャ(LTRP:long-term reference picture)として扱われる。このようなピクチャには、現在のレイヤ内の他の時間的参照ピクチャとともに、参照ピクチャリスト内の参照インデックスが割り当てられる。レイヤ間予測(ILP:inter-layer prediction)は、参照ピクチャリスト内のレイヤ間参照ピクチャを参照するための参照インデックスの値を設定することにより、予測ユニットレベルで実現される。空間的スケーラビリティは、ILRPが符号化または復号されている現在のピクチャとは異なる空間分解能を有する場合、参照ピクチャまたはその一部を再サンプリングする。参照ピクチャの再サンプリングは、ピクチャレベルまたは符号化ブロックレベルのいずれかで実現され得る。
VVCはまた、階層化ビデオ符号化をサポートし得る。VVCビットストリームは、複数のレイヤを含み得る。レイヤはすべて互いに独立であり得る。例えば、レイヤ間予測を用いずに、各レイヤを符号化することができる。この場合、各レイヤは、サイマルキャストレイヤとも呼ばれる。場合によっては、レイヤのうちのいくつかはILPを使用して符号化される。VPS内のフラグは、レイヤがサイマルキャストレイヤであるかどうか、またはいくつかのレイヤがILPを使用するかどうかを示すことができる。いくつかのレイヤがILPを使用する場合、レイヤ間のレイヤ依存関係もVPSでシグナリングされる。SHVCおよびMV-HEVCとは異なり、VVCはOLSを指定しない場合がある。OLSは、指定されたレイヤのセットを含み、レイヤのセット内の1つまたは複数のレイヤが出力レイヤであるように指定される。出力レイヤは、出力されるOLSのレイヤである。VVCのいくつかの実装形態では、レイヤがサイマルキャストレイヤである場合、復号および出力のために1つのレイヤのみが選択され得る。VVCのいくつかの実装形態では、任意のレイヤがILPを使用するとき、すべてのレイヤを含むビットストリーム全体が復号されるように指定される。また、これらのレイヤのうち、あるレイヤが出力レイヤであるように指定される。出力レイヤは、最上位レイヤのみ、すべてのレイヤ、または指示された下位レイヤのセットを最上位レイヤに加えたものであると示されてもよい。
前述した態様には、いくつか問題がある。例えば、SPS、PPS、およびAPS NALユニットのnuh_layer_id値は、適切に制約されない場合がある。さらに、SEI NALユニットのTemporalId値が適切に制約されない場合がある。また、参照ピクチャの再サンプリングが有効であり、CLVS内のピクチャの空間的解像度が異なる場合、NoOutputOfPriorPicsFlagの設定が適切に指定されないことがある。また、いくつかのビデオ符号化システムでは、サフィクスSEIメッセージをスケーラブルネスティングSEIメッセージに含めることができない。別の例として、バッファリング期間、ピクチャタイミング、および復号ユニット情報SEIメッセージは、VPSおよび/またはSPSに対する解析依存性を含み得る。
一般に、本開示は、ビデオ符号化改善手法を説明する。技術の説明は、VVCに基づく。しかしながら、これらの技術は、他のビデオコーデック仕様に基づく階層化ビデオ符号化にも適用される。
上述した1つまたは複数の問題が、以下の通り解決され得る。SPS、PPS、およびAPS NALユニットのnuh_layer_id値は、本明細書では適切に制約される。SEI NALユニットのTemporalId値は、本明細書では適切に制約される。NoOutputOfPriorPicsFlagの設定は、参照ピクチャの再サンプリングが有効にされ、CLVS内のピクチャが異なる空間的解像度を有する場合に適切に指定される。サフィクスSEIメッセージは、スケーラブルネスティングSEIメッセージに含めることができる。VPSまたはSPS上のBP、PT、およびDUI SEIメッセージの解析依存性は、BP SEIメッセージ構文内のシンタクス要素decoding_unit_hrd_params_present_flag、PT SEIメッセージ構文内のシンタクス要素decoding_unit_hrd_params_present_flagおよびdecoding_unit_cpb_params_in_pic_timing_sei_flag、ならびにDUI SEIメッセージ内のシンタクス要素decoding_unit_cpb_params_in_pic_timing_sei_flagを繰り返すことによって除去することができる。
前述のメカニズムの例示的な実装形態は以下の通りである。例示的な一般NALユニットセマンティクスは以下の通りである。
nuh_temporal_id_plus1から1を引いたものは、NALユニットの一時識別子を指定する。nuh_temporal_id_plus1の値は0に等しくすべきではない。変数TemporalIdは、以下のように導出することができる。
TemporalId=nuh_temporal_id_plus1-1
nal_unit_typeがIDR_W_RADLからRSV_IRAP_13までの範囲(両端を含む)にあるとき、TemporalIdは0に等しくなければならない。nal_unit_typeがSTSA_NUTに等しいとき、TemporalIdは0に等しくてはならない。
TemporalIdの値は、アクセスユニットのすべてのVCL NALユニットについて同じでなければならない。符号化済みピクチャ、レイヤアクセスユニット、またはアクセスユニットのTemporalIdの値は、符号化済みピクチャ、レイヤアクセスユニット、またはアクセスユニットのVCL NALユニットのTemporalIdの値であってもよい。サブレイヤ表現のTemporalIdの値は、サブレイヤ表現内のすべてのVCL NALユニットのTemporalIdの最大値であってもよい。
非VCL NALユニットに対するTemporalIdの値は、以下のように制約される。nal_unit_typeがDPS_NUT、VPS_NUT、またはSPS_NUTに等しい場合、TemporalIdは0に等しく、NALユニットを含むアクセスユニットのTemporalIdは0に等しくなければならない。そうではなく、nal_unit_typeがEOS_NUTまたはEOB_NUTに等しい場合、TemporalIdは0に等しくなければならない。そうではなく、nal_unit_typeがAUD_NUT、FD_NUT、PREFIX_SEI_NUT、またはSUFFIX_SEI_NUTに等しい場合、TemporalIdは、NALユニットを含むアクセスユニットのTemporalIdに等しくなければならない。そうではなく、nal_unit_typeがPPS_NUTまたはAPS_NUTに等しい場合、TemporalIdは、NALユニットを含むアクセスユニットのTemporalId以上でなければならない。NALユニットが非VCL NALユニットである場合、TemporalIdの値は、非VCL NALユニットが適用するすべてのアクセスユニットのTemporalId値の最小値に等しくなければならない。nal_unit_typeがPPS_NUTまたはAPS_NUTに等しい場合、TemporalIdは、包含するアクセスユニットのTemporalId以上であってもよい。これは、すべてのPPSおよびAPSがビットストリームの先頭に含まれ得るからである。さらに、第1の符号化済みピクチャは0に等しいTemporalIdを有する。
例示的なシーケンスパラメータセットRBSPセマンティクスは以下の通りである。SPS RBSPは、参照される前に復号プロセスに利用可能でなければならない。SPSは、0に等しいTemporalIdを有する少なくとも1つのアクセスユニットに含まれてもよく、または外部メカニズムを介して提供されてもよい。SPSを含むSPS NALユニットは、SPSを参照するPPS NALユニットの最低のnuh_layer_id値に等しいnuh_layer_idを有するように制約され得る。
例示的なピクチャパラメータセットRBSPセマンティクスは以下の通りである。PPS RBSPは、参照される前に復号プロセスに利用可能でなければならない。PPSは、PPS NALユニットのTemporalId以下のTemporalIdを有する少なくとも1つのアクセスユニットに含まれるか、または外部メカニズムを介して提供されるべきである。PPS RBSPを含むPPS NALユニットは、PPSを参照する符号化済みスライスNALユニットの最低nuh_layer_id値に等しいnuh_layer_idを有するべきである。
例示的な適応パラメータセットのセマンティクスは以下の通りである。各APS RBSPは、参照される前に復号プロセスに利用可能でなければならない。APSはまた、APSを参照する、または外部メカニズムを介して提供される符号化済みスライスNALユニットのTemporalId以下のTemporalIdを有する少なくとも1つのアクセスユニットに含まれるべきである。APS NALユニットは、複数レイヤのピクチャ/スライスで共有することができる。APS NALユニットのnuh_layer_idは、APS NALユニットを参照する符号化済みスライスNALユニットの最低のnuh_layer_id値に等しくなければならない。あるいは、APS NALユニットは、複数レイヤのピクチャ/スライスによって共有されなくてもよい。APS NALユニットのnuh_layer_idは、APSを参照するスライスのnuh_layer_idと等しくなければならない。
一例では、現在のピクチャの復号前のDPBからのピクチャの除去は、以下のように説明される。現在のピクチャの復号前(しかし、現在のピクチャの第1のスライスのスライスヘッダを解析した後)のDPBからのピクチャの除去は、(現在のピクチャを含む)アクセスユニットnの第1の復号ユニットのCPB除去時間に行われ得る。これは次のように進行する。参照ピクチャリスト構築のための復号プロセスが呼び出され、参照ピクチャマーキングのための復号プロセスが呼び出される。
現在のピクチャが、ピクチャ0ではない符号化済みレイヤビデオシーケンス開始(CLVSS)ピクチャである場合、以下の順序付きステップが適用される。試験対象のデコーダに対し、変数NoOutputOfPriorPicsFlagが以下の通りに導かれ得る。SPSから導出されたpic_width_in_luma_samples、pic_height_max_in_luma_samples、chroma_format_idc、separate_colour_plane_flag、bit_depth_luma_minus8、bit_depth_chroma_minus8、またはsps_max_dec_pic_buffering_minus1[Htid]の値が、それぞれ、前のピクチャによって参照されるSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、chroma_format_idc、separate_colour_plane_flag、bit_depth_luma_minus8、bit_depth_chroma_minus8、またはsps_max_dec_pic_buffering_minus1[Htid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、試験中のデコーダによって1に設定され得る。これらの条件下では、NoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagと同じに設定することが好ましい場合があるが、この場合は、試験対象のデコーダが、NoOutputOfPriorPicsFlagを1に設定することが可能になっている。そうでない場合は、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagに等しく設定してよい。
試験対象のデコーダに対して得られたNoOutputOfPriorPicsFlagの値がHRDに適用され、その結果、NoOutputOfPriorPicsFlagの値が1のときは、DPB内のすべてのピクチャストレージバッファが、含んでいるピクチャを出力することなく空にされ、DPBフルネスがゼロに設定される。以下の条件の両方がDPB内の任意のピクチャkに当てはまる場合、DPB内のそのようなピクチャkはすべてDPBから除去される。ピクチャkは参照用に未使用としてマーキングされ、ピクチャkは0に等しいPictureOutputFlagを有するか、または対応するDPB出力時間が現在のピクチャnの第1の復号ユニット(復号ユニットmとして示される)のCPB除去時間以下である。これは、DpbOutputTime[k]がDuCpbRemovalTime[m]以下である場合に発生し得る。DPBから除去された各ピクチャについて、DPBフルネスは1だけデクリメントされる。
例示的なDPBからのピクチャの出力または除去は、以下の通りである。現在のピクチャの復号前(しかし、現在のピクチャの第1のスライスのスライスヘッダを解析した後)のDPBからのピクチャの出力および除去は、現在のピクチャを含むアクセスユニットの第1の復号ユニットがCPBから除去され、以下のように進むときに行われ得る。参照ピクチャリスト構築のための復号プロセスおよび参照ピクチャマーキングのための復号プロセスが呼び出される。
現在のピクチャが、ピクチャ0でないCLVSSピクチャの場合は、以下の順序付きステップが適用され得る。試験対象のデコーダに対し、変数NoOutputOfPriorPicsFlagが以下の通りに導出され得る。SPSから導出されたpic_width_in_luma_samples、pic_height_max_in_luma_samples、chroma_format_idc、separate_colour_plane_flag、bit_depth_luma_minus8、bit_depth_chroma_minus8またはsps_max_dec_pic_buffering_minus1[Htid]の値が、それぞれ、前のピクチャによって参照されるSPSから導出されたpic_width_in_luma_samples、pic_height_in_luma_samples、chroma_format_idc、separate_colour_plane_flag、bit_depth_luma_minus8、bit_depth_chroma_minus8またはsps_max_dec_pic_buffering_minus1[Htid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、試験中のデコーダによって1に設定され得る。これらの条件下では、NoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、この場合は、試験対象のデコーダが、NoOutputOfPriorPicsFlagを1に設定することができる。そうでない場合は、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagに等しく設定することができる。
試験対象のデコーダに対して導出されたNoOutputOfPriorPicsFlagの値は、以下の通りにHRDに適用され得る。NoOutputOfPriorPicsFlagの値が1の場合、DPB内のすべてのピクチャストレージバッファが、含んでいるピクチャを出力することなく空にされ、DPBフルネスが0に等しく設定され得る。そうでない場合(NoOutputOfPriorPicsFlagの値が0に等しいとき)は、出力する必要がなく、参照用に使用されないものとしてマーキングされたピクチャを含むすべてのピクチャストレージバッファが(出力することなく)空にされてよく、かつバンピングプロセスを繰り返し呼び出すことによって、DPB内の空でないピクチャストレージバッファがすべて空にされ、DPBフルネスが0に等しく設定され得る。
そうでない場合(現在のピクチャはCLVSSピクチャではない)、出力に不要であるとしてマーキングされ、参照のために未使用であるピクチャを含むすべてのピクチャストレージバッファが(出力なしで)空にされる。空にされた各ピクチャストレージバッファについて、DPBフルネスは1だけデクリメントされる。以下の条件のうちの1つまたは複数が真であるとき、バンピングプロセスは、以下の条件のいずれも真でなくなるまで空にされる各追加のピクチャストレージバッファについてDPBフルネスを1だけさらにデクリメントしながら繰り返し呼び出される。条件は、出力のための必要に応じてマーキングされたDPB内のピクチャの数がsps_max_num_reorder_pics[Htid]よりも大きいことである。別の条件は、sps_max_latency_increase_plus1[Htid]が0に等しくなく、関連する変数PicLatencyCountがSpsMaxLatencyPictures[Htid]以上である出力のための必要に応じてマーキングされた少なくとも1つのピクチャがDPBに存在することである。他の条件は、DPB内のピクチャ数がSubDpbSize[Htid]以上であることである。
例示的な一般SEIメッセージシンタクスは以下の通りである。
Figure 2022550320000002
例示的なスケーラブルネスティングSEIメッセージシンタクスは以下の通りである。
Figure 2022550320000003
例示的なスケーラブルネスティングSEIメッセージセマンティクスは以下の通りである。スケーラブルネスティングSEIメッセージは、SEIメッセージを、特定のOLSのコンテキストにおける特定のレイヤまたはOLSのコンテキストではない特定のレイヤに関連付けるためのメカニズムを提供する。スケーラブルネスティングSEIメッセージは、1つまたは複数のSEIメッセージを含む。スケーラブルネスティングSEIメッセージに含まれるSEIメッセージは、スケーラブルにネストされたSEIメッセージとも呼ばれる。ビットストリーム適合性は、SEIメッセージがスケーラブルネスティングSEIメッセージに含まれる場合に以下の制限が適用されることを要求し得る。
payloadTypeが132(復号済みピクチャハッシュ)または133(スケーラブルネスティング)であるSEIメッセージは、スケーラブルネスティングSEIメッセージに含まれるべきではない。スケーラブルネスティングSEIメッセージがバッファリング期間、ピクチャタイミング、または復号ユニット情報SEIメッセージを含む場合、スケーラブルネスティングSEIメッセージは、payloadTypeが0(バッファリング期間)、1(ピクチャタイミング)、または130(復号ユニット情報)に等しくないその他のSEIメッセージを含むべきではない。
ビットストリーム適合性はまた、スケーラブルネスティングSEIメッセージを含むSEI NALユニットのnal_unit_typeの値に以下の制限が適用されることを要求し得る。スケーラブルネスティングSEIメッセージが、0(バッファリング期間)、1(ピクチャタイミング)、130(復号ユニット情報)、145(従属RAP指示)、または168(フレーム・フィールド情報)に等しいpayloadTypeを有するSEIメッセージを含む場合、スケーラブルネスティングSEIメッセージを含むSEI NALユニットは、PREFIX_SEI_NUTに等しいnal_unit_typeを有するべきである。スケーラブルネスティングSEIメッセージが、132に等しいpayloadType(復号済みピクチャハッシュ)を有するSEIメッセージを含む場合、スケーラブルネスティングSEIメッセージを含むSEI NALユニットは、SUFFIX_SEI_NUTに等しいnal_unit_typeセットを有するべきである。
nesting_ols_flagは、スケーラブルにネストされたSEIメッセージが特定のOLSのコンテキストにおける特定のレイヤに適用されることを指定するために、1に等しく設定され得る。nesting_ols_flagは、スケーラブルにネストされたSEIメッセージが一般に特定のレイヤに適用される(例えば、OLSのコンテキスト内ではない)ことを指定するために、0に等しく設定され得る。
ビットストリーム適合性は、nesting_ols_flagの値に以下の制限が適用されることを要求し得る。スケーラブルネスティングSEIメッセージが、payloadTypeが0(バッファリング期間)、1(ピクチャタイミング)、または130(復号ユニット情報)に等しいSEIメッセージを含むとき、nesting_ols_flagの値は1に等しくなければならない。スケーラブルネスティングSEIメッセージが、VclAssociatedSeiList内の値に等しいpayloadTypeを有するSEIメッセージを含むとき、nesting_ols_flagの値は0に等しくなければならない。
nesting_num_olss_minus1に1を加えたものは、スケーラブルにネストされたSEIメッセージが適用されるOLSの数を指定する。nesting_num_olss_minus1の値は、0からTotalNumOlss-1までの範囲(両端を含む)になければならない。nesting_ols_idx_delta_minus1[i]は、nesting_ols_flagが1に等しいとき、スケーラブルにネストされたSEIメッセージが適用されるi番目のOLSのOLSインデックスを指定する変数NestingOlsIdx[i]を導出するために使用される。nesting_ols_idx_delta_minus1[i]の値は、0からTotalNumOlss-2までの範囲(両端を含む)になければならない。変数NestingOlsIdx[i]は、以下のように導出することができる。
if(i==0)
NestingOlsIdx[ i ]=nesting_ols_idx_delta_minus1[ i ]
else
NestingOlsIdx[ i ]=NestingOlsIdx[ i-1 ]+nesting_ols_idx_delta_minus1[ i ]+1
nesting_num_ols_layers_minus1[i]に1を加えたものは、NestingOlsIdx[i]番目のOLSのコンテキストにおいて、スケーラブルにネストされたSEIメッセージが適用されるレイヤの数を指定する。nesting_num_ols_layers_minus1[i]の値は、0からNumLayersInOls[NestingOlsIdx[i]]-1までの範囲(両端を含む)になければならない。
nesting_ols_layer_idx_delta_minus1[i][j]は、nesting_ols_flagが1に等しいとき、NestingOlsIdx[i]番目のOLSのコンテキストにおいて、スケーラブルにネストされたSEIメッセージが適用されるj番目のレイヤのOLSレイヤインデックスを指定する変数NestingOlsLayerIdx[i][j]を導出するために使用される。nesting_ols_layer_idx_delta_minus1[i]の値は、0からNumLayersInOls[nestingOlsIdx[i]]-2までの範囲(両端を含む)になければならない。
変数NestingOlsLayerIdx[i][j]は、以下のように導出することができる。
if(j==0)
NestingOlsLayerIdx[ i ][ j ]=nesting_ols_layer_idx_delta_minus1[ i ][ j ]
else
NestingOlsLayerIdx[ i ][ j ]=NestingOlsLayerIdx[ i ][ j-1 ]+
nesting_ols_layer_idx_delta_minus1[ i ][ j ]+1
0からnesting_num_olss_minus1までの範囲(両端を含む)内のiに対するLayerIdInOls[NestingOlsIdx[i]][NestingOlsLayerIdx[i][0]]のすべての値のうちの最低値は、現在のSEI NALユニット(例えば、スケーラブルネスティングSEIメッセージを含むSEI NALユニット)のnuh_layer_idに等しくなければならない。nesting_all_layers_flagは、スケーラブルにネストされたSEIメッセージが、一般に、現在のSEI NALユニットのnuh_layer_id以上のnuh_layer_idを有するすべてのレイヤに適用されることを指定するために、1に等しく設定され得る。nesting_all_layers_flagは、スケーラブルにネストされたSEIメッセージが、一般に、現在のSEI NALユニットのnuh_layer_id以上のnuh_layer_idを有するすべてのレイヤに適用される場合も適用されない場合もあることを指定するために、0に等しく設定され得る。
nesting_num_layers_minus1に1を加えたものは、スケーラブルにネストされたSEIメッセージが一般に適用されるレイヤの数を指定する。nuh_layer_idが現在のSEI NALユニットのnuh_layer_idである場合、nesting_num_layers_minus1の値は、0からvps_max_layers_minus1-GeneralLayerIdx[nuh_layer_id]までの範囲(両端を含む)になければならない。nesting_layer_id[i]は、nesting_all_layers_flagが0であるとき、スケーラブルにネストされたSEIメッセージが一般に適用される第iレイヤのnuh_layer_id値を指定する。nesting_layer_id[i]の値はnuh_layer_idより大きくなければならず、nuh_layer_idは現在のSEI NALユニットのnuh_layer_idである。
nesting_ols_flagが1に等しいとき、スケーラブルにネストされたSEIメッセージが一般に適用されるレイヤの数を指定する変数NestingNumLayersと、スケーラブルにネストされたSEIメッセージが一般に適用されるレイヤのnuh_layer_id値のリストを指定する、0からNestingNumLayers-1までの範囲(両端を含む)内のiに対するリストNestingLayerId[i]と、は、以下のように導出され、nuh_layer_idは、現在のSEI NALユニットのnuh_layer_idである。
if(nesting_all_layers_flag){
NestingNumLayers=
vps_max_layers_minus1+1-GeneralLayerIdx[ nuh_layer_id ]
for(i=0;i < NestingNumLayers;i++)
NestingLayerId[ i ]=vps_layer_id[ GeneralLayerIdx[ nuh_layer_id ]+i ](D-2)
} else {
NestingNumLayers=nesting_num_layers_minus1+1
for(i=0;i < NestingNumLayers;i++)
NestingLayerId[ i ]=(i==0)? nuh_layer_id:nesting_layer_id[ i ]
nesting_num_seis_minus1に1を加えたものは、スケーラブルにネストされたSEIメッセージの数を指定する。nesting_num_seis_minus1の値は、0から63までの範囲(両端を含む)になければならない。nesting_0_bitは0に等しく設定されるべきである。
図8は、例示的なビデオ符号化装置800の概略図である。ビデオ符号化装置800は、本明細書に記載される開示された例/実施形態を実施するのに適している。ビデオ符号化装置800は、ネットワークを介してアップストリームおよび/またはダウンストリームにデータを通信するための送信機および/または受信機を含む、ダウンストリームポート820、アップストリームポート850、および/またはトランシーバユニット(Tx/Rx)810を備える。ビデオ符号化装置800はまた、データを処理するためのロジックユニットおよび/または中央処理装置(CPU)を含むプロセッサ830と、データを記憶するためのメモリ832とを含む。ビデオ符号化装置800はまた、電気、光、または無線通信ネットワークを介したデータの通信のためにアップストリームポート850および/またはダウンストリームポート820に結合された、電気、光-電気(OE)コンポーネント、電気-光(EO)コンポーネント、および/または無線通信コンポーネントを備えてもよい。ビデオ符号化装置800はまた、ユーザとの間でデータを通信するための入力および/または出力(I/O)装置860を含むことができる。I/O装置860は、ビデオデータを表示するためのディスプレイ、オーディオデータを出力するためのスピーカなどの出力装置を含むことができる。I/O装置860はまた、キーボード、マウス、トラックボールなどの入力装置、および/またはそのような出力装置と対話するための対応するインターフェースを含むことができる。
プロセッサ830は、ハードウェアおよびソフトウェアによって実装される。プロセッサ830は、1つまたは複数のCPUチップ、コア(例えば、マルチコアプロセッサとして)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、およびデジタル信号プロセッサ(DSP)として実装されてもよい。プロセッサ830は、ダウンストリームポート820、Tx/Rx 810、アップストリームポート850、およびメモリ832と通信する。プロセッサ830は、符号化モジュール814を備える。符号化モジュール814は、マルチレイヤビデオシーケンス600および/またはビットストリーム700を使用することができる方法100、900、および1000などの本明細書に記載された開示された実施形態を実施する。符号化モジュール814はまた、本明細書に記載された任意の他の方法/メカニズムを実装し得る。さらに、符号化モジュール814は、コーデックシステム200、エンコーダ300、デコーダ400、および/またはHRD 500を実装することができる。例えば、符号化モジュール814は、本明細書に記載されるように様々なパラメータをシグナリングし、および/または読み取るために使用され得る。さらに、符号化モジュールは、そのようなパラメータに基づいてビデオシーケンスを符号化および/または復号するために使用され得る。したがって、本明細書に記載されたシグナリング変更は、符号化モジュール814における効率を高め、および/または誤りを回避することができる。したがって、符号化モジュール814は、上述した問題のうちの1つまたは複数に対処するためのメカニズムを実行するように構成され得る。したがって、符号化モジュール814は、ビデオデータを符号化するときにビデオ符号化装置800に追加の機能および/または符号化効率を提供させる。したがって、符号化モジュール814は、ビデオ符号化装置800の機能性を改善し、ビデオ符号化技術に特有の問題に対処する。さらに、符号化モジュール814は、ビデオ符号化装置800を異なる状態に変換する。あるいは、符号化モジュール814は、メモリ832に記憶され、プロセッサ830によって実行される命令として(例えば、非一時的媒体に記憶されたコンピュータプログラム製品として)実装することができる。
メモリ832は、ディスク、テープドライブ、ソリッドステートドライブ、読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、フラッシュメモリ、3値連想メモリ(TCAM)、スタティックランダムアクセスメモリ(SRAM)などのような1つまたは複数のメモリタイプを含む。メモリ832は、オーバーフローデータ記憶デバイスとして使用され、そのようなプログラムが実行のために選択されたときにプログラムを記憶し、プログラム実行中に読み出される命令およびデータを記憶することができる。
図9は、VPSに依存しない可能性があるSEIメッセージを使用することによって、ビデオシーケンスをビットストリーム700などのビットストリームに符号化する例示的な方法900のフローチャートである。方法900は、方法100を実行するときに、コーデックシステム200、エンコーダ300、および/またはビデオ符号化装置800などのエンコーダによって使用され得る。さらに、方法900は、HRD 500上で動作することができ、したがって、マルチレイヤビデオシーケンス600に対して適合性試験を実行することができる。
方法900は、エンコーダがビデオシーケンスを受信し、例えばユーザ入力に基づいて、そのビデオシーケンスをマルチレイヤビットストリームに符号化することを決定したときに開始することができる。ステップ901で、エンコーダは、複数の符号化済みピクチャをビットストリームに符号化する。例えば、符号化済みピクチャをレイヤに編成して、マルチレイヤビットストリームを作成することができる。さらに、各符号化済みピクチャは、DUに含まれ得る。符号化済みピクチャはAUに含めることもでき、AUは同じ出力時間を有する異なるレイヤからのピクチャのセットを含む。レイヤは、同じレイヤIDおよび関連付けられた非VCL NALユニットを有するVCL NALユニットのセットを含み得る。例えば、VCL NALユニットのセットは、VCL NALユニットのセットがすべてnuh_layer_idの特定の値を有する場合、レイヤの一部である。レイヤは、VCL NALユニットのセットを含むことができ、各VCL NALユニットは、符号化済みピクチャのスライスを含む。レイヤはまた、このようなピクチャを符号化するために使用される任意のパラメータセットを含むことができ、このようなパラメータは、非VCL NALユニットに含まれる。これらのレイヤは、1つまたは複数のOLSに含まれ得る。1つまたは複数のレイヤは、出力レイヤであってもよい(例えば、各OLSは、少なくとも1つの出力レイヤを含む)。出力レイヤではないレイヤは、出力レイヤの復元をサポートするために符号化されるが、そのようなサポートレイヤは、デコーダでの出力を意図するものではない。このようにして、エンコーダは、要求に応じてデコーダに送信するためにレイヤの様々な組合せを符号化することができる。レイヤは、デコーダがネットワーク条件、ハードウェア能力、および/またはユーザ設定に応じてビデオシーケンスの異なる表現を取得することを可能にするために、必要に応じて送信することができる。
ステップ903で、エンコーダは、現在のSEIメッセージをビットストリームに符号化することができる。現在のSEIメッセージは、例に応じて、BP SEIメッセージ、PT SEIメッセージ、またはDUI SEIメッセージであってもよい。現在のSEIメッセージは、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するdu_hrd_params_present_flagを含む。du_hrd_params_present_flagは、さらに、HRDがAUレベルで動作するかDUレベルで動作するかを指定することができる。AUレベルは、AU全体にHRDプロセスが適用されることを示し、DUレベルは、個々のDUにHRDプロセスが適用されることを示す。したがって、du_hrd_params_present_flagは、適合性試験の粒度(例えば、AU粒度またはDU粒度)を指定することができる。具体的な一例として、du_hrd_params_present_flagは、DUレベルのHRDパラメータが存在し、HRDがAUレベルまたはDUレベルで動作可能であることを指定する場合に、1に設定することができる。また、du_hrd_params_present_flagは、DUレベルのHRDパラメータが存在せず、HRDがAUレベルで動作することを指定する場合、0に設定することができる。
現在のSEIメッセージは、DUレベルのCPB除去遅延パラメータがPT SEIメッセージに存在するかどうかを指定するdu_cpb_params_in_pic_timing_sei_flagも含むことができる。du_cpb_params_in_pic_timing_sei_flagは、DUレベルのCPB除去遅延パラメータがDUI SEIメッセージに存在するかどうかをさらに指定することができる。特定の例では、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在し、DUI SEIメッセージが利用できないことを指定するとき、du_cpb_params_in_pic_timing_sei_flagを1に設定することができる。さらに、DUレベルのCPB除去遅延パラメータがDUI SEIメッセージに存在し、PT SEIメッセージがDUレベルのCPB除去遅延パラメータを含まないことを指定する場合、du_cpb_params_in_pic_timing_sei_flagを0に設定することができる。前述の制約および/または要件は、ビットストリームが、例えば、VVCまたは本明細書に示されるように修正された他の何らかの標準に適合することを保証する。しかしながら、エンコーダは、異なる標準または同じ標準の異なるバージョンの下で動作するときなど、それほど制約されない他のモードで動作することも可能であり得る。
ステップ905で、HRDは、現在のSEIメッセージに基づいてビットストリームに対してビットストリーム適合性試験のセットを実行することができる。例えば、HRDは、du_hrd_params_present_flagを読み取って、AUレベルでビットストリームを試験するかどうか、または同様に、DUレベルでの試験も可能にするDUパラメータが存在するかどうかを判定することができる。さらに、HRDは、du_cpb_params_in_pic_timing_sei_flagを読み取って、存在する場合、DUパラメータがDUI SEIメッセージまたはPT SEIメッセージで見つけられるかどうかを判定することができる。次いで、HRDは、示されたSEIメッセージから所望のパラメータを取得し、それらのパラメータに基づいて適合性試験を実行することができる。前述のフラグに基づいて、現在のSEIメッセージはVPSに依存しない。このように、現在のSEIメッセージは、VPSが利用できない場合であっても、完全に解析および解決することができる。したがって、適合性試験は、単一レイヤを有するOLSでテストが実行される場合でも適切に動作し、したがって、VPSは、OLSの一部として送信するように構成されていないので、HRDには利用できない。
ステップ907で、エンコーダは、要求に応じてデコーダへ通信するためのビットストリームを記憶することができる。エンコーダはまた、必要に応じてビットストリームをデコーダへ送信することができる。
図10は、VPSに依存しない場合があるSEIメッセージを適用する、ビットストリーム700のようなビットストリームからビデオシーケンスを復号する例示的な方法1000のフローチャートである。方法1000は、方法100を実行するときに、コーデックシステム200、デコーダ400、および/またはビデオ符号化装置800などのデコーダによって使用され得る。さらに、方法1000は、HRD 500などのHRDによって適合性がチェックされたマルチレイヤビデオシーケンス600上で使用され得る。
方法1000は、デコーダが、例えば方法900の結果として、および/またはデコーダによる要求に応答して、マルチレイヤビデオシーケンスを表す符号化済みデータのビットストリームを受信し始めるときに開始することができる。ステップ1001で、デコーダは、1つまたは複数のVCL NALユニット内の符号化済みピクチャを含むビットストリームを受信する。さらに、ビットストリームは、符号化済みピクチャを含む1つまたは複数のレイヤを含み得る。さらに、各符号化済みピクチャは、DUに含まれ得る。符号化済みピクチャはAUに含めることもでき、AUは同じ出力時間を有する異なるレイヤからのピクチャのセットを含む。レイヤは、同じレイヤIDおよび関連付けられた非VCL NALユニットを有するVCL NALユニットのセットを含み得る。例えば、VCL NALユニットのセットは、VCL NALユニットのセットがすべてnuh_layer_idの特定の値を有する場合、レイヤの一部である。レイヤは、VCL NALユニットのセットを含むことができ、各VCL NALユニットは、符号化済みピクチャのスライスを含む。レイヤはまた、このようなピクチャを符号化するために使用される任意のパラメータセットを含むことができ、このようなパラメータは、非VCL NALユニットに含まれる。レイヤは、OLSに含まれ得る。1つまたは複数のレイヤは出力レイヤであってもよい。出力レイヤではないレイヤは、出力レイヤの復元をサポートするために符号化されるが、そのようなサポートレイヤは出力を意図するものではない。このようにして、デコーダは、ネットワーク条件、ハードウェア能力、および/またはユーザ設定に応じてビデオシーケンスの異なる表現を取得することができる。
ビットストリームは、現在のSEIメッセージも含む。現在のSEIメッセージは、例に応じて、BP SEIメッセージ、PT SEIメッセージ、またはDUI SEIメッセージであってもよい。現在のSEIメッセージは、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するdu_hrd_params_present_flagを含む。du_hrd_params_present_flagは、HRDがAUレベルで動作するかDUレベルで動作するかをさらに指定することができる。AUレベルは、AU全体にHRDプロセスが適用されることを示し、DUレベルは、個々のDUにHRDプロセスが適用されることを示す。したがって、du_hrd_params_present_flagは、適合性試験の粒度(例えば、AU粒度またはDU粒度)を指定することができる。具体的な一例として、du_hrd_params_present_flagは、DUレベルのHRDパラメータが存在し、HRDがAUレベルまたはDUレベルで動作可能であることを指定する場合に、1に設定することができる。また、du_hrd_params_present_flagは、DUレベルのHRDパラメータが存在せず、HRDがAUレベルで動作することを指定する場合、0に設定することができる。
現在のSEIメッセージは、DUレベルのCPB除去遅延パラメータがPT SEIメッセージに存在するかどうかを指定するdu_cpb_params_in_pic_timing_sei_flagも含むことができる。du_cpb_params_in_pic_timing_sei_flagは、DUレベルのCPB除去遅延パラメータがDUI SEIメッセージに存在するかどうかをさらに指定することができる。特定の例では、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在し、DUI SEIメッセージが利用できないことを指定するとき、du_cpb_params_in_pic_timing_sei_flagを1に設定することができる。さらに、DUレベルのCPB除去遅延パラメータがDUI SEIメッセージに存在し、PT SEIメッセージがDUレベルのCPB除去遅延パラメータを含まないことを指定する場合、du_cpb_params_in_pic_timing_sei_flagを0に設定することができる。
一実施形態では、ビデオデコーダは、VVCまたは他の何らかの標準に基づいて上述したようにDUレベルパラメータの存在および/または位置を示すために、du_hrd_params_present_flagおよびdu_cpb_params_in_pic_timing_sei_flagを予期する。しかしながら、デコーダが、この条件が真ではないと判定した場合、デコーダは、エラーを検出し、エラーを通知し、修正されたビットストリーム(またはその一部)が再送信されることを要求し、または、適合するビットストリームが受信されることを保証するために、いくつかの他の補正手段を講じ得る。
ステップ1003で、デコーダは、復号済みピクチャを生成するために、VCL NALユニットからの符号化済みピクチャを復号し得る。例えば、デコーダは、現在のSEIメッセージの存在に基づいて、ビットストリームが標準に適合しているかどうかがチェックされたと判定することができる。したがって、デコーダは、現在のSEIメッセージの存在に基づいて、ビットストリームが復号可能であると判定することができる。場合によっては、デコーダで受信されたOLSは単一のレイヤを含むことができることに留意されたい。そのような場合、レイヤ/OLSはVPSを含まなくてもよい。du_hrd_params_present_flagおよびdu_cpb_params_in_pic_timing_sei_flagの存在により、現在のSEIメッセージはVPSに依存しない。したがって、VPSの欠如は、現在のSEIメッセージが解析されるときにエラーを引き起こさない。ステップ1005で、デコーダは、復号済みビデオシーケンスの一部として表示するために復号済みピクチャを転送することができる。
図11は、VPSに依存しないSEIメッセージを用いるビットストリームを用いてビデオシーケンスを符号化するための例示的なシステム1100の概略図である。システム1100は、コーデックシステム200、エンコーダ300、デコーダ400、および/またはビデオ符号化装置800などのエンコーダおよびデコーダによって実施され得る。さらに、システム1100は、HRD 500を使用して、マルチレイヤビデオシーケンス600および/またはビットストリーム700に対して適合性試験を実行することができる。さらに、システム1100は、方法100、900、および/または1000を実施するときに使用することができる。
システム1100は、ビデオエンコーダ1102を含む。ビデオエンコーダ1102は、符号化済みピクチャをビットストリームへ符号化するための符号化モジュール1103を備える。さらに、符号化モジュール1103は、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するdu_hrd_params_present_flagを含む現在のSEIメッセージをビットストリームに符号化するためのものである。ビデオエンコーダ1102は、現在のSEIメッセージに基づいてビットストリームに対してビットストリーム適合性試験のセットを実行するためのHRDモジュール1105をさらに備える。ビデオエンコーダ1102は、デコーダへの通信のためにビットストリームを記憶するための記憶モジュール1106をさらに備える。ビデオエンコーダ1102は、ビットストリームをビデオデコーダ1110に向けて送信するための送信モジュール1107をさらに備える。ビデオエンコーダ1102は、方法900のステップのうちのいずれかを実行するようにさらに構成され得る。
システム1100はまた、ビデオデコーダ1110を含む。ビデオデコーダ1110は、符号化済みピクチャを含むビットストリームと、DUレベルHRDパラメータがビットストリーム内に存在するかどうかを指定するdu_hrd_params_present_flagを含む現在のSEIメッセージとを受信するための受信モジュール1111を備える。ビデオデコーダ1110は、復号済みピクチャを生成するために、符号化済みピクチャを復号するための復号モジュール1113をさらに備える。ビデオデコーダ1110は、復号済みビデオシーケンスの一部として表示するために復号済みピクチャを転送するための転送モジュール1115をさらに備える。ビデオデコーダ1110は、方法1000のステップのうちのいずれかを実行するようにさらに構成され得る。
第1のコンポーネントは、第1のコンポーネントと第2のコンポーネントとの間の線、トレース、または他の媒介物以外の介在するコンポーネントがない場合は、第2のコンポーネントに直接的に結合される。第1のコンポーネントは、第1のコンポーネントと第2のコンポーネントとの間の線、トレース、またはその他の媒介物以外に介在するコンポーネントがある場合は、第2のコンポーネントに間接的に結合される。用語「結合」とその変化形は直接的な結合と間接的な結合の両方を含む。用語「約」の使用は、別段の記載がない限り、後続する数値の±10%を含む範囲を意味する。
本明細書に記載されている例示的な方法のステップは、記載されている順に実行することを必ずしも必要としていないことも理解されたく、このような方法のステップの順序は、単なる例と理解されるべきである。同様に、本開示の様々な実施形態と合致する方法において、このような方法には追加のステップが含まれてよく、いくつかのステップが省略されたり組み合わされたりしてよい。
本開示ではいくつかの実施形態が提供されているが、開示されたシステムおよび方法は、本開示の趣旨または範囲から逸脱することなく、多くの他の特定の形態で具現化されてもよいことが理解されよう。本開示の例は、限定ではなく例示とみなされるべきであり、その意図は、本明細書に与えられた詳細に限定されるべきではない。例えば、様々な要素またはコンポーネントが別のシステムにおいて結合もしくは統合されてもよく、または特定の機能が省略されるか、もしくは実装されなくてもよい。
加えて、様々な実施形態において個別または別個のものとして記載および例示された技法、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく、他のシステム、コンポーネント、技法、または方法と結合または統合されてもよい。変更、代用、および改変の他の例は当業者によって解明可能であり、本明細書に開示された趣旨および範囲から逸脱することなく行われてもよい。
100 動作方法
200 コーデックシステム
201 分割済みビデオ信号
211 一般コーダ制御コンポーネント
213 変換スケーリング量子化コンポーネント
215 ピクチャ内推定コンポーネント
217 ピクチャ内予測コンポーネント
219 動き補償コンポーネント
221 動き推定コンポーネント
223 復号済みピクチャバッファコンポーネント
225 ループ内フィルタコンポーネント
227 フィルタ制御分析コンポーネント
229 スケーリング逆変換コンポーネント
231 ヘッダフォーマッティング・コンテキスト適応型バイナリ算術符号化(CABAC)コンポーネント
300 ビデオエンコーダ
301 分割済みビデオ信号
313 変換量子化コンポーネント
317 ピクチャ内予測コンポーネント
321 動き補償コンポーネント
323 復号済みピクチャバッファコンポーネント
325 ループ内フィルタコンポーネント
329 逆変換量子化コンポーネント
331 エントロピー符号化コンポーネント
400 ビデオデコーダ
417 ピクチャ内予測コンポーネント
421 動き補償コンポーネント
423 復号済みピクチャバッファコンポーネント
425 ループ内フィルタコンポーネント
429 逆変換量子化コンポーネント
433 エントロピー復号コンポーネント
500 HRD
541 仮想ストリームスケジューラ(HSS)
543 CPB
545 復号プロセスコンポーネント
547 DPB
549 出力クロッピングコンポーネント
551 ビットストリーム
553 復号ユニット(DU)
555 復号済みDU
556 参照ピクチャ
557 ピクチャ
559 出力クロッピング済みピクチャ
600 マルチレイヤビデオシーケンス
611 ピクチャ
612 ピクチャ
613 ピクチャ
614 ピクチャ
615 ピクチャ
616 ピクチャ
617 ピクチャ
618 ピクチャ
621 レイヤ間予測
623 インター予測
627 アクセスユニット(AU)
628 DU
631 レイヤN
632 レイヤN+1
700 ビットストリーム
711 VPS
713 SPS
715 ピクチャパラメータセット(PPS)
716 バッファリング期間(BP)SEIメッセージ
717 スライスヘッダ
718 PT SEIメッセージ
719 DUI SEIメッセージ
720 画像データ
723 レイヤ
725 ピクチャ
727 スライス
731 du_hrd_params_present_flag
733 du_cpb_params_in_pic_timing_sei_flag
737 CPB除去遅延
800 ビデオ符号化装置
810 トランシーバユニット(Tx/Rx)
814 符号化モジュール
820 ダウンストリームポート
830 プロセッサ
832 メモリ
850 アップストリームポート
860 入力および/または出力(I/O)装置
1100 システム
1102 ビデオエンコーダ
1103 符号化モジュール
1105 HRDモジュール
1106 記憶モジュール
1107 送信モジュール
1110 ビデオデコーダ
1111 受信モジュール
1113 復号モジュール
1115 転送モジュール

Claims (20)

  1. デコーダによって実施される方法であって、
    前記デコーダの受信機によって、符号化済みピクチャを含むビットストリームと、DUレベルHRDパラメータが前記ビットストリーム内に存在するかどうかを指定する復号ユニット(DU)仮想参照デコーダ(HRD)パラメータ存在フラグ(du_hrd_params_present_flag)を含む現在の補足拡張情報(SEI)メッセージとを受信するステップと、
    前記デコーダのプロセッサによって、復号済みピクチャを生成するために前記符号化済みピクチャを復号するステップと
    を含む、方法。
  2. 前記du_hrd_params_present_flagは、HRDがアクセスユニット(AU)レベルで動作するか、またはDUレベルで動作するかをさらに指定する、請求項1に記載の方法。
  3. DUレベルHRDパラメータが存在し前記HRDが前記AUレベルまたは前記DUレベルで動作し得ることを指定するときに前記du_hrd_params_present_flagが1に設定され、DUレベルHRDパラメータが存在せず前記HRDが前記AUレベルで動作することを指定するときに前記du_hrd_params_present_flagが0に設定される、請求項1または2に記載の方法。
  4. 前記現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在するかどうかを指定するDU符号化済みピクチャバッファ(CPB)パラメータ・イン・ピクチャタイミング(PT)SEIフラグ(du_cpb_params_in_pic_timing_sei_flag)をさらに含む、請求項1から3のいずれか一項に記載の方法。
  5. 前記du_cpb_params_in_pic_timing_sei_flagは、DUレベルCPB除去遅延パラメータが復号ユニット情報(DUI)SEIメッセージ内に存在するかどうかをさらに指定する、請求項1から4のいずれか一項に記載の方法。
  6. DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在しDUI SEIメッセージが利用できないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが1に設定され、DUレベルCPB除去遅延パラメータがDUI SEIメッセージ内に存在しPT SEIメッセージがDUレベルCPB除去遅延パラメータを含まないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが0に設定される、請求項1から5のいずれか一項に記載の方法。
  7. 前記現在のSEIメッセージが、バッファリング期間(BP)SEIメッセージ、PT SEIメッセージ、またはDUI SEIメッセージである、請求項1から6のいずれか一項に記載の方法。
  8. エンコーダによって実施される方法であって、
    前記エンコーダのプロセッサによって、符号化済みピクチャをビットストリームに符号化するステップと、
    前記プロセッサによって、DUレベルHRDパラメータが前記ビットストリーム内に存在するかどうかを指定する復号ユニット(DU)仮想参照デコーダ(HRD)パラメータ存在フラグ(du_hrd_params_present_flag)を含む現在の補足拡張情報(SEI)メッセージを前記ビットストリーム内に符号化するステップと、
    前記プロセッサによって、前記現在のSEIメッセージに基づいて前記ビットストリームに対してビットストリーム適合性試験のセットを実行するステップと、
    前記プロセッサに結合されたメモリによって、デコーダへの通信のために前記ビットストリームを記憶するステップと
    を含む、方法。
  9. 前記du_hrd_params_present_flagは、HRDがアクセスユニット(AU)レベルで動作するか、またはDUレベルで動作するかをさらに指定する、請求項8に記載の方法。
  10. DUレベルHRDパラメータが存在し前記HRDが前記AUレベルまたは前記DUレベルで動作し得ることを指定するときに前記du_hrd_params_present_flagが1に設定され、DUレベルHRDパラメータが存在せず前記HRDが前記AUレベルで動作することを指定するときに前記du_hrd_params_present_flagが0に設定される、請求項8または9に記載の方法。
  11. 前記現在のSEIメッセージは、DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在するかどうかを指定するDU符号化済みピクチャバッファ(CPB)パラメータ・イン・ピクチャタイミング(PT)SEIフラグ(du_cpb_params_in_pic_timing_sei_flag)をさらに含む、請求項8から10のいずれか一項に記載の方法。
  12. 前記du_cpb_params_in_pic_timing_sei_flagは、DUレベルCPB除去遅延パラメータが復号ユニット情報(DUI)SEIメッセージ内に存在するかどうかをさらに指定する、請求項8から11のいずれか一項に記載の方法。
  13. DUレベルCPB除去遅延パラメータがPT SEIメッセージ内に存在しDUI SEIメッセージが利用できないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが1に設定され、DUレベルCPB除去遅延パラメータがDUI SEIメッセージ内に存在しPT SEIメッセージがDUレベルCPB除去遅延パラメータを含まないことを指定するときにdu_cpb_params_in_pic_timing_sei_flagが0に設定される、請求項8から12のいずれか一項に記載の方法。
  14. 前記現在のSEIメッセージが、バッファリング期間(BP)SEIメッセージ、PT SEIメッセージ、またはDUI SEIメッセージである、請求項8から13のいずれか一項に記載の方法。
  15. プロセッサと、前記プロセッサに結合された受信機と、前記プロセッサに結合されたメモリと、前記プロセッサに結合された送信器とを備えたビデオ符号化装置であって、前記プロセッサ、受信機、メモリ、および送信機が、請求項1から14のいずれか一項に記載の方法を実行するように構成される、ビデオ符号化装置。
  16. ビデオ符号化装置によって使用されるコンピュータプログラム製品を含む非一時的コンピュータ可読媒体であって、前記コンピュータプログラム製品が、前記非一時的コンピュータ可読媒体に記憶されたコンピュータ実行可能命令を含み、前記コンピュータ実行可能命令が、プロセッサによって実行されるときに、前記ビデオ符号化装置に請求項1から14のいずれか一項に記載の方法を実行させる、非一時的コンピュータ可読媒体。
  17. 符号化済みピクチャを含むビットストリームと、DUレベルHRDパラメータが前記ビットストリーム内に存在するかどうかを指定する復号ユニット(DU)仮想参照デコーダ(HRD)パラメータ存在フラグ(du_hrd_params_present_flag)を含む現在の補足拡張情報(SEI)メッセージとを受信する受信手段と、
    復号済みピクチャを生成するために前記符号化済みピクチャを復号する復号手段と、
    復号済みビデオシーケンスの一部として表示のために前記復号済みピクチャを転送する転送手段と
    を備えるデコーダ。
  18. 前記デコーダが、請求項1から7のいずれか一項に記載の方法を実行するようにさらに構成される、請求項17に記載のデコーダ。
  19. 符号化済みピクチャをビットストリームに符号化し、
    DUレベルHRDパラメータが前記ビットストリーム内に存在するかどうかを指定する復号ユニット(DU)仮想参照デコーダ(HRD)パラメータ存在フラグ(du_hrd_params_present_flag)を含む現在の補足拡張情報(SEI)メッセージを前記ビットストリーム内に符号化する
    符号化手段と、
    前記現在のSEIメッセージに基づいて前記ビットストリームに対してビットストリーム適合性試験のセットを実行する仮想参照デコーダ(HRD)手段と、
    デコーダへの通信のために前記ビットストリームを記憶する記憶手段と
    を備えるエンコーダ。
  20. 前記エンコーダが、請求項8から14のいずれか一項に記載の方法を実行するようにさらに構成される、請求項19に記載のエンコーダ。
JP2022519005A 2019-09-24 2020-09-17 ビデオ符号化におけるseiメッセージ依存性の簡略化 Pending JP2022550320A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962905236P 2019-09-24 2019-09-24
US62/905,236 2019-09-24
PCT/US2020/051316 WO2021061496A1 (en) 2019-09-24 2020-09-17 Sei message dependency simplification in video coding

Publications (1)

Publication Number Publication Date
JP2022550320A true JP2022550320A (ja) 2022-12-01

Family

ID=75166352

Family Applications (9)

Application Number Title Priority Date Filing Date
JP2022518798A Pending JP2022548405A (ja) 2019-09-24 2020-09-17 接尾辞seiメッセージのためのスケーラブルネスティング
JP2022519005A Pending JP2022550320A (ja) 2019-09-24 2020-09-17 ビデオ符号化におけるseiメッセージ依存性の簡略化
JP2022518793A Pending JP2022548330A (ja) 2019-09-24 2020-09-17 レイヤベースのパラメータセットnalユニット制約
JP2022518794A Active JP7400088B2 (ja) 2019-09-24 2020-09-17 Seiメッセージのための時間識別子の制限
JP2022518797A Active JP7416921B2 (ja) 2019-09-24 2020-09-17 解像度変更のためのデコードされたピクチャバッファ動作
JP2023206257A Pending JP2024023566A (ja) 2019-09-24 2023-12-06 Seiメッセージのための時間識別子の制限
JP2024000298A Pending JP2024028383A (ja) 2019-09-24 2024-01-04 解像度変更のためのデコードされたピクチャバッファ動作
JP2024053670A Pending JP2024074856A (ja) 2019-09-24 2024-03-28 接尾辞seiメッセージのためのスケーラブルネスティング
JP2024063962A Pending JP2024096147A (ja) 2019-09-24 2024-04-11 レイヤベースのパラメータセットnalユニット制約

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2022518798A Pending JP2022548405A (ja) 2019-09-24 2020-09-17 接尾辞seiメッセージのためのスケーラブルネスティング

Family Applications After (7)

Application Number Title Priority Date Filing Date
JP2022518793A Pending JP2022548330A (ja) 2019-09-24 2020-09-17 レイヤベースのパラメータセットnalユニット制約
JP2022518794A Active JP7400088B2 (ja) 2019-09-24 2020-09-17 Seiメッセージのための時間識別子の制限
JP2022518797A Active JP7416921B2 (ja) 2019-09-24 2020-09-17 解像度変更のためのデコードされたピクチャバッファ動作
JP2023206257A Pending JP2024023566A (ja) 2019-09-24 2023-12-06 Seiメッセージのための時間識別子の制限
JP2024000298A Pending JP2024028383A (ja) 2019-09-24 2024-01-04 解像度変更のためのデコードされたピクチャバッファ動作
JP2024053670A Pending JP2024074856A (ja) 2019-09-24 2024-03-28 接尾辞seiメッセージのためのスケーラブルネスティング
JP2024063962A Pending JP2024096147A (ja) 2019-09-24 2024-04-11 レイヤベースのパラメータセットnalユニット制約

Country Status (11)

Country Link
US (6) US11800130B2 (ja)
EP (5) EP4022451A4 (ja)
JP (9) JP2022548405A (ja)
KR (5) KR20220063269A (ja)
CN (11) CN114450962A (ja)
AU (5) AU2020354368A1 (ja)
BR (6) BR112022004862A2 (ja)
CA (2) CA3152353A1 (ja)
CL (2) CL2022000702A1 (ja)
MX (2) MX2022003548A (ja)
WO (5) WO2021061495A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020156538A1 (en) 2019-02-03 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Interaction between mv precisions and mv difference coding
CN113424533B (zh) 2019-02-14 2024-09-10 北京字节跳动网络技术有限公司 复杂度降低的解码器侧运动推导
KR20220058534A (ko) 2019-09-14 2022-05-09 바이트댄스 아이엔씨 크로마 디블로킹 필터링을 위한 양자화 파라미터
KR20220063269A (ko) * 2019-09-24 2022-05-17 후아웨이 테크놀러지 컴퍼니 리미티드 해상도 변경들을 위한 디코딩된 픽처 버퍼 동작
CN114651442A (zh) * 2019-10-09 2022-06-21 字节跳动有限公司 视频编解码中的跨分量适应性回路滤波
WO2021068954A1 (en) * 2019-10-12 2021-04-15 Beijing Bytedance Network Technology Co., Ltd. High level syntax for video coding tools
EP4029264A4 (en) 2019-10-14 2022-11-23 ByteDance Inc. JOINT CODING OF CHROMINANCE RESIDUE AND FILTERING IN VIDEO PROCESSING
EP4055827A4 (en) 2019-12-09 2023-01-18 ByteDance Inc. USING QUANTIFICATION GROUPS IN VIDEO CODING
JP7431330B2 (ja) 2019-12-26 2024-02-14 バイトダンス インコーポレイテッド ビデオコーディングにおけるプロファイル、層及びレイヤの指示
CN114930825A (zh) 2019-12-26 2022-08-19 字节跳动有限公司 用于在编解码图片中实现解码顺序的技术
CN114868158A (zh) 2019-12-26 2022-08-05 字节跳动有限公司 层级视频中的解码图片缓冲区参数的信令通知
CN114902677A (zh) 2019-12-27 2022-08-12 字节跳动有限公司 信令通知视频子图片的语法
WO2021138293A1 (en) 2019-12-31 2021-07-08 Bytedance Inc. Adaptive color transform in video coding
CN117395441A (zh) 2020-01-09 2024-01-12 字节跳动有限公司 视频流中的填充数据单元的处理
EP4104434A4 (en) * 2020-03-17 2023-08-23 ByteDance Inc. INDICATING AN IMAGE OUTPUT FLAG IN VIDEO ENCODING
WO2021233422A1 (en) * 2020-05-22 2021-11-25 Beijing Bytedance Network Technology Co., Ltd. Subpicture sub-bitstream extraction improvements
CN115668929A (zh) 2020-05-22 2023-01-31 字节跳动有限公司 视频子比特流提取过程中的sei消息处理
CN117528004A (zh) 2020-06-09 2024-02-06 字节跳动有限公司 多层视频比特流的子比特流提取
CN117296317A (zh) * 2021-04-19 2023-12-26 Lg 电子株式会社 媒体文件处理方法及其设备
JP2024515732A (ja) * 2021-04-23 2024-04-10 エルジー エレクトロニクス インコーポレイティド レイヤー識別子情報を含むseiメッセージに基づく画像符号化/復号化方法及び装置、並びにビットストリームを伝送する方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015526970A (ja) * 2012-07-02 2015-09-10 ソニー株式会社 低遅延を用いた映像符号化システム及びその動作方法
JP2015529437A (ja) * 2012-09-21 2015-10-05 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオコーディングのためのパラメータセットの指示およびアクティブ化
JP2015529438A (ja) * 2012-09-24 2015-10-05 クゥアルコム・インコーポレイテッドQualcomm Incorporated バッファリング期間およびリカバリポイントサプルメンタルエンハンスメント情報メッセージ
JP2015532551A (ja) * 2012-10-08 2015-11-09 クゥアルコム・インコーポレイテッドQualcomm Incorporated 仮想参照デコーダパラメータシンタックス構造
JP2016531451A (ja) * 2013-07-14 2016-10-06 シャープ株式会社 シグナリング表示および制約事項
JP2017535184A (ja) * 2014-10-15 2017-11-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated Hevc拡張の搬送用データストリームのhrd記述子およびバッファモデルの設計

Family Cites Families (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8374238B2 (en) * 2004-07-13 2013-02-12 Microsoft Corporation Spatial scalability in 3D sub-band decoding of SDMCTF-encoded video
US7852353B1 (en) * 2005-03-31 2010-12-14 Apple Inc. Encoding a transparency (alpha) channel in a video bitstream
EP1949701A1 (en) * 2005-10-11 2008-07-30 Nokia Corporation Efficient decoded picture buffer management for scalable video coding
US7903737B2 (en) * 2005-11-30 2011-03-08 Mitsubishi Electric Research Laboratories, Inc. Method and system for randomly accessing multiview videos with known prediction dependency
JP2007166129A (ja) 2005-12-13 2007-06-28 Victor Co Of Japan Ltd 符号化データ生成装置
US7535383B2 (en) * 2006-07-10 2009-05-19 Sharp Laboratories Of America Inc. Methods and systems for signaling multi-layer bitstream data
MX2009003968A (es) * 2006-10-16 2009-06-01 Nokia Corp Sistema y método para usar segmentos decodificables paralelamente para codificación de video de vistas múltiples.
JP5686594B2 (ja) 2007-04-12 2015-03-18 トムソン ライセンシングThomson Licensing スケーラブル・ビデオ符号化のためのビデオ・ユーザビリティ情報(vui)用の方法及び装置
US20100142613A1 (en) * 2007-04-18 2010-06-10 Lihua Zhu Method for encoding video data in a scalable manner
US9131033B2 (en) * 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
CN103748884A (zh) * 2011-08-30 2014-04-23 索尼公司 图像处理装置和图像处理方法
US9237356B2 (en) * 2011-09-23 2016-01-12 Qualcomm Incorporated Reference picture list construction for video coding
US9565431B2 (en) * 2012-04-04 2017-02-07 Qualcomm Incorporated Low-delay video buffering in video coding
CA2870067C (en) * 2012-04-16 2017-01-17 Nokia Corporation Video coding and decoding using multiple parameter sets which are identified in video unit headers
US9979958B2 (en) * 2012-04-20 2018-05-22 Qualcomm Incorporated Decoded picture buffer processing for random access point pictures in video sequences
US20130343465A1 (en) * 2012-06-26 2013-12-26 Qualcomm Incorporated Header parameter sets for video coding
US9912941B2 (en) * 2012-07-02 2018-03-06 Sony Corporation Video coding system with temporal layers and method of operation thereof
US9648322B2 (en) * 2012-07-10 2017-05-09 Qualcomm Incorporated Coding random access pictures for video coding
US9380289B2 (en) 2012-07-20 2016-06-28 Qualcomm Incorporated Parameter sets in video coding
US9014051B2 (en) 2012-08-30 2015-04-21 Abb Inc. Updating multicast group information of a client device of a wireless mesh network
US9686542B2 (en) * 2012-09-05 2017-06-20 Qualcomm Incorporated Network abstraction layer header design
US10021394B2 (en) * 2012-09-24 2018-07-10 Qualcomm Incorporated Hypothetical reference decoder parameters in video coding
KR20140048802A (ko) * 2012-10-08 2014-04-24 삼성전자주식회사 멀티 레이어 비디오 부호화 방법 및 장치, 멀티 레이어 비디오 복호화 방법 및 장치
US9462268B2 (en) * 2012-10-09 2016-10-04 Cisco Technology, Inc. Output management of prior decoded pictures at picture format transitions in bitstreams
US9521393B2 (en) 2013-01-07 2016-12-13 Qualcomm Incorporated Non-nested SEI messages in video coding
US20140269896A1 (en) * 2013-03-13 2014-09-18 Futurewei Technologies, Inc. Multi-Frame Compression
US10003815B2 (en) 2013-06-03 2018-06-19 Qualcomm Incorporated Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures
CN108650514A (zh) * 2013-07-14 2018-10-12 夏普株式会社 瓦片对齐信令和一致性约束
EP3008896B1 (en) * 2013-07-15 2021-03-31 Sony Corporation Extensions of motion-constrained tile sets sei message for interactivity
WO2015009693A1 (en) * 2013-07-15 2015-01-22 Sony Corporation Layer based hrd buffer management for scalable hevc
WO2015053287A1 (ja) * 2013-10-08 2015-04-16 シャープ株式会社 画像復号装置、画像符号化装置、および、符号化データ変換装置
WO2015054634A2 (en) * 2013-10-11 2015-04-16 Vid Scale, Inc. High level syntax for hevc extensions
WO2015052943A1 (en) * 2013-10-13 2015-04-16 Sharp Kabushiki Kaisha Signaling parameters in vps extension and dpb operation
EP3058747B1 (en) 2013-10-15 2019-11-20 Nokia Technologies Oy Scalable video encoding and decoding using syntax element
US9860540B2 (en) * 2014-01-03 2018-01-02 Qualcomm Incorporated Inference of nooutputofpriorpicsflag in video coding
WO2015125489A1 (en) * 2014-02-24 2015-08-27 Sharp Kabushiki Kaisha Restrictions on signaling
US20150264404A1 (en) * 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
US9866869B2 (en) * 2014-03-17 2018-01-09 Qualcomm Incorporated POC value design for multi-layer video coding
US10645404B2 (en) * 2014-03-24 2020-05-05 Qualcomm Incorporated Generic use of HEVC SEI messages for multi-layer codecs
US9794626B2 (en) * 2014-05-01 2017-10-17 Qualcomm Incorporated Partitioning schemes in multi-layer video coding
JP2017525215A (ja) 2014-06-19 2017-08-31 シャープ株式会社 復号方法
US10455242B2 (en) * 2015-03-04 2019-10-22 Qualcomm Incorporated Signaling output indications in codec-hybrid multi-layer video coding
MX369288B (es) * 2015-04-09 2019-11-04 Arris Entpr Llc Metodo y aparato para descubrimiento automatico de elementos en un sistema de codificadores.
US10200690B2 (en) * 2015-09-22 2019-02-05 Qualcomm Incorporated Video decoder conformance for high dynamic range (HDR) video coding using a core video standard
CN112565792B (zh) * 2015-10-19 2023-07-11 寰发股份有限公司 管理已解码图像缓存器的方法及装置
CN109963176B (zh) * 2017-12-26 2021-12-07 中兴通讯股份有限公司 视频码流处理方法、装置、网络设备和可读存储介质
US11321516B2 (en) 2018-01-19 2022-05-03 Qualcomm Incorporated Processing dynamic web content of an ISO BMFF web resource track
US11956471B2 (en) 2018-12-20 2024-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Normative indication of recovery point
BR112021016925A2 (pt) * 2019-02-27 2021-11-03 Huawei Tech Co Ltd Codificador, decodificador e métodos correspondentes
KR20230163584A (ko) * 2019-02-28 2023-11-30 엘지전자 주식회사 Aps 시그널링 기반 비디오 또는 영상 코딩
GB2584295A (en) * 2019-05-28 2020-12-02 Canon Kk Method and apparatus for encoding and decoding a video bitstream for merging regions of interest
US11166033B2 (en) * 2019-06-06 2021-11-02 Qualcomm Incorporated Adaptation parameter set in access unit in video coding
WO2021006621A1 (ko) * 2019-07-08 2021-01-14 엘지전자 주식회사 적응적 루프 필터 기반 비디오 또는 영상 코딩
WO2021032747A1 (en) * 2019-08-19 2021-02-25 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Usage of access unit delimiters and adaptation parameter sets
CN117294847A (zh) * 2019-09-18 2023-12-26 北京字节跳动网络技术有限公司 视频编解码中自适应环路滤波器的两部分信令
US11375223B2 (en) * 2019-09-20 2022-06-28 Tencent America LLC Method for signaling output layer set with sub-picture
CN114514747A (zh) * 2019-09-24 2022-05-17 华为技术有限公司 用于ols的可伸缩嵌套式sei消息
KR20220063269A (ko) * 2019-09-24 2022-05-17 후아웨이 테크놀러지 컴퍼니 리미티드 해상도 변경들을 위한 디코딩된 픽처 버퍼 동작
JP7485761B2 (ja) * 2019-10-29 2024-05-16 北京字節跳動網絡技術有限公司 クロスコンポーネント適応ループフィルタの信号通知

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015526970A (ja) * 2012-07-02 2015-09-10 ソニー株式会社 低遅延を用いた映像符号化システム及びその動作方法
JP2015529437A (ja) * 2012-09-21 2015-10-05 クゥアルコム・インコーポレイテッドQualcomm Incorporated ビデオコーディングのためのパラメータセットの指示およびアクティブ化
JP2015529438A (ja) * 2012-09-24 2015-10-05 クゥアルコム・インコーポレイテッドQualcomm Incorporated バッファリング期間およびリカバリポイントサプルメンタルエンハンスメント情報メッセージ
JP2015532551A (ja) * 2012-10-08 2015-11-09 クゥアルコム・インコーポレイテッドQualcomm Incorporated 仮想参照デコーダパラメータシンタックス構造
JP2016531451A (ja) * 2013-07-14 2016-10-06 シャープ株式会社 シグナリング表示および制約事項
JP2017535184A (ja) * 2014-10-15 2017-11-24 クゥアルコム・インコーポレイテッドQualcomm Incorporated Hevc拡張の搬送用データストリームのhrd記述子およびバッファモデルの設計

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
"ITU-T H.265 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (12/2016) [online]", SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS, INFRASTRUCTURE OF AUDIOVISUAL SERVICES - CODING OF MOV, JPN6023026594, 16 March 2017 (2017-03-16), pages 284 - 288, ISSN: 0005225568 *
BENJAMIN BROSS ET AL.: "Versatile Video Coding (Draft 6) [online]", JVET-O2001-VE(JVET-P0202_SPEC_BASED_ON_JVET-O2001-VE.DOCX), [2023年12月13日検索], JPN6023051797, 23 September 2019 (2019-09-23), pages 49 - 117, ISSN: 0005225565 *
BENJAMIN BROSS ET AL.: "Versatile Video Coding (Draft 6) [online]", JVET-O2001-VE(JVET-P0204), JPN6023026591, 23 September 2019 (2019-09-23), pages 37 - 40, ISSN: 0005225566 *
GUILLAUME BARROUX ET AL.: "Proposed specification changes over "High Efficiency Video Coding (HEVC) Screen Content Coding: Dra", JCTVC-V0098_R2, JPN6023026592, 16 November 2015 (2015-11-16), ISSN: 0005225567 *
VIRGINIE DRUGEON ET AL.: "AHG17: Parsing HRD related SEI messages independently from the SPS [online]", JVET-P0203, JPN6023026593, 24 September 2019 (2019-09-24), ISSN: 0005225569 *

Also Published As

Publication number Publication date
BR112022005394A2 (pt) 2022-06-21
CN114845112A (zh) 2022-08-02
CN114979663B (zh) 2023-08-04
EP4022778A1 (en) 2022-07-06
JP2024023566A (ja) 2024-02-21
JP2022548330A (ja) 2022-11-17
US20230269389A1 (en) 2023-08-24
JP2022548404A (ja) 2022-11-18
AU2020356300A1 (en) 2022-04-14
EP4022778A4 (en) 2022-11-23
CN114968894A (zh) 2022-08-30
AU2020352914A1 (en) 2022-04-14
CA3152357A1 (en) 2021-04-01
CN114424559A (zh) 2022-04-29
US20220217388A1 (en) 2022-07-07
WO2021061496A1 (en) 2021-04-01
US20220217387A1 (en) 2022-07-07
EP4022772A4 (en) 2022-11-23
WO2021061492A1 (en) 2021-04-01
EP4035377A4 (en) 2022-11-23
CN114450675A (zh) 2022-05-06
EP4022777A4 (en) 2022-11-23
CL2022000703A1 (es) 2022-11-18
US20220217390A1 (en) 2022-07-07
JP2024074856A (ja) 2024-05-31
US11800130B2 (en) 2023-10-24
EP4022451A1 (en) 2022-07-06
CN114979663A (zh) 2022-08-30
BR122022007954A2 (pt) 2022-07-05
KR20220065055A (ko) 2022-05-19
JP2024096147A (ja) 2024-07-12
BR112022004873A2 (pt) 2022-06-07
KR20220062657A (ko) 2022-05-17
EP4022451A4 (en) 2022-11-23
CN115002467B (zh) 2023-04-04
CL2022000702A1 (es) 2022-11-18
BR112022004883A2 (pt) 2022-06-07
BR112022004862A2 (pt) 2022-06-07
EP4022772A1 (en) 2022-07-06
CN114467262A (zh) 2022-05-10
US20220217410A1 (en) 2022-07-07
CA3152353A1 (en) 2021-04-01
CN114450962A (zh) 2022-05-06
KR20220065054A (ko) 2022-05-19
MX2022003547A (es) 2022-05-30
WO2021061494A1 (en) 2021-04-01
CN114978232A (zh) 2022-08-30
US20220217411A1 (en) 2022-07-07
CN114845112B (zh) 2023-04-04
CN115002467A (zh) 2022-09-02
EP4022777A1 (en) 2022-07-06
CN114978232B (zh) 2023-04-04
BR112022005000A2 (pt) 2022-06-14
WO2021061495A1 (en) 2021-04-01
MX2022003548A (es) 2022-06-02
JP2022548405A (ja) 2022-11-18
JP2022549010A (ja) 2022-11-22
AU2020354368A1 (en) 2022-04-14
JP7416921B2 (ja) 2024-01-17
AU2020352453A1 (en) 2022-04-21
AU2020354926A1 (en) 2022-04-07
KR20220063269A (ko) 2022-05-17
WO2021061493A1 (en) 2021-04-01
EP4035377A1 (en) 2022-08-03
CN114968894B (zh) 2023-08-04
JP7400088B2 (ja) 2023-12-18
KR20220065051A (ko) 2022-05-19
JP2024028383A (ja) 2024-03-04
CN116744002A (zh) 2023-09-12
CN114514703A (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
US11800130B2 (en) SEI message dependency simplification in video coding
EP4451674A1 (en) Error avoidance in sub-bitstream extraction
JP2022549643A (ja) スケーラブルネスティングseiメッセージ管理
AU2020352900A1 (en) Scalable Nesting SEI Messages For OLSs
EP4022889A1 (en) Scalable nesting sei messages for specified layers

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220502

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220502

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231003

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240321

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240624