(57)【特許請求の範囲】
【請求項１】
ビデオデータを処理する方法であって、前記方法は、
１つまたは複数のクリーンランダムアクセス（ＣＲＡ）ピクチャまたは１つまたは複数のブロークンリンクアクセス（ＢＬＡ）ピクチャを含む複数のピクチャを表すビットストリームを受信することと、
外部デバイスから、前記ビットストリームとは別個に、変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を指定するメッセージを受信することと、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇは、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つのためのコード化ピクチャバッファ（ＣＰＢ）パラメータの代替セットを使用すべきかどうかを示し、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つは、第１のピクチャを備え、前記第１のピクチャのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプは、前記第１のピクチャが関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有することを示し、
前記受信されたメッセージによって指定された前記値に基づいて、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を設定することと、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記第１のピクチャのための、ＣＰＢパラメータのデフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの１つを選択することと、
を備える方法。
【請求項２】
前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つと、関連する仮想リファレンスデコーダ（ＨＲＤ）パラメータとを使用してＨＲＤを初期化することをさらに備え、ここで、前記ＨＲＤパラメータは、ＣＰＢパラメータの前記選択されたセットを含む、請求項１に記載の方法。
【請求項３】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示さず、
ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの１つを選択することは、前記第１のピクチャのためにＣＰＢパラメータの前記デフォルトセットを選択することを備える、
請求項１に記載の方法。
【請求項４】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示し、
ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの１つを選択することは、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットを選択することを備える、
請求項１に記載の方法。
【請求項５】
前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの別の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定することをさらに備え、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つは、第２のピクチャを備え、ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの１つを選択することは、前記ＮＡＬユニットタイプと前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値とに基づいて、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの前記１つを選択することを備え、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示すことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記代替セットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの前記１つを選択することは、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットを選択することを備え、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示さないことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記デフォルトセットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの前記１つを選択することは、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットを選択することを備える、
請求項１に記載の方法。
【請求項６】
前記第２のピクチャは、ＢＬＡピクチャとして取り扱われるＣＲＡピクチャを備え、
前記ＮＡＬユニットタイプを設定することは、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することを備える、請求項５に記載の方法。
【請求項７】
前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することは、
ＣＰＢパラメータの前記代替セットの使用を示す前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、ＣＰＢパラメータの前記代替セットが使用される、関連する復号可能リーディングピクチャをもつＢＬＡピクチャを示すように、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することと、
ＣＰＢパラメータの前記代替セットの使用を示さない前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、ＣＰＢパラメータの前記代替セットが使用されない、関連する非復号可能リーディングピクチャをもつＢＬＡピクチャを示すように、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することと、
を備える、請求項６に記載の方法。
【請求項８】
前記第２のピクチャは、ＣＲＡピクチャを備え、
前記ＮＡＬユニットタイプを設定することは、一般ＣＲＡピクチャを示すように前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することを備える、
請求項５に記載の方法。
【請求項９】
前記第２のピクチャは、ＣＲＡピクチャを備え、前記ＮＡＬユニットタイプを設定することは、関連する非復号可能リーディングピクチャをもつＣＲＡピクチャ、関連する復号可能リーディングピクチャをもつＣＲＡピクチャ、またはリーディングピクチャをもたないＣＲＡピクチャのうちの１つを示すように、前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することを備える、請求項５に記載の方法。
【請求項１０】
前記第１のピクチャが、オリジナルのビットストリーム中で、関連する非復号可能リーディングピクチャを有し、前記関連する非復号可能リーディングピクチャは、前記外部デバイスによって廃棄されていることを示す前記メッセージに基づき、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示す値に設定される、
請求項１に記載の方法。
【請求項１１】
前記第１のピクチャが、オリジナルのビットストリーム中で関連する非復号可能リーディングピクチャを有しなかったか、あるいは前記オリジナルのビットストリーム中で関連する非復号可能リーディングピクチャを有し、前記関連する非復号可能リーディングピクチャは、前記外部デバイスによって廃棄されていないことを示す前記メッセージに基づき、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示さない値に設定される、
請求項１に記載の方法。
【請求項１２】
前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの別の１つのためにＣＰＢパラメータの前記代替セットを使用すべきかどうかを示すメッセージを受信しないことに基づいて、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記代替セットを示さないように前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を設定することと、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記デフォルトセットを選択することと、
をさらに備える、請求項１に記載の方法。
【請求項１３】
ＣＰＢパラメータの前記デフォルトセットおよびＣＰＢパラメータの前記代替セットの各々は、初期ＣＰＢ削除遅延と初期ＣＰＢ削除遅延オフセットとを含む、請求項１に記載の方法。
【請求項１４】
前記ビデオデータの復号中に前記ＣＰＢがオーバーフローしないことを保証するために、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つのためのＣＰＢパラメータの前記選択されたセットを、ビデオ復号デバイス中に含まれるＣＰＢに適用することをさらに備える、請求項１に記載の方法。
【請求項１５】
前記ビデオデータの符号化中に、ビデオ符号化デバイス中に含まれる第１のＣＰＢがオーバーフローしないことを保証するために、および前記ビデオ符号化デバイスによって生成された符号化ビットストリームを受信したときに、ビデオ復号デバイス中に含まれる第２のＣＰＢがオーバーフローしないことを保証するために、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つのためのＣＰＢパラメータの前記選択されたセットを、前記ビデオ符号化デバイス中に含まれる前記第１のＣＰＢに適用することをさらに備える、請求項１に記載の方法。
【請求項１６】
ビデオデータを処理するためのビデオ復号デバイスであって、前記デバイスは、
ビデオデータを記憶するように構成されたコード化ピクチャバッファ（ＣＰＢ）と、
１つまたは複数のクリーンランダムアクセス（ＣＲＡ）ピクチャまたは１つまたは複数のブロークンリンクアクセス（ＢＬＡ）ピクチャを含む複数のピクチャを表すビットストリームを受信することと、
外部デバイスから、前記ビットストリームとは別個に、変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を指定するメッセージを受信することと、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇは、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示し、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つは、第１のピクチャを備え、前記第１のピクチャのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプは、前記第１のピクチャが関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有することを示し、
前記受信されたメッセージによって指定された前記値に基づいて、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を設定することと、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記第１のピクチャのための、ＣＰＢパラメータのデフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの１つを選択することと、
を行うように構成された１つまたは複数のプロセッサと、
を備える、ビデオ復号デバイス。
【請求項１７】
前記１つまたは複数のプロセッサは、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つと、関連する仮想リファレンスデコーダ（ＨＲＤ）パラメータとを使用してＨＲＤを初期化するようにさらに構成され、ここで、前記ＨＲＤパラメータは、前記ピクチャのためのＣＰＢパラメータの前記選択されたセットを含む、請求項１６に記載のビデオ復号デバイス。
【請求項１８】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示さず、
前記１つまたは複数のプロセッサは、前記第１のピクチャのためにＣＰＢパラメータの前記デフォルトセットを選択するようにさらに構成された、
請求項１６に記載のビデオ復号デバイス。
【請求項１９】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示し、
前記１つまたは複数のプロセッサは、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットを選択するようにさらに構成された、
請求項１６に記載のビデオ復号デバイス。
【請求項２０】
前記１つまたは複数のプロセッサは、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの別の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定することと、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つは、第２のピクチャを備え、前記ＮＡＬユニットタイプと前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値とに基づいて、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの前記１つを選択することと、を行うようにさらに構成され、
前記１つまたは複数のプロセッサは、さらに、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示すことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記代替セットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットを選択するように構成され、
前記１つまたは複数のプロセッサは、さらに、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示さないことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記デフォルトセットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットを選択するように構成される、
請求項１６に記載のビデオ復号デバイス。
【請求項２１】
前記第２のピクチャは、ＢＬＡピクチャとして取り扱われるＣＲＡピクチャを備え、
前記１つまたは複数のプロセッサは、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するようにさらに構成された、
請求項２０に記載のビデオ復号デバイス。
【請求項２２】
ＣＰＢパラメータの前記代替セットの使用を示す前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記１つまたは複数のプロセッサは、ＣＰＢパラメータの前記代替セットが使用される、関連する復号可能リーディングピクチャをもつＢＬＡピクチャを示すように、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するようにさらに構成され、
ＣＰＢパラメータの前記代替セットの使用を示さない前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記１つまたは複数のプロセッサは、ＣＰＢパラメータの前記代替セットが使用されない、関連する非復号可能リーディングピクチャをもつＢＬＡピクチャを示すように、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するようにさらに構成された、
請求項２１に記載のビデオ復号デバイス。
【請求項２３】
前記第２のピクチャは、ＣＲＡピクチャを備え、前記１つまたは複数のプロセッサは、一般ＣＲＡピクチャを示すように前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するようにさらに構成された、
請求項２０に記載のビデオ復号デバイス。
【請求項２４】
前記第２のピクチャは、ＣＲＡピクチャを備え、関連する非復号可能リーディングピクチャをもつＣＲＡピクチャ、関連する復号可能リーディングピクチャをもつＣＲＡピクチャ、またはリーディングピクチャをもたないＣＲＡピクチャのうちの１つを示すように、前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するようにさらに構成された、請求項２０に記載のビデオ復号デバイス。
【請求項２５】
前記１つまたは複数のプロセッサは、さらに、前記第１のピクチャが、オリジナルのビットストリーム中で、関連する非復号可能リーディングピクチャを有し、前記関連する非復号可能リーディングピクチャが、前記外部デバイスによって廃棄されていることを示す前記メッセージに基づき、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示す値に設定するように構成される、
請求項１６に記載のビデオ復号デバイス。
【請求項２６】
前記１つまたは複数のプロセッサは、さらに、前記第１のピクチャが、オリジナルのビットストリーム中で関連する非復号可能リーディングピクチャを有しなかったか、あるいは前記オリジナルのビットストリーム中で関連する非復号可能リーディングピクチャを有し、前記関連する非復号可能リーディングピクチャは、前記外部デバイスによって廃棄されていないことを示す前記メッセージに基づき、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を、前記第１のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示さない値に設定するように構成される、
請求項１６に記載のビデオ復号デバイス。
【請求項２７】
前記１つまたは複数のプロセッサは、
前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの別の１つのためにＣＰＢパラメータの前記代替セットを使用すべきかどうかを示すメッセージの受信の欠如に基づいて、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記代替セットを示さないように前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を設定することと、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記デフォルトセットを選択することと、
を行うようにさらに構成された、請求項１６に記載のビデオ復号デバイス。
【請求項２８】
ＣＰＢパラメータの前記デフォルトセットおよびＣＰＢパラメータの前記代替セットの各々は、初期ＣＰＢ削除遅延と初期ＣＰＢ削除遅延オフセットとを含む、請求項１６に記載のビデオ復号デバイス。
【請求項２９】
前記１つまたは複数のプロセッサは、前記ビデオデータの復号中に前記ＣＰＢがオーバーフローしないことを保証するために、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つのためのＣＰＢパラメータの前記選択されたセットを、前記ビデオ復号デバイス中に含まれるＣＰＢに適用するようにさらに構成された、請求項１６に記載のビデオ復号デバイス。
【請求項３０】
前記１つまたは複数のプロセッサは、前記ビデオデータの符号化中に、ビデオ符号化デバイス中に含まれる第１のＣＰＢがオーバーフローしないことを保証するために、および前記ビデオ符号化デバイスによって生成された符号化ビットストリームを受信したときに、前記ビデオ復号デバイス中に含まれる第２のＣＰＢがオーバーフローしないことを保証するために、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つのためのＣＰＢパラメータの前記選択されたセットを、前記ビデオ符号化デバイス中に含まれる前記第１のＣＰＢに適用するようにさらに構成された、請求項１６に記載のビデオ復号デバイス。
【請求項３１】
ビデオデータを処理するためのビデオ復号デバイスであって、前記デバイスは、
１つまたは複数のクリーンランダムアクセス（ＣＲＡ）ピクチャまたは１つまたは複数のブロークンリンクアクセス（ＢＬＡ）ピクチャを含む複数のピクチャを表すビットストリームを受信するための手段と、
外部デバイスから、前記ビットストリームとは別個に、変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を指定するメッセージを受信するための手段と、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇは、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つのためのコード化ピクチャバッファ（ＣＰＢ）パラメータの代替セットを使用すべきかどうかを示し、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つは、第１のピクチャを備え、前記第１のピクチャのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプは、前記第１のピクチャが関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有することを示し、
前記受信されたメッセージによって指定された前記値に基づいて、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を設定するための手段と、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記第１のピクチャのための、ＣＰＢパラメータのデフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの１つを選択するための手段と、
を備える、ビデオ復号デバイス。
【請求項３２】
前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つと、関連する仮想リファレンスデコーダ（ＨＲＤ）パラメータとを使用してＨＲＤを初期化するための手段をさらに備え、ここで、前記ＨＲＤパラメータは、ＣＰＢパラメータの前記選択されたセットを含む、
請求項３１に記載のビデオ復号デバイス。
【請求項３３】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示さず、
前記デバイスは、前記第１のピクチャのためにＣＰＢパラメータの前記デフォルトセットを選択するための手段をさらに備える、
請求項３１に記載のビデオ復号デバイス。
【請求項３４】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示し、
前記デバイスは、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットを選択するための手段をさらに備える、
請求項３１に記載のビデオ復号デバイス。
【請求項３５】
前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの別の１つのためにネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定するための手段と、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つは、第２のピクチャを備え、
前記ＮＡＬユニットタイプと前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値とに基づいて、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの前記１つを選択するための手段とをさらに備え、
前記デバイスは、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示すことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記代替セットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットを選択するための手段をさらに備え、
前記デバイスは、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示さないことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記デフォルトセットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットを選択するための手段をさらに備える、
請求項３１に記載のビデオ復号デバイス。
【請求項３６】
前記第２のピクチャは、ＢＬＡピクチャとして取り扱われるＣＲＡピクチャを備え、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するための手段をさらに備える、請求項３５に記載のビデオ復号デバイス。
【請求項３７】
前記ビデオデータの復号中に前記ＣＰＢがオーバーフローしないことを保証するために、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つのためのＣＰＢパラメータの前記選択されたセットを、ビデオ復号デバイス中に含まれるＣＰＢに適用するための手段をさらに備える、請求項３１に記載のビデオ復号デバイス。
【請求項３８】
前記ビデオデータの符号化中に、ビデオ符号化デバイス中に含まれる第１のＣＰＢがオーバーフローしないことを保証するために、および前記ビデオ符号化デバイスによって生成された符号化ビットストリームを受信したときに、前記ビデオ復号デバイス中に含まれる第２のＣＰＢがオーバーフローしないことを保証するために、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記少なくとも１つのためのＣＰＢパラメータの前記選択されたセットを、前記ビデオ符号化デバイス中に含まれる前記第１のＣＰＢに適用するための手段をさらに備える、請求項３１に記載のビデオ復号デバイス。
【請求項３９】
ビデオデータを処理するための命令を記憶するコンピュータ可読記憶媒体であって、前記命令は、実行されたとき、１つまたは複数のプロセッサに、
１つまたは複数のクリーンランダムアクセス（ＣＲＡ）ピクチャまたは１つまたは複数のブロークンリンクアクセス（ＢＬＡ）ピクチャを含む複数のピクチャを表すビットストリームを受信することと、
外部デバイスから、前記ビットストリームとは別個に、変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を指定するメッセージを受信することと、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇは、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つのためのコード化ピクチャバッファ（ＣＰＢ）パラメータの代替セットを使用すべきかどうかを示し、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの少なくとも１つは、第１のピクチャを備え、前記第１のピクチャのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプは、前記第１のピクチャが関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有することを示し、
前記受信されたメッセージによって指定された前記値に基づいて、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値を設定することと、
前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記第１のピクチャのための、ＣＰＢパラメータのデフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの１つを選択することと、
を行わせる、コンピュータ可読記憶媒体。
【請求項４０】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのためにＣＰＢパラメータの前記代替セットの使用を示さず、
前記命令は、前記１つまたは複数のプロセッサに、前記第１のピクチャのためにＣＰＢパラメータの前記デフォルトセットを選択させる、
請求項３９に記載のコンピュータ可読記憶媒体。
【請求項４１】
前記第１のピクチャは、関連する非復号可能リーディングピクチャまたは関連する復号可能リーディングピクチャのうちの少なくとも１つを有するＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプに関連し、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値は、前記第１のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示し、
前記命令は、前記１つまたは複数のプロセッサに、前記第１のピクチャのためのＣＰＢパラメータの前記代替セットを選択させる、
請求項３９に記載のコンピュータ可読記憶媒体。
【請求項４２】
前記命令は、前記１つまたは複数のプロセッサに、
前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの別の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定させ、前記１つまたは複数のＣＲＡピクチャまたは前記１つまたは複数のＢＬＡピクチャのうちの前記別の１つは、第２のピクチャを備え、
前記ＮＡＬユニットタイプと前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値とに基づいて、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットまたはＣＰＢパラメータの前記代替セットのうちの前記１つを選択させ、
前記命令は、前記１つまたは複数のプロセッサに、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示すことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記代替セットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットを選択させ、
前記命令は、前記１つまたは複数のプロセッサに、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値が、前記第２のピクチャのために、ＣＰＢパラメータの前記代替セットの使用を示さないことと、前記第２のピクチャのための前記ＮＡＬユニットタイプが、ＣＰＢパラメータの前記デフォルトセットが使用される、ＢＬＡピクチャまたはＣＲＡピクチャのうちの１つを示すように設定されることとに基づき、前記第２のピクチャのために、ＣＰＢパラメータの前記デフォルトセットを選択させる、
請求項３９に記載のコンピュータ可読記憶媒体。
【請求項４３】
前記第２のピクチャは、ＢＬＡピクチャとして取り扱われるＣＲＡピクチャを備え、
前記命令は、前記１つまたは複数のプロセッサに、前記変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの前記値に基づいて、前記ＢＬＡピクチャとして取り扱われる前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定させる、
請求項４２に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【優先権の主張】
【０００１】
本出願は、その内容全体が参照により本明細書に組み込まれる、２０１２年９月２０日に出願された米国仮出願第６１／７０３，６９５号の利益を主張する。
【技術分野】
【０００２】
本開示は、一般に、ビデオデータを処理することに関し、より詳細には、ビデオデータ中で使用されるランダムアクセスピクチャに関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ１０，アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、現在開発中の高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオコーディング技法など、ビデオコーディング技法を実装する。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]ビデオコーディング技法は、ビデオシーケンスに固有の冗長性を低減または除去するための空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を含む。ブロックベースのビデオコーディングでは、ビデオスライス（たとえば、ビデオフレームまたはビデオフレームの一部分）が、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードと呼ばれることもある、ビデオブロックに区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャの中の隣接ブロック内の参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
[0005]空間的予測または時間的予測は、コーディングされるべきブロックの予測ブロックを生じる。残差データは、コーディングされるべきオリジナルのブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、およびコード化ブロックと予測ブロックとの間の差分を示す残差データに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換されて、残差変換係数が得られ得、その残差変換係数は、次いで量子化され得る。量子化変換係数は、最初は２次元アレイで構成され、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピーコーディングが適用され得る。
【発明の概要】
【０００６】
[0006]概して、本開示では、ビデオコーディングにおいて、クリーンランダムアクセス（ＣＲＡ：clean random access）ピクチャとブロークンリンクアクセス（ＢＬＡ：broken link access）ピクチャとを含むランダムアクセスポイント（ＲＡＰ：random access point）ピクチャの改善されたサポートを提供するための技法について説明する。場合によっては、ＲＡＰピクチャは、代替的に、イントラランダムアクセスポイント（ＩＲＡＰ：intra random access point）ピクチャと呼ばれることがある。特に、本開示では、ビデオビットストリーム中のＣＲＡピクチャまたはＢＬＡピクチャのためのビデオコーディングデバイスのためのコード化ピクチャバッファ（ＣＰＢ：coded picture buffer）を定義するために使用されるＣＰＢパラメータの選択のための技法について説明する。ＣＰＢを定義するためにＣＰＢパラメータのデフォルトセットまたは代替セットのいずれかが使用され得る。代替セットが選択されているべきであるときにデフォルトセットが使用される場合、ＣＰＢがオーバーフローすることがある。
【０００７】
[0007]一例では、本開示は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信することと、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信することとを備える、ビデオデータを処理する方法を対象とする。本方法は、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを示すように定義された変数を設定することと、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを選択することとをさらに備える。
【０００８】
[0008]別の例では、本開示は、ビデオデータを処理するためのビデオコーディングデバイスを対象とし、本デバイスは、ビデオデータを記憶するように構成されたＣＰＢと、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信することと、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信することと、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを示すように定義された変数を設定することと、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを選択することと、を行うように構成された１つまたは複数のプロセッサとを備える。
【０００９】
[0009]さらなる例では、本開示は、ビデオデータを処理するためのビデオコーディングデバイスを対象とし、本デバイスは、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信するための手段と、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信するための手段と、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを示すように定義された変数を設定するための手段と、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを選択するための手段とを備える。
【００１０】
[0010]追加の例では、本開示は、ビデオデータを処理するための命令を備えるコンピュータ可読媒体を対象とし、命令は、実行されたとき、１つまたは複数のプロセッサに、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信することと、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信することと、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを示すように定義された変数を設定することと、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためのＣＰＢパラメータのセットを選択することとを行わせる。
【００１１】
[0011]１つまたは複数の例の詳細は、添付の図面および以下の説明に記載されている。他の特徴、目的、および利点は、その説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１２】
【図１】本開示で説明する技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図２】本開示で説明する技法を実装し得る例示的なビデオエンコーダを示すブロック図。
【図３】本開示で説明する技法を実装し得る例示的なビデオデコーダを示すブロック図。
【図４】仮想リファレンスデコーダ（ＨＲＤ：hypothetical reference decoder）に従って動作するように構成された例示的な宛先デバイスを示すブロック図。
【図５】ビットストリーム中の特定のランダムアクセスポイント（ＲＡＰ）ピクチャのためのコード化ピクチャバッファ（ＣＰＢ）パラメータのセットを示す変数に基づいて、ＣＰＢパラメータのセットを選択する例示的な動作を示すフローチャート。
【図６】ピクチャのためのＣＰＢパラメータのセットを示す変数に基づいて、特定のＲＡＰピクチャのためのネットワークレイヤアブストラクション（ＮＡＬ：network layer abstraction）ユニットタイプを設定する例示的な動作を示すフローチャート。
【図７】ピクチャのためのＮＡＬユニットタイプと、ピクチャのためのＣＰＢパラメータのセットを示す変数とに基づいて、特定のＲＡＰピクチャのためのＣＰＢパラメータのセットを選択する例示的な動作を示すフローチャート。
【図８】ビットストリーム中の特定のＲＡＰピクチャのためのネットワークレイヤアブストラクション（ＮＡＬ）ユニットタイプを示すために定義された変数に基づいて、ＣＰＢパラメータのセットを選択する例示的な動作を示すフローチャート。
【図９】ネットワークの一部を形成するデバイスの例示的なセットを示すブロック図。
【発明を実施するための形態】
【００１３】
[0021]本開示では、ビデオコーディングにおいて、クリーンランダムアクセス（ＣＲＡ）ピクチャとブロークンリンクアクセス（ＢＬＡ）ピクチャとを含むランダムアクセスポイント（ＲＡＰ）ピクチャの改善されたサポートを提供する技法について説明する。場合によっては、ＲＡＰピクチャは、代替的に、イントラランダムアクセスポイント（ＩＲＡＰ）ピクチャと呼ばれることがある。特に、本開示は、ビデオビットストリーム中のＣＲＡピクチャまたはＢＬＡピクチャのためのビデオコーディングデバイスのためのＣＰＢを定義するために使用されるコード化ピクチャバッファ（ＣＰＢ）パラメータの選択のための技法について説明する。仮想リファレンスデコーダ（ＨＲＤ：hypothetical reference decoder）が、バッファリング期間情報とピクチャタイミング情報とを含むＨＲＤパラメータに依拠する。バッファリング期間情報は、ＣＰＢパラメータ、すなわち、初期ＣＰＢ削除遅延と初期ＣＰＢ削除遅延オフセットとを定義する。ＨＲＤを初期化するために使用されたピクチャのタイプに基づいて、ＣＰＢを定義するためにＣＰＢパラメータのデフォルトセットまたは代替セットのいずれかが使用され得る。代替セットが選択されているべきであるときにデフォルトセットが使用される場合、ＨＲＤに準拠するビデオコーディングデバイス中のＣＰＢがオーバーフローすることがある。
【００１４】
[0022]本技法によれば、ビデオコーディングデバイスは、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含む複数のピクチャを表すビットストリームを受信し、また、ＣＲＡピクチャまたはＢＬＡピクチャの各々のためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信する。メッセージは、ストリーミングサーバ、中間ネットワーク要素、または別のネットワークエンティティ中に含まれる処理手段など、外部手段から受信され得る。
【００１５】
[0023]ビデオコーディングデバイスは、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを示すように定義された変数を設定する。ビデオコーディングデバイスは、次いで、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを選択する。ＣＰＢパラメータの選択されたセットは、ビデオコーディング中にＣＰＢがオーバーフローしないことを保証するために、ビデオエンコーダまたはビデオデコーダ中に含まれるＣＰＢに適用される。場合によっては、ビデオコーディングデバイスは、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定し得る。ビデオコーディングデバイスは、シグナリングされた通りにピクチャのためのＮＡＬユニットタイプを設定し得、または、ビデオコーディングデバイスは、ピクチャのための変数に基づいてＮＡＬユニットタイプを設定し得る。ビデオコーディングデバイスは、ピクチャのためのＮＡＬユニットタイプと変数とに基づいて、所与のピクチャのためのＣＰＢパラメータのセットを選択し得る。
【００１６】
[0024]図１は、本開示で説明する技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示されているように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを与えるソースデバイス１２を含む。特に、ソースデバイス１２は、コンピュータ可読媒体１６を介してビデオデータを宛先デバイス１４に与える。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。
【００１７】
[0025]宛先デバイス１４は、コンピュータ可読媒体１６を介して復号されるべき符号化ビデオデータを受信し得る。コンピュータ可読媒体１６は、符号化ビデオデータをソースデバイス１２から宛先デバイス１４に移動することが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体１６は、ソースデバイス１２が、符号化ビデオデータを宛先デバイス１４にリアルタイムで直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得るルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００１８】
[0026]いくつかの例では、符号化データは、出力インターフェース２２からストレージデバイスに出力され得る。同様に、符号化データは、入力インターフェースによってストレージデバイスからアクセスされ得る。ストレージデバイスは、ハードドライブ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイスは、ソースデバイス１２によって生成された符号化ビデオを記憶し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介して、ストレージデバイスから記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を介して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含み得る。ストレージデバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。
【００１９】
[0027]本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーＨＴＴＰ（ＤＡＳＨ：dynamic adaptive streaming over HTTP）などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、単方向または二方向のビデオ送信をサポートするように構成され得る。
【００２０】
[0028]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。他の例では、ソースデバイスおよび宛先デバイスは、他の構成要素または構成を含み得る。たとえば、ソースデバイス１２は、外部カメラなど、外部ビデオソース１８からビデオデータを受信し得る。同様に、宛先デバイス１４は、内蔵ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
【００２１】
[0029]図１の図示のシステム１０は一例にすぎない。本開示の技法は、任意のデジタルビデオ符号化および／または復号デバイスによって実施され得る。概して、本技法はビデオ符号化デバイスによって実行されるが、本技法は、一般に「コーデック」と呼ばれるビデオエンコーダ／デコーダによっても実行され得る。その上、本開示の技法は、ビデオプリプロセッサによっても実行され得る。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が宛先デバイス１４に送信するためのコード化ビデオデータを生成するような、コーディングデバイスの例にすぎない。いくつかの例では、デバイス１２、１４は、デバイス１２、１４の各々がビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、またはビデオテレフォニーのための、ビデオデバイス１２とビデオデバイス１４との間の一方向または双方向のビデオ送信をサポートし得る。
【００２２】
[0030]ソースデバイス１２のビデオソース１８は、ビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替として、ビデオソース１８は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラ付き携帯電話またはビデオ電話を形成し得る。ただし、上述のように、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。各場合において、キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成ビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオ情報は、次いで、出力インターフェース２２によってコンピュータ可読媒体１６上に出力され得る。
【００２３】
[0031]コンピュータ可読媒体１６は、ワイヤレスブロードキャストまたはワイヤードネットワーク送信などの一時媒体、あるいはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Ｂｌｕ−ｒａｙディスク、または他のコンピュータ可読媒体などの記憶媒体（すなわち、非一時的記憶媒体）を含み得る。いくつかの例では、ネットワークサーバ（図示せず）は、ソースデバイス１２から符号化ビデオデータを受信し、たとえば、ネットワーク送信を介して、その符号化ビデオデータを宛先デバイス１４に与え得る。同様に、ディスクスタンピング設備など、媒体製造設備のコンピューティングデバイスは、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを含んでいるディスクを生成し得る。したがって、コンピュータ可読媒体１６は、様々な例において、様々な形態の１つまたは複数のコンピュータ可読媒体を含むことが理解されよう。
【００２４】
[0032]宛先デバイス１４の入力インターフェース２８は、コンピュータ可読媒体１６から情報を受信する。コンピュータ可読媒体１６の情報は、ビデオエンコーダ２０によって定義され、またビデオデコーダ３０によって使用される、ブロックおよび他のコード化ユニット、たとえば、ＧＯＰの特性および／または処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。ディスプレイデバイス３２は、復号されたビデオデータをユーザに対して表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００２５】
[0033]ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオコーディング規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＭＰＥＧ−４，Ｐａｒｔ  １０，アドバンストビデオコーディング（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオコーディング規格の他の例は、ＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３を含む。図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびオーディオデコーダと統合され得、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００２６】
[0034]ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４（ＡＶＣ）規格は、ジョイントビデオチーム（ＪＶＴ：Joint Video Team）として知られる共同パートナーシップの成果として、ＩＳＯ／ＩＥＣムービングピクチャエキスパートグループ（ＭＰＥＧ：Moving Picture Experts Group）とともにＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ：Video Coding Experts Group）によって策定された。いくつかの態様では、本開示で説明する技法は、Ｈ．２６４規格に概して準拠するデバイスに適用され得る。Ｈ．２６４規格は、ＩＴＵ−Ｔ  Ｓｔｕｄｙ  Ｇｒｏｕｐによる２００５年３月付けのＩＴＵ−Ｔ勧告Ｈ．２６４「Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓ」に記載されており、本明細書ではＨ．２６４規格またはＨ．２６４仕様、あるいはＨ．２６４／ＡＶＣ規格または仕様と呼ぶことがある。ジョイントビデオチーム（ＪＶＴ）は、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣへの拡張に取り組み続けている。
【００２７】
[0035]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００２８】
[0036]ＪＣＴ−ＶＣは、ＨＥＶＣ規格の開発に取り組んでいる。ＨＥＶＣ規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づく。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコーディングデバイスのいくつかの追加の能力を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを提供するが、ＨＭは３３個ものイントラ予測符号化モードを提供し得る。
【００２９】
[0037]概して、ＨＭの作業モデル（working model）は、ビデオフレームまたはピクチャが、ルーマサンプルとクロマサンプルの両方を含む一連のツリーブロックまたは最大コーディングユニット（ＬＣＵ：largest coding unit）に分割され得ることを記載している。ビットストリーム内のシンタックスデータが、ピクセルの数に関して最大コーディングユニットであるＬＣＵのサイズを定義し得る。スライスは、コーディング順序でいくつかの連続するツリーブロックを含む。ビデオフレームまたはピクチャは、１つまたは複数のスライスに区分され得る。各ツリーブロックは、４分木（quadtree）に従ってコーディングユニット（ＣＵ）に分割され得る。一般に、４分木データ構造はＣＵごとに１つのノードを含み、ルートノードはツリーブロックに対応する。ＣＵが４つのサブＣＵに分割された場合、ＣＵに対応するノードは４つのリーフノードを含み、リーフノードの各々はサブＣＵのうちの１つに対応する。
【００３０】
[0038]４分木データ構造の各ノードは、対応するＣＵのシンタックスデータを与え得る。たとえば、４分木のノードは、そのノードに対応するＣＵがサブＣＵに分割されるかどうかを示す分割フラグを含み得る。ＣＵのシンタックス要素は、再帰的に定義され得、ＣＵがサブＣＵに分割されるかどうかに依存し得る。ＣＵがさらに分割されない場合、そのＣＵはリーフＣＵと呼ばれる。本開示では、オリジナルのリーフＣＵの明示的分割が存在しない場合でも、リーフＣＵの４つのサブＣＵをリーフＣＵとも呼ぶ。たとえば、１６×１６サイズのＣＵがさらに分割されない場合、この１６×１６ＣＵが決して分割されなくても、４つの８×８サブＣＵをリーフＣＵとも呼ぶ。
【００３１】
[0039]ＣＵは、ＣＵがサイズ差異を有しないことを除いて、Ｈ．２６４規格のマクロブロックと同様の目的を有する。たとえば、ツリーブロックは、４つの子ノード（サブＣＵとも呼ばれる）に分割され得、各子ノードは、今度は親ノードとなり、別の４つの子ノードに分割され得る。４分木のリーフノードと呼ばれる、最後の分割されていない子ノードは、リーフＣＵとも呼ばれるコーディングノードを備える。コード化ビットストリームに関連するシンタックスデータは、最大ＣＵ深さと呼ばれる、ツリーブロックが分割され得る最大回数を定義し得、また、コーディングノードの最小サイズを定義し得る。それに応じて、ビットストリームは最小コーディングユニット（ＳＣＵ：smallest coding unit）をも定義し得る。本開示は、ＨＥＶＣのコンテキストにおけるＣＵ、ＰＵ、もしくはＴＵ、または他の規格のコンテキストにおける同様のデータ構造（たとえば、Ｈ．２６４／ＡＶＣにおけるマクロブロックおよびそのサブブロック）のいずれかを指すために「ブロック」という用語を使用する。
【００３２】
[0040]ＣＵは、コーディングノードと、コーディングノードに関連する予測ユニット（ＰＵ：prediction unit）および変換ユニット（ＴＵ：transform unit）とを含む。ＣＵのサイズは、コーディングノードのサイズに対応し、形状が正方形でなければならない。ＣＵのサイズは、８×８ピクセルから最大６４×６４以上のピクセルをもつツリーブロックのサイズまでに及び得る。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。ＣＵに関連するシンタックスデータは、たとえば、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。区分モードは、ＣＵが、スキップモード符号化またはダイレクトモード符号化されるか、イントラ予測モード符号化されるか、あるいはインター予測モード符号化されるかの間で異なり得る。ＰＵは、形状が非正方形になるように区分され得る。ＣＵに関連するシンタックスデータは、たとえば、４分木に従って、ＣＵを１つまたは複数のＴＵに区分することも記述し得る。ＴＵは、形状が正方形または非正方形（たとえば、矩形）であり得る。
【００３３】
[0041]ＨＥＶＣ規格は、ＣＵごとに異なり得るＴＵに従う変換を可能にする。ＴＵは、一般に、区分されたＬＣＵについて定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。ＴＵは、一般に、ＰＵと同じサイズであるかまたはＰＵよりも小さい。いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造を使用してより小さいユニットに再分割され得る。ＲＱＴのリーフノードは変換ユニット（ＴＵ）と呼ばれることがある。ＴＵに関連するピクセル差分値は、変換されて変換係数が生成され得、その変換係数は量子化され得る。
【００３４】
[0042]リーフＣＵは、１つまたは複数の予測ユニット（ＰＵ）を含み得る。概して、ＰＵは、対応するＣＵの全部または一部分に対応する空間エリアを表し、そのＰＵの参照サンプルを取り出すためのデータを含み得る。その上、ＰＵは、予測に関係するデータを含む。たとえば、ＰＵがイントラモード符号化されるとき、ＰＵについてのデータは、ＰＵに対応するＴＵについてのイントラ予測モードを記述するデータを含み得る残差４分木（ＲＱＴ）中に含まれ得る。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵのための１つまたは複数の動きベクトルを定義するデータを含み得る。ＰＵの動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度もしくは１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルの参照ピクチャリスト（たとえば、リスト０、リスト１、もしくはリストＣ）を記述し得る。
【００３５】
[0043]１つまたは複数のＰＵを有するリーフＣＵはまた、１つまたは複数の変換ユニット（ＴＵ）を含み得る。変換ユニットは、上記で説明したように、（ＴＵ４分木構造とも呼ばれる）ＲＱＴを使用して指定され得る。たとえば、分割フラグは、リーフＣＵが４つの変換ユニットに分割されるかどうかを示し得る。次いで、各変換ユニットはさらに、さらなるサブＴＵに分割され得る。ＴＵがさらに分割されないとき、そのＴＵはリーフＴＵと呼ばれることがある。概して、イントラコーディングの場合、リーフＣＵに属するすべてのリーフＴＵは同じイントラ予測モードを共有する。すなわち、概して、リーフＣＵのすべてのＴＵの予測値を計算するために同じイントラ予測モードが適用される。イントラコーディングの場合、ビデオエンコーダは、イントラ予測モードを使用して各リーフＴＵの残差値を、ＴＵに対応するＣＵの一部とオリジナルのブロックとの間の差分として計算し得る。ＴＵは、必ずしもＰＵのサイズに制限されるとは限らない。したがって、ＴＵはＰＵよりも大きくまたは小さくなり得る。イントラコーディングの場合、ＰＵは、同じＣＵの対応するリーフＴＵとコロケートされ得る。いくつかの例では、リーフＴＵの最大サイズは、対応するリーフＣＵのサイズに対応し得る。
【００３６】
[0044]その上、リーフＣＵのＴＵはまた、残差４分木（ＲＱＴ）と呼ばれる、それぞれの４分木データ構造に関連付けられ得る。すなわち、リーフＣＵは、リーフＣＵがどのようにＴＵに区分されるかを示す４分木を含み得る。ＴＵ４分木のルートノードは概してリーフＣＵに対応し、ＣＵ４分木のルートノードは概してツリーブロック（またはＬＣＵ）に対応する。分割されないＲＱＴのＴＵはリーフＴＵと呼ばれる。概して、本開示では、特に明記しない限り、リーフＣＵおよびリーフＴＵに言及するためにそれぞれＣＵおよびＴＵという用語を使用する。
【００３７】
[0045]ビデオシーケンスは、一般に、一連のビデオフレームまたはピクチャを含む。ピクチャグループ（ＧＯＰ：group of pictures）は、概して、ビデオピクチャのうちの一連の１つまたは複数を備える。ＧＯＰは、ＧＯＰ中に含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ中に、１つまたは複数のピクチャのヘッダ中に、または他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスのための符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ２０は、一般に、ビデオデータを符号化するために個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックはＣＵ内のコーディングノードに対応し得る。ビデオブロックは、固定サイズまたは可変サイズを有し得、指定のコーディング規格に応じてサイズが異なり得る。
【００３８】
[0046]一例として、ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測をサポートし、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称区分をサポートする。非対称区分では、ＣＵの一方向は区分されないが、他の方向は２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。したがって、たとえば、「２Ｎ×ｎＵ」は、上部の２Ｎ×０．５Ｎ  ＰＵと下部の２Ｎ×１．５Ｎ  ＰＵとで水平方向に区分された２Ｎ×２Ｎ  ＣＵを指す。
【００３９】
[0047]本開示では、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために互換的に使用され得る。概して、１６×１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮピクセルを有し、水平方向にＮピクセルを有し、ただし、Ｎは非負整数値を表す。ブロック中のピクセルは行と列に構成され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数のピクセルを有する必要があるとは限らない。たとえば、ブロックはＮ×Ｍピクセルを備え得、ただし、Ｍは必ずしもＮに等しいとは限らない。
【００４０】
[0048]ＣＵのＰＵを使用したイントラ予測コーディングまたはインター予測コーディングの後に、ビデオエンコーダ２０は、ＣＵのＴＵのための残差データを計算し得る。ＰＵは、（ピクセル領域とも呼ばれる）空間領域において予測ピクセルデータを生成する方法またはモードを記述するシンタックスデータを備え得、ＴＵは、変換、たとえば、残差ビデオデータへの離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念的に同様の変換の適用後に、変換領域において係数を備え得る。残差データは、符号化されていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ２０は、ＣＵのための残差データを含むＴＵを形成し、次いで、ＴＵを変換して、ＣＵの変換係数を生成し得る。
【００４１】
[0049]変換係数を生成するための任意の変換の後に、ビデオエンコーダ２０は、変換係数の量子化を実行し得る。量子化は、概して、係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を行うプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。たとえば、量子化中にｎビット値がｍビット値に切り捨てられ得、ただし、ｎはｍよりも大きい。
【００４２】
[0050]量子化の後に、ビデオエンコーダは、変換係数を走査して、量子化変換係数を含む２次元行列から１次元ベクトルを生成し得る。走査は、より高いエネルギー（したがってより低い周波数）の係数をアレイの前方に配置し、より低いエネルギー（したがってより高い周波数）の係数をアレイの後方に配置するように設計され得る。いくつかの例では、ビデオエンコーダ２０は、エントロピー符号化され得るシリアル化ベクトルを生成するために、量子化変換係数を走査するためにあらかじめ定義された走査順序を利用し得る。他の例では、ビデオエンコーダ２０は適応走査を実施し得る。量子化変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、たとえば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context-adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context-adaptive binary arithmetic coding）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率間隔区分エントロピー（ＰＩＰＥ：Probability Interval Partitioning Entropy）コーディング、または別のエントロピー符号化方法に従って１次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための符号化ビデオデータに関連するシンタックス要素をエントロピー符号化し得る。
【００４３】
[0051]ＣＡＢＡＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルに、コンテキストモデル内のコンテキストを割り当て得る。コンテキストは、たとえば、シンボルの隣接値が非０であるか否かに関係し得る。ＣＡＶＬＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルのための可変長コードを選択し得る。ＶＬＣにおけるコードワードは、比較的短いコードが優勢シンボル（more probable symbol）に対応し、より長いコードが劣勢シンボル（less probable symbol）に対応するように構成され得る。このようにして、ＶＬＣの使用は、たとえば、送信されるべき各シンボルのために等長コードワードを使用するよりも、ビット節約を達成し得る。確率決定は、シンボルに割り当てられたコンテキストに基づき得る。
【００４４】
[0052]ビデオエンコーダ２０はさらに、ブロックベースのシンタックスデータ、フレームベースのシンタックスデータ、およびＧＯＰベースのシンタックスデータなどのシンタックスデータを、たとえば、フレームヘッダ、ブロックヘッダ、スライスヘッダ、またはＧＯＰヘッダ中でビデオデコーダ３０に送り得る。ＧＯＰシンタックスデータは、それぞれのＧＯＰ中のいくつかのフレームを記述し得、フレームシンタックスデータは、対応するフレームを符号化するために使用される符号化／予測モードを示し得る。
【００４５】
[0053]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、適用可能なとき、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダまたはデコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ／デコーダ（コーデック）の一部として統合され得る。ビデオエンコーダ２０および／またはビデオデコーダ３０を含むデバイスは、集積回路、マイクロプロセッサ、および／またはセルラー電話などのワイヤレス通信デバイスを備え得る。
【００４６】
[0054]ビデオコーディング規格は、ビデオバッファリングモデルの仕様を含み得る。ＡＶＣおよびＨＥＶＣでは、バッファリングモデルは、ビデオエンコーダ２０および／またはビデオデコーダ３０中に含まれるコード化ピクチャバッファ（ＣＰＢ）と復号ピクチャバッファ（ＤＰＢ：decoded picture buffer）の両方のバッファリングモデルを含む仮想リファレンスデコーダ（ＨＲＤ）と呼ばれ、ＣＰＢ挙動（behavior）およびＤＰＢ挙動は数学的に指定される。ＨＲＤは、異なるタイミング、バッファサイズおよびビットレートに直接制約を課し、ビットストリーム特性および統計に間接的に制約を課す。ＨＲＤパラメータの完全セットは、初期ＣＰＢ除去遅延、ＣＰＢサイズ、ビットレート、初期ＤＰＢ出力遅延、およびＤＰＢサイズという５つの基本パラメータを含む。ＡＶＣおよびＨＥＶＣでは、ビットストリーム適合およびデコーダ適合は、ＨＲＤ仕様の一部として指定される。デコーダのタイプとして称されるが、ＨＲＤは、一般に、ビットストリーム適合、すなわち、エンコーダによって生成されたビットストリームのデコーダの要件への適合を保証するためにエンコーダ側で必要とされ、一般に、デコーダ側では必要とされない。
【００４７】
[0055]ＡＶＣおよびＨＥＶＣ  ＨＲＤモデルでは、復号またはＣＰＢ除去はアクセスユニットベースであり、ピクチャ復号が瞬時に行われると仮定される。実際の適用例では、アクセスユニットの復号を開始するために、適合デコーダが、たとえば、ピクチャタイミング補足エンハンスメント情報（ＳＥＩ：supplemental enhancement information）メッセージ中でシグナリングされた復号時間に厳密に従う場合、特定の復号ピクチャを出力する可能な最も早い時間は、その特定のピクチャの復号時間にその特定のピクチャを復号するために必要とされる時間を加えたものに等しくなる。ＡＶＣおよびＨＥＶＣ  ＨＲＤモデルとは異なり、現実の世界でピクチャを復号するために必要とされる時間は０に等しくならない。本開示で使用される「瞬時」および「瞬時に」という用語は、これが、物理的または文字通りの意味で「瞬時」とは異なり得るという了解の下で、１つまたは複数のコーディングモデルにおいてあるいは１つまたは複数のコーディングモデルの理想的な態様において瞬時であると仮定され得る任意の持続時間を指すことがある。たとえば、本開示では、関数またはプロセスが、実行されるべき関数またはプロセスのための仮定的なまたは理想的なできるだけ早い時間の実際のマージンで、またはそれの内で行われる場合、それは、名目上「瞬時」であると見なされ得る。本明細書で用いられるシンタックス名および変数名は、いくつかの例では、ＨＥＶＣモデル内のそれらの意味に従って理解され得る。
【００４８】
[0056]例示的な仮想リファレンスデコーダ（ＨＲＤ）動作、コード化ピクチャバッファの例示的な動作、ビットストリーム到着の例示的なタイミング、復号ユニット除去の例示的なタイミング、復号ユニットの例示的な復号、復号ピクチャバッファの例示的な動作、復号ピクチャバッファからのピクチャの例示的な除去、例示的なピクチャ出力、ならびに例示的な現在の復号ピクチャのマーキングおよびストレージの以下の説明を、他の機能のなかでも、ピクチャバッファ中にビデオデータの１つまたは複数の復号ユニットを記憶することと、１つまたは複数の復号ユニットのためのそれぞれのバッファ除去時間を取得することと、復号ユニットの各々のための取得されたバッファ除去時間に従ってピクチャバッファから復号ユニットを除去することと、除去された復号ユニットに対応するビデオデータをコーディングすることとを行うように構成され得るビデオエンコーダ２０および／またはビデオデコーダ３０の例を示すために与える。動作は、他の例では、別様に、定義または実行され得る。このようにして、ビデオエンコーダ２０および／またはビデオデコーダ３０は、以下で説明するＨＲＤ動作の様々な例に従って動作するように構成され得る。
【００４９】
[0057]ＨＲＤは、バッファリング期間補足エンハンスメント情報（ＳＥＩ）メッセージのうちのいずれか１つで初期化され得る。初期化前に、ＣＰＢは空であり得る。初期化後、ＨＲＤは後続のバッファリング期間ＳＥＩメッセージによって再び初期化され得ない。ＣＰＢを初期化するバッファリング期間ＳＥＩメッセージに関連するアクセスユニットは、アクセスユニット０と呼ばれ得る。復号ピクチャバッファは、ピクチャストレージバッファを含み得る。ピクチャストレージバッファの各々は、「参照のために使用される」とマーキングされているか、または将来の出力のために保持された復号ピクチャを含み得る。初期化前に、ＤＰＢは空であり得る。
【００５０】
[0058]ＨＲＤ（たとえば、ビデオエンコーダ２０および／またはビデオデコーダ３０）は、以下のように動作し得る。指定された到着スケジュールに従ってＣＰＢに流れる復号ユニットに関連するデータは、仮想ストリームスケジューラ（ＨＳＳ：hypothetical stream scheduler）によって配信され得る。一例では、各復号ユニットに関連するデータは、ＣＰＢ除去時間に瞬時復号プロセスによって瞬時に除去され復号され得る。各復号ピクチャは、ＤＰＢ中に配置され得る。復号ピクチャは、ＤＰＢ出力時またはインター予測参照のためにもはや必要とされなくなったときのうちの遅い方でＤＰＢから除去され得る。
【００５１】
[0059]ＨＲＤは、初期ＣＰＢ削除遅延および初期ＣＰＢ削除遅延オフセットのＣＰＢパラメータを含む、ＨＲＤパラメータに依拠する。場合によっては、ＨＲＤパラメータは、ＨＲＤを初期化するために使用されたピクチャのタイプに基づいて決定され得る。ランダムアクセスの場合、ＨＲＤは、クリーンランダムアクセス（ＣＲＡ）ピクチャまたはブロークンリンクアクセス（ＢＬＡ）ピクチャなど、ランダムアクセスポイント（ＲＡＰ）ピクチャを用いて初期化され得る。場合によっては、ＲＡＰピクチャは、代替的に、イントラランダムアクセスポイント（ＩＲＡＰ）ピクチャと呼ばれることがある。たとえば、ビットストリーム中の、廃棄タグ付き（ＴＦＤ：tagged for discard）ピクチャまたはランダムアクセススキップリーディング（ＲＡＳＬ：Random Access Skipped Leading）ピクチャとも呼ばれる、関連する非復号可能リーディングピクチャ（non-decodable leading picture）を有するＢＬＡピクチャを用いてＨＲＤが初期化されるとき、ＣＰＢパラメータの代替セットが使用され得る。他の場合、ＨＲＤのためにＣＰＢパラメータのデフォルトセットが使用される。代替セットが選択されているべきであるときにＣＰＢパラメータのデフォルトセットが使用される場合、ＣＰＢはオーバーフローすることがある。
【００５２】
[0060]いくつかの例では、所与のＣＲＡピクチャまたはＢＬＡピクチャは、オリジナルのビットストリーム中で関連するＴＦＤピクチャを有することがあり、ＴＦＤピクチャは、外部手段によってオリジナルのビットストリームから除去され得る。外部手段は、ストリーミングサーバ、中間ネットワーク要素、または別のネットワークエンティティ中に含まれる処理手段を備え得る。外部手段は、しかしながら、関連するＴＦＤピクチャの削除を反映するために所与のＣＲＡピクチャまたはＢＬＡピクチャのシグナリングされたタイプを変更することができないことがある。この場合、オリジナルのビットストリーム中のＣＲＡピクチャまたはＢＬＡピクチャのシグナリングされたタイプに基づいて、ＣＰＢパラメータのデフォルトセットが選択され得る。ピクチャが関連するＴＦＤピクチャをもはや有しないように、ＴＦＤピクチャが外部手段によって除去され、ＨＲＤのためにＣＰＢパラメータの代替セットが使用されるべきであるので、これによりＣＰＢオーバーフローを生じることがある。
【００５３】
[0061]本開示では、ビデオビットストリーム中のＣＲＡピクチャまたはＢＬＡピクチャのためのビデオエンコーダ２０および／またはビデオデコーダ３０のためのＣＰＢを定義するために使用されるＣＰＢパラメータの選択のための技法について説明する。本技法によれば、ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含む複数のピクチャを表すビットストリームを受信し、また、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信する。メッセージは、ストリーミングサーバ、中間ネットワーク要素、または別のネットワークエンティティ中に含まれる処理手段など、外部手段から受信され得る。
【００５４】
[0062]ビデオデコーダ３０は、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを示すために定義された変数を設定する。ビデオデコーダ３０は、次いで、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを選択する。場合によっては、ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定し得、ピクチャのためのＮＡＬユニットタイプと変数とに基づいて、所与のピクチャのためのＣＰＢパラメータのセットを選択し得る。
【００５５】
[0063]ＣＰＢパラメータの選択されたセットは、ビデオデコーダ３０中に含まれるＣＰＢに適用され、ビデオ復号中にＣＰＢがオーバーフローしないことを保証する。ビデオエンコーダ２０は、同様の動作を実行し、ＣＰＢパラメータの選択されたセットを、ビデオエンコーダ２０中に含まれるＣＰＢに適用するように構成され得、ビデオ符号化中に、ビデオエンコーダ２０中に含まれるＣＰＢがオーバーフローしないことと、ビデオエンコーダ２０によって生成された符号化ビットストリームを受信したときに、ビデオデコーダ３０中に含まれるＣＰＢがオーバーフローしないこととを保証する。
【００５６】
[0064]図２は、本開示で説明する技法を実装し得るビデオエンコーダ２０の例を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去するために時間的予測に依拠する。イントラ（Ｉ）モードは、いくつかの空間ベースのコーディングモードのいずれかを指し得る。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを指し得る。
【００５７】
[0065]図２に示すように、ビデオエンコーダ２０は、符号化されるべきビデオフレーム内の現在ビデオブロックを受信する。図２の例では、ビデオエンコーダ２０は、モード選択ユニット４０と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６と、復号ピクチャバッファ（ＤＰＢ）６４と、コード化ピクチャバッファ（ＣＰＢ）６６とを含む。モード選択ユニット４０は、今度は、動き補償ユニット４４と、動き推定ユニット４２と、イントラ予測処理ユニット４６と、パーティションユニット４８とを含む。ビデオブロックの再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換処理ユニット６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタ処理するデブロッキングフィルタ（図２に図示せず）も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。追加のフィルタ（ループ内またはループ後）もデブロッキングフィルタに加えて使用され得る。そのようなフィルタは、簡潔のために示されていないが、所望される場合、（ループ内フィルタとして）加算器５０の出力をフィルタ処理し得る。
【００５８】
[0066]符号化プロセス中に、ビデオエンコーダ２０は、コーディングされるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは、複数のビデオブロックに区分され得る。動き推定ユニット４２および動き補償ユニット４４は、時間予測を行うために、１つまたは複数の参照フレーム中の１つまたは複数のブロックに対して、受信されたビデオブロックのインター予測コーディングを実行する。イントラ予測処理ユニット４６は、代替的に、空間的予測を行うために、コーディングされるべきブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対して、受信されたビデオブロックのイントラ予測コーディングを実行し得る。ビデオエンコーダ２０は、たとえば、ビデオデータのブロックごとに適切なコーディングモードを選択するために、複数のコーディングパスを実行し得る。
【００５９】
[0067]その上、パーティションユニット４８は、前のコーディングパスにおける前の区分スキームの評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。たとえば、パーティションユニット４８は、初めにフレームまたはスライスをＬＣＵに区分し、レートひずみ（rate-distortion）分析（たとえば、レートひずみ最適化）に基づいてＬＣＵの各々をサブＣＵに区分し得る。モード選択ユニット４０は、ＬＣＵをサブＣＵに区分することを示す４分木データ構造をさらに生成し得る。４分木のリーフノードＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。
【００６０】
[0068]モード選択ユニット４０は、たとえば、誤差結果に基づいてコーディングモード、すなわち、イントラまたはインターのうちの１つを選択し、残差ブロックデータを生成するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器５０に与え、参照フレームとして使用するための符号化ブロックを再構築するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器６２に与え得る。モード選択ユニット４０はまた、動きベクトル、イントラモードインジケータ、パーティション情報、および他のそのようなシンタックス情報など、シンタックス要素をエントロピー符号化ユニット５６に与える。
【００６１】
[0069]動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在フレーム（または他のコード化ユニット）内でコーディングされている現在ブロックに対する参照フレーム（または他のコード化ユニット）内の予測ブロックに対する現在ビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。予測ブロックは、絶対値差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきブロックにぴったり一致することがわかるブロックである。いくつかの例では、ビデオエンコーダ２０は、ＤＰＢ６４に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【００６２】
[0070]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライスにおけるビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの参照ピクチャリストの各々は、ＤＰＢ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【００６３】
[0071]動き補償ユニット４４によって実行される動き補償は、動き推定ユニット４２によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することに関与し得る。この場合も、いくつかの例では、動き推定ユニット４２と動き補償ユニット４４とは機能的に統合され得る。現在ビデオブロックのＰＵについての動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルが参照ピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定し得る。加算器５０は、以下で説明するように、コーディングされている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。概して、動き推定ユニット４２はルーマ成分に対して動き推定を実行し、動き補償ユニット４４は、クロマ成分とルーマ成分の両方のためにルーマ成分に基づいて計算された動きベクトルを使用する。モード選択ユニット４０はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するためのビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
【００６４】
[0072]イントラ予測処理ユニット４６は、上記で説明したように、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、現在ブロックをイントラ予測し得る。特に、イントラ予測処理ユニット４６は、現在ブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測処理ユニット４６は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在ブロックを符号化し得、イントラ予測処理ユニット４６（または、いくつかの例では、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。
【００６５】
[0073]たとえば、イントラ予測処理ユニット４６は、様々なテストされたイントラ予測モードのためのレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化されたオリジナルの符号化されていないブロックとの間のひずみ（または誤差）の量、ならびに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を決定する。イントラ予測処理ユニット４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを決定するために、様々な符号化ブロックのひずみおよびレートから比を計算し得る。
【００６６】
[0074]ブロックのイントラ予測モードを選択した後に、イントラ予測処理ユニット４６は、エントロピー符号化ユニット５６にブロックのための選択されたイントラ予測モードを示す情報を与え得る。エントロピー符号化ユニット５６は、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ２０は、複数のイントラ予測モードインデックステーブルおよび複数の変更されたイントラ予測モードインデックステーブル（コードワードマッピングテーブルとも呼ばれる）と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および変更されたイントラ予測モードインデックステーブルの指示とを含み得る構成データを、送信ビットストリーム中に含め得る。
【００６７】
[0075]ビデオエンコーダ２０は、コーディングされているオリジナルのビデオブロックから、モード選択ユニット４０からの予測データを減算することによって残差ビデオブロックを形成する。加算器５０は、この減算演算を実行する１つまたは複数の構成要素を表す。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を備えるビデオブロックを生成する。変換処理ユニット５２は、ＤＣＴと概念的に同様である他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換も使用され得る。いずれの場合も、変換処理ユニット５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値領域から周波数領域などの変換領域に変換し得る。変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット５６が走査を実行し得る。
【００６８】
[0076]量子化の後に、エントロピー符号化ユニット５６は、量子化変換係数をエントロピーコーディングする。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔区分エントロピー（ＰＩＰＥ）コーディングまたは別のエントロピーコーディング技法を実行し得る。コンテキストベースエントロピーコーディングの場合、コンテキストは隣接ブロックに基づき得る。エントロピー符号化ユニット５６によるエントロピーコーディングの後に、符号化ビットストリームは、ほぼ一時的にＣＰＢ６６にバッファまたは記憶されるか、別のデバイス（たとえば、ビデオデコーダ３０）に送信されるか、あるいは後で送信するかまたは取り出すためにアーカイブされ得る。
【００６９】
[0077]逆量子化ユニット５８および逆変換処理ユニット６０は、それぞれ逆量子化および逆変換を適用して、たとえば、参照ブロックとして後で使用するために、ピクセル領域中で残差ブロックを再構築する。動き補償ユニット４４は、残差ブロックをＤＰＢ６４のフレームのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器６２は、再構成された残差ブロックを、動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、ＤＰＢ６４に記憶するための再構成されたビデオブロックを生成する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするために動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【００７０】
[0078]ＤＰＢ６４は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、埋込みダイナミックランダムアクセスメモリ（ｅＤＲＡＭ）、またはスタティックランダムアクセスメモリ（ＳＲＡＭ）など、データを記憶することが可能な任意のパーマネントまたは揮発性メモリなどのデータストレージデバイスであり得るか、またはそれに含まれ得る。ＤＰＢ６４は、本開示で説明する例示的なコード化ピクチャバッファおよび／または復号ピクチャバッファ挙動の任意の組合せに従って動作し得る。たとえば、ビデオエンコーダ２０は、仮想リファレンスデコーダ（ＨＲＤ）に従って動作するように構成され得る。この場合、ビデオエンコーダ２０中に含まれるＤＰＢ６４は、ＨＲＤのバッファリングモデルに従って、ＣＰＢパラメータおよびＤＰＢパラメータを含む、ＨＲＤパラメータによって定義され得る。
【００７１】
[0079]同様に、ＣＰＢ６６は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、埋込みダイナミックランダムアクセスメモリ（ｅＤＲＡＭ）、またはスタティックランダムアクセスメモリ（ＳＲＡＭ）など、データを記憶することが可能な任意のパーマネントまたは揮発性メモリなどのデータストレージデバイスであり得るか、またはそれに含まれ得る。ビデオエンコーダ２０の一部を形成するものとして示されているが、いくつかの例では、ＣＰＢ６６は、ビデオエンコーダ２０の外部のデバイス、ユニット、またはモジュールの一部を形成し得る。たとえば、ＣＰＢ６６は、ビデオエンコーダ２０の外部のストリームスケジューラユニット、たとえば、配信スケジューラまたは仮想ストリームスケジューラ（ＨＳＳ）の一部を形成し得る。ビデオエンコーダ２０が、ＨＲＤに従って動作するように構成される場合、ビデオエンコーダ２０中に含まれるＣＰＢ６６は、ＨＲＤのバッファリングモデルに従って、初期ＣＰＢ削除遅延およびオフセットのＣＰＢパラメータを含む、ＨＲＤパラメータによって定義され得る。
【００７２】
[0080]本開示の技法によれば、ビデオエンコーダ２０は、ビデオデータの符号化中にＣＰＢ６６がオーバーフローしないことと、ビデオエンコーダ２０によって生成された符号化ビットストリームを受信したときに、ビデオデコーダ３０中に含まれるＣＰＢがオーバーフローしないこととを保証するために、ＣＰＢパラメータのデフォルトセットまたは代替セットのいずれかをＣＰＢ６６に適用し得る。代替セットが選択されているべきであるときにデフォルトセットが使用される場合、ビデオエンコーダ２０中に含まれるＣＰＢ６６またはビデオデコーダ３０中に含まれるＣＰＢがオーバーフローすることがある。適切なＣＰＢパラメータの選択は主に、ＨＲＤを初期化するためにクリーンランダムアクセス（ＣＲＡ）ピクチャまたはブロークンリンクアクセス（ＢＬＡ）ピクチャなど、ランダムアクセスポイント（ＲＡＰ）ピクチャが使用されるときに問題になる。本技法は、したがって、ビデオコーディングにおけるＲＡＰピクチャの改善されたサポートを提供し得る。
【００７３】
[0081]ビデオエンコーダ２０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含む複数のピクチャを表すビットストリームを受信するように構成され得、また、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信する。場合によっては、ビットストリームは、ビデオエンコーダ２０の符号化部分、たとえば、エントロピー符号化ユニット５６またはＣＰＢ６６から直接、ビデオエンコーダ２０の復号部分、すなわち、逆量子化ユニット５８および逆変換処理ユニット６０において受信され得る。メッセージは、ストリーミングサーバ、中間ネットワーク要素、または別のネットワークエンティティ中に含まれる処理手段など、外部手段から受信され得る。
【００７４】
[0082]ビデオエンコーダ２０は、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを示すために定義された変数を設定する。ビデオエンコーダ２０は、次いで、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを選択する。ビデオエンコーダ２０は、ビデオ符号化中にＣＰＢ６６がオーバーフローしないことを保証するために、およびビデオエンコーダ２０によって生成された符号化ビットストリームを受信したときに、ビデオデコーダ３０中に含まれるＣＰＢがオーバーフローしないことを保証するために、ＣＰＢパラメータの選択されたセットを、ビデオエンコーダ２０中に含まれるＣＰＢ６６に適用する。場合によっては、ビデオエンコーダ２０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定し得、ピクチャのためのＮＡＬユニットタイプと変数とに基づいて、所与のピクチャのためのＣＰＢパラメータのセットを選択し得る。ＲＡＰピクチャのためのＣＰＢパラメータ選択プロセスについて、図３のビデオデコーダ３０に関してより詳細に説明する。
【００７５】
[0083]図３は、本開示で説明する技法を実装し得る例示的なビデオデコーダ３０を示すブロック図である。図３の例では、ビデオデコーダ３０は、エントロピー復号ユニット７０と、動き補償ユニット７２およびイントラ予測処理ユニット７４を含む予測処理ユニット７１と、逆量子化ユニット７６と、逆変換処理ユニット７８と、加算器８０と、コード化ピクチャバッファ（ＣＰＢ）６８と、復号ピクチャバッファ（ＤＰＢ）８２とを含む。ビデオデコーダ３０は、いくつかの例では、図２のビデオエンコーダ２０に関して説明した符号化パスとは概して逆の復号パスを実行し得る。
【００７６】
[0084]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビデオビットストリームを受信する。ビデオデコーダ３０は、ネットワークエンティティ２９から符号化ビデオビットストリームを受信し得る。ネットワークエンティティ２９は、たとえば、ストリーミングサーバ、メディアアウェアネットワーク要素（ＭＡＮＥ）、ビデオエディタ／スプライサ、中間ネットワーク要素、あるいは上述した技法のうちの１つまたは複数を実装するように構成された他のそのようなデバイスであり得る。ネットワークエンティティ２９は、本開示の技法を実行するように構成された外部手段を含み得る。上記で説明したように、本開示で説明する技法のいくつかは、ネットワークエンティティ２９が符号化ビデオビットストリームをビデオデコーダ３０に送信するより前にネットワークエンティティ２９によって実装され得る。いくつかのビデオ復号システムでは、ネットワークエンティティ２９およびビデオデコーダ３０は別個のデバイスの部分であり得るが、他の事例では、ネットワークエンティティ２９に関して説明する機能は、ビデオデコーダ３０を備える同じデバイスによって実行され得る。
【００７７】
[0085]エントロピー復号ユニット７０によるエントロピー復号の前に、ビットストリームは、ほぼ一時的にＣＰＢ６８中にバッファまたは記憶され得る。ビデオデコーダ３０のエントロピー復号ユニット７０は、次いで、量子化係数、動きベクトルまたはイントラ予測モードインジケータ、および他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット７０は、動きベクトルと他のシンタックス要素とを動き補償ユニット７２に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【００７８】
[0086]ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされるとき、イントラ予測処理ユニット７４は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化（すなわち、ＢまたはＰ）スライスとしてコーディングされるとき、動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルと他のシンタックス要素とに基づいて、現在ビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、ＤＰＢ８２に記憶された参照ピクチャに基づいて、デフォルトの構築技法を使用して、参照フレームリスト、すなわち、リスト０とリスト１とを構築し得る。
【００７９】
[0087]動き補償ユニット７２は、動きベクトルと他のシンタックス要素とをパースすることによって現在ビデオスライスのビデオブロックのための予測情報を決定し、その予測情報を使用して、復号されている現在ビデオブロックのための予測ブロックを生成する。たとえば、動き補償ユニット７２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラまたはインター予測）と、インター予測スライスタイプ（たとえば、ＢスライスまたはＰスライス）と、スライスの参照ピクチャリストのうちの１つまたは複数のための構成情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在ビデオスライス中のビデオブロックを復号するための他の情報と、を決定するために、受信されたシンタックス要素のいくつかを使用する。
【００８０】
[0088]動き補償ユニット７２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット７２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。この場合、動き補償ユニット７２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
【００８１】
[0089]逆量子化ユニット７６は、ビットストリーム中で与えられ、エントロピー復号ユニット７０によって復号された、量子化変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、ビデオスライス中のビデオブロックごとにビデオエンコーダ３０によって計算される量子化パラメータＱＰYの使用を含み得る。逆変換処理ユニット７８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【００８２】
[0090]動き補償ユニット７２が、動きベクトルと他のシンタックス要素とに基づいて現在ビデオブロックのための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換ユニット７８からの残差ブロックを動き補償ユニット７２によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器９０は、この加算演算を実行する１つまたは複数の構成要素を表す。所望される場合、ブロッキネスアーティファクトを除去するために、復号されたブロックをフィルタ処理するためにデブロッキングフィルタも適用され得る。ピクセル遷移を平滑化するために、または場合によってはビデオ品質を改善するために、他のループフィルタも（コーディングループ中またはコーディングループ後のいずれかで）使用され得る。所与のフレームまたはピクチャ中の復号されたビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶するＤＰＢ８２に記憶される。ＤＰＢ８２はまた、図１のディスプレイデバイス３２などのディスプレイデバイス上での後の表示のために、復号されたビデオを記憶する。
【００８３】
[0091]ＤＰＢ８２は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、埋込みダイナミックランダムアクセスメモリ（ｅＤＲＡＭ）、またはスタティックランダムアクセスメモリ（ＳＲＡＭ）など、データを記憶することが可能な任意のパーマネントまたは揮発性メモリなどのデータストレージデバイスであり得るか、またはそれに含まれ得る。ＤＰＢ８２は、本開示で説明する例示的なコード化ピクチャバッファおよび／または復号ピクチャバッファ挙動の任意の組合せに従って動作し得る。たとえば、ビデオデコーダ３０は、仮想リファレンスデコーダ（ＨＲＤ）に従って動作するように構成され得る。この場合、ビデオデコーダ３０は、ＨＲＤのバッファリングモデルに従ってＤＰＢ８２を定義するために使用される、ＣＰＢパラメータおよびＤＰＢパラメータを含む、ＨＲＤパラメータを復号し得る。
【００８４】
[0092]同様に、ＣＰＢ６８は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、埋込みダイナミックランダムアクセスメモリ（ｅＤＲＡＭ）、またはスタティックランダムアクセスメモリ（ＳＲＡＭ）など、データを記憶することが可能な任意のパーマネントまたは揮発性メモリなどのデータストレージデバイスであり得るか、またはそれに含まれ得る。ビデオデコーダ３０の一部を形成するものとして示されているが、いくつかの例では、ＣＰＢ６８は、ビデオデコーダ３０の外部のデバイス、ユニット、またはモジュールの一部を形成し得る。たとえば、ＣＰＢ６８は、ビデオデコーダ３０の外部のストリームスケジューラユニット、たとえば、配信スケジューラまたは仮想ストリームスケジューラ（ＨＳＳ）の一部を形成し得る。ビデオデコーダ３０がＨＲＤに従って動作するように構成される場合、ビデオデコーダ３０は、ＨＲＤのバッファリングモデルに従ってＣＰＢ６８を定義するために使用される、初期ＣＰＢ削除遅延およびオフセットのＣＰＢパラメータを含む、ＨＲＤパラメータを復号し得る。
【００８５】
[0093]本開示の技法によれば、ビデオデコーダ３０は、ビデオデータの復号中にＣＰＢ６８がオーバーフローしないことを保証するために、ＣＰＢパラメータのデフォルトセットまたは代替セットのいずれかをＣＰＢ６８に適用し得る。代替セットが選択されているべきであるときにデフォルトセットが使用される場合、ＨＲＤに従って動作するように構成されたビデオデコーダ３０に含まれるＣＰＢ６８が、オーバーフローすることがある。適切なＣＰＢパラメータの選択は主に、ＨＲＤを初期化するためにクリーンランダムアクセス（ＣＲＡ）ピクチャまたはブロークンリンクアクセス（ＢＬＡ）ピクチャなど、ランダムアクセスポイント（ＲＡＰ）ピクチャが使用されるときに問題になる。本技法は、したがって、ビデオコーディングにおけるＲＡＰピクチャの改善されたサポートを提供し得る。
【００８６】
[0094]ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含む複数のピクチャを表すビットストリームを受信し、また、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信する。メッセージは、ネットワークエンティティ２９、あるいはストリーミングサーバまたは中間ネットワーク要素中に含まれる処理手段などの別の外部手段から受信され得る。
【００８７】
[0095]ビデオデコーダ３０は、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを示すために定義された変数を設定する。ビデオコーディングデバイスは、次いで、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを選択する。ビデオデコーダ３０は、ビデオ復号中にＣＰＢ６８がオーバーフローしないことを保証するために、ＣＰＢパラメータの選択されたセットをＣＰＢ６８に適用する。場合によっては、ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定し得る。ビデオデコーダ３０は、シグナリングされた通りにピクチャのためのＮＡＬユニットタイプを設定し得るか、またはピクチャのための変数に基づいてＮＡＬユニットタイプを設定し得る。ビデオデコーダ３０は、次いで、ピクチャのためのＮＡＬユニットタイプと変数とに基づいて、所与のピクチャのためのＣＰＢパラメータのセットを選択し得る。
【００８８】
[0096]概して、本開示は、ＲＡＰピクチャのためのＨＲＤパラメータの選択の改善された方法を含み、ＣＲＡピクチャをＢＬＡピクチャとして処理する、ＲＡＰピクチャの改善されたサポートを提供するための技法について説明する。上記で説明したように、ビデオコーディング規格としては、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、およびそれのスケーラブルビデオコーディング（ＳＶＣ）拡張とマルチビュービデオコーディング（ＭＶＣ）拡張とを含む、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４がある。さらに、ＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ）とＩＳＯ／ＩＥＣモーションピクチャエキスパートグループ（ＭＰＥＧ：Motion Picture Experts Group）とのジョイントコラボレーションチームオンビデオコーディング（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって開発されている新しいビデオコーディング規格、すなわち、高効率ビデオコーディング（ＨＥＶＣ）がある。（以下でＨＥＶＣ  ＷＤ８と呼ぶ）ＨＥＶＣの最近のワーキングドラフト（ＷＤ）は、２０１２年９月２０日現在、http://phenix.int-evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-v8.zipから入手可能である、ドキュメントＪＣＴＶＣ−Ｊ１００３＿ｄ７、Ｂｒｏｓｓら、「High Efficiency Video Coding (HEVC) Text Specification Draft 8」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３およびＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のジョイントコラボレーションチームオンビデオコーディング（ＪＣＴ−ＶＣ）、第１０回会議：スウェーデン、ストックホルム、２０１２年７月１１〜２０日に記載されている。
【００８９】
[0097]ランダムアクセスは、ビットストリーム中の最初のコード化ピクチャではないコード化ピクチャから始まる、ビデオビットストリームの復号を指す。ビットストリームへのランダムアクセスは、たとえば、ユーザが、任意の時間にプログラムに同調するため、異なるチャネル間を切り替えるため、ビデオの特定の部分にジャンプするため、またはビットレート、フレームレート、空間解像度などのストリーム適応のために異なるビットストリームに切り替えるために、ブロードキャスティングおよびストリーミングなど、多くのビデオアプリケーションにおいて必要とされる。この特徴は、ランダムアクセスピクチャまたはランダムアクセスポイントを規則的な間隔で何回もビデオビットストリームに挿入することによって有効にされる。
【００９０】
[0098]ビットストリームスプライシングは、２つ以上のビットストリームまたはそれの部分の連結を指す。たとえば、場合によっては、スプライスされたビットストリームを生成するためにビットストリームのいずれか一方または両方にいくつかの変更を加えて、第１のビットストリームに第２のビットストリームが付加され得る。第２のビットストリーム中の第１のコード化ピクチャは、スプライシングポイントとも呼ばれる。したがって、スプライスされたビットストリーム中のスプライシングポイントの後のピクチャは、第２のビットストリームから生じたものであり、スプライスされたビットストリーム中のスプライシングポイントに先行するピクチャは、第１のビットストリームから生じたものである。
【００９１】
[0099]ビットストリームのスプライシングはビットストリームスプライサ（bitstream splicer）によって実行される。ビットストリームスプライサは、しばしば、軽量であり、エンコーダよりもはるかにインテリジェントではない。たとえば、ビットストリームスプライサは、エントロピー復号および符号化能力を装備し得ない。ビットストリーム切替えは適応ストリーミング環境において使用され得る。切り替えられたビットストリーム中のあるピクチャにおけるビットストリーム切替え動作は、事実上、ビットストリームスプライシング動作であり、ここにおいて、スプライシングポイントは、ビットストリーム切替えポイント、すなわち、切り替えられたビットストリームからの第１のピクチャである。
【００９２】
[0100]ＡＶＣまたはＨＥＶＣにおいて指定されている瞬時復号リフレッシュ（ＩＤＲ：instantaneous decoding refresh）ピクチャがランダムアクセスのために使用され得る。しかしながら、復号順序においてＩＤＲピクチャに後続するピクチャは、ＩＤＲピクチャより前に復号されたピクチャを参照として使用することができないので、ランダムアクセスのためにＩＤＲピクチャに依拠するビットストリームは、著しく低いコーディング効率を有することがある。コーディング効率を改善するために、復号順序においてＣＲＡピクチャに後続するが、出力順序においてＣＲＡピクチャに先行するピクチャが、ＣＲＡピクチャの前に復号されたピクチャを参照ピクチャとして使用することを可能にするために、クリーンランダムアクセス（ＣＲＡ）ピクチャの概念がＨＥＶＣに導入された。
【００９３】
[0101]復号順序においてＣＲＡピクチャに後続するが出力順序においてＣＲＡピクチャに先行するピクチャは、ＣＲＡピクチャに関連するピクチャ、またはＣＲＡピクチャのリーディングピクチャと呼ばれる。ＣＲＡピクチャのリーディングピクチャは、現在のＣＲＡピクチャの前のＩＤＲまたはＣＲＡピクチャから復号が始まる場合は正しく復号可能である。ＣＲＡピクチャのリーディングピクチャは、現在のＣＲＡピクチャからのランダムアクセスが行われるとき、非復号可能になり得る。リーディングピクチャは、したがって、一般に、ランダムアクセス復号中に破棄される。復号がどこから始まるかに応じて利用可能ではないことがある参照ピクチャからの誤り伝搬を防止するために、復号順序と出力順序の両方においてＣＲＡピクチャに後続するすべてのピクチャは、復号順序または出力順序のいずれかにおいて、リーディングピクチャを含む、ＣＲＡピクチャに先行するいかなるピクチャも参照ピクチャとして使用すべきではない。
【００９４】
[0102]ブロークンリンクアクセス（ＢＬＡ）ピクチャの概念は、ＣＲＡピクチャの導入の後にＨＥＶＣにさらに導入され、ＣＲＡピクチャの概念に基づく。ＢＬＡピクチャは、一般に、ＣＲＡピクチャの位置におけるビットストリームスプライシングから生じ、スプライスされたビットストリーム中で、スプライシングポイントＣＲＡピクチャはＢＬＡピクチャに変更される。ＩＤＲピクチャ、ＣＲＡピクチャおよびＢＬＡピクチャは、ランダムアクセスポイント（ＲＡＰ）ピクチャまたはイントラランダムアクセスポイント（ＩＲＡＰ）ピクチャと総称される。
【００９５】
[0103]ＢＬＡピクチャとＣＲＡピクチャとの間の主要な差異についての説明は以下の通りである。ＣＲＡピクチャの場合、関連するリーディングピクチャは、復号が復号順序においてＣＲＡピクチャの前のＲＡＰピクチャから開始する場合、正しく復号可能であり、ＣＲＡピクチャからランダムアクセスが行われるとき（すなわち、復号がＣＲＡピクチャから開始するとき、または言い換えると、ＣＲＡピクチャがビットストリーム中の第１のピクチャであるとき）、正しく復号可能でないことがある。ＢＬＡピクチャの場合、関連するリーディングピクチャは、すべての場合、復号が復号順序においてＢＬＡピクチャの前のＲＡＰピクチャから開始するときでも、非復号可能になり得る。
【００９６】
[0104]特定のＣＲＡまたはＢＬＡピクチャの場合、関連するリーディングピクチャのうちのいくつかは、ＣＲＡまたはＢＬＡピクチャがビットストリーム中の第１のピクチャであるときでも、正しく復号可能である。これらのリーディングピクチャは復号可能リーディングピクチャ（ＤＬＰ：decodable leading picture）と呼ばれ、他のリーディングピクチャは非復号可能リーディングピクチャ（ＮＬＰ：non-decodable leading picture）と呼ばれる。場合によっては、ＤＬＰは、代替的に、ランダムアクセス復号可能リーディング（ＲＡＤＬ：Random Access Decodable Leading）ピクチャと呼ばれることがある。ＮＬＰは、ＨＥＶＣ  ＷＤ８では廃棄タグ付き（ＴＦＤ）ピクチャと呼ばれる。他の場合には、ＮＬＰは、代替的に、ランダムアクセススキップリーディング（ＲＡＳＬ）ピクチャと呼ばれることがある。本開示では、「非復号可能リーディングピクチャ」、「ＴＦＤピクチャ」、および「ＲＡＳＬピクチャ」という用語は、互換的に使用され得る。
【００９７】
[0105]ＨＥＶＣ  ＷＤ８では、仮想リファレンスデコーダ（ＨＲＤ）はアネックスＣにおいて指定されている。ＨＲＤは、ビデオパラメータセット（ＶＰＳ）および／またはシーケンスパラメータセット（ＳＰＳ）、バッファリング期間補足エンハンスメント情報（ＳＥＩ）メッセージ、およびピクチャタイミングＳＥＩメッセージに含まれるｈｒｄ＿ｐａｒａｍｅｔｅｒｓ（  ）シンタックス構造中でビットストリーム中で与えられ得る、ＨＲＤパラメータに依拠する。バッファリング期間ＳＥＩメッセージは、主にＣＰＢパラメータ、すなわち、初期コード化ピクチャバッファ（ＣＰＢ）削除遅延と初期ＣＰＢ削除遅延オフセットとを含む。シンタックス要素ｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［  ］とｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［  ］とによってシグナリングされるデフォルトセット、およびシンタックス要素ｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［  ］とｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［  ］とによってシグナリングされる代替セットと呼ばれる、ＣＰＢパラメータの２つのセットが与えられ得る。
【００９８】
[0106]ｓｕｂ＿ｐｉｃ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが０に等しく、ｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しいとき、以下のことが当てはまる。ビデオデコーダ３０は、ＨＲＤが、ビットストリーム中に関連するＴＦＤピクチャを有しないＢＬＡピクチャを用いて初期化されるとき、ＣＰＢ６８を定義するためにＣＰＢパラメータの代替セットを使用する。関連する非復号可能リーディングピクチャを有しないＢＬＡピクチャは、復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＤＬＰを示すか、またはリーディングピクチャをもたないＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｎ＿ＬＰを示すｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有する。代わりにデフォルトセットが使用される場合、ＣＰＢはオーバーフローすることがある。ＨＲＤが、ＣＲＡピクチャまたは関連するＴＦＤピクチャを有するＢＬＡピクチャを用いて初期化されるとき、ビデオデコーダ３０は、ＣＰＢ６８を定義するためにＣＰＢパラメータのデフォルトセットを使用する。関連するＴＦＤピクチャを有するＢＬＡピクチャは、非復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＴＦＤを示すｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有する。これは、ＨＥＶＣ  ＷＤ８のサブクローズＣ．２．１中の以下のテキストに反映されている。
【００９９】
変数ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は以下のように設定される。
【０１００】
−  以下の条件のいずれかが真である場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１０１】
−  アクセスユニット０は、それのためのコード化ピクチャが、ＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡアクセスユニットであり、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
【０１０２】
−  ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しい。
【０１０３】
−  他の場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１０４】
上記のことからわかるように、所与のピクチャのために使用すべきＣＰＢパラメータのセットの選択は、ピクチャのｎａｌ＿ｕｎｉｔ＿ｔｙｐｅに基づき得る。
【０１０５】
[0107]ＨＥＶＣ  ＷＤ８はまた、ＢＬＡピクチャとしてのＣＲＡピクチャの処理についてサブクローズ８．１に以下のテキストを含む。
【０１０６】
現在ピクチャがＣＲＡピクチャであるとき、以下のことが当てはまる。
【０１０７】
−  この仕様において指定されていない何らかの外部手段が、変数ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇをある値に設定するために利用可能である場合、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇは、外部手段によって与えられた値に設定される。
【０１０８】
−  他の場合、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇの値は０に設定される。
【０１０９】
ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇが１に等しいとき、各コード化スライスＮＡＬユニットのための構文解析および復号プロセス中に、以下のことが当てはまる。
【０１１０】
−  ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値がＢＬＡ＿Ｗ＿ＴＦＤに設定される。
【０１１１】
−  ｎｏ＿ｏｕｔｐｕｔ＿ｏｆ＿ｐｒｉｏｒ＿ｐｉｃｓ＿ｆｌａｇの値が１に設定される。
【０１１２】
ＨＥＶＣ  ＷＤ８では、ＣＲＡピクチャは、それのコード化スライスのＮＡＬユニットヘッダ中にＣＲＡ＿ＮＵＴに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有し、ＣＲＡピクチャは関連するＴＦＤピクチャおよびＤＬＰピクチャを有することがある
[0108]以下の問題は、ＣＲＡピクチャと、ＢＬＡピクチャと、ＢＬＡピクチャとして処理されるＣＲＡピクチャとのためのＣＰＢパラメータの選択のための既存の方法に関連する。第１の問題は、ＣＲＡピクチャおよびＢＬＡピクチャのためのＣＰＢパラメータの選択に関連する。ＣＲＡピクチャは、関連するＴＦＤピクチャを有することがある。ＣＲＡピクチャがオリジナルのビットストリーム中で関連するＴＦＤピクチャを有するが、関連するＴＦＤピクチャが、ストリーミングサーバまたは中間ネットワーク要素によって廃棄されているとき、ＣＰＢパラメータの適切なセット、すなわち、代替セットの選択を可能にするために、ネットワークエンティティ２９または別の外部手段が、ビデオデコーダ３０にＣＲＡピクチャを送る前に、それをＢＬＡピクチャに変更しなければならない。しかしながら、ネットワークエンティティ２９は、これを行うことが可能でないことがある。そのような状況では、初期ＣＰＢ削除遅延およびオフセットの適切なセットの選択が成功し得ず、これにより、ＣＰＢ６８のオーバーフローが生じ得るか、またはＴＦＤピクチャの廃棄が実行され得ず、これにより、帯域幅の浪費またはより低いビデオ品質が生じるかのいずれかである。
【０１１３】
[0109]第２の問題は、ＢＬＡピクチャとしてのＣＲＡピクチャの処理に関連する。ＣＲＡピクチャは、関連するＴＦＤピクチャを有することがある。ＣＲＡピクチャがオリジナルのビットストリーム中で関連するＴＦＤピクチャを有するが、関連するＴＦＤピクチャは、ネットワークエンティティ２９、あるいはストリーミングサーバまたは中間ネットワーク要素中に含まれる処理手段など、別の外部手段によって廃棄されるとき、外部手段は、ＢＬＡピクチャとしてＣＲＡピクチャを処理することを示す。ＨＥＶＣ  ＷＤ８において指定されているように、ビデオデコーダ３０は、次いで、非復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＴＦＤを示すようにｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値を設定し、これにより、ＣＰＢパラメータのデフォルトセットの使用が生じ、したがってＣＰＢ６８がオーバーフローすることがある。
【０１１４】
[0110]本開示の技法は、上記で説明した問題を解消または回避することが可能な改善されたＲＡＰピクチャビヘイビアを提供する。本技法によれば、変数が定義され、変数の値は、ネットワークエンティティ２９、あるいはビデオコーディング仕様の範囲外のストリーミングサーバ、中間ネットワーク要素、または別のネットワークエンティティ中に含まれる処理手段など、別の外部手段によって設定され得る。一例では、変数は、ＣＰＢパラメータの代替セットが使用されるかどうか、およびＣＲＡピクチャがＢＬＡピクチャとして処理されるとき、どのＮＡＬユニットタイプが使用されるのかを指定し得る。別の例では、変数は、ＣＰＢパラメータのデフォルトセットが使用されるのか代替セットが使用されるのかがそこから導出され得る、特定のピクチャのために使用されるべきＮＡＬユニットタイプ値を指定し得る。
【０１１５】
[0111]以下のセクションでは、上述の技法についてより詳細に説明する。下線は、ＨＥＶＣ  ＷＤ８に対する追加を示し得、取り消し線は、ＨＥＶＣ  ＷＤ８に対する削除を示し得る。
【０１１６】
[0112]一例では、ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含む複数のピクチャを表すビットストリームを受信する。ビデオデコーダ３０はまた、ネットワークエンティティ２９から、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信する。ビデオデコーダ３０は、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを示すために定義された変数を設定する。ビデオデコーダ３０は、次いで、ピクチャのための変数に基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＣＰＢパラメータのセットを選択する。
【０１１７】
[0113]この例によれば、各ＢＬＡまたはＣＲＡピクチャのために変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇが定義され得る。この変数の値は、ネットワークエンティティ２９または何らかの他の外部手段によって０または１のいずれかに設定される。そのような外部手段が利用可能でない場合、ビデオデコーダ３０は変数の値を０に設定し得る。
【０１１８】
[0114]この場合、上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズ８．１中のテキストは以下と置き換えられ得る。
【０１１９】
現在ピクチャが、ＢＬＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡピクチャであるか、またはＣＲＡピクチャであるとき、以下のことが当てはまる。
−  この仕様において指定されていない何らかの外部手段が、変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇをある値に設定するために利用可能である場合、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇは、外部手段によって与えられた値に設定される。
−  他の場合、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値は０に設定される。
現在ピクチャがＣＲＡピクチャであるとき、以下のことが当てはまる。
【０１２０】
−  この仕様において指定されていない何らかの外部手段が、変数ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇをある値に設定するために利用可能である場合、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇは、外部手段によって与えられた値に設定される。
【０１２１】
−  他の場合、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇの値は０に設定される。
【０１２２】
現在ピクチャがＣＲＡピクチャであり、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇが１に等しいとき、各コード化スライスＮＡＬユニットのための構文解析および復号プロセス中に以下のことが当てはまり、ＣＲＡピクチャはＢＬＡピクチャと見なされ、ＣＲＡアクセスユニットはＢＬＡアクセスユニットと見なされる。
【０１２３】
−  ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇが０に等しい場合、ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値はＢＬＡ＿Ｗ＿ＴＦＤに設定される。他の場合、ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値はＢＬＡ＿Ｗ＿ＤＬＰに設定される。
【０１２４】
−  ｎｏ＿ｏｕｔｐｕｔ＿ｏｆ＿ｐｒｉｏｒ＿ｐｉｃｓ＿ｆｌａｇの値が１に設定される。
【０１２５】
さらに、上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズＣ．２．１中のテキストは以下と置き換えられ得る。
【０１２６】
変数ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は以下のように設定される。
【０１２７】
−  以下の条件のうちの１つが真である場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１２８】
−  アクセスユニット０は、それのためのコード化ピクチャが、ＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡアクセスユニットであり、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
【０１２９】
−  アクセスユニット０は、それのためのコード化ピクチャが、ＢＬＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡアクセスユニットであるか、またはＣＲＡアクセスユニットであり、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇが１に等しく、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
−  ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しい。
【０１３０】
−  他の場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１３１】
[0115]ネットワークエンティティ２９、またはＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を設定するように構成された別の外部手段は、以下のように動作し得る。ネットワークエンティティ２９は、ビデオデコーダ３０に、またはビデオデコーダ３０を含む受信機にメッセージを送り得る。メッセージは、特定のＢＬＡまたはＣＲＡピクチャについて、それは関連するＴＦＤピクチャを有したが、関連するＴＦＤピクチャは廃棄されており、したがって、ＣＰＢパラメータの代替セットが使用されるべきであることを示し得る。そのようなメッセージを受信すると、ビデオデコーダ３０は、特定のＢＬＡまたはＣＲＡピクチャのためのＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を１に設定し得る。特定のＢＬＡまたはＣＲＡがＴＦＤピクチャを有しなかったか、あるいは、それが、廃棄されなかったＴＦＤピクチャを有した場合、メッセージは送られる必要がないか、あるいは、特定のＢＬＡまたはＣＲＡピクチャのためのＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を０に設定するようにビデオデコーダ３０に命令するためのメッセージが送られる。
【０１３２】
[0116]場合によっては、ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定し得、ピクチャのためのＮＡＬユニットタイプと変数とに基づいて、所与のピクチャのためのＣＰＢパラメータのセットを選択し得る。さらなる例として、一般ＣＲＡピクチャ、たとえば、ＣＲＡ＿ＮＵＴを示すただ１つのＮＡＬユニットタイプを使用する代わりに、本開示の技法は、それぞれ、非復号可能リーディングピクチャをもつＣＲＡピクチャ、たとえば、ＣＲＡ＿Ｗ＿ＴＦＤ、復号可能リーディングピクチャをもつＣＲＡピクチャ、たとえば、ＣＲＡ＿Ｗ＿ＤＬＰ、およびリーディングピクチャをもたないＣＲＡピクチャ、たとえば、ＣＲＡ＿Ｎ＿ＬＰを示す３つの異なるＮＡＬユニットタイプの使用を可能にする。この場合、ＨＥＶＣ  ＷＤ８中の表７−１およびその表の下の注釈は、以下に示すように変更される。
【表１】
0006271558.tif 000002
【表２】
0006271558.tif 000003
【０１３３】
注３−  ＣＲＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＣＲＡピクチャは、ビットストリーム中に存在する関連するＴＦＤピクチャ、または関連するＤＬＰピクチャ、または両方を有し得る。ＣＲＡ＿Ｗ＿ＤＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＣＲＡピクチャは、ビットストリーム中に存在する関連するＴＦＤピクチャを有しないが、ビットストリーム中に関連するＤＬＰピクチャを有し得る。ＣＲＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＣＲＡピクチャは、ビットストリーム中に存在する関連するリーディングピクチャを有しない。
【０１３４】
注４−  ＢＬＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡピクチャは、ビットストリーム中に存在する関連するＴＦＤピクチャ、または関連するＤＬＰピクチャ、または両方を有し得る。ＢＬＡ＿Ｗ＿ＤＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡピクチャは、ビットストリーム中に存在する関連するＴＦＤピクチャを有しないが、ビットストリーム中に関連するＤＬＰピクチャを有し得る。ＢＬＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡピクチャは、ビットストリーム中に存在する関連するリーディングピクチャを有しない。
【０１３５】
注５−  ＩＤＲ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＩＤＲピクチャは、ビットストリーム中に存在する関連するリーディングピクチャを有しない。ＩＤＲ＿Ｗ＿ＤＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＩＤＲピクチャは、ビットストリーム中に存在する関連するＴＦＤピクチャを有しないが、ビットストリーム中に関連するＤＬＰピクチャを有し得る。
【０１３６】
[0117]さらに、上記で説明した第１の例と同様に、各ＢＬＡまたはＣＲＡピクチャのために変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇが定義される。この変数の値は、ネットワークエンティティ２９、または別の外部手段によって、０または１のいずれかに設定される。そのような外部手段が利用可能でない場合、ビデオデコーダ３０は変数の値を０に設定し得る。
【０１３７】
[0118]この場合、上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズ８．１中のテキストは以下と置き換えられ得る。
【０１３８】
現在ピクチャが、ＢＬＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡピクチャであるか、またはＣＲＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＣＲＡピクチャであるとき、以下のことが当てはまる。
−  この仕様において指定されていない何らかの外部手段が、変数ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇをある値に設定するために利用可能である場合、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇは、外部手段によって与えられた値に設定される。
−  他の場合、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値は０に設定される。
現在ピクチャがＣＲＡピクチャであるとき、以下のことが当てはまる。
【０１３９】
−  この仕様において指定されていない何らかの外部手段が、変数ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇをある値に設定するために利用可能である場合、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇは、外部手段によって与えられた値に設定される。
【０１４０】
−  他の場合、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇの値は０に設定される。
【０１４１】
現在ピクチャがＣＲＡピクチャであり、ＨａｎｄｌｅＣｒａＡｓＢｌａＦｌａｇが１に等しいとき、各コード化スライスＮＡＬユニットのための構文解析および復号プロセス中に以下のことが当てはまり、ＣＲＡピクチャはＢＬＡピクチャと見なされ、ＣＲＡアクセスユニットはＢＬＡアクセスユニットと見なされる。
【０１４２】
−  ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値がＣＲＡ＿Ｗ＿ＴＦＤに等しい場合、ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値はＢＬＡ＿Ｗ＿ＴＦＤに設定される。他の場合、ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値がＣＲＡ＿Ｗ＿ＤＬＰに等しい場合、ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値はＢＬＡ＿Ｗ＿ＤＬＰに設定される。他の場合、ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値はＢＬＡ＿Ｎ＿ＬＰに設定される。
【０１４３】
−  ｎｏ＿ｏｕｔｐｕｔ＿ｏｆ＿ｐｒｉｏｒ＿ｐｉｃｓ＿ｆｌａｇの値が１に設定される。
【０１４４】
さらに、上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズＣ．２．１中のテキストは以下と置き換えられ得る。
【０１４５】
変数ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は以下のように設定される。
【０１４６】
−  以下の条件のうちの１つが真である場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１４７】
−  アクセスユニット０は、それのためのコード化ピクチャが、ＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡアクセスユニットであり、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
【０１４８】
−  アクセスユニット０は、それのためのコード化ピクチャが、ＣＲＡ＿Ｗ＿ＤＬＰまたはＣＲＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＣＲＡアクセスユニットであり、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
−  アクセスユニット０は、それのためのコード化ピクチャが、ＢＬＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡアクセスユニットであるか、または、それのためのコード化ピクチャがＣＲＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＣＲＡアクセスユニットであり、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇが１に等しく、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
−  ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しい。
【０１４９】
−  他の場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１５０】
[0119]ネットワークエンティティ２９、またはＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を設定するように構成された別の外部手段は、以下のように動作し得る。ネットワークエンティティ２９は、ビデオデコーダ３０またはビデオデコーダ３０を含む受信機にメッセージを送り得る。メッセージは、特定のＢＬＡまたはＣＲＡピクチャについて、それは関連するＴＦＤピクチャを有したが、関連するＴＦＤピクチャは廃棄されており、したがって、ＣＰＢパラメータの代替セットが使用されるべきであることを示し得る。そのようなメッセージを受信すると、ビデオデコーダ３０は、特定のＢＬＡまたはＣＲＡピクチャのためのＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を１に設定し得る。特定のＢＬＡまたはＣＲＡはＴＦＤピクチャを有しなかったか、あるいは、それは、ＴＦＤピクチャを有したが、廃棄されない場合、メッセージは送られる必要がないか、あるいは、特定のＢＬＡまたはＣＲＡピクチャのためのＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇの値を０に設定するようにビデオデコーダ３０に命令するためのメッセージが送られる。
【０１５１】
[0120]別の例では、ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含む複数のピクチャを表すビットストリームを受信し、また、ネットワークエンティティ２９からＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのＮＡＬユニットタイプを示すメッセージを受信する。ビデオデコーダ３０は、受信されたメッセージに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＮＡＬユニットタイプを示すために定義された変数を設定する。ビデオデコーダ３０は、次いで、ＣＲＡピクチャまたはＢＬＡピクチャのうちの所与の１つのためのＮＡＬユニットタイプを設定し、ＮＡＬユニットタイプに基づいて、所与のピクチャのためのＣＰＢパラメータのセットを選択する。
【０１５２】
[0121]この例によれば、各ＣＲＡまたはＢＬＡピクチャのために変数ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅが定義され得る。この変数の値は、ネットワークエンティティ２９または何らかの他の外部手段によって設定される。そのような外部手段が利用可能でない場合、ビデオデコーダ３０は、変数の値をＣＲＡまたはＢＬＡピクチャのｎａｌ＿ｕｎｉｔ＿ｔｙｐｅに設定し得る。いくつかの例では、この変数のための可能な値は、ＣＲＡ＿ＮＵＴ、ＢＬＡ＿Ｗ＿ＴＦＤ、ＢＬＡ＿Ｗ＿ＤＬＰおよびＢＬＡ＿Ｎ＿ＬＰである。他の例では、この変数の可能な値は、一般ＣＲＡピクチャ、非復号可能リーディングピクチャをもつＢＬＡピクチャ、復号可能リーディングピクチャをもつＢＬＡピクチャ、およびリーディングピクチャをもたないＢＬＡピクチャを示すように構成された他のｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを含み得る。
【０１５３】
[0122]この場合、上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズ８．１中のテキストは以下と置き換えられ得る。
【０１５４】
現在ピクチャがＢＬＡまたはＣＲＡピクチャであるとき、以下のことが当てはまる。
【０１５５】
−  この仕様において指定されていない何らかの外部手段が、変数ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをある値に設定するために利用可能である場合、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅは、外部手段によって与えられた値に設定される。ＢＬＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＢＬＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＢＬＡ＿Ｎ＿ＬＰにのみ設定し得、ＢＬＡ＿Ｗ＿ＤＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＢＬＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰのいずれかにのみ設定し得、ＢＬＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＢＬＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＢＬＡ＿Ｗ＿ＴＦＤ、ＢＬＡ＿Ｗ＿ＤＬＰおよびＢＬＡ＿Ｎ＿ＬＰのうちの１つにのみ設定し得、ＢＬＡピクチャの場合、外部手段は、ＣＲＡピクチャまたは任意の他のピクチャタイプを示すために、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅを決して設定しないものとし、ＣＲＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅを、任意の他の値ではない、ＣＲＡ＿ＮＵＴ、ＢＬＡ＿Ｗ＿ＴＦＤ、ＢＬＡ＿Ｗ＿ＤＬＰおよびＢＬＡ＿Ｎ＿ＬＰのうちの１つに設定し得る。
【０１５６】
−  他の場合、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅの値は、現在ピクチャのｎａｌ＿ｕｎｉｔ＿ｔｙｐｅに設定される。
【０１５７】
現在ピクチャがＣＲＡまたはＢＬＡピクチャであるとき、各コード化スライスＮＡＬユニットのための構文解析および復号プロセス中に以下のことが当てはまる。
【０１５８】
−  ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値はＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅに設定され、現在ピクチャまたはアクセスユニットは、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値に従って、ＣＲＡまたはＢＬＡピクチャまたはアクセスユニットと見なされる。
【０１５９】
−  ｎｏ＿ｏｕｔｐｕｔ＿ｏｆ＿ｐｒｉｏｒ＿ｐｉｃｓ＿ｆｌａｇの値は、現在ピクチャが、上記のステップの前にＣＲＡピクチャであって、ＢＬＡピクチャになっている場合、１に設定される。
【０１６０】
上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズＣ．２．１中のテキストは、変更される必要がない。
【０１６１】
[0123]さらなる例として、一般ＣＲＡピクチャ、たとえば、ＣＲＡ＿ＮＵＴを示すただ１つのＮＡＬユニットタイプを使用する代わりに、本開示の技法は、それぞれ、非復号可能リーディングピクチャをもつＣＲＡピクチャ、たとえば、ＣＲＡ＿Ｗ＿ＴＦＤ、復号可能リーディングピクチャをもつＣＲＡピクチャ、たとえば、ＣＲＡ＿Ｗ＿ＤＬＰ、およびリーディングピクチャをもたないＣＲＡピクチャ、たとえば、ＣＲＡ＿Ｎ＿ＬＰを示す３つの異なるＮＡＬユニットタイプの使用を可能にする。この場合、ＨＥＶＣ  ＷＤ８中の表７−１および表の下の注釈は、上記で説明したように変更される。
【０１６２】
[0124]さらに、上記で説明した第２の例と同様に、各ＣＲＡまたはＢＬＡピクチャのために変数ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅが定義される。この変数の値は、ネットワークエンティティ２９または別の外部手段によって設定される。そのような外部手段が利用可能でない場合、ビデオデコーダ３０は、変数の値をＣＲＡまたはＢＬＡピクチャのｎａｌ＿ｕｎｉｔ＿ｔｙｐｅに設定し得る。いくつかの例では、この変数のための可能な値は、ＣＲＡ＿Ｗ＿ＴＦＤ、ＣＲＡ＿Ｗ＿ＤＬＰ、ＣＲＡ＿Ｎ＿ＬＰ、ＢＬＡ＿Ｗ＿ＴＦＤ、ＢＬＡ＿Ｗ＿ＤＬＰおよびＢＬＡ＿Ｎ＿ＬＰである。他の例では、この変数の可能な値は、非復号可能リーディングピクチャをもつＣＲＡピクチャ、復号可能リーディングピクチャをもつＣＲＡピクチャ、リーディングピクチャをもたないＣＲＡピクチャ、非復号可能リーディングピクチャをもつＢＬＡピクチャ、復号可能リーディングピクチャをもつＢＬＡピクチャ、およびリーディングピクチャをもたないＢＬＡピクチャを示すように構成された他のｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを含み得る。
【０１６３】
[0125]この場合、上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズ８．１中のテキストは以下と置き換えられ得る。
【０１６４】
現在ピクチャがＢＬＡピクチャまたはＣＲＡピクチャであるとき、以下のことが当てはまる。
【０１６５】
−  この仕様において指定されていない何らかの外部手段が、変数ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをある値に設定するために利用可能である場合、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅは、外部手段によって与えられた値に設定される。
【０１６６】
ＢＬＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＢＬＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＢＬＡ＿Ｎ＿ＬＰにのみ設定し得、ＢＬＡ＿Ｗ＿ＤＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＢＬＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰのいずれかにのみ設定し得、ＢＬＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＢＬＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＢＬＡ＿Ｗ＿ＴＦＤ、ＢＬＡ＿Ｗ＿ＤＬＰおよびＢＬＡ＿Ｎ＿ＬＰのうちの１つにのみ設定し得、ＢＬＡピクチャの場合、外部手段は、ＣＲＡピクチャまたは任意の他のピクチャタイプを示すために、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅを決して設定しないものとする。
【０１６７】
ＣＲＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＣＲＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＣＲＡ＿Ｎ＿ＬＰまたはＢＬＡ＿Ｎ＿ＬＰにのみ設定し得、ＣＲＡ＿Ｗ＿ＤＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＣＲＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＣＲＡ＿Ｗ＿ＤＬＰ、ＣＲＡ＿Ｎ＿ＬＰ、ＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰにのみ設定し得、ＣＲＡ＿Ｗ＿ＴＦＤに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅをもつＣＲＡピクチャの場合、外部手段は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅをＣＲＡ＿Ｗ＿ＴＦＤ、ＣＲＡ＿Ｗ＿ＤＬＰ、ＣＲＡ＿Ｎ＿ＬＰ、ＢＬＡ＿Ｗ＿ＴＦＤ、ＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰにのみ設定し得る。
【０１６８】
−  他の場合、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅの値は、現在ピクチャのｎａｌ＿ｕｎｉｔ＿ｔｙｐｅに設定される。
【０１６９】
現在ピクチャがＣＲＡまたはＢＬＡピクチャであるとき、各コード化スライスＮＡＬユニットのための構文解析および復号プロセス中に以下のことが当てはまる。
【０１７０】
−  ｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値はＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅに設定され、現在ピクチャまたはアクセスユニットは、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅの値に従って、ＣＲＡまたはＢＬＡピクチャまたはアクセスユニットと見なされる。
【０１７１】
−  ｎｏ＿ｏｕｔｐｕｔ＿ｏｆ＿ｐｒｉｏｒ＿ｐｉｃｓ＿ｆｌａｇの値は、現在ピクチャが、上記のステップの前にＣＲＡピクチャであって、ＢＬＡピクチャになっている場合、１に設定される。
【０１７２】
さらに、上記で引用されたＨＥＶＣ  ＷＤ８のサブクローズＣ．２．１中のテキストは以下と置き換えられ得る。
【０１７３】
変数ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は以下のように設定される。
【０１７４】
−  以下の条件のうちの１つが真である場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ａｌｔ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１７５】
−  アクセスユニット０は、それのためのコード化ピクチャが、ＢＬＡ＿Ｗ＿ＤＬＰまたはＢＬＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＢＬＡアクセスユニットであり、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
【０１７６】
−  アクセスユニット０は、それのためのコード化ピクチャが、ＣＲＡ＿Ｗ＿ＤＬＰまたはＣＲＡ＿Ｎ＿ＬＰに等しいｎａｌ＿ｕｎｉｔ＿ｔｙｐｅを有するＣＲＡアクセスユニットであり、関連するバッファリング期間ＳＥＩメッセージのｒａｐ＿ｃｐｂ＿ｐａｒａｍｓ＿ｐｒｅｓｅｎｔ＿ｆｌａｇの値が１に等しい。
−  ＳｕｂＰｉｃＣｐｂＦｌａｇが１に等しい。
【０１７７】
−  他の場合、ＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびＩｎｉｔＣｐｂＲｅｍｏｖａｌＤｅｌａｙＯｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］は、それぞれ、関連するバッファリング期間ＳＥＩメッセージの対応するｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ［ＳｃｈｅｄＳｅｌＩｄｘ］およびｉｎｉｔｉａｌ＿ｃｐｂ＿ｒｅｍｏｖａｌ＿ｄｅｌａｙ＿ｏｆｆｓｅｔ［ＳｃｈｅｄＳｅｌＩｄｘ］の値に設定される。
【０１７８】
[0126]図４は、仮想リファレンスデコーダ（ＨＲＤ）に従って動作するように構成された例示的な宛先デバイス１００を示すブロック図である。この例では、宛先デバイス１００は、入力インターフェース１０２と、ストリームスケジューラ１０４と、コード化ピクチャバッファ（ＣＰＢ）１０６と、ビデオデコーダ１０８と、復号ピクチャバッファ（ＤＰＢ）１１０と、レンダリングユニット１１２と、出力インターフェース１１４とを含む。宛先デバイス１００は、図１からの宛先デバイス１４に実質的に対応し得る。入力インターフェース１０２は、ビデオデータのコード化ビットストリームを受信することが可能な任意の入力インターフェースを備え得、図１からの入力インターフェース２８に実質的に対応し得る。たとえば、入力インターフェース１０２は、受信機、モデム、ワイヤードまたはワイヤレスインターフェースなどのネットワークインターフェース、メモリまたはメモリインターフェース、光ドライブインターフェースまたは磁気媒体インターフェースなど、ディスクからデータを読み取るためのドライブ、または他のインターフェース構成要素を備え得る。
【０１７９】
[0127]入力インターフェース１０２は、ビデオデータを含むコード化ビットストリームを受信し、ストリームスケジューラ１０４にビットストリームを与え得る。ストリームスケジューラ１０４は、ビットストリームからアクセスユニットおよび／または復号ユニットなどのビデオデータのユニットを抽出し、ＣＰＢ１０６に抽出されたユニットを記憶する。このようにして、ストリームスケジューラ１０４は、仮想ストリームスケジューラ（ＨＳＳ）の例示的な実装形態を表す。ＣＰＢ１０６は、図４に示されているように、ＣＰＢ１０６がビデオデコーダ１０８とは別個であることを除いて、図３からのＣＰＢ６８に実質的に一致し得る。ＣＰＢ１０６は、異なる例では、ビデオデコーダ１０８とは別個であることも、またはそれの一部として統合されることもある。
【０１８０】
[0128]ビデオデコーダ１０８はＤＰＢ１１０を含む。ビデオデコーダ１０８は、図１および図３からのビデオデコーダ３０に実質的に一致し得る。ＤＰＢ１１０は、図３からのＤＰＢ８２に実質的に一致し得る。したがって、ビデオデコーダ１０８は、ＣＰＢ１０６の復号ユニットを復号し得る。その上、ビデオデコーダ１０８は、復号されたピクチャをＤＰＢ１１０から出力し得る。ビデオデコーダ１０８は、出力されたピクチャをレンダリングユニット１１２にパスし得る。レンダリングユニット１１２は、ピクチャをクロップし、次いで、クロップされたピクチャを出力インターフェース１１４にパスし得る。出力インターフェース１１４は、図１からのディスプレイデバイス３２に実質的に一致し得るディスプレイデバイスに、クロップされたピクチャを与え得る。
【０１８１】
[0129]ディスプレイデバイスは、宛先デバイス１００の一部を形成し得、または宛先デバイス１００に通信可能に結合され得る。たとえば、ディスプレイデバイスは、宛先デバイス１００と統合されたスクリーン、タッチスクリーン、プロジェクタ、または他のディスプレイユニットを備え得、または宛先デバイス１００に通信可能に結合されたテレビジョン、モニタ、プロジェクタ、タッチスクリーン、または他のデバイスなどの別個のディスプレイを備え得る。通信結合は、同軸ケーブル、コンポジットビデオケーブル、コンポーネントビデオケーブル、高解像度マルチメディアインターフェース（ＨＤＭＩ（登録商標））ケーブル、無線周波ブロードキャスト、あるいは他のワイヤードまたはワイヤレス結合などによる、ワイヤードまたはワイヤレス結合を備え得る。
【０１８２】
[0130]図５は、ビットストリーム中の特定のランダムアクセスポイント（ＲＡＰ）ピクチャのためのＣＰＢパラメータのセットを示す変数に基づいて、コード化ピクチャバッファ（ＣＰＢ）パラメータのセットを選択する例示的な動作を示すフローチャートである。図示された動作について、ＣＰＢ６８を含む図３からのビデオデコーダ３０に関して説明する。他の例では、同様の動作が、ＣＰＢ６６を含む図２からのビデオエンコーダ２０、ＣＰＢ１０６とビデオデコーダ１０８とを含む図４からの宛先デバイス１００、または、ＨＲＤ動作に従って動作するように構成されたＣＰＢをもつビデオエンコーダまたはビデオデコーダを含む他のデバイスによって実行され得る。
【０１８３】
[0131]ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含むビットストリームを受信する（１２０）。ビットストリームとともに、ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの特定の１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージをも受信する（１２２）。より詳細には、ビデオデコーダ３０は、特定のピクチャに関連するＴＦＤピクチャを廃棄することが可能であり、ＴＦＤピクチャが廃棄されたときにビデオデコーダ３０に通知することも可能である、ネットワークエンティティ２９などの外部手段からメッセージを受信し得る。
【０１８４】
[0132]たとえば、特定のピクチャが、ビデオエンコーダ２０から出力されたオリジナルのビットストリーム中でＴＦＤピクチャを有し、ＴＦＤピクチャが外部手段によって廃棄されているとき、ビデオデコーダ３０によって受信されたメッセージは、特定のピクチャのためのＣＰＢパラメータの代替セットを使用することを示す。別の例として、特定のピクチャが、ビデオエンコーダ２０から出力されたオリジナルのビットストリーム中でＴＦＤピクチャを有しなかったか、または、特定のピクチャがオリジナルのビットストリーム中でＴＦＤピクチャを有し、ＴＦＤピクチャが外部手段によって廃棄されていないとき、ビデオデコーダ３０によって受信されたメッセージは、特定のピクチャのためのＣＰＢパラメータの代替セットを使用することを示さない。この場合、ピクチャのＮＡＬユニットタイプに基づいて、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのためにＣＰＢパラトメーのデフォルトセットまたは代替セットのいずれかが使用され得る。
【０１８５】
[0133]ビデオデコーダ３０は、受信されたメッセージに基づいて、特定のピクチャのためのＣＰＢパラメータのセットを示すために定義された変数、たとえば、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇを設定する（１２４）。たとえば、ビデオデコーダ３０は、受信されたメッセージが特定のピクチャのためのＣＰＢパラメータの代替セットを示すとき、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇを１に等しく設定し得る。逆に、ビデオデコーダ３０は、受信されたメッセージが特定のピクチャのためのＣＰＢパラメータの代替セットを明示的に示さないとき、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇを０に等しく設定し得る。場合によっては、ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのメッセージを受信し得ない。ビデオデコーダ３０は、次いで、ＵｓｅＡｌｔＣｐｂＰａｒａｍｓＦｌａｇを０に等しく設定し得る。
【０１８６】
[0134]ビデオデコーダ３０は、次いで、特定のピクチャのためのＮＡＬユニットタイプを設定する（１２６）。場合によっては、ビデオデコーダ３０は、ビットストリーム中でシグナリングされた通りに特定のピクチャのためのＮＡＬユニットタイプを設定し得る。他の場合には、ビデオデコーダ３０は、ピクチャのための変数に少なくとも部分的に基づいて、特定のピクチャのためのＮＡＬユニットタイプを設定し得る。ＮＡＬユニットタイプ選択動作について、図６に関して以下でより詳細に説明する。ビデオデコーダ３０は、特定のピクチャのためのＮＡＬユニットタイプと変数とに基づいて、特定のピクチャのためのＣＰＢパラメータのデフォルトセットまたは代替セットを選択する（１２８）。詳細には、ビデオデコーダ３０は、変数がＣＰＢパラメータの代替セットを示さないとき、１つまたは複数のＮＡＬユニットタイプのためのＣＰＢパラメータのデフォルトセットを選択し、変数が１つまたは複数の異なるＮＡＬユニットタイプのためとのＣＰＢパラメータの代替セットを示すとき、１つまたは複数のＮＡＬユニットタイプのためのＣＰＢパラメータの代替セットを選択する。ＣＰＢパラメータセット選択動作について、図７に関して以下でより詳細に説明する。
【０１８７】
[0135]図６は、ピクチャのためのＣＰＢパラメータのセットを示す変数に基づいて、特定のＲＡＰピクチャのためのネットワークレイヤアブストラクション（ＮＡＬ）ユニットタイプを設定する例示的な動作を示すフローチャートである。図示された動作について、ＣＰＢ６８を含む図３からのビデオデコーダ３０に関して説明する。他の例では、同様の動作が、ＣＰＢ６６を含む図２からのビデオエンコーダ２０、ＣＰＢ１０６とビデオデコーダ１０８とを含む図４からの宛先デバイス１００、または、ＨＲＤ動作に従って動作するように構成されたＣＰＢをもつビデオエンコーダまたはビデオデコーダを含む他のデバイスによって実行され得る。
【０１８８】
[0136]ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含むビットストリームを受信する（１５０）。ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの特定の１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信する（１５２）。ビデオデコーダ３０は、受信されたメッセージに基づいて、特定のピクチャのためのＣＰＢパラメータのセットを示すために定義された変数を設定する（１５４）。
【０１８９】
[0137]特定のピクチャがＢＬＡピクチャであるとき（１５６のＮＯブランチ）、ビデオデコーダ３０は、特定のＢＬＡピクチャのためのＮＡＬユニットタイプをビットストリーム中でシグナリングされた通りに設定する（１５８）。特定のピクチャがＣＲＡピクチャであり（１５６のＹＥＳブランチ）、ＣＲＡピクチャがＢＬＡピクチャとして処理されないとき（１６０のＮＯブランチ）、ビデオデコーダ３０はまた、特定のＣＲＡピクチャのためのＮＡＬユニットタイプをビットストリーム中でシグナリングされた通りに設定する（１５８）。
【０１９０】
[0138]従来、ＣＲＡピクチャがＢＬＡピクチャとして処理されるとき、ＣＲＡピクチャのためのＮＡＬユニットタイプは、ピクチャのためのＣＰＢパラメータのデフォルトセットの選択を生じる、非復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＴＦＤを示すように設定される。場合によっては、ピクチャは関連するＴＦＤピクチャを有し得ず、ＣＰＢパラメータのデフォルトセットの使用はＣＰＢのオーバーフローが生じることがある。本開示の技法によれば、特定のピクチャがＣＲＡピクチャであり（１５６のＹＥＳブランチ）、ＣＲＡピクチャがＢＬＡピクチャとして処理されるとき（１６０のＹＥＳブランチ）、ビデオデコーダ３０は、特定のピクチャのための変数に基づいて、特定のＣＲＡピクチャのためのＮＡＬユニットタイプを設定する。
【０１９１】
[0139]たとえば、変数がＣＰＢパラメータの代替セットを明示的に示さないとき（１６２のＮＯブランチ）、ビデオデコーダ３０は、特定のピクチャのためのＮＡＬユニットタイプを、特定のピクチャが関連するＴＦＤピクチャを有することを示す、非復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＴＦＤを示すように設定する（１６４）。この場合、ＣＰＢパラメータのデフォルトセットが、特定のピクチャのために適切に選択されることになる。変数がＣＰＢパラメータの代替セットを示すとき（１６２のＹＥＳブランチ）、ビデオデコーダ３０は、特定のピクチャのためのＮＡＬユニットタイプを、特定のピクチャが関連するＴＦＤピクチャを有さないことを示す、復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＤＬＰを示すように設定する（１６６）。この場合、ＣＰＢパラメータの代替セットが、特定のピクチャのために適切に選択されることになる。このようにして、本技法は、不適切なＣＰＢパラメータの使用によりビデオデコーダのＣＰＢがオーバーフローしないことを保証する。
【０１９２】
[0140]図７は、ピクチャのためのＮＡＬユニットタイプと、ピクチャのためのＣＰＢパラメータのセットを示す変数とに基づいて、特定のＲＡＰピクチャのためのＣＰＢパラメータのセットを選択する例示的な動作を示すフローチャートである。図示された動作について、ＣＰＢ６８を含む図３からのビデオデコーダ３０に関して説明する。他の例では、同様の動作が、ＣＰＢ６６を含む図２からのビデオエンコーダ２０、ＣＰＢ１０６とビデオデコーダ１０８とを含む図４からの宛先デバイス１００、または、ＨＲＤ動作に従って動作するように構成されたＣＰＢをもつビデオエンコーダまたはビデオデコーダを含む他のデバイスによって実行され得る。
【０１９３】
[0141]ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含むビットストリームを受信する（１７０）。ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの特定の１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信する（１７２）。ビデオデコーダ３０は、受信されたメッセージに基づいて、特定のピクチャのためのＣＰＢパラメータのセットを示すために定義された変数を設定する（１７４）。ビデオデコーダ３０は、次いで、特定のピクチャのためのＮＡＬユニットタイプを設定する（１７６）。図６に関して上記で説明したように、ビデオデコーダ３０は、ビットストリーム中でシグナリングされた通りに特定のピクチャのためのＮＡＬユニットタイプを設定し得、またはピクチャのための変数に基づいて特定のピクチャのためのＮＡＬユニットタイプを設定し得る。
【０１９４】
[0142]特定のピクチャが、復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＤＬＰを示すＮＡＬユニットタイプ、または、特定のピクチャが関連するＴＦＤピクチャを有さないことを示す、リーディングピクチャをもたないＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｎ＿ＬＰを示すＮＡＬユニットタイプを有するＢＬＡピクチャであるとき（１７８のＹＥＳブランチ）、ビデオデコーダ３０は、ＮＡＬユニットタイプに基づいて特定のピクチャのためのＣＰＢパラメータの代替セットを選択する（１８０）。従来、ＣＰＢパラメータのデフォルトセットは、関連するＴＦＤピクチャをもつ任意のＣＲＡピクチャまたはＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＴＦＤのために使用される。場合によっては、しかしながら、オリジナルのビットストリーム中で特定のピクチャに関連するＴＦＤピクチャは、ビットストリームがビデオデコーダに達する前に廃棄され得る。ビデオデコーダは、次いで、ピクチャが関連するＴＦＤピクチャをもはや有さないときでさえ、ＮＡＬユニットタイプに基づいてデフォルトＣＰＢパラメータを使用し、これによりＣＰＢのオーバーフローが生じることがある。
【０１９５】
[0143]本開示の技法によれば、特定のピクチャが、ＣＲＡピクチャであるか、または、特定のピクチャが関連するＴＦＤピクチャ有することを示す、非復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＴＦＤを示すＮＡＬユニットタイプを有するＢＬＡピクチャであるとき（１８２のＹＥＳブランチ）、ビデオデコーダ３０は、特定のピクチャのための変数に基づいて、特定のピクチャのために使用すべきＣＰＢパラメータのセットを選択する。たとえば、変数がＣＰＢパラメータの代替セットを明示的に示さないとき（１８４のＮＯブランチ）、ビデオデコーダ３０は、変数に基づいて特定のピクチャのためのＣＰＢパラメータのデフォルトセットを選択する（１８６）。変数がＣＰＢパラメータの代替セットを示すとき（１８４のＹＥＳブランチ）、ビデオデコーダ３０は、変数に基づいて特定のピクチャのためのＣＰＢパラメータの代替セットを選択する（１８８）。このようにして、本技法は、不適切なＣＰＢパラメータの使用によりビデオデコーダのＣＰＢがオーバーフローしないことを保証する。
【０１９６】
[0144]図８は、ビットストリーム中の特定のＲＡＰピクチャのためのネットワークレイヤアブストラクション（ＮＡＬ）ユニットタイプを示すために定義された変数に基づいて、ＣＰＢパラメータのセットを選択する例示的な動作を示すフローチャートである。図示された動作について、ＣＰＢ６８を含む図３からのビデオデコーダ３０に関して説明する。他の例では、同様の動作が、ＣＰＢ６６を含む図２からのビデオエンコーダ２０、ＣＰＢ１０６とビデオデコーダ１０８とを含む図４からの宛先デバイス１００、または、ＨＲＤ動作に従って動作するように構成されたＣＰＢをもつビデオエンコーダまたはビデオデコーダを含む他のデバイスによって実行され得る。
【０１９７】
[0145]ビデオデコーダ３０は、１つまたは複数のＣＲＡピクチャまたはＢＬＡピクチャを含むビットストリームを受信する（１９０）。ビットストリームとともに、ビデオデコーダ３０は、ＣＲＡまたはＢＬＡピクチャのうちの特定の１つのためのＮＡＬユニットタイプを示すメッセージをも受信する（１９２）。より詳細には、ビデオデコーダ３０は、特定のピクチャに関連するＴＦＤピクチャを廃棄することが可能であり、ＴＦＤピクチャが廃棄されたときにビデオデコーダ３０に通知することも可能である、ネットワークエンティティ２９などの外部手段からメッセージを受信し得る。
【０１９８】
[0146]たとえば、特定のピクチャが、ビデオエンコーダ２０から出力されたオリジナルのビットストリーム中でＴＦＤピクチャを有し、当該ＴＦＤピクチャが外部手段によって廃棄されているとき、ビデオデコーダ３０によって受信されたメッセージは、当該特定のピクチャのために、復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＤＬＰ、またはリーディングピクチャをもたないＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｎ＿ＬＰを示すＮＡＬユニットタイプを示し得る。別の例として、特定のピクチャがオリジナルのビットストリーム中でＴＦＤピクチャを有し、ＴＦＤピクチャが外部手段によって廃棄されていないとき、ビデオデコーダ３０によって受信されたメッセージは、ＣＲＡピクチャまたはＢＬＡピクチャのうちの１つのために、非復号可能リーディングピクチャをもつＢＬＡピクチャ、たとえば、ＢＬＡ＿Ｗ＿ＴＦＤを示すＮＡＬユニットタイプを示し得る。
【０１９９】
[0147]ビデオデコーダ３０は、受信されたメッセージに基づいて、特定のピクチャのためのＮＡＬユニットタイプを示すために定義された変数、たとえば、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅを設定する（１９４）。たとえば、ビデオデコーダ３０は、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅを、特定のピクチャのための受信されたメッセージによって示されたＮＡＬユニットタイプに等しく設定し得る。場合によっては、ビデオデコーダ３０は、ＣＲＡピクチャまたはＢＬＡピクチャのうちの少なくとも１つのためのメッセージを受信し得ない。ビデオデコーダ３０は、次いで、ＵｓｅＴｈｉｓＮａｌＵｎｉｔＴｙｐｅを、ビットストリーム中で特定のピクチャのためにシグナリングされたＮＡＬユニットタイプに等しく設定し得る。ビデオデコーダ３０は、変数に基づいて特定のピクチャのためのＮＡＬユニットタイプを設定する（１９６）。ビデオデコーダ３０は、次いで、特定のピクチャのためのＮＡＬユニットタイプに基づいて、特定のピクチャのためのＣＰＢパラメータのデフォルトセットまたは代替セットを選択する（１９８）。
【０２００】
[0148]図９は、ネットワーク２００の一部を形成するデバイスの例示的なセットを示すブロック図である。この例では、ネットワーク２００は、ルーティングデバイス２０４Ａ、２０４Ｂ（ルーティングデバイス２０４）と、トランスコーディングデバイス２０６とを含む。ルーティングデバイス２０４およびトランスコーディングデバイス２０６は、ネットワーク２００の一部を形成し得る少数のデバイスを表すことが意図される。スイッチ、ハブ、ゲートウェイ、ファイアウォール、ブリッジ、および他のそのようなデバイスなどの他のネットワークデバイスも、ネットワーク２００内に含まれ得る。その上、サーバデバイス２０２とクライアントデバイス２０８との間にネットワーク経路に沿って追加のネットワークデバイスが与えられ得る。いくつかの例では、サーバデバイス２０２は図１のソースデバイス１２に対応し得るが、クライアントデバイス２０８は図１の宛先デバイス１４に対応し得る。
【０２０１】
[0149]概して、ルーティングデバイス２０４は、ネットワーク２００を介してネットワークデータを交換するための１つまたは複数のルーティングプロトコルを実装する。いくつかの例では、ルーティングデバイス２０４は、プロキシまたはキャッシュ動作を実行するように構成され得る。したがって、いくつかの例では、ルーティングデバイス２０４はプロキシデバイスと呼ばれることがある。概して、ルーティングデバイス２０４は、ネットワーク２００を介したルートを発見するためにルーティングプロトコルを実行する。そのようなルーティングプロトコルを実行することによって、ルーティングデバイス２０４Ｂは、それ自体からルーティングデバイス２０４Ａを介してサーバデバイス２０２に至るネットワークルートを発見し得る。
【０２０２】
[0150]本開示の技法は、ルーティングデバイス２０４およびトランスコーディングデバイス２０６などのネットワークデバイスによって実装され得るが、クライアントデバイス２０８によっても実装され得る。このように、ルーティングデバイス２０４、トランスコーディングデバイス２０６、およびクライアントデバイス２０８は、本開示の請求の範囲部分に記載されている技法を含む、本開示の技法を実行するように構成されたデバイスの例を表す。その上、図１のデバイス、ならびに図２に示されたエンコーダおよび図３に示されたデコーダも、本開示の請求の範囲部分に記載されている技法を含む、本開示の技法を実行するように構成され得る例示的なデバイスである。
【０２０３】
[0151]例によっては、本明細書で説明した技法のうちいずれかの、いくつかの作用またはイベントは、異なるシーケンスで実行され得、追加、マージ、または完全に除外され得る（たとえば、すべての説明した作用またはイベントが、本技法の実施のために必要であるとは限らない）ことを認識されたい。さらに、いくつかの例では、行為またはイベントは、連続してではなくむしろ、同時に、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して実行され得る。
【０２０４】
[0152]１つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０２０５】
[0153]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびＢｌｕ−ｒａｙディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０２０６】
[0154]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法の実装に好適な他の構造のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素中に十分に実装され得る。
【０２０７】
[0155]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０２０８】
[0156]様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［１］  ビデオデータを処理する方法であって、前記方法は、
クリーンランダムアクセス（ＣＲＡ）ピクチャまたはブロークンリンクアクセス（ＢＬＡ）ピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信することと、
前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの少なくとも１つのためのコード化ピクチャバッファ（ＣＰＢ）パラメータの代替セットを使用すべきかどうかを示すメッセージを受信することと、
前記受信されたメッセージに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを示すように定義された変数を設定することと、
前記ピクチャのための前記変数に基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを選択することと、
を備える方法。
［２］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つと、関連する仮想リファレンスデコーダ（ＨＲＤ）パラメータとを使用してＨＲＤを初期化することをさらに備え、ここで、前記ＨＲＤパラメータは、前記ピクチャのためのＣＰＢパラメータの前記選択されたセットを含む、［１］に記載の方法。
［３］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示さず、
ＣＰＢパラメータの前記セットを選択することは、前記ピクチャのためのＣＰＢパラメータのデフォルトセットを選択することを備える、
［１］に記載の方法。
［４］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示し、
ＣＰＢパラメータの前記セットを選択することは、前記ピクチャのためのＣＰＢパラメータの前記代替セットを選択することを備える、
［１］に記載の方法。
［５］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定することをさらに備え、
ＣＰＢパラメータの前記セットを選択することは、前記ピクチャのための前記ＮＡＬユニットタイプと前記変数とに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを選択することを備える、
［１］に記載の方法。
［６］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、ＢＬＡピクチャとして処理されるＣＲＡピクチャを備え、
前記ＮＡＬユニットタイプを設定することは、前記ピクチャのための前記変数に基づいて、前記ＢＬＡピクチャとして処理される前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することを備える、［５］に記載の方法。
［７］  前記ＢＬＡピクチャとして処理される前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することは、
ＣＰＢパラメータの前記代替セットを示す前記ピクチャのための前記変数に基づいて、復号可能リーディングピクチャをもつＢＬＡピクチャを示すように前記ピクチャのための前記ＮＡＬユニットタイプを設定することと、
ＣＰＢパラメータの前記代替セットを示さない前記ピクチャのための前記変数に基づいて、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すように前記ピクチャのための前記ＮＡＬユニットタイプを設定することと、
を備える、［６］に記載の方法。
［８］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つはＣＲＡピクチャを備え、
前記ＮＡＬユニットタイプを設定することは、シグナリングされた通りに一般ＣＲＡピクチャを示すように前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することを備える、
［５］に記載の方法。
［９］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つはＣＲＡピクチャを備え、
前記ＮＡＬユニットタイプを設定することは、シグナリングされた通りに、非復号可能リーディングピクチャをもつＣＲＡピクチャ、復号可能リーディングピクチャをもつＣＲＡピクチャ、またはリーディングピクチャをもたないＣＲＡピクチャのうちの１つを示すように、前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定することを備える、［５］に記載の方法。
［１０］  前記メッセージを受信することは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記代替セットを使用すべきかどうかを示す前記メッセージを外部手段から受信することを備える、［１］に記載の方法。
［１１］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、オリジナルのビットストリーム中で非復号可能リーディングピクチャを有し、前記非復号可能リーディングピクチャは前記外部手段によって廃棄されており、
前記受信されたメッセージは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記代替セットを使用することを示す、
［１０］に記載の方法。
［１２］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、オリジナルのビットストリーム中で非復号可能リーディングピクチャを有しなかったか、あるいは前記オリジナルのビットストリーム中で非復号可能リーディングピクチャを有し、前記非復号可能リーディングピクチャは前記外部手段によって廃棄されておらず、
前記受信されたメッセージは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記代替セットを使用することを示さない、
［１０］に記載の方法。
［１３］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの別の１つのためにＣＰＢパラメータの前記代替セットを使用すべきかどうかを示すメッセージを受信しないことと、
前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記代替セットを示さないように前記変数を設定することと、
前記ピクチャのための前記変数に基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記セットを選択することと、
をさらに備える、［１］に記載の方法。
［１４］  前記ＣＰＢパラメータは初期ＣＰＢ削除遅延と初期ＣＰＢ削除遅延オフセットとを含む、［１］に記載の方法。
［１５］  前記ビデオデータの復号中に前記ＣＰＢがオーバーフローしないことを保証するために、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記選択されたセットを、ビデオ復号デバイス中に含まれるＣＰＢに適用することをさらに備える、［１］に記載の方法。
［１６］  前記ビデオデータの符号化中に、ビデオ符号化デバイス中に含まれる第１のＣＰＢがオーバーフローしないことを保証するために、および前記ビデオ符号化デバイスによって生成された符号化ビットストリームを受信したときに、ビデオ復号デバイス中に含まれる第２のＣＰＢがオーバーフローしないことを保証するために、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記選択されたセットを、前記ビデオ符号化デバイス中に含まれる前記第１のＣＰＢに適用することをさらに備える、［１］に記載の方法。
［１７］  ビデオデータを処理するためのビデオコーディングデバイスであって、前記デバイスは、
ビデオデータを記憶するように構成されたコード化ピクチャバッファ（ＣＰＢ）と、
クリーンランダムアクセス（ＣＲＡ）ピクチャまたはブロークンリンクアクセス（ＢＬＡ）ピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信することと、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの少なくとも１つのためのＣＰＢパラメータの代替セットを使用すべきかどうかを示すメッセージを受信することと、前記受信されたメッセージに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを示すように定義された変数を設定することと、前記ピクチャのための前記変数に基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを選択することと、を行うように構成された１つまたは複数のプロセッサと、
を備える、ビデオコーディングデバイス。
［１８］  前記プロセッサは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つと、関連する仮想リファレンスデコーダ（ＨＲＤ）パラメータとを使用してＨＲＤを初期化するように構成され、ここで、前記ＨＲＤパラメータは、前記ピクチャのためのＣＰＢパラメータの前記選択されたセットを含む、［１７］に記載のビデオコーディングデバイス。
［１９］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示さず、
前記プロセッサは、前記ピクチャのためのＣＰＢパラメータのデフォルトセットを選択するように構成された、
［１７］に記載のビデオコーディングデバイス。
［２０］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示し、
前記プロセッサは、前記ピクチャのためのＣＰＢパラメータの前記代替セットを選択するように構成された、
［１７］に記載のビデオコーディングデバイス。
［２１］  前記プロセッサは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定することと、前記ピクチャのための前記ＮＡＬユニットタイプと前記変数とに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを選択することと、を行うように構成された、［１７］に記載のビデオコーディングデバイス。
［２２］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、ＢＬＡピクチャとして処理されるＣＲＡピクチャを備え、
前記プロセッサは、前記ピクチャのための前記変数に基づいて、前記ＢＬＡピクチャとして処理される前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するように構成された、
［２１］に記載のビデオコーディングデバイス。
［２３］  ＣＰＢパラメータの前記代替セットを示す前記ピクチャのための前記変数に基づいて、前記プロセッサは、復号可能リーディングピクチャをもつＢＬＡピクチャを示すように、ＢＬＡピクチャとして処理される前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するように構成され、
ＣＰＢパラメータの前記代替セットを示さない前記ピクチャのための前記変数に基づいて、前記パラメータは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すように、前記ＢＬＡピクチャとして処理される前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するように構成された、
［２２］に記載のビデオコーディングデバイス。
［２４］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つはＣＲＡピクチャを備え、
前記プロセッサは、シグナリングされた通りに一般ＣＲＡピクチャを示すように前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するように構成された、
［２１］に記載のビデオコーディングデバイス。
［２５］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つはＣＲＡピクチャを備え、
前記プロセッサは、シグナリングされた通りに、非復号可能リーディングピクチャをもつＣＲＡピクチャ、復号可能リーディングピクチャをもつＣＲＡピクチャ、またはリーディングピクチャをもたないＣＲＡピクチャのうちの１つを示すように、前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定するように構成された、［２１］に記載のビデオコーディングデバイス。
［２６］  前記プロセッサは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記代替セットを使用すべきかどうかを示す前記メッセージを外部手段から受信するように構成された、［１７］に記載のビデオコーディングデバイス。
［２７］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、オリジナルのビットストリーム中で非復号可能リーディングピクチャを有し、前記非復号可能リーディングピクチャは前記外部手段によって廃棄されており、
前記受信されたメッセージは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記代替セットを使用することを示す、
［２６］に記載のビデオコーディングデバイス。
［２８］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、オリジナルのビットストリーム中で非復号可能リーディングピクチャを有しなかったか、あるいは前記オリジナルのビットストリーム中で非復号可能リーディングピクチャを有し、前記非復号可能リーディングピクチャが前記外部手段によって廃棄されておらず、
前記受信されたメッセージは、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記代替セットを使用することを示さない、
［２６］に記載のビデオコーディングデバイス。
［２９］  前記プロセッサは、
前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの別の１つのためにＣＰＢパラメータの前記代替セットを使用すべきかどうかを示すメッセージを受信しないことと、
前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記代替セットを示さないように前記変数を設定することと、
前記ピクチャのための前記変数に基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記別の１つのためにＣＰＢパラメータの前記セットを選択することと、
を行うように構成された、［１７］に記載のビデオコーディングデバイス。
［３０］  前記ＣＰＢパラメータは初期ＣＰＢ削除遅延と初期ＣＰＢ削除遅延オフセットとを含む、［１７］に記載のビデオコーディングデバイス。
［３１］  前記プロセッサは、前記ビデオデータの復号中に前記ＣＰＢがオーバーフローしないことを保証するために、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記選択されたセットを、ビデオ復号デバイス中に含まれるＣＰＢに適用するように構成された、［１７］に記載のビデオコーディングデバイス。
［３２］  前記プロセッサは、前記ビデオデータの符号化中に、ビデオ符号化デバイス中に含まれる第１のＣＰＢがオーバーフローしないことを保証するために、および前記ビデオ符号化デバイスによって生成された符号化ビットストリームを受信したときに、ビデオ復号デバイス中に含まれる第２のＣＰＢがオーバーフローしないことを保証するために、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記選択されたセットを、前記ビデオ符号化デバイス中に含まれる前記第１のＣＰＢに適用するように構成された、［１７］に記載のビデオコーディングデバイス。
［３３］  ビデオデータを処理するためのビデオコーディングデバイスであって、前記デバイスは、
クリーンランダムアクセス（ＣＲＡ）ピクチャまたはブロークンリンクアクセス（ＢＬＡ）ピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信するための手段と、
前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの少なくとも１つのためのコード化ピクチャバッファ（ＣＰＢ）パラメータの代替セットを使用すべきかどうかを示すメッセージを受信するための手段と、
前記受信されたメッセージに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを示すように定義された変数を設定するための手段と、
前記ピクチャのための前記変数に基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためにＣＰＢパラメータの前記セットを選択するための手段と、
を備える、ビデオコーディングデバイス。
［３４］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つと、関連する仮想リファレンスデコーダ（ＨＲＤ）パラメータとを使用してＨＲＤを初期化するための手段をさらに備え、ここで、前記ＨＲＤパラメータは、前記ピクチャのためのＣＰＢパラメータの前記選択されたセットを含む、
［３３］に記載のビデオコーディングデバイス。
［３５］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示さず、
前記ピクチャのためのＣＰＢパラメータのデフォルトセットを選択するための手段をさらに備える、
［３３］に記載のビデオコーディングデバイス。
［３６］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示し、
前記ピクチャのためのＣＰＢパラメータの前記代替セットを選択するための手段をさらに備える、
［３３］に記載のビデオコーディングデバイス。
［３７］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためにネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定するための手段と、
前記ピクチャのための前記ＮＡＬユニットタイプと前記変数とに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためにＣＰＢパラメータの前記セットを選択するための手段とをさらに備える、［３３］に記載のビデオコーディングデバイス。
［３８］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、ＢＬＡピクチャとして処理されるＣＲＡピクチャを備え、
前記ピクチャのための前記変数に基づいて、前記ＢＬＡピクチャとして処理される前記ＣＲＡピクチャのために前記ＮＡＬユニットタイプを設定するための手段をさらに備える、［３７］に記載のビデオコーディングデバイス。
［３９］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためにＣＰＢパラメータの前記代替セットを使用すべきかどうかを示す前記メッセージを外部手段から受信するための手段をさらに備える、［３３］に記載のビデオコーディングデバイス。
［４０］  前記ビデオデータの復号中に前記ＣＰＢがオーバーフローしないことを保証するために、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記選択されたセットを、ビデオ復号デバイス中に含まれるＣＰＢに適用するための手段をさらに備える、［３３］に記載のビデオコーディングデバイス。
［４１］  前記ビデオデータの符号化中に、ビデオ符号化デバイス中に含まれる第１のＣＰＢがオーバーフローしないことを保証するために、および前記ビデオ符号化デバイスによって生成された符号化ビットストリームを受信したときに、ビデオ復号デバイス中に含まれる第２のＣＰＢがオーバーフローしないことを保証するために、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記選択されたセットを、前記ビデオ符号化デバイス中に含まれる前記第１のＣＰＢに適用するための手段をさらに備える、［３３］に記載のビデオコーディングデバイス。
［４２］  ビデオデータを処理するための命令を備えるコンピュータ可読媒体であって、前記命令は、実行されたとき、１つまたは複数のプロセッサに、
クリーンランダムアクセス（ＣＲＡ）ピクチャまたはブロークンリンクアクセス（ＢＬＡ）ピクチャのうちの１つまたは複数を含む複数のピクチャを表すビットストリームを受信することと、
前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの少なくとも１つのためのコード化ピクチャバッファ（ＣＰＢ）パラメータの代替セットを使用すべきかどうかを示すメッセージを受信することと、
前記受信されたメッセージに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを示すように定義された変数を設定することと、
前記ピクチャのための前記変数に基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを選択することと、
を行わせる、コンピュータ可読媒体。
［４３］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示さず、
前記命令は、前記プロセッサに、前記ピクチャのためのＣＰＢパラメータのデフォルトセットを選択させる、
［４２］に記載のコンピュータ可読媒体。
［４４］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、非復号可能リーディングピクチャをもつＢＬＡピクチャを示すネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプをもつＣＲＡピクチャまたはＢＬＡピクチャのうちの１つを備え、前記ピクチャのための前記変数はＣＰＢパラメータの前記代替セットを示し、
前記命令は、前記プロセッサに、前記ピクチャのためのＣＰＢパラメータの前記代替セットを選択させる、
［４２］に記載のコンピュータ可読媒体。
［４５］  前記命令は、前記プロセッサに、
前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのネットワークアブストラクションレイヤ（ＮＡＬ）ユニットタイプを設定させ、
前記ピクチャのための前記ＮＡＬユニットタイプと前記変数とに基づいて、前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つのためのＣＰＢパラメータの前記セットを選択させる、
［４２］に記載のコンピュータ可読媒体。
［４６］  前記ＣＲＡピクチャまたは前記ＢＬＡピクチャのうちの前記１つは、ＢＬＡピクチャとして処理されるＣＲＡピクチャを備え、
前記命令は、前記プロセッサに、前記ピクチャのための前記変数に基づいて、前記ＢＬＡピクチャとして処理される前記ＣＲＡピクチャのための前記ＮＡＬユニットタイプを設定させる、
［４５］に記載のコンピュータ可読媒体。
【図１】
0006271558.tif 000004
【図２】
0006271558.tif 000005
【図３】
0006271558.tif 000006
【図４】
0006271558.tif 000007
【図５】
0006271558.tif 000008
【図６】
0006271558.tif 000009
【図７】
0006271558.tif 000010
【図８】
0006271558.tif 000011
【図９】
0006271558.tif 000012