(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-16
(54)【発明の名称】ビデオエフェクトをレンダリングするための共有拡張現実セッション
(51)【国際特許分類】
G06T 19/00 20110101AFI20240808BHJP
H04N 21/854 20110101ALI20240808BHJP
H04N 23/60 20230101ALI20240808BHJP
H04N 23/661 20230101ALI20240808BHJP
G06F 3/04845 20220101ALI20240808BHJP
【FI】
G06T19/00 600
H04N21/854
H04N23/60 500
H04N23/661
G06F3/04845
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024506914
(86)(22)【出願日】2022-07-08
(85)【翻訳文提出日】2024-02-05
(86)【国際出願番号】 SG2022050479
(87)【国際公開番号】W WO2023014284
(87)【国際公開日】2023-02-09
(32)【優先日】2021-08-04
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】521388058
【氏名又は名称】レモン インコーポレイテッド
【氏名又は名称原語表記】Lemon Inc.
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100229448
【氏名又は名称】中槇 利明
(72)【発明者】
【氏名】ノスキン,ダン
(72)【発明者】
【氏名】ガブマン,マイク
(72)【発明者】
【氏名】ガオ,ヤシ
(72)【発明者】
【氏名】シ,ションチョアン
(72)【発明者】
【氏名】リアオ,ジエ
(72)【発明者】
【氏名】チェン,イリン
(72)【発明者】
【氏名】ヴァイゲレ,クリス
(72)【発明者】
【氏名】アン,エスター
(72)【発明者】
【氏名】ノースウェイ,ライアン
(72)【発明者】
【氏名】マクルーア,レイ
(72)【発明者】
【氏名】レヴァンドフスキ,デイヴィッド
(72)【発明者】
【氏名】パン,コティン
(72)【発明者】
【氏名】ファウリー,ブレイク
(72)【発明者】
【氏名】チェン,イ
(72)【発明者】
【氏名】ワン,ヨン
(72)【発明者】
【氏名】ゴア,メユール
(72)【発明者】
【氏名】リー,クリスティン
(72)【発明者】
【氏名】ブラウン,ヴァネッサ
(72)【発明者】
【氏名】ティエン,グアンチエン
【テーマコード(参考)】
5B050
5C122
5C164
5E555
【Fターム(参考)】
5B050BA07
5B050BA13
5B050CA07
5B050CA08
5B050DA01
5B050EA07
5B050EA18
5B050EA19
5B050FA02
5B050FA09
5B050GA08
5C122DA09
5C122EA61
5C122EA67
5C122FK28
5C122FK40
5C122FK41
5C122GC14
5C122GC17
5C122GC77
5C122HB01
5C122HB05
5C164FA29
5C164MA02S
5C164MA03S
5C164MC04P
5E555AA61
5E555BA04
5E555BA73
5E555BA78
5E555BA87
5E555BB04
5E555BC18
5E555BD05
5E555BD09
5E555FA00
(57)【要約】
共有環境において提供される複数のグラフィックオブジェクトを含むビデオを生成するためのシステム及び方法を説明する。前記方法は、第1のコンピューティング装置において、第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、第2のユーザ識別子の選択を受信することと、前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置に提供させることと、前記第1のコンピューティング装置に関連付けられているディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、前記第2のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、グラフィックオブジェクトを含むビデオを生成することと、を含む。
【選択図】
図8
【特許請求の範囲】
【請求項1】
共有環境において提供される複数のグラフィックオブジェクトを含むビデオを生成する方法であって、
第1のユーザ識別子に関連付けられている第1のコンピューティング装置において、前記第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、
第2のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置へ提供させることと、
前記第1のコンピューティング装置のディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、
前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを前記ビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、
を含む方法。
【請求項2】
前記共有セッション識別子を前記共有セッションマネージャから取得することは、
新しい共有セッション識別子についての要求を前記共有セッションマネージャに送信することと、
前記共有セッション識別子を前記共有セッションマネージャから受信することと、
を含む、請求項1に記載の方法。
【請求項3】
前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供すること
をさらに含む、請求項1に記載の方法。
【請求項4】
前記データ同期部と前記共有セッションマネージャとは、前記第1のコンピューティング装置以外の装置に配置されている
請求項3に記載の方法。
【請求項5】
前記第1のコンピューティング装置の少なくとも1つのカメラを使用してビデオを取得することと、
前記ビデオを取得するとき、
前記コンピューティング装置の前記ディスプレイにレンダリングするための前記第1のグラフィックオブジェクトを、入力として受信し、
前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第2のユーザ識別子に関連付けられている前記第2のグラフィックオブジェクトを、前記データ同期部から受信し、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを取得された前記ビデオからの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
をさらに含む、請求項1に記載の方法。
【請求項6】
前記ビデオを取得するとき、前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供すること
をさらに含む、請求項5に記載の方法。
【請求項7】
前記第1のグラフィックオブジェクトは第1の描画エフェクトに関連付けられ、前記第2のグラフィックオブジェクトは第2の描画エフェクトに関連付けられている
請求項1に記載の方法。
【請求項8】
前記第1の描画エフェクトは前記第2の描画エフェクトと異なる
請求項7に記載の方法。
【請求項9】
前記第2のユーザ識別子に関連付けられている情報を含むグラフィックエレメントを前記第1のコンピューティング装置に関連付けられている前記ディスプレイにおいて表示させること
をさらに含む、請求項7に記載の方法。
【請求項10】
第3のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のコンピューティング装置に関連付けられている前記第1のユーザ識別子とを、前記第3のユーザ識別子に関連付けられている第3のコンピューティング装置へ提供させることと、
前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第3のユーザ識別子に関連付けられている第3のグラフィックオブジェクトを、前記データ同期部から受信することと、
前記第1のグラフィックオブジェクトと、前記第2のグラフィックオブジェクトと、前記第3のグラフィックオブジェクトとを、前記ビデオの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
をさらに含む、請求項1に記載の方法。
【請求項11】
コンピューティング装置であって、
プロセッサと、
前記プロセッサにより実行されるとき、前記コンピューティング装置を、
第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、
第2のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のユーザ識別子とを、共有拡張現実セッションプロセッサへ提供させることと、
前記コンピューティング装置に関連付けられているディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、
前記コンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとをビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、
を実行させるように構成する命令を記憶しているメモリと、
を備える、コンピューティング装置。
【請求項12】
前記共有セッション識別子を前記共有セッションマネージャから取得することは、
新しい共有セッション識別子についての要求を前記共有セッションマネージャに送信することと、
前記共有セッション識別子を前記共有セッションマネージャから受信することと、
を含む、請求項11に記載のコンピューティング装置。
【請求項13】
前記命令は、前記コンピューティング装置を、
前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供することを実行させるようにさらに構成する
請求項11に記載のコンピューティング装置。
【請求項14】
前記データ同期部と前記共有セッションマネージャとは、前記コンピューティング装置以外の装置に配置されている
請求項13に記載のコンピューティング装置。
【請求項15】
前記命令は、前記コンピューティング装置を、
前記コンピューティング装置の少なくとも1つのカメラを使用してビデオを取得することと、
前記ビデオを取得するとき、
前記コンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための前記第1のグラフィックオブジェクトを、入力として受信し、
前記コンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子に関連付けられている前記第2のグラフィックオブジェクトを、前記データ同期部から受信し、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを取得された前記ビデオからの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
を実行させるようにさらに構成する
請求項11に記載のコンピューティング装置。
【請求項16】
非一時的なコンピュータ可読記憶媒体であって、第1のコンピューティング装置により実行されるとき、前記第1のコンピューティング装置に、
第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、
第2のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置へ提供させることと、
前記第1のコンピューティング装置に関連付けられているディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、
前記第1のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとをビデオの複数のビデオフレームとともにレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、
を実行させる命令を含むコンピュータ可読記憶媒体。
【請求項17】
前記共有セッション識別子を前記共有セッションマネージャから取得することは、
新しい共有セッション識別子についての要求を前記共有セッションマネージャに送信することと、
前記共有セッション識別子を前記共有セッションマネージャから受信することと、
を含む、請求項16に記載のコンピュータ可読記憶媒体。
【請求項18】
前記命令は、前記第1のコンピューティング装置を、
前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供することを実行させるようにさらに構成する
請求項16に記載のコンピュータ可読記憶媒体。
【請求項19】
前記データ同期部と前記共有セッションマネージャとは、前記第1のコンピューティング装置以外の装置に配置されている
請求項16に記載のコンピュータ可読記憶媒体。
【請求項20】
前記命令は、前記第1のコンピューティング装置を、
前記第1のコンピューティング装置の少なくとも1つのカメラを使用してビデオを取得することと、
前記ビデオを取得するとき、
前記第1のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための前記第1のグラフィックオブジェクトを、入力として受信し、
前記第1のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子に関連付けられている前記第2のグラフィックオブジェクトを、前記データ同期部から受信し、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを取得された前記ビデオからの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
を実行させるようにさらに構成する
請求項16に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【背景技術】
【0001】
[関連出願の相互参照]
本願は、2021年8月4日に出願された米国出願第17/394,391号(発明名称:ビデオエフェクトをレンダリングするための共有拡張現実セッション)の優先権を主張し、該出願の全ての内容は、引用により全体として本願に組み込まれる。
[背景技術]
【0002】
ビデオ編集技術は、ビデオを編集するさまざまな方法をユーザに提供するために広く使用されている。例えば、ユーザはビデオを編集して、ビデオに視覚エフェクトを追加してもよい。しかしながら、多くのビデオ編集技術は、ビデオエフェクトを追加するユーザ間の共有リアルタイムインタラクションを考慮していない。したがって、ユーザ体験を向上させるためには、ビデオエフェクトをレンダリングするためのビデオ編集技術を開発する必要がある。
【0003】
これら及び他の一般的な考慮に合わせて本明細書で開示される態様を説明する。また、比較的具体的な問題を議論していくが、これらの例は、背景技術又は本開示の他の部分において特定された具体的な問題の解決に限定されるべきではないことを、理解すべきである。
【発明の概要】
【課題を解決するための手段】
【0004】
1つ又は複数のコンピュータのシステムは、操作時に前記システムに動作を実行させるソフトウェア、ファームウェア、ハードウェア、又はそれらの組み合わせを前記システム上にインストールすることにより、特定の操作又は前記動作を実行するように構成されることができる。1つ又は複数のコンピュータプログラムは、データプロセッシング装置により実行されるとき、前記装置に動作を実行させる命令を含むことにより、特定の操作又は前記動作を実行するように構成されることができる。
【0005】
共有環境において提供される複数のグラフィックオブジェクトを含むビデオを生成するためのシステム及び方法を説明する。本開示の少なくとも1つの態様によれば、方法は、第1のユーザ識別子に関連付けられている第1のコンピューティング装置において、前記第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、第2のユーザ識別子の選択を受信することと、前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置に提供させることと、前記第1のコンピューティング装置のディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを前記ビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、を含む。
【0006】
本開示の少なくとも1つの態様によれば、プロセッサとメモリとを備えるコンピューティング装置が説明される。前記メモリは、前記プロセッサにより実行されるとき、前記コンピューティング装置を、第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、第2のユーザ識別子の選択を受信することと、前記共有セッション識別子と前記第1のユーザ識別子とを、共有拡張現実セッションプロセッサに提供させることと、前記コンピューティング装置に関連付けられているディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、前記コンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを前記ビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、を実行するように構成する命令を記憶してもよい。
【0007】
本開示の少なくとも1つの態様によれば、非一時的なコンピュータ可読記憶媒体が説明される。前記コンピュータ可読記憶媒体は、第1のコンピューティング装置により実行されるとき、前記第1のコンピューティング装置に、第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、第2のユーザ識別子の選択を受信することと、前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置に提供させることと、前記第1のコンピューティング装置に関連付けられているディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、前記第1のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを前記ビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、を実行させる命令を含んでもよい。
【0008】
本概要は、以下の発明を実施するための形態でさらに説明される構想の抜粋を簡略化された形で紹介するために提供されるものである。本概要は、特許請求される主題事項の主要特徴又は基本特徴を識別することを目的とするものでもなければ、特許請求される主題事項の範囲を限定することを目的とするものでもない。
【図面の簡単な説明】
【0009】
任意の特定の要素又は動作についての議論を容易に識別させるために、符号の中の最上位有効な1数字又は複数の数字は、その要素が最初に取り入れられた符号を参照する。
【0010】
【
図1】本開示の例にかかる、例示的な共有拡張現実システムを示す図である。
【0011】
【
図2】本開示の例にかかる、コンピューティング装置の追加の詳細を示す図である。
【0012】
【
図3】本開示の例にかかる、クラウドコンピューティング環境内のサーバの追加の詳細を示す図である。
【0013】
【
図4A】本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
【0014】
【
図4B】本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
【0015】
【
図5A】本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
【0016】
【
図5B】本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
【0017】
【
図6A】本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
【0018】
【
図6B】本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
【0019】
【
図7】本開示の例にかかる、例示的なデータ構造の詳細を示す図である。
【0020】
【
図8】本開示の例に従って説明された、共有環境において提供される複数のグラフィックオブジェクトを含むビデオを生成するための方法の詳細を示す図である。
【0021】
【
図9】本開示の例に従って説明された、グラフィックオブジェクトを受信して、共有環境の同期部に提供するための方法の詳細を示す図である。
【0022】
【
図10】本開示の態様を実施するために利用可能なコンピューティングシステムの物理的コンポーネント(例えば、ハードウェア)を示すブロック図である。
【0023】
【
図11A】本開示の例を実施するために利用可能なコンピューティングシステムの詳細を示す図である。
【0024】
【
図11B】本開示の例を実施するために利用可能なコンピューティングシステムの詳細を示す図である。
【0025】
【
図12】本開示の例にかかる、コンピューティングシステムにおいて受信されたデータを処理するためのシステムのアーキテクチャを示す図である。
【発明を実施するための形態】
【0026】
以下の詳細な説明では、本明細書の一部を構成し、且つ特定の態様又は例を図示により示した添付図面を参照する。本開示から逸脱することなく、これらの態様を組み合わせてもよいし、他の態様を利用してもよいし、構造変更を行ってもよい。これらの態様は、方法、システム、又は装置として実施されてもよい。したがって、これらの態様は、ハードウェア実現、完全なソフトウェア実現、又はソフトウェア及びハードウェアの態様を組み合わせた実現の形態を取ってもよい。したがって、以下の詳細な説明は限定的であると理解されるべきではなく、本開示の範囲は、添付の特許請求の範囲及びその均等物により限定されるものである。
【0027】
本開示の例によれば、第1のユーザ又は参加者と第2のユーザ又は第2の参加者とが一緒に1つ又は複数の視覚エフェクトをそれぞれのビデオに追加することを可能にする共有拡張現実システムが説明される。例えば、第1のユーザは、第1のモバイルコンピューティング装置を使用して共有拡張現実セッションを開始してもよい。共有拡張現実セッションは、第1のユーザと第2のユーザとがビデオを共有又は他の方法で編集して、それぞれのビデオのビデオエフェクトをリアルタイムに追加及び/又は編集することを可能にする。例として、ビデオエフェクトは、グラフィックオブジェクト、テキストオブジェクト、アニメーション、又は他の視覚エフェクトを含んでもよい。いくつかの例において、ビデオは、第1のユーザ及び/又は第2のユーザによりリアルタイムで提供された1つ又は複数の視覚エフェクトとして受信され、それぞれ取得されたビデオの上方に、トップに、又は他の形式で表示されてもよい。代替として又は追加として、ビデオは、ビデオライブラリから選択されてもよく、第1のユーザ及び/又は第2のユーザにより提供された1つ又は複数の視覚エフェクトは、ビデオが再生され、1つ又は複数の視覚エフェクトが受信されると、それぞれのビデオに適用されてもよい。例として、視覚エフェクトの利用可能性は、ユーザ識別子、装置識別子、及びそれらの組み合せに関連付けられるプロパティ又は属性に依存してもよい。共有拡張現実システムは、単一のユーザが視覚エフェクトをビデオに追加することを可能にしてもよいことを、理解すべきである。他の例において、共有拡張現実システムは、複数のユーザが共有拡張現実セッションに参加することを可能にしてもよい。各参加者は、ビデオを編集し、それぞれのビデオの視覚エフェクトを追加及び/又は編集することができる。特に、各参加者は、自分のビデオ上の視覚エフェクトを編集することができるため、各参加者のビデオは同じ視覚エフェクトを有する。
【0028】
この例において、視覚エフェクトは、ユーザ又は参加者の各装置間で同期されてもよい。すなわち、共有拡張現実セッションは、参加者のそれぞれにより作成された視覚エフェクトを各セッションインスタンス間で同期させることを可能にしてもよい。ここで、セッションインスタンスは各参加者についてローカルに生成され、セッションインスタンスの間に追加された視覚エフェクトは、他のユーザ又は参加者の他のセッションインスタンスに同期される。したがって、異なるシーンのビデオは、異なる参加者の各々により取得され、又は、他の方法で利用されてもよい。しかしながら、ビデオエフェクトは、各参加者について同期されてもよいし、同じであってもよい。もちろん、視覚エフェクトの同期が一方向同期であってもよい。例えば参加者又はユーザ識別子に依存してもよいことを、理解すべきである。代替として又は追加として、前述したように、視覚エフェクトの同期は双方向に、且つ、全ての参加者について行われる。
【0029】
例として、ユーザ装置又はサーバなどの装置上に常駐し、ユーザ装置によりアクセス可能なセッションマネージャは、共有拡張現実セッション情報を維持し、他の共有拡張現実セッション参加者により作成された、又は他の方法で追加された視覚エフェクトを各装置のローカルな各セッションインスタンスに提供してもよい。視覚エフェクトは、セッションマネージャのデータ構造内に記録されてもよいし、他の方法で維持されてもよい。すなわち、セッションマネージャは、共有拡張現実セッションを作成し、開始ユーザ(initiating user)により招待された各ユーザ識別子にセッション識別子を提供してもよい。したがって、ユーザによる招待を受け入れると、そのユーザのローカルなセッションインスタンスを開始してもよく、ここで、セッションインスタンスは、セッションマネージャにより提供されるセッション識別子に関連付けられる。ユーザが視覚エフェクト又はグラフィックエフェクト(例えば、図形)を作成すると、図形はディスプレイにおいて表示され、さらにリアルタイムにセッションマネージャに送信される。いくつかの例において、前の図面と現在の図面との間の変更又は増分のみがセッションマネージャに送信される。他の実例において、視覚エフェクトに関連付けられているグラフィックオブジェクトがセッションマネージャに送信される。代替として又は追加として、所定の時間量に従って、図面及び/又は図面に関連付けられる変更をセッションマネージャに送信してもよい。セッションマネージャは、図形変更を、セッション識別子に関連付けられている他のローカルセッションインスタンスに送信するか、又は他の方法で提供してもよい。一例において、ユーザ装置において実行するアプリケーションは、同期情報をプル(pull)してもよいし、代替として又は追加として、セッションマネージャは、同期情報をユーザ装置にプッシュ(push)してもよい。したがって、各装置がビデオをリアルタイムに取得又は再生するため、グラフィック、テキスト、オブジェクト、図形などの視覚エフェクトが装置間で同期されることができる。そのため、拡張現実セッションが終了すると、1人又は複数のユーザは、結果ビデオをビデオホスティングプラットフォームに共有又は他の方法で公開してもよく、結果ビデオのそれぞれは、同じ視覚エフェクトを含みながら、異なるシーンを描くことができる。
【0030】
図1は、本開示の例にかかる、例示的な共有拡張現実システム100を示す図である。共有拡張現実システム100は、第1のユーザに関連付けられているコンピューティング装置102と、第2のユーザに関連付けられているコンピューティング装置110とを含んでもよい。コンピューティング装置102は、ビデオシーン104を表示し、ユーザが1つ又は複数のグラフィックオブジェクトをビデオシーン104に追加することを可能にしてもよい。同様に、コンピューティング装置110は、ビデオシーン104とは異なるビデオシーン112を表示してもよい。コンピューティング装置110は、ユーザが1つ又は複数のグラフィックオブジェクトをコンピューティング装置110に追加することを可能にしてもよい。例として、ビデオシーン104及びビデオシーン112は、それぞれ、コンピューティング装置102及び110のそれぞれにより取得されたビデオを参照してもよい。いくつかの例において、ビデオシーン104及び/又はビデオシーン112は、リアルタイムに取得されたビデオに関連付けられてもよい。例えば、ユーザが再生又はその他の方法で閲覧することができるような、以前に取得されたビデオクリップに関連付けられてもよい。
【0031】
例において、コンピューティング装置102は、セッション/同期データ124の一部として新しいセッションを要求してもよい。新しいセッションの要求は、ネットワーク118を介してクラウドプロセッシング環境120に送信されてもよい。ここで、クラウドプロセッシング環境120は、共有セッションマネージャを含んでもよい。クラウドプロセッシング環境120の共有セッションマネージャは、セッション識別子をコンピューティング装置102に提供してもよい。コンピューティング装置102に関連付けられているユーザは、連絡先リストから連絡先又は友人などのユーザを選択し、選択されたユーザに関連付けられているユーザ識別子にセッション識別子を提供させてもよい。例えば、コンピューティング装置102は、セッション/同期データ124として招待を送信してもよい。招待は、例えば、ネットワーク118を介してコンピューティング装置110に直接提供されてもよいし、又は、選択されたユーザに関連付けられる装置(例えば、コンピューティング装置110)のネットワークアドレスを特定し、招待をコンピューティング装置110に送信することができるクラウドプロセッシング環境120に提供されてもよい。選択されたユーザ又は第2のユーザは、招待を受け入れてもよい。
【0032】
例において、共有拡張現実セッション中にコンピューティング装置102に関連付けられているユーザにより作成されたグラフィックオブジェクトは、クラウドプロセッシング環境120に送信されてもよい。その後、このようなグラフィックオブジェクトは、コンピューティング装置110に送信されてもよい。同様に、共有拡張現実セッション中にコンピューティング装置110に関連付けられているユーザにより作成されたグラフィックオブジェクトは、クラウドプロセッシング環境120に送信されてもよい。その後、このようなグラフィックオブジェクトは、コンピューティング装置102に送信されてもよい。したがって、共有拡張現実システム中に生成されたグラフィックオブジェクトは、コンピューティング装置102及びコンピューティング装置110のそれぞれにおいてローカルセッションインスタンス間で同期化されてもよい。例えば、1つ又は複数のグラフィックオブジェクト108b、108a、116a、116bは、視覚エフェクト106及び視覚エフェクト114を生成してもよい。視覚エフェクト106は、視覚エフェクト114と同じであってもよいし、似ていてもよい。いくつかの例において、視覚エフェクト106は、異なる色を使用するか、又はローカルセッションインスタンス内で作成されなかったグラフィックオブジェクトの他の属性を変更することにより、視覚エフェクト114と異なってもよい。例えば、コンピューティング装置102において生成されたグラフィックオブジェクト108a及び108bは、コンピューティング装置110において生成されたグラフィックオブジェクト116a及び116bとは異なる色として表されてもよい。同様に、コンピューティング装置110において生成されたグラフィックオブジェクト116a及び116bは、コンピューティング装置102において生成されたグラフィックオブジェクト108a及び108bとは異なる色として表されてもよい。
【0033】
コンピューティング装置102及びコンピューティング装置110は、ポータブルピューティング装置又は非ポータブルコンピューティング装置のいずれであってもよい。例えば、コンピューティング装置102及び/又はコンピューティング装置110は、スマートフォン、ラップトップパソコン、デスクトップパソコン、サーバ、電子ウェアラブルデバイス、又は1つ又は複数のスマートホーム装置などを含んでもよい。ビデオシーン104及び/又はビデオシーン112の取得されたビデオ又はビデオクリップは、任意のフォーマットで取得されてもよいし、また、圧縮及び/又は解凍された形態とされてもよい。ネットワーク118は、有線又は無線のローカルエリアネットワーク(LAN)、有線又は無線のワイドエリアネットワーク(WAN)、及び/又はインターネットを含むがこれらに限定されない任意のタイプのコンピューティングネットワークを含んでもよい。クラウドプロセッシング環境120は、ホスティングされたプロセッシング環境に対応してもよい。また、複数のコンピューティング装置間の共有拡張現実セッションを容易にしてもよい。いくつかの例において、クラウドプロセッシング環境120は、ユーザが1つ又は複数の生成されたビデオを投稿して、投稿されたビデオが他の人によりアクセス可能にすることができる。
【0034】
次に、
図2を参照し、コンピューティング装置102及び/又はコンピューティング装置110の追加の詳細は、本開示の例にかかるコンピューティング装置202として説明される。コンピューティング装置202は、先に
図1で説明されたコンピューティング装置102及び/又はコンピューティング装置110と同じであってもよいし、似ていてもよい。コンピューティング装置202は、通信インターフェース204と、プロセッサ206と、コンピュータ可読ストレージ208とを備えてもよい。例において、通信インターフェース204は、ネットワーク118(
図1)のようなネットワークに結合されてもよいし、セッション/同期データ及び/又はビデオに追加される1つ又は複数のグラフィックオブジェクトを受信してもよい。1つ又は複数のグラフィックオブジェクトはクラウドプロセッシング環境のデータ同期部から受信されてもよい。例において、1つ又は複数のグラフィックオブジェクトはグラフィックオブジェクトデータ218として記憶されてもよい。
【0035】
例において、1つ又は複数のアプリケーション210は、コンピューティング装置202により提供されてもよい。1つ又は複数のアプリケーション210は、ビデオプロセッシングモジュール212を含んでもよい。ビデオプロセッシングモジュール212は、ビデオ取得マネージャ224、エフェクトマネージャ226、ローカルセッションマネージャ228、コンポーネントマネージャ230、エフェクト同期マネージャ232、及び/又は連絡先マネージャ234を含んでもよい。ビデオ取得マネージャ224は、1つ又は複数のビデオフレームを含むビデオデータを受信するか、取得するか、又は他の方法で得るように構成されている。取得されたビデオデータは、ビデオデータ220として記憶されてもよい。例において、エフェクトマネージャ226は、1つ又は複数のグラフィックオブジェクトをビデオデータ220にどのように及びいつ適用するかを管理してもよい。例えば、エフェクトマネージャ226は、ビデオデータを取得するようにビデオ取得マネージャ224を設定し、コンピューティング装置202のユーザからのユーザ入力222の受信を調整してもよい。すなわち、エフェクトマネージャ226が例えばローカルセッションを開始すると、ユーザは、図形又は図形データのようなグラフィックオブジェクト又はグラフィックデータの提供を開始してもよい。エフェクトマネージャ226は、ローカルセッションマネージャ228と通信して、ローカルセッションを開始してもよい。
【0036】
例において、ローカルセッションは、エフェクトマネージャ226により直接開始されてもよいし、セッション識別子の受信時に開始されてもよい。例えば、コンピューティング装置202がセッションへ参加する招待を受信した場合、ローカルセッションマネージャ228は、クラウドプロセッシング環境から受信したセッションのセッション識別子に基づいてセッションを開始してもよい。例において、エフェクト同期マネージャ232は、グラフィックオブジェクトデータのローカル同期を管理し、ユーザから受信したグラフィックオブジェクトデータをユーザ入力222としてクラウドプロセッシング環境に提供してもよい。例えば、ユーザは、グラフィックエフェクトデータ218を入力214として提供してもよい。グラフィックオブジェクトデータ218は、描画データ、ペイントブラシデータ、鉛筆データ、塗りつぶしデータ、マーカーデータ、蛍光ペンデータなどの情報を含み、グラフィックオブジェクトに関連付けられる特定の位置及びタイプ情報を表してもよい。例として、ペイントブラシツールを使用して、描画情報として入力を提供することにしてもよい。描画情報は、線のストローク、幅、始端、終端、色等に対応してもよい。描画情報はエフェクト同期マネージャ232に供給されてもよい。ここで、エフェクト同期マネージャ232は、そのようなデータをクラウドプロセッシング環境に送信させる。例において、エフェクト同期マネージャ232は、要求された共有拡張現実セッション識別子を、クラウドプロセッシング環境120に送信されたセッション/同期データに関連付けてもよい。
【0037】
さらに、エフェクト同期マネージャ232は、クラウドプロセッシング環境120から描画情報を受信してもよい。例えば、通信インターフェース204は、セッション/同期データを受信してもよい。エフェクト同期マネージャ232は、セッション/同期データに含まれるグラフィックオブジェクトをローカルセッションに同期させるか、又は他の方法で追加させてもよい。すなわち、エフェクト同期マネージャ232は、セッション/同期データをローカルセッション内のグラフィックオブジェクトとしてレンダリングさせてもよいし、又は他の方法でローカルセッション内のグラフィックオブジェクトとして提示させてもよい。いくつかの例において、受信されたセッション/同期データは、グラフィックエフェクトデータとして記憶されてもよいし、又は他の方法でグラフィックエフェクトデータとして提示されてもよい。したがって、セッション/同期データに含まれるグラフィックエフェクトデータは、コンピューティング装置202のディスプレイにおいて表示されてもよい。
【0038】
コンポーネントマネージャ230は、1つのタイプの入力(例えば、ペイントブラシデータ)を管理する例示的な入力ツールマネージャである。ペイントブラシは、1つの特定の種類のグラフィックオブジェクトの非限定的な例であるが、他にも多くのグラフィックオブジェクトが考えられる。いくつかの例において、グラフィックオブジェクトに関連付けられている1つ又は複数の属性は、ブラシマネージャなどのマネージャにより管理されてもよい。上述したように、色、幅及び他のエフェクトを変更して、異なるグラフィックオブジェクトを作成してもよい。いくつかの例において、コンポーネント(例えば、ペイントブラシ)などのグラフィックオブジェクトの利用可能性、コンポーネントの属性、又は特定のコンポーネントタイプは、1つ又は複数のパラメータに従って制御され、又は他の方法で有効化されてもよい。例えば、ユーザプロファイルに記憶された、又は他の方法でユーザに関連付けられているパラメータは、コンポーネントがユーザにより使用可能であることを示してもよい。コンポーネントマネージャ230は、例えば、グラフィックオブジェクトの利用可能性を管理してもよい。コンポーネントマネージャ230は説明のために使用され、視覚エフェクトのタイプに応じて、他の視覚エフェクトマネージャもビデオプロセッシングモジュール212に含まれてもよいことを、理解すべきである。
【0039】
連絡先マネージャ234は、ユーザ識別子に関連付けられている1つ又は複数の連絡先など、1つ又は複数のユーザを管理してもよいし、又は他の方法でユーザに利用可能にしてもよい。例えば、コンピューティング装置202において存在する、又はコンピューティング装置202において他の方法でアクセス可能なユーザリスト、例えば友人リストは、コンピューティング装置202を使用するユーザのユーザ識別子に関連付けられてもよい。そのため、共有拡張現実セッションを構築することを望むユーザは、1つ又は複数のアプリケーション210に連絡先マネージャ234にアクセスさせ、ユーザ、友人、又は連絡先のリストを提示してユーザへ表示させ、1つ又は複数のユーザ、友人、又は連絡先を共有拡張現実セッションに招待してもよい。連絡先マネージャ234は、アドレス、ユーザ名、ユーザ識別子などによりユーザ、友人、又は連絡先を識別する情報を含んでもよい。したがって、選択されると、ユーザ、友人、又は連絡先に関連付けられる情報を招待に含めて、クラウドプロセッシング環境に送信することができる。ここで、クラウドプロセッシング環境内の招待マネージャは、招待を招待されたユーザ、友人、又は連絡先に伝えてもよい。
【0040】
招待を受け入れると、クラウドプロセッシング環境の共有セッションマネージャは、共有拡張現実セッション識別子をコンピューティング装置202に提供することにより、コンピューティング装置のローカルセッションマネージャ228がローカルセッションを生成し、ローカルセッションを共有拡張現実セッション識別子に関連付けることができるようにしてもよい。代替として又は追加として、セッション/同期データは、共有拡張現実セッション識別子を含むことにより、コンピューティング装置のローカルセッションマネージャ228がローカルセッションを生成し、ローカルセッションをセッション/同期データ又は招待内で提供される共有拡張現実セッション識別子に関連付けてもよい。したがって、別のローカルセッション、又はローカルセッションに関連付けられる別のコンピューティング装置により作成されたグラフィックエフェクトデータを、クラウドプロセッシング環境内のデータ同期部に提供してもよい。クラウドプロセッシング環境内のデータ同期部は、セッション/同期データをエフェクト同期マネージャ232に提供してもよい。ビデオエフェクト生成部236は、クラウドプロセッシング環境内のデータ同期部からのグラフィックオブジェクトデータと、エフェクトマネージャからのグラフィックオブジェクトデータとを利用して、グラフィックエフェクトを生成してもよい。視覚エフェクト114(
図1)は、コンピューティング装置202から及び遠隔のコンピューティング装置からのグラフィックオブジェクトを含んでもよい。例において、ビデオエフェクト生成部236は、レンダリングされたビデオフレーム238を生成し、レンダリングされたビデオフレーム238を出力216として記憶してもよい。すなわち、レンダリングされたビデオフレーム238は、視覚エフェクト106及び/又は112を含んでもよい。
【0041】
図3を参照し、本開示の例に従って、クラウドコンピューティング環境内のサーバ302の追加の詳細を説明する。サーバ302は、以上に
図1で説明されたようなクラウドプロセッシング環境の一部であってもよい。サーバ302は、通信インターフェース304と、プロセッサ306と、コンピュータ可読ストレージ308とを備えてもよい。例において、通信インターフェース304は、ネットワーク118(
図1)のようなネットワークに結合され、1つ又は複数のユーザ装置と同期される1つ又は複数のグラフィックオブジェクトを含むことができるセッション/同期データを受信してもよい。セッション/同期データは受信され、入力314として記憶されてもよい。
【0042】
一例において、1つ又は複数のアプリケーション310は、サーバ302により提供されてもよい。1つ又は複数のアプリケーション310は、共有拡張現実セッションプロセッサ312を含んでもよい。共有拡張現実セッションプロセッサ312は、共有セッションマネージャ322と、データ同期部324と、連絡先マネージャ326と、招待マネージャ328と、グラフィックオブジェクトストア330とを含んでもよい。共有拡張現実セッションプロセッサ312は、共有拡張現実セッションを管理するように設定されている。すなわち、共有セッションマネージャ322は、コンピューティング装置202などのコンピューティング装置からセッション要求318を受信してもよい。セッション要求318は、共有拡張現実セッションを確立又は他の方法で構築する要求に対応してもよい。したがって、共有セッションマネージャ322は、共有拡張現実セッション識別子を生成し、共有拡張現実セッション識別子をセッション/同期データとして要求するコンピューティング装置に送信してもよい。したがって、要求するコンピューティング装置は、ローカルセッションを開始し、ローカルセッションを、共有セッションマネージャ322により提供された共有拡張現実セッション識別子に関連付けてもよい。
【0043】
共有拡張現実セッションを作成又は他の方法で開始することの追加として、共有セッションマネージャ322は、共有拡張現実セッションをもはや使用されなくなったときに終了するなどのクリーンアップ操作を管理してもよい。さらに、共有セッションマネージャ322は、招待マネージャ328と協働して、他のユーザ及び/又はコンピューティング装置を共有拡張現実セッションに招待してもよい。すなわち、コンピューティング装置からの要求は、ユーザ又はユーザに関連付けられるコンピューティング装置に招待を送信する要求を含んでもよい。招待マネージャ328は、招待済みのユーザに招待を送信してもよい。例えば、招待マネージャ328は、コンピューティング装置が共有拡張現実セッションに参加できるように、招待をコンピューティング装置に送信してもよい。代替として又は追加として、共有セッションマネージャ322は、共有拡張現実セッション識別子を提供するユーザに基づいて、共有拡張現実セッションへのアクセスを許可してもよい。例えば、共有セッションマネージャ322は、アプリケーションに入力されることができる共有拡張現実セッション識別子を生成してもよい。共有拡張現実セッション識別子が入力されると、ローカルセッションをコンピューティング装置において開始し、共有拡張現実セッション識別子に関連付けてもよい。
【0044】
例において、セッション/同期データは、通信インターフェース304により、共有セッションデータ320として受信されてもよい。いくつかの例において、共有セッションデータ320は、グラフィックエフェクトデータ、例えば、描画オブジェクト、テキスト、及び/又は、コンピューティング装置の表示装置において表示されることができる他の視覚的標示を含んでもよいが、これらに限定されない。いくつかの例において、グラフィックエフェクトデータがサーバ302に永続的に存在しなくてもよい。他の例において、後から参加するユーザが該ユーザが共有拡張現実セッションに参加する前に作成されたグラフィックエフェクトにアクセスできるように、グラフィックオブジェクトデータをグラフィックオブジェクトストア330に記憶してもよい。
【0045】
データ同期部324は、共有セッションデータ320を受信し、どのコンピューティング装置又はコンピューティング装置に関連付けられるどのユーザ識別子がそのようなデータを送信するかを決定してもよい。例えば、1つのコンピューティング装置から受信されたグラフィックオブジェクトデータは、別のコンピューティング装置と同期されてもよい。ここで、2つのコンピューティング装置は、共有拡張現実セッション識別子により決定される同じ共有拡張現実セッション内の参加者である。したがって、データ同期部324は、グラフィックエフェクトデータをユーザ固有の共有セッションデータ332として提供してもよい。ユーザ固有の共有セッションデータ332は、データ同期部324により識別された、識別されたユーザ/コンピューティング装置に送信されてもよい。このような情報は、セッション/同期データとして、また、出力316として送信されることができる。
【0046】
図4A~4Bは、本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
図4A~
図4Bで提示された様々なユーザインターフェースは、非共有の拡張現実セッションの例を示す。例において、
図4A~
図4Bで提示されたユーザインターフェースは、そのような拡張現実セッションが単一のユーザにより使用されることができる例を示す。本開示の例によれば、第1のユーザインターフェース404がコンピューティング装置402において表示される。第1のユーザインターフェース404は、ビデオの背景シーン406を含んでもよい。例において、背景シーン406は、カメラのビューファインダ(view finder)と似た方法で提示されてもよいし、他の方法で表示されてもよい。すなわち、コンピューティング装置402のディスプレイに関連付けられるコンピューティング装置402のカメラは、画像を取得し、ディスプレイにおいてその画像を表示してもよい。コンピューティング装置402が移動し、そのためカメラが移動するとき、背景シーン406は変化してもよい。追加として、第1のユーザインターフェース404は、記録コントロール408を表示する。記録コントロール408は、コンピューティング装置402に関連付けられているユーザが、ビデオを、該ビデオを記録するときに、又は、別のビデオを再生するときに生成された1つ又は複数のグラフィックエフェクトとともに、記録することを可能にしてもよい。
【0047】
例において、ユーザは、第1のユーザインターフェース404において表示されるエフェクトコントロール410を選択してもよい。エフェクトコントロール410は、第2のユーザインターフェース412に示すように、コンピューティング装置402においてエフェクトパネル414を表示させてもよい。エフェクトパネル414は、コンピューティング装置402のユーザに利用可能な複数の異なるエフェクトを含んでもよい。一例において、少なくとも1つのエフェクトは、共有拡張現実セッションを含む。そのため、ユーザは、コンピューティング装置402において第3のユーザインターフェース418を表示させる、選択されるエフェクト416を選択してもよい。第3のユーザインターフェース418は、複数のエフェクトツールを含むエフェクトパレット420を含んでもよい。例えば、エフェクトツールは、描画ツール、ペイントツール、及び/又はユーザインターフェースにおいて視覚エフェクトを生成又は表示させる他のツールに対応してもよい。エフェクトパレット420は、エフェクトパレット420は説明のためのものであり、選択された視覚エフェクトのそれぞれについて含まれなくてもよいことを理解すべきである。ユーザは、ペイントブラシ、ペン、鉛筆などのエフェクトツール422を選択してもよい。
【0048】
ユーザが、一旦エフェクトツール422を選択したら、ビデオシーケンス記録プログレスバー426は、第4のユーザインターフェース424に示すように表示されてもよい。ビデオシーケンス記録プログレスバー426は、取得されるべき残りのビデオ量の視覚的指示を提供する。例えば、ユーザは、15秒、30秒、45秒、又は60秒の長さのビデオクリップを取得することを望む可能性がある。第5のユーザインターフェース428に示すように、ユーザは、記録コントロール434を選択し、コンピューティング装置402に背景シーン432のビデオの取得を開始させてもよい。一例において、ユーザは、選択されたエフェクト及び/又は選択された描画ツールなど(これに限定されない)のエフェクトツールを使用して、第1の視覚エフェクト436及び/又は第2の視覚エフェクト438を描画してもよい。ここで、第1の視覚エフェクト436及び/又は第2の視覚エフェクト438は、コンピューティング装置402により取得される1つ又は複数のビデオフレームに関連付けられてもよい。第5のユーザインターフェース428に示すように、ビデオシーケンス記録プログレスバー430は、ユーザが背景シーン432を記録するのに利用可能な残りの時間量の近似値を提供する。いくつかの例において、コンピューティング装置402が移動する場合、背景シーン432は、背景シーン406と異なることになる。
【0049】
例えば、第6のユーザインターフェース440に示すように、背景シーン442は、背景シーン432とは異なる。ビデオが所望の長さに達すると、ビデオシーケンス記録プログレスバー444は、同様に示してもよい。例において、第1の視覚エフェクト446及び第2の視覚エフェクト448は、それぞれ、第1の視覚エフェクト436及び/又は第2の視覚エフェクト438と同じであってもよいし、又は似ていてもよい。ビデオ記録の最後に、第7のユーザインターフェース450は、1つ又は複数のユーザエフェクトとともに、初期の背景シーン452を表示してもよい。ユーザは、第7のユーザインターフェース450とインタラクションして、取得されたビデオを編集してもよい。例えば、ユーザはテキスト、音楽、顔文字などを新しく取得されたビデオに追加してもよい。ユーザは、次のコントロール454を選択してもよい。
【0050】
第8のユーザインターフェース456において、ユーザは、新しく取得されたビデオに関連付けられる1つ又は複数の設定を選択してもよい。例えば、ユーザは、コメントを許可することを決定し、新しく取得されたビデオを誰が見ることができるかを決定し、且つ/又は個人がビデオをダウンロードできるかどうかを決定してもよい。いくつかの例において、ユーザは、ビデオに見出し(caption)458を提供してもよい。ここで、見出し458は、ビデオを説明するテキストを含んでもよい。第8のユーザインターフェース456は、新しく取得されたビデオに関連付けられているビデオサムネイル460を表示してもよい。投稿コントロール462が選択されると、第9のユーザインターフェース464に示すように、新しく取得されたビデオは、クラウドプロセッシング環境内でホスティングされているビデオホスティングプラットフォームなどのビデオホスティングプラットフォームに投稿されてもよい。
【0051】
図5A~5Bは、本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
図5A~5Bで提示された様々なユーザインターフェース5A~5Bは、共有拡張現実セッションの例を示す。例において、
図5A~5Bで提示されたユーザインターフェースは、このような拡張現実セッションが複数のユーザにより利用可能である例を示し、別のユーザを共有拡張現実セッションに招待するユーザの視点からの例を示す。本開示の例によれば、第1のユーザインターフェース504がコンピューティング装置502において表示される。コンピューティング装置502は、先に説明されたコンピューティング装置202と同じ又は類似してもよい。第1のユーザインターフェース504は、ビデオの背景シーン506を含んでもよい。例において、背景シーン506は、カメラのファインダと似た方法で提示されてもよいし、他の方法で表示されてもよい。すなわち、コンピューティング装置502のディスプレイに関連付けられるコンピューティング装置502のカメラは、画像を取得し、ディスプレイにおいてその画像を表示してもよい。コンピューティング装置502が移動し、そのためカメラが移動するとき、背景シーン506は変化してもよい。追加として、第1のユーザインターフェース504は、記録コントロール510を表示する。記録コントロール510は、コンピューティング装置502に関連付けられているユーザが、ビデオを、該ビデオを記録、及び/又は取得するときに、又は、別のビデオを再生するときに生成された1つ又は複数のグラフィックエフェクトとともに、記録することを可能にしてもよい。
【0052】
例において、ユーザは、第1のユーザインターフェース504において表示されるエフェクトコントロール508を選択してもよい。エフェクトコントロール508は、第2のユーザインターフェース512に示すように、コンピューティング装置502においてエフェクトパネルを表示させてもよい。エフェクトパネルは、コンピューティング装置502のユーザに利用可能な複数の異なるエフェクトを含んでもよい。一例において、少なくとも1つのエフェクトは、共有拡張現実セッションを含む。そのため、ユーザは、コンピューティング装置502において第3のユーザインターフェース516を表示させる、選択されるエフェクト514を選択してもよい。第3のユーザインターフェース516において、友人招待コントロール518が表示される。友人招待コントロール518は、選択されると、共有拡張現実セッションに参加するように別のユーザについての招待を開始する。ユーザインターフェース516上に表示される友人招待コントロール518は例示的である。すなわち、友人招待コントロール518は、他のタイプのアイコンで表され、ユーザインターフェース516の任意の適切な領域上に配置されてもよい。例において、友人招待コントロール518が選択されると、第4のユーザインターフェース520に示すように、友人招待インターフェース522が表示されてもよい。友人招待インターフェース522は、ユーザが選択する友人及び/又は連絡先のリストを表示してもよい。
【0053】
例えば、ユーザは、第5のユーザインターフェース524に表示される選択される友人526を選択してもよい。一旦選択されると、ユーザは、友人招待コントロールオブジェクト528を選択してもよい。友人招待コントロールオブジェクト528が選択されると、コンピューティング装置502は、選択されたユーザを招待する要求を含んでもよいセッション/同期データをクラウドプロセッシング環境に送信してもよい。第6のユーザインターフェース530に進むと、招待指示532がユーザに表示されてもよい。招待指示532は、ユーザに、共有拡張現実セッションに参加するようにユーザを既に招待したことを示す指示を提供してもよい。友人招待インターフェース522に関しては、リスト内の友人の数は2人に限定されず、省略符号で示されるように、3人以上を含んでもよい。
【0054】
図5Bに示すように、招待されたユーザが共有拡張現実セッションに参加した後、第7のユーザインターフェース534は、セッション状態536又は更新をコンピューティング装置502のユーザに提供してもよい。第8のユーザインターフェース538は、ユーザがエフェクトパレット540、選択されたエフェクトツール542、及び記録コントロール544を選択してもよい例示的なユーザインターフェースを示す。例において、記録コントロール544は、例えば記録が3秒以内に開始することをユーザに通知するカウントダウン指示を提供してもよい。例において、招待されたユーザカーソル位置578は、招待されたユーザのカーソル位置を表示してもよい。例えば、招待されたユーザカーソル位置578は、指、スタイラスペン、又は他のポインティング装置が招待されたユーザのコンピューティング装置に置かれていることを示してもよい。第9のユーザインターフェース546に示すように、記録コントロール554及びビデオシーケンス記録プログレスバー548は、記録が進行中であることを示す。さらに、ユーザは、コンピューティング装置502のユーザが選択されたエフェクトツール542を使用して作成した現在のユーザ視覚エフェクト550を描画又はその他の方法で配置してもよい。第9のユーザインターフェース546にさらに示すように、第2のユーザ視覚エフェクト552が表示される。第2のユーザ視覚エフェクト552は、セッション/同期データとしてコンピューティング装置502により受信され、処理され、そして、第9のユーザインターフェース546に表示されてもよい。例において、招待されたユーザに関連付けられているツールチップの指示を表示してもよい。例えば、ツールチップは、招待されたユーザ(第2のユーザ、例えばFriend_Aとも称される)により指示されたカーソルの位置を示してもよい。第9のユーザインターフェース546にさらに示すように、現在のユーザ視覚エフェクト550と第2のユーザ視覚エフェクト552とは、コンピューティング装置502におけるユーザ及び第2のユーザ又は招待されたユーザのいずれも視覚エフェクトを完成させていないため、不完全な視覚エフェクトとして表現されてもよい。
【0055】
第10のユーザインターフェース556に示すように、背景シーン558は、初期の背景シーン506とは異なる。ビデオが所望の長さに達すると、ビデオシーケンス記録プログレスバーは、同様に示してもよい。例において、完成した現在のユーザ視覚エフェクト560と、招待されたユーザにより提供される視覚エフェクトを表す第2のユーザ視覚エフェクト562とが示される。ビデオの記録の最後に、第11のユーザインターフェース564は、1つ又は複数のユーザエフェクト(例えば、現在のユーザ視覚エフェクト560、562)とともに、初期の背景シーン506を表示してもよい。ユーザは、第11のユーザインターフェース564とインタラクションして、取得されたビデオを編集してもよい。例えば、ユーザはテキスト、音楽、顔文字などを新しく取得されたビデオに追加してもよい。ユーザは、次のコントロール566を選択してもよい。
【0056】
第12のユーザインターフェース568において、ユーザは、新しく取得されたビデオに関連付けられる1つ又は複数の設定を選択してもよい。例えば、ユーザは、コメントを許可することを決定し、新しく取得されたビデオを誰が見ることができるかを決定し、且つ/又は個人がビデオをダウンロードできるかどうかを決定してもよい。いくつかの例において、ユーザは、ビデオのための見出し570を提供してもよい。第12のユーザインターフェース568は、新しく取得されたビデオに関連付けられているビデオサムネイル574を表示してもよい。投稿コントロール572が選択されると、第9のユーザインターフェース576に示すように、新しく取得されたビデオは、クラウドプロセッシング環境内でホスティングされているビデオホスティングプラットフォームなどのビデオホスティングプラットフォームに投稿されてもよい。
【0057】
図6A~6Bは、本開示の例にかかる、コンピューティング装置の例示的なユーザインターフェースを示す図である。
図6A~6Bで提示された様々なユーザインターフェース5A~5Bは、共有拡張現実セッションの例を示す。例において、
図6A~6Bで提示されたユーザインターフェースは、このような拡張現実セッションが複数のユーザにより利用可能である例を示し、共有拡張現実セッションに参加する招待されたユーザの視点からの例を示す。本開示の例によれば、第1のユーザインターフェース604がコンピューティング装置602において表示される。コンピューティング装置602は、先に説明されたコンピューティング装置202と同じ又は類似してもよい。第1のユーザインターフェース604は、友人(例えば、Friend_B)が現在のユーザが共有拡張現実セッションに参加することを望んでいることを示すメッセージ606を含んでもよい。第1のユーザインターフェース604は、例えば、コンピューティング装置602のディスプレイ(例えば、スクリーン)がロック状態にあるとき、メッセージ606を表示してもよい。代替として又は追加として、コンピューティング装置602がアンロック状態にあるとき、ユーザは、第1のユーザインターフェース404(
図1)に示すビデオ記録アプリケーションのようなビデオ記録アプリケーションを使用してもよい。メッセージ612は、第2のユーザインターフェース608に示すように、背景シーン610上に表示されてもよい。代替として又は追加として、アクティビティ履歴を見るユーザは、第3のユーザインターフェース614に示すように、他のアクティビティ情報618中のメッセージ616を見てもよい。アクティビティ情報は、1人又は複数の友人又は連絡先の最近のアクティビティ情報を表示してもよい。メッセージ606と、メッセージ612と、メッセージ616とのそれぞれは、プッシュ通知、SMS通知などを介して提供されてもよい。
【0058】
いくつかの例において、ユーザがメッセージのうちの1つを選択するとき、ユーザは自動的に共有拡張現実セッションに接続してもよい。しかしながら、場合によっては、共有拡張現実セッションが期限切れになる可能性がある。例えば、第4のユーザインターフェース620に示すように、背景シーン622上に表示されるメッセージ624は、共有拡張現実セッションが既に期限切れになったことを示してもよい。したがって、ユーザは、招待状の再度の送信を要求してもよい。
【0059】
共有拡張現実セッションが期限切れになっていない例において、メッセージ628は第5のユーザインターフェース626においてユーザに表示されてもよい。このようなメッセージ628は、アプリケーションの接続状態をユーザに知らせるために提供されてもよい。例において、一旦接続すると、セッションメッセージ632は、第6のユーザインターフェース630に示すように、ユーザに提供されてもよい。セッションメッセージ632は、ユーザが既に共有拡張現実セッションに接続したことを示してもよい。第6のユーザインターフェース630は、ビデオの背景シーン634を含んでもよい。例において、背景シーン634は、カメラのビューファインダと似た方法で提示されてもよいし、他の方法で表示されてもよい。すなわち、コンピューティング装置602のディスプレイに関連付けられるコンピューティング装置602のカメラは、画像を取得し、ディスプレイにおいてその画像を表示してもよい。コンピューティング装置602が移動し、そのためカメラが移動するとき、背景シーン634は変化してもよい。追加として、第6のユーザインターフェース630は、記録コントロールを表示する。記録コントロールは、コンピューティング装置602に関連付けられているユーザが、ビデオを、該ビデオを記録、及び/又は取得するときに、又は、別のビデオを再生するときに生成された1つ又は複数のグラフィックエフェクトとともに、記録することを可能にしてもよい。
【0060】
例において、
図2に示すように、ユーザはエフェクトコントロールを選択してエフェクトパレット638を立ち上げてもよい。すなわち、第7のユーザインターフェース636に示すように、エフェクトパレット638は、複数のエフェクトツールを含む。例えば、エフェクトツールは、描画ツール、ペイントツール、及び/又はユーザインターフェースにおいて視覚エフェクトを生成又は表示させる他のツールに対応してもよい。ユーザは、ペイントブラシ、ペン、鉛筆などのエフェクトツール640を選択してもよい。例において、ユーザは現在のユーザ視覚エフェクト644を作成してもよい。ここで、現在のユーザ視覚エフェクト644は、コンピューティング装置602の現在のユーザにより作成される途中のグラフィックエフェクトを示す。第7のユーザインターフェース636にさらに示すように、コンピューティング装置602は、別のユーザ(例えば、Friend_A、この場合、現在のユーザを招待したユーザ)から、グラフィックエフェクトを含むセッション/同期データを受信してもよい。したがって、第7のユーザインターフェース636は、第2のユーザ視覚エフェクト646を表示してもよい。ここで、現在のユーザ視覚エフェクト644と同様に、第2のユーザ視覚エフェクト646は未完成状態にある。例において、ビデオシーケンス記録プログレスバー642は、ユーザが、少なくとも背景シーン並びに現在のユーザ視覚エフェクト644及び第2のユーザ視覚エフェクト646を含むビデオを記録していることを示してもよい。
【0061】
例において、背景シーンは、ユーザがコンピューティング装置602を移動するときに変化してもよい。例えば、第8のユーザインターフェース648に示す背景シーン652は、背景シーン634とは異なる。第8のユーザインターフェース648にさらに示すように、別のユーザ(例えば、Friend_B、この場合、コンピューティング装置502の現在のユーザを招待したユーザ)からの第2のユーザ視覚エフェクト656と、コンピューティング装置602の招待されたユーザからの現在のユーザ視覚エフェクト654とは、完全である。いくつかの例において、ビデオシーケンス記録プログレスバー650は、ビデオ記録が既に完了したことを示してもよい。ビデオの記録の最後に、第9のユーザインターフェース658は、1つ又は複数のユーザエフェクト(例えば、第2のユーザ視覚エフェクト656、現在のユーザ視覚エフェクト654)とともに、初期の背景シーンを表示してもよい。ユーザは、第9のユーザインターフェース658とインタラクションして、取得されたビデオを編集してもよい。例えば、ユーザはテキスト、音楽、顔文字などを新しく取得されたビデオに追加してもよい。ユーザは、次のコントロールを選択し、第10のユーザインターフェース660に進んでもよい。
【0062】
第10のユーザインターフェース660において、ユーザは、新しく取得されたビデオに関連付けられる1つ又は複数の設定を選択してもよい。例えば、ユーザは、コメントを許可することを決定し、新しく取得されたビデオを誰が見ることができるかを決定し、且つ/又は個人がビデオをダウンロードできるかどうかを決定してもよい。いくつかの例において、ユーザは、ビデオに字幕662を提供してもよい。ここで、字幕662は、ビデオを説明するテキストを含んでもよい。第10のユーザインターフェース660は、新しく取得されたビデオに関連付けられているビデオサムネイルを表示してもよい。投稿コントロール664が選択されると、新しく取得されたビデオは、クラウドプロセッシング環境内でホスティングされているビデオホスティングプラットフォームなどのビデオホスティングプラットフォームに投稿されてもよい。新しく取得されたビデオは、第11のユーザインターフェース666に示すように表示されてもよい。
【0063】
図7は、本開示の例にかかる、例示的なデータ構造702を示す図である。データ構造702は、グラフィックオブジェクトストア330(
図3)において常駐してもよい。共有拡張現実セッションを一意に識別するセッション識別子704を含んでもよい。例において、参加者及びコンピューティング装置に関連付けられるローカルセッションにおいて視覚エフェクトを生成するために利用されるグラフィックオブジェクトデータを生成及び/又は同期させるために、データ構造702は、視覚エフェクト識別子706と、タイムスタンプ712と、グラフィックオブジェクト識別子710とを含んでもよい。グラフィックオブジェクト識別子710は、視覚エフェクトに関連付けられるグラフィックオブジェクト(例えば、線、点、ドット、形状、画像等)を識別してもよい。いくつかの例において、視覚エフェクトは複数のグラフィックオブジェクトを含んでもよい。例えば、複数の線やドットにより、正方形や円などの形状を作成することができる。視覚エフェクト識別子706は、グラフィックオブジェクト識別子710を視覚エフェクトに関連付けてもよい。したがって、多くのグラフィックオブジェクト識別子710が単一の視覚エフェクト識別子706に関連付けられてもよい。他の例において、グラフィックオブジェクト識別子は、視覚エフェクトと同じグラフィックオブジェクトを識別してもよい。このため、1つのみのグラフィックオブジェクト識別子が視覚エフェクトに関連付けられることが可能である。
【0064】
データ構造702は、視覚エフェクト識別子706及び/又はグラフィックオブジェクト識別子710を作成したユーザを識別するユーザ識別子708をさらに含んでもよい。したがって、ユーザがどの視覚エフェクトを表示装置において表示させるかについて追加的な制御を行うことができる場合に、視覚エフェクトを作成したユーザに従って視覚エフェクトをフィルタリングしてもよい。例えば、ユーザが特定のユーザに関連付けられている全ての視覚エフェクトを削除又は消去することを選択する可能性がある場合、ユーザ識別子708を使用して、削除又は消去されるべきエフェクトを作成した特定のユーザを識別してもよい。タイムスタンプ712は、グラフィックオブジェクト識別子710及び/又は視覚エフェクト識別子706を再生、バックアップ、及び/又は編集するために使用されてもよい。いくつかの例において、タイムスタンプ712は、記録の開始などの開始点からオフセットされてもよいし、又は現在又は今の時刻及び日付に関連付けられてもよい。
【0065】
次に
図8を参照し、本開示の例に従って、共有環境において提供される複数のグラフィックオブジェクトを含むビデオを生成するための簡略化された方法800を説明する。方法800のステップの一般的な順序が
図8に示される。一般的に、方法800は802で始まり、816で終わる。方法800は、より多くのステップ又はより少ないステップを含んでもよいし、又は、ステップの順序を
図8に示されたステップとは異なるように構成してもよい。方法800は、コンピュータシステムにより実行されるコンピュータ実行可能な命令のセットとして実行され、コンピュータ可読媒体上に符号化又は記憶されてもよい。例示的な態様において、方法800は、第1のユーザに関連付けられているコンピューティング装置(例えば、コンピューティング装置102)及び/又はクラウドプロセッシング環境内のサーバ(例えば、サーバ302)により実行される。しかしながら、方法800の態様は、1つ又は複数のプロセッシング装置、例えば、コンピュータ又はサーバ(例えば、102、110、202、302など)により実行されてもよいことを、理解すべきである。さらに、方法800は、プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、システムオンチップ(SOC)、ニューラルプロセッシングユニット、又は他のハードウェア装置に関連付けられるゲート又は回路により実行されることができる。以下では、方法800は、
図1~7に関連して説明されたシステム、コンポーネント、モジュール、ソフトウェア、データ構造、ユーザインターフェース等を参照して説明すべきである。
【0066】
方法800は、802において開始し、804に進む。ここで、共有セッション識別子は共有セッションマネージャから取得されてもよい。例えば、
図3に示すように、コンピューティング装置102は、共有セッションマネージャ322から共有拡張現実セッション識別子を要求してもよい。例において、
図2に示すように、共有セッションマネージャ322は、共有拡張現実セッション識別子をローカルセッションマネージャ228に提供してもよい。例において、共有拡張現実セッション識別子は、第1のユーザ識別子、例えば、共有拡張現実セッション識別子の要求を発したコンピューティング装置102を現在使用している第1のユーザに関連付けられる。方法800は806に進んでもよい。ここで、第1のユーザ識別子に関連付けられている第1のユーザは、別の第2のユーザを選択して共有拡張現実セッションに招待してもよい。例えば、友人招待インターフェース、友人招待インターフェース522などを第1のユーザに提示してもよい。第1のユーザは、友人又は連絡先に関連付けられている第2のユーザ識別子を選択してもよい。
【0067】
別の例として、第1のコンピューティング装置(例えば、コンピューティング装置102)において存在する、又は第1のコンピューティング装置(例えば、コンピューティング装置102)においてアクセス可能な友人リストが、第1のコンピューティング装置(例えば、コンピューティング装置102)を使用する第1のユーザの第1のユーザ識別子に関連付けられてもよい。そのため、共有拡張現実セッションを構築することを望む第1のユーザは、1つ又は複数のアプリケーションに連絡先マネージャにアクセスさせ、友人、又は連絡先のリストを提示して第1のユーザへ表示させ、共有拡張現実セッションに招待してもよい。連絡先マネージャ234は、ユーザ名、ユーザ識別子などにより連絡先を識別する情報を含んでもよい。したがって、選択されると、友人、又は連絡先に関連付けられる情報を招待に含めて、クラウドプロセッシング環境に送信することができる。ここで、クラウドプロセッシング環境内の招待マネージャは、招待を招待された友人又は連絡先に伝えてもよい。
【0068】
一例において、方法800は、808に進んでもよい。ここで、共有拡張現実セッション識別子は、806の選択された第2のユーザに関連付けられている第2のコンピューティング装置(例えば、コンピューティング装置110)に提供されてもよい。代替として又は追加として、招待を受け入れると、クラウドプロセッシング環境の共有セッションマネージャは、共有拡張現実セッション識別子を第2のコンピューティング装置(例えば、コンピューティング装置110)に提供することにより、第1のコンピューティング装置(例えば、コンピューティング装置102)のローカルセッションマネージャ(例えば、
図2に示すローカルセッションマネージャ228)がローカルセッションを生成し、ローカルセッションを共有拡張現実セッション識別子に関連付けることができるようにしてもよい。代替として又は追加として、セッション/同期データ(例えば、セッション/同期データ122)は、共有拡張現実セッション識別子を含むことにより、第1のコンピューティング装置(コンピューティング装置102)のローカルセッションマネージャがローカルセッションを生成し、ローカルセッションをセッション/同期データ又は招待内で提供される共有拡張現実セッション識別子に関連付けてもよい。
【0069】
方法800は、810に進んでもよい。ここで、第2のコンピューティング装置(例えば、コンピューティング装置110)において、第1のグラフィックオブジェクトがコンピューティング装置(例えば、コンピューティング装置110)のディスプレイにレンダリングされる指示を受信する。例えば、第1のユーザは、エフェクトツールを使用して描画又は他の方法で視覚エフェクトを作成している間にビデオの記録を開始してもよい。このような視覚エフェクトは複数のグラフィックオブジェクトを含んでもよい。812において、第1のグラフィックオブジェクトをクラウドプロセッシング環境からセッション/同期データとして受信してもよい。したがって、別のローカルセッション、又はローカルセッションに関連付けられる第1のコンピューティング装置により作成された第1のグラフィックエフェクトデータを、クラウドプロセッシング環境内のデータ同期部に提供してもよい。クラウドプロセッシング環境内のデータ同期部は、セッション/同期データをコンピューティング装置102/110のうちの1つ又は複数内のエフェクト同期マネージャに提供してもよい。ビデオエフェクト生成部は、クラウドプロセッシング環境内のデータ同期部からの第1のグラフィックオブジェクトデータと、エフェクトマネージャからの第2のグラフィックオブジェクトデータとを利用して、例えば、視覚エフェクト114を生成してもよい。視覚エフェクト114は、第1のコンピューティング装置(例えば、コンピューティング装置102)から及び第2のコンピューティング装置(例えば、コンピューティング装置110)からの第1のグラフィックオブジェクトと第2のグラフィックオブジェクトとを含んでもよい。例において、814において、取得されたビデオからの複数のビデオフレームとともに第1のグラフィックオブジェクトと第2のグラフィックオブジェクトとをレンダリングすることによって、それぞれのコンピューティング装置により最終のビデオを生成してもよい。例えば、ビデオエフェクト生成部は、レンダリングされたビデオフレームを生成し、レンダリングされたビデオフレームを出力として記憶してもよい。例において、レンダリングされたビデオフレームは、他のユーザによる閲覧のために、ビデオホスティングプラットフォームに投稿されてもよい。方法800は、816において終了してもよい。
【0070】
次に
図9を参照し、本開示の例に従って、第1のグラフィックオブジェクトを受信して、共有環境の同期部に提供するための簡略化された方法900を示す。方法900のステップの一般的な順序が
図9に示されている。一般的に、方法900は902で始まり、916で終わる。方法900は、より多くのステップ又はより少ないステップを含んでもよいし、又は、ステップの順序を
図9に示されたステップとは異なるように構成してもよい。方法900は、コンピュータシステムにより実行されるコンピュータ実行可能な命令のセットとして実行され、コンピュータ可読媒体上に符号化又は記憶されてもよい。例示的な態様において、方法900は、第1のユーザに関連付けられている第1のコンピューティング装置(例えば、コンピューティング装置102)及び/又はクラウドプロセッシング環境内のサーバ(例えば、サーバ302)により実行される。しかしながら、方法900の態様は、1つ又は複数のプロセッシング装置、例えば、コンピュータ又はサーバ(例えば、102、110、202、302など)により実行されてもよいことを、理解すべきである。さらに、方法900は、プロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、システムオンチップ(SOC)、ニューラルプロセッシングユニット、又は他のハードウェア装置に関連付けられるゲート又は回路により実行されることができる。以下では、方法900は、
図1~8に関連して説明されたシステム、コンポーネント、モジュール、ソフトウェア、データ構造、ユーザインターフェース等を参照して説明すべきである。
【0071】
方法900は、902において開始し、904に進む。ここで、複数のエフェクトツールは、第1のコンピューティング装置及び/又は第1のユーザ識別子に関連付けられているパラメータに基づいてフィルタリングされてもよい。例えば、上述したように、色、幅及び他のエフェクトを変更して、異なるグラフィックオブジェクトを作成してもよい。いくつかの例において、ペイントブラシなどのグラフィックオブジェクトの利用可能性、ペイントブラシの属性、又は特定のペイントブラシタイプは、1つ又は複数のパラメータに従って制御され、又は他の方法で有効化されてもよい。したがって、ユーザが利用可能なエフェクトツールを904においてフィルタリングし、906において第1のユーザへ表示させてもよい。
【0072】
908において、エフェクトツールの選択に関連付けられる指示を受信してもよい。例えば、第1のユーザはブラシツールを選択してもよい。910において、第1のユーザが選択されたエフェクトツールを用いて第1のグラフィックオブジェクトを作成していることを示す指示を受信してもよい。例えば、第1のユーザは、第1のグラフィックオブジェクトの作成を開始してもよい。このような開始は910において指示として受信されてもよい。方法900は、912に進んでもよい。ここで、第1のグラフィックオブジェクトに関連付けられる第1のグラフィックオブジェクト情報又はデータは、データ同期部に供給されてもよい。例において、第1のコンピューティング装置は、第1のグラフィックオブジェクト情報をセッション/同期データとしてサーバのデータ同期部に送信してもよい。したがって、データ同期部は、第1のグラフィックオブジェクトを他のコンピューティング装置と同期させることができる。方法900は、914において終了してもよい。
【0073】
図10は、本開示の態様を実施するために利用可能なコンピューティングシステム1002の物理的コンポーネント(例えば、ハードウェア)を示すブロック図である。以下に説明されるコンピューティングシステム1002のコンポーネントは、上述したコンピューティング装置および/またはプロセッシング装置に適合してもよい。基本的な構成において、コンピューティングシステム1002はシステムコンポーネント1004を含んでもよい。システムコンポーネント1004は、少なくとも1つのプロセッシングユニット1020とシステムメモリ1006とを含んでもよい。コンピューティングシステムの構成及びタイプによっては、システムメモリ1006は、揮発性ストレージ(例えば、ランダムアクセスメモリ(RAM))、不揮発性ストレージ(例えば、リードオンリーメモリ(ROM))、フラッシュメモリ、又はこのようなメモリの任意の組み合わせを含んでもよいが、これらに限定されない。
【0074】
システムメモリ1006は、オペレーティングシステム1022と、本明細書に記載されたシステムによってサポートされる1つまたは複数のコンポーネントのようなソフトウェアアプリケーション1028を実行するのに適する1つまたは複数のプログラムモジュール1024とを含んでもよい。例として、システムメモリ1006は、ビデオ取得マネージャ1026と、エフェクトマネージャ1030と、ローカルセッションマネージャ1032と、ブラシマネージャ1034と、エフェクト同期マネージャ1036と、ビデオエフェクト生成部1044と、共有セッションマネージャ1040と、データ同期部1042と、連絡先マネージャ1038と、招待マネージャ1046とを含んでもよい。ビデオ取得マネージャ1026は、先に説明したビデオ取得マネージャ224と同じであってもよいし、似ていてもよい。エフェクトマネージャ1030は、先に説明したエフェクトマネージャ226と同じであってもよいし、似ていてもよい。ローカルセッションマネージャ1032は、先に説明したローカルセッションマネージャ228と同じであってもよいし、似ていてもよい。ブラシマネージャ1034は、先に説明したコンポーネントマネージャ230と同じであってもよいし、似ていてもよい。エフェクト同期マネージャ1036は、先に説明したエフェクト同期マネージャ232と同じであってもよいし、似ていてもよい。共有セッションマネージャ1040は、先に説明した共有セッションマネージャ322と同じであってもよいし、似ていてもよい。データ同期部1042は、先に説明したデータ同期部324と同じであってもよいし、似ていてもよい。ビデオエフェクト生成部1044は、先に説明したビデオエフェクト生成部236と同じであってもよいし、似ていてもよい。招待マネージャ1046は、先に説明した招待マネージャ328と同じであってもよいし、似ていてもよい。例えば、オペレーティングシステム1022は、コンピューティングシステム1002の操作をコントロールするように適していてもよい。
【0075】
さらに、本開示の例は、グラフィックライブラリ、他のオペレーティングシステム、又は任意の他のアプリケーションプログラムに関連して実行されてもよいが、任意の特定のアプリケーション又はシステムに限定されない。コンピューティングシステム1002のこの基本的な設定は、
図1において、アイテム1048内のそれらのコンポーネントにより示されている。コンピューティングシステム1002は、追加の特徴又は機能を有してもよい。例えば、コンピューティングシステム1002は、磁気ディスク、光ディスク、又はテープなどの追加のデータストレージ装置(取外し可能な装置及び/又は取外し不可能な装置)をさらに備えてもよい。このような追加のストレージは、
図10において、取り外し可能なストレージ装置1008と取り外し不可能なストレージ装置1010とにより示されている。
【0076】
上述したように、複数のプログラムモジュール及びデータファイルが共有拡張現実システム100に記憶されてもよい。プログラムモジュール1024(例えば、ソフトウェアアプリケーション1030)は、プロセッシングユニット1020上で実行された場合、本明細書で説明された態様を含むがそれらに限定されないプロセスを実行してもよい。本開示の態様に従って使用できる他のプログラムモジュールは、電子メール及び連絡先アプリケーション、ワープロアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、製図プログラム、又はコンピュータ支援プログラムなどを含んでもよい。
【0077】
さらに、本開示の例は、電気回路、個別電子部品、論理ゲートを含むパッケージチップ又は集積電子チップ、マイクロプロセッサを利用する回路、又は電子部品又はマイクロプロセッサを含む単一のチップ上で実施されてもよい。例えば、本開示のいくつかの実例は、
図10に示される各コンポーネント又は複数のコンポーネントが単一の集積回路上に集積化することが可能であるシステムオンチップ(SOC)を介して実施されてもよい。このようなSOC装置は、一つ又は複数のプロセッシングユニット、グラフィックスユニット、通信ユニット、システム仮想化ユニット、及び様々なアプリケーション機能を含み、これらの全てが単一の集積回路としてチップ基板上に集積化される(又は「書き込み」される)ことができる。SOCを介して操作する場合、本明細書に記載されたクライアントがプロトコルを切り替える能力に関する機能は、単一の集積回路(チップ)上のコンピューティングシステム1002の他のコンポーネントと集積化された特定用途向けロジックを介して動作してもよい。本開示の例はまた、AND、OR、及びNOTなどの論理演算を実行できる、機械、光学、流体、及び量子技術を含むがそれらに限定されない他の技術を使用して実施されてもよい。さらに、本開示の例は、汎用コンピュータ内で、又は任意の他の回路又はシステム内で実施されてもよい。
【0078】
コンピューティングシステム1002は、キーボード、マウス、ペン、音響又は音声入力装置、タッチ又はスワイプ入力装置など、1つ又は複数の入力装置1012をさらに有してもよい。ディスプレイ、スピーカ、プリンタなどの出力装置1014がさらに含まれてもよい。上記の装置は例であり、他の装置を使用してもよい。コンピューティングシステム1002は、他のコンピューティング装置1018との通信を可能にする1つ又は複数の通信接続1016を含んでもよい。好適な通信接続1016の例は、無線周波数(RF)送信機、受信機、及び/又はトランシーバ回路、ユニバーサルシリアルバス(USB)、パラレルポート、及び/又はシリアルポートを含むが、これらに限定されない。
【0079】
本明細書で使用されるコンピュータ可読媒体という用語は、コンピュータ記憶媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、又はプログラムモジュールのような、情報を記憶するための任意の方法又は技術で実現される揮発性及び不揮発性の取り外し可能な媒体及び取り外し不可能な媒体を含んでもよい。システムメモリ1006、取り外し可能なストレージ装置1008、及び取り外し不可能なストレージ装置1010は、いずれもコンピュータ記憶媒体の一例(例えば、メモリストレージ)である。コンピュータ記憶媒体は、RAM、ROM、電気的に消去可能なリードオンリーメモリ(EEPROM)、フラッシュメモリ又は他のメモリ技術、CD-ROM、デジタル多用途ディスク(DVD)又は他の光学的ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージ装置、又は情報を記憶するために使用され、コンピューティングシステム1002によってアクセス可能な任意の他の製品を含んでもよい。任意のそのようなコンピュータ記憶媒体は、コンピューティングシステム1002の一部であってもよい。コンピュータ記憶媒体は、搬送波又は他の伝搬又は変調されたデータ信号を含まない。
【0080】
通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又は変調されたデータ信号内の他のデータ、例えば搬送波又は他の移送機構によって具現化することができるとともに、任意の情報伝達媒体を含む。「変調されたデータ信号」という用語は、信号内に情報を符号化するように設定又は変更された1つ又は複数の特徴を有する信号を表してもよい。限定ではなく、一例として、通信媒体は、有線ネットワーク又は直接有線接続のような有線媒体、及び音響、無線周波数(RF)、赤外、及び他の無線媒体のような無線媒体を含んでもよい。
【0081】
図11A及びFIG11Bは、本開示の例を実施するために利用可能な携帯電話、スマートフォン、(スマートウォッチのような)ウェアラブルコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、ラップトップコンピュータなどのようなコンピューティングシステム1102を示す。
図11Aを参照すると、これらの態様を実現するためのコンピューティングシステム1102の一態様が示される。基本的な設定において、コンピューティングシステム1102は、入力要素及び出力要素の両方を有するデスクトップコンピュータである。コンピューティングシステム1102は、典型的に、入力装置(例えば、タッチスクリーンディスプレイ)としても機能できるディスプレイ1106/1122を含む。コンピューティングシステム1102はさらに、キーパッド1114/1126を含んでもよい。1114は、物理キーパッド又はタッチスクリーンディスプレイ上で生成される「ソフト」キーパッドであってもよい。システム1102とインタラクションするために、他のキー又はボタン1104a~1104eが提供されてもよい。
【0082】
様々な例において、出力要素は、グラフィカルユーザインターフェース(GUI)を表示するためのディスプレイ1106と、視覚的インジケータ1110(例えば、発光ダイオード1134)と、及び/又はオーディオトランスデューサ1112(例えば、スピーカ)とを含む。さらに別の態様において、コンピューティングシステム1102は、外部装置との間で信号を送受信するために、オーディオインターフェース1130、例えば、オーディオ入力(例えば、マイクロホンジャック)、オーディオ出力(例えば、ヘッドフォンジャック)、及び/又はビデオ出力(例えば、HDMI(登録商標)ポート)を含む入力及び/又は出力ポートを組み込む。
【0083】
図11Bは、モバイルコンピューティングシステムの一態様のアーキテクチャを示すブロック図である。すなわち、コンピューティングシステム1102は、システム(例えば、アーキテクチャ)1102を組み込むことで、いくつかの態様を実現することができる。いくつかの例において、システム1102は、一つ又は複数のアプリケーション(例えば、ブラウザ、電子メール、カレンダー、連絡先マネージャ、メッセージ通信クライアント、ゲーム、及びメディアクライアント/プレーヤ)を実行することができる「コンピューティングシステム」として実現される。いくつかの態様において、システム1102は、デスクトップコンピュータのようなコンピューティングシステムとして統合される。
【0084】
1つ又は複数のアプリケーションプログラム1138は、1136にロードされ、オペレーティングシステム1140上で、又はオペレーティングシステム1164に関連して実行してもよい。アプリケーションプログラムの例としては、電話ダイヤルプログラム、電子メールプログラム、個人情報管理(PIM)プログラム、ワープロプログラム、スプレッドシートプログラム、インターネットブラウザプログラム、メッセージ通信プログラム、地図プログラム、ビデオプラットフォーム、ビデオ合成アプリケーションなどが含まれる。システム1102は、メモリ1136内の不揮発性記憶領域1142をさらに含む。不揮発性記憶領域1142は、システム1402の電源が切られたときに失われてはならない永続的な情報を記憶するために使用することが可能である。アプリケーション1138は、電子メール又は電子メールアプリケーションによって使用される他のメッセージなど、不揮発性記憶領域1142内の情報を使用し、不揮発性記憶領域1168に記憶してもよい。同期アプリケーション(図示せず)もシステム1102上に常駐し、ホストコンピュータ上に常駐する対応の同期アプリケーションとやり取りして、不揮発性記憶領域1142に格納された情報とホストコンピュータ上に記憶された対応する情報との同期を維持するようにプログラムされる。他のアプリケーションは、メモリ1142にロードされ、本明細書で説明されたコンピューティングシステム1102上で動作することができることを理解すべきである。
【0085】
システム1102は、1つ又は複数のバッテリとして実現されてもよい電源1144を有する。電源1144はさらに、ACアダプタ又はバッテリを補充又は再充電する電源付き格納台などの外部電源を含んでもよい。
【0086】
システム1102はさらに、無線周波数通信を送受信する機能を実行する無線インターフェース層1132を含むことができる。無線インターフェース層1132は、通信キャリア又はサービスプロバイダを介してシステム1402と「外部世界」との間の無線接続を容易にする。無線インターフェース層1132との間の送信は、オペレーティングシステム1140の制御の下で行われる。言い換えれば、無線インターフェース層1132によって受信された通信は、オペレーティングシステム1140を介してアプリケーションプログラム1138に配布することができ、その逆も同様である。
【0087】
システム1102は、周辺ポートを介した、オンボードカメラ1124の静止画像、ビデオストリーム等を記録する操作を可能にするビデオインターフェース1128をさらに含んでもよい。コンピューティングシステム1102は、追加の特徴又は機能を有してもよい。例えば、コンピューティングシステム1102は、磁気ディスク、光ディスク、又はテープなどの追加のデータストレージ装置(取外し可能な装置及び/又は取外し不可能な装置)をさらに備えてもよい。このような追加のストレージは、
図11Bにおいて不揮発性記憶領域1142によって示される。システム1102は、プロセッサ1120及び/又は専用プロセッサ1118を含んでもよい。
【0088】
以上で説明されたように、コンピューティングシステム1102により生成又は取得され、システムを介して記憶されたデータ/情報は、コンピューティングシステム1102上にローカルに記憶されてもよいし、あるいは、データは、無線インターフェース層1132を介して、又はコンピューティングシステム1102とコンピューティングシステム1102に関連付けられている別のコンピューティングシステム(例えば、インターネットなどの、分散型コンピューティングネットワーク内のサーバコンピュータ)との間の有線接続を介して、装置によりアクセス可能な任意の数の記憶媒体に記憶されてもよい。このようなデータ/情報は、コンピューティングシステム1102を介して、無線インターフェース層1132を介して、又は分散型コンピューティングネットワークを介してアクセスしてもよい。同様に、このようなデータ/情報は、電子メール及び共同データ/情報共有システムを含む公知のデータ/情報送信及び記憶手段に従って、記憶及び使用のためにコンピューティングシステム間で容易に送信されてもよい。
【0089】
図12は、上記で説明されたような、汎用コンピューティング装置1202、タブレットコンピューティング装置1204、又はモバイルコンピューティング装置1206のような遠隔ソースからコンピューティングシステムにおいて受信されたデータを処理するための、システムのアーキテクチャの一態様を示す。サーバ装置1212におけるコンテンツは、異なる通信チャネル又は他のストレージタイプに記憶されてもよい。
【0090】
先に説明されたプログラムモジュール1024又はソフトウェアアプリケーション1028のうちの1つまたは複数は、上述したように、サーバ装置1212及び/又は汎用コンピューティング装置1202、タブレットコンピューティング装置1204、またはモバイルコンピューティング装置1206により使用されてもよい。例えば、サーバ装置1212は、ビデオ取得マネージャ1216と、エフェクトマネージャ1218と、ローカルセッションマネージャ1228と、ブラシマネージャ1222と、エフェクト同期マネージャ1224と、ビデオエフェクト生成部1234と、共有セッションマネージャ1220と、データ同期部1230と、連絡先マネージャ1226と、招待マネージャ1232とを含んでもよい。ビデオ取得マネージャ1216は、先に説明したビデオ取得マネージャ224と同じであってもよいし、似ていてもよい。エフェクトマネージャ1218は、先に説明したエフェクトマネージャ226と同じであってもよいし、似ていてもよい。ローカルセッションマネージャ1228は、先に説明したローカルセッションマネージャ228と同じであってもよいし、似ていてもよい。ブラシマネージャ1222は、先に説明したコンポーネントマネージャ230と同じであってもよいし、似ていてもよい。エフェクト同期マネージャ1224は、先に説明したエフェクト同期マネージャ232と同じであってもよいし、似ていてもよい。共有セッションマネージャ1220は、先に説明した共有セッションマネージャ322と同じであってもよいし、似ていてもよい。データ同期部1230は、先に説明したデータ同期部324と同じであってもよいし、似ていてもよい。ビデオエフェクト生成部1234は、先に説明したビデオエフェクト生成部236と同じであってもよいし、似ていてもよい。招待マネージャ1232は、先に説明した招待マネージャ328と同じであってもよいし、似ていてもよい。
【0091】
サーバ装置1212は、ネットワーク1210を介して、汎用コンピューティング装置1202、タブレットコンピューティング装置1204、及び/又はモバイルコンピューティング装置1206(例えば、スマートフォン)などのクライアントコンピューティング装置にデータを提供し、クライアントコンピューティング装置からデータを提供されてもよい。一例として、上述したコンピュータシステムは、汎用コンピューティング装置1202、タブレットコンピューティング装置1204、及び/又はアプリケーション1208(例えば、スマートフォン)内で実現されてもよい。グラフィック作成システム(graphic-originating system)における前処理又は受信コンピューティングシステムにおける後処理に使用できるグラフィカルデータを受信することだけでなく、コンピューティング装置のこれらの例のいずれも、ストレージ1214からコンテンツを取得することもできる。
【0092】
さらに、本明細書に記載された態様及び機能は、分散型システム(例えば、クラウドベースのコンピューティングシステム)上で動作することができるが、ここでは、アプリケーション機能、メモリ、データ記憶及びデータ検索、ならびに様々な処理機能は、分散型コンピューティングネットワーク(例えば、インターネット又はイントラネット)上で互いに遠隔的に動作してもよい。様々なタイプのユーザインターフェース及び情報は、オンボードコンピューティング装置ディスプレイを介して、又は1つ又は複数のコンピューティング装置に関連付けられている遠隔ディスプレイユニットを介して表示されてもよい。例えば、様々なタイプのユーザインターフェースと情報を投影した壁面にこれらの様々なタイプのユーザインターフェースと情報を表示してインタラクションしてもよい。本発明の例を実施するために利用できる複数のコンピューティングシステムとのインタラクションは、キーストローク入力、タッチスクリーン入力、音声又は他のオーディオ入力、ジェスチャ入力などを含む。ジェスチャ入力の場合、関連付けられているコンピューティング装置は、コンピューティング装置の機能を制御するためにユーザのジェスチャをキャプチャ及び解釈するための検出(例えば、カメラ1116)機能を備える。
【0093】
例えば、本開示の態様は、本開示の態様にかかる方法、システム、及びコンピュータプログラム製品のブロック図及び/又は操作説明を参照して以上に説明されている。ブロック内に記された機能/動作は、任意のフローチャートに示された順序とは異なる順序で発生してもよい。例えば、関連する機能/動作によっては、連続して示される2つのブロックは実際には実質的に同時に実行されてもよいし、又はこれらのブロックは時には逆の順序で実行されてもよい。
【0094】
本開示は、第1のユーザ又は参加者と第2のユーザ又は第2の参加者とが、少なくとも以下のセクションにおいて提供される例に従って、1つ又は複数の視覚エフェクトをそれぞれのビデオに追加することを可能にする共有拡張現実システムのためのシステム及び方法に関する。
【0095】
(A1) 一態様において、いくつかの例は、方法を含む。前記方法は、第1のユーザ識別子に関連付けられている第1のコンピューティング装置において、前記第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、第2のユーザ識別子の選択を受信することと、前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置に提供させることと、前記第1のコンピューティング装置のディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを前記ビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、を含む。
【0096】
(A2) A1のいくつかの例において、前記共有セッション識別子を前記共有セッションマネージャから取得することは、新しい共有セッション識別子についての要求を共有セッションマネージャに送信することと、前記共有セッション識別子を前記共有セッションマネージャから受信することと、を含む。
【0097】
(A3) A1~A2のいくつかの例において、前記方法は、前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供することをさらに含む。
【0098】
(A4) A1~A3のいくつかの例において、前記データ同期部と前記共有セッションマネージャとは、前記第1のコンピューティング装置以外の装置に配置されている。
【0099】
(A5) A1~A4のいくつかの例において、前記方法は、前記第1のコンピューティング装置の少なくとも1つのカメラを使用してビデオを取得することと、前記ビデオを取得するとき、前記コンピューティング装置の前記ディスプレイにレンダリングするための前記第1のグラフィックオブジェクトを、入力として受信し、前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第2のユーザ識別子に関連付けられている前記第2のグラフィックオブジェクトを、前記データ同期部から受信し、前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを取得されたビデオからの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、をさらに含む。
【0100】
(A6) A1~A5のいくつかの例において、前記方法は、前記ビデオを取得するとき、前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供することをさらに含む。
【0101】
(A7) A1~A6のいくつかの例において、前記第1のグラフィックオブジェクトが第1の描画エフェクトに関連付けられ、前記第2のグラフィックオブジェクトが第2の描画エフェクトに関連付けられている。
【0102】
(A8) A1~A7のいくつかの例において、前記第1の描画エフェクトが前記第2の描画エフェクトと異なる。
【0103】
(A9) A1~A8のいくつかの例において、前記方法は、前記第2のユーザ識別子に関連付けられている情報を含むグラフィックエレメントを前記第1のコンピューティング装置に関連付けられている前記ディスプレイにおいて表示させることをさらに含む。
【0104】
(A10) A1~A9のいくつかの例において、前記方法は、第3のユーザ識別子の選択を受信することと、前記共有セッション識別子と前記第1のコンピューティング装置に関連付けられている前記第1のユーザ識別子とを、前記第3のユーザ識別子に関連付けられている第3のコンピューティング装置に提供させることと、前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第3のユーザ識別子に関連付けられている第3のグラフィックオブジェクトを、前記データ同期部から受信することと、前記第1のグラフィックオブジェクトと、前記第2のオブジェクトと、前記第3のオブジェクトとを、前記ビデオの複数のビデオフレームと共にレンダリングすることにより、前記ビデオを生成することと、をさらに含む。
【0105】
さらに別の態様において、いくつかの例はコンピューティングシステムを含む。該コンピューティングシステムは1つ又は複数のプロセッサと、該1つ又は複数のプロセッサに結合されたメモリとを備える。該メモリは、該1つ又は複数のプロセッサにより実行されるとき、該1つ又は複数のプロセッサに、本明細書に説明された方法のうちのいずれかの方法(例えば、上記A1~A10)を実行させる1つ又は複数の命令を記憶している。
【0106】
さらに別の態様において、いくつかの例は、ストレージ装置の1つ又は複数のプロセッサによって実行されるための1つ又は複数のプログラムを記憶している非一時的なコンピュータ可読記憶媒体を含む。該1つ又は複数のプログラムは、本明細書で説明された方法(例えば、上記A1~A10)のうちのいずれかの方法を実行するための命令を含む。
【0107】
本願で提供された1つ又は複数の態様の説明及び例示は、特許請求される本開示の範囲をいかなる態様で制限又は限定することも意図していない。本明細書で説明された態様、例及び詳細は、所有権を伝えるのに十分であり、かつ、他の者が特許請求される本開示の最善の形態を形成及び使用することを可能にするのに十分であるとみなされる。特許請求される本開示は、本明細書で説明された態様、例、又は詳細に限定されるものと解釈すべきではない。様々な特徴(構造的特徴及び方法的特徴)は、組み合わせて図示又は説明されるか又は個別に図示又は説明されるかにかかわらず、特定の特徴セットを有する例を形成するためには、選択的に含む又は省略することが意図されている。本願の説明及び例示を提供することにより、当業者は、特許請求される開示のより広い範囲から逸脱しない、本願で実現された一般的な発明構想のより広い態様の要旨に含まれる変更、修正及び代替態様を想定してもよい。
【手続補正書】
【提出日】2024-02-05
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
共有環境において提供される複数のグラフィックオブジェクトを含むビデオを生成する方法であって、
第1のユーザ識別子に関連付けられている第1のコンピューティング装置において、前記第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、
第2のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置へ提供させることと、
前記第1のコンピューティング装置のディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、
前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを前記ビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、
を含む方法。
【請求項2】
前記共有セッション識別子を前記共有セッションマネージャから取得することは、
新しい共有セッション識別子についての要求を前記共有セッションマネージャに送信することと、
前記共有セッション識別子を前記共有セッションマネージャから受信することと、
を含む、請求項1に記載の方法。
【請求項3】
前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供すること
をさらに含む、請求項1に記載の方法。
【請求項4】
前記データ同期部と前記共有セッションマネージャとは、前記第1のコンピューティング装置以外の装置に配置されている
請求項3に記載の方法。
【請求項5】
前記第1のコンピューティング装置の少なくとも1つのカメラを使用してビデオを取得することと、
前記ビデオを取得するとき、
前記コンピューティング装置の前記ディスプレイにレンダリングするための前記第1のグラフィックオブジェクトを、入力として受信し、
前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第2のユーザ識別子に関連付けられている前記第2のグラフィックオブジェクトを、前記データ同期部から受信し、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを取得された前記ビデオからの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
をさらに含む、請求項1に記載の方法。
【請求項6】
前記ビデオを取得するとき、前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供すること
をさらに含む、請求項5に記載の方法。
【請求項7】
前記第1のグラフィックオブジェクトは第1の描画エフェクトに関連付けられ、前記第2のグラフィックオブジェクトは第2の描画エフェクトに関連付けられている
請求項1に記載の方法。
【請求項8】
前記第1の描画エフェクトは前記第2の描画エフェクトと異なる
請求項7に記載の方法。
【請求項9】
前記第2のユーザ識別子に関連付けられている情報を含むグラフィックエレメントを前記第1のコンピューティング装置に関連付けられている前記ディスプレイにおいて表示させること
をさらに含む、請求項7に記載の方法。
【請求項10】
第3のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のコンピューティング装置に関連付けられている前記第1のユーザ識別子とを、前記第3のユーザ識別子に関連付けられている第3のコンピューティング装置へ提供させることと、
前記第1のコンピューティング装置の前記ディスプレイにレンダリングするための、前記第3のユーザ識別子に関連付けられている第3のグラフィックオブジェクトを、前記データ同期部から受信することと、
前記第1のグラフィックオブジェクトと、前記第2のグラフィックオブジェクトと、前記第3のグラフィックオブジェクトとを、前記ビデオの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
をさらに含む、請求項1に記載の方法。
【請求項11】
コンピューティング装置であって、
プロセッサと、
前記プロセッサにより実行されるとき、前記コンピューティング装置を、
第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、
第2のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のユーザ識別子とを、共有拡張現実セッションプロセッサへ提供させることと、
前記コンピューティング装置に関連付けられているディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、
前記コンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとをビデオの複数のビデオフレームと共にレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、
を実行させるように構成する命令を記憶しているメモリと、
を備える、コンピューティング装置。
【請求項12】
前記共有セッション識別子を前記共有セッションマネージャから取得することは、
新しい共有セッション識別子についての要求を前記共有セッションマネージャに送信することと、
前記共有セッション識別子を前記共有セッションマネージャから受信することと、
を含む、請求項11に記載のコンピューティング装置。
【請求項13】
前記命令は、前記コンピューティング装置を、
前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供することを実行させるようにさらに構成する
請求項11に記載のコンピューティング装置。
【請求項14】
前記データ同期部と前記共有セッションマネージャとは、前記コンピューティング装置以外の装置に配置されている
請求項13に記載のコンピューティング装置。
【請求項15】
前記命令は、前記コンピューティング装置を、
前記コンピューティング装置の少なくとも1つのカメラを使用してビデオを取得することと、
前記ビデオを取得するとき、
前記コンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための前記第1のグラフィックオブジェクトを、入力として受信し、
前記コンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子に関連付けられている前記第2のグラフィックオブジェクトを、前記データ同期部から受信し、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを取得された前記ビデオからの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
を実行させるようにさらに構成する
請求項11に記載のコンピューティング装置。
【請求項16】
第1のコンピューティング装置に、
第1のユーザ識別子に関連付けられている共有セッション識別子を、共有セッションマネージャから取得することと、
第2のユーザ識別子の選択を受信することと、
前記共有セッション識別子と前記第1のユーザ識別子とを、前記第2のユーザ識別子に関連付けられている第2のコンピューティング装置へ提供させることと、
前記第1のコンピューティング装置に関連付けられているディスプレイにレンダリングするための、前記第1のユーザ識別子に関連付けられている第1のグラフィックオブジェクトを入力として受信することと、
前記第1のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子と前記共有セッション識別子とに関連付けられている第2のグラフィックオブジェクトを、データ同期部から受信することと、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとをビデオの複数のビデオフレームとともにレンダリングすることにより、複数のグラフィックオブジェクトを含むビデオを生成することと、
を実行させる
、コンピュータ
プログラム。
【請求項17】
前記共有セッション識別子を前記共有セッションマネージャから取得することは、
新しい共有セッション識別子についての要求を前記共有セッションマネージャに送信することと、
前記共有セッション識別子を前記共有セッションマネージャから受信することと、
を含む、請求項16に記載のコンピュータ
プログラム。
【請求項18】
前記第1のコンピューティング装置
に、
前記第1のユーザ識別子と前記共有セッション識別子とに関連付けられている前記第1のグラフィックオブジェクトを前記データ同期部に提供することを
さらに実行させ
る
請求項16に記載のコンピュータ
プログラム。
【請求項19】
前記データ同期部と前記共有セッションマネージャとは、前記第1のコンピューティング装置以外の装置に配置されている
請求項16に記載のコンピュータ
プログラム。
【請求項20】
前記第1のコンピューティング装置
に、
前記第1のコンピューティング装置の少なくとも1つのカメラを使用してビデオを取得することと、
前記ビデオを取得するとき、
前記第1のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための前記第1のグラフィックオブジェクトを、入力として受信し、
前記第1のコンピューティング装置に関連付けられている前記ディスプレイにレンダリングするための、前記第2のユーザ識別子に関連付けられている前記第2のグラフィックオブジェクトを、前記データ同期部から受信し、
前記第1のグラフィックオブジェクトと前記第2のグラフィックオブジェクトとを取得された前記ビデオからの複数のビデオフレームとともにレンダリングすることにより、前記ビデオを生成することと、
を
さらに実行させ
る、請求項16に記載のコンピュータ
プログラム。
【国際調査報告】