JP3324409B2 - Music processing method and apparatus - Google Patents

Music processing method and apparatus

Info

Publication number
JP3324409B2
JP3324409B2 JP27163996A JP27163996A JP3324409B2 JP 3324409 B2 JP3324409 B2 JP 3324409B2 JP 27163996 A JP27163996 A JP 27163996A JP 27163996 A JP27163996 A JP 27163996A JP 3324409 B2 JP3324409 B2 JP 3324409B2
Authority
JP
Japan
Prior art keywords
processing
effect
tone
tone signal
grade
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
JP27163996A
Other languages
Japanese (ja)
Other versions
JPH09160552A (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 JP27163996A priority Critical patent/JP3324409B2/en
Publication of JPH09160552A publication Critical patent/JPH09160552A/en
Application granted granted Critical
Publication of JP3324409B2 publication Critical patent/JP3324409B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、楽音信号に効果
を付与するエフェクト処理の技術分野に属し、特に、エ
フェクト処理とその他の処理とを同一のマイクロプロセ
ッサに実行させる場合の際のマイクロプロセッサ資源の
有効な配分を図ったものに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention belongs to the technical field of effect processing for giving an effect to a musical tone signal, and more particularly to a microprocessor resource for executing the effect processing and other processing by the same microprocessor. For effective distribution of

【0002】[0002]

【従来の技術】今日の電子楽器には、DSP(ディジタ
ルシグナルプロセッサ)のような、楽音信号に対して所
定または所望の効果(例えば、リバーブのような遅延系
の効果等)を付与するエフェクト処理を実行するマイク
ロプロセッサが、広く採用されている。
2. Description of the Related Art In today's electronic musical instruments, an effect processing such as a DSP (Digital Signal Processor) for giving a predetermined or desired effect (for example, a delay system effect such as reverb) to a tone signal is performed. Microprocessors that perform the following are widely adopted.

【0003】[0003]

【発明が解決しようとする課題】こうしたマイクロプロ
セッサに、エフェクト処理のみを実行させ、その他の処
理を実行させない場合には、マイクロプロセッサ資源を
すべてエフェクト処理のために利用できる。しかし、エ
フェクト付与処理とその他の処理とを並行して実行させ
たり、所定時間内にエフェクト付与処理とその他の処理
との両方を実行させたりする場合には、その他の処理に
要する演算量が時間的に変化することにより、エフェク
ト処理に要する演算量とその他の処理に要する演算量と
の合計がマイクロプロセッサの演算能力を上回ってしま
うことや、逆に、演算量の合計が演算能力を大きく下回
ってしまってマイクロプロセッサの演算能力が十分に活
かされないことがあった。
When such a microprocessor executes only the effect processing and does not execute other processing, all the microprocessor resources can be used for the effect processing. However, if the effect applying process and other processes are executed in parallel, or if both the effect applying process and other processes are executed within a predetermined time, the amount of calculation required for the other processes is time-consuming. , The sum of the amount of computation required for effect processing and the amount of computation required for other processing exceeds the computational capability of the microprocessor, or conversely, the total amount of computation falls significantly below the computational capability. In some cases, the computing power of the microprocessor was not fully utilized.

【0004】この発明は上述の点に鑑みてなされたもの
で、エフェクト処理とその他の処理とを同一のマイクロ
プロセッサで実行させる場合の際のマイクロプロセッサ
資源の有効な配分を図った方法及び装置を提供しようと
するものである。
[0004] The present invention has been made in view of the above points, and provides a method and apparatus for effectively allocating microprocessor resources when effect processing and other processing are executed by the same microprocessor. It is something to offer.

【0005】[0005]

【課題を解決するための手段】この発明に係る第1の楽
音処理方法は、供給された楽音信号に効果を付与するエ
フェクト処理と、その他の処理とを同一のマイクロプロ
セッサで実行する楽音処理方法であって、前記その他の
処理に要する演算量に応じて、前記エフェクト処理の内
容を制御する第1のステップと、供給された楽音信号に
対し、前記第1のステップで制御した内容で前記エフェ
クト処理を実行する第2のステップとを含んだことを特
徴としている。
According to a first tone processing method of the present invention, an effect process for giving an effect to a supplied tone signal and other processes are executed by the same microprocessor. A first step of controlling the contents of the effect processing in accordance with the amount of computation required for the other processing; and a step of controlling the effect of the supplied tone signal with the contents controlled in the first step. And a second step of executing processing.

【0006】また、この発明に係る第1の楽音処理装置
は、供給された楽音信号に効果を付与するエフェクト処
理と、その他の処理とを実行する処理手段と、前記その
他の処理に要する演算量に応じて、前記処理手段が実行
する前記エフェクト処理の内容を制御する制御手段とを
具えたことを特徴としている。
A first tone processing apparatus according to the present invention comprises an effect processing for giving an effect to a supplied tone signal, processing means for executing other processing, and an operation amount required for the other processing. And control means for controlling the contents of the effect processing executed by the processing means.

【0007】その他の処理に要する演算量が時間的に変
化すると、エフェクト処理の内容がその演算量に応じて
制御され、制御された内容でエフェクト処理が実行され
る。すなわち、例えばその他の処理に要する演算量が比
較的多い場合には、エフェクト処理の内容を低いグレー
ドに設定するような制御がなされることにより、低いグ
レードの内容でエフェクト処理が実行される。したがっ
て、エフェクト処理に要する演算量が少なくなるので、
その他の処理のためにマイクロプロセッサの演算能力を
多く割り当てることができる。他方、例えばその他の処
理に要する演算量が比較的少ない場合には、エフェクト
処理の内容を高いグレードに設定するような制御がなさ
れることにより、高いグレードの内容でエフェクト処理
が実行される。したがって、楽音信号に高度なエフェク
トが付与される。このようにして、マイクロプロセッサ
資源の有効な配分が図られる。
When the amount of calculation required for other processes changes with time, the content of the effect process is controlled according to the amount of calculation, and the effect process is executed with the controlled content. That is, for example, when the amount of calculation required for other processing is relatively large, control is performed such that the content of the effect processing is set to a lower grade, so that the effect processing is executed with the lower grade content. Therefore, the amount of calculation required for effect processing is reduced,
More computing power of the microprocessor can be allocated for other processing. On the other hand, for example, when the amount of calculation required for other processing is relatively small, control is performed to set the content of the effect processing to a high grade, so that the effect processing is executed with the high-grade content. Therefore, a sophisticated effect is given to the musical tone signal. In this way, an effective distribution of the microprocessor resources is achieved.

【0008】 次に、この発明に係る第2の楽音処理方
法は、供給された楽音信号に効果を付与するエフェクト
処理と、その他の処理とを同一のマイクロプロセッサで
実行する楽音処理方法であって、エフェクト種類を選択
する第1のステップと、選択されたエフェクト種類につ
いての演算のグレードを設定する第2のステップと、
給された楽音信号に対し、前記第1のステップで選択さ
れたエフェクト種類に対応するエフェクト処理を前記第
2ステップで設定された演算のグレードに応じて実行す
る第3のステップであって、該設定された演算のグレー
ドに応じて実行される前記エフェクト処理は、前記選択
されたエフェクト種類に対応する当該エフェクト処理の
アルゴリズムの一部を当該設定された演算のグレードに
従って削除することを含むものとを含んだことを特徴と
している。
Next, a second tone processing method according to the present invention is a tone processing method in which an effect process for giving an effect to a supplied tone signal and other processes are executed by the same microprocessor. , Select effect type
The first step, and the selected effect type.
A second step of setting the grade of the operation, and selecting the supplied tone signal in the first step.
Effect processing corresponding to the selected effect type
Execute according to the operation grade set in two steps
A third step, wherein the gray of the set operation is
The effect processing executed in accordance with the
Of the effect processing corresponding to the effect type
Part of the algorithm to the set operation grade
Therefore , the present invention is characterized in that it includes one that includes deletion .

【0009】 また、この発明に係る第2の楽音処理装
置は、供給された楽音信号に効果を付与するエフェクト
処理と、その他の処理とを実行する処理手段と、エフェ
クト種類を選択する操作子手段と、選択されたエフェク
ト種類についての演算のグレードを設定する手段とを具
え、前記処理手段は前記選択されたエフェクト種類に対
応するエフェクト処理を前記設定された演算のグレード
に応じて実行し、該設定された演算のグレードに応じて
実行される前記エフェクト処理は、前記選択されたエフ
ェクト種類に対応する当該エフェクト処理のアルゴリズ
ムの一部を当該設定された演算のグレードに従って削除
することを含むことを特徴としている。
Further, the second tone processing apparatus according to the present invention comprises a processing means for executing the effect process of giving an effect to the supplied tone signal and the other processing, Effects
Control means for selecting the effect type and the selected effect
Means for setting the grade of the operation for the selected effect type.
The corresponding effect processing to the set operation grade
According to the set operation grade.
The effect processing to be executed is based on the selected effect.
Algorithm for the effect processing corresponding to the effect type
Part of the program is deleted according to the set operation grade.
It is characterized by including .

【0010】演奏者がエフェクト処理のグレードを選択
的に指定すると、そのグレードに対応する内容でエフェ
クト処理が実行されることにより、楽音信号に効果が付
与される。したがって、例えば、上記第1の楽音処理方
法及び装置におけるように、その他の処理に要する演算
量に応じて演奏者がグレードを指定することや、あるい
は、効果を付与された演奏音を実際に聴きながら演奏者
がグレードを随時調整することによって、やはりマイク
ロプロセッサ資源の有効な配分が図られる。
When the performer selectively designates the grade of the effect processing, the effect processing is executed with the contents corresponding to the grade, thereby giving an effect to the musical tone signal. Therefore, for example, as in the first tone processing method and apparatus described above, the player can specify the grade according to the amount of computation required for other processing, or can actually listen to the performance sound to which the effect has been added. While the player adjusts the grade at any time, effective allocation of the microprocessor resources is also achieved.

【0011】次に、この発明に係る第3の楽音処理方法
は、供給された楽音信号に効果を付与するエフェクト処
理と、その他の処理とを同一のマイクロプロセッサで実
行する楽音処理方法であって、供給された楽音信号の音
量レベルを検出する第1のステップと、前記音量レベル
が所定の値以上である場合、前記楽音信号に対して前記
エフェクト処理を実行し、他方、前記音量レベルが前記
所定の値未満の場合、前記楽音信号に対する前記エフェ
クト処理を省略する第2のステップとを含んだことを特
徴としている。
Next, a third tone processing method according to the present invention is a tone processing method in which effect processing for giving an effect to a supplied tone signal and other processing are executed by the same microprocessor. A first step of detecting a volume level of a supplied tone signal; and, if the volume level is equal to or more than a predetermined value, performing the effect processing on the tone signal. A second step of omitting the effect processing on the tone signal when the value is less than a predetermined value.

【0012】また、この発明に係る第3の楽音処理装置
は、供給された楽音信号の音量レベルを検出する検出手
段と、前記楽音信号に効果を付与するエフェクト処理
と、その他の処理とを実行する処理手段と、前記検出手
段によって検出された音量レベルが所定の値未満である
場合、前記エフェクト処理の実行を省略することを前記
処理手段に指示する指示手段とを具えたことを特徴とし
ている。
A third tone processing apparatus according to the present invention executes a detecting means for detecting a volume level of a supplied tone signal, an effect process for giving an effect to the tone signal, and other processes. And a command unit for instructing the processing unit to omit the execution of the effect process when the volume level detected by the detection unit is less than a predetermined value. .

【0013】楽音信号が供給されると、その楽音信号の
音量レベルが検出され、検出した音量レベルが所定の値
未満の場合には、その楽音信号に対するエフェクト処理
が省略される。したがって、音量レベルが所定の値未満
の場合(例えば、非発音時のように音量レベルがゼロあ
るいは非常に小さい値の場合)には、エフェクト処理の
ためにマイクロプロセッサの演算能力を浪費することな
く、その他の処理のためにマイクロプロセッサの演算能
力をすべて割り当てることができる。これにより、やは
りマイクロプロセッサ資源の有効な配分が図られる。
When a tone signal is supplied, the volume level of the tone signal is detected. If the detected volume level is less than a predetermined value, the effect processing for the tone signal is omitted. Therefore, when the volume level is less than a predetermined value (for example, when the volume level is zero or a very small value such as when no sound is generated), the processing power of the microprocessor is not wasted for effect processing without wasting. , All the computing power of the microprocessor can be allocated for other processing. As a result, effective allocation of the microprocessor resources is also achieved.

【0014】[0014]

【発明の実施の形態】以下、添付図面を参照してこの発
明の実施の形態を詳細に説明する。以下の説明では、ハ
ードウェアとしての音源LSIとDSPとに替えて、楽
音信号を生成する楽音生成処理を記述したコンピュータ
プログラムと、エフェクト処理を記述したコンピュータ
プログラムとの両方を、CPU(セントラルプロセッシ
ングユニット)に実行させるようにしたものにこの発明
を適用している。ここでは、このような楽音生成処理方
式とエフェクト処理方式とを総称して、CPU音源ある
いはソフトウェア音源と呼ぶことにする。
Embodiments of the present invention will be described below in detail with reference to the accompanying drawings. In the following description, both a computer program describing a tone generation process for generating a tone signal and a computer program describing an effect process are replaced by a CPU (Central Processing Unit) in place of a sound source LSI and DSP as hardware. ) Is applied to the present invention. Here, such a tone generation processing method and an effect processing method are collectively referred to as a CPU sound source or a software sound source.

