(57)【特許請求の範囲】
【請求項１】
複数の部分波形を部分波形メモリに記憶し、
該部分波形メモリに記憶されている各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の２音の特性を示すデータを含む属性情報を属性情報メモリに記憶し、
入力された現在の演奏イベント情報、並びに、その前および後の演奏イベント情報の２つの演奏イベント情報により前記属性情報メモリを参照して、前記２つの演奏イベント情報に対応する属性情報を有する部分波形を前記部分波形メモリから読み出し、該読み出された部分波形に基づいて、前記現在の演奏イベント情報に対応する楽音波形を生成するようにしたことを特徴とする波形生成方法。
【請求項２】
各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の２音の特性を示すデータを含む属性情報が属性情報メモリに記憶されており、
処理を行う演奏データに含まれる各音符に対応する演奏音とその前および後の音符に対応する演奏音の２音の特性を示すデータと、前記属性情報メモリに記憶されている属性情報を対比することにより、該２音の特性を示すデータに近いデータを含む属性情報を有する当該音符に最適の部分波形を検出し、
検出された部分波形を指定する指定データを前記演奏データ中の当該音符に付与し、該指定データが付与された音符を含む演奏データを記憶するようにしたことを特徴とする演奏データ処理方法。
【請求項３】
請求項２記載の演奏データ処理方法により記憶された指定データが付与された音符を含む演奏データを再生する際の波形生成方法であって、
部分波形メモリに複数の部分波形が記憶されており、前記演奏データに基づいて指定データの付与された音符を再生する際に、再生される音符に付与されている指定データに基づいて、前記部分波形メモリから部分波形を読み出し、読み出された部分波形に基づいて、当該音符に対応する楽音波形を生成するようにしたことを特徴とする波形生成方法。
【請求項４】
リアルタイム演奏用のパートと自動演奏用あるいは自動伴奏用のパートを含む複数パートの演奏データが記憶されており、
発生されたテンポクロックに応じて、前記自動演奏用あるいは自動伴奏用のパートの演奏データを再生して伴奏音を発生すると共に、該伴奏音に合わせてリアルタイム演奏された演奏イベント情報を入力し、
前記リアルタイム演奏された演奏イベント情報に応じて、前記リアルタイム演奏用の演奏パートから次の演奏音に対応する次音データを取得すると共に、当該演奏イベント情報と前記取得された次音データとに基づいて、当該演奏イベント情報に対応する楽音波形を生成するようにしたことを特徴とする波形生成方法。
【請求項５】
部分波形メモリに記憶された複数部分波形から１ないし複数の部分波形を選択するための波形選択装置であって、
各部分波形毎に、当該部分波形に対応する演奏音とその音の前の演奏音の２音の特性を示す属性データを記憶するデータベースと、
順次演奏される演奏音のうちの現在の演奏音とその前の演奏音の２音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された特性データに近い属性データを有する１ないし複数の部分波形を、前記現在の演奏音に対応する楽音波形を合成するための部分波形として抽出する検索手段と、
を備えるようにしたことを特徴とする波形選択装置。
【請求項６】
部分波形メモリに記憶された複数部分波形から１ないし複数の部分波形を選択するための波形選択装置であって、
各部分波形毎に、当該部分波形に対応する演奏音とその音の次の演奏音の２音の特性を示す属性データを記憶するデータベースと、
順次演奏される演奏音のうちの現在の演奏音とその次の演奏音の２音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された２音の特性データに近い属性データを有する１ないし複数の部分波形を、前記現在の演奏音に対応する楽音波形を合成するための部分波形として抽出する検索手段と、
を備えるようにしたことを特徴とする波形選択装置。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は、録音された楽器音や歌唱音を用いて演奏する際の波形生成方法、演奏データ処理方法、波形選択装置およびその方法に関する。
【０００２】
【従来の技術】
従来、波形メモリ音源が知られている。波形メモリ音源は、ノートオンやノートオフ等のイベントデータに応じて波形メモリに記憶されている波形データを読み出して楽音を生成している。この際に、ノートオンに含まれる音高情報やタッチ情報に応じて波形メモリから異なる波形データが選択されるようになされている。
一方、サンプラーと称される電子楽器が従来から知られている。サンプラーでは、演奏された単音の波形をサンプリング（例えば、Ｃ３の音高を５秒間等）して収録し、収録した波形データを用いて楽音を生成している。この場合、サンプリングされた各波形データに対して、該波形データの音高を示すオリジナルキーはユーザが設定し、そのオリジナルキーに基づいてその波形データを使用する音域や、所定の音高で発音する際にピッチシフトする量などを決定している。オリジナルキーの決定方式に関しては、サンプリングされた波形データからピッチを抽出し、該波形データに対し抽出されたピッチに対応したオリジナルキーを自動設定することが行われている（例えば、特開平７−３２５５７９号参照）。
また、演奏されたフレーズ波形をサンプリングし、サンプリングされたフレーズ波形データを、該フレーズ波形データから抽出されたエンベロープレベルに基づいて複数の部分波形データに分割し、各部分波形データのタイミングやピッチを変更しながら演奏を行なうフレーズサンプラーも提案されている。
【０００３】
【発明が解決しようとする課題】
従来のサンプラーのように、実際に演奏された音をサンプリングして収録し、収録された波形データを用いて楽音を生成しても、実際の楽器の演奏音より貧しい表情の音しか得ることができないという問題点があった。この場合、音高情報やタッチ情報に基づいて波形データを選択するようにしてもリアルな楽音を得ることができなかった。
【０００４】
そこで、本発明は表情に富んだ楽音を生成することができる波形生成方法、演奏データ処理方法、波形選択装置およびその方法を提供することを目的としている。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、本発明の波形生成方法は、複数の部分波形を部分波形メモリに記憶し、該部分波形メモリに記憶されている各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の２音の特性を示すデータを含む属性情報を属性情報メモリに記憶し、入力された現在の演奏イベント情報、並びに、その前および後の演奏イベント情報の２つの演奏イベント情報により前記属性情報メモリを参照して、前記２つの演奏イベント情報に対応する属性情報を有する部分波形を前記部分波形メモリから読み出し、該読み出された部分波形に基づいて、前記現在の演奏イベント情報に対応する楽音波形を生成するようにしている。
【０００６】
また、上記目的を達成することのできる本発明の演奏データ処理方法は、各部分波形毎に、当該部分波形に対応する演奏音とその前および後の演奏音の２音の特性を示すデータを含む属性情報が属性情報メモリに記憶されており、処理を行う演奏データに含まれる各音符に対応する演奏音とその前および後の音符に対応する演奏音の２音の特性を示すデータと、前記属性情報メモリに記憶されている属性情報を対比することにより、該２音の特性を示すデータに近いデータを含む属性情報を有する当該音符に最適の部分波形を検出し、検出された部分波形を指定する指定データを前記演奏データ中の当該音符に付与し、該指定データが付与された音符を含む演奏データを記憶するようにしている。
さらに、上記目的を達成することのできる本発明の他の波形生成方法は、上記演奏データ処理方法により記憶された指定データが付与された音符を含む演奏データを再生する際の波形生成方法であって、部分波形メモリに複数の部分波形が記憶されており、前記演奏データに基づいて指定データの付与された音符を再生する際に、再生される音符に付与されている指定データに基づいて、前記部分波形メモリから部分波形を読み出し、読み出された部分波形に基づいて、当該音符に対応する楽音波形を生成するようにしている。
さらにまた、上記目的を達成することのできる本発明のさらに他の波形生成方法は、リアルタイム演奏用のパートと自動演奏用あるいは自動伴奏用のパートを含む複数パートの演奏データが記憶されており、発生されたテンポクロックに応じて、前記自動演奏用あるいは自動伴奏用のパートの演奏データを再生して伴奏音を発生すると共に、該伴奏音に合わせてリアルタイム演奏された演奏イベント情報を入力し、前記リアルタイム演奏された演奏イベント情報に応じて、前記リアルタイム演奏用の演奏パートから次の演奏音に対応する次音データを取得すると共に、当該演奏イベント情報と前記取得された次音データとに基づいて、当該演奏イベント情報に対応する楽音波形を生成するようにしている。
【０００７】
次に、上記目的を達成することのできる本発明の波形選択装置は、部分波形メモリに記憶された複数部分波形から１ないし複数の部分波形を選択するための波形選択装置であって、各部分波形毎に、当該部分波形に対応する演奏音とその音の前の演奏音の２音の特性を示す属性データを記憶するデータベースと、順次演奏される演奏音のうちの現在の演奏音とその前の演奏音の２音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された特性データに近い属性データを有する１ないし複数の部分波形を、前記現在の演奏音に対応する楽音波形を合成するための部分波形として抽出する検索手段とを備えている。
【０００８】
また、上記目的を達成することのできる本発明の他の波形選択装置は、部分波形メモリに記憶された複数部分波形から１ないし複数の部分波形を選択するための波形選択装置であって、各部分波形毎に、当該部分波形に対応する演奏音とその音の次の演奏音の２音の特性を示す属性データを記憶するデータベースと、順次演奏される演奏音のうちの現在の演奏音とその次の演奏音の２音の特性を示す特性データを入力し、入力された特性データにより前記データベースを参照して、入力された２音の特性データに近い属性データを有する１ないし複数の部分波形を、前記現在の演奏音に対応する楽音波形を合成するための部分波形として抽出する検索手段とを備えるようにしている。
【０００９】
このような本発明の波形生成方法によれば、発音制御情報に対応して最適の部分波形を用いて波形を生成することができ、表情に富んだ楽音を生成することができるようになる。
また、本発明の演奏データ処理方法によれば、演奏データ中の各音符の特徴に最適の部分波形データを、予め選択して演奏データの各音符に付与することができる。従って、この演奏データを用いることにより、自動演奏を行なう際の処理装置の負荷を増加させることなく、自動演奏における波形生成で最適の部分波形データを選択できるようになる。
さらに、本発明の波形生成方法によれば、リアルタイム演奏により楽音を生成する場合でも、リアルタイム演奏に対応する演奏情報を利用することにより、未来に行う演奏に応じて、現在の演奏により生成する楽音の特性を制御することができる。
さらにまた、演奏する音とその前に演奏する音、あるいはその次に演奏する音の２音の特性データに近い属性データを有する１ないし複数の部分波形を選択するようにすると、演奏する音の楽音を生成するための部分波形として最適の部分波形を選択することができるようになる。
【００１０】
【発明の実施の形態】
本発明の波形生成方法および演奏データ処理方法を備える波形データ録音再生装置のハードウェア構成を図１に示す。
図１に示す波形データ録音再生装置１おいて、ＣＰＵ１０は各種プログラムを実行することにより波形データ録音再生装置１における録音や再生の動作を制御する中央処理装置（Central Processing Unit）であり、タイマ１１は動作時の経過時間を示したり、特定の間隔でタイマ割込を発生するタイマであり、自動演奏の時間管理等に使用される。ＲＯＭ１２は、ＣＰＵ１０が収録時に実行する分割処理および属性情報付与処理のプログラムや、再生時に実行する演奏データ加工処理、ノートオンイベント処理等のプログラムが格納されていると共に、各種データが格納されているＲＯＭ（Read Only Memory）である。ＲＡＭ１３は波形データ録音再生装置１におけるメインメモリであり、ＣＰＵ１０のワークエリア等が設定されるＲＡＭ（Random Access Memory）である。
【００１１】
また、表示器１４は収録時や再生時に各種情報が表示されるディスプレイであり、操作子１５は収録時や再生時に各種の操作を行う際に操作される操作子であり、鍵盤を含んでいてもよい。音源１６は、収録時に自動演奏される複数のフレーズの演奏データに基づく楽音を生成する音源であり、ＦＭ音源やＰＣＭ音源あるいは高調波合成音源等のいずれの音源でもよい。ミキサ１７は、音源１６で生成された楽音や後述する再生回路２４で再生された楽音をミキシングしてＤＡＣ１８に送るミキサであり、ＤＡC1８はミキサ１７から供給された楽音データをアナログの楽音信号に変換してサウンドシステム１９に送るデジタル−アナログ変換器である。サウンドシステム１９は、ＤＡＣ１８から供給された楽音信号を増幅して放音している。
【００１２】
マイクロフォン２０は、演奏者が演奏した楽器音や歌唱した歌唱音が入力され、入力された楽器音や歌唱音のフレーズ波形信号はＡＤＣ２１に送られる。ＡＤＣ２１は、供給された音の波形信号をディジタルのフレーズ波形データに変換するアナログ−ディジタル変換器であり、変換されたフレーズ波形データは録音回路２２の制御の基でＨＤＤ（Hard Disk Drive）２３に録音される。録音されたフレーズ波形データは、後述するように音源１６で収録時に再生された演奏データに基づいて部分波形データに分割され、分割された部分波形データには属性情報が付与される。この分割処理や属性情報付与処理は、ＣＰＵ１０が分割処理や属性情報付与処理のプログラムを実行することにより行われる。さらに、部分波形データの内の使用する部分波形データを選択して、選択された部分波形データに付与されている属性情報から演奏用の音色セットが作成されている。再生回路２４は、音色セットの指定された音色における部分波形管理データベースを検索し、属性情報から最適の部分波形データを検索して演奏波形データを生成している。生成された演奏波形データは、ミキサ１７、ＤＡＣ１８を介してサウンドシステム１９から放音される。
【００１３】
ＭＩＤＩインタフェース２５には、ＭＩＤＩ鍵盤等のＭＩＤＩ対応機器から出力されるＭＩＤＩ信号が入力され、ＭＩＤＩ信号中のイベントデータに基づいて再生回路２４が上述したように演奏波形データを生成し、サウンドシステム１９から演奏音が放音されるようになされている。その他のインタフェース２６は、ＬＡＮ（Local Area Network）や公衆電話網、インターネット等の通信ネットワーク用の通信インタフェースであって、通信ネットワークを介してサーバコンピュータと接続され、サーバコンピュータから所望の演奏データ等をダウンロードすることができる。なお、２７は各デバイス間で信号を送受信するためのバスラインである。
【００１４】
次に、本発明にかかる波形データ録音再生装置１においてフレーズ波形データを録音して部分波形データに分割する処理を図２ないし図６を参照しながら以下に説明する。
本発明にかかる波形データ録音再生装置１においてフレーズ波形データを録音する際には、図３（ａ）に示すように自動演奏手段３１に複数のフレーズからなる演奏データ３０を供給して自動演奏させる。フレーズには録音したい音高等の特徴情報を有する音符が含まれている。この自動演奏手段３１は、図１に示すＣＰＵ１０および音源１６により主に構成されている。そして、ＣＰＵ１０が自動演奏プログラムを実行することにより、ＲＯＭ１２あるいはＲＡＭ１３から読み出した演奏データに基づいて音源パラメータを生成し、この音源パラメータを音源１６に供給することにより、音源１６において生成された演奏波形データは、ミキサ１７、ＤＡＣ１８を介してサウンドシステム１９に接続されているヘッドフォン３６から放音される。ヘッドフォン３６は演奏者３２が装着しており、演奏者３２は演奏音を聴取することができる。なお、録音したいパートの演奏データやその他のパートの演奏データを含む、例えばＳＭＦ（Standard MIDI File）等の形式とされた１ないし複数パートのフレーズのシーケンスデータが予め作成されており、これが演奏データとしてＲＡＭ１３等に格納されている。
【００１５】
そして、演奏者３２はその演奏データに基づく演奏音を聴取しながら、演奏音に従って図示しない楽器を演奏したり、あるいは歌唱する。この演奏者３２による演奏音あるいは歌唱音は、演奏音を聴取しながら行われるため、その演奏音あるいは歌唱音は自然な音になる。この演奏音あるいは歌唱音のフレーズ波形はマイクロフォン２０を介して波形録音手段３３に供給され、フレーズ波形はサンプリングされてディジタルのフレーズ波形データ３４とされてフレーズ毎に録音されるようになる。この場合、自動演奏手段３１と波形録音手段３３とのクロックはクロック同期ライン３５により同期化されており、演奏タイミングに同期化されてフレーズ波形データが録音されるようになる。この同期化では、波形録音手段３３のサンプリングクロックと自動演奏手段３１の動作クロックとを共通化すると共に、自動演奏開始と録音開始とのタイミングを一致させる、あるいは、両タイミングの差を記憶するようにしている。これにより、録音したフレーズ波形データ３４と自動演奏される演奏データの全区間にわたる同期が保証されるようになる。したがって、演奏データのテンポが途中で変更されていたとしても、同期化には全く影響を与えないようになる。
【００１６】
ここで、自動演奏される演奏データとフレーズ波形データとの関係の概略を図２に示す。この場合の演奏データは、図２（ａ）に示すように五線譜上の音譜で表されており、この演奏データによる自動演奏音をヘッドフォン３６から聴取しながら、その演奏音に合わせて演奏あるいは歌唱して録音されたフレーズ波形は図２（ｂ）に示すような波形となっている。この場合、演奏データの四分音符「Ｅ（ミ）」は波形ａに対応し、同様に演奏データの四分音符「Ａ（ラ）」は波形ｂに対応し、演奏データの八分音符「Ｆ（ファ）」は波形ｃに対応し、演奏データの八分音符「Ｅ（ミ）」は波形ｄに対応し、演奏データの四分音符「Ｃ（ド）」は波形ｅに対応し、演奏データの音符「Ｆ（ファ）」は波形ｆに対応している。上述したように同期化されているため、各波形は演奏データの演奏タイミングに合致していると共に、音符に対応した音の長さの波形となっている。さらに、波形からはわからないが、演奏データに基づく演奏音を聴きながら演奏しているため、その音色も自然な音色とされた波形となっている。
【００１７】
また、波形録音手段３３は、図１に示すＣＰＵ１０、ＡＤＣ２１、録音回路２２、ＨＤＤ２３により構成されている。そして、ＣＰＵ１０の制御の基でマイクロフォン２０から入力された演奏音あるいは歌唱音であるフレーズ波形をＡＤＣ２１においてサンプリングしてディジタルのフレーズ波形データ３４に変換している。このフレーズ波形データ３４は録音回路２２によりＨＤＤ２３の所定の記憶領域に書き込まれて録音される。なお、自動演奏の態様は、次に示すいずれの態様でもよい。第１の自動演奏の態様は、当該フレーズの録音したいパート（録音パート）だけの演奏データからなるソロパート演奏である。第２の自動演奏の態様は、当該フレーズの録音したいパートを含む複数パートの演奏データからなる全パート演奏である。第３の自動演奏の態様は、当該フレーズの録音したいパートを除く１ないし複数パートの演奏データ、あるいは上記その他のパートの演奏データからなるマイナスワン演奏である。
【００１８】
本発明にかかる波形データ録音再生装置１においてフレーズ波形を録音する際に、図３（ｂ）に示すようにして録音してもよい。図３（ｂ）に示す構成では、ヘッドフォン３６に代えてスピーカ３７から自動演奏音を演奏者３２に聴取させている。ここで、図３（ｂ）に示す構成のうち、図３（ａ）に示す構成と異なる部分だけ説明すると、図３（ｂ）に示す構成では、自動演奏手段３１から出力される自動演奏音をスピーカ３７から放音して演奏者３２に聴取させている。この場合、スピーカ３７からの自動演奏音はマイクロフォン２０で拾われるようになるので、スピーカ音除去処理手段３８によりマイクロフォン２０で拾われた自動演奏音を除去している。なお、スピーカ音除去処理手段３８には自動演奏手段３１から自動演奏音が供給されており、この自動演奏音の位相を反転すると共に、時間調整・振幅調整を行うことにより自動演奏音を除去するようにしている。
【００１９】
自動演奏手段３１において自動演奏を、上述したいずれかの態様の演奏として、演奏者３２による演奏音あるいは歌唱音のサンプリングを波形録音手段３３において行なっているため、録音されたフレーズ波形データには録音したいパート（録音パート）に対応する波形分割のための演奏データ（対応演奏データ）が必ず存在することになる。
そこで、図４に示すように分割処理手段４１において、自動演奏された演奏データ４４に従って、フレーズ波形データ４０を演奏データ４４の各音符に対応するノートの部分波形データ４３に分割する。次いで、属性情報付与処理手段４２において、分割された部分波形データ４３に、その音高、音長や強度等の属性を示す属性情報を対応する演奏データ４４の各音符の特徴情報を参照して付与する。このように、フレーズ波形データ４０を部分波形データ４３に分割する分割処理手段４１、および、分割された部分波形データ４３に属性情報を付与する属性情報付与処理手段４２は、ＣＰＵ１０が分割処理プログラムや属性情報付与処理プログラムを実行することにより行われる。
【００２０】
この場合、演奏データ４４にフレーズ波形データ４０は同期しているため、演奏データ４４の発音タイミング等だけでも部分波形データ４３へ分割することができる。また、フレーズ波形データ４０を周波数分析（フォルマント分析）してその分割位置を補正するようにしてもよい。すなわち、演奏データ４４に従って仮決定された仮の分割位置を基準にして、その近傍で部分波形データ４３のフォルマントの開始位置をサーチし、検出された開始位置を分割位置として決定することができる。このようにすると、フレーズ波形データ４０の分析結果だけに基づいて分割するのに比べて、音楽的に正確な位置での分割が可能になる。
【００２１】
さらに説明すると、演奏データ４４だけによる分割手法では、自動演奏される演奏データ４４とフレーズ波形データ４０は、完全に同期がとれた状態とされていることを利用して分割している。このため、録音パートの演奏データ４４に含まれる各音符のデータに従って、各音符に対応する時間範囲（音符に対応する音のスタートタイミング（ノートオン）からリリース開始（ノートオフ）後の音の減衰するまで、または、次の音符の音が始まるまでの時間範囲）のフレーズ波形データ４０を部分波形データ４３として切り出すことができる。
しかし、フレーズ波形データ４０は人間が行なった演奏をサンプリングしたものであるため、録音パートの演奏データ４４の音符のスタートタイミングと、フレーズ波形データ４０のその音符に対応する波形のスタートタイミングとは必ずしもあっておらず、ずれている場合もある。
そこで、録音パートの演奏データ４４の各音符の開始タイミングを基準に、フレーズ波形データ４０のその前後区間（例えば開始タイミングの前後数秒）の波形を分析し、フレーズ波形データ４０における音符の開始タイミングを検出して分割位置を補正するようにすると、部分波形データ４３を正確に切り出すことができるようになる。
【００２２】
分割位置を補正する際に用いる波形分析手法としては、フォルマント分析およびＦＦＴ分析を採用することができる。このフォルマント分析では、まず、録音パートの演奏データ４４の各音符の開始タイミングを基準に、フレーズ波形データ４０の前後区間の波形データの相関関数からＬＰＣ（Linear Prediction Coding）係数を算出する。次いで、ＬＰＣ係数をフォルマントパラメータに変換してフレーズ波形データ４０におけるフォルマントを求める。そして、当該音符に対応するフォルマントの立上がり位置からその音符の開始タイミングを検出する。これにより、音楽的に正確な位置で部分波形データ４３を切り出して、ノート毎の部分波形データ４３に分割することができる。
また、ＦＦＴ分析では、まず、録音パートの演奏データ４４の各音符の開始タイミングを基準に、フレーズ波形データ４０の前後区間について時間窓を移動しながらフレーズ波形データ４０の高速フーリエ変換を行う。次いで、当該音符に対応する基音および複数倍音の軌跡を検出し、検出された基音および倍音の軌跡における立上がり位置から開始タイミングを検出する。この手法によっても、音楽的に正確な位置で部分波形データ４３を切り出して、ノート毎の部分波形データ４３に分割することができる。ここでは、フォルマント分析とＦＦＴ分析について説明したが、分割位置を補正するための分析には、その他のピッチ分析やエンベロープ分析等の分析方法を用いてもよい。
【００２３】
分割処理が終了すると、分割された各部分波形データに対して属性情報が付与される属性情報付与処理が行われる。この属性情報付与処理では、演奏データ４４の各音符に対応する部分波形データ４３に、その音符の特徴情報に対応する属性情報が付与される。この属性情報には、オリジナルキーとして使用される音高情報、オリジナル強度として使用される強度情報、オリジナル音長として使用される音長情報、部分波形データを選択するのに使用される前音情報および後音情報のいずれか１つの情報ないし複数の情報が含まれている。すなわち、音高情報、強度情報、音長情報は、それぞれ、演奏データ４４の当該部分波形データが切り出された位置に対応する音符（現音と呼ぶ）のイベントの音高、強度、音長の値を有する。また、前音情報とは、前音の音高が現音より上か下かの情報、または前音との音高差の情報、前音の強度が現音より大か小かの情報、または前音との強度差の情報、および、前音の音長が現音より長いか短いか同じかの情報、または前音との音長差の情報やその他前音と現音との関係に関する情報などである。この場合、これらの情報の値は、演奏データ４４における現音とその前の１ないし複数の音符のイベントに基づいて決定することができる。また、後音情報とは、前音情報における前音を後音に置き換えた際の後音と現音との関係に関する情報である。これらの情報の値も、同様に、演奏データ４４における現音とその後の１ないし複数の音符のイベントに基づいて決定することができる。さらに、演奏データ４４が、スラー、トリル、クレッシェンド等の音楽記号を含む演奏データとされている場合は、その音楽記号を属性情報に含ませてもよい。この属性情報は、当該部分波形データを選択する基準として使用されたり、当該部分波形データを加工するときのパラメータとして使用される情報とされる。なお、所望の属性情報に対応した音符を演奏データに含めて録音を行なうことにより、所望の属性情報に対応した部分波形データを得ることができる。
【００２４】
図４に示すように分割処理手段４１において部分波形データ４３に分割され、分割された部分波形データ４３に属性情報付与処理手段４２において属性情報が付与される。分割処理された部分波形データ４３や付与された属性情報は、ＨＤＤ２３に演奏データ等と共に１つの収録データとして記憶されている。フレーズ波形データ４０は、楽器種類やボーカル音色毎に録音されることから、収録データは音色毎に記録されることになる。この収録データのデータ構成を図５に示す。図５に示すように、収録データは自動演奏された複数フレーズとされている演奏データと、各フレーズの演奏データに対応するフレーズ波形データが記憶領域のどこの位置に記憶されているかを管理するフレーズ波形管理情報と、フレーズ波形データを分割した部分波形データの記憶領域におけるスタート位置や終了位置およびその部分波形データの属性情報からなる部分波形管理情報と、各フレーズの演奏データに対応するフレーズ波形１，フレーズ波形２，・・・・から構成されている。なお、このフレーズ波形ｉに付けられている番号ｉは、後述するフレーズ波形ＩＤである。各フレーズ波形の各フレーズ波形のデータは、前述したような方法で複数の部分波形データに分割されるが、その分割された態様がフレーズ波形１に例示されている。すなわち、フレーズ波形１は、部分波形１−１，部分波形１−２，・・・，部分波形１−６の６つの部分波形データに分割されている。なお、この部分波形データｉ−ｊに付けられている番号ｉ−ｊは、後述する部分波形ＩＤである。
【００２５】
図５に示す収録データは、演奏データ毎に収録されたフレーズ波形データを分割処理して属性の付与処理を行った結果のデータとされており、フレーズ波形データは楽器種類やボーカル音色毎に録音される。すなわち、収録データは音色毎に作成されることになることから、演奏イベントデータに応じて収録データから対応する部分波形データ読み出して用いることにより、その音色の演奏波形データを得ることができる。しかし、図５に示す収録データにおける複数の部分波形データには属性情報の音高等が重複した部分波形データや不要な部分波形データも記録されている。そこで、収録データのうちから使用する部分波形データを選択し、選択された部分波形データにより演奏用の音色セットを作成している。音色セットを作成する際に、いずれの部分波形データを選択するかの選択情報、音色パラメータ等が音色管理情報として収録データ中に記録されており、この音色管理情報に従って音色セットが作成されるようになる。このことから、図５に示す収録データを音色セット作成ツールと称することができる。なお、音色管理情報は、ユーザの所望に応じて選択された部分波形データを選択する選択情報、ユーザにより設定された音色パラメータ等を含んでいる。
【００２６】
この音色セットのデータ構成を図６に示す。図６に示す演奏用の音色セットは、「バイオリン１」，「男声４」，「トランペット２」，・・・等の音色毎の音色データから構成されている。各音色データのデータ構成は同様とされており、例として「男声４」のデータ構成が図６に示されている。図６に示すように、音色データは、ヘッダ、部分波形管理データベース、音色パラメータおよび部分波形プールから構成されている。部分波形プールには、図５に示す収録データにおける音色管理情報に従って複数のフレーズ波形データの中から選択した部分波形のデータが図６に示すように部分波形１，部分波形２，部分波形３，・・・としてプールされている。この場合、音色管理情報により多くの音高に対応する部分波形データが選択されると、部分波形データを割り当てる音域を細かく設定することができるようになる。また、音高情報が同じでも音長情報や強度情報が異なっていたり、前音との音高差や前音の音高が上か下か等の情報が異なっている部分波形データも選択される音色管理情報とされていてもよい。
【００２７】
このようにして作成された音色セットにおける部分波形管理データベースには、上記音色管理情報に従って選択された部分波形データにおける、前記部分波形プールにおける記憶領域のスタート位置や終了位置およびその部分波形データの属性情報が記録されている。また、上記音色管理情報に含まれていた音色パラメータがそのまま音色パラメータの記憶領域に記憶されており、該音色パラメータには、その音色におけるエンベロープパラメータやフィルタ係数が記録されている。
音色セットにおける音色毎に作成されている音色データは、図５に示す収録データから異なる組み合わせで部分波形データを選択するようにすると、１つの収録データから複数の音色データを作成することができる。そして、本発明にかかる波形データ録音再生装置１では、このようにして作成された音色セットを用いて自動演奏やリアルタイム演奏を行うことができるようにされている。
【００２８】
前記部分波形プールに記憶されている音色管理情報に従って選択された部分波形の属性情報等が記録されている部分波形管理データベースのデータ構成を図７に示す。部分波形管理データベースは、部分波形プールに記憶されている部分波形１，部分波形２，部分波形３，部分波形４・・・の部分波形毎の特性を示す部分波形１レコード，部分波形２レコード，部分波形３レコード，部分波形４レコード・・・・のレコード情報から構成されている。各レコード情報のデータ構成は同様とされており、部分波形３レコードのデータ構成の詳細が図７に示されている。すなわち、部分波形３レコードで代表されるレコード情報は、部分波形のＩＤ（ＰＷＩＤ）、部分波形の名前（ＰＷＮＡＭ）、部分波形の作成日（ＰＷＤＡＴ）、部分波形の作成者（ＰＷＡＵＴ）を含んでいる。この、部分波形のＩＤは図８に示すようにフレーズ波形ＩＤ（上位１０ビット）と部分波形ＩＤ（下位６ビット）とから構成されている。なお、フレーズ波形ＩＤは、部分波形を切り出した切り出し元のフレーズ波形のフレーズ波形ＩＤであり、部分波形ナンバは、そのフレーズ波形から何番目に切り出した部分波形かを示す番号とされている。このような構成の部分波形のＩＤ（ＰＷＩＤ）とすることにより、当該部分波形の切り出し元であるフレーズ波形を特定することができるようになり、ユーザが部分波形を選択する時に、その切り出し元のフレーズ波形を聴いてどういう素性の部分波形であるかを確認することができるようになる。
【００２９】
さらに、各レコード情報は、部分波形データにおけるその音の音高（ＰＷＰＩＴ）、強度（ＰＷＩＮＴ）、音長（ＰＷＬＥＮ）の各情報と、その音と次音との２音の関係を示す次音の音高比（ＰＷＦＰＲ）、次音の強度比（ＰＷＦＩＲ）、次音の音長比（ＰＷＦＬＲ）と、その音と前音との２音の関係を示す前音の音高比（ＰＷＢＰＲ）、前音の強度比（ＰＷＢＩＲ）、前音の音長比（ＰＷＢＬＲ）の各情報を含んでいる。なお、これらの情報の内の比の情報は、比に限るものではなく差の情報としてもよい。
ところで、これらのレコード情報における各情報は、属性付与情報処理で付与される属性情報における各情報と対応している。その対応関係は次の通りである。
0003879524.tif 000002
前述したように、これらの情報の値は、各部分波形データの切り出し後に、その切り出し元であるフレーズ波形データに対応する演奏データのその切り出し位置に対応する音符のイベント、および、その前後の音符のイベントに基づいて自動決定されている。しかしながら、ユーザが各情報の値を個別に入力したり、その自動決定された各情報の値を変更できるようにしてもよい。
【００３０】
さらに、部分波形プールの記憶領域における当該部分波形が保存されているスタートアドレス（ＰＷＳＡ）、エンドアドレス（ＰＷＥＡ）、ビートアドレス（ＰＷＢＡ）、ループアドレス（ＰＷＬＡ）の各情報が含まれている。この場合、スタートアドレスとエンドアドレスは必須の情報であるが、ビートアドレス、ループアドレスはなくてもよい。なお、ビートアドレスは、部分波形におけるビート位置（拍を感じる位置）を示しており、部分波形データを使用する時は、このビート位置を、演奏データの音符のタイミングに合わせるようにする。このビートアドレスは、例えばソフトに演奏された演奏データとされて、演奏された各音符のスタート位置が明確でない場合に好適な情報となる。さらに、ループアドレスは、部分波形中の変化の少ない定常的な部分をループ波形の繰り返しに置き換えた場合における、そのループ波形のアドレスである。なお、ループにより部分波形を短縮した場合でも、部分波形の音長（ＰＷＬＥＮ）情報は変化しない。このように、音長（ＰＷＬＥＮ）情報は波形データの長さではなく、その音が演奏されたときの音符の長さを示す情報とされている。
【００３１】
さらにまた、部分波形管理データベースにはスラーの程度（ＰＷＳＬＲ）、ビブラート深さ（ＰＷＶＩＢ）およびその他の情報が含まれている。ここで、スラーの程度の値は、前音のノートオンと現音のノートオンが重なっており、その重なりが小さく、かつ、前音と現音の強度差が小さいほど大きくなる。また、ビブラートの深さは、部分波形データのピッチの揺れ幅の同部分波形データの基本ピッチに対する比である。
なお、上述した部分波形管理データベースを、部分波形のスタートアドレス、エンドアドレス等のアドレス情報を記憶するデータベースと、部分波形を検索するための部分波形の残りの情報を記憶するデータベースの２つに分離してもよい。この場合、部分波形の選択に必要なのは、後者の検索用のデータベースのみとなり、前者のアドレス情報のデータベースを音源１６に内蔵するようにすれば、ＣＰＵ１０の行うべき処理を軽減することができる。
【００３２】
ここで、図５のようなデータ構成を有する音色セット作成ツールにおいて、図６ないし図８に示す演奏用の音色セットを作成する手順を示す図９のフローチャートに従って、その手順をまとめて説明する。なお、この手順は音色セットを作成するユーザが行う手順である。
まず、音色セットを作成するユーザは、録音パートに必要な音高の音符を少なくとも含む複数フレーズの演奏データを図５の演奏データ記憶領域に用意する（ステップＳ１）。この場合、録音に必要な特徴情報を有する音符としては、音高に加えて音長、ベロシティ、前音情報、前音との音高差等の特徴情報を有する音符を含むフレーズの演奏データとしてもよい。次いで、用意した複数フレーズの演奏データに基づいて波形データ録音再生装置１において自動演奏された楽音を演奏者に供給しながら、演奏者が演奏あるいは歌唱したフレーズ波形を波形データ録音再生装置１の図５のいずれかのフレーズ波形記憶領域に収録する（ステップＳ２）。
【００３３】
この収録されたフレーズ波形データに対して、波形データ録音再生装置１において、収録データにおける演奏データに基づいて、フレーズ波形データに分割処理が施されて部分波形データに分割されると共に、分割された部分波形データに対応する音符に関連した属性情報が付与される。分割された各部分波形データのスタート位置、終了位置、および各部分波形に付与された属性情報は、各部分波形の部分波形管理情報として図５の部分波形管理情報記憶領域に記憶される（ステップＳ３）。次いで、ユーザの操作子操作に応じて、部分波形データを選択的に組み合わせると共に、エンベロープパラメータ等の音色パラメータを用意し、選択された部分波形データを示す選択情報と用意された音色パラメータを音色管理情報として図５の音色管理情報記憶領域に記憶する（ステップＳ４）。
【００３４】
以上のステップＳ１ないしステップＳ４の手順によって完成した１音色分の音色データに基づいて、次のようにして図６の音色セットの１音色分の音色データが記憶領域に用意される。まず、図５のフレーズ波形記憶領域に記憶された複数の部分波形データのうち、音色管理情報中の選択情報により選択された部分波形データが図６の当該音色の部分波形プールにコピーされ、そのコピー後の各部分波形データのスタート位置と終了位置、および、コピーされた各部分波形データのＩＤや名前、作成者等を含む属性情報が図６の部分波形管理データベースに記憶される。次に、図５の音色管理情報中の音色パラメータが、図６の当該音色の音色パラメータ記憶領域にコピーされる。最後に、当該音色のタイプ、音色名、音色データ容量等を示すヘッダ情報が図６のヘッダ領域に記憶され、音色セット中の演奏用の音色データが完成する。
なお、ステップＳ３において、フレーズ波形データの部分波形データへの分割位置や付与される属性情報を自動的に決定した後、その分割位置や属性情報をユーザが任意に修正できるようにしてもよい。
【００３５】
次に、本発明にかかる波形データ録音再生装置１において図６に示す演奏用の音色セットを自動演奏に適用するには、自動演奏する前に予め演奏データを加工するようにする。この演奏データは、自動演奏をユーザが所望する任意の演奏データである。そこで、音色セットを自動演奏に適用した際の演奏データ加工処理のフローチャートを図１０に示し、その説明を以下に行う。
図１０に示す演奏データ加工処理が起動されると、ステップＳ１０にて処理したい演奏データが指定される。この指定は、ユーザがＲＯＭ１２あるいはＲＡＭ１３内に記憶されている演奏データの内の自動演奏したい演奏データを指定する。ここでは、簡単化のため該演奏データは１パート構成の単旋律の演奏データとする。次いで、ステップＳ１１にてポインタを指定された演奏データの先頭の音符に設定する。そして、ステップＳ１２にてポインタが指し示す音符（この場合は演奏データの先頭の音符）における、音高、強度（ベロシティ）、音長、前音／次音の音高比、前音／次音の強度比、前音／次音の音長比等の特徴情報により、音色セットにおける指定されている音色の部分波形管理データベースにおける検索用の情報を検索して、最適の部分波形データを検出する。
【００３６】
次いで、ステップＳ１３にてポインタが指し示す音符に対応して検出された最適の部分波形データを指定する指定情報を、演奏データに埋め込む。具体的には、その音符に対応する演奏イベントデータの直前に、メタイベントやシステムエクスクルーシブメッセージとされた部分波形データの指定情報を挿入するようにする。続いて、ステップＳ１４にて次の音符にポインタが移動され、ステップＳ１５にて移動先に音符があるか否かが判定され、音符があればステップＳ１２に戻る。このように音符があれば、ステップＳ１２ないしステップＳ１５の処理が繰り返し行われるようになり、その処理毎に１つの音符に対応する最適の部分波形データの指定情報が演奏データ中に埋め込まれるようになる。そして、演奏データの最後の音符に対する部分波形データの指定情報の埋め込みが終了すると、ステップＳ１５にて音符がないと判定されて、ステップＳ１６に進む。ステップＳ１６では、このようにして部分波形データの指定情報の埋め込まれた演奏データを別の名前で保存する処理が行われる。以上の処理が終了すると、演奏データ加工処理は終了する。
加工後の演奏データを指定して、波形データ録音再生装置１で自動演奏すると、演奏データ中の各音符の開始タイミング（ノートオンタイミング）毎に、そのノートオンイベントの直前に埋め込まれた指定情報で指定された部分波形データがＨＤＤ２３から読み出され、ノートオンに対応した音色パラメータと共に再生回路２４に送られる。このようにして、演奏データ中の各音符に対応した楽音が、指定された部分波形データに基づいて生成され自動演奏されるようになる。
【００３７】
なお、ステップＳ１３において部分波形データの指定情報をメタイベントやシステムエクスクルーシブとして埋め込むようにしたが、それに限らず、該指定情報をこれ以外のイベントとして埋め込むようにしてもよい。
また、自動演奏したい演奏データが複数パートの演奏データである場合には、図１０の処理をその中の所望の１つのパートだけに対して行ってもよいし、あるいは、その中の任意の複数のパートに対して行ってもよい。
さらに、図１０の処理は、単旋律の演奏データだけでなく、同時に複数の音符が重なるような演奏データでもよい。ただし、前音、後音が上か下か、前音／後音との音高差等の特徴情報に基づいて部分波形データを選択したい場合には、処理される演奏データは、全て単旋律の演奏データである必要がある。
【００３８】
ここで、図１０に示す演奏データ加工処理におけるステップＳ１２で行われる部分波形選択処理の詳細を示すフローチャートを図１１に示す。
図１１に示す部分波形選択処理では、ステップＳ３０にて現音の音高（ＰＰＩＴ）、現音の強度（ＰＩＮＴ）、現音の音長（ＰＬＥＮ）の現音データが取得される。次いで、ステップＳ３１にて次音の音高（ＦＰＩＴ）、次音の強度（ＦＩＮＴ）、次音の音長（ＦＬＥＮ）の次音データが取得される。さらに、ステップＳ３２にて前音の音高（ＢＰＩＴ）、前音の強度（ＢＩＮＴ）、前音の音長（ＢＬＥＮ）の前音データが取得される。次いで、取得されたデータを用いてステップＳ３３にて次音の音高比（ＦＰＲ）と前音の音高比（ＢＰＲ）が、次に示す（１）式および（２）式により算出される。
ＦＰＲ＝（ＦＰＩＴ−ＰＰＩＴ）／ＰＰＩＴ                    （１）
ＢＰＲ＝（ＢＰＩＴ−ＰＰＩＴ）／ＰＰＩＴ                    （２）
【００３９】
さらに、取得されたデータを用いてステップＳ３４にて次音の強度比（ＦＩＲ）と前音の強度比（ＢＩＲ）が、次に示す（３）式および（４）式により算出される。
ＦＩＲ＝（ＦＩＮＴ−ＰＩＮＴ）／ＰＩＮＴ                    （３）
ＢＩＲ＝（ＢＩＮＴ−ＰＩＮＴ）／ＰＩＮＴ                    （４）
さらにまた、取得されたデータを用いてステップＳ３５にて次音の音長比（ＦＬＲ）と前音の音長比（ＢＬＲ）が、次に示す（５）式および（６）式により算出される。
ＦＬＲ＝（ＦＬＥＮ−ＰＬＥＮ）／ＰＬＥＮ                    （５）
ＢＬＲ＝（ＢＬＥＮ−ＰＬＥＮ）／ＰＬＥＮ                    （６）
さらにまた、ステップＳ３６にてその他の検出が行われるが、この検出では、次音との重なり時間、前後複数音での強度のばらつき等に基づいて、スラーの程度を検出したり、ピッチベンドデータの揺れ幅を、ビブラート深さとして検出する。
【００４０】
ステップＳ３０において取得された現音の音高（ＰＰＩＴ）、現音の強度（ＰＩＮＴ）、現音の音長（ＰＬＥＮ）と、ステップＳ３３ないしステップＳ３５にて算出された次音の音高比（ＦＰＲ）、前音の音高比（ＢＰＲ）、次音の強度比（ＦＩＲ）、前音の強度比（ＢＩＲ）、次音の音長比（ＦＬＲ）、前音の音長比（ＢＬＲ）の比の情報と、ステップＳ３６で検出された情報は、ポインタが指し示している音符の音の特徴情報となる。そこで、ステップＳ３７にてこの特徴情報と各部分波形の特徴情報とのパターン比較を行うことにより、両者の特徴情報が最も合致する部分波形を選択する。この選択された部分波形のＩＤをＳＰＷＩＤレジスタに保存する。これにより、ステップＳ１２における部分波形選択処理は終了する。
【００４１】
ところで、ステップＳ３７にて実行されるパターン比較の処理は、図１２に示すフローチャートのようになる。
このパターン比較の処理では、ステップＳ４０にてポインタが指し示している音符に対応する現音の音高（ＰＰＩＴ）、現音の強度（ＰＩＮＴ）、現音の音長（ＰＬＥＮ）を、各部分波形における音の音高（ＰＷＰＩＴ）、強度（ＰＷＩＮＴ）、音長（ＰＷＬＥＮ）とそれぞれ比較し、その比較結果に基づいて計算量を削減するために候補となる部分波形を絞り込む。絞り込み方法の一例を上げると、まず、部分波形の音の音高（ＰＷＰＩＴ）と現音の音高（ＰＰＩＴ）の差が範囲ΔＰに、部分波形の音の強度（ＰＷＩＮＴ）と現音の強度（ＰＩＮＴ）の差が範囲ΔＩに、部分波形の音の音長（ＰＷＬＥＮ）と現音の音長（ＰＷＬＥＮ）の差が範囲ΔＬに、それぞれ含まれる部分波形を選択する。この場合、選択された部分波形数が少なすぎる場合は、範囲ΔＰ，ΔＩ，ΔＬを広げて（条件を緩和して）、その範囲に従い部分波形の選択を再び実行する。ただし、選択された部分波形の数として十分な部分波形数が得られている場合は、絞り込み処理を終了する。また、次のような絞り込み方法としてもよい。まず、全ての部分波形について、音高、強度、音長に関しての各部分波形と現音との類似度を調べるために、両者の離れ具合を示す後述する距離（ＰＮＤ）を算出する。ついで、類似する順である距離（ＰＮＤ）の小さい順に、ｎ個の部分波形を選択する。
【００４２】
このようにして部分波形を絞り込んだら、ステップＳ４１にて絞り込まれた各部分波形とポインタが指し示している音符の音における音高、強度、音長に関しての距離（ＰＮＤ）を、次に示す（７）式により算出する。ただし、ステップＳ４０にて（７）式を用いて距離（ＰＮＤ）を算出している場合は、このステップはスキップする。
0003879524.tif 000003
ただし、（７）式においてａｐ，ｂｐ，ｃｐは、ＰＮＤ算出用の係数である。また、ステップＳ４２にて絞り込まれた各部分波形における次音の音高比、強度比、音長比と、ポインタが指し示している音符の音における次音の音高比、強度比、音長比とに関しての距離（ＦＮＤ）を、次に示す（８）式により算出する。
0003879524.tif 000004
ただし、（８）式においてａｆ，ｂｆ，ｃｆは、ＦＮＤ算出用の係数である。
【００４３】
さらに、ステップＳ４３にて絞り込まれた各部分波形における前音の音高比、強度比、音長比と、ポインタが指し示している音符の音における前音の音高比、強度比、音長比とに関しての距離（ＢＮＤ）を、次に示す（９）式により算出する。
0003879524.tif 000005
ただし、（９）式においてａｂ，ｂｂ，ｃｂは、ＢＮＤ算出用の係数である。次いで、ステップＳ４１ないしステップＳ４３にて算出された距離（ＰＮＤ）、距離（ＦＮＤ）、距離（ＢＮＤ）を用いて次に示す式（１０）により部分波形とポインタが指し示している音符との全体としての類似度を示す総合距離（ＴＯＴＡＬＤ）をステップＳ４４にて算出する。
ＴＯＴＡＬＤ＝ａｔ・ＰＮＤ＋ｂｔ・ＦＮＤ＋ｃｔ・ＢＮＤ      （１０）
ただし、（１０）式においてａｔ，ｂｔ，ｃｔは、ＴＯＴＡＬＤ算出用の係数であり、これらの係数の傾向としてはａｔ＞ｃｔ＞ｂｔの順の大きさとされる。
以上説明した、ＰＮＤ算出用の係数、ＦＮＤ算出用の係数、ＢＮＤ算出用の係数、ＴＯＴＡＬＤ算出用の係数は、任意の１つないし複数をゼロとすることにより、対応する要素を距離の計算に組み入れないようにすることができる。
【００４４】
ステップＳ４４にて絞り込まれた各部分波形について総合距離（ＴＯＴＡＬＤ）が算出されたら、ステップＳ４５にて算出された総合距離（ＴＯＴＡＬＤ）が一番小さい部分波形を選択して、そのＩＤをＳＰＷＩＤレジスタに保存する。これにより、パターン比較処理は終了する。
なお、演奏データ加工処理におけるステップＳ１２においては、演奏データにおけるポインタが指し示す音符の現時点データが如何なる状態とされていても、いずれかの部分波形を１つ選択するようにされている。ただし、現時点データと属性データとの合致度に最低条件を設けて、いずれの部分波形の属性データも離れ過ぎて類似していないときは、”該当する部分波形なし”という判断ができるようにしてもよい。そして、部分波形なしと判断された場合には、ユーザに警告したり、部分波形の代りに通常の波形メモリ音源で発音したりするのが好適である。さらに、部分波形を１つだけ選択するのではなく、２番目の候補、３番目の候補・・・を自動選択しておき、ユーザの指示に応じてその候補中から１つの部分波形を選択できるようにしてもよい。
【００４５】
次に、本発明にかかる波形データ録音再生装置１において音色セットをリアルタイム演奏に適用した際のノートオンイベント処理のフローチャートを図１３に示し、その説明を以下に行う。
操作子１５に含まれている鍵盤を押鍵してノートオンイベントが発生したり、ＭＩＤＩインタフェース２５を介してノートオンイベントが供給されると、ノートオンイベント処理が起動され、ステップＳ２０にて発生されたノートオンイベントにおける音高や強度等の情報に基づいて音色セットにおける指定されている音色の部分波形管理データベースの属性情報を検索して、最適の部分波形データが選択される。この場合の部分波形データの選択基準を、（１）当該ノートオンの音高、（２）当該ノートオンの音高と強度、（３）当該ノートオンの音高、および、前音の音高が上か下かの情報、（４）当該ノートオンの音高、および、前音の音高との音高差、（５）その他、当該ノートオンと前音の強度等の情報の組合せ、としてもよい。
【００４６】
ノートオンイベントに対応する最適の部分波形データが選択されると、ステップＳ２１にて再生回路２４において発音するチャンネルが割り当てられ、ステップＳ２２にて割り当てられた発音チャンネルに選択された部分波形データの情報や音色パラメータ等が設定される。この場合、ノートオンイベントにおける音高と選択された部分波形データの音高との音高差に基づいてピッチシフト量も設定される。次いで、ステップＳ２３にて割り当てられた発音チャンネルにノートオンが送出され、再生回路２４は設定された部分波形データおよび音色パラメータやピッチシフト量に基づいて楽音波形を再生する。ノートオンイベントに対応する楽音波形が再生されたらノートオンイベント処理は終了し、リアルタイム演奏に基づくノートオンイベントが再度発生すると、ノートオンイベント処理が再度起動されて上記したノートオンイベントに対応する楽音波形を再生する処理が繰り返し行われるようになる。
【００４７】
なお、リアルタイム演奏では、演奏する音の長さは対応するノートオフが来るまで判明しないので、音長に応じて部分波形データの時間軸制御を行なうことはできない。そこで、リアルタイム演奏用の部分波形データでは、通常の波形メモリ音源と同様に、楽音波形のアタック以降の定常部にループ再生を行なうループ部を設定し、ループ再生＋ノートオフに応じた減衰エンベロープ付与による楽音音長の制御を行なうようにする。
また、音色セットをリアルタイム演奏に適用した際の変形例として、ノートオンイベントの発生から発音までに数秒〜数十秒の発音遅れが許されるなら、その間の演奏イベントをバッファに記憶しておくことにより、部分波形データを選択する際に当該ノートオンの音長や後音の情報等も用いることができるようになる。
【００４８】
ここで、ノートオンイベント処理におけるステップＳ２０で実行される部分波形選択処理のフローチャートを図１４に示す。
ステップＳ２０の部分波形選択処理では、ステップＳ５１にてノートオンされた現音の音高（ＰＰＩＴ）、現音の強度（ＰＩＮＴ）が取得される。ただし、現音の音長（ＰＬＥＮ）はノートオン中なので取得することはできない。次いで、ステップＳ５２にて前回のノートオンにおける前音の音高（ＢＰＩＴ）、前音の強度（ＢＩＮＴ）、前音の音長（ＢＬＥＮ）の前音データが取得される。次いで、ステップＳ５３にて取得された現音の音高（ＰＰＩＴ）と前音の音高（ＢＰＩＴ）との音高比（ＢＰＲ）が、前記した（２）式により算出される。さらに、ステップＳ５４にて取得された現音の強度（ＰＩＮＴ）と前音の強度（ＢＩＮＴ）との強度比（ＢＩＲ）が、前記した（４）式により算出される。さらにまた、ステップＳ５５にてその他の検出が行われるが、この検出では、前音との重なり時間、強度のばらつき等に基づいて、スラーの程度を検出したり、ピッチベンドデータの揺れ幅を、ビブラート深さとして検出する。
【００４９】
次いで、ステップＳ５１ないしステップＳ５５にて取得されたノートオンの現音の音高（ＰＰＩＴ）、現音の強度（ＰＩＮＴ）や、算出された前音の音高比（ＢＰＲ）、前音の強度比（ＢＩＲ）の特徴データと、各部分波形の特徴データとのパターン比較を行うことにより、これらの特徴データが最も合致する部分波形をステップＳ５６にて選択する。この選択された部分波形のＩＤをＳＰＷＩＤレジスタに保存する。これにより、ステップＳ２０における部分波形選択処理は終了する。なお、パターン比較処理は前述した図１２に示すパターン比較処理と同様に行うことができる。ただし、次音のデータは存在しないので現音と前音に関するデータに基づいてパターン比較を行う。具体的には、次音に関しての距離（ＦＮＤ）は算出しないと共に、係数ｃｐをゼロとして現音に関しての距離（ＰＮＤ）を算出する。また、前音に関しての距離（ＢＮＤ）の計算では、（９）式における第３項の音長比（ＢＬＲ）の代わりに前音の音長（ＢＬＥＮ）を、同音長比（ＰＷＢＬＲ）の代わりに前音の音長（＝ＰＷＢＬＲ×ＰＷＬＥＮ）を使用する。そして、算出された距離（ＰＮＤ）と距離（ＢＮＤ）とに基づいて、総合距離（ＴＯＴＡＬＤ）を算出して、算出された総合距離（ＴＯＴＡＬＤ）が一番小さい部分波形を選択して、そのＩＤをＳＰＷＩＤレジスタに保存するようにする。
【００５０】
ところで、本発明にかかる波形データ録音再生装置１において音色セットを自動演奏とリアルタイム演奏の組み合わせに適用することもできる。この際の自動演奏では、例えば１６パートの演奏データに基づく自動演奏が行なわれ、そのうちの何れかのパートがリアルタイム演奏パートに指定される。第１パートがリアルタイム演奏パートだとすると、自動演奏により第２パート〜第１６パートの楽音が生成される。その自動演奏された楽音に合わせて演奏者が演奏するリアルタイム演奏では、図１３に示すノートオンイベント処理が実行されることにより楽音波形が生成されるようになる。このような自動リズム、自動伴奏、伴奏パート等の何らかの自動演奏に合わせてリアルタイム演奏している場合は、自動演奏からテンポクロックを得ることができる。従って、この場合に、演奏者が行なうリアルタイム演奏パートの演奏データを用意しておくと、演奏者は、大体そのリアルタイム演奏パートの通りに演奏することから、リアルタイム演奏におけるノートオンイベントやノートオフイベント等のイベントの未来の状況を検知することができるようになる。したがって、図１３に示すノートオンイベント処理のステップＳ２０における部分波形を選択する処理において、現ノートオンの音長情報や次に演奏される音の情報も使用して部分波形を選択することができるようになる。なお、自動演奏する演奏データとして、図１０の演奏データ加工処理で加工された演奏データを使用してもよい。
【００５１】
前記したように、自動演奏している場合は、自動演奏からテンポクロックを得ることができる。すなわち、自動演奏中のみテンポタイマにより、テンポに応じた時間間隔でテンポ割込が発生するようになる。このテンポ割込の度に、テンポカウンタは所定値ずつカウントアップする。このテンポカウンタの現在カウント値ＰＯＳは、演奏データにおける自動演奏の進行位置を示している。ただし、この位置は演奏データのメモリ上のアドレス位置ではなく、何小節目の何拍目の何クロック目というようなテンポクロックを基準とした位置とされている。また、演奏データには、演奏者の演奏しているリアルタイム演奏のパートも含まれており、その他のパートの自動演奏に同期して、該リアルタイム演奏のパートも現在位置が確定されるようになる。
【００５２】
このようなテンポカウンタの初期設定が行われる自動演奏開始処理のフローチャートを図１５に示す。
この自動演奏開始処理が開始されると、ステップＳ６０にて自動演奏される演奏データが特定される。次いで、ステップＳ６１にてテンポカウンタの値ＰＯＳが初期値に設定される。次いで、ステップＳ６２にて特定された演奏データにおける最初のイベント位置が確定され、ステップＳ６３にてテンポタイマがスタートされる。これにより、テンポタイマによる一定時間おきのテンポ割込が発生するようになり、そのテンポ割込処理のなかで、確定されたイベントから演奏データのイベントが順次再生されるようになる。
【００５３】
次に、テンポカウンタを更新させるテンポ割込処理のフローチャートを図１６に示す。
テンポ割込が生じると、テンポ割込処理が開始されてステップＳ７０にてテンポ割込の度に、テンポカウンタの値ＰＯＳは所定値ずつカウントアップされて更新される。次いで、ステップＳ７１にて現時点がイベント位置か否かが判断される。ここで、イベント位置と判断されるとステップＳ７２に分岐し、該位置のイベントが再生され、この再生処理が終了するとステップＳ７３にて次のイベントの位置が確定されて、ステップＳ７４に進む。この場合、イベントがリアルタイム演奏パートのイベントの場合は、当該イベントに応じた楽音の生成や制御は行われず、それ以外の演奏パートのイベントである場合は、当該イベントに応じた楽音の生成や制御等が行なわれる。また、ステップＳ７１にてイベント位置でないと判断された場合は、そのままステップＳ７４に進み現時点が終了位置か否かが判断される。ここで、終了位置と判断されると、ステップＳ７５に分岐しテンポタイマを停止させてテンポ割込処理を終了させる。この場合、自動演奏は終了するようになる。また、ステップＳ７４にて終了位置でないと判断された場合は、そのままテンポ割込処理は終了する。
【００５４】
次に、自動演奏と組み合わされて演奏されるリアルタイム演奏のノートオン処理のフローチャートを図１７に示す。
リアルタイム演奏のノートオンが検出されると、リアルタイム演奏のノートオン処理が開始され、ステップＳ８０にて検出されたノートオンのノートナンバがＰＰＩＴレジスタに格納されると共に、ベロシティがＰＩＮＴレジスタに格納される。次いで、ステップＳ８１にてリアルタイム演奏から前音の音高（ＢＰＩＴ）、前音の強度（ＢＩＮＴ）、前音の音長（ＢＬＥＮ）の前音データが取得される。さらに、現在の演奏位置を示すテンポカウンタの値ＰＯＳの前後の近傍の範囲において、検出されたノートナンバ（ＰＰＩＴ）およびベロシティ（ＰＩＮＴ）に対応する演奏データ中のリアルタイム演奏パートの演奏データにおけるイベントがステップＳ８２にて検出される。続いて、ステップＳ８３にて検出されたイベントの音に基づいてノートオンの音の音長（ＰＬＥＮ）データが取得される。この場合、そのイベント（ノートオンイベント）に対応するノートオフイベントを、リアルタイム演奏パートの演奏データから検出することにより音長情報を得るようにする。
【００５５】
さらに、ステップＳ８４にて検出されたイベントの演奏データにおける次音に基づいて次音の音高（ＦＰＩＴ）、次音の強度（ＦＩＮＴ）、次音の音長（ＦＬＥＮ）の次音データが取得される。次いで、ステップＳ８５にて取得されたノートオンのデータ、および、このノートオンのデータに基づいて演奏データから取得したデータに基づいて部分波形の選択処理が行われる。この部分波形の選択処理では、図１１に示す部分波形選択処理におけるステップＳ３３ないしステップＳ３７の処理が行われる。これにより、ノートオンされた音の特徴データに最も合致する特徴データを備える部分波形が選択される。ノートオンされた音に対応する最適の部分波形が選択されると、ステップＳ８６にて再生回路２４において発音するチャンネルが割り当てられ、ステップＳ８７にて割り当てられた発音チャンネルに選択された部分波形データの情報や音色パラメータ等が設定される。この場合、検出されたノートオンのノートナンバ（ＰＰＩＴ）と選択された部分波形の音高との音高差に基づいてピッチシフト量も設定される。
【００５６】
次いで、ステップＳ８８にて割り当てられた発音チャンネルにノートオンが送出され、再生回路２４は設定された部分波形および音色パラメータやピッチシフト量に基づいて楽音波形を再生する。ノートオンに対応する楽音波形が再生されたらリアルタイム演奏のノートオン処理は終了し、リアルタイム演奏のノートオンが再度発生すると、ノートオン処理が再度起動されて上記したノートオンイベントに対応する楽音波形を再生する処理が繰り返し行われるようになる。
なお、図１７に示すリアルタイム演奏のノートオン処理では、リアルタイム演奏から音高（ＰＰＩＴ），強度（ＰＩＮＴ），前音の音高（ＢＰＩＴ），前音の強度（ＢＩＮＴ），前音の音長（ＢＬＥＮ）を取得するようにしたが、部分波形選択に使用するこれらのデータとしてリアルタイム演奏パートの演奏データから得たデータを使用するようにしてもよい。このようにすると、リアルタイム演奏の各ノートオンで選択すべき部分波形を、該リアルタイム演奏に先立って予め選択しておくことができる。ただし、発音用パラメータの制御に関してはリアルタイム演奏のデータをそのまま使用する。
【００５７】
なお、鍵域を所定の音域毎に区切り、区切った音域毎にサンプリング波形を割り当てるマルチサンプリングにおいて必要となる音高の音符を、図３のフレーズ波形録音における録音したいパートの演奏データのフレーズ中に全て含めておくと、必要となる音高の部分波形データは全て収録データに収録されるようになる。従って、この場合は、フレーズの演奏が完了したら直ちにマルチサンプリングされた部分波形データによる演奏を行なうことができるようになる。この際に、必要となる音長や演奏強度の音符を演奏データのフレーズ中に全て含めておくようにしてもよい。
また、フレーズ波形データを分割した部分波形データを、音色セットとして全部使うように設定しておけば、選択された音色セットを作る手順を省略して直ちに演奏をすることができるようになる。
【００５８】
さらに、各情報をその本来の目的以外の目的で使用してもよい。例えば、歌声をサンプリングした場合に「強度情報」を音声の音素を判別する「音素情報」として使用してもよい。具体的には、例えば、音素「あ〜あ〜あ〜」を示す情報として強度＝６０を割り当て、音素「ら〜ら〜ら〜」を示す情報として強度＝６１を割り当て、音素「どぅ〜どぅ〜どぅ〜」を示す情報として強度＝６２を割り当てる。このように、「強度情報」を「音素情報」として使用した場合、「強度情報」でグループ分けすれば、同じ音素に対応した部分波形データを集めることができるようになる。
さらにまた、演奏データ加工処理において処理したい演奏データを、そのまま、録音に使用する演奏データである対応演奏データとして使用してもよい。このようにすると、収録した波形データを部分波形データに分割処理した後に、得られた分割波形データをそのまま演奏データに張り付けることができるようになり、最適の部分波形データを検出する処理を簡略化することができる。
さらにまた、部分波形データを貼り付けられた演奏データの各音符をエディットすることにより、録音されたフレーズ波形データを間接的にエディットすることができる。
さらにまた、フレーズ波形録音後に、フレーズ波形に対応する演奏データを人間が入力して、その演奏データに基づいて属性情報を作成するようにしてもよい。さらにまた、録音したフレーズ波形を周波数分析し、対応する演奏データを自動生成して、その演奏データに基づいて属性情報を作成するようにしてもよい。
【００５９】
【発明の効果】
本発明は以上のように構成されているので、本発明の波形生成方法によれば、発音制御情報に対応して最適の部分波形を用いて波形を生成することができ、表情に富んだ楽音を生成することができるようになる。
また、本発明の演奏データ処理方法によれば、演奏データ中の各音符の特徴に最適の部分波形データを、予め選択して演奏データの各音符に付与することができる。従って、この演奏データを用いることにより、自動演奏を行なう際のＣＰＵ１０の負荷を増加させることなく、自動演奏における波形生成で最適の部分波形データを選択できるようになる。
さらに、本発明の波形生成方法によれば、リアルタイム演奏により楽音を生成する場合でも、リアルタイム演奏に対応する演奏情報を利用することにより、未来に行う演奏に応じて、現在の演奏により生成する楽音の特性を制御することができる。
さらにまた、演奏する音とその前に演奏する音、あるいはその次に演奏する音の２音の特性データに近い属性データを有する１ないし複数の部分波形を選択するようにすると、演奏する音の楽音を生成するための部分波形として最適の部分波形を選択することができるようになる。
【図面の簡単な説明】
【図１】  本発明の波形生成方法および演奏データ処理方法を備える波形データ録音再生装置のハードウェア構成を示す図である。
【図２】  本発明にかかる波形データ録音再生装置における同期化されている自動演奏される演奏データとフレーズ波形データとの関係を示す図である。
【図３】  本発明にかかる波形データ録音再生装置において波形データを録音する際の態様を示す図である。
【図４】  本発明にかかる波形データ録音再生装置において、フレーズ波形データの分割処理および属性情報付与処理を行う構成の概要を示す図である。
【図５】  本発明にかかる波形データ録音再生装置における収録データの構成を示す図である。
【図６】  本発明にかかる波形データ録音再生装置における演奏用の音色セットの構成を示す図である。
【図７】  本発明にかかる波形データ録音再生装置における演奏用の音色セットにおける部分波形レコードの詳細構成を示す図である。
【図８】  本発明にかかる波形データ録音再生装置における演奏用の音色セットにおける部分波形レコードの部分波形ＩＤの構成を示す図である。
【図９】  本発明にかかる波形データ録音再生装置における音色セット作成手順を示すフローチャートである。
【図１０】  本発明にかかる波形データ録音再生装置で実行される演奏データ加工処理のフローチャートである。
【図１１】  本発明にかかる波形データ録音再生装置で実行される演奏データ加工処理のフローチャートにおけるステップＳ１２の処理を示すフローチャートである。
【図１２】  図１１に示すフローチャートにおけるパターン比較処理のフローチャートである。
【図１３】  本発明にかかる波形データ録音再生装置で実行されるノートオンイベント処理のフローチャートである。
【図１４】  本発明にかかる波形データ録音再生装置で実行されるノートオンイベント処理におけるステップＳ２０の処理を示すフローチャートである。
【図１５】  本発明にかかる波形データ録音再生装置で実行される自動演奏開始処理のフローチャートである。
【図１６】  本発明にかかる波形データ録音再生装置の自動演奏時に実行されるテンポ割込処理のフローチャートである。
【図１７】  本発明にかかる波形データ録音再生装置の自動演奏と組み合わされて演奏されるリアルタイム演奏におけるノートオン処理のフローチャートである。
【符号の説明】
１  波形データ録音再生装置、１０  ＣＰＵ、１１  タイマ、１２  ＲＯＭ、１３  ＲＡＭ、１４  表示器、１５  操作子、１６  音源、１７  ミキサ、１８  ＤＡＣ、１９  サウンドシステム、２０  マイクロフォン、２１  ＡＤＣ、２２録音回路、２３  ＨＤＤ、２４  再生回路、２５  ＭＩＤＩインタフェース、２６  その他インタフェース、３０  演奏データ、３１  自動演奏手段、３２  演奏者、３３  波形録音手段、３４  フレーズ波形データ、３５  クロック同期ライン、３６  ヘッドフォン、３７  スピーカ、３８  スピーカ音除去処理手段、４０  フレーズ波形データ、４１  分割処理手段、４２  属性情報付与処理手段、４３  部分波形データ、４４  演奏データ
【図１】
0003879524.tif 000006
【図２】
0003879524.tif 000007
【図３】
0003879524.tif 000008
【図４】
0003879524.tif 000009
【図５】
0003879524.tif 000010
【図６】
0003879524.tif 000011
【図７】
0003879524.tif 000012
【図８】
0003879524.tif 000013
【図９】
0003879524.tif 000014
【図１０】
0003879524.tif 000015
【図１１】
0003879524.tif 000016
【図１２】
0003879524.tif 000017
【図１３】
0003879524.tif 000018
【図１４】
0003879524.tif 000019
【図１５】
0003879524.tif 000020
【図１６】
0003879524.tif 000021
【図１７】
0003879524.tif 000022