(57)【特許請求の範囲】
【請求項１】
トリル演奏区間を有する楽曲を自動演奏するための演奏データを記憶すると共に、前記トリル演奏区間の長さを表わす第１の長さデータを記憶する第１の記憶手段と、
生のトリル演奏に基づいて作成されたゆらぎ性の基準演奏データであって前記トリル演奏の進行に従って区分された複数区間の演奏データからなるものを記憶すると共に、前記複数区間のうちの各区間の長さを表わす第２の長さデータを記憶する第２の記憶手段と、
前記トリル演奏区間を前記複数区間にそれぞれ対応した複数の部分区間に区分すると共に該複数の部分区間のうちの各部分区間の長さを前記第１及び第２の長さデータに基づいて決定する区分手段であって、各部分区間の長さを決定する際には前記複数区間のうちで該部分区間に対応する区間の長さをＡとし、前記第１の長さデータにより表わされる前記トリル演奏区間の長さをＫとし、前記第２の長さデータに基づいて求められる前記複数区間の合計長さをＱとしたときＫＡ／Ｑとなるように各部分区間の長さを決定するものと、
前記複数区間のうちの各区間毎に該区間の長さを該区間に対応する部分区間の長さに一致させるように該区間の演奏データを修正する修正手段と、
前記第１の記憶手段に記憶された演奏データのうち前記トリル演奏区間の演奏データを前記修正手段で修正された前記複数区間の演奏データに従って書換える書換手段と
を備えた演奏データ作成装置。
【請求項２】
前記第１の記憶手段には前記トリル演奏区間の調を表わす第１の調データを記憶させると共に前記第２の記憶手段には前記トリル演奏に係る調を表わす第２の調データを記憶させ、前記修正手段では前記第１及び第２の調データを比較して調が不一致であれば前記第１の調データに基づいて前記複数区間の演奏データの音高を修正する請求項１記載の演奏データ作成装置。
【請求項３】
トリル演奏区間を有する楽曲を自動演奏するための演奏データを記憶すると共に、前記トリル演奏区間の長さを表わす第１の長さデータを記憶する第１の記憶手段と、生のトリル演奏に基づいて作成されたゆらぎ性の基準演奏データであって前記トリル演奏の進行に従って区分された複数区間の演奏データからなるものを記憶すると共に、前記複数区間のうちの各区間の長さを表わす第２の長さデータを記憶する第２の記憶手段とを用い、前記第１の記憶手段に記憶された演奏データを前記第２の記憶手段に記憶された基準演奏データに基づいて修正する演奏データ作成方法であって、
前記トリル演奏区間を前記複数区間にそれぞれ対応した複数の部分区間に区分すると共に該複数の部分区間のうちの各部分区間の長さを前記第１及び第２の長さデータに基づいて決定する区分ステップであって、各部分区間の長さを決定する際には前記複数区間のうちで該部分区間に対応する区間の長さをＡとし、前記第１の長さデータにより表わされる前記トリル演奏区間の長さをＫとし、前記第２の長さデータに基づいて求められる前記複数区間の合計長さをＱとしたときＫＡ／Ｑとなるように各部分区間の長さを決定するものと、
前記複数区間のうちの各区間毎に該区間の長さを該区間に対応する部分区間の長さに一致させるように該区間の演奏データを修正する修正ステップと、
前記第１の記憶手段に記憶された演奏データのうち前記トリル演奏区間の演奏データを前記修正ステップで修正された前記複数区間の演奏データに従って書換える書換ステップと
を含む演奏データ作成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、自動演奏等に用いるに好適な演奏データを作成する方法及び装置に関し、特にトリル演奏区間の演奏データを生演奏に基づいて作成された基準演奏データに従って書換えることにより表情性豊かな演奏データを簡単に作成可能としたものである。
【０００２】
【従来の技術】
従来、所望の楽曲に関するゆらぎ性の演奏データに基づいて楽譜通りの演奏データを修正してゆらぎの程度を変更した自動演奏用の演奏データを作成する方法が知られている（例えば、特開平１０−２０８５６号公報参照）。
【０００３】
【発明が解決しようとする課題】
上記した従来技術によると、ゆらぎ性の演奏データを作成可能であるものの、例えばトリル等の奏法が指示された演奏区間について前打音区間や後打音区間を付加することはできなかった。
【０００４】
この発明の目的は、前打音区間や後打音区間を付加することができる新規な演奏データ作成装置及び演奏データ作成方法を提供することにある。
【０００５】
【課題を解決するための手段】
この発明に係る演奏データ作成装置は、
トリル演奏区間を有する楽曲を自動演奏するための演奏データを記憶すると共に、前記トリル演奏区間の長さを表わす第１の長さデータを記憶する第１の記憶手段と、
生のトリル演奏に基づいて作成されたゆらぎ性の基準演奏データであって前記トリル演奏の進行に従って区分された複数区間の演奏データからなるものを記憶すると共に、前記複数区間のうちの各区間の長さを表わす第２の長さデータを記憶する第２の記憶手段と、
前記トリル演奏区間を前記複数区間にそれぞれ対応した複数の部分区間に区分すると共に該複数の部分区間のうちの各部分区間の長さを前記第１及び第２の長さデータに基づいて決定する区分手段であって、各部分区間の長さを決定する際には前記複数区間のうちで該部分区間に対応する区間の長さをＡとし、前記第１の長さデータにより表わされる前記トリル演奏区間の長さをＫとし、前記第２の長さデータに基づいて求められる前記複数区間の合計長さをＱとしたときＫＡ／Ｑとなるように各部分区間の長さを決定するものと、
前記複数区間のうちの各区間毎に該区間の長さを該区間に対応する部分区間の長さに一致させるように該区間の演奏データを修正する修正手段と、
前記第１の記憶手段に記憶された演奏データのうち前記トリル演奏区間の演奏データを前記修正手段で修正された前記複数区間の演奏データに従って書換える書換手段と
を備えたものである。
【０００６】
この発明に係る演奏データ作成装置によれば、第１の記憶手段には、トリル演奏区間を有する楽曲を自動演奏するための演奏データが記憶されると共に、トリル演奏区間の長さを表わす第１の長さデータが記憶され、第２の記憶手段には、生のトリル演奏に基づいて作成されたゆらぎ性の基準演奏データであってトリル演奏データからなるものが記憶されると共に、複数区間のうちの各区間の長さを表わす第２の長さデータが記憶される。区分手段では、トリル演奏区間が基準演奏データの複数区間にそれぞれ対応した複数の部分区間に区分されると共に、各部分区間の長さが第１及び第２の長さデータに基づいてＫＡ／Ｑとして決定される。修正手段では、複数区間のうちの各区間毎に該区間の長さを該区間に対応する部分区間の長さに一致させるように該区間の演奏データが例えばタイミング値の修正あるいはデータの削除、追加等により修正される。書換手段では、トリル演奏区間の演奏データが修正手段での修正に係る複数区間の演奏データ（基準演奏データ）に従って書換えられる。例えば、複数の区間を前打音区間、トリル本体区間及び後打音区間とすれば、トリル演奏区間の演奏データとして、前打音区間、トリル本体区間及び後打音区間からなる表情性豊かな演奏データを簡単に得ることができる。
【０００９】
【発明の実施の形態】
以下では、トリル奏法による演奏を例にとってこの発明を詳細に説明する。図１（Ａ）は、音高Ｃ４の２分音符Ｎにトリル記号Ｍを付した楽譜を示している。図１（Ａ）の楽譜は、図１（Ｂ）に示すように音高Ｃ４、Ｄ４、Ｃ４…を有する３２分音符Ｎ１、Ｎ２、Ｎ３…を１６個並べた楽譜と等価である。図１（Ｃ）は、演奏者が図１（Ａ）又は（Ｂ）の楽譜に従って実際に演奏を行なったときの演奏内容をバーグラフ形式で示したもので、横軸が拍頭タイミングＢ１、Ｂ２、Ｂ３…に従って時間を示し、縦軸がＣ４、Ｄ４等の音高を示す。黒バーＴ１、Ｔ２、Ｔ３…は、音符Ｎ１、Ｎ２、Ｎ３…にそれぞれ対応した楽音を表わし、各黒バーの縦方向の位置が音高を表わし、各黒バーの横方向の長さが音長を表わす。
【００１０】
図１（Ｃ）によれば、実際の演奏（生演奏）では、図１（Ｂ）の楽譜通りに等しい音符長で演奏されるとは限らず、発音開始タイミングや音長にばらつきがあることがわかる。また図１（Ｃ）には示されていないが、演奏音の音量にもばらつきがある。このように、生演奏では、演奏者が意識した又しないテンポのゆらぎ、音量のゆらぎ等の様々な不均一性や不安定性が生々しさや自然らしさに寄与している。
【００１１】
楽曲の自動演奏において、自然な演奏、美しい演奏、生々しい演奏を実現するために、生演奏に基づいて自動演奏用のゆらぎ性の演奏データを作成することが考えられる。しかし、楽曲毎あるいは演奏区間毎に生演奏に基づいてゆらぎ性の演奏データを作成するのは煩雑さを免れない。そこで、この発明では、図１（Ｃ）に示したような生演奏に基づいてゆらぎ性の基準演奏データを作成すると共にこの基準演奏データを図１（Ａ）に示したように奏法が指示された音符又は図１（Ｂ）に示したように奏法を表わす音符群に従って音高、演奏タイミング、区間長等を修正することにより種々の演奏区間のゆらぎ性の演奏データを簡単に作成可能としたものである。
【００１２】
図２は、この発明の一実施形態に係る表情付与装置を備えた編集機能付きの自動演奏装置の回路構成を示すもので、この自動演奏装置は、パーソナルコンピュータＰＣに音楽情報編集・再生用のソフトウェア（プログラム）をインストールすることにより構成されるものである。
【００１３】
バス１０には、ＣＰＵ（中央処理装置）１２、ＲＯＭ（リード・オンリィ・メモリ）１４、ＲＡＭ（ランダム・アクセス・メモリ）１６、検出回路１８、表示回路２０、外部記憶装置２２、タイマ２４、ＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）インターフェイス２６、通信インターフェース２８等が接続されている。
【００１４】
ＣＰＵ１２は、ＲＯＭ１４にストアされたプログラムに従って音楽情報の編集（表情付与を含む）や再生（自動演奏）のための各種処理を実行するもので、これらの処理に付いては図５〜１８を参照して後述する。
【００１５】
ＲＯＭ１４は、プログラムの他に、多数曲分の楽曲演奏データや複数の基準演奏データ（表情付与情報）が記憶されているが、これらのデータについては図３、４を参照して後述する。
【００１６】
ＲＡＭ１６は、ＣＰＵ１２による各種処理に際して利用される多数の記憶部を含むもので、この発明の実施に関係する記憶部としては、楽曲演奏データ記憶部ＭＡ、基準演奏データ記憶部ＲＡ、ライブラリ記憶部ＬＭ、作成演奏データ記憶部ＲＢ等が設けられている。
【００１７】
検出回路１８は、マウス及びキーボード３０から操作情報を検出するものである。キーボードは、文字及び数値を入力可能である。マウスやキーボードは、楽曲演奏データや基準演奏データの選択操作、奏法記号の指定操作等に用いられる。
【００１８】
表示回路２０は、陰極線管又は液晶等からなるディスプレイ３２の表示動作を制御することにより楽譜表示等の各種の表示を可能にするものである。
【００１９】
外部記憶装置２２は、ＨＤ（ハードディスク）、ＦＤ（フロッピーディスク）、ＣＤ（コンパクトディスク）、ＤＶＤ（ディジタル多目的ディスク）、ＭＯ（光磁気ディスク）等のうち１又は複数種類の記憶媒体を着脱可能なものである。記憶装置２２に所望の記憶媒体を装着した状態では、記憶媒体からＲＡＭ１６へデータを転送可能である。また、装着した記憶媒体がＨＤやＦＤのように書込可能なものであれば、ＲＡＭ１６のデータを記憶媒体に転送可能である。この実施形態では、ＲＯＭ１４の代りに記憶装置２２の記憶媒体に多数曲分の楽曲演奏データ及び複数の基準演奏データを記憶させるようにしてもよい。
【００２０】
プログラム記憶手段としては、ＲＯＭ１４の代りに記憶装置２２の記憶媒体（前述のＨＤ、ＣＤ、ＤＶＤ、ＭＯ等）を用いることができる。この場合、記憶媒体に記憶したプログラムは、記憶装置２２からＲＡＭ１６へ転送する。そしてＲＡＭ１６に記憶したプログラムに従ってＣＰＵ１２を動作させる。このようにすると、プログラムの追加やバージョンアップ等を容易に行なうことができる、記憶装置２２を通信ネットワーク３８に接続することにより、編集対象とする楽曲演奏データや基準演奏データの取得が可能になると共に、プログラムの更新も容易になる。
【００２１】
タイマ２４は、与えられるテンポデータＴＤに対応する周期でテンポクロック信号ＴＣＬとしてのクロックパルスを発生するもので、各クロックパルスは割込命令信号としてＣＰＵ１２に供給される。テンポクロック信号ＴＣＬとしてのクロックパルスが発生されるたびに割込処理を実行することにより記憶部ＭＡの楽曲演奏データに基づいて楽曲の自動演奏を行なうことができる。自動演奏のテンポは、テンポデータＴＤに応じて決定される。
【００２２】
ＭＩＤＩインターフェース２６から音源装置３４には、ノートナンバ（音高情報）、ベロシティ値（音量情報）、発音命令信号、消音命令信号等が供給される。音源装置３４は、多数（例えば６４個）の楽音発生チャンネルを有するものである。
【００２３】
記憶部ＭＡからのデータ読出しに基づいて発音要求があると、ＣＰＵ１２は、発音要求に対応する発音命令信号とノートナンバとベロシティ値とを空き状態のいずれかの楽音発生チャンネルに割当てる。割当てに係る楽音発生チャンネルからは、割当てに応じてノートナンバに対応した音高を有する楽音信号がベロシティ値に対応した音量で発生される。また、記憶部ＭＡからのデータ読出しに基づいて消音要求があると、ＣＰＵ１２は、消音要求に係るノートナンバに対応した楽音信号を発生中である楽音発生チャンネルに消音命令信号を供給して発生中の楽音信号の減衰を開始させる。音源装置３４から発生される楽音信号は、サウンドシステム３６に供給され、楽音として発音される。
【００２４】
通信インターフェース２８は、通信ネットワーク３８（例えばＬＡＮ（ローカル・エリア・ネットワーク）、インターネット、電話回線等）を介してサーバコンピュータ（図示せず）と情報通信を行なうために設けられたものである。この発明の実施に必要なプログラムや各種データは、サーバコンピュータから通信ネットワーク３８及び通信インターフェース２８を介してＲＡＭ１６又は外部記憶装置２２へダウンロード要求に応じて取込むようにしてもよい。
【００２５】
図３は、所定の楽曲に関する楽曲演奏データのフォーマットを示すものである。設定情報ＳＡとしては、曲名を表わす曲名データＳＡ１、曲の調（例えばハ調長）を表わす調データＳＡ２、曲のテンポを毎分当りの４分音符数（例えば１２０）で表わすテンポデータＳＡ３、演奏音色（例えばピアノ音色）をあらわす音色データＳＡ４、トリル演奏区間毎にトリル関連パラメータを表わすトリルデータＳＡ５等が記憶される。
【００２６】
一例として、図５（Ａ）に示すようなトリル演奏区間が楽曲中に存在した場合、トリルデータＳＡ５としては、全音符Ｎｔに付されたトリル記号Ｍｔを表わすトリル記号データＴＲ、音符Ｎｔの音高Ｃ４を表わす音高データＴＰ、音符Ｎｔの長さをテンポクロック信号ＴＣＬのクロックパルス数（カウント値）で表わす音長データＴＬ、トリル演奏の速さ（例えば高速、中速、低速のいずれか）を表わす速さデータＴＳ等が記憶される。自動演奏の際には、テンポデータＳＡ３がテンポデータＴＤとしてタイマ２４に供給されると共に、音色データＳＡ４に応じて音源装置３４にて自動演奏音の音色が設定される。
【００２７】
設定情報ＳＡの後には、楽曲の演奏進行に従ってオンイベントデータ、オフイベントデータ等の演奏データが記憶される。一例として、図５（Ａ）のトリル演奏区間については、トリル記号Ｍｔ付きの音符Ｎｔを示す楽譜を図１（Ｂ）で述べたと同様にして多数の３２分音符を示す楽譜に変換し、変換後の楽譜に従って演奏データが記憶される。すなわち、最初の音符に対応する楽音ＴＮ１については、タイミングデータＴＭ１１、ノートオンイベントデータＮＥ１１及びベロシティデータＶＬ１１を含むオンイベントデータと、タイミングデータＴＭ１２及びノートオフイベントデータＮＥ１２を含むオフイベントデータとが記憶される。２番目以降の各音符に対応する各楽音についてもＴＮ１と同様にしてオンイベントデータ及びオフイベントデータが記憶される。トリル演奏区間における最後のイベントデータとしては、最後の音符に対応した楽音ＴＮＭに関するタイミングデータＴＭＮＭ及びノートオフイベントデータＮＥＮＭを含むオフイベントデータが記憶され、このオフイベントデータの次には図５（Ａ）に示す音符ＮＮに対応した楽音ＴＮＮに関するタイミングデータＴＭＮＮ、ノートオンイベントデータＮＥＮＮ及びベロシティデータＶＬＮＮを含むオンイベントデータが記憶される。
【００２８】
ＴＭ１１、ＴＭＮＮ等の各タイミングデータは、対応する楽音の発音タイミングを表わす。ＮＥ１１、ＮＥＮＮ等の各ノートオンイベントデータは、対応する楽音の音高をノートナンバで表わす。ＶＬ１１、ＶＬＮＮ等のベロシティデータは、対応する楽音の音量をベロシティ値（例えば０〜１２７のいずれか）で表わす。ＴＭ１２、ＴＭＮＭ等の各タイミングデータは、対応する楽音の消音タイミングを表わす。ＮＥ１２、ＮＥＮＭ等の各ノートオフイベントデータは、対応する楽音の音高をノートナンバで表わす。ＴＭ１１、ＴＭ１２等の各タイミングデータは、前のイベント（前のイベントがなければ拍頭）からの時間をテンポクロック信号ＴＣＬのクロックパルス数（カウント値）で表わす。
【００２９】
図３に関して上記したトリル演奏区間の演奏データは、楽譜通りのものであるため、このような演奏データに基づいて楽曲の自動演奏を行なうと、機械的で無表情な演奏になってしまう。この発明に係る表情付与処理では、楽音ＴＮ１〜ＴＮＭを含むトリル演奏区間の演奏データを新たに作成したゆらぎ性の演奏データに従って書換えることにより表情豊かな自動演奏を可能としている。
【００３０】
図４は、所定のトリル演奏区間に対応する基準演奏データのフォーマットを示すものである。設定情報ＳＢとしては、識別データＳＢ１、調データＳＢ２、テンポデータＳＢ３、区間データＳＢ４、音高データＳＢ５、トリル速さデータＳＢ６等が記憶される。識別データＳＢ１は、この基準演奏データがトリル演奏に関するものであることを表わす。調データＳＢ２は、一例としてハ長調を表わす。テンポデータＳＢ３は、トリル演奏区間のテンポを毎分当りの４分音符数で表わす。
【００３１】
区間データＳＢ４は、トリル演奏区間の区間構成及び区間長を表わす。トリル演奏区間は、図１（Ｃ）に示したようにトリル本体区間のみからなることもあれば、図５（Ｂ）に示すように前打音区間ａ、トリル本体区間ｂ、後打音区間ｃ等の複数区間からなることもある。図５（Ｂ）は、図１（Ｃ）と同様にして所定のトリル演奏区間における生演奏状況を示すものである。図４の基準演奏データを図５（Ｂ）の生演奏に基づいて作成する場合、区間データＳＢ４は、前打音区間ａ、トリル本体区間ｂ及び後打音区間ｃを表わすと共に各区間毎に区間長をテンポクロック信号ＴＣＬのクロックパルス数（カウント値）で表わす。
【００３２】
音高データＳＢ５は、図５（Ｂ）に示すように中心音ＣＴ、上音ＵＴ及び下音ＬＴに関してそれぞれ音高を表わす。図５（Ｂ）の例では、ハ長調の音階において、中心音ＣＴの音高がＣ３とされており、上音ＵＴは、音階上で中心音ＣＴより１つ上の音Ｄ３とされ、下音ＬＴは、音階上で中心音ＣＴより１つ下の音Ｂ２とされる。このように、中心音ＣＴの音高が判明すれば、上音ＵＴ及び下音ＬＴの音高は自動的に決定できるので、音高データＢ５としては、中心音ＣＴの音高のみを表わすものを用いてもよい。
【００３３】
トリル速さデータＳＢ６は、トリル演奏区間におけるトリル演奏の速さ（例えば高速、中速、低速のいずれか）を表わす。このように基準データにトリル速さデータを含ませておくのは、楽曲の演奏テンポとは別にトリル演奏の速さを再現するためである。すなわち、実際のトリル演奏（生演奏）では、トリル演奏の速さは、曲の演奏テンポにあまり影響されず、同じ曲を異なるテンポで演奏しても、トリル演奏の速さがある程度の範囲内であまり変化しないことがわかった。そこで、この実施形態では、トリル演奏区間毎に高速、中速、低速の３通りのトリル演奏の速さの基準演奏データを用意しておき、表情を付与すべき楽曲に適合したトリル演奏速さを有する基準演奏データを選択し、選択に係る基準演奏データに基づいて楽曲演奏データのトリル演奏区間に表情を付与するようにしている。
【００３４】
基準演奏データにおいては、一部の演奏区間の演奏データのコピーを繰返すことがあるので、設定情報ＳＢとしては、コピーの繰返区間を表わすデータを記憶しておいてもよい。
【００３５】
設定情報ＳＢの後には、トリル演奏区間内の演奏進行に従ってオンイベントデータ、オフイベントデータ等の演奏データが記憶される。一例として、図５（Ｂ）のトリル演奏に関しては、最初の楽音Ｔ１１に対応するオンイベントデータＮＯ１１及びオフイベントデータＮＦ１１が記憶される。オンイベントデータ及びオフイベントデータのフォーマットは、図３で述べたと同様である。２番目以降の各楽音についてもＴ１１と同様にしてオンイベントデータ及びオフイベントデータが記憶される。トリル演奏区間の最後のイベントデータとしては、最後の楽音Ｔ２７に対応するオフイベントデータＮＦ２７が記憶される。
【００３６】
オフイベントデータＮＦ２７の後には、楽音Ｔ２７の消音タイミングからの時間（次の楽音の発音タイミング）を表わすタイミングデータＦＴＣを記憶すると共にタイミングデータＦＴＣの後に終端マークデータＦＭＣを記憶する。タイミングデータＦＴＣを付加することでトリル演奏区間に続く無音時間を再現することができる。終端マークデータＦＭＣを付加することでデータ接続時に終端確認が容易となる。
【００３７】
図５を参照して表情付与処理の概要を説明する。図３の楽曲演奏データにおいて図５（Ａ）に示すようなトリル演奏区間（図３のＴＮ１〜ＴＮＭの区間に対応）に対して表情付与を行なう場合、図５（Ｂ）に示すような生演奏に基づいて図４に示したようなゆらぎ性の基準演奏データを用意する。図５（Ｂ）の生演奏に基づく基準演奏データは、前打音区間ａ、トリル本体区間ｂ、及び後打音区間ｃの演奏データからなっている。このような基準演奏データについて音符Ｎｔに従って音高、区間長等を修正することにより図５（Ａ）のトリル演奏区間に対応したゆらぎ性の演奏データを作成する。作成した演奏データを図３の楽曲演奏データにおいてＴＮ１〜ＴＮＭの区間の演奏データとして用いることにより図５（Ａ）のトリル演奏区間への表情付与が可能となる。
【００３８】
図５（Ｃ）は、作成したゆらぎ性の演奏データを楽譜として表示したものであり、作成した演奏データが前打音区間Ｓａ、トリル本体区間Ｓｂ及び後打音区間Ｓｃの演奏データからなる様子が示されている。図５（Ｃ）では、楽譜表示のため、Ｓａ〜Ｓｃの各区間毎に音長が均一に示されているが、実際には図５（Ｂ）のａ〜ｃの各区間のように音長が不均一となっている。図５（Ｂ）の楽音Ｔ１１，Ｔ１２，Ｎ２３〜Ｎ２７は、図５（Ｃ）の音符Ｎ１１，Ｎ１２，Ｎ２３〜Ｎ２７にそれぞれ対応する。図５（Ａ）のトリル演奏区間の長さが図５（Ｂ）のａ〜ｃの合計区間長より長い場合、図５（Ｂ）のトリル本体区間ｂの演奏データをコピーして接続することによりトリル本体区間ｂより長いトリル本体区間Ｓｂを実現可能である。この場合、トリル本体区間Ｓｂには、トリル本体区間ａの楽音Ｔ１３〜Ｔ２２にそれぞれ対応する音符より多くの音符Ｎ１３〜Ｎｍが含まれることになる。
【００３９】
図６は、表情付与処理のルーチンを示すものである。音楽情報編集・再生用のプログラムにあっては、マウス及びキーボード３０における選択操作によりデータベース（ＲＯＭ１４又は記憶装置２２）から所望の楽曲演奏データを選択して記憶部ＭＡに読出し、記憶部ＭＡのデータをディスプレイ３２に表示して編集したり、記憶部ＭＡのデータに基づいて楽曲の自動演奏を行なったりすることができる。編集処理においては、記憶部ＭＡのデータに基づいてディスプレイ３２の画面上に図５（Ａ）に示すような楽譜を表示することができる。
【００４０】
ユーザは、図５（Ａ）のトリル演奏区間に対して表情付与を望むときは、マウス及びキーボード３０における選択操作により表情付与処理を選択する。このときの選択操作に応じて図６のルーチンがスタートする。ステップ４０では、マウス及びキーボード３０においてトリル記号の指定操作ありか判定する。このときの指定操作は、図５（Ａ）に示すように音符Ｎｔに付加されたトリル記号を指定する操作でもよいし、音符Ｎｔにトリル記号が付加されていないときにトリル記号を付加する操作でもよいし、音符Ｎｔにトリル記号が付加されているときにそのトリル記号を他のトリル記号に変更する操作でもよい。所定時間内にいずれかの指定操作もなされなければステップ４０の判定結果が否定的（Ｎ）となり、編集処理にリターンする。
【００４１】
ステップ４０の判定結果が肯定的（Ｙ）であったときは、ステップ４２で図７の準備処理を実行する。この準備処理では、記憶部ＭＡの楽曲演奏データ（選択曲）に対応するトリル演奏速さを有する基準演奏データ（図４に示したようなフォーマットを有するデータ）がデータベースから記憶部ＲＡに読出される。
【００４２】
次に、ステップ４４では、記憶部ＲＡの区間データＳＢ４を参照して基準演奏データに前打音区間ａありか判定する。この判定の結果が肯定的（Ｙ）であれば、ステップ４６で図８の前打音区間処理を実行する。この前打音区間処理では、基準演奏データに基づいて図５（Ｃ）の前打音区間Ｓａの演奏データが作成され、記憶部ＲＢに書込まれる。
【００４３】
ステップ４４の判定結果が否定的（Ｎ）であったとき又はステップ４６の処理が終わったときは、ステップ４８で図１０のトリル本体区間処理を実行する。このトリル本体区間処理では、基準演奏データに基づいて図５（Ｃ）のトリル本体区間Ｓｂの演奏データが作成され、記憶部ＲＢに書込まれる。
【００４４】
次に、ステップ５０では、記憶部ＲＡの区間データＳＢ４を参照して基準演奏データに後打音区間ｃありか判定する。この判定の結果が肯定的（Ｙ）であれば、ステップ５２で図１１の後打音区間処理を実行する。この後打音区間処理では、基準演奏データに基づいて図５（Ｃ）の後打音区間Ｓｃの演奏データが作成され、記憶部ＲＢに書込まれる。
【００４５】
ステップ５０の判定結果が否定的（Ｎ）であったとき又はステップ５２の処理が終わったときは、ステップ５４に移る。ステップ４６、４８、５２で作成されたゆらぎ性の演奏データは、記憶部ＲＢにストアされており、ステップ５４では、記憶部ＲＢの演奏データ中のベロシティ値（音量情報）を修正する。すなわち、生演奏に基づく演奏データ中のベロシティ値は、自動演奏で求められるベロシティ値と必ずしも一致しないので、トリル演奏区間の先頭音のベロシティ値（図３のＶＬ１１に対応）に従って記憶部ＲＢの演奏データ中のベロシティ値を修正する。トリル演奏区間の先頭音のベロシティ値は、図５（Ａ）の音符Ｎｔに関して表示される。
【００４６】
ベロシティ値修正処理では、音符Ｎｔに関して表示されたベロシティ値（図３のＶＬ１１に対応）と記憶部ＲＢの演奏データ中の先頭音のベロシティ値との差を求めた後、記憶部ＲＢの演奏データ中の先頭音のベロシティ値を音符Ｎｔに関して表示されたベロシティ値に修正する。そして、記憶部ＲＢの演奏データ中の２番目以降の各音のベロシティ値を先に求めたベロシティ値の差に応じて加減算処理により修正する。この結果、記憶部ＲＢの演奏データ中の先頭音の音量がベロシティ値にして「２０」増大（又は減少）したのであれば、該先頭音に続く２番目以降の各音の音量もベロシティ値にして「２０」増大（又は減少）することになり、しかも記憶部ＲＢの演奏データにあっては生演奏時のトリル演奏音の音量のばらつき状態が維持される。
【００４７】
次に、ステップ５６では、記憶部ＲＢのゆらぎ性の演奏データに従って記憶部ＭＡのトリル演奏区間の演奏データ（図３のＴＮ１〜ＴＮＭのデータに対応）を書換える。この書換処理については図１４を参照して後述する。ステップ５６の後、編集処理にリターンする。
【００４８】
図７は、準備処理のサブルーチンを示すものである。ステップ６０では、記憶部ＭＡの楽曲演奏データ（選択曲）中の速さデータ（図３のＴＳに対応）と基準演奏データ中のトリル速さデータ（図４のＳＢ６に対応）とを比較することにより選択曲に対応するトリル演奏速さを有する基準演奏データをデータベースから選択して記憶部ＲＡに読出す。この場合、ユーザが調、テンポ、トリル演奏区間の区間構成及び区間長等の条件を指示し、その条件に適合した基準演奏データを選択して読出すようにしてもよい。また、ユーザがトリル演奏速さを指示したときは、指示に係るトリル演奏速さの基準演奏データを選択して読出すようにしてもよい。さらに、選択可能ないくつかの基準データをディスプレイ３２の画面に表示し、表示データ中からユーザが選択した基準演奏データを読出すようにしてもよい。
【００４９】
次に、ステップ６２では、記憶部ＭＡの調データＳＡ２が示す調と記憶部ＲＡの調データＳＢ２が示す調とが一致し且つ記憶部ＭＡの音高データＴＰが示す音高（図５（Ａ）の音符Ｎｔの音高に対応）と記憶部ＲＡの音高データＳＢ５が示す中心音ＣＴの音高とが一致するか判定する。この判定の結果が否定的（Ｎ）であれば、ステップ６４で調データＳＡ２及び音高データＴＰに応じて記憶部ＲＡの演奏データ中のノートナンバ（音高情報）を修正する。
【００５０】
一例として、調データＳＡ２がハ長調を示すと共に音高データＴＰが図５（Ａ）の音符Ｎｔの音高Ｃ４を示し、調データＳＢ２がハ長調を示すものとする。ノートナンバ修正処理では、記憶部ＲＡの演奏データにおいて中心音ＣＴの音高を音符Ｎｔに従ってＣ４に修正すると共に上音ＵＴ及び下音ＬＴの音高をそれぞれＤ４及びＢ３に修正する。このときの音高修正は、図５（Ｂ）に示す音高状態を図５（Ｃ）に示す音高状態に変更したものに相当する。
【００５１】
他の例として、図１５（Ａ）に示すようにトリル記号Ｍｔが付された音符Ｎｔの音高がＡ３であったときは、記憶部ＲＡの演奏データにおいて中心音ＣＴの音高はＡ３に修正され、上音ＵＴ及び下音ＬＴの音高はそれぞれＢ３及びＧ３に修正される。更に他の例として、図１５（Ｂ）に示すようにトリル記号に臨時記号としてフラットが付されたときは、上音ＵＴの音高を半音下げてＢｂ３とすればよい。
【００５２】
図１５（Ａ）の場合において、音符Ｎｔに臨時記号としてフラットが付されることがあり、音高はＡｂ３となる。この場合、中心音ＣＴの音高はＡｂ３に修正され、上音ＵＴ及び下音ＬＴの音高はそれぞれＢ３及びＧ３に修正される。また、音符ＮｔをＡ３からＧ３に変更すると共にＧ３の音符に臨時記号としてシャープを付した場合、音高はＧ＃３となる。この場合、中心音ＣＴの音高はＧ＃３に修正され、上音ＵＴ及び下音ＬＴの音高はそれぞれＡ３及びＦ３に修正される。Ａｂ３とＧ＃３とは、中心音ＣＴとしては同一音高であるが、上音ＵＴ及び下音ＬＴのいずれについても異なる音高を生ずる（ＵＴについてはＢ３とＡ３であり、ＬＴについてはＧ３とＦ３である）。従って、音高修正の際には、トリル記号に付された臨時記号のみならず、トリル対象音符に付された臨時記号も考慮して音高を決定する必要がある。
【００５３】
上記した例では、調データＳＡ２、ＳＢ２がいずれもハ長調で同一であるため、比較的簡単に音高修正を行なうことができる。しかし、調によっては簡単に音高修正を行なえないこともある。そこで、基準演奏データをすべてハ長調のデータとしてデータベースに記憶しておくと共に調毎にハ長調からの音高変換テーブルをＲＯＭ１４等の記憶手段に記憶しておき、例えばト長調の楽曲演奏データについてはハ長調からト長調への音高変換テーブルを参照して音高修正を行なうようにしてもよい。このようにすると、基準演奏データの記憶量を低減することができる。別の方策としては、調毎に基準演奏データを記憶しておき、調データＳＡ２の示す調と同一の調の基準演奏データを読出すようにしてもよい。この場合、音高変換テーブルを省略することができる。
【００５４】
ステップ６２の判定結果が肯定的（Ｙ）であったとき又はステップ６４の処理が終わったときは、ステップ６６で記憶部ＲＡの区間データＳＢ４を参照して基準演奏データに前打音区間ａありか判定する。この判定の結果が肯定的（Ｙ）であれば、ステップ６８で記憶部ＭＡの音長データＴＬと記憶部ＲＡの区間データＳＢ４とに応じて前打音区間Ｓａの区間長を決定し、記憶部ＬＭの記憶領域Ｌａにセットする。
【００５５】
一例として、音長データＴＬが図５（Ａ）に示すように全音符の長さを表わすと共に区間データＳＢ４が図５（Ｂ）に示すように前打音区間ａ、トリル本体区間ｂ及び後打音区間ｃを表わすものとする。ａ〜ｃの合計区間長Ｓに占める区間ａの長さＱａの割合は、Ｑａ／Ｓとなり、Ｓ及びＱａは、区間データＳＢ４から求められる。全音符の長さをＫとすると、前打音区間Ｓａの区間長は、Ｋ×Ｑａ／Ｓとなる。このようにして求めた前打音区間Ｓａの区間長を記憶領域Ｌａにセットする。
【００５６】
ステップ６６の判定結果が否定的（Ｎ）であったとき又はステップ６８の処理が終わったときは、ステップ７０で記憶部ＭＡの音長データＴＬと記憶部ＲＡの区間データＳＢ４とに応じてトリル本体区間Ｓｂの区間長を決定し、記憶部ＬＭの記憶領域Ｌｂにセットする。ステップ６８に関して前述した例では、トリル本体区間ｂの長さをＱｂとすると、トリル本体区間Ｓｂの区間長は、Ｋ×Ｑｂ／Ｓとなる。
【００５７】
次に、ステップ７２では、記憶部ＲＡの区間データＳＢ４を参照して基準演奏データに後打音区間ｃありか判定する。この判定の結果が肯定的（Ｙ）であれば、ステップ７４で記憶部ＭＡの音長データＴＬと記憶部ＲＡの区間データＳＢ４とに応じて後打音区間Ｓｃの区間長を決定し、記憶部ＬＭの記憶領域Ｌｃにセットする。ステップ６８に関して前述した例では、後打音区間ｃの長さをＱｃとすると、後打音区間Ｓｃの区間長は、Ｋ×Ｑｃ／Ｓとなる。
【００５８】
ステップ７２の判定結果が否定的（Ｎ）であったとき又はステップ７４の処理が終わったときは、ステップ７６に移り、記憶部ＲＡの前打音区間ａ、トリル本体区間ｂ及び後打音区間ｃの演奏データを読出して記憶部ＬＭの記憶領域Ｌａ、Ｌｂ及びＬｃにそれぞれ書込む。この後、図６のルーチンにリターンする。
【００５９】
図１２は、ステップ７６により記憶部ＬＭに演奏データを書込んだ状態を図１（Ｃ）と同様にして示すものである。記憶部ＬＭにおいて、記憶領域Ｌａには、前打音区間ａの楽音Ｔ１１、Ｔ１２の演奏データが書込まれ、記憶領域Ｌｂには、トリル本体区間ｂの楽音Ｔ１３、Ｔ１４〜Ｔ２２の演奏データが書込まれ、記憶領域Ｌｃには、後打音区間ｃの楽音Ｔ２３〜Ｔ２７の演奏データが書込まれる。図７のステップ６４で音高を修正したので、図１２に示される楽音Ｔ１１〜Ｔ２７の音高は、図５（Ｂ）に示したものとは異なり、図５（Ｃ）に示したものとなっている。
【００６０】
図８は、前打音区間処理のサブルーチンを示すものである。ステップ８０では、記憶領域Ｌａの演奏データ中のタイミング値に基づいて区間長を求め、求めた区間長が先に記憶領域Ｌａにセットされている前打音区間Ｓａの区間長と一致するか判定する。この判定の結果が否定的（Ｎ）であれば、ステップ８２に移り、一致が得られるように記憶領域Ｌａの演奏データのタイミング値を修正する。例えば、求めた区間長が前打音区間Ｓａの区間長より短い（又は長い）場合には、両者が一致するようにタイミング値を大きく（又は小さく）修正する。この修正の例を図１３（Ａ）に示す。楽音Ｔｎ１、Ｔｎ２は、それぞれＴ１１，Ｔ１２に対応し、Ｋは、図５（Ａ）の全音符Ｎｔの長さ（トリル演奏区間長）を表わす。
【００６１】
ステップ８０の判定結果が肯定的（Ｙ）であったとき又はステップ８２の処理が終わったときは、ステップ８４に移り、記憶領域Ｌａの演奏データを記憶部ＲＢに転送する。この後、図６のルーチンにリターンする。
【００６２】
ステップ８２の処理においては、図９に示すように前打音区間Ｓａの最後のデータとして、楽音Ｔ１２のオフイベントデータＮＦ１２の次のタイミングデータＦＴａ及び終端マークデータＦＭａを付加してもよい。タイミングデータＦＴａは、楽音Ｔ１２の消音タイミングからの無音時間を表わすもので、トリル本体区間Ｓｂの最初の楽音Ｔ１３のオンイベントデータにおいてタイミングデータＴＭｂ（発音タイミングを表わすもの）として用いることができる。このようにすると、楽音Ｔ１２の消音タイミングの後タイミングデータＦＴａ（ＴＭｂ）の示す無音時間を経て楽音Ｔ１３が発音開始されることになる。なお、終端マークデータＦＭａは、終端確認用であり、記憶部ＲＢにおいてタイミングデータＦＴａをタイミングデータＴＭｂの代りとして楽音Ｔ１２のオフイベントデータＮＦ１２に楽音Ｔ１３のオンイベントデータを接続した後で削除される。
【００６３】
図１０は、トリル本体区間処理のサブルーチンを示すものである。ステップ９０では、記憶部ＲＡの区間データＳＢ４を参照して基準演奏データに前打音区間ａありか判定する。この判定の結果が肯定的（Ｙ）であれば、ステップ９２に移る。
【００６４】
ステップ９２では、記憶領域Ｌａの演奏データ中の最後のノートナンバと記憶領域Ｌｂの演奏データ中の最初のノートナンバとを比較し、一致していれば異なるようにＬａの最初のノートナンバを決定する。これは、前打音区間Ｓａの最後の音とトリル本体区間Ｓｂの最初の音とで音高を異ならせるためである。具体的には、Ｌａの最後のノートナンバとＬｂの最初のノートナンバとを比較して一致したときは、Ｌｂの最初の音に対応するオンイベントデータ及びオフイベントデータを削除し、２番目の音に対応する演奏データをＬｂの最初の演奏データとすればよい。図１２に示した例のようにＬａの最後の音の音高（Ｃ４）とＬｂの最初の音の音高（Ｄ４）とが異なるときは、音高決定処理が不要である。
【００６５】
ステップ９２の音高決定処理としては、例えば図１６（Ａ）に示すようなトリル記号Ｍｔ及び音符Ｎｔに関して図１６（Ｂ）に示すような下からトリル方式の演奏データ及び図１６（Ｃ）に示すような上からトリル方式の演奏データ（トリル演奏の速さが同じで向きのみ異なる２つの演奏データ）を１対のデータとして扱い、一方の演奏データについてＬａの最後のノートイベントと一致するＬｂの最初のノートイベントが検出されたときは、一方の演奏データの代りに他方の演奏データを用いるようにしてもよい。
【００６６】
ステップ９０の判定結果が否定的（Ｎ）であったときは又はステップ９２の処理が終わったときは、ステップ９４に移り、記憶領域Ｌｂの演奏データ中のタイミング値に基づいて区間長を求め、求めた区間長が先に記憶領域Ｌｂにセットされているトリル本体区間Ｓｂの区間長と一致するか判定する。この判定結果が否定的（Ｎ）であれば、ステップ９６に移る。
【００６７】
ステップ９６では、トリル本体区間Ｓｂに対応して記憶領域Ｌｂの演奏データを一部削除するか又はコピーし、接続する。Ｌｂの演奏データの一部を削除するのは、トリル本体区間Ｓｂの区間長に比べてＬｂの演奏データから求めた区間長が長い場合である。また、Ｌｂの演奏データをコピーして接続するのは、トリル本体区間Ｓｂの区間長に比べてＬｂの演奏データから求めた区間長が短い場合であり、この場合の処理結果を図１３（Ｂ）に示す。図１３（Ｂ）において、ＲＰがコピーして接続した区間を示し、図１２に示す記憶領域Ｌｂにおいて楽音Ｔ１３〜Ｔ２２の演奏データをコピーしてＴ２２の演奏データに接続し、更にＴ１３から４分音の演奏データをコピーして先にコピーしたＴ２２の演奏データに接続した例が示されている。楽音Ｔｎ３、Ｔｎ４…は、それぞれＴ１３、Ｔ１４…に対応する。
【００６８】
ステップ９６の処理では、記憶領域Ｌｃを参照して最初の音Ｔ２３の音高を求め、求めた音高と異なる音高の音がトリル本体区間Ｓｂの最後の音となるように処理を行なう。このようにした場合、図１３（Ｂ）に示す楽音Ｔｍのようにトリル本体区間Ｓｂから後打音区間Ｓｃに跨る音が生ずることがある。
【００６９】
次に、ステップ９８では、後打音区間Ｓｃに跨る音ありか判定する。この判定の結果が肯定的（Ｙ）であれば、ステップ１００でＬｂの演奏データに基づく区間長がトリル本体区間Ｓｂの区間長に一致するようにＬｂの演奏データ中のタイミング値を修正する。この修正の例を図１３（Ｃ）に示す。図１３（Ｃ）には、楽音Ｔｍの消音タイミングがトリル本体区間Ｓｂ内に入っている様子（時間が圧縮された様子）が示されている。なお、ステップ１００の処理では、図９に関して前述したと同様に無音時間に対応するタイミングデータ及び終端マークデータ
を付加してもよい。
【００７０】
ステップ１００の処理によると、トリル演奏の速さは、時間圧縮の結果として図１２のＬｂの演奏データに比べてわずかに速くなる。トリル演奏の速さを所望のものからわずかに速くした場合と、わずかに遅くした場合とを比較すると、速くした場合の方が聴感上全く気にならないことが判明しているので、ステップ１００の処理でトリル演奏の速さをわずかに速くしても実際上不都合は生じない。
【００７１】
ステップ９４の判定結果が肯定的（Ｙ）であったとき、ステップ９８の判定結果が否定的（Ｎ）であったとき又はステップ１００の処理が終わったときは、ステップ１０２に移り、記憶領域Ｌｂの演奏データを記憶部ＲＢに転送する。このとき、図９に関して前述したように前打音区間Ｓａの演奏データにトリル本体区間Ｓｂの演奏データを接続する。この後、図６のルーチンにリターンする。
【００７２】
図１１は、後打音区間処理のサブルーチンを示すものである。ステップ１１０では、記憶領域Ｌｃの演奏データ中のタイミング値に基づいて区間長を求め、求めた区間長が先に記憶領域Ｌｃにセットされている後打音区間Ｓｃの区間長と一致するか判定する。この判定の結果が否定的（Ｎ）であれば、ステップ１１２に移り、一致が得られるように記憶領域Ｌｃのタイミング値をステップ８２で述べたと同様にして修正する。この修正の例を図１３（Ｃ）に示す。楽音Ｔｎｃ〜Ｔｎｍは、それぞれＴ２３〜Ｔ２７に対応する。
【００７３】
ステップ１１０の判定結果が肯定的（Ｙ）であったとき又はステップ１１２の処理が終わったときは、ステップ１１４に移り、記憶領域Ｌｃの演奏データを記憶部ＲＢに転送する。このとき、後打音区間Ｓｃの演奏データは、トリル本体区間Ｓｂの演奏データに接続される。
【００７４】
上記した図７〜１１の処理によれば、記憶部ＲＢには、図１４に示すように楽音Ｔｎ１〜Ｔｎｍに対応した演奏データが書込まれる。図５（Ｃ）は、図１４のＴｎ１〜Ｔｎｍの演奏データを楽譜表示したもので、Ｎ１１，Ｎ１２はＴｎ１，Ｔｎ２に、Ｎ１３，Ｎ１４〜ＮｍはＴｎ３，Ｔｎ４〜Ｔｍに、Ｎ２３〜Ｎ２７はＴｎｃ〜Ｔｎｍにそれぞれ対応する。図４で述べたように基準演奏データにタイミングデータＦＴｃ及び終端マークデータＦＭｃを付加した場合には、これらのデータも記憶部ＲＢに書込まれる。
【００７５】
図６のステップ５６では、記憶部ＭＡの楽曲演奏データのうちトリル演奏区間の演奏データが図１４に示すようにして書換えられる。すなわち、楽音ＴＮ１のタイミングデータＴＭ１１は、直前の楽音の消音タイミングから拍頭までの時間を表わし、楽音Ｔｎ１のタイミングデータＴＭａは、拍頭からの時間を表わすものとすると、ＴＭ１１のタイミング値にＴＭａのタイミング値を加算したものを、ＴＭ１１の新たなタイミング値とする。また、ＴＮ１のノートオンイベントデータから楽音ＴＮＭのノートオフイベントデータまでのデータをＴｎ１のノートオンイベントデータから楽音Ｔｎｍのノートオフイベントデータまでのデータに従って書換える。さらに、ＴＮＭの次の楽音ＴＮＮのタイミングデータをタイミングデータＦＴｃに従って書換える。このようにすると、トリル演奏区間最後の無音時間を自動演奏に反映させることができる。終端マークデータＦＭｃは、記憶部ＭＡに書込まず、削除する。
【００７６】
上記した実施形態では、記憶部ＭＡの楽曲演奏データ中のテンポデータＳＡ３と記憶部ＲＡの基準演奏データ中のテンポデータＳＢ３とを考慮しなかった。これは、テンポの違いはトリル演奏の回数で吸収する方が自然であるとの考えに基づくものである。しかし、テンポデータＳＡ３、ＳＢ３を考慮するようにしてもよい。例えば図７の処理において、ステップ７６の次のステップ（図示せず）で図１２のＬａ〜Ｌｃの演奏データ中のタイミング値をテンポの違いを反映するように修正する。すなわち、テンポデータＳＡ３、ＳＢ３の指示するテンポ値をそれぞれＴａ、Ｔｂとした場合、テンポデータＳＡ３、ＳＢ３を比較し、ＳＡ３の方が速ければテンポ値の比Ｔｂ／Ｔａに従ってＬａ〜Ｌｃのタイミング値を小さくするように修正し、ＳＡ３の方が遅ければテンポ値の比Ｔｂ／Ｔａに従ってＬａ〜Ｌｃのタイミング値を大きくするように修正する。例えば、Ｔｂ／Ｔａ＝１２０／１６０＝３／４であれば、Ｌａ〜Ｌｃの各タイミング値に３／４を乗算して時間を圧縮し、逆にＴｂ／Ｔａ＝４／３であれば時間を伸長する。このようなタイミング値修正処理は、Ｌｂの演奏データ（トリル本体区間ｂの演奏データ）だけに施すようにしてもよい。
【００７７】
上記した実施形態では、基準演奏データに前打音区間や後打音区間を設けておかなかったときは、トリル本体区間のみの処理となる（図６参照）。たとえば、マウス及びキーボード３０から前打音区間や後打音区間の情報を入力することにより前打音区間処理や後打音区間処理を可能としてもよい。また、中心音ＣＴの音高を指示する音高データＳＢ５が基準演奏データにない場合は、最も出現頻度の高い音高を中心音の音高として決定するようにしてもよい。この場合、出現する音高の中で中心音の音高より１つ上の音高を上音とすると共に、中心音の音高より１つ下の音高を下音とする。
【００７８】
図１０のステップ９６の処理において、Ｓｂの区間長に対応してＬｂの演奏データを一部削除した結果、トリル演奏が１度も入らないことになったときは、１往復のトリル演奏を時間圧縮して加入すればよい。
【００７９】
図６のステップ４０に関しては、図１７に例示するようにトリル記号にシャープ、フラット等の臨時記号をマウス及びキーボード３０での操作により付すことができる。ユーザの便宜のためには、図１７に例示したような種々の臨時記号付きのトリル記号をディスプレイ３２の画面に一覧表示し、ユーザが任意の臨時記号付きトリル記号を選択して所望の音符に付加するようにしてもよい。
【００８０】
次に、図１８を参照してプラルトリラー（上方回音）に関するゆらぎ性演奏データ作成処理を説明する。図１８（Ａ）に示すようなプラルトリラー記号Ｍｐを有する音符Ｎｐについてゆらぎ性の演奏データを作成する場合、図１８（Ｂ）に示すようなプラルトリラーの生演奏に基づいて基準演奏データを用意する。図１８（Ｂ）は、図１（Ｃ）と同様にして生演奏状況を示すもので、この例では、中心音ＣＴとしての音Ｔ３１を演奏した後上音ＵＴとしての音Ｔ３２を演奏し、更に中心音ＣＴとしての音Ｔ３３（音Ｔ３１と同一音高の音）を伸ばして演奏している。
【００８１】
用意した基準演奏データについて音符Ｎｐに従って音高、区間長等を修正することにより音符Ｎｐに対応し且つ修正された基準演奏データからなるゆらぎ性の演奏データを作成する。図１８（Ｃ）は、作成された演奏データを楽譜として表示したものである。音符Ｎ３１、Ｎ３２、Ｎ３３にそれぞれ対応する楽音は、音Ｔ３１、Ｔ３２，Ｔ３３にそれぞれ対応する生々しさを有する。音符Ｎｐに従って音高、区間長等を修正する処理としては、トリル演奏に関して前述した処理のうちから適当なものを採用することができる。区間長修正処理としては、図１０のステップ９６ではなくステップ１００のようなタイミング値修正処理を用いるとよい。
【００８２】
モルデント（下方回音）は、図１８（Ｂ）において、上音ＵＴの代りに下音ＬＴを演奏する点がプラルリトラーと異なるだけであるから、図１８に関して上記したと同様にモルデントに関するゆらぎ性の演奏データを作成することができる。
【００８３】
この発明は、上記した実施形態に限定されるものではなく、種々の改変形態で実施可能なものである。例えば次のような変更が可能である。
【００８４】
（１）基準演奏データに設ける区間の数は３つに限らず、２つでも、３つ以上でもよい。また、本体区間を複数に分けて処理するようにしてもよい。
【００８５】
（２）演奏データは、複数パートからなる構成にしてもよい。また、基準演奏データとしても、複数パートにそれぞれ対応するものを用意してもよい。例えば、メロディパートのほかに和音等の伴奏パートを設け、伴奏パートの基準演奏データとしては、本体区間に前打音区間や後打音区間を付加したものを用意してもよい。
【００８６】
（３）基準演奏データとしては、予めファクトリセットで用意したものに限らず、ユーザが作成したもの、通信ネットワークから取得したものなどを利用してもよい。
【００８７】
（４）基準演奏データとしては、種々の臨時記号を有するトリル演奏区間にそれぞれ対応したものを用意しておき、臨時記号付きのトリル記号の指定操作に応答して該臨時記号付きトリル記号に対応したトリル演奏区間の基準演奏データを自動的に選択するようにしてもよい。
【００８８】
（５）基準演奏データにおける音高指定は、例えば中心音等の基準音からの音程を指示することで行なうようにしてもよい。
【００８９】
（６）前打音区間や後打音区間については基準演奏データの前打音区間や後打音区間の演奏タイミング情報を修正せずにそのまま用い、トリル本体区間についてだけ基準演奏データのトリル本体区間の長さを調整するようにしてもよい。
【００９０】
（７）表情付与処理は、楽曲演奏データ中からトリル演奏区間等の被処理区間を自動検出して行なうようにしてもよい。
【００９１】
（８）この発明は、トリル、プラルトリラー、モルデントに限らず、装飾音符、アルペジオ、シェイク、ターン、ベンド、グリッサンド等の装飾音について自然感のある演奏データを作成する際に利用可能である。
【００９２】
（９）音量設定のための演算処理としては、加減算処理に限らず、乗除算処理を用いるようにしてもよい。但し、１箇所の処理において、加減算処理と乗除算処理とを併用しない方がよい。
【００９３】
（１０）記憶部ＭＡの演奏データは、記憶装置２２の記憶媒体に転送し、他  の機会に本演奏装置又は他の演奏装置で該記憶媒体の演奏データに基づいて自動演奏を行うようにしてもよい。
【００９４】
（１１）演奏データのフォーマットは、イベントの発生時刻を１つ前のイベントからの相対時間で表わす「イベント＋相対時間」方式に限らず、イベントの発生時刻を曲や小節内の絶対時間で表わす「イベント＋絶対時間」方式、音符の音高と音符長及び休符と休符長で曲の内容を表わす「音高（休符）＋符長」方式、イベント発生の最小時間単位毎に記憶領域を確保し、イベントの発生時刻に対応する記憶領域にイベントを記憶する方式等の任意の方式を用いることができる。
【００９５】
（１２）この発明は、パーソナルコンピュータにアプリケーションソフトウェアをインストールする形態に限らず、処理装置、記憶装置、音源装置等を別体装置として備え、これらの装置をＭＩＤＩインターフェース又は通信ネットワーク等の通信手段で接続する形態、あるいは音源装置、自動演奏装置等を内蔵した電子楽器の形態でも実施可能である。
【００９６】
【発明の効果】
以上のように、この発明によれば、生のトリル演奏に基づいて作成されたゆらぎ性の基準演奏データの複数区間にそれぞれ対応して楽曲演奏用の演奏データのトリル演奏区間を複数の部分区間に区分すると共に各部分区間の長さを前述したＫＱ／Ｓとなるように決定し、複数区間のうちの各区間毎に該区間の長さを該区間に対応する部分区間の長さに一致させるように該区間の演奏データを修正し、トリル演奏区間の演奏データを修正に係る複数区間の基準演奏データに従って書換えるようにしたので、本体区間に前打音区間や後打音区間を付加するなどして変化に富んだ表情性豊かな演奏データを簡単に作成できる効果が得られる。
【図面の簡単な説明】
【図１】トリル記号付き音符に基づく楽譜通りの演奏及び生演奏を示す図である。
【図２】この発明の一実施形態に係る表情付与装置を備えた自動演奏装置を示すブロック図である。
【図３】楽曲演奏データのフォーマットを示す図である。
【図４】基準演奏データのフォーマットを示す図である。
【図５】表情付与処理の概要を説明するための図である。
【図６】表情付与処理を示すフローチャートである。
【図７】準備処理のサブルーチンを示すフローチャートである。
【図８】前打音区間処理のサブルーチンを示すフローチャートである。
【図９】前打音区間及びトリル本体区間の演奏データ接続状況を示す図である。
【図１０】トリル本体区間処理のサブルーチンを示すフローチャートである。
【図１１】後打音区間処理のサブルーチンを示すフローチャートである。
【図１２】記憶部ＬＭにおける記憶状況を示す図である。
【図１３】前打音区間、トリル本体区間及び後打音区間の演奏データ作成状況を示す図である。
【図１４】記憶部ＲＢの演奏データに従って記憶部ＭＡの演奏データ中のトリル演奏区間の演奏データを書換える様子を示す図である。
【図１５】トリル記号付き音符を例示する図である。
【図１６】トリル記号付き音符に基づく２通りのトリル演奏を示す図である。
【図１７】臨時記号付きトリル記号を例示する図である。
【図１８】プラルトリラーに関する演奏データ作成処理を説明するための図である。
【符号の説明】
１０：バス、１２：ＣＰＵ、１４：ＲＯＭ、１６：ＲＡＭ、１８：検出回路、２０：表示回路、２２：外部記憶装置、２４：タイマ、２６：ＭＩＤＩインターフェイス、２８：通信インターフェイス、３０：マウス及びキーボード、３２：ディスプレイ、３４：音源装置、３６：サウンドシステム、３８：通信ネットワーク。
【図１】
0003632551.tif 000002
【図２】
0003632551.tif 000003
【図３】
0003632551.tif 000004
【図４】
0003632551.tif 000005
【図５】
0003632551.tif 000006
【図６】
0003632551.tif 000007
【図７】
0003632551.tif 000008
【図８】
0003632551.tif 000009
【図９】
0003632551.tif 000010
【図１０】
0003632551.tif 000011
【図１１】
0003632551.tif 000012
【図１２】
0003632551.tif 000013
【図１３】
0003632551.tif 000014
【図１４】
0003632551.tif 000015
【図１５】
0003632551.tif 000016
【図１６】
0003632551.tif 000017
【図１７】
0003632551.tif 000018
【図１８】
0003632551.tif 000019