JPH0981131A - Quantizing method for sequence data and timing processing device for sequence data - Google Patents

Quantizing method for sequence data and timing processing device for sequence data

Info

Publication number
JPH0981131A
JPH0981131A JP7234525A JP23452595A JPH0981131A JP H0981131 A JPH0981131 A JP H0981131A JP 7234525 A JP7234525 A JP 7234525A JP 23452595 A JP23452595 A JP 23452595A JP H0981131 A JPH0981131 A JP H0981131A
Authority
JP
Japan
Prior art keywords
bar
event data
data
sequence data
measure
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.)
Abandoned
Application number
JP7234525A
Other languages
Japanese (ja)
Inventor
Yoshinori Yashiro
義徳 矢代
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP7234525A priority Critical patent/JPH0981131A/en
Publication of JPH0981131A publication Critical patent/JPH0981131A/en
Abandoned legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PROBLEM TO BE SOLVED: To control the pronounciating timing of sequence data so as to properly performing reproduction. SOLUTION: An electronic musical instrument 100 has a RAM storing musical piece data and displays event data and a cursor on the screen of a television 110. After a user moves the cursor on an arbitrary event data by operating switches SW6-SW9, by repeating designating operation twice for turning on a switch SW1 once, thereby, the quantizing range is specified. When the switch SW1 is turned on after designating the range, the electronic musical instrument 100 starts the quantizing processing. The quantizing processing is performed by changing a clock from the head of a measure of each event data for ever measure in the measure within the designated range based on the rhythm of the measure belonging to it.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、シーケンスデータ
により発音される楽音の発音タイミングを制御するため
の技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a technique for controlling the tone generation timing of musical tones generated by sequence data.

【0002】[0002]

