JP2007128107A - Automatic performance system and program - Google Patents

Automatic performance system and program Download PDF

Info

Publication number
JP2007128107A
JP2007128107A JP2007001680A JP2007001680A JP2007128107A JP 2007128107 A JP2007128107 A JP 2007128107A JP 2007001680 A JP2007001680 A JP 2007001680A JP 2007001680 A JP2007001680 A JP 2007001680A JP 2007128107 A JP2007128107 A JP 2007128107A
Authority
JP
Japan
Prior art keywords
sound
tempo
performance
event
operator
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.)
Granted
Application number
JP2007001680A
Other languages
Japanese (ja)
Other versions
JP2007128107A5 (en
JP4241833B2 (en
Inventor
Yoshiki Nishitani
善樹 西谷
Kenji Ishida
健二 石田
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2007001680A priority Critical patent/JP4241833B2/en
Publication of JP2007128107A publication Critical patent/JP2007128107A/en
Publication of JP2007128107A5 publication Critical patent/JP2007128107A5/ja
Application granted granted Critical
Publication of JP4241833B2 publication Critical patent/JP4241833B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an automatic performance system and the like which make an ensemble performance having the feel of uniformity and rich expression possible to be performed. <P>SOLUTION: When a CPU (central processing unit) of a personal computer constituting the automatic performance system receives operation information from respective operators, the CPU performs judgment as to whether the operation information is transmitted from the master operator or is transmitted from the slave operator based on the identification information and the like included in the operation information. The CPU of the personal computer checks the next performance position (the position of the sound production event to be processed next) of the master operator (the operator to be the master) at all times and performs control in such a manner that the present performance position (the position of the sound production event) of the slave operator (the operator to be the slave) does not exceed the next performance position of the master operator. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、アンサンブル演奏を簡単に行うことができる自動演奏装置及びプログラムに関する。   The present invention relates to an automatic performance apparatus and a program that can easily perform an ensemble performance.

近年、電子楽器分野においては、楽器を全く演奏したことがない楽器演奏初心者であっても簡単にアンサンブル演奏が楽しめるような演奏装置が種々開発されている。かかる演奏装置として、自動演奏データを用いた自動演奏の各楽器のパートを各操作子に割り当て、各操作子の操作状態(例えば、「振る」、「叩く」、「傾ける」等)を検出することにより、各楽器に対応したパート音の音量、音色や演奏テンポなどを独自に変化させることができるものが提案されている(例えば、特許文献1参照)。
各操作子を操作する操作者は、操作子を「振る」といった簡単な操作により、該操作子に割り当てられたパートの演奏を制御することができ、これにより楽器演奏初心者であってもアンサンブル演奏の充実感を味わうことができる。
In recent years, in the field of electronic musical instruments, various performance devices have been developed so that even novice musical instrument players who have never played musical instruments can easily enjoy ensemble performances. As such a performance device, each musical instrument part of automatic performance using automatic performance data is assigned to each operation element, and the operation state of each operation element (for example, “swing”, “hit”, “tilt”, etc.) is detected. Thus, there has been proposed one that can independently change the volume, tone color, performance tempo, etc. of the part sound corresponding to each instrument (see, for example, Patent Document 1).
An operator who operates each operator can control the performance of the part assigned to the operator by a simple operation such as “swing” the operator. You can enjoy a sense of fulfillment.

特開平2001−350474号公報Japanese Patent Laid-Open No. 2001-350474

しかしながら、上記演奏装置においては、各パート演奏が各操作者による操作によって独自に制御されるため、例えば各操作者が自身の曲想に従って操作子に割り当てられたパートの演奏テンポ(進行)を変えると、当然に各パート間での演奏進行のずれは大きくなる。この結果、各パート演奏がばらばらになり、統一感ある表現豊かなアンサンブル演奏ができないという問題があった。   However, in the above performance device, each part performance is independently controlled by the operation of each operator. For example, when each operator changes the performance tempo (progress) of the part assigned to the operator according to his / her own musical idea. Of course, the difference in performance progress between the parts becomes large. As a result, there was a problem that the performances of each part were scattered and it was not possible to perform an expressive ensemble performance with a sense of unity.

本発明は、以上説明した事情を鑑みてなされたものであり、統一感ある表現豊かなアンサンブル演奏を可能とする自動演奏装置及びプログラムを提供することを目的とする。   The present invention has been made in view of the circumstances described above, and an object of the present invention is to provide an automatic performance apparatus and program capable of performing a unified and expressive ensemble performance.

上述した問題を解決するため、本発明に係る自動演奏装置は、楽音の発音内容を示す発音イベントを演奏データから順次読み出して自動演奏する自動演奏装置において、操作者によって操作されると操作状況に応じた操作信号を出力する操作子と、前記操作信号が出力されると次に発音すべき楽音の発音イベントを読み出して発音処理する発音処理手段と、前記操作信号が出力された出力時刻を検出するとともに、前回の出力時刻との時間間隔を算出する時間間隔算出手段と、前記楽音の発音長を制御するためのテンポを記憶する記憶手段と、前記時間間隔算出手段が算出した時間間隔と前回の前記操作信号の出力時刻に発音処理された発音イベントの音符の長さとに基づきテンポを算出し、前記記憶手段に記憶されたテンポを更新するテンポ更新手段と、前記発音処理手段が処理をする発音イベントの発音長を前記テンポ更新手段によって更新されたテンポに対応する長さに制御する発音長制御手段とを具備することを特徴とする。   In order to solve the above-described problem, the automatic performance device according to the present invention is an automatic performance device that automatically reads out sound events indicating the sound content of musical sounds from performance data and automatically performs the operation. An operation element that outputs a corresponding operation signal, a sound generation processing means for reading out a sound generation event of a musical tone to be generated next when the operation signal is output, and a time of output when the operation signal is output And a time interval calculating means for calculating a time interval from the previous output time, a storage means for storing a tempo for controlling the tone generation length of the musical sound, a time interval calculated by the time interval calculating means and the previous time The tempo is calculated based on the note length of the sound generation event processed at the output time of the operation signal, and the tempo stored in the storage means is updated. And updating means, characterized by comprising a sound length control means for controlling the sound length pronunciation events the sound processing means processing a length corresponding to the tempo updated by the tempo updating means.

ここで、上記構成にあっては、前記発音処理手段は同時発音すべき発音イベントが複数ある場合はそれら全てを読み出して発音処理するのが望ましい。   Here, in the above configuration, when there are a plurality of sounding events that should be sounded simultaneously, it is preferable that the sounding processing means read out all of them and perform sounding processing.

また、本発明に係る自動演奏装置は、楽音の発音内容を示す発音イベントが複数のチャネルに配されている演奏データから前記各チャネルの発音イベントを並行して順次読み出し、読み出した発音イベントを処理することによりアンサンブル演奏をする自動演奏装置において、操作者によって操作されると操作状況に応じた操作信号を出力する操作子と、前記操作信号が出力されると予め決められた特定チャネルについて、次に発音すべき楽音の発音イベントを読み出して発音処理する特定チャネル発音処理手段と、前記操作信号が出力された出力時刻を検出するとともに、前回の出力時刻との時間間隔を算出する時間間隔算出手段と、前記楽音の発音長を制御するためのテンポを記憶する記憶手段と、前記間時間隔算出手段が算出した時間間隔と前回の前記操作信号の出力時刻に発音処理された発音イベントの音符の長さに基づきテンポを算出し、更新するテンポ更新手段と、前記特定チャネル発音処理手段が処理をする発音イベントの発音長を前記テンポ更新手段によって更新されたテンポに対応する長さに制御する発音長制御手段と、前記特定チャネル発音処理手段が処理をしている発音イベントから次の発音イベントまでの区間に存在する他のチャネルの発音イベントを、前記テンポ更新手段が更新したテンポに応じた速さで順次読み出し、読み出した発音イベントが示す発音内容に応じた発音処理をするとともに、各発音イベントの発音長を当該テンポに応じた長さに制御する他チャネル発音制御手段とを具備することを特徴とする。
ここで、上記構成にあっては、前記特定チャネル発音処理手段は特定チャネルに同時発音すべき発音イベントが複数ある場合はそれら全てを読み出して発音処理することが望ましい。
Further, the automatic performance device according to the present invention sequentially reads the sound event of each channel in parallel from the performance data in which the sound event indicating the sound content of the musical sound is arranged on a plurality of channels, and processes the read sound event In an automatic performance device that performs an ensemble performance, an operator that outputs an operation signal according to an operation situation when operated by an operator, and a specific channel that is predetermined when the operation signal is output are described below. Specific channel sound generation processing means for reading out a sound generation event of a musical sound to be sounded and performing sound generation processing; and a time interval calculation means for detecting an output time at which the operation signal is output and calculating a time interval from the previous output time Storage means for storing the tempo for controlling the tone length of the musical sound, and the time calculated by the interval calculation means Tempo update means for calculating and updating the tempo based on the interval and the length of the note of the sounding event processed at the output time of the previous operation signal, and sounding of the sounding event processed by the specific channel sounding processing means Sound length control means for controlling the length to a length corresponding to the tempo updated by the tempo update means, and a section from a sound event processed by the specific channel sound processing means to the next sound event The sound generation events of other channels are sequentially read out at a speed corresponding to the tempo updated by the tempo update means, the sound generation processing corresponding to the sound content indicated by the read sound event is performed, and the sound generation length of each sound generation event is And another channel sound generation control means for controlling the length according to the tempo.
Here, in the above-described configuration, it is preferable that the specific channel sound generation processing unit reads out all sound events to be sounded simultaneously in the specific channel and performs sound generation processing.

本発明によれば、統一感ある表現豊かなアンサンブル演奏が可能となる。   According to the present invention, an ensemble performance with a sense of unity and rich expression can be achieved.

以下、本発明に係る実施の形態について説明する。かかる実施の形態は、本発明の一態様を示すものであり、本発明の技術的思想の範囲で任意に変更可能である。   Embodiments according to the present invention will be described below. Such an embodiment shows one aspect of the present invention, and can be arbitrarily changed within the scope of the technical idea of the present invention.

A.本実施形態
<実施形態の構成>
図1は、本実施形態の構成を示す図である。同図において、操作子1−1,1−2,…,1−n(nは整数)は、図3に示すように操作者Aが手に持って自由に動かすことができる棒状の形状をしている。なお、操作子1−1〜1−nについて総称するときは、単に操作子1と記すことにする。
この操作子1には、その動きを検出するためのセンサが内蔵されている。本実施形態においては操作子1が振られていることを検出するための速度センサが内蔵されている。操作子1は振り下ろされた瞬間の速度センサの出力信号の変化に応じたピーク信号SP(すなわち、操作子1の操作状況に応じた操作信号)を出力するようになっている。なお、本実施形態においては、操作子1の振り下ろしが検出されればよいので、センサとしては他のもの(例えば加速度センサなど)を用いてもよい。また、操作子1は、各々自己を識別するための識別情報SIDを出力するようになっている。なお、各操作子1−1〜1−nの識別情報をSID(1−1)〜SID(1−n)と表記する。
操作子1は、ピーク信号SPと識別情報SIDを含んだセンサ情報SIを無線によって受信装置2に送信し、受信装置2はセンサ信号SIをパーソナルコンピュータ3に供給するようになっている。なお、本実施形態においては、Bluetooth(登録商標)による無線伝送方式が採用されるが、この伝送方式は任意である。
A. Embodiment <Configuration of Embodiment>
FIG. 1 is a diagram showing a configuration of the present embodiment. In FIG. 3, the operating elements 1-1, 1-2,..., 1-n (n is an integer) have a rod-like shape that can be freely moved by the operator A as shown in FIG. is doing. Note that when the operators 1-1 to 1-n are collectively referred to, they are simply referred to as the operator 1.
The operation element 1 has a built-in sensor for detecting its movement. In the present embodiment, a speed sensor for detecting that the operating element 1 is swung is incorporated. The operating element 1 outputs a peak signal SP (that is, an operating signal corresponding to the operating state of the operating element 1) corresponding to the change in the output signal of the speed sensor at the moment when it is swung down. In the present embodiment, it is only necessary to detect the swing-down of the operation element 1, and therefore another sensor (such as an acceleration sensor) may be used as the sensor. Further, each of the operators 1 outputs identification information SID for identifying itself. In addition, the identification information of each operation element 1-1 to 1-n is written as SID (1-1) to SID (1-n).
The operating element 1 wirelessly transmits sensor information SI including the peak signal SP and the identification information SID to the receiving device 2, and the receiving device 2 supplies the sensor signal SI to the personal computer 3. In the present embodiment, a wireless transmission method based on Bluetooth (registered trademark) is adopted, but this transmission method is arbitrary.

図2は、パーソナルコンピュータ3の構成を示すブロック図であり、受信装置2は、USB(Universal Serial Bus)インターフェイス(I/F)309に接続されている。そして、USBインターフェイス309を介してセンサ情報SIはCPU301に供給される。
同図において、CPU301は、RAM303の記憶領域をワークエリアとして利用し、ROM302に格納されている各種プログラムを実行することで装置各部を制御する。ハードディスク装置(以下、HDDと記す)304には複数の演奏データが記憶されており、また、外部記憶装置310に挿入されるCD−ROMにも複数の演奏データが記録されている。本実施形態において用いる演奏データは、MIDI規格によるものであるが、演奏データは楽音を指定する楽音パラメータの集合となっている。
自動演奏が指示されたときは、指定された演奏データがHDD304またはCD−ROMより呼び出されて、RAM303の演奏データ格納領域に格納される。演奏データ格納領域に格納された演奏データの各楽音パラメータは、CPU301によって演奏の進行に沿って順次読み出されるようになっている。
FIG. 2 is a block diagram showing a configuration of the personal computer 3, and the receiving device 2 is connected to a USB (Universal Serial Bus) interface (I / F) 309. Then, the sensor information SI is supplied to the CPU 301 via the USB interface 309.
In the figure, a CPU 301 uses the storage area of a RAM 303 as a work area, and controls each part of the apparatus by executing various programs stored in a ROM 302. A plurality of performance data is stored in a hard disk device (hereinafter referred to as HDD) 304, and a plurality of performance data is also recorded on a CD-ROM inserted into the external storage device 310. The performance data used in this embodiment is based on the MIDI standard, but the performance data is a set of musical sound parameters for designating musical sounds.
When the automatic performance is instructed, the designated performance data is called from the HDD 304 or the CD-ROM and stored in the performance data storage area of the RAM 303. Each musical tone parameter of the performance data stored in the performance data storage area is sequentially read out by the CPU 301 as the performance progresses.

表示部305は、CPU301の制御の下に各種情報を表示する。キーボード306およびポインティングデバイス307は、操作者の操作に従って各種の指示や情報を入力する。また、MIDIインターフェイス308は、パーソナルコンピュータ3と音源装置4との間でMIDI規格の楽音パラメータの送受信を行うためのインターフェイスである。
次に、図1に示す音源装置4はパーソナルコンピュータ3から出力されたMIDI規格の楽音パラメータを受信して、これに基づいて楽音信号を生成する。この楽音信号の生成においては、楽音パラメータデータが示す音高、音量、残響、ブライトネス、音像等に従って楽音信号が形成される。この楽音信号は、アンプ5へと供給され、アンプ5において楽音信号が増幅された後にスピーカ6にて放音される。
以上説明した受信装置2,パーソナルコンピュータ3,音源装置4,アンプ5,スピーカ6によって自動演奏装置100が構成されている。
The display unit 305 displays various information under the control of the CPU 301. The keyboard 306 and the pointing device 307 input various instructions and information according to the operation of the operator. The MIDI interface 308 is an interface for transmitting and receiving musical tone parameters of the MIDI standard between the personal computer 3 and the tone generator 4.
Next, the tone generator device 4 shown in FIG. 1 receives the MIDI standard musical tone parameter output from the personal computer 3, and generates a musical tone signal based on the received musical tone parameter. In the generation of the tone signal, the tone signal is formed according to the pitch, volume, reverberation, brightness, sound image, etc. indicated by the tone parameter data. This musical sound signal is supplied to the amplifier 5, and after the musical sound signal is amplified in the amplifier 5, the sound is emitted from the speaker 6.
The automatic performance device 100 is constituted by the receiving device 2, the personal computer 3, the sound source device 4, the amplifier 5, and the speaker 6 described above.

(演奏データの内容)
ここで、HDD304またはCD−ROMに記憶されている演奏データの構造について説明する。
本実施形態においては、上述したようにMIDI規格による演奏データを用いて自動演奏を行う。演奏データを構成する楽音パラメータには、一つひとつの音符について音高、音長、ベロシティ(つよさ)などを示すもの、楽曲全体に影響を与えるもの(全体の音量、テンポ、残響や音像定位など)、あるいは特定のパートの全体に影響を与えるもの(パート別の残響や音像定位など)がある。
本実施形態においては、演奏の進行に応じて楽音パラメータを順次読み出して自動演奏処理を行うが、操作子1の操作に応じて楽曲の進行を制御するようになっている。
(Contents of performance data)
Here, the structure of performance data stored in the HDD 304 or the CD-ROM will be described.
In the present embodiment, as described above, automatic performance is performed using performance data according to the MIDI standard. The musical sound parameters that make up the performance data indicate the pitch, length, velocity, etc. of each note, and affect the entire song (total volume, tempo, reverberation, sound image localization, etc.) Or, there are things that affect the whole of a specific part (such as reverberation and sound localization for each part).
In the present embodiment, the musical sound parameters are sequentially read according to the progress of the performance and the automatic performance processing is performed. However, the progress of the music is controlled according to the operation of the operation element 1.

以下においては、本実施形態で用いる演奏データについて図4を参照して詳細に説明する。図4は行と列のマトリックスになっているので、まず、列について説明する。
第1列のデルタタイムは、イベントとイベントとの時間間隔を示しており、テンポクロックの数で表される。デルタタイムが「0」の場合は、直前のイベントと同時に実行される。
第2列には演奏データの各イベントが持つメッセージの内容が記述されている。このメッセージには、例えば発音イベントを示すノートオンメッセージ(NoteOn)や消音イベントを示すノートオフメッセージ(NoteOff)の他、音量やパンポット(音像定位)を指示するコントロールチェンジメッセージ(ControlChange)等が含まれる。
In the following, the performance data used in this embodiment will be described in detail with reference to FIG. Since FIG. 4 is a matrix of rows and columns, the columns will be described first.
The delta time in the first column indicates the time interval between events, and is represented by the number of tempo clocks. When the delta time is “0”, it is executed simultaneously with the immediately preceding event.
In the second column, the contents of messages of each event of the performance data are described. This message includes, for example, a note-on message (NoteOn) indicating a sound generation event and a note-off message (NoteOff) indicating a mute event, as well as a control change message (ControlChange) instructing the volume and panpot (sound image localization). It is.

第3列にはチャネルの番号が記述されている。各チャネルは各々異なる演奏パートに対応し、複数のチャネルが同時に演奏されることにより、アンサンブル演奏がなされる。なお、メタイベントやシステムエクスクルーシブイベント等のチャネルに依存しないイベントデータについては、この第3列に値を持たない。
第4列には、ノートナンバ(NoteNum)、プログラムナンバ(ProgNum)あるいはコントロールナンバ(CtrlNum)が記述されるが、どれが記述されるかはメッセージの内容により異なる。例えばノートオンメッセージまたはノートオフメッセージであれば、ここには音階を表すノートナンバが記述され、またコントロールチェンジメッセージであればその種類(音量やパンポット等)を示すコントロールナンバが記述されている。
第5列にはMIDIメッセージの具体的な値(データ)が記述されている。例えばノートオンメッセージまたはノートオフメッセージであれば、ここには音の強さを表すベロシティの値が記述され、またコントロールチェンジメッセージであればコントロールナンバに応じたパラメータの値が記述されている。
The third column describes channel numbers. Each channel corresponds to a different performance part, and an ensemble performance is performed by simultaneously performing a plurality of channels. It should be noted that event data that does not depend on the channel, such as meta events and system exclusive events, does not have a value in this third column.
In the fourth column, a note number (NoteNum), a program number (ProgNum), or a control number (CtrlNum) is described. Which is described depends on the content of the message. For example, in the case of a note-on message or note-off message, a note number indicating a musical scale is described here, and in the case of a control change message, a control number indicating the type (volume, panpot, etc.) is described.
The fifth column describes specific values (data) of the MIDI message. For example, in the case of a note-on message or a note-off message, a velocity value representing the sound intensity is described here, and in the case of a control change message, a parameter value corresponding to a control number is described.

次に、図4に示す各行について説明する。まず、第1行のヘッダー(Header)は時間単位を示している。「時間単位」とは分解能を示すものであり、4分音符あたりのテンポクロック数で表現される。図4においては「480」の値がセットされており、この場合は4分音符一つが480個分のテンポクロックの長さに対応することが指示されたことを意味している。
第2行のテンポ指令値(SetTempo)は、演奏の速さを指定し、4分音符の長さをマイクロ秒で表す。例えば、4分音符=120のテンポの場合、4分音符が1分間に120拍であるため、60(秒)/120(拍)×1000000=500000(マイクロ秒)の値が、テンポ指令値の値としてセットされる。自動演奏はテンポクロックに基づく速さで行われるが、テンポクロックの周期は、テンポ指令値と時間単位の値に応じて制御されるようになっている。したがって、テンポ指令値(SetTempo)が「500000」で時間単位が「480」の場合は、テンポクロックの周期は「1/960」となる。
第3行から第6行にはシステムエクスクルーシブメッセージが記述され、第7行から第11行にはプログラムチェンジメッセージとコントロールチェンジメッセージが記述されている。これらは、楽曲全体に影響を与える楽音パラメータであるが、本実施形態の動作には関係がないので、その説明は割愛する。
Next, each row shown in FIG. 4 will be described. First, the header (Header) in the first row indicates a time unit. “Time unit” indicates resolution and is expressed by the number of tempo clocks per quarter note. In FIG. 4, a value of “480” is set, which means that it is instructed that one quarter note corresponds to the length of 480 tempo clocks.
The tempo command value (SetTempo) on the second line specifies the speed of performance and represents the length of a quarter note in microseconds. For example, in the case of a quarter note = 120 tempo, since a quarter note is 120 beats per minute, the value of 60 (seconds) / 120 (beats) × 1000000 = 500000 (microseconds) is the tempo command value. Set as a value. The automatic performance is performed at a speed based on the tempo clock, and the cycle of the tempo clock is controlled according to the tempo command value and the value in time unit. Therefore, when the tempo command value (SetTempo) is “500000” and the time unit is “480”, the cycle of the tempo clock is “1/960”.
Lines 3 to 6 describe system exclusive messages, and lines 7 to 11 describe program change messages and control change messages. These are musical sound parameters that affect the entire music composition, but are not related to the operation of the present embodiment, so the description thereof will be omitted.

次に、第12行以降は、各チャネルの音符についての楽音パラメータとなっている。これらは発音を示すノートオンイベント(NoteOn)と消音を示すノートオフイベント(NoteOff)のメッセージで構成され、各イベントには音高を示すノートナンバ(NoteNum)と、音の強さを示すベロシティ(Velocity)が付加される。
ここで、図4に示す音符列がどのように演奏されるかを説明すると、まずチャネル「1」で「C4」、チャネル「2」で「E4」、チャネル「3」で「G4」、チャネル「4」で「B4」、チャネル「5」で「C3」が同時に発音される。それからデルタタイム「240」の後にチャネル「2」から「5」が一斉に消音する。このときチャネル「1」にはノートオフイベントが記述されていないので、チャネル「1」では引き続き「C4」の音が発音される。チャネル「2」から「5」においては、消音と同時に次の音が発音される。具体的にはチャネル「2」、「4」、「5」で「F4」、チャネル「3」で「A4」の音が発音される。
以上のような手順で各チャネルの発音と消音が繰り返され、演奏が進行する。
すなわち、MIDIデータを用いた一般的な自動演奏処理は、デルタタイムによって示される時間を待って次々とイベントを実行する、という処理を演奏が終了するまで繰り返す。ただし、本実施形態においては、デルタタイムに基づいた楽曲の進行の制御よりも、操作子1の操作に応じた楽曲の進行制御の方が優先される。その詳細については後述する。
Next, the music parameters for the notes of each channel are shown in the twelfth and subsequent lines. These are composed of a note-on event (NoteOn) indicating sound and a note-off event (NoteOff) indicating mute. Each event has a note number (NoteNum) indicating a pitch and a velocity (note). (Velocity) is added.
Here, how the musical note sequence shown in FIG. 4 is played will be described. First, “C4” in channel “1”, “E4” in channel “2”, “G4” in channel “3”, channel “B4” is sounded simultaneously with “4”, and “C3” is sounded simultaneously with channel “5”. Then, after the delta time “240”, the channels “2” to “5” are muted all at once. At this time, since no note-off event is described in channel “1”, the sound of “C4” is continuously generated in channel “1”. In channels “2” to “5”, the next sound is produced simultaneously with the mute. Specifically, “F4” is sounded on channels “2”, “4”, and “5”, and “A4” is sounded on channel “3”.
The sounding and muting of each channel is repeated in the above procedure, and the performance proceeds.
That is, in a general automatic performance process using MIDI data, the process of waiting for the time indicated by the delta time and executing events one after another is repeated until the performance ends. However, in the present embodiment, the music progression control according to the operation of the operator 1 is prioritized over the music progression control based on the delta time. Details thereof will be described later.

(RAM303に設定されるテーブルの内容)
次に、RAM303に設定されるテーブルについて説明する。パーソナルコンピュータ3の電源投入時に起動されるROM302のプログラムに基づき、CPU301は、初期設定を行うが、このときRAM303の記憶領域にそれぞれ図5、図6に示されるようなテーブルを作成する。
図5に示すTB1はチャネル設定テーブルであり、操作子とチャネルの対応関係が設定されている。なお、この対応関係は、キーボード306やポインティングデバイス307を操作することによって自由に変更することができる。
図6に示すTB2は現在テンポテーブルであり、操作子1の操作(振り下ろしの間隔)に応じたテンポ値Tempo・Rが格納される。このテンポ値Tempo・Rは操作子1が振り下ろされる度に更新されるようになっている。なお、初期状態においては、演奏データに含まれているテンポ指令値(SetTempo)の値が書き込まれるようになっている。
(Contents of table set in RAM 303)
Next, a table set in the RAM 303 will be described. Based on the program stored in the ROM 302 that is activated when the personal computer 3 is turned on, the CPU 301 performs initial settings. At this time, tables as shown in FIGS. 5 and 6 are created in the storage area of the RAM 303, respectively.
TB1 shown in FIG. 5 is a channel setting table, in which the correspondence between operators and channels is set. Note that this correspondence can be freely changed by operating the keyboard 306 or the pointing device 307.
TB2 shown in FIG. 6 is a current tempo table, and stores a tempo value Tempo · R corresponding to the operation of the operator 1 (the swing-down interval). This tempo value Tempo · R is updated every time the operator 1 is swung down. In the initial state, the value of the tempo command value (SetTempo) included in the performance data is written.

<実施形態の動作>
上記の構成によるこの実施形態の動作について説明する。
まず、この自動演奏装置100には、各種の演奏モードが備わっており、操作者がキーボード306等を用いてモードの選択操作をすることにより、モードの選択や組み合わせが設定される。
各モードについて簡単に説明すると、まず、操作者が単独で演奏をする単独演奏モードと複数の操作者が異なるパートを同時に演奏する複数演奏モードがある。また、単独演奏モードと複数演奏モードのそれぞれにおいては、操作子1が振り下ろされる間隔(いわゆる楽曲の拍タイミング)に基づいてテンポが制御されるマニュアルモードと、操作子1が振り下ろされる度に、対応するチャネルのノートオンイベント(NoteOn)が読み出されて発音されるノートモードとがある。以下、それぞれのモードの動作について説明する。
<Operation of Embodiment>
The operation of this embodiment having the above configuration will be described.
First, the automatic performance device 100 is provided with various performance modes, and mode selection and combination are set by the operator performing a mode selection operation using the keyboard 306 or the like.
Each mode will be briefly described. First, there are a single performance mode in which an operator performs independently and a multiple performance mode in which a plurality of operators perform different parts simultaneously. Further, in each of the single performance mode and the multiple performance mode, a manual mode in which the tempo is controlled based on an interval (so-called beat timing of the music) at which the operation element 1 is lowered, and every time the operation element 1 is lowered. There is a note mode in which a note-on event (NoteOn) of a corresponding channel is read and sounded. Hereinafter, the operation of each mode will be described.

a:単一操作子演奏モード
このモードは、一人の操作者が単一の操作子を操作して一つまたは複数のパートの演奏を制御するモードである。この単一操作子演奏モードにおいては、ノートモードとマニュアルモードを選択することができる。さらに、単一操作子演奏モードにおいて複数のパートの演奏を制御する場合のノートモードには、ノート自動モードとノート伴奏モードの二つのモードがある。
(1)ノートモード
このモードは、操作子1が振り下ろされる度に、例えばメロディパートなど操作子に対応するチャネルのノートオンイベント(NoteOn)が読み出されて発音されるとともに、例えば伴奏パートに対応するチャネルのノートオンイベント(NoteOn)を操作子1の振り下ろしタイミングに応じて読み出して発音することにより、アンサンブル演奏を自動的に行うモードである。
a: Single operator operation mode This mode is a mode in which one operator operates a single operator to control the performance of one or more parts. In the single operator performance mode, a note mode and a manual mode can be selected. Further, note modes for controlling the performance of a plurality of parts in the single operator performance mode include two modes, an automatic note mode and a note accompaniment mode.
(1) Note mode In this mode, every time the operation element 1 is swung down, a note-on event (NoteOn) of a channel corresponding to the operation element, such as a melody part, is read and pronounced. In this mode, a note-on event (NoteOn) of the corresponding channel is automatically read out and pronounced according to the swing-down timing of the operation element 1 so that an ensemble performance is automatically performed.

(単独の演奏パートの演奏)
初めに、単独のパートを演奏する場合を例にとる。図7は単独のパートの一例を示す楽譜であり、図8はそれに対応した演奏データの一部である。なお、図8に示す演奏データにおいては、「時間単位」が「480」に設定されており(図4参照)、4分音符に相当するデルタタイムは「480」になっている。
まず、図8に示す演奏データを用いて、一般的な自動演奏を行った場合の動作を説明する。演奏の開始が指示されると、図2に示すCPU301は、図8に示す演奏データをRAM303の演奏データ格納領域に格納し、先頭のデータから順次読み出して処理してゆく。ノートイベントについては、まず、E3音のノートオンイベント(NoteOn)が読み出され、MIDIインターフェイス308を介して音源装置4に転送される。音源装置4は、E3音の楽音信号を生成し、この楽音信号はアンプ5で増幅された後にスピーカ6で放音される。
(Performance of a single performance part)
First, take the case of playing a single part as an example. FIG. 7 is a musical score showing an example of a single part, and FIG. 8 is a part of performance data corresponding thereto. In the performance data shown in FIG. 8, the “time unit” is set to “480” (see FIG. 4), and the delta time corresponding to the quarter note is “480”.
First, an operation when a general automatic performance is performed using the performance data shown in FIG. 8 will be described. When the start of performance is instructed, the CPU 301 shown in FIG. 2 stores the performance data shown in FIG. 8 in the performance data storage area of the RAM 303, and sequentially reads and processes the data from the head data. As for the note event, first, a note-on event (NoteOn) of the E3 sound is read and transferred to the sound source device 4 via the MIDI interface 308. The tone generator 4 generates an E3 tone signal, and the tone signal is amplified by the amplifier 5 and then emitted from the speaker 6.

そして、デルタタイム「480」の後、すなわち、テンポクロックを480カウントした後に、E3音のノートオフイベント(NoteOff)が読み出され、E3音が消音される。この結果、E3音は4分音符の長さだけ発音される。また、E3音のノートオフイベント(NoteOff)に対しデルタタイム「0」のイベントであるF3音のノートオンイベント(NoteOn)が、同時に読み出されて発音される。そして、デルタタイム「240」の後に、F3音のノートオフイベント(NoteOff)が読み出され、F3音が消音される。これにより、F3音は8分音符の長さだけ発音される。以後、同様にして発音処理、消音処理が行われ、図7に示す楽曲の演奏が自動的に行われてゆく。なお、デルタタイムが「0」のC4音はA3音と同時に発音され、同様にB3音とD4音も同時に発音される。このようにして和音についても自動演奏が行われる。自動演奏のテンポは、テンポクロックの周期で決定されるが、テンポクロックの周期は前述したようにテンポ指令値(SetTempo)で決定される(図4参照)。   Then, after the delta time “480”, that is, after the tempo clock is counted 480, the note-off event (NoteOff) of the E3 sound is read and the E3 sound is muted. As a result, the E3 sound is pronounced for the length of the quarter note. In addition, an F3 note-on event (NoteOn), which is a delta time “0” event, is simultaneously read out and sounded with respect to an E3 note-off event (NoteOff). Then, after the delta time “240”, a note-off event (NoteOff) of the F3 sound is read, and the F3 sound is muted. As a result, the F3 sound is sounded for the length of an eighth note. Thereafter, the sound generation process and the mute process are performed in the same manner, and the music performance shown in FIG. 7 is automatically performed. Note that the C4 sound with a delta time of “0” is pronounced at the same time as the A3 sound, and the B3 sound and the D4 sound are also pronounced at the same time. In this way, the chord is automatically played. The tempo of automatic performance is determined by the tempo clock cycle, and the tempo clock cycle is determined by the tempo command value (SetTempo) as described above (see FIG. 4).

以上の自動演奏によって各音符が発音された時刻を図7に示すように時刻t1〜t6とする。これらの時刻t1〜t6は、テンポ指令値(SetTempo)に基づく一定のテンポで演奏を行った場合の各音符の発音時刻である。
次に、本実施形態における操作子1を用いた演奏について説明する。操作者は、まず、演奏開始を自動演奏装置100に指示するために操作子1を振り下ろす(以下、この操作を前うち操作という)。操作者によって前うち操作がなされると、操作子1からは、上から下へ振り下ろした時の速度変化を表すピーク信号SPが出力される。ピーク信号SPは受信装置2を介してCPU301に供給される。CPU301は、操作子1から最初のピーク信号SPを受け取ると、操作者によって前うち操作がなされたと判断し、図6に示す現在テンポテーブルTB2の現在テンポTempo・Rの値をテンポ指令値(SetTempo)の値に設定する。そして、テンポクロックの周期を現在テンポTempoの値に従って決定する。なお、前うち操作がなされた段階においては、自動演奏は開始されず、この段階においては演奏データ内のテンポ指令値(SetTempo)に従ってテンポクロックが決定されていることになる。
The time when each note is pronounced by the above automatic performance is defined as time t1 to t6 as shown in FIG. These times t1 to t6 are the pronunciation times of each note when a performance is performed at a constant tempo based on the tempo command value (SetTempo).
Next, a performance using the operation element 1 in this embodiment will be described. First, the operator swings down the operating element 1 to instruct the automatic performance device 100 to start performance (hereinafter, this operation is referred to as an operation before). When the operator performs an operation earlier, the operator 1 outputs a peak signal SP indicating a speed change when swinging down from top to bottom. The peak signal SP is supplied to the CPU 301 via the receiving device 2. When the CPU 301 receives the first peak signal SP from the operator 1, the CPU 301 determines that the operation has been performed by the operator before, and sets the value of the current tempo Tempo · R in the current tempo table TB2 shown in FIG. 6 as the tempo command value (SetTempo). ) Value. Then, the period of the tempo clock is determined according to the value of the current tempo Tempo. It should be noted that the automatic performance is not started at the stage where the operation was performed before, and the tempo clock is determined according to the tempo command value (SetTempo) in the performance data at this stage.

次に、操作者が操作子1を振り下ろすと、振り下ろしたタイミングにおいてピーク信号(操作信号)SPが出力される。ピーク信号SPは受信装置2を介してCPU301に供給される。CPU(発音処理手段)301は、ピーク信号SPを受け取ると、図8に示すE3音のノートオンイベント(NoteOn)を読み出し、これについて上述した場合と同様の発音処理を行う。このように本実施形態においては、前うち操作がなされた後に操作子1が振り下ろされてはじめて、自動演奏が開始される。
そして、発音されたE3音は、デルタタイム「480」をカウントしている間は発音が継続されるが、操作者が時刻t2より早いタイミングで操作子1を再度振り下ろすと、この振り下ろしによってピーク信号SPが出力されたタイミングでE3音のノートオフイベント(NoteOff)、F3音のノートオンイベント(NoteOn)が読み出され、それぞれ消音処理、発音処理がなされる。例えば、時刻t11で2度目の振り下ろし(前うち操作のための振り下ろしを除く;以下同様)があると、この時刻においてE3音が消音され、F3音が発音される。
Next, when the operator swings down the operating element 1, a peak signal (operation signal) SP is output at the timing when the operator 1 is swung down. The peak signal SP is supplied to the CPU 301 via the receiving device 2. When receiving the peak signal SP, the CPU (sound generation processing means) 301 reads the note-on event (NoteOn) of the E3 sound shown in FIG. 8, and performs the same sound generation process as described above. As described above, in the present embodiment, the automatic performance is started only after the operation element 1 is swung down after the previous operation.
And the sounded E3 sound continues to be sounded while the delta time “480” is counted. However, when the operator swings down the operation element 1 again at a timing earlier than the time t2, the swinging down is performed. At the timing when the peak signal SP is output, the note-off event (NoteOff) of the E3 sound and the note-on event (NoteOn) of the F3 sound are read out, and the mute process and the sound generation process are performed, respectively. For example, if there is a second swing at time t11 (except for the previous swing down operation; the same applies hereinafter), the E3 sound is muted and the F3 sound is generated at this time.

一方、操作子1の2度目の振り下ろしが時刻t2になっても行われない場合は、デルタタイム「480」をカウントし終えたタイミングで、CPU301はE3音のノートオフイベント(NoteOff)を読み出し、E3音を消音する。そして、CPU301は、F3音のノートオンイベント(NoteOn)を読み出さず、このイベントが格納されているRAM303の記憶エリアのアドレスをポインタに格納して自動演奏を一時中止する。すなわち、CPU301は、現在発音中の音のノートオフイベント(NoteOff)が読み出されても、次のピーク信号SPが来ない場合は、次の音の発音処理に移行せず、自動演奏を一時中止する。また、次に発音すべきF3音が、E3音に対してデルタタイムが「0」でない場合(楽譜上は休符を挟んで位置している場合)も、次に発音すべきF3音のノートオンイベント(NoteOn)が格納されている記憶エリアのアドレスをポインタに格納して自動演奏を一時中止する。   On the other hand, if the second swing of the controller 1 is not performed even at time t2, the CPU 301 reads the note-off event (NoteOff) of the E3 sound at the timing when the delta time “480” is counted. , Mute the E3 sound. Then, the CPU 301 does not read out the note-on event (NoteOn) of the F3 sound, stores the address of the storage area of the RAM 303 in which this event is stored in the pointer, and temporarily stops the automatic performance. That is, if the next peak signal SP does not come even when the note-off event (NoteOff) of the currently sounding sound is read, the CPU 301 does not shift to the sound generation process of the next sound and temporarily performs automatic performance. Cancel. Also, when the F3 sound to be sounded next has a delta time other than “0” with respect to the E3 sound (when it is positioned with a rest on the score), the note of the F3 sound to be sounded next The address of the storage area where the on event (NoteOn) is stored is stored in the pointer, and the automatic performance is temporarily stopped.

なお、場合によっては、消音の時刻が異なる複数の音を同時に発音していることもあるが、この場合には、最後に消音する音のノートオフイベント(NoteOff)が読み出されるまでにピーク信号SPが検出されなければ、次のノートオンイベント(NoteOn)を読み出すことなく、自動演奏を一時中止する。
そして、自動演奏が中止された後に、操作者が操作子1を振り下ろすと、このタイミングにおいてピーク信号SPが出力される。このピーク信号SPがCPU301に検出されると、CPU301はポインタから、次に発音すべき音のイベントが格納されているアドレスを読み出し、そのアドレスにあるノートオンイベント(NoteOn)を実行する。図7、図8に示す例において時刻t21にピーク信号SPが検出された場合は、この時刻においてF3音のノートオンイベント(NoteOn)を読み出し、発音処理を行う。
In some cases, a plurality of sounds having different mute times may be simultaneously generated. In this case, the peak signal SP is read before the note-off event (NoteOff) of the last mute sound is read out. If is not detected, the automatic performance is temporarily stopped without reading the next note-on event (NoteOn).
When the operator swings down the operator 1 after the automatic performance is stopped, the peak signal SP is output at this timing. When this peak signal SP is detected by the CPU 301, the CPU 301 reads from the pointer the address where the event of the sound to be sounded next is stored, and executes the note-on event (NoteOn) at that address. In the example shown in FIGS. 7 and 8, when the peak signal SP is detected at time t21, the note-on event (NoteOn) of the F3 sound is read at this time, and sound generation processing is performed.

また、上記処理においては、CPU(間隔算出手段)301は、ピーク信号SPを検出したときは、その時刻と一つ前にピーク信号SPを検出した時刻との差を求める。すなわち、上記の場合は、(t11−t1)あるいは(t21−t1)を求める。そして、CPU(テンポ更新手段)301は、この時間差に基づいてテンポを更新し、更新したテンポをテンポ値Tempo・Rとして現在テンポテーブルTB2に格納する。
新しいテンポは、ピーク信号SPが出力された間隔と、その時発音していた音符の長さから決定される。図7,図8に示すE3音の場合は、4分音符であり、デルタタイムは「480」であるから、このデルタタイムに対するピーク信号SPの出力間隔からテンポを求める。
Further, in the above processing, when the CPU (interval calculation means) 301 detects the peak signal SP, it obtains the difference between that time and the time when the peak signal SP was detected immediately before. That is, in the above case, (t11-t1) or (t21-t1) is obtained. Then, the CPU (tempo update means) 301 updates the tempo based on this time difference, and stores the updated tempo as a tempo value Tempo · R in the current tempo table TB2.
The new tempo is determined from the interval at which the peak signal SP is output and the length of the note that was sounding at that time. In the case of the E3 sound shown in FIGS. 7 and 8, it is a quarter note and the delta time is “480”, so the tempo is obtained from the output interval of the peak signal SP with respect to this delta time.

例えば、時刻t11でピーク信号SPが出力された場合は、デルタタイム「480」のカウントが終了していないから、CPU301はE3音のノートオフイベント(NoteOff)を探し、E3音のノートオンイベント(NoteOn)からノートオフイベント(NoteOff)までのデルタタイムと時間差(t11−t1)とから新しいテンポを決定する。
上記の例の場合は、「時間単位」が「480」でテンポ指令値SetTempo(初期値)が「500000」であるから、4分音符であるE3音の発音時間は「500000」マイクロ秒であり、テンポクロック周期は「1/960」である。そして、ピーク信号SPの時間差(t11−t1)が「400000」マイクロ秒であれば、テンポ値Tempo・Rを「400000」に書き換える。そして、更新されたテンポ値Tempo・Rに応じてテンポクロックの周期を変更する。これにより、テンポが早くなり、次の音であるF4音の発音時間は当初のテンポの場合より短くなる。一方、ピーク信号SPの時間差(t21−t1)が「600000」マイクロ秒であれば、テンポ値Tempo・Rを「600000」に書き換える。そして、更新されたテンポ値Tempo・Rに応じてテンポクロックの周期を変更する。これにより、テンポが遅くなり、次の音であるF4音の発音時間は当初のテンポの場合より長くなる。つまり、CPU(発音長制御手段)301は、次の音であるF3音の発音長さについては、上記の如く更新したテンポに対応する長さに制御する。
なお、E3音が8分音符であったとすると、時間差(t11−t1)あるいは(t21−t1)は新たなテンポにおける8分音符の長さを示すものとなるから、これを4分音符に換算してテンポ値Tempo・Rを更新する。
For example, when the peak signal SP is output at time t11, since the count of the delta time “480” has not ended, the CPU 301 searches for a note-off event (NoteOff) of the E3 sound, A new tempo is determined from the delta time from NoteOn) to the note-off event (NoteOff) and the time difference (t11-t1).
In the case of the above example, since the “time unit” is “480” and the tempo command value SetTempo (initial value) is “500000”, the sounding time of the E3 sound that is a quarter note is “500000” microseconds. The tempo clock cycle is “1/960”. If the time difference (t11−t1) of the peak signal SP is “400000” microseconds, the tempo value Tempo · R is rewritten to “400000”. Then, the period of the tempo clock is changed according to the updated tempo value Tempo · R. As a result, the tempo becomes faster and the sound generation time of the next F4 sound is shorter than in the initial tempo. On the other hand, if the time difference (t21−t1) of the peak signal SP is “600000” microseconds, the tempo value Tempo · R is rewritten to “600000”. Then, the period of the tempo clock is changed according to the updated tempo value Tempo · R. As a result, the tempo is slowed down, and the sound generation time of the next F4 sound, which is the next sound, becomes longer than in the original tempo. That is, the CPU (sounding length control means) 301 controls the sounding length of the next sound F3 sound to a length corresponding to the tempo updated as described above.
If the E3 note is an eighth note, the time difference (t11-t1) or (t21-t1) indicates the length of the eighth note at the new tempo, which is converted into a quarter note. The tempo value Tempo · R is updated.

