(57)【要約】【課題】入力信号に対して所定のタイミングから所定の区間の信号のみの繰り返し出力をリアルタイムに行うことができる効果装置を提供すること。【解決手段】フラグＬｏｏｐＳｗの値が「０」である場合には、両スイッチＳＷ１，ＳＷ２が上側へ切り替えられ、ＩＮ側から入力される波形データは、ループ用バッファＲＢへ順次記憶されると共に、ＯＵＴ側から外部へスルー出力される（図４（ａ））。一方、フラグＬｏｏｐＳｗの値が「１」である場合には、両スイッチＳＷ１，ＳＷ２が下側へ切り替えられ、フラグＬｏｏｐＳｗの値が「０」である間にループ用バッファＲＢへ記憶されていた波形データが繰り返し読み出され、ＯＵＴ側から出力される（図４（ｂ））。その結果、入力信号（波形データ）に対して所定のタイミングから所定の区間の信号のみの繰り返し出力ををリアルタイムに行うことができる。【選択図】        図４
2004309725.tif 000002
【特許請求の範囲】
【請求項１】
入力信号に効果を付加して出力する効果装置において、
前記入力信号の所定の区間を指定する区間指定手段と、
その区間指定手段により指定された区間の信号を記憶する記憶手段と、
所定の第１の時間を指定する第１の時間指定手段と、
前記記憶手段に記憶された前記所定の区間の信号を、前記第１の時間指定手段により指定された第１の時間の間、繰り返し読み出して出力するループ出力手段とを備えていることを特徴とする効果装置。
【請求項２】
入力信号に効果を付加して出力する効果装置において、
前記入力信号の所定の区間を指定する区間指定手段と、
その区間指定手段により指定された区間の信号を記憶する記憶手段と、
所定の回数を指定する回数指定手段と、
前記記憶手段に記憶された前記所定の区間の信号を、前記回数指定手段により指定された回数だけ、繰り返し読み出して出力するループ出力手段とを備えていることを特徴とする効果装置。
【請求項３】
所定のテンポを指定するテンポ指定手段と、
そのテンポ指定手段により指定されたテンポにおける所定のタイミングを指定するタイミング指定手段と、
所定の第２の時間を指定する第２の時間指定手段とを備え、
前記区間指定手段は、前記タイミング指定手段により指定されたタイミングと前記第２の時間指定手段により指定された第２の時間とに基づいて、前記入力信号の所定の区間を指定するように構成されていることを特徴とする請求項１又は２に記載の効果装置。
【請求項４】
前記第１の時間指定手段は、前記所定の第１の時間を前記テンポ指定手段により指定されたテンポにおける音符の種類で指定するものであることを特徴とする請求項３記載の効果装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】本発明は、効果装置に関し、特に、入力信号に対して所定のタイミングから所定の区間の信号のみの繰り返し出力をリアルタイムに行うことができる効果装置に関するものである。
【０００２】
【従来の技術】従来より、エフェクタと呼ばれる様々な効果装置が提供されている。例えば、ディレイと呼ばれるエフェクタでは、入力信号をメモリに書き込み、それを遅延して読み出して出力することで、入力信号が一定時間遅延して出力されるという遅延効果が得られる。
【０００３】
また、この種のエフェクタには、例えば、出力信号を入力へ帰還（フィードバック）させる帰還手段と、その帰還手段により帰還された信号を入力信号に加算する加算手段とを備えたものがある。このエフェクタによれば、入力信号と累積加算されていく信号を繰り返し遅延出力することができる（特許文献１）。
【０００４】
【特許文献１】
特開平６−１４９２７８号公報（段落［０００８］、第２図など）
【０００５】
【発明が解決しようとする課題】しかしながら、上述したエフェクタでは、累積加算により得られた遅延信号を繰り返し出力することができるが、入力信号の所定のタイミングから所定の区間の信号のみを繰り返し出力することができないという問題点があった。
【０００６】
即ち、ある音声信号に対して所定のタイミングから所定の区間の信号のみを繰り返し再生するためには、その音声信号を予めサンプリングし、所望のタイミングから所望の区間の信号データを切り出すと共に、その切り出したデータを複数個繋げて音声データを作成しておくという事前の作業が必要となる。そのため、所定のタイミングから所定の区間の信号のみを繰り返し出力するという動作をリアルタイムに行わせることができないのである。
【０００７】
本発明は、上述した事情に鑑みてなされたものであり、入力信号に対して所定のタイミングから所定の区間の信号のみの繰り返し出力をリアルタイムに行うことができる効果装置を提供することを目的としている。
【０００８】
【課題を解決するための手段】この目的を達成するために、請求項１記載の効果装置は、入力信号に効果を付加して出力するものであり、前記入力信号の所定の区間を指定する区間指定手段と、その区間指定手段により指定された区間の信号を記憶する記憶手段と、所定の第１の時間を指定する第１の時間指定手段と、前記記憶手段に記憶された前記所定の区間の信号を、前記第１の時間指定手段により指定された第１の時間の間、繰り返し読み出して出力するループ出力手段とを備えている。
【０００９】
この請求項１記載の効果装置によれば、区間指定手段により入力信号に対する所定の区間が、第１の時間指定手段により所定の第１の時間が、それぞれ指定されると、区間指定手段により指定された所定の区間の信号が記憶手段に記憶されると共に、その記憶された所定の区間の信号が、第１の時間指定手段により指定された第１の時間の間、ループ出力手段により繰り返し読み出されて出力される。即ち、入力信号に対する所定の区間の信号のみの繰り返し出力が所定の時間（第１の時間）の間だけリアルタイムに行われる。
【００１０】
請求項２記載の効果装置は、入力信号に効果を付加して出力するものであり、前記入力信号の所定の区間を指定する区間指定手段と、その区間指定手段により指定された区間の信号を記憶する記憶手段と、所定の回数を指定する回数指定手段と、前記記憶手段に記憶された前記所定の区間の信号を、前記回数指定手段により指定された回数だけ、繰り返し読み出して出力するループ出力手段とを備えている。
【００１１】
この請求項２記載の効果装置によれば、区間指定手段により入力信号に対する所定の区間が、回数指定手段により所定の回数が、それぞれ指定されると、区間指定手段により指定された所定の区間の信号が記憶手段に記憶されると共に、その記憶された所定の区間の信号が、回数指定手段により指定された回数だけ、ループ出力手段により繰り返し読み出されて出力される。即ち、入力信号に対する所定の区間の信号のみの繰り返し出力が所定の回数分だけリアルタイムに行われる。
【００１２】
請求項３記載の効果装置は、請求項１又は２に記載の効果装置において、所定のテンポを指定するテンポ指定手段と、そのテンポ指定手段により指定されたテンポにおける所定のタイミングを指定するタイミング指定手段と、所定の第２の時間を指定する第２の時間指定手段とを備え、前記区間指定手段は、前記タイミング指定手段により指定されたタイミングと前記第２の時間指定手段により指定された第２の時間とに基づいて、前記入力信号の所定の区間を指定するように構成されている。
【００１３】
請求項４記載の効果装置は、請求項３記載の効果装置において、前記第１の時間指定手段は、前記所定の第１の時間を前記テンポ指定手段により指定されたテンポにおける音符の種類で指定するものである。
【００１４】
【発明の効果】本発明によれば、例えば、入力信号の所定の区間を区間指定手段により指定すると共に、所定の第１の時間を第１の時間指定手段により指定した場合には、所定の区間の信号を、指定した第１の時間だけ繰り返し出力することができるので、入力信号に対してリアルタイムに所定の区間の信号のみを所定の時間だけ繰り返し出力することができるという効果がある。
【００１５】
また、例えば、更に所定のタイミングを指定した場合には、その指定されたタイミングに基づいて指定した所定の区間の信号を、指定した第１の時間だけ繰り返し出力することができるので、入力信号に対してリアルタイムに所定のタイミングから所定の区間の信号のみを所定の時間だけ繰り返し出力することができるという効果がある。
【００１６】
【発明の実施の形態】以下、本発明の好ましい実施例について、添付図面を参照して説明する。図１は、本発明の一実施例における効果装置が搭載される電子楽器１００の電気的構成を概略的に示したブロック図である。
【００１７】
電子楽器１００は、ＣＰＵ１と、ＲＯＭ２と、ＲＡＭ３と、ＦｌａｓｈＲＯＭ４と、パッド７やＶＲ（可変抵抗器）８から入力されるアナログ信号をデジタル信号に変換するＡ／Ｄコンバータ（Ａ／Ｄ）５と、スイッチ６と、表示器９と、ＤＳＰ１０と、これらの各構成間を接続するバスライン１３と、マイクロフォンや電子楽器等から入力されたアナログ信号をＤＳＰ１０で処理するためにデジタル信号に変換するＡ／Ｄコンバータ（Ａ／Ｄ）１１と、ＤＳＰ１０から入力されたデジタル信号をスピーカー等を経由して楽音として放音するために、アナログ信号に変換するＤ／Ａコンバータ（Ｄ／Ａ）１２とを主に搭載している。
【００１８】
ＣＰＵ１は、効果装置全体を制御する中央演算処理装置であり、ＲＯＭ２には、このＣＰＵ１により実行される各種の制御プログラムや、その実行の際に参照される固定値データ等が格納されている。ＲＡＭ３は、ＣＰＵ１で実行される制御プログラムに必要な各種レジスタ群などが設定されたワーキングエリアや、処理中のデータを一時的に格納するテンポラリエリア等を有しランダムにアクセスできる書き換え可能なメモリである。なお、図５から図７に示すフローチャートのプログラムは、制御プログラムの一部としてＲＯＭ２内に記憶されている。
【００１９】
ＦｌａｓｈＲＯＭ４は、複数の波形データとそれぞれの波形データに関する各種パラメータと複数のパッチ（パッド７ａ〜７ｆへの波形データの割り当てを含む音色情報）とを記憶する書き換え可能な不揮発性のメモリである。このＦｌａｓｈＲＯＭ４には、プリセットの波形データ（楽音データ）が記憶されると共に、ユーザによってサンプリングされた波形データも記憶される。なお、ＦｌａｓｈＲＯＭ４は、コンパクトフラッシュ（登録商標）等の着脱可能なメモリカードで構成することもできる。
【００２０】
スイッチ６は、パラメータの設定やモード設定を行う操作子群である。本実施例の効果装置では、かかるスイッチ６として、ＰＡＴＣＨボタン２１、ＥＤＩＴボタン２２、ＥＦＦＥＣＴＳボタン２３、ＭＡＮＵＡＬボタン２４、ＰＡＲＡＭＥＴＥＲボタン２６，２７、ＤＥＣボタン２８、ＩＮＣボタン２９、ＥＸＩＴボタン３０、ＥＮＴＥＲボタン３１等が含まれる（図２参照）。
【００２１】
パッド（打面）７は、６つのパッド７ａ〜７ｆから構成されている（図２参照）。パッド７（パッド７ａ〜７ｆ）の裏面には、図示しない打撃センサ（例えば、ピエゾ素子）が備えられている。パッド７の打撃により生じた振動は、打撃センサにより捉えられてアナログ電気信号（トリガ信号）としてＡ／Ｄ５へ出力される。Ａ／Ｄ５に入力されたアナログ電気信号はデジタル信号に変換され、そのデジタル信号がＣＰＵ１において検出される。
【００２２】
ＶＲ８は、音量（出力レベル）調整用のＶＯＬＵＭＥつまみ２０（図２参照）や音量（出力レベル）調節用ペダル（図示せず）等の可変抵抗器である。ＶＲ８の操作により出力されたアナログ電圧値はＡ／Ｄ５に入力されてデジタル値に変換され、そのデジタル値がＣＰＵ１において検出される。
【００２３】
ＤＳＰ１０は、デジタル信号の波形データ（楽音データ）を処理するための演算装置（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）である。ＤＳＰ１０は、マイクロフォンや電子楽器等からサンプリングされＡ／Ｄ１１によりデジタル化された波形データをＦｌａｓｈＲＯＭ４へ出力すると共に、ＦｌａｓｈＲＯＭ４から読み出されたデジタル波形データに所定のエフェクトを付与してＤ／Ａ１２へ出力する。
【００２４】
図２は、本発明の効果装置が搭載される電子楽器１００の操作パネル１５の正面図である。操作パネル１５の下方部には、図２に示すように、上述したＶＲ８（図１参照）としてのＶＯＬＵＭＥつまみ２０と、上述したスイッチ６（図１参照）としての各種ボタン２１〜２４，２６〜３１と、上述した表示器９としてのディスプレイ２５とが配設されており、また、操作パネル１５の上方部には、図２に示すように、６つのパッド（打面）７ａ〜７ｆから構成される上述したパッド７（図１参照）が配設されている。
【００２５】
ＶＯＬＵＭＥつまみ２０は、音量（出力レベル）を調整するためのつまみであり、ＰＡＴＣＨボタン２１及びＥＤＩＴボタン２２は、それぞれパッチモード及びエディットモードへ移行するためのボタンである。また、ＥＦＦＥＣＴボタン２３は、エフェクトを掛けるためのボタンである。
【００２６】
ＭＡＮＵＡＬボタン２４は、後述するパラメータＭａｎｕａｌが割り当てられたボタンであり、かかるＭＡＮＵＡＬボタン２４を押下する毎にパラメータＭａｎｕａｌのオン・オフを切り換え可能に構成されている。
【００２７】
ディスプレイ２５は、電子楽器１００の操作状況（各種動作モード情報、各種パラメータ値など）を表示するためのものであり、例えば、ＰＡＴＣＨボタン２１及びＥＤＩＴボタン２２の押下により選択された各モードに対応する画面が表示される。
【００２８】
ＰＡＲＡＭＥＴＥＲボタン２６，２７は、ディスプレイ２５に表示された各表示画面において、その画面上のページ移動や、表示画面に表示される各種パラメータから一のパラメータを選択するためのスイッチである。なお、各パラメータの詳細については後述する。ＰＡＲＡＭＥＴＥＲボタン２６，２７により選択された各パラメータの値は、ＤＥＣボタン２８の押下により「１」減少される一方、ＩＮＣボタン２９の押下により「１」増加されて入力される。
【００２９】
ＥＸＩＴボタン３０は、ディスプレイ２５に表示された各表示画面において、一つ前の階層の表示画面へ戻るためのボタンであり、ＥＮＴＥＲボタン３１は、入力した値を確定するためのボタンである。
【００３０】
次に、図３を参照して、本発明の効果装置に係る効果（エフェクト）の概要、及び、各パラメータ等について説明する。図３は、本発明の効果装置が搭載される電子楽器による出力信号波形を時間軸上で模式的に示した模式図である。
【００３１】
効果装置は、図３に示すように、原音信号（波形データ）４０に対して所定のタイミング（例えば時間「Ｔ１」）から所定の区間（例えば、時間「Ｔ１」から時間「Ｔ３」までの区間）の信号４０ａを所定の時間（例えば、時間「Ｔ１」から時間「Ｔ２」までの区間）の間だけ繰り返しループ出力することができるように構成されている。
【００３２】
また、かかるループ出力を開始するタイミングは、マニュアルループ又はオートループにより設定される。マニュアルループは、かかる開始タイミングをユーザーが指定するものであり、上述したＭＡＮＵＡＬボタン２４を押下したタイミング（即ち、フラグＭａｎｕａｌの値が「１」に立ち上がったタイミング）からループ出力が開始される。一方、オートループは、開始タイミングを原音信号（波形データ）４０が持つテンポ情報に同期させるものであり、そのテンポ情報に同期した所定のタイミング（即ち、パラメータＴｉｍｉｎｇの値により定まる時間「Ｔ１」）からループ出力が自動的に開始される。
【００３３】
パラメータＭａｎｕａｌは、マニュアルループによるループ出力を行うか否かを指定するパラメータであり、オン／オフに設定可能とされている。このパラメータＭａｎｕａｌが「オン」されると、原則として、そのオンされたタイミングからループ出力が開始され、所定の区間の信号４０ａが繰り返し出力される一方、「オフ」されると、マニュアルループによるループ出力が解除され、原音信号４０が出力される。
【００３４】
なお、このパラメータＭａｎｕａｌは、上述したＭＡＮＵＡＬボタン２４に割り当てられており、かかるＭＡＮＵＡＬボタン２４が演奏中に押下された場合には、パラメータＭａｎｕａｌが瞬時にオン又はオフに切り換えられる。
【００３５】
パラメータＬｏｏｐＬｅｎｇｔｈは、図３に示すように、ループさせる音（即ち、所定の区間の信号４０ａ）の長さを指定するパラメータであり、「０〜１２７」の範囲で設定可能とされている。
【００３６】
パラメータＴｅｍｐｏは、テンポを指定するパラメータであり、「２０〜２６０」の範囲で設定可能とされている。本発明の効果装置に係る効果（エフェクト）は、所定のテンポに同期して付加されるが、原音信号（波形データ）４０がテンポ情報を持たない場合には、このパラメータＴｅｍｐｏで指定されたテンポに同期する。なお、原音信号４０がテンポ情報を持っている場合であっても、後述するパラメータＰｈｒａｓｅＳｙｎｃが「オフ」されている場合には、パラメータＴｅｍｐｏで指定されたテンポに同期する。
【００３７】
パラメータＰｈｒａｓｅＳｙｎｃは、原音信号（波形データ）４０が持つテンポ情報に同期させるか否かを指定するパラメータであり、オン／オフに設定可能とされている。本発明の効果装置に係る効果は、このパラメータＰｈｒａｓｅＳｙｎｃが「オン」されると、原音信号４０が持つテンポ情報に同期して付加される一方、パラメータＰｈｒａｓｅＳｙｎｃが「オフ」されると、原音信号４０がテンポ情報を持つ場合であっても、上述したパラメータＴｅｍｐｏで指定されたテンポに同期して付加される。
【００３８】
パラメータＴｉｍｉｎｇは、オートループによるループ出力を行うか否かを指定すると共に、オートループによるループ出力を行う場合には、そのループ出力を開始するタイミング（即ち、時間「Ｔ１」）を指定するパラメータであり、オートループによるループ出力を行わないことを指定する「オフ」か、又は、ノートオンがあってから所定の区間の信号４０ａが出力される小節中のタイミングを１６分音符単位で指定する「１〜１６」の範囲に設定可能とされている。
【００３９】
パラメータＨｏｌｄは、図３に示すように、上述した所定の区間の信号４０ａを繰り返し出力し続ける時間（即ち、時間「Ｔ１」から時間「Ｔ２」の区間）の長さを指定するパラメータであり、本実施例では、音符の長さ（例えば、３２分音符、１６分音符、８分３連音符、付点１６分音符、８分音符、４分３連音符、付点８分音符、４分音符、２分３連音符、２分音符、付点２分音符、全音符）で指定可能とされている。よって、ループ出力する長さを音楽的に分かり易くすることができる。
【００４０】
また、ＲＡＭ３に記憶される各フラグについても図３を参照しつつ説明する。フラグＡｕｔｏは、オートループによるループ出力中であるか否かを示すフラグである。このフラグＡｕｔｏは、図３に示すように、初期状態では「０」とされており、オートループが開始された場合には「１」とされる一方、オートループが終了された場合には「０」とされる。
【００４１】
フラグＭａｎｕａｌは、上述したＭＡＮＵＡＬボタン２４に割り当てられたパラメータＭａｎｕａｌの状態を示すフラグであり、図３に示すように、そのパラメータＭａｎｕａｌがオンされた（即ち、マニュアルループによるループ出力が指示された）場合に「１」とされる一方、パラメータＭａｎｕａｌがオフされた（即ち、マニュアルループによるループ出力の指示が解除された）場合に「０」とされる。
【００４２】
フラグＬｏｏｐＳｗは、マニュアルループ又はオートループの少なくとも一方により、バッファへ記憶した信号を、バッファから繰り返し読み出して出力する段階であるか否かを示すフラグである。即ち、最初のループ区間（時間「Ｔ１」又はフラグＭａｎｕａｌの値が「１」に立ち上がってから時間「Ｔ３」までの区間）でバッファへ記憶した信号を、バッファから繰り返し読み出して出力するループ区間（時間「Ｔ３」から時間「Ｔ２」までの区間）の間に「１」とされる。それ以外（前記した最初のループ区間も含む）では「０」とされる。
【００４３】
ここで、ＣＰＵ１及びＤＳＰ１０の役割について説明する。ＣＰＵ１は、ノートオンの後、ＦｌａｓｈＲＯＭ４から原音信号（波形データ）４０を読み出して、ＤＳＰ１０へ供給する。ＤＳＰ１０は、供給された原音信号４０をＲＡＭ３に領域が確保されたバッファへ記憶させつつ、その供給された原音信号４０をＤ／Ａ１２を介してスピーカ等から外部へ出力する。
【００４４】
そして、ＤＳＰ１０は、フラグＬｏｏｐＳｗの値が「１」になった場合には（即ち、時間「Ｔ３」から時間「Ｔ２」までの区間では）、上述したバッファに記憶させておいた信号から所定の区間（時間「Ｔ１」から時間「Ｔ３」までの区間）に対応する信号４０ａを繰り返し読み出して、その読み出した信号４０ａをＤ／Ａ１２を介してスピーカ等から外部へ出力する。その結果、本発明の効果装置は、原音信号４０に対して、その所定のタイミングから所定の区間の信号４０ａをリアルタイムに繰り返し出力するという効果（エフェクト）を付加することができるのである。
【００４５】
なお、図３において、フラグＡｕｔｏの変化とフラグＭａｎｕａｌの変化が同じであるように描いてあるが、これはフラグの変化とループ動作との関係を表すための便宜的なものである。実際には、フラグＡｕｔｏはオートループ動作に応じて変化し、フラグＭａｎｕａｌはマニュアルループ動作に応じて変化するので、両者は互いに独立して変化する。後にフローチャートで説明するように、オートループとマニュアルループとは論理的に和となるような動作をする。即ち、フラグＡｕｔｏ又はフラグＭａｎｕａｌの少なくとも一方が「１」に立ち上がれば、バッファへの記憶を開始してループ動作を行い、両者とも「０」に立ち下がれば、バッファからの読み出しを停止してループ動作を終了する。
【００４６】
ここで、図４を参照して、この効果装置に係る効果（エフェクト）の原理について説明する。図４は、本発明の効果装置に係る効果の原理を模式的に示した模式図であり、図４（ａ），（ｂ）は、それぞれフラグＬｏｏｐＳｗの値が「０」及び「１」である場合に対応する。
【００４７】
２つのスイッチＳＷ１，ＳＷ２は、フラグＬｏｏｐＳｗの値に連動して切り替わるように構成されており、まず、フラグＬｏｏｐＳｗの値が「０」である場合には、図４（ａ）に示すように、これら両スイッチＳＷ１，ＳＷ２が上側へ切り替えられる。その結果、ＩＮ側から入力される波形データは、ループ用バッファＲＢへ順次記憶されると共に、経路ｒを介して、ＯＵＴ側から外部へスルー出力される。なお、かかる動作は、上述した図３において、ノートオンから時間「Ｔ３」までの区間、及び、時間「Ｔ２」以降の区間における動作に対応する。また、ループ用バッファＲＢのバッファ量は、パラメータＬｏｏｐＬｅｎｇｔｈの設定値に対応する。
【００４８】
一方、フラグＬｏｏｐＳｗの値が「１」である場合には、図４（ｂ）に示すように、両スイッチＳＷ１，ＳＷ２が下側へ切り替えられる。その結果、ＩＮ側とＯＵＴ側とを接続する経路が遮断され、この場合には、フラグＬｏｏｐＳｗの値が「０」である間にループ用バッファＲＢへ記憶されていた波形データが繰り返し読み出され、ＯＵＴ側から出力される。なお、この動作は、上述した図３において、時間「Ｔ３」から時間「Ｔ２」までの区間における動作に対応する。
【００４９】
次に、上記のように構成された効果装置で実行される処理を、図５から図７のフローチャートを参照して説明する。なお、これらの処理の説明においては、図３及び図４を適宜参照しつつ説明する。
【００５０】
図５は、本発明の効果装置が搭載される電子楽器において実行されるメイン処理を示すフローチャートである。この処理は、ノートオンがあった場合に、即ち、パッド７の打撃が検出された場合に、ＣＰＵ１によって実行される処理であり、各パラメータやフラグの設定状態などに応じた効果（エフェクト）を波形データに付加し、スピーカ等を介して外部へ出力するための処理である。
【００５１】
ＣＰＵ１は、メイン処理に関し、まず、パラメータＰｈｒａｓｅＳｙｎｃの値がオンであるか否かを判断する（Ｓ１）。その結果、パラメータＰｈｒａｓｅＳｙｎｃの値がオンであると判断される場合には（Ｓ１：Ｙｅｓ）、効果装置による効果（エフェクト）を波形データが持つテンポ情報へ同期させることが指示されているということである。よって、この場合には（Ｓ１：Ｙｅｓ）、ＦｌａｓｈＲＯＭ４から読み出す波形データがテンポ情報を持っているか否かを判断し（Ｓ２）、その波形データがテンポ情報を持っていると判断される場合には（Ｓ２：Ｙｅｓ）、効果装置による効果が波形データの持つテンポと同期するように設定した後（Ｓ３）、Ｓ５の処理へ移行する。
【００５２】
一方、Ｓ１の処理において、パラメータＰｈｒａｓｅＳｙｎｃの値がオンではないと判断される場合には（Ｓ１：Ｎｏ）、効果装置による効果（エフェクト）を波形データが持つテンポ情報へ同期させることが指示されておらず、また、かかる同期が指示されている場合であっても（Ｓ１：Ｙｅｓ）、波形データがテンポ情報を持っていない場合には（Ｓ２：Ｎｏ）、そのテンポ情報へ同期させることが不可能であるため、これらの場合には（Ｓ１：Ｎｏ、又は、Ｓ２：Ｎｏ）、効果装置による効果がパラメータＴｅｍｐｏで設定されたテンポに同期するように設定した後（Ｓ４）、Ｓ５の処理へ移行する。
【００５３】
Ｓ５の処理では、読み出しアドレスＡＤＲＳに波形データのスタートポイントＳＴＡＲＴの値を格納して（Ｓ５）、Ｓ６の処理へ移行する。ここで、読み出しアドレスＡＤＲＳは、ＣＰＵ１に設けられたレジスタであり、スタートポイントＳＴＡＲＴは、ＦｌａｓｈＲＯＭ４における波形データの開始アドレス値である。なお、後述するエンドポイントＥＮＤは、そのＦｌａｓｈＲＯＭ４における波形データの終了アドレス値である。
【００５４】
Ｓ６の処理では、タイマ１に時間「Ｔ１」をセットする（Ｓ６）。時間「Ｔ１」は、オートループによるループ出力を行う場合に、そのループ出力を開始するタイミングを表す時間であり（図３参照）、パラメータＴｉｍｉｎｇにより設定される。ＣＰＵ１は、タイマ１の計時により時間「Ｔ１」のタイミングが到来したと判断される場合には、実行中の制御を一時中断して、図７のフローチャートに示すタイマ割込（インタラプト）処理を実行する。このタイマ割込処理の詳細については、後述する。
【００５５】
なお、パラメータＴｉｍｉｎｇの値が「オフ」に設定されている場合には、タイマ１による時間「Ｔ１」の計時は行われず、よって、図７のフローチャートに示すタイマ割込処理も実行されないので、オートループによるループ出力は行われない。
【００５６】
Ｓ６の処理において時間「Ｔ１」をセットした後は、読み出しアドレスＡＤＲＳの値に対応するＦｌａｓｈＲＯＭ４のアドレス位置から波形データを読み出すと共に、その読み出した波形データをＤＳＰ１０へ送信する（Ｓ７）。
【００５７】
波形データを受信したＤＳＰ１０は、オートループ又はマニュアルループによるループ出力中でなければ、その受信した波形データをＲＡＭ３に領域が確保されたバッファへ記憶させつつ、Ｄ／Ａ１２を介してスピーカ等から外部へ出力する（図４（ａ）参照）。一方、オートループ又はマニュアルループによるループ出力中であれば、ＤＳＰ１０は、上述したバッファに記憶させておいた波形データを繰り返し読み出して出力する（図４（ｂ）参照）。よって、この場合には、受信した波形データは無視される。
【００５８】
ＤＳＰ１０へ波形データを送信した後は（Ｓ７）、読み出しアドレスＡＤＲＳの値に「１」を加算し（Ｓ８）、その加算後の読み出しアドレスＡＤＲＳの値がエンドポイントＥＮＤの値を超えているか否かを判断する（Ｓ９）。
【００５９】
その結果、読み出しアドレスＡＤＲＳの値がエンドポイントＥＮＤの値を超えていないと判断される場合には（Ｓ９：Ｙｅｓ）、ＦｌａｓｈＲＯＭ４からの波形データの読み出しが未だ終了していないということであるので、残りの波形データを読み出すべく、Ｓ１０の処理へ移行する。一方、読み出しアドレスＡＤＲＳの値がエンドポイントＥＮＤの値を超えたと判断される場合には（Ｓ９：Ｎｏ）、ＦｌａｓｈＲＯＭ４からの全ての波形データの読み出しが終了したということであるので、このメイン処理を終了する。
【００６０】
Ｓ１０の処理では、フラグＡｕｔｏの値が「０」であるか否かを判断する（Ｓ１０）。その結果、フラグＡｕｔｏの値が「０」であると判断される場合には（Ｓ１０：Ｙｅｓ）、オートループによるループ出力が指示されていないか（即ち、パラメータＴｉｍｉｎｇがオフされている）、又は、オートループによるループ出力の指示はされているが、時間「Ｔ１」のタイミングが未だ到来しておらずオートループによるループ出力が開始されていない、若しくは、オートループによるループ出力が既に終了しているということである（図３参照）。よって、この場合には（Ｓ１０：Ｙｅｓ）、マニュアルループに対応するべく、Ｓ１１の処理へ移行する。
【００６１】
一方、Ｓ１０の処理において、フラグＡｕｔｏの値が「１」であると判断される場合には（Ｓ１０：Ｎｏ）、オートループによるループ出力中である（図３参照）。この場合には、Ｓ７の処理へ戻り、かかるオートループによるループ出力が終了するまでの間（Ｓ１０：Ｙｅｓ）、Ｓ７からＳ９の処理を繰り返し実行する。このように、オートループによるループ出力中においても、ＦｌａｓｈＲＯＭ４から波形データ（図３の時間「Ｔ１」から時間「Ｔ２」までの区間における原音信号４０に対応）を順次読み出し続けることにより、オートループによるループ出力が終了した場合の波形データの読み出し位置（図３の時間「Ｔ２」の位置）を拍のタイミングに適正に一致させることができる。
【００６２】
Ｓ１１の処理では、パラメータＭａｎｕａｌの値に変化があったか否か、即ち、ＭＡＮＵＡＬボタン２４が操作されたか否かを判断する（Ｓ１１）。その結果、パラメータＭａｎｕａｌの値に変化がないと判断される場合には（Ｓ１１：「変化なし」）、ユーザーによるＭＡＮＵＡＬボタン２４の操作は行われておらず、よって、マニュアルループによるループ出力の指示はされていないということであるので、通常の演奏を続行するべく、Ｓ７の処理へ戻る。
【００６３】
一方、Ｓ１１の処理において、パラメータＭａｎｕａｌの値が「オフ」から「オン」へ変化したと判断される場合には（Ｓ１１：「オフからオンへ」）、ＭＡＮＵＡＬボタン２４がユーザーにより押下操作され、マニュアルループによるループ出力の開始が指示がされたということである。なお、かかる開始指示により、フラグＭａｎｕａｌの値は「１」に設定される（図３参照）。
【００６４】
よって、この場合には（Ｓ１１：「オフからオンへ」）、タイマ２にパラメータＬｏｏｐＬｅｎｇｔｈにより定まる時間Ｔ３をセットし（Ｓ１２）、ループさせる音（図３の信号４０ａに対応）の長さを設定した後、Ｓ１３の処理へ移行する。なお、タイマ２の計時により時間Ｔ３のタイミングが到来したと判断された場合には、ＣＰＵ１は、実行中の制御を中断して、図６のフローチャートに示すタイマ割込（インタラプト）処理を実行する。ここで、図６を参照して、このタイマ割込処理について説明する。
【００６５】
図６は、時間「Ｔ３」のタイマ割込（インタラプト）で起動される処理を示すフローチャートである。時間Ｔ３のタイミングが到来すると、ＣＰＵ１は、フラグＬｏｏｐＳｗの値を「１」に設定し（Ｓ２１）、このタイマ割込処理を終了する。なお、このタイマ割込処理の終了後は、割り込み前に実行していた制御の中断位置へ制御を戻し、その中断位置から制御を再開する。
【００６６】
図５に戻って説明する。Ｓ１３の処理では、マニュアルループによるループ出力を開始するべく、かかるループ出力の開始をＤＳＰ１０へ指示する（Ｓ１３）。この開始指示により、ＤＳＰ１０は、上述したように、フラグＬｏｏｐＳｗが「０」である間は（即ち、図３において、フラグＭａｎｕａｌの値が「１」に立ち上がってから時間「Ｔ３」までの間は）、ＣＰＵ１から供給される波形データをバッファへ記憶させつつ、その供給された波形データをＤ／Ａ１２を介してスピーカ等から外部へ出力する（図４（ａ）参照）。
【００６７】
そして、フラグＬｏｏｐＳｗが「１」になった場合には（即ち、図３において、時間「Ｔ３」からフラグＭａｎｕａｌの値が「０」に立ち下がるまでの間は）、上述したバッファに記憶させておいた信号（図３において、フラグＭａｎｕａｌの値が「１」となってから時間「Ｔ３」までの区間に対応する信号４０ａ）を繰り返し読み出して、その読み出した信号をＤ／Ａ１２を介してスピーカ等から外部へ出力する（図４（ｂ）参照）。
【００６８】
その結果、本発明の効果装置は、波形データの所定のタイミング（即ち、ユーザーがＭａｎｕａｌボタン２４を押下操作したタイミング）から所定の区間（即ち、ユーザーがパラメータＬｏｏｐＬｅｎｇｔｈにより設定した長さ）の信号を所定の時間（即ち、後述するように、ユーザーがＭａｎｕａｌボタン２４の再度の押下操作を行うまで）の間だけリアルタイムに繰り返し出力するという効果（エフェクト）を波形データへ付加することができるのである。
【００６９】
Ｓ１３の処理において、ＤＳＰ１０への指示を行った後は、ＣＰＵ１は、Ｓ７の処理へ戻り、後述するように、マニュアルループによるループ出力の終了指示があるまでの間（Ｓ１１：「オンからオフへ」）、Ｓ７からＳ９の処理を繰り返し実行する。
【００７０】
このように、マニュアルループによるループ出力中においても、ＦｌａｓｈＲＯＭ４から波形データ（図３において、フラグＭａｎｕａｌの値が「１」に立ち上がってから時間「Ｔ２」までの区間の原音信号４０に対応）を順次読み出し続けることにより、マニュアルループによるループ出力が終了した場合の波形データの読み出し位置（図３において、フラグＭａｎｕａｌの値が「０」に立ち下がった位置）を本来の適正な位置へ復帰させることができる。
【００７１】
また、マニュアルループによるループ出力中においてオートループによるループ出力が開始された場合でも、そのオートループによるループ出力が終了した場合の波形データの読み出し位置を拍のタイミングに適正に一致させることができる。
【００７２】
Ｓ１１の処理において、パラメータＭａｎｕａｌの値が「オン」から「オフ」へ変化したと判断される場合には（Ｓ１１：「オンからオフへ」）、ＭＡＮＵＡＬボタン２４の再度の押下操作がユーザーにより行われ、マニュアルループによるループ出力を終了する旨の指示がされたということである。なお、かかるループ出力の終了指示により、フラグＭａｎｕａｌの値は「０」に設定される（図３参照）。
【００７３】
この場合には（Ｓ１１：「オンからオフへ」）、ＣＰＵ１は、マニュアルループによるループ出力を終了して、通常の演奏へ復帰するべく、フラグＬｏｏｐＳｗの値を「０」に設定すると共に（Ｓ１４）、かかるループ出力の終了をＤＳＰ１０へ指示する（Ｓ１５）。この終了指示により、ＤＳＰ１０は、ＣＰＵ１から供給される波形データをバッファへ記憶させつつ、その供給された波形データをＤ／Ａ１２を介してスピーカ等から外部へ出力する（図４（ａ）参照）。
【００７４】
Ｓ１５の処理においてＤＳＰ１０への指示を行った後は、ＣＰＵ１は、Ｓ７の処理へ戻り、読み出しアドレスＡＤＲＳの値がエンドポイントＥＮＤの値を超えたと判断されるまでの間（Ｓ９：Ｎｏ）、即ち、ＦｌａｓｈＲＯＭ４からの全ての波形データの読み出しが終了するまでの間、Ｓ７以降の各処理を繰り返し実行する。
【００７５】
図７は、時間「Ｔ１」及び「Ｔ２」のタイマ割込（インタラプト）で起動される処理を示すフローチャートである。このタイマ割込処理は、ＣＰＵ１により実行される処理であり、上述したＳ６の処理でセットした時間「Ｔ１」、又は、後述するＳ３６の処理でセットされる時間「Ｔ２」のタイミングが到来したと判断される場合、即ち、オートループによるループ出力が開始、又は、終了するタイミングで実行される。
【００７６】
ＣＰＵ１は、このタイマ割込処理に関し、まず、フラグＡｕｔｏの値が「０」であるか否かを判断する（Ｓ３１）。その結果、フラグＡｕｔｏの値が「０」であると判断される場合には（Ｓ３１：Ｙｅｓ）、オートループによるループ出力が開始されるタイミングであるので（図３参照）、これ以降においてオートループによるループ出力が動作中であることを示すべく、フラグＡｕｔｏの値を「１」に設定し（Ｓ３２）、Ｓ３３の処理へ移行する。
【００７７】
Ｓ３３の処理では、フラグＭａｎｕａｌの値が「０」であるか否か、即ち、マニュアルループによるループ出力が既に行われているか否かを判断する（Ｓ３３）。その結果、フラグＭａｎｕａｌの値が「０」であると判断される場合には（Ｓ３３：Ｙｅｓ）、マニュアルループによるループ出力は行われていないので（図３参照）、タイマ２にパラメータＬｏｏｐＬｅｎｇｔｈにより定まる時間Ｔ３をセットし（Ｓ３４）、ループさせる音の長さ（即ち、図３において、時間「Ｔ１」から時間「Ｔ３」までの区間の長さ）を設定する。
【００７８】
なお、タイマ２の計時により時間Ｔ３のタイミングが到来したと判断された場合には、ＣＰＵ１は、実行中の制御を中断して、上述した図６のフローチャートに示すタイマ割込（インタラプト）処理を実行し、フラグＬｏｏｐＳｗの値を「１」に設定する（図６参照）。
【００７９】
そして、Ｓ３４の処理において時間Ｔ３をセットした後は、ＣＰＵ１は、オートループによるループ出力を開始するべく、かかるループ出力処理の開始をＤＳＰ１０へ指示して（Ｓ３５）、Ｓ３６の処理へ移行する。この開始指示により、ＤＳＰ１０は、上述したように、フラグＬｏｏｐＳｗが「０」である間は（即ち、図３において、時間「Ｔ１」から時間「Ｔ３」までの間は）、ＣＰＵ１から供給される波形データをバッファへ記憶させつつ、その供給された波形データをＤ／Ａ１２を介してスピーカ等から外部へ出力する。
【００８０】
そして、フラグＬｏｏｐＳｗが「１」になった場合には（即ち、図３において、時間「Ｔ３」から時間「Ｔ２」までの間は）、上述したバッファに記憶させておいた信号（図３において、時間「Ｔ１」から時間「Ｔ３」までの区間に対応する信号４０ａ）を繰り返し読み出して、その読み出した信号をＤ／Ａ１２を介してスピーカ等から外部へ出力する。
【００８１】
その結果、本発明の効果装置は、波形データの所定のタイミング（即ち、ユーザーがパラメータＴｉｍｉｎｇにより設定したタイミング）から所定の区間（即ち、ユーザーがパラメータＬｏｏｐＬｅｎｇｔｈにより設定した長さ）の信号を所定の時間（即ち、後述するように、ユーザーがパラメータＨｏｌｄにより設定した時間まで）の間だけリアルタイムに繰り返し出力するという効果（エフェクト）を波形データに付加することができるのである。
【００８２】
なお、Ｓ３３の処理において、フラグＭａｎｕａｌの値が「１」であると判断される場合には（Ｓ３３：Ｎｏ）、マニュアルループによるループ出力が既に行われており（図３参照）、時間「Ｔ３」のセット（Ｓ３４）及びＤＳＰ１０への開始指示（Ｓ３５）を行う必要がないので、これらＳ３４及びＳ３５の処理をスキップして、Ｓ３６の処理へ移行する。
【００８３】
Ｓ３６の処理では、タイマ１に時間「Ｔ２」をセットする（Ｓ６）。時間「Ｔ２」は、オートループによるループ出力を終了するタイミングを表す時間であり（図３参照）、パラメータＨｏｌｄにより設定される。ＣＰＵ１は、タイマ１の計時により時間「Ｔ２」のタイミングが到来したと判断される場合には、実行中の制御を一時中断して、このタイマ割込（インタラプト）処理を再度実行する。Ｓ３６の処理の終了後は、このタイマ割込処理を終了する。
【００８４】
一方、Ｓ３１の処理において、フラグＡｕｔｏの値が「１」であると判断される場合には（Ｓ３１：Ｎｏ）、オートループによるループ出力を終了するタイミングであるので（図３参照）、これ以降においてオートループによるループ出力が終了していることを示すべく、フラグＡｕｔｏの値を「０」に設定し（Ｓ３７）、Ｓ３８の処理へ移行する。
【００８５】
Ｓ３８の処理では、フラグＭａｎｕａｌの値が「０」であるか否か、即ち、マニュアルループによるループ出力中であるか否かを判断する（Ｓ３８）。その結果、フラグＭａｎｕａｌの値が「０」であると判断される場合には（Ｓ３８：Ｙｅｓ）、マニュアルループによるループ出力中ではないので（図３参照）、オートループによるループ出力を終了して、通常の演奏へ復帰するべく、フラグＬｏｏｐＳｗの値を「０」に設定すると共に（Ｓ３９）、かかるループ出力の終了をＤＳＰ１０へ指示して（Ｓ４０）、このタイマ割込処理を終了する。
【００８６】
この終了指示により、ＤＳＰ１０は、ＣＰＵ１から供給される波形データをバッファへ記憶させつつ、その供給された波形データをＤ／Ａ１２を介してスピーカ等から外部へ出力する。
【００８７】
なお、Ｓ３８の処理において、フラグＭａｎｕａｌの値が「１」であると判断される場合には（Ｓ３８：Ｎｏ）、マニュアルループによるループ出力中であり（図３参照）、フラグＬｏｏｐＳｗの値の変更（Ｓ３９）及びＤＳＰ１０への終了指示（Ｓ４０）を行う必要がないので、これらＳ３９及びＳ４０の処理をスキップして、このタイマ割込処理を終了する。
【００８８】
なお、図７に示すタイマ割込処理の終了後は、割り込み前に実行していた制御の中断位置へ制御を戻し、その中断位置から制御を再開する。
【００８９】
ここで、各フローチャートにおいて、請求項１又は２に記載のループ出力手段としてはＳ１３及びＳ３５で開始が指示されるＤＳＰ処理が該当する。
【００９０】
以上、実施例に基づき本発明を説明したが、本発明は上述した実施例に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【００９１】
例えば、本実施例の効果装置では、所定の区間の信号（図３の信号４０ａ）をループ出力し続ける区間の長さをパラメータＨｏｌｄにより時間として指定する場合を説明したが、必ずしもこれに限られるわけではなく、例えば、回数を指定するパラメータを設け、そのパラメータで指定された回数分だけ所定の区間の信号をループ出力するように構成することは当然可能である。この場合は、回数を多く指定すれば、ループ出力し続ける区間の長さは長くなり、回数を少なく指定すれば、ループ出力し続ける区間の長さは短くなるので、回数を指定するように構成しても、時間を指定する場合と同様の感覚で設定することができる。なお、請求項２記載の回数指定手段としては、上記の回数を指定するパラメータが該当する。
【００９２】
また、例えば、本実施例の効果装置では、パラメータＬｏｏｐＬｅｎｇｔｈの値が演奏中において固定されているものとして説明したが、必ずしもこれに限られるわけではなく、例えば、パラメータＬｏｏｐＬｅｎｇｔｈが割り当てられるＶＲ８（図１参照）としてのつまみ操作子（或いは、ペダル操作子）を設け、かかるつまみ操作子等の操作量に応じてパラメータＬｏｏｐＬｅｎｇｔｈの値を連続的に可変させることにより、所定の区間の信号（図３の信号４０ａ）の長さを演奏中にリアルタイムに可変可能とすることは当然可能である。
【００９３】
この場合には、図４に示すループ用バッファＲＢのバッファ量がつまみ操作子等の操作量（即ち、パラメータＬｏｏｐＬｅｎｇｔｈの値）に連動して可変される。なお、図４（ｂ）に示す状態（即ち、ループ出力中）において、つまみ操作子等が操作されループ用バッファＲＢの読み出し区間が延長された場合には、かかる延長区間を無音として出力するように構成しても良い。或いは、ループ用バッファＲＢをリングバッファとして構成し、読み出したデータをフィードバックして再びメモリしておくことにより、上記の延長区間が無音として出力されることを回避するように構成しても良い。
【図面の簡単な説明】
【図１】本発明の一実施例における効果装置が搭載される電子楽器の電気的構成を概略的に示したブロック図である。
【図２】効果装置が搭載される電子楽器の操作パネルの正面図である。
【図３】効果装置が搭載される電子楽器による出力信号波形を時間軸上で模式的に示した模式図である。
【図４】効果装置に係る効果の原理を模式的に示した模式図である。
【図５】効果装置が搭載される電子楽器において実行されるメイン処理を示すフローチャートである。
【図６】時間Ｔ３のタイマ割込で起動される処理を示すフローチャートである。
【図７】時間Ｔ１，Ｔ２のタイマ割込で起動される処理を示すフローチャートである。
【符号の説明】
６                    スイッチ（各指定手段の一部）
２４                  ＭＡＮＵＡＬボタン（タイミング指定手段及び第１の時間指定手段の一部）
ＲＢ                  ループ用バッファ（記憶手段）
ＬｏｏｐＬｅｎｇｔｈ  パラメータ（区間指定手段または第２の時間指定手段により指定される区間または第２の時間）
Ｔｉｍｉｎｇ          パラメータ（タイミング指定手段により指定されるタイミング）
Ｈｏｌｄ              パラメータ（第１の時間指定手段により指定される第１の時間）
Ｔｅｍｐｏ            パラメータ（テンポ指定手段により指定されるテンポ）
【図１】
2004309725.tif 000003
【図２】
2004309725.tif 000004
【図３】
2004309725.tif 000005
【図４】
2004309725.tif 000006
【図５】
2004309725.tif 000007
【図６】
2004309725.tif 000008
【図７】
2004309725.tif 000009