JP3837981B2 - 演奏データ作成方法、自動演奏装置及び記録媒体 - Google Patents
演奏データ作成方法、自動演奏装置及び記録媒体 Download PDFInfo
- Publication number
- JP3837981B2 JP3837981B2 JP33125799A JP33125799A JP3837981B2 JP 3837981 B2 JP3837981 B2 JP 3837981B2 JP 33125799 A JP33125799 A JP 33125799A JP 33125799 A JP33125799 A JP 33125799A JP 3837981 B2 JP3837981 B2 JP 3837981B2
- Authority
- JP
- Japan
- Prior art keywords
- performance data
- performance
- note
- data
- notes
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
この発明は、自動演奏等に用いるに好適なゆらぎ性(のりやゆらぎ)を有する演奏データを作成する方法と、作成された演奏データを使用する自動演奏装置と、自動演奏用のプログラムを記録した記録媒体とに関し、特に生演奏等に基づく基準演奏データから所望の音符群の演奏データを抽出すると共に抽出演奏データを音符群に従って修正することにより所望の音符群の演奏データ作成を可能にしたものである。
【0002】
【従来の技術】
従来、所望の楽曲に関するゆらぎ性の演奏データに基づいて楽譜通りの演奏データを修正してゆらぎの程度を変更した自動演奏用の演奏データを作成する方法が知られている(例えば、特開平10−20856号公報参照)。
【0003】
【発明が解決しようとする課題】
上記した従来技術によると、基準演奏データとしてのゆらぎ性の演奏データを参照して演奏データを修正するので、例えば楽曲の一部の音符群にゆらぎ性を付与したり、ゆらぎ性を付与する音符群を変更したりするには新たに基準演奏データを用意する必要があり、処理が複雑となる不都合があった。また、楽曲の一部で音符数や音高が変更された場合にも同様の不都合があった。
【0004】
この発明の目的は、所望の音符群毎にゆらぎ性の演奏データを簡単に作成することができる新規な演奏データ作成方法を提供することにある。
【0005】
この発明の他の目的は、自動演奏される楽曲の一部に簡単にゆらぎ性を付与することができる新規な自動演奏装置を提供することにある。
【0006】
【課題を解決するための手段】
この発明に係る第1の演奏データ作成方法は、
時系列的な音符群を指定するステップと、
前記音符群の構成音符に従う楽器の生演奏に基づいて、各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを作成するステップと、
作成された演奏データから前記音符群の音符数分の演奏データを抽出するステップと、
抽出された演奏データを前記音符群中の少なくとも1つの音符に従って修正するステップと
を含むものである。
【0007】
第1の演奏データ作成方法によれば、時系列的な音符群の構成音符(例えば16分音符)に対応したゆらぎ性の演奏データを生演奏に基づいて作成すると共に、音符群中の音符数(例えば8個)分の演奏データを作成に係る演奏データから抽出する。そして、抽出に係る演奏データを音符群中の少なくとも1つの音符に従って修正する。この結果、生演奏に基づくゆらぎ性を有し且つ音符群に適合した演奏データが得られ、自動演奏等に用いることができる。
【0008】
第1の演奏データ作成方法において、抽出に係る演奏データに基づく演奏区間の長さが音符群で表わされる区間長と一致又は近似するように抽出に係る演奏データ中の演奏タイミング情報(例えば発音タイミング情報、消音タイミング情報等)を修正すると、音符群中の音符数が変更されても、データ抽出の際に音符数を変更するだけで対処することができ、作成に係る演奏データを変更しなくてよい。また、音符群で表わされる音高に従って抽出に係る演奏データ中の音高情報を修正すると、音符群中の音高が変更されても、変更に係る音高に応じて音高情報を修正すればよく、作成に係る演奏データを変更しなくてよい。従って、処理が簡単となる。
【0009】
この発明に係る第2の演奏データ作成方法は、
和音の反復演奏を表わす音符群を指定するステップと、
前記和音を構成する複数音のうちの1音に相当する音符に従う楽器の反復的な生演奏に基づいて、各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを作成するステップと、
作成された演奏データから前記音符群中の和音数分の演奏データを抽出するステップと、
抽出された演奏データに基づく演奏区間の長さが前記音符群で表わされる区間長と一致又は近似するように前記抽出された演奏データ中の演奏タイミング情報を修正する第1の修正ステップと、
この第1の修正ステップで修正を受けた演奏データを前記和音の構成音数より1少ない数分だけ複製するステップと、
複製に係る演奏データ中の音高情報を前記和音を構成する複数音のうちの他の音の音高に従って修正する第2の修正ステップと
を含むものである。
【0010】
第2の演奏データ作成方法によれば、第1の演奏データ作成方法と同様の作用効果が得られる。その上、第1の修正ステップで修正を受けた演奏データを和音の構成音数(例えば2)より1少ない数分だけ複製すると共に、複製に係る演奏データ中の音高情報を対応する和音構成音の音高に従って修正するようにしたので、単音系の少ない演奏データに基づいて和音系の演奏データを作成することができる。
【0011】
この発明に係る第3の演奏データ作成方法は、
発音タイミング及び音高を異にする複数音の反復演奏を表わす音符群を指定するステップと、
前記複数音に相当する複数音符に従う楽器の反復的な生演奏に基づいて、各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを作成するステップと、
作成された演奏データから前記音符群中の前記複数音対応の音符組の組数分の演奏データを抽出するステップと、
抽出された演奏データを前記音符群中の少なくとも1つの音符に従って修正するステップと
を含むものである。
【0012】
第3の演奏データ作成方法によれば、第1の演奏データ作成方法と同様の作用効果が得られる。その上、発音タイミング及び音高を異にする複数音に相当する複数音符に従う反復的な生演奏に基づいてゆらぎ性の演奏データを作成するようにしたので、前後の音が時間的に重なって発音されるような自然なゆらぎ性を有する複音系の演奏データを作成することができる。
【0013】
この発明に係る自動演奏装置は、
楽曲を自動演奏するための演奏データを記憶する第1の記憶手段と、
時系列的な音符群毎に該音符群の構成音符に従う楽器の生演奏に基づいて作成された演奏データであって各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを記憶する第2の記憶手段と、
前記楽曲中で所望の時系列的な音符群を指定する指定手段と、
この指定手段で指定された音符群に対応する演奏データを前記第2の記憶手段から読出す読出手段と、
前記第2の記憶手段から読出された演奏データから、前記指定手段で指定された音符群の音符数分の演奏データを抽出する抽出手段と、
この抽出手段で抽出された演奏データを前記指定手段で指定された音符群中の少なくとも1つの音符に従って修正する第1の修正手段と、
前記第1の記憶手段の演奏データにおいて前記指定手段で指定された音符群に関する演奏データを前記第1の修正手段で修正を受けた演奏データに従って修正する第2の修正手段と、
この第2の修正手段で修正された演奏データを含む前記第1の記憶手段の演奏データに従って前記楽曲の自動演奏を行なう自動演奏手段と
を備えたものである。
【0014】
この発明の自動演奏装置によれば、指定手段で所望の音符群を指定すると、指定に係る音符群に対応する演奏データが第2の記憶手段から読出されると共に、読出しに係る演奏データから指定に係る音符群の音符数分の演奏データが抽出される。抽出された演奏データは、指定に係る音符群に従って修正され、第1の記憶手段の演奏データにおいて指定に係る音符群に関する演奏データが修正に係る演奏データに従って修正される。楽曲の自動演奏は、修正に係る演奏データを含む第1の記憶手段の演奏データに従って行なわれる。この結果、自動演奏される楽曲にあっては、指定に係る音符群に対応する演奏個所に読出しに係る演奏データ(生演奏に基づく演奏データ)に基づくゆらぎ性が付与される。
【0015】
【発明の実施の形態】
以下では、トレモロ演奏を例にとってこの発明を詳細に説明する。楽典によると、トロモロ演奏は、時間的に細かい多数の音符を繰返し演奏するものである。一般に、トレモロ記号は、図1(A)に例示するように音符NにひげHを付して表わされ、図1(B)に示すようなトレモロ演奏用の音符に変換されて演奏される。トレモロ演奏用音符の種類は、ひげHの本数に応じて決定され、ひげHの本数が1本であれば8分音符、2本であれば16分音符、3本であれば32分音符となる。トレモロ演奏用音符の個数は、音符NをひげHの本数に応じた種類の音符に分割した数である。
【0016】
図1の例では、音符Nが2分音符であり、ひげHの本数が2本であるので、トレモロ演奏用音符は、8個の16分音符となる。他の例として、音符Nが4分音符であり、ひげHの本数が3本である場合は、8個の32分音符がトレモロ演奏用音符となる。
【0017】
ところで、自然楽器の生演奏では、トレモロ音の数がトレモロ演奏用音符の数と同じであるとしても、各トレモロ音毎に音長や音量が一定していない場合が多く、その方が自然な演奏に聞こえる。すなわち、生演奏では、演奏者が意識した又はしないテンポのゆらぎ、音量のゆらぎ等の様々な不均一性や不安定性が生々しさや自然らしさに大きく寄与している。
【0018】
図2は、トレモロの生演奏の一例を示すもので、横軸が時間を表わし、縦軸が音高を表わす。B1〜B7は、いずれも拍頭タイミングを示し、T1,T2…T8,T9…は、図1(B)の音符N1,N2…N8等に対応するトレモロ音を示す。各トレモロ音の音長は、黒バーの長さで表わされる。図2によれば、トレモロ音の音長にばらつきがあることがわかる。図2には示されていないが、トレモロ音の音量にもばらつきがある。
【0019】
楽曲の自動演奏において、自然な演奏、美しい演奏、生々しい演奏を実現するために、生演奏に基づいて自動演奏用のゆらぎ性の演奏データを作成することが考えられる。図3は、図2の生演奏に基づいて作成された演奏データの一例を示すものである。トレモロ音T1に関しては、タイミングデータTM11とノートオンイベントデータNE11とベロシティデータVL11とを含むオンイベントデータの組が配置されると共にオンイベントデータの組の後にタイミングデータTM12とノートオフイベントデータNE12とを含むオフイベントデータの組が配置される。T2以降の各トレモロ音に関しても、同様にしてオンイベントデータの組及びオフイベントデータの組が配置される。従って、例えばトレモロ音T8に関するオフイベントデータの組(タイミングデータTM82及びノートオフイベントデータNE82)の後には、トレモロ音T9に関するオンイベントデータの組(タイミングデータTM91、ノートオンイベントデータNE91及びベロシティデータVL91)が配置される。
【0020】
TM11,TM91等のタイミングデータは、対応するトレモロ音の発音タイミングを指示するものである。NE11,NE91等のノートオンイベントデータは、対応するトレモロ音の音高をノートナンバで指示するものである。VL11,VL91等のベロシティデータは、対応するトレモロ音の音量を指示するものである。TM12,TM82等のタイミングデータは、対応するトレモロ音の消音タイミングを指示するものである。NE12,NE82等のノートオフイベントデータは、対応するトレモロ音の音高をノートナンバで指示するものである。各タイミングデータは、前のイベント(前のイベントがなければ拍頭)からの時間を例えば後述するテンポクロック信号のカウント値により表わすものである。
【0021】
図3に示したような演奏データを自動演奏用データとして用いて自動演奏を行なうことも可能である。しかし、トレモロ演奏用音符における音符数や音高の変更に対応して新たに生演奏に基づく演奏データを用意する必要があるので、図3に示したような演奏データをそのまま自動演奏に用いるのは得策でない。そこで、この発明では、図3に示したような演奏データをトレモロ演奏用音符に基づいて適宜加工して新たな演奏データを作成する。
【0022】
次に、図4,5を参照してこの発明に係るトレモロ演奏データ作成方法を詳しく説明する。図5には、処理ステップS1〜S7を示す。
【0023】
ステップS1では、例えば楽譜表示画面において図4(A)に示すようなトレモロ記号を指定する。そして、ステップS2では、指定されたトレモロ記号に基づいて図1(B)に示したようにトレモロ演奏用音符の種類と数とを求める。図4(A)の例では、音符種類は16分音符、音符数は8個となる。
【0024】
次に、ステップS3では、ステップS2で求めた音符種類に対応した生演奏データを用意する。このためには、予めデータベースに音符種類毎に生演奏に基づく生演奏データを記憶しておき、求めた音符種類に対応する生演奏データをデータベースから読出すようにするとよい。一例として、図4(B)の生演奏に基づいて図3に示したような生演奏データが用意される。
【0025】
次に、ステップS4では、ステップS3で用意した生演奏データからステップS2で求めた音符数に対応した演奏区間の演奏データを抽出する。図4(C)は、このときの抽出処理の一例を示すもので、図4(B)の生演奏に基づく生演奏データからは、トレモロ音T1〜T8に対応する演奏データが抽出される。このようにして抽出された演奏データを図6に示す。図6において、図3と同様の部分には同様の符号を付してあり、T1〜T8の区間のデータ及びタイミングデータFTMが抽出された演奏データである。ここで、タイミングデータFTMは、図3に示したようにトレモロ音T9の発音タイミング(TM82の消音タイミングからの時間)を表わすものである。このようにT1〜T8の区間の終了タイミングを区間最後のトレモロ音T8の消音タイミングに合わせるのではなく、T8の次のトレモロ音T9の発音タイミングに合わせるようにすると、T1〜T8の区間のデータに後続の演奏データを接続する場合に区間最後の無音時間を反映させて自然な感じを出すことができる。また、タイミングデータFTMの後に終端マークデータFMDを付加すると、データ接続時に終端確認が容易となる。
【0026】
次に、ステップS5では、抽出に係る演奏区間の長さをトレモロ演奏用音符の合計長さ(図4(A)の音符の長さに相当)に一致又は近似させるように抽出に係る演奏区間の演奏データ中のタイミング値を修正する。このときに修正されるタイミング値は、発音タイミングや消音タイミング等の演奏タイミングの値であり、図6の例では、タイミングデータTM11,TM12…TM81,TM91の値である。図4(D)は、図4(C)に示すように抽出した区間の長さをステップS5で修正した一例を示すもので、修正後の区間長は、2拍に相当する長さになっている。
【0027】
次に、ステップS6では、トレモロ音T1〜T8の音高がトレモロ演奏用音符の音高に一致しているか判定し、一致していなければトレモロ演奏用音符の音高に合わせて抽出に係る演奏データ中のノートナンバを修正する。このとき修正されるノートナンバは、図6の例では、イベントデータNE11,NE12…NE81,NE82のノートナンバである。
【0028】
この後、ステップS7では、ベロシティ値(音量レベル)の修正処理を行なう。すなわち、生演奏データ中のベロシティ値は、自動演奏で求められるベロシティ値と必ずしも一致しないので、トレモロ演奏用音符における先頭音符の音量に従って抽出に係る演奏データ中のベロシティ値を修正する。先頭音符の音量は、楽譜上で図4(A)のトレモロ記号に関して表示される。まず、先頭音符の音量に対応したベロシティ値とトレモロ音T1のオンイベントデータ中のベロシティ値との差を求めた後、トレモロ音T1のオンイベントデータ中のベロシティ値を先頭音符の音量に対応したベロシティ値に書換える。そしてT1以外のT2〜T8の各トレモロ音のオンイベントデータ中のベロシティ値を先に求めたベロシティ値の差に応じて加減算処理により修正する。
【0029】
この結果、例えばトレモロ音T1の音量がベロシティ値にして「20」増大(又は減少)したのであれば、トレモロ音T2〜T8の音量もベロシティ値にして「20」増大(又は減少)することになり、しかもT2〜T8の区間の演奏データにあっては生演奏時のトレモロ音の音量のばらつき状態が維持される。
【0030】
図7は、短い生演奏データに基づいて長い演奏データを作成する方法の一例を示すものである。この場合、生演奏データとしては、図7(A)に示すようにトレモロ音T1〜T12に対応する区間の演奏データが用意される。このとき用意される演奏データは、終端タイミングEDを指示するデータとして、トレモロ音T12の次のトレモロ音の発音タイミングを指示するタイミングデータを含んでいる。
【0031】
図5のステップS4では、用意された生演奏データから図7(B)に示すように先頭のトレモロ音T1から終端タイミングEDまでの全データを抽出した後、先頭のトレモロ音T1に関するデータを除いてトレモロ音T 2 から後の必要数のトレモロ音に関するデータを抽出し、1回目の抽出データと2回目の抽出データとを接続する。図7において、RHは、2回目の抽出データの先頭位置を示す。2回目の抽出処理で先頭のトレモロ音T1を除外するのは、トレモロ演奏で先頭音符が強調されることによるもので、自然さを出すのに役立つ。場合によっては、2回目以降の抽出処理で先頭から2音以上を除外するようにしてもよい。
【0032】
図8は、図7の方法におけるデータ接続状況を示すものである。1回目の抽出データの末尾には、トレモロ音T12のオフイベントデータの組の後タイミングデータFTM(終端タイミングEDを指示するデータ)に続けて終端マークデータFMDが配置されている。2回目の抽出データは、トレモロ音T2のタイミングデータTM21を除外してトレモロ音T2のノートオンイベントデータNE21を先頭データとして含むものとする。1回目及び2回目の抽出データを接続する際には、終端マークデータFMDの代りにノートオンイベントデータNE21をタイミングデータFTMに接続する。この後は、必要に応じて、上記したと同様の抽出・接続処理を行ない、図5のステップS5以降の処理を行なう。
【0033】
図9は、短い生演奏データに基づいて長い演奏データを作成する方法の他の例を示すもので、図7と同様の部分には同様の符号を付して詳細な説明を省略する。
【0034】
図9の方法の特徴は、図9(A)に示すようにトレモロ音T12の発音タイミングを終端タイミングEDとした点にある。この場合、図9(B)に示すように1回目の抽出データ中でトレモロ音T12は発音されない。
【0035】
図10は、図9の方法におけるデータ接続状況を示すものである。1回目の抽出データの末尾には、トレモロ音T11のオフイベントデータの組の後トレモロ音T12のタイミングデータ(発音タイミングを示すもの)TM2に続けてトレモロ音T12のノートオンイベントデータNE2が配置されている。2回目の抽出データは、図8の場合と同様である。1回目及び2回目の抽出データを接続する際には、ノートオンイベントデータNE2の代りにノートオンイベントデータNE21をタイミングデータTM2に接続する。この後は、必要に応じて、上記したと同様の抽出・接続処理を行ない、図5のステップS5以降の処理を行なう。
【0036】
次に、複音トレモロに関する演奏データ作成方法を説明する。複音トレモロの場合には、1つのトレモロ記号について複数の演奏形態がありうるので、最初に演奏形態を決定し、演奏形態に応じた生演奏データを用意する必要がある。
【0037】
一例として、図11(A)と図12(A)には、同一の複音トレモロ記号を示す。このトレモロ記号は、図11(B)に示すように和音反復型のトレモロ演奏用音符に変換されて演奏されることもあれば、図12(B)に示すように交互音演奏型のトレモロ演奏用音符に変換されて演奏されることもある。例えばバイオリンのように複音発音が可能で繰返し演奏も容易な楽器の場合には、図11(B)に示すように和音の反復演奏を行なう。一方、管楽器のように複音発音ができない場合やピアノのように複数発音は可能でも複音の繰返し演奏が難しい場合には、図12(B)に示すように和音構成音を交互に演奏するのが一般的である。
【0038】
図11(B)のトレモロ演奏に関して演奏データを作成する場合は、図5に関して前述したと同様の方法を用いることができる。この場合、生演奏データとしては、図11(B)に示すように16分音符の複音トレモロ演奏に基づくデータを用意する。
【0039】
図11(B)のトレモロ演奏に関して演奏データを作成するための他の方法としては、図13に示すように和音を構成する複数音のうちの1音の反復演奏に基づく生演奏データを用いる方法もある。この方法では、用意する生演奏データの量が少なくて済む利点がある。
【0040】
図13(A)のステップでは、所望の複音トレモロ記号を指定する。一例として、2分音符N11,N12と2本のひげとを有する複音トレモロ記号を指定する。そして、指定に係るトレモロ記号に基づいて図11(B)に示したようにトレモロ演奏音符の種類と数とを求める。音符数は、上下音符のいずれか一方の数とする。図11(B)の例では、音符種類が16分音符、音符数が8となる。
【0041】
次に、図13(B)のステップでは、先に求めた音符種類に対応した生演奏データを用意する。この生演奏データは、和音演奏に基づくものではなく、和音を構成する複数音のうちの1音の反復演奏に基づくものとする。図13(B)の例では、音符N11に対応する16分音符のトレモロ演奏に基づく生演奏データを用意する。
【0042】
次に、図13(C)のステップでは、先に用意した生演奏データから先に求めた音符数に対応した演奏区間の演奏データを抽出する。この抽出処理は、図5のステップS4に関して前述したと同様にして行ない、生演奏データの方が短ければ図7又は9で述べたと同様に抽出・接続処理を行なう。図13(C)の例では、トレモロ音T1〜T8に対応する第1系列の演奏データを抽出する。この演奏データには、トレモロ音T8の次のトレモロ音の発音タイミングを指示するタイミングデータが含まれている。
【0043】
次に、図13(D)のステップでは、図5のステップS5に関して前述したと同様にして抽出演奏データ中のタイミング値を修正して抽出に係る演奏区間の長さを調整する。図13(D)の例では、トレモロ音T1〜T8を含む演奏区間の長さを2拍に相当する長さに調整する。
【0044】
次に、図13(E)のステップでは、修正を受けた演奏区間の演奏データを和音構成音の数より1少ない数分だけ複製する。図13(E)の例では、和音構成音の数が2であるので、トレモロ音T1〜T8に対応する第1系列の演奏データを1回コピーしてトレモロ音t1〜t8に対応する第2系列の演奏データを得る。
【0045】
この後、複製に係る演奏データ中のノートナンバ(音高)を和音を構成する複数音のうちの他の音の音高に従って修正する。図13(E)の例では、トレモロ音t1〜t8に対応する演奏データ中のノートナンバを図13(A)の音符N12の音高に従って修正する。また、トレモロ音T1〜T8の音高が音符N11の音高に従っていないときは、トレモロ音T1〜T8に対応する演奏データ中のノートナンバーを音符N11の音高に従って修正する。
【0046】
上記した処理によれば、図13(E)に示すように和音を構成する2音に対応した2系列の演奏データが得られる。しかしながら、これら2系列の演奏データにあっては、同時に発音される2音毎に音量が同じであると共に発音タイミングが同じであり、和音感が不自然となるのを免れない。そこで、この発明では、2系列の演奏データ間で和音の発音タイミングにてベロシティ値を異ならせるように修正すると共に発音タイミング値を異ならせるように修正する。
【0047】
ベロシティ値修正処理においては、図14に示すように和音を最低音ML、中間音MT及び最高音MHで構成する共に最低音、中間音及び最高音の音量をそれぞれVML、VMT及びVMHとした場合、音量の大小関係をVMH>VML>VMTのように定めると、和音としてのバランスがよくなる傾向がある。例えば、ベロシティ値を0〜127の範囲内の値にして音量制御を行なうときは、最高音に対して最低音のベロシティ値を−5〜−10程度の値に、中間音のベロシティ値を−10〜−20程度の値にそれぞれ設定するとよい。また、常に決められた値だけ音量を小さくするのでなく、小さくなり加減をランダムに変化させるとよい。例えば、最低音のベロシティ値は、最高音に対して−10に設定し、しかも経時的に±10の範囲でランダムに変化させるとよい。
【0048】
上記のようなベロシティ値修正処理でもかなり自然な不均一性を与えることができるが、和音の要素に応じて例えば根音は大きく、3度音は小さくというように音量制御を行なうと、さらに自然な不均一性を与えることができる。
【0049】
図13(E)の2系列の演奏データに対するベロシティ値修正処理においては、まず最高音であるトレモロ音t1〜t8に対応した第2系列の演奏データについてベロシティ値を修正する。すなわち、音符N12に関して指定された音量(最高音対応のトレモロ演奏用音符における先頭音符の音量)に対応したベロシティ値とトレモロ音t1のオンイベントデータ中のベロシティ値との差を求めた後、トレモロ音t1のオンイベントデータ中のベロシティ値を先頭音符の音量に対応したベロシティ値に書換える。そして、t1以外のt2〜t8の各トレモロ音のオンイベントデータ中のベロシティ値を先に求めたベロシティ値の差に応じて加減算処理により修正する。
【0050】
次に、最低音T1〜T8対応した第1系列の演奏データについてベロシティ値を修正する。この場合、音符N11に関して指定された音量(最低音対応のトレモロ演奏用音符における先頭音符の音量)に対応したベロシティ値が音符N12に関して指定された音量に対応するベロシティ値より所定値(例えば10)だけ低いものとする(このように所定値だけ低くなければ、所定値だけ低くする)。そして、音符N11に関して指定された音量に対応したベロシティ値を用いて第2系列の演奏データの場合と同様にして第1系列の演奏データ中のベロシティ値を修正する。この結果、トレモロ音T1〜T8に対応するベロシティ値は、トレモロ音t1〜t8に対応するベロシティ値に比べてそれぞれ所定値(例えば10)だけ低いものとなる。
【0051】
上記した処理によれば、第1系列の演奏データにおける各ベロシティ値は、第2系列の演奏データにおける対応するベロシティ値とは所定値だけ異なるものの、第1系列の演奏データをコピーしたのが第2系列の演奏データであるため、第1及び第2系列の演奏データにあっては、トレモロ音の音量のばらつき状態が同様である。このような音量のばらつき状態を異なるならせるためには、第1又は第2の演奏データのうち少なくとも一方の演奏データに対して前述したようにベロシティ値をランダムに修正する処理を施すことができる。
【0052】
発音タイミング値修正処理においては、第1系列の演奏データ中の発音タイミング値を和音の発音タイミング毎に所定範囲内でランダムに設定すると共に、第2系列の演奏データ中の発音タイミング値を和音の発音タイミング毎に所定範囲内でランダムに設定する。この場合、所定範囲を例えば±5の範囲とすることで時間的なばらつきを表現することができる。時間変化量をあまり大きくすると、時間的なばらつきというより和音に聞こえなくなるので、適当な値を選定する必要がある。4分音符の分解能を480とした場合、4分音符=120程度のテンポのときには時間変化量は、5〜10程度の値とするのが適当である。
【0053】
図12(B)のトレモロ演奏に関して演奏データを作成する場合は、単音の生演奏データを用いてもよいが、複音の生演奏データを用いた方がよい。ピアノを例にとると、単音トレモロは、同音連打であり、前後の音の発音時間が重なることは機構上あり得ない。これに対し、複音トレモロは、前後の音の発音時間が重なることが可能であり、むしろ重なる方が自然である。
【0054】
図15は、複音の生演奏データを用いる演奏データ作成方法を示すものである。図15(A)のステップでは、図13(A)の場合と同様の複音トレモロの記号を指定する。そして、指定に係るトレモロ記号に基づいて図12(B)に示したようにトレモロ演奏用音符の種類と数を求める。音符数は、上下の2音符を1組として組数で求める。図12(B)の例では、音符種類が16分音符、音符数が4組となる。
【0055】
次に、図15(B)のステップでは、先に求めた音符種類に対応した複音の生演奏データを用意する。図15(B)の例では、図12(B)に示すように発音タイミング及び音高を異にする2つの16分音符の反復演奏に基づく生演奏データを用意する。この例では、音高が異なる交互の音(例えばT11とT21、T21とT12等)の発音時間に重なりがあるのがわかる。
【0056】
次に、図15(C)のステップでは、先に用意した生演奏データから先に求めた音符数に対応した演奏区間の演奏データを抽出する。図15(C)の例では、4組の音符に対応した演奏区間の演奏データ(トレモロ音T11〜T14,T21〜T24に関する演奏データ)を抽出する。この演奏データには、トレモロ音T14の次のトレモロ音T15の発音タイミングを指示するタイミングデータが含まれると共に、トレモロ音T24の次のトレモロ音T25の発音タイミングを指示するタイミングデータが含まれている。トレモロ音T24の消音タイミングは、トレモロ音T15の発音タイミングより後になっている。これは、発音時間の重なりによるものである。
【0057】
次に、図5のステップS5に関して前述したと同様にして抽出演奏データ中のタイミング値を修正して抽出に係る演奏区間の長さを調整する。図15(C)の例では、トレモロ音T11〜T14を含む演奏区間の長さを2拍に相当する長さとし、トレモロ音T24の消音タイミングが該演奏区間外となるのを許容している。このようにすると、自然感を出すのに役立つ。この後は、必要に応じて、図5のステップS6,S7で述べたと同様にして音高や音量の修正処理を行なうことができる。
【0058】
図16は、短い複音トレモロ演奏データに基づいて長い複音トレモロ演奏データを作成する方法を示すものであり、図15と同様の部分には同様の符号を付して詳細な説明を省略する。
【0059】
図16(A)のステップでは、図15(B)で述べたと同様の生演奏データをトレモロ音T11〜T14,T21〜T24に対応する演奏区間分だけ用意する。この生演奏データは、トレモロ音T14の次のトレモロ音T15の発音タイミングを指示するタイミングデータを含むと共に、トレモロ音T24の次のトレモロ音T25の発音タイミングを指示するタイミングデータを含んでいる。ENは、2拍に相当する演奏区間の終了タイミングを表わす。
【0060】
図16(B)のステップでは、用意された生演奏データから先頭組のトレモロ音T11,T21〜末尾組のトレモロ音T14,T24の演奏データ(トレモロ音T15,T25の発音タイミングを指示するタイミングデータを含む)を抽出した後、先頭組のトレモロ音T11,T21に関する演奏データを除いて第2組のトレモロ音T12,T22〜末尾組のトレモロ音T14,T24の演奏データ(トレモロ音T15,T25の発音タイミングを指示するタイミングデータを含む)を抽出する。図16において、RHは、2回目の抽出データの先頭位置を示す。2回目の抽出処理で先頭組のトレモロ音T11,T21を除外するのは、複音トレモロ演奏で先頭組の音符が強調されることによるもので、自然さを出すのに役立つ。
【0061】
1回目の抽出データと2回目の抽出データとは、図17に示すようにして接続する。すなわち、トレモロ音T14のオフイベントデータの組にトレモロ音T12のオンイベントデータの組を接続すると共に、トレモロ音T12のオンイベントデータの組にトレモロ音T24のオフイベントデータの組を接続し、トレモロ音T24のオフイベントデータの組にトレモロ音T22のオンイベントデータの組を接続する。ここで、トレモロ音T12のタイミングデータとしては、トレモロ音T15の発音タイミングTM15を指示するタイミングデータを用い、トレモロ音T22のタイミングデータとしては、トレモロ音T25の発音タイミングTM25を指示するタイミングデータを用いる。このようにすると、末尾組の音符の演奏後の無音時間を反映させて自然な感じを出すことができる。
【0062】
この後は、必要に応じて、上記したと同様の抽出・接続処理を行ない、図15(C)で述べた区間長調整以降の処理を行なう。
【0063】
図18は、種々の複音トレモロ記号について複音トレモロ演奏用音符への変換を例示するものである。
【0064】
図18(A)〜(C)は、いずれも単音と複音の反復によるトレモロ演奏の例である。図18(C)の例では、反復の組合せが楽譜上に明示的に示されているが、図18(A)及び(B)の例では、楽譜に反復の組合せが明示されていない。明示されていなければ、反復の組合せは自由であるが、指の機能上通常の奏法に従うことになる。
【0065】
図18(A)の例では、右手で弾くとすれば、2:1(複音+単音)に分割するのが一般的であり、左手で弾くとすれば、1:2(単音+複音)に分割するのが一般的である。すなわち、親指が単音になり、その他の指が複音になるというのが通例である。親指の方が他の指よりも力が強いので、バランスをとると自然にこのような組合せになるものと考えられる。従って、楽譜全体を見て、特定のトレモロ記号が右手又は左手のいずれで演奏されるのか判定できるときは、その判定結果に従って分割形態を決定する。
【0066】
図18(D)及び(E)には、同一の複音トレモロ記号に基づく2通りのトレモロ演奏用音符を示す。図18(D)の例は、1:3(単音+複音)に分割したものであり、図18(E)の例は、2:2(複音+複音)に分割したものである。右手演奏を想定すれば、一般的には図18(D)のような演奏になる。しかし、ある種の効果を狙って図18(E)のような演奏を行なうことがないわけではない。従って、どの分割形態にするのか予め決定すればよい。
【0067】
楽譜全体を見ただけでは、特定のトレモロが右手又は左手のいずれで演奏するのか不明の場合もありうる。このような場合は、いずれか一方の手を使うという場面であろうから、右手で演奏を行なうものとして分割形態を決定すればよい。
【0068】
上記のように分割形態を決定した後は、決定に係る分割形態に相当するトレモロ演奏用音符に従って生演奏を行ない、生演奏データを用意する。そして、用意した生演奏データを用いて図15,16で述べたようにしてゆらぎ性の演奏データを作成する。
【0069】
図19は、この発明の一実施形態に係る自動演奏装置を備えた電子楽器の回路構成を示すものである。この電子楽器は、パーソナルコンピュータ等の小型コンピュータによって楽音発生、自動演奏等が制御されるようになっている。
【0070】
バス10には、CPU(中央処理装置)12、ROM(リード・オンリィ・メモリ)14、RAM(ランダム・アクセス・メモリ)16、検出回路18,20、表示制御回路22、タイマ24、インターフェース26、記憶装置28、音源装置30、DSP(ディジタル・シグナル・プロセッサ)32、サウンドシステム34等が接続されている。
【0071】
CPU12は、ROM14にストアされたプログラムに従って楽音発生、自動演奏等のための各種処理を実行するもので、これらの処理については図20〜24を参照して後述する。
【0072】
RAM16は、CPU12による各種処理に際してフラグ、レジスタ等として利用される多数の記憶領域を含むもので、この発明の実施に関係する記憶領域としては、走行/停止フラグRUN、ゆらぎ付加フラグUA,ゆらぎ強化フラグUB、楽曲演奏データ記憶部MA,MB、基準演奏データ記憶部RA、抽出演奏データ記憶部RB等が設けられている。
【0073】
検出回路18は、鍵盤36から鍵操作情報を検出するものである。検出回路20は、操作子群38から各種操作子の操作情報を検出するものである。操作子群38は、パネル面に設けられた種々の操作子と、文字及び数字入力可能なキーボードと、ポインティングデバイスとしてのマウスとを含んでいる。この発明の実施に関係する操作子としては、ゆらぎ付加スイッチ、ゆらぎ強化スイッチ、スタート/ストップスイッチ等が設けられている。また、マウスやキーボードは、選曲操作、トレモロ記号指定操作等に用いられる。
【0074】
表示制御回路22は、表示器40の表示動作を制御することにより各種の表示(例えば楽譜表示)を可能にするものである。
【0075】
タイマ24は、与えられるテンポデータTDに対応する周期でテンポクロック信号TCLとしてクロックパルスを発生するものである。テンポクロック信号TCLは、割込命令としてCPU12に供給される。CPU12は、テンポクロック信号TCLとしてのクロックパルスが発生されるたびに図24の割込処理を開始する。この割込処理により記憶部MA又はMBの楽曲演奏データに基づいて自動演奏が行なわれる。
【0076】
インターフェース26は、MIDI(Musical Instrument Digital Interface)規格に適合したもので、MIDI機器等の外部機器42との間で楽音制御情報、演奏情報等の情報通信を行なうために設けられたものである。
【0077】
記憶装置28は、HD(ハードディスク)、FD(フロッピーディスク)、CD(コンパクトディスク)、DVD(ディジタル多目的ディスク)、MO(光磁気ディスク)等のうち1又は複数種類の記憶媒体を着脱可能なものである。記憶装置28に所望の記憶媒体を装着した状態では、記憶媒体からRAM16へデータを転送可能である。また、装着した記憶媒体がHDやFDのように書込可能なものであれば、RAM16のデータを記憶媒体に転送可能である。この実施形態では、多数の楽曲の演奏データを記憶した記憶媒体から所望の楽曲の演奏データを選択して読出して自動演奏を行なうことができる。
【0078】
プログラム記憶手段としては、ROM14の代りに記憶装置28の記憶媒体(前述のHD,CD,DVD,MO等)を用いることができる。この場合、記憶媒体に記憶したプログラムは、記憶装置28からRAM16へ転送する。そして、RAM16に記憶したプログラムに従ってCPU12を動作させる。このようにすると、プログラムの追加やバージョンアップ等を容易に行なうことができる。記憶装置28を通信ネットワークに接続することにより、編集対象とする楽曲演奏データや基準演奏データの取得が可能になると共に、プログラムの更新も容易になる。
【0079】
音源装置30は、多数(例えば64個)の楽音発生チャンネルを有するものである。鍵盤36での押鍵操作及び/又は記憶部MA又はMBからのデータ読出しに基づいて発音要求があると、CPU12は、各発音要求に対応する発音命令信号とノートナンバ(音高情報)とベロシティ値(音量情報)とを空き状態のいずれかの楽音発生チャンネルに割当てる。このため、割当てに係る楽音発生チャンネルからは、ノートナンバに対応した音高を有する楽音信号がベロシティ値に対応した音量で発生される。また、鍵盤36での離鍵操作及び/又は記憶部MA又はMBからのデータ読出しに基づいて消音要求があると、CPU12は、各消音要求に係るノートナンバに対応した楽音信号を発生中の楽音発生チャンネルに消音命令信号を供給して発生中の楽音信号の減衰を開始させる。
【0080】
DSP32は、音源装置30からのディジタル形式の楽音信号に対して音色、音量、音響等の各種効果を付与可能なもので、付与すべき効果は、操作子群38中のパネル操作子の操作に基づいてCPU12により指示される。
【0081】
サウンドシステム34は、ディジタル/アナログ変換器、出力アンプ、スピーカ等を含むもので、DSP32からの楽音信号を音響に変換する。
【0082】
図20,21は、メインルーチンの処理の流れを示すもので、このルーチンは、電源オン等に応じてスタートする。ステップ50では、初期設定処理を行ない、各種のフラグ、レジスタ等を初期設定する。
【0083】
次に、ステップ52では、選曲操作ありか判定する。表示器40の画面には、選択可能な楽曲の曲名等が表示される。ユーザは、表示された楽曲のうち所望の楽曲をマウス操作等により選択することができる。ステップ52の判定結果が肯定的(Y)であればステップ54に移る。
【0084】
ステップ54では、記憶装置28(又はROM14)から選択に係る楽曲の演奏データを読出して記憶部MA,MBに格納する。そして、ステップ56では、記憶部MBの演奏データに基づいて表示器40の画面に楽譜を表示する。なお、記憶装置28(又はROM14)の各楽曲演奏データは、楽譜通りのもので、ゆらぎ性を有していないものとする。
【0085】
ステップ52の判定結果が否定的(N)であったとき又はステップ56の処理が終ったときは、ステップ58でゆらぎ付加スイッチ(SW)の操作ありか判定する。この判定の結果が肯定的(Y)であればステップ60でフラグUAの内容を反転(0ならば1に、1ならば0に)する。
【0086】
ステップ58の判定結果が否定的(N)であったとき又はステップ60の処理が終ったときは、ステップ62でゆらぎ強化スイッチ(SW)の操作ありか判定する。この判定の結果が肯定的(Y)であればステップ64でフラグUBの内容を反転する。
【0087】
ステップ62の判定結果が否定的(N)であったとき又はステップ64の処理が終ったときは、ステップ66でスタート/ストップスイッチ(SW)の操作ありか判定する。この判定の結果が肯定的(Y)であればステップ68でフラグRUNの内容を反転する。
【0088】
ステップ66の判定結果が否定的(N)であったとき又はステップ68の処理が終ったときは、ステップ70でフラグRUNの値が0から1に変化したか判定する。この判定の結果が肯定的(Y)であれば、ステップ72で記憶部MA,MB内の先頭位置に読出位置をセットする。これは、演奏データを読出すための準備処理である。
【0089】
ステップ70の判定結果が否定的(N)であったとき又はステップ72の処理が終ったときは、ステップ74でRUNの値が1から0に変化したか判定する。この判定の結果が肯定的(Y)であればステップ76で自動演奏音の消音処理を行なう。すなわち、音源装置30において自動演奏音信号として発生中のすべての楽音信号を減衰開始させる。
【0090】
ステップ74の判定結果が否定的(N)であったとき又はステップ76の処理が終ったときは、ステップ78でトレモロ記号の指定操作ありか判定する。ユーザは、表示器40の画面に表示された楽譜においてゆらぎ付加を望むトレモロ記号をマウス操作等により指定することができる。ステップ78の判定結果が肯定的(Y)であればステップ80に移る。
【0091】
ステップ80では、フラグUAが1か(ゆらぎ付加モードか)判定する。この判定の結果が肯定的(Y)であればステップ82でゆらぎ付加処理のサブルーチンを実行する。このサブルーチンについては、図22を参照して後述する。
【0092】
ステップ78の判定結果が否定的(N)であったとき、ステップ80の判定結果が否定的(N)であったとき又はステップ82の処理が経ったときは、ステップ84でフラグUA,UBが共に1か判定する。この判定結果が肯定的(Y)であればステップ86で記憶部MBの演奏データを所定範囲内でランダムに修正する。例えば、演奏データ中の発音タイミング値及びベロシティ値をそれぞれ所定範囲内でランダムに修正する。この結果、ステップ82のゆらぎ付加処理でゆらぎ性が付加された演奏データは、ゆらぎ性が一層強化される。
【0093】
ステップ84の判定結果が否定的(Y)であったとき又はステップ86の処理が終ったときは、ステップ88でその他の処理を行なう。その他の処理としては、鍵盤36での鍵操作に基づく楽音発生処理、パネル操作子の操作に基づく各種楽音パラメータ(例えば音色、効果、自動演奏テンポ等)の設定処理等がある。
【0094】
ステップ88の後は、ステップ90で電源オフ等の終了指示ありか判定する。この判定の結果が否定的(N)であればステップ52に戻り、ステップ52以降の処理を上記したと同様に繰返す。ステップ90の判定結果が肯定的(Y)になると、処理エンドとする。
【0095】
図22は、ゆらぎ付加処理の流れを示すものである。ステップ100では、図21のステップ78での指定に係るトレモロ記号に基づいて図5のステップS2で述べたと同様にしてトレモロ演奏用音符の種類と数とを求める。
【0096】
次に、ステップ102では、先に求めた音符種類に対応する生演奏データをデータベースから読出して記憶部RAに基準演奏データとして格納する。データベースとしては、記憶装置28(又はROM14)が用いられ、これには予め音符種類毎に生演奏データが記憶されている。図11,12に関して前述したように1つのトレモロ記号に複数通りの演奏形態がある場合には、表示器40の画面に複数通りの演奏形態(トレモロ演奏用音符)を表示し、ユーザによるトレモロ記号の指定時に、ユーザに所望の演奏形態を指定させる。そして、ステップ102では、ユーザの指定した演奏形態に対応する生演奏データを読出して記憶部RAに格納する。このようにすると、作成される演奏データにユーザの好みを一層反映させることができる。
【0097】
次に、ステップ104では、記憶部RAの演奏データから、先に求めた音符数に対応する演奏区間の演奏データを抽出して記憶部RBに格納する。このときの抽出処理は、図5のステップS4で述べたと同様にして行なうことができる。
【0098】
次に、ステップ106では、図5のステップS5〜S7で述べたと同様にしてトレモロ演奏用音符に従って記憶部RBの演奏データ中の演奏タイミング値、ノートナンバ、ベロシティ値を修正する。この結果、記憶部RBでは、生演奏に基づくゆらぎ性の演奏データの作成が完了したことになる。
【0099】
この後、ステップ108では、記憶部RBの演奏データに従って記憶部MBの演奏データを修正する。演奏データの修正は、一例として図23に示すようにして行なう。
【0100】
すなわち、記憶部MBには、選択に係る楽曲の演奏データが格納されており、指定に係るトレモロ記号に対応する演奏データは、トレモロ音TN1のオンイベントデータの組からトレモロ音TNMのオフイベントデータの組までのデータとする。一方、記憶部RBには、指定に係るトレモロ記号に対応する演奏データとして、トレモロ音Tn1のオンイベントデータの組からトレモロ音Tnmのオフイベントデータの組までのデータと、トレモロ音Tnmの次のトレモロ音の発音タイミングを指示するタイミングデータFTMと、終端マークを表わすデータFMDとが格納されている。トレモロ音TN1のタイミングデータは、直前のトレモロ音の消音タイミングから拍頭までの時間を表わし、トレモロ音Tn1のタイミングデータは、拍頭からの時間を表わすものとすると、TN1のタイミング値にTn1のタイミング値を加算したものを新たなTN1のタイミング値とする。また、TN1のノートオンイベントデータからTNMのノートオフイベントデータまでのデータをTn1のノートオンイベントデータからTnmのノートオフイベントデータまでのデータに従って書換える。さらに、TNMの次のトレモロ音TNNのタイミングデータをタイミングデータFTMに従って書換える。これは、区間最後の無音時間を記憶部MBの演奏データに反映させるためである。上記のように演奏データの修正が終ったときは、図20,21のルーチンにリターンする。
【0101】
図24は、自動演奏のための割込処理を示すもので、ステップ100では、フラグRUNが1か判定する。この判定の結果が否定的(N)であれば、以下に述べるような処理が不要であるので、図20,21のルーチンにリターンする。
【0102】
ステップ100の判定結果が肯定的(Y)であったときは、ステップ112に移り、フラグUAが1か(ゆらぎ付加モードか)判定する。この判定の結果が否定的(N)であればステップ114で再生タイミングか判定する。この判定は、記憶部MAにおける読出位置のタイミングデータが示すタイミング値と、テンポクロック信号TCLを計数するテンポカウンタ(RAM16内にある)のカウント値とが一致したか調べることにより行なうことができる。ステップ114の判定結果が否定的(N)であったときは、図20,21のルーチンにリターンする。
【0103】
ステップ114の判定結果が肯定的(Y)であったときは、ステップ116で記憶部MAから再生タイミングであるとされたタイミングデータと組をなすイベントデータを読出す。このとき読出されるイベントデータは、ノートオンイベントデータ及びベロシティデータ、ノートオフイベントデータ又は他のイベント(例えば音色や音量の変更イベント)データである。
【0104】
次に、ステップ118では、読出されたのがノートイベントデータか判定する。この判定の結果が肯定的(Y)であればステップ120でノートオンイベントデータか判定する。この判定結果が肯定的(Y)であればステップ122で発音処理を行なう。すなわち、読出しに係るノートオンイベントデータ中のノートナンバと、ベロシティデータ中のベロシティ値と、発音命令信号とを空き状態の楽音発生チャンネルの1つに割当てて楽音信号を発生させる。そして、図20,21のルーチンにリターンする。
【0105】
ステップ120の判定結果が否定的(N)であったときは、ノートオフイベントであったことになり、ステップ124で消音処理を行なう。すなわち、読出しに係るノートオフイベントデータ中のノートナンバと同じノートナンバに従って楽音信号を発生中である楽音発生チャンネルに対して消音命令信号を供給して該楽音信号を減衰開始させる。そして、図20,21のルーチンにリターンする。
【0106】
ステップ118の判定結果が否定的(N)であったときは、ステップ126で読出データに応じた処理を行なう。例えば、読出データがトータルボリュームに相当する音量の変更を指示するデータであれば、該データに従って音量を変更する。なお、上記したようにイベントデータを読出したときは、読出位置が次のイベントデータ中のタイミングデータの位置に変更される。
【0107】
上記したステップ114〜126の処理によれば、記憶部MAの演奏データに基づいてゆらぎ性のない自動演奏を行なうことができる。
【0108】
ステップ112の判定結果が肯定的(Y)であった(ゆらぎ付加モードであった)ときは、ステップ128で再生タイミングか判定する。この判定は、記憶部MBにおける読出位置のタイミングデータが示すタイミング値と、前述のテンポカウンタのカウント値とが一致したか調べることにより行なうことができる。ステップ128の判定結果が否定的(N)であったときは、図20,21のルーチンにリターンする。
【0109】
ステップ128の判定結果が肯定的(Y)であったときは、ステップ130で記憶部MBから再生タイミングであるとされたタイミングデータと組をなすイベントデータを読出す。このとき読出されるイベントデータは、ステップ116で述べたと同種類のものである。
【0110】
次に、ステップ132では、読出されたのがノートイベントデータか判定する。この判定の結果が肯定的(Y)であればステップ120でノートオンイベントデータか判定する。この判定の結果が肯定的(Y)であれば、ステップ122で前述したと同様に発音処理を行ない、楽音信号を発生させる。
【0111】
ステップ120の判定結果が否定的(N)であったときは、ステップ124で前述したと同様に消音処理を行ない、楽音信号の減衰を開始させる。
【0112】
ステップ132の判定結果が否定的(N)であったときは、ステップ126に移り、前述したと同様に読出データに応じた処理を行なう。
【0113】
上記したステップ128〜132,120〜126の処理によれば、記憶部MBの演奏データ(すなわち、図23で述べたように生演奏に基づいて作成されたゆらぎ性の演奏データをトレモロ部に有する演奏データ)に基づいてトレモロ部のゆらぎ性を強調した自動演奏を行なうことができる。また、ゆらぎ強化モードにすると、トレモロ部のゆらぎ性が一層強化されると共に、トレモロ部以外の部分にもゆらぎ性が付与される。
【0114】
この発明は、上記した実施形態に限定されるものではなく、種々の改変形態で実施可能なものである。例えば、次のような変更が可能である。
【0115】
(1)記憶部MBの演奏データは、記憶装置28の記憶媒体に転送し、他の機会に本電子楽器又は他の電子楽器で該記憶媒体の演奏データに基づいて自動演奏を行なうようにしてもよい。
【0116】
(2)音量設定のための演算処理としては、加減算処理に限らず、乗除算処
理を用いるようにしてもよい。但し、1個所の処理において、加減算処理と乗除算処理とを併用しない方がよい。
【0117】
(3)演奏データとしては、トレモロの演奏データに限らず、アルペジオ、トリル、グリッサンド等の音符群の演奏データを作成するようにしてもよい。
【0118】
(4)演奏データのフォーマットは、イベントの発生時刻を1つ前のイベントからの相対時間で表わす「イベント+相対時間」方式に限らず、イベントの発生時刻を曲や小節内の絶対時間で表わす「イベント+絶対時間」方式、音符の音高と音符長及び休符と休符長で曲の内容を表す「音高(休符)+符長」方式、イベント発生の最小時間単位毎に記憶領域を確保し、イベントの発生時刻に対応する記憶領域にイベントを記憶する方式等の任意の方式を用いることができる。
【0119】
【発明の効果】
以上のように、この発明によれば、時系列的な音符群中の音符種類に対応したゆらぎ性の基準演奏データを用意すると共に、音符群中の音符数に対応する演奏区間の演奏データを基準演奏データから抽出し、抽出に係る演奏区間の演奏データを音符群中の少なくとも1つの音符に従って修正するようにしたので、所望の音符群毎にゆらぎ性の演奏データを簡単に作成することができると共に同一種類の音符については基準演奏データの変更が不要であり、処理が簡単となる効果が得られる。
【0120】
また、抽出された演奏区間の演奏データ中の演奏タイミング情報や音高情報を音符群の区間長や音高に従ってそれぞれ修正するようにしたので、音符群中の音符数や音高が変更されても、基準演奏データの変更が不要であり、処理が簡単となる効果が得られる。
【0121】
その上、所望の音符群を指定すると共に指定に係る音符群に対応する演奏データをこの発明の方法で作成し、作成に係る演奏データに従って自動演奏用の演奏データの一部を修正するようにしたので、自動演奏される楽曲の一部に簡単にゆらぎ性を付与したり、ゆらぎ性を付与する音符群を簡単に変更したりすることができ、生演奏に近似した自動演奏を手軽に楽しめる効果が得られる。
【図面の簡単な説明】
【図1】 トレモロ記号のトレモロ演奏用音符への変換の一例を示す図である。
【図2】 トレモロの生演奏の一例を示す図である。
【図3】 図2の生演奏に基づいて作成された演奏データの一例を示す図である。
【図4】 この発明に係るトレモロ演奏データ作成方法の一例を示す図である。
【図5】 図4の方法を説明するためのフローチャートである。
【図6】 図4,5の方法で作成された演奏データの一例を示す図である。
【図7】 短い生演奏データに基づいて長い演奏データを作成する方法の一例を示す図である。
【図8】 図7の方法におけるデータ接続状況を示す図である。
【図9】 短い生演奏データに基づいて長い演奏データを作成する方法の他の例を示す図である。
【図10】 図9の方法におけるデータ接続状況を示す図である。
【図11】 複音トレモロ記号のトレモロ演奏用音符への変換の一例を示す図である。
【図12】 複音トレモロ記号のトレモロ演奏用音符への変換の他の例を示す図である。
【図13】 この発明に係る複音トレモロ演奏データ作成方法の一例を示す図である。
【図14】 図13の方法における和音構成音の音量設定を説明するための図である。
【図15】 この発明に係る複音トレモロ演奏データ作成方法の他の例を示す図である。
【図16】 短い複音トレモロ生演奏データに基づいて長い複音トレモロ演奏データを作成する方法の一例を示す図である。
【図17】 図16の方法におけるデータ接続状況を示す図である。
【図18】 種々の複音トレモロ記号について複音トレモロ演奏用音符への変換を例示する図である。
【図19】 この発明の一実施形態に係る自動演奏装置を備えた電子楽器の回路構成を示すブロック図である。
【図20】 メインルーチンの一部を示すフローチャートである。
【図21】 メインルーチンの残部を示すフローチャートである。
【図22】 ゆらぎ付加のサブルーチンを示すフローチャートである。
【図23】 演奏データ修正の一例を示す図である。
【図24】 割込処理を示すフローチャートである。
【符号の説明】
10:バス、12:CPU、14:ROM、16:RAM、18,20:検出回路、22:表示制御回路、24:タイマ、26:インターフェース、28:記憶装置、30:音源装置、32:DSP、34:サウンドシステム、36:鍵盤、38:操作子群、40:表示器、42:外部機器、RUN:走行/停止フラグ、UA:ゆらぎ付加フラグ、UB:ゆらぎ強化フラグ、MA,MB:楽曲演奏データ記憶部、RA:基準演奏データ記憶部、RB:抽出演奏データ記憶部。
Claims (15)
- 時系列的な音符群を指定するステップと、
前記音符群の構成音符に従う楽器の生演奏に基づいて、各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを作成するステップと、
作成された演奏データから前記音符群の音符数分の演奏データを抽出するステップと、
抽出された演奏データを前記音符群中の少なくとも1つの音符に従って修正するステップと
を含む演奏データ作成方法。 - 前記修正するステップでは、前記抽出された演奏データに基づく演奏区間の長さが前記音符群で表わされる区間長と一致又は近似するように前記抽出された演奏データ中の演奏タイミング情報を修正する請求項1記載の演奏データ作成方法。
- 前記修正するステップでは、前記音符群で表わされる音高に従って前記抽出された演奏データ中の音高情報を修正する請求項1又は2記載の演奏データ作成方法。
- 前記作成するステップにおいて前記演奏データは各音符毎に前記演奏タイミング情報として発音タイミング情報を含み、前記抽出するステップでは、前記抽出された演奏データに基づく演奏区間の最後の音符の次の音符に関する発音タイミング情報を前記作成された演奏データから抽出して前記抽出された演奏データに含ませる請求項1〜3のいずれかに記載の演奏データ作成方法。
- 前記作成するステップでは、前記音符群中の音符数より少ない所定の音符数に対応して前記演奏データを作成し、前記抽出するステップでは、前記作成された演奏データにおいて先頭音符を含めて複数音符分の演奏データを抽出した後該先頭音符を除いて必要音符数分の演奏データを抽出すると共に先に抽出された演奏データと後で抽出された演奏データとを接続することにより前記音符群の音符数分の演奏データを得る請求項1〜4のいずれかに記載の演奏データ作成方法。
- 和音の反復演奏を表わす音符群を指定するステップと、
前記和音を構成する複数音のうちの1音に相当する音符に従う楽器の反復的な生演奏に基づいて、各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを作成するステップと、
作成された演奏データから前記音符群中の和音数分の演奏データを抽出するステップと、
抽出された演奏データに基づく演奏区間の長さが前記音符群で表わされる区間長と一致又は近似するように前記抽出された演奏データ中の演奏タイミング情報を修正する第1の修正ステップと、
この第1の修正ステップで修正を受けた演奏データを前記和音の構成音数より1少ない数分だけ複製するステップと、
複製に係る演奏データ中の音高情報を前記和音を構成する複数音のうちの他の音の音高に従って修正する第2の修正ステップと
を含む演奏データ作成方法。 - 前記作成するステップにおいて前記演奏データは各音符毎に音量情報を含み、前記第1の修正ステップで修正を受けた演奏データ中の音量情報と前記複製に係る演奏データ中の音量情報とを前記和音の発音タイミングにて異ならせるように修正するステップを更に含む請求項6記載の演奏データ作成方法。
- 前記作成するステップにおいて前記演奏データは各音符毎に前記演奏タイミング情報として発音タイミング情報を含み、前記第1の修正ステップで修正を受けた演奏データ中の発音タイミング情報と前記複製に係る演奏データ中の発音タイミング情報とを前記和音の発音タイミングにて異ならせるように修正するステップを更に含む請求項6又は7記載の演奏データ作成方法。
- 発音タイミング及び音高を異にする複数音の反復演奏を表わす音符群を指定するステップと、
前記複数音に相当する複数音符に従う楽器の反復的な生演奏に基づいて、各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを作成するステップと、
作成された演奏データから前記音符群中の前記複数音対応の音符組の組数分の演奏データを抽出するステップと、
抽出された演奏データを前記音符群中の少なくとも1つの音符に従って修正するステップと
を含む演奏データ作成方法。 - 前記修正するステップでは、前記抽出された演奏データに基づく演奏区間の長さが前記音符群で表わされる区間長と一致又は近似するように前記抽出された演奏データ中の演奏タイミング情報を修正する請求項9記載の演奏データ作成方法。
- 前記作成するステップにおいて前記演奏データは各音符毎に前記演奏タイミング情報として消音タイミング情報と含み、前記修正するステップでは、前記演奏区間の最後の音符に関する消音タイミング情報が前記演奏区間外の消音タイミングを指示するのを許容する請求項10記載の演奏データ作成方法。
- 前記作成するステップでは、前記音符群中の前記複数音対応の音符組の組数より少ない所定の音符組数に対応して前記演奏データを作成し、前記抽出するステップでは、前記作成された演奏データにおいて先頭組の音符を含めて複数組の音符に関する演奏データを抽出した後該先頭組の音符を除いて必要組数の音符に関する演奏データを抽出すると共に先に抽出された演奏データと後で抽出された演奏データとを接続することにより前記複数音対応の音符組の組数分の演奏データを得る請求項9〜11のいずれかに記載の演奏データ作成方法。
- 楽曲を自動演奏するための演奏データを記憶する第1の記憶手段と、
時系列的な音符群毎に該音符群の構成音符に従う楽器の生演奏に基づいて作成された演奏データであって各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを記憶する第2の記憶手段と、
前記楽曲中で所望の時系列的な音符群を指定する指定手段と、
この指定手段で指定された音符群に対応する演奏データを前記第2の記憶手段から読出す読出手段と、
前記第2の記憶手段から読出された演奏データから、前記指定手段で指定された音符群の音符数分の演奏データを抽出する抽出手段と、
この抽出手段で抽出された演奏データを前記指定手段で指定された音符群中の少なくとも1つの音符に従って修正する第1の修正手段と、
前記第1の記憶手段の演奏データにおいて前記指定手段で指定された音符群に関する演奏データを前記第1の修正手段で修正を受けた演奏データに従って修正する第2の修正手段と、
この第2の修正手段で修正された演奏データを含む前記第1の記憶手段の演奏データに従って前記楽曲の自動演奏を行なう自動演奏手段と
を備えた自動演奏装置。 - 複数の時系列的な音符群に変換可能な演奏記号を前記楽曲中で指示する指示手段と、この指示手段で指示された演奏記号を前記複数の時系列的な音符群に変換する変換手段とを更に備え、前記指定手段では、前記変換手段での変換に係る複数の時系列的な音符群のうち所望の音符群を指定する請求項13記載の自動演奏装置。
- 楽曲を自動演奏するための演奏データを記憶する第1の記憶手段と、
時系列的な音符群毎に該音符群の構成音符に従う楽器の生演奏に基づいて作成された演奏データであって各音符毎に演奏タイミング情報及び音高情報を含み且つ演奏タイミングにゆらぎのある演奏データを記憶する第2の記憶手段と、
前記楽曲中で所望の時系列的な音符群を指定する指定手段と
を備えたコンピュータにおいて使用される記録媒体であって、
前記指定手段で指定された音符群に対応する演奏データを前記第2の記憶手段から読出すステップと、
前記第2の記憶手段から読出された演奏データから、前記指定手段で指定された音符群の音符数分の演奏データを抽出する抽出ステップと、
この抽出ステップで抽出された演奏データを前記指定手段で指定された音符群中の少なくとも1つの音符に従って修正する第1の修正ステップと、
前記第1の記憶手段の演奏データにおいて前記指定手段で指定された音符群に関する演奏データを前記第1の修正ステップで修正を受けた演奏データに従って修正する第2の修正ステップと、
この第2の修正ステップで修正された演奏データを含む前記第1の記憶手段の演奏データに従って前記楽曲の自動演奏を行なうステップと
をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33125799A JP3837981B2 (ja) | 1999-11-22 | 1999-11-22 | 演奏データ作成方法、自動演奏装置及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33125799A JP3837981B2 (ja) | 1999-11-22 | 1999-11-22 | 演奏データ作成方法、自動演奏装置及び記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001147690A JP2001147690A (ja) | 2001-05-29 |
JP3837981B2 true JP3837981B2 (ja) | 2006-10-25 |
Family
ID=18241676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33125799A Expired - Fee Related JP3837981B2 (ja) | 1999-11-22 | 1999-11-22 | 演奏データ作成方法、自動演奏装置及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3837981B2 (ja) |
-
1999
- 1999-11-22 JP JP33125799A patent/JP3837981B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001147690A (ja) | 2001-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2000514571A (ja) | 自動即興演奏システム及び方法 | |
JPH11126074A (ja) | アルペジオ発音装置およびアルペジオ発音を制御するためのプログラムを記録した媒体 | |
JP2612923B2 (ja) | 電子楽器 | |
JP3698057B2 (ja) | 自動アレンジ装置及び方法 | |
JP3915807B2 (ja) | 奏法自動判定装置及びプログラム | |
JP3837981B2 (ja) | 演奏データ作成方法、自動演奏装置及び記録媒体 | |
JP3812510B2 (ja) | 演奏データ処理方法および楽音信号合成方法 | |
JP4802947B2 (ja) | 奏法決定装置及びプログラム | |
JPH0683355A (ja) | 自動伴奏装置 | |
JP6790362B2 (ja) | 電子音響装置 | |
JP3641955B2 (ja) | 楽曲データ生成装置及びそのための記録媒体 | |
JP3620396B2 (ja) | 情報修正装置及び情報修正プログラムを記録した媒体 | |
JP3587133B2 (ja) | 発音長決定方法と装置及び記録媒体 | |
JP3752859B2 (ja) | 自動作曲装置と記録媒体 | |
JP2002268637A (ja) | 拍子判定装置、及びプログラム | |
JP3669301B2 (ja) | 自動作曲装置及び方法並びに記憶媒体 | |
JP3812509B2 (ja) | 演奏データ処理方法および楽音信号合成方法 | |
JP3632551B2 (ja) | 演奏データ作成装置と演奏データ作成方法 | |
JP3296182B2 (ja) | 自動伴奏装置 | |
JP4449370B2 (ja) | 自動伴奏生成装置及びプログラム | |
JPH08152878A (ja) | 自動演奏装置 | |
JP3637782B2 (ja) | データ生成装置と記録媒体 | |
JP3752940B2 (ja) | 自動作曲方法、自動作曲装置及び記録媒体 | |
JP3738634B2 (ja) | 自動伴奏装置、及び記録媒体 | |
JP3709820B2 (ja) | 楽曲情報編集装置及び楽曲情報編集プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051020 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060328 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060526 |
|
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: 20060711 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060724 |
|
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: 20100811 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100811 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110811 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120811 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130811 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |