JPH1069273A - Playing instruction device - Google Patents
Playing instruction deviceInfo
- Publication number
- JPH1069273A JPH1069273A JP9138000A JP13800097A JPH1069273A JP H1069273 A JPH1069273 A JP H1069273A JP 9138000 A JP9138000 A JP 9138000A JP 13800097 A JP13800097 A JP 13800097A JP H1069273 A JPH1069273 A JP H1069273A
- Authority
- JP
- Japan
- Prior art keywords
- data
- performance
- note
- event data
- event
- 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
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
- Auxiliary Devices For Music (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、自動演奏データを
アレンジして演奏ガイド用データを生成する演奏指示装
置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a performance instruction apparatus for arranging automatic performance data and generating performance guide data.
【0002】[0002]
【従来の技術】従来、自動演奏データの再生に従って、
たとえば鍵盤の各鍵毎に設けられた発光ダイオード(鍵
盤LED)を点灯し、演奏者に押鍵すべきタイミングを
指示するととともに、演奏者が当該指示された鍵を押鍵
するまで曲の再生を停止(一致進行)する演奏ガイド機
能を備えた演奏指示装置は知られている。2. Description of the Related Art Conventionally, according to the reproduction of automatic performance data,
For example, a light-emitting diode (keyboard LED) provided for each key of the keyboard is turned on to instruct the player when to press the key, and the music is reproduced until the player presses the specified key. A performance instructing device having a performance guide function for stopping (coinciding with progress) is known.
【0003】演奏ガイドを行う方法としては、たとえ
ば、自動演奏データのトラックとは別に演奏ガイド専用
のトラック(ガイドトラック)を設け、ここに一致進行
させるための演奏ガイド用データ(たとえば、演奏者が
押鍵すべき鍵のキーコード)を記憶し、曲の進行に従っ
て自動演奏データトラックから自動演奏データを読み出
すとともにガイドトラックから演奏ガイド用データを読
み出し、この読み出された演奏ガイド用データに基づい
て一致進行を行う方法が知られている。そして、演奏者
が自己の演奏レベルに応じて曲の練習を行うことができ
るように、演奏ガイド用データを演奏レベルに応じて複
数種類用意しておき、その中から演奏者が任意に選択で
きるようにしたものも実現されている。As a method of performing a performance guide, for example, a track dedicated to a performance guide (guide track) is provided separately from a track of automatic performance data, and performance guide data (for example, a player The key code of the key to be depressed is stored, the automatic performance data is read out from the automatic performance data track as the music progresses, and the performance guide data is read out from the guide track, based on the read performance guide data. Methods for performing a coincident progress are known. A plurality of types of performance guide data are prepared according to the performance level so that the player can practice the music according to his or her own performance level, and the player can arbitrarily select from them. Something like that has also been realized.
【0004】[0004]
【発明が解決しようとする課題】しかしながら、上記従
来の演奏指示装置では、演奏レベルに応じて曲の練習を
行えるようにしたものであっても、演奏ガイドのレベル
は用意された演奏ガイド用データによって決定されるの
で、演奏者が練習したい曲に、演奏者のレベルに合った
演奏ガイド用データが用意されていないときには、演奏
者は自己の演奏レベルと異なったレベルで曲を練習しな
ければならなかった。また、演奏者が選択した演奏レベ
ルの曲の中に、演奏するのが難しい、たとえば装飾音や
和音が入っているときにも、その通りに練習せざるを得
ず、特に演奏者が初心者である場合には、途中で練習を
投げ出してしまうことが多かった。However, in the above-mentioned conventional performance instructing device, even if the practice of the music can be practiced in accordance with the performance level, the performance guide level is provided by the prepared performance guide data. If the music that the performer wants to practice does not have performance guide data that matches the performer's level, the performer must practice the music at a different level from his or her own. did not become. Also, when the music of the performance level selected by the performer is difficult to play, for example, when there are ornaments or chords in it, you have to practice as it is, especially if the performer is a beginner. In some cases, they often throw out practice on the way.
【0005】本発明は、上記問題に鑑みてなされたもの
で、演奏者の演奏レベルに応じた演奏ガイド用データを
生成することが可能な演奏指示装置を提供することを第
1の目的とし、当該生成された演奏ガイド用データに基
づいて演奏ガイドを行うことが可能な演奏指示装置を提
供することを第2の目的とする。The present invention has been made in view of the above problems, and has as its first object to provide a performance instruction device capable of generating performance guide data according to a performance level of a player. It is a second object of the present invention to provide a performance instruction apparatus capable of performing a performance guide based on the generated performance guide data.
【0006】[0006]
【課題を解決するための手段】上記第1の目的を達成す
るため、請求項1記載の発明は、自動演奏データから所
定範囲毎に所定条件に合致したデータを抽出するデータ
抽出手段と、演奏レベルを入力するための演奏レベル入
力手段と、該入力された演奏レベルに応じて、前記デー
タ抽出手段がデータを抽出するときの所定範囲あるいは
所定条件を変更する変更手段とを有することを特徴とす
る。In order to achieve the first object, the invention according to claim 1 comprises a data extracting means for extracting data which satisfies predetermined conditions for each predetermined range from automatic performance data; A performance level input unit for inputting a level; and a changing unit for changing a predetermined range or a predetermined condition when the data extracting unit extracts data in accordance with the input performance level. I do.
【0007】また、上記第2の目的を達成するため、請
求項2記載の発明は、前記データ抽出手段が抽出したデ
ータを用いて演奏ガイドを行う演奏ガイド手段を有する
ことを特徴とする。Further, in order to achieve the second object, the invention according to claim 2 is characterized in that it has a performance guide means for performing a performance guide using the data extracted by the data extraction means.
【0008】さらに、上記第2の目的を達成するため、
請求項3記載の発明は、自動演奏データから所定範囲毎
に所定条件に合致したデータを抽出するデータ抽出手段
と、演奏レベルを入力するための演奏レベル入力手段
と、該入力された演奏レベルに応じて、前記データ抽出
手段が抽出したデータの内の一部のデータを選択する抽
出データ選択手段と、該選択したデータを用いて演奏ガ
イドを行う演奏ガイド手段とを有することを特徴とす
る。Further, in order to achieve the second object,
According to a third aspect of the present invention, there is provided a data extracting means for extracting data meeting predetermined conditions for each predetermined range from automatic performance data, a performance level input means for inputting a performance level, and Accordingly, there is provided an extraction data selection unit for selecting a part of the data extracted by the data extraction unit, and a performance guide unit for performing a performance guide using the selected data.
【0009】[0009]
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。Embodiments of the present invention will be described below in detail with reference to the drawings.
【0010】図1は、本発明の実施の一形態に係る演奏
指示装置を適用した電子鍵盤楽器の概略構成を示すブロ
ック図である。FIG. 1 is a block diagram showing a schematic configuration of an electronic keyboard instrument to which a performance instructing device according to an embodiment of the present invention is applied.
【0011】同図に示すように、本実施の形態の電子鍵
盤楽器は、音高情報を入力するための鍵盤1と、各種情
報を入力するための複数のスイッチを備えたパネルスイ
ッチ2と、鍵盤1の各鍵の押鍵状態を検出する押鍵検出
回路3と、パネルスイッチ2の各スイッチの押下状態を
検出するスイッチ検出回路4と、装置全体の制御を司る
CPU5と、該CPU5が実行する制御プログラムやテ
ーブルデータ等を記憶するROM6と、自動演奏デー
タ、各種入力情報および演算結果等を一時的に記憶する
RAM7と、タイマ割り込み処理における割り込み時間
や各種時間を計時するタイマ8と、各種情報等を表示す
る、たとえば大型LCD若しくはCRTおよびLED等
を備えた表示装置9と、記憶媒体であるフロッピディス
ク(FD)をドライブするフロッピディスクドライブ
(FDD)10と、前記制御プログラムを含む各種アプ
リケーションプログラムや各種データ等を記憶する外部
記憶装置であるハードディスクドライブ(HDD)11
と、前記制御プログラムを含む各種アプリケーションプ
ログラムや各種データ等を記憶するコンパクトディスク
−リード・オンリ・メモリ(CD−ROM)をドライブ
するCD−ROMドライブ12と、外部からのMIDI
(Musical Instrument Digital Interface)信号を入力
したり、MIDI信号として外部に出力したりするMI
DIインターフェース(I/F)13と、通信ネットワ
ーク101を介して、たとえばサーバコンピュータ10
2とデータの送受信を行う通信インターフェース(I/
F)14と、鍵盤1から入力された演奏データや自動演
奏データ等を楽音信号に変換する音源回路15と、該音
源回路15からの楽音信号に各種効果を付与するための
効果回路16と、該効果回路16からの楽音信号を音響
に変換する、たとえばスピーカ等のサウンドシステム1
7とにより構成されている。As shown in FIG. 1, an electronic keyboard instrument of the present embodiment includes a keyboard 1 for inputting pitch information, a panel switch 2 having a plurality of switches for inputting various information, and A key-press detection circuit 3 for detecting the pressed state of each key of the keyboard 1, a switch detection circuit 4 for detecting the pressed state of each switch of the panel switch 2, a CPU 5 for controlling the entire apparatus, and an execution of the CPU 5 A ROM 6 for storing a control program and table data to be executed, a RAM 7 for temporarily storing automatic performance data, various input information, calculation results, and the like; a timer 8 for measuring an interrupt time and various times in a timer interrupt process; A display device 9 for displaying information and the like, for example, including a large LCD or a CRT and an LED, and a floppy disk (FD) as a storage medium are dried. Hard disk drive (HDD) 11 is an external storage device for storing the floppy disk drive (FDD) 10, various application programs and various data including the control program for
A CD-ROM drive 12 for driving a compact disk-read only memory (CD-ROM) for storing various application programs including the control program, various data, and the like;
(Musical Instrument Digital Interface) signal to be input or output to the outside as MIDI signal
For example, a server computer 10 via a DI interface (I / F) 13 and a communication network 101
Communication interface (I /
F) 14, a tone generator circuit 15 for converting performance data, automatic performance data, and the like inputted from the keyboard 1 into a tone signal, an effect circuit 16 for giving various effects to the tone signal from the tone circuit 15, A sound system 1 for converting a tone signal from the effect circuit 16 into sound, such as a speaker.
7.
【0012】上記構成要素3〜16は、バス18を介し
て相互に接続され、CPU5にはタイマ8が接続され、
MIDII/F13には他のMIDI機器100が接続
され、通信I/F14には通信ネットワーク101が接
続され、音源回路15には効果回路16が接続され、効
果回路16にはサウンドシステム17が接続されてい
る。The above components 3 to 16 are mutually connected via a bus 18, a timer 8 is connected to the CPU 5,
Another MIDI device 100 is connected to the MID II / F 13, a communication network 101 is connected to the communication I / F 14, an effect circuit 16 is connected to the sound source circuit 15, and a sound system 17 is connected to the effect circuit 16. ing.
【0013】HDD11には、前述のようにCPU5が
実行する制御プログラムが記憶され、ROM6に制御プ
ログラムが記憶されていない場合には、このHDD11
内のハードディスクに制御プログラムを記憶させてお
き、それをRAM7に読み込むことにより、ROM6に
制御プログラムを記憶している場合と同様の動作をCP
U5にさせることができる。このようにすると、制御プ
ログラムの追加やバージョンアップ等が容易に行える。The control program executed by the CPU 5 is stored in the HDD 11 as described above. If the control program is not stored in the ROM 6, the HDD 11
The control program is stored in the hard disk in the PC, and the control program is read into the RAM 7 so that the same operation as in the case where the control program is stored in the ROM
U5. This makes it easy to add a control program, upgrade a version, and the like.
【0014】CD−ROMドライブ12のCD−ROM
から読み出された制御プログラムや各種データは、HD
D11内のハードディスクにストアされる。これによ
り、制御プログラムの新規インストールやバージョンア
ップ等が容易に行える。なお、このCD−ROMドライ
ブ12以外にも、外部記憶装置として、光磁気ディスク
(MO)装置等、様々な形態のメディアを利用するため
の装置を設けるようにしてもよい。CD-ROM of CD-ROM drive 12
The control program and various data read from the
It is stored on the hard disk in D11. This makes it possible to easily perform new installation, version upgrade, and the like of the control program. In addition to the CD-ROM drive 12, a device for utilizing various forms of media, such as a magneto-optical disk (MO) device, may be provided as an external storage device.
【0015】通信I/F14は、上述のように、LAN
(ローカルエリアネットワーク)やインターネット、電
話回線等の通信ネットワーク101に接続されており、
該通信ネットワーク101を介して、サーバコンピュー
タ102と接続される。ハードディスク装置11内に上
記各プログラムや各種パラメータが記憶されていない場
合には、通信I/F14は、サーバコンピュータ102
からプログラムやパラメータをダウンロードするために
用いられる。クライアントとなるコンピュータ(本実施
の形態の電子楽器)は、通信I/F14及び通信ネット
ワーク101を介してサーバコンピュータ102へとプ
ログラムやパラメータのダウンロードを要求するコマン
ドを送信する。サーバコンピュータ102は、このコマ
ンドを受け、要求されたプログラムやパラメータを、通
信ネットワーク101を介してコンピュータへと配信
し、コンピュータが通信I/F101を介して、これら
プログラムやパラメータを受信してハードディスク装置
11に蓄積することにより、ダウンロードが完了する。The communication I / F 14 is, as described above, a LAN
(Local area network), the Internet, and a communication network 101 such as a telephone line.
It is connected to a server computer 102 via the communication network 101. If the above-mentioned programs and various parameters are not stored in the hard disk device 11, the communication I / F 14
Used to download programs and parameters from. A computer serving as a client (the electronic musical instrument according to the present embodiment) transmits a command for requesting download of a program or parameter to the server computer 102 via the communication I / F 14 and the communication network 101. The server computer 102 receives the command, distributes the requested program or parameter to the computer via the communication network 101, and the computer receives the program or parameter via the communication I / F 101, and 11, the download is completed.
【0016】図2は、自動演奏データのデータフォーマ
ットを示す図である。FIG. 2 is a diagram showing a data format of the automatic performance data.
【0017】同図に示すように、自動演奏データは、ヘ
ッダデータ21、デュレーションデータ22、ノートイ
ベントデータ23、小節線データ24、テンポデータ2
5およびファイルエンドデータ26により、主として構
成されている。As shown in FIG. 1, the automatic performance data includes header data 21, duration data 22, note event data 23, bar line data 24, and tempo data 2.
5 and the file end data 26.
【0018】ヘッダデータ21とは、自動演奏データの
先頭に記憶されるデータをいい、本実施の形態では、ヘ
ッダデータ21として、曲名や初期テンポ等のデータが
記憶されている。The header data 21 refers to data stored at the beginning of the automatic performance data. In the present embodiment, data such as a song title and an initial tempo are stored as the header data 21.
【0019】デュレーションデータ22とは、イベント
データ(本実施の形態では、ノートイベントデータ2
3、小節線データ24およびテンポデータ25)間の間
隔を示す時間データをいう。The duration data 22 is event data (in this embodiment, note event data 2
3. Time data indicating the interval between bar line data 24 and tempo data 25).
【0020】ノートイベントデータ23とは、ノートオ
ンイベントデータおよびノートオフイベントデータの2
種類のデータをいう。ノートオンイベントデータは、ノ
ートオン、MIDIチャンネル、ノートナンバおよびベ
ロシティの各データにより構成され、ノートオフイベン
トデータは、ノートオフ、MIDIチャンネルおよびノ
ートナンバの各データにより構成されている。MIDI
チャンネルは、たとえば16チャンネルで構成され、チ
ャンネル1および2には、それぞれ右手および左手デー
タが割り当てられ、その他のチャンネルには伴奏用のイ
ベントデータが割り当てられている。ここで、チャンネ
ル1および2とは、演奏ガイドを行うためのノートイベ
ントデータが割り当てられるMIDIチャンネルをい
い、右手データとは、演奏者が右手で弾くべきノートイ
ベントデータをいい、左手データとは、演奏者が左手で
弾くべきノートイベントデータをいう。このように、各
ノートイベントデータ毎にMIDIチャンネルを記憶す
るようにしたのは、本実施の形態では、ノートイベント
データ23を各イベントの種類に拘わらず出力順に1列
に並べて記憶し、実際に読み出して処理する段階で、当
該MIDIチャンネルに基づいてイベントの種類を判別
し、その判別結果に応じて当該ノートイベントの処理を
行うようにしたからである。The note event data 23 includes note-on event data and note-off event data.
Type of data. The note-on event data includes note-on, MIDI channel, note number, and velocity data, and the note-off event data includes note-off, MIDI channel, and note number data. MIDI
The channel is composed of, for example, 16 channels. Right-hand and left-hand data are assigned to channels 1 and 2, respectively, and event data for accompaniment is assigned to the other channels. Here, channels 1 and 2 refer to MIDI channels to which note event data for performing a performance guide are assigned, right-hand data refers to note event data to be played by the player with the right hand, and left-hand data refers to This refers to note event data that the player should play with his left hand. In this embodiment, the MIDI channel is stored for each note event data. In the present embodiment, the note event data 23 is stored in a line in the output order regardless of the type of each event, and is actually stored. This is because, at the stage of reading and processing, the type of the event is determined based on the MIDI channel, and the note event is processed according to the determination result.
【0021】なお、本実施の形態では、ノートオフイベ
ントデータは、ベロシティを含まない構成にしている
が、ベロシティを含むような構成にしてもよいことはい
うまでもない。In this embodiment, note-off event data does not include velocity. However, it is needless to say that note-off event data may include velocity.
【0022】小節線データ24とは、小節線を示すデー
タをいい、テンポデータ25とは、テンポを変更するた
めのデータをいう。さらに、ファイルエンドデータ26
とは、ファイル、すなわち自動演奏データの終わりを示
すデータをいう。The bar line data 24 refers to data indicating a bar line, and the tempo data 25 refers to data for changing the tempo. Furthermore, file end data 26
Is a file, that is, data indicating the end of the automatic performance data.
【0023】実際には、自動演奏データには、上述のデ
ータ以外のデータも含まれているが、本発明を説明する
上で必須のものではないため、その説明を省略する。Actually, the automatic performance data includes data other than the above-mentioned data. However, the data is not essential for explaining the present invention, so that the description thereof is omitted.
【0024】なお、本実施の形態では、イベントデータ
を、その割り当てられたMIDIチャンネルに拘わら
ず、出力順に1列に並べて記憶するようにしたが、これ
に限らず、MIDIチャンネルに対応したトラックを設
け、このトラック毎にイベントデータを割り当てるよう
にしてもよい。このようにすれば、上述のように、ノー
トイベントデータ毎にMIDIチャンネルを記憶する必
要はないが、メモリ容量は増大する。In this embodiment, the event data is stored in a line in the output order regardless of the MIDI channel to which the event data is assigned. However, the present invention is not limited to this. And event data may be assigned to each track. By doing so, it is not necessary to store the MIDI channel for each note event data as described above, but the memory capacity increases.
【0025】また、本実施の形態では、自動演奏データ
のデータフォーマットを上述のように「イベントデータ
+デュレーションデータ」という構成にしたが、これに
限る必要はなく、たとえば「イベントデータ+相対時間
データ」、「イベントデータ+絶対時間データ」、「音
高データ+符長データ」等どのようなフォーマットでも
よい。Further, in the present embodiment, the data format of the automatic performance data is configured as "event data + duration data" as described above. However, the present invention is not limited to this. , "Event data + absolute time data", "pitch data + note length data", and any other format.
【0026】図3は、前記RAM7の所定位置に確保さ
れた間引きデータバッファの構成の一例を示す図であ
り、同図に示すように、間引きデータバッファには、前
記自動演奏データから各小節中各拍毎に選択されたキー
コードが格納される。本実施の形態では、自動演奏デー
タ中、4分音符の位置にあるノートオンイベントデータ
のみが選択抽出され、当該イベントデータのキーコード
が演奏ガイド用データとして格納(登録)される。FIG. 3 is a diagram showing an example of the structure of a thinned-out data buffer secured at a predetermined position in the RAM 7. As shown in FIG. The key code selected for each beat is stored. In the present embodiment, only the note-on event data at the quarter note position is selected and extracted from the automatic performance data, and the key code of the event data is stored (registered) as performance guide data.
【0027】以上のように構成された電子鍵盤楽器の概
略動作を説明する。鍵盤1の各鍵に対応してLEDが設
けられている。そしてこの電子鍵盤楽器には、ガイドト
ラック(チャンネル1、2)の自動演奏データに基づい
て、押すべき鍵に対応したLEDを点灯表示させること
により押すべき鍵を指示するとともに、該指示された鍵
を演奏者が正しく操作したか否かを判定する演奏ガイド
機能が備わっている。演奏ガイド機能には、初級者用の
レベル=0〜上級者用のレベル=3まで4段階のガイド
レベルが有り、演奏者はその中から自己の演奏レベルに
応じて、パネルスイッチ2に設けられた演奏ガイドレベ
ル選択スイッチを操作することにより、何れかを選択す
ることが可能である。ガイドレベル3については、自動
演奏データのガイドトラックのデータそのものを演奏ガ
イド用に使用するため、全てのイベントデータについて
正しい押鍵をしなければならない。一方、ガイドレベル
0〜2については、上述した間引きデータバッファに格
納されているイベントデータを演奏ガイド用に使用す
る。このため、適宜イベントデータを間引くことによっ
て少なくなったイベントデータについてのみ正しい押鍵
をすればよい。The general operation of the electronic keyboard instrument configured as described above will be described. LEDs are provided for each key of the keyboard 1. The electronic keyboard instrument indicates the key to be pressed by illuminating and displaying an LED corresponding to the key to be pressed based on the automatic performance data of the guide track (channels 1 and 2). Is provided with a performance guide function for determining whether or not the player has operated correctly. The performance guide function has four guide levels from beginner level = 0 to advanced level = 3, and the performer is provided on the panel switch 2 according to his / her own performance level. By operating the performance guide level selection switch, it is possible to select one of them. As for the guide level 3, since the data of the guide track of the automatic performance data itself is used for the performance guide, a correct key press must be performed for all event data. On the other hand, for the guide levels 0 to 2, the event data stored in the above-described thinning-out data buffer is used for the performance guide. For this reason, a correct key press may be performed only for the event data that has been reduced by appropriately thinning out the event data.
【0028】次に、この電子鍵盤楽器が実行する制御処
理を、以下、図面4〜15を参照して説明する。Next, control processing executed by the electronic keyboard instrument will be described below with reference to FIGS.
【0029】図4は、本実施の形態の電子鍵盤楽器、特
にCPU5が実行するメインルーチンの手順を示すフロ
ーチャートである。FIG. 4 is a flowchart showing the procedure of a main routine executed by the electronic keyboard instrument of the present embodiment, in particular, by the CPU 5.
【0030】同図において、まず、表示装置9に画像を
表示するためのVRAM(ビデオラム)等のグラフィッ
ク関連要素(図示せず)、MIDII/F13、通信I
/F14、タイマ8等のクリアや、演奏すべき自動演奏
曲の曲データファイルのオープン等の初期設定を行う
(ステップS1)。本実施の形態では、自動演奏曲デー
タは、前記FDDにファイル形式で複数個格納され、演
奏者の指示に応じて1つ(または複数)の曲データファ
イルが読み出され、RAM7の所定位置に確保された曲
データ格納領域にロードされる。なお、自動演奏曲デー
タは、予めROM6に複数個格納され、その中から選択
するようにしてもよいし、CD−ROMドライブ12か
ら供給あるいはMIDII/F13や通信I/F14を
介して外部から供給するようにしてもよい。In the figure, first, a graphic-related element (not shown) such as a VRAM (video ram) for displaying an image on the display device 9, a MID II / F 13, a communication I
/ F14, timer 8, etc., and initial settings such as opening a music data file of the automatic performance music to be performed are performed (step S1). In the present embodiment, a plurality of automatic performance music data are stored in the FDD in a file format, and one (or a plurality of) music data files are read out in accordance with a player's instruction, and are stored in a predetermined position of the RAM 7. The music is loaded into the secured music data storage area. A plurality of pieces of automatic music data may be stored in the ROM 6 in advance and selected from them, or supplied from the CD-ROM drive 12 or supplied from outside via the MID II / F 13 or the communication I / F 14. You may make it.
【0031】次に、前記パネルスイッチ2のスイッチイ
ベントがあるか否かを判別する(ステップS2)。この
判別で、スイッチイベントがあるときには、当該スイッ
チイベントに応じた処理を行うパネルスイッチイベント
処理サブルーチン(その詳細は、図5を用いて後述す
る)を実行する(ステップS3)一方、スイッチイベン
トがないときには、ステップS3をスキップしてステッ
プS4に進む。Next, it is determined whether or not there is a switch event of the panel switch 2 (step S2). If there is a switch event in this determination, a panel switch event processing subroutine (details of which will be described later with reference to FIG. 5) for performing processing in accordance with the switch event is executed (step S3), while there is no switch event In some cases, the process skips step S3 and proceeds to step S4.
【0032】ステップS4では、前記RAM7の所定位
置に確保されたソフトタイマである一致進行タイマの値
が“0”より大きいか否かを判別する。ここで、一致進
行タイマとは、自動演奏データのノートオンイベントお
よび演奏者の押鍵イベントに応じてそれぞれバッファ1
および2(図13)に格納されるキーコードKCの格納
後の経過時間time(KC)をカウントするためのタ
イマをいう。また、バッファ1および2は、ともにRA
M7の所定位置に確保されたバッファであり、図13に
示すように、それぞれ、最大32個のキーコードKCお
よび各キーコードKC毎の格納後の経過時間time
(KC)を格納するだけの容量を有している。In step S4, it is determined whether or not the value of a coincidence timer, which is a soft timer secured at a predetermined position in the RAM 7, is greater than "0". Here, the coincidence progress timer means a buffer 1 corresponding to a note-on event of the automatic performance data and a key press event of the player.
And 2 (FIG. 13) for counting the elapsed time time (KC) after storing the key code KC. Buffers 1 and 2 are both RA
M7 is a buffer secured at a predetermined position. As shown in FIG. 13, a maximum of 32 key codes KC and an elapsed time time after storage for each key code KC are stored, respectively.
(KC).
【0033】ステップS4の判別で、一致進行タイマ>
0のときには、図7を用いて後述する一致進行タイマ処
理サブルーチンを実行する(ステップS5)一方、一致
進行タイマ≦0のときには、ステップS5をスキップし
てステップS6に進む。In the determination in step S4, the match progress timer>
If the value is 0, a match progress timer processing subroutine described later with reference to FIG. 7 is executed (step S5). If the match progress timer ≦ 0, step S5 is skipped and the process proceeds to step S6.
【0034】ステップS6では、自動演奏データの再生
を行うために、RAM7の所定位置に確保されたソフト
タイマである再生処理タイマの値が“0”以下か否かを
判別する。この判別で、再生処理タイマ≦0のときに
は、図8を用いて後述する再生処理サブルーチンを実行
する(ステップS7)一方、再生処理タイマ>0のとき
には、ステップS7をスキップしてステップS8に進
む。In step S6, it is determined whether or not the value of a reproduction processing timer, which is a soft timer secured at a predetermined position in the RAM 7, is "0" or less in order to reproduce the automatic performance data. In this determination, when the reproduction processing timer ≦ 0, the reproduction processing subroutine described later with reference to FIG. 8 is executed (step S7). On the other hand, when the reproduction processing timer> 0, step S7 is skipped and the process proceeds to step S8.
【0035】ステップS8では、8分音符の奇数倍のタ
イミングか否かを判別する。この判別で、8分音符の奇
数倍のタイミングであるときには、図9を用いて後述す
る鍵盤LED処理1サブルーチンを実行する(ステップ
S9)一方、8分音符の奇数倍のタイミングでないとき
には、ステップS9をスキップしてステップS10に進
む。In step S8, it is determined whether or not the timing is an odd multiple of the eighth note. If it is determined that the timing is an odd multiple of an eighth note, a keyboard LED processing 1 subroutine described later with reference to FIG. 9 is executed (step S9). If the timing is not an odd multiple of an eighth note, step S9 is performed. And skip to step S10.
【0036】ステップS10では、8分音符の偶数倍の
タイミングか否かを判別する。この判別で、8分音符の
偶数倍のタイミングであるときには、図10を用いて後
述する鍵盤LED処理2サブルーチンを実行する(ステ
ップS11)一方、8分音符の偶数倍のタイミングでな
いときには、ステップS11をスキップしてステップS
12に進む。In step S10, it is determined whether or not the timing is an even multiple of the eighth note. If it is determined that the timing is an even multiple of an eighth note, a keyboard LED processing 2 subroutine described later with reference to FIG. 10 is executed (step S11). If the timing is not an even multiple of an eighth note, step S11 is performed. Skip and step S
Proceed to 12.
【0037】ステップS8およびS10でそれぞれ行う
8分音符の奇数倍および偶数倍の判別は、たとえば1小
節間の時間間隔をカウントするソフトカウンタ(小節カ
ウンタ)を前記RAM7の所定位置に設け、この小節カ
ウンタの値が1小節全体のカウント値の8分の1の倍数
になる度に行うようにすればよい。もちろん、この判別
方法に限る必要はなく、8分音符のタイミングを判別で
きる方法であれば、どのような方法を用いてもよい。In the determination of odd multiples and even multiples of eighth notes in steps S8 and S10, for example, a soft counter (measure counter) for counting the time interval between one measure is provided at a predetermined position of the RAM 7, It should be performed every time the value of the counter becomes a multiple of 1/8 of the count value of one bar. Of course, the present invention is not limited to this determination method, and any method may be used as long as it can determine the timing of eighth notes.
【0038】ステップS12では、鍵盤1からの鍵イベ
ント、すなわち押鍵イベントまたは離鍵イベントがあっ
たか否かを判別する。この判別で、鍵イベントがあった
ときには、図11を用いて後述する鍵処理サブルーチン
を実行する(ステップS13)一方、鍵イベントがない
ときには、ステップS13をスキップしてステップS1
4に進む。In step S12, it is determined whether or not there is a key event from the keyboard 1, that is, a key press event or a key release event. In this determination, if there is a key event, a key processing subroutine described later with reference to FIG. 11 is executed (step S13). If there is no key event, step S13 is skipped and step S1 is executed.
Proceed to 4.
【0039】ステップS14では、上述の処理以外のそ
の他処理を実行した後に、前記ステップS2に進み、前
述の処理を繰り返す。In step S14, after executing other processing other than the above-described processing, the process proceeds to step S2, and the above-described processing is repeated.
【0040】なお、前記一致進行タイマおよび再生処理
タイマのカウントは、図12を用いて後述するタイマ割
り込み処理で行っている。The counting of the coincidence progress timer and the reproduction processing timer is performed by a timer interrupt process described later with reference to FIG.
【0041】図5は、前記ステップS3のパネルスイッ
チイベント処理サブルーチンの詳細な手順を示すフロー
チャートである。FIG. 5 is a flowchart showing a detailed procedure of the panel switch event processing subroutine in step S3.
【0042】同図において、まず、演奏者が前記パネル
スイッチ2を操作することにより発生したスイッチイベ
ントに応じて、各種モード設定を行う(ステップS2
1)。このとき設定されるモードとしては、たとえば、
自動演奏データを間引く処理(以下、この処理を「曲デ
ータ間引き処理」という)のスタート/ストップを指示
できる曲データ間引き処理実行モード、自動演奏のスタ
ート/ストップを指示できる自動演奏モード、演奏ガイ
ド機能のオン/オフを指示できる演奏ガイドモード、右
手/左手パートの有効/無効を指示できるパート設定モ
ード等がある。In the figure, first, various modes are set in accordance with a switch event generated by the player operating the panel switch 2 (step S2).
1). As the mode set at this time, for example,
Song data thinning process execution mode that can instruct start / stop of automatic performance data thinning process (hereinafter, this process is referred to as "song data thinning process"), automatic performance mode in which start / stop of automatic performance can be instructed, and performance guide function There are a performance guide mode for instructing on / off of a part and a part setting mode for instructing valid / invalid of right / left hand parts.
【0043】次に、曲データ間引き処理のスタート指示
がなされたか否かを判別し(ステップS22)、この指
示がなされたときには、図6を用いて後述する曲データ
間引き処理サブルーチンを実行した(ステップS23)
後に、本パネルスイッチイベント処理サブルーチンを終
了する。Next, it is determined whether or not an instruction to start the music data thinning process has been made (step S22). When this instruction has been made, a music data thinning process subroutine described later with reference to FIG. 6 is executed (step S22). S23)
Thereafter, the panel switch event processing subroutine ends.
【0044】一方、ステップS22の判別で、曲データ
間引き処理のスタート指示がなされないときには、直ち
に本パネルスイッチイベント処理サブルーチンを終了す
る。On the other hand, if it is determined in step S22 that the start instruction of the music data thinning processing is not issued, the panel switch event processing subroutine is immediately terminated.
【0045】図6は、上記曲データ間引き処理サブルー
チンの詳細な手順を示すフローチャートであり、本曲デ
ータ間引き処理サブルーチンは、主として、前記図3の
間引きバッファにデータ(キーコード)を登録する処理
を行うものである。FIG. 6 is a flowchart showing the detailed procedure of the music data thinning processing subroutine. The music data thinning processing subroutine mainly performs processing for registering data (key code) in the thinning buffer shown in FIG. Is what you do.
【0046】同図において、まず、演奏が指示された自
動演奏データの先頭をシークし、その位置にファイルポ
インタを合わせるファイルポインタシーク処理を行う
(ステップS31)。本実施の形態では、自動演奏デー
タは、前記RAM7の曲データ格納領域に記憶されてい
るので、このファイルポインタシーク処理により、ファ
イルポインタは、当該自動演奏データの先頭のアドレス
位置を指示することになる。In the figure, first, the head of the automatic performance data instructed to perform is sought, and a file pointer seek process for matching a file pointer to the position is performed (step S31). In the present embodiment, since the automatic performance data is stored in the music data storage area of the RAM 7, the file pointer seek process allows the file pointer to indicate the head address position of the automatic performance data. Become.
【0047】続くステップS32では、前記間引きデー
タバッファにデータを登録するときに用いる書き込みポ
インタ等の、本サブルーチンで用いる各種変数を初期化
する。In the following step S32, various variables used in the present subroutine, such as a write pointer used for registering data in the thinned data buffer, are initialized.
【0048】次に、前記ファイルポインタを“1”だけ
進めて、ファイルポインタが示す位置に記憶されたイベ
ントデータを読み出し(ステップS33)、読み出され
たイベントデータが前記ファイルエンドデータか否かを
判別する(ステップS34)。この判別で、読み出され
たイベントデータがファイルエンドデータのときには、
ファイルポインタをリワインド(元に戻す)した(ステ
ップS35)後、本曲データ間引き処理サブルーチンを
終了する一方、読み出されたイベントデータがファイル
エンドデータでないときには、前記ノートオン/オフイ
ベントデータであるか否かを判別する(ステップS3
6)。Next, the file pointer is advanced by "1", and the event data stored at the position indicated by the file pointer is read (step S33), and it is determined whether or not the read event data is the file end data. It is determined (step S34). In this determination, when the read event data is file end data,
After rewinding (returning) the file pointer (step S35), the music data thinning-out subroutine ends, and if the read event data is not the file end data, it is determined whether the read event data is the note-on / off event data. Is determined (step S3).
6).
【0049】ステップS36の判別で、読み出されたデ
ータがノートオン/オフイベントデータのときには、当
該データがガイドトラック、すなわちMIDIチャンネ
ル1または2のものであるか否かを判別する(ステップ
S37)。If it is determined in step S36 that the read data is note-on / off event data, it is determined whether or not the data is a guide track, that is, MIDI channel 1 or 2 (step S37). .
【0050】ステップS37の判別で、読み出されたノ
ートオン/オフイベントデータがガイドトラックのもの
であるときには、当該ノートイベントデータの間引き処
理を行う(ステップS38)。If it is determined in step S37 that the read note-on / off event data is for the guide track, the note event data is thinned out (step S38).
【0051】図14は、この間引き処理を説明するため
の図である。前述したように、本実施の形態では、自動
演奏データから4分音符毎(4分音符の符長範囲内)に
1イベントデータを抽出する(間引く)ため、1小節を
4つに等分割する。すなわち、1小節を4分音符の符長
範囲aに等分割する。ここで、抽出すべきイベントデー
タはこの符長範囲aの先頭a1の位置にあるとは限らな
いため、抽出すべき範囲を符長範囲aから符長範囲bに
移動する。すなわち、抽出すべき符長範囲の先頭位置を
位置a1から位置b1に16分音符の符長範囲cだけ前
にずらせ、この位置b1から4分音符の符長範囲(16
分音符の符長範囲c+付点8分音符の符長範囲d)内に
ある自動演奏データから、下記の条件に合致するものを
抽出する。そして、当該抽出範囲内で先に抽出されたイ
ベントデータがある場合には、すなわち、既に前記間引
きデータバッファの当該登録位置にイベントデータが格
納されている場合には、当該先に登録されたイベントデ
ータと今回抽出されたイベントデータとを比較し、今回
抽出されたイベントデータの方が下記の条件をよりよく
満たしているときのみ、当該先に登録されたイベントデ
ータを今回抽出されたイベントデータに置き換える。FIG. 14 is a diagram for explaining the thinning process. As described above, in the present embodiment, one bar is equally divided into four in order to extract (decimate) one event data every quarter note (within a range of note lengths of quarter notes) from the automatic performance data. . That is, one measure is equally divided into quarter note length ranges a. Here, since the event data to be extracted is not always at the position of the head a1 of the note length range a, the range to be extracted is moved from the note length range a to the note length range b. That is, the leading position of the note length range to be extracted is shifted from the position a1 to the position b1 by the note length range c of the sixteenth note, and the note length range of the quarter note (16
The automatic performance data that satisfies the following conditions is extracted from the automatic performance data within the note length range c of the half note + the note length range d) of the dotted eighth note. If there is event data extracted earlier in the extraction range, that is, if event data is already stored at the registration position in the thinned-out data buffer, the event registered earlier Compare the event data extracted this time with the event data extracted this time, and only when the event data extracted this time better satisfies the following conditions, the event data registered earlier replace.
【0052】1)イベントデータが和音(デュレーショ
ンが所定時間以下で続いたキーオン)であって、当該和
音が前記右手データで構成されるときには最高音を抽出
する一方、当該和音が左手データで構成されるときには
最低音を抽出する。1) When the event data is a chord (a key-on whose duration lasts for a predetermined time or less) and the chord is composed of the right hand data, the highest tone is extracted, while the chord is composed of the left hand data. The lowest note is extracted when
【0053】2)抽出範囲の先頭から16分音符の符長
範囲(範囲c)+拍の切れ目から32分音符の符長範囲
(範囲e)内では後着優先(キーオンが遅いものを優
先)にする一方、これ以降抽出範囲の最後尾まで(範囲
f)は先着優先(キーオンが早いものを優先)にする。2) Within the note length range of the 16th note from the beginning of the extraction range (range c) + the note length range of the 32nd note from the break of the beat (range e), the second-arrival priority (the one with the slower key-on has priority) On the other hand, from then on to the end of the extraction range (range f), first-come first-served (the one with the earlier key-on is given priority).
【0054】なお、イベントデータ抽出の条件は、上述
した条件に限らず、種々の条件を設定することが可能で
ある。The conditions for extracting the event data are not limited to the above-mentioned conditions, and various conditions can be set.
【0055】図6に戻り、ステップS39では、間引き
データバッファ内の、現在の小節線番号および拍番号に
対応する位置にイベントデータ(キーコード)が登録さ
れているか否かを検査し、登録されていない場合には、
ステップS40に進んで、当該位置に上記間引き処理で
抽出したイベントのキーコードを登録する。一方、間引
きデータバッファの当該位置に既にキーコードが登録さ
れている場合には、当該キーコードに対応するイベント
データと上記間引き処理で抽出したイベントデータとを
比較し、この抽出したイベントデータの方が上記条件を
よりよく満たしているときのみステップS40に進み、
当該キーコードをこの抽出されたイベントデータに対応
するキーコードに置き換える。Returning to FIG. 6, in step S39, it is checked whether or not event data (key code) is registered at a position corresponding to the current bar line number and beat number in the thinned data buffer. If not,
Proceeding to step S40, the key code of the event extracted in the thinning process is registered in the position. On the other hand, if the key code has already been registered at the position in the thinning data buffer, the event data corresponding to the key code is compared with the event data extracted in the thinning process, and the extracted event data Proceeds to step S40 only when satisfies the above conditions better,
The key code is replaced with a key code corresponding to the extracted event data.
【0056】一方、前記ステップS36の判別で、読み
出されたデータがノートオン/オフイベントデータでな
いときには、当該データがデュレーションデータである
か否かを判別する(ステップS41)。この判別で、読
み出されたデータがデュレーションデータのときには、
1小節間のデュレーションデータを累積するために、前
記RAM7の所定位置に確保されたデュレーション累積
カウンタに当該デュレーション値を加算するとともに、
この加算結果から拍のインクリメントを行う(ステップ
S42)。ここで、拍のインクリメントは、前記RAM
7の所定位置に確保されたソフトカウンタ(以下、「第
1拍カウンタ」という)をインクリメントすることによ
り行う。そして、拍のインクリメントは、たとえば4分
音符の符長に対応するデュレーションデータとして、
“96”が設定されている場合には、デュレーション累
積カウンタの値が“96”の倍数になる度に1ずつ行
う。On the other hand, if it is determined in step S36 that the read data is not note-on / off event data, it is determined whether the data is duration data (step S41). In this determination, when the read data is duration data,
In order to accumulate duration data for one bar, the duration value is added to a duration accumulation counter secured at a predetermined position in the RAM 7, and
The beat is incremented from this addition result (step S42). Here, the increment of the beat is determined by the RAM
7 is performed by incrementing a soft counter (hereinafter, referred to as a "first beat counter") secured at a predetermined position. The increment of the beat is, for example, as duration data corresponding to the note length of a quarter note.
If “96” is set, the count is incremented by one each time the value of the duration accumulation counter becomes a multiple of “96”.
【0057】なお、前記ステップS38の間引き処理に
おいて、読み出されたイベントデータが、前記図14の
範囲a〜fのどの範囲内にあるかの判別も、このデュレ
ーション累積カウンタのカウント値を見ることにより行
っている。In the thinning-out processing in step S38, the discrimination as to which of the ranges a to f in FIG. 14 the event data read out is based on the count value of the duration accumulation counter. It is done by.
【0058】一方、前記ステップS41の判別で、読み
出されたデータがデュレーションデータでないときに
は、当該データが小節線データであるか否かを判別する
(ステップS43)。この判別で、読み出されたデータ
が小節線データのときには、小節線番号をカウントする
ために、前記RAM7の所定位置に確保されたソフトカ
ウンタ(以下、「第1小節線番号カウンタ」という)を
“1”だけインクリメントするとともに第1拍カウント
を“0”にクリアした後に、前記ステップS33に戻る
一方、読み出されたデータが小節線データでないときに
は、直ちにステップS33に戻る。On the other hand, if it is determined in step S41 that the read data is not duration data, it is determined whether or not the data is bar line data (step S43). In this determination, if the read data is bar line data, a soft counter (hereinafter, referred to as a "first bar line number counter") secured at a predetermined position in the RAM 7 is used to count bar line numbers. After incrementing by "1" and clearing the first beat count to "0", the process returns to step S33. If the read data is not bar line data, the process immediately returns to step S33.
【0059】以上の処理によって、4分音符毎に、該4
分音符区間における代表的な1つのイベントデータが抽
出され、間引きデータバッファには該抽出されたイベン
トデータが格納される。なお、自動演奏データによって
は、ある4分音符区間にはイベントデータが1つも存在
しないことがある。その場合には、間引きデータバッフ
ァの当該区間に対応する領域にはイベントデータを格納
しないようにしてもよいし、当該区間の前或いは後の区
間に対応する領域に格納されているイベントデータと同
じデータを、当該区間に対応する領域のイベントデータ
として格納するようにしてもよい。By the above processing, every quarter note,
One representative event data in the minute note section is extracted, and the extracted event data is stored in the thinned data buffer. Depending on the automatic performance data, no event data may exist in a certain quarter note section. In that case, the event data may not be stored in the area corresponding to the section in the thinned data buffer, or may be the same as the event data stored in the area corresponding to the section before or after the section. The data may be stored as event data of an area corresponding to the section.
【0060】図7は、前記図4のステップS5の一致進
行タイマ処理サブルーチンの詳細な手順を示すフローチ
ャートである。FIG. 7 is a flowchart showing the detailed procedure of the match progress timer processing subroutine of step S5 in FIG.
【0061】同図において、まず、バッファ1または2
に押鍵イベントデータ(キーコードKC)が格納されて
いるときには、当該キーコードKCに付随して格納され
ている経過時間データtime(KC)に一致進行タイ
マの値を加算し、一致進行タイマをクリアするガイドタ
イマ処理を行う(ステップS51)。ここで、バッファ
1は、上述したように、演奏者の押鍵により発生したキ
ーオンイベントに対応するキーコードKCを書き込むた
めのバッファであり、そのキーコードKCの書き込み
は、前記ステップS13の鍵処理サブルーチン(その詳
細は図11を用いて後述する)内で行われる。一方、バ
ッファ2は、上述したように、自動演奏データの再生に
より発生したガイドトラックのノートオンイベントに対
応するキーコードを書き込むためのバッファであり、そ
のキーコードKCの書き込みは、前記ステップS7の再
生処理サブルーチン(その詳細は図8を用いて後述す
る)内または前記ステップS11の鍵盤LED処理2サ
ブルーチン(その詳細は図10を用いて後述する)内で
行われる。なお、バッファ1に書き込まれたデータは、
キーコードが書き込まれた後、所定時間が経過した場
合、或いは書き込まれたキーコードと同一のキーコード
がバッファ2に書き込まれている場合に削除される。ま
た、バッファ2に書き込まれたデータは、書き込まれた
キーコードと同一のキーコードがバッファ1に書き込ま
れている場合に削除される。それとともに、バッファ2
に書き込まれていたキーコードに対応して点灯されてい
た鍵盤LEDを消灯させる。以上の削除および消灯処理
も、このガイドタイマ処理(ステップS51)で行われ
る。In the figure, first, buffer 1 or 2
When the key depression event data (key code KC) is stored in the storage device, the value of the match progress timer is added to the elapsed time data time (KC) stored along with the key code KC, and the match progress timer is set. A guide timer process for clearing is performed (step S51). Here, as described above, the buffer 1 is a buffer for writing the key code KC corresponding to the key-on event generated by the player's key depression, and the writing of the key code KC is performed in the key processing of step S13. It is performed in a subroutine (the details of which will be described later with reference to FIG. 11). On the other hand, the buffer 2 is a buffer for writing the key code corresponding to the note-on event of the guide track generated by the reproduction of the automatic performance data as described above, and the writing of the key code KC is performed in the step S7. This processing is performed in a reproduction processing subroutine (the details will be described later with reference to FIG. 8) or in the keyboard LED processing 2 subroutine (the details will be described later with reference to FIG. 10) in step S11. The data written to the buffer 1 is
After a predetermined time has elapsed since the key code was written, the key code is deleted when the same key code as the written key code is written in the buffer 2. The data written in the buffer 2 is deleted when the same key code as the written key code is written in the buffer 1. At the same time, buffer 2
Of the keyboard LED that has been lit corresponding to the key code that has been written in. The above-described deletion and turn-off processing is also performed in the guide timer processing (step S51).
【0062】次に、自動演奏データの再生を一時停止
(ポーズ)するか否かを判別する(ステップS52)。
この判別は、具体的には、バッファ1に格納されている
データとバッファ2に格納されているデータとを比較
し、バッファ2に格納された後所定時間経過したキーコ
ードKCがバッファ1に格納されていない場合に一時停
止(ポーズ)と判別し、バッファ2に格納されているが
バッファ1に格納されていないキーコードKCであって
前記所定時間経過していないものがある場合に進行(ポ
ーズしない)と判別する。Next, it is determined whether or not the reproduction of the automatic performance data is paused (pause) (step S52).
Specifically, this determination is made by comparing the data stored in the buffer 1 with the data stored in the buffer 2 and storing the key code KC which has been stored in the buffer 2 and which has passed for a predetermined time in the buffer 1. If the key code KC is stored in the buffer 2 but not stored in the buffer 1 but has not passed the predetermined time, the process proceeds (pause). No).
【0063】ステップS52の判別で、ポーズと判別さ
れたときには、ポーズ要求を“1”で示すポーズ要求フ
ラグFPAUSEをセット(“1”)した(ステップS
53)後に、本一致進行タイマ処理サブルーチンを終了
する。If it is determined in step S52 that the pause is determined, the pause request flag FPAUSE indicating the pause request is set to "1"("1") (step S52).
53) After that, the match progress timer processing subroutine ends.
【0064】一方、ステップS52の判別で、ポーズし
ないと判別されたときには、前記ポーズ要求フラグFP
AUSEをリセット(“0”)した(ステップS54)
後に、本一致進行タイマ処理サブルーチンを終了する。On the other hand, if it is determined in step S52 that no pause is to be made, the pause request flag FP
AUSE is reset ("0") (step S54).
Thereafter, the present match progress timer processing subroutine ends.
【0065】図8は、前記図4のステップS7の再生処
理サブルーチンの詳細な手順を示すフローチャートであ
る。FIG. 8 is a flowchart showing a detailed procedure of the reproduction processing subroutine of step S7 in FIG.
【0066】同図において、まず、自動演奏データを再
生するために、前記RAM7の所定位置に確保された再
生ポインタが示す位置のイベントデータを1つ読み出し
(ステップS61)、読み出されたイベントデータがノ
ートオン/オフイベントデータであるか否かを判別する
(ステップS62)。In the figure, first, in order to reproduce the automatic performance data, one event data at the position indicated by the reproduction pointer secured at a predetermined position in the RAM 7 is read out (step S61). Is the note-on / off event data (step S62).
【0067】ステップS62の判別で、読み出されたイ
ベントデータがノートオン/オフイベントデータである
ときには、そのノートイベントデータがガイドトラック
(チャンネル1または2)のものであるか否かを判別す
る(ステップS63)。If it is determined in step S62 that the read event data is note-on / off event data, it is determined whether or not the note event data is for a guide track (channel 1 or 2) (step S62). Step S63).
【0068】ステップS63の判別で、読み出されたノ
ートイベントデータがガイドトラックのものであるとき
には、そのイベントデータの種類および現在選択されて
いる演奏ガイドレベルに応じた一致進行処理を行う(ス
テップS64)。具体的には、現在選択されている演奏
ガイドレベルが「ガイドレベル3」であり、読み出され
たイベントデータがノートオンイベントデータのときに
は、前記図13のバッファ2に当該ノートオンイベント
に対応するキーコードKCを書き込むとともに、当該キ
ーコードに対応した鍵盤LEDを点灯させる。なお、鍵
盤LEDの点灯タイミングは、ノートイベントの読み出
しと同時ではなく、ノートイベントを先読みすることに
よりノートイベントの読み出しに先行して所定タイミン
グ前に点灯させるようにしてもよい。読み出されたイベ
ントデータがノートオフイベントデータのときには、こ
こではなにもしない。なお、現在選択されている演奏ガ
イドレベルが0〜2の何れかである場合は、ここで読み
出されたノートイベントデータに基づく一致進行処理は
行わない。If it is determined in step S63 that the read note event data is for a guide track, a matching progress process is performed according to the type of the event data and the currently selected performance guide level (step S64). ). Specifically, when the currently selected performance guide level is “guide level 3” and the read event data is note-on event data, the buffer 2 in FIG. 13 corresponds to the note-on event. The key code KC is written, and the keyboard LED corresponding to the key code is turned on. The timing of turning on the keyboard LED may be such that the note event is read ahead of time, rather than simultaneously with the reading of the note event, and the key LED is turned on at a predetermined timing prior to the reading of the note event. If the read event data is note-off event data, nothing is performed here. If the currently selected performance guide level is any one of 0 to 2, the matching progress processing based on the note event data read here is not performed.
【0069】一方、前記ステップS63の判別で、読み
出されたノートイベントデータがガイドトラックのもの
ではないときには、当該イベントデータに応じたMID
I信号(コード)を音源回路15或いはMIDIインタ
ーフェース13を介して他のMIDI機器100へと出
力した(ステップS65)後に、本再生処理サブルーチ
ンを終了する。このステップS65の処理により、伴奏
トラックの楽音が発音される。On the other hand, if it is determined in step S63 that the read note event data is not for the guide track, the MID corresponding to the event data is determined.
After outputting the I signal (code) to the other MIDI device 100 via the tone generator circuit 15 or the MIDI interface 13 (step S65), the present reproduction processing subroutine ends. By the processing in step S65, the musical sound of the accompaniment track is generated.
【0070】一方、前記ステップS62の判別で、読み
出されたイベントデータがノートオン/オフイベントデ
ータでないときには、そのイベントデータがデュレーシ
ョンデータであるか否かを判別する(ステップS6
6)。On the other hand, if the read event data is not note-on / off event data in step S62, it is determined whether or not the event data is duration data (step S6).
6).
【0071】ステップS66の判別で、読み出されたイ
ベントデータがデュレーションデータのときには、次式
により前記再生処理タイマの値を更新する(ステップS
67)。If it is determined in step S66 that the read event data is duration data, the value of the reproduction processing timer is updated by the following equation (step S66).
67).
【0072】再生処理タイマ = 再生処理タイマ値 +
デュレーション値×テンポ係数値 続くステップS68では、本再生処理において拍数をカ
ウントするために、前記RAM7の所定位置に確保され
たソフトカウンタ(以下、「第2拍カウンタ」という)
のインクリメントを行った後に、本再生処理サブルーチ
ンを終了する。ここで、第2拍カウンタのインクリメン
トは、前記ステップS42と同様にして、前記デュレー
ション累積カウンタと同様の作用を行うカウンタを設
け、このカウント値に基づいて行うようにすればよい。Reproduction processing timer = reproduction processing timer value +
(Duration value × tempo coefficient value) In a succeeding step S68, a soft counter (hereinafter, referred to as a “second beat counter”) secured at a predetermined position in the RAM 7 to count the number of beats in the main reproduction process.
After this, the main reproduction processing subroutine ends. Here, the counter of the second beat counter may be incremented based on the count value by providing a counter that performs the same operation as the duration accumulation counter in the same manner as in step S42.
【0073】一方、ステップS66の判別で、読み出さ
れたイベントデータがデュレーションデータでないとき
には、そのイベントデータがテンポデータであるか否か
を判別する(ステップS69)。On the other hand, if it is determined in step S66 that the read event data is not duration data, it is determined whether or not the event data is tempo data (step S69).
【0074】ステップS69の判別で、読み出されたイ
ベントデータがテンポデータであるときには、当該テン
ポデータに応じてテンポ係数を変更する(ステップS7
0)一方、読み出されたイベントデータがテンポデータ
でないときには、読み出されたイベントデータが小節線
データであるか否かを判別する(ステップS71)。If it is determined in step S69 that the read event data is tempo data, the tempo coefficient is changed according to the tempo data (step S7).
0) On the other hand, if the read event data is not tempo data, it is determined whether or not the read event data is bar line data (step S71).
【0075】ステップS71の判別で、読み出されたデ
ータが小節線データであるときには、小節線番号をカウ
ントするために、前記RAM7の所定位置に確保された
ソフトカウンタ(以下、「第2小節線番号カウンタ」と
いう)を“1”だけインクリメントするとともに、第2
拍カウンタを“0”にクリアした(ステップS72)後
に、本再生処理サブルーチンを終了する一方、読み出さ
れたデータが小節線データでないときには、直ちに本再
生処理サブルーチンを終了する。If it is determined in step S71 that the read data is bar line data, a soft counter (hereinafter referred to as "second bar line") secured at a predetermined position in the RAM 7 for counting bar line numbers. Number counter) is incremented by “1” and the second
After clearing the beat counter to "0" (step S72), the main reproduction subroutine is terminated, while if the read data is not bar line data, the main reproduction subroutine is terminated immediately.
【0076】図9は、前記図4のステップS9の鍵盤L
ED処理1サブルーチンの詳細な手順を示すフローチャ
ートである。FIG. 9 shows the keyboard L of step S9 in FIG.
It is a flowchart which shows the detailed procedure of ED processing 1 subroutine.
【0077】同図において、まず、選択されているガイ
ドレベルと現在の拍(前記第2拍カウンタの値)を比較
し、前記鍵盤LEDを点灯するタイミングであるか消灯
するタイミングであるかを判別する(ステップS8
1)。In the figure, first, the selected guide level is compared with the current beat (the value of the second beat counter) to determine whether it is the timing to turn on or off the keyboard LED. (Step S8
1).
【0078】次に、ステップS81の判別結果に応じ
て、鍵盤LEDの点灯/消灯を行った(ステップS8
2)後に、本鍵盤LED処理1サブルーチンを終了す
る。Next, the keyboard LED is turned on / off according to the result of the determination in step S81 (step S8).
2) Later, this keyboard LED processing 1 subroutine ends.
【0079】図10は、前記図4のステップS11の鍵
盤LED処理2サブルーチンの詳細な手順を示すフロー
チャートである。FIG. 10 is a flowchart showing a detailed procedure of the keyboard LED processing 2 subroutine of step S11 in FIG.
【0080】同図において、まず、前記ステップS81
と同様にして、鍵盤LEDを点灯するタイミングである
か消灯するタイミングであるかを判別し(ステップS9
1)、次に、前記ステップS82と同様にして、ステッ
プS91の判別結果に応じて、鍵盤LEDの点灯/消灯
を行う(ステップS92)。In the figure, first, at step S81
In the same manner as in step S9, it is determined whether it is the timing to turn on or turn off the keyboard LED (step S9).
1) Next, in the same manner as in step S82, the keyboard LED is turned on / off according to the determination result in step S91 (step S92).
【0081】そして、ガイドレベル(ガイドレベル3は
除外)に応じたタイミングで、間引きデータバッファか
らキーコードを読み出し、前記バッファ2に登録した
(ステップS93)後に、本LED処理2サブルーチン
をを終了する。Then, at a timing corresponding to the guide level (excluding guide level 3), the key code is read from the thinned data buffer and registered in the buffer 2 (step S93), and thereafter, the LED processing 2 subroutine ends. .
【0082】図15は、ガイドレベルに応じて鍵盤LE
Dが点灯/消灯するタイミングを示す図であり、同図を
参照して、前記図9および10の鍵盤LED処理をさら
に詳細に説明する。FIG. 15 shows the keyboard LE according to the guide level.
FIG. 11 is a diagram showing the timing at which D turns on / off, and the keyboard LED processing of FIGS. 9 and 10 will be described in further detail with reference to FIG.
【0083】図15において、ガイドレベル0が選択さ
れている場合には、自動演奏データの再生が各小節の先
頭から8分音符の6倍のタイミング(タイミングt6)
になると、前記鍵盤LED処理2で、前記間引きデータ
バッファの当該タイミングの次の拍位置に格納されたキ
ーコードに対応する鍵盤LEDを点灯し(ステップS9
1,S92)、8分音符の8倍のタイミング(タイミン
グt0)になると、前記鍵盤LED処理2で前記間引き
データバッファの当該拍位置に格納されたキーコードを
バッファ2に登録し(ステップS93)、8分音符の4
倍のタイミング(タイミングt4)になると、鍵盤LE
D処理2で当該点灯している鍵盤LEDを消灯する(ス
テップS91,S92)。以上の処理によって、間引き
データバッファにおける各小節の1拍目のキーコードの
みがバッファ2に登録され、一致進行の対象となる。こ
のとき、該キーコードに対応する鍵盤LEDは、4分音
符手前のタイミングにおいて点灯される。In FIG. 15, when the guide level 0 is selected, the reproduction of the automatic performance data is performed six times the eighth note from the beginning of each measure (timing t6).
Then, in the keyboard LED processing 2, the keyboard LED corresponding to the key code stored at the next beat position of the timing in the thinned data buffer is turned on (step S9).
1, S92), at the timing eight times the eighth note (timing t0), the key code stored at the beat position in the thinned-out data buffer in the keyboard LED process 2 is registered in the buffer 2 (step S93). , 8th note 4
At the double timing (timing t4), the keyboard LE
In the D process 2, the lit keyboard LED is turned off (steps S91 and S92). By the above processing, only the key code of the first beat of each bar in the thinned-out data buffer is registered in the buffer 2 and becomes the target of the matching progress. At this time, the keyboard LED corresponding to the key code is turned on at the timing before the quarter note.
【0084】次に、ガイドレベル1が選択されている場
合には、自動演奏データの再生が8分音符の3倍のタイ
ミング(タイミングt3)或いは7倍のタイミング(タ
イミングt7)になると、前記鍵盤LED処理1で、前
記間引きデータバッファの当該タイミングの次の拍位置
に格納されたキーコードに対応する鍵盤LEDを点灯し
(ステップS81,S82)、8分音符の4倍のタイミ
ング(タイミングt4)或いは8倍のタイミング(タイ
ミングt0)になると、前記鍵盤LED処理2で前記間
引きデータバッファの当該拍位置に格納されたキーコー
ドをバッファ2に登録し(ステップS93)、8分音符
の6倍のタイミング(タイミングt6)或いは2倍のタ
イミング(タイミングt2)になると、鍵盤LED処理
2で当該点灯している鍵盤LEDを消灯する(ステップ
S91,S92)。以上の処理によって、間引きデータ
バッファにおける各小節の1拍目と3拍目のキーコード
のみがバッファ2に登録され、一致進行の対象となる。
このとき、該キーコードに対応する鍵盤LEDは、8分
音符手前のタイミングにおいて点灯される。Next, when the guide level 1 is selected, when the timing of the reproduction of the automatic performance data is three times the eighth note (timing t3) or seven times the timing (timing t7), the keyboard is played. In the LED processing 1, the keyboard LED corresponding to the key code stored at the next beat position in the thinned data buffer is turned on (steps S81 and S82), and the timing is four times the eighth note (timing t4). Alternatively, at the timing of eight times (timing t0), the key code stored at the relevant beat position in the thinned data buffer is registered in the buffer 2 by the keyboard LED processing 2 (step S93), and the key code is six times the eighth note. At the timing (timing t6) or twice the timing (timing t2), the keyboard LED process 2 turns on the light. To turn off the keyboard LED that (step S91, S92). By the above processing, only the key codes of the first and third beats of each bar in the thinned-out data buffer are registered in the buffer 2 and are subjected to the matching progress.
At this time, the keyboard LED corresponding to the key code is turned on at a timing before the eighth note.
【0085】さらに、ガイドレベル2が選択されている
場合には、自動演奏データの再生が8分音符の7倍のタ
イミング(タイミングt7)、1倍のタイミング(タイ
ミングt1)、3倍のタイミング(タイミングt3)、
5倍のタイミング(タイミングt5)になると、前記前
記鍵盤LED処理1で、前記間引きデータバッファの当
該タイミングの次の拍位置に格納されたキーコードに対
応する鍵盤LEDを点灯し(ステップS81,S8
2)、8分音符の8倍のタイミング(タイミングt
0)、8分音符の2倍のタイミング(タイミングt
2)、8分音符の4倍のタイミング(タイミングt
4)、6倍のタイミング(タイミングt6)になると、
前記鍵盤LED処理2で前記間引きデータバッファの当
該拍位置に格納されたキーコードをバッファ2に登録し
(ステップS93)、8分音符の1倍のタイミング(タ
イミングt1)、3倍のタイミング(タイミングt
3)、5倍のタイミング(タイミングt5)、7倍のタ
イミング(タイミングt7)になると、鍵盤LED処理
1で当該点灯している鍵盤LEDを消灯するとともに、
上述したように次の鍵盤LEDを点灯させる(ステップ
S91、S92)。以上の処理によって、間引きデータ
バッファにおける各小節の全ての拍のキーコードがバッ
ファ2に登録され、一致進行の対象となる。このとき、
該キーコードに対応する鍵盤LEDは、8分音符手前の
タイミングにおいて点灯される。Further, when the guide level 2 is selected, the reproduction of the automatic performance data is performed at seven times the timing of the eighth note (timing t7), at one time (timing t1), and at three times the timing (timing t1). Timing t3),
At five times the timing (timing t5), the keyboard LED corresponding to the key code stored at the next beat position of the timing in the thinned data buffer is turned on in the keyboard LED processing 1 (steps S81 and S8).
2) 8 times the eighth note (timing t)
0), twice the timing of the eighth note (timing t
2), four times the eighth note (timing t)
4) At six times the timing (timing t6),
The key code stored at the corresponding beat position in the thinned data buffer in the keyboard LED processing 2 is registered in the buffer 2 (step S93), and the timing of the eighth note (timing t1) is tripled (timing t1). t
3) At 5 times timing (timing t5) and 7 times timing (timing t7), the keyboard LED process 1 turns off the lit keyboard LED,
As described above, the next keyboard LED is turned on (steps S91 and S92). By the above processing, the key codes of all the beats of each bar in the thinned-out data buffer are registered in the buffer 2 and are subjected to the matching progress. At this time,
The keyboard LED corresponding to the key code is turned on at the timing before the eighth note.
【0086】なお、ガイドレベル3が選択されている場
合は、前述の図8におけるステップS64で読み出され
たイベントデータのキーコードがバッファ2へと登録さ
れるため、図9、図10の処理は行わない。When the guide level 3 is selected, the key code of the event data read out in step S64 in FIG. 8 is registered in the buffer 2, so that the processing shown in FIGS. Is not performed.
【0087】図11は、前記図4のステップS13の鍵
処理サブルーチンの詳細な手順を示すフローチャートで
ある。FIG. 11 is a flowchart showing a detailed procedure of the key processing subroutine of step S13 in FIG.
【0088】同図において、まず、押鍵または離鍵に応
じた一致進行処理を行う(ステップS101)。具体的
には、押鍵されると、当該押鍵に対応するキーコードK
Cを前記図14のバッファ1に書き込むとともに、当該
押鍵に対応するキーオンイベントを音源回路15或いは
MIDIインターフェース13を介して他のMIDI機
器100へと出力し、押鍵に対応した楽音を発音させ
る。一方、離鍵されると、当該離鍵に対応するキーオフ
イベントを音源回路15或いはMIDIインターフェー
ス13を介して他のMIDI機器100へと出力し、離
鍵に対応した楽音を消音させる。In the figure, first, a matching progress process is performed in accordance with key depression or key release (step S101). Specifically, when a key is pressed, a key code K corresponding to the key is pressed.
While writing C into the buffer 1 of FIG. 14, a key-on event corresponding to the key depression is output to the other MIDI device 100 via the tone generator circuit 15 or the MIDI interface 13 to generate a tone corresponding to the key depression. . On the other hand, when the key is released, a key-off event corresponding to the key release is output to the other MIDI device 100 via the tone generator circuit 15 or the MIDI interface 13, and the tone corresponding to the key release is muted.
【0089】次に、ポーズ状態が解除されたか否かを判
別する(ステップS102)。ここで、ポーズ状態が解
除されたか否かは、バッファ1および2の各内容を比較
し、ポーズ状態を生じさせていた自動演奏データに対す
る押鍵があるか否かを判別することにより行う。Next, it is determined whether or not the pause state has been released (step S102). Here, whether or not the pause state has been canceled is determined by comparing the contents of the buffers 1 and 2 and determining whether or not there is a key press on the automatic performance data that caused the pause state.
【0090】ステップS102の判別で、ポーズ状態が
解除されたときには、たとえば前記ポーズ要求フラグF
PAUSEのリセット(“0”)およびバッファ1およ
びバッファ2に書き込まれている当該押鍵に対応するキ
ーコードを両バッファから削除する、点灯していた当該
押鍵に対応する鍵盤LEDを消灯する等のポーズ解除処
理を行い(ステップS103)、ポーズ状態でないと
き、またはポーズ状態が解除されないときには、本鍵処
理サブルーチンを終了する。If it is determined in step S102 that the pause state has been released, the pause request flag F
Reset PAUSE ("0") and delete the key code corresponding to the key depression written in the buffer 1 and the buffer 2 from both buffers, turn off the keyboard LED corresponding to the lit key depression, etc. Is performed (step S103), and when not in the pause state or when the pause state is not released, the key processing subroutine ends.
【0091】図12は、タイマ割り込み処理の手順を示
すフローチャートであり、本タイマ割り込み処理は、前
記タイマ8が10msec毎にCPU5に対して発生す
る割り込み信号に応じて実行される。FIG. 12 is a flowchart showing the procedure of the timer interrupt process. This timer interrupt process is executed in response to an interrupt signal generated by the timer 8 for the CPU 5 every 10 msec.
【0092】同図において、まず、前記一致進行タイマ
を“1”だけインクリメントする(ステップS11
1)。In the figure, first, the coincidence progress timer is incremented by "1" (step S11).
1).
【0093】次に、前記ポーズ要求フラグFPAUSE
の状態を判別し(ステップS112)、ポーズ要求フラ
グFPAUSE=1のとき、すなわちポーズ中のときに
は、直ちに本タイマ割り込み処理を終了する一方、ポー
ズ要求フラグFPAUSE=0のとき、すなわちポーズ
中でないときにはステップS113に進み、前記再生処
理タイマを“1”だけデクリメントした後に、本タイマ
割り込み処理を終了する。このように、ポーズ要求がな
される(FPAUSE=1)と、再生処理タイマのデク
リメントを停止し、前記図8の再生処理に処理が移行し
ないので、自動演奏データの再生が一時停止される。Next, the pause request flag FPAUSE
(Step S112), the timer interrupt processing is immediately terminated when the pause request flag FPAUSE = 1, that is, when the pause is being performed, while the step is performed when the pause request flag FPAUSE = 0, that is, when the pause is not being performed. Proceeding to S113, after decrementing the reproduction processing timer by "1", the timer interruption processing ends. As described above, when the pause request is made (FPAUSE = 1), the decrement of the reproduction processing timer is stopped, and the processing does not shift to the reproduction processing of FIG. 8, so that the reproduction of the automatic performance data is temporarily stopped.
【0094】なお、タイマ割り込み処理では、実際には
この他にも各種処理を行っているが、本発明を説明する
上で必須の処理ではないため、その説明を省略する。Although various other processes are actually performed in the timer interrupt process, they are not indispensable processes for explaining the present invention, and therefore the description thereof will be omitted.
【0095】以上説明したように、本実施の形態では、
既存の自動演奏データを所定の条件に基づいて間引く
(抽出する)ことにより演奏ガイド用データを作成する
ように構成したので、演奏者のレベルに応じた演奏ガイ
ド用データを必ず生成することができ、これにより、自
己の演奏レベルに合った演奏ガイド用データを探す手間
を省くことができる。As described above, in the present embodiment,
Since the performance guide data is created by thinning out (extracting) the existing automatic performance data based on predetermined conditions, the performance guide data according to the level of the performer can always be generated. This saves the trouble of searching for performance guide data that matches the performance level of the player.
【0096】また、生成された演奏ガイド用データの中
から、演奏者のレベル(本実施の形態では、ガイドレベ
ル0〜2)に応じて使用するデータを選択できるように
し、さらに、原曲の演奏ガイド(ガイドレベル3)をも
行えるようにしたので、初心者から上級者まで演奏レベ
ルに応じて幅広い演奏ガイドを行うことができる。Further, data to be used can be selected from the generated performance guide data according to the level of the player (guide levels 0 to 2 in the present embodiment). Since the performance guide (guide level 3) can also be performed, a wide range of performance guides can be performed from beginners to advanced players according to the performance level.
【0097】また、演奏ガイド用データを作成する作成
者の立場では、演奏レベルに応じた複数のアレンジのガ
イド用データを作成する必要がなくなり、装置全体の製
造コストを低減させることができる。In addition, from the point of view of the creator who creates the performance guide data, there is no need to create a plurality of arrangements of guide data according to the performance level, and the manufacturing cost of the entire apparatus can be reduced.
【0098】さらに、本実施の形態では、自動演奏デー
タとして特殊なものを使用していないため、既に流通し
ている音楽ソフト(自動演奏データ)から演奏ガイド用
データを作成することができ、演奏者の好みに応じたジ
ャンルの曲の練習を行うことができる。Further, in this embodiment, since special data is not used as automatic performance data, performance guide data can be created from music software (automatic performance data) already distributed. Can practice songs of the genre according to the taste of the player.
【0099】なお、本実施の形態では、自動演奏データ
からデータを抽出する範囲及び条件は固定的に設定され
ていたが、これに限らず、演奏者のレベルに応じてこの
条件を変更できるようにしてもよい。たとえば、自動演
奏データからデータを抽出する範囲は、上記実施の形態
では「小節」を用いたが、演奏レベルが低いときには、
たとえばフレーズ分割された各フレーズを用い、各フレ
ーズの先頭のイベントデータを抽出するようにしてもよ
い。また、自動演奏データからデータを抽出する条件と
しては、たとえば、演奏レベルが低いときには、各小節
において分割された1イベントデータを抽出する(間引
く)ための各符長範囲をより長い範囲、たとえば、2分
音符の符長範囲とし、この2分音符の符長範囲内にて、
前述の条件に合致するイベントデータを抽出するように
してもよい。ここで、フレーズ分割する方法は、たとえ
ば本願出願人が特願平6−330100号で開示した方
法を用いればよい。また、抽出する条件も本実施の形態
に示したものに限らない。In the present embodiment, the range and conditions for extracting data from the automatic performance data are fixedly set. However, the present invention is not limited to this, and the conditions can be changed according to the level of the player. It may be. For example, in the above embodiment, “measure” is used as a range for extracting data from the automatic performance data, but when the performance level is low,
For example, the event data at the head of each phrase may be extracted by using each phrase that has been divided into phrases. Conditions for extracting data from the automatic performance data include, for example, when the performance level is low, each note length range for extracting (decimating) one event data divided in each bar is set to a longer range, for example, Within the note length range of a half note, within this note length range of a half note,
Event data meeting the above conditions may be extracted. Here, as a method of dividing the phrase, for example, the method disclosed by the present applicant in Japanese Patent Application No. Hei 6-330100 may be used. Further, the conditions for extraction are not limited to those described in the present embodiment.
【0100】なお、右手データと左手データとで、演奏
レベルを別々に設定できるようにしてもよく、このよう
にすれば、右手ではある程度弾けるが、左手が思うよう
に動かない場合などに最適である。Note that the performance level may be set separately for the right hand data and the left hand data. In this case, the right hand can play to some extent, but is optimal when the left hand does not move as desired. is there.
【0101】また、本実施の形態では演奏に先立ってイ
ベントデータを抽出し、間引くようにしたが、演奏を進
めながらリアルタイムに抽出するようにしてもよい。In the present embodiment, the event data is extracted and thinned out prior to the performance. However, the event data may be extracted in real time as the performance proceeds.
【0102】また、本実施の形態では、鍵盤LEDの点
灯は、押鍵すべきタイミングにある鍵に対応するものの
み行うようにしたが、これに限らず、本願出願人が特願
平6−300118号で開示したように、複数個の鍵盤
LEDを先行して点灯させ、その中の押鍵すべきタイミ
ングにある鍵に対応するものを点滅させるようにしても
よい。Further, in the present embodiment, the keyboard LED is lit only for the key corresponding to the key at the timing of depressing the key. However, the present invention is not limited to this. As disclosed in Japanese Patent No. 300118, a plurality of keyboard LEDs may be illuminated in advance, and a key corresponding to a key at a timing at which a key should be pressed may be blinked.
【0103】なお、本実施の形態では、テンポの変更
は、図9のステップS68〜S70で説明したように、
テンポ係数を変更し、これによりタイミングデータの値
を修正するようにして行ったが、これに限らず、テンポ
クロックの周期を変更してもよいし、1回の処理におい
てタイミングデータをカウントする値(カウント量)を
変更するようにしてもよい。In this embodiment, the tempo is changed as described in steps S68 to S70 in FIG.
Although the tempo coefficient was changed and the value of the timing data was corrected by this, the present invention is not limited to this. The period of the tempo clock may be changed, and the value for counting the timing data in one process may be used. (Count amount) may be changed.
【0104】また、本実施の形態では、本発明を電子鍵
盤楽器の形態で構成したが、これに限らず、パーソナル
コンピュータとアプリケーションプログラムの形態で構
成することもできる。また、本発明をカラオケ装置等の
機器にも適用できる。In the present embodiment, the present invention is configured in the form of an electronic keyboard instrument. However, the present invention is not limited to this, and may be configured in the form of a personal computer and an application program. Further, the present invention can be applied to a device such as a karaoke device.
【0105】また、本実施の形態では、図1に示すよう
に、本発明を音源装置(音源回路12、効果回路13お
よびサウンドシステム14)および自動演奏装置(CP
U5)を内蔵した電子鍵盤楽器で実現したが、これに限
らず、それぞれ別体の装置で構成し、MIDIインタフ
ェースや各種ネットワーク等の通信手段を用いて各装置
を接続して本発明を実現するようにしてもよい。In the present embodiment, as shown in FIG. 1, the present invention relates to a sound source device (sound source circuit 12, effect circuit 13, and sound system 14) and an automatic performance device (CP).
The present invention is realized by an electronic keyboard instrument having a built-in U5), but is not limited to this, and is constituted by separate devices, and the present invention is realized by connecting the devices using communication means such as a MIDI interface and various networks. You may do so.
【0106】なお、本実施の形態では、本発明を電子鍵
盤楽器に適用したが、これに限らず、電子楽器でないピ
アノに適用してもよいし、さらに、弦楽器タイプ、管楽
器タイプ、打楽器タイプ等どのようなタイプの楽器に適
用してもよい。In the present embodiment, the present invention is applied to an electronic keyboard instrument. However, the present invention is not limited to this, and may be applied to a piano other than an electronic musical instrument, and further includes a stringed instrument type, a wind instrument type, a percussion instrument type, and the like. It may be applied to any type of musical instrument.
【0107】[0107]
【発明の効果】以上説明したように、請求項1記載の発
明に依れば、演奏レベル入力手段から入力された演奏レ
ベルに応じて、データ抽出手段がデータを抽出するとき
の所定範囲あるいは所定条件が変更されるので、演奏者
のレベルに応じた演奏ガイド用データを必ず生成するこ
とができ、これにより自己の演奏レベルに合った演奏ガ
イド用データを探す手間を省略することができる。As described above, according to the first aspect of the present invention, according to the performance level input from the performance level input means, the predetermined range or predetermined range when the data extracting means extracts the data. Since the conditions are changed, it is possible to always generate performance guide data according to the level of the performer, thereby saving the trouble of searching for performance guide data that matches the own performance level.
【0108】また、請求項2記載の発明に依れば、演奏
ガイド手段により、前記データ抽出手段が抽出したデー
タを用いて演奏ガイドがなされるので、初心者から上級
者まで演奏レベルに応じて幅広い演奏ガイドを行うこと
ができる。According to the second aspect of the present invention, a performance guide is provided by the performance guide means using the data extracted by the data extraction means, so that a wide range from beginners to advanced players can be provided according to the performance level. A performance guide can be provided.
【0109】また、請求項3記載の発明に依れば、演奏
レベル入力手段から入力された演奏レベルに応じて、デ
ータ抽出手段が抽出したデータの中からさらに一部のデ
ータが選択され、当該データを用いて演奏ガイドがなさ
れるので、初心者から上級者まで演奏レベルに応じて幅
広い演奏ガイドを行うことができる。According to the third aspect of the present invention, a part of the data extracted by the data extracting means is selected according to the performance level inputted from the performance level input means. Since the performance guide is performed using the data, a wide range of performance guides can be performed according to the performance level from beginner to advanced.
【図1】本発明の実施の一形態に係る演奏指示装置を適
用した電子鍵盤楽器の概略構成を示すブロック図であ
る。FIG. 1 is a block diagram showing a schematic configuration of an electronic keyboard instrument to which a performance instruction device according to an embodiment of the present invention is applied.
【図2】演奏データのデータフォーマットを示す図であ
る。FIG. 2 is a diagram showing a data format of performance data.
【図3】図1のRAMの所定位置に確保された間引きデ
ータバッファの構成の一例を示す図である。FIG. 3 is a diagram illustrating an example of a configuration of a thinned-out data buffer secured at a predetermined position in a RAM of FIG. 1;
【図4】図1の電子鍵盤楽器、特にCPUが実行するメ
インルーチンの手順を示すフローチャートである。FIG. 4 is a flowchart showing a procedure of a main routine executed by the electronic keyboard instrument of FIG. 1, in particular, a CPU;
【図5】図4のパネルスイッチイベントサブルーチンの
詳細な手順を示すフローチャートである。FIG. 5 is a flowchart showing a detailed procedure of a panel switch event subroutine of FIG. 4;
【図6】図5の曲データ間引き処理サブルーチンの詳細
な手順を示すフローチャートである。6 is a flowchart showing a detailed procedure of a music data thinning-out processing subroutine in FIG. 5;
【図7】図4の一致進行タイマ処理サブルーチンの詳細
な手順を示すフローチャートである。FIG. 7 is a flowchart showing a detailed procedure of a match progress timer processing subroutine of FIG. 4;
【図8】図4の再生処理サブルーチンの詳細な手順を示
すフローチャートである。FIG. 8 is a flowchart showing a detailed procedure of a reproduction processing subroutine of FIG. 4;
【図9】図4の鍵盤LED処理1サブルーチンの詳細な
手順を示すフローチャートである。9 is a flowchart showing a detailed procedure of a keyboard LED processing 1 subroutine of FIG. 4;
【図10】図4の鍵盤LED処理2サブルーチンの詳細
な手順を示すフローチャートである。FIG. 10 is a flowchart showing a detailed procedure of a keyboard LED processing 2 subroutine of FIG. 4;
【図11】図4の鍵処理サブルーチンの詳細な手順を示
すフローチャートである。FIG. 11 is a flowchart showing a detailed procedure of a key processing subroutine of FIG. 4;
【図12】タイマ割り込み処理の手順を示すフローチャ
ートである。FIG. 12 is a flowchart illustrating a procedure of a timer interrupt process.
【図13】バッファ1および2に格納されるデータのフ
ォーマットを示す図である。FIG. 13 is a diagram showing a format of data stored in buffers 1 and 2.
【図14】図6の間引き処理を説明するための図であ
る。FIG. 14 is a diagram for explaining a thinning process in FIG. 6;
【図15】ガイドレベルに応じて鍵盤LEDが点灯/消
灯するタイミングを示す図である。FIG. 15 is a diagram showing timings at which a keyboard LED is turned on / off according to a guide level.
2 パネルスイッチ(演奏レベル入力手段) 5 CPU(データ抽出手段、演奏ガイド手段、演奏レ
ベル入力手段、変更手段、抽出データ選択手段)2 Panel switch (performance level input means) 5 CPU (data extraction means, performance guide means, performance level input means, change means, extracted data selection means)
Claims (3)
件に合致したデータを抽出するデータ抽出手段と、 演奏レベルを入力するための演奏レベル入力手段と、 該入力された演奏レベルに応じて、前記データ抽出手段
がデータを抽出するときの所定範囲あるいは所定条件を
変更する変更手段とを有することを特徴とする演奏指示
装置。1. A data extracting means for extracting data meeting predetermined conditions for each predetermined range from automatic performance data; a performance level input means for inputting a performance level; A performance instructing device comprising: changing means for changing a predetermined range or a predetermined condition when the data extracting means extracts data.
用いて演奏ガイドを行う演奏ガイド手段を有することを
特徴とする請求項1記載の演奏指示装置。2. The performance instruction device according to claim 1, further comprising performance guide means for performing a performance guide using the data extracted by said data extraction means.
件に合致したデータを抽出するデータ抽出手段と、 演奏レベルを入力するための演奏レベル入力手段と、 該入力された演奏レベルに応じて、前記データ抽出手段
が抽出したデータの内の一部のデータを選択する抽出デ
ータ選択手段と、 該選択したデータを用いて演奏ガイドを行う演奏ガイド
手段とを有することを特徴とする演奏指示装置。3. A data extracting means for extracting data which meets predetermined conditions for each predetermined range from automatic performance data, a performance level input means for inputting a performance level, and A performance instructing device comprising: extracted data selecting means for selecting a part of data extracted by the data extracting means; and performance guiding means for performing a performance guide using the selected data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9138000A JPH1069273A (en) | 1996-05-16 | 1997-05-14 | Playing instruction device |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14484696 | 1996-05-16 | ||
JP8-144846 | 1996-05-16 | ||
JP9138000A JPH1069273A (en) | 1996-05-16 | 1997-05-14 | Playing instruction device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1069273A true JPH1069273A (en) | 1998-03-10 |
Family
ID=26471155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9138000A Pending JPH1069273A (en) | 1996-05-16 | 1997-05-14 | Playing instruction device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1069273A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0993847A1 (en) * | 1998-10-13 | 2000-04-19 | Konami Co., Ltd. | Game system and computer readable recording medium storing program for executing music game |
JP2001188536A (en) * | 1999-12-28 | 2001-07-10 | Casio Comput Co Ltd | Playing practice device and storage medium which stores program for playing practice |
JP2001187270A (en) * | 1999-12-28 | 2001-07-10 | Konami Co Ltd | Game system and storage medium capable of being read by computer |
JP2005334268A (en) * | 2004-05-26 | 2005-12-08 | Namco Ltd | Program, information storage medium and game system |
US7102071B2 (en) | 2002-08-28 | 2006-09-05 | Yamaha Corporation | Apparatus and method for processing tone reproducing digital data against unauthorized use |
US7129407B2 (en) | 2003-02-28 | 2006-10-31 | Yamaha Corporation | Apparatus and computer program for practicing musical instrument |
JP2008003329A (en) * | 2006-06-22 | 2008-01-10 | Casio Comput Co Ltd | Score display control device and program |
JP2008145564A (en) * | 2006-12-07 | 2008-06-26 | Casio Comput Co Ltd | Automatic music arranging device and automatic music arranging program |
JP2008268760A (en) * | 2007-04-24 | 2008-11-06 | Casio Comput Co Ltd | Musical performance guide device and program |
WO2017217002A1 (en) * | 2016-06-17 | 2017-12-21 | Necソリューションイノベータ株式会社 | Display system, display method, program, and recording medium |
-
1997
- 1997-05-14 JP JP9138000A patent/JPH1069273A/en active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0993847A1 (en) * | 1998-10-13 | 2000-04-19 | Konami Co., Ltd. | Game system and computer readable recording medium storing program for executing music game |
JP2001188536A (en) * | 1999-12-28 | 2001-07-10 | Casio Comput Co Ltd | Playing practice device and storage medium which stores program for playing practice |
JP2001187270A (en) * | 1999-12-28 | 2001-07-10 | Konami Co Ltd | Game system and storage medium capable of being read by computer |
US7102071B2 (en) | 2002-08-28 | 2006-09-05 | Yamaha Corporation | Apparatus and method for processing tone reproducing digital data against unauthorized use |
US7129407B2 (en) | 2003-02-28 | 2006-10-31 | Yamaha Corporation | Apparatus and computer program for practicing musical instrument |
JP2005334268A (en) * | 2004-05-26 | 2005-12-08 | Namco Ltd | Program, information storage medium and game system |
JP2008003329A (en) * | 2006-06-22 | 2008-01-10 | Casio Comput Co Ltd | Score display control device and program |
JP2008145564A (en) * | 2006-12-07 | 2008-06-26 | Casio Comput Co Ltd | Automatic music arranging device and automatic music arranging program |
JP2008268760A (en) * | 2007-04-24 | 2008-11-06 | Casio Comput Co Ltd | Musical performance guide device and program |
WO2017217002A1 (en) * | 2016-06-17 | 2017-12-21 | Necソリューションイノベータ株式会社 | Display system, display method, program, and recording medium |
JPWO2017217002A1 (en) * | 2016-06-17 | 2019-04-11 | Necソリューションイノベータ株式会社 | Display system, display method, program, and recording medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3120732B2 (en) | Performance instruction device | |
US7335833B2 (en) | Music performance system | |
RU2502119C1 (en) | Musical sound generation instrument and computer readable medium | |
US5902948A (en) | Performance instructing apparatus | |
JP3266149B2 (en) | Performance guide device | |
JPH1069273A (en) | Playing instruction device | |
JP3178472B2 (en) | Performance instruction device | |
JP3358292B2 (en) | Electronic musical instrument | |
JP2002229561A (en) | Automatic arranging system and method | |
JP3484719B2 (en) | Performance guide device with voice input function and performance guide method | |
US20050257667A1 (en) | Apparatus and computer program for practicing musical instrument | |
JP3649014B2 (en) | Performance data file playback setting control device | |
JP3055554B2 (en) | Operation instruction device | |
JP3047879B2 (en) | Performance guide device, performance data creation device for performance guide, and storage medium | |
JP2643334B2 (en) | Automatic performance device | |
US5866833A (en) | Automatic performance system | |
JP2570411B2 (en) | Playing equipment | |
JP2625800B2 (en) | Automatic performance device | |
JP3752956B2 (en) | PERFORMANCE GUIDE DEVICE, PERFORMANCE GUIDE METHOD, AND COMPUTER-READABLE RECORDING MEDIUM CONTAINING PERFORMANCE GUIDE PROGRAM | |
JP2643277B2 (en) | Automatic performance device | |
JP2692676B2 (en) | Automatic performance device | |
JP3637782B2 (en) | Data generating apparatus and recording medium | |
JP2713107B2 (en) | Automatic performance device | |
JP4205563B2 (en) | Performance device, performance method, and computer program for performance | |
JP2681146B2 (en) | Electronic musical instrument automatic performance device and automatic performance method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050802 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051003 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20051025 |