(57)【要約】【課題】心地よいエンジン音を車内の運転者に聞かせることを可能とする技術を提供する。【解決手段】音波形切出部１０３１は、エンジンの１の気筒の所定箇所に配置された圧電ピックアップから入力される一連の波形信号から、回転速度センサ１３により計測されるエンジンの回転速度ｒに応じた時間間隔Ｔ＝２／ｒで、当該１の気筒が爆発の１サイクルにおいて発する音である単発音の波形信号を切り出す。音波形切出部１０３１により切り出された波形信号は記憶部１０７に記憶される。読出パルス生成部１０３３は、約Ｔ／Ｎ（Ｎは気筒数）の時間間隔で読出パルスを生成する。音波形読出部１０３４は読出パルス生成部１０３３から出力される読出パルスに応じたタイミングで記憶部１０７に記憶された波形信号を読み出し、ミキシング部１０３８は音波形読出部１０３４に読み出された波形信号をミキシングする。その結果、多気筒エンジンの音が合成される。【選択図】図８
2007256527.tif 000002
【特許請求の範囲】
【請求項１】
運転中のエンジンの音を示す音波形を取得する音波形入力手段と、
前記エンジンの回転速度を示す回転データを取得する回転データ入力手段と、
前記音波形入力手段により取得された音波形から、前記回転速度に応じた時間の音波形を単発音波形として切り出す音波形切出手段と、
前記単発音波形を記憶する記憶手段と、
前記回転速度に応じて周期的に到来する一連のタイミングで前記単発音波形を前記記憶手段から順次読み出す音波形読出手段と、
前記音波形読出手段により読み出された複数の前記単発音波形をミキシングして合成波形を生成する合成波形生成手段と
を備えることを特徴とする波形合成装置。
【請求項２】
前記音波形入力手段は、多気筒エンジンである前記エンジンの１の気筒における１回の爆発に伴い発せられる音を示す音波形を取得し、
前記音波形読出手段は、前記回転速度に基づき算出される前記１回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間の間隔で前記単発音波形を順次読み出す
ことを特徴とする請求項１に記載の波形合成装置。
【請求項３】
パラメータを取得するパラメータ入力手段を備え、
前記音波形入力手段は、多気筒エンジンである前記エンジンの１の気筒における１回の爆発に伴い発せられる音を示す音波形を取得し、
前記音波形読出手段は、前記回転速度に基づき算出される前記１回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間に、前記パラメータに応じた揺らぎを付加して得られる時間の間隔で、前記単発音波形を順次読み出す
ことを特徴とする請求項１に記載の波形合成装置。
【請求項４】
パラメータを取得するパラメータ入力手段と、
前記音波形読出手段により読み出された複数の前記単発音波形に、前記パラメータに応じた揺らぎを有する振幅方向もしくは時間方向の伸縮を付加する揺らぎ付加手段と
を備え、
前記合成波形生成手段は、前記揺らぎ付加手段により揺らぎの付加された前記単発音波形をミキシングして合成波形を生成する
ことを特徴とする請求項１に記載の波形合成装置。
【請求項５】
前記音波形入力手段は、前記エンジンが有する第１の部位が発する音を示す第１の音波形と、前記エンジンが有する第２の部位が発する音を示す第２の音波形とを取得し、
前記音波形切出手段は、前記第１の音波形から第１の単発音波形を切り出すとともに、前記第２の音波形から第２の単発音波形を切り出し、
前記音波形読出手段は、前記回転速度に応じて周期的に到来する第１の一連のタイミングで前記第１の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第２の一連のタイミングで前記第２の単発音波形を順次読み出し、
前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第１の単発音波形および複数の前記第２の単発音波形をミキシングして合成波形を生成する
ことを特徴とする請求項１に記載の波形合成装置。
【請求項６】
前記第１の音波形は、多気筒エンジンである前記エンジンの第１の気筒が発する音を示し、前記第２の音波形は、前記エンジンの第２の気筒が発する音を示す
ことを特徴とする請求項５に記載の波形合成装置。
【請求項７】
前記第１の音波形および前記第２の音波形は、前記エンジンが有する気筒、吸気管および排気管のいずれかが発する音を示す
ことを特徴とする請求項５に記載の波形合成装置。
【請求項８】
パラメータを取得するパラメータ入力手段と、
前記単発音波形に異なる加工を施すことにより、前記パラメータに応じた相関を有する第１の単発音波形および第２の単発音波形を生成する音波形加工手段と
を備え、
前記音波形読出手段は、前記回転速度に応じて周期的に到来する第１の一連のタイミングで前記第１の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第２の一連のタイミングで前記第２の単発音波形を順次読み出し、
前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第１の単発音波形および複数の前記第２の単発音波形をミキシングして合成波形を生成する
ことを特徴とする請求項１に記載の波形合成装置。
【請求項９】
パラメータを取得するパラメータ入力手段と、
前記音波形切出手段により切り出された前記単発音波形に前記パラメータに応じた周波数特性の変更を加える周波数特性変更手段と
を備え、
前記音波形読出手段は、前記周波数特性変更手段により周波数特性の変更が加えられた前記単発音波形を順次読み出す
ことを特徴とする請求項１に記載の波形合成装置。
【請求項１０】
コンピュータに、
運転中のエンジンの音を示す音波形を取得する処理と、
前記エンジンの回転速度を示す回転データを取得する処理と、
取得した音波形から、前記回転速度に応じた時間の音波形を単発音波形として切り出す処理と、
前記単発音波形を記憶する処理と、
前記回転速度に応じて周期的に到来する一連のタイミングで記憶した前記単発音波形を順次読み出す処理と、
前記読み出した複数の前記単発音波形をミキシングして合成波形を生成する処理と
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジン音の波形を合成する技術に関する。
【背景技術】
【０００２】
カーレーシングのシミュレーションゲーム等における効果音としてのエンジン音を擬似的に合成する技術がある。例えば、特許文献１および２には、実機のエンジン音の波形を、エンジン回転速度等の運転状態に応じて複数記憶しておき、ユーザの操作に応じて適する波形を読み出して再生する技術が開示されている。
【特許文献１】特開２０００−１０５７６号公報
【特許文献２】特開２００５−１２８２６２号公報
【０００３】
また、非特許文献１には、エンジンの１気筒における１回の爆発に伴い発生される音（以下、「単発音」と呼ぶ）の波形を連続させたものを複数重ね合わせることにより、エンジン音を擬似的に合成する技術が提案されている。
【非特許文献１】前田  修、「エンジン音質のバーチャル評価技術」、日本音響学会誌、日本音響学会、平成１５年、５９巻、５号、ｐ．ｐ．２８８−２９３
【発明の開示】
【発明が解決しようとする課題】
【０００４】
エンジン音は周囲の人にとっては騒音となることが多いため、エンジン音を極力発しないエンジンおよび車両の開発が行われている。しかしながら、車両の運転者にとっては多くの場合、エンジン音は運転の楽しさを高めるものであると同時に、速度が出過ぎていることを警告する等の重要な役割を果たす情報である。
【０００５】
従って、周囲に撒き散らされるエンジン音を低減すると同時に、運転者には心地よいエンジン音を聞かせる技術が求められている。そのような課題を解決する方法として、例えば車内にマイクを配置して運転中に車内で聞こえるエンジン音を収音し、収音した音をアンプで増幅した後に車内のスピーカから発音することにより、外部に発せられるエンジン音と比較して大音量のエンジン音を運転者に聞かせることが考えられる。
【０００６】
しかしながら、上記のような手段による場合、エンジン音のみでなく車内の会話やロードノイズなども同時に増幅され、不便や不自然さを生ずる。また、静かなエンジン音を増幅したものは、たとえ大音量であっても運転者にとって必ずしも心地よい音とはならない。
【０００７】
そこで、上述した特許文献１および２や非特許文献１に開示の技術を用いてエンジン音を合成し、合成したエンジン音を車内のスピーカから発音することにより、迫力のあるエンジン音を運転者に聞かせることが考えられる。
【０００８】
しかしながら、特許文献１および２や非特許文献１に開示の技術は、予め記憶されているエンジン音の波形データを加工することによりエンジン音を合成するため、合成される音が実際のエンジン音から乖離し、やはり不自然さをもたらす。そのような問題は、実際のエンジン音の波形を予め様々な回転数、アクセル開度等に応じて記憶しておき、運転中においては運転状態に応じた音波形を逐次呼び出して用いることにより解消される。しかしながら、様々な運転状態に応じてリアルなエンジン音を合成するためには膨大な数の音波形を準備する必要がある、という問題がある。
【０００９】
本願発明は、上記の状況に鑑み、心地よいエンジン音を車内の運転者に聞かせることを可能とする新たな技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を達成するために、本発明は、運転中のエンジンの音を示す音波形を取得する音波形入力手段と、前記エンジンの回転速度を示す回転データを取得する回転データ入力手段と、前記音波形入力手段により取得された音波形から、前記回転速度に応じた時間の音波形を単発音波形として切り出す音波形切出手段と、前記単発音波形を記憶する記憶手段と、前記回転速度に応じて周期的に到来する一連のタイミングで前記単発音波形を前記記憶手段から順次読み出す音波形読出手段と、前記音波形読出手段により読み出された複数の前記単発音波形をミキシングして合成波形を生成する合成波形生成手段とを備えることを特徴とする波形合成装置を提供する。
【００１１】
このような波形合成装置によれば、運転中に実際のエンジンから発せられる音を用いたエンジン音の合成が行われるため、波形データを記憶することなく運転状態に応じたリアリティのあるエンジン音が得られる。また、エンジン音の合成の過程において、合成される音の音響特性を調整するための柔軟な処理が可能となる。
【００１２】
好ましい態様において、前記音波形入力手段は、多気筒エンジンである前記エンジンの１の気筒における１回の爆発に伴い発せられる音を示す音波形を取得し、前記音波形読出手段は、前記回転速度に基づき算出される前記１回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間の間隔で前記単発音波形を順次読み出す。
【００１３】
このような波形合成装置によれば、多気筒エンジンの１の気筒から発せられる音を用いて多気筒エンジンの音が合成される。その際、実機のエンジンの気筒数とは異なった気筒数のエンジン音を合成することも可能である。
【００１４】
他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段を備え、前記音波形入力手段は、多気筒エンジンである前記エンジンの１の気筒における１回の爆発に伴い発せられる音を示す音波形を取得し、前記音波形読出手段は、前記回転速度に基づき算出される前記１回の爆発に要する時間を、所定の正の整数でさらに除して得られる時間に、前記パラメータに応じた揺らぎを付加して得られる時間の間隔で、前記単発音波形を順次読み出す。
【００１５】
また、他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段と、前記音波形読出手段により読み出された複数の前記単発音波形に、前記パラメータに応じた揺らぎを有する振幅方向もしくは時間方向の伸縮を付加する揺らぎ付加手段とを備え、前記合成波形生成手段は、前記揺らぎ付加手段により揺らぎの付加された前記単発音波形をミキシングして合成波形を生成する。
【００１６】
これらの波形合成装置によれば、合成されるエンジン音に含まれる回転整数次の成分の際立ちの程度をパラメータにより変更可能である。
【００１７】
また、他の好ましい態様において、前記音波形入力手段は、前記エンジンが有する第１の部位が発する音を示す第１の音波形と、前記エンジンが有する第２の部位が発する音を示す第２の音波形とを取得し、前記音波形切出手段は、前記第１の音波形から第１の単発音波形を切り出すとともに、前記第２の音波形から第２の単発音波形を切り出し、前記音波形読出手段は、前記回転速度に応じて周期的に到来する第１の一連のタイミングで前記第１の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第２の一連のタイミングで前記第２の単発音波形を順次読み出し、前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第１の単発音波形および複数の前記第２の単発音波形をミキシングして合成波形を生成する。
【００１８】
このような波形合成装置によれば、エンジン音を構成する複数の音の要素の各々に対し、音響特性を調整するための異なる処理を行うことが可能となる。
【００１９】
上記の好ましい態様において、前記第１の音波形は、多気筒エンジンである前記エンジンの第１の気筒が発する音を示し、前記第２の音波形は、前記エンジンの第２の気筒が発する音を示すようにしてもよい。
【００２０】
このような波形合成装置によれば、エンジン音の複数の気筒の各々に対し、音響特性を調整するための異なる処理を行うことが可能となる。また、気筒間で異なる音波形が用いられることから、合成されるエンジン音に含まれる回転整数次の成分の際立ちの程度を抑えることができる。
【００２１】
また、上記の好ましい態様において、前記第１の音波形および前記第２の音波形は、前記エンジンが有する気筒、吸気管および排気管のいずれかが発する音を示すようにしてもよい。
【００２２】
このような波形合成装置によれば、エンジンの気筒、吸気管、排気管の各々に対し、音響特性を調整するための異なる処理を行うことが可能となる。
【００２３】
また、他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段と、前記単発音波形に異なる加工を施すことにより、前記パラメータに応じた相関を有する第１の単発音波形および第２の単発音波形を生成する音波形加工手段とを備え、前記音波形読出手段は、前記回転速度に応じて周期的に到来する第１の一連のタイミングで前記第１の単発音波形を順次読み出すとともに、前記回転速度に応じて周期的に到来する第２の一連のタイミングで前記第２の単発音波形を順次読み出し、前記合成波形生成手段は、前記音波形読出手段により読み出された複数の前記第１の単発音波形および複数の前記第２の単発音波形をミキシングして合成波形を生成する。
【００２４】
このような波形合成装置によれば、合成されるエンジン音に含まれる回転整数次の成分の際立ちの程度をパラメータにより変更可能である。
【００２５】
また、他の好ましい態様において、上記波形合成装置は、パラメータを取得するパラメータ入力手段と、前記音波形切出手段により切り出された前記単発音波形に前記パラメータに応じた周波数特性の変更を加える周波数特性変更手段とを備え、前記音波形読出手段は、前記周波数特性変更手段により周波数特性の変更が加えられた前記単発音波形を順次読み出す。
【００２６】
このような波形合成装置によれば、合成されるエンジン音の音色をパラメータにより変更可能である。
【００２７】
また、本発明は、上記波形合成装置が行う処理をコンピュータに実行させるプログラムを提供する。その結果、上記の波形合成装置がコンピュータにより実現される。
【発明を実施するための最良の形態】
【００２８】
［１．音波形合成の原理］
以下、本願発明の理解のために、単気筒エンジンの単発音を用いて多気筒エンジンの音を合成する方法（以下、「単発音制御再生法」と呼ぶ）の原理を説明する。なお、例として、４気筒４ストロークエンジンにつき以下に説明する。
【００２９】
単発音制御再生法においては、まずエンジンの単発音の波形が準備される。４ストロークエンジンの気筒は、燃料の吸気、燃料の圧縮、燃料の点火による爆発、爆発後の排気、の４工程を繰り返すことによりクランクシャフトを押し回し駆動する。単発音は、エンジンの１気筒がこれらの４工程１サイクルの動作を行う際に発する音である。
【００３０】
単発音の波形が得られると、単発音の波形を連続させることにより、エンジンの１気筒が継続して運転された場合に発する音（以下、「連続音」と呼ぶ）が合成される。図１は連続音が合成される様子を示した図である。図１の左図は、最大振幅がＡ０、時間がＴ０（秒）である単発音の波形を例示している。連続音の合成においては、この原波形である単発音の波形に振幅方向および時間方向の伸縮を加えたものが順次連結される。なお、連結部の不連続により発生するノイズを低減するために、連結に先んじて両端がゼロの窓関数を乗じる処理が行われる。
【００３１】
連続音の合成に用いられる単発音の生成おいて、より自然な音を生成するために、各原波形に対し加えられる伸縮の程度には所定の揺らぎが加えられる。その結果、連続音を構成する各単発音の振幅および時間はそれぞれ微小に異なるものとなる。図１の右図は８つの単発音を連結して連続音が生成された様子を示しており、連続音に含まれる各単発音の振幅および時間は揺らぎの付加により順にＡ１〜Ａ８およびＴ１〜Ｔ８（秒）と各々異なっている。
【００３２】
上記のように合成される連続音に含まれる単発音の長さは原波形の時間Ｔ０を中心として揺らぐため、連続音の周期はＴ０（秒）であり、その基音はｆ０＝１／Ｔ０（Ｈｚ）である。なお、４ストロークエンジンの場合、吸気、圧縮、爆発、排気の４工程においてクランクシャフトが２回転するため、エンジンの回転数をｒ（ｒｐｍ）とすると、周期Ｔ０＝（２×６０）／ｒ（秒）である。
【００３３】
続いて、４気筒エンジンの音を合成するために、上記のように合成して得られる連続音、すなわち１気筒の発する音を、４つ重ね合わせて重合音を合成する。この重ね合わせの際、各連続音に順次、Ｔ０／４（秒）のオフセット時間を加える。すなわち、第２の連続音の開始時刻はＴ０／４秒だけ第１の連続音の開始時刻より遅れ、第３の連続音の開始時刻はＴ０／４秒だけ第２の連続音の開始時刻より遅れ、第４の連続音の開始時刻はＴ０／４秒だけ第３の連続音の開始時刻より遅れる。図２は連続音の重合により重合音が合成される様子を示した図である。
【００３４】
上記のように合成される重合音においては、時間Ｔ０／４（秒）ごとにほぼ同じ波形が繰り返される。従って、重合音の周期はＴ＝Ｔ０／４（秒）、その基音はｆ＝ｆ０×４（Ｈｚ）となる。このように合成される重合音が、単発音制御再生法により生成される４気筒４ストロークエンジンの音である。
【００３５】
［２．エンジン音の音響特性の変化に関する実験］
続いて、本願発明者が本願発明に至る過程において、単発音制御再生法を用いて行った実験およびその結果を以下に示す。まず、本願発明者は、連続音の合成において原波形の単発音に加えられる振幅方向および時間方向の伸縮の揺らぎ（以下、それぞれ「振幅揺らぎ」および「時間揺らぎ」と呼ぶ）が、最終的に得られる重合音にどのように影響するかを実験により確認した。図３はその実験の結果を示したグラフである。
【００３６】
図３（Ａ−１）および図３（Ａ−２）は、連続音の合成において、振幅揺らぎおよび時間揺らぎを全く加えない場合、すなわち連続音の合成に原波形をそのまま用いた場合に得られる重合音の波形および周波数特性をそれぞれ示している。また、図３（Ｂ−１）および図３（Ｂ−２）は、連続音の合成において、振幅揺らぎのみを加え、時間揺らぎを全く加えない場合に得られる重合音の波形および周波数特性をそれぞれ示している。さらに、図３（Ｃ−１）および図３（Ｃ−２）は、連続音の合成において、振幅揺らぎおよび時間揺らぎの両方を加えた場合に得られる重合音の波形および周波数特性をそれぞれ示している。
【００３７】
図３より、振幅揺らぎおよび時間揺らぎの付加により、重合音の周波数特性における振幅の山と谷との差が小さくなることが確認される。周波数特性の低周波数領域における振幅の山は基音の整数倍音に対応し、振幅の山と谷との差が大きいほど純音性の高い音、いわゆる輪郭のはっきりした音となる。このことから、連続音の合成において原波形に加える振幅揺らぎおよび時間揺らぎの程度を調整することにより、重合音の純音性を変化させることが可能となることが判明した。
【００３８】
図４は、揺らぎの付加が重合音の音響特性に与える影響を確認するために行った別の実験結果を示すソナグラフである。図４（Ａ）および図４（Ｂ）の縦軸は周波数、横軸は時間を示している。ただし、図４（Ａ）および図４（Ｂ）の作成に用いた重合音においては、回転数ｒが１０００回転／秒の割合で増加する場合のエンジン音を模すように、徐々に増加する縮小率で時間方向に縮小された単発音が連結された連続音が重合されている。従って、図４（Ａ）および図４（Ｂ）の横軸の値に１０００を乗じたものは、エンジンの回転数ｒに相当する。
【００３９】
図４（Ａ）の作成に用いた重合音においては、連続音の合成時に振幅揺らぎおよび時間揺らぎのいずれも付加されていない。一方、図４（Ｂ）の作成に用いた重合音においては、振幅揺らぎは付加されていないが、規則的な時間揺らぎが付加されている。具体的には、重合に用いられた連続音を構成する単発音の原波形に対する時間方向の伸縮率が、先頭から順に０．９、１．０５、０．９５および１（以下、繰り返し）となっている。
【００４０】
図４（Ａ）においては、グラフの左下から右上に向かいほぼ直線上に並んだ周波数成分の山が明確に確認される。ソナグラフに現れるこれらの直線はグラフの下から順次、回転２次、回転４次、回転６次、・・・の成分を示し、図４（Ａ）においてはこれらの直線が明確であることから、回転整数次の周波数成分のピークが鋭いことが見てとれる。これに対し、図４（Ｂ）においては、回転整数次の直線が図４（Ａ）のものと比較して明確でなく、回転整数次の周波数成分のピークが鋭くないことが見てとれる。
【００４１】
なお、経験上、エンジンの気筒数を２で除した次数に対応する直線が明確である程、聞き手にとってエンジンが快調に回っている、という印象を与えることが知られている。この気筒数を２で除した次数は爆発１次とも呼ばれる。例えば４気筒エンジンの場合、爆発１次は回転２次である。
【００４２】
図４（Ａ）および図４（Ｂ）より、単発音に揺らぎを与えた場合は揺らぎを与えない場合と比較し、最終的に合成される重合音の回転整数次の周波数成分が際立っておらず、爆発１次の成分も他の成分と比較し顕著に現れず、聞き手にとってはあまり快調に回っていないエンジンの音と感じられることが分かる。
【００４３】
次に、本願発明者は、連続音の合成において、各気筒に対応する連続音ごとに異なる原波形を用いた場合に、最終的に得られる重合音にどのような影響が生じるかを実験により確認した。図５はその実験の結果を示したソナグラフである。
【００４４】
図５（Ａ）および図５（Ｂ）の縦軸および横軸のスケールは図４におけるものと同様である。また、図５（Ａ）は図４（Ａ）と全く同じグラフであり、図５（Ｂ）との比較のために再掲している。図５（Ｂ）の作成に用いた重合音の合成には、各々の気筒に対応する連続音として、周波数特性は同一だが互いに無相関な原波形を用いて合成された連続音が用いられている。
【００４５】
周波数特性が同一であり、かつ無相関な原波形の作成の方法は様々に考えられるが、図５（Ｂ）の作成においては、所定の周波数特性を有するノイズ波形の異なる区間を切り出したものを各気筒に対応する原波形として用いている。このようなノイズ波形それ自体はエンジンの単発音とは非類似であるが、連続処理および重合処理を経ると、多気筒エンジンの音とある程度類似したものになる。
【００４６】
図５（Ｂ）を図５（Ａ）と比較すると、回転整数次の直線の間に複数の直線が現れ、その結果、いずれの直線が回転整数次のものかの特定が困難である。すなわち、図４（Ｂ）と同様に、図５（Ｂ）の音は図５（Ａ）の音と比較すると回転整数次の周波数成分が際立っていないことが見てとれる。しかしながら、図４（Ｂ）と異なり、図５（Ｂ）における各直線それ自体は図５（Ａ）と同様に鮮明である。このことから、重合音の合成に用いる原波形を気筒毎に変えると、その相関の程度に応じて回転整数次の周波数成分が際立たなくなるが、その音響特性は揺らぎ付加によるものとは異なることが分かる。
【００４７】
次に、本願発明者は、重合音の合成に用いる原波形の周波数特性の変化によって、最終的に得られる重合音の周波数特性にどのような影響が生じるかを実験により確認した。図６はその実験の結果を示したグラフである。図６（Ａ）〜（Ｄ）は、各々、異なる波形の単発音の周波数成分およびその単発音を用いて合成した重合音（エンジン音）の周波数成分を示している。図６より、重合音の振幅の谷はその重合音の生成に用いられた単発音の振幅と強い相関があることが分かる。すなわち、単発音の音響特性により重合音の大まかな音響特性が決定されることが分かる。
【００４８】
［３．実施形態］
続いて、本発明の実施形態を以下に説明する。本発明の実施形態は、多気筒エンジンの１の気筒における爆発に伴う音と、カムチェーン等のメカノイズとを収音し、それらの音の波形を用いてエンジン音を合成する波形合成装置である。
【００４９】
［３．１．構成］
図７は、本発明の実施形態にかかる波形合成装置１０を含む波形合成システム１の構成を示したブロック図である。波形合成システム１は、エンジンで駆動される車両のエンジンルーム内および車内に配置される。以下の説明においては、例として、４気筒４ストロークエンジンを搭載した自動車に波形合成システム１が配置されるものとする。
【００５０】
波形合成システム１は、エンジン音の合成処理を行う波形合成装置１０と、波形合成装置１０に対しエンジンの爆発に伴う音の波形を出力する気筒音ピックアップ群１１と、波形合成装置１０に対しエンジンの運転に伴うメカノイズの波形を出力するメカノイズピックアップ群１２と、波形合成装置１０に対しクランクシャフトの回転速度を計測しその結果を示す信号（以下、「回転速度信号」と呼ぶ）を出力する回転速度センサ１３と、波形合成装置１０に対し吸気バルブが開き始めるタイミングで信号（以下、「バルブ開口信号」と呼ぶ）を出力するバルブ開口センサ１４と、波形合成装置１０に対しアクセルペダルの踏み込みの程度を示す信号（以下、「アクセル開度信号」）を出力するアクセル開度センサ１５とを備えている。
【００５１】
さらに、波形合成システム１は、波形合成装置１０により合成された音波形を増幅するアンプ１６と、アンプ１６から出力される音波形を音に変換するスピーカ１７と、波形合成装置１０に対しユーザの操作に応じた信号を出力する入力デバイス１８と、波形合成装置１０から出力される描画データに応じてユーザに対しメッセージ画面を表示するディスプレイ１９を備えている。
【００５２】
気筒音ピックアップ群１１には、エンジンの第１気筒に燃料ガスを供給する第１吸気管の表面に配置された圧電センサである吸気音ピックアップ１１１と、第１気筒のシリンダの表面に配置された圧電センサである爆発音ピックアップ１１２と、第１気筒のシリンダから排気ガスを排出する第１排気管の表面に配置された圧電センサである排気音ピックアップ１１３が含まれている。
【００５３】
吸気音ピックアップ１１１から出力される信号は、第１吸気管の振動を示す波形信号であり、主として第１気筒の運転に伴う吸気音を示す。爆発音ピックアップ１１２から出力される信号は、第１気筒の振動を示す波形信号であり、主として第１気筒の運転に伴う爆発音を示す。排気音ピックアップ１１３から出力される信号は、第１排気管の振動を示す波形信号であり、主として第１気筒の運転に伴う排気音を示す。
【００５４】
気筒音ピックアップ群１１が上記のように気筒の運転に伴い発生される音の波形信号を生成するためのピックアップの集まりであるのに対し、メカノイズピックアップ群１２はエンジン全体の運転に伴い発生される音の波形信号を生成するためのピックアップの集まりである。すなわち、メカノイズピックアップ群１２には、カムチェーンを駆動するギアの表面に配置された圧電センサであるカムチェーン音ピックアップ１２１と、ファンベルトのテンショナの表面に配置された圧電センサであるファンベルト音ピックアップ１２２が含まれている。
【００５５】
カムチェーン音ピックアップ１２１から出力される信号は、主としてカムチェーンの回転に伴うメカノイズを示す。ファンベルト音ピックアップ１２２から出力される信号は、主としてファンベルトの回転に伴うメカノイズを示す。なお、カムチェーン音ピックアップ１２１およびファンベルト音ピックアップ１２２はメカノイズピックアップ群１２に含まれるピックアップの例であり、エンジンの運転に伴い発せられるメカノイズを拾うピックアップであれば、他の部位に配置されたピックアップがメカノイズピックアップ群１２に含まれてもよい。
【００５６】
回転速度センサ１３は、クランクシャフト付近に配置された発光体、光センサ、カウンタおよびタイマにより構成され、クランクシャフトに発光体から照射された光がクランクシャフトの所定位置に添付された反射マークにおいて反射し、その反射光が光センサにより受光された回数をカウンタがカウントし、タイマにより１秒間が計時されたタイミングでカウンタに記憶されている回数を示す信号を出力するとともに、カウンタ値をゼロにセットし、タイマをリセットする。そのように出力される信号は、クランクシャフトの回転速度を毎秒の回転数により示す回転速度信号である。
【００５７】
バルブ開口センサ１４は、例えば第１気筒の吸気バルブを挟んで対向するように配置された発光体と光センサの組み合わせにより構成され、吸気バルブが閉じた状態からわずかに開くことにより、発光体から照射された光が光センサにより検出された場合にバルブ開口信号を出力する。４ストロークエンジンの場合、エンジンの爆発の４工程１サイクルにおいてクランクシャフトは２回転するため、バルブ開口センサ１４はクランクシャフトが２回転する毎に１回、バルブ開口信号を出力する。
【００５８】
なお、バルブ開口センサ１４は、エンジンの気筒が４工程１サイクルにおけるいずれのタイミングであるかを検出するためのセンサの一例であって、波形合成システム１が他の種類のセンサを備え、それらのセンサをバルブ開口センサ１４の代わりに利用するようにしてもよい。そのようなセンサとしては、例えば排気バルブの開口タイミングを検出するセンサ、点火プラグの点火タイミングを検出センサ等が考えられる。
【００５９】
アクセル開度センサ１５は、例えば複数の発光体と光センサの組み合わせにより構成され、アクセルペダルにより発光体から発せられた光がアクセルペダルにより遮られることを利用し、いずれの光センサが反射光を受光したかに応じてアクセルペダルの踏み込みの程度を計測するしくみとなっている。以下の説明において、アクセル開度センサ１５はアクセルペダルの踏み込みの程度が大きくなるに従い大きい数値を示すアクセル開度信号を出力するものとし、その範囲は０〜１００であるものとする。
【００６０】
なお、アクセル開度センサ１５は、自動車の運転状態を計測するセンサの一例であって、波形合成システム１が他の種類のセンサを備え、それらのセンサを、アクセル開度センサ１５に加え、もしくはアクセル開度センサ１５に代えて利用するようにしてもよい。そのようなセンサとしては、例えば車速センサ、クランクシャフトのトルクを計測するトルクセンサ等が考えられる。
【００６１】
スピーカ１７は、例えば車内フロント部の左右に各々配置されたスピーカ１７Ｒおよびスピーカ１７Ｌの組み合わせである。なお、スピーカ１７の配置位置はこれに限られず、例えば車内の前後位置の２カ所や、前後左右の４カ所に配置するようにしてもよい。アンプ１６は、スピーカ１７Ｒおよびスピーカ１７Ｌの各々に音信号を出力するアンプ１６Ｒおよびアンプ１６Ｌの組み合わせである。
【００６２】
入力デバイス１８およびディスプレイ１９は、例えばタッチセンサ機能付き液晶ディスプレイとして一体化され、車内のインストルメント・パネルに配置されている。
【００６３】
波形合成装置１０は、気筒音ピックアップ群１１およびメカノイズピックアップ群１２に含まれるピックアップの各々から出力される音波形信号を受け取るためのバスである音波形入力バス１０１と、回転速度センサ１３、バルブ開口センサ１４およびアクセル開度センサ１５の各々から出力されるセンサ信号を受け取るためのバスであるセンサ信号入力バス１０２と、気筒音ピックアップ群１１に含まれるピックアップから出力される音波形信号を各々用いて合成音を生成するフィルタである次数成分強調フィルタ１０３Ａ、次数成分強調フィルタ１０３Ｂおよび次数成分強調フィルタ１０３Ｃと、次数成分強調フィルタ１０３Ａ〜Ｃおよびメカノイズピックアップ群１２に含まれるピックアップの各々から出力される音波形信号を左右２チャンネルにパンニングしてミキシングするミキサ１０４を備えている。
【００６４】
また、波形合成装置１０は、ミキサ１０４から出力される左右２チャンネルの音波形信号を各々用いて合成音を生成するフィルタである次数成分強調フィルタ１０３Ｒおよび次数成分強調フィルタ１０３Ｌと、次数成分強調フィルタ１０３Ｒおよび次数成分強調フィルタ１０３Ｌから出力される音波形信号にエンジンルームから車内への音の伝達に伴う周波数特性の変化を反映させるフィルタである伝達特性模擬フィルタ１０５Ｒおよび伝達特性模擬フィルタ１０５Ｌと、アクセル開度センサ１５から出力されるアクセル開度信号に応じてパラメータが連続的に変化するフィルタ処理を伝達特性模擬フィルタ１０５Ｒおよび伝達特性模擬フィルタ１０５Ｌから出力される音波形信号に各々施す動的フィルタ１０６Ｒおよび動的フィルタ１０６Ｌを備えている。
【００６５】
また、波形合成装置１０は、伝達特性模擬フィルタ１０５および動的フィルタ１０６の行うフィルタ処理のパラメータやユーザインタフェース画面を定義する画面定義データ等を予め記憶するとともに、波形合成装置１０の各構成部が利用する各種データを一時的に記憶する記憶部１０７と、記憶部１０７に記憶されている画面定義データに基づきユーザインタフェース画面等を示す描画データを生成しディスプレイ１９に出力する画面生成部１０８と、入力デバイス１８から受け取った信号に基づきユーザの入力した各種パラメータを特定するパラメータ入力部１０９を備えている。
【００６６】
次数成分強調フィルタ１０３Ａ〜Ｃおよび次数成分強調フィルタ１０３Ｒ〜Ｌはいずれも同じ構成および機能を有している。従って、以下それらを区別する必要がない場合には、単に次数成分強調フィルタ１０３と呼ぶ。図８は、次数成分強調フィルタ１０３の構成を示したブロック図である。
【００６７】
次数成分強調フィルタ１０３は、バルブ開口センサ１４からバルブ開口信号を１つ受信するごとに他の構成部（例えば、次数成分強調フィルタ１０３Ａの場合、吸気音ピックアップ１１１）から受け取った音波形信号から単発音を示す波形信号を１つ切り出す音波形切出部１０３１と、音波形切出部１０３１により切り出された単発音の波形信号に対しユーザにより入力されたパラメータに従ったイコライザ処理を行った後、記憶部１０７に記憶させるイコライザ１０３２を備えている。
【００６８】
また、次数成分強調フィルタ１０３は、ユーザにより入力されたパラメータに応じた時間間隔および振幅のパルス信号を順次生成し出力する読出パルス生成部１０３３と、読出パルス生成部１０３３により生成されるパルス信号をトリガとしてイコライザ１０３２により記憶部１０７に記憶された音波形信号を読み出す音波形読出部１０３４と、音波形読出部１０３４により順次読み出される音波形信号に異なるノイズ波形信号を付加することにより音波形信号間の相関を変更する相関変更部１０３５を備えている。
【００６９】
さらに、次数成分強調フィルタ１０３は、読出パルス生成部１０３３により生成されるパルス信号のタイミングおよび振幅に応じて相関変更部１０３５により生成される音波形信号の各々を振幅方向および時間方向に伸縮することにより、一連の音信号波形の間に振幅揺らぎおよび時間揺らぎを付加する揺らぎ付加部１０３６と、揺らぎ付加部１０３６により振幅揺らぎの付加された音波形信号に両端がゼロの窓関数を乗じる窓関数処理部１０３７と、窓関数処理部１０３７により順次生成される音波形信号をミキシングするミキシング部１０３８を備えている。ミキシング部１０３８によりミキシングされた音信号波形は、順次、他の構成部（例えば、次数成分強調フィルタ１０３Ａの場合、ミキサ１０４）に出力される。
【００７０】
［３．２．動作］
続いて、波形合成システム１の動作を説明する。ユーザにより波形合成装置１０の起動操作が行われると、波形合成装置１０の画面生成部１０８は、記憶部１０７からユーザインタフェースの画面定義データを読み出して画面の描画データを生成し、ディスプレイ１９に出力する。その結果、ディスプレイ１９にユーザインタフェース画面が表示される。
【００７１】
図９は、ディスプレイ１９に表示されるユーザインタフェース画面を例示した図である。ユーザインタフェース画面には、気筒数を選択するためのリストボックス１８１、音響特性の変化を気筒ごとの音について与えたいかエンジン音全体について与えたいかを選択するためのオプションボタン群１８２、音響特性に変化を与えたい音の対象を選択するためのオプションボタン群１８３、グラフィックイコライザを構成するフェーダ群１８４、相関の程度を指定するためのスライダ１８５、時間揺らぎの程度を指定するためのスライダ１８６、振幅揺らぎの程度を指定するためのスライダ１８７、エンジン合成の開始および終了を指示するためのコマンドボタン１８８が含まれている。
【００７２】
リストボックス１８１において、ユーザは実際のエンジンの気筒数を選ぶことも、それと異なる気筒数を選ぶこともできる。例えばユーザがリストボックス１８１において６気筒を選択すると、波形合成システム１は以下に説明する合成処理により実際のエンジン音から６気筒エンジンの音を合成し、車内にその合成音を再生する。
【００７３】
オプションボタン群１８２には、「気筒音のみ」および「エンジン音全体」の選択肢が含まれている。「気筒音のみ」は、次数成分強調フィルタ１０３Ａ〜Ｃを有効化するとともに次数成分強調フィルタ１０３Ｒ〜Ｌを無効化し、吸気音ピックアップ１１１、爆発音ピックアップ１１２および排気音ピックアップ１１３から出力される音波形信号の各々に関し、次数成分強調フィルタ１０３により音響特性の調整を行うことを選択する選択肢である。一方、「エンジン音全体」は、次数成分強調フィルタ１０３Ｒ〜Ｌを有効化するとともに次数成分強調フィルタ１０３Ａ〜Ｃを無効化し、ミキサ１０４において気筒から発せられる音とメカノイズがミキシングされた後の音波形信号に関し、次数成分強調フィルタ１０３により音響特性の調整を行うことを選択する選択肢である。
【００７４】
オプションボタン群１８２において「気筒音のみ」が選択された場合、オプションボタン群１８３には、その下に示されるフェーダ群１８４等により音響特性に変化を与える対象の音として、「吸気音」、「爆発音」および「排気音」の選択肢が含まれる。これらの選択肢は、それぞれ次数成分強調フィルタ１０３Ａ〜Ｃに対応する。一方、オプションボタン群１８２において「エンジン音全体」が選択された場合、オプションボタン群１８３には、その下に示されるフェーダ群１８４等により音響特性に変化を与える対象の音として、「右」および「左」の選択肢が含まれる。これらの選択肢は、それぞれ次数成分強調フィルタ１０３Ｒ〜Ｌに対応する。
【００７５】
ユーザは、オプションボタン群１８３に示される選択肢を順次選択しては、フェーダ群１８４等の操作を行う作業を繰り返す。ユーザが入力デバイス１８に触れることによりフェーダ群１８４等を操作して各種パラメータの入力を行うと、入力デバイス１８はユーザの操作に応じた信号を波形合成装置１０のパラメータ入力部１０９に出力する。パラメータ入力部１０９は入力デバイス１８から受け取った信号および記憶部１０７に記憶されているユーザインタフェース画面の定義データに基づき、ユーザにより入力されたパラメータを特定し、特定したパラメータを画面定義データに含まれる各オブジェクトの属性値として記憶部１０７に記憶させる。例えば、ユーザがオプションボタン群１８２において「気筒音のみ」を選択し、オプションボタン群１８３において「吸気音」を選択した状態で、スライダ１８７のノブを移動して相関の程度「２．８」を入力した場合、記憶部１０７には「吸気音」に対応するスライダ１８７の属性値として「２．８」が記憶される。
【００７６】
ユーザは上記のようにしてユーザインタフェース画面に表示される各種パラメータの入力を終えると、コマンドボタン１８８に触れてエンジン音合成の開始を指示する。この指示に応じて、波形合成装置１０はエンジン音の合成処理およびその出力を開始する。
【００７７】
まず、ユーザによりオプションボタン群１８２において「気筒音のみ」が選択されている場合、次数成分強調フィルタ１０３Ａ〜Ｃは、それぞれ吸気音ピックアップ１１１、爆発音ピックアップ１１２および排気音ピックアップ１１３から音波形信号を継続的に受け取り、受け取った音波形信号から合成した音波形信号を継続的にミキサ１０４に出力する。次数成分強調フィルタ１０３Ａ〜Ｃの各々の動作は、単発音の波形信号の切り出しタイミングが異なる点以外は同じであるため、以下、次数成分強調フィルタ１０３Ａの動作を例として説明する。
【００７８】
次数成分強調フィルタ１０３Ａにおいて、音波形切出部１０３１は、常時、吸気音ピックアップ１１１から吸気音の波形信号を受け取っている。その状態で、音波形切出部１０３１は、回転速度センサ１３から１秒毎に回転速度信号を受け取る。また、音波形切出部１０３１は、バルブ開口センサ１４からエンジンの第１気筒の吸気バルブが開き始めるタイミングでバルブ開口信号を受け取る。
【００７９】
回転速度信号により示されるクランクシャフトの回転速度をｒ（回転／秒）とすると、第１気筒の爆発の４工程１サイクルに要する時間はＴ＝２／ｒ（秒）である。音波形切出部１０３１は、バルブ開口信号を受け取ったタイミングからＴ×（３／４）だけ経過したタイミングをトリガとし、順次、吸気音ピックアップ１１１から受け取る音波形信号から長さＴの音波形信号を切り出す。ただし、このＴは、ｒの変化により時々刻々と変化するため、音波形切出部１０３１により切り出される音波形信号の各々の長さもそれに応じて変化する。このように切り出される長さＴの音波形信号は、単発音における吸気音を示す波形信号である。
【００８０】
音波形切出部１０３１がこのように吸気バルブの開口開始タイミングからＴ×（３／４）だけ遅れたタイミング、すなわち次に吸気バルブが開口を開始するタイミングのＴ×（１／４）だけ早いタイミングで単発音の波形信号の切り出しを開始するのは、仮に吸気バルブの開口開始タイミングから切り出しを開始すると、吸気音の特徴部分を示す波形が切り出される単発音の波形信号の端付近に位置してしまい、後の窓関数処理部１０３７による処理によりその特徴部分がほとんどカットされてしまうためである。そのような不都合を回避するた、波形信号の切り出し開始タイミングを吸気バルブの開口開始タイミングからずらしている。なお、波形信号の切り出し開始タイミングを遅らせる程度はＴ×（３／４）に限られず、例えばＴ×（７／８）だけ遅らせるようにしてもよい。
【００８１】
音波形切出部１０３１により切り出される単発音の波形信号の区間をより具体的に示すと次のようになる。
音波形切出部１０３１がバルブ開口信号を受け取るタイミングをｔｎ、ｔｎ＋１、ｔｎ＋２、・・・とする。
音波形切出部１０３１がバルブ開口信号を受け取ったタイミングで最後に受け取っている回転速度信号により示される回転速度をそれぞれｒｎ、ｒｎ＋１、ｒｎ＋２、・・・とする。
その場合、単発音を切り出しの開始タイミングは、ｔ＋Ｔ×（３／４）＝ｔ＋３／（２ｒ）より、ｔｎ＋３／（２ｒｎ）、ｔｎ＋１＋３／（２ｒｎ＋１）、ｔｎ＋２＋３／（２ｒｎ＋２）、・・・となる。
従って、吸気音ピックアップ１１１から受け取られる音波形信号の以下の区間が、それぞれ単発音の波形信号として切り出される。
ｔｎ＋３／（２ｒｎ）  〜  ｔｎ＋１＋３／（２ｒｎ＋１）、
ｔｎ＋１＋３／（２ｒｎ＋１）  〜  ｔｎ＋２＋３／（２ｒｎ＋２）、
ｔｎ＋２＋３／（２ｒｎ＋２）  〜  ｔｎ＋３＋３／（２ｒｎ＋３）、
・・・。
【００８２】
音波形切出部１０３１は、上記のように順次切り出した単発音の波形信号をイコライザ１０３２に出力する。イコライザ１０３２は音波形切出部１０３１から受け取る単発音の波形信号に対し、ユーザにより入力されたパラメータ群、すなわちユーザインタフェース画面の画面定義データに含まれる「吸気音」に対応するフェーダ群１８４の属性値として記憶部１０７に記憶されているパラメータ群に従い、各周波数帯の振幅を増幅もしくは低減させることにより、単発音の波形信号の周波数特性を変更する。イコライザ１０３２は周波数特性に変更を加えた単発音の波形信号を一時的に記憶部１０７に記憶する。
【００８３】
上記のように、イコライザ１０３２により単発音の波形信号が１サイクルの時間間隔Ｔで順次、記憶部１０７に記憶される一方で、読出パルス生成部１０３３はユーザによりリストボックス１８１において指定された気筒数をＮとする場合、約Ｔ／Ｎの時間間隔で読出パルスを生成する。以下の説明においては、例として、ユーザによりリストボックス１８１において６気筒が選択されているものとする。
【００８４】
読出パルス生成部１０３３は、音波形切出部１０３１と同様に、回転速度センサ１３およびバルブ開口センサ１４から各々、回転速度信号およびバルブ開口信号を継続的に受け取る。読出パルス生成部１０３３は、バルブ開口信号を受信したタイミングｔｎにおいて、ｔｎ＋３／（２ｒｎ）を算出する。このタイミングは、第１気筒の吸気音の単発音の読み出し開始タイミングである。以下、このタイミングを「第１気筒タイミング」と呼ぶ。
【００８５】
読出パルス生成部１０３３は、第１気筒タイミング：ｔｎ＋３／（２ｒｎ）を算出すると、ユーザにより入力された気筒数Ｎ、すなわちユーザインタフェース画面の画面定義データに含まれるリストボックス１８１の属性値として記憶部１０７に記憶されている気筒数Ｎに基づき、以下の（Ｎ−１）個のタイミングを算出する（ただし、Ｔｎ＝２／ｒｎ）。
ｔｎ＋３／（２ｒｎ）＋Ｔｎ／Ｎ＝ｔｎ＋３／（２ｒｎ）＋２／（Ｎ・ｒｎ）、
ｔｎ＋３／（２ｒｎ）＋２Ｔｎ／Ｎ＝ｔｎ＋３／（２ｒｎ）＋４／（Ｎ・ｒｎ）、
・・・、
ｔｎ＋３／（２ｒｎ）＋（Ｎ−１）Ｔｎ／Ｎ＝ｔｎ＋３／（２ｒｎ）＋（２Ｎ−２）／（Ｎ・ｒｎ）。
【００８６】
今、ユーザはリストボックス１８１で「６気筒」を選択し、Ｎ＝６であるため、上記のタイミングはそれぞれ、以下のようになる。
ｔｎ＋３／（２ｒｎ）＋Ｔｎ／６＝ｔｎ＋３／（２ｒｎ）＋２／（６ｒｎ）＝ｔｎ＋１１／（６ｒｎ）、
ｔｎ＋３／（２ｒｎ）＋２Ｔｎ／６＝ｔｎ＋３／（２ｒｎ）＋４／（６ｒｎ）＝ｔｎ＋１３／（６ｒｎ）、
ｔｎ＋３／（２ｒｎ）＋３Ｔｎ／６＝ｔｎ＋３／（２ｒｎ）＋６／（６ｒｎ）＝ｔｎ＋１５／（６ｒｎ）、
ｔｎ＋３／（２ｒｎ）＋４Ｔｎ／６＝ｔｎ＋３／（２ｒｎ）＋８／（６ｒｎ）＝ｔｎ＋１７／（６ｒｎ）、
ｔｎ＋３／（２ｒｎ）＋５Ｔｎ／６＝ｔｎ＋３／（２ｒｎ）＋１０／（６ｒｎ）＝ｔｎ＋１９／（６ｒｎ）。
【００８７】
これらの５つのタイミングは、それぞれ、第２気筒〜第６気筒の吸気音の単発音を、時間揺らぎを付加することなく読み出す場合の読み出し開始タイミングである。以下、このタイミングをそれぞれ、「第２気筒基準タイミング」〜「第６気筒基準タイミング」と呼ぶ。ここで、実際のエンジンは４気筒であるが、実際のエンジンの回転数ｒｎから算出した１サイクルの時間Ｔｎに基づき、６気筒エンジンが同じ回転数で運転している場合における第２〜第６気筒の単発音の読み出し開始タイミングが算出されている。
【００８８】
読出パルス生成部１０３３は、上記のように算出した第２〜第６気筒基準タイミングに対し、ユーザにより入力された時間揺らぎの程度、すなわちユーザインタフェース画面の画面定義データに含まれるスライダ１８６の属性値として記憶部１０７に記憶されているパラメータに基づき、揺らぎを付加する。
【００８９】
例えば、ユーザにより入力された時間揺らぎの程度が「４．３（％）」である場合、読出パルス生成部１０３３は１サイクルの時間Ｔｎの−４．３％〜４．３％の範囲のいずれかの値をとる乱数値を５つ生成し、生成した乱数値をそれぞれ第２〜第６気筒基準タイミングに加算する。すなわち、読出パルス生成部１０３３は−０．０４３Ｔｎ〜０．０４３Ｔｎの範囲の乱数値ｅ２、ｅ３、ｅ４、ｅ５およびｅ６を生成し、以下の５つのタイミングを算出する。
ｔｎ＋１１／（６ｒｎ）＋ｅ２、
ｔｎ＋１３／（６ｒｎ）＋ｅ３、
ｔｎ＋１５／（６ｒｎ）＋ｅ４、
ｔｎ＋１７／（６ｒｎ）＋ｅ５、
ｔｎ＋１９／（６ｒｎ）＋ｅ６。
【００９０】
上記のように算出された５つのタイミングがそれぞれ、実際に第２〜第６気筒の吸気音の単発音が読み出される際の読み出し開始タイミングである。以下、これらの５つのタイミングをそれぞれ「第２気筒タイミング」〜「第６気筒タイミング」と呼ぶ。
【００９１】
続いて、読出パルス生成部１０３３は、ユーザにより入力された振幅揺らぎの程度、すなわちユーザインタフェース画面の画面定義データに含まれるスライダ１８７の属性値として記憶部１０７に記憶されているパラメータに基づき、振幅揺らぎを示す５つの乱数値を生成する。例えば、ユーザにより入力された振幅揺らぎの程度が「６．９（％）」である場合、読出パルス生成部１０３３は−０．０６９〜０．０６９範囲のいずれかの値をとる乱数値Ｅ２、Ｅ３、Ｅ４、Ｅ５およびＥ６を生成する。そして、読出パルス生成部１０３３は、生成した乱数値を用いて、以下の５つの数値を算出する。
１＋Ｅ２、
１＋Ｅ３、
１＋Ｅ４、
１＋Ｅ５、
１＋Ｅ６。
【００９２】
上記のように算出された５つの数値は、それぞれ第２〜第６気筒の吸気音の単発音の振幅方向の伸縮率を示す。なお、第１気筒の吸気音の単発音に対する振幅方向の伸縮率は１であり、伸縮は行われない。
【００９３】
読出パルス生成部１０３３は、上記のように第１〜第６気筒タイミングと、第１〜第６気筒に対応する振幅方向の伸縮率を算出すると、第１気筒タイミングにおいて第１気筒の伸縮率を振幅とするパルス信号を読出パルス信号として生成し、音波形読出部１０３４に出力する。同様に、読出パルス生成部１０３３は、第２気筒タイミング〜第６気筒タイミングにおいて、第２気筒〜第６気筒の伸縮率を振幅とするパルス信号を読出パルス信号として生成し、音波形読出部１０３４に出力する。
【００９４】
読出パルス生成部１０３３は、その後、タイミングｔｎ＋１、ｔｎ＋２、・・・においてバルブ開口信号を受信すると、その都度、同様に第１〜第６気筒タイミングと、第１〜第６気筒に対応する振幅方向の伸縮率を算出し、それらに基づき読出パルス信号を生成して音波形読出部１０３４および揺らぎ付加部１０３６に出力する。
【００９５】
図１０は、読出パルス生成部１０３３から出力される読出パルスを示したグラフである。図１０のグラフにおいて、横軸は時間、縦軸は振幅である。グラフに記載の読出パルスのはじめの３つに関しては、その生成タイミングおよび振幅を示す座標値を記載してあるが、４つめ以降については図が煩雑となるため、その記載を省略している。図１０に示されるように、読出パルス生成部１０３３からは、ほぼＴ／Ｎの時間間隔で、ほぼ１の振幅の読出パルスが出力されるが、それらの時間間隔および振幅には、ユーザにより入力された揺らぎの程度に応じた揺らぎが付加されている。
【００９６】
音波形読出部１０３４は、読出パルス生成部１０３３から図１０に示されるタイミングで順次読出パルスを受け取ると、それをトリガとしてイコライザ１０３２により記憶部１０７に一時的に記憶されている音波形信号を読み出し、相関変更部１０３５に引き渡す。音波形読出部１０３４により読み出される音波形信号は、第１気筒の吸気音の単発音に周波数特性の調整を行った波形信号である。
【００９７】
相関変更部１０３５は、常時、−１〜１の範囲のいずれかの値を取る乱数列を（Ｎ−１）列、生成している。ただし、Ｎはユーザにより入力された気筒数である。すなわち、この例ではユーザは６気筒を選択しているため、相関変更部１０３５は５列の乱数列を生成している。また、相関変更部１０３５は常時、バルブ開口センサ１４からバルブ開口信号を受け取っている。相関変更部１０３５は、音波形読出部１０３４から音波形信号を受け取ると、受け取ったタイミングが第１気筒タイミングおよび第２気筒基準タイミング〜第６気筒基準タイミングのいずれに最も近いかに基づき、受け取った音波形信号が第１〜第６気筒のいずれに対応するものであるかを判定する。
【００９８】
相関変更部１０３５は、受け取った音波形信号が第１気筒に対応するものであると判定した場合、特段の処理を行わず、受け取った音波形信号を揺らぎ付加部１０３６に引き渡す。一方、相関変更部１０３５は、受け取った音波形信号が第２〜第６気筒に対応するものであると判定した場合、ユーザにより入力された相関の程度、すなわちユーザインタフェース画面の画面定義データに含まれるスライダ１８５の属性値として記憶部１０７に記憶されているパラメータに応じた比率で、受け取った音波形信号と、生成した乱数列とをミキシングする。
【００９９】
例えば、受け取った音波形信号が第２気筒に対応するものであると判定され、ユーザにより入力された相関の程度が「２．８」である場合、相関変更部１０３５は受け取った音波形信号に（１−０．０２８）を乗じたものと、第１の乱数列に（受け取った音波形信号の最大振幅）×（０．０２８）を乗じたものとをミキシングする。このミキシング処理により生成される音波形信号は、相関変更部１０３５が受け取った音波形信号と正の相関を持ちつつ異なる音波形信号である。また、ユーザにより入力された相関の程度の数値が大きい程、音波形信号間の相関は小さくなる。相関変更部１０３５は、第３〜第６気筒に対応する音波形信号を受け取った場合も、それぞれ第２〜第５の乱数列を用いて、同様の音波形信号を生成する。相関変更部１０３５は生成した音波形信号を揺らぎ付加部１０３６に引き渡す。
【０１００】
揺らぎ付加部１０３６は、読出パルス生成部１０３３から読出パルス（図１０参照）を順次受け取るとともに、相関変更部１０３５から音信号波形を順次受け取る。音波形読出部１０３４および相関変更部１０３５の処理が十分に速い場合、揺らぎ付加部１０３６が読出パルス生成部１０３３から読出パルスを受け取るタイミングと、相関変更部１０３５から音信号波形を受け取り始めるタイミングはほぼ同じである。従って、それらのタイミングの近さに基づき、揺らぎ付加部１０３６は相関変更部１０３５から受け取る音波形信号と読出パルス生成部１０３３から受け取る読出パルスを対応付ける。
【０１０１】
続いて、揺らぎ付加部１０３６は受け取った読出パルスの振幅値と音波形信号を一時的に記憶部１０７に記憶する。その後、揺らぎ付加部１０３６は読出パルスおよび音波形信号を約Ｔ／Ｎの時間間隔で受け取るが、続く（Ｎ−１）個めの読出パルスを受け取るまで、一時的に記憶した音波形信号に対し処理を行わない。
【０１０２】
例えば、揺らぎ付加部１０３６は、ｔｎ＋１１／（６ｒｎ）＋ｅ２のタイミングで読出パルスＰｋを受け取り、その近傍のタイミングで音波形信号Ｗｋを受け取った場合、その後、ｔｎ＋１３／（６ｒｎ）＋ｅ３、ｔｎ＋１５／（６ｒｎ）＋ｅ４、・・・のタイミングで読出パルスＰｋ＋１、Ｐｋ＋２、・・・、Ｐｋ＋５を受け取る間、音信号波形Ｗｋには何も行わない。
【０１０３】
その後、ｔｎ＋１＋１１／（６ｒｎ＋１）＋ｅ’２において読出パルスＰｋ＋６を受け取った時点で、音波形信号Ｗｋを記憶部１０７から読み出し、読み出した音波形信号Ｗｋに対し揺らぎ付加の処理を行う。ただし、ｅ’２はｔｎ＋１＋１１／（６ｒｎ＋１）のタイミングに対し、読出パルス生成部１０３３が付加した時間揺らぎに関する乱数値である。
【０１０４】
揺らぎ付加の処理を具体的に説明すると、まず、揺らぎ付加部１０３６は、読出パルスＰｋの振幅値を伸縮率とし、音波形信号Ｗｋを振幅方向に伸縮する。続いて、揺らぎ付加部１０３６は、読出パルスＰｋと読出パルスＰｋ＋６の間の時間と、振幅方向に伸縮された音波形信号Ｗｋの時間とが一致するように、その音波形信号Ｗｋを時間方向に伸縮する。このように揺らぎ付加部１０３６により順次生成される音波形信号は、読出パルス生成部１０３３から受け取る読出パルス列に従い互いに異なる伸縮率で振幅方向および時間方向に伸張されているため、全体として振幅方向および時間方向に揺らぎを持ったものとなる。揺らぎ付加部１０３６は、生成した音信号波形を順次、窓関数処理部１０３７に引き渡す。
【０１０５】
窓関数処理部１０３７は、揺らぎ付加部１０３６から音波形信号を受け取ると、受け取った音信号波形に対し、受け取った音信号波形と長さが同じで、時間方向の中央の振幅が１であり、時間方向の両端にかけて徐々に振幅が小さくなり、両端で振幅がゼロとなる窓関数を乗じる。その結果、時間方向の両端の振幅がゼロである音波形信号が生成される。窓関数処理部１０３７は生成した音波形信号を順次、ミキシング部１０３８に出力する。
【０１０６】
ミキシング部１０３８は、窓関数処理部１０３７からほぼＴ×（１／６）の時間間隔で、長さがほぼＴの音波形信号を順次受け取る。ミキシング部１０３８は、受け取った音波形信号群を順次ミキシングする。ミキシング部１０３８のミキシングにより生成される音波形信号は、全体として、仮想的な６気筒エンジンの吸気音を示す（図１および図２参照）。ミキシング部１０３８はミキシングにより生成した音波形信号をミキサ１０４に出力する。
【０１０７】
以上のようにして、次数成分強調フィルタ１０３Ａにより、吸気音ピックアップ１１１から受け取った第１気筒の単発音の音波形信号に対し各種の加工が行われ、６気筒エンジンが発する吸気音の音波形信号が合成されて、ミキサ１０４に出力される。
【０１０８】
次数成分強調フィルタ１０３Ｂは次数成分強調フィルタ１０３Ａと同様の処理を行うことにより、６気筒エンジンが発する爆発音の音波形信号を合成し、ミキサ１０４に出力する。ただし、次数成分強調フィルタ１０３Ｂは爆発音ピックアップ１１２から爆発音の単発音の波形信号を受け取る点と、そのため、音波形切出部１０３１による単発音の切り出しタイミングおよび読出パルス生成部１０３３による読出パルスの生成タイミングが、例えばＴ×（１／２）だけ次数成分強調フィルタ１０３Ａにおける場合から遅れたタイミングとなる点が、次数成分強調フィルタ１０３Ａの場合と異なる。
【０１０９】
同様に、次数成分強調フィルタ１０３Ｃは次数成分強調フィルタ１０３Ａと同様の処理を行うことにより、６気筒エンジンが発する排気音の音波形信号を合成し、ミキサ１０４に出力する。ただし、次数成分強調フィルタ１０３Ｃは排気音ピックアップ１１３から排気音の単発音の波形信号を受け取る点と、そのため、音波形切出部１０３１による単発音の切り出しタイミングおよび読出パルス生成部１０３３による読出パルスの生成タイミングが、例えばＴ×（３／４）だけ次数成分強調フィルタ１０３Ａにおける場合から遅れたタイミングとなる点が、次数成分強調フィルタ１０３Ａの場合と異なる。
【０１１０】
ミキサ１０４は、次数成分強調フィルタ１０３Ａ〜Ｃの各々から受け取る音波形信号群と、メカノイズピックアップ群１２に含まれるカムチェーン音ピックアップ１２１およびファンベルト音ピックアップ１２２の各々から受け取る一連の音波形信号とを、所定のパンニング処理をした後、左右の各チャンネルに配分し、それらをミキシングする。パンニングの比率は、例えば吸気音ピックアップ１１１〜ファンベルト音ピックアップ１２２の各々が自動車の左右方向のセンタ位置からどの程度左右にずれた位置に配置されているかにより決定される。
【０１１１】
ミキサ１０４はミキシングにより生成した右チャンネルの音波形信号および左チャンネルの音波形信号をそれぞれ、次数成分強調フィルタ１０３ＲおよびＬに順次出力する。ただし、ユーザによりオプションボタン群１８２において「気筒音のみ」が選択されている場合、次数成分強調フィルタ１０３ＲおよびＬはミキサ１０４から受け取った音波形信号に何も行わず、それらを伝達特性模擬フィルタ１０５ＲおよびＬに引き渡す。
【０１１２】
伝達特性模擬フィルタ１０５ＲおよびＬは、次数成分強調フィルタ１０３ＲおよびＬから受け取る音波形信号を所定の伝達関数に入力することにより、エンジンルームにおいて発生した音が車内の運転者の耳に到達するまでに生じる周波数特性の変化を、次数成分強調フィルタ１０３ＲおよびＬから受け取った音信号波形に反映させる。
【０１１３】
より具体的には、エンジンルームの例えば中央位置において発したインパルス信号に対する、車内の運転者の頭位置におけるインパルス応答に基づき算出された伝達関数の係数列が、予め記憶部１０７に記憶されている。伝達特性模擬フィルタ１０５は、例えば、次数成分強調フィルタ１０３ＲおよびＬから受け取った音信号波形をフーリエ変換して得られる係数列の各々に、記憶されている伝達関数の係数列の各々を乗じて得られる係数列を逆フーリエ変換する。伝達特性模擬フィルタ１０５ＲおよびＬは、そのようにして生成した音信号波形を動的フィルタ１０６ＲおよびＬに各々出力する。
【０１１４】
動的フィルタ１０６ＲおよびＬは、アクセル開度センサ１５から常時、アクセル開度信号を受け取り、受け取ったアクセル開度信号に応じたフィルタ処理を伝達特性模擬フィルタ１０５ＲおよびＬから受け取る音信号波形に行う。動的フィルタ１０６ＲおよびＬが行うフィルタ処理は、例えばグラフィックイコライザ処理である。動的フィルタ１０６の処理のため、記憶部１０７には予め、グラフィックイコライザの各周波数帯に関し、アクセル開度と増幅率との対応データが記憶されている。
【０１１５】
図１１は、記憶部１０７に記憶されている対応データを示したグラフである。図１１のデータ例に従う場合、アクセル開度信号が９０を示す時、動的フィルタ１０６は中心周波数６３Ｈｚ、１２５Ｈｚ、・・・の周波数帯の振幅を、それぞれ１．２倍、１．４倍、・・・に増幅する。動的フィルタ１０６ＲおよびＬは、そのようなフィルタ処理を行った音波形信号を、それぞれアンプ１６ＲおよびＬに出力する。
【０１１６】
アンプ１６ＲおよびＬは、上記のようにして波形合成装置１０の動的フィルタ１０６ＲおよびＬから音信号波形を受け取ると、受け取った音波形信号をスピーカレベルに増幅し、それぞれスピーカ１７ＲおよびＬに出力する。スピーカ１７ＲおよびＬは、アンプ１６ＲおよびＬから受け取った音波形信号を音に変換して発音する。その結果、運転者には波形合成装置１０により合成されたエンジン音が聞こえる。
【０１１７】
上記のように運転者により聞こえるエンジン音は、ユーザがユーザインタフェース画面（図９参照）において入力した各種パラメータに応じた音響特性を有する音である。すなわち、ユーザはユーザインタフェース画面において希望の気筒数を入力することにより、実際のエンジンの気筒数と同じもしくは異なる任意の気筒数のエンジン音を合成させることができる。また、ユーザはユーザインタフェース画面において、吸気音、爆発音および排気音の各々に関し、単発音波形の周波数特性をフェーダ群１８４により示されるグラフィックイコライザで調整することにより、エンジン音の音色の癖を好みのものに調整することができる。
【０１１８】
また、ユーザはユーザインタフェース画面において、吸気音、爆発音および排気音の各々に関し、相関の程度、時間揺らぎの程度および振幅の程度を調整することにより、回転整数次の音の際立ちの程度を調整することができる。
【０１１９】
ところで、ユーザがユーザインタフェース画面のオプションボタン群１８２において「エンジン音全体」を選択している場合、次数成分強調フィルタ１０３Ａ〜Ｃは吸気音ピックアップ１１１〜排気音ピックアップ１１３の各々から受け取った音波形信号に何も処理を加えず、そのままそれらをミキサ１０４に引き渡す。従って、ミキサ１０４によるミキシングにより得られる音波形信号は、一連の吸気音、爆発音、排気音、カムチェーン音およびファンベルト音がミキシングされた音を示す波形信号である。
【０１２０】
次数成分強調フィルタ１０３ＲおよびＬは、ミキサ１０４から上記のようにミキシングにより得られた音波形信号を用いて、次数成分強調フィルタ１０３Ａについて上述したものと同様の処理を行う。なお、次数成分強調フィルタ１０３ＲおよびＬの音波形切出部１０３１による単発音の波形信号の切り出しタイミングは、その時間間隔がバルブ開口センサ１４からバルブ開口信号を受け取る時間間隔と一致すればいずれのタイミングでもよいが、窓関数処理によりエンジン音の特徴部分がカットされないように、エンジン音が比較的小さいと思われるタイミング、例えば圧縮段階のタイミングを切り出しタイミングとすることが望ましい。
【０１２１】
次数成分強調フィルタ１０３ＲおよびＬにより生成された音波形信号群は、それぞれ伝達特性模擬フィルタ１０５ＲおよびＬに引き渡され、その後、上述した伝達特性模擬フィルタ１０５、動的フィルタ１０６およびアンプ１６の処理を経た後、スピーカ１７ＲおよびＬから発音される。
【０１２２】
次数成分強調フィルタ１０３Ａ〜Ｃが有効化される場合と、次数成分強調フィルタ１０３Ｒ〜Ｌが有効化される場合とでは、前者においては単発音の切り出しおよび多気筒エンジン音の合成の処理が吸気音、爆発音および排気音の各々において行われた後にメカノイズとともにミキシングされるのに対し、後者においては単発音の切り出しおよび多気筒エンジン音の合成の処理が吸気音、爆発音、排気音およびメカノイズのミキシングの後に行われる点が異なっている。そのため、前者においては吸気音、爆発音および排気音の各々に関し音響特性の調整が可能であるのに対し、後者においては左右の音の各々に関し音響特性の調整が可能である。なお、それらのメリットを両方備えるように、次数成分強調フィルタ１０３Ａ〜Ｃと次数成分強調フィルタ１０３Ｒ〜Ｌの両方を同時に有効化するようにしてもよい。
【０１２３】
以上のように、波形合成システム１によれば、ユーザは自動車の運転中において、好みの気筒数および周波数特性のエンジン音を、運転状態に応じて変化させながら合成させて聞くことができる。その結果、運転者は好みのエンジン音を聞きながら運転を楽しむことができる。
【０１２４】
［４．変形例］
上述した実施形態は、本願発明の技術的思想の範囲で様々に変形することができる。以下にそのような変形例を示す。
【０１２５】
［４．１．第１変形例］
上述した実施形態においては、各気筒に対応する単発音間の相関を調整するために、相関変更部１０３５がランダム波形を生成し、第１気筒の単発音の波形信号とランダム波形の信号とをユーザの入力したパラメータに応じた振幅比でミキシングすることにより、第２気筒以降の気筒に対応する単発音を生成するものとした。これに対し、第１変形例においては、ランダム波形を用いることなく、実際の多気筒エンジンの有する複数の気筒の各々から得られる波形信号を用いて、互いに相関の低い単発音を生成する。
【０１２６】
第１変形例においては、多気筒エンジンの有する各気筒に関し、吸気音ピックアップ１１１、爆発音ピックアップ１１２および排気音ピックアップ１１３が配置されている。例えば４気筒エンジンの場合、吸気音ピックアップ１１１ａ〜ｄ、爆発音ピックアップ１１２ａ〜ｄおよび排気音ピックアップ１１３ａ〜ｄ（ただし、ａ〜ｄは各々、第１〜第４気筒に対応する）がエンジンの所定位置に配置され、各々波形信号を生成する。
【０１２７】
また、第１変形例においては、各気筒における吸気バルブの開口開始タイミングを基準として単発音の切り出しタイミングが行われる必要があるため、バルブ開口センサ１４ａ〜ｄが各気筒の吸気バルブ付近に配置されている。
【０１２８】
例えば、次数成分強調フィルタ１０３Ａは、吸気音ピックアップ１１１ａ〜ｄの各々から吸気音を示す音波形信号を受け取り、それらの各々から吸気音の単発音の波形信号を切り出す。そのように切り出される波形信号は、互いに異なる波形信号である。
【０１２９】
ユーザにより、リストボックス１８１において実際のエンジンの気筒数と同じ気筒数（この場合、４気筒）が選択されている場合、次数成分強調フィルタ１０３Ａの相関変更部１０３５は、合成するエンジン音の各気筒に対応する単発音の波形信号として、以下の音波形信号を用いる。
合成音の第１気筒：実機の第１気筒の波形、
合成音の第２気筒：実機の第１気筒の波形を実機の第２気筒の波形で調整、
合成音の第３気筒：実機の第１気筒の波形を実機の第３気筒の波形で調整、
合成音の第４気筒：実機の第１気筒の波形を実機の第４気筒の波形で調整。
【０１３０】
より具体的には、例えば、相関変更部１０３５は合成するエンジン音の第２気筒に対応する波形信号として、吸気音ピックアップ１１１ａおよび吸気音ピックアップ１１１ｂの各々から出力された音波形信号から切り出された単発音波形をユーザの入力したパラメータに応じた振幅比でミキシングしたものを用いる。
【０１３１】
一方、ユーザにより、リストボックス１８１において実際のエンジンの気筒数と異なる気筒数、例えば６気筒が選択されている場合、次数成分強調フィルタ１０３Ａの相関変更部１０３５は、合成するエンジン音の各気筒に対応する単発音の波形信号として、以下の音波形信号を用いる。
合成音の第１気筒：実機の第１気筒の波形、
合成音の第２気筒：実機の第１気筒の波形を実機の第２気筒の波形で調整、
合成音の第３気筒：実機の第１気筒の波形を実機の第２気筒および第３気筒の波形で調整、
合成音の第４気筒：実機の第１気筒の波形を実機の第３気筒の波形で調整。
合成音の第５気筒：実機の第１気筒の波形を実機の第３気筒および第４気筒の波形で調整、
合成音の第６気筒：実機の第１気筒の波形を実機の第４気筒の波形で調整。
【０１３２】
より具体的には、例えば相関変更部１０３５は合成するエンジン音の第３気筒に対応する波形信号を生成するために、まず、吸気音ピックアップ１１１ｂおよび吸気音ピックアップ１１１ｃの各々から出力された音波形信号から切り出された単発音波形をそれぞれ伸縮率５０％で振幅方向に伸縮したものをミキシングする。その後、相関変更部１０３５は、吸気音ピックアップ１１１ａから出力された音波形信号から切り出された単発音波形と、ミキシングにより生成した音波形信号をユーザの入力したパラメータに応じた振幅比でミキシングしたものを、合成するエンジン音の第３気筒に対応する波形信号として生成する。
【０１３３】
このように、第１変形例においては、複数の気筒の各々から得られる波形信号を用いて、互いに相関の低い単発音の波形信号が生成され、エンジン音合成に用いられる。
【０１３４】
［４．２．第２変形例］
第２変形例においても、第１変形例と同様に、ランダム波形を用いることなく、互いに相関の低い単発音波形が生成され、それらの単発音波形がエンジン音合成に用いられる。しかしながら、第１変形例においては、多気筒エンジンの各々の気筒から異なる波形信号が取得されるのに対し、第２変形例においては、第１気筒から取得される波形信号の異なる区間が単発音波形として切り出され、そのように切り出された異なる単発音波形がエンジン音合成に用いられる。
【０１３５】
第２変形例においては、上述した実施形態と同様に、第１気筒にのみ、吸気音ピックアップ１１１、爆発音ピックアップ１１２、排気音ピックアップ１１３およびバルブ開口センサ１４が配置されている。ただし、音波形切出部１０３１は１サイクルの時間をＴとする場合、時間間隔Ｔで長さＴの単発音の波形信号の切り出しを行うのではなく、Ｔ×｛（Ｎ＋１）／Ｎ｝の時間間隔で長さＴの単発音の波形信号を切り出す。
【０１３６】
図１２は、第２変形例において、ユーザがリストボックス１８１において４気筒を選択している場合に、音波形切出部１０３１が例えば吸気音ピックアップ１１１から出力された音波形信号から４つの単発音の波形信号を切り出す様子を示した図である。音波形切出部１０３１により切り出された単発音の波形信号は、最新の４つが記憶部１０７に記憶される。従って、記憶部１０７に記憶された４つの波形信号の各々は、５Ｔの時間間隔で更新されることになる。
【０１３７】
次数成分強調フィルタ１０３Ａの相関変更部１０３５は、合成するエンジン音の各気筒に対応する単発音の波形信号として、以下の音波形信号を用いる。
合成音の第１気筒：実機の第１気筒の波形から切り出された第１の波形、
合成音の第２気筒：実機の第１気筒の波形から切り出された第１の波形を実機の第１気筒の波形から切り出された第２の波形で調整、
合成音の第３気筒：実機の第１気筒の波形から切り出された第１の波形を実機の第１気筒の波形から切り出された第３の波形で調整、
合成音の第４気筒：実機の第１気筒の波形から切り出された第１の波形を実機の第１気筒の波形から切り出された第４の波形で調整。
【０１３８】
より具体的には、例えば、相関変更部１０３５は合成するエンジン音の第２気筒に対応する波形信号として、吸気音ピックアップ１１１から出力された音波形信号から切り出された第１の単発音波形と第２の単発音波形とをユーザの入力したパラメータに応じた振幅比でミキシングしたものを用いる。
【０１３９】
上記のように音波形切出部１０３１により切り出される単発音の波形信号は、実際のエンジンの単発音と比較して、Ｔ×（１／４）の時間ずつ、その開始タイミングがずれてゆく。従って、第２〜第４の単発音の波形信号は、第１の単発音の波形信号との間で低い相関を示し、相関の調整のために、ランダム波形の代わりに利用することができる。
【０１４０】
［４．３．第３変形例］
上述した実施形態においては、音波形切出部１０３１は、１サイクルの長さをＴとする場合、時間間隔Ｔで毎回、入力される音波形信号から単発音の波形信号を切り出す処理を行うものとした。しかしながら、１サイクルの長さＴは隣り合うサイクル間で大きく異なることはほとんどなく、特にエンジンの回転数が大きい場合にはその差は無視できるほど小さい。従って、第３変形例においては、音波形切出部１０３１は時間間隔Ｔで波形信号の切り出しを行わず、回転速度センサ１３から受け取る回転速度信号の値が所定の閾値以上に変化したタイミングで波形信号の切り出しを行う。
【０１４１】
なお、音波形切出部１０３１が波形信号を切り出すタイミングとしては、所定時間間隔で到来するタイミングや、バルブ開口センサ１４からバルブ開口信号を所定数受け取るごとのタイミングなど、他に様々なものが考えられるが、波形信号の切り出し処理を間引くものであればいずれを採用してもよい。
【０１４２】
第３変形例によれば、音波形切出部１０３１およびイコライザ１０３２の処理を軽減することができる。
【０１４３】
［４．４．第４変形例］
上述した実施形態においては、揺らぎ付加部１０３６が読出パルス生成部１０３３から読出パルスを受け取るとともに、相関変更部１０３５から音波形信号を受け取った後、１サイクルの長さＴが経過するまで、揺らぎ付加部１０３６は受け取った音波形信号に処理を行わないものとした。これは、揺らぎ付加部１０３６が時間方向の伸縮を行うために、当該音波形信号により示される単発音の開始タイミングから、同じ気筒の次の単発音の開始タイミングまでの時間を算出する必要があるためである。
【０１４４】
しかしながら、読出パルス生成部１０３３により生成される読出パルスの時間間隔は、時間揺らぎが付加されているものの、Ｔ／Ｎ（Ｎはユーザが入力した気筒数）から大きく乖離することはない。従って、第４変形例においては、揺らぎ付加部１０３６は時間方向の伸縮を行うことなく、読出パルスを受け取ると、相関変更部１０３５から受け取った音波形信号に振幅方向の伸縮のみを行い、すぐさまその音波形信号を窓関数処理部１０３７に出力する。
【０１４５】
第４変形例によれば、揺らぎ付加部１０３６は相関変更部１０３５から受け取る音波形信号を一時的に記憶部１０７に記憶し、再度読み出す処理を行う必要がなくなるとともに、実際のエンジンから音波形信号が取得されたタイミングと、その音波形信号を用いてエンジン音が合成されるタイミングのずれが小さくなる。
【０１４６】
［４．５．第５変形例］
上述した実施形態においては、バルブ開口センサ１４から出力されるバルブ開口信号と、回転速度センサ１３から出力される回転速度信号の両方を利用するものとした。しかしながら、例えばバルブ開口信号はクランクシャフト２回転につき１回、出力される。従って、第５変形例においては、波形合成システム１はバルブ開口センサ１４のみを備え、回転速度信号の代わりにバルブ開口信号が１秒間に受け取られた個数の２倍の数値（回転／秒）が回転速度信号として用いられる。
【０１４７】
なお、回転速度信号をバルブ開口信号で代用する代わりに、バルブ開口信号を回転速度信号で代用してもよい。すなわち、回転速度信号により示される回転速度ｒにより、１サイクルの時間ＴはＴ＝２／ｒで算出される。従って、単発音の波形信号の切り出しタイミングを気筒の４工程１サイクルにおける動作に同期することを考慮しなければ、音波形切出部１０３１は任意のタイミングで単発音の波形信号の切り出しを開始し、その後、回転速度信号から算出される時間Ｔの経過ごとに単発音の波形信号の切り出しを行えばよい。
【０１４８】
［４．６．第６変形例］
上述した実施形態においては、波形合成装置１０は各構成部に対応する専用のハードウェア回路の組み合わせにより実現されることが想定されているが、それに限られない。すなわち、第６変形例においては、汎用コンピュータにアプリケーションプログラムに従った処理を実行させることにより、波形合成装置１０が実現される。
【０１４９】
［５．備考］
上述した実施形態およびその変形例において示した数値や、それらの数値の算出方法は、本発明を説明するための例示であって、本発明の技術範囲はそれらの数値や算出方法に限らない。
【０１５０】
例えば、上述した実施形態およびその変形例において示した波形合成システム１における処理の順序は、本発明の技術的思想の範囲において変更可能である。例えば、揺らぎ付加部１０３６は振幅方向の伸縮の後、時間方向の伸縮を行うものとして説明したが、これらの順序が逆であってもよい。
【０１５１】
また、読出パルス生成部１０３３は図１０に例示したタイミングで読出パルスを生成するものとしたが、例えば音波形読出部１０３４等に対し読み出しタイミングを示すタイミングデータを出力し、音波形読出部１０３４等はタイミングデータに従ったタイミングで音波形信号の読み出し等を行うようにしてもよい。
【０１５２】
また、読出パルス生成部１０３３は図１０に例示したタイミングで読出パルスを生成するものとしたが、例えば生成するエンジン音の気筒数ごとに異なる系列に分離された読出パルスを生成し、音波形読出部１０３４等はそれらの読出パルスの系列ごとに処理を行うようにしてもよい。
【０１５３】
また、吸気音ピックアップ１１１等として圧電センサ以外のセンサを用いたり、音を収音するマイクを用いたりしてもよい。
【図面の簡単な説明】
【０１５４】
【図１】本発明にかかるエンジン音の合成の原理を示した図である。
【図２】本発明にかかるエンジン音の合成の原理を示した図である。
【図３】本発明にかかる揺らぎの付加がエンジンの合成音に与える影響を示したグラフである。
【図４】本発明にかかる揺らぎの付加がエンジンの合成音に与える影響を示したソナグラフである。
【図５】本発明にかかるエンジン音の合成に用いる単発音間の相関がエンジンの合成音に与える影響を示したグラフである。
【図６】本発明にかかるエンジン音の合成に用いる単発音の周波数特性がエンジンの合成音に与える影響を示したグラフである。
【図７】本発明の実施形態にかかる波形合成システムの構成を示したブロック図である。
【図８】本発明の実施形態にかかる次数成分強調フィルタの構成を示したブロック図である。
【図９】本発明の実施形態にかかるユーザインタフェース画面を示した図である。
【図１０】本発明の実施形態にかかる読出パルスを示したグラフである。
【図１１】本発明の実施形態にかかる動的フィルタが利用する対応データを示したグラフである。
【図１２】本発明の実施形態の変形例にかかる単発音の波形信号の切り出し方法を示した図である。
【符号の説明】
【０１５５】
１…波形合成システム、１０…波形合成装置、１１…気筒音ピックアップ群、１２…メカノイズピックアップ群、１３…回転速度センサ、１４…バルブ開口センサ、１５…アクセル開度センサ、１６…アンプ、１７…スピーカ、１８…入力デバイス、１９…ディスプレイ、１０１…音波形入力バス、１０２…センサ信号入力バス、１０３…次数成分強調フィルタ、１０４…ミキサ、１０５…伝達特性模擬フィルタ、１０６…動的フィルタ、１０７…記憶部、１０８…画面生成部、１０９…パラメータ入力部、１１１…吸気音ピックアップ、１１２…爆発音ピックアップ、１１３…排気音ピックアップ、１２１…カムチェーン音ピックアップ、１２２…ファンベルト音ピックアップ、１０３１…音波形切出部、１０３２…イコライザ、１０３３…読出パルス生成部、１０３４…音波形読出部、１０３５…相関変更部、１０３６…揺らぎ付加部、１０３７…窓関数処理部、１０３８…ミキシング部。
【図１】
2007256527.tif 000003
【図２】
2007256527.tif 000004
【図３】
2007256527.tif 000005
【図６】
2007256527.tif 000006
【図７】
2007256527.tif 000007
【図８】
2007256527.tif 000008
【図９】
2007256527.tif 000009
【図１０】
2007256527.tif 000010
【図１１】
2007256527.tif 000011
【図１２】
2007256527.tif 000012
【図４】
2007256527.tif 000013
【図５】
2007256527.tif 000014