"MMは1以上の整数小節分の音の並びにおける各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む第1の種類の演奏データと、アウフタクトとそれに続くM小節分の音の並びにおける各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む第2の種類の演奏データとを記憶した記憶手段と、前記記憶手段から複数個の演奏データを取得して配列する編集手段であって、前記第1または第2の種類の演奏データの後に前記第2の種類の演奏データを配列する場合に、配列順が前の演奏データに対して、当該演奏データの各イベントが示す各音からなる音の並びの終端を配列順が後の演奏データの各イベントが示す音の並びの中の略アウフタクトの分だけ短くする書き換え処理を施し、この書き換え処理を経た演奏データの後に該当の演奏データを配列する編集手段とを具備することを特徴とする曲編集装置。前記編集手段は、前記書き換え処理では、配列順が後の演奏データの各イベントが示す音の並びの中のアウフタクトの音の演奏区間をアウフタクト演奏区間とし、配列順が前の演奏データのイベントが示す音からなる演奏区間の終端よりも前記アウフタクト演奏区間の分だけ前の時刻を基準時刻とし、配列順が前の演奏データにおける音の並びの区切りの位置に該当する各イベントの中から前記基準時刻に先行し且つ前記基準時刻に最も近い時刻を実行時刻とするイベントを選択し、この選択したイベントよりも後のイベントとタイミングデータを消去し、消去されずに残ったイベントのうち最後のイベントが示す音の消音時刻が前記基準時刻と略一致するように当該最後のイベントの実行時刻を示すタイミングデータを書き換えることを特徴とする請求項1に記載の曲編集装置。前記第1及び第2の種類の演奏データの各イベントのうち所定値よりも長い休符を経て発音される音のイベントにはマークが付加されており、前記編集手段は、前記書き換え処理では、前記配列順が前の演奏データに含まれる各イベントのうちマークが付加されているイベントを前記区切り位置に該当する各イベントとし、当該イベントの中から前記基準時刻に先行し且つ前記基準時刻に最も近い時刻を実行時刻とするイベントを選択することを特徴とする請求項2に記載の曲編集装置。1曲分の音の並びを示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む曲演奏データからM小節分よりも長い演奏区間の各音を示す各イベントと各イベントの実行時刻を示すタイミングデータを切り出し、切り出した各イベント及びタイミングデータを前記第2の種類の演奏データとして前記記憶手段に記憶する手段を具備することを特徴とする請求項1乃至3の何れか1の請求項に記載の曲編集装置。コンピュータに、MMは1以上の整数小節分の音の並びにおける各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む第1の種類の演奏データと、アウフタクトとそれに続くM小節分の音の並びにおける各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む第2の種類の演奏データとを記憶した記憶手段と、前記記憶手段から複数個の演奏データを取得して配列する編集手段であって、前記第1または第2の種類の演奏データの後に前記第2の種類の演奏データを配列する場合に、配列順が前の演奏データに対して、当該演奏データの各イベントが示す各音からなる音の並びの終端を配列順が後の演奏データの各イベントが示す音の並びの中の略アウフタクトの分だけ短くする書き換え処理を施し、この書き換え処理を経た演奏データの後に該当の演奏データを配列する編集手段とを実現させるプログラム。ところで、従来のこの種の技術では、データベースに収録される演奏データが1曲分の演奏データを1小節や2小節などの比較的短い単位で分割したものである場合があった。この場合、データベース内の演奏データを組合せてできる曲は似通ったものになってしまい、バリエーションの豊かな曲創作の環境を提供できないという問題があった。本発明は、このような課題に鑑みてなされたものであり、データベースに収録された複数個の演奏データを用いてバリエーションの豊かな楽曲を創作できるようにすることを目的とする。本発明は、MMは1以上の整数小節分の音の並びにおける各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む第1の種類の演奏データと、アウフタクトとそれに続くM小節分の音の並びにおける各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む第2の種類の演奏データとを記憶した記憶手段と、前記記憶手段から複数個の演奏データを取得して配列する編集手段であって、前記第1または第2の種類の演奏データの後に前記第2の種類の演奏データを配列する場合に、配列順が前の演奏データに対して、当該演奏データの各イベントが示す各音からなる音の並びの終端を配列順が後の演奏データの各イベントが示す音の並びの中の略アウフタクトの分だけ短くする書き換え処理を施し、この書き換え処理を経た演奏データの後に該当の演奏データを配列する編集手段とを具備する曲編集装置を提供する。この発明において、M小節分の演奏区間の音の並びにおける各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む演奏データに対して、当該演奏データの各イベントのうち閾値よりも長い休符を経て発音される音のイベントに音の並びの区切りの位置に該当することを示すマークを付加する処理を施し、この処理を経た演奏データを第1の種類の演奏データとして前記記憶手段に記憶するとともに、M小節よりも長い演奏区間の各音の発音内容を示す各イベントと各イベントの実行時刻を示すタイミングデータとを含む演奏データに対して、当該演奏データの各イベントのうち閾値よりも長い休符を経て発音される音のイベントに前記マークを付加する処理を施し、この処理を経た演奏データを第2の種類の演奏データとして前記記憶手段に記憶する手段を具備してもよい。以下、図面を参照し、この発明の実施の形態を説明する。図1は、この発明の一実施形態である曲編集装置10の構成を示すブロック図である。この曲編集装置10は、様々な創作者がMIDIMusicalInstrumentDigitalInterfaceシーケンサを用いて作成した曲演奏データSMDから、音の並びであるメロディの素材となる複数種類の演奏データMDを生成して当該装置10に蓄積するとともに、当該装置10内に蓄積された複数個の演奏データMDの中から選んだものを組み合わせて1曲分の曲演奏データEMDを生成し、この曲演奏データEMDのメロディと同じメロディを持った歌唱音声の音声信号を出力する。図1に示すように、曲編集装置10は、データ読込部11、操作部12、表示部13、放音部14、及び制御部15を有する。データ読込部11は、記憶媒体が装着された場合に、その媒体内の曲演奏データSMDを読み出して制御部15に供給する。図2は、曲演奏データSMDのデータ構造の一例を示す図である。曲演奏データSMDは、音の発音内容を示すノートオンイベントEVON♯♯はノートナンバを示す及びノートオフイベントEVOFF♯と、各イベントEVON♯またはEVOFF♯の実行時刻tを各々の前のイベントEVOFF♯またはEVON♯の実行時刻tとの時間差ティック数として示すタイミングデータであるデルタタイムΔThh=1、2...hは、配列順を示すインデックスであるとをL個のトラックTR-jj=1~Lに分けて並べたものである。ここで、本実施形態では、各創作者は、1つの楽曲の曲演奏データSMDを次のルールa1~f1に従って作成する。a1.曲演奏データ化する楽曲はハ長調のものとする。b1.曲演奏データ化する楽曲の最初の音から最後の音までの各音の発音及び消音を指示するイベントEVON♯及びEVOFF♯とその実行時刻tを示すデルタタイムΔThを曲演奏データSMD内の第1トラックTR-1に記述する。c1.曲演奏データ化する楽曲の中に演奏の区切り位置がある場合は、トラックTR-1における区切り位置の直前のイベントEVON♯のマークとしての役割を果たすイベント例えば、ノートナンバ126のイベントEVON126とするとその実行時刻t区切り位置の直前のイベントEVON♯のものと同じ実行時刻tを示すデルタタイムΔThを曲演奏データSMD内の第2トラックTR-2に記述する。d1.曲演奏データ化する楽曲の中に歌唱曲の最後のメロディに相応しい演奏区間がある場合は、そのことを示すマークとしての役割を果たすイベント例えば、ノートナンバ125のイベントEVON125とするとこのイベントEVON125の実行時刻t該当の演奏区間の始点の時刻を示すデルタタイムΔThを曲演奏データSMD内の第3トラックTR-3に記述する。e1.曲演奏データ化する楽曲の中に歌唱曲の最初のメロディに相応しい演奏区間がある場合は、そのことを示すマークとしての役割を果たすイベント例えば、ノートナンバ124のイベントEVON124とするとこのイベントEVON124の実行時刻t該当の演奏区間の始点の時刻を示すデルタタイムΔThを曲演奏データSMD内の第3トラックTR-3に記述する。f1.曲演奏データ化する楽曲の中に歌唱曲の最初と最後の何れでもない部分中間部分のメロディに相応しい演奏区間がある場合は、そのことを示すマークとしての役割を果たすイベント例えば、ノートナンバ123のイベントEVON123とするとこのイベントEVON123の実行時刻t該当の演奏区間の始点の時刻を示すデルタタイムΔThを曲演奏データSMD内の第3トラックTR-3に記述する。図1において、操作部12は、各種情報の入力操作を受け付け、操作内容を示す信号を制御部15に供給する。表示部13は、制御部15による制御の下に各種情報を表示する。放音部14は、制御部15から出力される音信号を音として出力する。制御部15は、曲編集装置10の制御中枢としての役割を果たす装置である。制御部15は、CPU16、RAM17、ROM18、及びハードディスク19を有する。CPU16は、RAM17をワークエリアとして利用しつつ、ROM18やハードディスク19に記憶されたプログラムを実行する。ハードディスク19には、素材データベースMDB、楽曲データベースBDB、音声素片データベースPDB、及び曲編集プログラムPRGが記憶されている。素材データベースMDBには演奏データMDが記憶される。楽曲データベースBDBには曲演奏データEMDが記憶される。音声素片データベースPDBには音声素片データPDが記憶される。ここで、音声素片データPDは、単一の音素や音素間の遷移部分など、歌唱音声の素材となる各種の音声素片の波形を定義したデータである。曲編集プログラムPRGは、次の3つの機能を有する。a2.データ蓄積機能これは、データ読込部11から曲演奏データSMDが供給された場合に、この曲演奏データSMDから複数種類の演奏データMDを生成して素材データベースMDBに記憶する機能である。b2.編集機能これは、素材データベースMDBから4個の演奏データMDを取得し、取得した演奏データMDを配列して1曲分の曲演奏データEMDを生成する機能である。c2.歌唱合成機能これは、曲演奏データEMDのメロディと同じメロディを持った歌唱音声の音信号を合成し、この音信号を放音部14から放音させる機能である。次に、本実施形態の動作について説明する。本実施形態では、CPU16は、データ蓄積処理、編集処理、及び歌唱合成処理を実行する。以下、各処理について順に説明する。図3は、データ蓄積処理を示すフローチャートである。図3に示す一連の処理はデータ蓄積機能の働きによって実行される処理である。図3に示す一連の処理は、データ読込部11によって読み出された曲演奏データSMDがRAM17に書き込まれると開始される。図3に示す一連の処理の実行にあたり、利用者は、以下の3つの項目を操作部12により設定し、各々の設定値をRAM17に記憶させる。a3.データ処理開始位置この項目では、曲演奏データSMD内における演奏データMDの生成に用いる部分の先頭の小節位置Xを設定する。b3.アウフタクトこの項目では、アウフタクトのない演奏データMDのみを得たい場合はアウフタクトなしと設定し、アウフタクトのない演奏データMD及びアウフタクトのある演奏データMDの両方を得たい場合はアウフタクトありを設定する。c3.移調この項目では、演奏データMDと同じ調ハ長調の演奏データMDのみを得たい場合は移調なしと設定し、演奏データMDと同じ調及びこれと異なる調の演奏データMDを得たい場合は移調ありと設定する。図3において、CPU16は、分割処理を行うS101。この分割処理では、CPU16は、図4に示すように、RAM17内の曲演奏データSMDにおけるX小節目図4の例では、X=2以降の演奏区間をMMは1以上の整数:例えば、M=2とする小節毎の演奏区間R-ii=1~Z:Zは分割した演奏区間の総数であるに分割し、各演奏区間R-i内のイベントEVON♯,EVOFF♯、及びデルタタイムΔThを演奏データMDR-iとする。次に、CPU16は、変数kの値を初期値であるk=1とした後S102、ステップS101において分割した演奏データMDR-ii=1~Zのうちk番目の演奏データMDR-kを処理対象として選択するS103。CPU16は、第1の判定処理を行うS104。この第1の判定処理では、CPU16は、演奏データMDR-kの第1トラックTR-1における各イベントEVON♯の後のデルタタイムΔThを演奏区間R-k内のメロディをなす各音の音長とし、演奏区間R-kが下記の2つの条件a4及びb4を満たすものであるか否かを判定する。a4.当該演奏区間R-k内の各イベントEVON♯が示す音の中に音長が閾値TH1未満のものが1つ以上あることb4.当該演奏区間R-k内の各イベントEVON♯が示す音の音長の総計が閾値TH2未満であることCPU16は、ステップS104において、処理対象とした演奏データMDR-kが上記条件a4及びb4の両方を満たすと判定した場合S104:Yes、その演奏データMDR-kを破棄するS105。ここで、演奏データMDR-kを破棄するのは、短か過ぎる音を含むメロディや音が僅かしか含まれていないメロディは歌唱曲のメロディとして利用し難いためである。CPU16は、ステップS105において、演奏データMDR-kを破棄した後、ステップS114に進む。このステップS114の処理の内容は後述する。CPU16は、ステップS104において、処理対象とした演奏データMDR-kが上記条件a4及びb4の両方または一方を満たさないと判定した場合S104:No、第2の判定処理を行うS106。この第2の判定処理では、CPU16は、設定項目b3においてアウフタクトありが設定されているかを判定する。CPU16は、アウフタクトありが設定されている場合S106:Yes、アウフタクト生成処理を行うS107。アウフタクト生成処理は、曲演奏データSMDから、アウフタクトの各音とそれに続くMM=2小節分のメロディの各音を示す各イベントEVON♯及びEVOFF♯と各イベントEVON♯及びEVOFF♯の実行時刻を示すデルタタイムΔThとを含む演奏データMDRA-kを生成する処理である。アウフタクト生成処理では、CPU16は、曲演奏データSMDからMM=2小節分より長い演奏区間のイベントEVON♯及びEVOFF♯とデルタタイムΔThを切り出し、切り出したイベントEVON♯及びEVOFF♯とデルタタイムΔThを演奏データMDRA-kとする。より詳細に説明すると、図5に示すように、CPU16は、RAM17内の曲演奏データSMDの第2トラックTR-2における演奏区間R-1の1つ前の小節図5の例では第1小節内のイベントEVON126のうち演奏区間R-1に最も近いものの実行時刻tをアウフタクトの始点の時刻tSTRTとし、曲演奏データSMDのトラックTR-jj=1~Lにおける時刻tSTRTから演奏区間R-1の終端までの間の各イベントEVON♯及びEVOFF♯とデルタタイムΔThを1番目の演奏データMDRA-1とする。CPU16は、2番目の演奏データMDRA-2,3番目の演奏データMDRA-3...Z番目の演奏データMDRA-Zを同様の手順で生成する。CPU16は、アウフタクトなしが設定されている場合S106:No、ステップS107を実行することなく、次のステップS108に進む。CPU16は、ステップS108では、第3の判定処理を行う。この第3の判定処理では、CPU16は、演奏データMDR-kステップS107が実行されている場合は、演奏データMDR-k及びMDRA-kの第2トラックTR-2にイベントEVON126が書き込まれているか否かを判定する。CPU16は、演奏データMDR-kの第2トラックTR-2にイベントEVON126が書き込まれていない場合S108:No、第1のマーキング処理を行うS109。第1のマーキング処理では、CPU16は、演奏データMDR-kの第1トラックTR-1における各イベントEVOFF♯の後のデルタタイムΔThを演奏区間R-k内のメロディをなす各音間の休符の長さとし、演奏区間R-k内に閾値TH3以上の長さの休符があるか否かを判定する。CPU16は、演奏区間R-k内のメロディをなす音の間に閾値TH3以上の長さの休符がある場合は、その休符を演奏の区切りの位置とみなす。この場合、CPU16は、演奏データMDR-kの第2トラックTR-2にイベントEVON126を追記するとともに、トラックTR-1における区切り位置の直前のイベントEVOFF♯を選択する。その上で、CPU16は、この選択したイベントEVOFF♯の実行時刻tと第2トラックTR-2に追記したイベントEVON126の実行時刻tが同時刻になるように第2トラックTR-2における追記したイベントEVON126の前後のデルタタイムΔThを書き換える。CPU16は、演奏データMDR-kの第2トラックTR-2に1つ以上のイベントEVON126が書き込まれている場合S108:Yes、ステップS109を実行することなく、次のステップS110に進む。CPU16は、ステップS110では、第4の判定処理を行う。この第4の判定処理では、CPU16は、演奏データMDR-kステップS107が実行されている場合は、演奏データMDR-k及びMDRA-kの第3トラックTR-3にイベントEVON125、EVON124、またはEVON123が書き込まれているか否かを判定する。CPU16は、ステップS110において、演奏データMDR-kの第3トラックTR-3にイベントEVON125、EVON124、及びEVON123のいずれも書き込まれていないと判定した場合S110:No、第2のマーキング処理を行うS111。第2のマーキング処理では、CPU16は、演奏データMDR-kの第1トラックTR-1の各イベントEVON♯のうちの最後のイベントEVON♯の音を演奏区間R-k内のメロディの最後の音とみなす。そして、この最後の音が次の2つの条件を満たすか否かを判定する。a5.音の音名がハ長調の基音ドであることb5.音の音長が閾値TH4以上であることCPU16は、2つの条件a5及びb5の両方を満たす場合、演奏データMDR-kが曲の最後の部分に相応しいメロディを含んでいるとみなす。この場合、CPU16は、演奏データMDR-kの第3トラックTR-3の先頭にイベントEVON125を追記する。また、CPU16は、条件a5及びb5のうち少なくとも一方が満たされない場合、演奏データMDR-kが、曲の最初の部分と、最初と最後の何れでもない部分中間部分に相応しいメロディを含んでいるとみなす。この場合、CPU16は、演奏データMDR-kの第3トラックTR-3の先頭にイベントEVON124及びイベントEVON123を追記する。CPU16は、ステップS110において、演奏データMDR-kの第3トラックTR-3にイベントEVON125、EVON124、及びEVON123のいずれかが書き込まれていると判定した場合S110:Yes、ステップS111を実行することなく次のステップS112に進む。ステップS112では、第5の判定処理を行う。この第5の判定処理では、CPU16は、設定項目c3において移調ありが設定されているか否かを判定する。CPU16は、移調ありが設定されている場合S112:Yes、移調処理を行うS113。移調処理では、演奏データMDR-kステップS107が実行されている場合は、演奏データMDR-k及びMDRA-kからそのメロディをハ長調と異なる調に移調した演奏データMDを生成する。より詳細に説明すると、CPU16は、演奏データMDR-kの第1トラックTR-1の各イベントEVON♯のノートナンバを短2度高いものに書き換えた演奏データMDR1-kを生成する。また、演奏データMDR-kの第1トラックTR-1の各イベントEVON♯のノートナンバを長2度高いものに書き換えた演奏データMDR2-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを短3度高いものに書き換えた演奏データMDR3-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを長3度高いものに書き換えた演奏データMDR4-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを4度高いものに書き換えた演奏データMDR5-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを増4度高いものに書き換えた演奏データMDR6-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを5度高いものに書き換えた演奏データMDR7-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを増5度高いものに書き換えた演奏データMDR8-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを長6度高いものに書き換えた演奏データMDR9-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを短7度高いものに書き換えた演奏データMDR10-kを生成する。また、演奏データMDR-kの第1トラックTR-1のイベントEVON♯のノートナンバを長7度高いものに書き換えた演奏データMDR11-kを生成する。ここで、以下では、ハ長調の演奏データMDR-kとハ長調以外の演奏データMDR1-k、MDR2-k、MDR3-k、MDR4-k、MDR5-k、MDR6-k、MDR7-k、MDR8-k、MDR9-k、MDR10-k、MDR11-kを区別しない場合は、演奏データMDR-kと記す。CPU16は、移調なしが設定されている場合S112:No、ステップS113に実行することなく、ステップS114に進む。ステップS114では、変数kと曲演奏データSMDの分割数Zが同じであるかを判定する。CPU16は、k<Zである場合S114:No、ステップS115に進んで変数kをk=k1にした後、ステップS103以降の処理を繰り返す。CPU16は、k=Zである場合S114:Yes、それまでに生成した演奏データMDR-k、MDR1-k、MDR2-k、MDR3-k、MDR4-k、MDR5-k、MDR6-k、MDR7-k、MDR8-k、MDR9-k、MDR10-k、MDR11-k、MDRA-k、MDRA1-k、MDRA2-k、MDRA3-k、MDRA4-k、MDRA5-k、MDRA6-k、MDRA7-k、MDRA8-k、MDRA9-k、MDRA10-k、MDRA11-kの各々を演奏データMDとして素材データベースMDBに記憶するS116。図6は、編集処理を示すフローチャートである。図6に示す一連の処理は編集機能の働きによって実行される処理である。図6に示す一連の処理は、操作部12によって演奏データMDの編集が指示されると開始される。図6に示す一連の処理の実行にあたり、利用者は、以下の項目を操作部12により設定し、その設定値をRAM17に記憶させる。a6.コード進行この項目では、曲の8小節分のコード進行における第1~第8小節の各コードのコードネームCN1~CN8を設定する。図6において、CPU16は、演奏データ取得処理を行うS201。演奏データ取得処理では、CPU16は、曲の第1~第2小節のメロディの素材とする演奏データMD1~2、第3~第4小節のメロディの素材とする演奏データMD3~4、第5~第6小節のメロディの素材とする演奏データMD5~6、及び第7~第8小節のメロディの素材とする演奏データMD7~8を素材データベースMDB内の複数の演奏データMDの中から探索し、各々の探索結果をRAM17に読み出す。より具体的には、CPU16は、次の4つのデータ探索処理を行う。第1のデータ探索処理では、CPU16は、素材データベースMDB内の全演奏データMDのうち第3トラックTR-3にイベントEVON123が埋め込まれているものを演奏データMD1~2の候補とし、演奏データMD1~2の候補である各演奏データMDと設定項目a5におけるコードネームCN1及びCN2の和音との適合度を示す評価ポイントPを算出する。評価ポイントPの算出の手順は次の通りである。図7に示すように、評価ポイントPの算出対象がアウフタクトを含まない演奏データMD演奏データMDR-k、MDR1-k、MDR2-k、MDR3-k、MDR4-k、MDR5-k、MDR6-k、MDR7-k、MDR8-k、MDR9-k、MDR10-k、MDR11-kの何れかである場合、CPU16は、当該演奏データMDの第1トラックTR-1の2小節分のイベントEVON♯を評価対象とする。そして、評価対象である2つの小節のイベントEVON♯の各々の音長ティック数の合計値SUMTCKを求める。次に、評価対象の最初の1小節のイベントEVON♯が示す各音の音名が、コードネームCN1と対応するコードの各音図7の例では、CN1=Cなので、ド、ミ、ソの3音、及びこのコードと根音を共通にする5音音階ペンタトニックの各音図7の例では、CN1=Cなので、ド、レ、ミ、ソ、ラの5音に該当するかを判定し、コードの各音と一致する音の音長ティック数に5ポイント、コードの各音と一致しないが5音音階の各音と一致する音の音長ティック数に3ポイント、それ以外の音の音長ティック数に1ポイントを各々乗算する。次に、評価対象の2番目の1小節のイベントEVON♯が示す各音の音名が、コードネームCN2の和音図7の例では、CN2=Fなので、ファ、ラ、ドの3音、及びこのコードと根音を共通にする5音音階ペンタトニックの各音図7の例では、CN2=Fなので、ファ、ソ、ラ、ド、レの5音に該当するかを判定し、コードの各音と一致する音の音長ティック数に5ポイント、コードの各音と一致しないが5音音階の各音と一致する音の音長ティック数に3ポイント、それ以外の音の音長ティック数に1ポイントを各々乗算する。その上で、2つの小節のイベントEVON♯の各々における音長ティック数に該当のポイントを乗じた値の合計値SUMPNTを求める。そして、合計値SUMPNTで合計値SUMTCKを除算した値SUMPNT/SUMTCKを当該演奏データMDの評価ポイントPとする。また、図8に示すように、評価ポイントPの算出対象がアウフタクトを含む演奏データMDMDRA-k、MDRA1-k、MDRA2-k、MDRA3-k、MDRA4-k、MDRA5-k、MDRA6-k、MDRA7-k、MDRA8-k、MDRA9-k、MDRA10-k、MDRA11-kのいずれかである場合、CPU16は、当該演奏データMDの第1トラックTR-1におけるアウフタクトの終端以降の2小節分のイベントEVON♯を評価対象とする。そして、評価対象である2つの小節のイベントEVON♯の各々の音長ティック数の合計値SUMTCKを求める。次に、評価対象の最初の1小節のイベントEVON♯が示す各音の音名が、コードネームCN1と対応するコードの各音図8の例では、CN1=Cなので、ド、ミ、ソの3音、及びこのコードと根音を共通にする5音音階ペンタトニックの各音図8の例では、CN1=Cなので、ド、レ、ミ、ソ、ラの5音に該当するかを判定し、コードの各音と一致する音の音長ティック数に5ポイント、コードの各音と一致しないが5音音階の各音と一致する音の音長ティック数に3ポイント、それ以外の音の音長ティック数に1ポイントを各々乗算する。次に、評価対象の2番目の1小節のイベントEVON♯が示す各音の音名が、コードネームCN2の和音図8の例では、CN2=Fなので、ファ、ラ、ドの3音、及びこのコードと根音を共通にする5音音階ペンタトニックの各音図8の例では、CN2=Fなので、ファ、ソ、ラ、ド、レの5音に該当するかを判定し、コードの各音と一致する音の音長ティック数に5ポイント、コードの各音と一致しないが5音音階の各音と一致する音の音長ティック数に3ポイント、それ以外の音の音長ティック数に1ポイントを各々乗算する。その上で、2つの小節のイベントEVON♯の各々における音長ティック数に該当のポイントを乗じた値の合計値SUMPNTを求める。そして、合計値SUMPNTで合計値SUMTCKを除算した値SUMPNT/SUMTCKを当該演奏データMDの評価ポイントPとする。CPU16は、第1のデータ探索処理では、イベントEVON123が埋め込まれている演奏データMDの全てについて評価ポイントPを求めた後、評価ポイントPが最も高いものを演奏データMD1~2としてRAM17に記憶する。第2のデータ探索処理では、CPU16は、素材データベースMDB内の全演奏データMDのうち第3トラックTR-3にイベントEVON124が埋め込まれているものを演奏データMD3~4の候補とし、演奏データMD3~4の候補である各演奏データMDと設定項目a5におけるコードネームCN3及びCN4の和音との適合度を評価ポイントPに換算し、評価ポイントPが最も高いものを演奏データMD3~4としてRAM17に記憶する。第3のデータ探索処理では、CPU16は、素材データベースMDB内の全演奏データMDのうち第3トラックTR-3にイベントEVON124が埋め込まれているものを演奏データMD5~6の候補とし、演奏データMD5~6の候補である各演奏データMDと設定項目a5におけるコードネームCN5及びCN6の和音との適合度を評価ポイントPに換算し、評価ポイントPが最も高いものを演奏データMD5~6としてRAM17に記憶する。第4のデータ探索処理では、CPU16は、素材データベースMDB内の全演奏データMDのうち第3トラックTR-3にイベントEVON125が埋め込まれているものを演奏データMD7~8の候補とし、演奏データMD7~8の候補である各演奏データMDと設定項目a5におけるコードネームCN7及びCN8の和音との適合度を評価ポイントPに換算し、評価ポイントPが最も高いものを演奏データMD7~8としてRAM17に記憶する。図6において、CPU16は、第1の配列処理を行うS202。第1の配列処理では、CPU16は、演奏データMD5~6の後に演奏データMD7~8を配列して曲の第5~第8小節の4小節分のイベントEVON♯及びEVOFF♯を含む演奏データMD5~8を生成する。より詳細に説明すると、CPU16は、配列順が相前後する2つの演奏データMD5~6及びMD7~8のうち後の演奏データMD7~8の種類がアウフタクトのない演奏データMDである場合とアウフタクトのある演奏データMDである場合の各々において次のような処理を行う。a7.演奏データMD7~8がアウフタクトのない演奏データMDである場合この場合、CPU16は、演奏データMD5~6の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThの後に演奏データMD7~8の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThを繋げたものを演奏データMD5~8とする。b7.演奏データMD7~8がアウフタクトのある演奏データMDである場合この場合、CPU16は、演奏データMD5~6に対して、演奏データMD5~6の各イベントEVON♯及びEVOFF♯が示す各音からなるメロディの終端を配列順が後の演奏データMD7~8の各イベントEVON♯及びEVOFF♯が示す音からなるメロディの中のアウフタクトの分だけ短くする書き換え処理を施す。その上で、書き換え処理を経た演奏データMD’5~6の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThの後に演奏データMD7~8の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThを繋げたものを演奏データMD5~8とする。書き換え処理の詳細な手順は次の通りである。この書き換え処理では、まず、演奏データMD7~8の第1トラックTR-1の各イベントEVON♯及びEVOFF♯が示す音からなるメロディの中のアウフタクトの演奏区間をアウフタクト演奏区間RAとし、演奏データMD5~6の第1トラックTR-1のイベントEVON♯及びEVOFF♯が示す音からなるメロディの演奏区間R5~6の終端よりもアウフタクト演奏区間RAの分だけ前の時刻を基準時刻tBASISとする図9。次に、演奏データMD5~6の第2トラックTR-2における一連のイベントEVON126の中から基準時刻tBASISに先行し且つ基準時刻tBASISに最も近い時刻を実行時刻tとするイベントEVOFF126を選択する図10。次に、演奏データMD5~6の各トラックTR-jにおけるこの選択したイベントEVOFF126よりも後のイベントEVON♯、EVOFF♯、及びデルタタイムΔThを消去する図11。次に、演奏データMD5~6の第1トラックTR-1における消去されずに残ったイベントEVON♯及びEVOFF♯のうち最後のイベントEVOFF♯を選択し、この選択したイベントEVOFF♯が示す音の消音時刻が基準時刻tBASISと一致するように当該イベントEVOFF♯の実行時刻tを示すデルタタイムΔThすなわち、当該イベントEVOFF♯の前のデルタタイムΔThを書き換えたものを演奏データMD’5~6とする図12。後の演奏データMD7~8がアウフタクトのある演奏データMDである場合、以上の処理を経て得られた演奏データMD’5~6の各トラックTR-jの後に演奏データMD7~8の各トラックTR-jを繋げたものを演奏データMD5~8とする図13。図6において、CPU16は、第2の配列処理を行うS203。第2の配列処理では、CPU16は、演奏データMD3~4の後に演奏データMD5~8を配列して曲の第3~第8小節の6小節分のイベントEVON♯及びEVOFF♯を含む演奏データMD3~8を生成する。この第2の配列処理では、配列順が相前後する2つの演奏データMD3~4及びMD5~8のうち演奏データMD5~8の種類がアウフタクトのない演奏データMDである場合は、演奏データMD3~4の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThの後に演奏データMD5~8の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThを繋げたものを演奏データMD3~8とする。また、演奏データMD5~8の種類がアウフタクトのある演奏データMDである場合は、演奏データMD3~4に対して上述した書き換え処理を施す。その上で、書き換え処理を経た演奏データMD’3~4の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThの後に演奏データMD5~8の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThを繋げたものを演奏データMD3~8とする。次に、CPU16は、第3の配列処理を行うS204。第3の配列処理では、CPU16は、演奏データMD1~2の後に演奏データMD3~8を配列して1曲分第1~第8小節の8小節分の曲演奏データEMDを生成する。第3の配列処理では、配列順が相前後する2つの演奏データMD1~2及びMD3~8のうち演奏データMD3~8の種類がアウフタクトのない演奏データMDである場合は、演奏データMD1~2の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThの後に演奏データMD3~8の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThを繋げたものを曲演奏データEMDとする。また、演奏データMD3~8の種類がアウフタクトのある演奏データMDである場合は、演奏データMD1~2に対して上述した書き換え処理を施す。その上で、書き換え処理を経た演奏データMD’1~2の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThの後に演奏データMD3~8の各トラックTR-jのイベントEVON♯、EVOFF♯、及びデルタタイムΔThを繋げたものを曲演奏データEMDとする。次に、CPU16は、第1~第3の配列処理により得られた1曲分の曲演奏データEMDを楽曲データベースBDBに記憶するS205。図14は、歌唱合成処理を示すフローチャートである。図14に示す一連の処理は歌唱合成機能の働きによって実行される処理である。図14に示す一連の処理は、操作部12によって歌唱音声の発生が指示されると開始される。図14に示す一連の処理の実行にあたり、利用者は、歌唱曲のメロディに乗せる歌詞をひらがな文字の文字列として入力する。図14において、CPU16は、歌詞として入力された文字列を一連の音声素片に変換するS301。CPU16は、ステップS301で得られた音声素片の各々と対応する音声素片データPDを音声素片データベースPDBからRAM17に読み出すS302。CPU16は、このRAM17内の音声素片データPDを接続することにより、歌詞として入力された文字列と対応する音声信号を生成するS303。CPU16は、楽曲データベースBDBに記憶された曲演奏データEMDの1つをRAM17に読み出すS304。CPU16は、ステップS304で生成した音声信号のピッチを曲演奏データEMDのメロディに合わせるためのピッチ変換処理を施すS305。CPU16は、このピッチ変換処理を施した音声信号を放音部14から音として放音させるS306。この歌唱合成処理の各ステップの詳細な内容については、特許文献2を参照されたい。以上が、本実施形態の詳細である。本実施形態によると、次の効果が得られる。第1に、本実施形態では、編集処理において、演奏データMDの後にアウフタクトのある演奏データMDを配列する場合、配列順が前の演奏データMDに対して書き換え処理を施し、書き換え処理を経た演奏データMDの後に該当の演奏データMDを配列する。よって、データベースMDBに収録された複数個の演奏データMDを用いてバリエーションの豊かな楽曲を創作できる。第2に、本実施形態では、データ蓄積処理において、ハ長調の演奏データMDに移調処理を施すことによりハ長調以外の調の演奏データMDを生成し、これらの演奏データMDを元のハ長調の演奏データMDとともに素材データベースMDBに記憶する。よって、本実施形態によると、異なる調のメロディを組み合わせて多様な楽曲を創作することができる。以上、この発明の一実施形態について説明したが、この発明には他にも実施形態があり得る。例えば、以下の通りである。1上記実施形態において、編集処理により得られた1曲分の曲演奏データEMDを楽曲の音信号として放音部14から放音させるようにしてもよい。2上記実施形態では、4つの演奏データMDを配列して1曲分の曲演奏データEMDを生成した。しかし、2~3つの演奏データMDや5つ以上の演奏データMDを配列して1曲分の曲演奏データEMDを生成してもよい。また、演奏データMDにおける演奏区間の長さは2小節分である必要はなく、1小節分の長さにしてもよいし、3小節分以上の長さにしてもよい。3上記実施形態における第1のマーキング処理では、演奏区間R-i内のメロディの区切り位置を決定した後、第1トラックTR-jにおける区切り位置の直前のイベントEVOFF♯を選択し、この選択したイベントEVOFF♯と第2トラックにおけるイベントEVON126の実行時刻tが同時刻になるように当該イベントEVON126の前後のデルタタイムΔTを書き換えた。しかし、第1トラックTR-jにおける区切り位置の直後のイベントEVON♯すなわち、閾値TH3以上の長さの休符の直後の音の発音を指示するイベントEVON♯を選択し、この選択したイベントEVON♯と第2トラックにおけるイベントEVON126の実行時刻tが同時刻になるように当該イベントEVON126の前後のデルタタイムΔTを書き換えてもよい。4上記実施形態では、第1トラックTR-jにおける演奏の区切り位置の直前のイベントEVOFF♯のマークであるイベントEVON126を第2トラックTR-jに記述した。しかし、第1トラックTR-jにおける演奏の区切り位置の直前のイベントEVOFF♯のマークとなるイベントを第1トラックTR-jに記述してもよい。例えば、所定種類のコントロールチェンジイベントを演奏の区切り位置の直前のイベントEVOFF♯のマークにし、第1トラックTR-jにおける演奏の区切り位置の直前のイベントEVOFF♯とこのコントロールチェンジイベントを連続して記述してもよい。5上記実施形態における書き換え処理では、相前後する2つの演奏データMDのうち配列順が前のものの第2トラックTR-2における一連のイベントEVON126の中から基準時刻tBASISに先行し且つ基準時刻tBASISに最も近い時刻を実行時刻tとするイベントEVOFF126を選択し、当該演奏データMDの各トラックTR-jにおけるこの選択したイベントEVOFF126よりも後のイベントEVON♯、EVOFF♯、及びデルタタイムΔThを消去した。しかし、第2トラックTR-2にイベントEVON126が1つも記されていない場合もあり得る。この場合、CPU16は、配列順が前の演奏データMDの第1トラックTR-1における一連のイベントEVON♯及びEVOFF♯の中から基準時刻tBASISの後のイベントEVOFF♯であって基準時刻tBASISに最も近い時刻を実行時刻tとするイベントEVOFF♯を選択し、当該演奏データMDの各トラックTR-jにおけるこの選択したイベントEVOFF♯よりも後のイベントEVON♯、EVOFF♯、及びデルタタイムΔThを消去するとよい。6上記実施形態では、曲演奏データSMDやこれを分割して得られる演奏データMDは、ノートオンイベントEVON♯、ノートオフイベントEVOFF♯、及びデルタタイムΔThをL個のトラックTR-jj=1~Lに分けて並べたものであった。しかし、曲演奏データSMDやこれを分割して得られる演奏データMDを別のデータフォーマットのものにしてもよい。例えば、演奏データSMD及びMDを、該当するトラックのトラック番号、音源の発音チャネル、イベントの実行時刻を示すタイミングデータ、イベントの種類、及びイベントのパラメータからなるレコードを時系列順に並べた形式イベントリスト形式にしてもよい。また、演奏データSMD及びMDを、イベントの種類とそのパラメータのみからなるレコードを時系列順に並べた形式にしてもよい。また、演奏データSMD及びMDを、ピアノロール形式やスコアロール形式にしてもよい。7上記実施形態では、ノートナンバ126のイベントEVON126を曲演奏データSMD内における演奏の区切り位置を示すマークとし、ノートナンバ125のイベントEVON125を歌唱曲の最後の部分のメロディに相応しい演奏区間を示すマークとし、ノートナンバ124のイベントEVON124を歌唱曲の最初の部分のメロディに相応しい演奏区間を示すマークとし、ノートナンバ123のイベントEVON123を歌唱曲の最初でも最後でもない部分のメロディに相応しい演奏区間を示すマークとした。しかし、演奏の区切り位置や歌唱曲の各部分のメロディに相応しい演奏区間を示すマークとして、別の種類のデータを採用してもよい。また、このマークとしての役割を果たすデータはMIDIにおいてサポートされていない形式のデータであってもよい。8上記実施形態の移調処理では、ハ長調の演奏データMDR-k内の各イベントEVON♯のノートナンバを半音ずつ高いものに置き換えてハ長調と異なる11種類の演奏データMDR1-k、MDR2-k、MDR3-k、MDR4-k、MDR5-k、MDR6-k、MDR7-k、MDR8-k、MDR9-k、MDR10-k、MDR11-kを生成した。しかし、操作部12の操作により、調の種類を設定し、設定された種類の調の演奏データMD-kだけを生成するようにしてもよい。また、移調処理後に、11種類の演奏データMDR1-k、MDR2-k、MDR3-k、MDR4-k、MDR5-k、MDR6-k、MDR7-k、MDR8-k、MDR9-k、MDR10-k、MDR11-kに対して各々の譜面における調音記号を取り除く処理を施し、ハ長調のメロディを示す演奏データMDへとデータ内容を修正してもよい。9上記実施形態のアウフタクト生成処理において、CPU16は、演奏データMDRA-kを次のようにして生成してもよい。まず、演奏データMDR-kの複製を生成する。次に、この複製である演奏データMDR-kにおける演奏区間R-kの始点を時刻t0とし、この時刻t0と1/h例えば、h=2小節分だけ後の時刻tBとの間の演奏区間RB内のイベントEVON♯、EVOFF♯、及びデルタタイムΔTを複製する。そして、この複製であるイベントEVON♯、EVOFF♯、及びデルタタイムΔTを元の演奏データMDR-kの各トラックTR-jの前に追記したものを演奏データMDRA-kとする。10上記実施形態の演奏データ取得処理では、評価対象である一連のイベントEVON♯を、コードネームCN1及びCN2のコードと一致するもの、コードとは一致しないが5音音階の音と一致するもの、コード及び5音音階の何れの音とも一致しないものの3種類に分類し、各イベントEVON♯の音長ティック数に各々の種類に応じたポイントを乗算した。しかし、評価対象である一連のイベントEVON♯を、コードネームCN1及びCN2のコードと一致するもの、コードとは一致しないが5音音階の音と一致するもの、コード及び5音音階の何れの音とも一致しないいがそれ以外のハ長調音階の音と一致するもの、コード、5音音階、ハ長調音階の何れの音とも一致しないものの4種類に分類し、各イベントEVON♯の音長ティック数に各々の種類に応じたポイントを乗算してもよい。この場合において、3番目の種類コード及び5音音階の何れの音とも一致しないいがそれ以外のハ長調音階の音と一致するものに該当する場合に1ポイントを乗算し、4番目の種類コード及び5音音階の何れの音とも一致しないいがそれ以外のハ長調音階の音と一致するものに該当する場合にはポイントを乗算しないようにするとよい。11上記実施形態のアウフタクト生成処理では、相前後する演奏データMDRA-i及びMDRA-i1がオーバーラップ部分を有するように各演奏データMDRA-i内に含めるイベントEVON♯及びEVOFF♯とデルタタイムΔThの切り出し位置を決定した。しかし、例えば、曲演奏データSMDにおける演奏区間R-1~R-3内のイベントEVON♯、EVOFF♯、デルタタイムΔThを演奏データMDRA-1とし、演奏区間R-4~R-6内のイベントEVON♯、EVOFF♯、デルタタイムΔThを演奏データMDRA-2とし...というように、相前後する演奏データMDRA-i及びMDRA-i1がオーバーラップ部分を持たないように各演奏データMDRA-i内に含めるイベントEVON♯及びEVOFF♯とデルタタイムΔThの切り出し位置を決定してもよい。12上記実施形態では、曲演奏データSMD及びMDは、ある決まった時間長分の音の並びであるメロディにおける各音の発音内容を示すデータの配列であった。しかし、曲演奏データSMD及びMDを、ある決まった時間長分のハーモニーやリズムを決定づける音の並びにおける各音の発音内容を示すデータの配列としてもよい。13上記実施形態における第1~第4の配列処理では、処理対象である2つの演奏データMD例えば、演奏データMD5~6及びMD7~8とするについて、配列順が前の演奏データMD5~6の第1トラックTR-1における消去されずに残ったイベントEVON♯及びEVOFF♯のうち最後のイベントEVOFF♯を選択し、この選択したイベントEVOFF♯が示す音の消音時刻が基準時刻tBASISと一致するように当該イベントEVOFF♯の実行時刻tを示すデルタタイムΔThを書き換えた。しかし、配列順が前の演奏データMD5~6の第1トラックTR-1における消去されずに残ったイベントイベントEVOFF♯が示す音の消音時刻と基準時刻tBASISとの差が所定値未満になるように当該イベントEVOFF♯の実行時刻tを示すデルタタイムΔThを書き換えてもよい。要するに、第1~第4の配列処理では、配列順が前の演奏データMDに対して、当該演奏データMDの各イベントが示す各音からなる音の並びの終端を配列順が後の演奏データの各イベントが示す音の並びの中の略アウフタクトの分だけ短くする処理が実行されればよい。"