JP2010237509A - Arpeggio creation device and program for implementing arpeggio creation method - Google Patents

Arpeggio creation device and program for implementing arpeggio creation method Download PDF

Info

Publication number
JP2010237509A
JP2010237509A JP2009086320A JP2009086320A JP2010237509A JP 2010237509 A JP2010237509 A JP 2010237509A JP 2009086320 A JP2009086320 A JP 2009086320A JP 2009086320 A JP2009086320 A JP 2009086320A JP 2010237509 A JP2010237509 A JP 2010237509A
Authority
JP
Japan
Prior art keywords
arpeggio
pattern data
data
event data
cutout
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
JP2009086320A
Other languages
Japanese (ja)
Other versions
JP5402167B2 (en
Inventor
Tadashi Okano
忠 岡野
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 JP2009086320A priority Critical patent/JP5402167B2/en
Publication of JP2010237509A publication Critical patent/JP2010237509A/en
Application granted granted Critical
Publication of JP5402167B2 publication Critical patent/JP5402167B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an arpeggio creation device and a program for implementing an arpeggio creation method which are capable of creating arpeggio by using a part of arpeggio pattern data. <P>SOLUTION: When a user selects arpeggio pattern data, and indicates a head of a second measure as a cutting start position, and a tail of a fifth measure as a cutting finish position, as shown in Fig.(a), and thereafter, creation start of an arpeggio sound output is indicated, a sound output pattern data in the arpeggio pattern data is cut out from "a start position" to "a finish position", and new sound output pattern data is created shown in Fig.(b). A sound output data list is created based on the new sound output pattern data and input key press sound, and arpeggio is created based on the sound output data list. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、供給されたアルペジオパターンデータおよび入力された音符情報に基づいてアルペジオを生成するアルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラムに関する。   The present invention relates to an arpeggio generating device and an arpeggio generating method for generating an arpeggio based on supplied arpeggio pattern data and input note information.

供給されたアルペジオパターンデータおよび入力された音符情報に基づいてアルペジオを生成するアルペジオ生成装置は、従来から知られている。   An arpeggio generating device that generates an arpeggio based on supplied arpeggio pattern data and input note information is conventionally known.

このようなアルペジオ生成装置、いわゆるアルペジエータは、複数のキー番号(音高に対応したノートナンバではなく、単純な番号)とその発音タイミングからなるアルペジオパターンデータを記憶し、同時に押鍵されて入力された複数の音の各音高に、所定のルール(たとえば、音高の低い順)に従って番号を割り振り、アルペジオパターンデータ中のキー番号に対応した番号が割り振られた音高を、その発音タイミングで発生させるようにして、押鍵音を基にアルペジオを生成している。このようにアルペジエータは、ユーザによる押鍵があると、その押鍵音およびアルペジオパターンデータに応じて順次発音データを生成して出力し、アルペジオパターンデータの最後のデータに対応する発音データが生成されて出力されると、再びアルペジオパターンデータの先頭のデータに戻って、そのデータに対応する発音データの生成および出力を繰り返す。これにより、ユーザの押鍵が続く限り、その押鍵音およびアルペジオパターンデータに応じた発音データの生成および出力が継続する。   Such an arpeggio generator, a so-called arpeggiator, stores arpeggio pattern data consisting of a plurality of key numbers (not a note number corresponding to the pitch, but a simple number) and the sounding timing, and is simultaneously pressed and input. A number is assigned to each pitch of a plurality of notes according to a predetermined rule (for example, in order of increasing pitches), and a pitch assigned a number corresponding to the key number in the arpeggio pattern data is assigned at the sounding timing. The arpeggio is generated based on the keystroke sound. As described above, when a key is pressed by the user, the arpeggiator sequentially generates and outputs sound generation data according to the key press sound and the arpeggio pattern data, and sound generation data corresponding to the last data of the arpeggio pattern data is generated. Are output again, it returns to the first data of the arpeggio pattern data again, and the generation and output of the pronunciation data corresponding to the data is repeated. As a result, as long as the user's key depression continues, generation and output of sound generation data corresponding to the key depression sound and the arpeggio pattern data are continued.

ところで、上記アルペジエータは、押鍵によって複数の音、たとえば和音が入力されると、入力された和音を発音するとともに、その和音に基づいてアルペジオを生成して発音する。そしてアルペジオの生成および発音は、上述のように押鍵が続く限り続くので、押鍵が続いている間、その和音も継続して発音するようにした場合には、押鍵が続いている間、常に和音にアルペジオが重なって発音される。したがって上記アルペジエータでは、ユーザが和音の発音を継続させながら、そのアルペジオを装飾的に(具体的には、アルペジオの発音回数を制限して)付加した音作りをしようとしても、和音の押鍵が続いている間、常にその和音にアルペジオが重なって発音される(つまり、アルペジオの発音回数を制限できない)ので、このユーザの要求に応えることはできなかった。   By the way, when a plurality of sounds, for example, chords are input by pressing a key, the arpeggiator generates an arpeggio based on the chords and generates an arpeggio. Since the arpeggio generation and pronunciation continues as long as the key is pressed as described above, if the chord is continuously generated while the key is pressed, the key continues to be pressed. The arpeggio is always overlaid on the chord. Therefore, in the above arpeggiator, even if the user continues to pronounce a chord and tries to create a sound that adds the arpeggio in a decorative manner (specifically, by limiting the number of times the arpeggio is pronounced), the key to the chord is not pressed. During this time, the arpeggio was always sounded over the chord (that is, the number of arpeggios cannot be limited), so this user's request could not be met.

このユーザの要求に応えるために本出願人は、アルペジオパターンデータを繰り返し使用する回数をユーザが指定できるようにして、アルペジオの発音回数を制限できるようにしたアルペジエータを提案した(たとえば、特許文献1参照)。このアルペジエータでは、ユーザが指定した回数分、アルペジオパターンデータが繰り返し使用されると、その後ユーザの押鍵が続いたとしても、アルペジオは発音されずに、その押鍵音だけが発音される。   In order to respond to the user's request, the present applicant has proposed an arpeggiator that allows the user to specify the number of times the arpeggio pattern data is repeatedly used so that the number of arpeggio pronunciations can be limited (for example, Patent Document 1). reference). In this arpeggiator, when the arpeggio pattern data is repeatedly used for the number of times specified by the user, even if the user continues to press the key, the arpeggio is not generated and only the key pressing sound is generated.

特開2008−139450号公報JP 2008-139450 A

しかし、上記従来のアルペジエータでは、アルペジオパターンデータ全体のデータ長を最小単位としてアルペジオを生成するようにしているので、アルペジオパターンデータの一部を、たとえば繰り返し用いてアルペジオを生成することはできなかった。   However, in the conventional arpeggiator, since the arpeggio is generated with the data length of the entire arpeggio pattern data as a minimum unit, it is not possible to generate an arpeggio by repeatedly using a part of the arpeggio pattern data, for example. .

本発明は、この点に着目してなされたものであり、アルペジオパターンデータの一部を用いてアルペジオを生成することが可能となるアルペジオ生成装置およびアルペジオ生成方法を実現するためのプログラムを提供することを目的とする。   The present invention has been made paying attention to this point, and provides an arpeggio generation device and an arpeggio generation method that can generate an arpeggio using a part of arpeggio pattern data. For the purpose.

上記目的を達成するため、請求項1に記載のアルペジオ生成装置は、タイミング情報を含むイベントデータ複数からなるアルペジオパターンデータを供給する供給手段と、該供給手段によって供給されたアルペジオパターンデータの切り出し開始位置および切り出し終了位置を設定する設定手段と、音高情報を含む音符情報を1つ以上入力する入力手段と、該入力手段によって入力された音符情報および前記供給手段によって供給されたアルペジオパターンデータ内のイベントデータに基づいてアルペジオデータを生成する生成手段とを有し、前記設定手段によって切り出し開始位置および切り出し終了位置が設定されている場合、前記生成手段は、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータを、先頭のイベントデータから順次読み出し、末尾のイベントデータを読み出すと、前記先頭のイベントデータに戻って読み出しを続け、当該読み出したイベントデータに基づいてアルペジオデータを生成することを特徴とする。   In order to achieve the above object, an arpeggio generation device according to claim 1, a supply unit that supplies arpeggio pattern data including a plurality of event data including timing information, and a clipping start of the arpeggio pattern data supplied by the supply unit Setting means for setting the position and cutout end position, input means for inputting one or more note information including pitch information, note information input by the input means, and arpeggio pattern data supplied by the supply means Generating means for generating arpeggio data based on the event data, and when the cutout start position and cutout end position are set by the setting means, the generation means includes the arpeggio pattern data in the supplied arpeggio pattern data. Of the event data, the cut start position When the event data included from the start to the cut end position is sequentially read from the top event data and the last event data is read, the reading is continued after returning to the top event data, and the arpeggio is read based on the read event data. It is characterized by generating data.

請求項2に記載のアルペジオ生成装置は、請求項1のアルペジオ生成装置において、前記切り出し開始位置を時間的に遅い位置に変更する変更手段をさらに有し、前記変更手段によって前記切り出し開始位置が変更されている場合、前記生成手段は、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータを、前記変更後の切り出し開始位置にあるイベントデータから順次読み出し、末尾のイベントデータを読み出すと、先頭のイベントデータに戻って読み出しを続け、当該読み出したイベントデータに基づいてアルペジオデータを生成することを特徴とする。   The arpeggio generation device according to claim 2, further comprising a changing unit that changes the cutout start position to a position that is later in time in the arpeggio generation device according to claim 1, wherein the cutout start position is changed by the change unit. If it is, the generation means has event data included between the cut start position and the cut end position among the event data in the supplied arpeggio pattern data at the cut start position after the change. When the event data is read sequentially and the event data at the end is read out, the reading is continued after returning to the event data at the beginning, and arpeggio data is generated based on the read event data.

上記目的を達成するため、請求項3に記載のアルペジオ生成装置は、タイミング情報を含むイベントデータ複数からなるアルペジオパターンデータを供給する供給手段と、該供給手段によって供給されたアルペジオパターンデータの切り出し開始位置および切り出し終了位置を設定する設定手段と、該設定手段によって切り出し開始位置および切り出し終了位置が設定されている場合、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータをコピーするコピー手段と、前記コピー手段によってコピーされたイベントデータに含まれるタイミング情報の値を、前記アルペジオパターンデータの先頭から前記切り出し開始位置までの時間分、時間的に早い方向にシフトするシフト手段と、保存の指示が検出されたことに応じて、前記シフト手段によってタイミング情報の値がシフトされたイベントデータからなる新たなアルペジオパターンデータを生成し、記憶手段に記憶させる記録手段とを有することを特徴とする。   In order to achieve the above object, an arpeggio generating device according to claim 3 is provided with supply means for supplying arpeggio pattern data comprising a plurality of event data including timing information, and start of clipping of arpeggio pattern data supplied by the supply means A setting unit that sets a position and a cutout end position; and, when the cutout start position and the cutout end position are set by the setting unit, among the event data in the supplied arpeggio pattern data, Copy means for copying event data included up to the cutout end position, and the value of timing information included in the event data copied by the copy means, for the time from the beginning of the arpeggio pattern data to the cutout start position, Temporal A new arpeggio pattern data composed of event data whose timing information value is shifted by the shift means is generated in response to the detection of the save means and the shift means for shifting in the fast direction, and the storage means stores the new arpeggio pattern data. And a recording means for making it possible.

請求項4に記載のアルペジオ生成装置は、請求項3のアルペジオ生成装置において、前記切り出し開始位置を時間的に遅い位置に変更する変更手段をさらに有し、前記変更手段によって前記切り出し開始位置が変更されている場合、前記コピー手段は、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記変更後の切り出し開始位置から前記切り出し終了位置までのイベントデータをコピーし、さらに前記切り出し開始位置から前記変更後の切り出し開始位置までのイベントデータを、前記コピーに続くようにタイミング情報の値を調整しながらコピーし、前記シフト手段は、前記コピー手段によってコピーされたイベントデータに含まれるタイミング情報の値を、前記アルペジオパターンデータの先頭から前記変更後の切り出し開始位置までの時間分、時間的に早い方向にシフトすることを特徴とする。   The arpeggio generation device according to claim 4, further comprising a changing unit that changes the cutout start position to a later time position in the arpeggio generation device according to claim 3, wherein the cutout start position is changed by the change unit. The copying means copies the event data from the cutout start position after the change to the cutout end position among the event data in the supplied arpeggio pattern data, and further from the cutout start position The event data up to the cut-out start position after the change is copied while adjusting the value of the timing information so as to follow the copy, and the shift means includes the timing information included in the event data copied by the copy means. Change the value from the beginning of the arpeggio pattern data after the change Time period until the cutout start position, characterized by shifting in time early direction.

上記目的を達成するため、請求項5に記載のプログラムは、請求項1と同様の技術的思想によって実現できる。   In order to achieve the above object, the program according to claim 5 can be realized by the same technical idea as claim 1.

上記目的を達成するため、請求項6に記載のプログラムは、請求項3と同様の技術的思想によって実現できる。   In order to achieve the above object, the program according to claim 6 can be realized by a technical idea similar to that of claim 3.

請求項1または5に記載の発明によれば、切り出し開始位置および切り出し終了位置が設定されている場合、供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータが、先頭のイベントデータから順次読み出され、末尾のイベントデータが読み出されると、前記先頭のイベントデータに戻って読み出しが続けられ、当該読み出されたイベントデータおよび入力された音符情報に基づいてアルペジオデータが生成されるので、アルペジオパターンデータの一部を用いてアルペジオを生成することが可能となる。   According to the invention described in claim 1 or 5, when the cut start position and the cut end position are set, from the cut start position to the cut end position among the event data in the supplied arpeggio pattern data Event data included in the event data is sequentially read from the first event data, and when the last event data is read, the reading is continued after returning to the first event data, and the read event data and the input Since the arpeggio data is generated based on the note information, it is possible to generate the arpeggio using a part of the arpeggio pattern data.

請求項2に記載の発明によれば、前記切り出し開始位置が時間的に遅い位置に変更されている場合、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータが、前記変更後の切り出し開始位置にあるイベントデータから順次読み出され、末尾のイベントデータが読み出されると、先頭のイベントデータに戻って読み出しが続けられ、当該読み出されたイベントデータおよび入力された音符情報に基づいてアルペジオデータが生成されるので、アルペジオパターンデータの特性などによって、アルペジオパターンデータの切り出しを設定された切り出し開始位置より時間的に遅い位置から始めたいときに有効である。そして、切り出し開始位置から切り出し終了位置までに含まれるイベントデータの読み出しは、変更後の切り出し開始位置にあるイベントデータから開始されるものの、末尾のイベントデータに到達すると、変更後の切り出し開始位置にあるイベントデータに戻らずに、それより時間的に早い位置にある先頭のイベントデータ、つまり変更前の切り出し開始位置にあるイベントデータに戻るので、切り出し開始位置を時間的に遅い位置に変更したとしても、変更前の切り出し開始位置から切り出し終了位置までの時間長を維持しつつ、新たなアルペジオを生成することができる。   According to the second aspect of the present invention, when the cutout start position is changed to a position that is later in time, out of the event data in the supplied arpeggio pattern data, the cutout end is started from the cutout start position. Event data included up to the position is sequentially read from the event data at the cut start position after the change, and when the last event data is read, the reading is continued after returning to the first event data. Since arpeggio data is generated based on the event data and the note information that has been input, we want to start cutting the arpeggio pattern data at a time later than the set cut start position due to the characteristics of the arpeggio pattern data. Sometimes effective. The event data included from the cutout start position to the cutout end position is started from the event data at the cutout start position after the change, but when the last event data is reached, the readout data is changed to the cutout start position after the change. Without returning to a certain event data, it returns to the first event data that is earlier in time, that is, the event data that is in the cutout start position before the change, so the cutout start position is changed to a later time position In addition, a new arpeggio can be generated while maintaining the length of time from the cutout start position before the change to the cutout end position.

請求項3または6に記載の発明によれば、切り出し開始位置および切り出し終了位置が設定されている場合、供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータがコピーされ、該コピーされたイベントデータに含まれるタイミング情報の値が、前記アルペジオパターンデータの先頭から前記切り出し開始位置までの時間分、時間的に早い方向にシフトされ、保存の指示が検出されたことに応じて、前記タイミング情報の値がシフトされたイベントデータからなる新たなアルペジオパターンデータが生成され、記憶手段に記憶されるので、アルペジオパターンデータの一部を用いて新たなアルペジオパターンデータを作成することが可能となる。   According to the invention described in claim 3 or 6, when the cut start position and the cut end position are set, from the cut start position to the cut end position among the event data in the supplied arpeggio pattern data The event data included in the copied event data is copied, and the value of the timing information included in the copied event data is shifted and saved earlier in time by the time from the beginning of the arpeggio pattern data to the cutout start position. In response to the detection of the instruction, a new arpeggio pattern data composed of event data whose value of the timing information is shifted is generated and stored in the storage means, so a part of the arpeggio pattern data is used. New arpeggio pattern data can be created.

請求項4に記載の発明によれば、前記切り出し開始位置が時間的に遅い位置に変更されている場合、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記変更後の切り出し開始位置から前記切り出し終了位置までのイベントデータがコピーされ、さらに前記切り出し開始位置から前記変更後の切り出し開始位置までのイベントデータが、前記コピーに続くようにタイミング情報の値を調整しながらコピーされ、該コピーされたイベントデータに含まれるタイミング情報の値が、前記アルペジオパターンデータの先頭から前記変更後の切り出し開始位置までの時間分、時間的に早い方向にシフトされ、保存の指示が検出されたことに応じて、前記タイミング情報の値がシフトされたイベントデータからなる新たなアルペジオパターンデータが生成され、記憶手段に記憶されるので、アルペジオパターンデータの特性などによって、アルペジオパターンデータの切り出しを設定された切り出し開始位置より時間的に遅い位置から始めたいときに有効である。そして、切り出し開始位置から変更後の切り出し開始位置までにあるイベントデータは、変更後の切り出し開始位置から切り出し終了位置までにあるイベントデータの後に追加されるので、切り出し開始位置を時間的に遅い位置に変更したとしても、変更前の切り出し開始位置から切り出し終了位置までの時間長を維持しつつ、新たなアルペジオパターンデータを作成することができる。   According to the invention described in claim 4, when the cutout start position is changed to a position that is later in time, among the event data in the supplied arpeggio pattern data, from the changed cutout start position. The event data up to the cutout end position is copied, and the event data from the cutout start position to the changed cutout start position is copied while adjusting the value of timing information so as to follow the copy. The value of the timing information included in the event data is shifted in the earlier direction by the time from the start of the arpeggio pattern data to the cut start position after the change, and the save instruction is detected. In response, a new arpeggio consisting of event data in which the value of the timing information is shifted. Pattern data is generated, since it is stored in the storage means, such as by the characteristics of arpeggio pattern data is effective when you want to start from temporally slower position than cutout start position set to cut the arpeggio pattern data. The event data from the cutout start position to the cutout start position after the change is added after the event data from the cutout start position after the change to the cutout end position. Even if it is changed to, new arpeggio pattern data can be created while maintaining the time length from the cutting start position before the change to the cutting end position.

本発明の一実施の形態に係るアルペジオ生成装置(アルペジエータ)の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the arpeggio production apparatus (arpeggiator) which concerns on one embodiment of this invention. 図1のアルペジエータが実行する制御処理の制御構成を示すブロック図である。It is a block diagram which shows the control structure of the control processing which the arpeggiator of FIG. 1 performs. アルペジオパターンデータに含まれる発音パターンデータから作成された新発音パターンデータのフォーマットの一例と、その新発音パターンデータとユーザの押鍵操作によって入力された押鍵音の音高に基づいて生成した発音データリストを示す図である。An example of the format of the new pronunciation pattern data created from the pronunciation pattern data included in the arpeggio pattern data, and the pronunciation generated based on the new pronunciation pattern data and the pitch of the key depression sound input by the user's key depression operation It is a figure which shows a data list. 図1のアルペジエータが実行する制御処理を説明するための図である。It is a figure for demonstrating the control processing which the arpeggiator of FIG. 1 performs. 図1のアルペジエータが実行する他の制御処理を説明するための図である。It is a figure for demonstrating the other control processing which the arpeggiator of FIG. 1 performs. 図1のアルペジエータ、特にCPUが実行するアルペジオ再生モード処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the arpeggio reproduction mode process which the arpeggiator of FIG. 1, especially CPU performs. 図6中の新発音パターンデータ作成処理の詳細な手順を示すフローチャートである。It is a flowchart which shows the detailed procedure of the new pronunciation pattern data creation process in FIG. 図6中の発音データリスト生成処理の詳細な手順を示すフローチャートである。It is a flowchart which shows the detailed procedure of the pronunciation data list production | generation process in FIG. 図1のアルペジエータ、特にCPUが実行するアルペジオパターンデータ記録処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the arpeggio pattern data recording process which the arpeggiator of FIG. 1, especially CPU performs.

以下、本発明の実施の形態を図面に基づいて詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本発明の一実施の形態に係るアルペジエータの概略構成を示すブロック図である。   FIG. 1 is a block diagram showing a schematic configuration of an arpeggiator according to an embodiment of the present invention.

同図に示すように、本実施の形態のアルペジエータは、鍵盤等の演奏操作子および各種スイッチ等の設定操作子からなる操作子群1と、該操作子群1の各操作子の操作状態を検出する検出回路2と、装置全体の制御を司るCPU3と、該CPU3が実行する制御プログラムや各種テーブルデータ等を記憶するROM4と、前記演奏操作子から入力された演奏情報(音符情報)、アルペジオパターンデータ、各種入力情報および演算結果等を一時的に記憶するRAM5と、前記制御プログラムを含む各種アプリケーションプログラムや各種アルペジオパターンデータ、各種データ等を記憶する外部記憶装置6と、各種情報等を表示する、たとえば液晶ディスプレイ(LCD)および発光ダイオード(LED)等を備えた表示装置7と、外部MIDI(Musical Instrument Digital Interface)機器等の外部機器100を接続し、この外部機器100とデータの送受信を行う通信インターフェース(I/F)8と、前記演奏操作子から入力された演奏情報および前記RAM5に記憶されたアルペジオパターンデータに基づいて生成したアルペジオ発音データ等を楽音信号に変換する音源回路9と、該音源回路9からの楽音信号に各種効果を付与するための効果回路10と、該効果回路10からの楽音信号を音響に変換する、たとえば、DAC(Digital-to-Analog Converter)やアンプ、スピーカ等のサウンドシステム11とにより構成されている。   As shown in the figure, the arpeggiator of the present embodiment includes an operator group 1 composed of a performance operator such as a keyboard and setting operators such as various switches, and an operation state of each operator of the operator group 1. A detection circuit 2 for detecting, a CPU 3 for controlling the entire apparatus, a ROM 4 for storing a control program executed by the CPU 3, various table data, etc., performance information (note information) input from the performance operator, arpeggio Displays RAM 5 for temporarily storing pattern data, various input information, calculation results, etc., external storage device 6 for storing various application programs including the control program, various arpeggio pattern data, various data, and various information For example, a display device 7 including a liquid crystal display (LCD) and a light emitting diode (LED), and an external MI An external device 100 such as an I (Musical Instrument Digital Interface) device is connected, a communication interface (I / F) 8 for transmitting / receiving data to / from the external device 100, performance information input from the performance operator, and the RAM 5 A sound source circuit 9 for converting arpeggio sound data generated based on the arpeggio pattern data stored in the sound signal into a musical sound signal, an effect circuit 10 for imparting various effects to the musical sound signal from the sound source circuit 9, and the effect For example, the sound signal from the circuit 10 is converted into sound, and is composed of a sound system 11 such as a DAC (Digital-to-Analog Converter), an amplifier, and a speaker.

上記構成要素2〜10は、バス12を介して相互に接続され、通信I/F8には外部機器100が接続され、音源回路9には効果回路10が接続され、効果回路10にはサウンドシステム11が接続されている。   The above components 2 to 10 are connected to each other via the bus 12, the external device 100 is connected to the communication I / F 8, the effect circuit 10 is connected to the sound source circuit 9, and the sound system is connected to the effect circuit 10. 11 is connected.

外部記憶装置6は、たとえば、フレキシブルディスク(FD)、ハードディスク(HD)、CD−ROM、DVD(digital versatile disc)、光磁気ディスク(MO)および半導体メモリなどの記憶媒体とその駆動装置である。記憶媒体は、駆動装置から着脱可能であってもよいし、外部記憶装置6自体が、本実施の形態のアルペジエータから着脱可能であってもよい。あるいは、記憶媒体も外部記憶装置6も着脱不可能であってもよい。なお、外部記憶装置6(の記憶媒体)には、前述のように、CPU3が実行する制御プログラムも記憶でき、ROM4に制御プログラムが記憶されていない場合には、この外部記憶装置6に制御プログラムを記憶させておき、それをRAM5に読み込むことにより、ROM4に制御プログラムを記憶している場合と同様の動作をCPU3にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。   The external storage device 6 is, for example, a storage medium such as a flexible disk (FD), a hard disk (HD), a CD-ROM, a DVD (digital versatile disc), a magneto-optical disk (MO), and a semiconductor memory, and a driving device thereof. The storage medium may be detachable from the drive device, or the external storage device 6 itself may be detachable from the arpeggiator of the present embodiment. Alternatively, neither the storage medium nor the external storage device 6 may be detachable. As described above, the external storage device 6 (the storage medium) can also store a control program executed by the CPU 3. If no control program is stored in the ROM 4, the control program is stored in the external storage device 6. , And reading it into the RAM 5, the CPU 3 can be operated in the same manner as when the control program is stored in the ROM 4. In this way, control programs can be easily added and upgraded.

通信I/F8には、図示例では、外部機器100が接続されているが、これに限られず、たとえばLAN(local area network)やインターネット、電話回線等の通信ネットワークを介して、サーバコンピュータが接続されるようにしてもよい。この場合、外部記憶装置6に上記各プログラムや各種パラメータが記憶されていなければ、通信I/F8は、サーバコンピュータからプログラムやパラメータをダウンロードするために用いられる。クライアントとなるアルペジエータは、通信I/F8および通信ネットワークを介してサーバコンピュータへとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバコンピュータは、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワークを介してアルペジエータへと配信し、アルペジエータが通信I/F8を介して、これらプログラムやパラメータを受信して外部記憶装置6に蓄積することにより、ダウンロードが完了する。   In the illustrated example, the external device 100 is connected to the communication I / F 8. However, the present invention is not limited to this. For example, a server computer is connected via a communication network such as a LAN (local area network), the Internet, or a telephone line. You may be made to do. In this case, if the above programs and various parameters are not stored in the external storage device 6, the communication I / F 8 is used for downloading the programs and parameters from the server computer. The arpeggiator as a client transmits a command for requesting downloading of programs and parameters to the server computer via the communication I / F 8 and the communication network. Upon receiving this command, the server computer distributes the requested program and parameters to the arpeggiator via the communication network. The arpeggiator receives these programs and parameters via the communication I / F 8 and receives the external storage device 6. Downloading is completed by accumulating in.

なお、本実施の形態のアルペジエータは、上述の構成から分かるように、電子鍵盤楽器上に構築されたものであるが、これに限らず、鍵盤を外部接続した汎用的なパーソナルコンピュータ上に構築してもよい。また、鍵盤楽器の実施形態に限らず、弦楽器タイプ、管楽器タイプ、打楽器タイプ等の他の実施形態でもよい。   Note that the arpeggiator of the present embodiment is constructed on an electronic keyboard instrument, as can be seen from the above configuration, but is not limited to this, and is constructed on a general-purpose personal computer to which a keyboard is externally connected. May be. Further, the present invention is not limited to the keyboard instrument embodiment, and other embodiments such as a string instrument type, a wind instrument type, and a percussion instrument type may be used.

以上のように構成されたアルペジエータが実行する制御処理を、まず図2〜図5を参照してその概要(ただし、一部は詳細)を説明し、次に図6〜図9を参照して詳細に説明する。   The control process executed by the arpeggiator configured as described above will first be described with reference to FIGS. 2 to 5 (however, a part is detailed), and then with reference to FIGS. 6 to 9. This will be described in detail.

本実施の形態のアルペジエータは、主として
(A)ユーザによって選択されたアルペジオパターンデータ中の発音パターンデータに基づいて新発音パターンデータを作成する新発音パターンデータ作成処理
(B)上記(A)の新発音パターンデータ作成処理によって作成された新発音パターンデータおよびユーザの押鍵操作によって入力された演奏情報(本実施の形態では、音高)に基づいて発音データリストを生成する発音データリスト生成処理
(C)上記(B)の発音データリスト生成処理によって生成された発音データリストを再生する発音データリスト再生処理
(D)ユーザの押鍵/離鍵操作に応じてノートオン/ノートオフイベントを生成して前記音源回路9に出力することで、押鍵音の発音/離鍵音の消音を行う発音/消音処理
を行う。
The arpeggiator of this embodiment is mainly composed of (A) a new pronunciation pattern data creation process for creating new pronunciation pattern data based on the pronunciation pattern data in the arpeggio pattern data selected by the user. A pronunciation data list generation process that generates a pronunciation data list based on the new pronunciation pattern data created by the pronunciation pattern data creation process and the performance information (pitch in this embodiment) input by the user's key press operation ( C) A pronunciation data list reproduction process for reproducing the pronunciation data list generated by the pronunciation data list generation process of (B) above. (D) A note on / note off event is generated in response to a user's key pressing / releasing operation. Output to the tone generator circuit 9 to generate a sound / mute process for generating a key-pressing sound and / or a key-released sound. Do.

図2は、本実施の形態のアルペジエータが実行する制御処理、つまり上記(A)〜(D)の処理の制御構成を示すブロック図であり、図3は、アルペジオパターンデータに含まれる発音パターンデータから作成された新発音パターンデータのフォーマットの一例と、その新発音パターンデータとユーザの押鍵操作によって入力された押鍵音の音高に基づいて生成した発音データリストを示す図である。   FIG. 2 is a block diagram showing a control configuration of the control process executed by the arpeggiator of the present embodiment, that is, the processes (A) to (D) described above, and FIG. 3 is the pronunciation pattern data included in the arpeggio pattern data. FIG. 6 is a diagram showing an example of a format of new pronunciation pattern data created from the above and a pronunciation data list generated based on the new pronunciation pattern data and the pitch of a key depression sound input by a user's key depression operation.

アルペジオパターンデータは、たとえば前記外部記憶装置6内に予め複数種類(たとえば、音色毎に複数種類)記憶され、その中からユーザがいずれかを選択すると、選択されたアルペジオパターンデータが、外部記憶装置6から読み出されて、前記RAM5の所定位置に確保されたアルペジオパターンデータ格納領域(図示せず)に格納される。図2には、ユーザがアルペジオパターンデータ群から選択したアルペジオパターンデータNに基づいてアルペジオ発音データを生成する様子が示されている。   Arpeggio pattern data is stored in advance in, for example, a plurality of types (for example, a plurality of types for each tone color) in the external storage device 6, and when the user selects one of them, the selected arpeggio pattern data is stored in the external storage device. 6 and stored in an arpeggio pattern data storage area (not shown) secured at a predetermined position in the RAM 5. FIG. 2 shows how the arpeggio pronunciation data is generated based on the arpeggio pattern data N selected by the user from the arpeggio pattern data group.

各アルペジオパターンデータにはそれぞれ、発音パターンデータが含まれている。発音パターンデータは、図3に示すように、発音タイミング(Timing)、ゲートタイム(Gate)、キーナンバ(Key)、オクターブ(Oct)およびベロシティ(Vel)を1組のデータ(以下、「イベントデータ」と言う)とする複数組のイベントデータによって構成されている(ただし図3は、上述のように新発音パターンデータのフォーマットを示し、その作成基となる発音パターンデータのフォーマットを示していないが、両者のフォーマットは同じとする)。ここで、発音タイミングは、対応する(つまり、同じ組に属する)キーナンバの押鍵音を発音するタイミングを「小節:拍:クロック数」で表したものであり、本実施の形態では、480クロックが1拍分の時間に相当する。ゲートタイムは、上記発音タイミングで発音が開始された押鍵音の発音継続時間(つまり音長)をクロック数で表したものである。キーナンバは、ユーザが複数の鍵を同時に押したとき(押鍵開始タイミングは、同時でもよいし、ずれていてもよく、要は複数鍵が同時に押されている期間があればよい。以下、同様)に入力される押鍵音に対して、音高の低い順に番号付けしたものである。オクターブは、対応するキーナンバの押鍵音をどれだけオクターブシフトするかを示したものである。ベロシティは、対応するキーナンバの押鍵音を発音する際のベロシティの値を示したものである。   Each arpeggio pattern data includes pronunciation pattern data. As shown in FIG. 3, the sound generation pattern data includes a set of data (hereinafter referred to as “event data”) including a sound generation timing (Timing), a gate time (Gate), a key number (Key), an octave (Oct), and a velocity (Vel). 3) is composed of a plurality of sets of event data (however, FIG. 3 shows the format of the new pronunciation pattern data as described above, and does not show the format of the pronunciation pattern data that is the basis for its creation. Both formats are the same). Here, the sounding timing is the timing at which the keying sound of the corresponding key number (that is, belonging to the same set) is sounded is expressed by “measure: beat: number of clocks”. In this embodiment, 480 clocks are generated. Corresponds to the time for one beat. The gate time represents the duration of sound generation (ie, the sound length) of the key-pressing sound that has been sounded at the sounding timing in terms of the number of clocks. The key number is determined when the user simultaneously presses a plurality of keys (the key press start timing may be simultaneous or may be shifted, in other words, there may be a period during which a plurality of keys are pressed simultaneously. ) Are numbered in ascending order of pitch. The octave indicates how much the keypad sound of the corresponding key number is shifted by an octave. The velocity indicates the value of velocity when the corresponding key number is pressed.

