JPH11288285A - 楽音発生方法及び装置 - Google Patents

楽音発生方法及び装置

Info

Publication number
JPH11288285A
JPH11288285A JP11023285A JP2328599A JPH11288285A JP H11288285 A JPH11288285 A JP H11288285A JP 11023285 A JP11023285 A JP 11023285A JP 2328599 A JP2328599 A JP 2328599A JP H11288285 A JPH11288285 A JP H11288285A
Authority
JP
Japan
Prior art keywords
cpu
musical
information
tone
performance information
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.)
Pending
Application number
JP11023285A
Other languages
English (en)
Inventor
Genichi Tamura
元一 田邑
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 JP11023285A priority Critical patent/JPH11288285A/ja
Publication of JPH11288285A publication Critical patent/JPH11288285A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【課題】 処理している楽音の内容や並行して動作して
いるアプリケーションの内容などに基づいて楽音波形生
成演算の内容を変更する。 【解決手段】 CPUが他のアプリケーションとマルチ
タスクでソフト音源を実行して楽音生成処理を行う。ソ
フト音源の実行にあたって、演奏情報を受信するととも
に選択情報を受信し、演奏情報に基づく演算処理によっ
て楽音を生成するとともに、選択情報に応じて楽音生成
における所定の特性制御処理を追加または省略する。こ
れにより、同時生成可能な最大発音数を変化させ、また
同一の演奏情報に対しても異なる演算処理が実行され得
るようになる。また、演算量の上限を示す制限情報を受
信し、同時生成する楽音数を、該上限に応じて定まる最
大同時発音数以下になるように各楽音の優先度に従って
制限する。更に、サンプリング周波数あるいは波形補間
の種類を示すを示す演算精度情報を受信し、演算精度情
報が示すサンプリング周波数でまたは波形補間の種類で
楽音生成演算処理を行なう。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、CPU(中央処
理装置)やDSP(ディジタル信号処理装置)などのプ
ログラマブルな演算装置上で楽音生成プログラムを実行
することにより楽音波形を生成する楽音発生方法に関
し、さらに、同楽音生成プログラムを実行することによ
って楽音波形を生成する楽音発生装置に関する。
【0002】
【従来の技術】従来の音源装置や演算によって楽音波形
を生成する楽音生成プログラムでは、サンプリング周波
数や最大発音数および各楽音の処理内容は、どのような
楽音を生成する場合、また、他の処理がどのような状況
であっても、予め設定されている条件で処理されてい
た。
【0003】
【発明が解決しようとする課題】しかし、このような方
式では、(1)楽音生成演算が固定であるため、場合に
よっては必要以上の処理が行われていたり、必要な処理
が含まれていなかったりという不都合があった。すなわ
ち、楽音の種類によっては、楽音波形のピッチ変換が必
要な場合と不要な場合があり、LFO(低周波発振器)
による変調が必要な場合と不要な場合があり、ディジタ
ルフィルタによる音色加工が必要な場合と不要な場合が
あり、エフェクトが必要な場合と不要な場合がある。し
かし、従来の音源では、各回路が固定された処理を行っ
ているので、新たな処理の追加、不要な処理の削除は、
実現が難しく、実現のためには複雑な回路を付与する必
要があった。
【0004】(2)ソフトウェアで音源を実現する場
合、CPUの演算量は、発音中のチャンネル数や楽音生
成演算の内容に応じてダイナミックに変動する。汎用コ
ンピュータで他のアプリケーションプログラム(以下、
「アプリケーション」という。)と並行してソフトウェ
ア音源プログラム(以下、「ソフト音源」という。)を
実行する場合、このソフト音源の処理量の変動(特に演
算量の増加)により、他のアプリケーションの動作が不
安定になることがあった。
【0005】(3)ソフト音源の処理に割り当てること
のできる演算量は、上記のように並行しているアプリケ
ーションの数や種類のほか、それを実行する演算装置の
演算能力により制限を受ける。割り当てられる演算量が
厳しく制限される場合でも、従来のソフトウェア音源プ
ログラムでは、生成演算が固定的に決定されていたた
め、ユーザが、生成演算クォリティを落としても発音数
を増やしたい場合や、発音数は少なくてもよいので高い
クォリティで生成演算したい場合等の選択を行うことが
できなかった。
【0006】この発明は、処理している楽音の内容や並
行して動作しているアプリケーションの内容などに基づ
いて楽音波形生成演算の内容を変更することのできる楽
音生成方法および楽音生成装置を提供することを目的と
する。
【0007】
【課題を解決するための手段】この発明に係る楽音発生
方法は、プログラムに従って動作するCPUが、演奏情
報を受信するとともに選択情報を受信し、前記演奏情報
に基づく演算処理によって楽音を生成するとともに、前
記選択情報に応じて楽音生成における所定の特性制御処
理を追加または省略することにより、前記CPUで同時
に生成可能な最大発音数を変化させ、かつ、同一の演奏
情報に対しても異なる演算処理が実行され得ることを特
徴とするものである。
【0008】この発明によれば、プログラムに従って動
作するCPUにより、演奏情報の受信と選択情報の受信
が行なわれ、受信した演奏情報に基づく楽音生成処理が
行なわれるとともに、選択情報に応じて該楽音生成にお
ける所定の特性制御処理を追加または省略することによ
り、当該CPUで同時に生成可能な最大発音数を変化さ
せることができ、かつ、同一の演奏情報に対しても異な
る演算処理が実行され得るようになる。すなわち、選択
情報に応じて所定の特性制御処理を追加したときと省略
したときとでは、同一の演奏情報に基づく楽音生成を行
なうのであっても、異なる演算処理が適宜実行されるこ
ととなる。
【0009】従って、生成しようとする楽音の目的や演
奏形態に適合させて、楽音制御の内容を変更したり、特
定の楽音制御をやめることで処理量を軽減し、その分発
音数を増加させたり、他の目的にCPUのパワーをまわ
したりすることができる。これによって、例えば、マイ
クロコンピュータを用いたソフト音源を実施する場合、
コンピュータ装置のCPUパワーを有効に活用すること
ができる。また、他のアプリケーションプログラムと並
行してソフトウェア音源プログラムを実行する場合、ソ
フト音源側の演算量を調整することができるので、並行
して動作する他のアプリケーションプログラムに対して
悪影響を与えないようにすることもできる。このよう
に、選択情報に応じて必要な特性制御処理を追加しまた
不要な特性制御処理を削除することにより、その都度の
楽音生成に適した楽音波形生成制御が可能になり、ま
た、不要な処理を削減することによって演算量が軽減さ
れるため、発音数を増加したり、楽音生成以外の処理を
行うこともできる。従って、ソフト音源と並行して他の
アプリケーションを安定して動作させる場合にも適して
いる。
【0010】一例として、選択情報は、(1)LFO
(低周波発振器)のオン・オフ、(2)補間のオン・オ
フおよび/または補間の種類、(3)フィルタのオン・
オフおよび/またはフィルタの種類、(4)エフェクト
のオン・オフおよび/またはエフェクトの種類、(5)
サンプリング周波数、のうちの少なくとも1つについて
の選択情報である。
【0011】この発明の別の観点に従う楽音発生方法
は、プログラムに従って動作するCPUが、演奏情報を
受信するとともに当該CPUの演算量の上限を示す制限
情報を受信し、前記演奏情報に基づく演算処理によって
楽音を生成するとともに、前記CPUで同時に生成する
楽音数を、前記制限情報が示す演算量の上限に応じて定
まる最大同時発音数以下になるように各楽音の優先度に
従って制限することを特徴とするものである。この発明
によれば、演算量を制限しつつも、その限られた演算量
のなかで生成できた楽音については音切れ等起こさず安
定した発音が行える。また、発音数の制限を行なうに際
し、各楽音の優先度に従って制限するので、優先度の高
い楽音が消音されないこととなり、非常に好ましい。従
って、他のアプリケーションプログラムと並行してソフ
トウェア音源プログラムを実行する場合、ソフト音源が
CPUパワーを占有する時間を制限情報で制限すること
により、円滑なマルチタスク状態を確保するのに適して
いる。
【0012】さらに、この発明の別の観点に従う楽音発
生方法は、プログラムに従って動作するCPUが、演奏
情報を受信するとともに任意に設定されたサンプリング
周波数を示す演算精度情報を受信し、前記演奏情報に基
づき、前記演算精度情報が示すサンプリング周波数の演
算処理によって楽音を生成することを特徴とするもので
ある。サンプリング周波数を示す演算精度情報とは、た
とえば、等価サンプリング周波数(単位時間当たりに演
算生成する楽音サンプル数)であり、この精度を粗くす
ることにより演算量を少なくすることができる。このよ
うにサンプリング周波数を任意に設定することによって
演算量を任意に可変設定することができ、これによっ
て、臨機応変に、効率的なCPU資源の利用を図ること
ができる。
【0013】この発明のさらに別の観点に従う楽音発生
方法は、プログラムに従って動作するCPUが、演奏情
報を受信するとともに波形補間の種類を示す演算精度情
報を受信し、前記演奏情報に基づき、前記演算精度情報
が示す種類の波形補間を含む演算処理によって楽音を生
成することを特徴とするものである。このように波形補
間の精度を可変制御することによっても演算量を少なく
する制御を行なうことができ、効率的なCPU資源の利
用を図ることができる。これらの発明は方法の発明とし
て実施することができるのみならず、装置の発明として
実施することができる。
【0014】
【発明の実施の形態】以下、図面を参照してこの発明の
実施形態について説明する。図1はこの発明の一実施例
に係るソフト音源プログラムが実行されるマイクロコン
ピュータ装置の構成を示す図である。CPU10にはバ
スを介してROM11,RAM12,ハードディスク装
置13,CD−ROM装置14,MIDIインタフェー
ス15,キーボード16,ディスプレイ17,DMA1
8およびタイマ21が接続されている。ROM11はこ
のマイコン装置の動作に必須の基本プログラムなどが記
憶されている。RAM12は実行するプログラムやデー
タを読み込むとともにプログラム処理中に発生したデー
タを記憶するメモリである。ハードディスク装置13に
は、各種のアプリケーションなどが記憶されている。C
D−ROM装置14には、各種のデータやプログラムを
記憶したCD−ROMがセットされる。後述するソフト
音源もCD−ROMから供給されるものである。ハード
ディスク装置13やCD−ROMに記憶されているプロ
グラムは実行されるときRAM12に読み出される。M
IDIインタフェース15は、外部接続されるMIDI
キーボードなどの演奏装置との間で演奏データや制御信
号の送受信を行う。キーボード16,ディスプレイ17
としては、通常のパーソナルコンピュータに一般的なキ
ーボードやモニタが接続される。DMA(Direct
Memory Access Controlle
r)18はCPU10を介さずにRAM12から波形デ
ータを読み出してDAC19に出力する回路である。D
AC19は、この波形データをアナログの楽音信号に変
換してサウンドシステム20に出力する。サウンドシス
テム20はこの楽音信号を増幅して外部出力する。な
お、タイマ21は一定時間毎にCPU10に対して割り
込みをかけるとともに、DMA18にサンプリングクロ
ックを供給するタイマである。
【0015】図2は同マイクロコンピュータ装置で実行
されるソフト音源の時間的な処理の流れを説明する図で
ある。このソフト音源は48kHzのサンプリング周波
数で楽音波形データを生成するが、その楽音波形データ
生成処理を128サンプル(1フレーム)毎に行う。あ
るフレームのタイムスロットに演奏入力があると、次の
フレームでその演奏入力に対応する楽音波形データの算
出処理を行い、さらに次のフレームでこの楽音波形デー
タを48kHzの周期毎に1サンプルずつ読み出して楽
音信号を形成する。したがって、演奏入力があってから
実際に楽音が発音されるまで(または楽音が消音される
まで)は約2フレームの時間ずれが生じることになる
が、1フレームが128サンプル(約2.67ミリ秒)
であるため、その時間ずれはわずかである。なお、本実
施態様では、RAM12上に用意された波形テーブルに
記憶された波形サンプルに基づいて楽音を生成するいわ
ゆるテーブルルックアップ方式の楽音生成を行うソフト
音源を説明する。
【0016】図3は前記ソフト音源の動作時にRAM1
2に設定される記憶エリアを説明する図である。同図
(A)は入力バッファを示す図である。この入力バッフ
ァには、MIDIインタフェース15から演奏入力があ
ったとき、その演奏入力の内容とその発生時刻を記憶す
るバッファである。このバッファの内容は、後述するM
IDI処理で読み出され、対応する処理が実行される。
【0017】同図(B)はサンプルバッファWBを示す
図、同図(C)は出力バッファOBを示す図である。両
バッファとも128サンプル分の波形データ記憶エリア
(SD1〜SD128、OD1〜OD128)を備えて
いる。出力バッファOBは32チャンネルの発音チャン
ネルの楽音波形データを順次加算合成した波形データを
記憶する。波形データの演算は、1つのチャンネル毎に
1フレーム時間分の128サンプルを演算し、これを3
2チャンネル分(発音しているチャンネル分)繰り返す
という手順で行われるが、1つのチャンネルの波形デー
タを記憶するのがサンプルバッファWBであり、1つの
チャンネルの波形データが演算されるごとにこの波形デ
ータをサンプルタイミング毎に累算してゆくのが出力バ
ッファOBである。また、後述する他の実施態様では、
選択可能な3つの等価サンプリング周波数(12kH
z,24kHz,48kHz)に対応して3つの出力バ
ッファOB0,OB1,OB2が存在する。
【0018】同図(D)は音色データレジスタである。
この音色データレジスタには、各MIDIチャンネル
(演奏パート)で生成される楽音波形を決定するデータ
が記憶されている。音色データとしては、各音色の各音
域毎に素材とする波形テーブルを指定する各音域波形指
定データ,EG制御データ,タッチ制御データなどがあ
る。
【0019】同図(E)は音源レジスタである。この音
源レジスタには、各発音チャンネル別に該発音チャンネ
ルで生成される楽音波形を決定するデータが記憶され
る。データとしてはノートナンバ,いずれか1つの波形
テーブルのアドレスを示す波形指定アドレス(アタック
スタートアドレスAS,アタックエンドアドレスAE,
ループスタートアドレスLS,ループエンドアドレスL
E)、フィルタ制御データ、EG制御データ、ノートオ
ンデータ、タイミングデータ、などが記憶される。
【0020】図4は前記ソフト音源が起動したとき、デ
ィスプレイ17に表示される制御パネル画面を示す図で
ある。この画面はディスプレイ17の画面の一部にいわ
ゆるウィンドゥ表示される。制御パネル画面にはMID
Iモニタ31、LFOオン/オフ表示部33,補間(I
NT)設定表示部34,ディジタルフィルタ(DCF)
設定表示部35,エフェクト(EFT)設定表示部3
6,サンプリング周波数(GSR)設定表示部37,最
大発音数(MPF)設定表示部38,現在発音数表示部
39,デューティ比表示部40,発音レベル表示部41
の各種表示部が設けられるほか、カーソル(CURSO
R)キー42,バリュー(VALUE)スイッチ43,
デューティ比(DUTY)スイッチ44およびリセット
(RESET)スイッチ45の各種キースイッチが表示
される。なお、背景色が濃くなっている部分32は、そ
の位置にカーソルがあることを示している。
【0021】MIDIモニタ31はMIDIチャンネル
にデータの入出力があったとき、そのチャンネルに対応
するランプ部が点灯するモニタである。LFOは楽音に
ビブラートのようなうねり効果を生じさせるための低周
波発信器である。この表示部33に、カーソルキー42
を用いてカーソル32を移動させ、バリュースイッチ4
3を操作することによってこのLFOのオン/オフを切
り換えることができる。他の表示部34〜38に関して
も設定内容の切換方式は同様である。補間設定表示部3
4は、RAM12の波形テーブルの波形データの周波数
を生成する楽音の周波数に合わせてシフトする場合に生
じるアドレスに小数部に対応したサンプルを得るため、
それを何点補間するかを設定する表示部である。3次関
数を用いる4点補間、1次関数を用いる2点補間、およ
び、打楽器音など周波数シフトする必要のない楽音に対
して設定される補間なしのいずれかを選択することがで
きる。
【0022】ディジタルフィルタ設定表示部35は、デ
ィジタルフィルタとして2次フィルタを用いるか1次フ
ィルタを用いるかまたは音色フィルタを用いないかのい
ずれかを選択するための設定表示部である。エフェクト
設定表示部36は、リバーブまたはローパスフィルタ
(LPF)のエフェクトをオン/オフするための設定表
示部である。以上の設定表示部は、CPU10の音源処
理動作の処理内容を設定するための設定表示部である。
【0023】また、サンプリング周波数設定表示部37
は、図11で後述する他の適用例に関する表示であり、
このソフト音源で楽音波形データの演算を行う等価サン
プリング周波数(通常は48kHz)を粗くしたい場合
に設定変更される。48kHz以外に24kHz,12
kHzのサンプリング周波数を設定することができる。
さらに、最大発音数設定表示部38は、32音までの同
時発音が可能なこのソフト音源を、CPU10に対する
負担を事前に軽減しておくため、最大発音数を32未満
に抑える場合の最大発音数の表示である。その場合に、
この最大発音数設定表示部38に表示される数値を変更
(1〜32)することにより、最大発音数をその値まで
にすることができる。
【0024】現在発音数表示部39は、現在ソフト音源
が形成している楽音数である現在発音数を表示する。デ
ューティ比表示部40はCPU10の全能力のうち、こ
のソフト音源が占有している能力の割合を表示する。能
力は棒グラフ40aとして表示される。また、デューテ
ィ比スイッチ44を操作することにより、このソフト音
源が占有するCPU10の能力のデューティ比の上限を
示すデータDRを設定することができ、設定されたデュ
ーティ比はこのデューティ比表示部40に点線40bと
して表示される。また、発音レベル表示部41は、現在
の楽音信号の発音レベルを棒グラフ41aで示す表示部
である。
【0025】フローチャートを参照して前記装置のマイ
クロコンピュータ装置におけるソフト音源の動作を説明
する。図5(A)はメインルーチンを示すフローチャー
トである。プログラムが起動されると、まず、レジスタ
エリアの確保などの初期設定を実行したのち(S1)、
図4に示す画面を準備する。そして何らかの起動要因
(トリガ)があるまでS3,S4で待機する。起動要因
が発生した場合には、その起動要因をS5で判断して対
応する処理動作を実行する。起動要因としては、入力バ
ッファにMIDIデータが書き込まれた場合のMIDI
処理(S6)、1フレームに対応する時間毎に実行され
る音源処理(S8)、その他スイッチイベントがあった
ときに実行されるその他処理(S10)、および、終了
コマンドが入力された場合の終了処理(S12)があ
る。終了処理は設定データの退避やレジスタのクリアな
どの処理であり、こののち、図4の画面を消去して(S
13)、動作を終える。また、MIDI処理(S6)が
行われたときは、MIDIモニタ31のそのMIDIデ
ータを受信したチャンネルの表示器を点灯する(S
7)。その他処理としては各種のパネル入力やコマンド
入力に対応する処理があり、その一部は図10で説明す
る。この処理ののち、この処理に対応する表示変更処理
を実行する(S11)。音源処理(S8)は、タイマ2
1が128サンプルクロックをカウントしたことによる
割り込みまたはDMA18からのトリガ等によって図2
における読出再生が次のフレームにち進行したのを検出
して実行されるものであるが、図7,図8で詳細に説明
する。また、デューティ比・発音数表示処理(P表示処
理:S9)は図9で説明する。ここで、図7,図8は、
ディスプレイ17の制御画面で、LFOのオン/オフ,
補間設定,ディジタルフィルタ設定,エフェクト設定が
できるようにした場合例(第1実施態様)である。一
方、図11は、ディスプレイ17の制御画面で、サンプ
リング周波数の設定ができるようにした例(第2実施態
様)である。本明細書では、この他に、同制御画面にお
いて最大発音数を設定できるようにした場合の例(第3
実施態様)についても簡単に説明する。
【0026】図5(B)のMIDI割込処理について説
明する。この割込処理は最優先の割込処理動作である。
MIDIインタフェース15からMIDIデータを受信
すると(S15)、該受信したMIDIデータととも
に、その受信時刻データを入力バッファに書き込む(S
16)。MIDI処理(S6:図6参照)は、入力バッ
ファにMIDIデータが書き込まれていることを検出し
て起動する。MIDI処理では検出されたMIDIデー
タに対応した処理が行われる。
【0027】図6は、MIDI処理の1つであるノート
オンイベント処理動作を示す図である。この処理動作
は、入力バッファにノートオンイベントデータが書き込
まれていたときに実行される動作である。まず、そのノ
ートオンイベントデータのノートナンバ,ベロシティデ
ータ,パート別音色および発生時刻をそれぞれNN,V
EL,t,TMレジスタに記憶する(S20)。次に、
32チャンネルの発音チャンネルのなかからこのノート
オンに係る楽音を発音する発音チャンネルを割り当てi
に記憶する(S21)。このノートオンに係る音色デー
タTP(t)をNN,VELに応じて加工し(S2
2)、加工された音色データをノートオンを示すデー
タ,TMととともにiチャンネルの音源レジスタに書き
込む(S23)。
【0028】図7はフレームに対応する時間周期で起動
される音源処理を示すフローチャートである。まず、こ
の音源処理動作の打ち切り時刻を算出する(S30)。
打ち切り時刻は、このソフト音源処理にCPU10を占
有できるデューティー比に基づいて算出され、楽音波形
の形成(音源処理)に割くことができる時間を算出する
処理である。すなわち、この音源処理動作では、32個
の各発音チャンネルについて1フレーム(128サンプ
ル)分の波形データを算出するが、演算途中でもCPU
10の占有可能時間に達するとこの処理動作は強制的に
終了する。途中で打ち切られた場合、一部のチャンネル
については波形データを算出できないが、この場合に
は、そのチャンネルの楽音はフォースダンプ(強制的に
信号レベルを急速に減衰させて消音する動作)される。
打ち切り時刻TL(タイムリミット)は、 TL=ST+FL×DR−US−AS ST:現再生フレームのスタート時刻 FL:フレーム時間長(1フレーム全体の長さ) DR:デューティ比 US:打ち切り処理時間(打ち切り処理(フォースダン
プ)に要する時間) AS:後処理時間(生成された複数チャンネル分の波形
にリバーブ,LPF等の処理をしてDMAに再生予約
し、音源処理を終えるまでの処理(後処理)に要する時
間)) で計算される。
【0029】ここで、タイムリミットTLは、各フレー
ムの音源処理中で実行される各チャンネルの楽音生成処
理をいつまで続けて良いかを示すデータである。この式
は、現フレームの開始時刻(ST)から終了時刻(ST
+FL)のうち、最初のデューティ比DRに応じた割合
の時間を音源処理に使用可能とし、残りの時間でソフト
音源のその他の処理や、その他のアプリケーションの処
理を行えるようにした場合である。ここで、ディーティ
比DRは、デューティ比スイッチ44により設定されて
いる。なお、この式では、打ち切り処理時間US,後処
理時間ASを考慮に入れて、精密にタイムリミットを計
算しているが、その演算は省略してもよい。
【0030】次にチャンネル制御を行う(S31)。チ
ャンネル制御とは、上述したように、演算順が下位のチ
ャンネルほど打ち切られる可能性が高いため、優先度の
高いチャンネル(消音されては困るチャンネル)から先
に演算するように32チャンネルの演算順序を設定する
処理である。優先度の高いチャンネルとは、発音レベル
の高いチャンネル、発音開始からの時間が短いチャンネ
ルなどであり、優先度の低いチャンネルは、発音してい
ないチャンネルを除けば、発音レベルの低いチャンネル
が最も優先順位が低い。チャンネル制御ののち、出力バ
ッファOBをクリアするとともに演算順位を示すポイン
タiに1をセットする(S32)。こののち、各発音チ
ャンネルの波形データ演算処理(S33〜S44)を実
行する。
【0031】まず演算順序がi番目のチャンネルの音源
レジスタにアドレスを設定して、該チャンネルのデータ
を読み出し可能にするなどの波形データ演算準備処理を
実行する(S33)。つぎに、LFO制御フラグCD1
を判断する(S34)。CD1=1であれば、LFO処
理(S35)を実行する。LFO処理とは、ノートナン
バに対応したFナンバをLFO波形で周波数変調する処
理(ビブラート処理)である。LFOの周波数は楽音周
波数に比べて低く、また、1フレームが短い(128サ
ンプル)ため、1フレームに一つの値でよい。もし、必
要がない場合にはS34から直接S36に進む。S36
では指定された波形テーブルからの波形読出および補間
処理を実行する。Fナンバは、該ノートナンバの楽音を
生成するため指定された波形テーブルをどの速さで読め
ばいいかを指定するデータであり、一般に整数部と小数
部とからなる。
【0032】ここで、図8を参照してS36の波形読出
・補間処理動作を説明する。この動作では、そのときi
で指定されているチャンネルの波形データを1フレーム
(128サンプル)分演算する。まず、サンプル数カウ
ンタSに1をセットする(S50)。つぎに、補間方式
レジスタCD2を参照して補間方式を判定する(S5
1)。ここで、CD2=0の場合は補間なし(ピッチ変
換のないドラム音などを再生する場合)である。CD2
=1の場合には2点補間(ラフな補間で済ませる場
合)、CD3=2の場合には4点補間(折り返しの目立
つデリケートな音の場合)である。
【0033】補間無しの場合には、まず、直前の演算の
アドレス(この場合、処理チャンネルの前のフレームの
波形読み出しで最後に生成したアドレス)にFナンバを
加算してアドレスの更新を行う(S52)。このように
して更新されたアドレスで指定された波形テーブルの波
形サンプルを読み出しRDレジスタにセットする(S5
3)。RDの内容をサンプルバッファSD(S)にセッ
トする(S54)。この動作をS=1からS=128に
なるまで繰り返し実行する(S55,S56)。128
回の処理が完了すれば音源処理動作(図7)に戻る。こ
の場合、Fナンバの小数部により生じたアドレスの小数
部は無視されているので、このことにより折り返しノイ
ズを生じる。また、Fナンバに小数部がなければこの問
題は発生しない。
【0034】CD=1で2点補間をする場合には、ま
ず、直前の演算のアドレスにFナンバを加算してアドレ
スの更新を行う(S57)。このとき、整数部と小数部
からなるアドレスが生成されるため、指定された波形テ
ーブルからこのアドレスを挟む2サンプル(整数部のア
ドレスで指定されるサンプルと整数部+1のアドレスで
指定されるサンプル)の波形データを読み出す(S5
8)。これら2サンプルのデータを小数部の値で直線補
間し、その値をIDレジスタにセットする(S59)。
IDの内容をサンプルバッファSD(S)にセットする
(S60)。この動作をS=1からS=128になるま
で繰り返し実行する(S61,S62)。128回の処
理が完了すれば音源処理動作(図7)に戻る。
【0035】CD=2で4点補間をする場合には、ま
ず、直前の演算のアドレスにFナンバを加算してアドレ
スの更新を行う(S63)。このとき、整数部と小数部
からなるアドレスが生成されるため、指定された波形テ
ーブルからこのアドレスを挟む4サンプル(整数部−
1,整数,整数部+1,整数部+2のアドレスで指定さ
れるサンプル)の波形データを読み出す(S64)。こ
れら4サンプルのデータを通る3次曲線についてその曲
線上の小数部に対応する点の値を求め、その値をIDレ
ジスタにセットする(S65)。IDの内容をサンプル
バッファSD(S)にセットする(S66)。この動作
をS=1からS=128になるまで繰り返し実行する
(S67,S68)。128回の処理が完了すれば音源
処理動作(図7)に戻る。
【0036】図7において、波形読出・補間処理のの
ち、フィルタ制御レジスタCD3を参照する(S3
6)。CD3=0の場合にはディジタルフィルタ処理を
行わないでそのまま音量制御・累算処理(S40)に進
む。また、CD3=1の場合には、サンプルバッファW
B (SD(1) 〜SD(128))の値にフィルタ制御データに
応じた周波数特性を有する一次フィルタ処理を施す(S
38)。また、CD3=2の場合には、サンプルバッフ
ァWBの値にフィルタ制御データに応じた周波数特性を
有する二次フィルタ処理を施す(S39)。こののち音
量制御・累算処理動作に進む(S40)。
【0037】S40では、サンプルバッファWB (SD
(1) 〜SD(128))の値に振幅EGおよびチャンネル音量
パラメータに基づいて楽音の立ち上がりから立ち下がり
にいたる音量時間変化を付与する音量制御を施す。な
お、振幅EGは一般的に緩やかな曲線であるため、12
8サンプルあたり1つのEG値でよい。このレベル制御
されたサンプルバッファWBの値を出力バッファOB
(OD(1) 〜OD(128))の対応するサンプルに足し込
む。この加算動作が各i番目の演算順序を持つチャンネ
ルについて順次繰り返し実行されることにより、出力バ
ッファにはそれまでに生成した全チャンネルの楽音波形
データの累算値が記録されることになる。
【0038】こののち、処理打ち切り時刻TLになった
か否かを判断する(S41)。打ち切り時刻になった場
合には、打ち切り処理を実行する(S43)。打ち切り
処理では、その時点までに波形データを演算できなかっ
たチャンネルの楽音波形をフォースダンプするためのダ
ンプ波形を生成し、出力バッファに足し込む。打ち切り
時間になっていなければ発音中の全チャンネルについて
処理を終了したかを判定する(S42)。すなわち、発
音可能チャンネル数が32チャンネルであっても現在発
音中のチャンネルがそれ以下であれば発音中のチャンネ
ルに関する生成処理が終了すればS42の判断でS45
以下に進む。まだ発音中の全チャンネルに関する処理が
終了していなければ、演算順序を示すiに1を加算して
(S44)、S33に戻る。
【0039】全チャンネルに関する処理が終了し、また
は、打ち切り処理が行われた場合にはS45に進行す
る。S45ではエフェクト制御レジスタCD4を参照す
る。CD4=0であればエフェクトをかけないためその
ままS48に進む。CD=1であれば出力バッファOB
の128サンプルの高域をカットするローパスフィルタ
LPFをかけるためS46でローパスフィルタ演算を施
したのちS48に進む。また、CD4=2の場合には出
力バッファOBの128サンプルに残響を付与するリバ
ーブ処理をかけるためリバーブ演算を施したのち(S4
7)、S48に進む。S48では作成し出力バッファO
Bに記憶されている波形データを再生部に再生予約す
る。この再生予約は、RAM内の記憶アドレスをDMA
に通知する処理である。
【0040】図9は、デューティ比・発音数表示処理
(P表示処理)を示すフローチャートである。まず、S
71でソフト音源全体または音源処理に費やされたCP
U時間を算出する。算出された時間のCPU10の全体
演算時間に対する比を算出し、これをCPU占有率表示
部40に棒グラフで表示する(S72)。次に発音数i
を現在発音数表示部39に表示する(S73)。
【0041】図10はその他処理のうち表示スイッチイ
ベント処理ルーチンを示すフローチャートである。同図
(A)は、スイッチオンイベント処理ルーチンを示して
いる。表示ウィンドゥ30に表示されているスイッチ4
3がオンされた場合には、オンされたスイッチに応じて
現在のカーソル32の位置に対応するデータCDxの値
を設定する(S74)。このデータCDxは上記音源処
理動作で利用される。
【0042】上記第1の実施態様では、カーソル32
は、カーソルキー42の操作に応じて、図4に示される
制御画面上のLFOオン/オフ表示部33,補間設定表
示部34,ディジタルフィルタ設定表示部35,エフェ
クト設定表示部36のいずれかの位置に移動可能であ
る。バリュースイッチ43の操作に応じて、カーソル3
2の位置に対応したデータ、すなわち、LFOオン/オ
フ表示部33ではデータCD1,補間設定表示部34で
はデータCD2,ディジタルフィルタ設定表示部35で
はデータCD3,エフェクト設定表示部36ではデータ
CD4の値が、それぞれ、設定変更される。同図(B)
はデューティ比スイッチオンイベント処理動作を示すフ
ローチャートである。デューティー比スイッチ44がオ
ンされると、オンされたスイッチに応じてデータDRを
増減するとともに、CPU占有率表示部40の点線40
bをこれに応じて表示変更する(S75)。
【0043】図11はこの発明の他の適用例を示すフロ
ーチャートである。このフローチャートは、上記音源処
理の他の例(第2実施態様)である。まず、この音源処
理動作の打ち切り時刻を算出する(S81)。打ち切り
時刻TL(タイムリミット)は、図7の場合と同様に、 TL=ST+FL×DR−US−AS ST:現再生フレームのスタート時刻 FL:フレーム時間長(1フレーム全体の長さ) DR:デューティ比 US:打ち切り処理時間(打ち切り処理(フォースダン
プ)に要する時間) AS:後処理時間(他の処理に制御を渡すために要する
時間) で計算される。
【0044】次にチャンネル制御を行う(S82)。チ
ャンネル制御とは、優先度の高いチャンネルから先に演
算するように32チャンネルの演算順序を設定する処理
である。こののち、3つの独立した出力バッファOB
1,OB2,OB3をクリアするとともに、演算順を示
すポインタiに1をセットして(S83)、波形データ
演算処理(S84〜S92)を実行する。
【0045】まずi番目のチャンネルの音源レジスタに
アドレスを設定するなどの波形データ演算準備処理を実
行する(S84)。つぎに、サンプリング周波数制御レ
ジスタCD5を判断する(S85)。CD5=2であれ
ば、1フレーム(128サンプル)の波形データをその
まま形成するためS88に進んで、128サンプル分の
波形データ演算処理を行い、OB2に加算する。CD5
=1であれば、1フレームを半分の精度(2倍周期のサ
ンプリングクロック:64サンプル)で形成するため、
S87に進んで、64サンプル分の波形データの演算処
理を行い、OB1に加算する。また、CD5=0であれ
ば、1フレームを1/4の精度(4倍周期のサンプリン
グクロック:32サンプル)で形成するため、S86に
進んで、32サンプル分の波形データの演算処理を行
い、OB0に加算する。
【0046】ここで、データCD5の値は、各チャンネ
ル独立のデータCD5(i)として、各チャンネルの発
音時にそれぞれの発音する楽音の音楽パートに応じて設
定されるようにしてもよいし、逆に、ソフト音源全体と
して1つの値CD5を用いるようにしてもよい。例え
ば、1つの値にする場合、図4の制御画面中のサンプリ
ング周波数設定表示部37にカーソルを置いてバリュー
スイッチ43を操作して設定する。設定された1つのデ
ータCD5に応じて、S85における分岐が行われ、対
応する処理が行われる。
【0047】一方、音楽パート毎の場合は、例えば、各
音楽パートとしての各MIDIチャンネルの毎にデータ
CD5を設定する。すなわち、演奏に先立って演奏者
は、1から16のMIDIチャンネルを指定し、対応す
る各パート毎のデータCD51〜CD516の値を設定す
る。そして、ノートオンイベントが入力して図6のノー
トオンイベント処理の実行時に、ステップS23で実行
されるichの音源レジスタの書込処理において、イベ
ントの送られたパートtに応じた同チャンネルのデータ
CD5(i)を音源レジスタ内に設定すればよい。すな
わち、パートtに設定されたデータCD5tを、割り当
てられた発音チャンネルiの音源レジスタのデータCD
5(i)として設定する。以上の処理により、各発音チ
ャンネルi毎にデータCD5(i)が設定され、それに
基づいてステップS85の分岐が各発音チャンネル毎に
独立に行われる。
【0048】次に、データCD5により制御される楽音
特性について述べる。図11の音源処理において、S8
5の分岐により、各発音チャンネルで1フレーム分の波
形として生成する波形サンプル数が変化する。各発音チ
ャンネルで1フレーム分として生成するサンプル数が多
いほど、そのチャンネルの処理に時間がかかる。すなわ
ち、生成サンプル数と処理時間には相関関係がある。本
実施態様では、1秒間に生成するフレーム数は固定(4
8k/128=375フレーム)であり、フレーム毎の
生成サンプル数の変化は1秒当たりの生成サンプル数
(等価サンプリング周波数と呼ぶ)の変化に相当する。
等価サンプリング周波数は生成する楽音の実質的なサン
プリング周波数に相当し、サンプリングの定理によれば
生成する楽音は等価サンプリング周波数の半分以下の周
波数成分を有する。すなわち、等価サンプリング周波数
が高いほど、生成する楽音のクォリティ(音質)は高
い。それぞれ、等価サンプリング周波数は、48kHz
(CD5=2)、24kHz(CD5=1)、12kH
z(CD5=0)である。
【0049】こののち、処理打ち切り時刻TLになった
か否かを判断する(S89)。打ち切り時刻になった場
合には、打ち切り処理を実行する(S91)。打ち切り
処理は、波形データを演算できなかったチャンネルの楽
音波形をフォースダンプするための波形を生成し、出力
バッファに足し込む処理である。打ち切り時間になって
いなければ発音中の全チャンネルについて処理を終了し
たかを判定する(S90)。まだ発音中の全チャンネル
に関する処理が終了していなければ、iに1を加算して
(S92)、S84に戻る。
【0050】全チャンネルに関する処理が終了し、また
は、打ち切り処理が行われた場合にはS93に進む。S
93では、出力バッファOB0の内容を4倍オーバーサ
ンプリングすることにより128サンプル化してOB2
に足し込むとともに、出力バッファOB1の内容を2倍
オーバーサンプリングすることにより128サンプル化
してOB2に足し込む。こののち、バッファOB2に記
憶されている波形データに対してリバーブ処理を施し
(S94)、リバーブ効果の付与された出力バッファO
B2の波形データを再生部に再生予約する(S95)。
以上の動作により、CD5の設定によりサンプリング周
波数を変更して楽音波形を生成することができ、CPU
10の能力に合わせた楽音波形の生成が可能になる。
【0051】なお、第3の実施態様として、ソフト音源
の最大発音数をデータCD6として32以下の数値に予
め制限して設定しておき、図7のS41の打ち切りの判
断を、現在の発音数がこの制限して設定された発音数に
達したか否かによって行うように変更してもよい。すな
わち、本実施態様では、図4の最大発音数設定部38に
より、最大発音数CD6を演奏者が設定し、ソフト音源
は、その設定されたCD6を最大発音数として、それ以
下の同時発音数で楽音生成を行う。この場合には、発音
数でCPU10の占有率(デューティ比)を制限するこ
とができる。
【0052】さらに、第4の実施態様について説明す
る。上記第1実施態様および第2実施態様では、演奏者
の設定したデューティ比DRにより、CPUの有する演
算能力のうちのソフト音源の処理に使用してよい能力の
割合の上限を制御している。一方、上記第3実施態様で
は、演奏者の設定した最大発音数CD6により、ソフト
音源で生成する楽音の最大数が制限される。いずれの実
施態様においても、ソフト音源で生成する楽音数が変化
するのであるが、その変化は波形を生成する音源処理S
8の内部だけであり、外部のプログラム、例えば、発音
割当処理等ではその情報が生かされていない。
【0053】そこで、第4の実態態様では、同時発音数
の可変な音源の、ノートオンイベント処理を実行する際
に現在の同時発音数に応じて発音割当処理S21の割り
当ての態様を変化させる。すなわち、ノートオンイベン
ト処理のステップS21において、まず、データDRに
応じたCPU演算能力を換算した同時発音数、ないし、
データCD6を受け取り、受け取ったデータを最大発音
数MPとして発音割り当てを行う。音源レジスタで現在
発音中とされているチャンネルの数PNが、データ(M
P−1)以下のときは、空いているチャンネルを割り当
てチャンネルにするし、データMPより大きいときはそ
の中からオーバーする分(PN−MP+1)個の消音チ
ャンネルを決定して消音指示を当該チャンネルに書き込
むとともに、1つの空きチャンネルを確保して、それを
割り当てチャンネルとする。この処理では、現在の発音
数に応じて発音割り当てを行っているので、発音を沢山
割り当て過ぎてノイズが生じたり、少なく割り当てて折
角の発音可能能力を活かし切れなかったりということを
防止できる。音源の同時発音数は、音色の切替えによっ
て各チャンネル当たりの処理量が変化したり、演奏中に
データDR,CD6を変化させたりすると、時間の経過
でどんどん変化していくが、上述したように、ノートオ
ンイベント等で発音割り当てを行うときに音源からの同
時発音数を得るようにしておけば、それにも対応可能で
ある。なお、この方式は、ソフト音源に限らず、状況に
応じて最大発音数が変化する全ての音源に適用可能であ
る。
【0054】なお、上記実施態様では、ソフト音源全体
について、ディジタルフィルタDCFのオン/オフ設定
を行うようにしているが、音色パート別、各発音チャン
ネル別に設定を行うようにしてもよい。すなわち、各音
色パート別,各発音チャンネルi別にディジタルフィル
タ設定レジスタCD3(i)を設け、各音色パート,発
音チャンネルの設定モードの中でこれをオン/オフ設定
できるようにしてもよい。上記音源処理(図7)では発
音チャンネル別に分岐処理S37を行っているため、こ
れに対応する処理は容易である。また、その他のデータ
CD1,CD2等についても同様に、音色パート別,各
発音チャンネル別に設定できるようにしてもよい。
【0055】リズム音を生成しようとする場合は、通
常、ピッチ変換の必要がないため、CD2=0(補間な
し)を設定するが、他の楽器に対してチューニングした
い場合には、CD2=1としてピッチ制御をするように
してもよい。本実施態様では、MIDIイベント処理を
デューティ比制御の計算にいれていないが、このMID
Iイベント処理もソフト音源が側の動作としてデューテ
ィ比制御の計算にいれるようにしてもよい。
【0056】CPUパワーの表示や発音数は、高速で変
動する場合があるので、見やすくするために表示のスム
ージングを行ってもよい。外部からのMIDI受信に限
らず、コンピュータ自信の実行する自動演奏プログラム
で再生されたMIDIイベントやゲームソフト等で発生
する発音指示等をソフト音源の演奏入力としてもよい。
また、本発明のソフト音源は、上記実施態様で説明した
ように、Windows等のOSが搭載された汎用のコ
ンピュータで実行してもよいが、これに限らず、鍵盤等
の演奏操作子を備えた電子楽器や演奏操作子を備えない
音源モジュール等の内部にある制御用CPUに実行させ
るようにしてもよい。この場合、従来電子回路で構成し
ていた音源部を縮小または省略することができる。ま
た、ハードの音源部とこのソフト音源を併用してもよ
い。
【0057】本実施態様のエフェクタ制御では、データ
CD4の値に応じて、エフェクト無し,ローパスフィル
タ,リバーブ処理の3つの中から1つを選択するように
なっている。すなわち、ローパスフィルタ,リバーブ処
理という、効果の内容が異なるエフェクトを選択的に付
与できるようになっている。または、処理に必要な演算
量が異なるエフェクトの選択と見ることもできる。この
エフェクトの選択に関しては、さらに、上記実施態様以
外の態様が考えられる。例えば、同一種類のエフェクト
であるが、エフェクトの処理のグレード、および、処理
に必要な演算量の異なる複数のエフェクトプログラムか
ら1つを選択するようにしてもよい。すなわち、エフェ
クトのグレードを上げれば、その分、他に回せる演算量
が減り、同時に生成できるチャンネル数の減少を引き起
こす。演奏者はCD4を設定することにより、演奏曲等
に応じて同時発音数とエフェクトグレードのバランスを
とることができる。
【0058】また、図2に示したソフト音源の時間的な
処理の流れは、1つの例であり、フレームのサイズや、
演奏入力、生成演算、読出再生の時間的な相互関係はこ
の図に限定されない。例えば、演奏入力、生成演算、読
出再生のそれぞれの時間フレームの時間切り替わり位置
が異なるようにしてもよい。さらに、1フレームの時間
間隔が固定長になっているが、これを毎フレームに異な
る長さになるようにしてもよい。ただし、1回の音源処
理で、時間方向に複数の波形サンプルを生成するという
点は、本願発明の実施態様の特徴である。
【0059】
【発明の効果】以上の通り、この発明によれば、プログ
ラムに従って動作するCPUにより、演奏情報の受信と
選択情報の受信が行なわれ、受信した演奏情報に基づく
楽音生成処理が行なわれるとともに、選択情報に応じて
該楽音生成における所定の特性制御処理を追加または省
略するにより、当該CPUで同時に生成可能な最大発音
数を変化させることができ、かつ、同一の演奏情報に対
しても異なる演算処理が実行され得るようになるので、
選択情報に応じて必要な特性制御処理を追加しまた不要
な特性制御処理を削除することにより、その都度の楽音
生成に適した楽音波形生成制御が可能になり、また、不
要な処理を削減することによって演算量が軽減されるた
め、発音数を増加したり、楽音生成以外の処理を行うこ
ともできる。従って、生成しようとする楽音の目的や演
奏形態に適合させて、楽音制御の内容を変更したり、特
定の楽音制御をやめることで処理量を軽減し、その分発
音数を増加させたり、他の目的にCPUのパワーをまわ
したりすることができる。これによって、例えば、マイ
クロコンピュータを用いたソフト音源を実施する場合、
コンピュータ装置のCPUパワーを有効に活用すること
ができる。また、他のアプリケーションプログラムと並
行してソフトウェア音源プログラムを実行する場合、同
時に生成可能な最大発音数を変化させたり、同一の演奏
情報に対しても異なる演算処理が実行され得るようにす
ることで、ソフト音源側の演算量を調整することができ
るので、並行して動作する他のアプリケーションプログ
ラムに対して悪影響を与えないようにすることもでき
る。従って、ソフト音源と並行して他のアプリケーショ
ンを安定して動作させる場合にも適している。
【0060】また、この発明によれば、プログラムに従
って動作するCPUが、演奏情報を受信するとともに当
該CPUの演算量の上限を示す制限情報を受信し、前記
演奏情報に基づく演算処理によって楽音を生成するとと
もに、前記CPUで同時に生成する楽音数を、前記制限
情報が示す演算量の上限に応じて定まる最大同時発音数
以下になるように各楽音の優先度に従って制限すること
を特徴としているので、演算量を制限しつつも、その限
られた演算量のなかで生成できた楽音については音切れ
等起こさず安定した発音が行える。また、発音数の制限
を行なうに際し、各楽音の優先度に従って制限するの
で、優先度の高い楽音が消音されないこととなり、非常
に好ましい。従って、他のアプリケーションプログラム
と並行してソフトウェア音源プログラムを実行する場
合、ソフト音源がCPUパワーを占有する時間を制限情
報で制限することにより、円滑なマルチタスク状態を確
保するのに適している。
【0061】さらに、この発明によれば、プログラムに
従って動作するCPUが、演奏情報を受信するとともに
任意に設定されたサンプリング周波数を示す演算精度情
報を受信し、前記演奏情報に基づき、前記演算精度情報
が示すサンプリング周波数の演算処理によって楽音を生
成することを特徴とするものであるから、サンプリング
周波数を任意に設定することによって演算量を任意に可
変設定することができ、これによって、臨機応変に、効
率的なCPU資源の利用を図ることができる。また、波
形補間の種類を示す演算精度情報に応じて楽音生成処理
における波形補間の精度を可変制御することによって
も、演算量の増減制御を行なうことができるので、効率
的なCPU資源の利用を図ることができる。
【図面の簡単な説明】
【図1】 この発明が適用されるマイクロコンピュータ
装置のブロック図。
【図2】 同マイクロコンピュータ装置で動作するソフ
ト音源の楽音生成処理の時間的流れを説明する図。
【図3】 同ソフト音源実行時にRAMに設定されるメ
モリエリアを説明する図。
【図4】 同ソフト音源実行時に表示される画面を示す
図。
【図5】 同ソフト音源の動作を示すフローチャート。
【図6】 同ソフト音源の動作を示すフローチャート。
【図7】 同ソフト音源の動作を示すフローチャート。
【図8】 同ソフト音源の動作を示すフローチャート。
【図9】 同ソフト音源の動作を示すフローチャート。
【図10】 同ソフト音源の動作を示すフローチャー
ト。
【図11】 同ソフト音源の他の動作例を示すフローチ
ャート。
【符号の説明】
10 CPU 12 RAM 14 CD−ROM 15 MIDIインタフェース 18 DMA 19 DAC 20 サウンドシステム 30 制御パネルウィンドウ 33〜38 設定表示部 39 現在発音数表示部 40 デューティ比表示部 44 デューティ比スイッチ