【0015】図1は、この発明を適用したソフトウェア
音源を搭載した電子楽器18の全体構成ブロック図であ
る。この電子楽器18は、例えばパーソナルコンピュー
タベースで構成されており、演奏者の演奏に応じて他の
MIDI楽器(図示せず)から出力されるMIDI形式
の演奏情報に基づき、楽音生成処理(該MIDI情報が
指示するピッチと音色等の楽音特性を持つ楽音波形デー
タを生成する処理)及びエフェクト処理(該MIDI情
報が指示する又はパネル操作によって指示された絵ふぇ
くとを該楽音に付与する処理)をパーソナルコンピュー
タのCPU1に実行させるコンピュータミュージックシ
ステムである。
FIG. 1 is a block diagram showing the overall configuration of an electronic musical instrument 18 equipped with a software sound source to which the present invention is applied. The electronic musical instrument 18 is composed of, for example, a personal computer base, and based on performance information in a MIDI format output from another MIDI musical instrument (not shown) in accordance with the performance of the player, a musical tone generation process (the MIDI A process of generating tone waveform data having tone characteristics such as a pitch and a tone indicated by the information) and an effect process (a process of adding a picture indicated by the MIDI information or indicated by a panel operation to the tone) ) Is executed by the CPU 1 of the personal computer.

【0016】CPU1には、MIDI楽器に接続される
MIDIのインターフェース2,ROM(リードオンリ
ーメモリ)3,RAM(ランダムアクセスメモリ)4,
タイマ5,キーボード6,ディスプレイ7,ハードディ
スク装置8,及びDMA(ダイレクトメモリアクセス)
回路9が、データ及びアドレスバス10を介して接続さ
れている。ハードディスク装置8には、演奏情報に応じ
て読み出されて適宜加工される音色データ(例えば、P
CM方式で記録した波形データ等)が記録されている。
RAM4には、生成されて効果を付与された楽音信号を
一時的に記憶させるための記憶領域等が設けられてい
る。
The CPU 1 includes a MIDI interface 2, a ROM (read only memory) 3, a RAM (random access memory) 4,
Timer 5, keyboard 6, display 7, hard disk drive 8, and DMA (direct memory access)
Circuit 9 is connected via a data and address bus 10. The hard disk device 8 stores tone color data (for example, P
Waveform data recorded by the CM system).
The RAM 4 is provided with a storage area and the like for temporarily storing a generated tone signal to which an effect is added.

【0017】DMA回路9は、RAM4に一時記憶され
た楽音信号を、D/A(ディジタル/アナログ)変換器
11の再生サンプリング周波数(一例として48kHz
とする)に合わせてダイレクトメモリアクセス方式で1
サンプルずつ順次RAM4から読み出してD/A変換器
11に送る再生処理を実行するものである。DMA回路
9は、一例として、128サンプルの楽音信号を単位と
してこの再生処理を実行する。DMA回路9は、各単位
の楽音信号に対する再生処理を開始する毎に、所定のフ
ラグを立てるようになっている。D/A変換器11でア
ナログ信号に変換された楽音信号は、サウンドシステム
12に供給されて音響的に発音される。
The DMA circuit 9 converts the musical tone signal temporarily stored in the RAM 4 into a reproduction sampling frequency (for example, 48 kHz) of a D / A (digital / analog) converter 11.
1) according to the direct memory access method
The reproduction process is sequentially performed by reading out the samples from the RAM 4 and sending the samples to the D / A converter 11. As an example, the DMA circuit 9 executes this reproduction process in units of a 128-sample tone signal. The DMA circuit 9 sets a predetermined flag each time the reproduction process for the tone signal of each unit is started. The tone signal converted into an analog signal by the D / A converter 11 is supplied to a sound system 12 and acoustically generated.

【0018】また、ハードディスク8には、波形データ
に限らず、自動演奏データやコード進行データ等の各種
データを記憶していてもよく、更に前記動作プログラム
を記憶するようにしてもよい。前記ROM3に前記動作
プログラムを記憶せずに、ハードディスク8に該動作プ
ログラムを記憶させておき、それをRAM4に読み込む
ことにより、ROM3に動作プログラムを記憶したとき
と同様の動作をCPU1に行わせることができる。この
ようにすると、動作プログラムの追加やバージョンアッ
プ等が容易に行える。着脱自在な外部記録媒体の1つと
して、CD−ROM(コンパクト・ディスク)13を使
用してもよく、このCD−ROM13には上記と同様に
自動演奏データやコード進行データや楽音波形データ等
の各種データおよび任意の動作プログラムを記憶してい
てよい。CD−ROM13に記憶されている動作プログ
ラムや各種データは、CD−ROMドライブ14によっ
て読み出され、ハードディスク8に転送記憶させること
ができる。これにより、動作プログラムの新規のインス
トールやバージョンアップを容易に行うことができる。
勿論、外部記録媒体として使用できるのは、CD−RO
Mに限らず、フロッピーディスク、光磁気ディスク(M
O)等適宜のものを使用できる。
The hard disk 8 may store not only waveform data but also various data such as automatic performance data and chord progression data, and may further store the operation program. By storing the operation program in the hard disk 8 without storing the operation program in the ROM 3 and reading the operation program into the RAM 4, the CPU 1 can perform the same operation as when the operation program is stored in the ROM 3. Can be. By doing so, it is possible to easily add an operation program or upgrade the version. As one of the detachable external recording media, a CD-ROM (compact disk) 13 may be used. The CD-ROM 13 stores automatic performance data, chord progression data, musical sound waveform data, and the like in the same manner as described above. Various data and an arbitrary operation program may be stored. The operation programs and various data stored in the CD-ROM 13 are read out by the CD-ROM drive 14 and can be transferred and stored in the hard disk 8. This makes it possible to easily perform new installation and version upgrade of the operation program.
Of course, CD-RO can be used as an external recording medium.
M, floppy disk, magneto-optical disk (M
O) and the like can be used.

【0019】更に、通信インタフェース15をバス10
に接続し、該通信インタフェース15を介してLAN
(ローカルエリアネットワーク)やインターネット、電
話回線等の通信ネットワーク16に接続できるように
し、該通信ネットワーク16を介して適宜のサーバコン
ピュータ17と接続されるようにしてもよい。これによ
り、ハードディスク8内に動作プログラムや各種データ
が記憶されていないような場合、サーバコンピュータ1
7から該動作プログラムや各種データを受入れて該ハー
ドディスク8内にこれらをダウンロードすることができ
る。その場合、クライアントとなる電子楽器18より、
通信インタフェース15および通信ネットワーク16を
介してサーバコンピュータ17に動作プログラムや各種
データのダウンロードを要求するコマンドを送信する。
サーバコンピュータ17は、このコマンドを受け、要求
された動作プログラムやデータを、通信ネットワーク1
6を介して電子楽器18へと配信する。電子楽器18で
は、通信インタフェース15を介してこれらの動作プロ
グラムやデータを受信して、ハードディスク8にこれら
を蓄積することにより、ダウンロードが完了する。
Further, the communication interface 15 is connected to the bus 10
And through the communication interface 15 to the LAN
(Local Area Network), the Internet, a telephone line, or other communication network 16, and an appropriate server computer 17 may be connected via the communication network 16. Thus, when the operation program and various data are not stored in the hard disk 8, the server computer 1
7, the operation program and various data can be received and downloaded to the hard disk 8. In that case, from the electronic musical instrument 18 serving as the client,
A command requesting download of an operation program and various data is transmitted to the server computer 17 via the communication interface 15 and the communication network 16.
Upon receiving this command, the server computer 17 transmits the requested operation program and data to the communication network 1.
6 to the electronic musical instrument 18. The electronic musical instrument 18 receives these operation programs and data via the communication interface 15 and stores them in the hard disk 8 to complete the download.

【0020】なお、本発明の実施例に係る電子楽器18
は、市販のパーソナルコンピュータを使用して、これに
本発明に対応する動作プログラムや各種データをインス
トールすることにより実現するようにしてもよい。その
場合には、本発明に対応する動作プログラムや各種デー
タを、CD−ROMやフロッピーディスク等の、パーソ
ナルコンピュータが読み込むことのできる記憶媒体、に
記憶させた状態で、ユーザに提供する。そのパーソナル
コンピュータがLAN等の通信ネットワークに接続され
ている場合には、上述と同様に、該通信ネットワークを
介して、動作プログラムや各種データを該パーソナルコ
ンピュータに提供してもよい。
The electronic musical instrument 18 according to the embodiment of the present invention.
May be realized by using a commercially available personal computer and installing an operation program and various data corresponding to the present invention. In that case, the operating program and various data corresponding to the present invention are provided to the user in a state of being stored in a storage medium, such as a CD-ROM or a floppy disk, which can be read by a personal computer. When the personal computer is connected to a communication network such as a LAN, the operation program and various data may be provided to the personal computer via the communication network as described above.

