(57)【特許請求の範囲】
【請求項１】
第１の符号化パスにおいてビデオブロックを符号化し、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのための複数のビデオ符号化モードのうちの１つを選択することと、
第２の符号化パスにおいて前記ビデオブロックを符号化し、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更し、前記動き情報を使用し、前記変更されたビデオ符号化モードは前記ビデオブロックのための残差情報に影響するが前記動き情報を変更しないこと
とを備える、ビデオ符号化の方法。
【請求項２】
前記第２の符号化パスは、
前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールして、
前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更する、
請求項１の方法。
【請求項３】
前記選択されたビデオ符号化モードはスキップモードから直接モードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更して、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する、
請求項１の方法。
【請求項４】
前記選択されたビデオ符号化モードは直接モードからスキップモードに変更し、
前記第２の符号化パスは、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する、
請求項１の方法。
【請求項５】
前記選択されたビデオ符号化モードはスキップモードからインターモードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、前記インターモードのビデオブロックに動きベクトルを割り当てて、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する、
請求項１の方法。
【請求項６】
前記第２の符号化パスにおいて符号化された前記ビデオブロックを別のデバイスに送信することをさらに備える、請求項１の方法。
【請求項７】
前記第２の符号化パスは、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整し、前記選択されたビデオ符号化モードを変更する、請求項６の方法。
【請求項８】
前記第２のパスにおいて前記ビデオブロックを符号化することは、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化することを含み、前記選択されたビデオ符号化モードを変更することは、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更することと、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更すること
とを備える、請求項１の方法。
【請求項９】
第１の符号化パスにおいてビデオブロックを符号化し、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのための複数のビデオ符号化モードのうちの１つを選択し、
第２の符号化パスにおいて前記ビデオブロックを符号化し、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更し、前記動き情報を使用し、前記変更されたビデオ符号化モードは前記ビデオブロックのための残差情報に影響するが前記動き情報を変更しない、
ビデオ符号器を備える装置。
【請求項１０】
前記第２の符号化パスは、
前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールして、
前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更する、
請求項９の装置。
【請求項１１】
前記選択されたビデオ符号化モードはスキップモードから直接モードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更して、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する、
請求項９の装置。
【請求項１２】
前記選択されたビデオ符号化モードは直接モードからスキップモードに変更し、
前記第２の符号化パスは、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する、
請求項９の装置。
【請求項１３】
前記選択されたビデオ符号化モードはスキップモードからインターモードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、前記インターモードのビデオブロックに動きベクトルを割り当てて、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する、
請求項９の装置。
【請求項１４】
前記第２の符号化パスにおいて符号化された前記ビデオブロックを変調して別のデバイスに送信する変調器／送信器をさらに備える、請求項９の装置。
【請求項１５】
前記第２の符号化パスは、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整し、前記選択されたビデオ符号化モードを変更する、請求項１４の装置。
【請求項１６】
前記第２のパスにおいて前記ビデオブロックを符号化することは、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化することを含み、前記選択されたビデオ符号化モードを変更することは、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更することと、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更すること
とを備える、請求項９の装置。
【請求項１７】
プロセッサにおいて実行されたときに、前記プロセッサに、
第１の符号化パスにおいてビデオブロックを符号化させる命令と、
第２の符号化パスにおいて前記ビデオブロックを符号化させる命令とを記憶し、
前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのための複数のビデオ符号化モードのうちの１つを選択し、
前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更し、前記動き情報を使用し、前記変更されたビデオ符号化モードは前記ビデオブロックのための残差情報に影響するが前記動き情報を変更しない、
コンピュータ読み出し可能記憶媒体。
【請求項１８】
前記第２の符号化パスは、
前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールして、
前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更する、
請求項１７のコンピュータ読み出し可能記憶媒体。
【請求項１９】
前記選択されたビデオ符号化モードはスキップモードから直接モードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更して、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する、
請求項１７のコンピュータ読み出し可能記憶媒体。
【請求項２０】
前記選択されたビデオ符号化モードは直接モードからスキップモードに変更し、
前記第２の符号化パスは、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する、
請求項１７のコンピュータ読み出し可能記憶媒体。
【請求項２１】
前記選択されたビデオ符号化モードはスキップモードからインターモードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、前記インターモードのビデオブロックに動きベクトルを割り当てて、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する、
請求項１７のコンピュータ読み出し可能記憶媒体。
【請求項２２】
前記プロセッサに、前記第２の符号化パスにおいて符号化された前記ビデオブロックを別のデバイスに送信させる命令をさらに記憶する、請求項１７のコンピュータ読み出し可能記憶媒体。
【請求項２３】
前記第２の符号化パスは、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整し、前記選択されたビデオ符号化モードを変更する、請求項２２のコンピュータ読み出し可能記憶媒体。
【請求項２４】
前記プロセッサに、前記第２のパスにおいて前記ビデオブロックを符号化させる命令は、前記プロセッサに、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化させる命令を含み、前記選択されたビデオ符号化モードを変更することは、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更することと、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更すること
とを備える、請求項１７のコンピュータ読み出し可能記憶媒体。
【請求項２５】
第１の符号化パスにおいてビデオブロックを符号化する手段を備え、前記第１の符号化パスにおいてビデオブロックを符号化する手段は、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのための複数のビデオ符号化モードのうちの１つを選択する手段を含み、
第２の符号化パスにおいて前記ビデオブロックを符号化する手段を備え、前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整する手段と、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更する手段と、前記動き情報を使用する手段とを含み、前記変更されたビデオ符号化モードは前記ビデオブロックのための残差情報に影響するが前記動き情報を変更しない、
デバイス。
【請求項２６】
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールする手段を含み、前記変更する手段は、前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記選択されたビデオ符号化モードを変更する手段を備える、
請求項２５のデバイス。
【請求項２７】
前記選択されたビデオ符号化モードはスキップモードから直接モードに変更し、
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更する手段と、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する手段とを含む、
請求項２５のデバイス。
【請求項２８】
前記選択されたビデオ符号化モードは直接モードからスキップモードに変更し、
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更する手段と、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する手段とを含む、
請求項２５のデバイス。
【請求項２９】
前記選択されたビデオ符号化モードはスキップモードからインターモードに変更し、
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更する手段と、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、前記インターモードのビデオブロックに動きベクトルを割り当てる手段と、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する手段とを含む、
請求項２５のデバイス。
【請求項３０】
前記第２の符号化パスにおいて符号化された前記ビデオブロックを別のデバイスに送信する手段をさらに備える、請求項２５のデバイス。
【請求項３１】
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整する手段と、前記選択されたビデオ符号化モードを変更する手段とを含む、請求項３０のデバイス。
【請求項３２】
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化する手段を含み、前記選択されたビデオ符号化モードを変更する手段は、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更する手段と、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更する手段
とを備える、請求項２５のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本願は、２００７年３月２日に出願された米国仮出願第６０／８９２，８０４号の利益に権利を主張しており、その全内容は参照によってここに組み込まれる。
【０００２】
この開示はディジタルビデオ符号化、より具体的には、第１のパスがビデオブロックを符号化するために使用され、第２のパスがビットレートの制約を満たすか又は他の目的を達成するためにその符号化を改善する、マルチパスビデオ符号化に関する。
【背景技術】
【０００３】
ディジタルビデオの能力は、ディジタルテレビジョン、ディジタル直接ブロードキャストシステム、無線通信デバイス、無線ブロードキャストシステム、パーソナルディジタルアシスタント(personal digital assistant, PDA)、ラップトップ又はデスクトップコンピュータ、ディジタルカメラ、ディジタルレコーディングデバイス、ビデオゲームデバイス、ビデオゲームコンソール、セルラ又は衛星無線電話などを含む広範囲のデバイスに組み込むことができる。ディジタルビデオデバイスは、ディジタルビデオをより効率的に送信及び受信するために、ＭＰＥＧ−２、ＭＰＥＧ−４、又はＨ．２６４／ＭＰＥＧ−４、パート１０（Part 10）、アドバンスドビデオコーディング(Advanced Video Coding, AVC)のようなビデオ圧縮技術を実施する。ビデオ圧縮技術は、ビデオシーケンスに固有の冗長を低減又は除去するために空間及び時間予測を行う。
【０００４】
ビデオ符号化において、ビデオ圧縮は多くの場合に空間予測、動き推定及び動き補償を含む。イントラ符号化（intra-coding）は、所与のビデオフレーム内のビデオブロック間の空間冗長を低減又は除去するために空間予測に依存する。インター符号化（inter-coding）は、ビデオシーケンス中の連続するビデオフレームのビデオブロック間の時間冗長を低減又は除去するために時間予測に依存する。インター符号化のために、ビデオ符号器は、２つ以上の隣接フレーム間で対応するビデオブロックの動きを追跡するために動き推定を行う。動き推定は、１つ以上の参照フレーム中の対応する予測ビデオブロックに対するビデオブロックの変位分を示す動きベクトルを生成する。動き補償は、参照フレーム又はスライスから予測ビデオブロックを生成するために動きベクトルを使用する。動き補償の後で、符号化された元のビデオブロックから予測ビデオブロックを差し引くことによって残差情報（residual information）(例えば、残差ビデオブロック)が生成される。ビデオ符号器は通常、残差ブロックの通信に関連するビットレートをさらに低減するために、変換、量子化及び変換係数の符号化処理を適用する。
【０００５】
ビデオ符号化は複数のパスを使用することがある。マルチパスビデオ符号化において、第１のビデオ符号化パスはビデオブロックを符号化するために使用され、第２のビデオ符号化パスはその符号化を変更して改善する。マルチパスビデオ符号化は、ビデオ符号化に関連するビットレートを調整するために使用され得る。従来、第２のパスのビデオ符号化は第１のビデオ符号化パスの符号化工程の全てを再び行い得るが、異なるレベルの量子化を適用してもよい。しかしながら第２の符号化パス中にビデオブロックの全てを完全に符号化し直すと、計算が増加する。
【発明の概要】
【０００６】
概して、この開示はマルチパスビデオ符号化のシナリオにおける第２のパスのビデオ符号化のための技術を記載している。第２の符号化パスは、例えば、ビットレートの制約を満たし、未使用の帯域幅を利用し、及び／又は他の目的を達成するために、第１のパスにおいて行われた符号化を改善する。この開示によると、第２のパス中に符号化される幾つかのビデオブロックのための符号化モードは、第１のパスにおいてそのようなビデオブロックに使用された符号化モードに対して変更され得る。しかしながら、モード変更されたビデオブロックについて動き情報は変更しない。一例として、双方向予測(bi-directional predictive, B)スライス(又はフレーム)は、いわゆる「スキップ（skipped）」モードといわゆる「直接(direct)」モードとでビデオブロックの符号化をサポートし得る。スキップ及び直接モードの両者において、動き情報は、例えば、近隣ビデオブロックの動き情報に基づいて、復号器において同じやり方で導き出される。しかしながら、スキップモードと直接モードとの違いは、直接モードのビデオブロックが残差情報を含んでいる一方で、スキップモードのビデオブロックが残差情報を含んでいないことである。
【０００７】
この開示によると、第２のパスの符号化は、幾つかのブロックについて動き情報の定義のしかたを変更せずに、そのようなブロックのためのビデオブロックモードを、例えばスキップ又は直接モード間で変更し得る。例えば、ビデオブロックは、復号器における動き情報の導き出し方を変更せずに直接モードからスキップモード又はスキップモードから直接モードに変更され得る。スキップモードから直接モードに変更された任意のビデオブロックに対する残差情報が加えられてもよく、直接モードからスキップモードに変更された任意のビデオブロックに対する残差情報が削除されてもよい。予測（predictive, P）スライス又はフレームについて、スキップモードからインター１６×１６モードへの第２のパスのモード変更も、この開示の態様から利益を得ることができる。第２のパスの符号化技術は量子化パラメータの調整をさらに含んでもよく、モード変更により、このような量子化パラメータの調整は、モード変更せずに達成されたであろう第２の符号化パスの符号化の改善よりも非常に大きな効果を有することができる。
【０００８】
一例において、この開示は、第１の符号化パスにおいてビデオブロックを符号化し、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択することと、第２の符号化パスにおいて前記ビデオブロックを符号化し、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更し、前記変更されたビデオ符号化モードは前記動き情報を変更しないこととを備える、ビデオ符号化の方法を提供する。
【０００９】
別の例において、この開示は、第１の符号化パスにおいてビデオブロックを符号化し、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択し、第２の符号化パスにおいて前記ビデオブロックを符号化し、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更し、前記変更されたビデオ符号化モードは前記動き情報を変更しない、ビデオ符号器を備える装置を提供する。
【００１０】
別の例において、この開示は、第１の符号化パスにおいてビデオブロックを符号化する手段を備え、前記第１の符号化パスにおいてビデオブロックを符号化する手段は、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択する手段を含み、第２の符号化パスにおいて前記ビデオブロックを符号化する手段を備え、前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整する手段と、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更する手段とを含み、前記変更されたビデオ符号化モードは前記動き情報を変更しない、デバイスを提供する。
【００１１】
この開示に記載されている技術は、ハードウェア、ソフトウェア、ファームウェア、又はその任意の組合せにおいて実施され得る。ソフトウェアにおいて実施される場合に、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路（application specific integrated circuit, ASIC）、フィールドプログラマブルゲートアレイ（field programmable gate array, FPGA）又はディジタル信号プロセッサ（digital signal processor, DSP）のような１つ以上のプロセッサにおいて実行され得る。この技術を実行するソフトウェアは、最初にコンピュータ読み出し可能媒体に記憶され、プロセッサにロードされて実行され得る。
【００１２】
従って、この開示は、プロセッサにおいて実行されたときに、前記プロセッサに、第１の符号化パスにおいてビデオブロックを符号化させる命令を備え、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択し、第２の符号化パスにおいて前記ビデオブロックを符号化させる命令を備え、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更し、前記変更されたビデオ符号化モードは前記動き情報を変更しない、コンピュータ読み出し可能媒体をさらに考慮している。
【００１３】
幾つかの場合において、コンピュータ読み出し可能媒体は、製造者に販売され及び／又はビデオ符号化デバイスにおいて使用され得るコンピュータプログラム製品の一部を形成し得る。コンピュータプログラム製品はコンピュータ読み出し可能媒体を含むことがあり、幾つかの場合において、パッケージ化されたもの（packaging material）をさらに含むことがある。
【００１４】
開示の１つ以上の態様の詳細は、添付の図面と以下の説明とに示されている。この開示に記載されている技術の他の特徴、目的及び効果は、説明と図面とから、及び請求項から明らかになるであろう。
【図面の簡単な説明】
【００１５】
【図１】この開示に従ってビデオ符号化及び復号システムを示す例示的なブロック図。
【図２】この開示に従ってマルチパス符号化技術を示すフローダイアグラム。
【図３】スキップモードから直接モードに変更される双方向予測（Ｂ)スライスのビデオブロックの概念図。
【図４】Ｂスライスのビデオブロックがスキップモードから直接モードに変更される第２のパスの符号化技術を示すフローダイアグラム。
【図５】直接モードからスキップモードに変更されるＢスライスのビデオブロックの概念図。
【図６】Ｂスライスのビデオブロックが直接モードからスキップモードに変更される第２のパスの符号化技術を示すフローダイアグラム。
【図７】スキップモードからインター１６×１６モードに変更される予測（Ｐ）スライスのビデオブロックの概念図。
【図８】Ｐスライスのビデオブロックがスキップモードからインター１６×１６モードに変更される第２のパスの符号化技術を示すフローダイアグラム。
【発明を実施するための形態】
【００１６】
この開示は、マルチパスビデオ符号化のシナリオにおける第２のパスのビデオ符号化のための技術を記載している。第２のビデオ符号化パスは、ビットレートの制約を満たし、未使用の帯域幅を利用し、又は他の目的を達成するために、第１のパスで行われたビデオ符号化を改善する。この開示において、第２の符号化パスは概して、第１の符号化パスの後の任意の後続の符号化パスを指す。従って、「第２の符号化パス」との語句における「第２」との用語は、第２のパスが第１の符号化パスの後で行われることを除いて、他の符号化パスに対する順序関係を示唆していない。第２の符号化パスは、ここに記載されているように、実際には、第１の符号化パスの後の第３又は第４の符号化パスのような任意の後続の符号化パスであり得る。
【００１７】
この開示によると、第２の符号化パスにおいて幾つかのビデオブロックに使用される符号化モードは、第１のパスにおいて使用された符号化モードに対して変更され得る。しかしながら、モード変更したビデオブロックについて、動き情報は同じままである(すなわち、動き情報は復号器において同じやり方で導き出される)。幾つかの場合において、モード変更したビデオブロックについて、動き情報は変わらないので、第２の符号化パスは、第１の符号化パス中に行われた動きに基づく計算を再使用し得る。
【００１８】
マルチパスビデオ符号化において、第１のパスは、ビデオブロックを符号化するために使用され、第２のパスは、第１のパス中に行われた符号化を改善する。幾つかの場合において、第２のパスの符号化は情報を完全に符号化し直すことがある。しかしながら、効率化及び単純化のために、第２のパスの符号化が、第１のパスで生成された情報の一部を採用して、第１のパス中に生成された符号化された情報の他の部分を改善することがより望ましいかもしれない。例えば、伝搬効果（propagation effect）が取り込まれないことを確実にするために、第１のパスにおいてビデオブロックのために定義された動きベクトル情報が、動きベクトルを計算し直さずに第２のパスにおいて同じビデオブロックに割り当てられ得る。しかしながら、第２のパスに使用される量子化パラメータは、第１のパスに使用された量子化パラメータに対して変更してもよい。
【００１９】
この開示によると、第２のパスの符号化はビデオブロックモードを、例えばスキップ又は直接モード間で変更し得る。直接モードとスキップモードとは、ビデオブロックの動き情報を定義するビデオ符号化モードの２つの例である。とくに、直接モードのビデオブロックとスキップモードのビデオブロックとは、動き情報を含むように符号化されるのではなく、むしろこれらのモードの場合には、動き情報は、近隣ビデオブロックの動き情報に基づいて、復号器において導き出される。一例として、この開示は、第２のパスの符号化においてスキップ及び直接モード間で変更する能力を提案している。例えば、スキップから直接モードへの切り換えは、量子化パラメータの変更が第２のパスの符号化における非常に大きな品質向上効果を確実に与えることを助け得る。一方、直接からスキップモードへの切り換えは、第２のパスにおいて完全に符号化し直すことなくビットレートを低減する簡単なやり方を提供し得る。
【００２０】
スキップモードから直接モードに変更された任意のビデオブロックに対する残差情報が加えられてもよく、直接モードからスキップモードに変更された任意のビデオブロックに対する残差情報が削除されてもよい。これらのモード変更と併せて、量子化パラメータを変更すると、モード変更せずに達成できたであろう第２の符号化パスにおける符号化の向上又は調整をより著しく達成することができる。この開示によって考慮されている特定のモード変更は、動きベクトルにおける変化のために伝搬するビデオフレームにおける変化のような伝搬効果を取り込まない。その理由は、直接及びスキップモードは同様のやり方で、すなわち近隣ビデオブロックの動きベクトルに基づいて、動きベクトルを割り当てるからである。第２の符号化パス中に完全に符号化し直す技術のような従来技術と比較して、計算の複雑さも第２の符号化パスにおいて低減され得る。
【００２１】
様々なタイプのビデオ符号化の単位(例えば、ビデオブロックのフレーム又はビデオブロックのスライス)は、そのタイプのビデオ符号化の単位のビデオブロックを符号化するために使用することができる様々な符号化モードを有し得る。例えばＩＴＵ Ｈ．２６４では、イントラ(Ｉ)フレーム又はスライス、予測(Ｐ)フレーム又はスライス、及び双方向予測(Ｂ)フレーム又はスライスがある。ビデオ符号化の単位はフレーム又はスライスレベルで定義され得るが、単純化のために、以下の開示では単にＩスライス、Ｐスライス及びＢスライスと称する。しかしながら、この開示の技術は、ビデオ符号化の単位がフレームレベルで又は異なるやり方で定義される場合にも適用することができる。
【００２２】
Ｉスライスは、空間予測とイントラ符号化とによって符号化されるビデオブロックを有する。この場合に、ビデオブロックは、空間冗長を利用するために、同じスライスの他のビデオブロックと比較される。Ｉスライスのビデオブロックについては、同じスライス内の予測ブロックが、残差情報を定義するために使用される。残差情報は、符号化されるビデオブロックと同じスライス内の予測ブロックとの差を示す。Ｉスライスは、予測のために他のスライスの情報に依存しないので、一般に（例えば、Ｉ、Ｐ及びＢスライスの中で）最小量の圧縮を示すが、他のスライスよりも本質的によりロバストである。
【００２３】
Ｐスライスは、時間冗長を利用するために、前に符号化されたスライスのビデオブロックに対する動き推定と動き補償とによって符号化されるビデオブロックを有する。Ｐスライスのビデオブロックについては、前に符号化されたスライス中の予測ブロックが、残差情報を定義するために使用され得る。繰り返すが、残差情報は、Ｐスライスの場合は時間冗長を利用するために前に符号化されたスライス内に存在する予測ブロックと、符号化されるビデオブロックとの差を示す情報を指す。
【００２４】
Ｂスライスは、前に符号化された及び／又は後で符号化されるスライス中に存在するビデオブロックに対する動き推定と動き補償とによって符号化されるビデオブロックを有する。Ｂスライスのビデオブロックについては、(ビデオシーケンスの正又は負の何れかの時間方向における)異なるスライス中の予測ブロックが、残差情報を定義するために使用され得る。
【００２５】
Ｉスライスは、他のＰ又はＢスライスのビデオブロックのインター予測のための参照としての役割をし得る。従って、ＢスライスのうちＰのビデオブロックは、Ｉスライスのビデオブロックを後方参照する動き情報を定義し得る。同様に、Ｐスライスは、他のＰスライス又はＢスライスのインター予測のための参照としての役割をし得る。しかしながら、Ｂスライスは通常参照として使用されないが、ＩＴＵ Ｈ．２６４に対する幾つかの改善は、幾つかのＢスライスが参照としての役割をすることを可能にした。
【００２６】
各タイプのスライス(例えば、Ｉスライス、Ｐスライス又はＢスライス)は、異なるビデオブロックを符号化するために使用することができる幾つかの可能なモードを定義し得る。例えば、Ｉスライスのビデオブロックはイントラ１６×１６、イントラ１６×８、イントラ８×１６、イントラ８×８、イントラ８×４、イントラ４×８、イントラ４×４などのようなイントラモードを定義し得る。Ｐスライスのビデオブロックはイントラモードを使用し、さらにインター１６×１６、インター１６×８、インター８×１６、インター８×８、インター８×４、インター４×８、インター４×４などのような様々なインターモードを定義し得る。さらに、Ｐスライスはいわゆる「スキップモード」を定義し得る。スキップモードで符号化されたビデオブロックは、近隣ビデオブロックの動きベクトルに基づいて、動きベクトルを定義し、残差情報を含まない。復号器において、スキップモードのビデオブロックの動きベクトルは、近隣ビデオブロックの動きベクトルに基づいて導き出される。従って、スキップモードのビデオブロックについて、動きベクトル情報を符号化又は伝送する必要はない。
【００２７】
ＢスライスのビデオブロックはＩ及びＰスライスの様々なモードをサポートし、動きベクトルはビデオシーケンス中の前又は後のスライスを指し得る。Ｐスライスのビデオブロックのように、Ｂスライスのビデオブロックはスキップモードを定義し得る。さらに、Ｂスライスは、「直接モード」と称される別のモードもサポートする。直接モードは幾つかの点でスキップモードに類似しているが、直接モードで符号化されたビデオブロックは残差情報を含む。とくに、直接モードのビデオブロックが、近隣ビデオブロックの動きベクトルに基づいて、動きベクトルを定義するとき、直接モードで符号化されたビデオブロックは任意の動きベクトルを欠くことがある。しかしながら、直接モードのビデオブロックは、動きベクトルによって識別されるビデオブロックと符号化されるビデオブロックとの差を示す残差情報を含んでいる。
【００２８】
この開示によると、第２のパスの符号化は、ビデオブロックのために定義された動き情報(例えば、動きベクトル)を変更せずに、スキップ又は直接モード間でＢスライスのビデオブロックのモードを変更し得る。スキップモードから直接モードに変更された任意のビデオブロックに対する残差情報が加えられてもよく、直接モードからスキップモードに変更された任意のビデオブロックに対する残差情報が削除されてもよい。同様の技術が、スキップモードからインター１６×１６モードに変更するＰスライスのビデオブロックにも適用され得る。Ｐスライスは直接モードをサポートできないので、インター１６×１６モードの使用は、スキップモードのビデオブロックのための動きベクトルの計算に基づいて導き出される割り当て動きベクトルを用いて、直接モードの代わりに使用され得る。この場合に、(第１の符号化パス中に選択された）スキップモードにおけるＰスライスのビデオブロックのために定義された動きベクトルが、第２のパスにおいて１６×１６モードのビデオブロックに割り当てられる。次に残差情報が、予測ビデオブロックと符号化されるブロックとの差として生成される。この場合に、ビデオブロックはインター１６×１６モードのブロックとして定義され得るが、その動きベクトルは実際には、第１の符号化パスのスキップモードによって定義された動きベクトルとして計算されている。符号器は、第１の符号化パスのスキップモードによって定義された動きベクトルを、インター１６×１６モードにおける第２のパスの動きベクトルとして割り当てるだけである。インター１６×１６モードでは、Ｐスライスのビデオブロックに残差情報を含むことができる。
【００２９】
符号化に使用される量子化パラメータは、第１の符号化パスに対して第２の符号化パスにおいて調整され得る。しかしながら、通常、スキップモードのビデオブロックは残差情報を欠いているので、(より良い品質を与えるべき)量子化パラメータの低減は、とくにＢスライスにあまり著しい効果を与えないことがある。Ｂスライスにおいてスキップモードを直接モードに変更することによって、量子化パラメータを低減すると、従来の符号化技術に比べてビデオブロックに相当により著しい効果を達成することができる。それは、量子化パラメータの変更によって残差情報における変化が現れるからである。残差情報は直接モードのビデオブロックには含まれているが、スキップモードには含まれていないので、このような残差情報に対する量子化パラメータの変更の効果をより良く利用するために、モード変更が必要とされる。同時に、直接モードのビデオブロックとスキップモードのビデオブロックとは動きベクトルを同様に定義しているので、これらの特定のモード変更は、動き情報の変化によるミスマッチ又は望ましくない伝搬効果をもたらさないであろう。
【００３０】
図１は、ビデオ符号化及び復号システム10を示すブロック図である。図１に示されているように、システム10は、通信チャネル15を介して受信デバイス６に符号化されたビデオを送信するソースデバイス２を含んでいる。ソースデバイス２はビデオソース11、ビデオ符号器12及び変調器／送信器14を含み得る。受信デバイス６は受信器／復調器16、ビデオ復号器18及びディスプレイデバイス20を含み得る。システム10は、ここに記載されているように、２パス符号化技術を適用するように構成され得る。２パス符号化技術では、第２のパスにおいて量子化パラメータの変更とモード変更とがビデオブロックに対して行われるが、動きベクトル情報は変更されない。
【００３１】
図１の例では、通信チャネル15は、無線周波数(radio frequency, RF)スペクトル又は１つ以上の物理的伝送路のような任意の無線又は有線通信媒体、あるいは無線及び有線媒体の任意の組合せを備え得る。通信チャネル15は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットのようなグローバルネットワークなどのような、パケットベースのネットワークの一部を形成し得る。通信チャネル15は一般に、ソースデバイス２から受信デバイス６にビデオデータを送信するための、任意の適切な通信媒体、又は異なる通信媒体の集まりを表わす。
【００３２】
ソースデバイス２は、受信デバイス６に送信するために、符号化されたビデオデータを生成する。しかしながら、幾つかの場合において、デバイス２、６は実質的に対称的に動作し得る。例えば、デバイス２、６の各々はビデオ符号化及び復号コンポーネントを含み得る。従って、システム10は、例えばビデオのストリーミング、ビデオのブロードキャスティング又はテレビ電話のために、ビデオデバイス２、６間における一方向又は双方向のビデオ送信をサポートし得る。
【００３３】
ソースデバイス２のビデオソース11は、ビデオカメラのようなビデオキャプチャデバイス、前に取得したビデオを収めたビデオアーカイブ、又はビデオコンテンツプロバイダからのビデオ供給を含み得る。別の代案として、ビデオソース11は、コンピュータグラフィックスベースのデータ、例えばソースビデオ、又はライブビデオとコンピュータで生成されたビデオとの組合せを生成し得る。幾つかの場合において、ビデオソース11がビデオカメラである場合に、ソースデバイス２と受信デバイス６とは、いわゆるカメラ付き電話又はテレビ電話を形成し得る。各場合において、取得した、前に取得した又はコンピュータで生成されたビデオは、ビデオソースデバイス２から変調器／送信器14、通信チャネル15及び受信器／復調器16を介してビデオ受信デバイス６のビデオ復号器18に送信するために、ビデオ符号器12によって符号化され得る。ビデオ符号器12は、この開示のマルチパス符号化技術をサポートするために第１のパスの符号器22と第２のパスの符号器24とを含む。受信デバイス６は、ビデオデータを受信して復号すると、ユーザに復号されたビデオデータを表示するためにディスプレイデバイス20を使用する。ディスプレイデバイス20は、陰極線管、液晶ディスプレイ(liquid crystal display, LCD)、プラズマディスプレイ、有機発光ダイオード(organic light emitting diode, OLED)ディスプレイ、又は別のタイプのディスプレイデバイスのような様々なディスプレイデバイスの何れかを備え得る。
【００３４】
幾つかの場合において、ビデオ符号器12とビデオ復号器18とは、空間、時間及び／又は信号対雑音比(signal-to-noise ratio, SNR)のスケーラビリティのためにスケーラブルビデオコーディング(scalable video coding, SVC)をサポートするように構成され得るが、この開示の技術はＳＶＣに制限されない。幾つかの態様において、ビデオ符号器12とビデオ復号器18とは、ＳＶＣのために細粒度のＳＮＲスケーラビリティ(fine granularity SNR scalability, FGS)の符号化をサポートするように構成され得る。符号器12と復号器18とは、基本レイヤと１つ以上のスケーラブルな拡張レイヤとの符号化、送信及び復号をサポートすることによって、様々な程度のスケーラビリティをサポートし得る。ＳＶＣにおいて、基本レイヤは、ベースラインレベルの品質を有するビデオデータを運ぶ。１つ以上の拡張レイヤは、より高レベルの空間、時間及び／又はＳＮＲをサポートするために追加のデータを運ぶ。基本レイヤは、拡張レイヤの送信よりも確実に送信され得る。例えば、変調信号の最も信頼性の高い部分が、基本レイヤを送信するために使用され得る一方で、変調信号の信頼性の劣る部分は、拡張レイヤを送信するために使用され得る。しかしながら、ＳＶＣ方式の異なるレイヤは他の多くのやり方で定義され得る。
【００３５】
ビデオ符号器12とビデオ復号器18とは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ Ｈ．２６３、又はＩＴＵ−Ｔ Ｈ．２６４／ＭＰＥＧ−４、パート１０、アドバンスドビデオコーディング(ＡＶＣ)のようなビデオ圧縮標準に従って動作し得る。図２には示されていないが、幾つかの態様において、ビデオ符号器12とビデオ復号器18とは各々、オーディオ符号器と復号器とにそれぞれ統合されてもよく、共通データストリーム又は個別データストリーム中のオーディオとビデオとの両者の符号化を扱うために、適切なＭＵＸ−ＤＥＭＵＸユニット、又は他のハードウェア及びソフトウェアを含んでもよい。適宜に、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ Ｈ．２２３マルチプレクサプロトコル、又は他のプロトコル、例えばユーザデータグラムプロトコル(user datagram protocol, UDP)に準拠し得る。
【００３６】
Ｈ．２６４／ＭＰＥＧ−４(ＡＶＣ)標準は、合同ビデオチーム(Joint Video Team, JVT)として知られている共同提携関係の成果としてＩＳＯ／ＩＥＣのムービングピクチャ エキスパートグループ(Moving Picture Experts Group, MPEG)と共にＩＴＵ−Ｔのビデオコーディング エキスパートグループ(Video Coding Experts Group, VCEG)によって策定された。幾つかの態様において、この開示に記載されている技術は、一般にＨ．２６４標準に準拠するデバイスに適用され得る。Ｈ．２６４標準は、２００５年３月のＩＴＵ−Ｔ研究会による、全般的なオーディオビジュアルサービスのためのＩＴＵ−Ｔ勧告のＨ．２６４、アドバンスドビデオコーディングに記載されており、ここではＨ．２６４標準、Ｈ．２６４規格、あるいはＨ．２６４／ＡＶＣ標準又は規格と称され得る。この技術は他の標準又はビデオ符号化プロトコルにも適用され得る。
【００３７】
ビデオのブロードキャスティングに使用される場合に、この開示に記載されている技術は、技術標準ＴＩＡ−１０９９（「ＦＬＯ」規格）として発行される「Forward Link Only Air Interface Specification for Terrestrial Mobile Multimedia Multicast（地上モバイルマルチメディアマルチキャストのための順方向リンク専用エアインターフェース規格）」である順方向リンク専用(Forward Link Only, FLO)エアインターフェース規格を使用して地上モバイルマルチメディアマルチキャスト(terrestrial mobile multimedia multicast, TM3)システムにおいてリアルタイムのビデオサービスを配信するために拡張型Ｈ．２６４のビデオ符号化に適用され得る。すなわち、通信チャネル15は、ＦＬＯ規格などに従って無線ビデオ情報をブロードキャストするために使用される無線情報チャネルを備え得る。ＦＬＯ規格は、ビットストリームのシンタックス及びセマンティクスとＦＬＯエアインターフェースに適した復号プロセスとを定義する例を含む。その代わりに、ビデオは、ＤＶＢ−Ｈ(ディジタルビデオブロードキャスト−ハンドヘルド)、ＩＳＤＢ−Ｔ(統合サービスディジタルブロードキャスト−地上）、又はＤＭＢ(ディジタルメディアブロードキャスト)のような他の標準に従ってブロードキャストされてもよい。従って、ソースデバイス２はモバイル無線端末、ビデオストリーミングサーバ又はビデオブロードキャストサーバであり得る。しかしながら、この開示に記載されている技術は特定のタイプのブロードキャスト、マルチキャスト又はポイント ツー ポイントシステムに制限されない。ブロードキャストの場合に、ソースデバイス２は、各々が図１の受信デバイス６に類似し得る複数の受信デバイスに幾つかのチャネルのビデオデータをブロードキャストし得る。
【００３８】
他の例において、変調器／送信器14、通信チャネル15及び受信器／復調器16は、イーサネット（登録商標）、電話(例えば、ＰＯＴＳ)、ケーブル、電力線及び光ファイバシステムの１つ以上を含む任意の有線又は無線通信システム、及び／又は符号分割多元接続(ＣＤＭＡ又はＣＤＭＡ２０００)通信システム、周波数分割多元接続(frequency division multiple access, FDMA)システム、直交周波数分割多重(orthogonal frequency division multiple, OFDM)接続システム、時分割多元接続(time division multiple access, TDMA)システム、例えばＧＳＭ(Global System for Mobile Communication)、ＧＰＲＳ(General packet Radio Service)、又はＥＤＧＥ(enhanced data GSM environment)、ＴＥＴＲＡ(Terrestrial Trunked Radio)移動電話システム、広帯域符号分割多重接続(wideband code division multiple access, WCDMA)システム、高データレート１ｘＥＶ−ＤＯ(First generation Evolution Data Only)又は１ｘＥＶ−ＤＯゴールドマルチキャストシステム、ＩＥＥＥ ８０２．１１システム、ＭｅｄｉａＦＬＯ（登録商標）システム、ＤＭＢシステム、ＤＶＢ−Ｈシステム、あるいは２つ以上のデバイス間のデータ通信のための別の方式の１つ以上を備える無線システムに従って通信するように構成され得る。
【００３９】
ビデオ符号器12とビデオ復号器18とは各々、１つ以上のマイクロプロセッサ、ディジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリートな論理、ソフトウェア、ハードウェア、ファームウェア又はその任意の組合せとして実施され得る。ビデオ符号器12とビデオ復号器18との各々が１つ以上の符号器又は復号器に含まれていても、その両者がそれぞれの移動デバイス、加入者デバイス、同報通信デバイス、サーバなどにおいて、結合された符号器／復号器(combined encoder/decoder, CODEC)の一部として統合されていてもよい。さらに、ソースデバイス２と受信デバイス６とは各々、無線通信をサポートするために十分な無線周波数（ＲＦ）の無線コンポーネントとアンテナとを含めて、符号化されたビデオの送信及び受信のための適切な変調、復調、周波数変換、フィルタリング、及び増幅器のコンポーネントを適宜に含み得る。しかしながら、説明し易くするために、このようなコンポーネントは、図２の受信デバイス６の受信器／復調器16及びソースデバイス２の変調器／送信器14としてまとめられている。変調器／送信器14及び受信器／復調器16は各々、別々の又は統合されたコンポーネントを備え得る。
【００４０】
ビデオシーケンスは一連のビデオフレームを含む。ビデオ符号器12は、ビデオデータを符号化するために個々のビデオフレーム内の画素ブロックに対して動作する。ビデオブロックは固定又は可変サイズを有し、指定された符号化標準に従ってサイズが異なり得る。幾つかの場合において、各ビデオフレームは符号化の単位であるが、他の場合において、各ビデオフレームは、符号化の単位を形成する一連のスライスに分割され得る。各スライスは一連のマクロブロックを含み、マクロブロックはサブブロックに構成され得る。一例として、ＩＴＵ−Ｔ Ｈ．２６４標準は、イントラ予測をルマ成分については１６×１６又は４×４及びクロマ成分については８×８のような様々なブロックサイズで、並びにインター予測をルマ成分については１６×１６、１６×８、８×１６、８×８、８×４、４×８、４×４及びクロマ成分については対応するスケールサイズのような様々なブロックサイズでサポートする。
【００４１】
より小さなビデオブロックはより良い解像度を提供することができ、より高レベルの詳細を含んでいるビデオフレーム内の場所に使用され得る。一般に、マクロブロック(macroblock, MB)と様々なサブブロックとは、ビデオブロックとみなされ得る。さらに、スライスは、ＭＢ及び／又はサブブロックのような一連のビデオブロックとみなされ得る。なお、各スライスはビデオフレームの個別に復号可能な単位であり得る。
【００４２】
イントラ又はインターベースの予測符号化の後で、追加の符号化技術が、送信されたビットストリームに適用され得る。これらの追加の符号化技術は、(離散コサイン変換ＤＣＴ又はＨ．２６４／ＡＶＣにおいて使用される４×４又は８×８の整数変換のような)変換技術と、（変換係数の可変長符号化のような）変換係数の符号化とを含み得る。変換係数のブロックはビデオブロックと称され得る。言い換えると、「ビデオブロック」との用語は、情報の領域にかかわらずビデオデータのブロックを指す。従って、ビデオブロックは画素領域又は変換係数領域であり得る。
【００４３】
ビデオ符号器12は第１のパスの符号器22と第２のパスの符号器24とを含み、これらは別々のコンポーネント又はプロセスであってもよく、あるいは共通のコンポーネント又はプロセスに統合されていてもよい。第１のパスの符号器22は、ビデオシーケンスの様々なフレーム又はスライスのビデオブロックを符号化するために第１の符号化パスを行う。次に第２のパスの符号器22は、第１のパス中に行われた符号化を改善する。とくに、効率化及び単純化のために、第２のパスの符号器24は、第１のパスにおいて生成された情報の一部を採用して、第１のパス中に生成された符号化された情報の他の部分を改善する。例えば、第１のパスにおいてインター符号化されたビデオブロックのために定義された動き情報(例えば、動きベクトル)は、伝搬エラーが取り込まれないことを確実にするために、動き情報を計算し直さずに、第２のパスにおいて同じビデオブロックに割り当てられ得る。しかしながら、第２のパスに使用される量子化パラメータは、第１のパスに使用された量子化パラメータに対して変わることがある。
【００４４】
この開示によると、第２のパスの符号器24は、動き情報を変更せずに、あるいはこのような動き情報が復号器18又は受信デバイス６において導き出されるように、ビデオブロックモードを、例えばスキップ又は直接モード間で変更し得る。スキップモードから直接モードに変更された任意のビデオブロックに対する残差情報が加えられてもよく、直接モードからスキップモードに変更された任意のビデオブロックに対する残差情報が削除されてもよい。これらのモード変更と共に、量子化パラメータを変更すると、モード変更せずに達成できたであろう第２の符号化パスにおける符号化の向上又は調整をより著しく達成することができる。直接及びスキップモードは、同様のやり方で、すなわち近隣ビデオブロックの動きベクトルに基づいて、動きベクトルを割り当てるので、この開示により考慮されている特定のモード変更は伝搬効果を取り込まない。
【００４５】
図２は、この開示に従ってビデオ符号化技術を示すフローダイアグラムである。図２に示されているように、第１のパスの符号器22は第１の符号化パスにおいてビデオブロックを符号化する(31)。第１の符号化パス中に、第１のパスの符号器22は様々なビデオブロックのための量子化パラメータを定義し、量子化パラメータに基づいて、符号化モードを選択し得る。量子化パラメータは、符号化に使用される量子化レベルを定義し得る。例えば、より小さい量子化パラメータは、より大きい量子化パラメータよりも高品質と低圧縮とをもたらす。第１のパスにおいて使用される符号化モードは、選択された量子化パラメータによって決まり得る。例えば、ラグランジュ乗数(λ)はλ＝２−（ＱＰ）又はλ＝ｅ−（ＱＰ）として定義され得る。なお、「ｅ」は自然対数関数の基数(例えば、ｅ＝２．７１８２８１８２８４５９)を表わし、ＱＰは選択された量子化パラメータを表わす。従って、ＱＰに対する調整が、ラグランジュ乗数をスケールするために使用され得る。ラグランジュ乗数(λ)の異なる値は異なるモード選択をもたらし得る。このように、量子化パラメータに基づいて、符号化モードを選択することができる。
【００４６】
適切な符号化モードを選択すると、第１のパスの符号器22は選択された符号化モードに従ってビデオブロックを符号化する。例えば、イントラ符号化モードがビデオブロックのために選択されると、第１のパスの符号器22は、ビデオブロックを符号化するために空間推定とイントラ符号化とを行う。インター符号化モードがビデオブロックのために選択されると、第１のパスの符号器22は、ビデオブロックを符号化するために動き推定予測と動き補償とを行う。直接符号化モードがビデオブロックのために選択されると、第１のパスの符号器22は、近隣ビデオブロックの動きベクトルに基づいて、そのビデオブロックのための動きベクトルを決定し、ビデオブロックを符号化するために残差情報を生成する。この場合に、直接モードを使用して符号化されたビデオブロックについて、動きベクトル情報は、近隣ビデオブロックの動きベクトルに基づいて、復号器において導き出すことができるので、それを符号化する必要はない。スキップ符号化モードがビデオブロックのために選択されると、第１のパスの符号器22は動き又は残差情報を符号化しない。直接モードを使用して符号化されたビデオブロックのように、スキップモードを使用して符号化されたビデオブロックについて、動きベクトル情報は、近隣ビデオブロックの動きベクトルに基づいて、復号器において導き出すことができる。従って、直接モードによって符号化されたビデオブロックと、スキップモードによって符号化されたビデオブロックとの唯一の違いは、直接モードによって符号化されたビデオブロックは残差情報を含み、一方でスキップモードによって符号化されたビデオブロックは残差情報を欠いているということである。
【００４７】
ビデオブロックが第１のパスにおいて符号化されると(31)、第２のパスの符号器24は第２の符号化パスに対する量子化パラメータを調整する(32)。この場合に、第１の符号化パスで生成されたデータ量が利用可能な帯域幅に対して過剰であるならば、第２のパスにおいて量子化を増加しデータを低減するために、量子化パラメータを大きくしてもよい。その代わりに、第１の符号化パスで生成されたデータ量が利用可能な帯域幅に対して少ないならば、第２のパスにおいて量子化を低減しデータを増加するために、量子化パラメータを小さくしてもよい。
【００４８】
さらに、第２のパスの符号器24は、１つ以上のビデオブロックのために符号化モードを変更する(33)。例えば、以下でより詳しく記載されるように、スキップビデオブロックは、(Ｂスライスのために)直接ビデオブロック又は(Ｐスライスのために)インター１６×１６ビデオブロックに変更され、従って動きベクトルを変更せずにこのようなビデオブロックに対する残差情報を含むことができる。この場合に、量子化パラメータの変更と共にモード変更すると、量子化パラメータの変更のみで達成されたであろう第２のパスの符号化における品質向上よりも有益であり得る。同時に、変更されたモードは動きベクトルの計算に同じやり方を使用するので、モード変更はミスマッチも伝搬効果も取り込まないであろう。例えば、１つのビデオブロックの動きベクトルが変更され、そのビデオブロックが異なるビデオブロックの符号化のために参照ブロックとしてさらに使用されるときに、伝搬効果が現れ得る。この場合に、第１のブロックの動きベクトルの変更は、第２のビデオブロックに影響を与え得る。第１の(参照)ビデオブロックの動きベクトルがＸであったと仮定して、第２のビデオブロックが符号化されたかもしれない。第２のビデオブロックが予測参照として第１のビデオブロックに依存する限り、動きベクトルがＹに変更されると、それは第１のビデオブロックだけでなく、第２のビデオブロックにも影響を与え得る。このような効果は、ここでは伝搬効果、伝搬エラー又はミスマッチと称され得る。
【００４９】
より多くのデータ圧縮が必要とされる場合に、(Ｂスライスのための)直接モードのビデオブロックはスキップモードのビデオブロックに変更され得る。これは、このようなビデオブロックに対する残差情報を削除して、ビデオ符号化に必要なデータ量を低減する。しかしながら、これは、希望のビットレートを達成するために必要であり得る品質も低減し得る。希望のビットレートはサービスプロバイダによって設定されるか、サービス品質レベルによって設定されるか、物理的な帯域幅の制約によって設定されるか、又は一般的に任意のやり方で設定され得る。何れの場合においても、第２のパスの符号器24は、ビデオブロックのモードを指定する情報を、直接からスキップに変更して、直接ビデオブロックを符号化するために第１の符号化パス中に生成された残差情報を削除するだけである。
【００５０】
品質向上が要求され、余分な帯域幅がある場合に、(Ｂスライスのための)スキップモードのビデオブロックは直接モードのビデオブロックに変更され得る。この場合に、残差情報がこのようなビデオブロックのために生成されて含められる。これはビデオ符号化に必要なデータ量を増加し、量子化パラメータの低減に基づいて、量子化パラメータの調整のみを用いて達成できたであろう品質向上よりも非常に大きな品質向上を可能にする。この場合に、第２のパスの符号器24は、ビデオブロックのモードを指定する情報を、直接からスキップに変更して、直接ビデオブロックを符号化するために必要な残差情報を生成するだけである。
【００５１】
調整された量子化パラメータと変更されたモードとを使用して、第２のパスの符号器24は、第２のパスにおけるビデオブロックを符号化する(34)。繰り返すが、これは、ビットレートの制約を満たすか、未使用の帯域幅を利用するか、又は他の目標を達成するために、第１のパスで行われたビデオ符号化を改善する。第２のパスの符号器24は、希望のビットレートの増加又は低減を達成することができるように量子化パラメータの調整とモード変更とについての効果のバランスをまとめてとるために、量子化パラメータの調整(32)、モード変更(33)及び第２のパスの符号化(34)を共に行い得る。変調器／送信器14は、物理レイヤの変調方式に従って符号化された情報を調整して、通信チャネル15によって受信デバイス６に符号化情報を送信することができる（35）。
【００５２】
図３は、スキップモードのマクロブロック38から直接モードのマクロブロック39に変更されるＢスライスのビデオブロックの概念図である。図４は、Ｂスライスのビデオブロックがスキップモードから直接モードに変更される第２のパスの符号化技術を示すフローダイアグラムである。スキップモードのマクロブロック38から直接モードのマクロブロック39に所与のビデオブロックを変換するために、第２のパスの符号器24は、直接モードの所与のビデオブロックに対する残差情報を生成する。スキップマクロブロックと直接マクロブロックとは、(近隣マクロブロックの動き情報に基づいて)同じやり方で復号器において動き情報を導き出すので、スキップから直接モードへの変更は動き推定を含む必要がない。符号化モードを指定する情報は、単にモード変更を反映するために変更され、直接モードのマクロブロックに関連する残差情報が生成される。
【００５３】
より具体的には、図４に示されているように、第２のパスの符号器24は、符号化されるビデオブロックのために新たな量子化パラメータ(ＱＰ)を選択する(41)。この場合に、新たなＱＰは、第１の符号化パス中にビデオブロックの符号化に使用されたものよりも小さくてもよく、より少ない量子化とより良い解像度とをもたらし得る。新たなＱＰを使用して、第２のパスの符号器24は新たなラグランジュ乗数を計算する(42)。ラグランジュ乗数は、例えば、λ＝２−（ＱＰ）又はλ＝ｅ−（ＱＰ）として計算され得る。なお、「ｅ」は自然対数関数の基数を表わし(例えば、ｅ＝２．７１８２８１８２８４５９)、ＱＰは選択された量子化パラメータを表わす。従って、上述の式に従ってラグランジュ乗数をスケールするために、ＱＰに対する調整を使用することができる。ラグランジュ乗数(λ)の異なる値は異なるモード選択をもたらし得る。
【００５４】
スケールされたラグランジュ乗数に基づいて、第２のパスの符号器24は、１つ以上のスキップマクロブロックを直接マクロブロックに変換する(43)。具体的には、費用関数をラグランジュ乗数値に基づいて計算してもよく、符号化レート及び／又は歪みを考慮して直接マクロブロックが有利である場合に、スキップマクロブロックを直接マクロブロックに替えてもよい。例えば、スキップモードから直接モードへの変換は、ラグランジュ乗数によって重み付けされるレート−歪み(rate-distortion, R-D)の費用に基づき得る。スキップモードを直接モードに変換する代わりのもう１つの簡単なやり方では、各スキップマクロブロックの残差を量子化して、量子化後に非ゼロ係数がある場合に、それを直接マクロブロックと宣言する。１つ以上のスキップマクロブロックを直接マクロブロックに変換した後で、第２のパスの符号器24は、変換されたマクロブロックに対する残差情報を符号化する(44)。具体的には、第２のパスの符号器24は、近隣ビデオブロックの動きベクトルに基づいて、動きベクトルを計算し、動きベクトルによって識別された予測ブロックを生成し、予測ブロックと直接マクロブロックとして符号化されたブロックとの差を示す残差情報を符号化し得る。しかしながら、動きベクトル情報は、復号器において生成することができるので、符号化ビットストリームから除いてもよい。
【００５５】
図５は、直接モードのマクロブロック58からスキップモードのマクロブロック59に変更されるＢスライスのビデオブロックの概念図である。図６は、Ｂスライスのビデオブロックが直接モードからスキップモードに変更される第２のパスの符号化技術を示すフローダイアグラムである。直接モードのマクロブロック58からスキップモードのマクロブロック59に所与のビデオブロックを変換するために、第２のパスの符号器24は基本的にモードを変更して、スキップモードにおける所与のビデオブロックに対する残差情報を削除する。
【００５６】
繰り返すが、スキップマクロブロックと直接マクロブロックとは、(近隣マクロブロックの動き情報に基づいて)同じやり方で復号器において動き情報を導き出すので、直接モードからスキップモードへの変更は動き推定を含む必要はない。符号化モードを指定する情報は、単にモード変更を反映するために変更され、直接モードのマクロブロックに関連する残差情報が廃棄される。
【００５７】
図６に示されているように、第２のパスの符号器24は、符号化されるビデオブロックに対する新たな量子化パラメータ(ＱＰ)を選択する(61)。この場合に、新たなＱＰは、第１の符号化パス中にビデオブロックの符号化に使用されたものよりも大きくてもよく、より多くの量子化とより低い品質とをもたらし得る。新たなＱＰを使用して、第２のパスの符号器24は、例えば、上述の式の１つを使用してラグランジュ乗数をスケールすることによって、新たなラグランジュ乗数を計算する（62）。ラグランジュ乗数の異なる値(λ)は異なるモード選択をもたらし得る。
【００５８】
スケールされたラグランジュ乗数に基づいて、第２のパスの符号器24は、１つ以上の直接マクロブロックをスキップマクロブロックに変換する(63)。費用関数をラグランジュ乗数値に基づいて計算してもよく、スキップマクロブロックが費用を下げる場合に、直接マクロブロックをスキップマクロブロックに替えるべきである。その代わりに、残差情報を欠いた(又は残差情報の閾値レベルに足りない)直接マクロブロックはそのままスキップマクロブロックとして宣言されてもよい。第２のパスの符号器24は、変換されたマクロブロックに対する残差情報を削除する(64)。
【００５９】
図７は、スキップモードのマクロブロック78からインター１６×１６のマクロブロック79に変更されるＰスライスのビデオブロックの概念図である。図８は、Ｐスライスのビデオブロックがスキップモードからインター１６×１６モードに変更される第２のパス符号化技術を示すフローダイアグラムである。Ｂスライスと異なり、Ｐスライスは直接モードをサポートすることができない。しかしながら、この場合に、Ｐスライスのためのスキップモードからインター１６×１６モードへのモード変更は、Ｂスライスにおけるスキップモードから直接モードへのモード変更と同様の効果を与えるように修正することができる。
【００６０】
スキップモードのマクロブロック78からインター１６×１６のマクロブロック79に所与のビデオブロックを変換するために、第２のパスの符号器24は、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更して、スキップモードのビデオブロックのための動きベクトルの計算に基づいて、インターモードのビデオブロックに動きベクトルを割り当てて、インターモードにおける所与のビデオブロックに対する残差情報を生成する。
【００６１】
より具体的には、図８に示されているように、第２のパスの符号器24は、符号化されるビデオブロックに対する新たな量子化パラメータ(ＱＰ)を選択する(81)。この場合に、新たなＱＰは、第１の符号化パス中にビデオブロックの符号化に使用されたものよりも小さくてもよく、より少ない量子化とより良い品質とをもたらし得る。新たなＱＰを使用して、第２のパスの符号器24は新たなラグランジュ乗数を計算する(82)。繰り返すが、ラグランジュ乗数は、例えばλ＝２−(ＱＰ)又はλ＝ｅ−（ＱＰ）として計算され得る。なお、「ｅ」は自然対数関数の基数を表わし(例えば、ｅ＝２．７１８２８１８２８４５９)、ＱＰは選択された量子化パラメータを表わす。最小費用のモード選択を助けるために、ラグランジュ乗数値に基づいて、費用関数を計算してもよい。新たなＱＰは上述の式に従ってラグランジュ乗数をスケールし、スケールされたラグランジュ乗数は符号化モードを選択するために使用され、その符号化モードは第１の符号化パスのものと異なる場合と異ならない場合とがある。
【００６２】
スケールされたラグランジュ乗数に基づいて、第２のパスの符号器24は、１つ以上のスキップマクロブロックをインター１６×１６マクロブロックに変換する(83)。費用関数をラグランジュ乗数値に基づいて計算してもよく、インター１６×１６マクロブロックが費用を下げる場合に、スキップマクロブロックをインター１６×１６マクロブロックに替えるべきである。例えば、スキップモードからインター１６×１６モードへの変換は、ラグランジュ乗数によって重み付けされたレート−歪み(Ｒ−Ｄ)の費用に基づき得る。その代わりに、スキップモードをインター１６×１６モードに変換するもう１つの簡単なやり方では、各スキップマクロブロックの残差を量子化し、量子化後に非ゼロ係数がある場合に、それをインター１６×１６マクロブロックと宣言する。第２のパスの符号器24は、対応するスキップマクロブロックの動きベクトルに基づいて、変換されたインター１６×１６マクロブロックに動き情報(例えば、動きベクトル)を割り当てる。言い換えると、第２のパスの符号器24はマクロブロックをインター１６×１６モードで符号化されたと示すが、動きベクトルは、スキップモードによって定義された元の動きベクトルと実際には同じものである。予測ブロックを識別するために動きベクトルを使用して、第２のパスの符号器24は、変換されたインター１６×１６マクロブロックに対する残差情報を生成して符号化する。
【００６３】
第２のパスの符号器24が、スキップマクロブロックのみに通常使用される計算を使用して、インター１６×１６モードのマクロブロックのための動きベクトルを計算しても、使用された符号化方式は復号器に分からないので、図８の技術は(例えば、ＩＴＵ Ｈ．２６４に)準拠する標準を維持する。従って、復号器はインター１６×１６モードのマクロブロックを復号するだけであり、動きベクトルが符号器によってどのように計算されたかを問題にしないであろう。
【００６４】
ここに記載された技術は、ハードウェア、ソフトウェア、ファームウェア、又はその任意の組合せで実施され得る。モジュール又はコンポーネントとして記載された特徴は、統合された論理デバイスにおいて一緒に、又はディスクリートであるが相互運用可能な論理デバイスとして別々に実施され得る。ソフトウェアにおいて実施される場合に、この技術は、実行されたときに、上述の方法の１つ以上を行う命令を備えるコンピュータ読み出し可能媒体によって少なくとも部分的に実現され得る。コンピュータ読み出し可能媒体は、パッケージ化されたものを含み得るコンピュータプログラム製品の一部を形成し得る。コンピュータ読み出し可能媒体は、ランダムアクセスメモリ(random access memory, RAM)、例えば同期ＤＲＡＭ(synchronous DRAM, SDRAM)、読み出し専用メモリ(read only memory, ROM)、不揮発性ランダムアクセスメモリ(non-volatile random access memory, NVRAM)、電気的に消去可能なプログラム可能な読み出し専用メモリ(electrically erasable programmable read-only memory, EEPROM)、フラッシュメモリ、磁気又は光学データ記憶媒体などを備え得る。この技術は、さらに、又はその代わりに、命令又はデータ構造の形でコードを搬送又は通信し、コンピュータによってアクセス、読み出し及び／又は実行することができるコンピュータ読み出し可能通信媒体によって少なくとも部分的に実現され得る。
【００６５】
コードは、１つ以上のディジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）あるいは他の対応する統合された又はディスクリートな論理回路のような１つ以上のプロセッサによって実行され得る。従って、ここで使用されている「プロセッサ」との用語は、ここに記載されている技術を実施するために適した上述の構造又は任意の他の構造を指し得る。さらに、幾つかの態様において、ここに記載されている機能は、符号化と復号とのために構成された、又は結合されたビデオ符号器−復号器(combined video encoder-decoder, CODEC)に組み込まれた、専用のソフトウェアモジュール又はハードウェアモジュール内に提供され得る。
【００６６】
本発明の様々な実施形態が記載された。これら及び他の実施形態は請求項の範囲内である。
以下に、本願出願時の特許請求の範囲に記載された発明を付記する。
［１］第１の符号化パスにおいてビデオブロックを符号化し、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択することと、
第２の符号化パスにおいて前記ビデオブロックを符号化し、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更し、前記変更されたビデオ符号化モードは前記動き情報を変更しないこと
とを備える、ビデオ符号化の方法。
［２］前記第２の符号化パスは、
前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールして、
前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更する、
［１］の方法。
［３］前記ビデオ符号化モードの少なくとも幾つかはスキップモードから直接モードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更して、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する、
［１］の方法。
［４］前記ビデオ符号化モードの少なくとも幾つかは直接モードからスキップモードに変更し、
前記第２の符号化パスは、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する、
［１］の方法。
［５］前記ビデオ符号化モードの少なくとも幾つかはスキップモードからインターモードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、前記インターモードのビデオブロックに動きベクトルを割り当てて、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する、
［１］の方法。
［６］前記第２の符号化パスにおいて符号化された前記ビデオブロックを別のデバイスに送信することをさらに備える、［１］の方法。
［７］前記第２の符号化パスは、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整し、前記ビデオ符号化モードの少なくとも幾つかを変更する、［６］の方法。
［８］前記第２のパスにおいて前記ビデオブロックを符号化することは、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化することを含み、前記ビデオ符号化モードの少なくとも幾つかを変更することは、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更することと、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更すること
とを備える、［１］の方法。
［９］第１の符号化パスにおいてビデオブロックを符号化し、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択し、
第２の符号化パスにおいて前記ビデオブロックを符号化し、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更し、前記変更されたビデオ符号化モードは前記動き情報を変更しない、
ビデオ符号器を備える装置。
［１０］前記第２の符号化パスは、
前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールして、
前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更する、
［９］の装置。
［１１］前記ビデオ符号化モードの少なくとも幾つかはスキップモードから直接モードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更して、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する、
［９］の装置。
［１２］前記ビデオ符号化モードの少なくとも幾つかは直接モードからスキップモードに変更し、
前記第２の符号化パスは、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する、
［９］の装置。
［１３］前記ビデオ符号化モードの少なくとも幾つかはスキップモードからインターモードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、前記インターモードのビデオブロックに動きベクトルを割り当てて、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する、
［９］の装置。
［１４］前記第２の符号化パスにおいて符号化された前記ビデオブロックを変調して別のデバイスに送信する変調器／送信器をさらに備える、［９］の装置。
［１５］前記第２の符号化パスは、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整し、前記ビデオ符号化モードの少なくとも幾つかを変更する、［１４］の装置。
［１６］前記第２のパスにおいて前記ビデオブロックを符号化することは、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化することを含み、前記ビデオ符号化モードの少なくとも幾つかを変更することは、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更することと、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更すること
とを備える、［９］の装置。
［１７］プロセッサにおいて実行されたときに、前記プロセッサに、
第１の符号化パスにおいてビデオブロックを符号化させる命令を備え、前記第１の符号化パスは、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択し、
第２の符号化パスにおいて前記ビデオブロックを符号化させる命令を備え、前記第２の符号化パスは、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整して、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更し、前記変更されたビデオ符号化モードは前記動き情報を変更しない、
コンピュータ読み出し可能媒体。
［１８］前記第２の符号化パスは、
前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールして、
前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更する、
［１７］のコンピュータ読み出し可能媒体。
［１９］前記ビデオ符号化モードの少なくとも幾つかはスキップモードから直接モードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更して、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する、
［１７］のコンピュータ読み出し可能媒体。
［２０］前記ビデオ符号化モードの少なくとも幾つかは直接モードからスキップモードに変更し、
前記第２の符号化パスは、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する、
［１７］のコンピュータ読み出し可能媒体。
［２１］
前記ビデオ符号化モードの少なくとも幾つかはスキップモードからインターモードに変更し、
前記第２の符号化パスは、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更して、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、前記インターモードのビデオブロックに動きベクトルを割り当てて、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する、
［１７］のコンピュータ読み出し可能媒体。
［２２］前記第２の符号化パスにおいて符号化された前記ビデオブロックを別のデバイスに送信させる命令をさらに備える、［１７］のコンピュータ読み出し可能媒体。
［２３］前記第２の符号化パスは、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整し、前記ビデオ符号化モードの少なくとも幾つかを変更する、［２２］のコンピュータ読み出し可能媒体。
［２４］前記第２のパスにおいて前記ビデオブロックを符号化することは、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化することを含み、前記ビデオ符号化モードの少なくとも幾つかを変更することは、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更することと、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更すること
とを備える、［１７］のコンピュータ読み出し可能媒体。
［２５］第１の符号化パスにおいてビデオブロックを符号化する手段を備え、前記第１の符号化パスにおいてビデオブロックを符号化する手段は、前記ビデオブロックのための動き情報を定義する前記ビデオブロックのためのビデオ符号化モードを選択する手段を含み、
第２の符号化パスにおいて前記ビデオブロックを符号化する手段を備え、前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、前記ビデオブロックに関連する１つ以上の量子化パラメータを調整する手段と、前記調整された量子化パラメータに基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更する手段とを含み、前記変更されたビデオ符号化モードは前記動き情報を変更しない、
デバイス。
［２６］前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、前記調整された量子化パラメータに基づいて、ラグランジュ乗数値をスケールする手段を含み、前記変更する手段は、前記スケールされたラグランジュ乗数値に基づいて、前記ビデオブロックに関連する前記ビデオ符号化モードの少なくとも幾つかを変更する手段を備える、
［２５］のデバイス。
［２７］前記ビデオ符号化モードの少なくとも幾つかはスキップモードから直接モードに変更し、
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、スキップモードのビデオブロックから直接モードのビデオブロックに所与のビデオブロックを変更する手段と、前記直接モードにおける前記所与のビデオブロックに対する残差情報を生成する手段とを含む、
［２５］のデバイス。
［２８］前記ビデオ符号化モードの少なくとも幾つかは直接モードからスキップモードに変更し、
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、直接モードのビデオブロックからスキップモードのビデオブロックに所与のビデオブロックを変更する手段と、前記スキップモードにおける前記所与のビデオブロックに対する残差情報を削除する手段とを含む、
［２５］のデバイス。
［２９］前記ビデオ符号化モードの少なくとも幾つかはスキップモードからインターモードに変更し、
前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、スキップモードのビデオブロックからインターモードのビデオブロックに所与のビデオブロックを変更する手段と、前記スキップモードのビデオブロックのための動きベクトルの計算に基づいて、インターモードのビデオブロックに動きベクトルを割り当てる手段と、前記インターモードにおける前記所与のビデオブロックに対する残差情報を生成する手段とを含む、
［２５］のデバイス。
［３０］前記第２の符号化パスにおいて符号化された前記ビデオブロックを別のデバイスに送信する手段をさらに備える、［２５］のデバイス。
［３１］前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、前記ビデオブロックの送信に関連するビットレートをまとめて調整するために、前記量子化パラメータを調整する手段と、前記ビデオ符号化モードの少なくとも幾つかを変更する手段とを含む、［３０］のデバイス。
［３２］前記第２の符号化パスにおいて前記ビデオブロックを符号化する手段は、予測（Ｐ）スライス又はフレームと双方向予測(Ｂ)スライス又はフレームとの１６×１６マクロブロックを符号化する手段を含み、前記ビデオ符号化モードの少なくとも幾つかを変更する手段は、
Ｂスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードから直接マクロブロックモードに変更する手段と、
Ｐスライス又はフレームの少なくとも幾つかのビデオブロックのためにスキップマクロブロックモードからインター１６×１６マクロブロックモードに変更する手段
とを備える、［２５］のデバイス。
【符号の説明】
【００６７】
10・・・ビデオ符号化及び復号システム、15・・・通信チャネル。
【図１】
0005611601.tif 000002
【図２】
0005611601.tif 000003
【図３】
0005611601.tif 000004
【図４】
0005611601.tif 000005
【図５】
0005611601.tif 000006
【図６】
0005611601.tif 000007
【図７】
0005611601.tif 000008
【図８】
0005611601.tif 000009