(57)【要約】【課題】  周期的な音色変化を忠実に表現した楽音を高品質に合成する。【解決手段】  少なくとも時間的に音色が変動する特性を実現する複数周期からなる波形データを、１乃至複数周期単位の単位波形データに分割する。１音の持続音部にあたる範囲の楽音を生成する際に、仮想的な波形読み出し位置を所定のアドレス進行方向に進行させる第１の波形位置制御と、前記所定のアドレス進行方向とは逆方向に進行させる第２の波形位置制御とを交互に繰り返し、所定期間毎に初期読み出し位置を設定する。設定した初期読み出し位置に応じた単位波形データを、音高情報に応じた波形読み出しアドレスに従って読み出し、これに基づき音色が時間的に変化する持続的楽音の波形データを生成する。こうすると、１波ループ波形を取り出すことが困難な連続波形を利用しても、音色の微妙な又は複雑な周期的な時間変化を伴う波形を、不連続感なく高品質に合成することができるようになる。【選択図】        図７
2008107547.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも時間的に音色が変動する特性を実現する複数周期からなる波形データを記憶する記憶手段と、
前記波形データを１乃至複数周期単位の単位波形データに分割する分割手段と、
発生すべき楽音の音高情報を取得する音高取得手段と、
仮想的な波形読み出し位置を所定のアドレス進行方向に進行させる第１の波形位置制御と、前記所定のアドレス進行方向とは逆方向に進行させる第２の波形位置制御とを交互に繰り返し、所定期間毎に初期読み出し位置を設定する設定手段と、
前記設定した初期読み出し位置に応じた単位波形データを、前記取得した音高情報に応じた速さで所定のアドレス進行方向に進行する波形読み出しアドレスに従って読み出す波形読み出し手段と、
前記波形読み出し手段により読み出された単位波形データに基づき、音色が時間的に変化する持続的楽音の波形データを生成する波形生成手段と
を具備する楽音合成装置。
【請求項２】
時間的に変化するピッチベンド情報を取得する手段を具えてなり、
前記設定手段は、前記取得したピッチベンド情報の時間変化に応じて、前記第１の波形位置制御と前記第２の波形位置制御とを切り替えることを特徴とする請求項１に記載の楽音合成装置。
【請求項３】
ビブラートの速さを制御する速さ制御情報を取得する手段と、
前記取得された速さ制御情報に基づき、前記ピッチベンド情報の時間変化の周期を変更する変更手段とをさらに具えた請求項２に記載の楽音合成装置。
【請求項４】
ビブラートの深さを制御する深さ制御情報を取得する手段をさらに具え、
前記設定手段は、前記取得された深さ制御情報に応じて、前記波形読み出しアドレスの初期読み出し位置を設定する波形データの範囲を変更することを特徴とする請求項１乃至３のいずれかに記載の楽音合成装置。
【請求項５】
前記設定手段は、前記波形読み出し手段が前記分割された単位波形データを読み出すのに係る期間毎に、初期読み出し位置を設定することを特徴とする請求項１乃至４のいずれかに記載の楽音合成装置。
【請求項６】
前記記憶手段は、音色が時間的に周期変化するビブラート１周期分の波形データから、任意の音色変化の区間内において音色が変化する複数周期からなる波形データを取り出し、該取り出した波形データを記憶することを特徴とする請求項１乃至５のいずれかに記載の楽音合成装置。
【請求項７】
前記記憶手段は、前記波形データをダイナミクス値に対応づけて記憶してなり、
ダイナミクス値を取得するダイナミクス取得手段と、
前記取得したダイナミクス値に対応する波形データを特定する特定手段とをさらに具える請求項１乃至６のいずれかに記載の楽音合成装置。
【請求項８】
少なくとも時間的に音色が変動する特性を実現する複数周期からなる波形データを記憶するメモリを使用して、コンピュータに、
前記波形データを１乃至複数周期単位の単位波形データに分割する手順と、
発生すべき楽音の音高情報を取得する手順と、
仮想的な波形読み出し位置を所定のアドレス進行方向に進行させる第１の波形位置制御と、前記所定のアドレス進行方向とは逆方向に進行させる第２の波形位置制御とを交互に繰り返し、所定期間毎に初期読み出し位置を設定する手順と、
前記設定した初期読み出し位置に応じた単位波形データを、前記取得した音高情報に応じた速さで所定のアドレス進行方向に進行する波形読み出しアドレスに従って読み出す手順と、
前記読み出された単位波形データに基づき、音色が時間的に変化する持続的楽音の波形データを生成する手順と
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、波形メモリ等に記憶した波形サンプルデータに基づいて、楽音あるいは音声若しくはその他任意の音を合成する楽音合成装置及びプログラムに関する。特に、音の持続する持続音部において周期的な音色変化を含む奏法に従う楽音波形を、音色不連続感を与えることなく高品質に合成する楽音合成装置及びプログラムに関する。
【背景技術】
【０００２】
波形メモリにおいて、ＰＣＭ（パルス符号変調）又はＤＰＣＭ（差分ＰＣＭ）又はＡＤＰＣＭ（適応差分ＰＣＭ）等の任意の符号化方式で符号化した波形サンプルデータを記憶しておき、これを所望のピッチに対応して読み出すことにより楽音を合成する、所謂「波形メモリ読み出し」による楽音合成装置は既に公知である。この場合、或る１つのノートに対応する１つの楽音の発音中にそのピッチ及び音色が周期的に微妙に又は複雑に変化する、例えばビブラート奏法などで楽音を再生する際には、従来の典型例としては、ピッチ変調のかかっていない波形を使用し、リアルタイムに入力されるピッチ変調情報に従って前記波形の読み出しピッチを変調すると共に、該読み出した波形をフィルタ処理することにより適当な音色制御を行いながら楽音合成するようにしている。これに対して、実際の自然楽器の演奏に基づいてサンプリングした連続的波形のビブラート１周期の範囲の中から、波形形状（音色）がそれぞれ異なる１波ループ波形（この明細書では、繰り返し読み出しても波形の連続性が失われない特性を有する１周期分の波形を「１波ループ波形」と呼んで区別する）を分散的に複数取り出し、該取り出した複数の１波ループ波形それぞれをテンプレート波形として記憶しておき、楽音再生時にこれらのテンプレート波形を順々に１波クロスフェード合成しながら切り替えることにより、ビブラート１周期分の楽音波形を合成する装置が従来から知られている（所謂１波ループ合成方式）。そして、前記したようなテンプレート波形を、所定の順序に従って切り替えながら読み出すことが複数回繰り返されることで（この明細書では、ループ読み出しと呼ぶ）、複数ビブラート周期にわたる高品質な楽音波形が合成される。例えば、下記に示す特許文献１に記載されている装置がその一例である。
【特許文献１】特許第3669177号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、上述の特許文献１に示された従来装置では、実際の自然楽器での演奏に比較して、楽音の持続音部でありながら音色の微妙な又は複雑な周期的な時間変化を表現した高品質な楽音を合成することができずに、従ってユーザに対して音色変化の周期的な連続性が途切れているような印象（言いかえると音色の不連続感）を与える楽音が合成されてしまう、という問題点があった。すなわち、従来の装置においては、分散的に取り出した離散的な音色の波形（１波ループ波形）を１波ループ合成方式により順次に切り替えながら楽音を合成しているために、実際の自然楽器での演奏に比べると、本来その演奏が有している微妙な又は複雑な音色変化の連続性が失われやすい。また、１波ループ合成方式を行うためには、上記したように繰り返し読み出しても波形の連続性が失われることがない１波ループ波形を、元波形から取り出す必要がある。しかし、ビブラート波形の中には、１波ループ波形をうまく取り出すことができない非常に複雑な音色変化を伴う波形であるものがあり、そうした元波形からは上記したような１波ループ波形をうまく取り出すことができず、そうした場合には当然のことながら１波ループ合成方式を適用しての楽音合成を行うことは困難である。したがって、従来の装置では、１波ループ波形をうまく取り出すことのできないような、音色の微妙な又は複雑な周期的な時間変化を伴うビブラート波形を高品質に合成することは非常に難しい。
【０００４】
本発明は上述の点に鑑みてなされたもので、楽音の持続音部において周期的な音色変化の不連続感を発生させることなく、非常に微妙な又は複雑な音色の周期的時間変化特性をもつ楽音をより高品質に合成することのできるようにした楽音合成装置及びプログラムを提供しようとするものである。
【課題を解決するための手段】
【０００５】
本発明に係る楽音合成装置は、少なくとも時間的に音色が変動する特性を実現する複数周期からなる波形データを記憶する記憶手段と、前記波形データを１乃至複数周期単位の単位波形データに分割する分割手段と、発生すべき楽音の音高情報を取得する音高取得手段と、仮想的な波形読み出し位置を所定のアドレス進行方向に進行させる第１の波形位置制御と、前記所定のアドレス進行方向とは逆方向に進行させる第２の波形位置制御とを交互に繰り返し、所定期間毎に初期読み出し位置を設定する設定手段と、前記設定した初期読み出し位置に応じた単位波形データを、前記取得した音高情報に応じた速さで所定のアドレス進行方向に進行する波形読み出しアドレスに従って読み出す波形読み出し手段と、前記波形読み出し手段により読み出された単位波形データに基づき、音色が時間的に変化する持続的楽音の波形データを生成する波形生成手段とを具備する。
【０００６】
本発明によると、少なくとも時間的に音色が変動する特性を実現する複数周期からなる波形データを記憶しておき、この波形データを１乃至複数周期単位の単位波形データに分割する。１音の持続音部にあたる範囲の楽音を生成する際に、仮想的な波形読み出し位置を所定のアドレス進行方向に進行させる第１の波形位置制御と、前記所定のアドレス進行方向とは逆方向に進行させる第２の波形位置制御とを交互に繰り返し、所定期間毎に初期読み出し位置を設定する。そして、前記設定した初期読み出し位置に応じた単位波形データを、前記取得した音高情報に応じた速さで所定のアドレス進行方向に進行する波形読み出しアドレスに従って読み出し、該読み出された単位波形データに基づき音色が時間的に変化する持続的楽音の波形データを生成する。すなわち、波形読み出しアドレスは音高情報に応じた速さで所定のアドレス進行方向に進行するものであるが、前記アドレス進行方向と同方向又は逆方向に交互に繰り返して仮想的な波形読み出し位置を進行させることに応じて、所定の期間毎に初期読み出し位置を設定し、これに従い分割した個々の単位波形データをあたかも往復するようにして読み出す。そして、前記読み出された波形データに基づき波形合成を行って、音色が時間的に変化する持続的楽音の波形データを生成する。このようにすると、元の波形データが１波ループ波形をうまく取り出すことができない非常に複雑な音色変化を伴う連続的な波形であっても、音色の微妙な又は複雑な周期的な時間変化を伴う波形を、不連続感なく高品質に合成することが容易にできるようになる。
【０００７】
本発明は、装置の発明として構成し、実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記憶媒体の形態で実施することもできる。
【発明の効果】
【０００８】
本発明によれば、少なくとも時間的に音色が変動する特性を実現する複数周期からなる波形データを記憶手段から読み出す際に、波形読み出しアドレスの初期読み出し位置を所定のアドレス進行方向と前記所定のアドレス進行方向とは逆方向とを交互に繰り返すことにより、波形データを所定の範囲毎にあたかも往復させるように読み出す往復読み出し制御を行い、該読み出した波形データに基づいて音色が時間的に変化する持続的楽音の波形データを生成するようにしたことから、１波ループ波形をうまく取り出すことのできないような、音色の微妙な又は複雑な周期的な時間変化を伴う波形であっても、不連続感を与えることなく高品質に合成することができるようになる、という効果が得られる。
【発明を実施するための最良の形態】
【０００９】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
【００１０】
図１は、この発明に係る楽音合成装置を適用した電子楽器のハードウエア構成例を示すブロック図である。ここに示す電子楽器は、演奏者による演奏操作子５の操作に伴い演奏進行に応じて供給される演奏情報（ノートオンイベントやノートオフイベントなどの演奏イベントデータ、ダイナミクス情報やピッチベンド情報あるいはビブラートスピード情報・ビブラートデプス情報などの各種コントロールデータを含む）に基づいて電子的に楽音を発生させたり、あるいは演奏進行順に順次に供給される予め作成済みの演奏情報に基づいて自動的に楽音を発生する楽音合成機能を有する。また、前記楽音合成機能の実行時においては、１音のうち音が連続する部分である持続音部（ボディ部とも呼ぶ）について、演奏情報に含まれるダイナミクスに基づき新たに使用すべき波形サンプルデータ（以下、単に波形データと呼ぶ）の選択を行い、該選択された波形データに従って楽音を合成することにより、前記持続音部の楽音として特にビブラート奏法などの楽音を高品質に再現することのできるようにしている。こうした持続音部に対する楽音合成処理の詳細な説明については、後述する。
【００１１】
なお、この実施例に示す電子楽器はここに示す以外のハードウェアを有する場合もあるが、ここでは必要最小限の資源を用いた場合について説明する。また、音源としては、例えば様々な楽器毎の特有な奏法に対応する波形データとして、アタック部、リリース部、持続音部あるいはジョイント部などの１音についての一部区間において所定の奏法に対応した波形全体を記憶しておき（これを奏法モジュールと呼ぶ）、これらを時系列的に複数組み合わせることで１音又は連続する複数音の楽音を形成することにより、自然楽器固有の各種奏法若しくはアーティキュレーションによる音色変化を忠実に表現した奏法などのリアルな再現とその制御を目的としたAEM（Articulation Element Modeling）と称する楽音波形制御技術を用いた音源（所謂AEM音源）を用いた場合を例にして説明する。
【００１２】
図１に示した電子楽器はコンピュータを用いて構成されており、そこにおいて、上記したような楽音合成機能を実現する各種の楽音合成処理（後述の図４に示す「ビブラートボディ合成処理」など）は、コンピュータが各々の処理を実現する所定のプログラム（ソフトウエア）を実行することにより実施される。勿論、これらの各処理はコンピュータソフトウエアの形態に限らず、DSP（ディジタル・シグナル・プロセッサ）によって処理されるマイクロプログラムの形態でも実施可能であり、また、この種のプログラムの形態に限らず、ディスクリート回路又は集積回路若しくは大規模集積回路等を含んで構成された専用ハードウエア装置の形態で実施してもよい。
【００１３】
本実施例に示す電子楽器は、マイクロプロセッサユニット（ＣＰＵ）１、リードオンリメモリ（ＲＯＭ）２、ランダムアクセスメモリ（ＲＡＭ）３からなるマイクロコンピュータの制御の下に各種の処理が実行されるようになっている。ＣＰＵ１は、この電子楽器全体の動作を制御するものである。このＣＰＵ１に対して、通信バス１Ｄ（例えば、データ及びアドレスバスなど）を介してＲＯＭ２、ＲＡＭ３、外部記憶装置４、演奏操作子５、パネル操作子６、表示器７、音源８、インタフェース９がそれぞれ接続されている。更に、ＣＰＵ１には、タイマ割込み処理（インタラプト処理）における割込み時間や各種時間を計時するタイマ１Ａが接続されている。すなわち、タイマ１Ａは時間間隔を計数したり、所定の演奏情報に従って楽曲を演奏する際の演奏テンポを設定したりするためのテンポクロックパルスを発生する。このテンポクロックパルスの周波数は、パネル操作子６の中の例えばテンポ設定スイッチ等によって調整される。このようなタイマ１ＡからのテンポクロックパルスはＣＰＵ１に対して処理タイミング命令として与えられたり、あるいはＣＰＵ１に対してインタラプト命令として与えられる。ＣＰＵ１は、これらの命令に従って各種処理を実行する。
【００１４】
ＲＯＭ２は、ＣＰＵ１により実行される各種プログラム、あるいは所謂波形メモリとして様々な楽器毎の特有な奏法（特に、時間的なピッチ変動及び音色変動を伴うビブラート奏法やピッチベンド奏法など）に対応する波形データ等の各種データを格納するものである。ＲＡＭ３は、ＣＰＵ１が所定のプログラムを実行する際に発生する各種データを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを記憶するメモリ等として使用される。ＲＡＭ３の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。外部記憶装置４は、自動演奏の元となる演奏情報や奏法に対応する波形データなどの各種データや、ＣＰＵ１により実行あるいは参照される「ビブラートボディ合成処理」（図４参照）などの各種制御プログラム等を記憶する。前記ＲＯＭ２に制御プログラムが記憶されていない場合、この外部記憶装置４（例えばハードディスク）に制御プログラムを記憶させておき、それを前記ＲＡＭ３に読み込むことにより、ＲＯＭ２に制御プログラムを記憶している場合と同様の動作をＣＰＵ１にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶装置４はハードディスク（HD）に限られず、フレキシブルディスク（FD）、コンパクトディスク（CD）、光磁気ディスク（MO）、あるいはDVD（Digital Versatile Disk）等の着脱自在な様々な形態の外部記録媒体を利用する記憶装置であってもよい。あるいは、半導体メモリなどであってもよい。
【００１５】
演奏操作子５は楽音の音高を選択するための複数の鍵を備えた、例えば鍵盤等のようなものであり、各鍵に対応してキースイッチを有しており、この演奏操作子５は演奏者自身の手弾きによる楽音のマニュアル演奏のために使用できるのは勿論のこと、自動演奏対象とする予め用意されている演奏情報を選択するなどの入力手段として使用することもできる。勿論、演奏操作子５は鍵盤等の形態に限らず、楽音の音高を選択するための弦を備えたネック等のような形態のものなど、どのようなものであってもよいことは言うまでもない。パネル操作子（スイッチ等）６は、例えば自動演奏対象とする演奏情報を選択するための演奏情報選択スイッチ、演奏の際に使用する音色・効果などの各種演奏パラメータを設定する設定スイッチ等、各種の操作子を含んで構成される。勿論、音高、音色、効果等を選択・設定・制御するために数値データ入力用のテンキーや文字データ入力用のキーボード、あるいは表示器７に表示された各種画面の位置を設定するポインタを操作するマウスなどの各種操作子を含んでいてもよい。表示器７は例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等から構成されるディスプレイであって、上記スイッチ操作に応じた各種画面を表示するのは勿論のこと、演奏情報や波形データなどの各種情報あるいはＣＰＵ１の制御状態などを表示することもできる。演奏者は該表示器７に表示されるこれらの各種情報を参照することで、演奏の際に使用する各種演奏パラメータの設定や自動演奏曲の選択などを容易に行うことができる。
【００１６】
音源８は例として複数のチャンネルで楽音信号の同時発生が可能であり、通信バス１Ｄを経由して与えられた演奏情報を入力し、この演奏情報に基づいて楽音を合成して楽音信号を発生する。ここに示す電子楽器においては、演奏情報内のダイナミクス情報に対応する波形データがＲＯＭ２や外部記憶装置４などから読み出されると、該読み出された波形データはバスラインを介して音源８に与えられて適宜バッファ記憶される。そして、音源８ではバッファ記憶された波形データを所定の出力サンプリング周波数に従い出力する。この音源８から発生された楽音信号は、図示しない効果回路（例えばDSP（Digital Signal Processor））などにより所定のディジタル信号処理が施され、該信号処理された楽音信号はサウンドシステム８Ａに与えられて発音される。
【００１７】
インタフェース９は該電子楽器と外部の演奏情報生成機器（図示せず）などとの間で各種情報を送受するための、例えばMIDIインタフェースや通信インタフェースなどである。MIDIインタフェースは、外部の演奏情報生成機器（この場合には、他のMIDI機器等）からMIDI規格の演奏情報を当該電子楽器へ供給したり、あるいは当該電子楽器からMIDI規格の演奏情報を他のMIDI機器等へ出力するためのインタフェースである。他のMIDI機器はユーザによる操作に応じてMIDI形式のデータを発生する機器であればよく、鍵盤型、ギター型、管楽器型、打楽器型、身振り型等どのようなタイプの操作子を具えた（若しくは、操作形態からなる）機器であってもよい。通信インタフェースは、例えばLANやインターネット、電話回線等の有線あるいは無線の通信ネットワーク（図示せず）に接続されており、概通信ネットワークを介して、外部の演奏情報生成機器（この場合には、サーバコンピュータ等）と接続され、当該サーバコンピュータから制御プログラムや演奏情報などの各種情報を該電子楽器に取り込むためのインタフェースである。すなわち、ＲＯＭ２や外部記憶装置４等に制御プログラムや演奏情報などの各種情報が記憶されていない場合に、サーバコンピュータから各種情報をダウンロードするために用いられる。クライアントとなる電子楽器は、通信インターフェース及び通信ネットワークを介してサーバコンピュータへと制御プログラムや演奏情報などの各種情報のダウンロードを要求するコマンドを送信する。サーバコンピュータは、このコマンドを受け、要求された各種情報を通信ネットワークを介して本電子楽器へと配信し、本電子楽器が通信インタフェースを介して各種情報を受信して外部記憶装置４等に蓄積することにより、ダウンロードが完了する。
【００１８】
なお、上記インタフェース９をMIDIインタフェースで構成した場合、該MIDIインタフェースは専用のMIDIインタフェースを用いるものに限らず、RS232-C、USB（ユニバーサル・シリアル・バス）、IEEE1394（アイトリプルイー1394）等の汎用のインタフェースを用いてMIDIインタフェースを構成するようにしてもよい。この場合、MIDIイベントデータ以外のデータをも同時に送受信するようにしてもよい。MIDIインタフェースとして上記したような汎用のインタフェースを用いる場合には、他のMIDI機器はMIDIイベントデータ以外のデータも送受信できるようにしてよい。勿論、演奏情報に関するデータフォーマットはMIDI形式のデータに限らず、他の形式であってもよく、その場合はMIDIインタフェースと他のMIDI機器はそれにあった構成とする。
【００１９】
図１に示した電子楽器においては、演奏者による演奏操作子の操作に伴い発生される演奏情報、あるいは予め用意されたSMF（Standard MIDI File）形式等の演奏情報に基づいて楽音を連続的に発生させることのできる楽音合成機能を有すると共に、該楽音合成機能の実行時において、演奏者による演奏操作子５の操作に伴う演奏進行に応じて供給される演奏情報（あるいは、シーケンサーなどから演奏進行順に順次に供給される演奏情報）に含まれるダイナミクス情報に基づいて、持続音部について新たに使用すべき波形データの選択を行い、該選択された波形データに従って楽音を合成するようにしている。そこで、こうした楽音合成機能の概要について、図２を用いて説明する。図２は、当該電子楽器が有する楽音合成機能を説明するための機能ブロック図である。図２において、図中の矢印はデータの流れを表すものである。
【００２０】
楽音合成機能の開始に伴い、まず奏法合成部Ｊ３に対して入力部Ｊ２から演奏情報が演奏進行順に順次に供給される。入力部Ｊ２としては、演奏者による演奏操作に応じて適宜に演奏情報を発生する演奏操作子５や、予めＲＯＭ２等に記憶した演奏情報を演奏進行順に供給するシーケンサー（図示せず）などの入力装置がある。こうした入力部Ｊ２から供給される演奏情報は、ノートオンイベントやノートオフイベント（これらを総称してノート情報と呼ぶ）などの演奏イベントデータと、ダイナミクスやピッチベンドあるいはビブラートスピード・ビブラートデプスなどのコントロールデータとを少なくとも含む。すなわち、入力部Ｊ２を介して入力されるダイナミクス情報には、演奏操作子５の演奏操作に基づきリアルタイムに発生されるもの（例えば、鍵押圧時のアフタータッチセンサ出力データなど）もあれば、予め記憶又はプログラムされた自動演奏情報に基づくものもある。
【００２１】
奏法合成部Ｊ３では演奏イベントデータやコントロールデータなどを受け取ると、例えばノート情報に対応する１音をアタック部、持続音部（ボディ部）、リリース部などの一部区間毎に区分したり、持続音部はどの時間から始まるかを特定したり、あるいはコントロールデータとして受け取った情報を用いてゲインやピッチの情報を生成したりするなどして、楽音を合成するために必要とされる各種情報を含む「奏法情報」を生成する。また、その際に、奏法合成部Ｊ３はデータベースＪ１（波形メモリ）にある「データテーブル」などを参照して、例えば入力されたダイナミクス情報やピッチ情報に対応する、持続音部に適用するのに最適なユニット（後述する図３参照）を選択し、該選択したユニットを入力されたビブラートスピード・ビブラートデプスの各情報に基づいてさらに波形の加工を行うよう、こうした波形の加工に関する情報を該当する「奏法情報」に付加する。楽音合成部Ｊ４では奏法合成部Ｊ３が生成した前記「奏法情報」に基づき、データベースＪ１から使用する波形データなどを適宜に読み出して、楽音合成を行うことで楽音が出力される。すなわち、楽音合成部Ｊ４では、「奏法情報」に従って波形データを順次に切り替えながら楽音合成を行う。
【００２２】
ここで、上述したデータベースＪ１（波形メモリ）に記憶されると共に、「データテーブル」により一括管理される、持続音部に適用するデータの構造について、図３を用いて説明する。図３（ａ）は、データベースのデータ構造を示す概念図である。ここで、図中における縦軸はピッチずれなし（０セント（cent））を基準とする正規の音高ピッチとのピッチずれ量（つまりピッチベンド値）を示し、横軸は楽音音量レベル（つまりダイナミクス値）を示している。なお、図中において例示した５種類の各ユニットの下部には、個々のユニットに対して付される固有のユニット番号（Ｕ１〜Ｕ５）を便宜的に記載してある。
【００２３】
データベースＪ１においては、持続音部に適用する波形データ（波形ベクタデータ）などのベクタデータと、関連するデータ群とを「ユニット」として記憶している。１つの「ユニット」は、楽音合成時において１つのかたまりとして処理できる波形単位である。図３（ａ）に示すように、各ユニットＵ１〜Ｕ５はダイナミクス値にそれぞれ対応付けられており、こうしたダイナミクス値に対応付けられた複数のユニットＵ１〜Ｕ５を、各音高（図では便宜上Ｃ３、Ｄ３、Ｅ３のみ示している）毎に少なくとも１つ以上記憶している。例えば、１つの名目的な音色（バイオリンやピアノ等の楽器音色、つまり音色情報で選択可能な１つの音色）について、３５種の音高（音階音）のそれぞれに対応して、２０種のダイナミクス値に対応付けられたユニットを記憶するものとすると、データベース全体では当該音色について７００個（３５×２０）のユニットを記憶することになる。
【００２４】
上記「ユニット」の波形データは、同じ音高であっても各ダイナミクス値に対応する各ユニットのそれぞれが異なる音色上の特徴を持つ楽音波形（つまり、波形形状が異なる楽音波形）からなる。図３（ｂ）は、ユニット単位に記憶される波形データの一実施例を示す概念図である。この実施例では上段にビブラート１周期毎のピッチずれ量（ピッチベンド値）の時間的変化を示し、下段に時間的な音色変動及びピッチ変動を伴うビブラート演奏による一連の元波形を示す。ただし、図では時間的な音色変動に伴う音色が変化する様子を、グラデーション表示により表現している。すなわち、色の濃淡が異なる音色波形であることを表すようにしている。
【００２５】
図３（ｂ）に示すように、データベースＪ１では、ビブラート１周期（図示において一点鎖線で区切られた区間）にわたる複数周期からなる元波形データ（ビブラート付与された波形データ）のうち、多様に音色変化する複数の一部波形を１「ユニット」として使用する（記憶する）。ここでは、データベースの元とする各ユニットの波形データの録音時には、それぞれ音量一定で演奏された一連のビブラート波形から、一部範囲内の時間的に音色変化を伴う連続波形を波形データとして抽出する。具体的には、（オリジナルのビブラート波形同様に）ビブラート１周期の間で音色が微妙に又は複雑に周期的に時間変化している元波形データのうち（勿論、その各周期毎の波形ピッチも図示のように変化（ビブラート）している）、例えばビブラート１周期の中でピッチが最大となってからピッチが最小となるまでの区間（図中において、点線で区切られた波形データ抽出範囲）を、音色が変化している代表的な領域として採用し、前記区間内の連続波形をそのまま１つのユニットの波形データとして記憶する。
【００２６】
従来知られているように、１つの波形データはそのままデータベースに記憶されているのではなく、複数の波形構成要素の集合からなるものとしてデータベースに記憶されている。この波形構成要素を、以下、「ベクタデータ（又はベクトルデータ）」という。図３（ｃ）は、上記したユニット単位に記憶されるピッチベクタデータ及び波形ベクタデータの一例を示す概念図である。ただし、ここでは、波形構成要素のうち時間的な音量変化を表す振幅エンベロープ特性を抽出した振幅（アンプ）ベクタデータに関しては、音量正規化がなされていないために、波形ベクタデータに音量変化を含むものとして、その図示を省略した。更に、別の種類のベクタ（例えば、波形の時間軸の進行を示す時間ベクタなど）が含まれていてもよいが、ここではその説明を省略する。
【００２７】
図３（ｃ）に示すように、上記データベースＪ１において、各「ユニット」Ｕ１〜Ｕ５を構成するベクタの種類としては、一例として波形ベクタやピッチベクタなどがある。波形ベクタは波形構成要素のうち、ピッチと振幅をノーマライズした波形形状のみの特徴を抽出したものであり、上述のようにして取り出した元波形におけるビブラート半周期分の音色変化が記録される。ここでは、データベース（外部記憶装置など）上の記憶位置を示すアドレスとして、元波形におけるピッチが最大値となるピッチずれ量（Ｐmax）に対応する波形位置をアドレスｗ１、元波形におけるオリジナル音高に該当する「ピッチずれなし（０セント）」に対応する波形位置をアドレスｗ２、元波形におけるピッチ最小値（Ｐmin）に対応する波形位置をアドレスｗ３としてそれぞれ図示した（ただし、ここではアドレス値の小さい順にｗ１＜ｗ２＜ｗ３とした）。
【００２８】
他方、ピッチベクタは波形構成要素のうち、ピッチ特性を抽出したもの（例えば、或る基準ピッチを基準にした時間的ピッチ変動特性を示すもの）であり、この実施例では、元波形のピッチを基準としたビブラート１周期のピッチずれ量の変化を時系列データで示している。ここで、図中に示す時刻０はビブラート１周期の開始時刻であってピッチずれ量が「０セント」である時刻、時刻Ｔ１は元波形におけるピッチが最大値となるピッチずれ量（Ｐmax）の時刻、時刻Ｔ２はビブラート１周期の途中であって一旦ピッチずれ量が「０セント」になる時刻、時刻Ｔ３は元波形におけるピッチが最小値となるピッチずれ量（Ｐmin）の時刻、時刻Ｔ４はビブラート１周期の終了時刻であってピッチずれ量が「０セント」に戻る時刻である。勿論、元波形におけるピッチが最大値となるピッチずれ量（Ｐmax）の絶対値と、元波形におけるピッチが最小値となるピッチずれ量（Ｐmin）の絶対値とが同じ値になるものとは限らず、これらの各値は元波形に依存することは言うまでもない。
【００２９】
なお、上述した図３（ａ）においては、ダイナミクス方向に均等の間隔に並ばないようにして、各ユニットＵ１〜Ｕ５をダイナミクス値に対応付けて外部記憶装置上にデータマッピングした例を示したがこれに限らず、ダイナミクス方向に均等の間隔に並ぶようにして、各ユニットＵ１〜Ｕ５を等間隔毎のダイナミクス値に対応付けて外部記憶装置上にデータマッピングするようにしてもよい。また、実際に演奏されたビブラート波形（元波形）から抽出した波形データを、そのままデータベース上にデータマッピングした例を示しているため、図３（ａ）においては各ユニットＵ１〜Ｕ５の上限ピッチベンド値・下限ピッチベンド値がそれぞれ一致していないが、これらが一致するようにそれぞれの元波形から波形データを抽出してデータマッピングするようにしてもよい。
なお、個別の音高（音階音）毎に上記したようなユニットＵ１〜Ｕ５をそれぞれ記憶することなく、２又はそれ以上の音高（例えばＣ３とＣ＃３など）のグループに対応して上記ユニットＵ１〜Ｕ５を記憶するようにしてもよい。
なお、各波形データは、複数の波形を集めた波形セットから適宜の波形データを取得して記憶するようにしてあってもよい。このような場合、波形セットの波形はビブラート波形に限らない。
なお、波形データと共に付加的に記憶されるデータ群として、各ユニットＵ１〜Ｕ５毎に、ユニットＵ１〜Ｕ５の長さや平均パワー値などの情報をデータテーブルに記憶するようにしてよい。
【００３０】
従来知られているように、楽音合成時において、楽音合成部Ｊ４からはデータベースＪ１に記憶されている全てのデータ（上述したベクタデータ及びその他のデータ群）を参照することができる。奏法合成部Ｊ３からは「データテーブル」に記憶されている代表的な値（例えば、上記ピッチベクタに関してピッチずれ量Ｐmax、ピッチずれ量Ｐmin及び上記した各時刻０、Ｔ１、Ｔ２、Ｔ３、Ｔ４、上記波形ベクタに関してユニット番号及びアドレスｗ１〜ｗ３）しか参照することができないようになっている。奏法合成部Ｊ３では、「データテーブル」に記憶された上記代表値をもとに、上記各ベクタの実体データをデータベースＪ１からどのように読み出し、それに基づき波形データをどう加工して楽音を合成するかを、楽音合成部Ｊ４に対して指示するのに必要十分なデータのみ管理できるようになっている。そして、楽音合成部Ｊ４では該奏法合成部Ｊ３からの指示（具体的には奏法情報）に応じて、該当する各ベクタの実体データをデータベースＪ１から読み出し、該読み出した実体データに基づき持続音部の楽音波形を合成する。以下、持続音部の楽音として、音色の微妙な又は複雑な周期的な時間変化を伴うビブラート波形を合成する際の動作について、図を用いて説明する。
【００３１】
図４は、「ビブラートボディ合成処理」の一実施例を示したフローチャートである。当該処理は、演奏開始と共に該電子楽器におけるＣＰＵ１により割り込み処理として、例えば１０ｍｓ（ミリ秒）毎に実行される。この「ビブラートボディ合成処理」は、演奏者の操作に応じてあるいは演奏情報などに応じて、「ビブラートボディ」、つまりビブラート奏法あるいはピッチベンド奏法などによって１つの楽音の発音中にそのピッチ及び音色が周期的に微妙に又は複雑に時間的に変化する特性で、楽音の持続音部を合成するために実行される処理である。なお、楽音のアタック部の波形は、図示しないアタック部波形合成処理によって別途行われるようになっており、このアタック部の波形合成処理に引き続いて、ここに示す「ビブラートボディ合成処理」が行われる。「ビブラートボディ合成処理」においては、ノート情報によって発生すべき楽音の音高（ノート）が指定され、該音高と入力ダイナミクス値に応じて選択された「ユニット」の波形データを自動的に再生することで、ビブラートの付与された持続音部の楽音波形の生成を行う。なお、ノート情報は当該音のノートオン時にＲＡＭ３に記憶された情報を用い、ダイナミクス情報、ピッチベンド情報、ビブラートスピード情報、ビブラートデプス情報は、当該操作子から入力がされた際に奏法合成部Ｊ３において最新値としてＲＡＭ３に記憶された情報を用いる。
【００３２】
なお、この「ビブラートボディ合成処理」においては、追って詳しく説明するように、「ユニット」に基づき再生されるビブラート音のビブラートスピード及びビブラートデプスを、それぞれの制御情報によって可変制御することができる。勿論、ピッチベンド情報に応じて当該ビブラート音全体をピッチシフトすることができることは言うまでもない。また、この「ビブラートボディ合成処理」では、入力ダイナミクス値によるユニット選択は、所定時間間隔を計測することによって行われるのではなく、現在の合成時刻と現在合成中の「ユニット」の１サイクル分（例えばビブラート１周期分）の再生が終わる終了予定時刻とを比較することにより行われる。すなわち、「ユニット」の１サイクル分の再生中は、入力ダイナミクス値の変化はユニット選択に効力を及ぼさない。
【００３３】
図４において、ステップＳ１は、アタック部の終端付近に現在合成中の波形位置（具体的には波形読み出しアドレス）が到達したか否か、又はアタック部の終端に到達した後に順次に合成開始される持続音部であって、上記したユニットの終端付近に現在合成中の波形位置が到達したか否かを判定する。アタック部の終端付近に現在合成中の波形位置が到達していない、又はユニットの終端付近に現在合成中の波形位置が到達していないと判定した場合には（ステップＳ１のＮＯ）、当該処理を終了して、次の割り込み時刻（１０ｍｓ後）までこの図４に示した処理を行わない。つまり、アタック部の終端までは、音の立ち上がりが急であるアタック部を実現する波形データ（例えばアタック系のユニット）に基づいて楽音合成が行われることから、持続音部の楽音を合成する当該「ビブラートボディ合成処理」は実質的に行われない。また、アタック部に後続する持続音部の楽音合成時において、１つのユニットにおける１サイクル分（ビブラート１周期）の再生途中である場合には、該再生中のユニットを変更することがないように、次の割り込み時刻（１０ｍｓ後）まで処理を待つ。したがって、その間については入力ダイナミクス値に応じたユニットの切り替えが行われない。
【００３４】
他方、アタック部の終端付近に現在合成中の波形位置が到達した、又はユニットの終端付近に現在合成中の波形位置が到達したと判定した場合には（ステップＳ１のＹＥＳ）、記憶されている最新の入力ダイナミクス値を取得する（ステップＳ２）。ステップＳ３は、予め取得済みのノート情報と前記取得した入力ダイナミクス値に応じてデータベースを参照し、データベースから該当するユニットを特定する（詳しくは後述する図５参照）。ステップＳ４及びステップＳ５は、前記特定されたユニットの時間的な配置位置を決定すると共に、記憶されている最新のピッチベンド情報、ビブラートスピード情報及びビブラートデプス情報に基づき、前記特定されたユニットの波形データを加工するための奏法情報を生成する。波形データの加工としては、例えば入力されたピッチベンド情報に応じて特定されたユニットの波形ピッチをまるごとピッチシフトしたり、入力されたビブラートスピード情報に基づき合成周期長を決定したり（ステップＳ４）、入力されたビブラートデプスに基づき合成ピッチ倍率及び音色読出範囲倍率を決定したりする（ステップＳ５）などがある。
【００３５】
ここで、上記合成周期長とは、当該ユニットを適用して合成するビブラート１周期分のビブラート音の合成時間長（ユニット合成長とも呼ぶ）を調整するパラメータである。合成ピッチ倍率とは当該ユニットの波形データを読み出す波形読出速度（所謂再生ピッチ）を調整するパラメータであり、音色読出範囲倍率とは当該ユニットの波形データのうち、どの範囲内にある波形データを楽音合成のために使用する波形として使用するか、を指定するパラメータである。例えば、入力されるビブラートスピード及びビブラートデプスの各情報がとり得る値を「０〜１２７」までの整数値とした場合に、その整数値に応じて合成周期長は「0.5〜2.0」、合成ピッチ倍率は「0.0〜2.0」、音色読出範囲倍率は「0.0〜1.0」（一例として、合成ピッチ倍率が1.0以上の場合には後述するようなオルタネート読み出しする波形ベクタの範囲がユニットに記憶済みの範囲を超えないようにするために音色読出範囲倍率を1.0に固定し、合成ピッチ倍率が1.0未満の場合にはオルタネート読み出しする波形ベクタの範囲がユニットに記憶済みの範囲を超えることがないので、音色読出範囲倍率を合成ピッチ倍率と同率とする）の範囲をとるようにするとよい。
【００３６】
ステップＳ６は、生成された奏法情報に従って楽音を合成する。すなわち、楽音合成部Ｊ４は、奏法合成部Ｊ３により生成された奏法情報に応じて波形合成のために使用するユニットを順次に切り替え、該ユニットの波形データに従ってビブラート奏法された持続音部の楽音を合成する。この際には、上記した合成周期長、合成ピッチ倍率、音色読出範囲倍率などのパラメータに応じて、該ユニットにおけるピッチベクタの周期長や変化量の大きさ、波形ベクタの読み出し範囲などを制御することにより、ビブラート周期を増／減したり、ビブラート深さを調整したりしながら楽音を合成する。このような、奏法情報に従って１つのユニット（ピッチベクタや波形ベクタなど）を制御しながら楽音を合成する詳細な手順については後述することから（図６及び図７参照）、ここでの説明を省略する。なお、奏法情報に従ってユニットを切り替える際には、先行するユニットと後続するユニットの各ユニット同士を適宜クロスフェード合成する。この際に用いられるクロスフェード合成を行う期間（所謂クロスフェード長）は、例えば５０ｍｓ（ミリ秒）など適宜の時間であってよく、またこれに限らずもっと短くてもよいし、長くてもよい。
【００３７】
なお、図４に示した実施例では、ステップＳ４及びＳ５の処理は、ステップＳ１がＹＥＳに分岐したときに１回だけ実行されるようになっており、図示していないがビブラートスピード及びビブラートデプスなどの情報の取り込みは入力ダイナミクス値の取り込みと同じタイミングで行われてよい。しかし、これに限らず、１０ｍｓ又はその他適宜の割込み周期で、ビブラートスピード及びビブラートデプスなどの情報の変化を随時チェックし、該情報の変化に応じてビブラートの設定変更を随時行うようにしてもよい。その場合は、例えば、図４において、アタック部の終端に達した後でかつユニットの再生中に、ビブラートスピード及びビブラートデプスなどの情報が変化したか否かをチェックするようにステップＳ１の処理を変更し、ビブラートスピード及びビブラートデプスなどの情報が変化したならばステップＳ４及びステップＳ５を実行するように、処理の流れを一部変更すればよい。
【００３８】
上記「ビブラートボディ合成処理」（図４参照）による持続音部（ボディ部）におけるビブラート奏法の楽音合成手順について、図５〜図７を用いながら手順を追って説明する。まず、奏法合成部によるユニット選択について、図５を用いて説明する。図５は、「ビブラートボディ合成処理」による楽音合成手順のうち、奏法合成部によるユニット選択処理（図４のステップＳ３参照）を模式的に説明するための概要図である。図５（ａ）は入力ダイナミクス値の時間変化を例示した図であり、縦軸は入力ダイナミクス値、横軸は現在時間を示す。ただし、ここでは説明を理解し易くするために、１音合成中においてビブラートスピード及びビブラートデプスが一定である場合を例に説明する。したがって、ここに示す図５（ａ）においては、入力ダイナミクス値を取得するタイミングとなる時刻ａ、時刻ｂ、時刻ｃの間隔がそれぞれ等しいものとなっている。図５（ｂ）は、前記入力ダイナミクス値の時間変化に対応して、データベース内に記憶されているユニットの選択について説明するための図である。なお、この例では、音高「Ｃ３」に対応する楽音を生成するものとし、波形生成前に当該発生すべき音高「Ｃ３」（基準ピッチ）に対応する楽音に関してのノート情報を取得済みであることは言うまでもない。
【００３９】
図５（ａ）に示す時刻ａが、例えばアタック部の終端付近に現在合成中の波形位置が到達した時間である場合（又は（先行する）ユニットの終端付近に現在合成中の波形位置が到達した時間である場合）には、その時点における入力ダイナミクス値を取得して、既に取得済みの音高「Ｃ３」に関するノート情報と前記新たに取得した入力ダイナミクス値とに基づき、データベースに記憶された該当音高「Ｃ３」に対応付けられた複数のユニット（ここではユニットＵ１〜ユニットＵ５の５個のユニット）の中から、前記取得した入力ダイナミクス値に対応するユニットを１つ選択して奏法情報を生成する。図５（ｂ）に示す例では、取得した入力ダイナミクス値が閾値「ｄ１未満」であるならばユニットＵ１、入力ダイナミクス値が閾値「ｄ１以上ｄ２未満」であるならばユニットＵ２、入力ダイナミクス値が閾値「ｄ２以上ｄ３未満」であるならばユニットＵ３、入力ダイナミクス値が閾値「ｄ３以上ｄ４未満」であるならばユニットＵ４、入力ダイナミクス値が閾値「ｄ４以上」であるならばユニットＵ５がそれぞれ選択される。したがって、この例では時刻ａの時点で取得した入力ダイナミクス値が「ｄ１以上ｄ２未満」であることから、時刻ａの時点ではユニットＵ２を選択する。後述する楽音合成処理では、該選択したユニットＵ２に基づいて持続音部の楽音波形を生成する。なお、この際に、先行するアタック部の終端側の一部波形とこれに後続する前記選択したユニットＵ２の先端側の一部波形とを適宜クロスフェード合成するとよい。波形をクロスフェード合成すると、滑らかに波形を切り替えることができる。
【００４０】
その後、前記時刻ａから時間が経過して、ユニットＵ２の終端付近に現在合成中の波形位置が到達する図５（ａ）に示す時刻ｂになると、それまでの間に更新された新たな入力ダイナミクス値が取得され、該取得した入力ダイナミクス値に対応するユニットをデータベースから選択して奏法情報を生成する。ここでは、時刻ｂの時点で取得した入力ダイナミクス値が「ｄ３以上ｄ４未満」であることから、時刻ｂの時点ではユニットＵ４を選択する。該選択したユニットＵ４に基づいて、前記ユニットＵ２に引き続き、ビブラート奏法での持続音部の楽音波形が生成される。さらに時間が経過して、ユニットＵ４の終端付近に現在合成中の波形位置が到達する図５（ａ）に示す時刻ｃになって、それまでの間に更新された新たな入力ダイナミクス値が取得されると、該取得した入力ダイナミクス値に対応するユニットをデータベースから選択して奏法情報を生成する。ここでは、時刻ｃの時点で取得した入力ダイナミクス値が「ｄ２以上ｄ３未満」であることから、時刻ｃの時点ではユニットＵ３を選択する。後述する楽音合成処理では、該選択したユニットＵ３に基づいて、前記ユニットＵ４に引き続きビブラート奏法での持続音部の楽音波形を生成する。こうしたユニットの切り替え時においても、先行するユニットと後続する前記選択したユニットとを適宜クロスフェード合成するとよい。
【００４１】
本発明では、上記のようにして入力ダイナミクス値に基づき選択したユニットを用いた楽音合成を、本発明人が既に提案済みのピッチ及び振幅の時間軸伸縮制御（所謂ＴＳＣ制御）に従い実現する。ＴＳＣ制御を用いると、従来知られているように、波形読出速度（所謂再生ピッチ）と、特定の音色位置毎に対応している波形読出開始位置とを独立に各々連続制御することができ、従って本発明においても１つのユニットの波形データから、任意のピッチ、任意の変調周期を有するビブラート音を生成することが簡単にできるようになり有利である。そこで、次にＴＳＣ制御による楽音合成手順について、図６及び図７を用いて説明する。図６は、「ビブラートボディ合成処理」による楽音合成手順のうち、楽音合成部Ｊ４による楽音合成処理（図４のステップＳ６参照）の全体概要を説明するための機能図である。
【００４２】
〈合成周期長設定方法〉
楽音合成部Ｊ４は奏法合成部Ｊ３が生成した奏法情報に含まれるユニット番号（ＩＤ）に基づき、データベースＪ１から該当するユニットの波形ベクタやピッチベクタを読み出す。図６においては、ユニット番号に基づき音高Ｃ３のユニットＵ２が選択され、該ユニットＵ２の波形ベクタ及びピッチベクタが読み出される例を示している。ピッチベクタを読み出す際には、奏法情報に含まれる合成周期長（Ｔｓ）に基づき、データベースＪ１に記憶済みの元波形のピッチベクタの周期長（Ｔ４）が前記合成周期長と等しくなるように、ピッチベンド値Ｐ（ｔ）の読み出し速度を調整する。すなわち、このユニットの合成開始時刻を０とすると、１ユニット内のピッチベンド値の時間変化はＰ（Ｔ４／Ｔｓ×ｔ）となる。したがって、この合成周期長に従い、合成楽音のビブラート周期が増／減するように制御される。以下、説明を理解しやすくするために「合成周期長（Ｔｓ）＝元波形のピッチベクタの周期長（Ｔ４）」とする。
【００４３】
〈合成ピッチ倍率設定方法及び波形読出速度の求め方〉
時間経過に応じて読み出されたピッチベンド値Ｐ（ｔ）に対しては、奏法情報に含まれるピッチ倍率（Ｐscale）が乗算される。前記ピッチ倍率の取りうる値の範囲（0.0〜2.0）に従い、オリジナルのピッチベクタの変動幅の大きさが変化する（例えば、0.0のときピッチ変動なし、0.5のとき元波形の変動幅の半分、1.0のとき元波形の変動幅と同じ、2.0のとき元波形の変動幅の２倍となる）。このピッチ倍率に従って、ビブラートの深さが浅く／深くなるように制御される。また、ピッチベンド値Ｐ（ｔ）に対してピッチ倍率（Ｐscale）を乗算したものは、時刻ｔにおける瞬時波形読出速度に反映される。具体的には、ノート情報に基づく基準ピッチと、ピッチベンド値Ｐ（ｔ）にピッチ倍率を乗算したもの（Ｐscale×Ｐ（ｔ））とを加算したものが、波形データを読み出す際のアドレス進行の計算のために用いられる瞬時波形読出速度（再生ピッチ）となる。したがって、このピッチ倍率に従い、基準ピッチに対する再生ピッチの変動幅が広く／狭くなるように制御される。
【００４４】
〈音色読出範囲倍率設定方法及び波形読出開始位置の求め方〉
時間変化するピッチベンド値Ｐ（ｔ）に対応して、波形ベクタデータからその都度適切な１波波形（音色波形）が読み出される。そのための波形読出開始位置の求め方は、以下の数１に示す通りである。
【数１】
2008107547.tif 000003
上記数１に示すｗ（ｔ）は、このユニットの合成開始時刻を０とした時の時刻ｔにおける仮想的な波形読み出し位置を示す式であって、所定期間毎の波形読出開始位置（初期読み出し位置）を示すものである。「Ｐmax」は元波形におけるピッチが最大値となるピッチずれ量、「Ｗscale」は音色読出範囲倍率、ｗ２及びｗ１は元波形における所定の波形位置に対応したアドレスである（図３（ｃ）参照）。もし音色読出範囲倍率Ｗscaleが１の時、上記数１はアドレスｗ２を中心にしてアドレスｗ１〜ｗ３の範囲のいずれかの位置を波形読出開始位置として示すことになる。このように波形読出開始位置は、元波形のピッチベンド値Ｐ（ｔ）の時間変化に応じて求められる。元波形のピッチベンド値Ｐ（ｔ）の時間変化は例えば図２（ｃ）に示すようなものであることから、波形読出開始位置は、所定のアドレス進行方向に進行すること、前記所定のアドレス進行方向とは逆方向に進行することを交互に繰り返しながら求められる。
【００４５】
〈波形読出目標値の求め方〉
ＴＳＣ処理の準備として、波形読出目標値を求める。これは現在時刻よりも１波波形分未来の時刻（１波波形を１通り読み出した後の時刻）において、ユニット内のどの位置の１波波形（音色波形）を読み出しているのが望ましいかを示すものである。１波波形を読み出すのにかかる時間長さは、現在時刻ｔにおける波形読出速度（Ｐscale×Ｐ（ｔ）＋基準ピッチ）の逆数なので、これをＴ（ｔ）とするとＴ（ｔ）＝１／（Ｐscale×Ｐ（ｔ）＋基準ピッチ）となる。したがって、波形読出目標値はｗ（ｔ＋Ｔ（ｔ））となる。
【００４６】
上記したようにすると、楽音合成部Ｊ４は、現在値及び上記に基づき算出された波形読出目標値ｗ（ｔ＋Ｔ（ｔ））に応じて、２波戻る、１波戻る、変化しない、１波進む、２波進むなどのようにして、該１波波形を読み出した後の波形読出開始位置（波形読み出しアドレスの初期読み出し位置）を、１波波形単位で自由に移動させることができる。これにより、任意の再生ピッチを与えて１波単位に分割した各１波波形を合成開始する時点で、次に進みたい波形読出開始位置に最も近い位置に移動する処理を選択し続けるようにすると、再生ピッチと波形読出開始位置とを独立に連続的に指示しながら楽音を合成することができるようになる。そこで、こうしたユニット分割後の１波波形を使って楽音を合成するユニット内波形合成処理について、図７を用いて説明する。
【００４７】
図７は、１ユニット内における複数の１波波形を用いた楽音合成手順（ユニット内波形合成処理）を説明するための概念図である。ただし、この図７では、説明を理解し易くするために、仮想読み出し速度制御の観点からではなく、仮想読み出し位置制御の観点から、ユニット内波形合成処理を説明するための図を示した。すなわち、１波に相当する長さの波形データ（１波波形）を読み出したあとに、波形読出開始位置をどのように変化させながら次の１波波形の読み出しを行っていくかを、波形読出開始位置の時間的変化として図示している。また、ここに示す実施例においては、音色読出範囲倍率（Ｗscale）を1.0未満として、合成周期長が１０波からなるビブラートボディを合成する場合を例に示している。さらに、各時刻において求められる波形読出目標値が、１波波形のいずれかの先頭アドレスに一致する場合であり、１波合成中のピッチベンド値が変わらない場合を示している。
【００４８】
波形読出開始位置の時間的変化を示す図７において、縦に何本か引かれた点線は、ある特定のビブラートに対応した瞬時波形読出速度（再生ピッチ）で、ユニット分割後の１波波形を再生した場合における各再生周期の区切れ目（つまり各１波波形を読み出すのにかかる時間長さ）を示す。すなわち、横軸はサンプル長ではなく、楽音合成の時間経過を示す。各再生周期の区切れ目を示す点線の間隔は、瞬時波形読出速度（再生ピッチ）の高い部分の１波では狭く、瞬時波形読出速度（再生ピッチ）の低い部分の１波では広くなる。瞬時波形読出速度（再生ピッチ）はピッチベンド値に従って時間に応じて様々に変化することから、各再生周期の時間長さを表す点線の間隔も時間に応じて異なるものとなっている。なお、図中において白地の三角形は、各再生周期でフェードインしながら１波波形を読み出す第２系列における処理を表すものである。一方、黒地の三角形は、各再生周期でフェードアウトしながら１波波形を読み出す第１系列における処理を表すものである。これらの三角形において矢印で示された１辺の傾きは、瞬時波形読出速度（再生ピッチ）に比例する。また、図中においては、各再生周期毎に算出される波形読出目標値を黒丸で示している。さらに、第１系列及び第２系列のクロスフェード合成による楽音合成処理を、各再生周期毎にまとめて時間順に並べた図を図７の下方に図示している。
【００４９】
まず、１つのユニットの波形データ（複数周期の波形データ）を、１周期毎の周期波形（１波波形）に各々分割する。ここでは、図７左に示すように、１つのユニットを「−４」〜「３」までの番号を付した８つの１波波形に分割した例を示す。この１波波形への波形分割は例えば自己相関関係に基づき行われ、これにより分割後の１波波形同士を波形接続しても波形連続性が失われないようにしている。すなわち、ユニットの波形データは複数周期波形からなるが、この複数周期波形の波形データは予め分析されて、複数周期波形のなかで位相が互いに同じになるポイント（同位相ポイントと呼ぶ）が、各１波波形毎の波形読出開始位置として決定される。逆にいえば、ユニットの波形データの中からそのような同位相ポイントを幾つか見つけ、その位置で波形を区切って複数の「１波波形」を定義する。要するに、「１波波形」の境界位置は上記した同位相ポイントであり、ユニット内のどの「１波波形」も同ユニット内の別の「１波波形」に滑らかにつなげることができるように、前記「１波波形」を定義すればよい。上記同位相ポイントでは、波形振幅値が一致し、その位置での波形の傾きが一致する。このように、ユニットの波形データはあらかじめ複数の「１波波形」に分割される。前記１波波形に分割するそれぞれの同位相ポイントは特定の音色への変化位置に対応しており、こうした同位相ポイントは各１波波形毎に波形読出開始位置（先頭アドレスとも呼ぶ）として記憶される（図中においてはｗＡ〜ｗＨで示す）。また、本実施例では、各１波波形の長さはピッチベンド値が０セントの１波波形（後述する基準波形）に揃えられている。
【００５０】
図７に示す各再生周期では、ユニットの波形データから、２系列でそれぞれ所定の１波波形を読み出すことができる。この実施例では、絶えず２系列（以下、第１系列及び第２系列と呼ぶ）で１波波形を読み出し、各系列で読み出した１波波形をクロスフェード合成することにより楽音波形を生成する。前記２つの系列では、所定のサンプリング周波数に基づいて、瞬時波形読出速度（Ｐscale×Ｐ（ｔ）＋基準ピッチ）に応じたＦナンバを累算したアドレスに従い、波形の読み出しを行う。したがって、発生する波形のピッチは指定されたとおりのものとなる。また、各１波波形の波形読出開始位置は互いに位相が同じであるため、１つの１波波形を終わりのアドレスまで読み出し、引き続きそれとは別のアドレスから始まる任意の１波波形の読み出しを行ったとしても、波形が滑らかにつながる。
【００５１】
図７に示すように、初期設定として、時刻０において第１系列で読み出す対象の１波波形として、基準波形を設定する（以下、波形を設定するとは、具体的には１波波形の先頭アドレスのいずれかに波形読み出し位置を移動するように設定することを言う）。ここで、基準波形とは、ユニット分割後における複数の１波波形のうち、名目的な音色に対応付けられた所定の基準ピッチからのピッチずれが０セント（つまりピッチずれなし）から始まる１波波形であり、本実施例においては該基準波形（具体的には、ビブラート半周期辺りのピッチずれの最も小さい波形）を基準として、該基準波形の音色とできるだけ音色差の小さい適宜の１波波形から順に読み出し、楽音を合成する。ここでは、図中において白丸で表示したアドレスｗＥ（＝ｗ２）から始まる１波波形「０」が基準波形に該当することから、時刻０において第１系列で読み出す対象の波形として、１波波形「０」を設定する。
【００５２】
一方、時刻０において第２系列で読み出す対象の１波波形を設定するために、上述した数１に従って波形読出目標値を求める。ここでは説明の便宜上、現在時刻０における瞬時波形読出速度（Ｐscale×Ｐ（０）＋基準ピッチ）に従って、第１系列において前記設定した１波波形「０」を１通り読み出すのに時間Ｔ（０）だけかかるとして、時刻０から時間Ｔ（０）後の波形読出目標値がアドレス「ｗＤ」となる場合を図示している。そして、時間Ｔ（０）後の読み出し位置が、上述した数１に基づき算出された波形読出目標値「ｗＤ」となる１波波形（又は、時間Ｔ（０）後までに読み出される位置に前記求めた波形読出目標値「ｗＤ」が含まれる１波波形）を、第２系列で読み出す対象の１波波形に設定する。ここでは、アドレスｗＤから始まる１波波形「−１」に対して１つ前のアドレスｗＣから始まる、基準波形に対して２波前の１波波形「−２」が設定される。このようにして、時刻０においては、瞬時波形読出速度（Ｐscale×Ｐ（０）＋基準ピッチ）に従って、第１系列でアドレスｗＥ（＝ｗ２）を先頭アドレスとする１波波形「０」をフェードアウトしながら、第２系列でアドレスｗＣを先頭アドレスとする１波波形「−２」をフェードインしながらクロスフェード合成する。なお、クロスフェード合成する時間長さは、１波波形が読み出される時間と同じ時間長さに制御されることは言うまでもない。
【００５３】
上記のようにして、時刻０では、瞬時波形読出速度（Ｐscale×Ｐ（０）＋基準ピッチ）に従うアドレス進行に応じて、第１系列でアドレスｗＥ（＝ｗ２）を先頭アドレスとする１波波形「０」をフェードアウトしながら、第２系列でアドレスｗＣを先頭アドレスとする１波波形「−２」をフェードインしながら、それぞれの１波波形を読み出す。そして、各系列において各１波波形を１通り読み出した時刻ｔ１（＝０＋Ｔ（０））に到達すると、第２系列における読み出し位置は１波波形「−１」の先頭アドレスｗＤまで進行する。これは、時刻０の時点で求めておいた、現在時刻よりも１波波形分未来の時刻における波形読出目標値に当然一致する（そうなるように波形読出目標値を求めている、Ｐ（ｔ）が変動する場合にはほぼ一致する）。次に、時刻ｔ１において第１系列で引き続き読み出す対象の波形として、現時点における第２系列の読み出し位置であるアドレスｗＤを先頭とする１波波形「−１」を設定する。すなわち、直前の再生周期で第２系列により読み出されフェードインした１波波形にアドレス上後続する１波波形が、次の再生周期で第１系列により読み出し開始される１波波形に設定される。
【００５４】
一方、現在時刻ｔ１において第２系列で引き続き読み出す対象の１波波形を設定するために、上述した数１に従って時刻ｔ２（現在時刻ｔ１から時間Ｔ（ｔ１）後）に位置すべき波形読出目標値を求める。ただし、数１に示すように、瞬時波形読出速度（Ｐscale×Ｐ（ｔ）＋基準ピッチ）はピッチベンド値Ｐ（ｔ）に依存することから、例えばピッチベンド値が図６に示すような時間変化をするような場合には、時刻ｔ１における瞬時波形読出速度は時刻０における瞬時波形読出速度よりも速くなっている。したがって、図から理解できるように、時刻ｔ１から時刻ｔ２までにかかる時間は、時刻０から時刻ｔ１までにかかる時間よりも短いものとなっている（図中において再生周期の時間長さを表す点線の間隔が狭くなっている）。図７では、時刻ｔ１から時間Ｔ（ｔ１）後の波形読出目標値がアドレス「ｗＣ」となっている。したがって、時刻ｔ１において第２系列で読み出す対象の１波波形に、アドレスｗＣから始まる１波波形「-２」に対して１つ前の１波波形「−３」を設定する。すなわち、時刻ｔ１においては、第１系列でアドレスｗＤを先頭とする１波波形「−１」をフェードアウトしながら、第２系列でアドレスｗＢを先頭とする１波波形「−３」をフェードインしながらクロスフェード合成する。このようにして、時刻０〜時刻ｔ３までにおいては、各系列で１波ずつ前の波形に戻るようにしながら１波波形を順に読み出して楽音合成する。
【００５５】
次に、時刻ｔ３において第１系列で読み出す対象の波形として、時刻ｔ２に第２系列で読み出しを開始した１波波形「−４」の時刻ｔ４時点での読み出し位置となるアドレスｗＢを先頭アドレスとする、１波波形「−３」を設定する。一方、時刻ｔ３における第２系列で読み出す対象の１波波形を設定するために、上述した数１に従って時刻ｔ４（時刻ｔ３から時間Ｔ（ｔ３）後）に位置すべき波形読出目標値を求める。図７では、時刻ｔ３から時間Ｔ（ｔ３）後の波形読出目標値がアドレス「ｗＣ」となっている。したがって、時刻ｔ３における第２系列で読み出す１波波形として、アドレスｗＣから始まる１波波形「−２」に対して１つ前の１波波形「−３」を設定する。すなわち、時刻ｔ３においては、第１系列及び第２系列で共にアドレスｗＢを先頭とする同じ１波波形「−３」を、各系列でフェードアウト又はフェードインしながらクロスフェード合成する。同様にして、時刻ｔ３〜時刻ｔ８までは、各系列において同じ１波波形を１波ずつ波形が進むようにして１波波形を順に読み出して楽音合成する。
【００５６】
引き続き、時刻ｔ８における第１系列で読み出す対象の波形として、時刻ｔ７に第２系列で読み出しを開始した１波波形「１」の時刻ｔ８時点での読み出し位置となるアドレスｗＧを先頭アドレスとする、１波波形「２」に設定する。一方、時刻ｔ８において第２系列で読み出す対象の１波波形を設定するために、上述した数１に従って時刻ｔ９（時刻ｔ８から時間Ｔ（ｔ８）後）に位置すべき波形読出目標値を求める。図７では、時刻ｔ８から時間Ｔ（ｔ８）後の波形読出目標値がアドレス「ｗＦ」となっている。したがって、時刻ｔ８における第２系列で読み出す１波波形として、アドレスｗＦから始まる１波波形「１」に対して１つ前の１波波形「０」を設定する。すなわち、時刻ｔ８においては、第１系列でアドレスｗＧを先頭アドレスとする１波波形「２」をフェードアウトしながら、第２系列でアドレスｗＥを先頭とする１波波形「０」をフェードインしながらクロスフェード合成する。同様にして、時刻ｔ８〜時刻ｔ１０までについては、各系列において１波ずつ前に波形が戻るようにして１波波形を順に読み出して楽音合成する。
【００５７】
このようにすると、ユニットから１波波形を読み出す際において、波形読出目標値の時間変化量に応じて、１波波形を１波毎に順に読み出したり、いくつかの１波波形を飛ばしながらオルタネート読み出しする。また、波形読出目標値の時間変化量によっては、同じ１波波形を繰り返し読出しながらオルタネート読み出しすることもある。
【００５８】
図８は、上述したユニット内波形合成処理に従う波形選択イメージを示す概念図である。上段は第２系列におけるユニット内の波形選択イメージ、中段はユニットの波形データ（ただし、１波波形に分割後）、下段は第１系列におけるユニット内の波形選択イメージである。上述したユニット内波形合成処理に従うと、図８において矢印で図示するような波形選択イメージに従う波形読出しが行われる。すなわち、ユニット内における基準波形（ここでは１波波形「０」）、前記波形読出目標値に基づく１波波形（ここでは１波波形「−２」）を各系列での読み出し開始データとして、該基準波形あるいは設定された1波波形に近い順から隣接する１波波形を所定の順に降順又は昇順に交互に繰り返しながら、あたかも往復（オルタネート）するようにして繰り返し読み出し制御されるようになる。こうした波形データの読み出し制御は、ユニット内の各１波波形を所定の読み出し順に従って最初から最後まで読み出し終えると、再度前記読み出し順に従って最初の１波波形に戻って読み出しを開始する所謂「ループ読み出し」制御とは異なるデータの読み出し制御方法であり、この明細書では上記した読み出し制御方法を「オルタネート（往復）読み出し」制御と呼ぶ。このように、本発明では、上記のようにしてＴＳＣ制御により実現される「オルタネート（往復）読み出し」に従って２系列で１波波形を読み出し、該読み出した１波波形をクロスフェード合成することで楽音波形を生成するようにしている。
【００５９】
なお、上述したような１波単位に限らず、例えば２波単位などのように、ユニット分割後の１波波形を複数個まとめて連続的に読み出しながら楽音合成するようにしてもよい。ただし、その場合、近接する音色変化に大きな違いのない１波波形を複数個まとめて読み出すなどのようにするのがよい。すなわち、１波波形は１周期の周期波形に限らず複数周期波形であってもよい。
なお、上記した図７に示すように各時刻において、波形読出目標値が各１波波形の先頭アドレスのいずれかに一致する例を示したがこれに限らず、波形読出目標値が各１波波形の先頭アドレスのいずれかに一致しない場合もある。そうした場合には、波形読出目標値に最も近い１波波形の先頭アドレスのいずれかに波形読出目標値を再設定するとよい。
【００６０】
ここで、ビブラート周期を増／減したり、ビブラート深さを調整したりしながら楽音を合成することについて、前記図８を参照しながら説明する。図８に示す例では、元のユニットが１波波形「−４」〜「３」の８個の波形データ（基準波形を「０」とする）からなる例を示しており、各区間の１波波形が所定の時間間隔で順次に切り替えられ、かつ、１乃至複数周期づつ繰り返して読み出され、かつ、読み出された１波波形同士がクロスフェード合成される。ビブラートスピードを遅くする（ビブラート周期を長くする）場合は、合成周期長に基づきピッチベクタの周期長が長くなるように調整されることに応じて（図６参照）、図８に示すユニットを構成する各区間の１波波形が繰り返し用いられて、実質的な波形切り替えの時間間隔が広くなる。反対に、ビブラートスピードを速くする（ビブラート周期を短くする）場合は、合成周期長に基づきピッチベクタの周期長が短くなるように調整されることに応じて（図６参照）、図８に示すユニットを構成する各区間の１波波形すべてが使用されずに、適当な区間の１波波形が間引きされる。
【００６１】
他方、ユニットの持つビブラートの深さよりビブラートの深さを浅くする場合には、浅いピッチずれに相当する区間の１波波形のみをユニットから選択するようにしてオルタネート読み出し制御し、該選択した１波波形に基づき浅い深さのビブラート楽音波形を合成する。例えば、−５０セント〜０セント〜＋５０セントの範囲で変化するユニットを使用してその深さを２分の１の深さにする場合に、−２５セント〜０セント〜＋２５セントの範囲のピッチずれの１波波形のみを使用するようにオルタネート読み出し制御を行い、それよりもピッチずれの大きい１波波形は使用しない。つまりは、５０セントのピッチ変動がある元波形の１/２の深さでピッチ変動するように設定された場合には、ユニット内の約半分の数の波形データを使用して楽音を合成する。さらにビブラートの深さをより浅くしたような場合には、図中において１波波形「０」（０セント付近の波形）のみが選択される。すなわち、ビブラートデプス情報に従って、ユニット内の波形データのうち楽音合成に使用すべき波形データの範囲は変化する。こうしたことは、上述した音色読出範囲倍率（Ｗscale）により制御される。
【００６２】
このように、ビブラートの深さを浅くする場合には、オリジナルのビブラート波形のピッチずれが０セントに近いピッチずれがあまりない１波波形（基準波形）から順に、使用すべき１波波形が選択されるようにオルタネート読み出し制御し、該選択された１波波形に基づき楽音合成する。これによると、元波形において音色変化の小さな隣接する波形が用いられるので、音色変化に唐突感を生むことなく楽音を生成することができるようになる。また、従来と比べてデータ量が少なくて済むという利点がある。
【００６３】
反対に、ユニットの持つビブラートの深さより深くする場合には、ユニット内の全ての１波波形を使用するようにオルタネート読み出し制御し、かつ、ピッチずれが深くなるように加工したピッチ変動エンベロープに従って各区間の１波波形のピッチをより高く又はより低くするようにしながら楽音合成すればよい。以上のようにして、ビブラートの深さを制御する場合には、ユニット内における複数の１波波形をオルタネート読み出し制御する際に、繰り返し読み出しする対象の１波波形の数を増減させて音色変化幅を変えるようにするとよい。
【００６４】
なお、入力ダイナミクスが変化しない場合には毎回同じユニットが選択され、さらに入力ピッチやビブラート・スピード／ビブラート・デプスが変化しない場合には同じスピード・深さでビブラートが合成されることになるが、別途うねりやゆらぎを追加すればより自然な楽音を合成することができる。このような制御は、本出願人が提案済の公知技術を使用することで実現できるので、詳細説明は省略する。また、使用する音色の選択範囲や使用する波形の数をビブラート周期に応じて変えるようにすると、より生成される楽音の単調さを軽減することができるのでよい。
【００６５】
なお、本発明において使用する波形データは、上述したような各種奏法に対応して「奏法モジュール」化されたものに限らず、その他のタイプのものであってもよい。また、各ユニットの波形データは、メモリに記憶したＰＣＭ、ＤＰＣＭ、ＡＤＰＣＭのような適宜の符号化形式からなる波形サンプルデータを単純に読み出すことで生成されるようなものであってもよいし、あるいは、高調波合成演算やＦＭ演算、ＡＭ演算、フィルタ演算、フォルマント合成演算、物理モデル音源など、各種の公知の楽音波形合成方式を適宜採用したものであってもよいことは言うまでもない。すなわち、音源８における楽音信号発生方式は、いかなるものを用いてもよい。例えば、発生すべき楽音の音高に対応して変化するアドレスデータに応じて波形メモリに記憶した楽音波形サンプル値データを順次読み出す波形メモリ読み出し方式、又は上記アドレスデータを位相角パラメータデータとして所定の周波数変調演算を実行して楽音波形サンプル値データを求めるＦＭ方式、あるいは上記アドレスデータを位相角パラメータデータとして所定の振幅変調演算を実行して楽音波形サンプル値データを求めるＡＭ方式等の公知の方式を適宜採用してよい。このように、音源回路８の方式は波形メモリ方式、ＦＭ方式、物理モデル方式、高調波合成方式、フォルマント合成方式、ＶＣＯ＋ＶＣＦ＋ＶＣＡのアナログシンセサイザ方式、アナログシミュレーション方式等、どのような方式であってもよい。また、専用のハードウェアを用いて音源８を構成するものに限らず、ＤＳＰとマイクロプログラム、あるいはＣＰＵとソフトウェアを用いて音源回路８を構成するようにしてもよい。さらに、共通の回路を時分割で使用することによって複数の発音チャンネルを形成するようなものでもよいし、各発音チャンネルがそれぞれ専用回路で構成されるようなものであってもよい。
【００６６】
なお、上述した楽音合成処理における楽音合成の方式としては、既存の演奏情報を本来の演奏時間到来前に先行取得しておき、これを解析して楽音を合成する所謂プレイバック方式であってもよいし、リアルタイムに供給された演奏情報に基づき楽音を合成するリアルタイム方式のどちらであってもよい。
なお、時系列的に順次選択され生成された複数のビブラートユニットの波形同士を接続する手法は、クロスフェード合成に限らず、例えば生成されたビブラートユニットの各波形同士をフェーダーによりミックスする手法などであってもよい。
【００６７】
なお、この楽音合成装置を電子楽器に適用する場合、電子楽器は鍵盤楽器の形態に限らず、弦楽器や管楽器、あるいは打楽器等どのようなタイプの形態でもよい。また、演奏操作子、表示器、音源等を１つの電子楽器本体に内蔵したものに限らず、それぞれが別々に構成され、MIDIインタフェースや各種ネットワーク等の通信手段を用いて各機器を接続するように構成されたものにも同様に適用できることはいうまでもない。また、パソコンとアプリケーションソフトウェアという構成であってもよく、この場合処理プログラムを磁気ディスク、光ディスクあるいは半導体メモリ等の記憶メディアから供給したり、ネットワークを介して供給するものであってもよい。さらに、カラオケ装置や自動演奏ピアノのような自動演奏装置、ゲーム装置、携帯電話等の携帯型通信端末などに適用してもよい。携帯型通信端末に適用した場合、端末のみで所定の機能が完結している場合に限らず、機能の一部をサーバコンピュータ側に持たせ、端末とサーバコンピュータとからなるシステム全体として所定の機能を実現するようにしてもよい。すなわち、本発明に従う所定のソフトウエア又はハードウエアを用いることによって、入力ダイナミクス値、ピッチ等に基づいて、データベースに記憶されたビブラートユニットの中から適宜に用いるユニットを切り替えながら楽音を合成することのできるようにしたものであればどのようなものであってもよい。
【図面の簡単な説明】
【００６８】
【図１】この発明に係る楽音合成装置を適用した電子楽器のハードウエア構成例を示すブロック図である。
【図２】楽音合成機能を説明するための機能ブロック図である。
【図３】データベースに記憶される持続音部に適用する波形データを示す概念図であり、（ａ）はデータベースのデータ構造図、（ｂ）はユニット単位に記憶される波形データの一実施例を示す概念図、（ｃ）はピッチベクタデータ及び波形ベクタデータの一例を示す概念図である。
【図４】ビブラートボディ合成処理の一実施例を示したフローチャートである。
【図５】ユニット選択処理を模式的に説明するための概要図であり、（ａ）は入力ダイナミクス値の時間変化を例示した図、（ｂ）は入力ダイナミクス値の時間変化に対応するユニット選択について説明するための図である。
【図６】楽音合成処理の全体概要を説明するための機能図である。
【図７】１ユニット内における複数の１波波形を用いた楽音合成手順を説明するための概念図である。
【図８】ユニット内波形合成処理に従う波形選択イメージを示す概念図である。
【符号の説明】
【００６９】
１…ＣＰＵ、１Ａ…タイマ、２…ＲＯＭ、３…ＲＡＭ、４…外部記憶装置、５…演奏操作子（鍵盤等）、６…パネル操作子、７…表示器、８…音源、８Ａ…サウンドシステム、９…インタフェース、１Ｄ…通信バス、Ｊ１…データベース、Ｊ２…入力部、Ｊ３…奏法合成部、Ｊ４…楽音合成部
【図１】
2008107547.tif 000004
【図２】
2008107547.tif 000005
【図３】
2008107547.tif 000006
【図４】
2008107547.tif 000007
【図５】
2008107547.tif 000008
【図６】
2008107547.tif 000009
【図７】
2008107547.tif 000010
【図８】
2008107547.tif 000011