JP2003255949A - 音高自動修正装置および自動作曲装置 - Google Patents

音高自動修正装置および自動作曲装置

Info

Publication number
JP2003255949A
JP2003255949A JP2002060149A JP2002060149A JP2003255949A JP 2003255949 A JP2003255949 A JP 2003255949A JP 2002060149 A JP2002060149 A JP 2002060149A JP 2002060149 A JP2002060149 A JP 2002060149A JP 2003255949 A JP2003255949 A JP 2003255949A
Authority
JP
Japan
Prior art keywords
pitch
performance data
data
music
correction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002060149A
Other languages
English (en)
Other versions
JP3873781B2 (ja
Inventor
Eiichiro Aoki
栄一郎 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2002060149A priority Critical patent/JP3873781B2/ja
Publication of JP2003255949A publication Critical patent/JP2003255949A/ja
Application granted granted Critical
Publication of JP3873781B2 publication Critical patent/JP3873781B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【課題】 ユーザの演奏を表す演奏データを修正して、
音楽的に好ましい演奏データを簡単に作成できるように
する。 【解決手段】 サーバは、クライアント端末に対して、
要求された伴奏データを送信する。クライアント端末側
では、この伴奏データを再生しながら、ユーザがモチー
フメロディを構成する演奏データを入力する。この演奏
データはサーバに送信され、サーバはこの演奏データを
音楽的に適合するように音高を修正する。この音高修正
においては、強拍音がコード音に修正されるとともに弱
拍音はスケール音に修正されたり、強拍音が倚音に修正
されるとともに次の音がコード音に修正されたりする。
また、直前の音との音高差が音楽的な進行に適合するよ
うに修正される。サーバは、この修正されたモチーフメ
ロディに基づいて一楽曲を自動作曲して、クライアント
端末に送信する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、演奏データの音高
を修正する音高修正装置、同修正された演奏データを用
いて楽曲を自動的に作曲する自動作曲装置、ならびに同
音高修正および自動作曲のためのコンピュータプログラ
ムに関する。
【0002】
【従来の技術】従来から、例えば特開平09−2928
78号公報に示されているように、各鍵に対応させてラ
ンプをそれぞれ配置しておいて、与えられた和音に適し
たスケール上の音高に対応する鍵に設けたランプを点灯
するようにした演奏支援装置は知られている。これによ
れば、自動的に発生される和音に対してアドリブ演奏な
どを行う場合でも、点灯しているランプに対応した鍵を
押鍵していれば、与えられた和音に適した演奏音を発生
させることができる。
【0003】
【発明が解決しようとする課題】しかしながら、上記従
来の装置においては、演奏すべき鍵が指示されるもの
の、ユーザは、前記指示されている中のいずれかの鍵を
正しく押鍵する必要があり、初心者にとって、音楽的に
適切な演奏音を発生させることが必ずしも易しくはなか
った。また、和音に適切な音高が選択されるものの、そ
の他の音楽見地からして必ずしも音楽的に好ましいもの
のみが選択されるわけではなかった。
【0004】
【発明の概要】本発明は、上記問題に対処するためにな
されたもので、その目的は、ユーザの演奏を表す演奏デ
ータを修正して、音楽的に好ましい演奏データを簡単に
作成できるようにした音高自動修正装置およびコンピュ
ータプログラムを提供することにある。また、前記音楽
的に好ましい演奏データを楽曲の一部に用いて全楽曲を
簡単に自動作曲する自動作曲装置およびコンピュータプ
ログラムを提供することにある。
【0005】上記目的を達成するために、本発明の第1
の特徴は、音高をそれぞれ表すとともに音楽進行に従っ
た一連の演奏データを入力し、前記入力した各演奏デー
タを、その前の演奏データによって表された音高に応じ
て、与えられたスケール上の音高を表す演奏データに修
正するようにしたことにある。
【0006】この場合、演奏者の意志を反映させるため
に、例えば、演奏データが与えられたスケール上の音高
を表している場合には、その音高を表す演奏データを維
持する。そして、演奏データが与えられたスケール上の
音高を表していない場合にのみ、スケール上の音高を表
す演奏データに修正するとよい。そして、修正された演
奏データも、演奏者の意志を反映するために、入力した
演奏データよって表された音高に対して小さな音高差を
有する音高を表すものに限定するとよい。例えば、入力
した演奏データによって表された音高に対して、半音だ
け上下に異なる音高を表す演奏データに限定するとよ
い。
【0007】また、前記第1の特徴における演奏データ
の修正においては、例えば、各演奏データを、その前の
演奏データによって表された音高との差が所定の音楽ル
ールに従った音高差となる音高を表す演奏データに修正
するようにするとよい。この場合、前記所定の音楽的ル
ールとは、例えば、直前の演奏データによって表された
音高に対して、上下いずれかの方向に短3度から完全5
度までの範囲内とするとよい。
【0008】そして、この場合も、演奏データが与えら
れたスケール上の音高を表している場合には、その音高
を表す演奏データを維持するとよい。また、演奏データ
が与えられたスケール上の音高を表していない場合であ
って、入力した演奏データによって表された音高に対し
て小さな音高差(例えば、半音)を有する音高を表すも
のが複数存在する場合にのみ、前記音楽ルールに従った
音高差となる音高を表す演奏データに修正するようにす
るとよい。これに代えて、複数の音高の中からランダム
にいずれか一つの音高を選択して、同選択した音高を用
いて演奏データを修正するようにしてもよい。
【0009】この第1の特徴によれば、演奏者は、演奏
すべき演奏操作子を意識することなく自由に演奏操作し
て一連の演奏データを作成することができる。また、こ
の音高修正装置の演奏データの修正により、各演奏デー
タに対して直前の演奏データによる音高が考慮され、最
終的には音楽的に好ましい一連の演奏データを得ること
ができる。
【0010】本発明の第2の特徴は、音高をそれぞれ表
すとともに音楽進行に従った一連の演奏データを入力
し、前記入力した各演奏データを、その音楽進行上の位
置に応じて、与えられたスケール上の音高を表す演奏デ
ータにそれぞれ修正するようにしたことにある。
【0011】具体的には、例えば、音楽進行に対応した
一連の和音を表す和音情報が与えられており、前記第2
の特徴における演奏データの修正とは、例えば、音楽進
行上の位置が強拍位置にある演奏データに関しては、前
記与えられるとともに音楽進行上の位置に対応した和音
情報により表された和音の構成音の音高を表す演奏デー
タに修正し、かつそれ以外の演奏データに関しては、与
えられたスケール上の音高を表す演奏データに修正する
ものである。
【0012】そして、この場合も、演奏者の意志を反映
させるために、例えば、入力した演奏データによって表
された音高に対して最も小さな音高差を有する和音の構
成音の音高およびスケール上の音高を表す演奏データに
修正するとよい。また、前記条件に該当するとともに同
一音高差を有する音高が複数存在する場合には、前記音
楽的ルールを適用するようにすればよい。これに代え
て、複数の音高の中からランダムにいずれか一つの音高
を選択して、同選択した音高を用いて演奏データを修正
するようにしてもよい。
【0013】また、前記第2の特徴の具体例としては、
例えば、音楽進行に対応した一連の和音を表す和音情報
が与えられており、前記第2の特徴における演奏データ
の修正とは、音楽進行上の位置が強拍位置にある演奏デ
ータに関しては、前記与えられるとともに音楽進行上の
位置に対応した和音情報により表された和音に対する倚
音の音高を表す演奏データに修正し、倚音の音高に修正
した演奏データの次の演奏データに関しては、前記与え
られるとともに音楽進行上の位置に対応した和音情報に
より表された和音の構成音の音高を表す演奏データに修
正し、かつそれら以外の演奏データに関しては、与えら
れたスケール上の音高を表す演奏データに修正するもの
である。
【0014】そして、この場合も、演奏者の意志を反映
させるために、例えば、入力した演奏データよって表さ
れた音高に対して最も小さな音高差を有する倚音の音
高、和音の構成音の音高およびスケール上の音高を表す
演奏データに修正するとよい。また、前記条件に該当す
るとともに同一音高差を有する音高が複数存在する場合
には、前記音楽的ルールを適用するようにすればよい。
これに代えて、複数の音高の中からランダムにいずれか
一つの音高を選択して、同選択した音高を用いて演奏デ
ータを修正するようにしてもよい。
【0015】この第2の特徴によっても、演奏者は、演
奏すべき演奏操作子を意識することなく自由に演奏操作
して一連の演奏データを作成することができる。また、
この音高修正装置の演奏データの修正により、各演奏デ
ータに対して音楽進行上の位置が考慮され、最終的には
音楽的に好ましい一連の演奏データを得ることができ
る。
【0016】さらに、本発明の第3の特徴は、音高をそ
れぞれ表すとともに音楽進行に従った一連の演奏データ
を入力し、前記入力した各演奏データを、所定の音楽ル
ールに従って、与えられたスケール上の音高を表す演奏
データにそれぞれ修正し、前記修正された一連の演奏デ
ータをモチーフメロディとして用いて、一楽曲分の楽音
の音高をそれぞれ表す演奏データを自動的に作曲するよ
うにしたことにある。
【0017】この場合、所定の音楽ルールに従って演奏
データを修正する。例えば、前記第1および第2の特徴
である音高修正を採用するようにするとよい。また、こ
の場合、前記演奏データの修正として複数種類の修正モ
ードを用意しておき、演奏データの修正モードを前記複
数種類の修正モードのうちから選択するようにするとよ
い。
【0018】この第3の特徴によっても、演奏者は、演
奏すべき演奏操作子を意識することなく自由に演奏操作
して、モチーフメロディとなる一連の演奏データを作成
することができる。したがって、音楽的に適しかつモチ
ーフメロディを用いた自動作曲が簡単に行えるようにな
る。
【0019】
【発明の実施の形態】以下、本発明の一実施形態を図面
を用いて説明すると、図1は、本発明に係る音高自動修
正技術および自動作曲技術を適用したシステムを概略図
により示している。
【0020】このシステムは、インターネットなどの通
信ネットワーク10を備えている。この通信ネットワー
ク10には、一つまたは複数のサーバコンピュータ20
および複数のクライアント端末30が接続されている。
【0021】サーバコンピュータ20は、キーボード、
ディスプレイ、コンピュータ本体部(CPU,ROM、
RAM、ハードディスクなどを内蔵)などからなる一般
的なコンピュータ装置によって構成されている。このコ
ンピュータ本体部内のROM,ハードディスグ,RAM
などの記録媒体には、図3のフローチャートに示すサー
バプログラムが記憶されている。また、サーバコンピュ
ータ20には、ハードディスク、光ディスクなどで構成
されて、各種データを記憶したデータベース21が接続
されている。このデータベース21は、特に多数種類の
伴奏データを記憶している。
【0022】各伴奏データは、図4(A)に示すように、
ジャンル名データ、伴奏種類名データ、調データおよび
和音パターンデータからなる。ジャンル名データは、伴
奏パターンの属するジャンル名を表す。伴奏種類名デー
タは、伴奏パターンの種類を表す。調データは、伴奏パ
ターンの調名を表す。和音パターンデータは、所定の長
さ(例えば、2小節、4小節、8小節など)を有する音
楽進行に従った一連の和音情報である。そして、この和
音パターンデータは、開始および終了を示すスタートデ
ータおよびエンドデータの間に挟まれた複数の和音名デ
ータおよび相対時間データからなる。和音名データは、
Cメジャー、Cマイナなどの和音名を表す。相対時間デ
ータは、和音名の変更される時間間隔を表す。
【0023】クライアント端末30は、例えば電子楽器
で構成されており、図2に示すように、演奏操作子群3
1、パネル操作子群32及びディスプレイ33を備えて
いる。演奏操作子群31は、例えば複数の鍵からなる鍵
盤などで構成されており、それらの操作により楽音の発
生および発生楽音の音高を指示する。パネル操作子群3
2は、操作パネルにそれぞれ配設され、それらの操作に
より発生楽音の音色、音量などの指定、ディスプレイ3
3の表示内容の指示などを含む電子楽器全体の作動を指
示する。なお、このパネル操作子群32には、テンキ
ー、カーソル移動キー、マウスなどの操作子も含まれ
る。これらの演奏操作子群31及びパネル操作子群32
の各操作は、バス40に接続された検出回路34,35
によりそれぞれ検出される。ディスプレイ33は、CR
T表示器、液晶表示器などで構成されており、各種情報
を文字、数字または画像表示するものである。このディ
スプレイ33は、バス40に接続された表示回路36に
より表示制御される。
【0024】また、この電子楽器は、バス40に接続さ
れた音源回路37も備えている。音源回路37は、バス
40を介して供給された演奏情報(キーオン信号、キー
オフ信号、音高データ(音名データ)、音色情報など)
に基づいて楽音信号を形成して出力する。音源回路37
には、D/A変換器、アンプ、スピーカからなるサウン
ドシステム38が接続されており、同システム38は音
源回路37からの楽音信号に対応した楽音を発生する。
【0025】また、バス40には、CPU41,ROM
42、RAM43、タイマ44および外部記憶装置45
も接続されている。CPU41,ROM42、RAM4
3およびタイマ44はマイクロコンピュータ本体部を構
成するもので、各種プログラムを実行して電子楽器の各
種動作を制御する。
【0026】外部記憶装置45は、予め組み込まれたハ
ードディスクHDなどの記録媒体、着脱可能に組み付け
られるフレキシブルディスクFD、コンパクトディスグ
CDなどの記録媒体と、同記録媒体に対してプログラム
及びデータの読み書きを可能とするドライブ装置とから
なる。外部記録媒体には、各種プログラムおよび各種デ
ータが記憶されている。本実施形態では、特に図3のフ
ローチャートに示すクライアントプログラムが記憶され
ている。また、各種プログラムおよび各種データの一部
に関しては、ROM42にも記憶されている。
【0027】さらに、バス40には、MIDIインター
フェース回路46および通信インターフェース回路47
も接続されている。MIDIインターフェース回路46
は、鍵盤などの演奏装置、他の楽器、パーソナルコンピ
ュータ、自動演奏装置(シーケンサ)などの他のMID
I対応機器51に接続されて、同機器51からMIDI
情報を受信し、または同機器51にMIDI情報を送信
するためのインターフェース回路である。通信インター
フェース回路47は、通信ネットワーク10を介してサ
ーバコンピュータ20に接続され、同サーバコンピュー
タ20に対してデータおよびプログラムの授受を行う。
【0028】次に、上記のように構成した実施形態の動
作を説明する。まず、ユーザ(演奏者)が、クライアン
ト端末30(電子楽器)を用いて、図示しないプログラ
ムの実行によりサーバコンピュータ20の自動作曲用ウ
ェブページにアクセスする。これに応答して、サーバコ
ンピュータ20は、ステップS10にて図3のサーバプ
ログラムの実行を開始し、ステップS12にて自動作曲
用ウェブページデータをクライアント端末30に送信す
る。
【0029】一方、クライアント端末30においては、
図3のステップC10にてクライアントプログラムの実
行を開始しており、ステップC12にて、前記サーバコ
ンピュータ20からの自動作曲用ウェブページデータを
受信するとともに、同受信データに基づいてディスプレ
イ33に自動作曲用ウェブページを表示する。この表示
の中には伴奏データの種類を指定する画面も含まれてお
り、ユーザは、次のステップC14にて、この画面を見
ながらパネル操作子群32を操作することにより、所望
の伴奏データを指定する。なお、この伴奏データの指定
は、伴奏データの種類を直接指定することもできるし、
サーバコンピュータ20との交信をしながら伴奏データ
の種類を指定するようにしてもよい。この場合、データ
ベース21に記憶されているジャンル名データ、伴奏種
類データを用いて、ユーザが希望する伴奏データを選択
するようにするとよい。
【0030】サーバコンピュータ20は、前記伴奏デー
タの種類の指定に応答して、ステップS14にて指定さ
れた種類の伴奏データをデータベース21から読み出
す。そして、この読み出した伴奏データを内蔵のRAM
に一旦記憶するとともに、クライアント端末30に送信
する。クライアント端末30は、この送信された伴奏デ
ータを受信してRAM43に記憶し、ステップC16に
て伴奏データの再生処理およびモチーフメロディの入力
処理を実行する。
【0031】伴奏データの再生処理においては、CPU
41は、図示しない自動演奏プログラムの実行により、
前記RAM43に記憶した伴奏データ中の和音名データ
を時間経過に従って順次読出して、和音名データによっ
て表された和音を構成する複数の和音構成音を表す音高
データを音源回路37に供給する。音源回路37は、前
記供給された音高データに基づいて、前記複数の和音構
成音に対応した複数の楽音信号を同時に形成してサウン
ドシステム38に出力する。そして、サウンドシステム
38はこの複数の楽音信号に対応した複数の楽音(すな
わち和音)を発音する。したがって、サウンドシステム
38からは、伴奏パターンに従った和音が順次発音さ
れ、ユーザ(演奏者)は和音演奏を聴取することにな
る。
【0032】一方、ユーザは、この和音演奏を聞きなが
ら、演奏操作子群31を用いてモチーフメロディを演奏
する。このモチーフメロディの演奏データは、CPU4
1による図示しないプログラムの実行により、音源回路
37に供給される。音源回路37は、前記和音の場合と
同様に前記モチーフメロディの演奏データに対応した楽
音信号を形成して出力する。したがって、サウンドシス
テム38からは、このモチーフメロディに対応した楽音
も和音と同時に発音される。
【0033】また、このモチーフメロディの演奏データ
はRAM43にも時間経過に従って記憶される。この演
奏データは、例えば図4(B)のフォーマット例に示すよ
うに、押鍵時の演奏イベントデータ(キーオンデータ、
音高データなど)、離鍵時の演奏イベントデータ(キー
オフデータ、音高データなど)およびこれらの演奏イベ
ントデータ間の経過時間を表す相対時間データからな
る。したがって、このモチーフメロディの演奏データの
音楽的進行(すなわち時間的進行)は、前記伴奏データ
の音楽的進行(すなわち時間的進行)と全く一致する。
なお、このモチーフメロディは2〜4小節程度の短いも
のである。
【0034】このようなモチーフメロディの演奏が終了
すると、CPU41は、ステップC18にて、音高修正
モードの選択処理およびモチーフメロディデータの送信
処理を実行する。具体的には、CPU41は、複数種類
の音高修正モードをディスプレイ33に表示して、いず
れかの音高修正モードを選択することをユーザに促す。
この音高修正モードは前記モチーフメロディの演奏デー
タ中の音高データを音楽的に適切なものに修正するモー
ドで、本実施形態の場合には3種類の音高修正モードが
用意されている。なお、この音高修正モードについて
は、詳しく後述する。ユーザが、ディスプレイ33を見
ながらパネル操作子群32を用いて所望の音高修正モー
ドを選択すると、CPU31は、このステップC18に
て、前記選択された音高修正モードを表すデータと、前
記RAM43に記憶したモチーフメロディの演奏データ
をサーバコンピュータ20に送信する。
【0035】サーバコンピュータ20は、この送信され
た音高修正モードを表すデータおよびモチーフメロディ
の演奏データを内蔵のRAM内に記憶する。そして、ス
テップS16にて、モチーフメロディの演奏データのタ
イミングを自動修正する。いわゆる、モチーフメロディ
の演奏データをリズムタイミングに関してクオンタイズ
処理する。これにより、モチーフメロディの演奏タイミ
ングに多少のずれがあっても、このタイミングずれは修
正される。
【0036】具体的には、RAM内に以前に記憶した伴
奏データのジャンル名データおよび伴奏種類名データに
基づいて拍子(例えば、3拍子、4拍子)を検出し、演
奏データ中の押鍵に関する演奏イベントデータ(キーオ
ン、音高)の出現タイミングが前記検出拍子に対応した
音符タイミングに一致するように相対時間を修正する。
例えば、押鍵に関する演奏イベントデータの出現タイミ
ングを、前記伴奏データと対応させて、8分符、16音
符、3連符の出現タイミングに一致させる。拍子の検出
には、ジャンル名データおよび伴奏種類名データと、拍
子の種類とを対応させたテーブルなどを利用するとよ
い。また、拍子の種類をジャンル名データおよび伴奏種
類名データから検出するのに代えて、拍子の種類を表す
拍子データを伴奏データ中に含めておいてもよい。
【0037】次に、サーバコンピュータ20は、ステッ
プS18にて、前記ユーザによって選択された音高修正
モードに応じて、前記タイミングの修正されたモチーフ
メロディの演奏データの音高を修正する。この音高の修
正処理については詳しくは後述するが、図5の第1音高
修正プログラム、図8の第2音高修正プログラムまたは
図11,12の第3音高修正プログラムの実行により、
演奏データ中の音高データの一部が、伴奏データによっ
て指定されるスケール上の音高を表すデータ、伴奏デー
タによって指定される和音の構成音の音高を表すデー
タ、または倚音の音高を表すデータなどに変換される。
なお、これらの第1〜第3音高修正プログラムにて利用
されるスケール(イオニアン、リディアンなどの音階)
は、このステップS18にて、伴奏データ中の和音名デ
ータおよび調データにより検出する。また、これに代え
て、スケール名を表すスケールデータも伴奏データ中に
含めておくようにしてもよい。
【0038】これらのステップS16,S18の処理
後、サーバコンピュータ20は、ステップS20にて、
前記タイミングおよび音高を自動修正したモチーフメロ
ディの演奏データをクライアント端末30(電子楽器)
に送信する。クライアント端末30においては、前記送
信されたモチーフメロディの演奏データを受信してRA
M42に記憶して、ステップC20にて同演奏データを
音符情報に変換し、同音符情報によって表された楽譜を
ディスプレイ33に表示する。この場合、音符情報は、
音高(音名)を表す音高データおよび符長を表す符長デ
ータからなる。ただし、音高データには休符を表すデー
タも含まれる。なお、表示は楽譜の形式に限らず、演奏
データの内容を把握できれば、どのような形式であって
もよい。例えば、ピアノロール楽譜形式や、図7(B)に
示すような表示形式でもよい。また、これと同時に、前
記送信された演奏データを音源回路37に供給して、同
演奏データを再生してもよい。
【0039】次に、ステップC22の処理により、ユー
ザはディスプレイ33に表示されている楽譜を見なが
ら、パネル操作子群32を操作することにより、必要に
応じて表示楽譜を編集する。CPU41は、この編集に
応答して、前記RAM42に記憶したサーバコンピュー
タ20による修正済みのモチーフメロディの演奏データ
を修正する。そして、ステップC24にて前記修正済み
または修正しないモチーフメロディの演奏データをサー
バコンピュータ20に送信する。さらに、クライアント
端末30からは、ステップC26の処理により、サーバ
コンピュータ20に自動作曲用パラメータも送信され
る。この自動作曲用パラメータは、ユーザによるパネル
操作子群32の操作によって入力されるもので、例えば
楽節構成、シンコペーションの頻度、音楽の盛り上がり
度の時間変化などを表すパラメータである。
【0040】一方、サーバコンピュータ20において
は、前記クライアント端末30から送信されたモチーフ
メロディの演奏データおよび自動作曲用パラメータを受
信し、これらの受信データと内蔵のRAMに記憶してお
いた選択伴奏データとを用いて図示しない自動作曲プロ
グラムの実行により一楽曲を自動的に作曲する。この自
動作曲された楽曲は、前記モチーフメロディおよび伴奏
データを含むもので、16小節、32小節などの長さを
有するものである。そして、サーバコンピュータ20
は、ステップS24にてこの自動作曲された楽曲を表す
楽曲データをクライアント端末30に送信し、ステップ
S26にてサーバプログラムの実行を終了する。
【0041】クライアント端末30は、この送信された
楽曲データを受信し、ステップC28にてRAM43に
記憶するとともに、外部記憶装置45にも記憶する。ま
た、図示しない自動演奏プログラムの実行により、楽曲
データを時間経過に従って順次読み出して音源回路37
に順次供給することにより、自動作曲された音楽を再生
する。そして、ステップC30にて、このクライアント
プログラムの実行を終了する。
【0042】このように、自動作曲を希望するユーザ
(演奏者)は、演奏すべき演奏操作子を意識することな
く、自動的に発生される伴奏に合わせて自由に演奏操作
子群31を操作してモチーフメロディを演奏するだけで
よい。このモチーフメロディの演奏により、サーバコン
ピュータ20が自動的にタイミングおよび音高を修正す
るので、音楽的に適しかつモチーフメロディを用いた自
動作曲が簡単に行われるようになる。
【0043】次に、上記ステップS18にて選択的に実
行される第1〜第3音高修正プログラムについて順次説
明する。なお、これらのプログラムにおけるスケール
(音階)に関しては、上記ステップS18の処理によっ
て既に決定しているスケールが利用される。また、和音
に関しては、モチーフメロディに対応した和音進行中の
和音であって、伴奏データ中の和音名データによって特
定される和音が利用される。また、音高修正されるデー
タは、上記ステップS16の処理により既にタイミング
が修正されてRAMに格納されている演奏データである
(図4(B)参照)。そして、第1〜第3音高修正プログ
ラムの説明において、単にRAMという場合には、サー
バコンピュータ20に内蔵のRAMを指す。また、単に
音符データという場合には、前記演奏データ中の押鍵
(キーオン)に関する演奏イベントデータに含まれる音
高データを指す。
【0044】さらに、ここで、第1〜第3音高修正プロ
グラムの説明で用いる「スケール音」、「コード音」お
よび「倚音」について定義しておく。「スケール音」と
は、前述のように調及び和音によって決定されるスケー
ル(音階)を構成する音高群を表していて、スケールが
定められたときに和音との関係において利用可能な音高
群を指す。たとえば、和音がCメジャーでありかつスケ
ールがイオニアンスケールであれば、スケール音はC,
D,E,F,G,A,B音となる。「コード音」とは、
和音の構成音を表している。例えば、Cメジャー和音に
対するコード音はC,E,G音である。「倚音」とは、
非コード音で上下いずれかの方向に2度の進行をしてコ
ード音に結合する音高を有する音である。例えば、Cメ
ジャー和音に対して倚音になり得る音高群は、D,F,
A,B音の4種類であり、D音はC,E音に、F音は
E,G音に、A音はG音に、B音はC音に結合する。そ
して、これらのスケール音、コード音および倚音の後述
するプログラムによる判定、ならびにスケール音、コー
ド音および倚音となり得る候補音(修正候補)の抽出に
おいては、サーバコンピュータ20内にサーバプログラ
ムと共に記憶されているテーブルなどが適宜利用され
る。
【0045】a.第1音高修正プログラム この第1音高修正プログラムの実行は、図6のステップ
S100にて開始され、サーバコンピュータ20のCP
Uは、ステップS102にてRAM内の演奏データを読
み出すための変数nを「1」に設定する。次に、ステッ
プS104にて、n番目の音符データをRAMから読出
して入力し、ステップ106にてこの音符データに基づ
いて先頭音符を決定する。この先頭音符の決定において
は、入力した音符データがスケール音を表していれば、
同音符データを変更しないでそのまま先頭音符に関する
データとして決定する。この場合、RAM内の音高デー
タを変更しない。
【0046】一方、入力した音符データがスケール音を
表していなければ、まず、入力した音符データによって
表される音高に最も近い(すなわち最も音高差の小さ
な)スケール音を修正候補とする。これは、ユーザ(演
奏者)の演奏を反映させるためである。次に、修正候補
となる音高が一つであれば、同修正候補を修正音高とし
て決定する。一方、修正候補となる音高が複数であれ
ば、同修正候補中に調の基音に相当する音高があるかを
判定する。そして、修正候補中に調の基音に相当する音
高があれば、同音高を修正音高として決定する。これ
は、曲の開始感を出すためである。なお、この場合、通
常、もとの音高に対して半音間隔を有する2つの音高が
修正候補となることがほとんである。一方、修正候補中
に調の基音に相当する音高がなければ、修正候補中のい
ずれか一つの音高をランダムに選択する。このようにし
て修正候補中の音高が決定された場合には、RAM内の
n番目(1番目)の音符データは修正音高を表すデータ
に変更される。
【0047】このようにして先頭音符を決定した後、ス
テップS108〜S114の循環処理を実行する。ステ
ップS108においては、変数nを「1」だけカウント
アップする。ステップS110においては、変数nによ
って指定されるn番目の音符データをRAMから読み出
して入力する。ステップS112においては、スケール
音クオンタイズ処理ルーチンを実行し、n番目の音符デ
ータにスケール音クオンタイズ処理を適用して、同n番
目の音符を決定する。なお、このスケール音クオンタイ
ズ処理ルーチンについては、詳しく後述する。ステップ
S114においては、前記n番目の音符データがRAM
内の最後の音符データであるかを判定する。前記n番目
の音符データがRAM内の最後の音符データでなけれ
ば、ステップS114にて「No」と判定して、ステップ
S108に戻って循環処理を続行する。一方、前記n番
目の音符データがRAM内の最後の音符データであれ
ば、ステップS114にて「Yes」と判定して、ステッ
プS116にてこの第1音高修正プログラムの実行を終
了する。このような、ステップS108〜S114から
なる循環処理により、RAM内の2番目以降の音符デー
タが順次修正される。
【0048】次に、スケール音クオンタイズ処理ルーチ
ンについて詳しく説明する。このスケール音クオンタイ
ズ処理ルーチンの実行は、図6のステップS130にて
開始される。この開始後、サーバコンピュータ20内の
CPUは、ステップS132にて前記入力したn番目の
音符データがスケール音を表しているかを判定する。n
番目の音符データがスケール音を表していれば、ステッ
プS132にて「Yes」と判定し、ステップS134に
てn番目の音符データをそのまま採用し、ステップS1
46にてこのスケール音クオンタイズ処理ルーチンの実
行を終了する。この場合、RAM内のn番目の音符デー
タは変更されずにそのまま維持される。
【0049】一方、n番目の音符データがスケール音を
表していなければ、ステップS132にて「No」と判定
し、ステップS136以降の処理を実行する。ステップ
S136にてn番目の音符データにより表された音高に
最も近いスケール音は一つのみかを判定する。そして、
一つのみであれば、ステップS136にて「Yes」と判
定して、ステップS138に進む。ステップS138に
おいては、前記最も近いスケール音を修正音として採用
し、RAM内のn番目の音符データを前記採用した修正
音の音高を表すデータに変更する。そして、ステップS
146にて、このスケール音クオンタイズ処理ルーチン
の実行を終了する。
【0050】また、n番目の音符データにより表された
音高に最も近いスケール音が複数あれば、すなわち最小
かつ同一の音高差の複数のスケール音が存在すれば、ス
テップS136にて「No」と判定して、ステップS14
0に進む。ステップS140においては、前記複数のス
ケール音のうちで所定の音楽的進行ルールを満たすもの
があるかを判定する。所定の音楽的進行ルールを満たす
とは、例えば直前の音符の音高からの変化が上下いずれ
かの方向に短3度から完全5度までの範囲内にあること
を意味する。この場合、前記複数のスケール音のうちで
所定の音楽的進行ルールを満たすものがあれば、ステッ
プS140にて「Yes」と判定し、ステップS142に
進む。ステップS142においては、前記音楽的進行ル
ールを満たすスケール音を修正音として採用し、RAM
内のn番目の音符データを前記採用した修正音の音高を
表すデータに変更する。そして、ステップS146に
て、このスケール音クオンタイズ処理ルーチンの実行を
終了する。
【0051】一方、前記いずれの複数のスケール音も所
定の音楽的進行ルールを満たさなければ、ステップS1
40にて「No」と判定し、ステップS144に進む。ス
テップS144においては、前記複数のスケール音の中
からいずれか一つのスケール音を修正音としてランダム
に選択し、RAM内のn番目の音符データを前記選択し
た修正音の音高を表すデータに変更する。そして、ステ
ップS146にて、このスケール音クオンタイズ処理ル
ーチンの実行を終了する。なお、簡易システムのために
は、前記ステップS140,S142の処理を省略し
て、最も近いスケール音が複数存在する場合には、複数
のスケール音の中から常にランダムに一つのスケール音
を選択するようにしてもよい。
【0052】このような第1音高修正プログラムの実行
により、ユーザによって演奏されたモチーフメロディを
表す演奏データ中の音高データは、ユーザの意志を極力
反映するようにして、全てスケール音の音高を表すデー
タに修正される。また、この音高修正においては、音楽
的に適切な進行が採用されるように音高データが修正さ
れる。
【0053】ここで、調、和音およびスケールが、それ
ぞれハ長調、Cメジャーおよびイオニアンである場合を
例にして、この第1の音高修正について図面化すると、
図7(A)は、ユーザによる入力音(演奏音)と、同入力
音に対する修正候補音との関係を示している。また、図
7(B)は、モチーフメロディの開始時における1小節分
の入力音(C#,E,F#、G#音)の修正状態を示し
ている。図中、各欄における左側の○印は入力音の音高
を表し、各欄における右側の☆,○,□,◇印は修正後
の音高を表している。ここで、☆印は先頭音符として修
正された音高を表し、□印は音楽的進行ルールに適合す
るとして修正された音高を表し、◇印はランダムな選択
によって修正された音高を表している。なお、破線の丸
印は候補になったスケール音の音高を表している。
【0054】なお、この第1音高修正プログラムにおい
ては、スケール音でない音高を表す音符データを最も近
い(すなわち半音間隔の)スケール音の音高を表すデー
タに修正するようにした。しかし、極めて初心者向け用
の場合には、より遠い(音高差の大きい)スケール音の
音高まで修正音の候補とするようにしてもよい。この場
合,例えば、前記音楽的進行ルールが適用され易くする
ために、短3度または長3度程度まで修正音候補の幅を
広げてもよい。また、ユーザが、この修正音候補の幅を
選択できるようにしてもよい。
【0055】b.第2音高修正プログラム この第2音高修正プログラムの実行は、図8のステップ
S200にて開始され、サーバコンピュータ20のCP
Uは、ステップS202〜S206の処理により、先頭
音符を決定する。このステップS202〜S206の処
理は、上記図6のステップS102〜S106と同様な
処理である。
【0056】このようにして先頭音符を決定した後、ス
テップS208〜S218からなる循環処理の実行によ
り2番目以降の音符データを音高修正して、ステップS
220にてこの第2音高修正プログラムの実行を終了す
る。前記ステップS208〜S218中のステップS2
08,S210,S218の処理は、上記ステップS1
08,S110,S114の処理と同様である。
【0057】この場合、ステップS212においては、
n番目の音符データが強拍に関するものであるかを判定
する。強拍とは、4拍子の曲であれば1拍と3拍のタイ
ミングであり、3拍子の曲であれば1拍のみである。こ
の強拍の判定は、伴奏データ中の伴奏種類データから拍
子を決定し、タイミングをRAM内のモチーフメロディ
を表す演奏データ中の相対時間データに基づいて検出す
る。また、強拍に相当する音符データが存在しない場合
には、その直後の音符データを強拍に相当する音符デー
タとみなす。なお、前記拍子に関しては、伴奏データ中
に拍子を表すデータを含めておいてもよい。
【0058】n番目の音符データが強拍でなければ、す
なわち弱拍であれば、ステップS212にて「No」と判
定してステップS216に進む。ステップS216にお
いては、上述した図6のスケール音クオンタイズ処理ル
ーチンを実行して、モチーフメロディを表す演奏データ
を音高修正する。一方、n番目の音符データが強拍であ
れば、ステップS212にて「Yes」と判定してステッ
プS214に進む。ステップS214においては、コー
ド音クオンタイズ処理ルーチンを実行する。
【0059】このコード音クオンタイズ処理ルーチンの
実行は図9のステップS230にて開始される。なお、
図9のステップS230〜S246の処理は、前述した
図6のステップS130〜S146の処理と類似した処
理である。図9においては、図6の各ステップにおける
「スケール」を「コード」と読み替えることで容易に理
解できるので、ここでの詳細な説明は省略する。
【0060】このような第2音高修正プログラムの実行
により、ユーザによって演奏されたモチーフメロディを
表す演奏データ中の音高データのうちで強拍に関する演
奏データはコード音を表すものに修正される。また、こ
の音高修正においても、音楽的に適切な進行が採用され
るように音高データが修正される。一方、弱拍に関する
演奏データは、上記第1音高修正プログラムの場合と同
様にして、音高修正される。
【0061】また、この場合も、調、和音およびスケー
ルが、それぞれハ長調、Cメジャーおよびイオニアンで
ある場合について、音高修正の具体例を図示する。図1
0(A)は、このような音高修正において、ユーザによる
入力音(演奏音)と、同入力音に対するコード音への修
正候補音との関係を示している。また、図10(B)は、
モチーフメロディの開始時における1小節分の入力音
(C#,E,F#、G#音)の修正状態を上記図7(B)
の場合と同様な記号により示している。ただし、3拍目
の欄の右側の●印は、コード音として決定された音高を
表している。
【0062】c.第3音高修正プログラム この第3音高修正プログラムの実行は、図11のステッ
プS300にて開始され、サーバコンピュータ20のC
PUは、ステップS302〜S306の処理により、先
頭音符を決定する。このステップS302〜S306の
処理は、上記図6のステップS102〜S106と同様
な処理である。
【0063】このようにして先頭音符を決定した後、ス
テップS308〜S348からなる循環処理の実行によ
り2番目以降の音符データを音高修正して、ステップS
350にてこの第3音高修正プログラムの実行を終了す
る。この循環処理おいては、サーバコンピュータ20の
CPUは、上記第1音高修正プログラムのステップS1
08,S110と同様なステップS308,S310の
処理により、n番目の音符データをRAMから読み出し
て入力し、ステップS312にてn番目の音符データが
モチーフメロディの最後の音符に関するものであるかを
判定する。n番目の音符データがモチーフメロディの最
後の音符に関するものであれば、ステップS312にて
「Yes」と判定してステップS314に進む。ステップ
314においては、上記図9のコード音クオンタイズ処
理ルーチンを実行して、RAM内のn番目の音符データ
をコード音の音高に維持または変更する。そして、ステ
ップS350にて、この第3音高修正プログラムの実行
を終了する。
【0064】n番目の音符データがモチーフメロディの
最後の音符に関するものでなければ、ステップS312
にて「No」と判定してステップS316に進む。ステッ
プS316においては、上記図8の第2音高修正プログ
ラムのステップS212と同様な判定処理により、n番
目の音符データが強拍に関するものであるかを判定す
る。
【0065】n番目の音符データが強拍に関するもので
なければ、すなわち弱拍に関するものであれば、ステッ
プS316にて「No」と判定してステップS318に進
む。ステップS318においては、上述した図6のスケ
ール音クオンタイズ処理ルーチンを実行して、モチーフ
メロディを表す演奏データを音高修正する。ステップS
318の処理後は,ステップS308に戻る。一方、n
番目の音符データが強拍に関するものであれば、ステッ
プS316にて「Yes」と判定して図12のステップS
320に進む。
【0066】ステップ320においては、n番目の音符
データがスケール音かつ非コード音の音高を表している
かを判定する。n番目の音符データがスケール音でない
か、またはコード音であれば、ステップS320にて
「No」と判定してステップS322に進む。ステップS
322においては、非コード音であり、かつn番目の音
符データにより表された音高に最も近い音高のスケール
音を選択する。この場合、該当するスケール音が複数あ
れば、複数のスケール音が選択される。そして、ステッ
プS324にて、前記選択されたスケール音を倚音候補
として登録する。一方、n番目の音符データがスケール
音かつ非コード音の音高を表していれば、ステップ32
0にて「Yes」と判定して、ステップS324にてこの
音符データを倚音候補として登録する。
【0067】前記ステップS324の処理後、サーバコ
ンピュータ20のCPUは、ステップS326にてRA
Mからn+1番目の音符データを読み出して入力する。
次に、ステップS328にて、n+1番目の音符データ
がコード音の音高を表しているかを判定する。n+1番
目の音符データがコード音の音高を表していなければ、
ステップS328にて「No」と判定してステップS33
0に進む。ステップS330においては、n+1番目の
音符データにより表された音高に最も近い音高のコード
音を選択する。この場合、該当するコード音が複数あれ
ば、複数のコード音が選択される。そして、ステップS
332にて、前記選択されたコード音を解決音候補とし
て登録する。一方、n+1番目の音符データがコード音
の音高を表していれば、ステップ328にて「Yes」と
判定して、ステップS332にてこの音符データを解決
音候補として登録する。
【0068】次に、ステップ334にて、前記登録した
倚音候補と解決音候補との一つまたは複数の組み合わせ
の中で、上下いずれかの方向に2度進行の組み合わせが
あるかを判定する。上下いずかの方向に2度進行の組み
合わせが一組だけある場合には、ステップS334の判
定処理により、ステップS336に進む。ステップS3
36においては、前記組み合わせに係る倚音候補および
解決音候補を、n番目の音符データとn+1番目の音符
データとして採用して、RAM内のn番目およびn+1
番目の音符データを前記採用した音符データに変更す
る。
【0069】また、上下いずれかの方向に2度進行の倚
音候補と解決音候補との組み合わせが複数組あれば、ス
テップS334にて「Yes」と判定してステップS33
8に進む。ステップ338においては、前記複数組の中
で、倚音候補が、直前の音符データ(n−1番目の音
符)の音高との関係において、上述した音楽的進行ルー
ル(上下いずれかの方向に短3度から完全5度までの音
高変化範囲)を満たす組があるかを判定する。この音楽
的進行ルールを満たす組み合わせがあれば、ステップS
338にて「Yes」と判定して、ステップS340に進
む。ステップS340においては、前記組み合わせに係
る倚音候補および解決音候補を、n番目の音符データと
n+1番目の音符データとして採用して、RAM内のn
番目およびn+1番目の音符データを前記採用した音符
データに変更する。
【0070】一方、音楽的進行ルールを満たす組み合わ
せがなければ、ステップS338にて「No」と判定し
て、ステップS342に進む。ステップS342におい
ては、前記組み合わせの中から、すなわち上下いずれか
の方向に2度進行する倚音候補と解決音候補とからなる
複数の組み合わせの中からランダムに一組の組み合わせ
を選択する。そして、この選択した組み合わせに係る倚
音候補および解決音候補をn番目の音符データとn+1
番目の音符データとして採用して、RAM内のn番目お
よびn+1番目の音符データを前記採用した音符データ
に変更する。なお、この第3音高修正プログラムにおい
ても、ステップS338,S340の処理を省略して、
常に前記ステップS342のランダム処理が実行される
ようにしてもよい。
【0071】また、ステップS334にて、上下いずれ
かの方向に2度進行の組み合わせが一組もないと判定さ
れると、ステップS344に進む。ステップS344に
おいては、上記図6のスケール音クオンタイズ処理ルー
チンの実行により、前記n番目およびn+1番目の両音
符データに対してスケール音クオンタイズ処理を施す。
そして、RAM内のn番目およびn+1番目の音符デー
タをスケール音の音高に維持または変更する。
【0072】前記ステップS336,S340,S34
2,S344の処理後、ステップS346にてn+1番
目の音符データがモチーフメロディの最後の演奏データ
に関するものであるかを判定する。そして、最後の演奏
データに関するものであれば、ステップS346にて
「Yes」と判定して、ステップS350にてこの第3音
高修正プログラムの実行を終了する。一方、n+1番目
の音符データがモチーフメロディの最後の演奏データに
関するものでなければ、ステップS348にて変数nに
「1」を加算して、ステップS308に戻って、ステッ
プS308〜S348からなる循環処理を続ける。その
結果、モチーフメロディの全ての演奏データが音高修正
される。
【0073】このような第3音高修正プログラムの実行
により、ユーザによって演奏されたモチーフメロディを
表す演奏データ中の音高データの音高修正に、和音に関
する解決の音楽技術が導入される。したがって、上記第
1および第2音高修正プログラムによる場合に比べて、
音高修正された演奏データがより高度に音楽に適合した
ものとなる。
【0074】また、この場合も、調、和音およびスケー
ルが、それぞれハ長調、Cメジャーおよびイオニアンで
ある場合の音高修正状態を図示する。図13は、モチー
フメロディの途中における1小節分の入力音(A#,
F,A,B音)の修正状態を上記図7(B)および図10
(B)の場合と同様にして示している。ただし、この場
合、1拍目および2拍目の欄の右側の☆印は、倚音およ
び解決音として決定された音高を表している。
【0075】なお、この第3音高修正プログラムにおい
ては、スケール音およびコード音でない音高を表す音符
データを最も近いスケール音およびコード音の音高を表
すデータにそれぞれ修正するようにした。しかし、極め
て初心者向け用の場合には、より遠い(音高差の大き
い)スケール音およびコード音の音高まで修正の候補と
するようにしてもよい。また、ユーザが、この修正音候
補の幅を選択できるようにしてもよい。
【0076】また、上記実施形態においては、図4(B)
に示す演奏データを変形しないで、第1〜第3音高修正
プログラムの実行により、押鍵(キーオン)に関する演
奏イベントデータ中の音高データを変更するようにし
た。しかし、これに代えて、図3のステップS16のタ
イミング修正後であれば、同タイミング修正を加えた演
奏データを音符列(休符も含む)を表す楽譜情報に変換
した後に、前記第1〜第3音高修正プログラムの実行に
より楽譜情報中の音符列の音高(音名)に関するデータ
に修正を加えるようにしてもよい。なお、この楽譜情報
中の音符に関する情報は、音名(休符も含む)を表す音
名データ(音高データ)と、符長を表す符長データとか
らなる。
【0077】また、上記実施形態においては、短い長さ
のモチーフメロディに対して音高修正を施すようにした
が、長いフレーズの演奏データ、例えば一曲分の演奏デ
ータに対して音高修正を施すこともできる。なお、この
場合には、楽曲の自動作曲は不要となる。
【0078】また、上記実施形態においては、第1〜第
3音高修正プログラムを択一的に用いてモチーフメロデ
ィの音高を修正するようにした。しかし、これらの第1
〜第3音高修正プログラムを適宜組み合わせて、与えら
れた演奏データに対して音高修正を施すようにしてもよ
い。すなわち、演奏データの複数の区間に対して、第1
〜第3音高修正プログラムのうちの異なるプログラムを
選択的に用いて音高修正を行うようにしてもよい。この
場合、特に、前述のように、一曲分の演奏データに対し
て音高修正を施す場合に有効である。また、各区間に対
する第1〜第3音高修正プログラムうちのいずれかのプ
ログラムの適用は、ユーザによって選択される。
【0079】また、上記実施形態においては、サーバコ
ンピュータ20がクライアント端末30との交信をしな
がら演奏データの音高修正を行うようにした。しかし、
クライアント端末30である電子楽器に、図3のサーバ
プログラムおよび図5,8,11,12の第1〜第3音
高修正プログラム(図6のスケール音クオンタイズ処理
ルーチンおよび図9のコード音クオンタイズ処理ルーチ
ンを含む)を用意しておけば、電子楽器のみでも上記音
高修正を実現できる。
【0080】また、電子楽器に限らず、パーソナルコン
ピュータなどのプログラム処理可能な各種電子機器であ
れば、どのような電子機器にも本発明は適用できる。こ
の場合、電子機器に鍵盤を接続して演奏データを入手す
るようにしてもよいが、フレキシブルディスク、コンパ
クトディスクなどの記録媒体に演奏データを記憶してお
き、同記録媒体に記録されている演奏データに本発明に
係る音高修正処理を施してもよい。
【0081】また、演奏データの入力に関しても、鍵盤
に限らず弦楽器型、管楽器型などのように、いかなる形
態の演奏操作子からの演奏データでもよい。パーソナル
コンピュータの各キーに音高を割当てておいて、このキ
ーの操作に基づいて演奏データを得るようにしてもよ
い。また、ディスプレイ上に楽譜やピアノロール譜面な
どを表示しておいて、このディスプレイ上の楽譜や譜面
に音符を貼り付けることにより入力される演奏データを
用いるようにしてもよい。さらに、入力した音声信号
(楽器信号を含む)から検出されたピッチを演奏データ
として用いてもよい。
【0082】さらに、本発明の実施にあたっては、上記
実施形態およびその変形例に限定されるものではなく、
本発明の目的を逸脱しない限りにおいて種々の変形も可
能である。
【図面の簡単な説明】
【図1】 本発明の適用されるシステムの概略ブロック
図である。
【図2】 図1のクライアント端末の一例を示す電子楽
器の概略ブロック図である。
【図3】 図1のサーバコンピュータによって実行され
るサーバプログラムおよびクライアント端末によって実
行されるクライアントプログラムのフローチャートであ
る。
【図4】 (A)は伴奏データのフォーマット図であり、
(B)は演奏データのフォーマット図である。
【図5】 サーバコンピュータによって実行される第1
音高修正プログラムのフローチャートである。
【図6】 図5、図8および図11,12のスケール音
クオンタイズ処理ルーチンの詳細を示すフローチャート
である。
【図7】 (A)は入力音のスケール音へのクオンタイズ
の関係を示す図であり、(B)は第2音高修正プログラム
による入力音のクオンタイズ処理例を示す図である。
【図8】 サーバコンピュータによって実行される第2
音高修正プログラムのフローチャートである。
【図9】 図8および図11のコード音クオンタイズ処
理ルーチンの詳細を示すフローチャートである。
【図10】 (A)は入力音のコード音へのクオンタイズ
の関係を示す図であり、(B)は第2音高修正プログラム
による入力音のクオンタイズ処理例を示す図である。
【図11】 サーバコンピュータによって実行される第
3音高修正プログラムの前半部分を示すフローチャート
である。
【図12】 サーバコンピュータによって実行される第
3音高修正プログラムの後半部分を示すフローチャート
である。
【図13】 第3音高修正プログラムによる入力音のク
オンタイズ処理例を示す図である。
【符号の説明】
10…通信ネットワーク、20…サーバコンピュータ、
21…データベース、30…クライアント端末(電子楽
器)、31…演奏操作子群、32…パネル操作子群、3
3…ディスプレイ、37…音源回路、41…CPU、4
2…ROM、43…RAM、45…外部記憶装置。

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】音高をそれぞれ表すとともに音楽進行に従
    った一連の演奏データを入力する入力手段と、 前記入力した各演奏データを、その前の演奏データによ
    って表された音高に応じて、与えられたスケール上の音
    高を表す演奏データに修正する修正手段とを備えた音高
    自動修正装置。
  2. 【請求項2】前記請求項1に記載した音高自動修正装置
    において、前記修正手段は、 前記各演奏データを、同演奏データによって表された音
    高とその前の演奏データによって表された音高との差が
    所定の音楽ルールに従った音高差となる音高を表す演奏
    データに修正するものである音高自動修正装置
  3. 【請求項3】音高をそれぞれ表すとともに音楽進行に従
    った一連の演奏データを入力する入力手段と、 前記入力した各演奏データを、その音楽進行上の位置に
    応じて、与えられたスケール上の音高を表す演奏データ
    にそれぞれ修正する修正手段とを備えた音高自動修正装
    置。
  4. 【請求項4】前記請求項3に記載した音高自動修正装置
    において、 前記修正手段には、前記音楽進行に対応した一連の和音
    を表す和音情報が与えられ、前記修正手段は、 音楽進行上の位置が強拍位置にある演奏データに関して
    は、前記与えられるとともに音楽進行上の位置に対応し
    た和音情報により表された和音の構成音の音高を表す演
    奏データに修正し、かつそれ以外の演奏データに関して
    は、与えられたスケール上の音高を表す演奏データに修
    正するものである音高自動修正装置。
  5. 【請求項5】前記請求項3に記載した音高自動修正装置
    において、 前記修正手段には、前記音楽進行に対応した一連の和音
    を表す和音情報が与えられ、前記修正手段は、 音楽進行上の位置が強拍位置にある演奏データに関して
    は、前記与えられるとともに音楽進行上の位置に対応し
    た和音情報により表された和音に対する倚音の音高を表
    す演奏データに修正し、 前記倚音の音高に修正した演奏データの次の演奏データ
    に関しては、前記与えられるとともに音楽進行上の位置
    に対応した和音情報により表された和音の構成音の音高
    を表す演奏データに修正し、かつそれら以外の演奏デー
    タに関しては、与えられたスケール上の音高を表す演奏
    データに修正するものである音高自動修正装置。
  6. 【請求項6】音高をそれぞれ表すとともに音楽進行に従
    った一連の演奏データを入力する入力手段と、 前記入力した各演奏データを、所定の音楽ルールに従っ
    て、与えられたスケール上の音高を表す演奏データにそ
    れぞれ修正する修正手段と、 前記修正された一連の演奏データをモチーフメロディと
    して用いて、一楽曲分の楽音の音高をそれぞれ表す演奏
    データを自動的に作曲する作曲手段とを備えた自動作曲
    装置。
  7. 【請求項7】前記請求項6に記載した自動作曲装置にお
    いて、 前記修正手段には、各演奏データを修正するための複数
    種類の修正モードが用意されており、 前記修正手段にて用いられる修正モードを前記複数種類
    の修正モードのうちから選択する選択手段を設けた自動
    作曲装置。
  8. 【請求項8】音高をそれぞれ表すとともに音楽進行に従
    った一連の演奏データを入力する入力ステップと、 前記入力した各演奏データを、その前の演奏データによ
    って表された音高に応じて、与えられたスケール上の音
    高を表す演奏データに修正する修正ステップとを備え、
    演奏データによって表された音高を自動修正するコンピ
    ュータプログラム。
  9. 【請求項9】音高をそれぞれ表すとともに音楽進行に従
    った一連の演奏データを入力する入力ステップと、 前記入力した各演奏データを、その音楽進行上の位置に
    応じて、与えられたスケール上の音高を表す演奏データ
    にそれぞれ修正する修正ステップとを備え、演奏データ
    によって表された音高を自動修正するコンピュータプロ
    グラム。
  10. 【請求項10】音高をそれぞれ表すとともに音楽進行に
    従った一連の演奏データを入力する入力ステップと、 前記入力した各演奏データを、所定の音楽ルールに従っ
    て、与えられたスケール上の音高を表す演奏データにそ
    れぞれ修正する修正ステップと、 前記修正された一連の演奏データをモチーフメロディと
    して用いて、一楽曲分の楽音の音高をそれぞれ表す演奏
    データを自動的に作曲する作曲ステップとを備え、楽曲
    を自動作曲するコンピュータプログラム。
JP2002060149A 2002-03-06 2002-03-06 音高自動修正装置および同装置に適用されるプログラム Expired - Fee Related JP3873781B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002060149A JP3873781B2 (ja) 2002-03-06 2002-03-06 音高自動修正装置および同装置に適用されるプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002060149A JP3873781B2 (ja) 2002-03-06 2002-03-06 音高自動修正装置および同装置に適用されるプログラム

Publications (2)

Publication Number Publication Date
JP2003255949A true JP2003255949A (ja) 2003-09-10
JP3873781B2 JP3873781B2 (ja) 2007-01-24

Family

ID=28669598

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002060149A Expired - Fee Related JP3873781B2 (ja) 2002-03-06 2002-03-06 音高自動修正装置および同装置に適用されるプログラム

Country Status (1)

Country Link
JP (1) JP3873781B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242126A (ja) * 2004-02-27 2005-09-08 Dainippon Printing Co Ltd 音響信号の再生装置
JP2010197600A (ja) * 2009-02-24 2010-09-09 Kawai Musical Instr Mfg Co Ltd 旋律変形装置及び旋律変形プログラム
JP2013045082A (ja) * 2011-08-26 2013-03-04 Yamaha Corp 楽曲生成装置
JP2017037348A (ja) * 2016-11-21 2017-02-16 カシオ計算機株式会社 自動コード修正装置、自動コード修正方法及びそのプログラム
KR102005730B1 (ko) * 2018-05-30 2019-07-31 얄라팩토리 주식회사 화성 정보 제공 서버 및 화성 정보 제공 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242126A (ja) * 2004-02-27 2005-09-08 Dainippon Printing Co Ltd 音響信号の再生装置
JP2010197600A (ja) * 2009-02-24 2010-09-09 Kawai Musical Instr Mfg Co Ltd 旋律変形装置及び旋律変形プログラム
JP2013045082A (ja) * 2011-08-26 2013-03-04 Yamaha Corp 楽曲生成装置
JP2017037348A (ja) * 2016-11-21 2017-02-16 カシオ計算機株式会社 自動コード修正装置、自動コード修正方法及びそのプログラム
KR102005730B1 (ko) * 2018-05-30 2019-07-31 얄라팩토리 주식회사 화성 정보 제공 서버 및 화성 정보 제공 방법

Also Published As

Publication number Publication date
JP3873781B2 (ja) 2007-01-24

Similar Documents

Publication Publication Date Title
JP5574474B2 (ja) アドリブ演奏機能を有する電子楽器およびアドリブ演奏機能用プログラム
JP2562370B2 (ja) 自動伴奏装置
JP3807275B2 (ja) コード提示装置およびコード提示用コンピュータプログラム
JP3873781B2 (ja) 音高自動修正装置および同装置に適用されるプログラム
JP2008089975A (ja) 電子楽器
JP2003288077A (ja) 曲データ出力装置及びプログラム
JPH0627960A (ja) 自動伴奏装置
JP3804500B2 (ja) 楽譜編集装置
JP3873880B2 (ja) 演奏補助装置および演奏補助用プログラム
JP3933070B2 (ja) アルペジオ生成装置及びプログラム
JP4175364B2 (ja) アルペジオ発音装置およびアルペジオ発音を制御するためのプログラムを記録したコンピュータ読み取り可能な媒体
JP4624879B2 (ja) 楽音情報発生プログラムおよび楽音情報発生装置
JPH038559B2 (ja)
JP2006258938A (ja) 自動演奏装置及びプログラム
JP4900233B2 (ja) 自動演奏装置
JP2756888B2 (ja) 電子楽器
JP5104293B2 (ja) 自動演奏装置
JP4470895B2 (ja) コード表示装置及びプログラム
JP5034471B2 (ja) 楽音信号発生装置及びカラオケ装置
JP4760348B2 (ja) 楽曲選択装置および楽曲選択用コンピュータプログラム
JP2000029466A (ja) 電子鍵盤楽器
JP3499672B2 (ja) 自動演奏装置
JP2007163618A (ja) 伴奏表示装置及びプログラム
JPH027480B2 (ja)
JPH06318078A (ja) 自動スケール発生装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060801

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060829

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061003

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061016

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees