【新規性喪失の例外の表示】特許法第30条第2項適用 (1)ウェブサイトの掲載日 2019年12月24日 ウェブサイトのアドレス 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 公開者 株式会社Wright Flyer Live Entertainment 公開された発明の内容 株式会社Wright Flyer Live Entertainmentが、上記アドレスにより特定されるウェブサイトにおいてダウンロード可能な「REALITY」というアプリケーションを介して、出願に係る発明に関連したサービスの提供を行った。 (2)ウェブサイトの掲載日 2019年12月19日 ウェブサイトのアドレス https://reality−notice.wrightflyer.net/de00307507f468e6bdf42e354ead5flc83e8efea.html?t=1576733389 公開者 株式会社Wright Flyer Live Entertainment 公開された発明の内容 株式会社Wright Flyer Live Entertainmentが、上記アドレスにより特定されるウェブサイトにおいて、出願に係る発明に関連したサービスに関する公開を行った。 (3)ウェブサイトの掲載日 2020年1月8日 ウェブサイトのアドレス https://twitter.com/WFLE_REALITY/status/1214790371315572737 公開者 株式会社Wright Flyer Live Entertainment 公開された発明の内容 株式会社Wright Flyer Live Entertainmentが、上記アドレスにより特定されるウェブサイトにおいて、出願に係る発明に関連したサービスに関する公開を行った。 (4)ウェブサイトの掲載日 2020年1月8日 ウェブサイトのアドレス https://www.moguravr.com/reality−3/ 公開者 株式会社Wright Flyer Live En
(58)【調査した分野】(Int.Cl.,DB名)
前記座標情報が、前記基準時間における第1の時間に対応する前記ギフトオブジェクトの座標に関する情報と、前記基準時間における前記第1の時間の後に生ずる第2の時間に対応する前記ギフトオブジェクトの座標に関する情報と、前記基準時間における前記第2の時間の後に生ずる第3の時間に対応する前記ギフトオブジェクトの座標に関する情報と、を含む、請求項1に記載のコンピュータプログラム。
前記座標情報が、前記基準時間における第1の時間に対応する前記アバターオブジェクトの座標に関する情報と、前記基準時間における前記第1の時間の後に生ずる第2の時間に対応する前記アバターオブジェクトの座標に関する情報と、前記基準時間における前記第2の時間の後に生ずる第3の時間に対応する前記アバターオブジェクトの座標に関する情報と、を含む、請求項3に記載のコンピュータプログラム。
前記第1の時間と前記第2の時間との間隔が、該第2の時間と前記第3の時間との間隔と同一であるか又は異なる、請求項2又は請求項4に記載のコンピュータプログラム。
前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)である、請求項1から請求項8のいずれかに記載のコンピュータプログラム。
前記少なくとも1つのプロセッサが、中央処理装置(CPU)、マイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)である、請求項10又は請求項11に記載の方法。
【発明を実施するための形態】
【0015】
以下、添付図面を参照して本発明の様々な実施形態を説明する。なお、図面において共通した構成要素には同一の参照符号が付されている。また、或る図面に表現された構成要素が、説明の便宜上、別の図面においては省略されていることがある点に留意されたい。さらにまた、添付した図面が必ずしも正確な縮尺で記載されている訳ではないということに注意されたい。
【0016】
1.動画配信システムの例
本件出願において開示される動画配信システムでは、簡潔にいえば、以下のような動作が行われる。まず、動画を配信するユーザ(以下「配信ユーザ」という。)の端末装置は、動画を配信する際には、この動画を視聴するユーザ(以下「視聴ユーザ」という。)の端末装置に対して、基準時間に関する基準時間情報を送信することができる。基準時間情報は、時間の経過とともに変化する時間であって、音声及び動画を再生する各視聴ユーザの端末装置により基準にされる基準時間を示すものであり得る。
【0017】
また、配信ユーザの端末装置は、配信ユーザの発話に関する音声情報に対して基準時間に基づくタイムスタンプを付し、このようなタイムスタンプが付された音声情報を、各視聴ユーザの端末装置に送信することができる。
【0018】
さらに、配信ユーザの端末装置は、配信ユーザのアバターオブジェクトに関するアバター情報を各視聴ユーザの端末装置に送信することができる。なお、配信ユーザの端末装置は、このアバター情報に対して基準時間に基づくタイムスタンプを付し、このようなタイムスタンプが付されたアバター情報を、各視聴ユーザの端末装置に送信することもできる。
【0019】
さらにまた、配信ユーザの端末装置は、配信ユーザに対してギフトを付与する旨を示すギフト情報を受信した場合には、そのギフトに対応するギフトオブジェクトに関するギフトオブジェクト情報を生成する。配信ユーザの端末装置は、このギフトオブジェクト情報に対して基準時間に基づくタイムスタンプを付し、このようなタイムスタンプが付されたギフトオブジェクト情報を、各視聴ユーザの端末装置に送信することができる。
【0020】
一方、各視聴ユーザの端末装置は、配信ユーザの端末装置から受信したタイムスタンプが付された音声情報を用い、受信した基準時間情報により示される基準時間に基づいて、音声信号を再生することができる。
【0021】
また、各視聴ユーザの端末装置は、配信ユーザの端末装置から受信した、タイムスタンプが付された動画情報及びギフトオブジェクト情報を用い、受信した基準時間情報により示される基準時間に基づいて、動画を生成することができる。
【0022】
図1は、一実施形態に係る動画配信システムの構成の一例を示すブロック図である。
図1に示すように、動画配信システム1は、通信網(通信回線)2に接続される1又はそれ以上の端末装置10と、通信回線2に接続される1又はそれ以上のサーバ装置20と、を含むことができる。各端末装置10は、通信回線2を介して、1又はそれ以上のサーバ装置20に接続される。なお、
図1には、1又はそれ以上の端末装置10として、例えば、端末装置10A〜10Cが示されているが、これら以外の1又はそれ以上の端末装置10が同様に用いられ得る。同様に、
図1には、1又はそれ以上のサーバ装置20として、例えば、サーバ装置20A〜20Cが示されているが、これら以外の1又はそれ以上のサーバ装置20が同様に用いられ得る。なお、通信回線2は、携帯電話網、無線LAN、固定電話網、インターネット、イントラネット及び/又はイーサネット(登録商標)等をこれらに限定することなく含むことができるものである。
【0023】
さらに、一実施形態では、動画配信システム1は、通信回線2に接続される1又はそれ以上のスタジオユニット30を含むこともできる。各スタジオユニット30は、通信回線2を介して、1又はそれ以上のサーバ装置20に接続される。なお、
図1には、1又はそれ以上のスタジオユニット30として、例えば、スタジオユニット30A及び30Bが示されているが、これら以外の1又はそれ以上のスタジオユニット30が同様に用いられ得る。各スタジオユニット30は、後述する端末装置10、及び/又は、後述するサーバ装置20と同様の機能を有することが可能なものである。
【0024】
以下、説明を簡単にするために、配信ユーザの端末装置10がサーバ装置20を介して各視聴ユーザの端末装置10に対して動画を配信する送信する場合に着目する。これに代えて又はこれに加えて、配信ユーザに対向するスタジオユニット30が、端末装置10と同様の機能を有することにより、サーバ装置20を介して各視聴ユーザの端末装置10に対して動画を配信することも可能である。
【0025】
1−1.端末装置10
複数の端末装置10は、1又はそれ以上の配信ユーザの端末装置10と、1又はそれ以上の視聴ユーザの端末装置10と、を含むことができる。各端末装置10は、共通した構成を有することにより、動画を配信するための端末装置10及び動画を視聴するための端末装置10のいずれにもなり得るものである。
【0026】
各端末装置10は、動画を配信するための端末装置(配信ユーザの端末装置)として動作する場合には、インストールされた動画配信用アプリケーション(ミドルウェア、又は、アプリケーションとミドルウェアとを組み合わせたものであってもよい。以下同様。)を実行することにより、サーバ装置20を介して、動画を配信することができる。このような動画は、サーバ装置20により通信回線2を介して、インストールされた動画視聴用アプリケーション(ミドルウェア、又は、アプリケーションとミドルウェアとを組み合わせたものであってもよい。以下同様。)を実行する、動画を受信するための端末装置(視聴ユーザの端末装置)10に配信される。
【0027】
また、各端末装置10は、配信ユーザの端末装置として動作する場合には、上記動画配信用アプリケーションを実行することにより、(この配信ユーザの端末装置10により配信された)動画を視聴する視聴ユーザの端末装置10からサーバ装置20を介して、この配信ユーザに対してギフトを付与する旨を示すギフト情報、及び/又は、この配信ユーザに対してコメントを送信する旨を示すコメント情報を受信することができる。
【0028】
一方、各端末装置10は、動画を視聴するための端末装置(視聴ユーザの端末装置)として動作する場合には、インストールされた動画視聴用アプリケーションを実行することにより、配信ユーザの端末装置10により配信された動画を、サーバ装置20から受信することができる。
【0029】
また、各端末装置10は、上記動画視聴用アプリケーションを実行することにより、動画を受信している間において、この動画を配信している配信ユーザに対してギフトを付与する旨を示すギフト情報、及び/又は、この配信ユーザに対してコメントを送信する旨を示すコメント情報を、サーバ装置20を介して、この配信ユーザの端末装置10に送信することができる。
【0030】
なお、上述した動画配信用アプリケーション及び動画視聴用アプリケーションは、統合された1つのアプリケーション(ミドルウェア、又は、ミドルウェアとアプリケーションとを組み合わせたものであってもよい)として、又は、それぞれ別々のアプリケーション(ミドルウェア、又は、ミドルウェアとアプリケーションとを組み合わせたものであってもよい)として、各端末装置10にインストール及び実行されるものとすることができる。
【0031】
各端末装置10は、このような動作を実行することができる任意の端末装置であって、スマートフォン、タブレット、携帯電話(フィーチャーフォン)及び/又はパーソナルコンピュータ等を、これらに限定することなく含むことができるものである。
【0032】
1−2.サーバ装置20
各サーバ装置20は、各配信ユーザの端末装置10により送信された動画を、各視聴ユーザの端末装置10に配信することができる。
【0033】
また、各サーバ装置20は、各視聴ユーザの端末装置10により送信され、配信ユーザに対してギフトを付与する旨を示すギフト情報、及び/又は、配信ユーザに対してコメントを送信する旨を示すコメント情報を、その配信ユーザの端末装置10に送信することができる。
【0034】
なお、一実施形態では、動画の配信に関連する動作、ギフト情報に関連する動作、及び、コメント情報に関連する動作が、すべて各サーバ装置20により実行されるものとすることができる。別の実施形態では、これらの動作が、複数のサーバ装置20により分担して実行され(ることにより、各サーバ装置20にかかる負担を分散す)るものとすることができる。
【0035】
1−3.スタジオユニット30
スタジオユニット30は、演者が動画を配信する場所であるスタジオ、部屋、ホール等に配置され得る。スタジオユニット30は、上述したように、端末装置10と同様の機能を果たすことが可能なものである。
【0036】
2.各装置のハードウェア構成
次に、端末装置10及びサーバ装置20の各々が有するハードウェア構成の一例について説明する。
【0037】
2−1.端末装置10のハードウェア構成
各端末装置10のハードウェア構成例について
図2を参照して説明する。
図2は、
図1に示した端末装置10(サーバ装置20)のハードウェア構成の一例を模式的に示すブロック図である(なお、
図2において、括弧内の参照符号は、後述するようにサーバ装置20に関連して記載されたものである。)
【0038】
図2に示すように、各端末装置10は、主に、中央処理装置11と、主記憶装置12と、入出力インタフェイス装置13と、入力装置14と、補助記憶装置15と、出力装置16と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
【0039】
中央処理装置11は、「CPU」と称されるものであり、主記憶装置12に記憶されている命令及びデータに対して演算を行い、その演算の結果を主記憶装置12に記憶させるものである。さらに、中央処理装置11は、入出力インタフェイス装置13を介して、入力装置14、補助記憶装置15及び出力装置16等を制御することができる。端末装置10は、1又はそれ以上のこのような中央処理装置11を含むことが可能である。
【0040】
主記憶装置12は、「メモリ」と称されるものであり、入力装置14、補助記憶装置15及び通信回線2(サーバ装置20等)から、入出力インタフェイス装置13を介して受信した命令及びデータ、並びに、中央処理装置11の演算結果を記憶するものである。主記憶装置12は、RAM(ランダムアクセスメモリ)、ROM(リードオンリーメモリ)及び/又はフラッシュメモリ等をこれらに限定することなく含むことができる。
【0041】
補助記憶装置15は、主記憶装置12よりも大きな容量を有する記憶装置である。上述した特定のアプリケーション(動画配信用アプリケーション、動画視聴用アプリケーション等)やウェブブラウザアプリケーション等を構成する命令及びデータ(コンピュータプログラム)を記憶しておき、中央処理装置11により制御されることにより、これらの命令及びデータ(コンピュータプログラム)を入出力インタフェイス装置13を介して主記憶装置12に送信することができる。補助記憶装置15は、磁気ディスク装置及び/又は光ディスク装置等をこれらに限定することなく含むことができる。
【0042】
入力装置14は、外部からデータを取り込む装置であり、タッチパネル、ボタン、キーボード、マウス及び/又はセンサ等をこれらに限定することなく含むものである。センサは、後述するように、1又はそれ以上のカメラ等及び/又は1又はそれ以上のマイク等を含むセンサをこれらに限定することなく含むことができる。
【0043】
出力装置16は、ディスプレイ装置、タッチパネル及び/又はプリンタ装置等をこれらに限定することなく含むことができる。
【0044】
このようなハードウェア構成にあっては、中央処理装置11が、補助記憶装置15に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置12にロードし、ロードした命令及びデータを演算することにより、入出力インタフェイス装置13を介して出力装置16を制御し、或いはまた、入出力インタフェイス装置13及び通信回線2を介して、他の装置(例えばサーバ装置20及び他の端末装置10等)との間で様々な情報の送受信を行うことができる。
【0045】
これにより、端末装置10は、インストールされた特定のアプリケーション(ミドルウェア、又は、アプリケーションとミドルウェアとを組み合わせたもの)を実行することにより、例えば、以下の動作のうちの少なくとも1つの動作を実行することができる。
・動画を配信するために必要な動作
・他の端末装置10により自端末装置10宛てに送信されたギフト情報及び/又はコメント情報を受信するために必要な動作
・他の端末装置10により配信された動画を受信及び表示するために必要な動作
・他の端末装置10に対してギフト情報及び/又はコメント情報を送信するために必要な動作等(後に詳述する様々な動作を含む)
【0046】
なお、端末装置10は、中央処理装置11に代えて又は中央処理装置11とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
【0047】
2−2.サーバ装置20のハードウェア構成
各サーバ装置20のハードウェア構成例について同じく
図2を参照して説明する。各サーバ装置20のハードウェア構成としては、例えば、上述した各端末装置10のハードウェア構成と同一のものを用いることが可能である。したがって、各サーバ装置20が有する構成要素に対する参照符号は、
図2において括弧内に示されている。
【0048】
図2に示すように、各サーバ装置20は、主に、中央処理装置21と、主記憶装置22と、入出力インタフェイス装置23と、入力装置24と、補助記憶装置25と、出力装置26と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
【0049】
中央処理装置21、主記憶装置22、入出力インタフェイス装置23、入力装置24、補助記憶装置25及び出力装置26は、それぞれ、上述した各端末装置10に含まれる、中央処理装置11、主記憶装置12、入出力インタフェイス装置13、入力装置14、補助記憶装置15及び出力装置16と略同一なものとすることができる。
【0050】
このようなハードウェア構成にあっては、中央処理装置21が、補助記憶装置25に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置22にロードし、ロードした命令及びデータを演算することにより、入出力インタフェイス装置23を介して出力装置26を制御し、或いはまた、入出力インタフェイス装置23及び通信回線2を介して、他の装置(例えば各端末装置10等)との間で様々な情報の送受信を行うことができる。
【0051】
これにより、サーバ装置20は、以下の動作のうちの少なくとも1つの動作を実行することができる。
・各配信ユーザの端末装置10により送信された動画を、各視聴ユーザの端末装置10に配信するために必要な動作
・各視聴ユーザの端末装置10により或る配信ユーザの端末装置10宛てに送信されたギフト情報及び/又はコメント情報を、その配信ユーザの端末装置10に送信するために必要な動作等(後に詳述する様々な動作を含む)
【0052】
なお、サーバ装置20は、中央処理装置21に代えて又は中央処理装置21とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
【0053】
2−3.スタジオユニット30のハードウェア構成
スタジオユニット30は、上述したように、端末装置10と同様の機能を果たすことが可能なものである。したがって、スタジオユニット30は、上述した端末装置10と同様のハードウェア構成を有することができる。
【0054】
3.各装置の機能
次に、端末装置10及びサーバ装置20の各々が有する機能の一例について説明する。
3−1.端末装置10の機能
端末装置10の機能の一例について
図3を参照して説明する。
図3は、
図1に示した端末装置10の機能の一例を模式的に示すブロック図である。
【0055】
図3に示すように、端末装置10は、主に、動画生成部100と、情報生成部110と、通信部120と、表示部130と、記憶部140と、ユーザインタフェイス部150と、ギフト処理部160と、を含むことができる。
【0056】
(1)動画生成部100
動画生成部110は、配信ユーザの動作に関する動作データに基づいて、この配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成することができる。これを実現するために、動画生成部110は、例えば、取得部112(図示せず)と、処理部114(図示せず)と、を含むことができる。
【0057】
取得部112は、配信ユーザの動作に関するデータを取得する1又はそれ以上の第1のセンサ112a(図示せず)と、配信ユーザにより発せられた発話及び/又は歌唱に関する音声データを取得する1又はそれ以上の第2のセンサ112b(図示せず)と、を含むことができる。
【0058】
第1のセンサ112aは、好ましい実施形態では、可視光線を撮像するRGBカメラと、近赤外線を撮像する近赤外線カメラと、を含むことができる。このようなカメラとしては、例えばiphone X(登録商標)のトゥルーデプス(True Depth)カメラに含まれたものを用いることが可能である。第2のセンサ112bは、音声を記録するマイクロフォンを含むことができる。
【0059】
まず、第1のセンサ112aに関して、取得部112は、配信ユーザの身体に近接して配置された第1のセンサ112aを用いて配信ユーザの身体を撮像する。これにより、取得部112は、RGBカメラにより取得された画像をタイムコード(取得した時間を示すコード)に対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。さらに、取得部112は、近赤外線カメラにより取得された所定数(例えば51個)の深度を示す数値(例えば浮動小数点の数値)を上記タイムコードに対応付けて単位時間にわたって記録したデータ(例えばTSVファイル)を生成することができる。ここで、TSVファイルとは、データ間をタブで区切って複数のデータを記録する形式のファイルをいう。
【0060】
近赤外線カメラに関して、具体的には、ドットプロジェクタがドット(点)パターンを形成する赤外線レーザーを配信ユーザの身体に放射し、近赤外線カメラが、配信ユーザの身体に投影され反射した赤外線ドットを捉え、このように捉えた赤外線ドットの画像を生成する。取得部112は、予め登録されているドットプロジェクタにより放射されたドットパターンの画像と、近赤外線カメラにより捉えられた画像とを比較して、両画像における各ポイント(各特徴点)(例えば51個のポイント・特徴点の各々)における位置のずれを用いて各ポイント(各特徴点)の深度(各ポイント・各特徴点と近赤外線カメラとの間の距離)を算出することができる。取得部112は、このように算出された深度を示す数値を上記のようにタイムコードに対応付けて単位時間にわたって記録したデータを生成することができる。
【0061】
次に、第2のセンサ112bに関して、取得部112は、配信ユーザに近接して配置された第2のセンサ112bを用いて配信ユーザにより発せられた発話及び/又は歌唱に関する音声を取得する。これにより、取得部112は、タイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。一実施形態では、取得部112は、第1のセンサ112aを用いて配信ユーザの身体に関するデータを取得することと同時に、第2のセンサ112bを用いて配信ユーザにより発せられた発話及び/又は歌唱に関する音声データを取得することができる。この場合には、取得部112は、RGBカメラにより取得された画像と、第2のセンサ112bを用いて配信ユーザにより発せられた発話及び/又は歌唱に関する音声データとを、同一のタイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。
【0062】
取得部112は、このように生成した、配信ユーザの動作に関するデータ(MPEGファイル及びTSVファイル等)、及び/又は、配信ユーザにより発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)を、処理部114に出力することができる。
【0063】
なお、ここでは、第1のセンサ112aがRGBカメラ及び赤外線カメラを含む場合について説明したが、第1のセンサ112aは、例えば、以下の(A)〜(C)のうちのいずれかを含むものであってもよい。
(A)赤外線レーザーにより放射され配信ユーザの身体に反射した赤外線を検出するカメラ
(B)可視光線を撮像する複数のRGBカメラ
(C)可視光線を撮像する単一のカメラ
【0064】
上記(A)の場合には、取得部112は、上述したものと同様の手法により、配信ユーザの身体における各特徴点について深度を算出することができる。上記(B)の場合には、取得部112は、複数のRGBカメラにより撮像された複数の画像を用いて、配信ユーザの身体における各特徴点について奥行(深度)を計算することができる。上記(C)の場合には、取得部112は、単一のカメラにより撮像された画像から、配信ユーザの身体における各特徴点の奥行(深度)を、ディープラーニング等を利用して算出することができる。また、上記(C)の場合には、取得部112は、単一のカメラにより撮像された画像に対する分析処理(画像処理等)により、配信ユーザの身体における各特徴点の奥行(深度)を算出してもよい。
【0065】
処理部114は、取得部112からの、配信ユーザの動作に関するデータに基づいて、仮想的なキャラクター(配信ユーザのアバターオブジェクト)のアニメーションを含む動画を生成することができる。仮想的なキャラクターの動画自体については、処理部114は、図示しないキャラクターデータ記憶部に記憶された様々な情報(例えば、ジオメトリ情報、ボーン情報、テクスチャ情報、シェーダ情報及びブレンドシェイプ情報等)を用いて、図示しないレンダリング部にレンダリングを実行させることにより、仮想的なキャラクターの動画を生成することができる。
【0066】
さらに、処理部114は、取得部112からの配信ユーザの動作に関するデータ(演者の身体における各特徴点の深度に関するデータ)を用いてアバターオブジェクト(の表情)を変化させた動画(例えば、アバターオブジェクトの表情が配信ユーザの口及び両目の動きに同期して変化した動画、すなわち、アバターオブジェクトの表情が演者の顔に対してリップシンク及び視線追従して変化した動画)を、様々な周知の技術を利用して生成することができる。
【0067】
なお、配信ユーザの動作に関する動作データに基づいてこの配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成するために、他の任意の周知な技術を利用することも可能である。
【0068】
(2)情報生成部110
情報生成部110は、配信ユーザの発話に基づいて生成される音声と配信ユーザの動作に基づいて生成されるアバターオブジェクトのアニメーションを含む動画とを再生するために、各視聴ユーザの端末装置10により用いられる様々な情報を、生成するものである。
【0069】
上記様々な情報には、例えば、以下の(a)〜(d)に示す情報が含まれ得る。
(a)時間の経過とともに変化し、音声及び動画を再生する各視聴ユーザの端末装置10により基準にされる基準時間、に関する情報(以下「基準時間情報」という。)
(b)配信ユーザの発話に関する情報(以下「音声情報」という。)
この音声情報は、例えば、配信ユーザの発話を記録したWAVEファイル、MP3ファイル等を含むことができる。
(c)配信ユーザのアバターオブジェクトに関する情報(以下「アバター情報」という。)
このアバター情報は、例えば、配信ユーザに使用されるアバターオブジェクトの識別情報、並びに、仮想空間におけるアバターオブジェクトの座標及び方向等に関する情報を含むことができる。
(d)各視聴ユーザにより配信ユーザに対して付与されたギフトに対応するギフトオブジェクトに関する情報(以下「ギフトオブジェクト情報」という。)
このギフトオブジェクト情報は、例えば、ギフトオブジェクトの識別情報、並びに、仮想空間におけるギフトオブジェクトの座標及び方向等に関する情報を含むことができる。
【0070】
(a)基準時間情報
情報生成部110は、基準時間情報として、例えば、時間の経過とともに変化する基準時間を記録したMPEGファイル等を生成することができる。各視聴ユーザの端末装置10は、このようなMPEGファイル等を再生することにより、例えば
図6に例示したような、時間の経過とともに変化する「01:10:41」(1時間10分41秒)、「01:10:42」(1時間10分42秒)、「01:10:43」(1時間10分43秒)、・・・といった基準時間を取得することができる。なお、情報生成部110は、基準時間情報として、時間の経過とともに変化する基準時間を記録して、各視聴ユーザの端末装置10によりその基準時間が参照されることを可能にする、その他の任意の形態の情報を用いることが可能である。
【0071】
(b)音声情報
情報生成部110は、音声情報として、配信ユーザの発話に関する音声信号を記録した、例えばMPEGファイル及びMP3ファイル等を生成することができる。このMPEGファイルは、上述した動画生成部100の取得部112により生成されたMEPGファイルであってもよい。
【0072】
さらに、情報生成部110は、MPEGファイル等の音声情報に対して、基準時間に基づいて生成されたタイムスタンプを所定の時間間隔をおいて付加することができる。各視聴ユーザの端末装置10は、このようなMPEGファイル等を再生することにより、基準時間を取得することができ、かつ、この基準時間に同期した配信ユーザの発話に関する音声を再生することができる。なお、タイプスタンプは、基準時間をそのまま用いたものであってもよいし、所定の時間間隔ごとに基準時間を抽出したものであってもよい。
【0073】
(c)アバター情報
情報生成部110は、アバター情報の中に、配信ユーザにより使用されるアバターオブジェクトの識別情報を含めることができる。これにより、各視聴ユーザの端末装置10は、予めサーバ装置20等から受信して記憶した複数のアバターオブジェクトの中から、この識別情報に対応するアバターオブジェクトを取得することができる。
【0074】
さらに、情報生成部110は、アバター情報の中に、例えば、配信ユーザにより使用されるアバターオブジェクトに関する以下の(i)〜(iii)に示す情報を含めることができる。
【0075】
(i)仮想空間におけるアバターオブジェクトの座標、例えば、x軸(横方向に沿った軸)における座標、y軸(奥行方向に沿った軸)における座標、及び、z軸(鉛直方向に沿った軸)における座標を、単位時間ごとに記録した情報(アバター座標情報)
このようなアバター座標情報は、例えばアバターオブジェクトのアニメーションを生成する動画生成部110から取得することが可能である。
なお、仮想空間におけるアバターオブジェクトの座標は、特定の位置を基準として定められてもよい。ここで、特定の位置は、原点及び/又は初期位置を含み得る。
各視聴ユーザの端末装置10は、このアバター座標情報を参照することにより、単位時間ごとに、仮想空間におけるアバターオブジェクトの位置を決定することができる。
【0076】
(ii)仮想空間におけるアバターオブジェクトの方向(向き)を、単位時間ごとに記憶した情報(アバター方向情報)
アバターオブジェクトの方向(向き)は、例えば、仮想空間において鉛直方向(z軸)に延びる軸を中心として、0度〜359度のいずれかによって決定され得る(例えば、アバターオブジェクトが正面を向くときに0度が設定され、アバターオブジェクトが背面を向くときに180度が設定され得る)。
別の実施形態では、アバターオブジェクトの方向(向き)は、仮想空間において、特定の位置(初期位置及び原点等)を基準として、鉛直方向(z軸)に延びる軸を中心として、右方向又は左方向に対して回転(変化)させた角度(変化量)によって決定されてもよい。
このようなアバター方向情報は、例えばアバターオブジェクトのアニメーションを生成する動画生成部110から取得することが可能である。
各視聴ユーザの端末装置10は、このアバター方向情報を参照することにより、単位時間ごとに、仮想空間におけるアバターオブジェクトの方向(向き)を決定することができる。なお、アバター方向情報に適用される単位時間は、アバター座標情報に適用される単位時間と同一のものであっても異なるものであってもよい。
【0077】
(iii)アバターオブジェクトの主要な部位の状態を、単位時間ごとに記録した情報(部位情報)
アバターオブジェクトにおける主要な部位とは、例えば、右目、左目、右眉、左眉、右頬、左頬、口、右耳、左耳、右手、左手、右足、及び/又は、左足等をこれらに限定することなく含むことができる。
アバター部位情報は、部位の識別情報と、この部位の状態を示す状態情報と、を対応付けて単位時間ごとに記録することができる。例えば、「右目」という部位に対応付けられた状態情報は、以下に例示した情報のうちのいずれか1つの情報をこれらに限定することなく含むことができる。
・右目が大きく見開かれ、黒目が右端に位置した状態を示す情報
・右目が大きく見開かれ、黒目が中央に位置した状態を示す情報
・右目が大きく見開かれ、黒目が左端に位置した状態を示す情報
・右目が中程度に見開かれ、黒目が右端に位置した状態を示す情報
・右目が中程度に見開かれ、黒目が中央に位置した状態を示す情報
・右目が中程度に見開かれ、黒目が左端に位置した状態を示す情報
・右目が閉じた状態を示す情報等(その他の任意の状態を示す情報が用いられてもよい)
【0078】
このようなアバター部位情報は、例えばアバターオブジェクトのアニメーションを生成する(ために、アバターオブジェクトの座標を認識している)動画生成部110から取得することが可能である。
各視聴ユーザの端末装置10は、この状態情報を参照することにより、単位時間ごとに、仮想空間におけるアバターオブジェクトの部位の状態を決定することができる。なお、アバター部位情報に適用される単位時間は、アバター座標情報及び/又はアバター方向情報に適用される単位時間と同一のものであっても異なるものであってもよい。
【0079】
さらに、情報生成部110は、このようなアバター情報に対して、基準時間に基づいて生成されたタイムスタンプを所定の時間間隔をおいて付加することができる。各視聴ユーザの端末装置10は、受信したアバター情報に含まれたタイムスタンプに同期させたタイミングで、この受信したアバター情報に含まれた、アバター座標情報、アバター方向情報、部位情報等の情報を適用することができる。なお、タイプスタンプは、基準時間をそのまま用いたものであってもよいし、所定の時間間隔ごとに基準時間を抽出したものであってもよい。
【0080】
(d)ギフトオブジェクト情報
情報生成部110は、ギフトオブジェクト情報の中に、配信ユーザに対して付与されたギフトに対応するアバターオブジェクトの識別情報を含めることができる。これにより、各視聴ユーザの端末装置10は、予めサーバ装置20等から受信して記憶した複数のギフトオブジェクトの中から、この識別情報に対応するギフトオブジェクトを取得することができる。
【0081】
さらに、情報生成部110は、ギフトオブジェクト情報の中に、例えば、当該ギフトオブジェクトに関する以下の(i)及び(ii)に示す情報を含めることができる。なお、(ii)に示す情報はオプションとして使用され得るものである。
【0082】
(i)仮想空間におけるギフトオブジェクトの座標、例えば、x軸(横方向に沿った軸)における座標、y軸(奥行方向に沿った軸)における座標、及び、z軸(鉛直方向に沿った軸)における座標を、単位時間ごとに記録した情報(ギフトオブジェクト座標情報)
各視聴ユーザの端末装置10は、このギフトオブジェクト座標情報を参照することにより、単位時間ごとに、仮想空間におけるギフトオブジェクトの位置を決定することができる。
【0083】
各ギフトオブジェクトの動作は、予め定められたものであってもよい。この場合、ギフトオブジェクトの識別情報に対応付けて、そのギフトオブジェクトの動作に関する規則(仮想空間における上方から底面までy軸の周りに所定のレートで回転しながら落下する等)を示す情報が、記憶部140に記憶され得る。よって、情報生成部110は、ギフトオブジェクトの識別情報を検索キーとして、このギフトオブジェクトの動作に関する規則を示す情報を読み出すことができる。情報生成部110は、このように読みだした情報に基づいて、ギフトオブジェクト座標情報を生成することができる。
【0084】
(ii)仮想空間におけるギフトオブジェクトの方向(向き)を、単位時間ごとに記憶した情報(ギフトオブジェクト方向情報)
ギフトオブジェクトの方向(向き)は、例えば、仮想空間において鉛直方向に延びる軸(例えば、z軸)を中心として、0度〜359度のいずれかによって決定され得る第1の方向を含むことができる。例えば、ギフトオブジェクトが正面を向くときに0度が設定され、ギフトオブジェクトが背面を向くときに180度が設定され得る。
さらに、ギフトオブジェクトの方向(向き)は、例えば、仮想空間において水平方向に延びる軸(例えば、y軸)を中心として、0度〜359度のいずれかによって決定され得る第2の方向と、を含むことができる。例えば、ギフトオブジェクトの頂点が上方に位置するときに0度が設定され、アバターオブジェクトの頂点が下方に位置するときに180度が設定され得る。
さらにまた、ギフトオブジェクトの方向(向き)は、例えば、仮想空間において水平方向に延びる軸(例えば、x軸)を中心として、0度〜359度のいずれかによって決定され得る第3の方向と、を含むことができる。例えば、ギフトオブジェクトの顔が正面を向くときに0度が設定され、ギフトオブジェクトの顔が底面を向くときに180度が設定され得る。
【0085】
各ギフトオブジェクトの動作は、予め定められたものであってもよい。この場合、ギフトオブジェクトの識別情報に対応付けて、そのギフトオブジェクトの動作に関する規則(仮想空間における上方から底面までy軸の周りに所定のレートで回転しながら落下する等)を示す情報が、記憶部140に記憶され得る。よって、情報生成部110は、ギフトオブジェクトの識別情報を検索キーとして、このギフトオブジェクトの動作に関する規則を示す情報を読み出すことができる。情報生成部110は、このように読みだした情報に基づいて、ギフトオブジェクト方向情報を生成することができる。
【0086】
各視聴ユーザの端末装置10は、このギフトオブジェクト方向情報を参照することにより、単位時間ごとに、仮想空間におけるアバターオブジェクトの方向(向き)を決定することができる。なお、ギフトオブジェクト方向情報に適用される単位時間は、ギフトオブジェクト座標情報に適用される単位時間と同一のものであっても異なるものであってもよい。
【0087】
さらに、情報生成部110は、このようなギフトオブジェクト情報に対して、基準時間に基づいて生成されたタイムスタンプを所定の時間間隔をおいて付加することができる。各視聴ユーザの端末装置10は、受信したギフトオブジェクト情報に含まれたタイムスタンプに同期させたタイミングで、この受信したギフトオブジェクト情報に含まれた、ギフトオブジェクト座標情報及びギフトオブジェクト方向情報を適用することができる。なお、タイプスタンプは、基準時間をそのまま用いたものであってもよいし、所定の時間間隔ごとに基準時間を抽出したものであってもよい。
【0088】
(3)通信部120
通信部120は、動画の配信及び/又は視聴に必要とされる様々な情報を、サーバ装置20との間において通信することができる。また、通信部120は、端末装置10が配信ユーザの端末装置として動作する場合には、動画をサーバ装置20に送信し、この配信ユーザ宛てに送信されたギフト情報及び/又はコメント情報をサーバ装置20から受信することができる。さらに、通信部120は、端末装置10が視聴ユーザの端末装置として動作する場合には、配信ユーザの端末装置10により送信された動画をサーバ装置20から受信し、配信ユーザに対してギフト情報及び/又はコメント情報をサーバ装置20に送信することができる。
【0089】
(4)表示部130
表示部130は、動画の配信及び/又は視聴に必要とされる様々な情報を表示することができる。例えば、表示部130は、当該端末装置10が配信ユーザの端末装置10として動作する場合には、動画生成部100から受信した、配信ユーザのアバターオブジェクトのアニメーション等を含む動画を表示することができる。さらに、表示部130は、当該端末装置10が視聴ユーザの端末装置10として動作する場合には、配信ユーザの端末装置10からサーバ装置20を介して受信した様々な情報を用いて、配信ユーザのアバターオブジェクトのアニメーション等を含む動画を表示することができる。
【0090】
(5)記憶部140
記憶部140は、動画の配信及び/又は視聴に必要とされる様々な情報を記憶することができる。
【0091】
(6)ユーザインタフェイス部150
ユーザインタフェイス部150は、動画の配信及び/又は視聴に必要とされる様々な情報をユーザの操作を介して入力することができる。
【0092】
(7)ギフト処理部160
ギフト処理部160は、動画の配信及び/又は視聴に関して送受信されるギフト情報を処理することができる。例えば、ギフト処理部160は、当該端末装置10が配信ユーザの端末装置10として動作する場合には、この配信ユーザ宛てに送信されたギフト情報を処理することができる。また、ギフト処理部160は、当該端末装置10が視聴ユーザの端末装置10として動作する場合には、この視聴ユーザが送信するギフト情報を処理することができる。
【0093】
3−2.サーバ装置20の機能
サーバ装置20の機能の一例について
図4を参照して説明する。
図4は、
図1に示したサーバ装置20の機能の一例を模式的に示すブロック図である。
図4に示すように、サーバ装置20は、主に、通信部200と、記憶部210と、ギフト処理部220と、を含むことができる。
【0094】
通信部200は、動画の配信及び/又は視聴に必要とされる様々な情報を、配信ユーザの端末装置10及び/又は視聴ユーザの端末装置10との間において通信することができる。
【0095】
記憶部210は、動画の配信及び/又は視聴に必要とされる様々な情報を記憶することができる。
【0096】
ギフト処理部220は、各視聴ユーザから各配信ユーザ宛てに送信されたギフト情報を処理することができる。
【0097】
3−3.スタジオユニット30の機能
スタジオユニット30は、上述したように、端末装置10と同様の機能を果たすことが可能なものである。したがって、スタジオユニット30は、
図3を参照して説明した端末装置10の機能を有することが可能なものである。
【0098】
4.動画配信システム1の動作
図5は、
図1に示した動画配信システム1において行われる動作の一例を示すフロー図である。なお、
図5において、左側部分には、少なくとも1人の配信ユーザの端末装置10により行われる動作が示され、中央部分には、サーバ装置20(ここでは1つのサーバ装置20)により行われる動作が示され、右側部分には、少なくとも1人の視聴ユーザの端末装置10により行われる動作が示されている。
【0099】
まず、配信ユーザは、その端末装置10において動画配信用アプリケーションを起動させることにより、動画配信システム1における動作が開始される。
【0100】
ステップ(以下「ST」という。)300において、配信ユーザは、その端末装置10を自身に対向させた状態において演技を行う。これにより、配信ユーザの端末装置10の動画生成部100は、配信ユーザのアバターオブジェクトのアニメーションを含む動画と、配信ユーザの発話に関する音声信号と、を生成することができる。
【0101】
また、配信ユーザの端末装置10の情報生成部110は、各視聴ユーザの端末装置10による動画及び音声の再生を可能とするために、様々な情報を生成することができる。上記様々な情報には、上記「3−1(2)」項において述べたように、例えば、基準時間情報、音声情報及びアバター情報等が含まれ得る。
【0102】
さらに、配信ユーザの端末装置10の通信部120は、このような様々な情報をサーバ装置20に送信する。上記様々な情報は、伝送される(伝送された)情報と基準時間に基づくタイムスタンプとの対応関係が配信ユーザの端末装置10及び視聴ユーザの端末装置10の両方において明らかであるという条件が満たされる限りにおいて、任意の多重方式により相互に多重されサーバ装置20に送信されてもよい。このような条件が満たされていれば、各視聴ユーザの端末装置10は、上記様々な情報を受信したときに、伝送された情報の各々を、その各々に対応するタイムスタンプに従って適切に処理することができる。多重方式については、アバター情報400、音声情報410、基準時間情報420及び後述するギフトオブジェクト情報430は、それぞれ、別々のチャネルを介して送信されてもよいし、これらの情報のうちの複数が同一のチャネルを介して送信されてもよい。チャネルは、タイムスロット、周波数帯域、及び/又は、拡散符号等を含み得る。
【0103】
次に、ST300における動作と並行して、配信ユーザの端末装置10の表示部130は、ST302において、動画生成部100により生成された動画を、配信ユーザに対するフィードバックとして表示することができる。
【0104】
配信ユーザの端末装置10は、ST300及びST302における動作を、以下に説明するST304〜ST314における動作と並行して行うことができる。
【0105】
次に、ST304において、サーバ装置20は、配信ユーザの端末装置10から継続的に送信されてくる上記様々な情報を、各視聴ユーザの端末装置10に配信することができる。各視聴ユーザの端末装置10は、動画視聴用アプリケーションを実行している。
【0106】
ST306において、各視聴ユーザの端末装置10の通信部120は、サーバ装置20から上記様々な情報を受信して記憶部140に記憶させることができる。一実施形態では、音声情報が他の情報に比べて大きな容量を有する可能性及び/又は通信回線2に障害が発生する可能性を考慮して、各視聴ユーザの端末装置10は、サーバ装置20から受信した上記様々な情報を一時的に記憶部140に記憶(バッファリング)することができる。
【0107】
このような様々な情報を受信及び記憶することに並行して、ST308において、各視聴ユーザの端末装置10の表示部130は、配信ユーザの端末装置10からサーバ装置20を介して受信及び記憶した上記様々な情報を用いて、動画及び音声を再生することができる。
【0108】
図6は、
図1に示す動画配信システム1における各視聴ユーザの端末装置10が受信した情報を用いて動画及び音声を再生する手法の一例を概念的に示す模式図である。
図6に示すように、各視聴ユーザの端末装置10は、アバター情報400と、音声情報410と、基準時間情報420と、を受信することができる。なお、
図6に示した例では、各視聴ユーザの端末装置10は、この時点では、ギフトオブジェクト情報を受信していない。
【0109】
各視聴ユーザの端末装置10の表示部130は、記憶部140に記憶されている基準時間情報420を順次読み出し、読み出した基準時間情報420を処理することができる。具体的には、表示部130は、例えば基準時間情報420がMPEGファイル等である場合には、MPEGファイル等を再生することにより、時間の経過とともに変化する基準時間422を取得することができる。
図6には、このような基準時間422の一部として、「01:10:41」(1時間10分41秒)という基準時間422a、「01:10:42」(1時間10分42秒)という基準時間422b、「01:10:43」(1時間10分43秒)という基準時間422c、「01:10:44」(1時間10分44秒)という基準時間422d、「01:10:45」(1時間10分45秒)という基準時間422eが例示されている。すなわち、1秒ごとに基準時間422が得られる例が示されている。
【0110】
さらに、表示部130は、記憶部140に記憶されている音声情報410を順次読み出し、読み出した音声情報410を処理することができる。
図6には、音声情報410が連続的に繋がった情報を含む例が示されている。このような音声情報410には、所定の時間間隔(ここでは1秒間隔)をおいてタイムスタンプが付加されている。
図6には、音声情報410に、「01:10:41」(1時間10分41秒)、「01:10:42」(1時間10分42秒)、「01:10:43」(1時間10分43秒)、「01:10:44」(1時間10分44秒)、・・・というタイムスタンプが付加されている例が示されている。
【0111】
表示部130は、音声情報410に含まれたこのような各タイムスタンプが、基準時間情報420から取得された基準時間422に一致又は略一致するタイミングにおいて、音声情報410に含まれた各タイムスタンプに対応する音声信号を再生することができる。すなわち、表示部130は、音声情報410に含まれた各タイムスタンプを基準時間情報420に含まれた基準時間422に同期させながら、音声情報410に含まれた各タイムスタンプに対応する音声信号を再生することができる。
【0112】
さらにまた、表示部130は、記憶部140に記憶されているアバター情報400を順次読み出し、読み出したアバター情報400を処理することができる。
図6には、識別情報「M00023」が付与されたアバター情報402a、及び、識別情報「M00024」が付与されたアバター情報402bといった、相互に分離したアバター情報400の一例が示されている。このように複数のアバター情報400が連続的に繋がったものではなく相互に分離しているのは、アバター情報400は、上述したように、単位時間ごとに(ここでは2秒間隔で)生成されるからである。
【0113】
図6には、「01:10:42」(1時間10分42秒)というタイムスタンプが付加されたアバター情報402a、及び、「01:10:44」(1時間10分44秒)というタイムスタンプが付加されたアバター情報402bが示されている。
【0114】
表示部130は、アバター情報402aに含まれたタイムスタンプ(01:10:42)を基準時間情報420に含まれた基準時間422b(01:10:42)に一致又は略一致するタイミングにおいて、アバター情報402aに含まれた、アバター座標情報、アバター方向情報及び部位情報を適用することができる。すなわち、表示部130は、アバター情報402aに含まれたタイムスタンプ(01:10:42)を基準時間情報420に含まれた基準時間422b(01:10:42)に同期させながら、アバター情報402aに含まれた、アバター座標情報、アバター方向情報及び部位情報を適用することができる。
【0115】
アバター座標情報を適用することにより、アバター情報402aに含まれた識別情報により識別されるアバターオブジェクトを、そのアバター座標情報により指定される座標に配置することができる。アバター方向情報を適用することにより、アバターオブジェクトを、そのアバター方向情報により指定される方向に回転させることができる。部位情報を適用することにより、アバターオブジェクトにおける各部位の状態を、その部位情報により指定される状態に変化させることができる。
【0116】
表示部130は、アバター情報402aと同様にアバター情報402bについても、アバター情報402bに含まれたタイムスタンプ(01:10:44)を基準時間情報420に含まれた基準時間422b(01:10:44)に同期させながら、アバター情報402bに含まれた、アバター座標情報、アバター方向情報及び部位情報を適用することができる。
【0117】
これにより、表示部130は、
図8に例示されるように、(例えば単位時間ごとに生成された)アバター情報に指定される配信ユーザのアバターオブジェクト450が、(例えば単位時間ごとに生成された)アバター座標情報、アバター方向情報及び部位情報に基づいて仮想空間460において動作するアニメーションを生成することができる。
【0118】
次に、
図5に戻り、上述したST306及びST308における動作と並行して、ST310において、配信ユーザの端末装置10により配信されている動画を視聴している各視聴ユーザは、その端末装置10を用いて、その配信ユーザに対してギフトを付与する旨を示すギフト情報を送信することができる。このようなギフト情報は、例えば、付与すべきギフトの識別情報、配信ユーザの識別情報及び視聴ユーザの識別情報等を含むことができる。このようなギフト情報は、視聴ユーザの端末装置10によりサーバ装置20に送信される。
【0119】
ST312において、サーバ装置30は、各視聴ユーザの端末装置10から受信したギフト情報を、このギフト情報に含まれた配信ユーザの識別情報に対応する配信ユーザの端末装置10に送信する。
【0120】
ST314において、配信ユーザの端末装置10は、各視聴ユーザの端末装置10により自己宛てに送信されたギフト情報を、サーバ装置20を介して受信することができる。
【0121】
ST316において、配信ユーザの端末装置10は、基本的にST300におけるものと同様の動作を行うことができる。さらに加えて、配信ユーザの端末装置10は、ST314において受信したギフト情報に基づいて、上記「3−1(2)(d)」項において説明したギフトオブジェクト情報(ギフトオブジェクト座標情報のみ又はこれに加えてギフトオブジェクト方向情報)をも生成することができる。
【0122】
次に、ST320及びST322においては、各視聴ユーザの端末装置10は、それぞれ、上述したST304及びST306におけるものと同様の動作を行うことができる。但し、配信ユーザの端末装置10からサーバ装置20を介して各視聴ユーザの端末装置10に送信される様々な情報には、上述したST316においてギフト情報に基づいて生成されたギフトオブジェクト情報が含まれ得る。
【0123】
次に、ST324において、各視聴ユーザの端末装置10は、基本的に上述したST308におけるものと同様の動作を行うことができる。さらに加えて、各視聴ユーザの端末装置10は、配信ユーザの端末装置10からサーバ装置20を介して受信及び記憶したギフトオブジェクト情報を含む様々な情報を用いて、動画及び音声を再生することができる。
【0124】
図7は、
図1に示す動画配信システム1における各視聴ユーザの端末装置10が受信した情報を用いて動画及び音声を再生する手法の別の例を概念的に示す模式図である。
図7に示すように、各視聴ユーザの端末装置10は、アバター情報400、音声情報410及び基準時間情報420に加えて、さらにギフトオブジェクト情報430を受信することができる。
【0125】
各視聴ユーザの端末装置10がどのように基準時間情報420、音声情報410及びアバター情報400を用いるのかについては、ST308に関連して上述したとおりであるので、ここではその説明を省略する。
【0126】
表示部130は、記憶部140に記憶されているギフトオブジェクト情報430を順次読み出し、読み出したギフトオブジェクト情報430を処理することができる。
図7には、識別情報「G01112」が付与されたギフトオブジェクト情報432a、識別情報「G01113」が付与されたギフトオブジェクト情報432b、及び、識別情報「G01114」が付与されたギフトオブジェクト情報432cといった、相互に分離したギフトオブジェクト情報430の一例が示されている。このように複数のギフトオブジェクト情報430が連続的に繋がったものではなく相互に分離しているのは、ギフトオブジェクト情報430は、上述したように、単位時間ごとに(ここでは1秒間隔で)生成されるからである。
【0127】
図7には、「01:15:05」(1時間15分05秒)というタイムスタンプが付加されたギフトオブジェクト情報432a、「01:15:06」(1時間15分06秒)というタイムスタンプが付加されたギフトオブジェクト情報432b、及び、「01:15:07」(1時間15分07秒)というタイムスタンプが付加されたギフトオブジェクト情報432cが示されている。
【0128】
表示部130は、ギフトオブジェクト情報432aに含まれたタイムスタンプ(01:15:05)を基準時間情報420に含まれた基準時間422f(01:15:05)に一致又は略一致するタイミングにおいて、ギフトオブジェクト情報432aに含まれた、ギフトオブジェクト座標情報及びギフトオブジェクト方向情報を適用することができる。すなわち、表示部130は、ギフトオブジェクト情報432aに含まれたタイムスタンプ(01:15:05)を基準時間情報420に含まれた基準時間422f(01:15:05)に同期させながら、ギフトオブジェクト情報432aに含まれた、ギフトオブジェクト座標情報及びギフトオブジェクト方向情報を適用することができる。
【0129】
ギフトオブジェクト座標情報を適用することにより、ギフトオブジェクト情報432aに含まれた識別情報により識別されるギフトオブジェクトを、そのギフトオブジェクト座標情報により指定される座標に配置することができる。ギフトオブジェクト方向情報を適用することにより、ギフトオブジェクトを、そのギフトオブジェクト方向情報により指定される方向に回転させることができる。
【0130】
表示部130は、ギフトオブジェクト情報432aと同様に、ギフトオブジェクト情報432bについても、ギフトオブジェクト情報432bに含まれたタイムスタンプ(01:15:06)を基準時間情報420に含まれた基準時間422g(01:15:06)に同期させながら、ギフトオブジェクト情報432bに含まれた、ギフトオブジェクト座標情報及びギフトオブジェクト方向情報を適用することができる。ギフトオブジェクト情報432cについても、ギフトオブジェクト情報432a及びギフトオブジェクト情報432bと同様に理解することが可能である。
【0131】
これにより、表示部130は、
図8に例示されるように、(例えば単位時間ごとに生成された)ギフトオブジェクト情報に指定されるギフトオブジェクト500が、(例えば単位時間ごとに生成された)ギフトオブジェクト座標情報及びギフトオブジェクト方向情報に基づいて仮想空間460において動作するアニメーションを生成することができる。
【0132】
具体的には、表示部130は、基準時間(01:15:05)には、ギフトオブジェクト情報432aにより指定された座標及び方向に従ってギフトオブジェクト500Aを配置したアニメーションを生成することができる。また、表示部130は、基準時間(01:15:06)には、ギフトオブジェクト情報432bにより指定された座標及び方向に従ってギフトオブジェクト500Bを配置したアニメーションを生成することができる。さらに、表示部130は、基準時間(01:15:07)には、ギフトオブジェクト情報432cにより指定された座標及び方向に従ってギフトオブジェクト500Cを配置したアニメーションを生成することができる。これにより、表示部130は、ギフトオブジェクト500A(500)が表示された時点から約1秒後に、y軸の周りに90度方向を回転させかつ落下したギフトオブジェクト500B(500)を表示し、その時点から約1秒後に、y軸の周りにさらに90度方向を回転させかつ落下したギフトオブジェクト500C(500)を表示することができる。
【0133】
図7を参照すると、ギフトオブジェクト情報432a、ギフトオブジェクト情報432b及びギフトオブジェクト情報432cに対して、それぞれ、基準時間422fに基づくタイムスタンプ(01:15:05)、基準時間422g(01:15:06)に基づくタイムスタンプ及び基準時間422h(01:15:07)に基づくタイムスタンプが付加されている。同様に、音声情報410においても、「熊ちゃんギフトが届いた!」という音声信号に対して、基準時間422g(01:15:06)に基づくタイムスタンプが付加され、「熊ちゃんが頭を床にぶつけたよ」という音声信号に対して、基準時間422i(01:15:08)に基づくタイムスタンプが付加されている。
【0134】
したがって、これらの情報を用いる各視聴ユーザの端末装置10においては、動画にギフトオブジェクト500A(500)が登場した直後に、「熊ちゃんギフトが届いた!」という配信ユーザの音声が再生される。また、動画においてギフトオブジェクト500Cが床に当接した直後に、「熊ちゃんが頭を床にぶつけたよ」という配信ユーザの音声が再生される。
【0135】
なお、
図7には、ギフトオブジェクト情報432aに付加されたタイムスタンプとギフトオブジェクト情報432bに付加されたタイムスタンプとの間の時間間隔(1秒)と、ギフトオブジェクト情報432bに付加されたタイムスタンプとギフトオブジェクト情報432cに付加されたタイムスタンプとの間の時間間隔(1秒)と、が同一である例が示されている。しかし、別の実施形態では、これらの時間間隔は同一であっても異なるものであってもよい。これは、アバター情報402cに付加されたタイムスタンプとアバター情報402dに付加されたタイムスタンプとの間の時間間隔(2秒)と、アバター情報402dに付加されたタイムスタンプとアバター情報402e(図示せず)に付加されたタイムスタンプとの間の時間間隔との関係に対しても、同様に適用可能なものである。
【0136】
図5に戻り、ST326において、処理を続行するか否かが判定される。処理を続行することが判定された場合には、処理は上述したST300に戻る。一方、処理を続行しないことが判定された場合には、処理は終了する。
【0137】
5.変形例
上述した様々な実施形態では、
図8に例示されるように、配信ユーザに対して視聴ユーザによりギフトが付与された場合、配信ユーザの端末装置10から各視聴ユーザの端末装置10に配信される動画には、そのギフトに対応するギフトオブジェクト500のみが表示される。別の実施形態では、配信ユーザに対して視聴ユーザによりギフトが付与された場合、配信ユーザの端末装置10から各視聴ユーザの端末装置10に配信される動画には、そのギフトに対応するギフトオブジェクト600に組み合わせて、そのギフトを付与した視聴ユーザに関する情報が表示されるようにしてもよい。そのギフトを付与した視聴ユーザに関する情報の一例として、
図8には、その視聴ユーザの氏名又はハンドルネーム300Aが用いられ得る。これに代えて又はこれに加えて、その視聴ユーザのアバターオブジェクトの少なくとも一部(図示せず)が用いられるようにしてもよい。これを実現するためには、例えば、配信ユーザの端末装置10は、ギフトオブジェクト情報の中に、そのギフトを付与した視聴ユーザに関する情報を含めることができる。
【0138】
これにより、各視聴ユーザは、配信ユーザにより配信される動画に、自己が配信ユーザにギフトを付与した行為に伴って自己に関連した情報が表示される。この結果、配信ユーザに対して積極的にギフトを付与しようとする意欲を、各視聴ユーザに与えることができる。
【0139】
また、配信ユーザにより配信される動画に、多数のギフトオブジェクトが表示される場合であっても、これら多数のギフトオブジェクトのうちの少なくとも一部のギフトオブジェクトに組み合わせて、該少なくとも一部のギフトオブジェクトの各々に対応する視聴ユーザに関する情報が表示されることにより、当該各視聴ユーザは、これら多数のギフトオブジェクトの中から、自己が配信ユーザに付与したギフトに対応するギフトオブジェクトを迅速にかつ確実に識別することができる。
【0140】
また、上述した様々な実施形態では、アバター情報400は、配信ユーザの動作における変化の有無に関係なく単位時間ごとに生成される場合について説明した。別の実施形態では、配信ユーザの端末装置10から各視聴ユーザの端末装置10に送信される情報の量をさらに抑えるために、アバター情報400は、配信ユーザの動作に変化が生じた期間のみについて、単位時間ごとに及び/又は任意の時間において、生成されるものであってもよい。
【0141】
さらに、上述した様々な実施形態では、配信ユーザが動画の配信中に発話をし続ける可能性が高いことを考慮して、音声情報410は連続的に繋がった形態(例えばMPEGファイル等)をとる場合について説明した。別の実施形態では、音声情報410は、配信ユーザが発話を行った期間のみについて生成されるようにしてもよい。この場合であっても、生成される各々の音声情報には、単位時間ごとに及び/又は任意の時間において、基準時間に基づくタイムスタンプが付与されることが好ましい。
【0142】
さらにまた、
図8に例示された例では、各視聴ユーザから配信ユーザにより配信される動画に対する反応を送信する手段として、ギフトを付与することを例示した。これに加えて、又は、これに代えて、各視聴ユーザの端末装置10から配信ユーザの端末装置10に対してサーバ装置20を介して、配信ユーザ及び/又は動画に関するコメントを示すコメント情報を送信する手法を採用することも可能である。
【0143】
このようなコメント情報は、例えば以下に示す情報を含むことができる。
・コメントの内容を示す情報
・コメント情報の受信先である配信ユーザの識別情報
・コメント情報の送信元である視聴ユーザの識別情報
【0144】
このようなコメント情報は、各視聴ユーザの端末装置10からサーバ装置20に送信される。サーバ装置20は、コメント情報に含まれた配信ユーザの識別情報に基づいて、この配信ユーザの端末装置10に送信される。配信ユーザの端末装置10は、受信したコメント情報に基づいて、コメント参照情報を生成することができる。
【0145】
コメント参照情報は、例えば以下に示す情報を含むことができる。
・コメントの内容を示す情報
・コメント情報を送信した視聴ユーザに関する情報(氏名、ハンドルネーム、及び/又は、アバターオブジェクトの少なくとも一部)
このようなコメント情報もまた、上述したギフトオブジェクト情報と同様に、基準時間に基づくタイムスタンプが付与され得る。
【0146】
このようなコメント参照情報を受信した各視聴ユーザの端末装置10は、このコメント参照情報を上述したギフトオブジェクト情報と同様の手法により適用することができる。これにより、視聴ユーザの端末装置10の表示部130は、受信した基準情報に同期させつつ、コメント参照情報を処理して表示することができる。
【0147】
また、上述した様々な実施形態では、好ましい実施形態として、アバター情報400にも基準情報に基づくタイムスタンプが付加される場合について説明した。別の実施形態では、例えば、配信ユーザのアバターオブジェクトの動作と配信ユーザの発話に基づく音声とを正確に同期させる必要がない場合等には、アバター情報400に基準時間に基づくタイムスタンプを付加する必要はない。
【0148】
さらに、上述した様々な実施形態では、好ましい実施形態として、音声情報410に常に基準時間に基づくタイムスタンプが単位時間ごとに又は任意の時間に付加される場合について説明した。別の実施形態では、配信ユーザに対してギフトが付与されることに伴ってギフトオブジェクト情報430を送信する必要が生じたタイミングにおいてのみ、音声情報410に基準時間に基づくタイムスタンプが単位時間ごとに又は任意の時間に付加されるようにしてもよい。これにより、各視聴ユーザの端末装置10は、ギフトオブジェクト情報410を受信する度に、このギフトオブジェクト情報410に付加されたタイムスタンプに基づいて、このギフトオブジェクト情報410を音声情報420に同期させつつ処理することができる。
【0149】
さらにまた、上述した様々な実施形態では、好ましい実施形態として、ギフトオブジェクト情報430は、ギフトオブジェクトの識別情報、ギフトオブジェクト座標情報及びギフトオブジェクト方向情報を含む場合について説明した。別の実施形態では、ギフトオブジェクト情報430は、ギフトオブジェクトの識別情報及びギフトオブジェクト座標情報のみを含むものであってもよい(ギフトオブジェクト方向情報はオプションとして使用可能である)。
【0150】
なお、上述した様々な実施形態では、配信ユーザの端末装置10が、配信ユーザの動作情報(動作データ)に基づいて生成されたアバターオブジェクトに関する情報(アバターオブジェクト情報)を、各視聴ユーザの端末装置10に送信することにより、各視聴ユーザの端末装置10が、アバターオブジェクト情報に基づいて、アバターオブジェクトのアニメーションを含む動画を生成する場合について説明した。別の実施形態では、配信ユーザの端末装置10が、配信ユーザの動作情報を各視聴ユーザの端末装置10に送信することにより、各視聴ユーザの端末装置10が、この動作情報に基づいて、アバターオブジェクトのアニメーションを含む動画を生成することも可能である。この場合には、配信ユーザの端末装置10から各視聴ユーザの端末装置10に送信される動作情報には、基準情報に基づくタイムスタンプが、単位時間ごとに又は任意の時間に付加されることが必要である。なお、各視聴ユーザの端末装置10の動画生成部100は、上記「3−1(1)」項において説明したものと同様の手法により、アバターオブジェクトのアニメーションを含む動画を生成することが可能である。
【0151】
また、以上の説明において、ギフトオブジェクト情報等に対して「基準時間に基づくタイムスタンプが付加されている」こととは、ギフトオブジェクト情報が基準時間に対応付けられている」ことに対応するものである。
【0152】
以上説明した様々な実施形態において、上述した各端末装置10の動作は、この端末装置10と同様の構成を有するスタジオユニット30によっても同様に実行可能なものである。
【0153】
なお、上述した様々な実施形態は、矛盾の生じない限りにおいて、相互に組み合わせて実装することが可能なものである。
【0154】
以上説明したように、本件出願において開示された様々な実施形態では、配信ユーザの端末装置10から各視聴ユーザの端末装置10に対して動画を送信することなく、各視聴ユーザの端末装置10は、配信ユーザの動作に基づくアバターオブジェクトのアニメーションを含む動画を再生することができる。よって、配信ユーザの端末装置10から各視聴ユーザの端末装置10に送信される情報の量を抑えることができる。これにより、各視聴ユーザの端末装置10は、通信網2に生ずる障害に起因する影響を抑えつつ動画を再生することができる。
【0155】
さらに、各視聴ユーザの端末装置10は、配信ユーザの端末装置10から、基準時間に基づくタイムスタンプが付加されたギフトオブジェクト情報430及び音声情報420を受信し、ギフトオブジェクトの表示及び音声の再生の両方を同一の基準時間に同期させることができる。これにより、各視聴ユーザの端末装置10は、ギフトオブジェクトの表示と音声の再生とを同期させることができる。このような同期は、通信網2に障害が生じているか否か、及び、各視聴ユーザの端末装置10が音声情報420をバッファリングして再生するか否か等の影響を受け難いものである。
【0156】
したがって、本件出願に開示された様々な実施形態によれば、各視聴ユーザの端末装置において、音声を再生するタイミングとギフトに対応するオブジェクトを描画するタイミングとの間におけるずれを少なくとも部分的に抑えることができる。
【課題】 音声を再生するタイミングとギフトに対応するオブジェクトを描画するタイミングとの間におけるずれを少なくとも部分的に抑えることが可能な手法を提供すること。
【解決手段】 一実施形態に係るコンピュータプログラムは、少なくとも1つのプロセッサにより実行されることにより、配信ユーザの動作に関する動作情報に基づいて生成される該配信ユーザのアバターオブジェクトのアニメーションと、該配信ユーザに対して視聴ユーザにより付与され予め定められた規則に従って動作するギフトオブジェクトのアニメーションと、を含む動画を生成することが可能であり、基準時間に対応付けられた前記ギフトオブジェクトの座標に関する情報を含む座標情報、及び、前記基準時間に対応付けられた前記配信ユーザの発話に関する音声情報を、通信回線を介して複数の視聴ユーザの端末装置に向けて送信する、ように前記プロセッサを機能させるものである。