【従来の技術及び発明が解決しようとする課題】近年、
異なる装置間で音楽情報を伝達するための規格であるM
IDI(Musical Instrument Digital Interface)規格
が制定されたことから、自動演奏の分野は大きな発展を
遂げている。自動演奏を行うシーケンサー装置(以降、
単にシーケンサーと記す)も数多く商品化され、また、
その機能であるシーケンサー機能も様々な装置に搭載さ
れている。
2. Description of the Related Art In recent years,
M, which is a standard for transmitting music information between different devices
With the establishment of the IDI (Musical Instrument Digital Interface) standard, the field of automatic performance has made great progress. Sequencer device for automatic performance (hereinafter,
Many are also commercialized, and
The sequencer function that is the function is also installed in various devices.

【0003】シーケンサー機能としては、楽曲データ
(シーケンスデータ)の記録/編集/再生がその主な機
能である。このシーケンサー機能を搭載することで、例
えば外部機器から送られた楽曲データを記録し、この記
録した楽曲データを任意にアレンジし、このアレンジし
た楽曲データを再生させることができる。
The main functions of the sequencer are recording / editing / reproducing of music data (sequence data). By installing this sequencer function, for example, music data sent from an external device can be recorded, the recorded music data can be arbitrarily arranged, and the arranged music data can be reproduced.

【0004】楽曲データ(シーケンスデータ)の編集機
能により、音色、エフェクトといった楽音の発音形態に
関わる音源パラメータの設定内容の変更を含め、楽音の
音高やその発音タイミングの変更、発音させる楽音の追
加等、様々なことを行うことができる。上記発音タイミ
ングは、発音開始タイミング、及びその開始タイミング
から発音が持続する期間を含めた意味である。発音開始
タイミングの変更においては、そのタイミングのズレを
自動的に修正するクウォンタイズという機能も広く搭載
されている。
By the editing function of the music data (sequence data), the pitch of the musical tone and its sounding timing are changed, and the musical tone to be pronounced is added, including the change of the setting contents of the tone generator parameters related to the musical tone pronunciation form such as tone colors and effects. And so on. The above-mentioned sound generation timing includes a sound generation start timing and a period in which sound generation continues from the start timing. When changing the pronunciation start timing, a function called Quantize that automatically corrects the timing deviation is also widely installed.

【0005】上記のように、ユーザは編集機能を用いて
楽曲データを自由に編集することができる。しかし、以
下のような編集を行った場合、楽曲データが適正に再生
されないということが発生していた。
As described above, the user can freely edit the music data by using the editing function. However, when the following editing is performed, the music data may not be properly reproduced.

【0006】最初の例としては、例えば小節の拍子を変
更した後、クウォンタイズ機能により発音開始タイミン
グのズレを修正させた場合である。クウォンタイズは、
指定された範囲を均等割し、その範囲内で発音される各
音符の発音開始タイミングを、均等割したタイミングに
それぞれ変更することを基本としている。このため、指
定した範囲内の小節の拍子を変更すると、それが全体の
クウォンタイズに影響する。これにより、例えば本来は
小節の先頭で発音させるべき音符が、その小節の前の小
節で発音されたり、或いは同じ小節内でも他のところで
発音されたりする。このように、ユーザが意図していな
い形でクウォンタイズされることがあるという問題点が
あった。
The first example is a case where, after changing the time signature of a bar, for example, the quantize function corrects the deviation of the sound generation start timing. Quantize
Basically, the designated range is equally divided, and the sound generation start timing of each note produced within the range is changed to the equally divided timing. Therefore, if you change the time signature of a measure within the specified range, it will affect the overall quantize. As a result, for example, a note that should originally be pronounced at the beginning of a measure is sounded at a measure before that measure, or at another place within the same measure. As described above, there is a problem in that the user may be quantized in an unintended manner.

【0007】次の例は、音符の発音開始タイミングを、
それが属している小節外としてしまった場合である。シ
ーケンスデータの時間管理としては、前の音符との間隔
で各音符の発音開始タイミングを管理するデルタタイム
管理方法と、小節内で発音される音符の発音開始タイミ
ングを、その小節の先頭からの間隔により管理する相対
時間管理方法が広く用いられている。後者の方法では、
音符を消去してもそれが他の音符に影響しないことか
ら、前者の方法と比較すると、シーケンスデータの編集
が容易であるという利点がある。
In the following example, the timing of starting the sound generation of a note is
This is the case when it is outside the bar to which it belongs. As for the time management of sequence data, the delta time management method that manages the sounding start timing of each note at the interval from the previous note, and the sounding start timing of the notes sounded within a bar Relative time management methods that are managed according to are widely used. In the latter method,
Even if a note is erased, it does not affect other notes. Therefore, compared to the former method, there is an advantage that the sequence data can be edited easily.

【0008】シーケンサー機能により、上記相対時間管
理方法で作成されたシーケンスデータを編集する場合、
ユーザは小節内の音符の発音開始タイミングを任意に変
更することができた。しかし、そのシーケンスデータを
再生する自動演奏装置は、基本的に、各音符の発音を小
節毎に管理することから、音符の発音開始タイミングを
それが属する小節の外に変更してしまうと、その音符が
発音されないといった発音異常が発生することがあっ
た。また、その変更を行ったことで、シーケンスデータ
が正常に表示されなくなることもあった。
When the sequence data created by the above relative time management method is edited by the sequencer function,
The user was able to arbitrarily change the timing at which the notes in the measure started to sound. However, since the automatic playing device that reproduces the sequence data basically manages the pronunciation of each note for each measure, if the pronunciation start timing of the note is changed to outside the measure to which it belongs, Occurrence of abnormal pronunciation such as not producing notes. In addition, the sequence data may not be displayed normally due to the change.

【0009】本発明の課題は、その再生が適正に行われ
るように、シーケンスデータの発音タイミングを管理す
ることにある。
An object of the present invention is to manage the tone generation timing of sequence data so that the reproduction can be performed properly.

【0010】[0010]

【課題を解決するための手段】本発明のシーケンスデー
タのクウォンタイズ方法は、指定範囲内に存在するシー
ケンスデータの発音開始タイミングを変更することを前
提とし、指定範囲として複数の小節にまたがる範囲が指
定されたとき、小節を処理単位として、各小節毎に、シ
ーケンスデータの発音開始タイミングを、それが属する
小節の拍子に基づいて変更していく、ことでクウォンタ
イズを行う。
The method for quantizing sequence data according to the present invention is premised on changing the tone generation start timing of sequence data existing within a specified range, and the specified range is a range that spans a plurality of measures. When designated, the quantize is performed by changing the sound generation start timing of the sequence data for each bar based on the time signature of the bar to which the bar belongs as a processing unit.

【0011】本発明の第1の態様のシーケンスデータの
タイミング処理装置は、シーケンスデータの発音開始タ
イミングを制御することを前提とし、シーケンスデータ
の発音開始タイミングを変更させる範囲を指定するため
の指定手段と、指定手段により、複数の小節にまたがる
範囲が指定されたとき、小節を処理単位として、各小節
毎に、シーケンスデータの発音開始タイミングを、それ
が属する小節の拍子に基づいて変更する制御手段と、を
具備する。
The sequence data timing processing apparatus according to the first aspect of the present invention is based on the premise that the tone generation start timing of the sequence data is controlled, and a designation means for designating a range in which the tone generation start timing of the sequence data is changed. When the range that spans a plurality of measures is specified by the specifying means, the control means that changes the sounding start timing of the sequence data for each measure based on the time signature of the measure to which the measure belongs, with the measure as a processing unit. And.

【0012】上記の発明においては、小節を処理単位と
したことで、その小節の演奏時間等を変更しても、その
変更が他の小節に影響することなく、クウォンタイズが
行われる。
In the above invention, since the measure is used as a processing unit, even if the playing time of the measure is changed, the quantize is performed without affecting the other measures.

【0013】本発明の第2の態様のシーケンスデータの
タイミング処理装置は、シーケンスデータの発音開始タ
イミングを制御することを前提とし、シーケンスデータ
の発音開始タイミングを指定するための指定手段と、指
定手段により指定されたシーケンスデータの発音開始タ
イミングが、該シーケンスデータが属する小節内である
か否か判定する判定手段と、シーケンスデータの発音開
始タイミングが、該シーケンスデータが属する小節内で
はないと判定手段が判定したとき、指定手段による指定
を無効とする制御手段と、を具備する。
The sequence data timing processing apparatus according to the second aspect of the present invention is premised on controlling the tone generation start timing of the sequence data, and a designation means for designating the tone generation start timing of the sequence data, and a designation means. Determining means for determining whether or not the sounding start timing of the sequence data designated by is within the bar to which the sequence data belongs, and determining means for determining that the sounding start timing of the sequence data is not within the bar to which the sequence data belongs Control means for invalidating the designation by the designating means when the determination is made.

【0014】これにより、シーケンスデータの発音開始
タイミングに対する変更において、それが属する小節外
となる変更が禁止され、ある小節に属しているシーケン
スデータは、その小節内で発音を確実に開始することに
なる。
As a result, in changing the sounding start timing of the sequence data, the change outside the bar to which it belongs is prohibited, and the sequence data belonging to a certain bar surely starts to sound within that bar. Become.

【0015】[0015]

【発明の実施の形態】以下、本発明を適用した実施の形
態について、図面を参照しながら詳細に説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings.

【0016】図1は、第1の実施の形態が適用されたシ
ステムの外観を示す図である。第1の実施の形態は、電
子楽器100として実現されている。電子楽器100
は、発音させる楽音の指定に用いられる鍵盤101と、
図示しているスイッチSW1〜SW9、及び特には図示
していない他の複数のスイッチからなるスイッチ群10
2とを備えている。この電子楽器100は、マルチ音源
として動作する機能、シーケンサー機能等を備えた、G
M(ジェネラルMIDI)対応機種である。
FIG. 1 is a diagram showing the external appearance of a system to which the first embodiment is applied. The first embodiment is realized as an electronic musical instrument 100. Electronic musical instrument 100
Is a keyboard 101 used to specify the musical sound to be pronounced,
A switch group 10 including the illustrated switches SW1 to SW9 and a plurality of other switches not particularly illustrated.
2 is provided. The electronic musical instrument 100 has a function of operating as a multi-tone sound source, a sequencer function, and the like.
It is a model compatible with M (General MIDI).

【0017】この電子楽器100には、テレビ110が
接続されている。電子楽器100は、テレビ110の画
面上に、音符データ(イベントデータ)や、現在設定さ
れている音源パラメータ等の表示を行う。なお、ユーザ
は、テレビ110に表示させる内容を、スイッチ群10
2の所定のスイッチに対する操作によって指定すること
ができる。
A television 110 is connected to the electronic musical instrument 100. The electronic musical instrument 100 displays musical note data (event data), currently set sound source parameters, and the like on the screen of the television 110. It should be noted that the user changes the content displayed on the television 110 to the switch group 10
It can be designated by operating two predetermined switches.

【0018】電子楽器100には、シーケンサー等の外
部機器と接続するための端子が設けられている。外部機
器とは、例えばMIDIデータで音楽情報をやりとりす
る。電子楽器100は、例えば接続されたシーケンサー
からMIDIデータが送られてくると、そのMIDIデ
ータを解析し、その解析結果に従って楽音の発音や、音
源パラメータの設定等を行うとともに、そのMIDIデ
ータの内容をテレビ110に表示させる処理等を行う。
The electronic musical instrument 100 is provided with terminals for connecting to an external device such as a sequencer. For example, MIDI information is exchanged with an external device by MIDI data. For example, when MIDI data is sent from a connected sequencer, the electronic musical instrument 100 analyzes the MIDI data, generates musical tones and sets sound source parameters in accordance with the analysis result, and the contents of the MIDI data. Is displayed on the television 110.

【0019】図2は、上記電子楽器100の構成のブロ
ック図である。図2に示すように、この電子楽器100
は、楽器(及びシステム)全体の制御を行うCPU20
1と、各種プログラムや制御用データを記憶したROM
202と、主にCPU201がワーク領域として用いる
RAM203と、上述した鍵盤101、及びスイッチ群
102と、テレビ110の画面上に画像を表示させるた
めの画像データを出力する画像データ出力部204と、
CPU201から送られた発音コマンドに従って楽音を
発音するサウンドシステム205と、外部機器とのMI
DIデータの授受を行うMIDIインターフェイス20
6とを備えて構成されている。
FIG. 2 is a block diagram of the configuration of the electronic musical instrument 100. As shown in FIG. 2, this electronic musical instrument 100
Is a CPU 20 that controls the entire musical instrument (and system)
1 and a ROM that stores various programs and control data
202, a RAM 203 mainly used as a work area by the CPU 201, the keyboard 101 and the switch group 102 described above, an image data output unit 204 for outputting image data for displaying an image on the screen of the television 110,
The MI of the sound system 205 that produces a musical tone according to the pronunciation command sent from the CPU 201 and the external device.
MIDI interface 20 for exchanging DI data
6 is provided.

【0020】上記の構成において、その概略動作を説明
する。CPU201は、ROM202に記憶されている
制御プログラムに基づいて、楽器100全体の動作を制
御し、これにより、図1に示すシステム全体の動作を制
御する。
An outline of the operation of the above configuration will be described. The CPU 201 controls the operation of the entire musical instrument 100 based on the control program stored in the ROM 202, and thereby controls the operation of the entire system shown in FIG. 1.

【0021】ユーザが鍵盤101を操作すると、CPU
201は、操作された鍵を特定するとともに、その鍵が
操作されたときの速さ(ベロシティ)を求めて、ユーザ
の操作内容に応じて発音コマンドを生成し、これをサウ
ンドシステム205に出力する。
When the user operates the keyboard 101, the CPU
The 201 identifies the operated key, obtains the speed (velocity) when the key is operated, generates a pronunciation command according to the operation content of the user, and outputs this to the sound system 205. .

【0022】このサウンドシステム205は、特には図
示しないが、例えば各種の楽音波形データを格納した波
形ROM、この波形ROMから波形データを読み出す音
源部、音源部が読み出した波形データに音響効果等を付
加するエフェクタ、エフェクタから出力されたデジタル
の波形データをD/A変換し、アナログの波形(楽音)
信号を出力するD/Aコンバータ、D/Aコンバータが
出力した波形信号により楽音を発音するスピーカからな
る。CPU201から入力した発音コマンドに従って楽
音を発音することにより、ユーザが鍵盤101に対して
行った操作に応じて楽音が発音されることになる。
Although not particularly shown, the sound system 205 includes, for example, a waveform ROM storing various tone waveform data, a sound source section for reading the waveform data from the waveform ROM, and a sound effect for the waveform data read by the sound source section. An analog waveform (musical sound) that is D / A converted from the added effector and digital waveform data output from the effector.
It is composed of a D / A converter that outputs a signal and a speaker that produces a musical sound by the waveform signal output by the D / A converter. By pronouncing a musical tone according to the pronunciation command input from the CPU 201, the musical tone is pronounced according to the operation performed on the keyboard 101 by the user.

【0023】CPU201は、このサウンドシステム2
05に発音コマンドを出力する他に、発音される楽音を
特徴づける音源パラメータの設定を行う。音源パラメー
タの設定は、ユーザがスイッチ群102の所定のスイッ
チを操作したとき、或いは外部機器から音響パラメータ
を指定するMIDIデータをMIDIインターフェイス
206が受け取ったときに行う。なお、音源パラメータ
とは、波形ROMから読み出す波形データ(音色に相当
する)の種類、エフェクタが付加する音響効果の種類、
及びその深さ、ボリューム、パン等のことである。
The CPU 201 uses the sound system 2
In addition to outputting a sounding command to 05, sound source parameters that characterize the tones to be sounded are set. The sound source parameter is set when the user operates a predetermined switch of the switch group 102 or when the MIDI interface 206 receives MIDI data designating an acoustic parameter from an external device. Note that the sound source parameter is the type of waveform data (corresponding to a tone color) read from the waveform ROM, the type of acoustic effect added by the effector,
And its depth, volume, bread, etc.

【0024】MIDIインターフェイス206がMID
Iデータを受け取った場合、CPU102は、そのMI
DIデータの内容に従って発音コマンドの生成、及びそ
れのサウンドシステム205への出力、音響パラメータ
の設定の他に、ユーザの指定に応じて、そのMIDIデ
ータの内容のテレビ110への表示や、MIDIデータ
のRAM203への記録を行う。
MIDI interface 206 is MID
When the I data is received, the CPU 102 determines that MI
In addition to generating a pronunciation command according to the content of the DI data, outputting the sound command to the sound system 205, and setting acoustic parameters, the content of the MIDI data is displayed on the television 110 and the MIDI data according to the user's specification. Is recorded in the RAM 203.

【0025】テレビ110への画像の表示は、以下のよ
うにして行われる。例えば、上記したように、MIDI
インターフェイス206が受信したMIDIデータを表
示させる場合、CPU201は、このMIDIデータを
解析し、その内容を表示させるために必要な画像データ
を特定する。その後、特定した画像データをROM20
2から読み出し、必要があればこれを加工して画像デー
タ出力部204に出力する。また、CPU201は、こ
の画像データの他に、その画像データを表示させる位置
を指定する座標データを画像データ出力部204に出力
する。
The image display on the television 110 is performed as follows. For example, as mentioned above, MIDI
When displaying the MIDI data received by the interface 206, the CPU 201 analyzes the MIDI data and specifies the image data necessary for displaying the contents. After that, the specified image data is stored in the ROM 20.
The data is read from the data No. 2, processed as needed, and output to the image data output unit 204. In addition to this image data, the CPU 201 outputs coordinate data designating a position where the image data is displayed to the image data output unit 204.

【0026】画像データ出力部204は、上記座標デー
タが示す表示位置に画像データを表示させるように、テ
レビ110に画像データを出力する。この画像データ
は、テレビ110の画面表示の方式に対応させて、1操
作ライン毎の、NTSC方式に基づくビデオコンポジッ
ト信号の形でテレビ110に出力する。これにより、テ
レビ110の表示画面上にMIDIデータが予め設定さ
れた表示形式で表示される。
The image data output unit 204 outputs the image data to the television 110 so that the image data is displayed at the display position indicated by the coordinate data. This image data is output to the television 110 in the form of a video composite signal based on the NTSC system for each operation line in correspondence with the screen display system of the television 110. As a result, MIDI data is displayed on the display screen of the television 110 in a preset display format.

【0027】一方、受信したMIDIデータのRAM2
03への記録は以下のようにして行われる。RAM20
3には、楽曲データを記録する記録領域(楽曲データ記
憶領域)が割り当てられ、この記録領域は、複数の記録
対象トラックに分割されている。記録対象トラックは、
ユーザが予めスイッチ群102を操作して指定する。M
IDIデータのRAM203への記録は、ユーザが指定
したRAM203の楽曲データ記録領域上の記録対象ト
ラックに、MIDIデータにおいてチャンネルメッセー
ジとして送られるイベントデータを、その入力タイミン
グとともに順次書き込むことで行われる。
On the other hand, the RAM 2 for the received MIDI data
The recording to 03 is performed as follows. RAM 20
A recording area (music data storage area) for recording music data is assigned to 3, and this recording area is divided into a plurality of recording target tracks. The recording target track is
The user operates the switch group 102 in advance to specify it. M
The recording of the IDI data in the RAM 203 is performed by sequentially writing the event data sent as a channel message in the MIDI data in the recording target track on the music data recording area of the RAM 203 designated by the user together with its input timing.

【0028】また、RAM203に記録された楽曲(イ
ベント)データは、編集することができる。CPU20
1は、ユーザがスイッチ群102において指定した内容
に従って、RAM203の楽曲データ記録領域上の所望
のトラックに記録されている楽曲データ(イベントデー
タ)を読み出して、例えば図7に示すように、そのデー
タを演奏順に表形式でテレビ110に表示させる。ユー
ザは、スイッチ群102を用いて、テレビ110に表示
されている楽曲(イベント)データに対して、楽曲(イ
ベント)データの挿入、削除、移動、複写などを行うこ
とができる。
The music (event) data recorded in the RAM 203 can be edited. CPU 20
1 reads the music data (event data) recorded in a desired track on the music data recording area of the RAM 203 according to the content designated by the user in the switch group 102, and the data is read as shown in FIG. 7, for example. Are displayed on the television 110 in the form of a table in the order of performance. Using the switch group 102, the user can insert, delete, move, copy, etc. the music (event) data to the music (event) data displayed on the television 110.

【0029】上記のようにして、ユーザが編集した結
果、及び音響パラメータを変更させた結果は、RAM2
03の楽曲データ記録領域の楽曲データの内容、或いは
受信中のMIDIデータによる自動演奏に反映される。
The result of editing by the user and the result of changing the acoustic parameters as described above are stored in the RAM 2
This is reflected in the content of the music data in the music data recording area No. 03, or in the automatic performance by the MIDI data being received.

【0030】RAM203の楽曲データ記録領域の楽曲
データの再生は、CPU201が、その記憶領域上の再
生対象トラックからイベントデータを順次読み出し、読
み出したイベントデータで楽音を発音させる発音コマン
ドを作成して、それをサウンドシステム205に出力す
ることで行われる。これにより、MIDIデータの受信
時と同様に、自動演奏が行われる。
To reproduce the music data in the music data recording area of the RAM 203, the CPU 201 sequentially reads out the event data from the reproduction target track in the storage area, creates a sound generation command for generating a musical sound with the read event data, It is performed by outputting it to the sound system 205. As a result, the automatic performance is performed in the same manner as when MIDI data is received.

【0031】以上が電子楽器100の構成、及び各部の
概略動作である。次に図3〜図6を参照して、RAM2
03に記憶される楽曲データのデータフォーマットにつ
いて説明する。
The above is the configuration of the electronic musical instrument 100 and the schematic operation of each unit. Next, referring to FIGS. 3 to 6, the RAM 2
The data format of the music data stored in 03 will be described.

【0032】第1の実施の形態では、楽曲データは、各
小節のイベントデータと、連続する128小節分のイベ
ントデータを単位とする小節ブロックと、最大で8個の
小節ブロックを含むトラック、16トラックを単位とす
る楽曲という各単位を用いて、階層的に管理される点が
特徴である。
In the first embodiment, the music data is a track including event data of each bar, a bar block in which event data of continuous 128 bars is a unit, and a track including a maximum of eight bar blocks, 16 The feature is that they are hierarchically managed by using each unit called a musical piece whose unit is a track.

【0033】まず、図3に示されるトラック使用状況デ
ータSNG_TRK_USEは、16ビットのデータで
あって、各楽曲毎に設定される。各データには、トラッ
ク0〜15の各トラックが楽曲の自動演奏において使用
されるか否かが、“1”又は“0”のフラグによって設
定される。このデータの、最下位ビットがトラック0に
対応し、最上位ビットがトラック15に対応する。
First, the track use status data SNG_TRK_USE shown in FIG. 3 is 16-bit data and is set for each music piece. Whether or not each of the tracks 0 to 15 is used in the automatic performance of music is set in each data by a flag of "1" or "0". The least significant bit of this data corresponds to track 0, and the most significant bit corresponds to track 15.

【0034】図4(a) に示される配列SNG_BAR_
TBLには、楽曲毎及び各楽曲内のトラック毎に、第0
小節〜第1023小節の1024小節を128小節ずつ
分割して得られる8つの小節ブロックのそれぞれに対応
する、図4(b) に示される配列SNG_BAR_PTR
内の128個ずつの配列データ群の各先頭要素情報が記
憶される。配列SNG_BAR_PTRに定義可能な小
節ブロックの数は、例えば最大で32である。その場
合、配列SNG_BAR_TBLには、小節ブロック先
頭要素情報として、0x00〜0x1f(10進数の0
〜31に対応)の何れかの値が記憶される。この小節ブ
ロック先頭要素情報の値を128倍して得られる値が、
その小節ブロックに対応する配列SNG_BAR_PT
R内の128個の配列データ群の先頭要素番号となる。
但し、未使用のトラックのそれぞれの小節ブロックの先
頭要素情報及び使用トラック内の未使用の小節ブロック
の先頭要素情報としては、値0xffが設定される。
The array SNG_BAR_ shown in FIG. 4 (a)
The TBL contains 0th track for each song and each track in each song.
Arrangement SNG_BAR_PTR shown in FIG. 4 (b) corresponding to each of eight measure blocks obtained by dividing 1024 measures of measures to 1023 measures into 128 measures.
The head element information of each of the 128 array data groups is stored. The maximum number of bar blocks that can be defined in the array SNG_BAR_PTR is 32, for example. In that case, in the array SNG_BAR_TBL, 0x00 to 0x1f (decimal number 0) is set as the bar block head element information.
(Corresponding to ~ 31) is stored. The value obtained by multiplying the value of this bar block head element information by 128 is
Array SNG_BAR_PT corresponding to the bar block
It is the head element number of the 128 array data groups in R.
However, the value 0xff is set as the head element information of each bar block of the unused track and the head element information of the unused bar block in the used track.

【0035】図4(b) に示される配列SNG_BAR_
PTRには、上述の小節ブロック毎に、各小節ブロック
内の128小節のそれぞれに対応する、図4(c) に示さ
れる配列SNG_SONG内のイベントデータ群の各先
頭要素番号が記憶される。配列SNG_SONGに定義
可能なイベントデータの数は、例えば最大で16384
イベントである。その場合、配列SNG_BAR_PT
Rには、各小節に対応するイベントデータ群の先頭要素
番号として、0x0000〜0x4000(10進数の
0〜16383に対応)の何れかの値が記憶される。但
し、全休符の小節に対応する先頭要素番号としては、値
0xffffが設定される。
The array SNG_BAR_ shown in FIG. 4 (b)
In the PTR, the head element numbers of the event data group in the array SNG_SONG shown in FIG. 4C corresponding to 128 bars in each bar block are stored for each bar block described above. The maximum number of event data that can be defined in the array SNG_SONG is 16384, for example.
It is an event. In that case, the array SNG_BAR_PT
In R, any value of 0x0000 to 0x4000 (corresponding to decimal numbers 0 to 16383) is stored as the head element number of the event data group corresponding to each measure. However, the value 0xffff is set as the head element number corresponding to the bar of all rests.

【0036】図4(c) に示される配列SNG_SONG
には、上述したように小節単位で連続したイベントデー
タが記憶される。1つのイベントデータは、後述するよ
うに3ワードのデータとして構成される。但し、配列S
NG_SONGは、512個のイベントデータを単位と
する32個のイベントデータブロック(16384イベ
ントデータ分)に分割される。ここで、1つの小節内の
イベントデータ群が2つのイベントデータブロックに分
割される場合には、第1番目のイベントデータブロック
の末尾に後述するジャンプイベントデータが記憶され、
また、第2番目のイベントデータブロックの先頭に後述
するジャンプソースイベントデータが記憶される。
Sequence SNG_SONG shown in FIG. 4 (c)
The event data, which is continuous in units of bars as described above, is stored in the. One event data is composed of 3-word data as described later. However, the array S
NG_SONG is divided into 32 event data blocks (for 16384 event data) in units of 512 event data. Here, when the event data group in one bar is divided into two event data blocks, jump event data described later is stored at the end of the first event data block,
Also, jump source event data, which will be described later, is stored at the beginning of the second event data block.

【0037】図5は、図4(c) の配列SNG_SONG
に記憶されるイベントデータ群を構成するノートイベン
トデータとコントロールイベントデータのデータフォー
マットを示す図であり、各イベントデータは3ワードの
データとして構成される。
FIG. 5 shows the array SNG_SONG of FIG. 4 (c).
FIG. 3 is a diagram showing a data format of note event data and control event data forming the event data group stored in FIG.

【0038】図5(a) に示されるノートイベントデータ
は、楽譜の音符に対応するものであり、単音の発音処理
に必要な複数の情報を含む。即ち、ノートイベントデー
タの第1ワードは、上位7ビットが音高番号、下位7ビ
ットがベロシティを表わす。ノートイベントデータの第
2ワードは、そのノートイベントデータに対応する音符
について、それが含まれる小節の先頭からの時間位置
を、適当な単位(第1の実施の形態では480分の1拍
のクロック)でカウントした値である。そして、ノート
イベントデータの第3ワードは、そのノートイベントデ
ータに対応する音符の発音時間を前述の適当な単位でカ
ウントしたゲートタイムである。
The note event data shown in FIG. 5 (a) corresponds to the notes of the musical score, and contains a plurality of information necessary for the processing of producing a single note. That is, in the first word of the note event data, the upper 7 bits represent the pitch number and the lower 7 bits represent the velocity. The second word of the note event data indicates the time position from the beginning of the bar including the note corresponding to the note event data in an appropriate unit (clock of 1/480 beat in the first embodiment). ) Is the value counted. The third word of the note event data is the gate time obtained by counting the sounding time of the note corresponding to the note event data in the appropriate unit described above.

