特許第6391724号(P6391724)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ イマージョン コーポレーションの特許一覧

特許6391724波形を利用した音響−触覚効果変換システム
<>
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000002
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000003
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000004
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000005
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000006
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000007
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000008
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000009
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000010
  • 特許6391724-波形を利用した音響−触覚効果変換システム 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6391724
(24)【登録日】2018年8月31日
(45)【発行日】2018年9月19日
(54)【発明の名称】波形を利用した音響−触覚効果変換システム
(51)【国際特許分類】
   G06F 3/01 20060101AFI20180910BHJP
   G10L 21/06 20130101ALI20180910BHJP
【FI】
   G06F3/01 560
   G10L21/06
【請求項の数】6
【外国語出願】
【全頁数】18
(21)【出願番号】特願2017-7414(P2017-7414)
(22)【出願日】2017年1月19日
(62)【分割の表示】特願2012-27803(P2012-27803)の分割
【原出願日】2012年2月10日
(65)【公開番号】特開2017-68874(P2017-68874A)
(43)【公開日】2017年4月6日
【審査請求日】2017年1月23日
(31)【優先権主張番号】13/366,010
(32)【優先日】2012年2月3日
(33)【優先権主張国】US
【前置審査】
(73)【特許権者】
【識別番号】500390995
【氏名又は名称】イマージョン コーポレーション
【氏名又は名称原語表記】IMMERSION CORPORATION
(74)【代理人】
【識別番号】100116872
【弁理士】
【氏名又は名称】藤田 和子
(72)【発明者】
【氏名】バティア サトヴァー シン
(72)【発明者】
【氏名】ガンディ カナフ
(72)【発明者】
【氏名】ウルリッヒ ジェイ. クリストファー
(72)【発明者】
【氏名】クルス−エルナンデス フアン マヌエル
(72)【発明者】
【氏名】ティモネ トゥー エルヴェ
(72)【発明者】
【氏名】ラウ ホイ フン ジェイソン
【審査官】 鈴木 大輔
(56)【参考文献】
【文献】 特開平11−196497(JP,A)
【文献】 特開平10−098344(JP,A)
【文献】 特表平10−506508(JP,A)
【文献】 国際公開第2011/059703(WO,A1)
【文献】 特表2005−506613(JP,A)
【文献】 特開2003−099177(JP,A)
【文献】 特開2008−283305(JP,A)
【文献】 特開2011−141890(JP,A)
【文献】 特開平11−296126(JP,A)
【文献】 国際公開第2010/054014(WO,A1)
【文献】 国際公開第2010/085575(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
3/048 − 3/0489
3/16
G10L 13/00 − 99/00
(57)【特許請求の範囲】
【請求項1】
非一過性のコンピュータ可読媒体であって、プロセッサによって実行された場合に、前記プロセッサに、オーディオ信号を1つ以上の触覚効果に変換させる命令を前記非一過性のコンピュータ可読媒体内に保存させた、非一過性のコンピュータ可読媒体であって、前記変換は、
前記オーディオ信号のサンプルのセットを受信する工程と、
前記オーディオ信号の前記サンプルのセットの最大振幅値を決定する工程と、
前記オーディオ信号の前記サンプルのセットに基づいて触覚信号を生成する工程であって、前記生成する工程は、0〜500Hzの範囲に限定された周波数成分を有する変換された1セットのサンプルを生成するために、前記サンプルのセットを周波数フィルタリングすることによって前記オーディオ信号の前記サンプルのセットを変換する工程を含み、 前記触覚信号は、前記変換されたサンプルのセットに基づいて生成される、工程と、
前記最大振幅値が特定の閾値よりも大きいかどうかを決定する工程と、
前記最大振幅値が前記特定の閾値よりも大きいと決定したことに応答して、前記1つ以上の触覚効果を生成するために、前記触覚信号をアクチュエータに送信する工程と、
前記最大振幅値が前記特定の閾値より大きくないと決定したことに応答して、前記触覚信号を前記アクチュエータに送ることを控える工程と、
を含む、非一過性のコンピュータ可読媒体。
【請求項2】
前記サンプルのセットは、前記オーディオ信号のデータフレームの一部であり、前記変換されたサンプルのセットは、変換されたデータフレームの一部であり、
前記触覚信号を前記生成する工程はさらに、前記変換されたデータフレームを正弦波に加えて、変調されたデータフレームを生成する工程を含む、請求項に記載の非一過性のコンピュータ可読媒体。
【請求項3】
前記触覚信号を前記生成する工程はさらに、前記変調されたデータフレームを正規化する工程を含む、請求項に記載の非一過性のコンピュータ可読媒体。
【請求項4】
前記変調されたデータフレームが、少なくともある程度、前記触覚信号を規定する、請求項に記載の非一過性のコンピュータ可読媒体。
【請求項5】
前記触覚信号を前記生成する工程はさらに、前記データフレームを変換する前に、前記データフレームをリサンプリングする工程を含む、請求項2に記載の非一過性のコンピュータ可読媒体。
【請求項6】
前記触覚信号を前記生成する工程はさらに、前記データフレームが変換された後に、前記データフレーム内に含まれる前記オーディオ信号をブーストする工程を含む、請求項2に記載の非一過性のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、2011年2月11日に出願の米国仮特許出願第61/441,792号の優先権を主張し、その開示は本明細書により参照することにより援用される。
【0002】
一実施形態は、一般にデバイス、より詳細には、触覚効果を生成するデバイスに関する。
【背景技術】
【0003】
ハプティクス(触覚学)は、触覚フィードバック効果(すなわち「触覚(ハプティック)効果」、例えば力、振動、および動きなどをユーザに付与することによって、ユーザが感じる接触を利用する触知性および力フィードバック技術である。モバイルデバイス、タッチスクリーンデバイス、およびパーソナルコンピュータ等のデバイスは触覚効果を生成するように構成できる。一般に、触覚効果を生成することができる内蔵のハードウェア(例えばアクチュエータ)へのコールは、デバイスのオペレーティングシステム(「OS」)内でプログラミング可能である。これらのコールは、どの触覚効果を生じさせるかを特定する。例えば、ユーザが、例えばボタン、タッチスクリーン、レバー、ジョイスティック、ホイール、または一部の他の制御装置を用いてデバイスと対話する場合、デバイスのOSは制御回路を介してプレイコマンドを内蔵のハードウェアに送信することができる。内蔵のハードウェアは次いで適切な触覚効果を生成する。
【0004】
このようなデバイスはまた、例えばデジタルオーディオ信号等のオーディオデータを再生するように構成できる。例えばそのようなデバイスは、オーディオ部分、または例えば曲などのオーディオデータを含む動画またはビデオゲーム等のビデオデータを再生するように構成されたアプリケーションを含み得る。ハプティクスと類似して、音響効果を生成することができる追加の内蔵ハードウェア(例えばスピーカ)へのコールは、デバイスのOS内にプログラミングされ得る。このように、デバイスのOSは、制御回路を介して、追加の内蔵のハードウェアにプレイコマンドを送信することができ、ここで追加の内蔵のハードウェアは次いで適切な音響効果を生成する。
【発明の概要】
【課題を解決するための手段】
【0005】
一実施形態は、オーディオ信号を1つ以上の触覚効果に変換するシステムである。システムはオーディオ信号のデータフレームを受信する。システムはデータフレームの最大値をさらに生成する。システムは、データフレームをさらに変換する。システムは、変換されたデータフレームの最大値に基づいて少なくとも1つの正弦キャリア波形をさらに生成する。システムは、変換されたデータフレームと、少なくとも1つの正弦キャリア波形とをさらにミキシングして、変調されたデータフレームを生成する。システムは、最大値および変調されたデータフレームに基づいて触覚信号をさらに生成する。システムは、アクチュエータに触覚信号をさらに送信して、1つ以上の触覚効果を生成する。
【0006】
さらなる実施形態、詳細、利点、および修正が、添付の図面に関連して考慮された好ましい実施形態の以下の詳細な記載から明らかとなる。
【図面の簡単な説明】
【0007】
図1図1は、本発明の一実施形態に係る触覚変換システムのブロック図を示す。
図2図2は、本発明の一実施形態に係る触覚変換システムのアーキテクチャの図を示す。
図3図3は、本発明の一実施形態に係る触覚変換システムによって実行される機能性のフロー図を示す。
図4図4は、本発明の一実施形態に係る、出力値の範囲をコントロールするように適合された線形変換関数を示す。
図5図5は、本発明の一実施形態に係るデジタルオーディオ信号に基づいて生成された触覚効果の大きさの例示的な計算を示す。
図6図6は、本発明の一実施形態に係るデジタルオーディオ信号のエンベロープの例示的な計算を示す。
図7図7は、本発明の一実施形態に係る、周波数コンテンツに基づくデジタルオーディオ信号のエンベロープの例示的な計算を示す。
図8A図8Aは、本発明の一実施形態に係る、デジタルオーディオ信号がフィルタリングされる前の、デジタルオーディオ信号の振幅スペクトルの例示的な計算を示す。
図8B図8Bは、本発明の一実施形態に係る、デジタルオーディオ信号がフィルタリングされた後の、デジタルオーディオ信号の振幅スペクトルの例示的な計算を示す。
図9図9は、本発明の一実施形態に係る触覚変換モジュールの機能性のフロー図を示す。
【発明を実施するための形態】
【0008】
一実施形態は、例えばデジタルオーディオ信号等のオーディオデータの1つ以上のフレームをインターセプトし、1つ以上のフレームを変換(トランスフォーム)し、1つ以上の変換されたフレームを触覚信号に変換(コンバート)し、生成された触覚信号をアクチュエータを介して再生して、1つ以上の触覚効果を生成することができる触覚変換システムである。触覚信号は波形を含むことができ、ここで波形は、パルス符号変調(「PCM」)における1つ以上の信号の値のセットである。触覚信号は、波形を受信するように構成された1つのタイプのアクチュエータに付与可能であり、ここでアクチュエータは1つ以上の触覚効果を生成するために波形を利用することができる。
【0009】
図1は、本発明の一実施形態に係る触覚変換システム10のブロック図を示す。一実施形態において、システム10はモバイルデバイスの一部であり、システム10は、モバイルデバイスのための触覚変換機能を提供する。単一のシステムとして示されているが、システム10の機能は分散型のシステムとして実施可能である。システム10は、情報を通信するためのバス12または他の通信メカニズム、および情報を処理するためにバス12に接続されたプロセッサ22を含む。プロセッサ22は、任意のタイプの汎用プロセッサまたは特定用途向けプロセッサであってもよい。システム10は、プロセッサ22によって実行される情報および命令を保存するためのメモリ14をさらに含む。メモリ14は、ランダムアクセスメモリ(「RAM」)、読み出し専用メモリ(「ROM」)、磁気ディスクまたは光学ディスク等の静的記憶装置、あるいは任意の他のタイプのコンピュータ可読媒体の任意の組み合わせから構成されることができる。
【0010】
コンピュータ可読媒体は、プロセッサ22によってアクセス可能である任意の利用可能な媒体であってよく、揮発性および不揮発性の媒体両方、取り外し可能および取り外しが可能でない媒体、通信媒体、ならびに保存媒体を含んでよい。通信媒体は、コンピュータ可読命令、データストラクチャ、プログラムモジュール、または搬送波または他の搬送メカニズム等の変調されたデータ信号における他のデータを含んでよく、当該技術分野において公知である情報送達媒体の任意の他の形態を含んでよい。保存媒体は、RAM、フラッシュメモリ、ROM、消去可能PROM(「EPROM」)、電気的消去可能・プログラム可能型読み取り専用メモリ(「EEPROM」)、レジスタ、ハードディスク、リムーバブルディスク、コンパクトディスク読み取り専用メモリ(「CD−ROM」)、あるいは当該技術分野において公知である保存媒体の任意の他の形態を含んでよい。
【0011】
一実施形態において、メモリ14は、プロセッサ22によって実行された場合に機能を提供するソフトウェアモジュールを保存する。モジュールは、システム10、および一実施形態において、モバイルデバイスの残りのためのオペレーティングシステム機能を提供するオペレーティングシステム15を含む。モジュールは、以下でさらに詳細に開示するように、オーディオ信号を、1つ以上の触覚効果を生成するために用いられる触覚信号に変換する触覚変換モジュール16をさらに含む。特定の実施形態において、触覚変換モジュール16は、複数のモジュールを含むことができ、それらの各々は、オーディオ信号を、1つ以上の触覚効果を生成するために用いられる触覚信号に変換するための特定の個々の機能を提供することができる。システム10は、通常は、Immersion CorporationによるMOTIV(登録商標)ハプティック開発プラットフォーム等のさらなる機能性を含むために、1つ以上のさらなる追加のアプリケーションモジュール18を含む。
【0012】
リモートソースからデータを送信および/または受信する実施形態において、システム10は、例えば赤外線、無線、Wi−Fi、セルラーネットワーク、または他の次世代無線データネットワーク通信等のモバイルワイヤレスネットワークを提供するために、ネットワークインターフェースカード等の通信デバイス20をさらに含む。他の実施形態において、通信デバイス20はイーサネット(登録商標)通信またはモデム等の有線ネットワーク通信を提供する。
【0013】
プロセッサ22は、グラフィック表示またはユーザインターフェースをユーザに表示するための液晶ディスプレイ(「LCD」)等のディスプレイ24に、バス12を介してさらに接続される。ディスプレイ24は、プロセッサ22から信号を送信および受信するように構成されたタッチスクリーン等のタッチセンサ式入力デバイスであってよい。
【0014】
システム10は1つ以上のアクチュエータ26をさらに含む。プロセッサ22は、触覚効果に関連付けられた触覚信号をアクチュエータ26に送信してよく、次いでこのアクチュエータ26は触覚効果を出力する。アクチュエータ26は、例えば、電気モータ、電磁アクチュエータ、音声コイル、形状記憶合金、電気活性ポリマー、ソレノイド、偏心回転質量モータ(「ERM」)、リニア共振アクチュエータ(「LRA」)、圧電アクチュエータ、高帯域幅アクチュエータ、電気活性高分子(「EAP」)アクチュエータ、静電摩擦ディスプレイ(electrostatic friction display)、または超音波振動生成器であってよい。
【0015】
一部の実施形態において、システム10は、1つ以上のスピーカ28をさらに含む。プロセッサ22は、オーディオ信号をスピーカ28に送信してよく、次いでオーディオ効果を出力してよい。スピーカ28は、例えば、ダイナミックラウドスピーカ、エレクトロダイナミックラウドスピーカ、圧電ラウドスピーカ、リボンおよび平面マグネティックラウドスピーカ、曲げ波(bending wave)ラウドスピーカ、フラットパネルラウドスピーカ、ハイルエアモーション(heil air motion)トランスデューサ、プラズマアークスピーカ、およびデジタルラウドスピーカであってよい。
【0016】
図2は本発明の一実施形態に係る触覚変換システムのアーキテクチャの図を示す。図示の実施形態において、触覚変換システムはオーディオトラックモジュール210およびスピーカ220を含む。オーディオトラックモジュール210は、1つ以上のPCMオーディオバッファを受信し、1つ以上のPCMオーディオバッファをスピーカ220に流すように構成されたデバイス(例えばモバイルデバイス)のためのオペレーティングシステムのモジュールであり、ここで各PCMオーディオバッファは1つ以上のPCMオーディオデータフレームを含む。一実施形態において、オーディオトラックモジュール210は、モバイルデバイスのためのAndroid(登録商標)のオペレーティングシステムのAndroid Audio Trackモジュールである。スピーカ220は、1つ以上のPCMオーディオバッファを受信するように構成され、かつ1つ以上のオーディオ効果を出力するように構成されたスピーカである。スピーカ220は、例えば、ダイナミックラウドスピーカ、エレクトロダイナミックラウドスピーカ、圧電ラウドスピーカ、磁気歪みラウドスピーカ、静電ラウドスピーカ、リボンおよび平面磁気ラウドスピーカ、曲げ波ラウドスピーカ、フラットパネルラウドスピーカ、ハイルエアモーショントランスデューサ、プラズマアークスピーカ、およびデジタルラウドスピーカであってよい。
【0017】
触覚変換システムはまた、本実施形態によれば、触覚変換モジュール230を含む。特定の実施形態において、触覚変換モジュール230は、図1の触覚変換モジュール16と同じである。図示の実施形態において、触覚変換モジュール230は、3つのサブモジュール、すなわちリバーブモジュール231、ブームボックスモジュール232、およびバンドパスフィルタ233から構成される。しかしながら、これは単に例示的な実施形態であり、代替的な実施形態においては、触覚変換モジュール230は任意の数のサブモジュールから構成でき、あるいは触覚変換モジュール230は単一のモジュールであってもよい。
【0018】
本実施形態によれば、リバーブモジュール231は、オーディオトラックモジュール210がスピーカ220に流す1つ以上のオーディオバッファをインターセプトするように構成される。リバーブモジュール231はさらに、各オーディオバッファの各オーディオデータフレームをブームボックスモジュール232に送信するように構成される。ブームボックスモジュール232は各オーディオデータフレームを解析し、かつ各オーディオデータフレームについて最大値を計算するように構成される。各オーディオデータフレームについての最大値の計算は、ブームボックスモジュール232によって実行され、図4図7に関連してさらに詳細に記載される。ブームボックスモジュール232は、各オーディオデータフレームについての最大値をリバーブモジュール231に戻すようにさらに構成される。
【0019】
ブームボックスモジュール232は、各オーディオバッファの各オーディオデータフレームをバンドパスフィルタ233に送信するようにさらに構成される。バンドパスフィルタ233は、各オーディオバッファの各オーディオデータフレームをバンドパスフィルタに介するように構成される。各オーディオデータフレームをバンドパスフィルタに介すことにより、バンドパスフィルタ233は、特定のオーディオバッファ(例えば、0〜500Hzの範囲における周波数信号の単一の周波数帯域など)における任意の特定の範囲の周波数信号の1つ以上の周波数帯域にフィルタリングすることができる。このように、この周波数範囲内の全ての信号は、これらの信号のみの新しいオーディオバッファを生成するために抽出可能である。このフィルタリングから生じる効果は、信号の「バスブースト」または「サブウーハー」タイプであってよい。バンドパスフィルタ233は、各バンドパスフィルタを介したオーディオデータフレームをブームボックスモジュール232に戻すようにさらに構成される。代替的な実施形態において、バンドパスフィルタ233はフィルタではなく、変換モジュール(例えばデジタル信号プロセッサ(「DSP」)プロセス、状態機械、または他の種類のプログラムのロジックである。これらの代替の実施形態において、変換モジュールは、受信されるオーディオデータフレームを新しいオーディオデータフレームに変換することができ、ここで変換は必ずしもフィルタリング変換ではない。
【0020】
ブームボックスモジュール232は、各バンドパスフィルタを介したオーディオデータフレームについて、バンドパスフィルタを介したオーディオデータフレームの最大値に基づいて、正弦波の周期的なキャリア周波数(また、「正弦キャリア波形」としても同定される)を生成するようにさらに構成される。正弦波の周期的なキャリア周波数の生成は、図3に関連してさらに詳細に記載される。代替的な実施形態において、ブームボックスモジュール232は、複数の正弦波の周期的な周波数を生成するようにさらに構成できる。各バンドパスフィルタを介したオーディオデータフレームについて、ブームボックスモジュール232は、生成された正弦波の周期的なキャリア周波数をバンドパスフィルタを介したオーディオデータフレームに加えるようにさらに構成され(生成された正弦波の周期的なキャリア周波数と、バンドパスフィルタを介したオーディオデータフレームとをミキシングすることとしても同定される)、こうしてバンドパスフィルタを介したオーディオデータフレームを変調する。ブームボックスモジュール232は、各変調されたオーディオデータフレームをリバーブモジュール231に戻すようにさらに構成される。
【0021】
触覚変換システムはまた、触覚効果プレーヤモジュール240およびアクチュエータ250を含む。触覚プレーヤモジュール240は、デバイス内に内蔵されたモジュール(例えばモバイルデバイス)であり、かつ、1つ以上の触覚信号をアクチュエータに送信することによって、アクチュエータに1つ以上の触覚効果を再生するように構成されたモジュールである。一実施形態において、触覚効果プレーヤモジュール240は、Immersion CorporationによるTouchSense Player(登録商標)モジュールである。アクチュエータ250は、1つ以上の触覚信号を受信するように構成され、かつ1つ以上の触覚効果を出力するように構成されたアクチュエータである。特定の実施形態において、アクチュエータ250は、波形を受信するように構成されたアクチュエータであり、ここで波形は、アクチュエータを介して再生された場合、波形の効果のマグニチュード(大きさ)および精度(プレシジョン、適合率)を制御するために用いられる。アクチュエータ250は、例えば、圧電アクチュエータ、高帯域幅アクチュエータ、またはEAPアクチュエータであってよい。
【0022】
本実施形態によれば、リバーブモジュール231は、各オーディオデータフレームの各最大値が特定の閾値よりも高いかどうかを決定するように構成される。オーディオデータフレームの最大値が特定の閾値よりも高い場合、リバーブモジュール231は、触覚効果プレーヤモジュール240のアプリケーションプログラムインターフェース(「API」)をコールし、触覚効果プレーヤモジュールジュール240に、対応する変調されたオーディオデータフレームをAPIのパラメータとして送信するように構成される。オーディオデータフレームの最大値が特定の閾値よりも高くない場合、リバーブモジュール231は、オーディオデータフレームを無視し、触覚効果プレーヤモジュール240に、対応する変調されたオーディオデータフレームを送信しないように構成される。特定の実施形態において、触覚効果プレーヤモジュール240のAPIは、Immersion CorporationによるTouchSense Player(登録商標)モジュールの「ImmVibeAppendWaveformEffect」のAPIである。他の実施形態において、APIは、「ImmVibePlayMagSweepEffect」または「ImmVibePlayPeriodicEffect」であってもよい。触覚効果プレーヤモジュール240のAPIは、変調されたオーディオデータフレームをアクチュエータ250に送信し、ここでアクチュエータ250は、変調されたオーディオデータフレームに基づいて適切な波形を再生(プレイ)するように構成される。本実施形態によれば、変調されたオーディオデータフレームは、アクチュエータ250によって再生される波形として働き、ここで波形は、周期的な触覚信号に加えて、強調された1つ以上の周波数帯を含み、かつ変調されたオーディオデータフレームは、アクチュエータ250によって再生された波形の精度を制御することができる。波形を再生することにより、アクチュエータ250は触覚効果を生成する。
【0023】
図3は、本発明の一実施形態に係る触覚変換システムによって実行される機能のフロー図を示す。一実施形態において、図3の機能性、および図9の機能性は、メモリまたは他のコンピュータ可読媒体、あるいは有形の媒体によって実施され、プロセッサによって実行される。他の実施形態において、機能性はハードウェア(例えば、特定用途向け集積回路(「ASIC」)、プログラマブルゲートアレイ(「PGA」)、フィールドプログラマブルゲートアレイ(「FPGA」)、等)によって実行されてもよく、あるいは、ハードウェアおよびソフトウェアの任意の組み合わせによって実行されてもよい。さらに、代替の実施形態において、機能性はアナログコンポーネントを用いてハードウェアによって実行されてもよい。
【0024】
本実施形態によれば、触覚変換システムは、オペレーティングシステム300、リバーブモジュール301、ブームボックスモジュール302、および無限インパルス応答(「IIR」)フィルタ303を含む。オペレーティングシステム300はデバイス(例えばモバイルデバイス)のオペレーティングシステムである。図示の実施形態において、オペレーティングシステム300は、モバイルデバイスのAndroid(登録商標)のオペレーティングシステムである。リバーブモジュール301、ブームボックスモジュール302、IIRフィルタ303は、触覚変換モジュール(例えば図1の触覚変換モジュール16等)のサブモジュールである。特定の実施形態において、リバーブモジュール301、ブームボックスモジュール302、およびIIRフィルタ303は、各々図2におけるリバーブモジュール231、ブームボックスモジュール232、およびバンドパスフィルタ233である。
【0025】
本実施形態によれば、305において、オーディオ信号を生成するように構成されたアプリケーションが生成される。アプリケーションは、オペレーティングシステム300内で実行可能な任意のアプリケーションである。図示の実施形態において、アプリケーションは、Android(登録商標)のアプリケーションである。フローは310に進む。310において、「SoundPool」オブジェクトがアプリケーションによって生成され、ここでSoundPoolオブジェクトはSoundPoolのAPI(これはAndroid(登録商標)のAPI)のインスタンスであり、SoundPoolオブジェクトはそのアプリケーションのためのオーディオリソースを管理および再生する。SoundPoolオブジェクトは、デバイス内に保存されたリソースから、または、デバイスのファイルシステム内に保存されたファイルから、デバイスのメモリ内へとロード可能である複数のオーディオサンプルを含むことができる。SoundPoolオブジェクトは、複数のオーディオサンプルをraw 16−bitのPCMモノまたはステレオバッファにデコードすることができる。フローは315に進む。315において、他のオーディオオブジェクトがアプリケーションによって生成され、ここで他のオーディオオブジェクトは他のオーディオのAPIのインスタンスである。他のオーディオオブジェクトはまた、オーディオサンプルを16−bitのPCMオーディオバッファにデコードすることができる。フローは320に進む。320において、AudioTrackオブジェクトは、SoundPoolオブジェクトまたは他のオーディオオブジェクトのうちの1つのいずれかによって生成される。AudioTrackオブジェクトは、1つ以上のPCMオーディオバッファを受信し、かつ1つ以上のPCMオーディオバッファを流すように構成される。
【0026】
フローは325に進む。325において、リバーブオブジェクトが生成される。リバーブオブジェクトはリバーブモジュール301のインスタンスであり、ここでリバーブオブジェクトは、図2に関連して上で記載したように、AudioTrackオブジェクトによって送信されたPCMオーディオバッファの1つ以上のオーディオデータフレームを処理するように構成される。フローは330に進む。330において、リバーブオブジェクトの1つ以上の設定が設定される。リバーブの設定の例としては、触覚変換をイネーブル/ディセーブル、メディアのために触覚変換をイネーブル/ディセーブル、3つの選択肢(例えば、弱、中、強)から触覚変換の強さを選択、ならびに、触覚変換がイネーブルされる1つ以上のアプリケーションを(例えばリストから)選択、が挙げられる。特定の実施形態において、上述の設定は拡張マークアップ言語(「XML」)のファイル内に保存される。上述の設定はXMLファイルから読み出されることができ、かつリバーブオブジェクト内に保存されることができ、ここでリバーブオブジェクトは、特定のアプリケーションについてイネーブルでき、かつ他のアプリケーションについてディセーブルできる。特定の実施形態において、強さ(strength)、密度(density)、および極端さ(sharpness)として同定される3つの値は、3つの要因:(1)強さの設定(例えば、弱、中、および強)、(2)触覚テーマ(触覚効果を用いてユーザインターフェースイベントをマッピングする)、および(3)アクチュエータタイプ、に基づく。強さ、密度、および極端さは、リバーブオブジェクト内で生成されかつ保存できる。フローは335に進む。335において、ブームボックスオブジェクトがリバーブオブジェクトによって生成される。ブームボックスオブジェクトは、図2に関連して上で記載したように、ブームボックスモジュール302のインスタンスであり、ここでブームボックスオブジェクトは、リバーブオブジェクトからオーディオデータフレームを受信し、オーディオデータフレームの最大値を生成し、オーディオデータフレームの最大値をリバーブオブジェクトに送信し、オーディオデータフレームを、フィルタリングされるために、IIRフィルタ303に送信し、正弦波の周期的なキャリア周波数を生成し、生成された正弦波の周期的なキャリア周波数と、フィルタリングされたオーディオデータフレームとをミキシングするように構成される。特定の実施形態において、リバーブオブジェクト内で生成および保存された強さおよび密度の値はまた、ブームボックスオブジェクト内で保存可能である。
【0027】
フローは340に進む。340において、リバーブオブジェクトは、AudioTrackオブジェクトから受信されたPCMオーディオバッファのオーディオデータフレームを、ブームボックスオブジェクトに送信する。フローは345に進む。345において、ブームボックスオブジェクトは、オーディオデータフレーム内に含まれるデータをサンプリングする。このようなサンプリングは、図4図7に関連してより詳細に記載される。フローは350に進む。350において、ブームボックスオブジェクトは、オーディオデータフレーム内に含まれるデータを、単一の電圧値(すなわち最大値)へと翻訳する。このような翻訳はまた、図4図7に関連してより詳細に記載される。ブームボックスオブジェクトは次いで、単一の電圧値をリバーブオブジェクトに戻す。
【0028】
フローは355に進む。355において、リバーブオブジェクトは閾値処理(thresholding)のタスクを実行する。より詳細には、リバーブオブジェクトは、ブームボックスオブジェクトから受信されたオーディオデータフレームの最大値が、特定の閾値よりも大きいかどうかを決定する。戻された最大値はまず、力値へと、線形にマッピングされ、一実施形態において、この力値は0〜10,000の間で変化し得る。例えば、閾値は1,000として特定されてよい。この例において、力の値が1,000よりも大きい場合、オーディオデータフレームは、その後にアクチュエータに送信されるために、オーディオバッファに書き込まれる。力の値が1,000未満または1,000に等しい場合、オーディオデータフレームは「ドロップ」され(すなわち、オーディオバッファに書き込まれない)、その後にアクチュエータに送信されない。従って、本実施形態によれば、全てのオーディオデータフレームが必ずしもアクチュエータにおいて再生されるわけではない。フローは360に進む。360において、リバーブオブジェクトは、オーディオデータフレームが355において「ドロップ」されなかったと想定して、オーディオバッファからオーディオデータフレームを読み出す。
【0029】
フローは365に進む。365において、リバーブオブジェクトは、オーディオデータバッファ内に保存されたオーディオデータフレームをブームボックスオブジェクトに送信する。フローは370に進む。370において、ブームボックスオブジェクトは、例えば、8KHzモノオーディオで、オーディオデータフレームをリサンプリングする。ブームボックスオブジェクトはその後リサンプリングされたオーディオデータフレームをIIRフィルタ303に送信する。フローは375に進む。375において、IIRフィルタ303は、例えば500Hzで、受信されたオーディオデータフレームをローパスフィルタに介させる。この例において、オーディオデータフレームをローパスフィルタに介させることによって、IIRフィルタ303は、オーディオデータフレーム内で、低周波数信号(例えば0〜500Hz)の単一の周波数帯でフィルタリングする。IIRフィルタ303はその後、ローパスフィルタを介したオーディオデータフレームをブームボックスオブジェクトに戻す。代替の実施形態において、IIRフィルタ303はフィルタではなく、変換モジュール(例えば、DSPプロセス、状態機械、または他の種類のプログラムロジック)である。これらの代替の実施形態において、変換モジュールは、受信されるオーディオデータフレームを新しいオーディオデータフレームに変換することができ、ここで変換は必ずしもフィルタリング変換ではない。
【0030】
フローは380に進む。380において、ブームボックスオブジェクトは、フィルタリングされたオーディオデータフレーム内に含まれるオーディオデータ信号をブーストする。オーディオデータ信号をブーストすることは、定数によって、オーディオデータ信号の全てのPCM値を乗算することを含み得る。フローは385に進む。385において、ブームボックスオブジェクトは、アクチュエータの共振周波数または任意の他の所望される周波数にて、正弦波のキャリア波形(または、「正弦波の周期的なキャリア周波数」または「正弦波」として同定される)を生成し、かつ、正弦のキャリア波形と、フィルタリングされたオーディオデータフレーム内に含まれるオーディオデータ信号とをミキシングする。より詳細には、ブームボックスオブジェクトは、Aとして同定される最大値(すなわち大きさ、振幅)について、フィルタリングされたオーディオデータフレームをスキャンする。次いで、ブームボックスオブジェクトは、式 val=sin(2pifrequencyphase)を用い、フィルタリングされたオーディオデータフレームの計算された正弦値を検索するために、正弦関数(例えば、C++プログラミング言語のsin() function等)を利用し、式中、frequencyはフィルタリングされたオーディオデータフレームの周波数であり、phaseはフィルタリングされたオーディオデータフレームのフェーズである。次いで、ブームボックスオブジェクトは、計算された正弦値(すなわちval)を、最大値、すなわちフィルタリングされたオーディオフレームの振幅(すなわちA)で乗算する。この計算は完全な正弦キャリア波形を生成する。ブームボックスオブジェクトは、次いで、ミキシングされた値を計算し、ここでミキシングされた値は、フィルタリングされたオーディオデータフレームと完全な正弦キャリア波形とのミックスを表す。より詳細には、ブームボックスオブジェクトは、式 final=(mixbpSample)+((1−mix)(Aval))に従って、ミキシングされた値を計算し、式中、finalは、フィルタリングされたオーディオデータフレームと完全な正弦キャリア波形とのミックスを表しているミキシングされた値であり、bpSampleは、フィルタリングされたオーディオデータフレームであり、mixは0と1との間のデシマル値であり、Aは最大値、すなわちフィルタリングされたオーディオフレームの振幅であり、valは完全な正弦キャリア波形の計算された正弦値である。このように、本実施形態によれば、フィルタリングされたオーディオデータフレームと完全な正弦キャリア波形とのミックスは、フィルタリングされたオーディオデータフレームと完全な正弦キャリア波形とのミックスを表しているミキシングされた値(すなわちfinal)が1を超えることがないことを保証することによって正規化(ノーマライズ)される。代わりに、フィルタリングされたオーディオデータフレーム(すなわちbpSample)が、最大値、すなわちフィルタリングされたオーディオフレーム(すなわちA)の振幅と、完全な正弦キャリア波形(すなわちval)の計算された正弦値との積に単に加えられた場合、その結果は、過度の強さの、所望されない、かつノイズのある触覚信号を生じる。これは、上述したように、フィルタリングされたオーディオデータフレームと完全な正弦キャリア波形とのミックスを正規化することによって回避することができる。ブームボックスオブジェクトは次いで、フィルタリングされたオーディオデータフレームと完全な正弦キャリア波形とのミックスをリバーブオブジェクトに戻す。他の実施形態において、複数の同時のキャリア信号(異なる周波数で)は、高帯域幅の出力信号を生成するために用いられてよい。これらの実施形態において、個々のキャリアの合計は、本明細書で提示されるアルゴリズムの拡張を用いて実行される。
【0031】
フローは390に進む。390において、リバーブオブジェクトは、フィルタリングされたオーディオデータフレームと完全な正弦キャリア波形とのミックスを用いて、アクチュエータにて波形効果を再生する。アクチュエータにて波形効果を再生することにより、リバーブオブジェクトは、アクチュエータに触覚効果を生成させる。
【0032】
前述したように、触覚変換モジュール(例えば図1の触覚変換モジュール16など)はPCMオーディオデータバッファ内に含まれるオーディオ信号を処理する。また、上述したように、オーディオ信号の処理は、PCMオーディオデータバッファの各オーディオデータをサンプリングすること、PCMオーディオデータバッファの各オーディオデータフレームについて最大値を計算すること、およびマグニチュードフィルタリングを含む。オーディオ信号のこのような処理をここでさらに詳細に記載する。
【0033】
特定の実施形態によれば、オーディオ信号のエンベロープがまず抽出される。エンベロープは、オリジナルのオーディオ信号またはフィルタリングされたバージョンのオリジナルのオーディオ信号の周波数全てを用いて抽出できる。しかしながら、エンベロープ自体は、オリジナルのオーディオ信号と同じ周波数コンテンツを有さない。
【0034】
一実施形態において、オーディオデータフレームはオーディオ信号からとられる。1つの例として、オーディオデータフレームは1msのフレーム長を有してよい。別の例において、オーディオデータフレームは10msのフレーム長を有してもよい。1msのオーディオデータフレームは500Hzより上の周波数のエンベロープをキャプチャするが、より低い周波数はキャプチャされず、すなわち「リーク」される(leak through)。10msのフレームは50Hzより上の周波数のエンベロープをキャプチャする等。一実施形態において、フレームにおける各サンプルの絶対値が計算される。代替の実施形態において、絶対値ではなく、フレームにおける各サンプルの平方が計算される。このような処理は触覚変換モジュール(例えば図1の触覚変換モジュール16等)によって実行されるオーディオデータフレームのサンプリングを構成する。
【0035】
絶対サンプル値(または、代替の実施形態における平方したサンプル値)の最大値「V」が計算される。最大値「V」は次いで、図4に関連して以下で記載するように、線形変換関数を用いて変換可能である。
【0036】
図4は本発明の一実施形態に係る、出力値の範囲をコントロールするように適合された線形変換関数400を図示する。本実施形態によれば、線形変換関数400は、図4に示すように、新たな値「V」を得るために、出力値「V」の範囲をコントロールするように適合可能である。図示の実施形態によれば、「x」は、例えば[2..20]のように、特定の範囲内で可変である。「x」は、新たな値「V」に変換される最小値「V」を規定する。「ymax」は、例えば例[60..255]のように、特定の範囲内で可変である。「ymax」は、最大変換値「V」を規定する。「V」が「x」未満か「x」と等しい場合、出力値「V」は0に等しい。「V」が「x」より大きい場合、出力値「V」は、関数の傾き分だけ、「V」を乗算することにより得られる。「V」は固定され、「Vmax」よりも大きくなることはできない。代替の実施形態において、(x,y)および(x,ymax)さらに概略的なマッピングもまた用いることができる。このような処理は、触覚変換モジュール(図1の触覚変換モジュール16等)によって実行されたオーディオデータフレームの最大値を計算することを構成する。
【0037】
このように、本実施形態によれば、オーディオ信号のエンベロープが触覚信号の振幅にマッピングされ、ここで触覚信号の振幅はフィルタリングされている。代替の実施形態において、オーディオ信号のエンベロープがまずフィルタリングでき、次いで、オーディオ信号のフィルタリングされたエンベロープが、触覚信号の振幅にマッピング可能である。
【0038】
触覚変換モジュール(例えば図1の触覚変換モジュール16等)によって実行されるマグニチュードフィルタリングがここでさらに詳細に記載される。触覚効果のマグニチュード(または強さ)「V」は、前述の値「V」を用いて計算される。特定の実施形態において、「V」は周波数にマッピングすることができる。他の実施形態において、「V」は、周波数値のセットにマッピングすることができる。反復「i」の「V」が反復「i−1」の「V」よりも小さい場合、出力「V」はゼロまたは一部の他の小さい値に設定でき、あるいは、その出力は変わらないまま(「V」=「V」)である。この特定の技術は、触覚イベントを表す信号のピーク値をキャプチャすることができ、かつ、その触覚イベントを独立した触覚効果に自動的に関連付けることができる。この技術はまた、次の触覚イベントが再生される前にアクチュエータを落ち着かせるために用いられることができ、従って、多すぎる触覚情報でユーザを飽和させることを回避することができる。代替的な実施形態においては、反復「i」の「V」が反復「i−1」の「V」よりも小さい場合、ゼロへの極端なドロップではなく平滑な低下が利用可能である。0%〜100%の範囲の「極端さ」のパラメータは「V」:V=V×極端さ/mに適合される低下の量を規定するために用いられることができ、式中、「m」は、1から始まる整数除数(integer divisor)であり、反復「i」の「V」が反復「i−1」の「V」より小さい限り、インクリメントする。本実施形態によれば、「m」は、反復「i」の「V」が反復「i−1」の「V」よりも大きいか、またはそれに等しい場合、言い換えれば、「V」=「V」である場合、1にリセットされる。特定の実施形態において、リバーブオブジェクト内に生成および保存される極端さの値は極端さのパラメータとして用いられる。
【0039】
図5は、本発明の一実施形態に係る、デジタルオーディオ信号に基づいて生成された触覚効果の大きさ(マグニチュード)の例示的計算500を示す。図5は、44100Hzにてサンプリングされたオーディオ信号510、20msのフレーム長について計算された最大値520、およびマグニチュードフィルタリングによって得られたパルス530を図示する。本実施形態によれば、パルス530はオーディオ信号510のエンベロープをキャプチャし、従って、パルス530はこの情報を、1つ以上の触覚効果を介してユーザに運ぶことができる。
【0040】
図6は、本発明の一実施形態に係る、デジタルオーディオ信号のエンベロープの例示的計算600を図示する。図6は、オーディオ信号610、オーディオ信号610の絶対値をローパスフィルタに介させることによって得られたエンベロープ620、ならびに、20msの場合に、特定のフレームに亘る絶対値の最大値を計算するエンベロープ値630を図示する。
【0041】
特定のms時間期間の各フレームは、周波数ドメインにおいて処理される。従って、特定の実施形態において、フレームの高速フーリエ変換(FFT)が、周波数コンテンツを抽出するために用いられ得る。他の実施形態において、バンドパスフィルタはその周波数コンテンツを抽出するために用いられ得る。
【0042】
一実施形態において、フレーム情報は、バス周波数または低周波数(例えば、200Hz未満)、中程度の周波数(例えば、240Hz〜4000Khzの間)、および高周波数(例えば、4400KHz以上)に分けられることができ、ここで中程度の周波数コンテンツおよび高周波数コンテンツは、その信号のコンテンツを用いて抽出される。
【0043】
図7は、本発明の一実施形態に係る、周波数コンテンツに基づくデジタルオーディオ信号のエンベロープの例示的な計算700を図示する。本実施形態によれば、いったんオーディオデータフレームが上述のように処理されると、最大値が得られる。実際、1つは低周波数帯域、1つは中程度の周波数帯域、1つは高周波数帯域で、3つの最大値が得られる。図7に示すように、グラフ710は、未処理の最大値(オーディオ信号全体に基づく)を表し、グラフ720は、オーディオ信号の低周波数範囲に対応する最大値を表し、グラフ730はオーディオ信号の中程度の周波数範囲に対応する最大値を表し、グラフ740はオーディオ信号の高周波数範囲に対応する最大値を表す。
【0044】
本実施形態によれば、信号の処理が開始されると、低周波数帯域(すなわちグラフ720)および高周波数帯域(すなわちグラフ740)における周波数値よりも大きい最大値が得られることを前提として、最初のフレームは、さらに中程度の周波数コンテンツ(すなわちグラフ730)を含む。
【0045】
本実施形態によれば、触覚効果は、フレームのコンテンツ周波数が以前のフレームの周波数コンテンツと異なる場合、再生可能である。図7に示すように、触覚効果は、矢印701〜707により指摘される位置において再生される。
【0046】
代替の実施形態において、この技術のバリエーションは、以下:未処理のフレームの最大マグニチュード;周波数帯域に対応する最大マグニチュード;最初のフレームについてのみTouchSenseソフトウェアにおいて許可された最大マグニチュード、のようなマグニチュードを用いて、全ての周波数変換におけるパルスを再生することを含むことができる。
【0047】
特定の代替の実施形態において、続くフレームが同じ周波数コンテンツを有する場合、:未処理のフレームのマグニチュードが再生可能である;または、処理されたフレームのマグニチュードが再生可能である;または、一定の振動、おそらく小が、フレームが同じ周波数コンテンツを有する限りで再生可能である;あるいは、マグニチュードは、周波数帯域におけるパワーコンテンツに基づいて可変である。
【0048】
特定の実施形態において、異なる触覚効果は、異なる周波数コンテンツを有するフレームが見出された場合、再生可能である。
【0049】
さらに、音響の人間による知覚は線形ではなく、その音響の周波数に依存する。より詳細には、人間は、高周波数よりも低周波数により敏感である。性別および年齢もまた知覚に影響を及ぼす。従って、特定の実施形態において、特定の周波数をブーストする補償係数(要因)が存在し得る。ブースト係数は、音響の人間による知覚、またはユーザの好み(一部の周波数帯域が手動で強化される)に基づき得る。ユーザが音響に対してそれほど敏感ではないことが知られている場合、一般にソフトウェアは高周波数コンテンツを強化することができる。これにより、特定の帯域についての触角効果が、より強い強さとなることができ、従って、ユーザの聴覚系によって知覚および感知される一方で、十分なパワーを有していない場合のある音響を強化する。
【0050】
図8Aは、本発明の一実施形態に係る、デジタルオーディオ信号がフィルタリングされる前の、デジタルオーディオ信号の振幅スペクトルの例示的な計算800を図示する。例示的な計算800において、デジタルオーディオ信号の周波数は、x軸に沿って表され、デジタルオーディオ信号の各周波数におけるパワーの絶対値がy軸に沿って表される。図8Aに示すように、一部のマグニチュードのパワーが全ての周波数に対して存在している。
【0051】
図8Bは、本発明の一実施形態に係る、デジタルオーディオ信号がフィルタリングされた後の、デジタルオーディオ信号の振幅スペクトルの例示的な計算810を図示する。上述したように、デジタルオーディオ信号は、特定のオーディオバッファ(例えば0〜500Hz)における低周波数信号の単一の周波数帯域においてフィルタリングできる。例示的な計算800に類似して、デジタルオーディオ信号の周波数は、x軸に沿って表され、デジタルオーディオ信号の振幅の絶対値はy軸に沿って表される。しかしながら、図8Bに示すように、振幅は、低周波数信号(すなわち0〜500Hz)の単一のフィルタリングされた周波数帯域に対してのみ存在する。
【0052】
特定の実施形態において、触覚変換システムのユーザは、音響−触覚変換アルゴリズムをカスタマイズすることができる。より詳細には、ユーザは、デジタルオーディオ信号が、ローパスフィルタ、ハイパスフィルタ、またはバンドパスフィルタを用いてフィルタリングされるか選択することができる。代替的に、あるいはフィルタのタイプをカスタマイズすることに加えて、ユーザは、事前に規定されたパラメータの間で選択するのではなく、フィルタのパラメータを特定することができる。これらの実施形態によれば、触覚変換システムは、グラフィカル・ユーザ・インターフェース内で、1つ以上のユーザ規定のパラメータを表示することができる。ユーザは、次いで、1つ以上のユーザ規定のパラメータから選択することができるか、あるいは、グラフィカル・ユーザ・インターフェースを用いて、1つ以上のユーザ規定のパラメータを特定することができる。例えば、ユーザは、ローパスフィルタ、バンドパスフィルタ、およびハイパスフィルタの中から、音響−触覚(sound−to−haptic)効果変換アルゴリズムにおいて利用されるフィルタのタイプを選択することができる。別の例において、ユーザは1つ以上のカットオフ周波数を特定することができ、ここで、250〜500Hzの間の値の代わりに、ユーザは任意の値を特定することができる。さらに別の例において、ユーザは音響−触覚効果変換アルゴリズムにおいて用いられるゲインを特定することができる。
【0053】
特定の実施形態においては、事前に規定されたフィルタパラメータを利用するのではなく、触覚変換システムは、ユーザ規定のパラメータに基づいたランタイムでフィルタのパラメータを計算することができる。より詳細には、ユーザはフィルタのタイプを選択することができる。例えば、ユーザは、バタワース設計、ベッセル設計、またはチェビシェフ設計を選択することができ、ここで、各設計に対して、ユーザは、ローパスフィルタ、ハイパスフィルタ、バンドパスフィルタ、またはバンドストップフィルタを選択することができる。ユーザがチェビシェフ設計を選択した場合、ユーザはまたリップリを特定することができる。ユーザはまたフィルタの順序、およびサンプリングレートを特定することができる。ユーザがローパスフィルタまたはハイパスフィルタを選択した場合は、ユーザはまた1つのコーナー周波数を特定することができ、ユーザがバンドパスフィルタまたはバンドストップフィルタを選択した場合には、ユーザは2つのコーナー周波数を特定することができる。ユーザはまた、任意の追加のゼロ値、および、マグニチュードスケールの任意の下限値を選択することができる。さらに、ユーザはまた、フィルタが、双一次変換方法によって、または一致した(matched)Z変換方法によって設計されるかどうかを選択することができる。触覚変換システムは次いで、ユーザによって特定されたパラメータに基づいたランタイムにおいて、1つ以上のフィルタのパラメータを計算することができる。
【0054】
図9は、本発明の一実施形態に係る、触覚変換モジュール(例えば図1の触覚変換モジュール16等)の機能性のフロー図を示す。910において、オーディオ信号のデータフレームが受信される。特定の実施形態において、オーディオ信号はスピーカに流されるので、オーディオ信号はインターセプトされる。また、特定の実施形態において、オーディオ信号はPCMオーディオバッファである。フローは920に進む。
【0055】
920において、データフレームの最大値が生成される。特定の実施形態において、最大値は、データフレームの1つ以上のサンプル値を生成するために、データフレームをサンプリングすることによって生成され、ここで最大値は、1つ以上のサンプル値の最大値である。1つの実施形態において、1つ以上のサンプル値は絶対値である。代替の実施形態において、1つ以上のサンプル値は平方の値である。特定の実施形態において、最大値は、線形変換関数を用いて、オリジナルの最大値から変換される。フローは930に進む。
【0056】
930において、データフレームは変換される。特定の実施形態において、データフレームはバンドパスフィルタを利用し、バンドパスフィルタを介す。これらの実施形態において、データフレーム内の周波数信号の単一の周波数帯域はフィルタにかけられる。代替の実施形態において、データフレームはIIRフィルタを用いてローパスフィルタにかけられる。これらの実施形態において、データフレーム内の周波数信号の単一の周波数帯域はフィルタリングできる。例えば、0〜500Hzの帯域がフィルタリングできる。特定の実施形態において、データフレームが変換される前に、データフレームはリサンプリングされる。特定の実施形態において、データフレームが変換された後、データフレームに含まれるデジタルオーディオ信号はブーストされる。フローは940に進む。
【0057】
940において、少なくとも1つの正弦キャリア波形が、変換されたデータフレームの最大値に基づいて生成される。特定の実施形態において、変換されたデータフレームはスキャンされ、その変換されたデータフレームの最大値が決定される。次に、変換されたデータフレームの周波数、および変換されたデータフレームのフェーズに基づいて、変換されたデータフレームの計算された正弦値を検索するために、正弦関数が用いられる。その後、計算された正弦値は、少なくとも1つの正弦キャリア波形を生成するために、変換されたデータフレームの最大値によって乗算される。
【0058】
950において、変換されたデータフレームは、変調されたデータフレームを生成するために、少なくとも1つの正弦キャリア波形を用いてミキシングされる。特定の実施形態において、変換されたデータフレームは、変換されたデータフレームと少なくとも1つの正弦キャリア波形とのミックスが正規化される式に従い、少なくとも1つの正弦キャリア波形を用いてミキシングされる。
【0059】
960において、触覚信号は、最大値および変調されたデータフレームに基づいて生成される。特定の実施形態において、最大値は、触覚信号が生成されるかどうかを決定し、変調されたデータフレームは触覚信号の精度を規定する。最大値が触覚信号が生成されるかどうかを決定する特定の実施形態において、触覚信号は、最大値が特定された閾値よりも大きい場合にのみ生成される。フローは970に進む。
【0060】
970において、触覚信号は、1つ以上の触覚効果を生成するために、アクチュエータを介して送信される。特定の実施形態において、触覚信号は波形効果である。また、特定の実施形態において、触覚信号を生成および送信することはさらに、パラメータとして、変調されたデータフレームを、触覚効果再生モジュールのアプリケーションプログラミングインターフェースに回すことを含む。
【0061】
従って、一実施形態によれば、触覚変換システムは、オーディオ信号の一部であるオーディオデータフレームをインターセプトし、そのオーディオデータフレームを触覚信号に変換し、ここで各オーディオデータフレームの最大値は、触覚信号の波形を規定するために、各フィルタリングされたオーディオデータフレームを用いてミキシングされた正弦波の周期的なキャリア周波数を規定し、かつ、アクチュエータを介して、その変換された触覚信号を再生して、触覚効果を得る。触覚変換システムによって実行される各オーディオデータフレームの変調は、アクチュエータ自体の内で感じられる精度および現実感を非常に見せ、その結果、アクチュエータにおいて再生される触覚信号にさらに柔軟性が生じる。
【0062】
本明細書を通して記載された本発明の特徴、構造、または特性は、1つ以上の実施形態において任意の適切な方法において組み合わされてよい。例えば、「一実施形態」、「一部の実施形態」、「特定の実施形態」、「特定の実施形態(複数)」、または他の類似の言語の使用は、本明細書を通じて、実施形態に関連して記載された特定の特徴、構造、または特性が、本発明の少なくとも1つの実施形態に含まれ得るという事実に言及している。従って、「一実施形態」、「一部の実施形態」、「特定の実施形態」、「特定の実施形態(複数)」の言い回し、または他の類似の言語の登場は、これら全てが、実施形態の同じ群のことを必ずしも言及しているのではなく、記載された特徴、構造、または特性は、1つ以上の実施形態において任意の適切な方法において組み合わされてよい。
【0063】
当業者は、上述した発明が、異なる順序におけるステップを用いて実施されてよく、および/または、記載された構成とは異なる構成における要素を用いて実施されてよいことを容易に理解する。それゆえ、本発明はこれらの好ましい実施形態に基づいて記載されているけれども、特定の修正、変更、および代替の構成が明白であり、他方で本発明の趣旨および範囲内にあることは、当業者にとって明白である。本発明の境界を決定するために、それゆえ、添付の特許請求の範囲に参照がなされるべきである。
図1
図2
図3
図4
図5
図6
図7
図8A
図8B
図9