JPH0944156A - 自動演奏装置及び自動演奏方法 - Google Patents

自動演奏装置及び自動演奏方法

Info

Publication number
JPH0944156A
JPH0944156A JP7212544A JP21254495A JPH0944156A JP H0944156 A JPH0944156 A JP H0944156A JP 7212544 A JP7212544 A JP 7212544A JP 21254495 A JP21254495 A JP 21254495A JP H0944156 A JPH0944156 A JP H0944156A
Authority
JP
Japan
Prior art keywords
key
sound
automatic performance
data
time
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.)
Pending
Application number
JP7212544A
Other languages
English (en)
Inventor
Sadasuke Wakuta
定資 和久田
Yoshihisa Shimada
義久 島田
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.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing Co Ltd
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 Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP7212544A priority Critical patent/JPH0944156A/ja
Priority to US08/680,865 priority patent/US5760324A/en
Publication of JPH0944156A publication Critical patent/JPH0944156A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 (修正有) 【課題】演奏者が曲の途中で自動演奏を進める操作を止
めても音が鳴り続けることがなく、また1鍵だけを用い
た場合であっても滑らかな自動演奏を行うことのできる
自動演奏装置及び自動演奏方法を提供する。 【解決手段】複数の音符データを記憶した記憶手段18
と、押鍵がなされたことを検出する押鍵検出手段10、
16とを有し、該押鍵検出手段10,16により押鍵が
なされたことが検出される毎に、自動演奏データメモリ
18から音符データを読み出して音符データに基づいて
発音を開始すると共に、既に発音中の音を消音すること
により自動演奏を進める自動演奏装置であって、離鍵検
出手段10,16によって離鍵がなされたことが検出さ
れ、且つ押鍵判断手段で押下中の鍵がないことが判断さ
れた時に、音符データに基づく持続音が発音中であれ
ば、エンベロープ変更手段10,20は、持続音のエン
ベロープをリリース時間の長い減衰音のエンベロープに
変更する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は電子楽器の分野に属
し、特に自動演奏データに基づいて自動演奏を行う自動
演奏装置及び自動演奏方法に関する。
【0002】
【従来の技術】従来の自動演奏装置は、予め自動演奏デ
ータメモリに自動演奏データを記憶している。そして、
例えば自動演奏開始スイッチが操作されると、自動演奏
データメモリから自動演奏データが順次読み出され、こ
の自動演奏データに基づいて発音がなされることにより
自動的に所定曲の演奏が行われる。
【0003】更に詳しく説明すると、自動演奏データメ
モリに予め用意される自動演奏データは、1音を発生す
るためのデータ(以下、「音符データ」という。)の集
合で構成されている。各音符データは、例えば図9に示
すように、それぞれが1バイトで構成されるキーナン
バ、ステップタイム、ゲートタイム及びベロシティ/パ
ートの各データで構成されている。「キーナンバ」は例
えば鍵盤装置の各鍵に付された番号に対応するものであ
り、音高(音程)を指定するために使用される。「ステ
ップタイム」は発音開始のタイミング(時刻)を指定す
るために使用される。「ゲートタイム」は発音すべき音
の長さ(音長)を指定するために使用される。「ベロシ
ティ/パート」のうち、「ベロシティ」は例えば5ビッ
トで成り、音の強さを指定するために使用される。ま
た、「パート」は例えば3ビットで成り、当該音の属す
るパートを指定するために使用される。1つの曲に対応
する自動演奏データは、かかる音符データがステップタ
イム順に並べられて構成されている。
【0004】自動演奏が開始されると、ステップタイム
カウンタのカウントアップ動作が開始される。ステップ
タイムカウンタは、1ステップ毎にインクリメントされ
る。1ステップは、例えば1拍の、1/24、1/4
8、1/96等といった具合に任意に定義される。1拍
の実時間はテンポに従って定まる。従って、1ステップ
の実時間、つまりステップタイムカウンタのカウントア
ップの実時間間隔はテンポに従って決定されることにな
る。
【0005】このようなステップタイムカウンタが動作
している状態で、自動演奏データメモリから1つの音符
データが読み出される。そして、音符データ中のステッ
プタイムとステップタイムカウンタの内容とが比較され
る。そして、これらが一致しない場合は、その音符デー
タは発音タイミングに至っていないものと判断され、所
定周期で比較動作が繰り返される。この比較動作の繰り
返しと並行してステップタイムカウンタの内容がインク
リメントされ、音符データ中のステップタイムとステッ
プタイムカウンタの内容とが一致するに至ると、その音
符データは発音タイミングに至ったものと判断され、発
音処理が行われる。この発音処理では、音符データ中の
キーナンバで指定された音高及びベロシティで指定され
た強さを有する音の発音が開始される。1つの音符デー
タに対する発音処理が終了すると、次の音符データが自
動演奏データメモリから読み出され、上述したと同様の
処理が行われる。
【0006】一方、発音が開始された音は、ゲートタイ
ムで指定された時間が経過することにより消音される。
消音は次のようにして行われる。即ち、上記発音処理に
おいて、発音に使用される音符データ中のゲートタイム
データがゲートタイムカウンタにセットされる。ゲート
タイムカウンタは、上記発音処理とは独立に、1ステッ
プ毎にデクリメントされる。そして、ゲートタイムカウ
ンタの内容がゼロになると発音中の音の消音処理が行わ
れる。以上のようにして発音処理と消音処理とが次々に
実行されることにより1つの曲の自動演奏が行われる。
【0007】ところで、近年、上述した自動演奏装置の
技術を応用した装置の1つとして、コンサートマジック
機能付き自動演奏装置が開発されている。ここに、「コ
ンサートマジック機能」とは、演奏者により指示された
タイミング、例えば押鍵されたタイミングで音符データ
を自動演奏データメモリから読み出し、この音符データ
に基づいて発音を開始させる機能である。このコンサー
トマジック機能付き自動演奏装置では、一般に、上述し
た通常の自動演奏装置で使用される自動演奏データと同
じ自動演奏データが使用される。しかし、自動演奏デー
タを構成する各音符データ中のステップタイムデータは
使用されない。その代わりに、発音タイミングは、外部
から演奏者によって与えられる。
【0008】また、コンサートマジック機能付き自動演
奏装置においては、鍵盤装置は単に発音タイミングを与
える手段として使用される。従って、演奏者は、曲の発
音すべきタイミングに合わせて鍵盤装置の何れか任意の
鍵を押すことにより、自動演奏を進行させることができ
る。換言すれば、コンサートマジック機能付きの自動演
奏装置は、音高及び音の強さは自動演奏データに基づい
て決定され、発音タイミングは演奏者の指示に基づいて
決定されて楽音が発生される自動演奏装置ということが
できる。
【0009】従来の自動演奏装置では、自動演奏開始ス
イッチが操作されると自動的に所定の曲の自動演奏が行
われるので演奏者が介入する余地がないのに対し、コン
サートマジック機能付き自動演奏装置では、演奏者が発
音タイミングを指示することによって自動演奏が進行す
るので、演奏者は、自分が演奏をしているという満足感
を得ることができる。
【0010】
【発明が解決しようとする課題】ところで、上述したコ
ンサートマジック機能付き自動演奏装置では、発音が開
始された音を消音するするために幾つかの方法が考えら
れている。第1の方法は、押鍵に応じてステップタイム
カウンタの内容を強制的に進めることにより発音中の音
を消音する方法である。第2の方法は押鍵によって発音
中の音を消音する方法である。第3の方法は全鍵が離さ
れた時に発音中の全ての音を消音する方法である。
【0011】しかし、上記の各方法にはいずれも欠点が
ある。第1の方法においては、押鍵があると、自動演奏
データメモリから音符データを1つだけ読み出し、その
音符データに含まれているステップタイムデータとステ
ップタイム(ステップタイムカウンタの内容)とを比較
する。そして、一致しないことが判断されるとステップ
タイムをインクリメントすると共に、その時点で既に発
音中である音のゲートタイム(ゲートタイムカウンタの
内容)をデクリメントする。以下、その音符データに含
まれているステップタイムデータとステップタイムとが
一致するまで上記ステップタイムのインクリメント及び
ゲートタイムのデクリメント動作が強制的に繰り返され
る。この繰り返し動作は、上述した1ステップの実時間
とは無関係に高速で行われる。そして、音符データに含
まれているステップタイムデータとステップタイムとが
一致することが判断された時点で、上記音符データに基
づく発音が行われる。また、上記繰り返し動作によって
ゲートタイムがゼロになった発音中の音は消音される。
これにより、押鍵がなされると、1つの音符データに基
づく1つの音が必ず発音されると共に、押鍵前に発音さ
れていた音は消音されるという機能が実現されている。
【0012】しかしながら、この第1の方法によれば、
発音中の音のゲートタイムがゼロにならないとその音は
消音されない。ところが、次に押鍵がなされることによ
ってゲートタイムのデクリメントが行われないと発音中
の音のゲートタイムがゼロにならない。従って、曲の途
中で自動演奏を進める操作(押鍵)を止めてしまった場
合は、発音中の音は消音されることなく鳴り続けるとい
う問題を生じていた。
【0013】また、第2の方法は、ステップタイムやゲ
ートタイムとは無関係に、押鍵がなされたことを検出し
て発音中の音を消音する方法である。しかしながら、こ
の場合も、上記第1の方法の場合と同様に、次の押鍵が
なされないと発音中の音の消音は行われないので、曲を
最後まで演奏せずに途中で止めてしまった場合は、発音
中の音は消音されることなく鳴り続けるという問題を生
じていた。なお、上記第1及び第2の方法において、曲
の最後まで自動演奏を行った場合は、最後の自動演奏デ
ータ(これを「エンドマーク」という。)では新たな発
音は開始されないので、発音中の音が消音されることな
く鳴り続けるという問題は生じない。
【0014】そこで、かかる第1及び第2の方法の問題
点を解消するために、第3の方法が考えられている。こ
の第3の方法においては、自動演奏を進める操作を途中
で止めても全鍵が離されると発音中の全ての音が消音さ
れる。しかし、例えば鍵盤装置の1鍵だけを用いて自動
演奏を行っているような場合は、離鍵されると全鍵が離
された状態になる。従って、離鍵の度に発音中の音が消
音されてしまい、恰かもスタッカートで演奏しているよ
うに音が途切れてしまい、滑らかな演奏ができないとい
う問題があった。
【0015】本発明は、かかる従来のコンサートマジッ
ク機能付きの自動演奏装置の問題点を解消するためにな
されたものであり、演奏者が曲の途中で自動演奏を進め
る操作を止めても音が鳴り続けることがなく、また1鍵
だけを用いて自動演奏を進める場合であっても滑らかな
自動演奏を行うことのできる自動演奏装置及び自動演奏
方法を提供することを目的とする。
【0016】
【課題を解決するための手段】本発明の自動演奏装置
は、上記目的を達成するために、複数の音符データを記
憶した記憶手段と、押鍵がなされたことを検出する押鍵
検出手段とを有し、該押鍵検出手段により押鍵がなされ
たことが検出される毎に、該記憶手段から音符データを
読み出して該音符データに基づいて発音を開始すると共
に、既に発音中の音を消音することにより自動演奏を進
める自動演奏装置であって、離鍵がなされたことを検出
する離鍵検出手段と、押下中の鍵の有無を判断する押鍵
判断手段と、発音中の音のエンベロープを変更するエン
ベロープ変更手段とを具備し、該離鍵検出手段によって
離鍵がなされたことが検出され、且つ該押鍵判断手段で
押下中の鍵がないことが判断された時に、音符データに
基づく持続音が発音中であれば、該エンベロープ変更手
段は、該持続音のエンベロープをリリース時間の長い減
衰音のエンベロープに変更することを特徴とする。
【0017】本自動演奏装置によれば、離鍵がなされた
ことが検出され、且つ全鍵が離されている(押下中の鍵
がない)ことが判断された場合は、発音中の持続音のエ
ンベロープがリリース時間の長い減衰音のエンベロープ
に変更される。エンベロープの変更は、リリース時間の
長い減衰音のエンベロープを規定するパラメータを、例
えば発音を行うための音源にセットすることにより実現
できる。これにより、発音中の音は徐々に減衰されて所
定時間後には消音されるので、演奏者が曲の途中で自動
演奏を進める操作(例えば押鍵)を止めても音が鳴り続
けることがない。また、全鍵が離されても減衰しながら
発音は継続されるので、音が途切れることがなく滑らか
な自動演奏ができる。なお、全鍵が離された時点で発音
中の音が減衰音であれば、エンベロープを変更する必要
はない。
【0018】また、本発明の自動演奏装置は、音長を規
定するゲートタイムがゼロになった時に当該ゲートタイ
ムに対応する音を消音する消音手段を更に有し、該消音
手段は、前記押鍵検出手段により押鍵がなされたことが
検出された時に、前記エンベロープが変更された発音中
の持続音のゲートタイムを減じてゼロにすることにより
消音するように構成できる。
【0019】本自動演奏装置によれば、エンベロープが
変更された時点では次の押鍵がなされていないので、減
衰しながら発音されている持続音のゲートタイムは減じ
られない。この状態で押鍵がなされるとゲートタイムが
減じられ、これがゼロになると減衰しながら発音されて
いる持続音は消音される。この消音は、例えば、発音中
の持続音のエンベロープを通常の消音時に用いられる高
速で減衰するエンベロープに変更することにより実現で
きる。これにより、全鍵が離された場合であっても減衰
しながら発音されている持続音は直ちに消音されること
なく発音を維持し、次の押鍵によって完全に消音され
る。この場合、ゲートタイムも減じられてゼロになるの
で、現実の消音だけでなくデータ上の消音も完了する。
【0020】また、本発明の自動演奏方法は、上記目的
を達成するために、押鍵がなされたことが検出される毎
に、記憶された複数の音符データの中から1つの音符デ
ータを読み出して該音符データに基づいて発音を開始す
ると共に、既に発音中の音を消音することにより自動演
奏を進める自動演奏方法であって、離鍵がなされたこと
が検出され、且つ押下中の鍵がないことが判断された時
に、音符データに基づく持続音が発音中であれば、該持
続音のエンベロープをリリース時間の長い減衰音のエン
ベロープに変更することを特徴とする。
【0021】この自動演奏方法によれば、上記自動演奏
装置の場合と同様に、発音中の音は徐々に減衰されて所
定時間後には消音されるので、演奏者が曲の途中で自動
演奏を進める操作(例えば押鍵)を止めても音が鳴り続
けることがない。また、全鍵が離されても減衰しながら
発音は継続されるので、音が途切れることがなく滑らか
な自動演奏ができる。なお、全鍵が離された時点で発音
中の音が減衰音であれば、エンベロープを変更する必要
がないことは上記自動演奏装置の場合と同様である。
【0022】また、本発明の自動演奏方法は、前記音符
データは少なくとも音長を規定するゲートタイムデータ
を有し、押鍵がなされたことが検出された時に、前記エ
ンベロープが変更された発音中の持続音のゲートタイム
を減じてゼロにすることにより消音するように構成でき
る。
【0023】本自動演奏方法によれば、上記自動演奏装
置の場合と同様に、全鍵が離された場合であっても減衰
しながら発音されている持続音は直ちに消音されること
なく発音を維持し、次の押鍵によって完全に消音され
る。この場合、上記自動演奏装置の場合と同様に、ゲー
トタイムも減じられてゼロになるので、現実の消音だけ
でなくデータ上の消音も完了する。
【0024】
【発明の実施の形態】以下、本発明の自動演奏装置及び
自動演奏方法の一実施の形態につき図面を参照しながら
詳細に説明する。
【0025】図1は、本発明の自動演奏装置の構成を示
すブロック図である。本自動演奏装置は、システムバス
30で相互に接続された中央処理装置(以下、「CP
U」という。)10、プログラムメモリ12、ワークメ
モリ13、パネルインタフェース回路14、鍵盤インタ
フェース回路16、自動演奏データメモリ18、波形メ
モリ19及び音源20で構成されている。システムバス
30は、例えばアドレス信号、データ信号又は制御信号
等を送受するためのバスラインである。
【0026】本発明の押鍵検出手段、離鍵検出手段及び
エンベロープ変更手段の各一部並びに押鍵判断手段はC
PU10の処理によって実現することができる。CPU
10は、プログラムメモリ12に記憶されている制御プ
ログラムに従って本自動演奏装置の全体を制御する。こ
のCPU10が行う処理の詳細については後述する。ま
た、CPU10には、タイマ10aが接続されており、
一定時間間隔、例えば2ミリ秒間隔で割込信号を発生す
る。なお、このタイマ10aは、CPU10から所定の
データをセットすることによって、割込信号の発生間隔
を変更することができる。このタイマ10aで発生され
た割込信号はCPU10に供給され、後述する割込処理
ルーチンを起動するトリガーとなる。また、このCPU
10には外部インタフェース回路11が接続されてい
る。
【0027】外部インタフェース回路11は、本自動演
奏装置と外部装置との間のデータの送受を制御するため
に使用される。この外部インタフェース回路11として
は、外部に接続される機器の種類に応じて、例えばMI
DIインタフェース、RS232Cインタフェース、S
CSIインタフェース等の汎用インタフェース又は独自
の規格を有する各種インタフェースを用いることができ
る。外部装置としては、例えば他の電子楽器、パーソナ
ルコンピュータ、シーケンサ等が挙げられる。
【0028】この外部インタフェース回路11は外部装
置から送られてきたデータを受信する。この外部インタ
フェース回路11で受信されたデータはCPU10に送
られる。CPU10は、このデータに基づいて発音処理
を行い、また操作パネル15の設定状態を変更する。逆
に、後述する操作パネル15及び鍵盤装置17が操作さ
れることによって発生されたデータは、外部インタフェ
ース回路11を介して外部装置に送信される。これによ
り、本自動演奏装置の操作パネル15及び鍵盤装置17
から外部装置を制御することも可能となっている。以下
においては、外部インタフェース回路11としてMID
Iインタフェース回路が用いられるものとする。
【0029】プログラムメモリ12は、例えばリードオ
ンリメモリ(以下、「ROM」という。)で構成するこ
とができる。このプログラムメモリ12には、上述した
制御プログラムの他に、CPU10が使用する種々の固
定データが記憶されている。このプログラムメモリ12
には、更に複数の楽器音の複数の音域に対応した音色を
指定するための複数の音色パラメータが記憶されてい
る。1つの音色パラメータは、所定の楽器音の所定の音
域の音色を規定するために使用される。各音色パラメー
タは、例えば波形アドレス、周波数データ、エンベロー
プデータ、フィルタ係数等で構成されている。なお、こ
のプログラムメモリ12は、ランダムアクセスメモリ
(以下、「RAM」という。)で構成することもでき
る。この場合、本自動演奏装置を動作させるに先立っ
て、上記制御プログラム、固定データ、音色パラメータ
等をプログラムメモリ(RAM)にロードするように構
成すればよい。
【0030】ワークメモリ13は、CPU10が各種処
理を行う際に、種々のデータを一時記憶するために使用
される。このワークメモリ13には、本自動演奏装置を
制御するための各種レジスタ、カウンタ、フラグ等が定
義されている。以下に主要なレジスタ、カウンタ、フラ
グ等を示す。なお、下記以外については、以下において
出現する都度説明する。 (1)自動演奏フラグ:本自動演奏装置が自動演奏モー
ドにあるかどうかを記憶するフラグである。 (2)コンサートマジックフラグ(CMフラグ):本自
動演奏装置がコンサートマジックモード(CMモード)
にあるかどうかを記憶するフラグである。 (3)アドレスレジスタ:現在実行中の自動演奏データ
が置かれている自動演奏データメモリ18上のアドレス
(以下、「読出アドレス」という。)を保持する。 (4)キーオンカウンタ:現在押鍵中の鍵の数を計数す
るカウンタである。押鍵によりインクリメントされ、離
鍵によりデクリメントされる。 (5)データ読出リクエストフラグ:押鍵があった場合
にセットされるフラグであり、自動演奏データメモリ1
8から音符データを読み出すべきことを指示するために
使用される。 (6)同時押しタイマカウンタ:タイマ割込が発生する
度にデクリメントされるカウンタであり、鍵の同時押し
があったかどうかを判断するために使用される。 (7)巻戻しタイマカウンタ:タイマ割込が発生する度
にデクリメントされるカウンタであり、コンサートマジ
ック演奏が停止されてから一定時間が経過したかどうか
を判断するために使用される。 (8)クロックカウンタ:タイマ割込が発生する度にイ
ンクリメントされるカウンタである。 (9)読出タイミングカウンタ:その時点で設定されて
いるテンポに応じたインターバル(1ステップタイムに
相当する時間)でインクリメントされるカウンタであ
る。この読出タイミングカウンタの内容が変化した場合
に、発音タイミングになったかどうかを調べるタイミン
グ(以下、「チェックタイミング」という。)であるこ
とが認識される。
【0031】パネルインタフェース回路14には操作パ
ネル15が接続されている。操作パネル15には、何れ
も図示しないが、本自動演奏装置を制御するための各種
スイッチ、例えば自動演奏開始スイッチ、コンサートマ
ジックスイッチ(CMスイッチ)、選曲スイッチ、音色
選択スイッチ、音響効果指定スイッチ、音量スイッチ等
が設けられている。また、各スイッチの設定状態を表示
するLED表示器、演奏者が本自動演奏装置と対話する
ためのメッセージ等を表示するためのLCD表示器等が
設けられている。
【0032】上記各種スイッチのうち、主要なスイッチ
について簡単に説明する。自動演奏開始スイッチは、演
奏者が自動演奏の開始又は停止を制御するために使用さ
れる。この自動演奏開始スイッチは、例えば押釦スイッ
チで構成することができる。この自動演奏開始スイッチ
の設定状態は、上述した自動演奏フラグによって記憶さ
れる。自動演奏フラグは、自動演奏開始スイッチが押さ
れる度に反転する。即ち、自動演奏停止中(自動演奏フ
ラグ=0)に自動演奏開始スイッチが押されると自動演
奏フラグが「1」にセットされると共に自動演奏が開始
される。一方、自動演奏中(自動演奏フラグ=1)に自
動演奏開始スイッチが押されると自動演奏フラグが
「0」にクリアされると共に自動演奏は停止される。
【0033】CMスイッチは、コンサートマジック機能
を使用するかどうかを指定するために使用される。この
CMスイッチは、例えば押釦スイッチで構成することが
できる。このCMスイッチの設定状態は、上述したCM
フラグによって記憶される。CMフラグは、CMスイッ
チが押される度に反転する。即ち、CMモードでない時
(CMフラグ=0)にCMスイッチが押されるとCMフ
ラグが「1」にセットされてCMモードに移る。一方、
CMモードの時(CMフラグ=1)にCMスイッチが押
されるとCMフラグが「0」にクリアされて通常演奏モ
ードに移る。
【0034】上記パネルインタフェース回路14は、C
PU10からの指令に応じて操作パネル15上の各スイ
ッチをスキャンする。パネルインタフェース回路14
は、このスキャンにより得られた各スイッチの開閉状態
を示す信号に基づいて、各スイッチを1ビットに対応さ
せたパネルデータを作成する。各ビットは、例えば
「1」でオン、「0」でオフ状態を表す。このパネルデ
ータは、システムバス30を介してCPU10に送られ
る。このパネルデータは、操作パネル15上のスイッチ
のオン又はオフイベントが発生したかどうかを判断する
ために使用される(詳細は後述する)。
【0035】また、パネルインタフェース回路14は、
CPU10から送られてきた表示データを操作パネル1
5上の表示器に送る。これにより、CPU10から送ら
れてきた例えば文字データに従ったメッセージがLCD
表示器に表示され、また図示しないLED表示器等が点
灯/消灯される。
【0036】鍵盤インタフェース回路16には鍵盤装置
17が接続されている。鍵盤装置17は複数の鍵を有し
ている。この鍵盤装置17は、通常は、押鍵によって当
該鍵に対応する音の発音を指示し、離鍵によって当該鍵
に対応する音の消音を指示するために使用される。一
方、CMモードにおいては、自動演奏を進めるトリガー
(より具体的には、次の音符データを読み出すトリガ
ー)として使用される。この鍵盤装置17としては、例
えば、異なる押圧深さでそれぞれオンになる第1及び第
2のキースイッチを各鍵に備えた2接点方式の鍵盤装置
を用いることができる。
【0037】本発明の押鍵検出手段及び離鍵検出手段
は、上記鍵盤インタフェース回路16及びCPU10に
よって実現されている。上記鍵盤インタフェース回路1
6は、CPU10からの指令に応じて鍵盤装置17上の
各キースイッチをスキャンする。パネルインタフェース
回路14は、このスキャンにより得られた各キースイッ
チの開閉状態を示す信号に基づいて、鍵盤データを作製
する。鍵盤データは、各鍵を1ビットに対応させたビッ
ト列で成り、各ビットは、例えば「1」で押鍵中、
「0」で離鍵中であることを表す。この際、例えば第1
及び第2のキースイッチの双方がオンになっている場合
に押鍵中であることを表す「1」のデータを作製し、そ
れ以外の場合は離鍵中であることを表す「0」のデータ
を作製するように構成できる。
【0038】また、押鍵によって第1のキースイッチが
オンになってから第2のキースイッチがオンになるまで
の時間が計測され、この計測された時間に基づいてベロ
シティデータが作製される。これら鍵盤データ及びベロ
シティデータは、システムバス30を介してCPU10
に送られる。CPU10は、鍵盤データに基づいて鍵盤
イベントがあったかどうかを判断する(詳細は後述す
る)。なお、鍵盤インタフェース回路16及び鍵盤装置
17は、電子弦楽器、電子管楽器、電子打楽器、コンピ
ュータのキーボードで代用することができる。この場
合、これらの電子弦楽器等からは、上記鍵盤データ及び
ベロシティデータに相当するデータがCPU10に送ら
れる。そして、CPU10は、これらのデータに基づい
てイベントの有無を判断する。
【0039】自動演奏データメモリ18は、例えばRO
Mで構成することができる。この自動演奏データメモリ
18には、複数の曲に対応する自動演奏データが記憶さ
れている。これらの自動演奏データは、通常の自動伴
奏、コンサートマジック機能を使用した自動演奏、デモ
ンストレーション演奏等に使用される。各自動演奏デー
タは、「ソング番号」と呼ばれる識別子が付されてお
り、ユーザは操作パネル15上の選曲スイッチを用いて
ソング番号を指定することにより任意の曲を選択でき
る。これら各曲に対応する自動演奏データは、従来の技
術の欄で説明したと同様に、音符データの集合で構成さ
れている。なお、この自動演奏データメモリ18は、R
AM、ROMカード、RAMカード、フロッピーディス
ク、CD−ROM等で構成することができる。自動演奏
データメモリ18としてフロッピーディスク、CD−R
OMを用いた場合は、これらに記憶された自動演奏デー
タを一旦RAMにロードし、RAM内の自動演奏データ
にアクセスするように構成するのが好ましい。
【0040】波形メモリ19は、各音色パラメータに対
応する波形データを記憶している。波形データは、例え
ば自然楽器音に対応する楽音信号をパルスコード変調
(PCM)することによって作製することができる。こ
の波形メモリ19は、例えばROMで構成することがで
きる。この波形メモリ19に記憶された波形データは、
音源20によって読み出される。
【0041】音源20は複数のオシレータを備えてい
る。本発明のエンベロープ変更手段は、この音源20と
CPU10とにより構成される。この音源20は、詳細
は図示しないが、波形メモリ19から波形データを読み
出す波形読出回路、この波形読出回路で読み出された波
形データにエンベロープを付加するためのエンベロープ
生成回路等により構成されている。CPU10は、鍵盤
装置17の押鍵、外部インタフェース回路11からのノ
ートオンデータの受信、又は音符データの読み出しがあ
ると、少なくとも1個のオシレータを発音用に割り当
て、この割り当てられたオシレータに音色パラメータを
供給する。この音源20の中の発音が割り当てられたオ
シレータは、音色パラメータを受け取ることによりデジ
タル楽音信号の生成を開始する。即ち、音色パラメータ
中の波形アドレスで示される波形メモリ19の位置か
ら、同じく音色パラメータ中の周波数データに応じた速
度で波形データを順次読み出し、これに音色パラメータ
中のエンベロープデータで指定されるエンベロープを付
加してデジタル楽音信号を生成する。
【0042】エンベロープデータは、例えばアタック、
ディケイ、リリース等といった楽音波形の各フェーズ毎
に、例えば「目標レベル」及び「到達時間」で成るパラ
メータで構成することができる。このエンベロープデー
タを音源20にセットすることにより、エンベロープの
形状を変更することができる。例えば、リリースのフェ
ーズ用のエンベロープデータ中の「到達時間」を大きく
すれば、リリース時間の長いエンベロープを有する楽音
波形を作製することができる。
【0043】この音源20で生成されたデジタル楽音信
号はD/A変換器21でアナログ信号に変換され、次い
で、増幅器22で増幅されてスピーカ23に送られる。
そして、スピーカ23で音響信号に変換されて放音され
る。
【0044】次に、上記構成において、図2〜図8に示
したフローチャートを参照しながら本自動演奏装置の動
作について説明する。なお、上記フローチャートに示さ
れた動作は、何れもCPU10の処理により実現される
ものである。
【0045】(1)メイン処理 図2は本自動演奏装置のメインルーチンを示すフローチ
ャートである。このメインルーチンは電源の投入により
起動される。電源が投入されると、先ず、初期化処理が
行われる(ステップS10)。この初期化処理では、C
PU10の内部のハードウエアが初期状態に設定される
と共に、ワークメモリ13に定義されているレジスタ、
カウンタ、フラグ等に初期値が設定される。また、この
初期化処理では、音源20に所定のデータが送られるこ
とにより、電源投入時に不要な音が発生されるのを防止
するための処理が行われる。
【0046】この初期化処理が終了すると、次いで、ス
イッチイベント処理が行われる(ステップS11)。こ
のスイッチイベント処理では、先ず、スイッチイベント
の有無が調べられる。即ち、CPU10は、後述するタ
イマ割込処理において更新されるスキャンバッファから
1つのパネルデータ(以下、「新パネルデータ」とい
う。)を取り出し、ワークメモリ13に設けられた新パ
ネルデータレジスタに格納する。次いで、この新パネル
データと、前回のスイッチイベント処理で取り込まれて
既にワークメモリ13に設けられた旧パネルデータレジ
スタに記憶されているパネルデータ(以下、「旧パネル
データ」という。)との排他的論理和をとってパネルイ
ベントマップを作製する。このパネルイベントマップが
ゼロであればスイッチイベントは発生しなかったものと
判断され、ゼロでなければスイッチイベントが発生した
ものと判断される。
【0047】例えば、パネルイベントマップ中の自動演
奏開始スイッチに対応するビットが「1」であれば、自
動演奏開始スイッチのイベントが発生したものと判断さ
れ、自動演奏フラグが反転される。この反転によって自
動演奏フラグが「1」にされた時は、その時点で選択さ
れているソング番号で指定される曲の自動演奏データの
先頭アドレスがアドレスレジスタにセットされる。これ
により、自動演奏データの読出アドレスが決定される。
なお、「その時点で選択されているソング番号」は、予
め行われた操作パネル15上の選曲スイッチの操作によ
って、ワークメモリ13に定義されたソング番号レジス
タにセットされている。
【0048】同様に、パネルイベントマップ中のCMス
イッチに対応するビットが「1」であれば、CMスイッ
チのイベントが発生したものと判断され、CMフラグが
反転される。その他、例えば音色選択スイッチのイベン
トであることが判断されると、現在設定されている音色
が、そのイベントが発生した音色選択スイッチに対応す
る音色に変更される。このように、スイッチイベント処
理においては、操作パネル15上の各スイッチに割り当
てられている機能を実現するための処理が実行される。
そして、最後に、新パネルデータが旧パネルデータレジ
スタに移動され、スイッチイベント処理は終了する。
【0049】メインルーチンでは、次いで、鍵盤イベン
ト処理が行われる(ステップS12)。この鍵盤イベン
ト処理では、先ず、鍵盤イベントの有無が調べられる。
即ち、CPU10は、鍵盤インタフェース回路16から
鍵盤データ(以下、「新鍵盤データ」という。)を取り
込み、ワークメモリ13に設けられた新鍵盤データレジ
スタに格納する。次いで、この新鍵盤データと、前回の
鍵盤イベント処理で取り込まれて既にワークメモリ13
に設けられた旧鍵盤データレジスタに記憶されている鍵
盤データ(以下、「旧鍵盤データ」という。)との排他
的論理和をとって鍵盤イベントマップを作製する。そし
て、このイベントマップ中に「1」であるビットが存在
すれば、そのビットに対応する鍵のイベントが発生した
と判断され、存在しなければ鍵盤イベントは発生しなか
ったものと判断される。次いで、その鍵盤イベントは押
鍵イベントであるか離鍵イベントであるかが調べられ
る。これは、鍵盤イベントマップ中で「1」になってい
るビットに対応する新鍵盤データ中のビットを調べるこ
とにより行われる。即ち、新鍵盤データ中の対応するビ
ットが「1」であれば押鍵イベントがあったものと判断
されて押鍵イベント処理が行われる。一方、「0」であ
れば離鍵イベントがあったものと判断されて離鍵イベン
ト処理が行われる。これら押鍵イベント処理及び離鍵イ
ベント処理の詳細は後述する。
【0050】次いで、MIDI処理が行われる(ステッ
プS13)。このMIDI処理においては、外部インタ
フェース回路11で受信されたMIDIデータに基づき
発音・消音等が行われる。このMIDI処理自体は、本
発明とは直接関係しないので説明は省略する。
【0051】次いで、自動演奏処理が行われる(ステッ
プS14)。この自動演奏処理では、コンサートマジッ
ク演奏処理、自動伴奏処理、デモンストレーション処理
等が行われる。これらの詳細については後述する。
【0052】次いで、「その他の処理」が実行される
(ステップS15)。この「その他の処理」では、上述
した以外の処理、例えばスイッチを押し続けた場合の特
殊な動作を実現するための処理等といった、メインルー
チンで定期的なチェックが必要な処理が行われる。その
後ステップS11に戻り、以下ステップS11〜S15
の処理が繰り返される。この繰り返し実行の過程で、ス
イッチイベント若しくは鍵盤イベントが発生し、又は外
部インタフェース回路11でデータを受信すると、それ
らに応じた処理が行われ、また自動演奏データに基づく
発音処理が行われる。これにより自動演奏装置としての
各種機能が実現されている。
【0053】(2)タイマ割込処理 タイマ割込処理は、タイマ10aから発生された割込信
号に応じて、上記メインルーチンの各処理に割り込んで
行われる。このタイマ割込処理の詳細は、図3のフロー
チャートに示されている。
【0054】このタイマ割込処理では、先ず、パネルス
キャンが行われる(ステップS20)。即ち、CPU1
0は、パネルインタフェース回路14からパネルデータ
を取り込み、例えばワークメモリ13上に形成されたス
キャンバッファに順次蓄積する。このスキャンバッファ
は、例えばCPU10の制御の下でFIFOメモリとし
て動作するように構成できる。なお、このワークメモリ
13上にFIFOメモリを形成する代わりにFIFO素
子を用いてスキャンバッファを構成してもよい。次い
で、クロックカウンタの内容がインクリメントされる
(ステップS21)。従って、このクロックカウンタ
は、例えば2ミリ秒毎にインクリメントされる。次い
で、クロックカウンタの内容が所定値になったかどうか
が調べられる(ステップS22)。ここに所定値とは、
その時点で設定されているテンポにおける1ステップタ
イムに相当する値をいう。そして、所定値であることが
判断されると、読出タイミングカウンタの内容がインク
リメントされる(ステップS23)。この読出タイミン
グカウンタの内容は、後述する自動演奏処理において参
照され、上述したチェックタイミングが到来したかどう
かを判断するために使用される。このチェックタイミン
グは、ゲートタイムをデクリメントするタイミングとし
ても使用される。上記ステップS22で所定値でないこ
とが判断されるとステップS23の処理はスキップされ
る。
【0055】次いで、コンサートマジック同時押しタイ
マ処理が行われる(ステップS24)。この処理では、
同時押しタイマカウンタの内容がデクリメントされる。
次いで、コンサートマジック巻戻しタイマ処理が行われ
る(ステップS25)。この処理では、巻戻しタイマカ
ウンタの内容がデクリメントされる。その後、このタイ
マ割込処理ルーチンからリターンして、メインルーチン
の割り込まれた位置に戻る。なお、本実施の形態では、
パネルスキャンはタイマ割込処理内で行うように構成し
ているが、メインルーチン(図2)のスイッチイベント
処理(ステップS11)内で行うように構成してもよ
い。
【0056】(3)押鍵イベント処理 押鍵イベント処理の詳細は、図4のフローチャートに示
されている。押鍵イベント処理では、先ず、キーオンカ
ウンタがインクリメントされる(ステップS30)。こ
のキーオンカウンタは、上述したように現在押鍵中であ
る鍵の数を計数するために使用される。このキーオンカ
ウンタは押鍵イベントがあった場合にインクリメントさ
れ、離鍵イベントがあった場合にデクリメントされる。
従って、このキーオンカウンタの内容がゼロの場合は、
全鍵が離されていることを意味する。
【0057】次いで、コンサートマジックモード(CM
モード)であるかどうかが調べられる(ステップS3
1)。これは、CMフラグを調べることにより行われ
る。ここで、CMモードでないことが判断されると、押
鍵に応じた通常の発音処理が行われる(ステップS3
9)。この通常の発音処理では、鍵盤イベントマップ中
の「1」になっているビットに対応する鍵のキーナンバ
が算出されると共に、鍵盤インタフェース回路16から
当該鍵に対応するベロシティデータが読み込まれる。そ
して、このキーナンバに対応する音色パラメータがプロ
グラムメモリ12から読み出され、ベロシティデータと
一緒に音源20に送られる。これにより、押鍵に応じた
音が押鍵に応じた強さでスピーカ23から発生される。
【0058】上記ステップS31でCMモードであるこ
とが判断されると、次いで自動演奏中であるかどうかが
調べられる(ステップS32)。これは自動演奏フラグ
を調べることにより行われる。ここで、自動演奏中であ
ることが判断されると、ステップS39へ分岐し、通常
の発音処理が行われる。これにより、CMモードであっ
て自動演奏中であれば、鍵盤操作に応じた音が発生され
ることになる。従って、離鍵イベント処理における通常
の消音処理(ステップS45)と相俟って、演奏者は、
例えば自動演奏をバックに鍵盤装置17によるメロディ
演奏ができるようになっている。
【0059】一方、ステップS32で自動演奏中でない
ことが判断されると、以下、コンサートマジック機能を
実現するための処理が行われる。即ち、先ず、ベロシテ
ィとキーナンバのセーブが行われる(ステップS3
3)。具体的には、鍵盤イベントマップ中の「1」にな
っているビットに対応する鍵のキーナンバが算出される
と共に、鍵盤インタフェース回路16から当該鍵に対応
するベロシティデータが読み込まれ、ワークメモリ13
の所定のバッファ領域にセーブされる。ここでセーブさ
れたキーナンバは、本自動演奏装置がスプリットモード
で動作する場合に、後述するコンサートマジックメイン
処理において、押鍵に応じた発音を行うか押鍵に応じて
自動演奏を進めるかを判断するために使用される。ま
た、ベロシティは、後述するコンサートマジックメイン
処理において、発音を行う際の音量を制御するために使
用される。
【0060】次いで、2鍵以上の同時押しであるかどう
かが調べられる(ステップS34)。これは、前回の押
鍵から今回の押鍵までに所定時間、例えば30ミリ秒程
度が経過しているかどうかを調べることによって判断さ
れる。より具体的には、前回の押鍵イベント処理でセッ
トされた同時押しタイマカウンタの内容がゼロになって
いるかどうかを調べることにより行われる。そして、同
時押しであることが判断されると、押鍵に対する処理は
行わずにこの押鍵イベント処理ルーチンからリターンし
てメインルーチンに戻る。このように、1つの押鍵があ
ってから次の押鍵までに所定時間が経過していない場合
は、後の押鍵は無視することにより、例えば誤って2鍵
以上を同時に押したような場合に、自動演奏が誤って進
んでしまうことを防止することができる。
【0061】一方、同時押しでないことが判断される
と、先ず、データ読出リクエストフラグがセットされる
(ステップS35)。このデータ読出リクエストフラグ
は、後に行われる自動演奏処理で参照される。次いで、
同時押しタイマカウンタに所定値がセットされる(ステ
ップS36)。この所定値としては、上述したように、
例えば30ミリ秒程度の時間経過を計測するために必要
なデータが用いられる。次いで、巻戻しタイマカウンタ
に所定値がセットされる(ステップS37)。この所定
値としては、例えば1分程度の時間経過を計測するため
に必要なデータが用いられる。この巻戻しタイマは、後
述するように、自動演奏が所定時間が経過しても進行し
ない場合に、アドレスレジスタの内容を当該曲の自動演
奏データの先頭に戻すために使用される。その後、この
押鍵イベント処理ルーチンからリターンしてメインルー
チンに戻る。
【0062】(4)離鍵イベント処理 離鍵イベント処理の詳細は、図5のフローチャートに示
されている。離鍵イベント処理では、先ず、キーオンカ
ウンタがデクリメントされる(ステップS40)。次い
で、コンサートマジックモード(CMモード)であるか
どうかが調べられる(ステップS41)。ここで、CM
モードでないことが判断されると、通常の消音処理が行
われる(ステップS45)。この消音処理では、鍵盤イ
ベントマップ中の「1」になっているビットに対応する
鍵のキーナンバが算出される。そして、このキーナンバ
に対応する発音中のオシレータに対し、高速で減衰する
エンベロープデータが送られる。これにより、離鍵に応
じて発音中の音が消音される。
【0063】上記ステップS41でCMモードであるこ
とが判断されると、次いで自動演奏中であるかどうかが
調べられる(ステップS43)。これは自動演奏フラグ
を調べることにより行われる。ここで、自動演奏中であ
ることが判断されると、ステップS45へ分岐し、通常
の消音処理が行われる。これにより、CMモードであっ
て自動演奏中であれば、離鍵操作に応じた消音がなされ
る。従って、押鍵イベント処理における通常の発音処理
(ステップS39)と相俟って、演奏者は、例えば自動
演奏をバックに鍵盤装置17によるメロディ演奏ができ
るようになっている。
【0064】一方、ステップS42で自動演奏中でない
ことが判断されると、次いで、キーオンカウンタの内容
がゼロであるかどうかが調べられる(ステップS4
3)。本発明の押鍵判断手段は、キーオンカウンタ及び
CPU10による本ステップS43の処理によって実現
されている。そして、ゼロでないことが判断されると、
1鍵以上が押鍵中であることが認識される。この場合、
既に発音中の音は次の押鍵によって消音されるので、以
下では何等の処理も行わずにこの離鍵イベント処理ルー
チンからリターンしてメインルーチンに戻る。即ち、離
鍵イベントがあっても全鍵が離鍵されていなければ、次
の押鍵によって新たな音符データに基づく発音が開始さ
れると共に、既に発音中の音が消音される。
【0065】上記ステップS43で、キーオンカウンタ
の内容がゼロであることが判断されると、全鍵が離され
ていることが認識され、CMデータオフ処理が行われる
(ステップS44)。このCMデータオフ処理では、現
在発音中の音が持続音であれば、その持続音のエンベロ
ープをリリース時間の長い減衰音のエンベロープに変更
する処理が行われる。持続音であるかどうかは、例え
ば、その時点でワークメモリ13に設けられた音色番号
レジスタに設定されている音色番号によって判断するこ
とができる。なお、この音色番号レジスタの内容は、例
えば操作パネル15の音色選択スイッチ、或いは自動演
奏データに含まれる音色変更用のデータによって変更さ
れる。
【0066】これにより、従来のように、全鍵が離され
た場合に、直ちに消音されて音が途中で途切れるという
事態が回避されるようになっている。この時点では、発
音中の持続音のゲートタイムは元の値を維持している。
このゲートタイムは、次に押鍵がなされて新たな音符デ
ータに基づく発音がなされる時に、ステップタイムのイ
ンクリメントと同時にデクリメントされる。そして、こ
のデクリメントによってゲートタイムがゼロにされた時
に減衰しながら発音されている上記持続音が消音される
ことになる。この場合、ゲートタイムも減じられてゼロ
になるので、現実の消音だけでなくデータ上の消音も完
了する。
【0067】(5)自動演奏処理 次に、図6のフローチャートを参照しながら、メインル
ーチンのステップS14で行われる自動演奏処理の詳細
について説明する。この自動演奏処理では、上述したよ
うに、コンサートマジック演奏処理、自動伴奏処理、デ
モンストレーション処理等が行われるが、ここではコン
サートマジック演奏処理の詳細について説明し、自動伴
奏処理及びデモンストレーション処理については説明を
省略する。
【0068】自動演奏処理では、先ず、自動演奏中であ
るかどうかが調べられる(ステップS51)。これは、
自動演奏フラグを参照することにより行われる。そし
て、自動演奏中であることが判断されると、通常の自動
演奏処理が行われる(ステップS52)。この自動演奏
処理では、チェックタイミングにおいて音符データ中の
ステップタイムデータとステップタイムカウンタの内容
とが比較され、これらが一致した時に発音タイミングが
到来したと判断されて自動演奏データメモリ18から音
符データが読み出される。そして、この音符データに基
づいて発音が行われる。これにより、自動演奏データ本
来の発音タイミング(ステップタイム)に従った自動演
奏が所定のテンポに従って行われることになる。この通
常の自動演奏処理の内容は周知であるので詳細な説明は
省略する。
【0069】上記ステップS51で自動演奏中でないこ
とが判断されると、以下、コンサートマジック演奏処理
が行われる。即ち、先ず巻戻しタイマがゼロであるかど
うかが調べられる(ステップS53)。そして、巻戻し
タイマがゼロであることが判断されると、自動演奏デー
タの読出アドレス(アドレスレジスタの内容)がリセッ
トされる(ステップS54)。即ち、その時点で選択さ
れている曲の先頭アドレスが読出アドレスとしてアドレ
スレジスタにセットされる。これにより、所定時間(例
えば1分間)が経過しても鍵盤操作がなかった場合に、
次の鍵盤を操作したら曲の先頭からコンサートマジック
演奏が開始されるという機能が実現されている。上記ス
テップS53で巻戻しタイマがゼロでなければ、ステッ
プS54はスキップされる。
【0070】次いで、データ読出リクエストフラグが
「1」であるかどうかが調べられる(ステップS5
5)。即ち、押鍵があったかどうかが調べられる。ここ
で、データ読出リクエストフラグが「0」であることが
判断されると押鍵はなかったものと認識され、以下、何
等の処理も行わずにこのコンサートマジック演奏処理ル
ーチンからリターンしてメインルーチンに戻る。
【0071】一方、上記ステップS55で、データ読出
リクエストフラグが「1」であることが判断されると、
押鍵があったことが認識され、以下、コンサートマジッ
ク演奏のための発音処理等が行われる。即ち、先ず、自
動演奏ゲートオフ処理が行われる(ステップS56)。
この自動演奏ゲートオフ処理は、本発明の消音手段に対
応する。この自動演奏ゲートオフ処理では、既に発音中
の音のゲートタイムがデクリメントされる。この自動演
奏ゲートオフ処理の詳細は、図8のフローチャートに示
されている。
【0072】自動演奏ゲートオフ処理では、自動演奏ア
サイナにより発音が割り当てられたチャンネルが発音中
であるかどうかが調べられ、発音中のチャンネルがあれ
ばそのゲートタイムをデクリメントする処理が行われ
る。即ち、先ず、当該チャンネルが発音中であるかどう
かが調べられる(ステップS90)。そして、発音中で
ないことが判断されると、ステップS95へ分岐し、未
処理のチャンネルがあるかどうかが調べられる。そし
て、未処理のチャンネルがないことが判断されると、こ
の自動演奏ゲートオフ処理ルーチンからリターンする。
【0073】一方、ステップS95で未処理のチャンネ
ルがあることが判断されると、ステップS90へ戻って
同様の処理が行われる。上記ステップS90で、当該チ
ャンネルが発音中であることが判断されると、次いで、
当該チャンネルのゲートタイムが「00H」(末尾の
「H」は16進数であることを示す。以下においても同
じ。)であるかどうかが調べられる(ステップS9
1)。ここで、ゲートタイムが「00H」であることが
判断されると、ステップS94へ分岐し、当該チャンネ
ルに対応する音の消音処理が行われる。この消音処理
は、上述した図5のステップS45における消音処理と
同様の方法で行われる。一方、ゲートタイムが「00
H」でないことが判断されると、当該チャンネルのゲー
トタイムがデクリメントされる(ステップS92)。そ
して、ゲートタイムが「00H」であるかどうかが調べ
られる(ステップS93)。ここで、ゲートタイムが
「00H」であることが判断されるとステップS94へ
進み、消音処理が行われる。一方、ゲートタイムが「0
0H」でないことが判断されると、ステップS95へ分
岐し、上記と同様の処理が行われる。
【0074】このように、自動演奏ゲートオフ処理で
は、自動演奏アサイナで発音が割り当てられて発音中で
あるチャンネルを探し、該当するチャンネルがあればゲ
ートタイムを減じ、その結果がゼロになれば消音処理を
行う。この自動演奏ゲートオフ処理ルーチンは、発音タ
イミングに至った時点でコールされるので、1ステップ
タイム毎にゲートタイムがデクリメントされる機能が実
現されている。
【0075】コンサートマジック演奏処理の説明に戻
る。自動演奏ゲートオフ処理(ステップS56)が終了
すると、次いで、コンサートマジックメイン処理が行わ
れる(ステップS58)。このコンサートマジックメイ
ン処理は、自動演奏データメモリ18から1つの音符デ
ータを読み出して発音する処理である。ここで、コンサ
ートマジックメイン処理の詳細について、図7のフロー
チャートを参照しながら説明する。
【0076】コンサートマジックメイン処理では、先
ず、CMモードであるかどうかが調べられる(ステップ
S70)。これは、CMフラグを調べることにより行わ
れる。ここで、CMモードでないことが判断されると、
このコンサートマジックメイン処理ルーチンからリター
ンしてコンサートマジック演奏処理ルーチンに戻る。つ
まり、CMモードでない場合は、押鍵があっても自動演
奏データに基づく発音処理は行われない。
【0077】上記ステップS70で、CMモードである
ことが判断されると、次いで、ステップが一致するかど
うかが調べられる(ステップS71)。即ち、アドレス
レジスタにセットされている読出アドレスで指定される
音符データ中のステップタイムがステップタイムカウン
タの内容と一致するかどうかが調べられる。ここで、一
致しないことが判断されると、ステップタイムカウンタ
の内容をインクリメントし(ステップS72)、その
後、このコンサートマジックメイン処理ルーチンからリ
ターンしてコンサートマジック演奏処理ルーチンに戻
る。そして、コンサートマジック演奏処理ルーチンで
は、データ読出リクエストフラグが「1」であるかどう
かが調べられ(ステップS58)、「1」であればステ
ップS56に戻って以下同様の処理が繰り返される。以
上の繰り返し(ステップS56→S57→S70→S7
1→S72→S58→S56→・・・・)により、ステ
ップタイムカウンタの内容がインクリメントされると共
に、発音中の音のゲートタイムがデクリメントされる。
なお、上記の繰り返し処理は、チェックタイミング又は
発音タイミングとは無関係に、CPU10の処理速度で
行われる。そして、ステップS71で、アドレスレジス
タにセットされている読出アドレスで指定される音符デ
ータ中のステップタイムがステップタイムカウンタの内
容と一致することが判断されると、音符データの読み出
しが行われる(ステップS73)。
【0078】次いで、読み出された音符データがノート
データであるかどうかが調べられる(ステップS7
4)。これは、例えば、音符データの第1バイト目(キ
ーナンバ)のMSBを調べることにより行われる。ここ
で、ノートデータでないことが判断されるとシステム処
理が行われる(ステップS75)。このシステム処理で
は、例えば音色変更、効果変更等の処理が行われる。
【0079】上記ステップS74でノートデータである
ことが判断されると、次いで、パートナンバが「7」で
あるかどうかが調べられる(ステップS76)。これ
は、例えば音符データの第4バイト目の下位3ビットを
参照することにより行われる。ここに、パートナンバ
「7」はドラムチャンネルに割り当てられているパート
である。そして、パートナンバ「7」であることが判断
されると、ドラムチャンネルセット処理が行われる(ス
テップS77)。この処理は、音符データ中のパートの
番号を音源20で規定されているドラムチャンネルのパ
ートの番号に合わせるために、パートナンバ「7」を
「10」に変更する処理である。上記ステップS76
で、パートナンバが「7」でないことが判断された場合
は、ステップS77はスキップされる。
【0080】次いで、ベロシティセット及びスプリット
処理が行われる(ステップS78)。このベロシティセ
ット処理では、押鍵イベント処理ルーチンのステップS
33でワークメモリ13の所定のバッファ領域にセーブ
されているベロシティが音源20に送られる。また、ス
プリット処理では、同じくセーブされているキーデータ
に基づいて、押された鍵のキーナンバが、通常の演奏用
鍵域に属するかコンサートマジック用鍵域に属するかが
調べられ、コンサートマジック用鍵域に属する場合は、
音符データに基づく発音を行うべくその音符データに対
応した音色パラメータが音源20に送られる。一方、押
された鍵のキーナンバが通常の演奏用鍵域に属する場合
は、発音処理は行われない。
【0081】次いで、上記ステップS78でセットされ
た音色パラメータ及びベロシティに基づいて発音処理が
行われる(ステップS79)。この発音処理の内容は、
押鍵イベント処理のステップS39で行った内容と同じ
である。次いで、データ読出リクエストフラグがクリア
される(ステップS80)。次いで、次の音符データの
読出アドレスがアドレスレジスタにセットされる(ステ
ップS81)。その後、ステップS70に戻って、以下
同様の処理が繰り返される。これにより、同一ステップ
タイムを有する音符データが複数存在する場合に、それ
らの全てが同時に発音されることになる。
【0082】なお、上記実施の形態では、鍵盤装置17
の何れかの鍵を押下することにより自動演奏が進められ
るように構成したが、鍵に限らず、操作パネル15上の
所定のスイッチ、フットスイッチ等によって自動演奏を
進めるように構成しても良い。
【0083】
【発明の効果】以上詳述したように、本発明によれば、
演奏者が曲の途中で自動演奏を進める操作を止めても音
が鳴り続けることがなく、また1鍵だけを用いて自動演
奏を進める場合であっても滑らかな自動演奏を行うこと
のできる自動演奏装置及び自動演奏方法を提供できる。
【図面の簡単な説明】
【図1】本発明の自動演奏装置の一実施の形態を示すブ
ロック図である。
【図2】本発明の一実施の形態で使用されるメイン処理
を示すフローチャートである。
【図3】本発明の一実施の形態で使用されるタイマ割込
処理を示すフローチャートである。
【図4】本発明の一実施の形態で使用される押鍵イベン
ト処理を示すフローチャートである。
【図5】本発明の一実施の形態で使用される離鍵イベン
ト処理を示すフローチャートである。
【図6】本発明の一実施の形態で使用されるコンサート
マジック演奏処理を示すフローチャートである。
【図7】本発明の一実施の形態で使用されるコンサート
マジックメイン処理を示すフローチャートである。
【図8】本発明の一実施の形態で使用される自動演奏ゲ
ートオフ処理を示すフローチャートである。
【図9】本発明の一実施の形態で使用する音符データの
構成を示す図である。
【符号の説明】
10 CPU 10a タイマ 11 外部インタフェース回路 12 プログラムメモリ 13 ワークメモリ 14 パネルインタフェース回路 15 操作パネル 16 鍵盤インタフェース回路 17 鍵盤装置 18 自動演奏データメモリ 19 波形メモリ 20 音源 21 D/A変換器 22 増幅器 23 スピーカ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 複数の音符データを記憶した記憶手段
    と、 押鍵がなされたことを検出する押鍵検出手段とを有し、 該押鍵検出手段により押鍵がなされたことが検出される
    毎に、該記憶手段から音符データを読み出して該音符デ
    ータに基づいて発音を開始すると共に、既に発音中の音
    を消音することにより自動演奏を進める自動演奏装置で
    あって、 離鍵がなされたことを検出する離鍵検出手段と、 押下中の鍵の有無を判断する押鍵判断手段と、 発音中の音のエンベロープを変更するエンベロープ変更
    手段とを具備し、 該離鍵検出手段によって離鍵がなされたことが検出さ
    れ、且つ該押鍵判断手段で押下中の鍵がないことが判断
    された時に、音符データに基づく持続音が発音中であれ
    ば、該エンベロープ変更手段は、該持続音のエンベロー
    プをリリース時間の長い減衰音のエンベロープに変更す
    ることを特徴とする自動演奏装置。
  2. 【請求項2】 音長を規定するゲートタイムがゼロにな
    った時に当該ゲートタイムに対応する音を消音する消音
    手段を更に有し、該消音手段は、前記押鍵検出手段によ
    り押鍵がなされたことが検出された時に、前記エンベロ
    ープが変更された発音中の持続音のゲートタイムを減じ
    てゼロにすることにより消音することを特徴とする請求
    項1に記載の自動演奏装置。
  3. 【請求項3】 押鍵がなされたことが検出される毎に、
    記憶された複数の音符データの中から1つの音符データ
    を読み出して該音符データに基づいて発音を開始すると
    共に、既に発音中の音を消音することにより自動演奏を
    進める自動演奏方法であって、 離鍵がなされたことが検出され、且つ押下中の鍵がない
    ことが判断された時に、音符データに基づく持続音が発
    音中であれば、該持続音のエンベロープをリリース時間
    の長い減衰音のエンベロープに変更することを特徴とす
    る自動演奏方法。
  4. 【請求項4】 前記音符データは少なくとも音長を規定
    するゲートタイムデータを有し、押鍵がなされたことが
    検出された時に、前記エンベロープが変更された発音中
    の持続音のゲートタイムを減じてゼロにすることにより
    消音することを特徴とする請求項3に記載の自動演奏装
    置。
