(57)【特許請求の範囲】
【請求項１】
１又は複数の楽音からなる一連の演奏音をサンプリングするステップと、
サンプリングした演奏音をその演奏表現上の特徴に応じてそれぞれ可変の長さからなる複数の時間区間に分割し、分割した各区間毎の波形データをアーティキュレーションエレメントとして取り出すステップと、
取り出された各アーティキュレーションエレメント毎の波形データを所定の複数の楽音要素について分析し、分析した各楽音要素の特性を示すエレメントデータを生成するステップと、
各アーティキュレーションエレメントに対応する前記各楽音要素の特性を示すエレメントデータをデータベースに蓄積するステップと
を具備する楽音データ作成方法。
【請求項２】
前記データベースに蓄積するステップでは、それぞれの演奏表現上の特徴を示す属性情報を各エレメントデータに付加して蓄積する請求項１に記載の楽音データ作成方法。
【請求項３】
前記生成するステップで生成される各楽音要素の特性を示すエレメントデータには、当該区間における波形形成データと時間経過に従う音量変化データ及びピッチ変化データと時間軸制御データのうち少なくとも１つが含まれる請求項１に記載の楽音データ作成方法。
【請求項４】
前記各楽音要素の特性を示すエレメントデータを生成するステップは、前記分析した各楽音要素の特性を示すエレメントデータから、当該区間の中の所定の一部分についての部分的なデータを抽出するステップを含み、
前記データベースに蓄積するステップでは、上記抽出された部分的なデータを当該区間についての各楽音要素の特性を示すエレメントデータとしてデータベースに蓄積する請求項１に記載の楽音データ作成方法。
【請求項５】
発生すべき楽音演奏を複数のアーティキュレーションエレメントの時系列的組み合わせによって指示するステップと、
指示されたアーティキュレーションエレメントに応じて前記データベースから該エレメントに対応する各楽音要素の特性を示すエレメントデータを読み出すステップと、
読み出された各楽音要素の特性を示すエレメントデータに基づき、該アーティキュレーションエレメントに対応する波形データを合成するステップと、
各アーティキュレーションエレメント毎に合成された波形データを順次接続して、前記複数のアーティキュレーションエレメントの時系列的組み合わせからなる一連の演奏音を発生するステップと
を更に具備する請求項１に記載の楽音データ作成方法。
【請求項６】
複数のアーティキュレーションを含む音をサンプリングするステップと、
サンプリングした音をそのアーティキュレーションの特徴に応じてそれぞれ可変の長さからなる複数の時間区間に分割し、分割した各区間毎の波形データをアーティキュレーションエレメントとして取り出すステップと、
取り出された各アーティキュレーションエレメント毎の波形データを所定の複数の楽音要素について分析し、分析した各楽音要素の特性を示すエレメントデータを生成するステップと、
各アーティキュレーションエレメントに対応する前記各楽音要素の特性を示すエレメントデータをデータベースに蓄積するステップと
を具備する楽音データ作成方法。
【請求項７】
アタック部、ボディ部、リリース部などの音の部分についての様々なアーティキュレーションエレメントに対応する部分的楽音波形に関する各楽音要素毎の特性を示すエレメントデータを記憶している記憶手段と、
発生すべき楽音演奏を複数のアーティキュレーションエレメントの時系列的組み合わせによって指示する手段と、
指示されたアーティキュレーションエレメントに応じて前記記憶手段から該エレメントに対応する各楽音要素毎の特性を示すエレメントデータを読み出す手段と、
読み出された各楽音要素毎の特性を示すエレメントデータに基づき、該アーティキュレーションエレメントに対応する部分的楽音波形データを合成する手段と、
各アーティキュレーションエレメント毎に合成された部分的楽音波形データを順次接続して、前記複数のアーティキュレーションエレメントの時系列的組み合わせからなる一連の演奏音を発生する手段と
を具備する楽音合成装置。
【請求項８】
コンピュータ読み取り可能な記録媒体であって、該記録媒体は、アタック部、ボディ部、リリース部などの音の部分についての様々なアーティキュレーションエレメントに対応する部分的楽音波形に関する各楽音要素毎の特性を示すエレメントデータを記憶しているデータベースにアクセスして楽音波形データを合成するためのプログラムを記憶してなり、該プログラムは、コンピュータに、
発生すべき楽音演奏を複数のアーティキュレーションエレメントの時系列的組み合わせによって指示する手順と、
指示されたアーティキュレーションエレメントに応じて前記データベースから該エレメントに対応する各楽音要素毎の特性を示すデータを読み出す手順と、
読み出された各楽音要素毎の特性を示すデータに基づき、該アーティキュレーションエレメントに対応する部分的楽音波形データを合成する手順と、
各アーティキュレーションエレメント毎に合成された部分的楽音波形データを順次接続して、前記複数のアーティキュレーションエレメントの時系列的組み合わせからなる一連の演奏音を発生する手順と
を実行させる命令群からなる。
【請求項９】
１又は複数の楽音からなる一連の演奏音をサンプリングする手段と、
サンプリングした演奏音をその演奏表現上の特徴に応じてそれぞれ可変の長さからなる複数の時間区間に分割し、分割した各区間毎の波形データをアーティキュレーションエレメントとして取り出す手段と、
取り出された各アーティキュレーションエレメント毎の波形データを所定の複数の楽音要素について分析し、分析した各楽音要素の特性を示すエレメントデータを生成する手段と、
各アーティキュレーションエレメントに対応する前記各楽音要素の特性を示すエレメントデータをデータベースに蓄積する手段と
を具備する楽音データ作成装置。
【請求項１０】
コンピュータ読み取り可能な記録媒体であって、該記録媒体は、楽音データを作成するためのプログラムを記憶してなり、該プログラムは、コンピュータに、
１又は複数の楽音からなる一連の演奏音をサンプリングする手順と、
サンプリングした演奏音をその演奏表現上の特徴に応じてそれぞれ可変の長さからなる複数の時間区間に分割し、分割した各区間毎の波形データをアーティキュレーションエレメントとして取り出す手順と、
取り出された各アーティキュレーションエレメント毎の波形データを所定の複数の楽音要素について分析し、分析した各楽音要素の特性を示すエレメントデータを生成する手順と、
各アーティキュレーションエレメントに対応する前記各楽音要素の特性を示すエレメントデータをデータベースに蓄積する手順と
を実行させる命令群からなる。
【請求項１１】
発生すべき楽音演奏を複数のアーティキュレーションエレメントの時系列的組み合わせによって指示するステップであって、前記アーティキュレーションエレメントを最小単位として時系列的に組み合わせることにより、連続する複数音、その中の１音、及びその１音内の部分的音のように複数レベルに階層化された構造を有しており、どのレベルのアーティキュレーションエレメントの時系列的組み合わせでも指定可能であり、
指示されたアーティキュレーションエレメントに応じてデータベースから該エレメントに対応する楽音形成用データを読み出すステップと、
読み出された楽音形成用データに基づき、前記指定されたアーティキュレーションエレメントに対応する波形データを合成するステップと、
各アーティキュレーションエレメント毎に合成された波形データを順次接続して、前記複数のアーティキュレーションエレメントの時系列的組み合わせからなる一連の演奏音を発生するステップと
を具備する楽音合成方法。
【請求項１２】
１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の楽音特性を示すエレメントデータを提供する第１のステップと、
前記複数の時間区間のうちの１つの時間区間を選択する第２のステップと、
複数のエレメントデータを記憶したデータベースから所望のエレメントデータを選択し、前記選択された１つの時間区間におけるエレメントデータと差し替える第３のステップと、
前記第３のステップによる差し替えに伴い、差し替えられた新たなエレメントデータと他のエレメントデータとを接続する設定を行なう第４のステップと、
前記各時間区間毎のエレメントデータに基づき各時間区間毎の楽音波形を生成する第５のステップと
を具備し、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３のステップでのエレメントデータの差し替えに応じた楽音特性を持つことを特徴とする楽音合成方法。
【請求項１３】
１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の複数の楽音要素の変化データを提供する第１のステップと、
前記複数の時間区間のうちの１つの時間区間を選択する第２のステップと、
所定の楽音要素の変化データを複数記憶したデータベースから所望の変化データを選択し、前記選択された１つの時間区間における当該所定の楽音要素の変化データと差し替える第３のステップと、
前記第３のステップによる差し替えに伴い、差し替えられた新たな変化データと他の変化データとを接続する設定を行なう第４のステップと、
前記各時間区間毎の前記複数の楽音要素の変化データに基づき各時間区間毎の楽音波形を生成する第５のステップと
を具備し、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３のステップでの所定の楽音要素の変化データの差し替えに応じた特性を持つことを特徴とする楽音合成方法。
【請求項１４】
アタック部、ボディ部、リリース部などの音の部分に対応する連続する複数の時間区間のそれぞれについて、複数の楽音要素に対応する複数の指示データを、順次、発生する第１のステップと、
前記第１のステップで発生された前記指示データに応じて、前記複数の楽音要素の特性を示す制御波形データをそれぞれ発生する第２のステップと、
前記第２のステップで発生した前記複数の楽音要素の特性を示す制御波形データに基づいて当該時間区間における楽音波形を合成する第３のステップと
を備えた楽音合成方法。
【請求項１５】
前記複数の楽音要素は、当該時間区間における楽音の音色要素と、当該時間区間における楽音の時間要素とを少なくとも含み、前記第３のステップでは、音色要素の指示データに応じて発生された制御波形データに基づく楽音波形を、時間要素の指示データに応じて発生された時間制御波形データに従って時間軸上で伸縮制御して合成する請求項１４に記載の楽音合成方法。
【請求項１６】
前記複数の楽音要素には、更に、当該時間区間における楽音のピッチ要素が含まれており、前記第３のステップでは、ピッチ要素の指示データに応じて発生されたピッチ制御波形データに基づくピッチ制御とは独立に、合成される前記楽音波形の時間軸上での伸縮制御を行うものである請求項１５に記載の楽音合成方法。
【請求項１７】
１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の楽音特性を示すエレメントデータを提供する第１の手段と、
前記複数の時間区間のうちの１つの時間区間を選択する第２の手段と、
複数のエレメントデータを記憶したデータベースから所望のエレメントデータを選択し、前記選択された１つの時間区間におけるエレメントデータと差し替える第３の手段と、
前記第３の手段による差し替えに伴い、差し替えられた新たな変化データと他の変化データとを接続する設定を行なう第４の手段と、
前記各時間区間毎のエレメントデータに基づき各時間区間毎の楽音波形を生成する第５の手段と
を具備し、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３の手段でのエレメントデータの差し替えに応じた楽音特性を持つことを特徴とする楽音合成装置。
【請求項１８】
１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の複数の楽音要素の変化データを提供する第１の手段と、
前記複数の時間区間のうちの１つの時間区間を選択する第２の手段と、
所定の楽音要素の変化データを複数記憶したデータベースから所望の変化データを選択し、前記選択された１つの時間区間における当該所定の楽音要素の変化データと差し替える第３の手段と、
前記第３の手段による差し替えに伴い、差し替えられた新たな変化データと他の変化データとを接続する設定を行なう第４の手段と、
前記各時間区間毎の前記複数の楽音要素の変化データに基づき各時間区間毎の楽音波形を生成する第５の手段と
を具備し、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３の手段での所定の楽音要素の変化データの差し替えに応じた特性を持つことを特徴とする楽音合成装置。
【請求項１９】
アタック部、ボディ部、リリース部などの音の部分に対応する連続する複数の時間区間のそれぞれについて、複数の楽音要素に対応する複数の指示データを、順次、発生する第１の手段と、
前記第１の手段で発生された前記指示データに応じて、前記複数の楽音要素の特性を示す制御波形データをそれぞれ発生する第２の手段と、
前記第２の手段で発生した前記複数の楽音要素の特性を示す制御波形データに基づいて当該時間区間における楽音波形を合成する第３の手段と
を備えた楽音合成装置。
【請求項２０】
コンピュータ読み取り可能な記録媒体であって、該記録媒体は、楽音を合成するためのプログラムを記憶してなり、該プログラムは、コンピュータに、
１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の楽音特性を示すエレメントデータを提供する第１のステップと、
前記複数の時間区間のうちの１つの時間区間を選択する第２のステップと、
複数のエレメントデータを記憶したデータベースから所望のエレメントデータを選択し、前記選択された１つの時間区間におけるエレメントデータと差し替える第３のステップと、
前記第３のステップによる差し替えに伴い、差し替えられた新たな変化データと他の変化データとを接続する設定を行なう第４のステップと、
前記各時間区間毎のエレメントデータに基づき各時間区間毎の楽音波形を生成する第５のステップと
を実行させる命令群からなり、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３のステップでのエレメントデータの差し替えに応じた楽音特性を持つことを特徴とする。
【請求項２１】
コンピュータ読み取り可能な記録媒体であって、該記録媒体は、楽音を合成するためのプログラムを記憶してなり、該プログラムは、コンピュータに、
１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の複数の楽音要素の変化データを提供する第１のステップと、
前記複数の時間区間のうちの１つの時間区間を選択する第２のステップと、
所定の楽音要素の変化データを複数記憶したデータベースから所望の変化データを選択し、前記選択された１つの時間区間における当該所定の楽音要素の変化データと差し替える第３のステップと、
前記第３のステップによる差し替えに伴い、差し替えられた新たな変化データと他の変化データとを接続する設定を行なう第４のステップと、
前記各時間区間毎の前記複数の楽音要素の変化データに基づき各時間区間毎の楽音波形を生成する第５のステップと
を実行させる命令群からなり、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３のステップでの所定の楽音要素の変化データの差し替えに応じた特性を持つことを特徴とする。
【請求項２２】
コンピュータ読み取り可能な記録媒体であって、該記録媒体は、楽音を合成するためのプログラムを記憶してなり、該プログラムは、コンピュータに、
アタック部、ボディ部、リリース部などの音の部分に対応する連続する複数の時間区間のそれぞれについて、複数の楽音要素に対応する複数の指示データを、順次、発生する第１のステップと、
前記第１のステップで発生された前記指示データに応じて、前記複数の楽音要素の特性を示す制御波形データをそれぞれ発生する第２のステップと、
前記第２のステップで発生した前記複数の楽音要素の特性を示す制御波形データに基づいて当該時間区間における楽音波形を合成する第３のステップと
を実行させる命令群からなる。
【請求項２３】
楽音波形を形成するためのデータを記憶する記憶媒体を具備し、該記憶媒体は、
連続する楽音を複数の時間区間に分割し、各時間区間のそれぞれについて、複数の楽音要素に対応する複数の指示データを記憶した第１の記憶部と、
複数の楽音要素のそれぞれについて複数の制御波形データを記憶した第２の記憶部と
を具備し、
前記第１の手段は、前記第１の記憶部から前記指示データを読み出し、
前記第２の手段は、前記第１の記憶部から読み出された前記指示データに応じて前記第２の記憶部から前記制御波形データを読み出すことを特徴とする請求項１９に記載の楽音合成装置。
【請求項２４】
前記第１の記憶部に記憶する各時間区間毎の各楽音要素についての前記指示データは、任意に書替え可能であり、該指示データを書き替えることにより、該指示データによって読み出される前記制御波形データが変更可能である請求項２３に記載の楽音合成装置。
【請求項２５】
１又は複数の楽音からなる一連の演奏音をサンプリングして得た楽音のアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応する部分的時間区間についての部分音データを多数記憶した記憶部と、
所定の様々な奏法のうちの所望の奏法の指示に応じて、前記記憶部から該奏法に対応する１又は複数の部分音データを選択する選択部と、
選択された部分音データに基づき各部分音の波形を生成し、生成した部分音波形の連なりによって前記所望の奏法に従う演奏音を生成する波形生成部と
を備える音合成装置。
【請求項２６】
連続する１又は複数の音からなる音楽的に有り得る複数の奏法のそれぞれについて、該奏法を構成する１又は複数の音をアタック部、ボディ部、リリース部などの音の部分に対応する複数の部分的時間区間に分割し、各部分的時間区間毎の奏法エレメントを順次指示する奏法エレメントシーケンスデータを記憶する第１のデータベース部と、
様々な奏法エレメントに対応する部分的音波形を具体的に表現するデータを記憶する第２のデータベース部と、
所望の奏法に対応して前記奏法エレメントシーケンスデータを選択し、選択された奏法エレメントシーケンスデータを前記第１のデータベース部から順次読み出し、読み出した奏法エレメントシーケンスデータに応じて前記第２のデータベース部から前記部分的音波形を具体的に表現するデータを読み出し、これにより、前記各部分的時間区間毎の奏法エレメントに対応する部分的音波形を順次生成する波形生成部と
を具備するサウンド合成装置。
【請求項２７】
前記第１のデータベース部に記憶する前記奏法エレメントシーケンスデータは、１つの奏法エレメントを１又は複数の楽音要素によって記述するために、該１又は複数の楽音要素の具体的内容をそれぞれ指示する１又は複数のエレメントベクトルデータを含んでいる請求項２６に記載のサウンド合成装置。
【請求項２８】
少なくとも１つの前記エレメントベクトルデータが、１つの前記部分的時間区間の一部についての前記楽音要素の内容を指示する部分的ベクトルデータからなる請求項２７に記載のサウンド合成装置。
【請求項２９】
前記第２のデータベース部は、前記エレメントベクトルデータに対応する前記楽音要素の内容を具体的に表現するテンプレートデータを記憶している請求項２７に記載のサウンド合成装置。
【請求項３０】
前記奏法エレメントシーケンスデータは個々の奏法エレメントを指示するインデックスデータを含んでおり、個々の該インデックスデータに対応して、当該奏法エレメントに対応する部分的音波形を構成する１または複数の楽音要素のエレメントベクトルデータが含まれており、共通するエレメントベクトルデータを異なる奏法エレメント間で使用することが可能であり、これにより前記第２のデータベース部に記憶するテンプレートデータを異なる奏法エレメント間で共用できることを特徴とする請求項２９に記載のサウンド合成装置。
【請求項３１】
前記第２のデータベース部は、前記部分的ベクトルデータに対応して、前記部分的時間区間の一部についての前記楽音要素の内容を表現する部分的テンプレートデータを記憶しており、この部分的テンプレートデータは、音を合成する時に、所定の前記部分的時間区間における前記楽音要素の全体の内容を再生するために使用されるものである請求項２８に記載のサウンド合成装置。
【請求項３２】
前記第１のデータベース部に記憶する前記奏法エレメントシーケンスデータは、隣接する奏法エレメント同士の接続の仕方を記述するルールデータを含んでいる請求項２６に記載のサウンド合成装置。
【請求項３３】
前記第１のデータベース部は、ユーザが作成した任意の奏法エレメントシーケンスデータを記憶するための記憶領域を持っている請求項２６に記載のサウンド合成装置。
【請求項３４】
前記第１のデータベース部に記憶する前記奏法エレメントシーケンスデータは、１つの奏法エレメントを１又は複数の楽音要素によって記述するために、該１又は複数の楽音要素の内容をそれぞれ指示する１又は複数のエレメントベクトルデータを含んでおり、少なくとも１つの前記エレメントベクトルデータが、１つの前記部分的時間区間の一部についての前記楽音要素の内容を指示する部分的ベクトルデータからなり、
前記波形生成部は、前記１又は複数のエレメントベクトルデータに対応する１又は複数の楽音要素の組合せによって当該部分的時間区間の奏法エレメントに対応する前記部分的音波形を生成するものであり、前記エレメントベクトルデータが前記部分的ベクトルデータからなるか否かを判断し、部分的ベクトルデータからなる場合は、該部分的ベクトルデータによって指示された楽音要素の内容を繰返すことにより当該部分的時間区間における該楽音要素の全体の内容を再生するようにした請求項２６に記載のサウンド合成装置。
【請求項３５】
一連の音楽演奏音をサンプリングした波形データをアタック部、ボディ部、リリース部などの音の部分に対応して複数の可変の時間区間に分割し、分割した各時間区間毎の波形データを示す情報を記憶してなる記憶部と、
ユーザーの操作に応じて任意の前記時間区間における前記波形データの構成要素を変更又は差し替え又は削除する編集を行う編集部と、
前記編集部により前記波形データの構成要素が差し替えられたとき、差し替えられた時間区間における波形データの構成要素とその前後の時間区間における波形データの対応する構成要素とを接続する設定を行なうデータ設定部と、
前記各時間区間毎の波形データを順次生成し、一連の音楽演奏音を再生する波形生成部と
を具備し、前記時間区間を単位として前記一連の音楽演奏音をユーザが任意に操作できることを特徴とする音楽演奏装置。
【請求項３６】
前記記憶部は、前記各時間区間毎の波形データの奏法上の特徴を示す属性情報を付加的に記憶しており、前記編集部による編集に際して、ユーザーが該属性情報を参照できるようにした請求項３５に記載の音楽演奏装置。
【請求項３７】
前記記憶部は、様々な演奏音についての様々な部分的時間区間に対応する複数の波形データを記憶する第１の部分と、所定の前記一連の音楽演奏音の各時間区間に対応して、波形データを指示するためのベクトルデータを記憶する第２の部分とを有し、
前記編集部は、任意の前記時間区間に対応するベクトルデータを変更又は差し替え又は削除することにより、該時間区間に対応する波形データの編集を行うものであり、
前記波形生成部は、前記各時間区間に対応するベクトルデータに応じて前記記憶部から波形データを読み出すことにより、前記各時間区間毎の波形データを順次生成するものである請求項３５に記載の音楽演奏装置。
【請求項３８】
一連の音楽演奏音をサンプリングした波形データをアタック部、ボディ部、リリース部などの音の部分に対応して複数の可変の時間区間に分割した当該各時間区間毎の波形データを示す情報を記憶してなる記憶部を使用して、音楽演奏を行う方法であって、
ユーザーの操作に応じて任意の前記時間区間における前記波形データの構成要素を変更又は差し替え又は削除する編集を行うステップと、
前記編集を行うステップにより前記波形データの構成要素が差し替えられたとき、差し替えられた時間区間における波形データの構成要素とその前後の時間区間における波形データの対応する構成要素とを接続する設定を行なうステップと、
前記各時間区間毎の波形データを順次生成し、一連の音楽演奏音を再生するステップと
を具備し、前記時間区間を単位として前記一連の音楽演奏音をユーザが任意に操作できることを特徴とする方法。
【請求項３９】
コンピュータ読み取り可能な記録媒体であって、該記録媒体は、一連の音楽演奏音をサンプリングした波形データをアタック部、ボディ部、リリース部などの音の部分に対応して複数の可変の時間区間に分割した当該各時間区間毎の波形データを示す情報を記憶してなる記憶部を使用して、音楽演奏を行うためのプログラムを記憶してなり、該プログラムは、コンピュータに、
ユーザーの操作に応じて任意の前記時間区間における前記波形データの構成要素を変更又は差し替え又は削除する編集を行うステップと、
前記編集を行うステップにより前記波形データの構成要素が差し替えられたとき、差し替えられた時間区間における波形データの構成要素とその前後の時間区間における波形データの対応する構成要素とを接続する設定を行なうステップと、
前記各時間区間毎の波形データを順次生成し、一連の音楽演奏音を再生するステップと
を実行させる命令群からなる。
【請求項４０】
アタック部、ボディ部、リリース部などの音の部分についての様々なアーティキュレーションエレメントに対応する部分的音波形を表現するテンプレートデータを記憶するデータベースを利用してサウンド演奏を行う方法であって、
アタック部、ボディ部、リリース部などの音の部分に対応する音の部分的時間区間における演奏表現上の特徴を示すアーティキュレーション属性情報を、複数組み合わせて指示することにより、連続する複数の時間区間にわたる一連のサウンド演奏を指示する第１のステップと、
前記指示されたアーティキュレーション属性情報に対応するアーティキュレーションエレメントを示すインデックスデータを発生する第２のステップと、
前記インデックスデータに基づき、所定の前記アーティキュレーションエレメントに対応する前記部分的音波形を表現するテンプレートデータを前記データベースから読み出し、これに基づき、前記指示された各アーティキュレーション属性情報に対応する部分的音波形を順次生成する第３のステップと
を具備するサウンド演奏方法。
【請求項４１】
音楽的なアーティキュレーションを伴う複数の演奏フレーズのそれぞれについて、該演奏フレーズを構成する１又は複数の音をアタック部、ボディ部、リリース部などの音の部分に対応する複数の部分的時間区間に分割し、各部分的時間区間毎のアーティキュレーションエレメントを順次指示するアーティキュレーションエレメントシーケンスを記憶する第１のデータベース部と、アタック部、ボディ部、リリース部などの音の部分についての様々なアーティキュレーションエレメントに対応する部分的音波形を表現するテンプレートデータを記憶する第２のデータベース部とを具備するデータベースを利用して音楽演奏を行う方法であって、
アタック部、ボディ部、リリース部などの音の部分に対応する音の部分的時間区間における演奏表現上の特徴を示すアーティキュレーション属性情報を、複数組み合わせて指示することにより、連続する複数の時間区間にわたる一連の音楽演奏を指示する第１のステップと、
前記指示された複数のアーティキュレーション属性情報の組合せに基づき、前記第１のデータベース部からアーティキュレーションエレメントシーケンスを選択する第２のステップと、
選択されたアーティキュレーションエレメントシーケンスを前記第１のデータベース部から順次読み出し、読み出したアーティキュレーションエレメントシーケンスに応じて前記第２のデータベース部から前記部分的音波形を表現するテンプレートデータを読み出し、これにより、前記各部分的時間区間毎のアーティキュレーションエレメントに対応する部分的音波形を順次生成する第３のステップと
を具備する音楽演奏方法。
【請求項４２】
前記第１のステップでは、任意の部分的時間区間におけるアーティキュレーション属性情報をユーザーによって任意に指示又は変更又は削除することができる請求項４１に記載の音楽演奏方法。
【請求項４３】
アタック部、ボディ部、リリース部などの音の部分についての様々なアーティキュレーションエレメントに対応する部分的音波形を表現するテンプレートデータを記憶するデータベースと、
アタック部、ボディ部、リリース部などの音の部分に対応する音の部分的時間区間における演奏表現上の特徴を示すアーティキュレーション属性情報を、複数組み合わせて指示することにより、連続する複数の時間区間にわたる一連のサウンド演奏を指示する第１の手段と、
前記指示されたアーティキュレーション属性情報に対応するアーティキュレーションエレメントを示すインデックスデータを発生する第２の手段と、
前記インデックスデータに基づき、所定の前記アーティキュレーションエレメントに対応する前記部分的音波形を表現するテンプレートデータを前記データベースから読み出し、これに基づき、前記指示された各アーティキュレーション属性情報に対応する部分的音波形を順次生成する第３の手段と
を具備するサウンド演奏装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、電子楽器等においてアーティキュレーションのついた高品質な楽音波形を発生することができかつこれを容易に制御することができるようにした楽音データ作成方法及び装置並びに記録媒体に関し、電子楽器に限らず、ゲーム機やパーソナルコンピュータその他マルチ・メディア機器等、各種の用途の楽音又はサウンド発生機器における音源装置及び方法として広範囲に応用できるものである。
なお、この明細書において、「楽音」とは、音楽の音に限られるものではなく、人声音や各種効果音、自然界にある音など、音（サウンド）一般を含む広義の概念で用いるものとする。
【０００２】
【従来の技術】
電子楽器などに用いられている波形メモリ読み出し方式（ＰＣＭ：パルス符号変調方式）の音源においては、所定の音色に対応する１又は複数周期の波形のデータをメモリに記憶しておき、この波形データを発生しようとする楽音の所望の音高（ピッチ）に対応する所望の読出し速度で繰返し読み出すことにより、持続的な楽音波形を生成することが行われている。また、楽音の発音開始から終了までの全波形のデータをメモリに記憶しておき、この波形データを発生しようとする楽音の所望の音高（ピッチ）に対応する所望の読出し速度で読み出すことにより、１つの音を発音生成することも行われている。
この種のＰＣＭ音源において、メモリに記憶した波形を単にそのまま読み出したものを楽音として発生するだけではなく、何らかの変更を加えて、発生楽音に表現力を持たせようとする場合、音高、音量、音色という３つのカテゴリの楽音要素に関して制御を行うことが従来より為されている。音高に関しては、任意のピッチエンベロープに従って読み出し速度を適宜変調することにより、ビブラートやアタックピッチ等のピッチ変調効果を付与することが為される。音量に関しては、読み出した波形データに対して所要のエンベロープ波形に従う音量振幅エンベロープを付与することや、読み出した波形データの音量振幅を周期的に変調制御することによりトレモロ効果等を付与することなどが為される。また、音色に関しては、読み出した波形データをフィルタ処理することにより、適当な音色制御がなされる。
【０００３】
また、実際に生演奏された連続的な演奏音（フレーズ）を一括してサンプリングして１つの記録トラックに貼り付け（記録し）、こうして複数のトラックに貼り付けた各フレーズ波形を、別途記録したシーケンス演奏データに基づく自動演奏音と共に組み合わせて再生発音するようにしたマルチトラックシーケンサも知られている。
また、実際に生演奏された１曲の楽音波形データ全部をＰＣＭデータにて記録し、これを単純に再生するものは、ＣＤ（コンパクトディスク）における音楽記録方式としてよく知られている。
【０００４】
【発明が解決しようとする課題】
ところで、ピアノ、バイオリン、サックス等の任意の自然楽器についての熟練した演奏家が該楽器によって一連の楽曲フレーズを演奏する場合、その演奏音の内容は、たとえ同じ楽器で演奏されているとはいえ、一様なものではなく、各音毎に、あるいは音と音のつながりにおいて、あるいは音の立上り部や持続部または立下り部等の部分において、曲想に応じてあるいは演奏家の感性等に応じて、微妙に異なる“アーティキュレーション”で演奏される。そのような“アーティキュレーション”の存在が、聴者に本当に良い音としての印象を与える。
ＣＤにおける音楽記録方式のように、熟練した演奏家が行った音楽演奏を全部そっくりＰＣＭ波形データとして記録する方式は、生演奏のリアルで高品質な再生が可能であるから、演奏家が演奏した通りの“アーティキュレーション”をリアルに再現することができる。しかし、決まった曲（記録した通りの曲）の単なる再生装置としてしか利用することができないものであるため、電子楽器やマルチメディア機器等においてユーザーの自由な音作りや編集操作を許容するインタラクティブな楽音作成技術としては利用することができない。
【０００５】
これに対して、電子楽器等で公知のＰＣＭ音源技術においては、上述のように、ユーザーによる音作りを許容するものであり、発生楽音に或る程度の表現力を持たせることができるものである。しかし、音質と表現力の両面において、自然な“アーティキュレーション”を実現するには、不十分なものであった。例えば、一般にこの種のＰＣＭ音源技術においては、メモリに記憶する波形データは、自然楽器で演奏した単音をサンプリングしたものを記憶するだけであるので、発生楽音の音質に限度があった。特に、演奏時における音と音のつながりのアーティキュレーション若しくは奏法を高品質に表現することはできなかった。例えば、先行する音からその次の音に滑らかに変化させるようなスラー奏法の場合、従来の電子楽器等では、単にメモリからの波形データ読み出し速度を滑らかに変化させたり、発生音に付与する音量エンべロープを制御する等の手法に頼っているにすぎず、自然楽器の生演奏に匹敵するような音質のアーティキュレーション若しくは奏法を実現することはできなかった。また、同じ楽器の同じ音高の音であっても、曲フレーズの違いに応じて、あるいは同じ曲フレーズであっても演奏機会の違い等に応じて、その立上り部等の部分において異なるアーティキュレーションを示すことがあるが、そのような微妙なアーティキュレーションの違いを表現することも、電子楽器等で公知のＰＣＭ音源技術においては実現することができなかった。
【０００６】
また、演奏表現に応じた発生楽音の制御も、従来の電子楽器等においては比較的単調なものであり、十分とは言えなかった。例えば、鍵等の演奏タッチに応じた楽音制御を行うことが知られているが、その場合も、タッチに応じて音量の変化特性や音色フィルタの特性を制御することができる程度にすぎず、例えば楽音の立ち上がりから立ち下がりまでの全発音区間のうちの各部分的区間毎に楽音特性の制御を自由に行うようなことはできなかった。また、発生音の音色制御に関しては、演奏に先立って一旦１つの音色が選択されると、その選択された音色に対応する波形データがメモリから読み出され、以後、発音中は様々な演奏表現に応じて該音色に対応する波形データがフィルタ等で可変制御されるだけであったので、演奏表現に応じた音色変化が十分ではなかった。また、ピッチや音量等の制御エンベロープ波形は、エンベロープの立ち上がりから立ち下がりまでの一連のエンベロープを１単位としてその形状等の設定制御がなされており、部分的にエンベロープを入れ替える等の操作が自由に行えるようにはなっていない。
【０００７】
一方、上記マルチトラックシーケンサのような方式では、生演奏のフレーズ波形データを貼り付けるだけであったので、フレーズ波形の部分的な編集処理（部分的差し替えや特性制御など）を行うことは全くできず、これも、電子楽器やマルチメディア機器等においてユーザーの自由な音作りを許容するインタラクティブな楽音作成技術としては利用することができなかった。
また、音楽的な演奏音に限らず、自然界に存在する一般的な音も、その時間的経過等に従って、繊細な“アーティキュレーション”を豊富に含んでいるが、従来の技術では、自然界に存在する音の“アーティキュレーション”を制御可能に巧みに再現することはできなかった。
【０００８】
この発明は上述の諸点に鑑みてなされたもので、電子楽器や電子的装置を用いて楽音（前述の通り音楽的な音に限らずその他の一般的な音をも含む）を発生する場合において、“アーティキュレーション”のリアルな再現を実現すると共にその制御を容易にし、電子楽器やマルチメディア機器等においてユーザーの自由な音作りと編集操作を許容するインタラクティブな高品質楽音作成技術を提供することを目的とする。
なお、本明細書において“アーティキュレーション”（articulation）の語は、通常知られている意味で用いるものとし、例えば、「音節」、「音と音のつながり」、「複数の音のかたまり（フレーズ）」、「音の部分的な特徴」、「発音の手法」、「奏法」、「演奏表現」等の概念を全て含む広い概念で用いるものとする。
【０００９】
【課題を解決するための手段】
この発明に係る楽音データ作成方法は、１又は複数の楽音からなる一連の演奏音をサンプリングするステップと、サンプリングした演奏音をその演奏表現上の特徴に応じてそれぞれ可変の長さからなる複数の時間区間に分割し、分割した各区間毎の波形データをアーティキュレーションエレメントとして取り出すステップと、取り出された各アーティキュレーションエレメント毎の波形データを所定の複数の楽音要素について分析し、分析した各楽音要素の特性を示すエレメントデータを生成するステップと、各アーティキュレーションエレメントに対応する前記各楽音要素の特性を示すエレメントデータをデータベースに蓄積するステップとを具備する。
このようなアーティキュレーションエレメントを単位とする波形データの抽出とそれに基づくデータベースの作成は、それに基づいて楽音における"アーティキュレーション"のリアルな再現を可能にすると共に、アーティキュレーションエレメントを構成する各楽音要素毎のエレメントデータを用いることで、該アーティキュレーションエレメントの各楽音要素を単位としてユーザーによる"アーティキュレーション"の制御を容易にするものである。
【００１０】
更に、上記のようにして作成されたデータベースを使用して行うこの発明に係る楽音合成方法は、発生すべき楽音演奏を複数のアーティキュレーションエレメントの時系列的組み合わせによって指示するステップと、指示されたアーティキュレーションエレメントに応じて前記データベースから該エレメントに対応する各楽音要素の特性を示すエレメントデータを読み出すステップと、読み出された各楽音要素の特性を示すエレメントデータに基づき、該アーティキュレーションエレメントに対応する波形データを合成するステップと、各アーティキュレーションエレメント毎に合成された波形データを順次接続して、前記複数のアーティキュレーションエレメントの時系列的組み合わせからなる一連の演奏音を発生するステップとを具備する。これによって、複数のアーティキュレーションエレメントの時系列的組み合わせによって、所望の楽音演奏を実現することができ、かつ、その制御を"アーティキュレーション"単位で自由に行うことができる。従って、従来にない、"アーティキュレーション"を含む高品質な楽音の合成を、ユーザーによるインタラクティブな制御を可能にしつつ、実現することができる。
【００１１】
この発明に係る楽音合成装置は、アタック部、ボディ部、リリース部などの音の部分についての様々なアーティキュレーションエレメントに対応する部分的楽音波形に関する各楽音要素毎の特性を示すエレメントデータを記憶している記憶手段と、発生すべき楽音演奏を複数のアーティキュレーションエレメントの時系列的組み合わせによって指示する手段と、指示されたアーティキュレーションエレメントに応じて前記記憶手段から該エレメントに対応する各楽音要素毎の特性を示すエレメントデータを読み出す手段と、読み出された各楽音要素毎の特性を示すエレメントデータに基づき、該アーティキュレーションエレメントに対応する部分的楽音波形データを合成する手段と、各アーティキュレーションエレメント毎に合成された部分的楽音波形データを順次接続して、前記複数のアーティキュレーションエレメントの時系列的組み合わせからなる一連の演奏音を発生する手段とを具備する。この場合も、上述と同様に、複数のアーティキュレーションエレメントの時系列的組み合わせによって、所望の楽音演奏を実現することができ、かつ、その制御を"アーティキュレーション"単位で自由に行うことができる。
【００１２】
更に、この発明に係る楽音合成方法は、１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の楽音特性を示すエレメントデータを提供する第１のステップと、前記複数の時間区間のうちの１つの時間区間を選択する第２のステップと、複数のエレメントデータを記憶したデータベースから所望のエレメントデータを選択し、前記選択された１つの時間区間におけるエレメントデータと差し替える第３のステップと、前記第３のステップによる差し替えに伴い、差し替えられた新たなエレメントデータと他のエレメントデータとを接続する設定を行なう第４のステップと、前記各時間区間毎のエレメントデータに基づき各時間区間毎の楽音波形を生成する第５のステップとを具備し、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３のステップでのエレメントデータの差し替えに応じた楽音特性を持つことを特徴とする。これによって、連続する楽音の一部を、自在に他の音エレメントに置き換える等の操作を行うことができ、アーティキュレーションを含む高品質な楽音を、自由な制御性でもって、生成することができる。
【００１３】
また、この発明に係る楽音合成方法は、１又は複数の楽音からなる一連の演奏音をサンプリングして得た連続する楽音をアタック部、ボディ部、リリース部など演奏表現の異なる音の部分に対応して複数の時間区間に分割し、各時間区間毎の複数の楽音要素の変化データを提供する第１のステップと、前記複数の時間区間のうちの１つの時間区間を選択する第２のステップと、所定の楽音要素の変化データを複数記憶したデータベースから所望の変化データを選択し、前記選択された１つの時間区間における当該所定の楽音要素の変化データと差し替える第３のステップと、前記第３のステップによる差し替えに伴い、差し替えられた新たな変化データと他の変化データとを接続する設定を行なう第４のステップと、前記各時間区間毎の前記複数の楽音要素の変化データに基づき各時間区間毎の楽音波形を生成する第５のステップとを具備し、生成された各時間区間毎の楽音波形の連続的接続によって前記連続する楽音が合成され、この合成される楽音は前記第３のステップでの所定の楽音要素の変化データの差し替えに応じた特性を持つことを特徴とする。これにより、連続する楽音のうちの選択された一部の所定の楽音要素についての特性を、自在に他の特性に置き換える等の操作を行うことができ、アーティキュレーションを含む高品質な楽音を、自由な制御性でもって、生成することができる。
【００１４】
この発明に係る楽音合成方法は、アタック部、ボディ部、リリース部などの音の部分に対応する連続する複数の時間区間のそれぞれについて、複数の楽音要素に対応する複数の指示データを、順次、発生する第１のステップと、前記第１のステップで発生された前記指示データに応じて、前記複数の楽音要素の特性を示す制御波形データをそれぞれ発生する第２のステップと、前記第２のステップで発生した前記複数の楽音要素の特性を示す制御波形データに基づいて当該時間区間における楽音波形を合成する第３のステップとを備える。これにより、複数の楽音要素が対応する制御波形データに応じて複雑に変化する楽音を生成することができ、楽音の時間変化の自由度を高め、バリエーションを豊かにすることができる。
【００１５】
更に、この発明に係るサウンド合成装置は、連続する１又は複数の音からなる音楽的に有り得る複数の奏法のそれぞれについて、該奏法を構成する１又は複数の音をアタック部、ボディ部、リリース部などの音の部分に対応する複数の部分的時間区間に分割し、各部分的時間区間毎の奏法エレメントを順次指示する奏法エレメントシーケンスデータを記憶する第１のデータベース部と、様々な奏法エレメントに対応する部分的音波形を具体的に表現するデータを記憶する第２のデータベース部と、所望の奏法に対応して前記奏法エレメントシーケンスデータを選択し、選択された奏法エレメントシーケンスデータを前記第１のデータベース部から順次読み出し、読み出した奏法エレメントシーケンスデータに応じて前記第２のデータベース部から前記部分的音波形を具体的に表現するデータを読み出し、これにより、前記各部分的時間区間毎の奏法エレメントに対応する部分的音波形を順次生成する波形生成部とを具備する。これにより、奏法エレメントシーケンスによって複数の各部分的時間区間毎の奏法エレメントが順次指示され、指示された奏法エレメントに対応する部分的音波形を順次生成することで、アーティキュレーションを含む高品質なサウンドの合成を行うことができる。
【００１６】
更に、この発明に係る音楽演奏装置は、一連の音楽演奏音をサンプリングした波形データをアタック部、ボディ部、リリース部などの音の部分に対応して複数の可変の時間区間に分割し、分割した各時間区間毎の波形データを示す情報を記憶してなる記憶部と、ユーザーの操作に応じて任意の前記時間区間における前記波形データの構成要素を変更又は差し替え又は削除する編集を行う編集部と、前記編集部により前記波形データの構成要素が差し替えられたとき、差し替えられた時間区間における波形データの構成要素とその前後の時間区間における波形データの対応する構成要素とのつながりを保証するための設定を行なうデータ設定部と、前記各時間区間毎の波形データを順次生成し、一連の音楽演奏音を再生する波形生成部とを具備し、前記時間区間を単位として前記一連の音楽演奏音をユーザが任意に操作できることを特徴とするものである。これにより、一連の音楽演奏にあたって、"アーティキュレーション"を含む高品質な楽音にてその音楽を再生演奏することができ、かつ、分割した各時間区間単位で、その波形データの構成要素を変更又は差し替え又は削除する編集をユーザーによって自由に行うことができるのものとなる。従って、従来にない、"アーティキュレーション"を含む高品質な音楽演奏の再生を、ユーザーによるインタラクティブな制御を可能にしつつ、実現することができる。
【００１７】
好ましい実施態様の１つとして、前記記憶部は、前記各時間区間毎の波形データの奏法上の特徴を示す属性情報を付加的に記憶しており、前記編集部による編集に際して、ユーザーが該属性情報を参照できるようにするとよい。このように属性情報を参照することで、ユーザーによるインタラクティブな制御を、より一層やり易いものとすることができる。
【００１９】
更に、この発明に係るサウンド演奏方法は、アタック部、ボディ部、リリース部などの音の部分についての様々なアーティキュレーションエレメントに対応する部分的音波形を表現するテンプレートデータを記憶するデータベースを利用してサウンド演奏を行う方法であって、アタック部、ボディ部、リリース部などの音の部分に対応する音の部分的時間区間における演奏表現上の特徴を示すアーティキュレーション属性情報を、複数組み合わせて指示することにより、連続する複数の時間区間にわたる一連のサウンド演奏を指示する第１のステップと、前記指示されたアーティキュレーション属性情報に対応するアーティキュレーションエレメントを示すインデックスデータを発生する第２のステップと、前記インデックスデータに基づき、所定の前記アーティキュレーションエレメントに対応する前記部分的音波形を表現するテンプレートデータを前記データベースから読み出し、これに基づき、前記指示された各アーティキュレーション属性情報に対応する部分的音波形を順次生成する第３のステップとを具備するものである。これにより、音の部分的時間区間における演奏表現上の特徴を示すアーティキュレーション属性情報を、複数組み合わせて指示することで、"アーティキュレーション"を含む高品質なサウンド演奏を自由に組み立てることができ、高品質なサウンド演奏を豊かな制御性で自由に生成することができる。
【００２０】
この発明に係る楽音データ作成及び楽音合成の技術は、音のアーティキュレーションを分析し、アーティキュレーションエレメントを単位として楽音編集及び合成処理を行うことにより、音のアーティキュレーションをモデルして楽音合成を行うものである。従って、この技術をＳＡＥＭ（Sound Articulation Element Modeling）技術と呼ぶことにする。
【００２１】
この発明は、方法発明として構成し、実施することができるのみならず、装置発明として構成し、実施することもできる。また、この発明は、コンピュータプログラムの形態で実施することができるし、そのようなコンピュータプログラムを記憶した記録媒体の形態で実施することもできる。更に、この発明は、新規なデータ構造からなる波形又は楽音データを記憶した記録媒体の形態で実施することもできる。
【００２２】
【発明の実施の形態】
以下、添付図面を参照してこの発明の実施の形態を詳細に説明しよう。
〔楽音データベースの作成例〕
前述の通り、ピアノ、バイオリン、サックス等の任意の自然楽器についての熟練した演奏家が該楽器によって一連の楽曲フレーズを演奏する場合、その演奏音の内容は、例えば同じ楽器で演奏されているとはいえ、一様なものではなく、各音毎に、あるいは音と音のつながりにおいて、あるいは音の立上り部や持続部または立下り部等の部分において、曲想に応じてあるいは演奏家の感性等に応じて、微妙に異なる“アーティキュレーション”で演奏される。そのような“アーティキュレーション”の存在が、聴者に本当に良い音としての印象を与える。
楽器演奏の場合、一般に、“アーティキュレーション”は、演奏家による「奏法」若しくは「演奏表現」の反映として顕れる。従って、以下の説明では、「奏法」若しくは「演奏表現」と“アーティキュレーション”の語がどちらも実質的に同義のことを指して使用されることがあることを予めことわっておく。たとえば、「奏法」には、スタカート、テヌート、スラー、ビブラート、トレモロ、クレッシェンド、デクレッシェンドなど、その他様々なものがある。演奏家が楽器によって一連の楽曲フレーズを演奏する場合、楽譜の指示に従って、あるいは自らの感性に従って、各演奏局面で様々な奏法が使用され、それぞれの奏法に応じた“アーティキュレーション”を生み出す。
【００２３】
この発明に従う楽音データベースの作成手順の一例が図１に示されている。
最初のステップＳ１は、１又は複数の楽音からなる一連の演奏音をサンプリングするステップである。ここでは、例えば、或る特定の自然楽器についての熟練した演奏家が、該楽器によって所定の一連の楽曲フレーズを演奏する。この一連の演奏音をマイクロフォンでピックアップし、所定のサンプリング周波数にしたがってサンプリングし、該演奏フレーズ全体についてのＰＣＭ符号化された波形データを得る。この波形データは、音楽的にも優れた、高品質なデータである。説明のために、このステップＳ１でのサンプリングのために演奏される一連の楽曲フレーズの楽譜例を、図２（ａ）に示す。図２（ａ）の楽譜の上側に付記された「奏法記号」は、この楽譜に示された楽曲フレーズがどのような奏法で演奏されるかを例示的に示すものである。このような「奏法記号」付きの楽譜は、このステップＳ１でのサンプリングの際に不可欠なものではない。通常の楽譜に従って演奏家が該楽曲フレーズを演奏し、その後での、サンプリングした波形データの分析によって、時間経過に従う各演奏局面での奏法を判断し、このような奏法記号付きの楽譜を作成するようにしてよい。追って説明するように、このような奏法記号付きの楽譜は、ステップＳ１でのサンプリングの際に役立つというよりは、むしろ、ここでサンプリングしたデータに基づいて作成されたデータベースから一般のユーザーが所望のデータを引き出しそれらを接続して所望の演奏音を作成する際に、該一般ユーザーにとって大いに手助けとなると思われるものである。しかし、図２（ａ）の楽譜で示すフレーズがどのように演奏されたかを例示的に説明するために、同図において例示された奏法記号の意味についてここで説明しておく。
【００２４】
最初の小節における３つの音符に対応して描かれた黒丸の奏法記号は「スタカート」奏法を示し、黒丸の大きさは音量の程度を示している。
その次の音符に対応して「Atack-Mid, No-Vib」の文字と共に描かれた奏法記号は、「中程度のアタックで、ビブラートはつけない」奏法を記述している。
２小節目の後半のスラーで結ばれた音符に対応して「Atk-Fast, Vib-Soon-Fast, Release-Smoothly」の文字で描かれた奏法記号は、「アタックは素速く立上り、ビブラートはすぐに速くし、リリースはスムーズに」という奏法を記述している。
３小節目における楕円の黒丸からなる奏法記号は「テヌート」奏法を示す。また、３小節目には音量を徐々に小さくすることを示す奏法記号や、音の末尾にビブラートをつけることを指示する奏法記号も記載されている。
このように、３小節程度の長さの楽曲フレーズにあっても、多様な奏法若しくは演奏表現すなわちアーティキュレーションが用いられることが理解できる。
なお、これらの奏法記号の表わし方は、これに限るものではなく、要するに奏法を何らかの形で表現しうるものであればよい。或る程度の奏法を表現する記号は従来の楽譜表記においても用いられているが、この発明の実施にあたっては、従来にないより精密な奏法記号を採用することが望ましい。
【００２５】
図１において、次のステップＳ２は、サンプリングした一連の演奏音をその演奏表現上の特徴（すなわちアーティキュレーション）に応じてそれぞれ可変の長さからなる複数の時間区間に分割するステップである。これは、例えばフーリエ解析で知られているような規則的な一定の時間フレーム毎に波形データを分割し分析するようなやり方とは全く異なるものである。すなわち、サンプリングした一連の演奏音の中に存在するアーティキュレーションには多様性があるので、個々のアーティキュレーションに対応する音の時間的範囲は、一様な時間長ではなく、任意の可変の長さからなっている。従って、サンプリングした一連の演奏音をその演奏表現上の特徴（すなわちアーティキュレーション）に応じて複数の時間区間に分割することは、その結果分割された各時間区間の長さは可変的なものとなる。
【００２６】
図２の（ｂ），（ｃ），（ｄ）は、そのような時間区間の分割例を階層的に例示するものである。図２（ｂ）は、比較的大きなアーティキュレーションのかたまり（これを便宜上、「アーティキュレーション大単位」といい、ＡＬ＃１，ＡＬ＃２，ＡＬ＃３，ＡＬ＃４なる記号で示す）に分割する例を示している。このようなアーティキュレーション大単位は、例えば大まかな演奏表現が共通しているフレージングの小単位毎に区分するとよい。図２（ｃ）は、１つのアーティキュレーション大単位（図ではＡＬ＃３）を、更にアーティキュレーション中単位（便宜上、ＡＭ＃１，ＡＭ＃２なる記号で示す）に分割する例を示している。このアーティキュレーション中単位ＡＭ＃１，ＡＭ＃２は、例えば、大まかに１つの音を単位として区分する。図２（ｄ）は、１つのアーティキュレーション中単位（図ではＡＭ＃１，ＡＭ＃２）を、更にアーティキュレーション最小単位（便宜上、ＡＳ＃１〜ＡＳ＃８なる記号で示す）に分割する例を示している。このアーティキュレーション最小単位ＡＳ＃１〜ＡＳ＃８は、音の部分であって演奏表現の異なる個所、典型的にはアタック部、ボディ部（音の定常的な特徴を示す比較的安定した部分）、リリース部、音と音のつながりの部分など、に対応している。
【００２７】
例えば、ＡＳ＃１，ＡＳ＃２，ＡＳ＃３がアーティキュレーション中単位ＡＭ＃１を構成する１つの音（スラーの先行音）のアタック部、第１のボディ部、第２のボディ部にそれぞれ対応し、ＡＳ＃５，ＡＳ＃６，ＡＳ＃７，ＡＳ＃８が次のアーティキュレーション中単位ＡＭ＃２を構成する１つの音（スラーの後続音）第１のボディ部、第２のボディ部、第３のボディ部、リリース部にそれぞれ対応している。第１及び第２のボディ部というように、複数のボディ部がある理由は、同じ音のボディ部であってもアーティキュレーションが異なっている（例えばビブラートの速さ等が変化している）場合があり、そのような場合に対応している。ＡＳ＃４は、スラー変化による音と音のつながりの部分に対応している。この部分ＡＳ＃４は、２つのアーティキュレーション中単位ＡＭ＃１，ＡＭ＃２の切り出し方によっていずれか一方（ＡＭ＃１の終わりの部分又はＡＭ＃２の始まりの部分）から取り出せばよい。あるいは、このようなスラー変化による音と音のつながりの部分ＡＳ＃４は、始めからアーティキュレーション中単位として取り出すようにしてもよい。その場合は、アーティキュレーション大単位ＡＬ＃３は、３つのアーティキュレーション中単位に分割されることになり、真中のアーティキュレーション中単位つまり音と音のつながりの部分は、そのままアーティキュレーション最小単位ＡＳ＃４に相当することになる。このようにスラー変化による音と音のつながりの部分ＡＳ＃４を単独で取り出すようにした場合は、該部分ＡＳ＃４を他の音と音とをつなげる部分にも使用することにより、これらの音をスラーでつなげるようにすることもできる。
【００２８】
図２（ｄ）に示したようなアーティキュレーション最小単位ＡＳ＃１〜ＡＳ＃８が、ステップＳ２の処理で分割される複数の時間区間に相当する。以下では、このようなアーティキュレーション最小単位をアーティキュレーションエレメントとも呼ぶことにする。なお、アーティキュレーション最小単位の分割の仕方は上記例に限らないので、アーティキュレーション最小単位すなわちアーティキュレーションエレメントが必ずしも音の部分のみに対応しているとは限らない。
【００２９】
図１において、次のステップＳ３は、分割した各時間区間（アーティキュレーション最小単位ＡＳ＃１〜ＡＳ＃８すなわちアーティキュレーションエレメント）毎の波形データを所定の複数の楽音要素について分析し、分析した各楽音要素の特性を示すデータを生成するステップである。分析する楽音要素としては、例えば、波形（音色）、振幅（音量）、ピッチ（音高）、時間などの要素がある。これらの楽音要素は、当該時間区間における波形データの構成要素（エレメント）であると共に、当該時間区間におけるアーティキュレーションの構成要素（エレメント）でもある。
次のステップＳ４では、生成した各要素の特性を示すデータをデータベースに蓄積する。データベースでは、蓄積したこれらのデータをテンプレートデータとして、楽音合成に際して、利用可能にする。
これらの楽音要素の分析の仕方の一例を示すと次のようであり、各楽音要素の特性を示すデータ（テンプレートデータ）の一例を示すと図３のようである。また、図２（ｅ）にも、１つのアーティキュレーション最小単位から分析される各楽音要素の種類が例示されている。
【００３０】
▲１▼  波形（音色）要素については、当該時間区間（アーティキュレーションエレメント）におけるオリジナルのＰＣＭ波形データをそのまま取り出す。これを波形テンプレート（Timbre テンプレート）としてデータベースに記憶する。この波形（音色）要素を示す記号として、“Timbre”を用いることにする。
▲２▼  振幅（音量）要素については、当該時間区間（アーティキュレーションエレメント）におけるオリジナルのＰＣＭ波形データの音量エンベロープ（時間経過に従う音量振幅変化）を抽出し、振幅エンベロープデータを得る。これを振幅テンプレート（Amp テンプレート）としてデータベースに記憶する。この振幅（音量）要素を示す記号として、“Amp”（Amplitudeの略）を用いることにする。
▲３▼  ピッチ（音高）要素については、当該時間区間（アーティキュレーションエレメント）におけるオリジナルのＰＣＭ波形データのピッチエンベロープ（時間経過に従うピッチ変化）を抽出し、ピッチエンベロープデータを得る。これをピッチテンプレート（Pitch テンプレート）としてデータベースに記憶する。このピッチ要素を示す記号として、“Pitch”を用いることにする。
【００３１】
▲４▼  時間要素については、当該時間区間（アーティキュレーションエレメント）におけるオリジナルのＰＣＭ波形データの時間長をそのまま用いる。従って、当該区間のオリジナルの時間長（可変値である）を比「１」で示すこととすれば、データベース作成時においてこの時間長をあえて分析・測定する必要はない。その場合、時間要素についてのデータすなわち時間テンプレート（ＴＳＣテンプレート）はどの区間（アーティキュレーションエレメント）でも同じ値“１”であるから、これをテンプレートデータベースにあえて記憶しておかなくてもよい。勿論、これに限らず、この実際の時間長を分析・測定し、これを時間テンプレートデータとしてデータベースに記憶するようにする変形例も実施可能である。
【００３２】
ところで、波形データのオリジナルの時間長を可変制御する技術として、該波形データのピッチに影響を与えることなく該波形データを時間軸方向に伸張または圧縮する制御が、未公開ではあるが、「Time Stretch & Compress」制御（略して「ＴＳＣ制御」）として本発明者によって既に提案されている。本実施例においてもそのような「ＴＳＣ制御」を利用するものとしており、時間要素の記号として使用するＴＳＣはこの略号である。楽音合成時において、このＴＳＣ値を“１”に固定せずに、その他の適宜の値に設定することにより、再生波形信号の時間長を可変制御することができる。その場合、そのＴＳＣ値は、時間的に変化する値（例えばエンベロープ等適宜の時間関数）として与えるようにしてもよい。なお、このＴＳＣ制御は、オリジナル波形におけるビブラートやスラー等の特殊な奏法がかけられた部分の時間長を自在に可変制御する場合などに役立てることができる。
【００３３】
以上説明したような処理を、様々な自然楽器について、様々な奏法で（様々な楽曲フレーズについて）、それぞれ行い、各自然楽器毎に多数のアーティキュレーションエレメントについての各楽音要素毎のテンプレートを作成し、これらをデータベースに蓄積する。また、自然楽器に限らず、人の声や雷の音など、自然界に存在する様々な音について、上記のようなサンプリングとアーティキュレーション分析の処理を行い、その結果得られる各要素毎の多様なテンプレートデータをデータベースに蓄積するようにしてよい。勿論、サンプリングのために生演奏するフレーズは、上記例のような数小節からなるフレーズに限らず、必要に応じてもっと短いフレーズ（例えば図２（ｂ）に示したような１つのフレージング小単位）のみであってもよいし、あるいは反対に１つの曲全部であってもよい。
【００３４】
データベースＤＢの構成は、例えば図４に示すように、テンプレートデータベースＴＤＢとアーティキュレーションデータベースＡＤＢとに大別される。なお、データベースＤＢのハードウェアとしては周知のようにハードディスク装置や光磁気ディスク装置などの読み書き可能な記憶媒体（好ましくは大容量媒体）が用いられる。
テンプレートデータベースＴＤＢは、上記のようにして作成された多数のテンプレートデータを蓄積するものである。なお、テンプレートデータベースＴＤＢに記憶するテンプレートデータは、必ずしもその全てが上記のような演奏音又は自然音のサンプリングと分析に基づくものである必要はなく、要するに、テンプレート（出来合いのデータ）として予め用意されたものであればよく、データ編集作業によって人為的に任意に作成したものであってもよい。例えば、時間要素についてのＴＳＣテンプレートは、サンプリングした演奏音に基づくものである限りは上述のように通常は“１”であるが、自由な変化パターン（エンベロープ）で作成することができるものであるから、様々なＴＳＣ値又はその時間的変化のエンベロープ波形をＴＳＣテンプレートデータとして作成し、データベースに記憶させておくようにしてよい。また、テンプレートデータベースＴＤＢに記憶するテンプレートの種類も、上記のようなオリジナル波形から分析した特定の要素に対応するものに限らず、楽音合成の際の便宜を図るためにその他の種類のものを適宜増加してよい。例えば、楽音合成の際にフィルタを使用して音色制御を行う場合、フィルタ係数セット（時変動フィルタ係数セットを含む）をテンプレートデータとして多数用意し、これをテンプレートデータベースＴＤＢに記憶しておくようにしてよい。勿論、このようなフィルタ係数セットは、オリジナル波形の分析に基づき作成するようにしてもよいし、その他適宜の手段で作成するようにしてもよい。
【００３５】
テンプレートデータベースＴＤＢに記憶された各テンプレートデータのデータ構成は、図３に例示したような各テンプレートデータの内容そのものを表わすデータからなる。例えば、波形（Timbre）テンプレートは、ＰＣＭ波形データそのものである。また、振幅（Amp）エンベロープやピッチ（Pitch）エンベロープ、ＴＳＣエンベロープなどのエンベロープ波形も、そのエンベロープ形状をＰＣＭ符号化したものであってよい。しかし、テンプレートデータベースＴＤＢにおけるエンベロープ波形状のテンプレートのデータ記憶構成を圧縮するために、エンベロープ波形を折線近似するためのパラメータデータ（公知のように各折線の傾きレートと目標レベルあるいは時間等を示すデータのセットからなる）の形式でこれらのテンプレートデータを記憶してもよい。
【００３６】
また、波形（Timbre）テンプレートも、ＰＣＭ波形データ以外の適宜のデータ圧縮された形式で記憶するようにしてもよい。また、その他の適宜のデータ形式で波形すなわち音色（Timbre）テンプレートデータを記憶するようにしてもよい。すなわち、波形（Timbre）テンプレートデータは、例えばＤＰＣＭ又はＡＤＰＣＭ等、ＰＣＭ形式以外のデータ圧縮化したコード化形式からなる波形データであってもよいし、あるいは、波形サンプル値を直接示していない波形形成用データすなわち波形合成用のパラメータ、からなるものであってよい。その種のパラメータによる波形合成方式としては、フーリエ合成あるいはＦＭ（周波数変調）合成あるいはＡＭ（振幅変調）合成あるいは物理モデル音源あるいはＳＭＳ波形合成（確定成分と不確定成分とを用いて波形合成する技術）など、種々知られているので、これらのいずれかの波形合成方式を採用し、そのための波形合成用パラメータを波形（Timbre）テンプレートデータとしてデータベースに記憶するようにしてよい。その場合、波形（Timbre）テンプレートデータ、つまり波形合成用パラメータ、に基づく波形形成処理は、それに対応する波形合成用の演算装置又はプログラム等によって行われるのは勿論である。その場合、所望形状の波形を形成するための波形合成用パラメータセットを、１つのアーティキュレーションエレメント、つまり時間区間、に対応して複数セット記憶しておき、波形合成に使用するパラメータセットを時間経過に従って切り替えることにより、１アーティキュレーションエレメント内での波形形状の時変動を実現するようにしてもよい。
【００３７】
また、波形（Timbre）テンプレートを、ＰＣＭ波形データで記憶する場合であっても、公知のループ読出し技術を採用できる場合（例えばボディ部のように音色波形が安定していて余り時間変化しないような部分についての波形データ）は、当該区間の波形を全部記憶せずにその一部の波形データのみを記憶しておくようにしてよい。また、サンプリングと分析の結果得られた異なる時間区間すなわちアーティキュレーションエレメントについてのテンプレートデータの内容が、同一か似通っている場合は、それぞれのテンプレートデータをデータベースＴＤＢに記憶することなく、１つだけを記憶しておき、楽音合成時にこれを共用することにより、データベースＴＤＢの記憶量を節約することができる。また、テンプレートデータベースＴＤＢの構成は、基本のデータベースの供給者（例えば電子楽器メーカー）が予め作成したプリセット領域と、ユーザーが自由に追加作成できるユーザー領域等を含んでいてもよい。
【００３８】
アーティキュレーションデータベースＡＤＢは、１又は複数のアーティキュレーションを含む演奏を構築するために、アーティキュレーションを記述するデータ（すなわち１又は複数のアーティキュレーションエレメントの組合せによって一連の演奏を記述するデータ及び各アーティキュレーションエレメントを記述するデータ）を、多様な演奏ケース及び奏法に対応して、それぞれ記憶しているものである。
図４のブロック中には、「Ｉｎｓｔｒｕｍｅｎｔ  １」と名付けた或る１つの楽器音についてのデータベース構成が例示されている。アーティキュレーション・エレメント・シーケンスＡＥＳＥＱは、１又は複数のアーティキュレーションを含む演奏フレーズ（すなわちアーティキュレーション演奏フレーズ）を、１又は複数のアーティキュレーションエレメントを順次に指示するシーケンスデータの形式で記述するものである。例えば、このアーティキュレーションエレメントシーケンスは、前記サンプリングと分析の工程において分析された図２（ｄ）に示したようなアーティキュレーション最小単位（アーティキュレーションエレメント）の時系列的順序に相当するものである。その楽器音を演奏する場合に有り得る様々な奏法を網羅しうるように、多数のアーティキュレーションエレメントシーケンスＡＥＳＥＱを記憶している。なお、１つのアーティキュレーションエレメントシーケンスＡＥＳＥＱは、図２（ｂ）に示したような「フレージングの小単位」（アーティキュレーション大単位ＡＬ＃１，ＡＬ＃２，ＡＬ＃３，ＡＬ＃４）の１つであってもよいし、若しくはこれらの「フレージングの小単位」（ＡＬ＃１，ＡＬ＃２，ＡＬ＃３，ＡＬ＃４）のいくつかからなっていてもよいし、あるいは図２（ｃ）に示したような「アーティキュレーション中単位」（ＡＭ＃１，ＡＭ＃２）の１つであってもよいし、あるいはこれらの「アーティキュレーション中単位」（ＡＭ＃１，ＡＭ＃２）のいくつかに対応していてもよい。
【００３９】
アーティキュレーション・エレメント・ベクトルＡＥＶＱは、その楽器音（Ｉｎｓｔｒｕｍｅｎｔ  １）についてテンプレートデータベースＴＤＢで用意（蓄積）されている全てのアーティキュレーションエレメントについての各楽音要素毎のテンプレートデータのインデックスを、個々のテンプレートを指示するベクトルデータの形式で（例えばテンプレートデータベースＴＤＢから所要のテンプレートを引き出すためのアドレスデータの形式で）、記憶しているものである。例えば、図２（ｄ）（ｅ）の例に示されるように、或るアーティキュレーションエレメントＡＳ＃１に対応して、そのアーティキュレーションエレメントに相当する部分的楽音を構成する各要素（波形、振幅、ピッチ、時間）についての４つのテンプレートTimbre, Amp, Pitch, ＴＳＣをそれぞれ具体的に指示するベクトルデータ（これをエレメントベクトルという）を記憶している。
【００４０】
１つのアーティキュレーションエレメントシーケンス（奏法シーケンス）ＡＥＳＥＱにおいては、複数のアーティキュレーションエレメントのインデックスが演奏順に従って記述されており、そこに記述された各アーティキュレーションエレメントを構成するテンプレートのセットは、アーティキュレーションエレメントベクトルＡＥＶＱを参照することにより引き出すことができるようになっている。
図５の（ａ）は、いくつかのアーティキュレーションエレメントシーケンスＡＥＳＥＱ＃１〜ＡＥＳＥＱ＃７の一例を示している。この図の読み方について説明すると、例えば、ＡＥＳＥＱ＃１＝（ＡＴＴ−Ｎｏｒ，ＢＯＤ−Ｖｉｂ−ｎｏｒ，ＢＯＤ−Ｖｉｂ−ｄｅｐ１，ＢＯＤ−Ｖｉｂ−ｄｅｐ２，ＲＥＬ−Ｎｏｒ）は、シーケンス番号１のシーケンスＡＥＳＥＱ＃１は、ＡＴＴ−Ｎｏｒ，ＢＯＤ−Ｖｉｂ−ｎｏｒ，ＢＯＤ−Ｖｉｂ−ｄｅｐ１，ＢＯＤ−Ｖｉｂ−ｄｅｐ２，ＲＥＬ−Ｎｏｒという５つのアーティキュレーションエレメントのシーケンスからなる、ということを示している。各アーティキュレーションエレメントのインデックス記号の意味は次の通りである。
【００４１】
ＡＴＴ−Ｎｏｒは「ノーマルアタック」（アタック部が標準的に立ち上がる奏法）を示す。
ＢＯＤ−Ｖｉｂ−ｎｏｒは「ボディ・ノーマルビブラート」（ボディ部に標準的なビブラートが付けられる奏法）を示す。
ＢＯＤ−Ｖｉｂ−ｄｅｐ１は「ボディ・ビブラートディプス１」（ボディ部に標準よりも１段階深いビブラートが付けられる奏法）を示す。
ＢＯＤ−Ｖｉｂ−ｄｅｐ２は「ボディ・ビブラートディプス２」（ボディ部に標準よりも２段階深いビブラートが付けられる奏法）を示す。
ＲＥＬ−Ｎｏｒは「ノーマルリリース」（リリース部が標準的に立ち下がる奏法）を示す。
【００４２】
従って、シーケンスＡＥＳＥＱ＃１は、ノーマルアタックで始まり、ボディ部では最初はノーマルビブラートがつけられ、次にそのビブラートが少し深くなり、次いでさらにビブラートが深くなり、最後にリリース部では標準的な音の立ち下がりをみせる、というアーティキュレーションからなっている。
例示的に示された他のシーケンスＡＥＳＥＱ＃２〜ＡＥＳＥＱ＃６についても、同様に、図５（ａ）におけるアーティキュレーションエレメントの記号表現から、そのアーティキュレーションが理解できるであろう。
参考のために図５（ａ）に示された他のいくつかのアーティキュレーションエレメントの記号の意味について説明すると次の通りである。
【００４３】
ＢＯＤ−Ｖｉｂ−ｓｐｄ１は「ボディ・ビブラートスピード１」（ボディ部に標準よりも１段階速いビブラートが付けられる奏法）を示す。
ＢＯＤ−Ｖｉｂ−ｓｐｄ２は「ボディ・ビブラートスピード２」（ボディ部に標準よりも２段階速いビブラートが付けられる奏法）を示す。
ＢＯＤ−Ｖｉｂ−ｄ＆ｓ１は「ボディ・ビブラートディプス＆スピード１」（ボディ部に付けるビブラートの深さと速さをそれぞれ標準より１段階上げる奏法）を示す。
ＢＯＤ−Ｖｉｂ−ｂｒｉは「ボディ・ビブラートブリリアント」（ボディ部にビブラートを付け、かつその音色を派手にする奏法）を示す。
ＢＯＤ−Ｖｉｂ−ｍｌｄ１は「ボディ・ビブラートマイルド１」（ボディ部にビブラートを付け、かつその音色を少しマイルドにする奏法）を示す。
ＢＯＤ−Ｃｒｅ−ｎｏｒは「ボディ・ノーマルクレッシェンド」（ボディ部に標準的なクレッシェンドを付ける奏法）を示す。
ＢＯＤ−Ｃｒｅ−ｖｏｌ１は「ボディ・クレッシェンドボリューム１」（ボディ部に付けるクレッシェンドのボリュームを１段階上げた奏法）を示す。
ＡＴＴ−Ｂｕｐ−ｎｏｒは「アタック・ベンドアップノーマル」（アタック部のピッチを標準的な深さと速さでベンドアップする奏法）を示す。
ＲＥＬ−Ｂｄｗ−ｎｏｒは「リリース・ベンドダウンノーマル」（リリース部のピッチを標準的な深さと速さでベンドダウンする奏法）を示す。
【００４４】
従って、シーケンスＡＥＳＥＱ＃２は、ノーマルアタックで始まり、ボディ部では最初はノーマルビブラートがつけられ、次にそのビブラートスピードが少し速くなり、次いでさらにビブラートスピードが速くなり、最後にリリース部では標準的な音の立ち下がりをみせる、という変化を示すアーティキュレーション（奏法）に対応している。
また、シーケンスＡＥＳＥＱ＃３は、ビブラートの深さを徐々に深くすると共に、スピードも徐々に速くする、という変化を示すアーティキュレーション（奏法）に対応している。
また、シーケンスＡＥＳＥＱ＃４は、ビブラート時の波形の音質（音色）を変化させるアーティキュレーション（奏法）に対応している。
シーケンスＡＥＳＥＱ＃５は、クレッシェンドをつけるアーティキュレーション（奏法）に対応している。
シーケンスＡＥＳＥＱ＃６は、アタック部のピッチがベッドアップする（ピッチが徐々に上がる）アーティキュレーション（奏法）に対応している。
シーケンスＡＥＳＥＱ＃７は、リリース部のピッチがベッドダウンする（ピッチが徐々に下がる）アーティキュレーション（奏法）に対応している。
アーティキュレーションエレメントシーケンス（奏法シーケンス）には、上記に限らず、更に多数種類有りうるが、特に詳しく図示しない。
【００４５】
図５の（ｂ）は、いくつかのアーティキュレーションエレメントに関するアーティキュレーションエレメントベクトルＡＥＶＱの構成例を示している。この図の読み方について説明すると、括弧内において、各要素に対応するテンプレートを指示するベクトルデータが記述されている。各ベクトルデータにおいて先頭の記号はそのテンプレートの種類を示している。すなわち、Ｔｉｍｂは波形（Timbre）テンプレートであることを示し、Ａｍｐは振幅（Amp）テンプレートであることを示し、Ｐｉｔはピッチ（Pitch）テンプレートであることを示し、ＴＳＣは時間（ＴＳＣ）テンプレートであることを示す。
【００４６】
例えば、ＡＴＴ−Ｎｏｒ＝（Ｔｉｍｂ−Ａ−ｎｏｒ，Ａｍｐ−Ａ−ｎｏｒ，Ｐｉｔ−Ａ−ｎｏｒ，ＴＳＣ−Ａ−ｎｏｒ）は、「ノーマルアタック」の意味を持つアーティキュレーションエレメントＡＴＴ−Ｎｏｒは、Ｔｉｍｂ−Ａ−ｎｏｒ（アタック部の標準的な波形テンプレート），Ａｍｐ−Ａ−ｎｏｒ（アタック部の標準的な振幅テンプレート），Ｐｉｔ−Ａ−ｎｏｒ（アタック部の標準的なピッチテンプレート），ＴＳＣ−Ａ−ｎｏｒ（アタック部の標準的なＴＳＣテンプレート）という４つのテンプレートによって波形合成されるものである、ということを示している。
【００４７】
別の例を示すと、「ボディ・ビブラートディプス１」の意味を持つアーティキュレーションエレメントＢＯＤ−Ｖｉｂ−ｄｅｐ１は、Ｔｉｍｂ−Ｂ−ｖｉｂ（ボディ部のビブラート用の波形テンプレート），Ａｍｐ−Ｂ−ｄｐ３（ボディ部のビブラート深さ３用の振幅テンプレート），Ｐｉｔ−Ｂ−ｄｐ３（ボディ部のビブラート深さ３用のピッチテンプレート），ＴＳＣ−Ｂ−ｖｉｂ（ボディ部のビブラート用のＴＳＣテンプレート）という４つのテンプレートによって波形合成される。
更に別の例を示すと、「リリース・ベンドダウンノーマル」の意味を持つアーティキュレーションエレメントＲＥＬ−Ｂｄｗ−ｎｏｒは、Ｔｉｍｂ−Ｒ−ｂｄｗ（リリース部のベンドダウン用の波形テンプレート），Ａｍｐ−Ｒ−ｂｄｗ（リリース部のベンドダウン用の振幅テンプレート），Ｐｉｔ−Ｒ−ｂｄｗ（リリース部のベンドダウン用のピッチテンプレート），ＴＳＣ−Ｒ−ｂｄｗ（リリース部のベンドダウン用のＴＳＣテンプレート）という４つのテンプレートによって波形合成される。
【００４８】
なお、アーティキュレーションの編集を容易にするために、各アーティキュレーションエレメントシーケンスの特徴を概略的に説明する属性情報ＡＴＲを、各アーティキュレーションエレメントシーケンスＡＥＳＥＱに付属して記憶しておくようにするとよい。同様に、各アーティキュレーションエレメントの特徴を概略的に説明する属性情報ＡＴＲを、各アーティキュレーションエレメントベクトルＡＥＶＱに付属して記憶しておくようにするとよい。
要するに、このような属性情報ＡＴＲは、各アーティキュレーションエレメント（図２（ｄ）に示したようなアーティキュレーション最小単位）の特徴を説明するものである。アタック部に関連するアーティキュレーションエレメントを例にして、そのアーティキュレーションエレメントの記号（インデックス）と、それぞれの属性情報ＡＴＲの内容、及び各楽音要素のテンプレートを指示する各ベクトルデータの一例を図６に示す。
【００４９】
図６の例では、属性情報ＡＴＲも階層化されて管理されている。すなわち、アタック部に関連するアーティキュレーションエレメントにはすべて共通の「アタック」という属性情報が付与され、そのうちの標準のエレメントに対しては「ノーマル」という属性情報が更に付与され、また、そのうちのベンドアップ奏法が適用されるエレメントに対しては「ベンドアップ」という属性情報が付与され、ベンドダウン奏法が適用されるエレメントに対しては「ベンドダウン」という属性情報が付与される。更に、ベンドアップ奏法が適用されるエレメントのうち、標準的なものに対しては「ノーマル」という属性情報が付与され、標準よりベンドの深さが浅いものに対しては「ディプス・浅い」という属性情報が付与され、標準よりベンドの深さが深いものに対しては「ディプス・深い」という属性情報が付与され、標準よりベンドのスピードが遅いものに対しては「スピード・遅い」という属性情報が付与され、標準よりベンドのスピードが速いものに対しては「スピード・速い」という属性情報が付与される。図示を省略したが、ベンドダウン奏法が適用されるエレメントに対しても、同様に、更に細分化された属性情報が付与される。
【００５０】
図６においては、また、異なるアーティキュレーションエレメント間においてテンプレートデータが共用されるものがあることが示されている。図６において、奏法の各インデックス（アーティキュレーションエレメントインデックス）の欄に記載された４種のテンプレートのベクトルデータ（換言すればテンプレートインデックス）が、該アーティキュレーションエレメントの部分的音を形成するためのテンプレートを指示するベクトルデータを示しており、この読み方は図５（ｂ）と同様である。ここで、ベンドアップの属性を持つエレメントにおいて、＝記号を記したものは、そのノーマル時のテンプレートと同じものを使用することを意味している。例えば、ベンドアップ奏法用の波形（Timbre)テンプレートは、すべてベンドアップノーマル用の波形テンプレートＴｉｍｂ−Ａ−ｂｕｐと同じものを使用する。また、ベンドアップ奏法用の振幅（Amp)テンプレートは、すべてベンドアップノーマル用の振幅テンプレートＡｍｐ−Ａ−ｂｕｐと同じものを使用する。これは、ベンドアップ奏法が微妙に変化してもその波形や振幅エンベロープは変えることなく共通のものを使用しても音質上差し支えないからである。これに対して、ピッチ（Pitch）テンプレートは、ベンドアップ奏法におけるディプスの程度に合わせて異なるものを使用しなければならない。例えば、「ディプス・浅い」の属性を持つアーティキュレーションエレメントＡＴＴ−Ｂｕｐ−ｄｐ１においては、それに相応するピッチ（Pitch）テンプレート（浅いベンドアップ特性に対応するピッチエンベロープのテンプレート）を指示するために、浅いベンドアップ特性に対応するピッチエンベロープのテンプレートを指示するベクトルデータＰｉｔ−Ａ−ｄｐ１が使用される。
【００５１】
このようにテンプレートデータの共用化を図ることによりテンプレートデータベースＴＤＢの記憶量を節約することができる。また、データベース作成時において、すべての奏法について生演奏を録音する必要がない。
なお、図６を参照すると、ベンドアップ奏法のスピードは、時間（ＴＳＣ）テンプレートを異ならせることによって調整されることが理解できる。ピッチベンドのスピードは、所定の初期ピッチから目標ピッチまで到達するのに要する時間に対応しているから、オリジナルの波形データが所定のピッチベンド特性（或る時間内に所定の初期ピッチから目標ピッチまでベンドするという特性）を持っている場合、そのオリジナルの波形データの時間長をＴＳＣ制御によって可変制御すれば、初期ピッチから目標ピッチまで到達するのに要する時間つまりベンドのスピードを調整することができる。このような時間（ＴＳＣ）テンプレートによる波形時間長可変制御は、楽音立ち上がりのスピードや、スラーのスピード、ビブラートのスピードなど、各種奏法のスピードの調整に適している。例えば、スラーにおけるピッチの変化は、ピッチ（Pitch）テンプレートによっても実現することができるが、時間（ＴＳＣ）テンプレートを用いてＴＳＣ制御を行った方が自然なスラー変化を実現することができる。
【００５２】
アーティキュレーションデータベースＡＤＢにおけるアーティキュレーションエレメントベクトルＡＥＶＱは、アーティキュレーションエレメントインデックスによってアドレッシングされることができるのは勿論であり、また、属性情報ＡＴＲによってアドレッシングされることができるものとする。これによって、所望の属性情報ＡＴＲをキーワードとしてアーティキュレーションデータベースＡＤＢに検索をかけることにより、該キーワードに該当する属性を持つアーティキュレーションエレメントとしてどのようなものがあるかを検索することができ、ユーザーによるデータ編集作業に便利である。このような属性情報ＡＴＲは、アーティキュレーションエレメントシーケンスＡＥＳＥＱにも付加しておくとよい。これによって、所望の属性情報ＡＴＲをキーワードとしてアーティキュレーションデータベースＡＤＢに検索をかけることにより、該キーワードに該当する属性を持つアーティキュレーションエレメントを含んでいるアーティキュレーションエレメントシーケンスＡＥＳＥＱを検索することができる。
なお、アーティキュレーションデータベースＡＤＢにおけるアーティキュレーションエレメントベクトルＡＥＶＱをアドレッシングするためのアーティキュレーションエレメントインデックスは、アーティキュレーションエレメントシーケンスＡＥＳＥＱの読出しに従って与えられるようになっているのは勿論であるが、編集作業のためにあるいはリアルタイムの自由な音作りのために、所望のアーティキュレーションエレメントインデックスを単独でアドレス入力してもよいようにするのがよい。
【００５３】
アーティキュレーションデータベースＡＤＢにおいては、ユーザーが所望のアーティキュレーションエレメントシーケンスを作成しこれを記憶保存しておくことができるように、ユーザーアーティキュレーションエレメントシーケンスＵＲＳＥＱを記憶するエリアも有している。このようなユーザーエリアにおいては、ユーザーが作成したアーティキュレーションエレメントベクトルデータをも記憶しておくようにしてよい。
アーティキュレーションデータベースＡＤＢにおいては、アーティキュレーションエレメントベクトルＡＥＶＱの下位のベクトルデータとしてパーシャルベクトルＰＶＱを記憶している。アーティキュレーションエレメントベクトルＡＥＶＱで指定されたテンプレートデータが、テンプレートデータベースＴＤＢにおいて当該アーティキュレーションエレメントの全時間区間のデータとしてではなく、一部のデータとして記憶されている場合、この一部のデータからなるテンプレートデータをループ読出し（繰り返し読出し）して当該アーティキュレーションエレメントの全時間区間のデータを再生するようになっている。そのようなループ読出しに必要なデータがパーシャルベクトルＰＶＱとして記憶されている。その場合、例えば、アーティキュレーションエレメントベクトルＡＥＶＱには、上記各テンプレートデータのほかにパーシャルベクトルＰＶＱを指示するデータを記憶しており、このパーシャルベクトル指示データによってパーシャルベクトルＰＶＱのデータを読み出し、このパーシャルベクトルＰＶＱのデータによってループ読出しを制御する。従って、パーシャルベクトルＰＶＱは、ループ読出し制御のために必要なループ開始アドレスやループ終了アドレス等を指示するデータを含んでいる。
【００５４】
更に、アーティキュレーションデータベースＡＤＢにおいては、楽音合成時において時間的に隣接するアーティキュレーションエレメント間での波形データの接続の際のルールを記述したルールデータＲＵＬＥを記憶している。例えば、時間的に隣接するアーティキュレーションエレメント間で波形のクロスフェード補間を行って滑らかに接続するとか、クロスフェード補間を行わずに直接的に接続するとか、あるいはクロスフェード波形補間をおこう場合にどのようなクロスフェード法を使用するか、等のルールを、各シーケンスに対応して、あるいはシーケンス内の各アーティキュレーションエレメントに対応して、記憶している。この接続ルールも、ユーザーによるデータ編集の対象とすることができる。
アーティキュレーションデータベースＡＤＢにおいては、以上例示的に説明したようなデータ構成からなるアーティキュレーションデータベースを各楽器音（自然楽器音色）毎に設け、また、各種の人声音（若い女性の声、若い男性の声、バリトン、ソプラノ等）毎に設け、また、各種の自然音（雷の音、波の音等々）毎に、等々、各種設ける。
【００５５】
〔楽音合成の概略〕
上記のようにして作成されたデータベースＤＢを利用して楽音を合成する手順の概略を図７に示す。
まず、発生しようとする楽音演奏（複数音からなる演奏フレーズ又は１音でもよい）に対応する所要の奏法シーケンスを指示する（ステップＳ１１）。この奏法シーケンスの指示は、アーティキュレーションデータベースＡＤＢに記憶されている所望の楽器音（又は人声音又は自然音等）のアーティキュレーションエレメントシーケンスＡＥＳＥＱ又はＵＲＳＥＱの１つを選択的に指示することからなっていてよい。
【００５６】
このような奏法シーケンス（すなわちアーティキュレーションエレメントシーケンス）の指示は、ユーザーによるリアルタイム演奏操作に基づいて与えることができるようになっていてもよいし、あるいは自動演奏データに基づいて与えることができるようになっていてもよい。前者の場合は、例えば、鍵盤やその他の演奏操作子に対して各種の奏法シーケンスを予め割り当てておき、該操作子の操作に応じてそこに割り当てられている奏法シーケンス指示データを発生するようにすることができる。後者の場合、１つの手法として、図８の（ａ）に略示するように、所望の楽曲に対応するＭＩＤＩ形式等の自動演奏シーケンスデータの中にイベントデータとして奏法シーケンス指示データをそれぞれ組み込んで記憶しておき、自動演奏再生時に所定の各イベント再生時点で各奏法シーケンス指示データが読み出されるようにすることができる。なお、図８で、ＤＵＲは次のイベントまでの時間間隔を示すデュレーションデータ、ＥＶＥＮＴはイベントデータ、ＭＩＤＩは当該イベントデータに付属する演奏データがＭＩＤＩ形式のデータであること、ＡＥＳＥＱは当該イベントデータに付属する演奏データが奏法シーケンス指示データであること、を示す。この場合は、ＭＩＤＩ形式等の自動演奏データに基づく自動演奏と本発明に従う奏法シーケンスに基づく自動演奏とのアンサンブルを行うことができる。その場合、例えば、メインのソロ若しくはメロディ演奏楽器パートを本発明に従う奏法シーケンスすなわちアーティキュレーションエレメント合成で演奏し、他の楽器パートをＭＩＤＩデータに基づく自動演奏で行う、といった形態をとることができる。
【００５７】
また、後者の別の手法として、図８の（ｂ）に略示するように、所望の楽曲に対応して複数の奏法シーケンス指示データＡＥＳＥＱのみをイベントデータ形式で記憶しておき、これを所定の各イベント再生時点で読み出すようにしてもよい。これによって、従来にはなかった、楽曲のアーティキュレーションシーケンス自動演奏を行うことができる。
更に、後者の別の手法として、所望の楽曲に対応するＭＩＤＩ形式等の自動演奏シーケンスデータのみを記憶しておき、この自動演奏シーケンスデータを演奏解釈プログラムによって分析することにより、各フレーズ又は音符毎の奏法すなわちアーティキュレーションを自動的に解析し、この解析結果として奏法シーケンス指示データを発生するようにしてもよい。
また、奏法シーケンスの別の指示方法としては、ユーザーが所望の１又は複数の属性情報を入力し、これをキーワードとしてアーティキュレーションデータベースＡＤＢに検索を掛けることにより、１又は複数のアーティキュレーションエレメントシーケンスＡＥＳＥＱを自動的にリストアップし、その中から所望のシーケンスを選択指定するようにしてもよい。
【００５８】
図７において、選択されたアーティキュレーションエレメントシーケンスＡＥＳＥＱ又はＵＲＳＥＱにおいては、所定の演奏順序に従ってアーティキュレーションエレメント（ＡＥ）インデックスを読み出す（ステップＳ１２）。
そして、読み出されたアーティキュレーションエレメント（ＡＥ）インデックスに対応するアーティキュレーションエレメントベクトル（ＡＥＶＱ）を読み出す（ステップＳ１３）。
そして、読み出されたアーティキュレーションエレメントベクトル（ＡＥＶＱ）によって指示された各テンプレートデータをテンプレートデータベースＴＤＢから読み出す（ステップＳ１４）。
【００５９】
そして、読み出された各テンプレートデータに従って１つのアーティキュレーションエレメント（ＡＥ）の波形データ（部分的音）を合成する（ステップＳ１５）。この波形合成の仕方は、基本的には、波形（Timbre）テンプレートデータに該当するＰＣＭ波形データをテンプレートデータベースＴＤＢからピッチ（Pitch）テンプレートに従う読み出し速度でかつ時間（ＴＳＣ）テンプレートに従う時間長で読み出し、読み出したＰＣＭ波形データの振幅エンベロープを振幅（Amp）テンプレートに従って制御することからなる。なお、この実施例では、テンプレートデータベースＴＤＢに記憶する波形（Timbre）テンプレートデータはサンプリングしたオリジナル波形のピッチと振幅エンベロープ及び時間長をそのまま持っているものとしているので、ピッチ（Pitch）テンプレート、振幅（Amp）テンプレート、時間（ＴＳＣ）テンプレートのそれぞれがサンプリングしたオリジナル波形のものから変更されていない場合は、テンプレートデータベースＴＤＢに記憶されている波形（Timbre）テンプレートデータに対応するＰＣＭ波形データをそのまま読み出したものが当該アーティキュレーションエレメントについての波形データとなる。追って説明するデータ編集等によって、ピッチ（Pitch）テンプレート、振幅（Amp）テンプレート、時間（ＴＳＣ）テンプレートのいずれかが、サンプリングしたオリジナル波形のものから変更された場合は、その変化分に応じて、テンプレートデータベースＴＤＢに記憶されている波形（Timbre）テンプレートデータの読み出し速度が可変制御されたり（ピッチテンプレートが変更された場合）、その読み出し時間長が可変制御されたり（時間テンプレートが変更された場合）、読み出し波形に対する振幅エンベロープが可変制御されたり（振幅テンプレートが変更された場合）する。
なお、当該アーティキュレーションエレメントＡＥについて前述のパーシャルベクトルＰＶＱが適用される場合は、必要なループ読み出し制御もなされる。
【００６０】
次に、以上のように波形合成された各アーティキュレーションエレメントの波形データを順次接続する処理が行われ、その結果、複数のアーティキュレーションエレメントの時系列的組み合わせからなる一連の演奏音が発生される（ステップＳ１６）。ここでの接続処理は、アーティキュレーションデータベースＡＤＢに記憶されているルールデータＲＵＬＥに従って制御される。例えば、ルールデータＲＵＬＥが直接接続を指示している場合は、ステップＳ１５で合成された各アーティキュレーションエレメントの波形データをただその発生順序に従って順次切り換えて発音するだけでよい。また、ルールデータＲＵＬＥが所定のクロスフェード補間を指示している場合は、指示された補間形式に従って、先行するアーティキュレーションエレメントの終わりの部分の波形データと後続するアーティキュレーションエレメントの始まりの部分の波形データとをクロスフェード補間合成し、波形が滑らかにつながるようにする。例えば、サンプリングしたオリジナル波形そのままに接続される場合は、元々各アーティキュレーションエレメント同士は滑らかにつながることが保証されているので、ルールデータＲＵＬＥは直接接続を指示していてよい。それ以外の場合は、アーティキュレーションエレメント同士が滑らかにつながることは保証されていないので、何らかの補間合成を行うのがよい。後述するように、複数種のクロスフェード補間形式のいずれかをルールデータＲＵＬＥによって任意に選択することができるようになっている。
【００６１】
ステップＳ１１〜Ｓ１６に略示したような一連の演奏音合成処理は、１つの楽器音（又は人声音又は自然音）について１つの楽音合成チャンネルで行われる。複数の楽器音（又は人声音又は自然音）についての演奏音合成処理を同時並行的に行う場合は、ステップＳ１１〜Ｓ１６に略示したような一連の演奏音合成処理を複数チャンネルで時分割的に又は並列的に行うようにすればよい。なお、後述するように、クロスフェード合成処理を用いて楽音波形を形成する場合は、１つの楽音合成チャンネルにつき、２つの波形発生チャンネル（フェードアウトする波形を発生するチャンネルと、フェードインする波形を発生するチャンネル）を使用する。
【００６２】
図９は、いくつかの奏法シーケンスについて、該シーケンスにおけるアーティキュレーションエレメントの組合せ例を略示するものである。（ａ）に示す奏法シーケンス＃１は、最も単純な組合せ例を示しており、アタック部のアーティキュレーションエレメントＡ＃１、ボディ部のアーティキュレーションエレメントＢ＃１、リリース部のアーティキュレーションエレメントＲ＃１が順次接続されてなるものであり、各エレメント間の接続部分はクロスフェード補間されるようになっている。（ｂ）に示す奏法シーケンス＃２は、主要音の前に装飾音が付加されるアーティキュレーション組合せ例を示しており、装飾音用のアタック部のアーティキュレーションエレメントＡ＃２、装飾音用のボディ部のアーティキュレーションエレメントＢ＃２、主要音用のアタック部のアーティキュレーションエレメントＡ＃３、主要音用のボディ部のアーティキュレーションエレメントＢ＃３、主要音用のリリース部のアーティキュレーションエレメントＲ＃３が順次接続されてなるものであり、各エレメント間の接続部分はクロスフェード補間される。（ｃ）に示す奏法シーケンス＃３は、先行音と後続音がスラーで結ばれるアーティキュレーション組合せ例を示しており、先行音用のアタック部のアーティキュレーションエレメントＡ＃４、先行音用のボディ部のアーティキュレーションエレメントＢ＃４、スラー用部分音のボディ部のアーティキュレーションエレメントＢ＃５、後続音用のボディ部のアーティキュレーションエレメントＢ＃６、後続音用のリリース部のアーティキュレーションエレメントＲ＃６が順次接続されてなるものであり、各エレメント間の接続部分はクロスフェード補間される。なお、図において、各アーティキュレーションエレメントに対応する部分音波形は、便宜上、エンベロープのみで略示されているが、実際は、上述のように波形（Timbre），振幅（Amp），ピッチ（Pitch），時間（ＴＳＣ）の各テンプレートデータに基づいて合成された波形データからなっている。
【００６３】
図１０は、１つの楽音合成チャンネルにおいて、複数のアーティキュレーションエレメントに対応する部分音波形を順次発生しクロスフェード接続する処理の具体例を示すタイムチャートである。１つの楽音合成チャンネルにつき、２つのエレメント波形をクロスフェード合成するために、具体的には２つの波形発生チャンネルを使用する。図１０（ａ）は第１の波形発生チャンネルでの波形発生例を示し、（ｂ）は第２の波形発生チャンネルでの波形発生例を示す。（ａ）及び（ｂ）において、夫々の上段に示された「合成された波形データ」とは、当該アーティキュレーションエレメントに対応する部分音波形として上述のように波形（Timbre），振幅（Amp），ピッチ（Pitch），時間（ＴＳＣ）等の各テンプレートデータに基づいて合成された波形データ（例えば図７のステップＳ１５で合成される波形データ）を示しており、それぞれの下段に示された「クロスフェード制御波形」とは、各エレメントに対応する部分音波形同士をクロスフェード接続するために使用される制御波形を示している。この「クロスフェード制御波形」は、例えば図７のフローでは、ステップＳ１６の処理の過程で形成される。それぞれのチャンネルの下段のクロスフェード制御波形によって上段のエレメント波形データの振幅を制御し、各チャンネル（第１及び第２の波形発生チャンネル）のクロスフェード振幅制御済みの波形データを加算することにより、クロスフェード合成が完了する。
【００６４】
１つの奏法シーケンスを開始するとき、シーケンススタートトリガＳＳＴが与えられ、これに応じて該シーケンスの最初のアーティキュレーションエレメント（仮にＡ＃１とする）に対応する部分音波形の合成が開始される。すなわち、当該アーティキュレーションエレメントについての波形（Timbre），振幅（Amp），ピッチ（Pitch），時間（ＴＳＣ）等の各テンプレートデータに基づいて波形データを合成する。よって、図において、「合成された波形データ」は単純にブロックで示されているが、実際は、波形（Timbre）テンプレートデータに対応する波形と、振幅（Amp）テンプレートデータに対応する振幅エンベロープと、ピッチ（Pitch）テンプレートデータに対応するピッチとその時間的変化と、時間（ＴＳＣ）テンプレートデータに対応する時間長とを有している。
クロスフェード制御波形の立ち上がりは、シーケンスの最初のアーティキュレーションエレメント波形については、図示のようにフルレベルですぐに立ち上がるようにしてよい。しかし、もし、その前のシーケンスの演奏音の末尾の波形とクロスフェード合成したいならば、シーケンスの最初のクロスフェード制御波形の立ち上がりに適当な傾きのフェードイン特性をもたせればよい。このフェードインの傾きはフェードインレートＦＩＲ＃１によって設定される。
【００６５】
シーケンスの最初のアーティキュレーションエレメントＡ＃１に対応して、接続制御情報として、上記フェードインレートＦＩＲ＃１と、ネクストチャンネルスタートポイント情報ＮＣＳＰ＃１と、フェードアウトスタートポイント情報ＦＯＳＰ＃１と、フェードアウトレートＦＯＲ＃１とを有している。ネクストチャンネルスタートポイント情報ＮＣＳＰ＃１は、次のアーティキュレーションエレメント（例えばＢ＃１とする）の波形発生を開始するポイントを指示する。フェードアウトスタートポイント情報ＦＯＳＰ＃１は、自らの波形のフェードアウトを開始するポイントを指示する。図示のように、クロスフェード制御波形は、フェードアウトスタートポイントまではフラットにフルレベルを指示しているが、フェードアウトスタートポイント以降は、設定されたフェードアウトレートＦＯＲ＃１に従う傾きで、そのレベルが徐々に立ち下がる。なお、このエレメントＡ＃１に対応する前記ルールデータＲＵＬＥが、クロスフェード接続をしない直接接続を指示している場合は、これらの情報ＮＣＳＰ＃１，ＦＯＳＰ＃１は、合成された当該アーティキュレーションエレメント波形の末尾を指示するようになっていてよい。しかし、対応するルールデータＲＵＬＥが、クロスフェード接続をしない直接接続を指示している場合は、これらの情報ＮＣＳＰ＃１，ＦＯＳＰ＃１は、図示のように、当該アーティキュレーションエレメント波形の末尾よりも前の適切に設定されたポイントをそれぞれ指示する。従って、これらの情報ＮＣＳＰ＃１，ＦＯＳＰ＃１，ＦＩＲ＃１，ＦＯＲ＃１が当該エレメントＡ＃１についてのルールデータＲＵＬＥに含まれていると考えてよい。なお、これらの接続制御情報は、各アーティキュレーションエレメント毎に夫々設けられている。
【００６６】
図１０（ａ）に示す第１の波形発生チャンネルにおけるエレメント波形Ａ＃１の発生プロセスが、ネクストチャンネルスタートポイント情報ＮＣＳＰ＃１で指示されるポイントに到ると、ネクストチャンネルスタートトリガＮＣＳ＃１が図１０（ｂ）に示す第２の波形発生チャンネルに対して与えられ、該第２の波形発生チャンネルにおいて２番目のアーティキュレーションエレメントＢ＃１に対応する部分音波形の発生を開始する。また、該アーティキュレーションエレメントＢ＃１に対応するクロスフェード制御波形が、それに対応するフェードインレートＦＩＲ＃２によって設定された傾きでフェードインする（徐々に立ち上がる）。こうして、先行するアーティキュレーションエレメントＡ＃１のフェードアウト期間と、後続するアーティキュレーションエレメントＢ＃１のフェードイン期間とが重複し、両者を加算することによりクロスフェード合成が完成する。
先行するアーティキュレーションエレメントＡ＃１の波形データがフェードアウトした後は、後続するアーティキュレーションエレメントＢ＃１のみとなる。こうして、先行するアーティキュレーションエレメントＡ＃１から後続するアーティキュレーションエレメントＢ＃１へとクロスフェードされて波形が滑らかに接続される。
【００６７】
図１０（ｂ）に示す第２の波形発生チャンネルにおけるエレメント波形Ｂ＃１の発生プロセスが、フェードアウトスタートポイント情報ＦＯＳＰ＃２で指示されるポイントに到ると、図示のように、クロスフェード制御波形は、設定されたフェードアウトレートＦＯＲ＃２に従う傾きで、そのレベルが徐々に立ち下がる。また、エレメント波形Ｂ＃１の発生プロセスが、ネクストチャンネルスタートポイント情報ＮＣＳＰ＃２で指示されるポイントに到ると、ネクストチャンネルスタートトリガＮＣＳ＃２が図１０（ａ）に示す第１の波形発生チャンネルに対して与えられ、該第１の波形発生チャンネルにおいて３番目のアーティキュレーションエレメントＲ＃１に対応する部分音波形の発生を開始する。また、該アーティキュレーションエレメントＲ＃１に対応するクロスフェード制御波形が、それに対応するフェードインレートＦＩＲ＃３によって設定された傾きでフェードインする（徐々に立ち上がる）。こうして、先行するアーティキュレーションエレメントＢ＃１のフェードアウト期間と、後続するアーティキュレーションエレメントＲ＃１のフェードイン期間とが重複し、両者を加算することによりクロスフェード合成が完成する。
以下、同様に、順次クロスフェードしながら、各アーティキュレーションエレメントがシーケンスの時系列順に接続される。
【００６８】
なお、上記の例では、各テンプレートに基づいて合成したエレメント波形に対してクロスフェード合成を行うようにしている。しかし、これに限らず、各テンプレートデータ毎にクロスフェード処理を行い、クロスフェード処理済みのテンプレートデータに基づき各エレメント波形の合成を行うようにしてもよい。その場合は、同じエレメントであっても、各テンプレート毎に異なる接続ルールを適用するようにすることができる。すなわち、上記の各接続制御情報（フェードインレートＦＩＲ，ネクストチャンネルスタートポイントＮＣＳＰ，フェードアウトスタートポイントＦＯＳＰ，フェードアウトレートＦＯＲ）が、当該エレメントの波形（Timbre），振幅（Amp），ピッチ（Pitch），時間（ＴＳＣ）等の各楽音要素に対応するテンプレート毎に夫々用意される。このようにすれば、各テンプレート毎にそれに応じた最適の接続ルールに従ってクロスフェード接続を行うことができ、効果的である。
【００６９】
〔編集〕
図１１は、データ編集処理の一例を模式的に示すものである。図１１においては、アタック部の属性を持つ或るアーティキュレーションエレメントＡ＃１と、ボディ部の属性を持つ或るアーティキュレーションエレメントＢ＃１と、リリース部の属性を持つ或るアーティキュレーションエレメントＲ＃１とからなるアーティキュレーションエレメントシーケンスＡＥＳＥＱ＃ｘのデータを基にして編集を行う例を示している。勿論、ここで述べるデータ編集を実施するにあたっては、所要の編集プログラムをコンピュータが実行し、ディスプレイに表示される各種データの状態を見ながら、キーボードやマウスによってユーザーが所望の操作を行う、というような適当な実現手段を用いて実施される。
基となるシーケンスＡＥＳＥＱ＃ｘは、アーティキュレーションデータベースＡＤＢに記憶されている多数のシーケンスＡＥＳＥＱ（例えば図５（ａ）参照）から選択することができる。アーティキュレーションデータの編集は、大別すると、シーケンス内におけるアーティキュレーションエレメントの差し替えあるいは追加又は削除と、エレメント内におけるテンプレートの差し替えあるいは既存テンプレートのデータ値修正による新規テンプレートの作成とを含む。
【００７０】
図１１の編集の欄には、基となるシーケンスＡＥＳＥＱ＃ｘにおけるリリース部のアーティキュレーションエレメントＲ＃１が比較的なだらかに立ち下がる振幅エンベロープ特性を持っており、これを比較的素速く立ち下がる振幅エンベロープ特性を持つエレメントＲ＃ｘに差し替える例が示されている。差し替えに限らず、所望のエレメントの追加（例えばボディ部エレメントの追加あるいは装飾音用のエレメントの追加など）や削除（ボディ部が複数ある場合はそのうちいずりかを削除することなど）も可能である。差し替えに使用するエレメントＲ＃ｘは、アーティキュレーションデータベースＡＤＢに記憶されている多数のアーティキュレーションエレメントベクトルＡＥＶＱ（例えば図５（ｂ）参照）から選択することができる。その場合、属性情報ＡＴＲを参照して同じ属性のエレメント群の中から、差し替えに使用する所望のエレメントＲ＃ｘを、選択することができる。
【００７１】
次に、所望のエレメント（例えば差し替えたエレメントＲ＃ｘ）の中の所望の楽音要素に対応するテンプレートデータを該楽音要素に関する別のテンプレートデータに差し替える。図１１の例では、エレメントＲ＃ｘのピッチ（Pitch）テンプレートを別のピッチテンプレートPitch’（例えばピッチベンド特性を持つピッチテンプレート）に差し替えることが示されている。これにより、作成された新たなリリース部のエレメントＲ＃ｘ’は、比較的素速く立ち下がる振幅エンベロープ特性を持つと共にピッチベンドダウン特性を持つものとなる。なお、テンプレートの差し替えの場合も、属性情報ＡＴＲを参照して、多数のアーティキュレーションエレメントベクトルＡＥＶＱ（例えば図５（ｂ））における同じ属性のエレメント群の各テンプレート（ベクトルデータ）の中から、差し替えに使用する所望のテンプレート（ベクトルデータ）を、選択することができる。
なお、一部のテンプレートの差し替えによって作成された新たなエレメントＲ＃ｘ’は、新たなインデックスと所要の属性情報を付与して、アーティキュレーションデータベースＡＤＢのアーティキュレーションエレメントベクトルＡＥＶＱ（図４参照）のエリアに追加登録するとよい。
【００７２】
所望のテンプレートの具体的データ内容を修正することも可能である。その場合は、編集中のエレメントについての所望のテンプレートの具体的データ内容をテンプレートデータベースＴＤＢから読み出し、これをディスプレイ等で表示してキーボードやマウス等の操作によってそのデータ内容を適宜変更する。所望のデータ修正が終了すると、該修正されたテンプレートデータに新たなインデックスを付けてテンプレートデータベースＴＤＢに追加登録すると共に、該修正されたテンプレートデータに対して新たなベクトルデータを割り当て、この新たなベクトルデータを含む新たなエレメント（例えばＲ＃ｘ’）に対して新たなインデックスと所要の属性情報を付与してアーティキュレーションデータベースＡＤＢのアーティキュレーションエレメントベクトルＡＥＶＱ（図４参照）のエリアに追加登録するようにするとよい。
【００７３】
以上のようにして、基となるシーケンスＡＥＳＥＱ＃ｘの内容を適宜変更して新たなシーケンスデータを作成するデータ編集処理を行うことができる。このようなデータ編集処理によって作成された新たなシーケンスデータは、ユーザーアーティキュレーションエレメントシーケンスＵＲＳＥＱとして新たなシーケンス番号（例えばＵＲＳＥＱ＃ｘ）と属性情報を付与し、アーティキュレーションデータベースＡＤＢに登録する。以後、楽音合成時には、そのシーケンス番号ＵＲＳＥＱ＃ｘを用いてアーティキュレーションデータベースＡＤＢからユーザーアーティキュレーションエレメントシーケンスＵＲＳＥＱのデータを読み出すことができる。
なお、データ編集の形態は図１１で例示したものに限らず、種々の形態があり得る。例えば、基となるシーケンスＡＥＳＥＱを呼び出すことなく、所望のエレメントをエレメントベクトルＡＥＶＱから順次選択し、これによってユーザーシーケンスＵＲＳＥＱを作り上げるようにしてもよい。
【００７４】
図１２は、上述したようなデータ編集処理を実行しうるコンピュータプログラムの概略を示すフロー図である。
ステップＳ２１では、所望の奏法を指定する。この指定は、コンピュータのキーボードやマウスを用いて、シーケンスＡＥＳＥＱ又はＵＲＳＥＱの番号を直接入力するようにしてもよいし、所望の楽器音色と属性情報を入力することによって行うようにしてもよい。
次のステップＳ２２では、指定された奏法に一致するシーケンスがアーティキュレーションデータベースＡＤＢ内のＡＥＳＥＱ又はＵＲＳＥＱに存在しているかどうかを検索し、該当するシーケンスＡＥＳＥＱ又はＵＲＳＥＱを選択する。この場合、シーケンスＡＥＳＥＱ又はＵＲＳＥＱの番号を直接入力した場合は、該当するものが直接引き出される。属性情報を入力した場合は、該属性情報に該当するシーケンスＡＥＳＥＱ及び／又はＵＲＳＥＱが検索される。属性情報は複数入力可能であり、複数入力した場合は、例えばＡＮＤ論理で検索することとすればよい。勿論、これに限らずＯＲ論理で検索してもよい。検索結果はコンピュータのディスプレイで表示し、複数のシーケンスＡＥＳＥＱ及び／又はＵＲＳＥＱが検索された場合は、そのうち所望のものを選択できるようにする。
【００７５】
ステップＳ２３では編集作業を続行するか否かをユーザーに問い合わせし、ＮＯ（続行しない）であれば、出口に行き、編集処理を終了する。ステップＳ２２で選択又は検索されたシーケンスの内容が望み通りのものであり、編集の必要がない場合は、編集処理を終了する。編集処理を続行したい場合は、ステップＳ２３でＹＥＳとし、ステップＳ２４に行く。また、ステップＳ２２で指定された奏法に該当するものが検索できなかった場合も、ステップＳ２３で続行ＹＥＳと判定し、ステップＳ２４に行く。
属性情報による検索の一例を図５及び図６のようなデータがアーティキュレーションデータベースＡＤＢに記憶されている場合を例にして説明する。例えば、アーティキュレーションシーケンスの検索条件の属性として、「アタック・ベンドアップ・ノーマル」と、「ボディ・ノーマル」と、「リリース・ノーマル」が入力されたとする。この場合、図５（ａ）に示された６番目のシーケンスＡＥＳＥＱ＃６の属性に一致するので、ステップＳ２２でシーケンスＡＥＳＥＱ＃６が検索され、選択される。これで満足であれば、ステップＳ２３でＮＯとして、編集処理を終了する。編集処理を続行したければ、ステップＳ２３でＹＥＳとして、ステップＳ２４に行く。
【００７６】
ステップＳ２４では、ステップＳ２１で指定した奏法に該当するシーケンスがまだ選択されていないならば、それに一番近いシーケンスを選択する。例えば、アーティキュレーションシーケンスの検索条件の属性として、前記ステップＳ２１で「アタック・ベンドアップ・ノーマル」と、「ビブラート・ノーマル」と、「リリース・ノーマル」が入力されたとする。シーケンスＡＥＳＥＱが図５（ａ）に示す７種類しかないとすると、これを満足するシーケンスは検索できず、ステップＳ２４でそれに一番近いシーケンスＡＥＳＥＱ＃６が選択される。
ステップＳ２５では、選択されたシーケンスにおける所望のアーティキュレーションエレメント（ＡＥ）を指示するベクトルデータ（インデックス）を別のアーティキュレーションエレメントを指示するベクトルデータ（インデックス）に差し替える処理を行う。例えば、上記例の場合、ステップＳ２４で一番近いシーケンスとして選択されたシーケンスＡＥＳＥＱ＃６のエレメント構成は、ＡＴＴ−Ｎｏｒ，ＢＯＤ−Ｎｏｒ，ＲＥＬ−Ｎｏｒという３つのエレメントベクトルからなっているので（図５（ａ）参照）、ボディ部用のエレメントＢＯＤ−Ｎｏｒ（ノーマルボディ）をビブラート用のボディ部のエレメントに差し替えればよい。そのために、アーティキュレーションエレメントベクトルＡＥＶＱ（例えば図５（ｂ））を参照して、ＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）のエレメントベクトルデータ（インデックス）を引き出して、これをＢＯＤ−Ｎｏｒと差し替える。
【００７７】
必要に応じて、アーティキュレーションエレメントの追加及び削除もステップＳ２５で行う。望みのエレメントベクトルデータの差し替え及び／又は追加、削除を終えると、新規のアーティキュレーションエレメントシーケンスが作成されたことになる（ステップＳ２６）。
アーティキュレーションエレメントの差し替え及び／又は追加、削除によって、新規作成されたアーティキュレーションエレメントシーケンス内におけるエレメント間の波形のつながりが保証されないものとなったので、次のステップＳ２７において、接続ルールデータＲＵＬＥを設定する。次のステップＳ２８では、設定した接続ルールデータＲＵＬＥでよいかどうかを確認する。ＯＫでなければ、ステップＳ２７に戻り、接続ルールデータＲＵＬＥを設定し直す。設定した接続ルールデータＲＵＬＥでＯＫであれば、ステップＳ２９に行く。
ステップＳ２９では、編集処理を続行するかどうかを問い合わせる。編集処理を続行しない場合は、ステップＳ３０に行き、新規作成されたアーティキュレーションエレメントシーケンスをユーザーシーケンスＵＲＳＥＱとしてアーティキュレーションデータベースＡＤＢに登録する。編集処理を続行したければ、ステップＳ２９でＹＥＳとして、ステップＳ２４又はＳ３１に行く。この場合、アーティキュレーションエレメントの差し替え及び／又は追加、削除に戻りたい場合はステップＳ２４に戻るものとし、テンプレートデータの編集に移りたい場合はステップＳ３１に行く。
【００７８】
ステップＳ３１では、テンプレートデータを編集したいアーティキュレーションエレメント（ＡＥ）を選択する。次のステップＳ３２では、選択されたアーティキュレーションエレメント（ＡＥ）の中の所望の楽音要素に対応するテンプレートベクトルデータを該楽音要素に関する別のテンプレートベクトルデータに差し替える。
例えば、アーティキュレーションシーケンスの検索条件の属性として、「アタック・ベンドアップ・ノーマル」と、「少し遅いビブラート」と、「リリース・ノーマル」がステップＳ２１で指定入力され、図５（ａ）に示されたシーケンスＡＥＳＥＱのうち一番近いシーケンスとしてＡＥＳＥＱ＃６がステップＳ２４で選択されたとする。前述の通り、このシーケンスＡＥＳＥＱ＃６のボディ部用のエレメントはＢＯＤ−Ｎｏｒ（ノーマルボディ）であるから、これをステップＳ２５でビブラート用のボディ部のエレメント例えばＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）に差し替える。そして、ステップＳ３１で、このＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）のエレメントを選択し、これを編集の対象とする。そして、望みの「少し遅いビブラート」を実現するために、ステップＳ３２において、ＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）の各テンプレートベクトルのうち、時間テンプレートのベクトルＴＳＣ−Ｂ−ｖｉｂを、ビブラートスピードを少し遅くする時間テンプレートのベクトル（例えばＴＳＣ−Ｂ−ｓｐ２とする）に差し替える。
【００７９】
こうして、ＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）の各テンプレートのうち、時間テンプレートベクトルをＴＳＣ−Ｂ−ｖｉｂからＴＳＣ−Ｂ−ｓｐ２に差し替えた新たなアーティキュレーションエレメントが作成される（ステップＳ３３）。また、シーケンスＡＥＳＥＱ＃６のボディ部用のエレメントを、この新たに作成されたアーティキュレーションエレメントに差し替えてなる、新たなアーティキュレーションエレメントシーケンスが作成される（ステップＳ３３）。
続くステップＳ３４，Ｓ３５，Ｓ３６は前述のステップＳ２７，Ｓ２８，Ｓ２９と同様の処理からなる。すなわち、差し替えたテンプレートデータによって、新規作成されたアーティキュレーションエレメントシーケンス内におけるエレメント間の波形のつながりが保証されないものとなったので、前述と同様に接続ルールデータＲＵＬＥを設定し直す。
【００８０】
ステップＳ３６では、編集処理を続行するかどうかを問い合わせる。編集処理を続行しない場合は、ステップＳ３７に行き、新規作成されたアーティキュレーションエレメント（ＡＥ）をユーザーアーティキュレーションエレメントベクトル（ＡＥＶＱ）としてアーティキュレーションデータベースＡＤＢに登録する。編集処理を続行したければ、ステップＳ３６でＹＥＳとして、ステップＳ３１又はＳ３８に行く。この場合、テンプレートベクトルの差し替えに戻りたい場合はステップＳ３１に戻るものとし、テンプレートデータの具体的内容の編集に移りたい場合はステップＳ３８に行く。
ステップＳ３８では、データ内容を編集したい所要のアーティキュレーションエレメント（ＡＥ）内のテンプレートを選択する。次のステップＳ３９では、選択されたテンプレートのデータをテンプレートデータベースＴＤＢから読み出し、その具体的データ内容を適宜変更する。
【００８１】
例えば、アーティキュレーションシーケンスの検索条件の属性として、「アタック・ベンドアップ・ノーマル」と、「かなり遅いビブラート」と、「リリース・ノーマル」がステップＳ２１で指定入力され、図５（ａ）に示されたシーケンスＡＥＳＥＱのうち一番近いシーケンスとしてＡＥＳＥＱ＃６がステップＳ２４で選択されたとする。前述の通り、このシーケンスＡＥＳＥＱ＃６のボディ部用のエレメントはＢＯＤ−Ｎｏｒ（ノーマルボディ）であるから、これをステップＳ２５でビブラート用のボディ部のエレメント例えばＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）に差し替える。そして、ステップＳ３１で、このＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）のエレメントを選択し、これを編集の対象とする。そして、望みの「かなり遅いビブラート」を実現するために、ステップＳ３２において、ＢＯＤ−Ｖｉｂ−ｎｏｒ（ボディ・ノーマルビブラート）の各テンプレートベクトルのうち、時間テンプレートのベクトルＴＳＣ−Ｂ−ｖｉｂを、既存の時間テンプレートのうちビブラートスピードを最も遅くする時間テンプレートのベクトル（例えばＴＳＣ−Ｂ−ｓｐ１とする）に差し替える。
しかし、この時間テンプレートベクトルＴＳＣ−Ｂ−ｓｐ１で指示された時間テンプレートでは、望みの「かなり遅いビブラート」がまだ実現できない場合、ステップＳ３８でこの時間テンプレートベクトルＴＳＣ−Ｂ−ｓｐ１を選択し、ステップ３９でその具体的データ内容を更に遅いビブラートを実現する内容に変更する。また、変更によって作成された新たな時間テンプレートに対して新規のベクトルデータ（例えばＴＳＣ−Ｂ−ｓｐ０とする）を割り当てる。
【００８２】
こうして、新規の時間テンプレートデータとそのベクトルデータＴＳＣ−Ｂ−ｓｐ０が作成される（ステップＳ４０）。また、時間テンプレートベクトルを新規のベクトルに変更した新たなアーティキュレーションエレメント（ＡＥ）が作成され、また、シーケンスＡＥＳＥＱ＃６のボディ部用のエレメントを、この新たに作成されたアーティキュレーションエレメント（ＡＥ）に差し替えてなる、新たなアーティキュレーションエレメントシーケンスが作成される（ステップＳ４０）。
続くステップＳ４１，Ｓ４２，Ｓ４３は前述のステップＳ２７，Ｓ２８，Ｓ２９と同様の処理からなる。すなわち、データ修正したテンプレートデータによって、新規作成されたアーティキュレーションエレメントシーケンス内におけるエレメント間の波形のつながりが保証されないものとなったので、前述と同様に接続ルールデータＲＵＬＥを設定し直す。
【００８３】
ステップＳ４３では、編集処理を続行するかどうかを問い合わせる。編集処理を続行しない場合は、ステップＳ４４に行き、新規作成されたテンプレートデータをテンプレートデータベースＴＤＢに登録する。編集処理を続行したければ、ステップＳ４３でＹＥＳとして、ステップＳ３８に戻る。ステップＳ４４の後、ステップＳ３７に行き、新規作成されたアーティキュレーションエレメント（ＡＥ）をユーザーアーティキュレーションエレメントベクトル（ＡＥＶＱ）としてアーティキュレーションデータベースＡＤＢに登録する。更に、ステップＳ３０に行き、新規作成されたアーティキュレーションエレメントシーケンスをユーザーシーケンスＵＲＳＥＱとしてアーティキュレーションデータベースＡＤＢに登録する。
編集処理の手順は図１２に限定されるものではなく、適宜別の手順で処理してもよい。また、前述のように、基となるシーケンスＡＥＳＥＱを呼び出すことなく、所望のエレメントをエレメントベクトルＡＥＶＱから順次選択し、各エレメント内のテンプレートデータを適宜差し替えたりデータ修正したりして、これに基づきユーザーシーケンスＵＲＳＥＱを作り上げるようにしてもよい。また、特に、図示しなかったが、編集処理の適宜の段階において、編集中のアーティキュレーションエレメントの波形に対応する音を発音し、ユーザーが耳で確認できるようにするとよい。
【００８４】
〔パーシャルベクトルの説明〕
図１３は、パーシャルベクトルＰＶＱの考え方を概念的に示すものである。図１３（ａ）は、或る区間のアーティキュレーションエレメントについて、或る楽音要素（例えば波形）について分析された全区間のデータ（つまり通常のテンプレートデータ）を模式的に示したものである。図１３（ｂ）は、（ａ）に示す全区間のデータから分散的に取り出した部分的なテンプレートデータＰＴ１，ＰＴ２，ＰＴ３，ＰＴ４を模式的に示すものである。この部分的なテンプレートデータＰＴ１，ＰＴ２，ＰＴ３，ＰＴ４が、当該楽音要素のテンプレートデータとしてテンプレートデータベースＴＤＢに記憶される。このテンプレートデータについてのテンプレートベクトルは、通常と同様に（全区間のデータをそのままテンプレートデータとして記憶する場合と同様に）、１つ割り当てられる。例えば、このテンプレートデータについてのテンプレートベクトルが「Ｔｉｍｂ−Ｂ−ｎｏｒ」であるとすると、各部分的なデータＰＴ１，ＰＴ２，ＰＴ３，ＰＴ４のテンプレートベクトルは「Ｔｉｍｂ−Ｂ−ｎｏｒ」であり、共通している。なお、この場合、このテンプレートベクトル「Ｔｉｍｂ−Ｂ−ｎｏｒ」に付属するデータとして、パーシャルベクトルＰＶＱを有することを示す識別データを、登録しておくものとする。
【００８５】
パーシャルベクトルＰＶＱは、各部分的なテンプレートデータＰＴ１〜ＰＴ４毎に、該データのテンプレートデータベースＴＤＢでの記憶位置を示すデータ（例えばループスタートアドレスに相当）と、該データの幅Ｗを示すデータ（例えばループエンドアドレスに相当）と、該データを繰返す期間ＬＴを示すデータとを含んでいる。図では、便宜上、幅Ｗと期間ＬＴがどの部分的データＰＴ１〜ＰＴ４でも共通しているかのように図示しているが、これは各データＰＴ１〜ＰＴ４毎に任意である。また、部分的テンプレートデータＰＴ１〜ＰＴ４の数も、４個に限らず、任意である。
パーシャルベクトルＰＶＱに基づく各部分的テンプレートデータＰＴ１〜ＰＴ４をそれぞれその繰返し期間（ＬＴ）の分だけループ読み出しし、読み出された各ループを接続することにより（ａ）に示したような全区間のデータを再現することができる。この再現処理をデコード処理ということにする。このデコード処理法としては、一例として、それぞれの部分的テンプレートデータＰＴ１〜ＰＴ４をその繰返し期間ＬＴの分だけ単純にループ読出しするようにするだけでもよいし、別の例として、相前後する２つの波形をループ読出しながらクロスフェード合成するようにしてもよい。後者の方が各ループのつながりが良くなるので、好ましい。
【００８６】
図１３（ｃ），（ｄ）は、そのようなクロスフェード合成によるデコード処理例を示している。（ｃ）はクロスフェード合成用の第１のチャンネルにおけるクロスフェード制御波形例を示し、（ｄ）はクロスフェード合成用の第２のチャンネルにおけるクロスフェード制御波形例を示す。すなわち、最初の部分的テンプレートデータＰＴ１を（ｃ）に示すフェードアウト用制御波形ＣＦ１１で期間ＬＴの間にフェードアウトし、同時に、次の部分的テンプレートデータＰＴ２を（ｄ）に示すフェードイン用制御波形ＣＦ２１で期間ＬＴの間にフェードインする。フェードアウト制御されたデータＰＴ１とフェードイン制御されたデータＰＴ２とを加算することにより、期間ＬＴの間でデータＰＴ１からデータＰＴ２にクロスフェードするループ読出しが行われる。次に、データＰＴ１をデータＰＴ３に切換える共にその制御波形をフェードイン波形ＣＦ１２に切換え、データＰＴ２の制御波形をフェードアウト波形ＣＦ２２に切換え、クロスフェード合成を行う。以後、図示のように順次切換えてクロスフェード合成を行う。なお、クロスフェード合成を行うに際しては、２つのループ読出波形の位相とピッチが適切に合うように処理する。
【００８７】
図１４は、パーシャルベクトルＰＶＱを考慮したテンプレート読出し処理の一例を示すフロー図である。ここに示されたステップＳ１３〜Ｓ１４ｃは、図７のステップＳ１３，Ｓ１４の部分の処理に対応している。ステップＳ１３では、アーティキュレーションエレメントベクトルＡＥＶＱのデータ群の中から指定されたエレメントに対応する各テンプレートのベクトルデータを読み出す。ステップＳ１４ａでは、パーシャルベクトルＰＶＱを有することを示す識別データに基づきパーシャルベクトルＰＶＱが有るか否かをチェックする。パーシャルベクトルＰＶＱがなければ、ステップＳ１４ｂに行き、テンプレートデータベースＴＤＢから各テンプレートデータを読み出す。パーシャルベクトルＰＶＱが有れば、ステップＳ１４ｃに行き、そのパーシャルベクトルＰＶＱに基づき上述の「デコード処理」を行う。これにより、該エレメントについての全区間のテンプレートデータを再現（デコード）する。
【００８８】
なお、或るアーティキュレーションエレメントにパーシャルベクトルＰＶＱを適用する場合、そのアーティキュレーションエレメントの全ての楽音要素についてのテンプレートを部分的テンプレートとする必要はなく、部分的テンプレートとしてループ読出しするのに適した種類の楽音要素に関してのみ部分的テンプレートとすればよい。
また、パーシャルベクトルＰＶＱに基づく、当該エレメントについての全区間のテンプレートデータの再生方法としては、上述のような単純なループ読出しに限らず、その他適宜の方法を用いてよい。例えば、該パーシャルベクトルＰＶＱに対応する所定長の部分的テンプレートを必要なだけ時間軸伸張する、あるいは限られた複数の部分的テンプレートをランダムに又は所定のシーケンスで組み合わせて当該エレメントについての全区間または必要な区間にわたって配置する、などの方法を用いてよい。
【００８９】
〔ビブラート合成の説明〕
ここでは、ビブラート合成の仕方についての新しいアイディアについていくつか説明する。
図１５は、ビブラート成分を持つボディ部の波形データをパーシャルベクトルＰＶＱの考え方を適用してデータ圧縮する例と、そのデコード例とを概略的に示す図である。（ａ）は、ビブラートを含むオリジナル波形Ａを例示する。このオリジナル波形においては、ビブラートの１周期において波形ピッチが変動しているのみならず、振幅も変動している。（ｂ）は（ａ）のオリジナル波形から分散的に複数の波形ａ１，ａ２，ａ３，ａ４を取り出した状態を例示する。これらの波形ａ１〜ａ４としては、波形形状（音色）がそれぞれ異なっているものを選び、また、１波長（波形１周期）を同じデータサイズ（アドレス数）としてそれぞれ１又は複数波で取り出す。これらの波形ａ１〜ａ４を部分的テンプレートデータ（つまりループ波形データ）としてテンプレートデータベースＴＤＢに記憶する。この読出し法は、各波形ａ１〜ａ４を順次ループ読出しすると共にクロスフェード合成することにより行う。
【００９０】
図１５（ｃ）はビブラート１周期の間にピッチが変動するピッチテンプレートを示している。なお、このピッチテンプレートのピッチ変化パターンは図示では高ピッチから始まって低ピッチに移行し、最後に高ピッチに戻るパターンであるが、これに限らず、他のパターン（例えば低ピッチから高ピッチに移行し、低ピッチに戻るパターンや、中間のピッチから始まって高ピッチ→低ピッチ→中間ピッチに戻るパターンなど）であってもよい。
【００９１】
図１５（ｄ）はループ読出した各波形ａ１〜ａ４に対するクロスフェード制御波形を例示している。（ｃ）のピッチテンプレートに従うピッチで最初は波形ａ１とａ２をそれぞれループ読出し（繰返し読出し）し、ループ読出した波形ａ１に対してはフェードアウト、ループ読出した波形ａ２に対してはフェードインの振幅制御をして両者を合成する。これにより、波形ａ１からａ２に向かってその波形形状がクロスフェードして順次変化していき、かつそのクロスフェード合成波形のピッチがピッチテンプレートに従うピッチで順次変化する。以下、同様に波形を順次切換えて、ａ２とａ３とで、次にａ３とａ４とで、次にａ４とａ１とで、クロスフェード合成をそれぞれ行う。
【００９２】
図１５（ｅ）は合成された波形データＡ’を示す。この波形データＡ’は、ビブラート１周期の間で、その波形形状が波形ａ１から順にａ４まで滑らかにクロスフェードされて変化していき、かつ、そのピッチはピッチテンプレートに従って変化していくことによりビブラートが付けられたものである。上記のようなビブラート１周期分の波形データＡ’の合成処理を繰り返すことにより、複数のビブラート周期にわたる波形データを合成することができる。その場合、（ｃ）に示すようなビブラート１周期分のピッチテンプレートを必要なビブラート周期数分だけループさせればよい。そのために、パーシャルベクトルＰＶＱの構造が階層的になっていてよい。すなわち、ビブラート１周期分の波形合成のために波形ａ１〜ａ４が上記のように個々にループ読出しされると共に、その全体（ビブラート１周期分）がピッチテンプレートのルーピングに従って更に繰り返されるような階層構造となっていてよい。
【００９３】
図１６は別のビブラート合成の別の例を示す図である。この例では、ビブラートを含むオリジナル波形の複数のビブラート周期にわたる区間Ａ，Ｂ，Ｃから分散的に複数の波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４を取り出す。これらの波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４は、前述と同様に、波形形状（音色）が異なっているものを選び、また、１波長（波形１周期）を同じデータサイズ（アドレス数）としてそれぞれ１又は複数波で取り出す。これらの波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４を部分的テンプレートデータとしてテンプレートデータベースＴＤＢに記憶する。この読出し法は、基本的には、上記例と同様に、各波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４を順次ループ読出しすると共にクロスフェード合成するものであるが、上記例と異なるのは、図１６の例では各波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４の時間的位置を入れ替えて、クロスフェード合成の対象となる波形を任意に組み合わせることにより、ビブラートにおける波形音色変化のバリエーションを多様な組合せで得ることができるようにしている点である。
【００９４】
例えば、各波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４の１ビブラート周期内における相対的時間位置は変えずに、これらの波形の位置の入れ替えを行うと、例えば、ａ１→ｂ２→ｃ３→ａ４→ｂ１→ｃ２→ａ３→ｂ４→ｃ１→ａ２→ｂ３→ｃ４というような波形位置の入れ替えパターンを得ることができる。このような波形位置の入れ替えパターンに従って上記図１５と同様のクロスフェード合成によるビブラート合成処理を行えば、オリジナルの波形位置パターンに従うクロスフェード合成によるビブラート合成処理によって得られるビブラートとは異なる音色変化からなるビブラートを得ることができる。なお、各波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４の１ビブラート周期内における相対的時間位置は変えずに、これらの波形の位置の入れ替えを行うようにした理由は、入れ替えによる不自然さが生じないようにするためである。
このような波形位置の入れ替えパターンは、図１６に示した１２個の波形ａ１〜ａ４，ｂ１〜ｂ４，ｃ１〜ｃ４の場合、ビブラート１周期につき３の４乗＝８１通りの組合せがあり、ビブラート３周期では、８１の３乗の組合せがある。従って、ビブラートにおける波形音色変化のバリエーションが極めて多様なものとなる。どの組合せパターンを採用するかはランダム選択するようにすればよい。
【００９５】
図１５又は図１６に示すような手法で作成されたビブラート特性を持つ波形（例えば図１５（ｅ）のＡ’）あるいはその他の手法で作成されたビブラート特性を持つ波形に対しては、ピッチ（Pitch）テンプレート、振幅（Amp）テンプレート、時間（ＴＳＣ）テンプレートによって、そのビブラート特性を可変制御することができる。例えば、ピッチ（Pitch）テンプレートによってビブラートの深さを制御することができ、振幅（Amp）テンプレートによってビブラートと共に付加される振幅変調の深さを制御することができ、時間（ＴＳＣ）テンプレートによってビブラート１周期を構成する波形の時間長を伸縮制御することによりビブラートの速さを制御する（ビブラート周期を制御する）ことができる。
【００９６】
例えば図１５においては、（ｄ）に示す各クロスフェード区間の時間長を所望の時間（ＴＳＣ）テンプレートに応じて時間軸伸縮制御（ＴＳＣ制御）することにより、楽音再生ピッチ（波形読出アドレスの変化レート）を変化させずに該ＴＳＣ制御を行なった場合は、ビブラート１周期の時間長を伸縮制御することができ、これにより、ビブラート周波数の制御が行なえる。なお、その場合、ＴＳＣテンプレートを、（ｃ）に示すようようなピッチテンプレートと同様にビブラート１周期分に対応して用意した場合は、ビブラート１周期分の該ＴＳＣテンプレートを必要なビブラート周期数分だけループさせればよい。なお、ＴＳＣテンプレートに応じた波形の時間軸伸縮制御に連動して、ピッチ（Pitch）テンプレート及び振幅（Amp）テンプレートも時間軸伸縮制御するようにすれば、これらの楽音要素を連動して時間軸伸縮制御することができる。
なお、ピッチテンプレートが示すピッチ変化エンベロープ特性を上下にシフトすることにより、ビブラート波形の楽音再生ピッチを可変制御することもできる。その場合、ＴＳＣテンプレートによる波形の時間軸制御は行わないようにすることにより、楽音再生ピッチにかかわらず、ビブラート１周期の時間長を一定に維持するよう制御することができる。
【００９７】
〔接続ルールＲＵＬＥの説明〕
次に、アーティキュレーションエレメント同士の接続の仕方を記述するルールデータＲＵＬＥの具体例について説明する。
各楽音要素別に、例えば、下記のような接続ルールがある。
（１）波形（Timbre）テンプレートの接続ルール
ルール１：直接接続。プリセットされた奏法シーケンス（アーティキュレーションエレメントシーケンスＡＥＳＥＱ）のように、各アーティキュレーションエレメント同士の滑らかな接続が予め保証されている場合は、補間を行うことなく、直接的に接続することで問題ない。
ルール２：先行エレメントの波形Ａの終端部分を引き延ばした補間。この補間例は図１７（ａ）に示すような形態であり、先行エレメントの波形Ａの終端部分を引き延ばして接続用波形Ｃ１を合成する。後続エレメントの波形Ｂはそのまま使用し、先行エレメントの波形Ａの末尾に延びた接続用波形Ｃ１をフェードアウト、後続エレメントの波形Ｂの始まり部分をフェードインで、クロスフェード合成する。接続用波形Ｃ１は、先行エレメントの波形Ａの終端部分の１周期波形または複数周期波形を必要な長さだけ繰り返して形成する。
【００９８】
ルール３：後続エレメントの波形Ｂの先端部分を引き延ばした補間。この補間例は図１７（ｂ）に示すような形態であり、後続エレメントの波形Ｂの先端部分を引き延ばして接続用波形Ｃ２を合成する。先行エレメントの波形Ａはそのまま使用し、先行エレメントの波形Ａの終端部分をフェードアウト、接続用波形Ｃ２をフェードインで、クロスフェード合成する。この場合も、接続用波形Ｃ２は、後続エレメントの波形Ｂの先端部分の１周期波形または複数周期波形を必要な長さだけ繰り返して形成する。
ルール４：先行エレメントの波形Ａの終端部分と後続エレメントの波形Ｂの先端部分の双方を引き延ばした補間。この補間例は図１７（ｃ）に示すような形態であり、先行エレメントの波形Ａの終端部分を引き延ばして合成した接続用波形Ｃ１と、後続エレメントの波形Ｂの先端部分を引き延ばして合成した接続用波形Ｃ２とをクロスフェード合成する。なお、このルール４の場合は、Ｃ１とＣ２のクロスフェード合成期間の分だけ、合成された波形全体の時間が延びることになるので、ＴＳＣ制御によってその分だけ時間軸圧縮処理を施すものとする。
【００９９】
ルール５：図１７（ｄ）に示すように、先行エレメントの波形Ａと後続エレメントの波形Ｂとの間に、予め用意した接続用波形Ｃを挿入する。その際、先行エレメントの波形Ａの終端部分と後続エレメントの波形Ｂの先端部分は、接続用波形Ｃの分だけ一部除去する。あるいは、先行エレメントの波形Ａの終端部分と後続エレメントの波形Ｂの先端部分を削除することなく、接続用波形Ｃを挿入してもよいが、その場合は、合成された波形全体の時間が延びることになるので、ＴＳＣ制御によってその分だけ時間軸圧縮処理を施すものとする。
ルール６：図１７（ｅ）に示すように、先行エレメントの波形Ａと後続エレメントの波形Ｂとの間に、予め用意した接続用波形Ｃを挿入し、その際、先行エレメントの波形Ａの終端部分と接続用波形Ｃの前半部をクロスフェードロスフェード合成し、後続エレメントの波形Ｂの先端部分と接続用波形Ｃの後半部をクロスフェードロスフェード合成する。この場合も、もし、合成された波形全体の時間が延びるか縮むかした場合は、ＴＳＣ制御によってその分だけ時間軸圧縮処理を施すものとする。
【０１００】
（２）その他のテンプレートの接続ルール
波形（Timbre）テンプレート以外の他のテンプレート（振幅、ピッチ、時間）のデータは、エンベロープ波形状のシンプルな形態をとるので、２チャンネルのクロスフェード制御波形を使用した複雑な補間処理を使用せずに、もっとシンプルな補間処理で滑らかな接続を実現することができる。特に、エンベロープ波形状のテンプレートデータの補間合成にあたっては、補間結果を本来のテンプレートデータ値に対する差分値（正負符号付き）で生成するようにするのが好ましい。そうすれば、リアルタイムでテンプレートデータベースＴＤＢから読み出した本来のテンプレートデータ値に対して、補間結果たる差分値（正負符号付き）を加算するだけで、滑らかな接続のための補間演算を達成することができることになり、極めて簡単である。
ルール１：直接接続。この例を図１８（ａ）に示す。１番目のエレメントのテンプレート（エンベロープ波形）ＡＥ１の末尾と２番目のエレメントのテンプレート（エンベロープ波形）ＡＥ２−ａの先頭のレベルが一致しており、２番目のエレメントのテンプレート（エンベロープ波形）ＡＥ２−ａの末尾と３番目のエレメントのテンプレート（エンベロープ波形）ＡＥ３の先頭のレベルも一致しているので、補間の必要がない。
【０１０１】
ルール２：接続個所前後の局所的な範囲でスムーズ化する補間処理を行う。この例を図１８（ｂ）に示す。１番目のエレメントのテンプレート（エンベロープ波形）ＡＥ１の終端部分と２番目のエレメントのテンプレート（エンベロープ波形）ＡＥ２−ｂの先端部分における所定の範囲ＣＦＴ１で、ＡＥ１からＡＥ２−ｂに滑らかに移行するように補間処理を行う。また、２番目のエレメントのテンプレート（エンベロープ波形）ＡＥ２−ｂの終端部分と３番目のエレメントのテンプレート（エンベロープ波形）ＡＥ３の先端部分における所定の範囲ＣＦＴ２で、ＡＥ２−ｂからＡＥ３に滑らかに移行するように補間処理を行う。
なお、補間の結果得られたデータＥ１’，Ｅ２’，Ｅ３’は、各エレメントの本来のテンプレート値（エンベロープ値）Ｅ１，Ｅ２，Ｅ３に対する差分値（正負符号付き）からなるものとする。そのようにすれば、前述の通り、リアルタイムでテンプレートデータベースＴＤＢから読み出した本来のテンプレートデータ値Ｅ１，Ｅ２，Ｅ３に対して、補間結果たる差分値Ｅ１’，Ｅ２’，Ｅ３’を加算するだけで、滑らかな接続のための補間演算を達成することができることになり、極めて簡単である。
【０１０２】
このルール２の補間処理の具体例は、図１９（ａ）（ｂ）（ｃ）に示すように、複数通りのバリエーションがある。
図１９（ａ）の例では、先行エレメントＡＥnの終了点のテンプレートデータ値ＥＰと後続エレメントＡＥn+1の開始点のテンプレートデータ値ＳＰとの中間のレベルＭＰを目標値として、先行エレメントＡＥnの終端部分の補間領域ＲＣＦＴにおいて、該先行エレメントＡＥnのテンプレートデータ値を目標値ＭＰに漸近させるよう補間を行う。その結果、先行エレメントＡＥnのテンプレートデータの軌跡が、本来のラインＥ１からＥ１’に示すように変わる。また、後続エレメントＡＥn+1の先端部分の補間領域ＦＣＦＴにおいて、該後続エレメントＡＥn+1のテンプレートデータ値を上記中間値ＭＰから開始させ、ラインＥ２で示す本来のテンプレートデータ値の軌跡に漸近させるよう補間を行う。その結果、補間領域ＦＣＦＴにおける後続エレメントＡＥn+1のテンプレートデータ値の軌跡がラインＥ２’に示すように本来の軌跡Ｅ２に漸近する。
【０１０３】
図１９（ｂ）の例では、後続エレメントＡＥn+1の開始点のテンプレートデータ値ＳＰを目標値として、先行エレメントＡＥnの終端部分の補間領域ＲＣＦＴにおいて、該先行エレメントＡＥnのテンプレートデータ値を目標値ＳＰに漸近させるよう補間を行う。その結果、先行エレメントＡＥnのテンプレートデータの軌跡が、本来のラインＥ１からＥ１'’に示すように変わる。この場合は、後続エレメントＡＥn+1の先端部分の補間領域ＦＣＦＴは存在しない。
図１９（ｃ）の例では、後続エレメントＡＥn+1の先端部分の補間領域ＦＣＦＴにおいて、該後続エレメントＡＥn+1のテンプレートデータ値を上記先行エレメントＡＥnの終了点のテンプレートデータ値ＥＰから開始させ、ラインＥ２で示す本来のテンプレートデータ値の軌跡に漸近させるよう補間を行う。その結果、補間領域ＦＣＦＴにおける後続エレメントＡＥn+1のテンプレートデータ値の軌跡がラインＥ２'’に示すように本来の軌跡Ｅ２に漸近する。この場合は、先行エレメントＡＥnの後端部分の補間領域ＲＣＦＴは存在しない。
図１９においても、補間の結果得た各軌跡Ｅ１’，Ｅ２’，Ｅ１''，Ｅ２''を示すデータは、本来のテンプレートデータ値Ｅ１，Ｅ２に対する差分値からなるものとする。
【０１０４】
ルール３：エレメントの全区間にわたってスムーズ化する補間処理を行う。この例を図１８（ｃ）に示す。１番目のエレメントのテンプレート（エンベロープ波形）ＡＥ１と、３番目のエレメントのテンプレート（エンベロープ波形）ＡＥ３は変更せずに、その中間の２番目のエレメントのテンプレート（エンベロープ波形）ＡＥ２−ｂのデータを全体的に補間し、その先端は１番目のエレメントのテンプレート（エンベロープ波形）ＡＥ１の末尾に一致し、その終端は３番目のエレメントのテンプレート（エンベロープ波形）ＡＥ３の先頭に一致するようにする。なお、この場合も、補間の結果得られたデータＥ２’は、本来のテンプレート値（エンベロープ値）Ｅ２に対する差分値（正負符号付き）からなるものとする。
このルール３の補間処理の具体例は、図２０（ａ）（ｂ）（ｃ）に示すように、複数通りのバリエーションがある。
図２０（ａ）は、中間のエレメントＡＥnのみで補間を行う例を示している。Ｅ１は、該エレメントＡＥnのテンプレートデータ値の本来の軌跡を示す。先行するエレメントＡＥn-1の終了点のテンプレートデータ値ＥＰ0と中間のエレメントＡＥnの本来の開始点のテンプレートデータ値ＳＰとの差に応じて、該エレメントＡＥnのテンプレートデータ値の軌跡Ｅ１をシフトして、軌跡ＥａからなるテンプレートデータをエレメントＡＥnの全区間に対応して作成する。また、中間のエレメントＡＥnの本来の終了点のテンプレートデータ値ＥＰと後続するエレメントＡＥn+1の開始点のテンプレートデータ値ＳＰ1との差に応じて、該エレメントＡＥnのテンプレートデータ値の軌跡Ｅ１をシフトして、軌跡ＥｂからなるテンプレートデータをエレメントＡＥnの全区間に対応して作成する。次に、軌跡Ｅａのテンプレートデータと軌跡Ｅｂのテンプレートデータとを、ＥａからＥｂに滑らかに変化するようにクロスフェード補間し、軌跡Ｅ１'からなる補間済みのテンプレートデータをエレメントＡＥnの全区間に対応して得る。
【０１０５】
図２０（ｂ）は、中間のエレメントＡＥnの全区間でデータ変更を行うと共に、中間のエレメントＡＥnの終端部分の所定領域ＲＣＦＴと後続エレメントＡＥn+1の先端部分の所定領域ＦＣＦＴとにおいて補間を行う例を示している。
まず、上記と同様に、先行するエレメントＡＥn-1の終了点のテンプレートデータ値ＥＰ0と中間のエレメントＡＥnの本来の開始点のテンプレートデータ値ＳＰとの差に応じて、該エレメントＡＥnのテンプレートデータ値の軌跡Ｅ１をシフトして、軌跡ＥａからなるテンプレートデータをエレメントＡＥnの全区間に対応して作成する。
【０１０６】
次に、この軌跡Ｅａの終了点のテンプレートデータ値ＥＰａと後続エレメントＡＥn+1の開始点のテンプレートデータ値ＳＰとの中間のレベルＭＰａを目標値として、先行エレメントＡＥnの終端部分の所定領域ＲＣＦＴにおいて、該先行エレメントＡＥnの軌跡Ｅａのテンプレートデータ値を目標値ＭＰａに漸近させるよう補間を行う。その結果、先行エレメントＡＥnのテンプレートデータの軌跡Ｅａが、本来の軌跡からＥａ’に示すように変わる。また、後続エレメントＡＥn+1の先端部分の所定領域ＦＣＦＴにおいて、該後続エレメントＡＥn+1のテンプレートデータ値を上記中間値ＭＰａから開始させ、ラインＥ２で示す本来のテンプレートデータ値の軌跡に漸近させるよう補間を行う。その結果、補間領域ＦＣＦＴにおける後続エレメントＡＥn+1のテンプレートデータ値の軌跡がラインＥ２’に示すように本来の軌跡Ｅ２に漸近する。
【０１０７】
図２０（ｃ）は、中間のエレメントＡＥnの全区間でデータ変更を行うと共に、先行エレメントＡＥn-1の終端部分の所定領域ＲＣＦＴと中間エレメントＡＥnの先端部分の所定領域ＦＣＦＴとにおいて補間を行い、かつ、中間のエレメントＡＥnの終端部分の所定領域ＲＣＦＴと後続エレメントＡＥn+1の先端部分の所定領域ＦＣＦＴとにおいて補間を行う例を示している。
まず、中間のエレメントＡＥnのテンプレートデータ値の本来の軌跡Ｅ１を適当なオフセット量ＯＦＳＴだけシフトして、軌跡ＥｃからなるテンプレートデータをエレメントＡＥnの全区間に対応して作成する。
【０１０８】
次に、先行エレメントＡＥn-1の終端部分の所定領域ＲＣＦＴと中間エレメントＡＥnの先端部分の所定領域ＦＣＦＴとにおいて、両者のテンプレートデータの軌跡Ｅ0とＥｃとが滑らかにつながるように補間処理を行い、補間結果としての軌跡Ｅ0’とＥｃ’とを該補間領域において得る。また、中間エレメントＡＥnの終端部分の所定領域ＲＣＦＴと後続エレメントＡＥn+1の先端部分の所定領域ＦＣＦＴとにおいて、両者のテンプレートデータの軌跡ＥｃとＥ２とが滑らかにつながるように補間処理を行い、補間結果としての軌跡Ｅｃ''とＥ２''とを該補間領域において得る。
図２０においても、補間の結果得た各軌跡Ｅ１’，Ｅａ，Ｅａ’，Ｅ２’，Ｅｃ，Ｅｃ’，Ｅｃ''，Ｅ0’を示すデータは、本来のテンプレートデータ値Ｅ１，Ｅ２，Ｅ0に対する差分値からなるものとする。
【０１０９】
〔接続処理を含む楽音合成処理の概念的説明〕
図２１は、各楽音要素に対応するテンプレートデータ毎に上述の接続処理を行い、接続処理済みのテンプレートデータに基づき楽音合成処理を行うようにした楽音合成装置の構成を概念的に説明するブロック図である。
テンプレートデータ供給ブロックＴＢ１，ＴＢ２，ＴＢ３，ＴＢ４では、それぞれ、先行するアーティキュレーションエレメントに関する波形テンプレートデータＴｉｍｂ−Ｔｎ，振幅テンプレートデータＡｍｐ−Ｔｎ，ピッチテンプレートデータＰｉｔ−Ｔｎ，時間テンプレートデータＴＳＣ−Ｔｎと、後続するアーティキュレーションエレメントに関する波形テンプレートデータＴｉｍｂ−Ｔｎ+1，振幅テンプレートデータＡｍｐ−Ｔｎ+1，ピッチテンプレートデータＰｉｔ−Ｔｎ+1，時間テンプレートデータＴＳＣ−Ｔｎ+1を供給する。
【０１１０】
ルールデーコード処理ブロックＲＢ１，ＲＢ２，ＲＢ３，ＲＢ４では、当該アーティキュレーションエレメントに関する各楽音要素毎の接続ルールTimbＲＵＬＥ，AmpＲＵＬＥ，PitＲＵＬＥ，TSCＲＵＬＥをデコードし、デコードした接続ルールに従って図１７〜図２０を参照して説明したような接続処理を実行する。例えば、波形テンプレート用のルールデーコード処理ブロックＲＢ１では、図１７を参照して説明したような接続処理（直接接続又はクロスフェード補間）を実行するための処理を行う。
【０１１１】
また、振幅テンプレート用のルールデーコード処理ブロックＲＢ２では、図１８〜図２０を参照して説明したような接続処理（直接接続又は補間）を実行するための処理を行う。この場合、補間結果は前述の通り差分値（正負符号付き）で与えられるので、ブロックＲＢ２から出力された差分値からなる補間データが、加算部ＡＤ２において、テンプレートデータ供給ブロックＴＢ２から供給される本来のテンプレートデータ値に対して加算されるようになっている。同様の理由で、他のルールデーコード処理ブロックＲＢ３，ＲＢ４の各出力と、各テンプレートデータ供給ブロックＴＢ３，ＴＢ４から供給される本来のテンプレートデータ値をそれぞれ加算するための加算部ＡＤ３，ＡＤ４が設けられている。
【０１１２】
こうして、各加算部ＡＤ２，ＡＤ３，ＡＤ４からは、隣接するエレメント間での所要の接続処理を施してなるテンプレートデータＡｍｐ，Ｐｉｔｃｈ，ＴＳＣがそれぞれ出力される。ピッチ制御ブロックＣＢ３は、ピッチテンプレートデータＰｉｔｃｈに従って波形読出し速度を制御するものである。波形テンプレートそのものがオリジナルのピッチ情報を含んでいるため、ラインＬ１を介して該オリジナルのピッチ情報（オリジナルのピッチエンベロープ）をデータベースから受け取り、該オリジナルのピッチエンベロープとピッチテンプレートデータＰｉｔｃｈとの偏差で波形読出し速度を制御する。例えば、オリジナルのピッチエンベロープとピッチテンプレートデータＰｉｔｃｈとが同じ場合は、一定の波形読出し速度で読出しを行えばよいし、オリジナルのピッチエンベロープとピッチテンプレートデータＰｉｔｃｈとが異なっている場合はその偏差分だけ波形読出し速度を可変制御すればよい。また、ピッチ制御ブロックＣＢ３は、ノート指示データを受け付け、該ノート指示データによっても波形読出し速度を制御する。例えば、波形テンプレートデータのオリジナルのピッチがノートＣ４のピッチを基本としているとし、ノートＤ４の音もこのノートＣ４のオリジナルピッチを持つ波形テンプレートデータを利用して発生するものとすると、ノート指示データのノートＤ４とオリジナルのピッチのノートＣ４との偏差に応じて波形読出し速度を制御することとなる。このようなピッチ制御の細部は、公知技術を応用できるため、特に詳しく説明しない。
【０１１３】
波形アクセス制御ブロックＣＢ１では、基本的には、ピッチ制御ブロックＣＢ３から出力される波形読出し速度制御情報に応じて、波形テンプレートデータの各サンプルを順次読み出す。このとき、時間テンプレートデータとして与えられるＴＳＣ制御情報に従って波形読出し態様を制御し、発生音のピッチはピッチ制御ブロックＣＢ３から与えられる波形読出し速度制御情報に応じて決定しつつ、トータルの波形読出し時間はＴＳＣ制御情報に従って可変制御されるようにする。例えば、オリジナルの波形データの時間長よりも発音時間長を伸張する場合は、波形読出し速度はそのままにして、一部の波形部分が重複して読み出されるようにすれば、所望のピッチを維持しつつ発音時間長を伸張することができる。また、オリジナルの波形データの時間長よりも発音時間長を圧縮する場合は、波形読出し速度はそのままにして、一部の波形部分が飛び越されて読み出されるようにすれば、所望のピッチを維持しつつ発音時間長を圧縮することができる。
波形アクセス制御ブロックＣＢ１とクロスフェード制御ブロックＣＢ２とでは、波形テンプレート用のルールデーコード処理ブロックＲＢ１の出力に従って図１７を参照して説明したような接続処理（直接接続又はクロスフェード補間）を実行するための処理を行う。クロスフェード制御ブロックＣＢ２は、パーシャルベクトルＰＶＱに従って部分的波形テンプレートをループ読出しながらクロスフェード処理する場合にも利用される。また、上記ＴＳＣ制御の際に波形接続を滑らかにする場合にも利用される。
【０１１４】
振幅制御ブロックＣＢ４は、発生された波形データに対して振幅テンプレートＡｍｐに応じた振幅エンベロープを付与する。この場合も、波形テンプレートそのものがオリジナルの振幅エンベロープ情報を含んでいるため、ラインＬ２を介して該オリジナルの振幅エンベロープ情報をデータベースから受け取り、該オリジナルの振幅エンベロープと振幅テンプレートデータＡｍｐとの偏差で波形データの振幅を制御する。例えば、オリジナルの振幅エンベロープと振幅テンプレートデータＡｍｐとが同じ場合は、振幅制御ブロックＣＢ４では実質的な振幅制御を行わずに波形データを素通りさせるだけでよい。オリジナルの振幅エンベロープと振幅テンプレートデータＡｍｐとが異なっている場合はその偏差分だけ振幅レベルを可変制御すればよい。
【０１１５】
〔楽音合成装置の具体例〕
図２２は、この発明の実施例に係る楽音合成装置のハードウェア構成例を示すブロック図である。この楽音合成装置は、電子楽器あるいはカラオケ装置又は電子ゲーム装置又はその他のマルチメディア機器又はパーソナルコンピュータ等、任意の製品応用形態をとっていてよい。
図２２に示す構成によれば、ソフトウェア音源を利用してこの発明の実施例に係る楽音合成処理を実行する。この発明に係る楽音データの作成及び楽音合成処理を実現するようにソフトウェアシステムを構築すると共に、付属のメモリ装置に所要のデータベースＤＢを構築する、若しくは外部（ホスト）において構築されたデータベースＤＢに通信回線を介してアクセスする、といった実施形態をとる。
【０１１６】
図２２の楽音合成装置においては、メイン制御部としてＣＰＵ（中央処理部）１０を使用し、このＣＰＵ１０の制御の下で、この発明に係る楽音データの作成及び楽音合成処理を実現するソフトウェアのプログラムを実行すると共に、ソフトウェア音源のプログラムを実行する。勿論、ＣＰＵ１０は、更にはその他の適宜のプログラムも、並行して実行することができる。
ＣＰＵ１０には、ＲＯＭ（リードオンリーメモリ）１１，ＲＡＭ（ランダムアクセスメモリ）１２，ハードディスク装置１３，第１のリムーバブルディスク装置（例えばＣＤ−ＲＯＭドライブ若しくはＭＯドライブ）１４，第２のリムーバブルディスク装置（例えばフロッピーディスクドライブ）１５，表示器１６，キーボード及びマウス等の入力操作装置１７，波形インタフェース１８，タイマ１９，ネットワークインタフェース２０，ＭＩＤＩインタフェース２１等が、データ及びアドレスバス２２を介して接続されている。
【０１１７】
図２３は、波形インタフェース１８の詳細例とＲＡＭ１２内の波形バッファの構成例を示している。波形インタフェース１８は、波形データの取り込み（サンプリング）と出力の両方を制御するものであり、外部からマイクロフォン等によって入力された波形データをサンプリングしてアナログ／ディジタル変換するアナログ／ディジタル変換器（ＡＤＣ）２３と、サンプリングのための第１のＤＭＡＣ（ダイレクトメモリアクセスコントローラ）２４と、所定の周波数のサンプリングクロックＦｓを発生するサンプリングクロック発生回路２５と、波形データの出力を制御する第２のＤＭＡＣ（ダイレクトメモリアクセスコントローラ）２６と、出力波形データをディジタル／アナログ変換するディジタル／アナログ変換器（ＤＡＣ）２７とを含んでいる。なお、第２のＤＭＡＣ２６は、サンプリングクロックＦｓに基づき絶対時刻情報を作成し、ＣＰＵのバス２２に与える働きもする。
【０１１８】
ＲＡＭ１２においては、複数の波形バッファＷ−ＢＵＦを有する。１つの波形バッファＷ−ＢＵＦは、１フレーム分の波形サンプルデータを蓄積する記憶容量（アドレス数）を持つ。例えば、サンプリングクロックＦｓに基づく再生サンプリング周波数が４８ｋＨｚ、１フレーム区間の時間が１０ミリ秒であるとすると、１つの波形バッファＷ−ＢＵＦは、４８０サンプルの波形サンプルデータを記憶する容量を持つ。少なくとも２つの波形バッファＷ−ＢＵＦ（Ａ，Ｂ）が使用され、１つの波形バッファＷ−ＢＵＦが読み出しモードとされて波形インタフェース１８のＤＭＡＣ２６によってアクセスされるとき、他の波形バッファＷ−ＢＵＦは書き込みモードとされ、生成した波形サンプルデータを書き込む。この実施例に係る楽音合成処理プログラムにおいては、各楽音合成チャンネル毎に、１フレーム分の複数サンプルからなる波形サンプルデータを一括して生成し、書き込みモードとなっている１つの波形バッファＷ−ＢＵＦの各サンプル位置（アドレス位置）に各チャンネルの波形サンプルデータが足し込まれる（アキュムレート）される。例えば、１フレームが４８０サンプルからなるとすると、第１の楽音合成チャンネルについての４８０サンプルの波形サンプルデータが一括演算され、これが波形バッファＷ−ＢＵＦの各サンプル位置（アドレス位置）にそれぞれストアされる。次に、第２の楽音合成チャンネルについての４８０サンプルの波形サンプルデータが一括演算され、これが同じ波形バッファＷ−ＢＵＦの各サンプル位置（アドレス位置）にそれぞれ足し込まれる（アキュムレート）される。以下、同様である。従って、全チャンネルについての１フレーム分の波形サンプルデータの生成演算を終了したとき、書き込みモードとなっている１つの波形バッファＷ−ＢＵＦの各サンプル位置（アドレス位置）には、全チャンネルの波形サンプルデータを各サンプル毎にアキュムレートした合計波形サンプルデータが蓄積されている。例えば、最初はＡの波形バッファＷ−ＢＵＦに１フレーム分の合計波形サンプルデータの書き込みを行い、次に、Ｂの波形バッファＷ−ＢＵＦに１フレーム分の合計波形サンプルデータの書き込みを行う。Ａの波形バッファＷ−ＢＵＦは、書き込みが終わり次第、次のフレーム区間の始まりから読み出しモードに移行し、当該フレーム区間の間で、サンプリングクロックＦｓに基づく所定の再生サンプリング周期で規則的に読み出される。従って、基本的には、２つの波形バッファＷ−ＢＵＦ（Ａ，Ｂ）の読み書きモードを交互に切り替えて使用すればよいが、数フレーム分先行して書き込みを行えるよう余裕を持たせる場合は、３以上の波形バッファＷ−ＢＵＦ（Ａ，Ｂ，Ｃ，…）を使用してもよい。
【０１１９】
ＣＰＵ１０の制御の下で、この発明に係る楽音データの作成及び楽音合成処理を実現するソフトウェアプログラムは、ＲＯＭ１１，ＲＡＭ１２あるいはハードディスク装置１３あるいはリムーバブルディスク装置１４，１５のいずれに記憶しておくようにしてもよい。また、ネットワークインタフェース２０を介して通信ネットワークに接続し、外部のサーバコンピュータ（図示せず）から、上記“この発明に係る楽音データの作成及び楽音合成処理を実現するプログラム”やデータベースＤＢのデータ等を受け取って、内部のＲＡＭ１２又はハードディスク１３又はリムーバブルディスク装置１４，１５等に格納するようにしてもよい。ＣＰＵ１０は、例えばＲＡＭ１２に記憶されている“この発明に係る楽音データの作成及び楽音合成処理を実現するプログラム”を実行して、奏法シーケンスに従う楽音を合成し、合成した楽音波形データをＲＡＭ１２内の波形バッファＷ−ＢＵＦに一時記憶する。ＤＭＡＣ２６の制御によって、ＲＡＭ１２内の波形バッファＷ−ＢＵＦから波形データを読み出してディジタル／アナログ変換器（ＤＡＣ）２７に送り、Ｄ／Ａ変換する。Ｄ／Ａ変換された楽音波形データはサウンドシステム（図示せず）に与えられ、空間的に発音される。
【０１２０】
図８（ａ）に示したように、ＭＩＤＩデータからなる自動演奏シーケンスデータの中に本発明に従う奏法シーケンス（アーティキュレーションエレメントシーケンスＡＥＳＥＱ）のデータが組み込まれているものとして以下説明を行う。なお、図８（ａ）では特に詳しく述べなかったが、奏法シーケンス（アーティキュレーションエレメントシーケンスＡＥＳＥＱ）のデータは、ＭＩＤＩフォーマットの形態で、例えばＭＩＤＩのエクスクルーシブデータとして組み込むことができる。
【０１２１】
図２４は、ＭＩＤＩフォーマットの演奏データに基づいてソフトウェア音源によって実行される楽音生成処理の概略を示すタイムチャートである。（ａ）に示す「演奏タイミング」は、ＭＩＤＩのノートオンイベントやノートオフイベントあるいはその他のイベント（図８（ａ）におけるＥＶＥＮＴ（ＭＩＤＩ））、及びアーティキュレーションエレメントシーケンスイベント（図８（ａ）におけるＥＶＥＮＴ（ＡＥＳＥＱ））などの各イベント＃１〜＃４の発生タイミングを例示している。（ｂ）は、波形サンプルデータの生成演算を行うタイミング（「波形生成」）と、その再生タイミング（「波形再生」）との関係を例示するものである。上段の「波形生成」の欄は、各楽音合成チャンネル毎に１フレーム分の複数サンプルからなる波形サンプルデータを一括して生成して書き込みモードとなっている１つの波形バッファＷ−ＢＵＦの各サンプル位置（アドレス位置）に各チャンネルの波形サンプルデータを足し込む（アキュムレートする）処理が行われるタイミングを例示している。下段の「波形再生」の欄は、１フレーム区間の間でサンプリングクロックＦｓに基づく所定の再生サンプリング周期で波形バッファＷ−ＢＵＦから波形サンプルデータを規則的に読み出す処理を行うタイミングを示している。それぞれに付記したＡ，Ｂの表示は、書き込み又は読み出しの対象となっている波形バッファＷ−ＢＵＦがどれであるかを区別する記号である。ＦＲ１，ＦＲ２，ＦＲ３，…は、仮に付けた各フレームの番号である。例えば、フレームＦＲ１のときに波形生成演算がなされた或る１フレーム分の波形サンプルデータがＡの波形バッファＷ−ＢＵＦに書き込まれ、これが、次のフレームＦＲ２において該Ａの波形バッファＷ−ＢＵＦから読み出される。次の１フレーム分の波形サンプルデータはフレームＦＲ２において生成演算がなされ、Ｂの波形バッファＷ−ＢＵＦに書き込まれる。このＢの波形バッファＷ−ＢＵＦに記憶した１フレーム分の波形サンプルデータが、更に次のフレームＦＲ３において該Ｂの波形バッファＷ−ＢＵＦから読み出される。（ａ）に示すイベント＃１，＃２，＃３は、１フレームの時間内で起こっており、これらのイベント＃１，＃２，＃３に対応する波形サンプルデータの生成演算は、（ｂ）のフレームＦＲ３において開始される。従って、これらのイベント＃１，＃２，＃３に対応する楽音の立上り（発音開始）は、その次のフレームＦＲ４において開始される。Δｔは、ＭＩＤＩ演奏データとして与えられたイベント＃１，＃２，＃３の発生タイミングと、それに対応する楽音が発音開始されるタイミングとのずれを示している。この時間ずれΔｔは、１乃至数フレーム分だけなので、聴感上問題ない。なお、発音開始時の波形サンプルデータは、波形バッファＷ−ＢＵＦの初めから書き込まれるのではなく、開始時点に対応する波形バッファＷ−ＢＵＦの所定の途中の位置から書き込まれるようになっている。
【０１２２】
なお、「波形生成」における波形サンプルデータの生成演算の方式は、通常のＭＩＤＩのノートオンイベントに基づく自動演奏音（これを「通常演奏」音ということにする）と、アーティキュレーションエレメントシーケンスＡＥＳＥＱのオンイベントに基づく演奏音（これを「奏法演奏」音ということにする）とでは、異なっている。通常のＭＩＤＩのノートオンイベントに基づく「通常演奏」処理と、アーティキュレーションエレメントシーケンスＡＥＳＥＱのオンイベントに基づく「奏法演奏」処理は、図２９及び図３０に示すような、それぞれ別々の処理ルーチンで実行される。例えば、伴奏パートを通常のＭＩＤＩのノートオンイベントに基づく「通常演奏」で行い、特定のソロ演奏パートをアーティキュレーションエレメントシーケンスＡＥＳＥＱに基づく「奏法演奏」で行う、といった使い分けを行うと、効果的である。
【０１２３】
図２５は、本発明に従う奏法シーケンス（アーティキュレーションエレメントシーケンスＡＥＳＥＱ）のデータに基づく「奏法演奏」処理（アーティキュレーションエレメントの楽音合成処理）の概略を示すタイムチャートである。「フレーズ準備コマンド」と「フレーズスタートコマンド」は、図８（ａ）に示すように「アーティキュレーションエレメントシーケンスイベントＥＶＥＮＴ（ＡＥＳＥＱ）」として、ＭＩＤＩ演奏データの中に含まれているものである。すなわち、１つのアーティキュレーションエレメントシーケンスＡＥＳＥＱ（図２５では「フレーズ」と称している）のイベントデータは、「フレーズ準備コマンド」と「フレーズスタートコマンド」とからなっている。先行するイベントデータである「フレーズ準備コマンド」は、再生すべきアーティキュレーションエレメントシーケンスＡＥＳＥＱ（すなわちフレーズ）を指定し、その再生を行う準備をすべきことを指示するもので、当該アーティキュレーションエレメントシーケンスＡＥＳＥＱの発音開始時点よりも所定時間だけ先行して与えられる。ブロック３０で示した「準備処理」のプロセスでは、「フレーズ準備コマンド」に応じて、指定されたアーティキュレーションエレメントシーケンスＡＥＳＥＱを再生するために必要なすべてのデータをデータベースＤＢから取り出し、ＲＡＭ１２の所定のバッファエリアにダウンロードし、該アーティキュレーションエレメントシーケンスＡＥＳＥＱを展開して即座に該アーティキュレーションエレメントシーケンスの再生処理が行えるように、必要な準備を行う。また、この「準備処理」のプロセスでは、指定されたアーティキュレーションエレメントシーケンスＡＥＳＥＱを解釈し、相前後するアーティキュレーションエレメントを接続するルール等を設定若しくは決定して、必要な接続制御データ等を形成する処理も行う。例えば、指定されたアーティキュレーションエレメントシーケンスＡＥＳＥＱが、図示のように５つのアーティキュレーションエレメントＡＥ＃１〜ＡＥ＃５からなるとすると、それぞれの接続箇所（接続１〜接続４として指摘した箇所）における接続ルールを確定し、そのための接続制御データを形成する。また、各アーティキュレーションエレメントＡＥ＃１〜ＡＥ＃５の開始時刻を示すデータを、フレーズ開始時からの相対時間表現で準備する。「フレーズ準備コマンド」に後続するイベントデータである「フレーズスタートコマンド」は、当該アーティキュレーションエレメントシーケンスＡＥＳＥＱの発音開始を指示するものである。この「フレーズスタートコマンド」に応じて、前記「準備処理」で準備された各アーティキュレーションエレメントＡＥ＃１〜ＡＥ＃５を順次再生する。すなわち各アーティキュレーションエレメントＡＥ＃１〜ＡＥ＃５の開始時刻が到来したら、該当するアーティキュレーションエレメントＡＥ＃１〜ＡＥ＃５の再生を開始し、かつ、それぞれの接続箇所（接続１〜接続４）で、予め準備した接続制御データに従って、先行するアーティキュレーションエレメントＡＥ＃１〜ＡＥ＃４に滑らかに接続されるように所定の接続処理を施す。
【０１２４】
図２６は、図２２のＣＰＵ１０が実行する楽音合成処理のメインルーチンを示すフローチャートである。このメインルーチンの「自動演奏処理」によって、自動演奏シーケンスデータのイベントに基づく処理が行われる。まず、ステップＳ５０では、ＲＡＭ１２上での各種バッファ領域の確保等、必要な各種の初期設定処理を行う。次に、ステップＳ５１では、下記の各起動要因が発生しているか否かのチェックを行う。
起動要因▲１▼：インターフェース２０，２１を介してＭＩＤＩ演奏データまたはその他の通信入力データが入力されたこと。
起動要因▲２▼：自動演奏処理タイミングが到来したこと。自動演奏における次のイベントの発生時間をチェックするために、この自動演奏処理タイミングは規則的に発生する。
起動要因▲３▼：１フレーム単位の波形生成タイミングが到来したこと。１フレーム単位でまとめて波形サンプルデータを生成するために、この波形生成タイミングは１フレーム周期で（たとえばフレーム区間の終わりのタイミングで）発生する。
起動要因▲４▼：入力操作装置１７でキーボート又はマウス等のスイッチ操作（メインルーチンの終了指示操作を除く）が行われたこと。
起動要因▲５▼：ディスクドライブ１３〜１５や表示器１６からの割込み要求があったこと。
起動要因▲６▼：入力操作装置１７でメインルーチンの終了指示操作が行われたこと。
【０１２５】
ステップＳ５２では、いずれかの起動要因▲１▼〜▲６▼が発生したかを判断する。ＮＯであれば、ステップＳ５１，Ｓ５２を繰り返し、ＹＥＳとなったら、ステップＳ５３で、どの起動要因が発生したのかを判定する。起動要因▲１▼が発生した場合はステップＳ５４で所定の「通信入力処理」を行う。起動要因▲２▼が発生した場合はステップＳ５５で所定の「自動演奏処理」（その一例を図２７に示す）を行う。起動要因▲３▼が発生した場合はステップＳ５６で所定の「音源処理」（その一例を図２８に示す）を行う。起動要因▲４▼が発生した場合はステップＳ５７で所定の「ＳＷ処理」（操作されたスイッチに対応する処理）を行う。起動要因▲５▼が発生した場合はステップＳ５８で所定の「その他処理」（割込み要求に応じた処理）を行う。起動要因▲６▼が発生した場合はステップＳ５９で所定の「終了処理」（このメインルーチンを終了させる処理）を行う。
【０１２６】
なお、ステップＳ５３において、起動要因▲１▼乃至▲６▼のうちの２以上の起動要因が同時的に発生していると判断された場合には、所定の優先順位で（例えば起動要因▲１▼，▲２▼，▲３▼，▲４▼，▲５▼，▲６▼の順）処理されるものとする。その場合、対等の優先順位の処理があってもよい。また、ステップＳ５１〜Ｓ５３は、擬似マルチタスク処理におけるタスク管理を仮想的に示したものであり、実際には、いずれかの起動要因の発生に基づいて処理を実行している途中で、それよりも優先順位の高い起動要因が発生したことにより、割込みで別の処理を実行すること（例えば、起動要因▲３▼の発生に基づいて「音源処理」を実行している途中で、起動要因▲２▼が発生したことにより、割込みで「自動演奏処理」を実行すること等）がある。
【０１２７】
図２７により、「自動演奏処理」（ステップＳ５５）の具体例につき説明する。まず、ステップＳ６０では、ＤＭＡＣ２６（図２３）から与えられる絶対時刻情報を、曲データの次のイベントタイミングとを比較する処理を行う。図８に示すように、曲データつまり自動演奏データにおいては、イベントデータＥＶＥＮＴに先行してデュレーションデータＤＵＲが存在している。例えば、デュレーションデータＤＵＲが読み出されたときに、そのときの絶対時刻情報とデュレーションデータＤＵＲを加算して次イベント到来時刻を示す絶対時刻情報を作成し、ストアしておく。そして、この次イベント到来時刻を示す絶対時刻情報と現時点での絶対時刻情報と図２７のステップＳ６０で比較する。
【０１２８】
ステップＳ６１では、現時点の絶対時刻が次イベント到来時刻に一致又は経過したか否かを判定する。まだ次イベント到来時刻になっていなければ、図２７の処理を直ちに終了する。次イベント到来時刻になったならば、ステップＳ６２に行き、該イベントの種類が、通常演奏のイベント（つまり通常のＭＩＤＩイベント）であるか、奏法演奏のイベント（つまりアーティキュレーションエレメントシーケンスイベント）であるかを調べる。通常演奏であれば、ステップＳ６３に行き、そのイベントに応じた通常のＭＩＤＩイベント処理を行い、音源制御データを生成する。次のステップＳ６４では、当該イベントに係る楽音合成チャンネル（図では「音源ｃｈ」と略記してある）を検出し、該チャンネルの番号をチャンネル番号レジスタｉに登録する。例えば、ノートオンイベントの場合は、該ノートの発生を割り当てるチャンネルを決定し、該チャンネルをレジスタｉに登録する。また、ノートオフイベントの場合は、該ノートの発生が割り当てられていチャンネルを検出し、該チャンネルをレジスタｉに登録する。次のステップＳ６５では、レジスタｉによって指示されたチャンネル番号のトーンバッファＴＢＵＦ（ｉ）に、ステップＳ６３で生成した音源制御データと制御タイミングデータとを格納する。なお、制御タイミングとは、当該イベントに係る制御を行うタイミングであり、ノートオンイベントの場合は発音開始タイミング、ノートオフイベントの場合はリリース開始タイミング等である。この実施例では、ソフトウェア処理によって楽音波形を発生するようにしているため、ＭＩＤＩデータのイベント発生タイミングとそれに対応する実際の処理のタイミングが少しずれるので、そのずれを考慮して、発音開始タイミング等、実際の制御タイミングを指示し直しているのである。
【０１２９】
ステップＳ６２で奏法演奏のイベントであると判定された場合は、ステップＳ６６に行き、それが「フレーズ準備コマンド」と「フレーズスタートコマンド」（図２５参照）のどちらであるのかを調べる。「フレーズ準備コマンド」であれば、ステップＳ６７〜Ｓ７１のルーチンを実行する。このステップＳ６７〜Ｓ７１のルーチンは、図２５でブロック３０で示した「準備処理」に相当する。まず、ステップＳ６７では、当該フレーズ（つまりアーティキュレーションエレメントシーケンスＡＥＳＥＱ）を再生する楽音合成チャンネル（図では「音源ｃｈ」と略記）を決定し、そのチャンネル番号をレジスタｉに登録する。次のステップＳ６８では、当該フレーズ（つまりアーティキュレーションエレメントシーケンスＡＥＳＥＱ）の奏法シーケンス（図では「奏法ＳＥＱ」と略記）を展開する。すなわち、当該アーティキュレーションエレメントシーケンスＡＥＳＥＱを個別テンプレートを指示可能なベクトルデータのレベルまで分解し、解析して、各アーティキュレーションエレメント（図２５のＡＥ＃１〜ＡＥ＃５）の接続箇所（接続１〜接続４）における接続ルールを確定し、そのための接続制御データを形成する。ステップＳ６９では、サブシーケンス（図では「サブＳＥＱ」と略記）があるかを調べ、あれば、ステップＳ６８に戻り、該サブシーケンスを個別テンプレートを指示可能なベクトルデータのレベルまで更に分解する。
【０１３０】
アーティキュレーションエレメントシーケンスＡＥＳＥＱがサブシーケンスを含む一例を図３２に示す。図３２に示すように、アーティキュレーションエレメントシーケンスＡＥＳＥＱは階層化構造を具備していてよい。すなわち、図で、「奏法ＳＥＱ＃２」が、ＭＩＤＩ演奏情報の中に組み込まれたアーティキュレーションエレメントシーケンスＡＥＳＥＱのデータによって指定されたものであるとすると、この指定されたシーケンス「奏法ＳＥＱ＃２」は、「奏法ＳＥＱ＃６」と「エレメントベクトルＥ−ＶＥＣ＃５」とによって特定される。この「奏法ＳＥＱ＃６」がサブシーケンスに相当する。このサブシーケンスを解析することにより、「奏法ＳＥＱ＃６」が、エレメントベクトルＥ−ＶＥＣ＃２とＥ−ＶＥＣ＃３とによって特定される。こうして、ＭＩＤＩ演奏情報の中に組み込まれたアーティキュレーションエレメントシーケンスＡＥＳＥＱのデータによって指定された「奏法ＳＥＱ＃２」が展開され、これが、エレメントベクトルＥ−ＶＥＣ＃２、Ｅ−ＶＥＣ＃３、Ｅ−ＶＥＣ＃５によって特定されるものであることが解析される。前述の通り、このとき、あわせて、各アーティキュレーションエレメントを接続するための接続制御データも必要に応じて形成される。なお、エレメントベクトルＥ−ＶＥＣとは、個別のアーティキュレーションエレメントを具体的に特定するデータのことである。勿論、このような階層化構造を持つ場合に限らず、ＭＩＤＩ演奏情報の中に組み込まれたアーティキュレーションエレメントシーケンスＡＥＳＥＱのデータによって指定された「奏法ＳＥＱ＃２」によって、初めから、各エレメントベクトルＥ−ＶＥＣ＃２、Ｅ−ＶＥＣ＃３、Ｅ−ＶＥＣ＃５が特定されるようになっている場合もある。
【０１３１】
ステップＳ７０では、展開された各エレメントベクトル（図では「Ｅ−ＶＥＣ」と略記）のデータをその制御タイミングを相対時刻によって示すデータと共に、レジスタｉによって指示されたチャンネル番号のトーンバッファＴＢＵＦ（ｉ）に、格納する。この場合、制御タイミングは、図２５に示したような、各アーティキュレーションエレメントの開始タイミングである。次のステップＳ７１では、トーンバッファＴＢＵＦ（ｉ）を参照して、必要なテンプレートデータをデータベースＤＢからＲＡＭ１２にロードする。
今回のイベントが「フレーズスタートコマンド」（図２５参照）である場合は、ステップＳ７２〜Ｓ７４のルーチンを実行する。このステップＳ７２では、当該フレーズ演奏を再生することが割り当てられているチャンネルを検出し、そのチャンネル番号をレジスタｉに登録する。次のステップＳ７３では、レジスタｉによって指示されたチャンネル番号のトーンバッファＴＢＵＦ（ｉ）に格納されている全ての制御タイミングデータを絶対時刻表現のデータに変換する。すなわち、当該「フレーズスタートコマンド」が発生したときにＤＭＡＣ２６から与えられた絶対時刻情報を初期値として、各制御タイミングデータの相対時刻に該初期値を加算することで、各制御タイミングデータを絶対時刻表現のデータに変換することができる。次のステップＳ７４では、トーンバッファＴＢＵＦ（ｉ）の内容を変換された各制御タイミングの絶対時刻に応じて書き直す。すなわち、該奏法シーケンスを構成する各エレメントベクトルＥ−ＶＥＣの開始時刻と終了時刻、各エレメントベクトル間の接続制御データ等をトーンバッファＴＢＵＦ（ｉ）に書き込む。
【０１３２】
次に、図２８により、「音源処理」（図２６のステップＳ５６）の具体例につき説明する。前述の通り、この「音源処理」は１フレーム毎に起動される。まず、ステップＳ７５では、所定の波形生成準備処理を行う。例えば、前フレーム区間において再生読み出しが完了した波形バッファＷ−ＢＵＦの内容をクリアし、今回のフレーム区間において該波形バッファＷ−ＢＵＦにデータを書き込むことができるようにする。次のステップＳ７６では、発音処理を行うべきチャンネルが存在しているかどうかを調べる。なければ、処理を続ける必要がないので、ステップＳ８３にジャンプする。あれば、ステップＳ７７に行き、発音処理を行うべきチャンネルのうちの１つのチャンネルを特定し、該チャンネルについて波形サンプルデータ生成処理を行う準備をする。次のステップＳ７８では、該準備したチャンネルに割り当てられている楽音の種類が、「通常演奏」音と「奏法演奏」音のどちらであるかを調べる。「通常演奏」音であれば、ステップＳ７９に行き、当該チャンネルについての１フレーム分の波形サンプルデータを、「通常演奏」音として、生成する処理を行う。「奏法演奏」音であれば、ステップＳ８０に行き、当該チャンネルについての１フレーム分の波形サンプルデータを、「奏法演奏」音として、生成する処理を行う。次に、ステップＳ８１では、発音処理を行うべきチャンネルのうち残りの（未処理の）チャンネルがあるかどうかを調べる。あれば、ステップＳ８２に行き、残りの（未処理の）チャンネルの中から次に処理すべきチャンネルを特定し、該チャンネルについて波形サンプルデータ生成処理を行う準備をする。それから、前記ステップＳ７８に戻り、前述と同様のステップＳ７８〜８０の処理を新たなチャンネルに関して実行する。発音処理を行うべき全てのチャンネルに関してステップＳ７８〜８０の処理を完了すると、残りの（未処理の）チャンネルが無しと成るので、ステップＳ８１はＮＯとなり、ステップＳ８３に行く。この状態では、発音すべき全チャンネルについての１フレーム分の波形サンプルデータの生成が終了し、それらが各サンプル毎に足し込まれて（アキュムレートされ）、波形バッファＷ−ＢＵＦに格納されている。ステップＳ８３では、該波形バッファＷ−ＢＵＦのデータを波形入出力（Ｉ／Ｏ）ドライバの管理下に引き渡す。かくして、次の１フレーム区間において、該波形バッファＷ−ＢＵＦが読み出しモードとなり、ＤＭＡＣ２６によってアクセスされて、所定のサンプリングクロックＦｓに従って波形サンプルデータが規則的サンプリング周期で再生読み出しされることになる。
【０１３３】
図２８のステップＳ７９の処理の詳細例が図２９に示されている。図２９は、「通常演奏」についての「１フレーム分の波形データ生成処理」の一例を示すフロー図であって、ＭＩＤＩ演奏データに基づく通常の楽音合成処理がここで行われる。この処理では、ステップＳ９０〜Ｓ９８のループを１回行う毎に、１サンプルの波形データの生成が行われる。従って、現在処理中のサンプルが１フレームの何番目のサンプルかを示すアドレスポインタ管理がなされるが、その点は特に詳しく説明しない。まず、ステップＳ９０では、制御タイミングが到来したかどうかをチェックする。この制御タイミングは図２７のステップＳ６５で指示し直されたタイミングであり、例えば、発音開始タイミングあるいはリリース開始タイミング（発音終了タイミング）などである。現在処理中のフレームに関して、なんらかの制御タイミングがある場合は、該制御タイミングの時刻に対応するアドレスポインタ値に対応して、このステップＳ９０がＹＥＳとなり、ステップＳ９１に行き、音源制御データに基づく必要な波形発生開始処理を行う。現アドレスポインタ値が制御タイミングに対応していない場合は、ステップＳ９１をジャンプしてステップＳ９２に行く。ステップＳ９２では、ビブラート等に必要な低周波信号（ＬＦＯ）を形成する処理を行う。次のステップＳ９３では、ピッチ制御用のエンベロープ信号（ＥＧ）を形成する処理を行う。
【０１３４】
次のステップＳ９４では、上記音源制御データに基づき、「通常演奏」音のための波形メモリ（図示せず）から所定の音色の波形サンプルデータを、指定された楽音ピッチに対応するレートで読み出し、読み出した波形サンプルデータの値をサンプル間補間する処理を行う。ここでは、通常知られた波形メモリ読み出し技術とサンプル間補間技術とを適宜使用すればよい。ここで指定される楽音ピッチは、ノートオンイベントに係るノート（音高）の正規のピッチを、前ステップＳ９２，９３で形成されたビブラート信号やピッチ制御エンベロープ値などによって可変制御したものである。次のステップＳ９５では、振幅エンベロープ（ＥＧ）を形成する処理を行う。次のステップＳ９６では、ステップＳ９４で生成した１サンプルの波形データの音量レベルを、ステップＳ９５で形成された振幅エンベロープ値によって可変制御し、これを、現アドレスポインタが指示する波形バッファＷ−ＢＵＦのアドレス箇所に既に格納されている波形サンプルデータに足し込む。つまり、同じサンプル点についての他のチャンネルの波形サンプルデータに加算・アキュムレートする。次に、ステップＳ９７では、１フレーム分の処理が完了したかどうかを調べ。まだ完了していなければ、ステップＳ９８に行き、次サンプルを準備する（アドレスポインタを次に進める）。
【０１３５】
上記の構成により、フレームの途中から発音を開始する場合は、該発音開始位置に対応する波形バッファＷ−ＢＵＦの中間的なアドレスから波形サンプルデータが格納されることになる。勿論、１フレーム区間の全体にわたって発音を持続する場合は、波形バッファＷ−ＢＵＦの全アドレスに波形サンプルデータが格納される。
なお、ステップＳ９３，Ｓ９５におけるエンベロープ形成処理は、エンベロープ波形メモリを読み出すことによって行うようにしてもよいし、所定のエンベロープ関数を計算することによって行うようにしてもよい。エンベロープ関数としては、周知の、比較的シンプルな１次の折線関数を演算する方式を用いてよい。なお、後述する「奏法演奏」とは異なり、この「通常演奏」では、発音中の波形の差し替えや、エンベロープの差し替え、あるいは波形の時間軸伸縮制御等、複雑な処理は行わなくてもよい。
【０１３６】
図２８のステップＳ８０の処理の詳細例が図３０に示されている。図３０は、「奏法演奏」についての「１フレーム分の波形データ生成処理」の一例を示すフロー図であって、アーティキュレーション（奏法）シーケンスデータに基づく楽音合成処理がここで行われる。また、この図３０の処理では、各テンプレートデータに基づくアーティキュレーションエレメントの楽音波形処理や、エレメント波形間の接続処理等が既に述べた要領で実行される。図２９と同様に、図３０の処理でも、ステップＳ１００〜Ｓ１０８のループを１回行う毎に、１サンプルの波形データの生成が行われる。従って、現在処理中のサンプルが１フレームの何番目のサンプルかを示すアドレスポインタ管理がなされるが、その点は特に詳しく説明しない。なお、この図３０の処理では、相前後するアーティキュレーションエレメントを滑らかに接続するために、２系列の各種テンプレートデータ（波形テンプレートを含む）をクロスフェード合成したり、時間軸伸縮制御のために２系列の波形サンプルデータをクロスフェード合成したりすることが行われる。よって、１つのサンプル点について、クロスフェード合成のための２系列分の各種データ処理が行われることになる。
【０１３７】
まず、ステップＳ１００では、制御タイミングが到来したかどうかをチェックする。この制御タイミングは図２７のステップＳ７４で書き込まれたタイミングであり、例えば、各アーティキュレーションエレメントＡＥ＃１〜ＡＥ＃５の開始タイミングや接続処理の開始タイミングなどである。現在処理中のフレームに関して、なんらかの制御タイミングがある場合は、該制御タイミングの時刻に対応するアドレスポインタ値に対応して、このステップＳ１００がＹＥＳとなり、ステップＳ１０１に行き、該制御タイミングに対応するエレメントベクトルＥ−ＶＥＣや接続制御データなどに基づく必要な制御を行う。現アドレスポインタ値が制御タイミングに対応していない場合は、ステップＳ１０１をジャンプしてステップＳ１０２に行く。
【０１３８】
ステップＳ１０２では、エレメントベクトルＥ−ＶＥＣによって指定された特定のエレメントについてのタイムテンプレート（図ではテンプレートをＴＭＰと略記）を生成する処理を行う。タイムテンプレートとは図３に示した時間テンプレート（ＴＳＣテンプレート）のことである。この実施例において、タイムテンプレート（ＴＳＣテンプレート）は、振幅テンプレートやピッチテンプレートと同様に、時間的に変化するエンベロープ状のデータとして与えられるものとする。従って、このステップＳ１０２では、タイムテンプレートのエンベロープを形成する処理を行う。
ステップＳ１０３では、エレメントベクトルＥ−ＶＥＣによって指定された特定のエレメントについてのピッチ（Pitch）テンプレートを生成する処理を行う。ピッチテンプレートも図３に例示したように時間的に変化するエンベロープ状のデータとして与えられる。
ステップＳ１０５では、エレメントベクトルＥ−ＶＥＣによって指定された特定のエレメントについての振幅（Amp）テンプレートを生成する処理を行う。振幅テンプレートも図３に例示したように時間的に変化するエンベロープ状のデータとして与えられる。
【０１３９】
各ステップＳ１０２，Ｓ１０３，Ｓ１０５におけるエンベロープ形成法は、上記と同様に、エンベロープ波形メモリを読み出すことによって行うようにしてもよいし、所定のエンベロープ関数を計算することによって行うようにしてもよく、また、そのエンベロープ関数としては、比較的シンプルな１次の折線関数を演算する方式を用いてよい。また、図１８〜図２０を用いて説明したように、所定のエレメント接続箇所に対応して、２系列でテンプレートを形成し（先行するエレメントのテンプレートと後続するエレメントのテンプレート）、両者を接続制御データに従ってクロスフェード合成して接続する処理や、オフセット処理などもこれらのステップＳ１０２，Ｓ１０３，Ｓ１０５で行う。どのような接続ルールに従って接続処理を行うかは、それぞれに対応する接続制御データに応じて異なる。
【０１４０】
ステップＳ１０４では、基本的には、エレメントベクトルＥ−ＶＥＣによって指定された特定のエレメントについての波形（Timbre）テンプレートを、指定された楽音ピッチに対応するレートで読み出す処理を行う。ここで指定される楽音ピッチは、前ステップＳ１０３で形成されたピッチテンプレート（ピッチ制御エンベロープ値）などによって可変制御されるものである。なお、タイムテンプレート（ＴＳＣテンプレート）に応じて、楽音ピッチとは独立に、波形サンプルデータの存在時間を時間軸に沿って伸張または圧縮する制御つまりＴＳＣ制御も、このステップＳ１０４で行う。また、時間軸伸縮制御に伴って、波形の連続性が損なわれることのないように、２系列で波形サンプルデータ（同じ波形テンプレート内の異なる時点に対応する２つの波形サンプルデータ）を読み出し、これをクロスフェード合成する処理も、このステップＳ１０４で行う。また、「通常演奏」の場合と同様に、波形サンプル間の補間演算処理も、このステップＳ１０４で行う。更に、図１７を用いて説明したように、所定のエレメント接続箇所に対応して、２系列で波形テンプレートを読み出し（先行するエレメントの波形テンプレートと後続するエレメントの波形テンプレート）、両者をクロスフェード合成して接続する処理も、このステップＳ１０４で行う。更に、図１３〜図１６を用いて説明したような、波形テンプレートをループ読み出し（繰り返し読み出し）する処理と、その際に、２系列のループ読み出し波形をクロスフェード合成する処理も、このステップＳ１０４で行う。
なお、使用する波形（Timbre）テンプレートが、オリジナル波形における時間的ピッチ変動成分をそのまま保っているものである場合、ピッチテンプレートの値は、オリジナルのピッチ変動に対する変化量（差分値又は比）で与えるようにするとよい。つまり、オリジナルの時間的ピッチ変動そのままにするときは、ピッチテンプレートの値を一定値（例えば「１」）に維持する。
【０１４１】
次のステップＳ１０５では、振幅テンプレートを形成する処理を行う。次のステップＳ１０６では、ステップＳ１０４で生成した１サンプルの波形データの音量レベルを、ステップＳ１０５で形成された振幅エンベロープ値によって可変制御し、これを、現アドレスポインタが指示する波形バッファＷ−ＢＵＦのアドレス箇所に既に格納されている波形サンプルデータに足し込む。つまり、同じサンプル点についての他のチャンネルの波形サンプルデータに加算・アキュムレートする。次に、ステップＳ１０７では、１フレーム分の処理が完了したかどうかを調べ。まだ完了していなければ、ステップＳ１０８に行き、次サンプルを準備する（アドレスポインタを次に進める）。
なお、上述と同様に、使用する波形（Timbre）テンプレートが、オリジナル波形における時間的振幅変動成分をそのまま保っているものである場合、振幅（Amp）テンプレートの値は、オリジナルの振幅変動に対する変化量（差分値又は比）で与えるようにするとよい。つまり、オリジナルの時間的振幅変動そのままにするときは、振幅テンプレートの値を一定値（例えば「１」）に維持する。
【０１４２】
次に、時間軸伸縮制御（ＴＳＣ制御）の一例について説明する。
複数周期波形からなる高品質な、つまり特定のアーティキュレーション特性を具備する、そして、一定のデータ量（サンプル数若しくはアドレス数）からなる波形データを、その楽音再生ピッチとは独立に、また、該波形の全体的特徴を損なうことなく、時間軸上におけるその存在時間長を任意に可変制御することは、本出願人が別出願（例えば特願平９−１３０３９４号）で提案した時間軸伸縮制御（ＴＳＣ制御）を用いることによって実現できる。このＴＳＣ制御の要点を述べれば、一定の波形データ量からなる複数周期波形を、一定の再生サンプリング周波数と所定の再生ピッチを維持しつつ、その時間軸上の波形データ存在時間長を伸縮するために、圧縮する場合は、波形データの適宜の部分を飛び越して読み出しを行ない、伸張する場合は、波形データの適宜の部分を繰り返し読み出しするようにし、そして、飛び越し若しくは部分的繰り返し読み出しによる波形データの不連続性を除去するためにクロスフェード合成を行なうようにしたものである。
【０１４３】
図３１は、この時間軸伸縮処理（ＴＳＣ制御）の概略を概念的に示す図である。（ａ）は、時間的に変化するタイムテンプレートの一例を示している。タイムテンプレートは、時間軸伸縮比を示すデータ（これをＣＲａｔｅという）からなっており、縦軸が該データＣＲａｔｅ、横軸が時間ｔである。時間軸伸縮比データＣＲａｔｅは、「１」を基準とする比を示しており、「１」のとき時間軸伸縮をしないことを示し、「１」よりも大きいとき時間軸の圧縮を示し、「１」よりも小さいとき時間軸の伸張を示す。図３１の（ｂ）〜（ｄ）は、仮想読出アドレスＶＡＤと実読出アドレスＲＡＤを用いて、時間軸伸縮比データＣＲａｔｅに応じた時間軸伸縮制御を行う例を示している。実線が実読出アドレスＲＡＤ、破線が仮想読出アドレスＶＡＤを示す。（ｂ）は、（ａ）のタイムテンプレートにおけるＰ１点の時間軸伸縮比データＣＲａｔｅ（＞１）に応じた時間軸圧縮制御例を示しており、（ｃ）は、（ａ）のタイムテンプレートにおけるＰ２点の時間軸伸縮比データＣＲａｔｅ（＝１）に応じた時間軸伸縮しない例を示し、（ｄ）は、（ａ）のタイムテンプレートにおけるＰ３点の時間軸伸縮比データＣＲａｔｅ（＜１）に応じた時間軸伸張制御例を示している。（ｃ）においては実線は、ピッチ情報に従う本来の波形読出アドレスの進行状態を示しており、実読出アドレスＲＡＤと仮想読出アドレスＶＡＤが一致している。
【０１４４】
実読出アドレスＲＡＤは、波形テンプレートから実際に波形サンプルデータを読み出すために使用するアドレスであり、所望のピッチ情報に従う一定の変化レートで変化する。例えば、所望のピッチに対応する周波数ナンバを規則的に累算することにより、該ピッチに対応する一定の傾きを持つ実読出アドレスＲＡＤを得ることができる。仮想読出アドレスＶＡＤは、波形データの時間軸上の長さの所望の伸張又は圧縮制御した状態を想定し、所望の時間軸伸張又は圧縮を達成するためには、現時点でどのアドレス位置から波形サンプルデータを読み出すべきかを指示するアドレスである。そのために、所望のピッチ情報と時間軸伸縮比データＣＲａｔｅとを用いて、該ピッチ情報に従う傾きを伸縮比データＣＲａｔｅによって修正した傾きで変化するアドレスデータを、仮想読出アドレスＶＡＤとして発生する。実読出アドレスＲＡＤと仮想読出アドレスＶＡＤとを比較し、実読出アドレスＲＡＤの仮想読出アドレスＶＡＤからのかい離幅が所定幅を越えたとき、実読出アドレスＲＡＤの値を切替えることを指示し、この切替指示に従って、実読出アドレスＲＡＤの仮想読出アドレスＶＡＤに対するかい離を解消するよう、適宜アドレス数だけ実読出アドレスＲＡＤの数値をシフト制御する。
【０１４５】
図３３は、図３１（ｂ）と同様の状態を拡大して示す図である。一点鎖線は、ピッチ情報に従う本来のアドレス進行を例示するもので、図３１（ｃ）の実線に対応するものである。太い破線は、仮想読出アドレスＶＡＤのアドレス進行を例示する。伸縮比データＣＲａｔｅが１であれば、仮想読出アドレスＶＡＤのアドレス進行は、一点鎖線の本来のアドレス進行に一致し、時間軸の変化はない。時間軸を圧縮する場合、伸縮比データＣＲａｔｅは１以上の適宜の値をとり、図示のように、仮想読出アドレスＶＡＤのアドレス進行の傾きが相対的に大きくなる。太い実線は、実読出アドレスＲＡＤのアドレス進行を例示する。この実読出アドレスＲＡＤのアドレス進行の傾きは、一点鎖線で示したピッチ情報に従う本来のアドレス進行の傾きに一致している。この場合、仮想読出アドレスＶＡＤのアドレス進行の傾きが相対的に大きいが故に、時間経過に従って次第に実読出アドレスＲＡＤのアドレス進行が仮想読出アドレスＶＡＤのアドレス進行よりも遅れてくる。そして、そのかい離幅が所定以上になったとき、切替指示（図中、矢印で示す）が出され、図示のように、該かい離を解消する方向に、実読出アドレスＲＡＤを適量シフトする。これによって、実読出アドレスＲＡＤのアドレス進行は、ピッチ情報に従う傾きを維持しつつ、仮想読出アドレスＶＡＤのアドレス進行に沿って変化し、時間軸方向に圧縮された特性を示す。従って、このような実読出アドレスＲＡＤに従って波形テンプレートの波形サンプルデータを読み出すことにより、再生する楽音のピッチは変更せずに、時間軸方向に波形を圧縮した波形信号を得ることができる。
【０１４６】
図３４は、図３１（ｄ）と同様の状態を拡大して示す図である。この場合、伸縮比データＣＲａｔｅは１未満であり、太い破線にて示す仮想読出アドレスＶＡＤのアドレス進行の傾きは相対的に小さい。従って、時間経過に伴い次第に実読出アドレスＲＡＤのアドレス進行が仮想読出アドレスＶＡＤのアドレス進行よりも進んできて、そのかい離幅が所定以上になったとき、切替指示（図中、矢印で示す）が出され、図示のように、該かい離を解消する方向に、実読出アドレスＲＡＤが適量シフトされる。これによって、実読出アドレスＲＡＤのアドレス進行は、ピッチ情報に従う傾きを維持しつつ、仮想読出アドレスＶＡＤのアドレス進行に沿って変化し、時間軸方向に伸張された特性を示す。従って、このような実読出アドレスＲＡＤに従って波形テンプレートの波形サンプルデータを読み出すことにより、再生する楽音のピッチは変更せずに、時間軸方向に波形を伸張した波形信号を得ることができる。
【０１４７】
なお、前記かい離を解消する方向への実読出アドレスＲＡＤのシフトは、このシフトによって、シフト直前に読み出していた波形データと、シフト直後に読み出す波形データとが滑らかにつながるようにすることが好ましい。また、図中、波線で示すように、切替時の適宜期間で、クロスフェード合成を行うようにするとよい。波線は、クロスフェード副系列用実読出アドレスＲＡＤ２のアドレス進行を示す。このクロスフェード副系列用実読出アドレスＲＡＤ２は、図示の通り、上記切替指示が出されたとき、シフト前の実読出アドレスＲＡＤのアドレス進行の延長上に、実読出アドレスＲＡＤと同じレート（つまり傾き）で生成する。適宜のクロスフェード期間において、副系列用実読出アドレスＲＡＤ２に対応して読み出される波形から主系列用実読出アドレスＲＡＤに対応して読み出される波形まで滑らかに波形が移行するようにクロスフェード合成がなされる。この例の場合、少なくとも所要のクロスフェード期間の間でのみ副系列用実読出アドレスＲＡＤ２を生成するようにすればよい。
なお、上記のように一部分でクロスフェード合成を行うＴＳＣ制御例に限らず、時間軸伸縮比ＣＲａｔｅの値に応じた態様のクロスフェード合成処理を常に行うようにしたＴＳＣ制御を採用してもよい。
【０１４８】
図１３〜図１５に示したようなパーシャルベクトルＰＶＱの波形テンプレート（つまりループ波形）を繰り返し読み出すことで波形サンプルデータを生成する場合においては、基本的には、ループ回数を可変することによって、比較的簡単に、楽音再生ピッチとは独立に、ループ読み出し波形全体の時間長を可変制御することができる。つまり、クロスフェード区間長を指定するデータによって特定のクロスフェードカーブが特定されると、それに伴ってクロスフェード区間長（時間長若しくはループ回数）が決まってくる。ここで、このクロスフェードカーブの傾きをタイムテンプレートが示す時間軸伸縮比によって可変制御することにより、クロスフェードの速さが可変制御され、結局、クロスフェード区間の時間長が可変制御される。その間、楽音再生ピッチには影響を与えないので、結局、ループ回数が可変制御されることで当該クロスフェード区間の時間長が可変制御される。
【０１４９】
ところで、時間軸伸縮制御によって、再生波形データの時間軸での存在時間が伸縮制御される場合、この伸縮制御にあわせて、ピッチテンプレート及び振幅テンプレートの時間軸も伸縮制御してやることが望ましい。従って、図３０のステップＳ１０３，Ｓ１０５においては、ステップＳ１０２で作成されたタイムテンプレートに応じて、該ステップで作成するピッチテンプレート及び振幅テンプレートの時間軸を伸縮制御するようにするものとする。
【０１５０】
なお、楽音合成機能のすべてをソフトウェア音源によって構成せずに、ソフトウェア音源とハードウェア音源のハイブリッドタイプとしてもよい。また、ハードウェア音源装置のみでこの発明に係る楽音合成処理を行うようにしてもよい。あるいは、ＤＳＰ（ディジタル・シグナル・プロセッサ）を用いてこの発明に係る楽音合成処理を行うようにしてもよい。また、ソフトウェア音源またはハードウェア音源またはそのハイブリッドタイプのいずれの音源方式を用いる場合でも、その波形形成方式は、単純なＰＣＭ波形メモリ読み出し方式に限らず、前述の通り、各種のデータ圧縮技術を用いた方式や、各種の波形合成アルゴリズムに従うパラメータ演算による方式など、適宜のものを使用することができる。
【０１５１】
【発明の効果】
以上の通り、この発明によれば、各種の奏法（アーティキュレーション）を反映させた自由な楽音合成と編集が可能となるので、電子楽器や電子的装置を用いて楽音を発生する場合において、“アーティキュレーション”のリアルな再現を実現すると共にその制御を容易にし、電子楽器やマルチメディア機器等においてユーザーの自由な音作りと編集操作を許容するインタラクティブな高品質楽音作成技術を提供することができる、という優れた効果を奏する。
【図面の簡単な説明】
【図１】  この発明に係る楽音データ作成方法に従う楽音データベース作成手順の一例を示すフロー図。
【図２】  一連の楽曲フレーズの楽譜例と、それに対応するアーティキュレーション単位での演奏区間の分割例と、アーティキュレーションエレメントを構成する楽音要素の分析例とを模式的に示す図。
【図３】  １つのアーティキュレーションエレメントに対応する波形から分析された複数の楽音要素の具体例を示す図。
【図４】  データベースの構成例を示す図。
【図５】  図４のアーティキュレーションデータベースＡＤＢにおけるアーティキュレーションシーケンスＡＥＳＥＱとアーティキュレーションエレメントベクトルＡＥＶＱの具体例を示す図。
【図６】  属性情報を含むアーティキュレーションエレメントベクトルＡＥＶＱの具体例を示す図。
【図７】  この発明に係る楽音データ作成方法に従う楽音合成手順の一例を示すフロー図。
【図８】  この発明に係る楽音データ作成方法に従う楽音合成手法を採用した自動演奏シーケンスデータの構成例を示す図。
【図９】  この発明に従ういくつかの奏法シーケンスの具体例を示す図。
【図１０】  １つの奏法シーケンス内における各アーティキュレーションエレメント相互のクロスフェード合成による接続処理の一例を示す図。
【図１１】  奏法シーケンス（アーティキュレーションエレメントシーケンス）の編集例を概観する図。
【図１２】  奏法シーケンス（アーティキュレーションエレメントシーケンス）の編集手樹の一例を示すフロー図。
【図１３】  パーシャルベクトルの考え方を示す図。
【図１４】  パーシャルベクトルを含むアーティキュレーションエレメントの楽音合成処理手順を部分的に示すフロー図。
【図１５】  ビブラート合成処理の一例を示す図。
【図１６】  ビブラート合成処理の別の例を示す図。
【図１７】  波形テンプレートの接続処理例のいくつかのルールを示す図。
【図１８】  波形テンプレート以外のテンプレートデータ（エンベロープ波形状のテンプレートデータ）の接続処理例のいくつかのルールを示す図。。
【図１９】  図１８（ｂ）に示す接続ルールのいくつかの具体化手段を示す図。
【図２０】  図１８（ｃ）に示す接続ルールのいくつかの具体化手段を示す図。
【図２１】  各種テンプレートデータの接続処理とテンプレートデータに基づく楽音合成処理の概略を示すブロック図。
【図２２】  この発明の実施例に係る楽音合成装置のハードウェア構成例を示すブロック図。
【図２３】  図２２における波形インタフェースの詳細例とＲＡＭ内の波形バッファの構成例を示すブロック図。
【図２４】  ＭＩＤＩ演奏データに基づいて実行される楽音生成処理の概略を示すタイムチャート。
【図２５】  奏法シーケンス（アーティキュレーションエレメントシーケンスＡＥＳＥＱ）のデータに基づいて実行される奏法演奏処理（アーティキュレーションエレメント楽音合成処理）の概略を示すタイムチャート。
【図２６】  図２２のＣＰＵが実行する楽音合成処理のメインルーチンを示すフローチャート。
【図２７】  図２６における「自動演奏処理」の一例を示すフローチャート。
【図２８】  図２６における「音源処理」の一例を示すフローチャート。
【図２９】  図２８における「通常演奏」についての「１フレーム分の波形データ生成処理」の一例を示すフローチャート。
【図３０】  図２８における「奏法演奏」についての「１フレーム分の波形データ生成処理」の一例を示すフローチャート。
【図３１】  時間軸伸縮処理（ＴＳＣ制御）の概略を概念的に示す図。
【図３２】  奏法シーケンスの階層化構造を説明する図。
【図３３】  時間軸伸縮制御によって時間軸圧縮する場合の波形読出アドレスの時間的進行状態の一例を示す図。
【図３４】  時間軸伸縮制御によって時間軸伸張する場合の波形読出アドレスの時間的進行状態の一例を示す図。
【符号の説明】
ＡＤＢ  アーティキュレーションデータベース
ＴＤＢ  テンプレートデータベース
１０  ＣＰＵ
１１  ＲＯＭ（リードオンリーメモリ）
１２  ＲＡＭ（ランダムアクセスメモリ）
１３  ハードディスク装置
１４，１５  リムーバブルディスク装置
１６  表示器
１７  キーボード及びマウス等の入力操作装置１７
１８  波形インタフェース
１９  タイマ
２０  ネットワークインタフェース
２１  ＭＩＤＩインタフェース
２２  データ及びアドレスバス
【図１】
0003724222.tif 000002
【図２】
0003724222.tif 000003
【図３】
0003724222.tif 000004
【図４】
0003724222.tif 000005
【図５】
0003724222.tif 000006
【図６】
0003724222.tif 000007
【図７】
0003724222.tif 000008
【図８】
0003724222.tif 000009
【図９】
0003724222.tif 000010
【図１０】
0003724222.tif 000011
【図１１】
0003724222.tif 000012
【図１２】
0003724222.tif 000013
【図１３】
0003724222.tif 000014
【図１４】
0003724222.tif 000015
【図１５】
0003724222.tif 000016
【図１６】
0003724222.tif 000017
【図１７】
0003724222.tif 000018
【図１８】
0003724222.tif 000019
【図１９】
0003724222.tif 000020
【図２０】
0003724222.tif 000021
【図２１】
0003724222.tif 000022
【図２２】
0003724222.tif 000023
【図２３】
0003724222.tif 000024
【図２４】
0003724222.tif 000025
【図２５】
0003724222.tif 000026
【図２６】
0003724222.tif 000027
【図２７】
0003724222.tif 000028
【図２８】
0003724222.tif 000029
【図２９】
0003724222.tif 000030
【図３０】
0003724222.tif 000031
【図３１】
0003724222.tif 000032
【図３２】
0003724222.tif 000033
【図３３】
0003724222.tif 000034
【図３４】
0003724222.tif 000035