(57)【特許請求の範囲】
【請求項１】
ビデオプロセッサにおいて、デコーダから受信した生ビデオを処理して処理された生ビデオを生成することと、
前記ビデオプロセッサにおいて分散を計算することと、
前記処理された生ビデオをエンコーダに送信することと、
前記エンコーダに前記分散を送信して符号化プロセスを容易にすることと、
前記ビデオプロセッサにおいて、前記エンコーダから前記符号化プロセスに使用される量子化パラメータに応じた１つまたは複数の制御信号を受信することと、
前記１つまたは複数の制御信号に基づき前記ビデオプロセッサの前記処理に関する動作を変更することと
を含み、
前記生ビデオはインターレースされたフレームを含み、
前記分散は、
現フレームのトップピクチャと前フレームのトップピクチャとの間の分散、
前記現フレームのボトムピクチャと前記前フレームのボトムピクチャとの間の分散、
前記現フレームの前記トップピクチャと前記前フレームの前記ボトムピクチャとの間の分散、および
前記現フレームの前記ボトムピクチャと前記前フレームのトップピクチャとの間の分散
の１つまたは複数を含む、方法。
【請求項２】
前記生ビデオの前記処理はデブロック処理および歪みの修正の少なくとも１つを含む、請求項１に記載の方法。
【請求項３】
前記生ビデオの前記処理は統計学的画像解析およびピクセルベース画像解析の少なくとも１つを含む、請求項１または請求項２に記載の方法。
【請求項４】
前記生ビデオの前記処理は、
デインターレース、
インバーステレシネ変換、
ノイズ除去、
カラーバランス、
フレーム変換、および
スケーリング
の少なくとも１つを含む、請求項１から請求項３のいずれか１つに記載の方法。
【請求項５】
前記生ビデオはインターレースされたフレームを含み、かつ前記分散は、
前フレームのトップピクチャの分散、
前記前フレームのボトムピクチャの分散、
現フレームのトップピクチャの分散、および
現フレームのボトムピクチャの分散
の１つまたは複数をさらに含む、請求項１から請求項４のいずれか１つに記載の方法。
【請求項６】
前記生ビデオはインターレースされたフレームを含み、かつ前記分散は、
前フレームのトップピクチャと前記前フレームのボトムピクチャとの間の分散、および
現フレームのトップピクチャと現フレームのボトムピクチャとの間の分散
のうちの少なくとも１つをさらに含む、請求項１から請求項５のいずれか１つに記載の方法。
【請求項７】
前記ビデオプロセッサの前記処理に関する動作を変更することは、前記１つまたは制御信号に応じて、ノイズ除去または平滑化の量を調節することを含む、
請求項１から請求項６のいずれか１つに記載の方法。
【請求項８】
ビデオプロセッサ内のプログラム可能なプロセッサと、
前記プログラム可能なプロセッサと通信するメモリと
を備え、
前記メモリは、前記プログラム可能なプロセッサに、
デコーダから受信した生ビデオを処理して、処理された生ビデオを生成すること、
分散を計算すること、
前記処理された生ビデオをエンコーダに送信すること、
前記エンコーダに前記分散を送信して符号化プロセスを容易にすること、
前記エンコーダから前記符号化プロセスに使用される量子化パラメータに応じた１つまたは複数の制御信号を受信すること、
前記１つまたは複数の制御信号に基づき前記ビデオプロセッサの前記処理に関する動作を変更することを指示するための複数の処理命令を記憶し、
前記生ビデオはインターレースされたフレームを含み、
前記分散は、
現フレームのトップピクチャと前フレームのトップピクチャとの間の分散、
前記現フレームのボトムピクチャと前記前フレームのボトムピクチャとの間の分散、
前記現フレームの前記トップピクチャと前記前フレームの前記ボトムピクチャとの間の分散、および
前記現フレームの前記ボトムピクチャと前記前フレームのトップピクチャとの間の分散
の１つまたは複数を含む、システム。
【請求項９】
前記生ビデオの前記処理はデブロック処理および歪みの修正の少なくとも１つを含む、請求項８に記載のシステム。
【請求項１０】
生ビデオの前記処理は統計学的画像解析およびピクセルベース画像解析の少なくとも１つを含む、請求項８または請求項９に記載のシステム。
【請求項１１】
前記生ビデオの前記処理は、
デインターレース、
インバーステレシネ変換、
ノイズ除去、
カラーバランス、
フレーム変換、および
スケーリング
の少なくとも１つを含む、請求項８から請求項１０のいずれか１つに記載のシステム。
【請求項１２】
前記生ビデオはインターレースされたフレームを含み、かつ前記分散は、
前フレームのトップピクチャの分散、
前記前フレームのボトムピクチャの分散、
現フレームのトップピクチャの分散、および
現フレームのボトムピクチャの分散
の１つまたは複数をさらに含む、請求項８から請求項１１のいずれか１つに記載のシステム。
【請求項１３】
前記生ビデオはインターレースされたフレームを含み、かつ前記分散は、
前フレームのトップピクチャと前記前フレームのボトムピクチャとの間の分散、および
現フレームのトップピクチャと現フレームのボトムピクチャとの間の分散
のうちの少なくとも１つをさらに含む、請求項８から請求項１２のいずれか１つに記載のシステム。
【請求項１４】
前記ビデオプロセッサの前記処理に関する動作を変更することは、前記１つまたは複数の制御信号に応じて、ノイズ除去または平滑化の量を調節することを含む、請求項８から請求項１３のいずれか１つに記載のシステム。
【請求項１５】
コンピュータに、
デコーダから受信した生ビデオを処理し、処理された生ビデオを生成する段階と、
１つまたは複数の分散を計算する段階と、
前記処理された生ビデオをエンコーダに送信する段階と、
前記１つまたは複数の分散を前記エンコーダに送信して、符号化プロセスを容易する段階と、
前記エンコーダから前記符号化プロセスに使用される量子化パラメータに応じた１つまたは複数の制御信号を受信する段階と、
前記１つまたは複数の制御信号に基づき前記コンピュータの前記処理に関する動作を変更する段階とを実行させ、
前記生ビデオはインターレースされたフレームを含み、
前記１または複数の分散は、
現フレームのトップピクチャと前フレームのトップピクチャとの間の分散、
前記現フレームのボトムピクチャと前記前フレームのボトムピクチャとの間の分散、
前記現フレームの前記トップピクチャと前記前フレームの前記ボトムピクチャとの間の分散、および
前記現フレームの前記ボトムピクチャと前記前フレームのトップピクチャとの間の分散
の１つまたは複数を含む、プログラム。
【請求項１６】
前記生ビデオの前記処理はデブロック処理および歪みの修正の少なくとも１つを含む、請求項１５に記載のプログラム。
【請求項１７】
生ビデオの前記処理は統計学的画像解析およびピクセルベース画像解析の少なくとも１つを含む、請求項１５または請求項１６に記載のプログラム。
【請求項１８】
生ビデオの前記処理は、
デインターレース、
インバーステレシネ変換、
ノイズ除去、
カラーバランス、
フレーム変換、および
スケーリング
の少なくとも１つを含む、請求項１５から請求項１７のいずれか１つに記載のプログラム。
【請求項１９】
前記生ビデオはインターレースされたフレームを含み、かつ前記１または複数の分散は、
前フレームのトップピクチャの分散、
前記前フレームのボトムピクチャの分散、
現フレームのトップピクチャの分散、および
現フレームのボトムピクチャの分散
の１つまたは複数をさらに含む、請求項１５から請求項１８のいずれか１つに記載のプログラム。
【請求項２０】
前記生ビデオはインターレースされたフレームを含み、かつ前記１または複数の分散は、
前フレームのトップピクチャと前記前フレームのボトムピクチャとの間の分散、および
現フレームのトップピクチャと現フレームのボトムピクチャとの間の分散
のうちの少なくとも１つをさらに含む、請求項１５から請求項１９のいずれか１つに記載のプログラム。
【請求項２１】
前記コンピュータの前記処理に関する動作を変更する段階は、前記１つまたは複数の制御信号に応じて、ノイズ除去または平滑化の量を調節することを含む、請求項１５から請求項２０のいずれか１つに記載のプログラム。
【請求項２２】
請求項１５から請求項２１のいずれか１つに記載のプログラムを格納するコンピュータ可読記録媒体。
【請求項２３】
エンコーダ内のプログラム可能なプロセッサと、
前記プログラム可能なプロセッサと通信するメモリと
を備え、
前記メモリは前記プロセッサに、
ビデオプロセッサにより計算された１つまたは複数の分散を受信すること、
前記１つまたは複数の分散を用いて前記ビデオプロセッサにより処理された生ビデオの符号化を行うこと、および
前記ビデオプロセッサに前記ビデオプロセッサの処理を前記符号化に使用される量子化パラメータに応じて変更するように命令する１または複数の制御信号を生成すること、
を指示するための複数の処理命令を記憶し、
前記処理された生ビデオはインターレースされたフレームを含み、
前記１または複数の分散は、
現フレームのトップピクチャと前フレームのトップピクチャとの間の分散、
前記現フレームのボトムピクチャと前記前フレームのボトムピクチャとの間の分散
前記現フレームの前記トップピクチャと前記前フレームの前記ボトムピクチャとの間の分散、および
前記現フレームの前記ボトムピクチャと前記前フレームのトップピクチャとの間の分散
の１つまたは複数を含む、システム。
【請求項２４】
前記ビデオプロセッサの処理の変更は、前記量子化パラメータに応じたノイズ除去または平滑化の量の調整を含む、請求項２３に記載のシステム。
【請求項２５】
前記処理された生ビデオはインターレースされたフレームを含み、かつ前記１または複数の分散は、
前フレームのトップピクチャの分散、
前記前フレームのボトムピクチャの分散、
現フレームのトップピクチャの分散、および
現フレームのボトムピクチャの分散
の１つまたは複数をさらに含む、請求項２３または請求項２４に記載のシステム。
【請求項２６】
前記処理された生ビデオはインターレースされたフレームを含み、かつ前記１または複数の分散は、
前フレームのトップピクチャと前記前フレームのボトムピクチャとの間の分散、および
現フレームのトップピクチャと現フレームのボトムピクチャとの間の分散
のうちの少なくとも１つをさらに含む、請求項２３から請求項２５のいずれか１つに記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
従来のビデオトランスコーディング方法には、３つの主な要素、すなわちデコーダ、ビデオプロセッサ（エンハンサと呼ばれることもある）およびエンコーダが存在する。デコーダは、圧縮されたビデオデータを受信し、復号すると共にデブロック処理および歪みの修正などの他の動作を行い、生ビデオを出力することができる。ビデオプロセッサは、この生ビデオを受信し、種々の動作、たとえばデインターレース、逆テレシネ、フレームレート変換、ノイズ除去および再スケーリングを行うことができる。次いでビデオプロセッサの出力は、追加動作、たとえば統計学的画像解析およびピクセルベース画像解析を行うことができ、かつ実際の符号化を行うことができるエンコーダに送信され得る。得られた出力は、トランスコードされたビデオデータである。エンコーダおよびデコーダは、本質的に独立した要素と見なすことができる。
【０００２】
しかしながら、この配置には非効率性が存在する。エンコーダがエンコーダに入手可能な追加情報を有する場合、トランスコーディングをより迅速に行うことができる。たとえば、エンコーダが、現ビデオフレームがテレシネ変換による前フレームの繰り返しであることが分かっている場合、現フレームの符号化を省略することができる。エンコーダはさらに実際のピクチャの提示時刻を調整し、より正確な動き予測をもたらすこともできる。
【０００３】
さらに、符号化プロセスにはビデオ処理分散も有用である場合があるが、必ずしもエンコーダに入手可能であるとは限らない。エンコーダはそれ自体で、こうした分散を生成しなければならない。しかしながら、この動作は、エンコーダにとって計算量が多い場合がある。ある種の時間分散など特定の分散では、双予測フレーム（Ｂ−フレーム）のシャフリング（ｓｈｕｆｆｌｉｎｇ）のため、エンコーダは、分散をまったく生成することができないことがある。
【０００４】
さらに従来のアーキテクチャでは、ビデオプロセッサはエンコーダからフィードバックを受信しない。エンコーダは、たとえば、ビットレートの変更またはアプリケーション要求によりその構成を調整しなければならないことがあるが、ビデオプロセッサはエンコーダにおけるこうした変化を認識していないため、ビデオプロセッサは適合することができない。たとえば、エンコーダをそのデータ圧縮レベルを高めるように再構成する場合、量子化パラメータが大きくなる。理想的には、ビデオプロセッサはそのノイズ除去レベルを高めて、より大きな量子化パラメータに適合すると考えられる。しかしながら、上記のアーキテクチャの場合、ビデオプロセッサはデータ圧縮レベルの増大および量子化パラメータの増大を認識しない。その結果、ビデオプロセッサは再構成されたエンコーダに適合できず、トランスコーディングプロセス全体が非効率的になる。
【図面の簡単な説明】
【０００５】
【図１】従来型のビデオトランスコーディングシステムの動作を図示するブロック図である。
【図２】実施形態によるビデオトランスコーディングシステムの動作を図示するブロック図である。
【図３】実施形態によるビデオトランスコーディングシステムの処理を図示するフローチャートである。
【図４】実施形態によるエンコーダにおける制御信号生成を図示するフローチャートである。
【図５】実施形態によるビデオプロセッサのソフトウェアまたはファームウェアの実施形態を図示するブロック図である。
【図６】実施形態によるエンコーダのソフトウェアまたはファームウェアの実施形態を図示するブロック図である。
【発明を実施するための形態】
【０００６】
各図において、参照番号の左端の数字（単数または複数）は、その参照番号が最初に現れた図面を示す。
【０００７】
次に図面を参照しながら実施形態について記載するが、同様の参照番号は、要素が同一であるかまたは機能上同等であることを示す。特定の構成および配置を検討するが、これは、説明のみを目的としてなされるものであることを理解すべきである。当業者であれば、本記載の精神および範囲を逸脱しない範囲で他の構成および配置を使用してもよいことを理解するであろう。また、これは、本明細書に記載されるもの以外の種々の他のシステムおよびアプリケーションにおいて利用してもよいことが当業者には明らかにあるであろう。
【０００８】
本明細書に開示されるのは、追加データをビデオプロセッサからエンコーダに供給することにより、そして制御信号をエンコーダからビデオプロセッサに戻すことによりビデオトランスコーディングシステムの効率を高める方法、システムおよびコンピュータプログラム製品である。ビデオプロセッサはエンコーダに分散を供給するが、こうした値は、本来ならばエンコーダには入手不可能と考えられるか、あるいは、エンコーダが単独で生成するには計算量が多いと考えられる。次いでエンコーダはこうした分散を使用して、符号化された圧縮ビデオデータをより効率的に生成することができる。エンコーダはさらにビデオプロセッサが使用する制御信号を生成することもでき、ビデオプロセッサがエンコーダの再構成に適合し、それによりトランスコード動作の効率を向上させることを可能にする。
【０００９】
図１は、従来型のビデオトランスコーディングシステムを図示する。システム１００では、圧縮されたビデオデータ１１０を受信し、デコーダ１２０に入力することができる。図示したシステムの場合、デコーダ１２０は、デブロック処理および歪みの修正を含む追加の機能性を備える。次いでデコーダ１２０は、復号された生ビデオ１３０をエンハンサとも呼ばれるビデオプロセッサ１４０に出力することができる。ビデオプロセッサ１４０は、多くの機能を行うことができ、その一部を示す。これらの機能として、デインターレース、インバーステレシネ変換、ノイズ除去、カラーバランス、フレーム変換およびスケーリングを挙げることができる。次いでビデオプロセッサ１４０は、処理された生ビデオ１５０を出力することができる。処理された生ビデオ１５０は、エンコーダ１６０に渡すことができる。図示したシステムの場合、エンコーダ１６０は、統計学的画像解析およびピクセルベース画像解析などの追加の機能性を備える。統計学的画像解析では、画像解析は、収集されたスキャン統計量に基づくものでもよい。ピクセルベース画像解析では、画像解析は、ピクセルレベルで行われてもよい。最終出力は、符号化された圧縮ビデオ１７０であってもよい。
【００１０】
図２は、実施形態によるビデオトランスコーディングシステム２００を図示する。システム２００は、圧縮されたビデオデータ２１０を受信し、デコーダ２２０に入力することができる。図示したシステムの場合、デコーダ２２０は、図１のデコーダ１２０の追加の機能性を備えていない。特に、デブロック処理および歪みの修正は、代わりにビデオプロセッサ２４０で行うことができる。次にデコーダ２２０は、復号された生ビデオ２３０をビデオプロセッサ２４０に出力することができる。ビデオプロセッサ２４０は、多くの機能を行うことができ、その一部を示す。これらの機能として、デインターレース、インバーステレシネ変換、ノイズ除去、カラーバランス、フレーム変換およびスケーリングのほか、歪みの修正およびデブロック処理を挙げることができる。図示した実施形態では、ビデオプロセッサ２４０はさらに、図１のシステムではエンコーダ１６０により行われた機能である統計学的画像解析およびピクセルベース画像解析を行うこともできる。次いでビデオプロセッサ２４０は、処理された生ビデオ２５０をエンコーダ２６０に出力することができる。
【００１１】
図示した実施形態では、ビデオプロセッサ２４０はさらに１つまたは複数の分散２４５を生成することもできる。これらは、エンコーダ２６０に供給され、その要素の動作を容易にすることができる。分散２４５の例は以下に示す。さらに特定の状況下では、エンコーダ２６０は、再構成する必要がある場合がある。図示した実施形態では、これにより、ビデオプロセッサ２４０にフィードバックされ得る１つまたは複数の制御信号２６５を形成することができる。ビデオプロセッサ２４０は、再構成されたエンコーダ２６０に適合するように、制御信号２６５を使用してその処理の調整を開始することができる。ビデオプロセッサ２４０によるこうしたエンコーダ２６０の再構成および制御信号２６５の使用については、以下により詳細に記載する。システム２００の最終出力は、符号化された圧縮ビデオ２７０であってもよい。
【００１２】
実施形態による、本明細書に記載のシステムの動作を図３に図示する。３１０では、圧縮されたビデオデータをデコーダにより復号し、生ビデオデータを得ることができる。３２０では、生ビデオデータをビデオプロセッサで処理することができる。図２に示すように、ビデオ処理は、デコーダから受信した生ビデオに行われる多くの動作、以下に限定されるものではないが、歪みの修正、デブロック処理、ノイズ除去、統計学的画像解析およびピクセルベース画像解析、デインターレース、インバーステレシネ変換、カラーバランス、フレーム変換ならびにスケーリングを含んでもよい。
【００１３】
３３０では、ビデオプロセッサは１つまたは複数の分散を計算する。３４０では、ビデオプロセッサが、処理された生ビデオを出力してエンコーダに送信する。３５０では、ビデオプロセッサがこうした分散をエンコーダに送信する。エンコーダは、いくつかの方法で分散を使用してもよい。たとえば、局所分散を使用して考えられるマクロブロック（ＭＢ）のコードタイプの組を絞り込んでもよく、これにより探索時間を短くすることができる。これは、局所符号化を最適化しやすくすることができる。分散はまた、たとえばシーンチェンジまたはビデオコンテンツ切り替えを反映してもよい。こうした分散が分かると、エンコーダが複雑性の変化を導出することができる。分散はさらにエンコーダにおける量子化パラメータ（ＱＰ）の調整を容易にし、これがより正確なデータサイズおよびより適切なレート制御を可能にすることができる。
【００１４】
以下は、インターレースされたビデオおよびインバーステレシネビデオをトランスコードする実施形態において生成することができる分散である。これらの分散は、各ビデオフレームがインターレースされた２つのピクチャ、トップピクチャおよびボトムピクチャからなり得ることを想定している。トップピクチャは偶数ｙ座標を有してもよく、ボトムピクチャは奇数ｙ座標を有してもよい。各分散は、２つの連続したビデオフレーム、前フレームおよび現フレームの一方に関係しても、あるいは両方に関係してもよい。フレームの任意のブロック領域では、トップピクチャは、（ｘ、２ｙ）形式の（ｘ、ｙ）座標のピクセルを有してもよい。ブロックは、幅ｗおよび高さ２ｈを有してもよい。関数ｐｒｅｖおよびｃｕｒｒは、表記の座標でピクセル値を出力することができる。
【００１５】
前トップピクチャの分散は下記として計算することができる。
【００１６】
【数１】
0005948659.tif 000002
【００１７】
前ボトムピクチャの分散は下記として計算することができる。
【００１８】
【数２】
0005948659.tif 000003
【００１９】
現トップピクチャの分散は下記として計算することができる。
【００２０】
【数３】
0005948659.tif 000004
【００２１】
現ボトムピクチャの分散は下記として計算することができる。
【００２２】
【数４】
0005948659.tif 000005
【００２３】
トップピクチャ間の分散は下記として計算することができる。
【００２４】
【数５】
0005948659.tif 000006
【００２５】
ボトムピクチャ間の分散は下記として計算することができる。
【００２６】
【数６】
0005948659.tif 000007
【００２７】
前トップピクチャと前ボトムピクチャとの間の分散は下記として計算することができる。
【００２８】
【数７】
0005948659.tif 000008
【００２９】
現トップピクチャと現ボトムピクチャとの間の分散は下記として計算することができる。
【００３０】
【数８】
0005948659.tif 000009
【００３１】
現トップピクチャと前ボトムピクチャとの間の分散は下記として計算することができる。
【００３２】
【数９】
0005948659.tif 000010
【００３３】
前トップピクチャと現ボトムピクチャとの間の分散は下記として計算することができる。
【００３４】
【数１０】
0005948659.tif 000011
【００３５】
分散はまた、インターレースしなくてもよいビデオのため生成してもよい。フレームピクチャの場合には、分散は以下の通り計算することができる。
【００３６】
【数１１】
0005948659.tif 000012
【００３７】
図３に戻ると、３６０では、処理された生ビデオの符号化を、ビデオプロセッサにより供給される分散（単数または複数）を用いてエンコーダで行うことができる。エンコーダの再構成は、符号化プロセス中に行うことができ、３７０で制御信号が生成される。こうした制御信号は３８０でビデオエンコーダに送り返し、３９０でビデオプロセッサを再構成することができる。たとえば、エンコーダにより使用される分散および符号化に使用されるＱＰ値に応じて、特定のビデオ処理動作が使用される程度を変化させることができる。たとえば、エンコーダにおいてデータ圧縮の量を増加させる場合、ＱＰを大きくしてもよい。この場合、ビデオプロセッサで行われるノイズ除去および／または平滑化の量を増加させることが望ましいと考えられる。これは、制御信号をエンコーダからビデオプロセッサに送信し、この制御信号がノイズ除去または平滑化の量を増加させるように機能することにより達成することができる。別の例では、フレーム間の動きがより大きい場合、ビデオプロセッサがより多くの不鮮明化を行うことが望ましい場合がある。不鮮明化の量は、エンコーダから受信する制御信号（単数または複数）に基づきビデオプロセッサにおいて変化させることができる。
【００３８】
図４に制御信号の生成（図３の３７０）をより詳細に図示する。この場合、４１０ではエンコーダにおいて刺激イベントが起こってもよい。たとえばアプリケーション要求を受信してもよいし、あるいはビットレートの変更を行ってもよい。その結果、４２０でエンコーダは再構成することができる。たとえば、ビットレートが増加する場合、エンコーダは、再構成してデータ圧縮を促進することができる。４３０では、制御信号が形成され、エンコーダの再構成に適合する形で処理の１つまたは複数の側面を変更するように、ビデオプロセッサに指示することができる。４４０では、制御信号をビデオプロセッサに出力することができる。
【００３９】
本明細書に開示された１つまたは複数の特徴は、ディスクリート回路および集積回路の論理、特定用途向け集積回路（ＡＳＩＣ）の論理ならびにマイクロコントローラを含むハードウェア、ソフトウェア、ファームウェアおよびこれらの組み合わせで実装することができ、さらにドメイン特定集積回路パッケージの一部として、あるいは集積回路パッケージの組み合わせとして実装してもよい。ソフトウェアという用語は、本明細書で使用する場合、コンピュータプログラムの論理を記憶させて、コンピュータシステムが本明細書に開示された１つまたは複数の特徴および／または特徴の組み合わせを実行させるコンピュータ読み取り可能な媒体を含むコンピュータプログラム製品をいう。コンピュータ読み取り可能な媒体は一時的でも、あるいは非一時的でもよい。一時的なコンピュータ読み取り可能な媒体の例として、高周波または導電体を介して、ローカルまたはワイドエリアネットワークを介して、あるいはインターネットなどのネットワークを介して伝送されるデジタル信号が挙げられる。非一時的なコンピュータ読み取り可能な媒体の例としては、コンパクトディスク、フラッシュメモリまたは他のデータ記憶装置が挙げられる。
【００４０】
実施形態による、ビデオプロセッサ２４０のソフトウェア実施形態を図５に図示する。図示したシステム５００は、上述のビデオプロセッサ機能性を実行する１つまたは複数のプログラム可能なプロセッサ（単数または複数）５２０を含んでもよい。システム５００は、メモリ５１０の本体をさらに含んでもよい。プログラム可能なプロセッサ（単数または複数）５２０は、中央処理装置（ＣＰＵ）および／またはグラフィックスプロセッシングユニット（ＧＰＵ）を含んでもよい。メモリ５１０は、コンピュータプログラムの論理５４０を記憶できる１つまたは複数のコンピュータ読み取り可能な媒体を含んでもよい。メモリ５１０は、ハードディスクおよびハードドライブ、コンパクトディスクなどの取り外し可能な媒体、読み出し専用メモリ（ＲＯＭ）もしくはランダムアクセスメモリ（ＲＡＭ）装置、または、たとえばこれらのいくつかの組み合わせとして実装してもよい。プログラム可能なプロセッサ（単数または複数）５２０およびメモリ５１０は、バスなどの当業者に公知のいくつかの技術のいずれかを用いて通信することができる。メモリ５１０に含まれるコンピュータプログラムの論理５４０は、プログラム可能なプロセッサ（単数または複数）５２０が読み出し実行することができる。また、まとめてＩ／Ｏ５３０として示す１つまたは複数のＩ／Ｏポートおよび／またはＩ／Ｏ装置は、プロセッサ（単数または複数）５２０およびメモリ５１０に連結されていてもよい。
【００４１】
図示した実施形態では、ビデオプロセッサのコンピュータプログラムの論理５４０は、上記に示したものなどの分散を計算する分散計算論理５５０を含んでもよい。次いでこれらの分散はエンコーダに渡してもよい。コンピュータプログラムの論理５４０は、エンコーダから制御信号を受信し、そうした信号に従いビデオプロセッサの動作の変更に携わることができる制御信号処理論理５６０をさらに含んでもよい。
【００４２】
実施形態による、エンコーダ２６０のソフトウェア実施形態を図６に図示する。図示したシステム６００は、上述のビデオプロセッサ機能性を実行する１つまたは複数のプログラム可能なプロセッサ（単数または複数）６２０を含んでもよい。システム６００は、メモリ６１０の本体をさらに含んでもよい。プログラム可能なプロセッサ（単数または複数）６２０は、中央処理装置（ＣＰＵ）および／またはグラフィックスプロセッシングユニット（ＧＰＵ）を含んでもよい。メモリ６１０は、コンピュータプログラムの論理６４０を記憶できる１つまたは複数のコンピュータ読み取り可能な媒体を含んでもよい。メモリ５１０のようにメモリ６１０は、ハードディスクおよびハードドライブ、コンパクトディスクなどの取り外し可能な媒体、読み出し専用メモリ（ＲＯＭ）もしくはランダムアクセスメモリ（ＲＡＭ）装置、または、たとえば、これらのいくつかの組み合わせとして実装することができる。プログラム可能なプロセッサ（単数または複数）６２０およびメモリ６１０は、バスなどの当業者に公知のいくつかの技術のいずれかを用いて通信することができる。メモリ６１０に含まれるコンピュータプログラムの論理６４０は、プログラム可能なプロセッサ（単数または複数）６２０が読み出し実行することができる。また、まとめてＩ／Ｏ６３０として示す１つまたは複数のＩ／Ｏポートおよび／またはＩ／Ｏ装置は、プロセッサ（単数または複数）６２０およびメモリ６１０に連結されていてもよい。
【００４３】
図６の実施形態では、ビデオプロセッサのコンピュータプログラムの論理６４０は、上記に示したものなど計算された分散をビデオプロセッサから受信する分散処理論理６５０を含んでもよい。次いで論理６５０は、符号化プロセスにおいて分散を使用することができる。コンピュータプログラムの論理６４０は、ビデオプロセッサに送信され得る制御信号の生成に携わることができる制御信号生成論理６６０をさらに含んでもよい。
【００４４】
他の実施形態では、上記のビデオプロセッサおよびエンコーダの両方の機能性に対応する論理を実行するプログラム可能なプロセッサが、単一で存在することがあることに留意されたい。
【００４５】
一実施形態では、システム５００および６００は、有線通信システム、無線通信システムまたは両方の組み合わせの一部として実装してもよい。一実施形態では、たとえば、システム５００および６００は、無線機能を有するモバイルコンピューティングデバイスで実装してもよい。モバイルコンピューティングデバイスとは、処理システム、および移動用電源または電力供給、たとえば１つまたは複数の電池を有する任意の装置をいうことができる。
【００４６】
モバイルコンピューティングデバイスの例として、ラップトップコンピュータ、ウルトラモバイルＰＣ、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、スマートフォン、ポケットベル（登録商標）、一方向ポケットベル（登録商標）、双方向ポケットベル（登録商標）、メッセージング装置、データ通信装置、ＭＥＤ、ＭＰ３プレーヤおよびその他を挙げることができる。
【００４７】
一実施形態では、たとえば、モバイルコンピューティングデバイスは、コンピュータアプリケーションのほか、音声通信および／またはデータ通信を実行することができるスマートフォンとして実装してもよい。例としてスマートフォンとして実装されたモバイルコンピューティングデバイスを用いて、いくつかの実施形態を記載することができるが、同様に他の無線モバイルコンピューティングデバイスを用いて他の実施形態を実装してもよいことが理解されよう。実施形態は、この文脈に限定されるものではない。
【００４８】
各方法およびシステムは、機能、特徴およびその関係を図示する機能的構成要素を用いて本明細書に開示されている。本明細書では、これらの機能的構成要素の境界の少なくとも一部は、説明の都合上、任意に画定されている。表記の機能およびその関係が適切に行われる限り、別の境界を画定してもよい。
【００４９】
本明細書には種々の実施形態が開示されているが、それらは限定としてではなく単に例示として提示したものであることを理解すべきである。本明細書に開示された方法およびシステムの精神および範囲を逸脱しない範囲で、実施形態の形式および細部に関する様々な変更が可能であることは、当業者には明らかにあるであろう。したがって、特許請求の範囲の広さおよび範囲は、本明細書に開示された例示的な実施形態のいずれにも限定されるべきものではない。
【図１】
0005948659.tif 000013
【図２】
0005948659.tif 000014
【図３】
0005948659.tif 000015
【図４】
0005948659.tif 000016
【図５】
0005948659.tif 000017
【図６】
0005948659.tif 000018