JP3231482B2 - テンポ検出装置 - Google Patents

テンポ検出装置

Info

Publication number
JP3231482B2
JP3231482B2 JP13611893A JP13611893A JP3231482B2 JP 3231482 B2 JP3231482 B2 JP 3231482B2 JP 13611893 A JP13611893 A JP 13611893A JP 13611893 A JP13611893 A JP 13611893A JP 3231482 B2 JP3231482 B2 JP 3231482B2
Authority
JP
Japan
Prior art keywords
tempo
accent
performance
performance information
music
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
Application number
JP13611893A
Other languages
English (en)
Other versions
JPH06348272A (ja
Inventor
祐司 山下
克浩 豊田
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.)
Roland Corp
Original Assignee
Roland 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 Roland Corp filed Critical Roland Corp
Priority to JP13611893A priority Critical patent/JP3231482B2/ja
Publication of JPH06348272A publication Critical patent/JPH06348272A/ja
Application granted granted Critical
Publication of JP3231482B2 publication Critical patent/JP3231482B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えばメロディは自分
で演奏し、伴奏は自動的に行わせる自動伴奏装置等に用
いられるテンポ検出装置に関する。
【0002】
【従来の技術】従来、自動伴奏装置は、例えばこの自動
伴奏装置に備えられたつまみ等でテンポ(曲の速さ)を
設定すると、そのテンポで伴奏音を勝手に出力するよう
に構成されている。従って、演奏者はその伴奏に併せて
メロディを演奏している。つまり、従来の自動伴奏装置
では、自動伴奏装置のテンポに演奏者がメロディを合わ
せる必要があり、自動伴奏装置が主導の装置となってい
る。このため、演奏者が主導の自動伴奏装置、すなわ
ち、演奏者がメロディを演奏するテンポに伴奏を合わせ
ることができる自動伴奏装置が望まれている。このため
には、演奏者の演奏からテンポを抽出し、そのテンポで
伴奏を行う方法が考えられる。この方法としては従来か
ら、演奏のテンポをこの演奏の音量から検出する方法が
知られている。この従来の方法では演奏のテンポを検出
するために、演奏音をマイクロフォンに入力させてこの
演奏音を表す楽音信号を得、この楽音信号を整流して得
られた電圧の変化の周期、すなわち楽音信号の音量の変
化の周期を計測することが行なわれており、音量の変化
の周期が短いと速いテンポが検出され、このテンポに合
わせて伴奏が行われる。
【0003】
【発明が解決しようとする課題】しかし、従来の方法で
は、演奏の音量の変化のみからテンポを検出し伴奏をそ
のテンポに合わせているため、テンポが正しく検出され
ず伴奏がくるうことがある。また、従来のテンポ検出方
法では、すでに演奏されたメロディのテンポを検出し、
既に演奏済の過去のメロディから抽出したテンポで、現
在の伴奏のテンポを決めている。このため、たとえ過去
のテンポが正しく検出されたとしてもやはり現在の演奏
に伴奏が合わないことがある。
【0004】本発明は、上記事情に鑑み、演奏者の演奏
のテンポを正しく検出し、現在の演奏に合う伴奏のテン
ポを決めるテンポ検出装置を提供することを目的とす
る。
【0005】
【課題を解決するための手段】上記目的を達成するため
の本発明のテンポ検出装置は、 (1)外部から入力される演奏音の1音毎の音程、音
量、及び発音のタイミングを表す演奏情報に基づいて、
音量に起因するアクセントと、音量以外の音楽要素に起
因するを検出するアクセント検出手段 (2)アクセント検出手段で検出された双方のアクセン
トに基づいて、演奏情報のテンポの変化を予測するテン
ポ予測手段 (3)テンポ予測手段で予測されたテンポに、内部で生
成するテンポを追従させるテンポ変更手段 を備えたことを特徴とするものである。
【0006】
【作用】本発明者は、上記本発明の目的を達成するため
には、音量に起因するアクセントのみでなく、例えば音
程のアクセントや発音タイミングのアクセント等音量以
外の音楽要素のアクセントを考慮することが演奏のテン
ポを正しく検出するために有効であることに想到し、本
発明をなすに至った。
【0007】ここでは、音量のアクセントだけでなく、
音程のアクセントや発音タイミングのアクセント等、音
量のアクセント以外のアクセントも考慮したアクセント
を、以下、「音楽アクセント」と称する。すなわち、音
楽アクセントとは、楽曲の中で音量の大きい部分のこと
だけではなく、音楽的にめだつ部分や、区切りになる部
分を含めたものをいい、この音楽アクセントには、音量
の大小に起因する音量のアクセントのほか、例えば音の
長さの長短に起因するタイミングのアクセント、旋律が
上昇または下降する方向(以下、旋律の方向という。)
に起因する音程のアクセントなどがある。この音楽アク
セントは、譜面に記載された楽曲を解析して譜面から得
ることができ、この方法は従来から研究されている。発
音タイミングの決定方法には、例えば、演奏開始から演
奏情報が入力されるまでのステップ数を数える方法等が
あり、1拍を96ステップとすると、演奏開始から2拍
後に入力された演奏情報のタイミングは192となる。
ここで、音の長さが短い音から長い音に移る場合に長い
音にアクセントがあり、このアクセントをタイミングの
アクセントという。
【0008】また、旋律の方向が転換する場合にこの転
換した位置の演奏音にアクセントがあると感じられ、こ
のアクセントを音程のアクセントという。例えば、数音
からなる旋律が繰り返し演奏される箇所では、旋律の先
頭に音程のアクセントがあるといえる。本発明のテンポ
検出装置によれば、アクセント検出手段に入力される演
奏音の1音毎の演奏情報に基づいて、音楽アクセントが
検出される。この音楽アクセントに基づいて、テンポ予
測手段で、演奏のテンポの変化が予測される。テンポ変
更手段では、この予測されたテンポに、テンポ検出装置
の内部で生成するテンポを追従させている。このため、
演奏者の演奏のテンポが正しく検出され、現在の演奏に
合うように予測され、したがって現在の演奏に合う伴奏
のテンポを決めることができる。
【0009】
【実施例】以下、本発明の実施例を、図面を参照して説
明する。図1は、本発明のテンポ検出装置の第1実施例
を示すブロック図である。テンポ検出装置10には、外
部からの情報が入力される手段として、演奏されている
演奏音の1音毎の音程、音量、及び発音タイミングから
構成される演奏情報や演奏音を制御する制御情報などが
入力されるMIDI入力部11と、入力されたトリガ情
報を検出して演奏情報に変換するトリガ検出部12の2
つが備えられており、どちらを用いるかにより、後述す
るように、演奏情報を処理するためのプログラムの一部
が異なる。MIDI入力部11は、MIDI規格に準じ
た各種の演奏情報や制御情報が入力されるインターフェ
ースであり、例えば楽器20で演奏された演奏情報がM
IDI信号としてこのMIDI入力部11に入力され
る。一方、トリガ検出部12には例えば4つのドラムパ
ッド31,32,33,34が接続されており、これら
ドラムパッド31,32,33,34を打撃することに
より得られるトリガ信号がこのトリガ検出部12で検出
され、入力されたトリガ信号に基づいて演奏情報が生成
される。各トリガ信号には予め音程が割り当てられてい
る(図7参照)。図7の楽器名は、一般にMIDIの音
程情報に割り当てられる打楽器で、例えばMIDI音源
に音程情報「36」を送信すると、バスドラム音を発音
する。メモリ部13には、読出し専用メモリROMと、
読出し/書込み可能なメモリRAMが備えられており、
ROMには、例えば後述する各種のテンポ変化予測曲線
等を多数有するデータベースやテーブル、音楽アクセン
トを検出するためのルールなどが記憶され、RAMは後
述する各種のプログラムを実行するために必要なワーキ
ングメモリなどを有する。また、ROMには、音楽アク
セント検出部14、テンポ変化予測部15、テンポ変更
部16、及びクロック発生部17として示される各種プ
ログラムが内蔵されており、音楽アクセント検出部14
では、MIDI入力部11又はトリガ検出部12から入
力された演奏情報とメモリ部13に記憶されたルールに
基づいて音楽アクセントが検出される。テンポ変化予測
部15では、アクセント検出部14で得られた音楽アク
セントに基づいてテンポの変化が予測される。テンポ変
更部16では、テンポ変化予測部15で得られたテンポ
と同一のテンポになるように、テンポ検出装置10の内
部で生成されるテンポが修正される。クロック発生部1
7からは、テンポ変更部16で変更された内部のテンポ
に応じたクロックが発生される。MIDI出力部18
は、MIDI信号を外部へ出力するインターフェースで
あり、クロック発生部17で発生したクロック(MID
I信号の一種)が外部へ出力される。このMIDI出力
部18から出力されたMIDI信号に基づいて他の音源
を鳴らすこともできる。
【0010】ここで、上記のテンポ検出装置10により
テンポが検出されるまでの概略の手順を、楽器20を演
奏する場合を例にして説明する。 1.演奏者が演奏の初期テンポを予め設定する。初期テ
ンポの設定は、専用の操作子を設けて設定してもよい
し、演奏者が楽器20を演奏して入力してもよい。
【0011】2.楽器20で演奏された演奏音の1音毎
の音量、音程、及び発音タイミングから構成される演奏
情報が、MIDI入力部11を介して音楽アクセント検
出部14に入力される。尚、ドラムパッド31,32,
33,34を使用する場合は、ドラムパッド31,3
2,33,34の演奏により生成された演奏情報が、ト
リガ検出部12を介して音楽アクセント検出部14に入
力される。
【0012】3.音楽アクセント検出部14では、演奏
音1音毎の演奏情報とメモリ部13に記憶されたルール
に基づいて音楽アクセントが検出され、これにより音楽
アクセントの分布が得られる。 4.テンポ変化予測部15では、音楽アクセント検出部
14で得られた音楽アクセントの分布からテンポの変化
が予測される。
【0013】5.テンポ変更部16では、テンポ変化予
測部15で得られたテンポになるように、テンポ検出装
置10の内部で生成されるテンポが修正される。 6.クロック発生部17では、テンポ変更部16におい
て変更された内部のテンポに応じたクロックが発生さ
れ、MIDI出力部18を介して外部に出力される。
【0014】次に、上記のテンポ検出装置10によりテ
ンポが検出されるまでのフローを説明する。先ず、音楽
アクセント検出部14でのフローを、図2、図3を参照
して説明する。図2は演奏情報格納バッファのデータ構
造を示す図、図3は音楽アクセント検出部に対応するフ
ローを示すフローチャートである。
【0015】図2に示されるように、演奏情報格納バッ
ファ40はリングバッファになっており、読出しポイン
タと書込みポインタがプログラム中で更新されながら、
演奏音1音毎の音程、音量、及び発音タイミングから構
成される演奏情報が格納される。図3に示されるフロー
は、現在演奏されている演奏音の演奏情報(以下、現在
の演奏情報という。)と直前に演奏された演奏音の演奏
情報(以下、直前の演奏情報という。)に基づいて、直
前に演奏された演奏音の音程のアクセントの大きさを表
す値とタイミングのアクセントの大きさを表す値を検出
し、これらの値を直前の演奏音の音量のアクセントに加
算してテンポを検出するフローである。このフローは、
MIDI入力部11もしくはトリガ検出部12(図1参
照)を経由して演奏情報が入力される毎に起動され、先
ずステップS402では、ワーキングメモリに現在の演
奏情報が格納される。この現在の演奏情報のうちの音程
を表す情報はワーキングメモリCurrNoteに、音
量を表す情報はワーキングメモリCurrVeloに、
及びタイミングを表す情報はワーキングメモリCurr
Timingにそれぞれ格納される。また、ワーキング
メモリLastTimingには、直前の演奏情報のう
ちのタイミングを表す情報が格納されており、Last
Timingに格納された直前の演奏音のタイミングと
現在の演奏音のタイミングとの時間差がワーキングメモ
リCurrLengthに格納される。この時間差は、
直前の演奏音の長さを示す指標となる。この、演奏音の
長さとは、測定しようとする演奏情報が入力されるオン
イベントの時刻から次の演奏情報が入力されるオンイベ
ントの時刻までの時間をいう。以下、各ワーキングメモ
リの符号を、ワーキングメモリに格納された内容を指標
する符号としてもそのまま用いる。ステップS404で
は、mを定数として以下の計算方法に基づいて、直前の
演奏情報のうちのタイミングのアクセントの大きさが求
められる。
【0016】タイミングのアクセント=CurrLen
gth(1+m×CurrLength/LastLe
ngth) ステップS406では、直前の演奏情報のうちの音量を
表す情報が格納されたワーキングメモリLastVel
oに格納された値LastVeloに、ステップS40
4で求めたタイミングのアクセントの大きさを表す値が
加算され、ワーキングメモリLastVeloの内容が
この加算結果の値に書き換えられる。ステップS408
では、以下の計算方法に基づいて音程のアクセントの大
きさが求められる。この音程のアクセントの大きさは、
旋律の方向が前回転換した後、今回転換するまでの間の
旋律を構成する音の数をn、定数をkとしたとき、 旋律が上昇方向から下降方向に凸型に転換するときの最
上点における音程のアクセントの大きさ=n×k 旋律が下降方向から上昇方向に凹型に転換するときの最
下点における音程のアクセントの大きさ=n×k×3/
4 として求められる。
【0017】ステップS410では、ステップS406
で求められたワーキングメモリLastVeloの値
に、ステップS408で求めた音程のアクセントの大き
さを表す値が加算され、ワーキングメモリLastVe
loの内容がこの加算結果の値に書き換えられ、これに
より音程のアクセントの大きさとタイミングのアクセン
トの大きさが音量のアクセントに加算される。ステップ
S412では、直前の演奏情報が格納されたワーキング
メモリの内容が、演奏情報格納バッファ40の書き込み
ポインタで示される位置に書き込まれる。ステップS4
14では、次に演奏情報が入力された際に入力された次
の演奏情報をワーキングメモリCuurNote,Cu
rrVelo,CurrTiming,CurrLen
ghに格納するために、それぞれワーキングメモリCu
urNote,CurrVelo,CurrTimin
gに格納されている演奏情報とCurrLenghに格
納されている演奏音の長さがワーキングメモリLast
Note,LastVelo,LastTiming,
LastLenghtに退避される。ステップS416
では、次の書き込みのために書き込みポインタが更新さ
れる。以上で図3に示されたフローは終了し、音程のア
クセント、タイミングのアクセント、及び音量のアクセ
ントが総合された音楽アクセントが得られる。
【0018】次に、テンポ変化予測部15を、図4、図
5を参照して説明する。図4はテンポ変化予測部15に
対応するフローを示すフローチャート、図5は音楽アク
セントの分布とこの分布から得られたテンポ変化予測曲
線の一例を示すグラフである。図4に示されるフロー
は、演奏情報格納バッファ40(図2参照)の内容が1
小節分書き込まれると起動され、このフローにより、音
楽アクセント検出部14(図1参照)で検出された音楽
アクセントに基づくテンポ変化の予測曲線が求められ、
1小節後のテンポが予測される。
【0019】先ず、ステップS502では、演奏情報格
納バッファ40(図2参照)の読み出しポインタの位置
から1小節分の演奏情報が検索され、この1小節の中か
ら最大の音量と2番目に大きい音量を表す演奏情報、す
なわちこの1小節の中の2つの音楽アクセントが求めら
れる。ステップS504では、ステップS502で求め
られた2つの演奏情報のうちのタイミングを表す情報
が、それぞれワーキングメモリTiming1,2に格
納される。また、演奏開始から上記2つの演奏情報がM
IDI入力部11(図1参照)に入力されるまでの「実
時間」が、それぞれワーキングメモリClock1,2
に格納される。この実時間は、ワーキングメモリTem
poに格納されている現在のテンポとワーキングメモリ
Timing1,2に格納されているタイミングを表す
情報から、以下の計算で求めることができる(図5参
照)。
【0020】実時間=タイミングを表す情報/現在のテ
ンポ ここで、演奏情報格納バッファに余裕があればこの実時
間も格納してもよい。次に、ステップS506では、次
の1小節分の演奏情報を読み出すために、演奏情報格納
バッファの読み出しポインタが演奏情報1小節分更新さ
れる。ステップS508では、ステップS506で更新
された読み出しポインタの位置から1小節分の演奏情報
が検索され、この1小節の中から最大の音量を表す演奏
情報と2番目に大きい音量を表す演奏情報、すなわちこ
の1小節の中の2つの音楽アクセントが求められる。ス
テップS510では、ステップS508で求められた2
つの演奏情報のうちのタイミングを表す情報が、ワーキ
ングメモリTiming3,4に格納される。また、演
奏開始から上記2つの演奏情報がMIDI入力部11
(図1参照)に入力されるまでの実時間が、それぞれワ
ーキングメモリClock3,4に格納される。この演
奏情報が入力されるまでの実時間は、ワーキングメモリ
Tempoに格納されている現在のテンポとワーキング
メモリTiming3,4に格納されているタイミング
情報が表すステップ数から、ステップS504と同様に
以下の計算で求めることができ、これによりその1小節
の中の音楽アクセントが生じた実時間が求められる(図
5参照)。
【0021】実時間=タイミングを表す情報/現在のテ
ンポ 次に、ステップS512では、図5に示される音楽アク
セントの分布を求めるために、以下の計算方法に基づい
て、ワーキングメモリTiming1,2,3,4及び
ワーキングメモリClock1,2,3,4に格納され
た値から、各音楽アクセントの間のテンポdTempo
1,2,3,4が求められる。ここで、“α( )”
は、括弧内を1拍分のステップ数で割り、小数点以下を
四捨五入して1拍分のステップ数をかける計算を表す。
【0022】dTempo1=α(Timing1)/
Clock1 dTempo2=α(Timing2−Timing
1)/(Clock2−Clock1) dTempo3=α(Timing3−Timing
2)/(Clock3−Clock2) dTempo4=α(Timing4−Timing
3)/(Clock4−Clock3)
【0023】次に、ステップS514では、ステップS
504,S510で求められたワーキングメモリClo
ck1,2,3,4に格納されている実時間、及びステ
ップS512で求められたワーキングメモリdTemp
o1,2,3,4に格納されている各音楽アクセント間
のテンポから、図5に示される音楽アクセントの分布が
求められ、このアクセントの分布からテンポ変化予測曲
線が求められる。ここで、アクセントの分布からテンポ
変化予測曲線を求める方法は、スプライン関数を用いる
方法、移動平均による方法、直線で近似する方法などさ
まざまな方法があるが、これらは周知であるため、ここ
ではその説明を省略する。
【0024】次に、ステップS516では、ステップS
514で求められたテンポ変化予測曲線(図5参照)か
ら1小節後のテンポが求められ、このテンポはワーキン
グメモリNextTempoに格納される。尚、このワ
ーキングメモリNextTempoには、電源投入時に
は初期値として、予め設定されたテンポの値が格納され
ている。その後、上記のようにして予測されたテンポが
順次ワーキングメモリNextTempoに格納され
る。以上で図4に示されたフローは終了する。
【0025】また、テンポ変更部16(図1参照)は、
1小節毎に起動され、ここでは、ワーキングメモリNe
xtTempoに格納されたテンポが読み出され、テン
ポ検出装置10で生成されるテンポが、ワーキングメモ
リNextTempoに格納されたテンポになるように
変更される。また、クロック発生部17(図1参照)
は、テンポ変更部16で変更されたテンポに追従するタ
イマ(図示せず)により、例えば1拍の1/24のタイ
ミングで起動され、ここでは、テンポ変更部16で変更
されたテンポに応じた間隔のクロックが生成され、この
クロックはMIDI出力部18(図1参照)に送出され
る。
【0026】また、MIDI出力部18(図1参照)で
は、クロック発生部17から送出されたクロックが外部
へ送り出される。次に、テンポ変化予測部15の他の例
を説明する。図6は、テンポ変化予測部15に対応す
る、図4に示すフローに変えて採用することのできるフ
ローを示すフローチャートである。このフローは、演奏
情報格納バッファ40(図2参照)の内容が1小節分書
き込まれると起動される。ステップS602からステッ
プS610まではそれぞれ、図4に示されたフローのス
テップS502、ステップS504、ステップS50
6、ステップS508、ステップS510と同一であ
り、ステップS610まで進むことにより、2小節中の
音楽アクセントの実時間が求められる。
【0027】ステップS612では、以下の計算方法に
基づいて、ワーキングメモリTiming1,2,3,
4及びワーキングメモリClock1,2,3,4に格
納された値、さらに現在のテンポを格納したワーキング
メモリTempoの値から、各音楽アクセントの時刻に
おけるテンポの、現在のテンポからの変位dTempo
1,2,3,4が求められる。ただし、“α( )”
は、前述と同様に、括弧内を1拍分のステップ数で割
り、小数点以下を四捨五入して1拍分のステップ数をか
ける計算を表す。
【0028】dTempo1=Tempo−α(Tim
ing1)/Clock1 dTempo2=Tempo−α(Timing2−T
iming1)/(Clock2−Clock1) dTempo3=Tempo−α(Timing3−T
iming2)/(Clock3−Clock2) dTempo4=Tempo−α(Timing4−T
iming3)/(Clock4−Clock3) ステップS614では、ステップS612で求められた
dTempo1,2,3,4を用いてメモリ部13(図
1参照)のデータベースが検索され、最適なテンポ変化
予測曲線が1つ予測される。このデータべースには、例
えば以下の種類の曲線を用意しておく。
【0029】傾き負の直線(リタルダンド1) 傾き負の指数曲線(リタルダンド2) 傾き負のn次曲線(リタルダンド3) 傾き負の対数曲線(ハーフテンポ) 傾き正の直線(アッチェレランド1) 傾き正の指数曲線(アッチェレランド2) 傾き正のn次曲線(アッチェレランド3) 傾き正の対数曲線(倍テンポ) ここで、リタルダンドとはだんだんテンポを遅くするこ
とをいい、アッチェレランドとはだんだんテンポを速く
することをいう。また、上記の曲線の中からいずれかの
曲線を選択する技術についてはさまざまな方法がある
が、それらはいずれも公知であるため、詳細な説明は省
略する。
【0030】ステップS616では、ステップS614
で求められたテンポ変化予測曲線から1小節後のテンポ
が求められ、このテンポはワーキングメモリNextT
empoに格納される。尚、このワーキングメモリNe
xtTempoには、電源投入時には初期値として、予
め設定されたテンポの値が格納されている。その後、上
記のようにして予測されたテンポが順次ワーキングメモ
リNextTempoに格納される。以上で図6に示さ
れたフローは終了する。
【0031】次に、音楽アクセント検出部14(図11
参照)の他の例について、図7、図8を参照して説明す
る。ここに示す例は、ドラムパッド31,32,33,
34(図1参照)を打撃することにより得られるトリガ
信号をトリガ検出部12に入力し演奏情報を得てテンポ
を検出する例であり、トリガ検出部12に入力されるト
リガ信号に対しては、図7に示されるように、予め音程
が割り当てられている。図7の楽器名は、一般にMID
Iの音程情報に割り当てられる打楽器で、例えばMID
I音源に音程情報「36」を送信すると、バスドラム音
を発音する。
【0032】先ず、テンポが検出されるまでの概略の手
順を説明する。 1.演奏者が演奏の初期テンポを予め設定する。初期テ
ンポの設定は、専用の操作子を設けてもよいし、演奏者
がドラムパッドを演奏して入力してもよい。 2.ドラムパッド31,32,33,34を用いて演奏
された演奏情報が、トリガ検出部12を介して音楽アク
セント検出部14に取り込まれる。
【0033】3.音楽アクセント検出部14では、演奏
情報(音量、音程、発音タイミング)と、メモリ部13
に記憶されたルールに従って音楽アクセントが検出され
る。 4.テンポ変化予測部15では、音楽アクセント検出部
14で得られた音楽アクセントの分布に基づいて、テン
ポの変化が予測される。 5.テンポ変更部16では、テンポ変化予測部15で予
測されたテンポ変化予測曲線に基づいて内部のテンポが
修正される。
【0034】6.クロック発生部17では、テンポ変更
部16で変更された内部のテンポに応じたクロックが生
成され、MIDI出力部18に送出される。 次に、音楽アクセント検出部14に対応するフローを、
図8を参照して説明する。図8に示されるフローは、ト
リガ検出部12(図1参照)で演奏情報が生成される毎
に起動される。
【0035】ここで、跳躍のアクセントは以下のように
して検出される。前回入力された音程と今回入力された
音程の差が所定値以上であるとき、跳躍のアクセントが
与えられる。例えば前回入力された音程をNOTE1、
今回入力された音程をNOTE2とし、定数をpとする
と、 |NOTE2−NOTE1|>p となるとき、跳躍のアクセントが与えられ、このアクセ
ントの大きさを5とする。ここでは、演奏者がアクセン
トをつけたいときに、前回打撃したドラムパッドより、
上記の定数p以上音程の離れたドラムパッドを打撃する
ことにより跳躍のアクセントが付加される。例えば、図
7に示されるドラムパッド4に割り当てられたシンバル
音はアクセントのある部分で演奏されることが多い楽器
であるが、音程を49に設定することにより、ドラムパ
ッド1,2,3のいずれかを打撃した後ドラムパッド4
を打撃したとき、前回入力された音程と今回入力された
音程の差が、定数p以上となるように定数pを設定して
おき跳躍のアクセントが付加される。
【0036】先ず、ステップS802では、現在入力さ
れた演奏情報のうちの音程を表す情報はワーキングメモ
リCurrNoteに、音量を表す情報はワーキングメ
モリCurrVeloに、及びタイミングを表す情報は
ワーキングメモリCurrTimingにそれぞれ格納
される。また、ワーキングメモリLastTiming
には、直前の演奏情報のうちのタイミングを表す情報が
格納されており、LastTimingに格納された直
前の演奏音のタイミングと現在の演奏音のタイミングと
の時間差がワーキングメモリCurrLengthに格
納される。この時間差は、直前の演奏情報が表す音の長
さを示す指標となる。
【0037】ステップS804では、mを定数として以
下の計算方法に基づいて、直前の演奏情報のうちのタイ
ミングのアクセントの大きさが求められる。 タイミングのアクセント=CurrLength(1+
m×CurrLength/LastLength) ステップS806では、直前の演奏情報のうちの音量を
表す情報が格納されたワーキングメモリLastVel
oの値に、ステップS804で求めたタイミングのアク
セントの大きさを表す値が加算され、ワーキングメモリ
LastVeloの内容がこの加算結果に書き換えられ
る。ステップS808では、上述した方法により跳躍の
アクセントの大きさが求められる。ステップS810で
は、ステップS802で求められたワーキングメモリC
urrVeloの値に、ステップS808で求めた跳躍
のアクセントの大きさが加算され、ワーキングメモリC
urrVeloの内容がこの加算結果に書き換えられ、
これにより跳躍のアクセントの大きさが音量に加算され
る。ステップS812では、直前の演奏情報を格納した
ワーキングメモリの内容を記憶しておくために、この内
容が、演奏情報格納バッファ40の書き込みポインタで
示される位置に書き込まれる。ステップS814では、
次の演奏情報が入力されこの図8のフローが再度起動さ
れた時点で、入力された次の演奏情報をワーキングメモ
リCuurNote,CurrVelo,CurrTi
ming,CurrLenghに格納するために、それ
ぞれワーキングメモリCuurNote,CurrVe
lo,CurrTimingに格納されている演奏情報
とCurrLenghに格納されている演奏音の長さ
が、ワーキングメモリLastNote,LastVe
lo,LastTiming,LastLenghtに
退避される。ステップS816では、次の書込みのため
に書き込みポインタが更新される。以上で図8に示され
たフローは終了し、跳躍のアクセント、タイミングのア
クセント、及び音量のアクセントが総合された音楽アク
セントが得られる。
【0038】上記した各実施例では、入力される演奏情
報に基づいてテンポの変化を予測し、出力されるクロッ
クのテンポに反映させた例を示したが、内部に記憶され
た演奏情報を自動演奏する自動演奏装置において、入力
した演奏情報をもとにテンポ変化を予測し、自動演奏す
る演奏情報のテンポに反映させてもよい。また、演奏情
報から音楽アクセントの分布を得るために、前述したタ
イミングのアクセント等以外にも和声によるアクセント
(和声が変化したことによるアクセント)、類型による
アクセント(似通った音型の旋律の開始によるアクセン
ト)などのアクセントに注目してもよく、また、それら
を組み合わせるとさらに精度の高いテンポの予測が可能
になる。逆に簡単のために注目するアクセントの種類を
減らしてもよい。
【0039】また、本発明においては、音楽アクセント
の分布とテンポの関係を学習する学習モードをテンポ検
出装置に設け、あるテンポ変化における演奏者の音楽ア
クセントの分布の傾向を学習できるようにしてもよい。
その際、音楽アクセントの分布の傾向の学習にニューラ
ルネットワークを用いるとより効果的である。また、ア
クセントの分布よりテンポ変化予測曲線を作成または選
択する方法としてファジイ検索やファジイ推論などを用
いてもよい。
【0040】以上のように、入力された演奏情報の音楽
アクセントを検出し、検出された音楽アクセントの分布
からテンポの変化を予測することにより、演奏者の演奏
のテンポが正しく検出され、現在の演奏に合う伴奏のテ
ンポを決めることができる。
【0041】
【発明の効果】以上説明したように本発明のテンポ検出
装置によれば、演奏情報から音楽アクセントを検出し、
この音楽アクセントに基づいて演奏情報のテンポの変化
を予測し、この予測されたテンポに、テンポ検出装置の
内部で生成されるテンポを追従させているため、演奏者
の演奏のテンポが正しく検出され、現在の演奏に合う伴
奏のテンポを決めることができる。
【図面の簡単な説明】
【図1】本発明のテンポ検出装置の一実施例を示すブロ
ック図である。
【図2】演奏情報格納バッファのデータ構造を示す図で
ある。
【図3】音楽アクセント検出部に対応するフローを示す
フローチャートである。
【図4】テンポ変化予測部に対応するフローを示すフロ
ーチャートである。
【図5】音楽アクセントの経時的分布とこの分布から得
られたテンポ変化予測曲線を示すグラフである。
【図6】本発明の第2実施例のテンポ変化予測部に対応
するフローを示すフローチャートである
【図7】トリガ検出部に入力されるトリガ信号に対して
予め割り当てられた音程と打楽器音を示す説明図であ
る。
【図8】本発明の第3実施例の音楽アクセント検出部に
対応するフローを示すフローチャートである。
【符号の説明】
10 テンポ検出装置 11 MIDI入力部 12 トリガ検出部 13 メモリ部 14 音楽アクセント検出部 15 テンポ変化予測部 16 テンポ変更部 17 クロック発生部 18 MIDI出力部 20 楽器 31,32,33,34 ドラムパッド
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 101 - 102 G10H 1/36 - 1/42

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 外部から入力される演奏音1音毎の演奏
    情報に基づいて、音量に起因するアクセントと、音量以
    外の音楽要素に起因するアクセントとの双方を検出する
    アクセント検出手段と、 前記アクセント検出手段で検出された双方のアクセント
    に基づいて、演奏情報のテンポの変化を予測するテンポ
    予測手段と、 前記テンポ予測手段で予測されたテンポに、内部で生成
    するテンポを追従させるテンポ変更手段とを備えたこと
    を特徴とするテンポ検出装置。
