(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-05
(54)【発明の名称】記録セッション中のアプリケーションのユーザ・インターフェイスの変更
(51)【国際特許分類】
G06F 3/04845 20220101AFI20231128BHJP
H04N 21/234 20110101ALI20231128BHJP
H04N 21/854 20110101ALI20231128BHJP
【FI】
G06F3/04845
H04N21/234
H04N21/854
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023530246
(86)(22)【出願日】2021-10-25
(85)【翻訳文提出日】2023-05-18
(86)【国際出願番号】 IB2021059811
(87)【国際公開番号】W WO2022106936
(87)【国際公開日】2022-05-27
(32)【優先日】2020-11-23
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】シュナイダー、スコット
(72)【発明者】
【氏名】ハーディー、クリストファー
(72)【発明者】
【氏名】ネスビット、パメラ
(72)【発明者】
【氏名】ジョロフ、スティーブン
【テーマコード(参考)】
5C164
5E555
【Fターム(参考)】
5C164MC01P
5C164SB01P
5E555AA25
5E555AA26
5E555BA02
5E555BA04
5E555BB02
5E555BB04
5E555BC04
5E555BD08
5E555CB76
5E555DA21
5E555DB25
5E555DB32
5E555DC13
5E555DC19
5E555DC25
5E555DC33
5E555DC58
5E555DC61
5E555DC85
5E555DD07
5E555EA19
5E555FA00
(57)【要約】
視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するための、コンピュータ実施方法、システム、およびコンピュータ・プログラム製品。アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスが表示される。アプリケーションのユーザ・インターフェイスの記録の開始を検出すると、ユーザ・インターフェイス要素のサイズを調節すること、ユーザ・インターフェイスのオーディオ要素を調節することなどによって、視聴者が視聴したい情報が記録されることを確実にするように、アプリケーションのユーザ・インターフェイスが変更される。そのような変更の後に、アプリケーションの変更されたユーザ・インターフェイスは記録されて、ビデオ・ライブ・ストリーミング・サービスを介して視聴者にブロードキャストされる。このようにして、視聴者は、以前には、そのような変更の前にユーザ・インターフェイスの記録中に失われていたかもしれない、視聴したい情報を視聴することができる。
【特許請求の範囲】
【請求項1】
視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するためのコンピュータ実施方法であって、
前記アプリケーションの前記ユーザ・インターフェイスを表示すること、
前記アプリケーションの前記ユーザ・インターフェイスの記録の開始を検出すること、および
前記アプリケーションの前記ユーザ・インターフェイスの記録の前記開始を検出することに応答して、前記アプリケーションの前記ユーザ・インターフェイスを変更すること
を含み、
前記アプリケーションの前記ユーザ・インターフェイスの前記変更は、新規のコンテンツを表示すること、前記ユーザ・インターフェイスの要素のサイズを調節すること、前記ユーザ・インターフェイスの要素の位置を調節すること、前記ユーザ・インターフェイスの要素を表示する持続時間を調節すること、および前記ユーザ・インターフェイスのオーディオ要素を調節すること、のうちの1つまたは複数を含む、方法。
【請求項2】
前記アプリケーションの前記変更されたユーザ・インターフェイスを記録すること
をさらに含む、請求項1に記載の方法。
【請求項3】
前記アプリケーションの前記記録がされた変更されたユーザ・インターフェイスをネットワーク上で前記視聴者にブロードキャストすること
をさらに含む、請求項2に記載の方法。
【請求項4】
前記記録および前記ブロードキャストは同時に発生する、請求項3に記載の方法。
【請求項5】
前記ネットワーク上で前記視聴者への前記アプリケーションの前記記録がされた変更されたユーザ・インターフェイスの前記ブロードキャストの完了に応答して、前記変更なしで前記アプリケーションの前記ユーザ・インターフェイスを表示すること
をさらに含む、請求項3に記載の方法。
【請求項6】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、機械学習を使用して、前記視聴者が視聴したい情報を学習することに基づいている、請求項1に記載の方法。
【請求項7】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、前記ユーザ・インターフェイスにオーバレイ情報を追加することを含む、請求項1に記載の方法。
【請求項8】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、オーディオ・コンポーネントを追加すること、または削除することを含む、請求項1に記載の方法。
【請求項9】
前記アプリケーションが、ゲーミング・アプリケーションを含む、請求項1に記載の方法。
【請求項10】
視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するためのコンピュータ・プログラム製品であって、
それに組み込まれたプログラム・コードを有する、1つまたは複数のコンピュータ可読記憶媒体を含み、前記プログラム・コードは、
前記アプリケーションの前記ユーザ・インターフェイスを表示するためのプログラミング命令、
前記アプリケーションの前記ユーザ・インターフェイスの記録の開始を検出するためのプログラミング命令、および
前記アプリケーションの前記ユーザ・インターフェイスの記録の前記開始を検出することに応答して前記アプリケーションの前記ユーザ・インターフェイスを変更するプログラミング命令を含み、
前記アプリケーションの前記ユーザ・インターフェイスの前記変更は、新規のコンテンツを表示すること、前記ユーザ・インターフェイスの要素のサイズを調節すること、前記ユーザ・インターフェイスの要素の位置を調節すること、前記ユーザ・インターフェイスの要素を表示する持続時間を調節すること、および前記ユーザ・インターフェイスのオーディオ要素を調節すること、のうちの1つまたは複数を含む、コンピュータ・プログラム製品。
【請求項11】
前記プログラム・コードは、
前記アプリケーションの前記変更されたユーザ・インターフェイスを記録するためのプログラミング命令
をさらに含む、請求項10に記載のコンピュータ・プログラム製品。
【請求項12】
前記プログラム・コードが、
前記アプリケーションの前記記録がされた変更されたユーザ・インターフェイスをネットワーク上で前記視聴者にブロードキャストするためのプログラミング命令
をさらに含む、請求項11に記載のコンピュータ・プログラム製品。
【請求項13】
前記記録および前記ブロードキャストは同時に発生する、請求項12に記載のコンピュータ・プログラム製品。
【請求項14】
前記プログラム・コードが、
前記ネットワーク上で前記視聴者への前記アプリケーションの前記記録がされた変更されたユーザ・インターフェイスの前記ブロードキャストの完了に応答して、前記変更なしで前記アプリケーションの前記ユーザ・インターフェイスを表示するためのプログラミング命令
をさらに含む、請求項12に記載のコンピュータ・プログラム製品。
【請求項15】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、機械学習を使用して、前記視聴者が視聴したい情報を学習することに基づいている、請求項10に記載のコンピュータ・プログラム製品。
【請求項16】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、前記ユーザ・インターフェイスにオーバレイ情報を追加することを含む、請求項10に記載のコンピュータ・プログラム製品。
【請求項17】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、オーディオ・コンポーネントを追加すること、または削除することを含む、請求項10に記載のコンピュータ・プログラム製品。
【請求項18】
前記アプリケーションが、ゲーミング・アプリケーションを含む、請求項10に記載のコンピュータ・プログラム製品。
【請求項19】
視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するためのコンピュータ・プログラムを記憶するためのメモリ、および
前記メモリに接続されたプロセッサを備えるシステムであって、前記プロセッサは、
前記アプリケーションの前記ユーザ・インターフェイスを表示すること、
前記アプリケーションの前記ユーザ・インターフェイスの記録の開始を検出すること、および
前記アプリケーションの前記ユーザ・インターフェイスの記録の前記開始を検出することに応答して、前記アプリケーションの前記ユーザ・インターフェイスを変更すること
を含む前記コンピュータ・プログラムのプログラム命令を実行するように構成されており、
前記アプリケーションの前記ユーザ・インターフェイスの前記変更は、新規のコンテンツを表示すること、前記ユーザ・インターフェイスの要素のサイズを調節すること、前記ユーザ・インターフェイスの要素の位置を調節すること、前記ユーザ・インターフェイスの要素を表示する持続時間を調節すること、および前記ユーザ・インターフェイスのオーディオ要素を調節すること、のうちの1つまたは複数を含む、システム。
【請求項20】
前記コンピュータ・プログラムの前記プログラム命令が、
前記アプリケーションの前記変更されたユーザ・インターフェイスを記録すること
をさらに含む、請求項19に記載のシステム。
【請求項21】
前記コンピュータ・プログラムの前記プログラム命令が、
前記アプリケーションの前記記録がされた変更されたユーザ・インターフェイスをネットワーク上で前記視聴者にブロードキャストすること
をさらに含む、請求項20に記載のシステム。
【請求項22】
前記記録および前記ブロードキャストは同時に発生する、請求項21に記載のシステム。
【請求項23】
前記コンピュータ・プログラムの前記プログラム命令が、
前記ネットワーク上で前記視聴者への前記アプリケーションの前記記録がされた変更されたユーザ・インターフェイスの前記ブロードキャストの完了に応答して、前記変更なしで前記アプリケーションの前記ユーザ・インターフェイスを表示すること
をさらに含む、請求項21に記載のシステム。
【請求項24】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、機械学習を使用して、前記視聴者が視聴したい情報を学習することに基づいている、請求項19に記載のシステム。
【請求項25】
前記アプリケーションの前記ユーザ・インターフェイスの前記変更が、前記ユーザ・インターフェイスにオーバレイ情報を追加することを含む、請求項19に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般的には、ゲーミング・レコーダなどのスクリーン・レコーダに関し、より詳細には、コンテンツの視聴者が、視聴者が視聴したい、より多くの情報を視聴できるように、ゲーミング・アプリケーションなどのアプリケーションのユーザ・インターフェイスを調節することに関する。
【背景技術】
【0002】
Twitch(R)のようなビデオ・ライブ・ストリーミング・サービスは、リアルタイムで、同時に記録およびブロードキャストされるオンライン・ストリーミング・メディアを提供する。例えば、そのようなビデオ・ライブ・ストリーミング・サービスは、eスポーツ(電子スポーツ)競技のブロードキャストを含む、ビデオ・ゲーム・ライブ・ストリーミングを提供することができる。同時に記録およびブロードキャストされることのあるその他のタイプのコンテンツとしては、音楽ブロードキャスト、クリエイティブ・コンテンツ、および「現実世界の(in real life)」ストリームが挙げられる。
【0003】
「オンライン・ストリーマ」と呼ばれる個人は、そのようなビデオ・ライブ・ストリーミング・サービスを通じて、リアルタイムを含むオンラインで自分自身をブロードキャストする。例えば、個人は、そのようなビデオ・ライブ・ストリーミング・サービスを通じて自分のゲーミング・セッションをブロードキャストすることができる。
【0004】
通常、オンライン・ストリーマは、ゲーミング・レコーダなどのスクリーン・レコーダを使用して、ユーザのゲーミング・セッションなどのコンピュータ・スクリーン出力をデジタル記録する。ゲーミング・レコーダの例としては、Filmora(R)Scrn、OBS Studio、VLC(R)、xSplit、Nvidia(R)ShadowPlay(R)、Frapsなどが挙げられる。このようなゲーミング・レコーダは、ユーザが、システム・オーディオ、ビデオ、マイクロフォン、およびウェブカメラを同時にキャプチャすることを可能にする。さらに、このようなゲーミング・レコーダは、ユーザが異なるポイントにマーカーを追加したり、ビデオ速度を変えたり、フェード・イン/フェード・アウトを追加したりすることを可能にする。そのようなゲーミング・レコーダは、ユーザが、スクリーン全体、特定の領域、またはターゲット・ウィンドウをターゲットにするなど、記録設定をカスタマイズすることを可能にする。
【0005】
しかしながら、そのようなレコーダは、視聴者が視聴したい全ての情報を記録できるとは限らない。例えば、視聴者は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスがアイコンの下にアバターに関するテキスト・コンテンツを表示するという事実のために、レコーダによって記録されているものよりも、アバターに関するより多くのテキスト・コンテンツを見ることを望むことがある。別の例では、視聴者は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスにおいて、スクリーンの境界に沿って小さなフォント・サイズで現在表示されており、そのために視聴者がそれを読めなくなっているストリーム・チャットを見ることを望むことがある。さらに別の例では、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス要素は、スクリーンの側部に沿って、ゲームの対戦相手に関する情報(例えば、「あなたの対戦相手のデックには26枚のカードがある」)を描画することがある。しかしながら、視聴者は、このユーザ・インターフェイス要素をスクリーンの中央に描画したい場合がある。別の例では、アプリケーション(例えば、ゲーミング・アプリケーション)を記録するユーザによって設定された音量は、視聴者が望むよりも静かであり、したがって、視聴者は、サウンドを介して指示される、ゲーム内のアバターによるいくつかの重要な進展を見逃す可能性がある。
【0006】
その結果、ビデオ・ライブ・ストリーミング・サービスの視聴者が視聴したい情報が、記録セッション中に失われる可能性がある。
【0007】
残念ながら、現在、ゲーミング・レコーダなどのスクリーン・レコーダが、記録セッション中にそのような欠落した情報を記録できるようにする手段はない。
【発明の概要】
【0008】
本発明の一実施形態では、視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するためのコンピュータ実施方法は、アプリケーションのユーザ・インターフェイスを表示することを含む。この方法は、アプリケーションのユーザ・インターフェイスの記録の開始を検出することをさらに含む。この方法は、アプリケーションのユーザ・インターフェイスの記録の開始を検出することに応答して、アプリケーションのユーザ・インターフェイスを変更することをさらに含み、アプリケーションのユーザ・インターフェイスの変更は、新規のコンテンツを表示すること、ユーザ・インターフェイスの要素のサイズを調節すること、ユーザ・インターフェイスの要素の位置を調節すること、ユーザ・インターフェイスの要素を表示する持続時間を調節すること、およびユーザ・インターフェイスのオーディオ要素を調節すること、のうちの1つまたは複数を含む。
【0009】
本発明の別の実施形態では、視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するためのコンピュータ・プログラム製品であって、このコンピュータ・プログラム製品は、それに組み込まれたプログラム・コードを有する、1つまたは複数のコンピュータ可読記憶媒体を含み、プログラム・コードは、アプリケーションのユーザ・インターフェイスを表示するためのプログラミング命令を含む。プログラム・コードは、アプリケーションのユーザ・インターフェイスの記録の開始を検出するためのプログラミング命令をさらに含む。プログラム・コードは、アプリケーションのユーザ・インターフェイスの記録の開始を検出することに応答して、アプリケーションのユーザ・インターフェイスを変更するためのプログラミング命令をさらに含み、アプリケーションのユーザ・インターフェイスの変更は、新規のコンテンツを表示すること、ユーザ・インターフェイスの要素のサイズを調節すること、ユーザ・インターフェイスの要素の位置を調節すること、ユーザ・インターフェイスの要素を表示する持続時間を調節すること、およびユーザ・インターフェイスのオーディオ要素を調節すること、のうちの1つまたは複数を含む。
【0010】
本発明のさらなる実施形態では、システムは、視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するためのコンピュータ・プログラムを記憶するためのメモリと、メモリに接続されるプロセッサとを備え、プロセッサは、アプリケーションのユーザ・インターフェイスを表示することを含む、コンピュータ・プログラムのプログラム命令を実行するように構成されている。コンピュータ・プログラムのプログラム命令は、アプリケーションのユーザ・インターフェイスの記録の開始を検出することをさらに含む。コンピュータ・プログラムのプログラム命令は、アプリケーションのユーザ・インターフェイスの記録の開始を検出することに応答して、アプリケーションのユーザ・インターフェイスを変更することをさらに含み、アプリケーションのユーザ・インターフェイスの変更は、新規のコンテンツを表示すること、ユーザ・インターフェイスの要素のサイズを調節すること、ユーザ・インターフェイスの要素の位置を調節すること、ユーザ・インターフェイスの要素を表示する持続時間を調節すること、およびユーザ・インターフェイスのオーディオ要素を調節すること、のうちの1つまたは複数を含む。
【0011】
このようにして、本発明は、ライブ・スクリーニング(例えば、ネットワーク上で同時に記録およびブロードキャストされるゲーミング・アプリケーションの視聴)の視聴者が、アプリケーションのユーザ・インターフェイスの変更なくしては以前には視聴不可であった、視聴者が視聴したい情報を視聴することを可能にする。
【0012】
例えば、アプリケーションのユーザ・インターフェイスの記録の開始を検出すると、例えば、新規のコンテンツを表示すること、ユーザ・インターフェイスの要素のサイズを調節すること、ユーザ・インターフェイスの要素の位置を調節すること、ユーザ・インターフェイスの要素を表示する持続時間を調節すること、ユーザ・インターフェイスのオーディオ要素を調節すること、ユーザ・インターフェイスにオーバレイ情報を追加すること、オーディオ・コンポーネントを追加または削除すること、トランジション(ユーザ・インターフェイスの移動要素)を追加、削除または改変することなどによって、視聴者が視聴したい情報が記録されることを確実にするように、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスが変更される。視聴者が視聴したい情報が記録されることを確実にするためのそのような変更は、機械学習を用いて決定してもよい。このような変更の後、アプリケーションの変更されたユーザ・インターフェイスが記録され、ビデオ・ライブ・ストリーミング・サービスを介して視聴者にブロードキャストされる。このようにして、視聴者は、以前には、そのような変更の前のユーザ・インターフェイスの記録中に失われていたかもしれない、視聴したい情報を視聴することができる。
【0013】
上記では、以下に続く本発明の詳細な説明がよりよく理解されるようにするために、本発明の1つまたは複数の実施形態の特徴および技術的利点を一般的に概説した。本発明の特許請求の範囲の主題を形成し得る、本発明のさらなる特徴および利点を、以下に記載する。
【0014】
以下の詳細な説明が以下の図面と併せて考慮されるときに、本発明のよりよい理解を得ることができる。
【図面の簡単な説明】
【0015】
【
図1】本発明の実施形態による、本発明の原理を実施するための通信システムを示す図である。
【
図2】本発明を実施するためのハードウェア環境を表す、コンピューティング・デバイスのハードウェア構成の本発明の実施形態を示す図である。
【
図3】本発明を実施するためのハードウェア環境を表すユーザ・インターフェイス・モディファイアのハードウェア構成の本発明の実施形態を示す図である。
【
図4】本発明の実施形態により、視聴者が視聴したい情報が記録されることを確実にするために、アプリケーションのユーザ・インターフェイスを変更する方法のフローチャートである。
【
図5】本発明の実施形態による、ユーザ・インターフェイス要素を変更する前の、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスを示す図である。
【
図6】本発明の実施形態に従って、そのユーザ・インターフェイス要素を変更した後の、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスの例を示す図である。
【
図7】本発明の実施形態に従って、そのユーザ・インターフェイス要素を変更した後の、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスのさらなる例を示す図である。
【発明を実施するための形態】
【0016】
本発明のいくつかの実施形態では、本発明は、視聴者がより視聴したい、アプリケーションのユーザ・インターフェイスにおける情報を記録するためのコンピュータ実施方法、システム、およびコンピュータ・プログラム製品を含む。本発明の一実施形態では、アプリケーション(例えば、ゲーミング・アプリケーション)のためのユーザ・インターフェイスが表示される。アプリケーションのユーザ・インターフェイスの記録の開始を検出すると、例えば、新規のコンテンツを表示すること、ユーザ・インターフェイスの要素のサイズを調節すること、ユーザ・インターフェイスの要素の位置を調節すること、ユーザ・インターフェイスの要素を表示する持続時間を調節すること、ユーザ・インターフェイスのオーディオ要素を調節すること、ユーザ・インターフェイスにオーバレイ情報を追加すること、オーディオ・コンポーネントを追加または削除すること、トランジション(ユーザ・インターフェイスの移動要素)を追加、削除または改変することなどによって、視聴者が視聴したい情報が記録されることを確実にするように、アプリケーションのユーザ・インターフェイスが変更される。このような変更の後に、アプリケーションの変更されたユーザ・インターフェイスは記録されて、ビデオ・ライブ・ストリーミング・サービスを介して視聴者にブロードキャストされる。このようにして、視聴者は、以前には、そのような変更の前にユーザ・インターフェイスの記録中に失われていたかもしれない、視聴したい情報を視聴することができる。
【0017】
以下の説明では、本発明の完全な理解を提供するために多数の具体的な詳細が記載されている。しかしながら、本発明がそのような具体的な詳細なしでも実施され得ることは当業者には明らかであろう。他の例では、不必要な詳細で本発明を分かり難くしないために、周知の回路がブロック図形式で示されている。ほとんどの場合、タイミング要件を考慮する詳細などは、そのような詳細が本発明の完全な理解を得るために必要ではなく、関連技術分野における通常の当業者のスキルの範囲内である限り、省略されている。
【0018】
次に図を詳細に参照すると、
図1は、本発明の実施形態による本発明の原理を実施するための通信システム100を示す。通信システム100は、ネットワーク103を介してビデオ・ライブ・ストリーミング・サービス102に接続されたコンテンツ・クリエータ用のコンピューティング・デバイス101(「コンテンツ・クリエータのコンピューティング・デバイス」として識別される)を含む。本明細書で使用される場合に、「コンテンツ・クリエータ」とは、ビデオ・ライブ・ストリーミング・サービス102を介して他のユーザ(「視聴者」と呼ばれる)にストリーミングされるコンテンツを記録するユーザを指す。コンピューティング・デバイス101およびコンピューティング・デバイス101のユーザ(「コンテンツ・クリエータ」)の両方が、要素番号101で識別され得ることに留意されたい。
【0019】
ビデオ・ライブ・ストリーミング・サービス(例えば、Twitch(R))102は、リアルタイムで同時に記録およびブロードキャストされるオンライン・ストリーミング・メディアを提供するように構成される。例えば、ビデオ・ライブ・ストリーミング・サービス102は、eスポーツ(電子スポーツ)競技のブロードキャストを含むビデオ・ゲーム・ライブ・ストリーミングを提供する。同時に記録およびブロードキャストされる可能性のある他の種類のコンテンツとしては、音楽ブロードキャスト、クリエイティブ・コンテンツ、および「実生活の」ストリームが挙げられる。
【0020】
そのようなコンテンツは、ネットワーク103を経由してビデオ・ライブ・ストリーミング・サービス102に接続されたコンピューティング・デバイス104A~104C(
図1においてそれぞれ「視聴者Aのコンピューティング・デバイス」、「視聴者Bのコンピューティング・デバイス」、および「視聴者Cのコンピューティング・デバイス」として識別される)などの視聴者に、ビデオ・ライブ・ストリーミング・サービス102によってブロードキャストすることができる。コンピューティング・デバイス104A~104Cは、総称的に、または個別に、それぞれコンピューティング・デバイス(複数または単数)104と呼んでもよい。本明細書で使用される場合に、「視聴者」とは、コンテンツ・クリエータ101によってブロードキャストされたコンテンツを視聴するユーザを指す。コンピューティング・デバイス104、およびコンピューティング・デバイス104のユーザ(「視聴者」)の両方が、要素番号104で識別され得ることに留意されたい。
【0021】
コンピューティング・デバイス101、104は、ネットワーク103に接続し、その結果、他のコンピューティング・デバイス101、104およびビデオ・ライブ・ストリーミング・サービス102と通信する能力を備えて構成された任意のタイプのコンピューティング・デバイス(例えば、ポータブル・コンピューティング・ユニット、パーソナル・デジタル・アシスタンツ(PDA)、スマートフォン、ラップトップ・コンピュータ、携帯電話、ナビゲーション・デバイス、ゲーム・コンソール、デスクトップ・コンピュータ・システム、ワークステーション、インターネット機器など)であってもよい。
【0022】
コンピューティング・デバイス101、104のハードウェア構成の説明が、
図2に関連してさらに以下に提供される。
【0023】
再び
図1を参照すると、ネットワーク103は、例えば、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、ワイヤレス・ワイド・エリア・ネットワーク、回線交換電話網、GSM(Global System for Mobile Communications)ネットワーク、ワイヤレス・アプリケーション・プロトコル(WAP)・ネットワーク、WiFiネットワーク、IEEE802.11標準ネットワーク、それらの様々な組合せなどであってもよい。簡潔にするためにここで説明を省略する他のネットワークも、本発明の範囲から逸脱することなく、
図1のシステム100と併せて使用することもできる。
【0024】
上記で考察したように、コンテンツ・クリエータ101は、ネットワーク103上でストリーミングされて視聴者104によって視聴されるコンテンツを作成することができる。そのようなコンテンツは、
図1に示されるようなコンピューティング・デバイス101のアプリケーション105(例えば、ゲーミング・アプリケーション)からのゲーミング・コンテンツを含んでもよい。そのようなアプリケーションは、ゲーミング・アプリケーションであるアプリケーション105の例において、アプリケーションのゲームをプレイするなど、アプリケーション105と対話するために、コンテンツ・クリエータ101にユーザ・インターフェイスを表示することができる。ゲーミング・アプリケーションであるアプリケーション105の例では、ゲーミング・アプリケーション105のゲームをプレイしている間のコンテンツ・クリエータ101の動きは、ゲーミング・レコーダなどのコンピューティング・デバイス101のスクリーン・レコーダ106を利用することによって記録して、ビデオ・ライブ・ストリーミング・サービス102を介して視聴者104にブロードキャストしてもよい。
【0025】
ゲーミング・レコーダの例としては、Filmora(R)Scrn、OBS Studio、VLC(R)、xSplit、Nvidia(R)ShadowPlay(R)、Frapsなどが挙げられる。このようなゲーミング・レコーダは、ユーザがシステム・オーディオ、ビデオ、マイクロフォン、およびウェブカメラを同時にキャプチャすることを可能にする。さらに、このようなゲーミング・レコーダは、ユーザが異なるポイントにマーカーを追加したり、ビデオ速度を変えたり、フェード・イン/フェード・アウトを追加したりすることを可能にする。そのようなゲーミング・レコーダは、ユーザが、スクリーン全体、特定の領域、またはターゲット・ウィンドウをターゲットにするなど、記録設定をカスタマイズすることを可能にする。
【0026】
しかしながら、「背景」セクションで考察したように、そのようなレコーダは、視聴者が視聴したい全ての情報を記録できるとは限らない。例えば、視聴者は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスがアバターに関するテキスト・コンテンツをアイコンの下に表示するという事実のために、レコーダによって記録されているものよりも、アバターに関するより多くのテキスト・コンテンツを見ることを望むことがある。別の例では、視聴者は、アプリケーション(例えば、ゲームアプリケーション)のユーザ・インターフェイスにおいて、スクリーンの境界に沿って小さなフォント・サイズで現在表示されており、そのために視聴者がそれを読めなくなっているストリーム・チャットを見ることを望むことがある。さらなる例では、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス要素は、スクリーンの側部に沿って、ゲームの対戦相手に関する情報(例えば、「あなたの対戦相手のデックには26枚のカードがある」)を描画することがある。しかしながら、視聴者は、このユーザ・インターフェイス要素をスクリーンの中央に描画したい場合がある。別の例では、アプリケーション(例えば、ゲーミング・アプリケーション)を記録するユーザによって設定された音量は、視聴者が望むよりも静かであり、したがって、視聴者は、サウンドを介して指示される、ゲーム内のアバターによるいくつかの重要な進展を見逃す可能性がある。
【0027】
その結果、ビデオ・ライブ・ストリーミング・サービスの視聴者が視聴したい情報が、記録セッション中に失われる可能性がある。
【0028】
残念ながら、現在、ゲーミング・レコーダなどのスクリーン・レコーダが、記録セッション中にそのような欠落した情報を記録できるようにする手段はない。
【0029】
一実施形態では、ユーザ・インターフェイス(UI)・モディファイア107が、ゲーミング・アプリケーションなどのアプリケーション105に命令して、ビデオ・ライブ・ストリーミング・サービス102を介して視聴者104にそれがブロードキャストされるときに、スクリーン・レコーダ106によってアプリケーション105のユーザ・インターフェイスの記録中に、視聴者104に視聴されるべき所望の情報が、アプリケーション105のユーザ・インターフェイス上に明確に表示される(および聞こえる)ことを可能にするように、コンテンツ・クリエータ101に提示されるユーザ・インターフェイスを変更することによって、スクリーン・レコーダ106は、視聴者104などの視聴者が視聴したい、欠落した情報などを、記録することができる。このようにして、視聴者104は、以前には、アプリケーション105のユーザ・インターフェイスに対するそのような変更の前のスクリーン・レコーダ106によるアプリケーション105のユーザ・インターフェイスの記録中に失われていたかもしれない、所望の情報を視聴することができるようになる。
【0030】
一実施形態では、UIモディファイア107は、ネットワーク103を介して、コンピューティング・デバイス101、104およびビデオ・ライブ・ストリーミング・サービス102などの、通信システム100のコンポーネントに接続される。
【0031】
一実施形態では、UIモディファイア107は、機械学習を使用して視聴者104が所望の情報を視聴することを確実にするために行われる、アプリケーション105のユーザ・インターフェイスに対する変更のタイプを決定する。例えば、アプリケーション105のユーザ・インターフェイスは、新規のコンテンツを表示すること、ユーザ・インターフェイス要素のサイズを調節すること、ユーザ・インターフェイス要素の位置を調節すること、ユーザ・インターフェイス要素が表示される持続時間を調節すること、ユーザ・インターフェイスのオーディオ要素を調節すること(例えば、音量を調節すること)、ユーザ・インターフェイスにオーバレイ情報を追加すること、オーディオ・コンポーネントの追加または削除、トランジション(ユーザ・インターフェイスの移動要素)の追加、削除、改変などによって変更してもよい。例えば、UIモディファイア107は、例えば、描かれた全てのユーザ・インターフェイス要素について、または特定のタイプのユーザ・インターフェイス要素(例えば、テキストを有するユーザ・インターフェイス要素)についてのみ、ユーザ・インターフェイス要素が表示される時間を増減することによって、アプリケーション105のユーザ・インターフェイスを変更することを決定してもよい。これらは例示的な変更であり、本発明の原理は、範囲においてそのような例に限定されるべきではないことに留意されたい。代わりに、本発明の原理は、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にする、アプリケーション105のユーザ・インターフェイスに対する任意の変更を含むことである。当業者であれば、本発明の原理をそのような実装形態に適用することができるであろう。また、本発明の原理をこのような実装形態に適用する実施形態は、本発明の範囲内に含まれることになる。
【0032】
一実施形態では、UIモディファイア107は、機械学習を使用して、ビデオ・ライブ・ストリーミング・サービス102を介したコンテンツ・クリエータ101による記録されたゲーミング・セッションなどの、記録されたブロードキャストを視聴する視聴者104の様式的(stylistic)、視覚的および聴覚的な選好を、調査を介して質問するか、またはフィードバックを要求することによって調べる。例えば、調査では次のような質問をしてもよい。「スクリーン上の文字を読むのはどれくらい難しいですか?」、「スクリーン上の情報の構成についてどう思いますか?」、「アバターのテキスト・コンテンツを表示することは重要ですか?」、「ストリーム・チャットを見ることは重要ですか?」、「ストリーム・チャットの位置についてのあなたの好みはどれですか?」、「テキスト・コンテンツのフォント・サイズのサイズについてのあなたの好みはどれですか?」、「ゲームの対戦相手についての情報を見ることは重要ですか?」、「録音されたオーディオは通常、あなたにとって静かすぎますか?」このような例示的な調査は、QuestionPro(R)によって視聴者104に対して行うことができる。そのような調査情報の収集は、以下でさらに考察するように、機械学習アルゴリズム(例えば、教師あり学習)に正確なトレーニング・データを提供して、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス要素を適切に変更するための正確な数学的モデルを構築するために、専門家によって収集されて、使用されてもよい。
【0033】
一実施形態では、UIモディファイア107は、機械学習アルゴリズム(例えば、教師あり学習)を使用して、アバターについてのテキストをアバターから一定の距離に特定のフォントで表示すること、またはスクリーンの側部に沿ってゲーム対戦相手についての情報を表示することなどの、記録されたビデオ・セッションの視聴者104によって好まれるユーザ・インターフェイス特徴からなる、サンプル・データに基づいて数学的モデルを構築する。このようなユーザ・インターフェイス特徴は、専門家によって取得および集計され、専門家は、そのような情報を利用してサンプル・データを開発する。このようなデータ・セットは、本明細書では「トレーニング・データ」と呼ばれ、タスクを実行するように明示的にプログラムすることなく予測または決定を行うために、機械学習アルゴリズムによって使用される。このようなトレーニング・セットは、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするように、記録されているアプリケーションのユーザ・インターフェイスを変更する際に、専門家によって提供される。このような教師あり学習アルゴリズムの例としては、ニアレスト・ネイバ、ナイーブ・ベイズ(Naive Bayes)、決定木、線形回帰、サポート・ベクター・マシン、ニューラル・ネットワークが挙げられる。
【0034】
一実施形態では、機械学習モデルは、トレーニング・セットに基づいて、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするように、記録中のアプリケーションのユーザ・インターフェイスに対する変更を予測するようにトレーニングされた、分類モデルに対応する。
【0035】
一実施形態では、UIモディファイア107は、視聴者104のプロフィールを利用して、ビデオ・ライブ・ストリーミング・サービス102を介して視聴者104にブロードキャストされるアプリケーション105の記録中に、アプリケーション105のユーザ・インターフェイスにどのような変更を加える必要があるかを決定する。このようなプロファイルには、アバターやテキスト・コンテンツなどの様々なユーザ・インターフェイス要素のサイズと位置、トランジション(ユーザ・インターフェイス内の移動アイテムの動作)、視覚要素が表示されるべき持続時間、オーバレイ情報、表示されるコンテンツ、音量などに関する、ユーザ選好を含めてもよい。これらのプロファイルから抽出されたこのようなユーザ選好は、ビデオ・ライブ・ストリーミング・サービス102を介して視聴者104にブロードキャストされるときに、アプリケーション105のユーザ・インターフェイスを適合させるために使用してもよい。一実施形態では、そのような選好は集計されて、アプリケーション105のユーザ・インターフェイスが、その記録中に、視聴者104の大多数が視聴したい情報を、記録されたセッション中に最も明確に見えて、聞こえることを確実にするように、相応に変更されるように、視聴者104のグループにわたる選好の要約を形成してもよい。
【0036】
一実施形態では、UIモディファイア107は、ブロードキャストされた記録されたセッションとのユーザ・インタラクション(視聴者104によるインタラクション)を観察して、視聴者104がブロードキャストされた記録されたセッションについて好きなもの、および嫌いなものについての暗示的なフィードバックを提供する。一実施形態では、このような観察は、ヒートマッピング(heatmapping)またはセッション記録ツール(例えば、Hotjar(R)、Mouseflow(R)、Inspectletなど)を利用することによって行ってもよい。このようなインタラクションは、アバターおよびテキスト・コンテンツなどの様々なユーザ・インターフェイス要素のサイズおよび位置、トランジション(ユーザ・インターフェイス内の移動アイテムの動作)、視覚要素が表示されるべき持続時間、オーバレイ情報、表示されるコンテンツ、音量などに関する、ユーザ選好を推測するために使用することができる。機械学習技術は、そのような情報を利用して、ユーザ挙動からパターンを認識し、記録中のアプリケーション105のユーザ・インターフェイスにどのような変更を加えるべきかに関するレコメンデーションを行うことができる。
【0037】
一実施形態では、UIモディファイア107は、ブロードキャストされた記録されたセッションについての視聴者の体験に従ってアップグレードされる、ユーザ・インターフェイス適合ルールの既存のセットを利用する。一実施形態では、このようなユーザ体験は、以下でさらに考察するようにUIモディファイア107のルール学習エンジン108によって利用される。
【0038】
一実施形態では、視聴者104は、エモティコン(emoticon)またはレコメンデーション・フレームを使用して、ブロードキャストされた記録されたセッションに関するフィードバックをUIモディファイア107に提供する。エモティコン・ベースのフィードバックに関しては、そのようなエモティコンは、自分の体験を判断するエモティコンを選ぶ視聴者104間の満足度を表現することを目的としている。レコメンデーション・フレームに関しては、ポップアップ・ウィンドウまたはスライド領域などの単純なインタラクションを使用して、レコメンデーションを提示することができる。このようなフィードバックには、アバターやテキスト・コンテンツなどの様々なユーザ・インターフェイス要素のサイズと位置、トランジション(ユーザ・インターフェイス内の移動アイテムの動作)、視覚要素を表示すべき持続時間、オーバレイ情報、表示するコンテンツ、音量などに関するユーザの選好が挙げられる。
【0039】
ルール学習エンジン108は、収集されたユーザ判断を分析する役割を担う。収集されたデータは、ルールを昇格または降格して、競合するルールを解決しようとするために、実行されたルールに優先順位を割り当てる、昇格/降格ランキングに役立てることを意図している。一実施形態では、ルール学習エンジン108は、UIモディファイア107のトレーナ・ルール・エンジン109を必要とする、教師あり学習アプローチに基づいている。
【0040】
一実施形態では、トレーナ・ルール・エンジン109は、視聴者104のインタラクションおよびフィードバック全体にわたる、ユーザ挙動のパターンを検出するためのトレーニング・セットとして役立つ、既存の適応ルールを実行することによってトレーニング・フレーズを確保する責任がある。さらに、トレーナ・ルール・エンジン109は、ルール学習エンジン108のための統計および(昇格/降格)ランキングを生成する。
【0041】
一実施形態では、UIモディファイア107の機械学習アルゴリズム110(例えば、学習分類アルゴリズム(learning classifier algorithm))は、記録中にアプリケーション105のユーザ・インターフェイスへの変更を推奨するためのトレーニング・セットとして、そのようなルールを利用し、この場合に、そのようなルールは、上記で考察した視聴者104によって提供される、追加のフィードバックに基づいて更新される。
【0042】
UIモディファイア107のハードウェア構成の説明が、
図3に関連して、さらに以下に提供される。
【0043】
システム100は、範囲において任意の1つの特定のネットワーク・アーキテクチャに限定されるべきではない。システム100は、任意の数のコンピューティング・デバイス101、104、ビデオ・ライブ・ストリーミング・サービス102、およびUIモディファイア107を含み得る。UIモディファイア107の特徴の一部または全部は、コンピューティング・デバイス101内に存在し得ることに留意されたい。
【0044】
次に
図2を参照すると、
図2は、本発明を実施するためのハードウェア環境を表すコンピューティング・デバイス101、104のハードウェア構成の本発明の実施形態を示す。コンピューティング・デバイス101、104は、システム・バス202によって様々な他のコンポーネントに接続されたプロセッサ201を有する。オペレーティング・システム203は、プロセッサ201上で実行され、
図2の様々なコンポーネントの機能を制御し、調整する。本発明の原理によるアプリケーション204は、オペレーティング・システム203と連動して実行され、オペレーティング・システム203に呼出し(call)を提供し、そこで、呼出しは、アプリケーション204によって実行される様々な機能またはサービスを実現する。コンピューティング・デバイス101のアプリケーション204は、例えば、アプリケーション105(例えば、ゲーミング・アプリケーション)およびスクリーン・レコーダ106を含んでもよい。コンピューティング・デバイス101のアプリケーション204は、視聴者104が視聴したい情報が記録されることを確実にするように、アプリケーション105のユーザ・インターフェイスを変更するためのプログラムをさらに含んでもよい。コンピューティング・デバイス104のアプリケーション204は、例えば、アプリケーション105のブロードキャストされた記録されたセッションを視聴するためのアプリケーションを含んでもよい。
【0045】
図2を再度参照すると、読み取り専用メモリ(「ROM」)205は、システム・バス202に接続されるとともに、コンピューティング・デバイス101、104の特定の基本機能を制御する基本入出力システム(「BIOS」)を含む。ランダム・アクセス・メモリ(「RAM」)206およびディスク・アダプタ207も、システム・バス202に接続されている。オペレーティング・システム203およびアプリケーション204を含むソフトウェア・コンポーネントは、コンピューティング・デバイス101、104の実行のためのメイン・メモリであってもよい、RAM206にロードされてもよいことに留意されたい。ディスク・アダプタ207は、ディスク・ユニット208、例えばディスク・ドライブと通信する統合ドライブ・エレクトロニクス(「IDE」)・アダプタであってもよい。上記で考察したプログラムは、ディスク・ユニット208内またはアプリケーション204内に存在してもよいことに留意されたい。
【0046】
コンピューティング・デバイス101、104は、バス202に接続された通信アダプタ209をさらに含む。通信アダプタ209は、バス202を外部ネットワーク(例えば、
図1のネットワーク103)と相互接続してもよく、それによってコンピューティング・デバイス101、104がライブ・ビデオ・ストリーミング・サービス102、UIモディファイア107などの、その他のデバイスと通信することを可能にする。
【0047】
I/Oデバイスはまた、ユーザ・インターフェイス・アダプタ210およびディスプレイ・アダプタ211を介して、コンピューティング・デバイス101、104に接続される。キーボード212、マウス213、およびスピーカ214は、全て、ユーザ・インターフェイス・アダプタ210を介して、バス202に相互接続されてもよい。ディスプレイ・モニタ215は、ディスプレイ・アダプタ211によってシステム・バス202に接続することができる。このようにして、ユーザは、キーボード212またはマウス213を介してコンピューティング・デバイス101、104に入力するとともに、ディスプレイ215またはスピーカ214を介してコンピューティング・デバイス101、104からの出力を受信することができる。タッチ・スクリーン機能を有するディスプレイ215および仮想キーボードであるキーボード212など、
図2に示されていないコンピューティング・デバイス101、104にデータを入力するために、その他の入力メカニズムを使用してもよい。
図2のコンピューティング・デバイス101、104は、範囲において
図2に描かれている要素に限定されるべきではなく、
図2に描かれているよりも少ない要素、または追加の要素を含んでもよい。
【0048】
次に
図3を参照すると、
図3は、本発明を実施するためのハードウェア環境を表すUIモディファイア107(
図1)のハードウェア構成の本発明の実施形態を示す。
【0049】
UIモディファイア107は、システム・バス302によって様々な他のコンポーネントに接続されたプロセッサ301を有する。オペレーティング・システム303は、プロセッサ301上で実行され、
図3の様々な構成要素の機能を制御し、調整する。本発明の原理に従うアプリケーション304は、オペレーティング・システム303と連動して実行されて、オペレーティング・システム303に呼出しを提供し、そこで、呼出しは、アプリケーション304によって実行される様々な機能またはサービスを実現する。アプリケーション304は、例えば、ルール学習エンジン108(
図1)、トレーナ・ルール・エンジン109(
図1)、および機械学習アルゴリズム110(
図1)を含んでもよい。さらに、アプリケーション304は、
図4~7に関連して以下でさらに考察するように、大多数の視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするために、アプリケーション105のユーザ・インターフェイスに加えるべき変更を決定するように構成される。
【0050】
図3を再度参照すると、読み取り専用メモリ(「ROM」)305は、システム・バス302に接続されるとともに、UIモディファイア107の特定の基本機能を制御する基本入出力システム(「BIOS」)を含む。ランダム・アクセス・メモリ(「RAM」)306およびディスク・アダプタ307も、システム・バス302に接続されている。オペレーティング・システム303およびアプリケーション304を含むソフトウェア・コンポーネントは、UIモディファイア107の実行のためのメイン・メモリであってもよい、RAM306にロードされてもよいことに留意されたい。ディスク・アダプタ307は、ディスク・ユニット308、例えばディスク・ドライブと通信する、統合ドライブ・エレクトロニクス(「IDE」)・アダプタであってもよい。
図4~7に関連して以下でさらに考察するように、大多数の視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするために、アプリケーション105のユーザ・インターフェイスに加えるべき変更を決定するためのプログラムが、ディスク・ユニット308内、またはアプリケーション304内に存在してもよいことに留意されたい。
【0051】
UIモディファイア107は、バス302に接続された通信アダプタ309をさらに含んでもよい。通信アダプタ309は、バス302を外部ネットワーク(例えば、
図1のネットワーク103)と相互接続させて、ビデオ・ライブ・ストリーミング・サービス102およびコンピューティング・デバイス101、104などの、その他のデバイスと通信する。
【0052】
一実施形態では、UIモディファイア107のアプリケーション304は、ルール学習エンジン108、トレーナ・ルール・エンジン109および機械学習アルゴリズム110のソフトウェア・コンポーネントを含む。一実施形態では、そのようなコンポーネントは、ハードウェア内に実装されてもよく、この場合に、そのようなハードウェア・コンポーネントはバス302に接続されることになる。このようなコンポーネントによって実行される上記で考察した機能は、ジェネリックなコンピュータ機能ではない。結果として、UIモディファイア107は、特定の、非ジェネリックなコンピュータ機能を実装した結果である、独特のマシンである。
【0053】
本発明は、任意の可能な技術的詳細レベルの統合における、システム、方法、および/またはコンピュータ・プログラム製品であり得る。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令をその上に有する、コンピュータ可読記憶媒体を含んでもよい。
【0054】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持し、記憶することができる、有形のデバイスとすることができる。コンピュータ可読記憶媒体は、例えば、それに限定はされないが、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または前述のものの任意、適切な組合せとしてもよい。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストは、以下を含む:ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、消去およびプログラム可能読み取り専用メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピー(R)・ディスク、パンチ・カード、またはその上に記録された命令を有する溝内の隆起した構造などの機械的に符号化されたデバイス、および前述のものの任意、適切な組合せ。本明細書で使用される場合には、コンピュータ可読記憶媒体は、それ自体が一時的な信号、例えば、電波またはその他の自由に伝播する電磁波、導波路またはその他の伝送媒体を伝播する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、またはワイヤを介して伝送される電気信号、であると解釈すべきではない。
【0055】
本明細書に記載されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスにダウンロードするか、またはネットワーク、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークまたは無線ネットワーク、あるいはそれらの組合せを介して外部コンピュータまたは外部記憶装置にダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイア・ウォール、スイッチ、ゲートウェイ・コンピュータまたはエッジ・サーバ、あるいはそれらの組合せを含んでもよい。各コンピューティング/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するために、そのコンピュータ可読プログラム命令を転送する。
【0056】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ(state-setting data)、集積回路用構成データ、またはSmalltalk(R)、C++、および同様のものなどのオブジェクト指向プログラミング言語、ならびに「C」プログラミング言語または類似のプログラミング言語などの手続き型プログラミング言語を含む1つまたは複数のプログラミング言語の任意の組合せで書かれた、ソース・コードもしくはオブジェクト・コードのいずれかとすることができる。コンピュータ可読プログラム命令は、スタンドアロンのソフトウェア・パッケージとして、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、かつ部分的にリモート・コンピュータ上で、または完全にリモート・コンピュータまたはサーバ上で実行されてもよい。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)またはワイド・エリア・ネットワーク(WAN)を含む任意のタイプのネットワークを通してユーザのコンピュータに接続されてもよいし、または(例えば、インターネット・サービス・プロバイダを使用してインターネットを通して)外部コンピュータへの接続がなされてもよい。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル・ロジック・アレイ(PLA)を含む電子回路は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路をパーソナライズすることによって、コンピュータ可読プログラム命令を実行することができる。
【0057】
本明細書において、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図、あるいはその両方を参照して、本発明の態様が記述される。フローチャート図またはブロック図、あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図、あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実施できることが理解されよう。
【0058】
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施する手段を作り出すように、コンピュータ、またはその他のプログラム可能なデータ処理装置のプロセッサに提供されて、マシンを生成するものであってもよい。これらのコンピュータ可読プログラム命令はまた、その中に記憶された命令を有するコンピュータ可読記憶媒体が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定された機能/動作の態様を実施する命令を含む製品を構成するように、コンピュータ、プログラム可能なデータ処理装置、またはその他のデバイス、あるいはそれらの組合せに特定の方式で機能するように指示することができる、コンピュータ可読記憶媒体に記憶されてもよい。
【0059】
コンピュータ可読プログラム命令はまた、コンピュータ、その他のプログラマブル装置、またはその他のデバイス上で実行される命令が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定された機能/動作を実施するように、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスにロードされて、コンピュータ、その他のプログラム可能装置、またはその他のデバイス上で一連の動作ステップを実行させて、コンピュータ実施プロセスを生成してもよい。
【0060】
図のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能性、および動作を示す。これに関して、フローチャートまたはブロック図における各ブロックは、指定された論理機能を実施するための1つまたは複数の実行可能命令を含む、モジュール、セグメント、または命令の一部を表してもよい。いくつかの代替的な実装形態では、ブロックに記された機能は、図に記された順序から外れて起こり得る。例えば、連続して示される2つのブロックは、実際には1ステップで達成されてもよいし、同時に、実質的に同時に、部分的もしくは全体的に時間的に重複して実行されてもよいし、または、関与する機能に応じて、時にはブロックが逆の順序で実行されてもよい。ブロック図またはフローチャート図、あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図、あるいはその両方におけるブロックの組合せは、指定された機能または動作を実行するか、または特殊目的ハードウェア命令とコンピュータ命令の組合せを実施する、特殊目的ハードウェア・ベースのシステムによって実装できることにも留意されたい。
【0061】
背景セクションにおいて述べたように、Twitch(R)のようなビデオ・ライブ・ストリーミング・サービスは、リアルタイムで、同時に記録およびブロードキャストされるオンライン・ストリーミング・メディアを提供する。例えば、そのようなビデオ・ライブ・ストリーミング・サービスは、eスポーツ(電子スポーツ)競技のブロードキャストを含む、ビデオ・ゲーム・ライブ・ストリーミングを提供してもよい。同時に記録およびブロードキャストされることのあるその他のタイプのコンテンツとしては、音楽ブロードキャスト、クリエイティブ・コンテンツ、および「現実世界の」ストリームが挙げられる。「オンライン・ストリーマ」と呼ばれる個人は、そのようなビデオ・ライブ・ストリーミング・サービスを通じて、リアルタイムを含むオンラインで自分自身をブロードキャストする。例えば、個人は、そのようなビデオ・ライブ・ストリーミング・サービスを通じて自分のゲーミング・セッションをブロードキャストすることができる。通常、オンライン・ストリーマは、ゲーミング・レコーダなどのスクリーン・レコーダを使用して、ユーザのゲーミング・セッションなどのコンピュータ・スクリーン出力をデジタル記録する。ゲーミング・レコーダの例としては、Filmora(R)Scrn、OBS Studio、VLC(R)、xSplit、Nvidia(R)ShadowPlay(R)、Frapsなどが挙げられる。このようなゲーミング・レコーダは、ユーザが、システム・オーディオ、ビデオ、マイクロフォン、およびウェブカメラを同時にキャプチャすることを可能にする。さらに、このようなゲーミング・レコーダは、ユーザが異なるポイントにマーカーを追加したり、ビデオ速度を変えたり、フェード・イン/フェード・アウトを追加したりすることを可能にする。そのようなゲーミング・レコーダは、ユーザが、スクリーン全体、特定の領域、またはターゲット・ウィンドウをターゲットにするなど、記録設定をカスタマイズすることを可能にする。しかしながら、そのようなレコーダは、視聴者が視聴したい全ての情報を記録できるとは限らない。例えば、視聴者は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスがアイコンの下にアバターに関するテキスト・コンテンツを表示するという事実のために、レコーダによって記録されているものよりも、アバターに関するより多くのテキスト・コンテンツを見ることを望むことがある。別の例では、視聴者は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスにおいて、スクリーンの境界に沿って小さなフォント・サイズで現在表示されており、そのために視聴者がそれを読めなくなっているストリーム・チャットを見ることを望むことがある。さらに別の例では、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス要素は、スクリーンの側部に沿って、ゲームの対戦相手に関する情報(例えば、「あなたの対戦相手のデックには26枚のカードがある」)を描画することがある。しかしながら、視聴者は、このユーザ・インターフェイス要素をスクリーンの中央に描画したい場合がある。別の例では、アプリケーション(例えば、ゲーミング・アプリケーション)を記録するユーザによって設定された音量は、視聴者が望むよりも静かであり、したがって、視聴者は、サウンドを介して指示される、ゲーム内のアバターによるいくつかの重要な進展を見逃す可能性がある。その結果、ビデオ・ライブ・ストリーミング・サービスの視聴者が視聴したい情報が、記録セッション中に失われる可能性がある。残念ながら、現在、ゲーミング・レコーダなどのスクリーン・レコーダが、記録セッション中にそのような欠落した情報を記録できるようにする手段はない。
【0062】
本発明の実施形態は、
図4~
図7に関連して以下で考察するように、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするための手段を提供する。
図4は、視聴者が視聴したい情報が記録されることを確実にするために、アプリケーションのユーザ・インターフェイスを変更する方法のフローチャートである。
図5は、ユーザ・インターフェイス要素を変更する前の、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスを示す図である。
図6は、そのユーザ・インターフェイス要素を変更した後の、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスの例を示す図である。
図7は、そのユーザ・インターフェイス要素を変更した後の、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスのさらなる例を示す図である。
【0063】
上述したように、
図4は、視聴者104(
図1)が視聴したい情報が本発明の実施形態に従って記録されることを確実にするために、アプリケーション105(
図1)のユーザ・インターフェイスを変更するための方法400のフローチャートである。
【0064】
図4を参照すると、
図1~3と併せて、ステップ401において、コンピューティング・デバイス101は、
図5に示すような、アプリケーション105(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスを表示する。
図5は、ユーザ・インターフェイス要素を変更する前のアプリケーション105(例えば、ゲーミング・アプリケーション)の例示的なユーザ・インターフェイス500を示す。このようなユーザ・インターフェイスは、ビデオ・ライブ・ストリーミング・サービス102を介して視聴者104にブロードキャストされるユーザ・インターフェイスを記録する前に、コンピューティング・デバイス101のユーザに現れるものである。
【0065】
図4に戻り、
図1~3および
図5と併せて、ステップ402において、コンピューティング・デバイス101は、アプリケーション105(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス(例えば、ユーザ・インターフェイス500)の記録の開始を検出する。例えば、一実施形態では、コンピューティング・デバイス101は、キーボード212またはマウス213などを介して、コンテンツ・クリエータ101からの入力の受信を検出して、アプリケーション105のユーザ・インターフェイス(例えば、ユーザ・インターフェイス500)の記録を開始する。別の実施形態では、コンピューティング・デバイス101は、スクリーン・レコーダ106の初期実行を検出して、アプリケーション105のユーザ・インターフェイス(例えば、ユーザ・インターフェイス500)の記録を開始する。例えば、コンテンツ・クリエータ101は、ビデオ・ライブ・ストリーミング・サービス102を通じて自分のゲーミング・セッションをリアルタイムにオンラインでブロードキャストし始めることを決定してもよい。その結果、スクリーン・レコーダ106は、コンテンツ・クリエータ101によって、キーボード212またはマウス213を介するなどして実行することができる。
【0066】
上記で考察したように、スクリーン・レコーダ106は、視聴者104が視聴したい全ての情報を記録できるとは限らない、なぜならアプリケーション105のユーザ・インターフェイスが、現在、そのような情報を表示および生成していないことがあるためである。結果として、本発明の原理によれば、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするように、ユーザ・インターフェイスが変更される。
【0067】
ステップ403において、コンピューティング・デバイス101は、アプリケーション105のユーザ・インターフェイス(例えば、ユーザ・インターフェイス500)の記録の開始を検出することに応答して、記録されたセッション中に視聴者104が視聴したい情報が、最も明確に見えて、聞こえることを確実にするように、アプリケーション105のユーザ・インターフェイスに変更を加える要求をユーザ・インターフェイス・モディファイア107に発する。この要求に関連して、コンピューティング・デバイス101は、ユーザ・インターフェイスのドキュメント・オブジェクト・モデル(DOM)要素などのユーザ・インターフェイス要素を、ユーザ・インターフェイス・モディファイア107に提供する。一実施形態では、コンピューティング・デバイス101はさらに、ユーザ・インターフェイス要素のサイズ、ユーザ・インターフェイス要素の位置(例えば、表示スクリーン上のx-y座標)、ユーザ・インターフェイス要素が表示される持続時間、オーディオ要素のラウドネス、ユーザ・インターフェイス内の移動アイテムの動作などを含む、ユーザ・インターフェイス要素のコンテンツおよびレイアウトを記述するユーザ・インターフェイス・メタデータを、ユーザ・インターフェイス・モディファイア107に提供する。このような情報は、どのような変更を行う必要があるかを決定するために、ユーザ・インターフェイス・モディファイア107によって利用され得る。
【0068】
先に考察したように、そのような変更は、新規のコンテンツを表示すること、ユーザ・インターフェイスの要素のサイズを調節すること、ユーザ・インターフェイスの要素の位置を調節すること、ユーザ・インターフェイスの要素を表示する持続時間を調節すること、ユーザ・インターフェイスのオーディオ要素を調節すること、ユーザ・インターフェイスにオーバレイ情報を追加すること、オーディオ・コンポーネントを追加または削除すること、トランジション(ユーザ・インターフェイスの移動要素)を追加、削除または改変することなどを含んでもよい。これらは例示的な変更であり、本発明の原理は、範囲において、そのような実施例に限定されるべきではないことに留意されたい。そうではなく、本発明の原理は、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするアプリケーション105のユーザ・インターフェイスに対する任意の変更を含むことである。当業者であれば、本発明の原理をそのような実装形態に適用することができるであろう。また、本発明の原理をこのような実装形態に適用する実施形態は、本発明の範囲内に入ることになる。
【0069】
一実施形態では、UIモディファイア107は、機械学習を使用して、ビデオ・ライブ・ストリーミング・サービス102を介したコンテンツ・クリエータ101による記録されたゲーミング・セッションなどの、記録されたブロードキャストを視聴する視聴者104の様式的、視覚的および聴覚的な選好を、調査を介して質問するか、またはフィードバックを要求することによって調べる。例えば、調査では次のような質問をしてもよい。「スクリーン上の文字を読むのはどれくらい難しいですか?」、「スクリーン上の情報の構成についてどう思いますか?」、「アバターのテキスト・コンテンツを見ることは重要ですか?」、「ストリーム・チャットを見ることは重要ですか?」、「ストリーム・チャットの位置についてのあなたの好みはどれですか?」、「テキスト・コンテンツのフォント・サイズのサイズについてのあなたの好みはどれですか?」、「ゲームの対戦相手についての情報を見ることは重要ですか?」、「録音されたオーディオは通常、あなたにとって静かすぎますか?」このような例示的な調査は、QuestionPro(R)によって視聴者104に対して行うことができる。そのような調査情報の収集は、機械学習アルゴリズム(例えば、教師あり学習)に正確なトレーニング・データを提供して、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス要素を適切に変更するための正確な数学的モデルを構築するために、専門家によって収集されて、使用されてもよい。
【0070】
一実施形態では、UIモディファイア107は、機械学習アルゴリズム(例えば、教師あり学習)を使用して、アバターについてのテキストをアバターから一定の距離に特定のフォントで表示すること、またはスクリーンの側部に沿ってゲーム対戦相手についての情報を表示することなどの、記録されたビデオ・セッションの視聴者104によって好まれるユーザ・インターフェイス特徴からなる、サンプル・データに基づいて数学的モデルを構築する。このようなユーザ・インターフェイス特徴は、専門家によって取得および集計され、専門家は、そのような情報を利用してサンプル・データを開発する。このようなデータ・セットは、本明細書では「トレーニング・データ」と呼ばれ、タスクを実行するように明示的にプログラムされることなく予測または決定を行うために、機械学習アルゴリズムによって使用される。このようなトレーニング・セットは、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするように、記録されているアプリケーションのユーザ・インターフェイスを変更する際に、専門家によって提供される。このような教師あり学習アルゴリズムの例としては、ニアレスト・ネイバ、ナイーブ・ベイズ、決定木、線形回帰、サポート・ベクター・マシン、ニューラル・ネットワークが挙げられる。
【0071】
一実施形態では、機械学習モデルは、トレーニング・セットに基づいて、視聴者104が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするように、記録中のアプリケーションのユーザ・インターフェイスに対する変更を予測するようにトレーニングされた、分類モデルに対応する。
【0072】
一実施形態では、UIモディファイア107は、視聴者104のプロフィールを利用して、ビデオ・ライブ・ストリーミング・サービス102を介して視聴者104にブロードキャストされるアプリケーション105の記録中に、アプリケーション105のユーザ・インターフェイスにどのような変更を加える必要があるかを決定する。このようなプロファイルには、アバターやテキスト・コンテンツなどの様々なユーザ・インターフェイス要素のサイズと位置、トランジション(ユーザ・インターフェイス内の移動アイテムの動作)、視覚要素が表示されるべき持続時間、オーバレイ情報、表示されるコンテンツ、音量などに関する、ユーザ選好を含めてもよい。これらのプロファイルから抽出されたこのようなユーザ選好は、ビデオ・ライブ・ストリーミング・サービス102を介して視聴者104にブロードキャストされるときに、アプリケーション105のユーザ・インターフェイスを適合させるために使用してもよい。一実施形態では、そのような選好を集計して、アプリケーション105のユーザ・インターフェイスが、その記録中に、視聴者104の大多数が視聴したい情報が、記録されたセッション中に最も明確に見えて、聞こえることを確実にするように、相応に変更されるように、視聴者104のグループにわたる選好の要約を形成してもよい。
【0073】
一実施形態では、UIモディファイア107は、ブロードキャストされた記録されたセッションとのユーザ・インタラクション(視聴者104によるインタラクション)を観察して、視聴者104がブロードキャストされた記録されたセッションについて好きなもの、および嫌いなものについての暗示的なフィードバックを提供する。一実施形態では、このような観察は、ヒートマッピング(heatmapping)またはセッション記録ツール(例えば、Hotjar(R)、Mouseflow(R)、Inspectletなど)を利用することによって行ってもよい。このようなインタラクションは、アバターおよびテキスト・コンテンツなどの様々なユーザ・インターフェイス要素のサイズおよび位置、トランジション(ユーザ・インターフェイス内の移動アイテムの動作)、視覚要素が表示されるべき持続時間、オーバレイ情報、表示されるコンテンツ、音量などに関する、ユーザ選好を推測するために使用することができる。機械学習技術は、そのような情報を利用して、ユーザ挙動からパターンを認識し、記録中のアプリケーション105のユーザ・インターフェイスにどのような変更を加えるべきかに関するレコメンデーションを行うことができる。
【0074】
一実施形態では、UIモディファイア107は、ブロードキャストされた記録されたセッションについての視聴者の体験に従ってアップグレードされる、ユーザ・インターフェイス適合ルールの既存のセットを利用する。一実施形態では、このようなユーザ体験は、UIモディファイア107のルール学習エンジン108によって利用される。
【0075】
一実施形態では、視聴者104は、エモティコン(emoticon)またはレコメンデーション・フレームを使用して、ブロードキャストされた記録されたセッションに関するフィードバックをUIモディファイア107に提供する。エモティコン・ベースのフィードバックに関しては、そのようなエモティコンは、自分の体験を判断するエモティコンを選ぶ視聴者104間の満足度を表現することを目的としている。レコメンデーション・フレームに関しては、ポップアップ・ウィンドウまたはスライド領域などの単純なインタラクションを使用して、レコメンデーションを提示することができる。このようなフィードバックには、アバターやテキスト・コンテンツなどの様々なユーザ・インターフェイス要素のサイズと位置、トランジション(ユーザ・インターフェイス内の移動アイテムの動作)、視覚要素を表示すべき持続時間、オーバレイ情報、表示するコンテンツ、音量などに関するユーザの選好が挙げられる。
【0076】
ルール学習エンジン108は、収集されたユーザ判断を分析する役割を担う。収集されたデータは、ルールを昇格または降格して、競合するルールを解決しようとするために、実行されたルールに優先順位を割り当てる、昇格/降格ランキングに役立てることを意図している。一実施形態では、ルール学習エンジン108は、UIモディファイア107のトレーナ・ルール・エンジン109を必要とする、教師あり学習アプローチに基づいている。
【0077】
一実施形態では、トレーナ・ルール・エンジン109は、視聴者104のインタラクションおよびフィードバック全体にわたる、ユーザ挙動のパターンを検出するためのトレーニング・セットとして役立つ、既存の適応ルールを実行することによってトレーニング・フレーズを確保する責任がある。さらに、トレーナ・ルール・エンジン109は、ルール学習エンジン108のための統計および(昇格/降格)ランキングを生成する。
【0078】
一実施形態では、UIモディファイア107の機械学習アルゴリズム110(例えば、学習分類アルゴリズム)は、記録中にアプリケーション105のユーザ・インターフェイスへの変更を推奨するためのトレーニング・セットとして、そのようなルールを利用し、この場合に、そのようなルールは、上記で考察した視聴者104によって提供される、追加のフィードバックに基づいて更新される。
【0079】
先に考察したように、UIモディファイア107は、ユーザ・インターフェイスのドキュメント・オブジェクト・モデル(DOM)要素などのユーザ・インターフェイス要素を、コンピューティング・デバイス101に現在表示されているコンピューティング・デバイス101から受信する。さらに、上記で考察したように、UIモディファイア107は、ユーザ・インターフェイス要素のサイズ、ユーザ・インターフェイス要素の位置(例えば、ディスプレイ・スクリーン上のx-y座標)、ユーザ・インターフェイス要素が表示される持続時間、オーディオ要素のラウドネス、ユーザ・インターフェイス内の移動アイテムの動作などを含む、ユーザ・インターフェイス要素のコンテンツおよびレイアウトを記述する、ユーザ・インターフェイス・メタデータをコンピューティング・デバイス101から受信する。そのような情報は、どのような変更を行う必要があるかを決定するために、ユーザ・インターフェイス・モディファイア107によって利用されてもよい。
【0080】
例えば、UIモディファイア107が、アバターに関連するテキスト・コンテンツをアバターの隣に見ることを視聴者104が一般的に好むと判定した場合、UIモディファイア107は、アプリケーション105のユーザ・インターフェイス上に現在、表示されているように、アバターに関するテキスト・コンテンツを表示させないか、または、アイコンの下に表示させているのとは対照的に、テキスト・コンテンツと、ユーザ・インターフェイス上のテキスト・コンテンツの位置(例えば、ディスプレイ・スクリーン215上のx-y座標)の両方を指定するなどして、アバターに関連するテキスト・コンテンツをアバターの隣に有するようにアプリケーション105のユーザ・インターフェイスを変更する命令をアプリケーション105に発する。
【0081】
別の例では、ストリーム・チャットは、現在、アプリケーション105のユーザ・インターフェイスにおいて、スクリーンの境界に沿って小さなフォント・サイズで表示されて、それによって視聴者104が読めなくなっている場合がある。そのような情報は、取得されたユーザ・インターフェイス・メタデータから判定してもよい。UIモディファイア107が、現在使用されているフォント・サイズを超える特定のフォント・サイズを有する、ストリーム・チャットをスクリーンの境界に沿って視覚的に見ることを視聴者104が一般に好むと判定した場合、UIモディファイア107は、ストリーム・チャットのフォント・サイズを増加させるようにアプリケーション105のユーザ・インターフェイスを変更するようアプリケーション105に命令を出すことになる。
【0082】
さらなる例では、ゲーム対戦相手に関する情報を描画するユーザ・インターフェイスは、現在、アプリケーション105のユーザ・インターフェイスに表示されていないことがある。そのような情報は、取得されたユーザ・インターフェイス・メタデータから判定することができる。UIモディファイア107が、ゲームの対戦相手に関する情報を視覚的に見ることを視聴者104が一般的に好むと判定した場合、UIモディファイア107は、アプリケーション105のユーザ・インターフェイスに表示するコンテンツおよびそのようなコンテンツの位置(例えば、ディスプレイ・スクリーン215上のx-y座標)を指定するなど、そのような情報(例えば、「あなたの対戦相手のデックには26枚のカードがある」)を表示するようにアプリケーション105のユーザ・インターフェイスを変更する命令をアプリケーション105に発するであろう。
【0083】
別の例では、UIモディファイア107は、受信したユーザ・インターフェイス・メタデータに基づいて、アプリケーション105のユーザ・インターフェイスが、ユーザ・インターフェイスを垂直に横切るアニメーション要素(例えば、アバター)を含むと判定することができる。UIモディファイア107が、視聴者107が、一般に、水平方向にユーザ・インターフェイスを横切ってアニメーション要素を見ることを好むと判定した場合には、UIモディファイア107は、アプリケーション105のユーザ・インターフェイス上に表示される、そのような移動の位置(例えば、表示スクリーン215上のx-y座標)を指定するなど、スクリーンを水平に横切るようにアニメーション要素を表示するようにアプリケーション105のユーザ・インターフェイスを変更するように命令をアプリケーション150に発する。
【0084】
さらなる例では、UIモディファイア107は、アプリケーション105のユーザ・インターフェイスが低サウンド・レベルに設定されたオーディオ・コンポーネントを含むと判定することがある。UIモディファイア107が、視聴者107は、一般的に、オーディオ・コンポーネントを中間サウンド・レベルに設定することを好むと判定した場合、UIモディファイア107は、そのサウンド・レベルを中間サウンド・レベルに増加させるようにオーディオ・コンポーネントを変更する命令を、アプリケーション105に発する。
【0085】
ステップ404において、コンピューティング・デバイス101は、ユーザ・インターフェイス・モディファイア107から、そのような変更を受信する。
【0086】
ステップ405において、コンピューティング・デバイス101は、次いで、アプリケーション105のユーザ・インターフェイスに対する変更を受信した後に、アプリケーション105のユーザ・インターフェイスの記録の開始を検出することに応答して、アプリケーション105のユーザ・インターフェイスを変更する。そのような変更で、アプリケーション105のユーザ・インターフェイスを変更することによって、視聴者104が視聴したい情報が記録される。例示的な変更が、
図6および
図7に示されている。
【0087】
図6は、本発明の実施形態に従って、ユーザ・インターフェイス要素を変更した後の、アプリケーション105(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス600の例を示す図である。
【0088】
図5と併せて、
図6を参照すると、ユーザ・インターフェイス600は、ここで、ユーザ・インターフェイス500のストリーム・チャット501と比較して、大きいフォント・サイズを有する、読み易いストリーム・チャット601を含む。さらに、ユーザ・インターフェイス600は、ここで、対戦者に関する情報(例えば、「あなたの対戦者のデックには26枚のカードがある」)を含む、ユーザ・インターフェイス要素602を含む。そのような情報は、新しく表示されるコンテンツに対応するか、またはそのような情報は、以前には、アイコンの下などに隠されていた可能性がある。
【0089】
図7は、本発明の実施形態に従って、そのユーザ・インターフェイス要素を変更した後の、アプリケーション105(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス700のさらなる例を示す図である。
【0090】
図6および
図7と併せて
図7を参照すると、ここで、ユーザ・インターフェイス700は、対戦者に関する情報(例えば、「あなたの対戦者のデックには26枚のカードがある」)を、ユーザ・インターフェイス600の側部と反対に(要素602を参照)、ユーザ・インターフェイス700の中央に描画する、ユーザ・インターフェイス要素701を含む。ユーザ・インターフェイス要素の位置におけるそのような調節は、ユーザ・インターフェイスの中央において、そのような情報を見たいというほとんどの視聴者104の要望に基づいてもよい。
【0091】
さらに、
図7は、アバター(ウォーパス(Warpath))に関するテキスト・コンテンツを含む、ユーザ・インターフェイス要素702の描画を示す。そのような情報は、ユーザ・インターフェイス500内に提示されていなかったが、視聴者104に見られることが重要であるとUIモディファイア107が判定した。
【0092】
図1~3および
図5~7と併せて
図4を参照すると、ステップ406において、コンピューティング・デバイス101は、スクリーン・レコーダ106によるなどして、アプリケーション105の変更されたユーザ・インターフェイス(例えば、ユーザ・インターフェイス600、ユーザ・インターフェイス700)を記録する。一実施形態では、スクリーン・レコーダ106の開始を検出した後に、記録は、UIモディファイア107からアプリケーション105のユーザ・インターフェイスのユーザ・インターフェイス要素の変更を受信するまで、コンピューティング・デバイス101によって中断される。以前に考察したように、アプリケーション105のユーザ・インターフェイスを変更した後に、スクリーン・レコーダ106は、アプリケーション105のユーザ・インターフェイスの記録を再開する(すなわち、中断が解除される)。
【0093】
ステップ407において、コンピューティング・デバイス101は、ビデオ・ライブ・ストリーミング・サービス102を介してネットワーク103上で視聴者104にアプリケーション105の記録され変更されたユーザ・インターフェイスをブロードキャストする。一実施形態では、そのような記録およびブロードキャストは同時に発生する。アプリケーション105の変更されたユーザ・インターフェイスをブロードキャストすることによって、視聴者104は、視聴者104が視聴したい情報を見ることができるようになる。
【0094】
ステップ408において、ブロードキャストが完了したかどうかについての判定が、コンピューティング・デバイス101によって行われる。否である場合には、コンピューティング・デバイス101は、ブロードキャストが完了したかどうかを判定し続ける。
【0095】
しかしながら、ブロードキャストが完了した場合には、ステップ409において、コンピューティング・デバイス101は、アプリケーション105のユーザ・インターフェイスの記録前に描画されたユーザ・インターフェイス要素を示す、
図5のユーザ・インターフェイス500のような、変更のないアプリケーション105のユーザ・インターフェイスを表示する。
【0096】
前述の結果として、本発明の実施形態は、情報がスクリーン・レコーダによって記録されて、ビデオ・ライブ・ストリーミング・サービスを介して視聴者にブロードキャストされるときに、視聴者によって視聴されるように、視聴者が視聴したい情報がコンテンツ・クリエータのユーザ・インターフェイス上に明確に示される(聞こえる)ことを可能にするよう、コンテンツ・クリエータに提示されるユーザ・インターフェイスを変更することによって、スクリーン・レコーダの技術または技術分野を改善する手段を提供する。
【0097】
さらに、本発明は、スクリーン・レコーダに関与する技術または技術分野を改善する。上記で考察したように、Twitch(R)のようなビデオ・ライブ・ストリーミング・サービスは、リアルタイムで、同時に記録およびブロードキャストされるオンライン・ストリーミング・メディアを提供する。例えば、そのようなビデオ・ライブ・ストリーミング・サービスは、eスポーツ(電子スポーツ)競技のブロードキャストを含む、ビデオ・ゲーム・ライブ・ストリーミングを提供してもよい。同時に記録およびブロードキャストされることのあるその他のタイプのコンテンツとしては、音楽ブロードキャスト、クリエイティブ・コンテンツ、および「現実世界の」ストリームが挙げられる。「オンライン・ストリーマ」と呼ばれる個人は、そのようなビデオ・ライブ・ストリーミング・サービスを通じて、リアルタイムを含むオンラインで自分自身をブロードキャストする。例えば、個人は、そのようなビデオ・ライブ・ストリーミング・サービスを通じて自分のゲーミング・セッションをブロードキャストすることができる。通常、オンライン・ストリーマは、ゲーミング・レコーダなどのスクリーン・レコーダを使用して、ユーザのゲーミング・セッションなどのコンピュータ・スクリーン出力をデジタル記録する。ゲーミング・レコーダの例としては、Filmora(R)Scrn、OBS Studio、VLC(R)、xSplit、Nvidia(R)ShadowPlay(R)、Frapsなどが挙げられる。このようなゲーミング・レコーダは、ユーザが、システム・オーディオ、ビデオ、マイクロフォン、およびウェブカメラを同時にキャプチャすることを可能にする。さらに、このようなゲーミング・レコーダは、ユーザが異なるポイントにマーカーを追加したり、ビデオ速度を変えたり、フェード・イン/フェード・アウトを追加したりすることを可能にする。そのようなゲーミング・レコーダは、ユーザが、スクリーン全体、特定の領域、またはターゲット・ウィンドウをターゲットにするなど、記録設定をカスタマイズすることを可能にする。しかしながら、そのようなレコーダは、視聴者が視聴したい全ての情報を記録できるとは限らない。例えば、視聴者は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスがアイコンの下にアバターに関するテキスト・コンテンツを表示するという事実のために、レコーダによって記録されているものよりも、アバターに関するより多くのテキスト・コンテンツを見ることを望むことがある。別の例では、視聴者は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスにおいて、スクリーンの境界に沿って小さなフォント・サイズで現在表示されており、そのために視聴者がそれを読めなくなっているストリーム・チャットを見ることを望むことがある。さらに別の例では、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイス要素は、スクリーンの側部に沿って、ゲームの対戦相手に関する情報(例えば、「あなたの対戦相手のデックには26枚のカードがある」)を描画することがある。しかしながら、視聴者は、このユーザ・インターフェイス要素をスクリーンの中央に描画したい場合がある。別の例では、アプリケーション(例えば、ゲーミング・アプリケーション)を記録するユーザによって設定された音量は、視聴者が望むよりも静かであり、したがって、視聴者は、サウンドを介して指示される、ゲーム内のアバターによるいくつかの重要な進展を見逃す可能性がある。その結果、ビデオ・ライブ・ストリーミング・サービスの視聴者が視聴したい情報が、記録セッション中に失われる可能性がある。残念ながら、現在、ゲーミング・レコーダなどのスクリーン・レコーダが、記録セッション中にそのような欠落した情報を記録できるようにする手段はない。
【0098】
本発明の実施形態は、アプリケーション(例えば、ゲーミング・アプリケーション)のユーザ・インターフェイスを表示することによって、そのような技術を改善する。アプリケーションのユーザ・インターフェイスの記録の開始を検出すると、例えば、新規のコンテンツを表示すること、ユーザ・インターフェイスの要素のサイズを調節すること、ユーザ・インターフェイスの要素の位置を調節すること、ユーザ・インターフェイスの要素を表示する持続時間を調節すること、ユーザ・インターフェイスのオーディオ要素を調節すること、ユーザ・インターフェイスにオーバレイ情報を追加すること、オーディオ・コンポーネントを追加または削除すること、トランジション(ユーザ・インターフェイスの移動要素)を追加、削除または改変することなどによって、視聴者が視聴したい情報が記録されることを確実にするように、アプリケーションのユーザ・インターフェイスが変更される。このような変更の後に、アプリケーションの変更されたユーザ・インターフェイスは記録されて、ビデオ・ライブ・ストリーミング・サービスを介して視聴者にブロードキャストされる。このようにして、視聴者は、以前には、そのような変更の前のユーザ・インターフェイスの記録中に失われていたかもしれない、視聴したい情報を視聴することができる。さらに、このようにして、スクリーン・レコーダに関与する技術分野における改善がある。
【0099】
本発明によって提供される技術的解決策は、人間の心の中で、またはペンと紙を使用する人間によって行うことができない。すなわち、本発明によって提供される技術的解決策は、コンピュータを使用せずには、人間の心の中で、または任意の合理的な時間内で、任意の合理的な予期される精度で、ペンと紙を使用する人間によって達成することもできない。
【0100】
本発明の様々な実施形態の説明は、例証の目的で提示されたが、網羅的であること、または開示された実施形態に限定することを意図するものではない。多くの修正および変形が、記載された実施形態の範囲から逸脱することなく、当業者には明らかであろう。本明細書で使用される用語は、実施形態の原理、実際的な応用、または市場で見出される技術に対する技術的改善を最もよく説明するために、または当業者が本明細書に開示される実施形態を理解できるようにするために、選択された。
【国際調査報告】