【0021】図2は、ソフトウェア音源の基本原理を示
した図である。CPU1は、所定の時間長の区間を単位
として、各区間内に入力したMIDIインタフェース2
からの演奏情報に基づき、それぞれ当該区間の次の区間
に、同時に生成すべき楽音数に応じた発音チャンネル数
での楽音生成処理と、生成した楽音信号に対するエフェ
クト処理とを実行する。DMA回路9は、こうして各区
間毎に生成されて効果を付与された楽音信号を単位とし
て、それぞれ当該区間の次の区間に再生処理を実行す
る。(例えば、時刻T1からT2までの区間に入力した
演奏情報に基づき、時刻T2からT3までの区間に楽音
生成処理を実行し、時刻T3からT4までの区間に再生
処理を実行する。)したがって、1区間の長さは、DM
A回路9が再生処理の1単位とするサンプル数と再生サ
ンプリング周期との積であり、前述の例では128÷4
8000≒0.0027秒となる。
FIG. 2 is a diagram showing the basic principle of a software sound source. The CPU 1 receives the MIDI interface 2 input in each section in units of a predetermined time length.
Based on the performance information from, the tone generation process with the number of sound channels corresponding to the number of tones to be simultaneously generated and the effect process on the generated tone signal are executed in the next section of the section. The DMA circuit 9 executes a reproduction process in a section next to the section in units of a tone signal generated and effected for each section in this way. (For example, based on the performance information input in the section from time T1 to T2, the tone generation processing is executed in the section from time T2 to T3, and the reproduction processing is executed in the section from time T3 to T4.) The length of one section is DM
This is the product of the number of samples taken as one unit of the reproduction processing by the A circuit 9 and the reproduction sampling period. In the above example, 128 ÷ 4
8000 ≒ 0.0027 seconds.

【0022】そして、再生処理は、楽音を切れ目なく発
音させるために各区間毎に途切れることなく連続して実
行する必要があるので、CPU1は、DMA回路9が各
区間で再生処理を実行する128サンプルの楽音信号に
ついては、必ずその直前の区間内に楽音生成処理及びエ
フェクト処理を完了している必要がある。しかし、楽音
生成処理に要する演算量は、入力する演奏情報に応じて
発音チャンネル数が時間的に変化すること等により、区
間毎に大きく変動するという特徴を有している。(これ
に対し、エフェクト処理に要する演算量は、各発音チャ
ンネルで生成した信号を累算した信号に対して実行する
ので、発音チャンネル数によって変動することはな
い。)また、CPU1は、このソフトウェア音源の処理
を、他のアプリケーションソフトの処理と並行してマル
チタスクで実行しなければならない。
Since the reproduction process needs to be executed continuously without interruption for each section in order to generate the musical sound without interruption, the CPU 1 causes the DMA circuit 9 to execute the reproduction process in each section 128. For the sample tone signal, the tone generation process and the effect process must be completed within the immediately preceding section. However, the amount of calculation required for the musical sound generation processing has a feature that it greatly fluctuates in each section due to, for example, a temporal change in the number of sounding channels according to input performance information. (On the other hand, the amount of calculation required for the effect processing is performed on the signal generated by accumulating the signals generated in each sounding channel, and therefore does not vary depending on the number of sounding channels.) The processing of the sound source must be executed in multitasking in parallel with the processing of other application software.

【0023】以上がソフトウェア音源の基本原理であ
る。但し、ソフトウェア音源の動作タイミングは、厳密
に図2に示したとおりである必要はない。すなわち、例
えば、連続する所定数の区間内に入力した演奏情報に基
づく楽音生成処理及びエフェクト処理を、1つの区間に
おいてまとめて実行するようにしてもよく、更に、上記
所定数の大きさを、時間の経過に伴って変化させるよう
にしてもよい。この電子楽器は、このような他のアプリ
ケーションソフトの処理に要する演算量や、楽音生成処
理に要する演算量に応じて、エフェクト処理の内容を制
御することにより、CPU資源の有効な配分を図りつ
つ、こうしたソフトウェア音源における楽音生成処理及
びエフェクト処理を実行しようとするものである。次
に、この楽音生成処理の一例を、図3以下を参照して説
明することにする。
The above is the basic principle of the software sound source. However, the operation timing of the software sound source need not be exactly as shown in FIG. That is, for example, the musical sound generation processing and the effect processing based on the performance information input within a predetermined number of continuous sections may be collectively executed in one section. It may be changed over time. In this electronic musical instrument, the content of the effect processing is controlled in accordance with the amount of calculation required for processing of such other application software and the amount of calculation required for musical tone generation processing, thereby effectively allocating CPU resources. It is intended to execute a tone generation process and an effect process in such a software sound source. Next, an example of the tone generation processing will be described with reference to FIG.

【0024】図3は、CPU1の実行するメインルーチ
ンを示すフローチャートである。メインルーチンでは、
所定の初期設定(ステップS1)の後、RAM4内の入
力バッファに受信データが記憶されているか否かを判断
し(ステップS2)、記憶されていれば、受信データ処
理を実行する(ステップS3)。受信データ処理には、
例えば、MIDIインタフェース2からのノートオン信
号に基づくノートオンイベント処理や、MIDIインタ
フェース2からのノートオフ信号に基づくノートオフイ
ベント処理等が含まれる。
FIG. 3 is a flowchart showing a main routine executed by the CPU 1. In the main routine,
After the predetermined initialization (step S1), it is determined whether or not the received data is stored in the input buffer in the RAM 4 (step S2). If the received data is stored, the received data processing is executed (step S3). . For receiving data processing,
For example, note-on event processing based on a note-on signal from the MIDI interface 2 and note-off event processing based on a note-off signal from the MIDI interface 2 are included.

【0025】続いて、キーボード6上に設けられたパネ
ルスイッチの操作イベントの有無を判断し(ステップS
4)、操作イベントがあれば、パネルスイッチイベント
処理を実行する(ステップS5)。パネルスイッチイベ
ント処理には、例えば、音色選択スイッチの操作に基づ
く音色選択処理や、エフェクトスイッチの操作に基づく
エフェクトの種類の選択処理等が含まれる。続いて、楽
音信号を生成する「音源処理」(ステップS6)と、そ
の他の処理(ステップS7)とを実行し、以下、ステッ
プS2乃至ステップS7の処理を繰り返す。
Subsequently, it is determined whether there is an operation event of a panel switch provided on the keyboard 6 (step S).
4) If there is an operation event, a panel switch event process is executed (step S5). The panel switch event process includes, for example, a tone color selection process based on an operation of a tone color selection switch, a process of selecting an effect type based on an operation of an effect switch, and the like. Subsequently, "sound source processing" (step S6) for generating a tone signal and other processing (step S7) are executed, and thereafter, the processing of steps S2 to S7 is repeated.

【0026】ステップS3の受信データ処理は、MID
Iインタフェース2からの受信データが入力バッファに
書き込まれたことを条件としてステップS2でイエスと
判断されて開始されるが、この書込みは、MIDI2か
らの受信データが発生する都度に、図4に示す「最優先
の割込み処理」を実行することによって行なわれる。こ
の割込み処理では、受信データが発生すると、最初のス
テップS11で、当該受信データを取り込む。続くステ
ップS12では、取り込んだ受信データを、現在の時刻
を示す時刻データとともにRAM4内の入力バッファに
書き込む。時刻データを書き込む理由は、受信データの
入力バッファへの書込みは、受信データが発生する都度
直ちに行なうが、入力バッファに書き込んだ受信データ
に対するメインルーチンでの処理は、直ちに実行するわ
けではないので、いつ発生した受信データかを識別でき
るようにしておくことにある。図5は、入力バッファの
記憶領域の一例を示す。この例では、受信データを1件
毎に時刻データとともに書き込む領域である「データ
1」,「データ2」,「データ3」…と、受信データの
件数を書き込む領域である「イベント数」とが設けられ
ている。
The received data processing in step S3 is performed by the MID
The determination is started in step S2 on the condition that the data received from the I interface 2 has been written into the input buffer, and the writing is started as shown in FIG. 4 every time the data received from the MIDI 2 is generated. This is performed by executing the “highest priority interrupt processing”. In this interrupt processing, when received data is generated, the received data is fetched in a first step S11. In a succeeding step S12, the received reception data is written into an input buffer in the RAM 4 together with time data indicating the current time. The reason for writing the time data is that the writing of the received data to the input buffer is performed immediately each time the received data is generated, but the processing in the main routine for the received data written to the input buffer is not performed immediately. The purpose is to be able to identify when received data has occurred. FIG. 5 shows an example of the storage area of the input buffer. In this example, “data 1”, “data 2”, “data 3”, which are areas for writing received data together with time data for each case, and “event number”, an area for writing the number of received data, are included. Is provided.

【0027】次に、受信データ処理のうちのノートオン
イベント処理の一例を、図6に示す。この処理では、最
初のステップS21で、入力バッファから、ノートナン
バ,ベロシティ及び音色パートを示すデータと時刻デー
タとを読み出してそれぞれ所定のレジスタに格納する。
続くステップS22では、上記ノートナンバに対応する
楽音信号を発生すべき発音チャンネルの割当てを行な
う。続くステップS23では、パネルスイッチイベント
処理(図3のステップS5)のうちの音色選択処理によ
って予め上記音色パートについて選択された音色データ
をRAM4の音色データ領域から読み出し、その音色デ
ータを上記ノートナンバ及びベロシティに応じて加工す
る。図7は、ハードディスク装置9から読み出されてR
AM4の音色データ領域に記憶された音色データの内容
の一例を示す。この例では、音色データには、所定音域
毎の複数周期分の波形データ,エンベロープを制御する
データ,タッチを制御するデータ及びその他のデータが
含まれている。
FIG. 6 shows an example of the note-on event process in the received data process. In this process, in the first step S21, data indicating the note number, velocity and tone color part and time data are read from the input buffer and stored in predetermined registers.
In the following step S22, a tone generation channel for generating a tone signal corresponding to the note number is assigned. In the following step S23, the timbre data previously selected for the timbre part by the timbre selection process of the panel switch event process (step S5 in FIG. 3) is read out from the timbre data area of the RAM 4, and the timbre data is stored in the note number and the note number. Process according to velocity. FIG. 7 shows an example of the R
An example of the content of the tone color data stored in the tone color data area of AM4 is shown. In this example, the timbre data includes waveform data for a plurality of cycles for each predetermined tone range, data for controlling the envelope, data for controlling the touch, and other data.

【0028】続くステップS24では、加工した音色デ
ータ(楽音信号生成アルゴリズムを示すデータ及びピッ
チを制御するデータを含む)を、時刻データとともにR
AM4内の当該発音割当てされた発音チャンネル用の音
源レジスタに書き込む、最後にステップS25で、ノー
トオンを示すデータを当該音源レジスタに書き込む。そ
してリターンする。図8は、音源レジスタの記憶領域の
一例を示す。この例では、32チャンネル分の音源レジ
スタが用意されており、各音源レジスタに、ノートナン
バ,波形データ,エンベロープ制御データ、ノートオ
ン,時刻データ及びその他データを書き込む領域と、ワ
ーキングエリアとが設けられている。その他のデータに
は、パネルスイッチイベント処理で選択されたエフェク
トのアルゴリズムを示すデータ等が含まれる。
In the following step S24, the processed timbre data (including the data indicating the tone signal generation algorithm and the data for controlling the pitch) is added to the R data together with the time data.
Writing to the tone generator register for the tone generation channel assigned to the tone generation in AM4. Finally, in step S25, data indicating note-on is written to the tone generator register. And return. FIG. 8 shows an example of a storage area of the tone generator register. In this example, tone generator registers for 32 channels are provided, and each tone generator register is provided with an area for writing note number, waveform data, envelope control data, note-on, time data, and other data, and a working area. ing. The other data includes data indicating the algorithm of the effect selected in the panel switch event processing.