JP7212544A 1995-07-28 1995-07-28 自動演奏装置及び自動演奏方法 Pending JPH0944156A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7212544A JPH0944156A (ja) 1995-07-28 1995-07-28 自動演奏装置及び自動演奏方法
US08/680,865 US5760324A (en) 1995-07-28 1996-07-16 Automatic performance device with sound stopping feature

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7212544A JPH0944156A (ja) 1995-07-28 1995-07-28 自動演奏装置及び自動演奏方法

Publications (1)

Publication Number Publication Date
JPH0944156A true JPH0944156A (ja) 1997-02-14

Family

ID=16624445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7212544A Pending JPH0944156A (ja) 1995-07-28 1995-07-28 自動演奏装置及び自動演奏方法

Country Status (1)

Country Link
JP (1) JPH0944156A (ja)

Similar Documents

Publication Publication Date Title
JPH09179559A (ja) 自動伴奏装置及び自動伴奏方法
JP3192579B2 (ja) 自動演奏装置及び自動演奏方法
JP3455050B2 (ja) 自動伴奏装置
JP3192597B2 (ja) 電子楽器の自動演奏装置
JP3169535B2 (ja) 自動演奏装置及び自動演奏方法
JP3150580B2 (ja) 自動演奏装置及び自動演奏方法
JP4318194B2 (ja) 電子楽器の自動伴奏装置及び自動伴奏方法
JP3640235B2 (ja) 自動伴奏装置及び自動伴奏方法
JPH0944156A (ja) 自動演奏装置及び自動演奏方法
JP3226268B2 (ja) コンサートマジック自動演奏装置
JP3171759B2 (ja) 自動演奏装置
JP3630266B2 (ja) 自動伴奏装置
JP2002032083A (ja) 電子楽器
JPH0822282A (ja) ギター自動伴奏装置
JP2513014B2 (ja) 電子楽器の自動演奏装置
JP2953937B2 (ja) 電子楽器の音量調整装置
JPH10319949A (ja) 電子楽器
JP2665854B2 (ja) 自動演奏装置
JP3097888B2 (ja) 電子楽器の音量設定装置
JPH0756571A (ja) 電子楽器
JPH11311989A (ja) 自動演奏装置及び自動演奏方法
JPH08221072A (ja) 自動伴奏装置
JPH06314096A (ja) 電子楽器の前コード検出装置
JPH11327545A (ja) 自動演奏装置及び自動演奏方法
JP2003280656A (ja) 消音機能付きピアノ

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010306