JP5821170B2 - Electronic music apparatus and program - Google Patents

Electronic music apparatus and program Download PDF

Info

Publication number
JP5821170B2
JP5821170B2 JP2010194387A JP2010194387A JP5821170B2 JP 5821170 B2 JP5821170 B2 JP 5821170B2 JP 2010194387 A JP2010194387 A JP 2010194387A JP 2010194387 A JP2010194387 A JP 2010194387A JP 5821170 B2 JP5821170 B2 JP 5821170B2
Authority
JP
Japan
Prior art keywords
touch
virtual performance
performance operator
musical sound
musical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010194387A
Other languages
Japanese (ja)
Other versions
JP2012053185A (en
Inventor
明宏 三輪
明宏 三輪
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 JP2010194387A priority Critical patent/JP5821170B2/en
Publication of JP2012053185A publication Critical patent/JP2012053185A/en
Application granted granted Critical
Publication of JP5821170B2 publication Critical patent/JP5821170B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

この発明は、多点タッチ検出可能な表示器の画面上に描画された仮想の演奏操作子へのタッチ操作に応じて楽音を発音する電子音楽装置及びプログラムに関する。特に、画面上に描画された複数の仮想演奏操作子が同時にタッチ操作された場合の同時発音数が増えることに伴う音切れや描画遅れの発生を防止する技術に関する。   The present invention relates to an electronic music apparatus and a program for generating a musical sound in response to a touch operation on a virtual performance operator drawn on a display screen capable of multipoint touch detection. In particular, the present invention relates to a technique for preventing occurrence of sound interruption and drawing delay due to an increase in the number of simultaneous pronunciations when a plurality of virtual performance operators drawn on a screen are simultaneously touch-operated.

最近では、例えばスマートフォンやタブレット型コンピュータなどの小型・軽量な携帯端末機器上においても、ユーザにより選択された任意のアプリケーションソフトウェアをCPU(Central Processing Unit)などによって適宜に動作させることができるようになっている。こうしたアプリケーションソフトウェアの1つとして、タッチ検出可能な表示器の画面上に例えばピアノの鍵盤やギターの弦及びフレームなどといった自然楽器の演奏操作子を模した画像(以下、これを仮想演奏操作子と呼ぶ)を描画する処理を行うと共に、前記描画された仮想演奏操作子がユーザによって指やタッチペンなどでタッチ操作されたことを検知して、該タッチ操作された仮想演奏操作子に予め対応付けられた所定の楽音波形を生成し楽音を発音させる処理を行う音楽ソフトウェアプログラムなどがある。これを動作させることによって、ユーザは前記携帯端末機器を電子音楽装置として楽しむことができる。こうした装置に関連するものとしては、例えば下記に示す特許文献1に記載されている技術がある。   Recently, for example, even on a small and light portable terminal device such as a smartphone or a tablet computer, any application software selected by a user can be appropriately operated by a CPU (Central Processing Unit) or the like. ing. One example of such application software is an image simulating a performance instrument of a natural instrument such as a piano keyboard or a guitar string or frame on a touch-detectable display screen (hereinafter referred to as a virtual performance instrument). The virtual performance operation element that has been drawn is touched by the user with a finger, a touch pen, or the like, and is associated with the virtual performance operation element that has been touched in advance. In addition, there are music software programs for generating a predetermined musical sound waveform and generating a musical sound. By operating this, the user can enjoy the portable terminal device as an electronic music device. As a device related to such an apparatus, for example, there is a technique described in Patent Document 1 shown below.

特表2007−527061号公報Special table 2007-527061 gazette

ところで、仮想演奏操作子の描画や楽音波形の生成などをソフトウェア処理により実現する電子音楽装置では、同時に描画する仮想演奏操作子の数や生成する楽音波形の数が増せば増すだけソフトウェア処理を実行するCPUの処理負荷は当然に高まる。特に、多点タッチ検出可能なディスプレイを有する電子音楽装置においては、描画された多数の仮想演奏操作子が同時にタッチ操作されて同時発音数が多くなるつまりは並列して発音処理(楽音波形生成処理)を行わなければならない楽音数が増えてしまうと、CPUの処理能力を超え該当の処理を行うまでに待ち時間が生じてしまい、そのために楽音が途切れること(音切れ)やタッチ操作に応じた前記仮想演奏操作子の更新が追いつかなくなること(描画遅れ)などの不都合がどうしても生じ得る、という問題点があった。   By the way, in an electronic music apparatus that realizes drawing of virtual performance operators and generation of musical sound waveforms by software processing, software processing is executed as the number of virtual performance operators simultaneously drawn and the number of generated musical sound waveforms increases. Naturally, the processing load of the CPU to be increased. In particular, in an electronic music apparatus having a display capable of multi-point touch detection, a large number of drawn virtual performance operators are simultaneously touch-operated to increase the number of simultaneous pronunciations, that is, sound generation processing (musical sound waveform generation processing) in parallel. ) Increases the number of musical tones that need to be performed, a waiting time will occur before the processing exceeds the processing capacity of the CPU, and as a result, the musical sounds are interrupted (sound interruptions) and depending on the touch operation. There has been a problem that inconveniences such as the fact that the virtual performance operator cannot be updated (drawing delay) cannot be avoided.

本発明は上述の点に鑑みてなされたもので、同時に複数の仮想演奏操作子がタッチ操作されて同時発音数が増えることに伴う音切れや描画遅れの発生を防止することのできるようにした電子音楽装置及びプログラムを提供することを目的とする。   The present invention has been made in view of the above points, and is capable of preventing the occurrence of sound interruption and drawing delay caused by simultaneous touch operation of a plurality of virtual performance operators to increase the number of simultaneous pronunciations. An object is to provide an electronic music apparatus and a program.

本発明に係る電子音楽装置は、プロセッサによる複数の処理過程を含んでなる所定の楽音生成ソフトウェアの実行に伴い生成される楽音波形に基づいて楽音を発生する電子音楽装置であって、画面上の複数位置へのタッチ操作を同時に検出することが可能な表示装置の前記画面上に1乃至複数の仮想演奏操作子を描画する描画手段と、前記画面上に描画された仮想演奏操作子への1乃至複数のタッチ操作の検出に応じて該操作された仮想演奏操作子を特定し、前記特定された仮想演奏操作子に対応付けられた所定の楽音波形を生成するとともに、前記描画手段に対して前記特定された仮想演奏操作子の表示態様を変化させるよう描画制御を指示する楽音生成手段と、前記タッチ操作の検出時に前記楽音生成手段における楽音波形生成に係る処理負荷を計測する負荷計測手段と、前記計測した処理負荷に応じて有効とする同時タッチ数の制限値の増減を行い、前記検出される1乃至複数のタッチ操作のうち前記増減された同時タッチ数の制限値までは前記楽音波形生成及び前記描画制の指示を行い、また、前記制限値を超えるタッチ操作に対しては前記描画制御の指示を行わないよう前記楽音生成手段に対して指示する負荷制御手段とを備える。
An electronic music apparatus according to the present invention is an electronic music apparatus that generates a musical sound based on a musical sound waveform generated in accordance with execution of predetermined musical sound generation software including a plurality of processing steps by a processor. A drawing means for drawing one or more virtual performance operators on the screen of the display device capable of simultaneously detecting touch operations at a plurality of positions, and one for the virtual performance operator drawn on the screen. In response to detection of a plurality of touch operations, the operated virtual performance operator is identified, a predetermined musical sound waveform associated with the identified virtual performance operator is generated, and the drawing means a music generation means for instructing a drawing control to vary the display mode of the identified virtual performance operator, processing according to the musical tone waveform generation in the tone generating means upon detection of said touch operation A load measuring unit that measures a load, and a limit value of the number of simultaneous touches that are valid according to the measured processing load are increased and decreased, and the increased or decreased number of simultaneous touches among the detected one or more touch operations. the up limit value after the generation and the drawing Esei control instructions of the musical tone waveform, also with respect to the musical tone generating means so as not to perform the instruction for the drawing control for touch operation exceeds the limit value Load control means for instructing.

この発明によると、画面上に描画された仮想演奏操作子への1乃至複数のタッチ操作の検出時に、該操作された仮想演奏操作子を特定し、前記特定された仮想演奏操作子に対応付けられた所定の楽音波形を生成するとともに、描画手段に対して前記特定された仮想演奏操作子の表示態様を変化させるよう描画制御を指示する楽音生成手段の楽音波形生成に係る処理負荷を計測する。そして、前記計測した処理負荷に応じて有効とする同時タッチ数の制限値の増減を行い、前記検出される1乃至複数のタッチ操作のうち前記増減された同時タッチ数の制限値までの楽音波形を生成及び描画を制御するよう楽音生成手段に対して指示する。このように、多数の仮想演奏操作子へのタッチ操作が同時に行われた場合にそのときの楽音波形生成に係る処理負荷を計測し、該計測した処理負荷に応じて有効とする同時タッチ数の制限値の増減を行い、前記検出される1乃至複数のタッチ操作のうち前記増減された同時タッチ数の制限値までは前記楽音波形生成及び前記描画制の指示を行い、また、前記制限値を超えるタッチ操作に対しては前記描画制御の指示を行わないようにしたことにより、楽音生成手段に過度な処理負荷をかけることなく楽音波形生成や描画制御を行うことができる。そのため、多数の仮想演奏操作子へのタッチ操作が同時に行われたとしても過度な処理負荷がかかるまでに同時発音数が増えることがないので、従来のような同時発音数が増えることに伴う音切れや描画遅れは生じ得ない。また、制限値の範囲内のタッチ操作に対しては前記仮想演奏操作子の表示態様の変化を行い、該制限値を超えるタッチ操作に対しては仮想演奏操作子の表示態様の変化を行わないので、ユーザは、どの仮想演奏操作子の操作が無効だったかを容易に把握することができる。
According to the present invention, when one or a plurality of touch operations to the virtual performance operator drawn on the screen is detected, the operated virtual performance operator is identified and associated with the identified virtual performance operator. A predetermined musical tone waveform is generated, and the processing load related to the musical tone waveform generation of the musical sound generation means that instructs the drawing means to change the display mode of the specified virtual performance operator is measured. . Then, the limit value of the number of simultaneous touches that is effective according to the measured processing load is increased or decreased, and the musical tone waveform from the detected one or more touch operations to the limit value of the increased or decreased number of simultaneous touches. Is instructed to the tone generation means to control generation and drawing. In this way, when touch operations are performed simultaneously on a large number of virtual performance operators, the processing load related to the musical sound waveform generation at that time is measured, and the number of simultaneous touches that are effective according to the measured processing load is determined. perform increase or decrease of the limit value, until said detected the first to the increased or decreased by simultaneous touch number of the limit values of the plurality of touch operation performed to generate and the drawing Esei control instructions of the musical tone waveform, also, the By not performing the drawing control instruction for touch operations exceeding the limit value, it is possible to perform tone waveform generation and drawing control without imposing excessive processing load on the tone generation means. For this reason, even if touch operations are performed simultaneously on a large number of virtual performance operators, the number of simultaneous pronunciations does not increase until an excessive processing load is applied. Cutting and drawing delays cannot occur. In addition, the display mode of the virtual performance operator is changed for a touch operation within the limit value range, and the display mode of the virtual performance operator is not changed for a touch operation exceeding the limit value. Therefore, the user can easily grasp which virtual performance operator is invalid.

本発明は装置の発明として構成し実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはDSP等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記憶媒体の形態で実施することもできる。   The present invention can be constructed and implemented not only as a device invention but also as a method invention. Further, the present invention can be implemented in the form of a program of a processor such as a computer or a DSP, or can be implemented in the form of a storage medium storing such a program.

この発明によれば、多数の仮想演奏操作子へのタッチ操作が同時に行われたとしても、全てのタッチ操作に応じて楽音波形を生成及び描画を制御することなく楽音波形生成に係る処理負荷に応じた一部のタッチ操作のみに応じて楽音波形を生成及び描画を制御するようにしたので、画面上に描画された複数の仮想演奏操作子が同時にタッチ操作された場合の同時発音数が増えることに伴う音切れや描画遅れなどの発生を防止することができる、という効果を奏する。   According to the present invention, even when touch operations are simultaneously performed on a large number of virtual performance operators, the sound waveform is generated according to all touch operations and the processing load related to the sound waveform generation is controlled without controlling the drawing. Since the sound waveform is generated and drawn according to only a part of the touch operations, the number of simultaneous pronunciations increases when multiple virtual performance operators drawn on the screen are touched simultaneously. There is an effect that it is possible to prevent the occurrence of sound interruption, drawing delay, and the like.