上記処理においては、時間差をそのまま用いてテンポ値Tempo・Rを更新したが、テンポが大幅に変化するのを防止するため、時間差の変化分を用いてテンポを変化させたり、あるいはテンポ変化の上限値を設けてそれ以上の変化を許容しないように処理してもよい。
また、E3音のノートオフイベント(NoteOff)が検出されるまでの間に、複数のデルタタイムが存在している場合は、それらのデルタタイムを全て加算したものとピーク信号の時間差とから、新しいテンポを求める。
また、上記処理においては、発音中の音のノートオフイベント(NoteOff)が読み出されるまでにピーク信号SPが検出されない場合は、自動演奏を一時中止するようにしたが、一時中止の状態が所定時間以上継続した場合は、テンポの更新を行わず、現在テンポテーブルTBに記憶されている一つ前のテンポ値Temp・Rの値でテンポクロックの周期を決めるようにしてもよい。これは、長時間曲が中断した場合に、その中断時間に基づいてテンポを設定すると、不自然に遅いテンポとなってしまい、楽曲の演奏にふさわしくないからである。なお、この場合には、初期のテンポであるテンポ指令値SetTempoを用いてもよい。
In the above processing, the tempo value Tempo · R is updated using the time difference as it is, but in order to prevent the tempo from changing significantly, the tempo is changed using the change in the time difference, or the upper limit of the tempo change. A value may be provided so as not to allow further changes.
In addition, if a plurality of delta times exist before the note-off event (NoteOff) of the E3 sound is detected, a new one is obtained from the sum of those delta times and the time difference between the peak signals. Find the tempo.
Further, in the above processing, when the peak signal SP is not detected before the note-off event (NoteOff) of the sound being sounded is read, the automatic performance is temporarily stopped. If the above continues, the tempo clock period may be determined by the previous tempo value Temp · R stored in the tempo table TB without updating the tempo. This is because when a tune is interrupted for a long time, if the tempo is set based on the interruption time, the tempo becomes unnaturally slow, which is not suitable for the performance of the music. In this case, a tempo command value SetTempo that is an initial tempo may be used.

