(57)【要約】【課題】ＶＲＡＭ内でマルチソースメディアをオーバーレイするための方法、装置、及びコンピュータープログラム製品の提供。【解決手段】本発明は画像処理装置（ＧＰＵ）において、予め定義されたビデオランダムアクセスメモリ（ＶＲＡＭ）内の場所で第１アプリケーションプログラムからのプライマリイメージをレンダリングする工程と、前記予め定義されたＶＲＡＭ内の場所で第２アプリケーションプログラムからのセカンダリイメージをレンダリングし、前記予め定義されたＶＲＡＭ内の場所で前記プライマリイメージと前記セカンダリイメージのブレンディングを実行する工程と、前記プライマリイメージと前記セカンダリイメージのブレンディング結果をバッファに提供する工程と、を含む。【選択図】図４
2018005226.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置（ＧＰＵ）において、
予め定義されたビデオランダムアクセスメモリ（ＶＲＡＭ）内の場所で第１アプリケーションプログラムからのプライマリイメージをレンダリングする工程と、
前記予め定義されたＶＲＡＭ内の場所で第２アプリケーションプログラムからのセカンダリイメージをレンダリングし、前記予め定義されたＶＲＡＭ内の場所で前記プライマリイメージと前記セカンダリイメージのブレンディングを実行する工程と、
前記プライマリイメージと前記セカンダリイメージのブレンディング結果をバッファに提供する工程と、
を含むことを特徴とする、方法。
【請求項２】
前記バッファが１つ以上のビデオバックバッファを含むことを特徴とする、請求項１に記載の方法。
【請求項３】
前記バッファがフレームバッファであることを特徴とする、請求項１に記載の方法。
【請求項４】
さらに、前記ブレンディング結果をエンコードし、エンコードされた前記ブレンディング結果をＶＲＡＭまたはシステムランダムアクセスメモリ（システムＲＡＭ）内に保存する工程を含むことを特徴とする、請求項１に記載の方法。
【請求項５】
さらに、ディスプレイ上に前記ブレンディング結果を表示する工程を含むことを特徴とする、請求項１に記載の方法。
【請求項６】
前記ディスプレイがユーザーデバイスディスプレイであることを特徴とする、請求項５に記載の方法。
【請求項７】
前記ブレンディング結果が、前記予め定義されたＶＲＡＭ内の場所に戻されることを特徴とする、請求項１に記載の方法。
【請求項８】
前記プライマリイメージを含むプライマリソースが前記セカンダリイメージを含む１つ以上のセカンダリソースに時間と位置の参照を提供することを特徴とする、請求項１に記載の方法。
【請求項９】
前記ブレンディングが指定された時間に、前記プライマリイメージを含むプライマリソース上の選択された位置で実行されることを特徴とする、請求項１に記載の方法。
【請求項１０】
さらに、１つ以上の追加のソースと前記プライマリイメージを含むプライマリソース及び前記セカンダリイメージを含むセカンダリソースのブレンディングを実行する工程を含むことを特徴とする、請求項１に記載の方法。
【請求項１１】
マルチメディアソースの効率的なブレンディングを実行するためのシステムであって、
ビデオランダムアクセスメモリ（ＶＲＡＭ）と１つ以上のフレームバッファを含む画像処理装置（ＧＰＵ）と、
ディスプレイと、
システムランダムアクセスメモリ（システムＲＡＭ）と、を含み、
前記ＧＰＵが、
予め定義されたＶＲＡＭ内の場所でプライマリイメージをレンダリングし、
前記予め定義されたＶＲＡＭ内の場所でセカンダリイメージをレンダリングし、
前記予め定義されたＶＲＡＭ内の場所で前記セカンダリイメージと前記プライマリイメージのブレンディングを実行して、ブレンディング結果を生成し、
前記ブレンディング結果をフレームバッファまたはビデオバックバッファに保存するように構成された、
ことを特徴とする、マルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１２】
前記ＧＰＵがさらに、１つ以上の追加のイメージと前記プライマリイメージ及び前記セカンダリイメージのブレンディングを実行するように構成されたことを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１３】
前記ＧＰＵがさらに、ディスプレイで前記ブレンディング結果を表示するように構成されたことを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１４】
前記ＧＰＵがさらに、前記ブレンディング結果をエンコードしてシステムＲＡＭに保存するように構成されたことを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１５】
前記ブレンディング結果が、前記予め定義されたＶＲＡＭ内の場所に戻されることを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１６】
前記プライマリイメージを含むプライマリソースが、前記セカンダリイメージを含むセカンダリソースに時間と位置の参照を提供することを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１７】
前記ブレンディングが指定された時間に、前記プライマリイメージ上の選択された位置で実行されることを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１８】
前記セカンダリイメージと前記プライマリイメージのブレンディングが、前記プライマリイメージと前記セカンダリイメージを両方のイメージが部分的に見えるようにブレンディングすることを含むことを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項１９】
前記ＧＰＵが、前記予め定義されたＶＲＡＭの場所で、前記プライマリイメージと前記セカンダリイメージをレンダリングすることにより、別段のブレンディング工程を実行することなく、ブレンディング結果を生成するように構成されたことを特徴とする、請求項１１に記載のマルチメディアソースの効率的なブレンディングを実行するためのシステム。
【請求項２０】
非一過性（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）のコンピューター読み取り可能な媒体に保存された、コンピューターのプロセッサにより実行可能な命令を含むコンピュータープログラム製品であって、
予め定義されたビデオランダムアクセスメモリ（ＶＲＡＭ）内の場所でプライマリイメージをレンダリングし、
前記予め定義されたＶＲＡＭ内の場所でセカンダリイメージをレンダリングし、
前記予め定義されたＶＲＡＭ内の場所で前記セカンダリイメージと前記プライマリイメージのブレンディングを実行し、
前記プライマリソースと前記セカンダリソースのブレンディング結果をバッファに提供する、
ことを特徴とする、コンピュータープログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＶＲＡＭでマルチソースメディアをオーバーレイするシステム及び方法に関する。
【背景技術】
【０００２】
クラウドコンテンツプラットフォームなどのプラットフォームは、ターゲットデバイスに複数のマルチメディアコンテンツを同時に配信する必要がある場合がある。
【０００３】
例えば、クラウドゲーミングプラットフォームは、顧客のデバイスにゲームシーンを広告付きでストリーミングしなければならないことがある。ゲームシーンと広告は異なるビデオソースに由来する場合がある。広告がゲームシーンにオーバーレイされている、またはゲームシーンが広告の下にアンダーレイされていることが望ましい可能性がある。
【０００４】
従来のオーバーレイ／アンダーレイプロセスは、次のように動作することがある。プライマリビデオソースからプライマリイメージ（例えばゲーム）をキャプチャし、システムＲＡＭ内のフレームバッファにそれをコピーする。その後オーバーレイ／アンダーレイ（セカンダリ）ビデオソースからオーバーレイ／アンダーレイ（セカンダリ）イメージ（例えば広告）をキャプチャし、フレームバッファ内でオーバーレイ／アンダーレイイメージをプライマリイメージ上にブレンドする。最後に、フレームバッファ内の新しいイメージをターゲットビデオにエンコードする。キャプチャ、コピー、ブレンドはシステムに相当の負荷を追加する。システムバス、システムメモリ、ＣＰＵリソースが影響を受ける。高ＣＣＵ（同時接続ユーザー）のシステムでは、この追加される負荷によってパフォーマンスの低下とサーバーによる電力消費量の増加につながることがある。
【０００５】
このため、より効率的なオーバーレイ／アンダーレイプロセスを提供する新しい改善されたシステムと方法が必要とされている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、ＶＲＡＭでマルチソースメディアをオーバーレイするシステム及び方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の実施態様は、アプリケーションプログラムにより生成されたビデオソースにマルチメディアコンテンツを効率的にオーバーレイするシステムと方法を提供する。
【０００８】
本発明の実施態様は、効率的にマルチメディアコンテンツをビデオソースの下にアンダーレイする、またはマルチメディアコンテンツをビデオソースとブレンドするシステムと方法も提供する。
【０００９】
本発明の実施態様により、ＶＲＡＭでオーバーレイ／アンダーレイを実行し、システムバス、システムメモリ、ＣＰＵ使用率を低減する、マルチメディアコンテンツ処理システム及びマルチメディアコンテンツ処理方法を提供する。
【００１０】
本発明のシステム及び方法の実施態様において、プライマリソースはアプリケーションプログラムによりＶＲＡＭでレンダリングされ、その後オーバーレイ／アンダーレイソースがレンダリングされ、指定された時間と位置でＶＲＡＭ内にてプライマリソースにブレンドされる。
【００１１】
ブレンドがプライマリソースと同じ場所であるＶＲＡＭで実行されるため、追加のバッファが不要となる。これにより、システムバス、システムメモリ、ＣＰＵ使用率の低減を通じて、システムのパフォーマンスが向上され、電力消費が低減される。
【００１２】
オーバーレイ／アンダーレイ結果はビデオバックバッファまたはフレームバッファに送信され、その後エンコードを経てシステムＲＡＭに送信され、ディスプレイ装置で直接表示されるか、インタラクティブオーバーレイプロセスの一部として同じＶＲＡＭにフィードバックされる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施態様に基づくインタラクティブマルチソースマルチメディアアプリケーションをサポートする分散型クライアント−サーバーコンピューターシステム１０００のブロック図である。
【図２】本発明の一実施態様を実装可能な、画像処理装置（ＧＰＵ）とビデオランダムアクセスメモリ（ＶＲＡＭ）を含むビデオ処理システムのシステムアーキテクチャ図である。
【図３】本発明の一実施態様に基づいたプライマリソースにマルチメディアコンテンツをオーバーレイするシステムのブロック図である。
【図４】本発明の一実施態様に基づいたプライマリソースにマルチメディアコンテンツをオーバーレイする方法のフローチャートである。
【発明を実施するための形態】
【００１４】
本発明の実施態様は、追加バッファを必要とせずに、アプリケーションプログラムにより生成されたビデオソースにマルチメディアコンテンツをオーバーレイ／アンダーレイするシステム及び方法を提供する。
【００１５】
図１は本発明の一実施態様に基づくマルチメディアアプリケーションをサポートする分散型クライアント−サーバーコンピューターシステム１０００のブロック図である。コンピューターシステム１０００は、コンピュータープログラム製品１３１により構成された１つ以上のサーバーコンピューター１０１と１つ以上のユーザーデバイス１０３を含む。コンピュータープログラム製品１３１は、一過性（ｔｒａｎｓｉｔｏｒｙ）または非一過性（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）のコンピューター読み取り可能な媒体で提供することができるが、特定の実施態様においては、例えば、永続的（即ち、不揮発性）ストレージ、揮発性メモリ（例：ランダムアクセスメモリ）、またはさまざまなその他一般的な非一過性のコンピューター読み取り可能な媒体など、非一過性のコンピューター読み取り可能な媒体で提供される。
【００１６】
ユーザーデバイス１０３は、中央処理装置（ＣＰＵ）１２０、メモリ１２２、ストレージ１２１を含む。ユーザーデバイス１０３はさらに入出力（Ｉ／Ｏ）サブシステム（図示しない）も含む（例えば、ディスプレイまたはタッチ対応ディスプレイ、キーボード、十字キー、トラックボール、タッチパッド、ジョイスティック、マイク、および（または）その他ユーザーインターフェイスデバイスと関連コントローラ回路および（または）ソフトウェアなどを含む）。ユーザーデバイス１０３はメディアコンテンツを提供できる任意の種類の電子機器を含むことができる。いくつかの例としては、デスクトップコンピューターや携帯電子機器（携帯電話、スマートフォン、マルチメディアプレイヤー、電子書籍リーダー、タブレット／タッチパッド、ノートパソコン、ラップトップＰＣ、スマートテレビ、スマートウォッチ、ヘッドマウントディスプレイ、その他通信機器などが含まれる。
【００１７】
サーバーコンピューター１０１は、中央処理装置ＣＰＵ １１０、ストレージ１１１、メモリ１１２を含む（図示しないがＩ／Ｏサブシステムを含んでもよい）。サーバーコンピューター１０１は、１つ以上のクライアント、例えば、ユーザーデバイス１０３とネットワーク、例えばネットワーク１０２（例：インターネット）上で通信するためにコンピューター製品１３１をホスト可能な任意の演算装置とすることができる。サーバーコンピューター１０１は１つ以上のクライアントコンピューターとインターネット経由で通信し、インターネット・プロトコル・スイート（ＴＣＰ／ＩＰ）、ハイパーテキスト・トランスファー・プロトコル（ＨＴＴＰ）またはＨＴＴＰＳ、インスタントメッセージングプロトコル、その他プロトコルなどのプロトコルを使用することがある。
【００１８】
メモリ１１２、１２２は任意の既知のコンピューターメモリ装置を含むことができる。ストレージ１１１、１２１は任意の既知のコンピューターストレージ装置を含むことができる。
【００１９】
図示されていないが、メモリ１１２、１２２および（または）ストレージ１１１、１２１は、サーバーコンピューター１０１とユーザーデバイス１０３によりそれぞれアクセス可能な任意のデータストレージ機器を含むこともでき、例えばリムーバブルまたはポータブルな任意のメモリ（例：フラッシュメモリや外付けハードディスクドライブ）、またはサードパーティがホストする任意のデータストレージ（例：クラウドストレージ）などがあるが、これらに限らない。
【００２０】
ユーザーデバイス１０３とサーバーコンピューター１０１はネットワーク１０２経由でアクセス及び通信する。ネットワーク１０２は、ワイドエリアネットワーク（WAN）、セルラーネットワークまたはデバイス間の通信に使用されるその他任意の種類のコンピューターネットワークを含む、有線または無線の接続を含む。
【００２１】
図示された実施態様において、コンピュータープログラム製品１３１は、それぞれサーバー１０１およびユーザーデバイス１０３で実行可能に構成されたコンピュータープログラム製品またはコンピュータープログラム製品の部分を表す。
【００２２】
図２はビデオ処理システム２０００のシステムアーキテクチャ図である。ビデオ処理システム２０００の実施態様は、ビデオ処理向けに最適化されたシステム要素で構成され、特に、画像処理ユニット（ＧＰＵ）２０３とビデオランダムアクセスメモリ（ＶＲＡＭ）２０４を含む。
【００２３】
一部の実施態様において、ビデオ処理システム２０００は、ＣＰＵ２１７やシステムＲＡＭ２０７など、ビデオ処理向けに最適化されているとは限らない従来の演算要素も含む。
【００２４】
一部の実施態様において、ＶＲＡＭ２０４は、例えばフレームバッファ２０６及び（または）バックバッファ２１６など１つ以上のバッファを含む。一般に、フレームバッファ２０６はビデオデータの完全なフレームを格納するに足る大きさのメモリ内の一区域である。フレームバッファも例えばシステムＲＡＭ２０７など他のメモリ要素内に定義することができる。一部の実施態様において、バックバッファ２１６などの追加バッファは、例えばＶＲＡＭ２０４内の適したメモリ区域を定義することで提供されてもよい。一部の実施態様において、１つ以上のバックバッファ２１６はビデオディスプレイにおけるちらつき低減するダブルバッファリング機能をサポートするために提供されてもよい。一部の実施態様において、バックバッファ２１６は以下で説明されるように、レンダリング及び（または）ブレンド操作の結果を格納するために使用されてもよい。
【００２５】
ビデオ処理システム２０００はさらに、例えばＧＰＵ２０３、ＶＲＡＭ２０４、ＣＰＵ２１７、システムＲＡＭ２０７などの要素を直接または間接的に相互接続するために、フロントシステムバス２１２など１つ以上の相互接続メカニズムまたはバスを含むことができる。
【００２６】
図３は、本発明の実施態様に基づきマルチソースメディアをオーバーレイするためのシステム３０００のハイレベルブロック図である。
【００２７】
示されたシステム３０００の実施態様において、画像処理ユニット（ＧＰＵ）２０３は、さらにフレームバッファ２０６を含むビデオランダムアクセスメモリ（ＶＲＡＭ）２０４を含む。一般に、フレームバッファ２０６はビデオデータの完全なフレームを格納するに足る大きさのメモリ内の一区域である。ＶＲＡＭ２０４は１つ以上のフレームバッファ２０６を含んでもよい。上述したように、フレームバッファも例えばシステムＲＡＭ２０７など他のメモリ要素内に定義することができる。
【００２８】
一部の実施態様において、ここで説明するプロセスは、メモリと、ＧＰＵとして描写されない、または実際はＧＰＵではない処理装置を含むデジタルデバイスで実行されてもよい。一部の実施態様において、ＧＰＵはサーバーの一部である。一部の実施態様において、ＧＰＵを含むサーバーはクラウドベースのサーバーである。一部の実施態様において、ＧＰＵはクライアントデバイスの一部である。
【００２９】
プライマリソース３０１は、例えば、頂点（ｖｅｒｔｅｘ）テクスチャ、シェーディング、メッシュなどのグラフィックオブジェクトを含む。好ましい一実施態様において、プライマリソース３０１はアプリケーションプログラムにより生成され、ＶＲＡＭの場所３０５でＶＲＡＭ２０４内にて直接レンダリングされる。一部の実施態様において、ＶＲＡＭの場所３０５はバックバッファ２１６の１つを含む。別の一実施態様において、ＶＲＡＭの場所３０５はフレームバッファ２０６を含む。 一実施態様において、プライマリソース３０１はゲームアプリケーションからの出力である。プライマリソース３０１が直接ＶＲＡＭ２０４内でレンダリングされるため、プライマリソース３０１の「キャプチャ」にリソースを費やす必要がない。別の実施態様において、プライマリソース３０１は別の場所でレンダリングされ、ＶＲＡＭ２０４にコピーされる。
【００３０】
セカンダリマルチメディアソース３０２はプライマリソース３０１上のオーバーレイされるビジュアルまたはマルチメディアコンテンツのアイテムとすることができる。一実施態様において、セカンダリマルチメディアソース３０２は、例えば、頂点（ｖｅｒｔｅｘ）、テクスチャ、シェーディング、メッシュなどのグラフィックオブジェクトを含む。一実施態様において、セカンダリソース３０２はアプリケーションプログラムにより生成され、ＶＲＡＭ２０４内で直接レンダリングされる。一部の実施態様において、セカンダリソース３０２はＶＲＡＭの場所３０５でレンダリングされる。一部の実施態様において、セカンダリソース３０２はプライマリソース３０１を生成するアプリケーションプログラムと同一のアプリケーションプログラムによって生成される。別の実施態様において、セカンダリソース３０２は異なるアプリケーションプログラムにより生成される。さらに別の実施態様において、セカンダリソース３０２はテレビカードなどのハードウェアデバイスの出力としてもよい。そのような実施態様において、システムＲＡＭ２０７内でセカンダリソース３０２をキャプチャしてそれをＶＲＡＭの場所３０５にアップロードする必要があり得る。
【００３１】
一実施例において、セカンダリマルチメディアソース３０２はプライマリソース３０１上にオーバーレイされる広告である。別の実施態様において、セカンダリマルチメディアソース３０２はプライマリソース３０１下にアンダーレイされる。別の実施態様において、セカンダリマルチメディアソース３０２は中間的な方法でプライマリソース３０１とブレンドされ、そのため、例えば、両方のソースがある程度まで見える。
【００３２】
ＶＲＡＭ２０４において、１つ以上のセカンダリソース３０２が指定された時間と位置でプライマリソース３０１にブレンドされる。一部の実施態様において、プライマリソース３０１はセカンダリソース３０２に時間と位置の参照を提供する。一部の実施態様において、ブレンディングはＶＲＡＭ２０４内のプライマリソース３０１がレンダリングされたのと同一のＶＲＡＭの場所３０５で実行されるため、ブレンディングプロセスに追加のバッファを使用する必要がない。一部の実施態様において、ターゲットイメージを生成するためのプライマリソース３０１のレンダリング、セカンダリソース３０２のレンダリング、およびプライマリソース３０１とセカンダリソース３０２のブレンディングがすべて同一のＶＲＡＭの場所３０５で実行される。一部の実施態様において、同一の場所におけるプライマリソース３０１とセカンダリソース３０２のレンダリングは所望のブレンディングを達成し、別段のブレンディング工程はない。
【００３３】
ブレンディング工程の完了後、一部の実施態様において、ブレンディング工程により生成されたターゲットイメージがフレームバッファ２０６に送信される。一部の実施態様において、レンダリングとブレンディングがフレームバッファ２０６で実行される場合、ターゲットイメージはすでにフレームバッファ２０６内にある。次の工程として、ターゲットイメージはターゲットビデオの一部を形成するためにエンコードされてもよい。その後ターゲットビデオがシステムＲＡＭ２０７に送信されてもよい。一部の実施態様において、ターゲットビデオはバックバッファ２１６の１つに送信されてもよい。別の実施態様において、ターゲットビデオは直接ディスプレイ３０８に送信されてもよい。別の実施態様において、インタラクティブなプロセスで、ターゲットビデオはＶＲＡＭの場所３０５に戻され、例えば、複数のオーバーレイを実行してもよい。このオプションを図３にフレームバッファ２０６からＶＲＡＭの場所３０５に戻るデータパスとして示す。例えば、複数のオーバーレイを使用して３D表面またはテクスチャをレンダリングしてもよい。
【００３４】
図４に本発明の実施態様に従ってマルチソースメディアをオーバーレイするプロセス４０００を示す。
【００３５】
工程４０１では、頂点（ｖｅｒｔｅｘ）、テクスチャ、シェーディング、メッシュなどのオブジェクトを含むプライマリソースがＶＲＡＭでレンダリングされる。工程４０２では、オーバーレイ／アンダーレイソースがやはりＶＲＡＭでレンダリングされ、同一のＶＲＡＭの場所でプライマリソースとブレンドされる。一部の実施態様において、ＶＲＡＭの場所はバックバッファ２１６の１つに対応する。一部の実施態様において、ＶＲＡＭの場所は１つ以上のフレームバッファ２０６に対応する。別の実施態様において、ＶＲＡＭの場所はバックバッファまたはフレームバッファの場所とは異なる別の場所に対応する。少なくとも一部の実施態様において、同一の場所におけるプライマリソースとオーバーレイ／アンダーレイソースのレンダリングは所望のブレンディングを達成し、別段のブレンディング工程はない。
【００３６】
より多くのオーバーレイ／アンダーレイソースがある場合、すべてのオーバーレイ／アンダーレイソースがレンダリングされ、ブレンドされるまで、工程４０２と工程４０３が繰り返される。
【００３７】
工程４０４では、オーバーレイ／アンダーレイ結果がビデオバックバッファまたはフレームバッファに提供される。バックバッファまたはフレームバッファでブレンディングプロセスが実行される実施態様において、工程４０４はほとんどまたは全く追加の作業を要さないことがある。別の実施態様において、工程４０４はオーバーレイ／アンダーレイ結果をＶＲＡＭの場所３０５からバックバッファまたはフレームバッファに送信することを含む。
【００３８】
工程４０５ａ、４０５ｂ、４０５ｃはプロセス４０００の代替的な次の工程を示す。工程４０５ａでは、エンコードされたビデオまたは未加工（ｒａｗ）ビデオデータがシステムＲＡＭまたはＶＲＡＭへ送信される。未加工ビデオデータは、例えば、ＧＰＵが特定のエンコーディング形式をサポートしていない場合における、後続のソフトウェアエンコーディング工程（図示しない）のための出力としてもよい。工程４０５ｂでは、オーバーレイ／アンダーレイ結果がディスプレイデバイスに直接提供される。工程４０５ｃでは、インタラクティブなプロセスを通じて複数のオーバーレイを実行するために、オーバーレイ／アンダーレイ結果が工程４０２に１回以上フィードバックされる。
【００３９】
上述ではいくつかの例示的な実施態様を示したが、当業者であれば、本発明の要旨と範囲を逸脱することなく多くの修正や変更が可能であることが理解されるであろう。従って、それらの修正や変更はすべて本発明の請求範囲内に含まれる。
【符号の説明】
【００４０】
１０００  コンピューターシステム
１０１    サーバーコンピューター
１０２    ネットワーク
１０３    ユーザーデバイス
１１０    ＣＰＵ
１１１    ストレージ
１１２    メモリ
１２０    ＣＰＵ
１２１    ストレージ
１２２    メモリ
１３１    コンピュータープログラム製品
２０００  ビデオ処理システム
２０３    ＧＰＵ
２０４    ＶＲＡＭ
２０６    フレームバッファ
２０７    システムＲＡＭ
２１６    バックバッファ
２１７    ＣＰＵ
２１２    フロントシステムバス
３０００    システム
３０１    プライマリマルチメディアソース
３０２    セカンダリ（オーバーレイ）マルチメディアソース
３０５    ＶＲＡＭの場所
３０８    ディスプレイ
４０００  マルチソースメディアをオーバーレイするプロセス
４０１〜４０５  工程
【図１】
2018005226.tif 000003
【図２】
2018005226.tif 000004
【図３】
2018005226.tif 000005
【図４】
2018005226.tif 000006