図3には、ユーザの押鍵により3つの音高“C3”,“E3”および“G3”が同時に入力されたときに、新発音パターンデータ、つまり前記(A)の新発音パターンデータ作成処理によって作成された新発音パターンデータを用いて生成した発音データリストが記載されている。図示例の新発音パターンデータは4小節長であるが、元のアルペジオパターンデータ(ここでは、アルペジオパターンデータN)中の発音パターンデータは4小節長以上である。   In FIG. 3, when three pitches “C3”, “E3”, and “G3” are simultaneously input by the user's key depression, new sound generation pattern data, that is, the new sound generation pattern data generation process of the above (A) is shown. A pronunciation data list generated by using the new pronunciation pattern data created by is described. The new pronunciation pattern data in the illustrated example has a four-measure length, but the pronunciation pattern data in the original arpeggio pattern data (here, arpeggio pattern data N) has a four-measure length or more.

押鍵音“C3”,“E3”および“G3”には、前記ルールに従ってそれぞれ“1”,“2”および“3”のキーナンバが付与されるので、発音データリストの、たとえば先頭(“1:1:000”)から第2拍の末尾(“1:2:479”)までのノートナンバ(Note)は、次のように生成される。すなわち、
タイミング“1:1:000”:C4(発音パターンデータの発音タイミング“1:1:000”におけるキーナンバ“1”の押鍵音の音高(“C3”)を“1”オクターブシフトしたもの)
タイミング“1:1:240”:G3(発音パターンデータの発音タイミング“1:1:240”におけるキーナンバ“3”の押鍵音の音高(“G3”)を“0”オクターブシフトしたもの)
タイミング“1:2:000”:E3(発音パターンデータの発音タイミング“1:2:000”におけるキーナンバ“2”の押鍵音の音高(“E3”)を“0”オクターブシフトしたもの)
タイミング“1:2:240”:C3(発音パターンデータの発音タイミング“1:2:240”におけるキーナンバ“1”の押鍵音の音高(“C3”)を“0”オクターブシフトしたもの)
他の拍の各タイミングのノートナンバも、同様にして生成される。
The key press sounds “C3”, “E3”, and “G3” are assigned key numbers “1”, “2”, and “3”, respectively, according to the rules described above. 1: 000 ") to the end of the second beat (" 1: 2: 479 ") are generated as follows. That is,
Timing “1: 1: 000”: C4 (the pitch (“C3”) of the key number “1” at the sound generation timing “1: 1: 000” of the sound generation pattern data is shifted by “1” octave)
Timing “1: 1: 240”: G3 (the pitch (“G3”) of the key pressing sound of the key number “3” at the sound generation timing “1: 1: 240” of the sound generation pattern data is shifted by “0” octave)
Timing “1: 2,000”: E3 (the pitch (“E3”) of the key number “2” at the sound generation timing “1: 2,000” of the sound generation pattern data is shifted by “0” octave)
Timing “1: 2: 240”: C3 (the pitch of the key number “1” (“C3”) shifted by “0” octave at the sounding pattern data sounding timing “1: 2: 240”)
Note numbers of other timings of other beats are generated in the same manner.