(複数の演奏パートの同時演奏)
(1−1)ノート自動モード
次に、一人の操作者が単一の操作子を操作して複数のパートを演奏する場合を説明するが、説明の簡略化のために2つのパートからなる曲を演奏する場合を例にとる。ここで、図9は2つのパートからなる曲を示す楽譜である。図9における上段がメロディ、下段が伴奏のパートであり、それぞれチャネル1(特定チャネル),チャネル2(他のチャネル)に割り振られている。なお、上段のメロディは、図7に示した楽譜と同じである。また、図10は図9に示す楽譜に対応した演奏データを示す図である。
まず、メロディのパートについての操作子1の操作と演奏との関係は、上述の単独のパートを演奏する場合と同じである。伴奏のパートについては、メロディパートで発音されている音に対応する音のノートオンイベント(NoteOn)が読み出されて同期を取りながら発音処理されるようになっている。別言するとこの複数の演奏パートの同時演奏においては、同時発音すべきイベントが複数ある場合(メロディパートのみに同時発音すべきイベントがある場合のみならず、メロディパート及び伴奏パートに同時に発音すべきイベントがある場合も含む)があり、かかる場合にはそれらが全て読み出されて発音処理されるようになっている。
(Simultaneous performance of multiple performance parts)
(1-1) Automatic note mode Next, a case where a single operator operates a single operator to play a plurality of parts will be described. To simplify the description, a song composed of two parts is described. Take the example of playing. Here, FIG. 9 is a musical score showing a music composed of two parts. In FIG. 9, the upper part is the melody and the lower part is the accompaniment part, which is assigned to channel 1 (specific channel) and channel 2 (other channels), respectively. The upper melody is the same as the score shown in FIG. FIG. 10 shows performance data corresponding to the score shown in FIG.
First, the relationship between the operation of the operation element 1 and the performance of the melody part is the same as that in the case of playing the single part described above. As for the accompaniment part, a note-on event (NoteOn) corresponding to the sound being sounded in the melody part is read out and subjected to sound generation processing in synchronization. In other words, in the simultaneous performance of multiple performance parts, if there are multiple events that should be pronounced simultaneously (not only if there is an event that should be pronounced simultaneously in the melody part only) (In some cases, there are events), in which case they are all read out and processed for sound generation.