JP13611893A 1993-06-07 1993-06-07 テンポ検出装置 Expired - Fee Related JP3231482B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13611893A JP3231482B2 (ja) 1993-06-07 1993-06-07 テンポ検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13611893A JP3231482B2 (ja) 1993-06-07 1993-06-07 テンポ検出装置

Publications (2)

Publication Number Publication Date
JPH06348272A JPH06348272A (ja) 1994-12-22
JP3231482B2 true JP3231482B2 (ja) 2001-11-19

Family

ID=15167729

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13611893A Expired - Fee Related JP3231482B2 (ja) 1993-06-07 1993-06-07 テンポ検出装置

Country Status (1)

Country Link
JP (1) JP3231482B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7582824B2 (en) 2005-07-19 2009-09-01 Kabushiki Kaisha Kawai Gakki Seisakusho Tempo detection apparatus, chord-name detection apparatus, and programs therefor
US8030564B2 (en) 2006-07-03 2011-10-04 Sony Corporation Method for selecting and recommending content, server, content playback apparatus, content recording apparatus, and recording medium storing computer program for selecting and recommending content

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3461916B2 (ja) * 1994-06-14 2003-10-27 ローランド株式会社 電子楽器
JP3627319B2 (ja) * 1995-09-27 2005-03-09 ヤマハ株式会社 演奏制御装置
JP3627321B2 (ja) * 1995-10-02 2005-03-09 ヤマハ株式会社 演奏制御装置
JP4399958B2 (ja) * 2000-05-25 2010-01-20 ヤマハ株式会社 演奏支援装置および演奏支援方法
JP3690279B2 (ja) * 2001-01-12 2005-08-31 ヤマハ株式会社 演奏テンポ制御装置および記憶媒体
JP4808868B2 (ja) * 2001-06-29 2011-11-02 株式会社河合楽器製作所 自動演奏装置
JP3811043B2 (ja) * 2001-10-10 2006-08-16 株式会社河合楽器製作所 電子楽器
JP3674950B2 (ja) * 2002-03-07 2005-07-27 ヤマハ株式会社 音楽データのテンポ推定方法および装置
JP4776179B2 (ja) * 2004-05-25 2011-09-21 株式会社エヌ・ティ・ティ・ドコモ タイミング決定装置及びタイミング決定方法
JP2007279490A (ja) * 2006-04-10 2007-10-25 Kawai Musical Instr Mfg Co Ltd 電子楽器

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7582824B2 (en) 2005-07-19 2009-09-01 Kabushiki Kaisha Kawai Gakki Seisakusho Tempo detection apparatus, chord-name detection apparatus, and programs therefor
US8030564B2 (en) 2006-07-03 2011-10-04 Sony Corporation Method for selecting and recommending content, server, content playback apparatus, content recording apparatus, and recording medium storing computer program for selecting and recommending content