なお本実施の形態では、新発音パターンデータとして元の発音パターンデータから4小節長(図3の例では、4/4拍子)分切り出したものを採用しているが、発音データリストの生成は、後述するようにユーザの押鍵操作で開始された後、その離鍵操作があるまで停止されないので、ユーザの押鍵操作から離鍵操作に至るまでの時間が4小節長を超えると、発音データリストは4小節長を超えて生成される。したがって、押鍵音が変更されないまま、発音データリストが4小節長を超えて生成されたときには、第5小節目以降のノートナンバは、第1〜第4小節で生成されたノートナンバが繰り返し生成される。ただし、発音データリストに登録される第5小節目以降の発音データのタイミングは、発音パターンデータ中の対応する発音タイミングをそのまま使うことができず、新発音パターンデータをループして使用する回数(以下、「ループ回数」と言う)×新発音パターンデータの時間長分、当該発音タイミングを時間的に遅く(後ろ)にシフトする必要がある。たとえば、ループ回数が2回目の先頭の発音データのタイミングは、図3に示すように、新発音パターンデータ中の対応する発音タイミング“1:1:000”に対して4小節分後ろにシフトされ、“5:1:000”となっている。ここで、ループ回数は“0”を初期値としているので、図3の「ループ2回目」とは、ループ回数=1のことである(この事情は、図4および図5でも同様である)。なお、新発音パターンデータとして切り出す時間長は、元の発音パターンデータ全体の時間長より短ければ、上記4小節長に限られないことは言うまでもない。   In the present embodiment, the new pronunciation pattern data that is cut out from the original pronunciation pattern data by the length of four bars (in the example of FIG. 3, 4/4 time) is used. As will be described later, since it is started by the user's key pressing operation and is not stopped until the key releasing operation is performed, if the time from the user's key pressing operation to the key releasing operation exceeds 4 bars length, The data list is generated with a length exceeding 4 bars. Therefore, when the pronunciation data list is generated exceeding the four-bar length without changing the key-press sound, the note numbers generated in the first to fourth bars are repeatedly generated as the note numbers after the fifth bar. Is done. However, as the timing of the pronunciation data after the fifth measure registered in the pronunciation data list, the corresponding pronunciation timing in the pronunciation pattern data cannot be used as it is, and the number of times the new pronunciation pattern data is used in a loop ( Hereinafter, the sound generation timing needs to be shifted later (backward) by the time length of the new sound generation pattern data. For example, as shown in FIG. 3, the timing of the first sounding data with the second loop count is shifted backward by four bars with respect to the corresponding sounding timing “1: 1: 000” in the new sounding pattern data. “5: 1: 000”. Here, since “0” is the initial value for the number of loops, the “second loop” in FIG. 3 means that the number of loops = 1 (this is the same in FIGS. 4 and 5). . Needless to say, the time length cut out as the new sound pattern data is not limited to the above four bars length as long as it is shorter than the time length of the entire original sound pattern data.

図2に戻り、ユーザの指示に応じてアルペジオ再生モードに移行し、ユーザが、アルペジオパターンデータを選択するとともに開始位置、終了位置および開始位置シフト量を設定し(ブロック1b)、アルペジオ発音データの生成開始を指示した後、押鍵操作によって、少なくとも1つ以上の押鍵音を入力する(ブロック1a)と、入力された押鍵音(少なくともキーコードおよびベロシティを含む)は、前記RAM5の所定位置に確保されたキーオンバッファ(図示せず)に格納される。前記CPU3はキーオンバッファの状態を常にチェックし、キーオンバッファに押鍵音が格納されると、その押鍵音に対応するノートオンイベントを生成して前記音源回路9に出力する。これに応じて音源回路9は、入力されたノートオンイベントに対応する楽音信号を生成して、前記効果回路10に出力する。これにより、サウンドシステム11から押鍵音が発音される。   Returning to FIG. 2, the arpeggio playback mode is entered in accordance with the user's instruction, and the user selects the arpeggio pattern data and sets the start position, end position, and start position shift amount (block 1b). After instructing the generation start, when at least one key pressing sound is input by a key pressing operation (block 1a), the input key pressing sound (including at least the key code and velocity) is stored in the RAM 5 It is stored in a key-on buffer (not shown) secured at the position. The CPU 3 always checks the state of the key-on buffer, and when a key-pressing sound is stored in the key-on buffer, generates a note-on event corresponding to the key-pressing sound and outputs it to the tone generator circuit 9. In response to this, the tone generator circuit 9 generates a tone signal corresponding to the inputted note-on event and outputs it to the effect circuit 10. As a result, a key depression sound is generated from the sound system 11.

次にCPU3は、新発音パターンデータ、つまりアルペジオパターンデータN中の発音パターンデータを前記開始位置から前記終了位置まで切り出すことによって得られた発音パターンデータと、キーオンバッファに格納された押鍵音の音高(キーコード)に基づいて、前述のようにして発音データリストを生成する(ブロック3a)。なお前記ブロック1bでは、「開始位置シフト量」も設定できるように構成されているが、これに基づいた制御処理については、後述する。また本発明は、アルペジオパターンデータ(の発音パターンデータ)の一部を使用することで、新たなアルペジオパターンデータを生成して再生したり、保存したりすることに特徴があるので、本実施の形態では常に、アルペジオパターンデータの一部を使用することにする。つまり、「開始位置」および「終了位置」のうち、少なくとも一方が常に設定されるものとする。しかし、これは説明の都合上であって、「開始位置」および「終了位置」のいずれも設定されず(この場合、「開始位置シフト量」は設定できてもできなくてもよい)、前記従来のアルペジエータのようにアルペジオパターンデータ全体を用いて発音データリストを生成できるように構成してもよい。   Next, the CPU 3 generates new sound generation pattern data, that is, the sound generation pattern data obtained by cutting out the sound generation pattern data in the arpeggio pattern data N from the start position to the end position, and the key press sound stored in the key-on buffer. Based on the pitch (key code), a pronunciation data list is generated as described above (block 3a). The block 1b is configured so that the “start position shift amount” can also be set. Control processing based on this will be described later. Further, the present invention is characterized in that a part of arpeggio pattern data (pronunciation pattern data) is used to generate and reproduce or store new arpeggio pattern data. The form always uses part of the arpeggio pattern data. That is, at least one of “start position” and “end position” is always set. However, this is for convenience of explanation, and neither the “start position” nor the “end position” is set (in this case, the “start position shift amount” may or may not be set). As in the conventional arpeggiator, the pronunciation data list may be generated using the entire arpeggio pattern data.

このようにして生成された(あるいは生成中の)発音データリストは、図示しないタイマ割り込み処理内に埋め込まれた前記(C)の発音データリスト再生処理によって再生される。この(C)発音データリスト再生処理は、具体的には、次のようにして実現される。すなわち、タイマ割り込み処理は、たとえば前記クロックの1周期毎に起動されるとして、
(i)RAM5の所定位置に設けたフリーランカウンタ(図示せず)を、タイマ割り込み処理が起動される度にカウントアップする
(ii)フリーランカウンタのカウント値と発音データリスト中の発音タイミングとを比較し、その結果、両者が一致すると、発音データリストから、その発音タイミングのノートナンバおよびベロシティを読み出し、このノートナンバおよびベロシティを含むノートオンイベントを生成して、音源回路9へ出力する
(iii)上記(ii)でノートオンイベントを生成した場合、フリーランカウンタが、その生成時点を起点として現時点までカウントした値を検出し、その検出値と、生成したノートオンイベントに対応するゲートタイムとを比較し、その結果、両者が一致すると、生成したノートオンイベントに対応するノートオフイベントを生成して、音源回路9に出力する。
The sounding data list generated (or being generated) in this way is reproduced by the sounding data list reproduction process (C) embedded in a timer interrupt process (not shown). More specifically, the (C) pronunciation data list reproduction process is realized as follows. That is, the timer interrupt process is started every cycle of the clock, for example,
(I) A free-run counter (not shown) provided at a predetermined position in the RAM 5 is counted up each time the timer interrupt process is activated. (Ii) The count value of the free-run counter and the sound generation timing in the sound data list As a result, if they match, the note number and velocity of the sound generation timing are read from the sound generation data list, a note-on event including the note number and velocity is generated, and output to the tone generator circuit 9 ( iii) When a note-on event is generated in (ii) above, the free-run counter detects a value counted up to the current time from the generation time, and the detected value and the gate time corresponding to the generated note-on event As a result, if both match, the generated note-on event It generates a corresponding note-off event, and outputs to the tone generator 9.

なおフリーランカウンタは、押鍵が開始されたタイミングなどの所定のタイミングでリセットする必要があることは言うまでもない。そしてリセットは通常、フリーランカウンタの値を“0”に設定することによって行うが、本実施の形態では、フリーランカウンタの値を“−1”に設定することによって行う。これは、本実施の形態では上述のように、フリーランカウンタがカウントアップされてから、そのカウント値と発音タイミングとが比較されるため、フリーランカウンタを“0”でリセットすると、発音タイミングが“0000”の位置にあるイベントを検出できないからである。また本実施の形態では、発音タイミングの表現形式として「小節:拍:クロック数」を採用する一方、フリーランカウンタのカウントは単純な(たとえば、“1”ずつの)カウントアップであるため、前記(ii)の処理における「比較」は、一方の表現形式を他方の表現形式に合わせた後に行う必要がある。どちらをどちらに合わせても構わないが、本実施の形態では説明の都合上、フリーランカウンタのカウント値を「小節:拍:クロック数」の表現形式に変換した後、発音タイミングと比較することにする。   It goes without saying that the free-run counter needs to be reset at a predetermined timing such as the timing when the key depression is started. The reset is normally performed by setting the value of the free-run counter to “0”, but in this embodiment, it is performed by setting the value of the free-run counter to “−1”. In this embodiment, as described above, since the count value is compared with the sounding timing after the free-run counter is counted up, when the free-run counter is reset to “0”, the sounding timing is This is because the event at the position “0000” cannot be detected. In this embodiment, “measure: beat: number of clocks” is adopted as the expression format of the sound generation timing, while the count of the free-run counter is simple (for example, “1” increments). The “comparison” in the process (ii) needs to be performed after matching one representation format with the other representation format. Either way may be matched, but in this embodiment, for convenience of explanation, the count value of the free-run counter is converted to the expression format of “bar: beat: number of clocks” and then compared with the sound generation timing. To.

図4は、本実施の形態のアルペジエータが実行する制御処理を説明するための図であり、同図(a)は、選択された6小節長のアルペジオパターンデータの一部を切り出す様子を示し、同図(b)は、同図(a)のアルペジオパターンデータ中の発音パターンデータに基づいて新たに作成した発音パターンデータを示し、同図(c)は、同図(b)の発音パターンデータを使用して生成した発音データリストに基づいて再生を行ったときの様子を示している。   FIG. 4 is a diagram for explaining a control process executed by the arpeggiator of the present embodiment. FIG. 4A shows a state in which a part of the selected 6-bar length arpeggio pattern data is cut out. FIG. 6B shows the sound pattern data newly created based on the sound pattern data in the arpeggio pattern data of FIG. 10A, and FIG. 10C shows the sound pattern data of FIG. It shows a state when playback is performed based on a pronunciation data list generated using.

前述のように、ユーザによって選択されたアルペジオパターンデータは前記アルペジオパターンデータ格納領域に格納されるが、このとき、そのアルペジオパターンデータ中の発音パターンデータを構成する各イベントデータの時間的位置が、たとえば図4(a)に示すように前記表示装置7上に表示される。その表示画面上には、切り出し開始位置および切り出し終了位置をそれぞれ示す矢印とともに、図示しないカーソルも表示される。ユーザは、このカーソルを切り出し開始位置または切り出し開始位置を示す矢印に合わせてドラッグ操作することで、切り出し開始位置または切り出し終了位置を指定する。図示例では、切り出し開始位置として第2小節の先頭が、切り出し終了位置として第5小節の末尾が指定されている。これにより、前記図2のブロック1bにおける「開始位置」として第2小節の先頭が、同「終了位置」として第5小節の末尾が設定される。なお、切り出し開始位置および切り出し終了位置の指定をドラッグ操作で行うと、切り出し開始位置が切り出し終了位置より時間的に遅く指定されたり、切り出し開始位置が当該アルペジオパターンデータの先頭を超えて指定されたり、切り出し終了位置が当該アルペジオパターンデータの末尾を超えて指定されたりすることがあり得る。このようなエラー指定については、ユーザに警告したり、指定そのものをできなくしたりすればよい。   As described above, the arpeggio pattern data selected by the user is stored in the arpeggio pattern data storage area. At this time, the temporal position of each event data constituting the pronunciation pattern data in the arpeggio pattern data is For example, it is displayed on the display device 7 as shown in FIG. On the display screen, a cursor (not shown) is displayed together with arrows indicating the cutout start position and the cutout end position. The user designates the cutout start position or the cutout end position by dragging the cursor in accordance with the arrow indicating the cutout start position or the cutout start position. In the illustrated example, the start of the second measure is designated as the cutout start position, and the end of the fifth measure is designated as the cutout end position. Thereby, the start of the second measure is set as the “start position” in the block 1b of FIG. 2, and the end of the fifth measure is set as the “end position”. Note that if the clip start position and clip end position are specified by dragging, the clip start position is specified later in time than the clip end position, or the clip start position is specified beyond the beginning of the arpeggio pattern data. The cutout end position may be specified beyond the end of the arpeggio pattern data. For such error designation, it is sufficient to warn the user or disable the designation itself.

次にユーザが、アルペジオ発音データの生成開始を指示すると、図4(b)に示すように、アルペジオパターンデータ中の発音パターンデータが「開始位置」から「終了位置」まで切り出されて、新たな発音パターンデータが作成される。   Next, when the user instructs generation start of the arpeggio pronunciation data, the pronunciation pattern data in the arpeggio pattern data is cut out from the “start position” to the “end position” as shown in FIG. Pronunciation pattern data is created.

そして、この新発音パターンデータおよび入力された押鍵音に基づいて発音データリストが生成され、この発音データリストに基づいて楽音、つまりアルペジオが生成される。図4(c)は、新発音パターンデータを2回使用してアルペジオを生成したときの様子を示している。ただし図示例では、新発音パターンデータ内のキーナンバが読み出される様子が示され、発音データリスト内のノートナンバが再生される様子は示されていない。これは、本発明ではアルペジオパターンデータ(の発音パターンデータ)の一部をどのように切り出し、切り出し後のアルペジオパターンデータ(の発音パターンデータ内のキーナンバ)をどのように読み出してアルペジオを生成するかが問題であって、切り出し後のアルペジオパターンデータ(の発音パターンデータ内のキーナンバ)から発音データリスト内のノートナンバをどのように生成するかは問題ではない(つまり、発音パターンデータ内のキーナンバから発音データリスト内のノートナンバを生成する方法は、前記従来のアルペジエータによってなされている方法をそのまま用いている)からである。   Then, a pronunciation data list is generated based on the new pronunciation pattern data and the inputted key depression sound, and a musical tone, that is, an arpeggio is generated based on the pronunciation data list. FIG. 4C shows a state where the arpeggio is generated using the new pronunciation pattern data twice. However, in the illustrated example, a state in which the key number in the new pronunciation pattern data is read is shown, and a state in which the note number in the pronunciation data list is reproduced is not shown. This is how the arpeggio pattern data (pronunciation pattern data) is cut out in the present invention, and how the arpeggio pattern data (key number in the pronouncing pattern data) is read out to generate the arpeggio Is a problem, and it does not matter how the note numbers in the pronunciation data list are generated from the arpeggio pattern data (the key numbers in the pronunciation pattern data) after extraction (that is, from the key numbers in the pronunciation pattern data). This is because the method for generating the note number in the pronunciation data list is the same as that used by the conventional arpeggiator).

