(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-05
(45)【発行日】2023-01-16
(54)【発明の名称】端末およびサーバ
(51)【国際特許分類】
G06F 3/04855 20220101AFI20230106BHJP
【FI】
G06F3/04855
(21)【出願番号】P 2017243654
(22)【出願日】2017-12-20
(62)【分割の表示】P 2017104709の分割
【原出願日】2017-05-26
【審査請求日】2020-05-20
【審判番号】
【審判請求日】2022-03-18
(73)【特許権者】
【識別番号】505414274
【氏名又は名称】株式会社D4エンタープライズ
(74)【代理人】
【識別番号】100096035
【氏名又は名称】中澤 昭彦
(72)【発明者】
【氏名】峠岡 真二郎
(72)【発明者】
【氏名】中野 智行
(72)【発明者】
【氏名】鈴木 洋司
【合議体】
【審判長】稲葉 和生
【審判官】▲高▼瀬 健太郎
【審判官】富澤 哲生
(56)【参考文献】
【文献】米国特許出願公開第2015/0306499(US,A1)
【文献】特開2009-188936(JP,A)
【文献】特表2008-538842(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/048-3/0489
G06F13/00
H04N5/91
G06F17/30
(57)【特許請求の範囲】
【請求項1】
端末とサーバーとがネットワークで互いに接続されたコンテンツ体験共有システムに用いられる端末であって、
アプリケーションに対する操作入力データと前記操作入力データを前記アプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、前記アプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータとを受信する受信部と、
前記操作入力データを当該操作入力データに対応する時間データの示す時間に前記アプリケーションへ適用する実行部と
を具備し、
前記実行部は、前記ランダムアクセスポイントを選択するユーザ入力をトリガとして前記アプリケーションを前記特定の時間データの示す時間に対応する実行状態まで遷移させ、
前記受信部は、前記タグデータの追加、変更または削除に関して前記端末または当該端末のユーザ
毎に与えられた権限を示す権限データをさらに受信
し、
前記タグデータの追加、変更または削除に関するユーザ入力が権限を超えている場合、前記ユーザ入力に応じた要求の生成を拒否する、
端末。
【請求項2】
前記実行部は、前記アプリケーション操作データの現在の実行状態に対応する時間の時間軸上での位置を可視化するシークバーを含む表示データを生成し、
前記シークバーは、前記特定の時間データの示す時間の時間軸上での位置を可視化するGUI(Graphical User Interface)部品を含む、
請求項1に記載の端末。
【請求項3】
前記受信部は、前記アプリケーション操作データの途中から分岐して前記端末に対するユーザ入力に基づく別のアプリケーション操作データを生成することが許容される分岐可能期間を示す期間データをさらに受信する、請求項1又は2に記載の端末。
【請求項4】
前記分岐可能期間は、前記端末または当該端末のユーザと他の端末または当該他の端末のユーザとの間で異なるように設定可能である、請求項3に記載の端末。
【請求項5】
前記実行部は、前記アプリケーション操作データを前記アプリケーションへ適用する速度を変更可能である、請求項1乃至請求項4のいずれか1項に記載の端末。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザ間でコンテンツ体験を共有する技術に関する。
【背景技術】
【0002】
特許文献1は、ステートセーブ処理により生成されたステートセーブデータを、他のプレイヤとの間で共有することを開示している([0101])。プレイヤは、ステートセーブデータを他のプレイヤと共有することで、自身のゲームプレイの続きを他のプレイヤにもプレイさせることができる。他のプレイヤが作成したステートセーブデータを用いて、その続きからゲームプレイを行うことができる。さらに、対象ステートセーブデータをどのように他のプレイヤに共有するか(例えば、特定のプレイヤと共有する)を示す情報である共有条件についても開示がある([0104])。
【0003】
特許文献2は、ユーザがプレイしたゲームの画面を再現動画として他のユーザと共有するための技法を開示している。再現動画は、例えばアスキーデータ等の文字コードであるログ情報を基礎として構築される([0042],[0044],[
図2])。再現動画構築条件を入力することで、例えばゲーム画面のうち特に閲覧を希望する場面を抽出した再現動画を構築させることができる([0076])。さらに、所定の期間のログ情報を除いた他のログ情報を抽出させる再現動画構築条件を設定することにより、プレイしたゲームの全体から、共有を希望しない一場面を除いた再現動画を構築させることもできる([0077])。
【先行技術文献】
【特許文献】
【0004】
【文献】特表2015-515284号公報
【文献】特開2017-6695号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1の技法によれば、プレイヤは自身のゲームプレイの続きを他のプレイヤにプレイさせたり、逆に、他プレイヤのゲームプレイの続きをプレイしたりすることができる。しかしながら、いずれのケースでも、1つのステートセーブデータから再開可能なポイントは1つ(ステートセーブを行った時点)に制限される。故に、様々なポイントから再開可能なステートセーブデータを他プレイヤとの間で共有するためには、プレイヤはその全てのポイントでステートセーブを行い、共有指示を行う必要がある。さらに共有条件を指定しようとすれば、プレイヤの手間はいっそう煩雑となる。
【0006】
特許文献2は、再現動画を構築する技法に過ぎず、これを閲覧するユーザが当該再現動画に表されるゲームプレイに関与することは想定されていない。
【0007】
本発明は、コンテンツ体験の共有を促進することを目的とする。
【課題を解決するための手段】
【0008】
本発明の一態様によれば、端末は、受信部と、実行部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、アプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータとを受信する。実行部は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。実行部は、ランダムアクセスポイントを選択するユーザ入力をトリガとしてアプリケーションを特定の時間データの示す時間に対応する実行状態まで遷移させる。
【0009】
本発明の別の態様によれば、端末は、生成部と、送信部とを含む。生成部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータを追加、変更または削除する要求を生成する。送信部は、要求を送信する。アプリケーション操作データおよびタグデータを配信された他の端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。他の端末は、ランダムアクセスポイントを選択するユーザ入力をトリガとしてアプリケーションを特定の時間データの示す時間に対応する実行状態まで遷移させる。
【0010】
本発明の別の態様によれば、サーバは、受信部と、管理部と、送信部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータを追加、変更または削除する要求を受信する。管理部は、要求に応じてタグデータを管理する。送信部は、タグデータを送信する。アプリケーション操作データおよびタグデータを配信された端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。端末は、ランダムアクセスポイントを選択するユーザ入力をトリガとしてアプリケーションを特定の時間データの示す時間に対応する実行状態まで遷移させる。
【0011】
本発明の別の態様によれば、端末は、受信部と、実行部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、アプリケーション操作データに関連付けられたコメントデータとを受信する。実行部は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。実行部は、アプリケーションの実行中に、コメントデータを含む表示データを生成する。
【0012】
本発明の別の態様によれば、端末は、生成部と、送信部とを含む。生成部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに関連付けられるコメントデータを追加、変更または削除する要求を生成する。送信部は、要求を送信する。アプリケーション操作データおよびコメントデータを配信された他の端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。他の端末は、アプリケーションの実行中に、コメントデータを含む表示データを生成する。
【0013】
本発明の別の態様によれば、サーバは、受信部と、管理部と、送信部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに関連付けられるコメントデータを追加、変更または削除する要求を受信する。管理部は、要求に応じて、コメントデータを管理する。送信部は、コメントデータを送信する。アプリケーション操作データおよびコメントデータを配信された端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。端末は、アプリケーションの実行中に、コメントデータを含む表示データを生成する。
【発明の効果】
【0014】
本発明は、コンテンツ体験の共有を促進することができる。
【図面の簡単な説明】
【0015】
【
図1】第1の実施形態に係るコンテンツ体験共有システムを例示するブロック図。
【
図2】
図1のメタデータサーバを例示するブロック図。
【
図3】
図1の操作データ利用端末を例示するブロック図。
【
図4】
図1の操作データ提供端末を例示するブロック図。
【
図5】
図2のメタデータサーバの動作を例示するフローチャート。
【
図6】
図3の操作データ利用端末のアプリケーション操作データおよびタグデータに関する動作を例示するフローチャート。
【
図7】
図4の操作データ提供端末のタグデータに関する動作を例示するフローチャート。
【
図8】
図1のコンテンツ体験共有システムにおいて共有されるアプリケーション操作データの構造を例示する図。
【
図9】
図3の操作データ利用端末に接続された表示装置による表示画面を例示する図。
【
図10】
図3の操作データ利用端末のアプリケーション操作データおよびコメントデータに関する動作を例示するフローチャート。
【発明を実施するための形態】
【0016】
以下、図面を参照しながら実施形態の説明を述べる。なお、以降、説明済みの要素と同一または類似の要素には同一または類似の符号を付し、重複する説明については基本的に省略する。例えば、複数の同一または類似の要素が存在する場合に、各要素を区別せずに説明するために共通の符号を用いることがあるし、各要素を区別して説明するために当該共通の符号に加えて枝番号を用いることもある。
【0017】
(第1の実施形態)
第1の実施形態に係るコンテンツ体験共有システムは、
図1に例示されるように、操作データ提供端末10と、操作データ利用端末20-1,20-2と、操作データサーバ30と、メタデータサーバ40とを含む。
図1の各装置は、ネットワーク経由で互いに接続しており、データを互いに送受信できる。なお、操作データ利用端末20の総数は2に限られず、1つであってもよいし、3以上であってもよい。また、
図1に示されるサーバ構成は例示に過ぎず、1つのサーバの機能が複数の装置によって分担されてもよいし、複数のサーバの機能が1つの装置に割り当てられてもよい。図示されないWebサーバもネットワーク接続されていてもよい。
【0018】
図1のコンテンツ体験共有システムでは、後述されるように、操作データ提供端末10がアプリケーション操作データを提供する。操作データサーバ30は、操作データ提供端末10によって提供されたアプリケーション操作データを、操作データ利用端末20からの配信要求に応じて配信する。そして、操作データ利用端末20は、受信したアプリケーション操作データを用いてアプリケーションを実行する。
【0019】
アプリケーションは、実行結果の少なくとも一部としてコンテンツを生成する。コンテンツは、例えば、動画像、静止画像、音声、テキストなどである。アプリケーションは、例えば、ビデオゲーム、アンケート、クイズ、お絵かきソフトなどであり得る。操作データ提供端末10と操作データ利用端末20とでは、同一のアプリケーションが実行されている。操作データ提供端末10は、ユーザのアプリケーション操作に応じてコンテンツを生成する。操作データ利用端末20は、受信したアプリケーション操作データを用いて操作データ提供端末10と同一のコンテンツを再現する。
【0020】
例えば、複数の操作データ利用端末20が、同一のアプリケーション操作データを同一のアプリケーションに大凡同じタイミング(同期していることが望ましいが、同期していることは必須でない)で適用すれば、当該操作データ利用端末20のユーザは生放送的なコンテンツ体験を共有することができる。
【0021】
さらに、
図1のコンテンツ体験共有システムでは、メタデータサーバ40が、操作データ利用端末20からの配信要求に応じて、アプリケーション操作データに関連付けられるメタデータを配信する。なお、以降の説明において、「配信要求」は、「取得要求」またはその他の「要求」として読み替えられてよい。メタデータは、後述されるように、アプリケーション操作データを用いたコンテンツ体験を促進するために利用可能なデータである。
【0022】
操作データ提供端末10は、前述のように、操作データサーバ30へアプリケーション操作データを提供する。ここで、アプリケーション操作データの提供とは、操作データサーバ30から操作データ利用端末20へのアプリケーション操作データの配信を可能とすることを意味する。具体的には、アプリケーション操作データの提供とは、操作データサーバ30へアプリケーション操作データを送信することであってもよいし、操作データサーバ30の内部または外部に蓄積されたアプリケーション操作データの共有を許可するための明示的または黙示的な指示を与えることを意味し得る。明示的な指示は、例えば共有設定要求を送信することであり得る。アプリケーション操作データの送信を行うタイミングは、操作データ提供端末10に対してユーザがアプリケーションを操作するのと同時並行(リアルタイム)であってもよいし、蓄積されたものを操作データ提供端末10でのアプリケーション終了後にまとめて送信しても良い。
【0023】
また、アプリケーション操作データは、操作データ提供端末10によって生成されてもよいし、当該操作データ提供端末10からの操作要求に応じて外部の装置(例えば、操作データサーバ30)によって生成されてもよい。
【0024】
アプリケーション操作データは、
図8に例示されるように、少なくとも、アプリケーションに対する操作入力データと、当該操作入力データをアプリケーションに適用する時間を示す時間データとのデータセットを含む。より具体的には、アプリケーション操作データは、アプリケーションの実行開始(初期状態)から、当該アプリケーションに適用される全ての操作入力データとそれを適用する時間を示す時間データとを含む。
【0025】
アプリケーションの種別次第で、アプリケーション操作データは、例えば、乱数シードなどの付加的なデータを含んでもよい。付加的なデータは、アプリケーションの実行結果の再現性を高めるのに役立つデータであればよい。アプリケーションの実行結果の再現性とは、例えば、ある時点にアプリケーション操作データを使用した場合の実行結果が、将来に当該アプリケーション操作データを使用した場合の実行結果とどのくらい同一であるか、或いは、あるアプリケーション実行装置がアプリケーション操作データを使用した場合の実行結果が、他のアプリケーション実行装置が当該アプリケーション操作データを使用した場合の実行結果とどのくらい同一であるか、によって評価することができる。
【0026】
操作データ利用端末20は、アプリケーション操作データの配信要求を操作データサーバ30へ送信したり、当該アプリケーション操作データに関連付けられるメタデータの配信要求をメタデータサーバ40へ送信したりする。そして、操作データ利用端末20は、アプリケーション操作データを用いてアプリケーションを実行することでコンテンツを再生し、メタデータを用いてこのコンテンツ体験を促進することができる。さらに、操作データ利用端末20は、メタデータの追加(投稿)/変更/削除要求をメタデータサーバ40へ送信してもよい。
【0027】
操作データサーバ30は、例えば操作データ提供端末10からの共有設定要求に応じて、当該共有設定要求に対応するアプリケーション操作データを共有可能な状態にする。それから、操作データサーバ30は、操作データ提供端末10または操作データ利用端末20からの配信要求に応じて、アプリケーション操作データを配信する。なお、操作データサーバ30は、少なくともアプリケーション操作データにアクセス可能であればよく、アプリケーション操作データは別のファイルサーバに保存されていてもよい。また、操作データサーバ30は、アプリケーション操作データを生成する機能を備えていてもよい。
【0028】
メタデータサーバ40は、操作データ提供端末10または操作データ利用端末20からのメタデータの追加/変更/削除要求に応じて、アプリケーション操作データに関連付けられるメタデータを管理する。また、メタデータサーバ40は、操作データ提供端末10または操作データ利用端末20からの配信要求に応じて、アプリケーション操作データに関連付けられるメタデータを配信する。なお、メタデータサーバ40は、少なくともメタデータにアクセス可能であればよく、メタデータは別のファイルサーバに保存されていてもよい。
【0029】
メタデータは、具体的には、タグデータ、期間データ、コメントデータなどを含むことができ、さらに、これらの追加/変更/削除に関する権限データを含むこともできる。
【0030】
タグデータは、アプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示す。ランダムアクセスポイントは、操作データ利用端末20に対するユーザ入力をトリガとしてアプリケーションをこの特定の時間データの示す時間に対応する実行状態まで遷移させることを許容するために設定される。
【0031】
期間データは、分岐可能期間を示す。分岐可能期間は、アプリケーション操作データの途中から分岐して操作データ利用端末20に対するユーザ入力に基づく別のアプリケーション操作データを(分岐)生成することが許容される期間を意味する。
【0032】
コメントデータは、操作データ利用端末20がアプリケーション操作データを用いてアプリケーションを実行している時に表示可能なテキストデータである。コメントデータは、コンテンツに重ねて表示されてもよいし、コンテンツの表示領域とは別の領域に表示されてもよい。
【0033】
権限データは、例えばタグデータ、期間データまたはコメントデータの追加/変更/削除に関して操作データ利用端末20またはそのユーザに与えられた権限を示す。
【0034】
以下、操作データ利用端末20、操作データ提供端末10およびメタデータサーバ40の詳細について順に説明する。
操作データ利用端末20は、アプリケーション操作データに含まれる操作入力データを、当該操作入力データに対応する時間データの示す時間にアプリケーションに適用する。全ての操作データ利用端末20が同様に動作するので、ユーザは、同一の実行結果、すなわち、同一のコンテンツ(例えば、ビデオゲームのプレイ映像)を楽しむことができる。
【0035】
操作データ利用端末20は、典型的には、テレビ受像機(インターネットテレビを含む)、PC(Personal Computer)、モバイル端末(例えば、タブレット、スマートフォン、ラップトップ、フィーチャーフォン、ポータブルゲーム機、デジタルミュージックプレイヤー、電子書籍リーダなど)、VR(Virtual Reality)端末、AR(Augmented Reality)端末であるが、これらに限られない。
【0036】
操作データ利用端末20は、アプリケーションの実行およびその制御、当該操作データ利用端末20に接続された出力装置に対する出力制御、種々の要求(データ)の生成および通信制御などを行うプロセッサと、かかる処理を実現するために当該プロセッサによって実行されるプログラムおよび当該プロセッサによって使用されるデータなどを一時的に格納するメモリとを含んでいる。
【0037】
操作データ利用端末20は、さらに、ネットワークに接続するための通信装置と、コンテンツを出力するための出力装置と、ユーザ入力を受け付けるための入力装置と、プログラムまたはデータを保存する補助記憶装置とを利用可能である。これらの通信装置、出力装置、入力装置および補助記憶装置は、操作データ利用端末20に内蔵されていてもよいし、操作データ利用端末20に外付けされてもよい。
【0038】
通信装置は、ネットワーク経由で、操作データサーバ30およびメタデータサーバ40と通信をする。例えば、通信装置は、操作データサーバ30へアプリケーション操作データの配信要求を送信したり、メタデータサーバ40へメタデータの配信要求または追加/変更/削除要求を送信したり、操作データサーバ30からアプリケーション操作データを受信したり、メタデータサーバ40からメタデータを受信したりする。
【0039】
出力装置は、動画像、静止画像、テキストなどを表示するための表示装置および/または音声、楽曲などを出力するためのスピーカを含み得る。表示装置は、例えば、液晶ディスプレイ、有機EL(electroluminescence)ディスプレイ、CRT(Cathode Ray Tube)ディスプレイなどである。表示装置は、コンテンツを含む表示データを表示する。なお、表示装置は、タッチスクリーンのように入力装置の機能を備えていてもよい。
【0040】
入力装置は、例えば、キーボード、マウス、テンキーなどであってもよいし、タッチスクリーンのように表示装置の機能を備えていてもよい。ユーザ入力は、典型的には、タップ、クリック、特定のキーの押下などであり得る。このほか、ユーザ入力は、例えば、マイクロフォンによって捉えられる音声、生体センサによって検出される生体データ(例えば体温、表情など)、GPS(Global Positioning System)または基地局情報によって識別される位置データ、加速度センサによって検出される加速度データに基づいて推定されるユーザのアクション(例えば、操作データ利用端末20を振り回した)などを含むこともできる。
【0041】
補助記憶装置は、例えば、アプリケーションに関するプログラムまたはデータを格納する。補助記憶装置は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)などの不揮発性記憶媒体であることが好ましい。補助記憶装置は、操作データ利用端末20にネットワーク経由で接続されたファイルサーバであり得る。
【0042】
以下、
図3を用いて、操作データ利用端末20の詳細を説明する。操作データ利用端末20は、受信部201と、実行部202と、出力部203と、入力部204と、実行制御部205と、要求生成部206と、送信部207とを含む。
【0043】
受信部201は、ネットワーク経由で、操作データサーバ30からアプリケーション操作データを受信する。受信部201は、アプリケーション操作データを実行部202へ送る。また、受信部201は、ネットワーク経由で、メタデータサーバ40からメタデータを受信する。この場合にも、受信部201は、メタデータを実行制御部205へ送る。受信部201は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【0044】
前述のように、アプリケーション操作データは、少なくとも、アプリケーションに対する操作入力データと当該操作入力データをアプリケーションに適用する時間を示す時間データとのデータセットを含み、さらに乱数シードなどの付加的なデータを含み得る。
【0045】
ここで、時間データは、アプリケーション操作データを例えば単位時間毎に生成する場合には、所定のタイミング(例えばアプリケーションの実行開始)を基準とした経過時間をこの単位時間で量子化した値であり得る。具体的には、コンテンツが動画像を含む場合には、フレーム間隔を単位時間とみなすことができる。この例では、時間データは、対応する操作入力データが適用されるフレーム数を示していてもよい。
【0046】
実行部202は、アプリケーションを実行する。実行部202は、実行制御部205からアプリケーション操作データを受け取り、当該アプリケーション操作データに含まれる操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションに適用する。アプリケーションは、適用された操作入力データに応じた実行結果を生成する。実行部202は、実行結果に含まれるコンテンツ(例えば動画像)を出力部203へ送る。実行部202は、前述のプロセッサおよびメモリであり得る。
【0047】
実行部202は、アプリケーションの現在の実行状態に対応する時間の時間軸上での位置を可視化するシークバーを含む表示データを生成し、出力部203に送ってもよい。また、実行部202は、タグデータの示すランダムアクセスポイントを可視化するGUI(Graphical User Interface)部品を含む表示データを生成し、出力部203に送ってもよい。さらに、実行部202は、アプリケーションの実行中に、アプリケーション操作データに関連付けられるコメントデータを含む表示データを生成し、出力部203に送ってもよい。
【0048】
出力部203は、実行部202からコンテンツ(表示データおよび/または音声データ)を受け取り、当該コンテンツを出力する。例えば、出力部203は、動画像、静止画像またはテキストを表示したり、音声または楽曲を出力したりする。出力部203は、前述の出力装置であってもよいし、当該出力装置とのインターフェースであってもよい。
【0049】
入力部204は、ユーザ入力を受け取る。入力部204は、ユーザ入力を実行制御部205または要求生成部206へ送る。入力部204は、前述の入力装置であってもよいし、当該入力装置とのインターフェースであってもよい。
【0050】
具体的には、ユーザ入力は、アプリケーションの実行制御(アプリケーション操作データの適用制御)に関するユーザ入力、アプリケーション操作データのメタデータの追加/変更/削除に関するユーザ入力、アプリケーション操作データまたはそのメタデータの配信に関するユーザ入力、アプリケーションの(能動的な)操作に関するユーザ入力などを含み得る。
【0051】
アプリケーションの実行制御に関するユーザ入力は、ランダムアクセスポイントを選択するためのユーザ入力、アプリケーションの実行速度を変更するためのユーザ入力などを含み得る。入力部204は、アプリケーションの実行状態に関するユーザ入力を実行制御部205へ送る。
【0052】
アプリケーション操作データのメタデータの追加/変更/削除に関するユーザ入力は、タグデータの示すランダムアクセスポイントを追加、変更または削除するためのユーザ入力、タグデータの示すランダムアクセスポイントに付随するテキストデータを追加、変更または削除するためのユーザ入力、コメントデータを追加(投稿)、変更または削除するためのユーザ入力などを含み得る。入力部204は、アプリケーション操作データのメタデータの追加/変更/削除に関するユーザ入力を要求生成部206へ送る。
【0053】
アプリケーション操作データまたはそのメタデータの配信に関するユーザ入力は、アプリケーション操作データの配信を求めるユーザ入力、メタデータの配信を求めるユーザ入力などであり得る。
【0054】
アプリケーションの操作に関するユーザ入力は、操作データ利用端末20のユーザがアプリケーションの実行状態を引き継いだまま当該アプリケーションを能動的に操作するためのユーザ入力であり得る。例えば、アプリケーションがビデオゲームであるならば、ユーザ入力は、ゲーム中のオブジェクト(例えば、キャラクタ、アイテム、背景など)の選択、移動、アクション、状態変化などの操作を意味するものであり得る。そして、操作データ利用端末20のユーザは、他のユーザ(アプリケーション操作データの提供者)によるゲームの進行の途中から分岐して(その時点のゲームの進行状態を引き継いで)、能動的にゲームをプレイすることができる。
【0055】
かかるユーザ入力があった場合に、当該ユーザ入力は、以降のアプリケーションの操作のために限って使用(消費)されてもよいが、さらに他のユーザとコンテンツ体験を共有するために、かかるユーザ入力があった時間から分岐して別のアプリケーション操作データを生成することもできる。この場合には、分岐前のアプリケーション操作データに上乗せして分岐後のアプリケーション操作データが蓄積される。入力部204は、アプリケーション操作データの生成主体が操作データ利用端末20である場合またはアプリケーション操作データの分岐生成を行わない場合にはアプリケーションの操作のための指示を実行制御部205へ送り、そうでない場合には要求生成部206へと送る。
【0056】
アプリケーションの分岐実行またはアプリケーション操作データの分岐生成は、一律に禁止または条件付きで禁止されてもよい。例えば、アプリケーション操作データの提供者は、自己のゲームプレイ映像を他のユーザが視聴することは構わないが、自己のゲームの進行状態に他のユーザがただ乗りするのは許容できないと考えるかもしれない。このような場合には、操作データ提供端末10は、アプリケーションの分岐実行またはアプリケーション操作データの分岐生成を一律に禁止してもよい。アプリケーション操作データの分岐が一律に禁止または許容されることは、例えばフラグデータとして操作データ利用端末20に伝達され得る。
【0057】
また、アプリケーション操作データの提供者は、ゲームの進行状態のうち限られた部分であれば他のユーザに利用させてもよいと考えるかもしれない。このような場合には、操作データ提供端末10は、分岐可能期間を設定してもよい。分岐可能期間は、例えば、当該分岐可能期間を示す期間データとして操作データ利用端末20に伝達され得る。
【0058】
実行制御部205は、入力部204からアプリケーションの実行制御に関する指示に相当するユーザ入力を受け取る。実行制御部205は、ユーザ入力に基づいて、実行部202によるアプリケーションの実行状態を制御する。実行制御部205は、前述のプロセッサおよびメモリであり得る。
【0059】
ランダムアクセスポイントを選択するための指示に相当するユーザ入力を受けると、実行制御部205は、当該ランダムアクセスポイントの設定された特定の時間データの示す時間に対応する実行状態までアプリケーションを遷移させるように実行部202に指示する。
【0060】
例えば、現在の時間(t)よりも特定の時間データの示す時間(tRAP)が後であるならば、実行制御部205は、tからtRAPまでに適用される操作入力データをアプリケーションに通常(現実の時間の流れ)よりも高速に(例えば設定可能な最大の速度で)適用するように実行部202に指示すればよい。他方、現在の時間(t)よりも特定の時間データの示す時間(tRAP)が前であるならば、実行制御部205は、アプリケーションを初期状態にリセットし、0からtRAPまでに適用される操作入力データをアプリケーションに通常(現実の時間の流れ)よりも高速に適用するように実行部202に指示すればよい。なお、現在の時間(t)が特定の時間データの示す時間(tRAP)と同一であるならば、実行制御部205は何もしなくてよい。
【0061】
実行速度を変更するための指示に相当するユーザ入力を受けると、実行制御部205は、当該ユーザ入力に応じた速度でアプリケーションにアプリケーション操作データを適用するように実行部202に指示する。実行速度を可変とすれば、ユーザは、コンテンツのうち興味のない部分を早送りしたり、注視したい部分をスロー再生したりすることができる。
【0062】
なお、前述のように、実行制御部205は、入力部204からアプリケーションの操作のための指示に相当するユーザ入力を受け取ることもある。実行制御部205は、ユーザ入力に基づいて、アプリケーションに対する操作入力データを生成し、実行部202に与える。なお、操作データ利用端末20が、アプリケーション操作データを分岐生成する主体である場合には、操作データ利用端末20は生成した操作入力データに時間データを対応付けてアプリケーション操作データを生成し、図示されないストレージに蓄積してもよい。
【0063】
要求生成部206は、入力部204からアプリケーション操作データのメタデータの追加(投稿)/変更/削除に関するユーザ入力を受け取る。要求生成部206は、ユーザ入力に応じてメタデータの追加/変更/削除要求を生成し、送信部207へ送る。要求生成部206は、前述のプロセッサおよびメモリであり得る。
【0064】
なお、メタデータの追加/変更/削除に関して操作データ利用端末20に(操作データ提供端末10によって)権限が与えられていることがある。この場合には、操作データ利用端末20に与えられた権限を示す権限データを受信部201が受信し得る。例えば、ランダムアクセスポイントの追加、変更または削除は禁止されるが、当該ランダムアクセスポイントに付随するテキストデータの追加、変更または削除は許容されるかもしれない。
【0065】
要求生成部206は、メタデータの追加/変更/削除に関するユーザ入力が権限を越えているならば、かかるユーザ入力に応じた要求の生成を拒否してもよい。このように要求生成部206が権限チェックを行えば、不要な要求を送信せずに済む。
【0066】
また、要求生成部206は、入力部204からアプリケーション操作データまたはそのメタデータの配信に関するユーザ入力を受け取る。要求生成部206は、ユーザ入力に応じてアプリケーション操作データまたはメタデータの配信要求を生成し、送信部207へ送る。
【0067】
送信部207は、要求生成部206から種々の要求を受け取り、ネットワーク経由で外部へ送信する。例えば、送信部207は、メタデータの配信要求およびメタデータの追加/変更/削除要求をメタデータサーバ40へ送信する。また、送信部207は、アプリケーション操作データの配信要求を操作データサーバ30へ送信する。送信部207は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【0068】
以下、
図6を用いて、アプリ-ション操作データおよびタグデータに関する操作データ利用端末20の動作例を説明する。
図6の動作の開始トリガは、送信部207がアプリケーション操作データまたはタグデータの配信要求を送信することであってもよいが、これに限られない。
受信部201は、ネットワーク経由で、操作データサーバ30からアプリケーション操作データを受信する(ステップS501)。受信部201は、ネットワーク経由で、メタデータサーバ40からタグデータを受信する(ステップS502)。実行部202は、時間(例えばフレーム数)を表す変数tを初期化する(ステップS503)。なお、ステップS501~ステップS503の実行順は
図6とは異なってもよい。ステップS501~ステップS503の後に、処理はステップS504へと進む。
【0069】
ステップS504において、実行部202は、ステップS501において受信されたアプリケーション操作データに含まれる時間データを参照し、現在の時間(t)を示す時間データに対応する操作入力データをアプリケーションに適用する。そして、出力部203は、実行結果に含まれるコンテンツを出力する。
【0070】
ユーザは、アプリケーションの実行中の任意の時点で、ステップS502において受信されたタグデータの示すランダムアクセスポイントを選択可能である。例えば、アプリケーションの実行中に、操作データ利用端末20に内蔵または外付けされた表示装置には、
図9に示されるような画面が表示される。
【0071】
図9の表示画面は、アプリケーションの実行結果に含まれるコンテンツの表示領域701に加えて、アプリケーションの現在の実行状態に対応する時間の時間軸上での位置をGUI部品(スライダ)703によって可視化するシークバー702と、タグデータの示すランダムアクセスポイントを可視化するGUI部品(ボタン)705-1~705~3とを含む。
【0072】
表示領域701には、コンテンツに加えて、アプリケーション操作データに関連付けられるコメントデータも表示されてよい。また、表示領域701の周辺(例えば、上部)には、アプリケーション操作データに関連付けられるテキストデータ(タグ)がさらに表示されてもよい。タグは、主に、アプリケーションの実行結果に含まれるコンテンツの分類または関連付けのために用いられるが、コンテンツの説明のため、ジョークのため、または、同じコンテンツを体験するユーザ同士のコミュニケーションのためなどに用いられることも想定される。
【0073】
GUI部品705-1~705-3は、それぞれ、対応するランダムアクセスポイントに付随するテキストデータ(索引タグ)として、「0:30 ステージ1」「5:00 ステージ2」「8:00 ステージ3」を表示している。この索引タグは、典型的には、当該GUI部品を選択した場合にアプリケーションがどのような実行状態(コンテンツのシーン)に遷移(ジャンプ)可能であるかをユーザに把握させるために用いられるが、ジョークのためまたは同じコンテンツを体験するユーザ同士のコミュニケーションのために用いられることもある。
【0074】
シークバー702は、ランダムアクセスポイントが設定された特定の時間データの示す時間の時間軸上での位置を可視化するGUI部品(アンカーアイコン)704-1~704-3を含む。ユーザ入力がなければ、GUI部品703は、時間の経過に伴ってシークバー上を左端から右端へ移動する。他方、GUI部品704-1~704~3は、時間の経過に関わらず固定される。なお、各GUI部品の外観は、
図9に例示されたものに限定されない。各GUI部品の外観は、固定であってもよいし、編集可能であってもよい。
【0075】
図9の例では、GUI部品704-1~704-3またはGUI部品705-1~705-3のいずれかを選択するユーザ入力を受けると、アプリケーションは、選択されたGUI部品の示すランダムアクセスポイントの設定された時間に対応する実行状態へ遷移することになる。
【0076】
時間=tの間に、ランダムアクセスポイントを選択するためのユーザ入力があれば処理はステップS506へと進み、そうでなければ処理はステップS507へと進む(ステップS505)。
【0077】
ステップS506では、実行制御部205は、選択されたランダムアクセスポイントの設定された特定の時間データの示す時間(tRAP)に対応する実行状態までアプリケーションを遷移させるように実行部202に指示し、処理はステップS507へと進む(ステップS506)。
【0078】
ステップS507において、実行部202は変数tを1インクリメントし、処理はステップS504へと戻る。
【0079】
以下、
図10を用いて、アプリ-ション操作データおよびコメントデータに関する操作データ利用端末20の動作例を説明する。
図10の動作の開始トリガは、送信部207がアプリケーション操作データまたはコメントデータの配信要求を送信することであってもよいが、これに限られない。また、
図6および
図10の動作は両立し得る。
【0080】
受信部201は、ネットワーク経由で、操作データサーバ30からアプリケーション操作データを受信する(ステップS801)。受信部201は、ネットワーク経由で、メタデータサーバ40からコメントデータを受信する(ステップS802)。実行部202は、時間(例えばフレーム数)を表す変数tを初期化する(ステップS803)。なお、ステップS801~ステップS803の実行順は
図10とは異なってもよい。ステップS801~ステップS803の後に、処理はステップS804へと進む。
【0081】
ステップS804において、実行部202は、ステップS801において受信されたアプリケーション操作データに含まれる時間データを参照し、現在の時間(t)を示す時間データに対応する操作入力データをアプリケーションに適用する。また、実行部202は、ステップS802において受信されたコメントデータのうち、現在の時間(t)に表示すべきものを含む表示データを生成する(ステップS805)。例えば、コメントデータは、コンテンツの表示領域に当該コンテンツに重ねて表示されてもよいし、コメント専用の領域に表示されてもよい。そして、出力部203は、アプリケーションの実行結果に含まれるコンテンツと、コメントデータを含む表示データとを出力する。
【0082】
ステップS804およびステップS805の後に、実行部202は変数tを1インクリメントし、処理はステップS804へと戻る。
【0083】
操作データ提供端末10は、操作データ利用端末20の例として列挙した種々の装置のいずれかであってもよい。すなわち、操作データ提供端末10は、操作データ利用端末20と同様に、プロセッサ、メモリ、通信装置、出力装置、入力装置、補助記憶装置などを含み得る。
【0084】
以下、
図4を用いて、操作データ提供端末10の詳細を説明する。操作データ提供端末10は、受信部301と、実行部302と、出力部303と、入力部304と、実行制御部305と、要求生成部306と、送信部307とを含む。
【0085】
受信部301は、ネットワーク経由で、操作データサーバ30からアプリケーション操作データを受信する。受信部301は、アプリケーション操作データを実行制御部305へ送る。操作データ提供端末10のユーザが自己の提供したアプリケーション操作データに関連付けられるタグデータ、期間データなどのメタデータの追加/変更/削除を行う場合に、当該アプリケーション操作データを用いてアプリケーションを実行することで、コンテンツを視聴しながら作業を容易に行えるようになる。
【0086】
なお、アプリケーションの実行態様によっては、受信部301を省略する場合もある。具体的には、操作データ提供端末10のローカルホスト内で行ったアプリケーション操作に伴う操作入力データ(または、これに基づいて生成したアプリケーション操作データ)を補助記憶装置に記録しておき、アプリケーション終了後にユーザの指示で各種データを操作データサーバ30またはメタデータサーバ40へ一括送信する場合には、受信部301は省略され得る。或いは、操作データ提供端末10が、アプリケーションに対する操作要求またはローカルに生成したアプリケーション操作データを送信することに専念する(帯域やCPUなどのリソースをそこに集中させる)ことで、操作データ利用端末20と可能な限り同期的な状態を実現したい場合にも、受信部301は省略され得る。
【0087】
また、受信部301は、ネットワーク経由で、メタデータサーバ40からメタデータを受信する。この場合にも、受信部301は、メタデータを実行制御部305へ送る。操作データ提供端末10のユーザが自己の提供したアプリケーション操作データに関連付けられるタグデータ、期間データなどのメタデータの追加/変更/削除を行う場合に、現在登録されているメタデータを表示することで、作業を容易に行えるようになる。
【0088】
受信部301は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【0089】
実行部302は、アプリケーションを実行する。実行部302は、実行制御部305からアプリケーション操作データを受け取り、当該アプリケーション操作データに含まれる操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションに適用する。アプリケーションは、適用された操作入力データに応じた実行結果を生成する。実行部302は、実行結果に含まれるコンテンツ(例えば動画像)を出力部303へ送る。実行部302は、前述のプロセッサおよびメモリであり得る。
【0090】
実行部302は、アプリケーションの現在の実行状態に対応する時間の時間軸上での位置を可視化するシークバーを含む表示データを生成し、出力部303に送ってもよい。かかるシークバーを用いてランダムアクセスポイントまたは分岐可能期間を追加/変更/削除するユーザ入力を行うことで、操作データ提供端末10のユーザはタグデータまたは期間データを容易に追加/変更/削除することができる。
【0091】
出力部303は、実行部302からコンテンツ(表示データおよび/または音声データ)を受け取り、当該コンテンツを出力する。例えば、出力部303は、動画像、静止画像またはテキストを表示したり、音声または楽曲を出力したりする。出力部303は、前述の出力装置であってもよいし、当該出力装置とのインターフェースであってもよい。
【0092】
入力部304は、ユーザ入力を受け取る。入力部304は、ユーザ入力を実行制御部305または要求生成部306へ送る。入力部304は、前述の入力装置であってもよいし、当該入力装置とのインターフェースであってもよい。
【0093】
具体的には、ユーザ入力は、アプリケーションの実行制御に関するユーザ入力、アプリケーション操作データのメタデータの追加/変更/削除に関するユーザ入力、アプリケーション操作データの共有設定/配信またはそのメタデータの配信に関するユーザ入力などを含み得る。
【0094】
アプリケーションの実行制御に関するユーザ入力は、アプリケーションの実行速度を変更するためのユーザ入力、動画像コンテンツについて指定された時点の付近で表示されるフレーム画像を一覧化するためのユーザ入力などを含み得る。入力部304は、アプリケーションの実行状態に関するユーザ入力を実行制御部305へ送る。
【0095】
アプリケーション操作データのメタデータの追加/変更/削除に関するユーザ入力は、タグデータの示すランダムアクセスポイントを追加、変更または削除するためのユーザ入力、タグデータの示すランダムアクセスポイントに付随するテキストデータを追加、変更または削除するためのユーザ入力、分岐可能期間を追加、変更または削除するためのユーザ入力などを含み得る。入力部304は、アプリケーション操作データのメタデータの追加/変更/削除に関するユーザ入力を要求生成部306へ送る。
【0096】
アプリケーション操作データの共有設定/配信またはメタデータの配信に関するユーザ入力は、アプリケーション操作データの共有設定/配信またはメタデータの配信を求めるユーザ入力であり得る。
【0097】
実行制御部305は、入力部304からアプリケーションの実行制御に関する指示に相当するユーザ入力を受け取る。実行制御部305は、ユーザ入力に基づいて、実行部302によるアプリケーションの実行状態を制御する。実行制御部305は、前述のプロセッサおよびメモリであり得る。
【0098】
実行速度を変更するための指示に相当するユーザ入力を受けると、実行制御部305は、当該ユーザ入力に応じた速度でアプリケーションにアプリケーション操作データを適用するように実行部302に指示する。実行速度を可変とすれば、ユーザは、ランダムアクセスポイントまたは分岐可能期間の始点もしくは終点を設定しようとする時点の付近をスロー再生したり、それ以外の部分を早送りしたりすることができる。
【0099】
動画像コンテンツについて指定された時点の付近で表示されるフレーム画像を一覧化するためのユーザ入力を受けると、実行制御部305は例えば現在表示されているフレーム画像を中心に前後の所定時間内に表示されるフレーム画像を時系列順に並べて一覧化した表示データを生成するように実行部302を制御する。これにより、操作データ提供端末10のユーザは、付近のフレーム画像を俯瞰しながら、ランダムアクセスポイントまたは分岐可能期間の始点もしくは終点を設定することができる。
【0100】
要求生成部306は、入力部304からアプリケーション操作データのメタデータの追加/変更/削除に関するユーザ入力を受け取る。要求生成部306は、ユーザ入力に応じてメタデータの追加/変更/削除要求を生成し、送信部307へ送る。要求生成部306は、前述のプロセッサおよびメモリであり得る。
【0101】
なお、操作データ利用端末20(またはそのユーザ)が利用可能なメタデータは、操作データ利用端末20(またはそのユーザ)間で異なるように設定可能としてもよい。例えば、操作データ利用端末20-1(またはそのユーザ)が選択可能なランダムアクセスポイントまたは分岐可能期間は、操作データ利用端末20-2(またはそのユーザ)が選択可能なものと異なっていてもよい。
【0102】
また、要求生成部306は、入力部304からアプリケーション操作データの共有設定/配信またはメタデータの配信に関するユーザ入力を受け取る。要求生成部306は、ユーザ入力に応じてアプリケーション操作データの共有設定/配信要求またはメタデータの配信要求を生成し、送信部307へ送る。
【0103】
送信部307は、要求生成部306から種々の要求を受け取り、ネットワーク経由で外部へ送信する。例えば、送信部307は、アプリケーション操作データの共有設定/配信要求を操作データサーバ30へ送信する。また、送信部307は、メタデータの配信要求およびメタデータの追加/変更/削除要求をメタデータサーバ40へ送信する。送信部307は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【0104】
以下、
図7を用いて、タグデータの追加に関する操作データ提供端末10の動作例を説明する。なお、例えば期間データなどの他のメタデータの追加、ならびにメタデータの変更および削除に関しても類似の動作で実現可能である。
【0105】
入力部304は、ランダムアクセスポイントを指定するユーザ入力を受け取る(ステップS601)。かかるユーザ入力は、ランダムアクセスポイントを設定する時間を数値で指定する入力であってもよいし、ランダムアクセスポイントを設定する時間に対応するシークバー上の位置を選択する入力であってもよいし、前述のユーザ入力により一覧化されたフレーム画像からランダムアクセスポイントを設定する時間に対応するフレーム画像を選択する入力であってもよい。
【0106】
要求生成部306は、ステップS601において受理されたユーザ入力に基づいてタグデータの追加要求を生成する(ステップS602)。送信部307は、ステップS602において生成された追加要求をメタデータサーバ40へ送信する(ステップS603)。
【0107】
メタデータサーバ40は、サーバコンピュータであって、メタデータの管理(追加/変更/削除/配信)および通信制御などを行うプロセッサと、かかる処理を実現するために当該プロセッサによって実行されるプログラムおよび当該プロセッサによって使用されるデータなどを一時的に格納するメモリとを含んでいる。
【0108】
メタデータサーバ40は、さらに、ネットワークに接続するための通信装置と、大容量のデータを蓄積するための補助記憶装置を利用可能である。通信装置および補助記憶装置は、メタデータサーバ40に内蔵されていてもよいし、メタデータサーバ40に外付けされてもよい。
【0109】
通信装置は、ネットワーク経由で、操作データ提供端末10または操作データ利用端末20と通信をする。例えば、通信装置は、操作データ提供端末10または操作データ利用端末20へメタデータを配信したり、操作データ提供端末10または操作データ利用端末20からメタデータの追加/変更/削除要求またはメタデータの配信要求を受信したりする。
【0110】
補助記憶装置は、例えば、メタデータサーバ40によって管理されているメタデータを蓄積する。補助記憶装置は、例えば、HDD、SSDなどの不揮発性記憶媒体であることが好ましい。補助記憶装置は、メタデータサーバ40にネットワーク経由で接続されたファイルサーバであり得る。
【0111】
以下、
図2を用いて、メタデータサーバ40の詳細を説明する。メタデータサーバ40は、受信部101と、メタデータ管理部102と、記憶部103と、送信部104とを含む。
【0112】
受信部101は、ネットワーク経由で、操作データ提供端末10または操作データ利用端末20からメタデータの追加/変更/削除要求またはメタデータの配信要求を受信する。受信部201は、メタデータの追加/変更/削除要求またはメタデータの配信要求をメタデータ管理部102へ送る。受信部101は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【0113】
メタデータ管理部102は、受信部101から受け取った要求に応じて、メタデータの読み書きを記憶部103に対して行う。メタデータ管理部102は、前述のプロセッサおよびメモリであり得る。
【0114】
メタデータ管理部102は、受信部101からメタデータの追加要求を受け取った場合には、当該追加要求に基づいてアプリケーション操作データに関連付けられるメタデータを追加して記憶部103に保存する。メタデータの追加要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子と、追加を要求するメタデータとを含み得る。
【0115】
メタデータ管理部102は、受信部101からメタデータの変更要求を受け取った場合には、当該変更要求に基づいてアプリケーション操作データに関連付けられるメタデータを変更して記憶部103に保存する。メタデータの変更要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子と、変更を要求するメタデータの識別子と、変更後のメタデータとを含み得る。
【0116】
メタデータ管理部102は、受信部101からメタデータの削除要求を受け取った場合には、当該削除要求に基づいてアプリケーション操作データに関連付けられるメタデータを記憶部103から削除する。メタデータの削除要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子と、削除を要求するメタデータの識別子とを含み得る。
【0117】
なお、メタデータ管理部102は、メタデータの追加/変更/削除要求を実行する前に、当該要求の権限チェックを行ってもよい。具体的には、メタデータ管理部102は、要求に含まれる要求元ユーザの識別子に関する権限データを記憶部103から読み出し、当該要求が権限を越えているならばこれを拒否してもよい。
【0118】
メタデータ管理部102は、受信部101からメタデータの配信要求を受け取った場合には、当該配信要求に基づいてアプリケーション操作データに関連付けられるメタデータを記憶部103から読み出して送信部104へ送る。メタデータの配信要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子とを含み得る。
【0119】
記憶部103は、メタデータ管理部102によって書き込まれた(追加または変更された)メタデータを格納する。記憶部103は、前述の補助記憶装置であってもよいし、当該補助記憶装置とのインターフェースであってもよい。
【0120】
送信部104は、メタデータ管理部102からメタデータを受け取る。送信部104は、ネットワーク経由で、メタデータを操作データ提供端末10または操作データ利用端末20へ送信する。送信部104は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【0121】
以下、
図5を用いて、メタデータサーバ40の動作例を説明する。
受信部101は、メタデータの追加/変更/削除要求およびメタデータの配信要求を待ち受ける。受信部101がメタデータの追加/変更/削除要求を受信すると処理はステップS402に進む(ステップS401)。他方、受信部101がメタデータの追加/変更/削除要求を受信すると処理はステップS404に進む(ステップS403)。
【0122】
ステップS402では、メタデータ管理部102は、受信したメタデータの追加/変更/削除要求を実行する。具体的には、メタデータ管理部102は、新規なメタデータを記憶部103に保存したり、記憶部103に保存されているメタデータを変更したり、記憶部103に保存されているメタデータを削除したりする。
【0123】
ステップS404では、メタデータ管理部102は、配信要求の対象となるアプリケーション操作データ(の識別子)に関連付けられるメタデータを記憶部103から読み出す。そして、メタデータ管理部102は、ステップS404において読み出したメタデータを配信要求の送信元である操作データ利用端末20へ送信する(ステップS405)。
【0124】
以上説明したように、第1の実施形態に係るコンテンツ体験共有システムにおいて、操作データサーバは、アプリケーション操作データを操作データ利用端末へ配信する。操作データ利用端末は、それぞれ、アプリケーション操作データに含まれる操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションに適用することで、このアプリケーション実行結果に含まれるコンテンツ体験をユーザに提供する。さらに、このコンテンツ体験共有システムにおいて、メタデータサーバは、メタデータを操作データ利用端末へ配信する。従って、このコンテンツ体験共有システムによれば、アプリケーション操作データを用いたコンテンツ体験の共有を促進することができる。
【0125】
具体的には、メタデータは、ランダムアクセスポイントを示すタグデータを含み得る。この場合には、操作データ利用端末のユーザは、コンテンツを最初から全て視聴しなくても、自らの希望する場面に直ちにジャンプできる。アプリケーション操作データの提供者または利用者が、コンテンツの見せ場を設定できるので、コンテンツ体験の共有を促進することができる。
【0126】
また、メタデータは、アプリケーションの実行中に表示可能なテキストデータであるコメントデータを含み得る。この場合には、操作データ利用端末のユーザは、コメントデータを書き込むことで他のユーザやアプリケーション操作データの提供者へコンテンツへの感想または意見を知らせたり、表示されたコメントデータを閲覧することで他のユーザのコンテンツへの感想または意見やアプリケーション操作データの提供者からの注釈を楽しんだりすることができる。
【0127】
上述の実施形態は、本発明の概念の理解を助けるための具体例を示しているに過ぎず、本発明の範囲を限定することを意図されていない。実施形態は、本発明の要旨を逸脱しない範囲で、様々な構成要素の付加、削除または転換をすることができる。
【0128】
上記各実施形態において説明された種々の機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。
【0129】
上記各実施形態の処理の少なくとも一部は、汎用のコンピュータを基本ハードウェアとして用いることでも実現可能である。上記処理を実現するプログラムは、コンピュータで読み取り可能な記録媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記録媒体に記憶される。記録媒体としては、磁気ディスク、光ディスク(CD-ROM、CD-R、DVD等)、光磁気ディスク(MO等)、半導体メモリなどである。記録媒体は、プログラムを記憶でき、かつ、コンピュータが読み取り可能であれば、何れであってもよい。また、上記処理を実現するプログラムを、インターネットなどのネットワークに接続されたコンピュータ(サーバ)上に格納し、ネットワーク経由でコンピュータ(クライアント)にダウンロードさせてもよい。
【符号の説明】
【0130】
10・・・操作データ提供端末
20・・・操作データ利用端末
30・・・操作データサーバ
40・・・メタデータサーバ
101,201,301・・・受信部
102・・・メタデータ管理部
103・・・記憶部
104,207,307・・・送信部
202,302・・・実行部
203,303・・・出力部
204,304・・・入力部
205,305・・・実行制御部
206,306・・・要求生成部
701・・・表示領域
702・・・シークバー
703,704,705・・・GUI部品