【0039】図5(b) に示されるコントロールイベント
データは、楽曲の再生を制御するために必要な、上述の
ノートイベントデータ以外のイベントデータであり、第
1ワードの最上位ビットが1であることによって、ノー
トイベントデータと区別される。このコントロールイベ
ントデータは、更に、メタイベントデータ群、ジャンプ
イベントデータ群、及びコマンドイベントデータ群の3
つに分類される。メタイベントデータ群は、楽曲全体の
テンポ、拍子、調に関する情報を含む。ジャンプイベン
トデータ群は、図6で後述するように、トラック終了、
小節終了、次処理データへのジャンプ等の、イベントデ
ータの位置制御に関する情報を含む。更に、コマンドイ
ベントデータ群は、音量、プログラムチェンジ(音
色)、ベンダー等の、楽音に対する修飾的な効果を付加
するための情報を含む。コントロールイベントデータの
第1ワードの下位7ビットはコントロールコードを示
し、このコードによって制御内容が決定される。例え
ば、メタイベントデータ群のテンポイベントデータに対
応する第1ワードの値は0xff00、ジャンプイベン
トデータ群の小節終了イベントデータに対応する第1ワ
ードの値は0xff11(図6(b) 参照)、コマンドイ
ベントデータ群のプログラムチェンジイベントデータに
対応する第1ワードの値は0xff20となる。コント
ロールイベントデータの第2ワードは、そのコントロー
ルイベントデータに対応する制御が実行される小節の先
頭からの時間位置を、前述した適当な単位でカウントし
た値である。コントロールイベントデータの第3ワード
には、コントロールコード以外に必要なコントロール値
が格納される。例えばメタイベントデータ群のテンポイ
ベントデータの第3ワードにはテンポ番号、ジャンプイ
ベントデータ群のジャンプイベントデータの第3ワード
には配列SNG_SONG(図4(c) )内でのジャンプ
先のイベントデータの要素番号、コマンドイベントデー
タ群のプログラムチェンジイベントデータの第3ワード
には音色番号が格納される。
The control event data shown in FIG. 5 (b) is event data other than the note event data described above, which is necessary for controlling the reproduction of music, and the most significant bit of the first word is 1. This distinguishes it from note event data. This control event data further includes a meta event data group, a jump event data group, and a command event data group.
Classified into one. The meta event data group includes information about the tempo, time signature, and key of the entire song. The jump event data group includes track end,
It includes information about the position control of event data such as the end of a bar and jump to the next processing data. Further, the command event data group includes information for adding a modifying effect to the musical sound, such as volume, program change (tone color), and vendor. The lower 7 bits of the first word of the control event data indicate a control code, and the control content is determined by this code. For example, the value of the first word corresponding to the tempo event data of the meta event data group is 0xff00, the value of the first word corresponding to the bar end event data of the jump event data group is 0xff11 (see FIG. 6 (b)), the command The value of the first word corresponding to the program change event data in the event data group is 0xff20. The second word of the control event data is a value obtained by counting the time position from the beginning of the bar where the control corresponding to the control event data is executed, in the appropriate unit described above. In the third word of the control event data, a necessary control value other than the control code is stored. For example, the third word of the tempo event data of the meta event data group is the tempo number, and the third word of the jump event data of the jump event data group is the event data of the jump destination in the array SNG_SONG (Fig. 4 (c)). A tone color number is stored in the third word of the program change event data of the element number and command event data group.

【0040】次に、上述したコントロールイベントデー
タのうちのジャンプイベントデータ群を構成する4種類
のイベントデータについて説明する。図6は、これら4
種類のイベントデータのそれぞれのデータフォーマット
を示す図である。
Next, four types of event data forming the jump event data group of the above-mentioned control event data will be described. FIG. 6 shows these four
It is a figure which shows each data format of event data of a kind.

【0041】まず、図6(a) のトラック終了イベントデ
ータは、各トラックのイベントデータ群の終了位置にそ
のトラックの最終のイベントデータとして挿入される。
次に、図6(b) の小節終了イベントデータは、各小節の
イベントデータ群の終了位置にその小節の最終イベント
データとして挿入される。
First, the track end event data of FIG. 6A is inserted at the end position of the event data group of each track as the final event data of that track.
Next, the bar end event data of FIG. 6B is inserted at the end position of the event data group of each bar as the final event data of that bar.

【0042】更に、図6(c) のジャンプイベントデータ
と図6(d) のジャンプソースイベントデータは、図4
(c) の配列SNG_SONGにおいて、1つの小節内の
イベントデータ群が512イベントずつの2つのイベン
トデータブロックに分割される場合に、それぞれ、第1
番目のイベントデータブロックの末尾と第2番目のイベ
ントデータブロックの先頭に記憶される。この場合、ジ
ャンプイベントデータの第3ワードには配列SNG_S
ONG内でのジャンプ先のイベントデータの要素番号が
格納され、ジャンプソースイベントデータの第3ワード
には同じくジャンプ元のイベントデータの要素番号が格
納される。
Further, the jump event data of FIG. 6 (c) and the jump source event data of FIG. 6 (d) are shown in FIG.
In the array SNG_SONG of (c), when the event data group in one bar is divided into two event data blocks of 512 events, respectively,
It is stored at the end of the second event data block and at the beginning of the second event data block. In this case, the array SNG_S is included in the third word of the jump event data.
The element number of the event data of the jump destination in the ONG is stored, and the element number of the event data of the jump source is also stored in the third word of the jump source event data.

【0043】なお、図6(a) 〜(d) に示される4種類の
イベントデータについて、イベントデータの編集処理及
び再生処理においては、第1ワードにより現在処理イベ
ントデータがジャンプイベントデータ群に属するイベン
トであることが認識された時点で、各々のイベントデー
タに対応した処理が即座に実行される。従って、これら
各イベントデータの第2ワードは任意の値でよい。ま
た、トラック終了イベントデータと小節終了イベントデ
ータの第3ワードも任意の値でよい。
Regarding the four types of event data shown in FIGS. 6A to 6D, in the event data editing process and reproducing process, the currently processed event data belongs to the jump event data group by the first word. When the event is recognized, the process corresponding to each event data is immediately executed. Therefore, the second word of each of these event data may have any value. Also, the third word of the track end event data and the bar end event data may be any value.

【0044】以上説明した図3〜図6の楽曲データのデ
ータフォーマットが採用されることにより、自動演奏に
関する制御を非常に効率的に実行することが可能とな
る。なお、ここでは、自動演奏全体のデータを主に意図
する場合に楽曲データの表現を用いており、この楽曲デ
ータがシーケンスデータに対応する。
By adopting the data format of the music data of FIGS. 3 to 6 explained above, it becomes possible to execute the control relating to the automatic performance very efficiently. Here, the expression of music data is used mainly when the data of the entire automatic performance is intended, and this music data corresponds to the sequence data.

【0045】上記データフォーマットでRAM203に
記録された楽曲データに対し、ユーザはクウォンタイズ
を行うことができる。このクウォンタイズは、指定され
た範囲内のイベントデータの発音開始タイミングを自動
的に変更するものである。
The user can quantize the music data recorded in the RAM 203 in the above data format. In this quantize, the sounding start timing of the event data within the designated range is automatically changed.

【0046】クウォンタイズする範囲の指定は、以下の
ようにして行う。図7を参照して説明する。図7は、ク
ウォンタイズ処理の範囲指定方法を説明する図である。
テレビ110に表示されているイベントデータに対して
実際に範囲を指定し、その後、クウォンタイズを行った
結果までの様子を表している。
The range to be quantized is specified as follows. This will be described with reference to FIG. FIG. 7 is a diagram illustrating a range specifying method of the quantize process.
The state up to the result of actually specifying a range for the event data displayed on the television 110 and then performing quantize is shown.

【0047】先ず、図7(a)に表示されているイベン
トデータの見方について、最上段、及び最下段の行のイ
ベントデータを例にとり、その順序で説明する。最上段
に表示されているイベントデータは、基本的に3つの項
目からなる。具体的には、“0001/1/000”、
“PRGCHG 001”、“PIANO”の3項目で
ある。
First, how to view the event data displayed in FIG. 7A will be described in the order of the event data of the uppermost row and the lowermost row as an example. The event data displayed at the top is basically composed of three items. Specifically, "0001/1/000",
There are three items, “PRGCHG 001” and “PIANO”.

【0048】最初の項目“0001/1/000”は、
そのイベントデータによる処理が行われる開始タイミン
グを示すタイミング項目である。スラッシュで区切られ
た各数値は、左から、小節番号、拍数、その拍数内にお
けるタイミング(ステップ数)を表している。第1の実
施の形態では、1拍の分解能を480クロックとしてい
る。そのタイミングは、この分解能を基に表現された値
である。上記ステップ数は、クロック数で表現したその
拍数内におけるタイミングを示している。
The first item "0001/1/000" is
It is a timing item indicating the start timing at which the process based on the event data is performed. Each numerical value separated by a slash represents, from the left, the bar number, the number of beats, and the timing (the number of steps) within that number of beats. In the first embodiment, the resolution of one beat is 480 clocks. The timing is a value expressed based on this resolution. The number of steps indicates the timing within the number of beats expressed by the number of clocks.

【0049】次の項目“PRGCHG 001”は、そ
のイベントデータのコマンドの種類を示すコマンド項目
である。この場合は、音色の変更を指定するコントロー
ルイベントデータであり、音色番号が“001”の音色
を指定したことを表している。
The next item "PRGCHG 001" is a command item indicating the command type of the event data. In this case, the control event data designates the change of the tone color, and indicates that the tone color of the tone color number "001" is designated.

【0050】最後の項目“PIANO”は、音色番号
“001”に対応する音色の種類を示すパラメータ項目
である。この場合、音色番号“001”はピアノである
ことを表している。
The last item "PIANO" is a parameter item indicating the type of tone color corresponding to the tone color number "001". In this case, the timbre number "001" represents that it is a piano.

【0051】最下段に表示されているイベントデータ
は、そのデータが以下の内容であることを示している。
その最初の項目“0001/3/120”については、
上記最上段のそれと見方は同じである。このため、それ
に続く項目の意味について説明する。
The event data displayed at the bottom shows that the data has the following contents.
Regarding the first item "0001/3/120",
The view from the top is the same. Therefore, the meanings of the items that follow will be described.

【0052】最初の項目に続く2番目の項目“NOT
E”は、そのイベントデータのコマンドの種類が発音コ
マンドであることを示す。以下、3番目の項目“G4”
はその音高、4番目の項目“80”はベロシティ、最後
の項目“720”はゲートタイムをそれぞれ示してい
る。
The second item "NOT" following the first item
"E" indicates that the command type of the event data is a sounding command. Hereinafter, the third item "G4"
Indicates the pitch, the fourth item “80” indicates velocity, and the last item “720” indicates gate time.

【0053】上記のように表現されているイベントデー
タに対する範囲の指定、及びクウォンタイズ処理の開始
は、カーソルキーであるスイッチSW6〜SW9、及び
スイッチSW1を用いて行う。
Designation of the range for the event data expressed as described above and start of the quantize process are performed using the switches SW6 to SW9 and the switch SW1 which are cursor keys.

【0054】具体的には、先ず、スイッチSW6〜SW
9を用いて、画面上に枠で表示されているカーソルを所
望する範囲の先頭に移動させた後、スイッチSW1を操
作する。これにより、範囲の先頭位置が指定される。図
7(a)は初期状態であり、図7(b)は、図7(a)
の初期状態からカーソルを移動させて、範囲の先頭位置
を指定したときの状態を示している。
Specifically, first, the switches SW6 to SW6
After using 9 to move the cursor displayed in a frame on the screen to the beginning of the desired range, the switch SW1 is operated. As a result, the start position of the range is designated. 7A shows the initial state, and FIG. 7B shows the state shown in FIG.
The state is shown when the cursor is moved from the initial state of and the start position of the range is specified.

【0055】範囲の先頭位置を指定した後は、次に範囲
の終了位置を指定する。これは、範囲の先頭位置の指定
と同様の操作で指定する。図7(c)は、図7(b)の
状態からカーソルを移動させて、範囲の終了位置を指定
した状態を示している。
After the start position of the range is designated, the end position of the range is designated next. This is specified by the same operation as the specification of the start position of the range. FIG. 7C shows a state in which the cursor is moved from the state of FIG. 7B and the end position of the range is designated.

【0056】このようにして先頭位置と終了位置を指定
することで、クウォンタイズする範囲が確定する。その
後、再度スイッチSW1を操作すると、指定された範囲
内を処理対象としたクウォンタイズ処理が行われる。図
7(d)は、クウォンタイズ処理後の状態を示してい
る。
By specifying the start position and end position in this way, the range to be quantized is determined. After that, when the switch SW1 is operated again, the quantizing process for the process within the designated range is performed. FIG. 7D shows the state after the quantize process.

【0057】次に、上記CPU201がROM202に
記憶された制御プログラムを実行する動作として実現さ
れる各種処理について、図8〜図10の動作フローチャ
ート、及び図11の説明図を参照して説明する。
Next, various kinds of processing realized as an operation in which the CPU 201 executes the control program stored in the ROM 202 will be described with reference to the operation flowcharts of FIGS. 8 to 10 and the explanatory view of FIG.

【0058】最初に、全体処理について、図8に示すそ
の動作フローチャートを参照して説明する。特には図示
しない電源スイッチをユーザが投入(オン)すると、先
ず、ステップ801において、CPU201内のレジス
タ、及びRAM203のワーク領域のクリア、及び初期
設定といったイニシャル処理を行う。このイニシャル処
理が終了すると、ステップ802の処理に移行する。
First, the overall processing will be described with reference to the operation flowchart shown in FIG. Particularly, when a user turns on (turns on) a power switch (not shown), first, in step 801, initial processing such as clearing a register in the CPU 201 and a work area of the RAM 203, and initial setting is performed. When this initial process ends, the process moves to step 802.

【0059】ステップ802では、ユーザがスイッチ群
102に行った操作内容に応じるための処理であるスイ
ッチ処理を行う。続くステップ803において、ユーザ
が鍵盤101に行った操作内容に応じて楽音を発音させ
る鍵盤処理といったその他の処理を実行し、その後、ス
テップ802の処理に戻る。
In step 802, a switch process is performed to respond to the contents of the operation performed on the switch group 102 by the user. In the following step 803, other processing such as keyboard processing for causing the user to sound a musical tone according to the content of the operation performed on the keyboard 101 is executed, and then the processing returns to step 802.

【0060】このように、ステップ802〜803の処
理を繰り返すことにより、ユーザがスイッチ群102、
鍵盤101等に対して行った操作に対応して、電子楽器
100が動作する。
As described above, by repeating the processing of steps 802 to 803, the user can switch group 102,
The electronic musical instrument 100 operates in response to an operation performed on the keyboard 101 or the like.

【0061】次に、上記ステップ802のスイッチ処理
について、図9に示すその動作フローチャートを参照し
て詳細に説明する。先ず、ステップ901では、スイッ
チSW1がオンされたか否か判定する。スイッチSW1
は、上述したように、イベントデータに対するクウォン
タイズを指示するためのスイッチである。ユーザがこの
スイッチSW1を操作した場合、その判定はYESとな
ってステップ902の処理に移行する。そうでない場
合、その判定はNOとなってステップ907の処理に移
行する。
Next, the switch processing in step 802 will be described in detail with reference to the operation flowchart shown in FIG. First, in step 901, it is determined whether the switch SW1 is turned on. Switch SW1
Is a switch for instructing the quantize on the event data, as described above. When the user operates the switch SW1, the determination becomes YES and the process proceeds to step 902. Otherwise, the determination is no and the process moves to step 907.

【0062】ステップ902では、クウォンタイズ処理
フラグの値の判定を行う。ステップ902に続く処理
は、クウォンタイズ処理フラグの値に応じて行われる。
図7を参照して説明したように、クウォンタイズ処理す
る範囲指定、及びその処理の実行は、スイッチSW1を
用いて行われる。上記クウォンタイズ処理フラグは、ス
イッチSW1に対する操作に応じて、範囲指定からクウ
ォンタイズ処理の実行までの進行を管理するための変数
である。この変数は、CPU201内のレジスタ、或い
はRAM203に保持される。
At step 902, the value of the quantize processing flag is determined. The process following step 902 is performed according to the value of the quantize process flag.
As described with reference to FIG. 7, the switch SW1 is used to specify the range of the quantize process and to execute the process. The quantize processing flag is a variable for managing the progress from the range designation to the execution of the quantize processing according to the operation on the switch SW1. This variable is held in the register in the CPU 201 or the RAM 203.

【0063】ステップ902において、クウォンタイズ
処理フラグの値は0と判定した場合、次にステップ90
3の処理が実行される。ステップ903では、クウォン
タイズ範囲の先頭位置が指定されたとして、カーソルが
表示されているイベントデータをその先頭位置として登
録する。また、この先頭位置の登録の他に、クウォンタ
イズ処理フラグのインクリメント(=1)を行う。その
後、ステップ906の処理に移行する。
If it is determined in step 902 that the value of the quantize processing flag is 0, then in step 90
Step 3 is executed. In step 903, assuming that the start position of the quantize range is designated, the event data where the cursor is displayed is registered as the start position. In addition to the registration of the start position, the quantize process flag is incremented (= 1). Then, the process proceeds to step 906.