図5は、図4の制御処理と異なる他の制御処理を説明するための図である。図5の制御処理は、図4の制御処理に対して、ユーザがタイミングシフト量を指定した点が異なっている。図5(a)〜(c)はそれぞれ、図4(a)〜(c)に対応している。   FIG. 5 is a diagram for explaining another control process different from the control process of FIG. The control process of FIG. 5 differs from the control process of FIG. 4 in that the user specifies the timing shift amount. 5A to 5C correspond to FIGS. 4A to 4C, respectively.

図5(a)に示すように、まずユーザが、図4(a)と同じアルペジオパターンデータを選択して、図4(a)と同じ区間の切り出しを指定した上で、さらに2拍分のタイミングシフト量を指定すると、前記図2のブロック1bの「開始位置」、「終了位置」および「開始位置シフト量」にはそれぞれ、「第2小節の先頭」、「第5小節の末尾」および「2拍分」が設定される。   As shown in FIG. 5 (a), the user first selects the same arpeggio pattern data as in FIG. 4 (a), specifies the same section as in FIG. When the timing shift amount is designated, the “start position”, “end position”, and “start position shift amount” of the block 1b in FIG. 2 are respectively “the start of the second measure”, “the end of the fifth measure”, and “2 beats” is set.

次にユーザが、アルペジオ発音データの生成開始を指示すると、図5(b)に示すように、アルペジオパターンデータ中の発音パターンデータが「開始位置」+「開始位置シフト量」から「終了位置」まで切り出され、さらに「開始位置」から「開始位置」+「開始位置シフト量」まで切り出され、前者の切り出された発音パターンデータの後ろに後者の切り出された発音パターンデータを追加して、新たな発音パターンデータが生成される。   Next, when the user instructs generation start of arpeggio pronunciation data, as shown in FIG. 5B, the pronunciation pattern data in the arpeggio pattern data is changed from “start position” + “start position shift amount” to “end position”. Is further cut out from “start position” to “start position” + “start position shift amount”, and the latter sounding pattern data is added after the former sounding pattern data, and new Sound generation pattern data is generated.

