【手続補正書】
【提出日】令和2年10月26日(2020.10.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
段階を含むグラフィックスを生成するためのコンピュータで実現される方法であって、
段階は、
１つ以上のピクセルあたり（ｐｅｒ−ｐｉｘｅｌ）の動きベクトル（ｍｏｔｉｏｎ  ｖｅｃｔｏｒ）を生成する段階、
前記１つ以上のピクセルあたりの動きベクトルを１つ以上のブロックあたり（ｐｅｒ−ｂｌｏｃｋ）の動きベクトルに変換する段階、および
前記ブロックあたりの動きベクトルをビデオエンコードエンジンに注入する段階
を含み、
前記ビデオエンコードエンジンは、
前記１つ以上のブロックあたりの動きベクトルをエンコードされたビデオデータに変換する、方法。
【請求項２】
前記１つ以上のピクセルあたりの動きベクトルは、
変換の前に、速度バッファ（ｖｅｌｏｃｉｔｙ  ｂｕｆｆｅｒ）に格納される、
請求項１に記載の方法。
【請求項３】
前記１つ以上のピクセルあたりの動きベクトルの生成は、
ピクセルあたりの結果を取得するために、コンピュータシェーダ（ｃｏｍｐｕｔｅ  ｓｈａｄｅｒ）において、前記１つ以上のピクセルあたりの動きベクトルをカメラ速度（ｃａｍｅｒａ  ｖｅｌｏｃｉｔｙ）に結合する段階、および
前記ピクセルあたりの結果を動きベクトルバッファに格納する段階
を含む、請求項１に記載の方法。
【請求項４】
グラフィックスエンジンは、
ブロックあたりの動きベクトルデータを１つ以上のクロマサブサンプリングされた（ｃｈｒｏｍａｓｕｂ  ｓａｍｐｌｅｄ）ビデオフレームと同時に、前記ビデオエンコードエンジンにリアルタイムで注入する、
請求項１に記載の方法。
【請求項５】
前記エンコードされたビデオデータは、
１つ以上の逆量子化アルゴリズム（ｉｎｖｅｒｓｅ  ｑｕａｎｔｉｚａｔｉｏｎ  ａｌｇｏｒｉｔｈｍ）、逆変換（ｉｎｖｅｒｓｅ  ｔｒａｎｓｆｏｒｍ）およびスケーリング（ｓｃａｌｅ）、および／または非ブロック化（ｄｅｂｌｏｃｋｉｎｇ）を適用することにより、リモートクライアントコーディングエンジンへの送信のために備える、
請求項１に記載の方法。
【請求項６】
前記１つ以上のピクセルあたりのベクトルは、
算術平均（ａｒｉｔｈｍｅｔｉｃ  ｍｅａｎ）を適用する変換方法を使用して１つ以上のブロックあたりの動きベクトルに変換される、
請求項１に記載の方法。
【請求項７】
コンピュータで実現されるグラフィックス生成システムであって、
前記グラフィックスエンジンは、
１つ以上のピクセルあたりの動きベクトルを生成し、前記ピクセルあたりの動きベクトルを１つ以上のブロックあたりの動きベクトルに変換し、前記ブロックあたりの動きベクトルを前記ビデオコーデックエンジンに直接に注入し、
前記ビデオコーデックエンジンは、
前記ブロックあたりの動きベクトルをエンコードされたビデオデータに変換し、前記エンコードされたビデオデータをリモートクライアントコンピューターシステムに送信する、
システム。
【請求項８】
前記１つ以上のピクセルあたりの動きベクトルは、
変換の前に、速度バッファに格納される、
請求項７に記載のシステム。
【請求項９】
前記１つ以上のピクセルあたりの動きベクトルは、
ピクセルあたりの結果を取得するために、コンピュータシェーダにおいて、前記１つ以上のピクセルあたりの動きベクトルをカメラ速度に追加し、前記ピクセルあたりの結果を動きベクトルバッファに格納することによって生成される、
請求項７に記載のシステム。
【請求項１０】
前記グラフィックスエンジンは、
ブロックあたりの動きベクトルデータを１つ以上のクロマサブサンプリングされたビデオフレームと同時に、前記ビデオコーデックエンジンにリアルタイムで注入する、
請求項７に記載のシステム。
【請求項１１】
前記ビデオコーデックエンジンは、
前記１つ以上のブロックあたりの動きベクトルをエンコードされたビデオデータに変換するために、動き補償および残余変換を実行する、
請求項７に記載のシステム。
【請求項１２】
前記エンコードされたビデオデータは、
デコードされ、ディスプレイコントローラ（ｄｉｓｐｌａｙ  ｃｏｎｔｒｏｌｌｅｒ）によって駆動されるディスプレイで再生されるように構成される、
請求項７に記載のシステム。
【請求項１３】
段階を含むグラフィックスを生成するためのコンピュータで実現される方法であって、
段階は、
グラフィックスエンジンにおいて、１つ以上のピクセルあたりの動きベクトルを１つ以上のブロックあたりの動きベクトルに変換する段階（ブロックあたりの動きベクトルデータは、コーデックエンジンに送信される）、および
グラフィックスエンジンにおいて、１つ以上のクロマサブサンプリングされたビデオフレームを受信する段階（前記クロマサブサンプリングされたビデオフレームは、前記コーデックエンジンに送信される）
を含み、
前記コーデックエンジンは、
リモートクライアントコンピュータシステムへの送信のためにビデオデータをエンコードするために、前記ブロックあたりの動きベクトルデータと前記クロマサブサンプリングされたビデオフレームとを結合する、
方法。
【請求項１４】
前記結合されたブロックあたりの動きベクトルデータとクロマサブサンプリングされたビデオフレームは、
残像（ｒｅｓｉｄｕａｌ  ｉｍａｇｅ）を形成する、
請求項１３に記載の方法。
【請求項１５】
逆量子化、逆変換、およびスケーリングを計算する段階、および
前記残像を非ブロック化する段階
をさらに含む、請求項１４に記載の方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
上述した説明および図面は、本発明の原理を例示するためのものに過ぎない。本発明は、好ましい実施形態によって制限されるように意図されてはならず、該当の技術分野において通常の知識を有する者にとって明白である、多様な方式で実現されるであろう。本発明の多数の応用は、該当の技術分野において通常の知識を有する者によって容易に実現されるであろう。したがって、開示された特定の例示または図に示されて説明された正確な構成と動作によって本発明を制限することは好ましくない。むしろ、すべての適切な修正および均等物が、本発明の範囲内に属するものと理解されなければならない。
〔付記１〕
段階を含むグラフィックスを生成するためのコンピュータで実現される方法であって、
段階は、
１つ以上のピクセルあたり（ｐｅｒ−ｐｉｘｅｌ）の動きベクトル（ｍｏｔｉｏｎ  ｖｅｃｔｏｒ）を生成する段階、
グラフィックスエンジン（ｇｒａｐｈｉｃｓ  ｅｎｇｉｎｅ）において、前記１つ以上のピクセルあたりの動きベクトルを１つ以上のブロックあたり（ｐｅｒ−ｂｌｏｃｋ）の動きベクトルに変換する段階、および
前記ブロックあたりの動きベクトルをビデオエンコードエンジンに注入する段階
を含み、
前記ビデオエンコードエンジンは、
リモートクライアントコーディングエンジンへの送信のために、前記１つ以上のブロックあたりの動きベクトルをエンコードされたビデオデータに変換する、方法。
〔付記２〕
前記１つ以上のピクセルあたりの動きベクトルは、
変換の前に、速度バッファ（ｖｅｌｏｃｉｔｙ  ｂｕｆｆｅｒ）に格納される、
付記１に記載の方法。
〔付記３〕
前記１つ以上のピクセルあたりの動きベクトルの生成は、
ピクセルあたりの結果を取得するために、コンピュータシェーダ（ｃｏｍｐｕｔｅ  ｓｈａｄｅｒ）において、前記１つ以上のピクセルあたりの動きベクトルをカメラ速度（ｃａｍｅｒａ  ｖｅｌｏｃｉｔｙ）に結合する段階、および
前記ピクセルあたりの結果を動きベクトルバッファに格納する段階
を含む、付記１に記載の方法。
〔付記４〕
グラフィックスエンジンは、
ブロックあたりの動きベクトルデータを１つ以上のクロマサブサンプリングされた（ｃｈｒｏｍａｓｕｂ  ｓａｍｐｌｅｄ）ビデオフレームと同時に、前記ビデオエンコードエンジンにリアルタイムで注入する、
付記１に記載の方法。
〔付記５〕
前記エンコードされたビデオデータは、
リモートクライアントコンピュータシステムでの再生のためにデコードされる、
付記１に記載の方法。
〔付記６〕
前記ビデオエンコードエンジンは、
前記１つ以上のブロックあたりの動きベクトルをエンコードされたビデオデータに変換するために、動き補償（ｍｏｔｉｏｎ  ｃｏｍｐｅｎｓａｔｉｏｎ）および残余変換（ｒｅｓｉｄｕａｌ  ｔｒａｎｓｆｏｒｍａｔｉｏｎ）を実行する、
付記１に記載の方法。
〔付記７〕
前記エンコードされたビデオデータは、
１つ以上の逆量子化アルゴリズム（ｉｎｖｅｒｓｅ  ｑｕａｎｔｉｚａｔｉｏｎ  ａｌｇｏｒｉｔｈｍ）、逆変換（ｉｎｖｅｒｓｅ  ｔｒａｎｓｆｏｒｍ）およびスケーリング（ｓｃａｌｅ）、および／または非ブロック化（ｄｅｂｌｏｃｋｉｎｇ）を適用することにより、前記リモートクライアントコーディングエンジンへの送信のために備える、
付記１に記載の方法。
〔付記８〕
前記１つ以上のピクセルあたりのベクトルは、
算術平均（ａｒｉｔｈｍｅｔｉｃ  ｍｅａｎ）を適用する変換方法を使用して１つ以上のブロックあたりの動きベクトルに変換される、
付記１に記載の方法。
〔付記９〕
１つ以上のグラィックスエンジンとビデオコーデックエンジンからなる、コンピュータで実現されるグラフィックス生成システムであって、
前記グラフィックスエンジンは、
１つ以上のピクセルあたりの動きベクトルを生成し、前記ピクセルあたりの動きベクトルを１つ以上のブロックあたりの動きベクトルに変換し、前記ブロックあたりの動きベクトルを前記ビデオコーデックエンジンに直接に注入し、
前記ビデオコーデックエンジンは、
前記ブロックあたりの動きベクトルをエンコードされたビデオデータに変換し、前記エンコードされたビデオデータをリモートクライアントコンピューターシステムで実行されるリモートクライアントコーディングエンジンに送信する、
システム。
〔付記１０〕
前記１つ以上のピクセルあたりの動きベクトルは、
変換の前に、速度バッファに格納される、
付記９に記載のシステム。
〔付記１１〕
前記１つ以上のピクセルあたりの動きベクトルは、
ピクセルあたりの結果を取得するために、コンピュータシェーダにおいて、前記１つ以上のピクセルあたりの動きベクトルをカメラ速度に追加し、前記ピクセルあたりの結果を動きベクトルバッファに格納することによって生成される、
付記９に記載のシステム。
〔付記１２〕
前記グラフィックスエンジンは、
ブロックあたりの動きベクトルデータを１つ以上のクロマサブサンプリングされたビデオフレームと同時に、前記ビデオコーデックエンジンにリアルタイムで注入する、
付記8に記載のシステム。
〔付記１３〕
前記ビデオコーデックエンジンは、
前記１つ以上のブロックあたりの動きベクトルをエンコードされたビデオデータに変換するために、動き補償および残余変換を実行する、
付記９に記載のシステム。
〔付記１４〕
前記エンコードされたビデオデータは、
１つ以上の逆量子化アルゴリズム、逆変換およびスケーリング、および／または非ブロック化を適用することにより、前記リモートクライアントコーディングエンジンへの送信のために備える、
付記９に記載のシステム。
〔付記１５〕
前記エンコードされたビデオデータは、
デコードされ、ディスプレイコントローラ（ｄｉｓｐｌａｙ  ｃｏｎｔｒｏｌｌｅｒ）によって駆動されるディスプレイで再生されるように構成される、
付記９に記載のシステム。
〔付記１６〕
前記グラフィックスエンジンは、
算術平均を適用する変換方法を使用し、前記１つ以上のピクセルあたりのベクトルを１つ以上のブロックあたりの動きベクトルに変換する、
付記９に記載のシステム。
〔付記１７〕
段階を含むグラフィックスを生成するためのコンピュータで実現される方法であって、
段階は、
グラフィックスエンジンにおいて、１つ以上のピクセルあたりの動きベクトルを１つ以上のブロックあたりの動きベクトルに変換する段階（ブロックあたりの動きベクトルデータは、受信時にコーデックエンジンに送信される）、および
グラフィックスエンジンにおいて、１つ以上のクロマサブサンプリングされたビデオフレームを受信する段階（前記クロマサブサンプリングされたビデオフレームは、受信時に前記コーデックエンジンに送信される）を含み、
前記コーデックエンジンは、リモートクライアントコンピュータシステムへの送信のためにビデオデータをエンコードするために、前記ブロックあたりの動きベクトルデータと前記クロマサブサンプリングされたビデオフレームとを結合し、
動き推定計算は、前記ビデオデータのエンコードの間に非活性化される、
方法。
〔付記１８〕
前記結合されたブロックあたりの動きベクトルデータとクロマサブサンプリングされたビデオフレームは、
残像（ｒｅｓｉｄｕａｌ  ｉｍａｇｅ）を形成する、
付記１７に記載の方法。
〔付記１９〕
前記残像は、
エンコードの前に、残余変換およびスケーリング、量子化、および／またはスキャン（ｓｃａｎｎｉｎｇ）によってさらに処理される、
付記１８に記載の方法。
〔付記２０〕
逆量子化、逆変換、およびスケーリングを計算する段階、および
前記残像を非ブロック化する段階
をさらに含む、付記１８に記載の方法。