JP2007256527A - 波形合成装置およびプログラム - Google Patents
波形合成装置およびプログラム Download PDFInfo
- Publication number
- JP2007256527A JP2007256527A JP2006079607A JP2006079607A JP2007256527A JP 2007256527 A JP2007256527 A JP 2007256527A JP 2006079607 A JP2006079607 A JP 2006079607A JP 2006079607 A JP2006079607 A JP 2006079607A JP 2007256527 A JP2007256527 A JP 2007256527A
- Authority
- JP
- Japan
- Prior art keywords
- sound
- waveform
- sound waveform
- engine
- cylinder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Fittings On The Vehicle Exterior For Carrying Loads, And Devices For Holding Or Mounting Articles (AREA)
Abstract
【課題】心地よいエンジン音を車内の運転者に聞かせることを可能とする技術を提供する。
【解決手段】音波形切出部1031は、エンジンの1の気筒の所定箇所に配置された圧電ピックアップから入力される一連の波形信号から、回転速度センサ13により計測されるエンジンの回転速度rに応じた時間間隔T=2/rで、当該1の気筒が爆発の1サイクルにおいて発する音である単発音の波形信号を切り出す。音波形切出部1031により切り出された波形信号は記憶部107に記憶される。読出パルス生成部1033は、約T/N(Nは気筒数)の時間間隔で読出パルスを生成する。音波形読出部1034は読出パルス生成部1033から出力される読出パルスに応じたタイミングで記憶部107に記憶された波形信号を読み出し、ミキシング部1038は音波形読出部1034に読み出された波形信号をミキシングする。その結果、多気筒エンジンの音が合成される。
【選択図】図8
【解決手段】音波形切出部1031は、エンジンの1の気筒の所定箇所に配置された圧電ピックアップから入力される一連の波形信号から、回転速度センサ13により計測されるエンジンの回転速度rに応じた時間間隔T=2/rで、当該1の気筒が爆発の1サイクルにおいて発する音である単発音の波形信号を切り出す。音波形切出部1031により切り出された波形信号は記憶部107に記憶される。読出パルス生成部1033は、約T/N(Nは気筒数)の時間間隔で読出パルスを生成する。音波形読出部1034は読出パルス生成部1033から出力される読出パルスに応じたタイミングで記憶部107に記憶された波形信号を読み出し、ミキシング部1038は音波形読出部1034に読み出された波形信号をミキシングする。その結果、多気筒エンジンの音が合成される。
【選択図】図8
Description
本発明は、エンジン音の波形を合成する技術に関する。
カーレーシングのシミュレーションゲーム等における効果音としてのエンジン音を擬似的に合成する技術がある。例えば、特許文献1および2には、実機のエンジン音の波形を、エンジン回転速度等の運転状態に応じて複数記憶しておき、ユーザの操作に応じて適する波形を読み出して再生する技術が開示されている。
特開2000−10576号公報
特開2005−128262号公報
また、非特許文献1には、エンジンの1気筒における1回の爆発に伴い発生される音(以下、「単発音」と呼ぶ)の波形を連続させたものを複数重ね合わせることにより、エンジン音を擬似的に合成する技術が提案されている。
前田 修、「エンジン音質のバーチャル評価技術」、日本音響学会誌、日本音響学会、平成15年、59巻、5号、p.p.288−293
前田 修、「エンジン音質のバーチャル評価技術」、日本音響学会誌、日本音響学会、平成15年、59巻、5号、p.p.288−293
エンジン音は周囲の人にとっては騒音となることが多いため、エンジン音を極力発しないエンジンおよび車両の開発が行われている。しかしながら、車両の運転者にとっては多くの場合、エンジン音は運転の楽しさを高めるものであると同時に、速度が出過ぎていることを警告する等の重要な役割を果たす情報である。
従って、周囲に撒き散らされるエンジン音を低減すると同時に、運転者には心地よいエンジン音を聞かせる技術が求められている。そのような課題を解決する方法として、例えば車内にマイクを配置して運転中に車内で聞こえるエンジン音を収音し、収音した音をアンプで増幅した後に車内のスピーカから発音することにより、外部に発せられるエンジン音と比較して大音量のエンジン音を運転者に聞かせることが考えられる。
しかしながら、上記のような手段による場合、エンジン音のみでなく車内の会話やロードノイズなども同時に増幅され、不便や不自然さを生ずる。また、静かなエンジン音を増幅したものは、たとえ大音量であっても運転者にとって必ずしも心地よい音とはならない。
そこで、上述した特許文献1および2や非特許文献1に開示の技術を用いてエンジン音を合成し、合成したエンジン音を車内のスピーカから発音することにより、迫力のあるエンジン音を運転者に聞かせることが考えられる。
しかしながら、特許文献1および2や非特許文献1に開示の技術は、予め記憶されているエンジン音の波形データを加工することによりエンジン音を合成するため、合成される音が実際のエンジン音から乖離し、やはり不自然さをもたらす。そのような問題は、実際のエンジン音の波形を予め様々な回転数、アクセル開度等に応じて記憶しておき、運転中においては運転状態に応じた音波形を逐次呼び出して用いることにより解消される。しかしながら、様々な運転状態に応じてリアルなエンジン音を合成するためには膨大な数の音波形を準備する必要がある、という問題がある。
本願発明は、上記の状況に鑑み、心地よいエンジン音を車内の運転者に聞かせることを可能とする新たな技術を提供することを目的とする。
上記課題を達成するために、本発明は、運転中のエンジンの音を示す音波形を取得する音波形入力手段と、前記エンジンの回転速度を示す回転データを取得する回転データ入力手段と、前記音波形入力手段により取得された音波形から、前記回転速度に応じた時間の音波形を単発音波形として切り出す音波形切出手段と、前記単発音波形を記憶する記憶手段と、前記回転速度に応じて周期的に到来する一連のタイミングで前記単発音波形を前記記憶手段から順次読み出す音波形読出手段と、前記音波形読出手段により読み出された複数の前記単発音波形をミキシングして合成波形を生成する合成波形生成手段とを備えることを特徴とする波形合成装置を提供する。
このような波形合成装置によれば、運転中に実際のエンジンから発せられる音を用いたエンジン音の合成が行われるため、波形データを記憶することなく運転状態に応じたリアリティのあるエンジン音が得られる。また、エンジン音の合成の過程において、合成される音の音響特性を調整するための柔軟な処理が可能となる。
好ましい態様において、前記音波形入力手段は、多気筒エンジンである前記エンジンの1の気筒における1回の爆発に伴い発せられる音を示す音波形を取得し、前記音波形読出手段は、前記回転速度に基づき算出される前記1回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間の間隔で前記単発音波形を順次読み出す。
このような波形合成装置によれば、多気筒エンジンの1の気筒から発せられる音を用いて多気筒エンジンの音が合成される。その際、実機のエンジンの気筒数とは異なった気筒数のエンジン音を合成することも可能である。
他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段を備え、前記音波形入力手段は、多気筒エンジンである前記エンジンの1の気筒における1回の爆発に伴い発せられる音を示す音波形を取得し、前記音波形読出手段は、前記回転速度に基づき算出される前記1回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間に、前記パラメータに応じた揺らぎを付加して得られる時間の間隔で、前記単発音波形を順次読み出す。
また、他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段と、前記音波形読出手段により読み出された複数の前記単発音波形に、前記パラメータに応じた揺らぎを有する振幅方向もしくは時間方向の伸縮を付加する揺らぎ付加手段とを備え、前記合成波形生成手段は、前記揺らぎ付加手段により揺らぎの付加された前記単発音波形をミキシングして合成波形を生成する。
これらの波形合成装置によれば、合成されるエンジン音に含まれる回転整数次の成分の際立ちの程度をパラメータにより変更可能である。
また、他の好ましい態様において、前記音波形入力手段は、前記エンジンが有する第1の部位が発する音を示す第1の音波形と、前記エンジンが有する第2の部位が発する音を示す第2の音波形とを取得し、前記音波形切出手段は、前記第1の音波形から第1の単発音波形を切り出すとともに、前記第2の音波形から第2の単発音波形を切り出し、前記音波形読出手段は、前記回転速度に応じて周期的に到来する第1の一連のタイミングで前記第1の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第2の一連のタイミングで前記第2の単発音波形を順次読み出し、前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第1の単発音波形および複数の前記第2の単発音波形をミキシングして合成波形を生成する。
このような波形合成装置によれば、エンジン音を構成する複数の音の要素の各々に対し、音響特性を調整するための異なる処理を行うことが可能となる。
上記の好ましい態様において、前記第1の音波形は、多気筒エンジンである前記エンジンの第1の気筒が発する音を示し、前記第2の音波形は、前記エンジンの第2の気筒が発する音を示すようにしてもよい。
このような波形合成装置によれば、エンジン音の複数の気筒の各々に対し、音響特性を調整するための異なる処理を行うことが可能となる。また、気筒間で異なる音波形が用いられることから、合成されるエンジン音に含まれる回転整数次の成分の際立ちの程度を抑えることができる。
また、上記の好ましい態様において、前記第1の音波形および前記第2の音波形は、前記エンジンが有する気筒、吸気管および排気管のいずれかが発する音を示すようにしてもよい。
このような波形合成装置によれば、エンジンの気筒、吸気管、排気管の各々に対し、音響特性を調整するための異なる処理を行うことが可能となる。
また、他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段と、前記単発音波形に異なる加工を施すことにより、前記パラメータに応じた相関を有する第1の単発音波形および第2の単発音波形を生成する音波形加工手段とを備え、前記音波形読出手段は、前記回転速度に応じて周期的に到来する第1の一連のタイミングで前記第1の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第2の一連のタイミングで前記第2の単発音波形を順次読み出し、前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第1の単発音波形および複数の前記第2の単発音波形をミキシングして合成波形を生成する。
このような波形合成装置によれば、合成されるエンジン音に含まれる回転整数次の成分の際立ちの程度をパラメータにより変更可能である。
また、他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段と、前記音波形切出手段により切り出された前記単発音波形に前記パラメータに応じた周波数特性の変更を加える周波数特性変更手段とを備え、前記音波形読出手段は、前記周波数特性変更手段により周波数特性の変更が加えられた前記単発音波形を順次読み出す。
このような波形合成装置によれば、合成されるエンジン音の音色をパラメータにより変更可能である。
また、本発明は、上記波形合成装置が行う処理をコンピュータに実行させるプログラムを提供する。その結果、上記の波形合成装置がコンピュータにより実現される。
[1.音波形合成の原理]
以下、本願発明の理解のために、単気筒エンジンの単発音を用いて多気筒エンジンの音を合成する方法(以下、「単発音制御再生法」と呼ぶ)の原理を説明する。なお、例として、4気筒4ストロークエンジンにつき以下に説明する。
以下、本願発明の理解のために、単気筒エンジンの単発音を用いて多気筒エンジンの音を合成する方法(以下、「単発音制御再生法」と呼ぶ)の原理を説明する。なお、例として、4気筒4ストロークエンジンにつき以下に説明する。
単発音制御再生法においては、まずエンジンの単発音の波形が準備される。4ストロークエンジンの気筒は、燃料の吸気、燃料の圧縮、燃料の点火による爆発、爆発後の排気、の4工程を繰り返すことによりクランクシャフトを押し回し駆動する。単発音は、エンジンの1気筒がこれらの4工程1サイクルの動作を行う際に発する音である。
単発音の波形が得られると、単発音の波形を連続させることにより、エンジンの1気筒が継続して運転された場合に発する音(以下、「連続音」と呼ぶ)が合成される。図1は連続音が合成される様子を示した図である。図1の左図は、最大振幅がA0、時間がT0(秒)である単発音の波形を例示している。連続音の合成においては、この原波形である単発音の波形に振幅方向および時間方向の伸縮を加えたものが順次連結される。なお、連結部の不連続により発生するノイズを低減するために、連結に先んじて両端がゼロの窓関数を乗じる処理が行われる。
連続音の合成に用いられる単発音の生成おいて、より自然な音を生成するために、各原波形に対し加えられる伸縮の程度には所定の揺らぎが加えられる。その結果、連続音を構成する各単発音の振幅および時間はそれぞれ微小に異なるものとなる。図1の右図は8つの単発音を連結して連続音が生成された様子を示しており、連続音に含まれる各単発音の振幅および時間は揺らぎの付加により順にA1〜A8およびT1〜T8(秒)と各々異なっている。
上記のように合成される連続音に含まれる単発音の長さは原波形の時間T0を中心として揺らぐため、連続音の周期はT0(秒)であり、その基音はf0=1/T0(Hz)である。なお、4ストロークエンジンの場合、吸気、圧縮、爆発、排気の4工程においてクランクシャフトが2回転するため、エンジンの回転数をr(rpm)とすると、周期T0=(2×60)/r(秒)である。
続いて、4気筒エンジンの音を合成するために、上記のように合成して得られる連続音、すなわち1気筒の発する音を、4つ重ね合わせて重合音を合成する。この重ね合わせの際、各連続音に順次、T0/4(秒)のオフセット時間を加える。すなわち、第2の連続音の開始時刻はT0/4秒だけ第1の連続音の開始時刻より遅れ、第3の連続音の開始時刻はT0/4秒だけ第2の連続音の開始時刻より遅れ、第4の連続音の開始時刻はT0/4秒だけ第3の連続音の開始時刻より遅れる。図2は連続音の重合により重合音が合成される様子を示した図である。
上記のように合成される重合音においては、時間T0/4(秒)ごとにほぼ同じ波形が繰り返される。従って、重合音の周期はT=T0/4(秒)、その基音はf=f0×4(Hz)となる。このように合成される重合音が、単発音制御再生法により生成される4気筒4ストロークエンジンの音である。
[2.エンジン音の音響特性の変化に関する実験]
続いて、本願発明者が本願発明に至る過程において、単発音制御再生法を用いて行った実験およびその結果を以下に示す。まず、本願発明者は、連続音の合成において原波形の単発音に加えられる振幅方向および時間方向の伸縮の揺らぎ(以下、それぞれ「振幅揺らぎ」および「時間揺らぎ」と呼ぶ)が、最終的に得られる重合音にどのように影響するかを実験により確認した。図3はその実験の結果を示したグラフである。
続いて、本願発明者が本願発明に至る過程において、単発音制御再生法を用いて行った実験およびその結果を以下に示す。まず、本願発明者は、連続音の合成において原波形の単発音に加えられる振幅方向および時間方向の伸縮の揺らぎ(以下、それぞれ「振幅揺らぎ」および「時間揺らぎ」と呼ぶ)が、最終的に得られる重合音にどのように影響するかを実験により確認した。図3はその実験の結果を示したグラフである。
図3(A−1)および図3(A−2)は、連続音の合成において、振幅揺らぎおよび時間揺らぎを全く加えない場合、すなわち連続音の合成に原波形をそのまま用いた場合に得られる重合音の波形および周波数特性をそれぞれ示している。また、図3(B−1)および図3(B−2)は、連続音の合成において、振幅揺らぎのみを加え、時間揺らぎを全く加えない場合に得られる重合音の波形および周波数特性をそれぞれ示している。さらに、図3(C−1)および図3(C−2)は、連続音の合成において、振幅揺らぎおよび時間揺らぎの両方を加えた場合に得られる重合音の波形および周波数特性をそれぞれ示している。
図3より、振幅揺らぎおよび時間揺らぎの付加により、重合音の周波数特性における振幅の山と谷との差が小さくなることが確認される。周波数特性の低周波数領域における振幅の山は基音の整数倍音に対応し、振幅の山と谷との差が大きいほど純音性の高い音、いわゆる輪郭のはっきりした音となる。このことから、連続音の合成において原波形に加える振幅揺らぎおよび時間揺らぎの程度を調整することにより、重合音の純音性を変化させることが可能となることが判明した。
図4は、揺らぎの付加が重合音の音響特性に与える影響を確認するために行った別の実験結果を示すソナグラフである。図4(A)および図4(B)の縦軸は周波数、横軸は時間を示している。ただし、図4(A)および図4(B)の作成に用いた重合音においては、回転数rが1000回転/秒の割合で増加する場合のエンジン音を模すように、徐々に増加する縮小率で時間方向に縮小された単発音が連結された連続音が重合されている。従って、図4(A)および図4(B)の横軸の値に1000を乗じたものは、エンジンの回転数rに相当する。
図4(A)の作成に用いた重合音においては、連続音の合成時に振幅揺らぎおよび時間揺らぎのいずれも付加されていない。一方、図4(B)の作成に用いた重合音においては、振幅揺らぎは付加されていないが、規則的な時間揺らぎが付加されている。具体的には、重合に用いられた連続音を構成する単発音の原波形に対する時間方向の伸縮率が、先頭から順に0.9、1.05、0.95および1(以下、繰り返し)となっている。
図4(A)においては、グラフの左下から右上に向かいほぼ直線上に並んだ周波数成分の山が明確に確認される。ソナグラフに現れるこれらの直線はグラフの下から順次、回転2次、回転4次、回転6次、・・・の成分を示し、図4(A)においてはこれらの直線が明確であることから、回転整数次の周波数成分のピークが鋭いことが見てとれる。これに対し、図4(B)においては、回転整数次の直線が図4(A)のものと比較して明確でなく、回転整数次の周波数成分のピークが鋭くないことが見てとれる。
なお、経験上、エンジンの気筒数を2で除した次数に対応する直線が明確である程、聞き手にとってエンジンが快調に回っている、という印象を与えることが知られている。この気筒数を2で除した次数は爆発1次とも呼ばれる。例えば4気筒エンジンの場合、爆発1次は回転2次である。
図4(A)および図4(B)より、単発音に揺らぎを与えた場合は揺らぎを与えない場合と比較し、最終的に合成される重合音の回転整数次の周波数成分が際立っておらず、爆発1次の成分も他の成分と比較し顕著に現れず、聞き手にとってはあまり快調に回っていないエンジンの音と感じられることが分かる。
次に、本願発明者は、連続音の合成において、各気筒に対応する連続音ごとに異なる原波形を用いた場合に、最終的に得られる重合音にどのような影響が生じるかを実験により確認した。図5はその実験の結果を示したソナグラフである。
図5(A)および図5(B)の縦軸および横軸のスケールは図4におけるものと同様である。また、図5(A)は図4(A)と全く同じグラフであり、図5(B)との比較のために再掲している。図5(B)の作成に用いた重合音の合成には、各々の気筒に対応する連続音として、周波数特性は同一だが互いに無相関な原波形を用いて合成された連続音が用いられている。
周波数特性が同一であり、かつ無相関な原波形の作成の方法は様々に考えられるが、図5(B)の作成においては、所定の周波数特性を有するノイズ波形の異なる区間を切り出したものを各気筒に対応する原波形として用いている。このようなノイズ波形それ自体はエンジンの単発音とは非類似であるが、連続処理および重合処理を経ると、多気筒エンジンの音とある程度類似したものになる。
図5(B)を図5(A)と比較すると、回転整数次の直線の間に複数の直線が現れ、その結果、いずれの直線が回転整数次のものかの特定が困難である。すなわち、図4(B)と同様に、図5(B)の音は図5(A)の音と比較すると回転整数次の周波数成分が際立っていないことが見てとれる。しかしながら、図4(B)と異なり、図5(B)における各直線それ自体は図5(A)と同様に鮮明である。このことから、重合音の合成に用いる原波形を気筒毎に変えると、その相関の程度に応じて回転整数次の周波数成分が際立たなくなるが、その音響特性は揺らぎ付加によるものとは異なることが分かる。
次に、本願発明者は、重合音の合成に用いる原波形の周波数特性の変化によって、最終的に得られる重合音の周波数特性にどのような影響が生じるかを実験により確認した。図6はその実験の結果を示したグラフである。図6(A)〜(D)は、各々、異なる波形の単発音の周波数成分およびその単発音を用いて合成した重合音(エンジン音)の周波数成分を示している。図6より、重合音の振幅の谷はその重合音の生成に用いられた単発音の振幅と強い相関があることが分かる。すなわち、単発音の音響特性により重合音の大まかな音響特性が決定されることが分かる。
[3.実施形態]
続いて、本発明の実施形態を以下に説明する。本発明の実施形態は、多気筒エンジンの1の気筒における爆発に伴う音と、カムチェーン等のメカノイズとを収音し、それらの音の波形を用いてエンジン音を合成する波形合成装置である。
続いて、本発明の実施形態を以下に説明する。本発明の実施形態は、多気筒エンジンの1の気筒における爆発に伴う音と、カムチェーン等のメカノイズとを収音し、それらの音の波形を用いてエンジン音を合成する波形合成装置である。
[3.1.構成]
図7は、本発明の実施形態にかかる波形合成装置10を含む波形合成システム1の構成を示したブロック図である。波形合成システム1は、エンジンで駆動される車両のエンジンルーム内および車内に配置される。以下の説明においては、例として、4気筒4ストロークエンジンを搭載した自動車に波形合成システム1が配置されるものとする。
図7は、本発明の実施形態にかかる波形合成装置10を含む波形合成システム1の構成を示したブロック図である。波形合成システム1は、エンジンで駆動される車両のエンジンルーム内および車内に配置される。以下の説明においては、例として、4気筒4ストロークエンジンを搭載した自動車に波形合成システム1が配置されるものとする。
波形合成システム1は、エンジン音の合成処理を行う波形合成装置10と、波形合成装置10に対しエンジンの爆発に伴う音の波形を出力する気筒音ピックアップ群11と、波形合成装置10に対しエンジンの運転に伴うメカノイズの波形を出力するメカノイズピックアップ群12と、波形合成装置10に対しクランクシャフトの回転速度を計測しその結果を示す信号(以下、「回転速度信号」と呼ぶ)を出力する回転速度センサ13と、波形合成装置10に対し吸気バルブが開き始めるタイミングで信号(以下、「バルブ開口信号」と呼ぶ)を出力するバルブ開口センサ14と、波形合成装置10に対しアクセルペダルの踏み込みの程度を示す信号(以下、「アクセル開度信号」)を出力するアクセル開度センサ15とを備えている。
さらに、波形合成システム1は、波形合成装置10により合成された音波形を増幅するアンプ16と、アンプ16から出力される音波形を音に変換するスピーカ17と、波形合成装置10に対しユーザの操作に応じた信号を出力する入力デバイス18と、波形合成装置10から出力される描画データに応じてユーザに対しメッセージ画面を表示するディスプレイ19を備えている。
気筒音ピックアップ群11には、エンジンの第1気筒に燃料ガスを供給する第1吸気管の表面に配置された圧電センサである吸気音ピックアップ111と、第1気筒のシリンダの表面に配置された圧電センサである爆発音ピックアップ112と、第1気筒のシリンダから排気ガスを排出する第1排気管の表面に配置された圧電センサである排気音ピックアップ113が含まれている。
吸気音ピックアップ111から出力される信号は、第1吸気管の振動を示す波形信号であり、主として第1気筒の運転に伴う吸気音を示す。爆発音ピックアップ112から出力される信号は、第1気筒の振動を示す波形信号であり、主として第1気筒の運転に伴う爆発音を示す。排気音ピックアップ113から出力される信号は、第1排気管の振動を示す波形信号であり、主として第1気筒の運転に伴う排気音を示す。
気筒音ピックアップ群11が上記のように気筒の運転に伴い発生される音の波形信号を生成するためのピックアップの集まりであるのに対し、メカノイズピックアップ群12はエンジン全体の運転に伴い発生される音の波形信号を生成するためのピックアップの集まりである。すなわち、メカノイズピックアップ群12には、カムチェーンを駆動するギアの表面に配置された圧電センサであるカムチェーン音ピックアップ121と、ファンベルトのテンショナの表面に配置された圧電センサであるファンベルト音ピックアップ122が含まれている。
カムチェーン音ピックアップ121から出力される信号は、主としてカムチェーンの回転に伴うメカノイズを示す。ファンベルト音ピックアップ122から出力される信号は、主としてファンベルトの回転に伴うメカノイズを示す。なお、カムチェーン音ピックアップ121およびファンベルト音ピックアップ122はメカノイズピックアップ群12に含まれるピックアップの例であり、エンジンの運転に伴い発せられるメカノイズを拾うピックアップであれば、他の部位に配置されたピックアップがメカノイズピックアップ群12に含まれてもよい。
回転速度センサ13は、クランクシャフト付近に配置された発光体、光センサ、カウンタおよびタイマにより構成され、クランクシャフトに発光体から照射された光がクランクシャフトの所定位置に添付された反射マークにおいて反射し、その反射光が光センサにより受光された回数をカウンタがカウントし、タイマにより1秒間が計時されたタイミングでカウンタに記憶されている回数を示す信号を出力するとともに、カウンタ値をゼロにセットし、タイマをリセットする。そのように出力される信号は、クランクシャフトの回転速度を毎秒の回転数により示す回転速度信号である。
バルブ開口センサ14は、例えば第1気筒の吸気バルブを挟んで対向するように配置された発光体と光センサの組み合わせにより構成され、吸気バルブが閉じた状態からわずかに開くことにより、発光体から照射された光が光センサにより検出された場合にバルブ開口信号を出力する。4ストロークエンジンの場合、エンジンの爆発の4工程1サイクルにおいてクランクシャフトは2回転するため、バルブ開口センサ14はクランクシャフトが2回転する毎に1回、バルブ開口信号を出力する。
なお、バルブ開口センサ14は、エンジンの気筒が4工程1サイクルにおけるいずれのタイミングであるかを検出するためのセンサの一例であって、波形合成システム1が他の種類のセンサを備え、それらのセンサをバルブ開口センサ14の代わりに利用するようにしてもよい。そのようなセンサとしては、例えば排気バルブの開口タイミングを検出するセンサ、点火プラグの点火タイミングを検出センサ等が考えられる。
アクセル開度センサ15は、例えば複数の発光体と光センサの組み合わせにより構成され、アクセルペダルにより発光体から発せられた光がアクセルペダルにより遮られることを利用し、いずれの光センサが反射光を受光したかに応じてアクセルペダルの踏み込みの程度を計測するしくみとなっている。以下の説明において、アクセル開度センサ15はアクセルペダルの踏み込みの程度が大きくなるに従い大きい数値を示すアクセル開度信号を出力するものとし、その範囲は0〜100であるものとする。
なお、アクセル開度センサ15は、自動車の運転状態を計測するセンサの一例であって、波形合成システム1が他の種類のセンサを備え、それらのセンサを、アクセル開度センサ15に加え、もしくはアクセル開度センサ15に代えて利用するようにしてもよい。そのようなセンサとしては、例えば車速センサ、クランクシャフトのトルクを計測するトルクセンサ等が考えられる。
スピーカ17は、例えば車内フロント部の左右に各々配置されたスピーカ17Rおよびスピーカ17Lの組み合わせである。なお、スピーカ17の配置位置はこれに限られず、例えば車内の前後位置の2カ所や、前後左右の4カ所に配置するようにしてもよい。アンプ16は、スピーカ17Rおよびスピーカ17Lの各々に音信号を出力するアンプ16Rおよびアンプ16Lの組み合わせである。
入力デバイス18およびディスプレイ19は、例えばタッチセンサ機能付き液晶ディスプレイとして一体化され、車内のインストルメント・パネルに配置されている。
波形合成装置10は、気筒音ピックアップ群11およびメカノイズピックアップ群12に含まれるピックアップの各々から出力される音波形信号を受け取るためのバスである音波形入力バス101と、回転速度センサ13、バルブ開口センサ14およびアクセル開度センサ15の各々から出力されるセンサ信号を受け取るためのバスであるセンサ信号入力バス102と、気筒音ピックアップ群11に含まれるピックアップから出力される音波形信号を各々用いて合成音を生成するフィルタである次数成分強調フィルタ103A、次数成分強調フィルタ103Bおよび次数成分強調フィルタ103Cと、次数成分強調フィルタ103A〜Cおよびメカノイズピックアップ群12に含まれるピックアップの各々から出力される音波形信号を左右2チャンネルにパンニングしてミキシングするミキサ104を備えている。
また、波形合成装置10は、ミキサ104から出力される左右2チャンネルの音波形信号を各々用いて合成音を生成するフィルタである次数成分強調フィルタ103Rおよび次数成分強調フィルタ103Lと、次数成分強調フィルタ103Rおよび次数成分強調フィルタ103Lから出力される音波形信号にエンジンルームから車内への音の伝達に伴う周波数特性の変化を反映させるフィルタである伝達特性模擬フィルタ105Rおよび伝達特性模擬フィルタ105Lと、アクセル開度センサ15から出力されるアクセル開度信号に応じてパラメータが連続的に変化するフィルタ処理を伝達特性模擬フィルタ105Rおよび伝達特性模擬フィルタ105Lから出力される音波形信号に各々施す動的フィルタ106Rおよび動的フィルタ106Lを備えている。
また、波形合成装置10は、伝達特性模擬フィルタ105および動的フィルタ106の行うフィルタ処理のパラメータやユーザインタフェース画面を定義する画面定義データ等を予め記憶するとともに、波形合成装置10の各構成部が利用する各種データを一時的に記憶する記憶部107と、記憶部107に記憶されている画面定義データに基づきユーザインタフェース画面等を示す描画データを生成しディスプレイ19に出力する画面生成部108と、入力デバイス18から受け取った信号に基づきユーザの入力した各種パラメータを特定するパラメータ入力部109を備えている。
次数成分強調フィルタ103A〜Cおよび次数成分強調フィルタ103R〜Lはいずれも同じ構成および機能を有している。従って、以下それらを区別する必要がない場合には、単に次数成分強調フィルタ103と呼ぶ。図8は、次数成分強調フィルタ103の構成を示したブロック図である。
次数成分強調フィルタ103は、バルブ開口センサ14からバルブ開口信号を1つ受信するごとに他の構成部(例えば、次数成分強調フィルタ103Aの場合、吸気音ピックアップ111)から受け取った音波形信号から単発音を示す波形信号を1つ切り出す音波形切出部1031と、音波形切出部1031により切り出された単発音の波形信号に対しユーザにより入力されたパラメータに従ったイコライザ処理を行った後、記憶部107に記憶させるイコライザ1032を備えている。
また、次数成分強調フィルタ103は、ユーザにより入力されたパラメータに応じた時間間隔および振幅のパルス信号を順次生成し出力する読出パルス生成部1033と、読出パルス生成部1033により生成されるパルス信号をトリガとしてイコライザ1032により記憶部107に記憶された音波形信号を読み出す音波形読出部1034と、音波形読出部1034により順次読み出される音波形信号に異なるノイズ波形信号を付加することにより音波形信号間の相関を変更する相関変更部1035を備えている。
さらに、次数成分強調フィルタ103は、読出パルス生成部1033により生成されるパルス信号のタイミングおよび振幅に応じて相関変更部1035により生成される音波形信号の各々を振幅方向および時間方向に伸縮することにより、一連の音信号波形の間に振幅揺らぎおよび時間揺らぎを付加する揺らぎ付加部1036と、揺らぎ付加部1036により振幅揺らぎの付加された音波形信号に両端がゼロの窓関数を乗じる窓関数処理部1037と、窓関数処理部1037により順次生成される音波形信号をミキシングするミキシング部1038を備えている。ミキシング部1038によりミキシングされた音信号波形は、順次、他の構成部(例えば、次数成分強調フィルタ103Aの場合、ミキサ104)に出力される。
[3.2.動作]
続いて、波形合成システム1の動作を説明する。ユーザにより波形合成装置10の起動操作が行われると、波形合成装置10の画面生成部108は、記憶部107からユーザインタフェースの画面定義データを読み出して画面の描画データを生成し、ディスプレイ19に出力する。その結果、ディスプレイ19にユーザインタフェース画面が表示される。
続いて、波形合成システム1の動作を説明する。ユーザにより波形合成装置10の起動操作が行われると、波形合成装置10の画面生成部108は、記憶部107からユーザインタフェースの画面定義データを読み出して画面の描画データを生成し、ディスプレイ19に出力する。その結果、ディスプレイ19にユーザインタフェース画面が表示される。
図9は、ディスプレイ19に表示されるユーザインタフェース画面を例示した図である。ユーザインタフェース画面には、気筒数を選択するためのリストボックス181、音響特性の変化を気筒ごとの音について与えたいかエンジン音全体について与えたいかを選択するためのオプションボタン群182、音響特性に変化を与えたい音の対象を選択するためのオプションボタン群183、グラフィックイコライザを構成するフェーダ群184、相関の程度を指定するためのスライダ185、時間揺らぎの程度を指定するためのスライダ186、振幅揺らぎの程度を指定するためのスライダ187、エンジン合成の開始および終了を指示するためのコマンドボタン188が含まれている。
リストボックス181において、ユーザは実際のエンジンの気筒数を選ぶことも、それと異なる気筒数を選ぶこともできる。例えばユーザがリストボックス181において6気筒を選択すると、波形合成システム1は以下に説明する合成処理により実際のエンジン音から6気筒エンジンの音を合成し、車内にその合成音を再生する。
オプションボタン群182には、「気筒音のみ」および「エンジン音全体」の選択肢が含まれている。「気筒音のみ」は、次数成分強調フィルタ103A〜Cを有効化するとともに次数成分強調フィルタ103R〜Lを無効化し、吸気音ピックアップ111、爆発音ピックアップ112および排気音ピックアップ113から出力される音波形信号の各々に関し、次数成分強調フィルタ103により音響特性の調整を行うことを選択する選択肢である。一方、「エンジン音全体」は、次数成分強調フィルタ103R〜Lを有効化するとともに次数成分強調フィルタ103A〜Cを無効化し、ミキサ104において気筒から発せられる音とメカノイズがミキシングされた後の音波形信号に関し、次数成分強調フィルタ103により音響特性の調整を行うことを選択する選択肢である。
オプションボタン群182において「気筒音のみ」が選択された場合、オプションボタン群183には、その下に示されるフェーダ群184等により音響特性に変化を与える対象の音として、「吸気音」、「爆発音」および「排気音」の選択肢が含まれる。これらの選択肢は、それぞれ次数成分強調フィルタ103A〜Cに対応する。一方、オプションボタン群182において「エンジン音全体」が選択された場合、オプションボタン群183には、その下に示されるフェーダ群184等により音響特性に変化を与える対象の音として、「右」および「左」の選択肢が含まれる。これらの選択肢は、それぞれ次数成分強調フィルタ103R〜Lに対応する。
ユーザは、オプションボタン群183に示される選択肢を順次選択しては、フェーダ群184等の操作を行う作業を繰り返す。ユーザが入力デバイス18に触れることによりフェーダ群184等を操作して各種パラメータの入力を行うと、入力デバイス18はユーザの操作に応じた信号を波形合成装置10のパラメータ入力部109に出力する。パラメータ入力部109は入力デバイス18から受け取った信号および記憶部107に記憶されているユーザインタフェース画面の定義データに基づき、ユーザにより入力されたパラメータを特定し、特定したパラメータを画面定義データに含まれる各オブジェクトの属性値として記憶部107に記憶させる。例えば、ユーザがオプションボタン群182において「気筒音のみ」を選択し、オプションボタン群183において「吸気音」を選択した状態で、スライダ187のノブを移動して相関の程度「2.8」を入力した場合、記憶部107には「吸気音」に対応するスライダ187の属性値として「2.8」が記憶される。
ユーザは上記のようにしてユーザインタフェース画面に表示される各種パラメータの入力を終えると、コマンドボタン188に触れてエンジン音合成の開始を指示する。この指示に応じて、波形合成装置10はエンジン音の合成処理およびその出力を開始する。
まず、ユーザによりオプションボタン群182において「気筒音のみ」が選択されている場合、次数成分強調フィルタ103A〜Cは、それぞれ吸気音ピックアップ111、爆発音ピックアップ112および排気音ピックアップ113から音波形信号を継続的に受け取り、受け取った音波形信号から合成した音波形信号を継続的にミキサ104に出力する。次数成分強調フィルタ103A〜Cの各々の動作は、単発音の波形信号の切り出しタイミングが異なる点以外は同じであるため、以下、次数成分強調フィルタ103Aの動作を例として説明する。
次数成分強調フィルタ103Aにおいて、音波形切出部1031は、常時、吸気音ピックアップ111から吸気音の波形信号を受け取っている。その状態で、音波形切出部1031は、回転速度センサ13から1秒毎に回転速度信号を受け取る。また、音波形切出部1031は、バルブ開口センサ14からエンジンの第1気筒の吸気バルブが開き始めるタイミングでバルブ開口信号を受け取る。
回転速度信号により示されるクランクシャフトの回転速度をr(回転/秒)とすると、第1気筒の爆発の4工程1サイクルに要する時間はT=2/r(秒)である。音波形切出部1031は、バルブ開口信号を受け取ったタイミングからT×(3/4)だけ経過したタイミングをトリガとし、順次、吸気音ピックアップ111から受け取る音波形信号から長さTの音波形信号を切り出す。ただし、このTは、rの変化により時々刻々と変化するため、音波形切出部1031により切り出される音波形信号の各々の長さもそれに応じて変化する。このように切り出される長さTの音波形信号は、単発音における吸気音を示す波形信号である。
音波形切出部1031がこのように吸気バルブの開口開始タイミングからT×(3/4)だけ遅れたタイミング、すなわち次に吸気バルブが開口を開始するタイミングのT×(1/4)だけ早いタイミングで単発音の波形信号の切り出しを開始するのは、仮に吸気バルブの開口開始タイミングから切り出しを開始すると、吸気音の特徴部分を示す波形が切り出される単発音の波形信号の端付近に位置してしまい、後の窓関数処理部1037による処理によりその特徴部分がほとんどカットされてしまうためである。そのような不都合を回避するた、波形信号の切り出し開始タイミングを吸気バルブの開口開始タイミングからずらしている。なお、波形信号の切り出し開始タイミングを遅らせる程度はT×(3/4)に限られず、例えばT×(7/8)だけ遅らせるようにしてもよい。
音波形切出部1031により切り出される単発音の波形信号の区間をより具体的に示すと次のようになる。
音波形切出部1031がバルブ開口信号を受け取るタイミングをtn、tn+1、tn+2、・・・とする。
音波形切出部1031がバルブ開口信号を受け取ったタイミングで最後に受け取っている回転速度信号により示される回転速度をそれぞれrn、rn+1、rn+2、・・・とする。
その場合、単発音を切り出しの開始タイミングは、t+T×(3/4)=t+3/(2r)より、tn+3/(2rn)、tn+1+3/(2rn+1)、tn+2+3/(2rn+2)、・・・となる。
従って、吸気音ピックアップ111から受け取られる音波形信号の以下の区間が、それぞれ単発音の波形信号として切り出される。
tn+3/(2rn) 〜 tn+1+3/(2rn+1)、
tn+1+3/(2rn+1) 〜 tn+2+3/(2rn+2)、
tn+2+3/(2rn+2) 〜 tn+3+3/(2rn+3)、
・・・。
音波形切出部1031がバルブ開口信号を受け取るタイミングをtn、tn+1、tn+2、・・・とする。
音波形切出部1031がバルブ開口信号を受け取ったタイミングで最後に受け取っている回転速度信号により示される回転速度をそれぞれrn、rn+1、rn+2、・・・とする。
その場合、単発音を切り出しの開始タイミングは、t+T×(3/4)=t+3/(2r)より、tn+3/(2rn)、tn+1+3/(2rn+1)、tn+2+3/(2rn+2)、・・・となる。
従って、吸気音ピックアップ111から受け取られる音波形信号の以下の区間が、それぞれ単発音の波形信号として切り出される。
tn+3/(2rn) 〜 tn+1+3/(2rn+1)、
tn+1+3/(2rn+1) 〜 tn+2+3/(2rn+2)、
tn+2+3/(2rn+2) 〜 tn+3+3/(2rn+3)、
・・・。
音波形切出部1031は、上記のように順次切り出した単発音の波形信号をイコライザ1032に出力する。イコライザ1032は音波形切出部1031から受け取る単発音の波形信号に対し、ユーザにより入力されたパラメータ群、すなわちユーザインタフェース画面の画面定義データに含まれる「吸気音」に対応するフェーダ群184の属性値として記憶部107に記憶されているパラメータ群に従い、各周波数帯の振幅を増幅もしくは低減させることにより、単発音の波形信号の周波数特性を変更する。イコライザ1032は周波数特性に変更を加えた単発音の波形信号を一時的に記憶部107に記憶する。
上記のように、イコライザ1032により単発音の波形信号が1サイクルの時間間隔Tで順次、記憶部107に記憶される一方で、読出パルス生成部1033はユーザによりリストボックス181において指定された気筒数をNとする場合、約T/Nの時間間隔で読出パルスを生成する。以下の説明においては、例として、ユーザによりリストボックス181において6気筒が選択されているものとする。
読出パルス生成部1033は、音波形切出部1031と同様に、回転速度センサ13およびバルブ開口センサ14から各々、回転速度信号およびバルブ開口信号を継続的に受け取る。読出パルス生成部1033は、バルブ開口信号を受信したタイミングtnにおいて、tn+3/(2rn)を算出する。このタイミングは、第1気筒の吸気音の単発音の読み出し開始タイミングである。以下、このタイミングを「第1気筒タイミング」と呼ぶ。
読出パルス生成部1033は、第1気筒タイミング:tn+3/(2rn)を算出すると、ユーザにより入力された気筒数N、すなわちユーザインタフェース画面の画面定義データに含まれるリストボックス181の属性値として記憶部107に記憶されている気筒数Nに基づき、以下の(N−1)個のタイミングを算出する(ただし、Tn=2/rn)。
tn+3/(2rn)+Tn/N=tn+3/(2rn)+2/(N・rn)、
tn+3/(2rn)+2Tn/N=tn+3/(2rn)+4/(N・rn)、
・・・、
tn+3/(2rn)+(N−1)Tn/N=tn+3/(2rn)+(2N−2)/(N・rn)。
tn+3/(2rn)+Tn/N=tn+3/(2rn)+2/(N・rn)、
tn+3/(2rn)+2Tn/N=tn+3/(2rn)+4/(N・rn)、
・・・、
tn+3/(2rn)+(N−1)Tn/N=tn+3/(2rn)+(2N−2)/(N・rn)。
今、ユーザはリストボックス181で「6気筒」を選択し、N=6であるため、上記のタイミングはそれぞれ、以下のようになる。
tn+3/(2rn)+Tn/6=tn+3/(2rn)+2/(6rn)=tn+11/(6rn)、
tn+3/(2rn)+2Tn/6=tn+3/(2rn)+4/(6rn)=tn+13/(6rn)、
tn+3/(2rn)+3Tn/6=tn+3/(2rn)+6/(6rn)=tn+15/(6rn)、
tn+3/(2rn)+4Tn/6=tn+3/(2rn)+8/(6rn)=tn+17/(6rn)、
tn+3/(2rn)+5Tn/6=tn+3/(2rn)+10/(6rn)=tn+19/(6rn)。
tn+3/(2rn)+Tn/6=tn+3/(2rn)+2/(6rn)=tn+11/(6rn)、
tn+3/(2rn)+2Tn/6=tn+3/(2rn)+4/(6rn)=tn+13/(6rn)、
tn+3/(2rn)+3Tn/6=tn+3/(2rn)+6/(6rn)=tn+15/(6rn)、
tn+3/(2rn)+4Tn/6=tn+3/(2rn)+8/(6rn)=tn+17/(6rn)、
tn+3/(2rn)+5Tn/6=tn+3/(2rn)+10/(6rn)=tn+19/(6rn)。
これらの5つのタイミングは、それぞれ、第2気筒〜第6気筒の吸気音の単発音を、時間揺らぎを付加することなく読み出す場合の読み出し開始タイミングである。以下、このタイミングをそれぞれ、「第2気筒基準タイミング」〜「第6気筒基準タイミング」と呼ぶ。ここで、実際のエンジンは4気筒であるが、実際のエンジンの回転数rnから算出した1サイクルの時間Tnに基づき、6気筒エンジンが同じ回転数で運転している場合における第2〜第6気筒の単発音の読み出し開始タイミングが算出されている。
読出パルス生成部1033は、上記のように算出した第2〜第6気筒基準タイミングに対し、ユーザにより入力された時間揺らぎの程度、すなわちユーザインタフェース画面の画面定義データに含まれるスライダ186の属性値として記憶部107に記憶されているパラメータに基づき、揺らぎを付加する。
例えば、ユーザにより入力された時間揺らぎの程度が「4.3(%)」である場合、読出パルス生成部1033は1サイクルの時間Tnの−4.3%〜4.3%の範囲のいずれかの値をとる乱数値を5つ生成し、生成した乱数値をそれぞれ第2〜第6気筒基準タイミングに加算する。すなわち、読出パルス生成部1033は−0.043Tn〜0.043Tnの範囲の乱数値e2、e3、e4、e5およびe6を生成し、以下の5つのタイミングを算出する。
tn+11/(6rn)+e2、
tn+13/(6rn)+e3、
tn+15/(6rn)+e4、
tn+17/(6rn)+e5、
tn+19/(6rn)+e6。
tn+11/(6rn)+e2、
tn+13/(6rn)+e3、
tn+15/(6rn)+e4、
tn+17/(6rn)+e5、
tn+19/(6rn)+e6。
上記のように算出された5つのタイミングがそれぞれ、実際に第2〜第6気筒の吸気音の単発音が読み出される際の読み出し開始タイミングである。以下、これらの5つのタイミングをそれぞれ「第2気筒タイミング」〜「第6気筒タイミング」と呼ぶ。
続いて、読出パルス生成部1033は、ユーザにより入力された振幅揺らぎの程度、すなわちユーザインタフェース画面の画面定義データに含まれるスライダ187の属性値として記憶部107に記憶されているパラメータに基づき、振幅揺らぎを示す5つの乱数値を生成する。例えば、ユーザにより入力された振幅揺らぎの程度が「6.9(%)」である場合、読出パルス生成部1033は−0.069〜0.069範囲のいずれかの値をとる乱数値E2、E3、E4、E5およびE6を生成する。そして、読出パルス生成部1033は、生成した乱数値を用いて、以下の5つの数値を算出する。
1+E2、
1+E3、
1+E4、
1+E5、
1+E6。
1+E2、
1+E3、
1+E4、
1+E5、
1+E6。
上記のように算出された5つの数値は、それぞれ第2〜第6気筒の吸気音の単発音の振幅方向の伸縮率を示す。なお、第1気筒の吸気音の単発音に対する振幅方向の伸縮率は1であり、伸縮は行われない。
読出パルス生成部1033は、上記のように第1〜第6気筒タイミングと、第1〜第6気筒に対応する振幅方向の伸縮率を算出すると、第1気筒タイミングにおいて第1気筒の伸縮率を振幅とするパルス信号を読出パルス信号として生成し、音波形読出部1034に出力する。同様に、読出パルス生成部1033は、第2気筒タイミング〜第6気筒タイミングにおいて、第2気筒〜第6気筒の伸縮率を振幅とするパルス信号を読出パルス信号として生成し、音波形読出部1034に出力する。
読出パルス生成部1033は、その後、タイミングtn+1、tn+2、・・・においてバルブ開口信号を受信すると、その都度、同様に第1〜第6気筒タイミングと、第1〜第6気筒に対応する振幅方向の伸縮率を算出し、それらに基づき読出パルス信号を生成して音波形読出部1034および揺らぎ付加部1036に出力する。
図10は、読出パルス生成部1033から出力される読出パルスを示したグラフである。図10のグラフにおいて、横軸は時間、縦軸は振幅である。グラフに記載の読出パルスのはじめの3つに関しては、その生成タイミングおよび振幅を示す座標値を記載してあるが、4つめ以降については図が煩雑となるため、その記載を省略している。図10に示されるように、読出パルス生成部1033からは、ほぼT/Nの時間間隔で、ほぼ1の振幅の読出パルスが出力されるが、それらの時間間隔および振幅には、ユーザにより入力された揺らぎの程度に応じた揺らぎが付加されている。
音波形読出部1034は、読出パルス生成部1033から図10に示されるタイミングで順次読出パルスを受け取ると、それをトリガとしてイコライザ1032により記憶部107に一時的に記憶されている音波形信号を読み出し、相関変更部1035に引き渡す。音波形読出部1034により読み出される音波形信号は、第1気筒の吸気音の単発音に周波数特性の調整を行った波形信号である。
相関変更部1035は、常時、−1〜1の範囲のいずれかの値を取る乱数列を(N−1)列、生成している。ただし、Nはユーザにより入力された気筒数である。すなわち、この例ではユーザは6気筒を選択しているため、相関変更部1035は5列の乱数列を生成している。また、相関変更部1035は常時、バルブ開口センサ14からバルブ開口信号を受け取っている。相関変更部1035は、音波形読出部1034から音波形信号を受け取ると、受け取ったタイミングが第1気筒タイミングおよび第2気筒基準タイミング〜第6気筒基準タイミングのいずれに最も近いかに基づき、受け取った音波形信号が第1〜第6気筒のいずれに対応するものであるかを判定する。
相関変更部1035は、受け取った音波形信号が第1気筒に対応するものであると判定した場合、特段の処理を行わず、受け取った音波形信号を揺らぎ付加部1036に引き渡す。一方、相関変更部1035は、受け取った音波形信号が第2〜第6気筒に対応するものであると判定した場合、ユーザにより入力された相関の程度、すなわちユーザインタフェース画面の画面定義データに含まれるスライダ185の属性値として記憶部107に記憶されているパラメータに応じた比率で、受け取った音波形信号と、生成した乱数列とをミキシングする。
例えば、受け取った音波形信号が第2気筒に対応するものであると判定され、ユーザにより入力された相関の程度が「2.8」である場合、相関変更部1035は受け取った音波形信号に(1−0.028)を乗じたものと、第1の乱数列に(受け取った音波形信号の最大振幅)×(0.028)を乗じたものとをミキシングする。このミキシング処理により生成される音波形信号は、相関変更部1035が受け取った音波形信号と正の相関を持ちつつ異なる音波形信号である。また、ユーザにより入力された相関の程度の数値が大きい程、音波形信号間の相関は小さくなる。相関変更部1035は、第3〜第6気筒に対応する音波形信号を受け取った場合も、それぞれ第2〜第5の乱数列を用いて、同様の音波形信号を生成する。相関変更部1035は生成した音波形信号を揺らぎ付加部1036に引き渡す。
揺らぎ付加部1036は、読出パルス生成部1033から読出パルス(図10参照)を順次受け取るとともに、相関変更部1035から音信号波形を順次受け取る。音波形読出部1034および相関変更部1035の処理が十分に速い場合、揺らぎ付加部1036が読出パルス生成部1033から読出パルスを受け取るタイミングと、相関変更部1035から音信号波形を受け取り始めるタイミングはほぼ同じである。従って、それらのタイミングの近さに基づき、揺らぎ付加部1036は相関変更部1035から受け取る音波形信号と読出パルス生成部1033から受け取る読出パルスを対応付ける。
続いて、揺らぎ付加部1036は受け取った読出パルスの振幅値と音波形信号を一時的に記憶部107に記憶する。その後、揺らぎ付加部1036は読出パルスおよび音波形信号を約T/Nの時間間隔で受け取るが、続く(N−1)個めの読出パルスを受け取るまで、一時的に記憶した音波形信号に対し処理を行わない。
例えば、揺らぎ付加部1036は、tn+11/(6rn)+e2のタイミングで読出パルスPkを受け取り、その近傍のタイミングで音波形信号Wkを受け取った場合、その後、tn+13/(6rn)+e3、tn+15/(6rn)+e4、・・・のタイミングで読出パルスPk+1、Pk+2、・・・、Pk+5を受け取る間、音信号波形Wkには何も行わない。
その後、tn+1+11/(6rn+1)+e’2において読出パルスPk+6を受け取った時点で、音波形信号Wkを記憶部107から読み出し、読み出した音波形信号Wkに対し揺らぎ付加の処理を行う。ただし、e’2はtn+1+11/(6rn+1)のタイミングに対し、読出パルス生成部1033が付加した時間揺らぎに関する乱数値である。
揺らぎ付加の処理を具体的に説明すると、まず、揺らぎ付加部1036は、読出パルスPkの振幅値を伸縮率とし、音波形信号Wkを振幅方向に伸縮する。続いて、揺らぎ付加部1036は、読出パルスPkと読出パルスPk+6の間の時間と、振幅方向に伸縮された音波形信号Wkの時間とが一致するように、その音波形信号Wkを時間方向に伸縮する。このように揺らぎ付加部1036により順次生成される音波形信号は、読出パルス生成部1033から受け取る読出パルス列に従い互いに異なる伸縮率で振幅方向および時間方向に伸張されているため、全体として振幅方向および時間方向に揺らぎを持ったものとなる。揺らぎ付加部1036は、生成した音信号波形を順次、窓関数処理部1037に引き渡す。
窓関数処理部1037は、揺らぎ付加部1036から音波形信号を受け取ると、受け取った音信号波形に対し、受け取った音信号波形と長さが同じで、時間方向の中央の振幅が1であり、時間方向の両端にかけて徐々に振幅が小さくなり、両端で振幅がゼロとなる窓関数を乗じる。その結果、時間方向の両端の振幅がゼロである音波形信号が生成される。窓関数処理部1037は生成した音波形信号を順次、ミキシング部1038に出力する。
ミキシング部1038は、窓関数処理部1037からほぼT×(1/6)の時間間隔で、長さがほぼTの音波形信号を順次受け取る。ミキシング部1038は、受け取った音波形信号群を順次ミキシングする。ミキシング部1038のミキシングにより生成される音波形信号は、全体として、仮想的な6気筒エンジンの吸気音を示す(図1および図2参照)。ミキシング部1038はミキシングにより生成した音波形信号をミキサ104に出力する。
以上のようにして、次数成分強調フィルタ103Aにより、吸気音ピックアップ111から受け取った第1気筒の単発音の音波形信号に対し各種の加工が行われ、6気筒エンジンが発する吸気音の音波形信号が合成されて、ミキサ104に出力される。
次数成分強調フィルタ103Bは次数成分強調フィルタ103Aと同様の処理を行うことにより、6気筒エンジンが発する爆発音の音波形信号を合成し、ミキサ104に出力する。ただし、次数成分強調フィルタ103Bは爆発音ピックアップ112から爆発音の単発音の波形信号を受け取る点と、そのため、音波形切出部1031による単発音の切り出しタイミングおよび読出パルス生成部1033による読出パルスの生成タイミングが、例えばT×(1/2)だけ次数成分強調フィルタ103Aにおける場合から遅れたタイミングとなる点が、次数成分強調フィルタ103Aの場合と異なる。
同様に、次数成分強調フィルタ103Cは次数成分強調フィルタ103Aと同様の処理を行うことにより、6気筒エンジンが発する排気音の音波形信号を合成し、ミキサ104に出力する。ただし、次数成分強調フィルタ103Cは排気音ピックアップ113から排気音の単発音の波形信号を受け取る点と、そのため、音波形切出部1031による単発音の切り出しタイミングおよび読出パルス生成部1033による読出パルスの生成タイミングが、例えばT×(3/4)だけ次数成分強調フィルタ103Aにおける場合から遅れたタイミングとなる点が、次数成分強調フィルタ103Aの場合と異なる。
ミキサ104は、次数成分強調フィルタ103A〜Cの各々から受け取る音波形信号群と、メカノイズピックアップ群12に含まれるカムチェーン音ピックアップ121およびファンベルト音ピックアップ122の各々から受け取る一連の音波形信号とを、所定のパンニング処理をした後、左右の各チャンネルに配分し、それらをミキシングする。パンニングの比率は、例えば吸気音ピックアップ111〜ファンベルト音ピックアップ122の各々が自動車の左右方向のセンタ位置からどの程度左右にずれた位置に配置されているかにより決定される。
ミキサ104はミキシングにより生成した右チャンネルの音波形信号および左チャンネルの音波形信号をそれぞれ、次数成分強調フィルタ103RおよびLに順次出力する。ただし、ユーザによりオプションボタン群182において「気筒音のみ」が選択されている場合、次数成分強調フィルタ103RおよびLはミキサ104から受け取った音波形信号に何も行わず、それらを伝達特性模擬フィルタ105RおよびLに引き渡す。
伝達特性模擬フィルタ105RおよびLは、次数成分強調フィルタ103RおよびLから受け取る音波形信号を所定の伝達関数に入力することにより、エンジンルームにおいて発生した音が車内の運転者の耳に到達するまでに生じる周波数特性の変化を、次数成分強調フィルタ103RおよびLから受け取った音信号波形に反映させる。
より具体的には、エンジンルームの例えば中央位置において発したインパルス信号に対する、車内の運転者の頭位置におけるインパルス応答に基づき算出された伝達関数の係数列が、予め記憶部107に記憶されている。伝達特性模擬フィルタ105は、例えば、次数成分強調フィルタ103RおよびLから受け取った音信号波形をフーリエ変換して得られる係数列の各々に、記憶されている伝達関数の係数列の各々を乗じて得られる係数列を逆フーリエ変換する。伝達特性模擬フィルタ105RおよびLは、そのようにして生成した音信号波形を動的フィルタ106RおよびLに各々出力する。
動的フィルタ106RおよびLは、アクセル開度センサ15から常時、アクセル開度信号を受け取り、受け取ったアクセル開度信号に応じたフィルタ処理を伝達特性模擬フィルタ105RおよびLから受け取る音信号波形に行う。動的フィルタ106RおよびLが行うフィルタ処理は、例えばグラフィックイコライザ処理である。動的フィルタ106の処理のため、記憶部107には予め、グラフィックイコライザの各周波数帯に関し、アクセル開度と増幅率との対応データが記憶されている。
図11は、記憶部107に記憶されている対応データを示したグラフである。図11のデータ例に従う場合、アクセル開度信号が90を示す時、動的フィルタ106は中心周波数63Hz、125Hz、・・・の周波数帯の振幅を、それぞれ1.2倍、1.4倍、・・・に増幅する。動的フィルタ106RおよびLは、そのようなフィルタ処理を行った音波形信号を、それぞれアンプ16RおよびLに出力する。
アンプ16RおよびLは、上記のようにして波形合成装置10の動的フィルタ106RおよびLから音信号波形を受け取ると、受け取った音波形信号をスピーカレベルに増幅し、それぞれスピーカ17RおよびLに出力する。スピーカ17RおよびLは、アンプ16RおよびLから受け取った音波形信号を音に変換して発音する。その結果、運転者には波形合成装置10により合成されたエンジン音が聞こえる。
上記のように運転者により聞こえるエンジン音は、ユーザがユーザインタフェース画面(図9参照)において入力した各種パラメータに応じた音響特性を有する音である。すなわち、ユーザはユーザインタフェース画面において希望の気筒数を入力することにより、実際のエンジンの気筒数と同じもしくは異なる任意の気筒数のエンジン音を合成させることができる。また、ユーザはユーザインタフェース画面において、吸気音、爆発音および排気音の各々に関し、単発音波形の周波数特性をフェーダ群184により示されるグラフィックイコライザで調整することにより、エンジン音の音色の癖を好みのものに調整することができる。
また、ユーザはユーザインタフェース画面において、吸気音、爆発音および排気音の各々に関し、相関の程度、時間揺らぎの程度および振幅の程度を調整することにより、回転整数次の音の際立ちの程度を調整することができる。
ところで、ユーザがユーザインタフェース画面のオプションボタン群182において「エンジン音全体」を選択している場合、次数成分強調フィルタ103A〜Cは吸気音ピックアップ111〜排気音ピックアップ113の各々から受け取った音波形信号に何も処理を加えず、そのままそれらをミキサ104に引き渡す。従って、ミキサ104によるミキシングにより得られる音波形信号は、一連の吸気音、爆発音、排気音、カムチェーン音およびファンベルト音がミキシングされた音を示す波形信号である。
次数成分強調フィルタ103RおよびLは、ミキサ104から上記のようにミキシングにより得られた音波形信号を用いて、次数成分強調フィルタ103Aについて上述したものと同様の処理を行う。なお、次数成分強調フィルタ103RおよびLの音波形切出部1031による単発音の波形信号の切り出しタイミングは、その時間間隔がバルブ開口センサ14からバルブ開口信号を受け取る時間間隔と一致すればいずれのタイミングでもよいが、窓関数処理によりエンジン音の特徴部分がカットされないように、エンジン音が比較的小さいと思われるタイミング、例えば圧縮段階のタイミングを切り出しタイミングとすることが望ましい。
次数成分強調フィルタ103RおよびLにより生成された音波形信号群は、それぞれ伝達特性模擬フィルタ105RおよびLに引き渡され、その後、上述した伝達特性模擬フィルタ105、動的フィルタ106およびアンプ16の処理を経た後、スピーカ17RおよびLから発音される。
次数成分強調フィルタ103A〜Cが有効化される場合と、次数成分強調フィルタ103R〜Lが有効化される場合とでは、前者においては単発音の切り出しおよび多気筒エンジン音の合成の処理が吸気音、爆発音および排気音の各々において行われた後にメカノイズとともにミキシングされるのに対し、後者においては単発音の切り出しおよび多気筒エンジン音の合成の処理が吸気音、爆発音、排気音およびメカノイズのミキシングの後に行われる点が異なっている。そのため、前者においては吸気音、爆発音および排気音の各々に関し音響特性の調整が可能であるのに対し、後者においては左右の音の各々に関し音響特性の調整が可能である。なお、それらのメリットを両方備えるように、次数成分強調フィルタ103A〜Cと次数成分強調フィルタ103R〜Lの両方を同時に有効化するようにしてもよい。
以上のように、波形合成システム1によれば、ユーザは自動車の運転中において、好みの気筒数および周波数特性のエンジン音を、運転状態に応じて変化させながら合成させて聞くことができる。その結果、運転者は好みのエンジン音を聞きながら運転を楽しむことができる。
[4.変形例]
上述した実施形態は、本願発明の技術的思想の範囲で様々に変形することができる。以下にそのような変形例を示す。
上述した実施形態は、本願発明の技術的思想の範囲で様々に変形することができる。以下にそのような変形例を示す。
[4.1.第1変形例]
上述した実施形態においては、各気筒に対応する単発音間の相関を調整するために、相関変更部1035がランダム波形を生成し、第1気筒の単発音の波形信号とランダム波形の信号とをユーザの入力したパラメータに応じた振幅比でミキシングすることにより、第2気筒以降の気筒に対応する単発音を生成するものとした。これに対し、第1変形例においては、ランダム波形を用いることなく、実際の多気筒エンジンの有する複数の気筒の各々から得られる波形信号を用いて、互いに相関の低い単発音を生成する。
上述した実施形態においては、各気筒に対応する単発音間の相関を調整するために、相関変更部1035がランダム波形を生成し、第1気筒の単発音の波形信号とランダム波形の信号とをユーザの入力したパラメータに応じた振幅比でミキシングすることにより、第2気筒以降の気筒に対応する単発音を生成するものとした。これに対し、第1変形例においては、ランダム波形を用いることなく、実際の多気筒エンジンの有する複数の気筒の各々から得られる波形信号を用いて、互いに相関の低い単発音を生成する。
第1変形例においては、多気筒エンジンの有する各気筒に関し、吸気音ピックアップ111、爆発音ピックアップ112および排気音ピックアップ113が配置されている。例えば4気筒エンジンの場合、吸気音ピックアップ111a〜d、爆発音ピックアップ112a〜dおよび排気音ピックアップ113a〜d(ただし、a〜dは各々、第1〜第4気筒に対応する)がエンジンの所定位置に配置され、各々波形信号を生成する。
また、第1変形例においては、各気筒における吸気バルブの開口開始タイミングを基準として単発音の切り出しタイミングが行われる必要があるため、バルブ開口センサ14a〜dが各気筒の吸気バルブ付近に配置されている。
例えば、次数成分強調フィルタ103Aは、吸気音ピックアップ111a〜dの各々から吸気音を示す音波形信号を受け取り、それらの各々から吸気音の単発音の波形信号を切り出す。そのように切り出される波形信号は、互いに異なる波形信号である。
ユーザにより、リストボックス181において実際のエンジンの気筒数と同じ気筒数(この場合、4気筒)が選択されている場合、次数成分強調フィルタ103Aの相関変更部1035は、合成するエンジン音の各気筒に対応する単発音の波形信号として、以下の音波形信号を用いる。
合成音の第1気筒:実機の第1気筒の波形、
合成音の第2気筒:実機の第1気筒の波形を実機の第2気筒の波形で調整、
合成音の第3気筒:実機の第1気筒の波形を実機の第3気筒の波形で調整、
合成音の第4気筒:実機の第1気筒の波形を実機の第4気筒の波形で調整。
合成音の第1気筒:実機の第1気筒の波形、
合成音の第2気筒:実機の第1気筒の波形を実機の第2気筒の波形で調整、
合成音の第3気筒:実機の第1気筒の波形を実機の第3気筒の波形で調整、
合成音の第4気筒:実機の第1気筒の波形を実機の第4気筒の波形で調整。
より具体的には、例えば、相関変更部1035は合成するエンジン音の第2気筒に対応する波形信号として、吸気音ピックアップ111aおよび吸気音ピックアップ111bの各々から出力された音波形信号から切り出された単発音波形をユーザの入力したパラメータに応じた振幅比でミキシングしたものを用いる。
一方、ユーザにより、リストボックス181において実際のエンジンの気筒数と異なる気筒数、例えば6気筒が選択されている場合、次数成分強調フィルタ103Aの相関変更部1035は、合成するエンジン音の各気筒に対応する単発音の波形信号として、以下の音波形信号を用いる。
合成音の第1気筒:実機の第1気筒の波形、
合成音の第2気筒:実機の第1気筒の波形を実機の第2気筒の波形で調整、
合成音の第3気筒:実機の第1気筒の波形を実機の第2気筒および第3気筒の波形で調整、
合成音の第4気筒:実機の第1気筒の波形を実機の第3気筒の波形で調整。
合成音の第5気筒:実機の第1気筒の波形を実機の第3気筒および第4気筒の波形で調整、
合成音の第6気筒:実機の第1気筒の波形を実機の第4気筒の波形で調整。
合成音の第1気筒:実機の第1気筒の波形、
合成音の第2気筒:実機の第1気筒の波形を実機の第2気筒の波形で調整、
合成音の第3気筒:実機の第1気筒の波形を実機の第2気筒および第3気筒の波形で調整、
合成音の第4気筒:実機の第1気筒の波形を実機の第3気筒の波形で調整。
合成音の第5気筒:実機の第1気筒の波形を実機の第3気筒および第4気筒の波形で調整、
合成音の第6気筒:実機の第1気筒の波形を実機の第4気筒の波形で調整。
より具体的には、例えば相関変更部1035は合成するエンジン音の第3気筒に対応する波形信号を生成するために、まず、吸気音ピックアップ111bおよび吸気音ピックアップ111cの各々から出力された音波形信号から切り出された単発音波形をそれぞれ伸縮率50%で振幅方向に伸縮したものをミキシングする。その後、相関変更部1035は、吸気音ピックアップ111aから出力された音波形信号から切り出された単発音波形と、ミキシングにより生成した音波形信号をユーザの入力したパラメータに応じた振幅比でミキシングしたものを、合成するエンジン音の第3気筒に対応する波形信号として生成する。
このように、第1変形例においては、複数の気筒の各々から得られる波形信号を用いて、互いに相関の低い単発音の波形信号が生成され、エンジン音合成に用いられる。
[4.2.第2変形例]
第2変形例においても、第1変形例と同様に、ランダム波形を用いることなく、互いに相関の低い単発音波形が生成され、それらの単発音波形がエンジン音合成に用いられる。しかしながら、第1変形例においては、多気筒エンジンの各々の気筒から異なる波形信号が取得されるのに対し、第2変形例においては、第1気筒から取得される波形信号の異なる区間が単発音波形として切り出され、そのように切り出された異なる単発音波形がエンジン音合成に用いられる。
第2変形例においても、第1変形例と同様に、ランダム波形を用いることなく、互いに相関の低い単発音波形が生成され、それらの単発音波形がエンジン音合成に用いられる。しかしながら、第1変形例においては、多気筒エンジンの各々の気筒から異なる波形信号が取得されるのに対し、第2変形例においては、第1気筒から取得される波形信号の異なる区間が単発音波形として切り出され、そのように切り出された異なる単発音波形がエンジン音合成に用いられる。
第2変形例においては、上述した実施形態と同様に、第1気筒にのみ、吸気音ピックアップ111、爆発音ピックアップ112、排気音ピックアップ113およびバルブ開口センサ14が配置されている。ただし、音波形切出部1031は1サイクルの時間をTとする場合、時間間隔Tで長さTの単発音の波形信号の切り出しを行うのではなく、T×{(N+1)/N}の時間間隔で長さTの単発音の波形信号を切り出す。
図12は、第2変形例において、ユーザがリストボックス181において4気筒を選択している場合に、音波形切出部1031が例えば吸気音ピックアップ111から出力された音波形信号から4つの単発音の波形信号を切り出す様子を示した図である。音波形切出部1031により切り出された単発音の波形信号は、最新の4つが記憶部107に記憶される。従って、記憶部107に記憶された4つの波形信号の各々は、5Tの時間間隔で更新されることになる。
次数成分強調フィルタ103Aの相関変更部1035は、合成するエンジン音の各気筒に対応する単発音の波形信号として、以下の音波形信号を用いる。
合成音の第1気筒:実機の第1気筒の波形から切り出された第1の波形、
合成音の第2気筒:実機の第1気筒の波形から切り出された第1の波形を実機の第1気筒の波形から切り出された第2の波形で調整、
合成音の第3気筒:実機の第1気筒の波形から切り出された第1の波形を実機の第1気筒の波形から切り出された第3の波形で調整、
合成音の第4気筒:実機の第1気筒の波形から切り出された第1の波形を実機の第1気筒の波形から切り出された第4の波形で調整。
合成音の第1気筒:実機の第1気筒の波形から切り出された第1の波形、
合成音の第2気筒:実機の第1気筒の波形から切り出された第1の波形を実機の第1気筒の波形から切り出された第2の波形で調整、
合成音の第3気筒:実機の第1気筒の波形から切り出された第1の波形を実機の第1気筒の波形から切り出された第3の波形で調整、
合成音の第4気筒:実機の第1気筒の波形から切り出された第1の波形を実機の第1気筒の波形から切り出された第4の波形で調整。
より具体的には、例えば、相関変更部1035は合成するエンジン音の第2気筒に対応する波形信号として、吸気音ピックアップ111から出力された音波形信号から切り出された第1の単発音波形と第2の単発音波形とをユーザの入力したパラメータに応じた振幅比でミキシングしたものを用いる。
上記のように音波形切出部1031により切り出される単発音の波形信号は、実際のエンジンの単発音と比較して、T×(1/4)の時間ずつ、その開始タイミングがずれてゆく。従って、第2〜第4の単発音の波形信号は、第1の単発音の波形信号との間で低い相関を示し、相関の調整のために、ランダム波形の代わりに利用することができる。
[4.3.第3変形例]
上述した実施形態においては、音波形切出部1031は、1サイクルの長さをTとする場合、時間間隔Tで毎回、入力される音波形信号から単発音の波形信号を切り出す処理を行うものとした。しかしながら、1サイクルの長さTは隣り合うサイクル間で大きく異なることはほとんどなく、特にエンジンの回転数が大きい場合にはその差は無視できるほど小さい。従って、第3変形例においては、音波形切出部1031は時間間隔Tで波形信号の切り出しを行わず、回転速度センサ13から受け取る回転速度信号の値が所定の閾値以上に変化したタイミングで波形信号の切り出しを行う。
上述した実施形態においては、音波形切出部1031は、1サイクルの長さをTとする場合、時間間隔Tで毎回、入力される音波形信号から単発音の波形信号を切り出す処理を行うものとした。しかしながら、1サイクルの長さTは隣り合うサイクル間で大きく異なることはほとんどなく、特にエンジンの回転数が大きい場合にはその差は無視できるほど小さい。従って、第3変形例においては、音波形切出部1031は時間間隔Tで波形信号の切り出しを行わず、回転速度センサ13から受け取る回転速度信号の値が所定の閾値以上に変化したタイミングで波形信号の切り出しを行う。
なお、音波形切出部1031が波形信号を切り出すタイミングとしては、所定時間間隔で到来するタイミングや、バルブ開口センサ14からバルブ開口信号を所定数受け取るごとのタイミングなど、他に様々なものが考えられるが、波形信号の切り出し処理を間引くものであればいずれを採用してもよい。
第3変形例によれば、音波形切出部1031およびイコライザ1032の処理を軽減することができる。
[4.4.第4変形例]
上述した実施形態においては、揺らぎ付加部1036が読出パルス生成部1033から読出パルスを受け取るとともに、相関変更部1035から音波形信号を受け取った後、1サイクルの長さTが経過するまで、揺らぎ付加部1036は受け取った音波形信号に処理を行わないものとした。これは、揺らぎ付加部1036が時間方向の伸縮を行うために、当該音波形信号により示される単発音の開始タイミングから、同じ気筒の次の単発音の開始タイミングまでの時間を算出する必要があるためである。
上述した実施形態においては、揺らぎ付加部1036が読出パルス生成部1033から読出パルスを受け取るとともに、相関変更部1035から音波形信号を受け取った後、1サイクルの長さTが経過するまで、揺らぎ付加部1036は受け取った音波形信号に処理を行わないものとした。これは、揺らぎ付加部1036が時間方向の伸縮を行うために、当該音波形信号により示される単発音の開始タイミングから、同じ気筒の次の単発音の開始タイミングまでの時間を算出する必要があるためである。
しかしながら、読出パルス生成部1033により生成される読出パルスの時間間隔は、時間揺らぎが付加されているものの、T/N(Nはユーザが入力した気筒数)から大きく乖離することはない。従って、第4変形例においては、揺らぎ付加部1036は時間方向の伸縮を行うことなく、読出パルスを受け取ると、相関変更部1035から受け取った音波形信号に振幅方向の伸縮のみを行い、すぐさまその音波形信号を窓関数処理部1037に出力する。
第4変形例によれば、揺らぎ付加部1036は相関変更部1035から受け取る音波形信号を一時的に記憶部107に記憶し、再度読み出す処理を行う必要がなくなるとともに、実際のエンジンから音波形信号が取得されたタイミングと、その音波形信号を用いてエンジン音が合成されるタイミングのずれが小さくなる。
[4.5.第5変形例]
上述した実施形態においては、バルブ開口センサ14から出力されるバルブ開口信号と、回転速度センサ13から出力される回転速度信号の両方を利用するものとした。しかしながら、例えばバルブ開口信号はクランクシャフト2回転につき1回、出力される。従って、第5変形例においては、波形合成システム1はバルブ開口センサ14のみを備え、回転速度信号の代わりにバルブ開口信号が1秒間に受け取られた個数の2倍の数値(回転/秒)が回転速度信号として用いられる。
上述した実施形態においては、バルブ開口センサ14から出力されるバルブ開口信号と、回転速度センサ13から出力される回転速度信号の両方を利用するものとした。しかしながら、例えばバルブ開口信号はクランクシャフト2回転につき1回、出力される。従って、第5変形例においては、波形合成システム1はバルブ開口センサ14のみを備え、回転速度信号の代わりにバルブ開口信号が1秒間に受け取られた個数の2倍の数値(回転/秒)が回転速度信号として用いられる。
なお、回転速度信号をバルブ開口信号で代用する代わりに、バルブ開口信号を回転速度信号で代用してもよい。すなわち、回転速度信号により示される回転速度rにより、1サイクルの時間TはT=2/rで算出される。従って、単発音の波形信号の切り出しタイミングを気筒の4工程1サイクルにおける動作に同期することを考慮しなければ、音波形切出部1031は任意のタイミングで単発音の波形信号の切り出しを開始し、その後、回転速度信号から算出される時間Tの経過ごとに単発音の波形信号の切り出しを行えばよい。
[4.6.第6変形例]
上述した実施形態においては、波形合成装置10は各構成部に対応する専用のハードウェア回路の組み合わせにより実現されることが想定されているが、それに限られない。すなわち、第6変形例においては、汎用コンピュータにアプリケーションプログラムに従った処理を実行させることにより、波形合成装置10が実現される。
上述した実施形態においては、波形合成装置10は各構成部に対応する専用のハードウェア回路の組み合わせにより実現されることが想定されているが、それに限られない。すなわち、第6変形例においては、汎用コンピュータにアプリケーションプログラムに従った処理を実行させることにより、波形合成装置10が実現される。
[5.備考]
上述した実施形態およびその変形例において示した数値や、それらの数値の算出方法は、本発明を説明するための例示であって、本発明の技術範囲はそれらの数値や算出方法に限らない。
上述した実施形態およびその変形例において示した数値や、それらの数値の算出方法は、本発明を説明するための例示であって、本発明の技術範囲はそれらの数値や算出方法に限らない。
例えば、上述した実施形態およびその変形例において示した波形合成システム1における処理の順序は、本発明の技術的思想の範囲において変更可能である。例えば、揺らぎ付加部1036は振幅方向の伸縮の後、時間方向の伸縮を行うものとして説明したが、これらの順序が逆であってもよい。
また、読出パルス生成部1033は図10に例示したタイミングで読出パルスを生成するものとしたが、例えば音波形読出部1034等に対し読み出しタイミングを示すタイミングデータを出力し、音波形読出部1034等はタイミングデータに従ったタイミングで音波形信号の読み出し等を行うようにしてもよい。
また、読出パルス生成部1033は図10に例示したタイミングで読出パルスを生成するものとしたが、例えば生成するエンジン音の気筒数ごとに異なる系列に分離された読出パルスを生成し、音波形読出部1034等はそれらの読出パルスの系列ごとに処理を行うようにしてもよい。
また、吸気音ピックアップ111等として圧電センサ以外のセンサを用いたり、音を収音するマイクを用いたりしてもよい。
1…波形合成システム、10…波形合成装置、11…気筒音ピックアップ群、12…メカノイズピックアップ群、13…回転速度センサ、14…バルブ開口センサ、15…アクセル開度センサ、16…アンプ、17…スピーカ、18…入力デバイス、19…ディスプレイ、101…音波形入力バス、102…センサ信号入力バス、103…次数成分強調フィルタ、104…ミキサ、105…伝達特性模擬フィルタ、106…動的フィルタ、107…記憶部、108…画面生成部、109…パラメータ入力部、111…吸気音ピックアップ、112…爆発音ピックアップ、113…排気音ピックアップ、121…カムチェーン音ピックアップ、122…ファンベルト音ピックアップ、1031…音波形切出部、1032…イコライザ、1033…読出パルス生成部、1034…音波形読出部、1035…相関変更部、1036…揺らぎ付加部、1037…窓関数処理部、1038…ミキシング部。
Claims (10)
- 運転中のエンジンの音を示す音波形を取得する音波形入力手段と、
前記エンジンの回転速度を示す回転データを取得する回転データ入力手段と、
前記音波形入力手段により取得された音波形から、前記回転速度に応じた時間の音波形を単発音波形として切り出す音波形切出手段と、
前記単発音波形を記憶する記憶手段と、
前記回転速度に応じて周期的に到来する一連のタイミングで前記単発音波形を前記記憶手段から順次読み出す音波形読出手段と、
前記音波形読出手段により読み出された複数の前記単発音波形をミキシングして合成波形を生成する合成波形生成手段と
を備えることを特徴とする波形合成装置。 - 前記音波形入力手段は、多気筒エンジンである前記エンジンの1の気筒における1回の爆発に伴い発せられる音を示す音波形を取得し、
前記音波形読出手段は、前記回転速度に基づき算出される前記1回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間の間隔で前記単発音波形を順次読み出す
ことを特徴とする請求項1に記載の波形合成装置。 - パラメータを取得するパラメータ入力手段を備え、
前記音波形入力手段は、多気筒エンジンである前記エンジンの1の気筒における1回の爆発に伴い発せられる音を示す音波形を取得し、
前記音波形読出手段は、前記回転速度に基づき算出される前記1回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間に、前記パラメータに応じた揺らぎを付加して得られる時間の間隔で、前記単発音波形を順次読み出す
ことを特徴とする請求項1に記載の波形合成装置。 - パラメータを取得するパラメータ入力手段と、
前記音波形読出手段により読み出された複数の前記単発音波形に、前記パラメータに応じた揺らぎを有する振幅方向もしくは時間方向の伸縮を付加する揺らぎ付加手段と
を備え、
前記合成波形生成手段は、前記揺らぎ付加手段により揺らぎの付加された前記単発音波形をミキシングして合成波形を生成する
ことを特徴とする請求項1に記載の波形合成装置。 - 前記音波形入力手段は、前記エンジンが有する第1の部位が発する音を示す第1の音波形と、前記エンジンが有する第2の部位が発する音を示す第2の音波形とを取得し、
前記音波形切出手段は、前記第1の音波形から第1の単発音波形を切り出すとともに、前記第2の音波形から第2の単発音波形を切り出し、
前記音波形読出手段は、前記回転速度に応じて周期的に到来する第1の一連のタイミングで前記第1の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第2の一連のタイミングで前記第2の単発音波形を順次読み出し、
前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第1の単発音波形および複数の前記第2の単発音波形をミキシングして合成波形を生成する
ことを特徴とする請求項1に記載の波形合成装置。 - 前記第1の音波形は、多気筒エンジンである前記エンジンの第1の気筒が発する音を示し、前記第2の音波形は、前記エンジンの第2の気筒が発する音を示す
ことを特徴とする請求項5に記載の波形合成装置。 - 前記第1の音波形および前記第2の音波形は、前記エンジンが有する気筒、吸気管および排気管のいずれかが発する音を示す
ことを特徴とする請求項5に記載の波形合成装置。 - パラメータを取得するパラメータ入力手段と、
前記単発音波形に異なる加工を施すことにより、前記パラメータに応じた相関を有する第1の単発音波形および第2の単発音波形を生成する音波形加工手段と
を備え、
前記音波形読出手段は、前記回転速度に応じて周期的に到来する第1の一連のタイミングで前記第1の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第2の一連のタイミングで前記第2の単発音波形を順次読み出し、
前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第1の単発音波形および複数の前記第2の単発音波形をミキシングして合成波形を生成する
ことを特徴とする請求項1に記載の波形合成装置。 - パラメータを取得するパラメータ入力手段と、
前記音波形切出手段により切り出された前記単発音波形に前記パラメータに応じた周波数特性の変更を加える周波数特性変更手段と
を備え、
前記音波形読出手段は、前記周波数特性変更手段により周波数特性の変更が加えられた前記単発音波形を順次読み出す
ことを特徴とする請求項1に記載の波形合成装置。 - コンピュータに、
運転中のエンジンの音を示す音波形を取得する処理と、
前記エンジンの回転速度を示す回転データを取得する処理と、
取得した音波形から、前記回転速度に応じた時間の音波形を単発音波形として切り出す処理と、
前記単発音波形を記憶する処理と、
前記回転速度に応じて周期的に到来する一連のタイミングで記憶した前記単発音波形を順次読み出す処理と、
前記読み出した複数の前記単発音波形をミキシングして合成波形を生成する処理と
を実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006079607A JP2007256527A (ja) | 2006-03-22 | 2006-03-22 | 波形合成装置およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006079607A JP2007256527A (ja) | 2006-03-22 | 2006-03-22 | 波形合成装置およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007256527A true JP2007256527A (ja) | 2007-10-04 |
Family
ID=38630840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006079607A Pending JP2007256527A (ja) | 2006-03-22 | 2006-03-22 | 波形合成装置およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007256527A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009041666A1 (ja) | 2007-09-28 | 2009-04-02 | Nanodex Inc. | 葉酸修飾されたシクロデキストリン化合物、その製造方法、標的指向性薬物送達システム用の薬物送達剤、医薬組成物及び造影剤 |
EP2233373A1 (en) | 2009-03-26 | 2010-09-29 | Yamaha Corporation | automobile equipped with speaker unit |
JP2011503642A (ja) * | 2007-11-02 | 2011-01-27 | パルメスタル,ケネス | 自動車を運転する際の娯楽のための装置 |
WO2019198230A1 (ja) * | 2018-04-13 | 2019-10-17 | サウンドデザインラボ合同会社 | 音圧信号出力装置、音圧信号出力方法及び音圧信号出力用プログラム |
WO2020101346A1 (ko) * | 2018-11-14 | 2020-05-22 | 엘지전자 주식회사 | 엔진음 합성 장치 |
-
2006
- 2006-03-22 JP JP2006079607A patent/JP2007256527A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009041666A1 (ja) | 2007-09-28 | 2009-04-02 | Nanodex Inc. | 葉酸修飾されたシクロデキストリン化合物、その製造方法、標的指向性薬物送達システム用の薬物送達剤、医薬組成物及び造影剤 |
JP2011503642A (ja) * | 2007-11-02 | 2011-01-27 | パルメスタル,ケネス | 自動車を運転する際の娯楽のための装置 |
EP2233373A1 (en) | 2009-03-26 | 2010-09-29 | Yamaha Corporation | automobile equipped with speaker unit |
WO2019198230A1 (ja) * | 2018-04-13 | 2019-10-17 | サウンドデザインラボ合同会社 | 音圧信号出力装置、音圧信号出力方法及び音圧信号出力用プログラム |
CN110753960A (zh) * | 2018-04-13 | 2020-02-04 | 音响设计研究室联合公司 | 声压信号输出装置、声压信号输出方法及声压信号输出用程序 |
CN110753960B (zh) * | 2018-04-13 | 2024-01-16 | 音响设计研究室联合公司 | 声压信号输出装置、声压信号输出方法及声压信号输出用程序 |
WO2020101346A1 (ko) * | 2018-11-14 | 2020-05-22 | 엘지전자 주식회사 | 엔진음 합성 장치 |
US11508350B2 (en) | 2018-11-14 | 2022-11-22 | Lg Electronics Inc. | Apparatus for synthesizing engine sound |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1865494B1 (en) | Engine sound processing device | |
JP5040541B2 (ja) | エンジン音合成装置 | |
JP4059478B2 (ja) | 音場制御方法及び音場制御システム | |
JP2007256527A (ja) | 波形合成装置およびプログラム | |
WO2011070956A1 (ja) | オーディオデータ処理装置、オーディオ装置、オーディオデータ処理方法、プログラム及び当該プログラムを記録した記録媒体 | |
JP4946117B2 (ja) | 波形合成装置およびそのプログラム | |
JP4539634B2 (ja) | エンジン音加工装置 | |
JP4559297B2 (ja) | エンジン音合成装置およびそれを備えた車両システム、ならびにエンジン音合成方法 | |
JP2007333813A (ja) | 電子ピアノ装置、電子ピアノの音場合成方法及び電子ピアノの音場合成プログラム | |
JP2003061200A (ja) | 音声処理装置及び音声処理方法、並びに制御プログラム | |
JPH0580790A (ja) | 車室内音響制御装置 | |
JPH06149275A (ja) | 三次元仮想空間情報を考慮した三次元仮想音像形成装置 | |
JP4598686B2 (ja) | 車両の擬似音発生装置 | |
JP4563348B2 (ja) | エンジン音合成装置及びその方法 | |
JP3271532B2 (ja) | 電気弦楽器の音像定位装置 | |
JP2007256526A (ja) | 波形合成装置およびプログラム | |
JP5644122B2 (ja) | マスカ音生成装置 | |
JP4504766B2 (ja) | エンジン音合成装置およびそれを備えた車両、ならびにエンジン音合成方法 | |
JP4515321B2 (ja) | エンジン音合成装置およびそれを備えた車両、ならびにエンジン音合成方法 | |
JPWO2019198230A1 (ja) | 音圧信号出力装置、音圧信号出力方法及び音圧信号出力用プログラム | |
JP3375531B2 (ja) | エンジン発生音の制御装置 | |
JP4635931B2 (ja) | 波形生成装置およびプログラム | |
JP4887988B2 (ja) | エンジン音加工装置 | |
JP2687698B2 (ja) | 電子楽器の楽音制御装置 | |
JP2024001902A (ja) | 音響処理システム及び音響処理方法 |