そして、この新発音パターンデータおよび入力された押鍵音に基づいて発音データリストが生成され、この発音データリストに基づいて楽音、つまりアルペジオが生成される。図5(c)は、新発音パターンデータを2回使用してアルペジオを生成したときの様子を示している。   Then, a pronunciation data list is generated based on the new pronunciation pattern data and the inputted key depression sound, and a musical tone, that is, an arpeggio is generated based on the pronunciation data list. FIG. 5C shows a state where the arpeggio is generated using the new pronunciation pattern data twice.

なお、図4(b)および図5(b)の新発音パターンデータは、ユーザの保存の指示により、新たなアルペジオパターンデータとして所定の記憶媒体に記録できるように構成されている。   The new pronunciation pattern data shown in FIGS. 4B and 5B are configured to be recorded on a predetermined storage medium as new arpeggio pattern data in accordance with a user's save instruction.

このように本実施の形態のアルペジエータでは、アルペジオパターンデータの一部を用いてアルペジオを生成することができる。そして、使用したアルペジオパターンデータ(の発音パターンデータ)の一部は、新たなアルペジオパターンデータとして保存するようにしたので、1つのアルペジオパターンデータから複数のアルペジオパターンデータを作成することができる。具体的には、たとえばドラム用のアルペジオパターンでは、7小節間の通常のパターンの後、フィルイン的なパターンが8小節目に入るような構成になっていることがある。このとき、ユーザが8小節目でなく、もっと先にフィルイン的なパターンを入れたい場合には、フィルイン的なパターンの前の通常のパターンの部分を切り出して使い、最後にフィルイン的なパターンを使うというように、切り出したパターンと元のパターンを簡単に組み合わせて利用することができる。   As described above, the arpeggiator of the present embodiment can generate an arpeggio using a part of the arpeggio pattern data. Since a part of the used arpeggio pattern data (the pronunciation pattern data) is stored as new arpeggio pattern data, a plurality of arpeggio pattern data can be created from one arpeggio pattern data. Specifically, for example, an arpeggio pattern for drums may be configured such that a fill-in pattern enters the eighth bar after a normal pattern of seven bars. At this time, if the user wants to insert a fill-in pattern earlier than the eighth measure, the normal pattern part before the fill-in pattern is cut out and used, and finally the fill-in pattern is used. In this way, the cut out pattern and the original pattern can be used in a simple combination.

またパターンの切り出しは、基本的には小節の先頭タイミングから始めるが、パターンの特性などによっては小節の途中から始めたいこともある。この場合、本実施の形態のアルペジエータではタイミングシフト量を指定することができるので、ユーザは、そのパターンの特性などを考慮してタイミングシフト量を指定することで、そのパターンの切り出し開始位置を適宜(たとえば、16分音符単位毎に)後ろにずらすことができる。これにより、たとえば切り出した発音パターンデータの先頭に休符が入っている場合など、休符を飛ばしてアルペジオ生成を開始することができる。さらに、このように切り出し開始位置をずらしたアルペジオパターンをループ再生する場合、本実施の形態のアルペジエータでは、再生が進行して切り出し終了位置に到達すると、ずらす前の切り出し開始位置、つまり、図5の例では小節の先頭タイミングに戻るようにしているので、全体として見たときに小節がずれることなくアルペジオ生成を行うことができる。   In addition, pattern cutting basically starts at the beginning of a measure, but depending on the characteristics of the pattern, it may be desired to start from the middle of the measure. In this case, since the arpeggiator of the present embodiment can specify the timing shift amount, the user can appropriately specify the pattern start position by specifying the timing shift amount in consideration of the characteristics of the pattern. It can be shifted backward (for example, every 16th note unit). Thereby, for example, when there is a rest at the beginning of the extracted pronunciation pattern data, arpeggio generation can be started by skipping the rest. Further, when the arpeggio pattern in which the cutout start position is shifted as described above is loop-reproduced in this way, in the arpeggiator of the present embodiment, when the reproduction proceeds and reaches the cutout end position, the cutout start position before shifting, that is, FIG. In this example, since the timing is returned to the start timing of the bars, arpeggios can be generated without shifting the bars when viewed as a whole.

次に、この制御処理を詳細に説明する。   Next, this control process will be described in detail.

図6は、本実施の形態のアルペジエータ、特にCPU3が実行するアルペジオ再生モード処理の手順をそれぞれ示すフローチャートであり、本アルペジオ再生モード処理は、ユーザが前記アルペジオ再生モードを選択したときに起動される。   FIG. 6 is a flowchart showing the procedure of the arpeggio playback mode process executed by the arpeggiator of the present embodiment, particularly the CPU 3, which is activated when the user selects the arpeggio playback mode. .

本アルペジオ再生モード処理は、主として
(1)初期設定処理(ステップS1〜S3)
(2)前記(A)の新発音パターンデータ作成処理(ステップS4)
(3)前記(D)の発音/消音処理(ステップS5,S6,S11,S12)
(4)アルペジオ再生のスタート/ストップ処理(ステップS7〜S10,S13,S14)
によって構成されている。
The arpeggio playback mode processing is mainly performed by (1) initial setting processing (steps S1 to S3).
(2) New pronunciation pattern data creation process (step S4)
(3) Sound generation / silence processing of (D) (steps S5, S6, S11, S12)
(4) Arpeggio playback start / stop processing (steps S7 to S10, S13, S14)
It is constituted by.

上記(1)の初期化処理では、まずCPU3は、前記外部記憶装置6に記憶されているアルペジオパターンデータ群の一覧を、たとえば前記表示装置7上に表示することでユーザに提示し、ユーザがその中からいずれかのアルペジオパターンデータを選択すると、選択されたアルペジオパターンデータを外部記憶装置6から前記アルペジオパターンデータ格納領域に読み込む(ステップS1)。   In the initialization process (1), first, the CPU 3 presents a list of arpeggio pattern data groups stored in the external storage device 6 to the user by displaying the list on the display device 7, for example. When any one of the arpeggio pattern data is selected, the selected arpeggio pattern data is read from the external storage device 6 into the arpeggio pattern data storage area (step S1).

次にCPU3は、前述のようにしてアルペジオパターンデータ格納領域内のアルペジオパターンデータを前記表示装置7上に表示し、ユーザによって切り出し開始位置および切り出し終了位置が指定されるのを待つ。ユーザが切り出し開始位置および切り出し終了位置を指定すると、CPU3は、その切り出し開始位置および切り出し終了位置をそれぞれ、前記RAM5の所定位置に確保された切り出し開始位置格納領域および切り出し終了位置格納領域(ともに図示せず)に格納する(ステップS3)。   Next, the CPU 3 displays the arpeggio pattern data in the arpeggio pattern data storage area on the display device 7 as described above, and waits for the user to specify the cutout start position and cutout end position. When the user designates a cutout start position and a cutout end position, the CPU 3 sets the cutout start position and the cutout end position, respectively, in a cutout start position storage area and a cutout end position storage area (both shown in FIG. (Not shown) (step S3).

切り出し開始位置および切り出し終了位置の指定は、図4(a)を用いて前述したように、たとえばアルペジオパターンデータ(中の発音パターンデータを構成する各イベントデータの時間的位置)が表示された画面上の矢印およびカーソルを用いてなされる。この位置の指定は、小節単位や拍単位、さらに細かくクロック単位など、いずれの単位を採用してもよいが、本実施の形態ではクロック単位で指定できるものとする。もちろん、ユーザがその単位をいずれにするか設定できるようにしてもよい。なお、切り出し開始位置および切り出し終了位置が指定されたときに、少なくとも一方の位置が、当該発音パターンデータ内のいずれかのイベントデータの発音継続時間の途中になっていることがある。この場合、そのイベントデータは、切り出し位置で分割してもよいし、切り出し対象から除外するようにしてもよいし、クオンタイズ処理を施した後に切り出すようにしてもよい。また、このようなルールをいくつか用意しておき、ユーザあるいはメーカがいずれかを選択設定できるようにしてもよい。   As described above with reference to FIG. 4A, the clip start position and clip end position are designated, for example, a screen on which arpeggio pattern data (temporal position of each event data constituting the pronunciation pattern data therein) is displayed. This is done using the top arrow and cursor. The designation of the position may be any unit such as a measure unit, a beat unit, or a clock unit, but in this embodiment, it can be designated in units of clock. Of course, the user may be allowed to set the unit. When the cutout start position and the cutout end position are designated, at least one of the positions may be in the middle of the sound generation duration of any event data in the sound generation pattern data. In this case, the event data may be divided at the cutout position, may be excluded from the cutout target, or may be cut out after performing the quantization process. Also, some such rules may be prepared so that the user or manufacturer can select and set any one of them.

なお、本実施の形態では前述のように、切り出し開始位置および切り出し終了位置のうちのいずれか一方が設定されない場合があり得るが、設定されない方の格納領域にはデフォルト位置(たとえば、切り出し終了位置が設定されない場合には、元のアルペジオパターンデータの終了位置)を設定しておけばよい。   In this embodiment, as described above, either one of the cutout start position and the cutout end position may not be set, but the storage area that is not set has a default position (for example, the cutout end position). If is not set, the end position of the original arpeggio pattern data) may be set.

さらにCPU3は、ユーザによってタイミングシフト量(前記図2の「開始位置シフト量」に相当)が指定されるのを待つ。ユーザがタイミングシフト量を指定すると、CPU3は、そのタイミングシフト量を、RAM5の所定位置に確保されたタイミングシフト量格納領域(図示せず)に格納する(ステップS3)。タイミングシフト量の指定も、前記切り出し開始位置および切り出し終了位置の指定と同様に、表示画面上の矢印およびカーソルを用いて行われる。しかしその指定単位は、前記切り出し開始位置および切り出し終了位置の指定単位より細かく、たとえば、16分音符単位や8分音符単位、4分音符単位、さらに細かくクロック単位のいずれかを採用すればよい。本実施の形態では、クロック単位で指定できるものとするが、ユーザがその単位をいずれにするか設定できるようにしてもよい。なお、前記図4を用いて説明したように、タイミングシフト量は指定されない場合があり、その場合、タイミングシフト量格納領域には“FF”(1バイトで表現される場合)を設定しておけばよい。   Further, the CPU 3 waits for the timing shift amount (corresponding to the “start position shift amount” in FIG. 2) specified by the user. When the user designates the timing shift amount, the CPU 3 stores the timing shift amount in a timing shift amount storage area (not shown) secured at a predetermined position in the RAM 5 (step S3). The timing shift amount is also specified using an arrow and a cursor on the display screen, similarly to the specification of the cutout start position and cutout end position. However, the designation unit is finer than the designation unit of the cutout start position and cutout end position, and for example, any one of a sixteenth note unit, an eighth note unit, a quarter note unit, or a clock unit may be adopted. In this embodiment, it can be specified in units of clocks, but the user may be allowed to set which unit. As described with reference to FIG. 4, the timing shift amount may not be specified. In this case, “FF” (when expressed by 1 byte) may be set in the timing shift amount storage area. That's fine.

次にCPU3は、処理を前記(2)の新発音パターンデータ作成処理に進める。   Next, the CPU 3 advances the process to the new pronunciation pattern data creation process (2).

図7は、この(2)新発音パターンデータ作成処理の詳細な手順を示すフローチャートである。同図に示すように、まずCPU3は、新発音パターンデータを作成するためにRAM5の所定位置に新発音パターンデータ格納領域(図示せず)を確保する(ステップS21)。次にCPU3は、前記タイミングシフト量格納領域をチェックすることで、タイミングシフト量が設定されているかどうかを判別し(ステップS22)、タイミングシフト量が設定されていないとき、つまりタイミングシフト量格納領域に“FF”が格納されているときには、ステップS23〜S25の処理を実行する一方、タイミングシフト量が設定されているとき、つまりタイミングシフト量格納領域に“FF”以外の値が格納されているときには、ステップS26〜S28およびS25の処理を実行する。   FIG. 7 is a flowchart showing the detailed procedure of the (2) new pronunciation pattern data creation process. As shown in the figure, first, the CPU 3 secures a new pronunciation pattern data storage area (not shown) at a predetermined position in the RAM 5 in order to create new pronunciation pattern data (step S21). Next, the CPU 3 checks the timing shift amount storage area to determine whether or not the timing shift amount is set (step S22). When the timing shift amount is not set, that is, the timing shift amount storage area. When “FF” is stored, the processing of steps S23 to S25 is executed, while when the timing shift amount is set, that is, a value other than “FF” is stored in the timing shift amount storage area. At times, the processes of steps S26 to S28 and S25 are executed.