【0064】ステップ902において、クウォンタイズ
処理フラグの値は1と判定した場合、次にステップ90
4の処理が実行される。ステップ904では、クウォン
タイズ範囲の終了位置が指定されたとして、カーソルが
表示されているイベントデータをその終了位置として登
録する。また、この終了位置の登録の他に、クウォンタ
イズ処理フラグのインクリメント(=2)を行う。その
後、ステップ906の処理に移行する。
If it is determined in step 902 that the value of the quantize processing flag is 1, then step 90
4 is executed. In step 904, assuming that the end position of the quantize range is designated, the event data in which the cursor is displayed is registered as the end position. In addition to the registration of the end position, the quantize process flag is incremented (= 2). Then, the process proceeds to step 906.

【0065】ステップ902において、クウォンタイズ
処理フラグの値は2と判定した場合、次にステップ90
5の処理が実行される。ステップ905では、ステップ
903、及び904の処理が実行されたことで確定した
範囲のイベントデータを対象として、クウォンタイズ処
理を実行する。このクウォンタイズ処理が実行されるこ
とで、クウォンタイズ処理フラグはリセット、即ちクウ
ォンタイズ処理フラグには0が代入される。その後、ス
テップ906の処理に移行する。このクウォンタイズ処
理の詳細については後述する。
If it is determined in step 902 that the value of the quantize processing flag is 2, then in step 90
Process 5 is executed. In step 905, the quantize process is executed for the event data in the range determined by executing the processes of steps 903 and 904. By executing this quantize process, the quantize process flag is reset, that is, 0 is substituted into the quantize process flag. Then, the process proceeds to step 906. The details of this quantizing process will be described later.

【0066】ステップ603では、スイッチ群102の
他のスイッチ対してユーザが行った操作に応じたその他
の処理を実行する。このその他の処理が終了すると、こ
こで一連の処理を終了し、その後、図8のステップ80
3のその他の処理が実行される。
At step 603, other processing corresponding to the operation performed by the user on the other switches of the switch group 102 is executed. When this other processing ends, a series of processing ends here, and then step 80 in FIG.
The other processing of No. 3 is executed.

【0067】上記ステップ901において、スイッチS
W1がオンされなかったと判定した場合、ステップ90
7の処理に移行する。ステップ907では、スイッチS
W2がオンされたか否か判定する。このスイッチSW2
は、クウォンタイズ処理への進行をキャンセル、即ち最
初の状態に戻すことを指示するためのスイッチである。
ユーザがスイッチSW2を操作した場合、その判定はY
ESとなってステップ908の処理に移行する。そうで
ない場合、その判定はNOとなってステップ906の処
理に移行する。
In step 901, the switch S
If it is determined that W1 has not been turned on, step 90
The process shifts to 7. In step 907, the switch S
It is determined whether W2 is turned on. This switch SW2
Is a switch for instructing to cancel the progress to the quantize process, that is, to return to the initial state.
When the user operates the switch SW2, the determination is Y
It becomes ES and shifts to the processing of step 908. Otherwise, the determination is no and the process moves to step 906.

【0068】ステップ908では、それまでの進行を全
て無効とするためのキャンセル処理を行う。このキャン
セル処理が実行されることで、それまでに先頭位置、及
び終了位置が指定されていた場合にはそれらの情報が消
去され、クウォンタイズ処理フラグには0が代入され
る。この処理が終了すると、ステップ906の処理に移
行する。
In step 908, cancel processing is performed to invalidate all the progress up to that point. By executing this cancel processing, if the start position and the end position have been designated by then, those information are erased, and 0 is substituted for the quantize processing flag. When this process ends, the process moves to step 906.

【0069】図10は、上記ステップ905のクウォン
タイズ処理の動作フローチャートである。同図を参照し
て、その処理動作を詳細に説明する。処理動作を説明す
る前に、第1の実施の形態によるクウォンタイズの処理
方法について、図11を参照して説明する。図11は、
各拍子における1小節の時間的長さを示す図である。時
間的長さは、第1の実施の形態における分解能、即ち1
拍あたりのクロック数を480として表現している。な
お、拍子は、小節のクロック数により定義(設定)され
るパラメータである。
FIG. 10 is an operation flowchart of the quantize process in step 905. The processing operation will be described in detail with reference to FIG. Before describing the processing operation, the method of processing the quantize according to the first embodiment will be described with reference to FIG. FIG.
It is a figure which shows the time length of one bar | burr in each time signature. The time length is the resolution in the first embodiment, that is, 1
The number of clocks per beat is expressed as 480. The time signature is a parameter defined (set) by the number of clocks in the measure.

【0070】図11では、上段から、4/4拍子、17
/16拍子、9/8拍子の各拍子におけるその時間的長
さをクロック数で表現している。1拍(4分音符)あた
りのクロック数、即ち分解能は、第1の実施の形態にあ
わせて480としている。従って、例えば4/4拍子を
例にとれば、その小節のクロック数は1920(=48
0×4)となる。実際上では、小節の先頭のクロック数
の値を0とすることから、4/4拍子の1小節内の時間
的位置は、0〜1919までのクロック数で表現され
る。同じ理由により、1拍目とは0〜479までのクロ
ック数であり、480は2拍目の先頭となる。以下同様
であり、クロック数が1920のときは次の小節の先頭
となる。
In FIG. 11, from the top, 4/4 time, 17
The time length in each of the / 16 time signature and the 9/8 time signature is represented by the number of clocks. The number of clocks per beat (quarter note), that is, the resolution is set to 480 according to the first embodiment. Therefore, for example, in the case of the 4/4 time signature, the clock number of the bar is 1920 (= 48).
0x4). In practice, since the value of the number of clocks at the beginning of the bar is set to 0, the temporal position within one bar of 4/4 time is represented by the number of clocks from 0 to 1919. For the same reason, the first beat is the number of clocks from 0 to 479, and 480 is the head of the second beat. The same applies hereinafter, and when the number of clocks is 1920, it is the beginning of the next bar.

【0071】なお、他の拍子においては、17/16拍
子のクロック数は2040(=480×4×17/1
6)、9/8拍子のクロック数は2160(=480×
4×9/8)である。
In other beats, the number of clocks in 17/16 beat is 2040 (= 480 × 4 × 17/1).
6), the number of clocks of 9/8 beat is 2160 (= 480 x
4 × 9/8).

【0072】従来、クウォンタイズ処理は、指定された
範囲を均等割し、その均等割したタイミングに、イベン
トデータの発音開始タイミングを変更することで、その
タイミングのズレを修正することを基本としている。し
かし、第1の実施の形態では、たとえ複数の小節を含む
範囲が指定されたとしても、各小節毎に分けて、その小
節内のイベントデータに対するクウォンタイズを行うよ
うにしている。
Conventionally, the quantize processing is basically based on correcting the deviation of the timing by equally dividing the designated range and changing the sounding start timing of the event data at the evenly divided timing. . However, in the first embodiment, even if a range including a plurality of measures is specified, each event is divided into each measure and the event data in the measure is quantized.

【0073】小節毎のクウォンタイズ処理は、以下のよ
うにして行われる。例えば4/4拍子で4分音符単位の
クウォンタイズ処理を行う場合、小節内のイベントデー
タの発音開始タイミングは、図11において縦線で示す
何れかのタイミングに合わせられる。同様に、17/1
6拍子、9/8拍子の各拍子の小節に対し、1拍の単位
となる音符でクウォンタイズ処理を行った場合、その小
節のイベントデータの発音開始タイミングは、それぞれ
において縦線で示す何れかのタイミングに修正される。
The quantize process for each bar is performed as follows. For example, in the case of performing a quantize process in quarter note units with a time signature of 4/4, the sounding start timing of the event data in the bar is matched with any of the timings shown by vertical lines in FIG. Similarly, 17/1
When the quantize process is performed for each 6-beat and 9 / 8-beat measure with a note that is a unit of one beat, the sounding start timing of the event data for that measure is indicated by a vertical line in each. Will be corrected to the timing of.

【0074】発音開始タイミングの修正は、例えば隣り
合う縦線で示す修正後のタイミングの間に位置している
発音開始タイミングを、その何れかのタイミングに合わ
せるかを示す比率(オフセット)に従って行われる。例
えばそのオフセットを50パーセントとした場合、4/
4拍子の小節において、3拍目(クロック数が144
0)と4拍目(クロック数が1919)の間に位置して
いる発音タイミングは、クロック数1680(=192
0−480/2)を境として、それよりもクロック数が
小さければそのクロック数を1440に、反対にそれよ
りも大きければそのクロック数を1920、即ち次小節
の先頭にそれぞれ修正される。
The modification of the sound generation start timing is performed in accordance with, for example, a ratio (offset) indicating which one of the sound generation start timings positioned between the corrected timings shown by the adjacent vertical lines is matched. . For example, if the offset is 50%, 4 /
The third beat (clock number 144
The tone generation timing located between the 0th and the 4th beat (the clock number is 1919) is the clock number 1680 (= 192
0-480 / 2) as a boundary, if the number of clocks is smaller than that, the number of clocks is corrected to 1440, and if it is larger than that, the number of clocks is corrected to 1920, that is, to the beginning of the next bar.

【0075】このようなクウォンタイズ処理を、各小節
毎に独立させて行うことにより、クウォンタイズ処理さ
れる範囲内のある小節の拍子(クロック数)を変更させ
ても、その変更が他の小節に影響することが回避され
る。このため、小節の拍子(クロック数)を変更したこ
とで、イベントデータの発音開始タイミングがユーザが
意図したものと大きくかけ離れるということがなくな
り、ユーザは意図したクウォンタイズを容易にかけるこ
とができるようになる。
By performing such quantizing processing independently for each bar, even if the time signature (clock number) of a bar within the range to be quantized is changed, the change will not occur. It is avoided to affect. Therefore, by changing the time signature (clock number) of the measure, the sound generation start timing of the event data does not differ greatly from what the user intended, and the user can easily apply the intended quantize. Like

【0076】図10の説明に戻り、第1の実施の形態に
よるクウォンタイズ処理について、その動作フローチャ
ートを参照して説明する。先ず、ステップ1001で
は、クウォンタイズ処理の実行のために、RAM203
のワーク領域の確保といったイニシャル処理を実行す
る。このイニシャル処理が終了すると、ステップ100
2の処理に移行する。
Returning to the description of FIG. 10, the quantize process according to the first embodiment will be described with reference to the operation flowchart. First, in step 1001, the RAM 203 is used to execute the quantize process.
Performs initial processing such as securing the work area. When this initial process ends, step 100
The process shifts to 2.

【0077】ステップ1002では、現在小節が示す小
節のクロック数の調査を行う。この現在小節は、CPU
201内のレジスタ、或いはRAM203に保持される
変数であり、現在において処理すべき小節を示す値が代
入される。ステップ1001のイニシャル処理では、こ
の現在小節に、図9のステップ903で登録された先頭
位置の小節を示す値を代入している。
In step 1002, the clock number of the bar indicated by the current bar is investigated. This current measure is CPU
It is a register held in 201 or a variable held in RAM 203, and a value indicating a bar to be processed at present is substituted. In the initial processing of step 1001, the value indicating the measure at the head position registered in step 903 of FIG. 9 is substituted for this current measure.

【0078】なお、小節のクロック数は、次小節の先頭
のイベントデータに、第2ワードとして格納されている
(図5参照)。その次小節の先頭のイベントデータは、
図4に示すように、配列SNG_BAR_TBLから配
列SNG_BAR_PTRのクウォンタイズ処理するト
ラックの先頭要素番号が格納されている領域を特定し、
その特定した配列SNG_BAR_PTRの領域内の先
頭要素番号を順次検索していくことで、配列SNG_S
ONG内のそのデータにアクセスする。
The number of clocks of the bar is stored as the second word in the event data at the beginning of the next bar (see FIG. 5). The event data at the beginning of the next bar is
As shown in FIG. 4, an area in which the head element number of the track to be quantized in the array SNG_BAR_TBL is specified from the array SNG_BAR_TBL,
By sequentially searching for the top element number in the area of the specified array SNG_BAR_PTR, the array SNG_S
Access that data in the ONG.

【0079】ステップ1002で小節のクロック数を得
ると、ステップ1003の処理に移行する。このステッ
プ1003では、次小節に移動させるべき発音開始タイ
ミングのクロック数を調査する。
When the number of bars of the measure is obtained in step 1002, the process proceeds to step 1003. In this step 1003, the number of clocks at the tone generation start timing to be moved to the next bar is investigated.

【0080】この調査により、例えば小節の拍子が4/
4拍子で、オフセットが50パーセントとした場合に
は、図11に示すように、次小節に移動させるべきタイ
ミングとしてクロック数1680が算出されることにな
る。
According to this survey, for example, the time signature of the measure is 4 /
If the offset is 50% with four beats, as shown in FIG. 11, the number of clocks 1680 is calculated as the timing to move to the next bar.

【0081】ステップ1003に続くステップ1004
では、現在小節が示す小節にイベントデータがないか否
か判定する。その小節内にイベントデータがなかった場
合、その判定はYESとなってステップ1011の処理
に移行する。そうでない場合、その判定はNOとなって
ステップ1005の処理に移行する。
Step 1004 following step 1003
Then, it is determined whether or not there is event data in the measure indicated by the current measure. If there is no event data in the measure, the determination is yes and the process moves to step 1011. Otherwise, the determination is no and the process moves to step 1005.

【0082】ステップ1005では、その小節の先頭イ
ベントデータを設定する。このときには、図11を参照
して説明したように、4分音符等のクウォンタイズにお
ける単位、及びオフセットに基づき、それの発音開始タ
イミングが修正される。
At step 1005, the head event data of the bar is set. At this time, as described with reference to FIG. 11, the tone generation start timing of the quarter note or the like is corrected based on the unit and the offset in the quantize.

【0083】ステップ1005に続くステップ1006
では、前に処理したイベントデータが小節の最後のイベ
ントデータか否か判定する。処理対象の小節内のイベン
トデータを全て処理した場合、その判定はYESとなっ
てステップ1011の処理に移行する。そうでない場
合、その判定はNOとなってステップ1007の処理に
移行する。
Step 1006 following step 1005
Then, it is determined whether the previously processed event data is the last event data of the bar. If all the event data in the measure to be processed have been processed, the determination becomes YES and the process moves to step 1011. Otherwise, the determination is no and the process moves to step 1007.

【0084】ステップ1007では、次に処理するイベ
ントデータは次小節に移動させるべきイベントデータで
あるか否か判定する。この判定は、ステップ1003の
調査で得たクロック数と、そのイベントデータの小節先
頭からのクロック数(図5参照)とを比較することで行
われる。そのイベントデータの小節先頭からのクロック
数が調査で得たクロック数以上であった場合、その判定
はYESとなってステップ1009の処理に移行する。
そうでない場合、その判定はNOとなってステップ10
08の処理に移行する。
In step 1007, it is determined whether the event data to be processed next is the event data to be moved to the next bar. This determination is made by comparing the number of clocks obtained in the investigation in step 1003 with the number of clocks from the beginning of the bar of the event data (see FIG. 5). If the number of clocks from the beginning of the bar of the event data is equal to or greater than the number of clocks obtained in the investigation, the determination is YES and the process proceeds to step 1009.
Otherwise, the determination is no and step 10
The processing shifts to 08.

【0085】ステップ1008では、それが属する小節
内でそのイベントデータの発音開始タイミング、即ち小
節先頭からのクロック数の変更を行う。他方のステップ
1009では、次小節の先頭タイミングとなるように、
それの小節先頭からのクロック数を変更する。このステ
ップ1009の処理では、必要に応じて、図4に示す配
列SNG_BAR_PTR内のデータの書き換えも行わ
れる。
In step 1008, the tone generation start timing of the event data, that is, the number of clocks from the beginning of the bar is changed in the bar to which it belongs. On the other hand, in step 1009, the start timing of the next bar is reached.
Change the number of clocks from the beginning of that bar. In the process of step 1009, the data in the array SNG_BAR_PTR shown in FIG. 4 is rewritten if necessary.

【0086】ステップ1008、或いは1009の処理
が終了すると、ステップ1010の処理に移行する。こ
のステップ1010では、現在小節が示す小節内の次の
イベントデータの読み出しを行う。この読み出しが終了
した後、ステップ1006の処理に戻る。
When the process of step 1008 or 1009 is completed, the process proceeds to step 1010. In this step 1010, the next event data in the bar indicated by the current bar is read. After this reading is completed, the process returns to step 1006.

【0087】上記ステップ1006〜1010の処理ル
ープを繰り返し行うことで、現在小節が示す小節内の各
イベントデータは、順次処理され、その発音開始タイミ
ング、即ち小節先頭からのクロック数が必要に応じて変
更される。
By repeating the processing loop of steps 1006 to 1010 described above, each event data in the bar indicated by the current bar is sequentially processed, and its sounding start timing, that is, the number of clocks from the beginning of the bar is determined as necessary. Be changed.

【0088】一方、ステップ1011では、現在小節が
示す小節は処理最終小節か否か判定する。現在小節が示
す小節が、図9のステップ904で登録された終了位置
の小節であった場合、その判定はYESとなってステッ
プ1012の処理に移行する。そうでない場合、その判
定はNOとなってステップ1013の処理に移行する。
On the other hand, in step 1011, it is determined whether or not the measure indicated by the current measure is the last measure to be processed. If the measure indicated by the current measure is the measure at the end position registered in step 904 of FIG. 9, the determination is yes and the process moves to step 1012. Otherwise, the determination is no and the process moves to step 1013.

【0089】ステップ1012では、ユーザが指定した
範囲のクウォンタイズが終了したことから、クウォンタ
イズ処理フラグに0を代入する。その後、一連の処理を
終了する。
At step 1012, since the quantizing within the range designated by the user is completed, 0 is substituted into the quantizing processing flag. Thereafter, a series of processing ends.

【0090】ステップ1013では、ユーザが指定した
範囲のクウォンタイズが終了していないことから、現在
小節をインクリメントする。このインクリメントが終了
した後、ステップ1002の処理に戻る。
At step 1013, since the quantize in the range designated by the user has not been completed, the current measure is incremented. After this increment is completed, the process returns to step 1002.

【0091】なお、第1の実施の形態では、イベントデ
ータの種類に関わらず、クウォンタイズを行っている
が、例えばノートイベントデータのみに限定して、クウ
ォンタイズを行うようにしても良い。また、場合によっ
ては、その逆としても良い。
In the first embodiment, the quantize is carried out regardless of the type of the event data, but the quantize may be carried out only for note event data. In some cases, the reverse is also possible.

【0092】また、クウォンタイズの範囲指定、及びク
ウォンタイズ処理の実行は、同一のスイッチSW1を用
いて行うようにしているが、複数のスイッチに役割分担
させて、それらを行わせるようにしても良い。
Further, although the quantizing range is specified and the quantizing process is executed by using the same switch SW1, it is possible to divide the roles among a plurality of switches and execute them. good.

【0093】また、幅広いクウォンタイズがかけられる
ように、上記オフセットを任意に指定できるようにした
り、基準からの有効範囲をきめるセンシティビティ等を
用意しても良い。
Further, the above offset may be arbitrarily designated so that a wide range of quantization can be applied, and sensitivity or the like for determining the effective range from the reference may be prepared.

【0094】次に、第2の実施の形態について説明す
る。第1の実施の形態では、小節毎にクウォンタイズを
行った結果、イベントデータを次小節に移動させても、
クウォンタイズ処理した小節がフォーマット上の最終小
節であった場合、移動させる小節が存在しないことか
ら、その移動させたイベントデータは発音されないこと
になる。第2の実施の形態は、このような発音されなく
なるイベントデータの発生を回避するようにしたもので
ある。
Next, a second embodiment will be described. In the first embodiment, even if the event data is moved to the next bar as a result of quantizing each bar,
If the measure that has been quantized is the final measure in the format, there is no measure to move, so the moved event data will not be sounded. The second embodiment is designed to avoid the occurrence of such event data that causes no sound.

【0095】この第2の実施の形態は、第1の実施の形
態の構成と基本的に同じである。このため、第1の実施
の形態と同じ符号を用いて、第1の実施の形態から異な
る部分についてのみ説明する。
The second embodiment is basically the same as the configuration of the first embodiment. Therefore, the same reference numerals as in the first embodiment are used, and only the parts different from the first embodiment will be described.

【0096】図12は、第2の実施の形態によるクウォ
ンタイズ処理の動作フローチャートである。このクウォ
ンタイズ処理は、図9のステップ905の処理として実
行される。この図12を参照して、その処理動作を説明
する。
FIG. 12 is an operation flowchart of the quantize process according to the second embodiment. This quantize process is executed as the process of step 905 in FIG. The processing operation will be described with reference to FIG.

【0097】先ず、ステップ1201では、クウォンタ
イズ処理の実行のために、RAM203のワーク領域の
確保といったイニシャル処理を実行する。このイニシャ
ル処理が終了すると、ステップ1202の処理に移行す
る。
First, in step 1201, initial processing such as securing a work area of the RAM 203 is executed to execute the quantize processing. When this initial process ends, the process moves to step 1202.

【0098】ステップ1202では、現在小節が示す小
節のクロック数の調査を行う。この現在小節は、CPU
201内のレジスタ、或いはRAM203に保持される
変数であり、現在において処理すべき小節を示す値が代
入される。ステップ1201のイニシャル処理では、こ
の現在小節に、図9のステップ903で登録された先頭
位置の小節を示す値を代入している。
In step 1202, the clock number of the bar indicated by the current bar is investigated. This current measure is CPU
It is a register held in 201 or a variable held in RAM 203, and a value indicating a bar to be processed at present is substituted. In the initial process of step 1201, the value indicating the measure at the head position registered in step 903 of FIG. 9 is substituted for this current measure.

【0099】なお、小節のクロック数は、次小節の先頭
のイベントデータに、第2ワードとして格納されている
(図5参照)。その次小節の先頭のイベントデータは、
図4に示すように、配列SNG_BAR_TBLから配
列SNG_BAR_PTRのクウォンタイズ処理するト
ラックの先頭要素番号が格納されている領域を特定し、
その特定した配列SNG_BAR_PTRの領域内の先
頭要素番号を順次検索していくことで、配列SNG_S
ONG内のそのデータにアクセスする。
The number of clocks of the bar is stored as the second word in the event data at the head of the next bar (see FIG. 5). The event data at the beginning of the next bar is
As shown in FIG. 4, an area in which the head element number of the track to be quantized in the array SNG_BAR_TBL is specified from the array SNG_BAR_TBL,
By sequentially searching for the top element number in the area of the specified array SNG_BAR_PTR, the array SNG_S
Access that data in the ONG.

【0100】ステップ1202で小節のクロック数を得
ると、ステップ1203の処理に移行する。このステッ
プ1203では、次小節に移動させるべき発音開始タイ
ミングのクロック数を調査する。
When the clock number of the measure is obtained in step 1202, the process proceeds to step 1203. In this step 1203, the number of clocks at the tone generation start timing to be moved to the next bar is investigated.

【0101】この調査により、例えば小節の拍子が4/
4拍子で、オフセットが50パーセントとした場合に
は、図11に示すように、次小節に移動させるべきタイ
ミングとしてクロック数1680が算出されることにな
る。
According to this investigation, for example, the time signature of the bar is 4 /
If the offset is 50% with four beats, as shown in FIG. 11, the number of clocks 1680 is calculated as the timing to move to the next bar.

【0102】ステップ1203に続くステップ1204
では、現在小節が示す小節にイベントデータがないか否
か判定する。その小節内にイベントデータがなかった場
合、その判定はYESとなってステップ1213の処理
に移行する。そうでない場合、その判定はNOとなって
ステップ1005の処理に移行する。
Step 1204 following step 1203
Then, it is determined whether or not there is event data in the measure indicated by the current measure. If there is no event data in that measure, the determination is yes and the process moves to step 1213. Otherwise, the determination is no and the process moves to step 1005.

【0103】ステップ1205では、その小節の先頭イ
ベントデータを設定する。このときには、図11を参照
して説明したように、4分音符等のクウォンタイズにお
ける単位、及びオフセットに基づき、それの発音開始タ
イミングが修正される。
At step 1205, the leading event data of the bar is set. At this time, as described with reference to FIG. 11, the tone generation start timing of the quarter note or the like is corrected based on the unit and the offset in the quantize.

【0104】ステップ1205に続くステップ1206
では、前に処理したイベントデータが小節の最後のイベ
ントデータか否か判定する。処理対象の小節内のイベン
トデータを全て処理した場合、その判定はYESとなっ
てステップ1213の処理に移行する。そうでない場
合、その判定はNOとなってステップ1207の処理に
移行する。
Step 1206 following step 1205
Then, it is determined whether the previously processed event data is the last event data of the bar. If all the event data in the measure to be processed have been processed, the determination becomes YES and the process moves to step 1213. Otherwise, the determination is no and the process moves to step 1207.

【0105】ステップ1207では、次に処理するイベ
ントデータは次小節に移動させるべきイベントデータで
あるか否か判定する。この判定は、ステップ1203の
調査で得たクロック数と、そのイベントデータの小節先
頭からのクロック数(図5参照)とを比較することで行
われる。そのイベントデータの小節先頭からのクロック
数が調査で得たクロック数以上であった場合、その判定
はYESとなってステップ1210の処理に移行する。
そうでない場合、その判定はNOとなってステップ10
08の処理に移行する。
At step 1207, it is determined whether or not the event data to be processed next is the event data to be moved to the next bar. This determination is made by comparing the number of clocks obtained in the investigation in step 1203 with the number of clocks from the beginning of the bar of the event data (see FIG. 5). If the number of clocks from the beginning of the bar of the event data is equal to or more than the number of clocks obtained in the investigation, the determination is YES and the process proceeds to step 1210.
Otherwise, the determination is no and step 10
The processing shifts to 08.

【0106】ステップ1208では、それが属する小節
内でそのイベントデータの発音開始タイミング、即ち小
節先頭からのクロック数の変更を行う。続くステップ1
209では、現在小節が示す小節内の次のイベントデー
タの読み出しを行う。この読み出しが終了した後、ステ
ップ1206の処理に戻る。
In step 1208, the tone generation start timing of the event data, that is, the number of clocks from the beginning of the bar is changed in the bar to which it belongs. Next step 1
At 209, the next event data in the bar indicated by the current bar is read. After this reading is completed, the process returns to step 1206.

【0107】ステップ1210では、現在小節が示す小
節はフォーマット上の最終小節か否か判定する。その最
終小節のクウォンタイズを行っている場合、その判定は
YESとなってステップ1211の処理に移行する。そ
うでない場合、その判定はNOとなってステップ121
2の処理に移行する。
At step 1210, it is determined whether or not the measure indicated by the current measure is the last measure in the format. If the last measure is quantized, the determination is yes and the process moves to step 1211. Otherwise, the determination is no and step 121.
The process shifts to 2.

【0108】ステップ1211では、現在処理している
イベントデータの小節先頭からのクロック数(発音開始
タイミング)を、それが属している小節の最終タイミン
グに変更する処理を行う。これにより、そのイベントデ
ータが発音されなくなるのが回避されることになる。こ
のとき、最終小節が4/4拍子であった場合、その小節
先頭からのクロック数は1919に変更される。
In step 1211, the number of clocks from the beginning of the bar of the currently processed event data (sound generation start timing) is changed to the final timing of the bar to which it belongs. As a result, it is possible to avoid that the event data is not sounded. At this time, if the last bar has a time signature of 4/4, the number of clocks from the head of the bar is changed to 1919.

【0109】他方のステップ1212では、次小節の先
頭タイミングとなるように、それの小節先頭からのクロ
ック数を変更する。このステップ1212の処理では、
必要に応じて、図4に示す配列SNG_BAR_PTR
内のデータの書き換えも行われる。
On the other hand, in step 1212, the number of clocks from the start of the next bar is changed so that the start timing of the next bar is reached. In the processing of this step 1212,
If necessary, the sequence SNG_BAR_PTR shown in FIG.
The data inside is also rewritten.

【0110】上記ステップ1211、或いは1212の
処理が終了すると、ステップ1209の処理に移行す
る。次に、第3の実施の形態について説明する。
When the processing of the above step 1211 or 1212 is completed, the processing shifts to the processing of step 1209. Next, a third embodiment will be described.

【0111】シーケンサー機能により、ユーザは各種イ
ベントデータの編集(複写、削除、変更等)を行うこと
ができる。しかし、例えばイベントデータの発音開始タ
イミングを、それが属する小節外の発音開始タイミング
に変更してしまった場合には、そのイベントデータ、更
にはそれに続くイベントデータが発音されなかったりす
ることがある。その変更が、他の表示等に関わる処理に
おいても悪影響を及ぼすこともある。第3の実施の形態
は、このような問題が生じないように、発音開始タイミ
ングの変更を制限するようにしたものである。
The sequencer function allows the user to edit (copy, delete, change, etc.) various event data. However, for example, if the sounding start timing of the event data is changed to the sounding start timing outside the bar to which it belongs, the event data and further subsequent event data may not be sounded. The change may adversely affect the processing related to other displays. In the third embodiment, the change of the tone generation start timing is restricted so that such a problem does not occur.

【0112】この第3の実施の形態は、第2の実施の形
態と同様に、第1の実施の形態の構成と基本的に同じで
ある。このため、第1の実施の形態と同じ符号を用い
て、第1の実施の形態から異なる部分についてのみ説明
する。
Like the second embodiment, the third embodiment is basically the same as the configuration of the first embodiment. Therefore, the same reference numerals as in the first embodiment are used, and only the parts different from the first embodiment will be described.

【0113】図13は、第3の実施の形態における、発
音開始タイミングの変更方法を説明する図である。同図
を参照して、その変更方法について説明する。第3の実
施の形態では、図1のスイッチSW2、及びスイッチS
W3を、イベントデータ変更用のスイッチとしている。
また、画面に表示されているカーソルは、第1の実施の
形態と同様に、スイッチSW6〜SW9に対する操作に
応じて画面上を移動する。
FIG. 13 is a diagram for explaining a method of changing the tone generation start timing in the third embodiment. The changing method will be described with reference to FIG. In the third embodiment, the switch SW2 and the switch S of FIG.
W3 is used as a switch for changing event data.
Further, the cursor displayed on the screen moves on the screen according to the operation on the switches SW6 to SW9, as in the first embodiment.

【0114】図13(a)は、スイッチSW2、及びS
W3を操作する前、即ち変更前の状態を示している。こ
の図13(a)においては、最下段の行のステップ数
“240”がカーソルによって指定されている。この状
態において、スイッチSW6(上スイッチ)を操作する
と、カーソルはその一つ上の行のステップ数“000”
に移動し、スイッチSW7(下スイッチ)を操作する
と、画面が下方向にスクロールして、その下の行の現在
表示されていないステップ数に移動し、スイッチSW8
(左スイッチ)を操作すると、その左の拍数“3”に移
動し、スイッチSW9(右スイッチ)を操作すると、そ
の右の“NOTE”に移動する。
FIG. 13A shows switches SW2 and S.
The state before operating W3, that is, before the change is shown. In FIG. 13A, the number of steps "240" in the bottom row is designated by the cursor. When the switch SW6 (upper switch) is operated in this state, the cursor moves to the step number "000" on the line immediately above.
When the switch SW7 (down switch) is operated, the screen scrolls downward to the number of steps not currently displayed on the line below the switch SW8.
When the (left switch) is operated, it moves to the left beat number "3", and when the switch SW9 (right switch) is operated, it moves to the right "NOTE".

【0115】図13(b)は、図13(a)の状態か
ら、スイッチSW3を1回操作した後の状態を示してい
る。図13(a)と図13(b)とを対比すれば判るよ
うに、スイッチSW3はカーソルで指定された項目の値
の減少を指示するスイッチである。他方のスイッチSW
2は、その逆に、値の増加を指示するスイッチである。
なお、“NOTE”のようにイベントデータのコマンド
の種類を表す項目においては、スイッチSW2、或いは
SW3を操作する度に、イベントデータのコマンドの種
類を示す用語が予め定められた順序で変化する。
FIG. 13B shows a state after the switch SW3 is operated once from the state of FIG. 13A. As can be seen by comparing FIGS. 13A and 13B, the switch SW3 is a switch for instructing the decrease of the value of the item designated by the cursor. The other switch SW
On the contrary, 2 is a switch for instructing the increase of the value.
In the item indicating the command type of the event data such as “NOTE”, the term indicating the command type of the event data changes in a predetermined order every time the switch SW2 or SW3 is operated.

【0116】このようにして、ユーザは、スイッチSW
2、SW3、及びSW6〜SW9を操作することによ
り、イベントデータの変更を行うことができる。次に、
第3の実施の形態における各種制御処理について、図1
4〜図18を参照して詳細に説明する。なお、上述した
ように、制御処理においても、第1の実施の形態から異
なる部分についてのみ説明する。
In this way, the user selects the switch SW.
By operating 2, SW3, and SW6 to SW9, the event data can be changed. next,
FIG. 1 shows various control processes according to the third embodiment.
This will be described in detail with reference to FIGS. Note that, as described above, also in the control processing, only the parts different from the first embodiment will be described.

【0117】図14は、第3の実施の形態によるスイッ
チ処理の動作フローチャートである。このスイッチ処理
は、図8のステップ802の処理として実行される。図
14を参照して、第3の実施の形態によるスイッチ処理
について詳細に説明する。
FIG. 14 is an operation flowchart of the switch processing according to the third embodiment. This switch process is executed as the process of step 802 in FIG. The switch processing according to the third embodiment will be described in detail with reference to FIG.

【0118】先ず、ステップ1401では、スイッチS
W1がオンされたか否か判定する。スイッチSW1は、
テレビ110にイベントデータを表示させるイベントリ
ストモードを設定するためのスイッチである。ユーザが
このスイッチSW1を操作し、イベントリストモードを
設定した場合、その判定はYESとなってステップ14
02の処理に移行する。そうでない場合、その判定はN
Oとなってステップ1403の処理に移行する。
First, in step 1401, the switch S
It is determined whether W1 is turned on. The switch SW1 is
This is a switch for setting an event list mode for displaying event data on the television 110. If the user operates the switch SW1 to set the event list mode, the determination is YES and step 14
The processing moves to 02. Otherwise, the decision is N
When it becomes O, the process proceeds to step 1403.

【0119】ステップ1402では、設定されたイベン
トリストモードの機能を実現するためのイベントリスト
モード処理を実行する。その後、ステップ1403の処
理に移行する。このイベントリストモード処理について
の詳細は後述する。
In step 1402, event list mode processing for realizing the set event list mode function is executed. After that, the processing shifts to the processing of step 1403. Details of this event list mode processing will be described later.

【0120】ステップ1703では、スイッチ群102
の他のスイッチ対してユーザが行った操作に応じたその
他の処理を実行する。このその他の処理が終了すると、
ここで一連の処理も終了し、その後、図8のステップ8
03のその他の処理が実行される。
At step 1703, the switch group 102
Other processing according to the operation performed by the user on the other switch is executed. When this other process ends,
Here, a series of processing is also completed, and thereafter, step 8 in FIG.
Other processing of 03 is executed.

【0121】図15は、上記ステップ1402で実行さ
れるイベントリストモード処理の動作フローチャートで
ある。この図15を参照して、イベントリストモード処
理について詳細に説明する。
FIG. 15 is an operation flowchart of the event list mode processing executed in step 1402. The event list mode processing will be described in detail with reference to FIG.

【0122】先ず、ステップ1501では、イベントリ
ストモードが設定されたことに伴う、CPU201のレ
ジスタ、RAM203のワーク領域のクリア、初期設定
等のイニシャル処理を行う。このイニシャル処理では、
ユーザが指定したRAM203の楽曲データ記録領域上
のトラックに記憶されている楽曲データを読み出し、そ
れをテレビ110に表示させる処理も行われる。なお、
このイベントデータが表示された画面を、以降、イベン
トリスト画面と呼ぶことにする。
First, at step 1501, initial processing such as clearing the register of the CPU 201, the work area of the RAM 203, initial setting, etc. is carried out when the event list mode is set. In this initial process,
A process of reading the music data stored in the track on the music data recording area of the RAM 203 designated by the user and displaying the music data on the television 110 is also performed. In addition,
The screen on which this event data is displayed will be referred to as an event list screen hereinafter.

【0123】ステップ1501に続くステップ1502
では、スイッチ群102の各スイッチに割り当てたイベ
ントリストモード設定時の機能に対応したリストモード
スイッチ処理を実行する。その後、ステップ1503に
おいて、カーソルスイッチであるスイッチSW6〜SW
9の移動に伴い、画面をスクロールさせるといった表示
に関わる処理等を含むその他の処理を実行した後、一連
の処理を終了する。
Step 1502 following step 1501
Then, the list mode switch processing corresponding to the function at the time of setting the event list mode assigned to each switch of the switch group 102 is executed. After that, in step 1503, the switches SW6 to SW which are cursor switches.
Along with the movement of 9, the other processes including the process related to the display such as scrolling the screen are executed, and then the series of processes is ended.

【0124】図16は、上記ステップ1502で実行さ
れるリストモードスイッチ処理の動作フローチャートで
ある。この図16を参照して、リストモードスイッチ処
理について詳細に説明する。
FIG. 16 is an operation flowchart of the list mode switch process executed in step 1502. The list mode switch process will be described in detail with reference to FIG.

【0125】先ず、ステップ1601では、スイッチS
W2がオンされたか否か判定する。上述したように、こ
のスイッチSW2は、カーソルで指定された項目の値の
増加を指示するために用いられる。ユーザがスイッチS
W2を操作した場合、その判定はYESとなってステッ
プ1602の処理に移行する。そうでない場合、その判
定はNOとなってステップ1603の処理に移行する。
First, in step 1601, the switch S
It is determined whether W2 is turned on. As described above, the switch SW2 is used to instruct the increase of the value of the item designated by the cursor. User switches S
When W2 is operated, the determination is YES and the process proceeds to step 1602. Otherwise, the determination is no and the process moves to step 1603.

【0126】ステップ1602では、アップダウンフラ
グに0を代入する。このアップダウンフラグは、ユーザ
の指示が増加か否かを示す値が代入される、CPU20
1、或いはRAM203に保持される変数である。ユー
ザの指示が増加指示であれば0、減少指示であれば1が
代入される。このステップ1602の処理が終了する
と、ステップ1605の処理に移行する。
At step 1602, 0 is assigned to the up / down flag. The up / down flag is substituted with a value indicating whether or not the user's instruction is increased.
1 or a variable held in the RAM 203. If the user's instruction is an increase instruction, 0 is substituted, and if it is a decrease instruction, 1 is substituted. When the process of step 1602 is completed, the process proceeds to step 1605.

【0127】他方のステップ1603では、スイッチS
W3がオンされたか否か判定する。上述したように、こ
のスイッチSW3は、カーソルで指定された項目の値の
減少を指示するために用いられる。ユーザがスイッチS
W3を操作した場合、その判定はYESとなってステッ
プ1604の処理に移行する。そうでない場合、その判
定はNOとなってステップ1611の処理に移行する。
At the other step 1603, the switch S
It is determined whether W3 is turned on. As described above, the switch SW3 is used to instruct the decrease of the value of the item designated by the cursor. User switches S
When W3 is operated, the determination is YES, and the process proceeds to step 1604. Otherwise, the determination is no and the process moves to step 1611.

【0128】ステップ1604では、アップダウンフラ
グに1を代入する。このステップ1604の処理が終了
すると、ステップ1605の処理に移行する。ステップ
1605では、現在選択されている項目の判定を行う。
この判定は、現在カーソルを表示させている表示位置に
より行われる。その判定結果に従って、ステップ160
5に続く処理が決定される。
At step 1604, 1 is assigned to the up / down flag. When the process of step 1604 is completed, the process proceeds to step 1605. At step 1605, the currently selected item is determined.
This determination is made based on the display position where the cursor is currently displayed. According to the determination result, step 160
The process subsequent to 5 is determined.

【0129】ステップ1605において、現在選択され
ている項目がタイミングであると判定すると、ステップ
1606の処理に移行する。ステップ1606では、タ
イミングの項目のなかで選択されている項目は拍か否か
判定する。例えば図13(a)において、カーソルが表
示されている“240”がステップであり、それの左隣
の“3”が拍数である。カーソルが拍数の位置に表示さ
れていた場合、その判定はYESとなってステップ16
07の処理に移行する。そうでない場合、その判定はN
Oとなってステップ1608の処理に移行する。
When it is determined in step 1605 that the currently selected item is timing, the process proceeds to step 1606. In step 1606, it is determined whether the item selected from the timing items is a beat. For example, in FIG. 13A, "240" in which the cursor is displayed is a step, and "3" to the left of it is the number of beats. If the cursor is displayed at the beat number position, the determination is yes and step 16
The process moves to 07. Otherwise, the decision is N
When it becomes O, the process proceeds to step 1608.

【0130】ステップ1607では、ユーザが操作した
スイッチの種類(SW2、或いはSW3)に応じて、拍
数を変更する拍変更処理を行う。その後、一連の処理を
終了する。
At step 1607, beat changing processing for changing the number of beats is performed according to the type of switch operated by the user (SW2 or SW3). Thereafter, a series of processing ends.

【0131】他方のステップ1608では、ユーザが操
作したスイッチの種類(SW2、或いはSW3)に応じ
て、ステップ数を変更するステップ変更処理を行う。そ
の後、一連の処理を終了する。
At the other step 1608, step change processing for changing the number of steps is performed in accordance with the type of switch operated by the user (SW2 or SW3). Thereafter, a series of processing ends.

【0132】ステップ1605において、現在選択され
ている項目がコマンドであると判定すると、ステップ1
609の処理に移行する。ステップ1609では、ユー
ザが操作したスイッチの種類(SW2、或いはSW3)
に応じて、イベントデータのコマンドの種類を変更する
処理を行う。その後、一連の処理を終了する。
If it is determined in step 1605 that the currently selected item is a command, step 1
The processing moves to step 609. In step 1609, the type of switch operated by the user (SW2 or SW3)
Depending on, the process of changing the command type of the event data is performed. Thereafter, a series of processing ends.

【0133】ステップ1605において、現在選択され
ている項目がパラメータであると判定すると、ステップ
1610の処理に移行する。ステップ1610では、ユ
ーザが操作したスイッチの種類(SW2、或いはSW
3)に応じて、パラメータの種類を変更する処理を行
う。その後、一連の処理を終了する。
When it is determined in step 1605 that the currently selected item is a parameter, the process proceeds to step 1610. In step 1610, the type of switch operated by the user (SW2 or SW
According to 3), the process of changing the parameter type is performed. Thereafter, a series of processing ends.

【0134】一方、ステップ1603でNOと判定した
場合、ステップ1611の処理に移行する。このステッ
プ1611では、スイッチSW6〜SW9、即ちカーソ
ルスイッチがオンされたか否か判定する。ユーザがカー
ソルスイッチを操作した場合、その判定はYESとなっ
てステップ1612の処理に移行する。そうでない場
合、その判定はNOとなり、ここで一連の処理を終了す
る。
On the other hand, if NO in step 1603, the process moves to step 1611. In step 1611, it is determined whether the switches SW6 to SW9, that is, the cursor switch is turned on. If the user operates the cursor switch, the determination is yes and the process moves to step 1612. If not, the determination is NO, and the series of processes ends here.

【0135】ステップ1612では、オンされたスイッ
チの種類に応じて、カーソルを移動させるカーソル移動
処理を行う。このカーソル移動処理により、カーソル
は、スイッチSW6〜SW9に対する操作に対応して、
イベントリスト画面上を項目単位で移動することにな
る。このカーソル移動処理を終了した後、一連の処理を
終了する。
At step 1612, a cursor moving process for moving the cursor is performed according to the type of the switch turned on. By this cursor movement processing, the cursor corresponds to the operation on the switches SW6 to SW9,
Items will be moved on the event list screen. After this cursor movement processing is completed, a series of processing is completed.

【0136】このようにして、ユーザが行った操作内容
に対応して、イベントデータの各項目の内容が変更され
る。図17は、上記ステップ1607の拍変更処理の動
作フローチャートである。この図17を参照して、次に
拍変更処理について詳細に説明する。
In this way, the content of each item of the event data is changed according to the content of the operation performed by the user. FIG. 17 is an operation flowchart of the beat changing process in step 1607. Next, the beat changing process will be described in detail with reference to FIG.

【0137】ステップ1701〜1704では、各種変
数に対し、拍の変更において必要となる値を代入するこ
とが行われる。先ず、ステップ1701では、カーソル
で指定されているイベントデータの第2ワード、即ち小
節先頭からのクロック数(図5参照)を、変数timing_
dataに代入する。続くステップ1702では、この変数
timing_dataの値から、拍数、ステップ数を求め、それ
らの値を変数beat_num 、変数step_num にそれぞれ代
入する。その後、ステップ1703の処理に移行する。
In steps 1701 to 1704, values required for changing the beat are substituted into various variables. First, in step 1701, the second word of the event data designated by the cursor, that is, the number of clocks from the beginning of the bar (see FIG. 5) is set to the variable timing_.
Substitute in data. In the next step 1702, this variable is
The number of beats and the number of steps are obtained from the value of timing_data, and these values are substituted into variables beat_num and step_num, respectively. Then, the process proceeds to step 1703.

【0138】変数beat_num 、及び変数step_num は、
表示されているタイミングの項目の拍部分、ステップ部
分に対応する値である。例えば小節先頭からのクロック
数、即ち変数timing_dataの値が1200で、拍子が4
/4拍子であった場合(1拍のクロック数は480であ
る)、変数beat_num 、及び変数step_num の各値は、
それぞれ、2、240となる。即ち、変数beat_num 、
及び変数step_num の各値は、小節先頭からのクロック
数を1拍のクロック数で除算した際の商と余りとなる。
なお、上記の例は、図13(a)において、カーソルが
表示されている最下段の行のタイミング項目を例とした
ものである。
The variable beat_num and the variable step_num are
It is a value corresponding to the beat portion and the step portion of the displayed timing item. For example, the number of clocks from the beginning of the bar, that is, the value of the variable timing_data is 1200 and the time signature is 4
In the case of / 4 time signature (the number of clocks per beat is 480), the values of the variable beat_num and the variable step_num are
It becomes 2,240 respectively. That is, the variable beat_num,
Each value of the variable step_num is a quotient and a remainder when the number of clocks from the beginning of the bar is divided by the number of clocks of one beat.
Note that the above example is an example of the timing item in the bottom row in which the cursor is displayed in FIG.

【0139】ステップ1703では、変数bar clock
に、カーソルで指定されたイベントデータが属する小節
(以降、現在小節と記す)のクロック数を代入する。そ
の後、ステップ1704において、変数bar clock の値
から、現在小節における拍数の最大値、及び拍数をその
最大値とした際のステップ数を求め、それらの値を変数
beat_max 、及び変数step_max にそれぞれ代入する。
At step 1703, the variable bar clock is set.
Substitute the clock number of the measure (hereinafter referred to as the current measure) to which the event data designated by the cursor belongs to. Then, in step 1704, the maximum value of the number of beats in the current bar and the number of steps when the number of beats is set to the maximum value are obtained from the value of the variable bar clock, and these values are set as variables.
Substitute in beat_max and variable step_max.

【0140】例えば、拍子が4/4拍子であった場合、
変数 bar_clock 、変数beat_num、及び変数step_num
の各値は、それぞれ、1920、3、479となる。
また、拍子が9/8拍子であった場合、変数 bar_cloc
k 、変数beat_num 、及び変数step_num の各値は、そ
れぞれ、2160、4、239となる。変数beat_num
、及び変数step_num の各値は、小節のクロック数を
1拍のクロック数で除算した際の商と余りである。
For example, when the time signature is 4/4 time signature,
Variable bar_clock, variable beat_num, and variable step_num
The respective values of are 1, 1920, 3, 479, respectively.
If the time signature is 9/8, the variable bar_cloc
The values of k, the variable beat_num, and the variable step_num are 2160, 4, 239, respectively. Variable beat_num
, And the values of the variable step_num are the quotient and the remainder when the clock number of the bar is divided by the clock number of one beat.

【0141】なお、現在小節のクロック数は、次小節の
先頭のイベントデータに、第2ワードとして格納されて
いる(図5参照)。その次小節の先頭のイベントデータ
は、図4に示すように、配列SNG_BAR_TBLか
ら配列SNG_BAR_PTRのクウォンタイズ処理す
るトラックの先頭要素番号が格納されている領域を特定
し、その特定した配列SNG_BAR_PTRの領域内
の先頭要素番号を順次検索していくことで、配列SNG
_SONG内のそのデータにアクセスする。
The number of clocks of the current measure is stored as the second word in the event data at the beginning of the next measure (see FIG. 5). As shown in FIG. 4, the event data at the head of the next bar specifies the area in which the head element number of the track to be quantized in the array SNG_BAR_TBL is stored in the area of the specified array SNG_BAR_PTR, as shown in FIG. By sequentially searching for the first element number of
Access that data in _SONG.

【0142】ステップ1704に続くステップ1705
では、変数step_num の値は変数step_max の値よりも
大きいか否か判定する。変数step_num の値は変数step
_max の値よりも大きい場合、その判定はYESとなっ
てステップ1706の処理に移行する。そうでない場
合、その判定はNOとなってステップ1707の処理に
移行する。ステップ1706では、変数beat_max の値
をデクリメントし、その後、ステップ1707の処理に
移行する。
Step 1705 following step 1704
Then, it is determined whether or not the value of the variable step_num is larger than the value of the variable step_max. The value of the variable step_num is the variable step
If it is larger than the value of _max, the determination is yes and the process moves to step 1706. Otherwise, the determination is no and the process moves to step 1707. In step 1706, the value of the variable beat_max is decremented, and then the process proceeds to step 1707.

【0143】上記ステップ1705、1706の処理
は、以下の理由により行われる。第3の実施の形態で
は、イベントデータの小節先頭からのクロック数が小節
のクロック数を超えないようにしている。例えば現在小
節の拍子が9/8拍子であれば、変数step_max には2
39、変数beat_max には4がそれぞれ代入される。
The processing of steps 1705 and 1706 is performed for the following reason. In the third embodiment, the number of clocks of the event data from the beginning of the bar does not exceed the number of clocks of the bar. For example, if the time signature of the current measure is 9/8, the variable step_max is set to 2
39 and 4 are assigned to the variable beat_max.

【0144】各変数beat_num(拍数)の値において許さ
れる変数step_num(ステップ数)の値は、変数beat_nu
m(拍数)の値が4(変数beat_max)のときは0〜23
9、変数beat_num(拍数)が0〜3のときには0〜47
9である。
The value of the variable step_num (the number of steps) allowed in the value of each variable beat_num (the number of beats) is the variable beat_nu.
0 to 23 when the value of m (beats) is 4 (variable beat_max)
9, 0-47 when the variable beat_num (beats) is 0-3
9

【0145】上記の例において、変数step_num の値が
変数step_max の値より大きい場合、変数beat_num の
値を3から4に変更すると、変更後の小節先頭からのク
ロック数は小節のクロック数を超えてしまうことにな
る。しかし、その場合に、変数beat_max の値をデクリ
メントすると、変数beat_num の値としては3が上限値
となり、変更後の小節先頭からのクロック数が小節のク
ロック数を超えてしまうことが回避される。即ち例えば
拍数が3でステップ数が479から、拍数が4でステッ
プ数が479に変更されることはなくなる。ステップ1
705、1706は、これを実現するために、変数beat
_max の値を補正する処理である。
In the above example, if the value of the variable step_num is larger than the value of the variable step_max and the value of the variable beat_num is changed from 3 to 4, the number of clocks from the beginning of the changed bar exceeds the number of clocks of the bar. Will end up. However, in this case, when the value of the variable beat_max is decremented, the value of the variable beat_num becomes 3 as the upper limit value, and the number of clocks from the beginning of the bar after the change is prevented from exceeding the number of clocks of the bar. That is, for example, the number of beats is 3 and the number of steps is 479, and the number of beats is 4 and the number of steps is not changed to 479. Step 1
In order to achieve this, 705 and 1706 use the variable beat.
This is a process for correcting the value of _max.

【0146】ステップ1707以降の処理では、ユーザ
のスイッチSW2、或いはSW3に対する操作に応じ
て、拍数、即ち変数beat_num の値を変更し、その変更
をRAM203に格納されているイベントデータに反映
されることが行われる。
In the processing after step 1707, the number of beats, that is, the value of the variable beat_num is changed according to the user's operation on the switch SW2 or SW3, and the change is reflected in the event data stored in the RAM 203. Is done.

【0147】先ず、ステップ1707では、アップダウ
ンフラグの値の判定を行う。ユーザがスイッチSW2を
操作した場合、アップダウンフラグの値は0となってス
テップ1708の処理に移行する。
First, in step 1707, the value of the up / down flag is determined. When the user operates the switch SW2, the value of the up / down flag becomes 0, and the process proceeds to step 1708.

【0148】ステップ1708では、変数beat_num の
値は変数beat_max の値とは等しくないか否か判定す
る。変数beat_num の値は変数beat_max の値と等し
い、即ち変数beat_num の値が上限値であった場合、そ
の判定はNOとなってステップ1710の処理に移行す
る。そうでない場合、その判定はYESとなってステッ
プ1709の処理に移行する。
In step 1708, it is determined whether the value of the variable beat_num is not equal to the value of the variable beat_max. If the value of the variable beat_num is equal to the value of the variable beat_max, that is, if the value of the variable beat_num is the upper limit value, the determination is NO and the process proceeds to step 1710. Otherwise, the determination is yes and the process moves to step 1709.

【0149】ステップ1709では、変数beat_num の
値をインクリメントする。これにより、ユーザが指示し
た内容に応じて表示されている拍数が増加することにな
る。変数beat_max の値は、上述したように、変数step
_num の値に応じて補正されている。このため、変数be
at_num をインクリメントしても、これによって小節先
頭からのクロック数が小節のクロック数を超えることは
ない。ステップ1709の処理を終了した後、ステップ
1710の処理に移行する。
At step 1709, the value of the variable beat_num is incremented. As a result, the number of displayed beats is increased according to the content instructed by the user. The value of the variable beat_max is the variable step as described above.
It is corrected according to the value of _num. Therefore, the variable be
Even if at_num is incremented, the number of clocks from the beginning of the measure does not exceed the number of clocks of the measure. After the process of step 1709 is completed, the process proceeds to step 1710.

【0150】ステップ1710では、変数beat_num の
値、及び変数step_num の値から、変数timing_dataの
値、即ち小節先頭からのクロック数を求める。これは、
ステップ1702とは逆の方法により算出される。小節
先頭からのクロック数を求めると、次にステップ171
1において、そのクロック数を、イベントデータの第2
ワードとしてRAM203に書き込む処理を行う。
In step 1710, the value of the variable timing_data, that is, the number of clocks from the beginning of the bar is obtained from the value of the variable beat_num and the value of the variable step_num. this is,
The calculation is performed by the reverse method of step 1702. When the number of clocks from the beginning of the bar is calculated, the next step 171
1, the number of clocks is set to the second of the event data.
The process of writing the word in the RAM 203 is performed.

【0151】一方、ステップ1707において、アップ
ダウンフラグの値は1と判定した場合、ステップ171
2の処理に移行する。この場合は、ユーザがスイッチS
W3の操作を行った場合である。
On the other hand, if it is determined in step 1707 that the value of the up / down flag is 1, step 171
The process shifts to 2. In this case, the user selects switch S
This is the case when the operation of W3 is performed.

【0152】ステップ1712では、変数beat_num の
値が0に等しくないか否か判定する。拍数として0が表
示されていた場合、その判定はNOとなってステップ1
710の処理に移行する。そうでない場合、その判定は
YESとなってステップ1713の処理に移行する。
In step 1712, it is determined whether the value of the variable beat_num is not equal to 0. If 0 is displayed as the number of beats, the determination is NO and step 1
The processing moves to 710. Otherwise, the determination is yes and the process moves to step 1713.

【0153】ステップ1713では、変数beat_num の
値をデクリメントする。これにより、ユーザが指示した
内容に応じて表示されている拍数が減少することにな
る。その後、ステップ1710の処理に移行する。
At step 1713, the value of the variable beat_num is decremented. As a result, the number of displayed beats is reduced according to the content instructed by the user. Then, the process proceeds to step 1710.

【0154】このように、ユーザが拍数の変更を指示し
た場合、その指示内容に従って変更した後の発音開始タ
イミング(小節先頭からのクロック数)が、小節の外の
タイミングとならないように監視しながら、拍数の変更
が行われる。
As described above, when the user gives an instruction to change the number of beats, the tone generation start timing (the number of clocks from the beginning of the measure) after the change is monitored according to the instruction content so that the timing does not fall outside the measure. However, the number of beats is changed.

【0155】図18は、上記ステップ1608のステッ
プ変更処理の動作フローチャートである。この図18を
参照して、ステップ変更処理について詳細に説明する。
ステップ1801〜1804では、各種変数に対し、ス
テップ数の変更において必要となる値を代入することが
行われる。
FIG. 18 is an operation flowchart of the step changing process in step 1608. The step changing process will be described in detail with reference to FIG.
In steps 1801 to 1804, values required for changing the number of steps are assigned to various variables.

【0156】先ず、ステップ1801では、カーソルで
指定されているイベントデータの第2ワード、即ち小節
先頭からのクロック数(図5参照)を、変数timing_da
taに代入する。続くステップ1802では、この変数ti
ming_dataの値から、拍数、ステップ数を求め、それら
の値を変数beat_num 、変数step_num にそれぞれ代入
する。その後、ステップ1803の処理に移行する。
First, in step 1801, the second word of the event data designated by the cursor, that is, the number of clocks from the beginning of the bar (see FIG. 5) is set to the variable timing_da.
Substitute in ta. In the following step 1802, this variable ti
The number of beats and the number of steps are obtained from the value of ming_data, and these values are substituted into variables beat_num and step_num, respectively. Then, the process proceeds to step 1803.

【0157】変数beat_num 、及び変数step_num は、
表示されているタイミングの項目の拍部分、ステップ部
分に対応する値である。例えば小節先頭からのクロック
数、即ち変数timing_dataの値が1200で、拍子が4
/4拍子であった場合(1拍のクロック数は480であ
る)、変数beat_num 、及び変数step_num の各値は、
それぞれ、2、240となる。即ち、変数beat_num 、
及び変数step_num の各値は、小節先頭からのクロック
数を1拍のクロック数で除算した際の商と余りとなる。
The variable beat_num and the variable step_num are
It is a value corresponding to the beat portion and the step portion of the displayed timing item. For example, the number of clocks from the beginning of the bar, that is, the value of the variable timing_data is 1200 and the time signature is 4
In the case of / 4 time signature (the number of clocks per beat is 480), the values of the variable beat_num and the variable step_num are
It becomes 2,240 respectively. That is, the variable beat_num,
Each value of the variable step_num is a quotient and a remainder when the number of clocks from the beginning of the bar is divided by the number of clocks of one beat.

【0158】ステップ1803では、変数 bar_clock
に、カーソルで指定されたイベントデータが属する現在
小節のクロック数を代入する。その後、ステップ180
4において、変数 bar_clock の値から、現在小節にお
ける拍数の最大値、及び拍数をその最大値とした際のス
テップ数を求め、それらの値を変数beat_max 、及び変
数step_max にそれぞれ代入する。
At step 1803, the variable bar_clock
The clock number of the current measure to which the event data designated by the cursor belongs is assigned to. Then, step 180
In 4, the maximum value of the number of beats in the current bar and the number of steps when the number of beats is the maximum value are obtained from the value of the variable bar_clock, and these values are substituted into the variables beat_max and step_max, respectively.

【0159】例えば、拍子が4/4拍子であった場合、
変数 bar_clock 、変数beat_num、及び変数step_num
の各値は、それぞれ、1920、3、479となる。
また、拍子が9/8拍子であった場合、変数 bar_cloc
k 、変数beat_num 、及び変数step_num の各値は、そ
れぞれ、2160、4、239となる。変数beat_num
、及び変数step_num の各値は、小節のクロック数を
1拍のクロック数で除算した際の商と余りである。
For example, when the time signature is 4/4 time signature,
Variable bar_clock, variable beat_num, and variable step_num
The respective values of are 1, 1920, 3, 479, respectively.
If the time signature is 9/8, the variable bar_cloc
The values of k, the variable beat_num, and the variable step_num are 2160, 4, 239, respectively. Variable beat_num
, And the values of the variable step_num are the quotient and the remainder when the clock number of the bar is divided by the clock number of one beat.

【0160】なお、現在小節のクロック数は、次小節の
先頭のイベントデータに、第2ワードとして格納されて
いる(図5参照)。その次小節の先頭のイベントデータ
は、図4に示すように、配列SNG_BAR_TBLか
ら配列SNG_BAR_PTRのクウォンタイズ処理す
るトラックの先頭要素番号が格納されている領域を特定
し、その特定した配列SNG_BAR_PTRの領域内
の先頭要素番号を順次検索していくことで、配列SNG
_SONG内のそのデータにアクセスする。
The clock number of the current measure is stored as the second word in the event data at the beginning of the next measure (see FIG. 5). As shown in FIG. 4, the event data at the head of the next bar specifies the area in which the head element number of the track to be quantized from the array SNG_BAR_TBL is stored in the area of the specified array SNG_BAR_PTR, as shown in FIG. By sequentially searching for the first element number of
Access that data in _SONG.

【0161】ステップ1804に続くステップ1805
では、変数beat_num の値は変数beat_max の値と等し
いか否か判定する。変数beat_num の値は変数beat_ma
x の値に等しくない場合、その判定はYESとなってス
テップ1806の処理に移行する。そうでない場合、そ
の判定はNOとなってステップ1807の処理に移行す
る。ステップ1806では、変数step_max に479を
代入する。その後、ステップ1807の処理に移行す
る。
Step 1805 following step 1804
Then, it is determined whether the value of the variable beat_num is equal to the value of the variable beat_max. The value of the variable beat_num is the variable beat_ma
If it is not equal to the value of x, the determination is yes and the process moves to step 1806. Otherwise, the determination is no and the process moves to step 1807. In step 1806, 479 is assigned to the variable step_max. Then, the process proceeds to step 1807.

【0162】上記ステップ1805、1806の処理
は、以下の理由により行われる。第3の実施の形態で
は、イベントデータの小節先頭からのクロック数が小節
のクロック数を超えないようにしている。例えば現在小
節の拍子が9/8拍子であれば、変数step_max には2
39、変数beat_max には4がそれぞれ代入される。
The processing in steps 1805 and 1806 is performed for the following reason. In the third embodiment, the number of clocks of the event data from the beginning of the bar does not exceed the number of clocks of the bar. For example, if the time signature of the current measure is 9/8, the variable step_max is set to 2
39 and 4 are assigned to the variable beat_max.

【0163】各変数beat_num(拍数)の値において許さ
れる変数step_num(ステップ数)の値は、変数beat_nu
m(拍数)の値が4(変数beat_max)のときは0〜23
9、変数beat_num (拍数)が0〜3のときには0〜4
79である。
The value of the variable step_num (the number of steps) allowed in the value of each variable beat_num (the number of beats) is the variable beat_nu.
0 to 23 when the value of m (beats) is 4 (variable beat_max)
9, 0-4 when the variable beat_num (beats) is 0-3
79.

【0164】上記の例のように、変数beat_num の値が
変数beat_max の値と等しいか否かにより、変数step_
num の値としての上限値は変化する。ステップ180
5、1806は、このように拍数に応じて変化するステ
ップ数の上限値を適正な値に補正するための処理であ
る。
As in the above example, the variable step_num depends on whether the value of the variable beat_num is equal to the value of the variable beat_max.
The upper limit as the value of num changes. Step 180
Reference numerals 5 and 1806 are processes for correcting the upper limit value of the number of steps which changes according to the number of beats to an appropriate value.

【0165】ステップ1807以降の処理では、ユーザ
のスイッチSW2、或いはSW3に対する操作に応じ
て、ステップ数、即ち変数step_num の値を変更し、そ
の変更をRAM203に格納されているイベントデータ
に反映されることが行われる。
In the processing after step 1807, the number of steps, that is, the value of the variable step_num is changed according to the user's operation on the switch SW2 or SW3, and the change is reflected in the event data stored in the RAM 203. Is done.

【0166】先ず、ステップ1807では、アップダウ
ンフラグの値の判定を行う。ユーザがスイッチSW2を
操作した場合、アップダウンフラグの値は0となってス
テップ1808の処理に移行する。
First, in step 1807, the value of the up / down flag is determined. When the user operates the switch SW2, the value of the up / down flag becomes 0, and the process proceeds to step 1808.

【0167】ステップ1808では、変数step_num の
値は変数step_max の値とは等しくないか否か判定す
る。変数step_num の値は変数step_max の値と等し
い、即ち変数step_num の値が上限値であった場合、そ
の判定はNOとなってステップ1810の処理に移行す
る。そうでない場合、その判定はYESとなってステッ
プ1809の処理に移行する。
In step 1808, it is determined whether the value of the variable step_num is not equal to the value of the variable step_max. If the value of the variable step_num is equal to the value of the variable step_max, that is, if the value of the variable step_num is the upper limit value, the determination is NO and the process of step 1810 is performed. Otherwise, the determination is yes and the process moves to step 1809.

【0168】ステップ1809では、変数step_num の
値をインクリメントする。これにより、ユーザが指示し
た内容に応じて表示されているステップ数が増加するこ
とになる。変数step_num の値は、上述したように、変
数beat_num の値に応じて補正されている。このため、
変数step_num をインクリメントしても、これによって
小節先頭からのクロック数が小節のクロック数を超える
ことはない。ステップ1809の処理を終了した後、ス
テップ1810の処理に移行する。
At step 1809, the value of the variable step_num is incremented. As a result, the number of steps displayed is increased according to the content instructed by the user. The value of the variable step_num is corrected according to the value of the variable beat_num as described above. For this reason,
Even if the variable step_num is incremented, the number of clocks from the beginning of the measure does not exceed the number of clocks of the measure. After the process of step 1809 is completed, the process proceeds to step 1810.

【0169】ステップ1810では、変数beat_num の
値、及び変数step_num の値から、変数timing_dataの
値、即ち小節先頭からのクロック数を求める。これは、
ステップ1802とは逆の方法により算出される。小節
先頭からのクロック数を求めると、次にステップ181
1において、そのクロック数を、イベントデータの第2
ワードとしてRAM203に書き込む処理を行う。
At step 1810, the value of the variable timing_data, that is, the number of clocks from the beginning of the bar is obtained from the value of the variable beat_num and the value of the variable step_num. this is,
The calculation is performed by the reverse method of step 1802. When the number of clocks from the beginning of the bar is obtained, the next step 181
1, the number of clocks is set to the second of the event data.
The process of writing the word in the RAM 203 is performed.

【0170】一方、ステップ1807において、アップ
ダウンフラグの値は1と判定した場合、ステップ181
2の処理に移行する。この場合は、ユーザがスイッチS
W3の操作を行った場合である。
On the other hand, if it is determined in step 1807 that the value of the up / down flag is 1, step 181
The process shifts to 2. In this case, the user selects switch S
This is the case when the operation of W3 is performed.

【0171】ステップ1812では、変数beat_num の
値が0に等しくないか否か判定する。拍数として0が表
示されていた場合、その判定はNOとなってステップ1
810の処理に移行する。そうでない場合、その判定は
YESとなってステップ1813の処理に移行する。
In step 1812, it is determined whether the value of the variable beat_num is not equal to 0. If 0 is displayed as the number of beats, the determination is NO and step 1
Then, the process proceeds to step 810. Otherwise, the determination is yes and the process moves to step 1813.

【0172】ステップ1813では、変数step_num の
値をデクリメントする。これにより、ユーザが指示した
内容に応じて表示されているステップ数が減少すること
になる。その後、ステップ1810の処理に移行する。
At step 1813, the value of the variable step_num is decremented. As a result, the number of steps displayed is reduced according to the content instructed by the user. Then, the process proceeds to step 1810.

【0173】このように、ユーザがステップ数の変更を
指示した場合、その指示内容に従って変更した後の発音
開始タイミング(小節先頭からのクロック数)が、小節
の外のタイミングとならないように監視しながら、ステ
ップ数の変更が行われる。
As described above, when the user gives an instruction to change the number of steps, the sounding start timing (the number of clocks from the beginning of the bar) after the change is monitored according to the instruction content so that the timing does not fall outside the bar. However, the number of steps is changed.

【0174】なお、第3の実施の形態では、図13に示
すようにイベントデータの小節先頭からのクロック数を
拍数、及びステップ数で画面上に表現しているが、例え
ば小節先頭からのクロック数をそのまま画面上に数値と
して表示させても良い。
In the third embodiment, as shown in FIG. 13, the number of clocks from the beginning of the bar of the event data is represented on the screen by the number of beats and the number of steps. The number of clocks may be displayed as it is on the screen as a numerical value.

【0175】また、第3の実施の形態では、イベントデ
ータの発音開始タイミングの変更を制限しているが、予
め存在するイベントデータに対しては、その発音開始タ
イミングを、それが属する小節内となるように、自動的
に発音タイミングを修正するようにしても良い。
Further, in the third embodiment, the change of the sounding start timing of the event data is limited. However, for the event data that exists in advance, the sounding start timing is set to be within the bar to which it belongs. Therefore, the pronunciation timing may be automatically corrected.

【0176】また、第1〜第3の実施の形態は、電子楽
器100に本発明を適用したものであるが、適用はこれ
に限定されるものではない。本発明は、シーケンサーを
はじめ、シーケンサー機能を搭載した装置に幅広く適用
できるものである。
The first to third embodiments apply the present invention to the electronic musical instrument 100, but the application is not limited to this. INDUSTRIAL APPLICABILITY The present invention can be widely applied to a device equipped with a sequencer function including a sequencer.

【0177】[0177]

【発明の効果】以上説明したように本発明のシーケンス
データのクウォンタイズ方法、及びタイミング処理装置
は、指定範囲として複数の小節にまたがる範囲が指定さ
れたとき、小節を処理単位として、各小節毎に、シーケ
ンスデータの発音開始タイミングを、それが属する小節
の拍子に基づいて変更する。このため、その小節の演奏
時間等を変更しても、その変更が他の小節のクウォンタ
イズに影響することがなくなり、ユーザは意図したクウ
ォンタイズを容易にかけることができる。
As described above, the sequence data quantizing method and the timing processing device according to the present invention, when a range spanning a plurality of measures is specified as a specified range, each measure is set as a measure. Then, the sound generation start timing of the sequence data is changed based on the time signature of the measure to which it belongs. Therefore, even if the playing time of the measure is changed, the change does not affect the quantize of other measures, and the user can easily perform the intended quantize.

【0178】また、本発明のシーケンスデータのタイミ
ング処理装置は、ユーザによるシーケンスデータの発音
開始タイミングの変更を監視し、それが属する小節外へ
の発音開始タイミングの変更であった場合にはその変更
を無効として禁止するため、シーケンスデータの発音開
始タイミングを常に適正な状態に維持しておくことがで
きる。
Further, the sequence data timing processing apparatus of the present invention monitors the change in the sounding start timing of the sequence data by the user, and when it is the change in the sounding start timing to the outside of the bar to which it belongs, the change is made. Is disabled and prohibited, the sound generation start timing of the sequence data can be always maintained in an appropriate state.

【図面の簡単な説明】[Brief description of drawings]

【図1】第1の実施の形態が適用されたシステムの外観
を示す図である。
FIG. 1 is a diagram showing an appearance of a system to which a first embodiment is applied.

【図2】電子楽器の構成のブロック図である。FIG. 2 is a block diagram of a configuration of an electronic musical instrument.

【図3】RAM203に記憶される楽曲データのデータ
フォーマットを示す図である(その1)。
FIG. 3 is a diagram showing a data format of music data stored in a RAM 203 (No. 1).

【図4】RAM203に記憶される楽曲データのデータ
フォーマットを示す図である(その2)。
FIG. 4 is a diagram showing a data format of music data stored in a RAM 203 (No. 2).

【図5】ノートイベントデータとコントロールイベント
データのデータフォーマットを示す図である。
FIG. 5 is a diagram showing a data format of note event data and control event data.

【図6】ジャンプイベントデータ群のデータフォーマッ
トを示す図である。
FIG. 6 is a diagram showing a data format of a jump event data group.

【図7】クウォンタイズ処理の範囲指定方法を説明する
図である。
FIG. 7 is a diagram illustrating a range specifying method of a quantize process.

【図8】全体処理の動作フローチャートである。FIG. 8 is an operation flowchart of the entire process.

【図9】スイッチ処理の動作フローチャートである。FIG. 9 is an operation flowchart of switch processing.

【図10】第1の実施の形態によるクウォンタイズ処理
の動作フローチャートである。
FIG. 10 is an operation flowchart of a quantize process according to the first embodiment.

【図11】各拍子における1小節の時間的長さを示す図
である。
FIG. 11 is a diagram showing a temporal length of one bar in each time signature.

【図12】第2の実施の形態によるクウォンタイズ処理
の動作フローチャートである。
FIG. 12 is an operation flowchart of a quantize process according to the second embodiment.

【図13】発音開始タイミングの変更方法を説明する図
である。
FIG. 13 is a diagram illustrating a method of changing the sound generation start timing.

【図14】第3の実施の形態によるスイッチ処理の動作
フローチャートである。
FIG. 14 is an operation flowchart of a switch process according to the third embodiment.

【図15】イベントリストモード処理の動作フローチャ
ートである。
FIG. 15 is an operation flowchart of event list mode processing.

【図16】リストモードスイッチ処理の動作フローチャ
ートである。
FIG. 16 is an operation flowchart of list mode switch processing.

【図17】拍変更処理の動作フローチャートである。FIG. 17 is an operation flowchart of beat change processing.

【図18】ステップ変更処理の動作フローチャートであ
る。
FIG. 18 is an operation flowchart of step change processing.

【符号の説明】[Explanation of symbols]

100 電子楽器 102 スイッチ群 110 テレビ 201 CPU 202 ROM 203 RAM 204 画像データ出力部 205 サウンドシステム 206 MIDIインターフェイス 100 electronic musical instrument 102 switch group 110 television 201 CPU 202 ROM 203 RAM 204 image data output unit 205 sound system 206 MIDI interface

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 指定範囲内に存在するシーケンスデータ
の発音開始タイミングを変更するクウォンタイズを行う
方法であって、 前記指定範囲として複数の小節にまたがる範囲が指定さ
れたとき、前記小節を処理単位として、各小節毎に、前
記シーケンスデータの発音開始タイミングを、それが属
する小節の拍子に基づいて変更していく、 ことを特徴とするシーケンスデータのクウォンタイズ方
法。
1. A method of performing quantizing for changing the sound generation start timing of sequence data existing within a specified range, wherein when the range that spans a plurality of measures is specified as the specified range, the measure is processed as a unit. The method for quantizing sequence data is characterized in that, for each measure, the sounding start timing of the sequence data is changed based on the time signature of the measure to which it belongs.
【請求項2】 シーケンスデータの発音開始タイミング
を制御する装置において、 前記シーケンスデータの発音開始タイミングを変更させ
る範囲を指定するための指定手段と、 前記指定手段により、複数の小節にまたがる範囲が指定
されたとき、前記小節を処理単位として、各小節毎に、
前記シーケンスデータの発音開始タイミングを、それが
属する小節の拍子に基づいて変更する制御手段と、 を具備したことを特徴とするシーケンスデータのタイミ
ング処理装置。
2. A device for controlling a sound generation start timing of sequence data, wherein a specifying unit for specifying a range for changing the sound generation start timing of the sequence data, and the specifying unit specifies a range extending over a plurality of measures. When it is done, with each bar as the processing unit,
A sequence data timing processing device, comprising: a control unit that changes the sounding start timing of the sequence data based on the time signature of the bar to which it belongs.
【請求項3】 シーケンスデータの発音開始タイミング
を制御する装置において、 前記シーケンスデータの発音開始タイミングを指定する
ための指定手段と、 前記指定手段により指定された前記シーケンスデータの
発音開始タイミングが、該シーケンスデータが属する小
節内であるか否か判定する判定手段と、 前記シーケンスデータの発音開始タイミングが、該シー
ケンスデータが属する小節内ではないと前記判定手段が
判定したとき、前記指定手段による指定を無効とする制
御手段と、 を具備したことを特徴とするシーケンスデータのタイミ
ング処理装置。
3. An apparatus for controlling a sounding start timing of sequence data, wherein a designating unit for designating a sounding start timing of the sequence data, and a sounding start timing of the sequence data designated by the designating unit are Determination means for determining whether or not the sequence data is within a bar, and when the determination means determines that the sounding start timing of the sequence data is not within the bar to which the sequence data belongs, the designation by the designating means is performed. A sequence data timing processing device comprising: a control unit that invalidates the sequence data.
JP7234525A 1995-09-12 1995-09-12 Quantizing method for sequence data and timing processing device for sequence data Abandoned JPH0981131A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7234525A JPH0981131A (en) 1995-09-12 1995-09-12 Quantizing method for sequence data and timing processing device for sequence data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7234525A JPH0981131A (en) 1995-09-12 1995-09-12 Quantizing method for sequence data and timing processing device for sequence data

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2003387413A Division JP2004046280A (en) 2003-11-18 2003-11-18 Timing processor for sequence data

Publications (1)

Publication Number Publication Date
JPH0981131A true JPH0981131A (en) 1997-03-28

Family

ID=16972399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7234525A Abandoned JPH0981131A (en) 1995-09-12 1995-09-12 Quantizing method for sequence data and timing processing device for sequence data

Country Status (1)

Country Link
JP (1) JPH0981131A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020173485A (en) * 2020-07-28 2020-10-22 カシオ計算機株式会社 Electronic musical instrument, performance information storage method, and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020173485A (en) * 2020-07-28 2020-10-22 カシオ計算機株式会社 Electronic musical instrument, performance information storage method, and program

Similar Documents

Publication Publication Date Title
US6211453B1 (en) Performance information making device and method based on random selection of accompaniment patterns
JPS6157640B2 (en)
JP2896716B2 (en) Automatic performance device
EP0980061B1 (en) Arrangement apparatus by modification of music data with arrangement data
US5457282A (en) Automatic accompaniment apparatus having arrangement function with beat adjustment
US5495072A (en) Automatic performance apparatus
JPH0981131A (en) Quantizing method for sequence data and timing processing device for sequence data
JP2002175071A (en) Playing guide method, playing guide device and recording medium
JP2940129B2 (en) Rhythm playing device
JP3062784B2 (en) Music player
JP4270102B2 (en) Automatic performance device and program
JPH0981137A (en) Parameter controller and automatic playing device
JP3463515B2 (en) Music score display method, music score display device, and recording medium recording program
JP2004046280A (en) Timing processor for sequence data
JP3709821B2 (en) Music information editing apparatus and music information editing program
JP2660462B2 (en) Automatic performance device
JP4685226B2 (en) Automatic performance device for waveform playback
JP3267226B2 (en) Automatic accompaniment device and medium recording automatic accompaniment control program
JP3709820B2 (en) Music information editing apparatus and music information editing program
JP3767418B2 (en) Automatic performance device and automatic performance control program
JP3052875B2 (en) Sequence data editing method and sequencer
JP3797181B2 (en) Music score display device and music score display program
JP2000163052A (en) Music generating device and recording medium which records music generating program
US5548079A (en) Music sequencer with skip operation to recorded positions associated with tone parameter sets
JP3307598B2 (en) Performance recording and playback device

Legal Events

Date Code Title Description
A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20040109