特許法第30条第2項適用申請有り 1. 公開の事実 (1)公開の実施日 2020年8月19日 公開の場所 公開は、株式会社Wright Flyer Live Entertainmentが運営するVtuber専用のライブ配信アプリケーション「REALITY」において行われた。上記アプリケーション「REALITY」は、下記アドレスにより特定されるウェブサイトにおいてダウンロード可能である。 https://le.wrightflyer.net/reality/ https://itunes.apple.com/us/app/reality/id1404176564?l=ja&ls=1&mt=8 https://play.google.com/store/apps/details?id=net.wrightflyer.le.reality https://apps.apple.com/jp/app/reality-vtuber%E5%B0%82%E7%94%A8%E3%83%A9%E3%82%A4%E3%83%96%E3%82%A2%E3%83%97%E3%83%AA/id1404176564 公開者 株式会社Wright Flyer Live Entertainment 公開された発明の内容 株式会社Wright Flyer Live Entertainmentが、同社が提供する上記アドレスにより特定されるウェブサイトにおいてダウンロード可能な「REALITY」というアプリケーションにおいて、出願に係る発明に関する内容を公開した。
特許法第30条第2項適用申請有り (2)ウェブサイトの掲載日 2020年8月19日 ウェブサイトのアドレスhttps://le.wrightflyer.net/reality/ https://itunes.apple.com/us/app/reality/id1404176564?l=ja&ls=1&mt=8 https://play.google.com/store/apps/details?id=net.wrightflyer.le.reality https://apps.apple.com/jp/app/reality-vtuber%E5%B0%82%E7%94%A8%E3%83%A9%E3%82%A4%E3%83%96%E3%82%A2%E3%83%97%E3%83%AA/id1404176564 公開者 株式会社Wright Flyer Live Entertainment 公開された発明の内容 株式会社Wright Flyer Live Entertainmentが、同社が提供する上記アドレスにより特定されるウェブサイトにおいてダウンロード可能な「REALITY」というアプリケーションにより起動されるブラウザ機能を介して、出願に係る発明に関する内容の提供を行った。
特許法第30条第2項適用申請有り (3)ウェブサイトの掲載日 2020年8月19日 ウェブサイトのアドレス https://reality.wrightflyer.net/notice/page/z43ZfZfD6whD 公開者 株式会社Wright Flyer Live Entertainment 公開された発明の内容 株式会社Wright Flyer Live Entertainmentが、上記アドレスにより特定されるウェブサイトにおいて、出願に係る発明に関する内容の公開を行った。
本明細書は、いかなる方法によっても限定されることを意図していない、代表的な様々な実施形態という意味により記載される。本件出願において用いられるように、「1つの」、「前記」、「上記」、「当該」、「該」、「この」、「その」といった単数形は、複数形でないことを明確に示さない限り、複数形を含むことができる。また、「含む」という用語は、「具備する」こと又は「備える」ことを意味し得る。さらに、「結合された」、「結合した」、「結び付けられた」、「結び付けた、「接続された」又は「接続した」という用語は、対象物を相互に結合する、接続する又は結び付ける、機械的、電気的、磁気的及び光学的な方法を他の方法とともに包含し、このように結合された、結合した、結び付けられた、結び付けた、接続された又は接続した対象物の間にある中間要素の存在を排除しない。
本明細書において記載される、様々なシステム、方法及び装置は、いかなる方法によっても限定されるものとして解釈されるべきではない。実際には、本開示は、開示された様々な実施形態の各々、これら様々な実施形態を相互に組み合わせたもの、及び、これら様々な実施形態の一部を相互に組み合わせたもの、のうちのあらゆる新規な特徴及び態様に向けられている。本明細書において記載される、様々なシステム、方法及び装置は、特定の態様、特定の特徴、又は、このような特定の態様と特定の特徴とを組み合わせたものに限定されないし、本明細書に記載される物及び方法は、1若しくはそれ以上の特定の効果が存在すること又は課題が解決されることを、要求するものでもない。さらには、本明細書において記載された様々な実施形態のうちの様々な特徴若しくは態様、又は、そのような特徴若しくは態様の一部は、相互に組み合わせて用いられ得る。
本明細書において開示された様々な方法のうちの幾つかの方法の動作が、便宜上、特定の順序に沿って記載されているが、このような手法による記載は、特定の順序が以下特定の文章によって要求されていない限り、上記動作の順序を並び替えることを包含する、と理解すべきである。例えば、順番に記載された複数の動作は、幾つかの場合には、並び替えられるか又は同時に実行される。さらには、簡略化を目的として、添付図面は、本明細書に記載された様々な事項及び方法が他の事項及び方法とともに用いられ得るような様々な方法を示していない。加えて、本明細書は、「生成する」、「発生させる」、「表示する」、「受信する」、「評価する」及び「配信する」のような用語を用いることがある。これらの用語は、実行される実際の様々な動作のハイレベルな記載である。これらの用語に対応する実際の様々な動作は、特定の実装に依存して変化し得るし、本明細書の開示の利益を有する当業者によって容易に認識され得る。
本開示の装置又は方法に関連して本明細書に提示される、動作理論、科学的原理又は他の理論的な記載は、よりよい理解を目的として提供されており、技術的範囲を限定することを意図していない。添付した特許請求の範囲における装置及び方法は、このような動作理論により記載される方法により動作する装置及び方法に限定されない。
本明細書に開示された様々な方法のいずれもが、コンピュータにより読み取り可能な1又はそれ以上の媒体(例えば、1又はそれ以上の光学媒体ディスク、複数の揮発性メモリ部品、又は、複数の不揮発性メモリ部品といったような、非一時的なコンピュータにより読み取り可能な記憶媒体)に記憶された、コンピュータにより実行可能な複数の命令を用いて実装され、さらに、コンピュータにおいて実行され得る。ここで、上記複数の揮発性メモリ部品は、例えばDRAM又はSRAMを含む。また、上記複数の不揮発性メモリ部品は、例えばハードドライブ及びソリッドステートドライブ(SSD)を含む。さらに、上記コンピュータは、例えば、計算を行うハードウェアを有するスマートフォン及び他のモバイル装置を含む、市場において入手可能な任意のコンピュータを含む。
本明細書において開示された技術を実装するためのこのようなコンピュータにより実行可能な複数の命令のいずれもが、本明細書において開示された様々な実施形態の実装の間において生成され使用される任意のデータとともに、1又はそれ以上のコンピュータにより読み取り可能な媒体(例えば、非一時的なコンピュータにより読み取り可能な記憶媒体)に記憶され得る。このようなコンピュータにより実行可能な複数の命令は、例えば、個別のソフトウェアアプリケーションの一部であり得るか、又は、ウェブブラウザ若しくは(リモート計算アプリケーションといったような)他のソフトウェアアプリケーションを介してアクセス又はダウンロードされるソフトウェアアプリケーションの一部であり得る。このようなソフトウェアは、例えば、(例えば市場において入手可能な任意の好適なコンピュータにおいて実行されるエージェントとしての)単一のローカルコンピュータにおいて、又は、1又はそれ以上のネットワークコンピュータを用いて、ネットワーク環境(例えば、インターネット、ワイドエリアネットワーク、ローカルエリアネットワーク、(クラウド計算ネットワークといったような)クライアントサーバネットワーク、又は、他のそのようなネットワーク)において、実行され得る。
明確化のために、ソフトウェアをベースとした様々な実装のうちの特定の選択された様々な態様のみが記載される。当該分野において周知である他の詳細な事項は省略される。例えば、本明細書において開示された技術は、特定のコンピュータ言語又はプログラムに限定されない。例えば、本明細書において開示された技術は、C、C++、Java、又は、他の任意の好適なプログラミング言語で記述されたソフトウェアにより実行され得る。同様に、本明細書において開示された技術は、特定のコンピュータ又は特定のタイプのハードウェアに限定されない。好適なコンピュータ及びハードウェアの特定の詳細な事項は、周知であって、本明細書において詳細に説明する必要はない。
さらには、このようなソフトウェアをベースとした様々な実施形態(例えば、本明細書において開示される様々な方法のいずれかをコンピュータに実行させるための、コンピュータにより実行可能な複数の命令を含む)のいずれもが、好適な通信手段により、アップロードされ、ダウンロードされ、又は、リモート方式によりアクセスされ得る。このような好適な通信手段は、例えば、インターネット、ワールドワイドウェブ、イントラネット、ソフトウェアアプリケーション、ケーブル(光ファイバケーブルを含む)、磁気通信、電磁気通信(RF通信、マイクロ波通信、赤外線通信を含む)、電子通信、又は、他のそのような通信手段を含む。
以下、添付図面を参照して本発明の様々な実施形態を説明する。なお、図面において共通した構成要素には同一の参照符号が付されている。また、或る図面に表現された構成要素が、説明の便宜上、別の図面においては省略されていることがある点に留意されたい。さらにまた、添付した図面が必ずしも正確な縮尺で記載されている訳ではないということに注意されたい。
1.動画配信システムの構成
本開示の動画配信システムは、配信を行うユーザ(以下「配信者」という。)が、その端末を用いて、この配信者の動作に関する動作データに基づいて生成されたアバター(アバターオブジェクト)のアニメーションを含む第1動画、及び、この配信者の操作に関する操作データに基づいて生成されたゲームに関する第2動画を、通信回線を介して、動画を視聴するユーザ(以下「視聴者」という。)の端末に配信することを可能にするものである。以下、第1の例について、図1~図6を参照しながら説明する。
図1は、一実施形態に係る動画配信システムの構成の一例を示すブロック図である。図1に示すように、動画配信システム1は、図示しない通信回線(通信網)に接続される複数の端末10と、通信回線に接続される1又は複数のサーバ装置20と、を含むことができる。各端末10は、通信回線を介して、1又は複数のサーバ装置20に接続され得る。各端末10は、例えば、動画を配信するための端末(以後、配信者端末と称することがある)、又は、動画を視聴するための端末(以後、視聴者端末と称することがある)として動作する。なお、通信回線は、携帯電話網、無線ネットワーク(例えば、Bluetooth、(IEEE 802.11a/b/nといったような)WiFi、WiMax、セルラー、衛星、レーザー、赤外線、を介したRF接続)、固定電話網、インターネット、イントラネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、及び/又は、イーサネットネットワークを、これらに限定することなく含むことができる。
なお、図1には、複数の端末10として、例えば、配信者端末11(第1配信者端末11)、視聴者端末12A、視聴者端末12B、及び、視聴者端末12Cが示されているが、これら以外の1又はそれ以上の端末10が同様に用いられ得る。また、以後の説明において、視聴者端末12A~12Cを視聴者端末12と総称することがあるものとする。また、図1には、1又は複数のサーバ装置20として、例えば、サーバ装置20A及び20Bが示されているが、これら以外の1又はそれ以上のサーバ装置20が同様に用いられ得る。また、図示しない通信回線は、携帯電話網、無線LAN、固定電話網、インターネット、イントラネット及び/又はイーサネット(登録商標)等をこれらに限定することなく含むことができるものである。
さらに、一実施形態では、動画配信システム1は、通信網に接続される1又はそれ以上のスタジオユニット30を含むこともできる。各スタジオユニット30は、通信回線を介して、1又は複数のサーバ装置20又は複数の端末10に接続され得る。なお、図1には、1又はそれ以上のスタジオユニット30として、例えば、スタジオユニット30A及び30Bが示されているが、これら以外の1又はそれ以上のスタジオユニット30が同様に用いられ得る。各スタジオユニット30は、後述する端末10又はサーバ装置20と同様の機能を有することが可能なものである。
以下、説明を簡単にするために、1又は複数のサーバ装置20が、各端末10との間において、動画等の送受信を行う場合に着目する。これに代えて又はこれに加えて、後述するように、1又は複数のサーバ装置20が、各スタジオユニット30との間において、動画等の送受信を行うことも可能である。さらに、これに代えて又はこれに加えて、後述するように、スタジオユニット30が、各端末10との間において、動画等の送受信を行うことも可能である。
1-1.端末10
複数の端末10は、例えば、複数の配信者端末(例えば、配信者端末11および第2配信者端末(図示省略))と、1又はそれ以上の視聴者端末12(例えば、視聴者端末12A~12C)と、を含む。なお、配信者端末11に対応する配信者を第1配信者と称することがある。各端末10は、例えば、少なくとも一部の特徴が共通する構成を有しうる。
端末10が、配信者端末11として動作する場合には、インストールされた動画配信用アプリケーション(ミドルウェア、又は、アプリケーションとミドルウェアとを組み合わせたものであってもよい。以下同様。)を実行することにより、その配信者の動作に関する動作データを取得し、取得したデータに従って変化させた仮想的なキャラクタ(アバター/アバターオブジェクト)のアニメーションを含む第1動画を、通信回線を介してサーバ装置20(配信サーバシステム20A1)に送信することができる。当該第1動画は、サーバ装置20(配信サーバシステム20A1)により通信回線を介して、動画を受信するための端末(視聴者端末12)に配信される。視聴者端末12は、インストールされた動画視聴用アプリケーション(ミドルウェア、又は、アプリケーションとミドルウェアとを組み合わせたものであってもよい。以下同様。)を実行することにより、動画を受信することができる。
また、各端末10は、インストールされた動画配信用アプリケーションに組み込まれたブラウザ機能を実行することにより、及び/又は、インストールされたウェブブラウザアプリケーションを実行することにより、サーバ装置20(ウェブサーバ装置20B)からウェブページ(HTMLドキュメント)を受信し、このウェブページに含まれたゲームプログラムを実行することができる。これにより、各端末10は、サーバ装置20(ウェブサーバ装置20B)からウェブページ(例えば、HTMLドキュメント、幾つかの例では、JavaScript又はPHPコードといったような実行可能なコードを符号化したHTMLドキュメント)を受信することができる。各端末10は、このゲームプログラムを実行することにより、その配信者の操作に関する操作データに基づいて少なくとも1つのゲームオブジェクトを動作させた第2動画を生成することができる。ユーザは、自身の端末10を利用してブラウザを起動し、サーバ装置20からゲーム描画データを受信し、ゲーム画面(WebView)を介して、ゲームを視聴することができる。
また、端末10が、配信者端末11として動作する場合には、このように生成した第2動画を、上記動画配信用アプリケーションを実行することにより、通信回線を介してサーバ装置20(配信サーバシステム20A)に送信することができる。このような第2動画もまた、サーバ装置20(配信サーバシステム20A)により通信回線を介して、インストールされた動画視聴用アプリケーションを実行する、動画を受信するための端末(視聴者端末12)に配信される。
また、端末10が、配信者端末11として動作する場合には、上記動画配信用アプリケーションを実行することにより、(配信者端末11により配信された)第2動画を視聴する視聴者端末12からサーバ装置20(配信サーバシステム20A)を介して、この配信者に対してギフトを付与する旨を示すギフトデータ、及び/又は、この配信者に対してコメントを送信する旨を示すコメントデータを受信することができる。
また、端末10が、視聴者端末12として動作する場合には、インストールされた動画視聴用アプリケーションを実行することにより、配信者端末11により配信された第1動画及び/又は第2動画を、サーバ装置20(配信サーバシステム20A)を介して受信することができる。
また、端末10が、視聴者端末12として動作する場合には、動画視聴用アプリケーションを実行することにより、配信者に対してギフトを付与する旨を示すギフトデータ、及び/又は、この配信者に対してコメントを送信する旨を示すコメントデータを、サーバ装置20(配信サーバシステム20A)を介して、配信者端末11に送信することができる。
なお、上述した動画配信用アプリケーション及び動画視聴用アプリケーションは、統合された1つのアプリケーションとして、又は、それぞれ別々のアプリケーションとして、各端末10にインストール及び実行されるものとすることができる。
各端末10は、このような動作を実行することができる任意の端末であって、スマートフォン、タブレット、及び/又はパーソナルコンピュータ等を、これらに限定することなく含むことができるものである。また、各端末10は、例えば、コラボ配信(共同配信/コラボレーション配信)を行うことができるように構成される。
なお、以下の説明において、コラボ配信とは、例えば、複数の配信者が共同して各々有する端末を利用して配信を行うものである。なお、当該コラボ配信は、例えば、第1配信者のアバター及び他の配信者のアバターを用いた動画配信を含みうる。また、コラボ配信を行う場合において、例えば、複数の配信者の各々は区別されて扱われうる。例えば、複数の配信者のうち一の配信者が、例えば、ホストとして、複数の配信者のうち残りの配信者が、例えば、ゲストとして扱われうる。具体的には例えば、2人の配信者(第1配信者及び第2配信者)がコラボ配信を実行する場合において、第1配信者は、ホストとして扱われ、第2配信者は、ゲストとして扱われうる。この場合において、コラボ配信を終了すると、第1配信者は配信を継続し、第2配信者は当該配信を継続することができなくなる。なお、第2配信者は当該配信を継続することができなくなった場合において、例えば、視聴者として当該配信を視聴できるように構成されてもよい。
また、複数の配信者の各々が区別されて扱われる場合には、例えば、ホストが操作する端末の表示画面に表示される表示内容は、ゲストが操作する端末の表示画面に表示される表示内容と異なるように構成されてもよい。また、複数の配信者の各々が区別されて扱われる場合には、例えば、ホストが操作可能なコマンドは、ゲストが操作可能なコマンドよりも多く構成されてもよい。
本件出願において用いられる「ギフト」という用語は、「トークン(token)」という用語と同様の概念を意味する。したがって、「ギフト」という用語を「トークン(token)」という用語に置き換えて、本件出願に記載された技術を理解することも可能である。
1-2.サーバ装置20
図1に示されるように、サーバ装置20は、例えば、配信サーバシステム20A及びウェブサーバ装置20Bを含む。
配信サーバシステム20Aは、配信者端末11により送信された第1動画及び/又は第2動画を、視聴者端末12に配信することができる。また、配信サーバシステム20Aは、視聴者端末12により送信された、或る配信者に対してギフトを付与する旨を示すギフトデータ、及び/又は、或る配信者に対してコメントを送信する旨を示すコメントデータを、配信者端末11に送信することができる。
このような動作を実行するために、配信サーバシステム20Aは、一実施形態では、相互に通信回線(図示しない無線回線及び/又は有線回線を含む)を介して接続された、配信サーバ装置20A1と、データベース(DB)サーバ装置20A2と、ゲームAPIサーバ装置20A3と、を含むことができる。
配信サーバ装置20A1は、配信者端末11により送信された第1動画及び/又は第2動画を各端末10に配信することができる。さらに、配信サーバ装置20A1は、各視聴者端末12により送信されたギフトデータ及び/又はコメントデータをDBサーバ装置20A2に格納することができる。
DBサーバ装置20A2は、配信サーバ装置20A1から受信したギフトデータ及び/又はコメントデータを格納し、ゲームAPIサーバ装置20A3により問い合わせを受けたギフトデータ及び/コメントデータを、読み出してゲームAPIサーバ装置20A3に送信することができる。
ゲームAPIサーバ装置20A3は、配信者端末11からギフトデータ及び/又はコメントデータについて問い合わせを受けたときに、配信者端末11に対するギフトデータ及び/又はコメントデータをDBサーバ装置20A2から読み出してその配信者端末11に送信することができる。
なお、図1に示した例では、負荷を分散すること等を目的として、配信サーバシステム20Aが、配信サーバ装置20A1、DBサーバ装置20A2、及び、ゲームAPIサーバ装置20A3、を有する3つのサーバ装置を有する構成が示されている。しかし、これら3つのサーバ装置のうちの少なくとも1つのサーバ装置が残りのサーバ装置のうちの少なくとも一方と統合されるようにしてもよい。
1-3.スタジオユニット30
スタジオユニット30は、演者(配信者)が動画を配信する場所であるスタジオ、部屋、ホール等に配置され得る。スタジオユニット30は、上述したように、端末10及び/又はサーバ装置20と同様の機能を果たすことが可能なものである。なお、図1においては、スタジオユニット30と他の装置との間でデータを通信可能なことを破線により示しており、それ以外の装置間でデータを通信可能なことを実線により示している。
2.各装置のハードウェア構成
次に、端末10、サーバ装置20及びスタジオユニット30の各々が有するハードウェア構成の一例について説明する。
2-1.端末10のハードウェア構成
各端末10のハードウェア構成例について図2を参照して説明する。図2は、図1に示した端末10(サーバ装置20)のハードウェア構成の一例を模式的に示すブロック図である(なお、図2において、括弧内の参照符号は、後述するようにサーバ装置20に関連して記載されたものである。)。
図2に示すように、各端末10は、例えば、中央処理装置14と、主記憶装置15と、入出力インターフェース装置16と、入力装置17と、補助記憶装置18と、出力装置19と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
中央処理装置14は、「CPU」と称されるものであり、主記憶装置15に記憶されている命令及びデータに対して演算を行い、その演算の結果を主記憶装置15に記憶させるものである。さらに、中央処理装置14は、入出力インターフェース装置16を介して、入力装置17、補助記憶装置18及び出力装置19等を制御することができる。端末10は、1又はそれ以上のこのような中央処理装置14を含むことが可能である。
主記憶装置15は、「メモリ」と称されるものであり、入力装置17、補助記憶装置18及び通信回線30(サーバ装置20等)から、入出力インターフェース装置16を介して受信した命令及びデータ、並びに、中央処理装置14の演算結果を記憶するものである。主記憶装置15は、揮発性メモリ(例えば、レジスタ、キャッシュ、ランダムアクセスメモリ(RAM))、不揮発性メモリ(例えば、リードオンリーメモリ(ROM)、EEPROM、フラッシュメモリ)、及び、ストレージ(例えば、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、磁気テープ、光学媒体)、といったようなコンピュータにより読み取り可能な媒体を、これらに限定することなく含むことができる。容易に理解されるように、「コンピュータにより読み取り可能な記録媒体」という用語は、変調されたデータ信号すなわち一時的な信号といったような送信媒体ではなく、メモリ及びストレージといったようなデータストレージのための媒体を含むことができる。
補助記憶装置18は、主記憶装置15よりも大きな容量を有する記憶装置である。上述した特定のアプリケーション(動画配信用アプリケーション、動画視聴用アプリケーション等)やウェブブラウザアプリケーション等を構成する命令及びデータ(コンピュータプログラム)を記憶することができる。さらに、補助記憶装置18は、中央処理装置14により制御されることにより、これらの命令及びデータ(コンピュータプログラム)を、入出力インターフェース装置16を介して、主記憶装置15に送信することができる。補助記憶装置18は、磁気ディスク装置及び/又は光ディスク装置等をこれらに限定することなく含むことができる。
入力装置17は、外部からデータを取り込む装置であり、タッチパネル、ボタン、キーボード、マウス及び/又はセンサ等をこれらに限定することなく含むものである。
出力装置19は、ディスプレイ装置、タッチパネル及び/又はプリンタ装置等をこれらに限定することなく含むことができる。
このようなハードウェア構成にあっては、中央処理装置14が、補助記憶装置18に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置15にロードし、ロードした命令及びデータを演算することにより、入出力インターフェース装置16を介して出力装置19を制御し、或いはまた、入出力インターフェース装置16及び通信回線2を介して、他の装置(例えばサーバ装置20、他の端末10及び/又はスタジオユニット30等)との間で様々なデータの送受信を行うことができる。
これにより、端末10は、インストールされた特定のアプリケーションを実行することにより、例えば以下の(a)~(d)に例示する動作のうちの少なくとも1つの動作を実行することができる。
(a)第1動画及び/又は第2動画を配信するための適切な動作
(b)他の端末10により自端末10宛てに送信されたギフトデータ及び/又はコメントデータを受信するための適切な動作
(c)他の端末10により配信された第1動画及び/又は第2動画を受信するための適切な動作
(d)他の端末10に対してギフトデータ及び/又はコメントデータを送信するための適切な動作
なお、端末10は、中央処理装置14に代えて又は中央処理装置14とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
2-2.サーバ装置20のハードウェア構成
各サーバ装置20のハードウェア構成例について同じく図2を参照して説明する。各サーバ装置20(配信サーバ装置20A1、DBサーバ装置20A2、ゲームAPIサーバ装置20A3、ゲームサーバ装置20B1、及び、コンテンツサーバ装置20B2の各々)のハードウェア構成としては、例えば、上述した各端末10のハードウェア構成と同一のものを用いることが可能である。したがって、各サーバ装置20が有する構成要素に対する参照符号は、図2において括弧内に示されている。
図2に示すように、各サーバ装置20は、例えば、中央処理装置24と、主記憶装置25と、入出力インターフェース装置26と、入力装置27と、補助記憶装置28と、出力装置29と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
中央処理装置24、主記憶装置25、入出力インターフェース装置26、入力装置27、補助記憶装置28、及び、出力装置29は、それぞれ、上述した各端末10に含まれる、中央処理装置14、主記憶装置15、入出力インターフェース装置16、入力装置17、補助記憶装置18及び出力装置19と略同一なものとすることができる。
このようなハードウェア構成にあっては、中央処理装置24が、補助記憶装置28に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置25にロードし、ロードした命令及びデータを演算することにより、入出力インターフェース装置26を介して出力装置29を制御し、或いはまた、入出力インターフェース装置26及び通信回線2を介して、他の装置(例えば各端末10及び/又はスタジオユニット30等)との間で様々なデータの送受信を行うことができる。
これにより、サーバ装置20は、配信者端末11により送信された第1動画及び/又は第2動画を、各視聴者端末12に配信するための適切な動作、各視聴者端末12により或る配信者端末11宛てに送信されたギフトデータ及び/又はコメントデータを、その配信者端末11に送信するための適切な動作等(後に詳述する様々な動作を含む)を実行することができる。
なお、サーバ装置20は、中央処理装置24に代えて又は中央処理装置24とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
2-3.スタジオユニット30のハードウェア構成
スタジオユニット30は、上述したように、端末10及び/又はサーバ装置20と同様の機能を果たすことが可能なものである。したがって、スタジオユニット30は、上述した端末10又はサーバ装置20と同様のハードウェア構成を有することができる。
3.各装置の機能
次に、端末10、サーバ装置20、及び、スタジオユニット30の各々が有する機能の一例について説明する。
3-1.端末10の機能
端末10の機能の一例について図3を参照して説明する。図3は、図1に示した端末10の機能の一例を模式的に示すブロック図である。
図3に示すように、端末10は、例えば、第1動画生成部100と、第2動画生成部110と、通信部120と、表示部130と、記憶部140と、ユーザインターフェース部150と、ギフト処理部160と、を含むことができる。
(1)第1動画生成部100
第1動画生成部100は、配信者の動作に関する動作データに基づいて、この配信者のアバターオブジェクトのアニメーションを含む第1動画を生成することができる。これを実現するために、第1動画生成部100は、例えば、取得部102と、処理部104と、を含むことができる。なお、例えば、動作データは、モーションキャプチャシステムを用いて取得され得る。本開示による利益を有する当業者により容易に理解されるように、本件出願において開示される装置及び方法とともに使用され得る幾つかの例の適切なモーションキャプチャシステムは、パッシブマーカ若しくはアクティブマーカを用いた又はマーカを用いない光学式モーションキャプチャシステムと、慣性式及び磁気式の非光学式システムとを含む。モーションデータは、モーションデータを動画又は他のイメージデータに変換するコンピュータに結合された、(CCD(電荷結合デバイス)又はCMOS(相補型金属酸化膜半導体)イメージセンサといったような)イメージキャプチャ装置を用いて取得され得る。
取得部102は、配信者の身体に関するデータを取得する1又はそれ以上の第1のセンサ102aと、配信者により発せられた発話及び/又は歌唱に関する音声データを取得する1又はそれ以上の第2のセンサ102bと、を含むことができる。
第1のセンサ102aは、例えば、カメラ102cと接続される。カメラ102cは、例えば、可視光線を撮像するRGBカメラと、近赤外線を撮像する近赤外線カメラと、を含むことができる。カメラ102cは、例えば、例えばiphone X(登録商標)のトゥルーデプス(True Depth)カメラに含まれたものを用いることが可能である。第2のセンサ102bは、例えば、マイクロフォン102dに接続され、マイクロフォン102dに入力される音声を取得して記録する。なお、第1のセンサ102a及びカメラ102cが一の構成としても設けられていてもよい。また、第2のセンサ102b及びマイクロフォン102dが一の構成としても設けられていてもよい。
まず、第1のセンサ102aに関して、取得部102は、配信者の身体に近接して配置された第1のセンサ102aを用いて配信者の身体を撮像する。これにより、取得部102は、RGBカメラにより取得された画像をタイムコード(取得した時間を示すコード)に対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。さらに、取得部102は、近赤外線カメラにより取得された所定数(例えば51個)の深度を示す数値(例えば浮動小数点の数値)を上記タイムコードに対応付けて単位時間にわたって記録したデータ(例えばTSVファイル)を生成することができる。なお、TSVファイルとは、データ間をタブで区切って複数のデータを記録する形式のファイルである。
近赤外線カメラに関して、具体的には、ドットプロジェクタがドット(点)パターンを形成する赤外線レーザーを演者の身体に放射し、近赤外線カメラが、演者の身体に投影され反射した赤外線ドットを捉え、このように捉えた赤外線ドットの画像を生成する。取得部102は、予め登録されているドットプロジェクタにより放射されたドットパターンの画像と、近赤外線カメラにより捉えられた画像とを比較して、両画像における各ポイント(各特徴点)(例えば51個のポイント・特徴点の各々)における位置のずれを用いて各ポイント(各特徴点)の深度(各ポイント・各特徴点と近赤外線カメラとの間の距離)を算出することができる。取得部102は、このように算出された深度を示す数値を上記のようにタイムコードに対応付けて単位時間にわたって記録したデータを生成することができる。
次に、第2のセンサ102bに関して、取得部102は、配信者の身体に近接して配置された第2のセンサ102bを用いて配信者により発せられた発話及び/又は歌唱に関する音声を取得する。これにより、取得部100は、タイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。一実施形態では、取得部102は、第1のセンサ102aを用いて配信者の身体に関するデータを取得することと同時に、第2のセンサ102bを用いて配信者により発せられた発話及び/又は歌唱に関する音声データを取得することができる。この場合には、取得部102は、RGBカメラにより取得された画像と、第2のセンサ102bを用いて配信者により発せられた発話及び/又は歌唱に関する音声データとを、同一のタイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。
取得部102は、このように生成した、配信者の身体に関するデータ(MPEGファイル及びTSVファイル等)、及び/又は、配信者により発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)を、処理部104に出力することができる。
なお、ここでは、第1のセンサ102aがRGBカメラ及び赤外線カメラを含む場合について説明したが、第1のセンサ102aは、例えば、以下の(A)~(C)のうちのいずれかを含むことも可能である。
(A)赤外線レーザーにより放射され演者の顔に反射した赤外線を検出するカメラ
(B)可視光線を撮像する複数のRGBカメラ
(C)可視光線を撮像する単一のカメラ
上記(A)の場合には、取得部102は、上述したものと同様の手法により、配信者の身体における各特徴点について深度を算出することができる。上記(B)の場合には、取得部102は、複数のRGBカメラにより撮像された複数の画像を用いて、配信者の身体における各特徴点について奥行(深度)を計算することができる。上記(C)の場合には、取得部102は、単一のカメラにより撮像された画像から、配信者の身体における各特徴点の奥行(深度)を、ディープラーニング等を利用して算出することができる。また、上記(C)の場合には、取得部102は、単一のカメラにより撮像された画像に対する分析処理(画像処理等)により、演者の身体における各特徴点の奥行(深度)を算出してもよい。
処理部104は、取得部102からの、配信者の身体に関するデータに基づいて、仮想的なキャラクタ(配信者のアバターオブジェクト)のアニメーションを含む動画を生成することができる。仮想的なキャラクタの動画自体については、処理部104は、図示しないキャラクタデータ記憶部に記憶された様々なデータ(例えば、ジオメトリデータ、ボーンデータ、テクスチャデータ、シェーダデータ及びブレンドシェイプデータ等)を用いて、図示しないレンダリング部にレンダリングを実行させることにより、仮想的なキャラクタの動画を生成することができる。
さらに、処理部104は、取得部102からの配信者の身体に関するデータ(演者の身体における各特徴点の深度に関するデータ)を用いてアバターオブジェクトの表情等を変化させた動画(例えば、アバターオブジェクトの表情が演者の口及び両目の動きに同期して変化した動画、すなわち、アバターオブジェクトの表情が演者の顔に対してリップシンク及び視線追従して変化した動画)を、様々な周知な技術を利用して生成することができる。
なお、配信者の動作に関する動作データに基づいてこの配信者のアバターオブジェクトのアニメーションを含む第1動画を生成するために、他の任意の周知な技術を利用することも可能である。
(2)第2動画生成部110
第2動画生成部110は、ウェブサーバ装置20Bから受信したウェブページを用いて配信者の操作に関する操作データに基づいてゲームに関する第2動画を生成することができる。
具体的には、第2動画生成部110は、ウェブサーバ装置20Bから受信したウェブページに組み込まれたゲームプログラムを実行する。これにより、第2動画生成部110は、ユーザインターフェース部150により入力された配信者の操作を示す操作データに基づいて、少なくとも1つのゲームオブジェクトが動作するゲームに関する第2動画(ゲーム動画)を描画することができる。なお、例えば、操作データは、次のデータのうちの1つ又はそれ以上を含むことができる。
・配信者がタッチパッドディスプレイをどのようにスワイプしたかを示すデータ
・配信者がいずれのオブジェクトをタップ又はクリックしたかを示すデータ
・配信者がタッチパッドディスプレイをどのようにドラッグしたかを示すデータ
・他のそのような操作データ
さらに、第2動画生成部110は、第2動画を視聴する各視聴者の視聴者端末12により生成され、配信者端末11に対して送信されたギフトデータに基づいて、第2動画に表示させるべき少なくとも1つのゲームオブジェクトを制御することができる。なお、ギフトデータとは、上記配信者に対してギフトを付与する旨を示すデータである。
(3)通信部120
通信部120は、動画の配信及び/又は視聴に必要とされる様々な情報を、配信サーバシステム20A及びウェブサーバ装置20Bとの間において通信することができる。例えば、通信部120は、端末10が配信者端末11として動作する場合には、ウェブサーバ装置20Bにアクセスして、ゲームの実行等に必要とされるゲームプログラムを含むウェブページ(HTMLドキュメント)等を受信することができる。また、通信部120は、端末10が配信者端末11として動作する場合には、第1動画及び/又は第2動画を配信サーバシステム20Aに送信し、この配信者宛てに送信されたギフトデータ及び/又はコメントデータを配信サーバシステム20Aから受信することができる。
さらに、通信部120は、端末10が視聴者端末12として動作する場合には、配信者端末11により送信された第1動画及び/又は第2動画を配信サーバシステム20Aから受信し、配信者に対してギフトデータ及び/又はコメントデータを配信サーバシステム20Aに送信することができる。
(4)表示部130
表示部130は、動画の配信及び/又は視聴に必要とされる様々なデータを表示することができる。例えば、表示部130は、配信される第1動画及び/又は第2動画、及び/又は、受信した第1動画及び/又は第2動画等を、表示することができる。
(5)記憶部140
記憶部140は、動画の配信及び/又は視聴に必要とされる様々なデータを記憶することができる。
(6)ユーザインターフェース部150
ユーザインターフェース部150は、動画の配信及び/又は視聴に必要とされる様々なデータをユーザの操作を介して入力することができる。例えば、ユーザインターフェース部150は、ゲームの実行に際して配信者の操作の内容を示す操作データを配信者から入力して第2動画生成部110に出力することができる。
(7)ギフト処理部160
ギフト処理部160は、動画の配信及び/又は視聴に関して送受信されるギフトデータを処理することができる。例えば、ギフト処理部160は、端末10が配信者端末11として動作する場合には、この配信者宛てに送信されたギフトデータを処理することができる。また、ギフト処理部160は、端末10が視聴者端末12として動作する場合には、この視聴者が送信すべきギフトデータを処理することができる。例えば、ギフトデータ(ギフトを特定する識別情報)が視聴者端末12から送信された場合には、ギフトデータは、サーバ20を介して、対象の配信者端末11に送信される。そして、対象の配信者端末11は、視聴者端末12から送信されたギフトデータから描画データを読み出してギフトに関する表示を表示部130において表示する。
3-2.サーバ装置20の機能
サーバ装置20の機能の一例について図4を参照して説明する。図4は、図1に示したサーバ装置20の機能の一例を模式的に示すブロック図である。図4に示すように、サーバ装置20は、例えば、通信部200と、記憶部210と、ギフト処理部220と、判定部230と、を含む。
(1)通信部200
通信部200は、動画の配信及び/又は視聴に必要とされる様々なデータを、配信者端末11及び/又は視聴者端末12との間において通信することができる。例えば、サーバ装置20は、配信サーバシステム20Aとして動作する場合には、第1動画及び/又は第2動画を、配信者端末11から受信して各視聴者端末12に配信すること等ができる。また、サーバ装置20は、ウェブサーバ装置20Bとして動作する場合には、アクセスしてきた配信者端末11に対して、ゲームプログラムが組み込まれたウェブページを送信すること等ができる。
(2)記憶部210
記憶部210は、例えば、動画の配信及び/又は視聴に必要とされる様々なデータを記憶する。記憶部210が記憶するデータは、例えば、「ギフトデータ」に関するデータを含む。記憶部210に記憶されているデータは、例えば、端末10が配信を実行し及び/又は当該配信の視聴を行う毎に更新される。
「ギフトデータ」とは、例えば、ギフトの数、ギフトの価値、ギフトの種類、ギフトのレベル、等、を所定のテーブルにしたがって数値化し、各ギフトの数値の総計を記載されている。また、例えば、「ギフトデータ」は、視聴者端末12から配信者端末11に対してギフトを付与(送付)した時間、頻度、および、回数のうち少なくともいずれかを含みうる。なお、ギフトの数とは、視聴者端末12が配信者端末11に対して付与した数である。ここで、「ギフトの価値」とは、例えば、ギフトが有償である場合には、そのギフトの価格が価値に相当し、ギフトが無償である場合には、そのギフトの消費ポイントが価値に相当する。また、「ギフトの価値」とは、例えば、そのギフトの使用可能時間、そのギフトの表示時間、及び/又は、そのギフトを同時に使用可能な人数、ゲーム内で入手できるギフトの総数に基づいて決定されるものであってもよい。なお、そのギフトの使用可能時間が短いことは、そのギフトの価値が高いことを意味する。また、そのギフトの使用可能時間が長いことは、そのギフトの価値が低いことを意味する。また、そのギフトの表示時間が長いことは、そのギフトの価値が高いことを意味する。また、そのギフトの表示時間が短いことは、そのギフトの価値が低いことを意味する。また、そのギフトを同時に使用可能な人数が少ないことは、そのギフトの価値が高いことを意味する。また、そのギフトを同時に使用可能な人数が多いことは、そのギフトの価値が低いことを意味する。また、ゲーム内で入手できるギフトの総数が少ないことは、そのギフトが珍しく価値が高いことを意味する。また、ゲーム内で入手できるギフトの総数が多いことは、そのギフトが珍しく価値が珍しくなく価値が低いことを意味する。
(3)ギフト処理部220
ギフト処理部220は、各視聴者から各配信者宛てに送信されたギフトデータを処理することができる。なお、サーバ装置20が、ウェブサーバ装置20Bとして動作する場合には、ギフト処理部220を省略してもよい。
(4)判定部230
判定部230は、種々の条件を判定するものであり、例えば、後述の図5におけるS314などの処理を行う。
3-3.スタジオユニット30の機能
スタジオユニット30は、上述したように、端末10及び/又はサーバ装置20と同様の機能を果たすことが可能なものである。したがって、スタジオユニット30は、図3を参照して説明した端末10の機能、及び/又は、図4を参照して説明したサーバ装置30の機能を有することが可能なものである。
4.動画配信システム1の全体的な動作
次に、上記構成を有する動画配信システム1においてなされる全体的な動作について、図5を参照して説明する。図5は、図1に示した動画配信システム1において行われる動作の一例を示すフローチャートである。以下、図5に記載のS302~S316の処理について説明する。
S302において、第1配信者の操作に従って、配信者端末11が動画配信用アプリケーションを起動して実行する。なお、以降の説明において、配信者端末11を単に配信者端末11と称することがあるものとする。
S304において、配信者端末11は、第1動画を配信するのに用いられるデータを生成する。当該データは、例えば、視聴者端末12においてレンダリングを行わせるためのデータである。また、第1動画は、第1配信方式で配信される。第1配信方式は、例えば、視聴者端末12においてレンダリングを行わせるデータを視聴者端末12に配信する配信方式である。配信者端末11は、例えば、視聴者端末12においてレンダリングを行わせるデータを配信サーバシステム20Aの配信サーバ装置20A1に送信する。配信サーバ装置20A1は、配信者端末11から受信したデータを、動画視聴用アプリケーションを実行している視聴者端末12に配信する。視聴者端末12は、配信サーバ装置20A1から受信したデータに基づいてレンダリング処理を行うことで、視聴者端末12の表示部130に第1動画を表示する。なお、視聴者端末12は、レンダリングを行うのに用いられるデータを配信者端末11から受信してレンダリング処理を行ってもよい。
S306において、第1配信者が、例えば、配信者端末11の表示部130に表示された「ゲーム」というアイコン(図示省略)を選択すると、配信者端末11は、動画配信用アプリケーションに搭載されたブラウザ機能を実行する。なお、サーバ装置20は、前記第1動画の配信を開始している場合に前記ゲームを実行する要求の有無を判定する第1判定を行い、当該第1判定において前記要求があると判定された場合に、配信者端末11がS308の処理を行わせる。ここで、当該要求は、例えば、配信者端末11からサーバ装置に送信されるデータに含まれるものである。当該要求は、例えば、上述した、第1配信者が配信者端末11の表示部130に表示された「ゲーム」というアイコン(図示省略)を選択することである。
S308において、配信者端末11は、動画配信用アプリケーションを実行した(すなわち、第1動画を各視聴者端末12に向けて配信した)状態で、ウェブサーバ装置20Bにアクセスすることにより、ゲームプログラムが組み込まれたHTML5ドキュメントを受信する。
S310において、配信者端末11は、受信したHTML5ドキュメントに組み込まれたゲームプログラムを実行することにより、ゲームに関する動画(第2動画)を生成することができる。
S312において、第1配信者は、配信者端末11を用いて第2動画を配信する。ここで、第2配信方式は、例えば、RTMP(Real Time Messaging Protocol)配信方式である。なお、S312において、配信サーバ装置20A1は、第1配信者端末11Aから受信した第2動画を、動画視聴用アプリケーションを実行している各視聴者端末12に配信する。これにより、各視聴者端末12の表示部130に第2動画が表示され得る。
S314において、サーバ装置20は、第2動画の配信が終了したか否かを判定する。サーバ装置20は、第2動画の配信が終了したか否かを判定した場合には(S314でYES)、S316の処理が行われる。一方、サーバ装置20は、第2動画の配信が終了したか否かを判定していないと判定した場合には(S314でNO)、S314の処理が繰り返される。
S316において、サーバ装置20は、第2配信方式から第1配信方式に切り替えて第1動画を配信する。なお、S316の処理後に、ゲームを実行する要求の有無の判定に関する第1判定を再度行ってもよい。
なお、S314でゲームを終了する条件は、例えば、配信者がゲームを終了する要求を指示することで配信者端末11から当該要求に対応するデータが送信された場合、当該ゲームにおける条件を満たす場合、及び、当該ゲームを開始してから所定時間が経過した場合、のいずれかの場合に終了する。ここで、上述の「ゲームにおける条件」とは、例えば、ゲーム内において用意されるステージにおいて操作するキャラクタとは別のキャラクタを倒す、当該ステージにおいて所定のアイテムを取得する、当該ステージにおいて操作するキャラクタを所定の位置まで移動させる、または、当該ステージにおいて操作するキャラクタのパラメータが所定値以上または所定値を下回る、等の条件である。なお、ゲーム内において用意されるステージにおいて操作するキャラクタとは別のキャラクタを倒す、当該ステージにおいて所定のアイテムを取得する、当該ステージにおいて操作するキャラクタを所定の位置まで移動させる、ことは、当該ステージをクリアすることに相当しうる。
以上のように、本開示によれば、第1動画の配信を開始している場合にゲームを実行する要求の有無を判定する第1判定を行い、第1判定において要求があると判定された場合に、第1配信方式及び第2配信方式のうち相対的に配信データ量が大きい第2配信方式により第2動画を配信することができる。このため、ゲームの配信中における配信方式及びゲームの配信前後における配信方式が相違する場合においても、配信方式を動的に切り替えることができる。したがって、従来よりも自由度の高い配信を可能にすることができる。
なお、第1配信方式は、視聴者端末12においてレンダリングを行わせるデータを視聴者端末12に配信する配信方式であることに限定されるものではない。また、第2配信方式は、RTMP配信方式であることに限定されるものではなく、例えば、視聴者端末12において配信者端末11に表示される表示画面に関する動画データを視聴者端末12に配信する配信方式であればよい。第1配信方式及び第2配信方式の各々は、例えば、図6に記載されている特徴を備えるものである。
図6は、第1配信方式及び第2配信方式の特徴の例を示すものである。図6に示されるように、第1配信方式による配信においては、第2配信方式による配信と比べて、配信データ量は小さく、配信遅延は小さい。すなわち、第2配信方式による配信においては、第1配信方式による配信と比べて、配信データ量は多く、配信遅延は大きい。また、第1配信方式による配信においては、端末10での表示データの生成モジュールが必要であり、端末10側でのレンダリング処理が必要であるのに対し、第2配信方式による配信においては、端末10での表示データの生成モジュールは不要であり、端末10側でのレンダリング処理は不要である。また、第1配信方式による配信の配信データは、モーションデータを含むのに対し、第2配信方式による配信の配信データは、モーションデータを含まない。また、第1配信方式による配信においては、端末10で表示する内容をユーザ毎に変更することができるのに対し、第2配信方式による配信においては、端末10で表示する内容はユーザ毎に同一である。
図7は、トークンを送信及び使用して計算環境においてビデオをレンダリングすることを含む、本明細書において説明される実施形態、技法、及び、技術が実装されうる適切な計算環境1400の一般化された例を示す。 例えば、計算環境1400は、本明細書で記載されるように、端末装置(あるいは配信者、あるいは視聴者)、又は、配信サーバシステムなどのうちいずれかを実装することができる。
技術が、多様である汎用又は専用の計算環境で実装されうるため、計算環境1400は、技術の使用又は機能の範囲に関していかなる制限を示唆することを意図するものではない。例えば、本明細書において開示された技術は、様々な携帯用の装置、様々なマルチプロセッサシステム、様々なマイクロプロセッサベース又はプログラム可能な家庭用電化製品、様々なネットワークPC、様々なミニコンピュータ、様々なメインフレームコンピュータ、などを含む、他の様々なコンピュータシステム構成で実装されてもよい。本明細書において開示される技術は、通信ネットワークを通じてリンクされる遠隔処理装置によってタスクが実行される分散計算環境で実施されてもよい。分散計算環境においては、プログラムモジュールはローカル及びリモートの両方のメモリストレージ装置に配置されてもよい。
図7を参照して、計算環境1400は、少なくとも1つの中央処理装置1410及びメモリ1420を含む。図7では、この最も基本的な構成1430は、破線内に含まれている。中央処理装置1410は、コンピュータにより実行可能な命令を実行し、中央処理装置1410は、実プロセッサ又は仮想プロセッサであってもよい。マルチプロセッシングシステムでは、複数のプロセッシングユニットが、コンピュータにより実行可能な命令を実行して処理力を向上させるため、複数のプロセッサは、同時に稼働できる。メモリ1420は、揮発性メモリ(例えば、レジスタ、キャッシュ、RAM)、不揮発性メモリ(例えば、ROM、EEPROM、フラッシュメモリ等)、又は、これら2つの幾つかの組み合わせであってもよい。メモリ1420は、例えば、本明細書に記載の技術を実装することができる、ソフトウェア1480、様々な画像、及び、ビデオを格納する。計算環境は、追加の様々な機能を有していいてもよい。例えば、計算環境1400は、ストレージ1440、1又は複数の入力装置1450、1又は複数の出力装置1460、及び、1又は複数の通信接続1470を含む。バス、コントローラ、又は、ネットワーク、などの相互接続機構(図示なし)は、計算環境1400の様々なコンポーネントを相互接続する。通常、オペレーティングシステムソフトウェア(図示なし)は、計算環境1400で実行される他のソフトウェア用にオペレーティング環境を提供し、及び、計算環境1400の様々なコンポーネントの様々なアクティビティを調整する。
ストレージ1440は、脱着可能であってもよいし、あるいは、脱着可能でなくてもよく、磁気ディスク、磁気テープ若しくはカセット、CD-ROM、CD-RW、DVD、又は、情報を記憶するために用いられ且つ計算環境1400内にアクセスされうる他のいかなる媒体を含む。 ストレージ1440は、本明細書で記載される技術を実装するために用いられうる、ソフトウェア1480、プラグインデータ、及び、メッセージ、のための命令を格納する。
1又は複数の入力装置1450は、キーボード、キーパッド、マウス、タッチスクリーンディスプレイ、ペン、若しくは、トラックボールなどのタッチ入力装置、音声入力装置、走査装置、又は、計算環境1400に入力を提供する別の装置、であってもよい。オーディオの場合、1又は複数の入力装置1450は、アナログ若しくはデジタル形式のオーディオ入力を受け入れるサウンドカード若しくは類似の装置、又は、様々なオーディオサンプルを計算環境1400に提供するCD-ROMリーダーであってもよい。1又は複数の出力装置1460は、ディスプレイ、プリンタ、スピーカ、CDライタ、又は、計算環境1400からの出力を提供する別の装置であってもよい。
1又は複数の通信接続1470は、通信媒体(例えば、接続ネットワーク)を介して別の計算エンティティへの通信を可能にする。通信媒体は、コンピュータにより実行可能な命令、圧縮グラフィックス情報、ビデオ、又は、変調データ信号に含まれる他のデータ、などの情報を伝達する。1又は複数の通信接続1470は、有線接続(例えば、メガビット若しくはギガビットイーサネット、インフィニバンド、又は、電気若しくは光ファイバー接続を介したファイバーチャネル)に限定されるものでなく、無線技術(例えば、Bluetooth、WiFi(IEEE 802.11a/b/n)、WiMax、セルラー、衛星、レーザー、赤外線、経由のRF接続)、並びに、本明細書において開示された様々なエージェント、様々なブリッジ、及び、宛先エージェントの様々なデータコンシューマ、にネットワーク接続を提供するための他の適切な様々な通信接続を含む。仮想ホスト環境においては、1又は複数の通信接続は、仮想ホストによって提供される仮想化されたネットワーク接続であってもよい。
本明細書において開示された様々な方法の様々な実施形態は、計算クラウド1490において、本明細書において開示された技術の全て又は一部を実装するコンピュータにより実行可能な複数の命令を用いて実行されうる。例えば、様々なエージェントは、計算環境において様々な脆弱性スキャン機能を実行可能である一方、エージェントプラットフォーム(例えば、ブリッジ)、及び、宛先エージェントデータのコンシューマサービスは、計算クラウド1490の内部に位置する様々なサーバで実行可能である。
コンピュータにより読み取り可能な媒体は、計算環境1400内でアクセスされうる任意の利用可能な媒体である。限定するものではなく、一例として、計算環境1400に関して、コンピュータにより読み取り可能な媒体は、メモリ1420及び/又はストレージ1440を含む。容易に理解されるように、コンピュータにより読み取り可能な媒体という用語は、メモリ1420及び記憶装置1440などのデータ記憶用の媒体を含み、変調された様々なデータ信号などの伝送媒体を含まない。
5.変形例
なお、以上の説明においては、図5に記載されているS302からS312を順に実行する例について記載したが、これに限定されない。例えば、図5に記載されているS302からS310の処理の少なくとも一部を省略してもよい。例えば、図5のフローチャートの開始後において、端末10の表示部130のホーム画面に表示される実行可能な少なくとも一のゲームのアイコンの中から一のゲームのアイコンを選択する操作を行うことで、S312に記載されている第2配信方式により第2動画を配信してもよい。これにより、第1動画の配信を行うことなく第2動画の配信を開始することができる。なお、当該一のゲームのアイコンを選択する操作を行ってS312に記載されている第2配信方式により第2動画を配信した後に第2動画の配信が停止されると、第2配信方式から第1配信方式に変更され、第1配信方式による配信が行われる。
また、例えば、サーバ装置20は、第1動画の配信が第1配信者のみによるものであるか否かを判定する第2判定を行い、当該第2判定の結果に応じて、配信者端末11の表示部130に表示される、ゲームを実行するアイコンを選択可能にするか否かを決定してもよい。例えば、当該第2判定において第1動画の配信が第1配信者のみによるものであると判定された場合に、当該アイコンが選択可能に構成される。また、例えば、当該第2判定において第1動画の配信が第1配信者及び他の配信者を含むと判定された場合に、当該アイコンが選択不能に構成される。
なお、第1配信方式による配信中において視聴者端末12から送信されるギフトに関連するデータが送信される場合には、例えば、当該ギフトに関連するデータは、第1配信方式による配信中において配信者端末11及び/又は視聴者端末12に配信されてもよい。
また、第2配信方式による配信中において視聴者端末12から送信されるギフトに関連するデータが送信される場合には、例えば、当該ギフトに関連するデータは、第2配信方式から第1配信方式に切り替えられた場合に、第1配信方式による配信中において配信者端末11及び/又は視聴者端末12に配信されてもよい。
また、ゲームにおいていずれかの視聴者の端末からギフトに関連するデータの送信を受け付ける場合には、第2配信方式による配信中において視聴者端末12から送信されるギフトに関連するデータは、例えば、第2配信方式による配信中において配信者端末11及び/又は視聴者端末12に配信されてもよい。
また、第1動画が音声を含んで第1配信方式によって配信される場合であって、視聴者端末12に対して音声が配信されている間に視聴者端末12の表示画面に第1動画のうちアニメーションを含まない表示がされている場合には、第1配信方式から第2配信方式に切り替えられる場合において視聴者端末12から報知を行わせてもよい。ここで、第1動画のうちアニメーションを含まない表示は、例えば、第1動画が再生中であるか否かを示す表示、及び、第1動画の配信が開始してからの経過時間を示す表示、のうち少なくともいずれかを含む。
また、上述の報知は、例えば、視聴者端末12からの音声出力及び/又は視聴者端末12の表示画面の表示であり、当該表示は、少なくとも一の文字及び/又は少なくとも一のキャラクタの表示であってもよい。当該少なくとも一の文字は、例えば、「一部ゲームでは音声が再生されません」であり、配信名の枠に表示される。
また、上述の報知は、例えば、第2動画の配信中において視聴者端末12に対して音声が配信されない旨を知らせるものである。
なお、第1配信方式から第2配信方式に切り替えられて第2動画を配信することで視聴者端末12に対して音声が配信されなくなった後、第2動画の配信を停止して第2配信方式から第1配信方式に切り替えられた場合には、音声が視聴者端末12に対して再び配信される構成であってもよい。
なお、上述した様々な実施形態では、配信者端末11がゲームに関する動画(第2動画)を生成するために、ゲームプログラムが組み込まれたHTML(特にHTML5)ドキュメントをウェブサーバ装置20Bから受信する場合について説明したが、これに限定されない。例えば、配信者端末11は、ウェブサーバ装置20Bからゲームプログラムが組み込まれたHTMLドキュメントをウェブサーバ装置20Bから受信する構成に代えて、インストールされた動画配信用アプリケーションを実行して図示しないデータサーバ装置から適切なデータを受信することによりゲームに関する画面を含む第2動画を生成することも可能である。
上述した様々な実施形態では、配信者端末11は、スマートフォン等であってもよいし、スタジオ等に設置される専用端末であってもよい。この場合には、配信サーバシステム20Aに含まれる、配信サーバ装置20a、DBサーバ装置20b及びゲームAPIサーバ装置20cのうちの少なくとも1つのサーバ装置が上記スタジオ等において上述した専用端末と併設されるようにしてもよい。
以上説明した様々な実施形態において、上述した各端末10の動作は、この端末10と同様の構成を有するスタジオユニット30によっても同様に実行可能なものである。この場合、図1に例示されたスタジオユニット30Aは、動画を配信するための端末10と同様の機能を有することが可能である。同様に、図1に例示されたスタジオユニット30Bは、動画を視聴するための端末10と同様の機能を有することが可能である。さらに、上述した各サーバ装置20の動作もまた、このサーバ装置20と同様の構成を有するスタジオユニット30によっても同様に実行可能なものである。
上述した様々な実施形態は、矛盾又は不都合が生じない限りにおいて相互に組み合わせて用いることが可能なものである。本明細書に開示された発明の原理が適用され得る多くの可能な実施形態を考慮すれば、例示された様々な実施形態は好ましい様々な例に過ぎず、特許請求の範囲に係る発明の技術的範囲をこれらの好ましい様々な例に限定すると考えるべきではない、と理解されたい。実際には、特許請求の範囲に係る発明の技術的範囲は、添付した特許請求の範囲により定められる。したがって、特許請求の範囲に記載された発明の技術的範囲に属するすべてについて、本発明者らの発明として、特許の付与を請求する。
また、本開示におけるゲームは、例えば、ロールプレイングゲーム、シミュレーションゲーム、シューティングゲーム、アクションゲーム、カードゲーム、麻雀、囲碁、オセロ、パズルゲーム、クイズゲーム、スポーツゲーム及び/又はボードゲーム等であり、コンピュータによって実行されるものである。
また、第2の例では、配信者端末11は、インストールされたゲームアプリケーションを実行して、ゲームサーバ装置としても機能する配信サーバシステム20Aにアクセスすることにより、実行しているゲームの画面をこの配信サーバシステム20Aを介して各視聴者の端末10に配信することも可能である。これら第1の例及び第2の例においても、配信者端末11は、上述した様々な実施形態と同様に、配信サーバシステム20Aから受信した視聴パラメータを用いて第2動画を生成することが可能である。
さらに、第3の例では、上記第1の例又は上記第2の例において、配信者端末11は、ゲーム画面の生成を行うことなく、第1配信者の操作データをウェブサーバ装置20B又は配信サーバシステム20Aに送信することができる。この場合には、ウェブサーバ装置20B又は配信サーバシステム20Aが操作データを用いてゲーム画面を生成し、配信サーバシステム20Aが、生成されたゲーム画面を含む第2動画を各視聴者の端末10に配信することができる。この第3の例では、ウェブサーバ装置20Bがゲーム画面を生成する場合には、ウェブサーバ装置20Bは、配信サーバシステム20Aから受信した視聴パラメータを用いることができる。配信サーバシステム20Aがゲーム画面を生成する場合には、配信サーバシステム20Aは、自身が管理している視聴パラメータを用いることができる。
このように、本開示の技術は、ゲーム配信の態様を従来よりも拡張することで興趣性を向上させるコンピュータプログラム、方法、及び、サーバ装置を提供することができる。
第1の態様に係るコンピュータプログラムは、「少なくとも1つのプロセッサにより実行されることにより、第1配信者の動作に関する動作データ又は該動作データに基づいて生成された前記第1配信者のアバターのアニメーションを含む第1動画と、前記第1配信者の操作に関する操作データに基づいて生成された、コンピュータにより実行されるゲームに関する第2動画とを、通信回線を介して少なくとも一の視聴者の視聴者端末に向けて配信し、前記第1動画の配信を開始している場合に前記ゲームを実行する要求の有無を判定する第1判定を行い、前記第1判定において前記要求があると判定された場合に、第1配信方式及び第2配信方式のうち相対的に配信データ量が大きい前記第2配信方式により前記第2動画を配信するように前記プロセッサを機能させる」ものである。
第2の態様に係るコンピュータプログラムは、上記第1の態様において「前記第1判定は、前記第1配信方式による前記第1動画の配信を開始している場合に行われる」ものである。
第3の態様に係るコンピュータプログラムは、上記第1の態様または上記第2の態様において「前記第1配信方式は、前記少なくとも一の視聴者の視聴者端末においてレンダリングを行わせるデータを前記少なくとも一の視聴者の視聴者端末に配信する配信方式である」ものである。
第4の態様に係るコンピュータプログラムは、上記第1の態様から上記第3の態様のいずれかにおいて「前記第2配信方式は、前記少なくとも一の視聴者の視聴者端末において前記第1配信者の配信者端末に表示される表示画面に関する動画データを前記少なくとも一の視聴者の視聴者端末に配信する配信方式である」ものである。
第5の態様に係るコンピュータプログラムは、上記第1の態様から上記第4の態様のいずれかにおいて「前記第2動画の配信を停止する場合には、前記第2配信方式から前記第1配信方式に切り替えるように前記プロセッサを機能させる」ものである。
第6の態様に係るコンピュータプログラムは、上記第1の態様から上記第5の態様のいずれかにおいて「前記第1判定において前記要求があると判定された場合に、前記第1動画の配信が前記第1配信者のみによるものであるか否かを判定する第2判定を行い、前記第2判定において前記第1動画の配信が前記第1配信者のみによるものであると判定された場合に、前記第2配信方式により前記第2動画を配信するように前記プロセッサを機能させる」ものである。
第7の態様に係るコンピュータプログラムは、上記第1の態様から上記第6の態様のいずれかにおいて「前記要求は、前記第1配信者の配信者端末からサーバ装置に送信されるデータに含まれる」ものである。
第8の態様に係るコンピュータプログラムは、上記第2の態様又は上記第2の態様に従属する上記第3の態様~上記第7の態様のいずれかにおいて「前記第1配信方式による配信中において前記少なくとも一の視聴者のいずれかの視聴者の端末から送信されるギフトに関連するデータは、前記第1配信方式による配信中において前記第1配信者の配信者端末及び/又は前記少なくとも一の視聴者の視聴者端末に配信される」ものである。
第9の態様に係るコンピュータプログラムは、上記第1の態様から上記第7の態様のいずれかにおいて「前記第2配信方式による配信中において前記少なくとも一の視聴者のいずれかの視聴者の端末から送信されるギフトに関連するデータは、前記第2配信方式から前記第1配信方式に切り替えられた場合に、前記第1配信方式による配信中において前記第1配信者の配信者端末及び/又は前記少なくとも一の視聴者の視聴者端末に配信される」ものである。
第10の態様に係るコンピュータプログラムは、上記第1の態様から上記第7の態様のいずれかにおいて「前記ゲームにおいて前記少なくとも一の視聴者のいずれかの視聴者の端末からギフトに関連するデータの送信を受け付ける場合には、前記第2配信方式による配信中において前記少なくとも一の視聴者のいずれかの視聴者の端末から送信されるギフトに関連するデータは、前記第2配信方式による配信中において前記第1配信者の配信者端末及び/又は前記少なくとも一の視聴者の視聴者端末に配信される」ものである。
第11の態様に係るコンピュータプログラムは、上記第2の態様又は上記第2の態様に従属する上記第3の態様~上記第10の態様のいずれかにおいて「前記第1動画が音声を含んで前記第1配信方式によって配信される場合であって、前記少なくとも一の視聴者の視聴者端末に対して前記音声が配信されている間に前記少なくとも一の視聴者の視聴者端末の表示画面に前記第1動画のうち前記アニメーションを含まない表示がされている場合には、前記第1配信方式から前記第2配信方式に切り替えられる場合において前記少なくとも一の視聴者の視聴者端末から報知を行わせるように前記プロセッサを機能させる」ものである。
第12の態様に係るコンピュータプログラムは、上記第11の態様において「前記第1動画のうち前記アニメーションを含まない表示は、前記第1動画が再生中であるか否かを示す表示、及び、前記第1動画の配信が開始してからの経過時間を示す表示、のうち少なくともいずれかを含む」ものである。
第13の態様に係るコンピュータプログラムは、上記第11の態様または上記第12の態様において「前記報知は、前記少なくとも一の視聴者の視聴者端末からの音声出力及び/又は前記少なくとも一の視聴者の視聴者端末の表示画面の表示であり、前記表示は、文字及び/又はキャラクタの表示である」ものである。
第14の態様に係るコンピュータプログラムは、上記第11の態様から上記第13の態様のいずれかにおいて「前記報知は、前記第2動画の配信中において前記少なくとも一の視聴者の視聴者端末に対して前記音声が配信されない旨を知らせるものである」ものである。
第15の態様に係るコンピュータプログラムは、上記第1の態様から上記第14の態様のいずれかにおいて「前記通信回線がインターネットを含む」ものである。
第16の態様に係るコンピュータプログラムは、上記第1の態様から上記第15の態様のいずれかにおいて「前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む」ものである。
第17の態様に係るコンピュータプログラムは、上記第1の態様から上記第16の態様のいずれかにおいて「前記少なくとも1つのプロセッサが、サーバ装置、スマートフォン、タブレット、携帯電話、または、パーソナルコンピュータに搭載される」ものである。
第18の態様に係る方法は、「コンピュータにより読み取り可能な命令を実行する少なくとも1つのプロセッサにより実行される方法であって、前記プロセッサが、前記命令を実行することにより、第1配信者の動作に関する動作データ又は該動作データに基づいて生成された前記第1配信者のアバターのアニメーションを含む第1動画と、前記第1配信者の操作に関する操作データに基づいて生成された、コンピュータにより実行されるゲームに関する第2動画とを、通信回線を介して少なくとも一の視聴者の視聴者端末に向けて配信する工程と、前記第1動画の配信を開始している場合に前記ゲームを実行する要求の有無を判定する第1判定を行う工程と、前記第1判定において前記要求があると判定された場合に、第1配信方式及び第2配信方式のうち相対的に配信データ量が大きい第2配信方式により前記第2動画を配信する工程と、を含む」ものである。
第19の態様に係る方法は、「コンピュータにより読み取り可能な命令を実行する少なくとも1つのプロセッサにより実行される方法であって、前記プロセッサが、前記命令を実行することにより、第1配信者の動作に関する動作データ又は該動作データに基づいて生成された前記第1配信者のアバターのアニメーションを含む第1動画と、前記第1配信者の操作に関する操作データに基づいて生成された、コンピュータにより実行されるゲームに関する第2動画とを、受信する工程と、前記第1動画の配信を開始している場合に前記ゲームを実行する要求の有無を判定する第1判定において前記要求があると判定された場合に、第1配信方式及び第2配信方式のうち相対的に配信データ量が大きい第2配信方式により実行される前記第2動画の配信を受信する工程と、を含む」ものである。
第20の態様に係る方法は、上記第18の態様または上記第19の態様において「前記通信回線がインターネットを含む」ものである。
第21の態様に係る方法は、上記第18の態様から上記第20の態様のいずれかにおいて「前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む」ものである。
第22の態様に係るサーバ装置は、「少なくとも1つのプロセッサを具備し、前記プロセッサが、第1配信者の動作に関する動作データ又は該動作データに基づいて生成された前記第1配信者のアバターのアニメーションを含む第1動画と、前記第1配信者の操作に関する操作データに基づいて生成された、コンピュータにより実行されるゲームに関する第2動画とを、通信回線を介して少なくとも一の視聴者の視聴者端末に向けて配信し、前記第1動画の配信を開始している場合に前記ゲームを実行する要求の有無を判定する第1判定を行い、前記第1判定において前記要求があると判定された場合に、第1配信方式及び第2配信方式のうち相対的に配信データ量が大きい第2配信方式により前記第2動画を配信する」ものである。
第23の態様に係るサーバ装置は、上記第22の態様において「前記通信回線がインターネットを含む」ものである。
第24の態様に係るサーバ装置は、上記第22の態様から上記第23の態様のいずれかにおいて「前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含む」ものである。