Claims (21)

    【特許請求の範囲】
  1. 【請求項1】 プログラムに従って動作するCPUが、
    演奏情報を受信するとともに選択情報を受信し、前記演
    奏情報に基づく演算処理によって楽音を生成するととも
    に、前記選択情報に応じて楽音生成における所定の特性
    制御処理を追加または省略することにより、前記CPU
    で同時に生成可能な最大発音数を変化させ、かつ、同一
    の演奏情報に対しても異なる演算処理が実行され得るこ
    とを特徴とする楽音発生方法。
  2. 【請求項2】 前記選択情報は、(1)低周波発振器
    のオン・オフ、(2)補間のオン・オフおよび/または
    補間の種類、(3)フィルタのオン・オフおよび/また
    はフィルタの種類、(4)エフェクトのオン・オフおよ
    び/またはエフェクトの種類、(5)サンプリング周波
    数のうちの少なくとも1つについての選択情報である請
    求項1に記載の楽音生成方法。
  3. 【請求項3】 プログラムに従って動作するCPUが、
    演奏情報を受信するとともに当該CPUの演算量の上限
    を示す制限情報を受信し、前記演奏情報に基づく演算処
    理によって楽音を生成するとともに、前記CPUで同時
    に生成する楽音数を、前記制限情報が示す演算量の上限
    に応じて定まる最大同時発音数以下になるように各楽音
    の優先度に従って制限することを特徴とする楽音発生方
    法。
  4. 【請求項4】 前記制限情報を表示することを特徴とす
    る請求項3に記載の楽音発生方法。
  5. 【請求項5】 前記CPUの演算量が前記制限情報が示
    す上限に達した際に、前記CPUで同時に生成する楽音
    数を制限することを特徴とする請求項3に記載の楽音発
    生方法。
  6. 【請求項6】 前記演奏情報を新たに受信した後に、前
    記CPUで同時に生成する楽音数を制限する処理を行な
    うことを特徴とする請求項3に記載の楽音発生方法。
  7. 【請求項7】 プログラムに従って動作するCPUが、
    演奏情報を受信するとともに任意に設定されたサンプリ
    ング周波数を示す演算精度情報を受信し、前記演奏情報
    に基づき、前記演算精度情報が示すサンプリング周波数
    の演算処理によって楽音を生成することを特徴とする楽
    音発生方法。
  8. 【請求項8】 プログラムに従って動作するCPUが、
    演奏情報を受信するとともに波形補間の種類を示す演算
    精度情報を受信し、前記演奏情報に基づき、前記演算精
    度情報が示す種類の波形補間を含む演算処理によって楽
    音を生成することを特徴とする楽音発生方法。
  9. 【請求項9】 前記演算精度情報を表示することを特徴
    とする請求項7または8に記載の楽音発生方法。
  10. 【請求項10】 前記CPUにおける前記演算処理の演
    算量およびその演算処理の結果生成された楽音数を表示
    することを特徴とする請求項1乃至9のいずれかに記載
    の楽音発生方法。
  11. 【請求項11】 プログラムに従って動作するCPUで
    あって、演奏情報を受信可能にするとともに選択情報を
    受信可能とし、前記演奏情報に基づいて、楽音生成演算
    を実行するとともに、前記選択情報に応じて楽音生成に
    おける所定の特性制御処理を追加または省略することに
    より、前記CPUで同時に生成可能な最大発音数が変化
    し、かつ、同一の演奏情報に対しても異なる演算処理が
    実行され得るものを備えたことを特徴とする楽音発生装
    置。
  12. 【請求項12】 前記選択情報は、(1)低周波発振
    器のオン・オフ、(2)補間のオン・オフおよび/また
    は補間の種類、(3)フィルタのオン・オフおよび/ま
    たはフィルタの種類、(4)エフェクトのオン・オフお
    よび/またはエフェクトの種類、(5)サンプリング周
    波数のうちの少なくとも1つについての選択情報である
    請求項11に記載の楽音生成装置。
  13. 【請求項13】 プログラムに従って動作するCPUで
    あって、演奏情報を受信可能にするとともに当該CPU
    の演算量の上限を示す制限情報を受信可能とし、前記演
    奏情報に基づく演算処理によって楽音を生成するととも
    に、前記CPUで同時に生成する楽音数を、前記制限情
    報が示す演算量の上限に応じて定まる最大同時発音数以
    下になるように各楽音の優先度に従って制限するものを
    備えたことを特徴とする楽音発生装置。
  14. 【請求項14】 前記制限情報を表示する表示手段を備
    えたことを特徴とする請求項13に記載の楽音発生装
    置。
  15. 【請求項15】 前記CPUは、当該CPUの演算量が
    前記制限情報が示す上限に達した際に、前記CPUで同
    時に生成する楽音数を制限することを特徴とする請求項
    13に記載の楽音発生装置。
  16. 【請求項16】 前記CPUは、当該CPUが前記演奏
    情報を新たに受信した後に、当該CPUで同時に生成す
    る楽音数を制限する処理を行なうことを特徴とする請求
    項13に記載の楽音発生装置。
  17. 【請求項17】 プログラムに従って動作するCPUで
    あって、演奏情報を受信可能にするとともに任意に設定
    されたサンプリング周波数を示す演算精度情報を受信可
    能にし、前記演奏情報に基づき、前記演算精度情報が示
    すサンプリング周波数の演算処理によって楽音を生成す
    るものを備えたことを特徴とする楽音発生装置。
  18. 【請求項18】 プログラムに従って動作するCPUで
    あって、演奏情報を受信可能にするとともに波形補間の
    種類を示す演算精度情報を受信可能にし、前記演奏情報
    に基づき、前記演算精度情報が示す種類の波形補間を含
    む演算処理によって楽音を生成するものを備えたことを
    特徴とする楽音発生装置。
  19. 【請求項19】 前記演算精度情報を表示する表示手段
    を備えたことを特徴とする請求項17または18に記載
    の楽音発生装置。
  20. 【請求項20】 前記CPUにおける前記演算処理の演
    算量およびその演算処理の結果生成された楽音数を表示
    することを特徴とする請求項11乃至19のいずれかに
    記載の楽音発生装置。
  21. 【請求項21】 前記CPUは、所定周期毎に楽音の複
    数サンプルを一括して生成することを特徴とする請求項
    1乃至20のいずれかに記載の楽音発生方法または装
    置。
JP11023285A 1999-01-29 1999-01-29 楽音発生方法及び装置 Pending JPH11288285A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11023285A JPH11288285A (ja) 1999-01-29 1999-01-29 楽音発生方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11023285A JPH11288285A (ja) 1999-01-29 1999-01-29 楽音発生方法及び装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP7254366A Division JP3019755B2 (ja) 1995-09-29 1995-10-02 楽音発生方法および楽音発生装置

Publications (1)

Publication Number Publication Date
JPH11288285A true JPH11288285A (ja) 1999-10-19

Family

ID=12106346

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11023285A Pending JPH11288285A (ja) 1999-01-29 1999-01-29 楽音発生方法及び装置

Country Status (1)

Country Link
JP (1) JPH11288285A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005283944A (ja) * 2004-03-30 2005-10-13 Yamaha Corp 楽音データ再生装置
JP2009025498A (ja) * 2007-07-18 2009-02-05 Yamaha Corp 波形生成装置
JP2010008518A (ja) * 2008-06-24 2010-01-14 Sony Computer Entertainment Inc 音楽生成装置、音楽生成方法、及びプログラム
US8008569B2 (en) 2007-12-14 2011-08-30 Casio Computer Co., Ltd. Musical sound generating device and storage medium storing musical sound generation processing program
WO2011151972A1 (ja) * 2010-06-04 2011-12-08 パナソニック株式会社 楽音再生装置及び楽音再生方法
US8558100B2 (en) 2008-06-24 2013-10-15 Sony Corporation Music production apparatus and method of producing music by combining plural music elements

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005283944A (ja) * 2004-03-30 2005-10-13 Yamaha Corp 楽音データ再生装置
JP3918826B2 (ja) * 2004-03-30 2007-05-23 ヤマハ株式会社 楽音データ再生装置
JP2009025498A (ja) * 2007-07-18 2009-02-05 Yamaha Corp 波形生成装置
US8008569B2 (en) 2007-12-14 2011-08-30 Casio Computer Co., Ltd. Musical sound generating device and storage medium storing musical sound generation processing program
JP2010008518A (ja) * 2008-06-24 2010-01-14 Sony Computer Entertainment Inc 音楽生成装置、音楽生成方法、及びプログラム
US8558100B2 (en) 2008-06-24 2013-10-15 Sony Corporation Music production apparatus and method of producing music by combining plural music elements
WO2011151972A1 (ja) * 2010-06-04 2011-12-08 パナソニック株式会社 楽音再生装置及び楽音再生方法

