(57)【特許請求の範囲】
【請求項１】
ビデオデータを復号する方法であって、
復号された参照ピクチャを記憶するメモリからの第１の参照ピクチャリストと第２の参照ピクチャリストとを構成することと、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成することと、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第１のシンタックス要素を含む複数のシンタックス要素を復号することと、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを復号することと、
を備える方法。
【請求項２】
ビデオデータを符号化する方法であって、
生成された参照ピクチャを記憶するメモリからの第１の参照ピクチャリストと第２の参照ピクチャリストとを構成することと、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成することと、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第１のシンタックス要素を含む複数のシンタックス要素を符号化することと、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを符号化することと、
を備える方法。
【請求項３】
前記第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示す、請求項１または２に記載の方法。
【請求項４】
前記方法はデコーダが実行し、前記方法は、
前記デコーダが前記ビデオブロックおよび前記複数のシンタックス要素を表す符号化されたビットストリームを受信することと、
前記第１のシンタックス要素を使用して、前記結合された参照ピクチャリストを構成することと、
をさらに備える、請求項１に記載の方法。
【請求項５】
前記ビデオブロックおよび前記複数のシンタックス要素を表す符号化されたビットストリームを生成すること
をさらに備える、請求項２に記載の方法。
【請求項６】
前記複数のシンタックス要素は、ビデオブロックごとに、前記ビデオブロックが、前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関して双予測されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して単方向予測されるかを示す１つまたは複数の第２のシンタックス要素をさらに備える、請求項１または２に記載の方法。
【請求項７】
前記第１のシンタックス要素が、前記第１および第２の参照ピクチャリストにおける同じ参照ピクチャの数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項１または２に記載の方法。
【請求項８】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、請求項１または２に記載の方法。
【請求項９】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスと、前記結合された参照ピクチャリストにおける前のエントリに追加された前記第１または第２の参照ピクチャリストのうちの同じ１つにおける前の参照ピクチャのインデックスとの間の差を定義するインデックスデルタを示す、請求項１または２に記載の方法。
【請求項１０】
前記第１および第２の参照ピクチャリストが同一であるとき、前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記第１および第２の参照ピクチャリストの１つに等しくなるように設定されることを示す、請求項１または２に記載の方法。
【請求項１１】
前記１つまたは複数の第１のシンタックス要素は、前記第１および第２の参照ピクチャリストのうちの前記１つにおいて識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項１０に記載の方法。
【請求項１２】
前記第１および第２の参照ピクチャリストのうちの一方が他方の参照ピクチャリストにおいて識別される前記参照ピクチャのサブセットを識別するとき、前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のために前記他方の参照ピクチャリストに等しくなるように設定されることを示す、請求項１または２に記載の方法。
【請求項１３】
前記１つまたは複数の第１のシンタックス要素は、前記他方の参照ピクチャリストにおいて識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項１２に記載の方法。
【請求項１４】
復号された参照ピクチャを記憶するメモリと、
前記メモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成し、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成し、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第１のシンタックス要素を含む複数のシンタックス要素を復号し、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを復号するように構成されたプロセッサと、
を備えるビデオデコーディングデバイス。
【請求項１５】
生成された参照ピクチャを記憶するメモリと、
前記メモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成し、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成し、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第１のシンタックス要素を含む複数のシンタックス要素を符号化し、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを符号化するように構成されたプロセッサと、
を備えるビデオ符号化デバイス。
【請求項１６】
前記第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示す、請求項１４に記載のビデオデコーディングデバイス。
【請求項１７】
前記プロセッサは、
前記ビデオブロックおよび前記複数のシンタックス要素を表す符号化されたビットストリームを受信し、
前記第１のシンタックス要素を使用して、前記結合された参照ピクチャリストを構成する
請求項１４に記載のビデオデコーディングデバイス。
【請求項１８】
前記プロセッサは、
前記ビデオブロックおよび前記複数のシンタックス要素を表す符号化されたビットストリームを生成する
請求項１５に記載のビデオ符号化デバイス。
【請求項１９】
前記複数のシンタックス要素は、ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関して双予測されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して単方向予測されるかを示す１つまたは複数の第２のシンタックス要素をさらに備える、請求項１４に記載のビデオデコーディングデバイス。
【請求項２０】
前記第１のシンタックス要素は、前記第１および第２の参照ピクチャリストにおける同じ参照ピクチャの数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項１４に記載のビデオデコーディングデバイス。
【請求項２１】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、請求項１４に記載のビデオデコーディングデバイス。
【請求項２２】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスと、前記結合された参照ピクチャリストにおける前のエントリに追加された前記第１または第２の参照ピクチャリストのうちの同じ１つにおける前の参照ピクチャのインデックスとの間の差を定義するインデックスデルタを示す、請求項１４に記載のビデオデコーディングデバイス。
【請求項２３】
前記第１および第２の参照ピクチャリストが同一であるとき、前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記第１および第２の参照ピクチャリストの１つに等しくなるように設定されることを示す、請求項１４に記載のビデオデコーディングデバイス。
【請求項２４】
前記１つまたは複数の第１のシンタックス要素は、前記第１および第２の参照ピクチャリストのうちの前記１つにおいて識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項２３に記載のビデオデコーディングデバイス。
【請求項２５】
前記第１および第２の参照ピクチャリストのうちの一方が他方の参照ピクチャリストにおいて識別される前記参照ピクチャのサブセットを識別するとき、前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記他方の参照ピクチャリストに等しくなるように設定されることを示す、請求項１４に記載のビデオデコーディングデバイス。
【請求項２６】
前記１つまたは複数の第１のシンタックス要素は、前記他方の参照ピクチャリストにおいて識別された参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストにおいて識別された前記参照ピクチャの数を示す、請求項２５に記載のビデオデコーディングデバイス。
【請求項２７】
復号された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成する手段と、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成する手段と、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第1のシンタックス要素を含む複数のシンタックス要素を復号する手段と、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを復号する手段と、
を備えるビデオデコーディングデバイス。
【請求項２８】
生成された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成する手段と、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成する手段と、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第１のシンタックス要素を含む複数のシンタックス要素を符号化する手段と、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを符号化する手段と、
を備えるビデオ符号化デバイス。
【請求項２９】
前記第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示す、請求項２７に記載のビデオデコーディングデバイス。
【請求項３０】
デコーダで前記ビデオブロックおよび前記複数のシンタックス要素を表す符号化されたビットストリームを受信する手段と、
前記第１のシンタックス要素を使用して、前記結合された参照ピクチャリストを構成する手段と、
をさらに備える、請求項２７に記載のビデオデコーディングデバイス。
【請求項３１】
前記ビデオブロックおよび前記複数のシンタックス要素を表す符号化されたビットストリームを生成する手段と、
をさらに備える、請求項２８に記載のビデオ符号化デバイス。
【請求項３２】
前記複数のシンタックス要素は、ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関して双予測されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して単方向予測されるかを示す１つまたは複数の第２のシンタックス要素をさらに備える、請求項２７に記載のビデオデコーディングデバイス。
【請求項３３】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、請求項２７に記載のビデオデコーディングデバイス。
【請求項３４】
プロセッサで実行されると、前記プロセッサに、
復号された参照ピクチャを記憶するメモリからの第１の参照ピクチャリストと第２の参照ピクチャリストとを構成させ、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成させ、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第１のシンタックス要素を含む複数のシンタックス要素を復号させ、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを復号させる、
ビデオデータを復号するための命令を記憶するコンピュータ可読記憶媒体。
【請求項３５】
プロセッサで実行されると、前記プロセッサに、
生成された参照ピクチャを記憶するメモリからの第１の参照ピクチャリストと第２の参照ピクチャリストとを構成させ、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成させ、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数の第１のシンタックス要素を含む複数のシンタックス要素を符号化させ、前記第１のシンタックス要素は、前記結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示し、前記結合された参照ピクチャリストにおけるエントリごとに、参照ピクチャが前記第１の参照ピクチャリストからのものであるか、前記第２の参照ピクチャリストからのものであるかを示すことを含む前記結合された参照ピクチャリストを明示的にシグナリングし、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックを符号化させる、
ビデオデータを符号化するための命令を記憶するコンピュータ可読記憶媒体。
【請求項３６】
前記第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示す、請求項３４または３５に記載のコンピュータ可読記憶媒体。
【請求項３７】
前記プロセッサに、
デコーダで前記ビデオブロックおよび前記複数のシンタックス要素を表す符号化されたビットストリームを受信させ、
前記第１のシンタックス要素を使用して、前記結合された参照ピクチャリストを構成させる
命令をさらに記憶する、請求項３４に記載のコンピュータ可読記憶媒体。
【請求項３８】
前記プロセッサに、
前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを生成させる
命令をさらに記憶する、請求項３５に記載のコンピュータ可読記憶媒体。
【請求項３９】
前記複数のシンタックス要素は、ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関して双予測されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して単方向予測されるかを示す１つまたは複数の第２のシンタックス要素をさらに備える、請求項３４または３５に記載のコンピュータ可読記憶媒体。
【請求項４０】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、請求項３４または３５に記載のコンピュータ可読記憶媒体。
【請求項４１】
前記第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示す、請求項１５に記載のビデオ符号化デバイス。
【請求項４２】
前記複数のシンタックス要素は、ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関して双予測されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して単方向予測されるかを示す１つまたは複数の第２のシンタックス要素をさらに備える、請求項１５に記載のビデオ符号化デバイス。
【請求項４３】
前記第１のシンタックス要素は、前記第１および第２の参照ピクチャリストにおける同じ参照ピクチャの数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項１５に記載のビデオ符号化デバイス。
【請求項４４】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、請求項１５に記載のビデオ符号化デバイス。
【請求項４５】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスと、前記結合された参照ピクチャリストにおける前のエントリに追加された前記第１または第２の参照ピクチャリストのうちの同じ１つにおける前の参照ピクチャのインデックスとの間の差を定義するインデックスデルタを示す、請求項１５に記載のビデオ符号化デバイス。
【請求項４６】
前記第１および第２の参照ピクチャリストが同一であるとき、前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記第１および第２の参照ピクチャリストの１つに等しくなるように設定されることを示す、請求項１５に記載のビデオ符号化デバイス。
【請求項４７】
前記１つまたは複数の第１のシンタックス要素は、前記第１および第２の参照ピクチャリストのうちの前記１つにおいて識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、請求項４６に記載のビデオ符号化デバイス。
【請求項４８】
前記第１および第２の参照ピクチャリストのうちの一方が他方の参照ピクチャリストにおいて識別される前記参照ピクチャのサブセットを識別するとき、前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記他方の参照ピクチャリストに等しくなるように設定されることを示す、請求項１５に記載のビデオ符号化デバイス。
【請求項４９】
前記１つまたは複数の第１のシンタックス要素は、前記他方の参照ピクチャリストにおいて識別された参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストにおいて識別された前記参照ピクチャの数を示す、請求項４８に記載のビデオ符号化デバイス。
【請求項５０】
前記第１のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示す、請求項２８に記載のビデオ符号化デバイス。
【請求項５１】
前記複数のシンタックス要素は、ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関して双予測されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して単方向予測されるかを示す１つまたは複数の第２のシンタックス要素をさらに備える、請求項２８に記載のビデオ符号化デバイス。
【請求項５２】
前記１つまたは複数の第１のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、請求項２８に記載のビデオ符号化デバイス。
【発明の詳細な説明】
【優先権の主張】
【０００１】
本出願は、そのそれぞれの全体が参照により本明細書に組み込まれる、２０１１年１月２２日に出願された米国仮出願第６１／４３５，２７１号、２０１１年１月２２日に出願された米国仮出願第６１／４３５，２８１号、２０１１年３月８日に出願された米国仮出願第６１／４５０，５４５号、および２０１１年５月２６日に出願された米国仮出願第６１／４９０，５５７号の利益を主張する。
【技術分野】
【０００２】
本開示は、ビデオコーディングに関し、より詳細には、ビデオインターコーディング技法に関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話または衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、デジタルビデオ情報をより効率的に送信および受信するために、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、または新生の高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。
【０００４】
[0004]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を実行する。ブロックベースのビデオコーディングの場合、ビデオスライスが、ツリーブロック、コーディングユニット（ＣＵ）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の近隣ブロックに関する空間的予測を使用して符号化され得る。ピクチャのイントラコード化（ＰまたはＢ）スライス中のビデオブロックは、他の参照ピクチャ中の参照サンプルに関する時間的予測を使用して符号化され得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。本開示において、そのような用語は、互換的に使用される。ビデオコーディングデバイスは、インターコーディング中に使用するために、参照ピクチャのリストをメモリに記憶する。現在コード化されているフレームの前の表示時間を有する参照ピクチャのリストはリスト０と呼ばれ、一方、現在コード化されているフレームの後の表示時間を有する参照ピクチャのリストはリスト１と呼ばれる。
【発明の概要】
【０００５】
[0005]一般に、本開示は、前方または後方の任意の方向のビデオブロックの単方向インター予測（単予測）に使用される、リスト０およびリスト１に基づく、結合された（combined）参照ピクチャリスト、リストＣの構成のための技法に関する。本技法は、たとえば、ピクチャまたはスライスレベル、たとえばスライスのスライスヘッダなどにおいてリストＣについての構成情報を示すように定義された１つまたは複数のシンタックス要素をコード化し、シンタックス要素に基づいてリスト０およびリスト１からリストＣについての参照ピクチャリストの構成を実行することを含む。Ｂスライスの各コード化ビデオブロックは、ビデオブロックがリスト０およびリスト１から双予測される（Ｂｉ）か、リストＣから単方向予測される（Ｐｒｅｄ＿ＬＣ）かを示すために、関連するシンタックス要素、すなわち、ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃを有し得る。本技法では、ＢスライスにおけるビデオブロックについてのＢｉおよびＰｒｅｄ＿ＬＣの２つのインター予測ステータスのみが可能であり、これは１ビットを消費するので、Ｂスライスにおけるビデオブロックについてのインター予測ステータスをコード化するコストが低減される。
【０００６】
[0006]一例では、本開示は、ビデオデータをコード化する方法を対象とし、方法は、復号された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成することと、第１の参照ピクチャリストおよび第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成することと、結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化することと、結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化することと、を備える。たとえば、シンタックス要素は、結合された参照ピクチャリストが単方向予測に使用されることを示し、結合された参照ピクチャリストにおいて識別された参照ピクチャの数を示し、結合された参照ピクチャリストにおける各エントリを示すことができる。
【０００７】
[0007]別の例では、本開示は、ビデオコーディングデバイスを対象とし、ビデオコーディングデバイスは、復号された参照ピクチャを記憶するメモリと、メモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成し、第１の参照ピクチャリストおよび第２の参照ピクチャリストのうちの少なくとも１つからの１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成し、結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化し、結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化するように構成されたプロセッサと、を備える。
【０００８】
[0008]さらなる一例では、本開示は、ビデオコーディングデバイスを対象とし、ビデオコーディングデバイスは、復号された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成する手段と、第１の参照ピクチャリストおよび第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成する手段と、結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化する手段と、結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化する手段と、を備える。
【０００９】
[0009]別の例では、本開示は、プロセッサ中で実行されると、プロセッサに、復号された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成させ、第１の参照ピクチャリストおよび第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成させ、結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化させ、結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化させる、ビデオデータをコード化するための命令を備えるコンピュータ可読記憶媒体を対象とする。
【００１０】
[0010]１つまたは複数の例の詳細は、添付の図面および以下の説明に記載されている。他の特徴、目的、および利点は、その説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１１】
【図１】結合された参照ピクチャリスト、リストＣを構成し、リストＣを使用して、単方向予測されたビデオブロックを効率的にコード化するための技法を使用することができる例示的なビデオ符号化および復号システムを示すブロック図。
【図２】リストＣについての構成情報を示すシンタックス要素を符号化し、リストＣを使用して、単方向予測されたビデオブロックを符号化するための技法を実施することができる例示的なビデオエンコーダを示すブロック図。
【図３】シンタックス要素を使用してリストＣを構成し、リストＣを使用して、単方向予測されたビデオブロックを復号するための技法を実施することができる例示的なビデオデコーダを示すブロック図。
【図４】リストＣを構成し、リストＣを使用して、単方向予測されたビデオブロックをコード化する例示的な動作を示すフローチャート。
【図５】リストＣについての構成情報を示すシンタックス要素を符号化し、リストＣを使用して、単方向予測されたビデオブロックを符号化する例示的な動作を示すフローチャート。
【図６】シンタックス要素を使用してリストＣを構成し、リストＣを使用して、単方向予測されたビデオブロックを復号する例示的な動作を示すフローチャート。
【図７】シンタックス要素を使用してリストＣを構成する第１の例示的な動作を示すフローチャート。
【図８】シンタックス要素を使用してリストＣを構成する第２の例示的な動作を示すフローチャート。
【発明を実施するための形態】
【００１２】
[0019]本開示は、前方または後方の任意の方向のビデオブロックの単方向インター予測（単予測）に使用される、リスト０およびリスト１に基づく、結合された参照ピクチャリスト、リストＣの構成のための技法に関する。本技法は、たとえば、ピクチャまたはスライスレベル、たとえばスライスのスライスヘッダなどにおいてリストＣについての構成情報を示すように定義された１つまたは複数のシンタックス要素をコード化し、シンタックス要素に基づいてリスト０およびリスト１からリストＣについての参照ピクチャリストの構成を実行することを含む。ビデオブロックがリスト０およびリスト１から双予測される（Ｂｉ）か、リストＣから単方向予測される（Ｐｒｅｄ＿ＬＣ）かを示すために、Ｂスライスの各コード化ビデオブロックは、関連するシンタックス要素、すなわち、ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃを有し得る。単方向予測のために、リスト０およびリスト１からの参照ピクチャをリストＣに結合するとき、Ｂスライスにおけるビデオブロックについてのインター予測ステータスは、ＢｉおよびＰｒｅｄ＿ＬＣの２つのみが可能であり、これは、１ビットを消費する。したがって、本技法は、Ｂスライスにおけるビデオブロックについてのインター予測ステータスのコード化のコストを低減することになる。
【００１３】
[0020]従来は、Ｐスライスにおけるビデオブロックは、リスト０における過去の参照ピクチャを指す単一の動きベクトルによる単方向予測を使用して符号化され得る。Ｂスライスにおけるビデオブロックは、（ａ）リスト０における過去の参照ピクチャを指す単一の動きベクトルによる単方向予測、（ｂ）リスト１における将来の参照ピクチャを指す単一の動きベクトルによる単方向予測、（ｃ）リスト０およびリスト１においてそれぞれ過去および将来の参照ピクチャを指す２つの動きベクトルによる双予測を使用して、符号化され得る。ＰおよびＢのスライスの分類は、リスト０およびリスト１が同じ時間的方向または異なる時間的方向の参照ピクチャを含み得ることを除いて、ビデオブロックがＢスライスとして符号化される一般化されたＰ／Ｂ（ＧＰＢ）スライスを含むように拡大されている。ＧＰＢスライスの特定の一例では、リスト０およびリスト１は同一であり得る。
【００１４】
[0021]参照ピクチャリストについての構成情報を示すように定義されたシンタックス要素は、符号化され、コード化されたビデオスライスのスライスヘッダで復号デバイスにシグナリングされる。コード化されたビデオスライス、およびその関連のシンタックス要素を受信すると、デコーダは、シンタックス要素に基づいてリスト０およびリスト１についての参照ピクチャリストの構成を実行する。Ｂスライスでは、各コード化されたビデオブロックは、ビデオブロックが双予測される（Ｂｉ）か、リスト０から順方向に単方向予測される（Ｐｒｅｄ＿Ｌ０）か、リスト１から逆方向に単方向予測される（Ｐｒｅｄ＿Ｌ１）かを示すために、関連のシンタックス要素、すなわち、ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃを有し得る。したがって、Ｂスライスについてのｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃシンタックス要素は、３つのステータス、Ｂｉ、Ｐｒｅｄ＿Ｌ０、またはＰｒｅｄ＿Ｌ１のうちの１つを示すために、２ビットを消費する。
【００１５】
[0022]ＧＰＢスライスの場合、リスト０およびリスト１が同一であるとき、ＧＰＢスライスにおけるビデオブロックについてのＢｉおよびＰｒｅｄ＿Ｌ０の２つの予測間ステータスのみが可能である。この場合、ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃシンタックス要素を使用する３つすべてのステータスのシグナリングは、非効率的である。代わりに、Ｂスライスが、２ビットを消費する３つのステータスのうちの１つの指示を必要とする通常のＢスライスであるか、１ビットのみを消費するＢｉおよびＰｒｅｄ＿Ｌ０の２つのみのステータスの指示を必要とするＧＰＢスライスであるかに基づいて、ｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃシンタックス要素が修正され得る。Ｂスライスにおけるビデオブロックごとに１ビットのみをシグナリングすることは、シグナリング効率におけるかなりの増加を提供することができる。
【００１６】
[0023]本開示の技法は、参照ピクチャリストが同一であるかどうかにかかわらず、ＧＰＢスライスを含めて、すべてのＢスライスまで効率の増加を広げる。本技法は、リスト０およびリスト１のうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリスト、リストＣを構成することを含む。次いで、リストＣが、Ｂスライスにおけるビデオブロックの単方向予測に使用される。このように、すべてのＢスライスにおけるビデオブロックごとに、１ビットを消費する、ＢｉおよびＰｒｅｄ＿ＬＣの２つのステータスをシグナリングするだけでよい。
【００１７】
[0024]ビデオデコーダでリストＣを構成するとき、いくつかの問題が生じ得る。たとえば、ビデオエンコーダは、リストＣに含まれるようにリスト０とリスト１の両方からのあらゆる参照ピクチャを選択しない場合がある。ビデオデコーダがリストＣに含まれる参照ピクチャの数を知らないとき、ビデオデコーダは、リストＣを構成することができず、また、コード化されたＢスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、ビデオデコーダでリストＣを自動的に構成することは、複雑な復号プロセスを必要とし得る。本技法によれば、Ｂスライスに関連付けられた１つまたは複数のシンタックス要素は、リストＣが単方向予測に使用されることを示し、また、リストＣにおいて識別された参照ピクチャの数と、リストＣにおける各エントリの参照ピクチャの参照インデックスとを示し得る。
【００１８】
[0025]図１は、結合された参照ピクチャリストを構成し、結合された参照ピクチャリストを使用して、単方向予測されたビデオブロックを効率的にコード化するための技法を使用することができる例示的なビデオ符号化および復号システム１０を示すブロック図である。概して、参照ピクチャリストは、代替的に参照フレームリストと呼ばれることがある。図１に示すように、システム１０は、宛先デバイス１４によって後で復号するための符号化されたビデオデータを生成するソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォン、いわゆる「スマート」パッドなどの電話ハンドセット、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソールなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。
【００１９】
[0026]宛先デバイス１４は、リンク１６を介して復号するための符号化されたビデオデータを受信することができる。リンク１６は、ソースデバイス１２から宛先デバイス１４に符号化されたビデオデータを移動させることができる任意のタイプの媒体またはデバイスを備え得る。一例では、リンク１６は、ソースデバイス１２が、符号化されたビデオデータをリアルタイムで宛先デバイス１４に直接送信できるようにするための通信媒体を備え得る。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を可能にするのに有用なルータ、スイッチ、基地局、または任意の他の機器を含むことができる。
【００２０】
[0027]別の例では、リンク１６は、ソースデバイス１２によって生成される符号化されたビデオデータを記憶することができ、宛先デバイス１４が必要に応じてディスクアクセスまたはカードアクセスを介してアクセスできる記憶媒体に対応し得る。記憶媒体は、様々なローカルにアクセスされたデータ記憶媒体、たとえばブルーレイディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、または符号化されたビデオデータを記憶するための任意の他の適切なデジタル記憶媒体のうちの任意のものを含み得る。さらなる一例では、リンク１６は、ファイルサーバ、あるいは、ソースデバイス１２によって生成される符号化されたビデオを保持することができ、宛先デバイス１４が必要に応じてストリーミングまたはダウンロードを介してアクセスできる別の介在する記憶デバイスに対応し得る。ファイルサーバは、符号化されたビデオデータを記憶し、その符号化されたビデオデータを宛先デバイス１４に送信することができる任意のタイプのサーバとすることができる。例示的なファイルサーバは、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブを含む。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を介して符号化されたビデオデータにアクセスすることができる。これは、ファイルサーバに記憶された符号化されたビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含み得る。ファイルサーバからの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。
【００２１】
[0028]結合された参照ピクチャリストを構成し、結合された参照ピクチャリストを使用して単方向予測されたビデオブロックを効率的にコード化するための本開示の技法は、必ずしもワイヤレスの適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、単方向または二方向のビデオ送信をサポートするように構成され得る。
【００２２】
[0029]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含むことができる。ソースデバイス１２において、ビデオソース１８は、たとえばビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラ付き携帯電話またはビデオ電話を形成し得る。ただし、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。
【００２３】
[0030]キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成ビデオはビデオエンコーダ１２によって符号化され得る。符号化されたビデオデータは、ソースデバイス２０の出力インターフェース２２を介して、宛先デバイス１４に直接送信され得る。符号化されたビデオデータは、復号および／または再生のために、宛先デバイス１４によって後でアクセスするために、記憶媒体またはファイルサーバ上に記憶することもできる。
【００２４】
[0031]宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。場合によっては、入力インターフェース２８は、受信機および／またはモデムを含むことができる。宛先デバイス１４の入力インターフェース２８は、リンク１６を介して符号化されたビデオデータを受信する。リンク１６を介して通信される、またはデータ記憶媒体上で提供される符号化されたビデオデータは、ビデオデータを復号する際に、たとえばビデオデコーダ３０などのビデオデコーダによって使用するために、ビデオエンコーダ２０によって生成される様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体によって送信された、記憶媒体またはファイルサーバに記憶された符号化されたビデオデータに含まれ得る。
【００２５】
[0032]ディスプレイデバイス３２は、宛先デバイス１４と一体化されるかまたはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。概して、ディスプレイデバイス３２は、復号されたビデオデータをユーザに表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００２６】
[0033]ビデオエンコーダ２０およびビデオデコーダ３０は、現在開発中の高効率ビデオコーディング（ＨＥＶＣ）規格などのビデオ圧縮規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ：HEVC Test Model）に準拠し得る。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＭＰＥＧ−４，Ｐａｒｔ  １０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例は、ＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３を含む。
【００２７】
[0034]図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびデコーダと統合され得、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含んで、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理し得る。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットはＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００２８】
[0035]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００２９】
[0036]本開示によれば、ソースデバイス１２のビデオエンコーダ２０は、前方または後方の任意の方向のＢスライスのビデオブロックの単方向予測に使用するために、結合された参照ピクチャリスト、リストＣについての構成情報を示すシンタックス要素を符号化するための技法を実行するように構成され得る。ビデオエンコーダ２０は、リストＣに含まれるように、第１の参照ピクチャリスト、リスト０、および第２の参照ピクチャリスト、リスト１のうちの少なくとも１つから１つまたは複数の参照ピクチャを選択することができる。次いで、ビデオエンコーダ２０は、リストＣが単方向予測に使用されることを示すように定義された、たとえばＢスライスのスライスヘッダにおける１つまたは複数のシンタックス要素を符号化することができる。ビデオエンコーダ２０は、リストＣで識別された参照ピクチャの数と、リストＣにおける各エントリのリスト０またはリスト１からの参照ピクチャの参照インデックスとを含めて、符号化されたビデオデータにおいて、リストＣの中身が、ビデオデコーダ３０によってリスト０およびリスト１から構成されるべき方法を明示的にシグナリングするように定義されたシンタックス要素をさらに符号化することができる。
【００３０】
[0037]本技法によれば、Ｂスライスにおけるビデオブロックは、リストＣにおける参照ピクチャを指す単一の動きベクトルによる単方向予測、またはそれぞれリスト０およびリスト１における２つの参照ピクチャを指す２つの動きベクトルによる双予測のいずれかを使用して符号化され得る。本技法は、リスト０およびリスト１が同じ時間的方向または異なる時間的方向の参照ピクチャを含み得るように、ＧＰＢスライスを含めて、すべてのＢスライスに適用され得る。特定の一例では、リスト０およびリスト１は同一でもよい。したがって、リスト０およびリスト１のうちの少なくとも１つからの参照ピクチャを含むリストＣは、現在のピクチャに対する前方と後方の両方の時間的方向の参照ピクチャを含み得る。
【００３１】
[0038]また、ビデオエンコーダ２０は、ビデオブロックがリスト０およびリスト１から双予測される（Ｂｉ）か、リストＣから単方向予測される（Ｐｒｅｄ＿ＬＣ）かを示すために、Ｂスライスの各コード化ビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃを符号化する。単方向予測のために、リスト０およびリスト１からの参照ピクチャをリストＣに結合するとき、Ｂスライスにおけるビデオブロックについての２つのインター予測ステータス、ＢｉおよびＰｒｅｄ＿ＬＣのみが可能である。したがって、本技法によって、リスト０およびリスト１が同一であるかどうかにかかわらず、ＧＰＢスライスを含むＢスライスにおけるビデオブロックについてのインター予測ステータスのコード化のコストが低減する。
【００３２】
[0039]本開示によれば、宛先デバイス１４のビデオデコーダ３０は、前方または後方の任意の方向に単方向予測されるビデオブロックを復号するために使用される、第１の参照ピクチャリスト、リスト０、および第２の参照ピクチャリスト、リスト１のうちの少なくとも１つからの１つまたは複数の参照ピクチャを含むために、結合された参照ピクチャリスト、リストＣを構成するための技法を実行するように構成され得る。ビデオデコーダ３０は、Ｂスライスにおける符号化されたビデオブロックおよび関連するシンタックス要素を表す符号化されたビットストリームを受信し得る。本技法は、一般に、リスト０およびリスト１を構成することと、リストＣについての構成情報を示すように定義されたＢスライスのスライスヘッダにおけるシンタックス要素の１つまたは複数を復号することと、シンタックス要素に基づいてリストＣについての参照ピクチャリストの構成を実行することとを含む。
【００３３】
[0040]より詳細には、本技法によれば、ビデオデコーダ３０は、リストＣが単方向予測に使用されるかどうかを示すように定義されたＢスライスのスライスヘッダにおけるシンタックス要素のうちの１つまたは複数を復号する。リストＣが単方向予測に使用されるとき、ビデオデコーダ３０は、リストＣで識別された参照ピクチャの数と、リストＣにおける各エントリのリスト０またはリスト１からの参照ピクチャの参照インデックスとを含めて、リストＣの中身が、ビデオデコーダ３０によってリスト０およびリスト１から構成されるべき方法を明示的にシグナリングするように定義された１つまたは複数のシンタックス要素をさらに復号することができる。次いで、ビデオデコーダ３０は、シンタックス要素を使用して、リスト０およびリスト１のうちの少なくとも１つからの参照ピクチャを含むリストＣを構成することができる。
【００３４】
[0041]また、ビデオデコーダ３０は、ビデオブロックがリスト０およびリスト１から双予測される（Ｂｉ）か、リストＣから単方向予測される（Ｐｒｅｄ＿ＬＣ）かを決定するために、Ｂスライスの各符号化されたビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃを復号することができる。インター予測ステータスがＢｉであるとき、ビデオデコーダ３０は、それぞれリスト０およびリスト１における参照ピクチャを指す２つの動きベクトルによる双予測を使用して、ビデオブロックを復号することができる。インター予測ステータスがＰｒｅｄ＿ＬＣであるとき、ビデオデコーダ３０は、リストＣにおける参照ピクチャを指す単一の動きベクトルによる単方向予測を使用して、ビデオブロックを復号することができる。上記で説明したように、Ｂスライスは、通常のＢスライスまたはＧＰＢスライスのいずれかとすることができる。いずれにせよ、本技法によれば、インター予測ステータスシンタックス要素は、２つのステータス、すなわち、リストＣからの単方向予測、またはリスト０およびリスト１からの双予測のみを有し、したがって、１ビットのみを消費する。
【００３５】
[0042]リストＣがリスト０とリスト１の両方からのあらゆる参照ピクチャを必ずしも含むとは限らないので、本技法は、リストＣに含まれる参照ピクチャの数を明示的にシグナリングすることを含む。ビデオデコーダ３０がリストＣに含まれる参照ピクチャの数を知らない場合、ビデオデコーダ３０は、リストＣを構成することができず、また、コード化されたＢスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、すなわち明示的なシグナリング無しに、ビデオデコーダ３０でリストＣを自動的に構成することは、複雑な復号プロセスを必要とし得る。
【００３６】
[0043]ＪＣＴ−ＶＣは、ＨＥＶＣ標準の開発に取り組んでいる。ＨＥＶＣの規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコード化デバイスの発展的モデルに基づく。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコード化デバイスのいくつかの追加の能力を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを提供するが、ＨＭは３３個ものイントラ予測符号化モードを提供し得る。
【００３７】
[0044]一般に、ＨＭの作業モデルは、ビデオフレームまたはピクチャが、ルーマとクロマの両方のサンプルを含む一連のツリーブロックまたは最大コーディングユニット（ＬＣＵ）に分割され得ることを記載する。ツリーブロックは、Ｈ．２６４規格のマクロブロックと同様の目的を有する。スライスは、いくつかの連続的なツリーブロックをコード化順に含む。ビデオフレームまたはピクチャは、１つまたは複数のスライスに区分され得る。各ツリーブロックは、４分木に従ってコーディングユニット（ＣＵ）に分割され得る。たとえば、４分木のルートノードとしてのツリーブロックは、４つの子ノードに分割され得、各子ノードは、次に、親ノードとなり、別の４つの子ノードに分割され得る。４分木のリーフノードとしての、最終的な、分割されていない子ノードは、コード化ノード、すなわち、コード化されたビデオブロックを備える。コード化されたビットストリームに関連付けられたシンタックスデータは、ツリーブロックが分割され得る最大回数を定義することができ、コード化ノードの最小サイズを定義することもできる。
【００３８】
[0045]ＣＵは、コード化ノードと、コード化ノードに関連付けられた予測ユニット（ＰＵ）および変換ユニット（ＴＵ）とを含む。ＣＵのサイズは、コード化ノードのサイズに対応し、正方形でなければならない。ＣＵのサイズは、８×８ピクセルから最大６４×６４以上のピクセルを有するツリーブロックのサイズまでに及び得る。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。ＣＵに関連付けられたシンタックスデータは、たとえば、ＣＵを１つまたは複数のＰＵに区分することを記述し得る。区分モードは、ＣＵが、スキップモード符号化またはダイレクトモード符号化されるか、イントラ予測モード符号化されるか、あるいはインター予測モード符号化されるかによって異なり得る。ＰＵは、非正方形に区分され得る。ＣＵに関連付けられたシンタックスデータは、たとえば、４分木に従って、ＣＵを１つまたは複数のＴＵに区分することも記述し得る。ＴＵは、正方形でなければならない。
【００３９】
[0046]一般に、ＰＵは、予測プロセスに関連したデータを含む。たとえば、ＰＵがイントラモード符号化されるとき、ＰＵは、ＰＵについてのイントラ予測モードを記述するデータを含み得る。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵの動きベクトルを定義するデータを含み得る。ＰＵの動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／あるいは動きベクトルの参照ピクチャリスト（たとえば、リスト０またはリスト１、またはリスト０）について説明し得る。
【００４０】
[0047]一般に、ＴＵは、変換および量子化のプロセスに使用される。１つまたは複数のＰＵを有するＣＵはまた、１つまたは複数の変換ユニット（ＴＵ：transform unit）を含み得る。予測の後、ビデオエンコーダ２０は、ＰＵに対応する残差値を計算することができる。残差値は、エントロピーコーディングのためのシリアル化変換係数（serialized transform coefficient）を生成するために、ＴＵを使用して変換係数に変換され、量子化され、走査され得るピクセル差分値を備える。本開示は、一般的に、ＣＵのコード化ノードを指す「ビデオブロック」という用語を使用する。特定の場合において、本開示は、コード化ノードならびにＰＵおよびＴＵを含む、ツリーブロック、すなわち、ＬＣＵまたはＣＵを指す「ビデオブロック」という用語も使用し得る。
【００４１】
[0048]ビデオシーケンスは、一般的に、一連のビデオフレームまたはピクチャを含む。ピクチャのグループ（ＧＯＰ）は、一般に、一連の１つまたは複数のビデオフレームを備える。ＧＯＰは、ＧＯＰ内に含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ中、１つまたは複数のピクチャのヘッダ中、または他の場所に含み得る。各ピクチャのスライスは、それぞれのスライスについての符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ２０は、一般的に、ビデオデータを符号化するために、個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックは、ＣＵ内のコード化ノードに対応し得る。ビデオブロックは、サイズを固定することも変更することもでき、指定のコーディング規格に応じてサイズが異なることがある。
【００４２】
[0049]一例として、ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測をサポートし、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称的なＰＵサイズでのインター予測をサポートする。ＨＭはまた、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための非対称区分をサポートする。非対称区分では、ＣＵの単方向は区分されないが、他の方向が２５％と７５％とに区分される。２５％の区分に対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。したがって、たとえば「２Ｎ×ｎＵ」は、上部に２Ｎ×０．５Ｎ  ＰＵと下部に２Ｎ×１．５Ｎ  ＰＵとで水平方向に区分される２Ｎ×２Ｎ  ＣＵを指す。
【００４３】
[0050]本開示では、「NxN」および「N by N」は、垂直寸法および水平寸法に関するビデオブロックのピクセル寸法、たとえば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために互換的に使用され得る。概して、１６×１６ブロックは、垂直方向に１６ピクセルを有し（ｙ＝１６）、水平方向に１６ピクセルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、一般に、垂直方向にＮピクセルを有し、水平方向にＮピクセルを有し、ただし、Ｎは非負整数値を表す。ブロック中のピクセルは行と列に構成され得る。さらに、ブロックは、必ずしも、水平方向に垂直方向と同じ数のピクセルを有する必要はない。たとえば、ブロックは、Ｎ×Ｍピクセルを備え得、Ｍは必ずしもＮに等しいとは限らない。
【００４４】
[0051]ＣＵのＰＵを使用したイントラ予測コーディングまたはインター予測コーディングの後、ビデオエンコーダ２０は、ＣＵのＴＵのための残差データを計算し得る。ＰＵは、（ピクセル領域とも呼ばれる）空間領域においてピクセルデータを備え得、ＴＵは、たとえば、残差ビデオデータへの離散コサイン変換（ＤＣＴ）、整数変換、ウェーブレット変換、または概念的に同様の変換などの変換の適用後に、変換領域において係数を備え得る。残差データは、符号化されていないピクチャのピクセルと、ＰＵに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ２０は、ＣＵのための残差データを含むＴＵを形成し、次いで、ＴＵを変換して、ＣＵのための変換係数を生成することができる。
【００４５】
[0052]変換係数を生成するための任意の変換の後、ビデオエンコーダ２０は、変換係数の量子化を実行することができる。量子化は、概して、さらなる圧縮を提供する、係数を表すために使用されるデータの量をできるだけ低減するために変換係数を量子化するプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度を低減することができる。たとえば、量子化中にｎビット値がｍビット値に切り捨てられ得、ｎはｍよりも大きい。
【００４６】
[0053]いくつかの例では、ビデオエンコーダ２０は、エントロピー符号化され得るシリアル化ベクトルを生成するために、量子化変換係数を走査するためにあらかじめ定義された走査順序を利用し得る。他の例では、ビデオエンコーダ２０は、適応型走査を実行し得る。量子化変換係数を走査して１次元ベクトルを形成した後、ビデオエンコーダ２０は、たとえば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context adaptive binary arithmetic coding）、シンタックスベースコンテキスト適応型２値算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、または別のエントロピー符号化方法に従って１次元ベクトルをエントロピー符号化し得る。また、ビデオエンコーダ２０は、ビデオデータの復号の際に、ビデオデコーダ３０によって使用するために符号化されたビデオデータに関連付けられたシンタックス要素をエントロピー符号化し得る。
【００４７】
[0054]ＣＡＢＡＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルに、コンテキストモデル内のコンテキストを割り当て得る。コンテキストは、たとえば、シンボルの隣接値が非ゼロか否かに関係し得る。ＣＡＶＬＣを実行するために、ビデオエンコーダ２０は、送信されるべきシンボルの可変長コードを選択し得る。ＶＬＣにおけるコードワードは、比較的短いコードが優勢シンボルに対応し、より長いコードが劣勢シンボルに対応するように構成され得る。このようにして、ＶＬＣの使用は、たとえば、送信されるべき各シンボルのために等長コードワードを使用するよりも、ビット節約を達成し得る。確率判断は、シンボルに割り当てられるコンテキストに基づき得る。
【００４８】
[0055]図２は、結合された参照ピクチャリスト、リストＣ７０についての構成情報を示すシンタックス要素を符号化し、リストＣ７０を使用して、単方向予測されたビデオブロックを符号化するための技法を実施することができる例示的なビデオエンコーダ２０を示すブロック図である。ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは時間的予測を利用して、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去する。イントラ（Ｉ）モードは、いくつかの空間ベースの圧縮モードのいずれかを指すことがある。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースの圧縮モードのいずれかを指し得る。
【００４９】
[0056]図２の例では、ビデオエンコーダ２０は、モード選択ユニット４０と、予測ユニット４１と、参照ピクチャメモリ６４と、加算器５０と、変換ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６とを含む。予測ユニット４１は、動き推定ユニット４２と、動き補償ユニット４４と、イントラ予測ユニット４６とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換ユニット６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクトを除去するためにブロック境界をフィルタリングするデブロッキングフィルタ（図２に図示せず）も含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。
【００５０】
[0057]図２に示すように、ビデオエンコーダ２０は、符号化されるべきビデオスライス内の現在のビデオブロックを受信する。スライスは、複数のビデオブロックに分割され得る。モード選択ユニット４０は、誤差結果に基づいて現在のビデオブロックのためのコーディングモード、イントラまたはインターのうちの１つを選択し得、予測ユニット４１は、得られたイントラコード化ブロックまたはインターコード化ブロックを、残差ブロックデータを生成するために加算器５０に、また参照ピクチャとして使用するための符号化ブロックを再構成するために加算器６２に供給し得る。
【００５１】
[0058]予測ユニット４１内のイントラ予測ユニット４６は、空間圧縮を行うために、コーディングされるべき現在のブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対する現在のビデオブロックのイントラ予測コーディングを実行し得る。予測ユニット４１内の動き推定ユニット４２および動き補償ユニット４４は、時間圧縮を行うために、１つまたは複数の参照ピクチャ中の１つまたは複数の予測ブロックに対する現在のビデオブロックのインター予測コーディングを実行する。
【００５２】
[0059]動き推定ユニット４２は、ビデオシーケンスの所定のパターンに従ってビデオスライスのためのインター予測モードを決定するように構成され得る。所定のパターンは、シーケンス中のビデオスライスをＰスライス、Ｂスライス、またはＧＰＢスライスに指定し得る。動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。
【００５３】
[0060]予測ブロックは、絶対値差分和（ＳＡＤ）、差分２乗和（ＳＳＤ）、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングすべきビデオブロックのＰＵにぴったり一致することがわかるブロックである。いくつかの例では、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を計算し得る。したがって、動き推定ユニット４２は、フルピクセル位置と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【００５４】
[0061]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライスにおけるビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）６６および／または第２の参照ピクチャリスト（リスト１）６８から、または、本開示の技法によれば、結合された参照ピクチャリスト（リストＣ）７０から選択され得る。リスト０  ６６およびリスト１  ６８は、参照ピクチャメモリ６４に記憶される復号された参照ピクチャに基づいて構成され得る。リストＣ７０は、リスト０  ６６およびリスト１  ６８のうちの少なくとも１つにおいて識別される参照ピクチャを含むように構成され得る。概して、参照ピクチャリストは、代替的に参照フレームリストと呼ばれることがある。
【００５５】
[0062]一例として、インターコード化スライスがＰスライスを備えるとき、動き推定ユニット４２は、過去の参照ピクチャについての識別子を含むリスト０  ６６における参照ピクチャを指す単一の動きベクトルで、Ｐスライスのビデオブロックを単方向予測することができる。本開示の技法によれば、インターコード化スライスがＢスライスを備えるとき、動き推定ユニット４２は、リスト０  ６６およびリスト１  ６８における参照ピクチャを指す２つの動きベクトルで、Ｂスライスのビデオブロックを双予測する、またはリストＣ７０における参照ピクチャを指す単一の動きベクトルで、Ｂスライスのビデオブロックを単方向予測することができる。
【００５６】
[0063]通常のＢスライスでは、リスト０  ６６は、過去の参照ピクチャについての識別子を、リスト１  ６８は、将来の参照ピクチャについての識別子を、すなわち、各ピクチャに関連付けられたピクチャ順序カウント（ＰＯＣ）値によって示され得る表示順で含み得る。ＢスライスがＧＰＢスライスを備えるとき、リスト０  ６６とリスト１  ６８の両方は、同じ時間的方向の参照ピクチャを含み得る。ＧＰＢスライスの特定の一例では、リスト０およびリスト１は同一でもよい。その場合、リスト０  ６６およびリスト１  ６８は、同数のピクチャ（Ｎとして示される）を有し、リスト０  ６６における参照インデックスｉ（ｉ＜Ｎ）を有する任意のピクチャは、リスト１  ６８における参照インデックスｉを有するピクチャと同じである。したがって、リスト０  ６６およびリスト１  ６８のうちの少なくとも１つからの参照ピクチャを含むリストＣ７０は、現在のピクチャに対する前方と後方の両方の時間的方向の参照ピクチャを含み得る。
【００５７】
[0064]動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。動き補償ユニット４４によって実行される動き補償は、動き推定によって求められた動きベクトルに基づいて予測ブロックを取り込むかまたは生成することを含んでもよい。現在のビデオブロックのＰＵについての動きベクトルを受信すると、動きベクトルがリスト０  ６６、リスト１  ６８またはリストＣ７０のうちの１つにおいて、動き補償ユニット４４が指す予測ブロックの位置を特定することができる。ビデオエンコーダ２０は、コード化される現在のビデオブロックのピクセル値から、予測ブロックのピクセル値を減算し、ピクセル差値を形成することによって、残差ビデオブロックを形成する。ピクセル差値は、ブロックの残差データを形成し、ルーマおよびクロマの差分成分を含み得る。加算器５０は、この減算演算を実行する１つまたは複数の構成要素を表す。
【００５８】
[0065]動き補償ユニット４４は、ビデオスライスのビデオブロックを復号する際、ビデオデコーダ３０によって使用するための、ビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を生成することもできる。たとえば、動き補償ユニット４４は、ビデオスライスレベルでリスト０  ６６、リスト１  ６８、およびリストＣ７０についての構成情報を示すように定義されたシンタックス要素を生成することができる。ビデオデコーダ３０は、これらのシンタックス要素を使用して、最初にリスト０およびリスト１を構成し、次いで、リスト０およびリスト１から１つまたは複数の参照ピクチャを含むように、結合された参照ピクチャリストを構成し得る。次いで、ビデオデコーダ３０は、参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、元のビデオブロックを復号することができる。
【００５９】
[0066]さらに、動き補償ユニット４４は、ビデオブロックがリスト０  ６６およびリスト１  ６８から双予測される（Ｂｉ）か、リストＣ７０から単方向予測される（Ｐｒｅｄ＿ＬＣ）か、を示すために、ビデオスライスの各コード化ビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃを生成する。単方向予測のために、リスト０  ６６およびリスト１  ６８からの参照ピクチャをリストＣ７０に結合するとき、Ｂスライスにおけるビデオブロックについてのインター予測ステータスは、ＢｉおよびＰｒｅｄ＿ＬＣの２つのみが可能であり、これは、１ビットを消費する。したがって、本技法によって、リスト０およびリスト１が同一であるかどうかにかかわらず、ＧＰＢスライスを含むＢスライスにおけるビデオブロックについてのインター予測ステータスのコード化のコストが低減する。
【００６０】
[0067]しかしながら、Ｂスライスにおけるビデオブロックを復号するためにビデオデコーダ３０で結合された参照ピクチャリストを構成するとき、いくつかの問題が生じ得る。たとえば、ビデオデコーダ３０は、リストＣ７０に含まれるようにリスト０  ６６とリスト１  ６８の両方からのあらゆる参照ピクチャを選択しない場合がある。ビデオデコーダ３０がリストＣ７０に含まれる参照ピクチャの数を知らない場合、ビデオデコーダ３０は、結合された参照ピクチャリストを構成することができず、また、コード化されたＢスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、ビデオデコーダ３０で結合された参照ピクチャリストを自動的に構成することは、複雑な復号プロセスを必要とし得る。本開示で説明する例示的な技法によれば、リストＣ７０がＢスライスの単方向予測に使用されるとき、ビデオエンコーダ２０は、符号化されたビデオデータで、リストＣ７０の中身がビデオデコーダ３０によってリスト０  ６６およびリスト１  ６８から構成されるべき方法を明示的にシグナリングするために、１つまたは複数のシンタックス要素を符号化する。具体的には、シンタックス要素は、リストＣ７０における参照ピクチャの数、および、リストＣ７０のエントリごとの、リスト０  ６６またはリスト１  ６８からの参照ピクチャのインデックスを示し得る。
【００６１】
[0068]一例では、ビデオデコーダ２０は、リストＣ７０に含まれるようにリスト０  ６６とリスト１  ６８の両方におけるすべての参照ピクチャを選択し得る。この場合、リストＣ７０における参照ピクチャの数は、リスト０  ６６およびリスト１  ６８における参照ピクチャの数の合計に等しくなり得る。しかしながら、他の場合には、ビデオエンコーダ２０は、リストＣ７０における参照ピクチャの数が、リスト０  ６６およびリスト１  ６８における参照ピクチャの総数未満となり得、ビデオデコーダ３０に知られていないような柔軟な方法で、リストＣ７０を構成するように構成され得る。
【００６２】
[0069]場合によっては、リスト０  ６６およびリスト１  ６８における１つまたは複数の参照ピクチャ間に部分的な重複があり得る。特に、リスト０  ６６およびリスト１  ６８は、各リストにおいて異なるいくつかの参照ピクチャ、および各リストにおいて同じいくつかの参照ピクチャを含み得、したがって、参照ピクチャのうちのいくつかが、リスト０  ６６とリスト１  ６８の両方に現れ得る。いくつかの実装形態では、ビデオエンコーダ２０は、リストＣにおける参照ピクチャの重複を回避するように設計され得る。たとえば、リストＣ７０が冗長の参照ピクチャをなくすように構成されているとき、リストＣ７０における参照ピクチャの数は、リスト０  ６６およびリスト１  ６８における参照ピクチャの数の合計未満になり得る。他の例では、ビデオエンコーダ２０は、リストＣ７０に含まれるようにリスト０  ６６およびリスト１  ６８におけるすべてよりも少ない参照ピクチャを選択するように構成され得る。したがって、リスト０  ６６およびリスト１  ６８のピクチャがリストＣ７０に追加されるとき、一方のリストにはあるが、他方のリストにはない参照ピクチャの追加のため、および／または両方のリストにある冗長な参照ピクチャの随意の消去のため、リストＣ７０における参照ピクチャの数は不確実でもよい。
【００６３】
[0070]ビデオデコーダ３０が結合された参照ピクチャリストを構成できるようにするために、本開示の例によれば、ビデオエンコーダ２０は、リストＣ７０における参照ピクチャの数、およびリストＣ７０における各エントリをＢスライスのスライスヘッダで明示的にシグナリングするように構成され得る。ビデオエンコーダ２０は、たとえば、Ｂスライスのスライスヘッダにおいてリスト０  ６６およびリスト１  ６８についての参照ピクチャリスト変更シンタックステーブルをシグナリングした後、リストＣ７０についての構成情報をシグナリングすることができる。代わりに、ビデオエンコーダ２０は、スライスヘッダにおいて参照ピクチャリスト変更シンタックステーブルをシグナリングする前に、リストＣ７０についての構成情報をシグナリングすることができる。結合された参照ピクチャリストシンタックステーブル、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ、および参照ピクチャリスト変更または並べ替えシンタックステーブル、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｍｏｄｉｆｉｃａｔｉｏｎ、および他のスライスヘッダシンタックス要素を含む例示的なスライスヘッダについて、以下の表１に示され、図３に関してより詳細に説明する。
【００６４】
[0071]さらに、ビデオエンコーダ２０は、結合された参照ピクチャリストを構成する際に、ビデオデコーダ３０によって使用するための他のシンタックス要素を明示的にシグナリングすることができる。たとえば、結合された参照ピクチャリストシンタックステーブルは、リストＣ７０がＢスライスにおけるビデオブロックの単方向予測に使用されるかどうかを示す。リストＣ７０が単方向予測に使用されるとき、ビデオエンコーダ２０は、リストＣ７０がリスト０  ６６およびリスト１  ６８から構成される、または単に参照ピクチャリストのうちの１つに等しくなるように設定されているかを示すために、１ビットフラグ、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇをシグナリングする。たとえば、リスト０  ６６およびリスト１  ６８が同一の場合、すなわち、ＢスライスがＧＰＢスライスである場合、ビデオエンコーダ２０は、リスト０  ６６またはリスト１  ６８に等しくなるように、リストＣ７０を設定することができる。この場合、ビデオエンコーダ２０は、リストＣ７０の中身がリスト０  ６６およびリスト１  ６８から構成されるべき方法を、ビデオデコーダ３０に明示的にシグナリングするために、追加のシンタックス要素を符号化しない。代わりに、リストＣ７０における参照ピクチャの数は、リスト０  ６６またはリスト１  ６８のいずれかに含まれる参照ピクチャの数に基づいて示され得る。
【００６５】
[0072]リストＣ７０がリスト０  ６６およびリスト１  ６８から構成されるとき、結合された参照ピクチャリストシンタックステーブルは、リストＣ７０における参照ピクチャの数、すなわち、ｎｕｍ＿ｃｏｍ＿ｒｅｆ＿ｌｉｓｔ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１を明示的にシグナリングするシンタックス要素を含む。代替として、ビデオエンコーダ２０は、リスト０  ６６およびリスト１  ６８における重複する参照ピクチャの数、すなわち、リスト０  ６６およびリスト１  ６８において同じであるピクチャの数をシグナリングするように構成され得る。結合された参照ピクチャリストシンタックステーブルは、たとえば、重複する参照ピクチャの数を明示的にシグナリングするシンタックス要素、すなわち、ｎｕｍ＿ｏｖｅｒｌａｐｐｅｄ＿ｐｉｃｓを含み得る。他の例では、このシンタックス要素は、スライスヘッダにおいて明示的にシグナリングされ得る。この代替では、ビデオデコーダ３０は、リスト０  ６６における示された参照ピクチャの数、すなわち、ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１、リスト１における参照ピクチャの示された数、すなわち、ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ１＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１、および重複する参照ピクチャの示された数に基づいて、リストＣ７０における参照ピクチャの数を決定することができる。特に、ビデオデコーダ３０は、ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ１＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋２−ｎｕｍ＿ｏｖｅｒｌａｐｐｅｄ＿ｐｉｃｓとして、リストＣ７０における参照ピクチャの数を計算することができる。
【００６６】
[0073]リストＣ７０がリスト０  ６６およびリスト１  ６８から構成されるとき、デコーダ３０によって使用するためのエンコーダ２０によって準備される結合された参照ピクチャリストシンタックステーブルは、現在の参照ピクチャリスト、リスト０  ６６またはリスト１  ６８のいずれか、および現在のリストにおける参照ピクチャの参照インデックスを含めて、リストＣ７０における各エントリを明示的にシグナリングするシンタックス要素も含む。より詳細には、ビデオエンコーダ２０は、１ビットフラグ、すなわち、ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇ（ｉ）をシグナリングし得、この場合、ｉは、リストＣ７０におけるエントリ内の参照ピクチャの現在の参照ピクチャリストを示すリストＣ７０におけるエントリを識別する。ビデオエンコーダ２０は、シンタックス要素、すなわち、ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ（ｉ）をシグナリングすることができ、この場合、ｉは、現在の参照ピクチャリストにおける参照ピクチャのインデックスを示すリストＣ７０におけるエントリを識別する。
【００６７】
[0074]場合によっては、リストＣ７０をシグナリングするためのビットの消費は、異なる実装形態において単独で、または一緒に使用され得る少なくとも２つの手法を使用して低減され得る。まず、ビデオエンコーダ２０は、リストＣ７０が明示的にシグナリングされるか、リスト０  ６６およびリスト１  ６８のうちの１つに等しいかどうかを示すために、２ビットフラグ、すなわち、ｃｏｍ＿ｌｉｓｔ＿ｅｑｕａｌ＿ｉｄｃをシグナリングするように構成され得る。たとえば、リスト０  ６６およびリスト１  ６８のうちの一方が他方のリストのサブセットであるとき、ビデオエンコーダ２０は、リストＣ７０を他方のリストに等しくなるように設定する。この場合、リストＣ７０は、サブセットを形成するより小さいリストからのピクチャのすべてを本質的に含む、リスト０  ６６およびリスト１  ６８のうちより大きい方の参照ピクチャのすべてを含む。リストＣ７０がリスト０  ６６またはリスト１  ６８のいずれかに等しい場合、ビデオエンコーダ２０は、リストＣ７０の中身がビデオデコーダ３０によってリスト０  ６６およびリスト１  ６８から構成されるべき方法を明示的にシグナリングするために、任意の追加のシンタックス要素を符号化する必要はない。代わりに、リストＣ７０における参照ピクチャの数は、リスト０  ６６またはリスト１  ６８のいずれかに含まれる参照ピクチャの数に基づいて示され得る。
【００６８】
[0075]第２に、ビデオエンコーダ２０は、リストＣ７０におけるエントリごとの参照ピクチャのインデックスを差分的にシグナリングするように構成され得る。この場合、リストＣ７０で参照ピクチャの実際のインデックス値を符号化する代わりに、ビデオエンコーダ２０は、現在の参照ピクチャリストにおける参照ピクチャのインデックスとリストＣ７０における前のエントリに追加された同じ参照ピクチャリストにおける前の参照ピクチャのインデックスとの間の差（たとえば、オフセット）を示すために、参照ピクチャについてのインデックスデルタ、すなわち、ｄｅｌｔａ＿ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ＿ｍｉｎｕｓ１を符号化する。リスト０  ６６およびリスト１  ６８の所与の一方からリストＣ７０に含まれる参照ピクチャのインデックス値は、一般的に、昇順に、小さい増分で増加する。
【００６９】
[0076]この場合、ビデオデコーダ３０は、示されたインデックスデルタ、すなわち、ｄｅｌｔａ＿ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ＿ｍｉｎｕｓ１、および現在の参照ピクチャリストからの前の参照ピクチャの前に示されたインデックス、すなわち、ｘが現在の参照ピクチャリストを示す場合、ＰｒｅＲｅｆＩｄｘＬｘに基づいて、現在の参照ピクチャリストにおける参照ピクチャのインデックスを決定することができる。特に、ビデオデコーダ３０は、リストＣ７０における現在の参照ピクチャのインデックス、すなわちＣｕｒｒＲｅｆ＿Ｉｄｘ＿Ｌｘをｄｅｌｔａ＿ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ＿ｍｉｎｕｓ１＋１＋ＰｒｅＲｅｆＩｄｘＬｘとして計算することができる。結合された参照ピクチャリストシンタックステーブル、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎの例について、表２および表３で以下に示され、図３に関してより詳細に説明されている。
【００７０】
[0077]動き補償ユニット４４が、現在のビデオブロックについての予測ブロックを生成した後、ビデオエンコーダ２０は、現在のビデオブロックから予測ブロックを減算することによって、残差ビデオブロックを形成する。残差ブロックにおける残差ビデオデータは、１つまたは複数のＴＵに含まれ得、変換ユニット５２に適用され得る。変換ユニット５２は、変換、たとえば離散コサイン変換（ＤＣＴ）または概念的に類似の変換を使用して、残差ビデオデータを残差変換係数に変換する。変換ユニット５２は、ピクセル領域からの残差ビデオデータを周波数領域などの変換領域に変換し得る。
【００７１】
[0078]変換ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減することができる。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット５６が走査を実行し得る。
【００７２】
[0079]量子化の後、エントロピー符号化ユニット５６は、量子化変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context adaptive binary arithmetic coding）、または別のエントロピー符号化技法を実行し得る。エントロピー符号化ユニット５６によるエントロピー符号化の後に、符号化されたビットストリームは、ビデオデコーダ３０に送信される、またはビデオデコーダ３０によって後で送信する、または取り出すためにアーカイブされ得る。
【００７３】
[0080]エントロピー符号化ユニット５６はまた、コード化されている現在のビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化し得る。たとえば、エントロピー符号化ユニット５６は、ビデオスライスレベルでリスト０  ６６、リスト１  ６８、およびリストＣ７０についての構造情報を示すように定義されたシンタックス要素をエントロピー符号化し得る。本技法によれば、エントロピー符号化ユニット５６は、リストＣ７０の中身がビデオデコーダ３０によってリスト０  ６６およびリスト１  ６８から構成されるべき方法を明示的にシグナリングするシンタックス要素をエントロピー符号化し得る。さらに、エントロピー符号化ユニット５６は、ビデオブロックがリスト０  ６６およびリスト１  ６８から双予測される（Ｂｉ）か、リストＣ７０から単方向予測される（Ｐｒｅｄ＿ＬＣ）かを示すために、ビデオスライスの各コード化ビデオブロックに関連付けられたインター予測ステータスシンタックス要素、すなわちｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃをエントロピー符号化し得る。ビデオデコーダ３０は、参照ピクチャリストを構成し、ビデオエンコーダ２０によって符号化された元のビデオブロックを再構成するために、これらのシンタックス要素を使用することができる。
【００７４】
[0081]逆量子化ユニット５８および逆変換ユニット６０は、それぞれ逆量子化および逆変換を適用して、参照ピクチャの参照ブロックとして後で使用するために、ピクセル領域において残差ブロックを再構成する。動き補償ユニット４４は、残差ブロックをリスト０  ６６またはリスト１  ６８内の参照ピクチャのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器６２は、再構成された残差ブロックを動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ６４に記憶するための参照ブロックを生成する。参照ブロックは、後続のビデオフレームまたはピクチャ中のブロックをインター予測するために、動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【００７５】
[0082]図３は、シンタックス要素を使用して、結合された参照ピクチャリスト、リストＣ９８を構成し、リストＣ９８を使用して、単方向予測されたビデオブロックを復号するための技法を実施することができる例示的なビデオデコーダ３０を示すブロック図である。図３の例では、ビデオデコーダ３０は、エントロピー復号ユニット８０と、予測ユニット８１と、逆量子化ユニット８６と、逆変換ユニット８８と、加算器９０と、参照ピクチャメモリ９２とを含む。予測ユニット８１は、動き補償ユニット８２と、イントラ予測ユニット８４とを含む。ビデオデコーダ３０は、いくつかの例では、図２のビデオエンコーダ２０に関して説明した符号化パスとは概して逆の復号パスを実行し得る。
【００７６】
[0083]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化されたビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化されたビデオビットストリームを受信する。ビデオデコーダ３０のエントロピー復号ユニット８０は、量子化係数、動きベクトル、および他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット８０は、予測ユニット８１に動きベクトルと他のシンタックス要素とを転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信することができる。
【００７７】
[0084]ビデオスライスがイントラコード化された（Ｉ）スライスとしてコード化されるとき、予測ユニット８１のイントラ予測ユニット８４は、シグナリングされたイントラ予測モードと現在のフレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックについての予測データを生成し得る。ビデオフレームがインターコード化された（すなわちＢ、Ｐ、またはＧＰＢ）スライスとしてコード化されると、予測ユニット８１の動き補償ユニット８２は、エントロピー復号ユニット８０から受信された動きベクトルおよび他のシンタックス要素に基づいて現在のビデオフレームのビデオブロックの予測ブロックを生成する。
【００７８】
[0085]動き補償ユニット８２は、動きベクトルと他のシンタックス要素とを解析することによって現在のビデオスライスのビデオブロックについての予測情報を決定し、予測情報を使用して、復号されている現在のビデオブロックのための予測ブロックを生成する。たとえば、動き補償ユニット８２は、ビデオスライスのビデオブロックをコード化するために使用される予測モード（たとえば、イントラまたはインター予測）、インター予測スライスタイプ（たとえば、Ｂスライス、Ｐスライス、またはＧＰＢスライス）、スライスのための参照ピクチャリストの１つまたは複数についての構成情報、スライスのインター符号化されたビデオブロックごとの動きベクトル、スライスのインターコード化されたビデオブロックごとのインター予測ステータス、および現在のビデオスライスにおけるビデオブロックを復号するための他の情報を決定するために、受信されたシンタックス要素のいくつかを使用する。
【００７９】
[0086]動き補償ユニット８２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット８２は、ビデオブロックの符号化中にビデオエンコーダ２０によって使用される補間フィルタを使用して、参照ブロックのサブ整数ピクセルの補間値を計算し得る。動き補償ユニット８２は、受信したシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
【００８０】
[0087]予測ブロックは、第１の参照ピクチャリスト（リスト０）９４および／または第２の参照ピクチャリスト（リスト１）９６から、または、本開示の技法によれば、結合された参照ピクチャリスト（リストＣ）９８から生成され得る。一例として、インターコード化スライスがＰスライスを備えるとき、動き補償ユニット８２は、過去の参照ピクチャについての識別子を含むリスト０  ９４における参照ピクチャを指す単一の動きベクトルに基づいて、Ｐスライスの単方向予測されたビデオブロックの予測ブロックを生成することができる。本開示の技法によれば、インターコード化スライスがＢスライスを備えるとき、動き補償ユニット８２は、リスト０  ９４およびリスト１  ９６における参照ピクチャを指す２つの動きベクトルに基づいて、Ｂスライスの双予測されたビデオブロック、またはリストＣ７０における参照ピクチャを指す単一の動きベクトルに基づいて、Ｂスライスの単方向予測されたビデオブロックについての予測ブロックを生成することができる。
【００８１】
[0088]ビデオデコーダ３０は、参照ピクチャメモリ９２に記憶される参照ピクチャに基づいて、デフォルトの構成技法を使用して、リスト０  ９４およびリスト１  ９６を構成することができる。リスト０  ９４およびリスト１  ９６を構成するために、ビデオデコーダ３０は、リスト０  ９４およびリスト１  ９６ごとに、参照ピクチャリスト初期化および参照ピクチャリスト変更（すなわち、並べ替え）を実行する。リスト０  ９４を構成するために、たとえば、ビデオデコーダ３０は、所定の順序に従って参照ピクチャメモリ９２からの参照ピクチャをリスト０  ９４に追加することによって、参照ピクチャリスト初期化を実行することができる。たとえば、ビデオデコーダ３０は、参照ピクチャのフレーム番号の順、すなわち、復号順、または参照ピクチャのピクチャ順序カウント（ＰＯＣ）番号の順、すなわち表示順に基づいて、リスト０  ９４を初期化することができる。次いで、ビデオデコーダ３０は、明示的にシグナリングされた順序に基づいて、リスト０  ９４に含まれる参照ピクチャを並べ替えるために、参照ピクチャリスト変更を実行することができる。初期化後、ビデオデコーダ３０は、リスト０  ９４に含まれるべきアクティブな参照ピクチャの数を超えないように、リスト０  ９４を切り捨てることができる。場合によっては、ビデオデコーダ３０は、明示的にシグナリングされた重みおよびオフセット値に基づいて、予測重みおよびオフセットをリスト０  ９４における参照ピクチャに適用することもできる。
【００８２】
[0089]本開示の技法によれば、ビデオデコーダ３０は、シンタックス要素を使用して、リスト０  ９４およびリスト１  ９６のうちの少なくとも１つからの参照ピクチャを含むように、リストＣ９８を構成することができる。通常のＢスライスについて、リスト０  ９４は、過去の参照ピクチャのための識別子を含み得、リスト１  ９６は、将来の参照ピクチャのための識別子を含み得る。ＢスライスがＧＰＢスライスを備えるとき、リスト０  ９４とリスト１  ９６の両方は、同じ時間的方向の参照ピクチャを含み得る。ＧＰＢスライスの特定の一例では、リスト０  ９４およびリスト１  ９６は同一でもよい。その場合、リスト０  ９４およびリスト１  ９６は、同数のピクチャ（Ｎとして示される）を有し、リスト０  ９４における参照インデックスｉ（ｉ＜Ｎ）を有する任意のピクチャは、リスト１  ９６における参照インデックスｉを有するピクチャと同じである。したがって、リスト０  ９４およびリスト１  ９６のうちの少なくとも１つからの参照ピクチャを含むリストＣ９８は、現在のピクチャに対して前方と後方の両方の時間的方向の参照ピクチャを含み得る。
【００８３】
[0090]しかしながら、Ｂスライスにおけるビデオブロックを復号するためにビデオデコーダ３０で結合された参照ピクチャリストを構成するとき、いくつかの問題が生じ得る。たとえば、リストＣ９８は、必ずしも、リスト０  ９４とリスト１  ９６の両方からのあらゆる参照ピクチャを含んでいるとは限らない場合がある。ビデオデコーダ３０がリストＣ９８に含まれる参照ピクチャの数を知らないとき、ビデオデコーダ３０は、リストＣ９８を構成することができず、また、コード化されたＢスライスにおける各ビデオブロックに関連付けられたインター予測ステータスシンタックス要素を解析することができない場合がある。さらに、ビデオデコーダ３０で結合された参照ピクチャリストを自動的に構成することは、複雑な復号プロセスを必要とし得る。本技法によれば、リストＣ９８がＢスライスの単方向予測に使用されるとき、ビデオデコーダ３０は、リストＣ９８の中身がビデオデコーダ３０によってリスト０  ９４およびリスト１  ９６から構成されるべき方法を明示的にシグナリングする１つまたは複数のシンタックス要素を受信する。具体的には、シンタックス要素は、リストＣ９８における参照ピクチャの数、および、リストＣ９８のエントリごとの参照ピクチャのインデックスを示し得る。
【００８４】
[0091]リストＣ９８を構成するために、ビデオデコーダ３０は、たとえば、Ｂスライスのスライスヘッダにおけるリスト０  ９４およびリスト１  ９６についての参照ピクチャリスト変更または並べ替えシンタックステーブルの後、リストＣ９８についての構成情報を受信することができる。代わりに、ビデオデコーダ３０は、スライスヘッダにおける参照ピクチャリスト変更（並べ替え）シンタックステーブルのシグナリングする前に、リストＣ９８についての構成情報を受信することができる。結合された参照ピクチャリストシンタックステーブル、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ、および参照ピクチャリスト変更または並べ替えシンタックステーブル、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｍｏｄｉｆｉｃａｔｉｏｎ、および他のスライスヘッダシンタックス要素を含む例示的なスライスヘッダは、以下の表１に示される。
【表１−１】
0005778298.tif 000002
【表１−２】
0005778298.tif 000003
【００８５】
[0092]表１、ならびに以下の表２および表３のＣ列は、現在のビデオブロックのどのデータパーティション中にシンタックス要素が含まれるのかを定義する各シンタックス要素のカテゴリーを示す。表１の記述子列は、ビデオデコーダ３０におけるシンタックス要素の適切なパーシングを可能にするためにシンタックス要素のために使用されるコーディングのタイプを示す。たとえば、記述子「ｕｅ（ｖ）」は、指数ゴロムコーディング（exponential-Golomb coding）を示す。
【００８６】
[0093]さらに、ビデオデコーダ３０は、リストＣ９８を構成するために使用される他のシンタックス要素を受信し得る。以下の表２は、結合された参照ピクチャリストシンタックステーブル、すなわちｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ（  ）の第１の例を表す。
【表２】
0005778298.tif 000004
【００８７】
[0094]結合された参照ピクチャリストシンタックステーブルは、最初に、リストＣ９８がＢスライスにおけるビデオブロックの単方向予測に使用されるかどうかを示す。リストＣ９８がＢスライスの単方向予測に使用されるとき、ビデオデコーダ３０は、リストＣ９８の中身がビデオデコーダ３０によってリスト０  ９４およびリスト１  ９６から構成されるべき方法を明示的にシグナリングする１つまたは複数のシンタックス要素を受信する。表２に示すように、現在のスライスタイプがＢスライスである場合、ビットフラグ、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇは、リストＣ９８がＢスライスにおけるビデオブロックの単方向予測に使用されることになっていることを示す。ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇの値は、リストＣ９８がリスト０  ９４およびリスト１  ９６から構成されることになっているか、単に参照ピクチャリストのうちの１つに等しくなるように設定されるのみであるかを示す。より詳細には、１に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇの値は、ビデオデコーダ３０がリスト０  ９４およびリスト１  ９６からリストＣ９８を構成することを示す。
【００８８】
[0095]０に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇの値は、リスト０  ９４およびリスト１  ９６が同一であり、すなわち、ＢスライスがＧＰＢスライスであることを示し、ビデオエンコーダ３０は、リスト０  ９４またはリスト１  ９６に等しくなるように、リストＣ９８を設定することができる。リストＣ９６がリスト０  ９４またはリスト１  ９６から構成されない場合、ビデオデコーダは、リストＣ９８の中身がビデオデコーダ３０によってリスト０  ９４およびリスト１  ９６から構成されるべき方法を明示的にシグナリングする追加のシンタックス要素を受信しない。代わりに、リストＣ９８における参照ピクチャの数は、リスト０  ９４またはリスト１  ９６のいずれかに含まれる参照ピクチャの数に基づいて決定され得る。
【００８９】
[0096]いずれの場合も、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇが０または１に等しい値を有するとき、ビデオデコーダ３０は、Ｂスライスにおける単方向予測されたビデオブロックを復号するように、リストＣ９８を構成する。上記で説明したように、リストＣ９８を使用することによって、参照ピクチャリストが同一であるとき、ＧＰＢスライスの場合のように、２ビットを消費する３つのステータス（Ｂｉ、Ｐｒｅｄ＿Ｌ０、Ｐｒｅｄ＿Ｌ１）から１ビットを消費する２つのステータス（Ｂｉ、Ｐｒｅｄ＿ＬＣ）にシグナリングを低減するように、Ｂスライスにおける各ビデオブロックに関連付けられたｉｎｔｅｒ＿ｐｒｅｄ＿ｉｄｃシンタックス要素を変更することができる。結果として、本技法は、リストＣ９８に関して単方向予測されるＢスライスにおけるビデオブロックについての効率をかなり高めることができる。代わりに、０に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇの値は、単に、結合されたリストが現在のスライスに使用されないことを示し得る。
【００９０】
[0097]ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇが１に等しい値を有する場合、単にリストＣ９８をリスト０  ９４またはリスト１  ９６に等しくなるように設定する代わりに、ビデオデコーダ３０は、リストＣ９８を生成するために、ビデオエンコーダ２０によって指定された方法で、リスト０  ９４およびリスト１  ９６から参照ピクチャを選択する。特に、上記の表２をさらに参照すると、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇが１に等しい値を有する場合、すなわち、リストＣ９８がリスト０  ９４およびリスト１  ９６から構成される場合、ビデオデコーダ３０は、リストＣ９８におけるピクチャの明示的にシグナリングされた数、すなわち、ｎｕｍ＿ｃｏｍ＿ｒｅｆ＿ｌｉｓｔ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１を受信する。ｎｕｍ＿ｃｏｍ＿ｒｅｆ＿ｌｉｓｔ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１シンタックス要素は、リストＣ９８についてリスト０  ９４およびリスト１  ９６から選択された参照ピクチャの総数に等しい、リストＣ９８における参照ピクチャの数を指定する。この数は、ビデオエンコーダ２０の構成に応じて、リスト０  ９４およびリスト１  ９６における参照ピクチャの総数に等しくてもよく、または等しくなくてもよい。
【００９１】
[0098]代替として、リストＣ９８における参照ピクチャの数を受信する代わりに、ビデオデコーダ３０は、リスト０  ９４およびリスト１  ９６における明示的にシグナリングされた重複する参照ピクチャの数、すなわち、ｎｕｍ＿ｏｖｅｒｌａｐｐｅｄ＿ｐｉｃｓを受信することができる。この場合、ビデオデコーダ３０は、リスト０  ９４における示された参照ピクチャの数、すなわち、ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１、リスト１  ９６における参照ピクチャの示された数、すなわち、ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ１＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１、および重複する参照ピクチャの示された数に基づいて、リストＣ７０における参照ピクチャの数を決定することができる。特に、ビデオデコーダ３０は、ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ０＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋ｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌ１＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１＋２−ｎｕｍ＿ｏｖｅｒｌａｐｐｅｄ＿ｐｉｃｓとして、リストＣ９８における参照ピクチャの数を計算することができる。
【００９２】
[0099]上記の表２に示すように、ビデオデコーダ３０は、次いで、ｎｕｍ＿ｃｏｍ＿ｒｅｆ＿ｌｉｓｔ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１に等しい数のピクチャを有するリストＣ９８を構成するために、ループ（ｉ＝０からｉ＝ｎｕｍ＿ｃｏｍ＿ｒｅｆ＿ｌｉｓｔ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１まで）に入る。表２の追加のシンタックス要素によって定義される構成ループの開始時に、リストＣ９８は、空に設定される。ループにおいて、シンタックス要素は、現在の参照ピクチャリスト、リスト０  ９４またはリスト１  ９６のいずれか、および現在のリストにおける参照ピクチャの参照インデックスを含めて、リストＣ９８における各エントリを明示的にシグナリングする。
【００９３】
[0100]より詳細には、１ビットフラグ、すなわち、ｉがリストＣ９８におけるエントリを識別する場合、ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇ（ｉ）は、リストＣ９８におけるエントリに追加されるべき参照ピクチャの現在の参照ピクチャリストを示す。ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇの値が１に等しいとき、リストＣ９８におけるエントリに追加されるべき現在の参照ピクチャは、リスト０  ９４からのものであり、ＣｕｒｒＲｅｆＰｉｃＬｉｓｔシンタックス要素によって示される現在の参照ピクチャリストは、リスト０  ９４である。ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇの値が０に等しいとき、リストＣ９８におけるエントリに追加されるべき現在の参照ピクチャは、リスト１  ９６からのものであり、ＣｕｒｒＲｅｆＰｉｃＬｉｓｔによって示される現在の参照ピクチャリストは、リスト１  ９６である。ビデオエンコーダ２０によって指定されるように、構成ループが、リスト０  ９４またはリスト１  ９６からのピクチャについてのインデックスを、たとえば交互に、または他のパターンで、リストＣ９８に選択的に追加するように、ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇの状態は、ｉの値によってインデックスを付けられるアレイに従って変わり得る。
【００９４】
[0101]上記の表２をさらに参照すると、ｉがリストＣ７０におけるエントリを識別する場合、シンタックス要素、すなわち、ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ（ｉ）は、ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇの値に応じて、リストＣ９８におけるエントリに追加されるべき、ＣｕｒｒＲｅｆＰｉｃＬｉｓｔ、すなわちリスト０  ９４またはリスト１  ９６における現在の参照ピクチャの参照インデックスを示す。ｉの値が０からｎｕｍ＿ｃｏｍ＿ｒｅｆ＿ｌｉｓｔ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１まで連続的に増分するので、ビデオデコーダ３０は、リストＣ９８の終端において、現在の参照ピクチャの示された参照インデックスを付加する。各参照ピクチャリスト、リスト０  ９４またはリスト１  ９６における参照インデックスは、ビデオエンコーダ２０の構成に応じて、連続的または非連続的に増分することができる。
【００９５】
[0102]ループの各繰返しで、ビデオデコーダ３０は、現在の参照ピクチャリスト、リスト０  ９４またはリスト１  ９６における別の参照ピクチャの示された参照インデックスを、リストＣ９８の終わりに追加する。ｎｕｍ＿ｃｏｍ＿ｒｅｆ＿ｌｉｓｔ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１に等しいいくつかの繰返しを完了すると、ビデオデコーダ３０は、リストＣ９８を構成している。次いで、ビデオデコーダ３０は、Ｂスライスにおける単方向予測されたビデオブロックを復号するためにリストＣ９８を使用することができる。ビデオデコーダ３０は、Ｂコーディングを２つのステータス、ＢｉおよびＰｒｅｄ＿ＬＣに制限する変更されたインター予測ステータスシンタックス要素に対応することもでき、この場合、Ｐｒｅｄ＿ＬＣは、リストＣ９８に関する単方向予測を表す。
【００９６】
[0103]表３は、代替のビット低減手法を含む、結合された参照ピクチャリストシンタックステーブル、すなわちｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ（  ）の第２の例を表す。リストＣ７０をシグナリングするためのビットの消費は少なくとも２つの手法を使用して低減され得、それは、異なる実装形態において単独で、または一緒に使用され得る。
【表３】
0005778298.tif 000005
【００９７】
[0104]表３の例において、表２の場合のように、現在のスライスタイプがＢスライスである場合、ビットフラグ、すなわち、ｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇは、リストＣ９８がＢスライスにおけるビデオブロックの単方向予測に使用されることになっていることを示す。０に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇの値は、リスト０  ９４およびリスト１  ９６が同一であり、すなわち、ＢスライスがＧＰＢスライスであることを示し、ビデオエンコーダ３０は、リスト０  ９４またはリスト１  ９６に等しくなるように、リストＣ９８を設定することができる。１に等しいｒｅｆ＿ｐｉｃ＿ｌｉｓｔ＿ｃｏｍｂｉｎａｔｉｏｎ＿ｆｌａｇの値は、ビデオデコーダ３０がリスト０  ９４およびリスト１  ９６からリストＣ９８を構成することを示す。
【００９８】
[0105]第１のビット低減手法として、リストＣ９８がリスト０  ９４およびリスト１  ９６から構成されることになっているとき、ビデオデコーダ３０は、２ビットフラグ、すなわちｃｏｍ＿ｌｉｓｔ＿ｅｑｕａｌ＿ｉｄｃを受信することもでき、これは、リストＣ９８が明示的にシグナリングされるか、リスト０  ９４に等しいか、リスト１  ９６に等しいかを示す。ｃｏｍ＿ｌｉｓｔ＿ｅｑｕａｌ＿ｉｄｃフラグが０に等しい値を有する場合、リストＣ９８は、ビデオエンコーダ２０によって明示的にシグナリングされる。ｃｏｍ＿ｌｉｓｔ＿ｅｑｕａｌ＿ｉｄｃフラグが１に等しい値を有する場合、リストＣ９８は、リスト０  ９４に等しい。ｃｏｍ＿ｌｉｓｔ＿ｅｑｕａｌ＿ｉｄｃフラグが２に等しい値を有する場合、リストＣ９８は、リスト１  ９６に等しい。たとえば、リスト０  ９４およびリスト１  ９６のうちの一方が他方のリストのサブセットであるとき、他のリストに等しくなるように設定することによって、ビデオデコーダ３０は、リストＣ９８を構成する。この場合、リストＣ９８は、サブセットを形成するより小さいリストからのピクチャのすべてを本質的に含む、リスト０  ９４およびリスト１  ９６のうちより大きい方の参照ピクチャのすべてを含む。
【００９９】
[0106]リストＣ９８が明示的にシグナリングされる場合、ビデオデコーダ３０は、表２に関して上述した方法でリストＣ９８を構成するために構成ループに入る。リストＣ９８がリスト０  ９４またはリスト１  ９６のいずれかに等しい場合、ビデオデコーダ３０は、リストＣ９８の中身がビデオデコーダ３０によってリスト０  ９４およびリスト１  ９６から構成されるべき方法を明示的にシグナリングする任意の追加のシンタックス要素を受信しない。代わりに、リストＣ９８における参照ピクチャの数は、リスト０  ９４またはリスト１  ９６のいずれかに含まれる参照ピクチャの数に基づいて決定され得る。
【０１００】
[0107]第２のビット低減手法として、ビデオデコーダ３０は、リストＣ７０におけるエントリごとに、参照ピクチャの差分的にシグナリングされたインデックスを受信することができる。この場合、リストＣ９８について参照ピクチャの明示的にシグナリングされたインデックス値を受信する代わりに、ビデオデコーダ３０は、現在の参照ピクチャリストにおける現在の参照ピクチャのインデックスとリストＣ９８における前のエントリに追加された同じ参照ピクチャリストにおける前の参照ピクチャのインデックスとの間の差（たとえば、オフセット）を示すために、参照ピクチャについてのインデックスデルタ、すなわち、ｄｅｌｔａ＿ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ＿ｍｉｎｕｓ１を受信する。したがって、ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇおよびｉの各値によって示される参照ピクチャリストごとに、ビデオデコーダ３０は、リストＣ９８の終わりに付加するために、現在の参照ピクチャリスト、リスト０  ９４またはリスト１  ９６から引き出すために特定の参照ピクチャを識別する差分的にコード化されたインデックスを示すｄｅｌｔａ＿ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ＿ｍｉｎｕｓ１シンタックス要素を受信する。
【０１０１】
[0108]この場合、ビデオデコーダ３０は、示されたインデックスデルタ、すなわち、ｄｅｌｔａ＿ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ＿ｍｉｎｕｓ１、および現在の参照ピクチャリストからの前の参照ピクチャの前に示されたインデックス、すなわち、ｘが、リスト０  ９４またはリスト１  ９６のいずれかとして、現在の参照ピクチャリスト、ＣｕｒｒＲｅｆＰｉｃＬｉｓｔを示す場合、ＰｒｅＲｅｆＩｄｘＬｘに基づいて、現在の参照ピクチャリストにおける参照ピクチャのインデックスを決定することができる。たとえば、ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇが１に等しい値を有するとき、リスト０  ９４を示すために、ｘは０に等しく、ｐｉｃ＿ｆｒｏｍ＿ｌｉｓｔ＿０＿ｆｌａｇが０に等しい値を有することを示すとき、リスト１  ９６を示すために、ｘは１に等しい。ビデオデコーダ３０は、リストＣ７０における参照ピクチャのインデックスを、ＣｕｒｒＲｅｆ＿Ｉｄｘ＿Ｌｘをｄｅｌｔａ＿ｒｅｆ＿ｉｄｘ＿ｌｉｓｔ＿ｃｕｒｒ＿ｍｉｎｕｓ１＋１＋ＰｒｅＲｅｆＩｄｘＬｘとして計算することができる。ＰｒｅＲｅｆＩｄｘＬ０およびＰｒｅＲｅｆＩｄｘＬ１がループの開始時に−１に設定される。
【０１０２】
[0109]一例として、現在の参照ピクチャリストからの前のインデックスが２に等しく、現在の参照ピクチャリストからの現在のインデックスが３に等しい場合、デルタインデックスは１の値を有することができる。この場合、代替の技法は、３の明示的なインデックス値の代わりに、１のデルタインデックス値をコード化することによって現在の参照ピクチャのインデックス値をシグナリングするためのビットの消費を低減することができる。リスト０  ９４およびリスト１  ９６の所与の１つからリストＣ９８に含まれる参照ピクチャのインデックス値は、一般的に、昇順に、小さい増分で増加するので、このビット低減は、一般に、すべてのシグナリングされたインデックス値に適用可能である。
【０１０３】
[0110]逆量子化ユニット８６は、ビットストリーム中で与えられ、エントロピー復号ユニット８０によって復号された、量子化変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、各ビデオブロックについてビデオエンコーダ２０によって計算される量子化パラメータを使用して量子化の程度を決定し、同様に、適用すべき逆量子化の程度を決定することを含み得る。逆変換ユニット８８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【０１０４】
[0111]動き補償ユニット８２が、動きベクトルと他のシンタックス要素とに基づいて現在のビデオブロックのための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換ユニット８８からの残差ブロックを動き補償ユニット８２によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器９０は、この加算演算を実行する１つまたは複数の構成要素を表す。必要に応じて、ブロッキネスアーティファクトを除去するために、デブロッキングフィルタを適用して、復号ブロックをフィルタ処理することもできる。次いで、所与のフレームまたはピクチャの復号されたビデオブロックは、その後の動き補償に使用される参照ピクチャを記憶する参照ピクチャメモリ９２に記憶される。参照ピクチャメモリ９２はまた、図１のディスプレイデバイス３２などのディスプレイデバイス上での後の表示のための、復号されたビデオを記憶する。
【０１０５】
[0112]図４は、結合された参照ピクチャリスト、リストＣを構成し、リストＣを使用して、単方向予測されたビデオブロックをコード化する例示的な動作を示すフローチャートである。図示の動作について、図２のビデオエンコーダ２０と図３のビデオデコーダ３０とを参照しながら説明する。
【０１０６】
[0113]ビデオエンコーダ２０は、符号化されるべき現在のビデオスライスのビデオブロックを受信する。現在のビデオスライスがＢフレームに指定されるとき、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された復号された参照ピクチャに基づいて、リスト０  ６６とリスト１  ６８とを構成する（１００）。ビデオエンコーダ２０は、通常の参照ピクチャリスト構成手順に従って、リスト０  ６６およびリスト１  ６８を構成し得る。次いで、ビデオエンコーダ２０は、リスト０  ６６および／またはリスト１  ６８から１つまたは複数の参照ピクチャを含むリストＣ７０を構成する（１０１）。一例では、ビデオエンコーダ２０は、リスト０  ６６およびリスト１  ６８の少なくとも１つから、リストＣ７０に含まれるべき１つまたは複数の参照ピクチャを選択する。他の例では、ビデオエンコーダ２０は、リストＣ７０をリスト０  ６６およびリスト１  ６８のうちの１つに等しくなるように設定することによって、リストＣ７０を構成することができる。
【０１０７】
[0114]さらに、ビデオエンコーダ２０は、ビデオデコーダ３０にリストＣ７０についての構成情報を示すために、１つまたは複数のシンタックス要素を符号化する（１０２）。たとえば、ビデオエンコーダ２０は、リストＣ７０が単方向予測に使用されることを示し、リストＣ７０で識別される参照ピクチャの数、およびリストＣ７０におけるエントリごとの参照ピクチャインデックスを示すために、シンタックス要素を符号化することができる。次いで、ビデオエンコーダ２０は、リストＣ７０における１つまたは複数の参照ピクチャに関する単方向予測を使用して、Ｂスライスの１つまたは複数のビデオブロックを符号化することができる（１０３）。
【０１０８】
[0115]ビデオデコーダ３０は、現在のビデオスライスのビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を表す符号化されたビットストリームをビデオエンコーダ２０から受信する。現在のビデオスライスがＢフレームに指定されるとき、ビデオデコーダ３０は、シンタックス要素を使用して、参照ピクチャメモリ９２に記憶された復号された参照ピクチャに基づいて、リスト０  ９４とリスト１  ９６とを構成する（１００）。ビデオデコーダ３０は、初期化および変更を含めて、通常の参照ピクチャリスト構成手順に従って、リスト０  ９４およびリスト１  ９６を構成し得る。
【０１０９】
[0116]次いで、ビデオデコーダ３０は、リスト０  ９４および／またはリスト１  ９６から１つまたは複数の参照ピクチャを含むリストＣ９８を構成する（１０１）。ビデオデコーダ３０は、リストＣ９８についての構成情報を示すシンタックス要素を復号することによって、リストＣ９８を構成する（１０２）。たとえば、ビデオデコーダ３０は、リストＣ９８が単方向予測に使用されることを示し、リストＣ９８で識別される参照ピクチャの数、およびリストＣ９８におけるエントリごとの参照ピクチャインデックスを示すシンタックス要素を復号することができる。一例では、ビデオデコーダ３０は、シンタックス要素に従って、リスト０  ９４およびリスト９６のうちの少なくとも１つからの１つまたは複数の参照ピクチャをリストＣ９８に追加することができる。他の例では、ビデオデコーダ３０は、リストＣ９８をリスト０  ９４およびリスト１  ９６のうちの１つに等しくなるように設定することによって、リストＣ９８を構成することができる。次いで、ビデオデコーダ３０は、リストＣ９８における１つまたは複数の参照ピクチャに関する単方向予測を使用して、Ｂスライスの１つまたは複数のビデオブロックを復号することができる（１０３）。
【０１１０】
[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]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（disc）(登録商標）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）、およびブルーレイ（登録商標）ディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【０１３８】
[0145]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技法の実装に好適な他の構造のいずれかを指す。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素中に十分に実装され得る。
【０１３９】
[0146]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）、またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要はない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０１４０】
[0147]様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［１］  ビデオデータをコード化する方法であって、
復号された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成することと、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成することと、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化することと、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化することと、
を備える方法。
［２］  前記シンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、［１］に記載の方法。
［３］  ビデオデータをコード化する前記方法は、
デコーダで前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信することと、
前記１つまたは複数のシンタックス要素を復号することと、
前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成することと、
前記結合された参照ピクチャリストを使用して、前記１つまたは複数の単方向予測されたビデオブロックを復号することと、
をさらに備えるビデオデータを復号する方法を備える、［１］に記載の方法。
［４］  ビデオデータをコード化する前記方法は、
前記１つまたは複数のシンタックス要素を符号化することと、
前記結合された参照ピクチャリストのみを使用して、前記１つまたは複数の単方向予測されたビデオブロックを符号化することと、
前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化することと、
をさらに備えるビデオデータを符号化する方法を備える、［１］に記載の方法。
［５］  ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す１つまたは複数のシンタックス要素をコード化することをさらに備える、［１］に記載の方法。
［６］  前記シンタックス要素は、前記第１および第２の参照ピクチャリストにおける同じ参照ピクチャの数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、［１］に記載の方法。
［７］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第１の参照ピクチャリストにおける参照ピクチャに関連するか、前記第２の参照ピクチャリストにおける参照ピクチャに関連するかを示す、［１］に記載の方法。
［８］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、［１］に記載の方法。
［９］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスと、前記結合された参照ピクチャリストにおける前のエントリに追加された前記第１または第２の参照ピクチャリストのうちの同じ１つにおける前の参照ピクチャのインデックスとの間の差を定義するインデックスデルタを示す、［１］に記載の方法。
［１０］  前記第１および第２の参照ピクチャリストが同一であるとき、前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のために前記第１および第２の参照ピクチャリストの１つに等しくなるように設定されることを示す、［１］に記載の方法。
［１１］  前記１つまたは複数のシンタックス要素は、前記第１および第２の参照ピクチャリストのうちの前記１つによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、［１０］に記載の方法。
［１２］  前記第１および第２の参照ピクチャリストのうちの一方が他方の参照ピクチャリストにおいて識別される前記参照ピクチャのサブセットを識別するとき、前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のために前記他方の参照ピクチャリストに等しくなるように設定されることを示す、［１］に記載の方法。
［１３］  前記１つまたは複数のシンタックス要素は、前記他方の参照ピクチャリストによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、［１２］に記載の方法。
［１４］  復号された参照ピクチャを記憶するメモリと、
前記メモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成し、前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成し、前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化し、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化するように構成されたプロセッサと、
を備えるビデオコーディングデバイス。
［１５］  前記シンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、［１４］に記載のビデオコーディングデバイス。
［１６］  前記ビデオコーディングデバイスは、ビデオ復号デバイスを備え、前記プロセッサは、
前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信し、
前記１つまたは複数のシンタックス要素を復号し、
前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成し、
前記結合された参照ピクチャリストを使用して、前記１つまたは複数の単方向予測されたビデオブロックを復号する
［１４］に記載のビデオコーディングデバイス。
［１７］  前記ビデオコーディングデバイスは、ビデオ符号化デバイスを備え、前記プロセッサは、
前記１つまたは複数のシンタックス要素を符号化し、
前記結合された参照ピクチャリストのみを使用して、前記１つまたは複数の単方向予測されたビデオブロックを符号化し、
前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化する
［１４］に記載のビデオコーディングデバイス。
［１８］  ビデオブロックごとに、前記プロセッサは、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す１つまたは複数のシンタックス要素をコード化する、［１４］に記載のビデオコーディングデバイス。
［１９］  前記シンタックス要素は、前記第１および第２の参照ピクチャリストにおける同じ参照ピクチャの数に基づいて、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示す、［１４］に記載のビデオコーディングデバイス。
［２０］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第１の参照ピクチャリストにおける参照ピクチャに関連するか、前記第２の参照ピクチャリストにおける参照ピクチャに関連するかを示す、［１４］に記載のビデオコーディングデバイス。
［２１］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、［１４］に記載のビデオコーディングデバイス。
［２２］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスと、前記結合された参照ピクチャリストにおける前のエントリに追加された前記第１または第２の参照ピクチャリストのうちの同じ１つにおける前の参照ピクチャのインデックスとの間の差を定義するインデックスデルタを示す、［１４］に記載のビデオコーディングデバイス。
［２３］  前記第１および第２の参照ピクチャリストが同一であるとき、前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記第１および第２の参照ピクチャリストの１つに等しくなるように設定されることを示す、［１４］に記載のビデオコーディングデバイス。
［２４］  前記１つまたは複数のシンタックス要素は、前記第１および第２の参照ピクチャリストのうちの前記１つによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、［２３］に記載のビデオコーディングデバイス。
［２５］  前記第１および第２の参照ピクチャリストのうちの一方が他方の参照ピクチャリストにおいて識別される前記参照ピクチャのサブセットを識別するとき、前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストが単方向予測のための前記他方の参照ピクチャリストに等しくなるように設定されることを示す、［１４］に記載のビデオコーディングデバイス。
［２６］  前記１つまたは複数のシンタックス要素は、前記他方の参照ピクチャリストによって識別される参照ピクチャの前記数に基づいて、前記結合された参照ピクチャリストによって識別される前記参照ピクチャの数を示す、［２５］に記載のビデオコーディングデバイス。
［２７］  復号された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成する手段と、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成する手段と、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化する手段と、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化する手段と、
を備えるビデオコーディングデバイス。
［２８］  前記シンタックス要素は、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、［２７］に記載のビデオコーディングデバイス。
［２９］  前記ビデオコーディングデバイスは、
デコーダで前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信する手段と、
前記１つまたは複数のシンタックス要素を復号する手段と、
前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成する手段と、
前記結合された参照ピクチャリストを使用して、前記１つまたは複数の単方向予測されたビデオブロックを復号する手段と、
をさらに備えるビデオ復号デバイスを備える、［２７］に記載のビデオコーディングデバイス。
［３０］  前記ビデオコーディングデバイスは、
前記１つまたは複数のシンタックス要素を符号化する手段と、
前記結合された参照ピクチャリストのみを使用して、前記１つまたは複数の単方向予測されたビデオブロックを符号化する手段と、
前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化する手段と、
をさらに備えるビデオ符号化デバイスを備える、［２７］に記載のビデオコーディングデバイス。
［３１］  ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す１つまたは複数のシンタックス要素をコード化する手段をさらに備える、［２７］に記載のビデオコーディングデバイス。
［３２］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第１の参照ピクチャリストにおける参照ピクチャに関連するか、前記第２の参照ピクチャリストにおける参照ピクチャに関連するかを示す、［２７］に記載のビデオコーディングデバイス。
［３３］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、［２７］に記載のビデオコーディングデバイス。
［３４］  プロセッサで実行されると、前記プロセッサに、
復号された参照ピクチャを記憶するメモリから第１の参照ピクチャリストと第２の参照ピクチャリストとを構成させ、
前記第１の参照ピクチャリストおよび前記第２の参照ピクチャリストのうちの少なくとも１つから１つまたは複数の参照ピクチャを含む結合された参照ピクチャリストを構成させ、
前記結合された参照ピクチャリストについての構成情報を示す１つまたは複数のシンタックス要素をコード化させ、
前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関して、単方向予測を使用して、１つまたは複数のビデオブロックをコード化させる、
ビデオデータをコード化するための命令を備えるコンピュータ可読記憶媒体。
［３５］  前記シンタックス要素が、前記結合された参照ピクチャリストが単方向予測に使用されることを示し、前記結合された参照ピクチャリストにおいて識別される前記参照ピクチャの数を示し、前記結合された参照ピクチャリストにおける各エントリを示す、［３４］に記載のコンピュータ可読記憶媒体。
［３６］  前記ビデオコーディングデバイスはビデオ復号デバイスを備え、前記プロセッサに、
デコーダで前記ビデオブロックおよび前記シンタックス要素を表す符号化されたビットストリームを受信させ、
前記１つまたは複数のシンタックス要素を復号させ、
前記シンタックス要素を使用して、前記結合された参照ピクチャリストを構成させ、
前記結合された参照ピクチャリストを使用して、前記１つまたは複数の単方向予測されたビデオブロックを復号させる
命令をさらに備える、［３４］に記載のコンピュータ可読記憶媒体。
［３７］  前記ビデオコーディングデバイスはビデオ符号化デバイスを備え、前記プロセッサに、
前記１つまたは複数のシンタックス要素を符号化させ、
前記結合された参照ピクチャリストのみを使用して、前記１つまたは複数の単方向予測されたビデオブロックを符号化させ、
前記ビデオブロックおよび前記シンタックス要素を表すビットストリームを符号化させる
命令をさらに備える、［３４］に記載のコンピュータ可読記憶媒体。
［３８］  前記プロセッサに、ビデオブロックごとに、前記ビデオブロックが前記第１の参照ピクチャリストにおける１つの参照ピクチャおよび前記第２の参照ピクチャリストにおける１つの参照ピクチャに関する双予測を使用してコード化されるか、前記結合された参照ピクチャリストにおける１つまたは複数の参照ピクチャに関する単方向予測を使用してコード化されるかを示す１つまたは複数のシンタックス要素をコード化させる命令をさらに備える、［３４］に記載のコンピュータ可読記憶媒体。
［３９］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリが前記第１の参照ピクチャリストにおける参照ピクチャに関連するか、前記第２の参照ピクチャリストにおける参照ピクチャに関連するかを示す、［３４］に記載のコンピュータ可読記憶媒体。
［４０］  前記１つまたは複数のシンタックス要素は、前記結合された参照ピクチャリストにおける各エントリについての、前記結合された参照ピクチャリストにおける現在のエントリに追加されるべき前記第１または第２の参照ピクチャリストのうちの１つにおける現在の参照ピクチャのインデックスを示す、［３４］に記載のコンピュータ可読記憶媒体。
【図１】
0005778298.tif 000006
【図２】
0005778298.tif 000007
【図３】
0005778298.tif 000008
【図４】
0005778298.tif 000009
【図５】
0005778298.tif 000010
【図６】
0005778298.tif 000011
【図７】
0005778298.tif 000012
【図８】
0005778298.tif 000013