この発明に係る電子音楽装置の全体構成の一実施例を示したハード構成ブロック図である。1 is a block diagram of a hardware configuration showing an example of the overall configuration of an electronic music apparatus according to the present invention. 描画機能及び楽音生成機能を説明するための機能ブロック図である。It is a functional block diagram for demonstrating a drawing function and a musical sound production | generation function. 負荷制御部の機能を実現する処理の一実施例を示すフローチャートである。It is a flowchart which shows one Example of the process which implement | achieves the function of a load control part. タッチ開始検出処理の一実施例を示すフローチャートである。It is a flowchart which shows one Example of a touch start detection process. 座標リストの一実施例を示す概念図である。It is a conceptual diagram which shows one Example of a coordinate list. タッチ移動検出処理の一実施例を示すフローチャートである。It is a flowchart which shows one Example of a touch movement detection process. タッチ終了検出処理の一実施例を示すフローチャートである。It is a flowchart which shows one Example of a touch completion | finish detection process. ソフトウェア音源部の機能を実現する処理の一実施例を示すフローチャートである。It is a flowchart which shows one Example of the process which implement | achieves the function of a software sound source part.

以下、この発明の実施の形態を添付図面に従って詳細に説明する。   Embodiments of the present invention will be described below in detail with reference to the accompanying drawings.

図1は、この発明に係る電子音楽装置の全体構成の一実施例を示したハード構成ブロック図である。本実施例に示す電子音楽装置は例えばタブレット型コンピュータであって、CPU1(Central Processing Unit)、リードオンリメモリ(ROM)2、ランダムアクセスメモリ(RAM)3からなるマイクロコンピュータによって制御される。CPU1は、この電子音楽装置全体の動作を制御するものである。このCPU1に対して、データ及びアドレスバス1Dを介してROM2、RAM3、検出回路4,5、表示回路6、サウンドシステム7、記憶装置8、通信インタフェース(I/F)9がそれぞれ接続されている。   FIG. 1 is a hardware configuration block diagram showing an embodiment of the overall configuration of an electronic music apparatus according to the present invention. The electronic music apparatus shown in this embodiment is a tablet computer, for example, and is controlled by a microcomputer comprising a CPU 1 (Central Processing Unit), a read only memory (ROM) 2 and a random access memory (RAM) 3. The CPU 1 controls the operation of the entire electronic music apparatus. ROM 2, RAM 3, detection circuits 4 and 5, display circuit 6, sound system 7, storage device 8, and communication interface (I / F) 9 are connected to the CPU 1 via a data and address bus 1D. .

ROM2は、CPU1により実行あるいは参照される各種制御プログラムや各種データ等を格納する。RAM3は、CPU1が所定のプログラムを実行する際に発生する各種データなどを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを一時的に記憶するメモリ等として使用される。RAM3の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、テンポラリメモリなどとして利用される。   The ROM 2 stores various control programs executed by or referred to by the CPU 1, various data, and the like. The RAM 3 is used as a working memory for temporarily storing various data generated when the CPU 1 executes a predetermined program, or as a memory for temporarily storing a currently executing program and related data. The A predetermined address area of the RAM 3 is assigned to each function, and is used as a register, a flag, a table, a temporary memory, or the like.

設定操作子(スイッチ等)4Aは、例えばディスプレイ6Aの周囲に配置されており該ディスプレイ6Aに表示された各種画面(図示せず)上における所定の対応位置に表示されている表示内容に従って実現可能な制御機能が変更される1乃至複数の汎用スイッチであって、より具体的には例えば音高、音色、効果等の楽音制御に関する各種設定(楽音制御パラメータなど)を行うスイッチ類や自動伴奏の開始/停止を指示するボタン類などの各種の操作子として機能し得る。勿論、設定操作子4Aは上記したものに代えてあるいは加えて、数値データ入力用のテンキーや文字データ入力用のキーボード等の各種操作子を含んでいてもよい。検出回路4は、上記設定操作子4Aの操作状態を検出し、その操作状態に応じたスイッチ情報等をデータ及びアドレスバス1Dを介してCPU1に出力する。   The setting operation element (switch or the like) 4A is arranged around the display 6A, for example, and can be realized according to display contents displayed at predetermined corresponding positions on various screens (not shown) displayed on the display 6A. 1 to a plurality of general-purpose switches whose control functions are changed. More specifically, for example, switches for performing various settings (musical tone control parameters, etc.) relating to musical tone control such as pitch, tone, and effect, and automatic accompaniment It can function as various operators such as buttons for instructing start / stop. Of course, the setting operator 4A may include various operators such as a numeric keypad for inputting numeric data and a keyboard for inputting character data instead of or in addition to the above. The detection circuit 4 detects the operation state of the setting operation element 4A, and outputs switch information and the like corresponding to the operation state to the CPU 1 via the data and address bus 1D.

検出回路5は、多点検出型のタッチパネル5Aにより検出されるユーザによってタッチされたディスプレイ6A上の複数の位置(座標)をデータ及びアドレスバス1Dを介してCPU1に出力する。表示回路6は例えば液晶表示パネル(LCD)等から構成されるディスプレイ6A上に、例えばピアノの鍵盤やギターの弦及びフレームあるいはドラムセットなどといった自然楽器の演奏操作子やテノリオン(商標)のようなマトリックス型演奏操作子を模した仮想演奏操作子を表示する。すなわち、上記したタッチパネル5A及び検出回路5とディスプレイ6A及び表示回路6とは、画面上において行われた複数のユーザタッチ操作を同時に検出(認識)する検知機能を有するマルチタッチ機能つき表示装置を構成している。なお、ディスプレイ6A上に、楽音制御に関わる各種設定(楽音制御パラメータなど)の設定状況、ROM2や記憶装置8に記憶されている各種データあるいはCPU1の制御状態などを表示してよいことは言うまでもない。   The detection circuit 5 outputs a plurality of positions (coordinates) on the display 6A touched by the user detected by the multipoint detection type touch panel 5A to the CPU 1 via the data and address bus 1D. The display circuit 6 is provided on a display 6A composed of, for example, a liquid crystal display panel (LCD) or the like, for example, a musical instrument performance operator such as a piano keyboard, a guitar string and frame, or a drum set, or Tenorion (trademark). A virtual performance operator imitating a matrix type performance operator is displayed. That is, the touch panel 5A and the detection circuit 5, the display 6A, and the display circuit 6 described above constitute a display device with a multi-touch function that has a detection function for simultaneously detecting (recognizing) a plurality of user touch operations performed on the screen. doing. Needless to say, the setting status of various settings (musical sound control parameters and the like) related to the musical tone control, various data stored in the ROM 2 and the storage device 8, or the control state of the CPU 1 may be displayed on the display 6A. .

サウンドシステム7AはD/A変換器やアンプさらにはスピーカなどを含んでなり、CPU1によるソフトウェア処理の実行によって生成される楽音波形データに基づき楽音を発音する。なお、CPU1による楽音波形データの生成は、例えばFM、PCM、物理モデル、フォルマント合成等の各種楽音合成方式のいずれを採用してもよい。また、専用のDSP(Digital Signal Processor)によるソフトウェア処理の実行によって楽音波形データを生成するようにしてもよい。   The sound system 7A includes a D / A converter, an amplifier, a speaker, and the like, and generates a musical sound based on musical sound waveform data generated by execution of software processing by the CPU 1. Note that generation of musical sound waveform data by the CPU 1 may employ any of various musical sound synthesis methods such as FM, PCM, physical model, and formant synthesis. The musical sound waveform data may be generated by executing software processing by a dedicated DSP (Digital Signal Processor).

記憶装置8は、仮想演奏操作子に関する画像情報や各種音色の波形データ(図示せず)などの各種データの他、CPU1が実行する各種制御プログラム等を記憶する。なお、上述したROM2に制御プログラムが記憶されていない場合、この記憶装置8(例えばハードディスク)に制御プログラムを記憶させておき、それをRAM3に読み込むことにより、ROM2に制御プログラムを記憶している場合と同様の動作をCPU1に実行させることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、記憶装置8はハードディスク(HD)に限られず、フレキシブルディスク(FD)、コンパクトディスク(CD‐ROM・CD‐RAM)、光磁気ディスク(MO)、あるいはDVD(Digital Versatile Disk)等の様々な形態の記憶媒体を利用する記憶装置であればどのようなものであってもよい。あるいは、フラッシュメモリなどの半導体メモリであってもよい。   The storage device 8 stores various control programs executed by the CPU 1 in addition to various data such as image information related to the virtual performance operator and waveform data (not shown) of various timbres. When the control program is not stored in the ROM 2 described above, the control program is stored in the storage device 8 (for example, a hard disk) and is read into the RAM 3 to store the control program in the ROM 2. It is possible to cause the CPU 1 to execute the same operation as in FIG. In this way, control programs can be easily added and upgraded. The storage device 8 is not limited to a hard disk (HD), but may be a flexible disk (FD), a compact disk (CD-ROM / CD-RAM), a magneto-optical disk (MO), or a DVD (Digital Versatile Disk). Any storage device may be used as long as it uses a storage medium in the form. Alternatively, a semiconductor memory such as a flash memory may be used.

通信インタフェース(I/F)9は、当該装置と図示しない外部機器との間で制御プログラムや各種データなどを送受信するためのインタフェースである。この通信インタフェース9は、例えばMIDIなどの音楽専用有線インタフェース,USBやIEEE1394などの汎用近距離有線インタフェース,Ethernet(登録商標)などの汎用ネットワークインタフェース,無線LANやBluetooth(商標)などの汎用近距離無線インタフェース等を1乃至複数具えていてよい。   A communication interface (I / F) 9 is an interface for transmitting and receiving a control program and various data between the apparatus and an external device (not shown). The communication interface 9 is, for example, a dedicated wired interface for music such as MIDI, a general-purpose short-distance wired interface such as USB or IEEE1394, a general-purpose network interface such as Ethernet (registered trademark), or a general-purpose short-range wireless such as wireless LAN or Bluetooth (trademark). One or more interfaces may be provided.

なお、本発明に係る電子音楽装置はタブレット型コンピュータに限らず、電子楽器、パーソナルコンピュータ、携帯電話等の携帯通信端末、あるいはゲーム装置などのどのような装置・機器の形態であってもよい。携帯通信端末の場合、端末のみで所定の機能が完結している場合に限らず、機能の一部をサーバ側に持たせ、端末とサーバとからなるシステム全体として所定の機能を実現するようにしてもよい。電子楽器の場合、楽音の音高を選択するための複数の鍵を備えた例えば鍵盤等の演奏専用の操作子を物理的に有していてよい。勿論、こうした操作子は鍵盤楽器の形態に限らず、弦楽器や管楽器あるいは打楽器等どのようなタイプの形態でもよい。   The electronic music apparatus according to the present invention is not limited to a tablet computer, and may be in the form of any device / equipment such as an electronic musical instrument, a personal computer, a mobile communication terminal such as a mobile phone, or a game device. In the case of a mobile communication terminal, not only the case where a predetermined function is completed with only the terminal, but also a part of the function is provided on the server side so that the predetermined function is realized as a whole system including the terminal and the server. May be. In the case of an electronic musical instrument, it may physically have an operator dedicated to performance such as a keyboard provided with a plurality of keys for selecting the pitch of a musical tone. Of course, such an operator is not limited to a keyboard instrument, and may be any type of instrument such as a stringed instrument, a wind instrument, or a percussion instrument.

本発明に係る電子音楽装置では、CPU1によるソフトウェア処理の実行に伴い、主としてマルチタッチ機能つき表示装置上に仮想演奏操作子を描画することや、前記描画された仮想演奏操作子へのユーザによるタッチ操作に応じて所定の楽音波形を生成し楽音を発音することを実現している。そこで、CPU1でのソフトウェア処理の実行に伴い実現される各種機能のうち、上記描画機能及び楽音生成機能について図2を用いて説明する。図2は、描画機能及び楽音生成機能を説明するための機能ブロック図である。図2において、図中の矢印は信号の流れを表す。   In the electronic music apparatus according to the present invention, with the execution of software processing by the CPU 1, a virtual performance operator is mainly drawn on a display device with a multi-touch function, and a user touches the drawn virtual performance operator. According to the operation, a predetermined musical sound waveform is generated and a musical sound is generated. Therefore, the drawing function and the tone generation function among various functions realized by the execution of software processing in the CPU 1 will be described with reference to FIG. FIG. 2 is a functional block diagram for explaining the drawing function and the tone generation function. In FIG. 2, the arrows in the figure represent the flow of signals.

演奏操作子描画部Aは、鍵盤や打楽器あるいは弦楽器等の自然楽器の演奏操作子を模した画像や、テノリオン(商標)のようなマトリックス型演奏操作子の画像などの仮想演奏操作子を、マルチタッチ検出機能つき表示装置B(以下、単にマルチタッチ表示装置と呼ぶ)に描画する。勿論、仮想演奏操作子を描画するだけでなく、動作モードや楽音制御パラメータ等の設定を行う例えばスライダーなどの設定操作子の画像(ここでは、これを仮想設定操作子と呼ぶ)や設定値を表す文字等を表示するようにしてもよい。   The performance operator drawing unit A displays virtual performance operators such as images simulating performance operators of natural instruments such as keyboards, percussion instruments, and string instruments, and images of matrix-type performance operators such as Tenorion (trademark). Drawing is performed on the display device B with a touch detection function (hereinafter simply referred to as a multi-touch display device). Of course, not only drawing the virtual performance controls, but also setting images such as sliders (for example, sliders, etc.) and setting values for setting operation modes, musical tone control parameters, and the like. You may make it display the character etc. to represent.

仮想演奏操作子や仮想設定操作子等が描画されるマルチタッチ表示装置Bは、上述したようにディスプレイ6Aと該ディスプレイ6A上の複数の位置を同時に検出可能な多点検出型のタッチパネル5A等を備える。タッチパネル5Aのタッチ検出方法は公知の任意の方式を採用可能であり、例えば静電容量方式を採用することができる。ユーザによるディスプレイ6A上へのタッチ開始、タッチ移動(タッチしたままディスプレイ6A上を移動)、ディスプレイ6A上へのタッチ終了をタッチパネル5Aにより検出されたときには、その時点のカレント座標(Xn,Yn)と前回検出したときの旧座標(Xn,Yn)とを座標情報として負荷制御部Eに対して通知する。ここで、前記座標(Xn,Yn)における記号「n」は、1以上の同時検出可能なタッチ数の最大限度を示す整数(例えば10)である。なお、ディスプレイ6Aは液晶に限らず、電子ペーパー等どのような方式であってもよい。   As described above, the multi-touch display device B on which virtual performance operators, virtual setting operators, and the like are drawn includes the display 6A and the multi-point detection type touch panel 5A that can simultaneously detect a plurality of positions on the display 6A. Prepare. As the touch detection method of the touch panel 5A, any known method can be adopted, and for example, a capacitance method can be adopted. When the touch start on the display 6A by the user, touch movement (moving on the display 6A while touching), or touch end on the display 6A is detected by the touch panel 5A, the current coordinates (Xn, Yn) at that time are detected. The old coordinates (Xn, Yn) at the previous detection are notified to the load control unit E as coordinate information. Here, the symbol “n” in the coordinate (Xn, Yn) is an integer (for example, 10) indicating the maximum limit of the number of touches that can be simultaneously detected of 1 or more. The display 6A is not limited to liquid crystal, and may be any system such as electronic paper.

負荷制御部Eは、マルチタッチ表示装置Bからタッチ操作の通知(より具体的には、タッチ開始、タッチ移動、タッチ終了の各イベント及び各イベントに応じた座標情報)を受け取り、その座標がディスプレイ6A上に描画された仮想演奏操作子や仮想設定操作子の描画位置に対応するかを演奏操作子描画部Aに問い合わせる。問い合わせ結果に基づいて、ユーザによるタッチ操作が仮想演奏操作子のオン操作やオフ操作あるいは仮想設定操作子の操作に該当するかを判断し、これらの操作に該当すると判断した場合には楽器コア部Dへとその旨を通知する。例えば「タッチ開始」が仮想演奏操作子上であれば「仮想演奏操作子オン」操作、「タッチ移動」によりある仮想演奏操作子上から外れた場合は「仮想演奏操作子オフ」操作、「タッチ移動」により仮想演奏操作子以外の場所から仮想演奏操作子上に移動した場合は「仮想演奏操作子オン」操作、「タッチ終了」が仮想演奏操作子上であれば「仮想演奏操作子オフ」操作に該当するなどと判断する。ただし、負荷計測部Hから通知されるCPU1の負荷状態によっては、マルチタッチ表示装置Bからのタッチ操作の通知をあたかも無視するかの如くに、上記した楽器コア部Dへの通知を行わない場合がある(詳しくは後述する)。   The load control unit E receives notification of a touch operation from the multi-touch display device B (more specifically, each event of touch start, touch movement, and touch end and coordinate information corresponding to each event), and the coordinates are displayed on the display. The performance operator drawing unit A is inquired as to whether the virtual performance operator or virtual setting operator drawn on 6A corresponds to the drawing position. Based on the inquiry result, it is determined whether the touch operation by the user corresponds to the on / off operation of the virtual performance operator or the operation of the virtual setting operator, and if it is determined to correspond to these operations, the instrument core unit Notify D to that effect. For example, if “touch start” is on the virtual performance controller, the “virtual performance controller is on” operation. If the “touch start” is off the virtual performance controller by “touch movement”, the “virtual performance controller is off” operation. When moving to a virtual performance control from a location other than the virtual performance control by “move”, “virtual performance control on” is operated. When “touch end” is on the virtual performance control, “virtual performance control is off”. Judged to be applicable to the operation. However, depending on the load state of the CPU 1 notified from the load measuring unit H, the notification to the musical instrument core unit D is not performed as if the notification of the touch operation from the multi-touch display device B is ignored. (Details will be described later).

楽器コア部D(楽音生成手段に該当)は、負荷制御部Eから通知される仮想演奏操作子のオン/オフ操作イベントや仮想設定操作子の操作イベントなどの各操作情報に応じてタッチ操作された前記各操作子を特定し、該特定した操作子に応じてソフトウェア音源部Gへ楽音の発音/消音の指示(ノートオン/ノートオフイベントの発生)や楽音制御パラメータの設定指示を行うとともに、演奏操作子描画部Aへと各操作子の操作情報を通知する。演奏操作子描画部Aでは操作情報の通知を受けて、仮想演奏操作子や仮想設定操作子の表示態様を変化させる描画を行ったり(例えば、仮想演奏操作子が鍵盤型の場合にはあたかも鍵盤が弾かれたかのように影をつけるなど)、楽音制御パラメータ等の設定値を変化させたりすることで、ユーザに操作状態や設定状態を報知する。   The musical instrument core part D (corresponding to a musical tone generating means) is touch-operated in accordance with each operation information such as an on / off operation event of a virtual performance operator and an operation event of a virtual setting operator notified from the load control unit E. In addition, each of the operators is specified, and according to the specified operator, instructions for sound generation / mute (occurrence of note-on / note-off event) and instructions for setting a sound control parameter are given to the software tone generator G. The performance operator drawing section A is notified of the operation information of each operator. In response to the notification of the operation information, the performance operator drawing unit A performs drawing for changing the display mode of the virtual performance operator and the virtual setting operator (for example, as if the virtual performance operator is a keyboard type, the keyboard By changing the setting value of the musical tone control parameter or the like, the operation state and the setting state are notified to the user.

自動演奏部Cは、自動演奏(ソング)データを記録及び/又は再生したり、自動伴奏や自動リズムパターンを記録及び/又は再生したりすることができる。自動演奏データや自動伴奏、自動リズムパターンデータの再生に伴い、ユーザによるタッチ操作とは別途に発音のオンイベントやオフイベント等が楽器コア部Dに通知される。この場合、楽器コア部Dは、自動演奏部Cから通知されるオン/オフイベント等に応じてソフトウェア音源部Gへ楽音の発音/消音の指示などを行う。また、自動演奏部Cから通知されるオン/オフイベントを必要に応じて演奏操作子描画部Aへと通知し、自動演奏等に基づく画像描画が演奏操作子描画部Aによりなされるようにしてもよい。   The automatic performance section C can record and / or reproduce automatic performance (song) data, and can record and / or reproduce automatic accompaniment and automatic rhythm patterns. Along with the reproduction of the automatic performance data, automatic accompaniment, and automatic rhythm pattern data, the musical instrument core unit D is notified of a sounding on event, an off event, etc. separately from the touch operation by the user. In this case, the musical instrument core unit D instructs the software sound source unit G to generate / mute music according to an on / off event or the like notified from the automatic performance unit C. Further, an on / off event notified from the automatic performance unit C is notified to the performance operator drawing unit A as necessary, and an image drawing based on the automatic performance or the like is performed by the performance operator drawing unit A. Also good.

ソフトウェア音源部G(前記楽器コア部Dと共に楽音生成手段に該当)は、楽器コア部Dから通知される楽音の発音/消音の指示や楽音制御パラメータの設定指示などの各種イベントに基づいて、楽音波形データを生成する。この楽音波形データの生成処理は周期的に行われる。例えば、動作周波数が44100ヘルツ、フレームサイズ(1回の処理で生成する楽音波形サンプル数)が1024とすると前記楽音波形生成周期は「約23.2ms(=1024×1000/44100)」となり、約23.2ms毎に1フレーム分の楽音波形データの生成処理が行われる。   The software tone generator G (corresponding to the musical sound generating means together with the musical instrument core D) is configured to generate musical sounds based on various events such as musical sound generation / mute instructions and musical sound control parameter setting instructions notified from the musical instrument core D. Generate waveform data. This musical sound waveform data generation process is performed periodically. For example, if the operating frequency is 44100 Hz and the frame size (number of musical sound waveform samples generated in one process) is 1024, the musical sound waveform generation cycle is “about 23.2 ms (= 1024 × 1000/44100)”, which is about 23.2. Generation processing of musical sound waveform data for one frame is performed every ms.

1フレーム分の楽音波形データを生成してこれに基づき楽音を発音させるのに要する時間は、同時発音数や楽音制御パラメータの設定状態などによって変化する。例えば、同時発音数が16音であって楽音制御パラメータが第1の所定の状態であると仮定した場合には12msで生成ないし発音させることができるし、同時発音数が24音であって楽音制御パラメータが第2の所定の状態(例えば、前記第1の所定の状態よりも制御対象のパラメータ数が多く複雑な波形処理が必要とされる状態)であると仮定した場合には20msで生成ないし発音させることができる、といった具合である(ただし、ここに記載した数値は単なる例示である)。   The time required for generating musical sound waveform data for one frame and generating a musical sound based on this data varies depending on the number of simultaneous sound generations, the setting state of musical sound control parameters, and the like. For example, if it is assumed that the number of simultaneous pronunciations is 16 and the musical tone control parameter is in the first predetermined state, it can be generated or pronounced in 12 ms. If the control parameter is assumed to be in a second predetermined state (for example, a state in which the number of parameters to be controlled is larger than that of the first predetermined state and complicated waveform processing is required), the control parameter is generated in 20 ms. Or can be pronounced (however, the numerical values described here are merely examples).

負荷計測部Hは、上記した楽音波形データの生成ないしこれに基づき楽音を発音させるのにかかる時間を計測し、以下に示す数1に基づきCPU1における楽音波形生成に係る処理負荷(以下、単にCPU負荷と呼ぶ)を求める。
(数1)
CPU負荷=1フレーム分の楽音波形データの生成ないし発音に要した時間
/1フレーム分の楽音波形データを生成する周期
具体的には、例えば12msで生成ないし発音できた場合のCPU負荷は「約52%(=12×100/23.2)」となり、17msで生成ないし発音できた場合のCPU負荷は「約73%(=17×100/23.2)」となる。こうして求められるCPU負荷は、負荷制御部Eへと通知される。
The load measuring unit H measures the time taken to generate a musical sound based on the generation of the musical sound waveform data described above or based on this, and the processing load related to the musical sound waveform generation in the CPU 1 (hereinafter simply referred to as CPU) based on the following equation (1). Called load).
(Equation 1)
CPU load = time required to generate or sound musical tone waveform data for one frame
/ Period for generating musical sound waveform data for one frame Specifically, for example, the CPU load when generating or sounding in 12 ms is “about 52% (= 12 × 100 / 23.2)”, and generating or sounding in 17 ms. If it is possible, the CPU load is “approximately 73% (= 17 × 100 / 23.2)”. The CPU load thus obtained is notified to the load control unit E.

ところで、CPU負荷が高いと新たなタッチ操作に応じた更なる楽音波形生成や仮想演奏操作子の描画などが追いつかなくなる可能性があり、最悪の場合には音切れや描画遅れなどが発生し得る。特に電子音楽装置が専用の音楽ソフトウェアプログラムのみを動作する専用機器でなく各種のアプリケーションソフトウェアを並列動作可能な汎用機器であり、楽音波形生成や仮想演奏操作子の描画以外にも別のアプリケーションソフトウェアを動作させてその他の処理を同時に実行させているような場合には、なおさら音切れや描画のもたつきなどが顕著に現われる。そこで、本発明に係る電子音楽装置では上記した音切れや描画遅れなどの発生を防止するために、CPU負荷に応じて楽音波形生成及び仮想演奏操作子の描画にかかる負荷を減らす制御を行うようにしている。   By the way, if the CPU load is high, there is a possibility that further musical tone waveform generation according to a new touch operation or drawing of a virtual performance operator may not be able to catch up, and in the worst case, sound interruption or drawing delay may occur. . In particular, the electronic music device is not a dedicated device that operates only the dedicated music software program, but a general-purpose device capable of operating various application software in parallel. Other application software is available in addition to generating sound waveforms and drawing virtual performance controls. When the system is operated and other processes are executed at the same time, the sound is cut off and the drawing is more prominent. Therefore, in the electronic music apparatus according to the present invention, in order to prevent the occurrence of sound interruption and drawing delay as described above, control is performed so as to reduce the load on the generation of the musical sound waveform and the drawing of the virtual performance operator in accordance with the CPU load. I have to.

具体的には、負荷制御部Eは負荷計測部Hから通知されるCPU負荷に応じて、マルチタッチ表示装置Bから通知される同時タッチ数をタッチ数制限値に従って増減して楽器コア部Dに操作情報を通知する。例えば、CPU負荷が50%のときは5個までのタッチを有効とし、60%のときは3個まで、70%のときは2個までのタッチを有効とするなど、CPU負荷が高い場合には有効とする同時タッチ数を減らし、CPU負荷が低い場合には有効とする同時タッチ数を増やす。こうしたCPU負荷に応じた同時タッチ数の制限は予め用意しておいたテーブル(図示せず)を使って設定してもよいし、こうしたテーブルの特性を表した計算式(図示せず)で求めるようにしてもよい。   Specifically, the load control unit E increases or decreases the number of simultaneous touches notified from the multi-touch display device B according to the touch number limit value in accordance with the CPU load notified from the load measurement unit H, and increases the number of simultaneous touches to the musical instrument core unit D. Notify operation information. For example, when the CPU load is high, up to 5 touches are valid when the CPU load is 50%, up to 3 touches when the CPU load is 60%, and up to 2 touches when the CPU load is 70%. Decreases the number of effective simultaneous touches, and increases the number of effective simultaneous touches when the CPU load is low. Such a limit on the number of simultaneous touches depending on the CPU load may be set using a table (not shown) prepared in advance, or obtained by a calculation formula (not shown) representing the characteristics of such a table. You may do it.

ここで、CPU負荷に応じた同時タッチ数の増減について具体例を用いて説明する。例えば、自動演奏部Cにて自動演奏データが再生されており、同時に10音分の楽音波形データが既に再生されている状態であると仮定する。このときのCPU負荷を40%であるとすると、前記タッチ数制限値は有効とする同時タッチ数を5個までとする。そしてユーザが5本の指それぞれを使って5つの異なる仮想演奏操作子(例えば鍵盤)をそれぞれタッチ操作したとすると、楽器コア部Dへは5つの全てのノートオンが通知され、ソフトウェア音源部Gにて新たに5音の楽音波形データが生成されて楽音が発音されると共に、演奏操作子描画部Aにて操作された仮想演奏操作子の表示態様が変更される。こうして新たな5音分を加えた合計15音分の楽音波形データが生成される場合、このときのCPU負荷は60%となる。5本の指を前記操作した仮想演奏操作子から離すと、楽器コア部Dへは5つのノートオフが通知されて該当する5音分の楽音が消音されると共に、仮想演奏操作子の表示態様が元に戻される。すると、CPU負荷は10音分の楽音波形データが再生されている状態のときの40%に減少する。   Here, the increase / decrease in the number of simultaneous touches according to the CPU load will be described using a specific example. For example, it is assumed that automatic performance data is being reproduced in the automatic performance section C, and at the same time, musical sound waveform data for 10 sounds has already been reproduced. Assuming that the CPU load at this time is 40%, the touch number limit value sets the number of effective simultaneous touches up to five. If the user touches five different virtual performance operators (for example, a keyboard) using five fingers, the instrument core unit D is notified of all five note-ons, and the software tone generator unit G Then, musical tone waveform data of five tones is newly generated and a tone is generated, and the display mode of the virtual performance operator operated by the performance operator drawing unit A is changed. When musical tone waveform data for a total of 15 tones including 5 new tones is thus generated, the CPU load at this time is 60%. When five fingers are released from the operated virtual performance operator, five note-offs are notified to the musical instrument core part D, and the corresponding five musical tones are muted, and the virtual performance operator is displayed. Is restored. Then, the CPU load is reduced to 40% when the musical sound waveform data for 10 sounds is being reproduced.

自動演奏部Cで再生される楽音数がさらに増え、例えば20音分の楽音波形データが同時に再生されている状態になって、このときのCPU負荷は60%であるとする。この場合にはタッチ数制限値に基づき例えば同時タッチ数が3個に制限されるので、仮にユーザが5本の指それぞれを使って5つの異なる仮想演奏操作子をそれぞれタッチ操作したとしても3つの仮想演奏操作子に対するタッチ操作しか有効とされない。したがって、楽器コア部Dへは3つのノートオンのみが通知され、ソフトウェア音源部Gにて新たに追加された3音分を加えた合計23音分の楽音波形データが生成されると共に、演奏操作子描画部Aにて操作された3つの仮想演奏操作子のみ表示態様が変更される。CPU負荷は65%となる。このようにCPU負荷が高く同時タッチ数が減らされたような場合には、例えば5つの仮想演奏操作子をタッチ操作したにもかかわらず3つ分しか仮想演奏操作子の表示態様を変更しない。これにより、ユーザはどの仮想演奏操作子の操作が無効であったのかを容易に把握することができる。   It is assumed that the number of musical tones reproduced by the automatic performance section C is further increased, for example, musical sound waveform data for 20 sounds is being reproduced at the same time, and the CPU load at this time is 60%. In this case, for example, the number of simultaneous touches is limited to 3 based on the touch number limit value, so that even if the user touches 5 different virtual performance operators using 5 fingers, Only touch operations on the virtual performance controls are valid. Therefore, only three note-ons are notified to the musical instrument core part D, and the musical sound waveform data for a total of 23 sounds including the three newly added sounds by the software sound source part G is generated and the performance operation is performed. Only the three virtual performance operators operated in the child drawing section A are changed in display mode. The CPU load is 65%. In this way, when the CPU load is high and the number of simultaneous touches is reduced, for example, the display mode of the virtual performance operators is changed only for three, even though five virtual performance operators are touch-operated. As a result, the user can easily grasp which virtual performance operator is invalid.

