(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024146764
(43)【公開日】2024-10-15
(54)【発明の名称】動画処理方法、動画処理システム、及び動画処理プログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20241004BHJP
G06T 13/40 20110101ALI20241004BHJP
H04N 21/854 20110101ALI20241004BHJP
【FI】
G06Q50/10
G06T13/40
H04N21/854
【審査請求】有
【請求項の数】30
【出願形態】OL
(21)【出願番号】P 2024020882
(22)【出願日】2024-02-15
(62)【分割の表示】P 2023057975の分割
【原出願日】2023-03-31
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
(71)【出願人】
【識別番号】504437801
【氏名又は名称】グリー株式会社
(74)【代理人】
【識別番号】100126572
【弁理士】
【氏名又は名称】村越 智史
(72)【発明者】
【氏名】早田 大起
【テーマコード(参考)】
5B050
5C164
【Fターム(参考)】
5B050BA08
5B050BA12
5B050CA08
5B050EA07
5B050EA24
5B050FA02
5B050FA09
5B050FA10
5B050GA08
5C164MA02S
5C164MA03S
5C164MC01P
(57)【要約】
【課題】仮想空間から生成される動画の新規な利用方法を提供する。
【解決手段】 本発明の一態様は、一又は複数のプロセッサにより実行される動画処理方法に関する。一態様における動画処理方法は、一又は複数のフォーマット要素からユーザによって選択された一又は複数の選択フォーマット要素が設定されている動画を含む動画リストを、前記ユーザのユーザ装置に表示する工程と、前記ユーザ装置に表示されている第1表示要素が選択されたことに応じて、前記一又は複数の選択フォーマット要素を用いてフォーマット動画を生成する工程と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
一又は複数のプロセッサにより実行される動画処理方法であって、
一又は複数のフォーマット要素からユーザによって選択された一又は複数の選択フォーマット要素が設定されている動画を含む動画リストを、前記ユーザのユーザ装置に表示する工程と、
前記ユーザ装置に表示されている第1表示要素が選択されたことに応じて、前記一又は複数の選択フォーマット要素を用いてフォーマット動画を生成する工程と、
を備える動画処理方法。
【請求項2】
他のユーザから配信されている配信動画を前記ユーザ装置に再生させる工程をさらに備え、
前記一又は複数のフォーマット要素は、前記配信動画に設定されている、
請求項1に記載の動画処理方法。
【請求項3】
前記配信動画を構成する画像とともに、前記一又は複数のフォーマット要素の各々に対応する一又は複数の第2表示要素が前記ユーザ装置に表示され、
前記一又は複数の第2表示要素のうちの一又は複数が選択されたことに応じて、前記一又は複数のフォーマット要素のうち選択された一又は複数の第2表示要素に対応するフォーマット要素が前記一又は複数の選択フォーマット要素として選択される、
請求項2に記載の動画処理方法。
【請求項4】
前記一又は複数の選択フォーマット要素は、第1選択フォーマット要素及び第2選択フォーマット要素を含み、
前記動画リストは、前記第1選択フォーマット要素及び前記第2選択フォーマット要素がいずれも設定されている動画を含む、
請求項1又は2に記載の動画処理方法。
【請求項5】
前記一又は複数のフォーマット要素は、仮想空間を識別する仮想空間識別情報を含む、
請求項1に記載の動画処理方法。
【請求項6】
前記仮想空間識別情報が前記一又は複数の選択フォーマット要素として選択された場合、前記フォーマット動画において、前記ユーザのアバターは、前記仮想空間に配置される、
請求項5に記載の動画処理方法。
【請求項7】
前記配信動画は、仮想空間において仮想カメラにより撮影された他のアバターを含み、
前記一又は複数のフォーマット要素は、撮影時における前記他のアバターの前記仮想空間内での位置を特定する座標情報を含む、
請求項2に記載の動画処理方法。
【請求項8】
前記座標情報が前記一又は複数の選択フォーマット要素として選択された場合、前記フォーマット動画において、前記ユーザのアバターは、前記仮想空間内の前記座標情報により特定される位置へ配置される、
請求項7に記載の動画処理方法。
【請求項9】
前記配信動画は、仮想空間において仮想カメラにより撮影された他のアバターを含み、
前記一又は複数のフォーマット要素は、撮影時における前記仮想カメラの撮影設定情報を含む、
請求項2に記載の動画処理方法。
【請求項10】
前記撮影設定情報が前記一又は複数の選択フォーマット要素として選択された場合、前記フォーマット動画は、前記撮影設定情報に従って前記仮想空間において撮影された前記ユーザのアバターを含むように生成される、
請求項9に記載の動画処理方法。
【請求項11】
前記配信動画は、仮想空間において仮想カメラにより撮影された他のアバターを含み、
前記一又は複数のフォーマット要素は、撮影時における前記他のアバターのモーションを特定するモーション情報を含む、
請求項2に記載の動画処理方法。
【請求項12】
前記モーション情報が前記一又は複数の選択フォーマット要素として選択された場合、前記フォーマット動画は、前記モーション情報に従って動く前記アバターを含むように生成される、
請求項11に記載の動画処理方法。
【請求項13】
前記配信動画は、仮想空間において仮想カメラにより撮影された他のアバターを含み、
前記一又は複数のフォーマット要素は、撮影時に前記他のアバターに関連付けて前記仮想空間に配置されているオブジェクトを特定するオブジェクト情報を含む、
請求項2に記載の動画処理方法。
【請求項14】
前記オブジェクト情報が前記一又は複数の選択フォーマット要素として選択された場合、前記フォーマット動画において、前記アバターは、前記オブジェクト情報により特定されるオブジェクトと関連付けて表示される、
請求項13に記載の動画処理方法。
【請求項15】
前記一又は複数のフォーマット要素は、前記配信動画において映像に合わせて再生される楽曲を特定する楽曲情報を含む、
請求項2に記載の動画処理方法。
【請求項16】
前記楽曲情報が前記一又は複数の選択フォーマット要素として選択された場合、前記フォーマット動画の視聴時に、前記アバターを含む映像に合わせて前記楽曲情報により特定される楽曲が再生される、
請求項15に記載の動画処理方法。
【請求項17】
前記フォーマット動画を生成する工程は、前記一又は複数の選択フォーマット要素の少なくとも一部を、別のフォーマット要素に変更する工程を含む、
請求項1又は2に記載の動画処理方法。
【請求項18】
前記一又は複数のフォーマット要素に含まれる少なくとも一つのフォーマット要素は、対価の支払いを条件として前記フォーマット動画の生成のために利用可能となる、
請求項1又は2に記載の動画処理方法。
【請求項19】
前記一又は複数のフォーマット要素に含まれる少なくとも一つのフォーマット要素は、非代替性トークンとしてトークン化されている、
請求項1又は2に記載の動画処理方法。
【請求項20】
前記フォーマット動画は、前記ユーザ以外の他のユーザのアバターを含む、
請求項1又は2に記載の画像処理方法。
【請求項21】
前記一又は複数の選択フォーマット要素は、前記一又は複数のフォーマット要素のうちの利用が許諾された一又は複数の利用許諾フォーマット要素から選択される、
請求項1又は2に記載の画像処理方法。
【請求項22】
前記一又は複数の選択フォーマット要素の少なくとも一つが前記配信動画を生成する際に作成されたオリジナルフォーマットデータである、
請求項2に記載の画像処理方法。
【請求項23】
前記オリジナルフォーマットデータを用いて前記フォーマット動画が生成されたことに応じて、前記他のユーザに対して前記オリジナルフォーマットデータが利用されたことを示す通知を送信する工程をさらに備える、
請求項22に記載の画像処理方法。
【請求項24】
前記ユーザに対して、前記オリジナルフォーマットデータを利用するための対価を請求する工程をさらに備える、
請求項22に記載の画像処理方法。
【請求項25】
前記フォーマット動画に設定されている前記一又は複数の選択フォーマット要素の一覧を示すフォーマットデータ一覧を表示する工程をさらに備える、
請求項1又は2に記載の画像処理方法。
【請求項26】
前記フォーマットデータ一覧は、前記フォーマット動画に設定されている前記一又は複数の選択フォーマット要素の各々について、前記ユーザ以外に各選択フォーマットを利用して動画を生成した他のユーザを示す画像を含む、
請求項25に記載の画像処理方法。
【請求項27】
前記フォーマット画像を、他のユーザによって視聴可能な状態または他のユーザが視聴できない状態で、配信サーバにアップロードする工程と、
前記配信サーバにアップロードされた前記フォーマット画像に設定されている前記一又は複数の選択フォーマット要素の少なくとも一部を別のフォーマット要素に変更する工程と、
をさらに備える請求項1又は2に記載の画像処理方法。
【請求項28】
前記ユーザによって配信された配信動画の一部を選択する工程と、
選択された前記配信動画の一部に基づいて前記一又は複数のフォーマット要素を生成する工程と、
をさらに備える請求項1又は2に記載の画像処理方法。
【請求項29】
一又は複数のプロセッサを備え、
前記一又は複数のプロセッサが、コンピュータ処理可能な命令を実行することにより、
一又は複数のフォーマット要素からユーザによって選択された一又は複数の選択フォーマット要素が設定されている動画を含む動画リストを、前記ユーザのユーザ装置に表示し、
前記ユーザ装置に表示されている第1表示要素が選択されたことに応じて、前記一又は複数の選択フォーマット要素を用いてフォーマット動画を生成する、
画像処理システム。
【請求項30】
一又は複数のプロセッサに、
一又は複数のフォーマット要素からユーザによって選択された一又は複数の選択フォーマット要素が設定されている動画を含む動画リストを、前記ユーザのユーザ装置に表示する工程と、
前記ユーザ装置に表示されている第1表示要素が選択されたことに応じて、前記一又は複数の選択フォーマット要素を用いてフォーマット動画を生成する工程と、
を実行させる動画処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書の開示は、主に、動画処理方法、動画処理システム、及び動画処理プログラムに関する。
【背景技術】
【0002】
動画を構成する画像とともに、当該動画を再現するために必要な再現情報を記憶しておき、その再現情報に基づいて動画を再現するシステムが知られている。例えば、特開2017-029509号(特許文献1)には、あるユーザが実行中のゲームのゲーム画面をキャプチャすることで生成される画像ファイルに、キャプチャ時のゲームの場面を再現するために必要な再現情報をメタデータとして含めることで、当該画像ファイルを指定した別のユーザが、当該画像ファイルに含まれる再現情報によって再現された場面からゲームを開始できるゲームシステムが記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
コンピュータゲームや動画配信サービスなどの仮想空間の映像を利用したサービスが多くのユーザにより利用されている。
【0005】
しかしながら、仮想空間から生成される動画や静止画は、ユーザへの配信以外の態様では、ほとんど利用されていない。
【0006】
本明細書に記載される様々な発明の目的は、仮想空間から生成される動画の新規な利用方法を提供することである。
【0007】
本明細書に開示される様々な発明は、上記の課題に代えて又は上記の課題に加えて、本明細書の「発明を実施するための形態」に記載されている又は「発明を実施するための形態」の記載から把握することができる問題の少なくとも一部を解決又は緩和するものであってもよい。本明細書に、実施形態の作用効果が記載されている場合には、その作用効果の記載に基づいて、当該実施形態に対応する発明の課題を把握することができる。
【課題を解決するための手段】
【0008】
本発明の一態様は、一又は複数のプロセッサにより実行される動画処理方法に関する。一態様における動画処理方法は、仮想空間内の第1アバターを含む第1動画を生成するために用いられる一又は複数のフォーマット要素を取得する工程と、一又は複数のフォーマット要素から選択された一又は複数の選択フォーマット要素を用いて、第1アバターとは異なる第2アバターを含む第2動画を生成する工程と、を備える。
【発明の効果】
【0009】
本発明の実施形態によって、仮想空間から生成される動画の新規な利用方法が提供される。
【図面の簡単な説明】
【0010】
【
図1】一実施形態による動画処理システム1を示すブロック図である。
【
図2】動画処理システム1により配信される動画に適用されるフォーマットデータについて模式的に説明する図である。
【
図3】動画処理システム1が備えるユーザ装置10を示すブロック図である。
【
図4】動画処理システム1が備えるサーバ20を示すブロック図である。
【
図5】
図1の動画処理システム1において記憶される動画管理情報を説明する図である。
【
図6】
図1の動画処理システム1において記憶されるフォーマットデータ管理情報を説明する図である。
【
図7】フォーマットデータを利用して動画を作成する処理の流れを説明するフロー図である。
【
図8】ユーザ装置に表示される画像の例を示す図である。
【
図9】フォーマットデータを選択するための選択画面の表示例を模式的に示す図である。
【
図10】フォーマットデータとしてアバターアイテムを選択する過程で表示される画面の例を模式的に示す図である。
【
図11】受信した動画と同じ仮想空間を利用している動画のリストを含む画面を模式的に示す図である。
【
図12】受信した動画と同じ楽曲を利用している動画のリストを含む画面を模式的に示す図である。
【
図13】サーバ20が配信している動画のリストを示すフォーマット動画リストの表示例を示す図である。
【
図14】ユーザAにより生成された動画データに関連付けられているフォーマットデータの一覧の表示例を示す図である。
【
図15】フォーマットデータの他人による利用可否を設定するための画面を模式的に示す図である。
【発明を実施するための形態】
【0011】
以下、適宜図面を参照し、本願明細書で開示される様々な発明(本明細書では、単に「本発明」と呼ばれることがある。)の実施形態を説明する。なお、複数の図面において共通する構成要素には当該複数の図面を通じて同一の参照符号が付されている。以下で説明される本発明の実施形態は特許請求の範囲にかかる発明を限定するものではない。以下の実施形態で説明されている諸要素が発明の解決手段に必須であるとは限らない。
【0012】
1 動画処理システム1の概略
1-1 システム構成
図1は、一実施形態による動画処理システム1を示すブロック図である。
図1に示されている動画処理システム1は、ユーザ装置10a、ユーザ装置10b、ユーザ装置10c、及びサーバ20を備える。サーバ20は、ユーザ装置10a、ユーザ装置10b、及びユーザ装置10cとネットワーク5を介して互いに通信可能に接続されている。ネットワーク5は、単一のネットワークであってもよく、複数のネットワークが接続されて構成されていてもよい。ネットワーク5は、例えば、インターネット、移動通信網、及びこれらの組み合わせである。ネットワーク5は、電子機器間の通信を可能とする任意のネットワークであってもよい。
【0013】
サーバ20は、仮想空間(仮想空間プラットフォーム)を利用したサービスをユーザ装置10a、ユーザ装置10b、ユーザ装置10cに提供する。
図1においては、説明の簡潔さのために、3台のユーザ装置のみが図示されているが、サーバ20は、4台以上の多数のユーザ装置に対して仮想空間を利用したサービスを提供することができる。本明細書においては、説明の便宜上、ユーザ装置10aは、ユーザAにより使用され、ユーザ装置10bは、ユーザBにより使用され、ユーザ装置10cは、ユーザCにより使用されると想定する。また、本明細書では、サーバ20が提供する動画配信サービスを利用するためにユーザが使用する装置を「ユーザ装置10」又は「ユーザ装置」と総称し、「ユーザ装置」を用いてサーバ20のサービスを利用する利用者を「ユーザ」と総称することがある。ユーザ装置10a、10b、10cはいずれも「ユーザ装置」の例であり、ユーザA、ユーザB、ユーザCはいずれもサーバ20のサービスを利用する「ユーザ」の例である。
【0014】
サーバ20が提供する仮想空間には、三次元のグローバル座標系で定義されるワールドが設定されていてもよい。例えば、ユーザAは、サーバ20が提供する仮想空間に自らのアバターを配置することができる。ユーザAのアバターが仮想空間内に配置されると、サーバ20は、仮想カメラにより当該ユーザのアバターを含むように仮想空間を撮影することで当該仮想空間に含まれるアバターやオブジェクトを三次元モデルで表現する動画データを生成し、当該動画データをユーザAのユーザ装置10aに送信する。ユーザ装置10aは、受信した動画データをレンダリングすることで、ユーザAのアバターを含む動画を生成し、この動画をユーザ装置10aのディスプレイに表示することができる。ユーザAは、ディスプレイに表示された仮想空間の動画を見ながらアバターを操作することで、アバターに仮想空間内を移動させることができる。仮想空間内には、他のユーザのアバターが配置されていてもよい。
【0015】
仮想空間において、仮想カメラは、ユーザのアバターから離れた位置に配置されてもよい。この場合、仮想カメラは、当該アバターから離れた位置から、所定の画角で、当該アバターを含む仮想空間の視野領域を撮影することができる。この場合、仮想カメラは、ユーザのアバターを三人称視点で撮影することができる。アバターが仮想空間内で移動する場合、仮想カメラは、当該アバターとの距離及び画角を一定に保ったまま、当該アバターを追従するように移動してもよい。
【0016】
仮想カメラは、仮想空間内に配置されているユーザのアバターと同じ位置に配置され、その位置から仮想空間内の視野領域を撮影してもよい。この場合、仮想カメラによって、ユーザのアバターから見た視点(つまり、一人称視点)での仮想空間の視野領域が撮影される。
【0017】
仮想カメラは、三人称視点での撮影と、一人称視点での撮影とが、切り替え可能に設定されてもよい。三人称視点での撮影と一人称視点での撮影は、ユーザ端末を介して入力されたユーザからの操作に応じて切り替えられてもよい。
【0018】
仮想空間内における仮想カメラの位置は、ユーザ端末を介して入力されたユーザからの操作に応じて変更されてもよい。仮想カメラの位置以外の設定、例えば、注視位置、注視方向、及び/又は画角が、ユーザ端末を介して入力されたユーザからの操作に応じて変更されてもよい。
【0019】
サーバ20は、仮想空間に参加している各ユーザのユーザ装置に、仮想空間の動画データを配信することができる。各ユーザは、各々のユーザ装置に表示されている仮想空間の画像を見て、自らのアバターを操作することができる。ユーザは、仮想空間内で、アバターを介して他のユーザと交流することができる。ユーザは、仮想空間において、アイテムの購入、ミニゲームのプレイ、イベントへの参加、及び前記以外の仮想空間が提供する様々な機能を利用することができる。
【0020】
サーバ20によって提供される仮想空間は、メタバース空間であってもよい。このメタバース空間には、複数のユーザが各自のアバターを介して同時に参加することができる。本明細書において、「仮想空間」には「メタバース空間」も含まれる。メタバース空間では、ユーザ同士の交流、複数のユーザが参画する仕事、複数のユーザが参加する遊び、及びこれら以外の実社会における社会的活動が仮想的に再現される。ユーザは、各自のアバターを介してメタバース空間に参加することができる。メタバース空間のワールドは、三次元のグローバル座標系で定義されてもよい。ユーザのアバターは、メタバース空間のワールド内を自由に歩き回り、互いにコミュニケーションをとることが可能であってもよい。
【0021】
動画処理システム1は、仮想空間にいる複数のアバタの中の一のアバター(キャラクタオブジェクト)が、配信ユーザのキャラクタオブジェクトとして動画を配信できるように構成されてもよい。すなわち、動画処理システム1は、多対多のメタバースな仮想空間において一対多の動画配信を行うことができるように構成されてもよい。このような空間において、配信ユーザと視聴ユーザとは特に区別されないものとすることができる。
【0022】
サーバ20が提供する仮想空間には、三次元のワールドが定義されていなくてもよい。サーバ20は、三次元のワールドが定義されていない仮想空間の一種であるホーム空間をユーザに提供してもよい。ユーザのアバターは、ホーム空間内に配置されたオブジェクト(例えば、背景を構成するオブジェクト、他のユーザからギフティングされたオブジェクト)とともに、ホーム空間内に配置されてもよい。
【0023】
サーバ20は、ワールド座標系が設定された仮想空間と、ワールド座標系が設定されていないホーム空間と、を両方とも提供してもよい。ユーザは、ワールド座標系が設定された仮想空間及びワールド座標系が設定されていないホーム空間を両方とも利用できてもよい。
【0024】
サーバ20は、ユーザがオブジェクトを組み合わせて仮想空間(ワールド)を構築するためのエディタ機能を提供してもよい。ユーザは、作成した仮想空間を定義する仮想空間定義データをサーバ20に送信してもよい。サーバは、仮想空間を作成したユーザのユーザIDとともに、当該仮想空間を定義する仮想空間定義データを記憶してもよい。ユーザによって作成された仮想空間は、他のユーザによって利用可能であってもよい。
【0025】
1-2 動画の配信と視聴
ユーザは、アバターを使用して仮想空間を利用している場合に、当該仮想空間内の仮想カメラにより規定される視野領域(ビュー)を含む動画をサーバ20経由で他のユーザに配信することができる。ユーザAが仮想空間を利用した動画の配信を始めると、サーバ20は、その配信に対応したルームを作成してもよい。他のユーザは、そのルームにアクセスすることにより、ユーザAの動画を視聴することができる。このように、動画処理システム1のユーザは、仮想カメラで仮想空間を撮影した動画を配信することができるし、また、他のユーザから配信された動画を視聴することもできる。配信ユーザは、仮想空間を利用していないときに動画の配信を開始できてもよい。配信ユーザが仮想空間を利用していないときに動画の配信が開始されると、アバターが仮想空間に配置され、そのアバターが配置された仮想空間内を撮影することで仮想空間の動画を生成し、その動画が配信されてもよい。配信ユーザが仮想空間を利用していないときに動画の配信が開始される場合には、当該配信ユーザのアバターは、利用可能な仮想空間のうちから当該配信ユーザによって選択された仮想空間に配置されてもよいし、当該配信ユーザのホーム空間に配置されてもよい。
【0026】
本明細書では、動画を作成し、その動画をサーバ20経由で配信するユーザを「配信ユーザ」と呼び、サーバ20から配信される動画を視聴するユーザを「視聴ユーザ」と呼ぶことがある。配信ユーザと視聴ユーザとの区別は、固定的なものではない。動画を配信するユーザは、その動画を配信している間は配信ユーザとなるが、配信を行わずに他のユーザから配信されている動画を視聴している間は視聴ユーザとなる。また、ユーザが動画の配信も視聴も行わずにサーバ20が提供する仮想空間を利用している間(例えば、アバターを介して他のユーザと交流している間)は、当該ユーザは配信ユーザにも視聴ユーザにも該当しない。このように、特定のユーザが配信ユーザとして固定的に定められているのではなく、仮想空間に参加するユーザのうち動画の配信を行うユーザが、その動画の配信を行う間、一時的に配信ユーザとなり、仮想空間に参加するユーザのうち配信されている動画を視聴するユーザが、その動画を視聴している間、一時的に視聴ユーザとなる。
【0027】
配信ユーザは、単独で動画を配信してもよいし、他のユーザとともに動画を配信してもよい。配信ユーザが他のユーザとともに動画を配信する場合には、当該他のユーザのアバターも仮想空間に配置されていてもよい。配信ユーザが他のユーザとともに動画を配信する場合には、配信用の動画は、仮想空間において配信ユーザのアバター及び当該他のユーザのアバターを含む視野領域を仮想カメラで撮影することにより生成されてもよい。仮想空間内で複数のユーザが参加するイベントが開催され、そのイベントを撮影することで作成された動画がサーバ20から配信されてもよい。配信ユーザは、このような複数のユーザが参加するイベントの主催者であってもよい。つまり、仮想空間内で複数のユーザが参加するイベントを主催する主催ユーザ(開催ユーザ、ホストユーザと呼ばれることもある。)を、配信ユーザと解釈することができる。仮想空間内で複数のユーザが参加するイベントには、ビデオチャット、ボイスチャット、及び仮想空間内での仮想的なイベント(コンサート、集会、パーティーなど)が含まれる。
【0028】
配信ユーザは、映像および/または音声に関する情報を送信する側のユーザを意味するものとする。例えば、配信ユーザは、単独での動画配信、複数人が参加可能なコラボ配信、複数人が参加および/または視聴可能なビデオチャットまたはボイスチャット、複数人が参加および/または視聴可能な仮想空間上でのイベント(パーティなど)を主催または開催するユーザ、すなわち、これらをメインで実行するユーザであればよい。そのため、本開示における配信ユーザは、ホストユーザ、主催ユーザまたは開催ユーザなどと言い換えることもできる。
【0029】
視聴ユーザは、動画を視聴するだけでなく、動画に対するリアクションを提供することができる。視聴ユーザは、仮想空間内で複数のユーザが参加するイベントに参加するゲストユーザ(主催ユーザ以外のユーザ)であってもよい。視聴ユーザは、配信ユーザにコメントやギフトを送付することで配信ユーザを応援することができるので、応援ユーザと呼ばれることもある。
【0030】
視聴ユーザは、映像および/または音声に関する情報を受信する側のユーザを意味するものとする。ただし、視聴ユーザは上記情報を受信するのみならず、リアクションすることも可能なユーザとすることができる。例えば、視聴ユーザは、動画配信、コラボ配信を視聴するユーザ、または、ビデオチャット、ボイスチャットやイベントに参加および/またはこれらを視聴するユーザであればよい。そのため、本開示における視聴ユーザは、ゲストユーザ、参加ユーザ、リスナー、観覧ユーザ、応援ユーザなどと言い換えることもできる。
【0031】
視聴ユーザのユーザ端末には、配信者ユーザの仮想カメラで撮影された仮想空間の動画が表示されてもよい。視聴者ユーザのアバターは、配信ユーザのアバターが配置されている仮想空間に配置されていなくてもよい。視聴ユーザのユーザ端末に表示される動画には、視聴者ユーザのアバターは含まれていなくてもよい。
【0032】
視聴ユーザのアバターは、仮想空間内に、その仮想空間内を移動できるように配置されていてもよい。この場合、視聴ユーザ端末には、配信ユーザのユーザ端末において描画されている動画ではなく、当該視聴ユーザに関連づけられている仮想カメラで撮影された仮想空間の視野領域を表す動画が表示されてもよい。視聴ユーザに関連づけられている仮想カメラで撮影された仮想空間の視野領域を表す動画とともに、配信ユーザが配信している音声が再生されてもよい。
【0033】
1-3 動画の生成
動画処理システム1においては、仮想カメラにより仮想空間を撮影することにより、当該仮想カメラの設定情報に従って撮影された仮想空間の視野領域の三次元モデルを表す三次元モデルデータが生成されてもよい。三次元モデルデータには、仮想カメラの設定情報(例えば、仮想空間内における仮想カメラの位置、注視位置、注視方向、倍率、及び画角)、光源の位置や光量を示す光源データ、深度マップ、ノーマルマップ、及び仮想カメラにより撮影される仮想空間の視野領域の三次元モデルを生成するために必要な前記以外の情報が含まれ得る。本明細書においては、仮想カメラにより仮想空間を撮影することにより生成される仮想空間の視野領域の三次元モデルを表すデータを「動画データ」と呼ぶ。三次元のモデルを表す動画データをレンダリングエンジンでレンダリングすることにより、モニター(ディスプレイ)に表示可能な二次元の動画(又は二次元の動画フレーム)が生成される。
【0034】
動画処理システム1においては、配信ユーザのユーザ装置10において生成された動画データが、サーバ20を介して、他のユーザのユーザ装置に対して配信されてもよい。また、ユーザ装置10は、動画データに代えて、動画データをレンダリングして生成された動画(動画フレーム)をサーバ20に送信し、サーバ20からこの動画が配信されてもよい。このように、配信ユーザのユーザ装置10は、仮想カメラによって仮想空間を撮影することで生成される三次元の動画データを配信してもよく、この動画データをレンダリングすることで生成される二次元の動画(動画フレーム)を配信してもよい。
【0035】
ユーザにより作成された動画は、リアルタイムで配信されてもよい。ユーザにより作成された動画は、ストレージ(例えば、サーバ20のストレージ25)に格納され、視聴ユーザからの要求に応じてオンデマンド形式で配信されてもよい。リアルタイムで配信された動画は、サーバ20にアーカイブされてもよい。
【0036】
1-4 レンダリング
動画データをレンダリングして二次元の動画に変換するレンダリング処理は、動画処理システム1に含まれるいずれの機器で行われてもよい。一態様において、動画データのレンダリングは、視聴ユーザのユーザ装置10により実行されてもよい。視聴ユーザのユーザ装置10において動画データをレンダリングして二次元の動画を生成する方式を、本明細書では「クライアントレンダリング方式」と呼ぶことがある。動画処理システム1は、クライアントレンダリング方式を採用することができる。クライアントレンダリング方式において、ユーザ装置10は、動画を生成する前に、例えばアプリケーション配信プラットフォームからレンダリングエンジンを取得していてもよい。ユーザ装置10は、動画の再生処理を開始する前から、アバターの外観を表現するためのアバター表示データを保持していてもよい。クライアントレンダリング方式において、ユーザ装置10は、サーバ20から、オブジェクトデータ、アバターの識別情報(アバタID)、アバターの動きを表現するためのモーションデータ、音声データ、及び必要に応じて前記以外のレンダリングに必要な情報を受信し、サーバ20から受信した情報と予め保持していた情報とに基づいて動画データをレンダリングして二次元の動画を生成し、生成した動画をディスプレイに表示することができる。
【0037】
別の態様において、動画データのレンダリングは、視聴ユーザのユーザ装置10がサーバ20からウェブページを取得し、このウェブページに含まれているコンピュータプログラム(例えば、Javaスクリプト)をユーザ装置10に備えられているブラウザにより実行することで行われてもよい。このウェブページには、動画の生成に必要なデータ(例えば、オブジェクトデータ、アバター表示データ、モーションデータ等)の格納場所が記述されていてもよい。例えば、ウェブページに含まれているJavaスクリプトは、当該ウェブページに記述されているデータの格納場所から各種データを取得し、この取得したデータに基づいて二次元の動画を生成することができる。ブラウザは、HTMLで記述されたウェブページを閲覧するためのソフトウェアであり、レンダリングエンジンとは別のソフトウェアである。ブラウザは、サーバ20から取得するウェブページ以外にも、様々なサーバから提供されているウェブページを閲覧するために用いられ得る。本明細書では、ブラウザで動画データをレンダリングして二元の動画を生成する方式を、「ブラウザレンダリング方式」と呼ぶことがある。動画処理システム1は、ブラウザレンダリング方式を採用することができる。
【0038】
さらに別の態様において、動画データのレンダリングは、サーバ20で実行されてもよい。サーバ20によりレンダリングが行われる場合には、サーバ20においてレンダリングにより生成された二次元の動画が、サーバ20からユーザ装置10に送信される。ユーザ装置10は、サーバ20から受信した動画を再生(表示)する。動画データのレンダリングがサーバ20で行われる方式を、本明細書では「サーバレンダリング方式」と呼ぶことがある。サーバレンダリング方式においては、サーバ20において生成された動画がユーザ装置10に送信される。
【0039】
さらに別の態様において、動画データのレンダリングは、配信ユーザのユーザ装置10で行われてもよい。この場合、配信ユーザのユーザ装置10で動画データをレンダリングして二次元の動画を生成し、この生成した動画がサーバ20経由で、視聴ユーザのユーザ装置10に配信される。動画データのレンダリングが配信ユーザのユーザ装置10で行われる方式を、本明細書では「映像配信方式」と呼ぶことがある。
【0040】
以上のように、動画処理システム1は、クライアントレンダリング方式、ブラウザレンダリング方式、サーバレンダリング方式、及び映像配信方式のいずれを採用することもできる。このため、サーバ20からユーザ装置10に「動画データ」を送信することには、サーバ20で動画データから生成された「動画」を送信することが含まれる。例えば、動画処理システム1がクライアントレンダリング方式を採用する場合には、サーバ20からユーザ装置10に対して、レンダリング前の動画データが送信されるのに対して、動画処理システム1がサーバレンダリング方式を採用する場合には、サーバ20からユーザ装置10に対して、動画データをレンダリングして得られた二次元の動画がフレーム単位で送信される。つまり、本明細書においてサーバ20からユーザ装置10に送信される「動画データ」は、レンダリング前の動画データであってもよいし、レンダリング後の動画であってもよい。ユーザ装置10からサーバ20に送信される「動画データ」も、レンダリング前の動画データであってもよいし、レンダリング後の動画であってもよい。
【0041】
2 フォーマットデータと関連付けられるフォーマット動画
上記のとおり、ユーザ装置10において、仮想カメラによって仮想空間内の視野領域を撮影することにより動画データが生成される。動画処理システム1においては、仮想空間を撮影することで生成される動画データ又は当該動画データをレンダリングして生成される動画に、一又は複数のフォーマットデータを関連付けることができる。本明細書においては、一又は複数のフォーマット動画と関連付けられている動画又は動画データを「フォーマット動画」と呼ぶことがある。
【0042】
本明細書においては、三次元の動画データと二次元の動画との区別が必要な場合を除き、「三次元の動画データ」及び当該動画データをレンダリングすることで生成される「二次元の動画」をいずれも、単に「動画」と呼ぶことがある。本明細書において、「動画」は、文脈上いずれか一方に解釈すべき場合を除き、レンダリング前の動画データ、及び、動画データをレンダリングすることで生成される二次元の動画のいずれを指し示してもよい。この用法に従えば、フォーマットデータは、仮想空間を撮影することで生成される動画に関連付けられる。フォーマットデータは、動画のメタデータとして、当該動画に関連付けて記憶されてもよい。
【0043】
仮想カメラによって仮想空間の視野領域を撮影して動画データを生成する際に、その動画データを生成するために用いられるフォーマットを、当該動画データのフォーマットデータとして生成することができる。あるフォーマット動画のフォーマットデータは、当該フォーマット動画の撮影時及び/又は再生時に利用されるフォーマットを表すことができる。仮想空間を撮影することで生成される動画のフォーマットデータには、例えば、撮影対象となる仮想空間を識別する仮想空間識別情報、撮影時にアバターが配置される仮想空間内の位置を示す座標情報、仮想空間内で移動するアバターの位置に対応する座標を時系列で表す移動情報、撮影時にアバターが向いている方向を示すアバター方向情報、仮想空間内の所定の領域(例えば、仮想空間内に存在する特定の建物内、仮想空間内の広場、仮想空間内のイベントスペース、及びこれら以外の領域)を特定する領域特定情報、撮影時における仮想カメラのカメラワークを特定するための仮想カメラの設定(例えば、仮想空間内における仮想カメラの位置、注視位置、注視方向、倍率、及び画角)を示す仮想カメラ設定情報、撮影時のアバターのモーションを特定するモーション情報、撮影時に仮想カメラの視野内に配置されるオブジェクト(単一のオブジェクト又は複数のオブジェクトのセットもしくはコーディネート)を特定するオブジェクト情報、動画に合わせて再生される楽曲を特定する楽曲情報、動画とともに表示されるエフェクトを特定するエフェクト情報、動画に適用されるフィルター(例えば、ぼかし)を特定するフィルター情報、動画に挿入されたテキストやグラフィックスを特定する挿入データ情報が含まれる。フォーマット動画のフォーマットデータは、当該フォーマット動画を生成するユーザのユーザ装置によって決定されてもよい。フォーマット動画に関連付けられているフォーマットデータは、当該フォーマット動画をサーバ20に送信する際に、当該フォーマット動画とともに、又は、当該フォーマット動画に関連付けて、フォーマット動画を生成したユーザ装置10からサーバ20に送信されてもよい。視聴ユーザのユーザ装置は、視聴するフォーマット動画とともに当該フォーマット動画に関連付けられているフォーマットデータを取得してもよい。
【0044】
フォーマット動画に関連付けられているフォーマットデータは、他のユーザがフォーマット動画を作成する際に利用されてもよい。
図2を参照して、フォーマットデータを利用したフォーマット動画の生成について説明する。
図2に示されている動画M1、動画M2、動画M3は、第1ユーザ、第2ユーザ、及び第3ユーザによりそれぞれ生成されるフォーマット動画である。動画M2は、動画M1に関連付けられている複数のフォーマットデータのうちの一部を利用して生成されており、動画M3は、動画M2に関連付けられている複数のフォーマットデータのうちの一部を利用することで生成されている。動画M1~M3はいずれも、他のユーザによって視聴可能にサーバ20に保存されてもよい。
図2は、フォーマットデータの利用について説明するために参照されるため、
図2中の動画M1~M3においては、オブジェクトなどの仮想空間を構成する要素の図示を大幅に省略している。以下、動画M1の生成から動画M3の生成まで順を追って説明する。
【0045】
動画M1は、第1ユーザのアバターA1が配置されている仮想空間の視野領域を仮想カメラで撮影することで生成される。動画M1には、フォーマットデータA~Dが関連付けられている。例えば、フォーマットデータAは、動画M1の撮影時における仮想空間内でのアバターA1の位置を示す座標情報であり、フォーマットデータBは、撮影時のアバターA1の動きを特定するモーション情報であり、フォーマットデータCは、撮影時における仮想カメラのカメラワークを特定する仮想カメラ設定情報であり、フォーマットデータDは、動画M1とともに再生される楽曲を示す楽曲情報である。
【0046】
動画M1を視聴する視聴ユーザのユーザ装置には、フォーマットデータA~Dが、視聴ユーザによって選択可能に表示される。動画M1を視聴する第2ユーザは、動画M1に関連付けられているフォーマットデータA~Dのうちの一又は複数をフォーマットとして用いることにより、自らの動画M2を生成することができる。例えば、第2ユーザがフォーマットデータAを選択して動画の生成を開始すると、第2ユーザのアバターA2は、動画M1においてアバターA1が配置されている仮想空間と同じ仮想空間において、動画M1においてアバターA1が配置されている位置と同じ位置に配置される。そして、このアバターA2が配置された仮想空間の視野領域の動画が生成される。このように、第2ユーザは、動画M1に関連付けられているフォーマットデータAを選択することにより、動画M1においてアバターA1が配置されていた位置と同じ位置に自らのアバターA2を配置して動画M2の撮影を開始することができる。つまり、第2ユーザは、第1ユーザが生成した動画M1に関連付けられているフォーマットデータAを選択することで、このフォーマットデータAが規定するフォーマットを用いて自らの動画M2を生成することができる。フォーマットデータAを利用せずに動画M1におけるアバターA1の位置と同じ位置にアバターA2を配置し、そのアバターA2が配置された仮想空間の動画を生成するためには、第2ユーザは、動画M1に設定されているメタデータからアバターA1が配置されている仮想空間を特定し、その仮想空間にアバターA2を出現させた上で、その仮想空間内でアバターA2を移動させることで、動画M1においてアバターA1が配置されていた場所を探し当てなければならない。フォーマットデータAは、動画M1の撮影時における仮想空間内でのアバターA1の位置を示す座標情報を示すから、第2ユーザは、動画M1に関連付けられているフォーマットデータAを選択することにより、仮想空間内で撮影場所を探し出す手間を省いて、アバターA1と同じ位置にアバターA2を配置することができ、当該位置に配置されているアバターA2を含むフォーマット動画を生成することができる。
【0047】
同様に、第2ユーザは、フォーマットデータBを選択して動画の生成を開始することにより、動画M1におけるアバターA1と同じ動きを行う自らのアバターA2を含む仮想空間の動画を生成することができる。つまり、第2ユーザがフォーマットデータBを選択して動画M2の生成を開始すると、アバターA1の動きを特定するモーション情報を利用して、動画M2における第2ユーザのアバターA2のモーションを、動画M1におけるアバターA1のモーションと同じにすることができる。
【0048】
このように、第1ユーザが生成した動画M1を視聴する第2ユーザは、動画M1に対応付けられている複数のフォーマットデータの中から好みのフォーマットデータを選択し、その選択したフォーマットデータを用いて動画M2を生成することができる。第2ユーザは、第1ユーザの動画M1に関連付けられているフォーマットデータのうち好みのものを選択し、フォーマットデータを利用して動画M2を生成することにより、望みのフォーマットに従った動画M2をより簡便に短時間で生成することができる。また、第2ユーザは、動画M1に適用されているフォーマットを全て再現するのではなく、動画M1に設定されているフォーマットのうち好みのフォーマットを示すフォーマットデータだけを選択して、その選択したフォーマットデータを利用することで動画M2を生成することができるので、既存の動画のフォーマットを単に再現するのではなく、動画M2の作成時に自らの創作性を発揮することができる。
【0049】
図2の例において、動画M2の生成のために、動画M1に関連付けられているフォーマットデータA~DのうちフォーマットデータA、Bが選択されているが、フォーマットデータC、Dは選択されていない。よって、動画M2を生成するための仮想空間の撮影時には、フォーマットデータCが表す仮想カメラのカメラワークは利用されない。また、動画M2の再生時に、フォーマットデータDが示す楽曲情報に対応する楽曲は再生されない。よって、第2ユーザは、アバターA2を撮影するための仮想カメラのカメラワークを自ら設定し、そのカメラワークに従ってアバターA2を撮影することで動画M2を生成することができる。また、第2ユーザは、動画M2とともに再生される楽曲を自ら選択することができる。このように、第2ユーザは、アバターA2の配置及びモーションの点では、動画M1に設定されているフォーマットデータを利用することで動画M2の生成を簡便に行うととともに、カメラワークの特定及び楽曲の選択の点で自らの個性や創造性を発揮することができる。
【0050】
第2ユーザによって動画M2のフォーマットが独自に定められた場合、第2ユーザによって独自に定められたフォーマットを表すフォーマットデータが、動画M2に関連付けられてもよい。
図2に示されている例では、動画M2の撮影時に第2ユーザにより決められた仮想カメラのカメラワークを特定する仮想カメラ設定情報がフォーマットデータEとして動画M2に関連付けられており、また、第2ユーザにより選択された楽曲情報が、フォーマットデータFとして動画M2に関連付けられている。
【0051】
第2ユーザによって独自に定められたフォーマットを表すフォーマットデータが動画M2に関連付けられる場合には、第2ユーザの動画M2に関連付けられているフォーマットデータには、動画M1から引き継がれた継承フォーマットデータ(
図2の例では、フォーマットデータA、B)と、動画M2の撮影時に第2ユーザによって独自に決定されたオリジナルフォーマットデータ(
図2の例では、フォーマットデータE、F)と、が含まれる。
【0052】
以上のようにして生成された動画M2に関連付けられているフォーマットデータは、さらに他のユーザによって利用可能である。
図2に示されている例では、動画M2が第3ユーザによって視聴されることが想定されている。第3ユーザは、動画M2に関連付けられているフォーマットデータA~B、E~Fのうちの一又は複数を用いて、動画M3を生成することができる。
図2の例では、動画M3は、動画M2に関連付けられている複数のフォーマットデータのうちフォーマットデータA、Eを利用して生成される。フォーマットデータG、Hは、第3ユーザによって独自に決められたフォーマットに対応するフォーマットデータである。つまり、動画M3に関連付けられているフォーマットデータのうち、フォーマットデータA、Eは動画M2から継承したフォーマットデータであり、フォーマットデータG、Hは、第3ユーザによって独自に決定されたフォーマットを表すオリジナルフォーマットデータである。継承フォーマットデータのうち、フォーマットデータAは、動画M1から2世代に亘って継承されている。フォーマットデータEは、動画M2から一世代だけ継承されている。
【0053】
図2に示されている例では、動画M1のフォーマットデータは、第2ユーザによって利用され、動画M2のフォーマットデータは、第3ユーザによって利用されているが、動画M1のフォーマットデータ及び動画M2のフォーマットデータは、2以上のユーザによって利用されてもよい。動画M1の第1ユーザが、動画M2のフォーマットデータを利用して生成された動画M2のフォーマットデータのうち、動画M1において利用されていないものを利用してもよい。
【0054】
サーバ20は、フォーマット動画と、その動画に関連付けられているフォーマットデータと、を管理することができる。また、サーバ20は、フォーマットデータに対応付けて、そのフォーマットデータを独自に作成したユーザを識別するユーザIDを記憶することができる。サーバ20は、また、フォーマットデータの継承関係を把握できるように、フォーマットデータの利用関係を構造的に記憶することができる。
【0055】
図2に示されている例では、説明の簡略化のために3人のユーザのみが登場しているため、フォーマットデータの継承は2世代まで説明されているが、フォーマットデータは3世代以上に亘って継承されてもよい。
【0056】
フォーマットデータの生成及び管理並びにフォーマットデータを用いたフォーマット動画の生成の詳細については、ユーザ装置10及びサーバ20の構成及び機能とともに、以下でさらに説明される。
【0057】
3 ユーザ装置10(ユーザ装置10a)
3-1 ユーザ装置10の構成
次に、
図3をさらに参照して、ユーザ装置10aについて説明する。以下では、説明の簡潔さのために、ユーザ装置10aについて説明するが、ユーザ装置10aについての説明は、ユーザ装置10b、ユーザ装置10c、及びこれら以外のユーザ装置にも当てはまる。
【0058】
ユーザ装置10aは、サーバ20から送信された動画データ又は動画を再生可能な情報処理装置である。より具体的には、ユーザ装置10aは、スマートフォン、パーソナルコンピュータ(PC)、携帯電話機、タブレット端末、パーソナルコンピュータ、電子書籍リーダー、ウェアラブルコンピュータ、ゲーム用コンソール、ヘッドマウントディスプレイ、またはこれら以外の各種情報処理装置である。
【0059】
ユーザ装置10aは、プロセッサ11、メモリ12、ユーザインタフェース13、通信インタフェース14、ストレージ15、を備えている。
【0060】
プロセッサ11は、ストレージ15又はそれ以外のストレージからオペレーティングシステムやその他の様々なプログラムをメモリ12にロードし、ロードしたプログラムに含まれる命令を実行する演算装置である。プロセッサ11は、例えば、CPU、MPU、DSP、GPU、これら以外の各種演算装置、又はこれらの組み合わせである。プロセッサ11は、ASIC、PLD、FPGA、MCU等の集積回路により実現されてもよい。
【0061】
メモリ12は、プロセッサ11が実行する命令及びそれ以外の各種データを格納するために用いられる。メモリ12は、プロセッサ11が高速にアクセス可能な主記憶装置(メインメモリ)である。メモリ12は、例えば、DRAMやSRAM等のRAMによって構成される。
【0062】
ユーザインタフェース13は、ユーザの入力を受け付ける入力インタフェースと、プロセッサ11の制御により様々な情報を出力する出力インタフェースと、を備える。入力インタフェースは、キーボード、マウス等のポインティングデバイス、タッチパネル、又は前記以外のユーザの入力を入力可能な任意の情報入力装置である。出力インタフェースは、例えば、液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ、表示パネル、又は前記以外のプロセッサ11の演算結果を出力可能な任意の情報出力装置である。
【0063】
通信インタフェース14は、ハードウェア、ファームウェア、又はTCP/IPドライバやPPPドライバ等の通信用ソフトウェア又はこれらの組み合わせとして実装される。ユーザ装置10aは、通信インタフェース14を介して、サーバ20を含む他の情報機器とデータを送受信することができる。
【0064】
ストレージ15は、プロセッサ11によりアクセスされる外部記憶装置である。ストレージ15は、例えば、磁気ディスク、光ディスク、半導体メモリ、又はデータを記憶可能な前記以外の各種記憶装置である。ストレージ15には、受信した動画データから動画を生成するための動画処理アプリケーション15aが記憶されてもよい。動画処理アプリケーション15aは、不図示のアプリケーション配信プラットフォームから、ユーザ装置10aにダウンロードされてもよい。
【0065】
ユーザ装置10aは、
図3に具体的に示されていないハードウェアを備えることもできる。例えば、ユーザ装置10aは、カメラを備えてもよい。このカメラは、ユーザの顔の特徴点を検出するために、人物の顔の奥行きを検出可能な3Dカメラであってもよい。
【0066】
3-2 ユーザ装置10aの機能
ユーザ装置10aのプロセッサ11は、動画処理アプリケーション15aに含まれる命令セット及びそれ以外の命令セットを実行することにより、仮想空間表示部11a、動画再生部11b、フォーマットデータ選択部11c、動画生成部11d、動画送信部11e、及び動画編集部11fとして機能する。
【0067】
3-2-1 仮想空間表示部11a
ユーザ装置10aのユーザAがサーバ20から提供される仮想空間の利用を開始し、当該仮想空間内にアバターを配置すると、仮想空間表示部11aは、サーバ20から当該仮想空間を仮想カメラで撮影することで生成された動画データを取得する。この動画データは、ユーザ装置10aのユーザのアバター、他のユーザのアバター、仮想空間内のオブジェクト、及び/又はこれら以外の仮想空間の構成要素を三次元モデルで表す三次元データである。仮想空間表示部11aは、動画データがユーザ装置10aのアバターを含む仮想空間内の視野領域を三人称視点で撮影して生成されたものである場合には、この仮想空間の動画データをレンダリングすることで、ユーザAのアバターを含む仮想空間の動画を生成し、この動画をユーザ装置10aのディスプレイに表示することができる。仮想空間表示部11aは、動画データがユーザ装置10aのアバターからの一人称視点で撮影して生成されたものである場合には、この仮想空間の動画データをレンダリングすることで、ユーザAのアバターを含まない仮想空間の動画を生成し、この動画をユーザ装置10aのディスプレイに表示することができる。
【0068】
仮想空間内には、様々なオブジェクトが配置されてもよい。仮想空間内に配置されるオブジェクトは、例えば、山、丘、川、森林などの自然の地形を表すオブジェクト、建物や橋梁などの構築物を表すオブジェクト、屋内に設置される家具、ユーザにプレゼントされるギフトを表すオブジェクト、及びこれら以外の仮想空間を構成するオブジェクトが含まれる。仮想空間表示部11aによって処理される動画データには、仮想空間内に配置されているオブジェクトのうち仮想カメラの設定情報に応じて定められる視野領域に配置されているオブジェクトが含まれる。
【0069】
3-2-2 動画再生部11b
上述したように、アバターを使用して仮想空間を利用しているユーザは、その仮想空間内の仮想カメラにより規定される視野領域を含む動画を他のユーザに配信することができる。動画再生部11bは、他のユーザからサーバ20経由で配信された動画を再生することができる。例えば、動画再生部11bは、サーバ20から配信可能な動画のリストを取得し、このリストからユーザAによって選択された動画を再生することができる。動画再生部11bは、例えば、ユーザが視聴対象として選択した動画の動画データをサーバ20から受信し、受信した動画データをレンダリングすることで動画を生成することができる。生成された動画の映像は、ユーザ装置10aのディスプレイに出力され、動画とともに再生される音声及び/又は楽曲は、ユーザ装置10aのスピーカに出力される。ユーザAは、ディスプレイに出力された映像、及び、スピーカに出力された音声や楽曲を視聴することができる。サーバ20からは、レンダリング後の動画(動画フレームのシーケンス)がユーザ装置10aに対して配信されてもよい。動画再生部11bは、サーバ20から受信した動画フレームをディスプレイに出力することで動画を再生してもよい。
【0070】
動画再生部11bは、サーバ20から視聴可能なフォーマット動画のリストを取得し、このリストからユーザAによって選択されたフォーマット動画を再生することもできる。フォーマット動画は、レンダリング後の動画フレームとしてサーバ20からユーザ装置10aに送信されてもよい。動画再生部11bは、フォーマット動画をサーバ20から取得する際に、当該フォーマット動画に関連付けられているフォーマットデータを取得する。
【0071】
3-2-3 フォーマットデータ選択部11c
上述したように、フォーマット動画には、当該フォーマット動画のフォーマットを表すフォーマットデータが関連付けられている。フォーマットデータ選択部11cは、例えば、ユーザAによって視聴対象として選択されたフォーマット動画又はユーザAがユーザ装置10aにおいて視聴中のフォーマット動画に関連付けられている一又は複数のフォーマットデータをディスプレイに表示し、表示された一又は複数のフォーマットデータからユーザAによって指定されたフォーマットデータを選択フォーマットデータとして選択することができる。
【0072】
フォーマットデータは、上述のように、視聴中のフォーマット動画とともに、または、当該フォーマット動画データと関連付けて、サーバ20からユーザ装置10aに送信されてもよい。例えば、フォーマットデータは、フォーマット動画のメタデータとして設定されていてもよい。この場合、フォーマット動画に関連付けられているフォーマットデータは、当該フォーマット動画とともにサーバ20からユーザ装置10aに送信される。
【0073】
例えば、視聴中のフォーマット動画に合わせて再生されている楽曲がフォーマットデータとして選択された場合には、フォーマットデータ選択部11cは、その選択された楽曲を特定する楽曲情報を選択フォーマットデータとして特定する。フォーマットデータ選択部11cは、視聴中のフォーマット動画に関連付けられている複数のフォーマットデータのうち1つ以上を、選択フォーマットデータとして特定することができる。フォーマットデータ選択部11cは、視聴中のフォーマット動画に関連付けられている複数のフォーマットデータのうち2つ以上を選択フォーマットデータとして特定してもよい。フォーマットデータ選択部11cは、例えば、楽曲情報に加えて、視聴中のフォーマット動画に映し出されているアバターの仮想空間における位置を特定する座標情報を選択フォーマットデータとして特定することができる。
【0074】
3-2-4 動画生成部11d
次に、動画生成部11dの機能について説明する。動画生成部11dは、仮想空間内に配置された仮想カメラによって撮影された仮想空間の視野領域を表す動画データを生成することができる。この動画データは、後述するように、他のユーザ装置にサーバ20を介して配信される。また、動画生成部11dは、フォーマットデータ選択部11cによってフォーマットデータが選択された場合には、その選択された選択フォーマットデータを利用してフォーマット動画を生成することができる。動画生成部11dは、フォーマットデータ選択部11cによってフォーマットデータが選択されていない場合には、フォーマットデータを利用せずにフォーマット動画を生成することができる。
【0075】
まず、配信用の動画の生成について説明する。ユーザAからの操作により、動画の配信が開始されると、動画生成部11dは、配信用の動画データの生成を開始する。例えば、動画生成部11dは、仮想カメラにより撮影される仮想空間の視野領域がユーザAのアバターを含むように仮想カメラの設定情報を調整する。動画生成部11dは、仮想カメラによって撮影された仮想空間の視野領域を表す動画データを生成する。
【0076】
動画生成部11dにより仮想空間の撮影が行われている間に、ユーザAのアバターは、ユーザ装置10aに入力された指示又はユーザ装置10aが検出した検出情報に基づいて、仮想空間内で所定のモーションをとったり、仮想空間内で表情を変化させたり、仮想空間内を移動したりすることができる。動画生成部11dは、アバターの表情の変化やモーションがレンダリングエンジンにおいて再現できるように、アバターの表情の変化やモーションを表現するデータを動画データに含めることができる。例えば、動画データは、アバターの動きや表情の変化を表現するためのアバターモーションデータを含むことができる。仮想空間におけるアバターのモーションや表情が、ユーザ装置10aやそれ以外のセンサにより取得されたユーザの体や顔の動きを時系列的に表すモーションデータに基づいて制御されている場合には、ユーザ装置10aやセンサにより取得されたモーションデータをアバターモーションデータとしてもよい。モーションデータを取得するためのセンサは、ユーザの身体の一部に装着されるセンサであってもよい。
【0077】
動画生成部11dにより撮影される仮想空間の視野領域には、ユーザAのアバターだけでなく、他のユーザのアバターが配置されていてもよい。この場合、動画生成部11dは、ユーザAのアバターの動きや表情の変化を表すアバターモーションデータだけでなく、他のユーザのアバターの動きや表情の変化を表すアバターモーションデータも含むように動画データを生成してもよい。他のユーザのアバターモーションデータは、サーバ20からユーザ装置10aに送信されたものであってもよい。
【0078】
動画生成部11dにより撮影される仮想空間の視野領域には、ユーザAのアバターを含まず、他のユーザのアバターが配置されてもよい。これにより、ユーザAは、自らのアバターを含まず、他のユーザのアバターを含む動画を配信することができる。動画生成部11dは、他のユーザのアバターを含むように、仮想カメラの設定情報を調整することで、当該他のユーザのアバターを含む仮想空間内の視野領域を撮影することができる。
【0079】
動画生成部11dにより撮影される仮想空間の視野領域には、ユーザのアバターだけでなく、仮想空間内を移動するキャラクター(例えば、コンピュータによって行動が制御されるノンプレイヤーキャラクター)が存在してもよい。動画生成部11dは、仮想カメラによって撮影される仮想空間内の視野領域に含まれるキャラクターがレンダリングエンジンによって描画されるように動画データを生成することができる。
【0080】
仮想カメラにより撮影される仮想空間の視野領域には、ユーザAのアバターと関連付けられているオブジェクトが含まれてもよい。仮想空間においてユーザAのアバターと関連付けられているオブジェクトには、ユーザAのアバターが着用又は装着しているアバターアイテム(例えば、衣服、アクセサリー)を表すオブジェクト、ユーザAのアバターが乗っている乗り物を表すオブジェクト、ユーザAのアバターが連れているペットを表すオブジェクト、及び前記以外のオブジェクトが含まれ得る。
【0081】
動画生成部11dは、ユーザからユーザ装置10aを介して入力された指示に応じて、仮想空間内で仮想カメラを移動させたり、仮想カメラの設定を変更したりすることができる。仮想カメラの設定には、仮想空間内における仮想カメラの位置、注視位置、注視方向、倍率、及び画角が含まれてもよい。例えば、動画生成部11dは、ユーザからの指示に応じて、仮想カメラが当該ユーザのアバターを拡大して撮影するズーム撮影、仮想カメラが当該ユーザのアバターの周りを撮影するパンニング撮影、仮想カメラが当該ユーザのアバターを俯瞰した位置から撮影する俯瞰撮影、及びこれら以外のカメラワークを実現するように仮想空間内で仮想カメラを移動させたり、仮想カメラの設定を変更したりすることができる。
【0082】
仮想空間内には複数の仮想カメラが設置されていてもよい。この場合、動画生成部11dは、複数の仮想カメラを切り替えて、アクティブにされた仮想カメラによって撮影された仮想空間の視野領域を示す動画データを作成してもよい。例えば、仮想空間に仮想カメラA及び仮想カメラBが設置されている場合には、この仮想カメラAと仮想カメラBとの間での切り替えが可能である。仮想カメラAが選択されてアクティブになっている間は、仮想カメラAの位置から見た仮想空間の視野領域を表す動画データが生成され、仮想カメラBが選択されてアクティブになっている間は、仮想カメラBの位置から見た仮想空間の視野領域を示す動画データが生成されてもよい。複数の仮想カメラの切り替えは、ユーザの指示により行われてもよい。仮想カメラのカメラワークは、仮想空間内に設置された複数の仮想カメラのうちアクティブな仮想カメラを切り替えることにより実現されてもよい。
【0083】
以上のように、動画生成部11dは、仮想カメラにより仮想空間の視野領域を撮影することにより配信用の動画データを生成することができる。
【0084】
次に、フォーマット動画の生成について説明する。ユーザAからの操作により、フォーマット動画の生成が開始されると、動画生成部11dは、仮想カメラによって仮想空間の視野領域を撮影して、フォーマット動画を生成する。動画生成部11dによるフォーマット画像の生成は、フォーマットデータ選択部11cによって選択フォーマットデータが選択されている場合には、その選択された選択フォーマットデータを利用して行われる。動画生成部11dは、生成されたフォーマット動画をユーザ装置10aのストレージ15に記憶してもよく、サーバ20にアップロードしてもよい。サーバ20にアップロードされたフォーマット動画は、ストレージ25に記憶されてもよい。フォーマット動画は、三次元の動画データの形式で記憶されてもよく、二次元の動画フレームの形式で記憶されてもよい。
【0085】
動画生成部11dは、選択フォーマットデータを利用可能な点以外は配信用の動画と同様の方法で、フォーマット動画を生成することができる。例えば、動画生成部11dは、アバターの表情の変化やモーションを含むようにフォーマット動画を生成してもよい。また、動画生成部11dは、ユーザAのアバターを含まず他のユーザのアバターを含むようにフォーマット動画を生成してもよい。動画生成部11dは、仮想空間内を移動するキャラクター及び/又はユーザAのアバターと関連付けられているオブジェクトを含むようにフォーマット動画を生成してもよい。動画生成部11dは、ユーザからユーザ装置10aを介して入力された指示に応じて、仮想空間内で仮想カメラを移動させたり、仮想カメラの設定を変更したり、アクティブな仮想カメラを切り替えたりすることで、フォーマット動画を生成してもよい。
【0086】
動画生成部11dは、フォーマットデータ選択部11cによってフォーマットデータが選択された場合には、様々なフォーマットデータのうちフォーマットデータ選択部11cにより選択された選択フォーマットデータを利用して仮想空間の動画を生成することができる。以下では、選択フォーマットデータを利用した動画の生成の幾つかの例について説明する。
【0087】
フォーマットデータ選択部11cによって仮想空間識別情報が選択フォーマットデータとして選択された場合、動画生成部11dは、選択された仮想空間識別情報により識別される仮想空間の視野領域を仮想カメラで撮影することにより動画データを生成する。例えば、ユーザAのアバターは、フォーマットデータ選択部11cによって選択された仮想空間構成情報により識別される仮想空間内に配置され、仮想カメラによって当該アバターを含む仮想空間の視野領域を撮影することで動画データが生成されてもよい。
【0088】
フォーマットデータ選択部11cによって、撮影時にアバターが配置される仮想空間内の位置を示す座標情報が選択フォーマットデータとして選択された場合、動画生成部11dは、ユーザのアバターをフォーマットデータ選択部11cによって選択された座標情報により特定される仮想空間内の位置に配置し、そのアバターが配置された位置を含む仮想空間内の視野領域を仮想カメラで撮影することで動画データを生成することができる。
【0089】
フォーマットデータ選択部11cによって、撮影時にアバターが配置される仮想空間内の領域を特定する領域特定情報が選択フォーマットデータとして選択された場合、動画生成部11dは、ユーザのアバターをフォーマットデータ選択部11cによって選択された領域特定情報により特定される仮想空間内の特定の領域に配置し、そのアバターが配置された位置を含む仮想空間内の視野領域を仮想カメラにより撮影することで動画データを生成することができる。
【0090】
フォーマットデータ選択部11cによって、仮想空間内で移動するアバターの位置に対応する座標を時系列で表す移動情報が選択フォーマットデータとして選択された場合、動画生成部11dは、ユーザのアバターをフォーマットデータ選択部11cによって選択された移動情報が示す時系列で表された座標に沿ってアバターを移動させ、その移動を行うアバターを含む仮想空間内の視野領域を仮想カメラで撮影することで動画データを生成することができる。
【0091】
フォーマットデータ選択部11cによって、撮影時にアバターが向いている方向を示すアバター方向情報が選択フォーマットデータとして選択された場合、動画生成部11dは、仮想空間内に、ユーザのアバターをフォーマットデータ選択部11cによって選択されたアバター方向情報が示す方向を向くように配置する。例えば、一人称視点での撮影が行われる場合には、動画生成部11dは、そのアバターの位置に配置された仮想カメラから、アバター方向情報が示す方向を見た仮想空間内の視野領域を仮想カメラで撮影することで動画データを生成することができる。
【0092】
フォーマットデータ選択部11cによって、撮影時に用いられる仮想カメラのカメラワークを特定する仮想カメラ設定情報が選択フォーマットデータとして選択された場合、動画生成部11dは、選択された仮想カメラ設定情報により特定される仮想カメラの設定を用いて仮想空間を撮影することで動画データを生成することができる。これにより、仮想カメラ設定情報により特定される仮想空間内での仮想カメラのカメラワークを再現して、仮想空間を撮影することができる。例えば、仮想カメラ設定情報がズーム撮影に対応するカメラワークを特定している場合、動画生成部11dは、仮想空間内の視野領域をズーム撮影により撮影することで動画データを生成する。動画生成部11dは、動画データの生成時に、ズーム撮影だけでなく、パンニング撮影、俯瞰撮影、仮想カメラの移動、複数台の仮想カメラの切り替えによるカメラワークを再現することができる。言い換えると、仮想カメラ設定情報が選択フォーマットデータとして選択された場合には、仮想カメラ設定情報で特定されているカメラワークが再現されるように動画データが生成される。
【0093】
フォーマットデータ選択部11cによって、撮影時のアバターのモーションを特定するモーション情報が選択フォーマットデータとして選択された場合、動画生成部11dは、選択されたモーション情報により特定されるモーションを行うように仮想空間内におけるアバターの動きを制御し、そのモーションを行うアバターを含む仮想空間内の視野領域を仮想カメラで撮影することで動画データを生成することができる。モーション情報は、例えば、ダンスの振り付けを特定することができる。モーション情報により特定されるモーションは、数秒程度の短時間だけ継続してもよい。例えば、モーション情報は、10秒程度のダンスの振り付けを特定する情報であってもよい。モーション情報が選択フォーマットデータとして選択された場合には、モーション情報で特定されているアバターの動作が再現されるように動画データが生成される。
【0094】
フォーマットデータ選択部11cによって、撮影時に仮想カメラの視野内に配置されているオブジェクトを特定するオブジェクト情報が選択フォーマットデータとして選択された場合、動画生成部11dは、選択されたオブジェクト情報により特定されるオブジェクトを仮想カメラの視野内に配置し、そのオブジェクトを含む仮想空間内の視野領域を仮想カメラで撮影することにより動画データを生成することができる。オブジェクト情報により特定されるオブジェクトがアバターにより装着されるアバターアイテムの場合には、動画生成部11dは、当該オブジェクト情報により特定されるアバターオブジェクトをアバターに装着させ、このオブジェクトを装着したアバターを含む仮想空間の視野領域を仮想カメラにより撮影することで動画データを生成することができる。
【0095】
フォーマットデータ選択部11cによって、楽曲を特定する楽曲情報が選択フォーマットデータとして選択された場合、動画生成部11dは、選択された楽曲情報により特定される楽曲を動画と同時に再生される楽曲として設定する。当該動画の再生時には、仮想カメラによって撮影された仮想空間の視野領域に対応する映像と合わせて、選択された楽曲が再生される。
【0096】
フォーマットデータ選択部11cによって、映像とともに表示されるエフェクトを特定するエフェクト情報が選択フォーマットデータとして選択された場合、動画生成部11dは、選択されたエフェクト情報を含むように動画データを生成する。当該動画データのレンダリング時には、仮想カメラによって撮影された仮想空間の視野領域に対応する映像と合わせて、エフェクト情報に対応するエフェクトが表示される。エフェクトは、例えば、動画の背景に表示されるアニメーションであってもよい。エフェクトは、例えば、動画の背景に表示される花火を打ち上げるアニメーションであってもよい。
【0097】
フォーマットデータ選択部11cによって、映像に適用されるフィルターを特定するフィルター情報が選択フォーマットデータとして選択された場合、動画生成部11dは、当該フィルターを特定するフィルター特定データを含むように動画データを生成する。当該動画データのレンダリング時には、仮想カメラによって撮影された仮想空間の視野領域に対応する映像に、フィルター特定データで特定されるフィルターを適用した映像が生成される。フィルターがレンダリングにより生成された映像に適用されることにより、当該映像がぼかされてもよい。
【0098】
フォーマットデータ選択部11cによって、映像に挿入されるテキストやグラフィックスを特定する挿入データ情報が選択フォーマットデータとして選択された場合、動画生成部11dは、選択された挿入データ情報を含むように動画データを生成する。当該動画データのレンダリング時には、仮想カメラによって撮影された仮想空間の視野領域に対応する映像に、挿入データ情報で特定されるテキストやグラフィックスが重畳して表示される。
【0099】
動画生成部11dは、フォーマット動画データを生成するために用いたフォーマットを、当該動画データのフォーマットデータとして生成することができる。例えば、撮影時に仮想カメラの視野領域内に配置されているアバターのグローバル座標を、撮影時にアバターが配置される位置を特定するフォーマットデータ(座標情報)としてもよい。撮影時に仮想カメラの視野領域に含まれている仮想空間内の領域を特定する情報を、撮影時にアバターが配置される領域を特定するフォーマットデータ(領域特定情報)としてもよい。撮影時に仮想空間内でアバターが移動した場合には、そのアバターの移動に対応するように時系列で表された仮想空間内の座標を、アバターの移動を示すフォーマット情報(移動情報)としてもよい。撮影時に仮想カメラの視野領域内に配置されているアバターの顔が向いている方向を、撮影時にアバターが向いている方向を示すフォーマットデータ(アバター方向情報)としてもよい。動画データにアバターのモーションを規定するアバターモーションデータが含まれる場合には、当該アバターモーションデータを、アバターのモーションを特定するフォーマットデータ(モーション情報)としてもよい。アバターモーションデータから生成されるアバターの動作を特定可能なデータがモーション情報とされてもよい。動画データにズーム撮影等のカメラワークに対応する仮想カメラの設定に関する情報が含まれる場合には、当該仮想カメラの設定に関する情報を、撮影時に用いられる仮想カメラのカメラワークを特定するフォーマットデータ(仮想カメラ設定情報)としてもよい。例えば、撮影時における仮想カメラの設定(例えば、仮想カメラの位置、注視位置、注視方向、倍率、及び画角)を時系列で記録し、この時系列で記録された仮想カメラの設定を示す情報を仮想カメラ設定情報としてもよい。撮影時におけるアバターの一連のモーションや仮想空間内での位置の変化に対応して変更される仮想カメラの設定(例えば、仮想カメラの位置、注視位置、注視方向、倍率、及び画角)を時系列で記録し、この時系列で記録された仮想カメラの設定を示す情報を仮想カメラ設定情報としてもよい。例えば、一人称視点での撮影においてアバターが後ろを向いたら場合に仮想カメラがパンニングする場合には、アバターが後ろを振り向く際の仮想カメラの注視方向や画角の変化を時系列で記録し、この時系列で記録された仮想カメラの設定を示す情報を仮想カメラ設定情報としてもよい。仮想カメラにより撮影される仮想空間の視野領域にアバターに対応付けられているオブジェクトが含まれる場合には、当該オブジェクトを特定するオブジェクトIDを、撮影時に仮想カメラの視野領域内に配置されるオブジェクトを特定するフォーマットデータ(オブジェクト情報)としてもよい。オブジェクト情報には、仮想カメラにより撮影される仮想空間の視野領域に含まれるオブジェクトのローカル座標が含められてもよい。オブジェクト情報は、視野領域に含まれているアバターが装着しているアバターアイテムを特定してもよい。上記のように、動画生成部11dは、仮想カメラによって仮想空間の視野領域を撮影して動画データを生成する際に、その動画データを生成するために用いられる様々なフォーマットを示す情報を、当該動画データに関連するフォーマットデータとして設定することができる。
【0100】
仮想カメラにより仮想空間内の視野領域を撮影してフォーマット動画を生成する場合には、当該仮想空間を特定する仮想空間IDを、撮影対象となる仮想空間を特定するフォーマットデータ(仮想空間識別情報)とすることができる。撮影時に用いられるフォーマットに関するフォーマットデータは、本明細書で明示的に説明されたものには限定されない。
【0101】
フォーマット画像の生成が、フォーマットデータ選択部11cによって選択フォーマットデータを利用して行われた場合には、動画生成部11dは、利用した選択フォーマットデータを、当該フォーマット画像のフォーマットデータとすることができる。後述するように、フォーマットデータには、当該フォーマットデータを一意に識別するフォーマットデータIDが割り当てられてもよい。動画生成部11dにより選択フォーマットデータを利用してフォーマット動画が生成された場合には、当該フォーマットデータに、選択フォーマットデータに割り当てられているフォーマットデータIDが関連付けられてもよい。
【0102】
動画生成部11dにより生成されたフォーマットデータは、フォーマット動画とともに、または、当該フォーマット動画と関連付けて、後述する動画送信部11eによりサーバ20に送信されてもよい。フォーマット動画に設定されるフォーマットのうち、選択フォーマットデータを利用して特定されたフォーマットについては、当該選択フォーマットデータに割り当てられたフォーマットデータIDを、当該フォーマットについてのフォーマットデータとすることができる。よって、フォーマット動画に関連付けられるフォーマットデータには、当該フォーマット動画の生成時に利用された選択フォーマットデータに割り当てられたフォーマットデータIDと、当該フォーマット動画の生成時に新たに作成されたフォーマットを特定するフォーマットデータ(例えば、上記のようにして生成された座標情報、アバターモーションデータ等)と、が含まれ得る。本明細書では、フォーマット動画の生成時に、選択フォーマットデータを利用せずに新たに作成されたフォーマットを特定するフォーマットデータを「オリジナルフォーマットデータ」と呼ぶことがある。
【0103】
動画生成部11dは、フォーマットデータを動画データのメタデータとして生成することができる。よって、動画生成部11dは、当該動画データに関連付けられているフォーマットデータを動画データとともに記憶することができる。
【0104】
3-2-5 動画送信部11e
次に、動画送信部11eの機能について説明する。動画送信部11eは、動画生成部11dにより生成された配信用の動画又はその動画データをサーバ20に送信することができる。上述したように、動画データを受信したサーバ20は、視聴ユーザのユーザ装置10aに当該動画データを送信することができる。動画データは、サーバ20又は視聴ユーザのユーザ装置10aにおいてレンダリングされ、当該動画データに対応する動画が生成される。動画処理システム1が映像配信方式を採用している場合には、動画送信部11eは、動画データをレンダリングして生成された動画(当該動画を構成する一連の動画フレーム)をサーバ20に送信することができる。動画生成部11dにより、動画データに関連付けてフォーマットデータが生成された場合には、動画データに関連付けて、又は、動画データとともに、当該フォーマットデータがサーバ20に送信される。
【0105】
動画生成部11dにより作成される動画がリアルタイムで(ライブで)配信される場合には、動画送信部11eは、動画生成部11dにより作成された動画を表す動画データをリアルタイムでサーバ20に送信する。動画生成部11dにより作成される動画は、作成後に時間をおいてからサーバ20に送信されてもよい。
【0106】
また、動画送信部11eは、動画生成部11dにより生成されたフォーマット動画をサーバ20に送信することができる。フォーマット動画は、動画生成部11dにおいて当該フォーマット動画について生成されたフォーマットデータとともにサーバ20に送信されてもよい。サーバ20は、受信したフォーマット動画を、例えばストレージ25に格納する。サーバ20は、ユーザ装置10aから受信したフォーマット動画を、他のユーザによって視聴可能にしてもよいし、ユーザAからの指示があるまでは視聴できないようにしてもよい。
【0107】
動画処理システム1は、フォーマット動画を配信する第1配信モードと、フォーマット動画以外の動画を配信する第2配信モードと、を有していてもよい。第1配信モードにおいては、フォーマット動画に加えて当該フォーマット動画に関連付けられているフォーマットデータが、当該フォーマット動画を視聴するユーザのユーザ装置に送信される。これにより、フォーマット動画を視聴するユーザは、フォーマット動画を視聴することができ、また、当該フォーマット動画に関連付けられているフォーマットデータを利用して新たなフォーマット動画の作成を行うことができる。第2配信モードでは、動画生成部11dにより作成された動画が配信されるが、フォーマットデータは配信されない。本明細書においては、第2配信モードにおいて配信される動画を「通常動画」と呼ぶことがある。通常動画の配信時には、当該通常動画と関連付けてフォーマット動画は配信されない。
【0108】
3-2-6 動画編集部11f
次に、動画編集部11fの機能について説明する。動画編集部11fは、動画生成部11dにより生成されたフォーマット動画を編集することができる。例えば、動画編集部11fは、動画生成部11dによって生成されたフォーマット動画に関連付けられているフォーマットデータを変更することにより、動画生成部11dにより生成された動画を編集することができる。ユーザAは、フォーマット動画を視聴可能とする前に、自らのユーザ装置10aにおいてフォーマット動画を再生し、その再生されたフォーマット動画及び楽曲をチェックすることできる。その際に、フォーマット動画の生成時に選択されていた選択フォーマットデータを別のフォーマットデータに変更することで、フォーマット動画や、フォーマット動画とともに再生される楽曲を変更することができる。例えば、アバターの動きを特定するモーション情報Aをフォーマットデータとして選択してフォーマット動画が生成された場合、動画編集部11fは、ユーザAの操作に基づいて、モーション情報Aに代えて、モーション情報Bをフォーマットデータとして採用することができる。これにより、編集前のフォーマット画像においては、アバターがモーション情報Aにより特定されるモーションを行うが、編集後のフォーマット動画においては、モーション情報Bにより特定されるモーションを行う。動画編集部11fは、フォーマット動画とフォーマットデータとの関連付けを変更した場合には、その変更後のフォーマットデータを当該フォーマット動画と関連付けて記憶することができる。例えば、フォーマット動画に関連付けられているモーション情報をモーション情報Aからモーション情報Bに変更した場合には、モーション情報Bを当該フォーマットデータと関連付けて記憶する。別の例として、楽曲Aを特定する楽曲情報がフォーマットデータとしてフォーマット動画に関連付けられている場合、ユーザにより選択された別の楽曲(例えば楽曲B)を特定する楽曲情報を、新たなフォーマットデータとして当該フォーマット動画に関連付けることができる。
【0109】
動画編集部11fにより、フォーマット動画とフォーマットデータとの関連付けが変更された場合には、変更後のフォーマットデータがフォーマット動画とともにサーバ20に送信される。編集前のフォーマット動画がサーバ20に既に送信されている場合には、動画編集部11fは、変更後のフォーマットデータを当該フォーマット動画と関連付けるための更新要求をサーバ20に送信することができる。
【0110】
フォーマット動画が視聴可能とされた後にフォーマットデータが変更されてもよい。この場合にも、動画編集部11fは、当該フォーマット動画と関連付けられるフォーマットデータの変更(又は更新)を要求する更新要求をサーバ20に送信することができる。サーバ20は、フォーマット動画と変更後のフォーマットデータとを関連付けて記憶し、この変更後のフォーマットデータをフォーマット動画とともに視聴ユーザのユーザ装置に送信することができる。動画編集部11fは、動画データに関連付けられているいずれのフォーマットデータを変更できてもよい。
【0111】
4 サーバ20
4-1 サーバ20の構成
次に、
図4をさらに参照して、サーバ20の機能及びサーバ20に記憶されるデータについて説明する。サーバ20は、プロセッサ21、メモリ22、ユーザインタフェース23、通信インタフェース24、ストレージ25、を備えている。プロセッサ21は、プロセッサ11と同様に、CPU等の各種演算装置である。メモリ22は、プロセッサ21が高速にアクセス可能な主記憶装置(メインメモリ)である。ユーザインタフェース23は、サーバ20のユーザの入力を受け付ける入力インタフェースと、プロセッサ21の制御により様々な情報を出力する出力インタフェースと、を備える。通信インタフェース24は、通信インタフェース14と同様に、他の装置と通信を行うための各種ドライバ、ソフトウェア、またはこれらの組み合わせである。ストレージ25は、ストレージ15と同様に、磁気ディスク等のデータを記憶可能な各種記憶装置である。プロセッサ21は、ストレージ25又はそれ以外のストレージからオペレーティングシステムやそれ以外の様々なプログラムをメモリにロードし、ロードしたプログラムに含まれる命令を実行する。
【0112】
4-2 ストレージ25に格納されるデータ
ストレージ25には、フォーマット動画管理情報25a及びフォーマットデータ管理情報25bが格納される。ストレージ25には、前記以外のデータが格納されてもよい。
【0113】
4-2-1 フォーマット動画管理情報25a
フォーマット動画管理情報25aについて、
図5を参照して説明する。フォーマット動画管理情報25aは、フォーマット動画を管理するためのデータが構造的に記憶されたデータセットである。フォーマット動画管理情報25aには、フォーマット動画ごとに、フォーマット動画を識別するフォーマット動画識別情報と関連付けて、フォーマット動画を作成したユーザを識別する作成ユーザ識別情報と、フォーマット動画と、フォーマットデータと、が含まれる。
【0114】
あるフォーマット動画についての動画識別情報は、例えば、当該フォーマット動画を識別する動画IDである。動画IDは、サーバ20がユーザ装置10からフォーマット動画を受信したことに応じて、当該フォーマット動画に割り当てられてもよい。動画IDは、フォーマット動画を一意に識別する。
【0115】
あるフォーマット動画についての作成ユーザ識別情報は、例えば、当該フォーマット動画を作成したユーザのユーザIDである。例えば、ユーザAがユーザ装置10aにおいてフォーマット動画を生成し、そのフォーマット動画をサーバ20に送信した場合には、当該ユーザAのユーザIDが作成ユーザ識別情報として記憶される。
【0116】
あるフォーマット動画についてのフォーマット動画情報は、例えば、当該フォーマット動画を構成する動画フレームである。上述したとおり、ユーザ装置10aにおいて生成されたフォーマット動画は、動画データをレンダリングすることで生成された二次元の動画又は動画フレームの形式で、サーバ20に送信され得る。フォーマット動画管理情報25aにおいては、フォーマット動画を識別する動画IDと関連付けて、レンダリング後のフォーマット動画又はその動画フレームが記憶されてもよい。また、フォーマット動画情報は、フォーマット動画の動画データ(レンダリング前の動画データ)を含んでもよい。フォーマット動画の動画データは、例えば、仮想カメラにより撮影された仮想空間の視野領域の三次元モデルを表す三次元モデルデータである。動画データに対してレンダリングエンジンでレンダリングを施すことにより、二次元の動画(動画フレーム)が生成される。動画データには、レンダリングに必要な三次元モデルデータ以外のデータが含まれてもよい。例えば、フォーマット動画の動画データには、当該フォーマット動画に含まれる一又は複数のオブジェクトの各々を識別するオブジェクト識別データ(オブジェクトID)、当該フォーマット動画に含まれるアバターを識別するアバター識別データ、当該フォーマット動画に含まれるアバターの動きを特定するアバターモーションデータ、及びこれら以外のフォーマット動画を生成するために必要なデータが含まれ得る。
【0117】
あるフォーマット動画についてのフォーマットデータは、当該フォーマット動画に関連付けられているフォーマットデータである。既述のとおり、配信ユーザのユーザ装置10からは、フォーマット動画とともに、又は、フォーマット動画の動画データと関連付けて、当該フォーマット動画に関連付けられるフォーマットデータが送信される。サーバ20がフォーマット動画とともに又はフォーマット動画に関連付けられているフォーマットデータを受信すると、受信されたフォーマットデータは、当該フォーマット動画の動画IDに対応付けて記憶される。フォーマットデータには、具体的には、仮想空間識別情報、座標情報、アバターモーションデータ等の動画データのフォーマットを規定する様々なデータが含まれ得る。同じデータ、フォーマット動画についての動画データ及びフォーマットデータとしてそれぞれ記憶されてもよい。例えば、アバターモーションデータは、動画データ及びフォーマットデータの両方に含まれ得る。
【0118】
4-2-2 フォーマットデータ管理情報25b
フォーマットデータ管理情報25bについて、
図6を参照して説明する。フォーマットデータ管理情報25bは、フォーマット動画に関連付けられているフォーマットデータを管理するためのデータが構造的に記憶されたデータセットである。フォーマットデータ管理情報25bには、フォーマット動画に関連付けられているフォーマットデータごとに、フォーマットデータを識別するフォーマットデータ識別情報と、フォーマット情報を作成したユーザを識別する作成ユーザ識別情報と、フォーマットデータと、が含まれる。
【0119】
あるフォーマットデータについてのフォーマットデータ識別情報は、例えば、当該フォーマットデータを識別するフォーマットデータIDである。フォーマットデータIDは、サーバ20が配信ユーザのユーザ装置10からフォーマットデータを受信したことに応じて、当該フォーマットデータに割り当てられてもよい。既述のとおり、フォーマット動画に関連付けられるフォーマットデータには、当該フォーマット動画の生成時に利用された選択フォーマットデータに割り当てられたフォーマットデータIDと、当該フォーマット動画の生成時に新たに作成されたフォーマットを特定するフォーマットデータ(例えば、
上記のようにして生成された座標情報、アバターモーションデータ等)と、が含まれ得る。サーバ20が配信ユーザのユーザ装置10からフォーマット動画を受信した場合、そのフォーマット動画に関連付けられているフォーマットデータのうち、当該フォーマット動画の生成時に新たに生成されたフォーマットを特定するオリジナルフォーマットデータに対してのみ、フォーマットデータIDが新たに割り当てられてもよい。
【0120】
あるフォーマットデータについての作成ユーザ識別情報は、例えば、当該フォーマットデータを最初に(オリジナルで)作成したユーザのユーザIDである。サーバ20は、ユーザ装置10からフォーマット動画に関連付けてフォーマットデータIDが付されていないフォーマットデータを受信した場合には、当該フォーマットデータにフォーマットデータIDを割り当てるとともに、当該フォーマットデータIDに対応付けて、当該ユーザ装置10のユーザのユーザIDを記憶する。これにより、オリジナルフォーマットデータをフォーマットデータIDにより一意に識別し、そのオリジナルフォーマットデータを作成したユーザを、当該フォーマットデータIDに対応付けられたユーザIDにより一意に識別することができる。
【0121】
上記のとおり、サーバ20において、フォーマット動画に関連付けてオリジナルフォーマットデータを受信した場合に、当該オリジナルフォーマットデータに対してフォーマットデータIDが割り当てられるので、フォーマットデータ管理情報25bにおいては、フォーマットデータID(フォーマットデータ識別情報)に対応付けて、当該オリジナルフォーマットデータが格納される。オリジナルフォーマットデータは、既述のとおり、フォーマット動画のうち選択フォーマットデータを利用せずに生成されたフォーマットを表す様々なデータである。オリジナルフォーマットデータは、例えば、仮想空間識別情報、座標情報、領域特定情報、移動情報、アバター方向情報、仮想カメラ設定情報、モーション情報、オブジェクト情報、エフェクト情報、フィルター情報、及び挿入データ情報から成る群より選択される少なくとも一つであってもよい。フォーマットデータ識別情報に対応付けられるフォーマットデータは、NFT(非代替性トークン)又はSFT(半代替性トークン)としてトークン化されてもよい。フォーマットデータのNFT化又はSFT化は、配信ユーザからのリクエストに応じて行われてもよい。
【0122】
4-3 サーバ20の機能
次に、サーバ20のプロセッサ21により実行される機能について説明する。プロセッサ21は、ストレージ25に記録されたプログラムに含まれるコンピュータ読み取り可能な命令を実行することにより、動画データ配信部21a及びフォーマットデータ取引部21bとして機能する。
【0123】
動画データ配信部21aは、第2配信モードにおいて、視聴ユーザのユーザ装置10からの配信要求に応じて、当該配信要求において配信を要求されている通常動画を、当該ユーザ装置10に配信することができる。サーバ20は、配信可能な通常動画をリスト化した配信動画リストをユーザ装置10に送信してもよい。ユーザ装置10のユーザは、配信動画リストから視聴したい通常動画を選択してもよい。ユーザ装置10は、ユーザにより選択された動画の配信要求をサーバ20に送信することができる。動画データ配信部21aは、ユーザによって選択された通常動画を、当該ユーザのユーザ装置10に配信してもよい。このようにして、第2配信モードにおいては、ユーザ装置10において通常動画の視聴が可能となる。
【0124】
第2配信モードでの配信において、動画データ配信部21aは、通常動画の動画データ(三次元のモデルデータ)を視聴ユーザのユーザ装置10に送信してもよい。この場合、視聴ユーザのユーザ装置10において、当該動画データをレンダリングすることで、再生用の動画(通常動画)が生成されてもよい。動画処理システム1においてサーバレンダリング方式や映像配信方式が採用されている場合には、動画データ配信部21aは、レンダリング後の通常動画をユーザ装置10aに送信してもよい。
【0125】
また、動画データ配信部21aは、第1配信モードにおいて、ユーザによる視聴が可能なフォーマット動画をリスト化したフォーマット動画リストをユーザ装置10に送信してもよい。フォーマット動画リストには、フォーマット動画管理情報25aに格納されているフォーマット動画のうち、作成ユーザが他のユーザによる視聴を許可したものが含められてもよい。ユーザ装置10のユーザは、フォーマット動画リストから視聴したいフォーマット動画を選択してもよい。動画データ配信部21aは、フォーマット動画リストの中から、ユーザによって選択されたフォーマット動画を、当該ユーザのユーザ装置10に送信してもよい。フォーマット動画は、当該フォーマット動画に関連付けられているフォーマットデータとともに、ユーザ装置10に送信されてもよい。このようにして、第1配信モードにおいては、ユーザ装置10においてフォーマット動画の視聴が可能となる。
【0126】
第1配信モードでの配信において、動画データ配信部21aは、レンダリング後のフォーマット動画を視聴ユーザのユーザ装置10に送信してもよい。この場合、視聴ユーザのユーザ装置10は、サーバ20から受信したフォーマット動画をディスプレイに出力することで、フォーマット動画を再生することができる。このように、第1配信モードにおいては、第2配信モードと異なる形式で動画が配信されてもよい。動画処理システム1においては、フォーマット動画のレンダリングに関しても、クライアントレンダリング方式を採用してもよい。この場合、フォーマット動画の動画データ(三次元のモデルデータ)がサーバ20から視聴ユーザのユーザ装置10に送信され、ユーザ装置10において動画データがレンダリングされて、フォーマット動画が生成される。
【0127】
サーバ20により提供されるサービスにおいては、フォーマットデータ管理情報25bに登録されているオリジナルフォーマットデータを作成したユーザに、当該オリジナルフォーマットデータを販売する権利を付与することができる。フォーマットデータ取引部21bは、オリジナルフォーマットデータと販売金額とを含む販売対象リストを作成し、ユーザに対して公開してもよい。フォーマットデータ取引部21bは、例えば、オリジナルフォーマットデータを作成したユーザから、当該オリジナルフォーマットデータの売却リクエストを受け付けると、当該オリジナルフォーマットデータを販売対象リストに加えることができる。フォーマットデータ取引部21bは、販売対象リストに含まれているオリジナルフォーマットデータについて購入希望ユーザから購入リクエストを受け付けると、その購入リクエストのあったオリジナルフォーマットデータを当該購入希望ユーザに対して売却する。フォーマットデータ取引部21bは、オリジナルフォーマットデータについての使用権限を、有償又は無償で他のユーザに付与してもよい。この使用権限は、あるユーザに対して独占的に付与されてもよいし、複数のユーザに対して非排他的に付与されてもよい。
【0128】
フォーマットデータがNFT化又はSFT化されている場合には、フォーマットデータ取引部21bは、NFTやSFTの取引所としての機能を提供してもよい。NFT化又はSFT化されたフォーマットデータは、動画処理システム1の外部の取引所で取引されてもよい。
【0129】
5 フォーマットデータを利用してフォーマット動画を生成するフロー
次に、
図7を参照して、第1配信モードで配信されたフォーマット動画に関連付けられているフォーマットデータを利用して別のフォーマット動画を生成する方法について説明する。
図7に記載されている各ステップにおける処理は、プロセッサ11により実行される。プロセッサ11は、必要に応じて、他のプロセッサと共同して
図7に示されている処理を実行してもよい。
図7においては、ユーザCによって作成され、他のユーザに視聴可能とされているフォーマット動画を、ユーザAのユーザ装置10aにおいて受信することが想定されている。例えば、サーバ20から提供されるフォーマット動画リストには、ユーザCにより作成されたフォーマット動画Cが含まれている。ユーザAは、サーバ20から、フォーマット動画Cが含まれているフォーマット動画リストを取得し、フォーマット動画リストからフォーマット動画Cを視聴対象のフォーマット動画として選択している。また、ユーザCにより作成されたフォーマット動画には、複数のフォーマットデータが関連付けられていることが想定されている。ユーザAは、通常動画の配信を行っていなくても、他のユーザのフォーマット動画を視聴することにより、フォーマット動画を生成することができる。ユーザAが通常配信を行っていない場合には、ユーザAのアバターは、特定の仮想空間に配置されていない可能性があるが、フォーマット動画は、ユーザAのホーム空間を利用して撮影することができる。また、フォーマット動画の撮影を開始する時点で、フォーマット動画の撮影に用いる仮想空間が選択可能となるように、ユーザAのユーザ装置10aに候補となる仮想空間の表示がなされてもよい。
【0130】
まず、ステップS11において、ユーザCにより作成されたフォーマット動画Cが、サーバ20からユーザAのユーザ装置10aに送信され、当該フォーマット動画Cがユーザ装置10aにより受信される。
【0131】
ステップS11において受信されたフォーマット動画Cは、ユーザ装置10aにおいて再生される。例えば、フォーマット動画Cの映像がユーザ装置10aのディスプレイに出力され、フォーマット動画Cの音声及び/又は楽曲がユーザ装置10aのスピーカに出力される。フォーマット動画Cは、動画又は動画フレームの形式ではなく、レンダリング前の動画データの形式でサーバ20から送信されてもよい。この場合には、ステップS12においては、受信された動画データがユーザ装置10aにおいてレンダリングされ、このレンダリングにより生成されたフォーマット動画が再生される。
【0132】
図8には、ユーザ装置10aにおいて再生されているフォーマット動画に対応する画像の例が示されている。フォーマット動画に対応する画像30は、ユーザ装置10aのディスプレイに表示されている。画像30には、当該フォーマット動画を生成したユーザCのアバター31に加えて、オブジェクト32、33、34、35が配置されている。ディスプレイに表示された画像30には、再生ボタン41がオーバレイ表示されている。再生ボタン41が選択されるとフォーマット動画の再生が開始される。
【0133】
ステップS11で受信されたフォーマット動画には、複数のフォーマットデータが関連付けられているので、ステップS11では、フォーマット動画とともにフォーマットデータが取得されている。ディスプレイに表示された画像30には、ステップS11で受信されたフォーマット動画に関連付けられているフォーマットデータを利用するためのアイコン42がオーバレイ表示されている。アイコン42は、ユーザからの選択を受け付ける選択要素の一例である。
【0134】
ユーザAがアイコン42を選択すると、ステップS13において、フォーマット動画とともに受信されたフォーマットデータのうちユーザAの動画の生成時に利用するものを選択するための選択画面が表示される。
図9は、アイコン42を選択することによりユーザ装置10aのディスプレイに表示されるフォーマットデータ選択画面の例である。
図9に示されているように、フォーマットデータ選択画面50には、フォーマット動画とともに取得された各フォーマットデータに対応する表示要素が含まれている。具体的には、フォーマットデータ選択画面50には、仮想空間識別情報に対応する表示要素51、楽曲情報に対応する表示要素52、モーション情報に対応する表示要素53、仮想カメラ設定情報に対応する表示要素54、及びオブジェクト情報に対応する表示要素55が含まれている。フォーマットデータ選択画面50にはさらに、ユーザAが新たなフォーマット動画を作成するための撮影を行うための撮影ボタン56が含まれている。
図9に示されているフォーマットデータ選択画面50は、フォーマット動画の生成に利用するフォーマットデータをユーザに選択させるためのユーザインタフェースの一例である。ユーザAは、フォーマットデータ選択画面50によらず、別のユーザインタフェースを利用して、動画の生成において利用されるフォーマットデータを選択してもよい。
【0135】
表示要素51には、受信された動画データに関連付けられているフォーマットデータの一つである仮想空間識別情報で特定される仮想空間の名称(仮想空間A)、仮想空間A内におけるアバターの場所(座標)、仮想空間Aのサムネイル51a、及び仮想空間Aを選択するためのチェックボックス51bが含まれている。表示要素Aに対応する仮想空間識別情報を利用してフォーマット動画を生成する場合における、当該仮想空間識別情報で特定される仮想空間内でのアバターの配置やアバターの向きは、仮想空間識別情報において特定されていてもよいし、仮想空間識別情報とは異なるフォーマットデータにより特定されてもよい。アバターの仮想空間内における配置やアバターの向きが仮想空間識別情報とは異なるフォーマットデータにより特定される場合には、仮想空間識別情報の利用を選択する際に、仮想空間内におけるアバターの配置やアバターの向きを特定するためのフォーマットデータ(例えば、座標情報、アバター方向情報、及び/又は領域特定情報)の選択を促す表示がなされてもよい。サムネイル51aが選択されると、仮想空間Aの詳細情報が表示されてもよい。仮想空間Aの詳細情報には、仮想空間Aの制作者、データ容量、仮想空間Aを利用してこれまでに生成されたフォーマット動画のリスト、及びこれら以外の仮想空間Aに関する情報が含まれ得る。表示要素51には、仮想空間Aを利用する際の対価が表示されてもよい。チェックボックス51bをチェックすることにより、ユーザAは、仮想空間Aを利用してフォーマット動画を生成することができる。
【0136】
表示要素52には、受信された動画データに関連付けられているフォーマットデータの一つである楽曲情報で特定される楽曲の名称(楽曲A)、楽曲Aのアイコン52a、及び楽曲Aを選択するためのチェックボックス52bが含まれている。アイコン52aが選択されると、楽曲Aの一部がユーザ装置10aのスピーカに出力される。よって、ユーザAは、アイコン52aを選択することにより、楽曲Aを試聴することができる。アイコン52aが選択されると、楽曲Aの詳細情報が表示されてもよい。楽曲Aの詳細情報には、楽曲Aを演奏しているアーティストの名称を示すアーティスト名、データ容量、楽曲Aを利用してこれまでに生成された動画のリスト、及びこれら以外の楽曲Aに関する情報が含まれ得る。表示要素52には、楽曲Aを利用する際の対価が表示されてもよい。チェックボックス52bをチェックすることにより、ユーザAは、楽曲Aを利用してフォーマット動画を生成することができる。
【0137】
表示要素53には、受信された動画データに関連付けられているフォーマットデータの一つであるモーション情報で特定されるモーションの名称(モーションA)、動画表示領域53a、及びモーションAを選択するためのチェックボックス53bが含まれている。動画表示領域53aには、モーションAで特定される一連のモーションを行うアバターの動画が表示される。ユーザAは、動画表示領域53aに表示される動画により、モーションAで特定されるアバターの一連のモーションを見ることができる。動画表示領域53aには、モーションAの詳細情報が関連付けられており、動画表示領域53aが選択されると、モーションAの詳細情報が表示されてもよい。モーションAの詳細情報には、モーションAを作成したユーザのユーザ名、モーションAを利用してこれまでに生成された動画のリスト、及びこれら以外のモーションAに関する情報が含まれ得る。モーションAを作成したユーザのユーザ名は、フォーマットデータ管理情報25bから取得され得る。モーションAを作成したユーザのユーザ名は、受信された動画データに関連付けられて、サーバ20からユーザ装置10aに送信されてもよい。表示要素53には、モーションAを利用する際の対価が表示されてもよい。チェックボックス53bをチェックすることにより、ユーザAは、モーションAを利用してフォーマット動画を生成することができる。モーションAを利用してフォーマット動画を生成すると、その生成したフォーマット動画において、ユーザAのアバターに、受信したフォーマット動画においてアバター31が行うモーションと同じモーションを行わせることができる。
【0138】
表示要素54には、受信された動画データに関連付けられているフォーマットデータの一つである仮想カメラ設定情報で特定されるカメラワークの名称(カメラワークA)、動画表示領域54a、及びカメラワークAを選択するためのチェックボックス54bが含まれている。動画表示領域54aには、カメラワークAで特定されるカメラワークに従ってモデルアバターを撮影することで生成される動画が表示される。モデルアバターは、仮想空間の運営者により準備される。ユーザAは、動画表示領域54aに表示される動画により、カメラワークAで特定されるカメラワークを理解することができる。動画表示領域54aには、カメラワークAの詳細情報が関連付けられており、動画表示領域54aが選択されると、カメラワークAの詳細情報が表示されてもよい。カメラワークAの詳細情報には、カメラワークAを作成したユーザのユーザ名、カメラワークAを利用してこれまでに生成された動画のリスト、及びこれら以外のカメラワークAに関する情報が含まれ得る。カメラワークAを作成したユーザのユーザ名は、フォーマットデータ管理情報25bから取得され得る。カメラワークAを作成したユーザのユーザ名は、受信された動画データに関連付けられて、サーバ20からユーザ装置10aに送信されてもよい。表示要素54には、カメラワークAを利用する際の対価が表示されてもよい。チェックボックス54bをチェックすることにより、ユーザAは、カメラワークAを利用してフォーマット動画を生成することができる。カメラワークAを利用して動画を生成すると、その生成した動画において、ユーザCのフォーマット動画データにおいてアバター31の撮影に用いられているカメラワークと同じカメラワークでユーザAのアバターを撮影することができる。
【0139】
表示要素55には、受信されたフォーマット動画に関連付けられているフォーマットデータの一つであるオブジェクト情報で特定されるアバターアイテムを選択するための選択ボタン55aが含まれている。
図9ではアバターアイテムに関連付けられたチェックボックスが記載されていないが、他のフォーマットデータと同様に、表示要素55についてもチェックボックスが設けられてもよい。表示要素55にチェックボックスが設けられている場合には、ユーザがそのチェックボックスをチェックすると、受信したユーザCのフォーマット動画においてアバターが装着しているアバターアイテムをそのままユーザAのアバターに装着させ、このアバターアイテムを装着したユーザAのアバターを含むフォーマット動画が生成されてもよい。つまり、表示要素55に設けられたチェックボックスがチェックされると、ユーザCのアバターが装着しているアバターアイテムのセット(コーディネート)を、ユーザAのアバターが装着するアバターアイテムのセット(コーディネート)として採用されてもよい。
【0140】
選択ボタン55aが選択されると、アバターアイテムを選択するためのアイテム選択画面がユーザ装置10aのディスプレイに表示される。
図10に選択ボタン55aの選択に応じて表示されるアイテム選択画面の例が示されている。
図10に示されているアイテム選択画面60は、ユーザAのアバターに装着可能なアバターアイテム61~65が示されている。アイテム選択画面60には、受信したフォーマット動画に含まれているアバター31が装着しているアバターアイテムだけ表示されてもよい。このアバターアイテム61~65のうち、受信した動画データに含まれているアバター31が装着しているアバターアイテム61は、強調のために枠線で囲まれている。ユーザAは、アバターアイテム61又はそれ以外のアバターアイテムを選択することができる。アイテム選択画面60に表示されているアバターアイテムは、ユーザAによって選択可能なアバターアイテムの一部であってもよい。アバターアイテム61~65が表示されている領域を左右又は上下にスクロールさせることにより、別のアバターアイテムが表示されてもよい。アバターアイテム61~65の各々と関連付けて、各アバターアイテムを利用する際の対価が表示されてもよい。アバターアイテムのいずれかが選択されると、購入ボタン66が選択可能となる。購入ボタン66が選択されると、選択されたアバターアイテムの購入が完了する。ユーザAは、購入したアバターアイテムを自らのアバターに装着させることができる。
【0141】
図9に示されている例では、チェックボックス51b、52b、54bがチェックされている。チェックボックス51b、52b、54bがチェックされた状態で撮影ボタン56が選択されると、ステップS14において、仮想空間A、仮想空間Aに設定されているアバターの配置場所、楽曲A、及びカメラワークAを利用して、ユーザAのフォーマット動画が生成される。具体的には、仮想空間A内の配置場所にユーザAのアバターが配置され、再生時の楽曲として楽曲Aが指定され、カメラワークAで特定されるカメラワークに従って定められる仮想空間内の視野領域を撮影することで動画データが生成される。仮想空間Aに配置されるユーザAのアバターは、アイテム選択画面60で購入したアバターアイテムを装着していてもよい。
【0142】
図9に示されている例では、チェックボックス53bが選択されていないので、ユーザAのアバターはステップS14での撮影時に、モーションAで特定されるモーションを行わない。ユーザAのアバターのモーションは、ユーザ装置10aやそれ以外のセンサにより取得されたユーザAの体や顔の動きや表情を時系列的に表すモーションデータに基づいて制御されてもよい。ユーザAのアバターのモーションを特定するためのモーションデータは、撮影ボタン56の選択後に、ユーザAのフォーマット動画を作成する際にリアルタイムに取得されてもよい。言い換えると、撮影ボタン56を選択後に、ユーザ装置10aやセンサによって、ユーザAの動きや表情の変化が検出され、この検出されたユーザAの動きや表情の変化に応じたモーションデータの取得が行われ、この取得されたモーションデータを用いてユーザAのフォーマット動画が生成されてもよい。このようにして取得されたモーションデータに従って動くユーザAのアバターが、ユーザ装置10aに表示されてもよい。よって、ユーザAは、ユーザ装置10aに表示されるアバターの動きを見ながら(ユーザ装置10aに表示されるアバターの動きをフィードバックとして得ながら)、自身の動きや表情を変化させることができる。ユーザAのアバターのモーションは、ユーザAによって独自に設定されるので、ステップS14での動画データの生成時(つまり、動画データを生成するための仮想カメラによる撮影時)にユーザAのアバターのモーションを特定するモーション情報(モーションB)が、ステップS14で作成されたフォーマット動画に関連付けられるフォーマットデータ(ユーザAが作成ユーザであるオリジナルフォーマットデータ)として設定される。このモーション情報は、後段のステップS15において、フォーマット動画とともにサーバ20にアップロードされる。
【0143】
ユーザAが選択したフォーマットデータに対価が設定されている場合には、撮影ボタン56の選択に応じて、その対価がユーザAにチャージされる。例えば、
図9の例では仮想空間Aが選択されているので、撮影ボタン56の選択により、仮想空間Aを利用するための対価がユーザAにチャージされる。仮想空間Aがユーザにより生成されたUGC(User Generated Content)である場合には、仮想空間Aの対価の一部又は全部が、当該仮想空間Aを作成したユーザに支払われてもよい。また、モーションAの利用による対価の一部又は全部は、モーションAを作成したユーザに支払われてもよい。また、カメラワークAの利用による対価の一部又は全部は、カメラワークAを作成したユーザに支払われてもよい。対価の支払いは、法定通貨、暗号資産、サーバ20が提供するサービス内でのみ流通するコイン又はトークン、及びこれら以外のデジタルアセットにより支払われてもよい。
【0144】
ステップS14において生成されたフォーマット動画は、ステップS15においてストレージに記憶される。例えば、生成されたフォーマット動画は、サーバ20にアップロードされ、サーバ20のストレージ15に記憶される。サーバ20は、受信したユーザAのフォーマット動画をストレージ25に、フォーマット動画管理情報25aの一部として記憶することができる。ユーザAのフォーマット動画は、ストレージ25内のユーザAに割り当てられた記憶領域に記憶されてもよい。ユーザAは、サーバ20にアップロードしたフォーマット動画を他のユーザにより視聴可能な公開状態としてもよく、他のユーザにより視聴されない非公開状態としてもよい。サーバ20は、ユーザからの要求に応じて、公開状態と非公開状態とを切り替えることができてもよい。ユーザAのフォーマット動画は、サーバ20にアップロードされる前に、ユーザ装置10aのストレージ15に記憶され
てもよい。ユーザAは、ストレージ15に記憶されているフォーマット動画を、所望のタイミングでサーバ20にアップロードできる。
【0145】
サーバ20は、フォーマット動画が公開状態とされた場合に、当該フォーマット動画を、他のユーザに視聴可能とする。具体的には、サーバ20は、フォーマット動画が公開状態でアップロードされた場合、または、フォーマット動画の設定が非公開状態から公開状態に変更された場合に、当該フォーマット動画をフォーマット動画リストに加えてもよい。この場合、サーバ20は、フォーマット動画リストを取得したユーザ端末からの視聴要求を受け付けると、その視聴要求を行ったユーザ装置10に対して、当該フォーマット動画を送信することができる。
【0146】
ステップS14において生成されたフォーマット動画は、ユーザ装置10aのディスプレイに表示されてもよい。ユーザAは、ディスプレイに表示された動画を見て、フォーマット動画を確認することができる。ユーザAは、ディスプレイに表示された動画を見て、フォーマット動画の編集を行うか否かを決めることができる。例えば、ユーザAは、フォーマット動画に適用されるエフェクトを設定することで、当該フォーマット動画を編集することができる。また、ユーザAは、フォーマット動画にテキストやグラフィックスを挿入することで、当該フォーマット動画を編集することができる。フォーマット動画に設定されたエフェクトを特定するエフェクト情報や動画に挿入された挿入データを特定する挿入データ情報は、ステップS14で生成されたフォーマット動画に関連付けて、サーバ20にアップロードされてもよい。これにより、当該フォーマット動画が視聴ユーザのユーザ装置において再生される時には、エフェクト情報により特定されるエフェクトや挿入データ情報により特定されるテキスト及び/又はグラフィックスを当該フォーマット動画に反映させることができる。
【0147】
ステップS13において選択されたフォーマットデータに対応するフォーマットは、フォーマット動画の生成後に編集により変更可能である。例えば、フォーマット動画とともに再生される楽曲として楽曲Aが選択された後に、楽曲Aとは異なる楽曲Bを選択することで、生成されたフォーマット動画とともに再生される楽曲を変更することができる。楽曲情報以外のステップS13において選択されたフォーマットデータも、フォーマット動画の生成後に変更することが可能である。
【0148】
フォーマット動画に対する編集は、フォーマット動画生成後の任意のタイミングで行うことが可能である。例えば、フォーマット動画に対する編集は、(1)フォーマット動画をサーバ20にアップロードする前に行われてもよく、(2)サーバ20にアップロードした後で公開状態にする前に(非公開状態で)行われてもよく、また、(3)サーバ20にアップロードした後で公開状態に設定された後に行われてもよい。
【0149】
以上のとおり、ユーザAは、受信したフォーマット動画に関連付けられているフォーマットデータを組み合わせて、自らのフォーマット動画を生成することができる。このとき、ユーザAは、受信したフォーマット動画に関連付けられている複数のフォーマットデータを全て再現する必要はなく、複数のフォーマットデータの中から所望のものを選択して、自らのフォーマット動画の生成に利用することができる。このため、ユーザAが自らのフォーマット動画を生成する際には、一部のフォーマット(例えば、楽曲)については他のフォーマット動画(上記の例では、ユーザCが生成したフォーマット動画)に関連付けられているフォーマットデータを利用する一方で、他のフォーマット(例えば、アバターのモーション)については、他のフォーマット動画のフォーマットを利用するのではなく自らの個性を反映させたフォーマットを生成することができるので、動画生成の簡便さとクリエイティビティの発揮とを両立させることができる。
【0150】
また、ユーザAは、受信したフォーマット動画に関連付けられている単一のフォーマット(例えば、楽曲)だけでなく、複数のフォーマットを利用することができるので、自らのフォーマット動画の生成時に複数のフォーマットを簡便に設定することができる。
【0151】
上記のとおり、撮影ボタン56が選択されるとフォーマット動画の撮影(生成)が開始される。一態様においては、撮影ボタン56が選択されたことに応じてフォーマット動画の撮影が開始され、これにより生成されたフォーマット動画がライブ配信されてもよい。
【0152】
撮影ボタン56が選択されると、フォーマットデータで指定された仮想空間内の所定の位置にユーザAのアバターが配置され、ユーザAのアバターを含む当該仮想空間の視野領域が撮影され、このように撮影された仮想空間の動画がユーザAのユーザ装置10aに表示されてもよい。この時点では、フォーマット動画の生成は開始されていない。ユーザAのユーザ装置10aに表示された動画には、撮影実行用のアイコン(表示要素)が表示され、この撮影実行用のアイコンが選択されることにより、フォーマット動画の撮影が開始されてもよい。これにより、ユーザAは、フォーマット動画の生成を開始する前に、選択したフォーマットデータを用いて生成された動画を自らのユーザ装置10aで確認することができる。そのユーザ装置10aに表示された動画をフォーマット動画として生成してよいと判断した場合に撮影実行用のアイコンを選択することで、フォーマット動画の生成を開始することができる。フォーマット動画の生成前にその表示態様を確認したときに、撮影ボタン56の選択前に選択済みであったフォーマットデータを別のフォーマットデータに変更することができる。そして、そのフォーマットデータを変更した後に、撮影実行用のアイコンを選択することで、フォーマット画像の撮影を実行する前に、好みに合致したフォーマットを選択することができる。
【0153】
上記の動画処理方法では、ユーザにより生成されたフォーマットデータ(オリジナルフォーマットデータ)が利用されることにより、そのフォーマットデータを生成したユーザに対して経済的な対価を得る機会を与えることができる。これにより、独自のフォーマットデータを生成するようにユーザを動機付けることができる。また、ユーザによるフォーマットデータの生成が活性化することにより、動画生成時に利用可能なフォーマットデータが豊富になるため、フォーマットデータを利用した動画の生成がより便利になる。
【0154】
一態様において、フォーマット動画の生成は、フォーマットデータ選択画面50を経由しなくても行うことができる。例えば、ディスプレイに表示された画像30には、アイコン43~47がオーバレイ表示されてもよい。アイコン43~47は、ユーザからの選択を受け付ける選択要素の一例である。アイコン43が選択されると、ユーザ装置10aにおいて受信されたユーザCのフォーマット動画と同じく、仮想空間Aを撮影して生成されたフォーマット動画の一覧が表示される。
図11には、仮想空間Aを撮影することで生成されたフォーマット動画のリストを含む動画リスト画面70の例が表示されている。動画リスト画面70には、仮想空間Aを撮影して生成された動画71~76と、撮影ボタン77と、が表示されている。動画リスト画面70において、撮影ボタン77が選択されると、仮想空間A内の所定の位置にユーザAのアバターが配置され、この仮想空間Aの視野領域を仮想カメラで撮影することによりフォーマット動画が生成される。動画リスト画面70を経由してフォーマット動画を生成する場合には、仮想空間識別情報以外のフォーマットデータの選択が不要となるため、より少ない操作でフォーマット動画の生成を行うことができる。
【0155】
ディスプレイに表示された画像30に表示されているアイコン44が選択されると、ユーザ装置10aにおいて受信されたフォーマット動画と同じく、動画の再生時に楽曲Aが再生されるように設定されているフォーマット動画の一覧が表示される。
図12には、動画再生時に楽曲Aが再生されるように設定されているフォーマット動画のリストを含む動画リスト画面80が表示されている。動画リスト画面80には、動画再生時に楽曲Aが再生されるように設定されている動画81~86と、撮影ボタン87と、が表示されている。動画リスト画面80において、撮影ボタン87が選択されると、フォーマット動画の生成が開始される。撮影ボタン87が選択された場合には、仮想空間が特定されていないので、アバターは、ユーザAのホーム空間に配置されてもよい。撮影ボタン87が選択された後に、ユーザ装置10aに、フォーマット動画の生成時に使用される複数の仮想空間の候補が表示されてもよい。ユーザAは、この複数の仮想空間の候補から一つの仮想空間を選択してもよい。撮影ボタン87が選択された際のフォーマット動画は、このようにして選択された仮想空間の視野領域を撮影することで生成されてもよい。このようにして生成されたフォーマット動画の再生時には、楽曲Aも再生される。動画リスト画面80を経由して動画を配信する場合には、楽曲情報以外のフォーマットデータの選択が不要となるため、より少ない操作でフォーマット動画の配信を開始することができる。
【0156】
アイコン45が選択されると、ユーザ装置10aにおいて受信されたフォーマット動画と同じモーションAを利用しているフォーマット動画の一覧と、撮影ボタンと、を含む動画リスト画面が表示される。この動画リスト画面において撮影ボタンが選択されると、アバターをユーザAのホーム空間に配置し、ホーム空間においてモーションAで特定される一連のモーションを行うユーザAのアバターを含む画像データが生成される。この撮影ボタンが選択された後に、ユーザ装置10aに、フォーマット動画の生成時に使用される複数の仮想空間の候補が表示されてもよい。ユーザAは、この複数の仮想空間の候補から一つの仮想空間を選択してもよい。撮影ボタンが選択された際のフォーマット動画は、このようにして選択された仮想空間の視野領域を撮影することで生成されてもよい。
【0157】
アイコン46が選択されると、ユーザ装置10aにおいて受信されたフォーマット動画と同じカメラワークAを利用している動画の一覧と、撮影ボタンと、を含む動画リスト画面が表示される。この動画リスト画面において撮影ボタンが選択されると、アバターをユーザAのホーム空間に配置し、ホーム空間においてカメラワークAで特定されるカメラワークで撮影されたユーザAのアバターを含む画像データが生成される。この撮影ボタンが選択された後に、ユーザ装置10aに、フォーマット動画の生成時に使用される複数の仮想空間の候補が表示されてもよい。ユーザAは、この複数の仮想空間の候補から一つの仮想空間を選択してもよい。撮影ボタンが選択された際のフォーマット動画は、このようにして選択された仮想空間の視野領域を撮影することで生成されてもよい。
【0158】
アイコン47が選択されると、ユーザ装置10aにおいて受信されたフォーマット動画に含まれているアバター31が装着しているアイテムと同じアバターアイテムを着用しているアバターを含む動画の一覧と、撮影ボタンと、を含む動画リスト画面が表示される。この動画リスト画面において撮影ボタンが選択されると、当該アバターアイテムを着用したアバターをユーザAのホーム空間に配置し、このアバターを含む画像データが生成される。アバター31が着用しているアバターアイテムをユーザAが所有していない場合には、撮影ボタンが選択されたときに、アバター31が着用しているアバターアイテムの購入を促す画面に遷移してもよい。撮影ボタンが選択された後に、ユーザ装置10aに、フォーマット動画の生成時に使用される複数の仮想空間の候補が表示されてもよい。ユーザAは、この複数の仮想空間の候補から一つの仮想空間を選択してもよい。撮影ボタンが選択された際のフォーマット動画は、このようにして選択された仮想空間の視野領域を撮影することで生成されてもよい。
【0159】
画像30においては、アイコン43~47から複数のアイコンが選択可能に設定されてもよい。そして、複数のアイコンが選択された状態で検索が実行された場合には、その選択された複数のアイコンに対応するフォーマットデータがいずれも設定されているフォーマット動画の一覧と、撮影ボタンと、を含む動画リスト画面が表示されてもよい。この動画リスト画面においては、例えば、ユーザ装置10aにおいて受信されたフォーマット動画と同じ仮想カメラA及びカメラワークAを利用して生成されたフォーマット動画の一覧が表示される。このように、アイコン43~47から複数のアイコンを選択して、その選択された複数のアイコンに対応するフォーマットデータを利用して生成されたフォーマット動画を検索可能とすることにより、ユーザAの好みに近いフォーマット動画の特定が容易になる。
【0160】
6 サーバ20にアップロードされたフォーマット動画
サーバ20にフォーマット動画がアップロードされると、サーバ20は、当該フォーマット動画をストレージ25に公開状態又は非公開状態で格納する。サーバ20は、フォーマット動画をアップロードしたユーザからの指示に応じて、当該フォーマット動画の設定を公開状態と非公開状態とで切り替えることができてもよい。サーバ20は、公開状態に設定されているフォーマット動画の一覧を含むフォーマット動画リストを、視聴ユーザからの要求に応じて、視聴ユーザのユーザ装置に送信することができる。
図13にフォーマット動画リストの例を示す。
図13は、視聴ユーザであるユーザBのユーザ装置10bに表示されたフォーマット動画リスト90を示す。フォーマット動画リスト90には、公開状態に設定されている複数のフォーマット動画のサムネイルが表示されている。このうち、サムネイル91は、ユーザAによって
図7のフローに従ってアップロードされたフォーマット動画V1に対応する。
【0161】
各サムネイルには、各サムネイルに対応するフォーマット動画を再生するための再生用アイコンが含まれている。図示の例では、サムネイル91には、再生用アイコン91aが含まれている。ユーザBは、再生用アイコン91aを選択することにより、サムネイル91に対応するフォーマット動画V1を再生することができる。再生用アイコン91aが選択されると、フォーマット動画V1がユーザBのユーザ装置10bに送信される。フォーマット動画V1は、ユーザ装置10bにおいて再生される。フォーマット動画V1が、レンダリング前の動画データの形式でユーザ装置10bに送信される場合には、ユーザ装置10bにおいて、受信されたフォーマット動画V1の動画データがレンダリングエンジンにより処理される。この場合、フォーマット動画V1は、レンダリングエンジンにより動画を生成するために必要なデータ一式を含む。
【0162】
ユーザBにより、サムネイル91のうち再生用アイコン91a以外の部分が選択されると、フォーマット動画V1に関連付けられているフォーマットデータの一覧がユーザBのユーザ装置10bに送信されてもよい。
図14に、フォーマット動画V1に関連付けられているフォーマットデータ一覧の例を示す。
図14は、ユーザBのユーザ装置10bに表示されたフォーマットデータ一覧100を模式的に示す。フォーマットデータ一覧100には、フォーマット動画V1に関連付けられているフォーマットデータの各々が表示される。上述したように、ユーザAにより生成されたフォーマット動画V1は、ユーザCによって配信されたフォーマット動画に関連付けられている仮想空間A、楽曲A、及びカメラワークAを利用し、また、ユーザAが独自に作成したモーションBにより特定されるモーションをユーザAのアバターに行わせることで生成されている。
図14に示されているフォーマットデータ一覧100には、フォーマット動画V1がユーザAによって作成されたものであることを示すために、動画の名称(フォーマット動画V1)の左横に、ユーザAのアイコン101が表示されている。また、フォーマット動画V1に関連付けられている仮想空間A、楽曲A、モーションB、及びカメラワークAの利用関係を示すために、ユーザAの前にこれらのフォーマットデータを利用したユーザを示すアイコンが、フォーマットデータの各々に関連付けて表示されている。フォーマット動画V1は、ユーザCが配信した動画データに関連付けられている仮想空間A、楽曲A、及びカメラワークAを利用しているため、仮想空間A、楽曲A、及びカメラワークAに対応する表示領域には、これらのフォーマットデータがユーザCが配信したフォーマット動画から継承されたものであることを示すために、ユーザCを表すアイコン102が表示されている。楽曲Aも仮想空間A及びカメラワークAと同様にユーザCの動画に関連付けられていたものであるが、楽曲Aのオリジナルの作成者は、ユーザCとは異なるユーザであるため、楽曲Aに対応する表示領域には、楽曲Aのオリジナルの作成者を表すアイコン103が表示されている。つまり、アイコン102で表されているユーザCは、フォーマット動画を作成する際に、アイコン103で表されているユーザによって作成された楽曲Aを利用していたため、この継承関係を示すために、楽曲Aの表示領域にはアイコン103が表示されている。このように、フォーマットデータの表示領域には、当該フォーマットデータを最初に作成したユーザを表すアイコン(例えば、アイコン103)と、そのフォーマットデータをその後に利用したユーザのアイコン(例えば、アイコン102)と、がその利用関係を反映するように表示される。
【0163】
フォーマットデータ一覧100により、視聴ユーザは、各動画データに関連付けられているフォーマットデータのオリジナルの作成者、及び、その後の利用関係(継承関係)を理解することができる。フォーマットデータ一覧100には、利用関係を表示せずに、オリジナルの作成者を示す情報(例えば、アイコン)が表示されてもよい。視聴ユーザは、例えば、好みのフォーマットデータを最初に作成したユーザをフォローすることにより、当該ユーザが新たなフォーマットデータを作成した場合に、その通知を受けることができる。フォーマットデータのオリジナルの作成者は、当該フォーマットデータが別のユーザによってフォーマット動画の生成のために利用された場合に、その通知を受けることができる。動画処理システム1の各ユーザのユーザ端末においては、各ユーザが作成したフォーマットデータ(オリジナルフォーマットデータ)を利用することで生成されたフォーマット動画の一覧が、オリジナルフォーマットごとに表示されてもよい。例えば、ユーザAが第1オリジナルフォーマットと、第2オリジナルフォーマットと、を作成した場合、第1オリジナルフォーマットを利用することで生成されたフォーマット動画のリスト(第1利用動画リスト)と、第1オリジナルフォーマットを利用することで生成されたフォーマット動画のリスト(第2利用動画リスト)とがユーザAのユーザ装置10aに表示され得る。
【0164】
図14に示されているフォーマットデータは、他のユーザがフォーマット動画を作成するときにも利用される可能性がある。ユーザBにより各フォーマットデータに対応する領域を選択することにより、当該フォーマットデータが利用されているフォーマット動画の一覧が生成されてもよい。例えば、モーションBに対応する表示領域が選択された場合に、モーションBを利用して生成されたフォーマット動画の一覧が生成され、この生成されたフォーマット動画の一覧がユーザBのユーザ装置10bに表示されてもよい。
【0165】
7 フォーマットデータの利用可否設定
上述したように、フォーマット動画に関連付けられているフォーマットデータは、当該フォーマット動画を受信したユーザによって、当該ユーザのフォーマット動画を生成するためのフォーマットとして利用されることが想定されている。他方、フォーマット動画にオリジナルフォーマットデータが含まれている場合には、一部のユーザは、そのオリジナルフォーマットデータが他のユーザによって利用されることを望まない可能性がある。このため、動画処理システム1においては、各ユーザに対して、他のユーザによるフォーマットデータの利用を許可するか否かを設定する機能が提供されてもよい。例えば、サーバ20において、ユーザに対応付けられているオリジナルフォーマットデータのリストを作成し、当該リストにおいてフォーマットデータごとに他のユーザによる利用可否を設定できるようにしてもよい。オリジナルフォーマットデータの利用可否は、オリジナルフォーマットデータごとに設定されてもよい。オリジナルフォーマットデータの利用可否は、フォーマット動画ごとに設定されてもよい。例えば、ユーザAが第1フォーマット動画及び第2フォーマット動画を生成し、そのいずれにもオリジナルフォーマットデータAが関連付けられている場合、第1フォーマット動画に関連付けられているオリジナルフォーマットデータAについては利用を許可とし、第2フォーマット動画に関連付けられているオリジナルフォーマットデータAについては利用を不許可としてもよい。
【0166】
図15には、ユーザAに対応付けられているオリジナルフォーマットデータのリストを含むリスト表示画面110の例を示す。リスト表示画面110は、ユーザAのユーザ装置10aに表示される。リスト表示画面110には、フォーマットデータA~Dの4つのフォーマットデータが表示されており、それぞれについてチェックボックス111~114が表示されている。ユーザAは、使用を許諾しないフォーマットデータのチェックボックスをチェックすることにより、当該フォーマットデータの利用を禁止することができる。図示の例では、フォーマットデータCのチェックボックス113がチェックされているため、ユーザA以外のユーザは、動画生成時にフォーマットデータCを利用することができない。例えば、フォーマットデータCが関連付けられている動画を受信したユーザ装置においては、フォーマットデータ選択画面50において、フォーマットデータCに対応するフォーマットデータをグレーアウトして選択不能とすることができる。フォーマットデータCに対応するフォーマットデータは、フォーマットデータ選択画面50に表示されなくともよい。
【0167】
8 フォーマット動画の撮影(生成)の開始
図7に示したフローには、ユーザAが他のユーザ(ユーザC)により生成されているフォーマット動画を取得し、当該フォーマット動画に関連付けられているフォーマットデータを利用することでフォーマット動画の生成を開始する態様が示されている。動画処理システム1においては、
図7に示されている態様以外の態様でフォーマット動画の撮影を開始することができる。例えば、仮想空間ごとにいずれかのユーザによってフォーマット画像の撮影対象とされた撮影場所を記憶しておくことができる。そして、ユーザAがアバターを利用して仮想空間内を探索している間に撮影モードに移行すると、撮影モードに移行したときのユーザAのアバターの位置から所定距離内にある撮影場所のリストがユーザAのユーザ装置10aに表示される。撮影場所のリストには、撮影場所と対応付けて、その撮影場所で撮影されたフォーマット動画及び当該フォーマット動画に関連付けられたフォーマットデータが含まれる。ユーザAは、当該リストの中から撮影場所及び当該撮影場所において撮影されたフォーマット動画に対応付けられているフォーマットデータのうち一又は複数を選択することにより、その選択されたフォーマットデータを利用して、選択された撮影場所を仮想カメラの視野領域に含むように当該仮想空間を撮影することでフォーマット動画を生成することができる。これにより、ユーザAは、利用中の仮想空間内で撮影場所を簡便に特定することができ、さらに、当該撮影場所で撮影されたフォーマット動画に関連付けられているフォーマットデータを利用することにより、簡便に動画データを生成することができる。
【0168】
一態様において、ユーザによるフォーマット動画の撮影は、当該ユーザが通常動画を配信している間に開始されてもよい。例えば、当該ユーザが通常動画を配信している間に、当該ユーザのユーザ装置に、フォーマット動画の撮影を開始するためのアイコン(表示要素)が表示されてもよい。当該ユーザは、ユーザ端末において、フォーマット動画の撮影を開始するためのアイコンを選択することにより、通常動画の配信中にフォーマット動画の撮影を開始できてもよい。当該フォーマット動画の撮影は、通常動画の配信時に当該ユーザのアバターが配置されている仮想空間を利用して生成されてもよい。このようにして生成されるフォーマット動画は、通常動画とは異なる形式で生成または配信されてもよい。例えば、通常動画がクライアントレンダリング方式で配信されている場合であっても、フォーマット動画は映像配信方式又はサーバレンダリング方式で生成または配信されてもよい。
【0169】
一態様において、ユーザは、通常動画の配信を終了した後に、当該通常動画の配信に使用された動画データを用いてフォーマット動画及びフォーマットデータを生成してもよい。当該フォーマット動画は、通常動画の一部であってもよい。例えば、通常動画が60分間配信された場合、ユーザは、通常動画全体のうちの一部(例えば、配信途中の1分間)に相当する動画をフォーマット動画として選択してもよい。フォーマットデータは、通常動画の選択された区間における動画データに基づいて生成することができる。例えば、通常動画のうちの選択した区間に含まれるカメラワークを特定する情報をフォーマットデータ(仮想カメラ設定情報)として設定することができる。通常動画のうちの一部の選択は、通常動画の配信開始後、配信終了前に選択されてもよい。
【0170】
通常動画を視聴しているユーザは、自らのアバターが当該通常動画に表示されているときに、当該通常動画の動画データを利用して、自らのアバターを含むフォーマット動画の撮影を行ってもよい。
【0171】
9 注記
図1に示されている動画処理システム1は、本発明を適用可能なシステムの例であり、本発明を適用可能なシステムは、
図1に示されたものには限定されない。本発明を適用可能な動画処理システム1は、図示されている構成要素の一部を備えなくてもよい。動画処理システム1は、ユーザ装置10又はサーバ20によって実行されるべき処理を分散して処理するためのクラウド環境を備えていてもよい。
【0172】
動画処理システム1において、データの格納場所には特段の制限はない。例えば、ストレージ25に記憶され得る各種データは、ストレージ25とは物理的に別体のストレージやデータベースサーバに格納されてもよい。本明細書において、ストレージ25に記憶されると説明されているデータは、単一のストレージに記憶されてもよいし、複数のストレージに分散して記憶されてもよい。本明細書及び特許請求の範囲において、単に「ストレージ」という場合には、文脈上許される限り、単一のストレージと複数のストレージの集合のいずれを指し示すこともある。
【0173】
本発明の実施形態は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で様々な変更が可能である。例えば、プロセッサ11で実行される機能の一部又は全部は、発明の趣旨を逸脱しない限り、プロセッサ21又は本明細書で明記されていないプロセッサにより実現されてもよい。同様に、プロセッサ21で実行される機能の一部又は全部は、発明の趣旨を逸脱しない限り、プロセッサ11又は本明細書で明記されていないプロセッサにより実現されてもよい。
図4においてはプロセッサ11が単一の構成要素として図示され、
図5においてはプロセッサ21が単一の構成要素として図示されているが、プロセッサ11及びプロセッサ21の各々は複数の物理的に別体のプロセッサの集合であってもよい。
【0174】
本明細書において、プロセッサ11によって実行されるとして説明されるプログラム又は当該プログラムに含まれる命令は、単一のプロセッサで実行されてもよいし、複数のプロセッサにより分散して実行されてもよい。また、プロセッサ11によって実行されるプログラム又は当該プログラムに含まれる命令は、一又は複数の仮想プロセッサにより実行されてもよい。本段落におけるプロセッサ11についての説明は、プロセッサ21についても当てはまる。
【0175】
プロセッサ11及び/又はプロセッサ21で実行されるプログラムは、図示されているストレージ以外にも様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)に格納され得る。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例には、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、Compact Disc Read Only Memory(CD-ROM)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、Programmable ROM(PROM)、Erasable PROM(EPROM)、フラッシュROM、Random Access Memory(RAM))を含む。
【0176】
本明細書中で説明される処理及び手順が単一の装置、ソフトウェア、コンポーネント、モジュールによって実行される旨が説明されたとしても、そのような処理または手順は複数の装置、複数のソフトウェア、複数のコンポーネント、及び/又は複数のモジュールによって実行され得る。また、本明細書中で説明されるデータ、テーブル、又はデータベースが単一のメモリに格納される旨説明されたとしても、そのようなデータ、テーブル、又はデータベースは、単一の装置に備えられた複数のメモリまたは複数の装置に分散して配置された複数のメモリに分散して格納され得る。さらに、本明細書において説明されるソフトウェアおよびハードウェアの要素は、それらをより少ない構成要素に統合して、またはより多い構成要素に分解することによって実現することも可能である。
【0177】
本明細書において説明された処理手順、特にフロー図又はシーケンス図を用いて説明された処理手順においては、その処理手順を構成する工程(ステップ)の一部を省略すること、その処理手順を構成する工程として明示されていない工程を追加すること、及び/又は当該工程の順序を入れ替えることが可能であり、このような省略、追加、順序の変更がなされた処理手順も本発明の趣旨を逸脱しない限り本発明の範囲に含まれる。
【0178】
本明細書及び特許請求の範囲における「第1」、「第2」、「第3」などの表記は、構成要素を識別するために付するものであり、必ずしも、数、順序、もしくはその内容を限定するものではない。また、構成要素の識別のための番号は文脈毎に用いられ、一つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
【0179】
ユーザ装置10及びサーバ20の機能は、レンダリング方式に応じて変わり得る。例えば、クライアントレンダリング方式が採用される場合には、ユーザ装置10は、動画データをレンダリングするための機能を備えることが必要であるが、サーバレンダリング方式が採用される場合には、ユーザ装置10は、必ずしも動画データをレンダリングする機能を備える必要はない。例えば、ユーザ装置10aの機能として説明された動画再生部11bの機能の少なくとも一部は、サーバ20の機能として実装されてもよい。
【0180】
以下に、本願の原出願の出願時の特許請求の範囲に記載された発明を付記する。
[1]
一又は複数のプロセッサにより実行される動画処理方法であって、
仮想空間内の第1アバターを含む第1動画を生成するために用いられる一又は複数のフォーマット要素を取得する工程と、
前記一又は複数のフォーマット要素から選択された一又は複数の選択フォーマット要素を用いて、前記第1アバターとは異なる第2アバターを含む第2動画を生成する工程と、
を備える動画処理方法。
[2]
前記一又は複数のフォーマット要素は、前記仮想空間を識別する仮想空間識別情報を含む、
[1]に記載の動画処理方法。
[3]
前記仮想空間識別情報が前記一又は複数の選択フォーマット要素として選択された場合、前記第2動画において、前記第2アバターは、前記仮想空間に配置される、
[2]に記載の動画処理方法。
[4]
前記第1動画は、前記仮想空間において仮想カメラにより撮影された前記第1アバターを含み、
前記一又は複数のフォーマット要素は、撮影時における前記第1アバターの前記仮想空間内での位置を特定する座標情報を含む、
[1]から[3]のいずれか1項に記載の動画処理方法。
[5]
前記座標情報が前記一又は複数の選択フォーマット要素として選択された場合、前記第2動画において、前記第2アバターは、前記仮想空間内の前記座標情報により特定される位置へ配置される、
[4]に記載の動画処理方法。
[6]
前記第1動画は、前記仮想空間において仮想カメラにより撮影された前記第1アバターを含み、
前記一又は複数のフォーマット要素は、撮影時における前記仮想カメラの撮影設定情報を含む、
[1]から[5]のいずれか1項に記載の動画処理方法。
[7]
前記撮影設定情報が前記一又は複数の選択フォーマット要素として選択された場合、前記第2動画は、前記撮影設定情報に従って前記仮想空間において撮影された前記第2アバターを含むように生成される、
[6]に記載の動画処理方法。
[8]
前記第1動画は、前記仮想空間において仮想カメラにより撮影された前記第1アバターを含み、
前記一又は複数のフォーマット要素は、撮影時における前記第1アバターのモーションを特定するモーション情報を含む、
[1]から[7]のいずれか1項に記載の動画処理方法。
[9]
前記モーション情報が前記一又は複数の選択フォーマット要素として選択された場合、前記第2動画は、前記モーション情報に従って動く前記第2アバターを含むように生成される、
[8]に記載の動画処理方法。
[10]
前記第1動画は、前記仮想空間において仮想カメラにより撮影された前記第1アバターを含み、
前記一又は複数のフォーマット要素は、撮影時に前記第1アバターに関連付けて前記仮想空間に配置されているオブジェクトを特定するオブジェクト情報を含む、
[1]から[9]のいずれか1項に記載の動画処理方法。
[11]
前記オブジェクト情報が前記一又は複数の選択フォーマット要素として選択された場合、前記第2動画において、前記第2アバターは、前記オブジェクト情報により特定されるオブジェクトと関連付けて表示される、
[10]に記載の動画処理方法。
[12]
前記一又は複数のフォーマット要素は、前記第1動画において映像に合わせて再生される楽曲を特定する楽曲情報を含む、
[1]から[11]のいずれか1項に記載の動画処理方法。
[13]
前記楽曲情報が前記一又は複数の選択フォーマット要素として選択された場合、前記第2動画の視聴時に、前記第2アバターを含む映像に合わせて前記楽曲情報により特定される楽曲が再生される、
[12]に記載の動画処理方法。
[14]
前記第1動画とともに、前記一又は複数のフォーマット要素から前記一又は複数の選択フォーマット要素を選択するための一又は複数の選択要素を表示する、
[1]から[13]のいずれか1項に記載の動画処理方法。
[15]
前記一又は複数のフォーマット要素は、第1フォーマット要素を含み、
前記一又は複数の選択要素は、前記第1フォーマット要素を選択するための第1選択要素を含み、
前記第1選択要素の選択を検出したことに応じて、前記第1フォーマット要素を用いて生成された動画に関する動画情報を表示する、
[14]に記載の動画処理方法。
[16]
前記一又は複数のフォーマット要素は、第1フォーマット要素を含み、
前記一又は複数の選択要素は、前記第1フォーマット要素を選択するための第1選択要素を含み、
前記第1選択要素の選択を検出したことに応じて、前記第1フォーマット要素に関する
フォーマット情報を表示する、
[14]に記載の動画処理方法。
[17]
前記第2動画を生成する工程は、前記一又は複数の選択フォーマット要素の少なくとも一部を、別のフォーマット要素に変更する工程を含む、
[1]から[16]のいずれか1項に記載の動画処理方法。
[18]
前記一又は複数のフォーマット要素に含まれる少なくとも一つのフォーマット要素は、対価の支払いを条件として前記第2動画の生成のために利用可能となる、
[1]から[17]のいずれか1項に記載の動画処理方法。
[19]
前記一又は複数のフォーマット要素に含まれる少なくとも一つのフォーマット要素は、
非代替性トークンとしてトークン化されている、
[1]から[18]のいずれか1項に記載の動画処理方法。
[20]
前記一又は複数のフォーマット要素に基づいて生成された前記第1動画を再生する工程をさらに備える、
[1]から[19]のいずれか1項に記載の動画処理方法。
[21]
一又は複数のプロセッサにより実行される画像処理方法であって、
第1アバターを含む第1動画を生成するために用いられる複数のフォーマット要素を取得する工程と、
前記複数のフォーマット要素から選択された一又は複数の選択フォーマット要素に基づいて、前記第1アバターとは異なる第2アバターを含む第2動画を生成する工程と、
を備える画像処理方法。
[22]
一又は複数のプロセッサを備え、
前記一又は複数のプロセッサが、コンピュータ処理可能な命令を実行することにより、
仮想空間内の第1アバターを含む第1動画を生成するために用いられる一又は複数のフォーマット要素を取得し、
前記一又は複数のフォーマット要素から選択された一又は複数の選択フォーマット要素を用いて、前記第1アバターとは異なる第2アバターを含む第2動画を生成する、
画像処理システム。
[23]
一又は複数のプロセッサに、
仮想空間内の第1アバターを含む第1動画を生成するために用いられる一又は複数のフォーマット要素を取得する工程と、
前記一又は複数のフォーマット要素から選択された一又は複数の選択フォーマット要素を用いて、前記第1アバターとは異なる第2アバターを含む第2動画を生成する工程と、
を実行させる動画処理プログラム。
【符号の説明】
【0181】
1 動画処理システム
10 ユーザ装置
11 プロセッサ
11a 仮想空間表示部
11b 動画再生部
11c フォーマットデータ選択部
11d 動画生成部
11e 動画送信部
11f 動画編集部
20 サーバ
21 プロセッサ
21a 動画データ配信部
21b フォーマットデータ取引部
25 ストレージ
25a フォーマット動画管理情報