(57)【要約】【課題】コンテンツ体験の共有を促進する。【解決手段】本発明の一態様によれば、端末は、受信部と、実行部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、アプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータとを受信する。実行部は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。実行部は、ランダムアクセスポイントを選択するユーザ入力をトリガとしてアプリケーションを特定の時間データの示す時間に対応する実行状態まで遷移させる。【選択図】      図３
2018200672.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションに対する操作入力データと前記操作入力データを前記アプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、前記アプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータとを受信する受信部と、
前記操作入力データを当該操作入力データに対応する時間データの示す時間に前記アプリケーションへ適用する実行部と
を具備し、
前記実行部は、前記ランダムアクセスポイントを選択するユーザ入力をトリガとして前記アプリケーションを前記特定の時間データの示す時間に対応する実行状態まで遷移させる、
端末。
【請求項２】
前記実行部は、前記アプリケーション操作データの現在の実行状態に対応する時間の時間軸上での位置を可視化するシークバーを含む表示データを生成し、
前記シークバーは、前記特定の時間データの示す時間の時間軸上での位置を可視化するＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）部品を含む、
請求項１に記載の端末。
【請求項３】
前記受信部は、前記タグデータの追加、変更または削除に関して前記端末または当該端末のユーザに与えられた権限を示す権限データをさらに受信する、請求項１または請求項２に記載の端末。
【請求項４】
前記受信部は、前記アプリケーション操作データの途中から分岐して前記端末に対するユーザ入力に基づく別のアプリケーション操作データを生成することが許容される分岐可能期間を示す期間データをさらに受信する、請求項１乃至請求項３のいずれか１項に記載の端末。
【請求項５】
前記分岐可能期間は、前記端末または当該端末のユーザと他の端末または当該他の端末のユーザとの間で異なるように設定可能である、請求項４に記載の端末。
【請求項６】
前記実行部は、前記アプリケーション操作データを前記アプリケーションへ適用する速度を変更可能である、請求項１乃至請求項５のいずれか１項に記載の端末。
【請求項７】
端末であって、
アプリケーションに対する操作入力データと前記操作入力データを前記アプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータを追加、変更または削除する要求を生成する生成部と、
前記要求を送信する送信部と
を具備し、
前記アプリケーション操作データおよび前記タグデータを配信された他の端末は、前記操作入力データを当該操作入力データに対応する時間データの示す時間に前記アプリケーションへ適用し、
前記他の端末は、前記ランダムアクセスポイントを選択するユーザ入力をトリガとして前記アプリケーションを前記特定の時間データの示す時間に対応する実行状態まで遷移させる、
端末。
【請求項８】
アプリケーションに対する操作入力データと前記操作入力データを前記アプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータを追加、変更または削除する要求を受信する受信部と、
前記要求に応じて前記タグデータを管理する管理部と、
前記タグデータを送信する送信部と
を具備し、
前記アプリケーション操作データおよび前記タグデータを配信された端末は、前記操作入力データを当該操作入力データに対応する時間データの示す時間に前記アプリケーションへ適用し、
前記端末は、前記ランダムアクセスポイントを選択するユーザ入力をトリガとして前記アプリケーションを前記特定の時間データの示す時間に対応する実行状態まで遷移させる、
サーバ。
【請求項９】
端末であって、
アプリケーションに対する操作入力データと前記操作入力データを前記アプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、前記アプリケーション操作データに関連付けられたコメントデータとを受信する受信部と、
前記操作入力データを当該操作入力データに対応する時間データの示す時間に前記アプリケーションへ適用する実行部と、
を具備し、
前記実行部は、前記アプリケーションの実行中に、前記コメントデータを含む表示データを生成する、
端末。
【請求項１０】
端末であって、
アプリケーションに対する操作入力データと前記操作入力データを前記アプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに関連付けられるコメントデータを追加、変更または削除する要求を生成する生成部と、
前記要求を送信する送信部と
を具備し、
前記アプリケーション操作データおよび前記コメントデータを配信された他の端末は、前記操作入力データを当該操作入力データに対応する時間データの示す時間に前記アプリケーションへ適用し、
前記他の端末は、前記アプリケーションの実行中に、前記コメントデータを含む表示データを生成する、
端末。
【請求項１１】
アプリケーションに対する操作入力データと前記操作入力データを前記アプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに関連付けられるコメントデータを追加、変更または削除する要求を受信する受信部と、
前記要求に応じて、前記コメントデータを管理する管理部と、
前記コメントデータを送信する送信部と
を具備し、
前記アプリケーション操作データおよび前記コメントデータを配信された端末は、前記操作入力データを当該操作入力データに対応する時間データの示す時間に前記アプリケーションへ適用し、
前記端末は、前記アプリケーションの実行中に、前記コメントデータを含む表示データを生成する、
サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザ間でコンテンツ体験を共有する技術に関する。
【背景技術】
【０００２】
特許文献１は、ステートセーブ処理により生成されたステートセーブデータを、他のプレイヤとの間で共有することを開示している（［０１０１］）。プレイヤは、ステートセーブデータを他のプレイヤと共有することで、自身のゲームプレイの続きを他のプレイヤにもプレイさせることができる。他のプレイヤが作成したステートセーブデータを用いて、その続きからゲームプレイを行うことができる。さらに、対象ステートセーブデータをどのように他のプレイヤに共有するか（例えば、特定のプレイヤと共有する）を示す情報である共有条件についても開示がある（［０１０４］）。
【０００３】
特許文献２は、ユーザがプレイしたゲームの画面を再現動画として他のユーザと共有するための技法を開示している。再現動画は、例えばアスキーデータ等の文字コードであるログ情報を基礎として構築される（［００４２］，［００４４］，［図２］）。再現動画構築条件を入力することで、例えばゲーム画面のうち特に閲覧を希望する場面を抽出した再現動画を構築させることができる（［００７６］）。さらに、所定の期間のログ情報を除いた他のログ情報を抽出させる再現動画構築条件を設定することにより、プレイしたゲームの全体から、共有を希望しない一場面を除いた再現動画を構築させることもできる（［００７７］）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表２０１５−５１５２８４号公報
【特許文献２】特開２０１７−６６９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の技法によれば、プレイヤは自身のゲームプレイの続きを他のプレイヤにプレイさせたり、逆に、他プレイヤのゲームプレイの続きをプレイしたりすることができる。しかしながら、いずれのケースでも、１つのステートセーブデータから再開可能なポイントは１つ（ステートセーブを行った時点）に制限される。故に、様々なポイントから再開可能なステートセーブデータを他プレイヤとの間で共有するためには、プレイヤはその全てのポイントでステートセーブを行い、共有指示を行う必要がある。さらに共有条件を指定しようとすれば、プレイヤの手間はいっそう煩雑となる。
【０００６】
特許文献２は、再現動画を構築する技法に過ぎず、これを閲覧するユーザが当該再現動画に表されるゲームプレイに関与することは想定されていない。
【０００７】
本発明は、コンテンツ体験の共有を促進することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一態様によれば、端末は、受信部と、実行部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、アプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータとを受信する。実行部は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。実行部は、ランダムアクセスポイントを選択するユーザ入力をトリガとしてアプリケーションを特定の時間データの示す時間に対応する実行状態まで遷移させる。
【０００９】
本発明の別の態様によれば、端末は、生成部と、送信部とを含む。生成部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータを追加、変更または削除する要求を生成する。送信部は、要求を送信する。アプリケーション操作データおよびタグデータを配信された他の端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。他の端末は、ランダムアクセスポイントを選択するユーザ入力をトリガとしてアプリケーションを特定の時間データの示す時間に対応する実行状態まで遷移させる。
【００１０】
本発明の別の態様によれば、サーバは、受信部と、管理部と、送信部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示すタグデータを追加、変更または削除する要求を受信する。管理部は、要求に応じてタグデータを管理する。送信部は、タグデータを送信する。アプリケーション操作データおよびタグデータを配信された端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。端末は、ランダムアクセスポイントを選択するユーザ入力をトリガとしてアプリケーションを特定の時間データの示す時間に対応する実行状態まで遷移させる。
【００１１】
本発明の別の態様によれば、端末は、受信部と、実行部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データと、アプリケーション操作データに関連付けられたコメントデータとを受信する。実行部は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。実行部は、アプリケーションの実行中に、コメントデータを含む表示データを生成する。
【００１２】
本発明の別の態様によれば、端末は、生成部と、送信部とを含む。生成部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに関連付けられるコメントデータを追加、変更または削除する要求を生成する。送信部は、要求を送信する。アプリケーション操作データおよびコメントデータを配信された他の端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。他の端末は、アプリケーションの実行中に、コメントデータを含む表示データを生成する。
【００１３】
本発明の別の態様によれば、サーバは、受信部と、管理部と、送信部とを含む。受信部は、アプリケーションに対する操作入力データと操作入力データをアプリケーションへ適用する時間を示す時間データとを含むアプリケーション操作データに関連付けられるコメントデータを追加、変更または削除する要求を受信する。管理部は、要求に応じて、コメントデータを管理する。送信部は、コメントデータを送信する。アプリケーション操作データおよびコメントデータを配信された端末は、操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションへ適用する。端末は、アプリケーションの実行中に、コメントデータを含む表示データを生成する。
【発明の効果】
【００１４】
本発明は、コンテンツ体験の共有を促進することができる。
【図面の簡単な説明】
【００１５】
【図１】第１の実施形態に係るコンテンツ体験共有システムを例示するブロック図。
【図２】図１のメタデータサーバを例示するブロック図。
【図３】図１の操作データ利用端末を例示するブロック図。
【図４】図１の操作データ提供端末を例示するブロック図。
【図５】図２のメタデータサーバの動作を例示するフローチャート。
【図６】図３の操作データ利用端末のアプリケーション操作データおよびタグデータに関する動作を例示するフローチャート。
【図７】図４の操作データ提供端末のタグデータに関する動作を例示するフローチャート。
【図８】図１のコンテンツ体験共有システムにおいて共有されるアプリケーション操作データの構造を例示する図。
【図９】図３の操作データ利用端末に接続された表示装置による表示画面を例示する図。
【図１０】図３の操作データ利用端末のアプリケーション操作データおよびコメントデータに関する動作を例示するフローチャート。
【発明を実施するための形態】
【００１６】
以下、図面を参照しながら実施形態の説明を述べる。なお、以降、説明済みの要素と同一または類似の要素には同一または類似の符号を付し、重複する説明については基本的に省略する。例えば、複数の同一または類似の要素が存在する場合に、各要素を区別せずに説明するために共通の符号を用いることがあるし、各要素を区別して説明するために当該共通の符号に加えて枝番号を用いることもある。
【００１７】
（第１の実施形態）  
第１の実施形態に係るコンテンツ体験共有システムは、図１に例示されるように、操作データ提供端末１０と、操作データ利用端末２０−１，２０−２と、操作データサーバ３０と、メタデータサーバ４０とを含む。図１の各装置は、ネットワーク経由で互いに接続しており、データを互いに送受信できる。なお、操作データ利用端末２０の総数は２に限られず、１つであってもよいし、３以上であってもよい。また、図１に示されるサーバ構成は例示に過ぎず、１つのサーバの機能が複数の装置によって分担されてもよいし、複数のサーバの機能が１つの装置に割り当てられてもよい。図示されないＷｅｂサーバもネットワーク接続されていてもよい。
【００１８】
図１のコンテンツ体験共有システムでは、後述されるように、操作データ提供端末１０がアプリケーション操作データを提供する。操作データサーバ３０は、操作データ提供端末１０によって提供されたアプリケーション操作データを、操作データ利用端末２０からの配信要求に応じて配信する。そして、操作データ利用端末２０は、受信したアプリケーション操作データを用いてアプリケーションを実行する。
【００１９】
アプリケーションは、実行結果の少なくとも一部としてコンテンツを生成する。コンテンツは、例えば、動画像、静止画像、音声、テキストなどである。アプリケーションは、例えば、ビデオゲーム、アンケート、クイズ、お絵かきソフトなどであり得る。操作データ提供端末１０と操作データ利用端末２０とでは、同一のアプリケーションが実行されている。操作データ提供端末１０は、ユーザのアプリケーション操作に応じてコンテンツを生成する。操作データ利用端末２０は、受信したアプリケーション操作データを用いて操作データ提供端末１０と同一のコンテンツを再現する。
【００２０】
例えば、複数の操作データ利用端末２０が、同一のアプリケーション操作データを同一のアプリケーションに大凡同じタイミング（同期していることが望ましいが、同期していることは必須でない）で適用すれば、当該操作データ利用端末２０のユーザは生放送的なコンテンツ体験を共有することができる。
【００２１】
さらに、図１のコンテンツ体験共有システムでは、メタデータサーバ４０が、操作データ利用端末２０からの配信要求に応じて、アプリケーション操作データに関連付けられるメタデータを配信する。なお、以降の説明において、「配信要求」は、「取得要求」またはその他の「要求」として読み替えられてよい。メタデータは、後述されるように、アプリケーション操作データを用いたコンテンツ体験を促進するために利用可能なデータである。
【００２２】
操作データ提供端末１０は、前述のように、操作データサーバ３０へアプリケーション操作データを提供する。ここで、アプリケーション操作データの提供とは、操作データサーバ３０から操作データ利用端末２０へのアプリケーション操作データの配信を可能とすることを意味する。具体的には、アプリケーション操作データの提供とは、操作データサーバ３０へアプリケーション操作データを送信することであってもよいし、操作データサーバ３０の内部または外部に蓄積されたアプリケーション操作データの共有を許可するための明示的または黙示的な指示を与えることを意味し得る。明示的な指示は、例えば共有設定要求を送信することであり得る。アプリケーション操作データの送信を行うタイミングは、操作データ提供端末１０に対してユーザがアプリケーションを操作するのと同時並行（リアルタイム）であってもよいし、蓄積されたものを操作データ提供端末１０でのアプリケーション終了後にまとめて送信しても良い。
【００２３】
また、アプリケーション操作データは、操作データ提供端末１０によって生成されてもよいし、当該操作データ提供端末１０からの操作要求に応じて外部の装置（例えば、操作データサーバ３０）によって生成されてもよい。
【００２４】
アプリケーション操作データは、図８に例示されるように、少なくとも、アプリケーションに対する操作入力データと、当該操作入力データをアプリケーションに適用する時間を示す時間データとのデータセットを含む。より具体的には、アプリケーション操作データは、アプリケーションの実行開始（初期状態）から、当該アプリケーションに適用される全ての操作入力データとそれを適用する時間を示す時間データとを含む。
【００２５】
アプリケーションの種別次第で、アプリケーション操作データは、例えば、乱数シードなどの付加的なデータを含んでもよい。付加的なデータは、アプリケーションの実行結果の再現性を高めるのに役立つデータであればよい。アプリケーションの実行結果の再現性とは、例えば、ある時点にアプリケーション操作データを使用した場合の実行結果が、将来に当該アプリケーション操作データを使用した場合の実行結果とどのくらい同一であるか、或いは、あるアプリケーション実行装置がアプリケーション操作データを使用した場合の実行結果が、他のアプリケーション実行装置が当該アプリケーション操作データを使用した場合の実行結果とどのくらい同一であるか、によって評価することができる。
【００２６】
操作データ利用端末２０は、アプリケーション操作データの配信要求を操作データサーバ３０へ送信したり、当該アプリケーション操作データに関連付けられるメタデータの配信要求をメタデータサーバ４０へ送信したりする。そして、操作データ利用端末２０は、アプリケーション操作データを用いてアプリケーションを実行することでコンテンツを再生し、メタデータを用いてこのコンテンツ体験を促進することができる。さらに、操作データ利用端末２０は、メタデータの追加（投稿）／変更／削除要求をメタデータサーバ４０へ送信してもよい。
【００２７】
操作データサーバ３０は、例えば操作データ提供端末１０からの共有設定要求に応じて、当該共有設定要求に対応するアプリケーション操作データを共有可能な状態にする。それから、操作データサーバ３０は、操作データ提供端末１０または操作データ利用端末２０からの配信要求に応じて、アプリケーション操作データを配信する。なお、操作データサーバ３０は、少なくともアプリケーション操作データにアクセス可能であればよく、アプリケーション操作データは別のファイルサーバに保存されていてもよい。また、操作データサーバ３０は、アプリケーション操作データを生成する機能を備えていてもよい。
【００２８】
メタデータサーバ４０は、操作データ提供端末１０または操作データ利用端末２０からのメタデータの追加／変更／削除要求に応じて、アプリケーション操作データに関連付けられるメタデータを管理する。また、メタデータサーバ４０は、操作データ提供端末１０または操作データ利用端末２０からの配信要求に応じて、アプリケーション操作データに関連付けられるメタデータを配信する。なお、メタデータサーバ４０は、少なくともメタデータにアクセス可能であればよく、メタデータは別のファイルサーバに保存されていてもよい。
【００２９】
メタデータは、具体的には、タグデータ、期間データ、コメントデータなどを含むことができ、さらに、これらの追加／変更／削除に関する権限データを含むこともできる。
【００３０】
タグデータは、アプリケーション操作データに含まれる特定の時間データに設定されたランダムアクセスポイントを示す。ランダムアクセスポイントは、操作データ利用端末２０に対するユーザ入力をトリガとしてアプリケーションをこの特定の時間データの示す時間に対応する実行状態まで遷移させることを許容するために設定される。
【００３１】
期間データは、分岐可能期間を示す。分岐可能期間は、アプリケーション操作データの途中から分岐して操作データ利用端末２０に対するユーザ入力に基づく別のアプリケーション操作データを（分岐）生成することが許容される期間を意味する。
【００３２】
コメントデータは、操作データ利用端末２０がアプリケーション操作データを用いてアプリケーションを実行している時に表示可能なテキストデータである。コメントデータは、コンテンツに重ねて表示されてもよいし、コンテンツの表示領域とは別の領域に表示されてもよい。
【００３３】
権限データは、例えばタグデータ、期間データまたはコメントデータの追加／変更／削除に関して操作データ利用端末２０またはそのユーザに与えられた権限を示す。
【００３４】
以下、操作データ利用端末２０、操作データ提供端末１０およびメタデータサーバ４０の詳細について順に説明する。  
操作データ利用端末２０は、アプリケーション操作データに含まれる操作入力データを、当該操作入力データに対応する時間データの示す時間にアプリケーションに適用する。全ての操作データ利用端末２０が同様に動作するので、ユーザは、同一の実行結果、すなわち、同一のコンテンツ（例えば、ビデオゲームのプレイ映像）を楽しむことができる。
【００３５】
操作データ利用端末２０は、典型的には、テレビ受像機（インターネットテレビを含む）、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）、モバイル端末（例えば、タブレット、スマートフォン、ラップトップ、フィーチャーフォン、ポータブルゲーム機、デジタルミュージックプレイヤー、電子書籍リーダなど）、ＶＲ（Ｖｉｒｔｕａｌ  Ｒｅａｌｉｔｙ）端末、ＡＲ(Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ)端末であるが、これらに限られない。
【００３６】
操作データ利用端末２０は、アプリケーションの実行およびその制御、当該操作データ利用端末２０に接続された出力装置に対する出力制御、種々の要求（データ）の生成および通信制御などを行うプロセッサと、かかる処理を実現するために当該プロセッサによって実行されるプログラムおよび当該プロセッサによって使用されるデータなどを一時的に格納するメモリとを含んでいる。
【００３７】
操作データ利用端末２０は、さらに、ネットワークに接続するための通信装置と、コンテンツを出力するための出力装置と、ユーザ入力を受け付けるための入力装置と、プログラムまたはデータを保存する補助記憶装置とを利用可能である。これらの通信装置、出力装置、入力装置および補助記憶装置は、操作データ利用端末２０に内蔵されていてもよいし、操作データ利用端末２０に外付けされてもよい。
【００３８】
通信装置は、ネットワーク経由で、操作データサーバ３０およびメタデータサーバ４０と通信をする。例えば、通信装置は、操作データサーバ３０へアプリケーション操作データの配信要求を送信したり、メタデータサーバ４０へメタデータの配信要求または追加／変更／削除要求を送信したり、操作データサーバ３０からアプリケーション操作データを受信したり、メタデータサーバ４０からメタデータを受信したりする。
【００３９】
出力装置は、動画像、静止画像、テキストなどを表示するための表示装置および／または音声、楽曲などを出力するためのスピーカを含み得る。表示装置は、例えば、液晶ディスプレイ、有機ＥＬ（ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイなどである。表示装置は、コンテンツを含む表示データを表示する。なお、表示装置は、タッチスクリーンのように入力装置の機能を備えていてもよい。
【００４０】
入力装置は、例えば、キーボード、マウス、テンキーなどであってもよいし、タッチスクリーンのように表示装置の機能を備えていてもよい。ユーザ入力は、典型的には、タップ、クリック、特定のキーの押下などであり得る。このほか、ユーザ入力は、例えば、マイクロフォンによって捉えられる音声、生体センサによって検出される生体データ（例えば体温、表情など）、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）または基地局情報によって識別される位置データ、加速度センサによって検出される加速度データに基づいて推定されるユーザのアクション（例えば、操作データ利用端末２０を振り回した）などを含むこともできる。
【００４１】
補助記憶装置は、例えば、アプリケーションに関するプログラムまたはデータを格納する。補助記憶装置は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの不揮発性記憶媒体であることが好ましい。補助記憶装置は、操作データ利用端末２０にネットワーク経由で接続されたファイルサーバであり得る。
【００４２】
以下、図３を用いて、操作データ利用端末２０の詳細を説明する。操作データ利用端末２０は、受信部２０１と、実行部２０２と、出力部２０３と、入力部２０４と、実行制御部２０５と、要求生成部２０６と、送信部２０７とを含む。
【００４３】
受信部２０１は、ネットワーク経由で、操作データサーバ３０からアプリケーション操作データを受信する。受信部２０１は、アプリケーション操作データを実行部２０２へ送る。また、受信部２０１は、ネットワーク経由で、メタデータサーバ４０からメタデータを受信する。この場合にも、受信部２０１は、メタデータを実行制御部２０５へ送る。受信部２０１は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【００４４】
前述のように、アプリケーション操作データは、少なくとも、アプリケーションに対する操作入力データと当該操作入力データをアプリケーションに適用する時間を示す時間データとのデータセットを含み、さらに乱数シードなどの付加的なデータを含み得る。
【００４５】
ここで、時間データは、アプリケーション操作データを例えば単位時間毎に生成する場合には、所定のタイミング（例えばアプリケーションの実行開始）を基準とした経過時間をこの単位時間で量子化した値であり得る。具体的には、コンテンツが動画像を含む場合には、フレーム間隔を単位時間とみなすことができる。この例では、時間データは、対応する操作入力データが適用されるフレーム数を示していてもよい。
【００４６】
実行部２０２は、アプリケーションを実行する。実行部２０２は、実行制御部２０５からアプリケーション操作データを受け取り、当該アプリケーション操作データに含まれる操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションに適用する。アプリケーションは、適用された操作入力データに応じた実行結果を生成する。実行部２０２は、実行結果に含まれるコンテンツ（例えば動画像）を出力部２０３へ送る。実行部２０２は、前述のプロセッサおよびメモリであり得る。
【００４７】
実行部２０２は、アプリケーションの現在の実行状態に対応する時間の時間軸上での位置を可視化するシークバーを含む表示データを生成し、出力部２０３に送ってもよい。また、実行部２０２は、タグデータの示すランダムアクセスポイントを可視化するＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）部品を含む表示データを生成し、出力部２０３に送ってもよい。さらに、実行部２０２は、アプリケーションの実行中に、アプリケーション操作データに関連付けられるコメントデータを含む表示データを生成し、出力部２０３に送ってもよい。
【００４８】
出力部２０３は、実行部２０２からコンテンツ（表示データおよび／または音声データ）を受け取り、当該コンテンツを出力する。例えば、出力部２０３は、動画像、静止画像またはテキストを表示したり、音声または楽曲を出力したりする。出力部２０３は、前述の出力装置であってもよいし、当該出力装置とのインターフェースであってもよい。
【００４９】
入力部２０４は、ユーザ入力を受け取る。入力部２０４は、ユーザ入力を実行制御部２０５または要求生成部２０６へ送る。入力部２０４は、前述の入力装置であってもよいし、当該入力装置とのインターフェースであってもよい。
【００５０】
具体的には、ユーザ入力は、アプリケーションの実行制御（アプリケーション操作データの適用制御）に関するユーザ入力、アプリケーション操作データのメタデータの追加／変更／削除に関するユーザ入力、アプリケーション操作データまたはそのメタデータの配信に関するユーザ入力、アプリケーションの（能動的な）操作に関するユーザ入力などを含み得る。
【００５１】
アプリケーションの実行制御に関するユーザ入力は、ランダムアクセスポイントを選択するためのユーザ入力、アプリケーションの実行速度を変更するためのユーザ入力などを含み得る。入力部２０４は、アプリケーションの実行状態に関するユーザ入力を実行制御部２０５へ送る。
【００５２】
アプリケーション操作データのメタデータの追加／変更／削除に関するユーザ入力は、タグデータの示すランダムアクセスポイントを追加、変更または削除するためのユーザ入力、タグデータの示すランダムアクセスポイントに付随するテキストデータを追加、変更または削除するためのユーザ入力、コメントデータを追加（投稿）、変更または削除するためのユーザ入力などを含み得る。入力部２０４は、アプリケーション操作データのメタデータの追加／変更／削除に関するユーザ入力を要求生成部２０６へ送る。
【００５３】
アプリケーション操作データまたはそのメタデータの配信に関するユーザ入力は、アプリケーション操作データの配信を求めるユーザ入力、メタデータの配信を求めるユーザ入力などであり得る。
【００５４】
アプリケーションの操作に関するユーザ入力は、操作データ利用端末２０のユーザがアプリケーションの実行状態を引き継いだまま当該アプリケーションを能動的に操作するためのユーザ入力であり得る。例えば、アプリケーションがビデオゲームであるならば、ユーザ入力は、ゲーム中のオブジェクト（例えば、キャラクタ、アイテム、背景など）の選択、移動、アクション、状態変化などの操作を意味するものであり得る。そして、操作データ利用端末２０のユーザは、他のユーザ（アプリケーション操作データの提供者）によるゲームの進行の途中から分岐して（その時点のゲームの進行状態を引き継いで）、能動的にゲームをプレイすることができる。
【００５５】
かかるユーザ入力があった場合に、当該ユーザ入力は、以降のアプリケーションの操作のために限って使用（消費）されてもよいが、さらに他のユーザとコンテンツ体験を共有するために、かかるユーザ入力があった時間から分岐して別のアプリケーション操作データを生成することもできる。この場合には、分岐前のアプリケーション操作データに上乗せして分岐後のアプリケーション操作データが蓄積される。入力部２０４は、アプリケーション操作データの生成主体が操作データ利用端末２０である場合またはアプリケーション操作データの分岐生成を行わない場合にはアプリケーションの操作のための指示を実行制御部２０５へ送り、そうでない場合には要求生成部２０６へと送る。
【００５６】
アプリケーションの分岐実行またはアプリケーション操作データの分岐生成は、一律に禁止または条件付きで禁止されてもよい。例えば、アプリケーション操作データの提供者は、自己のゲームプレイ映像を他のユーザが視聴することは構わないが、自己のゲームの進行状態に他のユーザがただ乗りするのは許容できないと考えるかもしれない。このような場合には、操作データ提供端末１０は、アプリケーションの分岐実行またはアプリケーション操作データの分岐生成を一律に禁止してもよい。アプリケーション操作データの分岐が一律に禁止または許容されることは、例えばフラグデータとして操作データ利用端末２０に伝達され得る。
【００５７】
また、アプリケーション操作データの提供者は、ゲームの進行状態のうち限られた部分であれば他のユーザに利用させてもよいと考えるかもしれない。このような場合には、操作データ提供端末１０は、分岐可能期間を設定してもよい。分岐可能期間は、例えば、当該分岐可能期間を示す期間データとして操作データ利用端末２０に伝達され得る。
【００５８】
実行制御部２０５は、入力部２０４からアプリケーションの実行制御に関する指示に相当するユーザ入力を受け取る。実行制御部２０５は、ユーザ入力に基づいて、実行部２０２によるアプリケーションの実行状態を制御する。実行制御部２０５は、前述のプロセッサおよびメモリであり得る。
【００５９】
ランダムアクセスポイントを選択するための指示に相当するユーザ入力を受けると、実行制御部２０５は、当該ランダムアクセスポイントの設定された特定の時間データの示す時間に対応する実行状態までアプリケーションを遷移させるように実行部２０２に指示する。
【００６０】
例えば、現在の時間（ｔ）よりも特定の時間データの示す時間（ｔＲＡＰ）が後であるならば、実行制御部２０５は、ｔからｔＲＡＰまでに適用される操作入力データをアプリケーションに通常（現実の時間の流れ）よりも高速に（例えば設定可能な最大の速度で）適用するように実行部２０２に指示すればよい。他方、現在の時間（ｔ）よりも特定の時間データの示す時間（ｔＲＡＰ）が前であるならば、実行制御部２０５は、アプリケーションを初期状態にリセットし、０からｔＲＡＰまでに適用される操作入力データをアプリケーションに通常（現実の時間の流れ）よりも高速に適用するように実行部２０２に指示すればよい。なお、現在の時間（ｔ）が特定の時間データの示す時間（ｔＲＡＰ）と同一であるならば、実行制御部２０５は何もしなくてよい。
【００６１】
実行速度を変更するための指示に相当するユーザ入力を受けると、実行制御部２０５は、当該ユーザ入力に応じた速度でアプリケーションにアプリケーション操作データを適用するように実行部２０２に指示する。実行速度を可変とすれば、ユーザは、コンテンツのうち興味のない部分を早送りしたり、注視したい部分をスロー再生したりすることができる。
【００６２】
なお、前述のように、実行制御部２０５は、入力部２０４からアプリケーションの操作のための指示に相当するユーザ入力を受け取ることもある。実行制御部２０５は、ユーザ入力に基づいて、アプリケーションに対する操作入力データを生成し、実行部２０２に与える。なお、操作データ利用端末２０が、アプリケーション操作データを分岐生成する主体である場合には、操作データ利用端末２０は生成した操作入力データに時間データを対応付けてアプリケーション操作データを生成し、図示されないストレージに蓄積してもよい。
【００６３】
要求生成部２０６は、入力部２０４からアプリケーション操作データのメタデータの追加（投稿）／変更／削除に関するユーザ入力を受け取る。要求生成部２０６は、ユーザ入力に応じてメタデータの追加／変更／削除要求を生成し、送信部２０７へ送る。要求生成部２０６は、前述のプロセッサおよびメモリであり得る。
【００６４】
なお、メタデータの追加／変更／削除に関して操作データ利用端末２０に（操作データ提供端末１０によって）権限が与えられていることがある。この場合には、操作データ利用端末２０に与えられた権限を示す権限データを受信部２０１が受信し得る。例えば、ランダムアクセスポイントの追加、変更または削除は禁止されるが、当該ランダムアクセスポイントに付随するテキストデータの追加、変更または削除は許容されるかもしれない。
【００６５】
要求生成部２０６は、メタデータの追加／変更／削除に関するユーザ入力が権限を越えているならば、かかるユーザ入力に応じた要求の生成を拒否してもよい。このように要求生成部２０６が権限チェックを行えば、不要な要求を送信せずに済む。
【００６６】
また、要求生成部２０６は、入力部２０４からアプリケーション操作データまたはそのメタデータの配信に関するユーザ入力を受け取る。要求生成部２０６は、ユーザ入力に応じてアプリケーション操作データまたはメタデータの配信要求を生成し、送信部２０７へ送る。
【００６７】
送信部２０７は、要求生成部２０６から種々の要求を受け取り、ネットワーク経由で外部へ送信する。例えば、送信部２０７は、メタデータの配信要求およびメタデータの追加／変更／削除要求をメタデータサーバ４０へ送信する。また、送信部２０７は、アプリケーション操作データの配信要求を操作データサーバ３０へ送信する。送信部２０７は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【００６８】
以下、図６を用いて、アプリ−ション操作データおよびタグデータに関する操作データ利用端末２０の動作例を説明する。図６の動作の開始トリガは、送信部２０７がアプリケーション操作データまたはタグデータの配信要求を送信することであってもよいが、これに限られない。  
受信部２０１は、ネットワーク経由で、操作データサーバ３０からアプリケーション操作データを受信する（ステップＳ５０１）。受信部２０１は、ネットワーク経由で、メタデータサーバ４０からタグデータを受信する（ステップＳ５０２）。実行部２０２は、時間（例えばフレーム数）を表す変数ｔを初期化する（ステップＳ５０３）。なお、ステップＳ５０１〜ステップＳ５０３の実行順は図６とは異なってもよい。ステップＳ５０１〜ステップＳ５０３の後に、処理はステップＳ５０４へと進む。
【００６９】
ステップＳ５０４において、実行部２０２は、ステップＳ５０１において受信されたアプリケーション操作データに含まれる時間データを参照し、現在の時間（ｔ）を示す時間データに対応する操作入力データをアプリケーションに適用する。そして、出力部２０３は、実行結果に含まれるコンテンツを出力する。
【００７０】
ユーザは、アプリケーションの実行中の任意の時点で、ステップＳ５０２において受信されたタグデータの示すランダムアクセスポイントを選択可能である。例えば、アプリケーションの実行中に、操作データ利用端末２０に内蔵または外付けされた表示装置には、図９に示されるような画面が表示される。
【００７１】
図９の表示画面は、アプリケーションの実行結果に含まれるコンテンツの表示領域７０１に加えて、アプリケーションの現在の実行状態に対応する時間の時間軸上での位置をＧＵＩ部品（スライダ）７０３によって可視化するシークバー７０２と、タグデータの示すランダムアクセスポイントを可視化するＧＵＩ部品（ボタン）７０５−１〜７０５〜３とを含む。
【００７２】
表示領域７０１には、コンテンツに加えて、アプリケーション操作データに関連付けられるコメントデータも表示されてよい。また、表示領域７０１の周辺（例えば、上部）には、アプリケーション操作データに関連付けられるテキストデータ（タグ）がさらに表示されてもよい。タグは、主に、アプリケーションの実行結果に含まれるコンテンツの分類または関連付けのために用いられるが、コンテンツの説明のため、ジョークのため、または、同じコンテンツを体験するユーザ同士のコミュニケーションのためなどに用いられることも想定される。
【００７３】
ＧＵＩ部品７０５−１〜７０５−３は、それぞれ、対応するランダムアクセスポイントに付随するテキストデータ（索引タグ）として、「０：３０  ステージ１」「５：００  ステージ２」「８：００  ステージ３」を表示している。この索引タグは、典型的には、当該ＧＵＩ部品を選択した場合にアプリケーションがどのような実行状態（コンテンツのシーン）に遷移（ジャンプ）可能であるかをユーザに把握させるために用いられるが、ジョークのためまたは同じコンテンツを体験するユーザ同士のコミュニケーションのために用いられることもある。
【００７４】
シークバー７０２は、ランダムアクセスポイントが設定された特定の時間データの示す時間の時間軸上での位置を可視化するＧＵＩ部品（アンカーアイコン）７０４−１〜７０４−３を含む。ユーザ入力がなければ、ＧＵＩ部品７０３は、時間の経過に伴ってシークバー上を左端から右端へ移動する。他方、ＧＵＩ部品７０４−１〜７０４〜３は、時間の経過に関わらず固定される。なお、各ＧＵＩ部品の外観は、図９に例示されたものに限定されない。各ＧＵＩ部品の外観は、固定であってもよいし、編集可能であってもよい。
【００７５】
図９の例では、ＧＵＩ部品７０４−１〜７０４−３またはＧＵＩ部品７０５−１〜７０５−３のいずれかを選択するユーザ入力を受けると、アプリケーションは、選択されたＧＵＩ部品の示すランダムアクセスポイントの設定された時間に対応する実行状態へ遷移することになる。
【００７６】
時間＝ｔの間に、ランダムアクセスポイントを選択するためのユーザ入力があれば処理はステップＳ５０６へと進み、そうでなければ処理はステップＳ５０７へと進む（ステップＳ５０５）。
【００７７】
ステップＳ５０６では、実行制御部２０５は、選択されたランダムアクセスポイントの設定された特定の時間データの示す時間（ｔＲＡＰ）に対応する実行状態までアプリケーションを遷移させるように実行部２０２に指示し、処理はステップＳ５０７へと進む（ステップＳ５０６）。
【００７８】
ステップＳ５０７において、実行部２０２は変数ｔを１インクリメントし、処理はステップＳ５０４へと戻る。
【００７９】
以下、図１０を用いて、アプリ−ション操作データおよびコメントデータに関する操作データ利用端末２０の動作例を説明する。図１０の動作の開始トリガは、送信部２０７がアプリケーション操作データまたはコメントデータの配信要求を送信することであってもよいが、これに限られない。また、図６および図１０の動作は両立し得る。
【００８０】
受信部２０１は、ネットワーク経由で、操作データサーバ３０からアプリケーション操作データを受信する（ステップＳ８０１）。受信部２０１は、ネットワーク経由で、メタデータサーバ４０からコメントデータを受信する（ステップＳ８０２）。実行部２０２は、時間（例えばフレーム数）を表す変数ｔを初期化する（ステップＳ８０３）。なお、ステップＳ８０１〜ステップＳ８０３の実行順は図１０とは異なってもよい。ステップＳ８０１〜ステップＳ８０３の後に、処理はステップＳ８０４へと進む。
【００８１】
ステップＳ８０４において、実行部２０２は、ステップＳ８０１において受信されたアプリケーション操作データに含まれる時間データを参照し、現在の時間（ｔ）を示す時間データに対応する操作入力データをアプリケーションに適用する。また、実行部２０２は、ステップＳ８０２において受信されたコメントデータのうち、現在の時間（ｔ）に表示すべきものを含む表示データを生成する（ステップＳ８０５）。例えば、コメントデータは、コンテンツの表示領域に当該コンテンツに重ねて表示されてもよいし、コメント専用の領域に表示されてもよい。そして、出力部２０３は、アプリケーションの実行結果に含まれるコンテンツと、コメントデータを含む表示データとを出力する。
【００８２】
ステップＳ８０４およびステップＳ８０５の後に、実行部２０２は変数ｔを１インクリメントし、処理はステップＳ８０４へと戻る。
【００８３】
操作データ提供端末１０は、操作データ利用端末２０の例として列挙した種々の装置のいずれかであってもよい。すなわち、操作データ提供端末１０は、操作データ利用端末２０と同様に、プロセッサ、メモリ、通信装置、出力装置、入力装置、補助記憶装置などを含み得る。
【００８４】
以下、図４を用いて、操作データ提供端末１０の詳細を説明する。操作データ提供端末１０は、受信部３０１と、実行部３０２と、出力部３０３と、入力部３０４と、実行制御部３０５と、要求生成部３０６と、送信部３０７とを含む。
【００８５】
受信部３０１は、ネットワーク経由で、操作データサーバ３０からアプリケーション操作データを受信する。受信部３０１は、アプリケーション操作データを実行制御部３０５へ送る。操作データ提供端末１０のユーザが自己の提供したアプリケーション操作データに関連付けられるタグデータ、期間データなどのメタデータの追加／変更／削除を行う場合に、当該アプリケーション操作データを用いてアプリケーションを実行することで、コンテンツを視聴しながら作業を容易に行えるようになる。
【００８６】
なお、アプリケーションの実行態様によっては、受信部３０１を省略する場合もある。具体的には、操作データ提供端末１０のローカルホスト内で行ったアプリケーション操作に伴う操作入力データ（または、これに基づいて生成したアプリケーション操作データ）を補助記憶装置に記録しておき、アプリケーション終了後にユーザの指示で各種データを操作データサーバ３０またはメタデータサーバ４０へ一括送信する場合には、受信部３０１は省略され得る。或いは、操作データ提供端末１０が、アプリケーションに対する操作要求またはローカルに生成したアプリケーション操作データを送信することに専念する（帯域やＣＰＵなどのリソースをそこに集中させる）ことで、操作データ利用端末２０と可能な限り同期的な状態を実現したい場合にも、受信部３０１は省略され得る。
【００８７】
また、受信部３０１は、ネットワーク経由で、メタデータサーバ４０からメタデータを受信する。この場合にも、受信部３０１は、メタデータを実行制御部３０５へ送る。操作データ提供端末１０のユーザが自己の提供したアプリケーション操作データに関連付けられるタグデータ、期間データなどのメタデータの追加／変更／削除を行う場合に、現在登録されているメタデータを表示することで、作業を容易に行えるようになる。
【００８８】
受信部３０１は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【００８９】
実行部３０２は、アプリケーションを実行する。実行部３０２は、実行制御部３０５からアプリケーション操作データを受け取り、当該アプリケーション操作データに含まれる操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションに適用する。アプリケーションは、適用された操作入力データに応じた実行結果を生成する。実行部３０２は、実行結果に含まれるコンテンツ（例えば動画像）を出力部３０３へ送る。実行部３０２は、前述のプロセッサおよびメモリであり得る。
【００９０】
実行部３０２は、アプリケーションの現在の実行状態に対応する時間の時間軸上での位置を可視化するシークバーを含む表示データを生成し、出力部３０３に送ってもよい。かかるシークバーを用いてランダムアクセスポイントまたは分岐可能期間を追加／変更／削除するユーザ入力を行うことで、操作データ提供端末１０のユーザはタグデータまたは期間データを容易に追加／変更／削除することができる。
【００９１】
出力部３０３は、実行部３０２からコンテンツ（表示データおよび／または音声データ）を受け取り、当該コンテンツを出力する。例えば、出力部３０３は、動画像、静止画像またはテキストを表示したり、音声または楽曲を出力したりする。出力部３０３は、前述の出力装置であってもよいし、当該出力装置とのインターフェースであってもよい。
【００９２】
入力部３０４は、ユーザ入力を受け取る。入力部３０４は、ユーザ入力を実行制御部３０５または要求生成部３０６へ送る。入力部３０４は、前述の入力装置であってもよいし、当該入力装置とのインターフェースであってもよい。
【００９３】
具体的には、ユーザ入力は、アプリケーションの実行制御に関するユーザ入力、アプリケーション操作データのメタデータの追加／変更／削除に関するユーザ入力、アプリケーション操作データの共有設定／配信またはそのメタデータの配信に関するユーザ入力などを含み得る。
【００９４】
アプリケーションの実行制御に関するユーザ入力は、アプリケーションの実行速度を変更するためのユーザ入力、動画像コンテンツについて指定された時点の付近で表示されるフレーム画像を一覧化するためのユーザ入力などを含み得る。入力部３０４は、アプリケーションの実行状態に関するユーザ入力を実行制御部３０５へ送る。
【００９５】
アプリケーション操作データのメタデータの追加／変更／削除に関するユーザ入力は、タグデータの示すランダムアクセスポイントを追加、変更または削除するためのユーザ入力、タグデータの示すランダムアクセスポイントに付随するテキストデータを追加、変更または削除するためのユーザ入力、分岐可能期間を追加、変更または削除するためのユーザ入力などを含み得る。入力部３０４は、アプリケーション操作データのメタデータの追加／変更／削除に関するユーザ入力を要求生成部３０６へ送る。
【００９６】
アプリケーション操作データの共有設定／配信またはメタデータの配信に関するユーザ入力は、アプリケーション操作データの共有設定／配信またはメタデータの配信を求めるユーザ入力であり得る。
【００９７】
実行制御部３０５は、入力部３０４からアプリケーションの実行制御に関する指示に相当するユーザ入力を受け取る。実行制御部３０５は、ユーザ入力に基づいて、実行部３０２によるアプリケーションの実行状態を制御する。実行制御部３０５は、前述のプロセッサおよびメモリであり得る。
【００９８】
実行速度を変更するための指示に相当するユーザ入力を受けると、実行制御部３０５は、当該ユーザ入力に応じた速度でアプリケーションにアプリケーション操作データを適用するように実行部３０２に指示する。実行速度を可変とすれば、ユーザは、ランダムアクセスポイントまたは分岐可能期間の始点もしくは終点を設定しようとする時点の付近をスロー再生したり、それ以外の部分を早送りしたりすることができる。
【００９９】
動画像コンテンツについて指定された時点の付近で表示されるフレーム画像を一覧化するためのユーザ入力を受けると、実行制御部３０５は例えば現在表示されているフレーム画像を中心に前後の所定時間内に表示されるフレーム画像を時系列順に並べて一覧化した表示データを生成するように実行部３０２を制御する。これにより、操作データ提供端末１０のユーザは、付近のフレーム画像を俯瞰しながら、ランダムアクセスポイントまたは分岐可能期間の始点もしくは終点を設定することができる。
【０１００】
要求生成部３０６は、入力部３０４からアプリケーション操作データのメタデータの追加／変更／削除に関するユーザ入力を受け取る。要求生成部３０６は、ユーザ入力に応じてメタデータの追加／変更／削除要求を生成し、送信部３０７へ送る。要求生成部３０６は、前述のプロセッサおよびメモリであり得る。
【０１０１】
なお、操作データ利用端末２０（またはそのユーザ）が利用可能なメタデータは、操作データ利用端末２０（またはそのユーザ）間で異なるように設定可能としてもよい。例えば、操作データ利用端末２０−１（またはそのユーザ）が選択可能なランダムアクセスポイントまたは分岐可能期間は、操作データ利用端末２０−２（またはそのユーザ）が選択可能なものと異なっていてもよい。
【０１０２】
また、要求生成部３０６は、入力部３０４からアプリケーション操作データの共有設定／配信またはメタデータの配信に関するユーザ入力を受け取る。要求生成部３０６は、ユーザ入力に応じてアプリケーション操作データの共有設定／配信要求またはメタデータの配信要求を生成し、送信部３０７へ送る。
【０１０３】
送信部３０７は、要求生成部３０６から種々の要求を受け取り、ネットワーク経由で外部へ送信する。例えば、送信部３０７は、アプリケーション操作データの共有設定／配信要求を操作データサーバ３０へ送信する。また、送信部３０７は、メタデータの配信要求およびメタデータの追加／変更／削除要求をメタデータサーバ４０へ送信する。送信部３０７は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【０１０４】
以下、図７を用いて、タグデータの追加に関する操作データ提供端末１０の動作例を説明する。なお、例えば期間データなどの他のメタデータの追加、ならびにメタデータの変更および削除に関しても類似の動作で実現可能である。
【０１０５】
入力部３０４は、ランダムアクセスポイントを指定するユーザ入力を受け取る（ステップＳ６０１）。かかるユーザ入力は、ランダムアクセスポイントを設定する時間を数値で指定する入力であってもよいし、ランダムアクセスポイントを設定する時間に対応するシークバー上の位置を選択する入力であってもよいし、前述のユーザ入力により一覧化されたフレーム画像からランダムアクセスポイントを設定する時間に対応するフレーム画像を選択する入力であってもよい。
【０１０６】
要求生成部３０６は、ステップＳ６０１において受理されたユーザ入力に基づいてタグデータの追加要求を生成する（ステップＳ６０２）。送信部３０７は、ステップＳ６０２において生成された追加要求をメタデータサーバ４０へ送信する（ステップＳ６０３）。
【０１０７】
メタデータサーバ４０は、サーバコンピュータであって、メタデータの管理（追加／変更／削除／配信）および通信制御などを行うプロセッサと、かかる処理を実現するために当該プロセッサによって実行されるプログラムおよび当該プロセッサによって使用されるデータなどを一時的に格納するメモリとを含んでいる。
【０１０８】
メタデータサーバ４０は、さらに、ネットワークに接続するための通信装置と、大容量のデータを蓄積するための補助記憶装置を利用可能である。通信装置および補助記憶装置は、メタデータサーバ４０に内蔵されていてもよいし、メタデータサーバ４０に外付けされてもよい。
【０１０９】
通信装置は、ネットワーク経由で、操作データ提供端末１０または操作データ利用端末２０と通信をする。例えば、通信装置は、操作データ提供端末１０または操作データ利用端末２０へメタデータを配信したり、操作データ提供端末１０または操作データ利用端末２０からメタデータの追加／変更／削除要求またはメタデータの配信要求を受信したりする。
【０１１０】
補助記憶装置は、例えば、メタデータサーバ４０によって管理されているメタデータを蓄積する。補助記憶装置は、例えば、ＨＤＤ、ＳＳＤなどの不揮発性記憶媒体であることが好ましい。補助記憶装置は、メタデータサーバ４０にネットワーク経由で接続されたファイルサーバであり得る。
【０１１１】
以下、図２を用いて、メタデータサーバ４０の詳細を説明する。メタデータサーバ４０は、受信部１０１と、メタデータ管理部１０２と、記憶部１０３と、送信部１０４とを含む。
【０１１２】
受信部１０１は、ネットワーク経由で、操作データ提供端末１０または操作データ利用端末２０からメタデータの追加／変更／削除要求またはメタデータの配信要求を受信する。受信部２０１は、メタデータの追加／変更／削除要求またはメタデータの配信要求をメタデータ管理部１０２へ送る。受信部１０１は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【０１１３】
メタデータ管理部１０２は、受信部１０１から受け取った要求に応じて、メタデータの読み書きを記憶部１０３に対して行う。メタデータ管理部１０２は、前述のプロセッサおよびメモリであり得る。
【０１１４】
メタデータ管理部１０２は、受信部１０１からメタデータの追加要求を受け取った場合には、当該追加要求に基づいてアプリケーション操作データに関連付けられるメタデータを追加して記憶部１０３に保存する。メタデータの追加要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子と、追加を要求するメタデータとを含み得る。
【０１１５】
メタデータ管理部１０２は、受信部１０１からメタデータの変更要求を受け取った場合には、当該変更要求に基づいてアプリケーション操作データに関連付けられるメタデータを変更して記憶部１０３に保存する。メタデータの変更要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子と、変更を要求するメタデータの識別子と、変更後のメタデータとを含み得る。
【０１１６】
メタデータ管理部１０２は、受信部１０１からメタデータの削除要求を受け取った場合には、当該削除要求に基づいてアプリケーション操作データに関連付けられるメタデータを記憶部１０３から削除する。メタデータの削除要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子と、削除を要求するメタデータの識別子とを含み得る。
【０１１７】
なお、メタデータ管理部１０２は、メタデータの追加／変更／削除要求を実行する前に、当該要求の権限チェックを行ってもよい。具体的には、メタデータ管理部１０２は、要求に含まれる要求元ユーザの識別子に関する権限データを記憶部１０３から読み出し、当該要求が権限を越えているならばこれを拒否してもよい。
【０１１８】
メタデータ管理部１０２は、受信部１０１からメタデータの配信要求を受け取った場合には、当該配信要求に基づいてアプリケーション操作データに関連付けられるメタデータを記憶部１０３から読み出して送信部１０４へ送る。メタデータの配信要求は、要求元ユーザの識別子と、アプリケーション操作データの識別子とを含み得る。
【０１１９】
記憶部１０３は、メタデータ管理部１０２によって書き込まれた（追加または変更された）メタデータを格納する。記憶部１０３は、前述の補助記憶装置であってもよいし、当該補助記憶装置とのインターフェースであってもよい。
【０１２０】
送信部１０４は、メタデータ管理部１０２からメタデータを受け取る。送信部１０４は、ネットワーク経由で、メタデータを操作データ提供端末１０または操作データ利用端末２０へ送信する。送信部１０４は、前述の通信装置であってもよいし、当該通信装置とのインターフェースであってもよい。
【０１２１】
以下、図５を用いて、メタデータサーバ４０の動作例を説明する。  
受信部１０１は、メタデータの追加／変更／削除要求およびメタデータの配信要求を待ち受ける。受信部１０１がメタデータの追加／変更／削除要求を受信すると処理はステップＳ４０２に進む（ステップＳ４０１）。他方、受信部１０１がメタデータの追加／変更／削除要求を受信すると処理はステップＳ４０４に進む（ステップＳ４０３）。
【０１２２】
ステップＳ４０２では、メタデータ管理部１０２は、受信したメタデータの追加／変更／削除要求を実行する。具体的には、メタデータ管理部１０２は、新規なメタデータを記憶部１０３に保存したり、記憶部１０３に保存されているメタデータを変更したり、記憶部１０３に保存されているメタデータを削除したりする。
【０１２３】
ステップＳ４０４では、メタデータ管理部１０２は、配信要求の対象となるアプリケーション操作データ（の識別子）に関連付けられるメタデータを記憶部１０３から読み出す。そして、メタデータ管理部１０２は、ステップＳ４０４において読み出したメタデータを配信要求の送信元である操作データ利用端末２０へ送信する（ステップＳ４０５）。
【０１２４】
以上説明したように、第１の実施形態に係るコンテンツ体験共有システムにおいて、操作データサーバは、アプリケーション操作データを操作データ利用端末へ配信する。操作データ利用端末は、それぞれ、アプリケーション操作データに含まれる操作入力データを当該操作入力データに対応する時間データの示す時間にアプリケーションに適用することで、このアプリケーション実行結果に含まれるコンテンツ体験をユーザに提供する。さらに、このコンテンツ体験共有システムにおいて、メタデータサーバは、メタデータを操作データ利用端末へ配信する。従って、このコンテンツ体験共有システムによれば、アプリケーション操作データを用いたコンテンツ体験の共有を促進することができる。
【０１２５】
具体的には、メタデータは、ランダムアクセスポイントを示すタグデータを含み得る。この場合には、操作データ利用端末のユーザは、コンテンツを最初から全て視聴しなくても、自らの希望する場面に直ちにジャンプできる。アプリケーション操作データの提供者または利用者が、コンテンツの見せ場を設定できるので、コンテンツ体験の共有を促進することができる。
【０１２６】
また、メタデータは、アプリケーションの実行中に表示可能なテキストデータであるコメントデータを含み得る。この場合には、操作データ利用端末のユーザは、コメントデータを書き込むことで他のユーザやアプリケーション操作データの提供者へコンテンツへの感想または意見を知らせたり、表示されたコメントデータを閲覧することで他のユーザのコンテンツへの感想または意見やアプリケーション操作データの提供者からの注釈を楽しんだりすることができる。
【０１２７】
上述の実施形態は、本発明の概念の理解を助けるための具体例を示しているに過ぎず、本発明の範囲を限定することを意図されていない。実施形態は、本発明の要旨を逸脱しない範囲で、様々な構成要素の付加、削除または転換をすることができる。
【０１２８】
上記各実施形態において説明された種々の機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。
【０１２９】
上記各実施形態の処理の少なくとも一部は、汎用のコンピュータを基本ハードウェアとして用いることでも実現可能である。上記処理を実現するプログラムは、コンピュータで読み取り可能な記録媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記録媒体に記憶される。記録媒体としては、磁気ディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ等）、光磁気ディスク（ＭＯ等）、半導体メモリなどである。記録媒体は、プログラムを記憶でき、かつ、コンピュータが読み取り可能であれば、何れであってもよい。また、上記処理を実現するプログラムを、インターネットなどのネットワークに接続されたコンピュータ（サーバ）上に格納し、ネットワーク経由でコンピュータ（クライアント）にダウンロードさせてもよい。
【符号の説明】
【０１３０】
１０・・・操作データ提供端末
２０・・・操作データ利用端末
３０・・・操作データサーバ
４０・・・メタデータサーバ
１０１，２０１，３０１・・・受信部
１０２・・・メタデータ管理部
１０３・・・記憶部
１０４，２０７，３０７・・・送信部
２０２，３０２・・・実行部
２０３，３０３・・・出力部
２０４，３０４・・・入力部
２０５，３０５・・・実行制御部
２０６，３０６・・・要求生成部
７０１・・・表示領域
７０２・・・シークバー
７０３，７０４，７０５・・・ＧＵＩ部品
【図１】
2018200672.tif 000003
【図２】
2018200672.tif 000004
【図３】
2018200672.tif 000005
【図４】
2018200672.tif 000006
【図５】
2018200672.tif 000007
【図６】
2018200672.tif 000008
【図７】
2018200672.tif 000009
【図８】
2018200672.tif 000010
【図９】
2018200672.tif 000011
【図１０】
2018200672.tif 000012