なお、どの仮想演奏操作子に対応する処理を無効とするかは、先着優先、ランダム、後着優先、演奏操作子の重要度(例えば白鍵は黒鍵よりも重要度が高い、スケール音は非スケール音よりも重要度が高いなど)、現在の演奏内容から判断する、など任意の方法を採用してよい。
また、上記のようにCPU負荷の現在値のみから有効とする同時タッチ数の制限値(タッチ数制限値)を決めてもよいが、過去のCPU負荷の傾向や次回の処理タイミングで処理すべきイベント数(すなわち、処理待ちバッファにたまっているオン/オフイベントなどの数)を参照することなどにより将来のCPU負荷を予測し、この予測値から同時タッチ数の制限値を決めてもよい。このようなCPU負荷の計測と計測値に応じた同時タッチ数の制限は、タッチ操作の検出ごとに行ってもよいし、1フレーム単位の楽音波形生成周期ごとに行ってもよい。
It should be noted that the processing corresponding to which virtual performance operator is invalidated depends on first-come-first-served, random, last-arrival priority, importance of the performance operator (for example, white keys are more important than black keys, Arbitrary methods such as judging from the current performance content may be adopted.
Further, as described above, a valid limit value of the number of simultaneous touches (touch number limit value) may be determined only from the current value of the CPU load, but it should be processed based on past CPU load trends and the next processing timing. A future CPU load may be predicted by referring to the number of events (that is, the number of on / off events accumulated in the processing waiting buffer), and the limit value of the number of simultaneous touches may be determined from the predicted value. Such a measurement of the CPU load and the limitation on the number of simultaneous touches according to the measurement value may be performed every time a touch operation is detected, or may be performed every musical sound waveform generation cycle of one frame unit.

ソフトウェア音源部Gで生成されたデジタルの楽音波形データはサウンドシステム7へと送られ、D/A変換部Fによってアナログ楽音波形信号に変換されてスピーカIから放音される。   Digital musical sound waveform data generated by the software tone generator G is sent to the sound system 7, converted into an analog musical sound waveform signal by the D / A converter F, and emitted from the speaker I.

次に、上記したような負荷制御部Eの機能を実現する具体的な処理について説明する。図3は、負荷制御部Eの機能を実現する処理の一実施例を示すフローチャートである。当該処理は、所定時間(例えば数ms)ごとに起動されて、マルチタッチ表示装置Bからのタッチ開始、タッチ移動、タッチ終了の各イベントと座標情報との取得(通知)に伴い、これらタッチ操作の種類とタッチ位置座標とに応じた処理を実行するものである。すなわち、図3に示すように、ステップS1は、タッチ開始操作に応じたタッチ開始検出処理(図4参照)を実行する。ステップS2は、タッチ移動操作に応じたタッチ移動検出処理(図6参照)を実行する。ステップS3は、タッチ終了操作に応じたタッチ終了検出処理(図7参照)を実行する。   Next, a specific process for realizing the function of the load control unit E as described above will be described. FIG. 3 is a flowchart illustrating an example of a process for realizing the function of the load control unit E. The processing is started every predetermined time (for example, several ms), and these touch operations are performed in accordance with acquisition (notification) of touch start, touch movement, and touch end events and coordinate information from the multi-touch display device B. The processing corresponding to the type of touch and the touch position coordinates is executed. That is, as shown in FIG. 3, in step S1, a touch start detection process (see FIG. 4) corresponding to the touch start operation is executed. In step S2, a touch movement detection process (see FIG. 6) corresponding to the touch movement operation is executed. In step S3, a touch end detection process (see FIG. 7) corresponding to the touch end operation is executed.

上記「タッチ開始検出処理」(図3のステップS1参照)について、図4を用いて説明する。図4は、「タッチ開始検出処理」の一実施例を示すフローチャートである。   The “touch start detection process” (see step S1 in FIG. 3) will be described with reference to FIG. FIG. 4 is a flowchart illustrating an example of “touch start detection processing”.

ステップS11は、タッチ開始操作を検出したか否かを判定する。すなわち、マルチタッチ表示装置Bからタッチ開始イベントが通知されたか否かを判定する。タッチ開始操作を検出していないと判定した場合には(ステップS11のNO)、当該処理を終了する。一方、タッチ開始操作を検出したと判定した場合には(ステップS11のYES)、マルチタッチ表示装置Bからタッチ開始イベントと共に通知される座標情報(タッチ開始座標と呼ぶ)を座標リストに追加する(ステップS12)。   In step S11, it is determined whether or not a touch start operation is detected. That is, it is determined whether or not a touch start event is notified from the multi-touch display device B. If it is determined that the touch start operation has not been detected (NO in step S11), the process ends. On the other hand, if it is determined that the touch start operation has been detected (YES in step S11), coordinate information (referred to as touch start coordinates) notified from the multi-touch display device B together with the touch start event is added to the coordinate list ( Step S12).

ここで、座標リストの一例を図5に示す。図5に示すように、座標リストは同時検出可能なタッチ操作毎に(ただし、ここでは一例として1以上の同時検出可能なタッチ数の最大限度(n)を10とした場合を例示した)、開始座標、前座標、現座標、タッチ操作の有効無効を登録することができるようになっている。開始座標、前座標、現座標の登録内容はマルチタッチ表示装置Bから通知されたタッチ操作のイベントつまりはタッチ種類によって変わり得、タッチ開始イベント通知時には開始座標、前座標、現座標の全てにタッチ開始座標が登録される(つまり全てに同じ座標が登録される)。前記開始座標は最初にタッチ操作された座標を示すものであって、タッチ終了イベント通知時に削除される以外には更新されることがない。他方、前座標及び現座標はタッチ終了イベント通知時に削除されるだけでなく、タッチ移動イベント通知時に適宜の座標に更新される(詳しくは後述する)。   An example of the coordinate list is shown in FIG. As shown in FIG. 5, the coordinate list is provided for each touch operation that can be detected simultaneously (however, as an example, the maximum limit (n) of one or more simultaneously detectable touches is 10). The start coordinates, previous coordinates, current coordinates, and valid / invalid of touch operations can be registered. The registered contents of the start coordinate, previous coordinate, and current coordinate can change depending on the touch operation event notified from the multi-touch display device B, that is, the touch type. When the touch start event is notified, all of the start coordinate, previous coordinate, and current coordinate are touched. The start coordinates are registered (that is, the same coordinates are registered for all). The start coordinate indicates a coordinate at which a touch operation is performed first, and is not updated except for being deleted when a touch end event is notified. On the other hand, the previous coordinates and the current coordinates are not only deleted when a touch end event is notified, but are also updated to appropriate coordinates when a touch movement event is notified (details will be described later).

図4の説明に戻って、ステップS13は通知されたタッチ開始座標に基づき演奏操作子描画部Aに該当するタッチ開始操作を問い合わせる。ステップS14は、問い合わせ結果が「仮想演奏操作子オン」操作に該当するタッチ開始操作であるか否かを判定する。ここでは、前記タッチ開始座標に基づくディスプレイ6A上でのタッチ開始位置がマルチタッチ表示装置Bに描画されている仮想演奏操作子上である場合に、「仮想演奏操作子オン」操作に該当するタッチ開始操作であると判定されることになる。「仮想演奏操作子オン」操作に該当するタッチ開始操作でないと判定した場合には(ステップS14のNO)、前記タッチ開始座標に基づくディスプレイ6A上でのタッチ開始位置に応じた処理を実行し(ステップS15)、ステップS20の処理へジャンプする。このときに実行する処理としては、例えば前記タッチ開始座標に基づくディスプレイ6A上でのタッチ開始位置がマルチタッチ表示装置Bに描画されている仮想設定操作子上である場合の楽音制御パラメータの設定指示(例えばパラメータの楽音への反映を開始させるパラメータオン設定など)がある。   Returning to the description of FIG. 4, the step S13 inquires the performance operator drawing unit A about the touch start operation corresponding to the notified touch start coordinates. In step S14, it is determined whether or not the inquiry result is a touch start operation corresponding to the “virtual performance operator ON” operation. Here, when the touch start position on the display 6A based on the touch start coordinates is on the virtual performance operator drawn on the multi-touch display device B, the touch corresponding to the “virtual performance operator on” operation is performed. It is determined that the operation is a start operation. If it is determined that the touch start operation does not correspond to the “virtual performance operator ON” operation (NO in step S14), processing corresponding to the touch start position on the display 6A based on the touch start coordinates is executed ( Step S15), the process jumps to step S20. As a process executed at this time, for example, an instruction to set a musical sound control parameter when the touch start position on the display 6A based on the touch start coordinates is on a virtual setting operator drawn on the multi-touch display device B. (For example, parameter on setting for starting reflection of parameters in musical tone).

「仮想演奏操作子オン」操作に該当するタッチ開始操作であると判定した場合には(ステップS14のYES)、負荷計測部HからCPU負荷を取得して当該負荷に応じたタッチ数制限値(n、例えば10)を決定する(ステップS16)。そして、図5に示した座標リストにおいて「有効」と登録されている現在の有効タッチの合計(有効タッチ数)が、前記決定したタッチ数制限値(n)の上限未満であるか否かを判定する(ステップS17)。現在の有効タッチ数がタッチ数制限値の上限未満でないすなわち制限を超えるタッチ操作であると判定した場合には(ステップS17のNO)、前記検出した新たなタッチ開始操作を無効とし座標リストの該当箇所にその旨(無効)を登録する(ステップS18)。この場合には、楽器コア部Dに対して仮想演奏操作子のオン/オフ操作イベントが通知されず、ソフトウェア音源部Gによる楽音波形データの生成や演奏操作子描画部Aによる仮想演奏操作子の表示態様を変化させる描画が行われない。   When it is determined that the touch start operation corresponds to the “virtual performance operator ON” operation (YES in step S14), the CPU load is acquired from the load measuring unit H, and the touch count limit value (in accordance with the load) ( n, for example, 10) is determined (step S16). Then, it is determined whether or not the total number of valid touches registered as “valid” (valid touch count) in the coordinate list shown in FIG. 5 is less than the upper limit of the determined touch count limit value (n). Determination is made (step S17). If it is determined that the current valid touch count is not less than the upper limit of the touch count limit value, that is, the touch operation exceeds the limit (NO in step S17), the detected new touch start operation is invalidated and the corresponding coordinate list is displayed. The fact (invalid) is registered in the place (step S18). In this case, an on / off operation event of the virtual performance operator is not notified to the musical instrument core unit D, and the generation of musical sound waveform data by the software tone generator G or the virtual performance operator by the performance operator drawing unit A is not performed. Drawing that changes the display mode is not performed.

一方、現在の有効タッチ数がタッチ数制限値(n)の上限未満であると判定した場合には(ステップS17のYES)、前記検出した新たなタッチ開始操作を有効とし座標リストの該当箇所にその旨(有効)を登録すると共に、楽器コア部Dに「仮想演奏操作子オン」操作イベントを通知する(ステップS19)。この場合には、当該通知に従って楽器コア部Dはソフトウェア音源部Gへ楽音の発音指示を行ったり演奏操作子描画部Aへ操作情報を通知したりするので、ソフトウェア音源部Gによる楽音波形データの生成や演奏操作子描画部Aによる仮想演奏操作子の表示態様を変化させる描画が行われる。   On the other hand, when it is determined that the current number of valid touches is less than the upper limit of the touch number limit value (n) (YES in step S17), the detected new touch start operation is validated and the corresponding position in the coordinate list is set. The fact (valid) is registered, and a “virtual performance operator ON” operation event is notified to the musical instrument core part D (step S19). In this case, the musical instrument core unit D instructs the software sound source unit G to generate a musical tone or notifies the performance operator drawing unit A of the operation information according to the notification. The drawing that changes the display mode of the virtual performance operator by the generation and performance operator drawing unit A is performed.

ステップS20は、同時に更なるタッチ開始操作の検出があるか否かつまりは同時に行われた複数のタッチ操作に基づき他にもタッチ開始イベントが通知されているか否かを判定する。同時に更なるタッチ開始操作の検出があると判定した場合には(ステップS20のYES)、上記ステップS12の処理へ戻って、ステップS12からステップS19までの処理を繰り返し実行する。同時に更なるタッチ開始操作の検出がないと判定した場合には(ステップS20のNO)、当該処理を終了する。   In step S20, it is determined whether or not a further touch start operation is detected at the same time, that is, whether or not another touch start event is notified based on a plurality of touch operations performed simultaneously. At the same time, if it is determined that a further touch start operation is detected (YES in step S20), the process returns to step S12, and the processes from step S12 to step S19 are repeatedly executed. At the same time, if it is determined that no further touch start operation has been detected (NO in step S20), the process ends.

次に、「タッチ移動検出処理」(図3のステップS2参照)について、図6を用いて説明する。図6は、「タッチ移動検出処理」の一実施例を示すフローチャートである。   Next, the “touch movement detection process” (see step S2 in FIG. 3) will be described with reference to FIG. FIG. 6 is a flowchart illustrating an example of the “touch movement detection process”.

ステップS31は、タッチ移動操作を検出したか否かを判定する。すなわち、マルチタッチ表示装置Bからタッチ移動イベントが通知されたか否かを判定する。タッチ移動操作を検出していないと判定した場合には(ステップS31のNO)、当該処理を終了する。一方、タッチ移動操作を検出したと判定した場合には(ステップS31のYES)、マルチタッチ表示装置Bからタッチ移動イベントと共に通知される座標情報に基づき座標リストの前座標及び現座標を更新する(ステップS32)。すなわち、タッチ移動操作を検出したときは、マルチタッチ表示装置Bから移動前座標(旧座標)と現座標(カレント座標)とを座標情報として受け取るので、座標リストにおいて前座標に合致する値が現座標として登録されているレコードを探し、該当するレコードの前座標と現座標とを前記受け取った値で更新する。ステップS33は、通知された移動前座標及び現座標に基づき演奏操作子描画部Aに該当するタッチ移動操作を問い合わせる。   A step S31 decides whether or not a touch movement operation has been detected. That is, it is determined whether or not a touch movement event is notified from the multi-touch display device B. If it is determined that the touch movement operation has not been detected (NO in step S31), the process ends. On the other hand, if it is determined that a touch movement operation has been detected (YES in step S31), the previous and current coordinates in the coordinate list are updated based on the coordinate information notified from the multi-touch display device B together with the touch movement event ( Step S32). That is, when a touch movement operation is detected, the coordinates before movement (old coordinates) and the current coordinates (current coordinates) are received from the multi-touch display device B as coordinate information, so that a value matching the previous coordinates in the coordinate list is present. A record registered as coordinates is searched, and the previous and current coordinates of the corresponding record are updated with the received value. A step S33 inquires the performance operator drawing unit A for a touch movement operation based on the notified pre-movement coordinates and current coordinates.

ここで、以下に示すステップS34〜ステップS43の処理においては、移動前座標と現座標との組み合わせに基づきタッチ移動操作の場合分けを行って、それぞれの場合(ここでは以下に示す4つの場合)に応じた処理を行うようにしている。第1は既にオンされている仮想演奏操作子上から新しい(別の)仮想演奏操作子上へとタッチ移動操作が行われた場合であり、この場合には一旦タッチ移動操作前の仮想演奏操作子の操作に基づき発音されている楽音を消音し、タッチ移動操作後の新しい仮想演奏操作子の操作に基づく楽音を新たに発音開始する。第2は仮想演奏操作子以外から新しい(その時点で操作されていない)仮想演奏操作子上へとタッチ移動操作が行われた場合であり、この場合にはタッチ移動操作後の新しい仮想演奏操作子の操作に基づく楽音を新たに発音開始する。第3は既にオンされている仮想演奏操作子上から当該仮想演奏操作子を含む全ての仮想演奏操作子以外へとタッチ移動操作が行われた場合であり、この場合にはタッチ移動操作前の仮想演奏操作子の操作に基づき発音されている楽音を消音し、必要に応じて(タッチ移動操作後の現座標に何らかの仮想設定操作子などが描画されているならば)対応する操作子処理を実行する。第4は既にオンされている仮想演奏操作子の範囲内でのタッチ移動操作か、仮想演奏操作子とは何ら関係ないところでタッチ移動操作が行われた場合であり、必要に応じて(タッチ移動操作後の現座標に何らかの仮想設定操作子などが描画されているならば)対応する操作子処理を実行する。   Here, in the processing of step S34 to step S43 shown below, the case of the touch movement operation is divided based on the combination of the pre-movement coordinates and the current coordinates, and in each case (here, the following four cases). The processing according to is performed. The first is a case where a touch movement operation is performed from the already-on virtual performance operator to a new (other) virtual performance operator. In this case, the virtual performance operation before the touch movement operation is once performed. The musical sound that is generated based on the operation of the child is muted, and the musical sound based on the operation of the new virtual performance operator after the touch movement operation is newly started to be generated. The second is a case where a touch movement operation is performed on a new (not operated at that time) virtual performance operator other than the virtual performance operation element. In this case, a new virtual performance operation after the touch movement operation is performed. A new tone based on the child's operation is started. The third is a case where a touch movement operation is performed from a virtual performance operator that is already turned on to all virtual performance operators including the virtual performance operation element. In this case, the touch movement operation before the touch movement operation is performed. The musical sound that is sounded based on the operation of the virtual performance operator is muted, and if necessary (if any virtual setting operator etc. is drawn at the current coordinates after the touch movement operation), the corresponding operator processing is performed. Run. The fourth case is a touch movement operation within the range of the virtual performance operator that is already turned on, or a touch movement operation that has nothing to do with the virtual performance operation element. If a virtual setting operator or the like is drawn on the current coordinates after the operation, the corresponding operator processing is executed.

ステップS34は上記第1の場合に該当する場合分けとして、楽器コア部Dに「仮想演奏操作子オン」操作イベントを通知済みである「オン済み」の仮想演奏操作子から新しい仮想演奏操作子へのタッチ移動操作であるか否かを判定する。前記第1の場合つまりオン済み仮想演奏操作子から新仮想演奏操作子へのタッチ移動操作であると判定した場合には(ステップS34のYES)、タッチ移動操作前のオン済み仮想演奏操作子の操作に基づき発音中の楽音を消音するために「仮想演奏操作子のオフ」操作イベントを楽器コア部Dに通知する(ステップS35)。そして、負荷計測部HからCPU負荷を取得して当該負荷に応じたタッチ数制限値(n、例えば10)を決定し(ステップS36)、図5に示した座標リストにおいて「有効」と登録されている現在の有効タッチの合計(有効タッチ数)が、前記決定したタッチ数制限値(n)の上限未満であるか否かを判定する(ステップS37)。現在の有効タッチ数がタッチ数制限値の上限未満でないと判定した場合には(ステップS37のNO)、タッチ移動操作後に該当するタッチ操作を無効とし座標リストの該当箇所にその旨(無効)を登録する(ステップS38)。この場合には、楽器コア部Dに対して仮想演奏操作子のオフ操作イベントのみが通知されて、ソフトウェア音源部Gによる該当の楽音波形データの生成が停止されて楽音の消音が行われると共に、演奏操作子描画部Aによるタッチ移動操作前の仮想演奏操作子の表示態様を変化させる描画が行われる。   In step S34, as a case corresponding to the first case, the musical instrument core unit D is notified of the “virtual performance operator ON” operation event from the “ON” virtual performance operator to the new virtual performance operator. It is determined whether or not this is a touch movement operation. In the first case, that is, when it is determined that the touch movement operation is performed from the already-on virtual performance operator to the new virtual performance operator (YES in step S34), the on-virtual performance operator before the touch movement operation is determined. Based on the operation, the musical instrument core section D is notified of the “virtual performance control element off” operation event in order to mute the musical sound being generated (step S35). Then, the CPU load is acquired from the load measuring unit H, the touch number limit value (n, for example, 10) corresponding to the load is determined (step S36), and “valid” is registered in the coordinate list shown in FIG. It is determined whether or not the total number of effective touches (number of effective touches) is less than the upper limit of the determined touch number limit value (n) (step S37). If it is determined that the current number of valid touches is not less than the upper limit of the touch number limit value (NO in step S37), the corresponding touch operation is invalidated after the touch movement operation, and this is indicated (invalid) in the corresponding position of the coordinate list. Registration is performed (step S38). In this case, only the virtual performance operator off operation event is notified to the musical instrument core part D, the generation of the corresponding musical sound waveform data by the software sound source part G is stopped, and the musical sound is silenced. Drawing that changes the display mode of the virtual performance operator before the touch movement operation by the performance operator drawing unit A is performed.

一方、現在の有効タッチ数がタッチ数制限値の上限未満であると判定した場合には(ステップS37のYES)、前記検出した新たなタッチ開始操作を有効とし座標リストの該当箇所にその旨(有効)を登録すると共に、楽器コア部Dに「仮想演奏操作子オン」操作イベントを通知する(ステップS39)。この場合には、当該通知に従って楽器コア部Dはソフトウェア音源部Gへ楽音の発音指示を行ったり演奏操作子描画部Aへ操作情報を通知したりするので、ソフトウェア音源部Gによる新たな楽音波形データの生成や演奏操作子描画部Aによるタッチ移動操作後の仮想演奏操作子の表示態様を変化させる描画が行われる。上記ステップS38又はステップS39の終了後は、ステップS44の処理へ行く。   On the other hand, when it is determined that the current number of valid touches is less than the upper limit of the touch number limit value (YES in step S37), the detected new touch start operation is validated and the corresponding point in the coordinate list is notified to that effect ( (Valid) is registered, and a “virtual performance operator ON” operation event is notified to the musical instrument core D (step S39). In this case, the musical instrument core unit D instructs the software sound source unit G to generate a musical tone or notifies the performance operator drawing unit A of the operation information in accordance with the notification. Drawing is performed to change the display mode of the virtual performance operator after the generation of data and the touch movement operation by the performance operator drawing unit A. After step S38 or step S39 is completed, the process goes to step S44.

上記ステップS34において、オン済み演奏操作子から新演奏操作子位置への移動でないと判定した場合には(ステップS34のNO)、上記第2の場合に該当する場合分けとして仮想演奏操作子以外(非演奏操作子と呼ぶ)から仮想演奏操作子への移動であるか否かを判定する(ステップS40)。前記第2の場合つまり非演奏操作子から新しい仮想演奏操作子へのタッチ移動操作であると判定した場合には(ステップS40のYES)、ステップS36の処理へ行き上述したステップS36〜S39の処理を行う。この場合には、タッチ移動操作後の新しい仮想演奏操作子の操作に基づく楽音を新たに発音開始する(ただし、現在の有効タッチ数がタッチ数制限値の上限未満である場合)。   If it is determined in step S34 that the movement is not from the already-on performance operator to the new performance operator position (NO in step S34), a case other than the virtual performance operator (NO in step S34) ( It is determined whether or not the movement is from a non-performance operator to a virtual performance operator (step S40). In the second case, that is, when it is determined that the touch movement operation is performed from the non-performance controller to the new virtual performance controller (YES in step S40), the process proceeds to step S36, and the processes in steps S36 to S39 described above. I do. In this case, a musical tone based on the operation of the new virtual performance operator after the touch movement operation is newly started (provided that the current effective touch count is less than the upper limit of the touch count limit value).

非演奏操作子から演奏操作子位置への移動でないと判定した場合には(ステップS40のNO)、上記第3又は第4の場合に該当する場合分けとしてオン済み仮想演奏操作子から非演奏操作子へのタッチ移動操作であるか否かを判定する(ステップS41)。前記第3の場合つまりオン済み仮想演奏操作子から非演奏操作子への移動であると判定した場合には(ステップS41のYES)、タッチ移動操作前のオン済み仮想演奏操作子の操作に基づき発音中の楽音を消音するために「仮想演奏操作子のオフ」操作イベントを楽器コア部Dに通知する(ステップS42)。一方、オン済み仮想演奏操作子から非演奏操作子へのタッチ移動操作でないと判定した場合は(ステップS41のNO)、前記第4の場合つまりオン済み仮想演奏操作子の範囲内でのタッチ移動操作か、非演奏操作子から非演奏操作子へのタッチ移動操作であって、ステップS43の処理へジャンプする。ステップS43は、前記移動前座標及び現座標に基づくディスプレイ6A上でのタッチ移動操作後の位置に応じた処理を実行する。このようにして、タッチ移動操作前の仮想演奏操作子の操作に基づき発音されている楽音があればそれを消音した上で、必要に応じてタッチ移動操作後の対応する操作子処理を実行する。   When it is determined that the movement is not from the non-performance controller to the performance operator position (NO in step S40), the non-performance operation is performed from the virtual performance operator that has been turned on as the case corresponding to the third or fourth case. It is determined whether or not the operation is a touch movement operation to a child (step S41). In the third case, that is, when it is determined that the movement is from the turned-on virtual performance operator to the non-playing performance element (YES in step S41), based on the operation of the turned-on virtual performance operator before the touch movement operation. In order to mute the musical sound that is being generated, a “virtual performance operator OFF” operation event is notified to the musical instrument core D (step S42). On the other hand, when it is determined that the touch movement operation is not performed from the on-virtual performance operator to the non-performance operator (NO in step S41), the touch movement within the fourth case, that is, the range of the turned-on virtual performance operator is performed. This is an operation or a touch movement operation from the non-performance operator to the non-performance operator, and the process jumps to step S43. A step S43 executes processing corresponding to the position after the touch movement operation on the display 6A based on the coordinates before movement and the current coordinates. In this way, if there is a musical sound that is sounded based on the operation of the virtual performance operator before the touch movement operation, it is muted and the corresponding operation processing after the touch movement operation is executed as necessary. .

ステップS44は、同時に更なるタッチ移動操作の検出があるか否かつまりは同時に行われた複数のタッチ操作に基づき他にもタッチ移動イベントが通知されているか否かを判定する。同時に更なるタッチ移動操作の検出があると判定した場合には(ステップS44のYES)、上記ステップS32の処理へ戻って、ステップS32からステップS43までの処理を繰り返し実行する。同時に更なるタッチ移動操作の検出がないと判定した場合には(ステップS44のNO)、当該処理を終了する。   In step S44, it is determined whether or not a further touch movement operation is detected at the same time, that is, whether or not another touch movement event is notified based on a plurality of touch operations performed simultaneously. At the same time, if it is determined that a further touch movement operation is detected (YES in step S44), the process returns to step S32, and the processes from step S32 to step S43 are repeatedly executed. At the same time, if it is determined that no further touch movement operation has been detected (NO in step S44), the process ends.

次に、「タッチ終了検出処理」(図3のステップS3参照)について、図7を用いて説明する。図7は、「タッチ終了検出処理」の一実施例を示すフローチャートである。   Next, the “touch end detection process” (see step S3 in FIG. 3) will be described with reference to FIG. FIG. 7 is a flowchart illustrating an example of “touch end detection processing”.

ステップS51は、タッチ終了操作を検出したか否かを判定する。すなわち、マルチタッチ表示装置Bからタッチ終了イベントが通知されたか否かを判定する。タッチ終了操作を検出していないと判定した場合には(ステップS51のNO)、当該処理を終了する。一方、タッチ終了操作を検出したと判定した場合には(ステップS51のYES)、マルチタッチ表示装置Bからタッチ終了イベントと共に通知される座標情報(タッチ終了座標と呼ぶ)に基づき座標リストの対応するレコードを削除する(ステップS52)。すなわち、タッチ終了操作を検出したときは、座標リストにおいてマルチタッチ表示装置Bから受け取ったタッチ終了座標が現座標として登録されているレコードを探して削除する。   A step S51 decides whether or not a touch end operation has been detected. That is, it is determined whether or not a touch end event is notified from the multi-touch display device B. If it is determined that the touch end operation has not been detected (NO in step S51), the process ends. On the other hand, if it is determined that a touch end operation has been detected (YES in step S51), the coordinate list corresponds to the coordinate information (referred to as touch end coordinates) notified from the multi-touch display device B together with the touch end event. The record is deleted (step S52). That is, when a touch end operation is detected, a record in which the touch end coordinates received from the multi-touch display device B are registered as the current coordinates in the coordinate list is searched for and deleted.

ステップS53は、通知されたタッチ終了座標に基づき演奏操作子描画部Aに該当するタッチ終了操作を問い合わせる。ステップS54は、問い合わせ結果が「オン済み仮想演奏操作子のオフ」操作に該当するタッチ終了操作であるか否かを判定する。ここでは、前記タッチ終了座標に基づくディスプレイ6A上でのタッチ終了位置がマルチタッチ表示装置Bに描画されている「オン済み」の仮想演奏操作子上である場合に、「オン済み仮想演奏操作子のオン」操作に該当するタッチ終了操作であると判定される。「オン済み仮想演奏操作子のオフ」操作に該当するタッチ終了操作でないと判定した場合には(ステップS54のNO)、前記タッチ終了座標に基づくディスプレイ6A上でのタッチ終了位置に応じた処理を実行し(ステップS56)、ステップS57の処理へ行く。このときに実行する処理としては、例えば前記タッチ開始座標に基づくディスプレイ6A上でのタッチ開始位置がマルチタッチ表示装置Bに描画されている仮想設定操作子上である場合の楽音制御パラメータの設定指示(例えばパラメータの楽音への反映を終了させるパラメータオフ設定など)がある。   In step S53, the performance operator drawing unit A is inquired about the touch end operation corresponding to the notified touch end coordinates. In step S54, it is determined whether or not the inquiry result is a touch end operation corresponding to an operation of “turning off an already-on virtual performance operator”. Here, when the touch end position on the display 6A based on the touch end coordinates is on the “on” virtual performance operator drawn on the multi-touch display device B, the “on virtual performance operator” It is determined that the touch end operation corresponds to the “ON” operation. If it is determined that the touch end operation does not correspond to the “turn off of the virtual player already turned on” operation (NO in step S54), processing corresponding to the touch end position on the display 6A based on the touch end coordinates is performed. Execute (step S56), and go to step S57. As a process executed at this time, for example, an instruction to set a musical sound control parameter when the touch start position on the display 6A based on the touch start coordinates is on a virtual setting operator drawn on the multi-touch display device B. (For example, parameter off setting for ending reflection of parameters to musical tone).

一方、「オン済み仮想演奏操作子のオフ」操作に該当するタッチ終了操作であると判定した場合には(ステップS54のYES)、タッチ終了操作前のオン済み仮想演奏操作子の操作に基づき発音中の楽音を消音するために「仮想演奏操作子のオフ」操作イベントを楽器コア部Dに通知する(ステップS55)。この場合には、当該通知に従って楽器コア部Dはソフトウェア音源部Gへ楽音の消音指示を行ったり演奏操作子描画部Aへ操作情報を通知したりするので、ソフトウェア音源部Gによる楽音波形データの生成停止や演奏操作子描画部Aによる仮想演奏操作子の表示態様を変化させる描画が行われる。なお、タッチ終了操作位置が仮想演奏操作子上であったとしても、その仮想演奏操作子へのタッチ開始操作が「無効」とされていたような場合には(つまりオン済み仮想演奏操作子でない)、楽音波形データの生成停止や当該仮想演奏操作子の表示態様を変化させる描画が行われないことは言うまでもない。   On the other hand, when it is determined that the touch end operation corresponds to the “turn off of the virtual player already turned on” operation (YES in step S54), the sound is generated based on the operation of the virtual player already turned on before the touch end operation. In order to mute the musical sound in the middle, the instrument core unit D is notified of a “virtual performance operator OFF” operation event (step S55). In this case, the musical instrument core unit D instructs the software sound source unit G to mute the sound and notifies the performance operator drawing unit A of the operation information according to the notification. Drawing to change the display mode of the virtual performance operator by the generation stop or performance operator drawing unit A is performed. Even if the touch end operation position is on the virtual performance operator, if the touch start operation to the virtual performance operation is “invalid” (that is, it is not an on-virtual performance operator). ), It goes without saying that the generation of the musical sound waveform data is not stopped and the drawing for changing the display mode of the virtual performance operator is not performed.

ステップS57は、同時に更なるタッチ終了操作の検出があるか否かつまりは同時に行われた複数のタッチ操作に基づき他にもタッチ終了イベントが通知されているか否かを判定する。同時に更なるタッチ終了操作の検出があると判定した場合には(ステップS57のYES)、上記ステップS52の処理へ戻って、ステップS52からステップS56までの処理を繰り返し実行する。同時に更なるタッチ終了操作の検出がないと判定した場合には(ステップS57のNO)、当該処理を終了する。   In step S57, it is determined whether or not a further touch end operation is detected, that is, whether or not another touch end event is notified based on a plurality of touch operations performed simultaneously. At the same time, if it is determined that a further touch end operation has been detected (YES in step S57), the process returns to step S52, and the processes from step S52 to step S56 are repeated. At the same time, if it is determined that no further touch end operation has been detected (NO in step S57), the process ends.

次に、楽音波形データを生成するソフトウェア音源部Gの機能を実現する具体的な処理について、図8を用いて説明する。図8は、ソフトウェア音源部Gの機能を実現する処理の一実施例を示すフローチャートである。   Next, specific processing for realizing the function of the software tone generator G for generating musical sound waveform data will be described with reference to FIG. FIG. 8 is a flowchart showing an embodiment of a process for realizing the function of the software tone generator G.

ステップS61は、楽器コア部Dからノートオンイベントを受け取ったか否かを判定する。なお、楽器コア部Dから受け取る各種イベントとしては、マルチタッチ表示装置Bでのタッチ操作に基づく仮想演奏操作子毎のノートオン/オフイベント、また仮想設定操作子毎のオン、オフ、設定値変更イベント、さらには自動演奏部Cから受け取るノートオン/オフイベントや設定パラメータイベントなどがある。楽器コア部Dからノートオンイベントを受け取ったと判定した場合には(ステップS61のYES)、図示を省略した周知の楽音波形生成エンジンに当該ノートオンイベントに対応した発音開始を指示する(ステップS62)。ステップS63は、楽器コア部Dからノートオフイベントを受け取ったか否かを判定する。楽器コア部Dからノートオフイベントを受け取ったと判定した場合には(ステップS63のYES)、前記楽音波形生成エンジンに当該ノートオフイベントに対応した消音開始を指示する(ステップS64)。ステップS65は、楽器コア部Dからその他イベントを受け取ったか否かを判定する。楽器コア部Dからその他イベントを受け取ったと判定した場合には(ステップS65のYES)、楽音波形生成エンジンに当該その他イベントに対応した処理を実行するように指示する(ステップS66)。   A step S61 decides whether or not a note-on event has been received from the musical instrument core part D. Note that various events received from the musical instrument core D include a note on / off event for each virtual performance operator based on a touch operation on the multi-touch display device B, an on / off event for each virtual setting operator, and a setting value change. Events include a note on / off event and a setting parameter event received from the automatic performance unit C. If it is determined that a note-on event has been received from the musical instrument core D (YES in step S61), the well-known musical sound waveform generation engine (not shown) is instructed to start sound generation corresponding to the note-on event (step S62). . A step S63 decides whether or not a note-off event has been received from the musical instrument core part D. If it is determined that a note-off event has been received from the musical instrument core D (YES in step S63), the musical sound waveform generation engine is instructed to start mute corresponding to the note-off event (step S64). A step S65 decides whether or not another event has been received from the musical instrument core part D. If it is determined that the other event has been received from the musical instrument core D (YES in step S65), the musical sound waveform generation engine is instructed to execute processing corresponding to the other event (step S66).

ステップS67は、楽音波形データの生成タイミングが否かを判定する。この生成タイミングは、1024フレーム分の楽音波形を再生するのに要する時間ごとに設定される。例えば、既に説明したように動作周波数が44100ヘルツである場合には、約23.2msごとに設定される。勿論、これに限らず、1回に生成するフレーム数やサンプリング(動作)周波数を異ならせれば、楽音波形データの生成タイミングの周期も異なる。楽音生成タイミングであると判定した場合には(ステップS67のYES)、負荷計測部Hに計測開始を指示する(ステップS68)。さらに、当該指示に応じて、楽音波形生成エンジンが指示されているイベントに対応した1024フレーム分の楽音波形生成処理(図示せず)を実行する(ステップS69)。ステップS70は、負荷計測部Hに計測終了を指示する。このように、楽音波形データ生成の開始時と終了時に負荷計測部Hに対して計時の開始と終了とを指示することにより、負荷計測部Hでは1024フレーム分の波形生成実時間(例えば約23.2ms)を知ることができ、これに基づき上述したようにしてCPU負荷を計算することが可能となる。   In step S67, it is determined whether or not the generation timing of the musical sound waveform data is present. This generation timing is set for each time required to reproduce the musical sound waveform for 1024 frames. For example, as described above, when the operating frequency is 44100 hertz, it is set about every 23.2 ms. Of course, the present invention is not limited to this, and if the number of frames to be generated at one time and the sampling (operation) frequency are varied, the cycle of the generation timing of the musical sound waveform data also varies. If it is determined that it is the tone generation timing (YES in step S67), the load measurement unit H is instructed to start measurement (step S68). Further, in response to the instruction, a musical sound waveform generation process (not shown) for 1024 frames corresponding to the event instructed by the musical sound waveform generation engine is executed (step S69). In step S70, the load measuring unit H is instructed to end the measurement. In this way, by instructing the load measuring unit H to start and end timing at the start and end of the musical sound waveform data generation, the load measuring unit H can generate a waveform generation actual time (for example, about 23.2 frames) for 1024 frames. ms), and based on this, the CPU load can be calculated as described above.

以上のようにして、本発明に係る電子音楽装置では、画面上に描画された仮想演奏操作子への1乃至複数のタッチ操作の検出時に、仮想演奏操作子に対応付けられた所定の楽音波形を生成するソフトウェア音源部Gの楽音波形生成に係る処理負荷を負荷計測部Hにより計測する。そして、楽器コア部Dは前記計測した処理負荷に応じて前記検出した1乃至複数のタッチ操作のうち一部のタッチ操作のみに応じて仮想演奏操作子の特定を行い、該特定された仮想演奏操作子に対応付けられた所定の楽音波形を生成するよう前記ソフトウェア音源部Gに対して指示するとともに、演奏操作子描画部Aに対して前記特定された仮想演奏操作子の描画制御を指示する。このように、多数の仮想演奏操作子へのタッチ操作が同時に行われた場合にそのときの楽音波形生成に係る処理負荷を計測し、該計測した処理負荷に応じて全ての操作に応じた楽音波形を生成及び描画を制御させることなく一部の操作のみに応じた楽音波形を生成及び描画を制御させるようにしたことにより、特にはソフトウェア音源部Gに過度な処理負荷をかけることなく楽音波形生成を行わせることができる。そのため、多数の仮想演奏操作子へのタッチ操作が同時に行われたとしても過度な処理負荷がかかるまでに同時発音数が増えることがないので、従来のような同時発音数が増えることに伴う音切れや描画遅れは生じ得ない。   As described above, in the electronic music apparatus according to the present invention, the predetermined musical sound waveform associated with the virtual performance operator is detected when one or more touch operations are detected on the virtual performance operator drawn on the screen. The load measuring unit H measures the processing load related to the musical sound waveform generation of the software sound source unit G that generates. Then, the musical instrument core part D specifies a virtual performance operator according to only a part of the detected one or more touch operations in accordance with the measured processing load, and the specified virtual performance The software tone generator unit G is instructed to generate a predetermined musical sound waveform associated with the operator, and the performance operator drawing unit A is instructed to perform drawing control of the specified virtual performance operator. . In this way, when touch operations are performed simultaneously on a large number of virtual performance operators, the processing load related to the musical sound waveform generation at that time is measured, and musical sounds corresponding to all the operations are measured according to the measured processing load. By generating the tone waveform corresponding to only a part of the operation without controlling the waveform generation and drawing, it is possible to control the tone waveform especially without applying excessive processing load to the software tone generator G. Generation can be performed. For this reason, even if touch operations are performed simultaneously on a large number of virtual performance operators, the number of simultaneous pronunciations does not increase until an excessive processing load is applied. Cutting and drawing delays cannot occur.

以上、図面に基づいて実施形態の一例を説明したが、本発明はこれに限定されるものではなく、様々な実施形態が可能であることは言うまでもない。例えば、上述した実施例においてはタッチ開始操作時に有効タッチ数を制限するものを示したがこれに限らず、既に有効とされているタッチ操作の中からCPU負荷に応じて所望のタッチ操作を途中から無効にするようにしてもよい。例えば、5本の指で演奏操作子をタッチした状態であるがそのうちの3つのみが有効で2つは無効とされている状態で、自動演奏データによる発音数が増えてCPU負荷が70%となったと仮定する。CPU負荷が増すことにより有効タッチ数が2個に制限されるとすれば、有効であった3つのうちから1音分が減らされる(オフしたと看做される)ことになる。このときに、オフされる対象の仮想演奏操作子も、適宜の方法により決定してよい。   As mentioned above, although an example of embodiment was demonstrated based on drawing, this invention is not limited to this, It cannot be overemphasized that various embodiment is possible. For example, in the above-described embodiments, the number of effective touches is limited at the time of the touch start operation. However, the present invention is not limited to this, and a desired touch operation is performed in the middle according to the CPU load from the already effective touch operations. May be invalidated. For example, when the performance operator is touched with five fingers, but only three of them are valid and two are invalid, the number of pronunciations by automatic performance data increases and the CPU load is 70%. Suppose that If the number of effective touches is limited to two by increasing the CPU load, one sound is reduced from the three effective touches (it is considered to be turned off). At this time, the virtual performance operator to be turned off may be determined by an appropriate method.

なお、有効タッチ数を制限した状態からCPU負荷が減少して有効タッチ数の制限が増加したとき、それまで無効となっていたタッチ(ただしタッチした状態が維持されているもの)を有効に切り替えてもよい。例えば、有効タッチ数が2個に制限されている状態から自動演奏データによる同時発音数が減り、CPU負荷が50%になったと仮定する。CPU負荷が減少して有効タッチ数の制限が5個に増加したとすると、それまでオフ扱いされていた仮想演奏操作子に対応するノートオンイベントがソフトウェア音源部Gと演奏操作子描画部Aに通知され、楽音波形データの生成及び仮想演奏操作子の表示態様を変更する描画がなされる。
なお、タッチ操作を無効化するだけでなく、自動演奏データの再生に基づく同時発音数の制限をあわせて実施するようにしてもよい。このようにすると、なるべくユーザによるタッチ操作を減らさずにすむという利点があるが、自動演奏による演奏内容が薄くなったり不自然になったりしてしまう恐れもあるので、それに注意すれば最大限に上記利点を生かすことが可能である。
In addition, when the CPU load decreases from the state where the number of effective touches is reduced and the limit on the number of effective touches is increased, the touch that has been invalidated (however, the touched state is maintained) is switched to valid. May be. For example, it is assumed that the number of simultaneous sounds by the automatic performance data is reduced from the state where the number of effective touches is limited to two and the CPU load is 50%. If the CPU load is reduced and the limit on the number of effective touches is increased to 5, note-on events corresponding to virtual performance operators that have been treated as off until then are generated in the software tone generator G and the performance operator drawing unit A. In response to the notification, the generation of the musical sound waveform data and the drawing for changing the display mode of the virtual performance operator are performed.
In addition to invalidating the touch operation, the simultaneous sound number may be limited based on the reproduction of the automatic performance data. This has the advantage of reducing the number of touch operations by the user as much as possible, but there is a risk that the performance content of the automatic performance may become thin or unnatural. It is possible to take advantage of the above advantages.

なお、CPU負荷に応じて新たな発音開始に係るタッチの有効/無効を制御するようにしたが、これに加えてCPU負荷に応じて既に発音されている楽音への効果付与に係るタッチの有効/無効を制御してもよい。例えば、オン済み仮想演奏操作子の範囲内でタッチ移動を検出したときに楽音の特性を制御(例えばアフタータッチをきかせる等)する場合に、CPU負荷に応じて制御の有無を制御してもよい。このとき制御有りなら仮想演奏操作子の表示態様も制御するが、制御無しなら表示態様は制御しない。あるいは、ロータリーエンコーダを模した仮想演奏操作子へのタッチ操作(操作子を回すように円を描く操作)に応じて楽音特性を制御する場合なども、同様にCPU負荷に応じて制御の有無(仮想演奏操作子の表示態様制御も含む)を制御してもよい。   In addition, the validity / invalidity of the touch related to the start of the new sound generation is controlled according to the CPU load, but in addition to this, the validity of the touch related to the effect imparting to the musical sound already sounded according to the CPU load is controlled. / Invalidity may be controlled. For example, in the case of controlling the characteristics of musical sound when touch movement is detected within the range of the virtual performance operator that has been turned on (for example, after touching is performed), the presence or absence of control may be controlled according to the CPU load. . At this time, if there is control, the display mode of the virtual performance operator is also controlled, but if there is no control, the display mode is not controlled. Alternatively, in the case where the musical sound characteristics are controlled according to a touch operation (an operation of drawing a circle so as to turn the operation element) on a virtual performance operator imitating a rotary encoder, the presence or absence of control according to the CPU load ( Display mode control of the virtual performance operator may also be controlled.

1…CPU、2…ROM、3…RAM、4,5…検出回路、4A…設定操作子、5A…タッチパネル、6…表示回路、6A…ディスプレイ、7…サウンドシステム、8…記憶装置、9…通信インタフェース、1D…データ及びアドレスバス、A…演奏操作子描画部、B…マルチタッチ検出機能つき表示装置、C…自動演奏部、D…楽器コア部、E…負荷制御部、F…D/A変換部、G…ソフトウェア音源部、H…負荷計測部、I…スピーカ DESCRIPTION OF SYMBOLS 1 ... CPU, 2 ... ROM, 3 ... RAM, 4,5 ... Detection circuit, 4A ... Setting operation element, 5A ... Touch panel, 6 ... Display circuit, 6A ... Display, 7 ... Sound system, 8 ... Storage device, 9 ... Communication interface, 1D ... Data and address bus, A ... Performance operator drawing unit, B ... Display device with multi-touch detection function, C ... Automatic performance unit, D ... Musical instrument core unit, E ... Load control unit, F ... D / A conversion unit, G ... software sound source unit, H ... load measurement unit, I ... speaker

Claims (3)

プロセッサによる複数の処理過程を含んでなる所定の楽音生成ソフトウェアの実行に伴い生成される楽音波形に基づいて楽音を発生する電子音楽装置であって、
画面上の複数位置へのタッチ操作を同時に検出することが可能な表示装置の前記画面上に1乃至複数の仮想演奏操作子を描画する描画手段と、
前記画面上に描画された仮想演奏操作子への1乃至複数のタッチ操作の検出に応じて該操作された仮想演奏操作子を特定し、前記特定された仮想演奏操作子に対応付けられた所定の楽音波形を生成するとともに、前記描画手段に対して前記特定された仮想演奏操作子の表示態様を変化させるよう描画制御を指示する楽音生成手段と、
前記タッチ操作の検出時に前記楽音生成手段における楽音波形生成に係る処理負荷を計測する負荷計測手段と、
前記計測した処理負荷に応じて有効とする同時タッチ数の制限値の増減を行い、前記検出される1乃至複数のタッチ操作のうち前記増減された同時タッチ数の制限値までは前記楽音波形生成及び前記描画制の指示を行い、また、前記制限値を超えるタッチ操作に対しては前記描画制御の指示を行わないよう前記楽音生成手段に対して指示する負荷制御手段と
を備える電子音楽装置。
An electronic music apparatus for generating a musical sound based on a musical sound waveform generated in accordance with execution of predetermined musical sound generation software including a plurality of processing steps by a processor,
Drawing means for drawing one or more virtual performance operators on the screen of the display device capable of simultaneously detecting touch operations on a plurality of positions on the screen;
In response to detection of one or more touch operations on the virtual performance operator drawn on the screen, the operated virtual performance operator is identified, and a predetermined associated with the identified virtual performance operator Musical tone generation means for instructing drawing control to change the display mode of the specified virtual performance operator with respect to the drawing means,
Load measuring means for measuring a processing load related to musical sound waveform generation in the musical sound generating means when detecting the touch operation;
The limit value of the number of simultaneous touches that are valid is increased or decreased according to the measured processing load, and the musical tone waveform is increased up to the limit value of the increased or decreased number of simultaneous touches among the detected one or more touch operations . performs generation and the drawing Esei control instruction, also, electrons above relative to the limiting value touched more than and a load control means for instructing to the musical tone generating means so as not to perform the instruction of the drawing control Music device.
前記負荷制御手段は、前記計測される処理負荷に応じて予め決められているタッチ操作の制限に従って前記検出される1乃至複数のタッチ操作のうち一部を無効化し、該無効化された一部を除く有効なタッチ操作のみに応じて楽音波形を生成するよう前記楽音生成手段に対して指示することを特徴とする請求項1に記載の電子音楽装置。   The load control unit invalidates a part of the detected one or more touch operations according to a restriction of a touch operation determined in advance according to the measured processing load, and the invalidated part The electronic music apparatus according to claim 1, wherein the musical sound generation unit is instructed to generate a musical sound waveform only in accordance with an effective touch operation except for the music sound. コンピュータに、
画面上の複数位置へのタッチ操作を同時に検出することが可能な表示装置の前記画面上に1乃至複数の仮想演奏操作子を描画する手順と、
前記画面上に描画された仮想演奏操作子への1乃至複数のタッチ操作の検出に応じて該操作された仮想演奏操作子を特定し、前記特定された仮想演奏操作子に対応付けられた所定の楽音波形を生成するとともに、前記特定された仮想演奏操作子の表示態様を変化させるように描画制御を指示する手順と、
前記タッチ操作の検出時に前記楽音波形生成に係る処理負荷を計測する手順と、
前記計測した処理負荷に応じて有効とする同時タッチ数の制限値の増減を行い、前記検出される1乃至複数のタッチ操作のうち前記増減された同時タッチ数の制限値までは前記楽音波形生成及び前記表示態様を変化させる画制を行い、また、前記制限値を超えるタッチ操作に対しては前記表示態様を変化させる描画制御を行わないように制御する手順と
実行させるプログラム。
On the computer,
Drawing one or more virtual performance operators on the screen of the display device capable of simultaneously detecting touch operations to a plurality of positions on the screen;
In response to detection of one or more touch operations on the virtual performance operator drawn on the screen, the operated virtual performance operator is identified, and a predetermined associated with the identified virtual performance operator Generating a musical sound waveform and instructing drawing control to change the display mode of the specified virtual performance operator;
A procedure for measuring a processing load related to the musical sound waveform generation upon detection of the touch operation;
The limit value of the number of simultaneous touches that are valid is increased or decreased according to the measured processing load, and the musical tone waveform is reduced to the increased or decreased number of simultaneous touches among the detected one or more touch operations . generating and performs control drawing Esei changing the display mode, also, the program to be executed to the procedure for controlling so as not to perform the drawing control to change the display mode for the touch operation exceeds the limit value.
JP2010194387A 2010-08-31 2010-08-31 Electronic music apparatus and program Expired - Fee Related JP5821170B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010194387A JP5821170B2 (en) 2010-08-31 2010-08-31 Electronic music apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010194387A JP5821170B2 (en) 2010-08-31 2010-08-31 Electronic music apparatus and program

Publications (2)

Publication Number Publication Date
JP2012053185A JP2012053185A (en) 2012-03-15
JP5821170B2 true JP5821170B2 (en) 2015-11-24

Family

ID=45906581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010194387A Expired - Fee Related JP5821170B2 (en) 2010-08-31 2010-08-31 Electronic music apparatus and program

Country Status (1)

Country Link
JP (1) JP5821170B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018023239A1 (en) * 2016-07-31 2018-02-08 杨洁 Data acquisition method and music player of sound-effect insert technology

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018023241A1 (en) * 2016-07-31 2018-02-08 杨洁 Method for inserting sound effect on the basis of gesture, and music player

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000221983A (en) * 1999-02-02 2000-08-11 Yamaha Corp Sound source device
JP2002132262A (en) * 2000-10-23 2002-05-09 Casio Comput Co Ltd Electronic musical instrument
FR2866726B1 (en) * 2004-02-23 2006-05-26 Jazzmutant CONTROLLER BY HANDLING VIRTUAL OBJECTS ON A MULTI-CONTACT TOUCH SCREEN

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018023239A1 (en) * 2016-07-31 2018-02-08 杨洁 Data acquisition method and music player of sound-effect insert technology

Also Published As

Publication number Publication date
JP2012053185A (en) 2012-03-15

Similar Documents

Publication Publication Date Title
JP6344578B2 (en) How to play an electronic musical instrument
US8937237B2 (en) Determining the characteristic of a played note on a virtual instrument
JP5565399B2 (en) Electronic acoustic signal generator and program for realizing the control method
JP2016532903A (en) Control method for performance
JP6232850B2 (en) Touch detection device, touch detection method, electronic musical instrument, and program
JP5724231B2 (en) Electronic music apparatus and program
JP2024111240A (en) Musical sound information output device, musical sound information generating method and program
JP5821170B2 (en) Electronic music apparatus and program
JP5803705B2 (en) Electronic musical instruments
US10805475B2 (en) Resonance sound signal generation device, resonance sound signal generation method, non-transitory computer readable medium storing resonance sound signal generation program and electronic musical apparatus
JP2012103575A (en) Musical tone generating device and musical tone generating program
JP5630218B2 (en) Musical sound generation device and musical sound generation program
JP5846053B2 (en) Parameter control program and parameter control apparatus
JP4239706B2 (en) Automatic performance device and program
JP7007533B2 (en) Stringed instrument pseudo-sound generator, and stringed instrument pseudo-sound generator
JP7425558B2 (en) Code detection device and code detection program
JP3933070B2 (en) Arpeggio generator and program
JP5272599B2 (en) Electronic music apparatus and program
JP2012220884A (en) Performance evaluation device and performance evaluation program
JP4218566B2 (en) Musical sound control device and program
JP5699564B2 (en) Music application program and electronic music apparatus
JP2004170701A (en) Musical performance information recording apparatus and program
JP2013195968A (en) Sound production instructing device and program
JP2013195967A (en) Sound production instructing device and program
JP2009064049A (en) Electronic musical instrument

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140520

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150331

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150908

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150921

LAPS Cancellation because of no payment of annual fees