(57)【要約】      （修正有）【課題】ビデオストリームを符号化するための分割アーキテクチャを提供する。【解決手段】副次的情報ストリームは、ビデオコンテンツストリームのブロック毎の速度及び／又は歪み推定関数の特徴を決定する情報を含む。また、コード化モード毎に、上記推定関数の異なるセットが含まれていてよい。符号化ビットストリーム及び副次的情報ストリームは、ビデオトランスコーダが受信でき、このビデオトランスコーダは、顧客が要求するビデオフォーマット及びビットレートに応じて、符号化ビットストリームを顧客が要求するピクチャ解像度に信号変換する。副次的情報ストリームにより、トランスコーダは、その出力ビットストリームに対する速度制御を効率的かつ簡潔に実施でき、上記出力ビットストリームは顧客デバイスへと伝送される。【選択図】図２
2019075825.tif 000002
【特許請求の範囲】
【請求項１】
ビデオコンテンツ項目の集合を記憶したメモリであって、各前記ビデオコンテンツ項目は、対応する符号化ビデオストリーム及び対応する副次的情報ストリームを含む、前記メモリ；
１つ又は複数のビデオトランスコーダデバイス；並びに
コントローラ
を備える、システムであって、
前記コントローラは、複数のユーザデバイスのそれぞれからの、前記ビデオコンテンツ項目のうちの所定の１つに対する複数のコンテンツ要求それぞれに応答して、利用可能な１つ又は複数のビデオトランスコーダデバイスを、各前記ユーザデバイスへの配信を行うために割り当てるよう構成され、
前記ユーザデバイスは、それぞれ異なる構成のビデオ処理能力（ＶＰＣ）を有し、
前記割り当てられた各ビデオトランスコーダデバイスは：
前記所定のコンテンツ項目の前記符号化ビデオストリーム及び前記副次的情報ストリームを受信し；
前記副次的情報ストリームを用い、各前記ユーザデバイスの前記ＶＰＣ構成に応じて前記符号化ビデオストリームを信号変換し、各前記標的符号化ビデオストリームを得て；
前記信号変換を実施する際、前記１つ又は複数のビデオトランスコーダデバイスのうち第１のビデオトランスコーダデバイスは：
復号化ビデオストリームを得るために前記符号化ビデオストリームを復号化し、
スケーリング済みビデオストリームを得るために、前記復号化ビデオストリームを各前記ユーザデバイスの標的ピクチャ解像度にスケーリングし、
各前記標的符号化ビデオストリームを得るために、前記副次的情報ストリームを用い、各前記ユーザデバイスの前記ＶＰＣ構成に応じて前記スケーリング済みビデオストリームを符号化するよう構成され、
各前記標的符号化ビデオストリームを、通信媒体を介して各前記ユーザデバイスに伝送し、各前記ビデオコンテンツ項目の前記副次的情報ストリームは、１つ又は複数のコード化モードそれぞれに対応する１つ又は複数の速度情報ストリームを含み、前記１つ又は複数の速度情報ストリームの各前記速度情報ストリームＲＩＳkは、各前記コード化モードに基づいてブロック予測を推測する、前記対応する符号化ビデオストリームのブロック毎の、対応する速度推定関数Ｒk（ｑ）の特徴を決定し、ｑは量子化ステップ幅である、システム。
【請求項２】
前記コントローラは：
前記第１のビデオトランスコーダデバイスから配信を受けている前記ユーザデバイスから報告を受信し、各前記報告は、前記ユーザデバイスの前記ＶＰＣ構成に対する対応する更新を含み；
各前記報告に応答して、前記第１のビデオトランスコーダデバイスが前記スケーリング済みビデオストリームを符号化するために使用する前記標的ピクチャ解像度を更新するよう構成される、請求項１記載のシステム。
【請求項３】
各前記ユーザデバイスの前記ＶＰＣ構成は：
前記ユーザデバイスが要求するビデオコード化フォーマット：及び
前記ユーザデバイスが要求する標的ピクチャ解像度
のうち１つ又は複数の識別を含む、請求項１に記載のシステム。
【請求項４】
各前記ユーザデバイスの前記ＶＰＣ構成は、Ｍ次元構成空間に亘るものであり、
Ｍは少なくとも２であり、
前記Ｍ次元構成空間は、ビデオフォーマットの選択に対応する少なくとも第１の次元、及びピクチャ解像度の選択に対応する第２の次元を有する、請求項１に記載のシステム。
【請求項５】
前記コントローラは：
前記複数のユーザデバイスのうち第１のユーザデバイスへの配信を行うよう割り当てられた前記１つ又は複数のビデオトランスコーダデバイスのうちの所定の１つによって生成された前記標的符号化ビデオストリームを記憶し；
第２のユーザデバイスが前記第１のユーザデバイスと同一又は同様の前記ＶＰＣ構成を有することを検出すると、これに反応して、前記第２のユーザデバイスへの前記記憶した標的符号化ビデオストリームの伝送を指示する
よう、構成される、請求項１に記載のシステム。
【請求項６】
前記コントローラは：
前記第１のビデオトランスコーダデバイスから配信を受けている前記ユーザデバイスから報告を受信し、各前記報告は、前記ユーザデバイスからの分析情報を含み；
各前記報告に応答して、前記第１のビデオトランスコーダデバイスが前記符号化ビデオストリームの前記信号変換を実施するために使用する１つ又は複数の標的ビットレート及びは標的ピクチャ解像度を更新する、
よう構成される、請求項１に記載のシステム。
【請求項７】
前記分析情報は、前記第１のビデオトランスコーダデバイスが伝送する前記標的符号化ビデオストリームそれぞれから再生したビデオの品質に関する情報を含む、請求項６に記載のシステム。
【請求項８】
ビデオコンテンツをユーザデバイスに配信するための方法であって、前記方法は、
ビデオコンテンツ項目の集合をメモリに記憶し、各前記ビデオコンテンツ項目は、対応する符号化ビデオストリーム及び対応する副次的情報ストリームを含み、
複数の遠隔ユーザデバイスのそれぞれからの、前記ビデオコンテンツ項目のうちの所定の１つに対する複数のコンテンツ要求のそれぞれに応答して、利用可能な１つまたは複数のビデオトランスコーダデバイスを各前記ユーザデバイスへの配信を行うために割り当て、前記ユーザデバイスはそれぞれ異なる構成のビデオ処理能力（ＶＰＣ）を有し、
前記割り当てられた各ビデオトランスコーダデバイスを利用して：
前記所定のコンテンツ項目の前記符号化ビデオストリーム及び前記副次的情報ストリームを受信し；
前記副次的情報ストリームを用い、各前記ユーザデバイスの前記ＶＰＣ構成に応じて前記符号化ビデオストリームを信号変換し、各前記標的符号化ビデオストリームを得て；
各前記標的符号化ビデオストリームを、通信媒体を介して各前記ユーザデバイスに伝送し、
各前記ビデオコンテンツ項目の前記副次的情報ストリームは、１つ又は複数のコード化モードそれぞれに対応する１つ又は複数の速度情報ストリームを含み、
前記１つ又は複数の速度情報ストリームの各前記速度情報ストリームＲＩＳkは、各前記コード化モードに基づいてブロック予測を推測する、前記ビデオコンテンツ項目の前記対応する符号化ビデオストリームのブロック毎の、対応する速度推定関数Ｒk（ｑ）の特徴を決定し、ｑは量子化ステップ幅であり、
前記１つ又は複数のビデオトランスコーダデバイスのうち第１のビデオトランスコーダデバイスから配信を受けている前記ユーザデバイスから報告を受信し、各前記報告は、前記ユーザデバイスからの分析情報を含み；
各前記報告に応答して、前記第１のビデオトランスコーダデバイスが前記符号化ビデオストリームの前記信号変換を実施するために使用する１つ又は複数の標的ビットレート及び標的ピクチャ解像度を更新する、
ことを含む方法。
【請求項９】
前記分析情報は、前記第１のビデオトランスコーダデバイスが伝送する前記標的符号化ビデオストリームそれぞれから再生したビデオの品質に関する情報を含む、請求項８に記載の方法。
【請求項１０】
ビデオの品質に関する前記情報が前記ビデオの品質の変化を示した場合において、前記第１のビデオトランスコーダデバイスが使用する１つ又は複数の前記標的ビットレート及び前記標的ピクチャ解像度の変化を更に含む、請求項９に記載の方法。
【請求項１１】
前記ユーザデバイスからの前記分析情報は、前記それぞれのユーザデバイスの前記ＶＰＣ構成に対する更新を更に含む、請求項８に記載の方法。
【請求項１２】
各前記ユーザデバイスの前記ＶＰＣ構成は、前記ユーザデバイスが要求するビデオコード化フォーマットの識別を含み、
各前記標的符号化ビデオストリームが、前記要求されたビデオコード化フォーマットに適合するように、前記符号化ビデオストリームの前記信号変換を実施する、請求項８に記載の方法。
【請求項１３】
各前記ユーザデバイスの前記ＶＰＣ構成は、前記それぞれのユーザデバイスが要求する標的ピクチャ解像度の識別を含み、
各前記標的符号化ビデオストリームが、前記要求された標的ピクチャ解像度を有するように、前記符号化ビデオストリームの前記信号変換を実施する、請求項８に記載の方法。
【請求項１４】
各前記ユーザデバイスの前記ＶＰＣ構成は、前記それぞれのユーザデバイスが要求する標的ビットレートの識別を含み、
各前記標的符号化ビデオストリームが、前記要求された標的ビットレートに略等しい平均出力ビットレートを有するように、前記符号化ビデオストリームの前記信号変換を実施する、請求項８に記載の方法。
【請求項１５】
前記複数のユーザデバイスのうち第１のユーザデバイスへの配信を行うよう割り当てられた前記１つ又は複数のビデオトランスコーダデバイスのうちの所定の１つによって生成された前記標的符号化ビデオストリームを記憶すること；及び
第２のユーザデバイスが前記第１のユーザデバイスと同一又は同様の前記ＶＰＣ構成を有することを検出すると、これに反応して、前記第２のユーザデバイスへの前記記憶した標的符号化ビデオストリームの伝送を指示すること
を更に含む、請求項８に記載の方法。
【請求項１６】
プログラム命令を含むコンピュータ可読メモリ媒体であって、前記プログラム命令は、ビデオトランスコーダシステムに：
ビデオコンテンツ項目の集合をメモリ媒体に記憶することであって、各前記ビデオコンテンツ項目は、対応する符号化ビデオストリーム及び対応する副次的情報ストリームを含む、前記記憶することと、
複数の遠隔ユーザデバイスのそれぞれからの、前記ビデオコンテンツ項目のうちの所定の１つに対する複数の受信したコンテンツ要求それぞれに応答して、前記ビデオトランスコーダシステムの１つ又は複数のビデオトランスコーダデバイスのうち利用可能な１つを、各前記ユーザデバイスへの配信を行うために割り当てることであって、前記ユーザデバイスは、ビデオ処理能力（ＶＰＣ）のそれぞれ異なる構成を有する、前記割り当てることと；
を行わせるように、プロセッサによって実行可能であり、
前記プログラム命令は、前記割り当てられた各ビデオトランスコーダデバイスに、
前記所定のコンテンツ項目の前記符号化ビデオストリーム及び前記副次的情報ストリームを受信すること；
前記副次的情報ストリームを用い、各前記ユーザデバイスの前記ＶＰＣ構成に応じて前記符号化ビデオストリームを信号変換することであって、前記信号変換を実施する際、前記１つ又は複数のビデオトランスコーダデバイスのうち第１のビデオトランスコーダデバイスは：
復号化ビデオストリームを得るために前記符号化ビデオストリームを復号化し、
スケーリング済みビデオストリームを得るために、前記復号化ビデオストリームを各前記ユーザデバイスの標的ピクチャ解像度にスケーリングし、
各前記標的符号化ビデオストリームを得るために、前記副次的情報ストリームを用い、各前記ユーザデバイスの前記ＶＰＣ構成に応じて前記スケーリング済みビデオストリームを符号化する、よう構成されている、前記信号変換すること；
各前記標的符号化ビデオストリームを、通信媒体を介して各前記ユーザデバイスに伝送することであって、各前記ビデオコンテンツ項目の前記副次的情報ストリームは、１つ又は複数のコード化モードそれぞれに対応する１つ又は複数の速度情報ストリームを含み、前記１つ又は複数の速度情報ストリームの各前記速度情報ストリームＲＩＳkは、各前記コード化モードに基づいてブロック予測を推測する、前記対応する符号化ビデオストリームのブロック毎の、対応する速度推定関数Ｒk（ｑ）の特徴を決定し、ｑは量子化ステップ幅である、前記伝送すること；
を行わせるように、プロセッサによって更に実行可能である、
コンピュータ可読メモリ媒体。
【請求項１７】
前記プログラム命令は、前記ビデオトランスコーダシステムに：
前記第１のビデオトランスコーダデバイスから配信を受けている前記ユーザデバイスから報告を受信することであって、各前記報告は、前記ユーザデバイスの前記ＶＰＣ構成に対する対応する更新を含む、前記受信することと；
各前記報告に応答して、前記第１のビデオトランスコーダデバイスが前記スケーリング済みビデオストリームを符号化するために使用する前記標的ピクチャ解像度を更新すること、
を行わせるように、プロセッサによって更に実行可能である、請求項１６に記載のコンピュータ可読メモリ媒体。
【請求項１８】
各前記ユーザデバイスの前記ＶＰＣ構成は：
前記ユーザデバイスが要求するビデオコード化フォーマット：及び
前記ユーザデバイスが要求する標的ピクチャ解像度
のうち１つ又は複数の識別を含む、
請求項１６に記載のコンピュータ可読メモリ媒体。
【請求項１９】
各前記ユーザデバイスの前記ＶＰＣ構成は、Ｍ次元構成空間に亘るものであり、
Ｍは少なくとも２であり、
前記Ｍ次元構成空間は、ビデオフォーマットの選択に対応する少なくとも第１の次元、及びピクチャ解像度の選択に対応する第２の次元を有する、
請求項１６に記載のコンピュータ可読メモリ媒体。
【請求項２０】
前記プログラム命令は、前記ビデオトランスコーダシステムに：
前記メモリ媒体の前記複数のユーザデバイスのうち第１のユーザデバイスへの配信を行うよう割り当てられた前記１つ又は複数のビデオトランスコーダデバイスのうちの所定の１つによって生成された前記標的符号化ビデオストリームを記憶すること；
第２のユーザデバイスが前記第１のユーザデバイスと同一又は同様の前記ＶＰＣ構成を有することを検出すると、これに反応して、前記第２のユーザデバイスへの前記記憶した標的符号化ビデオストリームの伝送を指示すること、
を行わせるように、プロセッサによって更に実行可能である、請求項１６に記載のコンピュータ可読メモリ媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般に、ビデオコンテンツの圧縮及び分散に関し、特にビデオコンテンツを符
号化するための分割アーキテクチャ及び上記分割アーキテクチャで使用するための速度制
御機構に関する。
【背景技術】
【０００２】
ビデオストリーミングサービスに対する需要は至る所に存在し、また増大している。従
って、ビデオコンテンツを圧縮して、有線及び／又は無線ネットワークを介して上記ビデ
オコンテンツを配信できる方法に対する需要は増大し続けている。
【０００３】
例えば、無線ネットワークにおけるユーザデバイス（例えば移動体デバイス）へのスト
リーミングビデオサービスの配信に対する需要は大きい。しかしながら、（無線ネットワ
ークの）基地局と移動体デバイスとの間の無線インタフェースは、無線妨害に弱く、ＲＦ
伝播品質は、環境内での物体の移動、移動体デバイスの移動、無線トラフィックローディ
ング及び輻輳等によって動的に変化するため、基地局と移動体デバイスとの間のチャネル
状態が変動する。更に、無線ネットワーク内のデータはＲＦスペクトルを介して伝送され
、これは制限されておりかつコストが高い。チャネル状態が悪く、移動体デバイスのスク
リーンサイズがＨＤＴＶ未満である場合には、ビットの大半が移動体デバイスにおいて低
下するか又は切り捨てられる可能性が高いため、フリーサイズのビットストリームにおい
て最高解像度かつ高ビットレートで伝送を行う理由はない。ＲＦチャネルの帯域幅制限特
性及びチャネル状態の変動性に適合した様式で、ストリーミングビデオを移動体デバイス
に配信するための機構が必要とされている。
【０００４】
別の例として、メディアプロバイダ及びコンテンツ配信ネットワークが、エンドユーザ
へのビデオコンテンツ配信時に被る負荷の軽減が必要とされている。コンテンツ配信ネッ
トワーク（ｃｏｎｔｅｎｔ  ｄｅｌｉｖｅｒｙ  ｎｅｔｗｏｒｋ：ＣＤＮ）は、ビデオコ
ンテンツタイトルをキャッシュして、このコンテンツタイトルを要求に応じてユーザに配
信するサーバを維持できる。しかしながら、ユーザデバイスは一般に、ビデオ処理性能に
関して幅広い異なる構成を有し、例えばピクチャ解像度及びビデオフォーマットに関して
異なる要件を有する。更に、所定のユーザデバイスのための標的ビットレートは、チャネ
ル状態の変化に従って動的に変化し得る。従ってＣＤＮは、所定のコンテンツタイトルの
多数のコピー、即ちユーザデバイス構成と標的ビットレートとの可能な組み合わせそれぞ
れに対して１つのコピーを保持しなければならない（又は上記コピーにアクセスできなけ
ればならない）。その結果、ＣＤＮオペレータにとってメモリストレージのコストが問題
となる。更に、ユーザデバイスが所定のコンテンツタイトルを要求し、要求された構成及
びビットレートに適切なコピーがサーバのキャッシュに存在しない場合、中央レポジトリ
から（例えばＮｅｔｆｌｉｘ又はＡｍａｚｏｎ等のメディアプロバイダから）上記コピー
をダウンロードしなければならない。コンテンツタイトルとユーザデバイス構成とビット
レートとの組み合わせは極めて多数存在するため、キャッシュミスは頻繁に発生し、従っ
て中央レポジトリ、例えばサーバファームからのダウンロードが頻繁に必要となる。よっ
て、ＣＤＮオペレータ及び／又はメディアプロバイダにとってダウンロードトラフィック
のコストが問題となる。以上から、コストパフォーマンスの良い方法でビデオコンテンツ
をユーザに配信できる機構が必要とされている。
【０００５】
ビデオコンテンツは、圧縮ビットストリームの形態で各ユーザに配信される。ビデオエ
ンコーダを使用して、ビデオコンテンツを定義するソースビデオストリームを圧縮する。
ソースビデオシーケンスの動的複雑性を原因として、ビデオエンコーダは典型的には速度
制御を応用する必要がある。換言すると、ビデオエンコーダは、圧縮プロセスを動的に制
御することにより、圧縮ビットストリームの出力ビットレートを制御する必要がある。更
に、ストリーミングビデオサービスに関しては、エンコーダと遠隔デコーダとの間の動的
なネットワーク状態に従って変化する標的ビットレートをサポートするために、速度制御
は適応性のあるものである必要がある。従って、計算効率が高い方法で速度制御を実施で
きるビデオエンコーダ及び／又はトランスコーダが必要とされている。
【発明の概要】
【課題を解決するための手段】
【０００６】
本明細書において開示するシステム、方法及びアーキテクチャは、幅広い文脈及び用途
において使用できる。
【０００７】
本明細書で開示する実施形態の１つでは、データを符号化して無線ネットワークでユー
ザデバイス（例えば移動体デバイス）にデータを送るために、ネットワークエッジトラン
スコーダを使用してよい。ネットワークエッジトランスコーダは、基地局に又は基地局付
近に配置してよく（例えば基地局に連結してよく）、高品質及び／又は高精細度の第１の
符号化ビデオストリームを、現在供給を受けている移動体デバイスのための第２の符号化
ビデオストリームに（例えばピクチャサイズ、ビデオフォーマット及びビットレート等の
１つ又は複数の因子に関して）信号変換するよう構成してよい。更に、ネットワークエッ
ジトランスコーダは、伝送チャネルの状態の変化、受信したビデオの品質の変化及び／又
は移動体デバイスの構成の変化に応答して、第２の符号化ビデオストリームのビットレー
トを動的に制御するよう構成してよい。このようなカスタマイズ性能及び動的制御性能は
、無線ネットワークに関して経済的に極めて有利である。このようなネットワークエッジ
トランスコーダを使用してユーザビットストリームを「ネットワークの辺縁（ｔｈｅ  ｅ
ｄｇｅ  ｏｆ  ｔｈｅ  ｎｅｔｗｏｒｋ）」においてカスタマイズするネットワークアー
キテクチャによって、クラウド内のサーバファームに負荷がかかるのを回避する。移動体
デバイスは、基地局に情報（分析）を定期的に送り返すことができ、これにより、ネット
ワークエッジトランスコーダは上記情報に従ってビットストリームをリアルタイムに最適
化し、制限されたＲＦスペクトルの最適な使用を達成できる。
【０００８】
いくつかの実施形態では、２種類の分析：無線分析及びビデオ分析を基地局に返送して
よい。無線分析及びビデオ分析は、例えばエッジトランスコーダ及び／又は基地局による
効果的な速度制御のために使用できる。無線分析は、移動体デバイスにおける基準信号の
信号強度、電力及び品質を含んでよい。無線分析を使用して、所定のチャネル状態におけ
るユーザデバイスへの確実な伝送のために最適なビットレートを決定できる。（基地局は
、このような測定を容易にするために、移動体デバイスへの伝送に基準信号を埋め込んで
よい。）ビデオ分析は、バッファ占有量状態又はビットストリーム復号化プロセスから検
出された誤差の速度を含んでよい。ビデオ分析を使用して、チャネル状態によって課され
る制約内で最大の配信をユーザに対して行うために必要な、最適な（多くの場合最小の）
ビットレートを決定できる。これらの分析に関わる設計上の制約は、移動体デバイスが上
記分析を生成するために実行する処理の最小化、及び基地局（ｂａｓｅｓｔａｔｉｏｎ：
ＢＳ）と移動体デバイスとの間の信号伝達帯域幅を節約するための上記分析のデータサイ
ズの最小化を含んでよい。
【０００９】
無線帯域幅の節約に加えて、（全てのビデオコンテンツを保持している）サーバファー
ムからネットワークの辺縁に送信する必要があるデータ量を低減することも望ましい。信
号変換機能をネットワーク辺縁に移動させ、サーバファームのビデオエンコーダをコンテ
ンツタイトルの符号化バージョンの生成に使用することにより、ユーザデバイスにデータ
を配信するために使用される通信媒体が有線方式であるか無線方式であるかに関わらず、
インターネットを介したデータトラフィック量及びクラウドサーバのストレージ要件が低
減される。
【００１０】
上述のように、ネットワークエッジトランスコーダは、符号化ビデオストリームを符号
化し、このストリームを、所定のユーザデバイスの特定の構成のためにカスタマイズする
。符号化ビデオストリームは、ビデオエンコーダによってソースビデオストリームから生
成される。ビデオエンコーダはまた、符号化ビデオストリームをユーザデバイスのために
信号変換する動作においてネットワークエッジトランスコーダにかかる負荷を緩和する、
副次的情報も生成できる。この副次的情報は、符号化ビデオストリームと共にネットワー
クエッジトランスコーダに伝送できる（又は利用可能とすることができる）。
【００１１】
本明細書で開示する実施形態の１つでは、ビデオエンコーダは、デジタル回路構成及び
伝送回路構成を含んでよい。
【００１２】
デジタル回路構成は、入力されるビデオストリームの各ブロックに対して、以下を含む
操作を実施するよう構成できる：（ａ）多数のコード化モードにそれぞれ対応する多数の
予測残差を受信する操作；（ｂ）予測残差を変換して、各コード化モードに対する変換ブ
ロックをそれぞれ得る操作；（ｃ）各コード化モードＭkに関して、量子化ステップ幅ｑ
の１つ又は複数の値それぞれを用いて、コード化モードＭkに対する上記変換ブロックを
量子化して、変換ブロックの１つ又は複数の量子化バージョンを得、上記変換ブロックの
１つ又は複数の量子化バージョンを含むデータの集合を処理して、コード化モードＭkに
関する速度推定関数Ｒk（ｑ）の特徴を決定する一次速度モデル化データを得る操作。
【００１３】
伝送回路構成は、通信媒体に副次的情報ストリームを伝送するよう構成でき、この副次
的情報ストリームは、各コード化モード及び各ブロックに関する一次モデル化データを含
む。
【００１４】
本明細書で開示する実施形態の別の１つでは、ビデオ信号変換システムは、デコーダ、
スケーリング部及び出力エンコーダを含んでよい。
【００１５】
デコーダは、第１の符号化ビデオストリームを受信及び復号化することで、復号化ビデ
オストリームを得るよう構成できる。
【００１６】
スケーリング部は、復号化ビデオストリームを標的ピクチャ解像度にスケーリングして
、スケーリング済みビデオストリームを得るよう構成できる。
【００１７】
出力エンコーダは、第１の符号化ビデオストリームに関連する副次的情報ストリームを
受信し、この副次的情報ストリームを用いてスケーリング済みビデオストリームを符号化
して、第２の符号化ビデオストリームを得るよう構成できる。
【００１８】
第１の符号化ビデオストリームは、ソースビデオストリームを符号化したバージョンで
あると解釈してよい。副次的情報ストリームは、ソースビデオストリームの特性を決定す
るメタデータを含んでよい。例えば副次的情報ストリームは、ソースビデオストリーム内
のブロックの速度及び／又は歪み特性を決定する情報を含んでよい。別の例として、副次
的情報ストリームは、ソースビデオストリーム内のブロックに関する運動ベクトルを含ん
でよい。副次的情報ストリームを出力エンコーダが使用することで、最適な（又は最適に
近い）コード化決定、例えば所定のブロックに対して使用するコード化モード、又は所定
のブロックに対して使用する量子化ステップ幅の値、又は所定のブロックに対して最適な
インタ予測を得られる可能性が高い１つ若しくは複数の運動ベクトルの決定を、計算効率
が高い方法で行うことができる。
【００１９】
いくつかの実施形態では、副次的情報ストリームはＮ個のコード化モードそれぞれに対
応するＮ個の速度情報ストリームを含み、ここでＮは１以上であり、Ｎ個の速度情報スト
リームの各速度情報ストリームＲＩＳkは、各コード化モードに基づいてブロック予測を
推測する、第１の符号化ビデオストリームのブロック毎の対応する速度推定関数Ｒk（ｑ
）の特徴を決定し、ここでｑは量子化ステップ幅である。
【００２０】
本明細書で開示する実施形態の更に別の１つでは、システムはキャッシュ、多数のビデ
オトランスコーダデバイス、コントローラを含んでよい。
【００２１】
キャッシュは、第１のビデオコンテンツ項目を含むビデオコンテンツ項目の集合を記憶
し、ここで各ビデオコンテンツ項目は、対応する符号化ビデオストリーム及び対応する副
次的情報ストリームを含み、各ビデオコンテンツ項目の副次的情報ストリームは、１つ又
は複数のコード化モードそれぞれに対応する１つ又は複数の速度情報ストリームを含み、
上記１つ又は複数の速度情報ストリームの各速度情報ストリームＲＩＳkは、各コード化
モードに基づいてブロック予測を推測する、第１の符号化ビデオストリームのブロック毎
の対応する速度推定関数Ｒk（ｑ）の特徴を決定し、ここでｑは量子化ステップ幅である
。
【００２２】
コントローラは、第１のビデオコンテンツ項目に対する複数のユーザデバイスそれぞれ
からの複数のコンテンツ要求それぞれに応答して、各ユーザデバイスへの配信を行うため
に、複数のビデオトランスコーダデバイスのうち使用可能な１つを割り当てるよう構成し
てよく、ここでユーザデバイスはそれぞれ、異なる構成のビデオ処理能力（ｖｉｄｅｏ  
ｐｒｏｃｅｓｓｉｎｇ  ｃａｐａｂｉｌｉｔｙ：ＶＰＣ）を有する。
【００２３】
割り当てられた各ビデオトランスコーダデバイスは：（ａ）キャッシュから、第１のコ
ンテンツ項目の符号化ビデオストリーム及び副次的情報ストリームを受信し；（ｂ）副次
的情報ストリームを用い、各ユーザデバイスのＶＰＣ構成に応じて符号化ビデオストリー
ムを信号変換し、各標的符号化ビデオストリームを得て；（ｃ）各標的符号化ビデオスト
リームを、通信媒体を介して各ユーザデバイスに伝送するよう構成してよい。
【００２４】
以上の及びその他の特徴及び利点は、本明細書で提示するアプローチに関する以下の詳
細な説明を参照することにより、当業者には明らかとなるであろう。
【００２５】
以下の詳細な説明を添付の図面との関連で考察すると、本発明のより良好な理解が得ら
れる。
【図面の簡単な説明】
【００２６】
【図１】図１は、ビデオコンテンツをユーザデバイスに配信するためのシステム１００の一実施形態を示す。
【図２】図２は、ビデオコンテンツをユーザデバイスに配信するためのシステム２００の一実施形態を示す。
【図３】図３は、ビデオコンテンツをユーザデバイスに配信するためのシステム３００のある実施形態を示す。
【図４】図４は、ネットワークエッジトランスコーダデバイスの一実施形態を示す。
【図５】図５はビデオコンテンツをユーザデバイスに配信するための、メザニンエンコーダ５１０及びネットワークエッジトランスコーダ５２０を伴うアーキテクチャ５００の一実施形態を示す。
【図６】図６は、アーキテクチャ５００の別の実施形態を示し、ここではメザニンエンコーダ５１０は副次的情報ストリーム及びメザニンビットストリームを生成する。ネットワークエッジトランスコーダ５２０は符号化プロセスにおいて上記副次的情報ストリームを使用する。
【図７】図７は、ビデオエンコーダ７００の一実施形態を示す。
【図７Ｂ】図７Ｂは、速度推定関数を生成するプロセスの一例を示す。
【図７Ｃ】図７Ｃは、速度推定関数を決定する際に使用されるパラメータを計算するための方法７５０を示す。
【図７Ｄ】図７Ｄは、歪み推定関数を生成するプロセスの一例を示す。
【図８】図８は、一次歪みモデル化データ及び一次速度モデル化データを生成するビデオエンコーダ７００のある実施形態を示す。
【図９】図９は、速度モデル化データ９１５を生成するビデオエンコーダ９００のある実施形態を示す。
【図１０】図１０は、ビデオトランスコーダシステム１０００の一実施形態を示す。
【図１１】図１１は、ピクチャレベルにおいて速度対λ関数を計算するための方法１１００の一実施形態を示す。
【図１２】図１２は、一連の実施形態による、統合型エンコーダ又はネットワークエッジトランスコーダの後半部分を示す。
【図１３】図１３は、ビデオエンコーダの前半部分の一実施形態を示す。
【図１４】図１４は、量子化ステップ幅の関数としての、費用関数Ｊ＝λＲ＋Ｄの一例を示す。
【図１５】図１５は、速度の関数としての歪みの一例を示す。
【図１６】図１６は、実際のピクチャサイズに基づくバッファモデル更新プロセスの実施形態を示す。
【図１７】図１７は、実際のピクチャサイズ及び暫定ピクチャサイズに基づくバッファモデル更新プロセスの実施形態を示す。
【発明を実施するための形態】
【００２７】
本発明は様々な修正及び代替形態を許容するものであるが、その具体的な実施形態を例
として図面に示し、また本明細書で詳細に説明する。しかしながら、上記具体的実施形態
の図及び詳細な説明は、本明細書に開示する特定の形態に本発明を限定することを意図し
たものではなく、反対に、添付の請求項によって定義されるような本発明の精神及び範囲
内にある全ての修正例、均等物及び代替例を包含することを意図したものであることを理
解されたい。
【００２８】
参照による援用
以下の参考文献は、その全体を参照することにより、本明細書においてその全体が完全
に論述されているかのように、本明細書に援用されるものとする：
米国仮特許出願第６１／６５８７６１号（２０１２年６月１２日出願、発明の名称「Ｒ
ａｔｅ  Ｃｏｎｔｒｏｌ  ｆｏｒ  Ｖｉｄｅｏ  Ｃｏｍｐｒｅｓｓｉｏｎ」）；
米国特許第７４１５５９４号（２００８年８月１９日公表、発明の名称「Ｐｒｏｃｅｓ
ｓｉｎｇ  Ｓｙｓｔｅｍ  Ｗｉｔｈ  Ｉｎｔｅｒｓｐｅｒｓｅｄ  Ｓｔａｌｌ  Ｐｒｏｐ
ａｇａｔｉｎｇ  Ｐｒｏｃｅｓｓｏｒｓ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｅｌｅ
ｍｅｎｔｓ」）；
米国特許第８１５１３０５号（２０１２年４月３日公表、発明の名称「Ｍｏｂｉｌｅ  
Ｔｅｌｅｖｉｓｉｏｎ  Ｂｒｏａｄｃａｓｔ  Ｓｙｓｔｅｍ」）；
Ｇａｒｙ  Ｊ．Ｓｕｌｌｉｖａｎ及びＴｈｏｍａｓ  Ｗｉｅｇａｎｄ「Ｒａｔｅ−ｄｉ
ｓｔｏｒｔｉｏｎ  ｏｐｔｉｍｉｚａｔｉｏｎ  ｆｏｒ  ｖｉｄｅｏ  ｃｏｍｐｒｅｓｓ
ｉｏｎ」ＩＥＥＥ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｍａｇａｚｉｎｅ、１９９８
年１１月、７４〜９０ページ；
Ｘｉａｎｇ  Ｌｉら「Ｌａｐｌａｃｅ  ｄｉｓｔｒｉｂｕｔｉｏｎ−ｂａｓｅｄ  Ｌａ
ｇｒａｎｇｉａｎ  ｒａｔｅ  ｄｉｓｔｏｒｔｉｏｎ  ｏｐｔｉｍｉｚａｔｉｏｎ  ｆｏ
ｒ  Ｈｙｂｒｉｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ」ＩＥＥＥ  Ｔｒａｎｓ．Ｃｉｒｃｕｉｔ
ｓ  ａｎｄ  Ｓｙｓｔｅｍｓ  ｆｏｒ  Ｖｉｄｅｏ  Ｔｅｃｈｎｏｌｏｇｙ、ｖｏｌ．１
９、ｎｏ．２、１９３〜２０５ページ。
【００２９】
技術参考資料
Ｊ．Ｃｈｏｉ及びＤ．Ｐａｒｋ「Ａ  ｓｔａｂｌｅ  ｆｅｅｄｂａｃｋ  ｃｏｎｔｒｏ
ｌ  ｏｆ  ｔｈｅ  ｂｕｆｆｅｒ  ｓｔａｔｅ  ｕｓｉｎｇ  ｔｈｅ  ｃｏｎｔｒｏｌｌ
ｅｄ  Ｌａｇｒａｎｇｅ  ｍｕｌｔｉｐｌｉｅｒ  ｍｅｔｈｏｄ」ＩＥＥＥ  Ｔｒａｎｓ
．Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ、ｖｏｌ．３、ｎｏ．５、５４６−５５８ページ、
１９９４年９月；
Ｋ．−Ｐ．Ｌｉｍ、Ｇ．Ｓｕｌｌｉｖａｎ、Ｔ．Ｗｉｅｇａｎｄ「Ｔｅｘｔ  ｄｅｓｃ
ｒｉｐｔｉｏｎ  ｏｆ  ｊｏｉｎｔ  ｍｏｄｅｌ  ｒｅｆｅｒｅｎｃｅ  ｅｎｃｏｄｉｎ
ｇ  ｍｅｔｈｏｄｓ  ａｎｄ  ｄｅｃｏｄｉｎｇ  ｃｏｎｃｅａｌｍｅｎｔ  ｍｅｔｈｏ
ｄｓ」Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ  ｏｆ  ＩＳＯ／ＩＥＣ  ＭＰＥＧ  ａｎｄ  
ＩＴＵ−Ｔ  ＶＣＥＧ  Ｄｏｃｕｍｅｎｔ、ＪＶＴ−Ｘ１０１、ジュネーブ、２００７年
６月；
Ｌｏｒｅｎ  Ｍｅｒｒｉｔｔ及びＲａｈｕｌ  Ｖａｎａｍ「Ｉｍｐｒｏｖｅｄ  ｒａｔ
ｅ  ｃｏｎｔｒｏｌ  ａｎｄ  Ｍｏｔｉｏｎ  Ｅｓｔｉｍａｔｉｏｎ  ｆｏｒ  Ｈ．２６
４  Ｅｎｃｏｄｅｒ」Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ、２００７年、ＩＣＩＰ２００
７、Ｖｏｌ．５、Ｖ−３０９〜Ｖ−３１２ページ；
Ｔｈｏｍａｓ  Ｗｉｅｇａｎｄ、Ｍｉｃｈａｅｌ  Ｌｉｇｈｔｓｔｏｎｅ、Ｄｅｂａｒ
ｇｈａ  Ｍｕｋｈｅｒｊｅｅ、Ｔ．Ｇｅｏｒｇｅ  Ｃａｍｐｂｅｌｌ、Ｓａｎｊｉｔ  Ｋ
．Ｍｉｔｒａ「Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ  Ｏｐｔｉｍｉｚｅｄ  Ｍｏｄｅ  Ｓｅ
ｌｅｃｔｉｏｎ  ｆｏｒ  Ｖｅｒｙ  Ｌｏｗ  Ｂｉｔ  Ｒａｔｅ  Ｖｉｄｅｏ  Ｃｏｄｉ
ｎｇ  ａｎｄ  ｔｈｅ  Ｅｍｅｒｇｉｎｇ  Ｈ．２６３  Ｓｔａｎｄａｒｄ」Ｃｉｒｃｕ
ｉｔｓ  ａｎｄ  Ｓｙｓｔｅｍｓ  ｆｏｒ  Ｖｉｄｅｏ  Ｔｅｃｈｎｏｌｏｇｙ、ＩＥＥ
Ｅ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ（Ｖｏｌｕｍｅ：６、Ｉｓｓｕｅ：２）、１９９６
年４月、１８２〜１９０ページ；
Ｌｉａｎｇ−ｊｉｎ  Ｌｉｎ、Ａｎｔｏｎｉｏ  Ｏｒｔｅｇａ「Ｂｉｔ−Ｒａｔｅ  Ｃ
ｏｎｔｒｏｌ  Ｕｓｉｎｇ  Ｐｉｅｃｅｗｉｓｅ  Ａｐｐｒｏｘｉｍａｔｅｄ  Ｒａｔｅ
−Ｄｉｓｔｏｒｔｉｏｎ  Ｃｈａｒａｃｔｅｒｉｓｔｉｃｓ」Ｃｉｒｃｕｉｔｓ  ａｎｄ
Ｓｙｓｔｅｍｓ  ｆｏｒ  Ｖｉｄｅｏ  Ｔｅｃｈｎｏｌｏｇｙ、ＩＥＥＥ  Ｔｒａｎｓ
ａｃｔｉｏｎｓ  ｏｎ（Ｖｏｌｕｍｅ：８、Ｉｓｓｕｅ：４）、１９９６年８月、４４６
〜４５９ページ；
Ｌ−Ｊ  Ｌｉｎ、Ａ  Ｏｒｔｅｇａ、Ｃ−Ｃ  Ｊ  Ｋｕｏ「Ａ  ｇｒａｄｉｅｎｔ−ｂ
ａｓｅｄ  ｒａｔｅ  ｃｏｎｔｒｏｌ  ａｌｇｏｒｉｔｈｍ  ｗｉｔｈ  ａｐｐｌｉｃａ
ｔｉｏｎｓ  ｔｏ  ＭＰＥＧ  ｖｉｄｅｏ」Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ、１９９
５年、Ｐｒｏｃｅｅｄｉｎｇｓ．、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ
ｏｎ（Ｖｏｌｕｍｅ：３）、ワシントンＤＣ、１９９５年１０月２３〜２６日、３９２
〜３９５ページ。
【００３０】
用語法
以下は、本出願で使用する用語の解説である。
【００３１】
メモリ媒体：いずれの様々な種類のメモリデバイス又はストレージデバイス。用語「メ
モリ媒体」は、インストール媒体（例えばＣＤ−ＲＯＭ、フロッピー（登録商標）ディス
ク１０４若しくはテープデバイス）；コンピュータシステムメモリ若しくはＤＲＡＭ、Ｄ
ＤＲ、ＲＡＭ、ＳＲＡＭ、ＥＤＯ  ＲＡＭ、ラムバスＲＡＭ等のランダムアクセスメモリ
；フラッシュ、磁気メディア（例えばハードドライブ）若しくは光学ストレージ等の不揮
発性メモリ；レジスタ、又はその他の同様のタイプのメモリ要素等を含むことを意図して
いる。メモリ媒体はその他のタイプのメモリ又はその組み合わせも同様に含んでよい。更
に、メモリ媒体は、プログラムを実行する第１のコンピュータ内に配置してよく、又はイ
ンターネット等のネットワークを介して第１のコンピュータに接続された第２の異なるコ
ンピュータ内に配置してよい。後者の場合、第２のコンピュータは第１のコンピュータに
、実行のためのプログラム命令を提供してよい。用語「メモリ媒体」は、異なる位置、例
えばネットワークを介して接続された異なるコンピュータ内にあってよい２つ以上のメモ
リ媒体を含んでよい。
【００３２】
プログラマブルハードウェア要素：これは、プログラマブル相互接続を介して接続され
た複数のプログラマブル機能ブロックを備える、様々なハードウェアデバイスを含む。例
としては、ＦＰＧＡ（フィールド、プログラマブルゲートアレイ）、ＰＬＤ（プログラマ
ブルロジックデバイス）、ＦＰＯＡ（フィールドプログラマブルオブジェクトアレイ）及
びＣＰＬＤ（複合ＰＬＤ）が挙げられる。プログラマブル機能ブロックは、細粒度（例え
ば組み合わせ論理又はルックアップテーブル）から粗粒度（演算処理装置又はプロセッサ
コア）に及ぶ範囲のものであってよい。プログラマブルハードウェア要素は「再構成可能
論理」と呼んでもよい。
【００３３】
ソフトウェアプログラム：用語「ソフトウェアプログラム」は、その通常の意味全体を
含むことを意図したものであり、いずれのタイプのプログラム命令、コード、スクリプト
及び／若しくはデータ又はこれらの組み合わせを含み、これらはメモリ媒体に記憶でき、
プロセッサによって実行できる。例示的なソフトウェアプログラムは：Ｃ、Ｃ＋＋、ＰＡ
ＳＣＡＬ、ＦＯＲＴＲＡＮ、ＣＯＢＯＬ、ＪＡＶＡ（登録商標）、アセンブリ言語等のテ
キストベースプログラミング言語で書かれたプログラム；グラフィカルプログラム（グラ
フィカルプログラミング言語で書かれたプログラム）；アセンブリ言語プログラム；機械
言語にコンパイルされたプログラム；及びその他のタイプの実行可能なプログラムを含む
。ソフトウェアプログラムは、何らかの方法で連携した２つ以上のソフトウェアプログラ
ムを含んでよい。本明細書に記載の様々な実施形態は、コンピュータ又はソフトウェアプ
ログラムによって実装できることに留意されたい。ソフトウェアプログラムは、プログラ
ム命令としてメモリ媒体に記憶させることができる。
【００３４】
ハードウェア構成プログラム：プログラマブルハードウェア要素をプログラム又は構成
するために使用できるプログラム（例えばネットリスト又はビットファイル）。
【００３５】
プログラム：用語「プログラム」は、その通常の意味全体を含むことを意図したもので
ある。用語「プログラム」は：１）メモリに記憶させることができ、プロセッサが実行可
能なソフトウェアプログラム；又は２）プログラマブルハードウェア要素を構成するため
に使用可能なハードウェア構成プログラムを含む。
【００３６】
コンピュータシステム：パーソナルコンピュータシステム（ＰＣ）、メインフレームコ
ンピュータシステム、ワークステーション、ネットワーク家電、インターネット家電、パ
ーソナルデジタルアシスタント（ＰＤＡ）、テレビジョンシステム、グリッドコンピュー
ティングシステム若しくはその他のデバイス又はデバイスの組み合わせを含む、様々なタ
イプの計算又は処理システムのいずれか。一般に、用語「コンピュータシステム」は、メ
モリ媒体からの命令を実行する少なくとも１つのプロセッサを有するいずれのデバイス（
又は複数のデバイスの組み合わせ）を包含するものとして広く定義できる。
【００３７】
自動的に（ａｕｔｏｍａｔｉｃａｌｌｙ）：その動作又は操作を直接指定又は実施する
ユーザ入力を必要とせずに、コンピュータシステムが実施する動作又は操作（例えばコン
ピュータシステムが実行するソフトウェア）について用いる。従って用語「自動的に」は
、ユーザが手動で実施又は指定する操作（ここでユーザが操作を直接実施するために入力
を提供する）と対照的なものである。自動処理は、ユーザが提供する入力によって開始さ
れる場合があるが、これに続く「自動的に」実施される動作は、ユーザが指定するもので
はなく、即ち「手動で」実施される（ユーザが各動作の実施を指定する）ものではない。
例えばユーザが、各フィールドを選択し、（例えば情報をタイピングすることによって、
チェックボックスを選択することによって、無線選択によって等で）情報を指定する入力
を提供することによって、電子フォームを埋める場合、仮にコンピュータシステムがユー
ザの動作に応答して上記フォームを更新しなければならないとしても、これは上記フォー
ムを手動で埋めたことになる。このようなフォームはコンピュータシステムによって自動
で埋めることができ、この場合コンピュータシステム（例えばコンピュータシステム上で
実行されるソフトウェア）は、フォームのフィールドを分析して、フィールドへの回答を
指定するいずれのユーザ入力を必要とせずにフォームを埋める。上述のように、ユーザは
フォームを自動で埋める動作を発動する場合はあるが、実際にフォームを埋める動作には
関わらない（例えばユーザはフィールドへの回答を手動で指定せず、回答は自動的に完了
する）。本明細書は、ユーザが行う動作に応答して自動的に実施される操作の様々な例を
提供する。
【００３８】
ブロック：ピクチャのコード化単位。例えばＡＶＣ／Ｈ．２６４ではブロックはマクロ
ブロックとして理解できる。別の例としてＨＥＶＣ／Ｈ．２６５では、ブロックはコード
化ツリー単位（Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔ：ＣＴＵ）として理解できる。
【００３９】
速度：ピクチャの最終的なビットストリームにおけるブロック又はピクチャと関連する
、ビット数。
【００４０】
歪み：これは、（ＤＣＴ、量子化、逆量子化、逆ＤＣＴ後の）再構成画像ブロックとソ
ース画像ブロックとの間の二乗誤差の和（ｓｕｍ  ｏｆ  ｓｑｕａｒｅ  ｅｒｒｏｒ：Ｓ
ＳＥ）として理解できる。ＳＳＥ以外の歪み測定法も同様に使用できる。
【００４１】
残差ブロック：予測ブロックとソース画像ブロックとの間の差のブロック。
【００４２】
以下の説明では、多数の具体的な詳細を記述することにより、本明細書で提示する方法
及び機構の完全な理解を提供する。しかしながら、これら様々な実施形態は上記具体的詳
細を用いずに実現可能であることを当業者は認識されたい。いくつかの例では、本明細書
に記載のアプローチを不明瞭にするのを回避するため、公知の構造、構成部品、信号及び
技術については詳細に示さなかった。説明を簡潔かつ明瞭なものとするために、図面に示
した要素は必ずしも正確な縮尺ではないことを理解されたい。例えばこれら要素のうちの
いくつかの寸法は、他の要素に対して拡大されている場合がある。
【００４３】
システム１００
ある一連の実施形態では、システム１００は図１に示すように構成できる。システム１
００は、幅広い文脈及び用途において使用できる。ある１つの応用例では、システム１０
０を、コンテンツ配信ネットワーク（ｃｏｎｔｅｎｔ  ｄｅｌｉｖｅｒｙ  ｎｅｔｗｏｒ
ｋ：ＣＤＮ）の一部として使用できる。システム１００は、メモリ１１０、１つ又は複数
のビデオトランスコーダデバイスＶＴＤ1、ＶＴＤ2、…ＶＴＤNdの集合１２０、及びコン
トローラ１３０を含む。Ｎdは、上記１つ又は複数のビデオトランスコーダデバイスの個
数を表す。（システム１００は、上述の、及び図２〜１７に関連して以下に述べる特徴、
要素及び実施形態のいずれのサブセットも含んでよい。）上記１つ又は複数のビデオトラ
ンスコーダデバイスは、以下で様々に説明されるように構成できる。
【００４４】
いくつかの実施形態では、メモリ、１つ又は複数のビデオトランスコーダデバイス、コ
ントローラは、地理的に分散させてよい。例えば一実施形態では、メモリをある地理的位
置に配置してよく、その一方で１つ又は複数のビデオトランスコーダデバイスは別の地理
的位置にある。この実施形態では、コントローラは１つ若しくは複数のビデオトランスコ
ーダデバイスと同一の位置に配置でき、あるいはメモリと同一の位置に配置でき、別の代
替例としては上記２つの位置の間を分割でき、更に別の代替例としては第３の地理的位置
に配置できる。
【００４５】
いくつかの実施形態では、メモリ、１つ又は複数のビデオトランスコーダデバイス、コ
ントローラは地理的に同じ位置に配置される。例えばこれらの要素を、同一のボックス若
しくはシャーシ若しくは電子部品ラック内に構成でき、又は同一のサーバファームの一部
として構成でき、又は同一の電子部品基板の一部として構成でき、又は同一の集積回路の
一部として構成できる。
【００４６】
いくつかの実施形態では、１つ若しくは複数のビデオトランスコーダデバイス及び／又
はコントローラは、無線ネットワークの基地局に、又はその付近に配置してよい（例えば
連結してよい、又は一部として組み込んでよい）。各ビデオトランスコーダデバイスは、
基地局の付近（例えばセル）の複数のユーザデバイスそれぞれに対してカスタマイズされ
たユーザビットストリームを生成できる。基地局は上記カスタマイズされたユーザビット
ストリームを、例えば従来の広範な多重化技術のいずれを用いて伝送信号へと多重化し、
この伝送信号を空中へと伝送する。各ユーザデバイスは上記伝送信号を受信し、受信した
伝送信号から、複数のカスタマイズされたユーザビットストリームのうち適切なものを再
生できる。
【００４７】
いくつかの実施形態では、ＣＤＮオペレータは、ある地理的領域又はサービス範囲をカ
バーするよう分散された、システム１００の複数のコピーを利用してよい。
【００４８】
メモリ１１０は、ビデオコンテンツ項目の集合を記憶してよい。各ビデオコンテンツ項
目は、対応する符号化ビデオストリーム及び対応する副次的情報ストリームを含んでよい
。いくつかの実施形態では、メモリ１１０は、ハードディスクドライブ若しくはフラッシ
ュメモリ等の永続若しくは不揮発性メモリストレージ、又はＳＲＡＭ、ＤＲＡＭ等の一時
的メモリストレージを含んでよい。いくつかの実施形態では、メモリ１１０はビデオコン
テンツのためのキャッシュとして機能できる。
【００４９】
この節では、複数のユーザデバイスが同一のビデオコンテンツ項目を要求した場合のシ
ステム１００の応答に着目する。しかしながら、より広い文脈では、ユーザデバイスは複
数のコンテンツ項目から任意の１つ又はランダムな１つを要求し得る。複数のコンテンツ
項目のうち人気のあるものは、人気がより低いコンテンツ項目よりも単位時間あたりに多
く要求され得る。従って、複数のユーザデバイスが同一のコンテンツ項目を要求すること
は考えられる。
【００５０】
コントローラ１３０は、複数のユーザデバイスＵＤ1、ＵＤ2、…ＵＤNdのそれぞれから
の、所定のビデオコンテンツ項目に対する複数のコンテンツ要求それぞれに応答して、１
つ又は複数のビデオトランスコーダデバイスのうち利用可能な１つを各ユーザデバイスへ
の配信を行うために割り当てるよう構成してよい。ユーザデバイスはそれぞれ異なる構成
のビデオ処理能力（ＶＰＣ）を有してよい。割り当てられた各ビデオトランスコーダデバ
イスは：（１）例えばメモリから、上記所定のコンテンツ項目の符号化ビデオストリーム
及び副次的情報ストリームを受信し；（２）副次的情報ストリームを用い、各ユーザデバ
イスのＶＰＣ構成に応じて符号化ビデオストリームを信号変換し、各標的符号化ビデオス
トリームを得て；（３）各標的符号化ビデオストリームを、（無線伝送媒体、又は無線ネ
ットワーク、又は有線ネットワーク、又は無線及び有線ネットワークの併用、又はインタ
ーネット等の）通信媒体１４０を介して各ユーザデバイスに伝送するよう構成してよい。
システム１００は、構成が異なる複数のユーザデバイスに対して、ビデオコンテンツ項目
の単一のキャッシュされたコピーから配信を行うことができることに特に留意されたい。
１つ又は複数のビデオトランスコーダデバイスは、各ユーザデバイスに対する標的符号化
ビデオストリームのカスタマイズを行う。従って、ユーザデバイスをサポートするために
、標的ピクチャ解像度、標的ビットレート及び標的ビデオフォーマットを様々に組み合わ
せた、ビデオコンテンツ項目の複数のコピーをキャッシュする必要はない。これにより、
極めて多数のビデオコンテンツ項目をキャッシュ１１０に記憶できるようになり、またキ
ャッシュミスが発生する蓋然性を有意に低下させることができる。（キャッシュミスは、
ユーザデバイスがメモリ１１０内に存在しないビデオコンテンツ項目を要求した場合に発
生すると言われている。）
【００５１】
所定の要求されたコンテンツ項目に関してキャッシュミスが発生した場合、システム１
００は、中央コンテンツレポジトリ（又はメディアソース）から上記コンテンツ項目をダ
ウンロードしなければならない場合がある。中央コンテンツレポジトリとシステム１００
との間のチャネルは、ＣＤＮオペレータ以外のエンティティが所有している場合がある。
（例えば上記チャネルはインターネットであり得る。）従って、上記チャネルを介したコ
ンテンツのダウンロードに関連するコストが発生し得る。キャッシュミスの蓋然性の低減
は、中央レポジトリからのダウンロードトラフィックの減少を暗に意味しており、従って
コストの低下を暗に意味している。
【００５２】
いくつかの実施形態では、所定のコンテンツ項目の符号化ビデオストリームは、所定の
ソースビデオストリームを符号化したバージョンであると解釈してよい。副次的情報スト
リームは、上記所定のソースビデオストリームの特性を決定するメタデータを含んでよい
。例えばこのメタデータは、符号化ビデオストリームのブロック毎に１つ又は複数の候補
運動ベクトルを含んでよい。別の例として、メタデータは、符号化ビデオストリームのブ
ロック毎に速度モデル化データを含んでよい。更に別の実施例としては、メタデータは、
所定のコンテンツ項目の符号化ビデオストリームのブロック毎に歪みモデル化データを含
んでよい。
【００５３】
いくつかの実施形態では、通信媒体１４０は、無線伝送媒体又は無線ネットワークの無
線インタフェースであってよい。一実施形態では、１つ又は複数のビデオトランスコーダ
デバイスのうち少なくとも１つは、無線通信ネットワークの基地局（又はアクセスポイン
ト）に連結されるか、又はその一部として組み込まれる。ユーザデバイスのうちの１つ若
しくは複数（又は全て）は、基地局との無線通信用に構成できる。ユーザデバイスは、基
地局からの無線伝送を介して、それぞれの標的符号化ビデオストリームを受信できる。ユ
ーザデバイスのうちのいくつか又は全ては移動体デバイスであってよい。
【００５４】
コントローラ１３０は、１つ又は複数のビデオトランスコーダデバイスのうち所定の１
つを、複数のユーザデバイスのうち異なるいくつかに対して異なる時点に割り当てるよう
構成してよい。例えば、ビデオトランスコーダデバイスが第１のユーザデバイスへの配信
を終了したとき、このビデオトランスコーダデバイスが、第２のユーザデバイスへの配信
を行うために利用可能となるようにしてよい。従って、ビデオトランスコーダデバイスを
１つしか含まないシステム１００の実施形態においてさえ、構成が異なる複数のユーザデ
バイスに対して、ビデオコンテンツ項目の単一のキャッシュされたコピーから配信を行う
ことの便益が実現される。
【００５５】
いくつかの実施形態では、システム１００はソースエンコーダも含んでよい。ソースエ
ンコーダは、ソースビデオストリームを符号化して各コンテンツ項目を生成するよう構成
してよい。１つ又は複数のビデオトランスコーダデバイスはそれぞれ、ソースエンコーダ
よりも電力効率が高いか、及び／又はソースエンコーダよりも空間効率が高いものであっ
てよい。いくつかの実施形態では、コンテンツ項目は、ユーザデバイスへの配信前にはメ
モリ１１０に必ずしも記憶されていない。例えばコンテンツ項目は、ライブイベントとの
関連で配信されることがある。従ってビデオコンテンツ項目を、ソースエンコーダから、
複数のビデオトランスコーダのうち割り当てられた１つへと送り、そして即座に信号変換
してユーザデバイスに伝送してよい。
【００５６】
いくつかの実施形態では、各ビデオコンテンツ項目の副次的情報ストリームは、１つ又
は複数のコード化モードそれぞれに対応する１つ又は複数の速度情報ストリームを含んで
よい。（上記１つ又は複数のコード化モードは、１つ若しくは複数のインタモード及び／
又は１つ若しくは複数のイントラモードを含んでよい。）上記１つ又は複数の速度情報ス
トリームの各速度情報ストリームＲＩＳkは、各コード化モードに基づいてブロック予測
を推測する、対応する符号化ビデオストリームのブロック毎の対応する速度推定関数Ｒk
（ｑ）の特徴を決定する。変数ｑは量子化ステップ幅である。
【００５７】
いくつかの実施形態では、各ビデオコンテンツ項目の副次的情報ストリームは、１つ又
は複数のコード化モードそれぞれに対応する１つ又は複数の歪み情報ストリームを含んで
よい。上記１つ又は複数の歪み情報ストリームの各歪み情報ストリームＤＩＳkは、各コ
ード化モードに基づいてブロック予測を推測する、ビデオコンテンツ項目の符号化ビデオ
ストリームのブロック毎の対応する歪み関数Ｄk（ｑ）の特徴を決定する。
【００５８】
いくつかの実施形態では、複数のビデオトランスコーダデバイスのうちの所定の１つ（
又はそれぞれ）は：符号化ビデオストリームを復号化することで、復号化ビデオストリー
ムを得て；この復号化ビデオストリームを各ユーザデバイスの標的ピクチャ解像度にスケ
ーリングして、スケーリング済みビデオストリームを得て；副次的情報ストリームを用い
、各ユーザデバイスのＶＰＣ構成に応じてスケーリング済みビデオストリームを符号化し
て、各標的符号化ビデオストリームを得ることにより、符号化ビデオストリームを信号変
換する動作を実施するよう構成してよい。
【００５９】
いくつかの実施形態では、上記所定のビデオトランスコーダデバイスは：スケーラ値λ
でパラメータ化したラグランジュ型速度−歪み関数を最小化することによって、スケーリ
ング済みビデオストリームの上記符号化を実施するよう；並びに副次的情報ストリームを
用いて、スケーラ値λ及び各標的符号化ビデオストリームの出力ビットレートを動的に調
整することで、各ユーザデバイスにおいて各標的符号化ビデオストリームを受信するコー
ド化ピクチャバッファのオーバフロー及びアンダフローを防止するよう、構成してよい。
【００６０】
いくつかの実施形態では、上記所定のビデオトランスコーダデバイスは：コード化ピク
チャバッファの推定占有量と、各標的符号化ビデオストリームが標的ビットレートに維持
されていると仮定した場合のコード化ピクチャバッファの理論上の占有量との間の誤差を
計算するよう；及びスケーラ値λの上記動的調整を実施して、上記誤差の大きさを低下さ
せるよう、構成してよい。
【００６１】
いくつかの実施形態では、コントローラ１３０は：上記所定のビデオトランスコーダデ
バイスから配信を受けているユーザデバイスから、メッセージ又は報告（例えば分析）を
受信する（ここで各報告は、ユーザデバイスからの分析情報を含む）よう；並びに各報告
に応答して、上記所定のビデオトランスコーダデバイスがスケーリング済みビデオストリ
ームを符号化するために使用する標的ビットレート及び／又は標的ピクチャ解像度を更新
するよう、構成してよい。
【００６２】
いくつかの実施形態では、上記分析情報は、所定のビデオトランスコーダデバイスとユ
ーザデバイスとの間のリンクの品質に関する情報を含んでよい。例えばリンク品質情報は
、以下のうちの１つ又は複数を含んでよい：ビット及び／又はパケット誤差率、スループ
ット、受信信号強度並びに通信レイテンシ。コントローラ１３０は、リンク品質に関する
情報がリンク品質の低下又は上昇を示した場合それぞれにおいて、所定のビデオトランス
コーダデバイスが使用する標的ビットレート及び／又は標的ピクチャ解像度を低下又は上
昇させるよう構成してよい。
【００６３】
いくつかの実施形態では、分析情報は、ビデオトランスコーダデバイスが伝送する標的
符号化ビデオストリームから（ユーザデバイスが）再生したビデオの品質に関する情報を
含む。（ビデオ品質情報の例は、フレーム落ち表示を含み得る。）コントローラは、ビデ
オ品質に関する情報がビデオ品質の低下又は上昇を示した場合それぞれにおいて、所定の
ビデオトランスコーダデバイスが使用する標的ビットレート及び／又は標的ピクチャ解像
度を低下又は上昇させるよう構成してよい。一実施形態では、ビデオ品質に関する報告は
リンク品質に関する報告と並行して行うことができる。
【００６４】
いくつかの実施形態では、コントローラは：上記所定のビデオトランスコーダデバイス
から配信を受けているユーザデバイスから報告を受信する（ここで各報告は、ユーザデバ
イスのＶＰＣ構成に対する対応する更新を含む）よう；並びに各報告に応答して、第１の
ビデオトランスコーダデバイスがスケーリング済みビデオストリームを符号化するために
使用する標的ビットレート及び／又は標的ピクチャ解像度を更新するよう、構成してよい
。（例えばＶＰＣ構成の更新は、ユーザデバイスが許容可能な現在の標的ピクチャ解像度
を含んでよい。）
【００６５】
いくつかの実施形態では、各ユーザデバイスのＶＰＣ構成は：ユーザデバイスが要求す
るビデオコード化フォーマット；及びユーザデバイスが要求する標的ピクチャ解像度のう
ちの１つ又は複数の識別を含んでよい。
【００６６】
いくつかの実施形態では、各ユーザデバイスのＶＰＣ構成はＭ次元構成空間に亘るもの
であってよく、ここでＭは少なくとも２である。Ｍ次元構成空間は、ビデオフォーマット
の選択に対応する少なくとも第１の次元、及びユーザデバイスが受信することになる標的
符号化ビデオストリームに関するピクチャ解像度の選択に対応する第２の次元を有してよ
い。
【００６７】
いくつかの実施形態では、コントローラ１３０はまた：複数のユーザデバイスのうち第
１のものへの配信を行うよう割り当てられた１つ又は複数のビデオトランスコーダデバイ
スのうちの所定の１つによって生成された標的符号化ビデオストリームを（例えばメモリ
１１０に）記憶し；第２のユーザデバイスが第１のユーザデバイスと同一又は同様のＶＰ
Ｃ構成を有することを検出すると、これに反応して、第２のユーザデバイスへの上記記憶
した標的符号化ビデオストリームの伝送を指示するよう、構成してよい。第１のユーザデ
バイスが所定のビデオコンテンツ項目を要求する場合、第２の同一構成の（又は同様の構
成の）ユーザデバイスが上記所定のビデオコンテンツ項目を近い将来に要求する蓋然性は
高くなり得る。従って、ビデオトランスコーダデバイスが生成する標的符号化ビデオスト
リームのキャッシュ化により、システム効率を向上させることができる。
【００６８】
ある一連の実施形態では、ビデオコンテンツをユーザデバイスに配信するための方法２
００は、図２に示した操作を伴うものであってよい。（方法２００は、図１、３〜１７に
関連して既に述べた又は以下に述べる特徴、要素及び実施形態のいずれのサブセットも含
んでよい。）
【００６９】
２１０において、ビデオコンテンツ項目の集合をメモリに記憶してよい。各ビデオコン
テンツ項目は、対応する符号化ビデオストリーム及び対応する副次的情報ストリームを含
んでよい。
【００７０】
２２０において、複数の遠隔ユーザデバイスそれぞれからの、複数のビデオコンテンツ
項目のうちの所定の１つに対する複数のコンテンツ要求それぞれに応答して、各ユーザデ
バイスへの配信を行うために、１つ又は複数のビデオトランスコーダデバイスのうち使用
可能な１つを割り当てる、ユーザデバイスはそれぞれ、異なる構成のビデオ処理能力（Ｖ
ＰＣ）を有してよい。
【００７１】
２３０において、割り当てられた各ビデオトランスコーダデバイスを利用して：（ａ）
例えばメモリから、上記所定のビデオコンテンツ項目の符号化ビデオストリーム及び副次
的情報ストリームを受信し；（ｂ）副次的情報ストリームを用い、各ユーザデバイスのＶ
ＰＣ構成に応じて符号化ビデオストリームを信号変換し、各標的符号化ビデオストリーム
を得て；（ｃ）各標的符号化ビデオストリームを、（無線伝送媒体、無線ネットワーク若
しくは有線ネットワーク、又は上述の様々な通信媒体等の）通信媒体を介して各ユーザデ
バイスに伝送してよい。
【００７２】
いくつかの実施形態では、上記所定のビデオコンテンツ項目の符号化ビデオストリーム
は、所定のソースビデオストリームを符号化したバージョンであると解釈してよい。副次
的情報ストリームは、上記所定のソースビデオストリームの特性を決定するメタデータを
含んでよい。一実施形態では、このメタデータは、符号化ビデオストリームのブロック毎
に１つ又は複数の候補運動ベクトルを含んでよい。別の実施形態では、メタデータは、上
記所定のビデオコンテンツ項目の符号化ビデオストリームのブロック毎に速度モデル化デ
ータを含んでよい。更に別の実施形態では、メタデータは、所定のビデオコンテンツ項目
の符号化ビデオストリームのブロック毎に歪みモデル化データを含んでよい。当然のこと
ながら、上述のタイプのメタデータをいずれの組み合わせで併用する実施形態も考えられ
る。
【００７３】
いくつかの実施形態では、各ビデオコンテンツ項目の副次的情報ストリームは、１つ又
は複数のコード化モードそれぞれに対応する１つ又は複数の速度情報ストリームを含んで
よい。上記１つ又は複数の速度情報ストリームの各速度情報ストリームＲＩＳkは、各コ
ード化モードに基づいてブロック予測を推測する、上記対応する符号化ビデオストリーム
のブロック毎の対応する速度推定関数Ｒk（ｑ）の特徴を決定してよく、ここでｑは量子
化ステップ幅である。
【００７４】
いくつかの実施形態では、各ビデオコンテンツ項目の副次的情報ストリームは、１つ又
は複数のコード化モードそれぞれに対応する１つ又は複数の歪み情報ストリームを含んで
よい。上記１つ又は複数の歪み情報ストリームの各歪み情報ストリームＤＩＳkは、各コ
ード化モードに基づいてブロック予測を推測する、上記所定のビデオコンテンツ項目の符
号化ビデオストリームのブロック毎の対応する歪み関数Ｄk（ｑ）の特徴を決定してよく
、ここでｑは量子化ステップ幅である。
【００７５】
いくつかの実施形態では、方法２００は、ソースビデオストリームを符号化して、各コ
ンテンツ項目を生成するよう構成してよい。ソースビデオストリームを符号化する動作は
、ソースエンコーダによって（例えば後に説明するメザニンエンコーダ５１０、ビデオエ
ンコーダ７００又はビデオエンコーダ９００によって）実施できる。各ビデオトランスコ
ーダデバイスは、ソースエンコーダよりも電力効率が高いか、又はソースエンコーダより
も空間効率が高いものであってよい。
【００７６】
いくつかの実施形態では、方法２００は：（ａ）１つ又は複数のビデオトランスコーダ
デバイスのうちの所定の１つから配信を受けているユーザデバイスから、報告を受信する
こと（ここで各報告は、ユーザデバイスからの分析情報を含む）；並びに（ｂ）各報告に
応答して、上記所定のビデオトランスコーダデバイスが符号化ビデオストリームの上記信
号変換を行うために使用する標的ビットレート及び／又は標的ピクチャ解像度を更新する
ことも含んでよい。
【００７７】
いくつかの実施形態では、上記分析情報は、所定のビデオトランスコーダデバイスとユ
ーザデバイスとの間のリンクの品質に関する情報を含む。
【００７８】
いくつかの実施形態では、方法２００は、リンク品質に関する情報がリンク品質の低下
又は上昇を示した場合それぞれにおいて、所定のビデオトランスコーダデバイスが使用す
る標的ビットレート及び／又は標的ピクチャ解像度を低下又は上昇させることも含んでよ
い。
【００７９】
いくつかの実施形態では、分析情報は、ビデオトランスコーダデバイスが伝送する各標
的符号化ビデオストリームから（ユーザデバイスが）再生したビデオの品質に関する情報
を含む。
【００８０】
いくつかの実施形態では、方法２００は、ビデオ品質に関する情報がビデオ品質の低下
又は上昇を示した場合それぞれにおいて、所定のビデオトランスコーダデバイスが使用す
る標的ビットレート及び／又は標的ピクチャ解像度を低下又は上昇させることも含んでよ
い。
【００８１】
いくつかの実施形態では、方法２００は：上記所定のビデオトランスコーダデバイスか
ら配信を受けているユーザデバイスから報告を受信すること（ここで各報告は、ユーザデ
バイスのＶＰＣ構成に対する対応する更新（例えばユーザデバイスが許容可能な現在の標
的ピクチャ解像度を示す更新）を含む）；並びに各報告に応答して、上記所定のビデオト
ランスコーダデバイスがスケーリング済みビデオストリームを符号化するために使用する
標的ピクチャ解像度を更新することも含んでよい。
【００８２】
いくつかの実施形態では、各ユーザデバイスのＶＰＣ構成は：ユーザデバイスが要求す
るビデオコード化フォーマットの識別を含んでよい。このような実施形態では、符号化ビ
デオストリームを信号変換する動作は、各標的符号化ビデオストリームが要求されたビデ
オコード化フォーマットに適合するように実行できる。
【００８３】
いくつかの実施形態では、各ユーザデバイスのＶＰＣ構成は：ユーザデバイスが要求す
る標的ピクチャ解像度の識別を含んでよい。このような実施形態では、符号化ビデオスト
リームを信号変換する動作は、各標的符号化ビデオストリームが、要求された標的ピクチ
ャ解像度を有するように実行できる。
【００８４】
いくつかの実施形態では、各ユーザデバイスのＶＰＣ構成は：ユーザデバイスが要求す
る標的ビットレートの識別を含んでよい。このような実施形態では、符号化ビデオストリ
ームを信号変換する動作は、各標的符号化ビデオストリームが、標的ビットレートに略等
しい平均出力ビットレートを有するように実行できる。
【００８５】
いくつかの実施形態では、方法２００は：（ａ）複数のユーザデバイスのうち第１のも
のへの配信を行うよう割り当てられた１つ又は複数のビデオトランスコーダデバイスのう
ちの所定の１つによって生成された標的符号化ビデオストリームを（例えばメモリに）記
憶すること；及び（ｂ）第２のユーザデバイスが第１のユーザデバイスと同一又は同様の
ＶＰＣ構成を有することを検出すると、これに反応して、第２のユーザデバイスへの上記
記憶した標的符号化ビデオストリームの伝送を指示することも含んでよい。
【００８６】
分割エンコーダアーキテクチャを用いたコンテンツ配信ネットワーク
ある一連の実施形態では、コンテンツ配信ネットワーク３００は図３に示すように構成
できる。コンテンツ配信ネットワーク３００は、メモリ３１０、複数のビデオトランスコ
ーダデバイスＶＴＤ1、ＶＴＤ2、…ＶＴＤNd（まとめて符号３２０で表す）、及びコント
ローラ３３０を含む。（コンテンツ配信ネットワークは、図１〜２、図４〜１７に関連し
て既に述べた又は以下に述べる特徴、要素及び実施形態のいずれのサブセットも含んでよ
い。）
【００８７】
メモリ３１０は、複数のビデオコンテンツ項目を記憶してよい。各ビデオコンテンツ項
目は、対応する符号化ビデオストリーム及び対応する副次的情報ストリームを含んでよい
。メモリ３１０は、通信媒体９１５（例えばＣＤＮオペレータが制御するプライベートネ
ットワーク、インターネット又は無線ネットワーク）を介してビデオトランスコーダデバ
イスに連結してよい。
【００８８】
複数の遠隔ユーザデバイスＵＤ1、ＵＤ2、…ＵＤNdのそれぞれに関して、コントローラ
３３０は、遠隔ユーザデバイスから、複数のコンテンツ項目のうち選択されたものそれぞ
れに対する要求を受信して、複数のビデオトランスコーダデバイスのうち使用できる１つ
への、各上記選択されたコンテンツ項目の転送を指示するよう構成してよい。異なるユー
ザデバイスは、複数のコンテンツ項目のうち異なるもの又はランダムなものを選択してよ
い。
【００８９】
各ビデオトランスコーダデバイスＶＴＤk（ｋ＝１、２、…、Ｎd）は：複数のコンテン
ツ項目それぞれの符号化ビデオストリーム及び副次的情報ストリームを受信し；副次的情
報ストリームを用いて符号化ビデオストリームを各標的ピクチャ解像度において信号変換
し、各標的符号化ビデオストリームを得て；各標的符号化ビデオストリームを、通信媒体
３４０（例えば無線伝送媒体、又は無線ネットワーク、又は有線ネットワーク）を介して
各遠隔ユーザデバイスに伝送するよう構成してよい。
【００９０】
いくつかの実施形態では、各ビデオコンテンツ項目の副次的情報ストリームは、Ｎ個の
コード化モードに対応するＮ個の速度情報ストリームを含んでよく、ここでＮは１以上で
ある。Ｎ個の速度情報ストリームの各速度情報ストリームＲＩＳkは、各コード化モード
に基づいてブロック予測を推測する、ビデオコンテンツ項目の符号化ビデオストリームの
ブロック毎の対応する速度推定関数Ｒk（ｑ）の特徴を決定する。変数ｑは量子化ステッ
プ幅である。
【００９１】
いくつかの実施形態では、コンテンツ配信ネットワーク３００は、ソースビデオストリ
ームを符号化して各コンテンツ項目を生成するよう構成されたソースエンコーダ３２５も
含んでよい。以下に説明するように、ソースエンコーダ３２５はメザニンエンコーダ５１
０又はビデオエンコーダ５００又はビデオエンコーダ９００に関連して構成してよい。各
ビデオトランスコーダデバイスは、ソースエンコーダよりも電力消費が少なく、ソースエ
ンコーダよりも占有空間が小さくなるよう構成してよい。これらの制約は、副次的情報ス
トリームをビデオトランスコーダデバイスへの入力として符号化ビデオストリームと共に
供給することで、副次的情報を計算処理するための回路構成及び／又はプログラム指示を
ビデオトランスコーダデバイスから省略できるようにすることによって、ある程度達成で
きる。
【００９２】
いくつかの実施形態では、各ビデオトランスコーダデバイスは：符号化ビデオストリー
ムを復号化することで、各復号化ビデオストリームを得て；副次的情報ストリームを用い
て上記各復号化ビデオストリームを各標的ピクチャ解像度において符号化して、各標的符
号化ビデオストリームを得ることにより、信号変換動作を実施するよう構成してよい。
【００９３】
いくつかの実施形態では、各ビデオトランスコーダデバイスは：スケーラ値λでパラメ
ータ化した速度−歪み関数を用いたラグランジュ型最適化に基づいて各復号化ビデオスト
リームを符号化し；各選択されたコンテンツ項目の副次的情報ストリームに基づいて、ス
ケーラ値λを動的に調整することで、各遠隔ユーザデバイスにおいてデコーダのコード化
ピクチャバッファのオーバフロー及びアンダフローを防止するよう、構成してよい。
【００９４】
いくつかの実施形態では、各ビデオコンテンツ項目の符号化ビデオストリームは、各ソ
ースビデオストリームを符号化したバージョンであると解釈してよい。各ビデオコンテン
ツ項目の副次的情報ストリームは、各ソースビデオストリームの特性を決定するメタデー
タを含んでよい。
【００９５】
いくつかの実施形態では、コントローラは、例えば上述の要求の一部として又は別個の
伝送としてユーザデバイスから提供される識別情報に基づくユーザ認証を提供する、（認
証サーバ等の）処理ノードと通信するよう構成してよい。コントローラは、所定のユーザ
（又はユーザデバイス）が正当なユーザ（又はユーザデバイス）として認証されたことを
示す妥当性信号を処理ノードから受信してよい。更にコントローラは、例えば処理ノード
から、要求元のユーザデバイスへの要求されたビデオコンテンツの伝送の開始をコントロ
ーラが許可されていることを示す送信許可信号を受信してよい。
【００９６】
いくつかの実施形態では、コントローラは、各ビデオトランスコーダデバイスに、各標
的符号化ビデオストリームに挿入するための対応する補助情報を提供するよう構成してよ
い。この対応する補助情報は、以下のうちの１つ又は複数を含んでよい：事業体のブラン
ド設定情報；広告情報；デジタル著作権管理（ｄｉｇｉｔａｌ  ｒｉｇｈｔｓ  ｍａｎａ
ｇｅｍｅｎｔ：ＤＲＭ）情報；ウォーターマーク機能を提供するデジタル情報；及びコン
テンツプロバイダ、コンテンツ配信サービスプロバイダ、顧客又はユーザが要求する１つ
又は複数のカスタマイズ用特徴。
【００９７】
いくつかの実施形態では、デジタルウォーターマーク情報は、ビデオコンテンツを要求
したユーザ又はユーザデバイスに対して個別化されていてよい。従ってビデオコンテンツ
が不正使用された場合、ユーザの個人情報をデジタルウォーターマーク情報から識別でき
る。
【００９８】
いくつかの実施形態では、各ビデオトランスコーダデバイスは、対応する補助情報を受
信して、この対応する補助情報を各標的符号化ビデオストリームに挿入するよう構成して
よい。補助情報は以下のうちの１つ又は複数を含んでよい：事業体のブランド設定情報；
広告情報；デジタル著作権管理（ＤＲＭ）情報；及びコンテンツプロバイダ、コンテンツ
配信サービスプロバイダ、顧客又はユーザが要求する１つ又は複数のカスタマイズ用特徴
。
【００９９】
以下の段落番号付きの段落において、追加の実施形態を開示する。
【０１００】
１．以下を備えるシステム（例えばコンテンツ配信ネットワーク）：複数のビデオコン
テンツ項目を記憶したメモリ（ここで各ビデオコンテンツ項目は、対応する符号化ビデオ
ストリーム及び対応する副次的情報ストリームを含む）；複数のビデオトランスコーダデ
バイス；並びにコントローラ（ここでコントローラは、複数の遠隔ユーザデバイスそれぞ
れに関して、遠隔ユーザデバイスからの各コンテンツ項目に対する要求を受信し、複数の
ビデオトランスコーダデバイスのうち使用可能な１つに各コンテンツ項目を転送するよう
指示する）。各ビデオトランスコーダデバイスは：各コンテンツ項目の符号化ビデオスト
リーム及び副次的情報ストリームを受信し；副次的情報ストリームを用いて符号化ビデオ
ストリームを各標的ピクチャ解像度において信号変換し、各標的符号化ビデオストリーム
を得て；各標的符号化ビデオストリームを、通信媒体を介して各ユーザデバイスに伝送す
るよう構成される。
【０１０１】
２．コントローラが：複数のビデオトランスコーダデバイスのうち第１のものに割り当
てられた、複数のユーザデバイスのうち第１のものから、リンク報告を受信（ここで各リ
ンク報告は、第１のビデオトランスコーダデバイスと第１のユーザデバイスとの間のチャ
ネルの各状態を表す）し；各リンク報告に応答して、第１のビデオトランスコーダデバイ
スが使用する標的ビットレートを更新し、符号化ビデオストリームを信号変換するよう構
成された、段落１のシステム。
【０１０２】
３．各ビデオコンテンツ項目の符号化ビデオストリームが、各ソースビデオストリーム
の符号化バージョンであり、各ビデオコンテンツ項目の副次的情報ストリームが、各ソー
スビデオストリームの特性を決定するメタデータを含む、段落１のシステム。
【０１０３】
４．メタデータが、対応する符号化ビデオストリームのブロック毎に１つ又は複数の候
補運動ベクトルを含む、段落３のシステム。
【０１０４】
５．メタデータが、対応する符号化ビデオストリームのブロック毎に速度モデル化デー
タを含む、段落３のシステム。
【０１０５】
６．メタデータが、対応する符号化ビデオストリームのブロック毎に歪みモデル化デー
タを含む、段落３のシステム。
【０１０６】
７．各ビデオコンテンツ項目の副次的情報ストリームが、Ｎ個のコード化モードそれぞ
れに対応するＮ個の速度情報ストリームを含み、ここでＮは１以上であり、Ｎ個の速度情
報ストリームの各速度情報ストリームＲＩＳkは、各コード化モードに基づいてブロック
予測を推測する、ビデオコンテンツ項目の符号化ビデオストリームのブロック毎の対応す
る速度推定関数Ｒk（ｑ）の特徴を決定し、ここでｑは量子化ステップ幅である、段落１
のシステム。
【０１０７】
８．各ビデオコンテンツ項目の副次的情報ストリームが、１つ又は複数のコード化モー
ドそれぞれに対応する１つ又は複数の歪み情報ストリームを含み、上記１つ又は複数の歪
み情報ストリームの各歪み情報ストリームＤＩＳkは、各コード化モードに基づいてブロ
ック予測を推測する、ビデオコンテンツ項目の符号化ビデオストリームのブロック毎の対
応する歪み関数Ｄk（ｑ）の特徴を決定し、ここでｑは量子化ステップ幅である、段落１
のシステム。
【０１０８】
９．ソースビデオストリームを符号化して各コンテンツ項目を生成するよう構成された
ソースエンコーダを更に備え、ここで各ビデオトランスコーダデバイスは、ソースエンコ
ーダよりも電力消費が少なく、ソースエンコーダよりも占有空間が小さい、段落１のシス
テム。
【０１０９】
１０．各ビデオトランスコーダデバイスが：符号化ビデオストリームを復号化すること
で、各復号化ビデオストリームを得て；副次的情報ストリームを用いて上記各復号化ビデ
オストリームを各標的ピクチャ解像度において符号化して、各標的符号化ビデオストリー
ムを得ることにより、信号変換動作を実施するよう構成された、段落１のシステム。
【０１１０】
１１．コントローラが、各ビデオトランスコーダデバイスに、各標的符号化ビデオスト
リームに挿入するための対応する補助情報を提供するよう構成され、ここで上記対応する
補助情報は：事業体のブランド設定情報；広告情報；デジタル著作権管理（ＤＲＭ）情報
；ウォーターマーク機能を提供するデジタル情報；及びコンテンツプロバイダ、コンテン
ツ配信サービスプロバイダ、顧客又はユーザが要求する１つ又は複数のカスタマイズ用特
徴を含む、段落１のシステム。
【０１１１】
１２．各ビデオトランスコーダデバイスが、対応する補助情報を受信して、この対応す
る補助情報を各標的符号化ビデオストリームに挿入するよう構成され、ここで上記対応す
る補助情報は：事業体のブランド設定情報；広告情報；デジタル著作権管理（ＤＲＭ）情
報；ウォーターマーク機能を提供するデジタル情報；及びコンテンツプロバイダ、コンテ
ンツ配信サービスプロバイダ、顧客又はユーザが要求する１つ又は複数のカスタマイズ用
特徴を含む、段落１のシステム。
【０１１２】
ネットワークエッジトランスコーダ
図４は、ネットワークエッジトランスコーダを用いて顧客にコンテンツを配信するため
の方法の一実施形態を示す。４１０において、コンテンツプロバイダは、コンテンツタイ
トル毎に単一のメザニン符号化を実施してよい。メザニン符号化により、コンテンツタイ
トル毎に符号化メザニンストリームファイル及び副次的情報ストリームが生成される。
【０１１３】
各コンテンツタイトルに関する単一の符号化メザニンストリームファイル及び副次的情
報ストリームを、コンテンツ配信ネットワーク（ＣＤＮ）の配信元サーバにアップロード
してよい。ネットワークエッジトランスコーダ４１５は、副次的情報ストリームを用いて
、各顧客の要求に応じて、メザニンストリームを任意の解像度及びビットレートに変換し
てよい。ｈｔｔｍサーバ（図示せず）は、各コンテンツタイトルの１つのコピーをキャッ
シュしてよい。ｈｔｔｐサーバは例えばインターネットを介して、ｈｔｔｐセグメント要
求（即ち特定のコンテンツ項目のあるセグメントに対する要求）を顧客から受信してよい
。要求されたセグメントがサーバのキャッシュに存在しない場合、ｈｔｔｐサーバは配信
元サーバ（図示せず）に上記セグメントを要求してよい。配信元サーバは要求されたセグ
メントをｈｔｔｐサーバに転送する。そしてｈｔｔｐサーバはこの要求されたセグメント
（即ち複数の符号化メザニンストリームのうちの１つの一部）をエッジトランスコーダに
供給してよい。エッジトランスコーダは、要求されたセグメントを復号化して復号化スト
リームを得、この復号化ストリームをスケーリングしてスケーリング済みストリームを得
、そしてこのスケーリング済みストリームを符号化して出力ストリームを得てよい。出力
ストリームは例えばインターネット又は無線ネットワークを介して顧客に転送される。ネ
ットワークエッジトランスコーダは要求されたセグメントを、各顧客の要求に応じて任意
の解像度及びビットレートに変換する。図４に示した具体的な数値（符号化メザニンスト
リームについて１０８０ｐ２４、２０Ｍｂ／ｓ；顧客へのストリームについて７２０ｐ２
４、３Ｍｂ／ｓ等）は、単なる例示を目的として提供したものであり、本発明の原理の範
囲を制限する意味はない。図４に示した様々なストリーム及び図面中のいずれの場所に示
した様々なストリームについて、多様なビットレート及びピクチャ解像度が考えられる。
【０１１４】
メザニンエンコーダ４１０は、ソースビデオストリームを符号化してメザニンビットス
トリームを生成してよい。メザニンエンコーダ４１０はまた、メザニン符号化プロセス中
に情報（例えば速度メトリクス及び／又は歪みメトリクス）も生成してよい。この情報は
、別個の副次的情報ストリームにおいて、又はメザニンビットストリーム中のユーザデー
タとして、搬送してよい。例えば速度及び歪みメトリクスは：エンコーダ４３０における
速度調整、適応量子化、ＨＲＤコンプライアンスのために、即ちエンコーダ４３０から顧
客に伝送される出力ビットストリームの速度を調整するために使用してよい。つまり、メ
ザニンエンコーダとエンコーダ４３０とを併用することで、ツーパス方式エンコーダを効
果的に形成する。このアーキテクチャにより、速度及び歪みメトリクス（例えば高品質メ
トリクス）を計算するために、メザニンエンコーダの限りない計算バジェットが活用され
る。またこのアーキテクチャにより、効果的な速度制御を実施するためにネットワークエ
ッジエンコーダ４３０が必要とする計算量が最小化される。
【０１１５】
ビデオコンテンツを配信するためのシステム５００
ある一連の実施形態では、ビデオコンテンツを配信するためのシステム５００は、図５
に示すように、メザニンエンコーダ５１０、ネットワークエッジトランスコーダ５２０、
（無線ネットワーク、又は有線ネットワーク、又は無線及び有線ネットワークの併用等の
）通信媒体５２５、ユーザデバイス５３０を含んでよい。システム５００はコンテンツ配
信ネットワークの一部として、又は広範なその他の用途のいずれにおいて利用できる。
【０１１６】
メザニンエンコーダ５１０は、入力ビデオストリーム５０５（即ち複数のピクチャのシ
ーケンス）を受信して、メザニンビットストリームを生成する。メザニンビットストリー
ムは、符号化ビデオストリームであってよい。（メザニンビットストリームは、２つのデ
バイス５１０、５２０間の中間の位置を有するためにこのように呼ばれる。メザニンエン
コーダは、メザニンビットストリームを生成するためにこのように呼ばれる。）メザニン
ビットストリームは、例えばインターネット又は無線ネットワーク等の通信媒体を介して
、ネットワークエッジトランスコーダ５２０に伝送してよい。いくつかの実施形態では、
メザニンビットストリームを記憶用のメモリ媒体に伝送してよく、その後このメザニンビ
ットストリームを、ネットワークエッジトランスコーダによってメモリ媒体から引き出す
ことができる。
【０１１７】
メザニンエンコーダは、上述のシステム１００又は方法２００又はシステム３００のソ
ースエンコーダとして機能し得る。
【０１１８】
ネットワークエッジトランスコーダ５２０は、メザニンビットストリームを受信して、
ユーザデバイス５３０が許容可能な又はユーザデバイス５３０が要求するビデオ処理能力
（ＶＰＣ）の構成に従って、このメザニンビットストリームを信号変換してよい。ユーザ
デバイスのＶＰＣ構成は、要求されるピクチャ解像度及び／又は要求されるビデオフォー
マット及び／又は要求されるビットレートを含んでよい。こうしてネットワークエッジト
ランスコーダは、ユーザデバイスのためにカスタマイズされたユーザビットストリームを
生成する。ユーザビットストリームは通信媒体５２５を介してユーザデバイス５３０に伝
送される。
【０１１９】
ネットワークエッジトランスコーダ５２０は、システム１００又は方法２００又はシス
テム３００のビデオトランスコーダデバイスとして機能し得る。
【０１２０】
ネットワークエッジトランスコーダ５２０は、（無線ネットワーク又は有線ネットワー
ク又はインターネット等の）ネットワークの辺縁又はその付近に位置するためにこのよう
に呼ばれる。例えばネットワークエッジトランスコーダは、無線ネットワークの無線アク
セスポイント（例えば基地局）又はその付近に位置してよい。別の例として、ネットワー
クエッジトランスコーダは、コンテンツ配信ネットワークの境界ノード又はその付近に位
置してよい。（コンテンツ配信ネットワークの境界ノードは、コンテンツ配信ネットワー
クからユーザデバイスにデータをエクスポートする、コンテンツ配信ネットワークの処理
ノード又はデバイスである。）更に別の例として、ネットワークエッジトランスコーダは
、ユーザデバイスとインタフェース接続されたモデムへのケーブル又は光ファイバ接続の
ヘッドエンド又はその付近に位置してよい。
【０１２１】
いくつかの実施形態では、通信媒体５２５は無線ネットワーク又は無線ネットワークの
無線インタフェースであってよい。一実施形態では、ネットワークエッジトランスコーダ
５２０は、無線ネットワークの基地局にユーザビットストリームを供給してよく、基地局
はこのユーザビットストリームを、無線インタフェースを介してユーザデバイスに伝送し
てよい。ユーザデバイスは、伝送されたユーザビットストリームを受信するため及び信号
を基地局に伝送するためのトランシーバを含んでよい。ユーザデバイスは、ユーザが得る
視聴品質に関するメッセージを伝送してよい。例えばこのメッセージは、ユーザデバイス
が受信する基準信号の受信信号強度、電力及び品質等（これらは基地局とユーザデバイス
との間のチャネルの品質を表す）の無線分析を含んでよい。基地局は、このような測定を
容易にするために、基地局が行う伝送に基準信号を埋め込んでよい。無線分析を用いて、
所定のチャネル状態におけるユーザデバイスへの確実な伝送のための最適なビットレート
を決定してよい。上記メッセージは、ビデオ分析（例えばユーザデバイスがユーザビット
ストリームから再生するビデオの品質に関するメッセージ）も含んでよい。ビデオ分析を
使用して、チャネル状態によって課される制約内で最大の配信をユーザに対して行うため
に必要な、最適な（場合によっては最小の）ビットレートを決定してよい。（ネットワー
クエッジトランスコーダ５２０は無線分析及びビデオ分析を使用して、ユーザビットスト
リームの生成における速度制御を実施してよい。）
【０１２２】
いくつかの実施形態では、通信媒体５２５は有線ネットワークを含んでよい。
【０１２３】
いくつかの実施形態では、通信媒体５２５はインターネットを含んでよい。
【０１２４】
いくつかの実施形態では、メザニンエンコーダはまた、図６に示すように、副次的情報
ストリームをネットワークエッジトランスコーダ５２０に伝送する。副次的情報ストリー
ムは、入力ビデオストリーム５０５の特性を決定するメタデータ、例えばメザニンビット
ストリームを信号変換するタスクにおけるネットワークエッジトランスコーダの負荷を緩
和する情報を含んでよい。例えばネットワークエッジトランスコーダ５２０は副次的情報
ストリームを使用して、ユーザビットストリームの生成において速度調整を適用してよい
。別の例として、副次的情報ストリームにより、ネットワークエッジトランスコーダは、
副次的情報ストリームが提供されない場合よりも効率的に、最適なコード化決定（例えば
量子化ステップ幅、コード化モード、運動ベクトル選択）に辿り着くことができる。
【０１２５】
副次的情報ストリームは、入力ビットストリームの各ブロックについて、又は少なくと
もＰピクチャ及びＢピクチャ等の選択されたピクチャの各ブロックについて、速度推定関
数Ｒ（ｑ）及び歪み推定関数Ｄ（ｑ）の特徴を決定する情報を含んでよい。いずれの所定
の値の量子化ステップ幅ｑに関する速度推定関数Ｒ（ｑ）は、上記所定の値と同一の量子
化ステップ幅による、ブロックに関する変換された予測残差の量子化と、それに続く量子
化結果の符号化とによって得られる、ビット数の推定を表す。いずれの所定の値の量子化
ステップ幅ｑに関する歪み推定関数Ｄ（ｑ）は、上記所定の値と同一の量子化ステップ幅
による、ブロックに関する変換された予測残差の量子化と、それに続く量子化結果の符号
化とによって得られる、（ブロックの原初画像サンプルに対する）画像歪みの推定を表す
。
【０１２６】
副次的情報ストリームは、各ブロック及びＮ個のコード化モードそれぞれに関する速度
推定関数及び歪み推定関数を含んでよく、ここでＮは１以上である。Ｎの値はピクチャ毎
に変動し得る。例えば、Ｉピクチャはイントラモードのみを含み、その一方でＰ又はＢピ
クチャは１つ又は複数のインタモード及び１つ又は複数のイントラモードを含んでよい。
【０１２７】
ビデオエンコーダ７００
ある一連の実施形態では、ビデオエンコーダ７００（ここでは「メザニンエンコーダ」
とも呼ばれる）は、図７に示すように構成してよい。ビデオエンコーダは、入力ビデオス
トリーム７０５に作用して副次的情報ストリーム７３０を生成するよう構成してよい。ビ
デオエンコーダはまた、符号化ビデオストリーム７２５も生成してよい。ビデオエンコー
ダ７００は、デジタル回路構成７１０及び伝送回路構成７２０を含んでよい。（ビデオエ
ンコーダ７００は、図１〜６、図８〜１７に関連して既に述べた又は以下に述べる特徴、
要素及び実施形態のいずれのサブセットも含んでよい。）
【０１２８】
デジタル回路構成７１０は、記憶されたプログラム命令の制御下で動作する１つ若しく
は複数のプロセッサによって、ＡＳＩＣ等の１つ若しくは複数の専用デジタル回路によっ
て、ＦＰＧＡ等の１つ若しくは複数のプログラマブルハードウェア要素によって、又は以
上のいずれの組み合わせによって実現してよい。一実施形態では、デジタル回路構成は、
記憶されたプログラム命令の制御下で動作する並列アレイを含んでよい。
【０１２９】
いくつかの実施形態では、副次的情報ストリーム７３０は、入力データストリームのブ
ロック毎に速度モデル化データを含んでよい。
【０１３０】
いくつかの実施形態では、副次的情報ストリーム７３０は、入力データストリームのブ
ロック毎に歪みモデル化データを含んでよい。
【０１３１】
いくつかの実施形態では、副次的情報ストリーム７３０は、入力データストリームの各
ブロックに関する候補運動ベクトルを含んでよい。
【０１３２】
いくつかの実施形態では、副次的情報ストリーム７３０は、１つ又は複数のコード化モ
ードそれぞれに対応する１つ又は複数の速度情報ストリームを含んでよい。各速度情報ス
トリームＲＩＳkは、入力ビデオストリームのブロック毎の対応する速度推定関数Ｒk（ｑ
）の特徴を決定し、ここでｑは量子化ステップ幅である。
【０１３３】
いくつかの実施形態では、副次的情報ストリーム７３０は、１つ又は複数のコード化モ
ードそれぞれに対応する１つ又は複数の歪み情報ストリームを含んでよい。各速度情報ス
トリームＤＩＳkは、入力ビデオストリームのブロック毎の対応する速度推定関数Ｄk（ｑ
）の特徴を決定し、ここでｑは量子化ステップ幅である。
【０１３４】
１つのコード化モードに関して、入力ビデオストリームのブロックに典型的な速度特徴
ＴＲＣを図７Ｂに示す。この実施形態では、速度推定関数Ｒk（ｑ）は、複数の基準点Ｐ
１、Ｐ２、Ｐ３によってその特徴を決定できる。各基準点は、量子化ステップ幅の対応す
る値ｑvに関する速度Ｒk（ｑv）の値である。
【０１３５】
いくつかの実施形態では、速度推定関数Ｒk（ｑ）を決定するプロセスは、複数の基準
点を計算し、続いて連続関数モデルを上記基準点にフィットさせることを含む。
【０１３６】
図７Ｃは、入力ビデオストリームの各ブロックに関する及び各コード化モードに関する
速度特徴に属する複数の基準点を計算するための例示的なプロセスフローを示す。各ブロ
ックに関する通常の変換コード化及びモード決定処理の一部として、（７６０において示
すように）残差ブロック７５５に関してＤＣＴを計算し、その結果、量子化されていない
係数が得られる。７７０において単位元量子化器（即ちｑｓｔｅｐ＝１）を適用し、得ら
れた係数を処理して、ブロックが生成できる最大速度７７７を計算する。これにより、速
度（ｑｓｔｅｐ）カーブ上に点（ｒａｔｅｍａｘ，ｑｓｔｅｐｍｉｎ）を提供する。なお
、ｑｓｔｅｐｍｉｎ＝１である。
【０１３７】
単位量子化係数を検査して、最大係数を決定する。これにより、全ての量子化係数がゼ
ロになるｑｓｔｅｐの値７７２が分かる。上記最大係数の値はｑｓｔｅｐｍａｘと呼ばれ
る。これにより、速度（ｑｓｔｅｐ）カーブ上に点（ｒａｔｅｍａｘ，ｑｓｔｅｐｍａｘ
）を提供する。なお、ｒａｔｅｍｉｎ＝０である。
【０１３８】
最後に７８０において、メザニンビットストリームの実際の符号化（これは無損失では
なく、また極端に圧縮されもしない）のために選択されるようなｑｓｔｅｐの中央値を用
いて、非量子化係数を再び量子化する。（上記中央値はｑｓｔｅｍｍｉｄとする。）得ら
れた係数を用いて、速度（ｑｓｔｅｐ）カーブ上に点（ｒａｔｅｍｉｄ，ｑｓｔｅｐｍｉ
ｄ）を決定する。７８５、７８７を参照のこと。
【０１３９】
１つのコード化モードに関して、入力ビデオストリームのブロックに典型的な歪み特徴
ＴＤＣを図７Ｄに示す。この実施形態では、歪み推定関数Ｄk（ｑ）は、複数の基準点Ｑ
１、Ｑ２、Ｑ３によってその特徴を決定できる。各基準点は、量子化ステップ幅の対応す
る値ｑvに関する歪みＤk（ｑv）の値である。
【０１４０】
いくつかの実施形態では、歪み推定関数Ｄk（ｑ）を決定するプロセスは、複数の基準
点を計算し、続いて連続関数モデルを上記基準点にフィットさせることを含む。
【０１４１】
デジタル回路構成７１０は、入力ビデオストリームの各ブロックに対する以下の動作を
実施するよう構成してよい。
【０１４２】
（Ａ）デジタル回路構成は、複数のコード化モードそれぞれに対応する複数の予測残差
を受信してよい。各予測残差は、対応するコード化モードに関する入力ブロックと予測と
の間の差異である。各予測は、入力ブロックと同一の次元のアレイであってよい。
【０１４３】
（Ｂ）デジタル回路構成は、予測残差を変換して各コード化モードに関する変換ブロッ
クを得ることができる：
ＴＢk←Ｔｒａｎｓｆｏｒｍ（ＰＲk）
ここでｋ＝１、２、…、Ｎである。いくつかの実施形態では、上記変換は離散コサイン
変換である（ＤＣＴ）。しかしながら他の変換も同様に使用してよい。
【０１４４】
（Ｃ）各コード化モードＭkに関して、デジタル回路構成は、１つ又は複数の量子化ス
テップ幅ｑの値それぞれを用いて、コード化モードＭkに関する変換ブロックを量子化し
、上記変換ブロックの１つ又は複数の量子化バージョンを得てよい。デジタル回路構成は
、変換ブロックの１つ又は複数の量子化バージョンを含むデータの集合を処理して、コー
ド化モードＭkに関する速度推定関数Ｒk（ｑ）の特徴を決定する一次速度モデル化データ
（ｐｒｉｍａｒｙ  ｒａｔｅ  ｍｏｄｅｌｉｎｇ  ｄａｔａ：ＰＭＲＤ）を得てよい。各
量子化バージョンの処理により、量子化ステップ幅の対応する値ｑvに関する速度Ｒk（ｑ
v）の推定（又は測定値）が得られる。量子化ステップ幅の１つ又は複数の値に対応する
１つ又は複数の順序対｛（ｑv，Ｒk（ｑv））｝は、速度推定関数Ｒk（ｑ）の特徴表示と
して解釈してよい。
【０１４５】
上述のように、ビデオエンコーダ７００は、伝送回路構成７２０も含んでよい。伝送回
路構成は、副次的情報ストリーム７３０を通信媒体（例えばインターネット又は無線ネッ
トワーク）上へと伝送するよう構成してよい。副次的情報ストリームは、各コード化モー
ドに関する及び各ブロックに関する一次速度モデル化データ（ＰＲＭＤ）を含んでよい。
【０１４６】
いくつかの実施形態では、複数のコード化モードはイントラブロックコード化モード及
びインタブロックコード化モードを含んでよい。他の実施形態では、複数のコード化モー
ドは様々な予測サブブロックパーティションを含んでよい。
【０１４７】
いくつかの実施形態では、上記ステップ（Ｃ）で使用される量子化ステップ幅ｑの１つ
又は複数の値は、１に等しい量子化ステップ幅を表す最小値ｑminを含む。これらの実施
形態では、データの集合を処理する上述の動作は、１に等しい量子化ステップ幅に対応す
る量子化バージョンにおける最大絶対値の係数に基づいて、（速度値ゼロに対応する、例
えば全ての量子化係数がゼロである）量子化ステップ幅の最大値ｑmaxを決定することを
含んでよい。（各量子化バージョンは量子化変換係数のアレイであることを思い出された
い。）一次速度モデル化データを生成するために使用されるデータの集合は、最大値ｑma
xを含んでよい。
【０１４８】
あるいは、ｑmaxを、変換ブロックの最小量子化バージョンからではなく、変換ブロッ
クからより直接的に計算してよい。（いくつかのビデオ符号化規格では、１に等しい量子
化ステップ幅による変換ブロックの量子化は、恒等写像を構成し、即ち変換ブロックの各
係数に変化を発生させない。従ってｑmaxの計算は、非量子化変換ブロックのみに左右さ
れるものであり得る。）よって、デジタル回路構成によってブロック毎に実施される操作
は：各コード化モードＭkに関して、コード化モードに関する変換ブロックに基づいて、
即ち最大絶対値を有する変換ブロックの係数に基づいて、（速度値ゼロに対応する）量子
化ステップ幅の最大値ｑmaxを計算することも含んでよい。この代替実施形態では、一次
速度モデル化データを生成するために使用されるデータの集合は、最大値ｑmaxも含む。
【０１４９】
いくつかの実施形態では、量子化ステップ幅の１つ又は複数の値は、１に等しい量子化
ステップ幅を表す最小値ｑminを含んでよい。更に、データの集合を処理する動作は、最
小値ｑminに対応する量子化バージョンに基づいて、量子化ステップ幅の最小値ｑminと関
連する最大速度値Ｒmaxを計算することを含んでよい。あるいは、最大速度値Ｒmaxを、変
換ブロックの最小量子化バージョンからではなく、変換ブロックからより直接的に計算し
てよい。この代替実施形態では、デジタル回路構成によってブロック毎に実施される操作
は、コード化モードに関する変換ブロックに基づいて、量子化ステップ幅の最小値ｑmin
に関連する最大速度値Ｒmaxを計算することも含んでよい。これらの実施形態では、一時
モデル化データを生成するために使用されるデータの集合は、最大速度値Ｒmaxを含む。
【０１５０】
いくつかの実施形態では、量子化ステップ幅の１つ又は複数の値は、標準定義最小値（
例えば値１）と最大値との正確な中央値ｑmidを含んでよい。例えばｑmidは、１に等しい
量子化ステップ幅を表すｑminと最大値ｑmaxとの中点であってよい。あるいは値ｑmidは
、速度−歪み最適化（ｒａｔｅ−ｄｉｓｔｏｒｔｉｏｎ  ｏｐｔｉｍｉｚａｔｉｏｎ：Ｒ
ＤＯ）等の、メザニンエンコーダが使用するいずれの最適化アプローチに基づいて選択し
てよい。更に、データの集合を処理する動作は、中央値ｑmidに対応する量子化バージョ
ンに基づいて、量子化ステップ幅の中央値ｑmidに関連する中央速度値Ｒmidを計算するこ
とを含んでよい。これらの実施形態では、一時モデル化データを生成するために使用され
るデータの集合は、中央速度値Ｒmidを含む。
【０１５１】
いくつかの実施形態では、量子化ステップ幅ｑのいずれの値に関連する速度値Ｒの計算
は、量子化係数のコードサイズをエミュレートするための単純近似からなってよい。例え
ば、量子化バージョン中の全ての非ゼロ係数ｃｏｅｆｆに対する項の合計１＋２＊ｌｏｇ
2［ａｂｓ（ｃｏｅｆｆ）］である。
【０１５２】
いくつかの実施形態では、量子化ステップ幅ｑのいずれの値に関連する速度値Ｒの計算
は、量子化バージョンの完全なエントロピー符号化の結果であるか、又は量子化バージョ
ンのエントロピー符号化の正確な若しくは近似的なエミュレーションによるものであって
よい。
【０１５３】
計算の複雑性は、調査される量子化ステップ幅の状態の数と共に上昇することを理解さ
れたい。しかしながら、得られる速度推定関数の精度も上記数と共に上昇し得る。
【０１５４】
いくつかの実施形態では、データの集合の処理は、１つ又は複数の順序対を用いて連続
関数モデルに関するフィッティングパラメータを計算することも含んでよい。フィッティ
ングパラメータもまた、速度推定関数Ｒk（ｑ）の特徴表示として解釈してよい。関数モ
デルは、以下のうちのいずれかのような、文献に記載されているものであってよい：
Ｒk（ｑ）＝α＋βｌｏｇ（１／ｑ）        ［Ｌｉｎ、１９９８年］；
Ｒk（ｑ）＝α＋β／ｑ’                  ［Ｌｉｎ、１９９８年］；
Ｒk（ｑ）＝変換残差のラプラス分散に基づく表現式    ［Ｌｉ、２００９年］
これらの例示的な連続関数モデルでは、α及びβはフィッティングパラメータである。
フィッティングパラメータの計算は、連続関数モデルと、変換ブロックに対応する量子化
ステップ幅の計算された全ての状態との間の誤差を最小化するために、フィッティングパ
ラメータに値、例えば：
（Ｒmax，ｑmin＝１）、
（Ｒmid，ｑmid）、
（Ｒmin＝０，ｑmax）
を割り当てるための数値法を使用することからなってよい。
【０１５５】
図８に示すように、いくつかの実施形態では、デジタル回路構成によってブロック毎に
実施される操作は：各コード化モードＭkに関して、コード化モードに関する変換ブロッ
クの１つ又は複数の量子化バージョンにそれぞれ基づいて、１つ又は複数の再構成残差を
生成すること；及び上記再構成残差に基づいて、コード化モードに関する歪み関数Ｄk（
ｑ）の特徴を決定する一次歪みモデル化データ（ｐｒｉｍａｒｙ  ｄｉｓｔｏｒｔｉｏｎ
ｍｏｄｅｌｉｎｇ  ｄａｔａ：ＰＤＭＤ）を生成することを含んでもよい。（各再構成
残差は、入力ブロックと、変換ブロックの各量子化バージョンに由来する各再構成ブロッ
クとの間の差であってよい。）これらの実施形態では、副次的情報ストリーム７３０は、
各コード化モード及び各ブロックに関する一次歪みモデル化データも含んでよい。
【０１５６】
いくつかの実施形態では、量子化ステップ幅のいずれの値ｑに関連する歪み値Ｄの計算
は、変換ブロックの各量子化バージョンに由来する各再構成残差の二乗誤差の合計（ＳＳ
Ｅ）を含んでよい。
【０１５７】
いくつかの実施形態では、データの集合の処理は、１つ又は複数の順序対を用いて連続
関数モデルに関するフィッティングパラメータを計算することも含んでよい。フィッティ
ングパラメータもまた、歪み推定関数Ｄk（ｑ）の特徴表示として解釈してよい。関数モ
デルは、文献に記載されている以下のものであってよい：
Ｄk（ｑ）＝αｑ2      ［Ｓｕｌｌｉｖａｎ、１９９８年］
この例示的な連続関数モデルでは、αはフィッティングパラメータである。フィッティ
ングパラメータの計算は、連続関数モデルと、変換ブロックに対応する量子化ステップ幅
の計算された全ての状態との間の誤差を最小化するために、フィッティングパラメータに
値、例えば（Ｄ，ｑ）を割り当てるための数値法を使用することからなってよい。
【０１５８】
いくつかの実施形態では、デジタル回路構成７１０によってブロック毎に実施される操
作は；（１）複数のコード化モードのうちの最適化コード化モード及び量子化ステップ幅
ｑの最適化値に対応する、変換ブロックの量子化バージョンを選択すること（ここで、量
子化ステップ幅の最適化値及び最適化コード化モードは、速度−歪み最適化（ＲＤＯ）等
の、メザニンエンコーダが使用するいずれの最適化アプローチに基づいて選択されている
）；並びに（２）最適化コード化モード及び量子化ステップ幅ｑの最適化値に対応する上
記量子化バージョンを符号化して、符号化ビデオストリームに寄与する出力ビットを生成
することも含んでよい。伝送回路構成は、符号化ビデオストリームを通信媒体へと伝送す
るよう構成してよい。
【０１５９】
いくつかの実施形態では、デジタル回路構成７１０は、変換回路構成及び符号化回路構
成を含んでよい。変換回路構成は、上記受信、上記変換、各コード化モードＭkに関する
上記量子化、上記処理及び上記選択を実施するよう構成してよい。符号化回路構成は、最
適化コード化モード及び量子化ステップ幅ｑの最適化値に対応する量子化バージョンの上
記符号化を実施するよう構成してよい。一実施形態では、変換回路構成及び符号化回路構
成はパイプライン構成であり、符号化回路構成が変換回路構成よりも、ピクチャシーケン
ス中の順序が前のピクチャに作用する。
【０１６０】
いくつかの実施形態では、入力ビデオストリームのブロック毎に実施される操作は：（
１）量子化ステップ幅ｑの最適化値を用いて、複数のコード化モードのうちの最適化コー
ド化モードに対応する変換ブロックを量子化すること（ここで、量子化ステップ幅の最適
化値及び最適化コード化モードは、速度−歪み最適化（ＲＤＯ）等の、メザニンエンコー
ダが使用するいずれの最適化アプローチに基づいて選択されている）；並びに（２）最適
化コード化モード及び量子化ステップ幅ｑの最適化値に対応する量子化変換ブロックを符
号化して、符号化ビデオストリームに寄与する出力ビットを生成することを含んでよい。
（１）の量子化ステップは、量子化ステップ幅の１つ又は複数の値を用いた変換ブロック
の上記量子化、即ち上述のステップ（Ｃ）の一部として実施される量子化とは別個のもの
であってよい。伝送回路構成は、符号化ビデオストリームを通信媒体へと伝送するよう構
成される。
【０１６１】
ある一連の実施形態では、ビデオエンコーダ９００は図９に示すように構成してよい。
ビデオエンコーダは、デジタル回路構成９１０及び伝送回路構成９２０を含んでよい。（
更にビデオエンコーダ９００は、図１〜８、図１０〜１７に関連して既に述べた又は以下
に述べる特徴、要素及び実施形態のいずれのサブセットを含んでよい。）
【０１６２】
デジタル回路構成９１０は、入力ビデオストリームの複数のブロックのそれぞれに関し
て、以下の操作：（Ａ）１つ又は複数のコード化モードそれぞれに対応する複数の予測残
差を変換して、上記１つ又は複数のコード化モードそれぞれに関する１つ又は複数の変換
ブロックを得ること；並びに（Ｂ）各コード化モードＭkに関して、各予測残差及び／又
はコード化モードＭkに関する各変換ブロックを処理して、コード化モードＭkに関する速
度モデル化データ（ＲＭＤ）を得ることを実施するよう構成してよい。デジタル回路構成
９１０は、デジタル回路構成７１０に関連して既に様々に説明したようなハードウェアに
おいて実現できる。
【０１６３】
伝送回路構成９２０は、副次的情報ストリーム９３０を通信媒体へと伝送するよう構成
してよく、この副次的情報ストリームは、各コード化モード及び各ブロックに関する速度
モデル化データを含む。
【０１６４】
いくつかの実施形態では、速度モデル化データは、１つ又は複数のコード化モードのう
ち少なくとも１つに関する速度推定関数Ｒk（ｑ）の特徴を決定するデータを含んでよく
、ここでｑは量子化ステップ幅を表す。
【０１６５】
いくつかの実施形態では、デジタル回路構成によってブロック毎に実施される操作は：
各コード化モードＭkに関して、コード化モードに関する変換ブロックの１つ又は複数の
量子化バージョンにそれぞれ基づいて、１つ又は複数の再構成残差を生成すること；及び
上記１つ又は複数の再構成残差に基づいて、コード化モードに関する歪みモデル化データ
を生成することを含んでもよく、ここで副次的情報ストリームは、各コード化モード及び
各ブロックに関する上記歪みモデル化データも含んでよい。
【０１６６】
いくつかの実施形態では、歪みモデル化データは、上記１つ又は複数のコード化モード
のうち少なくとも１つに関する歪み推定関数Ｄk（ｑ）の特徴を決定するデータを含み、
ここでｑは量子化ステップ幅を表す。
【０１６７】
いくつかの実施形態では、デジタル回路構成は更に、入力ビデオストリームの符号化バ
ージョンを表す符号化ビデオストリームを生成するよう構成してよく、ここで伝送回路構
成は、上記符号化ビデオストリームを通信媒体へと伝送するよう構成される。
【０１６８】
いくつかの実施形態では、符号化ビデオストリームを生成する動作は、１つ又は複数の
変換ブロックのうち少なくとも１つに作用することを含む。
【０１６９】
ある一連の実施形態では、ビデオエンコーダは、以下の様なデジタル回路構成及び伝送
回路構成を含んでよい。デジタル回路構成は、入力ビデオストリームを符号化して符号化
ビデオストリームを得るよう構成してよく、ここで上記符号化は、入力ビデオストリーム
の特性を決定する副次的情報ストリームの生成を含む。伝送回路構成は、符号化ビデオス
トリーム及び副次的情報ストリームを伝送するよう構成してよい。
【０１７０】
いくつかの実施形態では、副次的情報ストリームは、入力ビデオストリームの速度及び
／又は歪み特性を決定するデータを含む。
【０１７１】
いくつかの実施形態では、副次的情報ストリームは候補運動ベクトルのストリームを含
む。
【０１７２】
ビデオ信号変換システム
ある一連の実施形態では、ビデオ信号変換システム１０００は図１０に示すように構成
してよい。（更にビデオ信号変換システム１０００は、図１〜９、図１１〜１７に関連し
て既に述べた又は以下に述べる特徴、要素及び実施形態のいずれのサブセットを含んでよ
い。）
【０１７３】
ビデオ信号変換システムは第１の符号化ビデオストリーム１００５を受信し、現在配信
を受けているユーザデバイス１０４５のために（例えばピクチャサイズ、ビデオフォーマ
ット及びビットレート等の１つ又は複数の因子に関して）カスタマイズされた第２の符号
化ビデオストリーム１０３５を生成してよい。第１の符号化ビデオストリーム１００５の
単一の記憶されたコピーは、異なるユーザデバイスのために異なる方法で信号変換してよ
い。例えば第１の符号化ビデオストリーム１００５は、無線ネットワークを介して接続さ
れた移動体デバイスのために、低ビットレート及び小ピクチャサイズに信号変換してよく
、また有線ネットワークを介して接続されたホームシアターのために、高ビットレート及
び大ピクチャサイズに信号変換してよい。更にビデオ信号変換システム１０００は、ビデ
オ信号変換システムとユーザデバイスとの間のチャネルの状態に応じて、例えばユーザデ
バイスから受信したフィードバックに基づいて、第２の符号化ビデオストリームの出力ビ
ットレートを動的に調整してよい。第２の符号化ビデオストリームは、通信媒体１０４０
（例えば無線ネットワーク、又は有線ネットワーク、又は無線ネットワークと有線ネット
ワークとの併用）を介してユーザデバイスに伝送される。ビデオ信号変換システム１００
０は、例えばネットワークエッジトランスコーダに関連して上述したように、ネットワー
クの辺縁又はその付近に配置してよい。
【０１７４】
ビデオ信号変換システム１０００は、幅広い文脈及び用途において使用できる。例えば
ビデオ信号変換システム１０００を、無線ネットワークの無線アクセスポイント（例えば
基地局）に連結してよい。従って通信媒体１０４０は、アクセスポイントとユーザデバイ
スとの間の無線インタフェースであってよい。この文脈において、第２の符号化ビデオス
トリーム１０３５をカスタマイズして動的なビットレート制御を適用する性能は、無線イ
ンタフェースが利用できる帯域幅が限定されているため、及びチャネルが極めて動的な特
性を有するため、特に有用である。
【０１７５】
一応用例では、ビデオ信号変換システム１０００をコンテンツ配信ネットワーク（ＣＤ
Ｎ）のオペレータが使用してよく、ビデオ信号変換システム１０００はＣＤＮの辺縁又は
その付近に配置してよい。従ってビデオ信号変換システム１０００が供給する出力は、Ｃ
ＤＮオペレータの制御範囲外にある通信媒体１０４０を介してユーザデバイスに伝送でき
る。ビデオ信号変換システム１０００は、システム５２０のネットワークエッジトランス
コーダとして使用してよい（図５、６を参照）。
【０１７６】
ビデオ信号変換システム１０００は、デコーダ１０１０、スケーリング部１０２０及び
出力エンコーダ１０３０を含んでよい。デコーダ１０１０は、第１の符号化ビデオストリ
ーム１００５を受信及び復号化することで、復号化ビデオストリーム１０１５を得るよう
構成してよい。
【０１７７】
スケーリング部１０２０は、復号化ビデオストリームを標的ピクチャ解像度にスケーリ
ングして、スケーリング済みビデオストリーム１０２５を得るよう構成してよい。標的ピ
クチャ解像度は、第１の符号化ビデオストリーム１００５が潜在的に有するピクチャ解像
度より低くてよく、又はこれと同一であってよく、又はこれより高くてもよい。
【０１７８】
出力エンコーダ１０３０は、第１の符号化ビデオストリームに関連する（例えば既に様
々に説明したような）副次的情報ストリーム１０２８を受信し、この副次的情報ストリー
ム１０２８を用いてスケーリング済みビデオストリームを符号化して、第２の符号化ビデ
オストリーム１０３５を得るよう構成してよい。
【０１７９】
第１の符号化ビデオストリーム１００５は、ソースビデオストリームの符号化されたバ
ージョンとして解釈してよい。（いくつかの実施形態では、第１の符号化ビデオストリー
ムは、メザニンエンコーダ５１０、ビデオエンコーダ７００又はビデオエンコーダ９００
が生成したストリームである。）副次的情報ストリーム１０２８は、ソースビデオストリ
ームの特性を決定するメタデータを含んでよい。例えば副次的情報ストリームは、ソース
ビデオストリームのブロックの速度及び／又は歪み特性を決定する情報を含んでよい。別
の例として、副次的情報ストリームは、ソースビデオストリームのブロックに関する運動
ベクトルを含んでよい。副次的情報を出力エンコーダ１０３０が使用することで、最適な
（又は最適に近い）コード化決定、例えば所定のブロックに対して使用するコード化モー
ド、又は所定のブロックに対して使用する量子化ステップ幅の値、又は所定のブロックに
対して最適なインタ予測を得られる可能性が高い１つ若しくは複数のベクトルの決定等を
、計算効率が高い方法で行うことができる。
【０１８０】
いくつかの実施形態では、副次的情報ストリームはＮ個のコード化モードそれぞれに対
応するＮ個の速度情報ストリームを含み、ここでＮは１以上である。Ｎ個の速度情報スト
リームの各速度情報ストリームＲＩＳkは、各コード化モードに基づいてブロック予測を
推測する、第１の符号化ビデオストリームのブロック毎の対応する速度推定関数Ｒk（ｑ
）の特徴を決定し、ここでｑは量子化ステップ幅である。
【０１８１】
いくつかの実施形態では、Ｎの値はピクチャ毎に変動し得る。例えば、第１の符号化ビ
デオストリームの（Ｐピクチャ又はＢピクチャ等の）所定のコード化されたピクチャに関
してはＮは２に等しくてよく、この場合速度情報ストリームＲＩＳ1はイントラコード化
モードに対応してよく、速度情報ストリームＲＩＳ2はインタコード化モードに対応して
よい。あるいは、Ｎの値は固定されているものと解釈してよく、しかしながらいくつかの
ピクチャに関しては、Ｎ個の速度情報ストリームのうち１つ又は複数は休止状態であって
よい。例えばＮ＝２の場合、イントラピクチャはインタコード化モードのための速度情報
ストリームを必要とせず、その一方でＰピクチャ又はＢピクチャは、イントラ速度情報ス
トリーム及びインタ速度情報ストリームの両方を使用し得る。
【０１８２】
いくつかの実施形態では、各速度情報ストリームＲＩＳkは、連続関数モデルに関連す
る２つ以上のフィッティングパラメータの対応するセットにより、各ブロックに関して速
度推定関数Ｒk（ｑ）の特徴を決定する。連続関数モデルはいずれの様々な形態を有して
よい。一実装形態では、連続関数モデルは以下の形態：
Ｒk（ｑ）＝α＋βｌｏｇ（１／ｑ）        ［Ｌｉｎ、１９９８年］
を有し、ここでα及びβはフィッティングパラメータである。
【０１８３】
いくつかの実施形態では、副次的情報ストリームはまた、Ｎ個の歪み情報ストリームを
含み、Ｎ個の歪み情報ストリームの各歪み情報ストリームＤＩＳkは、各コード化モード
に基づいてブロック予測を推測する、第１の符号化ビデオストリームのブロック毎の対応
する歪み推定関数Ｄk（ｑ）の特徴を決定する。各歪み情報ストリームＤＩＳkは、連続関
数モデルに関連する１つ又は複数のフィッティングパラメータの対応するセットにより、
各ブロックに関して歪み推定関数Ｄk（ｑ）の特徴を決定してよい。連続関数モデルはい
ずれの幅広い形態を有してよい。例えば一実装形態では、連続関数モデルは以下の形態：
Ｄk（ｑ）＝αｑ2      ［Ｓｕｌｌｉｖａｎ、１９９８年］
を有し、ここでαはフィッティングパラメータである。
【０１８４】
いくつかの実施形態では、副次的情報ストリームは、出力エンコーダ１０３０の速度制
御プロセスへの入力として使用される。典型的な速度制御アルゴリズムは、あるピクチャ
に関する集計速度関数ＲA（ｑ）及びそのピクチャに関する集計歪み関数ＤA（ｑ）に基づ
くものであってよい。副次的情報ストリームは、スケーリング済みビデオストリームの所
定の標的ピクチャ解像度に関するＲA（ｑ）及びＤA（ｑ）を計算するために必要な情報を
含有してよい。速度制御アルゴリズムは、標的ビットレートを達成するために、並びに第
２の符号化ビデオストリームを受信する遠隔デコーダにおけるコード化ピクチャバッファ
のオーバフロー及びアンダフローを回避するために、スケーラ値λを調整することを含ん
でよい。
【０１８５】
いくつかの実施形態では、第１の符号化ビデオストリームの所定のコード化されたピク
チャに関して、Ｎ＝２であり、この場合歪み情報ストリームＤＩＳ1はイントラコード化
モードに対応してよく、歪み情報ストリームＤＩＳ2はインタコード化モードに対応して
よい。
【０１８６】
いくつかの実施形態では、出力エンコーダ１０３０は、副次的情報ストリームを処理し
て、スケーリング済みビデオストリームの各フレームに関する集計速度推定関数ＲA（ｑ
）を得るよう構成してよく、ここでｑは量子化ステップ幅を表す。集計速度推定関数ＲA
（ｑ）は、ブロックコード化モード及び／又は量子化器の選択に使用できる。
【０１８７】
いくつかの実施形態では、出力エンコーダ１０３０は、副次的情報ストリームを処理し
て、スケーリング済みビデオストリームの各フレームに関する集計歪み推定関数ＤA（ｑ
）を得るよう構成してよい。集計歪み推定関数ＤA（ｑ）は、ブロックコード化モード及
び／又は量子化器の選択に使用できる。
【０１８８】
いくつかの実施形態では、出力エンコーダ１０３０は、副次的情報ストリームを更に処
理して、スケーリング済みビデオストリームの各フレームに関する集計速度推定関数ＲA
（ｑ）及び集計歪み推定関数ＤA（ｑ）を得るよう構成してよい。
【０１８９】
いくつかの実施形態では、出力エンコーダは：（ａ）Ｎ個の速度情報ストリームに基づ
いて、あるピクチャに関する集計速度関数ＲA（ｑ）を計算するよう；（ｂ）Ｎ個の歪み
情報ストリームに基づいて、上記ピクチャに関する集計歪み関数ＤA（ｑ）を計算するよ
う；（ｃ）集計速度関数ＲA（ｑ）及び集計歪み関数ＤA（ｑ）に基づいて、上記ピクチャ
に関する集計スケール関数λ（ｑ）を計算するよう（ここでスケーリング済みビデオスト
リームの上記符号化は、スケーラ値λでパラメータ化した速度−歪み費用関数に基づくラ
グランジュ型最適化を用いてピクチャを符号化することを含む）；並びに（ｄ）集計速度
関数ＲA（ｑ）、集計歪み関数ＤA（ｑ）及び集計スケール関数λ（ｑ）を用いてスケーラ
値λを制御するよう、構成してよい。
【０１９０】
集計速度関数ＲA（ｑ）及び集計スケール関数λ（ｑ）を計算するためのいくつかの実
施形態で使用されるプロセスを図１１に示す。プロセス１１００は、ピクチャ内の全ての
ブロックの寄与を検数し、その結果、上記ピクチャに関する集計速度関数ＲA（ｑ）１１
４５、即ち上記ピクチャに関する量子化ステップ幅の関数として速度の特徴を決定するデ
ータが得られる。複数のブロックに亘る検数は、ループ構成１１１０によって提案される
。量子化ステップ幅ｑの各値に関して、ピクチャのプロセスは：（１）１１２０に示すよ
うに、インタ速度推定関数Ｒk（ｑ）を用いて関数モデルを評価することにより、量子化
ステップ幅ｑに対応するインタ速度のブロック関連値を計算し；（２）１１２５に示すよ
うに、インタ速度推定関数Ｒk（ｑ）を用いて関数モデルを評価することにより、ｑｓｔ
ｅｐ値に対応するイントラ速度のブロック関連値を計算し；（３）１１３０に示すように
、より低い速度値を有するブロックコード化モード（インタ又はイントラ）を選択し；（
４）１１３５に示すように、ブロックに関する上記より低い速度値をピクチャ関連速度関
数ＲA（ｑ）に累算し；（５）１１４０に示すように、ピクチャ関連値ＲA（ｑ）に補正係
数（ｒａｔｅｆｉｔと呼ぶ）を適用して、推定の精度を改善してよい。ループ構成１１１
５は、量子化ステップ幅全体に亘る反復を示している。図１１では、量子化ステップ幅に
対するループは複数のブロックに亘るループの内側にあるものとして示されているが、代
替実施形態では、この入れ子構造は逆になっていてよく、即ち複数のブロックに亘るルー
プが内側ループであってよい。また２つのループのいずれか又は両方に亘る反復は並行し
たものであってよいことを理解されたい。
【０１９１】
いくつかの実施形態では、例えば以下の式：
ＲA（ｑ）←ｒａｔｅｆｉｔ＊ＲA（ｑ）
に基づいて、補正１１４０を適用してよい。ここでｒａｔｅｆｉｔは、予測サイズと、ビ
デオシーケンス内の順序が前のピクチャから得られた実際のサイズとを比較することによ
って計算される値である。
【０１９２】
量子化ステップ幅ｑの範囲全体に亘ってピクチャ関連関数ＲA（ｑ）を計算した後、ル
ープ１１５０で示すように、量子化ステップ幅ｑ全体に亘ってピクチャ関連ラムダ関数λ
（ｑ）を計算する。ピクチャ関連ラムダ関数λ（ｑ）は、例えば速度制御アルゴリズムで
使用してよい。
【０１９３】
１１５５において、数値的手法を用いて、ピクチャ関連速度導関数ｄＲA（ｑ）／ｄｑ
の値を量子化ステップ幅ｑの範囲全体に亘って計算する。表記ｄＲA（ｑ）／ｄｑは、量
子化ステップ幅に対する速度の導関数を表す。
【０１９４】
１１６０において、以下の式：
λ（ｑ）＝−（ｄＤA（ｑ）／ｄｑ）／（ｄＲA（ｑ）／ｄｑ）
に従って、ｑｓｔｅｐの現在の値に関してピクチャ関連ラムダ関数λ（ｑ）の値を計算し
てよい。ここでｄＤA（ｑ）／ｄｑはピクチャ関連歪み導関数である。
【０１９５】
いくつかの実施形態では、導関数ｄＤA（ｑ）／ｄｑ又はこの関数の特徴を決定する１
つ若しくは複数のパラメータは、プロセス１１００の入力として供給してよい。例えば：
ｄＤA（ｑ）／ｄｑ＝定数
であり、定数の値は例えば、一連の例示的なビデオクリップのオフライン分析によって経
験的に決定できる。
【０１９６】
他の実施形態では、集計歪み関数ＤA（ｑ）及びその導関数は、プロセス１１００と同
様の方法で、いずれのブロックに関する歪み推定関数Ｄk（ｑ）からの寄与を加算するこ
とによって計算できる。
【０１９７】
いくつかの実施形態では、集計速度関数ＲA（ｑ）、集計歪み関数ＤA（ｑ）及び集計ス
ケール関数λ（ｑ）は、閉じた形式の等式としてではなく、一連の別個の量子化ステップ
幅の値に対する値のリストとして計算及び記憶してよい。この場合であっても、各関数は
連続写像であると考えてよく、中間値が内挿によって計算される。更に各関数は、基礎と
なるブロック毎の速度及び歪み推定関数が単調関数であるため、一対一（即ち可逆）写像
であると理解される。
【０１９８】
集計速度関数ＲA（ｑ）を計算するためのプロセス１１００では、出力解像度における
各ブロックに関する速度の寄与は、スケーラ部１０２０の動作によって出力解像度が入力
解像度と異なる場合、写像された速度推定関数Ｒ’k（ｑ）から得られるものであってよ
い。出力解像度における所定のブロックに関する写像された速度推定関数Ｒ’k（ｑ）は
、第１の符号化ビデオストリーム１００５の対応するスケーリング済み位置における、１
つ又は複数のブロックの速度推定関数Ｒk（ｑ）に等しい。
【０１９９】
副次的情報ストリームが歪みモデル化情報を含む場合、これもまた、写像された速度推
定関数と同一の方法で、写像された歪み推定関数として累算される。
【０２００】
信号変換システム１０００のいくつかの実施形態では、副次的情報ストリームは、第１
の符号化ビデオストリームの各ブロックに関する１つ又は複数の候補運動ベクトルを含ん
でよく、ここで出力エンコーダは、上記１つ又は複数の候補運動ベクトルに基づいて、運
動ベクトル空間内の１つ又は複数の領域に限定された各ブロックに関する高解像度運動ベ
クトル精密化を実施するよう構成される。標的ピクチャ解像度が、第１の符号化ビデオス
トリームが潜在的に有するピクチャ解像度と同一でない場合、候補運動ベクトルをスケー
リングしてよい。
【０２０１】
いくつかの実施形態では、デコーダ１０１０は、第１の符号化ビデオストリーム１００
５からの各ブロックに関する運動ベクトルを、第１の符号化ビデオストリームの上記復号
化の一部として再生するよう構成してよい。これらの実施形態では、出力エンコーダは、
ブロックに関する運動ベクトルに基づいて、運動ベクトル空間内の１つ又は複数の領域に
限定された各ブロックに関する運動ベクトル精密化を実施するよう構成してよい。標的ピ
クチャ解像度が、第１の符号化ビデオストリームが潜在的に有するピクチャ解像度と同一
でない場合、候補運動ベクトルをスケーリングしてよい。
【０２０２】
出力エンコーダ１０３０は、符号化選択空間全体に亘る速度歪み関数Ｊを最小化するこ
とによって、スケーリング済みビデオストリームのブロックを符号化するよう構成してよ
く、ここで速度歪み関数Ｊは、関係式Ｊ＝Ｒ（ｃ）＋λＤ（ｃ）に従って、スケーラ値λ
によってパラメータ化され、ここでベクトルｃは符号化選択の所定のリアライゼーション
を表し、速度関数Ｒ（ｃ）は、リアライゼーションｃの下でブロックを符号化することで
生成されるビット数の推定（又は測定値）であり、歪み関数Ｄ（ｃ）は、リアライゼーシ
ョンｃの下でブロックを符号化することで生成されるブロック歪みの推定（又は測定値）
である。符号化選択は、量子化ステップ幅ｑの選択を含んでよい。Ｎが１より大きい場合
、符号化選択はＮ個のコード化モードからのコード化モードの選択も含んでよい。
【０２０３】
いくつかの実施形態では、副次的情報ストリームは、（例えばＰピクチャ又はＢピクチ
ャに関して）ブロック毎に１つ又は複数の候補運動ベクトルを含む。これらの実施形態で
は、符号化選択は、１つ又は複数の候補運動ベクトルを含む一連のベクトルからの１つの
運動ベクトルの選択も含んでよい。上記一連のベクトルは、第１の符号化ビデオストリー
ムの上記復号化の一部として第１の符号化ビデオストリームから再生される復号化運動ベ
クトルも含んでよい。
【０２０４】
いくつかの実施形態では、出力エンコーダ１０３０は：（ａ）Ｎ個の速度情報ストリー
ムに基づいて、あるピクチャに関する集計速度関数ＲA（ｑ）を計算するよう；並びに（
ｂ）集計速度関数ＲA（ｑ）及び集計歪み関数ＤA（ｑ）に基づいて、上記ピクチャに関す
る集計スケール関数λ（ｑ）を計算するよう、構成してよい。これらの実施形態では、ス
ケーリング済みビデオストリームを符号化する動作は、スケーラ値λでパラメータ化した
速度−歪み関数に基づくラグランジュ型最適化を用いてピクチャを符号化することを含ん
でよい。更に出力エンコーダは、集計速度関数ＲA（ｑ）、集計歪み関数ＤA（ｑ）及び／
又は集計スケール関数λ（ｑ）を用いてスケーラ値λを制御することにより、第２の符号
化ビデオストリームを受信する遠隔デコーダのコード化ピクチャバッファのオーバフロー
又はアンダフローを回避するよう構成してよい。
【０２０５】
いくつかの実施形態では、出力エンコーダ１０３０は：（１）スケーラ値λでパラメー
タ化した速度−歪み関数を用いたラグランジュ型最適化に基づいて、スケーリング済みビ
デオストリームを符号化するよう；及び（２）副次的情報ストリームに基づいてスケーラ
値λを動的に調整することにより、第２の符号化ビデオストリームを受信する遠隔デコー
ダのコード化ピクチャバッファのオーバフロー又はアンダフローを防止するよう、構成し
てよい。
【０２０６】
いくつかの実施形態では、スケーラ値λを調整するためのアルゴリズムは、［Ｌｉｎ  
１９９５］、［Ｗｅｉｇａｎｄ  １９９６］、［Ｌｉｎ  １９９８］又は［Ｃｈｏｉ  １
９９４］を含む文献から得られる、数多くの速度歪み最適化ベースの速度制御アプローチ
のいずれであってよい。これらの文献は全て、集計速度関数ＲA（ｑ）及び集計歪み関数
ＤA（ｑ）に基づく、又は集計速度関数ＲA（ｑ）及び集計歪み関数ＤA（ｑ）から計算で
きるＤA（ＲA）等のその他の関数に基づく制御方法について記載している。これらの文献
は全て、スケーラ値λを動的に調整することによって速度制御を達成する制御方法につい
て記載している。
【０２０７】
いくつかの実施形態では、文献に記載された速度制御アルゴリズムにより、ピクチャ内
の全てのブロックに均一な値の量子化ステップ幅ｑを適用することになる。［Ｃｈｏｉ  
１９９４］に記載されているもの等のその他の実施形態では、副次的情報ストリーム内に
見られるブロックレベルでの速度推定関数Ｒk（ｑ）及び歪み推定関数Ｄk（ｑ）を用いて
、適応量子化を達成してよく、その結果、出力ピクチャの全ブロックに関する一連の最適
な量子化ステップ幅ｑによって、標的ビットレートの制約内で最小の歪みが得られる。
【０２０８】
いくつかの実施形態では、ビデオ信号変換システム１０００はまた、通信媒体１０４０
を介して第２の符号化ビデオストリームを（例えばユーザデバイスと関連する）遠隔ビデ
オデコーダに伝送するよう構成された、伝送回路構成を含んでよい。例えばこの伝送回路
構成は、空間を通して信号を伝送するよう構成された無線トランスミッタ（又はトランシ
ーバ）を含んでよい。無線トランスミッタは、無線通信ネットワークの基地局の一部であ
ってよい。別の実施形態では、伝送回路構成は、インターネット等のＩＰネットワークに
データを伝送するためのネットワークインタフェースであってよい。
【０２０９】
いくつかの実施形態では、出力エンコーダ１０３０は、補助情報を受信して、この補助
情報をスケーリング済みビデオストリームに挿入するよう構成してよい。この補助情報は
以下の１つ又は複数を含んでよい：事業体のブランド設定情報；広告情報；デジタル著作
権管理（ＤＲＭ）情報；ウォーターマーク機能を提供するデジタル情報；及びコンテンツ
プロバイダ、コンテンツ配信サービスプロバイダ、顧客又はユーザが要求する１つ又は複
数のカスタマイズ用特徴。
【０２１０】
いくつかの実施形態では、デコーダ１０１０、スケーリング部１０２０及び出力エンコ
ーダ１０３０のうち少なくとも１つは、並列プロセッサのアレイ上で実行されるよう構成
されたソフトウェアを用いて実装される。例えば上記並列プロセッサのアレイは、並列プ
ロセッサの２次元アレイであってよい。
【０２１１】
いくつかの実施形態では、デコーダ、スケーリング部、出力エンコーダは、並列プロセ
ッサのアレイ内のプロセッサの別個のサブセット上に実装される。
【０２１２】
ビデオ圧縮のための速度制御
本特許は特に、ビデオ圧縮エンコーダのためのビットレート制御方法を開示する。本ビ
ットレート制御方法は、例えばハイブリッドエンコーダを含むいずれのビデオ圧縮方法に
適用できる。（ハイブリッドエンコーダは運動補償を使用し、ピクチャ毎にビット割り当
てが大きく変動するという特性を有する。）本ビットレート制御方法は、極めて多数の相
互依存性の符号化選択に関する最適な解決法が望まれているＨ．２６４符号化規格に応用
できるものとして説明される。しかしながら必要に応じてその他の規格を用いることもで
きる。
【０２１３】
更に、本ビットレート制御方法は、いずれのハードウェア及び／又はソフトウェア実装
に適用可能であることに留意されたい。いくつかの実施形態では、本ビットレート制御方
法は、ＨｙｐｅｒＸプロセッサ（Ｃｏｈｅｒｅｎｔ  Ｌｏｇｉｘ（商標）の製品）、フィ
ールドプログラマブルゲートアレイ（ＦＰＧＡ）又は特定用途向け集積回路（ａｐｐｌｉ
ｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ：ＡＳＩＣ）
（これは一般に、データ従属性に関して、命令的プログラミングモデルに基づく直列化さ
れたソフトウェア実装形態よりも大きな制約を有する）のための実装等、極めて並列な実
装に適合できる。他の実施形態では、本ビットレート制御方法は直列化されたソフトウェ
ア実装に適合できる。
【０２１４】
いくつかの実施形態では、本速度制御方法は、非圧縮ビデオサンプルを入力として用い
て圧縮ビデオ出力ビットストリームを生成する従来のエンコーダに適用される。他の実施
形態では、本速度制御方法は、既に符号化したビデオ基本ストリームを、例えばより低い
ビットレートの新規のビットストリームに変換する、ネットワークエッジトランスコーダ
に適用される。更に他の実施形態では、本速度制御方法は、ビデオコンテンツに関する分
析データの中間ストリームを生成するための分析及び運動推定を実施する第１の部分と、
上記中間ストリームを入力として用いて適合性ビデオ基本ストリーム出力を生成する第２
の部分とに符号化プロセス全体が分割されている分割構成に適用できる。
【０２１５】
ビデオ圧縮エンコーダにおける速度制御の一般的な目標は、多数の符号化アルゴリズム
選択（これら全ては、出力ビットストリームのビットレート及びピクチャ品質に影響する
）に関する決定を行うことである。品質及びビットレートに最も影響する符号化パラメー
タは、量子化パラメータ（ｑｕａｎｔｉｚａｔｉｏｎ  ｐａｒａｍｅｔｅｒ：ＱＰ）であ
るが、運動ベクトル選択、運動モード選択、イントラモード選択及びマクロブロックモー
ド決定等、その他の無数の選択が重要である。
【０２１６】
いくつかの実施形態では、本ビットレート制御方法は、全ての符号化決定を補助するた
めの包括的アプローチを利用してよく、その結果所定の標的ビットレートに関する歪みが
最小となる。本ビットレート制御機構は、ビデオ入力及び分析から始まって運動推定、イ
ントラモード分析、変換コード化及びエントロピー符号化を経由するエンコーダの主要な
パイプラインステージ全てに分散されて組み込まれた多数の構成部品を含んでよい。
【０２１７】
速度制御システムの構成部品及び特徴
一実施形態では、ビットレート制御システムは、バッファモデル、速度−歪み最適化、
マクロブロックモデル、イントラ複雑性分析、運動分析、ピクチャタイプ選択及び速度制
御機構を伴うものであってよい。
【０２１８】
バッファモデル：エンコーダは、エンコーダが生成したビットストリームが、圧縮ピク
チャバッファのプレイバック時にアンダフロー又はオーバフローしないことを保証するた
めに、デコーダの圧縮されたピクチャバッファのモデルを保持してよい。バッファモデル
は、Ｈ．２６４では仮想参照デコーダ（Ｈｙｐｏｔｈｅｔｉｃａｌ  Ｒｅｆｅｒｅｎｃｅ
Ｄｅｃｏｄｅｒ：ＨＲＤ）と呼ばれ、ＭＰＥＧ−２では仮想バッファ検証器（Ｖｉｒｔ
ｕａｌ  Ｂｕｆｆｅｒ  Ｖｅｒｉｆｉｅｒ：ＶＢＶ）と呼ばれる。Ｈ．２６４はまた、理
想化されたエンコーダ及び伝送チャネルを含み、これは仮想ストリームスケジューラ（Ｈ
ｙｐｏｔｈｅｔｉｃａｌ  Ｓｔｒｅａｍ  Ｓｃｈｅｄｕｌｅｒ：ＨＳＳ）と呼ばれる。い
くつかの実施形態では、速度制御システムはＨＲＤ／ＨＳＳ併用モデルを実装してよい。
【０２１９】
速度−歪み最適化原理：速度−歪み最適化（ＲＤＯ）は、全ての符号化決定を標的ビッ
トレートに適合させるための統一型機構を提供してよい。これは、リソースの最適な割り
当てという問題を解決するためのより一般的なラグランジュ型最適化技術の、特定の応用
例である。以下により詳細に説明するラグランジュ乗数λは、速度制御システムが制御す
る変数であってよい。符号化パラメータ並びにＱＰ及びコード化モード等の選択の全て、
従ってエンコーダの出力のビットレートは、λの値に依存してよい。
【０２２０】
マクロブロックモデル：マクロブロックモデルは、例えば原初ソース画像サンプル値又
はこれに対応する変形係数の代替として、速度制御目的のマクロブロックの簡略化した記
述として利用できる。各コード化マクロブロックに関して少数のフィッティングパラメー
タを用いて、速度制御システムは、ビットストリームとなるビット数、上記マクロブロッ
クに関する歪み、所定の値のγに対して使用するべきＱＰの値を推定又は予測してよい。
フィッティングパラメータは、例えば入力サンプル分析、運動推定の結果及び変換係数を
含むデータソースの数から決定してよい。
【０２２１】
イントラ複雑性分析：エンコーダへの入力を分析して、ビデオフレーム内のビデオサン
プルの複雑性を表す性能指数を得てよい。（この分析をイントラ予測モード分析と混同し
ないよう留意されたい。）イントラ複雑性分析の結果を、マクロブロックモデルへの入力
として提供してよい。
【０２２２】
運動分析：基準フレームからの運動補償を用いて現在のピクチャにおけるマクロブロッ
クのサンプルをいかに良好に予測できるかの尺度を、移動推定プロセスの一部として計算
してよい。この尺度は、あり得るマクロブロックモードの選択（インタ対イントラ）のた
めの基礎を提供でき、マクロブロックへの別の入力となり得る。あり得るマクロブロック
モードは、予測が良好でないマクロブロックに関してはイントラ、予測が良好なマクロブ
ロックに関してはインタを設定してよい。
【０２２３】
ピクチャタイプ選択：ピクチャタイプの選択は、２つの機構を含んでよい。ピクチャの
グループ（ｇｒｏｕｐ  ｏｆ  ｐｉｃｔｕｒｅｓ：ＧＯＰ）スケジュールは、ユーザ指定
ケーデンスに従って予備ピクチャタイプを決定できる。イントラピクチャ間の時間はキー
フレーム間隔と呼ばれ、１（これは全てのフレームがイントラタイプであることを暗に示
す）から数百フレームの値を有してよい。連続するＢピクチャの使用数（典型的には０〜
３の範囲）をユーザが指定する場合、Ｐピクチャ間の時間を決定してよい。
【０２２４】
ＧＯＰスケジュールが予備ピクチャタイプを決定した後、シーン変更検出アルゴリズム
は、予定されたＢ又はＰピクチャをイントラピクチャとしてコード化してよい。急速運動
検出アルゴリズムにより、予定されたＢピクチャをＰピクチャとしてコード化してよい。
予定されたピクチャタイプを無視すると、後続のピクチャに関するＧＯＰスケジュールに
影響し得る。
【０２２５】
シーン変更及び急速運動検出アルゴリズムは、運動分析メトリクスに基づくものであっ
てよい。運動分析メトリクスは、運動推定プロセスの一部として計算してよい。
【０２２６】
先読み処理：イントラ複雑性分析、運動分析及びピクチャタイプ選択は、実際のコード
化関数に先んじて多くのピクチャに対して実施できる。有用な先読み量は、デコーダのコ
ード化ピクチャバッファに記憶できる圧縮ピクチャ数に適合しており、上記圧縮ピクチャ
数は場合によっては最大２０フレーム、又はこれより多い。スライディング先読みウィン
ドウ内の全フレームに関する情報の組み合わせを、速度制御機構の一部として使用してよ
い。
【０２２７】
速度制御機構：速度制御機構は、離散時間フィードバック制御システムであってよい。
速度制御機構は、λの値をできる限り一定に維持しようとするものであってよい。現在の
ピクチャの複雑性及び先読みウィンドウ内の他のピクチャの複雑性に基づくデコーダバッ
ファ占有量の投射により、速度制御機構はラムダの値を増大又は減少させることができる
。このように離散時間システム分析技術は、フィードバック制御システムの設計において
安定性を保証するために使用してよい。
【０２２８】
図１２、１３：速度制御システムのブロック図
図１２は、一実施形態によるＨ．２６４エンコーダの後半、又はネットワークエッジト
ランスコーダの後半を示す。上記後半は、変換ステージ１２１０、エントロピーコード化
ステージ１２１５及びビットストリーム形成ステージ１２２０を含んでよい。統合型速度
制御構成要素は、イントラ複雑性及び運動分析情報のフレームバッファＡ、スケーラ値λ
のための入力、ピクチャサイズ出力、並びに（変換ステージ内での）ｑｓｔｅｐ選択に関
するマクロブロックモデルの実装を含んでよい。ピクチャサイズ出力は、変換段階からの
暫定ピクチャサイズ（ｐｒｏｖｉｓｉｏｎａｌ  ｐｉｃｔｕｒｅ  ｓｉｚｅ：ＰＰＳ）及
び実際のピクチャサイズ（ａｃｔｕａｌ  ｐｉｃｔｕｒｅ  ｓｉｚｅ：ＡＰＳ）を含んで
よい。所定のピクチャに関する実際のピクチャサイズの伝送は、上述の実施形態における
処理のパイプライン型の性質により、上記ピクチャに関する暫定ピクチャサイズの伝送に
対して遅れてよい。
【０２２９】
図１２は、様々なフレームバッファの相対的な位置及び使用を示す。フレームバッファ
は：
現在のピクチャのルマ（輝度）及びクロマ（彩度）サンプルに関するバッファＡ；運動ベ
クトル及び予測サンプルに関するバッファＢ；イントラ複雑性及びマクロブロック毎の運
動分析に関するバッファＣの；運動推定精密化のための再構成サンプルに関するバッファ
Ｄ；コード化マクロブロック情報に関するバッファＥ；並びにスライスデータに関するバ
ッファＦを含んでよい。
【０２３０】
上述のようにこの実施形態では、変換ステージ１２１０は入力として、バッファＡ（現
在のピクチャのルマ及びクロマサンプル）、バッファＢ（運動ベクトル及び予測サンプル
）、バッファＣ（イントラ複雑性及びマクロブロック毎の運動分析）からのデータ並びに
スケーラ値λを受信し、バッファＤ（再構成サンプル）及びバッファＥ（コード化マクロ
ブロック情報）への出力並びに暫定ピクチャサイズに関連する情報を提供する。この実施
形態では、エントロピーコード化ステージ１２１５は、バッファＥ（コード化マクロブロ
ック情報）からの入力データを受信し、スライスデータ（バッファＦへ）及び実際のピク
チャサイズを出力する。ビットストリーム形成ステージ１２２０は、バッファＦからスラ
イスデータを受信し、対応する出力ビットストリームの一部を生成する。
【０２３１】
図１３は、Ｈ．２６４エンコーダの前半の一実施形態を示す。速度制御構成要素は、イ
ントラ複雑性分析１３１０、バッファモデル１３１５、ピクチャタイプ選択１３２０及び
速度制御機構１３２５を含んでよい。粗い運動推定ステージ１３３０内には、移動分析プ
ロセスが存在してよい。イントラ複雑性情報及び運動分析情報は、バッファＣを介して変
換ステージに供給してよく、ピクチャサイズ情報は下流のステージからのフィードバック
として受信してよい。ピクチャサイズ情報は、変換ステージからの暫定ピクチャサイズＰ
ＰＳ及び実際のピクチャサイズ（ＡＰＳ）を含んでよい。
【０２３２】
既に説明したバッファＡ、Ｂ、Ｃ、Ｄに加えて、図１３のサブシステムは、バッファＧ
、Ｈ、Ｉ、Ｊ、Ｋを利用してよい。バッファＧは、現在のピクチャのルマ及びクロマサン
プルに関するものである。バッファＨは、間引かれた現在のピクチャ及び基準ピクチャ（
ルマ）に関するものである。バッファＪは、イントラ複雑性分析結果に関するものである
。バッファＫは運動分析結果に関するものである。バッファＩは粗い運動ベクトルに関す
るものである。
【０２３３】
図１３に示すように、イントラ複雑性分析プロセス１３１０は、バッファＧ（現在のピ
クチャのルマ及びクロマサンプル）から入力データを受信して、バッファＪ（イントラ複
雑性分析結果）に出力を提供してよい。現在のピクチャの間引きプロセス１３２８は、バ
ッファＨ（間引かれた現在のピクチャ及び基準ピクチャ）に出力を提供してよい。バッフ
ァモデル１３１５は図示したように、暫定ピクチャサイズＰＰＳ及び実際のピクチャサイ
ズＡＰＳを受信して、速度制御機構に出力を提供してよい。粗い運動推定プロセス１３３
０は、バッファＨ（間引かれた現在のピクチャ及び基準ピクチャ）から入力を受信して、
バッファＫ（運動分析結果）及びバッファＩ（粗い運動ベクトル）に出力を提供してよい
。ピクチャタイプ選択プロセス１３２０は、バッファＪ（イントラ複雑性分析結果）及び
バッファＫ（運動分析結果）から入力を受信して、運動推定精密化プロセス１３３５に出
力を提供してよい。速度制御機構は１３２５は、バッファモデルから、バッファＪ（イン
トラ複雑性分析結果）から、及びバッファＫ（運動分析結果）から入力を受信して、ラグ
ランジュ型乗数λの値を図１２の変換ステージ１２１０及び運動推定精密化プロセスに供
給してよい。最後に、運動推定精密化プロセス１３３５は、バッファＡ（現在のピクチャ
のルマ及びクロマサンプル）から、バッファＩ（粗い運動ベクトル）から、ピクチャタイ
プ選択プロセス（ピクチャタイプ）から、速度制御機構（λの値）から、及びバッファＤ
（運動推定精密化のための再構成サンプル）から入力を受信してよく、またバッファＢ（
運動ベクトル及び予測サンプル）及びバッファＣ（イントラ複雑性及びマクロブロック毎
の運動分析）に出力を提供してよい。
【０２３４】
図１２、１３に示す要素の特定の構成は、本明細書に開示する本発明の原理の一例とし
ての意味しかなく、実装形態をいずれの特定の形態、機能又は外見に限定することを意図
したものではないことに留意されたい。
【０２３５】
システム構成要素の詳細
ある一連の実施形態による速度制御システムの構成要素又は特徴に関する更なる詳細を
以下に提供する。
【０２３６】
速度−歪み最適化原理
可能な符号化選択のＮ次元空間におけるいずれの所定の点に関して、以下の値を計算で
きる：
Ｒ＝速度＝符号化選択から得られるビットストリーム中のビット数
Ｄ＝歪み＝上記選択による非可逆符号化アルゴリズムによって生じる歪み
【０２３７】
歪みは多数の距離基準のいずれかに基づくものであってよい。一般に使用されるピーク
信号対ノイズ比（ｐｅａｋ  ｓｉｇｎａｌ−ｔｏ−ｎｏｉｓｅ  ｒａｔｉｏ：ＰＳＮＲ）
は、エンコーダへの入力サンプルのブロックと、局部デコーダによって提供される再構成
サンプルのブロックとの間の平均二乗誤差（ｍｅａｎ  ｓｑｕａｒｅｄ−ｅｒｒｏｒ：Ｍ
ＳＥ）に基づく。ＭＳＥを歪みの尺度として用いることにより、アルゴリズムを最適化し
てＰＳＮＲを改善できる。
【０２３８】
平均絶対値差分（Ｍｅａｎ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ：ＭＡＤ）は、
絶対値差分の合計（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅｓ：ＳＡＤ
）と密接に関連しており、これもまた、歪みの実際の値が得られるいずれの距離基準と同
等に使用してよい。
【０２３９】
上述のように、速度−歪み最適化理論は費用関数Ｊを以下のように定義する：
Ｊ＝Ｄ＋λＲ
【０２４０】
ラグランジュ型最適化は、λの所定の値に関してＪを最小化する技術であり、ここでλ
は上述のようにラグランジュ乗数である。
【０２４１】
Ｊを最小化する選択を選び取る別の手段を通して特定の符号化選択を選択するために、
量子化パラメータＱＰの選択は、エンコーダで行われるこのような選択の１つである。Ｑ
Ｐに対応する連続変数はｑｓｔｅｐである。いくつかの実施形態では、ｑｓｔｅｐは以下
の式：
ｑｓｔｅｐ＝Ａ＊２＾（ＱＰ／６）
によってＱＰと関連し、ここでＡは固定された定数であり、「＾」は冪乗を表す。
【０２４２】
ｑｓｔｅｐは連続変数であり；Ｒ（ｑｓｔｅｐ）は単調減少し、その導関数は連続関数
であり；Ｄ（ｑｓｔｅｐ）は単調増加し、その導関数は連続関数であると仮定する。ｑｓ
ｔｅｐの上述の２つの関数はいずれも上に凸であることがわかる。従って図１４に示すよ
うに、費用関数Ｊの最小値は、ｑｓｔｅｐmin又はｑｓｔｅｐmaxにおいてではなく、ｑｓ
ｔｅｐの何らかの中間値において達成される。図１４は費用Ｊをｑｓｔｅｐの関数として
示し、最適費用Ｊminはｑｓｔｅｐ＝ｑｓｔｅｐbestにおいて達成されることを示す。
【０２４３】
最小費用Ｊを前提とした速度の関数として歪みを表すこともできる。関数Ｄ（Ｒ）の形
状は図１５に示すように上に凸であることがわかる。Ｄ（Ｒ）のグラフ上の各点は、ｑｓ
ｔｅｐの異なる値に対応する。Ｊの最小化は、Ｊの導関数がゼロであることを意味し、従
って
ｄＤ／ｄＲ＝−λ
である。従ってλは、図１５に示すようにカーブＤ（Ｒ）の負の傾きであり、λとｑｓｔ
ｅｐの間には写像が存在する。
【０２４４】
Ｒ（ｑｓｔｅｐ）及びＤ（ｑｓｔｅｐ）に関する表現が可能である場合、これらを用い
て、以下の式：
λ（ｑｓｔｅｐ）＝−（ｄＤ／ｄｑｓｔｅｐ）／（ｄＲ／ｄｑｓｔｅｐ）
に従ってｑｓｔｅｐからλを計算できる。
【０２４５】
逆関数ｑｓｔｅｐ（λ）は閉じた式ではない場合が多い。従って、順関数λ（ｑｓｔｅ
ｐ）の特徴を決定すれば、ｑｓｔｅｐの所定の値における逆関数ｑｓｔｅｐ（λ）の値を
数値的に近似することは容易である。
【０２４６】
本明細書に記載の速度制御システムは、これらの所見に基づくものであってよい。いく
つかの実施形態では、λは速度制御システムによって制御される値であり、ｑｓｔｅｐは
上述の逆関数による従属変数である。
【０２４７】
概念的には、速度制御がλに基づくものであれば、速度と歪との間の一定のバランスが
、エンコーダによる、全ピクチャに亘るピクチャ毎の全ての決定に対して適用されるため
、合理的である。画像の複雑性が可変である場合、このアプローチにより、必要に応じて
、複雑な領域に対するより多くのビットの割り当てが可能となる。
【０２４８】
以下の節では、特にＱＰ選択に関する方法について説明する。
【０２４９】
Ｑｓｔｅｐ選択のためのマクロブロックモデルの適用
ｑｓｔｅｐの値は、離散コサイン変換（ｄｉｓｃｒｅｔｅ  ｃｏｓｉｎｅ  ｔｒａｎｓ
ｆｏｒｍ：ＤＣＴ）計算から得られる係数を量子化するために必要となり得る。写像関数
ｑｓｔｅｐ（λ）は存在するが、これはマクロブロックの全てのコード化ブロック及びコ
ード化モード（例えばインタ対イントラ）に固有のものである。
【０２５０】
いくつかの実施形態では、上記変換計算後に利用可能な情報を用いて、（例えば計算的
／経済的に実行可能な）現実的なｑｓｔｅｐ（λ）の計算を実装してよい。上記利用可能
な情報は、マクロブロックに関するイントラ複雑性分析の結果、マクロブロックに関する
運動分析の結果及び変換係数のリストを含んでよい。変換係数は最も有用な情報を提供し
得る。量子化された係数は固定コード化式によってエントロピーコード化されるため、こ
れらの値からＲ（ｑｓｔｅｐ）を推定できる。非ゼロ係数に関するビットにおける費用は
：
１＋２＊ｌｏｇ（｜ｃｏｅｆｆ｜）
に略等しいか又はこれと同一であってよい。
【０２５１】
同様に、Ｄ（ｑｓｔｅｐ）、即ちｑｓｔｅｐの関数としての歪みの合理的な推定を計算
して良い。
【０２５２】
一実施形態では、経験的アプローチによって、上記利用可能なデータに基づいてｑｓｔ
ｅｐを計算するための実際的な（例えば計算的／経済的に実行可能な）関数を見出してよ
い。
【０２５３】
従って一実施形態では、関数を用いてｑｓｔｅｐを計算してよい。いくつかの実施形態
では、ｑｓｔｅｐはＤＣＴ計算の後まで計算しなくてよく、これにより係数の値を（ｑｓ
ｔｅｐを計算するために）関数において使用できる。
【０２５４】
いくつかの実施形態では、ｑｓｔｅｐ（λ）、即ちラムダの関数としてのｑｓｔｅｐを
、各マクロブロックに関して別個に計算してよい。例えば一実施形態では、適応量子化と
呼ばれる特徴を支援するエンコーダを実装してよく、ここでＱＰはピクチャ全体に亘って
一定でない。理想的には、使用するビット数を少なくするために、及びヒトの視覚系は複
雑な領域における歪みに対しては耐性が比較的高いことを理由として、ピクチャの複雑な
領域において比較的高いＱＰを使用する。眼が歪みに関して比較的高い感受性を有し、か
つ画像の詳細の欠落によってビットレートが低くなっている、ピクチャの平坦な領域には
、比較的低いＱＰを使用する。ｑｓｔｅｐ（λ）の計算は、ラムダがピクチャ全体に亘っ
て一定に維持される場合でさえ、このような挙動を示し得る。
【０２５５】
本明細書に記載するアプローチとは対照的に、適応量子化のための従来技術は、ＱＰを
独立変数として使用する複雑なアプローチを含む（ここでＱＰは、変換係数に元々含まれ
る詳細な情報を用いることなくアプリオリに決定されている）ことに留意されたい。
【０２５６】
運動分析、ピクチャタイプ選択及び先読み
いくつかの実施形態では、速度制御システムの複数の構成要素は、運動推定に関連して
よい。
【０２５７】
運動分析は、現在のピクチャからのマクロブロックを基準ピクチャからいかに良好に予
測できるかの尺度である。運動推定プロセス（又はモジュール）は、この予測のための最
良の運動ベクトルを決定し、この運動ベクトル及び予測を用いて、マクロブロックをコー
ド化する。運動推定プロセスはまた、現在のマクロブロックをいかに良好に予測できるか
の尺度を計算し、この性能指数又はメトリックは、インタコード化マクロブロックの複雑
性の潜在的な推測変数となり得る。
【０２５８】
複数の運動推定関数の組織化に対して、特にこれらの関数の統合を行うことができる。
運動推定は一般に、粗い解像度の部分及び完全な解像度の部分を含む。
【０２５９】
一実施形態では、シーン変更検出及び急速運動検出を含むピクチャタイプ選択は、粗い
運動推定ステージから出力される運動分析情報に基づいていてよい。しかしながら更なる
実施形態では、運動推定プロセスの一部を、現在のピクチャよりずっと先の入力ピクチャ
に対して実施することにより、速度制御及びピクチャタイプ選択を目的とした先読み機能
を実行してよい。
【０２６０】
粗い運動推定からの速度制御の利益
いくつかの実施形態では、粗い解像度の運動推定を、現在の画像及び基準画像の間引き
されたコピーに対して実施してよい。粗い解像度の運動推定プロセス（又はモジュール）
は、極めて大きな検索範囲に亘る完全検索アルゴリズムを効果的に支援でき、これにより
、粗い運動ベクトル及び潜在的な推測変数の性能指数又はメトリックが得られる。粗い運
動推定プロセスの２つの側面、即ち：再構成サンプルではなく、基準ピクチャに関するソ
ースサンプルを使用し得ること；完全な解像度の運動推定を開始する前に全フレームに亘
ってプロセスの機能（例えば処理）を完了し得ることが、特に重要となり得る。
【０２６１】
これら２つの事実は、粗い運動推定プロセスを用いて先読み機能を実現できることを意
味する。従って予測の性能指数を用いて、速度制御機構の必要に応じて、将来のピクチャ
のサイズを予測できる。いくつかの実施形態では、これをピクチャタイプ選択のためにも
使用してよい。良好でない予測の数が多い場合、これは一般に、現在のピクチャが基準ピ
クチャとは異なるシーンであること、及びイントラ（モード）とするべきものであること
を意味する。良好でない予測の数が中程度である場合、これは高速運動を含むシーンを表
すことがあり、この場合ＢピクチャをＰピクチャに置き換えるべきである。
【０２６２】
従っていくつかの実施形態では、既に説明した図１３に示すように、速度制御構成要素
を粗い運動推定ステージに統合してよい。一実施形態では、粗い運動推定は再構成画像サ
ンプルに依存するものではなくてよく、従ってパイプライン型とすることができ、将来の
ピクチャに対して作用できる。更なる実施形態では、ピクチャタイプ選択は、粗い運動推
定において計算した予測性能指数に基づくものであってよい。更にいくつかの実施形態で
は、ピクチャサイズ予測は、粗い運動推定において計算した予測性能指数に基づくもので
あってよい。更なる実施形態では、完全な解像度の運動推定から得られる予測性能指数を
、ｑｓｔｅｐ選択のためのマクロブロックモデルの一部として使用してよい。
【０２６３】
バッファモデル
上述のように、いくつかの実施形態では、速度制御システムはデコーダのコード化ピク
チャバッファのモデル（即ちバッファモデル）を含んでよく、これにより、符号化ビット
ストリームがプレイバック時にバッファに対してオーバフロー又はアンダフローしないこ
とを保証する。このバッファモデルを速度制御機構が使用して、現在のピクチャ及び将来
のピクチャを符号化した後の更なる占有量を予測してよい。
【０２６４】
従って例えば各出力ピクチャに関して、上記モデルは、デコーダのコード化ピクチャバ
ッファへの、コード化ピクチャの最初のビットの初期到達時間及び最後のビットの最終到
達時間を予測してよい。伝送の速度は最大ビットレートとして特定でき、これは固定ビッ
トレート（ｃｏｎｓｔａｎｔ  ｂｉｔ  ｒａｔｅ：ＣＢＲ）符号化に関する標的ビットレ
ートと同一であってよく、また可変ビットレート（ｖａｒｉａｂｌｅ  ｂｉｔ  ｒａｔｅ
：ＶＢＲ）符号化に関してはこれより大きくてよい。
【０２６５】
図１６Ａ、１６Ｂはそれぞれ、理想的な場合及び実際のピクチャサイズが即座には利用
可能でない場合における、バッファモデル更新プロセスを示す。
【０２６６】
いくつかの実施形態では、バッファモデルの動作は、全てのコード化ピクチャのサイズ
を用いた内部状態の更新を必要とする場合があり、その後速度制御機構を次のピクチャに
適用できる。この特徴は図１６Ａに示されており、ここではビデオシーケンス内の各ピク
チャに関して、１６０５において、順序が前のピクチャの実際のサイズを受信し、１６１
０においてバッファモデル状態が更新される。しかしながら、正確なピクチャサイズはエ
ンコーダのエントロピーコード化ステージ（例えばＣＡＢＡＣ）において計算でき、順序
が前のピクチャのサイズは、エンコーダのパイプライン型の実装形態により、即座には利
用できないことに留意されたい。
【０２６７】
データ従属性タイミングの問題を解決するために、コード化ピクチャサイズの暫定値を
、全マクロブロックに関する量子化係数の値に基づいて、運動ベクトルの予測ビット費用
及びコード化モード情報と共に使用してよい。調整因子を適用することによって、エント
ロピーコード化ステージ及びこの調整因子の追加の低減効果を説明できる。修正されたプ
ロセスの一実施形態を図１６Ｂに示し、ここではビデオシーケンス内の各ピクチャに関し
て、１６２０において、順序が前のピクチャの暫定サイズを受信し、１６２５においてこ
れに従ってバッファモデル状態が更新され、その後１６３０において、（１つ又は複数）
の順序が前のピクチャの実際のサイズを受信できる。これに応答して、１６３５において
バッファモデル状態の（１つ又は複数の）補正を実施してよい。
【０２６８】
バッファモデルは、暫定ピクチャサイズ値に基づく速度制御機構に必要な占有量情報を
計算する。正確なピクチャサイズ値を後の時点で利用できる場合、バッファモデルは、暫
定ピクチャサイズと実際のピクチャサイズとの間の差に対して更に調整される。
【０２６９】
いくつかの実施形態では、バッファモデルに関する精度要件は極めて高いものであり得
る。例えば、全ての単一の出力ビットを最終的に説明し、かつ無限に長い符号化時間に亘
ってエラーが蓄積されないようにする必要があり得る。後に得られる正確な情報を用いて
、例えばピクチャサイズの初期推定を補正する上述の方法は、上記要件を満たすのに十分
であり得る。
【０２７０】
別の実施形態では、バッファ状態は、ビットストリーム中の全ての出力ビットの合計に
よって可変である状態を含んでよい。ライブイベント用等の長時間の符号化セッションを
支援でき、従って上記合計は、関連のあるデータタイプ（例えば３２ビット整数）におい
て記憶できる最大値を超える場合がある。従ってバッファモデルは、実行中に上記合計値
を精度の損失なしに再初期化して、この値をある範囲内、例えば３２ビット整数の範囲内
に維持するための機構を含んでよい。
【０２７１】
従っていくつかの実施形態では、デコーダバッファモデルは、各ピクチャに関して、コ
ード化ピクチャファイルの初期推定を用いて更新でき、後に正確なコード化ピクチャサイ
ズが利用可能となった場合に更に更新できる。更に、更なる実施形態では、実行中に出力
ビット合計値を精度の損失なしに再初期化して、この値をある範囲内、例えば３２ビット
整数の範囲内に維持するための機構を設けてよい。
【０２７２】
速度制御機構
いくつかの実施形態では、出力ビットストリーム中のピクチャ毎のビット数は、そのピ
クチャに関するコード化決定の大半が行われる前に選択されるラムダの値の結果であり得
る。上記ラムダ値は、画像内で、ピクチャ間で及びシーン毎に変動する画像複雑性による
、ビデオシーケンスの動的な性質を原因として、符号化中に調整してよい。
【０２７３】
一実施形態では、上記調整プロセスへの入力は以下を含んでよい：
１．調整前のラムダの値、ラムダ値の履歴；
２．バッファモデルが提供する現在のデコーダバッファ占有量；
３．先読みウィンドウ内における現在のピクチャ及び将来のピクチャに関するピクチャ
レベルイントラ複雑性及び運動分析情報；
４．ピクチャタイプ選択；並びに
５．ピクチャタイプに応じた、ピクチャのコード化サイズに関する履歴情報。
【０２７４】
二次離散時間フィードバック制御システムにおいてこれらの入力を使用して、オーバフ
ロー又はアンダフローを生成しないバッファ占有量の予測と共に調整されたラムダ値が得
られる。制御計算の一部は、これらの入力に基づいて将来のピクチャサイズを予測するこ
とを含む。実際のＱＰ値は、このピクチャレベル速度制御機構によって上述の適応量子化
手順において計算できないことに留意されたい。
【０２７５】
本フィードバック制御システムの主たる目標は、バッファコンプライアンスの維持に必
要なラムダの最小の調整を行い、所定の標的ビットレートに関して最も（又は最適な）一
貫した知覚品質を得ることであってよい。従っていくつかの実施形態では、様々な実装及
び計算を用いて、上述のように入力データに応じてラムダを調整してよい。
【０２７６】
より一般的には、いくつかの実施形態では、入力ビデオストリームを受信してよい。ラ
グランジュ乗数ラムダを入力ビデオストリームの複数のピクチャそれぞれに関して計算し
てよい。出力ビデオストリームに関するビットレートは、入力ビデオストリーム及び複数
のピクチャそれぞれに関するラムダに基づいて動的に制御してよい。一実施形態では、ラ
ムダに関する１つの値を、各ピクチャにおける符号化決定全てに使用してよく、その後ピ
クチャ間の速度制御のための必要に応じて、これを調整してよい。
【０２７７】
ネットワークエッジトランスコーダ
ネットワークエッジトランスコーダの概念は、計算フットプリントが低減されたエンコ
ーダのバージョンである。その目標は、高品質の圧縮ビデオ出力を、最小の電力消費及び
自立型エンコーダよりも高いチャネル密度で、リアルタイムで生成することである。ネッ
トワークエッジトランスコーダは一般にこれを、標的出力と同一の解像度及びフレームレ
ートを既に有するもののビットレートが標的出力より高い圧縮ビデオ基本ストリームを入
力として使用することにより達成する。いくつかの実施形態では、これにより、ネットワ
ークエッジトランスコーダは粗い運動推定ステージを省略できる。
【０２７８】
図１７は、粗い運動推定におけるイントラ複雑性分析及び運動分析が、入力ビットスト
リームの過去の符号化によって行われた決定及びその結果をデータとして利用する入力ビ
ットストリーム分析に置き換えられた、例示的なネットワークエッジトランスコーダ（部
分、例えば前半）を示す。なおこのネットワークエッジトランスコーダの後半は、図１２
に示すような従来の圧縮ビデオエンコーダと同様であってよく、従って簡潔にするために
ここで再び提示しない。
【０２７９】
図１７に示すように、入力ビットストリーム復号化プロセス（又はモジュール）１７１
０は、入力として入力ビットストリームを受信してよく、バッファＡ（現在のピクチャの
ルマ及びクロマサンプル）に出力を提供してよい。またこれも図示したように、入力ビッ
トストリーム分析プロセス（又はモジュール）１７１５もまた入力として入力ビットスト
リームを受信して、バッファＩ（粗い運動ベクトル）、バッファＪ（イントラ複雑性分析
結果）及びバッファＫ（運動分析結果）に出力を提供してよい。ピクチャタイプ選択プロ
セス（又はモジュール）は、バッファＪ（イントラ複雑性分析結果）及びバッファＫ（運
動分析結果）から入力を受信してよく、運動推定精密化プロセス（又はモジュール）に出
力（ピクチャタイプ）を提供してよい。速度制御機構もまた、バッファＪ（イントラ複雑
性分析結果）及びバッファＫ（運動分析結果）から、並びにバッファモデルから入力を受
信してよく、図示したように、運動推定精密化プロセス（又はモジュール）及び（例えば
図１９の）変換ステージに出力（ラムダ）を提供してよい。最後に、運動推定精密化プロ
セスは、バッファＡ（現在のピクチャのルマ及びクロマサンプル）から、バッファＩ（粗
い運動ベクトル）から、バッファＤ（運動推定精密化のための再構成サンプル）から、ピ
クチャタイプ選択プロセス（ピクチャタイプ）から、及び速度制御機構（ラムダ）から入
力を受信してよく、バッファＢ（運動ベクトル及び予測サンプル）及びバッファＣ（イン
トラ複雑性及びマクロブロック毎の運動分析）に出力を提供してよい。
【０２８０】
なお、いくつかの実施形態では、ネットワークエッジトランスコーダは、自立型エンコ
ーダと同一（又は同様）の変換コード化及び速度制御システムを実装してよいが、速度制
御に必要な運動分析及びイントラ複雑性分析を得るために、入力ビットストリームに含ま
れる量子化係数からの情報を使用してよい。これにより、分析のために粗い運動推定ステ
ージを使用する自立型エンコーダから得られるものと比べて、使用されるＱＰの値に関す
る速度及び歪みのより正確な評価を得ることができる。いくつかの実施形態では、上記情
報を、追加のイントラ複雑性分析、及びラムダの現在の値に応じて各再コード化マクロブ
ロックを再量子化するための係数のリストと共に用いてよい。最後のリアルタイム符号化
ステップの計算フットプリントが自立型エンコーダよりも小さくなり得るにもかかわらず
、上記効果及び出力品質はツーパス方式のエンコーダと同一（又は同様）となり得る。
【０２８１】
従っていくつかの実施形態では、本明細書に開示する技術による速度制御構成要素は、
図１７に示すように、上記ネットワークエッジトランスコーダの概念に組み込んでよい。
【０２８２】
より具体的には、いくつかの実施形態では、ネットワークエッジトランスコーダ構成上
において、速度制御により、入力ビットストリームに含まれる量子化係数及び他のコード
化モード情報から、高品質な運動分析及びイントラ複雑性分析メトリクスが得られる。
【０２８３】
分割エンコーダ構成
更なる実施形態では、本明細書に記載の速度制御アルゴリズム又は技術を分割エンコー
ダ構成に適用してもよい。分割エンコーダ構成では、符号化及び速度制御のための処理及
び分析の殆どを、エンコーダの第１の部分において実施してよい。そして、運動分析、粗
い運動ベクトル及び／又はイントラ複雑性分析を含むがこれらに限定されない、上記第１
の部分からの結果を、コンテンツに関する分析データの中間ストリームに記憶してよい。
データの中間ストリームは、適合性圧縮ビデオ基本ストリーム及び追加の分析データを含
んでよいか、又はビデオコンテンツの符号化を完了するために必要な全ての情報を含有す
る非標準データフォーマットであってよい。続いてエンコーダの第２の部分は、上記中間
ストリームを入力として使用して、符号化プロセスを完了してよい。
【０２８４】
ネットワークエッジトランスコーダと同様、分割エンコーダ構成の主たる目標は、符号
化プロセスの第２の部分に関して可能な計算、物理的サイズ及び電力フットプリントを最
小とすることであってよい。従ってこの第２の部分は、ネットワークエッジデバイスとし
ての使用に最適化でき、全圧縮ビデオエンコーダよりも高いチャネル密度で配置できる。
エンコーダの第２の部分はまた、ストリーム特異的ビットレート又はブランド設定等のス
トリーム特異的処理も含んでよく、これにより、独立した出力ストリームを１つ又は複数
の特定の受信器に対して個別化できる。
【０２８５】
一実施形態では、上記エンコーダのパーティション分割により、符号化プロセスの第１
の部分を１回実施してその結果を記憶できる。その後、符号化プロセスの第２の部分を、
多数の受信器のための必要に応じて多数回実施してよく、これらは全て異なる符号化パラ
メータ又はストリーム個別化を用いる。ある独立した出力ストリーム又は受信器に特異的
ないずれの処理は、符号化プロセスの第２の部分に限定されていてよい。
【０２８６】
従っていくつかの実施形態では、エンコーダの分割構成は、エンコーダの第２の部分に
関して計算、物理的サイズ及び／又は電力フットプリントを最小とすることを目的として
使用してよく、これによりネットワークエッジデバイスとしての使用に最適化される。様
々な実施形態では、第１の部分と第２の部分との間におけるエンコーダのパーティション
分割は、いずれの様々な方法で行ってよい。換言すると、関連する構成要素、プロセス又
はモジュールは、２つのパーティションの間にいずれの所望の方法で分散させることがで
きる。更に、一実施形態では、符号化プロセスの第１の部分の結果は、第２の部分が後続
の操作において符号化プロセスを完了するために必要とする全ての情報を含有する、中間
ストリームフォーマットに記憶してよい。更に、いくつかの実施形態では、エンコーダは
２つの部分にパーティション分割してよく、ここで独立した出力ビットストリーム又は受
信器に特異的ないずれの処理は第２の部分において実施される。
【０２８７】
本明細書に記載の技術及びシステムは、必要に応じて、携帯電話、コードレス電話、テ
レビ、映画上映、コンピュータ、ケーブルモデム、ケーブルセットトップボックス及びそ
の他を含む、いずれの様々な種類の製品又は用途において利用してよい。本明細書で開示
した技術は更に、必要に応じてソフトウェア及び／又はハードウェアによって実装してよ
い。
【０２８８】
以上の実施形態についてはかなり詳細に説明してきたが、以上の開示を完全に理解すれ
ば、当業者には多数の変形例及び修正例が明らかとなるであろう。上述の実施形態は実装
の非限定的な例にすぎないことも強調しておく。以下の請求項は、このような変形例及び
修正例の全てを包含するものとして理解されることを意図したものである。
【図１】
2019075825.tif 000003
【図２】
2019075825.tif 000004
【図３】
2019075825.tif 000005
【図４】
2019075825.tif 000006
【図５】
2019075825.tif 000007
【図６】
2019075825.tif 000008
【図７】
2019075825.tif 000009
【図７Ｂ】
2019075825.tif 000010
【図７Ｃ】
2019075825.tif 000011
【図７Ｄ】
2019075825.tif 000012
【図８】
2019075825.tif 000013
【図９】
2019075825.tif 000014
【図１０】
2019075825.tif 000015
【図１１】
2019075825.tif 000016
【図１２】
2019075825.tif 000017
【図１３】
2019075825.tif 000018
【図１４】
2019075825.tif 000019
【図１５】
2019075825.tif 000020
【図１６】
2019075825.tif 000021
【図１７】
2019075825.tif 000022