Also Published As

Publication number Publication date
JPH06348272A (ja) 1994-12-22

Similar Documents

Publication Publication Date Title
JP3231482B2 (ja) テンポ検出装置
JP2012068548A (ja) 調判定装置および調判定プログラム
JP6175812B2 (ja) 楽音情報処理装置及びプログラム
WO2006078635A1 (en) Complete orchestration system
JP3760833B2 (ja) カラオケ装置
US6750390B2 (en) Automatic performing apparatus and electronic instrument
JP6597553B2 (ja) ハーモニー情報生成装置、ハーモニー情報生成プログラムおよびハーモニー情報生成方法
JP4232299B2 (ja) 演奏カロリー消費量測定装置
JP3879524B2 (ja) 波形生成方法、演奏データ処理方法および波形選択装置
JP3455050B2 (ja) 自動伴奏装置
JPH05108075A (ja) 電子楽器
JP2689614B2 (ja) 電子楽器
JP3719157B2 (ja) 楽曲データの表情付け装置及び楽曲データの表情付け方法並びに楽曲データの表情付けプログラム
JP3807333B2 (ja) メロディ検索装置およびメロディ検索プログラム
JP3346699B2 (ja) 電子楽器
KR0121126B1 (ko) 전자악기의 자동반주시 코드변화처리방법
JP2001134266A (ja) 電子楽器および演奏カロリー消費量測定装置
JP3637782B2 (ja) データ生成装置と記録媒体
JP2513341B2 (ja) 電子楽器
JP3870948B2 (ja) 表情付け処理装置および表情付け用コンピュータプログラム
JPH05188961A (ja) 自動伴奏装置
JP2638820B2 (ja) 伴奏ライン基音決定装置
JP2002156969A (ja) 演奏情報解析装置、方法及び記録媒体
JP3348819B2 (ja) 電子楽器
JP2739244B2 (ja) 電子楽器

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010904

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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: 20100914

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees