(57)【特許請求の範囲】
【請求項１】
処理装置のために背景及び前景を有するモーションデスクトップをレンダリングする方法であって、
モーションデスクトップが、遮られている（occluded）か否を判断するステップと、
モーションデスクトップが遮られていないと判断された場合にのみ、動画に基づくコンテンツを共有メモリに対して（onto）レンダリングするステップ（２０６、３０２、２０８、３０４、２０４、３０６）と、
前記前景のコンテンツを前景情報からレンダリングするステップ（４０４）と、
前記背景の少なくとも一部分としての前記共有メモリからのレンダリングされたコンテンツと、前記背景の上（top）に位置づけられている前記前景のレンダリングされたコンテンツとを含むシーンを構成するステップ（４０８、５１２、６１０、７１８）と、
前記モーションデスクトップとして前記シーンを提示するステップ（４１０、５１４、６１０、７２０）と、
前記処理装置の状態を判断するステップと、
頻度であって、少なくとも部分的に、前記判断された前記処理装置の状態に基づいて、当該頻度において前記動画に基づく前記コンテンツがレンダリングされる頻度を調整するステップと、
を備えることを特徴とする方法。
【請求項２】
請求項１に記載の方法において、前記動画に基づくコンテンツを共有メモリに対してレンダリングするステップの動作と、前記シーンを構成するステップの動作とは、別のプロセスにて実行されることを特徴とする方法。
【請求項３】
請求項１に記載の方法において、
第２の動画に基づくコンテンツを第２の共有メモリに対してレンダリングするステップをさらに備え、
前記シーンを構成するステップは、前記第２の共有メモリからのレンダリングされたコンテンツを含む前記シーンを、前記背景の少なくとも別の部分として構成するステップをさらに備えることを特徴とする方法。
【請求項４】
請求項１に記載の方法において、
前記処理装置の前記判断された状態に少なくとも部分的に基づいて前記モーションデスクトップの前記背景の提示品質を低減するステップをさらに備えることを特徴とする方法。
【請求項５】
前記頻度において、動画に基づくコンテンツがレンダリングされる、前記頻度を調整するステップが、
制御モードにおいて、前記動画に基づいて前記コンテンツのレンダリングを実行するステップ、を更に含む、
請求項１に記載の方法。
【請求項６】
処理装置の少なくとも一つのプロセッサによる実行のために記録された命令を有する有形的表現のコンピュータ可読媒体であって、当該命令が、実行によって、当該少なくとも１つのプロセッサが、以下のステップ、即ち、
モーションデスクトップの背景の少なくとも一部分のコンテンツを共有メモリに対してレンダリングするステップ（２０６、３０２、２０８、３０４、２０４、３０６）と、
前記モーションデスクトップの前景のコンテンツを、前景情報に基づいてレンダリングするステップであって、背景の少なくとも一部分のコンテンツをレンダリングすることが、前記前景のコンテンツのレンダリングとは別個のプロセスにおいて前記少なくとも１つのプロセッサによって実行され、
前記前景のレンダリングされたコンテンツ及び前記共有メモリからの前記背景の少なくとも一部分のレンダリングされたコンテンツに基づいて、シーンを構成するステップ（４０８、５１２、６１０、７１８）と、
前記シーンを前記モーションデスクトップとしてディスプレイの上に提示するステップ（４１０、５１４、６１０、７２０）と、
前記処理装置の状態を判断するステップと、
頻度であって、少なくとも部分的に、前記判断された前記処理装置の状態に基づいて、前記背景の少なくとも一部の前記コンテンツがレンダリングされる頻度を調整するステップと、
モーションデスクトップが、遮られているか否を判断するステップと、
前記モーションデスクトップが遮られていると判断される際に、前記モーションデスクトップの背景の少なくとも一部のコンテンツのレンダリングを停止するステップと、
を含む方法を実行することを、惹起させる
有形的表現のコンピュータ可読媒体。
【請求項７】
請求項６に記載の有形的表現のコンピュータ可読媒体であって、
モーションデスクトップの前景のコンテンツをレンダリングする前記ステップは、
オンデマンドベースで前記前景のコンテンツをレンダリングするステップを含み、
モーションデスクトップの背景の少なくとも一部分のコンテンツをレンダリングする前記ステップは、ポーリングベースで前記背景の少なくとも一部分のコンテンツをレンダリングするステップを含む、
ことを特徴とする有形的表現のコンピュータ可読媒体。
【請求項８】
請求項６に記載の有形的表現のコンピュータ可読媒体であって、
前記頻度を調整するステップが、
少なくとも１つのプロセッサを含む処理装置が、遠隔デスクトップ状態、バッテーリ作動状態、又は、低電力状態、を含む状態にある場合に、更に実行される、
有形的表現のコンピュータ可読媒体。
【請求項９】
請求項６に記載の有形的表現のコンピュータ可読媒体であって、
第２の動画に基づいて前記モーションデスクトップの前記背景の少なくとも第２の部分のコンテンツを第２の共有メモリに対してレンダリングするステップをさらに備え、
シーンを構成する前記ステップは、前記第２の共有メモリからの前記モーションデスクトップの背景の前記少なくとも第２の部分のレンダリングされたコンテンツに基づいて前記シーンを構成するステップをさらに備える、
ことを特徴とする有形的表現のコンピュータ可読媒体。
【請求項１０】
請求項６に記載の有形的表現のコンピュータ可読媒体であって、
前記頻度において、背景の少なくとも一部のコンテンツがレンダリングされる、前記頻度を調整するステップが、制御モードにおいて実行される、
有形的表現のコンピュータ可読媒体。
【請求項１１】
少なくとも一つのプロセッサ（１２０）と、
バス（１１０）と、
メモリ（１３０）とを備える処理装置であって、
前記バスは、前記メモリを前記少なくとも一つのプロセッサと接続して、前記メモリと前記少なくとも一つのプロセッサとの間で通信できるようにし、
前記メモリは、
モーションデスクトップの動いている背景の少なくとも一部分のコンテンツを共有メモリに対してレンダリングする命令（２０６、３０２、２０８、３０４、２０４、３０６）と、
前記モーションデスクトップの前景のコンテンツを前景情報に基づいてレンダリングする命令であって、移動する背景の少なくとも一部のコンテンツをレンダリングするための命令が、当該前景のコンテンツをレンダリングするための命令とは別個のプロセスで実行されるものであるものと、
前記前景のレンダリングされたコンテンツ及び前記共有メモリからの前記背景の少なくとも一部分のレンダリングされたコンテンツに基づいてシーンを構成する命令（４０８、５１２、６１０、７１８）と、
前記シーンを前記モーションデスクトップとして提示する命令（４１０、５１４、６１０、７２０）と、
処理装置の状態を判断する命令と、
頻度であって、少なくとも部分的に、前記判断された前記処理装置の状態に基づいて、
移動する背景の少なくとも一部の前記コンテンツがレンダリングされる頻度を調整するための命令と、
前記モーションデスクトップが、遮られているか否かを判断するための命令と、
前記モーションデスクトップが、遮られていると判断される場合に、前記モーションデスクトップの背景の少なくとも一部のコンテンツのレンダリングを停止するための命令と、
を備えることを特徴とする処理装置。
【請求項１２】
請求項１１に記載の処理装置であって、
頻度であって、当該頻度において、前記動いている背景の少なくとも一部のコンテンツがレンダリングされる、当該頻度を調整するための命令が、
前記処理装置がバッテリー動作の状態、低電力動作の状態、又は遠隔デスクトップ動作の状態で動作しているときに、前記頻度であって、前記動いている背景の少なくとも一部のコンテンツがレンダリングされる頻度を低減する命令、
を更に含む、処理装置。
【請求項１３】
請求項１１に記載の処理装置において、
前記メモリは、前記モーションデスクトップの前記動いている背景の少なくとも第２の部分のコンテンツを第２の共有メモリに対してレンダリングする命令をさらに備え、
前記前景のレンダリングされたコンテンツ及び前記背景の少なくとも一部分のレンダリングされたコンテンツに基づいてシーンを構成する前記命令は、前記第２の共有メモリからの前記動いている背景の前記少なくとも第２の部分のレンダリングされたコンテンツに基づいて前記シーンを構成する命令をさらに備える、
ことを特徴とする処理装置。
【請求項１４】
請求項１１に記載の処理装置において、前記メモリは、前記シーンを前記モーションデスクトップとして提示する場合に音声を含む命令をさらに備えることを特徴とする処理装置。
【請求項１５】
請求項１１に記載の処理装置において、
頻度であって、当該頻度において、前記動いている背景の少なくとも一部のコンテンツがレンダリングされる頻度を調整するための命令が、制御モードで頻度を調整するための命令を更に含む、
処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モーションデスクトップに関する。
【背景技術】
【０００２】
今日、ユーザはデスクトップ壁紙として自身の処理装置上で使用するカスタム静止画像を選択することができる。近年の処理装置のグラフィック処理能力は、かなり豊かなコンテンツをデスクトップの背景として提供することを可能にする。例えば、動画を、処理装置のデスクトップ背景として提供することができる。
【０００３】
これまでは、様々なアプリケーションによって、ビデオ・オーバーレイ機能を使用して許容可能なモーションデスクトップの作成が試みられてきた。ビデオ・オーバーレイ機能を使用するとき、デスクトップの背景領域に特定のクロマティック・キー値（chromatic key value）を割り当てることができる。ビデオは、特定のクロマティック・キー値を有する領域によって定義されたクリッピング領域に対して作成することができる。クリッピング領域とは、画像又はビデオを提示することができる領域である。しかしながら、ビデオ・オーバーレイ機能を使用する手法には、２つの問題がある。第１に、影付きテキスト及び部分的に半透明の要素等の特徴は、ビデオ・オーバーレイ機能を使用して作成された背景と基本的に相性が悪い。例えば、影付きテキストの影の部分と半透明要素の背面の領域は、特定のクロマティック・キー値の近似と関連付けられた色を有することができる。特定の主要クロマティック・キー値の近似を有する領域は、特定のクロマティック・キー値を有する領域をオーバーレイすることができる任意のビデオとずれているように見える可能性がある。第２に、システムは、典型的には、一つのビデオ・オーバーレイリソースを取り込むこと及びデスクトップでそれを使用することによって、このリソースのみを有するので、例えば、メディアプレーヤー又はビデオ編集アプリケーション等の他のアプリケーションは、ビデオ・オーバーレイリソースを取得及び使用することができない可能性がある。
【０００４】
許容できるモーションデスクトップを作成する別の手法において、デスクトップ上の任意のコンテンツを、例えばアイコン及び関連テキスト並びに他のアイテム等のデスクトップアイテムを除く複雑なクリッピング領域を作成することによって、描くことができる。モーションデスクトップは、この手法を利用して不十分に実行された。デスクトップアイテムは背景を用いて構成されず、背景が更新される度に、更新された背景は、クリッピング領域を使用して「切り取られる」必要があった。これは、ユーザの悪い経験をもたらした。さらに、デスクトップが更新されるとクリッピング領域が維持されることを要求するこの手法は複雑であり、この手法は半透明な要素を如何にして処理するかについては考慮していない。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本概要は、詳細な説明においてさらに後述される単純化した形式における概念の選択を導くために与えられている。本概要によって、特許請求の範囲に記載された主題の重要な特徴又は本質的な特徴が特定される事は意図されていないし、特許請求の範囲に記載された主題の範囲を限定するために使用されることも意図されていない。
【課題を解決するための手段】
【０００６】
本開示の主題と一致する実施形態において、モーションデスクトップは処理装置のディスプレイ画面に提示することができる。モーションデスクトップは、背景として動画、並びに、前景としてアイコン及び関連テキスト又は他の情報等の前景アイテムを含むことができる。前景コンテンツは構成表面上にレンダリングされ、その構成表面は、一部の実施形態において半透明のアイテムを提示できるアルファ有効表面であってもよい。１つ又は複数のモーションデスクトップモジュールは、モーションデスクトップの動画背景のそれぞれの部分のそれぞれの共有メモリに対してコンテンツをレンダリングすることができる。コンポーザは、それぞれの共有メモリからレンダリングされたコンテンツを使用して、前景コンテンツと動画に関してレンダリングされたコンテンツとからシーンを構成表面上に構成することができ、及び構成されたシーンの一部を合成することができる。次いで、構成されたシーンを、モーションデスクトップとして処理装置のディスプレイ画面に提示することができる。
【０００７】
本開示の主題に一致する実施形態において、レンダリングされた背景コンテンツがモーションデスクトップを構成するのに利用可能である事を示す通知をモーションデスクトップモジュールから受信した後、モーションデスクトップの背景の動画を、提示用の構成表面上にレンダリングし及び構成することができる。一部の実施形態において、提示されたモーションデスクトップの背景の動画は品質を低下させるように、モーションデスクトップの背景の動画を構成表面上に定期的にレンダリングし及び構成して、モーションデスクトップの前景アイテム及び他のアプリケーションを提示する高品質のサービスを提供することができる。
【０００８】
上述の利点及び特徴並びに他の利点及び特徴を得ることができる態様を説明するために、より詳細な説明が以下に説明され、添付図面に示される具体的な実施形態を参照することによって表されるであろう。これらの図面は典型的な実施形態のみを示すものであり且つ本発明の範囲を限定するものとしては考えられていないことを理解して、添付図面の使用を通じて、さらに具体的に詳しく、実装について記述され且つ説明されるであろう。
【図面の簡単な説明】
【０００９】
【図１】本開示の主題に一致する実施形態を実行することができる処理装置の機能ブロック図である。
【図２】本開示の主題に一致する実施形態の例示的な要素を示す機能ブロック図である。
【図３】本開示の主題に一致する実施形態における例示的な要素、及びそれぞれの共有メモリ経由の例示的な要素間の通信を示す機能ブロック図である。
【図４】モーションデスクトップの前景コンテンツをレンダリングする例示的なプロセスを示す流れ図である。
【図５】背景コンテンツをレンダリングし、レンダリングされた背景コンテンツ及びレンダリングされた前景コンテンツからシーンを構成し、モーションデスクトップとしてシーンを提示する例示的なプロセスを示す流れ図である。
【図６】通知を受信し、モーションデスクトップの前景部分又は背景部分を塗り替える例示的なプロセスを示す流れ図である。
【図７Ａ】モーションデスクトップをレンダリングし、構成し、及び提示する例示的なプロセス、並びにモーションデスクトップを更新する更新方法を変更する例示的なプロセスを示す流れ図である。
【図７Ｂ】モーションデスクトップをレンダリングし、構成し、及び提示する例示的なプロセス、並びにモーションデスクトップを更新する更新方法を変更する例示的なプロセスを示す流れ図である。
【図７Ｃ】モーションデスクトップをレンダリングし、構成し、及び提示する例示的なプロセス、並びにモーションデスクトップを更新する更新方法を変更する例示的なプロセスを示す流れ図である。
【発明を実施するための形態】
【００１０】
実施形態について以下に詳細に説明する。特定の実装について論じられるが、これは例示目的のためにのみ記載されていることが理解されるべきである。関連技術の当業者は、本開示の主題の趣旨及び範囲から逸脱することなく他の要素及び構成を使用できることを認識するであろう。
【００１１】
処理装置は、動画の表面に現れる、例えばアイコン及び関連テキスト等の前景アイテム又は他の情報と共に、処理装置の表示画面上の動画を含むことができる、モーションデスクトップを提示することができる。モーションデスクトップ技術を概念化する一つの方法は、モーションデスクトップの表面について考慮することであり、ユーザは、多くの興味のあるものを見ることができる三次元シーンの前につるされる一片のガラスとして、モーションデスクトップの表面と、情報のやりとりをすることができる。シーンはディスプレイ画面（ビデオ壁紙）全体を埋めるようにスケーリングされた直角の矩形に映し出されたビデオと同様にシンプルであってもよく、又は、永続的な三次元多人数ゲーム世界のカメラ視点をレンダリングするのと同じくらい上等であってもよい。
【００１２】
本開示の主題に一致する実施形態において、前景コンテンツは、デスクトップの相互作用可能な部分であってよく、その相互作用可能な部分はユーザのデータによって駆動することができる。前景コンテンツは、例えば、半透明のアイテムを提示できるアルファ有効表面等の構成表面に対してレンダリングできるようにリダイレクトすることができる。一つ又は複数のモーションデスクトップモジュールは、モーションデスクトップの背景の少なくとも一部分のコンテンツを、コンポーザと共有されたそれぞれの共有メモリに対してレンダリングすることができる。定期的に、コンポーザは、各個別の共有メモリからレンダリングされたコンテンツを使用してシーンを構成し、シーンの背景及び前景部分を合成することができる。その結果、高品質な視覚効果を、達成し及び提示することができる。一部の実施形態においては、アルファ・ブレンディング動作は、最近のグラフィックカードに見られるグラフィック処理装置（ＧＰＵ）にオフロードすることができ、それによって、他のアプリケーション及びサービスに関する利用可能な処理能力に重大な影響を与えることなく、ハイファイの視覚的経験を提供することができる。
【００１３】
例示的処理装置
図１は、本開示の主題に一致する実施形態を実行するのに使用することができる、処理装置１００の機能ブロック図である。処理装置１００は、バス１１０、プロセッサ１２０、メモリ１３０、読出し専用メモリ（ＲＯＭ）１４０、記憶装置１５０、入力装置１６０、表示装置１７０、及びグラフィックプロセッサ１８０を含むことができる。
【００１４】
バス１１０は、処理装置１００の要素間の通信を可能とする、通信インターフェースであってもよい。プロセッサ１２０は、命令を解釈し実行する少なくとも一つの従来のプロセッサ又はマイクロプロセッサを含むことができる。メモリ１３０は、情報及びプロセッサ１２０が実行する命令を記憶する、ランダム・アクセス・メモリ（ＲＡＭ）又は別のタイプの動的記憶装置であってもよい。また、メモリ１３０は、プロセッサ１２０による命令実行中に使用される一時的な変数又は他の中間情報を記憶することができる。ＲＯＭ１４０は、プロセッサ１２０に対する静的な情報及び命令を記憶する、従来のＲＯＭデバイス又は別のタイプの静的記憶装置を含むことができる。記憶装置１５０は、データ及び／又は命令を記憶するいかなるタイプの有形的表現媒体（tangible media）を含むことができる。グラフィックプロセッサ１８０は、データを処理しグラフィック画像を提示する少なくとも１つのグラフィックプロセッサを含むことができる。
【００１５】
処理装置１００は、例えばメモリ１３０又は他の有形的表現媒体等の機械可読媒体に含まれる一連の命令を実行するプロセッサ１２０に応えるような機能を実行することができる。そのような命令は、記憶装置１５０等の別の機械可読な有形的表現媒体又は通信インターフェース１８０経由の個別デバイスからメモリ１３０へ読み出すことができる。
【００１６】
例示的動作
図２は、本開示の主題に一致する実施形態における要素及びインターフェースを示す例示的な機能ブロック図である。図２の実施形態は、コンポーザ２０２と、モーションデスクトップモジュール２０４，２０６，及び２０８とを含むことができる。コンポーザ２０２は、アプリケーションプログラムインターフェイス（ＡＰＩ）２１０，２１２，及び２１４を介してそれぞれモーションデスクトップモジュール２０４，２０６，及び２０８と連動することができる。モーションデスクトップモジュール２０４，２０６，及び２０８の各々は、ＡＰＩ２１６経由でコンポーザ２０２と連動することができる。
【００１７】
モーションデスクトップモジュール２０４、２０６，及び２０８の各々は、モーションデスクトップの背景の少なくとも一部分のコンテンツをそれぞれの共有メモリにレンダリングすることができ、そのそれぞれの共有メモリをコンポーザ２０２と共有することができる。レンダリングされるコンテンツは動画であってもよい。コンポーザ２０２は、それぞれの共有メモリからレンダリングされたコンテンツを使用することに関与して、構成表面上でシーンを構成することができる。この構成表面はアルファ有効表面であってもよい。さらに、例えばアイコン及び関連テキスト並びに他のアイテム等の前景コンテンツを構成表面にリダイレクトすることができる。コンポーザ２０２は、前景コンテンツをそれぞれの共有メモリからレンダリングされたコンテンツと合成して、シーンを構成することができ、このシーンを、例えば、表示装置１７０等の処理装置のディスプレイ画面に提示することができる。一部の実施形態においては、構成表面を、グラフィックプロセッサ又はグラフィック処理装置（ＧＰＵ）によって処理し及びアルファブレンドすることができる。
【００１８】
図２において示された実施形態において、コンポーザ２０２及びモーションデスクトップモジュール２０４は単一のプロセスにて実行することができるが、モーションデスクトップモジュール２０６，２０８は、コンポーザ２０２及びモジュールデスクトップモジュール２０４が実行することができるプロセスとは別のプロセスにて実行することができる。一部の実施形態においては、コンポーザ及びモーションデスクトップモジュールは単一のプロセスにて実行することができる。他の実施形態においては、コンポーザ及びモーションデスクトップモジュールは、各々別のプロセスにて実行することができる。実施形態の一部において、コンポーザを、１つ又は複数のモーションデスクトップモジュールから分離することができる。
【００１９】
図３は、本開示の主題に一致する実施形態の態様をさらに示す機能ブロック図である。この実施形態においては、モーションデスクトップモジュール２０４はモーションデスクトップの背景の少なくとも一部分のコンテンツを共有メモリ３０６に対してレンダリングすることができ、モーションデスクトップモジュール２０６はモーションデスクトップの背景の少なくとも第２の部分のコンテンツを共有メモリ３０２に対してレンダリングすることができ、モーションデスクトップモジュール２０８は、モーションデスクトップの背景の少なくとも第３の部分のコンテンツを共有メモリ３０４に対してレンダリングすることができる。モーションデスクトップモジュール２０４，２０６，２０８の各々は、コンポーザ２０２に、それぞれのモーションデスクトップモジュールの各々からのコンテンツが背景スクリーン内のどこにどのようにして位置づけられるべきかを知らせることができる。例えば、モーションデスクトップモジュールから中心に位置付けられたコンテンツは、スクリーンの切手大の部分を占めることができ、又は、中心に置かれたコンテンツを拡大してスクリーンの視覚領域若しくスクリーンを超えた視覚領域を完全に覆うことができる。コンポーザ２０２は、モーションデスクトップモジュール２０４、２０６、２０８がそれらのそれぞれのコンテンツを提示する最良の方法を知っていると想定することができ、コンポーザ２０２は、可能であれば、それぞれのモーションデスクトップモジュールの位置の要求の各々を受け取ることができる。コンテンツが別のモーションデスクトップモジュールからのコンテンツと重なるようにそのそれぞれのコンテンツを位置づけることをモーションデスクトップモジュールが要求する状況において、コンポーザ２０２は最新のモーションデスクトップモジュールの要求を簡単に受け取ることができる（すなわち、最後の要求が勝る）。
【００２０】
この実施形態において、共有メモリ３０２，３０４，及び３０６の各々を、コンポーザ２０２と共有することができる。一実施形態において、それぞれのレンダリングされたコンテンツがコンポーザ２０２に対して利用可能であるときに、モーションデスクトップモジュール２０４−２０６の各々はコンポーザ２０２に通知することができる。それぞれのモーションデスクトップモジュールからの通知を受信した後に、コンポーザ２０２は共有メモリ３０２，３０４又は３０６内のコンテンツを使用して、背景表面を構成することができる。次いで、背景と前景表面３０１からの前景コンテンツとは、アルファ有効表面であってもよい構成表面３０８上のシーンとして構成され、提示のため新たに更新されたモーションデスクトップとして合成することができる。
【００２１】
図３に図示された実施形態は、例示的実施形態である。他の実施形態において、より少ないモーションデスクトップモジュール又はより多くのモーションデスクトップモジュールを含むことができる。例えば、一実施形態は、１つのモーションデスクトップモジュール及び１つの共有メモリのみを含むことができる。
【００２２】
例示的処理
図４は、本開示の主題に一致する実施形態で実行することができる例示的なプロセスを図示している。図４の例示的なプロセスは、例えばコンポーザ２０２等のコンポーザが通知を受信してモーションデスクトップの前景の前景コンテンツを塗り替える場合に起こり得る処理を図示している。
【００２３】
プロセスは通知を受信するコンポーザ２０２により開始して、モーションデスクトップの前景の前景コンテンツを塗り替えることができる（動作４０２）。前景コンテンツは、アイコン、関連テキスト、又は他のアイテム等の事項を表す前景情報から前景表面３０１上にレンダリングすることができる（動作４０４）。一部の実施形態において、コンポーザ２０２は、オペレーティングシステム要素又は他の構成要素に対して通信を発し、前景コンテンツが前景表面３０８にレンダリングされるよう要求することができる。
【００２４】
次に、他のコンポーザ２０２スレッドが構成表面３０８に対して書き込むことを防止するために、コンポーザ２０２は構成表面３０８をロックすることができる（動作４０６）。ロックはハードウェア又はソフトウェアの機構を介して実行することができる。次いで、コンポーザ２０２は、（以下に説明するように）構成領域に対して先にコピーすることができた前景表面３０１のレンダリングされた前景コンテンツ及びレンダリングされた背景コンテンツから、又は１つ又は複数の共有メモリに含まれるレンダリングされた背景コンテンツから、シーンを構成し、及び合成することができる（動作４０８）。一部の実施形態において、コンポーザ２０２は、シーンのブレンディングをＧＰＵにオフロードすることができる。次いで、コンポーザ２０２は、処理装置のディスプレイ上にシーンをモーションデスクトップとして提示することができる（動作４１０）。次いで、コンポーザ２０２は構成表面３０８のロックを解除して、他のコンポーザ２０２スレッドが構成表面３０８に対して書き込むことを可能にすることができる（動作４１２）。
【００２５】
図５は、本開示の主題に一致する実施形態において実行されて、モーションデスクトップの背景コンテンツを更新することができる例示的なプロセスの流れ図である。この例示的なプロセスは、コンポーザ２０２等のコンポーザと、同一又は別のプロセスで実行するモーションデスクトップモジュールとによって実行することができる。
【００２６】
プロセスは、モーションデスクトップが遮られているか否かを判定するモーションデスクトップモジュールにより開始することができる（動作５０２）。モーションデスクトップは、モーションデスクトップが表示されるのを妨げる、表示されているウィンドウ又は他のアイテムによって遮られる可能性がある。モーションデスクトップはまた、他の条件下においても遮られる可能性がある。この他の条件とは、以下の条件を含むことができるが、これらの条件に限定されない。すなわち、デスクトップが待機状態のとき、セッションがロックされているとき、又は、スクリーンセイバーが実行しているときである。モーションデスクトップモジュールが、モーションデスクトップが遮られていると判定する場合、プロセスは次いで戻ることができる。すなわち、モーションデスクトップが遮られているとモーションデスクトップモジュールが判定するとき、アルファ有効表面であってもよい構成表面３０８に対する動画のコンテンツのレンダリングを、停止し又は一時停止することができる。言い換えると、モーションデスクトップが遮られていないときのみ、構成表面３０８に対する動画のコンテンツのレンダリングを実行することができる。
【００２７】
モーションデスクトップモジュールが、モーションデスクトップが遮られていないと判定する場合、モーションデスクトップモジュールは次いで、例えばモーションデスクトップの背景の動画コンテンツ等のコンテンツを共有メモリに対してレンダリングすることができる（動作５０４）。次に、モーションデスクトップモジュールは、例えばコンポーザ２０２等のコンポーザに、背景のモーションデスクトップモジュールのレンダリングされたコンテンツの有用性について通知することができる（動作５０６）。次に、コンポーザ２０２は、共有メモリをロックしてモーションデスクトップモジュールが共有メモリに対して書き込むことを防止し、構成表面３０８をロックして、前景コンテンツが構成表面３０８に対して書き込まれることを防止することができる（動作５０８）。
【００２８】
次いで、コンポーザ２０２は、共有メモリのコンテンツを使用して構成表面３０８に対して背景コンテンツをレンダリングし（動作５１０）、構成表面３０８に対して先にレンダリングされたレンダリング前景コンテンツと、構成表面３０８に対して新規にレンダリングされた背景のレンダリングコンテンツとに基づいてシーンを構成及び合成することができる（動作５１２）。次いで、構成されたシーンを、処理装置のディスプレイにモーションデスクトップとして提示することができる（動作５１４）。一部の実施形態において、シーンのブレンディングをＧＰＵにオフロードすることができる。次いで、コンポーザ２０２は、構成表面３０８及び共有メモリのロックを解除して、前景コンテンツが構成表面３０８に前景表面３０１からレンダリングされることを再び可能にし、モーションデスクトップが共有メモリに書き込むことを可能にすることができる（動作５１６）。その後、モーションデスクトップモジュールが背景コンテンツを再びレンダリングしてモーションデスクトップの背景を更新したときに、本プロセスを再び実行することができる。
【００２９】
一部の実施形態において、モーションデスクトップモジュールは、複数のメモリをコンポーザ２０２と共有することができる。そのような実施形態において、モーションデスクトップモジュールが、背景コンテンツが共有メモリのうちの一方において利用可能であるということをコンポーザに通知するとき、モーションデスクトップモジュールは次いで、共有メモリの他方を使用することができる。次いで、モーションデスクトップモジュールは更新された背景コンテンツを共有メモリの一方に対してレンダリングすることができる間に、コンポーザ２０２は共有メモリの他方を使用して、構成表面３０８に対して背景コンテンツをレンダリングすることができる。そのような実施形態においては、共有メモリのうちいずれか一つをロックすることができる間、モーションデスクトップモジュールは継続して背景コンテンツをレンダリングすることができる。
【００３０】
一部の実施形態において、例えばコンポーザ２０２等のコンポーザは、同一又は異なるソースから、前景更新通知又は背景更新通知の各々を受信することができる。その前景更新通知又は背景更新通知を、更新され及び提示されるモーションデスクトップの前景又は背景にそれぞれ生じさせることができる。図６はそのような実施形態で実装することができる例示的なプロセスの流れ図である。
【００３１】
プロセスは通知を受信するコンポーザ２０２によって開始することができる（動作６０２）。コンポーザ２０２は、通知が、モーションデスクトップモジュールが背景コンテンツを共有メモリにレンダリングした事を示す背景通知であるか否か（動作５０４，図５を参照）、又は、通知が、モーションデスクトップの前景を更新できることを示す、前景通知であるか否かを判定することができる（動作６０４）。コンポーザ２０２は、受信された通知がモーションデスクトップモジュールからの背景通知であると判定する場合、コンポーザ２０２は次いで、それぞれの共有メモリのコンテンツを使用することによって、モーションデスクトップの背景を塗り替えて（動作６０６）、構成表面３０８に対してコンテンツをレンダリングすることができる。これは、図５の動作５０６−５１６に関して先に説明されている。一部の実施形態において、構成表面３０８はアルファ有効表面であってもよい。次いで、コンポーザ２０２は、前景表面３０１から構成表面３０８に対して先にレンダリングすることができた、構成表面３０８の新規にレンダリングされたコンテンツ及び前景コンテンツからシーンを構成し、及び合成することができる（動作６１０）。次いで、動作６０２−６１０を繰り返すことができる。
【００３２】
動作６０４において、通知が前景通知であることをコンポーザ２０２が判定する場合、次いでコンポーザ２０２は、前景表面３０１から構成表面３０８にレンダリングされた前景のコンテンツ及び構成表面３０８にレンダリングされたモーションデスクトップの背景のコンテンツに基づいてシーンを構成することによって、モーションデスクトップの前景を塗り替えることができる（動作６０８）。これは、動作４０４−４１２に関して先に説明されている。
【００３３】
本開示の主題に一致する他の実施形態において、モーションデスクトップの背景の提示品質を、モーションデスクトップを提示する処理装置の状態に少なくとも部分的に基づいて、スケーリングし、又は低下させることができる。すなわち、動画に基づく背景コンテンツをレンダリングする頻度は、モーションデスクトップを提示する処理装置の状態に少なくとも部分的に基づいて調整することができる。例えば、モーションデスクトップがバッテリー駆動状態、低電力状態、又は（処理装置のモーションデスクトップが遠隔処理装置上に表示されていることを示す）遠隔デスクトップ状態であると判定される場合、モーションデスクトップの背景を、それ程頻繁ではなく更新することができる。処理装置の状態が、例えば、バッテリー駆動状態又は低電力状態からプラグイン状態に変わる場合、モーションデスクトップの背景の提示品質を、より高い品質で再び提示することができる。図７Ａ−図７Ｃは、そのような実施形態で実装することができる例示的なプロセスを示す流れ図である。
【００３４】
通知を受信するコンポーザ２０２によって、プロセスは開始して、モーションデスクトップの背景を更新することができる（動作７０２）。コンポーザ２０２は、コンポーザ２０２が実行する処理装置の動作状態をチェックすることができる（動作７０４）。例えば、処理装置がバッテリー駆動状態、低電力状態、遠隔デスクトップ状態、又は別の状態であるか否かを、コンポーザ２０２は判定することができる。この実施形態において、モーションデスクトップの背景の提示品質を、処理装置の動作状態が低電力状態又は遠隔デスクトップ状態であるときに、スケーリングし、又は低下させることができる。他の実施形態において、モーションデスクトップの背景の提示品質を、処理装置の動作状態が低電力状態、バッテリー駆動状態、又は遠隔デスクトップ状態であるときに、スケーリングし、又は低下させることができる。さらに他の実施形態において、モーションデスクトップの背景の提示品質を、処理装置の動作状態が他の状態にあるときに、スケーリングし、又は低下させることができる。モーションデスクトップの背景の提示品質を、モーションデスクトップの背景の更新動作を変更することにより低下させて、それぞれのモーションデスクトップモジュールから通知を受信した後、モーションデスクトップの背景を更新する（以下、「オンデマンド」更新とする）代わりに、１つ又は複数のモーションデスクトップモジュールを、更新のために定期的にポーリングすることができる（以下、「ポーリング」更新とする）。
【００３５】
動作状態の点検後に、コンポーザ２０２は、動作状態に基づいて、「ポーリング」から「オンデマンド」への更新の変化か、又は「オンデマンド」から「ポーリング」への更新の変化かを判定することができる（動作７０６）。更新動作における変化が全く生じないとコンポーザ２０２が判定する場合、コンポーザ２０２は次いで、モーションデスクトップが遮られているか否かを判定することができる（動作７１２，図７Ｂ）。コンポーザ２０２が、モーションデスクトップが遮られていると判定する場合、次の背景通知が受信されるまで、さらなる処理を生じさせないことができる。すなわち、モーションデスクトップが遮られている場合、モーションデスクトップの背景を更新することができない。
【００３６】
モーションデスクトップが遮られていないとコンポーザ２０２が判定する場合、コンポーザ２０２は、モーションデスクトップモジュールと共有された共有メモリをロックして、モーションデスクトップモジュールが共有メモリに対して書き込むことを防止し、且つコンポーザ２０２は、構成表面３０８をロックして、他のコンポーザ２０２のスレッドが構成表面３０８に対して書き込むことを防止することができる（動作７１４）。コンポーザ２０２は次いで、共有メモリを使用して共有メモリのコンテンツを構成表面３０８に対してレンダリングすることができる（動作７１６）。コンポーザ２０２は次いで、構成表面３０８上にレンダリングされた背景及び前景コンテンツからシーンを構成し、且つ背景コンテンツ及び前景コンテンツを合成することができる。一部の実施形態においては、合成をＧＰＵによって実行することができる。構成されたシーンを次いで、処理装置のディスプレイにコンポーザ２０２によってモーションデスクトップとして提示することができる（動作７２０）。コンポーザ２０２は次いで、構成表面３０８のロックを解除して、他のコンポーザ２０２スレッドが構成表面３０８に対して書き込むことを可能にし、及びコンポーザ２０２は、共有メモリのロックを解除して、モーションデスクトップモジュールが共有メモリに書き込むことを可能にすることができる（動作７２２）。別の通知を受信した後、動作７０２を再び実行することができる。
【００３７】
動作７０６（図７Ａ）において、モーションデスクトップの更新の際に変更が生じ得るとコンポーザ２０２が判定した場合、次いでコンポーザ２０２は、更新の際の変更が「ポーリング」更新への変更であるか否かを判定することができる（動作７３０）。変更が「ポーリング」更新への変更であるとコンポーザ２０２が判定する場合、コンポーザ２０２は次いで、共有メモリ内にある更新後のレンダリングされた背景コンテンツの有用性を示す、モーションデスクトップモジュールからの通知を無効にし、又は無視することができる（動作７３２）。コンポーザ２０２は次いで、ポーリング通知を有効にすることができる（動作７３４）。すなわち、モーションデスクトップの背景に対する更新が生じることを示すために受信された通知は、１秒あたり１０回等の所定期間又は別の期間に基づいて定期的に生成することができる。そのような通知は、タイマの満了時に生成することができる。このタイマは「ポーリング」更新動作中に実行する間、満了時に再開することができる。動作７１２−７２２（図７Ｂ）は次いで、コンポーザ２０２によって実行されて、モーションデスクトップを構成し、レンダリングし、及び提示することができる。
【００３８】
動作７３０において、更新が「ポーリング」更新に変更されないとコンポーザ２０２が判定する場合、次いでコンポーザ２０２は、更新が「オンデマンド」更新に変更されると想定することができる。コンポーザ２０２は次いで、例えば、タイマを停止すること、又は別の動作を実行することによってポーリング通知を無効にし（動作７４０，図７Ｃ）、「オンデマンド」通知を有効にすることができる（動作７４２）ので、例えば、更新された背景コンテンツが共有メモリ内で利用可能であることを示す、モーションデスクトップモジュールからの通知は、モーションデスクトップの背景が更新されることを再び引き起こすことができる。コンポーザ２０２は次いで、動作７１２−７２２（図７Ｂ）を実行して、モーションデスクトップの背景を更新することができる。例えば、共有メモリ内にある更新後のレンダリングされたコンテンツの有用性を示すモーションデスクトップからの通知等の別の通知が受信されるとき、コンポーザ２０２は再度、動作７０２（図７Ａ）を実行することができる。
【００３９】
図７Ａ−図７Ｃの流れ図によって図示されたプロセスは例示的である。他の実施形態においては、動作は別な順序で実行することができ、又は異なる動作あるいは他の動作を実行することができる。図７Ａ−７Ｃによって図示された様々な実施形態において、処理装置の動作状態をチェックすること（動作７０４）の代わりに、コンポーザ２０２は、モーションデスクトップの前景がサービスの特定品質を有するか否かを判定することができる。すなわち、コンポーザ２０２は、背景が頻繁に更新され過ぎているか否かを判定し、その結果、モーションデスクトップの提示された前景において品質の低下を引き起こすことができる。例えば、一実施形態において、コンポーザ２０２が提示されたモーションデスクトップの前景を更新することができなかったとき、コンポーザ２０２は、モーションデスクトップの前景が更新できることを示す、複数の通知が受信されたか否かを判定することができる。そのような状況において、コンポーザ２０２は、「オンデマンド」更新から「ポーリング」更新への変更を引き起こして、モーションデスクトップの前景がサービスの特定品質を有することを保証することができる。例えば、１５分若しくは別の所定期間等の所定期間が経過したとき、コンポーザ２０２は後で、「ポーリング」更新から「オンデマンド」更新へ戻す変更を引き起こすことができる。一部の実施形態においては、「オンデマンド」更新に切り替わって戻った後に、モーションデスクトップの前景を更新することに関する複数の通知が第２の所定期間内に受信され、且つコンポーザ２０２が再度、モーションデスクトップの前景を更新することができなかった場合、コンポーザ２０２は再び、所定期間より長い期間、「オンデマンド」更新から「ポーリング」更新への変更を引き起こすことができる。
【００４０】
図７Ａ−７Ｃを参照して説明した様々な例示的方法において、「ポーリング」更新に変更することの代わりに、コンポーザ２０２は、モーションデスクトップモジュールが、「制御」モードに入るよう通知することができる。この「制御」モードにおいて、コンポーザ２０２は、モーションデスクトップモジュールに、一時停止し、停止し、又は継続するように命令することができる。そのような実施形態において、モーションデスクトップモジュールは、「一時停止」状態又は「停止」状態にあるとき、リソースを開放することができる。例えば、動作７３２−７３４を変更して、コントローラは、モーションデスクトップモジュールに「制御」モードに入るよう通知し、モーションデスクトップモジュールに「一時停止状態」に入るように命令することができる。動作７４０−７４２を変更して、コントローラは、モーションデスクトップモジュールに、「制御」モードを終了し、「オンデマンド」更新モードに入るように通知することができる。
【００４１】
上記参照流れ図は処理装置上で実行する単一のモーションデスクトップモジュールのみを図示しているが、他の実施形態において、複数のモーションデスクトップモジュールを処理装置上で実行することができる。そのような実施形態においては、モーションデスクトップモジュールの各々は、モーションデスクトップの背景の一部のコンテンツをレンダリングすることができる、コンポーザ２０２と共有されたそれぞれの共有メモリに対して、コンテンツをレンダリングすることができる。
【００４２】
さらに、本開示の主題に一致する一部の実施形態において、音声を、モーションデスクトップを提示する際に含むことができる。そのような実施形態において、コンポーザ２０２は、モーションデスクトップモジュールによって開始することができたオーディオセッションに対して主オーディオ音量調節を見せることができる。
【００４３】
結論
本主題は、構造的な特徴及び／又は方法的な動作に特有の言語によって説明されてきたが、添付した特許請求の範囲における本主題は、上述した具体的な特徴又は動作に必ずしも限定されないことが理解されるできである。どちらかといえば、上述の具体的な特徴又は動作は、特許請求の範囲を実装する例の形として説明されている。
【００４４】
上記説明は具体的な詳細を含むが、いかなる場合にも、それらは特許請求の範囲を限定するものとして解釈されるべきではない。記載された実施形態の他の構成は、本開示の範囲の一部分である。さらに、本開示の主題に一致する実装は、記載されたものよりも多くの動作又はより少ない動作を有することができ、又は図示されたものとは異なる順序で動作を実行することができる。従って、与えられた任意の具体的実施例によってではなく、むしろ添付された特許請求の範囲及びそれらの法的均等物のみが、本発明を定義すべきである。
【図１】
0004809922.tif 000002
【図２】
0004809922.tif 000003
【図３】
0004809922.tif 000004
【図４】
0004809922.tif 000005
【図５】
0004809922.tif 000006
【図６】
0004809922.tif 000007
【図７Ａ】
0004809922.tif 000008
【図７Ｂ】
0004809922.tif 000009
【図７Ｃ】
0004809922.tif 000010