一例を挙げて具体的に説明する。例えば、時刻t1でメロディパート(チャネル1)のE3音のノートオンイベント(NoteOn)が読み出されると、伴奏パート(チャネル2)のC3音のノートオンイベント(NoteOn)が読み出され、それぞれの発音処理が行われる。その後、時刻t2〜t6において操作子1からピーク信号SPが出力されると、メロディパートの音に対応した伴奏パートの音のノートオンイベント(NoteOn)が読み出されて発音される。この場合、時刻t5とt6においては、メロディパートの音に対し伴奏パートの音が複数対応するので以下のような処理内容となる。   A specific example will be described. For example, when the note-on event (NoteOn) of the E3 sound of the melody part (channel 1) is read out at time t1, the note-on event (NoteOn) of the C3 sound of the accompaniment part (channel 2) is read out and each sound is generated. Processing is performed. After that, when the peak signal SP is output from the operator 1 at time t2 to t6, the note-on event (NoteOn) of the accompaniment part sound corresponding to the sound of the melody part is read and pronounced. In this case, at times t5 and t6, a plurality of accompaniment part sounds correspond to the melody part sounds, so the processing contents are as follows.

時刻t5において、メロディパートのB3音、D4音(4分音符)のノートオンイベント(NoteOn)および伴奏パートのG3音、B3音(8分音符)のノートオンイベント(NoteOn)が読み出されて発音処理される。次に、CPU301は、ピーク信号SPが検出されていないことを条件にして、デルタタイム「240」のカウントを続け、カウントが終了した時点で演奏データから伴奏パート(チャネル2)のG3音、B3音のノートオフイベント(NoteOff)を読み出して消音処理を行うとともに、デルタタイム0のG3音、B3音のノートオンイベント(NoteOn)を直ぐに読み出して発音処理を行う。そして、デルタタイム「240」をカウントする。このカウントにおけるテンポクロックの周期は、現在テンポテーブルTB2(図6参照)のテンポ値Tempo・Rによって決定される。つまり、直前のピーク信号SPの出力間隔によって決定される。   At time t5, note-on event (NoteOn) of B3 sound and D4 sound (quarter note) of melody part and note-on event (NoteOn) of G3 sound and B3 sound (eighth note) of accompaniment part are read out. The pronunciation is processed. Next, on the condition that the peak signal SP is not detected, the CPU 301 continues to count the delta time “240”, and when the count is finished, the G3 sound of the accompaniment part (channel 2), B3 A note-off event (NoteOff) of sound is read out and the sound is silenced, and a note-on event (NoteOn) of G3 sound and B3 sound of delta time 0 is immediately read out and sound generation processing is performed. Then, the delta time “240” is counted. The period of the tempo clock in this count is determined by the tempo value Tempo · R of the current tempo table TB2 (see FIG. 6). That is, it is determined by the output interval of the immediately preceding peak signal SP.

