(57)【要約】【課題】  自然な感じに音像を定位させることが可能な楽音生成制御を効率的に行えるパンニング制御装置を提供する。【解決手段】  発音指示部１と、パンニング位置指定部２と、パンニング位置指定部２よりパンニング位置を受け取り、補間処理を施して補間パンニング位置を発生する構成であって、発音開始指示の発生時にパンニング位置をそのまま補間パンニング位置として出力すると共に、それ以降はパンニング位置に基づいて緩やかに変化する時間的に補間された補間値を生成し、補間パンニング位置として出力する補間部３と、パンニング特性関数記憶部４と、補間部３より出力された補間パンニング位置を、パンニング特性関数記憶部４のアドレスとして供給して左側列用の制御信号とし、更に補間パンニング位置の補数を、パンニング特性関数記憶部４のアドレスとして供給して右側列用の制御信号とし、夫々の制御信号を発生する制御信号発生部５とを備えている。【選択図】        図２
2007286308.tif 000002
【特許請求の範囲】
【請求項１】
楽音の発音開始を指示する発音指示手段と、
パンニング位置を指定するパンニング位置指定手段と、
該パンニング位置指定手段より前記パンニング位置を受け取り、補間処理を施して補間パンニング位置を発生する手段であって、前記発音開始指示の発生時に前記パンニング位置をそのまま前記補間パンニング位置として出力すると共に、それ以降は、前記パンニング位置に基づいて緩やかに変化する時間的に補間された補間値を生成して、前記補間パンニング位置として出力する補間手段と、
パンニング特性を表す関数を記憶するパンニング特性関数記憶手段と、
前記補間手段より出力された前記補間パンニング位置を、前記パンニング特性関数記憶手段のアドレスとして供給して左右に分けた場合の片側列用の制御信号とし、更に前記補間パンニング位置の補数を、前記パンニング特性関数記憶手段のアドレスとして供給して他側列用の制御信号とし、それぞれの制御信号を発生する制御信号発生手段と
を具備したことを特徴とするパンニング制御装置。
【請求項２】
前記パンニング特性関数記憶手段に記憶されている関数は、正弦波関数であることを特徴とする請求項１記載のパンニング制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、電子ピアノや電子オルガンと言った電子楽器において、楽音生成制御を効率的に行うパンニング制御装置に関する。
【背景技術】
【０００２】
後述する特許文献１の楽音発生構成では、電子鍵盤楽器などの楽音発生時、通常は、補間演算制御回路に入力される現在値を目標値に漸近させるべく、補間処理を行っている構成が示されている。しかし、その処理中に、新たな発音指示があった場合、補間演算制御回路に入力される現在値と目標値を同一にし、差を無くさせることで、補間処理を終了させ、そのような発音指示を出力した操作者が意図した音量とは異なる音量で楽音が放音開始されるなどして、該操作者が望んでいるものとは異なる演奏になることが無いようにしている。
【０００３】
上記従来構成に用いられるパンニング制御については、後述する特許文献２の構成が前提として用いられている。すなわち、前者の従来技術構成におけるパンニングのための信号生成は、後者の従来構成に示されるように、楽音生成手段から入力されてくる楽音信号を、１の出力制御情報に基づいて出力レベルを制御し、分岐させた楽音信号の方は何も出力レベル制御せずにそのまま出力させて、音像を定位させる構成としている。
【０００４】
従って該構成では、パンニングのための信号生成は、単一補間値を生成するので、回路規模や演算時間といった面では、大変有利である。
【０００５】
他方、後述する特許文献３の構成では、操作子の操作量（パンニング位置）に基づいた２つのパラメータを夫々時分割することで補間処理を行い、音像定位などの補間処理を行う構成が示されている。
【特許文献１】特開平７−５８７９号公報
【特許文献２】特開平６−１２０６５号公報
【特許文献３】特開平８−１８５１８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１及び２の構成では、パンニング特性が左及び右とも中央よりある一定の位置に定位させる制御信号になっていて、いかにも制御された感じに音像が定位してしまい、自然な感じがしない。
【０００７】
他方、特許文献３の構成では、発生する２つのパラメータで右用及び左用のパラメータは、所望の特性にできる可能性はあるが、２つのパラメータに対して実施しなければならないので、演算速度を上げる必要があり、負荷の高い回路が必要になるといった問題があった。
【０００８】
本発明は、以上のような問題に鑑み創案されたもので、自然な感じに音像を定位させることが可能な楽音生成制御を効率的に行えるパンニング制御装置を提供せんとするものである。
【課題を解決するための手段】
【０００９】
そのため本発明に係るパンニング制御装置は、
楽音の発音開始を指示する発音指示手段と、
パンニング位置を指定するパンニング位置指定手段と、
該パンニング位置指定手段より前記パンニング位置を受け取り、補間処理を施して補間パンニング位置を発生する手段であって、前記発音開始指示の発生時に前記パンニング位置をそのまま前記補間パンニング位置として出力すると共に、それ以降は、前記パンニング位置に基づいて緩やかに変化する時間的に補間された補間値を生成して、前記補間パンニング位置として出力する補間手段と、
パンニング特性を表す関数を記憶するパンニング特性関数記憶手段と、
前記補間手段より出力された前記補間パンニング位置を、前記パンニング特性関数記憶手段のアドレスとして供給して左右に分けた場合の片側列用の制御信号とし、更に前記補間パンニング位置の補数を、前記パンニング特性関数記憶手段のアドレスとして供給して他側列用の制御信号とし、それぞれの制御信号を発生する制御信号発生手段と
を備たことを基本的特徴としている。
【００１０】
上記構成によれば、パンニングのための信号生成としては単一補間値を生成し、その単一補間値から２つのパラメータを生成することになる。すなわち、制御信号発生手段より発生される補間パンニング位置が、パンニング特性関数記憶手段のアドレスとして制御信号発生手段に片側列用に供給され、他側列用の補間パンニング位置は、供給されたその補間パンニング位置の補数が用いられる。そのため、演算に高い負荷がかからない、すなわち、演算速度を上げる必要はない。
【００１１】
尚、前記パンニング特性関数記憶手段に記憶されている関数は、正弦波関数であるのが望ましい（請求項２）。昨今パンニング特性として、正弦波関数特性は、自然で一般的になってきているからである。
【発明の効果】
【００１２】
本発明の請求項１及び請求項２記載のパンニング制御装置によれば、パンニングのための信号生成としては単一補間値を生成し、その単一補間値から２つのパラメータを生成することによって、効率的（演算速度を上げず）にパンニング位置に対応する制御信号が生成できるという優れた効果を奏し得る。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態を図示例と共に説明する。
【実施例１】
【００１４】
図１〜図１０までは、本発明に係るパンニング制御装置の一実施例構成が内蔵された電子楽器の構成を示している。
【００１５】
本電子楽器は、図１に示すような回路構成からなる。すなわち、本電子楽器は、同図に示すように、システムバス１００を介して、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、操作パネル部１３、キーボード部１４、楽音発生部１５が相互に接続されて構成されている。
【００１６】
システムバス１００は、アドレスバス、データバス及び制御信号バス等で構成されるもので、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、キーボード部１４、操作パネル部１３、楽音発生部１５を相互に接続し、これらの間で、アドレス信号、データ信号又は制御信号等を送受するために使用される。
【００１７】
ＣＰＵ１０は、本電子楽器の制御をつかさどる中央演算装置で、ＲＯＭ１１に格納されているプログラムに応じて、キーボード部１４の鍵、操作パネル部１３の音色設定スイッチ等を走査し、キーボード部１４の鍵の押鍵・離鍵に伴う鍵（Ｋｅｙ）情報（鍵ＯＮ／ＯＦＦ、鍵番号、タッチ情報等）の楽音発生部１５への割当て処理、操作パネル部の音色設定スイッチ、ボリュームに応じて楽音発生部１５より所望の楽音信号を発生させるように制御する。また、本実施例では、後述するパンポット信号発生器２１の制御信号発生部５に指示して、パンニング制御のための信号処理を行わせる。
【００１８】
上記ＲＯＭ１１は、上述したＣＰＵ１０用の本電子楽器２０用の制御プログラムを読み出し、それに従った設定を行う、プログラムが格納されている読み出し専用メモリである。その他、ＣＰＵ１０が楽音発生に必要な種々のパラメータデータを格納している。
【００１９】
上記ＲＡＭ１２は、ＣＰＵ１０におけるプログラム処理での処理段階のデータを一時記憶しておいたり、エディット可能なパラメータデータ記憶しておく、読み書き可能なメモリで、一部あるいは全部はバッテリーバックアップされて、操作パネル部１３の音色設定に応じた必要なデータを格納保持（電源がＯＦＦとなっても）しておくことができる。また、このＲＡＭには、必要に応じてレジスタ、カウンタ、フラグ機能等が定義されている。
【００２０】
上記操作パネル部１３は、音色選択及び設定するためのスイッチ、ボリュームと選択及び設定状態を表示するＬＣＤあるいはＬＥＤよりなる表示装置を有する。該操作パネル部１３は、後述するように、本実施例に係るパンニング位置指定部２を構成するのスイッチをその一部として備えている。
【００２１】
上記キーボード部１４は、演奏するための鍵盤と、そこで生成される押鍵データを検出し、演奏データとして送り出す鍵盤スキャン回路とで構成されている。該キーボード部１４は、本実施例の発音指示部１の構成も兼ねることになる。
【００２２】
上記楽音発生部１５は、操作パネル部１３で選択及び設定された音色で、キーボード部１４で演奏された鍵に応じた楽音信号を発生する後述する楽音波形発生回路２２、エンベロープ発生器２４、パンポット信号発生器２１、補間部３などを含む部分で、本実施例では、後述するように、本願発明に関係するところのみ記載している。
【００２３】
上記楽音発生部１５の出力は、Ｌ／ＲののＤ／Ａ変換回路２６ａ及び２６ｂに入力され、デジタル−アナログ変換され、サウンドシステム２７を経て、Ｌ／Ｒの両スピーカ２８ａ及び２８ｂから外部に楽音として放出される。
【００２４】
上記Ｄ／Ａ変換回路２６ａ及び２６ｂは、デジタル楽音信号をアナログ楽音信号に変換するデジタルーアナログ変換器で、通常は１つのパッケージに２チャンネル分（ＬＲ分）構成されてている。
【００２５】
上記サウンドシステム２７は、アナログ楽音信号に対して簡単なフィルタ処理（ノイズ除去）、増幅処理を施し、アナログ処理されたアナログ楽音信号を、上記スピーカ２８ａ及び２８ｂで発生させるために増幅をするパワーアンプの構成も含んでいる。
【００２６】
上記スピーカ２８ａ及び２８ｂは、アナログ楽音信号を可聴信号として放音するスピーカである。
【００２７】
また上記楽音発生部１５を構成する楽音波形発生回路２２は、波形メモリ（図示無し）と共に、操作パネル部１３で選択及び設定された音色で、キーボード部１４で演奏された押鍵による演奏データに応じた楽音波形信号を発生する機能を有している。すなわち、上記演奏データに基づいて、波形メモリに対し任意の読み出し信号を生成し、該読み出し信号に基づいて、波形メモリに記憶されている原波形データを読み出し、サンプル間補間処理や、フィルタ処理などを行って、所定の波形データを生成出力する。
【００２８】
上記楽音発生部１５を構成するエンベロープ発生器２４は、操作パネル部１３で選択及び設定された音色で、キーボード部１４で演奏された押鍵データに応じて、システムバス１００を介して供給される目標値及びスピードデータによって、振幅を時間変化制御するための振幅エンベロープを発生する回路である。
【００２９】
図面上の乗算器２３は、楽音波形発生回路２２から発生された楽音波形信号の振幅を、上記エンベロープ発生器２４からのエンベロープ信号で制御するための乗算器である。
【００３０】
上記補間部３は、後述するように、本実施例における補間部３を構成しており、その詳細は詳述する。
【００３１】
上記パンポット信号発生器２１は、後述するように、本実施例におけるパンニング特性関数記憶部４及び制御信号発生部５を含んだ構成であり、上記補間部３で補間処理された１つの補間パンニング位置指定情報信号に基づいて、左（Ｌ）用の制御信号及び右（Ｒ）用の制御信号の２つの制御信号を生成する信号発生器である。
【００３２】
図面上の乗算器２５ａ及び２５ｂは、乗算器２３からの振幅制御された楽音波形信号をどのような左右バランスで出力するか制御する乗算器であって、制御信号の各々は、パンポット信号発生器２１より出力される。
【００３３】
図２は、本発明のパンニング制御装置に係る構成概要説明図である。本実施例構成は、発音指示部１と、パンニング位置指定部２と、補間部３と、パンニング特性関数記憶部４と、制御信号発生部５とを備えている。
【００３４】
上記発音指示部１は、上記キーボード部１４により構成されており、楽音の発音開始を指示する機能を有している。
【００３５】
上記パンニング位置指定部２は、上記パネル操作部１３により構成されており、パンニング位置を指定する機能を有している。また、押鍵された鍵位置や選択された音色等によって指定する機能を有するようにしても良い。
【００３６】
上記補間部３は、その詳細は後述するが、パンニング位置指定部２より前記パンニング位置を受け取り、補間処理を施して補間パンニング位置を発生する回路であって、前記発音開始指示の発生時に前記パンニング位置をそのまま前記補間パンニング位置として出力すると共に、それ以降は、前記パンニング位置に基づいて緩やかに変化する時間的に補間された補間値を生成して、前記補間パンニング位置として出力する機能を備えている。
【００３７】
上記パンニング特性関数記憶部４は、上記パンポット信号発生器２１内に備えられており、パンニング特性を表す関数を記憶するメモリであって、図３（ｃ）に示すような内容がテーブル上に記憶されている。その内容は、同図４−１のような特性を有するテーブルでも、或いは４−２のような特性を有するテーブルを有するようにしても良い。更に種々の特性のテーブルを有するようにしても良い。また、特に図示はしていないが、操作パネル部１３に特性選択機能を設けておき、所望の特性のテーブルを選択させるようにしても良い。
【００３８】
上記制御信号発生部５は、同じくパンポット信号発生器２１内に備えられており、補間部３より出力された前記補間パンニング位置を、前記パンニング特性関数記憶部４のアドレスとして供給して左右に分けた場合の片側（左側）列用の制御信号とし、更に前記補間パンニング位置の補数を補数器３０により算出して、前記パンニング特性関数記憶部４のアドレスとして供給して他側（右側）列用の制御信号とし、それぞれの制御信号を発生する回路である。
【００３９】
上記補間部３は、図１に示すように、操作パネル部１３で設定されたパンニング位置指定情報を目標値として、上記システムバス１００を介して供給され、パンニング位置指定情報の現在値を与えられた目標値に漸近させるような処理をする回路である。そのうち同図に示す補間演算回路５３は、目標値メモリ５２に記憶されているパンニング位置指定情報の目標値と、現在値メモリ５１に記憶されているパンニング位置指定情報の現在値との差の有無を調べ、差がある場合には、現在値を目標値に所定分だけ近づけるための演算を行う。この演算を所定時間単位で繰り返すことによって、パンニング位置指定情報の現在値が更新され、現在値が徐々に目標値に漸近する。
【００４０】
かかる補間動作の途中で（補間処理が終了する前に）、例えば押鍵に基づきキーボード部１４を介して発音指示があると、その直前に操作パネル部１３で設定された値が、目標値メモリ５２及びセレクタ５０を介して現在値メモリ５１に書き込まれる。
【００４１】
ここで、セレクタ５０は、特に図示していないが、通常は、セレクト制御信号（これもＣＰＵ１０で制御される）を、補間演算回路５３からの出力を現在値メモリ５１に導くように選択し、上述のように発音指示があると、システムバス１００を介して、その直前に操作パネル部１３で設定された値を、現在値メモリ５１に導くように選択する機能を備えている。
【００４２】
上記制御信号発生部５は、上記パンニング特性関数記憶部４を除く上記パンポット信号発生器２１で構成されており、図４に示すように、補数器３０と、セレクタ３１と、保持器３３ａ及び３３ｂとを備えており、上述のように、補間部３より出力された前記補間パンニング位置を、前記パンニング特性関数記憶部４のアドレスとして供給して、セレクタ３１により左側に分けられた場合は片側（左側）列用の制御信号とし、更にセレクタ３１により右側に分けられた場合は前記補間パンニング位置の補数を補数器３０により算出して、前記パンニング特性関数記憶部４のアドレスとして供給して他側（右側）列用の制御信号とし、それぞれの制御信号を発生する。
【００４３】
上記補数器３０は、補間部３より発生される補間処理された１つの補間パンニング位置指定情報信号の補数を作成する補数発生回路である。
【００４４】
上記セレクタ３１は、これに加えられる制御信号は特に図示していないが、最初は補間部３より発生された補間処理された補間パンニング位置指定情報を出力するようにし、その次に補数器３０で補数化された補間パンニング位置指定情報を出力するように選択する回路であって、その選択を交互に行う。
【００４５】
上記保持器３３ａは、セレクタ３１が補間部３より発生される補間処理された１つの補間パンニング位置指定情報信号を選択し、その情報でパンニング特性関数記憶部４をアクセスして得られたテーブル値を保持する保持器で、その出力は図３の（ａ）の特性を有する。そして、保持器３３ａの出力はパンポットＬ信号として乗算器２５ａに供給される。
【００４６】
上記保持器３３ｂは、セレクタ３１が補間部３より発生される補間処理された１つの補間パンニング位置指定情報信号を上記補数器３０により補数として算出された信号を選択し、その情報でパンニング特性関数記憶部４をアクセスして得られたテーブル値を保持する保持器で、その出力は図３の（ｂ）の特性を有する。そして、保持器３３ｂの出力はパンポットＲ信号として乗算器２５ｂに供給される。
【００４７】
以上のような構成により、本実施例は構成されているので、パンニングのための信号生成としては、補間部３で生成される単一補間値で済み、その単一補間値から２つのパラメータが生成されることになる。すなわち、制御信号発生部５より発生される補間パンニング位置が、左側列用に、パンニング特性関数記憶部４のアドレスとして制御信号発生部５にセレクタ３１により供給され、パンニング特性関数記憶部４をアクセスして得られたテーブル値が保持器３３ａに保持される。他方右側列用の補間パンニング位置は、供給されたその補間パンニング位置の補数が補数器３０によって算出されてセレクタ３１により供給され、パンニング特性関数記憶部４をアクセスして得られたテーブル値が保持器３３ｂに保持される。そのため、パンニングのための信号生成としては単一補間値を生成し、その単一補間値から２つのパラメータを生成することによって、演算速度を上げずにパンニング位置に対応する制御信号が生成できるようになる。
【００４８】
次に、上記構成において、図５〜図１０に示したフローチャートを参照しながら、本実施例の動作につき説明する。
【００４９】
図５は、本電子楽器のメインルーチンを示すフローチャートであり、電源の投入により起動される。即ち、電源が投入されると、先ず、初期化処理が行われる（ステップＳ１０）。この初期化処理は、ＣＰＵ１０の内部状態を初期状態に設定すると共に、ＲＡＭ１２に定義されているバッファ、レジスタ、カウンタ或いはフラグ等を初期状態に設定する処理である。また、この初期化処理では、楽音発生部１５に所定のデータを送り、電源投入時に不要な音が発生されるのを防止する処理も行われる。
【００５０】
この初期化処理が終了すると、次いで、キースキャン処理が行われる（ステップＳ１１）。このキースキャン処理は、キーボード部１４のキースイッチマトリックス（図示無し）から押鍵データを取り込んでキーイベントマップを作成する処理である。
【００５１】
即ち、キースキャン処理では、キースイッチマトリックスがスキャンされ、各鍵のオン／オフを示すビット列でなる押鍵データ（以下、「新押鍵データ」という）が読み込まれる。
【００５２】
次いで、上記と同様にして前回キースイッチマトリックスから読み込んで既にＲＡＭ１２に記憶されている押鍵データ（以下、「旧押鍵データ」という）と上記新押鍵データとが比較され、相違するビットをオンにしたキーイベントマップが作成される。このキーイベントマップ中にオンになっているビットが存在する場合に、キースイッチベントがあった旨が判断されることになる。
【００５３】
次いで、キースイッチイベントがあるか否かが調べられる（ステップＳ１２）。これは上記キーイベントマップを参照することにより行われる。ここで、何れかのキースイッチのイベントがあったことが判断されると、キーイベント処理が行われる（ステップＳ１３）。このキーイベント処理は、押鍵に伴う発音処理、又は離鍵に伴う消音処理を行うものである。このキーイベント処理の詳細については後述する。
【００５４】
次いで、パネルスキャン処理が行われる（ステップＳ１４）。このパネルスキャン処理は、操作パネル部１３からパネルデータを取り込んでパネルイベントマップを作成する処理である。これは、次のようにして行われる。即ち、先ず、操作パネル部１３がスキャンされ、各スイッチのオン／オフを示すパネルデータ（以下、これらを「新パネルデータ」という）が読み込まれる。
【００５５】
次いで、上記と同様にして前回操作パネル部１３から読み込んで既にＲＡＭ１２に記憶されているパネルデータ（以下、「旧パネルデータ」という）と上記新パネルデータとが比較され、相違するビットをオンにしたパネルイベントマップが作成される。このパネルイベントマップ中にオンになっているビットが存在する場合に、パネルスイッチイベントがあった旨が判断されることになる。
【００５６】
次いで、パネルスイッチのイベントがあるか否かが調べられる（ステップＳ１５）。これは、上記パネルイベントマップを参照することにより行われる。ここで、何れかのパネルイッチのイベントがあったことが判断されると、パネルイベント処理が行われる（ステップＳ１６）。このパネルイベント処理は、操作パネル部１３のスイッチ操作に応じた処理を行ったり、又はＬＥＤ表示器の点灯又は消灯処理を行う。このパネルイベント処理の詳細については後述する。
【００５７】
上記パネル処理が終了すると、又は上記ステップＳ１５でパネルスイッチイベントがないことが判断されると、上記ステップＳ１１に戻って再度同様の処理を繰り返す。このように、メインルーチンの上記ステップＳ１１〜Ｓ１６の繰り返し実行の過程で、パネル操作又は鍵盤操作に応じたイベントが発生すると、そのイベントに対応する処理を行うことにより電子楽器の各種機能が実現されている。
【００５８】
次に、パネルイベント処理の詳細について、図６〜図８に示したフローチャートを参照しながら説明する。このパネルイベント処理ルーチンは、メインルーチンでパネルスイッチのイベントがあったことが判断された場合にコールされるものである。
【００５９】
パネルイベント処理では、先ず、ボリューム設定スイッチのオンイベントがあるか否かが調べられる（ステップＳ２０）。これは上記パネルイベントマップ中のボリューム設定スイッチに対応するビットがオンになっており、且つ、新パネルデータ中のボリューム設定スイッチに対応するビットがオンになっているか否かを調べることにより行われる。
【００６０】
ここで、ボリューム設定スイッチのオンイベントがあることが判断されると、ボリューム変更処理が行われる（ステップＳ２１）。このボリューム変更処理の詳細は図７のフローチャートに示されている。
【００６１】
上記ボリューム変更処理では、先ず、ボリューム設定スイッチで設定されたボリューム値を算出する（ステップＳ３０）。即ち、ボリューム設定スイッチ中の押下されたスイッチを認識し、そのスイッチに対応するボリューム値を算出する。このボリューム値の算出は、予めＲＯＭ１１に格納されているボリュームテーブル（ボリューム設定スイッチ中の各スイッチとボリューム値とが対応付けて記憶されている）から押されたスイッチに対応するボリューム値を読み出すことにより行われる。
【００６２】
次いで、算出されたボリューム値をボリュームバッファレジスタに格納する（ステップＳ３１）。ここでボリュームバッファレジスタは、ＲＡＭ１２に設けられているレジスタである。このボリュームバッファレジスタの内容は、後述するキーイベント処理において発音開始処理を行う際にも参照される。
【００６３】
次いで、ボリュームバッファレジスタの内容、つまりボリューム設定スイッチで設定されたボリューム値を補間部３内の目標値メモリ５２にセットする（ステップＳ３２）。これにより、補間部３では、その時点で現在値メモリ５１のボリューム値格納領域に記憶されているボリューム値を現在値とし、目標値メモリ５２のボリューム値格納領域に格納されたボリューム値を目標値として補間処理を開始する。
【００６４】
次いで、押下されたスイッチに対応するＬＥＤ表示器を点灯する（ステップＳ３３）。その後、このボリューム変更処理ルーチンからリターンしてパネルイベント処理ルーチンに戻る。
【００６５】
パネルイベント処理ルーチンでは、次いで、パンポット設定スイッチのオンイベントがあるか否かが調べられる（ステップＳ２２）。これは上記パネルイベントマップ中のパンポット設定スイッチに対応するビットがオンになっており、且つ、新パネルデータ中のパンポット設定スイッチに対応するビットがオンになっているか否かを調べることにより行われる。
【００６６】
ここで、パンポット設定スイッチのオンイベントがあることが判断されると、パンポット変更処理が行われる（ステップＳ２３）。このパンポット変更処理の詳細は図８のフローチャートに示されている。
【００６７】
上記パンポット変更処理では、セレクタ３１、保持器３３ａ及び３３ｂの値がリセットされる（ステップＳ４０）。
【００６８】
次いで、押下されたスイッチに対応するＬＥＤ表示器を点灯する（ステップＳ４１）。その後、このパンポット変更処理ルーチンからリターンしてパネルイベント処理ルーチンに戻る。
【００６９】
その後、このパンポット変更処理ルーチンからリターンしてパネルイベント処理ルーチンに戻る。
【００７０】
パネルイベント処理ルーチンでは、次いで、「その他の処理」が行われる。即ち、この「その他の処理」では、リズム選択スイッチのイベントに対するリズム変更処理、音色選択スイッチのイベントに対する音色変更処理、効果選択スイッチのイベントに対する効果変更処理等が行われるが、本発明とは直接関係しないので説明は省略する。その後、このパネルイベント処理ルーチンからリターンしてメインルーチンに戻る。
【００７１】
次に、キーイベント処理の詳細について、図９及び図１０に示したフローチャートを参照しながら説明する。このキーイベント処理ルーチンは、メインルーチンでキースイッチのイベントがあったことが判断された場合にコールされるものである。
【００７２】
キーイベント処理では、先ず、キーオンイベントがあるか否かが調べられる（ステップＳ５０）。これは上記キーイベントマップ中のオンになっているキーに対応する新キーデータ中のビットがオンになっているか否かを調べることにより行われる。
【００７３】
ここで、キーオンイベントがあることが判断されると、トランケート処理が行われる（ステップＳ５１）。トランケート処理は、発音中の音を消音させる処理である。次いで、発音開始処理が行われる（ステップＳ５２）。この発音開始処理の詳細は図１０のフローチャートに示されている。
【００７４】
上記発音開始処理では、先ず、押鍵データから周波数データを求め、楽音波形発生回路２２に転送する処理が行われる（ステップＳ６０）。即ち、キーオンイベントのあったキーに対応する音高を発生するための周波数データが算出され、楽音波形発生回路２２に送られる。これにより、波形メモリから波形データを読み出す速度が決定される。
【００７５】
次いで、その時点で選択されている音色番号から波形アドレスを求め、楽音波形発生回路２２に転送する処理が行われる（ステップＳ６１）。即ち、指定されている音色の楽音を発生するための波形データが記憶されている波形メモリのアドレスが算出され、楽音波形発生回路２２に送られる。これにより、波形メモリから読み出すべき波形データの種類が決定される。
【００７６】
次いで、ボリュームバッファレジスタの内容を目標値メモリ５２と現在値メモリ５１の双方に書き込む（ステップＳ６２）。そして、キーオンの発音開始で現在値メモリ５１のボリューム現在値を出力し、その後その現在値から補間演算回路５３の補間演算処理により目標値メモリ５２のボリューム目標値に向けて時間的に穏やかに変化する補間パンニング位置の値を生成する（ステップＳ６３）。
【００７７】
この補間パンニング位置の値が上記パンポット信号発生器２１に入力される。該パンポット信号発生器２１において、ＣＰＵ１０よりセレクタ３１に与えられる値が０か否かがチェックされる(ステップＳ６４）。セレクタ３１に与えられる値が０であれば(ステップＳ６４；Ｙ）、補間部３より出力されてくる補間パンニング位置の値が、そのままパンニング特性関数記憶部４の関数テーブルの読み出しアドレスとして供給されて（ステップＳ６５）、ポンパットＬ側の制御信号として保持器３３ａに出力され、そこで保持される（ステップＳ６６）。
【００７８】
反対にセレクタ３１に与えられる値が０でなければ(ステップＳ６４；Ｎ）、補間部３より出力されてくる補間パンニング位置の値が補数器３０により算出された補間パンニング位置の補数値がパンニング特性関数記憶部４の関数テーブルの読み出しアドレスとして供給されて（ステップＳ６７）、ポンパットＲ側の制御信号として保持器３３ｂに出力され、そこで保持される（ステップＳ６８）。
【００７９】
次いで、エンベロープデータをエンベロープ発生器２４に転送し、発音を開始させる（ステップＳ６９）。即ち、その時選択されている音色番号や押鍵された鍵の鍵域等に応じたエンベロープがエンベロープ発生器２４に送られ、上記保持器３３ａ及び３３ｂに保持された夫々の制御信号が、乗算器２５ａ及び２５ｂで、エンベロープのかけられた上記楽音データに乗算されて、Ｄ／Ａ変換回路２６ａ及び２６ｂ側に出力され、サウンドシステム２７を経て、左右両スピーカ２８ａ及び２８ｂから放音される。
【００８０】
以上の各発音パラメータがセットされることにより、上述したように所定の音色、音高及び音量の楽音の発生が開始される。その後、この発音開始処理ルーチンからリターンしてキーイベント処理ルーチンに戻り、更にキーイベント処理ルーチンもリターンしてメインルーチンに戻る。
【００８１】
一方、図９のキーイベント処理ルーチンのステップＳ５０でキーオンイベントでないと判断される（ステップＳ５０；Ｎ）と、次いで、キーオフイベントであるか否かがチェックされる（ステップＳ５３）。これは上記キーイベントマップ中のオンになっているキーに対応する新キーデータ中のビットがオフになっているか否かを調べることにより行われる。
【００８２】
ここで、キーオフイベントであると判断される（ステップＳ５３；Ｙ）と、発音終了処理が行われる（ステップＳ５４）。これは、楽音発生部１５に所定のデータを送ることにより実現されている。その後、このキーイベント処理ルーチンからリターンしてメインルーチンに戻る。
【実施例２】
【００８３】
図１１は、実施例１の図１に示したパンポット信号発生器２１、乗算器２５ａ及び２５ｂの別の実施形態を示した図である。補数器３０、セレクタ３１、パンニング特性関数記憶部４に関しては、上述の実施例１と同じであるので、その説明は省略する。
【００８４】
本実施例のパンポット信号発生器２１は、上記補数器３０、セレクタ３１、パンニング特性関数記憶部４と同じ構成を有するほか、エンベロープ発生器２４側の乗算器２３より出力されてくる楽音データに対して、１つの乗算器３４が設けられている。そのため、補間部３より出力されてくる補間パンニング位置の値が、そのままパンニング特性関数記憶部４の関数テーブルの読み出しアドレスとして供給されて、出力されてくるポンパットＬ側の制御信号と、補間パンニング位置の値が補数器３０により算出された補間パンニング位置の補数値がパンニング特性関数記憶部４の関数テーブルの読み出しアドレスとして供給されて、出力されてくるポンパットＲ側の制御信号とが、上記乗算器３４により、エンベロープデータのかけられた楽音データに乗算され、それらの値が、保持器３５ａ及び３５ｂに保持され、発音を開始させることになる。
【００８５】
上記のように、乗算器３４は、乗算器２３からの振幅制御された楽音波形信号に対して、順番にパンニング特性関数記憶部４より出力されるＬ側の特性の信号［図３（ａ）参照］と、Ｒ側の特性の信号［図３（ｂ）参照］とを、乗算する乗算器であって、その出力は後述する保持器３５ａ及び３５ｂで保持される。
【００８６】
上記保持器３５ａは、振幅制御された楽音波形信号に図３（ａ）の特性を作用させた信号を保持する保持器であって、その出力はＬ側の楽音信号として、Ｄ／Ａ変換回路２６ａ（Ｌ側）に供給される。
【００８７】
また上記保持器３５ｂは、振幅制御された楽音波形信号に図３（ｂ）の特性を作用させた信号を保持する保持器であって、その出力はＲ側の楽音信号として、Ｄ／Ａ変換回路２６ｂ（Ｒ側）に供給される。
【００８８】
実施例２の構成は、その他の構成は、実施例１と同じであるので、その詳細な動作の説明は、省略する。
【００８９】
以上の実施例２の構成においても、パンニングのための信号生成としては、補間部３で生成される単一補間値で済み、その単一補間値から２つのパラメータが生成されることになる。すなわち、制御信号発生部５より発生される補間パンニング位置が、左側列用に、パンニング特性関数記憶部４のアドレスとして制御信号発生部５にセレクタ３１により供給され、パンニング特性関数記憶部４をアクセスして得られた図３（ａ）の特性を作用させた制御信号として、乗算器３４により、振幅制御された楽音波形信号に乗算させ、保持器３５ａに保持される。他方右側列用の補間パンニング位置は、供給されたその補間パンニング位置の補数が補数器３０によって算出されてセレクタ３１により供給され、パンニング特性関数記憶部４をアクセスして得られた図３（ｂ）の特性を作用させた制御信号として、乗算器３４により、振幅制御された楽音波形信号に乗算させ、保持器３５ｂに保持される。そのため、パンニングのための信号生成としては単一補間値を生成し、その単一補間値から２つのパラメータを生成することによって、演算速度を上げずにパンニング位置に対応する制御信号が生成できるようになる。
【００９０】
尚、本発明のパンニング制御装置は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【産業上の利用可能性】
【００９１】
本発明のパンニング制御装置は、電子ピアノや電子オルガンなどの電子楽器の他、楽音を出力して、音像を定位させる機器などに使用可能である。
【図面の簡単な説明】
【００９２】
【図１】本電子楽器の回路構成を示す回路概要図である。
【図２】本発明のパンニング制御装置に係る構成概要説明図である。
【図３】（ａ）はパンニング特性関数記憶部４をアクセスして得られたテーブル値を保持する保持器３３ａからの出力特性パンポットＬ信号を、（ｂ）はパンニング特性関数記憶部４をアクセスして得られたテーブル値を保持する保持器３３ｂからの出力特性パンポットＲ信号を、（ｃ）はパンニング特性関数記憶部４に記憶されたパンニング特性を表す関数を、各示すグラフである。
【図４】制御信号発生部５の回路構成の概要図である。
【図５】電子楽器のメインルーチンを示すフローチャートである。
【図６】パネルイベント処理ルーチンのフローチャートである。
【図７】ボリューム変更処理のフローチャートである。
【図８】パンポット変更処理のフローチャートである。
【図９】キーイベント処理のフローチャートである。
【図１０】発音開始処理のフローチャートである。
【図１１】本発明のパンニング制御装置の別の実施例構成を示す概要説明図である。
【符号の説明】
【００９３】
１            発音指示部
２            パンニング位置指定部
３            補間部
４            パンニング特性関数記憶部
５            制御信号発生部
１０            ＣＰＵ
１１            ＲＯＭ
１２            ＲＡＭ
１３            操作パネル部
１４            キーボード部
１５            楽音発生部
２０            電子楽器
２１            パンポット信号発生器
２２            楽音波形発生回路
２３            乗算器
２４            エンベロープ発生器
２５ａ、２５ｂ  乗算器
２６ａ、２６ｂ  Ｄ／Ａ変換回路
２７      サウンドシステム
２８ａ、２８ｂ  スピーカ
３０            補数器
３１            セレクタ
３３ａ、３３ｂ  保持器
３４            乗算器
３５ａ、３５ｂ  保持器
５０            セレクタ
５１            現在値メモリ
５２            目標値メモリ
５３            補間演算回路
１００            システムバス
【図１】
2007286308.tif 000003
【図２】
2007286308.tif 000004
【図３】
2007286308.tif 000005
【図４】
2007286308.tif 000006
【図５】
2007286308.tif 000007
【図６】
2007286308.tif 000008
【図７】
2007286308.tif 000009
【図８】
2007286308.tif 000010
【図９】
2007286308.tif 000011
【図１０】
2007286308.tif 000012
【図１１】
2007286308.tif 000013