JP2500492B2 - 自動伴奏装置 - Google Patents
自動伴奏装置Info
- Publication number
- JP2500492B2 JP2500492B2 JP4077871A JP7787192A JP2500492B2 JP 2500492 B2 JP2500492 B2 JP 2500492B2 JP 4077871 A JP4077871 A JP 4077871A JP 7787192 A JP7787192 A JP 7787192A JP 2500492 B2 JP2500492 B2 JP 2500492B2
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- fill
- value
- intro
- switch
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/36—Accompaniment arrangements
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/36—Accompaniment arrangements
- G10H1/40—Rhythm
- G10H1/42—Rhythm comprising tone forming circuits
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2210/00—Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
- G10H2210/005—Musical accompaniment, i.e. complete instrumental rhythm synthesis added to a performed melody, e.g. as output by drum machines
- G10H2210/011—Fill-in added to normal accompaniment pattern
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S84/00—Music
- Y10S84/12—Side; rhythm and percussion devices
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S84/00—Music
- Y10S84/22—Chord organs
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Description
長さを任意に終了可能な自動伴奏装置に関する。
動伴奏装置が種々開発されている。この種の自動伴奏装
置においては、リズム楽音、ベース音および和音(コー
ド)について各々所定の伴奏パターン、すなわち、リズ
ムパターン、ベースパターンおよびコードパターン(コ
ードバッキンクパターン)を記憶しており、これらのパ
ターンに従って各楽音を発生するようにしている。この
場合、各楽音について発音のイベントを示すデータ(以
下、ノートイベントデータという)を各イベントが発生
すべきタイミングを示すタイミングデータとともに記憶
しておき、自動伴奏中は記憶したタイミングデータと現
在演奏中のタイミングとを比較し、これらが一致した際
にノートイベントデータを読み出して、各楽音の発音を
制御するようにしている。ここで、記憶している伴奏パ
ターンとしては、例えば、2小節や4小節のように複数
の小節からなっているパターンが多い。
えた場合には、順にイントロパターン、ノーマルパター
ン、エンディングパターンとに大別することもできる。
そして、これらパターンの途中で、フィルインパターン
による演奏を挿入することがある。この場合のフィルイ
ン演奏は、演奏者が所定のスイッチを操作することによ
って開始されるようになっている。ここで、フィルイン
パターンは、通常、1小節パターンであることが多い。
て、イントロパターンによるイントロ演奏が開始し、こ
のイントロ演奏終了後にノーマルパターンへ移行して、
ノーマルパターンの繰り返し演奏が行われるようになっ
ていた。このとき、イントロの小節数(長さ)は、伴奏
態様毎に固定されているものであった。
様でも演奏者の嗜好に応じて、イントロの長さを変更し
たい場合が多々発生する。しかしながら、従来の装置で
は、イントロの長さが伴奏態様で固定されているため
に、演奏者の嗜好に応じイントロを途中で打ち切ること
ができず、演奏者の要求に答えることができないという
問題があった。
ので、その目的とするところは、音楽的な不自然さを伴
わずに、イントロ演奏を任意の場所で終了させることが
できる自動伴奏装置を提供することにある。
を解決するために、複数の小節からなる第1の伴奏パタ
ーン、任意の小節数からなる第2の伴奏パターンおよび
前記第1の伴奏パターンより少ない小節からなる第3の
伴奏パターンを各々記憶する記憶手段と、この記憶手段
から前記第1の伴奏パターンの読み出しを指示する第1
の指示手段と、前記記憶手段から前記第3の伴奏パター
ンの読み出しを指示する第2の指示手段と、前記第1の
指示手段の読み出し指示によって前記第1の伴奏パター
ンを読み出し、引き続き前記第2の伴奏パターンを繰り
返し読み出すとともに、前記第1の伴奏パターンの読み
出し途中で前記第2の指示手段の読み出し指示があった
場合に、前記第1の伴奏パターンに換えて前記第3の伴
奏パターンを読み出し、引き続き前記第2の伴奏パター
ンを繰り返し読み出しす読出手段とを具備し、前記読出
手段により読み出された伴奏パターンにしたがって伴奏
音を発生するようにしたことを特徴としている。
演奏途中において、第2の指示手段による読み出し指示
があった場合には、第1の伴奏パターンの演奏に換え
て、第3の伴奏パターンの演奏が行われ、この演奏後引
き続いて、第2の伴奏パターンの繰り返し演奏が行われ
る。したがって、例えば、第1の伴奏パターンとしてイ
ントロパターン、第2の伴奏パターンとしてノーマルパ
ターン、第3の伴奏パターンとしてフィルインパターン
を設定すれば、伴奏パターンは、イントロ(途中ま
で)、フィルイン、ノーマルと順次移行していく。フィ
ルインパターンは、イントロパターンよりも短い小節な
ので、演奏者はイントロ演奏途中において、第2の指示
手段によってフィルインの指示をすることにより、イン
トロの演奏を任意に終了させてノーマルパターンに移行
させることができる。このとき、フィルインパターンに
移行してからノーマルパターンに移行するので、イント
ロ演奏が途中で打ち切られたような、音楽的な不自然さ
を生じさせることもなくノーマルパターンに移行するこ
とができる。
いて説明する。
ロック図である。この図において、1は複数のキーから
構成される鍵盤であり、各キーの押鍵、離鍵状態は押鍵
検出回路2によって検出され、その検出信号がバスを介
してCPU3に供給されるようになっている。4はCP
U3に割込信号INTを供給するタイマであり、CPU
3は割込信号INTが供給されると所定のタイマインタ
ラプト処理(後述する)を実行するようになっている。
なお、タイマ4は、曲のテンポに応じて割込信号INT
を出力する。
られるプログラムおよびリズム演奏に用いられるリズム
パターンデータが記憶されている。6はRAMであり、
後述する種々のレジスタが設定される。7は音源回路で
あり、CPU3の制御のもとに楽音信号を発生させる。
この音源回路7によって発生された楽音信号は、D/A
変換部8によってアナログ信号に変換された後に、アン
プやスピーカ等から成るサウンドシステム9を介して発
音される。10は種々のスイッチから構成されるパネル
スイッチであり、各スイッチのオン/オフ状態がスイッ
チ検出回路11によって検出され、その検出信号がCP
U3に供給されるようになっている。12はCPU3の
制御のもとに各種表示を行う表示部である。
の構成について図2を参照して説明する。この図に示す
ブロックAはヘッダであり、このリズムパターンデータ
の拍子数を示す拍子データや小節数を示す小節数データ
等の基本的なデータが書き込まれている。また、ブロッ
クB1は、1イベントデータ(1つの音の発生を指示す
るデータ)の内容を示しており、小節内の発音タイミン
グを示すタイミングデータと発音すべきリズム音の内容
を示すノートイベントデータとから構成される。
間)を24クロックの長さに対応させているので、1小
節の長さは、例えば、4拍子の場合が96クロック、3
拍子の場合が72クロックとなる。タイミングデータ
は、小節内の発音タイミングに対応するクロック数の値
が書き込まれ、例えば、4拍子の場合0〜95の中か
ら、3拍子の場合0〜71の中から対応するクロック数
の値が書き込まれる。ノートイベントデータは、発音す
べきリズム音(打楽器音)の種類を示すノートナンバと
音の強さを示すベロシティとから構成される。以下同様
に、ブロックB2、B3、……、Bmがイベントの数m
(mは整数)だけ設けられている。なお、パターンが複
数小節からなるものについては、1小節のイベントデー
タ毎に小節数データ(図示せず)が記憶されている。
フィルインおよびノーマルの各パターンにおいて同様で
ある。この実施例では、さらに、イントロパターンが2
種類、フィルインパターンが4種類、ノーマルパターン
が2種類設定されている。これらを区別するために、イ
ントロパターンを各々イントロ1パターン、イントロ2
パターンとし、フィルインパターンを各々フィルイン1
パターン、フィルイン2パターン、フィルイン3パター
ン、フィルイン4パターンとし、ノーマルパターンを各
々バースパターン、コーラスパターンとする。ここで、
各フィルインパターンは各イントロパターンよりも短い
小節数のものである。例えば、各フィルインパターンは
1小節分のパターンであり、各イントロパターンは8小
節分のパターンである。また、各ノーマルパターンは1
乃至複数小節分の任意の長さのパターンである。
成について図3を参照して説明する。
停止時にリズム演奏の開始を指定するプッシュオンスイ
ッチであり、該スイッチを押すことによって、選択され
ているノーマルパターンによるリズム演奏がスタートす
るようになっている。また、リズム演奏中に、該スイッ
チを押すことによって、この時点で選択されているノー
マルパターンの先頭に移行して、再スタートするように
なっている。例えば、イントロパターン中であれば直ち
に選択されているノーマルパターンの先頭へ移行し、フ
ィルインパターン中であれば同様に直ちに選択されてい
るノーマルパターンの先頭へ移行する。この再スタート
機能(リスタート機能)によって変拍子のリズムを実現
することができる。
を指定するプッシュオンスイッチである。なお、該スイ
ッチがリズム演奏の停止時に押されても無視されるのは
勿論である。
コーラススイッチSW4 これらスイッチは、ノーマルパターンの内のどちらか一
方を選択するスイッチである。例えば、リズム演奏の停
止時にバーススイッチSW3 が押された場合、スタート
/リスタートスイッチSW1 によってバースパターンの
リズム演奏が開始されるようになっている。また、コー
ラスパターンのリズム演奏中にバーススイッチSW3 が
押されると、この時点からリズム演奏がバースパターン
に移行するようになっている。加えて、イントロパター
ンあるいはフィルインパターン中に、バーススイッチS
W3 が押されると、これらパターンの終了時に移行すべ
きノーマルパターンがバースパターンに設定(バース予
約)されるようになっている。
イッチSW4 が押された場合、スタート/リスタートス
イッチSW1 によってバースパターンのリズム演奏が開
始されるようになっている。また、バースパターンのリ
ズム演奏中にコーラススイッチSW4 が押されると、こ
の時点からリズム演奏がバースパターンに移行するよう
になっている。加えて、イントロパターンあるいはフィ
ルインパターン中に、コーラススイッチSW4 が押され
ると、これらパターンの終了時に移行すべきノーマルパ
ターンがコーラスパターンに設定(コーラス予約)され
るようになっている。このように、移行すべきパターン
の予約ができることにより、イントロやフィルインから
ノーマル演奏に移行する際のパターンの組み合わせを多
彩にすることができ、より複雑で変化に富んだリズム演
奏が可能になる。
↓SWaを押すことによって、イントロ1パターンによ
るイントロが開始されるようになっている。このイント
ロ1パターンが終了すると、バースパターンに移行す
る。リズム演奏中に、該スイッチを押すことによって、
フィルインスイッチとして働く。例えば、バースパター
ン中であればフィルイン1パターンに移行し、このフィ
ルイン1パターンが終了すると、再びバースパターンに
戻る。また、コーラスパターン中であればフィルイン2
パターンに移行し、このフィルイン2パターンが終了す
ると、再びコーラスパターンに戻る。すなわち、「↓」
はフィルイン後、元のノーマルパターンに戻ることを意
味する。
て、イントロパターンからフィルインパターンに移行
し、フィルインパターン終了後、ノーマルパターンに移
行する。このときに挿入されるフィルインパターンは、
次に演奏すべきノーマルパターンの種類によって決定さ
れる。例えば、フィルイン終了後にバースパターンに移
行するのであればフィルイン1パターンが挿入され、コ
ーラスパターンに移行するのであればフィルイン2パタ
ーンが挿入されるようになっている。そして、フィルイ
ンパターンはイントロパターンより短いパターンである
ため、例えば、前述の8小節イントロパターンの4小節
目において、該スイッチをオンすると、4小節の終わり
までフィルインパターンが演奏された後にノーマルパタ
ーンに移行するので、イントロ演奏を4小節にて終了さ
せることができる。
→SWbを押すことによって、イントロ2パターンによ
るイントロが開始されるようになっている。このイント
ロ2パターンが終了すると、コーラスパターンに移行す
る。リズム演奏中に、該スイッチを押すことによって、
フィルインスイッチとして働く。例えば、バースパター
ン中であればフィルイン3パターンに移行し、このフィ
ルイン3パターンが終了すると、再びコーラスパターン
に移行する。また、コーラスパターン中であればフィル
イン4パターンに移行し、このフィルイン4パターンが
終了すると、バースパターンに移行する。すなわち、
「→」はフィルイン後、元のノーマルパターンとは異な
るパターンに移行することを意味する。イントロ中ある
いはフィルイン中に該スイッチが押された場合は、前述
のイントロ1/フィルインスイッチ↓SWaと同様な働
きをする。
〜図14を参照して順次説明する。なお、この動作説明
では、CPU3において実行される各ルーチン毎に分け
て説明する。
メインルーチンが起動される。まず、ステップSa1に
おいて、RAM6内の各種レジスタのゼロリセットや、
各種フラグに初期設定値の書き込み等のイニシャライズ
処理が行われる。例えば、指定されたノーマルパターン
の種別を示すフラグVERSEの値が「1」に設定され
る(フラグVERSEの値が「1」ならばバースパター
ンを示し、値が「0」ならばコーラスパターンを示
す)。このイニシャライズ処理後、処理はステップSa
2に進む。
10の各スイッチ(図3参照)についてオンされたか否
かが判別される。ここで、オンが検出された場合には、
この判別結果が「YES」となり、次のステップSa3
に進んで、後述するオンされたスイッチの種類に対応し
た各処理が実行される一方、オフが検出された場合に
は、この判別結果が「NO」となり、直ちにステップS
a4に進む。
例えば、鍵処理や押鍵された鍵に対応する楽音発生処理
等が行われる。該処理終了後にはステップSa2に戻
り、電源が切断されるまで、ステップSa2〜ステップ
Sa4の処理が繰り返し実行される。このようにメイン
ルーチンにおいて、パネルスイッチ10の設定に応じた
スイッチ処理が実行される。
処理は、パネルスイッチ10の各スイッチ操作に応じて
各レジスタやフラグの内容を変更したり、設定する処理
である。
チSW1の処理 スタート/リスタートスイッチSW1 が押されると、前
述したメインルーチン(図4参照)のステップSa3に
おいて、図5に示すサブルーチンが実行される。このル
ーチンでは、該スイッチの押下によるノーマルパターン
のリズム演奏を開始するために、あるいはノーマルパタ
ーンのリズム演奏を先頭から再開するために、バースパ
ターンあるいはコーラスパターンに対応する各データが
各種レジスタにセットされる。
まず、ステップSb1において、フラグVERSEの値
が「1」であるか否かが判別される。該フラグの値が
「1」である場合には、この判別結果が「YES」とな
ってステップSb2に進み、ROM5(図1参照)から
バースパターンのヘッダ(ブロックA;図2参照)が読
み出される一方、該フラグの値が「1」でない場合に
は、この判別結果が「NO」となってステップSb3に
進み、コーラスパターンに対応するヘッダが読み出され
る。
b3において読み出されたヘッダの内の小節数データが
レジスタMEASに格納され(ステップSb4)、該当
するノーマルパターンの最初のタイミングデータ(ブロ
ックB1;図2参照)が読み出されてレジスタTIME
に格納され(ステップSb5)、レジスタCLKの値が
「0」にリセットされる(ステップSb6)。ここで、
レジスタCLKは、リズム演奏における現時点の小節内
タイミングを示すレジスタであり、後述するインタラプ
ト処理においてインクリメントされる。また、レジスタ
MEASは、リズムパターンの進行小節位置を示すデー
タが記憶されるレジスタである。
グRUNの値が「0」であるか否かが判別される。ここ
で、フラグRUNは、リズム演奏をオンにするか否かを
指定するものであり、該フラグの値が「1」である場合
に、リズム演奏オンとなる。フラグRUNの値が「0」
である場合には、フラグRUNの値が新たに「1」にセ
ットされて(ステップSb8)、このルーチンは終了す
る。一方、フラグRUNの値が「0」でない場合に、こ
のルーチンは直ちに終了して、処理はメインルーチン
(図4参照)に戻る。以上のようにしてリズム演奏に必
要なレジスタやフラグの内容が設定されると、以後は、
後述するタイマインタラプト処理によって楽音発生が行
われる。
ルーチン(図4参照)のステップSa3において、図6
に示すサブルーチンが実行される。まず、ステップSc
1において、フラグRUNの値が「1」であるか否かが
判別される。該フラグの値が「1」でない場合、この判
別結果は「NO」となり、何ら処理が行われることなく
このサブルーチンは終了する。これは、リズム演奏オフ
の状態においてストップスイッチSW2 の操作を無効と
するためである。一方、フラグRUNの値が「1」であ
る場合、判別結果が「YES」となり、処理は次のステ
ップSc2へ進む。ステップSc2において、音源回路
7へノートオフ信号が供給されて、リズム音の発音が停
止する。引き続き、ステップSc3において、フラグR
UNが「0」にリセットされる。そして、この処理終了
後、このサブルーチンは終了して、処理はメインルーチ
ン(図4参照)に戻る。
ーチン(図4参照)のステップSa3において、図7に
示すサブルーチンが実行される。このルーチンでは、リ
ズム演奏オンであるか否か、さらにこの演奏がノーマル
パターンであるか否かが判別され、ノーマルパターンで
ない場合にはバース予約がなされる。ノーマルパターン
である場合には、さらに、バースパターンであるか否か
が判別されて、バースパターンでない場合には直ちにバ
ースパターンに移行するべくデータが各種レジスタにセ
ットされる一方、バースパターンである場合にはメイン
ルーチンに戻るようにしている。
「1」であるか否かが判別される。該フラグの値が
「1」でない場合には、判別結果が「NO」となって、
処理は後述するステップSd7に進む一方、フラグRU
Nの値が「1」である場合には判別結果が「YES」と
なって、処理は次のステップSd2へ進む。ステップS
d2において、現時点でのリズムパターンがノーマルパ
ターンであるか否かが判別される。ノーマルパターンで
ない場合、すなわち、現在のリズムパターンが、イント
ロパターンあるいはフィルインパターンである場合に
は、判別結果が「NO」となって、処理は後述するステ
ップSd7に進む一方、ノーマルパターンである場合に
は判別結果が「YES」となり、処理は次のステップS
d3へ進む。
Eの値が「0」であるかを否かが判別される。このと
き、該フラグの値が「0」でない場合には、現在のリズ
ムパターンがノーマルパターンのバースパターンである
ことを示しており、何等処理を行う必要がないので、こ
のルーチンは終了する。一方、フラグVERSEの値が
「0」である場合には、現在のリズムパターンがノーマ
ルパターンのコーラスパターンであることを示してお
り、直ちにバースパターンに移行する必要があるので、
次のステップSd4〜ステップSd6が実行される。
対応するヘッダ(ブロックA;図2参照)が読み出され
(ステップSd4)、このヘッダから小節数データがレ
ジスタMEASに格納され(ステップSd5)、さら
に、このバースパターンからレジスタCLKの値を越
え、かつ該レジスタの値に最も近いタイミングデータが
サーチされて、レジスタTIMEに格納される(ステッ
プSd6)。これにより、バースパターンにおける現在
の小節内タイミングに対応したイベントデータが指示さ
れる。該ステップ終了後、このルーチンは終了する。
d2の判別結果が「NO」の場合には、処理はステップ
Sd7に進み、フラグVERSEの値が「1」にセット
される(バース予約)。これにより、リズム演奏の停止
時にバーススイッチSW3 が押された場合に、スタート
/リスタートスイッチSW1 によってバースパターンの
リズム演奏が開始されるように設定される。あるいは、
イントロパターンあるいはフィルインパターン中に、バ
ーススイッチSW3 が押された場合に、これらパターン
の終了後に移行すべきノーマルパターンがバースパター
ンとなるように設定される。このステップ終了後、この
ルーチンは終了し、処理はメインルーチン(図4参照)
に戻る。
ルーチン(図4参照)のステップSa3において、図8
に示すサブルーチンが実行される。このルーチンでは、
リズム演奏がオンであるか否かが判別され(ステップS
e1)、さらにこの演奏がノーマルパターンであるか否
かが判別されて(ステップSe2)、ノーマルパターン
でない場合にはコーラス予約がなされる(ステップSe
7)。ノーマルパターンである場合には、さらに、コー
ラスパターンであるか否かが判別され(ステップSe
3)、コーラスパターンでない場合には直ちにコーラス
パターンに移行するべくデータが各種レジスタにセット
される一方(ステップSe4〜ステップSe6)、コー
ラスパターンでない場合にはメインルーチンに戻るよう
にしている。なお、このルーチンは図7と相似している
ので、詳細な説明は省略する。
イッチSWaの処理 イントロ1/フィルイン↓スイッチSWaが押される
と、前述したメインルーチン(図4参照)のステップS
a3において、図9に示すサブルーチンが実行される。
このルーチンでは、リズム演奏オンであるか否かが判別
されて、リズム演奏がオフの場合には、イントロ1パタ
ーンによるイントロを開始すべくデータが各種レジスタ
にセットされる。一方、リズム演奏がオンの場合には、
さらに、現時点でのリズム演奏が小節最後の半拍よりも
前か否かが判別され、半拍前に達していない場合には、
発音を一旦停止させて、フィルインパターンを挿入すべ
くデータが各種レジスタにセットされる一方、半拍前に
達している場合には、次小節においてフィルインパター
ンを先頭から開始するべくデータのセットが行われる。
UNの値が「1」であるか否かが判別される。該フラグ
の値が「1」でない場合には、この判別結果が「NO」
となり、後述のステップSf9〜ステップSf13に進
んで、イントロ1パターンによるイントロを開始すべく
データが各種レジスタにセットされる一方、フラグRU
Nの値が「1」である場合には、次のステップSf2に
進む。さらに、ステップSf2において、現時点のリズ
ム演奏がフィルイン中であるか否かが判別される。フィ
ルイン中である場合には、この判別結果は「YES」と
なり、このルーチンは終了する。これは、フィルイン中
におけるイントロ1/フィルイン↓スイッチSWaの押
下を無効とするためである。一方、フィルイン中でない
場合には、この判別結果は「NO」となり、次のステッ
プSf3に進む。
CLKの値がレジスタMAXの値から12を引いた差よ
りも小さいか否かが判別される。ここで、レジスタMA
Xは小節の最大クロック数を示すものである。また、こ
の実施例では4分音符の長さ(1拍)が24クロックの
長さに対応している。すなわち、ステップSf3では、
リズム演奏における現時点の小節内タイミングが小節最
後の半拍前に達してないか否かが判別される。
なわち、小節最後の半拍前に達している場合には、処理
がステップSf4に進み、次小節レジスタNEXTに値
「1」が書き込まれ、このルーチンは終了する。ここ
で、次小節レジスタNEXTは、演奏すべき次小節のリ
ズムパターンを示すものであり、値が「0」の場合にノ
ーマルパターンを示し、値が「1」の場合にフィルイン
1パターンあるいはフィルイン2パターンを示し、値が
「2」の場合にフィルイン3パターンあるいはフィルイ
ン4パターンを示す。
「YES」である場合に、すなわち、小節最後の半拍前
に達していない場合には、処理がステップSf5に進
み、ノートオフ信号がバスを介して音源回路7に供給さ
れる。これにより、リズム音の発音は一旦停止する。
ERSEの値が「1」であるか否かが判別される。この
判別結果が「YES」である場合には、後述するフィル
イン1読出処理が行われる一方、判別結果が「NO」
である場合には、後述するフィルイン2読出処理が行
われる。これら読出処理が終了すると、このルーチン
は終了する。
果が「NO」の場合には、フラグVERSEの値が
「1」にセットされ(ステップSf9)、ROM5から
イントロ1パターンのヘッダ(ブロックA;図2参照)
が読み出され(ステップSf10)、このヘッダから小
節数データがレジスタMEASに格納され(ステップS
f11)、このイントロ1パターンの最初のタイミング
データ(ブロックB1;図2参照)がレジスタTIME
に書き込まれ(ステップSf12)、さらに、レジスタ
CLKの値が「0」に、フラグRUNの値が「1」に各
々設定される(ステップSf13)。これらステップS
f9〜Sf13の処理によって、イントロ1パターンに
よるイントロスタートをすべく各種レジスタにデータが
セットされる。該処理終了後、このサブルーチンは終了
して、処理はメインルーチン(図4参照)に戻る。
イッチSWbの処理 イントロ2/フィルイン→スイッチSWbが押される
と、前述したメインルーチン(図4参照)のステップS
a3において、図10に示すサブルーチンが実行され
る。このルーチンでは、リズム演奏オンであるか否かが
判別されて、リズム演奏がオフの場合には、イントロ2
パターンによるイントロを開始すべくデータが各種レジ
スタにセットされる。一方、リズム演奏がオンの場合に
は、さらに、現時点でのリズム演奏が小節最後の半拍よ
りも前か否かが判別され、半拍前に達していない場合に
は、発音を一旦停止させて、該当するフィルインパター
ンを挿入すべくデータが各種レジスタにセットされる一
方、半拍前に達している場合には、次小節において該当
するフィルインパターンを先頭から開始するべくデータ
のセットが行われる。
UNの値が「1」であるか否かが判別される。該フラグ
の値が「1」でない場合には、判別結果が「NO」とな
り、後述のステップSg17〜ステップSg21に進ん
で、イントロ2パターンによるイントロを開始すべくデ
ータが各種レジスタにセットされる一方、フラグRUN
の値が「1」である場合には、次のステップSg2に進
む。ステップSg2において、フィルイン中であるか否
かが判別される。フィルイン中である場合には、この判
別結果は「YES」となり、このルーチンは終了する。
これは、フィルイン中におけるイントロ2/フィルイン
→スイッチSWbの押下を無効とするためである。一
方、フィルイン中でない場合には、この判別結果は「N
O」となり、次のステップSg3に進む。
CLKの値がレジスタMAXの値から12を引いた差よ
りも小さいか否かが判別される。すなわち、リズム演奏
における現時点の小節内タイミングが小節最後の半拍よ
りも前に達してないか否かが判別される。この判別結果
が「NO」である場合、処理はステップSg4に進ん
で、現時点のリズム演奏がイントロ中であるかが判別さ
れる。イントロ中であれば判別結果が「YES」とな
り、次小節レジスタNEXTに値「1」が書き込まれる
一方(ステップSg5)、イントロ中でなければ判別結
果が「NO」となり、次小節レジスタNEXTに値
「2」が書き込まれる(ステップSg6)。ステップS
g5あるいはステップSg6の処理後、 このルーチン
は終了する。一方、ステップSg3における判別結果が
「NO」である場合には、ノートオフ信号がバスを介し
て音源回路7に供給される(ステップSg7)。これに
より、発音は一旦停止する。
リズム演奏がイントロ中であるか否かが判別される。イ
ントロ中であれば判別結果が「YES」となり、処理は
ステップSg9に進んで、さらに、フラグVERSEの
値が「1」であるか否かが判別される。該フラグの値が
「1」である場合には、後述するフィルイン1読出処理
(ステップSg10)が行われる一方、フラグVER
SEの値が「1」でない場合には、後述するフィルイン
2読出処理(ステップSg11)が行われる。これら
読出処理が終了すると、このルーチンは終了する。一
方、ステップSg8においてイントロ中でなければ、こ
の判別結果が「NO」となり、処理はステップSg12
に進んで、さらに、フラグVERSEの値が「1」であ
るか否かが判別される。
ラグVERSEの値が反転されて「0」になり(ステッ
プSg13)、後述するフィルイン3読出処理(ステ
ップSg14)が行われる一方、該フラグの値が「1」
でない場合には、フラグVERSEの値が反転されて
「1」になり(ステップSg15)、後述するフィルイ
ン4読出処理(ステップSg16)が行われる。これ
ら読出処理が終了すると、このルーチンは終了する。
果が「NO」の場合には、フラグVERSEの値が
「0」にセットされ(ステップSg17)、ROM5か
らイントロ2パターンのヘッダ(ブロックA;図2参
照)が読み出され(ステップSg18)、このヘッダか
ら小節数データがレジスタMEASに格納され(ステッ
プSg19)、このイントロ2パターンの最初のタイミ
ングデータ(ブロックB1;図2参照)がレジスタTI
MEに書き込まれ(ステップSg20)、さらに、レジ
スタCLKの値が「0」に、フラグRUNの値が「1」
に各々設定される(ステップSg21)。これらステッ
プSg17〜Sg21の処理によって、イントロ2パタ
ーンによるイントロスタートをすべく各種レジスタにデ
ータがセットされる。該処理終了後、このサブルーチン
は終了して、処理はメインルーチン(図4参照)に戻
る。
を参照して説明する。この処理は、図1に示すタイマ4
の割込信号INTによって4分音符について24回の割
合で起動され、その起動周期は曲のテンポに応じて可変
制御される。このインタラプト処理では、大別すると、
演奏時での小節内タイミングとレジスタTIMEに格納
されたタイミングデータの値とが一致した場合の発音処
理と、演奏時の小節内タイミングがリズムパターンの最
終小節に達した場合の、次小節において演奏すべきリズ
ムパターンのデータセットとが行われる。
に説明する。まず、このルーチンが起動されると、ステ
ップSh1において、フラグRUNの値が「1」である
か否かが判別される。この判別結果が「NO」の場合に
は、このルーチンは直ちに終了する。このタイマインタ
ラプト処理は、リズム演奏における発音タイミング制御
を行う処理であるために、演奏が指示されていなければ
不要だからである。一方、この判別結果が「YES」で
あれば、処理はステップSh2に進んで、さらに、レジ
スタCLKの値とレジスタTIMEの値とが等しいか否
かが判別される。
するステップSh6に進む。一方、これら値が等しけれ
ば、該当するリズムデータの発音タイミングであるの
で、ステップSh3に進んで、そのノートナンバとベロ
シティとがノートイベントデータとして音源回路7へ供
給される。この結果、リズム音が自動発音される。そし
て、ステップSh4においてリズムパターンに次のタイ
ミングデータの有無が判別される。「有」であれば、次
のタイミングデータが読み出され、レジスタTIMEに
格納されて(ステップSh4)、前述のステップSh2
に戻る。一方、「無」であれば、処理はステップSh6
に進む。
の値が最大値であるか否かが、すなわち、現時点での小
節内タイミングが小節の最後であるか否かが判別され
る。この判別結果が「NO」であれば、次の小節内タイ
ミングに移るべくレジスタCLKの値が1インクリメン
トされて(ステップSh7)、このルーチンは終了す
る。
の最後である場合には、レジスタNEXTの値が判別さ
れる(ステップSh8およびステップSh9)。すなわ
ち、次小節において演奏すべきリズムパターンの種類が
判別される。これらステップの判別によって、レジスタ
NEXTの値が「0」であれば、すなわち、次小節で演
奏すべきリズムパターンがノーマルパターンであれば、
ステップSh10〜ステップSh16(図12参照)の
処理が行われる。また、レジスタNEXTの値が「1」
であれば、すなわち、次小節で演奏すべきリズムパター
ンがフィルイン1パターンあるいはフィルイン2パター
ンであれば、ステップSh18〜ステップSh21(図
13参照)の処理が行われる。あるいは、レジスタNE
XTの値が「2」であれば、すなわち、次小節で演奏す
べきリズムパターンがフィルイン3パターンあるいはフ
ィルイン4パターンであれば、ステップSh22〜ステ
ップSh26、ステップSh21の処理が行われる。こ
れら処理の後に、ステップSh17においてレジスタC
LKのリセットが行われ、このタイマインタラプト処理
が終了する。
Tの値が「0」であると判別された場合に、この処理は
図12に示すステップSh10に進む。ステップSh1
0において、レジスタMEASの値は1ディクリメント
されて、この値が新たにレジスタMEASの値として格
納される。引き続き、ステップSh11において、レジ
スタMEASの値が0であるか否かが、すなわち、現時
点において演奏されているリズムパターンが最終小節を
終了したか否かが判別される。この判別結果が「NO」
ならば、処理は後述するステップSh17に進む一方、
この判別結果が「YES」ならば、直ちに選択されてい
るノーマルパターンの先頭に移行すべく、あるいは戻る
べく次のステップSh12〜ステップSh16の処理が
行われる。
であるか否かが判別され(ステップSh12)、該フラ
グの値が「1」でない場合には、ROM5からコーラス
パターンのヘッダ(ブロックA;図2参照)が読み出さ
れ(ステップSh13)、また、該フラグの値が「1」
である場合にはバースパターンのヘッダが読み出され
(ステップSh14)、どちらかのステップにおいて読
み出されたヘッダの内の小節数データがレジスタMEA
Sに格納され(ステップSh15)、このノーマルパタ
ーンの最初のタイミングデータ(ブロックB1;図2参
照)が読み出されてレジスタTIMEに格納される(ス
テップSh16)。
いて、レジスタNEXTの値が「1」であると判別され
た場合に、この処理は図13におけるステップSh18
に進む。ステップSh18において、フラグVERSE
の値が「1」であるか否かが判別される。該フラグの値
が「1」である場合には、後述するフィルイン1読出処
理(ステップSh19)が行われる一方、該フラグの
値が「1」でない場合には、後述するフィルイン2読出
処理(ステップSh20)が行われる。これら読出処
理が終了すると、処理はステップSh21に進み、レ
ジスタNEXTの値が「0」にセットされる。
いて、レジスタNEXTの値が「2」であると判別され
た場合に、この処理は図13におけるステップSh22
に進む。ステップSh22において、フラグVERSE
の値が「1」であるか否かが判別される。該フラグの値
が「1」である場合には、フラグVERSEの値が反転
されて「0」になり(ステップSh23)、後述するフ
ィルイン3読出処理(ステップSh24)が行われる
一方、該フラグの値が「1」でない場合には、フラグV
ERSEの値が反転されて「1」になり(ステップSh
25)、後述するフィルイン4読出処理(ステップS
h26)が行われる。これら読出処理が終了すると、
処理はステップSh21に進み、レジスタNEXTの値
が「0」にセットされる。
ると、図12におけるステップSh17に進んで、レジ
スタCLKの値がリセットされ、このタイマインタラプ
ト処理が終了する。
プSf8、図10におけるステップSg10、ステップ
Sg11、ステップSg14、ステップSg16のいず
れかに進むと、図14(1)に示すフィルインn読出処
理が実行され、現時点でのリズム演奏に対応してフィ
ルインパターンを挿入すべく各種レジスタにデータがセ
ットされる。ここで、nは1,2,3,4のいずれかで
あり、対応するステップに一致するものである。
テップSi1において、ROM5(図1参照)からフィ
ルインnパターンに対応するヘッダ(ブロックA;図2
参照)が読み出される。次に、ステップSi2におい
て、読み出されたヘッダから小節数データがレジスタM
EASに格納される。そして、ステップSi3におい
て、フィルインnパターンから現時点におけるレジスタ
CLKの値を越えるタイミングデータがサーチされて、
レジスタTIMEに格納されて、この読出処理は終了
する。
テップSh20、ステップSh24、ステップSh26
のいずれかに進むと、図14(2)に示すフィルインn
読出処理が実行され、フィルインパターンを先頭から
開始すべく各種レジスタにデータがセットされる。ここ
で、前述と同様に、nは1,2,3,4のいずれかであ
り、対応するステップに一致するものである。
テップSj1において、ROM5(図1参照)からフィ
ルインnパターンに対応するヘッダ(ブロックA;図2
参照)が読み出される。次に、ステップSj2におい
て、読み出されたヘッダから小節数データがレジスタM
EASに格納される。そして、ステップSj3におい
て、フィルインnパターンから最初のタイミングデータ
(ブロックB1;図2参照)が読み出されて、レジスタ
TIMEに格納されて、この読出処理は終了する。
ってセットされたタイミングデータが、現時点での小節
タイミングと一致したときに前述したタイマインタラプ
ト処理によってリズム発音される。
としてリズムパターンを適用したが、他の伴奏パター
ン、例えば、ベースパターンやコードパターン等を適用
しても良い。また、ノーマルパターン演奏中に挿入する
フィルインパターンと、イントロパターン演奏中に挿入
するフィルインパターンとを、異なるパターンとしても
良い。さらに、イントロパターンからフィルインパター
ンに移行する際に、小節番号(レジスタMEASの内
容)に対応して、フィルインパターンを変更するように
しても良い。これにより、イントロパターン中の位置に
応じた最適のフィルインパターンを挿入することが可能
となり、フィルインパターンへの移行がより自然なもの
となる。加えて、伴奏パターン(イントロ/フィルイン
/ノーマルの各パターン)として、ユーザが任意に作成
したパターンを用いるようにしても良い。
伴奏パターンの読み出し途中において、第2の指示手段
によって任意のタイミングで第3の伴奏パターンを挿入
することが可能であり、挿入後は第2の伴奏パターンに
移行する。第3の伴奏パターンは、第1の伴奏パターン
よりも短く、例えば1小節である。イントロを終了させ
た場合の伴奏パターンは、フィルインパターン、ノーマ
ルパターンへ移行するので、演奏者の好みに応じてイン
トロの期間を任意に変更することが可能である。このと
き、伴奏パターンは、第1のパターン(の途中まで)、
第3のパターン、第2のパターン(の繰り返し)と移行
するので、イントロが途中で打ち切られたような不自然
さがなく、スムーズにノーマルパターンへと移行するこ
とが可能となる。
ブロック図である。
ターンデータの記憶状態を示すメモリマップである。
を示す正面図である。
すフローチャートである。
ッチSW1 の処理を示すフローチャートである。
処理を示すフローチャートである。
理を示すフローチャートである。
処理を示すフローチャートである。
スイッチSWaの処理を示すフローチャートである。
→スイッチSWbの処理を示すフローチャートである。
ートである。
ートである。
ートである。
ローチャートであり、(2)はフィルインn読出処理
を示すフローチャートである。
段)、7……音源回路(楽音発生手段)、SWa,SW
b……イントロ/フィルインスイッチ(第1および第2
の指示手段)
Claims (1)
- 【請求項1】 複数の小節からなる第1の伴奏パター
ン、任意の小節数からなる第2の伴奏パターンおよび前
記第1の伴奏パターンより少ない小節からなる第3の伴
奏パターンを各々記憶する記憶手段と、 この記憶手段から前記第1の伴奏パターンの読み出しを
指示する第1の指示手段と、 前記記憶手段から前記第3の伴奏パターンの読み出しを
指示する第2の指示手段と、 前記第1の指示手段の読み出し指示によって前記第1の
伴奏パターンを読み出し、引き続き前記第2の伴奏パタ
ーンを繰り返し読み出すとともに、前記第1の伴奏パタ
ーンの読み出し途中で前記第2の指示手段の読み出し指
示があった場合に、前記第1の伴奏パターンに換えて前
記第3の伴奏パターンを読み出し、引き続き前記第2の
伴奏パターンを繰り返し読み出しす読出手段とを具備
し、 前記読出手段により読み出された伴奏パターンにしたが
って伴奏音を発生するようにしたことを特徴とする自動
伴奏装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4077871A JP2500492B2 (ja) | 1992-03-31 | 1992-03-31 | 自動伴奏装置 |
| US08/038,128 US5406020A (en) | 1992-03-31 | 1993-03-26 | Automatic accompaniment device with variable music introduction pattern performance length |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4077871A JP2500492B2 (ja) | 1992-03-31 | 1992-03-31 | 自動伴奏装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH05281971A JPH05281971A (ja) | 1993-10-29 |
| JP2500492B2 true JP2500492B2 (ja) | 1996-05-29 |
Family
ID=13646123
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4077871A Expired - Lifetime JP2500492B2 (ja) | 1992-03-31 | 1992-03-31 | 自動伴奏装置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5406020A (ja) |
| JP (1) | JP2500492B2 (ja) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5712436A (en) * | 1994-07-25 | 1998-01-27 | Yamaha Corporation | Automatic accompaniment apparatus employing modification of accompaniment pattern for an automatic performance |
| RU2121718C1 (ru) * | 1998-02-19 | 1998-11-10 | Яков Шоел-Берович Ровнер | Портативная музыкальная система для караоке и картридж для нее |
| US7183478B1 (en) | 2004-08-05 | 2007-02-27 | Paul Swearingen | Dynamically moving note music generation method |
| JP5504884B2 (ja) * | 2009-12-25 | 2014-05-28 | ヤマハ株式会社 | 自動伴奏装置 |
| JP5504883B2 (ja) * | 2009-12-25 | 2014-05-28 | ヤマハ株式会社 | 自動伴奏装置 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5714892A (en) * | 1980-06-30 | 1982-01-26 | Nippon Musical Instruments Mfg | Automatic rhythm performance device |
| JPS60184099U (ja) * | 1984-05-16 | 1985-12-06 | カシオ計算機株式会社 | 自動リズム演奏装置付電子楽器 |
| JPS61292693A (ja) * | 1985-06-21 | 1986-12-23 | ヤマハ株式会社 | 自動演奏装置 |
| IT1244804B (it) * | 1990-11-21 | 1994-09-05 | Roland Europ Spa | Apparecchiatura per suonare accompagnamenti automatici |
| JP2576700B2 (ja) * | 1991-01-16 | 1997-01-29 | ヤマハ株式会社 | 自動伴奏装置 |
| JP2616274B2 (ja) * | 1991-04-02 | 1997-06-04 | ヤマハ株式会社 | 自動演奏装置 |
-
1992
- 1992-03-31 JP JP4077871A patent/JP2500492B2/ja not_active Expired - Lifetime
-
1993
- 1993-03-26 US US08/038,128 patent/US5406020A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| US5406020A (en) | 1995-04-11 |
| JPH05281971A (ja) | 1993-10-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3018821B2 (ja) | 自動演奏装置 | |
| JP2500492B2 (ja) | 自動伴奏装置 | |
| JPH0125078B2 (ja) | ||
| US4481853A (en) | Electronic keyboard musical instrument capable of inputting rhythmic patterns | |
| JP3684774B2 (ja) | 演奏指示装置及びプログラムを記録した媒体 | |
| JP3613935B2 (ja) | 演奏練習装置及びプログラムを記録した媒体 | |
| JP2712851B2 (ja) | 電子楽器 | |
| JP2712954B2 (ja) | 電子楽器 | |
| JP3812729B2 (ja) | 演奏案内装置および演奏案内方法 | |
| JPH06161452A (ja) | 自動伴奏装置 | |
| JP2705421B2 (ja) | 自動伴奏装置 | |
| JP3931551B2 (ja) | 演奏装置および演奏方法 | |
| JP3620321B2 (ja) | 自動伴奏装置 | |
| JP2842440B2 (ja) | 自動伴奏装置 | |
| JP4645285B2 (ja) | 電子楽器 | |
| JP2848092B2 (ja) | 自動伴奏装置 | |
| JP3744667B2 (ja) | 自動伴奏装置および自動伴奏方法 | |
| JP2694788B2 (ja) | 電子楽器 | |
| JP3543159B2 (ja) | 自動伴奏装置 | |
| JP2825030B2 (ja) | 電子楽器 | |
| JPH0934458A (ja) | 楽音制御装置 | |
| JPH06342288A (ja) | 楽音発生装置 | |
| JP2639380B2 (ja) | 自動演奏装置 | |
| JPH10333674A (ja) | 演奏装置 | |
| JPH08185170A (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: 19960116 |
|
| 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: 20090313 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090313 Year of fee payment: 13 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100313 Year of fee payment: 14 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110313 Year of fee payment: 15 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110313 Year of fee payment: 15 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120313 Year of fee payment: 16 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130313 Year of fee payment: 17 |
|
| EXPY | Cancellation because of completion of term | ||
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130313 Year of fee payment: 17 |