そして、デルタタイム「240」のカウントが終了すると、メロディパートのB3音、D4音および伴奏パートのG3音、B3音のノートオフイベント(NoteOff)を読み出し、これらの音の消音処理を行う。別言すると、CPU(他チャネル発音制御手段)301は、ピーク信号SPが検出されていないことを条件にして、t5において処理をしているメロディパートのB3音、D4音(4分音符)のノートオンイベント(NoteOn)から次のメロディパートのC4音(2分音符)のノートオンイベント(NoteOn)までの区間に存在する伴奏パートのノートオンイベント(NoteOn)等を、更新したテンポに応じた速さで順次読み出すとともに、これら伴奏パートの各ノートオンイベントの発音長さをそのテンポに応じた長さに制御する。以上の動作によって、メロディパートの一つの4分音符に対し、伴奏パートの2つの8分音符の演奏が自動的に行われる。また、時刻t6においては、メロディパートのC4音(2分音符)に対して、伴奏パートのG3,A3,B3,C4音(8分音符)が対応しているが、これらの処理についても上記と同様である。   When the count of the delta time “240” is finished, the note-off event (NoteOff) of the B3 sound, D4 sound of the melody part, the G3 sound of the accompaniment part, and the B3 sound is read out, and the sound is silenced. In other words, the CPU (another channel sounding control means) 301 performs the processing of the B3 sound and D4 sound (quarter note) of the melody part processed at t5 on condition that the peak signal SP is not detected. The note-on event (NoteOn) of the accompaniment part that exists in the section from the note-on event (NoteOn) to the note-on event (NoteOn) of the C4 note (half note) of the next melody part, according to the updated tempo While reading sequentially at a speed, the sound generation length of each note-on event of these accompaniment parts is controlled to a length corresponding to the tempo. With the above operation, the performance of two eighth notes of the accompaniment part is automatically performed for one quarter note of the melody part. At time t6, the accompaniment part G3, A3, B3, and C4 (eighth notes) correspond to the melody part C4 (half note). It is the same.

次に、操作者がテンポを変更したときの伴奏音の発音処理について説明する。今、操作者が時刻t4において操作子1を振り下ろした後、時刻t5の前の時刻t41において再び操作子1を振り下ろしたとする。これにより、時刻t41においてピーク信号SPが検出されるから、CPU301はメロディパートの発音中の音(A3音、C4音)を直ぐに消音処理し、同時に伴奏パートのE3音についても消音処理する。そして、メロディパートの次の音であるB3音、D4音のノートオンイベント(NoteOn)を読み出すとともに、これらに対してデルタタイムが「0」である伴奏パートのG3音,B3音のノートオンイベント(NoteOn)も読み出し、これらの音についての発音処理を行う。
また、上記とは逆に時刻t4では操作子1が振り下ろされず、少し遅れた時刻t41において操作子1が振り下ろされた場合は、時刻t3で発音されたメロディパートのG3音は、その時のテンポに応じた長さだけ発音された後、消音処理され、これに対応する伴奏パートのE3音、G3音もメロディパートのG3音とともに消音処理される。その後は、ピーク信号SPの検出待ちとなり、時刻t41でピーク信号SPが検出された時点でメロディパートのB3音、D4音および伴奏パートのG3音,B3音が発音される。
Next, accompaniment sound generation processing when the operator changes the tempo will be described. Now, assume that the operator swings down the operating element 1 at time t4 and then swings down the operating element 1 again at time t41 before time t5. As a result, since the peak signal SP is detected at time t41, the CPU 301 immediately silences the sound (A3 sound, C4 sound) that is being generated by the melody part and simultaneously silences the E3 sound of the accompaniment part. Then, the note-on event (NoteOn) of the B3 sound and D4 sound, which are the next sounds of the melody part, is read, and the note-on event of the G3 sound and B3 sound of the accompaniment part whose delta time is “0”. (NoteOn) is also read out, and sound generation processing is performed for these sounds.
Contrary to the above, when the operating element 1 is not lowered at time t4 and is lowered at time t41, the G3 sound of the melody part that is pronounced at time t3 is After sounding for a length corresponding to the tempo, the sound is silenced, and the corresponding E3 and G3 sounds of the accompaniment part are silenced together with the G3 sound of the melody part. Thereafter, detection of the peak signal SP is awaited, and when the peak signal SP is detected at time t41, the B3 sound and D4 sound of the melody part and the G3 sound and B3 sound of the accompaniment part are generated.

以上のように、操作者の操作に対応したメロディ音の発音、消音処理が行われ、これに同期して伴奏音の発音、消音処理が行われるようになっている。
また、時刻t6でメロディパートのC4音が発音され、これに伴って伴奏パートのG3音が発音、消音処理され、続いてA3音が発音、消音処理された後、時刻t61においてピーク検出信号SPが検出されると、CPU301はメロディパートの次の音であるE3音のノートオンイベントを読み出して発音処理するとともに、伴奏パートのB3音、C4音(8分音符)の処理をスキップし、発音を行わない。
以上のように、メロディパートの演奏が優先され、伴奏パートの発音、消音処理はメロディパートに追従するように制御される。
As described above, the melody sound corresponding to the operation of the operator is generated and silenced, and the accompaniment sound is pronounced and silenced in synchronization with this.
At time t6, the C4 sound of the melody part is sounded, and the G3 sound of the accompaniment part is sounded and muted, and then the A3 sound is sounded and muted, and then the peak detection signal SP at time t61. Is detected, the CPU 301 reads the note-on event of the E3 sound, which is the next sound of the melody part, and performs the sound generation process, and also skips the B3 sound and C4 sound (eighth note) processing of the accompaniment part, Do not do.
As described above, the performance of the melody part is given priority, and the sound generation and mute processing of the accompaniment part is controlled to follow the melody part.

(1−2)ノート伴奏モード
次に、ノート伴奏モードについて説明する。このモードは伴奏パートについては、演奏データによって指定されるテンポに基づいて自動演奏を行う、いわゆる通常の自動演奏処理となる。そして、メロディパートについては、前述した単独の演奏パートの動作と同じである。このモードにおいては、伴奏パートとメロディパートの同期は取られない。なお、いずれのチャネルを伴奏パートにするかメロディパートにするかは操作者が任意に設定すればよい。
このモードは、操作者が伴奏パートの自動演奏を聞きながら、自由にメロディの発音タイミングを指示するときに用いられるモードである。
(1-2) Note Accompaniment Mode Next, the note accompaniment mode will be described. In this mode, the accompaniment part is a so-called normal automatic performance process in which automatic performance is performed based on the tempo specified by the performance data. The melody part is the same as the operation of the single performance part described above. In this mode, the accompaniment part and melody part are not synchronized. Note that the operator can arbitrarily set which channel is the accompaniment part or the melody part.
This mode is a mode used when the operator freely instructs the melody generation timing while listening to the automatic performance of the accompaniment part.

(2)マニュアルモード
このモードは全てのチャネルについて、通常の自動演奏と同じ動作を行うが、テンポについては操作者の操作に従って変化する。
すなわち、操作者が1拍(あるいは2拍)のタイミングで操作子1を振り下ろすと、その振り下ろし間隔に相当するピーク信号の間隔等がCPU301によって検出され、上述の場合と同様にして、ピーク信号の間隔等からテンポを逐次更新してゆく。この更新されたテンポは現在テンポテーブルTB2にテンポ値Tempo・Rとして格納され、このテンポ値Tempo・Rによってテンポクロックの周期が決定される。したがって、操作子1が振り下ろされる間隔に応じて自動演奏のテンポが変化する。なお、この動作は演奏するパートが単一・複数にかかわらず、同様である。
(2) Manual mode This mode performs the same operation as normal automatic performance for all channels, but the tempo changes according to the operation of the operator.
That is, when the operator swings down the operation element 1 at the timing of 1 beat (or 2 beats), the peak signal interval corresponding to the swing-down interval is detected by the CPU 301, and in the same manner as described above, The tempo is updated sequentially from the signal interval. The updated tempo is stored as a tempo value Tempo · R in the current tempo table TB2, and the tempo clock period is determined by the tempo value Tempo · R. Therefore, the tempo of the automatic performance changes according to the interval at which the operation element 1 is swung down. This operation is the same regardless of whether the part to be played is single or plural.

<変形例>
以上説明した動作例では、操作子1の振り下ろし操作を検出する毎に(すなわち1回のピークを検出する毎に)、1音符ずつ演奏を進める場合について説明したが、上記振り下ろし操作を検出する毎に複数の音符を進めるようにしても良い。かかる場合には、検出したピークに続く音符については、既に求めたテンポ値Tempo・Rを利用して演奏を進めれば良い。なお、検出したピークに続く音符が休符(4分休符等)である場合も上記テンポ値Tempo・Rを利用して演奏を進めれば良い。
<Modification>
In the above-described operation example, the case where the performance is advanced by one note each time the operation element 1 is detected to swing down (that is, every time one peak is detected) has been described. A plurality of notes may be advanced each time. In such a case, with respect to the notes following the detected peak, the performance may be advanced by using the already determined tempo value Tempo · R. Even if the note following the detected peak is a rest (quarter rest, etc.), the performance may be advanced using the tempo value Tempo · R.

b:複数操作子演奏モード
このモードは、複数の操作者がそれぞれ操作子を操作して、各自に割り当てられたパートの演奏を制御することにより、複数パートからなる楽曲の演奏を制御するモードである。この複数演奏モードにおいては、例えばメロディパートについてはノートモードで演奏制御を行う一方、伴奏パートについてはマニュアルモードで演奏制御を行うといった選択を行うことができる。
複数操作子演奏モードにて演奏を試みる操作者は、まず、自動演奏装置100のキーボード306等を操作して楽曲の選択、及び各操作子に対するパートの割り当てを行う。例えば、2人の操作者(第1操作者及び第2操作者)で演奏する場合には、操作者は操作子1−1(第1操作者用)に対してメロディパートを割り当て、操作子1−2(第2操作者用)に対して伴奏パートを割り当てるといった選択を行う。なお、以下の説明では、メロディパートが割り当てられた操作子1−1をマスタ操作子1−1と呼び、伴奏パートが割り当てられた操作子1−2をスレーブ操作子1−2と呼ぶ。
かかる操作を行うと、操作者は、さらにキーボード306等を操作してメロディパート及び伴奏パートの各々についてノートモード若しくはマニュアルモードの選択を行う。この結果、RAM(記憶手段)303の所定エリアには、チャネル番号、各操作子を識別するための識別情報、各操作子に対する演奏パートの割り当て、各演奏パートの演奏制御モードの割り当て(属性情報)等が記述された複数演奏モード管理テーブルTA1が格納される(図11参照)。いいかえると、RAM303の所定エリアには、各操作子と各チャネルとの対応関係及び各操作子の主従関係(いずれの操作子がマスタ操作子となり、いずれの操作子がスレーブ操作子となるか)等が記述された複数演奏モード管理テーブル(操作関連情報)TA1が格納される。
以下、マスタ操作子1−1及びスレーブ操作子1−2がともにノートモードに設定された場合の動作について説明する。
b: Multi-operator performance mode This mode controls the performance of music composed of a plurality of parts by controlling the performance of the parts assigned to each operator by operating a plurality of operators. is there. In this multiple performance mode, for example, it is possible to perform selection such that performance control is performed in the note mode for the melody part, while performance control is performed in the manual mode for the accompaniment part.
An operator who attempts to perform in the multi-operator performance mode first operates the keyboard 306 or the like of the automatic performance device 100 to select music and assign parts to each operator. For example, when performing by two operators (first operator and second operator), the operator assigns a melody part to the operator 1-1 (for the first operator), and the operator A selection is made such that an accompaniment part is assigned to 1-2 (for the second operator). In the following description, the operation element 1-1 to which the melody part is assigned is called a master operation element 1-1, and the operation element 1-2 to which the accompaniment part is assigned is called a slave operation element 1-2.
When such an operation is performed, the operator further operates the keyboard 306 and the like to select the note mode or the manual mode for each of the melody part and the accompaniment part. As a result, in a predetermined area of the RAM (storage means) 303, a channel number, identification information for identifying each operation element, performance part assignment to each operation part, performance control mode assignment (attribute information) for each performance part ) And the like are stored (see FIG. 11). In other words, in a predetermined area of the RAM 303, the correspondence between each operator and each channel and the master-slave relationship of each operator (which operator becomes a master operator and which operator becomes a slave operator) A plurality of performance mode management tables (operation-related information) TA1 in which etc. are described are stored.
The operation when both the master operator 1-1 and the slave operator 1-2 are set to the note mode will be described below.

