"ビデオデータをコード化する方法であって、復号された参照ピクチャを記憶するメモリから第1の参照ピクチャリストと第2の参照ピクチャリストとを構成することと、前記第1の参照ピクチャリストおよび前記第2の参照ピクチャリストのうちの少なくとも1つから1つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成することと、前記結合された参照ピクチャリストについての構成情報を示す1つまたは複数のシンタックス要素をコード化することと、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関して、単方向予測を使用して、1つまたは複数のビデオブロックをコード化することと、を備える方法。前記シンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、請求項1に記載の方法。ビデオデータをコード化する前記方法は、デコーダで前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信することと、前記1つまたは複数のシンタックス要素を復号することと、前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成することと、前記結合された参照ピクチャリストを使用して、前記1つまたは複数の単方向予測されたビデオブロックを復号することと、をさらに備えるビデオデータを復号する方法を備える、請求項1に記載の方法。ビデオデータをコード化する前記方法は、前記1つまたは複数のシンタックス要素を符号化することと、前記結合された参照ピクチャリストのみを使用して、前記1つまたは複数の単方向予測されたビデオブロックを符号化することと、前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化することと、をさらに備えるビデオデータを符号化する方法を備える、請求項1に記載の方法。ビデオブロックごとに、前記ビデオブロックが前記第1の参照ピクチャリストにおける1つの参照ピクチャおよび前記第2の参照ピクチャリストにおける1つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す1つまたは複数のシンタックス要素をコード化することをさらに備える、請求項1に記載の方法。前記シンタックス要素は、前記第1および第2の参照ピクチャリストにおける同じ参照ピクチャの数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項1に記載の方法。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第1の参照ピクチャリストにおける参照ピクチャに関連するか、前記第2の参照ピクチャリストにおける参照ピクチャに関連するかを示す、請求項1に記載の方法。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第1または第2の参照ピクチャリストのうちの1つにおける現在の参照ピクチャのインデックスを示す、請求項1に記載の方法。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第1または第2の参照ピクチャリストのうちの1つにおける現在の参照ピクチャのインデックスと、前記結合された参照ピクチャリストにおける前のエントリに追加された前記第1または第2の参照ピクチャリストのうちの同じ1つにおける前の参照ピクチャのインデックスとの間の差を定義するインデックスデルタを示す、請求項1に記載の方法。前記第1および第2の参照ピクチャリストが同一であるとき、前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のために前記第1および第2の参照ピクチャリストの1つに等しくなるように設定されることを示す、請求項1に記載の方法。前記1つまたは複数のシンタックス要素は、前記第1および第2の参照ピクチャリストのうちの前記1つによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、請求項10に記載の方法。前記第1および第2の参照ピクチャリストのうちの一方が他方の参照ピクチャリストにおいて識別される前記参照ピクチャのサブセットを識別するとき、前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のために前記他方の参照ピクチャリストに等しくなるように設定されることを示す、請求項1に記載の方法。前記1つまたは複数のシンタックス要素は、前記他方の参照ピクチャリストによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、請求項12に記載の方法。復号された参照ピクチャを記憶するメモリと、前記メモリから第1の参照ピクチャリストと第2の参照ピクチャリストとを構成し、前記第1の参照ピクチャリストおよび前記第2の参照ピクチャリストのうちの少なくとも1つから1つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成し、前記結合された参照ピクチャリストについての構成情報を示す1つまたは複数のシンタックス要素をコード化し、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関して、単方向予測を使用して、1つまたは複数のビデオブロックをコード化するように構成されたプロセッサと、を備えるビデオコーディングデバイス。前記シンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、請求項14に記載のビデオコーディングデバイス。前記ビデオコーディングデバイスは、ビデオ復号デバイスを備え、前記プロセッサは、前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信し、前記1つまたは複数のシンタックス要素を復号し、前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成し、前記結合された参照ピクチャリストを使用して、前記1つまたは複数の単方向予測されたビデオブロックを復号する請求項14に記載のビデオコーディングデバイス。前記ビデオコーディングデバイスは、ビデオ符号化デバイスを備え、前記プロセッサは、前記1つまたは複数のシンタックス要素を符号化し、前記結合された参照ピクチャリストのみを使用して、前記1つまたは複数の単方向予測されたビデオブロックを符号化し、前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化する請求項14に記載のビデオコーディングデバイス。ビデオブロックごとに、前記プロセッサは、前記ビデオブロックが前記第1の参照ピクチャリストにおける1つの参照ピクチャおよび前記第2の参照ピクチャリストにおける1つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す1つまたは複数のシンタックス要素をコード化する、請求項14に記載のビデオコーディングデバイス。前記シンタックス要素は、前記第1および第2の参照ピクチャリストにおける同じ参照ピクチャの数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項14に記載のビデオコーディングデバイス。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第1の参照ピクチャリストにおける参照ピクチャに関連するか、前記第2の参照ピクチャリストにおける参照ピクチャに関連するかを示す、請求項14に記載のビデオコーディングデバイス。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第1または第2の参照ピクチャリストのうちの1つにおける現在の参照ピクチャのインデックスを示す、請求項14に記載のビデオコーディングデバイス。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第1または第2の参照ピクチャリストのうちの1つにおける現在の参照ピクチャのインデックスと、前記結合された参照ピクチャリストにおける前のエントリに追加された前記第1または第2の参照ピクチャリストのうちの同じ1つにおける前の参照ピクチャのインデックスとの間の差を定義するインデックスデルタを示す、請求項14に記載のビデオコーディングデバイス。前記第1および第2の参照ピクチャリストが同一であるとき、前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記第1および第2の参照ピクチャリストの1つに等しくなるように設定されることを示す、請求項14に記載のビデオコーディングデバイス。前記1つまたは複数のシンタックス要素は、前記第1および第2の参照ピクチャリストのうちの前記1つによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、請求項23に記載のビデオコーディングデバイス。前記第1および第2の参照ピクチャリストのうちの一方が他方の参照ピクチャリストにおいて識別される前記参照ピクチャのサブセットを識別するとき、前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記他方の参照ピクチャリストに等しくなるように設定されることを示す、請求項14に記載のビデオコーディングデバイス。前記1つまたは複数のシンタックス要素は、前記他方の参照ピクチャリストによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、請求項25に記載のビデオコーディングデバイス。復号された参照ピクチャを記憶するメモリから第1の参照ピクチャリストと第2の参照ピクチャリストとを構成する手段と、前記第1の参照ピクチャリストおよび前記第2の参照ピクチャリストのうちの少なくとも1つから1つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成する手段と、前記結合された参照ピクチャリストについての構成情報を示す1つまたは複数のシンタックス要素をコード化する手段と、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関して、単方向予測を使用して、1つまたは複数のビデオブロックをコード化する手段と、を備えるビデオコーディングデバイス。前記シンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、請求項27に記載のビデオコーディングデバイス。前記ビデオコーディングデバイスは、デコーダで前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信する手段と、前記1つまたは複数のシンタックス要素を復号する手段と、前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成する手段と、前記結合された参照ピクチャリストを使用して、前記1つまたは複数の単方向予測されたビデオブロックを復号する手段と、をさらに備えるビデオ復号デバイスを備える、請求項27に記載のビデオコーディングデバイス。前記ビデオコーディングデバイスは、前記1つまたは複数のシンタックス要素を符号化する手段と、前記結合された参照ピクチャリストのみを使用して、前記1つまたは複数の単方向予測されたビデオブロックを符号化する手段と、前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化する手段と、をさらに備えるビデオ符号化デバイスを備える、請求項27に記載のビデオコーディングデバイス。ビデオブロックごとに、前記ビデオブロックが前記第1の参照ピクチャリストにおける1つの参照ピクチャおよび前記第2の参照ピクチャリストにおける1つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す1つまたは複数のシンタックス要素をコード化する手段をさらに備える、請求項27に記載のビデオコーディングデバイス。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第1の参照ピクチャリストにおける参照ピクチャに関連するか、前記第2の参照ピクチャリストにおける参照ピクチャに関連するかを示す、請求項27に記載のビデオコーディングデバイス。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第1または第2の参照ピクチャリストのうちの1つにおける現在の参照ピクチャのインデックスを示す、請求項27に記載のビデオコーディングデバイス。プロセッサで実行されると、前記プロセッサに、復号された参照ピクチャを記憶するメモリから第1の参照ピクチャリストと第2の参照ピクチャリストとを構成させ、前記第1の参照ピクチャリストおよび前記第2の参照ピクチャリストのうちの少なくとも1つから1つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成させ、前記結合された参照ピクチャリストについての構成情報を示す1つまたは複数のシンタックス要素をコード化させ、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関して、単方向予測を使用して、1つまたは複数のビデオブロックをコード化させる、ビデオデータをコード化するための命令を備えるコンピュータ可読記憶媒体。前記シンタックス要素が、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、請求項34に記載のコンピュータ可読記憶媒体。前記ビデオコーディングデバイスはビデオ復号デバイスを備え、前記プロセッサに、デコーダで前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信させ、前記1つまたは複数のシンタックス要素を復号させ、前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成させ、前記結合された参照ピクチャリストを使用して、前記1つまたは複数の単方向予測されたビデオブロックを復号させる命令をさらに備える、請求項34に記載のコンピュータ可読記憶媒体。前記ビデオコーディングデバイスはビデオ符号化デバイスを備え、前記プロセッサに、前記1つまたは複数のシンタックス要素を符号化させ、前記結合された参照ピクチャリストのみを使用して、前記1つまたは複数の単方向予測されたビデオブロックを符号化させ、前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化させる命令をさらに備える、請求項34に記載のコンピュータ可読記憶媒体。前記プロセッサに、ビデオブロックごとに、前記ビデオブロックが前記第1の参照ピクチャリストにおける1つの参照ピクチャおよび前記第2の参照ピクチャリストにおける1つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける1つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す1つまたは複数のシンタックス要素をコード化させる命令をさらに備える、請求項34に記載のコンピュータ可読記憶媒体。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第1の参照ピクチャリストにおける参照ピクチャに関連するか、前記第2の参照ピクチャリストにおける参照ピクチャに関連するかを示す、請求項34に記載のコンピュータ可読記憶媒体。前記1つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第1または第2の参照ピクチャリストのうちの1つにおける現在の参照ピクチャのインデックスを示す、請求項34に記載のコンピュータ可読記憶媒体。0019本開示は、前方または後方の任意の方向のビデオブロックの単方向インター予測単予測に使用される、リスト0およびリスト1に基づく、結合された参照ピクチャリスト、リストCの構成のための技法に関する。本技法は、たとえば、ピクチャまたはスライスレベル、たとえばスライスのスライスヘッダなどにおいてリストCについての構成情報を示すように定義された1つまたは複数のシンタックス要素をコード化し、シンタックス要素に基づいてリスト0およびリスト1からリストCについての参照ピクチャリストの構成を実行することを含む。ビデオブロックがリスト0およびリスト1から双予測されるBiか、リストCから単方向予測されるPred_LCかを示すために、Bスライスの各コード化ビデオブロックは、関連するシンタックス要素、すなわち、inter_pred_idcを有し得る。単方向予測のために、リスト0およびリスト1からの参照ピクチャをリストCに結合するとき、Bスライスにおけるビデオブロックについてのインター予測ステータスは、BiおよびPred_LCの2つのみが可能であり、これは、1ビットを消費する。したがって、本技法は、Bスライスにおけるビデオブロックについてのインター予測ステータスのコード化のコストを低減することになる。0020従来は、Pスライスにおけるビデオブロックは、リスト0における過去の参照ピクチャを指す単一の動きベクトルによる単方向予測を使用して符号化され得る。Bスライスにおけるビデオブロックは、aリスト0における過去の参照ピクチャを指す単一の動きベクトルによる単方向予測、bリスト1における将来の参照ピクチャを指す単一の動きベクトルによる単方向予測、cリスト0およびリスト1においてそれぞれ過去および将来の参照ピクチャを指す2つの動きベクトルによる双予測を使用して、符号化され得る。PおよびBのスライスの分類は、リスト0およびリスト1が同じ時間的方向または異なる時間的方向の参照ピクチャを含み得ることを除いて、ビデオブロックがBスライスとして符号化される一般化されたP/BGPBスライスを含むように拡大されている。GPBスライスの特定の一例では、リスト0およびリスト1は同一であり得る。0021参照ピクチャリストについての構成情報を示すように定義されたシンタックス要素は、符号化され、コード化されたビデオスライスのスライスヘッダで復号デバイスにシグナリングされる。コード化されたビデオスライス、およびその関連のシンタックス要素を受信すると、デコーダは、シンタックス要素に基づいてリスト0およびリスト1についての参照ピクチャリストの構成を実行する。Bスライスでは、各コード化されたビデオブロックは、ビデオブロックが双予測されるBiか、リスト0から順方向に単方向予測されるPred_L0か、リスト1から逆方向に単方向予測されるPred_L1かを示すために、関連のシンタックス要素、すなわち、inter_pred_idcを有し得る。したがって、Bスライスについてのinter_pred_idcシンタックス要素は、3つのステータス、Bi、Pred_L0、またはPred_L1のうちの1つを示すために、2ビットを消費する。0022GPBスライスの場合、リスト0およびリスト1が同一であるとき、GPBスライスにおけるビデオブロックについてのBiおよびPred_L0の2つの予測間ステータスのみが可能である。この場合、inter_pred_idcシンタックス要素を使用する3つすべてのステータスのシグナリングは、非効率的である。代わりに、Bスライスが、2ビットを消費する3つのステータスのうちの1つの指示を必要とする通常のBスライスであるか、1ビットのみを消費するBiおよびPred_L0の2つのみのステータスの指示を必要とするGPBスライスであるかに基づいて、inter_pred_idcシンタックス要素が修正され得る。Bスライスにおけるビデオブロックごとに1ビットのみをシグナリングすることは、シグナリング効率におけるかなりの増加を提供することができる。0023本開示の技法は、参照ピクチャリストが同一であるかどうかにかかわらず、GPBスライスを含めて、すべてのBスライスまで効率の増加を広げる。本技法は、リスト0およびリスト1のうちの少なくとも1つから1つまたは複数の参照ピクチャを含む結合された参照ピクチャリスト、リストCを構成することを含む。次いで、リストCが、Bスライスにおけるビデオブロックの単方向予測に使用される。このように、すべてのBスライスにおけるビデオブロックごとに、1ビットを消費する、BiおよびPred_LCの2つのステータスをシグナリングするだけでよい。0024ビデオデコーダでリストCを構成するとき、いくつかの問題が生じ得る。たとえば、ビデオエンコーダは、リストCに含まれるようにリスト0とリスト1の両方からのあらゆる参照ピクチャを選択しない場合がある。ビデオデコーダがリストCに含まれる参照ピクチャの数を知らないとき、ビデオデコーダは、リストCを構成することができず、また、コード化されたBスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、ビデオデコーダでリストCを自動的に構成することは、複雑な復号プロセスを必要とし得る。本技法によれば、Bスライスに関連付けられた1つまたは複数のシンタックス要素は、リストCが単方向予測に使用されることを示し、また、リストCにおいて識別された参照ピクチャの数と、リストCにおける各エントリの参照ピクチャの参照インデックスとを示し得る。0025図1は、結合された参照ピクチャリストを構成し、結合された参照ピクチャリストを使用して、単方向予測されたビデオブロックを効率的にコード化するための技法を使用することができる例示的なビデオ符号化および復号システム10を示すブロック図である。概して、参照ピクチャリストは、代替的に参照フレームリストと呼ばれることがある。図1に示すように、システム10は、宛先デバイス14によって後で復号するための符号化されたビデオデータを生成するソースデバイス12を含む。ソースデバイス12および宛先デバイス14は、デスクトップコンピュータ、ノートブックすなわち、ラップトップコンピュータ、タブレットコンピュータ、セットトップボックス、いわゆるスマートフォン、いわゆるスマートパッドなどの電話ハンドセット、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソールなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス12および宛先デバイス14は、ワイヤレス通信のために装備され得る。0026宛先デバイス14は、リンク16を介して復号するための符号化されたビデオデータを受信することができる。リンク16は、ソースデバイス12から宛先デバイス14に符号化されたビデオデータを移動させることができる任意のタイプの媒体またはデバイスを備え得る。一例では、リンク16は、ソースデバイス12が、符号化されたビデオデータをリアルタイムで宛先デバイス14に直接送信できるようにするための通信媒体を備え得る。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス14に送信され得る。通信媒体は、無線周波数RFスペクトルまたは1つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス12から宛先デバイス14への通信を可能にするのに有用なルータ、スイッチ、基地局、または任意の他の機器を含むことができる。0027別の例では、リンク16は、ソースデバイス12によって生成される符号化されたビデオデータを記憶することができ、宛先デバイス14が必要に応じてディスクアクセスまたはカードアクセスを介してアクセスできる記憶媒体に対応し得る。記憶媒体は、様々なローカルにアクセスされたデータ記憶媒体、たとえばブルーレイディスク、DVD、CD-ROM、フラッシュメモリ、または符号化されたビデオデータを記憶するための任意の他の適切なデジタル記憶媒体のうちの任意のものを含み得る。さらなる一例では、リンク16は、ファイルサーバ、あるいは、ソースデバイス12によって生成される符号化されたビデオを保持することができ、宛先デバイス14が必要に応じてストリーミングまたはダウンロードを介してアクセスできる別の介在する記憶デバイスに対応し得る。ファイルサーバは、符号化されたビデオデータを記憶し、その符号化されたビデオデータを宛先デバイス14に送信することができる任意のタイプのサーバとすることができる。例示的なファイルサーバは、たとえば、ウェブサイトのためのウェブサーバ、FTPサーバ、ネットワーク接続ストレージNASデバイス、またはローカルディスクドライブを含む。宛先デバイス14は、インターネット接続を含む、任意の標準のデータ接続を介して符号化されたビデオデータにアクセスすることができる。これは、ファイルサーバに記憶された符号化されたビデオデータにアクセスするのに好適であるワイヤレスチャネルたとえば、Wi-Fi接続、ワイヤード接続たとえば、DSL、ケーブルモデムなど、または両方の組合せを含み得る。ファイルサーバからの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。0028結合された参照ピクチャリストを構成し、結合された参照ピクチャリストを使用して単方向予測されたビデオブロックを効率的にコード化するための本開示の技法は、必ずしもワイヤレスの適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム10は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および/またはビデオテレフォニーなどの適用例をサポートするために、単方向または二方向のビデオ送信をサポートするように構成され得る。0029図1の例では、ソースデバイス12は、ビデオソース18と、ビデオエンコーダ20と、出力インターフェース22とを含む。場合によっては、出力インターフェース22は、変調器/復調器モデムおよび/または送信機を含むことができる。ソースデバイス12において、ビデオソース18は、たとえばビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および/またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、ビデオソース18がビデオカメラである場合、ソースデバイス12および宛先デバイス14は、いわゆるカメラ付き携帯電話またはビデオ電話を形成し得る。ただし、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび/またはワイヤード適用例に適用され得る。0030キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成ビデオはビデオエンコーダ12によって符号化され得る。符号化されたビデオデータは、ソースデバイス20の出力インターフェース22を介して、宛先デバイス14に直接送信され得る。符号化されたビデオデータは、復号および/または再生のために、宛先デバイス14によって後でアクセスするために、記憶媒体またはファイルサーバ上に記憶することもできる。0031宛先デバイス14は、入力インターフェース28と、ビデオデコーダ30と、ディスプレイデバイス32とを含む。場合によっては、入力インターフェース28は、受信機および/またはモデムを含むことができる。宛先デバイス14の入力インターフェース28は、リンク16を介して符号化されたビデオデータを受信する。リンク16を介して通信される、またはデータ記憶媒体上で提供される符号化されたビデオデータは、ビデオデータを復号する際に、たとえばビデオデコーダ30などのビデオデコーダによって使用するために、ビデオエンコーダ20によって生成される様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体によって送信された、記憶媒体またはファイルサーバに記憶された符号化されたビデオデータに含まれ得る。0032ディスプレイデバイス32は、宛先デバイス14と一体化されるかまたはその外部にあり得る。いくつかの例では、宛先デバイス14は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス14はディスプレイデバイスであり得る。概して、ディスプレイデバイス32は、復号されたビデオデータをユーザに表示し、液晶ディスプレイLCD、プラズマディスプレイ、有機発光ダイオードOLEDディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。0033ビデオエンコーダ20およびビデオデコーダ30は、現在開発中の高効率ビデオコーディングHEVC規格などのビデオ圧縮規格に従って動作し得、HEVCテストモデルHM:HEVCTestModelに準拠し得る。代替的に、ビデオエンコーダ20およびビデオデコーダ30は、代替的にMPEG-4,Part10,AdvancedVideoCodingAVCと呼ばれるITU-TH.264規格など、他のプロプライエタリ規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例は、MPEG-2およびITU-TH.263を含む。0034図1には示されていないが、いくつかの態様では、ビデオエンコーダ20およびビデオデコーダ30は、それぞれオーディオエンコーダおよびデコーダと統合され得、適切なMUX-DEMUXユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、いくつかの例では、MUX-DEMUXユニットはITUH.223マルチプレクサプロトコル、またはユーザデータグラムプロトコルUDPなどの他のプロトコルに準拠し得る。0035ビデオエンコーダ20およびビデオデコーダ30はそれぞれ、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサDSP、特定用途向け集積回路ASIC、フィールドプログラマブルゲートアレイFPGA、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、1つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ20およびビデオデコーダ30の各々は1つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ/デコーダコーデックの一部として統合され得る。0036本開示によれば、ソースデバイス12のビデオエンコーダ20は、前方または後方の任意の方向のBスライスのビデオブロックの単方向予測に使用するために、結合された参照ピクチャリスト、リストCについての構成情報を示すシンタックス要素を符号化するための技法を実行するように構成され得る。ビデオエンコーダ20は、リストCに含まれるように、第1の参照ピクチャリスト、リスト0、および第2の参照ピクチャリスト、リスト1のうちの少なくとも1つから1つまたは複数の参照ピクチャを選択することができる。次いで、ビデオエンコーダ20は、リストCが単方向予測に使用されることを示すように定義された、たとえばBスライスのスライスヘッダにおける1つまたは複数のシンタックス要素を符号化することができる。ビデオエンコーダ20は、リストCで識別された参照ピクチャの数と、リストCにおける各エントリのリスト0またはリスト1からの参照ピクチャの参照インデックスとを含めて、符号化されたビデオデータにおいて、リストCの中身が、ビデオデコーダ30によってリスト0およびリスト1から構成されるべき方法を明示的にシグナリングするように定義されたシンタックス要素をさらに符号化することができる。0037本技法によれば、Bスライスにおけるビデオブロックは、リストCにおける参照ピクチャを指す単一の動きベクトルによる単方向予測、またはそれぞれリスト0およびリスト1における2つの参照ピクチャを指す2つの動きベクトルによる双予測のいずれかを使用して符号化され得る。本技法は、リスト0およびリスト1が同じ時間的方向または異なる時間的方向の参照ピクチャを含み得るように、GPBスライスを含めて、すべてのBスライスに適用され得る。特定の一例では、リスト0およびリスト1は同一でもよい。したがって、リスト0およびリスト1のうちの少なくとも1つからの参照ピクチャを含むリストCは、現在のピクチャに対する前方と後方の両方の時間的方向の参照ピクチャを含み得る。0038また、ビデオエンコーダ20は、ビデオブロックがリスト0およびリスト1から双予測されるBiか、リストCから単方向予測されるPred_LCかを示すために、Bスライスの各コード化ビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちinter_pred_idcを符号化する。単方向予測のために、リスト0およびリスト1からの参照ピクチャをリストCに結合するとき、Bスライスにおけるビデオブロックについての2つのインター予測ステータス、BiおよびPred_LCのみが可能である。したがって、本技法によって、リスト0およびリスト1が同一であるかどうかにかかわらず、GPBスライスを含むBスライスにおけるビデオブロックについてのインター予測ステータスのコード化のコストが低減する。0039本開示によれば、宛先デバイス14のビデオデコーダ30は、前方または後方の任意の方向に単方向予測されるビデオブロックを復号するために使用される、第1の参照ピクチャリスト、リスト0、および第2の参照ピクチャリスト、リスト1のうちの少なくとも1つからの1つまたは複数の参照ピクチャを含むために、結合された参照ピクチャリスト、リストCを構成するための技法を実行するように構成され得る。ビデオデコーダ30は、Bスライスにおける符号化されたビデオブロックおよび関連するシンタックス要素を表す符号化されたビットストリームを受信し得る。本技法は、一般に、リスト0およびリスト1を構成することと、リストCについての構成情報を示すように定義されたBスライスのスライスヘッダにおけるシンタックス要素の1つまたは複数を復号することと、シンタックス要素に基づいてリストCについての参照ピクチャリストの構成を実行することとを含む。0040より詳細には、本技法によれば、ビデオデコーダ30は、リストCが単方向予測に使用されるかどうかを示すように定義されたBスライスのスライスヘッダにおけるシンタックス要素のうちの1つまたは複数を復号する。リストCが単方向予測に使用されるとき、ビデオデコーダ30は、リストCで識別された参照ピクチャの数と、リストCにおける各エントリのリスト0またはリスト1からの参照ピクチャの参照インデックスとを含めて、リストCの中身が、ビデオデコーダ30によってリスト0およびリスト1から構成されるべき方法を明示的にシグナリングするように定義された1つまたは複数のシンタックス要素をさらに復号することができる。次いで、ビデオデコーダ30は、シンタックス要素を使用して、リスト0およびリスト1のうちの少なくとも1つからの参照ピクチャを含むリストCを構成することができる。0041また、ビデオデコーダ30は、ビデオブロックがリスト0およびリスト1から双予測されるBiか、リストCから単方向予測されるPred_LCかを決定するために、Bスライスの各符号化されたビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちinter_pred_idcを復号することができる。インター予測ステータスがBiであるとき、ビデオデコーダ30は、それぞれリスト0およびリスト1における参照ピクチャを指す2つの動きベクトルによる双予測を使用して、ビデオブロックを復号することができる。インター予測ステータスがPred_LCであるとき、ビデオデコーダ30は、リストCにおける参照ピクチャを指す単一の動きベクトルによる単方向予測を使用して、ビデオブロックを復号することができる。上記で説明したように、Bスライスは、通常のBスライスまたはGPBスライスのいずれかとすることができる。いずれにせよ、本技法によれば、インター予測ステータスシンタックス要素は、2つのステータス、すなわち、リストCからの単方向予測、またはリスト0およびリスト1からの双予測のみを有し、したがって、1ビットのみを消費する。0042リストCがリスト0とリスト1の両方からのあらゆる参照ピクチャを必ずしも含むとは限らないので、本技法は、リストCに含まれる参照ピクチャの数を明示的にシグナリングすることを含む。ビデオデコーダ30がリストCに含まれる参照ピクチャの数を知らない場合、ビデオデコーダ30は、リストCを構成することができず、また、コード化されたBスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、すなわち明示的なシグナリング無しに、ビデオデコーダ30でリストCを自動的に構成することは、複雑な復号プロセスを必要とし得る。0043JCT-VCは、HEVC標準の開発に取り組んでいる。HEVCの規格化の取り組みは、HEVCテストモデルHMと呼ばれるビデオコード化デバイスの発展的モデルに基づく。HMは、たとえば、ITU-TH.264/AVCに従う既存のデバイスに対してビデオコード化デバイスのいくつかの追加の能力を仮定する。たとえば、H.264は9つのイントラ予測符号化モードを提供するが、HMは33個ものイントラ予測符号化モードを提供し得る。0044一般に、HMの作業モデルは、ビデオフレームまたはピクチャが、ルーマとクロマの両方のサンプルを含む一連のツリーブロックまたは最大コーディングユニットLCUに分割され得ることを記載する。ツリーブロックは、H.264規格のマクロブロックと同様の目的を有する。スライスは、いくつかの連続的なツリーブロックをコード化順に含む。ビデオフレームまたはピクチャは、1つまたは複数のスライスに区分され得る。各ツリーブロックは、4分木に従ってコーディングユニットCUに分割され得る。たとえば、4分木のルートノードとしてのツリーブロックは、4つの子ノードに分割され得、各子ノードは、次に、親ノードとなり、別の4つの子ノードに分割され得る。4分木のリーフノードとしての、最終的な、分割されていない子ノードは、コード化ノード、すなわち、コード化されたビデオブロックを備える。コード化されたビットストリームに関連付けられたシンタックスデータは、ツリーブロックが分割され得る最大回数を定義することができ、コード化ノードの最小サイズを定義することもできる。0045CUは、コード化ノードと、コード化ノードに関連付けられた予測ユニットPUおよび変換ユニットTUとを含む。CUのサイズは、コード化ノードのサイズに対応し、正方形でなければならない。CUのサイズは、8×8ピクセルから最大64×64以上のピクセルを有するツリーブロックのサイズまでに及び得る。各CUは、1つまたは複数のPUと、1つまたは複数のTUとを含み得る。CUに関連付けられたシンタックスデータは、たとえば、CUを1つまたは複数のPUに区分することを記述し得る。区分モードは、CUが、スキップモード符号化またはダイレクトモード符号化されるか、イントラ予測モード符号化されるか、あるいはインター予測モード符号化されるかによって異なり得る。PUは、非正方形に区分され得る。CUに関連付けられたシンタックスデータは、たとえば、4分木に従って、CUを1つまたは複数のTUに区分することも記述し得る。TUは、正方形でなければならない。0046一般に、PUは、予測プロセスに関連したデータを含む。たとえば、PUがイントラモード符号化されるとき、PUは、PUについてのイントラ予測モードを記述するデータを含み得る。別の例として、PUがインターモード符号化されるとき、PUは、PUの動きベクトルを定義するデータを含み得る。PUの動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度たとえば、1/4ピクセル精度または1/8ピクセル精度、動きベクトルが指す参照ピクチャ、および/あるいは動きベクトルの参照ピクチャリストたとえば、リスト0またはリスト1、またはリスト0について説明し得る。0047一般に、TUは、変換および量子化のプロセスに使用される。1つまたは複数のPUを有するCUはまた、1つまたは複数の変換ユニットTU:transformunitを含み得る。予測の後、ビデオエンコーダ20は、PUに対応する残差値を計算することができる。残差値は、エントロピーコーディングのためのシリアル化変換係数serializedtransformcoefficientを生成するために、TUを使用して変換係数に変換され、量子化され、走査され得るピクセル差分値を備える。本開示は、一般的に、CUのコード化ノードを指すビデオブロックという用語を使用する。特定の場合において、本開示は、コード化ノードならびにPUおよびTUを含む、ツリーブロック、すなわち、LCUまたはCUを指すビデオブロックという用語も使用し得る。0048ビデオシーケンスは、一般的に、一連のビデオフレームまたはピクチャを含む。ピクチャのグループGOPは、一般に、一連の1つまたは複数のビデオフレームを備える。GOPは、GOP内に含まれるいくつかのピクチャを記述するシンタックスデータを、GOPのヘッダ中、1つまたは複数のピクチャのヘッダ中、または他の場所に含み得る。各ピクチャのスライスは、それぞれのスライスについての符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ20は、一般的に、ビデオデータを符号化するために、個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、CU内のコード化ノードに対応し得る。ビデオブロックは、サイズを固定することも変更することもでき、指定のコーディング規格に応じてサイズが異なることがある。0049一例として、HMは、様々なPUサイズでの予測をサポートする。特定のCUのサイズが2N×2Nであると仮定すると、HMは、2N×2NまたはN×NのPUサイズでのイントラ予測をサポートし、2N×2N、2N×N、N×2N、またはN×Nの対称的なPUサイズでのインター予測をサポートする。HMはまた、2N×nU、2N×nD、nL×2N、およびnR×2NのPUサイズでのインター予測のための非対称区分をサポートする。非対称区分では、CUの単方向は区分されないが、他の方向が25と75とに区分される。25の区分に対応するCUの部分は、nとその後ろに付くUp、Down、Left、またはRightという表示によって示される。したがって、たとえば2N×nUは、上部に2N×0.5NPUと下部に2N×1.5NPUとで水平方向に区分される2N×2NCUを指す。0050本開示では、NxNおよびNbyNは、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、16×1616x16ピクセルまたは16×1616by16ピクセルを指すために互換的に使用され得る。概して、16×16ブロックは、垂直方向に16ピクセルを有しy=16、水平方向に16ピクセルを有するx=16。同様に、N×Nブロックは、一般に、垂直方向にNピクセルを有し、水平方向にNピクセルを有し、ただし、Nは非負整数値を表す。ブロック中のピクセルは行と列に構成され得る。さらに、ブロックは、必ずしも、水平方向に垂直方向と同じ数のピクセルを有する必要はない。たとえば、ブロックは、N×Mピクセルを備え得、Mは必ずしもNに等しいとは限らない。0051CUのPUを使用したイントラ予測コーディングまたはインター予測コーディングの後、ビデオエンコーダ20は、CUのTUのための残差データを計算し得る。PUは、ピクセル領域とも呼ばれる空間領域においてピクセルデータを備え得、TUは、たとえば、残差ビデオデータへの離散コサイン変換DCT、整数変換、ウェーブレット変換、または概念的に同様の変換などの変換の適用後に、変換領域において係数を備え得る。残差データは、符号化されていないピクチャのピクセルと、PUに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ20は、CUのための残差データを含むTUを形成し、次いで、TUを変換して、CUのための変換係数を生成することができる。0052変換係数を生成するための任意の変換の後、ビデオエンコーダ20は、変換係数の量子化を実行することができる。量子化は、概して、さらなる圧縮を提供する、係数を表すために使用されるデータの量をできるだけ低減するために変換係数を量子化するプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度を低減することができる。たとえば、量子化中にnビット値がmビット値に切り捨てられ得、nはmよりも大きい。0053いくつかの例では、ビデオエンコーダ20は、エントロピー符号化され得るシリアル化ベクトルを生成するために、量子化変換係数を走査するためにあらかじめ定義された走査順序を利用し得る。他の例では、ビデオエンコーダ20は、適応型走査を実行し得る。量子化変換係数を走査して1次元ベクトルを形成した後、ビデオエンコーダ20は、たとえば、コンテキスト適応型可変長コーディングCAVLC:contextadaptivevariablelengthcoding、コンテキスト適応型バイナリ算術コーディングCABAC:contextadaptivebinaryarithmeticcoding、シンタックスベースコンテキスト適応型2値算術コーディングSBAC:syntaxbasedcontextadaptivebinaryarithmeticcoding、または別のエントロピー符号化方法に従って1次元ベクトルをエントロピー符号化し得る。また、ビデオエンコーダ20は、ビデオデータの復号の際に、ビデオデコーダ30によって使用するために符号化されたビデオデータに関連付けられたシンタックス要素をエントロピー符号化し得る。0054CABACを実行するために、ビデオエンコーダ20は、送信されるべきシンボルに、コンテキストモデル内のコンテキストを割り当て得る。コンテキストは、たとえば、シンボルの隣接値が非ゼロか否かに関係し得る。CAVLCを実行するために、ビデオエンコーダ20は、送信されるべきシンボルの可変長コードを選択し得る。VLCにおけるコードワードは、比較的短いコードが優勢シンボルに対応し、より長いコードが劣勢シンボルに対応するように構成され得る。このようにして、VLCの使用は、たとえば、送信されるべき各シンボルのために等長コードワードを使用するよりも、ビット節約を達成し得る。確率判断は、シンボルに割り当てられるコンテキストに基づき得る。0055図2は、結合された参照ピクチャリスト、リストC70についての構成情報を示すシンタックス要素を符号化し、リストC70を使用して、単方向予測されたビデオブロックを符号化するための技法を実施することができる例示的なビデオエンコーダ20を示すブロック図である。ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは時間的予測を利用して、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去する。イントラIモードは、いくつかの空間ベースの圧縮モードのいずれかを指すことがある。単方向予測Pモードまたは双方向予測Bモードなどのインターモードは、いくつかの時間ベースの圧縮モードのいずれかを指し得る。0056図2の例では、ビデオエンコーダ20は、モード選択ユニット40と、予測ユニット41と、参照ピクチャメモリ64と、加算器50と、変換ユニット52と、量子化ユニット54と、エントロピー符号化ユニット56とを含む。予測ユニット41は、動き推定ユニット42と、動き補償ユニット44と、イントラ予測ユニット46とを含む。ビデオブロック再構成のために、ビデオエンコーダ20はまた、逆量子化ユニット58と、逆変換ユニット60と、加算器62とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタリングするデブロッキングフィルタ図2に図示せずも含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器62の出力をフィルタ処理することになる。0057図2に示すように、ビデオエンコーダ20は、符号化されるべきビデオスライス内の現在のビデオブロックを受信する。スライスは、複数のビデオブロックに分割され得る。モード選択ユニット40は、誤差結果に基づいて現在のビデオブロックのためのコーディングモード、イントラまたはインターのうちの1つを選択し得、予測ユニット41は、得られたイントラコード化ブロックまたはインターコード化ブロックを、残差ブロックデータを生成するために加算器50に、また参照ピクチャとして使用するための符号化ブロックを再構成するために加算器62に供給し得る。0058予測ユニット41内のイントラ予測ユニット46は、空間圧縮を行うために、コーディングされるべき現在のブロックと同じフレームまたはスライス中の1つまたは複数の隣接ブロックに対する現在のビデオブロックのイントラ予測コーディングを実行し得る。予測ユニット41内の動き推定ユニット42および動き補償ユニット44は、時間圧縮を行うために、1つまたは複数の参照ピクチャ中の1つまたは複数の予測ブロックに対する現在のビデオブロックのインター予測コーディングを実行する。0059動き推定ユニット42は、ビデオシーケンスの所定のパターンに従ってビデオスライスのためのインター予測モードを決定するように構成され得る。所定のパターンは、シーケンス中のビデオスライスをPスライス、Bスライス、またはGPBスライスに指定し得る。動き推定ユニット42と動き補償ユニット44とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定ユニット42によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのPUの変位を示し得る。0060予測ブロックは、絶対値差分和SAD、差分2乗和SSD、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングすべきビデオブロックのPUにぴったり一致することがわかるブロックである。いくつかの例では、ビデオエンコーダ20は、参照ピクチャメモリ64に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ20は、参照ピクチャの1/4ピクセル位置、1/8ピクセル位置、または他の分数ピクセル位置の値を計算し得る。したがって、動き推定ユニット42は、フルピクセル位置と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。0061動き推定ユニット42は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライスにおけるビデオブロックのPUのための動きベクトルを計算する。参照ピクチャは、第1の参照ピクチャリストリスト066および/または第2の参照ピクチャリストリスト168から、または、本開示の技法によれば、結合された参照ピクチャリストリストC70から選択され得る。リスト066およびリスト168は、参照ピクチャメモリ64に記憶される復号された参照ピクチャに基づいて構成され得る。リストC70は、リスト066およびリスト168のうちの少なくとも1つにおいて識別される参照ピクチャを含むように構成され得る。概して、参照ピクチャリストは、代替的に参照フレームリストと呼ばれることがある。0062一例として、インターコード化スライスがPスライスを備えるとき、動き推定ユニット42は、過去の参照ピクチャについての識別子を含むリスト066における参照ピクチャを指す単一の動きベクトルで、Pスライスのビデオブロックを単方向予測することができる。本開示の技法によれば、インターコード化スライスがBスライスを備えるとき、動き推定ユニット42は、リスト066およびリスト168における参照ピクチャを指す2つの動きベクトルで、Bスライスのビデオブロックを双予測する、またはリストC70における参照ピクチャを指す単一の動きベクトルで、Bスライスのビデオブロックを単方向予測することができる。0063通常のBスライスでは、リスト066は、過去の参照ピクチャについての識別子を、リスト168は、将来の参照ピクチャについての識別子を、すなわち、各ピクチャに関連付けられたピクチャ順序カウントPOC値によって示され得る表示順で含み得る。BスライスがGPBスライスを備えるとき、リスト066とリスト168の両方は、同じ時間的方向の参照ピクチャを含み得る。GPBスライスの特定の一例では、リスト0およびリスト1は同一でもよい。その場合、リスト066およびリスト168は、同数のピクチャNとして示されるを有し、リスト066における参照インデックスii<Nを有する任意のピクチャは、リスト168における参照インデックスiを有するピクチャと同じである。したがって、リスト066およびリスト168のうちの少なくとも1つからの参照ピクチャを含むリストC70は、現在のピクチャに対する前方と後方の両方の時間的方向の参照ピクチャを含み得る。0064動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56と動き補償ユニット44とに送る。動き補償ユニット44によって実行される動き補償は、動き推定によって求められた動きベクトルに基づいて予測ブロックを取り込むかまたは生成することを含んでもよい。現在のビデオブロックのPUについての動きベクトルを受信すると、動きベクトルがリスト066、リスト168またはリストC70のうちの1つにおいて、動き補償ユニット44が指す予測ブロックの位置を特定することができる。ビデオエンコーダ20は、コード化される現在のビデオブロックのピクセル値から、予測ブロックのピクセル値を減算し、ピクセル差値を形成することによって、残差ビデオブロックを形成する。ピクセル差値は、ブロックの残差データを形成し、ルーマおよびクロマの差分成分を含み得る。加算器50は、この減算演算を実行する1つまたは複数の構成要素を表す。0065動き補償ユニット44は、ビデオスライスのビデオブロックを復号する際、ビデオデコーダ30によって使用するための、ビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を生成することもできる。たとえば、動き補償ユニット44は、ビデオスライスレベルでリスト066、リスト168、およびリストC70についての構成情報を示すように定義されたシンタックス要素を生成することができる。ビデオデコーダ30は、これらのシンタックス要素を使用して、最初にリスト0およびリスト1を構成し、次いで、リスト0およびリスト1から1つまたは複数の参照ピクチャを含むように、結合された参照ピクチャリストを構成し得る。次いで、ビデオデコーダ30は、参照ピクチャリストにおける1つまたは複数の参照ピクチャに関して、元のビデオブロックを復号することができる。0066さらに、動き補償ユニット44は、ビデオブロックがリスト066およびリスト168から双予測されるBiか、リストC70から単方向予測されるPred_LCか、を示すために、ビデオスライスの各コード化ビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちinter_pred_idcを生成する。単方向予測のために、リスト066およびリスト168からの参照ピクチャをリストC70に結合するとき、Bスライスにおけるビデオブロックについてのインター予測ステータスは、BiおよびPred_LCの2つのみが可能であり、これは、1ビットを消費する。したがって、本技法によって、リスト0およびリスト1が同一であるかどうかにかかわらず、GPBスライスを含むBスライスにおけるビデオブロックについてのインター予測ステータスのコード化のコストが低減する。0067しかしながら、Bスライスにおけるビデオブロックを復号するためにビデオデコーダ30で結合された参照ピクチャリストを構成するとき、いくつかの問題が生じ得る。たとえば、ビデオデコーダ30は、リストC70に含まれるようにリスト066とリスト168の両方からのあらゆる参照ピクチャを選択しない場合がある。ビデオデコーダ30がリストC70に含まれる参照ピクチャの数を知らない場合、ビデオデコーダ30は、結合された参照ピクチャリストを構成することができず、また、コード化されたBスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、ビデオデコーダ30で結合された参照ピクチャリストを自動的に構成することは、複雑な復号プロセスを必要とし得る。本開示で説明する例示的な技法によれば、リストC70がBスライスの単方向予測に使用されるとき、ビデオエンコーダ20は、符号化されたビデオデータで、リストC70の中身がビデオデコーダ30によってリスト066およびリスト168から構成されるべき方法を明示的にシグナリングするために、1つまたは複数のシンタックス要素を符号化する。具体的には、シンタックス要素は、リストC70における参照ピクチャの数、および、リストC70のエントリごとの、リスト066またはリスト168からの参照ピクチャのインデックスを示し得る。0068一例では、ビデオデコーダ20は、リストC70に含まれるようにリスト066とリスト168の両方におけるすべての参照ピクチャを選択し得る。この場合、リストC70における参照ピクチャの数は、リスト066およびリスト168における参照ピクチャの数の合計に等しくなり得る。しかしながら、他の場合には、ビデオエンコーダ20は、リストC70における参照ピクチャの数が、リスト066およびリスト168における参照ピクチャの総数未満となり得、ビデオデコーダ30に知られていないような柔軟な方法で、リストC70を構成するように構成され得る。0069場合によっては、リスト066およびリスト168における1つまたは複数の参照ピクチャ間に部分的な重複があり得る。特に、リスト066およびリスト168は、各リストにおいて異なるいくつかの参照ピクチャ、および各リストにおいて同じいくつかの参照ピクチャを含み得、したがって、参照ピクチャのうちのいくつかが、リスト066とリスト168の両方に現れ得る。いくつかの実装形態では、ビデオエンコーダ20は、リストCにおける参照ピクチャの重複を回避するように設計され得る。たとえば、リストC70が冗長の参照ピクチャをなくすように構成されているとき、リストC70における参照ピクチャの数は、リスト066およびリスト168における参照ピクチャの数の合計未満になり得る。他の例では、ビデオエンコーダ20は、リストC70に含まれるようにリスト066およびリスト168におけるすべてよりも少ない参照ピクチャを選択するように構成され得る。したがって、リスト066およびリスト168のピクチャがリストC70に追加されるとき、一方のリストにはあるが、他方のリストにはない参照ピクチャの追加のため、および/または両方のリストにある冗長な参照ピクチャの随意の消去のため、リストC70における参照ピクチャの数は不確実でもよい。0070ビデオデコーダ30が結合された参照ピクチャリストを構成できるようにするために、本開示の例によれば、ビデオエンコーダ20は、リストC70における参照ピクチャの数、およびリストC70における各エントリをBスライスのスライスヘッダで明示的にシグナリングするように構成され得る。ビデオエンコーダ20は、たとえば、Bスライスのスライスヘッダにおいてリスト066およびリスト168についての参照ピクチャリスト変更シンタックステーブルをシグナリングした後、リストC70についての構成情報をシグナリングすることができる。代わりに、ビデオエンコーダ20は、スライスヘッダにおいて参照ピクチャリスト変更シンタックステーブルをシグナリングする前に、リストC70についての構成情報をシグナリングすることができる。結合された参照ピクチャリストシンタックステーブル、すなわち、ref_pic_list_combination、および参照ピクチャリスト変更または並べ替えシンタックステーブル、すなわち、ref_pic_list_modification、および他のスライスヘッダシンタックス要素を含む例示的なスライスヘッダについて、以下の表1に示され、図3に関してより詳細に説明する。0071さらに、ビデオエンコーダ20は、結合された参照ピクチャリストを構成する際に、ビデオデコーダ30によって使用するための他のシンタックス要素を明示的にシグナリングすることができる。たとえば、結合された参照ピクチャリストシンタックステーブルは、リストC70がBスライスにおけるビデオブロックの単方向予測に使用されるかどうかを示す。リストC70が単方向予測に使用されるとき、ビデオエンコーダ20は、リストC70がリスト066およびリスト168から構成される、または単に参照ピクチャリストのうちの1つに等しくなるように設定されているかを示すために、1ビットフラグ、すなわち、ref_pic_list_combination_flagをシグナリングする。たとえば、リスト066およびリスト168が同一の場合、すなわち、BスライスがGPBスライスである場合、ビデオエンコーダ20は、リスト066またはリスト168に等しくなるように、リストC70を設定することができる。この場合、ビデオエンコーダ20は、リストC70の中身がリスト066およびリスト168から構成されるべき方法を、ビデオデコーダ30に明示的にシグナリングするために、追加のシンタックス要素を符号化しない。代わりに、リストC70における参照ピクチャの数は、リスト066またはリスト168のいずれかに含まれる参照ピクチャの数に基づいて示され得る。0072リストC70がリスト066およびリスト168から構成されるとき、結合された参照ピクチャリストシンタックステーブルは、リストC70における参照ピクチャの数、すなわち、num_com_ref_list_active_minus1を明示的にシグナリングするシンタックス要素を含む。代替として、ビデオエンコーダ20は、リスト066およびリスト168における重複する参照ピクチャの数、すなわち、リスト066およびリスト168において同じであるピクチャの数をシグナリングするように構成され得る。結合された参照ピクチャリストシンタックステーブルは、たとえば、重複する参照ピクチャの数を明示的にシグナリングするシンタックス要素、すなわち、num_overlapped_picsを含み得る。他の例では、このシンタックス要素は、スライスヘッダにおいて明示的にシグナリングされ得る。この代替では、ビデオデコーダ30は、リスト066における示された参照ピクチャの数、すなわち、num_ref_idx_l0_active_minus1、リスト1における参照ピクチャの示された数、すなわち、num_ref_idx_l1_active_minus1、および重複する参照ピクチャの示された数に基づいて、リストC70における参照ピクチャの数を決定することができる。特に、ビデオデコーダ30は、num_ref_idx_l0_active_minus1num_ref_idx_l1_active_minus12-num_overlapped_picsとして、リストC70における参照ピクチャの数を計算することができる。0073リストC70がリスト066およびリスト168から構成されるとき、デコーダ30によって使用するためのエンコーダ20によって準備される結合された参照ピクチャリストシンタックステーブルは、現在の参照ピクチャリスト、リスト066またはリスト168のいずれか、および現在のリストにおける参照ピクチャの参照インデックスを含めて、リストC70における各エントリを明示的にシグナリングするシンタックス要素も含む。より詳細には、ビデオエンコーダ20は、1ビットフラグ、すなわち、pic_from_list_0_flagiをシグナリングし得、この場合、iは、リストC70におけるエントリ内の参照ピクチャの現在の参照ピクチャリストを示すリストC70におけるエントリを識別する。ビデオエンコーダ20は、シンタックス要素、すなわち、ref_idx_list_curriをシグナリングすることができ、この場合、iは、現在の参照ピクチャリストにおける参照ピクチャのインデックスを示すリストC70におけるエントリを識別する。0074場合によっては、リストC70をシグナリングするためのビットの消費は、異なる実装形態において単独で、または一緒に使用され得る少なくとも2つの手法を使用して低減され得る。まず、ビデオエンコーダ20は、リストC70が明示的にシグナリングされるか、リスト066およびリスト168のうちの1つに等しいかどうかを示すために、2ビットフラグ、すなわち、com_list_equal_idcをシグナリングするように構成され得る。たとえば、リスト066およびリスト168のうちの一方が他方のリストのサブセットであるとき、ビデオエンコーダ20は、リストC70を他方のリストに等しくなるように設定する。この場合、リストC70は、サブセットを形成するより小さいリストからのピクチャのすべてを本質的に含む、リスト066およびリスト168のうちより大きい方の参照ピクチャのすべてを含む。リストC70がリスト066またはリスト168のいずれかに等しい場合、ビデオエンコーダ20は、リストC70の中身がビデオデコーダ30によってリスト066およびリスト168から構成されるべき方法を明示的にシグナリングするために、任意の追加のシンタックス要素を符号化する必要はない。代わりに、リストC70における参照ピクチャの数は、リスト066またはリスト168のいずれかに含まれる参照ピクチャの数に基づいて示され得る。0075第2に、ビデオエンコーダ20は、リストC70におけるエントリごとの参照ピクチャのインデックスを差分的にシグナリングするように構成され得る。この場合、リストC70で参照ピクチャの実際のインデックス値を符号化する代わりに、ビデオエンコーダ20は、現在の参照ピクチャリストにおける参照ピクチャのインデックスとリストC70における前のエントリに追加された同じ参照ピクチャリストにおける前の参照ピクチャのインデックスとの間の差たとえば、オフセットを示すために、参照ピクチャについてのインデックスデルタ、すなわち、delta_ref_idx_list_curr_minus1を符号化する。リスト066およびリスト168の所与の一方からリストC70に含まれる参照ピクチャのインデックス値は、一般的に、昇順に、小さい増分で増加する。0076この場合、ビデオデコーダ30は、示されたインデックスデルタ、すなわち、delta_ref_idx_list_curr_minus1、および現在の参照ピクチャリストからの前の参照ピクチャの前に示されたインデックス、すなわち、xが現在の参照ピクチャリストを示す場合、PreRefIdxLxに基づいて、現在の参照ピクチャリストにおける参照ピクチャのインデックスを決定することができる。特に、ビデオデコーダ30は、リストC70における現在の参照ピクチャのインデックス、すなわちCurrRef_Idx_Lxをdelta_ref_idx_list_curr_minus11PreRefIdxLxとして計算することができる。結合された参照ピクチャリストシンタックステーブル、すなわち、ref_pic_list_combinationの例について、表2および表3で以下に示され、図3に関してより詳細に説明されている。0077動き補償ユニット44が、現在のビデオブロックについての予測ブロックを生成した後、ビデオエンコーダ20は、現在のビデオブロックから予測ブロックを減算することによって、残差ビデオブロックを形成する。残差ブロックにおける残差ビデオデータは、1つまたは複数のTUに含まれ得、変換ユニット52に適用され得る。変換ユニット52は、変換、たとえば離散コサイン変換DCTまたは概念的に類似の変換を使用して、残差ビデオデータを残差変換係数に変換する。変換ユニット52は、ピクセル領域からの残差ビデオデータを周波数領域などの変換領域に変換し得る。0078変換ユニット52は、得られた変換係数を量子化ユニット54に送り得る。量子化ユニット54は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減することができる。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化ユニット54は、次いで、量子化変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット56が走査を実行し得る。0079量子化の後、エントロピー符号化ユニット56は、量子化変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット56は、コンテキスト適応型可変長コーディングCAVLC:contextadaptivevariablelengthcoding、コンテキスト適応型バイナリ算術コーディングCABAC:contextadaptivebinaryarithmeticcoding、または別のエントロピー符号化技法を実行し得る。エントロピー符号化ユニット56によるエントロピー符号化の後に、符号化されたビットストリームは、ビデオデコーダ30に送信される、またはビデオデコーダ30によって後で送信する、または取り出すためにアーカイブされ得る。0080エントロピー符号化ユニット56はまた、コード化されている現在のビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化し得る。たとえば、エントロピー符号化ユニット56は、ビデオスライスレベルでリスト066、リスト168、およびリストC70についての構造情報を示すように定義されたシンタックス要素をエントロピー符号化し得る。本技法によれば、エントロピー符号化ユニット56は、リストC70の中身がビデオデコーダ30によってリスト066およびリスト168から構成されるべき方法を明示的にシグナリングするシンタックス要素をエントロピー符号化し得る。さらに、エントロピー符号化ユニット56は、ビデオブロックがリスト066およびリスト168から双予測されるBiか、リストC70から単方向予測されるPred_LCかを示すために、ビデオスライスの各コード化ビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちinter_pred_idcをエントロピー符号化し得る。ビデオデコーダ30は、参照ピクチャリストを構成し、ビデオエンコーダ20によって符号化された元のビデオブロックを再構成するために、これらのシンタックス要素を使用することができる。0081逆量子化ユニット58および逆変換ユニット60は、それぞれ逆量子化および逆変換を適用して、参照ピクチャの参照ブロックとして後で使用するために、ピクセル領域において残差ブロックを再構成する。動き補償ユニット44は、残差ブロックをリスト066またはリスト168内の参照ピクチャのうちの1つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット44はまた、再構成された残差ブロックに1つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器62は、再構成された残差ブロックを動き補償ユニット44によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ64に記憶するための参照ブロックを生成する。参照ブロックは、後続のビデオフレームまたはピクチャ中のブロックをインター予測するために、動き推定ユニット42および動き補償ユニット44によって参照ブロックとして使用され得る。0082図3は、シンタックス要素を使用して、結合された参照ピクチャリスト、リストC98を構成し、リストC98を使用して、単方向予測されたビデオブロックを復号するための技法を実施することができる例示的なビデオデコーダ30を示すブロック図である。図3の例では、ビデオデコーダ30は、エントロピー復号ユニット80と、予測ユニット81と、逆量子化ユニット86と、逆変換ユニット88と、加算器90と、参照ピクチャメモリ92とを含む。予測ユニット81は、動き補償ユニット82と、イントラ予測ユニット84とを含む。ビデオデコーダ30は、いくつかの例では、図2のビデオエンコーダ20に関して説明した符号化パスとは概して逆の復号パスを実行し得る。0083復号プロセス中に、ビデオデコーダ30は、ビデオエンコーダ20から、符号化されたビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化されたビデオビットストリームを受信する。ビデオデコーダ30のエントロピー復号ユニット80は、量子化係数、動きベクトル、および他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット80は、予測ユニット81に動きベクトルと他のシンタックス要素とを転送する。ビデオデコーダ30は、ビデオスライスレベルおよび/またはビデオブロックレベルでシンタックス要素を受信することができる。0084ビデオスライスがイントラコード化されたIスライスとしてコード化されるとき、予測ユニット81のイントラ予測ユニット84は、シグナリングされたイントラ予測モードと現在のフレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックについての予測データを生成し得る。ビデオフレームがインターコード化されたすなわちB、P、またはGPBスライスとしてコード化されると、予測ユニット81の動き補償ユニット82は、エントロピー復号ユニット80から受信された動きベクトルおよび他のシンタックス要素に基づいて現在のビデオフレームのビデオブロックの予測ブロックを生成する。0085動き補償ユニット82は、動きベクトルと他のシンタックス要素とを解析することによって現在のビデオスライスのビデオブロックについての予測情報を決定し、予測情報を使用して、復号されている現在のビデオブロックのための予測ブロックを生成する。たとえば、動き補償ユニット82は、ビデオスライスのビデオブロックをコード化するために使用される予測モードたとえば、イントラまたはインター予測、インター予測スライスタイプたとえば、Bスライス、Pスライス、またはGPBスライス、スライスのための参照ピクチャリストの1つまたは複数についての構成情報、スライスのインター符号化されたビデオブロックごとの動きベクトル、スライスのインターコード化されたビデオブロックごとのインター予測ステータス、および現在のビデオスライスにおけるビデオブロックを復号するための他の情報を決定するために、受信されたシンタックス要素のいくつかを使用する。0086動き補償ユニット82はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット82は、ビデオブロックの符号化中にビデオエンコーダ20によって使用される補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。動き補償ユニット82は、受信したシンタックス要素からビデオエンコーダ20によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。0087予測ブロックは、第1の参照ピクチャリストリスト094および/または第2の参照ピクチャリストリスト196から、または、本開示の技法によれば、結合された参照ピクチャリストリストC98から生成され得る。一例として、インターコード化スライスがPスライスを備えるとき、動き補償ユニット82は、過去の参照ピクチャについての識別子を含むリスト094における参照ピクチャを指す単一の動きベクトルに基づいて、Pスライスの単方向予測されたビデオブロックの予測ブロックを生成することができる。本開示の技法によれば、インターコード化スライスがBスライスを備えるとき、動き補償ユニット82は、リスト094およびリスト196における参照ピクチャを指す2つの動きベクトルに基づいて、Bスライスの双予測されたビデオブロック、またはリストC70における参照ピクチャを指す単一の動きベクトルに基づいて、Bスライスの単方向予測されたビデオブロックについての予測ブロックを生成することができる。0088ビデオデコーダ30は、参照ピクチャメモリ92に記憶される参照ピクチャに基づいて、デフォルトの構成技法を使用して、リスト094およびリスト196を構成することができる。リスト094およびリスト196を構成するために、ビデオデコーダ30は、リスト094およびリスト196ごとに、参照ピクチャリスト初期化および参照ピクチャリスト変更すなわち、並べ替えを実行する。リスト094を構成するために、たとえば、ビデオデコーダ30は、所定の順序に従って参照ピクチャメモリ92からの参照ピクチャをリスト094に追加することによって、参照ピクチャリスト初期化を実行することができる。たとえば、ビデオデコーダ30は、参照ピクチャのフレーム番号の順、すなわち、復号順、または参照ピクチャのピクチャ順序カウントPOC番号の順、すなわち表示順に基づいて、リスト094を初期化することができる。次いで、ビデオデコーダ30は、明示的にシグナリングされた順序に基づいて、リスト094に含まれる参照ピクチャを並べ替えるために、参照ピクチャリスト変更を実行することができる。初期化後、ビデオデコーダ30は、リスト094に含まれるべきアクティブな参照ピクチャの数を超えないように、リスト094を切り捨てることができる。場合によっては、ビデオデコーダ30は、明示的にシグナリングされた重みおよびオフセット値に基づいて、予測重みおよびオフセットをリスト094における参照ピクチャに適用することもできる。0089本開示の技法によれば、ビデオデコーダ30は、シンタックス要素を使用して、リスト094およびリスト196のうちの少なくとも1つからの参照ピクチャを含むように、リストC98を構成することができる。通常のBスライスについて、リスト094は、過去の参照ピクチャのための識別子を含み得、リスト196は、将来の参照ピクチャのための識別子を含み得る。BスライスがGPBスライスを備えるとき、リスト094とリスト196の両方は、同じ時間的方向の参照ピクチャを含み得る。GPBスライスの特定の一例では、リスト094およびリスト196は同一でもよい。その場合、リスト094およびリスト196は、同数のピクチャNとして示されるを有し、リスト094における参照インデックスii<Nを有する任意のピクチャは、リスト196における参照インデックスiを有するピクチャと同じである。したがって、リスト094およびリスト196のうちの少なくとも1つからの参照ピクチャを含むリストC98は、現在のピクチャに対して前方と後方の両方の時間的方向の参照ピクチャを含み得る。0090しかしながら、Bスライスにおけるビデオブロックを復号するためにビデオデコーダ30で結合された参照ピクチャリストを構成するとき、いくつかの問題が生じ得る。たとえば、リストC98は、必ずしも、リスト094とリスト196の両方からのあらゆる参照ピクチャを含んでいるとは限らない場合がある。ビデオデコーダ30がリストC98に含まれる参照ピクチャの数を知らないとき、ビデオデコーダ30は、リストC98を構成することができず、また、コード化されたBスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、ビデオデコーダ30で結合された参照ピクチャリストを自動的に構成することは、複雑な復号プロセスを必要とし得る。本技法によれば、リストC98がBスライスの単方向予測に使用されるとき、ビデオデコーダ30は、リストC98の中身がビデオデコーダ30によってリスト094およびリスト196から構成されるべき方法を明示的にシグナリングする1つまたは複数のシンタックス要素を受信する。具体的には、シンタックス要素は、リストC98における参照ピクチャの数、および、リストC98のエントリごとの参照ピクチャのインデックスを示し得る。0091リストC98を構成するために、ビデオデコーダ30は、たとえば、Bスライスのスライスヘッダにおけるリスト094およびリスト196についての参照ピクチャリスト変更または並べ替えシンタックステーブルの後、リストC98についての構成情報を受信することができる。代わりに、ビデオデコーダ30は、スライスヘッダにおける参照ピクチャリスト変更並べ替えシンタックステーブルのシグナリングする前に、リストC98についての構成情報を受信することができる。結合された参照ピクチャリストシンタックステーブル、すなわち、ref_pic_list_combination、および参照ピクチャリスト変更または並べ替えシンタックステーブル、すなわち、ref_pic_list_modification、および他のスライスヘッダシンタックス要素を含む例示的なスライスヘッダは、以下の表1に示される。0092表1、ならびに以下の表2および表3のC列は、現在のビデオブロックのどのデータパーティション中にシンタックス要素が含まれるのかを定義する各シンタックス要素のカテゴリーを示す。表1の記述子列は、ビデオデコーダ30におけるシンタックス要素の適切なパーシングを可能にするためにシンタックス要素のために使用されるコーディングのタイプを示す。たとえば、記述子uevは、指数ゴロムコーディングexponentialGolombcodingを示す。0093さらに、ビデオデコーダ30は、リストC98を構成するために使用される他のシンタックス要素を受信し得る。以下の表2は、結合された参照ピクチャリストシンタックステーブル、すなわちref_pic_list_combinationの第1の例を表す。0094結合された参照ピクチャリストシンタックステーブルは、最初に、リストC98がBスライスにおけるビデオブロックの単方向予測に使用されるかどうかを示す。リストC98がBスライスの単方向予測に使用されるとき、ビデオデコーダ30は、リストC98の中身がビデオデコーダ30によってリスト094およびリスト196から構成されるべき方法を明示的にシグナリングする1つまたは複数のシンタックス要素を受信する。表2に示すように、現在のスライスタイプがBスライスである場合、ビットフラグ、すなわち、ref_pic_list_combination_flagは、リストC98がBスライスにおけるビデオブロックの単方向予測に使用されることになっていることを示す。ref_pic_list_combination_flagの値は、リストC98がリスト094およびリスト196から構成されることになっているか、単に参照ピクチャリストのうちの1つに等しくなるように設定されるのみであるかを示す。より詳細には、1に等しいref_pic_list_combination_flagの値は、ビデオデコーダ30がリスト094およびリスト196からリストC98を構成することを示す。00950に等しいref_pic_list_combination_flagの値は、リスト094およびリスト196が同一であり、すなわち、BスライスがGPBスライスであることを示し、ビデオエンコーダ30は、リスト094またはリスト196に等しくなるように、リストC98を設定することができる。リストC96がリスト094またはリスト196から構成されない場合、ビデオデコーダは、リストC98の中身がビデオデコーダ30によってリスト094およびリスト196から構成されるべき方法を明示的にシグナリングする追加のシンタックス要素を受信しない。代わりに、リストC98における参照ピクチャの数は、リスト094またはリスト196のいずれかに含まれる参照ピクチャの数に基づいて決定され得る。0096いずれの場合も、ref_pic_list_combination_flagが0または1に等しい値を有するとき、ビデオデコーダ30は、Bスライスにおける単方向予測されたビデオブロックを復号するように、リストC98を構成する。上記で説明したように、リストC98を使用することによって、参照ピクチャリストが同一であるとき、GPBスライスの場合のように、2ビットを消費する3つのステータスBi、Pred_L0、Pred_L1から1ビットを消費する2つのステータスBi、Pred_LCにシグナリングを低減するように、Bスライスにおける各ビデオブロックに関連付けられたinter_pred_idcシンタックス要素を変更することができる。結果として、本技法は、リストC98に関して単方向予測されるBスライスにおけるビデオブロックについての効率をかなり高めることができる。代わりに、0に等しいref_pic_list_combination_flagの値は、単に、結合されたリストが現在のスライスに使用されないことを示し得る。0097ref_pic_list_combination_flagが1に等しい値を有する場合、単にリストC98をリスト094またはリスト196に等しくなるように設定する代わりに、ビデオデコーダ30は、リストC98を生成するために、ビデオエンコーダ20によって指定された方法で、リスト094およびリスト196から参照ピクチャを選択する。特に、上記の表2をさらに参照すると、ref_pic_list_combination_flagが1に等しい値を有する場合、すなわち、リストC98がリスト094およびリスト196から構成される場合、ビデオデコーダ30は、リストC98におけるピクチャの明示的にシグナリングされた数、すなわち、num_com_ref_list_active_minus1を受信する。num_com_ref_list_active_minus1シンタックス要素は、リストC98についてリスト094およびリスト196から選択された参照ピクチャの総数に等しい、リストC98における参照ピクチャの数を指定する。この数は、ビデオエンコーダ20の構成に応じて、リスト094およびリスト196における参照ピクチャの総数に等しくてもよく、または等しくなくてもよい。0098代替として、リストC98における参照ピクチャの数を受信する代わりに、ビデオデコーダ30は、リスト094およびリスト196における明示的にシグナリングされた重複する参照ピクチャの数、すなわち、num_overlapped_picsを受信することができる。この場合、ビデオデコーダ30は、リスト094における示された参照ピクチャの数、すなわち、num_ref_idx_l0_active_minus1、リスト196における参照ピクチャの示された数、すなわち、num_ref_idx_l1_active_minus1、および重複する参照ピクチャの示された数に基づいて、リストC70における参照ピクチャの数を決定することができる。特に、ビデオデコーダ30は、num_ref_idx_l0_active_minus1num_ref_idx_l1_active_minus12-num_overlapped_picsとして、リストC98における参照ピクチャの数を計算することができる。0099上記の表2に示すように、ビデオデコーダ30は、次いで、num_com_ref_list_active_minus1に等しい数のピクチャを有するリストC98を構成するために、ループi=0からi=num_com_ref_list_active_minus1までに入る。表2の追加のシンタックス要素によって定義される構成ループの開始時に、リストC98は、空に設定される。ループにおいて、シンタックス要素は、現在の参照ピクチャリスト、リスト094またはリスト196のいずれか、および現在のリストにおける参照ピクチャの参照インデックスを含めて、リストC98における各エントリを明示的にシグナリングする。0100より詳細には、1ビットフラグ、すなわち、iがリストC98におけるエントリを識別する場合、pic_from_list_0_flagiは、リストC98におけるエントリに追加されるべき参照ピクチャの現在の参照ピクチャリストを示す。pic_from_list_0_flagの値が1に等しいとき、リストC98におけるエントリに追加されるべき現在の参照ピクチャは、リスト094からのものであり、CurrRefPicListシンタックス要素によって示される現在の参照ピクチャリストは、リスト094である。pic_from_list_0_flagの値が0に等しいとき、リストC98におけるエントリに追加されるべき現在の参照ピクチャは、リスト196からのものであり、CurrRefPicListによって示される現在の参照ピクチャリストは、リスト196である。ビデオエンコーダ20によって指定されるように、構成ループが、リスト094またはリスト196からのピクチャについてのインデックスを、たとえば交互に、または他のパターンで、リストC98に選択的に追加するように、pic_from_list_0_flagの状態は、iの値によってインデックスを付けられるアレイに従って変わり得る。0101上記の表2をさらに参照すると、iがリストC70におけるエントリを識別する場合、シンタックス要素、すなわち、ref_idx_list_curriは、pic_from_list_0_flagの値に応じて、リストC98におけるエントリに追加されるべき、CurrRefPicList、すなわちリスト094またはリスト196における現在の参照ピクチャの参照インデックスを示す。iの値が0からnum_com_ref_list_active_minus1まで連続的に増分するので、ビデオデコーダ30は、リストC98の終端において、現在の参照ピクチャの示された参照インデックスを付加する。各参照ピクチャリスト、リスト094またはリスト196における参照インデックスは、ビデオエンコーダ20の構成に応じて、連続的または非連続的に増分することができる。0102ループの各繰返しで、ビデオデコーダ30は、現在の参照ピクチャリスト、リスト094またはリスト196における別の参照ピクチャの示された参照インデックスを、リストC98の終わりに追加する。num_com_ref_list_active_minus1に等しいいくつかの繰返しを完了すると、ビデオデコーダ30は、リストC98を構成している。次いで、ビデオデコーダ30は、Bスライスにおける単方向予測されたビデオブロックを復号するためにリストC98を使用することができる。ビデオデコーダ30は、Bコーディングを2つのステータス、BiおよびPred_LCに制限する変更されたインター予測ステータスシンタックス要素に対応することもでき、この場合、Pred_LCは、リストC98に関する単方向予測を表す。0103表3は、代替のビット低減手法を含む、結合された参照ピクチャリストシンタックステーブル、すなわちref_pic_list_combinationの第2の例を表す。リストC70をシグナリングするためのビットの消費は少なくとも2つの手法を使用して低減され得、それは、異なる実装形態において単独で、または一緒に使用され得る。0104表3の例において、表2の場合のように、現在のスライスタイプがBスライスである場合、ビットフラグ、すなわち、ref_pic_list_combination_flagは、リストC98がBスライスにおけるビデオブロックの単方向予測に使用されることになっていることを示す。0に等しいref_pic_list_combination_flagの値は、リスト094およびリスト196が同一であり、すなわち、BスライスがGPBスライスであることを示し、ビデオエンコーダ30は、リスト094またはリスト196に等しくなるように、リストC98を設定することができる。1に等しいref_pic_list_combination_flagの値は、ビデオデコーダ30がリスト094およびリスト196からリストC98を構成することを示す。0105第1のビット低減手法として、リストC98がリスト094およびリスト196から構成されることになっているとき、ビデオデコーダ30は、2ビットフラグ、すなわちcom_list_equal_idcを受信することもでき、これは、リストC98が明示的にシグナリングされるか、リスト094に等しいか、リスト196に等しいかを示す。com_list_equal_idcフラグが0に等しい値を有する場合、リストC98は、ビデオエンコーダ20によって明示的にシグナリングされる。com_list_equal_idcフラグが1に等しい値を有する場合、リストC98は、リスト094に等しい。com_list_equal_idcフラグが2に等しい値を有する場合、リストC98は、リスト196に等しい。たとえば、リスト094およびリスト196のうちの一方が他方のリストのサブセットであるとき、他のリストに等しくなるように設定することによって、ビデオデコーダ30は、リストC98を構成する。この場合、リストC98は、サブセットを形成するより小さいリストからのピクチャのすべてを本質的に含む、リスト094およびリスト196のうちより大きい方の参照ピクチャのすべてを含む。0106リストC98が明示的にシグナリングされる場合、ビデオデコーダ30は、表2に関して上述した方法でリストC98を構成するために構成ループに入る。リストC98がリスト094またはリスト196のいずれかに等しい場合、ビデオデコーダ30は、リストC98の中身がビデオデコーダ30によってリスト094およびリスト196から構成されるべき方法を明示的にシグナリングする任意の追加のシンタックス要素を受信しない。代わりに、リストC98における参照ピクチャの数は、リスト094またはリスト196のいずれかに含まれる参照ピクチャの数に基づいて決定され得る。0107第2のビット低減手法として、ビデオデコーダ30は、リストC70におけるエントリごとに、参照ピクチャの差分的にシグナリングされたインデックスを受信することができる。この場合、リストC98について参照ピクチャの明示的にシグナリングされたインデックス値を受信する代わりに、ビデオデコーダ30は、現在の参照ピクチャリストにおける現在の参照ピクチャのインデックスとリストC98における前のエントリに追加された同じ参照ピクチャリストにおける前の参照ピクチャのインデックスとの間の差たとえば、オフセットを示すために、参照ピクチャについてのインデックスデルタ、すなわち、delta_ref_idx_list_curr_minus1を受信する。したがって、pic_from_list_0_flagおよびiの各値によって示される参照ピクチャリストごとに、ビデオデコーダ30は、リストC98の終わりに付加するために、現在の参照ピクチャリスト、リスト094またはリスト196から引き出すために特定の参照ピクチャを識別する差分的にコード化されたインデックスを示すdelta_ref_idx_list_curr_minus1シンタックス要素を受信する。0108この場合、ビデオデコーダ30は、示されたインデックスデルタ、すなわち、delta_ref_idx_list_curr_minus1、および現在の参照ピクチャリストからの前の参照ピクチャの前に示されたインデックス、すなわち、xが、リスト094またはリスト196のいずれかとして、現在の参照ピクチャリスト、CurrRefPicListを示す場合、PreRefIdxLxに基づいて、現在の参照ピクチャリストにおける参照ピクチャのインデックスを決定することができる。たとえば、pic_from_list_0_flagが1に等しい値を有するとき、リスト094を示すために、xは0に等しく、pic_from_list_0_flagが0に等しい値を有することを示すとき、リスト196を示すために、xは1に等しい。ビデオデコーダ30は、リストC70における参照ピクチャのインデックスを、CurrRef_Idx_Lxをdelta_ref_idx_list_curr_minus11PreRefIdxLxとして計算することができる。PreRefIdxL0およびPreRefIdxL1がループの開始時に-1に設定される。0109一例として、現在の参照ピクチャリストからの前のインデックスが2に等しく、現在の参照ピクチャリストからの現在のインデックスが3に等しい場合、デルタインデックスは1の値を有することができる。この場合、代替の技法は、3の明示的なインデックス値の代わりに、1のデルタインデックス値をコード化することによって現在の参照ピクチャのインデックス値をシグナリングするためのビットの消費を低減することができる。リスト094およびリスト196の所与の1つからリストC98に含まれる参照ピクチャのインデックス値は、一般的に、昇順に、小さい増分で増加するので、このビット低減は、一般に、すべてのシグナリングされたインデックス値に適用可能である。0110逆量子化ユニット86は、ビットストリーム中で与えられ、エントロピー復号ユニット80によって復号された、量子化変換係数を逆量子化inversequantize、すなわち、逆量子化dequantizeする。逆量子化プロセスは、各ビデオブロックについてビデオエンコーダ20によって計算される量子化パラメータを使用して量子化の程度を決定し、同様に、適用すべき逆量子化の程度を決定することを含み得る。逆変換ユニット88は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば逆DCT、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。0111動き補償ユニット82が、動きベクトルと他のシンタックス要素とに基づいて現在のビデオブロックのための予測ブロックを生成した後、ビデオデコーダ30は、逆変換ユニット88からの残差ブロックを動き補償ユニット82によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器90は、この加算演算を実行する1つまたは複数の構成要素を表す。必要に応じて、ブロッキネスアーティファクトを除去するために、デブロッキングフィルタを適用して、復号ブロックをフィルタ処理することもできる。次いで、所与のフレームまたはピクチャの復号されたビデオブロックは、その後の動き補償に使用される参照ピクチャを記憶する参照ピクチャメモリ92に記憶される。参照ピクチャメモリ92はまた、図1のディスプレイデバイス32などのディスプレイデバイス上での後の表示のための、復号されたビデオを記憶する。0112図4は、結合された参照ピクチャリスト、リストCを構成し、リストCを使用して、単方向予測されたビデオブロックをコード化する例示的な動作を示すフローチャートである。図示の動作について、図2のビデオエンコーダ20と図3のビデオデコーダ30とを参照しながら説明する。0113ビデオエンコーダ20は、符号化されるべき現在のビデオスライスのビデオブロックを受信する。現在のビデオスライスがBフレームに指定されるとき、ビデオエンコーダ20は、参照ピクチャメモリ64に記憶された復号された参照ピクチャに基づいて、リスト066とリスト168とを構成する100。ビデオエンコーダ20は、通常の参照ピクチャリスト構成手順に従って、リスト066およびリスト168を構成し得る。次いで、ビデオエンコーダ20は、リスト066および/またはリスト168から1つまたは複数の参照ピクチャを含むリストC70を構成する101。一例では、ビデオエンコーダ20は、リスト066およびリスト168の少なくとも1つから、リストC70に含まれるべき1つまたは複数の参照ピクチャを選択する。他の例では、ビデオエンコーダ20は、リストC70をリスト066およびリスト168のうちの1つに等しくなるように設定することによって、リストC70を構成することができる。0114さらに、ビデオエンコーダ20は、ビデオデコーダ30にリストC70についての構成情報を示すために、1つまたは複数のシンタックス要素を符号化する102。たとえば、ビデオエンコーダ20は、リストC70が単方向予測に使用されることを示し、リストC70で識別される参照ピクチャの数、およびリストC70におけるエントリごとの参照ピクチャインデックスを示すために、シンタックス要素を符号化することができる。次いで、ビデオエンコーダ20は、リストC70における1つまたは複数の参照ピクチャに関する単方向予測を使用して、Bスライスの1つまたは複数のビデオブロックを符号化することができる103。0115ビデオデコーダ30は、現在のビデオスライスのビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を表す符号化されたビットストリームをビデオエンコーダ20から受信する。現在のビデオスライスがBフレームに指定されるとき、ビデオデコーダ30は、シンタックス要素を使用して、参照ピクチャメモリ92に記憶された復号された参照ピクチャに基づいて、リスト094とリスト196とを構成する100。ビデオデコーダ30は、初期化および変更を含めて、通常の参照ピクチャリスト構成手順に従って、リスト094およびリスト196を構成し得る。0116次いで、ビデオデコーダ30は、リスト094および/またはリスト196から1つまたは複数の参照ピクチャを含むリストC98を構成する101。ビデオデコーダ30は、リストC98についての構成情報を示すシンタックス要素を復号することによって、リストC98を構成する102。たとえば、ビデオデコーダ30は、リストC98が単方向予測に使用されることを示し、リストC98で識別される参照ピクチャの数、およびリストC98におけるエントリごとの参照ピクチャインデックスを示すシンタックス要素を復号することができる。一例では、ビデオデコーダ30は、シンタックス要素に従って、リスト094およびリスト96のうちの少なくとも1つからの1つまたは複数の参照ピクチャをリストC98に追加することができる。他の例では、ビデオデコーダ30は、リストC98をリスト094およびリスト196のうちの1つに等しくなるように設定することによって、リストC98を構成することができる。次いで、ビデオデコーダ30は、リストC98における1つまたは複数の参照ピクチャに関する単方向予測を使用して、Bスライスの1つまたは複数のビデオブロックを復号することができる103。0117図5は、結合された参照ピクチャリスト、リストC70を構成するための構成情報を示す1つまたは複数のシンタックス要素を符号化し、リストC70のみにおける参照ピクチャに関する単方向予測を使用して、ビデオブロックを符号化する例示的な動作を示すフローチャートである。示した動作は、図2のビデオエンコーダ20に関して説明されており、上記の表2および表3に提示される結合された参照ピクチャリストシンタックステーブルに対応し得る。0118ビデオエンコーダ20は、符号化されるべき現在のビデオスライスのビデオブロックを受信する。現在のビデオスライスがBフレームに指定されるとき、ビデオエンコーダ20は、参照ピクチャメモリ64に記憶された復号された参照ピクチャに基づいて、リスト066とリスト168とを構成する106。ビデオエンコーダ20は、通常の参照ピクチャリスト構成手順に従って、リスト066およびリスト168を構成し得る。0119ビデオエンコーダ20は、Bスライスの単方向予測についてのリスト066および/またはリスト168からの1つまたは複数の参照ピクチャを含む結合された参照ピクチャリスト、リストC70を構成することもできる108。一例では、ビデオエンコーダ20は、リストC70に含まれるようにリスト066とリスト168の両方におけるすべての参照ピクチャを選択し得る。この場合、リストC70における参照ピクチャの数は、リスト066およびリスト168における参照ピクチャの数の合計に等しくなり得る。他の場合には、リスト066およびリスト168によって示される参照ピクチャのうちの1つまたは複数は重複し得る。リストC70は、リストC70における参照ピクチャの数がリスト066およびリスト168における参照ピクチャの数の合計未満になり得るように、冗長参照ピクチャをなくすように構成され得る。他の例では、ビデオエンコーダ20は、リスト066およびリスト168におけるすべてよりも少ない参照ピクチャをリストC70が含むように選択し得る。0120場合によっては、ビデオエンコーダ20は、リスト066およびリスト168からリストC70を構成するのではなく、代わりに、リストC70をリスト066およびリスト168の1つに等しくなるように設定する。リスト066およびリスト168が同一の場合、すなわち、BスライスがGPBスライスである場合、ビデオエンコーダ20は、リスト066を結合された参照ピクチャリストとして使用する。次いで、ビデオエンコーダ20は、リストC70がリスト066に等しいことを示すシンタックス要素を符号化する。他の例では、リストC70は、リスト168に等しいものとして示され得る。この場合、本技法は、リストC70がリスト066およびリスト168から構成されるか、または単に参照ピクチャリストのうちの1つに等しく設定されているかを示すために、1ビットフラグ、すなわち、ref_pic_list_combination_flagを符号化することによって、結合された参照ピクチャリストについての構成情報をコード化するコストが低減され得る。リストC70がリスト066およびリスト168から構成されない場合、ビデオエンコーダ20は、リストC70の中身がビデオデコーダ30によってリスト066およびリスト168から構成されるべき方法を明示的にシグナリングするために、追加のシンタックス要素を符号化しない。0121リスト066およびリスト168が同一ではないとき、ビデオエンコーダ20は、リスト066およびリスト168のうちの一方が他方のリストのサブセットであるかどうかを決定することができる。たとえば、リスト066において識別される参照ピクチャは、リスト168において識別される参照ピクチャのサブセットを備えることができる。リスト066およびリスト168のうちの一方が他方のリストのサブセットであるとき、ビデオエンコーダ20は、リストC70を他方のリストに等しくなるように設定する。次いで、ビデオエンコーダ20は、リストC70が他方のリストに等しいことを示すシンタックス要素を符号化する。たとえば、リスト066において識別される参照ピクチャがリスト168において識別される参照ピクチャのサブセットであるとき、リストC70はリスト168に等しくなるように設定され得る。この場合、本技術は、リストC70が明示的にシグナリングされるか、リスト066およびリスト168の1つに等しいかを示すために、2ビットフラグ、すなわち、com_list_equal_idcを符号化することによって、リストC70についての構成情報のコード化のコストを低減する。リストC70がリスト066またはリスト168のいずれかに等しい場合、ビデオエンコーダ20は、リストC70の中身がビデオデコーダ30によってリスト066およびリスト168から構成されるべき方法を明示的にシグナリングするために、追加のシンタックス要素を符号化しない。0122次いで、ビデオエンコーダ20は、リストC70がBスライスの単方向予測に使用されることを示すシンタックス要素をシグナリングする110。さらに、ビデオエンコーダ20は、リストC70の中身がビデオデコーダ30によってリスト066およびリスト168から構成されるべき方法を明示的にシグナリングするために、1つまたは複数のシンタックス要素を符号化する。具体的には、ビデオエンコーダ20は、リストC70で識別される参照ピクチャの数を示すシンタックス要素をシグナリングする112。代替として、ビデオエンコーダ20は、リスト066およびリスト168における重複する参照ピクチャの数、すなわち、リスト066およびリスト168において同じであるピクチャの数をシグナリングし得る。次いで、リストC70における参照ピクチャの数は、リスト066における参照ピクチャの示された数、リスト1における参照ピクチャの示された数、および重複する参照ピクチャの示された数に基づいて決定され得る。0123ビデオエンコーダ20はまた、参照ピクチャが、リストC70におけるエントリごとに、リスト066からのものであるか、リスト168からのものであるかを示すシンタックス要素をシグナリングする113。ビデオエンコーダ20は、リストC70におけるエントリごとに参照ピクチャインデックスを示すシンタックス要素をさらにシグナリングする114。リストC70における基準フレームの数、およびリストC70における各エントリを明示的にシグナリングすることによって、ビデオデコーダ30は、複雑な復号プロセスを必要とせず、結合された参照ピクチャリストを構成することができる。0124ビデオエンコーダ20は、次いで、リストC70における参照ピクチャに関する単方向予測を使用して、Bスライスの1つまたは複数のビデオブロックを符号化することができる115。本技法によれば、ビデオエンコーダ20は、結合された参照リストがどのように形成されるかにかかわらず、リストC70を使用して、単方向予測されたビデオブロックを符号化することができる。ビデオブロックがリスト066およびリスト168から双予測されるBiか、リストC70から単方向予測されるPred_LCか、を示すために、Bスライスの各コード化ビデオブロックは、次いで、関連するインター予測ステータスシンタックス要素、すなわち、inter_pred_idcを有し得る。したがって、本技法によって、リスト0およびリスト1が同一であるかどうかにかかわらず、GPBスライスを含むBスライスにおけるビデオブロックについてのインター予測ステータスのコード化のコストが低減する。また、リストC70における参照フレームの数を明示的にシグナリングすることによって、ビデオデコーダ30は、コード化されたBスライスにおける各ビデオブロックに関連付けられたインター予測間ステータスシンタックス要素を解析することができる。次いで、ビデオエンコーダ20は、現在のビデオスライスのビデオブロックおよびビデオデコーダ30によって復号されるビデオスライスに関連付けられたシンタックス要素を表すビットストリームを符号化することができる116。0125図6は、シンタックス要素を使用してリストCを構成し、リストCを使用して、単方向予測されたビデオブロックを復号する例示的な動作を示すフローチャートである。示した動作は、図3のビデオデコーダ30に関して説明されており、上記の表2および表3に提示される結合された参照ピクチャリストシンタックステーブルに対応し得る。0126ビデオデコーダ30は、現在のビデオスライスのビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を表す符号化されたビットストリームをビデオエンコーダ20から受信する120。現在のビデオスライスがBフレームに指定されるとき、ビデオデコーダ30は、シンタックス要素を使用して、参照ピクチャメモリ92に記憶された復号された参照ピクチャに基づいて、リスト094とリスト196とを構成する122。ビデオデコーダ30は、初期化および変更を含めて、通常の参照ピクチャリスト構成手順に従って、リスト094およびリスト196を構成し得る。次いで、ビデオデコーダ30は、受信されたシンタックス要素から結合された参照ピクチャリスト、リストC98がBスライスの単方向予測に使用されるかどうかを決定する123。0127リストC98を構成するために、ビデオデコーダ30は、ビデオエンコーダ20から受信されたシンタックス要素から、リストC98における参照ピクチャの数を最初に決定する132。一例では、リストC98は、リスト094とリスト196の両方におけるすべての参照ピクチャを含み得る。この場合、リストC98における参照ピクチャの数は、リスト094およびリスト196における参照ピクチャの数の合計に等しくなり得る。0128他の場合には、リスト094およびリスト196によって示される参照ピクチャのうちの1つまたは複数は重複し得る。リストC98は、リストC98における参照ピクチャの数がリスト094およびリスト196における参照ピクチャの合計未満になり得るように、冗長参照ピクチャをなくすように構成され得る。他の例では、リストC98は、ビデオエンコーダ20によって実行された選択に応じて、参照ピクチャリスト094およびリスト196におけるすべての参照ピクチャより少ない参照ピクチャを含み得る。0129ビデオデコーダ30は、次いで、リストC98の中身がリスト094およびリスト196から構成されるべき方法を明示的にシグナリングするシンタックス要素を使用して、リスト094および/またはリスト196から1つまたは複数の参照ピクチャを含むリストC98を構成する134。たとえば、ビデオデコーダ30は、リストC98における各エントリがリスト094における参照ピクチャに関するか、リスト196における参照ピクチャに関するかについて示し、リストC98におけるエントリごとに、現在の参照ピクチャリストにおける参照ピクチャのインデックスを示すシンタックス要素に基づいてリストC98を構成することができる。リストC98を構成するための例示的な動作について、図7および図8を参照しながら以下でより詳細に説明する。リストC98における参照フレームの数、およびリストC98における各エントリを明示的にシグナリングすることによって、ビデオデコーダ30は、複雑な復号プロセスを必要とせず、リストC98を構成することができる。0130場合によっては、ビデオデコーダ30は、リスト094およびリスト196からリストC98を構成するのではなく、代わりに、リストC98をリスト094およびリスト196の1つに等しくなるように設定する。リスト094およびリスト196が同一の場合、すなわち、BスライスがGPBスライスである場合、ビデオデコーダ30は、リスト094に等しくなるように、リストC98を設定することができる。他の例では、リストC98は、リスト196に等しいものとして設定され得る。ビデオデコーダ30は、リストC98がリスト094およびリスト196から構成されるか、単に参照ピクチャリストのうちの1つに等しくなるように設定されるのみかを示すビデオエンコーダ20から受信された1ビットフラグ、すなわち、ref_pic_list_combination_flagに基づいて、リスト094およびリスト196が同一であることを決定することができる。リストC98がリスト094およびリスト196から構成されない場合、ビデオデコーダ30は、リスト094およびリスト196が同一であること、およびリストC98がリスト094およびリスト196の1つに等しくなるように設定され得ることを知っている。この場合、ビデオデコーダ30は、ビデオデコーダ30によってリストC98の中身がリスト094およびリスト196から構成されるべき方法を明示的にシグナリングする追加のシンタックス要素を受信しない。0131リスト094およびリスト196が同一ではないとき、ビデオデコーダ30は、リスト094およびリスト196のうちの一方が他方のリストのサブセットであるかどうかを決定する。たとえば、リスト094において識別される参照ピクチャは、リスト196において識別される参照ピクチャのサブセットを備えることができる。リスト094およびリスト196のうちの一方が他方のリストのサブセットであるとき、ビデオエンコーダ30は、リストC98を他方のリストに等しくなるように設定する。たとえば、リスト094において識別される参照ピクチャがリスト196において識別される参照ピクチャのサブセットであるとき、リストC98はリスト196に等しくなるように設定され得る。0132ビデオデコーダ30は、リストC98が明示的にシグナリングされるか、リスト094およびリスト196のうちの1つに等しいかを示すビデオエンコーダ20から受信される2ビットフラグ、すなわち、com_list_equal_idcに基づいて、リスト094およびリスト196のうちの一方が他方のリストのサブセットであることを決定することができる。リストC98がリスト094またはリスト196に等しい場合、ビデオデコーダ30は、リストC98をリスト094またはリスト196に等しくなるように設定する。ビデオデコーダ30は、リストC98の中身がリスト094およびリスト196から構成されるべき方法を明示的にシグナリングする追加のシンタックス要素を受信しない。0133リストC98が構成された後、ビデオデコーダ30は、次いで、リストC98における参照ピクチャに関する単方向予測を使用して、Bスライスの1つまたは複数のビデオブロックを復号することができる136。本技法によれば、ビデオデコーダ30は、リストCがどのように形成されるかにかかわらず、リストCを使用して、単方向予測されたビデオブロックを復号することができる。ビデオブロックがリスト094およびリスト196から双予測されるBiか、リストC98から単方向予測されるPred_LCか、を示すために、Bスライスの各コード化ビデオブロックは、次いで、関連するインター予測ステータスシンタックス要素、すなわち、inter_pred_idcを有し得る。また、リストC98における参照フレームの数を明示的にシグナリングすることによって、ビデオデコーダ30は、コード化されたBスライスにおける各ビデオブロックに関連付けられたインター予測間ステータスシンタックス要素を解析することができる。0134図7は、図6からのステップ134で、リストC98を構成する方法を明示的に示すシンタックス要素を使用して、リストC98を構成する第1の例示的な動作を示すフローチャートである。示した動作は、図3のビデオデコーダ30に関して説明されており、上記の表2に提示される例示的な結合された参照ピクチャリストシンタックステーブルに対応し得る。0135ビデオデコーダ30は、どれくらいのエントリがリストC98に含まれるかを知るために、シンタックス要素からリストC98で識別される参照ピクチャの数を決定する。次いで、ビデオデコーダ30は、リストC98における各エントリにリスト094またはリスト196の参照ピクチャの参照インデックスを追加することによって、リストC98を構成する。より詳細には、ビデオデコーダ30は、シンタックス要素からリストC98の所与のエントリに追加されるべき現在の参照ピクチャのリスト094またはリスト196のいずれかの現在のリストを最初に決定することができる140。たとえば、ビデオデコーダ30は、1ビットフラグ、すなわち、pic_from_list_0_flagiに基づいて、現在のリストを決定することができ、iは、エントリについての現在の参照ピクチャがリスト094からであるか、リスト196からであるかを示すリストC98におけるエントリを識別する。0136次いで、ビデオデコーダ30は、シンタックス要素から、現在の参照ピクチャリスト、リスト094またはリスト196における現在の参照ピクチャのインデックスを決定する142。たとえば、ビデオデコーダ30は、シンタックス要素に基づいて、現在の参照ピクチャのインデックス、すなわち、ref_idx_list_curriを決定することができ、iは、リストC98に追加されるべき現在の参照ピクチャリストにおける現在の参照ピクチャの参照インデックスを示す、リストC98におけるエントリを識別する。次いで、ビデオデコーダ30は、リストC98のエントリに、現在の参照ピクチャのインデックスを追加する144。0137リストC98におけるエントリが、リストC98における最後のエントリである場合146のはい分岐、ビデオデコーダ30は、リストC98を構成しており、Bスライスの単方向予測されたビデオブロックを復号するためにリストC98を使用することができる。リストC98におけるエントリがリストC98における最後のエントリではない場合146のいいえ分岐、ビデオデコーダ30は、リストC98における各エントリにリスト094またはリスト196における参照ピクチャの参照インデックスを追加することによって、リストC98を構成し続ける140、142、144。0138図8は、図6からのステップ134で、リストC98を構成する方法を明示的に示すシンタックス要素を使用して、リストC98を構成する第2の例示的な動作を示すフローチャートである。示した動作は、図3のビデオデコーダ30に関して説明されており、上記の表3に提示される例示的な結合された参照ピクチャリストシンタックステーブルに対応し得る。0139ビデオデコーダ30は、どれくらいのエントリがリストC98に含まれるかを知るために、シンタックス要素からリストC98で識別される参照ピクチャの数を決定する。次いで、ビデオデコーダ30は、リストC98における各エントリにリスト094またはリスト196の参照ピクチャの参照インデックスを追加することによって、リストC98を構成する。より詳細には、ビデオデコーダ30は、シンタックス要素から、リストC98の所与のエントリに追加されるべき現在の参照ピクチャのリスト094またはリスト196のいずれかの現在のリストを最初に決定することができる150。たとえば、ビデオデコーダ30は、1ビットフラグ、すなわち、pic_from_list_0_flagiに基づいて、現在のリストを決定することができ、iは、エントリについての現在の参照ピクチャがリスト094からであるか、リスト196からであるかを示すリストC98におけるエントリを識別する。0140次いで、ビデオデコーダ30は、シンタックス要素から、現在の参照ピクチャリスト、リスト094またはリスト196における現在の参照ピクチャのインデックスデルタを決定する152。インデックスデルタは、現在の参照ピクチャリストにおける現在の参照ピクチャのインデックスとリストC98における前のエントリに追加された現在の参照ピクチャリストにおける前の参照ピクチャのインデックスとの間の差を定義する。次いで、ビデオデコーダ30は、インデックスデルタおよび現在の参照ピクチャリストからの前の参照ピクチャのインデックス基づいて、現在の参照ピクチャリストにおける現在の参照ピクチャのインデックスを計算し得る154。次いで、ビデオデコーダ30は、リストC98のエントリに、現在の参照ピクチャのインデックスを追加する156。0141このようにして、本技法は、リストC98で識別される各参照ピクチャの参照インデックスを明示的にシグナリングするコストを低減する。代わりに、ビデオエンコーダ20は、リスト094およびリスト196のそれぞれからリストC98に追加されるべきインデックス値間の差のみをシグナリングすることができる。リスト094およびリスト196の所与の1つからリストC98に含まれる参照ピクチャのインデックス値は、一般的に、昇順に、小さい増分で増加する。0142リストC98におけるエントリが、リストC98における最後のエントリである場合158のはい分岐、ビデオデコーダ30は、リストC98を構成しており、Bスライスの単方向予測されたビデオブロックを復号するためにリストC98を使用することができる。リストC98におけるエントリがリストC98における最後のエントリではない場合158のいいえ分岐、ビデオデコーダ30は、リストC98における各エントリにリスト094またはリスト196における参照ピクチャの参照インデックスを追加することによって、リストC98を構成し続ける150、152、154、156。01431つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含むデータ記憶媒体または通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、1非一時的である有形コンピュータ可読記憶媒体、あるいは2信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび/またはデータ構造を取り出すために1つまたは複数のコンピュータあるいは1つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。0144限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROMまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスクdiskおよびディスクdiscは、コンパクトディスクdiscCD、レーザーディスクdisc登録商標、光ディスクdisc、デジタル多用途ディスクdiscDVD、フロッピー登録商標ディスクdisk、およびブルーレイ登録商標ディスクdiscを含み、ディスクdiskは、通常、データを磁気的に再生し、ディスクdiscは、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。0145命令は、1つまたは複数のデジタル信号プロセッサDSPなどの1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路ASIC、フィールドプログラマブル論理アレイFPGA、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用するプロセッサという用語は、前述の構造、または本明細書で説明する技法の実装に好適な他の構造のいずれかを指す。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび/またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素中に十分に実装され得る。0146本開示の技法は、ワイヤレスハンドセット、集積回路IC、またはICのセットたとえば、チップセットを含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記で説明した1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。0147様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。"