(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-31
(45)【発行日】2022-09-08
(54)【発明の名称】ビデオ会議のための補足コンテンツを用いたビデオストリームの修正
(51)【国際特許分類】
H04N 7/15 20060101AFI20220901BHJP
H04L 65/40 20220101ALI20220901BHJP
【FI】
H04N7/15
H04L65/40
(21)【出願番号】P 2020562621
(86)(22)【出願日】2019-03-14
(86)【国際出願番号】 US2019022340
(87)【国際公開番号】W WO2019216988
(87)【国際公開日】2019-11-14
【審査請求日】2020-11-06
(32)【優先日】2018-05-07
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-10-03
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】503260918
【氏名又は名称】アップル インコーポレイテッド
【氏名又は名称原語表記】Apple Inc.
【住所又は居所原語表記】One Apple Park Way,Cupertino, California 95014, U.S.A.
(74)【代理人】
【識別番号】110003281
【氏名又は名称】特許業務法人大塚国際特許事務所
(74)【代理人】
【識別番号】100076428
【氏名又は名称】大塚 康徳
(74)【代理人】
【識別番号】100115071
【氏名又は名称】大塚 康弘
(74)【代理人】
【識別番号】100112508
【氏名又は名称】高柳 司郎
(74)【代理人】
【識別番号】100116894
【氏名又は名称】木村 秀二
(74)【代理人】
【識別番号】100130409
【氏名又は名称】下山 治
(74)【代理人】
【識別番号】100134175
【氏名又は名称】永川 行光
(72)【発明者】
【氏名】ガリド, クリストファー エム.
(72)【発明者】
【氏名】チェン, エリク エル.
(72)【発明者】
【氏名】シュウ, オースティン ダブリュー.
(72)【発明者】
【氏名】ジン, ミン
(72)【発明者】
【氏名】ヤン, ヤン
(72)【発明者】
【氏名】ベアード, イアン ジェイ.
(72)【発明者】
【氏名】アブアン, ジョー エス.
【審査官】鈴木 隆夫
(56)【参考文献】
【文献】特表2014-532330(JP,A)
【文献】国際公開第2016/039835(WO,A1)
【文献】米国特許出願公開第2015/0365627(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/15
H04L 65/40
(57)【特許請求の範囲】
【請求項1】
メモリと、
前記メモリに通信可能に接続された少なくとも1つのプロセッサとを備えるデバイスであって、
前記少なくとも1つのプロセッサは、
リモートデバイスから着信ビデオストリームを受信すること、又は前記デバイスのカメラから前記リモートデバイスに発信ビデオストリームを送信すること、のうち少なくとも1つを含む会議セッションを、前記デバイスと前記リモートデバイスとの間で確立し、
補足コンテンツオプションと、前記着信ビデオストリーム又は前記発信ビデオストリームの少なくとも1つとを、表示するために提供し、
前記補足コンテンツオプションの選択を受信し、
前記選択に応じて、
前記選択された補足コンテンツオプションに関連付けられた補足コンテンツを用いて、前記発信ビデオストリームと、前記補足コンテンツを取得してレンダリングするための命令とを前記リモートデバイスに送信することによって、前記発信ビデオストリームを修正する、
ように構成されている、デバイス。
【請求項2】
前記補足コンテンツが、前記発信ビデオストリームの一部分の上に表示される静的補足コンテンツである、請求項1に記載のデバイス。
【請求項3】
前記補足コンテンツが、前記発信ビデオストリームの一部分の上に表示されるアニメーション補足コンテンツである、請求項1に記載のデバイス。
【請求項4】
前記補足コンテンツが、前記発信ビデオストリームの一部分の上に表示される適応型補足コンテンツであり、前記少なくとも1つのプロセッサが、前記発信ビデオストリーム内のコンテンツに基づいて前記適応型補足コンテンツを修正するように構成されている、請求項1に記載のデバイス。
【請求項5】
前記適応型補足コンテンツが、顔修正コンテンツを含み、前記少なくとも1つのプロセッサが、
前記発信ビデオストリームの前記一部分で顔を検出し、
前記検出された顔に前記顔修正コンテンツを適用し、
前記検出された顔の変化に基づいて、前記顔修正コンテンツを能動的に修正する、
ように構成されている、請求項4に記載のデバイス。
【請求項6】
前記少なくとも1つのプロセッサが、前記選択に応じて、前記選択された補足コンテンツオプションに関連付けられた補足コンテンツを用いて、
前記発信ビデオストリームと前記補足コンテンツとを統合して、統合された修正出力ビデオストリームを形成し、
前記統合された修正出力ビデオストリームを前記リモートデバイスに送信する、
ことによって、前記発信ビデオストリームを修正するように構成されている、請求項1に記載のデバイス。
【請求項7】
前記少なくとも1つのプロセッサが、前記発信ビデオストリームのための更なる補足コンテンツを前記リモートデバイスから受信し、
前記更なる補足コンテンツを用いて前記発信ビデオストリームを更に修正し、
前記更に修正された発信ビデオストリームを前記リモートデバイスに送信する、
ように更に構成されている、請求項1に記載のデバイス。
【請求項8】
前記会議セッションが、前記デバイス、前記リモートデバイス、及び追加のリモートデバイスの間の会議セッションを含み、前記会議セッションは、追加の着信ビデオストリームを前記追加のリモートデバイスから受信すること、又は、前記デバイスの前記カメラからの前記発信ビデオストリームを前記追加のリモートデバイスに送信すること、の少なくとも1つを更に含む、請求項1に記載のデバイス。
【請求項9】
命令を含むコンピュータプログラムであって、前記命令はコンピュータによって実行されると、前記コンピュータに、
ライブ着信ビデオストリームと、前記ライブ着信ビデオストリームのための補足コンテンツに関連付けられたメタデータとをリモートデバイスから受信することと、ここで、前記ライブ着信ビデオストリームは、前記リモートデバイスのカメラによってキャプチャされ、キャプチャ後に前記リモートデバイスによって直ちに送信される画像フレームのストリームを含み、
前記メタデータを使用して、前記補足コンテンツを含むように前記ライブ着信ビデオストリームを修正することと、
前記修正されたライブ着信ビデオストリームを表示することと、
を含む動作を実行させ
、
前記メタデータは、前記補足コンテンツを取得するための命令と、前記ライブ着信ビデオストリームを修正して前記補足コンテンツを含めるための命令と、を含み、前記メタデータを使用して、前記ライブ着信ビデオストリームを修正して前記補足コンテンツを含めることは、
前記メタデータ内の識別子を使用して、ローカルストレージ又はクラウドベースのストレージから前記補足コンテンツを取得することと、
前記取得した補足コンテンツを、前記ライブ着信ビデオストリームの前記画像フレームのうちの1つ以上の一部分であって、前記メタデータ内において特定される一部分に適用することと、を含む、コンピュータプログラム。
【請求項10】
前記動作が、前記ライブ着信ビデオストリームの前記受信と並行してライブ発信ビデオストリームをローカルカメラから送信することを更に含む、請求項
9に記載のコンピュータプログラム。
【請求項11】
前記メタデータが、前記補足コンテンツと、前記補足コンテンツを含めるように前記ライブ着信ビデオストリームを修正するための命令と、を含む、請求項
9に記載のコンピュータプログラム。
【請求項12】
前記動作が、補足コンテンツオプションと、前記補足コンテンツを有する前記修正されたライブ着信ビデオストリームとを、表示のために提供することと、
前記補足コンテンツオプションの選択を受信することと、
前記選択に応じて、前記選択された補足コンテンツオプションに関連付けられた追加の補足コンテンツを用いて、前記修正されたライブ着信ビデオストリームを修正することと、
を更に含む、請求項
9に記載のコンピュータプログラム。
【請求項13】
前記動作が、前記追加の補足コンテンツを表示するために命令を前記リモートデバイスに送信することを更に含む、請求項
12に記載のコンピュータプログラム。
【請求項14】
ローカルデバイスと複数のリモートデバイスとの間に会議セッションを確立することと、ここで、前記会議セッションは、前記複数のリモートデバイスのそれぞれに送信するために、前記ローカルデバイスのカメラから発信ビデオストリームを提供することを含み、
前記ローカルデバイスでの表示のために、補足コンテンツオプション及び前記発信ビデオストリームを提供することと、
前記補足コンテンツオプションの選択を受信することと、
前記選択に応じて、前記選択された補足コンテンツオプションに関連付けられた補足コンテンツを用いて、前記発信ビデオストリームを修正することと、
前記補足コンテンツを有する前記修正された発信ビデオストリームを、前記複数のリモートデバイスの少なくとも1つに送信するために提供することと、
前記補足コンテンツを有しない前記発信ビデオストリームを、前記複数のリモートデバイスの他の少なくとも1つに送信するために提供することと、
を含む、方法。
【請求項15】
前記補足コンテンツを有する前記修正された発信ビデオストリームを、前記複数のリモートデバイスのそれぞれに送信するために提供することを更に含む、請求項
14に記載の方法。
【請求項16】
前記複数のリモートデバイスのそれぞれから着信ビデオストリームを受信することと、
前記複数のリモートデバイスのそれぞれからの前記着信ビデオストリームの表示とともに表示するために、前記修正された発信ビデオストリームを提供するための選択可能なオプションを提供することと、
を更に含む、請求項
14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本出願は、2018年5月7日に出願された「Modifying Video Streams with Supplemental Content for Video Conferencing」と題する米国仮特許出願第62/668,126号の利益を主張する。同出願はその全体が全ての目的のために参照によって本明細書に組み込まれる。
【0002】
本発明の説明は、概して、ビデオストリームを修正することに関し、より具体的には、ビデオ会議のために補足コンテンツを用いて画像を修正することに関する。
【背景技術】
【0003】
ビデオ会議は、遠隔地間でライブビデオストリームを交換することによって、遠隔地にいる人々がまるで対面で会議しているかのように対話することを可能にする。例えば、シカゴの会議室のカメラを使用して、シカゴ会議室のビデオをキャプチャして直ちに送信し、ニューヨーク市のリモート会議室で表示する。ニューヨーク市会議室のテレビは、シカゴ会議室の着信ビデオを表示するので、ニューヨーク市会議室の人々は、シカゴ会議室の人々の現在の行動を見ることができる。同様に、ニューヨーク市会議室のカメラを使用して、ニューヨーク市会議室のビデオをキャプチャして直ちに送信し、シカゴ会議室のテレビで表示するので、シカゴ会議室の人々は、ニューヨーク市会議室の人々の現在の行動を見ることができる。このようにして、2つのリモート会議室は、実質的に1つの会議室に結合される。
【0004】
歴史的に、ビデオ会議は、それぞれの会議室内の専用カメラ及び専用テレビによってビデオ会議が促進されてきたが、発信又は着信するビデオ配信の制御については、カメラの位置、ズーム、及び焦点の調整に限定されていた。しかしながら、いまや、カメラ及び関連するディスプレイは、一般に、スマートフォン、タブレット、ラップトップコンピュータ、又はデスクトップコンピュータなどの単一のデバイスにおいて提供されており、これには、過去の会議室構成よりもはるかに大きな処理能力が備わっている。
【0005】
これらのデバイスには、ビデオ会議アプリケーションを備え、それによって、デバイスのカメラから発信ビデオを送信し、その同じデバイスのディスプレイ上にリモートデバイスのカメラからの着信ビデオを表示することができる。これらのアプリケーションは、より安価かつより効率的な会議システムを容易化することができ、いまや、ユーザのオフィス、自宅などの任意の場所から、又はユーザがスマートフォン若しくはタブレットを携帯して場所から場所へ移動しながらであっても、ビデオ会議を行うことを可能としている。
【図面の簡単な説明】
【0006】
主題の技術の一定の特徴を、添付の特許請求の範囲に示す。しかしながら、説明の目的のため、主題の技術のいくつかの実施形態を、以下の図に示す。
【0007】
【
図1】1つ以上の実装形態に係る、ビデオ会議のための補足コンテンツを用いたビデオストリームの修正が実施され得る例示的なネットワーク環境を示す。
【0008】
【
図2】1つ以上の実装形態に係る、ビデオ会議のために補足コンテンツを用いてビデオストリームが修正される例示的なユーザインタフェースビューを示す概略図を示す。
【0009】
【
図3】1つ以上の実装形態に係る、ビデオ会議のために補足コンテンツを用いてビデオストリームを修正する例示的なプロセスのフロー図を示す。
【0010】
【
図4】1つ以上の実装形態に係る、送信のためのビデオストリームに補足コンテンツを統合するための例示的なデータフローを示す概略図を示す。
【0011】
【
図5】1つ以上の実装形態に係る、送信のためのビデオストリームに付随する補足コンテンツメタデータをパッケージ化する例示的なデータフローを示す概略図を示す。
【0012】
【
図6】1つ以上の実装形態に係る、ビデオストリームが補足コンテンツを用いてマルチパーティビデオ会議のために修正される例示的なユーザインタフェースビューを示す概略図を示す。
【0013】
【
図7】1つ以上の実装形態に係る、補足コンテンツを用いて画像を修正するマルチパーティビデオ会議の例示的なプロセスのフロー図を示す。
【0014】
【
図8】1つ以上の実装形態に係る、補足コンテンツを用いて着信ビデオストリームを修正する間の例示的なユーザインタフェースビューを示す概略図を示す。
【0015】
【
図9】1つ以上の実装形態に係る、補足コンテンツを用いて着信ビデオストリームを修正する例示的なプロセスのフロー図を示す。
【0016】
【
図10】1つ以上の実装形態に係る、発信ビデオストリーム及び着信ビデオストリームを共に示し、補足コンテンツモードオプションを有する例示的なユーザインタフェースを示す。
【0017】
【
図11】1つ以上の実装形態に係る、補足コンテンツオプションを有する発信ビデオストリームの例示的なユーザインタフェースを示す。
【0018】
【
図12】1つ以上の実装形態に係る、補足コンテンツを有する発信ビデオストリームの例示的なユーザインタフェースを示す。
【0019】
【
図13】1つ以上の実装形態に係る、発信ビデオストリーム内のユーザの顔が検出された動作に応じて移動する適応型補足コンテンツ(adaptive supplemental content)の例示的なユーザインタフェースを示す。
【0020】
【
図14】1つ以上の実装形態に係る、補足コンテンツを有する発信ビデオストリームを示すビデオストリームビューのサイズ縮小の例示的なユーザインタフェースを示す。
【0021】
【
図15】1つ以上の実装形態に係る、補足コンテンツを含む着信ビデオストリームの例示的なユーザインタフェースを示す。
【0022】
【
図16】主題技術の1つ以上の実装形態を実施することができる電子システムを示す。
【発明を実施するための形態】
【0023】
以下に述べる詳細な説明は、主題の技術の様々な構成の説明として意図されており、主題の技術を実践できる唯一の構成を表すことを意図するものではない。添付の図面は、本明細書に組み込まれ、詳細な説明の一部を構成する。詳細な説明は、主題の技術の完全な理解を提供するために特定の詳細を含む。しかしながら、主題の技術は、本明細書で示された特定の詳細には限定されず、1つ以上の他の実装形態を使用して実施することができる。1つ以上の実装形態では、主題の技術の概念を不明瞭にすることを避けるために、構造及び構成要素がブロック図形式で示されている。
【0024】
電子デバイス用のビデオ会議アプリケーションによって、ユーザが、自身のデバイス上でリモートデバイスのカメラからのビデオ配信を見ることが可能になる。配信を見るユーザのデバイスはまた、それ自体のカメラからリモートユーザにビデオストリームを送信することもできる。多くの場合、それぞれのユーザは自身のデバイス上のカメラを使用して、そのユーザの顔及び/又はそのデバイスに限定された若しくは近辺にいる他ユーザの顔のビデオ画像を取得し、発信ビデオストリームにおいて、1人以上のリモートユーザに送信する。このようにして、隔地間のユーザが、他のユーザ又はユーザの顔の着信ビデオストリームを見ながらリアルタイムでの会話を行い、直接対面式での会話又は会議を模することができる。発信及び着信ビデオストリームは、セルラー通信ネットワーク、無線若しくは有線のローカル通信チャネル(例えば、Bluetooth若しくは他の直接的なピアツーピア通信、又はローカルエリアネットワークを介した通信)、又はインターネットなどのより広域のネットワーク上で交換することができる。
【0025】
特にモバイルデバイスでは、ビデオ会議セッション中に発信ビデオストリーム以外の情報をリモートユーザと共有することが困難な場合がある。例えば、第2のユーザとのビデオ会議セッションに参加する第1のユーザは、画像又はアニメーションを第2のユーザに送信することを望む場合がある。しかしながら、第1のユーザは多くの場合、ビデオ会議アプリケーションの外部で画像又は動画にアクセスして、メッセージングアプリケーション又は電子メールアプリケーションを介するなど別のチャネルを介して画像又は動画を送信するために、ビデオ会議アプリケーションを一時停止することによって、発信ビデオストリームを中断しなければならない。このプロセスは、時間がかかり、非効率的であり、ビデオ会議に混乱を生じさせる可能性があり、その結果、ビデオ会議アプリケーション中の補足コンテンツの使用を抑制し、電子デバイスをあまり効果的でないコミュニケーション手段とする可能性がある。
【0026】
いくつかの実施形態は、ビデオ会議アプリケーションを実行するように構成されたカメラ及び処理回路を備えた電子デバイスを提供し、これにより、(例えば、ビデオストリームのローカルストレージを必要とせず、かつビデオ会議アプリケーションを終了したり、又は他のアプリケーションにアクセスしたりすることなく)ビデオ会議アプリケーション内から発信ビデオストリームに補足コンテンツを直接追加することができる能力をユーザに提供する。
【0027】
補足コンテンツは、以下を含み得る。発信ビデオストリームの一部分の上に配置することができるステッカーアイコンなどの静的コンテンツ(例えば、位置、サイズ、及び向きがビデオストリームのコンテンツ又は時間の経過に無関係である、発信ビデオストリームの複数の画像フレーム内の静止画素位置に表示される、変化せずアニメーションしないない画像)、発信ビデオストリームの一部の上に配置することができるアニメーションキャラクタなどのアニメーションコンテンツ(例えば、位置、サイズ、及び向きがビデオストリームのコンテンツに無関係である、発信ビデオストリームの複数の画像フレーム内の静止画素位置に表示される、変化する画像若しくは複数の画像)、又は、発信ビデオストリームの一部分の上に配置することができ、発信ビデオストリームのコンテンツの変化に基づいて適応的に(例えば、位置、サイズ、向き、又はコンテンツなどが)変化する適応型コンテンツ。
【0028】
したがって、様々な実施形態は、例えば、上述の既存のビデオ会議アプリケーションを有するデバイスと比較して、ユーザがより効率的かつより効果的にビデオ会議セッションに参加することを可能にする。
【0029】
図1は、1つ以上の実装形態に係る、ビデオ会議のために補足コンテンツを用いてビデオストリームを修正することが実施され得る例示的なネットワーク環境100を示す。しかしながら、描写された構成要素の全てが全ての実装形態において使用され得るわけではなく、1つ以上の実装形態は、図に示されたものに追加の又は異なる構成要素を含むことができる。本明細書で示された特許請求の範囲の趣旨又は範囲から逸脱することなく、構成要素の構成及びタイプの変形を行うことができる。追加の構成要素、異なる構成要素、又はより少ない構成要素が提供されてもよい。
【0030】
ネットワーク環境100は、電子デバイス110、電子デバイス115、及びサーバ120を含む。ネットワーク106は、電子デバイス110及び/若しくはサーバ120、電子デバイス115及び/若しくはサーバ120、並びに/又は電子デバイス110及び/若しくは電子デバイス115を(直接的又は間接的に)通信可能に接続することができる。1つ以上の実装形態では、ネットワーク106は、インターネットを含むか、又はインターネットに通信可能に接続されている、相互接続されたデバイスのネットワークであってもよい。説明のために、ネットワーク環境100は、電子デバイス110、電子デバイス115、及びサーバ120を含むものとして
図1に示されている。しかしながら、ネットワーク環境100は、任意の数の電子デバイス及び任意の数のサーバを含むことができる。
【0031】
電子デバイス110は、例えば、デスクトップコンピュータ、ラップトップコンピュータ、スマートフォンなどのポータブルコンピューティングデバイス、周辺デバイス(例えば、デジタルカメラ、ヘッドホン)、タブレットデバイス、独立型ビデオ会議ハードウェア、携帯時計、バンドなどのウェアラブルデバイス又は、例えば、WLAN無線通信、セルラー無線通信、Bluetooth無線通信、Zigbee無線通信、近距離通信(near field communication、NFC)無線通信、及び/若しくは他の無線通信などの、1つ以上の無線インタフェースを含む任意の他の適切なデバイス、であってもよい。
図1では、例として、電子デバイス110がデスクトップコンピュータとして描写されている。電子デバイス110は、
図16に関して以下で説明する電子システムであってもよく、かつ/又はその全て若しくは一部を含んでもよい。1つ以上の実装形態では、電子デバイス110は、カメラを含んでもよく、ネットワーク106上で電子デバイス115を用いてビデオストリームを交換かつ/又は修正するためのビデオ会議アプリケーションを提供することができる。
【0032】
電子デバイス115は、タッチスクリーンを含んでもよく、例えば、タッチスクリーンを含むラップトップコンピュータなどのポータブルコンピューティングデバイス、タッチスクリーンを含むスマートフォン、タッチスクリーンを含む周辺デバイス(例えば、デジタルカメラ、ヘッドホン)、タッチスクリーンを含むタブレットデバイス、タッチスクリーンを含むウェアラブルデバイス、例えば、携帯時計、バンドなど、及び、例えばタッチスクリーンを含む任意の他の適切なデバイス、又はタッチパッドを有する任意の電子デバイスなどであってもよい。1つ以上の実装形態では、電子デバイス115は、タッチスクリーンを含まなくてもよいが、仮想現実環境又は拡張現実環境内などの、タッチスクリーンのようなジェスチャをサポートしてもよい。
図1では、例として、電子デバイス115が、タッチスクリーンを有するタブレットデバイスとして描写されている。1つ以上の実装形態では、電子デバイス115は、
図16に関して以下で説明する電子システムに関して以下で説明する電子デバイスであってもよく、かつ/又はその全て若しくは一部を含んでもよい。1つ以上の実装形態では、電子デバイス115はまた、カメラを含んでもよく、ネットワーク106上で電子デバイス110と共にビデオストリームを交換かつ/又は修正するビデオ会議アプリケーションを提供することができる。
【0033】
1つ以上の実装形態では、サーバ120は、電子デバイス110と115との間のビデオストリームの安全な交換を管理する。1つ以上の実装形態では、サーバ120は、ビデオストリームに含むためのコンテンツを記憶してもよい。例えば、サーバは、リモートデバイスへ送信する前の発信ビデオストリームに、又は、リモートデバイスから受信した後の着信ビデオストリームに追加することができる補足コンテンツを記憶してもよい。しかしながら、発信又は着信ビデオストリームを修正するための補足コンテンツは、送信前又は受信後のビデオストリームの修正のために、電子デバイス110及び/又は電子デバイス115によってローカルに記憶されてもよいことを理解されたい。発信ビデオストリームの修正は、修正を実行しているローカルデバイス上のカメラによってキャプチャされているビデオストリームのビデオ会議アプリケーション(又は他のアプリケーション若しくはオペレーティングシステムのプロセス)による、修正を含んでもよい。着信ビデオストリームの修正(例えば、リモートデバイスによって生成され、ローカルデバイスに送信されるビデオストリーム)は、ローカルデバイス上でローカルユーザによって提供された修正命令に基づいて実行されてもよく、又は、着信ビデオストリームを提供するリモートユーザによって行われた修正をレンダリングするために(例えば、着信ビデオストリームを修正するための及び/若しくは修正された着信ビデオストリームをレンダリングするための命令を含むメタデータに基づいて)実行されてもよい。
【0034】
補足コンテンツを用いて発信ビデオストリームを修正する例を、
図2に示す。補足コンテンツを用いて発信ビデオストリームを修正するための例示的なプロセスを、
図3に関して以下で更に説明する。複数のリモートデバイスのために補足コンテンツを用いて発信ビデオストリームを修正する例を、
図6に示す。複数のリモートデバイスのために補足コンテンツを用いて発信ビデオストリームを修正するための例示的なプロセスを、
図7に関して以下で更に説明する。補足コンテンツを用いて着信ビデオストリームを修正する例を、
図8に示す。補足コンテンツを用いて着信ビデオストリームを修正するための例示的なプロセスを、
図9に関して以下で更に説明する。
【0035】
図2は、ビデオ会議アプリケーションの動作中の電子デバイス115の様々なユーザインタフェースビューを示す。
図2に示すように、ビデオ会議アプリケーションは、プライマリビデオストリームビュー220、及びピクチャインピクチャのビデオストリームビューなどのセカンダリビデオストリームビュー212を含むことができる。電子デバイス115は、
図2に示すように、電子デバイス115のユーザ(例えば、ユーザ「A」)による視聴のため及び/又はリモートユーザ(例えば、ユーザ「B」)への送信のために、ビデオ会議アプリケーションに提供される画像フレームの連続ストリームを取得するカメラ201を含む。
【0036】
図2の例では、カメラ201からのビデオストリーム221は、電子デバイス115からリモートユーザ「B」の電子デバイス(例えば、電子デバイス110)に送信され、セカンダリビデオストリームビュー212でユーザAのために表示されている発信ビデオストリームである。
図2の例では、ユーザ「B」からの着信ビデオストリーム223が、プライマリビデオストリームビュー220におけるユーザ「A」による視聴のために表示される。
図2の例では、プライマリビデオストリームビュー220は、電子デバイス115のディスプレイ全体を概ね覆っており、一部はセカンダリビデオストリームビュー212によって覆われている。しかしながら、これは単なる例示に過ぎず、プライマリ及びセカンダリビデオストリームビュー220及び212の他の構成を提供することができる(例えば、2つの同じサイズの並列又は上下のビデオストリームビュー)。
【0037】
図2に示すように、ビデオ会議アプリケーションはまた、実行時に、カメラ選択オプション210(例えば、背面カメラ又は他のカメラに切り替えて、発信ビデオストリーム221を提供するための)及び補足コンテンツモードオプション208などの入力オプションも提供する。ビデオ会議アプリケーションにおける補足コンテンツモードオプション208が選択されると、ビデオ会議アプリケーションは、表示されているビデオストリーム(例えば、発信ビデオストリーム221及び/又は着信ビデオストリーム223)と共に1つ以上の補足コンテンツオプション222を表示する。
【0038】
図2の例では、補足コンテンツモードオプション208の選択によって、ビデオ会議アプリケーションは、カメラ201からの発信ビデオストリーム221の位置と、ユーザ「B」からの着信ビデオストリーム223の位置を入れ替え、補足コンテンツオプション222を用いる修正のために発信ビデオストリーム221がプライマリビデオストリームビュー220に示され、着信ビデオストリーム223はセカンダリビデオストリームビュー212に示される。しかしながら、発信ビデオストリーム221と着信ビデオストリーム223の位置を入れ替えることなく、補足コンテンツオプション222が提供されてもよいことも理解されたい。例えば、カメラ201からの発信ビデオストリーム221及び着信ビデオストリーム223の位置並びにサイズは、同じままであってもよく、又は補足コンテンツモードオプション208の場合、(例えば、矢印245によって示されるように、セカンダリビデオストリームビュー212のサイズを増加させることによって)他の方法で移動及び/若しくはサイズ変更されてもよい。発信ビデオストリーム及び1つ以上の着信ビデオストリームの相対的なサイズ並びに位置は、デバイスの1人以上のユーザによる入力などの他の入力に基づいて、又は音声入力に基づいて(例えば、現在話しているユーザからのビデオストリームのサイズを大きくすることによって)決定することができる。
【0039】
以下で更に詳細に説明するようないくつかのシナリオでは、補足コンテンツを用いる修正のために、補足コンテンツオプション222は、着信ビデオストリーム223と共にプライマリビデオストリームビュー220内で提供されてもよいことを理解されたい。
【0040】
図2の例に戻ると、補足コンテンツオプション222は選択されると、電子デバイス115のプロセッサに、(例えば、選択された補足コンテンツオプション222に対応する補足コンテンツである)対応する補足コンテンツ229を、プライマリビデオストリームビュー220に表示されているビデオストリームに結合させる。補足コンテンツ229は、カメラ201によって取得され、プライマリビデオストリームビュー220に表示される発信ビデオストリーム221の上に若しくは発信ビデオストリーム221と共に表示される静的補足コンテンツ、発信ビデオストリーム221の上に若しくは発信ビデオストリーム221と共に表示されるアニメーション補足コンテンツ、又は、発信ビデオストリーム221の上に若しくは発信ビデオストリーム221と共に表示される適応型補足コンテンツであってもよい。
【0041】
静的補足コンテンツ229は、デジタルステッカー、ワードアート、ユーザが描画したコンテンツ(例えば、ユーザの指若しくはスタイラスデバイスによるデバイスのタッチスクリーンへの入力を使用して描画されるコンテンツ)、又はビデオストリームの1つ以上のフレームの一部分をオーバーレイするか若しくは置き換えることができる他の静的コンテンツを含んでもよい。静的補足コンテンツは、発信ビデオストリーム221の一部の上に又はその一部と共に表示される時、ビデオストリームがローカル電子デバイス115に表示されている間、及び静的補足コンテンツを用いて修正されたビデオストリームが送信されている間、移動、サイズ変更、回転、又は他の方法で編集することができる。所望であれば、送信されるビデオストリームのサイズを縮小するために、静的コンテンツによって覆われるであろうビデオストリームの部分のサイズをゼロにするか、又はその他縮小し、その結果、サイズを縮小したビデオストリーム(例えば、覆われる部分をゼロ化し、圧縮し、解像度を低減し、又は送信から除去して)を送信することができる。
【0042】
アニメーション補足コンテンツ229は、アニメーション化されたデジタル画像、ダウンロード若しくはクラウドアクセス可能な動画、又は電子デバイス115若しくはサーバ120によって以前より記憶されているユーザ生成動画などの、以前に記憶された動画を含んでもよい。動画化された補足コンテンツは、発信ビデオストリーム221の一部の上に表示される場合、ビデオストリームがローカル電子デバイス115で表示されている間、および静的補足コンテンツで修正されたビデオストリームが送信されている間に、移動、サイズ変更、回転、またはその他の編集が可能である。アニメーション化された静的コンテンツは時間の経過と共に変化し得るが、アニメーション化されたコンテンツの変化は、修正されているビデオストリームのコンテンツの変化に無関係である。
【0043】
対照的に、発信ビデオストリーム221に追加される適応型補足コンテンツ229は、発信ビデオストリーム221内のコンテンツに基づいて変化することができる(例えば、電子デバイス115のプロセッサによって修正され得る)。例えば、適応型補足コンテンツは、発信ビデオストリーム221の画像フレーム内の顔を修正するための顔修正コンテンツを含んでもよい。顔修正コンテンツのための補足コンテンツオプション222がビデオ会議アプリケーション内から選択されると、デバイスのプロセッサは、カメラ201からの発信ビデオストリーム221において顔を検出し、検出された顔に顔修正コンテンツを適用し、検出された顔の変化(例えば、ビデオストリーム内の検出された変化)に基づいて、顔修正コンテンツを能動的に修正することができる。
【0044】
例えば、顔修正コンテンツは、ビデオストリーム221内のユーザの顔を置き換えるか又はオーバーレイし、ビデオストリーム内のユーザの顔の表情に追随し、表情を強調、誇張し、若しくはその他の方法で表情に応答する表情を含む、動物(例えば、キツネ、象、犬、若しくはネズミなど)の頭部の1つ以上の特徴又は動物の頭部全体を含み得る。顔修正コンテンツはまた、(例えば、ユーザの頭部の位置及び/若しくは方向の変化、並びに/又はユーザの頭部とデバイスとの間の距離の変化による)ビデオストリーム内のユーザの頭部のサイズ、位置及び/又は向きに連係して、サイズ、位置、及び/又は向きを変更することができる。
【0045】
ビデオ会議アプリケーションは、ビデオストリームと、静的、アニメーション、または適応型補足コンテンツとをプライマリビデオストリームビュー220に表示し、並行してビデオストリームと、静的、アニメ-ション、または適応型補足コンテンツとをリモートデバイスに送信することにより、2つのリモートデバイスのユーザが同じ修正されたビデオストリームを実質的に同時に見ることができるようにする。
【0046】
いくつかのシナリオでは、発信ビデオストリームと共に提供される補足コンテンツは、受信デバイスによって編集可能であることも理解されたい(例えば、補足コンテンツを有する受信されたビデオストリームが、画像の層と補足コンテンツとをマージするなど、送信デバイスが画像画素値を直接修正することによる画素値自体への統合が行われず、代わりに補足コンテンツが受信電子デバイスでレンダリングされる場合)。このようなシナリオでは、電子デバイス110のプロセッサは、着信ビデオストリームとして電子デバイス115から発信ビデオストリーム221を受信することができ、着信ビデオストリームは、ビデオストリーム221及び補足コンテンツ229を含む。電子デバイス110のビデオ会議アプリケーションは、ビデオストリーム221及び補足コンテンツ229を表示し、ビデオストリームを(例えば、補足コンテンツ229を異なる補足コンテンツで置き換えることによって、及び/又は補足コンテンツ229を削除することによって)更に修正するための補足コンテンツオプションを電子デバイス110で提供する。
【0047】
補足コンテンツをビデオストリームと統合することにより、記載された補足コンテンツ機能は、補足ビデオストリームをレンダリングするための機能を有しないリモートデバイス(例えば、まだアップデートされていないソフトウェアや古いデバイス上のソフトウェアに起因する)と後方互換性を持つことが可能となり、また、記載された補足コンテンツ機能は、記載された補足コンテンツ機能をリモートデバイスが有するかどうかを、送信デバイスが判定できない第三者ソフトウェア及び/又はデバイスと、互換性を持つことが可能となる。場合によっては、電子デバイス115のユーザは、統合又は非統合補足コンテンツをビデオストリームと共に提供するかどうかを選択する能力を提供され得る。場合によっては、電子デバイス115は、統合又は非統合補足コンテンツをビデオストリームと共に提供するかどうかを(例えば、利用可能な送信帯域幅、受信デバイスの利用可能な機能性、又は受信デバイスの機能性に関する情報の欠如に基づいて)自動的に決定してもよい。いくつかのシナリオでは、電子デバイス115のビデオ会議アプリケーションは、リモートデバイスが、受信されたビデオストリームで補足コンテンツをレンダリングすることができるかどうか、及び/又は補足コンテンツが、リモートデバイスで利用可能かどうか、若しくはビデオストリームと共に(例えば、補足コンテンツのメタデータに含めて)リモートデバイスに提供されるべきかどうかを判定するために、リモートデバイスとの事前会議(例えば、ハンドシェイク)動作を実行してもよい。
【0048】
一実施例では、補足コンテンツ229は、発信ビデオストリーム221内のユーザ「A」との顔と共に移動し、かつそれに適応する適応型漫画(adaptive cartoon)のキツネの頭部であり、更なる補足コンテンツが、ユーザ「B」によって、例えば、サングラス又は帽子をキツネの頭部に追加することによって、ユーザ「A」のビデオストリームに追加されてもよい。
図2の例では、ユーザ「B」は、電子デバイス115から提供された修正されたビデオストリームにリモート補足コンテンツ230(例えばサングラス)を追加しており、電子デバイス115はまた、プライマリビデオストリームビュー220に示される、表示された発信ビデオストリームにリモート補足コンテンツ230を(例えば、リモートデバイスから受信した命令に基づいて)追加している。
【0049】
リモート補足コンテンツは、電子デバイス115のプロセッサによってレンダリングするために、リモートデバイスによって電子デバイス115に送信されてもよく、又はリモートデバイスからの命令に基づいて電子デバイス115によって取得されてもよい。電子デバイス115が電子デバイス115のローカルストレージから又はサーバ120から更なる補足コンテンツを取得するための命令を受信するシナリオでは、電子デバイス115のプロセッサは、受信した命令に基づいて、ローカルストレージ又はクラウドベースのストレージから更なる補足コンテンツを取得し、カメラ201からの発信ビデオストリーム221、リモート補足コンテンツ230、及び/又は電子デバイス115のユーザによって追加された元の補足コンテンツ229を、(例えば、元の補足コンテンツが受信デバイスで削除されなかった場合)プライマリビデオストリームビュー220に表示する。
【0050】
図3は、1つ以上の実装形態に係る、ビデオ会議のために補足コンテンツ229などの補足コンテンツを用いて発信ビデオストリーム221などの発信ビデオストリームを修正するための例示的なプロセス300のフロー図を示す。説明のために、プロセス300を、本明細書では主として、
図1及び
図2の電子デバイス115の1つ以上のプロセッサによって実行され得る、
図1及び
図2の構成要素を参照しながら(特に電子デバイス115に関して)記載する。しかしながら、プロセス300は電子デバイス115に限定されず、プロセス300の1つ以上のブロック(又は動作)は、1つ以上の電子デバイス110又はサーバ120などの、他の好適なデバイスの1つ以上の他の構成要素によって実行されてもよい。更に、説明のために、プロセス300のブロックは、本明細書では逐次的に又は直線的に発生するものとして説明している。しかしながら、プロセス300の複数のブロックは、並行して発生してもよい。加えて、プロセス300のブロックは、図示された順序で実行される必要はなく、並びに/又は、プロセス300の1つ以上のブロックは、実行される必要はなく、及び/若しくは他の動作によって置き換えることができる。
【0051】
ブロック302において、電子デバイス115のプロセッサは、電子デバイス115と電子デバイス110などのリモート電子デバイスとの間の会議セッションを確立する。会議セッションは、リモート電子デバイス110から着信ビデオストリーム223を受信すること、又は電子デバイス115のカメラ201などのカメラからリモートデバイスに発信ビデオストリーム221を送信することの少なくとも1つを含む。例えば、いくつかのシナリオでは、電子デバイス115及び110の両方が、ビデオストリームを送受信する。カメラ(及び/又は関連するセンサ)は、深度感知能力を有し、深度情報(例えば、拡張現実メタデータなどのメタデータとして)をローカルビデオ会議アプリケーション及び/又は受信機に送信することができる。ローカルビデオ会議アプリケーション及び/又は受信機は、カメラ(及び/又は他のセンサ)から深度情報を取得し、(例えば、基礎となる画像フレーム内の顔などのオブジェクトに対して補足コンテンツを位置付ける、サイズ変更する、方向付ける、及び/又は適応させるために)その深度情報を使用して補足コンテンツオーバーレイを描写する。他のシナリオでは、電子デバイス115若しくは電子デバイス110のビデオ性能が一時的に利用不可能、又は電子デバイス115若しくは電子デバイス110のうちの1つが限られた帯域幅を有し、ビデオを受信して表示しているが、音声は送信のみ行なっている場合がある。
【0052】
ブロック304において、電子デバイス115のプロセッサは(例えば、補足コンテンツモードオプション208の選択に応じて)、表示のために、補足コンテンツオプション222と、着信ビデオストリーム223又は発信ビデオストリーム221の少なくとも1つとを提供する。
【0053】
ブロック306において、電子デバイス115のプロセッサは、補足コンテンツオプション222の選択物を受信する。例えば、ユーザ「A」は、タッチスクリーンデバイス上でそのオプションをタップすることによって、表示されたオプションの位置で若しくはその近くの物理的なボタンを押すことによって、音声コマンドを提供することによって、及び/又は任意の他の選択メカニズムによって、1つ又は1つ以上の補足コンテンツオプション222を選択することができる。
【0054】
ブロック308において、電子デバイス115のプロセッサは、選択に応じて、選択された補足コンテンツオプション222に関連付けられた補足コンテンツを用いて、着信ビデオストリーム223又は発信ビデオストリーム221の少なくとも1つを修正する。次いで、修正された発信ビデオストリームは、1つ以上のリモートデバイスに送信され得る。いくつかのシナリオでは、電子デバイス115のプロセッサは、リモートデバイスからの発信ビデオストリームのための更なる補足コンテンツ(例えば、リモート補足コンテンツ230)を受信する。これらのシナリオでは、電子デバイス115のプロセッサは、リモート補足コンテンツ230を用いて発信ビデオストリーム221を更に修正し、更に修正された発信ビデオストリームをリモート電子デバイスに送信することができる。
【0055】
いくつかのシナリオでは、発信ビデオストリームを修正し、修正された発信ビデオストリームを送信することは、発信ビデオストリームに補足コンテンツを統合して、統合された修正発信ビデオストリームを形成すること、及び、統合された修正出力ビデオストリームをリモートデバイスに送信することを含むことができる。例えば、補足コンテンツの層(複数可)と発信ビデオストリームの層(複数可)とを単一の層にマージすることによって、補足コンテンツを発信ビデオストリームに統合することができる。
【0056】
図4は、電子デバイス115が、送信のための統合された修正出力ビデオストリームを生成する例を示す。
図4の例に示すように、電子デバイス115は、カメラから一連の画像フレームを含むビデオデータを受信するコンテンツマージエンジン(content merging engine)406(例えば、ビデオ会議アプリケーション411のハードウェアコンポーネント又はコンテンツマージ部分)を含むことができる。コンテンツマージエンジン406はまた、デバイスのユーザによって選択された静的補足コンテンツ400、アニメーション補足コンテンツ402、及び/又は適応型補足コンテンツ404などの補足コンテンツ229を受信してもよい。
【0057】
所望であれば、別個の拡張現実メタデータがコンテンツマージエンジンに提供されてもよい。拡張現実(AR)メタデータは、人、顔の特徴、動物、木、低木、花、道路、道路標識、家具、又はビデオデータ画像フレーム内に表される他の物理オブジェクトなどの物理的オブジェクトを記述する情報を含むことができる。例えば、ARメタデータは、深度情報、サイズ情報、画素位置情報、動き情報、向き情報、又は物理的オブジェクトに関する他の情報を含むことができる。コンテンツマージエンジン406は、ARメタデータを使用して、カメラからビデオストリームに追加される補足コンテンツを、時間の経過と共に、位置付ける、方向付ける、サイズ変更する、及び/又は適応させることができる。例えば、アニメーション化された動物の顔を含む適応型補足コンテンツが、ユーザのスマートフォンの前面カメラによってキャプチャされたユーザの顔の画像をオーバーレイするように選択される場合、ARメタデータは、ユーザの顔の境界、位置、サイズ、奥行き、及び特徴(例えば、目、耳、口などの位置)を示すことができ、それを使用して、これを使用して、アニメーション化された動物の顔の顔表現のサイズ、位置、向き、および決定することができ、ユーザの顔が画像化される奥行き、画像化された顔の向き若しくは位置、及び/又はユーザの表情の変化に対応するように、アニメーション化された動物の顔をアニメーションすることができる。
【0058】
図4の例では、カメラからのビデオストリームの画像フレームは、画像フレームの画素値の一部若しくは全てに補足コンテンツ値を追加することによって、及び/又は画像フレームの画素値の一部若しくは全てを補足コンテンツ値で置き換えることによって、静的補足コンテンツ400、アニメーション補足コンテンツ402、及び/又は適応型補足コンテンツ404の追加によって修正される。このようにして、補足コンテンツは、修正に関する情報を記憶することなく、画像フレーム自体の画素値に統合されて、統合された補足ビデオストリームを形成する。統合された補足ビデオストリームは、リモートデバイス(例えば、電子デバイス110)のデコーダ413に送信するために(例えば、デバイスの通信回路及び/又はネットワークインタフェースを介して、並びにネットワーク106を介して)、コンテンツマージエンジン406から、電子デバイス115の、ビデオエンコーダなどのエンコーダ410に提供されてもよい。
図3に示す例では、ビデオデータと補足コンテンツとの統合は、コンテンツマージエンジン406によって実行される。しかしながら、他のシナリオでは、エンコーダ410は、ビデオデータと補足コンテンツとの統合の一部又は全てを実行してもよい。これらの統合された送信例では、統合された補足ビデオストリームは、カメラからのビデオストリームとは別個の補足コンテンツを記述する補足コンテンツメタデータなしで、及び深度情報のようなARメタデータなしで送られる。
【0059】
リモートデバイスのデコーダ413は、リモートデバイスでの表示のために(例えば、リモートデバイス上で実行されているビデオ会議アプリケーション内で)、符号化された統合補足ビデオストリームを復号することができる。補足ビデオストリームは送信前に統合されたので、リモートデバイスで修正することなく、リモートデバイスは受信した補足ビデオストリームを表示する。
【0060】
これらの統合送信シナリオでは、リモート補足コンテンツ230は、ビデオ会議アプリケーション414によって統合された補足ビデオストリームに、受信デバイスにおいて又は送信デバイスにおいて(例えば、リモート補足コンテンツを追加するための命令が、受信デバイスから送信デバイスに提供される場合)追加することができる。しかしながら、リモートデバイスは、リモート補足コンテンツの追加のために(例えば、統合された補足ビデオストリームはこの情報を含まないので)、画像フレーム内の物理的オブジェクト及び/又は補足コンテンツを検出する画像解析動作を実行する場合があり、送信デバイスにおいて以前に追加された補足コンテンツは、元の画像フレームを得るために受信デバイスにおいて修正又は除去することはできない。リモート補足コンテンツ230は、電子デバイス115におけるプレビューストリームに含めるために、又は他のリモートデバイスに送信するために、(例えば、ネットワーク106及び/若しくはサーバ120を介して)電子デバイス115に(例えば、コンテンツマージエンジン406に)提供されてもよい。所望であれば、送信デバイスにおいて、送信デバイスで補足コンテンツへの修正を可能にするために、補足コンテンツが編集可能な形式(例えば、プレビューデータは、カメラ画像フレーム及び補足コンテンツを別々に含むことができる)で発信ビデオストリームと共に表示され得るように、プレビューデータがプライマリビデオストリームビュー220に提供される。
図4の例では、プライマリビデオストリームビュー220は、ビデオ会議アプリケーション411の一部として示されているが、ビデオ会議アプリケーション411が、電子デバイス115のディスプレイ上に表示するためのプライマリビデオストリームビューコンテンツを生成することを理解されたい。
【0061】
上記のとおり、いくつかのシナリオでは、カメラからの未修正の画像フレームに補足コンテンツのためのメタデータを追加することによって、補足コンテンツを有する修正されたビデオストリームを提供することが望ましい場合があり、メタデータは、受信デバイスにおいて補足コンテンツを用いて画像フレームを修正するための命令を含む。このようにして、受信ユーザに、行われた修正を特定し、修正を元に戻し、及び/又は受信デバイスを用いてビデオストリームを更に修正する能力を提供することができる。このようにして、転送されるデータ量も削減することができる(例えば、補足コンテンツが両方のデバイスに記憶され、受信デバイスでレンダリングされる場合、未修正のビデオストリーム画像フレームを有するメタデータ内で受信された命令に基づいて、そのデバイスに記憶された補足コンテンツを使用する)。
【0062】
したがって、いくつかのシナリオでは、発信ビデオストリームを修正し、修正された発信ビデオストリームを送信することは、発信ビデオストリーム、補足コンテンツ、並びに、発信ビデオストリーム及び補足コンテンツをリモートデバイスにレンダリングするための命令を送信することを含み得る。いくつかのシナリオでは、発信ビデオストリームを修正し、修正された発信ビデオストリームを送信することは、発信ビデオストリーム、及び補足コンテンツを取得してリモートデバイスにレンダリングするための命令を送信することを含み得る。
【0063】
例えば、
図5に示すように、送信電子デバイス(例えば、電子デバイス115)のビデオ会議アプリケーションのコンテンツマージエンジン406が、カメラから一連の画像フレームを含むビデオデータを受信し、電子デバイス115のユーザによって選択された静的補足コンテンツ400、アニメーション補足コンテンツ402、及び/又は適応型補足コンテンツ404を受信する場合、補足コンテンツを画像フレームの画素値に統合し、修正された画素値を符号化及び送信のためにエンコーダ410に提供する代わりに、補足コンテンツメタデータ及び/又はARメタデータが、デバイスのパッケージ化エンジン(packaging engine)511(例えば、リアルタイムトランスポートプロトコル(real-time transport protocol、RTP)エンジンのようなトランスポートプロトコルエンジン)に直接提供されると同時に、コンテンツマージエンジン406は、画像フレーム(ビデオ)のみをエンコーダ410に送信してもよい。
【0064】
図5に示すように、パッケージ化エンジン511は、エンコーダ410から符号化されたビデオデータを受信し、符号化されたビデオ、補足コンテンツメタデータ、及び/又はARメタデータをパッケージ化して、リモートデバイスのパッケージ化エンジ512(例えば、RTPエンジンのようなトランスポートプロトコルエンジン)に(例えば、ネットワーク106を介して)送信することができる。リモートデバイスのパッケージ化エンジン512は、補足コンテンツメタデータ及び/又はARメタデータを符号化ビデオストリームから分離(アンパック)し、補足コンテンツメタデータ及び/又はARメタデータをビデオ会議アプリケーション414に提供し、符号化されたビデオデータをデコーダ413に提供する。デコーダ413は、ビデオデータを復号し、着信ビデオストリームをビデオ会議アプリケーション414に提供する。
【0065】
ビデオ会議アプリケーション414が、補足コンテンツメタデータ、ARメタデータ、及び復号された着信ビデオストリームを受信すると、ビデオ会議アプリケーション414は、リモートデバイスのビデオ会議アプリケーションに表示するために、補足コンテンツメタデータに基づいて着信ビデオストリームを修正する。例えば、リモートデバイスのビデオ会議アプリケーション414は、補足コンテンツメタデータ内の命令に基づいて、補足コンテンツメタデータ自体から又はリモートデバイスのローカルストレージ若しくはクラウドベースのストレージから、補足コンテンツを取得することができる。次に、ビデオ会議アプリケーション414は、表示のために取得した補足コンテンツ229を追加することによって(例えば、画像フレームの画素値の一部若しくは全てに補足コンテンツ値を追加することによって、及び/又は画像フレームの画素値の一部若しくは全てを補足コンテンツ値で置き換えることによって)、ビデオストリームの一連の画像フレームのそれぞれを修正することができる。
【0066】
これらの統合されていない送信シナリオでは、送信デバイスからの補足コンテンツを、リモートデバイスでビデオストリームを修正若しくはビデオストリームから除去することができ、及び/又は追加のリモート補足コンテンツ230を、受信デバイスで補足ビデオストリームに追加することができる。
【0067】
図2~
図5に関連して上述した例は、2つのデバイス間のビデオ会議セッションを示す。しかしながら、補足コンテンツを有するビデオ会議は、3つ以上のデバイス間のグループ会議のために提供され得ることを理解されたい。
【0068】
図6は、3人以上の参加者によるビデオ会議セッションのための、ビデオ会議アプリケーションの動作中の電子デバイス115の様々なユーザインタフェースビューを示す。
【0069】
図6に示すように、電子デバイス115上で実行されているビデオ会議アプリケーションは、ユーザ「B」からの着信ビデオストリーム223をプライマリビデオストリームビュー220に、ユーザ「A」の発信ビデオストリーム221をセカンダリビデオストリームビュー212に、並びに追加のリモートデバイス(例えば、ユーザ「C」及び「D」のリモートデバイス)からの追加の着信ビデオストリーム223を追加のセカンダリビデオストリームビュー212に表示することができる。
【0070】
発信ビデオストリーム221は、ユーザ「B」、「C」、及び「D」のそれぞれのリモートデバイスに提供され、ビデオ性能及び十分な帯域幅がそのデバイスで利用可能である場合、それらのリモートデバイス上に表示される。図に示すように、発信ビデオストリームのためのセカンダリビデオストリームビュー212は、他のセカンダリビデオストリームビュー内の着信ビデオストリームからオフセットされてもよく、又は別の方法で区別されてもよい。
【0071】
図6に示すように、ビデオ会議アプリケーションの補足コンテンツ入力モードを入力するために補足コンテンツモードオプション208が選択されると、補足コンテンツオプション222が提供され、発信ビデオストリーム221は、補足コンテンツを用いる修正のために、プライマリビデオストリームビュー220に入れ替えられる(又は他の方法で、
図2に関連して上述したようにサイズ若しくは位置を増加させる)。
図6の例はまた、補足コンテンツ入力モードにおいて、ビデオ会議セッションにおけるそれぞれのリモートデバイスに対して選択可能なオプション240がどのように提供されるかを示す。リモートデバイスの選択可能なオプション240を選択することにより、リモートデバイスは、発信ビデオストリームに追加された補足コンテンツを見ることができる。リモートデバイスに対する選択可能なオプション240の選択を解除することにより、そのリモートデバイスは、発信ビデオストリームに追加された補足コンテンツを視聴しないようにされ、それにより、ビデオ会議セッション内の他のデバイスが、補足コンテンツを用いて修正された発信ビデオストリームを受信しても、そのデバイスは未修正の発信ビデオストリームを受信する。選択可能オプション240のいずれもチェックされない場合、補足コンテンツは、ローカルデバイスにおいてのみ(例えば、プレビューとして)表示されてもよい。
【0072】
図6の例では、ユーザ「B」のリモートデバイスに対する選択可能なオプション240が選択解除され、補足コンテンツオプション222の1つが選択されて、発信ビデオストリーム221に補足コンテンツ229を追加する。この例では、ユーザ「C」及び「D」のリモートデバイスは、補足コンテンツ229を用いて修正された発信ビデオストリーム221を受信し、ユーザのリモートデバイス「B」は、未修正の発信ビデオストリーム221(又は異なる修正ビデオストリーム)を受信する。いくつかのシナリオでは、電子デバイス115は、(例えば、ソフトウェアの互換性、帯域幅の可用性、リモートデバイス機能などに基づいて)リモートデバイスのうちの1つ以上に補足コンテンツを提供するかどうかを自動的に決定することができることも理解されたい。
【0073】
図6の例では、ユーザ「C」は次に、ビデオストリームにリモート補足コンテンツ230を追加することによってユーザ「A」のビデオストリームを(例えば、電子デバイス115に命令を送信して、ユーザ「C」のリモートデバイスの補足コンテンツオプション222を選択するユーザ「C」に応じてリモート補足コンテンツを追加することによって)更に修正する。ユーザ「A」の更に修正されたビデオストリームは、プライマリビデオストリームビュー220に表示され、ユーザ「C」及び「D」に送信される。
【0074】
図7は、1つ以上の実装形態に係る、3人以上の参加者とのビデオ会議のために補足コンテンツ229などの補足コンテンツを用いて発信ビデオストリーム221などの発信ビデオストリームを修正するための例示的なプロセス700のフロー図を示す。説明のために、プロセス700を、本明細書では主として、
図1、
図2及び
図4の電子デバイス115の1つ以上のプロセッサによって実行され得る、
図1及び
図2の構成要素を参照しながら(特に電子デバイス115に関して)記載する。しかしながら、プロセス700は電子デバイス115に限定されず、プロセス700の1つ以上のブロック(又は動作)は、1つ以上の電子デバイス110又はサーバ120などの、他の好適なデバイスの1つ以上の他の構成要素によって実行されてもよい。更に、説明のために、プロセス700のブロックは、本明細書では逐次的に又は直線的に発生するものとして説明している。しかしながら、プロセス700の複数のブロックは、並行して発生してもよい。加えて、プロセス700のブロックは、図示された順序で実行される必要はなく、並びに/又は、プロセス700の1つ以上のブロックは、実行される必要はなく、及び/若しくは他の動作によって置き換えることができる。
【0075】
ブロック702において、電子デバイス115のプロセッサは、電子デバイス115(例えば、ローカルデバイス)と複数のリモートデバイス(例えば、複数の電子デバイス110及び/又は他の電子デバイス115)との間に会議セッションを確立し、この会議セッションは、ローカル電子デバイスのカメラ201などのカメラからの発信ビデオストリーム221をリモート電子デバイスのそれぞれに送信することを含む。発信ビデオストリームは、電子デバイス115のメモリに記憶され、電子デバイス115のプロセッサによって実行されるビデオ会議アプリケーションのビデオストリームビューに表示することができる。1つ以上の実装形態では、サーバは、電子デバイス115とリモートデバイスとの間の会議セッションを調整及び/又は促進することができる。例えば、電子デバイス115は、単一の発信ビデオストリーム221をサーバ120に提供することができ、サーバ120は、発信ビデオストリームを複数のリモート電子デバイスのそれぞれに配信することができる。
【0076】
ブロック704において、電子デバイス115のプロセッサは、ローカルデバイスでの表示のために、補足コンテンツオプション222及び発信ビデオストリーム221を提供する。補足コンテンツオプション222及び発信ビデオストリーム221は、ビデオ会議アプリケーション内に表示される。例えば、
図2に関連して上述したように、補足コンテンツオプションは、静的、アニメーション、及び/又は適応型コンテンツを発信ビデオストリームに追加するオプションであってもよい。
【0077】
ブロック706において、電子デバイス115のプロセッサは、(例えば、ユーザ「A」が表示された補足コンテンツオプションをタップするか、又は別の方法で選択することに応じて)補足コンテンツオプションの選択を受信する。
【0078】
ブロック708において、電子デバイス115のプロセッサは、選択に応じて、選択された補足コンテンツオプション222に関連付けられた補足コンテンツ229を用いて発信ビデオストリーム221を修正する。次いで、修正された発信ビデオストリームは、一部又は全てのリモートデバイスに提供されてもよい。いくつかの動作シナリオでは、補足コンテンツを有さない発信ビデオストリームが、少なくとも1つのリモートデバイスに提供される。3つ以上のデバイス間のビデオ会議セッション中に、発信ビデオストリームの修正のために補足コンテンツオプション222が提供される時、それぞれのリモートデバイスの選択可能オプション240も表示用に提供されてもよく、それぞれのリモートデバイスの選択可能オプションは、そのリモートデバイスが発信ビデオストリームと共に補足コンテンツを受信することを許可する又は防止するように構成されている。各リモートデバイスに補足コンテンツを提供するための選択可能なオプションは、そのリモートデバイスに対する着信ビデオストリーム又は別の可視インジケータに関連して表示されてもよい。
【0079】
上記のとおり、いくつかのシナリオにおいて、発信ビデオストリームと共に提供される補足コンテンツは、受信デバイスによって編集可能であり得る。具体的には、補足コンテンツと発信ビデオストリームが送信前に統合されないシナリオでは、送信と共に提供されるメタデータは、送信者によって追加された補足コンテンツを受信デバイスが特定、修正、及び/又は更に補足することを可能にすることができる。
【0080】
図8は、3人以上の参加者とのビデオ会議セッションのためのビデオ会議アプリケーションの動作中のユーザ「C」の受信電子デバイス115Cの様々なユーザインタフェース図を示す。
図8に示すように、ユーザ「B」、「C」、及び「D」とのビデオ会議セッションにおけるユーザ「A」が、その発信ビデオストリーム221に補足コンテンツ229を追加すると(例えば、
図6を参照)、その修正されたストリームは、着信ビデオストリーム223としてユーザ「C」の電子デバイス115Cで受信され、セカンダリビデオストリームビュー212に表示される。
【0081】
図8の例では、ユーザ「C」の発信ビデオストリーム221は、補足コンテンツオプション222と共にプライマリビデオストリームビュー220に表示される。この構成では、補足コンテンツオプション222のうちの1つを選択することにより、関連付けられた補足コンテンツは、ユーザ「C」の発信ビデオストリーム221に追加され、ユーザ「A」、「B」、及び「D」のそれぞれのリモートデバイスに提供される(この例では、それぞれの選択可能なオプション240が選択されているため)。
【0082】
図8に示すように、ユーザ「C」は、修正された着信ビデオストリーム223をユーザ「A」からプライマリビデオストリームビュー220に入れ替え、ユーザ「C」の補足コンテンツ230(ユーザ「A」のデバイスを参照する場合、
図6にリモート補足コンテンツとして示される)を、すでに補足コンテンツ229が追加されているユーザ「A」のビデオストリームに追加することができる。
図8の例では、ユーザ「C」は、次に、ユーザ「A」から着信ビデオストリーム223を入れ替え、ユーザ「A」によって追加された補足コンテンツ229(例えば、ユーザ「A」のビデオストリーム内におけるユーザ「A」の顔を覆うキツネの頭部)、及びユーザ「C」によって追加された補足コンテンツ230(例えば、キツネの頭部上のサングラス)を含むように修正し、セカンダリビデオストリームビュー212のうちの1つに表示する。
【0083】
図9は、1つ以上の実装形態に係る、補足コンテンツを用いて修正されたリモートカメラからの着信ビデオストリームを含む、修正された着信ビデオストリーム(例えば、
図8に記載されるような補足コンテンツ229を備えたユーザ「A」の着信ビデオストリーム223)を受信して表示するための例示的なプロセス900のフロー図を示す。説明のために、プロセス900を、本明細書では主として
図1及び
図2の構成要素を参照しながら記載する。しかしながら、プロセス900は電子デバイス115に限定されず、プロセス900の1つ以上のブロック(又は動作)は、1つ以上の電子デバイス110又はサーバ120などの、他の好適なデバイスの1つ以上の他の構成要素によって実行されてもよい。更に、説明のために、プロセス900のブロックは、本明細書では逐次的に又は直線的に発生するものとして説明している。しかしながら、プロセス900の複数のブロックは、並行して発生してもよい。加えて、プロセス900のブロックは、図示された順序で実行される必要はなく、並びに/又は、プロセス900の1つ以上のブロックは、実行される必要はなく、及び/若しくは他の動作によって置き換えることができる。
【0084】
ブロック902において、電子デバイス110などの受信デバイスは、リモートデバイス(例えば、電子デバイス115)からのライブ着信ビデオストリーム223及びライブ着信ビデオストリームに対する補足コンテンツ229に関連付けられたメタデータを、(例えば、ビデオ会議アプリケーションで)受信する。ライブ着信ビデオストリーム223は、リモートデバイスのカメラ201などのカメラによって現在キャプチャされている(及び/又は同時にキャプチャされる)画像フレームのストリームを含んでもよい。ライブ着信ビデオストリーム223は、リモートデバイスのカメラによってキャプチャされ、キャプチャ後にリモートデバイスによって直ちに送信される画像フレームのストリームを含んでもよい。受信デバイスはまた、ライブ着信ビデオストリームの受信と同時に、ローカルカメラからライブ発信ビデオストリームを送信してもよい。1つ以上の実装形態では、ビデオ会議アプリケーション内のライブ着信ビデオストリームは、ビデオストリームがキャプチャされる時間に対して最小遅延で又は遅延なく、電子デバイス110に即時表示するために、リモートデバイスでキャプチャされ、(例えば、サービスの品質が高い)電子デバイス110に(例えば、ビデオストリームのそれぞれのフレームがキャプチャされると)即時に送信されるビデオストリームを指してもよい。
【0085】
メタデータは、補足コンテンツ及び補足コンテンツを含むようにライブ着信ビデオストリームを修正するための命令を含んでもよく、又はライブ着信ビデオストリーム、並びに補足コンテンツを取得するための命令及び補足コンテンツ自体を含まずに補足コンテンツを含むようにライブ着信ビデオストリームを修正するための命令を含んでもよい。
【0086】
ブロック904において、受信デバイス(例えば、受信デバイスのプロセッサ)は、メタデータを使用してライブ着信ビデオストリーム223を補足コンテンツ229を含むように修正する。ライブ着信ビデオストリームを修正することは、ライブ着信ビデオストリームで受信した命令に基づいて、ライブ着信ビデオストリームで受信した補足コンテンツをライブ着信ビデオストリームに追加することを含み得る。ライブ着信ビデオストリームを修正することはまた、又は代替的に、メタデータ内の識別子を使用して、ローカルストレージ又はクラウドベースのストレージから補足コンテンツを取得することと、取得した補足コンテンツを、メタデータ内において特定される、ライブ着信ビデオストリームの画像フレームの1つ以上の一部分(例えば、画素位置)に適用することを含んでもよい。
【0087】
ライブ着信ビデオストリーム223は、最小遅延で表示するためにキャプチャされ送信されるライブ着信ビデオストリームであるため、受信デバイスは、ビデオストリームの修正が受信デバイスにおけるライブ着信ビデオストリーム223の表示に全く遅延を加えないように(又は遅延を最小化するように)、高い優先度のプロセスでライブ着信ビデオストリーム223を修正することができる。
【0088】
ブロック906において、受信デバイスは、(例えば、ビデオ会議アプリケーション内で)補足コンテンツを用いて修正されたライブ着信ビデオストリームを表示する。いくつかのシナリオでは、受信デバイスはまた、表示のために、補足コンテンツを用いて修正されたライブ着信ビデオストリームと共に、補足コンテンツオプションを提供することができる。受信デバイスはまた、補足コンテンツオプションの選択を受信し、選択に応じて、選択された補足コンテンツオプションに関連付けられた追加の補足コンテンツを用いて、修正されたライブ着信ビデオストリームを修正してもよい。補足コンテンツオプションが、補足コンテンツをリモートデバイスからの着信ビデオストリームに追加するために受信デバイスで受信されると、受信デバイスは、また、追加の補足コンテンツを表示するために命令をリモートデバイス(例えば、ライブ着信ビデオストリームを提供しているデバイス)に送信することもできる。このようにして、受信デバイスから追加されたコンテンツを、送信及び受信デバイスの両方に表示することができる。
【0089】
本明細書で説明されたユーザインタフェース(例えば、
図2、
図6、及び
図8を参照)は、
図10~
図15に示される1つ以上のユーザインタフェースの1つ以上の要素(又はその全体)を利用してもよい。例えば、
図10のユーザインタフェース1000は、ハッピーフェイス(例えば、要素1012を参照)を有する星として表される補足コンテンツモードオプション208と共に、発信ビデオストリーム221(例えば、
図10の要素1002を参照)並びにいくつかの着信ビデオストリーム223(例えば、
図10の要素1004、1006、1108及び1010を参照)を示す。別の例として、
図11のユーザインタフェース1100の要素1102は、補足コンテンツオプション222(
図11の要素1104、1106及び1108として表される)を有する発信ビデオストリームのディスプレイを表すことができる。別の例として、
図12のユーザインタフェース1200は、
図12の補足コンテンツオプション1204の選択に応じて、発信ビデオストリームに追加された補足コンテンツ229(例えば、サルの顔1202を参照)を有する発信ビデオストリーム221を示す。別の例として、
図13のユーザインタフェース1300は、発信ビデオストリーム内のユーザの顔の検出された動作に応じて、(
図13に示す向きに対して)移動する適応型補足コンテンツ(例えば、サルの顔1302を参照)を示すことができる。別の例として、
図14のユーザインタフェース1400は、補足コンテンツ229(例えば、要素1404を参照)を有する発信ビデオストリーム221(例えば、要素1402を参照)を示すビデオストリームビューのサイズの縮小を示すことができる。別の例として、
図15のユーザインタフェース1500は、補足コンテンツ(例えば、リモートユーザの顔を覆うロボットの頭部1504)を含む着信ビデオストリーム(例えば、要素1502を参照)を示すことができる。本開示の一態様では、
図10~
図15に列挙される要素は、電子デバイス115、電子デバイス110、及び/又はサーバ120のうちの1つ以上によって提示されてもよい。
図10~
図15は、サンプル順序での様々なステップ、動作、又は工程の要素を提示し、提示された特定の順序又は階層に限定されることを意味しなくてもよい。
【0090】
図16は、主題の技術の1つ以上の実装形態を実施することができる電子システム1600を示す。電子システム1600は、
図1に示す電子デバイス110、電子デバイス115、及び/若しくはサーバ120とすることができ、並びに/又はそれらの一部とすることができる。電子システム1600は、各種コンピュータ可読媒体及び、他の各種コンピュータ可読媒体用のインタフェースを含むことができる。電子システム1600は、バス1608、1つ以上の処理ユニット1612、システムメモリ1604(及び/若しくはバッファ)、ROM1610、永久記憶デバイス1602、入力デバイスインタフェース1614、出力デバイスインタフェース1606、並びに1つ以上のネットワークインタフェース1616、又はそれらのサブセット及び変形を含む。
【0091】
バス1608は、電子システム1600の多数の内部デバイスを通信可能に接続する全てのシステム、周辺機器、及びチップセットバスを集合的に表す。1つ以上の実装形態では、バス1608は、1つ以上の処理ユニット1612を、ROM1610、システムメモリ1604、及び永久記憶デバイス1602と通信可能に接続する。これらの様々なメモリユニットから、1つ以上の処理ユニット1612は、本願の開示のプロセスを実行するために、実行すべき命令及び処理すべきデータを取り出す。1つ以上の処理ユニット1612を、異なる実装形態においては、シングルプロセッサ又はマルチコアプロセッサとすることができる。
【0092】
ROM1610は、1つ以上の処理ユニット1612及び電子システム1600の他のモジュールによって必要とされる静的データ及び命令を記憶する。一方、永久記憶デバイス1602は、読み出し及び書き込みメモリデバイスであってもよい。永久記憶デバイス1602は、たとえ電子システム1600がオフであっても、命令及びデータを記憶する不揮発性メモリユニットであってもよい。1つ以上の実装形態では、永久記憶デバイス1602として、大容量記憶デバイス(磁気ディスク又は光ディスク、及びそれに対応するディスクドライブなど)を使用することができる。
【0093】
1つ以上の実装形態では、永久記憶デバイス1602として、脱着可能記憶デバイス(フロッピーディスク、フラッシュドライブ、及びそれに対応するディスクドライブなど)を使用することができる。永久記憶デバイス1602と同様に、システムメモリ1604は、読み出し及び書き込みメモリデバイスであってもよい。しかしながら、永久記憶デバイス1602とは異なり、システムメモリ1604は、ランダムアクセスメモリなどの、揮発性の読み出し及び書き込みメモリであってもよい。システムメモリ1604は、実行時に1つ以上の処理ユニット1612が必要とし得る命令及びデータのいずれかを記憶してもよい。1つ以上の実装形態では、本願の開示のプロセスは、システムメモリ1604、永久記憶デバイス1602、及び/又はROM1610に記憶される。これらの様々なメモリユニットから、1つ以上の処理ユニット1612は、1つ以上の実装形態のプロセスを実行するために、実行すべき命令及び処理すべきデータを取り出す。
【0094】
バス1608は、入力デバイスインタフェース1614及び出力デバイスインタフェース1606にも接続する。入力デバイスインタフェース1614により、ユーザは、電子システム1600に対して、情報を伝送し、コマンドを選択することができる。入力デバイスインタフェース1614と共に使用され得る入力デバイスは、例えば、英数字キーボード及びポインティングデバイス(「カーソル制御デバイス」とも称される)を含むことができる。出力デバイスインタフェース1606は、例えば、電子システム1600によって生成された画像を表示することができる。出力デバイスインタフェース1606と共に使用され得る出力デバイスは、例えば、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、有機発光ダイオード(OLED)ディスプレイ、フレキシブルディスプレイ、フラットパネルディスプレイ、ソリッドステートディスプレイ、プロジェクタ、又は情報を出力するための任意の他のデバイスなどのプリンタ及び表示デバイスを含むことができる。1つ以上の実装形態は、タッチスクリーンなどの、入力及び出力デバイスの両方として機能するデバイスを含むことができる。これらの実装形態では、ユーザに提供されるフィードバックは、視覚フィードバック、聴覚フィードバック、触知フィードバックなどの任意の形態の感覚フィードバックであることができ、ユーザからの入力は、音響入力、音声入力、又は触知入力を含む任意の形態で受け取ることができる。
【0095】
最後に、
図16に示すように、バス1608はまた、1つ以上のネットワークインタフェース(単数又は複数)1616を通じて、電子システム1600を、1つ以上のネットワーク、及び/又は
図1に示す電子デバイス115などの1つ以上のネットワークノードに接続する。このようにして、電子システム1600は、コンピュータのネットワーク(LANや広域ネットワーク(「WAN」)など)、若しくはイントラネット、又はインターネットなどの複数のネットワーク中のネットワークとすることができる。電子システム1600のいずれか又は全ての構成要素は、本願の開示と併せて使用することができる。
【0096】
本開示の様々な態様によれば、メモリと、メモリに通信可能に接続され、デバイスとリモートデバイスとの間に会議セッションを確立するように構成された少なくとも1つのプロセッサと、を含むデバイスが提供され、会議セッションは、リモートデバイスから着信ビデオストリームを受信すること、又はデバイスのカメラからリモートデバイスに発信ビデオストリームを送信すること、の少なくとも1つを含む。少なくとも1つのプロセッサはまた、表示のために、補足コンテンツオプション、及び着信ビデオストリーム又は発信ビデオストリームの少なくとも1つを提供するように構成されている。少なくとも1つのプロセッサはまた、補足コンテンツオプションの選択を受信するように構成されている。少なくとも1つのプロセッサはまた、選択に応じて、選択された補足コンテンツオプションに関連付けられた補足コンテンツを用いて、着信ビデオストリーム又は発信ビデオストリームの少なくとも1つを修正するように構成されている。
【0097】
本開示の様々な態様によれば、少なくとも1つのコンピューティングデバイスによって実行されると、少なくとも1つのコンピューティングデバイスに、ライブ着信ビデオストリーム及びライブ着信ビデオストリームのための補足コンテンツに関連付けられたメタデータをリモートデバイスから受信することを含む動作を実行させる、命令を含む、非一時的コンピュータ可読媒体が提供される。ライブ着信ビデオストリームは、リモートデバイスのカメラによってキャプチャされ、キャプチャ後にリモートデバイスによって直ちに送信される画像フレームのストリームを含む。この動作はまた、補足コンテンツを含むように、メタデータを使用して、ライブ着信ビデオストリームを修正することを含む。この動作はまた、補足コンテンツを用いて修正されたライブ着信ビデオストリームを表示することを含む。
【0098】
本開示の様々な態様によれば、ローカルデバイスとリモートデバイスとの間に会議セッションを確立することを含む方法が提供され、この会議セッションは、ローカルデバイスのカメラからリモートデバイスのそれぞれへの発信ビデオストリームの送信を含む。この方法はまた、ローカルデバイスでの表示のために、補足コンテンツオプション及び発信ビデオストリームを提供することを含む。この方法はまた、補足コンテンツオプションの選択を受信することを含む。この方法はまた、選択に応じて、選択された補足コンテンツオプションに関連付けられた補足コンテンツを用いて、発信ビデオストリームを修正することを含む。
【0099】
本開示の範囲内の実装形態は、1つ以上の命令を符号化する有形のコンピュータ可読記憶媒体(又は1つ以上のタイプの、複数の有形のコンピュータ可読記憶媒体)を使用して、部分的に又は完全に実現することができる。有形のコンピュータ可読記憶媒体はまた、事実上、非一時的なものであってもよい。
【0100】
コンピュータ可読記憶媒体は、命令を実行することができる任意の処理電子機器及び/又は処理回路を含む、汎用又は専用コンピューティングデバイスによって読み取られ、書き込まれ、又は他の方法でアクセスされ得る任意の記憶媒体とすることができる。例えば、限定はしないが、コンピュータ可読媒体は、RAM、DRAM、SRAM、T-RAM、Z-RAM、及びTTRAMなどの任意の揮発性半導体メモリを含むことができる。コンピュータ可読媒体はまた、ROM、PROM、EPROM、EEPROM、NVRAM、フラッシュ、nvSRAM、FeRAM、FeTRAM、MRAM、PRAM、CBRAM、SONOS、RRAM、NRAM、レーストラックメモリ、FJG、及びミリピードメモリなどの任意の不揮発性半導体メモリを含むことができる。
【0101】
更に、コンピュータ可読記憶媒体は、光ディスク記憶装置、磁気ディスク記憶装置、磁気テープ、他の磁気記憶デバイス、又は1つ以上の命令を記憶できる任意の他の媒体などの、任意の非半導体メモリを含むことができる。1つ以上の実装形態では、有形のコンピュータ可読記憶媒体はコンピューティングデバイスに直接的に接続することができ、他の実装形態では、有形のコンピュータ可読記憶媒体は、例えば、1つ以上の有線接続、1つ以上の無線接続、又はそれらの任意の組み合わせを介して、コンピューティングデバイスに間接的に接続することができる。
【0102】
命令は直接実行可能とすることができ、又は実行可能命令を開発するために使用することができる。例えば、命令は、実行可能又は非実行可能なマシンコードとして、又は実行可能又は非実行可能なマシンコードを生成するようにコンパイルされ得る高級言語の命令として、実現することができる。更に、命令はまた、データとして実現され又はデータを含むこともできる。コンピュータ実行可能命令はまた、ルーチン、サブルーチン、プログラム、データ構造、オブジェクト、モジュール、アプリケーション、アプレット、関数などを含む任意のフォーマットで構造化することができる。当業者によって認識されるように、命令の数、構造、順序、及び構造を含むがこれに限定はされない詳細は、基本的なロジック、機能、処理、及び出力を変更することなく大幅に変えることができる。
【0103】
上記の検討は、主として、ソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサに言及しているが、1つ以上の実装形態は、ASIC又はFPGA(単数又は複数)などの、1つ以上の集積回路によって実行される。1つ以上の実装形態では、そのような集積回路は、その回路自体に記憶されている命令を実行する。
【0104】
当業者であれば、本明細書で説明される様々の例示的なブロック、モジュール、エレメント、構成要素、方法、及びアルゴリズムが、電子ハードウェア、コンピュータソフトウェア、又はそれら両方の組み合わせとして実装され得ることを理解するであろう。ハードウェアとソフトウェアのこの互換性を示すために、様々の例示的なブロック、モジュール、エレメント、構成要素、方法、及びアルゴリズムを、それらの機能性の点から一般的に上述してきた。そのような機能性がハードウェア又はソフトウェアとして実装されるかは、特定のアプリケーション及びシステム全体に課される設計上の制約に依存する。当業者であれば、特定のアプリケーション毎に様々な方法で説明した機能性を実装することができるであろう。様々な構成要素及びブロックは、主題の技術の範囲から全く逸脱することなく、異なるように(例えば、異なる順序で配置されるか、又は異なる方法で分割されて)配置されてもよい。
【0105】
開示されたプロセスにおけるブロックのいかなる特定の順序又は階層も、例示的なアプローチの一例であることが理解されよう。設計選択に基づいて、プロセス内のブロックの特定の順序又は階層は並び替えられてもよいこと、又は例示されているブロックが全て実行されてもよいことが理解される。いずれのブロックも、同時に実行されてよい。1つ以上の実装形態では、マルチタスク及び並列処理が有利であり得る。更に、上述した実装における様々なシステム構成要素の分離は、全ての実装においてそのような分離が必要とされていると理解すべきではない。記載されたプログラム構成要素及びシステムは、単一のソフトウェアプロダクトに同一化されてもよく、又は複数のソフトウェア製品にパッケージ化されてもよいことを理解すべきである。
【0106】
本出願の本明細書及びいずれかの特許請求の範囲で使用される時、用語「基地局」、「受信機」、「コンピュータ」、「サーバ」、「プロセッサ」、及び「メモリ」は全て、電子的又は他の技術的デバイスを指す。これらの用語は、人又は人のグループを除外する。本明細書の目的上、「表示する(display)」又は「表示すること(displaying)」という用語は、電子デバイス上に表示することを意味する。
【0107】
本明細書で使用する、一連の項目に先行する「少なくとも1つ」というフレーズは、項目のいずれかを分離する「及び」又は「又は」という用語と共に、リストの各要素(すなわち、各項目)ではなく、全体としてリストを修飾する。「少なくとも1つ」というフレーズは、リスト化された各項目の少なくとも1つの選択を必要とはせず、むしろ、そのフレーズは、項目のうちのいずれか1つの少なくとも1つ、及び/又は項目の任意の組み合わせの少なくとも1つ、及び/又は項目のそれぞれの少なくとも1つ、を含む意味を可能にする。例として、「A、B、及びCの少なくとも1つ」又は「A、B、又はCの少なくとも1つ」というフレーズは、それぞれが、Aのみ、Bのみ、又はCのみ、A、B、及びCの任意の組み合わせ、並びに/又は、A、B、及びCのそれぞれの少なくとも1つを指す。
【0108】
「~ように構成された(configured to)」、「~ように動作可能な(operable to)」、及び「~ようにプログラムされた(programmed to)」という述語は、対象物の特有の有形又は無形の改変を意味するものではなく、むしろ交換可能に使用されることを意図している。1つ以上の実装形態では、動作若しくは構成要素を監視及び制御するように構成されたプロセッサとは、プロセッサが、動作を監視及び制御するようにプログラムされていること、又はプロセッサが、動作を監視及び制御するように動作可能であることも意味し得る。同様に、コードを実行するように構成されたプロセッサは、コードを実行するようにプログラムされた、又はコードを実行するように動作可能なプロセッサ、として解釈することができる。
【0109】
1つの態様、その態様、別の態様、いくつかの態様、1つ以上の態様、1つの実装形態、その実装形態、別の実装形態、いくつかの実装形態、1つ以上の実装形態、1つの実施形態、その実施形態、別の実施形態、いくつかの実施形態、1つ以上の実施形態、1つの構成、その構成、別の構成、いくつかの構成、1つ以上の構成、主題の技術、開示、本開示、それらの他の変形、及び同様のフレーズは、便宜上のものであり、そのようなフレーズ(単数又は複数)に関する開示が主題の技術に不可欠であること、又はそのような開示が主題の技術の全ての構成に適用されること、の意味を含むものではない。そのようなフレーズ(単数又は複数)に関する開示は、全ての構成、又は1つ以上の構成に適用することができる。そのようなフレーズ(単数又は複数)に関する開示は、1つ以上の例を提供することができる。態様又はいくつかの態様などのフレーズは、1つ以上の態様を指すことができ、その逆も同様であり、これは他の前述のフレーズと同様に適用される。
【0110】
単語「例示的(exemplary)」は、本明細書において、「例、事例、又は実例の役割を果たすこと」を意味するために使用される。「例示的」又は「例」として本明細書で説明されたいかなる実施形態も、必ずしも他の実施形態を超えて好ましい又は有利であると解釈されるべきではない。更に、「含む」、「有する」などの用語が明細書又は特許請求の範囲で使用される限りにおいて、そのような用語は、「備える」が特許請求の範囲において移行語として使用される時に解釈されるように、「備える」というフレーズと同様の方法で包括的であることを意図する。
【0111】
当業者に知られているか又は後に知られるようになる、本開示を通じて説明される様々な態様のエレメントに対する全ての構造的及び機能的な均等物は、参照により明示的に本明細書に組み込まれ、かつ、特許請求の範囲に包含されるものと意図する。更に、本明細書で開示されたいかなるものも、そのような開示が特許請求の範囲に明白に列挙されているかどうかにかかわらず、公共に捧げられることを意図しない。いかなる特許請求の範囲のエレメントも、エレメントがフレーズ「手段(means for)」を使用して明示的に列挙するか、又は方法の請求項の場合には、エレメントがフレーズ「ステップ(step for)」を使用して列挙しない限り、米国特許法第112条第6パラグラフの規定に基づいて解釈されるべきではない。
【0112】
前述の説明は、当業者が本明細書で説明した様々な態様を実施することを可能にするために提供される。これらの態様に対する様々な変更は、当業者には容易に明らかであり、本明細書で定義される一般的な原理は、他の態様にも適用することができる。それゆえ、請求項は、本明細書に示される態様に限定されること意図されておらず、文言による請求項に合致した全範囲を認められるべきであり、単数形によるエレメントへの言及は、特に断りのない限り、「唯一の(one and only one)」を意味することを意図されておらず、むしろ、「1つ以上の(one or more)」を意味することを意図されている。特記しない限り、「いくつかの(some)」という用語は、1つ以上のものを指す。男性形(例えば、彼)の代名詞は、女性及び中性の性別(例えば、彼女及びその)を含み、並びにその逆である。もしあれば、見出し及び小見出しは、便宜上のみに使用され、本願の開示を限定するものではない。