タイミングシフト量が設定されていないときには、CPU3は、前記アルペジオパターンデータ格納領域に格納されているアルペジオパターンデータ中の発音パターンデータ内のイベントデータのうち、発音タイミングが前記切り出し開始位置から前記切り出し終了位置までの時間内にあるイベントデータをコピーして、前記新発音パターンデータ格納領域の先頭から書き込む(ステップS23)。そしてCPU3は、このようにして書き込まれた各イベントデータの発音タイミングを切り出し開始位置分、つまり当該アルペジオパターンデータ中の発音パターンデータの先頭から切り出し開始位置までの時間(に相当するクロック数)分前にシフトさせる(ステップS24)。さらにCPU3は、必要に応じて新発音パターンデータ格納領域内の末尾のイベントデータの終了時間を調整する(ステップS25)。末尾のイベントデータは、その発音タイミングが切り出し終了位置より時間的に早い位置にあるために、新発音パターンデータ格納領域に書き込まれているものの、そのゲートタイムで、つまり発音継続時間だけ発音させたときには、切り出し終了位置を超えることがあり得る。上記ステップS25の「調整」とは、末尾のイベントデータをそのゲートタイムで発音させたときに切り出し終了位置を超えないように、そのゲートタイムを調整することを意味する。なお、このような「調整」は、末尾のイベントデータだけでなく、末尾に近いいくつかのイベントデータについても行う必要があり得るが、その場合には、当該イベントデータについても同様の「調整」を行うことは言うまでもない。このようにして新発音パターンデータは、前記図4(b)のように作成される。   When the timing shift amount is not set, the CPU 3 determines that the sound generation timing of the event data in the sound pattern data in the arpeggio pattern data stored in the arpeggio pattern data storage area is the cut end from the cut start position. The event data within the time until the position is copied and written from the beginning of the new pronunciation pattern data storage area (step S23). The CPU 3 then extracts the sound generation timing of each event data written in this way for the cut start position, that is, the time from the beginning of the sound pattern data in the arpeggio pattern data to the cut start position (corresponding to the number of clocks). Shift forward (step S24). Further, the CPU 3 adjusts the end time of the last event data in the new pronunciation pattern data storage area as necessary (step S25). The event data at the end is written in the new pronunciation pattern data storage area because the sound generation timing is earlier than the cut-out end position, but it is sounded at the gate time, that is, the sound generation duration. Sometimes the cut end position may be exceeded. The “adjustment” in step S25 means that the gate time is adjusted so as not to exceed the cut-out end position when the last event data is sounded at the gate time. Such “adjustment” may need to be performed not only on the event data at the end, but also on some event data close to the end. In this case, the same “adjustment” is also applied to the event data. Needless to say. In this way, new pronunciation pattern data is created as shown in FIG.

一方、タイミングシフト量が設定されているときには、CPU3は、前記アルペジオパターンデータ格納領域に格納されているアルペジオパターンデータ中の発音パターンデータ内のイベントデータのうち、発音タイミングが前記切り出し開始位置にタイミングシフト量分加算した結果の位置(切り出し開始位置+タイミングシフト量)から前記切り出し終了位置までの時間内にあるイベントデータをコピーして、前記新発音パターンデータ格納領域の先頭から書き込む(ステップS26)。そしてCPU3は、当該アルペジオパターンデータ中の発音パターンデータ内のイベントデータのうち、発音タイミングが切り出し開始位置から該切り出し開始位置にタイミングシフト量分加えた位置(切り出し開始位置+タイミングシフト量)までの時間内にあるイベントデータのコピーであって、その各イベントデータの発音タイミングをそれぞれ、切り出し終了位置から切り出し開始位置を減算した結果(切り出し終了位置−切り出し開始位置)分だけ時間的に遅くシフトしたコピーを新発音パターンデータ格納領域に追加する(ステップS27)。さらにCPU3は、このようにして書き込まれた各イベントデータの発音タイミングを切り出し開始位置にタイミングシフト量を加算した結果(切り出し開始位置+タイミングシフト量)分、つまり当該アルペジオパターンデータ中の発音パターンデータの先頭から切り出し開始位置+タイミングシフト量までの時間(に相当するクロック数)分前にシフトさせる(ステップS28)。そしてCPU3は、処理を前記ステップS25に進める。ステップS25の処理については前述したので、ここでは繰り返さない。   On the other hand, when the timing shift amount is set, the CPU 3 sets the sounding timing at the cutout start position among the event data in the sounding pattern data in the arpeggio pattern data stored in the arpeggio pattern data storage area. The event data within the time from the position (cutout start position + timing shift amount) obtained by adding the shift amount to the cutout end position is copied and written from the beginning of the new pronunciation pattern data storage area (step S26). . Then, the CPU 3 of the event data in the sound generation pattern data in the arpeggio pattern data from the sound generation timing to the position (cutout start position + timing shift amount) obtained by adding the timing shift amount from the cutout start position to the cutout start position. It is a copy of event data within the time, and the sound generation timing of each event data is shifted later in time by the result of subtracting the cutout start position from the cutout end position (cutout end position−cutout start position). A copy is added to the new pronunciation pattern data storage area (step S27). Further, the CPU 3 calculates the sounding timing of each event data written in this way by the result of adding the timing shift amount to the cutout start position (cutout start position + timing shift amount), that is, the sounding pattern data in the arpeggio pattern data. Is shifted forward by the time (corresponding to the number of clocks) from the beginning of the clip to the cutout start position + timing shift amount (step S28). Then, the CPU 3 advances the process to step S25. Since the processing in step S25 has been described above, it will not be repeated here.

次にCPU3は、処理を前記(3)の発音/消音処理に進める。この(3)発音/消音処理では、まずCPU3は、ユーザの押鍵操作に応じて前記検出回路2から出力された演奏情報(押鍵音)を取得し、前記キーオンバッファに格納する(図6のステップS5)。次にCPU3は、キーオンバッファに格納された押鍵情報に基づいてノートオンイベントを生成し、音源回路9に出力する(ステップS6)。なおユーザの押鍵操作は、複数の鍵に対するもののみである必要はなく、1つの鍵に対するものでもよい。そしてCPU3は、ユーザの離鍵操作に応じて検出回路2から出力された離鍵情報(離鍵音)を取得すると、その取得された離鍵情報に基づいてノートオフイベントを生成し、音源回路9に出力する(ステップS11→S12)。これにより、ユーザの押鍵から離鍵に至るまで、その押鍵音が継続して発音される。   Next, the CPU 3 advances the processing to the sound production / mute processing of (3). In this (3) sound generation / silence processing, first, the CPU 3 acquires performance information (key press sound) output from the detection circuit 2 in response to a user's key press operation, and stores it in the key-on buffer (FIG. 6). Step S5). Next, the CPU 3 generates a note-on event based on the key depression information stored in the key-on buffer, and outputs it to the tone generator circuit 9 (step S6). The user's key pressing operation need not be for only a plurality of keys, but may be for one key. When the CPU 3 acquires the key release information (key release sound) output from the detection circuit 2 in response to the user's key release operation, the CPU 3 generates a note-off event based on the acquired key release information, and generates a sound source circuit. (Step S11 → S12). As a result, the key pressing sound is continuously generated from the key pressing of the user to the key release.

前記(4)のアルペジオ生成のスタート/ストップ処理では、CPU3は、前記ステップS5で検出された押鍵がニューキーオンであるか否かを判別する(ステップS7)。この判別の結果、ニューキーオンであれば、CPU3は、ループ回数をカウントするためにRAM5の所定位置に設けられたループカウンタ(図示せず)をリセット(“0”)するとともに、前記新発音パターンデータ格納領域内の発音パターンデータから読み出すべき1組のイベントデータの位置を示すためにRAM5の所定位置に設けられた読み出しポインタ(図示せず)をリセット(“0”)し(ステップS8)、さらに発音データリストを初期化(クリア)する(ステップS9)。なお発音データリストも、RAM5の所定位置に確保された領域上に形成される。そしてCPU3は、アルペジオ再生をスタートさせて、アルペジオ再生を動作状態とした(ステップS10)後、発音データリスト生成処理(前記(B)の発音データリスト生成処理に相当する)を実行する。   In the arpeggio generation start / stop process (4), the CPU 3 determines whether or not the key depression detected in step S5 is a new key on (step S7). If the result of this determination is that the new key is on, the CPU 3 resets ("0") a loop counter (not shown) provided at a predetermined position in the RAM 5 in order to count the number of loops, and the new tone generation pattern. A read pointer (not shown) provided at a predetermined position in the RAM 5 is reset (“0”) to indicate the position of a set of event data to be read from the sound generation pattern data in the data storage area (step S8). Further, the pronunciation data list is initialized (cleared) (step S9). The pronunciation data list is also formed on an area secured in a predetermined position of the RAM 5. Then, the CPU 3 starts arpeggio playback and puts the arpeggio playback into an operating state (step S10), and then executes a pronunciation data list generation process (corresponding to the pronunciation data list generation process of (B)).

図8は、発音データリスト生成処理の詳細な手順を示すフローチャートである。本発音データリスト生成処理は、アルペジオ再生の動作中に1回起動されると、新発音パターンデータ格納領域内の新発音パターンデータを1回使って発音データリストを生成するものである。   FIG. 8 is a flowchart showing a detailed procedure of the pronunciation data list generation process. When the present pronunciation data list generation process is started once during the arpeggio playback operation, the new pronunciation pattern data in the new pronunciation pattern data storage area is used once to generate a pronunciation data list.

図8において、まずCPU3は、アルペジオ再生が動作中かどうかを判別し(ステップS31)、動作中でなければ、直ちに本発音データリスト生成処理を終了する一方、動作中であれば、新発音パターンデータ格納領域内の新発音パターンデータから、読み出しポインタが示す位置の1組のイベントデータを読み出す(ステップS32)。   In FIG. 8, first, the CPU 3 determines whether or not the arpeggio playback is in operation (step S31). If it is not in operation, the CPU 3 immediately ends the pronunciation data list generation process. A set of event data at the position indicated by the read pointer is read from the new sound pattern data in the data storage area (step S32).

次にCPU3は、読み出した1組のイベントデータと押鍵音の音高に基づいて、前述した方法により発音データを生成し、ループカウンタの値を考慮して発音データリストに書き込む(ステップS33)。図3を用いて前述したように、1回目のループ(ループカウンタ=0の場合)では、発音データリストに登録する発音データのタイミング(Timing)は新発音パターンデータ内の対応するイベントデータの発音タイミングをそのまま使うことができる。しかし2回目以降のループ(ループカウンタ≧1の場合)では、当該イベントデータの発音タイミングをループカウンタの値×新発音パターンデータ全体の時間長(=切り出し終了位置−切り出し開始位置)分だけ時間的に遅くシフトさせてから発音データリストに登録する必要がある。上記ステップS33の「ループカウンタの値を考慮して」とは、発音データを発音データリストに登録するに際して、ループカウンタの値によっては(ループカウンタ≠0の場合)発音データのタイミングを換算する必要があることを意味する。   Next, the CPU 3 generates sound generation data by the above-described method based on the read set of event data and the pitch of the key depression sound, and writes it into the sound generation data list in consideration of the value of the loop counter (step S33). . As described above with reference to FIG. 3, in the first loop (when the loop counter = 0), the timing (Timing) of the sound data registered in the sound data list is the sound of the corresponding event data in the new sound pattern data. You can use the timing as it is. However, in the second and subsequent loops (in the case of loop counter ≧ 1), the sound generation timing of the event data is set to the time of loop counter value × total time of new sound generation pattern data (= cutting end position−cutting start position). It is necessary to register in the pronunciation data list after shifting to a later time. The step S33 “considering the value of the loop counter” means that the timing of the sounding data needs to be converted depending on the value of the loop counter when the sounding data is registered in the sounding data list (when the loop counter ≠ 0). Means there is.

次にCPU3は、読み出しポインタの値を“1”だけ進める(ステップS34)。そしてCPU3は、読み出した1組のイベントデータが発音パターンデータの末尾のデータになるまで、前記ステップS32〜S34の処理を繰り返す(ステップS35→S32)。一方、読み出した1組のイベントデータが発音パターンデータの末尾のデータになると、CPU3は、ループカウンタを“1”だけカウントアップするとともに、読み出しポインタをリセットした(ステップS35→S36)後、本発音データリスト生成処理を終了する。   Next, the CPU 3 advances the value of the read pointer by “1” (step S34). Then, the CPU 3 repeats the processes of steps S32 to S34 until the read set of event data becomes the last data of the pronunciation pattern data (steps S35 → S32). On the other hand, when the read set of event data becomes the last data of the sound generation pattern data, the CPU 3 counts up the loop counter by “1” and resets the read pointer (steps S35 → S36). The data list generation process is terminated.

このようにして生成された発音データリストを再生して、アルペジオを発音させる処理については、既に説明したので、繰り返さない。ただし、発音データリストに登録された最後の(あるいは、それより前であって、それに近い位置の)発音データが読み出されたときには、CPU3に本発音データリスト生成処理を1回実行させる必要がある。これにより、新発音パターンデータを使った2回目以降のループでも、アルペジオを正しく発音させることができる。   The process of reproducing the pronunciation data list generated in this way and generating arpeggios has already been described and will not be repeated. However, when the last sounding data registered in the sounding data list (or before and near the sounding data) is read, it is necessary for the CPU 3 to execute the sounding data list generation process once. is there. Thereby, the arpeggio can be correctly pronounced even in the second and subsequent loops using the new pronunciation pattern data.