【0029】次に、「音源処理」(図3のステップS
6)の一例を、図9に示す。この処理では、最初のステ
ップS31で、各発音チャンネル用の音源レジスタ(図
8参照)の記憶内容をチェックし、続くステップS32
で、いずれかの発音チャンネル用の音源レジスタに新規
の書込みがあったか否かを判断する。ノートオンイベン
ト処理(図6)等が実行されたことによって新規の書込
みが行なわれた音源レジスタがあれば、ステップS33
に進み、その音源レジスタ内のデータを、現在の区間の
次の区間での楽音生成処理及びエフェクト処理の対象と
して予約する。そしてステップS34に進む。他方、新
規の書込みがなければ、ステップS32からそのままス
テップS34に進む。
Next, "sound source processing" (step S in FIG. 3)
FIG. 9 shows an example of 6). In this process, in the first step S31, the contents stored in the tone generator register (see FIG. 8) for each sounding channel are checked, and the subsequent step S32
Then, it is determined whether or not there has been any new writing in the tone generator register for any of the tone generation channels. If there is a tone generator register in which new writing has been performed due to execution of the note-on event processing (FIG. 6) and the like, step S33
The data in the tone generator register is reserved as a target of the tone generation processing and the effect processing in the section next to the current section. Then, the process proceeds to step S34. On the other hand, if there is no new writing, the process proceeds directly from step S32 to step S34.

【0030】ステップS34では、DMA回路10が1
28サンプル分の楽音信号に対する再生処理を開始する
毎(すなわち、各区間からその次の区間に移行した毎)
に立てる前述のフラグをチェックする。続いてステップ
S35では、フラグが立っているか否か(すなわち、新
たな区間に移行したか否か)を判断する。
In step S34, the DMA circuit 10
Every time the reproduction process for the tone signal for 28 samples is started (that is, each time the section is shifted to the next section).
Check the aforementioned flag to set. Subsequently, in a step S35, it is determined whether or not the flag is set (that is, whether or not a transition to a new section is made).

【0031】フラグが立っていなければ、そのままリタ
ーンし、フラグが立つまで、メインルーチンのステップ
S7,S2乃至S5の処理(図3)と「音源処理」のス
テップS31乃至S35の処理とを繰り返す。フラグが
立つと、ステップS35からステップS36に進み、当
該区間でのソフトウェア音源の処理に要する最大演算量
(楽音生成処理に要する演算量と、パネルスイッチイベ
ント処理(図3)で選択された種類のエフェクト処理の
内容を最も高いグレードに設定した場合にそのエフェク
ト処理に要する演算量との合計)を算出する。この最大
演算量は、一例として、ステップS33で予約を行なっ
た発音チャンネルの数に比例する量として算出するよう
にすればよい。そして、算出した最大演算量と、1区間
においてソフトウェア音源の処理のために許容される演
算量とに応じて、一部の発音チャンネルの発音の制御
(最大演算量が許容演算量を上回る場合に、一部の発音
チャンネルの発音を消音すること)と、エフェクト処理
の内容の制御との、いずれか一方または両方を行なう。
If the flag is not set, the routine returns as it is, and the processing of steps S7, S2 to S5 of the main routine (FIG. 3) and the processing of steps S31 to S35 of the "sound source processing" are repeated until the flag is set. When the flag is set, the process proceeds from step S35 to step S36, where the maximum operation amount required for processing the software sound source in the section (the operation amount required for the musical sound generation process and the type of the type selected in the panel switch event process (FIG. 3)) When the content of the effect processing is set to the highest grade, the total of the effect processing and the calculation amount required for the effect processing is calculated. For example, the maximum calculation amount may be calculated as an amount proportional to the number of sounding channels reserved in step S33. Then, depending on the calculated maximum operation amount and the operation amount permitted for processing the software sound source in one section, control of the sound generation of some sounding channels (when the maximum operation amount exceeds the allowable operation amount, And / or mute the sound of some of the sound channels) and / or control the contents of the effect processing.

【0032】ところで、エフェクト処理は、楽音生成処
理と比較して、処理内容を低いグレードに設定しても聴
感上の影響が生じる度合いが小さいという利点があるの
で、その点からは、エフェクト処理の内容の制御を行な
うことが好適である。したがって、ここでは、エフェク
ト処理の内容の制御のみを行なうものとして説明を進め
る。但し、エフェクト処理の内容の制御には、処理内容
が増加または減少されるまでに或る程度の移行時間がか
かってしまうのに対し、発音チャンネルの制御のほうに
は、直ちに消音処理を完了することができるという利点
がある。そこで、緊急に制御を行なう必要がある場合に
は、発音チャンネルの発音の制御のほうを優先的に行な
うべきである。
By the way, the effect processing has an advantage that, even if the processing content is set to a lower grade, the degree of the effect on the audibility is small as compared with the musical sound generation processing. It is preferable to control the contents. Therefore, the description will be given here assuming that only the content of the effect processing is controlled. However, control of the contents of the effect processing requires a certain transition time until the contents of the processing are increased or decreased, whereas control of the sound generation channel immediately completes the mute processing. There is an advantage that can be. Therefore, when the control needs to be performed urgently, the control of the sound generation of the sound generation channel should be performed with priority.

【0033】尚、ここでは、1区間においてソフトウェ
ア音源の処理のために許容される演算量は、CPU1の
演算能力と、CPU1がソフトウェア音源の処理と並行
して実行するアプリケーションソフトの処理に要する演
算量とに応じて決定するものとする。したがって、アプ
リケーションソフトの種類が異なれば許容演算量も異な
ってくる。また、アプリケーションソフトの種類が同じ
であっても、必要な演算量は時間的に変動することがあ
るので、許容演算量を幾分少なめに設定して余裕をもた
せておくことが望ましい。
In this case, the amount of operation allowed for processing of the software sound source in one section depends on the operation capability of the CPU 1 and the operation required for processing of application software executed by the CPU 1 in parallel with the processing of the software sound source. It shall be determined according to the quantity. Therefore, if the type of application software is different, the allowable calculation amount is different. Further, even if the type of application software is the same, the required amount of calculation may fluctuate over time. Therefore, it is desirable to set the allowable amount of calculation to be slightly smaller so as to provide a margin.

【0034】但し、別の例として、この許容演算量を、
CPU1の演算能力の範囲内で演奏者が任意に設定でき
るようにしてもよい。更に、演奏の進行に応じて許容演
算量が時間的に変化するように、許容演算量の変化特性
を演奏者が任意に設定できるようにしてもよい。
However, as another example, this allowable calculation amount is
The player may arbitrarily set the calculation within the range of the calculation capability of the CPU 1. Further, the change characteristic of the allowable calculation amount may be arbitrarily set by the player so that the allowable calculation amount changes with time according to the progress of the performance.

【0035】図10は、エフェクト処理の内容の制御を
概念的に説明するために、許容演算量と、ソフトウェア
音源の処理に要する演算量と、楽音生成処理に要する演
算量と、エフェクト処理に要する演算量との関係を示し
た図である。ソフトウェア音源の処理に要する最大演算
量Z(楽音生成処理に要する演算量Yと、エフェクト処
理の内容を最も高いグレードに設定した場合にエフェク
ト処理に要する演算量B1との合計)が、ソフトウェア
音源の処理のための許容演算量Aを上回っていない範囲
(X0からX1までの範囲)では、エフェクト処理のグ
レードを最も高く設定する。
FIG. 10 is a conceptual diagram for explaining the control of the contents of the effect processing. The allowable operation amount, the operation amount required for processing the software sound source, the operation amount required for the musical sound generation processing, and the operation amount required for the effect processing are described. FIG. 3 is a diagram illustrating a relationship with a calculation amount. The maximum operation amount Z required for processing the software sound source (the sum of the operation amount Y required for the tone generation process and the operation amount B1 required for the effect processing when the effect processing content is set to the highest grade) is equal to the software sound source. In a range not exceeding the allowable calculation amount A for processing (a range from X0 to X1), the grade of the effect processing is set to the highest.

【0036】楽音生成処理に要する演算量Yが多いため
に最大演算量Zが許容演算量Aを上回っているが、Zと
Aとの差が、B1とエフェクト処理の内容を2番目に高
いグレードに設定した場合にエフェクト処理に要する演
算量B2との差より大きくない範囲(X1からX2まで
の範囲)では、エフェクト処理の内容を2番目に高いグ
レードに設定する。これにより、ソフトウェア音源の処
理に要する演算量が Z−(B1−B2)≦Z−(Z−A)=A となり、許容演算量A以内に収まるようになる。
The maximum operation amount Z exceeds the allowable operation amount A because the operation amount Y required for the tone generation processing is large, but the difference between Z and A is B2 and the effect processing contents are the second highest grade. In a range (range from X1 to X2) that is not larger than the difference from the operation amount B2 required for the effect processing when is set to 2, the content of the effect processing is set to the second highest grade. As a result, the calculation amount required for processing the software sound source is Z- (B1−B2) ≦ Z− (ZA) = A, which is within the allowable calculation amount A.

【0037】他方、最大演算量Zが許容演算量Aを上回
っており、ZとAとの差が、B1とB2との差より大き
いが、B1とエフェクト処理の内容を3番目に高いグレ
ードに設定した場合にエフェクト処理に要する演算量B
3との差より大きくない範囲(X2以降)では、エフェ
クト処理の内容を3番目に高いグレードに設定する。こ
れにより、ソフトウェア音源の処理に要する演算量が Z−(B1−B3)≦Z−(Z−A)=A となり、許容演算量A以内に収まるようになる。このよ
うにして、いずれの範囲においても、ソフトウェア音源
の処理に要する演算量が、許容演算量A以内に収まるよ
うになる。
On the other hand, the maximum operation amount Z exceeds the allowable operation amount A, and the difference between Z and A is larger than the difference between B1 and B2, but the contents of B1 and the effect processing are changed to the third highest grade. Calculation amount B required for effect processing when set
In a range not larger than the difference from 3 (X2 or later), the content of the effect processing is set to the third highest grade. As a result, the calculation amount required for processing the software sound source is Z- (B1−B3) ≦ Z− (ZA) = A, which is within the allowable calculation amount A. In this way, the calculation amount required for processing the software sound source falls within the allowable calculation amount A in any range.

【0038】次に、エフェクト処理の内容の制御の具体
的態様を、遅延系のエフェクトであるリバーブを例にと
って説明する。図11は、リバーブの全体のアルゴリズ
ムを示す。楽音生成処理によって生成された楽音信号を
記憶したバッファXL,XR,XX(XLは、エフェク
ト処理を施さずにステレオの左側の系列に送る楽音信号
用のバッファであり、XRは、エフェクト処理を施さず
にステレオの右側の系列に送る楽音信号用のバッファで
あり、XXは、エフェクト処理を施すべき楽音信号用の
バッファである)のうち、バッファXXから読み出した
楽音信号SXについて、最初に、アーリーリフレクショ
ンER1の処理を施すことにより、所定時間遅延した初
期反射音を求め(101)、該初期反射音を、バッファ
XL,XRから読み出した楽音信号SL,SRにそれぞ
れ加算する(102,103)。続いて、楽音信号SX
について更にアーリーリフレクションER2の処理を施
すことにより、再び初期反射音を求め(104)、該初
期反射音を、再び楽音信号SL,SRにそれぞれ加算す
る(105,106)。
Next, a specific mode of controlling the contents of the effect processing will be described with reference to a reverb which is a delay-type effect as an example. FIG. 11 shows the overall algorithm of reverb. Buffers XL, XR, and XX (XL is a buffer for a tone signal to be sent to the left-side sequence of the stereo without performing the effect processing, and XR is a buffer for effect processing.) XX is a buffer for the tone signal to be sent to the right stream of the stereo, and XX is a buffer for the tone signal to be subjected to the effect processing. By performing the processing of the reflection ER1, an initial reflection sound delayed by a predetermined time is obtained (101), and the initial reflection sound is added to the musical sound signals SL and SR read from the buffers XL and XR, respectively (102 and 103). Then, the tone signal SX
Is subjected to the early reflection ER2 process to obtain an initial reflected sound again (104), and the initial reflected sound is added to the tone signals SL and SR again (105 and 106).