Similar Documents

Publication Publication Date Title
EP2866223B1 (en) Automated music performance time stretch using audio waveform data
JP3293434B2 (ja) 楽音発生方法
KR100402364B1 (ko) 악음발생장치, 악음발생방법 및 기억매체
US5371315A (en) Waveform signal generating apparatus and method for waveform editing system
US5123322A (en) Musical tone generating apparatus for electronic musical instrument
JP2924745B2 (ja) 楽音発生装置及び方法
JP3008922B2 (ja) 楽音発生装置および楽音発生方法
JPH11288285A (ja) 楽音発生方法及び装置
JPH0922287A (ja) 楽音波形生成方法
JP3019755B2 (ja) 楽音発生方法および楽音発生装置
JP3164096B2 (ja) 楽音発生方法及び装置
CA2134308C (en) Audio synthesizer time-sharing its first memory unit between two processors
JPH10307586A (ja) 楽音発生装置および方法
JP3658826B2 (ja) 楽音生成方法
JP4096952B2 (ja) 楽音発生装置
JP3000894B2 (ja) 楽音発生方法
JP3740717B2 (ja) 音源装置及び楽音生成方法
JP3723973B2 (ja) 音源装置
JP7159583B2 (ja) 楽音生成装置、楽音生成方法、楽音生成プログラム及び電子楽器
JP3095018B2 (ja) 楽音発生装置
JP2956552B2 (ja) 楽音発生方法および装置
JP3832382B2 (ja) 楽音生成装置及びプログラム
JP3705203B2 (ja) 楽音発生方法
JP3627557B2 (ja) 楽音発生装置及び方法
JPH1097258A (ja) 波形メモリ音源装置および楽音発生装置