(57)【要約】  オーディオファイル及びイベント配信情報基づく複数のユーザ入力に対応する複数の制御イベントを使用してイベント配信情報を生成するためのコンピュータシステム及び方法が提供される。コンピュータ実行方法は、イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、且つ前記複数のイベント起動時間は順番に並べられる、ステップ；前記オーディオファイルの現在の再生時間を決定するステップ；及び前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；を含む。
2015534151.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ実行方法であって；
１つ以上のプロセッサ及び該１つ以上のプロセッサにより実行されるプログラムを記憶するメモリ及びディスプレイを有するコンピュータにおいて、
イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、且つ前記複数のイベント起動時間は順番に並べられる、ステップ；
前記オーディオファイルの現在の再生時間を決定するステップ；及び
前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；
を含む、コンピュータ実行方法。
【請求項２】
イベント配信情報から前記所定の数のイベント起動時間を抽出するステップは、さらに：
前記コンピュータで現在再生されている映像ファイルのビデオフレームを決定するステップであって、前記映像ファイルは前記オーディオファイルと関連づけられている、ステップ；
前記映像フレームに対応するサウンドトラックデータを識別するステップ；及び
前記イベント配信情報における前記サウンドトラックデータに対応する１つ以上のイベントを識別するステップであって、各イベントはイベント起動時間を有する、ステップ；
を含む、請求項１に記載のコンピュータ実行方法。
【請求項３】
前記コンピュータの前記ディスプレイ上の前記ユーザの複数の入力に対応する前記複数のイベントを制御するステップは：
前記現在の再生時間と各イベント起動時間とを比較するステップ；
前記現在の再生時間が前記各イベント起動時間より前である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対応する視覚インジケータを表示するステップ；及び
前記現在の再生時間が前記各イベント起動時間より後である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対する視覚インジケータの表示を止めるステップ；
をさらに含む、請求項１に記載のコンピュータ実行方法。
【請求項４】
前記イベント配信情報から前記所定の数のイベント起動時間を抽出するステップの前に：
前記オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出するステップ；及び
前記ヘッダデータ及び前記サウンドトラックデータに基づき、前記イベント配信情報を生成するステップ；
をさらに含む、請求項１に記載のコンピュータ実行方法。
【請求項５】
前記サウンドトラックデータにおけるイベントの対応するタイムスライス情報を識別するステップ；
前記ヘッダデータ及び前記タイムスライス情報に基づき、前記イベントのイベント起動時間を決定するステップ；及び
前記イベントのイベント起動時間に基づき、前記イベント配信情報を生成するステップ；
をさらに含む、請求項４に記載のコンピュータ実行方法。
【請求項６】
前記イベントのイベント起動時間及び前記対応するサウンドトラックデータをバイナリ形式のサウンドトラックイベント配信セットに追加するステップであって、前記バイナリフォーマットのサウンドトラックイベント配信セットを、前記オーディオファイルに関連付けられる前記イベント配信情報として構成する、ステップ；
をさらに含む、請求項５に記載のコンピュータ実行方法。
【請求項７】
１つ以上のプロセッサ、メモリ、ディスプレイ、及び前記メモリに記憶され且つ前記１つ以上のプロセッサによる実行のために構成される１つ以上のプログラム、を備えるコンピュータシステムであって、前記１つ以上のプログラムは、
イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、かつ前記複数のイベント起動時間は順番に並べられる、ステップ；
前記オーディオファイルの現在の再生時間を決定するステップ；及び
前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；
に対する命令を含む、コンピュータシステム。
【請求項８】
イベント配信情報から前記所定の数のイベント起動時間を抽出するステップに対する前記命令は、さらに、
前記コンピュータで現在再生されている映像ファイルのビデオフレームを決定するステップであって、前記映像ファイルは前記オーディオファイルと関連づけられている、ステップ；
前記映像フレームに対応するサウンドトラックデータを識別するステップ；及び
前記イベント配信情報における前記サウンドトラックデータに対応する１つ以上のイベントを識別するステップであって、各イベントはイベント起動時間を有する、ステップ；
に対する命令を含む、請求項７に記載のコンピュータシステム。
【請求項９】
前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベントを制御するステップに対する前記命令は、
前記現在の再生時間と各イベント起動時間とを比較するステップ；
前記現在の再生時間が前記各イベント起動時間より前である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対応する視覚インジケータを表示するステップ；及び
前記現在の再生時間が前記各イベント起動時間より後である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対する視覚インジケータの表示を止めるステップ；
に対する命令をさらに含む、請求項７に記載のコンピュータシステム。
【請求項１０】
前記１つ以上のプログラムは、
前記イベント配信情報から前記所定の数のイベント起動時間を抽出するステップの前の：
前記オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出するステップ；及び
前記ヘッダデータ及び前記サウンドトラックデータに基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、請求項７に記載のコンピュータシステム。
【請求項１１】
前記１つ以上のプログラムは、
前記サウンドトラックデータにおけるイベントの対応するタイムスライス情報を識別するステップ；
前記ヘッダデータ及び前記タイムスライス情報に基づき、前記イベントのイベント起動時間を決定するステップ；及び
前記イベントのイベント起動時間に基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、クレーム１０に記載のコンピュータシステム。
【請求項１２】
前記１つ以上のプログラムは、
前記イベントのイベント起動時間及び前記対応するサウンドトラックデータをバイナリ形式のサウンドトラックイベント配信セットに追加するステップであって、前記バイナリフォーマットのサウンドトラックイベント配信セットを、前記オーディオファイルに関連付けられる前記イベント配信情報として構成する、ステップ；
に対する命令をさらに含む、請求項１１に記載のコンピュータシステム。
【請求項１３】
ディスプレイを有するコンピュータの１つ以上のプロセッサによる実行のための１つ以上のプログラムを記憶するコンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、
イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、かつ前記複数のイベント起動時間は順番に並べられる、ステップ；
前記オーディオファイルの現在の再生時間を決定するステップ；及び
前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；
に対する命令を含む、非一時的なコンピュータ可読記憶媒体。
【請求項１４】
イベント配信情報から前記所定の数のイベント起動時間を抽出するステップに対する前記命令は、さらに、
前記コンピュータで現在再生されている映像ファイルのビデオフレームを決定するステップであって、前記映像ファイルは前記オーディオファイルと関連づけられている、ステップ；
前記映像フレームに対応するサウンドトラックデータを識別するステップ；及び
前記イベント配信情報における前記サウンドトラックデータに対応する１つ以上のイベントを識別するステップであって、各イベントはイベント起動時間を有する、ステップ；
に対する命令を含む、請求項１３に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１５】
前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベントを制御するステップに対する前記命令は、
前記現在の再生時間と各イベント起動時間とを比較するステップ；
前記現在の再生時間が前記各イベント起動時間より前である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対応する視覚インジケータを表示するステップ；及び
前記現在の再生時間が前記各イベント起動時間より後である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対する視覚インジケータの表示を止めるステップ；
に対する命令をさらに含む、請求項１３に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１６】
前記１つ以上のプログラムは、
前記イベント配信情報から前記所定の数のイベント起動時間を抽出するステップの前の：
前記オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出するステップ；及び
前記ヘッダデータ及び前記サウンドトラックデータに基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、請求項１３に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１７】
前記１つ以上のプログラムは、
前記サウンドトラックデータにおけるイベントの対応するタイムスライス情報を識別するステップ；
前記ヘッダデータ及び前記タイムスライス情報に基づき、前記イベントのイベント起動時間を決定するステップ；及び
前記イベントのイベント起動時間に基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、請求項１６に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１８】
前記１つ以上のプログラムは、
前記イベントのイベント起動時間及び前記対応するサウンドトラックデータをバイナリ形式のサウンドトラックイベント配信セットに追加するステップであって、前記バイナリフォーマットのサウンドトラックイベント配信セットを、前記オーディオファイルに関連付けられる前記イベント配信情報として構成する、ステップ；
に対する命令をさらに含む、請求項１７に記載の非一時的なコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願］
本出願は、２０１２年９月３日に出願された「ＳＹＳＴＥＭ  ＡＮＤ  ＭＥＴＨＯＤ  ＦＯＲ  ＧＥＮＥＲＡＴＩＮＧ  ＥＶＥＮＴ  ＤＩＳＴＲＩＢＵＴＩＯＮ  ＩＮＦＯＲＭＡＴＩＯＮ  ＵＳＩＮＧ  ＡＮ  ＡＵＤＩＯ  ＦＩＬＥ」と題する、中国特許出願第２０１２１０３２１５６１．２号の優先権を主張し、参照することによりその全体がここに含まれる。
【背景技術】
【０００２】
本開示は、一般に、オーディオファイルの処理に関連し、特に、イベント配信情報に基づき、ユーザ入力に対応するオーディオファイル及び制御イベントを使用してイベント配信情報を生成するためのシステム及び方法に関連する。
【０００３】
より多くのモバイルアプリケーションが、エンドユーザに種々の機能を提供する場合に、オーディオ機能を持つようになっている。例えば、アプリケーションは、モバイルデバイス（例えば、スマートフォン又はタブレットコンピュータ）上で再生されている音声ファイルのリズムに従って、ユーザ入力を受信するための、グラフィカルユーザインターフェースのための多くの位置を配置している。複数の位置に対するユーザのインタラクション（ｉｎｔｅｒａｃｔｉｏｎｓ）（例えば、指のタッチ）に基づき、アプリケーションは、ユーザフレンドリーな環境を提供する。例えば、音楽を同時に再生するゲームアプリケーションにおいて、ゲームアプリケーションの各画像フレームにおいて、音楽のリズムに基づいて、複数の位置が配置され、これにより配置された複数の位置に対するユーザの複数のインタラクションに基づく複数のユーザ入力が生成される。非常に多くの場合、配置された位置は、再生されている音楽に基づいてグラフィカルユーザインターフェース上を移動する移動オブジェクトに対応する。より具体的には、アプリケーションの特定のフレームと関連付けられている特定の位置は、多くの場合、音楽を生成する音声ファイルの中のデータのセットにマッピングされる。データのセットは、アプリケーションの複数のフレームのテンポ及び当該テンポに対応する複数の位置を特定する。例えば、位置の移動速度は、アプリケーションの複数のフレームをレンダリングする累積時間によって測定及び制御することができる。言い換えると、複数のフレームの累積時間がデータにおいて定義される対応する位置の立下り時間に対応する場合、その場所は、グラフィカルユーザインターフェースにおいてレンダリングされる。しかしながら、アプリケーションの複数のフレームをレンダリングする累積時間は、フレーム毎に計算されるため、この手法は必然的に、それぞれのフレームに関連付けられた誤差を蓄積する。結果として、累積誤差が十分に大きい場合には、再生中の音楽とグラフィカルユーザインターフェース上の複数の位置の対応する動きとの間に、数秒の時間差が生じる可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
アプリケーションの音楽再生及び映像の再生の同期の従来の手法に関連した上記の欠点及び他の問題は、以下に開示される開示内容により低減又は除去される。いくつかの実施例において、本開示は、１つ以上のプロセッサ、メモリ及び１つ以上のモジュール、複数の機能を実行するためのメモリに記憶されたプログラム又は命令のセットを有するコンピュータシステムにおいて実施される。これらの複数の機能を実行するための複数の命令は、１つ以上のプロセッサによる実行のために構成されるコンピュータプログラム製品に含まれてもよい。
【課題を解決するための手段】
【０００５】
本開示の一態様は、１つ以上のプロセッサ、メモリ及びディスプレイを有するコンピュータにより実行されるコンピュータ実行方法を含む。前記コンピュータ実行方法は：イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、かつ前記複数のイベント起動時間は順番に並べられる、ステップ；前記オーディオファイルの現在の再生時間を決定するステップ；及び前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；を含む。
【０００６】
本開示の他の態様は、コンピュータシステムと関連する。前記コンピュータシステムは、メモリ、１つ以上のプロセッサ、及び前記メモリに記憶され且つ前記１つ以上のプロセッサによる実行のために構成される１つ以上のプログラムを含む。前記１つ以上のプログラムは：イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、かつ前記複数のイベント起動時間は順番に並べられる、ステップ；前記オーディオファイルの現在の再生時間を決定するステップ；及び前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；を含む。
【０００７】
本開示の他の他の態様は、非一時的なコンピュータ可読記憶媒体であって、その中に複数の命令であって、コンピュータシステムにより実行される場合に当該コンピュータシステムに：イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、かつ前記複数のイベント起動時間は順番に並べられる、ステップ；前記オーディオファイルの現在の再生時間を決定するステップ；及び前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；を実行させる、複数の命令、を記憶する、非一時的なコンピュータ可読媒体に関連する。
【０００８】
いくつかの実施例は、クライアント−サーバネットワーク環境におけるクライアント側又はサーバ側のいずれかで実行されてもよい。
【図面の簡単な説明】
【０００９】
図面と併せて考慮する場合、好適な複数の実施例の詳細な説明の結果として、本開示の上述の特徴及び利点及びそれらについての追加的な特徴及び長所がより明確に以下において理解されるであろう。
【００１０】
【図１】いくつかの実施例に従うオーディオファイルに基づくアプリケーションのグラフィカルユーザインターフェースにおける複数のイベントの配信を制御する方法を示すフローチャートである。
【００１１】
【図２】いくつかの実施例に従う、オーディオファイルからヘッダ及びサウンドトラックデータを抽出し且つそのようなデータを使用してオーディオファイルにおける複数のイベントに対応するイベント配信情報を生成する方法を示すフローチャートである。
【００１２】
【図３】いくつかの実施例に従う、オーディオファイルに基づいて、アプリケーションのグラフィカルユーザインターフェースにおいて、複数のイベントの配信を制御するための方法を実行するためのシステムを示すブロック図である。
【００１３】
【図４】いくつかの実施例に従う、オーディオファイルからヘッダ及びサウンドトラックデータを抽出し、かつそのようなデータを使用してオーディオファイルの中の複数のイベントに対応するイベント配信情報を生成するための方法を実行するためのシステムを示すブロック図である。
【００１４】
【図５】いくつかの実施例に従う、図４に示されるイベント配信情報生成モジュールの複数の構成要素を示すブロック図である。
【００１５】
【図６】いくつかの実施例に従うコンピューティングデバイスの複数の構成要素を示すブロック図である。
【００１６】
同様の参照番号は、複数の図面のいくつかの表示を通して対応する複数の部分を示す。
【発明を実施するための形態】
【００１７】
次に、複数の実施例が詳細に参照され、それらの例は、添付の複数の図面に示される。以下の詳細な説明において、本明細書において提供される内容の完全な理解を与えるために、多数の具体的な詳細が記載される。しかしながら、その内容がこれらの具体的な詳細なしで実施されてもよい、ということが当業者には明らかであろう。他の複数の例において、複数の実施例の複数の態様を不要に曖昧にしないために、周知の方法、手順、部品、及び回路は詳細には説明されていない。
【００１８】
図１は、いくつかの実施例に従うオーディオファイルに基づくアプリケーションのグラフィカルユーザインターフェースにおける複数のイベントの配信を制御する方法を示すフローチャートである。
【００１９】
アプリケーションと関連付けられたオーディオの再生と映像の再生との間の同期を実現するために、ステップＳ１１０において、当該アプリケーションは、現在再生されているオーディオファイルと関連付けられているイベント配信情報から、順番に並べられている所定の数のイベント起動時間を抽出する。
【００２０】
いくつかの実施例において、イベント配信情報は、オーディオファイルを前処理し、当該オーディオファイルの中の１つ以上のイベントを識別し、且つ各識別されたイベントに対するイベント起動時間を記録することによって生成される。例えば、事前に定められた音符又は事前に定められた音符の列がオーディオファイルにおいて検出された場合にイベントが識別され、そしてイベント起動時間は、当該音符又は当該音符の列を再生する開示時間に対応する。アプリケーションがオーディオファイルを再生する場合、アプリケーションは、当該音楽ファイルと関連付けられているイベント配信情報から所定の数のイベント起動時間を抽出する。例えば、イベント配信情報の中の複数のイベント起動時間は、初期のものから後のものへの時間的な順序で編成され、そして抽出された複数のイベント起動時間もまた、同じ順序となる。いくつかの実施例において、イベント配信情報から抽出されるイベント起動時間の数は、オーディオファイルのサウンドトラックデータにより決定される。
【００２１】
いくつかの実施例において、複数のイベント起動時間の抽出は、アプリケーションの映像再生と結び付けられている。例えば、イベント配信情報から対応する再生時間間隔内の複数のイベント起動時間を時間的な順序で選択するために、アプリケーションは、映像再生の各フレームについて、その再生時間間隔を決定し、そして次に再生時間間隔とオーディオファイルとを関連付ける。この場合において、アプリケーションによりオーディオファイルが再生される場合、対応するフレームのセットもまた、フレーム毎に、アプリケーションにより同時に再生される。結果として、イベント配信情報から抽出された複数のイベント起動時間は、常に、アプリケーションが実行されているコンピューティングデバイスのディスプレイ上でレンダリングされる（描写される）対応するフレームと同期している。
【００２２】
いくつかの実施例において、オーディオファイルの再生中に、１つの画像フレームが事前に定められた時間間隔の間表示され、そして次に、後続の画像フレームに置き換えられ、各画像フレームは、１つ以上の音符に対応する。音符は、複数のサウンドトラックに対応する複数のイベントを含むため、各画像フレームは、対応する複数のサウンドトラックの１つ以上のイベントにマッピングされ得る。また、各イベント起動時間は、特定のフレームのグラフィカルユーザインターフェースに対応すべきであり、そして従って動画再生のフレーム更新とオーディオ再生の対応するリズムとの間のマッピング又は同期を達成する。
【００２３】
ステップＳ１３０において、アプリケーションは、オーディオファイルの現在の再生時間を決定する。いくつかの実施例において、現在の再生時間は、オーディオファイルの再生の現在の位置を示し、これはオーディオファイルの再生の開始時間から経過した時間の量を示す。
【００２４】
ステップＳ１５０において、アプリケーションは再生時間と複数のイベント起動時間との間の比較に基づき、グラフィカルユーザインターフェース上の複数のユーザ入力に対応する複数のイベントの位置を制御する。いくつかの実施例において、イベントの位置は、オーディオファイルの中において指定されるイベント起動時間に対応するフレームのグラフィカルユーザインターフェースの位置により予め決定される。ユーザがイベント位置において又はその近くにおいて入力を生成すると、イベント起動時間に対応するフレームもまた、それに応じて更新される。例えば、ゲームアプリケーションにおいて、抽出された複数のイベント起動時間のゲームアプリケーションへの適用は、ゲームアプリケーションのグラフィカルユーザインターフェース上の複数のイベント位置の生成を引き起こす。オーディオ再生中に、グラフィカルユーザインターフェースの特定のイベント位置の上をタップすることにより、特定の音符又は複数の音符がアプリケーションにより生成され、ユーザが楽器の異なる複数のキーを押すことにより楽器を演奏しているといったような効果を生じる。
【００２５】
オーディオファイルの再生時間と複数のイベント起動時間との相関により、複数のイベント及びグラフィカルユーザインターフェース上の対応する複数の位置を制御することにより、アプリケーションは、オーディオの再生と映像の再生との間のより良い同期結果を達成することができる。特に、オーディオファイルの再生時間は、オーディオファイルから取得され得る当該オーディオファイルの現在の再生位置に対応するので、異なる複数のフレームと関連付けられた複数の再生時間の蓄積といったような誤りが導入されることはない。複数のイベント起動時間は、オーディオファイルにおいて特定される複数のイベントの複数の再生時間から導出されるので、それらも誤差を含まず、当該２つの相関は、オーディオファイルに基づくグラフィカルユーザインターフェース上の複数のイベントの位置の精度を向上させることができる。いくつかの実施例において、アプリケーションは、イベント起動時間がオーディオファイルの再生時間の前であるか或いは後であるかを決定するために、イベント起動時間とオーディオファイルを再生する時間とを比較する。イベント起動時間が再生時間の後である場合、アプリケーションは、イベントに対応するグラフィカルユーザインターフェース上の位置を特定し、且つその位置における複数のユーザ入力の表示を制御する。そうでなければ、アプリケーションは、このイベント起動時間をスキップしてもよい。
【００２６】
言い換えると、イベント起動時間が再生時間の後（又はそれよりも大きい）であると決定することは、当該イベント起動時間と関連付けられた対応する位置における複数のユーザ入力の表示を制御するための時間遅延がないことを示す。この場合、アプリケーションは、複数のユーザ入力に基づいて、その位置における表示の制御を呼び出す。例えば、ゲームアプリケーションにおいて、イベントの位置は、グラフィカルユーザインターフェース上の移動するオブジェクトのフォーマットにおいて表示されてもよい。この場合において、イベント起動時間がオーディオファイルの再生時間よりも大きい場合には、アプリケーションはグラフィカルユーザインターフェース上のオブジェクトを生成し、そしてまた、その動きの効果を表示する。一方、イベント起動時間が再生時間より前である（又はそれより短い）と決定することは、イベント起動時間と関連付けられたイベントが過ぎた又は失われたことを示し、アプリケーションは、通常、それ以上何もしない。言い換えると、ユーザの入力があるか否かにかかわらず、アプリケーションは、対応する位置においてディスプレイを制御しない。そうすることによって、アプリケーションは、現在表示されているフレームと互換性のない、オーディオファイルからの音符を再生することを避ける。アプリケーションが次のフレームを表示するために移動する場合、その後、次のフレームと関連付けられた複数のイベントの位置の表示を制御するために、次のフレームに対応するイベントをトリガするイベントを抽出し、そして上述したのと同様の動作を実行する。
【００２７】
いくつかの実施例において、抽出するステップＳ１１０の前に、アプリケーションは、オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出し、そして次に当該ヘッダデータ及びサウンドトラックデータに基づき、イベント配信データを生成する。例えば、オーディオファイルは、ヘッダデータ及びサウンドトラックデータの双方を含む、ＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）の形式であってもよい。特に、ヘッダデータは、オーディオファイルの構造及びオーディオファイルの再生速度を表すＢＰＭ（Ｂｅａｔｓ  Ｐｅｒ  Ｍｉｎｕｔｅ）等の複数のパラメータを記録する。いくつかの実施例において、サウンドトラックデータは、特定のイベント、音のピッチ、添付の情報、及びイベントと関連付けられたタイムスライス情報、に対応する複数の音符を再生するための楽器の種別についての情報を含む。シンセサイザへのサウンドトラックデータの入力は、イベントと関連付けられた特定の音符又は複数の音符の再生を生成する。
【００２８】
いくつかの実施例において、オーディオファイルにおける特定のイベントのイベント起動時間は、サウンドトラックデータにおけるヘッダデータ及びタイムスライス情報の中の複数のパラメータに基づいて決定される。そのようなイベント起動時間は、次にイベント配信情報を生成するために使用される。イベント起動時間以外に、イベント配信情報はさらにこのイベントの時間長を示す情報を含み、これは、当該イベントと関連付けられた音符を再生する時間長及びグラフィカルユーザインターフェース上のイベントの位置を表示する時間長を制御するために使用される。いくつかの実施例において、このイベントの時間長は、サウンドトラックデータにより与えられるその終了時間からイベントの開始時間を減算することにより決定される。
【００２９】
図２は、いくつかの実施例に従う、オーディオファイルからヘッダ及びサウンドトラックデータを抽出し、かつそのようなデータを用いてオーディオファイルにおいて対応する複数のイベントのイベント配信情報を生成する方法を示すフローチャートである。
【００３０】
ステップＳ２０１において、アプリケーションはオーディオファイルからヘッダデータ及びサウンドトラックデータを抽出し、それは上述のイベント配信情報を生成するために使用される。ステップＳ２０３において、アプリケーションは、サウンドトラックデータからイベントのタイムスライス情報を抽出し、そしてその後、少なくとも部分的に、ヘッダデータ及びタイムスライス情報に基づいて、当該イベントのイベント起動時間を決定する。いくつかの実施例において、オーディオファイルの中のタイムスライス情報の単位は、ティック数（ｎｕｍｂｅｒ  ｏｆ  ｔｉｃｋｓ）である。そのため、イベント起動時間は、所定のティック数の後のイベントが生じるべき時を示す。いくつかの実施例において、アプリケーションは、オーディオファイルのヘッダデータの中のＢＰＭなどの複数のパラメータに基づいて、時間のおけるティックの単位（時間目盛りの単位）を決定する。次に、アプリケーションは、サウンドトラックからタイムスライス情報を抽出し、そしてヘッダデータから複数のパラメータを抽出し、そしてオーディオファイルにおいて識別される各イベントに対するイベント起動時間を決定するために、そのような情報を使用する。
【００３１】
ステップＳ２０５において、アプリケーションは、前のステップで決定された複数のイベント起動時間を使用して、イベント配信情報を生成する。いくつかの実施例において、オーディオファイルの中の各イベントに対して、イベント配信情報の中に対応する部分が存在する。次に、イベント配信情報は、上述のように、オーディオファイルの再生中に、複数のイベントの位置を制御するために使用される。いくつかの実施例において、記憶領域を節約するために、バイナリストリーム形式のセットの中の異なる複数のイベントに対応する複数のイベント起動時間を記憶することにより、サウンドトラックイベント配信セットが生成される。より具体的には、オーディオファイルは複数のサウンドトラックを含み得るため、イベント配信情報は、各サウンドトラックに対して１つずつ、複数のサウンドトラックイベント配信セットを結合することにより生成される。
【００３２】
上記の説明は、オーディオファイルに基づいて、グラフィカルユーザインターフェース上の複数のイベント位置の表示を制御する方法に注目している。以下の説明は、具体例、すなわち、音楽ゲームアプリケーションに注目する。オーディオファイルは、音楽ゲームアプリケーションの音楽を生成するために使用される。ユーザが音楽ゲームアプリケーションを再生する場合、グラフィカルユーザインターフェース上の対応する複数のイベント位置の表示を制御し且つ複数のイベント位置を通しての複数のユーザ入力に基づいて対応する複数の音符を生成するために、アプリケーションは自動的にイベント配信情報から複数のイベント起動時間を抽出し且つそれらをオーディオファイルの現在の再生時間と比較する。
【００３３】
図３は、いくつかの実施例に従うオーディオファイルに基づき、アプリケーションのグラフィカルユーザインターフェース上での複数のイベントの配信を制御する方法を実行するシステムを示すブロック図である。この例において、システムは時間抽出モジュール１１０、再生時間決定モジュール１３０、及び制御モジュール１５０を含む。時間抽出モジュール１１０は、現在再生中のオーディオファイルと順番に関連付けられているイベント配信時間から所定の数のイベント起動時間を抽出するように構成される。
【００３４】
いくつかの実施例において、イベント配信情報は、オーディオファイルを前処理し、オーディオファイルの中の１つ以上のイベントを識別し、かつ各特定されたイベントに対するイベント起動時間を記録することにより生成される。例えば、オーディオファイルの中に事前に定められた音符又は事前に定められた音符の列が検出される場合にイベントが識別され、そしてイベント起動時間は、当該音符又は音符の列の再生開始時間に対応する。アプリケーションがオーディオファイルを再生する場合、時間抽出モジュール１１０は、音楽ファイルと関連付けられたイベント配信情報から、事前に定められた数のイベント起動時間を抽出する。例えば、イベント配信情報の中の複数のイベント起動時間は、早いものから後のものへの時間的な順序で編成され、そして抽出された複数のイベント起動時間もまた、同じ順序となる。いくつかの実施例において、イベント配信情報から抽出されるイベント起動時間の数は、オーディオファイルのサウンドトラックデータにより決定される。
【００３５】
いくつかの実施例において、複数のイベント起動時間の抽出は、アプリケーションの映像再生と結び付けられている。例えば、各映像再生のフレームに対して、イベント配信情報から時間順に対応する再生時間間隔内の複数のイベント起動時間を選択するために、時間抽出モジュール１１０は、その再生時間間隔を決定し、そしてその後当該再生時間間隔とオーディオファイルとを対応付ける。この場合において、オーディオファイルがアプリケーションにより再生される場合、対応する複数のフレームのセットがアプリケーションにより同時にフレーム毎に再生される。その結果、イベント配信情報から抽出される複数のイベント起動時間は常に、アプリケーションがその上で動作するコンピューティングデバイスのディスプレイ上でレンダリングされる（描画される）対応するフレームと同期する。
【００３６】
いくつかの実施例において、オーディオファイルの再生中に、１つの画像ファイルが事前に定められた時間間隔において再生され、そしてその後、次の画像ファイルと置き換えられ、各画像ファイルは１つ以上の音符と対応する。音符は、複数のサウンドトラックに対応する複数のイベントを含むため、各画像フレームは、対応する複数のサウンドトラックの１つ以上のイベントに対してマッピングされ得る。さらに、各イベント起動時間は、特定のフレームのグラフィカルユーザインターフェースに対応すべきであり、そして従って映像再生のフレームの更新と音楽再生の対応するリズムとの間のマッピング又は同期を達成する。
【００３７】
再生時間決定モジュール１３０は、オーディオファイルの現在の再生時間を決定するように構成される。いくつかの実施例において、現在の再生時間は、オーディオファイルの再生の現在の位置を示し、それはオーディオファイルの再生の開始時間から経過した時間の量を示す。
【００３８】
制御モジュール１５０は、再生時間と複数のイベント起動時間との比較に基づき、グラフィカルユーザインターフェース上の複数のユーザ入力に対応する複数のイベント位置を制御するように構成される。いくつかの実施例において、イベントの位置は、オーディオファイルにおいて指定されるイベント起動時間に対応するフレームのグラフィカルユーザインターフェース上の位置により事前に定められる。イベント位置において又はその近くでユーザが入力を生成する場合、イベント起動時間に対応するフレームもまたそれに応じて更新される。例えば、ゲームアプリケーションにおいて、制御モジュール１５０は、抽出した複数のイベント起動時間をゲームアプリケーションに適用し、ゲームアプリケーションのグラフィカルユーザインターフェース上の複数のイベント位置を生成させる。オーディオの再生中に、グラフィカルユーザインターフェースの特定のイベント位置をタッピングすることにより、特定の音符又は複数の音符がアプリケーションにより生成され、楽器の異なる複数のキーを押すことによりユーザが楽器を演奏しているかのような効果が生じる。
【００３９】
オーディオファイルの再生時間と複数のイベント起動時間との相関によって、複数のイベント及び対応するグラフィカルユーザインターフェース上の複数の位置を制御することにより、制御モジュール１５０は、オーディオ再生と映像再生との間のより良い同期結果を達成する。特に、オーディオファイルの再生時間は、オーディオファイルから取得できるオーディオファイルの現在の再生位置に対応するため、異なる複数のフレームと関連付けられる複数の再生時間の蓄積のような誤りは導入されない。複数のイベント起動時間は、オーディオファイルにおいて特定される複数のイベントの複数の再生時間から導出されるので、それらはいずれも誤りを含まず、当該２つの相関は、オーディオファイルに基づくグラフィカルユーザインターフェース上の複数のイベントの位置の精度を向上させることができる。いくつかの実施例において、制御モジュール１５０は、イベント起動時間がオーディオファイルの再生時間の前であるか又は後であるかを決定するために、イベント起動時間とオーディオファイルの再生時間とを比較する。イベント起動時間が再生時間の後であった場合、制御モジュール１５０は次にイベントに対応するグラフィカルユーザインターフェースの位置を特定し、そしてその位置における複数のユーザ入力の表示を制御する。そうでなければ、制御モジュールは、このイベント起動時間をスキップしてもよい。
【００４０】
図４は、いくつかの実施例に従う、オーディオファイルからヘッダ及びサウンドトラックデータを抽出し且つそのようなデータを使用してオーディオファイルの中の対応する複数のイベントに対するイベント配信情報を生成する方法を実行するためのシステムを示すブロック図である。図３に関連して上述した複数の実施例と比較して、この実施例はさらにイベント配信情報生成モジュール２１０を含む。
【００４１】
いくつかの実施例において、イベント配信情報生成モジュール２１０は、オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出し、且つ次にヘッダデータ及びサウンドトラックデータに基づきイベント配信情報を生成するように構成される。例えば、音楽ファイルは、ヘッダデータ及びサウンドトラックデータの双方を含むＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）の形式であってもよい。特にヘッダデータは、オーディオファイルの編成及びオーディオファイルの再生速度を表すＢＰＭ（Ｂｅａｔｓ  Ｐｅｒ  Ｍｉｎｕｔｅ）等の複数のパラメータを記録する。いくつかの実施例において、サウンドトラックデータは、特定のイベントに対応する複数の音符を再生するための複数の楽器の種別についての情報、音の高低、添付情報及びイベントに関連付けられたタイムスライス情報を含む。シンセサイザへのサウンドトラックデータの入力は、イベントに関連付けられた特定の音符又は複数の音符の再生を生成する。
【００４２】
いくつかの実施例において、イベント配信情報生成モジュール２１０は、ヘッダデータの中の複数のパラメータ及びサウンドトラックデータの中のイベントのタイムスライス情報に基づき、オーディオファイルの中の特定のイベントのイベント起動時間を決定する。そのようなイベント起動時間は、その後、イベント配信情報を生成するために使用される。イベント起動時間以外に、イベント配信情報はさらにこのイベントの時間長を示す情報を含み、これは、イベント及びグラフィカルユーザインターフェース上のイベントの位置を表示する時間長と関連付けられた複数の音符を再生する時間長を制御するために使用される。いくつかの実施例において、このイベントの時間長は、サウンドトラックデータにより提供されるその終了時間からイベントの開始時間を減算することによって定められる。
【００４３】
図５は、いくつかの実施例に従う、図４に示されるイベント配信情報生成モジュールの複数の構成要素を示すブロック図である。この例において、イベント配信情報生成モジュール２１０は、さらにデータ抽出部２１１、計算部２１３、及び情報生成部２１５を含む。
【００４４】
データ抽出部２１１は、オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出するように構成され、それらは上述のようにイベント配信情報を生成するために使用される。計算部２１３は、サウンドトラックデータからイベントのタイムスライス情報を抽出し、且つ次に、少なくとも部分的に、ヘッダデータ及びタイムスライス情報に基づいて、当該イベントのイベント起動時間を決定するように構成される。いくつかの実施例において、オーディオファイルの中のタイムスライス情報の単位は、ティックの数である。このため、イベント起動時間は、事前に定められたティックの数の後のイベントが発生すべき時を示す。いくつかの実施例において、アプリケーションは、オーディオファイルのヘッダデータの中のＢＰＭなどの複数のパラメータに基づいて、時間のおけるティックの単位（時間目盛りの単位）を決定する。次に、アプリケーションは、サウンドトラックからタイムスライス情報を抽出し、そしてヘッダデータから複数のパラメータを抽出し、そしてオーディオファイルにおいて識別される各イベントに対するイベント起動時間を決定するために、そのような情報を使用する。
【００４５】
情報生成部２１５は、前の複数のステップにおいて決定された複数のイベント起動時間を使用してイベント配信情報を生成するように構成される。いくつかの実施例において、オーディオファイルの中の各イベントのイベント配信情報の中の対応する部分が存在する。イベント配信情報は、次に、上述のようにオーディオファイルの再生中の複数のイベントの位置を制御するために使用される。複数の実施例において、記憶領域を節約するために、バイナリストリーム形式のセットの中の異なる複数のイベントに対応する複数のイベント起動時間を記憶することにより、サウンドトラックイベント配信セットが生成される。より具体的には、オーディオファイルは複数のサウンドトラックを含み得るため、イベント配信情報は、各サウンドトラックに対して１つずつ、複数のサウンドトラックイベント配信セットを結合することにより生成される。
【００４６】
図６は、いくつかの実施例に従うコンピューティングデバイス６００の複数の構成要素を示すブロック図である。コンピューティングデバイス６００は、典型的には、１つ以上の処理部（ＣＰＵ）６０２、１つ以上のネットワーク又は他の通信インターフェース６０４、メモリ６１０、及びこれらの構成要素を相互接続するための１つ以上の通信バス６０９を含む。通信バス６０９は、システム構成要素間を相互接続し、且つシステム構成要素間の通信を制御する回路（時々、チップセットと呼ばれる）を含んでもよい。コンピューティングデバイス６００は、例えば、ディスプレイ６０６及びキーボード６０８等の、ユーザ入力装置６０５を含んでもよい。メモリ６１０は、高速ランダムアクセスメモリを含んでもよく、且つ１つ以上の磁気ディスク記憶装置等の不揮発性メモリをさらに含んでもよい。メモリ６１０は、ＣＰＵ６２０から離れて配置される大容量記憶装置を含んでもよい。いくつかの実施例において、メモリ６０２、又は代替的にメモリ６０２内の（複数の）不揮発性メモリ装置は、非一時的なコンピュータ可読記憶媒体を含む。メモリ６０２又はメモリ６０２のコンピュータ可読記憶媒体は、以下の複数の要素又はこれらの複数の要素のサブセットを記憶し、そしてまた、追加的な複数の要素を含んでもよい：
・各種基本システムサービスの処理及びハードウェアに依存する複数のタスクの実行のための複数の手順を含むオペレーティングシステム６１２；
・インターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワーク等の、１つ以上の通信ネットワーク（有線又は無線）経由で、コンピューティングデバイス６００を遠隔サーバ（例えば、オンラインゲームサーバ）又は他の複数のコンピュータに接続するために使用されるネットワーク通信モジュール６１４；
・ユーザインターフェース６０５を介して複数のユーザ入力を受信するように構成されるユーザインターフェースモジュール６１６；及び
・オーディオファイルを再生するためのオーディオプレーヤアプリケーション６１８：いくつかの実施例において、オーディオプレーヤアプリケーション６１８はスタンドアロンのアプリケーションであり；他の複数の実施例において、オーディオプレーヤアプリケーション６１８は、他のアプリケーション（例えば、音楽ゲームアプリケーション）の構成要素である；
・例えば、フレーム毎に、映像ファイルを再生するためのビデオプレーヤアプリケーション６２０：いくつかの実施例において、ビデオプレーヤアプリケーション６２０は、スタンドアロンアプリケーションであり；他の複数の実施例において、ビデオプレーヤアプリケーション６２０は、他のアプリケーション（例えば、音楽アプリケーション）の構成要素である；
・オーディオファイルに従って、グラフィカルユーザインターフェース上の複数のイベントの位置の表示を制御するための同期アプリケーション６２２：いくつかの実施例において、同期アプリケーション６２２はスタンドアロンアプリケーションであり、他のいくつかの実施例において、同期アプリケーション６２２は、他のアプリケーション（例えば、音楽アプリケーション）の構成要素である；同期アプリケーション６２２はさらに以下を含む：
・図１及び３に関連して上述したような時間抽出モジュール；
・図１及び３に関連して上述したようなオーディオ再生時間決定モジュール１３０；
・図１及び３に関連して上述したような制御モジュール１５０；及び
・図４及び５に関連して上述したようなデータ抽出部２１１、計算部２１３、及び情報生成部２１５を含むイベント配信情報生成モジュール２１０；
・図１及び２に関連して上述したようなサウンドトラックデータ６２６及びヘッダデータ６２８をさらに含むオーディオファイル情報６２４；
・図１及び２に関連して上述したように、映像ファイル情報６３０は、映像フレームデータ６３２及びサウンドトラックデータ６３４；及び
・イベント配信情報６３６はさらに、イベント識別子６４０、イベント起動時間６４２、及びサウンドトラックデータ６４４を含む。
【００４７】
尚、上記の方法及びシステムは、オーディオファイル及びオーディオファイルの再生時間から複数のイベント起動時間を取得し、そして複数のイベント起動時間と再生時間とを比較することにより、グラフィカルユーザインターフェース上の複数のイベントの位置の表示を制御する。再生時間は、異なる複数のフレームに関連付けられている複数の時間を蓄積した結果ではなく、オーディオファイルの現在の再生位置に対応するので、再生時間と従来の手法に関連づけられた複数のイベント起動時間との間の時間のギャップを効果的に回避することができる。
【００４８】
特定の複数の実施例が上において説明されたが、本開示をこれらの複数の特定の実施例に限定することは意図されていないと理解されるであろう。逆に、本開示は、添付の複数の特許請求項の精神及び範囲内の代替、変更、及び均等物を含む。ここにおいて提示される内容の完全な理解を与えるために多数の特定の詳細が記載される。しかしながら、これらの特定の詳細なしで、この内容を実施できることは、当業者には明らかであろう。他の複数の例では、周知の方法、手順、構成要素、及び回路は複数の実施例の態様を不必要に曖昧にしないように、詳細には説明されていない。
【００４９】
本明細書の本開示の説明において使用される用語は、複数の特定の実施例を記載する目的に対してのみであり、且つ本開示を限定することは意図されていない。本開示の説明及び添付の複数の特許請求項において使用されるように、単数形「ａ」、「ａｎ」、及び「ｔｈｅ」は、文脈が明らかに他を示さない限り、複数系含むことも意図している。また、本明細書で使用される用語「及び／又は」は、列挙された関連する項目の１つ以上の可能な組合せのいずれか及び全てを言及及び包含する、ということが理解されるであろう。さらに、本明細書で使用される場合、「ｉｎｃｌｕｄｅｓ」、「ｉｎｃｌｕｄｉｎｇ」、「ｃｏｍｐｒｉｓｅｓ」及び／又は「ｃｏｍｐｒｉｓｉｎｇ」という用語は、述べられた特徴、動作、要素、及び／又は構成要素の存在を示し、１つ以上の他の特徴、動作、要素、構成要素、及び／又はこれらのグループの存在又は追加を排除するものではない。
【００５０】
本明細書で使用される場合、「ｉｆ」という用語は、文脈に応じて、記載された先行条件が真であるという「ｗｈｅｎ（場合）」又は「ｕｐｏｎ（に際し）」又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｒｍｉｎｉｎｇ（決定したことに応答して）」又は「ｉｎ  ａｃｃｏｒｄａｎｃｅ  ｗｉｔｈ  ａ  ｄｅｔｅｒｍｉｎａｔｉｏｎ（決定に従って）」又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｃｔｉｎｇ（検出したことに応答して）」を意味すると解釈されてもよい。同様に、「ｉｆ  ｉｔ  ｉｓ  ｄｅｔｅｒｍｉｎｅｄ  ［ｔｈａｔ  ａ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｐｒｅｃｅｄｅｎｔ  ｉｓ  ｔｒｕｅ］（もし［示された先行条件が真であると］決定されると）」又は「ｉｆ  ［ａ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｐｒｅｃｅｄｅｎｔ  ｉｓ  ｔｒｕｅ］（もし［示された先行条件が真である］）」又は「ｗｈｅｎ  ［ａ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｐｒｅｃｅｄｅｎｔ  ｉｓ  ｔｒｕｅ］（［示された先行条件が真である］場合）」という表現は、文脈に応じて、示された先行条件が真であると「ｕｐｏｎ  ｄｅｔｅｒｍｉｎｉｎｇ  （決定した際）」又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｒｍｉｎｉｎｇ（決定に応答して）」又は「ｉｎ  ａｃｃｏｒｄａｎｃｅ  ｗｉｔｈ  ａ  ｄｅｔｅｒｍｉｎａｔｉｏｎ（決定に従って）」又は「ｕｐｏｎ  ｄｅｔｅｃｔｉｎｇ（検出した際）」又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｃｔｉｎｇ（検出に応答して）」を意味すると解釈されてもよい。
【００５１】
各種図面のうちのいくつかは、特定の順序でいくつかの論理的な段階を示しているが、順序に依存しない複数の段階が並べかえられてもよく、かつ他の複数の段階が組み合わされてもよく或いは取り出されてもよい。いくつかの並べかえ又は他のグループ化が具体的に述べられたが、他のものは当業者にとって明らかであり、そして従って代替物の包括的なリストは提示されない。また、複数の段階は、ハードウェア、ファームウェア、ソフトウェア、又はそれらの如何なる組合せにより実装されてもよい、ということが認識されるべきである。
【００５２】
前述の記載内容は、説明のために、複数の特定の実施例に関して記載されている。しかしながら、上記の例示的な議論は、包括的であること、又は開示された正確な形態に本開示を限定することは意図されていない。多くの修正及び変形が上記の教示に鑑みて可能である。本開示の原理及びその実際の応用を最適に説明し、それにより考えられる特定の使用に適するような各種変更を伴う本開示及び各種実施例を他の当業者が最適に利用可能とするために、複数の実施例が選択され且つ説明されている。
【図１】
2015534151.tif 000003
【図２】
2015534151.tif 000004
【図３】
2015534151.tif 000005
【図４】
2015534151.tif 000006
【図５】
2015534151.tif 000007
【図６】
2015534151.tif 000008
【手続補正書】
【提出日】平成27年3月20日(2015.3.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータ実行方法であって；
１つ以上のプロセッサ及び該１つ以上のプロセッサにより実行されるプログラムを記憶するメモリ及びディスプレイを有するコンピュータにおいて、
イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、且つ前記複数のイベント起動時間は順番に並べられる、ステップ；
前記オーディオファイルの現在の再生時間を決定するステップ；及び
前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；
を含み、
イベント配信情報から前記所定の数のイベント起動時間を抽出するステップは、さらに：
前記コンピュータで現在再生されている映像ファイルのビデオフレームを決定するステップであって、前記映像ファイルは前記オーディオファイルと関連づけられている、ステップ；
前記映像フレームに対応するサウンドトラックデータを識別するステップ；及び
前記イベント配信情報における前記サウンドトラックデータに対応する１つ以上のイベントを識別するステップであって、各イベントはイベント起動時間を有する、ステップ；
を含む、コンピュータ実行方法。
【請求項２】
前記コンピュータの前記ディスプレイ上の前記ユーザの複数の入力に対応する前記複数のイベントを制御するステップは：
前記現在の再生時間と各イベント起動時間とを比較するステップ；
前記現在の再生時間が前記各イベント起動時間より前である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対応する視覚インジケータを表示するステップ；及び
前記現在の再生時間が前記各イベント起動時間より後である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対する視覚インジケータの表示を止めるステップ；
をさらに含む、請求項１に記載のコンピュータ実行方法。
【請求項３】
前記イベント配信情報から前記所定の数のイベント起動時間を抽出するステップの前に：
前記オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出するステップ；及び
前記ヘッダデータ及び前記サウンドトラックデータに基づき、前記イベント配信情報を生成するステップ；
をさらに含む、請求項１に記載のコンピュータ実行方法。
【請求項４】
前記サウンドトラックデータにおけるイベントの対応するタイムスライス情報を識別するステップ；
前記ヘッダデータ及び前記タイムスライス情報に基づき、前記イベントのイベント起動時間を決定するステップ；及び
前記イベントのイベント起動時間に基づき、前記イベント配信情報を生成するステップ；
をさらに含む、請求項３に記載のコンピュータ実行方法。
【請求項５】
前記イベントのイベント起動時間及び前記対応するサウンドトラックデータをバイナリ形式のサウンドトラックイベント配信セットに追加するステップであって、前記バイナリフォーマットのサウンドトラックイベント配信セットを、前記オーディオファイルに関連付けられる前記イベント配信情報として構成する、ステップ；
をさらに含む、請求項４に記載のコンピュータ実行方法。
【請求項６】
１つ以上のプロセッサ、メモリ、ディスプレイ、及び前記メモリに記憶され且つ前記１つ以上のプロセッサによる実行のために構成される１つ以上のプログラム、を備えるコンピュータシステムであって、前記１つ以上のプログラムは、
イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、かつ前記複数のイベント起動時間は順番に並べられる、ステップ；
前記オーディオファイルの現在の再生時間を決定するステップ；及び
前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；
に対する命令を含み、
イベント配信情報から前記所定の数のイベント起動時間を抽出するステップに対する前記命令は、さらに、
前記コンピュータで現在再生されている映像ファイルのビデオフレームを決定するステップであって、前記映像ファイルは前記オーディオファイルと関連づけられている、ステップ；
前記映像フレームに対応するサウンドトラックデータを識別するステップ；及び
前記イベント配信情報における前記サウンドトラックデータに対応する１つ以上のイベントを識別するステップであって、各イベントはイベント起動時間を有する、ステップ；
に対する命令を含む、コンピュータシステム。
【請求項７】
前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベントを制御するステップに対する前記命令は、
前記現在の再生時間と各イベント起動時間とを比較するステップ；
前記現在の再生時間が前記各イベント起動時間より前である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対応する視覚インジケータを表示するステップ；及び
前記現在の再生時間が前記各イベント起動時間より後である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対する視覚インジケータの表示を止めるステップ；
に対する命令をさらに含む、請求項６に記載のコンピュータシステム。
【請求項８】
前記１つ以上のプログラムは、
前記イベント配信情報から前記所定の数のイベント起動時間を抽出するステップの前の：
前記オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出するステップ；及び
前記ヘッダデータ及び前記サウンドトラックデータに基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、請求項６に記載のコンピュータシステム。
【請求項９】
前記１つ以上のプログラムは、
前記サウンドトラックデータにおけるイベントの対応するタイムスライス情報を識別するステップ；
前記ヘッダデータ及び前記タイムスライス情報に基づき、前記イベントのイベント起動時間を決定するステップ；及び
前記イベントのイベント起動時間に基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、クレーム８に記載のコンピュータシステム。
【請求項１０】
前記１つ以上のプログラムは、
前記イベントのイベント起動時間及び前記対応するサウンドトラックデータをバイナリ形式のサウンドトラックイベント配信セットに追加するステップであって、前記バイナリフォーマットのサウンドトラックイベント配信セットを、前記オーディオファイルに関連付けられる前記イベント配信情報として構成する、ステップ；
に対する命令をさらに含む、請求項９に記載のコンピュータシステム。
【請求項１１】
ディスプレイを有するコンピュータの１つ以上のプロセッサによる実行のための１つ以上のプログラムを記憶するコンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、
イベント配信情報から所定の数のイベント起動時間を抽出するステップであって、前記イベント配信情報は、前記コンピュータで現在再生されているオーディオファイルと関連づけられ、かつ前記複数のイベント起動時間は順番に並べられる、ステップ；
前記オーディオファイルの現在の再生時間を決定するステップ；及び
前記現在の再生時間及び前記抽出された複数のイベント起動時間との比較に基づき、前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベント位置を制御するステップ；
に対する命令を含み、
イベント配信情報から前記所定の数のイベント起動時間を抽出するステップに対する前記命令は、さらに、
前記コンピュータで現在再生されている映像ファイルのビデオフレームを決定するステップであって、前記映像ファイルは前記オーディオファイルと関連づけられている、ステップ；
前記映像フレームに対応するサウンドトラックデータを識別するステップ；及び
前記イベント配信情報における前記サウンドトラックデータに対応する１つ以上のイベントを識別するステップであって、各イベントはイベント起動時間を有する、ステップ；
に対する命令を含む、非一時的なコンピュータ可読記憶媒体。
【請求項１２】
前記コンピュータの前記ディスプレイ上のユーザの複数の入力に対応する複数のイベントを制御するステップに対する前記命令は、
前記現在の再生時間と各イベント起動時間とを比較するステップ；
前記現在の再生時間が前記各イベント起動時間より前である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対応する視覚インジケータを表示するステップ；及び
前記現在の再生時間が前記各イベント起動時間より後である場合に、前記各イベント起動時間と関連付けられたイベントにより起動されるユーザ入力に対する視覚インジケータの表示を止めるステップ；
に対する命令をさらに含む、請求項１１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１３】
前記１つ以上のプログラムは、
前記イベント配信情報から前記所定の数のイベント起動時間を抽出するステップの前の：
前記オーディオファイルからヘッダデータ及びサウンドトラックデータを抽出するステップ；及び
前記ヘッダデータ及び前記サウンドトラックデータに基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、請求項１１に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１４】
前記１つ以上のプログラムは、
前記サウンドトラックデータにおけるイベントの対応するタイムスライス情報を識別するステップ；
前記ヘッダデータ及び前記タイムスライス情報に基づき、前記イベントのイベント起動時間を決定するステップ；及び
前記イベントのイベント起動時間に基づき、前記イベント配信情報を生成するステップ；
に対する命令をさらに含む、請求項１３に記載の非一時的なコンピュータ可読記憶媒体。
【請求項１５】
前記１つ以上のプログラムは、
前記イベントのイベント起動時間及び前記対応するサウンドトラックデータをバイナリ形式のサウンドトラックイベント配信セットに追加するステップであって、前記バイナリフォーマットのサウンドトラックイベント配信セットを、前記オーディオファイルに関連付けられる前記イベント配信情報として構成する、ステップ；
に対する命令をさらに含む、請求項１４に記載の非一時的なコンピュータ可読記憶媒体。
【国際調査報告】
2015534151.tif 000009
2015534151.tif 000010