以下、添付図面を参照して本発明の様々な実施形態を説明する。なお、図面において共通した構成要素には同一の参照符号が付されている。また、或る図面に表現された構成要素が、説明の便宜上、別の図面においては省略されていることがある点に留意されたい。さらにまた、添付した図面が必ずしも正確な縮尺で記載されている訳ではないということに注意されたい。さらにまた、アプリケーションという用語は、ソフトウェア又はプログラムと称呼されるものであってもよく、コンピュータに対する指令であって、ある種の結果を得ることができるように組み合わされたものであればよい。
1.動画配信システムの構成
本件出願において開示される動画配信システム1は、簡潔にいえば、配信を行う配信ユーザが、その端末装置を用いて、この配信ユーザの動作に関するデータ及び/又は配信ユーザによって発せられた発話や歌唱に関する音声データに基づいて生成されたアバターオブジェクトのアニメーションを含む動画を、通信回線を介して、動画を視聴する視聴ユーザの端末装置へと配信することを可能にするものである。
図1は、一実施形態に関する動画配信システム1の構成の一例を示すブロック図である。図1に示すように、動画配信システム1は、通信回線(図示せず)に接続される複数の端末装置10と、通信回線に接続される1又はそれ以上のサーバ装置20と、を含むことができる。各端末装置10は、通信回線を介して、1又はそれ以上のサーバ装置20に接続される。
なお、通信回線とは、携帯電話網、無線LAN、固定電話網、インターネット、イントラネット及び/又はイーサネット(登録商標)等をこれらに限定することなく含むことができる。
1−1.端末装置10
図1に示すように、複数の端末装置10は、1又はそれ以上の配信ユーザの端末装置10(ここでは端末装置10A)と、1又はそれ以上の視聴ユーザの端末装置10(ここでは端末装置10B乃至10D)と、を含むことができる。各端末装置10は、共通した構成を有することにより、動画を配信するための端末装置(配信ユーザの端末装置10)及び動画を視聴するための端末装置(視聴ユーザの端末装置10)のいずれにもなり得るものである。
各端末装置10は、配信ユーザの端末装置10として動作する場合には、インストールされた動画配信用アプリケーションを実行することにより、その配信ユーザの動作に関するデータ及び/又は配信ユーザによって発せられた発話や歌唱に関する音声データを取得し、取得したデータに従って変化させた仮想的なキャラクター(アバターオブジェクト)のアニメーションを含む動画を生成して、当該動画を、通信回線を介してサーバ装置20(配信サーバ装置20C)に送信することができる。当該動画は、サーバ装置20(配信サーバ装置20C)により通信回線を介して、インストールされた動画視聴用アプリケーションを実行する、動画を受信するための端末装置10(視聴ユーザの端末装置10)に配信される。
さらに、各端末装置10が配信ユーザの端末装置10として動作する場合において、サーバ装置20が、通信回線を介して、視聴ユーザの操作に基づいてこの配信ユーザ(アバターオブジェクト)に対してギフトオブジェクト(第1のギフトオブジェクト)を付与すること(ギフティング)を要求する1又は複数の要求信号(1つの視聴ユーザ端末装置10から複数の要求信号が発信される場合、及び複数の視聴ユーザ端末装置10から要求信号が発信される場合の両方を含む)を、動画を視聴する視聴ユーザの端末装置10から受信すると、各端末装置10は、サーバ装置20(情報処理サーバ装置20B)から当該要求信号を受信して、アバターオブジェクトのアニメーションを含む動画上に、当該第1のギフトオブジェクトを表示させることができる。当該動画上に第1のギフトオブジェクトを表示させる具体的な方法については後述する。
さらにまた、各端末装置10が配信ユーザの端末装置10として動作する場合において、配信ユーザの動作に基づいて、動画上に表示された1又は複数の第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したと端末装置10が判定した場合に、当該端末装置10は、当該所定アクションを実行された第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを動画上に表示させることができる。なお、所定アクションの詳細、所定アクションの判定方法の詳細、及び動画上に第2のギフトオブジェクトを表示させる具体的な方法については後述する。
一方、各端末装置10は、動画を視聴するための端末装置(視聴ユーザの端末装置)として動作する場合には、インストールされた動画視聴用アプリケーションを実行することにより、配信ユーザの端末装置10により配信された動画を、サーバ装置20(配信サーバ装置20C)を介して受信することができる。
さらに、各端末装置10は、視聴ユーザの端末装置として動作する場合には、動画視聴用アプリケーションを実行することにより、視聴ユーザの操作に基づいて配信ユーザ(アバターオブジェクト)に対して第1のギフトオブジェクトを付与すること(ギフティング)を要求する要求信号をサーバ装置20(ギフトAPIサーバ装置20A)に送信することができる。
さらに、各端末装置10は、視聴ユーザの端末装置として動作する場合には、動画視聴用アプリケーションを実行することにより、視聴ユーザから配信ユーザ(アバターオブジェクト)に対するコメントに関する情報をサーバ装置20(コメントAPIサーバ装置20D)に送信することができる。
なお、前述した動画配信用アプリケーション及び動画視聴用アプリケーションは、統合された1つのアプリケーションとして、又は、それぞれ別々のアプリケーションとして、各端末装置10にインストール及び実行されるものとすることができる。
各端末装置10は、このような動作を実行することができる任意の端末装置であって、スマートフォン、タブレット、携帯電話(フィーチャーフォン)及び/又はパーソナルコンピュータ等を、これらに限定することなく含むことができるものである。
1−2.サーバ装置20
図1に示すように、サーバ装置20は、後述する複数のサーバ装置が組み合わされた動画配信システムと呼ぶこともできる。
サーバ装置20は、配信ユーザの端末装置10から送信されたアバターオブジェクトのアニメーションを含む動画を各視聴ユーザの端末装置10に配信することができる。
さらに、サーバ装置20は、アバターオブジェクトに対して第1のギフトオブジェクトを付与すること(ギフティング)を要求する1又は複数の要求信号(1つの視聴ユーザ端末装置10から複数の要求信号が発信される場合、及び複数の視聴ユーザ端末装置10から要求信号が発信される場合の両方を含む)を、各視聴ユーザの端末装置10から受信することができる。また、サーバ装置20は、当該要求信号に関する情報を、配信ユーザの端末装置10へ発信した上で、配信ユーザの端末装置10がアバターオブジェクトのアニメーションを含む動画上に当該要求信号に対応する第1のギフトオブジェクトを表示させた動画を生成する。サーバ装置20は、当該動画(第1のギフトオブジェクトが表示された動画)を配信ユーザの端末装置10から受信することもできる。
さらにまた、配信ユーザの動作に基づいて、動画上に表示された1又は複数の第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したと端末装置10(配信ユーザの端末装置10)が判定した場合において、当該端末装置10が、当該所定アクションを実行された第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを動画上に表示させると、サーバ装置20は、当該第2のギフトオブジェクトが表示された動画を当該端末装置10から受信することもできる。
さらに、サーバ装置20は、視聴ユーザから配信ユーザ(アバターオブジェクト)に対するコメントに関する情報を、視聴ユーザの端末装置10から受信することができ、且つ当該コメントを同一の動画を視聴する視聴ユーザに対して配信することができる。
このような動作を実行するために、サーバ装置20は、一実施形態において、相互に通信回線(図示しない無線回線及び/又は有線回線を含む)を介して接続された、ギフトAPIサーバ装置20A、情報処理サーバ装置20B、配信サーバ装置20C、及びコメントAPIサーバ装置20Dを含むことができる。
ギフトAPIサーバ装置20Aは、視聴ユーザの操作に基づいてアバターオブジェクトに対して第1のギフトオブジェクトを付与すること(ギフティング)を要求する1又は複数の要求信号を、各視聴ユーザの端末装置10から受信することができる。この際、ギフトAPIサーバ装置20Aは、当該要求信号から、ギフティング行為がなされた視聴ユーザの識別情報(各視聴ユーザの端末装置10のシリアル番号や各視聴ユーザに付与されるID情報等)、ギフティングされた第1のギフトオブジェクトに関する情報(種類、名称、色、大きさ等に関する情報等)、及びギフティング対象のアバターオブジェクトたる配信ユーザの識別情報(配信ユーザの端末装置10のシリアル番号や配信ユーザに付与されるID情報等)を少なくとも読み出して、読み出した情報を自動的に、又は情報処理サーバ装置20Bから問い合わせを受けたときに、情報処理サーバ装置20Bに送信することができる。
情報処理サーバ装置20Bは、自動的に又は自ら問い合わせをして、ギフトAPIサーバ装置20Aから当該ギフトAPIサーバ装置20Aが読み出した情報を受信して、当該情報を配信ユーザの端末装置10へ発信することができる。また、情報処理サーバ装置20Bは、配信ユーザ毎のテーブル(データベース)を有することができ、ギフトAPIサーバ装置20Aが読み出した第1のギフトオブジェクトに関する情報を、配信ユーザ毎のテーブルに記憶してもよい。
さらに、情報処理サーバ装置20Bは、記憶された視聴ユーザの識別情報及び第1のギフトオブジェクトに関する情報を参照して、アバターオブジェクト(配信ユーザ)に対して、どの視聴ユーザがどのような第1のギフトオブジェクトを付与したかに関する全て又は一部のコメント情報をコメントAPIサーバ装置20Dに送信することができる。
さらにまた、情報処理サーバ装置20Bは、第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したと判定され第2のギフトオブジェクトが動画上に表示された旨に関する情報を、配信ユーザの端末装置10から受信して、第2のギフトオブジェクトが動画上に表示されることに関するコメント情報をコメントAPIサーバ装置20Dに送信するような機能を含んでいてもよい。
配信サーバ装置20Cは、配信ユーザの端末装置10から送信された動画(第1のギフトオブジェクトが表示された動画及び第2のギフトオブジェクトが表示された動画、を含む)を、各視聴ユーザの端末装置10に配信することができる。
コメントAPIサーバ装置20Dは、視聴ユーザの端末装置10から視聴ユーザのコメントを受信することができ、受信した当該コメントを、同一の動画を視聴している各視聴ユーザに対して配信することができる。
また、コメントAPIサーバ装置20Dは、情報処理サーバ装置20Bから受信する、アバターオブジェクト(配信ユーザ)に対してどの視聴ユーザがどんな第1のギフトオブジェクトを付与したかに関する全て又は一部の情報に対応するコメントを、同一の動画を視聴している各視聴ユーザに対して配信することができる。
さらにまた、コメントAPIサーバ装置20Dは、情報処理サーバ装置20Bから受信する、第2のギフトオブジェクトが動画上に表示されることに関するコメント情報に基づいて、当該コメント情報に対応するコメントを同一の動画を視聴している各視聴ユーザに対して配信することもできる。
なお、図1に示した例では、負荷を分散すること等を目的として、サーバ装置20が、ギフトAPIサーバ装置20A、情報処理サーバ装置20B、配信サーバ装置20C、及びコメントAPIサーバ装置20Dからなる4つのサーバ装置を有する構成が示されている。しかし、これら4つのサーバ装置のうちの少なくとも1つのサーバ装置が残りのサーバ装置のいずれかと統合されるようにしてもよい。例えば、情報処理サーバ装置20Bと配信サーバ装置20Cとを統合してもよい。
2.各装置のハードウェア構成
次に、端末装置10及びサーバ装置20の各々が有するハードウェア構成の一例について説明する。
2−1.端末装置10のハードウェア構成
各端末装置10のハードウェア構成例について図2を参照して説明する。図2は、図1に示した端末装置10(サーバ装置20)のハードウェア構成の一例を模式的に示すブロック図である(なお、図2において、括弧内の参照符号は、後述するようにサーバ装置20に関連して記載されたものである。)
図2に示すように、各端末装置10は、主に、中央処理装置11と、主記憶装置12と、入出力インタフェイス13と、入力装置14と、補助記憶装置15と、出力装置16と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
中央処理装置11は、「CPU」と称されるものであり、主記憶装置12に記憶されている命令及びデータに対して演算を行い、その演算の結果を主記憶装置12に記憶させるものである。さらに、中央処理装置11は、入出力インタフェイス13を介して、入力装置14、補助記憶装置15及び出力装置16等を制御することができる。端末装置10は、1又はそれ以上のこのような中央処理装置11を含むことが可能である。
主記憶装置12は、「メモリ」と称されるものであり、入力装置14、補助記憶装置15及び通信網30(サーバ装置20等)から、入出力インタフェイス13を介して受信した命令及びデータ、並びに、中央処理装置11の演算結果を記憶するものである。主記憶装置12は、RAM(ランダムアクセスメモリ)、ROM(リードオンリーメモリ)及び/又はフラッシュメモリ等をこれらに限定することなく含むことができる。
補助記憶装置15は、主記憶装置12よりも大きな容量を有する記憶装置である。前述した特定のアプリケーション(動画配信用アプリケーション、動画視聴用アプリケーション等)やウェブブラウザ等を構成する命令及びデータ(コンピュータプログラム)を記憶しておき、中央処理装置11により制御されることにより、これらの命令及びデータ(コンピュータプログラム)を、入出力インタフェイス13を介して主記憶装置12に送信することができる。補助記憶装置15は、磁気ディスク装置及び/又は光ディスク装置等をこれらに限定することなく含むことができる。
入力装置14は、外部からデータを取り込む装置であり、タッチパネル、ボタン、キーボード、マウス及び/又はセンサ等をこれらに限定することなく含むものである。センサは、後述するように、1又はそれ以上のカメラ等及び/又は1又はそれ以上のマイク等を含むセンサをこれらに限定することなく含むことができる。
出力装置16は、ディスプレイ装置、タッチパネル及び/又はプリンタ装置等をこれらに限定することなく含むことができる。
このようなハードウェア構成にあっては、中央処理装置11が、補助記憶装置15に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置12にロードし、ロードした命令及びデータを演算することにより、入出力インタフェイス13を介して出力装置16を制御し、或いはまた、入出力インタフェイス13及び通信網30を介して、他の装置(例えばサーバ装置20及び他の端末装置10等)との間で様々な情報の送受信を行うことができる。
これにより、端末装置10は、インストールされた特定のアプリケーションを実行することにより、動画を生成するために必要な動作、動画を発信(配信)及び/又は受信するために必要な動作、ギフティング行為に必要な動作、後述する所定アクションが実行されたかに関する判定、コメントを発信するために必要な動作(その他、後に詳述する様々な動作を含む)を実行することができる。
なお、端末装置10は、中央処理装置11に代えて又は中央処理装置11とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
2−2.サーバ装置20のハードウェア構成
各サーバ装置20のハードウェア構成例について同じく図2を参照して説明する。各サーバ装置20(ギフトAPIサーバ装置20A、情報処理サーバ装置20B、配信サーバ装置20C、及びコメントAPIサーバ装置20D)のハードウェア構成としては、例えば、前述した各端末装置10のハードウェア構成と同一のものを用いることが可能である。したがって、各サーバ装置20が有する構成要素に対する参照符号は、図2において括弧内に示されている。
図2に示すように、各サーバ装置20は、主に、中央処理装置21と、主記憶装置22と、入出力インタフェイス23と、入力装置24と、補助記憶装置25と、出力装置26と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。
中央処理装置21、主記憶装置22、入出力インタフェイス23、入力装置24、補助記憶装置25及び出力装置26は、それぞれ、前述した各端末装置10に含まれる、中央処理装置11、主記憶装置12、入出力インタフェイス13、入力装置14、補助記憶装置15及び出力装置16と略同一なものとすることができる。
このようなハードウェア構成にあっては、中央処理装置21が、補助記憶装置25に記憶された特定のアプリケーションを構成する命令及びデータ(コンピュータプログラム)を順次主記憶装置22にロードし、ロードした命令及びデータを演算することにより、入出力インタフェイス23を介して出力装置26を制御し、或いはまた、入出力インタフェイス23及び通信回線30を介して、他の装置(例えば各端末装置10等)との間で様々な情報の送受信を行うことができる。
これにより、サーバ装置20は、各配信ユーザの端末装置10により生成され送信された動画を各視聴ユーザの端末装置10に配信するために必要な動作、各視聴ユーザの端末装置10から発信されるギフティング行為を受信するために必要な動作、端末装置10に動画を生成させるために必要な要求情報を生成するために必要な動作、動画を発信(配信)及び/又は受信するために必要な動作等(後に詳述する様々な動作を含む)を実行することができる。
なお、サーバ装置20は、中央処理装置21に代えて又は中央処理装置21とともに、1又はそれ以上のマイクロプロセッサ、及び/又は、グラフィックスプロセッシングユニット(GPU)を含むものであってもよい。
3.各装置の機能
次に、端末装置10及びサーバ装置20の各々が有する機能の詳細の一例について説明する。
3−1.端末装置10の機能
端末装置10の機能の一例について図3乃至図8を参照しつつ説明する。図3は、図1に示した端末装置10の機能の一例を模式的に示すブロック図である。図4は、配信ユーザのアバターオブジェクトのアニメーションを含む動画上に第1のギフトオブジェクトが表示された一例を示す図である。図5は、配信ユーザのアバターオブジェクトのアニメーションを含む動画上に第1のギフトオブジェクトが表示され、且つ2つの第1コリジョン領域が重複する場合を示す図である。図6及び図7は、配信ユーザのアバターオブジェクトのアニメーションを含む動画上に第2のギフトオブジェクトが表示された一例を示す図である。図8は、配信ユーザのアバターオブジェクトのアニメーションを含む動画上にエフェクトオブジェクトが表示された一例を示す図である。
図3に示すように、端末装置10は、主に、動画生成部100、表示部110、判定部120、記憶部130、ユーザインタフェイス部140、ギフト記憶部150、及び通信部160を含む。
(1)動画生成部100
動画生成部100は、配信ユーザの動作に関するデータ及び/又は配信ユーザによって発せられた発話や歌唱に関する音声データに基づいて、この配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成することができる。これを実現するために、動画生成部100は、例えば、取得部(図示せず)及び処理部(図示せず)を含むことができる。
取得部は、配信ユーザの顔や手足等(体全体)に関するデータを取得する1又はそれ以上の第1のセンサ(図示せず)と、配信ユーザにより発せられた発話及び/又は歌唱に関する音声データを取得する1又はそれ以上の第2のセンサ(図示せず)と、を含むことができる。
第1のセンサは、好ましい実施形態では、可視光線を撮像するRGBカメラと、近赤外線を撮像する近赤外線カメラと、を少なくとも含むことができる。また、第1のセンサは、後述するモーションセンサやトラッキングセンサ等を含むことができる。前述のRGBカメラや近赤外線カメラとしては、例えばiphone X(登録商標)のトゥルーデプス(True Depth)カメラに含まれたものを用いることが可能である。第2のセンサは、音声を記録するマイクロフォンを含むことができる。
まず、第1のセンサに関して、取得部は、配信ユーザの顔や手足等に近接して配置された第1のセンサ(第1のセンサに含まれるカメラ)を用いて配信ユーザの顔や手足等を撮像する。これにより、取得部は、RGBカメラにより取得された画像をタイムコード(取得した時間を示すコード)に対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。さらに、取得部は、近赤外線カメラにより取得された所定数(例えば51個)の深度を示す数値(例えば浮動小数点の数値)を上記タイムコードに対応付けて単位時間にわたって記録したデータ(例えばTSVファイル[データ間をタブで区切って複数のデータを記録する形式のファイル])を生成することができる。
近赤外線カメラに関して、具体的には、ドットプロジェクタがドット(点)パターンをなす赤外線レーザーを演者たる配信ユーザの顔や手足等に放射し、近赤外線カメラが、配信ユーザの顔に投影され反射した赤外線ドットを捉え、このように捉えた赤外線ドットの画像を生成する。取得部は、予め登録されているドットプロジェクタにより放射されたドットパターンの画像と、近赤外線カメラにより捉えられた画像とを比較して、両画像における各ポイント(各特徴点)(例えば51個のポイント・特徴点の各々)における位置のずれを用いて各ポイント(各特徴点)の深度(各ポイント・各特徴点と近赤外線カメラとの間の距離)を算出することができる。取得部は、このように算出された深度を示す数値を上記のようにタイムコードに対応付けて単位時間にわたって記録したデータを生成することができる。
次に、第2のセンサに関して、取得部は、配信ユーザに近接して配置された第2のセンサを用いて配信ユーザにより発せられた発話及び/又は歌唱に関する音声を取得する。これにより、取得部は、タイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。一実施形態では、取得部は、第1のセンサを用いて配信ユーザの顔や手足に関するデータを取得することと同時に、第2のセンサを用いて配信ユーザにより発せられた発話及び/又は歌唱に関する音声データを取得することができる。この場合には、取得部は、RGBカメラにより取得された画像と、第2のセンサを用いて配信ユーザにより発せられた発話及び/又は歌唱に関する音声データとを、同一のタイムコードに対応付けて単位時間にわたって記録したデータ(例えばMPEGファイル)を生成することができる。
取得部は、このように生成した、配信ユーザの顔や手足等に関するデータ(MPEGファイル及びTSVファイル等)、及び/又は、配信ユーザにより発せられた発話及び/又は歌唱に関する音声データ(MPEGファイル等)を、処理部に出力することができる。
なお、ここでは、第1のセンサがRGBカメラ及び赤外線カメラを含む場合について説明したが、第1のセンサは、例えば、(A)赤外線レーザーにより放射され配信ユーザの顔や手足等に反射した赤外線を検出するカメラ、(B)可視光線を撮像する複数のRGBカメラ、及び、(C)可視光線を撮像する単一のカメラ、のうちのいずれかを含むものであってもよい。上記(A)の場合には、取得部は、前述したものと同様の手法により、配信ユーザの顔や手足等における各特徴点について深度を算出することができる。上記(B)の場合には、取得部は、複数のRGBカメラにより撮像された複数の画像を用いて、配信ユーザの顔や手足等における各特徴点について奥行(深度)を計算することができる。上記(C)の場合には、取得部は、単一のカメラにより撮像された画像から、配信ユーザの顔や手足等における各特徴点の奥行(深度)を、ディープラーニング等を利用して算出することができる。また、上記(C)の場合には、取得部は、単一のカメラにより撮像された画像に対する分析処理(画像処理等)により、配信ユーザの顔や手足等における各特徴点の奥行(深度)を算出してもよい。
また、取得部は、第1のセンサに含まれるモーションセンサやトラッキングセンサを用いて、配信ユーザの体の各部位の位置や向きに関する検出情報を取得し、当該検出情報を処理部に出力することができる。なお、モーションセンサやトラッキングセンサを用いて取得される配信ユーザの体の各部位の位置や向きに関する検出情報の詳細については後述する。
処理部は、取得部からの、配信ユーザの顔や手足等に関するデータ(及び検出情報等に関する各種情報)に基づいて、仮想的なキャラクター(アバターオブジェクト)のアニメーションを含む動画を生成することができる。アバターオブジェクトの動画自体については、処理部は、図示しないキャラクターデータ記憶部に記憶された様々な情報(例えば、ジオメトリ情報、ボーン情報、テクスチャ情報、シェーダ情報及びブレンドシェイプ情報等)を用いて、図示しないレンダリング部にレンダリングを実行させることにより、アバターオブジェクトの動画を生成することもできる。
なお、配信ユーザの動作に関するデータ及び/又は配信ユーザによって発せられた発話や歌唱に関する音声データに基づいて、この配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成するために、他の任意の周知な技術を利用することも可能である。
ところで、後述する通信部160が、視聴ユーザからのギフティングに対応して、アバターオブジェクトのアニメーションを含む動画上に第1のギフトオブジェクトを表示させる旨の要求情報をサーバ装置20(情報処理サーバ20B)から受信すると、動画生成部100は、通信部160を介して当該要求情報を受信し、当該要求情報に対応する後述のギフト記憶部150に記憶される第1のギフトオブジェクトに関する識別情報(名称・形状・色等)を参照して、アバターオブジェクトのアニメーションを含む動画上に第1のギフトオブジェクトを表示させる(第1のギフトオブジェクトを表示させた動画を生成する)。
具体的には、視聴ユーザからのギフティング行為を契機として第1のギフトオブジェクトを動画上に表示させるために、第1のギフトオブジェクトの各々には、その形状に対応する第1コリジョン領域が予め設定され、各第1のギフトオブジェクトとこれに対応する第1コリジョン領域に関する情報は、後述するギフト記憶部150において、各第1のギフトオブジェクトに関する情報(大きさ・形状・色等)とともに記憶されている。さらに、第1のギフトオブジェクトを動画上のどの位置に表示させるかを特定するために、第1のギフトオブジェクトの各々には、三次元直交座標系の位置座標がギフティング時に設定される。当該位置座標の設定に際しては、動画上に既に表示されているアバターオブジェクトや第1のギフトオブジェクト等の各種オブジェクトと動画上において重複しない位置座標が設定される。動画上において重複しない位置座標とは、動画上に表示される複数の第1のギフトオブジェクトの各々に設定される複数の第1コリジョン領域が相互に重複しないこと、及び動画上においてアバターオブジェクト(アバターオブジェクトの各部位)に設定される第2コリジョン領域や他のオブジェクト(例えば、第2のギフトオブジェクト)に設定される第3コリジョン領域に対して第1コリジョン領域が重複しないことを意味し、この条件を満たすように、動画生成部100は、第1のギフトオブジェクトの各々に三次元直交座標(X軸を横方向、Y軸を奥行方向、及びZ軸を縦方向)に関する位置座標を設定する。なお、当該位置座標とは、第1のギフトオブジェクトの中心位置に対応するX軸、Y軸、及びZ軸に関する位置座標(例えば、図5において第1のギフトオブジェクト410Aの中心位置Z0に対応する位置座標)、及び/又は第1コリジョン領域の外縁を形成する複数の位置に対応するX軸、Y軸、及びZ軸に関する位置座標(例えば、図5において第1のギフトオブジェクト410Aに対応する第1コリジョン領域の外縁を形成する位置Z1〜Z12に対応する位置座標)を意味する。このように設定された位置座標(及び第1コリジョン領域)に基づいて、各第1のギフトオブジェクトはアバターオブジェクトのアニメーションを含む動画上に表示される。また、このように設定された位置座標に基づいて、複数の第1コリジョン領域が重複しているか否かを判断することができる。なお、第1のギフトオブジェクトの各々に設定される位置座標、第1コリジョン領域、及び第2コリジョン領域は三次元直行座標系にて設定される旨説明したが、動画が二次元で表現される場合においては、二次元直行座標系にて設定されてもよい。
また、後述する判定部120が、配信ユーザの動作に基づいて、動画上に表示された第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したと判定した場合、動画生成部100は、当該判定に関する信号を判定部120から受信して、アバターオブジェクトのアニメーションを含む動画上に、第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを表示させる(第2のギフトオブジェクトを表示させた動画を生成する)。
具体的には、配信ユーザの動作に基づいて動画上に表示された第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したと判定部120が判定することを契機として第2のギフトオブジェクトを動画上に表示させるために、第2のギフトオブジェクトの各々には、その形状に対応する第3コリジョン領域が予め設定され、各第2のギフトオブジェクトとこれに対応する第3コリジョン領域に関する情報は、後述するギフト記憶部150において、第2のギフトオブジェクトに関する情報(大きさ・形状・色等)とともに記憶されている。さらに、第2のギフトオブジェクトを動画上のどの位置に表示させるかを特定するために、第2のギフトオブジェクトの各々には、三次元直交座標系の位置座標が設定される。当該位置座標の設定に際しては、動画上に既に表示されているアバターオブジェクトや第1のギフトオブジェクト等の各種オブジェクトと動画上において重複しない位置座標が設定される。動画上において重複しない位置座標とは、前述と同様、動画上に表示される複数の第1のギフトオブジェクトの各々に設定される複数の第1コリジョン領域やアバターオブジェクトに設定される第2コリジョン領域に対して第3コリジョン領域が重複しないことを意味し、この条件を満たすように、動画生成部100は第2のギフトオブジェクトの各々に三次元直交座標((X軸を横方向、Y軸を奥行方向、Z軸を縦方向)に関する位置座標を設定する。なお、当該位置座標とは、前述の第1のギフトオブジェクトと同様、第2のギフトオブジェクトの中心位置に対応するX軸、Y軸、及びZ軸に関する位置座標、及び/又は第3コリジョン領域の外縁を形成する複数の位置に対応するX軸、Y軸、及びZ軸に関する位置座標を意味する。このように設定された位置座標(及び第3コリジョン領域)に基づいて、各第2のギフトオブジェクトはアバターオブジェクトのアニメーションを含む動画上に表示される。なお、第2のギフトオブジェクトの各々に設定される位置座標及び第3コリジョン領域は三次元直行座標にて設定される旨説明したが、動画が二次元で表現される場合においては、二次元直行座標系にて設定されてもよい。
ところで、前述のとおり、所定アクションを実行したと判定部120が判定することを契機として第2のギフトオブジェクトを動画上に表示させるに際して、所定アクションが実行された第1のギフトオブジェクトに対しては様々な方法が採用されうる。例えば、動画上に第2のギフトオブジェクトが表示されるに際して所定アクションが実行された第1のギフトオブジェクトを当該動画上から消去する構成が採用される。また、所定アクションが実行された第1のギフトオブジェクトは動画上から消去せず、当該第1のギフトオブジェクトの形態(例えば、形状、大きさ、色、等)が時間経過とともに次第に変化する(例えば、第1のギフトオブジェクトの大きさだけが変化する場合、第1のギフトオブジェクトの一部の色が変化する場合、等)ことで第2のギフトオブジェクトが生成される(第2のギフトオブジェクトが動画上に表示される)構成としてもよい。また、前述の両方の構成が採用されるようにしてもよい(例えば、所定アクションが実行された第1のギフトオブジェクトが2つであった場合、当該2つのうちの一方の第1のギフトオブジェクトは動画上から消去され、他方の第1のギフトオブジェクトの形態が次第に変化して第2のギフトオブジェクトが生成されるような構成としてもよい)。
なお、動画生成部100は、所定の条件が満たされる場合においては、第1のギフトオブジェクトがアバターオブジェクトによって把持されると認識して、図4に示すように、当該第1のギフトオブジェクトがアバターオブジェクトによって把持された状態の動画を生成することができる。ここで所定の条件とは、配信ユーザの動作に基づいて、第1のギフトオブジェクトに設定された第1コリジョン領域と、アバターオブジェクトの手(又は指)に設定された第2コリジョン領域とが、動画内において少なくとも一部において重なりあう(重複する)と判断され、且つアバターオブジェクトの手(又は指)が折れ曲がっていると判断された場合をいう。この各判断は、動画生成部100によって実行されてもよいし、別の構成要素によって実行された上で各判断結果が少なくとも動画生成部100に送信される構成であってもよい。なお、アバターオブジェクトの手(又は指)が折れ曲がっていると判断する方法は、後述するコントローラの信号に基づいて実行することができる。なお、アバターオブジェクトによって把持される点に関しては、第2のギフトオブジェクトも同様である。つまり、第2のギフトオブジェクトに設定された第3コリジョン領域と、前述の第2コリジョン領域とが、動画内において少なくとも一部において重なりあう(重複する)と判断され、且つアバターオブジェクトの手(又は指)が折れ曲っていると判断された場合に、第2のギフトオブジェクトはアバターオブジェクトによって把持される。
なお、複数の第1コリジョン領域が重複するか否か、及び第1コリジョン領域と第2コリジョン領域とが重複するか否かに関する判断は、各コリジョン領域の外縁に対応するX軸、Y軸、及びZ軸に関する複数の位置座標に基づいて実行される。
前述のとおり、所定アクションを実行したと判定部120が判定することを契機として第2のギフトオブジェクトを動画上に表示させるに際し、動画上にどのような第2のギフトオブジェクトを表示させるかについては、動画生成部100は、後述するギフト記憶部150に記憶される設定条件を参照して決定する。当該設定条件とは、例えば、第一に、所定アクションが実行された第1のギフトオブジェクトの種類、所定アクションが実行された第1のギフトオブジェクトの種類毎の付与数、及び後述する特定位置(図4においては、特定位置Y1又はY2)から構成される種々の組合せに応じて、どのような第2のギフトオブジェクトが対応するかを関連付けた条件である。また設定条件とは、第二に、少なくとも1つのギフトオブジェクトを別の第1のギフトオブジェクトに接触させる場合においては、所定アクションが実行された第1のギフトオブジェクトの種類と数(付与数)から構成される種々の組合せに応じて、どのような第2のギフトオブジェクトが対応するかを関連付けた情報である。
前述の設定条件の第一の場合の具体例としては、図4に示される場合を参照しつつ説明すると、所定アクションが実行された第1のギフトオブジェクトの種類が「男の子のぬいぐるみ」(図4における参照符号410A)、所定アクションが実行された第1のギフトオブジェクトの種類毎(「男の子のぬいぐるみ」410A)の付与数が「1つ」、特定位置が「Y1]の場合、第2のギフトオブジェクトとしては、図6に示すように、複数の「小さなクマのぬいぐるみ」(図6における参照符号420)と予め設定されている。同様に、図4の場合において、所定アクションが実行された第1のギフトオブジェクトの種類が「男の子のぬいぐるみ」(図4における参照符号410B)、所定アクションが実行された第1のギフトオブジェクトの種類毎(「男の子のぬいぐるみ」410B)の付与数が「1つ」、特定位置が「Y2」の場合、第2のギフトオブジェクトとしては、1つの「大きな象のぬいぐるみ」(図示せず)、と予め設定されている。これらの設定条件に関する各種条件は、適宜に変更すればよく、例えばテーブルの形式でギフト記憶部150に記憶される。
他方、前述の設定条件の第二の場合の具体例としては、図5に示される場合を参照しつつ説明すると、所定アクションが実行された第1のギフトオブジェクトの種類と数が「男の子のぬいぐるみ」410Aが「1つ」、及び「男の子のぬいぐるみ」410Bが「1つ」の場合、第2のギフトオブジェクトとしては、図7に示すように、1つの「小さな男の子のぬいぐるみ」(図7における参照符号430)と予め設定されている。前述と同様、これらの設定条件に関する各種条件は、適宜に変更すればよく、例えば、第1のギフトオブジェクト同士の接触時間や第1のギフトオブジェクト同士が接触する際の衝突速度を条件としてもよい(具体的には、衝突速度はαkm/h以上の時には、第2のギフトオブジェクトとして「チーターのぬいぐるみ」を表示させ、αkm/h未満の時には、第2のギフトオブジェクトとして「亀のぬいぐるみ」を表示させる)し、所定アクションが実行された複数の第1のギフトオブジェクトの接触時の相対位置(例えば、図5に示される場合において、接触時において「男の子のぬいぐるみを」410Aが「男の子のぬいぐるみ」410Bよりも上側の場合と下側の場合とで、表示させる第2のギフトオブジェクトの種類が異ならせる)を条件としてもよい。また、これらの設定条件は、例えばテーブルの形式でギフト記憶部150に記憶される。
なお、前述の第一及び第二の設定条件には、動画上に表示される第2のギフトオブジェクト(例えば、図6に関する複数の「小さなクマのぬいぐるみ」420、及び図7に関する「「小さな男の子のぬいぐるみ」430)が、動画上のどの位置に表示されるかに関する条件も含むことができる。具体的には、図6の場合においては、第2のギフトオブジェクトとしての複数の「小さなクマのぬいぐるみ」420の各々には、動画上の複数箇所に渡って別々に配されるように、X軸、Y軸、及びZ軸に関する個別の位置座標に関する情報が予め設定される(つまり、第2のギフトオブジェクトが表示される位置は、所定アクションが実行された第1のギフトオブジェクトが存在していた位置とは異なる位置にも表示される)。他方、図7の場合においては、第2のギフトオブジェクトとしての「小さな男の子のぬいぐるみ」430には、第1のギフトオブジェクト(例えば、「男の子のぬいぐるみ」410A)が存在していた位置座標と同一の位置座標に関する情報が予め設定される。
さらに、動画生成部100は、所定アクションを実行したと判定部120が判定することを契機として第2のギフトオブジェクトを動画上に表示させるに際し、図8に示すように、当該第2のギフトオブジェクトが動画上に表示される途中の状態(第2のギフトオブジェクトが表示される直前の状態)を示すエフェクトオブジェクト500を動画上に表示させてもよい。この場合において、動画生成部100は、所定アクション(図8においては、第1のギフトオブジェクトである「男の子のぬいぐるみ」410Aを、別の第1のギフトオブジェクトである「男の子のぬいぐるみ」410Bに接触させること)を実行したと判定部120が判定した時点を契機にエフェクトオブジェクト500を動画上に表示させ、第2のギフトオブジェクトを動画上に実際に表示させた時点を契機に当該エフェクトオブジェクト500を動画上から消去させる。また、動画生成部100は、2つの第1コリジョン領域(例えば、図5における第1コリジョン領域411A及び411B)が重複している位置座標を参照して、その重複している位置座標にエフェクトオブジェクト500を表示することができる。
(2)表示部110
表示部110は、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)の配信及び/又は視聴に必要とされる様々な情報を表示することができる。例えば、表示部110は、配信される動画、受信した動画、及び/又は生成した動画等を、表示することができる。また、表示部110は、サーバ装置20から各端末装置10に配信される各種のコメントも、受信した動画とともに表示することができる。さらにまた、ギフト記憶部150に記憶されているギフト情報(第1のギフトオブジェクトに関する情報)を、視聴ユーザの操作に応じて適宜表示することもできる。
(3)判定部120
判定部120は、動画生成部100によって、アバターオブジェクトのアニメーションを含む動画上に1又は複数の第1のギフトオブジェクトが表示された状態(1又は複数の第1のギフトオブジェクトを表示させた動画が生成された状態)において、配信ユーザの動作に基づいて、当該動画上に表示された第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したか否かを判定する。ここで、所定アクションとは、例えば、アバターオブジェクトが第1のギフトオブジェクトを当該動画内の特定位置に移動させるアクションや、アバターオブジェクトが少なくとも1つの第1のギフトオブジェクトを別の第1のギフトオブジェクトに接触、摺動、又は衝突させるアクションを含むことができる。なお、前述のアクションは、いずれも配信ユーザの動作に基づくものである。
前述のとおり、第1のギフトオブジェクトの各々には、固有の(第1のギフトオブジェクトの形態に対応する)第1コリジョン領域が予め設定され、アバターオブジェクトの手(又は指)には第2コリジョン領域が予め設定され、前述の所定の条件が満たされると、第1のギフトオブジェクトはアバターオブジェクトによって把持される。なお、アバターオブジェクトは、その両手において原則2つの第1のギフトオブジェクトを把持することができるが、必ずしもこれに限定されない。例えば、アバターオブジェクトは、その両手において3つ以上の第1のギフトオブジェクトを把持するようにしてもよいし、動画内に複数のアバターオブジェクトが表示される場合においては、4つ以上の第1のギフトオブジェクトがアバターオブジェクトによって把持されうる。
判定部120は、図4に示すように、アバターオブジェクト400が、第1のギフトオブジェクト410A(又は410B)を第1の位置X1(又は第1の位置X1’)において把持する状態を起点として、配信ユーザの動作に基づいて、当該把持した状態を維持したまま第1のギフトオブジェクト410A(又は410B)を第1の位置X1(又は第1の位置X1’)とは異なる位置である第2の位置Y1(又は第2の位置Y2)へと移動させる場合に、動画内の特定位置に移動させるアクションが実行されたと判定する。この場合、第2の位置Y1(又は第2の位置Y2)が特定位置となる。なお、第1の位置X1(又は第1の位置X1’)は、動画上におけるあらゆる位置において適宜変更される。また、第2の位置Y1(又は第2の位置Y2)は、動画上におけるいずれかの位置においてXYZ座標系で予め設定しておけばよい。
また、図4に示すように、アバターオブジェクト400が2つの第1のギフトオブジェクト410A及び410Bを両手に把持する状態を起点として、図5に示すように、配信ユーザの動作に基づいて2つの第1のギフトオブジェクト410A及び410Bを接触させると、判定部120は所定アクションが実行されたと判定する。ここで、2つの第1のギフトオブジェクト410A及び410Bが接触するとは、当該2つの第1のギフトオブジェクト410A及び410Bの各々に設定される第1コリジョン領域411A及び411Bが少なくとも一部において重なりあう(重複する)ことを意味する。また、2つの第1のギフトオブジェクト410A及び410Bが接触するとは、両者が摺動又は衝突する態様も含まれる。
ところで、2つの第1のギフトオブジェクト410A及び410Bの各々に設定される第1コリジョン領域411A及び411Bが少なくとも一部において重なりあう(重複する)ことは、前述にて説明したとおり、第1コリジョン領域411A及び411Bに対応するX軸、Y軸、及びZ軸に関する位置座標に基づいて判定される。
(4)記憶部130
記憶部130は、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)の配信及び/又は視聴に必要とされる様々な情報を記憶することができる。
(5)ユーザインタフェイス部140
ユーザインタフェイス部140は、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)の配信及び/又は視聴に必要とされる様々な情報を、配信ユーザ又は視聴ユーザの操作を介して入力することができる。例えば、ユーザインタフェイス部140は、アバターオブジェクトに対するギフティングに関する視聴ユーザの操作(予め用意された複数の第1のギフトオブジェクトの中からいずれかを選択してアバターオブジェクトに付与するコマンドを選択する等の操作を含む)の内容を示す操作データや、視聴ユーザから配信ユーザ(アバターオブジェクト)に対するコメント情報(例えば、配信ユーザに対する視聴ユーザの「両手に持っている2つの男の子のぬいぐるみをぶつけてみて!」との所定アクションのヒントとなるようなコメント情報)の内容を示すデータを視聴ユーザから入力して、これら各種データを通信部160へ出力することができる。なお、前述の操作データとは、例えば、視聴ユーザが配信ユーザに対してどのような第1のギフトオブジェクト(第1のギフトオブジェクトの種類)をギフティングしたかに関する情報を含むことができる。
(6)ギフト記憶部150
ギフト記憶部150は、動画配信用アプリケーション及び動画視聴用アプリケーションが端末装置10にインストールされると、これらのアプリケーションに予め設定されるギフト情報を記憶することができる。なお、ギフト情報とは、第1のギフトオブジェクト及び第2のギフトオブジェクトの名称・形状・色等の識別情報や、視聴ユーザが第1のギフトオブジェクトをギフティングした場合に当該視聴ユーザに対して請求される第1のギフトオブジェクト毎の金額に関する情報を含むことができる。
なお、前述の識別情報には、各第1のギフトオブジェクト及び第2のギフトオブジェクトに対応する前述の第1コリジョン領域及び第3コリジョン領域に関する情報も含まれる。
また、ギフト記憶部150は、所定アクションを実行したと判定部120が判定することを契機として第2のギフトオブジェクトを動画上に表示させる際に、動画生成部100が参照する前述の設定条件を記憶する。
(7)通信部160
通信部160は、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)の配信及び/又は視聴に必要とされる様々な情報を、サーバ装置20との間において通信することができる。例えば、通信部160は、端末装置10が配信ユーザの端末装置10として動作する場合には、アバターオブジェクトのアニメーションを含む動画上に第1のギフトオブジェクトを表示させる旨の要求情報をサーバ装置20(情報処理サーバ装置20B)から受信して、生成された当該動画をサーバ装置20(配信サーバ装置20C)に送信することができる。
また、通信部160は、所定アクションを実行したと判定部120が判定したことによって動画生成部100が動画上に第2のギフトオブジェクトを表示させた場合、当該第2のギフトオブジェクトを表示させた動画をサーバ装置20(配信サーバ装置20C)に送信することができる。このように、通信部160は、動画生成部100が生成する様々な動画を動画生成部100から受信して、これらの様々な動画をサーバ装置20(配信サーバ装置20C)に送信することができる。
他方、通信部160は、端末装置10が視聴ユーザの端末装置10として動作する場合には、配信ユーザの端末装置10によって生成された動画をサーバ装置20から受信することができる。また、同じく端末装置10が視聴ユーザの端末装置10として動作する場合には、視聴ユーザから配信ユーザ(アバターオブジェクト)に対するギフティングに関する情報、及び視聴ユーザから配信ユーザ(アバターオブジェクト)に対するコメントに関する情報をサーバ装置20(コメントAPIサーバ装置20D)に送信することができる。
(8)スタジオユニット
前述の動画生成部100、表示部110、判定部120、記憶部130、ユーザインタフェイス部140、ギフト記憶部150、及び通信部160を含むスタジオユニット(図示せず)を端末装置10として用いることもできる。
スタジオユニットは、パーソナルコンピュータ等の情報処理装置により実装可能なものであって、前述した端末装置10及びサーバ装置20と同様に、主に、中央処理装置と、主記憶装置と、入出力インタフェイスと、入力装置と、補助記憶装置と、出力装置と、を含むことができる。これら装置同士は、データバス及び/又は制御バスにより接続されている。また、スタジオユニットは、インストールされた特定のアプリケーションを実行する情報処理装置として機能することにより、スタジオユニットが設置されたスタジオルーム(図示せず)に居る配信ユーザの動作に関するデータ及び/又は配信ユーザによって発せられた発話や歌唱に関するデータに基づいて、アバターオブジェクトのアニメーションを含む動画を生成することができる。
スタジオユニットに含まれる動画生成部100の構成要素の多くは、スタジオルームに配される。また、スタジオルームにおいては、配信ユーザが種々のパフォーマンスを行い、スタジオユニットが、当該配信ユーザの動作、表情、及び発話(歌唱を含む)等を検出している。
配信ユーザは、スタジオユニット(動画生成部100)に含まれる種々のセンサ群によって動作、表情、及び発話(歌唱を含む)等がキャプチャされる対象となっている。この場合において、配信ユーザは、必ずしも人間である必要はなく、例えば、自立運動可能なロボットであってもよい。また、スタジオルーム内の配信ユーザは、1であってもよいし、2以上であってもよい。
スタジオユニットにおける動画生成部100は、配信ユーザの複数の部位(例えば、手首、足甲、腰、頭頂等)に装着される種々のモーションセンサ(図示せず)と、配信ユーザの手に把持されるコントローラ(図示せず)と、装着具(図示せず)を介して配信ユーザの頭部に取付けられるカメラ(図示せず)と、を有することができる。また、スタジオユニットには、配信ユーザの音声データを取得するために、前述の装着具やスタジオルーム内のいずれかの場所(例えば、壁、床、天井等)にマイクが設けられている。さらに、スタジオユニットは、上記の構成に加えて、複数のベースステーション(図示せず)、トラッキングセンサ(図示せず)、及びディスプレイ(図示せず)を有することができる。
前述のモーションセンサは、前述のベースステーションと協働して、配信ユーザの位置及び向きを検出することができる。一実施形態において、複数のベースステーションは、多軸レーザーエミッタ―であり、同期用の点滅光を発した後に、1つのベースステーションは例えば鉛直軸の周りでレーザー光を走査し、他のベースステーションは、例えば水平軸の周りでレーザー光を走査するように構成される。モーションセンサは、ベースステーションからの点滅光及びレーザー光の入射を検知する光センサを複数備え、点滅光の入射タイミングとレーザー光の入射タイミングとの時間差、各光センサでの受光時間、各光センサが検知したレーザー光の入射角度、等を検出することができる。モーションセンサは、例えば、HTC CORPORATIONから提供されているVive Trackerであってもよいし、ZERO C SEVEN Inc.から提供されているXsens MVN Analyzeであってもよい。
スタジオユニットにおける動画生成部100は、モーションセンサにおいて算出された各モーションセンサの位置及び向きを示す検出情報を取得する。モーションセンサは、配信ユーザの手首、足甲、腰、頭頂等の部位に装着されることにより、モーションセンサの位置及び向きを検出して、配信ユーザにおける体の各部位の動きを検出することができる。なお、モーションセンサの位置及び向きを示す検出情報は、動画内(動画に含まれる仮想空間内)における配信ユーザにおける体の各部位毎のXYZ座標系における位置座標値として算出される。X軸は動画内における横方向、Y軸は動画内における奥行方向、Z軸は動画内における縦方向に対応する。したがって、配信ユーザにおける体の各部位の動きも、全てXYZ座標系における位置座標値として検出される。
一実施形態においては、複数のモーションセンサに多数の赤外LEDを搭載し、この赤外LEDからの光を、スタジオルームの床や壁に設けられた赤外線カメラで検知することで、当該モーションセンサの位置及び向きを検出してもよい。また、赤外LEDに代えて可視光LEDを使用し、この可視光LEDからの光を可視光カメラで検出することで、当該モーションセンサの位置及び向きを検出してもよい。
一実施形態においては、モーションセンサに代えて、複数の反射マーカーを用いることもできる。反射マーカーは、配信ユーザに粘着テープ等により貼付される。このように反射マーカーが貼付された配信ユーザを撮影して撮影データを生成し、この撮影データを画像処理することにより、反射マーカーの位置及び向き(前述と同様に、XYZ座標系における位置座標値)を検出するような構成としてもよい。
コントローラは、配信ユーザによる指の折り曲げ等の操作に応じたコントロール信号を出力し、これを動画生成部100が取得する。
トラッキングセンサは、動画に含まれる仮想空間を構築するための仮想カメラの設定情報を定めるためのトラッキング情報を生成する。当該トラッキング情報は、三次元直交座標系での位置及び各軸回りの角度として算出され、動画生成部100は当該トラッキング情報を取得する。
配信ユーザの頭部に取付けられるカメラは、配信ユーザの顔を撮像できるように配置される。当該カメラは、配信ユーザの顔を連続的に撮像することで、配信ユーザの顔の撮像データを取得し、動画生成部100はこの撮像データを当該カメラから取得する。なお、当該カメラは、配信ユーザの顔の奥行きを検出可能な3Dカメラであってもよい。
ディスプレイは表示部110として機能するものであり、配信ユーザによって視認可能な位置に配置され、配信ユーザは、各種情報を取得して動画生成部100によって生成された動画を、ディスプレイを通して視認することが可能となっている。
動画生成部100は、前述のモーションセンサ、トラッキングセンサ、各種カメラ、及びコントローラ等からの情報を取得して、アバターオブジェクトのアニメーションを含む動画を生成することができる。
また、スタジオユニットは、以上のとおり説明した構成要素とその機能に加えて、前述にて説明した動画生成部100、表示部110、判定部120、記憶部130、ユーザインタフェイス部140、ギフト記憶部150、及び通信部160(又はこれらの機能を有する別の構成要素)を含むことができる。これにより、前述の所定アクションに関する判定や、アバターオブジェクトのアニメーションを含む動画上に第1のギフトオブジェクト及び/又は第2のギフトオブジェクトを表示させること等を実行することができる。以上のとおり説明したスタジオユニットの構成要素は一例であって、他に適用可能な様々な構成要素を含みうる。
3−2.サーバ装置20の機能
サーバ装置20の機能の一例について図9を参照しつつ説明する。図9は、図1に示したサーバ装置20の機能の一例を模式的に示すブロック図である。
図9に示すように、サーバ装置20は、主に、記憶部200、通信部210、ギフト処理部220、及びコメント処理部230を含むことができる。
(1)記憶部200
記憶部200は、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)の配信及び/又は視聴に必要とされる様々な情報を記憶することができる。
(2)通信部210
通信部210は、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)の配信及び/又は視聴に必要とされる様々な情報を、配信ユーザの端末装置10及び/又は視聴ユーザの端末装置10との間において通信することができる。例えば、通信部210は、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)を、配信ユーザの端末装置10から受信して各視聴ユーザの端末装置10へ配信することができる。
また、通信部210は、視聴ユーザから配信ユーザ(アバターオブジェクト)に対するギフティングに関する情報、及び視聴ユーザから配信ユーザ(アバターオブジェクト)に対するコメントに関する情報を視聴ユーザの端末装置10から受信すると、ギフティングに関する情報はギフト処理部220へ、コメントに関する情報はコメント処理部230へと各々出力する。
さらにまた、通信部210は、ギフト処理部220が読み出した第1のギフトオブジェクトに関する情報をギフト処理部220から入手して、アバターオブジェクトのアニメーションを含む動画上に当該第1のギフトオブジェクトを表示させる旨の要求情報を配信ユーザの端末装置10へ送信することができる。なお、通信部210がギフト処理部220から入手する第1のギフトオブジェクトに関する情報とは、配信ユーザの端末装置10における動画生成部100がギフト記憶部150に記憶される多数の第1のギフトオブジェクトに関する情報の中から、どの第1のギフトオブジェクトの情報を参照すればよいかを特定できる程度の情報であればよい。例えば、視聴ユーザの端末装置10から、第1のギフトオブジェクトとして「男の子のぬいぐるみ」がギフティングされた場合、通信部210は、ギフト処理部220から、当該「男の子のぬいぐるみ」たる第1のギフトオブジェクトの名称(又は名称に類する文字列等)のみであってもよい。
さらにまた、通信部210は、配信ユーザの端末装置10から、第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したと判定され第2のギフトオブジェクトが動画上に表示された旨に関する情報を受信して、当該情報をコメント処理部230へ出力することもできる。
(3)ギフト処理部220
ギフト処理部220は、通信部210からギフティングに関する情報を受信すると、ギフティング行為がなされた視聴ユーザの識別情報(各視聴ユーザの端末装置10のシリアル番号や各視聴ユーザに付与されるID情報等)、ギフティングされた第1のギフトオブジェクトに関する情報(第1のギフトオブジェクトの名称・大きさ・形状・色等の識別情報)、及びギフティング対象のアバターオブジェクトたる配信ユーザの識別情報(配信ユーザの端末装置10のシリアル番号や配信ユーザに付与されるID情報等)を読み出す。
なお、第1のギフトオブジェクトに関し、ギフト処理部220は、配信ユーザの端末装置10における動画生成部100がギフト記憶部150に記憶される多数の第1のギフトオブジェクトに関する情報の中から、どの第1のギフトオブジェクトの情報を参照すればよいかを特定できる程度の情報(例えば、前述のとおり、第1のギフトオブジェクトの名称又は名称に類する文字列等)のみを読み出せばよく、第1のギフトオブジェクトの大きさ、形状、色等の識別情報は必ずしも読み出さなくてもよい。また、各第1のギフトオブジェクトに対応する第1コリジョン領域に関する情報は、ギフト処理部220にて読み出されることはなく、前述したギフト記憶部150にて記憶されている。
なお、ギフト処理部220によって読み出された各種情報は、記憶部200に出力されて、当該記憶部200にて記憶される。
(4)コメント処理部230
コメント処理部230は、視聴ユーザから配信ユーザ(アバターオブジェクト)に対するコメント情報(例えば、配信ユーザに対する視聴ユーザの『両手に持っている2つの「男の子のぬいぐるみ」をぶつけてみて!』との所定アクションのヒントとなるようなコメント情報を含む)を、通信部210を介して視聴ユーザの端末装置10から受信することができ、視聴ユーザからの当該コメント情報を、同一の動画を視聴している各視聴ユーザに対して配信することができる。
また、コメント処理部230は、ギフト処理部220によって読み出された各種情報(記憶部200に記憶された情報)を参照して、どの視聴ユーザがどんな第1のギフトオブジェクトをアバターオブジェクトに対してギフティングしたかに関する全て又は一部の情報に対応するコメント情報(例えば、『視聴ユーザXが「男の子のぬいぐるみ」をギフティングしたよ!』とのコメント情報)を作成して、当該コメント情報を同一の動画を視聴している各視聴ユーザに対して配信することもできる。
さらにまた、コメント処理部230は、通信部210から、第2のギフトオブジェクトが動画上に表示された旨に関する情報を受信すると、その旨に対応するコメント情報(例えば、『たくさんの「小さなクマのぬいぐるみ」出現!』とのコメント情報)を作成して、当該コメント情報を同一の動画を視聴している各視聴ユーザに対して配信することもできる。
さらにまた、コメント処理部230は、視聴ユーザから配信ユーザ(アバターオブジェクト)に対するコメント情報を、通信部210を介して視聴ユーザの端末装置10から受信しているか否かにかかわらず、ギフト処理部220によって読み出された各種情報を参照して、ギフティングされた第1のギフトオブジェクトに対する所定アクションのヒントとなるようなコメント情報(例えば、『2つの「男の子のぬいぐるみ」を上下にくっつけて並べてみて!』とのコメント情報)を自ら作成して、当該コメント情報を同一の動画を視聴している各視聴ユーザに対して配信することもできる。
4.動画配信システム1の全体的な動作
次に、上記構成を有する動画配信システム1においてなされる全体的な動作について、図10を参照して説明する。図10は、図1に示した動画配信システム1において行われる動作の一例を示すフロー図である。
まず、ステップ(以下「ST」という。)300において、配信ユーザの操作に従って、その端末装置10(ここでは端末装置10A)が動画配信用アプリケーションを起動して実行する。
次に、ST301において、端末装置10Aは、配信ユーザの動作に関するデータ及び/又は配信ユーザによって発せられた発話や歌唱に関する音声データに基づいて配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成する。これにより、端末装置10Aの表示部110には、配信ユーザのアバターオブジェクト400のアニメーションを含む動画(例えば、図4において第1のギフトオブジェクト410A及び410Bが表示される前の状態の動画)が表示される。
さらに、端末装置10Aは、生成した動画をサーバ装置20の配信サーバ装置20Cに送信する。配信サーバ装置20Cは、端末装置10Aから受信した動画を、動画視聴用アプリケーションを実行している各視聴ユーザの端末装置10(ここでは、端末装置10B、端末装置10C、及び端末装置10D)に配信する。これにより、各視聴ユーザの端末装置10の表示部110にも、同じ動画が表示される。
次に、ST302において、視聴ユーザの端末装置10は、ユーザインタフェイス部140に対する視聴ユーザの操作に基づいて、配信ユーザ(アバターオブジェクト)に対して第1のギフトオブジェクトを付与することを要求する要求信号をサーバ装置20(ギフトAPIサーバ装置20A)に発信する。
次に、ST303において、視聴ユーザの端末装置10から第1のギフトオブジェクトに関する要求信号を受信したサーバ装置20(ギフトAPIサーバ装置20A)は、ギフティング行為がなされた視聴ユーザの識別情報、ギフティングされた第1のギフトオブジェクトに関する情報、及びギフティング対象のアバターオブジェクトたる配信ユーザの識別情報を読み出す。
そして、ST304において、サーバ装置20(情報処理サーバ装置20B)は、読み出された情報に基づいて、アバターオブジェクトのアニメーションを含む動画上に当該第1のギフトオブジェクトを表示させる旨の要求情報を配信ユーザの端末装置10へ送信する。この際、情報処理サーバ装置20Bは、ギフトAPIサーバ装置20Aから、第1のギフトオブジェクトに関する情報の少なくとも一部(例えば、前述のとおり、第1のギフトオブジェクトの名称又は名称に類する文字列等)を取得して、アバターオブジェクトのアニメーションを含む動画上に当該第1のギフトオブジェクトを表示させる旨の要求情報を生成する。
次に、ST305において、配信ユーザの端末装置10Aは、ST304にてサーバ装置20から送信された要求情報に基づいて、アバターオブジェクトのアニメーションを含む動画上に当該要求情報に対応する第1のギフトオブジェクトを表示させる。なお、配信ユーザの端末装置10Aが、当該要求情報に対応する第1のギフトオブジェクトを動画上に表示させるに際し、配信ユーザの端末装置10Aは、前述のギフト記憶部150に記憶される第1のギフトオブジェクトの名称・形状・色・第1コリジョン領域等の識別情報を参照する。
次に、ST306において、配信ユーザの端末装置10Aは、動画上に表示された1又は複数の第1のギフトオブジェクトに対してアバターオブジェクトが所定アクションを実行したと判定すると、第2のギフトオブジェクトを動画上に表示させる。なお、当該所定アクションに関する判定は、前述のとおり配信ユーザの端末装置10Aの判定部120によって実行される。また、所定アクションが実行された第1のギフトオブジェクトの処理方法、及び第2のギフトオブジェクトの動画上への表示方法等については、前述のとおりである。
以上のとおり、動画上に第2のギフトオブジェクトが表示されることをもって、ステップは終了する。
5.変形例について
前述の一実施形態においては、動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)の生成は配信ユーザの端末装置10によって実行されていたが、別の実施形態では、例えば、サーバ装置20又は視聴ユーザの端末装置10によって実行されてもよい。この場合においては、サーバ装置20及び/又は視聴ユーザの端末装置10にレンダリング部(図示せず)を設けておき、配信ユーザの端末装置10は、サーバ装置20及び/又は視聴ユーザの端末装置10が動画(第1のギフトオブジェクトを表示させた動画及び第2のギフトオブジェクトを表示させた動画を含む)を生成することができるように、様々な情報(例えば、第1のギフトオブジェクトに関する各種の識別情報や第2のギフトオブジェクトに関する各種の識別情報)のみを生成するような構成としてもよい。
このような構成を実現するために、サーバ装置20、視聴ユーザの端末装置10、及び配信ユーザの端末装置10の各機能は前述の一実施形態から適宜に変更される別の実施形態が採用されうる。例えば、一実施形態において動画生成部100は端末装置10に具備されていたが、サーバ装置20に具備されてもよいし、端末装置10でも視聴ユーザの端末装置10に具備されてもよい。
また、前述の所定アクションが実行されたどうかに関する判定は、前述の一実施形態においては配信ユーザの端末装置10によって実行されていたが、別の実施形態では、サーバ装置20又は端末装置10でも視聴ユーザの端末装置10で実行されてもよい。この場合、サーバ装置20又は視聴ユーザの端末装置10には、判定部120と同様の機能が具備される。
したがって、様々な実施形態によれば、視聴ユーザによるギフティング機会を増加させる動画処理方法、サーバ装置及びコンピュータプログラムを提供することができる。さらに、第1のギフトオブジェクトを第2のギフトオブジェクトに変化させることで、動画上に表示されるギフトオブジェクトのバリエーションを増やすことができる。また、様々な実施形態のうち複数の第1のギフトオブジェクトを1つの第2のギフトオブジェクトに変化させる場合においては、視聴ユーザの端末装置10における表示部110の限られた領域内に表示された第1のギフトオブジェクトの数をスムーズに削減させることができるため(この場合において、動画上に表示される第2のギフトオブジェクトの大きさは第1のギフトオブジェクトよりも小さくすることが好ましい)、視聴ユーザのギフティング意欲を効率的に向上させることが可能となる。さらにまた、第1のギフトオブジェクトを配信ユーザ(アバターオブジェクト)の所定アクションを介して第2のギフトオブジェクトに変化させる実施形態とすることで、配信ユーザに対して何らかのアクションを実行させるきっかけを創出することができる。さらにまた、様々な実施形態によれば、視聴ユーザは、配信ユーザに対して、所定アクションに関連するアドバイスをコメント情報(例えば、配信ユーザに対する視聴ユーザの「両手に持っている2つの男の子のぬいぐるみをぶつけてみて!」とのコメント情報)として発信することができるため、配信ユーザと視聴ユーザとの間のコミュニケーションが活性化される。
6.様々な態様について
第1の態様による動画処理方法は、「コンピュータにより読み取り可能な命令を実行する一又は複数のプロセッサにより実行される動画処理方法であって、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成する生成工程と、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、前記視聴ユーザの端末装置から通信回線を介して受信する受信工程と、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを、前記動画上に表示させる第1表示工程と、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを前記動画上に表示させる第2表示工程と、を含む」ものである。
第2の態様による動画処理方法は、上記第1の態様において「前記所定アクションは、前記配信ユーザの動作に基づいて、前記アバターオブジェクトが前記第1のギフトオブジェクトを特定位置に移動させるアクション」である。
第3の態様による動画処理方法は、上記第1の態様において「前記所定アクションは、前記配信ユーザの動作に基づいて、前記アバターオブジェクトが少なくとも1つの前記第1のギフトオブジェクトを、別の前記第1のギフトオブジェクトに接触させるアクション」である。
第4の態様による動画処理方法は、上記第3の態様において「前記第1のギフトオブジェクトの各々には、第1コリジョン領域が設定され、少なくとも2つの前記第1コリジョン領域が、前記動画内で少なくとも一部において重なりあうと判定された場合に、少なくとも2つの前記第1のギフトオブジェクトが接触していると認識される」ものである。
第5の態様による動画処理方法は、上記第4の態様において「少なくとも2つの前記第1コリジョン領域が前記動画内で少なくとも一部において重なりあうか否かの判定は、前記動画内における横方向のX軸、奥行方向のY軸、及び縦方向のZ軸に基づく各前記第1コリジョン領域の位置座標に基づいて実行される」ものである。
第6の態様による動画処理方法は、上記第2の態様において「前記第1のギフトオブジェクトの各々には、第1コリジョン領域が設定され、前記アバターオブジェクトの手には、第2コリジョン領域が設定され、前記第1コリジョン領域と前記第2コリジョン領域が、前記動画内で少なくとも一部において重なりあうと判定された場合で、且つ前記配信ユーザの動作に基づいて、前記アバターオブジェクトの指が曲がっていると判定された場合に、前記第1のギフトオブジェクトが前記アバターオブジェクトによって把持されていると認識され、前記動画内の第1の位置で前記アバターオブジェクトによる前記第1のギフトオブジェクトを把持される状態が開始され、前記第1の位置とは異なる前記動画内の第2の位置まで前記把持される状態が維持される場合に、前記特定位置に移動させるアクションが実行されたと認識される」ものである。
第7の態様による動画処理方法は、上記第6の態様において「前記第1コリジョン領域と前記第2コリジョン領域が前記動画内で少なくとも一部において重なりあうか否かの判定は、前記動画内における横方向のX軸、奥行方向のY軸、及び縦方向のZ軸に基づく前記第1コリジョン領域の位置座標並びに前記第2コリジョン領域の位置座標に基づいて実行される」ものである。
第8の態様による動画処理方法は、上記第2の態様において「前記第2のギフトオブジェクトは、前記特定位置、前記第1のギフトオブジェクトの種類、及び前記第1のギフトオブジェクトの種類毎の付与数に基づいて決定され前記動画上に表示される」ものである。
第9の態様による動画処理方法は、上記第3の態様又は上記第4の態様において「前記第2のギフトオブジェクトは、前記第1のギフトオブジェクトの種類、及び前記第1のギフトオブジェクトの種類毎の付与数に基づいて決定され前記動画上に表示される」ものである。
第10の態様による動画処理方法は、上記第9の態様において「前記第2のギフトオブジェクトは、さらに前記第1のギフトオブジェクト同士の接触時間に基づいて決定され前記動画上に表示される」ものである。
第11の態様による動画処理方法は、上記第9の態様又は上記第10の態様において「前記第2のギフトオブジェクトは、さらに前記第1のギフトオブジェクト同士が接触する際の衝突速度に基づいて決定され前記動画上に表示される」ものである。
第12の態様による動画処理方法は、上記第1の態様から上記第11の態様のいずれかにおいて「前記第2表示工程は、前記アバターオブジェクトが前記所定アクションを実行したと判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトを前記動画上から消去させる」ものである。
第13の態様による動画処理方法は、上記第1の態様から上記第11の態様のいずれかにおいて「前記第2表示工程は、前記アバターオブジェクトが前記所定アクションを実行したと判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトを前記第2のギフトオブジェクトに変化させて、前記第2のギフトオブジェクトを前記動画上に表示させる」ものである。
第14の態様による動画処理方法は、上記第1の態様から上記第11の態様のいずれかにおいて「前記第2表示工程は、前記アバターオブジェクトが前記所定アクションを実行したと判定された場合に、前記所定アクションを実行された複数の前記第1のギフトオブジェクトのうち少なくとも1つの前記第1のギフトオブジェクトを前記動画上から消去させ、且つ他の少なくとも1つの前記第1のギフトオブジェクトを前記第2のギフトオブジェクトに変化させる」ものである。
第15の態様による動画処理方法は、上記第12の態様から上記第14の態様のいずれかにおいて「前記第2のギフトオブジェクトは、前記動画上から消去される前又は前記第2のギフトオブジェクトに変化される前に前記第1のギフトオブジェクトが前記動画内に存在していた位置とは異なる位置に表示される」ものである。
第16の態様による動画処理方法は、上記第1の態様から上記第15の態様のいずれかにおいて「前記第2表示工程は、前記アバターオブジェクトが前記所定アクションを開始し、前記第2のギフトオブジェクトが前記動画上に表示される途中の状態を示すエフェクトオブジェクトを、前記動画上に表示させる工程を含む」ものである。
第17の態様による動画処理方法は、上記第1の態様から上記第16の態様のいずれかにおいて「前記生成工程、前記第1表示工程、及び前記第2表示工程が、前記配信ユーザの端末装置により実行される」ものである。
第18の態様による動画処理方法は、上記第17の態様において「前記受信工程は、前記視聴ユーザの端末装置及び/又は前記配信ユーザの端末装置に通信回線を介して接続されるサーバ装置により実行され、前記動画上に表示された前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したことが、前記配信ユーザの端末装置により判定される」ものである。
第19の態様による動画処理方法は、上記第1の態様から上記第16の態様のいずれかにおいて「前記生成工程、前記受信工程、前記第1表示工程、及び前記第2表示工程が、前記視聴ユーザの端末装置及び/又は前記配信ユーザの端末装置に通信回線を介して接続されるサーバ装置により実行される」ものである。
第20の態様による動画処理方法は、上記第19の態様において「前記動画上に表示された前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したことが、前記配信ユーザの端末装置により判定される」ものである。
第21の態様による動画処理方法は、上記第1の態様から上記第16の態様のいずれかにおいて「前記生成工程、前記第1表示工程、及び前記第2表示工程が、前記視聴ユーザの端末装置により実行される」ものである。
第22の態様による動画処理方法は、上記第21の態様において「前記受信工程は、前記視聴ユーザの端末装置及び/又は前記配信ユーザの端末装置に通信回線を介して接続されるサーバ装置により実行され、前記動画上に表示された前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したことが、前記配信ユーザの端末装置により判定される」ものである。
第23の態様による動画処理方法は、上記第1の態様から上記第22の態様のいずれかにおいて「前記プロセッサが、中央処理装置(CPU)、マイクロプロセッサ又はグラフィックスプロセッシングユニット(GPU)である」ものである。
第24の態様による動画処理方法は、上記第1の態様から上記第23の態様のいずれかにおいて「前記通信回線がインターネットを含む」ものである。
第25の態様によるサーバ装置は、「1又は複数のプロセッサを具備し、該プロセッサが、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成し、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、前記視聴ユーザの端末装置から通信回線を介して受信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを、前記動画上に表示させ、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと前記配信サーバの端末装置によって判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを前記動画上に表示させる」ものである。
第26の態様によるサーバ装置は、「1又は複数のプロセッサを具備し、該プロセッサが、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成するための情報を、前記動画を生成する前記配信ユーザの端末装置又は視聴ユーザの端末装置へ送信し、前記動画を視聴する前記視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、前記視聴ユーザの端末装置から通信回線を介して受信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトに関する情報を、前記第1のギフトオブジェクトを前記動画上に表示させる前記配信ユーザの端末装置又は前記視聴ユーザの端末装置へ送信し、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと前記配信サーバの端末装置によって判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトに関する情報を、前記第2のギフトオブジェクトを前記動画上に表示させる前記配信ユーザの端末装置又は前記視聴ユーザの端末装置へ送信する」ものである。
第27の態様によるサーバ装置は、上記第25の態様又は上記第26の態様において「前記プロセッサが、中央処理装置(CPU)、マイクロプロセッサ又はグラフィックスプロセッシングユニット(GPU)である」ものである。
第28の態様によるサーバ装置は、上記第25の態様から上記第27の態様のいずれかにおいて「前記通信回線がインターネットを含む」ものである。
第29の態様によるコンピュータプログラムは、「1又は複数のプロセッサに実行されることにより、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成し、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、サーバ装置又は前記視聴ユーザの端末装置から通信回線を介して受信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを、前記動画上に表示させ、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを前記動画上に表示させる、ように前記プロセッサを機能させる」ものである。
第30の態様によるコンピュータプログラムは、「1又は複数のプロセッサに実行されることにより、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成するための情報を、前記動画を生成するサーバ装置又は視聴ユーザの端末装置へ送信し、前記動画を視聴する前記視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、サーバ装置又は前記視聴ユーザの端末装置から通信回線を介して受信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトに関する情報を、前記第1のギフトオブジェクトを前記動画上に表示させる前記サーバ装置又は前記視聴ユーザの端末装置へ送信し、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトに関する情報を、前記第2のギフトオブジェクトを前記動画上に表示させる前記サーバ装置又は前記視聴ユーザの端末装置へ送信する、ように前記プロセッサを機能させる」ものである。
第31の態様によるコンピュータプログラムは、上記第29の態様又は上記第30の態様において「前記プロセッサが、中央処理装置(CPU)、マイクロプロセッサ又はグラフィックスプロセッシングユニット(GPU)である」ものである。
第32の態様によるコンピュータプログラムは、上記29の態様から上記31の態様のいずれかにおいて「前記通信回線がインターネットを含む」ものである。
第33の態様によるコンピュータプログラムは、「1又は複数のプロセッサに実行されることにより、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成するために、当該動画に関する情報をサーバ装置又は前記配信ユーザの端末装置から受信し、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、通信回線を介して発信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを前記動画上に表示させるために、前記第1のギフトオブジェクトに関する情報を前記サーバ装置又は前記配信ユーザの端末装置から受信し、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと前記配信サーバの端末装置によって判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを前記動画上に表示させるために、前記第2のギフトオブジェクトに関する情報を前記サーバ装置又は前記配信ユーザの端末装置から受信する、ように前記プロセッサを機能させる」ものである。
第34の態様によるコンピュータプログラムは、「1又は複数のプロセッサに実行されることにより、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を、サーバ装置又は前記配信ユーザの端末装置から受信し、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、通信回線を介して発信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを表示させた前記動画を、前記サーバ装置又は前記配信ユーザの端末装置から受信し、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと前記配信サーバの端末装置によって判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを表示させた前記動画を、前記サーバ装置又は前記配信ユーザの端末装置から受信する、ように前記プロセッサを機能させる」ものである。
第35の態様によるコンピュータプログラムは、上記第33の態様又は上記第34の態様において「前記プロセッサが、中央処理装置(CPU)、マイクロプロセッサ又はグラフィックスプロセッシングユニット(GPU)である」ものである。
第36の態様によるコンピュータプログラムは、上記33の態様から上記35の態様のいずれかにおいて「前記通信回線がインターネットを含む」ものである。
第37の態様による配信ユーザの端末装置は、「配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成し、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、サーバ装置又は前記視聴ユーザの端末装置から通信回線を介して受信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを、前記動画上に表示させ、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを前記動画上に表示させる」ものである。
第38の態様による配信ユーザの端末装置は、「配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成するための情報を、前記動画を生成するサーバ装置又は視聴ユーザの端末装置へ送信し、前記動画を視聴する前記視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、サーバ装置又は前記視聴ユーザの端末装置から通信回線を介して受信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトに関する情報を、前記第1のギフトオブジェクトを前記動画上に表示させる前記サーバ装置又は前記視聴ユーザの端末装置へ送信し、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトに関する情報を、前記第2のギフトオブジェクトを前記動画上に表示させる前記サーバ装置又は前記視聴ユーザの端末装置へ送信する」ものである。
第39の態様による視聴ユーザの端末装置は、「1又は複数のプロセッサに実行されることにより、配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を生成するために、当該動画に関する情報をサーバ装置又は前記配信ユーザの端末装置から受信し、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、通信回線を介して発信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを前記動画上に表示させるために、前記第1のギフトオブジェクトに関する情報を前記サーバ装置又は前記配信ユーザの端末装置から受信し、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと前記配信サーバの端末装置によって判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを前記動画上に表示させるために、前記第2のギフトオブジェクトに関する情報を前記サーバ装置又は前記配信ユーザの端末装置から受信する」ものである。
第40の態様による視聴ユーザの端末装置は、「配信ユーザの動作に基づく前記配信ユーザのアバターオブジェクトのアニメーションを含む動画を、サーバ装置又は前記配信ユーザの端末装置から受信し、前記動画を視聴する視聴ユーザの操作に基づいて生成され、前記アバターオブジェクトに対して第1のギフトオブジェクトを付与することを要求する要求信号を、通信回線を介して発信し、前記要求信号に基づいて前記アバターオブジェクトに対して付与された前記第1のギフトオブジェクトを表示させた前記動画を、前記サーバ装置又は前記配信ユーザの端末装置から受信し、前記配信ユーザの動作に基づいて、前記動画上に表示された1又は複数の前記第1のギフトオブジェクトに対して前記アバターオブジェクトが所定アクションを実行したと前記配信サーバの端末装置によって判定された場合に、前記所定アクションを実行された前記第1のギフトオブジェクトとは異なる第2のギフトオブジェクトを表示させた前記動画を、前記サーバ装置又は前記配信ユーザの端末装置から受信する」ものである。
7.本件出願に開示された技術が適用される分野
本件出願に開示された技術は、例えば、次のような分野において適用することが可能なものである。
(1)アバターオブジェクトが登場するライブ動画を配信するアプリケーション・サービス
(2)文字及びアバターオブジェクトを用いてコミュニケーションすることができるアプリケーション・サービス(チャットアプリケーション、メッセンジャー、メールアプリケーション等)