自動演奏装置100のCPU301は、演奏制御に必要な選択等を受け付けると、操作者によって選択された楽曲に対応する演奏データをHDD304から読み出し、これをRAM303の演奏データ格納領域に転送する。一方、各操作者(若しくはいずれか一方の操作者)は、演奏開始を自動演奏装置100に指示すべく、前述した前うち操作を行う。かかる操作がなされると、操作子1からピーク信号SPが出力され、CPU301に供給される。CPU301は、操作子1から最初のピーク信号SPを受け取ると、操作者によって前うち操作がなされたと判断し、図6に示す現在テンポテーブルTB2の現在テンポTempo・Rの値をテンポ指令値(SetTempo)の値に設定する。   When the CPU 301 of the automatic performance device 100 receives a selection necessary for performance control, the performance data corresponding to the music selected by the operator is read from the HDD 304 and transferred to the performance data storage area of the RAM 303. On the other hand, each operator (or one of the operators) performs the above-described operation in order to instruct the automatic performance device 100 to start performance. When such an operation is performed, the peak signal SP is output from the operation element 1 and supplied to the CPU 301. When the CPU 301 receives the first peak signal SP from the operator 1, the CPU 301 determines that the operation has been performed before by the operator, and uses the value of the current tempo Tempo · R of the current tempo table TB2 shown in FIG. ) Value.

その後、各操作者によって演奏進行操作(すなわち操作子1の振り下ろし)が開始されると、各操作子1においてピーク信号SPが生成される。各操作子1は生成したピーク信号(操作信号)SPと当該操作子1を識別するための識別情報SIDとを、操作情報として受信装置2に送信する。CPU(発音処理手段)301は、受信装置2を介して操作情報を受け取ると、複数演奏モード管理テーブル(操作関連情報)TA1を参照し、受け取った操作情報に含まれる識別情報SIDに対応するパートの楽音をノートオンイベント等を読み出して発音処理等を行い、演奏を進めてゆく。
この演奏について図12を参照しながら説明すると、メロディパートの演奏については、CPU301は、マスタ操作子1−1の操作を検出する度に(すなわち、操作情報を受信する度に)、この検出タイミングで対応する楽音を発音し、1音符ずつ演奏を進める(図に示すt1〜t7参照)。なお、この際、マスタ操作子1−1の操作(ピーク)を検出してから次の操作(ピーク)を検出するまでの時間と音符の長さとに基づいて逐次テンポ計算するのは前述したとおりである。
Thereafter, when a performance progression operation (that is, swinging down the operation element 1) is started by each operator, a peak signal SP is generated in each operation element 1. Each operation element 1 transmits the generated peak signal (operation signal) SP and identification information SID for identifying the operation element 1 to the reception device 2 as operation information. When the CPU (sound generation processing means) 301 receives the operation information via the receiving device 2, it refers to the multiple performance mode management table (operation related information) TA 1, and the part corresponding to the identification information SID included in the received operation information. Read the note-on event, etc., and perform sound processing etc., and proceed with the performance.
This performance will be described with reference to FIG. 12. With respect to the performance of the melody part, the CPU 301 detects the detection timing every time the operation of the master operator 1-1 is detected (that is, every time operation information is received). And the corresponding musical sound is generated and the performance is advanced one note at a time (see t1 to t7 in the figure). At this time, as described above, the tempo is sequentially calculated based on the time from the detection of the operation (peak) of the master operator 1-1 to the detection of the next operation (peak) and the length of the note. It is.

一方、伴奏パートの演奏については、CPU301は、スレーブ操作子1−2の操作を検出するタイミング(図13〜図16に示すケース1〜ケース4参照)に応じて下記4通りの処理のいずれかを実行する。なお、CPU301は、受信した操作情報に含まれる識別情報SIDを参照することにより、マスタ操作子1−1からの操作情報であるか、或いはスレーブ操作子1−2からの操作情報であるかを判断する。ここで、上記各図に示すマスタ演奏とは、マスタ操作子1−1によって演奏制御されるメロディパートの演奏を意味し、スレーブ演奏とは、スレーブ操作子1−2によって演奏制御される伴奏パートの演奏を意味する。また、各図に示す黒丸及び白丸は、マスタ演奏若しくはスレーブ演奏の演奏位置を表しており、黒丸は、既演奏位置(既に演奏された位置)、白丸は未演奏位置(未だ演奏されていない位置)を表している。   On the other hand, for the performance of the accompaniment part, the CPU 301 performs one of the following four processes depending on the timing of detecting the operation of the slave operator 1-2 (see cases 1 to 4 shown in FIGS. 13 to 16). Execute. Note that the CPU 301 refers to the identification information SID included in the received operation information to determine whether the operation information is from the master operator 1-1 or the operation information from the slave operator 1-2. to decide. Here, the master performance shown in the above drawings means the performance of the melody part whose performance is controlled by the master operator 1-1, and the slave performance is the accompaniment part whose performance is controlled by the slave operator 1-2. Means playing. The black circles and white circles shown in each figure represent the performance positions of the master performance or slave performance, the black circles are the performance positions (the positions where performance has already been performed), and the white circles are the positions where performance has not yet been performed (the positions where performance has not yet been performed). ).

(ケース1)
CPU(発音処理制御手段)301は、常にマスタ操作子(主となる操作子)1−1の次演奏位置(次に処理される発音イベントの位置)を確認し、スレーブ操作子(従となる操作子)1−2の現演奏位置(発音イベントの位置)が、マスタ操作子1−1の次演奏位置を越えないように制御する。例えば、図13のAに示すように、CPU301がマスタ操作子1−2から操作情報を受け取った時点において、マスタ演奏の演奏位置(現演奏位置)が「2」まで進んでおり、スレーブ演奏の演奏位置がマスタ演奏の未演奏位置(次演奏位置)「3」の直前まで進んでいる状態においてスレーブ操作端末1−2の操作を検出した場合には、スレーブ演奏についてはマスタ演奏よりも先に進ませないという原則のもと、スレーブ演奏を進ませない。かかる場合には、図13のBに示すように、マスタ演奏が演奏位置「3」に進んでからスレーブ操作子1−2の操作を検出したときにスレーブ演奏を進ませる。ただし、この場合にスレーブ演奏を進ませることができるのは、あくまでマスタ演奏の未演奏位置「4」の直前までに限られる。いいかえれば、上記の場合、スレーブ演奏については、マスタ演奏の未演奏位置「4」を越えない範囲でスレーブ演奏を進ませることができる。
(Case 1)
The CPU (sound generation processing control means) 301 always confirms the next performance position (position of the sound generation event to be processed next) of the master operator (main operation element) 1-1 and the slave operator (secondary). Control is performed so that the current performance position (sound generation event position) of the operation element 1-2 does not exceed the next performance position of the master operation element 1-1. For example, as shown in FIG. 13A, when the CPU 301 receives operation information from the master controller 1-2, the performance position of the master performance (current performance position) has advanced to “2”, and the slave performance When the operation of the slave operation terminal 1-2 is detected in a state where the performance position has advanced to the position immediately before the unperformed position (next performance position) “3” of the master performance, the slave performance is performed before the master performance. Based on the principle not to advance, do not advance slave performance. In such a case, as shown in FIG. 13B, the slave performance is advanced when the operation of the slave operator 1-2 is detected after the master performance has advanced to the performance position “3”. However, in this case, the slave performance can be advanced only before the master performance unplayed position “4”. In other words, in the above case, the slave performance can be advanced within the range not exceeding the unplayed position “4” of the master performance.

(ケース2)
また、図14のAに示すように、楽曲の途中の間奏部分など、メロディパートの演奏が途切れて伴奏パートの演奏のみが行われるような部分においてスレーブ操作子1−2の操作を検出すると、CPU301は、このスレーブ操作子1−2の操作を検出するタイミングでスレーブ演奏を進ませる。ただし、スレーブ演奏を進ませることができるのは、あくまで伴奏パートの演奏のみが行われる部分に限られる。いいかえれば、スレーブ演奏を進ませることができるのは、図14のBに示すようにマスタ演奏が再開される未演奏位置「1」の直前までに限られる。なお、スレーブ演奏の演奏位置が間奏部分の演奏位置であるか否かについては、楽曲データ中のメロディパートの楽音パラメータと伴奏パートの楽音パラメータとを比較等して判断すれば良い。
(Case 2)
Further, as shown in FIG. 14A, when the operation of the slave operator 1-2 is detected in a part where the performance of the melody part is interrupted and only the performance of the accompaniment part is performed, such as an interlude part in the middle of the music, The CPU 301 advances the slave performance at the timing of detecting the operation of the slave operator 1-2. However, the slave performance can be advanced only to the portion where only the performance of the accompaniment part is performed. In other words, the slave performance can be advanced only before the unplayed position “1” where the master performance is resumed as shown in FIG. 14B. Whether or not the performance position of the slave performance is the performance position of the interlude part may be determined by comparing the musical sound parameter of the melody part and the musical sound parameter of the accompaniment part in the music data.

(ケース3)
また、CPU301は、スレーブ操作子1−2の操作を検出するタイミングがマスタ操作子1−1の操作を検出するタイミングと同時、若しくはマスタ操作子1−1の操作を検出してから所定時間(300(ms)等)内である場合には、スレーブ操作子1−2の操作を検出するタイミングでスレーブ演奏を進ませる。例えば、図15のAに示すように、スレーブ演奏の演奏位置がマスタ演奏の未演奏位置「3」の直前まで進んでいる場合、マスタ操作子1−1の操作を検出すると同時にスレーブ操作子1−2の操作を検出すると、CPU301は、図15のBに示すように、マスタ演奏を演奏位置「3」に進ませるとともに、スレーブ演奏をマスタ演奏の演奏位置「3」に対応する位置まで進ませる。なお、上記所定時間内にさらにスレーブ操作子1−2の操作を検出した場合には、スレーブ演奏を進ませることができるが、進ませることができるのは、あくまでマスタ演奏の未演奏位置「4」の直前までに限られる。
(Case 3)
The CPU 301 detects the operation of the slave operator 1-2 at the same time as the operation of the master operator 1-1 or detects the operation of the master operator 1-1 for a predetermined time ( 300 (ms) or the like), the slave performance is advanced at the timing when the operation of the slave operator 1-2 is detected. For example, as shown in FIG. 15A, when the performance position of the slave performance has advanced to just before the unplayed position “3” of the master performance, the slave operator 1 is detected simultaneously with the operation of the master operator 1-1. When the operation of -2 is detected, the CPU 301 advances the master performance to the performance position “3” and advances the slave performance to the position corresponding to the performance position “3” of the master performance, as shown in FIG. Make it. If the operation of the slave operator 1-2 is further detected within the predetermined time, the slave performance can be advanced. However, it is possible to advance only the unplayed position “4” of the master performance. Is limited to immediately before.

(ケース4)
また、CPU(発音位置制御手段)301は、スレーブ演奏がマスタ演奏から所定量以上遅れている場合(例えばスレーブ演奏が停止されていた等により4分音符1つ分以上等)にスレーブ操作子1−2の操作を検出すると、スレーブ演奏の演奏位置をマスタ演奏の演奏位置までスキップして進ませる。例えば、図16のAに示すように、マスタ演奏の演奏位置が「3」であり、かつ、スレーブ演奏の演奏位置がマスタ演奏の演奏位置「2」に対応する位置に存在する場合、マスタ操作子1−1の操作を検出すると同時にスレーブ操作子1−2の操作を検出すると、CPU301は、図16のBに示すように、マスタ演奏を演奏位置「4」に進ませるとともに、スレーブ演奏をマスタ演奏の演奏位置「4」に対応する位置までスキップさせる。この結果、スキップしてとばされた音符列(図16に示すM参照)については演奏されずにスキップ後の演奏位置に対応する音符が発音されることになる。
(Case 4)
Further, the CPU (sound generation position control means) 301 is a slave operator 1 when the slave performance is delayed by a predetermined amount or more from the master performance (for example, one or more quarter notes due to the slave performance being stopped, etc.). When the operation of -2 is detected, the performance position of the slave performance is skipped to the performance position of the master performance and advanced. For example, as shown in FIG. 16A, when the performance position of the master performance is “3” and the performance position of the slave performance exists at a position corresponding to the performance position “2” of the master performance, When detecting the operation of the child 1-1 and simultaneously detecting the operation of the slave operator 1-2, the CPU 301 advances the master performance to the performance position “4” and performs the slave performance as shown in FIG. Skip to the position corresponding to the performance position “4” of the master performance. As a result, the note sequence skipped and skipped (see M shown in FIG. 16) is not played and the note corresponding to the performance position after skipping is generated.

以上説明したように、マスタ操作子1−1及びスレーブ操作子1−2がともにノートモードに設定されている場合には、たとえスレーブ操作子1−2の操作がマスタ操作子1−1の操作より先行して行われたとしても、スレーブ演奏はマスタ演奏よりも決して先に進まない。ただし、スレーブ操作子1−2の操作に応じて進行するスレーブ演奏がマスタ操作子1−1の操作に応じて進行するマスタ演奏よりも遅れている場合には、スレーブ演奏とマスタ演奏とを同期させるべく、スレーブ演奏の演奏位置をマスタ演奏の演奏位置までスキップさせる。これにより、たとえ第2操作者が演奏途中においてスレーブ操作子1−2の操作をいったん停止したとしても、単にスレーブ操作子1−2の操作を再開するだけで(すなわちスレーブ演奏とマスタ演奏との同期を図るために煩雑な操作をすることなしに)スレーブ演奏とマスタ演奏とを同期させることができる。   As described above, when both the master operator 1-1 and the slave operator 1-2 are set to the note mode, even if the operation of the slave operator 1-2 is the operation of the master operator 1-1. Even if performed earlier, the slave performance never advances beyond the master performance. However, if the slave performance that proceeds in accordance with the operation of the slave operator 1-2 is delayed from the master performance that proceeds in accordance with the operation of the master operator 1-1, the slave performance and the master performance are synchronized. Therefore, the performance position of the slave performance is skipped to the performance position of the master performance. As a result, even if the second operator stops the operation of the slave operator 1-2 during the performance, it simply restarts the operation of the slave operator 1-2 (that is, between the slave performance and the master performance). The slave performance and the master performance can be synchronized without a complicated operation for synchronization.

上記例では、マスタ操作子1−1及びスレーブ操作子1−2がともにノートモードに設定されている場合について説明した。これに対し、以下に示す例では、マスタ操作子1−1がノートモードに設定され、スレーブ操作子1−2がマニュアルモードに設定されている場合について説明する。ただし、マニュアルモードに設定されている場合の動作については、以下に示すケース4’(上記ケース4に対応)を除き、上記ケース1〜3とほぼ同様に説明することができるため割愛する。   In the above example, the case where both the master operator 1-1 and the slave operator 1-2 are set to the note mode has been described. On the other hand, in the example shown below, a case will be described in which the master operator 1-1 is set to the note mode and the slave operator 1-2 is set to the manual mode. However, the operation when the manual mode is set can be omitted since it can be described in substantially the same manner as the cases 1 to 3 except for the case 4 '(corresponding to the case 4) described below.

