JP4742248B2 - 効果付加装置および効果処理プログラム - Google Patents

効果付加装置および効果処理プログラム Download PDF

Info

Publication number
JP4742248B2
JP4742248B2 JP2006130208A JP2006130208A JP4742248B2 JP 4742248 B2 JP4742248 B2 JP 4742248B2 JP 2006130208 A JP2006130208 A JP 2006130208A JP 2006130208 A JP2006130208 A JP 2006130208A JP 4742248 B2 JP4742248 B2 JP 4742248B2
Authority
JP
Japan
Prior art keywords
filter coefficient
tone
sound
musical
pitch
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.)
Active
Application number
JP2006130208A
Other languages
English (en)
Other versions
JP2007304177A (ja
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2006130208A priority Critical patent/JP4742248B2/ja
Publication of JP2007304177A publication Critical patent/JP2007304177A/ja
Application granted granted Critical
Publication of JP4742248B2 publication Critical patent/JP4742248B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、電子楽器等に用いて好適な効果付加装置および効果処理プログラムに関する。
電子楽器等の音源から供給される楽音波形に対して各種エフェクト(効果)を付加する効果付加装置が知られている。近年、この種の装置では、音源のマルチ・ティンバー化に伴い、音源側が複数同時発音する各音色の楽音波形について、複数種のエフェクトを共通に付加したり、あるいは音色毎に異なるエフェクトを付加し得るよう、高速に波形処理するDSP(デジタル・シグナル・プロセッサ)にて構成される場合が多い。DSPにて構成され、同時に付加し得るエフェクト種類が制限されずに、多種多様な効果態様を実現する効果付加装置については、例えば特許文献1に開示されている。
特開平11−231873号公報
ところで、上記特許文献1に開示の装置は、同時に付加し得るエフェクト種類が制限されずに、多種多様な効果態様を発生楽音に付加できるものの、演奏情報に従って発生楽音の音色に厚みを与える効果、すなわち演奏情報に応じて音質変化させる効果を付加することができないという問題がある。
そこで本発明は、このような事情に鑑みてなされたもので、演奏情報に応じて音質変化させる効果を付加することができる効果付加装置および効果処理プログラムを提供することを目的としている。
請求項1に記載の発明は、発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した周波数制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第1のフィルタ係数テーブル群と、
発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した位相制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第2のフィルタ係数テーブル群と、
発音すべき楽音の音色を指定する音色指定手段と、
この音色指定手段にて指定された音色が特定音色か否かを判別する判別手段と、
この判別手段により特定音色と判別された場合に前記第2のフィルタ係数テーブル群を選択するとともに、当該特定音色でないと判別された場合は、前記第1のフィルタ係数テーブル群を選択するテーブル群選択手段と、
楽音の発音を指示するとともに、当該楽音の音高及び音量を指示する指示手段と、
この指示手段の発音指示に応答して、指定された音高、音量、及び前記音色指定手段にて指定された音色の楽音を発生する音源手段と、
前記テーブル群選択手段により選択されたフィルタ係数テーブル群の中から、前記指示手段にて指定された音高に対応するフィルタ係数テーブルを選択するとともに、当該選択されたフィルタ係数テーブルから前記指示手段にて指定された音量に対応するフィルタ係数を読み出す読み出し手段と、
この読み出し手段にて読み出されたフィルタ係数が周波数制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた周波数補正のフィルタリングを行うとともに、前記読み出し手段にて読み出されたフィルタ係数が位相制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた位相補正のフィルタリングを行うフィルタ手段と、
を具備することを特徴とする。
請求項2に記載の発明は、発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した周波数制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第1のフィルタ係数テーブル群と、発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した位相制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第2のフィルタ係数テーブル群と、発音すべき楽音の音色を指定する音色指定手段と、楽音の発音を指示するとともに、当該楽音の音高及び音量を指示する指示手段と、この指示手段の発音指示に応答して、指定された音高、音量、及び前記音色指定手段にて指定された音色の楽音を発生する音源手段と、を有する装置として用いられるコンピュータに、
前記音色指定手段にて指定された音色が特定音色か否かを判別する判別ステップと、
特定音色と判別された場合に前記第2のフィルタ係数テーブル群を選択するとともに、当該特定音色でないと判別された場合は、前記第1のフィルタ係数テーブル群を選択するテーブル群選択ステップと、
前記選択されたフィルタ係数テーブル群の中から、前記指示手段にて指定された音高に対応するフィルタ係数テーブルを選択するとともに、当該選択されたフィルタ係数テーブルから前記指示手段にて指定された音量に対応するフィルタ係数を読み出す読み出しステップと、
この読み出されたフィルタ係数が周波数制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた周波数補正のフィルタリングを行うとともに、前記読み出されたフィルタ係数が位相制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた位相補正のフィルタリングを行うフィルタステップと、
を実行させることを特徴とする。
本発明では、予め発音音高および発音音量を含む演奏情報に対応して記憶しておいたフィルタ係数の内、特定音色の楽音の発生を表す演奏情報に応じたフィルタ係数を読み出すと共に、特定音色の楽音の発生を表す演奏情報に応じて、少なくとも第1および第2の特定音色の楽音の同時発音を音源に指示する。そして、この指示に従って音源が同時発音する第1および第2の特定音色の楽音の内、第1の特定音色の楽音をドライ出力する一方、演奏情報に対応して読み出されるフィルタ係数に応じたフィルタリングにより位相補正された第2の特定音色の楽音を出力するので、位相補正されない第1の特定音色の楽音と位相補正された第2の特定音色の楽音とを加算すれば、発生楽音の音色に厚みを与える効果、つまり演奏情報に応じて音質変化させる効果を付加することができる。
以下、図面を参照して本発明の実施の形態について説明する。
A.構成
(1)全体構成
図1は、本発明の実施の一形態による効果付加装置を備えた電子楽器の全体構成を示すブロック図である。この図において、鍵盤10は、押離鍵操作(演奏操作)に応じたキーオン/キーオフイベントおよび鍵番号、ベロシティ等からなる演奏情報を発生する。スイッチ部11は、コンソールパネル(不図示)に配設される各種スイッチから構成され、操作されたスイッチに対応したスイッチイベントを発生する。なお、ここで言う各種スイッチとは、パワーオンオフする電源スイッチや音色を選択する音色選択スイッチなどを指す。
表示部12は、LCDパネルおよびドライバから構成され、後述するCPU13から供給される表示制御信号に応じて各種の設定状態や動作状態を画面表示する。CPU13は、ROM14に格納される各種制御プログラムを実行し、例えば鍵盤1が発生する演奏情報に対応した楽音パラメータを発生して音源17およびDSP18に送出したり、スイッチ部2が発生するスイッチイベントに応じて楽器各部を制御する。
なお、CPU13が音源17に供給する楽音パラメータとは、発音又は消音を指示するノートオン/オフコマンドや発生楽音の音色変更を指示する音色変更コマンドなどを含む。また、CPU13がDSP18に供給する楽音パラメータとは、音源17の発音チャンネルに対応するフィルタ係数を含む。本発明の要旨に係わるCPU13の特徴的な処理動作については追って詳述する。
ROM14は、CPU13にロードされる各種制御プログラムを記憶する。ここで言う各種制御プログラムとは、後述するメインルーチンを含む。RAM15は、CPU13のワークエリアとして用いられ、各種レジスタ・フラグデータを一時記憶する。係数メモリ16は、フィルタ係数を記憶する。CPU13の制御の下に係数メモリ16から読み出されるフィルタ係数は、後述するDSP18に供給される。
係数メモリ16に格納されるフィルタ係数は、図2に図示するように、周波数制御用フィルタ係数FCFおよび位相制御用フィルタ係数PCFを備える。これらフィルタ係数FCF、PCFは、ユーザの音色選択操作に応じて、いずれかがCPU13により選択される。具体的には、ユーザが例えばアコースティックピアノの音色のように、演奏情報に応じて音質変化する音色(以下、特定音色と称す)を選択したときには、位相制御用フィルタ係数PCFが選択され、「特定音色」以外の音色を選択したときには周波数制御用フィルタ係数FCFが選択される。
周波数制御用フィルタ係数FCFは、複数のピッチ対応テーブルTF(1)〜TF(N)を備える。これらピッチ対応テーブルTF(1)〜TF(N)の内、発音音高(具体的には押鍵された鍵の鍵番号)に対応付けられたピッチ対応テーブルTFが選択される。発音音高に応じて選択されるピッチ対応テーブルTFは、複数のレベル対応フィルタ係数LFCF(1)〜LFCF(n)を備える。これらレベル対応フィルタ係数LFCF(1)〜LFCF(n)は、ノートオン時のベロシティに応じて選択される。ベロシティに応じて選択されるレベル対応フィルタ係数LFCFは、図3に図示する通り、フィルタ係数b0、b1、b2、a1およびa2から構成される。これらフィルタ係数b0、b1、b2、a1およびa2が意図するところについては追って述べる。
一方、位相制御用フィルタ係数PCFについても上記周波数制御用フィルタ係数FCFと同様、図2に図示する通り、複数のピッチ対応テーブルTP(1)〜TP(N)を備える。これらピッチ対応テーブルTP(1)〜TP(N)の内、発音音高(具体的には押鍵された鍵の鍵番号)に対応付けられたピッチ対応テーブルTPが選択される。発音音高に応じて選択されるピッチ対応テーブルTPは、複数のレベル対応フィルタ係数LPCF(1)〜LPCF(n)を備える。これらレベル対応フィルタ係数LPCF(1)〜LPCF(n)は、ノートオン時のベロシティに応じて選択される。ベロシティに応じて選択されるレベル対応フィルタ係数LPCFは、図3に図示する通り、フィルタ係数b0、b1およびb2から構成される。これらフィルタ係数b0、b1およびb2が意図するところについては追って述べる。
音源17は、周知の波形メモリ読み出し方式によって構成され、時分割動作する複数の発音チャンネルを備える。音源17は、各種音色の波形データを記憶しており、これらの内、CPU13から供給される楽音パラメータに応じた波形データを読み出して楽音波形を発生する。DSP(デジタル・シグナル・プロセッサ)18は、音源17から供給される楽音波形にフィルタリングを施して効果付加する。DSP18の具体的な構成については追って述べる。サウンドシステム19は、DSP18の各出力(発音チャンネル毎の出力)を混合した後、アナログ形式の楽音波形信号にD/A変換してからレベル増幅させてスピーカから発音させる。
(2)DSP18の構成
次に、図4を参照してDSP18の構成について説明する。なお、この図に示す構成は、DSP18において実行されるマイクロプログラム(アルゴリズム)にて具現するフィルタ機能をブロック図として表現したものである。図4に図示するように、DSP18は、音源17の発音チャンネルに対応して時分割に動作する複数のフィルタ処理部18−1〜18−Nを備える。
これらフィルタ処理部18−1〜18−Nは、入力を1サンプル遅延して出力する遅延素子12a〜12dと、前述したフィルタ係数b0〜b2およびa1〜a2がそれぞれ供給される係数乗算器12e〜12iと、これら係数乗算器12e〜12iの各出力を加算する加算器12jとを備える周知の2次IIR型デジタルフィルタから構成される。
上記構成によるフィルタ処理部18−1〜18−Nでは、前述した周波数制御用フィルタ係数FCF(図3に図示したフィルタ係数b0、b1、b2、a1およびa2)が与えられた場合、次式(1)の伝達関数H(z)を有するフィルタリングにより入力信号の周波数特性を制御する。
H(z)=b0+b1*Z^(−1)+Z^(−2)/1+a1*Z^(−1)+a2*Z^(−2) …(1)
一方、前述した位相制御用フィルタ係数PCF(図3に図示したフィルタ係数b0=a2、b1=a1、b2=1)が与えられた場合、次式(2)の伝達関数Hapf(z)を有するオールパスフィルタリングにより入力信号の位相特性を制御する。
Hapf(z)=b0+b1*Z^(−1)+Z^(−2)/1+b1*Z^(−1)+b0*Z^(−2) …(2) なお、上記(1),(2)式における「^」はべき乗を表す。
B.動作
次に、上記構成による実施の形態の動作を説明する。以下では、図5〜図10を参照してCPU13が実行するメインルーチンの動作を説明した後、図11〜図12を参照してDSP18が実行するDSP処理の動作を説明する。
(1)メインルーチンの動作
電源スイッチ操作によりパワーオンされると、CPU13は図5に図示するメインルーチンを実行してステップSA1に処理を進め、RAM15に格納される各種レジスタやフラグ類をリセットしたり初期値をセットするイニシャライズを行う。また、このステップSA1では、音源17に対して各種レジスタやフラグ類を初期化するよう指示する。そして、イニシャライズが完了すると、CPU13はステップSA2に処理を進め、鍵盤10の各鍵の状態を走査するためのサーチポインタnをゼロリセットする。次いで、ステップSA3では、音色選択スイッチ操作の有無を判断する。音色選択スイッチが操作されなければ、ここでの判断結果は「NO」になり、後述するステップSA12(図6参照)に処理を進める。
一方、音色選択スイッチを操作して音色選択すると、上記ステップSA3の判断結果は「YES」になり、ステップSA4に進む。ステップSA4では、音色選択スイッチの操作により選択された音色の音色番号をレジスタTONEにストアする。以下、レジスタTONEの内容を音色番号TONEと称す。次いで、ステップSA5では、選択された音色番号TONEが「特定音色」であるか否かを判断する。なお、この「特定音色」とは、前述したように、例えばアコースティックピアノの音色のように、演奏操作に応じて音質変化する音色を指す。そして、選択された音色番号TONEが「特定音色」でなければ、判断結果は「NO」になり、ステップSA6に進み、位相フラグPFを「0」にセットする。位相フラグPFが意図するところについては後述する。
次いで、ステップSA7では、係数メモリ16に格納される周波数制御用フィルタ係数FCF(図2参照)を構成するテーブル群(ピッチ対応テーブルTF(1)〜TF(N))を選択した後、後述のステップSA10に処理を進める。これに対し、選択された音色番号TONEが「特定音色」ならば、上記ステップSA5の判断結果は「YES」になり、ステップSA8に進み、位相フラグPFを「1」にセットする。そして、ステップSA9に進み、係数メモリ16に格納される位相制御用フィルタ係数PCF(図2参照)を構成するテーブル群(ピッチ対応テーブルTP(1)〜TP(N))を選択する。
この後、ステップSA10〜SA11に進み、音色番号TONEに基づき音色変更コマンドを作成して音源17へ送付する。これにより、音源17では、音色変更コマンドで指定される音色番号TONEの波形データに基づき楽音波形を形成する準備が整う。続いて、図6に図示するステップSA12では、鍵走査用のサーチポインタnで指定されるレジスタKEY(n)の状態を判断する。レジスタKEY(n)には、鍵走査用のサーチポインタnで指定される鍵の状態、すなわち鍵変化無し、キーオンイベントおよびキーオフイベントのいずれかがストアされる。以下では、レジスタKEY(n)の状態が「鍵変化無し」、「キーオンイベント」および「キーオフイベント」の各場合の動作を説明を進める。
a.鍵変化無しの動作
レジスタKEY(n)の状態が鍵変化無しであると、ステップSA13に進み、鍵走査用のサーチポインタnを歩進させて前述のステップSA3(図5参照)に処理を戻す。
b.キーオンイベント時の動作
レジスタKEY(n)の状態がキーオンイベントであると、ステップSA14に進み、サーチポインタnの値を、押鍵操作された鍵の鍵番号としてレジスタNOTEにストアする。以後、レジスタNOTEの内容を鍵番号NOTEと称す。続いて、ステップSA15では、押鍵操作に応じて発生したベロシティをレジスタVELにストアする。以後、レジスタVELの内容をベロシティVELと称す。次いで、ステップSA16では、レジスタCHをゼロリセットする。以後、レジスタCHの内容を発音チャンネル番号CHと称す。そして、ステップSA17では、位相フラグPFが「0」であるか否かを判断する。以下、位相フラグPFが「0」の場合と、「1」の場合とに分けて動作説明を進める。
<位相フラグPFが「0」の場合>
「特定音色」以外の音色が選択されて位相フラグPFが「0」にセットされていると、ステップSA17の判断結果は「YES」になり、ステップSA18に進む。ステップSA18〜SA20では、最大値Maxまで発音チャンネル番号CHを歩進させながら、空きチャンネルの発音チャンネル番号CHを探し出す空きチャンネルサーチを実行する。すなわち、ステップSA18では、発音チャンネル番号CHに対応するオンフラグON(CH)が「0」、すなわち発音チャンネル番号CHが空きチャンネルであるか否かを判断する。空きチャンネルでなければ、判断結果は「NO」になり、ステップSA19に進み、発音チャンネル番号CHを歩進させる。
そして、ステップSA20では、歩進された発音チャンネル番号CHが最大値Maxを超えたか否か、つまり空きチャンネルサーチが一巡し終えたかどうかを判断する。空きチャンネルサーチが一巡し終えていなければ、判断結果は「NO」になり、上述のステップSA18に処理を戻す。こうした空きチャンネルサーチにより空きチャンネルが見つかれば、ステップSA18の判断結果は「YES」になり、ステップSA21に進む。これに対し、空きチャンネルサーチが一巡し終えてもなお、空きチャンネルが見つからない場合には、上記ステップSA20の判断結果が「YES」になり、前述のステップSA3(図5参照)に処理を戻す。
さて、空きチャンネルが見つかり、ステップSA21に進むと、その空きチャンネルの発音チャンネル番号CHに対応するオンフラグON(CH)に「1」をセットする。続いて、ステップSA22では、発音チャンネル番号CHで指定されるノートレジスタNOTEに、押鍵された鍵の鍵番号NOTEをストアする。次いで、ステップSA23では、前述したステップSA7において選択した周波数制御用フィルタ係数FCF(図2参照)のテーブル群(ピッチ対応テーブルTF(1)〜TF(N))の内から、鍵番号NOTEに対応するピッチ対応テーブルTF(NOTE)を選択する。
そして、ステップSA24では、上記ステップSA23において選択されたピッチ対応テーブルTF(NOTE)からベロシティVELに応じたレベル対応フィルタ係数LFCF(VEL)を読み出す。なお、ピッチ対応テーブルTF(NOTE)からベロシティVELに応じて読み出されるレベル対応フィルタ係数LFCF(VEL)は、図3に図示したように、フィルタ係数b0、b1、b2、a1およびa2からなる。
次いで、ステップSA25〜SA26では、空きチャンネルを表す発音チャンネル番号CHと、発音音高を表す鍵番号NOTEと、発音音量を表すベロシティVELとに基づきノートオンコマンドを作成して音源17に送付する。これにより、音源17は、鍵番号NOTEで指定される音高で「特定音色」以外の音色の楽音波形を、ベロシティVELで指定される音量レベルで発生させて発音チャンネル番号CHから出力する。
次に、ステップSA27では、空きチャンネルを表す発音チャンネル番号CHおよびレベル対応フィルタ係数LFCF(VEL)をDSP18に送付する。これにより、DSP18は、レベル対応フィルタ係数LFCF(VEL)として与えられたフィルタ係数b0、b1、b2、a1およびa2で決定される伝達関数H(z)を有するフィルタリングにより音源17から入力される楽音波形の周波数特性を制御する。続いて、ステップSA28では、鍵走査用のサーチポインタnを歩進させて前述のステップSA3(図5参照)に処理を戻す。
このように、位相フラグPFが「0」の場合、すなわち「特定音色」以外の音色が選択された場合に、鍵番号NOTEの鍵が押鍵されると、発音割当てされた発音チャンネル番号CH、鍵番号NOTEおよびベロシティVELを含むノートオンコマンドに応じて音源17から「特定音色」以外の音色の楽音波形を発生させると共に、DSP18に発音チャンネル番号CHおよびレベル対応フィルタ係数LFCF(VEL)を与え、レベル対応フィルタ係数LFCF(VEL)を構成するフィルタ係数b0、b1、b2、a1およびa2により決定される伝達関数H(z)を有するフィルタリングを、音源17から入力される楽音波形に施す。この結果、「特定音色」以外の音色の楽音波形の周波数特性を制御して効果付加するようになっている。
<位相フラグPFが「1」の場合>
さて一方、位相フラグPFが「1」、つまり「特定音色」が選択された場合には、上述したステップSA17の判断結果が「YES」になり、CPU13は図7に図示するステップSA29に処理を進める。ステップSA29〜SA31では、最大値Maxまで発音チャンネル番号CHを2個一組として歩進させながら、2個一組の空きチャンネルを探し出す空きチャンネルサーチを実行する。すなわち、ステップSA29では、発音チャンネル番号CHに対応するオンフラグON(CH)が「0」、すなわち発音チャンネル番号CHが空きチャンネルであるか否かを判断する。空きチャンネルでなければ、判断結果は「NO」になり、ステップSA30に進み、発音チャンネル番号CHを2つ歩進させる。つまり、発音チャンネル番号CHを一組分進める。
そして、ステップSA31では、歩進された発音チャンネル番号CHが最大値Maxを超えたか否か、つまり空きチャンネルサーチが一巡し終えたかどうかを判断する。空きチャンネルサーチが一巡し終えていなければ、判断結果は「NO」になり、上記ステップSA29に処理を戻す。こうした空きチャンネルサーチにより空きチャンネルが見つかれば、ステップSA29の判断結果は「YES」になり、ステップSA32に進む。これに対し、空きチャンネルサーチが一巡し終えてもなお、空きチャンネルが見つからない場合には、上記ステップSA31の判断結果が「YES」になり、前述のステップSA3(図5参照)に処理を戻す。
ステップSA32〜SA33では、探し出した2個一組の空きチャンネルの発音チャンネル番号CH、CH+1に各々対応するオンフラグON(CH)、ON(CH+1)にそれぞれ「1」をセットする。次いで、ステップSA34では、発音チャンネル番号CH、CH+1でそれぞれ指定されるノートレジスタNOTE(CH)、NOTE(CH+1)に、押鍵された鍵の鍵番号NOTEをストアする。そして、ステップSA35では、前述したステップSA9(図5参照)において選択した位相制御用フィルタ係数PCF(図2参照)のテーブル群(ピッチ対応テーブルTP(1)〜TP(N))の内から、鍵番号NOTEに対応するピッチ対応テーブルTP(NOTE)を選択する。
この後、図8に図示するステップSA36に進み、上記ステップSA35(図7参照)において選択されたピッチ対応テーブルTP(NOTE)からベロシティVELに応じたレベル対応フィルタ係数LPCF(VEL)を読み出す。なお、ピッチ対応テーブルTP(NOTE)からベロシティVELに応じて読み出されるレベル対応フィルタ係数LPCF(VEL)は、図3に図示したように、フィルタ係数b0(=a2)、b1(=a1)およびb2(=1)からなる。
次いで、ステップSA37〜SA38では、2個一組の空きチャンネルの一方を表す発音チャンネル番号CHと、発音音高を表す鍵番号NOTEと、発音音量を表すベロシティVELとに基づきノートオンコマンドを作成して音源17に送付する。続いて、ステップSA39〜SA40では、2個一組の空きチャンネルの他方を表す発音チャンネル番号CH+1と、発音音高を表す鍵番号NOTEと、発音音量を表すベロシティVELとに基づきノートオンコマンドを作成して音源17に送付する。これにより、音源17は、鍵番号NOTEで指定される音高で「特定音色」の楽音波形を、ベロシティVELで指定される音量レベルで発生させて発音チャンネル番号CH、CH+1からそれぞれ出力する。
次に、ステップSA41では、空きチャンネルを表す発音チャンネル番号CHおよびスルー係数をDSP18に送付する。なお、ここで言うスルー係数とは、2次IIR型デジタルフィルタ(図4参照)における係数b0だけを「1」、他の係数b1,b2,a1,a2を「0」として入力信号をそのまま出力させる、所謂ドライ出力を発生させる係数を指す。
続いて、ステップSA42では、空きチャンネルを表す発音チャンネル番号CH+1およびオールパスフィルタ係数をDSP18に送付する。オールパスフィルタ係数は、上記ステップSA36においてピッチ対応テーブルTP(NOTE)からベロシティVELに応じて読み出されるレベル対応フィルタ係数LPCF(VEL)、すなわちフィルタ係数b0(=a2)、b1(=a1)およびb2(=1)である。この後、ステップSA43に進み、鍵走査用のサーチポインタnを歩進させて前述のステップSA3(図5参照)に処理を戻す。
このように、位相フラグPFが「1」の場合、すなわち「特定音色」が選択された場合に鍵番号NOTEの鍵が押鍵されると、発音割当てされた発音チャンネル番号CH,CH+1、鍵番号NOTEおよびベロシティVELを含むノートオンコマンドに応じて音源17から「特定音色」の楽音波形を2音同時発生させる。
また、DSP18に対しては、発音チャンネル番号CHおよびスルー係数を与え、発音チャンネル番号CHの「特定音色」の楽音波形をドライ出力させる一方、発音チャンネル番号CH+1およびレベル対応フィルタ係数LPCF(VEL)を与え、このレベル対応フィルタ係数LPCF(VEL)を構成するフィルタ係数b0(=a2)、b1(=a1)およびb2(=1)により決定される伝達関数Hapf(z)を有するオールパスフィルタリングを、発音チャンネル番号CH+1の「特定音色」の音色の楽音波形に施す。この結果、DSP18は、「特定音色」の楽音波形をドライ出力すると同時に、オールパスフィルタリングにより位相遅延された「特定音色」の楽音波形を出力する。
c.キーオフイベント時の動作
レジスタKEY(n)の状態がキーオフイベントであると、ステップSA12(図6参照)を介して図9に図示するステップSA44に進み、サーチポインタnの値を、離鍵操作された鍵の鍵番号NOTEとしてストアする。次いで、ステップSA45では、発音チャンネル番号CHをゼロリセットする。続いて、ステップSA46では、位相フラグPFが「0」であるか否かを判断する。以下、位相フラグPFが「0」の場合と、「1」の場合とに分けて動作説明を進める。
<位相フラグPFが「0」の場合>
「特定音色」以外の音色が選択されて位相フラグPFが「0」にセットされていると、ステップSA46の判断結果は「YES」になり、ステップSA47に進む。ステップSA47では、離鍵された鍵の鍵番号NOTEと発音チャンネル番号CHで指定されるノートレジスタNOTE(CH)の鍵番号NOTEとが同一であるか、つまり消音すべき発音チャンネル番号CHであるかどうかを判断する。離鍵された鍵の鍵番号NOTEとノートレジスタNOTE(CH)の鍵番号NOTEとが同一でなく、消音すべき発音チャンネル番号CHでなければ、判断結果は「NO」になり、ステップSA48に進み、発音チャンネル番号CHを歩進させて上記ステップSA47に処理を戻す。
そして、歩進された発音チャンネル番号CHで指定されるノートレジスタNOTE(CH)の鍵番号NOTEと離鍵された鍵の鍵番号NOTEとが同一となり、消音すべき発音チャンネル番号CHが見つかると、ステップSA47の判断結果が「YES」となり、ステップSA49に進む。ステップSA49では、消音すべき発音チャンネル番号CHに対応するオンフラグON(CH)をゼロリセットする。
次いで、ステップSA50〜SA51では、消音すべき発音チャンネル番号CHと、離鍵された鍵の鍵番号NOTEとに基づきノートオフコマンドを作成して音源17に送付する。続いて、ステップSA52では、鍵走査用のサーチポインタnを歩進させて前述のステップSA3(図5参照)に処理を戻す。これにより、音源17では、鍵番号NOTEの音高で発音中の「特定音色」以外の音色の楽音波形を消音する。
<位相フラグPFが「1」の場合>
一方、「特定音色」が選択されて位相フラグPFが「1」であると、上述したステップSA46(図9参照)の判断結果が「YES」になり、CPU13は図10に図示するステップSA53に処理を進める。ステップSA53では、離鍵された鍵の鍵番号NOTEと発音チャンネル番号CHで指定されるノートレジスタNOTE(CH)の鍵番号NOTEとが同一であるか、つまり消音すべき発音チャンネル番号CHであるかどうかを判断する。離鍵された鍵の鍵番号NOTEとノートレジスタNOTE(CH)の鍵番号NOTEとが同一でなく、消音すべき発音チャンネル番号CHでなければ、判断結果は「NO」になり、ステップSA54に進み、発音チャンネル番号CHを歩進させて上記ステップSA53に処理を戻す。
そして、歩進された発音チャンネル番号CHで指定されるノートレジスタNOTE(CH)の鍵番号NOTEと離鍵された鍵の鍵番号NOTEとが同一となり、消音すべき発音チャンネル番号CHが見つかると、ステップSA53の判断結果が「YES」となり、ステップSA55に進む。ステップSA55〜SA56では、消音すべき発音チャンネル番号CH,CH+1に各々対応するオンフラグON(CH),ON(CH+1)をそれぞれゼロリセットする。
次いで、ステップSA57〜SA58では、消音すべき発音チャンネル番号CHと、離鍵された鍵の鍵番号NOTEとに基づきノートオフコマンドを作成して音源17に送付し、続くステップSA59〜SA60では、消音すべき発音チャンネル番号CH+1と、離鍵された鍵の鍵番号NOTEとに基づきノートオフコマンドを作成して音源17に送付する。この後、ステップSA61に進み、鍵走査用のサーチポインタnを歩進させて前述のステップSA3(図5参照)に処理を戻す。これにより、音源17では、発音チャンネル番号CH,CH+1を占有して2音同時発音させていた「特定音色」の楽音波形を消音する。
(2)DSP処理の動作
次に、図11〜図12を参照してDSP18が実行するDSP処理の動作を説明する。電源投入に応じて、DSP18は図11に図示するDSP処理を実行してステップSB1に処理を進め、CPU13からの指示に応じて内部メモリ(不図示)を初期化するイニシャライズを行う。イニシャライズが完了すると、DSP18はステップSB2に処理を進め、チャンネルポインタnをゼロリセットする。チャンネルポインタnは、DSP18が備える受信チャンネルを指定する。受信チャンネルとは、図4に図示したフィルタ処理部18−1〜18−Nに相当する。受信チャンネルは、CPU13から供給されるデータに含まれる発音チャンネル番号CHに対応する。
そして、ステップSB3では、チャンネルポインタnで指定される受信チャンネルのデータをCPU13から受信したか否かを判断する。CPU13から受信するデータは、発音チャンネル番号CHおよびフィルタ係数(又はスルー係数)を含む。CPU13からデータを受信していなければ、判断結果は「NO」になり、後述のステップSB5に処理を進める。これに対し、CPU13からデータを受信すると、上記ステップSB3の判断結果は「YES」になり、ステップSB4に進む。ステップSB4では、チャンネルポインタnで指定される受信チャンネルのフィルタ係数(又はスルー係数)を、内部レジスタ(不図示)にストアする。
次いで、ステップSB5ではnチャンネル処理を実行する。nチャンネル処理が実行されると、DSP18は図12に図示するステップSC1に処理を進め、チャンネルポインタnで指定される受信チャンネルのフィルタ係数(又はスルー係数)を内部レジスタから読み出す。続いて、ステップSC2では、内部レジスタから読み出した係数がフィルタ係数であるか否かを判断する。フィルタ係数ならば、判断結果は「YES」になり、ステップSC3に進む。ステップSC3では、チャンネルポインタnで指定される受信チャンネルnのフィルタ処理部18−nに、内部レジスタから読み出したフィルタ係数を供給してフィルタリング処理を実行させた後、本処理を終えて図11に図示するステップSB6に進む。
一方、内部レジスタから読み出した係数がスルー係数ならば、上記ステップSC2の判断結果が「NO」になり、ステップSC4に進む。ステップSC4では、チャンネルポインタnで指定される受信チャンネルnのフィルタ処理部18−nに、内部レジスタから読み出したスルー係数を供給してスルー処理を実行させた後、本処理を終えて図11に図示するステップSB6に進む。なお、ここで言うスルー処理とは、音源11から供給される楽音波形をドライ出力することを指す。
こうしたnチャンネル処理が完了すると、DSP18は図11に図示するステップSB6に進み、チャンネルポインタnをインクリメントして歩進させる。次いで、ステップSB7では、歩進されたチャンネルポインタnが最大値Maxを超えたか否か、つまりDSP18が備える受信チャンネルの全てについて処理を一巡し終えたかどうかを判断する。処理が一巡し終えていなければ、判断結果は「NO」になり、上述したステップSB3に処理を戻す。
以後、DSP18が備える受信チャンネルの全てについて処理を一巡し終えるまで上記ステップSB3〜SB7を繰り返す。そして、歩進されたチャンネルポインタnが最大値Maxを超え、受信チャンネルの全てについて処理を一巡し終えると、ステップSB7の判断結果が「YES」になり、上述のステップSB2に処理を戻す。
以上のように、本実施の形態では、発生すべき楽音の音色として「特定音色」を選択して演奏操作(押鍵操作)を行うと、少なくとも2つの発音チャンネル番号CH,CH+1に発音を割当てて「特定音色」の楽音波形を2音同時発音させ、この2音同時発音される「特定音色」の楽音波形の一方についてはDSP18からドライ出力(スルー出力)させ、他方については、押鍵された鍵の鍵番号NOTEとベロシティVELとに応じて定まるレベル対応フィルタ係数LPCF(VEL)に従ってDSP18がオールパスフィルタリングを施して位相遅延出力する。したがって、位相遅延出力される「特定音色」の楽音波形とドライ出力される「特定音色」の楽音波形とを加算すれば、発生楽音の音色に厚みを与える効果、つまり演奏情報に応じて音質変化させる効果を付加し得るようになる。
なお、上述した実施の形態では、「特定音色」を選択して押鍵操作した場合、音源17に2つの発音チャンネル番号CH,CH+1に発音割当てを指示したが、これに限らず、発音チャンネル数に余裕があれば、2つ以上の発音チャンネルに発音割当てして「特定音色」の楽音波形を複音同時発音させる態様としても構わない。そうした場合、DSP18は、複音同時発音させた楽音波形の内の1つをドライ出力させ、残りの楽音波形については、例えば演奏情報に応じてそれぞれ位相遅延を異ならせる複数のフィルタ係数を発生させ、これらフィルタ係数に応じたオールパスフィルタリングにより複数の「特定音色」の楽音波形の位相遅延を異ならせれば、これらを加算して得る楽音出力に、より一層厚みを与えることができる。
また、本実施の形態では、音色選択操作により選択される音色番号TONE、演奏操作に応じて発生する演奏情報(鍵番号NOTEおよびベロシティVEL)に従って係数メモリ16から読み出すフィルタ係数を指定する態様としたが、これに限らず、音色番号TONE、鍵番号NOTEおよびベロシティVELを含むMIDIデータに従って係数メモリ16から読み出すフィルタ係数を指定する態様とすることも勿論可能であることは言うまでもない。
本発明による実施の一形態の全体構成を示すブロック図である。 係数メモリ16のデータ構成を示す図である。 係数メモリ16に格納されるレベル対応フィルタ係数LFCFおよびレベル対魚フィルタ係数LPCFの構成を示す図である。 DSP18の機能構成を示すブロック図である。 メインルーチンの動作を示すフローチャートである。 メインルーチンの動作を示すフローチャートである。 メインルーチンの動作を示すフローチャートである。 メインルーチンの動作を示すフローチャートである。 メインルーチンの動作を示すフローチャートである。 メインルーチンの動作を示すフローチャートである。 DSP処理の動作を示すフローチャートである。 DSP処理の動作を示すフローチャートである。
符号の説明
10 鍵盤
11 スイッチ部
12 表示部
13 CPU
14 ROM
15 RAM
16 係数メモリ
17 音源
18 DSP
19 サウンドシステム

Claims (2)

  1. 発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した周波数制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第1のフィルタ係数テーブル群と、
    発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した位相制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第2のフィルタ係数テーブル群と、
    発音すべき楽音の音色を指定する音色指定手段と、
    この音色指定手段にて指定された音色が特定音色か否かを判別する判別手段と、
    この判別手段により特定音色と判別された場合に前記第2のフィルタ係数テーブル群を選択するとともに、当該特定音色でないと判別された場合は、前記第1のフィルタ係数テーブル群を選択するテーブル群選択手段と、
    楽音の発音を指示するとともに、当該楽音の音高及び音量を指示する指示手段と、
    この指示手段の発音指示に応答して、指定された音高、音量、及び前記音色指定手段にて指定された音色の楽音を発生する音源手段と、
    前記テーブル群選択手段により選択されたフィルタ係数テーブル群の中から、前記指示手段にて指定された音高に対応するフィルタ係数テーブルを選択するとともに、当該選択されたフィルタ係数テーブルから前記指示手段にて指定された音量に対応するフィルタ係数を読み出す読み出し手段と、
    この読み出し手段にて読み出されたフィルタ係数が周波数制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた周波数補正のフィルタリングを行うとともに、前記読み出し手段にて読み出されたフィルタ係数が位相制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた位相補正のフィルタリングを行うフィルタ手段と、
    を具備することを特徴とする効果付加装置。
  2. 発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した周波数制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第1のフィルタ係数テーブル群と、発音すべき楽音の音高夫々に対応して設けられるとともに、夫々が発音すべき楽音の各音量に対応した位相制御用のフィルタ係数を記憶する、複数のフィルタ係数テーブルからなる第2のフィルタ係数テーブル群と、発音すべき楽音の音色を指定する音色指定手段と、楽音の発音を指示するとともに、当該楽音の音高及び音量を指示する指示手段と、この指示手段の発音指示に応答して、指定された音高、音量、及び前記音色指定手段にて指定された音色の楽音を発生する音源手段と、を有する装置として用いられるコンピュータに、
    前記音色指定手段にて指定された音色が特定音色か否かを判別する判別ステップと、
    特定音色と判別された場合に前記第2のフィルタ係数テーブル群を選択するとともに、当該特定音色でないと判別された場合は、前記第1のフィルタ係数テーブル群を選択するテーブル群選択ステップと、
    前記選択されたフィルタ係数テーブル群の中から、前記指示手段にて指定された音高に対応するフィルタ係数テーブルを選択するとともに、当該選択されたフィルタ係数テーブルから前記指示手段にて指定された音量に対応するフィルタ係数を読み出す読み出しステップと、
    この読み出されたフィルタ係数が周波数制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた周波数補正のフィルタリングを行うとともに、前記読み出されたフィルタ係数が位相制御用である場合は、前記音源手段からの楽音に対して当該読み出されたフィルタ係数に応じた位相補正のフィルタリングを行うフィルタステップと、
    を実行させる効果処理プログラム。
JP2006130208A 2006-05-09 2006-05-09 効果付加装置および効果処理プログラム Active JP4742248B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006130208A JP4742248B2 (ja) 2006-05-09 2006-05-09 効果付加装置および効果処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006130208A JP4742248B2 (ja) 2006-05-09 2006-05-09 効果付加装置および効果処理プログラム

Publications (2)

Publication Number Publication Date
JP2007304177A JP2007304177A (ja) 2007-11-22
JP4742248B2 true JP4742248B2 (ja) 2011-08-10

Family

ID=38838170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006130208A Active JP4742248B2 (ja) 2006-05-09 2006-05-09 効果付加装置および効果処理プログラム

Country Status (1)

Country Link
JP (1) JP4742248B2 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5419769B2 (ja) * 1973-03-20 1979-07-18
JP3116419B2 (ja) * 1991-06-21 2000-12-11 カシオ計算機株式会社 効果付加装置
JP3433762B2 (ja) * 1993-10-25 2003-08-04 ヤマハ株式会社 電子楽器の音源装置
JP3715069B2 (ja) * 1996-04-24 2005-11-09 ヤマハ株式会社 楽音信号合成方法および装置ならびに記録媒体
JP3780695B2 (ja) * 1998-04-21 2006-05-31 カシオ計算機株式会社 効果付加装置、及び音響効果設定方法
JP2000305566A (ja) * 2000-01-01 2000-11-02 Yamaha Corp 楽音効果付与装置
JP3765280B2 (ja) * 2002-03-19 2006-04-12 ヤマハ株式会社 帰還型ディジタルフィルタ

Also Published As

Publication number Publication date
JP2007304177A (ja) 2007-11-22

Similar Documents

Publication Publication Date Title
CN108242231B (zh) 乐音生成装置、电子乐器、乐音生成方法以及存储介质
JP4978993B2 (ja) 楽音発生装置
CN108242232B (zh) 乐音生成装置、电子乐器、乐音生成方法以及存储介质
JP2007193130A (ja) 共鳴音発生装置
JPH05241577A (ja) 電子楽器
JP2021148864A (ja) 電子鍵盤楽器、楽音発生方法及びプログラム
JPH027078B2 (ja)
JP2002366145A (ja) 楽音生成装置
JP2009265470A (ja) 共鳴音発生装置および電子楽器
JP2002311957A (ja) 共鳴装置、共鳴方法及び共鳴処理のためのコンピュータプログラム
JP4335570B2 (ja) 共鳴音生成装置、共鳴音生成方法及び共鳴音生成のためのコンピュータプログラム
JP3694172B2 (ja) 残響共鳴装置及び残響共鳴方法
JP4742248B2 (ja) 効果付加装置および効果処理プログラム
JP4833810B2 (ja) 共鳴音発生装置
JP2009031457A (ja) 楽音発生装置および楽音発生処理プログラム
JPH07306681A (ja) 楽音生成装置
JP2018159734A (ja) 音色制御装置、音色制御方法、プログラムおよび電子楽器
JP4353225B2 (ja) 楽音形成装置
JP2000194361A (ja) 電子音響装置のゆらぎ付加装置及びゆらぎ付加方法
JP4432951B2 (ja) 楽音発生装置および電子楽器
JP2009186632A (ja) 音律制御方法、音律制御のためのコンピュータプログラム及び音律制御装置。
JP2725479B2 (ja) 電子楽器
JPH10198369A (ja) 電子楽器
JP3227806B2 (ja) 発音チャンネル割り当て装置
JP3706372B2 (ja) 楽音信号の周波数特性制御装置及び周波数特性制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090421

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101110

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110201

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110331

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110413

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

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4742248

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150