図6に戻り、アルペジオ動作中に、前記ステップS11で検出された離鍵がオールキーオフ(押鍵されていた状態からすべての鍵が離鍵された状態になること)であれば、アルペジオ生成をストップさせて、アルペジオを非動作状態とする(ステップS13→S14)。このときCPU3は、発音データリスト内でユーザの離鍵タイミング以降に消音される発音データについて、必要があればその消音タイミングを調整する。ここで、消音タイミングを調整する必要がある場合とは、たとえば、新発音パターンデータが1度も末尾まで使われずに離鍵操作がされた場合である。この場合には、離鍵操作が検出された後、最初に到来する切りのよい位置(小節や拍の終了位置やパターンの末尾など)までアルペジオ生成を続けた方が望ましい。もちろんこれに限らず、消音タイミングの調整を行わずに、離鍵操作が検出された時点で、アルペジオ生成も即座に停止するようにしてもよい。   Returning to FIG. 6, during the arpeggio operation, if the key release detected in step S11 is all-key-off (all keys are released from the pressed state), arpeggio generation is performed. Stop and put the arpeggio in a non-operating state (steps S13 → S14). At this time, the CPU 3 adjusts the silencing timing of the tone generation data to be muted after the user's key release timing in the tone generation data list, if necessary. Here, the case where the mute timing needs to be adjusted is, for example, a case where the key release operation is performed without using the new pronunciation pattern data to the end. In this case, it is desirable to continue the arpeggio generation until the first arriving good position (measure end position, beat end position, pattern end, etc.) after the key release operation is detected. Of course, the present invention is not limited to this, and the arpeggio generation may be stopped immediately when a key release operation is detected without adjusting the mute timing.

このように新発音パターンデータを使ってアルペジオ再生を行ったときに、ユーザがその新発音パターンデータを、新たなアルペジオパターンデータとして前記外部記憶装置6に記録しておきたいことがある。   Thus, when arpeggio playback is performed using the new sound pattern data, the user may want to record the new sound pattern data in the external storage device 6 as new arpeggio pattern data.

図9は、アルペジオパターンデータ記録処理の手順を示すフローチャートであり、本アルペジオパターンデータ記録処理は、ユーザが、たとえば前記操作子群1に含まれる保存スイッチ(図示せず)を操作したときに起動される。   FIG. 9 is a flowchart showing the procedure of the arpeggio pattern data recording process. This arpeggio pattern data recording process is activated when the user operates, for example, a storage switch (not shown) included in the operator group 1. Is done.

本アルペジオパターンデータ記録処理では、まずCPU3は、アルペジオパターンデータの枠組み(たとえば、ファイル)を新規作成する(ステップS41)。新規作成する場所は、たとえば前記RAM5のワークエリアである。   In the arpeggio pattern data recording process, the CPU 3 first creates a new arpeggio pattern data framework (for example, a file) (step S41). The newly created place is, for example, the work area of the RAM 5.

次にCPU3は、作成中のアルペジオパターンデータを識別する識別情報(名前や番号)を決定し、当該アルペジオパターンデータに付与する(ステップS42)。ここで識別情報は、ユーザによって入力されたものを用いてもよいし、CPU3によって自動的に付けられたものを用いてもよい。   Next, the CPU 3 determines identification information (name and number) for identifying the arpeggio pattern data being created and assigns it to the arpeggio pattern data (step S42). Here, information input by the user may be used as the identification information, or information automatically attached by the CPU 3 may be used.

次にCPU3は、切り出し開始位置と切り出し終了位置より、新発音パターンデータの長さを抽出し、作成中のアルペジオパターンデータに付与する(ステップS43)。ここで、切り出し開始位置および切り出し終了位置は、前記切り出し開始位置格納領域および切り出し終了位置格納領域にそれぞれ格納されているものを読み出して用いればよい。   Next, the CPU 3 extracts the length of the new pronunciation pattern data from the cutout start position and cutout end position, and assigns it to the arpeggio pattern data being created (step S43). Here, as the cutout start position and the cutout end position, those stored in the cutout start position storage area and the cutout end position storage area may be read and used.

次にCPU3は、元のアルペジオパターンデータ、つまり前記アルペジオパターンデータ格納領域に格納されているアルペジオパターンデータを参照して、その他の必要な情報(音色や拍子など)を抽出し、作成中のアルペジオパターンデータに付与する(ステップS44)。なお、ステップS42〜S44の処理は、作成中のアルペジオパターンデータのフォーマットを本実施の形態で採用したアルペジオパターンデータのフォーマットに合わせるための処理である。したがって、本実施の形態で言及したアルペジオパターンデータには、ステップS42〜S44の処理によって付与される情報が付与されている。   Next, the CPU 3 refers to the original arpeggio pattern data, that is, the arpeggio pattern data stored in the arpeggio pattern data storage area, extracts other necessary information (tone, time signature, etc.), and creates the arpeggio being created. It is given to the pattern data (step S44). The processing in steps S42 to S44 is processing for matching the format of the arpeggio pattern data being created to the format of the arpeggio pattern data adopted in the present embodiment. Therefore, the information given by the processing of steps S42 to S44 is given to the arpeggio pattern data mentioned in the present embodiment.

次にCPU3は、新発音パターンデータ格納領域から、そこに格納されている新発音パターンデータを読み出して、作成中のアルペジオパターンデータ内に取り込む(ステップS45)。   Next, the CPU 3 reads out the new pronunciation pattern data stored in the new pronunciation pattern data storage area and takes it into the arpeggio pattern data being created (step S45).

次にCPU3は、作成中のアルペジオパターンデータを所定の記憶媒体に記録する(ステップS46)。ここで所定の記憶媒体とは、前記外部記憶装置6であるが、外部記憶装置6には、前述のように各種の記憶媒体が存在するので、ユーザにそのいずれかを指定させ、指定された記憶媒体に作成中のアルペジオパターンデータを記録させている。   Next, the CPU 3 records the arpeggio pattern data being created on a predetermined storage medium (step S46). Here, the predetermined storage medium is the external storage device 6, but since there are various storage media in the external storage device 6 as described above, the user is allowed to specify one of the storage media. Arpeggio pattern data being created is recorded on a storage medium.

このように本実施の形態では、アルペジオパターンデータの記録は、ユーザの操作に応じて行うようにしたが、これに限らず、別のアルペジオパターンデータが選択されるときに自動的に行うようにしてもよいし、ある一定時間(たとえば、5分間)いずれのユーザ操作も検出されなかったときに自動的に行うようにしてもよい。自動的に記録する場合、新たなアルペジオパターンデータの識別情報(番号)としては、空いている番号を付けるようにすればよい。   As described above, in this embodiment, recording of arpeggio pattern data is performed according to a user operation. However, the present invention is not limited to this, and it is automatically performed when another arpeggio pattern data is selected. Alternatively, it may be automatically performed when no user operation is detected for a certain period of time (for example, 5 minutes). When recording automatically, as a new arpeggio pattern data identification information (number), a vacant number may be added.

なお本実施の形態では、アルペジオパターンデータ記録処理は、アルペジオ再生モード内の一処理としたが、これに限らず、アルペジオ再生モードとは独立したアルペジオパターンデータ記録モードを設け、そのモード内でアルペジオパターンデータの記録を単独で行うようにしてもよい。この場合、上記図9のアルペジオパターンデータ記録処理の先頭に、前記図6のステップS1〜S4の処理を追加すればよい。   In this embodiment, the arpeggio pattern data recording process is one process in the arpeggio playback mode. However, the present invention is not limited to this, and an arpeggio pattern data recording mode independent from the arpeggio playback mode is provided. The pattern data may be recorded alone. In this case, the processes in steps S1 to S4 in FIG. 6 may be added to the head of the arpeggio pattern data recording process in FIG.

また本実施の形態では、アルペジオ再生を行うに際して、常に新発音パターンデータを作成するようにしたが、新発音パターンデータを作成せず、アルペジオパターンデータ格納領域に格納されているアルペジオパターンデータ中の発音パターンデータ内のイベントデータのうち、切り出し開始位置から切り出し終了位置までに含まれるものを読み出すことで、アルペジオ再生を行うようにしてもよい。具体的には、前記図8の発音データリスト生成処理を次のように変更する。つまり、
a.「新発音パターンデータ」を「アルペジオパターンデータ格納領域に格納されているアルペジオパターンデータ中の発音パターンデータ」に変更
b.読み出しポインタの初期値を“0”(図6のステップS8および図8のステップS36)から「切り出し開始位置のイベントデータの位置」に変更
c.生成した発音データを発音データリストに書き込むときの「ループカウンタの値を考慮して」(ステップS33)を「読み出した1組のイベントデータに含まれる発音タイミングを切り出し開始位置分時間的に早い方向にシフトした上で、ループカウンタの値を考慮して」に変更
d.ステップS35の「読み出した1組のイベントデータは新発音パターンデータの末尾の1組のイベントデータ?」を「読み出した1組のイベントデータは切り出し終了位置までにある最後の1組のイベントデータ?」に変更。
In the present embodiment, when arpeggio playback is performed, new pronunciation pattern data is always created, but new pronunciation pattern data is not created, and arpeggio pattern data stored in the arpeggio pattern data storage area is not created. Arpeggio playback may be performed by reading the event data included in the pronunciation pattern data from the cut start position to the cut end position. Specifically, the pronunciation data list generation process of FIG. 8 is changed as follows. That means
a. Change "new phonetic pattern data" to "phonetic pattern data in arpeggio pattern data stored in arpeggio pattern data storage area" b. Change the initial value of the read pointer from “0” (step S8 in FIG. 6 and step S36 in FIG. 8) to “position of event data at the cutout start position” c. “Considering the value of the loop counter” (step S33) when writing the generated sound generation data to the sound generation data list “Extracting the sound generation timing included in the read set of event data in the direction earlier in time by the start position And shift to “in consideration of the value of the loop counter” d. In step S35, “is the read one set of event data the last set of event data of the new pronunciation pattern data?” “Is the read one set of event data the last set of event data up to the cut end position? "change to.

ただし、タイミングシフト量が指定されている場合には、上記b.をさらに「読み出しポインタの初期値を『切り出し開始位置のイベントデータの位置』から『切り出し開始位置+タイミングシフト量のイベントデータの位置』に変更し、ステップS35とステップS36の間に、「切り出し開始位置から切り出し開始位置+タイミングシフト量までに含まれるイベントデータを1組ずつ読み出して、ステップS33の処理と同様の処理を行う(ただし、生成した発音データを発音データリストに書き込むときには、当該発音タイミングを切り出し終了位置−切り出し開始位置−タイミングシフト量分時間的に遅い方向にシフトした上で、ループカウンタの値を考慮する)」処理を追加する。   However, when the timing shift amount is designated, b. Is further changed from “the position of the event data at the start position of cutout” to “the position of the event data of the cutout start position + timing shift amount”. Event data included from the position to the cut start position + timing shift amount is read one by one, and the same processing as the processing in step S33 is performed (however, when the generated pronunciation data is written in the pronunciation data list, Is added in consideration of the loop counter value).

この場合、新発音パターンデータは作成されないので、前記アルペジオパターンデータ記録モードを設け、そのモード内でアルペジオパターンデータの記録を単独で行う必要がある。   In this case, since new pronunciation pattern data is not created, it is necessary to provide the arpeggio pattern data recording mode and to record the arpeggio pattern data independently in that mode.

さらに本実施の形態では、アルペジオパターンデータは、外部記憶装置6に予め複数種類記憶されているとしたが、これに限らず、前記ROM4に予め複数種類記憶されていてもよいし、ネットワーク上にあるものを、前記通信I/F8を介して取得するようにしてもよい。   Furthermore, in the present embodiment, a plurality of types of arpeggio pattern data are stored in advance in the external storage device 6, but the present invention is not limited to this, and a plurality of types of arpeggio pattern data may be stored in advance in the ROM 4. Some data may be acquired via the communication I / F 8.

また本実施の形態では、ループカウンタは設けられているものの、ループ回数を設定し、その設定したループ回数で、切り出したアルペジオパターンデータを繰り返し用いる回数を制限できるようには構成されていないが、前記従来のアルペジエータと同様にして、切り出したアルペジオパターンデータを繰り返し用いる回数を制限できるように構成してもよい。   Further, in the present embodiment, although a loop counter is provided, it is not configured to set the number of loops and to limit the number of times that the arpeggio pattern data that is cut out is repeatedly used with the set number of loops. Similarly to the conventional arpeggiator, the number of times of repeatedly using the extracted arpeggio pattern data may be limited.

さらに本実施の形態では、アルペジオパターンデータが参照する音符情報として、ユーザがリアルタイム演奏することによって入力したもの(つまり、押鍵音)を用いるようにしたが、これに限らず、ユーザが事前に作成した演奏情報ファイルや既製の演奏情報ファイルを再生して得られたものを用いてもよい。   Furthermore, in the present embodiment, as the note information referred to by the arpeggio pattern data, the information inputted by the user by performing in real time (that is, the key pressing sound) is used. You may use what was obtained by reproducing the created performance information file or a ready-made performance information file.

また本実施の形態では、アルペジオパターンデータ中の発音パターンデータの「切り出し開始位置」、「切り出し終了位置」および「タイミングシフト量」の各指定は、画面上の矢印およびカーソルを用いて行うようにしたが、これに限らず、小節数や拍数、音符長などの数値を、たとえば前記操作子群1に含まれるテンキー(図示せず)などを用いて直接入力するようにしてもよい。さらに本実施の形態では、選択されたアルペジオパターンデータ中の発音パターンデータ(を構成する各イベントデータの時間的位置)を表示装置7上に表示するようにしたが、表示しないようにしてもよい。ただしこの場合、上記「切り出し位置」などを指定するための便宜上、アルペジオパターンデータ中の発音パターンデータの長さを数値で表示できるようにした方が好ましい。   In this embodiment, the designation of “cutout start position”, “cutout end position”, and “timing shift amount” of the pronunciation pattern data in the arpeggio pattern data is performed using an arrow and a cursor on the screen. However, the present invention is not limited to this, and numerical values such as the number of bars, the number of beats, and the note length may be directly input using, for example, a numeric keypad (not shown) included in the operator group 1. Furthermore, in the present embodiment, the pronunciation pattern data in the selected arpeggio pattern data (temporal position of each event data constituting the selected arpeggio pattern data) is displayed on the display device 7, but may not be displayed. . However, in this case, it is preferable that the length of the pronunciation pattern data in the arpeggio pattern data can be displayed numerically for the sake of convenience for designating the “cutout position” and the like.

