JP2021503777A - ビデオエンコーダレンダリング向けのゲームエンジンアプリケーション - Google Patents

ビデオエンコーダレンダリング向けのゲームエンジンアプリケーション Download PDF

Info

Publication number
JP2021503777A
JP2021503777A JP2020526583A JP2020526583A JP2021503777A JP 2021503777 A JP2021503777 A JP 2021503777A JP 2020526583 A JP2020526583 A JP 2020526583A JP 2020526583 A JP2020526583 A JP 2020526583A JP 2021503777 A JP2021503777 A JP 2021503777A
Authority
JP
Japan
Prior art keywords
rendered
image
color space
attributes
encoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2020526583A
Other languages
English (en)
Other versions
JP2021503777A5 (ja
JP7221957B2 (ja
Inventor
シネス ガボール
シネス ガボール
プルマドール カイル
プルマドール カイル
リウ ヤン
リウ ヤン
アメール イハブ
アメール イハブ
イバノビッチ ボリス
イバノビッチ ボリス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ATI Technologies ULC
Original Assignee
ATI Technologies ULC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ATI Technologies ULC filed Critical ATI Technologies ULC
Publication of JP2021503777A publication Critical patent/JP2021503777A/ja
Publication of JP2021503777A5 publication Critical patent/JP2021503777A5/ja
Application granted granted Critical
Publication of JP7221957B2 publication Critical patent/JP7221957B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6002Corrections within particular colour systems
    • H04N1/6008Corrections within particular colour systems with primary colour signals, e.g. RGB or CMY(K)
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5258Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6002Corrections within particular colour systems
    • H04N1/6005Corrections within particular colour systems with luminance or chrominance signals, e.g. LC1C2, HSL or YUV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/32Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/335Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/203Image generating hardware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions

Abstract

画像をビデオエンコーダに直接レンダリングするシステム、装置及び方法を開示する。ゲームエンジンは、モードによって異なる色空間で画像をレンダリングするように構成された組み込みレンダリングユニットを含む。レンダリングユニットは、第1モードで動作する間、ディスプレイに直接送られる第1色空間の画像のみをレンダリングする。レンダリングユニットは、第2モードで動作する間、ビデオエンコーダに直接提供される第2色空間の画像のみをレンダリングする。第3モードでは、レンダリングユニットは、両方の色空間の画像をレンダリングする。一実施形態では、第1色空間はRGBであり、第2色空間はYUVである。また、ゲームエンジンは、レンダリング画像の各々に関連する複数の属性を生成し、ビデオエンコーダは、レンダリング画像に関連する属性に基づいて、レンダリング画像の各々を符号化ビットストリームに符号化する。【選択図】図5

Description

(関連技術の説明)
様々なアプリケーションは、画像又はビデオコンテンツのリアルタイム符号化及び復号化を実行する。例えば、クラウドゲーム及びゲーム観戦は、コンテンツのリアルタイム符号化及び復号化のサポートを含むアプリケーションの例である。レイテンシ、品質、ビットレート、パワー及びパフォーマンスの課題は、通常、このようなワークロードをリアルタイムで提供する間に発生する。多くのシナリオでは、グラフィックス処理ユニット(GPU)で実行されるゲームエンジンベースのアプリケーションは、RGB色空間において、システムに接続されたディスプレイを介して画像を提示するようにレンダリングしている。また、レンダリング画像がネットワークを介してリモートシステムに送信されることを意図している場合、レンダリング画像は、コーデック(通常はYUV)によって使用される色空間に変換され、ビデオエンコーダによってビデオビットストリームに符号化される。ビデオエンコーダにとって、低い符号化レイテンシを維持し、符号化ビデオビットストリームにおけるアーチファクトを減少させながら、ビデオの品質を最適化することは困難である場合がある。上記を考慮して、画像をレンダリングし、レンダリング画像を符号化ビットストリームに符号化するための新規且つ改良された方法が望まれている。
添付図面と共に以下の説明を参照することによって、本明細書で説明する方法及びメカニズムの利点をより良く理解することができる。
レンダリング画像を、ネットワークを介して送信されるビデオビットストリームに符号化するシステムの一実施形態のブロック図である。 サーバのソフトウェアコンポーネントの一実施形態のブロック図である。 コンピューティングシステムの一実施形態のブロック図である。 コンピューティングシステムの別の実施形態のブロック図である。 ゲームエンジンがビデオエンコーダに直接レンダリングする方法の一実施形態を示す一般化されたフロー図である。 マルチモードゲームエンジンを動作させる方法の一実施形態を示す一般化されたフロー図である。
以下の説明では、本明細書で提示される方法及びメカニズムの十分な理解を提供するために、多くの特定の詳細が示されている。しかしながら、当業者は、これらの特定の詳細なしに様々な実施形態を実施することができることを認識するはずである。いくつかの例では、本明細書で説明するアプローチを曖昧にすることを避けるために、周知の構造、コンポーネント、信号、コンピュータプログラム命令及び技術を詳細に示していない。例示を単純且つ明瞭にするために、図に示される要素は、必ずしも縮尺通りに描かれていないことが認識されよう。例えば、いくつかの要素の寸法は、他の要素に比べて誇張されている場合がある。
ビデオエンコーダに直接レンダリングするゲームエンジンのシステム、装置及び方法を本明細書で開示する。一実施形態では、システムは、デコーダを有するクライアントにネットワークを介して接続されたサーバ内のゲームエンジンと、ビデオエンコーダと、を含む。ゲームエンジンは、表示するために第1色空間で画像をレンダリングするように構成された組み込みレンダリングユニットを含む。また、レンダリングユニットは、第2色空間の画像をビデオエンコーダに直接レンダリングするように構成されている。一実施形態では、第1色空間はRGBであり、第2色空間はYUVである。また、ゲームエンジンは、レンダリング画像の各々に関連する複数の属性を生成し、複数の属性をビデオエンコーダに伝達する。複数の属性は、画像をレンダリングするレンダリングユニットによって使用される様々なタイプのデータを含む。ビデオエンコーダは、レンダリング画像に関連する複数の属性に基づいて、レンダリング画像の各々を符号化ビットストリームに符号化する。
一実施形態では、レンダリングユニットは、クラウド内のサーバに配置されており、レンダリングされたコンテンツがネットワークを介してクライアントに伝達される。例えば、ゲームアプリケーションフレームをクラウドでレンダリングしながら、クラウドゲームアプリケーションを実行することができる。このシナリオでは、レンダリングユニットは、レンダリングされたフレームをエンコーダに伝達する。様々なタイプの処理ユニットのうち何れかを使用してレンダリングユニットを実装することができる。一実施形態では、レンダリングユニットは、グラフィックスプロセッサ又はグラフィックスサブシステム上に実装される。別の実施形態では、レンダリングユニットは、汎用中央処理装置(CPU)上に実装される。他の実施形態では、レンダリングユニットは、他のタイプの処理ユニット(例えば、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP))上に実装されてもよい。
図1を参照すると、レンダリング画像を、ネットワークを介して送信されるビデオビットストリームに符号化するシステム100の一実施形態のブロック図が示されている。システム100は、サーバ105と、ネットワーク110と、クライアント115と、ディスプレイ120と、を含む。他の実施形態では、システム100は、ネットワーク110を介してサーバ105に接続された複数のクライアントを含むことができ、複数のクライアントは、サーバ105によって生成された同じビットストリーム又は異なるビットストリームを受信する。また、システム100は、複数のクライアントのために複数のビットストリームを生成する複数のサーバ105を含むことができる。一実施形態では、システム100は、クラウドゲームアプリケーションの一部としてゲームコンテンツのリアルタイムレンダリング及び符号化を実行するように構成されている。レイテンシ、品質、ビットレート、パワー及びパフォーマンスの課題は、通常、このようなワークロードをリアルタイムで提供する間に発生する。他の実施形態では、システム100は、他のタイプのアプリケーションを実行するように構成されている。
一実施形態では、サーバ105は、ビデオ又は画像フレームをレンダリングし、フレームをビットストリームに符号化した後に、符号化ビットストリームを、ネットワーク110を介してクライアント115に伝達するように構成されている。クライアント115は、符号化ビットストリームを復号化し、ビデオフレーム又は画像を生成してディスプレイ120又はディスプレイコンポジタに送るように構成されている。一実施形態では、サーバ105は、ユーザに対して表示される画像をレンダリングするためのゲームエンジンを含む。本明細書で使用される「ゲームエンジン」という用語は、画像をレンダリングするためのリアルタイムレンダリングアプリケーションとして定義される。ゲームエンジンは、画像をレンダリングするための様々なシェーダ(例えば、頂点シェーダ、ジオメトリシェーダ等)を含むことができる。ゲームエンジンは、通常、サーバ105に接続されたディスプレイ上に直ちに表示されるレンダリング画像を生成するために利用される。ただし、いくつかのアプリケーションは、レンダリングされたコンテンツを遠隔位置に表示するクライアントサーバモデルを使用して実行することができる。これらのアプリケーションでは、レンダリング画像は、ビデオエンコーダによってビデオビットストリームに符号化される。次に、ビデオビットストリームは、ネットワーク110を介してクライアント115に送信され、ディスプレイ120上に表示される。様々な実施形態では、ビデオビットストリーム235は、様々な適切な通信プロトコル(例えば、TCP/IP等)の何れかに従って、ネットワークインタフェース(図示省略)を介してネットワーク240に伝達される。
ネットワーク110は、無線接続、直接ローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、イントラネット、インターネット、ケーブルネットワーク、パケット交換ネットワーク、光ファイバネットワーク、ルータ、ストレージエリアネットワーク、若しくは、他のタイプのネットワークを含む、あらゆるタイプのネットワーク又はネットワークの組み合わせを表す。LANの例は、イーサネット(登録商標)ネットワーク、ファイバ分散データインタフェース(FDDI)ネットワーク、トークンリングネットワークを含む。ネットワーク110は、リモートダイレクトメモリアクセス(RDMA)ハードウェア及び/若しくはソフトウェア、伝送制御プロトコル/インターネットプロトコル(TCP/IP)ハードウェア及び/若しくはソフトウェア、ルータ、リピータ、スイッチ、グリッド、並びに/又は、他のコンポーネントをさらに含むことができる。
サーバ105は、ビデオ/画像フレームをレンダリングし、フレームをビットストリームに符号化するためのソフトウェア及び/又はハードウェアの任意の組み合わせを含む。一実施形態では、サーバ105は、1つ以上のサーバのうち1つ以上のプロセッサ上で実行される1つ以上のソフトウェアアプリケーションを含む。また、サーバ105は、ネットワーク通信機能、1つ以上の入出力デバイス、及び/又は、他のコンポーネントを含む。サーバ105の1つ以上のプロセッサは、任意の数及びタイプのプロセッサ(例えば、グラフィックス処理ユニット(GPU)、CPU、DSP、FPGA、ASIC)を含むことができる。プロセッサは、プロセッサによって実行可能なプログラム命令を記憶する1つ以上のメモリデバイスに接続されてもよい。同様に、クライアント115は、ビットストリームを復号化し、フレームをディスプレイ120に送るためのソフトウェア及び/又はハードウェアの任意の組み合わせを含む。一実施形態では、クライアント115は、1つ以上のコンピューティングデバイスのうち1つ以上のプロセッサ上で実行される1つ以上のソフトウェアアプリケーションを含む。クライアント115は、コンピューティングデバイス、ゲームコンソール、モバイルデバイス、ストリーミングメディアプレーヤー、又は、他のタイプのデバイスであってもよい。
図2を参照すると、サーバ205のソフトウェアコンポーネントの一実施形態のブロック図が示されている。一実施形態では、サーバ205は、サーバ205の処理ユニット上で実行するように構成されたアプリケーション210を含む。一実施形態では、アプリケーション210は、ビデオゲームアプリケーションである。例えば、アプリケーション210は、ゲームプレイのビデオを伝達及び/又は受信するように構成されたクラウドゲームアプリケーションであってもよい。別の実施形態では、アプリケーション210は、ゲームプレイのビデオを表示するように構成されたゲーム観戦アプリケーションである。様々な実施形態では、サーバ205は、1つ以上のプロセッサと、1つ以上のメモリデバイスと、サーバ又は他のコンピューティングデバイスを示す追加のコンポーネントと、を含む。図2に示す様々なソフトウェアコンポーネントは、サーバ205の処理ユニット上で実行するように構成されている。一実施形態では、サーバ205は、クラウドコンピューティングアーキテクチャの一部である。
一実施形態では、アプリケーション210は、ユーザがアプリケーション210によって生成されたビデオストリームを表示して対話するクライアントデバイス上でキャプチャされたユーザの動き/アクションを指定する入力(例えば、ゲームコマンド)を受信するように構成されている。アプリケーション210は、表示用のフレームをレンダリングするためにゲームエンジン215に提供されるグラフィックス情報を含む。ゲームエンジン215は、アプリケーション210のゲーム状態に基づいて、画像フレームをレンダリングするように構成されている。次に、レンダリングされた画像フレームは、ディスプレイエンジンに提供され、ディスプレイに送られることが意図される。しかしながら、一実施形態では、レンダリングされた画像フレームは、リモートクライアントデバイスのディスプレイに表示される。本実施形態では、レンダリングされた画像フレームは、ビデオビットストリームに符号化され、ビデオビットストリームは、リモートクライアントデバイスに送信される。
一実施形態では、ゲームエンジン215は、レンダリング画像からのビデオビットストリームの符号化において使用するために、レンダリング画像227の各々に関連する複数の属性228をエンコーダ230に提供するように構成されている。複数の属性228は、レンダリングユニット220がレンダリング画像を構築するために使用する様々なデータを含む。したがって、これらの属性228は既に存在し、レンダリングユニット220は、これらの属性228をエンコーダ230に提供して、符号化プロセスを強化することができる。エンコーダ230は、これらの属性228を受信することによって、レンダリング画像227の各々に対して通常実行される様々な処理及び分析タスクを省くことができる。様々な実施形態では、複数の属性228は、属性(例えば、カメラビュー速度バッファ、オブジェクト毎のモーション情報、テクスチャデータヒント、関心領域(ROI)、深度情報(例えば、立体映像エンコード)、時間統計情報、レンダリングフレームレート、シーン変更データ、追加のビットを必要とする領域(例えば、矩形)、スキップ又は静的フレーム指標、及び、後処理データ等)を含むことができるが、これらに限定されない。他の実施形態では、他の情報を収集することができ、及び/又は、これらの属性のうち1つ以上を、ビデオエンコーダ230に提供される属性228から省略することができる。
一実施形態では、カメラビュー速度情報を利用して、モーション推定器を支援することができる。一実施形態では、ROI情報は、ダーティな矩形データ、重要なコンテンツ依存オブジェクト、ゲーム/アプリケーション統計情報等を含むことができる。ゲーム/アプリケーション統計情報は、不透明、透明、又は、半透明のオーバーレイで示すことができる。シーン変更データは、エンコーダのリフレッシュロジックを支援することができる。追加のビットを必要とする領域は、オーバーレイされたゲームの統計情報又はメニューを含む。
実施形態に応じて、様々なレンダリング画像の属性を利用して、異なるエンコーダ設定を制御又は調整することができる。例えば、2つの連続する画像(画像N−1及び画像)が類似している場合(例えば、画像−画像N−1<閾値)、レンダリングユニット220は、フレームをスキップする信号をエンコーダ230に送信することができる。また、マークされた画像が、2つの連続する画像を比較する(画像を画像N−1と比較する)ときに変化しない場合、エンコーダ230は、画像から画像N−1までの領域に対する直接参照を構築することができる。また、レンダリングユニット220は、(多かれ少なかれ圧縮を実現するために)マークされたROI量子化パラメータ値を交互にすることができる。さらに、速度バッファからのモーション情報(画像を画像N−1と比較する)を利用することができる。例えば、モーションデータを使用して、符号化プロセスで使用されるマクロブロック毎の量子化パラメータを変更することができる。これは、速度に基づいて、特定のコンテンツに多くの符号化ビットを割り当てることを意味する。さらに、深度情報を用いて、立体画像を符号化することができる。
一実施形態では、ゲームエンジン215は、画像を、赤/緑/青(RGB)色空間でレンダリングするように構成されている。しかしながら、一実施形態では、エンコーダ230は、輝度/クロミナンス(YUV)色空間の画像をビデオストリームに符号化するように構成されている。したがって、このような場合、レンダリングされたRGB画像は、YUV色空間で画像をレンダリングするように構成されたエンコーダ230と互換性がない。この不一致に対処するために、様々な実施形態では、レンダリングユニット220は、RGB及びYUV色空間の何れか又は両方で画像をレンダリングするように構成されている。なお、YUV色空間は、YCbCr又はY’CbCr色空間とも呼ばれることに留意されたい。
一実施形態では、ゲームエンジン215のレンダリングユニット220は、レンダリング画像227をバッファ225の第1部分に書き込み、レンダリング画像227に関連する属性228をバッファ225の第2部分に書き込む。一実施形態では、ビデオエンコーダ230は、レンダリング画像227及び関連する属性228をバッファ225から取得するように構成されている。ビデオエンコーダ230は、レンダリング画像227を符号化ビデオビットストリーム235に符号化する場合に属性228を利用するように構成されている。ビデオエンコーダ230は、後にレンダリングされる画像及び関連する属性をバッファ225から取得し(又は、受信し)、後にレンダリングされた画像から符号化ビデオビットストリーム235を生成し続けるように構成されている。様々な実施形態では、ゲームエンジン215のレンダリングユニット220によって生成されるフレームの符号化は、必要に応じて、様々なビデオフォーマット及び規格(例えば、「HD」、「4K」、「4Kウルトラ」、H.262、H.264、H.265等)の何れかに従う。
一実施形態では、エンコーダ230は、所定のビットバジェットで符号化ビットストリーム235を生成するように構成されている。例えば、エンコーダ230は、ビットストリーム235について利用可能な又は所定のネットワーク帯域幅(例えば、2メガビット/秒(Mbps))に基づいて特定のビットバジェットを有することができ、この特定のビットバジェットを満たすようにフレームを符号化する。符号化ビットストリーム235がエンコーダ230によって生成されると、符号化ビットストリーム235は、サーバ205からクライアント(図示省略)に伝達される。クライアントは、符号化ビットストリーム235を受信し、ビットストリーム235を個々のフレームに復号化し、フレームをディスプレイ又はディスプレイコンポジタに送る。
図3を参照すると、コンピューティングシステム305の一実施形態のブロック図が示されている。コンピューティングシステム305は、プレーヤの動き又はアクションを受信するアプリケーション310を含む。また、コンピューティングシステム305は、統合されたレンダリングユニット320を含むゲームエンジン315を備える。図3に示す実施形態では、コンピューティングシステム305は、ディスプレイデバイス324に表示するためのレンダリング画像322と、ビデオエンコーダ330用に特別にレンダリングされたレンダリング画像327と、を生成するように構成されている。また、レンダリングユニット320は、属性328をバッファ325内のビデオエンコーダ330に提供して、符号化プロセスを支援する。ビデオエンコーダ330は、ゲームエンジン315のレンダリングユニット320によって生成された画像毎に、レンダリング画像327及び属性328をバッファ325から取得し、レンダリング画像327及び属性328から符号化ビデオビットストリーム335を生成する。一実施形態では、レンダリング画像322は第1色空間で生成され、レンダリング画像327は第2色空間で生成される。一実施形態では、第1色空間はRGBであり、第2色空間はYUVである。実施形態に応じて、符号化ビデオビットストリーム335を、ネットワーク340を介してリモートシステムに伝達してもよいし、メモリ345に記録し、記憶することができる。
図4を参照すると、コンピューティングシステム405の別の実施形態のブロック図が示されている。システム405は、統合されたレンダリングユニット420を含むゲームエンジン415を備える。一実施形態では、ゲームエンジン415は、実行されている特定のソフトウェアアプリケーションに応じて、及び/又は、システム405の動作条件によって、異なるモードで動作することができる。テーブル416は、ゲームエンジン415が一実施形態によって実施することができる異なる動作モードのリストを含む。例えば、モード417Aでは、ゲームエンジン415は、ビデオエンコーダ450のみにレンダリングするように構成されている。モード417Aでは、レンダリングユニット420は、画像をYUV色空間でレンダリングし、レンダリング画像430の各々をビデオビットストリームに符号化する場合にビデオエンコーダ450によって利用される属性435を生成する。レンダリングユニット420は、画像属性部435に記憶されるデータを収集する。レンダリングユニット420が画像を生成するためにネイティブに使用するデータ(深度、モーション、テクスチャ)に加えて、レンダリングユニット420は、ROI及び以前の画像に対する時間的変化を示唆することができる。例えば、現在のレンダリング画像430の小さな部分のみが以前のレンダリング画像と比較して変化した場合、レンダリングユニット420は、現在のレンダリング画像430を符号化する場合に、以前のレンダリング画像から変化していない部分を再使用するために、ビデオエンコーダ450に対する指標(属性435に含まれる)を生成する。
ゲームエンジン415は、モード417Bで動作する場合に、ディスプレイ424のみにレンダリングするように構成されている。モード417Bでは、レンダリングユニット420は、レンダリング画像422の各々をRGB色空間で生成し、レンダリングRGB画像422は、ディスプレイ424又はディスプレイコンポジタに送られる。ゲームエンジン415は、モード417Cで動作する場合に、ビデオエンコーダ450及びディスプレイ424にレンダリングするように構成されている。モード417Cでは、レンダリングユニット420は、ホストゲームアプリケーションのフレーム毎に、ディスプレイ424のためにRGB色空間のレンダリング画像422を生成し、ビデオエンコーダ450のためにYUV色空間のレンダリング画像430及び属性435を生成する。他の実施形態では、ゲームエンジン415は、他のタイプのモードで動作することができ、及び/又は、テーブル416で示されるモードのうち1つを省略することができる。
一実施形態では、ゲームエンジン415が、ビデオエンコーダ450によって直接使用される画像をレンダリングする場合、ゲームエンジン415は、ビデオエンコーダ450による取得のために、レンダリング画像430及び属性435をバッファ425に記憶する。一実施形態では、変換ユニット440は、属性435を、ビデオエンコーダ450がレンダリング画像430を符号化ビデオビットストリームに符号化する場合に使用することができるフォーマットに変換する。変換ユニット440は、ゲームエンジン415によってバッファ425に記憶されたメタデータ(すなわち、属性435)を取得することができ、システム405によって実装され得る様々な異なるタイプのビデオエンコーダによってメタデータが使用されるのを可能にするように、メタデータを変換することができる。例えば、このデータは、エンコーダが時間差、テクスチャ、ROIを理解し、画像解析を完全又は部分的にスキップするのに役立つ。これにより、エンコーダは、画像を圧縮する時間を節約し、時間制約(低レイテンシ)を考慮したより良い画質を提供する。いくつかの実施形態では、変換ユニット440は、ビデオエンコーダ450のための追加のパラメータ(例えば、ROIマップ、圧縮パラメータマップ、及び、スキップフレームをビットストリームに挿入するかどうかの決定等)を提供する。
例えば、ビデオエンコーダ450がH.264ビデオ規格に従ってビデオビットストリームを符号化している場合、変換ユニット440は、属性435を、H.264規格と互換性のあるフォーマットに変換することができる。或いは、ビデオエンコーダ450がH.265ビデオ規格(すなわち、高効率映像符号化(HEVC))に従ってビデオビットストリームを符号化している場合、変換ユニット440は、属性435を、H.265規格と互換性のあるフォーマットに変換することができる。さらに、ビデオエンコーダ450がVP9コーデックに従ってビデオビットストリームを符号化している場合、変換ユニット440は、属性435を、VP9コーデックと互換性のあるフォーマットに変換することができる。また、変換ユニット440は、ビデオエンコーダ450がサポートする規格に応じて、属性435を、他のビデオ圧縮規格と互換性のある他のフォーマットに変換することができる。
一実施形態では、ビデオエンコーダ450は、フィードバックを、ゲームエンジン415のレンダリングユニット420及び/又は変換ユニット440に提供するように構成されている。例えば、ビデオエンコーダ450がビデオビットストリームを送信しているネットワーク接続上で利用可能な帯域幅が減少する場合、ビデオエンコーダ450は、レンダリング画像430の解像度を低下させるようにゲームエンジン415のレンダリングユニット420に通知することができる。また、いくつかの実施形態では、ビデオエンコーダ450は、複数のクライアントのためにビデオビットストリームを生成することができ、ビデオエンコーダ450がビデオビットストリームを符号化するための計算リソースが少ない場合、ビデオエンコーダ450は、レンダリング画像430を生成する場合にフレームレートを低下させること、解像度を低下させること、及び/又は、1つ以上の他のアクションを実行することを、ゲームエンジン415のレンダリングユニット420に通知することができる。別の実施形態では、ビデオエンコーダ450は、属性435に追加される1つ以上の追加属性を要求することもできる。また、さらなる実施形態では、ビデオエンコーダ450は、ビデオエンコーダ450に提供される様々な属性435をフォーマットする方法を指定するために、フィードバックを変換ユニット440に提供する。
図5を参照すると、ゲームエンジンがビデオエンコーダに直接レンダリングする方法500の1つの実施形態が示されている。説明のために、本実施形態のステップ及び図6のステップを順番に示す。しかしながら、説明する方法の様々な実施形態では、説明する要素のうち1つ以上が、同時に実行され、図示した順序と異なる順序で実行され、又は、完全に省略されることに留意されたい。必要に応じて、他の追加の要素も実行される。本明細書で説明する様々なシステム又は装置の何れも、方法500を実施するように構成されている。
組み込みレンダリングユニットを含むゲームエンジンは、画像をレンダリングするための入力を受信する(ブロック505)。ゲームエンジンは、ビデオエンコーダと直接互換性のあるフォーマットで画像をレンダリングする(ブロック510)。例えば、ゲームエンジンは、ビデオエンコーダが符号化プロセスを実行する場合に利用するカラーフォーマット(例えば、YUV)で画像をレンダリングする。また、ゲームエンジンは、レンダリング画像の複数の属性をビデオエンコーダに提供する(ブロック515)。次に、ビデオエンコーダは、複数の属性に基づいて、レンダリング画像を符号化ビットストリームに符号化する(ブロック520)。次いで、ビデオエンコーダは、符号化ビットストリームをクライアントに送信するか、符号化ビットストリームを記憶する(ブロック525)。ブロック525の後に、方法500はブロック505に戻り、ゲームエンジンがレンダリングする次の画像についての入力を受信する。
図6を参照すると、マルチモードゲームエンジンを動作させる方法600の一実施形態が示されている。組み込みレンダリングユニットを含むマルチモードゲームエンジンを、コンピューティングシステム上で実行する(ブロック605)。システムは、ゲームエンジンの動作モードを決定する(ブロック610)。ゲームエンジンが第1モードで動作している場合(条件付きブロック615:Yes)、レンダリングユニットは、各画像を、ビデオエンコーダだけのために第1色空間(すなわち、YUV色空間)に直接レンダリングする(ブロック620)。また、ゲームエンジンは、レンダリング画像毎に、複数の属性をビデオエンコーダに提供する(ブロック625)。一実施形態では、レンダリングユニットの属性データは、YUVレンダリング画像と共にパックされる。ブロック625の後に、方法600は終了する。
ゲームエンジンが第2モードで動作している場合(条件付きブロック630:Yes)、レンダリングユニットは、各画像を、ローカルに接続されたディスプレイだけのために第2色空間(すなわち、RGB色空間)にレンダリングする(ブロック635)。ブロック635の後に、方法600は終了する。ゲームエンジンが第3モードで動作している場合(条件付きブロック630:No)、レンダリングユニットは、各画像を、ビデオエンコーダのための第1色空間(すなわち、YUV色空間)に直接レンダリングし、ローカルに接続されたディスプレイのための第2色空間(すなわち、RGB色空間)にレンダリングする(ブロック640)。ブロック640の後に、方法600は終了する。他の実施形態では、ゲームエンジンが他の動作モードを有することができることに留意されたい。これらの実施形態では、方法600は、これらの他の動作モードを利用するように適合されてもよい。
様々な実施形態では、ソフトウェアアプリケーションのプログラム命令を使用して、本明細書で説明する方法及び/又はメカニズムを実施する。例えば、汎用プロセッサ又は専用プロセッサによって実行可能なプログラム命令が考えられる。様々な実施形態では、このようなプログラム命令を、高レベルプログラミング言語として表すことができる。他の実施形態では、プログラム命令を、高レベルプログラミング言語からバイナリ、中間又は他の形式にコンパイルすることができる。或いは、ハードウェアの動作又は設計を記述するプログラム命令を書き込むことができる。このようなプログラム命令は、C/C++等の高レベルプログラミング言語によって表すことができる。或いは、Verilog等のハードウェア設計言語(HDL)を使用することもできる。様々な実施形態では、プログラム命令は、様々な非一時的なコンピュータ可読記憶媒体の何れかに記憶される。記憶媒体は、使用中にコンピューティングシステムによってアクセス可能であり、プログラム実行のためにプログラム命令をコンピューティングシステムに提供する。一般に、このようなコンピューティングシステムは、少なくとも1つ以上のメモリと、プログラム命令を実行するように構成された1つ以上のプロセッサと、を含む。
上述した実施形態は、実装の非限定的な例に過ぎないことを強調しておきたい。上記の開示が十分に理解されれば、当業者には多くの変形及び修正が明らかになるであろう。以下の特許請求の範囲は、かかる変形及び修正の全てを包含すると解釈されることを意図している。

Claims (20)

  1. 表示用の画像をレンダリングするように構成されたレンダリングユニットを含むゲームエンジンと、
    第1色空間でレンダリングされたレンダリング画像を符号化するように構成されたビデオエンコーダと、を備え、
    前記レンダリングユニットは、
    前記第1色空間で各画像をレンダリングすることと、
    前記第1色空間でレンダリングされた画像の各々に関連する属性を生成することと、
    前記属性と、前記第1色空間でレンダリングされた画像の各々と、を前記ビデオエンコーダに伝達することと、
    を行うように構成されており、
    前記ビデオエンコーダは、前記レンダリングユニットによって提供された複数の属性に基づいて、各レンダリング画像を符号化するように構成されている、
    システム。
  2. 前記システムは、前記複数の属性を、第1フォーマットから、前記ビデオエンコーダと互換性のある第2フォーマットに変換するように構成された変換ユニットをさらに備える、
    請求項1のシステム。
  3. 前記レンダリングユニットは、
    前記第1色空間と異なる第2色空間で各画像をレンダリングすることと、
    前記第1色空間でレンダリングされた画像を前記ビデオエンコーダに伝達することと並行して、前記第2色空間でレンダリングされた画像の各々をディスプレイデバイスに伝達することと、
    を行うように構成されている、
    請求項1のシステム。
  4. 前記第1色空間はYUVであり、前記第2色空間はRGBである、
    請求項3のシステム。
  5. 前記複数の属性は、カメラビュー速度バッファ、オブジェクト毎のモーション情報、テクスチャデータヒント、関心領域、深度情報、時間統計情報、レンダリングフレームレート、シーン変更データ、追加のビットを必要とする領域、スキップ又は静的フレームデータ、及び、後処理データを含む、
    請求項1のシステム。
  6. 前記ゲームエンジンは、現在レンダリングされているフレームの属性を収集し、以前にレンダリングされた画像に対する時間的変化を提供するように構成されている、
    請求項1のシステム。
  7. 前記ゲームエンジンは、現在レンダリングされている画像と、以前にレンダリングされた1つ以上の画像との比較に基づいて、前記複数の属性のうち1つ以上の属性を生成するように構成されており、
    前記1つ以上の属性は、シーン変更データ、関心領域、又は、モーションベクトルデータを含む、
    請求項6のシステム。
  8. ゲームエンジンのレンダリングユニットによって、各画像を、エンコーダと互換性のある第1色空間にレンダリングすることであって、ディスプレイは、第2色空間でレンダリングされた画像を待機する、ことと、
    レンダリングされたフレームの各々に関連する複数の属性を前記エンコーダに提供することと、
    前記エンコーダによって、前記複数の属性に基づいて、レンダリング画像の各々を符号化することと、を含む、
    方法。
  9. 変換ユニットによって、前記複数の属性を、第1フォーマットから、前記エンコーダと互換性のある第2フォーマットに変換することを含む、
    請求項8の方法。
  10. 前記第1色空間でレンダリングされた画像を前記エンコーダに提供することと並行して、前記第2色空間でレンダリングされた画像をディスプレイに提供することを含む、
    請求項8の方法。
  11. 前記第1色空間はYUVであり、前記第2色空間はRGBである、
    請求項8の方法。
  12. 前記複数の属性は、カメラビュー速度バッファ、オブジェクト毎のモーション情報、テクスチャデータヒント、関心領域、深度情報、時間統計情報、レンダリングフレームレート、シーン変更データ、追加のビットを必要とする領域、スキップ又は静的フレームデータ、及び、後処理データを含む、
    請求項8の方法。
  13. 前記ゲームエンジンによって、現在レンダリングされているフレームの属性を収集することと、
    以前にレンダリングされた画像に対する時間的変化を提供することと、を含む、
    請求項8の方法。
  14. 前記ゲームエンジンによって、現在レンダリングされている画像と、以前にレンダリングされた1つ以上の画像との比較に基づいて、前記複数の属性のうち1つ以上の属性を生成することを含み、
    前記1つ以上の属性は、シーン変更データ、関心領域、又は、モーションベクトルデータを含む、
    請求項13の方法。
  15. 表示用の画像をレンダリングするように構成されたレンダリングユニットを含むゲームエンジンと、
    レンダリングされた画像を符号化するように構成されたエンコーダと、
    前記ゲームエンジンと前記エンコーダとに接続された変換ユニットと、を備え、
    前記レンダリングユニットは、
    各画像を、前記エンコーダと互換性のある第1色空間にレンダリングすることであって、ディスプレイは、第2色空間でレンダリングされた画像を待機する、ことと、
    レンダリングされたフレームの各々に関連する複数の属性を前記エンコーダに提供することと、
    を行うように構成されており、
    前記エンコーダは、前記複数の属性に基づいて、レンダリング画像の各々を符号化するように構成されている、
    装置。
  16. 前記変換ユニットは、前記複数の属性を、第1フォーマットから、前記エンコーダと互換性のある第2フォーマットに変換するように構成されている、
    請求項15の装置。
  17. 前記レンダリングユニットは、前記第1色空間でレンダリングされた画像を前記エンコーダに送信することと並行して、前記第2色空間でレンダリングされた画像をディスプレイに送信するように構成されている、
    請求項15の装置。
  18. 前記第1色空間はYUVであり、前記第2色空間はRGBである、
    請求項15の装置。
  19. 前記複数の属性は、カメラビュー速度バッファ、オブジェクト毎のモーション情報、テクスチャデータヒント、関心領域、深度情報、時間統計情報、レンダリングフレームレート、シーン変更データ、追加のビットを必要とする領域、スキップ又は静的フレームデータ、及び、後処理データを含む、
    請求項15の装置。
  20. 前記ゲームエンジンは、現在レンダリングされているフレームの属性を収集し、以前にレンダリングされた画像に対する時間的変化を提供するように構成されている、
    請求項15の装置。
JP2020526583A 2017-11-17 2018-09-27 ビデオエンコーダレンダリング向けのゲームエンジンアプリケーション Active JP7221957B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/816,765 2017-11-17
US15/816,765 US10594901B2 (en) 2017-11-17 2017-11-17 Game engine application direct to video encoder rendering
PCT/IB2018/057511 WO2019097319A1 (en) 2017-11-17 2018-09-27 Game engine application direct to video encoder rendering

Publications (3)

Publication Number Publication Date
JP2021503777A true JP2021503777A (ja) 2021-02-12
JP2021503777A5 JP2021503777A5 (ja) 2021-11-04
JP7221957B2 JP7221957B2 (ja) 2023-02-14

Family

ID=66532691

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020526583A Active JP7221957B2 (ja) 2017-11-17 2018-09-27 ビデオエンコーダレンダリング向けのゲームエンジンアプリケーション

Country Status (6)

Country Link
US (1) US10594901B2 (ja)
EP (1) EP3711296A4 (ja)
JP (1) JP7221957B2 (ja)
KR (1) KR102432755B1 (ja)
CN (1) CN111357289B (ja)
WO (1) WO2019097319A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10523947B2 (en) 2017-09-29 2019-12-31 Ati Technologies Ulc Server-based encoding of adjustable frame rate content
US11290515B2 (en) 2017-12-07 2022-03-29 Advanced Micro Devices, Inc. Real-time and low latency packetization protocol for live compressed video data
US11100604B2 (en) 2019-01-31 2021-08-24 Advanced Micro Devices, Inc. Multiple application cooperative frame-based GPU scheduling
US11418797B2 (en) 2019-03-28 2022-08-16 Advanced Micro Devices, Inc. Multi-plane transmission
CN110708604B (zh) * 2019-09-03 2021-09-28 中国联合网络通信集团有限公司 一种视频转发服务器的ip信道带宽的适配方法及装置
US11070829B2 (en) 2019-12-16 2021-07-20 Ati Technologies Ulc Reducing latency in wireless virtual and augmented reality systems
CN113256745A (zh) * 2020-02-13 2021-08-13 英特尔公司 用于基于重要度值来编码的方法和装置
US11652863B2 (en) 2020-03-16 2023-05-16 Tencent America LLC Method and apparatus for cloud gaming
US11833419B2 (en) * 2020-03-16 2023-12-05 Tencent America LLC Method and apparatus for cloud gaming
JP7393267B2 (ja) 2020-03-25 2023-12-06 株式会社ソニー・インタラクティブエンタテインメント 画像データ転送装置、画像表示システム、および画像データ転送方法
CN115066894A (zh) 2020-03-31 2022-09-16 索尼互动娱乐股份有限公司 传输装置,传输方法和程序
CN111654720B (zh) * 2020-07-17 2023-08-25 腾讯科技(深圳)有限公司 视频编码方法、装置、设备及可读存储介质
US11488328B2 (en) 2020-09-25 2022-11-01 Advanced Micro Devices, Inc. Automatic data format detection
CN112164132B (zh) * 2020-10-17 2021-04-02 深圳市游梦初心文化网络有限公司 基于大数据和云计算的游戏兼容处理方法及云端计算中心
US11478701B1 (en) * 2020-11-06 2022-10-25 Rockwell Collins, Inc. Quasi cloud rendering technique for legacy databases using game engines
CN113041617B (zh) * 2021-03-18 2022-07-26 深圳市腾讯网域计算机网络有限公司 一种游戏画面渲染方法、装置、设备及存储介质
CN113117326B (zh) * 2021-03-26 2023-06-09 腾讯数码(深圳)有限公司 一种帧率控制方法和装置
CN113747198B (zh) * 2021-06-25 2024-02-09 航天时代飞鸿技术有限公司 无人机集群视频图片渲染及后处理的方法、介质和装置
CN113794887A (zh) * 2021-08-17 2021-12-14 镕铭微电子(济南)有限公司 一种游戏引擎中视频编码的方法及相关设备
CN117793367A (zh) * 2024-02-26 2024-03-29 此芯科技(上海)有限公司 一种图像编码方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016505291A (ja) * 2012-11-16 2016-02-25 ソニー コンピュータ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー 遠隔的に処理されるアプリケーションのストリーミングビデオフレーム上のコンテンツのクラウド処理およびオーバーレイのためのシステムおよび方法
JP2017517921A (ja) * 2014-04-11 2017-06-29 マイクロソフト テクノロジー ライセンシング,エルエルシー ヒントを使ったフレーム・エンコード

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930390A (en) 1996-03-28 1999-07-27 Intel Corporation Encoding/decoding signals using a remap table
US6680976B1 (en) 1997-07-28 2004-01-20 The Board Of Trustees Of The University Of Illinois Robust, reliable compression and packetization scheme for transmitting video
JP3606306B2 (ja) 1998-10-08 2005-01-05 沖電気工業株式会社 画像符号化装置、画像復号化装置及び画像伝送システム
US6754234B1 (en) 1999-05-21 2004-06-22 Ati International Srl Method and apparatus for asynchronous frame synchronization
US6611273B2 (en) * 2000-02-25 2003-08-26 Microsoft Corporation Method and data arrangement for encapsulating signed over-ranged color image data to accommodate in-range file formats
JP2002017908A (ja) 2000-07-07 2002-01-22 Endo Mfg Co Ltd ゴルフクラブ及びその製造方法
US6618397B1 (en) 2000-10-05 2003-09-09 Provisionpoint Communications, Llc. Group packet encapsulation and compression system and method
US20020097418A1 (en) * 2001-01-19 2002-07-25 Chang William Ho Raster image processor and processing method for universal data output
US7215813B2 (en) * 2001-12-03 2007-05-08 Apple Computer, Inc. Method and apparatus for color correction
KR20040046901A (ko) * 2002-11-28 2004-06-05 엘지전자 주식회사 영상 전화 시스템 및 그 운용방법
JP4552400B2 (ja) * 2003-08-07 2010-09-29 セイコーエプソン株式会社 画像表示装置、画像表示方法及び画像表示プログラム
US7813000B2 (en) * 2003-12-30 2010-10-12 Microsoft Corporation Device color characterization profile format
US7337273B2 (en) * 2004-03-31 2008-02-26 Microsoft Corporation Strategies for reading information from a mass storage medium using a cache memory
KR20070085745A (ko) * 2004-11-04 2007-08-27 코닌클리케 필립스 일렉트로닉스 엔.브이. 코딩된 비디오 데이터를 처리하기 위한 방법 및 장치
US7570819B2 (en) * 2005-01-28 2009-08-04 Chih-Ta Star Sung Method and apparatus for displaying images with compression mechanism
US20110157196A1 (en) * 2005-08-16 2011-06-30 Exent Technologies, Ltd. Remote gaming features
WO2007119236A2 (en) * 2006-04-13 2007-10-25 Yosef Mizrachi Method and apparatus for providing gaming services and for handling video content
US20080055318A1 (en) 2006-08-31 2008-03-06 Glen David I J Dynamic frame rate adjustment
TW200844899A (en) * 2007-05-04 2008-11-16 Sunplus Mmobile Inc An interactive image and graphical system and method that is capable of detecting collisions of graphical objects
US8175181B1 (en) 2007-05-31 2012-05-08 Marvell International Ltd. Method and apparatus for selecting a modulation coding scheme
WO2008144928A1 (en) 2007-06-01 2008-12-04 Research In Motion Limited Determination of compression state information for use in interactive compression
WO2009016914A1 (ja) 2007-08-02 2009-02-05 Sony Corporation 画像処理装置
US8953685B2 (en) 2007-12-10 2015-02-10 Qualcomm Incorporated Resource-adaptive video interpolation or extrapolation with motion level analysis
WO2009136969A2 (en) * 2008-01-22 2009-11-12 Carnegie Mellon University Apparatuses, systems, and methods for apparatus operation and remote sensing
US8265171B2 (en) 2008-02-26 2012-09-11 Richwave Technology Corp. Error resilient video transmission using instantaneous receiver feedback and channel quality adaptive packet retransmission
US8793749B2 (en) 2008-08-25 2014-07-29 Broadcom Corporation Source frame adaptation and matching optimally to suit a recipient video device
US8958485B2 (en) 2010-06-04 2015-02-17 Broadcom Corporation Method and system for providing selected layered video service via a broadband gateway
US8395709B2 (en) 2009-03-04 2013-03-12 ATI Technology ULC 3D video processing
KR101354400B1 (ko) * 2009-09-01 2014-01-22 엔터테인먼트 익스페리언스 엘엘씨 컬러 이미지를 생성하기 위한 방법 및 이를 이용하는 이미징 장치
KR20130061675A (ko) * 2010-04-20 2013-06-11 톰슨 라이센싱 컴퓨터 그래픽을 사용해서 적어도 하나의 이미지를 렌더링하기 위해 데이터를 인코딩하는 방법 및 디바이스와 대응 디코딩 방법 및 디바이스
US8625666B2 (en) * 2010-07-07 2014-01-07 Netzyn, Inc. 4:4:4 color space video with 4:2:0 color space video encoders and decoders systems and methods
ES2561078T3 (es) 2010-07-15 2016-02-24 Ge Video Compression, Llc Codificación de vídeo híbrido que soporta síntesis de vistas intermedias
US20120236934A1 (en) * 2011-03-18 2012-09-20 Qualcomm Incorporated Signaling of multiview video plus depth content with a block-level 4-component structure
US8797602B2 (en) * 2011-03-23 2014-08-05 Xerox Corporation UV and IR specialty imaging methods and systems
US8813111B2 (en) * 2011-08-22 2014-08-19 Xerox Corporation Photograph-based game
GB2495468B (en) 2011-09-02 2017-12-13 Skype Video coding
US20130057567A1 (en) * 2011-09-07 2013-03-07 Michael Frank Color Space Conversion for Mirror Mode
US20130076771A1 (en) * 2011-09-23 2013-03-28 Apple Inc. Generating a visual depiction of a cover for a digital item
US8872895B2 (en) * 2011-09-30 2014-10-28 Deutsche Telekom Ag Real-time video coding using graphics rendering contexts
JP5331192B2 (ja) * 2011-11-07 2013-10-30 株式会社スクウェア・エニックス・ホールディングス 描画サーバ、センタサーバ、符号化装置、制御方法、符号化方法、プログラム、及び記録媒体
EP2801193B1 (en) * 2012-01-04 2016-10-26 Dolby Laboratories Licensing Corporation Dual-layer backwards-compatible progressive video delivery
US9232139B2 (en) 2012-07-24 2016-01-05 Apple Inc. Image stabilization using striped output transformation unit
US8938127B2 (en) * 2012-09-18 2015-01-20 Nvidia Corporation Hybrid encoding/decoding for remote gaming
US9433858B2 (en) * 2013-01-04 2016-09-06 International Business Machines Corporation Access control of user based photograph bundles
GB2513090B (en) 2013-01-28 2019-12-11 Microsoft Technology Licensing Llc Conditional concealment of lost video data
US8842185B1 (en) 2013-03-14 2014-09-23 Microsoft Corporation HDMI image quality analysis
US9407923B2 (en) 2013-05-20 2016-08-02 Gamefly Israel Ltd. Overconing lost IP packets in streaming video in IP networks
US9161006B1 (en) * 2014-12-05 2015-10-13 Kamcord, Inc. Systems and methods for efficient screen capture
US9491490B1 (en) 2015-06-12 2016-11-08 Intel Corporation Facilitating environment-based lossy compression of data for efficient rendering of contents at computing devices
CN105933724A (zh) * 2016-05-23 2016-09-07 福建星网视易信息系统有限公司 视频制作方法、装置及系统
US10469857B2 (en) 2016-09-26 2019-11-05 Samsung Display Co., Ltd. System and method for electronic data communication
US20190068983A1 (en) 2017-08-25 2019-02-28 Advanced Micro Devices, Inc. Sending a Frame Difference or Raw Chunk Based on a Known Acknowledgement
US10523947B2 (en) 2017-09-29 2019-12-31 Ati Technologies Ulc Server-based encoding of adjustable frame rate content
US11290515B2 (en) 2017-12-07 2022-03-29 Advanced Micro Devices, Inc. Real-time and low latency packetization protocol for live compressed video data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016505291A (ja) * 2012-11-16 2016-02-25 ソニー コンピュータ エンタテインメント アメリカ リミテッド ライアビリテイ カンパニー 遠隔的に処理されるアプリケーションのストリーミングビデオフレーム上のコンテンツのクラウド処理およびオーバーレイのためのシステムおよび方法
JP2017517921A (ja) * 2014-04-11 2017-06-29 マイクロソフト テクノロジー ライセンシング,エルエルシー ヒントを使ったフレーム・エンコード

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHI, SHU ET AL.: "Using Graphics Rendering Contexts to Enhance the Real-Time Video Coding for Mobile Cloud Gaming", MM’11, PROCEEDINGS OF THE 19TH ACM INTERNATIONAL CONFERENCE ON MULTIMEDIA, JPN7022000321, November 2011 (2011-11-01), pages 103 - 112, XP058599777, ISSN: 0004818593, DOI: 10.1145/2072298.2072313 *

Also Published As

Publication number Publication date
KR20200088830A (ko) 2020-07-23
CN111357289B (zh) 2024-04-02
CN111357289A (zh) 2020-06-30
US10594901B2 (en) 2020-03-17
EP3711296A4 (en) 2021-08-04
US20190158704A1 (en) 2019-05-23
WO2019097319A1 (en) 2019-05-23
EP3711296A1 (en) 2020-09-23
KR102432755B1 (ko) 2022-08-18
JP7221957B2 (ja) 2023-02-14

Similar Documents

Publication Publication Date Title
JP7221957B2 (ja) ビデオエンコーダレンダリング向けのゲームエンジンアプリケーション
KR102155681B1 (ko) 가상 현실 비디오 변환 및 스트리밍을 위한 시스템 및 방법
CN113015021B (zh) 云游戏的实现方法、装置、介质及电子设备
JP5307958B1 (ja) 動画配信サーバ、動画再生装置、制御方法、プログラム、及び記録媒体
JP2021503777A5 (ja)
WO2018183257A1 (en) Methods and apparatuses for image processing to optimize image resolution and for optimizing video streaming bandwidth for vr videos
EP3557534A1 (en) Information processing method and apparatus
JP7135067B2 (ja) ゲーム-生成された動きベクトルのためのシステムおよび方法
CN112153391B (zh) 视频编码的方法、装置、电子设备及存储介质
Gül et al. Cloud rendering-based volumetric video streaming system for mixed reality services
CN111869222A (zh) 沉浸式媒体的显示信息度量
TWI559748B (zh) 用於視訊編解碼器的延伸預測模式及效能之方法及系統
US20170221174A1 (en) Gpu data sniffing and 3d streaming system and method
CN113973224A (zh) 媒体信息的传输方法、计算设备及存储介质
JP2022504772A (ja) 低遅延ビデオ符号化のための効率的な量子化パラメータ予測方法
WO2022116822A1 (zh) 沉浸式媒体的数据处理方法、装置和计算机可读存储介质
CN116980392A (zh) 媒体流处理方法、装置、计算机设备和存储介质
Liu et al. Point cloud video streaming in 5G systems and beyond: challenges and solutions
JP2016509486A (ja) ネットワークを介して送信するためのビデオゲーム画面画像の生成及び符号化を行う方法及びシステム
JP2013168941A (ja) 画像データを表示するためのビデオシステム及び方法及びコンピュータプログラムならびに符号化装置
EP4209003A1 (en) Orchestrating a multidevice video session
WO2023169424A1 (zh) 编解码方法及电子设备
KR102499900B1 (ko) 고해상도 영상의 스트리밍을 위한 영상 전송 장치와 영상 재생 장치 및 그 동작 방법
JP2024514060A (ja) ストリーミングアプリケーションにおけるビデオデータの微調整

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210924

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210924

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220705

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221024

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230202

R150 Certificate of patent or registration of utility model

Ref document number: 7221957

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150