【0039】次に、こうして遅延させた楽音信号SXに
対し、オールパスフィルタAP1及びAP2を通過させ
る処理(107,108)と、相互に遅延時間の異なる
6系統のコムフィルタCF1〜CF6を並列的に通過さ
せる処理(109〜114)とを施す。相互に遅延時間
の異なる複数系統のコムフィルタを並列的に通過させる
ようにしたのは、1系統のコムフィルタを通過させただ
けでは周波数特性が波状になってしまうので、全体とし
て周波数特性を平坦化するためであり、コムフィルタの
系統数が多いほど、この平坦化の度合いが進む。次に、
各コムフィルタCF1〜CF6を通過した楽音信号を、
ミキサMixL,MixRでそれぞれ合成することによ
り、遅延時間間隔の粗い残響音データをそれぞれ形成す
る(115,116)。
Next, the tone signal SX delayed in this way is passed through the all-pass filters AP1 and AP2 (107, 108), and the six systems of comb filters CF1 to CF6 having different delay times are connected in parallel. Processing (109-114). Passing a plurality of comb filters having different delay times from each other in parallel causes the frequency characteristics to be wavy if only one comb filter is passed. This is because the degree of flattening increases as the number of comb filter systems increases. next,
The tone signal passed through each of the comb filters CF1 to CF6 is
The reverberation data having coarse delay time intervals is formed by synthesizing the signals by the mixers MixL and MixR, respectively (115, 116).

【0040】次に、ミキサMixLで形成した残響音デ
ータに対して、コムフィルタCF1〜CF6よりも遅延
時間の短いオールパスフィルタAP3及びAP5を通過
させる処理を施すことにより、遅延時間間隔の密な残響
音データを形成し(117,119)、その残響音デー
タを楽音信号SLに加算する(121)。また、Mix
Rで形成した残響音データに対して、コムフィルタCF
1〜CF6よりも遅延時間の短いオールパスフィルタA
P4及びAP6を通過させる処理を施すことにより、遅
延時間間隔の密な残響音データを形成し(118,12
0)、その残響音データを楽音信号SRに加算する(1
22)。このように楽音信号SL,SRにそれぞれ初期
反射音と残響音とを加算することによって得られた楽音
信号SL’,SR’は、ステレオの左右2系列用の出力
バッファXL’,XR’にそれぞれ書き込まれる。
Next, the reverberation sound data formed by the mixer MixL is passed through the all-pass filters AP3 and AP5 having a shorter delay time than the comb filters CF1 to CF6, so that the reverberation with a fine delay time interval is achieved. Sound data is formed (117, 119), and the reverberation sound data is added to the tone signal SL (121). Also, Mix
Comb filter CF for the reverberation data formed by R
All-pass filter A with shorter delay time than 1 to CF6
By performing the process of passing through P4 and AP6, reverberation data with dense delay time intervals is formed (118, 12).
0), the reverberation data is added to the tone signal SR (1)
22). The tone signals SL 'and SR' obtained by adding the initial reflection sound and the reverberant sound to the tone signals SL and SR in this way are output to stereo left and right output buffers XL 'and XR', respectively. Written.

【0041】ソフトウェア音源の処理に要する最大演算
量(楽音生成処理に要する演算量と、以上のようなアル
ゴリズムの全体を実行する際に要する演算量との合計)
が、ソフトウェア音源の処理のための許容演算量を上回
っていない場合には、ステップS36では、このアルゴ
リズムをすべて実行するように設定する(すなわち、リ
バーブの内容を最も高いグレードに設定する)。他方、
最大演算量が許容演算量を上回っている場合には、アル
ゴリズムの一部のブロックを次のような順序で段階的に
削除していくことにより、リバーブの内容を段階的に低
いグレードに設定していく。
Maximum calculation amount required for processing the software sound source (the sum of the calculation amount required for the tone generation process and the calculation amount required for executing the entire algorithm as described above)
However, if it does not exceed the allowable operation amount for processing the software sound source, in step S36, the algorithm is set to be executed entirely (that is, the content of the reverb is set to the highest grade). On the other hand,
If the maximum operation amount exceeds the allowable operation amount, the reverb content is set to a gradually lower grade by deleting some blocks of the algorithm step by step in the following order. To go.

【0042】すなわち、第1段階として、コムフィルタ
CF6のブロック(114)を削除する。それでもまだ
ソフトウェア音源に要する演算量が許容演算量を上回っ
ている場合には、第2段階として、コムフィルタCF5
のブロック(113)を削除する。それでもまだソフト
ウェア音源に要する演算量が許容演算量を上回っている
場合には、第3段階として、オールパスフィルタAP
3,AP4のブロック(117,118)を削除する。
以下同様にして、第4段階として、オールパスフィルタ
AP2のブロック(108)を削除し、第5段階とし
て、アーリーリフレクションER2のブロック(10
4)を削除する。
That is, as a first step, the block (114) of the comb filter CF6 is deleted. If the operation amount required for the software sound source is still larger than the allowable operation amount, the second step is to use a comb filter CF5
Block (113) is deleted. If the amount of operation required for the software sound source is still larger than the allowable amount of operation, the all-pass filter AP
Blocks 3 and AP4 (117, 118) are deleted.
Similarly, as a fourth step, the block (108) of the all-pass filter AP2 is deleted, and as a fifth step, the block (10) of the early reflection ER2 is deleted.
4) is deleted.

【0043】この順序は、削除しても聴感上の影響の少
ないブロックの順に削除する(コムフィルタの系統数が
6から5または4に減少しても、周波数特性の平坦化に
とって大きな支障は生じないので、聴感上の影響は少な
い)という観点と、演算量の削減効果の大きいブロック
の順に削除する(オールパスフィルタAP2のブロック
を削除するよりも先にオールパスフィルタAP3,AP
4のブロックを削除したほうが、一度に2つのブロック
を削除できるので演算量の削減効果が大きい)という観
点とから定めたものである。
In this order, the blocks are deleted in the order of less influence on the audibility even if they are deleted. (Even if the number of systems of the comb filter is reduced from 6 to 5 or 4, there is a great obstacle to the flattening of the frequency characteristics. Since there is no effect, the effect on the auditory sense is small), and blocks are deleted in the order of the effect of reducing the amount of calculation (all-pass filters AP3 and AP before deleting blocks of the all-pass filter AP2).
4 is deleted from the viewpoint that two blocks can be deleted at a time, so the effect of reducing the amount of calculation is greater.

【0044】他方、上述のようにブロックを削除するこ
とによってリバーブの内容を低いグレードに設定した状
態において、楽音生成処理に要する演算量が少なくなっ
たために、リバーブのグレードが現在よりも高くなって
もソフトウェア音源の処理に要する演算量が許容演算量
を上回らなくなったような場合には、ステップS36で
は、上述の順序とは逆に、削除したブロックを第5段階
から第1段階の順に復活させることにより、リバーブの
内容を段階的に高いグレードに設定していく。
On the other hand, in the state where the contents of the reverb are set to a low grade by deleting the blocks as described above, the amount of calculation required for the tone generation processing is reduced, and the reverb grade becomes higher than the current level. If the calculation amount required for processing the software sound source no longer exceeds the allowable calculation amount, in step S36, the deleted blocks are restored in the order from the fifth stage to the first stage, contrary to the above-described order. As a result, the reverb content is gradually set to a higher grade.

【0045】このように、エフェクト処理の内容の制御
とは、具体的には、エフェクト処理のアルゴリズムの一
部のブロックを段階的に削除したり、逆に、削除したブ
ロックを段階的に復活したりすることにより、エフェク
ト処理の演算量を制御することである。そして、この演
算量の多い状態がグレードの高い状態であり、演算量の
少ない状態がグレードの低い状態である。ここではリバ
ーブを例にとって説明を行なったが、それ以外の種類の
エフェクト(例えばコーラスやフランジャーやフェーザ
ー等)についても、そのアルゴリズムの一部のブロック
を同様に削除または復活することによって演算量を増減
させることができるのはもちろんである。
As described above, the control of the content of the effect processing is, specifically, stepwise deleting some blocks of the algorithm of the effect processing, or conversely, recovering the deleted blocks stepwise. To control the amount of calculation of the effect processing. The state with a large amount of calculation is a high grade state, and the state with a small amount of calculation is a low grade state. The reverb is described here as an example, but for other types of effects (for example, chorus, flanger, phaser, etc.), the amount of computation is increased or decreased by deleting or restoring some blocks of the algorithm in the same way. Of course, you can do that.

【0046】尚、ステップS36において、エフェクト
処理のアルゴリズムの一部のブロックを削除した(すな
わち、エフェクト処理の内容をそれまでよりも低いグレ
ードに設定した)場合には、エフェクト処理を実行する
ステップ(後述するステップS41)では、削除したブロ
ックでの動作をいきなり中止するのではなく、エフェク
トのパラメータを変化させてそのブロックでの動作を徐
々に弱めていくようにし、動作を中止しても聴感上の影
響がほとんどない程度にまで動作が十分弱くなった状態
で、動作を中止するようにする。そして、そのブロック
での動作を徐々に弱めていく途中においても、そのブロ
ック以外のブロックでの動作の特性を変化させることに
より、そのブロックでの動作の特性の変化による聴感上
の影響(音量レベルの不自然な変化が聴きとられること
等)を相殺するようにする。
In step S36, if some blocks of the algorithm of the effect processing are deleted (that is, the contents of the effect processing are set to a lower grade than before), the step of executing the effect processing ( In step S41 to be described later, the operation in the deleted block is not suddenly stopped, but the effect parameter is changed to gradually weaken the operation in the block. The operation is stopped in a state where the operation is sufficiently weak to such an extent that the influence of is little. Then, even while the operation in the block is gradually weakened, by changing the characteristic of the operation in the block other than the block, the influence on the auditory sense due to the change in the characteristic of the operation in the block (volume level) That unnatural changes in the sound are heard).

【0047】同様に、ステップS36において、それま
で削除していたブロックを復活した(すなわち、エフェ
クト処理の内容をそれまでよりも高いグレードに設定し
た)場合にも、エフェクト処理を実行するステップで
は、削除していたブロックを初期化した後、エフェクト
のパラメータを変化させてそのブロックでの動作を徐々
に強めていくようにする。
Similarly, in step S36, even when the block deleted so far is restored (ie, the content of the effect processing is set to a higher grade than before), the step of executing the effect processing is as follows. After initializing the block that has been deleted, the parameters of the effect are changed so that the operation in the block is gradually strengthened.

【0048】以上のようにしてステップS36を終了す
ると、次にステップS37に進み、ステップS33で演
算の対象として予約したデータに対して楽音生成処理を
実行することにより、1区間分の楽音信号(128サン
プルの楽音信号)を生成する。
When step S36 is completed as described above, the process proceeds to step S37, in which a tone generation process is performed on the data reserved as a calculation target in step S33, thereby generating a tone signal (for one section). 128 musical tone signals).