なお、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。   A program in which a storage medium storing software program codes for realizing the functions of the above-described embodiments is supplied to a system or apparatus, and a computer (or CPU or MPU) of the system or apparatus is stored in the storage medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the code.

この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。   In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the program code and the storage medium storing the program code constitute the present invention.

プログラムコードを供給するための記憶媒体としては、たとえば、フレキシブルディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。また、通信ネットワークを介してサーバコンピュータからプログラムコードが供給されるようにしてもよい。   As a storage medium for supplying the program code, for example, a flexible disk, hard disk, magneto-optical disk, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW, DVD + RW, magnetic A tape, a non-volatile memory card, a ROM, or the like can be used. Further, the program code may be supplied from a server computer via a communication network.

また、コンピュータが読出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also the OS running on the computer based on the instruction of the program code performs the actual processing. It goes without saying that a case where the functions of the above-described embodiment are realized by performing part or all of the above and the processing thereof is included.

さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。   Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

1…操作子群(設定手段、入力手段、変更手段),3…CPU(供給手段、設定手段、生成手段、変更手段、コピー手段、シフト手段、記録手段),4…ROM(供給手段),6…外部記憶装置(供給手段、記憶手段),8…通信I/F(供給手段) DESCRIPTION OF SYMBOLS 1 ... Operator group (setting means, input means, change means), 3 ... CPU (supply means, setting means, generation means, change means, copy means, shift means, recording means), 4 ... ROM (supply means), 6 ... external storage device (supply means, storage means), 8 ... communication I / F (supply means)

Claims (6)

タイミング情報を含むイベントデータ複数からなるアルペジオパターンデータを供給する供給手段と、
該供給手段によって供給されたアルペジオパターンデータの切り出し開始位置および切り出し終了位置を設定する設定手段と、
音高情報を含む音符情報を1つ以上入力する入力手段と、
該入力手段によって入力された音符情報および前記供給手段によって供給されたアルペジオパターンデータ内のイベントデータに基づいてアルペジオデータを生成する生成手段と
を有し、
前記設定手段によって切り出し開始位置および切り出し終了位置が設定されている場合、前記生成手段は、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータを、先頭のイベントデータから順次読み出し、末尾のイベントデータを読み出すと、前記先頭のイベントデータに戻って読み出しを続け、当該読み出したイベントデータに基づいてアルペジオデータを生成することを特徴とするアルペジオ生成装置。
Supply means for supplying arpeggio pattern data comprising a plurality of event data including timing information;
Setting means for setting a cutout start position and a cutout end position of the arpeggio pattern data supplied by the supply means;
Input means for inputting one or more note information including pitch information;
Generating means for generating arpeggio data based on the note information input by the input means and the event data in the arpeggio pattern data supplied by the supplying means;
When the cutout start position and the cutout end position are set by the setting unit, the generation unit includes the event data in the supplied arpeggio pattern data from the cutout start position to the cutout end position. The event data is sequentially read from the first event data, and when the last event data is read, the reading is continued after returning to the first event data, and arpeggio data is generated based on the read event data. Arpeggio generator.
前記切り出し開始位置を時間的に遅い位置に変更する変更手段をさらに有し、
前記変更手段によって前記切り出し開始位置が変更されている場合、前記生成手段は、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータを、前記変更後の切り出し開始位置にあるイベントデータから順次読み出し、末尾のイベントデータを読み出すと、先頭のイベントデータに戻って読み出しを続け、当該読み出したイベントデータに基づいてアルペジオデータを生成することを特徴とする請求項1に記載のアルペジオ生成装置。
A change means for changing the cutout start position to a position that is later in time;
When the cutout start position is changed by the changing unit, the generation unit includes event data included from the cutout start position to the cutout end position among event data in the supplied arpeggio pattern data. , Sequentially reading from the event data at the cut start position after the change, and reading the event data at the end, returning to the event data at the beginning, continuing to read, and generating arpeggio data based on the read event data The arpeggio generator according to claim 1, wherein
タイミング情報を含むイベントデータ複数からなるアルペジオパターンデータを供給する供給手段と、
該供給手段によって供給されたアルペジオパターンデータの切り出し開始位置および切り出し終了位置を設定する設定手段と、
該設定手段によって切り出し開始位置および切り出し終了位置が設定されている場合、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータをコピーするコピー手段と、
前記コピー手段によってコピーされたイベントデータに含まれるタイミング情報の値を、前記アルペジオパターンデータの先頭から前記切り出し開始位置までの時間分、時間的に早い方向にシフトするシフト手段と、
保存の指示が検出されたことに応じて、前記シフト手段によってタイミング情報の値がシフトされたイベントデータからなる新たなアルペジオパターンデータを生成し、記憶手段に記憶させる記録手段と
を有することを特徴とするアルペジオ生成装置。
Supply means for supplying arpeggio pattern data comprising a plurality of event data including timing information;
Setting means for setting a cutout start position and a cutout end position of the arpeggio pattern data supplied by the supply means;
When the cutout start position and cutout end position are set by the setting means, event data included from the cutout start position to the cutout end position is copied from among the event data in the supplied arpeggio pattern data. Copy means;
Shift means for shifting the value of the timing information included in the event data copied by the copy means in a time earlier direction from the beginning of the arpeggio pattern data to the cut start position;
Recording means for generating new arpeggio pattern data composed of event data whose timing information value has been shifted by the shift means in response to detection of a storage instruction and storing the new arpeggio pattern data in the storage means. Arpeggio generator.
前記切り出し開始位置を時間的に遅い位置に変更する変更手段をさらに有し、
前記変更手段によって前記切り出し開始位置が変更されている場合、前記コピー手段は、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記変更後の切り出し開始位置から前記切り出し終了位置までのイベントデータをコピーし、さらに前記切り出し開始位置から前記変更後の切り出し開始位置までのイベントデータを、前記コピーに続くようにタイミング情報の値を調整しながらコピーし、
前記シフト手段は、前記コピー手段によってコピーされたイベントデータに含まれるタイミング情報の値を、前記アルペジオパターンデータの先頭から前記変更後の切り出し開始位置までの時間分、時間的に早い方向にシフトする
ことを特徴とする請求項3に記載のアルペジオ生成装置。
A change means for changing the cutout start position to a position that is later in time;
When the cutout start position is changed by the changing unit, the copy unit is configured to select event data from the cutout start position after the change to the cutout end position among event data in the supplied arpeggio pattern data. And further copying the event data from the cutout start position to the changed cutout start position while adjusting the value of the timing information so as to follow the copy,
The shift means shifts the value of the timing information included in the event data copied by the copy means in the direction earlier in time by the time from the beginning of the arpeggio pattern data to the cut start position after the change. The arpeggio generator according to claim 3.
タイミング情報を含むイベントデータ複数からなるアルペジオパターンデータを供給する供給手順と、
該供給手順によって供給されたアルペジオパターンデータの切り出し開始位置および切り出し終了位置を設定する設定手順と、
音高情報を含む音符情報を1つ以上入力する入力手段によって入力された音符情報および前記供給手順によって供給されたアルペジオパターンデータ内のイベントデータに基づいてアルペジオデータを生成する生成手順と
をコンピュータに実行させるためのプログラムであって、
前記設定手順によって切り出し開始位置および切り出し終了位置が設定されている場合、前記生成手順では、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータを、先頭のイベントデータから順次読み出し、末尾のイベントデータを読み出すと、前記先頭のイベントデータに戻って読み出しを続け、当該読み出したイベントデータに基づいてアルペジオデータを生成することを特徴とするプログラム。
Supply procedure for supplying arpeggio pattern data consisting of multiple event data including timing information;
A setting procedure for setting the cutout start position and cutout end position of the arpeggio pattern data supplied by the supply procedure;
A generation procedure for generating arpeggio data based on the note information input by input means for inputting one or more note information including pitch information and the event data in the arpeggio pattern data supplied by the supply procedure; A program for executing the program,
When the cutout start position and the cutout end position are set by the setting procedure, the generation procedure includes the event data in the supplied arpeggio pattern data from the cutout start position to the cutout end position. The event data is sequentially read from the first event data, and when the last event data is read, the reading is continued after returning to the first event data, and arpeggio data is generated based on the read event data. program.
タイミング情報を含むイベントデータ複数からなるアルペジオパターンデータを供給する供給手順と、
該供給手順によって供給されたアルペジオパターンデータの切り出し開始位置および切り出し終了位置を設定する設定手順と、
該設定手順によって切り出し開始位置および切り出し終了位置が設定されている場合、前記供給されたアルペジオパターンデータ内のイベントデータのうち、前記切り出し開始位置から前記切り出し終了位置までに含まれるイベントデータをコピーするコピー手順と、
前記コピー手順によってコピーされたイベントデータに含まれるタイミング情報の値を、前記アルペジオパターンデータの先頭から前記切り出し開始位置までの時間分、時間的に早い方向にシフトするシフト手順と、
保存の指示が検出されたことに応じて、前記シフト手順によってタイミング情報の値がシフトされたイベントデータからなる新たなアルペジオパターンデータを生成し、記憶手段に記憶させる記録手順と
をコンピュータに実行させるためのプログラム。
Supply procedure for supplying arpeggio pattern data consisting of multiple event data including timing information;
A setting procedure for setting the cutout start position and cutout end position of the arpeggio pattern data supplied by the supply procedure;
When the cutout start position and cutout end position are set by the setting procedure, event data included from the cutout start position to the cutout end position is copied from among the event data in the supplied arpeggio pattern data. Copy procedure and
A shift procedure for shifting the value of the timing information included in the event data copied by the copy procedure in a time earlier direction from the beginning of the arpeggio pattern data to the cut start position;
In response to detection of a save instruction, the computer generates new arpeggio pattern data composed of event data whose timing information value has been shifted by the shift procedure, and causes the computer to execute a recording procedure to be stored in the storage means Program for.
JP2009086320A 2009-03-31 2009-03-31 Arpeggio generating apparatus and program for realizing arpeggio generating method Expired - Fee Related JP5402167B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009086320A JP5402167B2 (en) 2009-03-31 2009-03-31 Arpeggio generating apparatus and program for realizing arpeggio generating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009086320A JP5402167B2 (en) 2009-03-31 2009-03-31 Arpeggio generating apparatus and program for realizing arpeggio generating method

Publications (2)

Publication Number Publication Date
JP2010237509A true JP2010237509A (en) 2010-10-21
JP5402167B2 JP5402167B2 (en) 2014-01-29

Family

ID=43091876

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009086320A Expired - Fee Related JP5402167B2 (en) 2009-03-31 2009-03-31 Arpeggio generating apparatus and program for realizing arpeggio generating method

Country Status (1)

Country Link
JP (1) JP5402167B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003223167A (en) * 2002-01-30 2003-08-08 Matsushita Electric Ind Co Ltd Incoming melody editing system
JP2005266392A (en) * 2004-03-19 2005-09-29 Yamaha Corp Performance data reproducing device and program
JP2008139450A (en) * 2006-11-30 2008-06-19 Yamaha Corp Automatic accompaniment generator and program for achieving automatic accompaniment generating method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003223167A (en) * 2002-01-30 2003-08-08 Matsushita Electric Ind Co Ltd Incoming melody editing system
JP2005266392A (en) * 2004-03-19 2005-09-29 Yamaha Corp Performance data reproducing device and program
JP2008139450A (en) * 2006-11-30 2008-06-19 Yamaha Corp Automatic accompaniment generator and program for achieving automatic accompaniment generating method

Also Published As

Publication number Publication date
JP5402167B2 (en) 2014-01-29

Similar Documents

Publication Publication Date Title
JP2006284817A (en) Electronic musical instrument
JP3266149B2 (en) Performance guide device
JP5228315B2 (en) Program for realizing automatic accompaniment generation apparatus and automatic accompaniment generation method
JP4770419B2 (en) Musical sound generator and program
JP5402167B2 (en) Arpeggio generating apparatus and program for realizing arpeggio generating method
JP3649014B2 (en) Performance data file playback setting control device
JP5838563B2 (en) Electronic musical instruments and programs
JP5200368B2 (en) Arpeggio generating apparatus and program for realizing arpeggio generating method
JP4270102B2 (en) Automatic performance device and program
JP3047879B2 (en) Performance guide device, performance data creation device for performance guide, and storage medium
JP3587133B2 (en) Method and apparatus for determining pronunciation length and recording medium
JP4648177B2 (en) Electronic musical instruments and computer programs
JP4315116B2 (en) Electronic music equipment
JP3885791B2 (en) Program for realizing automatic accompaniment apparatus and automatic accompaniment method
JP4449370B2 (en) Automatic accompaniment generator and program
JP4835434B2 (en) Performance pattern playback device and computer program therefor
JP4873307B2 (en) Program for realizing automatic accompaniment generation apparatus and automatic accompaniment generation method
JP4172335B2 (en) Automatic accompaniment generator and program
JP4835433B2 (en) Performance pattern playback device and computer program therefor
JP2007240776A (en) Musical performance data editing device and program
JP3925359B2 (en) Program for realizing performance effect control device and performance effect control method
JPH10198371A (en) Electronic instrument
JP2002162966A (en) Device and method for editing playing information and storage medium
JPH11202860A (en) Input editing device and storage medium
JPH10116074A (en) Device and method for automatic playing and medium which records automatic playing control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130702

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130902

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131014

LAPS Cancellation because of no payment of annual fees