(57)【特許請求の範囲】
【請求項１】
演奏データを記憶する記憶手段と、
前記演奏データの中で、同時発音数が３音以上となる発音タイミングを検出する検出手段と、
前記検出される同時発音数が３音以上となる発音タイミングに発音開始される３音以上に含まれる一部の音の発音タイミングを演奏データの修正を行うための修正情報に基づき修正する修正手段と
を有する情報修正装置。
【請求項２】
さらに、前記修正用情報を記録するメモリと、
前記３音以上の音の音数に応じて、前記修正用情報を選択する選択手段と
を有し、
前記修正手段は、前記選択手段が選択した修正用情報に基づき、修正を行う請求項１記載の情報修正装置。
【請求項３】
前記修正手段は、一部の音の発音タイミングを、残りの音の発音期間と一致しないように修正する請求項１又は２記載の情報修正装置。
【請求項４】
記憶手段に記憶された演奏データの中で、同時発音数が３音以上となる発音タイミングを検出する検出手順と、
前記検出される同時発音数が３音以上となる発音タイミングに発音開始される３音以上に含まれる一部の音の発音タイミングを演奏データの修正を行うための修正情報に基づき修正する修正手順と
を有する情報処理をコンピュータに実行させるためのプログラムを記録した媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報修正装置に関し、特に演奏データを修正することができる演奏データ修正装置に関する。
【０００２】
【従来の技術】
図９は、演奏データの形式を示すダイアグラムである。
【０００３】
演奏データＳＤは、１曲分の自動演奏データであり、初期設定情報を含むトラック１〜トラックｎの演奏データを有する。演奏データＳＤがスタンダードＭＩＤＩファイルの形式で記録されている場合、初期設定情報及び実演奏データは、ＭＩＤＩデータの形式を用いて表現される。演奏データＳＤ（ＭＩＤＩデータ）は、各楽音の発生、に関するタイミングデータ、及び各楽音の音高データ、音価データ、発音長データ等を含む音符イベントを含み、さらに、音色や効果等の引き続く楽音に対する演奏環境の設定を行うための設定データ等を有する。
【０００４】
演奏データＳＤの先頭の部分に、初期設定情報を置くことが多い。初期設定情報は、その曲を演奏するために予め設定しておく設定データであり、例えば自動演奏開始時点の音色イベント、拍子情報等を含み、また、音量、効果等を設定する。
【０００５】
ひとつのトラックには、大きく分けて、上記の初期設定情報とその後に続く実演奏データがある。実演奏データは、初期設定情報以外の演奏情報（パラメータ）であり、例えば、曲の最初に出現するタイミングＴＡ以後のデータである。
【０００６】
ＭＩＤＩデータを修正するための、ＭＩＤＩデータの表示方法としては、「楽譜表示」、「数値表示」、「ピアノロール表示」の３つの方法がよく知られている。
【０００７】
楽譜表示とは、ＭＩＤＩデータを楽譜の形式で表示するもので、これにより修正する場合は、例えば、マウスの操作により、五線譜の上に、音符や記号を置いたり、その位置を動かしたり、削除したりして行う。
【０００８】
実演奏データの楽譜表示を行うためのデータとして、楽譜データがある。楽譜データは、調や拍子等を画面の五線上に表示するための情報、及び表示する楽譜に対応する実演奏データを識別するための情報等が記憶されている。それに続いて、実演奏データの各タイミングデータに対応するように、位置データが記憶され、各タイミングのイベントに対応する音符や音楽記号を表示するための情報が記憶されている。
【０００９】
本明細書において演奏データとは、楽譜データを含む自動演奏用データである。なお、演奏データに対応する楽譜データがない場合は、演奏データのみが記録されたものを演奏データ（自動演奏データ）とする。
【００１０】
数値表示とは、ＭＩＤＩデータの値を全て表形式にして数値で表示し、これにより修正する場合は、修正したい位置の数値を変更又は、削除したり、該位置に数値を入力したりして行う。
【００１１】
ピアノロール表示とは、音の長さと発音タイミングを棒グラフ状にあらわす表示形式である。
【００１２】
【発明が解決しようとする課題】
自動演奏を行うには、まず初期設定データを読み出し、音色等の初期設定を行い、その後、実演奏データをタイミングＴに従い読み出し、発音及び消音を含む自動演奏を行う。
【００１３】
例えば、図９に示す演奏データＳＤでは、自動演奏が開始されると、初期設定情報が読み込まれる。まず、該設定情報中の音色イベントに従った音色に設定される。さらに拍子情報等のデータが読み込まれる。この演奏データＳＤの音色イベントで設定された音色が、バイオリンに関するものであるとする。バイオリンは、その構造上、演奏が不可能な和音がある。
【００１４】
次に、タイミングＴＡにおいて、音符イベントＡ、Ｂ、Ｃ、Ｄが同時に読み込まれる。すなわち４音の和音の発音指示が出されるわけだが、実際のバイオリンではこれを演奏することはできない。このため、図９に示す演奏データＳＤをそのまま演奏すると、実際のバイオリンでは演奏することが不可能な不自然な演奏となってしまう。
【００１５】
本発明の目的は、自動的に、自然楽器の演奏に合うように、演奏データの修正を行うことができる情報修正装置又はプログラムを記録した媒体を提供することである。
【００１６】
【課題を解決するための手段】
本発明の一観点によれば、情報修正装置は、演奏データを記憶する記憶手段と、前記演奏データの中で、同時発音数が３音以上となる発音タイミングを検出する検出手段と、前記検出される同時発音数が３音以上となる発音タイミングに発音開始される３音以上に含まれる一部の音の発音タイミングを演奏データの修正を行うための修正情報に基づき修正する修正手段とを有する。
【００１８】
【発明の実施の形態】
図１は、本発明の実施例による情報修正装置を含む電子楽器又は汎用コンピュータＰＣのハードウェアの基本構成を示すブロック図である。なお、本明細書では、演奏データの修正を中心にして説明をするので、以下情報修正装置を演奏データ修正装置と呼ぶ。
【００１９】
演奏データ修正装置は、バス１、検出回路２、表示回路３、ＲＡＭ４、ＲＯＭ５、ＣＰＵ６、外部記憶装置７、通信インターフェイス８、ＩＮ／ＯＵＴインターフェイス９、音源回路１０、操作子１１、ディスプレイ１２、タイマ１３、サウンドシステム１５を有する。なお、操作子１１、ディスプレイ１２、サウンドシステム１５は、演奏データ修正装置外部のものを接続して使用してもよい。
【００２０】
バス１には、検出回路２、表示回路３、ＲＡＭ４、ＲＯＭ５、ＣＰＵ６、外部記憶装置７、通信インターフェイス８、ＩＮ／ＯＵＴインターフェイス９、タイマ１３、音源回路１０が接続される。
【００２１】
ユーザは、検出回路２に接続される操作子１１を用いて、演奏データ等の情報の修正等を指示することができる入力手段である。操作子１１は、例えば、マウス、キーボード、鍵盤、ジョイスティック、スイッチ等、ユーザの入力に応じた信号を出力できるものならどのようなものでもよい。また、複数の入力手段が接続されていてもよい。
【００２２】
表示回路３は、ディスプレイ１２に接続され、修正前及び修正後の演奏データ等をディスプレイ１２に表示することができる。
【００２３】
ディスプレイ１２に表示される画像は、楽譜データに基づく楽譜表示又は、演奏データに基づく演奏データ表示（数値表示、ピアノロール表示など）などであり、また、ユーザが、演奏データ修正のための各種指示を与えるスイッチなども表示される。さらに、必要に応じて、複数のウィンドウを表示させるようにしてもよい。
【００２４】
外部記憶装置７は、外部記憶装置用のインターフェイスを含み、そのインターフェイスを介してバス１に接続される。外部記憶装置７は、例えばフロッピディスクドライブ（ＦＤＤ）、ハードディスクドライブ（ＨＤＤ）、光磁気ディスク（ＭＯ）ドライブ、ＣＤ−ＲＯＭ（コンパクトディスク−リードオンリィメモリ）ドライブ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）ドライブ等である。外部記憶装置７には、演奏データや、楽譜データなどの各種データ、及び本実施例における情報修正プログラム等を記憶することができる。
【００２５】
ＲＡＭ４は、フラグ、レジスタ又はバッファ、ＭＩＤＩ演奏データ等を記憶するＣＰＵ６用のワーキングエリアを有する。ＲＯＭ５には、各種パラメータ及び制御プログラム、又は本実施例における情報修正プログラム等を記憶することができる。この場合、プログラム等を重ねて、外部記憶装置７に記憶する必要は無い。ＣＰＵ６は、ＲＯＭ５又は、外部記憶装置７に記憶されている制御プログラム等に従い、演算又は制御を行う。
【００２６】
タイマ１３は、バス１及びＣＰＵ６に接続されており、基本クロック信号、割り込み処理タイミング等をＣＰＵ６に指示する。
【００２７】
修正前の演奏データは、外部記録装置７、ＲＡＭ４、又はＲＯＭ５に記憶される。修正後の演奏データは、書き込み可能な外部記憶装置７又はＲＡＭ４に書き込まれる。修正前又は修正後の演奏データは、Ｉ／Ｏインターフェース９又は通信インターフェイス８を介して、外部に対して入出力可能である。
【００２８】
ＩＮ／ＯＵＴインターフェイス９は、ＭＩＤＩインターフェイス、ＵＳＢ（ユニバーサル・シリアル・バス）インターフェイス、ＩＥＥＥ１３９４等、他の楽器、音響機器、コンピュータ等に接続できるものであり、少なくともＭＩＤＩ信号を送受信できるものである。
【００２９】
音源回路１０は、供給されるＭＩＤＩ信号等に応じて楽音信号を生成し、サウンドシステム１５に供給する。サウンドシステム１５は、Ｄ／Ａ変換器及びスピーカを含み、供給されるデジタル形式の楽音信号をアナログ形式に変換し、発音する。
【００３０】
なお、音源回路１０は、波形メモリ方式、ＦＭ方式、物理モデル方式、高調波合成方式、フォルマント合成方式、ＶＣＯ（Ｖｏｌｔａｇｅ  Ｃｏｎｔｒｏｌｌｅｄ  Ｏｓｃｉｌｌａｔｏｒ）＋ＶＣＦ（Ｖｏｌｔａｇｅ  Ｃｏｎｔｒｏｌｌｅｄ  Ｆｉｌｔｅｒ）＋ＶＣＡ（Ｖｏｌｔａｇｅ  Ｃｏｎｔｒｏｌｌｅｄ  Ａｍｐｌｉｆｉｅｒ）のアナログシンセサイザ方式等、どのような方式であってもよい。
【００３１】
また、音源回路１０は、専用のハードウェアを用いて構成するものに限らず、ＤＳＰ（Ｄｅｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）＋マイクロプログラムを用いて構成してもよいし、ＣＰＵ＋ソフトウェアのプログラムで構成するようにしてもよいし、サウンドカードのようなものでもよい。
【００３２】
さらに、１つの音源回路を時分割で使用することにより複数の発音チャンネルを形成するようにしてもよいし、複数の音源回路を用い、１つの発音チャンネルにつき１つの音源回路で複数の発音チャンネルを構成するようにしてもよい。
【００３３】
制御プログラム又は演奏データ等を外部記憶装置７内のハードディスクに記憶させることもできる。ハードディスクからＲＡＭ４に制御プログラム等を読み出すことにより、ＲＯＭ５に制御プログラム等を記憶させている場合と同様の動作をＣＰＵ６にさせることができる。このようにすると、制御プログラム等の追加やバージョンアップ等が容易に行える。
【００３４】
また、制御プログラム又は演奏データ等をＣＤ−ＲＯＭに記憶させることもできる。ＣＤ−ＲＯＭからハードディスクに制御プログラムや演奏データ等をコピーすることができる。制御プログラム等の新規インストールやバージョンアップを容易に行うことができる。
【００３５】
通信インターフェイス８は、ＬＡＮ（ローカルエリアネットワーク）やインターネット、電話回線等の通信ネットワーク１７に接続可能であり、該通信ネットワーク１７を介して、コンピュータ１８と接続し、ＨＤＤ等外部記憶装置７、又はＲＡＭ４等内に、コンピュータ１８から制御プログラムや演奏データ等をダウンロードすることができる。
【００３６】
クライアントとなる演奏データ修正装置は、通信インターフェイス８及び通信ネットワーク１７を介してコンピュータ１８へと制御プログラムや演奏データ等のダウンロードを要求するコマンドを送信する。コンピュータ１８は、このコマンドを受け、要求された制御プログラムや演奏データ等を、通信ネットワーク１７を介して演奏データ修正装置へと配信する。演奏データ修正装置が通信インターフェイス８を介して、これら制御プログラムや演奏データ等を受信して外部記憶装置７又はＲＡＭ４等内に蓄積することにより、ダウンロードが完了する。
【００３７】
以下、ＣＰＵ６で行う処理について説明する。図２は、ＣＰＵが行うメイン処理を示すフローチャートである。
【００３８】
ステップＳ１では、新規情報の入力により自動的に、又は、ユーザの指示により、情報修正処理をスタートする。その後、次のステップＳ２に進む。
【００３９】
ステップＳ２では、入力情報に基づき演奏データを作成する。ここで、作成された演奏データに基づき楽譜表示用の楽譜データを作成してもよい。演奏データ及び楽譜データの形式は、例えば後述する図４（ａ）又は図７（ａ）に示す形式であり、少なくとも、各楽音の発生に関するタイミングデータ、及び各楽音の音高データ、音価データ、発音長データ等を含む音符イベントが含まれる。なお、本実施例では、図を省略した自動演奏プログラム（従来技術）により、作成した演奏データに従った楽曲を再生することも出来る。
【００４０】
ステップＳ３では、入力された演奏データが修正対象となるかを判定する。この判定には、例えば後述する図５又は図８に示すような情報修正用のテーブル（修正情報）が用いられる。ステップＳ３では、音色判定と和音判定の２段階の判定を行う。
【００４１】
まず、入力された演奏データ（音符イベント）の発音音色を演奏データ内の設定情報の音色イベントを参照して検出する。音色イベントの値が、情報修正用のテーブルの音色イベントの値と一致した場合、和音判定に進む。一致しない場合は、この時点で修正対象ではないと判定し、ＮＯの矢印で示すステップＳ８に進む。
【００４２】
和音判定では、入力された演奏データ内の同時発音数を演奏データ内の同タイミングの音符イベントの数を参照して検出する。同タイミング内に３つの音符イベントがあれば、３音の和音であることがわかる。同様にして、同タイミング内に４つの音符イベントがあれば、４音の和音であることがわかる。
【００４３】
次に、ここで検出した和音の数が、音色イベントの値が一致するいずれかの情報修正用のテーブルの和音の音数の値と一致するかを判定する。この値が一致する情報修正用のテーブルがあれば、入力情報が修正対象であると判定し、ＹＥＳの矢印で示す次のステップＳ４に進む。対応するテーブルが無ければ修正対象でないと判定し、ＮＯの矢印で示すステップＳ８に進む。ここで一致したテーブルは、ステップＳ４からＳ６で行われる情報の修正に用いる。
【００４４】
なお、本実施例では、新たな音符イベントが入力されるごとに修正を実行しているが、予め記録されている演奏データをＲＯＭ、ＲＡＭ又は、外部記憶装置から読み出して、修正対象となる部分を検出してもよい。この際のデータは、通信回線及び通信インターフェイスを解してダウンロードしてもよい。
【００４５】
ステップＳ４では、修正対象と判定された和音の各音符イベントの発音タイミングを修正する。発音タイミングは、情報修正用テーブルに従って修正される。この後、次のステップＳ５に進む。
【００４６】
ステップＳ５では、修正対象と判定された和音の各音符イベントの音価データを修正する。音価データは、情報修正用テーブルに従って修正される。この後、次のステップＳ６に進む。
【００４７】
ステップＳ６では、修正対象と判定された和音の各音符イベントの発音長データを修正する。発音長データは、情報修正用テーブルに従って修正される。この後、次のステップＳ７に進む。
【００４８】
ステップＳ７では、修正後の演奏データに基づき表示部の表示を変更する。例えば、後述する図３（ｂ）左側の楽譜から右側の楽譜に表示を変更する。なお、この表示変更をしないようにしてもよいし、ユーザの指示により切り替えられるようにしてもよい。この後、次のステップＳ８に進み情報修正処理を終了する。
【００４９】
次に、４音の和音が入力された時を例にして、本実施例の情報修正処理を具体的に説明する。なお、音色イベントは、バイオリンに設定されているものとする。
【００５０】
図３は、４音の和音が入力された時の演奏データの修正前（左側）と修正後（右側）の画面表示の例である。図３（ａ）はピアノロール表示であり、図３（ｂ）は楽譜表示である。ここでは修正対象となる演奏データの部分だけを図示したが、一曲分全体を表示するようにしてもよい。その場合、修正対象となっている部分をハイライトするなどして、ユーザにどこを修正しているのかを知らせるようにすることが好ましい。
【００５１】
図３（ｂ）左側に示す楽譜があったとしても、バイオリンの場合は、その構造上４本の弦を同時に演奏することはできない。通常、同時演奏可能な弦は２本であるので図３（ｂ）右側に示すように演奏する必要がある。
【００５２】
そこで、図３（ｂ）左側に対応する演奏情報が入力された場合には、その演奏情報に基づいて作成される演奏データを、図３（ｂ）右側に対応する演奏データに修正する必要がある。
【００５３】
図４は、演奏データの形式を示すダイアグラムである。図４（ａ）は、スタンダードＭＩＤＩファイルの形式で記録されている修正前の４音の和音を含む演奏データＳＤ１である。図３（ａ）及び（ｂ）左側の表示は、この修正前の演奏データＳＤ１又はこれを元に作成される楽譜データに基づき表示される。
【００５４】
演奏データＳＤ１には、各楽音の発生に関するタイミングデータＴＡ、及び各楽音の音高データ、音価データ、発音長データ等を含む音符イベントＡ〜Ｄを含み、さらに、音色や効果等の引き続く楽音に対する演奏環境の設定を行うためのパラメータ設定イベント等を有する。
【００５５】
演奏データＳＤ１の先頭の部分には、初期設定情報が置かれている。初期設定情報には、例えば自動演奏開始時点の音色イベント、拍子情報等が記録されている。
【００５６】
タイミングデータＴは、演奏イベントの発生時刻を１つ前のイベントからの時間であらわしてもよいし、演奏イベントの発生時刻を曲や小節内における絶対時間であらわしてもよい。
【００５７】
図５は４音の和音用の修正情報を記録したテーブル（情報修正用テーブル）の一例である。情報修正用テーブルは、修正対象となる音色イベント、及び和音の音数（同時に発音開始される音の数）、さらに、それぞれの音符イベントに対応するタイミングデータ、音価、発音長の値の修正方法又は修正後の値が記録されている。
【００５８】
この例では、修正対象となる音色イベントとして「４１」が記録されている。音色イベント「４１」は一般にバイオリンの音色を指す。音色イベントの値としては、数値に限らず「バイオリン」のように音色名で記録してもよい。楽器ごとに発音不可能な和音が異なるので、音色イベントごとにテーブルを記録することが好ましいが、修正対象となる音色イベントとして、１つのテーブルに複数の音色イベントを記録してもよい。
【００５９】
修正対象となる和音の音数としては、「４」が記録されている。すなわち図５のテーブルは、バイオリンの音色で４音の和音の時に適用されるものであるということがわかる。なお、図中、音符イベントＡ〜Ｄは、それぞれ、Ａは最低音、Ｂは中低音、Ｃは中高音、Ｄは最高音を表している。
【００６０】
図４（ａ）に示す演奏データＳＤ１が図２のステップＳ３において修正対象であると判断されると、図５のテーブルを参照して、以下のような修正が行われる。和音中の最低音（音符イベントＡ）及び中低音（音符イベントＢ）については、修正後の発音タイミングｔ２は修正前の発音タイミングｔ１と同じ値（ｔ２＝ｔ１）に設定される。修正後の音価（ｖ２）は修正前の音価（ｖ１）に０．２５をかけた値（ｖ２＝０．２５ｖ１）に設定される。修正後の発音長（ｌ２）は修正前の音価（ｖ１）に０．２５をかけて、修正後の音価（ｖ２）と同じ値（ｌ２＝０．２５ｖ１）に設定される。以上のように修正を加え、それぞれ音符イベントａ、音符イベントｂとして記録される。なお、修正後の発音長を修正後の音価と同じ値にしているのは、スラーの効果を与えるためである。
【００６１】
なお、実際のバイオリンでも一瞬３音が同時になっている場合もあり、また空間の響きでは４音とも同時になっている場合もあるので、３音または４音同時に発音する時間を設けてもよい。この場合には、音価ではなく、発音長の値を修正することが好ましい。具体的には、最低音または、最低音と中低音の発音長を音価よりも長く設定すればよいのである。
【００６２】
和音中の中高音（音符イベントＣ）及び最高音（音符イベントＤ）については、修正後の発音タイミングｔ２は修正前の発音タイミングｔ１に修正前の音価（ｖ１）に０．２５をかけた値（０．２５ｖ１）を加えた値（０．２５ｖ１＋ｔ１）に設定される。これは、修正後の発音タイミングを、修正前の音価の４分の１だけ遅らせるためである。すなわち、同時に２音以上が発音されないように、低音側の２音に対応して修正される。
【００６３】
修正後の音価（ｖ２）は修正前の音価（ｖ１）に０．７５をかけた値（ｖ２＝０．７５ｖ１）に設定される。修正後の発音長（ｌ２）は修正前の音価（ｖ１）に０．７５をかけて修正後の音価（ｖ２）と同じ値（ｌ２＝０．７５ｖ１）に設定される。以上のように修正を加え、それぞれ音符イベントｃ、音符イベントｄとして記録される。
【００６４】
図４（ｂ）は、上記のように図４（ａ）の演奏データＳＤ１に図５の情報修正用テーブルの処理を適用した後の、演奏データＳＤ２を示すダイアグラムである。タイミングＴＢが新たに挿入されて、音符イベントＣ及びＤのタイミングがずらされて、タイミングＴＢにおいて音符イベントｃ及びｄを発音するようになっているのがわかる。さらに、音符イベントＡ及びＢも、それぞれ音符イベントａ及びｂに変わっている。この修正後の演奏データＳＤ２又はこれに基づき作成される楽譜データに基づき画面表示が図３（ａ）及び（ｂ）の右側に示すように変更される。
【００６５】
このようにすると、実際のバイオリンでは演奏することが不可能な４音同時演奏の和音が入力されたとしても、自動的に２音ずつタイミングＴをずらして発音させることができる。すなわち、本実施例によれば、演奏データ中の実際には演奏不可能な不自然な部分を、より実際の生楽器に近い自然な演奏に近づけることのできる演奏データにすることができる。
【００６６】
次に、３音の和音が入力された時を例にして、本実施例の情報修正処理を具体的に説明する。なお、音色イベントは、バイオリンに設定されているものとする。
【００６７】
図６は、３音の和音が入力された時の演奏データの修正前（左側）と修正後（右側）の画面表示の例である。図６（ａ）はピアノロール表示であり、図６（ｂ）は楽譜表示である。ここでは修正対象となる演奏データの部分だけを図示したが、一曲分全体を表示するようにしてもよい。その場合、修正対象となっている部分をハイライトするなどして、ユーザにどこを修正しているのかを知らせるようにすることが好ましい。
【００６８】
図６（ｂ）左側に示す楽譜があったとしても、バイオリンの場合は、その構造上３本の弦を同時に演奏することはできない。通常、同時演奏可能な弦は２本であるので図６（ｂ）右側に示すように演奏する必要がある。
【００６９】
そこで、図６（ｂ）左側に対応する演奏情報が入力された場合には、その演奏情報に基づいて作成される演奏データを、図６（ｂ）右側に対応する演奏データに修正する必要がある。
【００７０】
図７（ａ）は、スタンダードＭＩＤＩファイルの形式で記録されている修正前の３音の和音を含む演奏データＳＤ３である。演奏データＳＤ３には、各楽音の発生、に関するタイミングデータ、及び各楽音の音高データ、音価データ、発音長データ等を含む音符イベントＥ〜Ｇを含み、さらに、音色や効果等の引き続く楽音に対する演奏環境の設定を行うためのパラメータ設定イベント等を有する。演奏データの形式は図４に示す演奏データと同じ形式である。
【００７１】
図８は、３音の和音用のテーブルの一例である。この例では、修正対象となる音色イベントとして「４１」が記録されている。修正対象となる和音の音数としては、「３」が記録されている。すなわち図８のテーブルは、バイオリンの音色で３音の和音の時に適用されるものであるということがわかる。音符イベントＥ〜Ｇは、それぞれ、Ｅは最低音、Ｆは中音、Ｇは最高音を表している。
【００７２】
図７（ａ）に示す演奏データＳＤ３が図２のステップＳ３において修正対象であると判断されると、図８のテーブルを参照して、以下のような修正が行われる。和音中の最低音（音符イベントＥ）については、修正後の発音タイミングｔ２は修正前の発音タイミングｔ１と同じ値（ｔ２＝ｔ１）に設定される。修正後の音価（ｖ２）は修正前の音価（ｖ１）に０．２５をかけた値（ｖ２＝０．２５ｖ１）に設定される。修正後の発音長（ｌ２）は修正前の音価（ｖ１）に０．２５をかけて、修正後の音価（ｖ２）と同じ値（ｌ２＝０．２５ｖ１）に設定される。以上の修正を加えて、音符イベントｅとして記録される。修正後の発音長を修正後の音価と同じ値にしているのは、スラーの効果を与えるためである。
【００７３】
なお、実際のバイオリンでも一瞬３音が同時になっている場合があるので、３音同時に発音する時間を設けてもよい。この場合には、音価ではなく、発音長の値を修正することが好ましい。具体的には、最低音の発音長を音価よりも長く設定すればよいのである。
【００７４】
和音中の中音（音符イベントＦ）については、修正後の発音タイミングｔ２は修正前の発音タイミングｔ１と同じ値（ｔ２＝ｔ１）に設定される。修正後の音価（ｖ２）も修正前の音価（ｖ１）と同じ値（ｖ２＝ｖ１）に設定される。修正後の発音長（ｌ２）も修正前の発音長（ｌ１）と同じ値（ｌ２＝ｌ１）に設定される。以上の修正を加えて、音符イベントｆとして記録される。
【００７５】
和音中の最高音（音符イベントＧ）については、修正後の発音タイミングｔ２は修正前の発音タイミングｔ１に修正前の音価（ｖ１）に０．２５をかけた値（０．２５ｖ１）を加えた値（０．２５ｖ１＋ｔ１）に設定される。これは、修正後の発音タイミングを、修正前の音価の４分の１だけ遅らせるためである。すなわち、同時に２音以上が発音されないように、低音側の２音に対応して修正される。
【００７６】
修正後の音価（ｖ２）は修正前の音価（ｖ１）に０．７５をかけた値（ｖ２＝０．７５ｖ１）に設定される。修正後の発音長（ｌ２）は修正前の音価（ｖ１）に０．７５をかけて修正後の音価（ｖ２）と同じ値（ｌ２＝０．７５ｖ１）に設定される。以上の修正を加えて、音符イベントｇとして記録される。
【００７７】
図７（ｂ）は、上記のように図７（ａ）の演奏データＳＤ３に図８の情報修正用テーブルの処理を適用した後の、演奏データＳＤ４を示すダイアグラムである。タイミングＴＢが新たに挿入されて、音符イベントＧのタイミングがずらされて、音符イベントｇとなっているのがわかる。また、音符イベントＥ及びＦも、それぞれ音符イベントｅ及びｆに変わっている。この修正後の演奏データＳＤ４又はこれに基づき作成される楽譜データに基づき画面表示が図６（ａ）及び（ｂ）の右側に示すように変更される。このように、本実施例による修正後の演奏データ（図７（ｂ）、図６右側）は、例えば、中音が、低音と高音との両方にかかっている等、バイオリン演奏らしさを出したものになっている。
【００７８】
以上のように本発明の実施例によれば、実際の楽器では演奏することが不可能な演奏が指示されたとしても、自動的に演奏データを修正して発音させることができる。すなわち、本実施例によれば、実際には演奏不可能な不自然な演奏データの一部を、自動的に、より実際の生楽器に近い自然な演奏に近づけた演奏データに修正することができる。
【００７９】
また、本発明の実施例によれば、違う楽器用に作成されたデータであっても、所望の楽器で演奏可能なデータに自動的に修正することができる。
【００８０】
なお、上記実施例においては、情報修正処理は、情報修正用テーブルを修正用情報として用いたが、この方式に限らず、プログラム等を修正用情報として用いてもよい。例えば、プログラム処理により、入力された和音を２音ずつに分けて、それぞれのタイミングを自動的にずらすようにしてもよい。
【００８１】
また、上記実施例においては、情報修正用テーブルは、音色及び和音の音数によって区別していたが、曲のテンポなどによって使い分けるようにしてもよく、特定の和音用に個別に用意するようにしてもよい。こうすることにより、さらに自然な演奏に近づけることができる。
【００８２】
また、上記実施例においては、３音と４音の和音に関する例を記載したが、２音若しくは５音以上の和音に対しても修正処理を行うことができる。その場合には、例えば、２音ずつが同じタイミングで発音されるように修正してもよい。又は、それぞれの音数に対応した情報修正用テーブルを用意してもよい。
【００８３】
さらにまた、上記実施例では、バイオリンの音色について記載したが、これに限るものではなく、他のバイオリン属の楽器はもちろん、どのような楽器の音色についても修正処理を行うことができる。この場合は、それぞれの楽器に対応する情報修正用テーブルを用意する。また、１つのテーブルで複数の楽器に対応するようにしてもよい。また、実際には存在しない楽器を想定して、情報修正用テーブルを設けてもよい。
【００８４】
なお、演奏データのフォーマットは、演奏イベントの発生時刻を１つ前のイベントからの時間で表した「イベント＋相対時間」、演奏イベントの発生時刻を曲や小節内における絶対時間で表した「イベント＋絶対時間」、音符の音高と符長あるいは休符と休符長で演奏データを表した「音高（休符）＋符長」、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域に演奏イベントを記憶した「ベタ方式」等、どのような形式でもよい。
【００８５】
なお、本実施例は、本実施例に対応するコンピュータプログラム等をインストールした市販の汎用コンピュータ又はパーソナルコンピュータ等によって、実施させるようにしてもよい。
【００８６】
その場合には、本実施例に対応するコンピュータプログラム等を、ＣＤ−ＲＯＭやフロッピーディスク等の、コンピュータが読み込むことが出来る記憶媒体に記憶させた状態で、ユーザに提供してもよい。
【００８７】
その汎用コンピュータ又はパーソナルコンピュータ等が、ＬＡＮ、インターネット、電話回線等の通信ネットワークに接続されている場合には、通信ネットワークを介して、コンピュータプログラムや各種データ等を汎用コンピュータ又はパーソナルコンピュータ等に提供してもよい。
【００８８】
さらに、本実施例は、１つの装置で実施するだけに限らず、さまざまな装置をＭＩＤＩや各種ネットワーク等の通信手段を用いて接続したものであってもよい。また、音源装置や自動演奏装置等を内蔵した電子楽器などで本実施例を実施することもできる。ここでいう電子楽器とは、鍵盤楽器タイプ、弦楽器タイプ、管楽器タイプ、打楽器タイプ等の電子楽器である。
【００８９】
以上実施例に沿って本発明を説明したが、本発明はこれらに制限されるものではない。例えば、種々の変更、改良、組合せ等が可能なことは当業者に自明であろう。
【００９０】
【発明の効果】
以上説明したように、本発明によれば、自動的に、自然楽器の演奏に合うように、演奏データの修正を行うことができる。
【図面の簡単な説明】
【図１】情報修正装置の具体的なハードウェア構成を示すブロック図である。
【図２】ＣＰＵが行うメイン処理を示すフローチャートである。
【図３】画面表示の例である。
【図４】演奏データの形式を示すダイアグラムである。
【図５】情報修正用のテーブルである。
【図６】画面表示の例である。
【図７】演奏データの形式を示すダイアグラムである。
【図８】情報修正用のテーブルである。
【図９】従来技術による演奏データのダイアグラムである。
【符号の説明】
１…バス、２…検出回路、３…表示回路、４…ＲＡＭ、５…ＲＯＭ、６…ＣＰＵ、７…外部記憶装置、８…通信インターフェイス、９…Ｉ／Ｏインターフェイス、１０…音源回路、１１…操作子、１２…ディスプレイ、１３…タイマ、１５…サウンドシステム、１７…通信ネットワーク、１８…コンピュータ
【図１】
0003620396.tif 000002
【図２】
0003620396.tif 000003
【図３】
0003620396.tif 000004
【図４】
0003620396.tif 000005
【図５】
0003620396.tif 000006
【図６】
0003620396.tif 000007
【図７】
0003620396.tif 000008
【図８】
0003620396.tif 000009
【図９】
0003620396.tif 000010