【0049】図12は、楽音生成処理のアルゴリズムの
概要を示した図である。楽音生成処理では、まず、演算
の対象として予約したデータを音源レジスタから読み出
して該データから原波形を生成する処理(201)と、
生成した原波形に対し、フィルタ係数を示す情報に基づ
いてフィルタ演算を行なうことによって音色を制御する
処理(202)と、フィルタ演算を行なった波形に対
し、振幅(音量)を示す情報を乗算することによって振
幅を制御する処理(203)とを、各発音チャンネルに
ついて、エフェクト処理を施さずにステレオの左側の系
列に送る楽音信号用の出力系列と、エフェクト処理を施
さずにステレオの右側の系列に送る楽音信号用の出力系
列と、エフェクト処理を施すべき楽音信号用の出力系列
との合計3つの出力系列(図11参照)別に時分割に実
行する。
FIG. 12 is a diagram showing an outline of the algorithm of the musical sound generation processing. In the musical sound generation processing, first, data (201), which is read from the tone generator register and reserved as an operation target, generates an original waveform from the data.
A process (202) for controlling the timbre by performing a filter operation on the generated original waveform based on the information indicating the filter coefficient, and multiplying the waveform subjected to the filter operation by information indicating the amplitude (volume). (203) for each tone generation channel, the output sequence for a tone signal to be sent to the left sequence of the stereo without effect processing, and the right sequence of the stereo without effect processing. , And an output sequence for the tone signal to be subjected to the effect processing, and a total of three output sequences (see FIG. 11) for the tone signal.

【0050】ここで、上記原波形の生成処理では、波形
メモリ方式、周波数変調方式、高調波合成方式等の波形
生成方式を用いて生成を行なう。また、上記フィルタ演
算では、タッチ等の演奏情報や時間経過に従ってフィル
タ係数を変化させ、楽音の音色を制御する。また、上記
振幅制御では、各発音チャンネルの楽音の発音開始から
終了までの音量の時間的変化を制御する音量エンベロー
プに、上記3つの出力系列にそれぞれ対応した比率で重
み付けを行なうことにより3つの音量情報を求め、該3
つの音量情報を順次時分割に入力波形に乗算する。この
比率を適宜調整することにより、ステレオ効果または音
像定位効果を得たり、エフェクトを付与した音の音量を
大きくしたりすることができる。次に、上記各処理によ
って求められた各発音チャンネルの楽音信号を、上記3
つの出力系列別に時分割に累算し、その累算結果をそれ
ぞれバッファXL,XR,XXに記憶させる(20
4)。図13は、バッファXL,XR,XXの記憶領域
の一例を示す。それぞれ、1区間内に生成される128
サンプルの楽音信号を記憶する領域が設けられている。
Here, in the generation processing of the original waveform, generation is performed using a waveform generation method such as a waveform memory method, a frequency modulation method, and a harmonic synthesis method. In the filter operation, the filter coefficient is changed in accordance with performance information such as touch and the passage of time to control the timbre of a musical tone. Further, in the amplitude control, a volume envelope for controlling a temporal change of the volume from the start to the end of the tone of each tone channel is weighted at a ratio corresponding to each of the three output sequences, thereby providing three volume levels. Ask for information,
The input waveforms are sequentially multiplied by the two pieces of volume information in a time division manner. By appropriately adjusting this ratio, a stereo effect or a sound image localization effect can be obtained, and the volume of the sound to which the effect has been applied can be increased. Next, the tone signal of each sounding channel obtained by each of the above processes is converted into the above-mentioned 3
The output series is accumulated in a time-division manner and the accumulation results are stored in buffers XL, XR, and XX, respectively (20
4). FIG. 13 shows an example of the storage area of the buffers XL, XR, XX. 128 generated in each section
An area for storing a musical tone signal of a sample is provided.

【0051】図9に戻り、ステップS37に続くステッ
プS38で、当該区間の残り時間内に応じて、その残り
時間内に処理を完了できるエフェクト処理のグレードを
求める。続くステップS39では、ステップS38で求
めたグレードが、ステップS36で設定したグレードよ
りも低いか否かを判断する。低ければ、ステップS40
に進み、エフェクト処理のグレードを、ステップS38
で求めたグレードに設定し直す。そしてステップS41
に進む。他方、ステップS36で設定したグレードより
も低くなければ、そのまま(すなわち、ステップS36
で設定したグレードのまま)ステップS41に進む。こ
うしたエフェクト処理のグレードの見直しを行なう理由
は、ステップS36の終了後、何らかの事情(例えば、
CPU1がソフトウェア音源の処理と並行して実行して
いるアプリケーションソフトの割込み処理等に予想以上
に時間を要したこと)によって、ステップS36で設定
したグレードのままでは当該区間の残り時間内にエフェ
クト処理を完了できなくなくなることもありうると考え
たことにある。
Returning to FIG. 9, in step S38 following step S37, the grade of the effect processing that can complete the processing within the remaining time is obtained according to the remaining time of the section. In a succeeding step S39, it is determined whether or not the grade obtained in the step S38 is lower than the grade set in the step S36. If lower, step S40
To determine the grade of the effect processing in step S38.
Reset to the grade determined in. And step S41
Proceed to. On the other hand, if it is not lower than the grade set in step S36, it is left as it is (that is, step S36).
The process proceeds to step S41 (with the grade set in step S41). The reason for reviewing the grade of the effect processing is that, after the end of step S36, for some reason (for example,
CPU 1 took longer than expected for interrupt processing and the like of application software executed in parallel with processing of the software sound source), so that the effect processing was performed within the remaining time of the section if the grade set in step S36 was maintained. I thought that it might not be possible to complete.

【0052】ステップS41では、バッファXL,X
R,XX(図13参照)から楽音信号を読み出し、該楽
音信号に対し、パネルスイッチイベント処理(図3)で
選択された種類のエフェクトの処理を、ステップS36
で設定したグレード(ステップS40でグレードを設定
し直した場合には、そのグレード)に対応する演算量で
実行する。そして、エフェクト処理を終えた楽音信号
を、ステレオの左右2系列用の出力バッファXL’,X
R’にそれぞれ書き込む。エフェクト処理の具体例は、
ステップS36の説明の際に図11を用いて詳述したと
おりである。このように制御した内容でエフェクト処理
を実行することにより、各区間毎に、ソフトウェア音源
の処理を当該区間内に完了させることができるととも
に、並行して実行しているアプリケーションソフトの処
理も、支障なく実行することができるようになる。最後
のステップS42では、上記出力バッファXL’,X
R’にそれぞれ書き込まれた楽音信号(図11のS
L’,SR’のような楽音信号)を、当該区間の次の区
間で再生処理を実行する対象としてDMA回路9に予約
する。そしてリターンする。この楽音信号に対して、当
該区間の次の区間に、DMA回路9によって前述のよう
な再生処理が実行されることになる。
In step S41, buffers XL, X
A tone signal is read from R and XX (see FIG. 13), and the tone signal is subjected to the effect processing of the type selected in the panel switch event process (FIG. 3) in step S36.
(In the case where the grade is set again in step S40), the processing is executed with the amount of calculation corresponding to the grade set in step S40. Then, the tone signal after the effect processing is output to output buffers XL ′ and X
Write to R '. Specific examples of effect processing
This is as described in detail with reference to FIG. 11 in the description of step S36. By executing the effect processing with the contents controlled as described above, the processing of the software sound source can be completed in each section in each section, and the processing of the application software being executed in parallel also has a problem. Will be able to run without any changes. In the last step S42, the output buffers XL ', X
The tone signal written to each of R ′ (S in FIG. 11)
The tone signal such as L ′, SR ′) is reserved in the DMA circuit 9 as a target for executing the reproducing process in the section next to the section. And return. The tone signal is subjected to the above-described reproduction processing by the DMA circuit 9 in a section next to the section.

【0053】このように、他のアプリケーションソフト
の処理に要する演算量や楽音生成処理に要する演算量が
多い区間では、それらの演算量が少ない場合と比較し
て、エフェクト処理の内容が低いグレードに設定される
ことにより、エフェクト処理に要する演算量が少なくな
るので、その他の処理のためにCPU1の演算能力を多
く割り当てることができる。他方、その他の処理に要す
る演算量が少ない区間では、該演算量が多い場合と比較
して、エフェクト処理の内容が高いグレードに設定され
ることにより、楽音信号に高度なエフェクトが付与され
る。これにより、CPU資源の有効な配分が図られる。
特に、同時発音数が減ったときにはエフェクトを付与し
た音が一層聞こえやすくなるので、そのときにエフェク
ト処理の内容が高いグレードに設定されていると、聴感
上の効果が大きい。
As described above, in a section in which the amount of calculation required for processing of other application software and the amount of calculation required for tone generation processing are large, the effect processing contents are lower in grade than those in the case where the amount of calculation is small. By setting, the amount of calculation required for the effect processing is reduced, so that more calculation capacity of the CPU 1 can be allocated for other processing. On the other hand, in a section in which the amount of operation required for other processing is small, the effect processing is set to a higher grade as compared with the case where the amount of operation is large, so that a high-level effect is added to the tone signal. As a result, effective allocation of CPU resources is achieved.
In particular, when the number of simultaneous sounds is reduced, the sound to which the effect is applied becomes more audible. If the effect processing content is set to a high grade at that time, the effect on audibility is great.

【0054】次に、「音源処理」(図3のステップS
6)の別の一例を、図14に示す。この処理は、ステッ
プS51からステップS56の楽音生成処理までは、図
9のステップS36に相当する処理が存在しないことを
除き、図9のステップS31からステップS37の楽音
生成処理までと同じである。そして、ステップS56に
続くステップS57で、ステップS56でバッファXX
に記憶させた楽音信号(エフェクト処理を施すべき楽音
信号)の音量レベルを検出する。続くステップS58で
は、検出した音量レベルが、所定の閾値未満であるか否
かを判断する。この閾値は、一例として、楽音信号の非
発音時のレベル(ゼロあるいは聴感上認識できないよう
な非常に小さい値)に設定するようにする。閾値以上で
あれば、ステップS60に進み、エフェクトスイッチの
操作によって選択されたエフェクト処理を実行する。ス
テップS60で効果を付与した楽音信号を、ステレオの
左右2系列用の出力バッファXL’,XR’にそれぞれ
書き込んで、最後のステップS61で、該出力バッファ
XL’,XR’の波形を当該区間の次の区間で再生処理
を実行する対象としてDMA回路9に予約する。そして
リターンする。
Next, "sound source processing" (step S in FIG. 3)
Another example of 6) is shown in FIG. This process is the same as the process from step S31 to step S37 in FIG. 9 except that there is no process corresponding to step S36 in FIG. 9 from the step S51 to the tone generation process in step S56. Then, in a step S57 following the step S56, the buffer XX is set in the step S56.
The volume level of the tone signal (the tone signal to be subjected to the effect processing) stored in the memory is detected. In a succeeding step S58, it is determined whether or not the detected volume level is lower than a predetermined threshold. As an example, this threshold value is set to a level (zero or a very small value that cannot be recognized audibly) when the tone signal is not sounded. If it is equal to or more than the threshold, the process proceeds to step S60, and the effect process selected by operating the effect switch is executed. The tone signal to which the effect has been added in step S60 is written into the output buffers XL 'and XR' for the left and right stereo systems, and in the last step S61, the waveforms of the output buffers XL 'and XR' are A reservation is made in the DMA circuit 9 as a target for executing the reproduction process in the next section. And return.