(ケース4’)
CPU(発音位置制御手段)301は、上記ケース4と同様、スレーブ演奏がマスタ演奏から所定量以上遅れている場合(例えばスレーブ演奏が停止されていた等により1拍分以上等)にスレーブ操作子1−2の操作を検出すると、スレーブ演奏の演奏位置をマスタ演奏の演奏位置に対応する拍子位置までスキップして進ませる。詳述すると、例えば、図17のAに示すように、マスタ演奏の演奏位置が「5」であり、かつ、スレーブ演奏の演奏位置がマスタ演奏の演奏位置「2」に対応する位置に存在する場合、マスタ操作子1−1の操作を検出すると同時にスレーブ操作子1−2の操作を検出すると、CPU301は、図17のBに示すように、マスタ演奏を演奏位置「6」に進ませるとともに、スレーブ演奏をマスタ演奏の演奏位置に対応する拍子位置(図17では3拍目の頭の位置)までスキップさせる。このように、スレーブ操作子1−2がマニュアルモードに設定された場合には、スレーブ演奏の演奏位置をマスタ演奏の演奏位置と同じ位置までスキップさせるのではなく、マスタ演奏の演奏位置に対応する拍子位置までスキップさせる。この結果、スキップしてとばされた音符列(図17に示すM参照)については演奏されずにスキップ後の演奏位置に対応する音符が発音されることになる。このように、スレーブ操作子1−2がマニュアルモードに設定されている場合についても、スレーブ演奏とマスタ演奏とを同期させることが可能となる。
(Case 4 ')
As in the case 4 above, the CPU (sound generation position control means) 301 is a slave operator when the slave performance is delayed by a predetermined amount or more from the master performance (for example, one beat or more due to the slave performance being stopped, etc.). When the operation of 1-2 is detected, the performance position of the slave performance is skipped to the beat position corresponding to the performance position of the master performance. More specifically, for example, as shown in FIG. 17A, the performance position of the master performance is “5”, and the performance position of the slave performance exists at a position corresponding to the performance position “2” of the master performance. In this case, when detecting the operation of the master operator 1-1 and simultaneously detecting the operation of the slave operator 1-2, the CPU 301 advances the master performance to the performance position “6” as shown in FIG. Then, the slave performance is skipped to the beat position corresponding to the performance position of the master performance (the position of the head of the third beat in FIG. 17). As described above, when the slave controller 1-2 is set to the manual mode, the performance position of the slave performance is not skipped to the same position as the performance position of the master performance, but corresponds to the performance position of the master performance. Skip to the beat position. As a result, the note sequence skipped and skipped (see M shown in FIG. 17) is not played, and the note corresponding to the skipped performance position is generated. Thus, even when the slave operator 1-2 is set to the manual mode, the slave performance and the master performance can be synchronized.

<変形例>
以上説明した動作例では、マスタ操作子1−1をノートモードに設定し、スレーブ操作子1−2をノートモード若しくはマニュアルモードに設定した場合について説明したが、例えばマスタ操作子1−1をマニュアルモードに設定し、スレーブ操作子1−2をノートモード若しくはマニュアルモードに設定しても良いのはもちろんである。また、上記動作例では、メロディパートが割り当てられた操作子1−1をマスタ操作子1−1とし、伴奏パートが割り当てられた操作子1−2をスレーブ操作子1−2としたが、これとは逆に伴奏パートが割り当てられた操作子をマスタ操作子とし、メロディパートが割り当てられた操作子をスレーブ操作子とするなど、どのパートが割り当てられた操作子をマスタ操作子若しくはスレーブ操作子とするかは適宜変更可能である。また、該動作例では2人の操作者が2つの操作子1を利用して同期演奏する場合について説明したが、3人以上の操作者が3つ以上の操作子1を利用して同期演奏しても良いのはもちろんである。
<Modification>
In the operation example described above, the case where the master operator 1-1 is set to the note mode and the slave operator 1-2 is set to the note mode or the manual mode has been described. For example, the master operator 1-1 is manually set. Of course, the slave controller 1-2 may be set to the note mode or the manual mode. In the above operation example, the operation element 1-1 to which the melody part is assigned is the master operation element 1-1, and the operation element 1-2 to which the accompaniment part is assigned is the slave operation element 1-2. On the other hand, the controller assigned to the accompaniment part is the master controller and the controller assigned the melody part is the slave controller. It can be changed as appropriate. Further, in this operation example, the case where two operators perform synchronous performance using two operating elements 1 has been described, but three or more operators perform synchronous performance using three or more operating elements 1. Of course, you can.

また、上記動作例では、スレーブ操作子1−2の操作が停止してから当該操作が再開されるまでの間、スレーブ演奏(すなわち伴奏パートの演奏)が停止する構成であったが、例えばスレーブ操作子1−2の操作が停止した場合であっても、スレーブ演奏を継続させるべく、マスタ操作子1−1の操作タイミングに同期してスレーブ演奏を自動継続し、スレーブ操作子1−2の操作が再開されたとき、当該操作を反映させて(すなわち当該操作タイミングで)スレーブ演奏を行うようにしても良い。なお、スレーブ操作子1−2の操作が停止したか否かについては、スレーブ操作子1−2の操作を検出してから所定時間内(例えば500(ms)内)に次の操作が検出されたか否かに基づき判断すれば良い。   In the above operation example, the slave performance (that is, the performance of the accompaniment part) is stopped until the operation is resumed after the operation of the slave operator 1-2 is stopped. Even when the operation of the operation element 1-2 is stopped, in order to continue the slave performance, the slave performance is automatically continued in synchronization with the operation timing of the master operation element 1-1. When the operation is resumed, the slave performance may be performed by reflecting the operation (that is, at the operation timing). Whether or not the operation of the slave operator 1-2 is stopped is determined whether the next operation is detected within a predetermined time (for example, within 500 (ms)) after the operation of the slave operator 1-2 is detected. It may be determined based on whether or not.

また、上記動作例では、各操作子の操作(ピーク)を検出してから次の操作(ピーク)を検出するまでの時間と音符の長さとに基づいて逐次テンポ計算する場合について説明したが、例えば各操作子の操作(ピーク)の大きさを検出し、このピークの大きさをボリュームに反映させても良い。図18は、RAM303に格納されているボリューム管理テーブルTA2を例示した図である。
ボリューム管理テーブルTA2には、ピーク信号SPの値pspとボリューム値vとが対応づけて登録されている。図18に示すように、ボリューム値vは、ピーク信号SPの値pspに略比例して大きくなるように設定されている。CPU301は、各操作子1から操作情報を受信すると、この操作情報に示されるピーク信号SPの値とボリューム管理テーブルTA2とを参照し、ボリューム値vを決定する。この結果、例えば、操作者が操作子1を上から下に小さく振り下ろした場合には制御対象となるパート(例えばメロディパート)の演奏音は小さくなり、逆に大きく振り下ろした場合には該パートの演奏音は大きくなる。このように、操作子1の操作を演奏音のボリュームに反映させるようにしても良い。なお、ピークの大きさをボリュームに反映させる点については単独演奏モードについても適用可能である。
In the above operation example, the case where the tempo is calculated sequentially based on the time from the detection of the operation (peak) of each operator to the detection of the next operation (peak) and the length of the note has been described. For example, the magnitude of the operation (peak) of each operator may be detected and the magnitude of this peak may be reflected in the volume. FIG. 18 is a diagram illustrating a volume management table TA2 stored in the RAM 303.
The volume management table TA2, and the value p sp and volume values v peak signal SP are registered in association. As shown in FIG. 18, the volume value v is set to be larger substantially in proportion to the value p sp peak signal SP. When the CPU 301 receives operation information from each operation element 1, the CPU 301 refers to the value of the peak signal SP indicated in the operation information and the volume management table TA2, and determines the volume value v. As a result, for example, when the operator swings down the operation element 1 from the top to the bottom, the performance sound of the part to be controlled (for example, the melody part) is reduced. The performance sound of the part increases. In this way, the operation of the operation element 1 may be reflected on the volume of the performance sound. Note that the point of reflecting the size of the peak in the volume is also applicable to the single performance mode.

なお、以上説明した本実施形態に係るCPU301の諸機能は、ROM302等のプログラムによって実現されるため、かかるプログラムについてCD−ROM等の記録媒体に記録して頒布したり、インターネット等の通信ネットワークを介して頒布しても良い。もちろん、上記諸機能を実現するCPU301、ROM302等を組み込んだ専用装置として構成することも可能である。   Since the various functions of the CPU 301 according to the present embodiment described above are realized by a program such as the ROM 302, the program is recorded on a recording medium such as a CD-ROM and distributed, or a communication network such as the Internet is provided. It may be distributed through. Of course, it is also possible to configure as a dedicated device incorporating the CPU 301, the ROM 302 and the like for realizing the above functions.

本実施形態の構成を示す図である。It is a figure which shows the structure of this embodiment. 同実施形態に係るパーソナルコンピュータの構成を示すブロック図である。It is a block diagram showing a configuration of a personal computer according to the embodiment. 同実施形態に係る操作子の操作態様を例示した図である。It is the figure which illustrated the operation mode of the operation element concerning the embodiment. 同実施形態に係る演奏データの構造を例示した図である。It is the figure which illustrated the structure of the performance data concerning the embodiment. 同実施形態に係るチャネル設定テーブルを例示した図である。It is the figure which illustrated the channel setting table which concerns on the same embodiment. 同実施形態に係る現在テンポテーブルを例示した図である。It is the figure which illustrated the present tempo table concerning the embodiment. 同実施形態に係る1つのパートの一例を示す楽譜である。It is a musical score which shows an example of one part which concerns on the embodiment. 図7に示す楽譜に対応する演奏データを例示した図である。It is the figure which illustrated the performance data corresponding to the score shown in FIG. 同実施形態に係る2つのパートの一例を示す楽譜である。It is a musical score which shows an example of two parts which concern on the embodiment. 図9に示す楽譜に対応する演奏データを例示した図である。It is the figure which illustrated the performance data corresponding to the score shown in FIG. 同実施形態に係る複数演奏モード管理テーブルを例示した図である。It is the figure which illustrated the multiple performance mode management table concerning the embodiment. 同実施形態に係る複数演奏モードにおける演奏状態を説明するための図である。It is a figure for demonstrating the performance state in the multiple performance mode which concerns on the same embodiment. 同演奏モードにおけるケース1の演奏状態を説明するための図である。It is a figure for demonstrating the performance state of case 1 in the performance mode. 同演奏モードにおけるケース2の演奏状態を説明するための図である。It is a figure for demonstrating the performance state of case 2 in the performance mode. 同演奏モードにおけるケース3の演奏状態を説明するための図である。It is a figure for demonstrating the performance state of case 3 in the performance mode. 同演奏モードにおけるケース4の演奏状態を説明するための図である。It is a figure for demonstrating the performance state of case 4 in the performance mode. 同演奏モードにおけるケース4’の演奏状態を説明するための図である。It is a figure for demonstrating the performance state of case 4 'in the performance mode. 同実施形態に係るボリューム管理テーブルを例示した図である。It is the figure which illustrated the volume management table concerning the embodiment.

符号の説明Explanation of symbols

1・・・操作子、2・・・受信装置、3・・・パーソナルコンピュータ、4・・・音源装置、5・・・アンプ、6・・・スピーカ、301・・・CPU、302・・・ROM、303・・・RAM、304・・・HDD、305・・・表示部、306・・・キーボード、307・・・ポインティングデバイス、TB1・・・チャネル設定テーブル、TB2・・・現在テンポテーブル、TA1・・・複数演奏モード管理テーブル、TA2・・・ボリューム管理テーブル。 DESCRIPTION OF SYMBOLS 1 ... Operating element, 2 ... Receiving device, 3 ... Personal computer, 4 ... Sound source device, 5 ... Amplifier, 6 ... Speaker, 301 ... CPU, 302 ... ROM, 303 ... RAM, 304 ... HDD, 305 ... display unit, 306 ... keyboard, 307 ... pointing device, TB1 ... channel setting table, TB2 ... current tempo table, TA1 ... multiple performance mode management table, TA2 ... volume management table.

Claims (6)

楽音の発音内容を示す発音イベントを演奏データから順次読み出して自動演奏する自動演奏装置において、
操作者によって操作されると操作状況に応じた操作信号を出力する操作子と、前記操作信号が出力されると次に発音すべき楽音の発音イベントを読み出して発音処理する発音処理手段と、
前記操作信号が出力された出力時刻を検出するとともに、前回の出力時刻との時間間隔を算出する時間間隔算出手段と、
前記楽音の発音長を制御するためのテンポを記憶する記憶手段と、
前記時間間隔算出手段が算出した時間間隔と前回の前記操作信号の出力時刻に発音処理された発音イベントの音符の長さとに基づきテンポを算出し、前記記憶手段に記憶されたテンポを更新するテンポ更新手段と、
前記発音処理手段が処理をする発音イベントの発音長を前記テンポ更新手段によって更新されたテンポに対応する長さに制御する発音長制御手段と
を具備することを特徴とする自動演奏装置。
In an automatic performance device that automatically reads out sound events indicating the sound content of musical sounds sequentially from the performance data,
An operation element that outputs an operation signal according to an operation situation when operated by an operator, and a sound generation processing unit that reads a sound event of a musical tone to be sounded next when the operation signal is output, and performs sound generation processing;
A time interval calculating means for detecting an output time at which the operation signal is output and calculating a time interval from the previous output time;
Storage means for storing a tempo for controlling the pronunciation length of the musical sound;
A tempo that calculates the tempo based on the time interval calculated by the time interval calculation means and the length of the note of the sounding event that was sounded at the previous output time of the operation signal, and updates the tempo stored in the storage means Update means;
An automatic performance apparatus comprising: a sound generation length control means for controlling a sound generation length of a sound generation event processed by the sound generation processing means to a length corresponding to the tempo updated by the tempo update means.
前記発音処理手段は同時発音すべき発音イベントが複数ある場合はそれら全てを読み出して発音処理することを特徴とする請求項1に記載の自動演奏装置。   2. The automatic performance apparatus according to claim 1, wherein when there are a plurality of sound generation events to be simultaneously sounded, the sound processing means reads out all of them and performs sound generation processing. 楽音の発音内容を示す発音イベントが複数のチャネルに配されている演奏データから前記各チャネルの発音イベントを並行して順次読み出し、読み出した発音イベントを処理することによりアンサンブル演奏をする自動演奏装置において、
操作者によって操作されると操作状況に応じた操作信号を出力する操作子と、
前記操作信号が出力されると予め決められた特定チャネルについて、次に発音すべき楽音の発音イベントを読み出して発音処理する特定チャネル発音処理手段と、
前記操作信号が出力された出力時刻を検出するとともに、前回の出力時刻との時間間隔を算出する時間間隔算出手段と、
前記楽音の発音長を制御するためのテンポを記憶する記憶手段と、
前記間時間隔算出手段が算出した時間間隔と前回の前記操作信号の出力時刻に発音処理された発音イベントの音符の長さに基づきテンポを算出し、更新するテンポ更新手段と、
前記特定チャネル発音処理手段が処理をする発音イベントの発音長を前記テンポ更新手段によって更新されたテンポに対応する長さに制御する発音長制御手段と、
前記特定チャネル発音処理手段が処理をしている発音イベントから次の発音イベントまでの区間に存在する他のチャネルの発音イベントを、前記テンポ更新手段が更新したテンポに応じた速さで順次読み出し、読み出した発音イベントが示す発音内容に応じた発音処理をするとともに、各発音イベントの発音長を当該テンポに応じた長さに制御する他チャネル発音制御手段と
を具備することを特徴とする自動演奏装置。
In an automatic performance device for performing an ensemble performance by sequentially reading out the sound events of each channel in parallel from performance data in which sound events indicating the sound content of the musical sound are arranged on a plurality of channels and processing the read sound events ,
An operator that outputs an operation signal according to the operation status when operated by an operator;
A specific channel sound generation processing means for reading a sound generation event of a musical sound to be sounded next for a specific channel determined in advance when the operation signal is output;
A time interval calculating means for detecting an output time at which the operation signal is output and calculating a time interval from the previous output time;
Storage means for storing a tempo for controlling the pronunciation length of the musical sound;
Tempo update means for calculating and updating the tempo based on the time interval calculated by the interval calculation means and the length of the note of the sounding event that was sounded at the previous output time of the operation signal;
A sounding length control means for controlling the sounding length of the sounding event processed by the specific channel sounding processing means to a length corresponding to the tempo updated by the tempo updating means;
Sequentially reading out sound events of other channels existing in the section from the sounding event being processed by the specific channel sounding processing means to the next sounding event at a speed corresponding to the tempo updated by the tempo updating means, An automatic performance comprising: other channel sound generation control means for performing sound generation processing corresponding to the sound content indicated by the read sound event and controlling the sound length of each sound event to a length corresponding to the tempo apparatus.
前記特定チャネル発音処理手段は特定チャネルに同時発音すべき発音イベントが複数ある場合はそれら全てを読み出して発音処理することを特徴とする請求項3に記載の自動演奏装置。   4. The automatic performance apparatus according to claim 3, wherein the specific channel sound processing means reads out all the sound events to be sounded simultaneously in the specific channel and performs sound processing. コンピュータを、
発音指示信号を受信すると次に発音すべき楽音の発音イベントを読み出し、当該発音イベントが示す発音内容に応じた発音処理をする発音処理手段と、
前記発音指示信号を受信した受信時刻を検出するとともに、前回の受信時刻との時間間隔を算出する時間間隔算出手段と、
前記楽音の発音長を制御するためのテンポを記憶する記憶手段と、
前記時間間隔算出手段が算出した時間間隔と前回の前記操作信号の出力時刻に発音処理された発音イベントの音符の長さとに基づきテンポを算出し、前記記憶手段に記憶されたテンポを更新するテンポ更新手段と、
前記発音処理手段が処理をする発音イベントの発音長を前記テンポ更新手段によって更新されたテンポに対応する長さに制御する発音長制御手段
として機能させるプログラム。
Computer
Upon receiving the pronunciation instruction signal, a pronunciation processing means for reading a sound generation event of a musical sound to be generated next, and performing a sound generation process according to the sound content indicated by the sound generation event;
A time interval calculating means for detecting a reception time at which the sound generation instruction signal is received and calculating a time interval from the previous reception time;
Storage means for storing a tempo for controlling the pronunciation length of the musical sound;
A tempo that calculates the tempo based on the time interval calculated by the time interval calculation means and the length of the note of the sounding event that was sounded at the previous output time of the operation signal, and updates the tempo stored in the storage means Update means;
A program for functioning as a pronunciation length control means for controlling the pronunciation length of a pronunciation event processed by the pronunciation processing means to a length corresponding to the tempo updated by the tempo update means.
コンピュータを、
発音指示信号を受信すると、予め決められた特定チャネルについて、次に発音すべき楽音の発音イベントを読み出し、当該発音イベントが示す発音内容に応じた発音処理をする特定チャネル発音処理手段と、
前記発音指示信号を受信した受信時刻を検出するとともに、前回の受信時刻との時間間隔を算出する時間間隔算出手段と、
前記楽音の発音長を制御するためのテンポを記憶する記憶手段と、
前記時間間隔算出手段が算出した時間間隔と前回の前記操作信号の出力時刻に発音処理された発音イベントの音符の長さに基づきテンポを算出し、更新するテンポ更新手段と、
前記特定チャネル発音処理手段が処理をする発音イベントの発音長を前記テンポ更新手段によって更新されたテンポに対応する長さに制御する発音長制御手段と、
前記特定チャネル発音処理手段が処理をしている発音イベントから次の発音イベントまでの区間に存在する他のチャネルの発音イベントを、前記テンポ更新手段が更新したテンポに応じた速さで順次読み出し、読み出した発音イベントが示す発音内容に応じた発音処理をするとともに、各発音イベントの発音長を当該テンポに応じた長さに制御する他チャネル発音制御手段として機能させるプログラム。
Computer
Upon receipt of the sound generation instruction signal, a specific channel sound generation processing means for reading a sound generation event of a musical tone to be sounded next for a specific channel determined in advance and performing sound generation processing according to the sound content indicated by the sound generation event;
A time interval calculating means for detecting a reception time at which the sound generation instruction signal is received and calculating a time interval from the previous reception time;
Storage means for storing a tempo for controlling the pronunciation length of the musical sound;
Tempo update means for calculating and updating the tempo based on the time interval calculated by the time interval calculation means and the length of the note of the sounding event that was sounded at the previous output time of the operation signal;
A sounding length control means for controlling the sounding length of the sounding event processed by the specific channel sounding processing means to a length corresponding to the tempo updated by the tempo updating means;
Sequentially reading out sound events of other channels existing in the section from the sounding event being processed by the specific channel sounding processing means to the next sounding event at a speed corresponding to the tempo updated by the tempo updating means, A program that performs sound generation processing according to the sound content indicated by the read sound event, and functions as another channel sound control means for controlling the sound length of each sound event to a length corresponding to the tempo.
JP2007001680A 2007-01-09 2007-01-09 Automatic performance device and program Expired - Fee Related JP4241833B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007001680A JP4241833B2 (en) 2007-01-09 2007-01-09 Automatic performance device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007001680A JP4241833B2 (en) 2007-01-09 2007-01-09 Automatic performance device and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003200747A Division JP3922224B2 (en) 2003-07-23 2003-07-23 Automatic performance device and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2008275958A Division JP4572980B2 (en) 2008-10-27 2008-10-27 Automatic performance device and program

Publications (3)

Publication Number Publication Date
JP2007128107A true JP2007128107A (en) 2007-05-24
JP2007128107A5 JP2007128107A5 (en) 2008-06-19
JP4241833B2 JP4241833B2 (en) 2009-03-18

Family

ID=38150740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007001680A Expired - Fee Related JP4241833B2 (en) 2007-01-09 2007-01-09 Automatic performance device and program

Country Status (1)

Country Link
JP (1) JP4241833B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020129146A (en) * 2016-05-18 2020-08-27 ヤマハ株式会社 Automatic performance system and automatic performance method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020129146A (en) * 2016-05-18 2020-08-27 ヤマハ株式会社 Automatic performance system and automatic performance method

Also Published As

Publication number Publication date
JP4241833B2 (en) 2009-03-18

Similar Documents

Publication Publication Date Title
US8502057B2 (en) Electronic musical instrument
JP2002116686A (en) Device and method for instructing performance and storage medium
JP3922224B2 (en) Automatic performance device and program
JP2006243102A (en) Device and program for supporting performance
JP5228315B2 (en) Program for realizing automatic accompaniment generation apparatus and automatic accompaniment generation method
JP4241833B2 (en) Automatic performance device and program
JP4572980B2 (en) Automatic performance device and program
JP2008076708A (en) Tone color designation method, tone color designation device, and computer program for tone color designation
JP4858504B2 (en) Karaoke equipment
JPH0869282A (en) Automatic playing device
JP2010117419A (en) Electronic musical instrument
JP2000221967A (en) Setting control device for electronic musical instrument or the like
JP5590350B2 (en) Music performance device and music performance program
JP2001013964A (en) Playing device and recording medium therefor
JP2012132991A (en) Electronic music instrument
JP2006126697A (en) Automatic accompaniment device
JP2006031056A (en) Automatic music player
JP5906716B2 (en) Electronic musical instruments
JP2017015957A (en) Musical performance recording device and program
JP4172335B2 (en) Automatic accompaniment generator and program
JP5164401B2 (en) Automatic performance device and automatic performance program
JP2007072387A (en) Music performance assisting device and program
JP6427447B2 (en) Karaoke device
JP2009109747A (en) Performance terminal controller and program
JP3788457B2 (en) Automatic performance device

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080603

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080729

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080826

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081027

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20081104

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081209

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081222

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120109

Year of fee payment: 3

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130109

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140109

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees