(57)【要約】【課題】オフラインハプティック変換を制御するシステムを提供する。【解決手段】システムは、ソースから入力を受信する。システムは、さらに、入力をハプティック信号へ変換する。システムは、さらに、ハプティック信号をエンコードする。システムは、さらに、ソース内にハプティック信号を記憶し、ハプティック信号は、ソース内の入力と合成される。ハプティック信号のエンコード及びソース内のハプティック信号の記憶に代えて、システムは、ソースとは独立して、ハプティック信号を別々に扱う。【選択図】図１
2014204445.tif 000002
【特許請求の範囲】
【請求項１】
オフラインハプティック変換を制御するためのコンピュータ実装方法であって、
入力をソースから受信するステップと、
前記入力を一又はそれ以上のハプティック信号へ変換するステップであって、前記入力の前記一又はそれ以上のハプティック信号への変換が、前記入力の再生前に行われる、ステップと、
前記一又はそれ以上のハプティック信号をエンコードするステップと、
前記一又はそれ以上のハプティック信号を記憶するステップと、を備えるコンピュータ実装方法。
【請求項２】
前記一又はそれ以上のハプティック信号を抽出するステップと、
前記一又はそれ以上のハプティック信号をデコードするステップと、
前記一又はそれ以上のハプティック信号に基づいて一又はそれ以上のハプティック効果を生成するステップと、
前記一又はそれ以上のハプティック効果を前記入力と同期するステップと、をさらに備える請求項１に記載のコンピュータ実装方法。
【請求項３】
前記一又はそれ以上のハプティック効果を生成するステップは、前記一又はそれ以上のハプティック効果を生成するために、前記一又はそれ以上のハプティック信号をハプティック出力装置へ送信するステップをさらに備える請求項２に記載のコンピュータ実装方法。
【請求項４】
前記ハプティック出力装置は、アクチュエータを備える請求項３に記載のコンピュータ実装方法。
【請求項５】
前記一又はそれ以上のハプティック信号のそれぞれは、一又はそれ以上の大きさ値のシーケンスを備え、
毎秒前記ハプティック出力装置に送信される前記一又はそれ以上の大きさ値のシーケンスの一部を定義するハプティックフレームレートを構成することをさらに備える請求項３に記載のコンピュータ実装方法。
【請求項６】
前記入力を前記一又はそれ以上のハプティック信号へ変換するステップは、
前記ソースから入力信号を抽出するステップと、
前記入力信号を前記一又はそれ以上のハプティック信号へ変換するステップと、をさらに備える請求項１に記載のコンピュータ実装方法。
【請求項７】
前記入力を前記一又はそれ以上のハプティック信号へ変換するステップは、
前記ソースから入力信号の一又はそれ以上の部分を抽出するステップと、
前記入力信号の一又はそれ以上の部分を前記一又はそれ以上のハプティック信号へ変換するステップと、をさらに備える請求項１に記載のコンピュータ実装方法。
【請求項８】
前記入力は、オーディオ信号の少なくとも一部、ビデオ信号の少なくとも一部、又はオーディオ信号及びビデオ信号の両方を含むマルチメディア信号の少なくとも一部の１つを含む請求項１に記載のコンピュータ実装方法。
【請求項９】
前記ソースは、マルチメディアファイルを含む請求項１に記載のコンピュータ実装方法。
【請求項１０】
前記一又はそれ以上のハプティック信号を記憶するステップは、前記ソース内の前記一又はそれ以上のハプティック信号を記憶するステップをさらに備え、前記一又はそれ以上のハプティック信号は、前記ソースのコンテナ内の前記入力と合成される請求項１に記載のコンピュータ実装方法。
【請求項１１】
前記一又はそれ以上のハプティック信号を記憶するステップは、別のファイル又はストリーム内の前記一又はそれ以上のハプティック信号を記憶するステップをさらに備える請求項１に記載のコンピュータ実装方法。
【請求項１２】
オフラインハプティック変換を制御するシステムであって、
オフラインハプティック変換モジュールを記憶するように構成されるメモリと、
前記メモリに記憶される前記オフラインハプティック変換モジュールを実行するように構成されるプロセッサと、を備え、
前記オフラインハプティック変換モジュールは、ソースからの入力を受信するように構成され、
前記オフラインハプティック変換モジュールは、さらに、前記入力を再生する前に前記入力を一又はそれ以上のハプティック信号へ変換するように構成され、
前記オフラインハプティック変換モジュールは、さらに、前記一又はそれ以上のハプティック信号をエンコードするように構成され、
前記オフラインハプティック変換モジュールは、さらに、前記一又はそれ以上のハプティック信号を記憶するように構成される、システム。
【請求項１３】
前記オフラインハプティック変換モジュールは、さらに、前記一又はそれ以上のハプティック信号を抽出するように構成され、
前記オフラインハプティック変換モジュールは、さらに、前記一又はそれ以上のハプティック信号をデコードするように構成され、
前記オフラインハプティック変換モジュールは、さらに、前記一又はそれ以上のハプティック信号に基づいて一又はそれ以上のハプティック効果を生成するように構成され、
前記オフラインハプティック変換モジュールは、さらに、前記一又はそれ以上のハプティック効果を前記入力と同期するように構成される、請求項１２に記載のシステム。
【請求項１４】
前記オフラインハプティック変換モジュールは、さらに、前記ソースから入力信号を抽出するように構成され、
前記オフラインハプティック変換モジュールは、さらに、前記入力信号を前記一又はそれ以上のハプティック信号へ変換するように構成される、請求項１２に記載のシステム。
【請求項１５】
プロセッサにより実行されたときに、前記プロセッサに請求項１から１１のいずれか一項に記載の方法を実行させる命令を有するコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、２０１３年４月９日に提出された米国仮出願番号第６１／８１０，１９６合の優先権（その開示は参照により本明細書に援用される）、及び２０１３年５月２４日に提出された米国仮出願番号第６１／８２７，３４１号の優先権（その開示は参照により本明細書に援用される）を主張するものである。
【０００２】
一実施形態は、一般的な装置に関するものであり、特にハプティック効果を生成するデバイスに関するものである。
【背景技術】
【０００３】
ハプティックは、力、振動及びモーションのようなハプティックフィードバック効果（すなわち、ハプティック効果）をユーザに与えることにより、ユーザの接触の検知を利用する触覚及び力フィードバック技術である。携帯装置、タッチスクリーン装置及びパーソナルコンピュータのような装置は、ハプティック効果を生成するように構成される。通常、ハプティック効果を生成可能な埋め込みハードウェア（例えば、アクチュエータ）への呼び出しは、装置のオペレーティングシステム（“ＯＳ”）内にプログラムされうる。これらの呼び出しは、プレイするためのハプティック効果を特定する。例えば、ユーザが、ボタン、タッチスクリーン、レバー、ジョイスティック、ホイール、又は他のコントローラ等を用いる装置とやり取りをするとき、当該装置のＯＳは、制御回路を介して、埋め込みハードウェアへプレイコマンドを送信することができる。埋め込みハードウェアは、その後、適切なハプティック効果を生成する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
デバイスは、ハプティック効果が他のコンテンツに組み込まれるように、ハプティック効果の出力をゲーム又は他のコンテンツの出力と調整するように構成されうる。例えば、オーディオエフェクトデベロッパーは、マシンガンの発射、爆発又は車の衝突等のようなデバイスにより出力されうるオーディオ効果を開発することができる。さらに、ビデオ効果のような他のタイプのコンテンツが開発することができ、デバイスにより連続的に出力される。オーディオエフェクトデベロッパーは、続いて、デバイスのハプティック効果を生み出すことができ、デバイスは、他のコンテンツと共にハプティック効果を出力するように構成されうる。しかし、このような処理は、通常、オーディオ効果又は他のタイプのコンテンツを正確に補完するハプティック効果を生み出すために、ハプティック効果デベロッパーの個別の判断を必要とする。オーディオ効果又は他のタイプのコンテンツを補完しない補完が乏しいハプティック効果は、ハプティック効果が、オーディオ効果又は他のコンテンツとかみ合わない全体的に不快な効果を生成しうる。この種のユーザ体験は、通常、望まれていない。
【課題を解決するための手段】
【０００５】
一実施形態は、オフラインハプティック変換を制御するシステムである。システムは、ソースからの入力を受信する。システムは、さらに、入力を再生する前に入力を一又はそれ以上のハプティック信号へ変換する。システムは、さらに、ハプティック信号をエンコードする。システムは、さらに、ソース内のハプティック信号を記憶し、ハプティック信号は、ソース内の入力と合成される。別の実施形態では、ハプティック信号のエンコード及びソース内のハプティック信号の記憶に代えて、システムは、ソースとは独立して、ハプティック信号を別々に扱う。
【図面の簡単な説明】
【０００６】
添付の図面と共に、好ましい実施形態の以下の詳細な説明から、さらなる実施形態、詳細、利点、及び変更が明らかとなるであろう。
【図１】図１は、本発明の一実施形態に係る、システムのブロック図を示す。
【図２】図２は、本発明の一実施形態に係る、入力信号をハプティック信号へのオフラインハプティック変換を行い、ハプティック信号をエンコードするシステムを示す。
【図３】図３は、本発明の一実施形態に係る、ハプティック信号のデコード及びハプティック信号に基づく一又はそれ以上のハプティック効果の再生を行うシステムを示す。
【図４】図４は、本発明の一実施形態に係る、入力信号のハプティック信号へのオフラインハプティック変換及びハプティック信号のエンコードのフロー図を示す。
【図５】図５は、本発明の一実施形態に係る、ハプティック信号をデコードし、ハプティック信号に基づいて一又はそれ以上のハプティック効果を再生するフロー図を示す。
【図６】図６は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のオーディオコンポーネントのためのハンドラーボックス構造を示す。
【図７】図７は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のビデオコンポーネントのためのハンドラーボックス構造を示す。
【図８】図８は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のハプティックコンポーネントのためのハンドラーボックス構造を示す。
【図９】図９は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のオーディオコンポーネント、ビデオコンポーネント及びハプティックコンポーネントのためのハンドラーボックス構造を示す。
【図１０】図１０は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のハプティックコンポーネントのための有効なオブジェクトプロファイルタイプを示す。
【図１１】図１１は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のハプティックコンポーネントのための有効ではないオブジェクトプロファイルタイプを示す。
【図１２】図１２は、本発明の一実施形態に係る、オフラインハプティック変換モジュールの機能のフロー図を示す。
【発明を実施するための形態】
【０００７】
一実施形態は、オーディオ信号、ビデオ信号又はマルチメディア信号のような入力をハプティック信号への“オフライン”変換を行うことができるシステムであり、ここで、ハプティック信号は、アクチュエータのようなハプティック出力装置に一又はそれ以上のハプティック効果を出力させることができる。ハプティック変換を“オフライン”で行う際に、システムは、ハプティック変換を“リアルタイム”で行う場合、又は入力の再生中に行う場合とは逆に、入力の再生前にハプティック変換を行うことができる。オフラインハプティック変換を行う際に、システムは、先ず、マルチメディアファイル又はいくつかの他のタイプのコンピュータファイルのようなソースからの入力を受信することができる。そして、システムは、入力をハプティック信号へ変換することができる。そして、システムは、続いて、ハプティック信号をエンコードすることができ、ここで、システムは、元の信号のソース内のハプティック信号を埋め込むことができ、システムは、ハプティック信号をソース内の元の出力と合成されることができる。それに替えて、ハプティック信号のエンコードの後に、システムは、別のソース内のハプティック信号を埋め込むことができる。さらに、システムは、ソースからのエンコードされたハプティック信号を抽出し、エンコードされたハプティック信号をデコードすることができる。そして、システムは、デコードされたハプティック信号を（アクチュエータ又はアクチュエータのセットのような）ハプティック出力装置又はハプティック出力装置のセットへ送信されることができ、デコードされたハプティック信号に基づいてハプティック出力装置にハプティック効果を生成させることができる。さらに、システムは、ハプティック効果の再生を、入力に基づいて又は入力によりシステムによって生成される他の効果の再生と同期することができる。
【０００８】
図１は、本発明の一実施形態に係る、システム１０のブロック図を示す。一実施形態では、システム１０は、装置（デバイス）の一部分であり、システム１０は、モバイル装置のためにオフラインハプティック変換機能を提供する。別の実施形態では、システム１０は、ウェアラブルデバイスの一部分であり、システム１０は、ウェアラブルデバイスのためのハプティック効果パターン変換機能を提供する。ウェアラブルデバイスの例は、リストバンド、ヘッドバンド、眼鏡、リング、レッグバンド、衣類に集積されたアレイ又はユーザによって身に付けられる又は保持される任意のデバイスのようなデバイスを含む。いくつかのウェアラブルデバイスは、“ハプティック可能”であり、それらがハプティック効果を生成するための機構を含むことを意味する。別の実施形態では、デバイス（例えば、モバイルデバイス又はウェアラブルデバイス）とは離れており、デバイスに対するハプティック効果パターン変換機能を遠隔的に提供する。図では単一のシステムを示したが、システム１０の機能は、分散されたシステムとして実装されることができる。システム１０は、情報を伝達するためのバス１２又は他の通信機構と、情報を処理するために、バス１２に接続されるプロセッサ２２と、を含む。プロセッサ２２は、任意のタイプの一般的な又は特殊用途のプロセッサであってもよい。システム１０は、プロセッサ２２により実行される情報及び命令を記憶するメモリ１４をさらに含む。メモリ１４は、ランダムアクセスメモリ（“ＲＡＭ”）、リードオンリーメモリ（“ＲＯＭ”）、磁気又は光ディスクのようなスタティックストレージ、又は任意のタイプのコンピュータ可読媒体の任意の組み合わせを含みうる。
【０００９】
コンピュータ可読媒体は、プロセッサ２２によりアクセス可能であり、揮発性及び不揮発性媒体の両方、リムーバブル及びノンリムーバブル媒体、通信媒体、及びストレージ媒体を含む任意の取得可能な媒体であってもよい。通信媒体は、搬送波又は他の伝送機構のような変調されたデータ信号におけるコンピュータ可読命令、データ構造、プログラムモジュール又は他のデータを含んでもよく、既存の技術の情報伝達媒体の任意の形態を含んでもよい。ストレージ媒体は、ＲＡＭ、フラッシュメモリ、ＲＯＭ、ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ（“ＥＰＲＯＭ”）、ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ（“ＥＥＰＲＯＭ”）、レジスタ、ハードディスク、リムーバブルディスク、コンパクトディスクリードオンリーメモリ（“ＣＤ−ＲＯＭ”）、又は既存の技術の任意の他のストレージ媒体の形態を含んでもよい。
【００１０】
一実施形態では、メモリ１４は、プロセッサ２２により実行されたときに、機能を提供するソフトウェアモジュールを記憶する。モジュールは、一実施形態の装置の他の部分と同様に、システム１０にオペレーティングシステム機能を提供するオペレーティングシステム１５を含む。モジュールは、以下に詳細を記載するように、入力のハプティック信号への変換、ハプティック信号のエンコード、ハプティック信号のデコード、及びハプティック信号に基づく一又はそれ以上のハプティック効果の再生を制御するオフラインハプティック変換モジュール１６をさらに含む。特定の実施形態では、オフラインハプティック変換モジュール１６は、複数のモジュールを備えることができ、各モジュールは、入力のハプティック信号への変換、ハプティック信号のエンコード、ハプティック信号のデコード、及びハプティック信号に基づく一又はそれ以上のハプティック効果の再生を制御するための特定の個別の機能を提供する。システム１０は、通常、Ｉｍｍｅｒｓｉｏｎ  ＣｏｒｐｏｒａｔｉｏｎによるＩｎｔｅｇｒａｔｏｒ（登録商標）のような追加の機能を含むための一又はそれ以上の追加のアプリケーションモジュール１８を含む。
【００１１】
システム１０は、リモートソースからデータを送信及び／又は受信する実施形態において、赤外線、無線、Ｗｉ−Ｆｉ又はセルラーネットワーク通信のようなモバイル無線通信を提供するために、ネットワークインターフェースカードのような通信装置２０をさらに含む。他の実施形態では、通信装置２０は、イーサネット（登録商標）接続又はモデムのような有線通信を提供する。
【００１２】
プロセッサ２２は、バス１２を介して、グラフィック描写又はユーザインターフェースをユーザへ表示する液晶ディスプレイ（“ＬＣＤ”）のようなディスプレイ２４にさらに接続される。ディスプレイ２４は、タッチスクリーンのような、プロセッサ２２から信号を送受信するように構成される接触検知入力装置であってもよく、マルチタッチスクリーンであってもよい。
【００１３】
システム１０は、一実施形態では、アクチュエータ２６をさらに含む。プロセッサ２２は、生成されたハプティック効果に関連付けられたハプティック信号を複数のアクチュエータ２６に送信し、次に、例えば振動触覚効果、静電気摩擦ハプティック効果又は変形ハプティック効果のようなハプティック効果を出力する。アクチュエータ２６は、アクチュエータ駆動回路を含む。アクチュエータ２６は、例えば、電気モータ、電磁気アクチュエータ、ボイスコイル、形状記憶合金、電気活性ポリマー、ソレノイド、偏心モータ（ｅｃｃｅｎｔｒｉｃ  ｒｏｔａｔｉｎｇ  ｍａｓｓ  ｍｏｔｏｒ（“ＥＲＭ”））、リニア共振アクチュエータ（ｉｎｅａｒ  ｒｅｓｏｎａｎｔ  ａｃｔｕａｔｏｒ（“ＬＲＡ”））、圧電アクチュエータ、高帯域幅アクチュエータ、電気活性ポリマー（ｅｌｅｃｔｒｏａｃｔｉｖｅ  ｐｏｌｙｍｅｒ（“ＥＡＰ”））アクチュエータ、静電触覚ディスプレイ、又は超音波振動発生器であってもよい。別の実施形態では、システム１０は、アクチュエータ２６に加えて、一又はそれ以上の別のアクチュエータ（図１には図示せず）を含みうる。アクチュエータ２６は、ハプティック出力装置の一例であり、ハプティック出力装置は、駆動信号に応答して、振動触覚ハプティック効果、静電摩擦ハプティック効果又は変形ハプティック効果のようなハプティック効果を出力するように構成される装置である。別の実施形態では、アクチュエータ２６は、いくつかの他のタイプのハプティック出力装置により置き換えられうる。さらに、別の実施形態では、システム１０は、アクチュエータ２６を含まなくてもよく、システム１０から離れた装置がアクチュエータを含む、又はハプティック効果を生成する他のハプティック装置及びシステム１０は、通信装置２０を介してハプティック信号を装置へ送信する。
【００１４】
一実施形態では、システム１０は、さらに、一又はそれ以上のスピーカ２８を含む。プロセッサ２２は、スピーカ２８へオーディオ信号を送信してもよく、順次オーディオ効果を出力する。スピーカ２８は、例えば、ダイナミックラウドスピーカ、エレクトロダイナミックラウドスピーカ、圧電ラウドスピーカ、磁気歪ラウドスピーカ、静電ラウドスピーカ、リボンプラナー磁気ラウドスピーカ、屈曲波ラウドスピーカ、フラットパネルラウドスピーカ、ヘイルエアモーショントランスデューサ、プラズマアークスピーカ、及びデジタルラウドスピーカであってもよい。別の実施形態では、システム１０は、スピーカ２８に加えて、一又はそれ以上の別のスピーカ（図１には図示せず）を含むことができる。さらに、別の実施形態では、システム１０は、スピーカ２８を含まず、システム１０から離れた装置は、オーディオ効果を出力するスピーカを含み、システム１０は、通信装置１０を通じて、当該装置へオーディオ信号を送信する。
【００１５】
システム１０は、一実施形態では、さらに、センサ３０を含む。センサ３０は、エネルギーの形態、又は加速度、生体信号、距離、流量、力／圧力／歪み／曲げ、湿度、線形位置、向き／傾き、無線周波数、回転位置、回転速度、スイッチの切り替え、温度、振動又は可視光強度のような他の物理的な特性を検出するように構成されうるが、これに限定されない。センサ３０は、さらに、検出したエネルギー又は他の物理的な特性を、電気信号又は仮想センサ情報を示す他の信号に変換するように構成されうる。センサ３０は、加速度計、心電図、脳波図、筋電計、眼電図、エレクトロパラトグラフ、電気皮膚反応センサ、容量センサ、ホール効果センサ、赤外線センサ、超音波センサ、圧力センサ、光ファイバーセンサ、屈曲センサ（又は曲げセンサ）、力検知抵抗、ロードセル、ＬｕＳｅｎｓｅ  ＣＰＳ２  １５５、小型圧力トランスデューサー、圧電センサ、歪みゲージ、湿度計、リニアポジションタッチセンサ、リニアポテンショメータ（又はスライダー）、線形変数差動変圧器、コンパス、傾斜計、磁気タグ（又は無線周波数識別タグ）、回転ポテンショメータ、ジャイロスコープ、オン‐オフスイッチ、温度センサ（例えば、サーモメータ、熱電対、抵抗温度検出器、サーミスタ又は温度変換集積回路）、マイクロホン、フォトメータ、高度計、生物学的モニター、カメラ又は光依存性抵抗のような装置であり得るが、これに限定されない。別の実施形態では、システム１０は、センサ３０に加えて、一又はそれ以上の追加センサ（図１には図示せず）を含んでもよい。これらの実施形態のいくつかでは、センサ３０及び追加センサの少なくとも１つは、センサアレイの一部である、又はいくつかの他のタイプのセンサの集合である。さらに、別の実施形態では、システム１０は、センサ３０を含まず、システム１０とは離れた装置は、エネルギー又は他の物理特性の形態を検出するセンサを含み、検出したエネルギー又は他の物理特性を電気信号又は仮想センサ情報を示す他のタイプの信号へ変換するセンサを含む。装置は、その後、通信装置２０を通じて、変換した信号をシステム１０へ送信することができる。
【００１６】
図２は、本発明の一実施形態に係る、入力信号をハプティック信号へのオフラインハプティック変換を行い、ハプティック信号をエンコードするシステムを示す。一実施形態では、図２の機能は、図３、４、５及び１２と共に以下に説明され、メモリ又は他のコンピュータ可読又は有形媒体に記憶されるソフトウェアにより実装され、プロセッサにより実行される。別の実施形態では、各機能は、（例えば、特定用途向け集積回路（“ＡＳＩＣ”）、プログラマブルゲートアレイ（“ＰＧＡ”）、フィールドプログラマブルゲートアレイ（“ＦＰＧＡ”）等を通じて）ハードウェアにより実行されてもよく、又はハードウェアとソフトウェアとの組み合わせで実行されてもよい。また、特定の実施形態では、いくつかの機能は、省略されてもよい。
【００１７】
図２の示されるシステムは、メディア編集アプリケーション２００を含む。メディア編集アプリケーション２００は、オーディオデータを含むオーディオ信号、ビデオデータを含むビデオ信号、又はオーディオ信号及びビデオ信号の両方を含むマルチメディア信号のような入力信号を編集する機能を行うように構成されるアプリケーションである。入力信号を編集する機能を実行する際に、メディア編集アプリケーション２００は、ユーザインターフェースをユーザへ表示することができ、ここで、ユーザインターフェースは、入力信号の仮想的な表示を含み、ユーザは、ユーザインターフェースとやりとりすることにより、入力信号の一又はそれ以上の部分又は入力信号の全体を変更することができる。図示された実施形態では、入力信号は、ビデオ信号及び２つのオーディオ信号を含むマルチメディア信号である。しかし、これは、実施形態の一例であり、別の実施形態では、マルチメディア信号は、任意の数のオーディオ信号を含むことができ、任意の数のビデオ信号を含むことができる。別の実施形態では、入力信号は、オーディオ信号、ビデオ信号、加速度信号、方向信号、環境光信号、又はセンサによりキャプチャされたデータを含むことができる別のタイプの信号のような別のタイプの入力信号でありうる。さらに、入力信号がマルチメディア信号である別の実施形態では、マルチメディア信号は、オーディオ信号及びビデオ信号に加えて、加速度信号、方向信号、環境光信号、又はセンサによりキャプチャされたデータを含むことができる別のタイプの信号のような別のタイプの入力信号を含むことができる。
【００１８】
メディア編集アプリケーション２００は、マルチメディアファイル２１０からエンコードされたマルチメディア信号を抽出し、エンコードされたマルチメディア信号をデコードすることにより、マルチメディア信号を受信することができる。マルチメディアファイル２１０は、エンコードマルチメディア信号又は他のタイプのエンコードされた信号のようなデータを記憶するコンピュータファイルである。一例の実施形態では、マルチメディアファイル２１０は、ＭＰＥＧ−４パート１４（“ＭＰ４”）ファイルとなりうる。ＭＰ４ファイルについての詳細は、ＭＰＥＧ４  Ｐａｒｔ−１  Ｓｔａｎｄａｒｄ  （ＩＳＯ／ＩＥＣ  １４４９６−１  Ｓｙｓｔｅｍｓ），  ｔｈｅ  ＭＰＥＧ４  Ｐａｒｔ−３  Ｓｔａｎｄａｒｄ  （ＩＳＯ／ＩＥＣ  １４４９６−３  Ａｕｄｉｏ），  ａｎｄ  ｔｈｅ  ＭＰＥＧ４  Ｐａｒｔ−１２  Ｓｔａｎｄａｒｄ  （ＩＳＯ／ＩＥＣ  １４４９６−１２  Ｍｅｄｉａ  Ｆｉｌｅ  Ｆｏｒｍａｔ）から理解することができ、その内容が参照により本明細書に援用される。
【００１９】
１では、ユーザは、マルチメディア信号内に含まれるオーディオ信号の一又はそれ以上の部分を選択する（“オーディオ領域”として図２に識別される）。システムは、オーディオ信号の一又はそれ以上の部分を含むリストである編集リスト２２０を生成する。別の実施形態では、オーディオ信号の一又はそれ以上の部分を選択するのではなく、ユーザは、オーディオ信号全体を選択することができる。また、別の実施形態では、ユーザは、ビデオ信号のようなマルチメディア信号内に含まれる別のタイプの信号を選択することができる。
【００２０】
２では、ユーザは、システムに、オーディオ信号の一又はそれ以上の部分を一又はそれ以上のハプティック信号へ変換するように命令する（‘ｍａｋｅ  ｈａｐｔｉｃｓ’機能を開始するとして図２に識別される）。ハプティック信号は、一又はそれ以上のハプティック効果と関連付けられうる信号であり、ハプティック信号は、アクチュエータのようなハプティック出力装置へ送信され、ここで、ハプティック出力装置は、ハプティック信号に基づいて一又はそれ以上ハプティック効果を出力することができる。ハプティック効果の一例は、ハプティック出力装置のユーザにより感じられる振動を生成しうる振動触覚ハプティック効果である。ハプティック効果の他の例は、静電摩擦ハプティック効果又は変形ハプティック効果を含みうる。ハプティック信号は、波形のようなデータを含むことができ、ここで、波形は、パルス符号変調（ｐｕｌｓｅ−ｃｏｄｅｄ  ｍｏｄｕｌａｔｉｏｎ  （“ＰＣＭ”））フォーマットでの一又はそれ以上の信号値のセットである。実施形態によれば、システムは、ハプティックオーケストレータモジュール２３０を呼び出し、ここで、ハプティックオーケストレータモジュール２３０は、オーディオ信号の一又はそれ以上の部分を一又はそれ以上のハプティック信号へ変換すること、及び一又はそれ以上のハプティック信号のエンコードを制御するモジュールである。ユーザがオーディオ信号全体を選択する別の実施形態では、ユーザは、システムに、オーディオ信号全体を一又はそれ以上のハプティック信号へ変換するように命令し、ハプティックオーケストレータモジュール２３０は、オーディオ信号全体の一又はそれ以上のハプティック信号への変換を制御することができる。
【００２１】
３では、ハプティックオーケストレータモジュール２３０は、編集リスト２２０から第１のアイテム（つまり、オーディオ信号の第１の部分）を選択し、オフラインハプティック変換モジュール２４０を呼び出す。オフラインハプティック変換モジュール２４０は、オーディオ信号又はオーディオ信号の一部分のような入力を一又はそれ以上のハプティック信号へ変換するモジュールである。オフラインハプティック変換モジュール２４０は、（１）ＰＣＭオーディオデータのようなデータを含む任意のサイズのデータバッファ、（２）データバッファの多数のチャネル、（３）データバッファのサンプルごとのビット、及び（４）データバッファのサンプルレートを入力として取得することができる。オフラインハプティック変換モジュール２４０は、さらに、ハプティック出力装置による一又はそれ以上のハプティック効果の生成を制御するハプティックデータを含むハプティック信号を含むデータバッファを出力として生成することができる。一実施形態では、ハプティック信号は、“ハプティックフレームレート”で変化する大きさ値のシーケンスを含む単一のチャネルでありうる。ハプティックフレームレートは、ハプティックデータが、オフラインハプティック変換モジュール２４０により出力されるレートを定義する。ハプティックフレームレートは、オーディオ信号、ビデオ信号、又はマルチメディア信号のような入力信号のオーディオフレームレート又はビデオフレームレートを一致させる１つのレートに設定されうる。それに代えて、ハプティックフレームレートは、ハプティックサンプルごとの複数のオーディオ（又は）ビデオサンプルとして定義されうる。一実施形態では、オフラインハプティック変換モジュール２４０は、ユーザがハプティックフレームレートを設定可能にする（例えば、毎秒１５フレームから毎秒６０フレームへ）コンフィグレーションインターフェースを含みうる。さらに、一実施形態では、オフラインハプティック変換モジュール２４０は、ハプティック変換処理の開始前に、ユーザが、既存のハプティックパラメータ（例えば、強度、密度又は鋭さ）を変更可能な方法も公開することができる。
【００２２】
オフラインハプティック変換モジュール２４０は、入力を一又はそれ以上のハプティック信号へ変換するための関連する技術の当業者に知られている任意のハプティック変換アルゴリズムを使用することができる。例えば、オフラインハプティック変換モジュール２４０は、入力の各部分の最大大きさ値を識別し、ハプティック信号の大きさを定義する識別された最大大きさ値に基づいて入力の各部分のハプティック信号を生成するハプティック変換アルゴリズムを使用することができる。各ハプティック変換アルゴリズムは、以下、米国特許第７，９７９，１４６；  米国特許第８，０００，８２５；  米国特許第８，３７８，９６４；  米国特許公開第２０１１／０２０２１５５；  米国特許公開第２０１１／０２１５９１３；  米国特許公開第２０１２／０２０６２４６；  米国特許公開第２０１２／０２０６２４７；  米国特許公開第２０１３／０２６５２８６；  米国特許公開第２０１３／０１３１８５１；  米国特許公開第２０１３／０２０７９１７；  米国特許公開第２０１３／０３３５２０９；  米国特許公開第２０１４／００６４５１６；  米国特許出願第１３／６６１，１４０；  米国特許出願第１３／７８５，１６６；  米国特許出願第１３／７８８，４８７；  米国特許出願第１４／０７８，４３８；  米国特許出願第１４／０７８，４４２；  米国特許出願第１４／０７８，４４５；  米国特許出願第１４／０５１，９３３；  米国特許出願第１４／０２０，４６１；及び米国特許出願第１４／０２０，５０２の特許及び特許出願に説明される。
【００２３】
一実施形態では、エンコードされた一又はそれ以上の部分又は他のタイプの信号は、マルチメディアファイル２１０から抽出され、エンコードされ、オフラインハプティック変換モジュール２４０の一又はそれ以上の呼び出しによりオフラインハプティック変換モジュール２４０へ送信されることができ、ここで、オフラインハプティック変換モジュール２４０は、オーディオ信号の各部分を一又はそれ以上のハプティック信号へ変換し、一又はそれ以上のハプティック信号を出力することができる。これは、“ステップワイズ変換（ｓｔｅｐ−ｗｉｓｅ  ｃｏｎｖｅｒｓｉｏｎ）”として識別され、図２に図示される。別の実施形態では、オーディオ信号全体又は他のタイプの信号は、マルチメディアファイル２１０から抽出され、デコードされ、オフラインハプティック変換モジュール２４０の一つの呼び出しによりオフラインハプティック変換モジュール２４０へ送信されることができ、ここで、オフラインハプティック変換モジュール２４０は、オーディオ信号全体を一又はそれ以上のハプティック信号へ変換し、一又はそれ以上のハプティック信号を出力することができる。これは、“全体変換（ｗｈｏｌｅ  ｃｏｎｖｅｒｓｉｏｎ）”として識別される。
【００２４】
実施形態によれば、オフラインハプティック変換モジュール２４０は、入力信号全体の一又はそれ以上のハプティック信号へのハプティック変換を“オフライン”で行うことができる。ハプティック変換“オフライン”を行う際に、オフラインハプティック変換モジュール２４０は、メディア編集アプリケーション２００による入力信号の再生前にハプティック変換を行うことができる。
【００２５】
４では、ハプティックオーケストレータモジュール２３０は、ハプティックエンコーダモジュール２５０を呼び出す。ハプティックエンコーダモジュール２５０は、一又はそれ以上のハプティック信号をエンコードしたフォーマットへエンコードし、マルチメディアファイル２１０内にエンコードした一又はそれ以上のハプティック信号を記憶するモジュールである。マルチメディアファイル２１０内にエンコードした一又はそれ以上のハプティック信号を記憶する際に、ハプティックエンコーダモジュール２５０は、マルチメディアファイル２１０内に一又はそれ以上のハプティック信号の各ハプティック信号を定義及び配置することができる。よって、一又はそれ以上のハプティック信号は、マルチメディアファイル２１０内に埋め込まれることができ、ここで、一又はそれ以上のハプティック信号は、元の（オリジナルの）マルチメディアファイルと合成される。別の実施形態では、ハプティックエンコーダモジュール２５０は、マルチメディアファイル２１０とは別のマルチメディアファイル内にエンコードした一又はそれ以上のハプティック信号を記憶することができる。また、さらに別の実施形態では、ハプティックエンコーダモジュール２５０は、マルチメディアファイル２１０又は別のマルチメディアファイル内に一又はそれ以上の予め定義されたハプティック効果に基づいて一又はそれ以上のエンコードしたハプティック信号をさらに記憶することができる。ハプティック信号のエンコード及びマルチメディアファイル内のエンコードしたハプティック信号の記憶は、以下に、図６−１１と共にさらに詳細に説明される。さらに、システムは、編集リスト２２０から各アイテム（つまり、オーディオ信号の各部分）について３及び４を繰り返す。
【００２６】
５では、メディア編集アプリケーション２００は、一又はそれ以上のハプティック信号の表示を含むために、マルチメディア信号の仮想表示を更新する。
【００２７】
図３は、本発明の一実施形態に係る、ハプティック信号のデコード及びハプティック信号に基づく一又はそれ以上のハプティック効果の再生を行うシステムを示す。図３に図示されるシステムは、マルチメディア編集アプリケーション２００及び／又はメディアプレーヤーアプリケーション３００を含む。メディア編集アプリケーション２００は、図２と共に上述されている。メディアプレーヤーアプリケーション３００は、オーディオデータを含むオーディオ信号、ビデオデータを含むビデオ信号、又はオーディオ信号及びビデオ信号の両方を含むマルチメディア信号のような入力信号をプレイする機能を実行するように構成されるアプリケーションである。
【００２８】
１では、ユーザは、システムに、オーディオデータを含むオーディオ信号、ビデオデータを含むビデオ信号、又はオーディオ信号及びビデオ信号の両方を含むマルチメディア信号のような入力信号をプレイさせるように命令し、エンコードされ、入力信号はマルチメディアファイル２１０内に記憶される。図示された実施形態では、マルチメディアファイル２１０内のエンコードされた入力信号は、エンコードされたマルチメディアファイルである。マルチメディアファイル２１０は、図２と共に上述されている。実施形態によれば、マルチメディアファイル２１０は、マルチメディアファイル２１０内のエンコードされたマルチメディア信号と合成される一又はそれ以上のエンコードされたハプティック信号をさらに含む。一実施形態では、ユーザは、メディア編集アプリケーション２００のユーザインターフェースとのやりとりにより、システムにマルチメディア信号をプレイするように命令することができる。別の実施形態では、ユーザは、メディアプレーヤーアプリケーション３００のユーザインターフェースとのやりとりにより、システムにマルチメディア信号をプレイするように命令することができる。
【００２９】
２では、メディア編集アプリケーション２００又はメディアプレーヤーアプリケーション３００は、マルチメディア信号をプレイする。実施形態によれば、メディア編集アプリケーション２００又はメディアプレーヤーアプリケーション３００は、マルチメディアファイル２１０からエンコードされたマルチメディア信号を読み出し、エンコードされたマルチメディア信号をデコードし、デコードされたマルチメディア信号をプレイする。
【００３０】
３では、オペレーティングシステム機能を提供するように構成されるモジュールであるオペレーティングシステムモジュール３１０は、ハプティックデコーダモジュール３２０を呼び出す。ハプティックデコーダモジュール３２０は、マルチメディアファイル２１０から一又はそれ以上のエンコードされたハプティック信号を抽出し、一又はそれ以上のエンコードされたハプティック信号をデコードするように構成されるモジュールである。エンコードされたハプティック信号をデコードする機能は、図６−１１と共に以下にさらに詳細に説明される。
【００３１】
４では、ハプティックデコーダモジュール３２０は、ハプティック出力３３０を生成する。ハプティックデコーダモジュール３２０は、一又はそれ以上のハプティック信号を、アクチュエータのような一又はそれ以上のハプティック出力装置へ送信することによりハプティック出力を生成することができ、ここで、一又はそれ以上のハプティック信号は、一又はそれ以上のハプティック出力装置に、一又はそれ以上のハプティック効果を生成させる。ハプティック出力３３０は、振動触覚効果３４０及び３５０のような振動触覚効果を含みうる。
【００３２】
ハプティックデコーダモジュール３２０は、さらに、ハプティック出力の再生を、オーディオ効果３６０及びビデオ効果３７０のようなオーディオ出力及び／又はビデオ出力の再生と同期する。よって、ハプティックデコーダモジュール３２０は、一又はそれ以上のハプティック信号を一又はそれ以上のハプティック出力装置へ送信することを、一又はそれ以上のオーディオ信号をスピーカのようなオーディオ出力装置へ送信すること、及び／又は一又はそれ以上のビデオ信号をディスプレイのようなビデオ出力装置へ送信すること同期することができる。この同期を容易にするために、ハプティックデコーダモジュール３２０は、一又はそれ以上ハプティック信号のハプティックデータを、一又はそれ以上のオーディオ信号のオーディオデータ及び／又は一又はそれ以上のハプティック信号のビデオデータと同期することができる。より具体的には、ハプティックデコーダモジュール３２０は、ハプティックフレームレートと等しいレートでハプティック信号をハプティック出力装置へ送信するように構成されるモジュールを繰り返し呼び出すことができ、ここで、ハプティックフレームレートは、オーディオ信号をオーディオ出力装置へ送信するために用いられるオーディオフレームレート及び／又はビデオ信号をビデオ出力装置へ送信するために用いられるビデオフレームレートと同一のレートとなるように定義される。よって、ハプティックフレームレートが、オーディオフレームレート及び／又はビデオフレームレートと同一であるため、オーディオ効果及び／又はビデオ効果は、ハプティック効果が出力される時の時間と同一又は実質的に同一（例えば、１秒以内）の時間に出力されることができる。
【００３３】
図４は、本発明の一実施形態に係る、入力信号のハプティック信号へのオフラインハプティック変換及びハプティック信号のエンコードのフロー図を示す。実施形態によれば、入力信号は、オーディオ信号及びビデオ信号を含むマルチメディア信号４０５である。しかし、別の実施形態では、入力信号は、オーディオ信号、ビデオ信号、加速度信号、方向信号、環境光信号、又はセンサによりキャプチャされたデータを含みうる別のタイプの信号のような別のタイプの入力信号でありうる。さらに、入力信号がマルチメディアファイルである別の実施形態では、マルチメディア信号は、任意の数のオーディオ信号を含むことができ、任意の数のビデオ信号を含むことができ、及び／又はオーディオ信号及びビデオ効果に加えて、加速度信号、方向信号、環境光信号、又はセンサによりキャプチャされたデータを含みうる別のタイプの信号のような別のタイプの入力信号を含むことができる。実施形態によれば、マルチメディア信号４０５は、エンコードされたマルチメディア信号であることができ、マルチメディアファイルのようなソース内に記憶されることができる。
【００３４】
４１０では、マルチメディア信号４０５のオーディオ信号は、抽出され、オーディオ信号４１５にデコードされる。オーディオ信号４１５は、その後、入力としてオフラインハプティック変換モジュール４２０へ送信される。オフラインハプティック変換モジュール４２０は、オーディオ信号４１５をハプティック信号４２５へ変換する。ハプティック信号４２５は、ハプティックデータを含む信号であり、ここで、ハプティックデータは、ＰＣＭストリーム又は振幅値のシーケンスを含む。実施形態によれば、オフラインハプティック変換モジュール４２０は、オーディオ信号４１５をハプティック信号４２５へ変換するために関連する技術の当業者に知られている任意のハプティック変換アルゴリズムを使用することができる。さらに、実施形態では、オフラインハプティック変換モジュール４２０は、ハプティック変換を“オフライン”で実行することができ、ここで、オフラインハプティック変換モジュール４２０は、オーディオ信号の再生前にハプティック変換を実行することができる。
【００３５】
４３０では、ハプティック信号４２５は、デコードされたハプティック信号４３５へデコードされる。さらに、４４０では、デコードされたハプティック信号４３５及びマルチメディア信号４０５は、マルチメディア信号４４５へ多重化（つまり、合成）され、ここで、マルチメディア信号４４５は、オーディオ信号、ビデオ信号、及びハプティック信号（つまり、エンコードされたハプティック信号４３５）を含む。ハプティック信号４２５へのデコードされたハプティック信号４３５のデコード、及びデコードされたハプティック信号４３５及びマルチメディア信号４０５の多重化は、図６−１１と共に以下にさらに詳細に説明される。
【００３６】
図５は、本発明の一実施形態に係る、ハプティック信号をデコードし、ハプティック信号に基づいて一又はそれ以上のハプティック効果を再生するフロー図を示す。５１０では、マルチメディア信号４４５は、オーディオ信号５１１、ビデオ信号５１２及びハプティック信号５１３に逆多重化（つまり、区分け）される。マルチメディア信号４４５は、図４と共に上述されており、再度説明されない。
【００３７】
５２０では、オーディオ信号５１１、ビデオ信号５１２及びハプティック信号５１３は、それぞれデコードされる。さらに、オーディオ信号５１１及びビデオ信号５１２及びハプティック信号５１３がデコードされた後、それらは、オーディオ／ビデオレンダラー５３０を送信され、ここで、オーディオ／ビデオレンダラー５３０は、一又はそれ以上のオーディオ出力装置での一又はそれ以上のオーディオ効果の出力及び一又はそれ以上ビデオ出力装置での一又はそれ以上のビデオ効果の出力を制御する。実施形態によれば、一又はそれ以上のオーディオ効果は、オーディオ信号５１１に基づいて出力され、一又はそれ以上のビデオ効果は、ビデオ信号５１２に基づいて出力される。特定の実施形態では、各オーディオ出力装置は、スピーカであり、各ビデオ出力装置は、ディスプレイである。さらに、ハプティック信号５１３は、デコードされたハプティック信号５２５へデコードされる。実施形態によれば、デコードされたハプティック信号５２５は、デコードされたハプティックデータを含む信号であり、ここで、デコードされたハプティックデータは、ＰＣＭストリーム又は振幅値のシーケンスを含む。ハプティック信号５１３が、デコードされたハプティック信号５２５へデコードされた後に、デコードされたハプティック信号５２５は、振動レンダラー５７０へ送信され、ここで、ハプティック信号５２５の振動レンダラー５７０への送信は、以下に詳細に説明される。実施形態によれば、振動レンダラー５７０は、ハプティック出力装置での一又はそれ以上のハプティック効果の出力を制御し、ここで、一又はそれ以上のハプティック効果の出力もまた、以下に詳細に説明される。さらに、オーディオ信号５１１及びビデオ信号５１２をオーディオ／ビデオレンダラー５３０へ送信すること、及びデコードされたハプティック信号５２０を振動レンダラー５７０へ送信することは、一又はそれ以上のオーディオ効果及び一又はそれ以上のビデオ効果が、一又はそれ以上のハプティック効果が出力される時の時間と同一又は実質的に同一である時間に出力されるように、同期されることができる。
【００３８】
５４０では、一又はそれ以上のハプティック出力装置は選択される。５５０では、デコードされたハプティック信号５２５の振幅ハプティックパラメータは変調され、これは、選択されたハプティック出力装置のためのデコードされたハプティック信号５２５を構成する。５６０では、強度ハプティックパラメータ、密度ハプティックパラメータ、又はシャープネスハプティックパラメータのような他のハプティックパラメータは、デコードされたハプティック信号５２５が、選択されたハプティック出力装置のために構成されるように変調される。特定の実施形態では、５４０、５５０及び５６０で実行される機能は省略されることができる。さらに、デコードされたハプティック信号５２５が変調された後に、デコードされたハプティック信号５２５は、振動レンダラー５７０へ送信され、ここで、振動レンダラー５７０は、アクチュエータ５８０での一又はそれ以上のハプティック効果の出力を制御し、アクチュエータは、ハプティック出力装置の一例である。実施形態によれば、一又はそれ以上のハプティック効果は、デコードされたハプティック信号５２５に基づいて出力される。
【００３９】
ここで、ハプティック信号のエンコード及びＭＰ４ファイルのようなマルチメディアファイル内のエンコードされたハプティック信号の記憶は、例示的な実施形態に基づいて、より詳細に説明される。ハプティック信号のエンコード及びマルチメディアファイル内のエンコードされたハプティック信号の記憶の例示的な実装が説明されるが、関連する技術の当業者は、別の実施形態では、ハプティック信号のエンコード及びマルチメディアファイル内のエンコードされたハプティック信号の記憶が異なって実装されうることを明示的に理解する。前述したように、マルチメディアファイルは、エンコードされたマルチメディア信号を含むことができ、ここで、エンコードされたマルチメディア信号は、エンコードされたオーディオ信号及びエンコードされたビデオ信号のような任意の数のエンコードされた信号を含みうる。実施形態によれば、ハプティック信号は、エンコードされ、マルチメディアファイル内に記憶されることができ、ここで、エンコードされたハプティック信号は、マルチメディアファイル内に記憶される他のエンコードされたオーディオ信号及び／又はエンコードされたビデオ信号とインターリーブ又は合成される。
【００４０】
実施形態によれば、エンコードされたハプティック信号は、エンコードされた信号の両方が波形のようなデータを含む点でエンコードされたオーディオ信号（又は他のタイプのエンコードされた信号）と同様であり、ここで、波形は、ＰＣＭフォーマットの一又はそれ以上の信号値のセットである。よって、エンコードされたハプティック信号は、エンコードされたハプティック信号が、（例えば、エンコードされたオーディオ信号のような）他のタイプのエンコードされた信号と間違われないように、又はその逆にならないように、マルチメディアファイル内でフォーマットされることが重要である。さらに、マルチメディアファイルは、ボックスとして識別される一連のオブジェクトである。すべてのデータは、ボックスに記憶され、マルチメディアファル内に記憶される他のデータは存在しない。よって、マルチメディアファイル内のエンコードされた信号は、マルチメディアファイルのボックスに記憶される。よって、実施形態によれば、エンコードされたハプティック信号は、標準的な“ｍｏｏｖ”ボックス内の別の“ｔｒａｋ”ボックス内に、オーディオ及びビデオのために存在する他のｔｒａｋボックスと共に記憶される。以下の表は、ハプティックボックス構造を示す。
【表１】
2014204445.tif 000003
【００４１】
実施形態によれば、別の“ｈａｐｔ”ボックスは、エンコードされたハプティック信号が、オーディオ又はビデオのような他のタイプのメディアとして表現されないことを確実にするために、エンコードされた信号がハプティック信号であることを示すことができる。また、エンコードされたハプティック信号が他のタイプのメディアとして表現されないことをさらに確実にするために、エンコードされたハプティック信号は、時限メタデータトラック（つまり、“ｍｅｔａ”）として示さうる。これは、“ｈｄｌｒ”ボックスにおいて、ｈａｎｄｌｅｒ＿ｔｙｐｅフィールドを“ｍｅｔａ”の値に設定することにより行うことができる。時限メタデータトラックは、時間基準のメディアデータを記憶するように構成される。このタイプのトラックにエンコードされたハプティック信号を記憶することは、エンコードされたハプティック信号がメディアとして考慮されることを可能にするが、オーディオフォーマット又はビデオフォーマットのようなハプティックフォーマットではないフォーマットであるメディアフォーマットとしては考慮されない。よって、エンコードされたハプティック信号のための時限メタデータストリームを特定することは、エンコードされたハプティック信号のフォーマットが、エンコードされたオーディオ信号又はエンコードされたビデオ信号のような他のタイプのエンコードされた信号のフォーマットと同様であるにもかかわらず、再生中に、エンコードされたハプティック信号が、オーディオ又はビデオのような他のタイプのメディアとして表現されないことを確実にすることができる。
【００４２】
図６は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のオーディオコンポーネントのためのハンドラーボックス構造６００を示す。実施形態によれば、エンコードされたマルチメディア信号は、エンコードされたオーディオ信号であるオーディオコンポーネントを含む。エンコードされたオーディオ信号は、マルチメディアファイル内のｔｒａｋボックス内に記憶される。さらに、ｔｒａｋボックスは、ハンドラーボックス構造６００を有するｈａｎｄｌｅｒ  （又は“ｈｄｌｒ”）ボックスを含む。ハンドラーボックス構造６００は、トラックがサウンドトラックである“ｓｏｕｎ”の値を有するｈａｎｄｌｅｒＴｙｐｅフィールド６１０を含む。
【００４３】
図７は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のビデオコンポーネントのためのハンドラーボックス構造を示す。実施形態によれば、エンコードされたマルチメディア信号は、エンコードされたビデオ信号であるビデオコンポーネントを含む。エンコードされたビデオ信号は、マルチメディアファイル内のｔｒａｋボックス内に記憶される。さらに、ｔｒａｋボックスは、ハンドラーボックス構造７００を有するｈｄｌｒボックスを含む。ハンドラーボックス構造７００は、トラックがビデオトラックである“ｖｉｄｅ”の値を有するｈａｎｄｌｅｒＴｙｐｅフィールド７１０を含む。
【００４４】
図８は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のハプティックコンポーネントのためのハンドラーボックス構造を示す。実施形態によれば、エンコードされたマルチメディア信号は、エンコードされたハプティック信号であるハプティックコンポーネントを含む。エンコードされたハプティック信号は、マルチメディアファイル内のｔｒａｋボックス内に記憶される。さらに、ｔｒａｋボックスは、ハンドラーボックス構造８００を有するｈｄｌｒボックスを含む。ハンドラーボックス構造８００は、トラックがハプティックトラックである“ｍｅｔａ”の値を有するｈａｎｄｌｅｒＴｙｐｅフィールド８１０を含む。
【００４５】
図９は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のオーディオコンポーネント、ビデオコンポーネント及びハプティックコンポーネントのためのハンドラーボックス構造を示す。実施形態によれば、マルチメディア信号は、エンコードされたオーディオ信号であるオーディオコンポーネント、エンコードされたビデオ信号であるビデオコンポーネント、及びエンコードされたハプティック信号であるハプティックコンポーネントを含む。エンコードされたオーディオ信号は、マルチメディアファイル内のｔｒａｋボックス９１０内に記憶される。ｔｒａｋボックス９１０は、“ｍｉｎｆ”コンテナボックスの下の“ｓｍｈｄ”ボックス９１１を含み、ここで、ｓｍｈｄボックス９１１は、トラックがオーディオトラックであることを示すサウンドメディアヘッダーボックスである。エンコードされたビデオ信号は、マルチメディアファイル内のｔｒａｋボックス９２０内に記憶される。ｔｒａｋボックス９２０は、ｍｉｎｆコンテナボックスの下の“ｖｍｈｄ”ボックス９２１を含み、ここで、ｖｍｈｄボックス９２１は、トラックがビデオトラックであることを示すビデオメディアヘッダーボックスである。エンコードされたハプティック信号は、マルチメディアファイル内のｔｒａｋボックス９３０内に記憶される。ｔｒａｋボックス９３０は、ｍｉｎｆコンテナボックスの下の“ｎｍｈｄ”ボックス９３１を含み、ここで、ｎｍｈｄボックス９３１は、トラックがハプティックトラックであることを示すヌルメディアヘッダーボックスである。より具体的には、ｎｍｈｄボックス９３１は、トラックがオーディオトラック又はビデオトラックではないが、ハプティックトラックとして解釈されうることを示すことができる。
【００４６】
さらに、前述したように、上述した表に示されるハプティックボックス構造のようなハプティックボックス構造内には、サンプルテーブルボックス（つまり、“ｓｔｂｌ”ボックス）が存在する。Ｓｔｂｌボックス下では、サンプルディスクリプションボックス（つまり、“ｓｔｓｄ”ボックス）が存在する。ｓｔｓｄボックス下では、トラックのフォーマットは特定されることができる。ハプティックトラックについては、前述したように、ｈａｐｔボックスが定義されることができ、ここで、ｈａｐｔボックスは、時限メタデータトラックが、エンコードされたハプティック信号を含むことを示す。特定の実施形態では、“ｍｅｔａ”  ｈａｎｄｌｅｒ  ｔｙｐｅは、実装されるＭｅｔａＤａｔａＳａｍｐｌｅＥｎｔｒｙクラスを必要とするが、ＭｅｔａＤａｔａＳａｍｐｌｅＥｎｔｒｙクラスは、新たなサブクラスによって拡張されうる空のクラスとして定義されうる。さらに、任意のハプティック特定データは、以下にさらに詳細に説明されるような“ｅｓｄｓ”ボックスとして記憶されうる。
【００４７】
また、トラック持続期間及びタイムスケールのような任意のタイミングデータは、“ｍｄｈｄ”ボックスに存在することができ、ここで、ｍｄｈｄボックスは、ハプティックトラックの全体の持続期間及びタイムスケールを記述する。“タイムスケール（ｔｉｍｅｓｃａｌｅ）”は、１秒で通過する複数の時間単位を含む３２ビットの符号なし整数である。例えば、ハプティックトラックが毎秒５０サンプルの更新レートを有する場合、タイムスケールは、５０に設定される。“持続期間（ｄｕｒａｔｉｏｎ）”は、タイムスケールのスケールのハプティックトラックの長さを宣言する６４ビットの符号なし整数である。例えば、タイムスケールが５０の値に設定された場合、どのサンプルも２０ミリ秒の長さを有する。ハプティックトラックが５秒の長さである場合、持続期間は、２５０（つまり、５＊１０００／２０）の値を有するべきである。
【００４８】
さらに、前述したように、上述した方に示されたハプティックボックス構造のようなハプティックボックス構造内には、ｈａｐｔコンテナボックスの下にある子のボックスは、基本的なストリームディスクリプションボックス（つまり、“ｅｓｄｓ”ボックス）であり、ＥＳ＿Ｄｅｓｃｒｉｐｔｏｒとも呼ばれる。ハプティックに適用した時、このボックスは、ストリームが存在するｔｒａｋボックスと関連付けられたストリームをデコードするために必要な情報を含む。
【００４９】
実施形態によれば、ＥＳ＿Ｄｅｓｃｒｉｐｔｏｒ  ｂｏｘは、ＤｅｃｏｄｅｒＣｏｎｆｉｇＤｅｓｃｒｉｐｔｏｒ構造を含み、これは、基本的なストリームを解析及び読み出すためのパラメータ及び前提条件を含む。ＤｅｃｏｄｅｒＣｏｎｆｉｇＤｅｓｃｒｉｐｔｏｒ内には、ｏｂｊｅｃｔＰｒｏｆｉｌｅＩｎｄｉｃａｔｉｏｎ値及びＤｅｃｏｄｅｒＳｐｅｃｉｆｉｃＩｎｆｏ構造のためのフィールドが存在する。ｏｂｊｅｃｔＰｒｏｆｉｌｅＩｎｄｉｃａｔｉｏｎ値は、ストリームのためのオブジェクトプロファイルタイプを提供する。フィールドは、０×Ｃ０から０×ＦＥの間の値に設定されることができ、ユーザが提供するオブジェクトプロファイルタイプは、ｈａｐｔボックス構造内で用いられるとき、ハプティックタイプとして知られることができる。図１０及び１１と共に以下により詳細に説明されるように、実施形態によれば、オブジェクトプロファイルタイプとして０×Ｃ０から０×ＦＥの間の値を用いて、ｈａｐｔボックスを含むｔｒａｋボックス構造だけが、有効なハプティックストリームとみなされる。ＤｅｃｏｄｅｒＳｐｅｃｉｆｉｃＩｎｆｏ構造は、ｏｂｊｅｃｔＰｒｏｆｉｌｅＩｎｄｉｃａｔｉｏｎ値に基づいて、他のクラスにより拡張されるアブストラクトクラスである。一実施形態では、この構造は、エンコードされたハプティック信号が生成される、信号タイプ及びハプティック出力装置（例えば、アクチュエータ）のようなハプティック特定データを含むＨａｐｔｉｃＳｐｅｃｉｆｉｃＣｏｎｆｉｇクラスにより拡張されることができる。ＨａｐｔｉｃＳｐｅｃｉｆｉｃＣｏｎｆｉｇクラスは、以下にさらに詳細に説明される。
【００５０】
図１０は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のハプティックコンポーネントのための有効なオブジェクトプロファイルタイプを示す。実施形態によれば、エンコードされたマルチメディア信号は、エンコードされたハプティック信号であるハプティックコンポーネントを含む。さらに、ハプティックボックス構造１０００は、エンコードされたマルチメディア信号を記憶するマルチメディアファイルのために定義される。ハプティックボックス構造１０００は、０ｘＣ０から０ｘＦＥの範囲内の値を有するｏｂｊｅｃｔＰｒｏｆｉｌｅＩｎｄｉｃａｔｉｏｎフィールド１０１０を含む。ｏｂｊｅｃｔＰｒｏｆｉｌｅＩｎｄｉｃａｔｉｏｎフィールド１０１０の値が有効な範囲内にあるため、エンコードされたハプティック信号を含むトラックは、有効なハプティックトラックと見なされる。
【００５１】
図１１は、本発明の一実施形態に係る、エンコードされたマルチメディア信号のハプティックコンポーネントのための有効ではないオブジェクトプロファイルタイプを示す。実施形態によれば、エンコードされたマルチメディア信号は、エンコードされたハプティック信号であるハプティックコンポーネントを含む。さらに、ハプティックボックス構造１１００は、エンコードされたマルチメディア信号を記憶するマルチメディアファイルのために定義される。ハプティックボックス構造１１００は、０ｘ４０の値を有するｏｂｊｅｃｔＰｒｏｆｉｌｅＩｎｄｉｃａｔｉｏｎフィールド１１１０を含む。ｏｂｊｅｃｔＰｒｏｆｉｌｅＩｎｄｉｃａｔｉｏｎフィールド１１１０の値が有効な範囲内にないため、エンコードされたハプティック信号を含むトラックは、有効なハプティックトラックと見なされない。
【００５２】
メディアプレーヤーアプリケーション及びメディア編集アプリケーションは、一般的に、マルチメディアファイルの基本的なストリームディスクリプションボックスのコンフィグレーション情報を必要とし、ここで、コンフィグレーション情報は、デコード処理のために必要である。よって、ＤｅｃｏｄｅｒＣｏｎｆｉｇＤｅｓｃｒｉｐｔｏｒは、ＤｅｃｏｄｅｒＳｐｅｃｉｆｉｃＩｎｆｏアブストラクトクラスのサブクラスを含みうる。本発明の実施形態によれば、ハプティックストリームについては、ＤｅｃｏｄｅｒＳｐｅｃｉｆｉｃＩｎｆｏアブストラクトクラスは、ＨａｐｔｉｃＳｐｅｃｉｆｉｃＣｏｎｆｉｇクラスにより拡張されることができる。ＨａｐｔｉｃＳｐｅｃｉｆｉｃＣｏｎｆｉｇは、ｏｂｊｅｃｔＴｙｐｅＩｎｄｉｃａｔｉｏｎ値及びｓｔｒｅａｍＴｙｐｅ値が、それぞれ０ｘＣ０及び０ｘ２０であるときに、アブストラクトクラスＤｅｃｏｄｅｒＳｐｅｃｉｆｉｃＩｎｆｏを拡張されることができ、これは、ストリームがハプティックデータを含むことを示す。ＨａｐｔｉｃＳｐｅｃｉｆｉｃＣｏｎｆｉｇクラスの例示的な構文は、以下の表に示される。
【表２】
2014204445.tif 000004
【表３】
2014204445.tif 000005
【表４】
2014204445.tif 000006
【表５】
2014204445.tif 000007
【表６】
2014204445.tif 000008
【表７】
2014204445.tif 000009
【表８】
2014204445.tif 000010
【００５３】
実施形態によれば、エンコードされたハプティック信号は、マルチメディアフィル内のエンコードされたオーディオ信号及び／又はエンコードされたビデオ信号とインターリーブ又は合成される。より具体的には、エンコードされたオーディオ信号を含むストリームは、サウンドタイプのものであるｔｒａｋオブジェクトと関連付けられうる。さらに、エンコードされたビデオ信号を含むストリームは、ビデオタイプのものであるｔｒａｋオブジェクトと関連付けられうる。また、エンコードされたハプティック信号を含むストリームは、時限メタデータタイプのものであるｔｒａｋオブジェクトと関連付けられうる。これらのストリームは、ボックス構造においてｍｏｏｖボックスと同じレベルに存在する“ｍｄａｔ”ボックスにインターリーブ又は合成されうる。ｍｄａｔボックスは、メディア編集アプリケーション又はメディアプレーヤーアプリケーションが構文解析し、デコードされ、表現する実際のデータを含む。インターリーブされたデータボックスからエンコードされたハプティック信号を抽出し、エンコードされたハプティック信号をデコードする際に、メディア編集アプリケーション又はメディアプレーヤーアプリケーションは、サンプルテーブル内のエンコードされたハプティック信号のチャンク又は部分へのオフセットを参照することができる。
【００５４】
図１２は、本発明の一実施形態に係る、（図１のオフラインハプティック変換モジュール１６のような）オフラインハプティック変換モジュールの機能のフロー図を示す。フローは開始し、１２１０へ進む。１２１０では、入力は、ソースから受信される。特定の実施形態では、入力は、オーディオ信号の少なくとも一部、ビデオ信号の少なくとも一部、又はオーディオ信号及びビデオ信号の両方を含むマルチメディア信号の少なくとも一部の１つであることができる。さらに、特定の実施形態では、ソースは、マルチメディアファイルである。ソースがマルチメディアファイルである実施形態では、入力信号は、マルチメディアファイルから抽出されることができ、入力信号は、デコードされることができる。その後、フローは１２２０へ進む。
【００５５】
１２２０では、入力は、一又はそれ以上のハプティック信号へ変換される。特定の実施形態では、入力信号は、ソースから抽出され、入力信号は、一又はそれ以上のハプティック信号へ変換される。別の実施形態では、入力信号の一又はそれ以上の部分は、ソースから抽出され、入力信号の一又はそれ以上の部分は、一又はそれ以上のハプティック信号へ変換される。さらに、特定の実施形態では、入力を一又はそれ以上のハプティック信号へ変換することは、入力の再生前に実行されうる。その後、フローは１２３０へ進む。
【００５６】
１２３０では、一又はそれ以上のハプティック信号は、エンコードされる。その後、フローは１２３０へ進む。
【００５７】
１２４０では、一又はそれ以上のハプティック信号は記憶される。特定の実施形態では、一又はそれ以上のハプティック信号は、ソース内に記憶されることができ、ここで、一又はそれ以上のハプティック信号は、ソースのコンテナ内の入力と合成される。別の実施形態では、一又はそれ以上のハプティック信号は、別のファイル又はストリームに記憶されることができる。その後、フローは１２５０へ進む。
【００５８】
１２５０では、一又はそれ以上のハプティック信号は抽出される。一又はそれ以上のハプティック信号がソース内に記憶される実施形態では、一又はそれ以上のハプティック信号は、ソース内に記憶される入力から抽出されることができる。一又はそれ以上のハプティック信号が別のファイル又はストリーム内に記憶される実施形態では、一又はそれ以上のハプティック信号は、別のファイル又はストリーム内に記憶される入力から抽出されることができる。その後、フローは１２６０へ進む。
【００５９】
１２６０では、一又はそれ以上のハプティック信号はデコードされる。その後、フローは１２７０へ進む。
【００６０】
１２７０では、一又はそれ以上のハプティック効果は、一又はそれ以上のハプティック信号に基づいて生成される。特定の実施形態では、一又はそれ以上のハプティック信号は、一又はそれ以上のハプティック効果を生成するためにハプティック出力装置へ送信されることができる。これらの実施形態のいくつかでは、ハプティック出力装置は、アクチュエータである。さらに、これらの実施形態のいくつかでは、一又はそれ以上のハプティック信号は、それぞれ、一又はそれ以上の大きさ値のシーケンスを含むことができ、ハプティックフレームレートは、毎秒ハプティック出力装置へ送信される一又はそれ以上の大きさ値のシーケンスの一部を定義するように構成されうる。その後、フローは１２８０へ進む。
【００６１】
１２８０では、一又はそれ以上のハプティック効果は、関連付けられたメディアから一又はそれ以上の効果と同期される。特定の実施形態では、関連付けられたメディアは、入力でありうる。これらの実施形態のいくつかでは、関連付けられたメディアからの一又はそれ以上の効果は、入力に基づいて又は入力により生成される一又はそれ以上の効果でありうる。その後、フローは終了する。
【００６２】
よって、一実施形態では、システムは、オーディオ信号のような入力信号をハプティック信号に“オフライン”で変換することができる。そして、ハプティック信号は、マルチメディアファイルに埋め込まれることができ、ここで、ハプティック信号は、マルチメディアファイル内に含まれるオーディオ信号及びビデオ信号と合成されることができる。そして、ハプティック信号を用いて生成されるハプティック効果は、オーディオ信号を用いて生成されるオーディオ効果及びビデオ信号を用いて生成されるビデオ効果と同期されることができる。オーディオ効果及びビデオ効果を有するハプティック効果の同期は、ユーザのマルチメディアファイルのための追加レイヤーのエンターテインメントを提供することができる。よって、システムは、マルチメディアファイル内に含まれるマルチメディア信号のためのハプティック効果を生成するために、ユーザに素早くかつ簡易な手法を提供することができる。システムは、ハプティック出力装置にハプティック効果を表現するための信頼性の高い手法を提供することもできる。
【００６３】
本明細書を通して記載された本発明の特徴、構造、又は特性は、１つ以上の実施形態において任意の適切な方法において組み合わされてよい。例えば、「一実施形態」、「一部の実施形態」、「特定の実施形態」、「特定の実施形態（複数）」、又は他の類似の言語の使用は、本明細書を通じて、実施形態に関連して記載された特定の特徴、構造、又は特性が、本発明の少なくとも１つの実施形態に含まれ得るという事実に言及している。従って、「一実施形態」、「一部の実施形態」、「特定の実施形態」、「特定の実施形態（複数）」の言い回し、又は他の類似の言語の登場は、これら全てが、実施形態の同じ群のことを必ずしも言及しているのではなく、記載された特徴、構造、又は特性は、１つ以上の実施形態において任意の適切な方法において組み合わされてよい。
【００６４】
当業者は、上述した発明が、異なる順序におけるステップを用いて実施されてよく、及び／又は、記載された構成とは異なる構成における要素を用いて実施されてよいことを容易に理解する。それゆえ、本発明はこれらの好ましい実施形態に基づいて記載されているけれども、特定の修正、変更、及び代替の構成が明白であり、他方で本発明の趣旨及び範囲内にあることは、当業者にとって明白である。本発明の境界を決定するために、それゆえ、添付の特許請求の範囲に参照がなされるべきである。
【図１】
2014204445.tif 000011
【図１２】
2014204445.tif 000012
【図２】
2014204445.tif 000013
【図３】
2014204445.tif 000014
【図４】
2014204445.tif 000015
【図５】
2014204445.tif 000016
【図６】
2014204445.tif 000017
【図７】
2014204445.tif 000018
【図８】
2014204445.tif 000019
【図９】
2014204445.tif 000020
【図１０】
2014204445.tif 000021
【図１１】
2014204445.tif 000022
【外国語明細書】
2014204445000001.pdf
2014204445000002.pdf
2014204445000003.pdf
2014204445000004.pdf