以下、本発明の実施の形態を図面を参照して説明する。
(第1の実施の形態)
図1は、本発明の第1の実施の形態に係る演奏信号処理装置の全体構成を示すブロック図である。本演奏信号処理装置は、例えば、DTM(デスクトップミュージック)を行えるパーソナルコンピュータとして構成される。
本演奏信号処理装置は、押鍵検出回路3、スイッチ検出回路4、ROM6、RAM7、タイマ8、表示制御回路9、フロッピディスクドライブ(FDD)10、ハードディスクドライブ(HDD)11、CD−ROM(コンパクトディスク−リード・オンリ・メモリ)ドライブ12、MIDIインターフェイス(MIDII/F)13、通信インターフェイス(通信I/F)14、音源回路15、効果回路16及びマウス情報検出回路20が、バス18を介してCPU5にそれぞれ接続されて構成される。
さらに、押鍵検出回路3には鍵盤1が接続され、スイッチ検出回路4にはパネルスイッチ2が接続されている。マウス情報検出回路20にはスイッチを有する平面移動自在のマウス21が接続され、表示制御回路9には例えばLCD若しくはCRTで構成される表示装置19が接続されている。CPU5にはタイマ8が接続され、MIDII/F13には他のMIDI機器100が接続されている。通信I/F14には通信ネットワーク101を介してサーバコンピュータ102が接続され、音源回路15には効果回路16及びサウンドシステム17が直列に接続されている。
押鍵検出回路3は鍵盤1の各鍵(不図示)の押鍵状態を検出する。パネルスイッチ2は、各種情報を入力するための複数のスイッチ(不図示)を備える。スイッチ検出回路4は、パネルスイッチ2の各スイッチの押下状態を検出する。CPU5は、本装置全体の制御を司る。ROM6は、CPU5が実行する制御プログラムやテーブルデータ等を記憶する。RAM7は、自動演奏データ、楽譜表示用画像データ、テキストデータ等の各種入力情報及び演算結果等を一時的に記憶する。タイマ8は、タイマ割り込み処理における割り込み時間や各種時間を計時する。表示制御回路9は、表示装置19に楽譜等の各種情報を表示させる。
FDD10は、記憶媒体であるフロッピディスク(FD)24をドライブする。FD24には、上記制御プログラム、各種アプリケーションプログラム、及び各種データ等が格納される。外部記憶装置であるHDD11は、上記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶する。CD−ROMドライブ12は、上記制御プログラムを含む各種アプリケーションプログラムや各種データ等が格納されているCD−ROM(不図示)をドライブする。
MIDII/F13は、他のMIDI機器100等の外部装置からのMIDI(Musical Instrument Digital Interface)信号を入力したり、MIDI信号を外部装置に出力したりする。通信I/F14は、通信ネットワーク101を介して、例えばサーバコンピュータ102とデータの送受信を行う。音源回路15は、FDD10、CD−ROMドライブ12またはMIDII/F13等から入力された自動演奏データ等の曲データを楽音信号に変換する。効果回路16は、音源回路15から入力される楽音信号に各種効果を付与し、DAC(Digital-to-Analog Converter)やアンプ、スピーカ等のサウンドシステム17は、効果回路16から入力される楽音信号等を音響に変換する。マウス情報検出回路20は、マウス21の移動情報やスイッチオン/オフ等の操作情報を検出する。
なお、本実施の形態では、音源回路15は、その名称の通り、すべてハードウェアで構成したが、これに限らず、一部ソフトウェアで構成し、残りの部分をハードウェアで構成してもよいし、また、すべてソフトウェアで構成するようにしてもよい。
HDD11には、前述のようにCPU5が実行する制御プログラムを記憶することができる。ROM6に制御プログラムが記憶されていない場合には、このHDD11内のハードディスクに制御プログラムを記憶させておき、それをRAM7に読み込むことにより、ROM6に制御プログラムを記憶している場合と同様の動作をCPU5にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等を容易に行うことができる。
CD−ROMドライブ12によりCD−ROMから読み出された制御プログラムや各種データは、HDD11内のハードディスクにストアされる。これにより、制御プログラムの新規インストールやバージョンアップ等を容易に行うことができる。なお、このCD−ROMドライブ12以外にも、外部記憶装置として、光磁気ディスク(MO)装置等、様々な形態のメディアを利用するための他の装置を設けるようにしてもよい。
なお、MIDII/F13は、専用のものに限らず、RS−232CやUSB(ユニバーサル・シリアル・バス)、IEEE1394(アイトリプルイー1394)等の汎用のインターフェイスより構成してもよい。この場合、MIDIメッセージ以外のデータをも同時に送受信してもよい。
通信I/F14は、上述のように、LAN(ローカルエリアネットワーク)やインターネット、電話回線等の通信ネットワーク101に接続されており、該通信ネットワーク101を介して、サーバコンピュータ102と接続される。HDD11内のハードディスクに上記各プログラムや各種パラメータが記憶されていない場合には、通信I/F14は、サーバコンピュータ102からプログラムやパラメータをダウンロードするために用いられる。クライアントとなるコンピュータ(本実施の形態では演奏信号処理装置)は、通信I/F14及び通信ネットワーク101を介してサーバコンピュータ102へとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバコンピュータ102は、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワーク101を介してコンピュータへと配信し、コンピュータが通信I/F101を介して、これらプログラムやパラメータを受信してHDD11内のハードディスクに蓄積することにより、ダウンロードが完了する。
この他、外部コンピュータ等との間でデータのやりとりを直接行うためのインターフェイスを備えるようにしてもよい。
本実施の形態では、曲データはMIDIデータや歌詞データ等を含む自動演奏データであり、既成の曲データは、上述したように、FDD10、CD−ROMドライブ12、MIDII/F13、通信I/F14を介して読み出し乃至入力される。また、曲データはユーザが創作して鍵盤1やマウス21等で入力することもできる。読み出しあるいは入力された曲データは、RAM7に格納されると共に表示装置19に表示され、後述する楽音発生処理(再生等)、表情付け処理、各種編集処理の対象となる。
図2は、本実施の形態におけるメインルーチンのフローチャートを示す図である。本処理は電源のオン時に開始される。
まず、初期化を実行、すなわち所定プログラムの実行を開始し、RAM7等、各種レジスタをクリアして初期設定を行う(ステップS201)。次いで、後述する図3、図4のパネル処理、すなわちパネルスイッチ2やマウス21の操作を受け付け、機器の設定や曲データの編集等の指示を実行する(ステップS202)。次いで、楽音処理を実行する(ステップS203)。例えば、再生処理を実行している場合は、曲データを読み出し、設定された効果処理を付加し、増幅して出力する。その後、前記ステップS202に戻る。
図3及び図4は、図2のステップS202で実行されるパネル処理のフローチャートを示す図である。
まず、パネル入力があったか否か、すなわちパネルスイッチ2やマウス21による何らかの操作があったか否かを判別する(ステップS301)。その判別の結果、パネル入力がなかった場合は直ちに本処理を終了する一方、パネル入力があった場合は、それが表情付け処理の指示であるか否かを判別する(ステップS302)。なお、本処理の実行に際し(本装置またはソフトウェアの立ち上げ時に)、初期設定で前回に終了した時点における設定が読み出されるので、処理対象とする曲データは新たな設定を特にしなくとも準備されている。
前記ステップS302の判別の結果、パネル入力が表情付け処理の指示でない場合は、それが演奏関連指示であるか否かを判別する(図4のステップS303)。その判別の結果、パネル入力が演奏関連指示でない場合は、パネル入力が曲の変更指定であるか否かを判別する(ステップS304)。
前記ステップS303の判別の結果、パネル入力が演奏関連指示である場合は、それが再生指示であるか否かを判別する(ステップS305)。その判別の結果、演奏関連指示が再生指示である場合は、現在表示されている曲データの再生を開始して(ステップS306)、本処理を終了する一方、演奏関連指示が再生指示でない場合は、ステップS307に進む。
ステップS307では、演奏関連指示が停止指示であるか否かを判別する。その判別の結果、演奏関連指示が停止指示である場合は、演奏再生を停止して(ステップS308)、本処理を終了する一方、演奏関連指示が停止指示でない場合は、その他の指示の処理を実行、例えば、進み処理(再生ポイントを徐々に進める(早送り))、戻し処理(再生ポイントを徐々に戻す(早戻し))、先頭処理(曲の先頭に再生ポイントを戻す)を実行して(ステップS309)、本処理を終了する。
前記ステップS304の判別の結果、パネル入力が曲の変更指定である場合は、再生や編集の処理対象としたい曲の指定を受け付けて変更を行い(ステップS310)、変更後の曲データを読み出し、入力して、種々の情報を表示し(ステップS311)、本処理を終了する。一方、前記ステップS304の判別の結果、パネル入力が曲の変更指定でない場合は、その他の指示の処理を実行、例えば、曲データの表情付け処理以外のエディットや各種編集処理を行って(ステップS312)、本処理を終了する。
前記ステップS302の判別の結果、パネル入力が表情付け処理の指示である場合は、ステップS313〜S325で表情付け処理を実行する。すなわち、まず、曲データの分割方法を表示し(ステップS313)、分割方法の選択を受け付け(ステップS314)、受け付けた方法にて曲データの分割処理を実行する(ステップS315)。ここで、曲データの分割方法には、大別して「マニュアル分割」、「自動分割」、「均等分割」がある。
「マニュアル分割」は、ユーザが曲データの表示をみて、または曲の再生を聞いて、分割位置を手作業で指定する手法である。例えば、曲データがユーザ自身が創作したものである場合は、起承転結等、曲の構成もわかっており、どこで分割するのが最も適当かはユーザにとって判断が容易であるから、「マニュアル分割」を選択するのが適当である。
「自動分割」は、装置側(CPU5)が判断して分割位置を自動的に指定する手法である。例えば、フレーズの区切りと判断できる位置を分割位置とする。フレーズの区切りの判断手法には、次のようなものがある。
a:所定以上の休符長を発見したら、その休符直後を新たな分割区分とし、休符を分割位置とする。
b:音程の跳躍やリズムの変化、拍子の変化、テンポの変化、音数の変化、音調平均の変化等、音符の規則性を評価基準としてフレーズの区切りを認識する。
c:同じメロディが繰り返される場合は同じメロディが再び現れたところで新たな分割区分とし、従って、各メロディ間を分割位置とする。
これらの手法と一部重複するが、「コンピュータと音楽の世界:共立出版:長嶋洋一、橋本周司、平賀譲、平田圭二偏」で紹介されるGTTM(a Generative Theory of Tonal Music)(第4章第6節:竹内好宏)による構造解析を用いて分割位置を自動的に判断する手法もある。このGTTMは、人間の音楽知覚・認知過程をもとに音楽を階層的な構造に解析するものであり、音楽の知覚・認知に必要な、グループ構造、拍子構造、タイムスパン還元、延長的還元の4つの構成要素によって解析される。
これらの「自動分割」の手法は単独で適用してもよいし、併用してもよい。また、曲データに歌詞データが含まれている場合は、例えば、歌詞の切れ目を基準にする等、歌詞を解析することにより分割位置を指定してもよい。
「均等分割」は、曲データを等分割に分割する手法である。「均等分割」では、曲データ全体を一律に複数に等分割する手法のほか、イントロとエンディング等の特定の区分だけは指定した小節数とし、他の部分は等分割するという手法もある。また、「均等分割」は小節数で行ってもよいし、音符数で行ってもよい。
ユーザは、これらの各種分割方法の中から適用したい分割方法を具体的に選択、指定する。分割処理により、曲データは複数(例えば、数区分〜10数区分程度)に分割される。
分割処理の実行後は、分割やり直しの指示があればそれを受け付ける。そして、ステップS316では、分割やり直しの指示があったか否かを判別する。その判別の結果、分割やり直しの指示があった場合は、前記ステップS313に戻って、分割方法の選択及び分割処理を再度実行する一方、分割やり直しの指示がない場合は、ステップS317に進む。なお、前記ステップS315で分割された結果、一部の分割位置のみがユーザの意にそぐわない場合は、その位置を特定してマニュアル操作にて分割位置を変更するようにしてもよい。
ステップS317では、変更する楽音特性のリストを表示する。楽音特性としては、例えば、ベロシティ、エクスプレッション、発音のタイミングのほか、各種コントロールチェンジ(ビブラート、エフェクト(リバーブ、コーラス、ディレイ等)、音色の変化等)の値を対象とすることができる。次に、変更対象とする楽音特性の選択を受け付け(ステップS318)、楽音特性の選択のやり直しの指示があったか否かを判別する(ステップS319)。その判別の結果、楽音特性の選択のやり直しの指示があった場合は、前記ステップS317に戻って楽音特性の表示及び選択受け付けを再度実行する一方、楽音特性の選択のやり直しの指示がない場合は、ステップS320に進む。
ステップS320では、上記分割された曲データの各区分に適応する抑揚データの候補を抽出して表示する。ここで、抑揚データについて説明する。
図5は、曲データの分割態様及び抑揚データの一例を示す図である。同図(a)は分割処理前の曲データ、同図(b)は分割処理後の曲データ、同図(c)は複数の区分で成る抑揚データをそれぞれ示す。同図では、曲データが6区分に分割された場合を例示している。
抑揚データは、楽曲に抑揚を付与するためのデータで、同図(c)に示すように、各区分毎にパラメータの時間的変化を規定するものである。このパラメータは、前記ステップS318で受け付け、指定された楽音特性の時間的変化を規定するものであり、後述する楽音特性変更処理(ステップS324)で楽音特性を制御するのに用いられるものである。複数の区分(同図(c)では6個の区分を例示)で成る抑揚データは、複数パターンが予めROM6等に格納されている。なお、抑揚データはHDD11に格納するようにしてもよいし、FDD10、CD−ROM12、あるいは通信I/F14を介して抑揚データを追加、更新できるようにしてもよい。なお、抑揚データは、区分数が6個のパターンに限らず、種々の区分数のパターンが存在する。
前記ステップS320では、上記それぞれ指定された曲データの分割方法、曲データの分割区分の数、及び変更する楽音特性に基づいて、ROM6に格納された複数の抑揚データの中から最適な抑揚データが少なくとも1つ抽出され、候補として表示装置19に表示される。
すなわち、曲データに適応する抑揚データは、まず曲データの分割方法及び分割区分の数によって異なる。例えば、ユーザによる「マニュアル分割」または「自動分割」により、同図(b)に示すように、イントロ、Aメロ、Aメロ’、Bメロ、Aメロ’’エンディングというように曲データが分割された場合は、このようなメロディ構成に合致する区分パターンの抑揚データが抽出されることになる。これらの場合は、区分数が曲データの区分数(6個)に合致した抑揚データのみが抽出の対象となる。これにより、抑揚データに基づく後述する楽音特性の制御が適切且つ容易になる。また、「均等分割」の場合は、「均等分割」により分割された曲データに適するものとして区分数及び区分パターンが予め設定された抑揚データが抽出対象とされる。
これに加えて、曲データに適応する抑揚データは、変更する楽音特性によっても異なる。従って、分割方法及び分割区分数が同じでも、変更する楽音特性が例えばベロシティであるか、エクスプレッションであるか等によって、適応する抑揚データが異なることになる。なお、より簡単な構成とする場合は、楽音特性を考慮せず、曲データの分割方法及び曲データの分割区分数のみに基づいて抑揚データを抽出するようにしてもよい。
次に、ステップS321では、抑揚データの特定を受け付ける。すなわち、上記のようにして抽出された抑揚データは複数の場合もあり、その場合は、ユーザは、抑揚データの候補の中から1つの抑揚データを特定する。なお、候補が1つしかない場合は、確認メッセージ等を表示して確認の受け付けを行うようにしてもよい。
次に、ステップS322では、抑揚データ特定のやり直しの指示があったか否かを判別する。その判別の結果、抑揚データ特定のやり直しの指示があった場合は、前記ステップS320に戻って、抑揚データの候補の表示及び特定の受け付けを再度実行する一方、抑揚データ特定のやり直しの指示がない場合は、ステップS323に進む。なお、前記ステップS321で特定された抑揚データの区分のうち、一部の区分のみがユーザの意にそぐわない場合は、その一部の区分を特定してマニュアル操作にてその区分のみを他の区分と入れ替えるようにしてもよい。この場合、「他の区分」は他のパターン中の区分を流用できるようにしてもよい。また、入れ替え専用に用意したものでもよいが、その場合は、「他の区分」のバリエーションは多数容易しておくのが好ましい。また、前記ステップS320では全ての候補を表示するようにしたが、とりあえず1つの候補のみを表示しておいて、区分毎にマニュアル操作にて他の区分と入れ替える作業を行うようにしてもよい。
続くステップS323では、楽音特性変更処理の開始指示があったか否かを判別する。その判別の結果、楽音特性変更処理の開始指示がない場合は、前記ステップS313に戻る。なお、ステップS323で楽音特性変更処理の開始指示がない場合において、ステップS313、S317、S320のいずれに戻るかをユーザが指定できるようにしてもよい。ステップS323の判別の結果、楽音特性変更処理の開始指示があった場合は、ステップS324に進む。
ステップS324では、楽音特性変更処理、すなわち曲データに抑揚データを適用して曲データの楽音データの特性を個別的に変更する処理を実行する。この楽音特性変更処理には、曲データと抑揚データとの区分毎の対応付けと抑揚データの伸張とを行う処理ステップと、伸張された抑揚データに基づく曲データの楽音特性変更の処理ステップとがある。
まず、区分毎の対応付けでは、例えば図5に示すように、分割された曲データの6個の区分(同図(b))と抽出特定された抑揚データの6個の区分(同図(c))とを順番に従って対応付ける。例えば、同図(b)のイントロには同図(c)のイントロが対応することになる。次に抑揚データの伸張では、抑揚データの各区分毎に、それに対応する曲データの区分に合うように、時間的に抑揚データが伸張される。
図6、図7は、互いに対応する曲データの区分と抑揚データの区分の1組を例示した図である。図6は抑揚データの伸張前を示し、図7は伸張後を示す。図6(a)は曲データにおける1つの区分内のノートイベントデータを示し、同図(b)は曲データにおいて事前に設定されているベロシティを示す。このベロシティの設定は、曲データにおいて元々なされている場合だけでなく、前回の楽音特性変更処理でなされている場合もある。同図(b)の例では、各ノートイベントデータ共、ベロシティが一律である。同図(c)は、抑揚データの1つの区分内でのパラメータの時間的変化を示している。これらは図7(a)、(b)、(c)でも同様である。
区分毎の対応付け処理がなされただけでは、図6に示すように、曲データの区分と抑揚データの区分との時間的長さが必ずしも一致しない。そこで、抑揚データの伸張処理では、曲データの区分と抑揚データの区分との開始及び終了の両タイミングが合うように抑揚データの区分を伸張する。その結果、図7に示すように、抑揚データの時間方向の長さが曲データのものと一致する。
なお、本実施の形態では抑揚データの区分が曲データの区分よりも常に短いことを前提として抑揚データの伸張処理を行うことを述べたが、両者の時間的長さが逆転する場合は、抑揚データを時間的に短縮すればよい。
残る楽音特性変更の処理では、前記ステップS318で特定した曲データの楽音特性を変更する。上述したように、楽音特性にはベロシティ、エクスプレッション、発音のタイミング等があるが、図6、図7で例示したのに倣い、楽音特性としてベロシティを例にとって説明する。
図8は、互いに対応する曲データの区分と抑揚データの区分の1組を例示した図である。同図(a)、(b)、(c)は、図7(a)、(b)、(c)に対応しており、伸張処理後の抑揚データに基づいて曲データのベロシティを変更した場合を示している。本例では、ノートイベントのノートオン時点における抑揚データが示すパラメータの値に応じて各ノートイベントのベロシティが変更される。例えば、図8(a)に示す2番目のノートイベントNE2のベロシティは、そのノートオン時点t2(同図(c))における抑揚データが示すパラメータの値V2に応じて設定され、その結果、図8(b)に示すように、ノートイベントNE2のベロシティが元のベロシティ(図7(b))から変移する。このように、各ノートイベントNE毎にベロシティの設定、変更がなされる。
なお、楽音特性変更の処理の手法は、ノートオン時点におけるパラメータ値に応じて変更する手法に限られない。例えば、ノートオフ時点におけるパラメータ値を採用してもよいし、ノートオン時点とノートオフ時点の両パラメータ値の平均値を採用してもよい。あるいは、ノートオン時点からノートオフ時点までの最大値、最小値または中央値等を採用してもよい。また、ノートオン時点の値を初期値とし、ノートオフ時点の値を目標値としたLPF処理を施した結果としてのノートオフ時点での値等、特定の演算処理を施した後の値を採用してもよい。
また、ベロシティに代えて、各種コントロールチェンジの値を楽音特性変更処理の対象にできるのは上述の通りであるが、コントロールチェンジの値に適用する場合は、抑揚データのパラメータの時間的変化が図6〜図8に示すような折れ線状では好ましくない。そこで、この場合は、適当なカーブとなるように、LPFをかける等の適当な演算処理を施した上で適用するのが望ましい。なお、抑揚データが示すパラメータは、アナログデータ、デジタルデータのいずれであってもよい。
これらが図3のステップS324における楽音特性変更処理であるが、この処理は曲データの全区分について同様になされる。これにより、曲データに表情付けがなされる。なお、同処理は、ユーザが欲する区分についてのみ行えるようにしてもよい。また、曲データには通常、複数の楽音特性が付随するが、変更処理を欲する全ての楽音特性について前記ステップS313〜S325の処理を行えばよい。
続くステップS325では、前記ステップS324で楽音特性が変更された後の曲データを表情付け処理済み曲データとして登録する。この登録は、RAM7に格納されることでなされる。その際、表情付け処理済み曲データを元の曲データに上書きするようにしてもよいし、元の曲データとは別個に格納するようにしてもよいが、これらはユーザが任意に選択できるようにするのが好ましい。その後、本処理を終了する。
本実施の形態によれば、分割された曲データに適応する抑揚データが抽出、特定され、曲データの各区分に合うように抑揚データの各区分が時間的にそれぞれ伸張され、伸張された抑揚データで規定されるパラメータの時間的変化に基づいて曲データの各区分の楽音特性が変更制御されることで、曲データに感情を込め楽曲らしさを出す「表情付け」がなされる。従って、楽音特性が半自動的に適当に制御されるので、ユーザは一音一音に楽音特性を設定する必要がなくなり、音楽や楽器の特性の熟知を必要とせず、繁雑な作業から解放され、幅広いユーザが簡単に表情付けを行うことが可能となる。特に、「自動分割」、「均等分割」では、分割処理が半自動的に行われるので、ユーザの負担が減少するだけでなく、「自動分割」では、曲データのメロディ構成等に適した態様で分割されることから、一層適切な楽音特性の制御がなされる。また、「マニュアル分割」では、ユーザの意思に忠実でより高度の表情付けを望む場合に応えることができる。よって、簡単な操作にて曲データに自然な表情付けを行うことができる。また、分割方法を状況に応じて選択できるので、使い勝手を向上することができる。
しかも、楽音特性の制御は、抑揚データの各区分に対応する曲データの各区分毎に行われるので、各区分毎に、最適な表情付けが行われる。よって、曲データの各区分に適した表情付けを曲データ全体について簡単な操作にて適切に行うことができる。
なお、本実施の形態では、曲データの分割処理で分割された区分数に完全に合致する抑揚データのみが抽出の対象となるようにしたが、これに限るものではない。例えば、抑揚データにおいて、メロディ構成が近似しているが区分数が曲データとは僅かに異なる場合があり得る。その場合は、区分数の合致条件を緩和し、1〜2個程度の相違であれば抽出の対象に含めるようにしてもよい。ただし、最終的には曲データと抑揚データとの区分数の対応はとる必要がある。
この状況では、分割方法を複数併用してもよい。例えば「自動分割」で分割していた場合は、「マニュアル分割」をさらに併用してユーザによりマニュアルで区分数を変更すればよい。しかし、操作を簡単にするため「マニュアル分割」を避けたい場合もある。そこで、曲データの区分数が抑揚データのそれよりも少ないときは、「自動分割」に「均等分割」を併用し、「自動分割」で分割された区分のうち最も長い区分についてはさらに「均等分割」を行えばよい。逆に曲データの区分数が抑揚データのそれよりも多いときは、上述したフレーズの区切りと判断するための条件を厳しく設定して「自動分割」をやり直せばよい。例えば、指定する休符長を長くする等である。
(第2の実施の形態)
本発明の第2の実施の形態では、パネル処理が第1の実施の形態と異なり、その他は第1の実施の形態と同様である。従って、図1、図2、図9〜図16を用いて本第2の実施の形態を説明する。
図9、図10は、第2の実施の形態において図2のステップS202で実行されるパネル処理のフローチャートを示す図である。
まず、ステップS901〜S912では、図3、図4のステップS301〜S312と同様の処理を実行する。前記ステップS902の判別の結果、パネル入力が表情付け処理の指示である場合は、ステップS913〜S922で表情付け処理を実行する。
すなわち、まず、ステップS913で、表情付けメニューを表示装置19に表示させる。表情付けメニューでは、表情付けの種類、及び曲データにおける表情付けを施すべき時間的区間(以下、「指定区間」と称する)を指定することができる。表情付けの種類を示す項目には、少なくとも音量の変化処理が含まれる。指定区間は、曲データの一部であっても全体であってもよい。通常は、小節単位で指定される。
次に、表情付け区間、すなわち指定区間と、表情付けの種類の選択、指定を受け付け(ステップS914)、表情付けの種類として「音量の変化処理」が選択されたか否かを判別する(ステップS915)。その判別の結果、「音量の変化処理」が選択された場合は、ステップS916に進み、音量変化パターンの選択メニューを表示装置19に表示させ、次に、表示した選択メニューにて、音量変化パターンの形状の受け付けを行う(ステップS917)。
図11は、表示装置19に表示される音量変化パターンの選択メニューの一例を示す図である。音量変化パターンは、周期的に変化する波形状のパターンであり、後述するように、このパターンに応じて曲データの指定区間の音量が変更、設定される。
同図に示すように、上記選択メニューには、大項目として「変化パターンの選択」、「組み合わせ波形の設定」及び「スタート位置」がある。「変化パターンの選択」では、周期、レベル変化量、変化カーブ種及びスタートの方向(上/下)の設定が可能である。
図12は、設定される音量変化パターンの一例を示す図である。図13は、変化カーブ種の例を示す図である。
「変化パターンの選択」において、周期の設定では、1周期の小節数Nを設定する。例えば図11では「4」に設定されている。レベル変化量の設定では、基準レベルPを100%とした場合における最低値MIN及び最高値MAXを設定する(図12参照)。例えば図11では80〜140%に設定されている。変化カーブ種の設定では、直線または各種曲線が設定される。図13(a)、(b)、(c)に示すように、変化カーブ種としては線SA、SB、SCが設けられており、これらの中から所望の変化カーブ種を選択する。例えば図11では線SA(直線)が設定されている。スタートの方向(上/下)の設定では、音量変化パターンの始点からレベルが上方に移行するのか下方に移行するのかを設定する。例えば図11では「上がる」に設定され、上方に移行することが設定されている。
次の大項目の「組み合わせ波形の設定」では、図11に示すように、組み合わせ波形の有無のほか、組み合わせ波形が「有」の場合は、組み合わせ波形についての周期、レベル変化量、変化カーブ種及びスタートの方向(上/下)の設定が可能である。なお「組み合わせ波形」の音量変化パターンは、「変化パターンの選択」において最初に設定された元の音量変化パターンに対して組み合わされる音量変化パターンのことであり、複数設定することも可能である。
「組み合わせ波形の設定」において、組み合わせ波形の有無では「有」または「無」が設定される。例えば図11では「有」が設定されている。なお、「無」である場合は、上記「変化パターンの選択」で設定した元の音量変化パターンがそのまま最終的な音量変化パターンとされる。その他、周期、レベル変化量、変化カーブ種及びスタートの方向(上/下)の設定は上記元の音量変化パターンの場合と同様であり、例えば図11では、周期=小節数1、レベル変化量=100〜120%、変化カーブ種=線SA、スタートの方向=「上がる」にそれぞれ設定されている。
次の大項目の「スタート位置」では、図11に示すように、時間的にずらす位置が「+」または「−」と音符種類とによって選択可能である。なお、後述するように、音量変化パターンの始点の指定区間に対する時間的位置は、指定区間における小節線を基準に設定され、「スタート位置」によるずらし量の設定がない「0」の場合は、音量変化パターンの始点が小節線に一致する。
時間的位置の指定は、図14に示すようなボックス30を表示装置19に表示させて行う。例えば、ボックス30をマウスポインタでクリックすると、「+」または「−」と2分音符や8分音符等の音符種類とを組み合わせたものが複数表示される。ユーザは、これらの中から所望のものをクリックで選択する。例えば図11に示すように、「+」と8分音符との組み合わせが選択されると、8分音符分の長さだけ音量変化パターンの始点を遅い方向にずらすことができる。
図9に戻り、続くステップS918では、前記ステップS917で受け付けた設定値に沿った音量変化パターンを生成する。
図15は、生成された音量変化パターン及び組み合わせによる複合的な音量変化パターンの一例を示す図である。図11のような「変化パターンの選択」及び「組み合わせ波形の設定」を行った場合、「元の音量変化パターン」は図15(a)に示すようになり、「組み合わせ波形」の音量変化パターンは同図(b)示すようになる。そして、「元の音量変化パターン」と「組み合わせ波形」の音量変化パターンとを合成すると、同図(c)に示すように、複合的な音量変化パターンが最終的な音量変化パターンとして生成される。これにより、自然なうねりのような変化を表現することができる。なお、自然なうねりを実現する観点からは、組み合わせる音量変化パターンは、周期が互いに異なっているのが望ましい。
次に、指定区間における小節線を基準に音量変化パターンの位置調整を行って、音量変化パターンを指定区間に対応させる(ステップS919)。
図16は、楽譜と音量変化パターンの対応の一例を示す図である。
同図(a)は、フレーズが小節の先頭から始まる強起の楽譜例を示し、同図(c)は、フレーズが小節の途中から始まる弱起の楽譜例を示す。例えば、同図(b)に示すような音量変化パターンの始点をSTとすると、同図(a)の楽譜に対し、始点STが1小節目の先頭の小節線に設定される。
一方、「スタート位置」のずらしの設定があった場合でも、まずは同図(d)に示すように、音量変化パターンの始点STは、同図(c)の楽譜に対し、小節線に設定される。しかし、「スタート位置」の設定が、例えば「−」及び「付点4分音符」の組み合わせであった場合は、同図(e)に示すように、8分音符3個分だけ早い方向へずらせた位置に始点STが設定される。これにより、弱起の場合にも容易に対応することができる。
なお、弱起の曲の場合でもフレーズの切れ目より小節線の方が表情付けにとって重要である場合もあるので、その場合は、弱起の曲であってもスタート位置のずらしを設定しないようにすればよい。
次に、ステップS920で、対応させて設定された音量変化パターンに合わせて、指定区間の音符の音量値(ベロシティ)を修正設定する。そして、修正設定した値によって、曲データを更新、記録して(ステップS921)、本処理を終了する。
なお、音量値の修正設定では、音量変化パターンに対して完全にベロシティ値の高さを合わせてしまうようにするが、既に設定されているベロシティ値を、音量変化パターンで規定される値に応じた割合で修正するようにしてもよい。
一方、前記ステップS915の判別の結果、「音量の変化処理」が選択されなかった場合は、その他の種類の表情付けを行い(ステップS922)、本処理を終了する。
本実施の形態によれば、周期的に変化する波形状の音量変化パターンが形成され、形成された音量変化パターンに基づいて、曲データの音量特性を修正するようにしたので、簡単な操作で音量に周期的変化を与え、クレシェンドやデクレシェンドほど明確ではない音量の微妙な変化を付加することができ、曲データに自然な表情付けを行うことができる。また、2種類以上の音量変化パターンを組み合わせた複合的な音量変化パターンを形成するようにしたので、自然なうねりのような変化を表現でき、より自然な表情付けを行うことができる。
また、指定区間に対する音量変化パターンの時間的位置は、小節線を基準に設定することで、複雑な作業をすることなく強起の場合に容易に対応することができると共に、時間的位置を任意にシフト可能にしたので、例えば、弱起の場合にも容易に対応でき、フレーズの進行に適した表情付けを可能として実用性を高めることができる。
また、音量変化パターンの変化カーブ種として直線だけでなく曲線も設けたので、より生々しい自然な変化を与えることができる。
なお、音量変化パターンの周期は、小節数で設定し、小節長の倍数に関係する長さに形成されるようにして、音楽的に自然な音量変化を容易に付すことができるようにしたが、これに限るものではない。例えば、1小節の半分の長さに設定できるようにしてもよい。
なお、音量変化パターンは各種値を設定して演算により生成するようにしたが、予め音量変化パターンテーブルを設けておき、該テーブルから所望の音量変化パターンを読み出すようにしてもよい。
なお、本実施の形態では、楽譜記号には現れないような微妙な抑揚の再現について考えたが、楽譜記号に現れるような明確な抑揚も同時に再現するようにしてもよい。その場合には、楽譜記号から求められるクレッシェンドやデクレッシェンドの方を、音量変化パターンによる周期的な抑揚よりも強調して再現するようにすれば、全体として楽譜上のクレッシェンド等による抑揚が聞き取れるが、それでもなお、一定感のない自然な変化を与えることができるようになる。
なお、音楽には楽譜に記載されていない必然的な抑揚がある。例えば、音階進行に従った抑揚とか、フレーズ終止では音量を弱めにする、等である。そのような様々な音量変化を音量変化パターンによる音量変化と併用することで、より自然な表情の再現が可能になる。
なお、上述した各実施の形態の機能を実現するためのソフトウェアのプログラムを記録した記憶媒体を、本演奏信号処理装置に供給し、コンピュータ(CPU5やMPU)が記憶媒体に格納されたプログラムを読み出し実行することによっても、本発明の目的が達成されることはいうまでもない。
この場合、記憶媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記憶媒体は本発明を構成することになる。
プログラムを供給するための記憶媒体としては、たとえば、前記HDD11のハードディスク、CD−ROM12のディスク、MO、MD、FD24、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどの可搬型の記憶媒体を用いることができる。プログラムは、上記各実施の形態のように可搬型の記憶媒体からRAM7に直接転送されるようにするほか、上記記憶媒体からHDD11内のハードディスクに転送されるようにするようにしてもよい。また、他のMIDI機器100や通信ネットワーク101を介してサーバコンピュータ102からプログラムが供給されるようにしてもよい。
また、コンピュータが読み出したプログラムを実行することにより、上述した各実施の形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって上述した各実施の形態の機能が実現されるようにしてもよい。
さらに、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU5などが実際の処理の一部または全部を行い、その処理によって上述した各実施の形態の機能が実現されるようにしてもよい。
2 パネルスイッチ、 3 押鍵検出回路、 5 CPU、 7 RAM、 9 表示制御回路、 11 ハードディスクドライブ(HDD)、 15 音源回路、 16 効果回路、 17 サウンドシステム、 19 表示装置、 20 マウス情報検出回路、 21 マウス