【0055】他方、閾値未満であれば、ステップS59
に進んでエフェクト処理の省略を指示した後、ステップ
S60に進む。ステップS60では、この省略の指示に
応じてエフェクト処理を省略する。これにより、ステッ
プS61では、バッファXL,XRに記憶された効果を
付与しない楽音信号(図11のSL,SRのような楽音
信号)を、そのまま、ステレオの左右2系列用の出力バ
ッファXL’,XR’の楽音信号として、再生処理の対
象としてDMA回路9に予約する。このように、エフェ
クトに入力する楽音信号の音量レベルが所定の閾値未満
である区間(例えば非発音時の区間あるいは非常に小音
量レベルの区間)では、エフェクト処理が省略されるの
で、エフェクト処理のためにCPU1の演算能力を浪費
することなく、CPU1の演算能力をすべて楽音生成処
理及び他のアプリケーションソフトの処理のために割り
当てることができる。これにより、CPU資源の有効な
配分を図ることができる。
On the other hand, if it is less than the threshold value, step S59
Then, after instructing to omit the effect process, the process proceeds to step S60. In step S60, the effect processing is omitted in accordance with the instruction of the omission. Thus, in step S61, the tone signals stored in the buffers XL and XR and to which no effect is applied (tone signals such as SL and SR in FIG. 11) are output as they are to the output buffers XL 'and XL' for the left and right stereo systems. An XR 'tone signal is reserved in the DMA circuit 9 as a reproduction processing target. As described above, in the section in which the volume level of the tone signal input to the effect is less than the predetermined threshold (for example, the section during non-sounding or the section with a very low volume level), the effect processing is omitted. Therefore, the entire computing power of the CPU 1 can be allocated to the tone generation processing and the processing of other application software without wasting the computing power of the CPU 1. As a result, effective allocation of CPU resources can be achieved.

【0056】尚、この実施の形態では、「音源処理」の
ステップS36において、ソフトウェア音源の処理に要
する最大演算量と、ソフトウェア音源の処理のために許
容される演算量とに応じて、一部の発音チャンネルの発
音の制御またはエフェクト処理の内容の制御を行なうよ
うにしている。しかし、同ステップにおいて、最大演算
量と許容演算量とに応じて一部の発音チャンネルの楽音
生成処理の内容を制御するようにしてもよい。すなわ
ち、最大演算量が許容演算量を上回っている場合には、
エフェクト処理の内容の制御について図10及び図11
に例示したのと同様にして、一部の発音チャンネルの楽
音生成処理アルゴリズムのブロックを削除することによ
ってその楽音生成処理の内容を段階的に低いグレードに
設定していくようにしてもよい。
In this embodiment, in step S36 of the "sound source processing", a part of the calculation depends on the maximum operation amount required for processing the software sound source and the operation amount permitted for processing the software sound source. Control of the sounding of the sounding channel or the content of the effect processing. However, in this step, the content of the tone generation processing of some sounding channels may be controlled according to the maximum calculation amount and the allowable calculation amount. In other words, if the maximum calculation amount exceeds the allowable calculation amount,
Control of the contents of the effect processing FIGS. 10 and 11
In the same manner as described above, the content of the tone generation processing may be gradually set to a lower grade by deleting the blocks of the tone generation algorithm for some of the tone generation channels.

【0057】また、この実施の形態では、楽音生成処理
と、該処理によって生成した楽音信号に対するエフェク
ト処理とを、同一のCPUに他のアプリケーションソフ
トの処理と並行して実行させるものにこの発明を適用し
ている。しかし、これに限らず、当該CPU以外から供
給される楽音信号(例えば、コンパクトディスクプレー
ヤ等のオーディオ機器で再生された楽音信号や、マクロ
フォンから入力してアナログ/ディジタル変換した楽音
信号や、音声合成用ソフトウェアで合成した楽音信号
や、別のCPUが楽音生成処理によって生成した楽音信
号等)に対するエフェクト処理を他のアプリケーション
ソフトの処理と並行してCPUに実行させるものにこの
発明を適用してもよい。その場合には、当該CPUは楽
音生成処理を実行しないのであるから、「音源処理」の
ステップS36では、許容演算量とエフェクト処理に要
する演算量自体とを比較してエフェクト処理の内容を制
御するようにする。あるいは逆に、他のアプリケーショ
ンソフトの処理を実行させず、楽音生成処理及びエフェ
クト処理のみを同一のCPUに実行させるものにこの発
明を適用してもよい。その場合には、「音源処理」のス
テップS36における許容演算量は、当該CPUの演算
能力のみから決定するようになる。
Further, in this embodiment, the present invention is applied to a case where the same CPU executes the tone generation processing and the effect processing for the tone signal generated by the processing in parallel with the processing of other application software. Have applied. However, the present invention is not limited to this. For example, a tone signal supplied from a source other than the CPU (for example, a tone signal reproduced by an audio device such as a compact disc player, a tone signal input from a macro phone and converted from analog to digital, or a sound signal) The present invention is applied to a program that causes the CPU to execute an effect process on a tone signal synthesized by software for synthesis or a tone signal generated by another CPU in a tone generation process in parallel with the process of other application software. Is also good. In this case, since the CPU does not execute the tone generation process, in step S36 of the “sound source process”, the allowable operation amount is compared with the operation amount required for the effect process to control the content of the effect process. To do. Or, conversely, the present invention may be applied to a case where only the musical sound generation processing and the effect processing are executed by the same CPU without executing the processing of other application software. In this case, the allowable calculation amount in step S36 of the “sound source processing” is determined only from the calculation capability of the CPU.

【0058】また、この実施の形態では、MIDIから
の受信データに基づき、パーソナルコンピュータのCP
Uに楽音生成処理及びエフェクト処理を実行させるソフ
トウェア音源にこの発明を適用している。しかし、これ
に限らず、電子楽器自体の内部に設けられたCPUに楽
音生成処理及びエフェクト処理を実行させるソフトウェ
ア音源にもこの発明を適用してよいことはもちろんであ
る。その場合には、CPUは、ソフトウェア音源の処理
を、音色エディタやシーケンサ等の処理と並行して実行
しなければならないので、「音源処理」のステップS3
6における許容演算量は、CPU1の演算能力と、これ
ら音色エディタやシーケンサ等の処理に要する演算量と
に応じて決定することになる。
In this embodiment, the CP of the personal computer is used based on the data received from MIDI.
The present invention is applied to a software sound source that causes U to execute a tone generation process and an effect process. However, the present invention is not limited to this, and it goes without saying that the present invention may be applied to a software sound source that causes a CPU provided inside the electronic musical instrument itself to execute a tone generation process and an effect process. In this case, the CPU must execute the processing of the software sound source in parallel with the processing of the tone editor and the sequencer.
The allowable calculation amount in 6 is determined according to the calculation capability of the CPU 1 and the calculation amount required for processing by the tone color editor and the sequencer.

【0059】また、この実施の形態では、ソフトウェア
音源にこの発明を適用している。しかし近年、DSPに
も、エフェクト処理を実行するだけでなくエフェクト処
理とその他の処理とを併せて実行できるもの(汎用DS
P)が出現しているので、そうした汎用DSPにもこの
発明を適用してよいことはもちろんである。
In this embodiment, the present invention is applied to a software sound source. However, in recent years, DSPs that can execute not only effect processing but also effect processing and other processing together (general purpose DS)
Since P) has appeared, the present invention may be applied to such a general-purpose DSP.

【0060】最後に、この発明の実施態様を幾つか列挙
する。 (a) 前記第1のステップにおけるエフェクト処理の
内容の制御は、エフェクト処理のアルゴリズムの一部の
ブロックを削除することや、削除した前記ブロックを復
活させることを含むものである請求項1に記載の楽音処
理方法。 (b) 前記ブロックの削除は、聴感上の影響の少ない
ブロックの順に行なうものである(a)に記載の楽音処
理方法。 (c) 前記ブロックの削除は、演算量の削減効果の大
きいブロックの順に行なうものである(a)に記載の楽
音処理方法。 (d) 前記第1のステップにおいて削除したブロック
での動作を、前記第2のステップにおいて徐々に弱めて
いくようにするものである(a)乃至(c)のいずれか
に記載の楽音処理方法。 (e) 削除したブロック以外のブロックでの動作の特
性を変化させることにより、削除したブロックでの動作
の特性の変化による聴感上の影響を相殺するものである
(d)に記載の楽音処理方法。
Finally, some embodiments of the present invention will be listed. (A) The musical tone according to claim 1, wherein the control of the content of the effect processing in the first step includes deleting some blocks of the algorithm of the effect processing and restoring the deleted blocks. Processing method. (B) The tone processing method according to (a), wherein the blocks are deleted in the order of the blocks having the least influence on the audibility. (C) The tone processing method according to (a), wherein the blocks are deleted in the order of the blocks having the greatest effect of reducing the amount of calculation. (D) The tone processing method according to any one of (a) to (c), wherein the operation in the block deleted in the first step is gradually weakened in the second step. . (E) The tone processing method according to (d), wherein the effect on the audibility due to the change in the operation characteristics of the deleted block is changed by changing the operation characteristics of the blocks other than the deleted block. .

【0061】(f) 前記楽音処理方法は、所定の時間
長の区間を単位として、各区間毎に、同時に生成すべき
楽音数に応じた発音チャンネル数で楽音信号を生成する
楽音生成処理と、該処理によって生成した楽音信号に対
するエフェクト処理とを実行する方法であり、各前記区
間毎に、前記第1のステップ及び前記第2のステップを
実行するものである請求項1または(a)乃至(e)の
いずれかに記載の楽音処理方法。 (g) 前記楽音処理方法は、所定の時間長の区間を単
位として、各区間毎に、同時に生成すべき楽音数に応じ
た発音チャンネル数で楽音信号を生成する楽音生成処理
と、該処理によって生成した楽音信号に対するエフェク
ト処理とを実行する方法であり、各前記区間毎に、前記
第1のステップ及び前記第2のステップを実行するもの
である請求項5に記載の楽音処理方法。
(F) The tone processing method includes a tone generation process for generating a tone signal with the number of sound channels corresponding to the number of tones to be simultaneously generated for each interval in intervals of a predetermined time length; 4. A method for executing effect processing on a tone signal generated by the processing, wherein the first step and the second step are executed for each of the sections. e) The tone processing method according to any one of the above. (G) The tone processing method includes a tone generation process for generating a tone signal with the number of sounding channels corresponding to the number of tones to be simultaneously generated for each interval in units of intervals of a predetermined time length. 6. The musical sound processing method according to claim 5, wherein the method is a method of performing an effect process on the generated musical sound signal, wherein the first step and the second step are executed for each of the sections.

【0062】[0062]

【発明の効果】以上のように、この発明に係る第1の楽
音処理方法及び装置によれば、ソフトウェア音源や汎用
DSPのように、楽音信号に効果を付与するエフェクト
処理とその他の処理とを同一のマイクロプロセッサに実
行させるものにおいて、その他の処理に要する演算量が
比較的多い場合には、その他の処理のためにマイクロプ
ロセッサの演算能力を多く割り当てることができ、他
方、その他の処理に要する演算量が比較的少ない場合に
は、高いグレードの内容でエフェクト処理を実行するこ
とができる。したがって、マイクロプロセッサ資源の有
効な配分を図り、限られた演算量の中で実現可能な最大
限に質の高いエフェクトを楽音に付与することができる
という優れた効果を奏する。
As described above, according to the first musical sound processing method and apparatus according to the present invention, the effect processing for giving an effect to a musical sound signal and other processing such as a software sound source or a general-purpose DSP are performed. In the case where the same microprocessor executes the processing, if the amount of operation required for other processing is relatively large, a large amount of operation capacity of the microprocessor can be allocated for other processing, while the amount required for other processing is required. When the amount of calculation is relatively small, the effect processing can be executed with high-grade contents. Therefore, an excellent effect is achieved in that the effective allocation of the microprocessor resources can be achieved, and the highest quality effect that can be realized with a limited amount of computation can be given to the musical sound.

【0063】また、この発明に係る第2の楽音処理方法
及び装置によれば、例えば演奏者が演奏音を実際に聴き
ながらエフェクト処理のグレードを随時調整することが
できるので、第1の楽音処理方法及び装置と同様な効果
が、一層演奏状況に即応した態様で発揮される。また、
この発明に係る第3の楽音処理方法及び装置によれば、
ソフトウェア音源や汎用DSPのように、楽音信号に効
果を付与するエフェクト処理とその他の処理とを同一の
マイクロプロセッサに実行させるものにおいて、非発音
時のように楽音信号の音量レベルが所定値未満であると
きには、エフェクト処理のためにマイクロプロセッサの
演算能力を浪費することなく、その他の処理のためにマ
イクロプロセッサの演算能力をすべて割り当てることが
できる。したがって、やはりマイクロプロセッサ資源の
有効な配分を図ることができるという優れた効果を奏す
る。
Further, according to the second tone processing method and apparatus according to the present invention, for example, the player can adjust the grade of the effect processing at any time while actually listening to the performance sound. The same effects as those of the method and the device are exhibited in a manner more adapted to the playing situation. Also,
According to the third tone processing method and apparatus according to the present invention,
In the case where the same microprocessor performs an effect process for giving an effect to a tone signal and other processes, such as a software sound source or a general-purpose DSP, when the volume level of the tone signal is less than a predetermined value, such as when no sound is produced, In some cases, the entire computing power of the microprocessor can be allocated for other processing without wasting the computing power of the microprocessor for effect processing. Therefore, there is an excellent effect that the microprocessor resources can be effectively allocated.

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

【図1】ソフトウェア音源の基本原理を示す図。FIG. 1 is a diagram showing the basic principle of a software sound source.

【図2】この発明に係るソフトウェア音源を採用した電
子楽器の全体構成処理図。
FIG. 2 is an overall configuration processing diagram of an electronic musical instrument employing a software sound source according to the present invention.

【図3】CPUの実行するメインルーチンを示すフロー
チャート。
FIG. 3 is a flowchart showing a main routine executed by a CPU.

【図4】CPUの実行する割込み処理を示すフローチャ
ート。
FIG. 4 is a flowchart showing an interrupt process executed by a CPU.

【図5】入力バッファの記憶領域の一例を示す図。FIG. 5 is a diagram showing an example of a storage area of an input buffer.

【図6】CPUの実行するノートオンイベント処理を示
すフローチャート。
FIG. 6 is a flowchart showing a note-on event process executed by a CPU.

【図7】音色データの内容の一例を示す図。FIG. 7 is a diagram showing an example of the content of timbre data.

【図8】音源レジスタの記憶領域の一例を示す図。FIG. 8 is a diagram showing an example of a storage area of a tone generator register.

【図9】CPUの実行する音源処理の一例を示すフロー
チャート。
FIG. 9 is a flowchart illustrating an example of a sound source process executed by a CPU.

【図10】CPUが各処理のために要する演算量の関係
を示す図。
FIG. 10 is a diagram illustrating a relationship between computation amounts required for each processing by a CPU.

【図11】リバーブのアルゴリズムを示す図。FIG. 11 is a diagram showing a reverb algorithm.

【図12】楽音生成処理のアルゴリズムの概要を示す
図。
FIG. 12 is a diagram showing an outline of an algorithm of a musical sound generation process.

【図13】出力バッファの記憶領域の一例を示す図。FIG. 13 is a diagram illustrating an example of a storage area of an output buffer.

【図14】CPUの実行する音源処理の別の一例を示す
フローチャート。
FIG. 14 is a flowchart showing another example of the sound source processing executed by the CPU.

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

1 CPU 2 MIDI 3 ROM 4 RAM 5 タイマ 6 キーボード 7 ディスプレイ 8 ハードディスク装置 9 DMA回路 10 データ及びアドレスバス 11 D/A変換器 12 サウンドシステム 1 CPU 2 MIDI 3 ROM 4 RAM 5 Timer 6 Keyboard 7 Display 8 Hard Disk Drive 9 DMA Circuit 10 Data and Address Bus 11 D / A Converter 12 Sound System

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 供給された楽音信号に効果を付与するエ
フェクト処理と、その他の処理とを同一のマイクロプロ
セッサで実行する楽音処理方法であって、 前記その他の処理に要する演算量に応じて、前記エフェ
クト処理の内容を制御する第1のステップと、 供給された楽音信号に対し、前記第1のステップで制御
した内容で前記エフェクト処理を実行する第2のステッ
プとを含んだ楽音処理方法。
1. A musical sound processing method in which an effect processing for giving an effect to a supplied musical sound signal and other processing are executed by the same microprocessor. A tone processing method comprising: a first step of controlling the contents of the effect processing; and a second step of executing the effect processing on the supplied tone signal with the contents controlled in the first step.
【請求項2】 供給された楽音信号に効果を付与するエ
フェクト処理と、その他の処理とを実行する処理手段
と、 前記その他の処理に要する演算量に応じて、前記処理手
段が実行する前記エフェクト処理の内容を制御する制御
手段とを具えた楽音処理装置。
2. An effect processing for giving an effect to the supplied musical tone signal, a processing means for executing other processing, and the effect executed by the processing means in accordance with a calculation amount required for the other processing. A tone processing apparatus comprising: control means for controlling the contents of processing.
【請求項3】 供給された楽音信号に効果を付与するエ
フェクト処理と、その他の処理とを同一のマイクロプロ
セッサで実行する楽音処理方法であって、エフェクト種類を選択する第1のステップと、 選択されたエフェクト種類についての演算のグレードを
設定する第2のステップと、 供給された楽音信号に対し、前記第1のステップで選択
されたエフェクト種類に対応するエフェクト処理を前記
第2ステップで設定された演算のグレードに応じて実行
する第3のステップであって、該設定された演算のグレ
ードに応じて実行される前記エフェクト処理は、前記選
択されたエフェクト種類に対応する当該エフェクト処理
のアルゴリズムの一部を当該設定された演算のグレード
に従って削除することを含むものとを含んだ楽音処理方
法。
3. A tone processing method in which an effect process for giving an effect to a supplied tone signal and other processes are executed by the same microprocessor, a first step of selecting an effect type, and a selecting step. Calculation grade for the selected effect type
A second step of setting and selecting the supplied tone signal in the first step
Effect processing corresponding to the effect type
Execute according to the operation grade set in the second step
A third step of performing the
The effect processing that is executed in accordance with the
The effect processing corresponding to the selected effect type
Part of the algorithm of the set operation grade
And a tone processing method including deleting the sound according to the following .
【請求項4】 供給された楽音信号に効果を付与するエ
フェクト処理と、その他の処理とを実行する処理手段
と、エフェクト種類を選択する 操作子手段と、選択されたエフェクト種類についての演算のグレードを
設定する手段と を具え、前記処理手段は前記選択された
エフェクト種類に対応するエフェクト処理を前記設定さ
れた演算のグレードに応じて実行し、該設定された演算
のグレードに応じて実行される前記エフェクト処理は、
前記選択されたエフェクト種類に対応する当該エフェク
ト処理のアルゴリズムの一部を当該設定された演算のグ
レードに従って削除することを含むことを特徴とする
音処理装置。
4. An effect processing for giving an effect to the supplied musical tone signal, processing means for executing other processing, an operation means for selecting an effect type, and an operation grade for the selected effect type To
And means for setting, the processing means is the selected
The effect processing corresponding to the effect type is set as described above.
Is executed according to the grade of the set operation, and the set operation is performed.
The effect processing executed according to the grade of
The effect corresponding to the selected effect type
Part of the algorithm of the
A sound processing device comprising deleting according to a rating.
【請求項5】 供給された楽音信号に効果を付与するエ
フェクト処理と、その他の処理とを同一のマイクロプロ
セッサで実行する楽音処理方法であって、 供給された楽音信号の音量レベルを検出する第1のステ
ップと、 前記音量レベルが所定の値以上である場合、前記楽音信
号に対して前記エフェクト処理を実行し、他方、前記音
量レベルが前記所定の値未満の場合、前記楽音信号に対
する前記エフェクト処理を省略する第2のステップとを
含んだ楽音処理方法。
5. A tone processing method in which effect processing for giving an effect to a supplied tone signal and other processing are executed by the same microprocessor, wherein a volume level of the supplied tone signal is detected. 1) performing the effect processing on the tone signal when the volume level is equal to or greater than a predetermined value; and performing the effect processing on the tone signal when the volume level is less than the predetermined value. And a second step for omitting the processing.
【請求項6】 供給された楽音信号の音量レベルを検出
する検出手段と、 前記楽音信号に効果を付与するエフェクト処理と、その
他の処理とを実行する処理手段と、 前記検出手段によって検出された音量レベルが所定の値
未満である場合、前記エフェクト処理の実行を省略する
ことを前記処理手段に指示する指示手段とを具えた楽音
処理装置。
6. A detecting means for detecting a volume level of a supplied tone signal, an effect processing for giving an effect to the tone signal, a processing means for executing other processing, and a detecting means for detecting the sound level. A tone processing device comprising: an instruction unit that instructs the processing unit to omit the execution of the effect processing when the volume level is less than a predetermined value.
JP27163996A 1995-09-22 1996-09-20 Music processing method and apparatus Expired - Fee Related JP3324409B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27163996A JP3324409B2 (en) 1995-09-22 1996-09-20 Music processing method and apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP7-269193 1995-09-22
JP26919395 1995-09-22
JP27163996A JP3324409B2 (en) 1995-09-22 1996-09-20 Music processing method and apparatus

Publications (2)

Publication Number Publication Date
JPH09160552A JPH09160552A (en) 1997-06-20
JP3324409B2 true JP3324409B2 (en) 2002-09-17

Family

ID=26548652

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27163996A Expired - Fee Related JP3324409B2 (en) 1995-09-22 1996-09-20 Music processing method and apparatus

Country Status (1)

Country Link
JP (1) JP3324409B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4585023B2 (en) * 2008-12-25 2010-11-24 株式会社河合楽器製作所 Electronic musical instruments
JP6390190B2 (en) * 2014-06-18 2018-09-19 ヤマハ株式会社 Server device and music system

Also Published As

Publication number Publication date
JPH09160552A (en) 1997-06-20

Similar Documents

Publication Publication Date Title
JP3293434B2 (en) Tone generation method
JP4561636B2 (en) Musical sound synthesizer and program
JPH0883066A (en) Electronic musical instrument
JPH11224086A (en) Playing device, and storage medium recorded with registration data
JP3694172B2 (en) Reverberation resonance apparatus and reverberation resonance method
JP3324409B2 (en) Music processing method and apparatus
JP3625880B2 (en) Sound generator
US5731534A (en) Method and apparatus for imparting an effect to a tone signal with grade designation
US5478968A (en) Stereophonic sound generation system using timing delay
JPH07121181A (en) Sound information processor
JP3322209B2 (en) Sound source system and storage medium using computer software
JP4096952B2 (en) Music generator
JP4103706B2 (en) Sound source circuit control program and sound source circuit control device
JP3141789B2 (en) Sound source system using computer software
JP7332002B2 (en) Electronic musical instrument, method and program
JP3632744B2 (en) Sound generation method
JP7124370B2 (en) Electronic musical instrument, method and program
JP3660125B2 (en) Electronic musical instrument sound image localization control device
JP3223827B2 (en) Sound source waveform data generation method and apparatus
JP3862839B2 (en) Waveform compression / decompression device
JP3864784B2 (en) Electronic musical instruments and programs for electronic musical instruments
JP3463547B2 (en) Performance data changing device, performance data changing method, and medium recording program
JP3919833B2 (en) Sound generator
JP3504387B2 (en) Electronic musical instrument
JP3705203B2 (en) Music generation method

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090705

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090705

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100705

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100705

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110705

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110705

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120705

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130705

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees