JP3571569B2 - Automatic accompaniment device - Google Patents
Automatic accompaniment device Download PDFInfo
- Publication number
- JP3571569B2 JP3571569B2 JP05907599A JP5907599A JP3571569B2 JP 3571569 B2 JP3571569 B2 JP 3571569B2 JP 05907599 A JP05907599 A JP 05907599A JP 5907599 A JP5907599 A JP 5907599A JP 3571569 B2 JP3571569 B2 JP 3571569B2
- Authority
- JP
- Japan
- Prior art keywords
- chord
- note data
- accompaniment
- automatic accompaniment
- sounding
- 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
【0001】
【発明の属する技術分野】
本発明は、自動伴奏装置の技術分野に属する。
【0002】
【従来の技術】
鍵盤式の電子楽器などに付属する自動伴奏装置には、コード名の指定に使用されるコード鍵の押鍵に応じてリアルタイムでコードを変更する機能が備わっているのが普通である。なお、コード鍵は、自動伴奏装置を稼働させないモードでは通常の鍵として使用され、自動伴奏装置を稼働させるモードではコード鍵として使用されることがある。
【0003】
従来の自動伴奏装置では、コード鍵の押鍵によるコードの変更があった時には、そのときに発音中の自動伴奏音を一度消音して、新たなコードに応じた音高に変更して再び発音し直すというリトリガー処理を行っていた。
【0004】
【発明が解決しようとする課題】
ところが、従来のリトリガー処理では、自動伴奏のノートデータのベロシティ値を保存しておいて、再発音の際にそのベロシティ値を使っていたので、持続音(例えばオルガン、ストリングスなど)なら問題にはならないが、アタックの強い減衰音(例えばピアノ、ギターなど)の場合にはアタック音が耳について違和感を感じることがあった。
【0005】
特に、コードの指定に複数のコード鍵の操作を要する場合(ワンフィンガーモードでも、マイナーコードを指定するには、通常2鍵の操作を必要としている。)、各鍵の操作例えば1鍵目の操作と2鍵目の操作とにタイムラグがあると、1鍵目の操作時と2鍵目の操作時との2回にわたってアタック音が発音されるので、上述の現象が顕著であった。
【0006】
本発明は、自動伴奏中のコード変更時の上述の違和感、特に複数のコード鍵の操作を要する場合の違和感をなくすことを目的としている。
【0007】
【課題を解決するための手段および発明の効果】
上記課題を解決するための請求項1記載の自動伴奏装置は、
コード名の指定に使用されるコード鍵を有する鍵盤と、
押鍵された前記コード鍵に対応する前記コード名を伴奏コードとして設定するコード設定手段と、
自動伴奏パターンの選択に使用されるパターン選択手段と、少なくとも音高情報とベロシティ値が含まれるノートデータと該ノートデータの音色を指定する音色情報とが含まれている自動伴奏データを前記自動伴奏パターンに対応させて記憶する自動伴奏データ記憶手段と、
前記パターン選択手段によって選択された前記自動伴奏パターンに対応する前記自動伴奏データを前記自動伴奏データ記憶手段から読出すデータ読出手段と、
該データ読出手段によって読出された前記ノートデータの音高情報を前記設定された伴奏コードによって補正する音高補正手段と、
該音高補正手段を経由された前記ノートデータの音高情報及びベロシティ値を含む音符データを記憶する音符データ記憶手段と、
該音符データと前記指定された音色に基づく楽音を発音する発音手段と、
前記音符データ毎に、前記発音手段による発音経過時間を計測する経過時間計測手段と、
前記コード設定手段により新たな前記伴奏コードが設定されると前記発音中の音を消音する消音手段と、
該新たな伴奏コードが設定されたときに前記発音経過時間がしきい値を超えていない場合には、前記消音された音符データの前記ベロシティ値を小さく書き換えるベロシティ書換手段と、
該ベロシティ書換手段によって書き換えられた前記音符データに基づく楽音を前記発音手段に発音させる発音再開手段と
を備えたことを特徴とする。
【0008】
この自動伴奏装置は、コード名の指定に使用されるコード鍵を有する鍵盤を備えており、演奏者が所望のコード名が割り当てられているコード鍵を押鍵操作すると、コード設定手段が、押鍵されたコード鍵に対応するコード名を伴奏コードとして設定する。
【0009】
また、自動伴奏装置は、自動伴奏パターンの選択に使用されるパターン選択手段を備えている。
一般に、自動演奏パターンは楽器とリズムの組み合わせに応じて多種多様であり、演奏者は、パターン選択手段により、そうした多種類の自動伴奏パターンの中から所望の自動演奏パターン(楽器とリズムの組み合わせ)を選択することになる。このため、パターン選択手段は、例えばピアノ、ギター、ドラムスなどの楽器(または楽器群)を選択するための楽器選択手段とリズムを選択するためのリズム選択手段とを備えるのが好ましい。このように構成すれば、楽器選択手段にて楽器を、リズム選択手段にてリズムを選択できる。
【0010】
なお、予め楽器(または楽器群)とリズムを組み合わせた自動演奏パターンを用意しておき、その中から選択する構成としてもよい。この場合、パターン選択手段に該当するスイッチ等の操作は1動作でよい。
自動伴奏データ記憶手段は、少なくとも音高情報とベロシティ値が含まれるノートデータとノートデータの音色を指定する音色情報とが含まれている自動伴奏データを自動伴奏パターンに対応させて記憶している。自動伴奏データ記憶手段は特に限定はないが、モータや読取ヘッドが不要(構成が簡単)で高速なアクセスが可能なROMが適している。
【0011】
データ読出手段は、パターン選択手段によって選択された自動伴奏パターンに対応する自動伴奏データを自動伴奏データ記憶手段から読出す。この読出は例えばアドレス順に行われる。
音高補正手段は、データ読出手段によって読出されたノートデータの音高情報を設定された伴奏コードに応じて補正する。なお、通常、ノートデータの音高情報は基準コード(通常はCコード)での音高で記述されているので、コード設定手段にて設定された伴奏コードが基準コードなら音高補正手段による音高情報の補正は不要である。
【0012】
音符データ記憶手段は、音高補正手段を経由されたノートデータの音高情報及びベロシティ値を含む音符データを記憶する。音符データ記憶手段は、随時の書き換えと高速アクセスが可能であるRAMが適している。
発音手段は、音符データ記憶手段に記憶されている音符データと指定された音色に基づく楽音を発音する。発音手段は、例えば音符データと音色に基づく波形信号(デジタル信号)を生成する波形信号生成回路、生成されたデジタル信号をアナログ信号に変換するデジタルアナログコンバータ(DAC)、そのアナログ信号を増幅するアンプ、アンプからの信号を音声出力するスピーカ等から構成され、波形信号生成回路を複数備える(複数チャンネルある)のが普通である。
【0013】
経過時間計測手段は、音符データ毎に、発音手段による発音経過時間を計測する。この手段は、例えばある音符データの発音開始時に起動されるカウンタによって実現できる。また、例えば常時稼働しているタイマを用いることもできる。
消音手段は、コード設定手段により新たな伴奏コードが設定されると発音中の音を消音する。消音は、例えば高速リリース(トランケーション)やパンニング値を急速に0にする手法にて実現できる。
【0014】
ベロシティ書換手段は、新たな伴奏コードが設定されたときに発音経過時間がしきい値を超えていない場合には、その消音された音符データのベロシティ値を小さく書き換える。そして、発音再開手段は、ベロシティ書換手段によって書き換えられた音符データによ基づく楽音を発音手段に発音させる。
【0015】
すなわち、それ以前のコードによる発音を消音して、新たなコードによる発音を再開するのであるが、消音された音符データの発音開始からの発音経過時間がしきい値以内のときには、新たなコードによる発音を再開する際のベロシティ値が小さくされているので、発音が再開されたときの音の強さ(ベロシティ値に従う)は、弱められる。
【0016】
例えば演奏者がコードを変更しようとして複数のコード鍵(例えば2鍵)を操作した場合に、両コード鍵の操作にタイムラグがあると、一旦、先行して操作された(検出された)コード鍵に対応するコードの設定(例えばC)がなされてしまい、続いて後続のコード鍵が操作された(検出された)ために、コードが再設定(Cマイナー)されることがある。この場合、先行して設定されたCコードでの発音が開始された直後に、これを消音してからCマイナーでの発音が開始されることになる。すると、ピアノのようなアタックの強い減衰音であると、従来技術の場合には、Cコードでの発音開始時にアタック音が発音され、Cマイナーでの発音開始時にもアタック音が発音されてしまう。
【0017】
しかし、本発明の場合には、消音された音符データ(上記の例ならCコードの音)の発音開始からの発音経過時間がしきい値以内のときには、新たなコード(同じくCマイナー)による発音を再開する際のベロシティ値が小さくされているので、少なくとも新たなコード(Cマイナー)の発音開始時においては、減衰音のアタック音が耳について違和感を感じることはなくなる。すなわち、複数鍵操作でコードを設定する際に、1鍵目と2鍵目の操作にタイムラグがあっても、違和感を感じることはない。
【0018】
なお、ベロシティ値の書換は、あらかじめ設定されている割合の値に書換たり、あらかじめ設定されている値を減算する等の手法を採用できる。ただし、本発明としてはベロシティ値を小さくすることが要点であって、そのための手法、手段は問わない。
【0019】
【発明の実施の形態】
次に、本発明の実施例を図面を参照して説明することにより、発明の実施の形態を具体的に説明する。
【0020】
【実施例】
図1に示すように、本実施例の自動伴奏装置10は、コード鍵14を有する鍵盤12、例えばピアノ、ギター、ドラムスなどの伴奏楽器を選択するための伴奏楽器選択スイッチ、伴奏のリズムを選択するためのリズム選択スイッチをはじめとする各種のスイッチや表示用のLED等を備え、パターン選択手段として機能するパネル16、ROMであり自動伴奏データ記憶手段に該当する自動伴奏メモリ18、RAMであり音符データ記憶手段に該当するワークメモリ20、音色とその音色が減衰音か持続音かを対比した形態の音色識別テーブル24を記憶しているメモリ、詳細は後述するがコード設定手段、データ読出手段、音高補正手段、消音手段、ベロシティ書換手段及び発音再開手段として機能するCPU26、音符データに基づく波形信号(デジタル信号)を生成する波形信号生成回路、生成されたデジタル信号をアナログ信号に変換するデジタルアナログコンバータ、そのアナログ信号を増幅するアンプ等から構成される音源28、音源28からの信号を音声出力するスピーカ30等で構成されている。
【0021】
なお、本実施例の音源28は、波形信号生成回路を32備えており(32チャンネルあり)、同時に32の波形信号を生成できる。また音源28は、スピーカ30とで発音手段を構成するとともにCPU26と共同して消音手段として機能する。
【0022】
以下、CPU26が実行する処理に沿って、自動伴奏装置10の動作を説明する。
図2はCPU26のメイン処理のフローチャートである。この図2に示すように、自動伴奏装置10の電源が投入されると、CPU26は、初期化処理(S100)を実行し、以後は、スイッチ処理(S300)、鍵盤処理(S400)、自動伴奏処理(S500)を繰り返し実行している。また、設定されたタイミング毎に(タイマ割込により)、図3に示すタイマ処理を実行している。
【0023】
図3に示すように、タイマ処理では、CPU26は自動伴奏の実行中(演奏ラン)なら(S210:YES)、四分音符に相当する時間(固定的ではなくてテンポによって変動する)を24分割して設定される1/24タイミングになったときに(S211:YES)、クロックを1インクリメントする(S212)。一方、自動伴奏の実行中でないなら(S210:NO)実質的な処理は行わず、1/24タイミングではないときは(S211:NO)クロックのインクリメントは行わない。
【0024】
図4に示すように、スイッチ処理では、CPU26は、まずスタートスイッチがオン操作されたか否かを判断する(S310)。スタートスイッチがオンされたなら(S310:YES)、そのときの伴奏楽器選択スイッチ及びリズム選択スイッチのポジションに基づいて使用する自動伴奏データを決め、その自動伴奏データの自動伴奏メモリ18内での先頭アドレス(自動伴奏アドレス)をセットする(S311)。
【0025】
自動伴奏メモリ18に格納されている自動伴奏データのフォーマットは図9(a)に示されるとおりであり、まず小節の開始を示すバーマークが記述され、そのバーマークに続いて、その小節に属する各音符に対応するノートデータが記述されている。1件のノートデータは、音高情報に相当するキーナンバー、そのノートデータの音を発音するタイミング(小節の開始後どれだけ時間が経過したら発音するか)を表すステップタイム、その発音の継続時間に相当するゲートタイム及び音の強度に相当するベロシティにて構成されている。
【0026】
さらに、適宜の位置に音色情報に該当する音色データが記述されている。音色データは、これに続くノートデータの音色(例えばピアノ、ギター、ストリングス等)を規定するためのデータであり、音色データがある毎に音色が変化すると言える。1件の音色データは、MIDIのチャンネルを表すステータス、ステップタイム及びピアノ、ギター、ストリングス等を示す音色ナンバーにて構成されている。
【0027】
そして、バーマークで始まりノートデータと必要に応じて音色データが含まれる1小節分の記述が多数繰り返され、最後にエンドマークが記述されている。
この図9(a)に示される自動伴奏データであれば、S311では先頭アドレスの内容としてFAhがセットされることになる。
【0028】
図4に戻り、CPU26は、演奏実行中を示す演奏ランフラグをセットし(S312)、クロックを0にセットして(S313)リターンする。
前述のタイマ処理における演奏ランの判断(S210)は、演奏ランフラグにて判断している。また、S212においてインクリメントされるクロックは、このS313によって初期値を0とされたものである。
【0029】
スタートスイッチのオン操作がなければ(S310:NO)、ストップスイッチが操作されたか否かを判断する(S314)。ストップスイッチが操作されていれば(S314:YES)、演奏ランフラグをクリアして(S315)、リターンし、ストップスイッチの操作がない場合には(S314:NO)、その他のスイッチ処理(S316)を実行してリターンする。
【0030】
図5に示すように、鍵盤処理では、CPU26は、キーオンか否かを判断し(S410)、否定判断なら消音処理を行って(S411)リターンする。
キーオンされていれば(S410:YES)、それがコード鍵14の操作であるか否かを判断する(S412)。否定判断すなわちコード鍵14以外の鍵が操作されていれば、その鍵に対応する楽音の発音を音源28に指示して(S413)リターンする。
【0031】
一方、コード鍵14が操作されていた場合には(S412:YES)、そのコード鍵14に対応するコード名を例えば鍵−コード対応テーブルから検索して、そのコード名を伴奏コードとして設定し(S414)、リトリガー処理(S416)を実行する。リトリガー処理の詳細については後述する。
【0032】
図6に示すように、自動伴奏処理においては、まずクロックが正の値か否かを判断し(S510)、否定判断なら実質的な処理は行わずにリターンするが、肯定判断ならゲートカウント処理(S511)を実行する。
図7に示すように、ゲートカウント処理では、CPU26はチャンネル番号(ch)を1にセットし(S530)、音源28のそのチャンネルがオンすなわち波形信号の生成に使用されているか否かを判断する(S531)。肯定判断なら、そのチャンネルのゲートカウンタを1デクリメントし(S532)、発音経過カウンタを1インクリメントする(S533)。ゲートカウンタ及び発音経過カウンタは、図9(b)に示すように、音符データ記憶メモリに設けられている(音符データ記憶メモリの詳細は後述)。
【0033】
続いて、ゲートカウンタが0になったか否かを判断する(S534)。ゲートカウンタが0になっていれば(S534:YES)、そのチャンネルの状態を示すフラグをオフにセットし(S535)、音源28に指示してそのチャンネルでの波形信号の生成を停止させる(S536)。なお、ゲートカウンタの初期値は、ノートデータのゲートタイムである。
【0034】
S536に続いて、あるいはS531またはS534で否定判断のときには、チャンネル番号を1インクリメントし(S537)、これが32を越えたか否かすなわちS531以下の処理が全チャンネルについて行われたか否かを判断し(S538)、肯定判断(全チャンネル済み)ならリターンし、否定判断(残チャンネルがある)ならS531に回帰する。
【0035】
図6に戻り、CPU26は、ゲートカウント処理(S511)に続いてデータの読出タイミングになっているか否かを判断する(S512)。本実施例の場合、タイマ処理で更新されるクロックの値がステップタイムと一致したときに読出タイミングになったと判断する構成である。
【0036】
ここで否定判断ならリターンするが、肯定判断なら、自動伴奏メモリ18から自動伴奏データの1アドレス分を読出す(S513)。ここで読出されるアドレスは、前述のS311(図4参照)で先頭アドレスがセットされ、後述するアドレス歩進(S523)で歩進されるアドレスである。
【0037】
続いてCPU26は、読出したデータがエンドマークであるか否かを判断し(S514)、肯定判断ならアドレスを再び先頭アドレスにセットする(S515)。
一方、エンドマークではないときには(S514:NO)、CPU26は、読出したデータが音色データであるか否かを判断する(S516)。音色データなら(S516:YES)、その音色データをワークメモリ20に記憶し(S517)、アドレスを歩進させて(S518)、S512に回帰する。
【0038】
また、エンドマークでなく(S514:NO)、音色データでもないときには(S516:NO)、これはノートデータということになるから、そのノートデータのキーナンバーで表現される音高を、伴奏コードとして設定されているコード(図5、S414参照)に応じて変換する(コード展開処理、S519)。なお、本実施例の場合、Cコードが基準コードとされている(ノートデータのキーナンバーはCで記述されている)ので、伴奏コードがCならコード展開処理は行われない。
【0039】
そして、キーナンバー(コード展開処理後)、ベロシティ等をワークメモリ20内に設定されている音符データ記憶メモリに、図9(b)に示す構造で記憶させる(S520)。つまり、音源28のチャンネル毎に、そのチャンネルのON/OFF、そのチャンネルが割り当てられているキーナンバー、ベロシティ、ゲートカウンタ及び発音経過カウンタが記憶される。なお、ゲートカウンタ及び発音経過カウンタの値は上述のゲートカウンタ処理(図7参照)で刻々と更新される。
【0040】
続いて、CPU26は、音符データ記憶メモリに記憶されているキーナンバー、ベロシティ及びワークメモリ20に記憶されている音色データに対応する波形信号の生成を音源28に指示し(S521)、アドレスを歩進させた後(S523)、S512に回帰する。
【0041】
CPU26がこの自動伴奏処理を実行することによって、音源28が波形信号を生成し、アナログ変換し、増幅し、これがスピーカ30から伴奏音として出力される。
この自動伴奏に際して、演奏者がコード鍵14を操作すると、新たに指定されたコードによる伴奏音が発音される。このコードの変更に当たってのCPU26の処理が、図5に示す鍵盤処理のサブルーチンであるリトリガー処理である。以下、図8を参照してこのリトリガー処理を説明する。
【0042】
CPU26は、リトリガー処理を開始すると、チャンネル番号(ch)を1にセットし(S420)、音源28のそのチャンネルがオンすなわち波形信号の生成に使用されているか否かを判断する(S421)。肯定判断なら、音源28に指示してそのチャンネルを消音させる(S422)。これは以前のコードでの発音を終了する処理である。否定判断(そのチャンネルが発音していない)ときには、消音(S422)や再発音は不要であるから、S422〜S427をジャンプしてS428に進む。
【0043】
S422に続いて、音符データ記憶メモリを検索して、そのチャンネルの音符データを読み込み、その音高(キーナンバー)を、新たに設定されたコードに応じて変換し(コード展開処理、S423)、音符データ記憶メモリの該当する音符データのキーナンバーを変換後のキーナンバーに書き換える(S424)。なお、本実施例の場合、伴奏コードがCならコード展開処理は行われない。
【0044】
次に、この音符データの発音経過カウンタが24を超えているか否かを判断する(S425)。発音経過カウンタが24になることは24クロックに相当するので、この音符データの発音開始から四分音符分の時間が経過したことを意味する。すなわち、発音経過カウンタが経過時間計測手段に該当する。ここで否定判断なら、音符データのベロシティを0.7倍した値に書換える(S246)。このS425〜S426の処理がベロシティ書換手段に相当する。
【0045】
一方、S425で肯定判断なら、ベロシティ変更(S426)は行われない。そして、CPU26は、音符データ記憶メモリに更新記憶させた音符データ(新コードにより音高を変更されている)に基づく波形信号の生成を音源28に指示する(S427)。このS427の処理が発音再開手段に相当する。これにより、このチャンネルの発音は新たに設定されたコードに従ったものになるが、S425〜S426の処理が行われていれば、ベロシティが小さくされて、発音される音の強度が弱められているので、減衰音のアタック音が耳について違和感を感じることはなくなる。例えばワンフィンガーモードでの2鍵操作において1鍵目と2鍵目の操作にタイムラグがあっても、そのタイムラグが発音経過カウンタの24カウント以内なら、上述のベロシティ変更(S426)が行われるので、2鍵目の操作に応じてのコードが設定された際の発音再開時にアタック音による違和感を感じることもない。すなわち、自動伴奏中のコード変更時のアタック音による違和感がなくなる。
【0046】
S427に続いて、チャンネル番号を1インクリメントし(S428)、これが32を越えたか否かすなわちS421以下の処理が全チャンネルについて行われたか否かを判断し(S429)、肯定判断(全チャンネル済み)ならリターンし、否定判断(残チャンネルがある)ならS421に回帰する。
【0047】
このように、自動伴奏中にコードが変更されたときに、そのコード変更が設定された発音経過時間(しきい値)以内なら、そのベロシティを小さくして発音を再開始するので、減衰音のアタック音が耳について違和感を感じることはなくなる。
【0048】
以上、実施例に従って、本発明の実施の形態について説明したが、本発明はこのような実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲でさまざまに実施できることは言うまでもない。
例えば、実施例ではコード変更時のベロシティの低下率を0.7に設定しているが、0.7に限るものではなく、1未満の数値で適宜設定されればよい。また、ベロシティの低下率は、音色に応じて異ならせてもよい。特に、ドラムスのように複数種類の音色で自動伴奏する場合には、各音色または音色のグループ毎にベロシティ値の低下率を異ならせることもできる。
【図面の簡単な説明】
【図1】実施例の自動伴奏装置の構成を説明するブロック図である。
【図2】実施例の自動伴奏装置のCPUが実行するメイン処理のフローチャートである。
【図3】実施例の自動伴奏装置のCPUが実行するタイマ処理のフローチャートである。
【図4】実施例の自動伴奏装置のCPUが実行するスイッチ処理のフローチャートである。
【図5】実施例の自動伴奏装置のCPUが実行する鍵盤処理のフローチャートである。
【図6】実施例の自動伴奏装置のCPUが実行する自動伴奏処理のフローチャートである。
【図7】実施例の自動伴奏装置のCPUが実行するゲートカウント処理のフローチャートである。
【図8】実施例の自動伴奏装置のCPUが実行するリトリガー処理のフローチャートである。
【図9】実施例の自動伴奏装置に記憶されるデータの構造の説明図であり、(a)は自動伴奏データフォーマット、(b)は音符データ記憶メモリである。
【符号の説明】
10…自動伴奏装置
12…鍵盤
14…コード鍵
16…パネル(パターン選択手段)
18…自動伴奏メモリ(自動伴奏データ記憶手段)
20…ワークメモリ(音符データ記憶手段、経過時間計測手段)
26…CPU(コード設定手段、データ読出手段、音高補正手段、消音手段、ベロシティ書換手段、発音再開手段)
28…音源(発音手段、消音手段)
30…スピーカ(発音手段)[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention belongs to the technical field of an automatic accompaniment device.
[0002]
[Prior art]
An automatic accompaniment device attached to a keyboard-type electronic musical instrument or the like usually has a function of changing a chord in real time in accordance with the depression of a chord key used to designate a chord name. The chord key may be used as a normal key in a mode in which the automatic accompaniment device is not operated, and may be used as a chord key in a mode in which the automatic accompaniment device is operated.
[0003]
In a conventional automatic accompaniment device, when a chord is changed by pressing a chord key, the auto-accompaniment sound that is currently sounding is muted once, changed to a pitch corresponding to the new chord, and sounded again. The retrigger process of doing again was performed.
[0004]
[Problems to be solved by the invention]
However, in the conventional retrigger processing, the velocity value of the note data of the automatic accompaniment is stored, and the velocity value is used at the time of re-sounding, so if a sustained sound (for example, organ, strings, etc.), the problem is In the case of an attenuated sound with a strong attack (for example, a piano, a guitar, etc.), the attack sound sometimes felt strange to the ears.
[0005]
In particular, when a plurality of code keys need to be operated to specify a code (even in the one-finger mode, usually two keys are required to specify a minor code). If there is a time lag between the operation and the operation of the second key, the above-mentioned phenomenon is conspicuous because the attack sound is generated twice during the operation of the first key and the operation of the second key.
[0006]
SUMMARY OF THE INVENTION It is an object of the present invention to eliminate the above-mentioned discomfort when changing chords during automatic accompaniment, especially when a plurality of chord keys need to be operated.
[0007]
Means for Solving the Problems and Effects of the Invention
An automatic accompaniment device according to
A keyboard having a chord key used to designate a chord name;
Chord setting means for setting the chord name corresponding to the depressed chord key as an accompaniment chord,
Pattern selecting means used for selecting an automatic accompaniment pattern; and automatically accompaniment data including note data including at least pitch information and a velocity value and timbre information designating a timbre of the note data. Automatic accompaniment data storage means for storing in association with the pattern;
Data reading means for reading the automatic accompaniment data corresponding to the automatic accompaniment pattern selected by the pattern selecting means from the automatic accompaniment data storage means;
Pitch correcting means for correcting the pitch information of the note data read by the data reading means by the set accompaniment code;
Note data storage means for storing note data including pitch information and velocity values of the note data passed through the pitch correction means,
Sounding means for generating a musical tone based on the note data and the designated tone color;
For each note data, elapsed time measuring means for measuring the elapsed sounding time by the sounding means,
Muffling means for muffling the sounding sound when the new accompaniment chord is set by the chord setting means,
Velocity rewriting means for rewriting the velocity value of the muted note data to be smaller if the sounding elapsed time does not exceed a threshold when the new accompaniment chord is set;
A tone resuming means for causing the tone generating means to emit a tone based on the note data rewritten by the velocity rewriting means.
[0008]
This automatic accompaniment apparatus includes a keyboard having a chord key used for designating a chord name. When a player performs a key press operation of a chord key to which a desired chord name is assigned, the chord setting means presses a chord key. A chord name corresponding to the keyed chord key is set as an accompaniment chord.
[0009]
In addition, the automatic accompaniment device includes a pattern selection unit used for selecting an automatic accompaniment pattern.
In general, the automatic performance patterns are various depending on the combination of the musical instrument and the rhythm, and the player selects a desired automatic performance pattern (combination of the musical instrument and the rhythm) from the various types of automatic accompaniment patterns by the pattern selecting means. Will be selected. For this reason, it is preferable that the pattern selecting means includes a musical instrument selecting means for selecting an instrument (or a musical instrument group) such as a piano, a guitar, a drum, and the like, and a rhythm selecting means for selecting a rhythm. According to this structure, the musical instrument can be selected by the musical instrument selecting means and the rhythm can be selected by the rhythm selecting means.
[0010]
Note that an automatic performance pattern combining a musical instrument (or a musical instrument group) and a rhythm may be prepared in advance, and a configuration may be selected from the automatic performance patterns. In this case, the operation of the switch or the like corresponding to the pattern selection means may be one operation.
The automatic accompaniment data storage means stores, in association with the automatic accompaniment pattern, automatic accompaniment data including at least note data including pitch information and a velocity value and timbre information specifying a timbre of the note data. . The automatic accompaniment data storage means is not particularly limited, but a ROM that does not require a motor or a reading head (has a simple configuration) and can be accessed at high speed is suitable.
[0011]
The data reading means reads the automatic accompaniment data corresponding to the automatic accompaniment pattern selected by the pattern selecting means from the automatic accompaniment data storage means. This reading is performed, for example, in the order of addresses.
The pitch correcting means corrects the pitch information of the note data read by the data reading means according to the set accompaniment code. Normally, the pitch information of note data is described by the pitch of a reference code (usually a C code), so if the accompaniment code set by the code setting means is the reference code, the pitch correction means No correction of high information is required.
[0012]
The note data storage means stores note data including pitch information and velocity values of the note data passed through the pitch correction means. As the note data storage means, a RAM which can be rewritten at any time and can be accessed at high speed is suitable.
The sounding means sounds a musical tone based on the note data stored in the note data storage means and the designated timbre. The sound generating means includes, for example, a waveform signal generation circuit that generates a waveform signal (digital signal) based on note data and tone color, a digital-to-analog converter (DAC) that converts the generated digital signal into an analog signal, and an amplifier that amplifies the analog signal , A speaker for outputting a signal from the amplifier as a sound, and a plurality of waveform signal generation circuits (a plurality of channels are provided).
[0013]
The elapsed time measuring means measures, for each note data, the sounding elapsed time by the sounding means. This means can be realized by, for example, a counter activated at the start of sounding of certain note data. Also, for example, a timer that is always running can be used.
The silencer silences the sound being generated when a new accompaniment chord is set by the chord setting means. The silencing can be realized by, for example, a high-speed release (truncation) or a method of rapidly setting a panning value to zero.
[0014]
The velocity rewriting means rewrites, when a new accompaniment chord is set, the velocity value of the silenced note data to a smaller value if the sounding elapsed time does not exceed the threshold value. Then, the sounding resuming means causes the sounding means to sound a musical tone based on the note data rewritten by the velocity rewriting means.
[0015]
That is, the sound produced by the previous chord is muted and the sound produced by the new chord is resumed. Since the velocity value when resuming sounding is reduced, the sound intensity (according to the velocity value) when sounding is restarted is weakened.
[0016]
For example, when a player operates a plurality of chord keys (for example, two keys) to change chords, if there is a time lag in the operation of both chord keys, the previously operated (detected) chord key is temporarily operated. Is set (for example, C), and the code is reset (C minor) because the subsequent code key is operated (detected). In this case, immediately after the sound generation with the previously set C code is started, the sound is muted and then the sound generation with the C minor is started. Then, in the case of the prior art, if the sound is an attenuation sound with a strong attack like a piano, an attack sound is generated at the start of sounding with the C code, and an attack sound is generated at the start of sounding with the C minor. .
[0017]
However, in the case of the present invention, if the sound-elapsed time from the start of the sounding of the silenced note data (in the above example, the sound of the C code) is within the threshold, the sounding by the new chord (also the C minor) is performed. Since the velocity value at the time of restarting is reduced, at least at the start of the sounding of a new chord (C minor), the attack sound of the decay sound does not make the ear feel uncomfortable. That is, when a chord is set by a plurality of key operations, even if there is a time lag between the operation of the first key and the operation of the second key, the user does not feel uncomfortable.
[0018]
The velocity value can be rewritten by a method such as rewriting to a value of a preset ratio or subtracting a preset value. However, the key point of the present invention is to reduce the velocity value, and the method and means for that purpose are not limited.
[0019]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be specifically described with reference to the accompanying drawings.
[0020]
【Example】
As shown in FIG. 1, an
[0021]
The
[0022]
Hereinafter, the operation of the
FIG. 2 is a flowchart of the main process of the
[0023]
As shown in FIG. 3, in the timer process, if the automatic accompaniment is being executed (performance run) (S210: YES), the
[0024]
As shown in FIG. 4, in the switch processing, the
[0025]
The format of the automatic accompaniment data stored in the automatic accompaniment memory 18 is as shown in FIG. 9A. First, a bar mark indicating the start of a bar is described, and after the bar mark, the bar belongs to the bar. Note data corresponding to each note is described. One piece of note data has a key number corresponding to pitch information, a step time indicating a timing at which a note of the note data is to be generated (how long after the start of a bar has elapsed), and a duration of the sound. And a velocity corresponding to the sound intensity.
[0026]
Further, tone color data corresponding to tone color information is described at an appropriate position. The timbre data is data for defining the timbre (for example, piano, guitar, strings, etc.) of the note data that follows, and it can be said that the timbre changes each time there is timbre data. One piece of timbre data is composed of a status indicating a MIDI channel, a step time, and a timbre number indicating a piano, guitar, strings, and the like.
[0027]
A large number of descriptions of one bar starting with a bar mark and including note data and, if necessary, tone color data are repeated, and an end mark is described at the end.
In the case of the automatic accompaniment data shown in FIG. 9A, FAh is set as the content of the head address in S311.
[0028]
Returning to FIG. 4, the
The performance run determination (S210) in the above timer process is determined by the performance run flag. The clock that is incremented in S212 has its initial value set to 0 in S313.
[0029]
If the start switch has not been turned on (S310: NO), it is determined whether or not the stop switch has been operated (S314). If the stop switch has been operated (S314: YES), the performance run flag is cleared (S315), and the routine returns. If the stop switch has not been operated (S314: NO), other switch processing (S316) is performed. Execute and return.
[0030]
As shown in FIG. 5, in the keyboard processing, the
If the key is turned on (S410: YES), it is determined whether or not it is an operation of the code key 14 (S412). If a negative determination is made, that is, if a key other than the
[0031]
On the other hand, when the
[0032]
As shown in FIG. 6, in the automatic accompaniment process, it is first determined whether or not the clock has a positive value (S510). If the determination is negative, the process returns without performing any substantial process. (S511) is executed.
As shown in FIG. 7, in the gate count process, the
[0033]
Subsequently, it is determined whether or not the gate counter has become 0 (S534). If the gate counter is 0 (S534: YES), the flag indicating the state of the channel is set to off (S535), and the
[0034]
Subsequent to S536, or when a negative determination is made in S531 or S534, the channel number is incremented by 1 (S537), and it is determined whether or not this has exceeded 32, that is, whether or not the processing of S531 and subsequent steps has been performed for all channels ( (S538) If the determination is affirmative (all channels have been completed), the process returns. If the determination is negative (there is a remaining channel), the process returns to S531.
[0035]
Returning to FIG. 6, following the gate count process (S511), the
[0036]
Here, if the determination is negative, the process returns. If the determination is affirmative, one address of the automatic accompaniment data is read from the automatic accompaniment memory 18 (S513). The address read out here is the address whose head address is set in the above-mentioned S311 (see FIG. 4) and which is incremented by an address increment (S523) described later.
[0037]
Subsequently, the
On the other hand, when it is not the end mark (S514: NO), the
[0038]
Further, when the data is not an end mark (S514: NO) and is not timbre data (S516: NO), this is note data, and the pitch represented by the key number of the note data is used as an accompaniment code. Conversion is performed according to the set code (see FIG. 5, S414) (code expansion processing, S519). In the case of the present embodiment, the C code is used as the reference code (the key number of the note data is described in C), so if the accompaniment code is C, the code expansion processing is not performed.
[0039]
Then, the key number (after the code expansion processing), the velocity, and the like are stored in the note data storage memory set in the work memory 20 in the structure shown in FIG. 9B (S520). That is, for each channel of the
[0040]
Subsequently, the
[0041]
When the
At the time of this automatic accompaniment, when the player operates the chord key 14, an accompaniment sound with the newly designated chord is generated. The process of the
[0042]
When the retrigger process is started, the
[0043]
Subsequent to S422, the note data storage memory is searched, the note data of the channel is read, and the pitch (key number) is converted according to the newly set chord (chord expansion processing, S423). The key number of the corresponding note data in the note data storage memory is rewritten to the converted key number (S424). In the case of this embodiment, if the accompaniment chord is C, the chord expansion processing is not performed.
[0044]
Next, it is determined whether or not the tone generation progress counter of the note data exceeds 24 (S425). Since the sounding progress counter being 24 corresponds to 24 clocks, it means that a time equivalent to a quarter note has elapsed from the start of sounding of this note data. That is, the sounding progress counter corresponds to the elapsed time measuring means. If a negative determination is made here, the note data is rewritten to a value obtained by multiplying the velocity of the note data by 0.7 (S246). The processing of S425 to S426 corresponds to velocity rewriting means.
[0045]
On the other hand, if the determination is affirmative in S425, the velocity change (S426) is not performed. Then, the
[0046]
Subsequent to S427, the channel number is incremented by 1 (S428), and it is determined whether or not this has exceeded 32, that is, whether or not the processing of S421 and subsequent steps has been performed for all channels (S429), and an affirmative determination (all channels have been completed). If the determination is negative (there is a remaining channel), the process returns to S421.
[0047]
In this way, when a chord is changed during automatic accompaniment, if the chord change is within the set sounding elapsed time (threshold), the velocity is reduced and the sound is restarted. The attack sound does not make the ear feel uncomfortable.
[0048]
As described above, the embodiments of the present invention have been described according to the examples. However, it is needless to say that the present invention is not limited to such examples, and can be variously implemented without departing from the gist of the present invention.
For example, in the embodiment, the velocity reduction rate at the time of chord change is set to 0.7, but is not limited to 0.7, and may be appropriately set to a numerical value less than 1. Further, the rate of decrease in velocity may be made different depending on the timbre. In particular, in the case of automatically accompaniment with a plurality of types of timbres such as drums, the rate of decrease in velocity value can be made different for each timbre or group of timbres.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an automatic accompaniment device according to an embodiment.
FIG. 2 is a flowchart of a main process executed by a CPU of the automatic accompaniment device of the embodiment.
FIG. 3 is a flowchart of a timer process executed by a CPU of the automatic accompaniment device of the embodiment.
FIG. 4 is a flowchart of a switch process executed by a CPU of the automatic accompaniment device of the embodiment.
FIG. 5 is a flowchart of keyboard processing executed by a CPU of the automatic accompaniment device of the embodiment.
FIG. 6 is a flowchart of an automatic accompaniment process executed by a CPU of the automatic accompaniment device of the embodiment.
FIG. 7 is a flowchart of a gate count process executed by the CPU of the automatic accompaniment device of the embodiment.
FIG. 8 is a flowchart of a retrigger process executed by the CPU of the automatic accompaniment device of the embodiment.
FIGS. 9A and 9B are explanatory diagrams of the structure of data stored in the automatic accompaniment device of the embodiment, wherein FIG. 9A is an automatic accompaniment data format, and FIG. 9B is a note data storage memory.
[Explanation of symbols]
10 ... automatic accompaniment device 12 ...
18. Automatic accompaniment memory (automatic accompaniment data storage means)
20 Work memory (note data storage means, elapsed time measurement means)
26 CPU (code setting means, data reading means, pitch correction means, mute means, velocity rewriting means, sound generation resuming means)
28 sound source (sounding means, silencing means)
30 ... Speaker (producing means)
Claims (1)
押鍵された前記コード鍵に対応する前記コード名を伴奏コードとして設定するコード設定手段と、
自動伴奏パターンの選択に使用されるパターン選択手段と、少なくとも音高情報とベロシティ値が含まれるノートデータと該ノートデータの音色を指定する音色情報とが含まれている自動伴奏データを前記自動伴奏パターンに対応させて記憶する自動伴奏データ記憶手段と、
前記パターン選択手段によって選択された前記自動伴奏パターンに対応する前記自動伴奏データを前記自動伴奏データ記憶手段から読出すデータ読出手段と、
該データ読出手段によって読出された前記ノートデータの音高情報を前記設定された伴奏コードによって補正する音高補正手段と、
該音高補正手段を経由された前記ノートデータの音高情報及びベロシティ値を含む音符データを記憶する音符データ記憶手段と、
該音符データと前記指定された音色に基づく楽音を発音する発音手段と、
前記音符データ毎に、前記発音手段による発音経過時間を計測する経過時間計測手段と、
前記コード設定手段により新たな前記伴奏コードが設定されると前記発音中の音を消音する消音手段と、
該新たな伴奏コードが設定されたときに前記発音経過時間がしきい値を超えていない場合には、前記消音された音符データの前記ベロシティ値を小さく書き換えるベロシティ書換手段と、
該ベロシティ書換手段によって書き換えられた前記音符データに基づく楽音を前記発音手段に発音させる発音再開手段と
を備えたことを特徴とする自動伴奏装置。A keyboard having a chord key used to designate a chord name;
Chord setting means for setting the chord name corresponding to the depressed chord key as an accompaniment chord,
Pattern selecting means used for selecting an automatic accompaniment pattern; and automatically accompaniment data including note data including at least pitch information and a velocity value and timbre information designating a timbre of the note data. Automatic accompaniment data storage means for storing in association with the pattern;
Data reading means for reading the automatic accompaniment data corresponding to the automatic accompaniment pattern selected by the pattern selecting means from the automatic accompaniment data storage means;
Pitch correcting means for correcting the pitch information of the note data read by the data reading means by the set accompaniment code;
Note data storage means for storing note data including pitch information and velocity values of the note data passed through the pitch correction means,
Sounding means for generating a musical tone based on the note data and the designated tone color;
For each note data, elapsed time measuring means for measuring the elapsed sounding time by the sounding means,
Muffling means for muffling the sounding sound when the new accompaniment chord is set by the chord setting means,
Velocity rewriting means for rewriting the velocity value of the muted note data to be smaller if the sounding elapsed time does not exceed a threshold when the new accompaniment chord is set;
An automatic accompaniment device comprising: a sound resumption means for causing the sounding means to emit a tone based on the note data rewritten by the velocity rewriting means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05907599A JP3571569B2 (en) | 1999-03-05 | 1999-03-05 | Automatic accompaniment device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05907599A JP3571569B2 (en) | 1999-03-05 | 1999-03-05 | Automatic accompaniment device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000259155A JP2000259155A (en) | 2000-09-22 |
JP3571569B2 true JP3571569B2 (en) | 2004-09-29 |
Family
ID=13102880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05907599A Expired - Fee Related JP3571569B2 (en) | 1999-03-05 | 1999-03-05 | Automatic accompaniment device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3571569B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7263998B2 (en) * | 2019-09-24 | 2023-04-25 | カシオ計算機株式会社 | Electronic musical instrument, control method and program |
-
1999
- 1999-03-05 JP JP05907599A patent/JP3571569B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000259155A (en) | 2000-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3571569B2 (en) | Automatic accompaniment device | |
JP3574346B2 (en) | Automatic accompaniment device | |
JP2583809B2 (en) | Electronic musical instrument | |
JP3398554B2 (en) | Automatic arpeggio playing device | |
JP2010117419A (en) | Electronic musical instrument | |
JP3811043B2 (en) | Electronic musical instruments | |
JP3252914B2 (en) | Electronic wind instrument | |
JP3439312B2 (en) | Electronic musical instrument pitch controller | |
JP5692275B2 (en) | Electronic musical instruments | |
JP3077787B2 (en) | Electronic musical instrument tempo adjustment device | |
JP2570562B2 (en) | Automatic performance device and automatic accompaniment device | |
JP2953937B2 (en) | Electronic musical instrument volume control device | |
JPH0320758B2 (en) | ||
JP3120487B2 (en) | Electronic musical instrument with automatic accompaniment function | |
JP2974471B2 (en) | Automatic performance device | |
JPH08152880A (en) | Electronic musical instrument | |
JPH09292880A (en) | Electronic keyboard musical instrument | |
JPH07230286A (en) | Tempo setting device of electronic musical instrument | |
JP3499672B2 (en) | Automatic performance device | |
JP3669066B2 (en) | Electronic musical instruments | |
JP3543159B2 (en) | Automatic accompaniment device | |
JPH04181995A (en) | Automatic accompanying device | |
JP3375220B2 (en) | Electronic musical instrument | |
JP2570550B2 (en) | Electronic string instrument | |
JPH06289875A (en) | Automatic musical playing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040525 |
|
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: 20040601 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040624 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |