JP2591000B2 - 電子弦楽器 - Google Patents

電子弦楽器

Info

Publication number
JP2591000B2
JP2591000B2 JP62336411A JP33641187A JP2591000B2 JP 2591000 B2 JP2591000 B2 JP 2591000B2 JP 62336411 A JP62336411 A JP 62336411A JP 33641187 A JP33641187 A JP 33641187A JP 2591000 B2 JP2591000 B2 JP 2591000B2
Authority
JP
Japan
Prior art keywords
pitch
peak value
time
previous
value
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 - Lifetime
Application number
JP62336411A
Other languages
English (en)
Other versions
JPH01177083A (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 JP62336411A priority Critical patent/JP2591000B2/ja
Publication of JPH01177083A publication Critical patent/JPH01177083A/ja
Application granted granted Critical
Publication of JP2591000B2 publication Critical patent/JP2591000B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、電子ギターなどの電子弦楽器に係り、特
に確実にミュート指示(消音指示)を行なえるようにし
た電子弦楽器に関する。
〔従来の技術〕
従来より、自然学期の演奏操作によつて発生する波形
信号からピツチ(基本周波数)を抽出し、電子回路で構
成された音源装置を制御して、人工的に楽音等の音響を
得るようにした電子楽器が種々開発されている。
例えば、この種の電子楽器のひとつとして電子ギター
あるいはギター・シンセサイザと称されるものがある
が、これらの楽器においては弦振動から得られる波形信
号の振動レベルの急激な減衰を検出すると、演奏者がミ
ュート(消音動作)をしたものとして、音源に対して、
発音を停止するようになつている。
ところが、あるフレツトを押さえてピツキングした
後、そのフレツト操作をやめて、指を弦から離し、開放
弦状態に移行することで、ミユートをする場合、早いフ
レーズの曲の演奏時にはミユートが不確実になりやす
く、弦の振動の減衰が検出できなくなること(つまり曲
のフレーズが早いから減衰の検知が難しい)によつて、
ミユートがかけられなくるという問題がある。
そして、このような状態では、弦は開放弦音高でまだ
振動しているため、この開放弦音高に対応するピツチが
抽出され、音源装置からのシンセサイザ音も開放弦音高
の音となつてしまう。
通常、ギターの生音(アコーステイツク音)はこのよ
うな演奏を行つても、音量は小さいために気にならない
が、前記シンセサイザ音は、音量エンベロープが生音と
は全く独立のものとなつているため、開放弦音高の音が
大きな音量で発生することがあり、たいへん耳ざわりな
ものとなつてしまう。
〔発明の目的〕
この発明は、前記事情が鑑みてなされたもので演奏者
の意図しない音がミユート操作を行つたときに発生した
りしないようにした電子弦楽器を提供することを目的と
する。
〔発明の要点ならびに作用〕
上記のような目的を達成するために、本発明は、楽音
の発音開始を指示する発音開始指示手段と、フレットボ
ード上の押圧の有無及び押圧位置を検出する押圧位置検
出手段と、前記押圧位置検出手段が検出する押圧位置に
対応する音高を指定する音高指定手段と、前記発音開始
指示手段により楽音の発音開始が指示されると、前記音
高指定手段により指定された音高の楽音の発生を指示す
る楽音発生指示手段と、前記楽音発生指示手段の前記指
示による楽音の発生中に、前記押圧位置検出手段が、前
記フレットボード上の所定の音高に対応する位置より高
音側の位置が押圧されている状態から、押圧されていな
い状態に移行したことを検出した場合、該発生中の楽音
を消音するように指示する消音指示手段とを有すること
を要点とする。
前記所定の音高として、開放弦音高より最低半音高い
音高が選ばれる。このように選択することで、開放弦音
高でピツキングした音が、周波数のゆらぎによつて一度
高音側へシフトした後もとの開放弦音高へもどつた場合
に、消音されてしまうといつた不都合な問題の解消が図
れる。というのは、一般に周波数の変動は、半音未満で
あることからである。
更に、トレモロユニツトがついた電子ギターなどにあ
つては、上記所定の音高として更に音高が選択される。
すなわち、トレモロアームなどの操作によつて、弦のテ
ンシヨンなどの変更を行い周波数を上下に大きく変化さ
せ得るシステムの場合は、特定音高の楽音がトレモロ操
作によつて低温側へシフトして開放弦音高に変化してし
まうこと、あるいは開始弦音高でピツキング操作して発
音開始したものが、トレモロ操作によつて一度高音へ移
つたのち再びもとの開放弦音高へもどることによつて、
消音させてしまうことのないようにしなければならな
い。
従つて、トレモロユニツト付電子弦楽器などにあつて
は、上記所定音高として更に高音のもの、具体的には第
3フレツト(勿論これに限らない。)あたりの音高を選
択するのが適当である。
〔実施例〕
以下、この発明の実施例について図面を参照して説明
するが、ここではこの発明を電子ギターに適用した場合
を例にあげて説明する。なお、これに限らず他のタイプ
の電子楽器であつても同様に適用できる。
第1図は、全体の回路を示すブロツク図であり、ピツ
チ抽出アナログ回路PAは、図示しない例えば電子ギター
ボデイ上に張設された6つの弦に夫々設けられ、弦の振
動を電気信号に変換するヘキサピツクアツプと、このピ
ツクアツプからの出力からゼロクロス信号と波形信号Z
i、Wi(i=1〜6)を得るとともに、これらの信号を
時分割のシリアルゼロクロス信号ZCRおよびデジタル出
力(時分割波形信号)D1に変換する変換手段例えば後述
するアナログ−デジタル変換器A/Dとを備えている。
ピツチ抽出デジタル回路PDは、第2図のようにピーク
検出回路PEDT、時定数変換制御回路TCC、波高値取込み
回路PVS、ゼロクロス時刻取込回路ZTSからなり、前記ピ
ツチ抽出アナログ回路PAからのシリアルゼロクロス信号
ZCRとデジタル出力D1とに基づき最大ピーク点または最
小ピーク点を検出し、MAXI、MINI(I=1〜6)を発生
するとともに、ゼロクロス点通過、厳密には最大ピーク
点、最小ピーク点直後のゼロクロス点通過でインターラ
プト(割込み)信号INTをマイコンMCPに出力し、またゼ
ロクロス点の時刻情報とピーク値情報例えばMAX、MIN及
び入力波形信号の瞬時値をそれぞれマイコンMCPに出力
するものである。なお、ピーク検出回路PEDTの内部に
は、過去のピーク値を減算しながらホールドする回路を
備えている。
そして、このピーク検出回路PEDTのピークホールド回
路の減衰率を変更するのが、時定数変換制御回路TCCで
あり、波形の例えば1周期の時間経過してもピークが検
知できないときは、急速に減衰するようにする。具体的
には、初期状態では速やかに波形の振動を検知すべく最
高音周期時間経過して、急速減衰し、弦振動が検知され
ると倍音を拾わないために、当該弦の開放弦周期時間経
過して同様に急速減衰するようにし、そして弦の振動周
期が抽出された後は、その周期にて急速減衰を行なうよ
うになる。
この時定数変換制御回路TCCに対するかかる周期情報
の設定は、マイコンMCPが行なう。そして、この時定数
変換制御回路TCC内部の各弦独立のカウンタと、この設
定された周期情報との一致比較を行ない、周期時間経過
で時定数チエンジ信号をピーク検出回路PEDTへ送出す
る。
また、第2図における波高値取込み回路PVSは、上述
のとおり時分割的に送出されてくる波形信号(デジタル
出力)D1を、各弦毎の波高値にデマルチプレクス処理
し、ピーク検出回路PEDTからのピーク信号MAXI、MINI
(I=1〜6)に従つて、ピーク値をホールドする。そ
して、マイコンMCPがアドレスデコーダDCDを介してアク
セスしてきた弦についての最大ピーク値もしくは最小ピ
ーク値をマイコンバスへ出力する。また、この波高値取
込み回路PVSからは、各弦毎の振動の瞬時値も出力可能
になつている。
ゼロクロス時刻取込回路ZTSは、各弦共通のタイムベ
ースカウンタ出力を、各弦のゼロクロス時点(厳密には
最大ピーク点及び最小ピーク点通過直後のゼロクロス時
点)でラツチするようになる。そして、マイコンMCPか
らの要求により、そのラツチした時刻情報をマイコンバ
スへ送出する。
また、図のタイミングジエネレータTGからは、第1図
及び第2図に示す各回路の処理動作のためのタイミング
信号を出力する。
マイコンMCPには、メモリ例えばROMおよびRAMを有す
るとともに、タイマーTを有し、音源発生装置SOBに与
える為の信号を制御するものである。音源発生装置SOB
は音源SSとデジタル−アナログ変換器D/Aと、アンプAMP
と、スピーカSPとからなり、マイコンMCPからのノート
オン(発音)、ノートオフ(消音)、周波数を変える音
高指示信号に応じた音高の楽音を放音するものである。
なお、音源SSの入力側とマイコンMCPのデータバスBUSと
の間に、インターフェース(Musical Instrument Digit
al Interface)MIDIが設けられている。勿論、ギター本
体に音源SSを設けるときは、別のインターフエースを介
してもよい。アドレスデコーダーDCDは、マイコンMCPか
らのアドレス読み出し信号ARが入力されたとき、弦番号
の読込み信号RDI、時刻読込み信号RDj(j=1〜6)と
MAX、MINのピーク値及びその時点その時点の瞬時値読込
み信号RDAI(1=1〜18)をピツチ抽出デジタル回路PD
に出力する。
以下、マイコンMCPの動作についてフローチヤートや
波形を図面を参照して説明するが、はじめに図面の符号
について説明する。
AD…第1図の瞬時値読込み信号RDA13〜18によりピツチ
抽出デジタル回路PDの入力波形を直接読んだ入力波高値
(瞬時値) AMP(0、1)…正又は負の前回(old)の波高値 AMRLI…振幅レジスタで記憶されているリラテイブ(rel
ative)オフ(off)のチエツクのための前回の振幅値で
ある。ここで、前記リラテイブオフとは波高値が急激に
減衰してきたことに基づき消音することで、フレツト操
作をやめて開放弦へ移つたときの消音処理に相当する。
AMRL2…振幅レジスタで記憶されている前記リラテイブ
オフのための前々回の振幅値で、これにはAMRLIの値が
入力される。
CHTIM…最高音フレツト(22フレツト)に対応する周期 CHTIO…開放弦フレツトに対応する周期 CHTRR…時定数変換レジスタで、上述の時定数変換制御
回路TCC(第2図)の内部に設けられている。
DUB…波形が続けて同一方向に来たことを示すフラグ FOFR…リラテイブオフカウンタ FLB…抽出した周期が定数TTHRより小(高音)のとき
1、大(低音)のとき0を示すフラグ HNC…波形ナンバーカウンタ MT…これからピツチ抽出を行なう側のフラグ(正=1、
負=0) NCHLV…ノーチエンジレベル(定数) OFTIM…オフタイム(例えば当該弦の開放弦周期に相
当) OFPT…通常オフチエツク開始フラグ ONF…ノートオンフラグ RIV…後述のステツプ(STEP)4での処理ルートの切替
を行なうためのフラグ ROFCT…リラテイブオフのチエツク回数を定める定数 STEP…マイコンMCPのフロー動作を指定するレジスタ
(1〜5) TF…有効となつた前回のゼロクロス時刻データ TFN(0、1)…正または負のピーク値直後の前回のゼ
ロクロス時刻データ TFR…時刻記憶レジスタ THLIM…周波数上限(定数) TLLIM…周波数下限(定数) TOPEN…開放弦音高に対する周期 TP(0、1)…正または負の前回の周期データ TRLAB(0、1)…正または負の絶対トリガーレベル
(ノートオンしきい値) TRLRL…リラテイブオン(再発音開始)のしきい値 TRLRS…共振除去しきい値 TTLIM…トリガー時の周波数下限 TTHRD…第3フレツトの音高より少し低い音高に対する
周期 TTP…前回抽出された周期データ TTR…周期レジスタ TTU…定数(17/32と今回の周期情報ttの積) TTW…定数(31/16と今回の周期情報ttの積) VEL…速度(ベロシテイー)を定める情報で、発音開始
時の波形の最大ピーク値にて定まる。
X…異常または正常状態を示すフラグ b…ワーキングレジスタBに記憶されている今回正負フ
ラグ(正ピークの次のゼロ点のとき1、負ピークの次の
ゼロ点のとき0) c…ワーキングレジスタレジスタCに記憶されている今
回波高値(ピーク値) e…ワーキングレジスタEに記憶されている前々回波高
値(ピーク値) h…ワーキングレジスタHに記憶されている前々回抽出
された周期データ t…ワーキングレジスタTOに記憶されている今回のゼロ
クロス時刻 tt…ワーキングレジスタTOTOに記載されている今回の周
期情報 第3図は、マイコンMCPへインタラプトがかけられた
ときの処理を示すインタラプトルーチンであり、I1にお
いて、マイコンMCPはアドレスデコーダDCDを介し、ゼロ
クロス時刻取込回路ZTSに対し、弦番号読込み信号RD1を
与えてインタラプトを与えた弦を指定する弦番号を読み
込む。そして、その弦番号に対応する時刻情報つまりゼ
ロクロス時刻情報をゼロクロス時刻取込回路ZTSへ時刻
読込み信号RD1〜RD6のいずれかを対応するものを与えて
読込む。これをtとする。しかる後、I2において、同様
に波高値取込み回路PVSへピーク値読込み信号RDAI(I
=1〜12のうちいずれか)を与えて、ピーク値を読取
る。これをcとする。
続くI3において、当該ピーク値は正、負のいずれかの
ピークであるのかを示す情報bを、ゼロクロス時刻取込
回路ZTSより得る。そして、I4にて、このようにして得
たt、c、bの値をマイコンMCP内のバツフアのレジス
タTO、C、Bにセツトする。このバツフアは、割込み処
理がなされる都度、このような時刻情報、ピーク値情
報、ピークの種類を示す情報がワンセツトとして書込ま
れていき、メインルーチンで、各弦毎にかかる情報に対
する処理がなされる。
第4図は、メインルーチンを示すフローチヤートであ
る。パワーオンすることによりM1において、各種レジス
タやフラグがイニシヤライズされ、レジスタSTEPが0と
される。M2で上述したバツフアが空かどうかが判断さ
れ、ノー(以下、Nと称す)の場合にはM3に進み、バツ
フアよりレジスタB、C、TOの内容が読まれる。これに
より、M4においては、レジスタSTEPはいくつか判断さ
れ、M5ではSTEP0、M6ではSTEP1、M7ではSTEP2、M8ではS
TEP3、M9ではSTEP4の処理が順次おこなわれる。
M2でバツフアが空の場合すなわちイエス(以下、Yと
称す)の場合、M10〜M16へと順次に進み、ここで通常の
ノートオフのアルゴリズムの処理が行なわれる。このノ
ートオフのアルゴリズムは、オフ(OFF)レベル以下の
状態が所定のオフタイム時間続いたら、ノートオフする
アルゴリズムである。M10でSTEP=0かどうかが判断さ
れ、Nの場合には、M11に進む。M11では、その時点の入
力波高値ADが直接読まれる。これは、波高値取込み回路
PVSへピーク値読込み信号RDA13〜RDA18のいずれかを与
えることで達成できる。そして、この値ADが、入力波高
値ADオフレベルかどうかが判断され、Yの場合にはM1
2に進む。M12では前回の入力波高値ADオフレベルかど
うかが判断され、Yの場合にはM13に進み、ここでタイ
マーTの値オフタイムOFTIM(例えば当該弦の開放弦
周期の定数)かどうかが判断される。Yの場合には、M1
4に進み、レジスタSTEPに0が書きこまれ、M15ではノー
トオンかどうかが判断され、Yの場合には、M16でノー
トオフ処理され、M2の入側のMに戻る。M12でNの場合
にはM17に進み、マイコンMCP内部タイマーTをスタート
し、M2の入側Mに戻る。M10でYの場合、及びM11、M1
3、M15でNの場合には、いずれもM12の入側のMに戻
る。
このように、波形入力のレベルが減衰してきた場合、
オフレベル以下の入力波高値ADがオフタイムOFTIMに相
当する時間続くと、ノートオフの指示を音源SSに対しマ
イコンMCPは送出する。なお、ステツプM15において、通
常の状態ではYの判断がなされるが、後述するような処
理によつて、楽音の発生を指示していない場合でもレジ
スタSTEPは0以外の値をとつていることがあり、(例え
ばノイズの入力による。)そのようなときは、M14、M15
の処理後M2へ戻ることで、初期設定がなされることにな
る。
なお、第4図では、一つの弦についての処理しか示し
ていないが、この図に示した如き処理を弦の数に相当す
る6回分、多重化してマイコンMCPは実行することにな
る。勿論、プロセツサを複数個設けて、別個独立して同
等の処理を実行してもよい。
次に、M4にて分岐して対応する処理を行なう各ルーチ
ンの詳細について説明する。
第5図は、第4図のM5として示すステツプ0(STEP
0)のときのフローチヤートであり、S01で絶対トリガレ
ベル(ノートオンしきい値)TRLAB(b)<今回波高値
cがどうかが判断され、Yの場合にはS02に進み共振除
去がチエツクされる。なお、このトリガーレベルは、正
と負との極性のピーク夫々についてのチエツクを行なう
ようになつている。このTRLAB(0)とTRLAB(1)と
は、実験などによつて適切な値とすることになる。理想
的なシステムではTRLAB(0)とTRLAB(1)とは同じで
よい。S02では、共振除去しきい値TRLRS<〔今回波高値
c−前回波高値AMP(b)〕かどうか、すなわち今回波
高値と前回波高値の差が所定値以上か否かが判断され
る。
一つの弦をピツキングすることによつて他の弦が共振
を起こす場合、当該他の源については、振動のレベルが
徐々に大きくなり、その結果前回と今回とのピーク値の
変化は微小なものとなつて、その差は共振除去しきい値
TRLRSを越えることはない。ところが、通常のピツキン
グでは、波形が急激に立上る(あるいは立ち下がる)こ
とになり、前記ピークの差は共振除去しきい値TRLRSを
越える。
いま、このS02で、Yの場合つまり共振の場合でない
とみなした場合には、S03において次の処理が行なわれ
る。すなわち、今回正負フラグbがフラグMTに書込ま
れ、レジスタSTEPに1が書込まれ、さらに今回のゼロク
ロス時刻tが前回のゼロクロス時刻データTFN(b)と
して設定される。そして、S04では、その他フラグ類が
イニシヤライズされ、S05に進む。S05では、今回波高値
cが前回の波高値AMP(b)としてセツトされ、しかる
後第4図のメインフローへリターンする。
第5図において、Aはリラテイブオン(再発音開始)
のエントリであり、後述するSTEP4のフローからこのS06
へジヤンプしてくる。そして、S06では今まで出力して
いる楽音を一度消去し、再発音開始のためにS03へ進行
する。この再発音開始のための処理は、通常の発音開始
のときと同様であり、以下に詳述するとおりとなる。
そして、またS01でNの場合と、S02でNの場合(今回
波高値c−前回波高値AMP(b)が所定値以上ない場
合)には、S05に進む。従つて、発音開始のための処理
は進まないことになる。
以上述べたSTEP0(第11図のSTEP0→1の間)では、フ
ラグMTにBレジスタの内容(b=1)が書込まれ、レジ
スタTOの内容(t)が前回ゼロクロス時刻データTFN
(1)に書込まれ、レジスタCの波高値(c)が前回の
波高値AMP(1)に書込まれる。
第6図は第4図にM6として示すSTEP1のフローチヤー
トの詳細を示すものであり、S11では、レジスタBの内
容(b)と、フラグMTが不一致かどうかが判断され、Y
の場合にはS12に進む。S12では、絶対トリガレベル(ノ
ートオンしきい値)TRLAB(b)<今回波高値cかどう
かが判断され、Yの場合にはS13に進む。S12でYの場合
にはレジスタSTEPに2がセツトされ、S14でレジスタTO
の内容(t)を前回のゼロクロス時刻データTFN(b)
としてセツトし、さらにS15で今回波高値cを、前回の
波高値AMP(b)へセツトする。S11において、Nの場合
すなわち入力波形信号が同一方向にきた場合S16に進
み、今回波高値c>前回波高値AMP(b)かどうかが判
断され、Yの場合すなわち今回の波高値cが前回の波高
値AMP(b)より大の場合には、S14に進む。一方、S12
においてNの場合には、S15に進み、これにより波高値
のみが更新される。また、S16において、Nの場合及
び、S15の処理の終了時にはメインフロー(第4図)へ
リターンする。
以上述べたSTEP1(第11図のSTEP1→2の間)では、今
回正負フラグb(=0)とフラグMT=1が不一致という
ことで、今回のゼロクロス時刻tを前回のゼロクロス時
刻データTFN(0)としてセツトし、さらに今回波高値
cを前回の波高値AMP(0)として書込む。
第7図は、第4図にM7として示すSTEP2のフローチヤ
ートの詳細を示すもので、S20において、今回正負フラ
グb=フラグMTかどうかすなわちSTEP0の方向と同一の
ゼロクロス点の到来かどうかを判断し、Yの場合にはS2
1に進む。S21では、第2図の時定数変換制御回路TCC内
のレジスタCHTRRへ開放弦周期CHTI0をセツトし、S22に
進む。S22では、今回波高値c>(7/8)×前回の波高値
AMP(b)かどうか、つまり波高値が前回と今回とで略
同一かどうかをチエツクし、Yの場合つまり美しい自然
減衰の場合には、S23に進み、フラグDUBを0にセツト
し、S24に進む。S24では、周期計算を行ない、今回のゼ
ロクロス時刻t−全快のゼロクロス時刻データTFN
(b)を前回周期データTP(b)に入力し、今回のゼロ
クロス時刻tを前回ゼロクロス時刻データTFN(b)と
して入力する。S24におけるTP(b)は、STEP3でノート
オン(1.5波)の条件として使用される。また、S24で
は、レジスタSTEPが3とセツトされる。更に、今回波高
値cと、前回の波高値AMP(0)と、前回の波高値AMP
(1)の内、最も大きい値をベロシテイVELとして登録
する。また、今回波高値cを前回の波高値AMP(b)へ
書込む。
S20でNの場合に、S25に進み、フラグDUBすなわち同
一方向の入力波形がきたということを意味するフラグを
1にし、S26に進む。S26では、今回波高値>前回の波高
値AMP(b)かどうかが判断され、Yの場合にはS29に進
む。S29では今回波高値cに前回の波高値AMP(b)が書
替えられ、レジスタTの内容tに前回のゼロクロス時刻
データTFN(b)が書替えられる。また、S22において、
Nの場合には、S27に進み、フラグDUB=1かどうか、つ
まり前回STEP2を実行したとき、タブツたか否かのチエ
ツクを行ない、Yの場合つまりタブツていればS28に進
む。S28では、フラグDUBを0にする。この場合にはS29
に進みメインルーチンにリターンする。S24の処理の
後、またS26のNのときも、同様にメインルーチンへリ
ターン(RET)する。
以上述べたSTEP2(第11図のSTEP2→3の間)では、今
回正負フラグbとしてフラグMT=1が書替えられ、レジ
スタCHTRRに0フレツト周期すなわち開放弦周期CHTIOが
書替えられ、またフラグDUBが0にセツトされ、さらに
t−TFN(1)→TP(1)なる周期計算が行なわれ、ま
た今回ゼロクロス時刻tに前回のゼロクロス時刻データ
TFN(1)が書き替えられ、今回波高値c、前回波高値A
MP(0)、前回波高値AMP(1)の内最も大きい値がベ
ロシテイVELとしてセツトされ、更に今回波高値cとし
て前回波高値AMP(1)がセツトされる。
第11図は、理想的な波形入力があつた場合の例である
か、DUB=1となる場合について次に説明する。第8図
は、そのような場合のSTEP2の動作を説明するための図
であり、(A)は一波をとばしてピーク検出した場合で
あり、入力波形が実線のときは後述するSTEP3の処理に
てノートオンし、入力波形が点線の時はノートオンしな
い。これは、S26にてYとなるかNとなるかの違いから
である。また、STEP2からなかなかSTEP3に移行しないの
は、S20でb=MTが成立しても、S22でc>(7/8)×AMP
(b)がNと判断され、これがYとならない間は、STEP
2は繰返し実行されるからである。また、(B)は、オ
クターブ下の倍音を検知した場合であり、この場合に
は、C>(7/8)×AMP(b)のチエツク時、YとなりS2
3を経てS24に進み、STEP3に移る。
第9図は、第4図にM8として示すSTEP3のフローチヤ
ートであり、S30でフラグMT≠今回正負フラグbかどう
かが判断され、正常の場合すなわちYのときは、S31に
進む。S31では、(1/8)c<AMP(b)ならXが0、ま
た逆の場合にはX=1にセツトされ、S32に進む。S32で
は、今回波高値cとして前回の波高値AMP(b)が書替
えられる。
そしてS33において、STEP2で得られたVELより今回波
高値cが大であれば、ベロシテイVELは今回波高値cが
入力される。もし逆ならば、このベロシテイVELは変化
しない。次に今回正負フラグbにフラグMTが書替えら
れ、これによりピツチ変更側が逆にされる。これは、後
述するSTEP4からフラグMTの意味が変り、ピツチ変更側
を意味している。そして、S34で〔t−TFN(b)→TP
(b)〕なる周期計算が行なわれる。また、今回のゼロ
クロス時刻tとして前回のゼロクロス時刻データTFN
(b)が書替えられる。
次に、S35において、X=Oかどうかを判断し、Yの
場合にはS36に進み、周波数上限THLIM<前回の周期デー
タTP(b)かどうか、つまりピツチ抽出上限チエツクを
行ない、その結果、最高音の周期より大きな周期をもて
ば、許容範囲にあるということでYとなり、S37に進
む。S37では、トリガー時の周波数下限TTLIM>前回の周
期データTP(b)かどうか、つまりピツチ抽出下限チエ
ツクを行ない、最低音の周期より小の周期をもてば許容
範囲にあり、Yの判断をしてS38に進む。S37のピツチ抽
出下限は、後述するSTEP4のピツチ抽出下限とは定数が
異なる。
具体的には、周波数上限THLIMは、最高音フレツトの
2〜3半音上の音高周期に相当し、トリガー時の周波数
下限TTLIMは、開放弦の開放弦フレツトの5半音下の音
高周期に相当するものとする。
S38では、前回の周期データTP(b)を前回抽出され
た周期データTTPとしてセツトすなわち、ピツチ抽出側
で抽出されたピツチをセーブ(これは後述するSTEP4で
使用される)し、S39に進む。S39では、前回の周期デー
タTP(b)≒TP()かどうか、すなわち極性の違いゼ
ロクロス点間の周期の略一致のチエツクである1.5波ピ
ツチ抽出チエツクを行ない、Yの場合にはS301で次のよ
うな処理が行なわれる。すなわち、前回のゼロクロス時
刻データTFN()として時刻記憶レジスタTFRが書替え
られ、また今回のゼロクロス時刻tが前回のゼロクロス
時刻データをTFとしてセツトされ、波形ナンバーカウン
タHNCをクリアする。このカウンタHNCは後述するSTEP4
にて使用される。レジスタSTEPは4にセツトされ、ノー
トオンフラグONFは2(発音状態)にセツトされ、定数T
TUは0すなわち(MIN)にセツトされ、定数TTWは最高MA
Xにセツトされる。これらはいずれも後述するSTEP4にて
使用するものである。また、リラテイブオフの為の前回
波高値レジスタAMRL1がクリアされる。更にフラグFLBが
0にセツトされて、初期設定される。そして、最後のS3
02で前回周期データTP(b)に対応した音高とペロシテ
イVELに対応した音量でノートオン処理が行なわれる。
即ち、マイコンMCPは音源SSに対し発音開始の指示をす
る。
S30において、Nの場合(同一方向のゼロクロス点検
出の場合)は、S303に進み、前回の波高値AMP(b)<
今回波高値cかどうかが判断され、Yの場合はS304に進
む。S304では、今回波高値cが前回の波高値AMP(b)
としてセツトされ、ベロシテイVELまたはレジスタCの
値cの内のいずれか大きい値がベロシテイVELにセツト
される。S303、S35、S36、S37、S39のいずれの場合もN
の場合には、メインルーチンへリターン(RET.)する。
第17図はS31において、X=1すなわち異常となる場
合の具体例を示す図であり、1/8b1<b0のときと、1/8a2
<a1のときのジヤツジではいずれもその条件を満足せ
ず、X=1となる。
すなわち、第17図の最初の3つの波形のピーク(a0
b0、a1)は、ノイズによるもので、これらのノイズの周
期を検出して発音開始を指示すると、全くおかしな音が
発生してしまう。そこで、S31では、波高値が大きく変
わつたことを検知して、X=1とし、S35でNの判断を
するようにする。そして、S31にて波形が正常な変化を
することが検知されてから、発音開始を指示するように
する。
第17図の場合TP(b)≒TP()の検出がなされたと
きにノートオンとなる。
以上述べたSTEP3(第11図のSTEP3→4の間)では、MT
=1≠b、AMP(0)←c、max〔VEL、c(のいずれか
の大きい方)〕→VEL、MT←b=0、TP(0)←〔t−T
FN(0)〕、TFN(0)←t、TTP←TP(0)、TFR←TFN
(1)、TF←t、HNC←0、ONF←2、TTU←0(MIN)、
TTW←MAX、AMRL1←0、FLB←0、ノートオン条件TP
(0)≒TP(1)についての処理がなされる。そして、
適切な波形入力に応答してこのSTEP3において、抽出さ
れたピツチに従つた音高の楽音が発生開始されることに
なる。第11図から判明するように、周期検出を開始して
から、1.5周期程度の時間経過で発音指示が音源SSに対
しなされることになる。勿論、諸条件を満足しなけれ
ば、更におくれることは上述したとおりとである。
第10図は、第4図のM9として示すSTEP4のフローチヤ
ートであり、この場合ピツチ抽出のみを行なルート、
実際にピツチ変更を行なうルートがある。先ず、S4
0、S41、S42、S63〜S67に示すルートについて説明す
る。S40において、波形ナンバーカウタHNC>3が判断さ
れ、Yの場合にはS41に進む。S41では、リラテイブオン
しきい値TRLRL<〔今回波高値c−前回の波高値AMP
(b)〕かどうかの判断が行なわれ、Nの場合にはS42
に進む。S42では今回正負フラグb=フラグMTつまりピ
ツチ変更側かどうかが判断され、Yの場合にはS43に進
む。
ところで、初期状態では、前記波形ナンバーカウンタ
HNCは0である(第9図のS301参照)ので、S40ではNの
判断をしてS42へ進む。そして、例えば、第11図のよう
な波形入力の場合は、b=1でMT=0であるから、S42
からS63へ進む。
S63においては、同じ極性のピークが続けて入力され
てきているか(ダブリであるか)、否かチエツクするた
めに、レジスタRIV=1かどうかが判断され、Yの場合
にはS68に進み、また、Nの場合(ダブリでない場合)
にはS64に進み、ここで以下の処理が行なわれる。すな
わち、S64では今回波高値cが前回の波高値AMP(b)に
入力され、リラテイブオフ処理のために前回の振幅値AM
RL1が前々回の振幅値AMRL2に入力される。なお、いまの
場合はAMRL1の内容は0である(STEP3のS30参照)。さ
らにS64において、前回の波高値AMP()と今回波高値
cのうちいずれか大きい値が前回振幅値AMRL1に入力さ
れる。つまり、周期の中で2つある正、負のピーク値に
ついて大きい値のピーク値が振幅値AMRL1にセツトされ
る。そして、S65で波形ナンバーカウンタHNC>8かどう
かが判断され、ここで波形ナンバーカウンタ(ピツチ変
更側でないゼロクロスカウンタ)HNCが+1され、カウ
ントアツプされる。
従つて、波形ナンバーカウンタHNCは、上限が9とな
る。そして、S65もしくはS66の処理の後S67へ進行す
る。S67では、レジスタRIVを1とし、今回のゼロクロス
時刻から時刻記憶レジスタTFRの内容を引算して、周期
レジスタTTRへ入力する。この周期レジスタTTRは、第11
図に示すような周期情報を示すようになる。そして、今
回のゼロクロス時刻tは、時刻記憶レジスタTFRへセー
ブされ、この後、メインルーチンにリターン(RET)す
る。
S63でYの場合は、S68に進み今回波高値c>前回の波
高値AMP(b)かどうかが判断され、Yの場合はS69に進
む。S69では、今回波高値cに前回の波高値AMP(b)が
書替えられ、S70に進む。S70では今回波高値C>前回の
振幅値AMRL1かどうかが判断され、Yの場合にはS71に進
み、ここで今回波高値cが前回の振幅値AMRL1に入力さ
れる。
もし、S68でNの判断がなされるとすぐにメインルー
チンへリターンする。従つて、新しい入力波形のピーク
が大である場合についてのみ、新しい波形の振幅値が登
録される。(その場合は、倍音のピークをひろつていな
いと考えられるので。) また、S70でNのときと、S71の処理の終了のときに
は、同様にメインルーチンへリターンする。
以上述べたようにルートは、第11図の例によれば以
下のような処理がなされる。MT=0≠b、RIV=0、AMP
(1)←c、AMRL2←AMRL1、AMRL1←max〔AMP(0)、
c(のいずれか大きい方)〕、HNC←(HNC+1)=1、
RIV←1、TTR←(t−TFR)TFR←tが処理される。従つ
て、周期レジスタTTRに前回の同極性のゼロクロス点(S
TEP2→3のところ)から今回のゼロクロス点までの時刻
情報の差つまり、周期情報が求まつたことになる。そし
て、メインルーチンへ戻り、次のゼロクロスインターラ
プトを待つ。
次に、S40〜S62に示すルートへ進んだ場合の説明を
行なう。いま、波形ナンバーカウンタHNC=1なので(S
66参照)、S40からS42へ進む。S42では、第11図のよう
な場合、MT=0、b=0なのでYとなり、S43へ進む。S
43では、レジスタRIV=1かどうかが判断される。既に
ルートにおいて、レジスタRIVは1とされている(S67
参照)ので、S43の判断はいまの場合Yとなり、S44へ進
む。
S44では、レジスタSTEP=4かどうかが判断され、Y
の場合にはS45に進む。S45では、今回波高値c<60H
(Hは16進法表限を示す)かどうかが判断され、いま波
高値は大なのでYとなり、S46に進む。S46では、前々回
の振幅値AMRL2−前回の振幅値AMRL1≦(1/32)×前々回
の振幅値AMRL2かどうかが判断され、Yの場合にはS47に
進み、リラテイブオフカンタFOFRが0にセツトされる。
このリラテイブオフの処理については後述する。そし
て、S48では周期計算がおこなれわれる。具体的には
(今回のゼロクロス時刻t−前回のゼロクロス時刻デー
タTF)が今回の周期情報ttとしてレジスタTOTOにセツト
される。そして、S49に進み、S49では、今回の周期情報
tt>周波数上限THLIM(発音開始後の上限)かどうかが
判断され、Yの場合にはS50に進む。
S49の周波数上限THLIMは、STEP3のS36で使用したトリ
ガー時(発音開始時)周波数の許容範囲の上限(従つて
周期として最小で、最高音フレツトの2〜3半音上の音
高周期に相当する)と同一のものである。
次に、S50では次の処理が行なわれる。すなわち、レ
ジスタRIVを0にし、今回のゼロクロス時刻tが前回の
ゼロクロス時刻データTFとして入力され、また前回の波
高値AMP(b)が前々回波高値eに入力され、さらに今
回波高値cが前回の波高値AMP(b)に入力される。
そして、S50の処理の後S51に進み、S51では、周波数
下限TLLIM>今回の周期情報ttかどうかが判断され、Y
の場合すなわち今回の周期がノートオン中のピツチ抽出
音域下限以下になつた場合にはS52に進む。
この場合、周波数下限TLLIMは、例えば、開放弦音階
の1オクターブ下にセツトされる。つまり、STEP3の周
波数下限TTLIM(S37参照)に比較して、許容範囲を広く
している。このようにすることで、トレモロアームの操
作などによる周波数変更に対応し得るようになる。
従つて、周波数の上限、下限について許容範囲に入る
場合についてのみS52まで進み、そうでない場合はS49、
S51よりメインルーチンへリターンする。
次に、S52では周期データTTPが前々回抽出された周期
データhに入力され、また、今回の周期情報ttが前回抽
出された周期データTTPに入力される。そして、S53で今
回波高値cがペロシテイVELに書込まれ、S54に進む。S5
4では、ノーチエンジレベルNCHLV>(前々回波高値e−
今回波高値c)かどうかの判断が行なわれ、Yの場合に
はS55に進む。
すなわち、前回の同極性の波高値(e=AMP(b))
と今回の波高値cとが大きく変化している場合は、その
差がNCHLVを越えることになり、そのようなときに、抽
出された周期情報に基づきピツチ変更を行なうと、不自
然な音高変化を呈することになる可能性が高い。そこ
で、S54でNの判断がなされると、S55以降の処理をする
ことなく、メインルーチンへリターンする。
次に、S54でYの場合、リラテイブオフカウンタFOFR
=0か否かが判断される。後述するリラテイブオフ処理
を行なつているときは、リラテイブオフカウンタFOFRは
0でなくなくつており、そのような場合もピツチ変更
(S61を参照)の処理を行なうことなく、S55でNの判断
をしてメインルーチンへリターンする。そして、S55に
て、Yの判断をしたときは、S56、S57へと順次進む。
ここで2波3値一致条件が判断される。S56では今回
の周期情報tt×2-7<l今回の周期情報tt−前々回周期
データhlが判断され、Yの場合にはS57に進み、またS57
では今回の周期情報tt×2-7<l今回の周期情報tt−周
期レジスタTTRの内容lが判断され、Yの場合にはS58に
進む。
すなわち、S56では、第11図の今回の周期情報tt(S43
参照)が、前回の周期データh(=TTP)(S52参照)の
値と略一致するか否かを判断し、S57では、今回の周期
情報ttの値が、それに重なる周期TTRとほぼ一致するか
否かを判断する。なお、その限界範囲は、2-7×ttとし
て、周期情報に依存してその値が変わるようになつてい
る。勿論、これは固定の値としてもよいが、本実施例採
用技術の方が良好な結果を得ることができる。
次のS58では、今回の周期情報tt>定数TTUかどうかが
判断され、YならばS59へ進み、ここで今回の周期情報t
t<定数TTWかどうかが判断され、YならばS591へ進む。
なお、S58、S59は急激なピツチ変更を認めないための判
断である。
つまり、S58の定数TTUは、STEP3のS301でいま0とさ
れ、定数TTWは同様にMAXの値とされており、はじめてこ
のフローを通るときは必ずS58、S59でYの判断がなされ
るが、その後は後述するS62において、定数TTUには、
(17/32)tt(略1オクターブ高音の周期情報)がセツ
トされ、定数TTWには同様にS62にて(31/16)tt(ほぼ
1オクターブ低温の周期情報)がセツトされる。従つ
て、急激にオクターブアツプする(これは、フレツトを
離してミユート操作したときなどに生ずる)ことやオク
ターブダウンすること(これは波形のピークをとり逃し
たときなどに起る)があつたときは、ピツチ変更をする
と、不自然となるので、ピツチ変更をしないようにブラ
ンチする。
もし、S58、S59でYの判断がなされたときは、次にS5
91に進みフラグFLBが1か否かジヤツジする。このフラ
グFLBは、いまの場合上述したようにS301にて0となつ
ているので、S591ではNの判断がなされ、S592に進む。
S592においては、定数TTHRDより周期情報ttが小(高
音)か否かジヤツジされ、YのときはS593にゆき上述の
フラグFLBを1とし、NのときはS594にゆき上述のフラ
グFLBを0とする。しかる後、S60へ進む。
ここで、定数TTHRDは、開放弦音高に相当する周期よ
りも短い高音側の周期、具体的には、当該弦の第3フレ
ツトの音高に対応する周期よりも少ない(低温)周期と
してある。
従って、フラグFLBは、現在発音中の楽音が、フレッ
トボード上の所定の音高に対応する位置である第3フレ
ットより音高側で当該弦が押圧されて発生しているので
あれば1となり、逆に第3フレットよりも低温側であれ
ば0となる。
そして、次回以降にこのルートを実行するときにお
いては、前記S561にてフラグFLBが1か否か判断された
結果Yとなり、次にS595で、今回抽出した周期ttが、当
該弦の開放弦音高を示す定数TOPENと略一致するか、つ
まりフレットボード上で弦が押圧されている状態から、
押圧されていない状態に移行したかジヤツジされて、も
しYとなると、消音指示を音源SSへ与えるようにS76、S
77へ進むことになる。
従って、第3フレットより高いフレットで弦を押圧し
て当該弦をトリガーした後、当該フレットでの弦の押圧
をやめて押圧されていない状態である開放弦状態とした
ときは、演奏者がミユート操作したものとみなして、消
音を確実に行うことになる。
なお、S595でNの判断がされると、S592へ進む。
ところで、このTTHRDなる定数は、トレモロユニツト
がついている電子ギターにあつては、第3フレツト程度
の周期が適当であるが、トレモロユニツトがなく周波数
変更があまり生じない電子ギターにあつては、第1フレ
ツト程度あるいは50セント程度開放弦音階よりも高音の
周期を示す値であつてもよい。
さて、S593あるいはS594の実行後S60へ進む。S60で
は、レジスタSTEP=4にされたかどうかの判断が行なわ
れ、その場合にはS61では、マイコンMCPから音源SSへピ
ツチ変更(今回の周期情報ttに基づく)が行なわれ、S6
2に進み、今回の周期情報ttに対応した時定数チエンジ
をし、また定数TTUが(17/32)×今回の周期情報ttに書
替えられ、さらに定数TTWが(31/16)×今回の周期情報
ttに書替えられる。
つまり、後述するように、リラテイブオフの処理がな
されたときに限り、STEP=5となるが、そのときは、ピ
ツチ変更を行なうことなく時定数チエンジを行なう。こ
の時定数チエンジの処理とは、第2図の時定数変換制御
回路TTC内部のレジスタに今回の周期情報ttの値に基づ
くデータをマイコンMCPがセツトすることをいう。これ
は、既に説明したとおりである。
そして、S62の処理の終了でメインルーチンへリター
ンする。従つて、以上述べたようにルートは、第11図
に示す通り次の処理がなされる。すなわち、HNC=1、M
T=0=b、RIV=1、FOFR←0、tt←(t−TF)、RIV
←0、TF←t、e←AMP(0)、AMP(0)←c、h←TT
P、TTP←tt、VEL←c、FLB←0又は1であり、さらに、 TTP≒TTR≒tt、 TTU<tt<TTW、 AMP(0)−c<NCHLV の3条件の満足で、ttに従つたピツチ変更を行なう。し
かる後、TTU←(17/32)×tt、TTW←(31/16)×ttがな
される。
従つて、ルートにて、実際の音源SSに対するピツチ
変更が行なわれ、続くゼロクロスインタラプトでルート
の処理、同様に、続くゼロクロスインタラプトで、ル
ートの処理が行なわれる。このようにして、ルート
では、単に周期を抽出(S67参照)し、ルートでは実
際のピツチ変更(S61参照)し、時定数チエンジ処理(S
62参照)が行なわれるこになる。
なお、STEP4におけるS40において、ルートのS66で
波形ナンバーカウンタHNCが3を越えるように、カウン
トアツプされた後は、Yの判断がなされ、次にS41へ行
き、リラテイブオンの条件を検出する。これ、c−AMP
(b)>TRLRLであり、前回の振幅値AMRL1に比べて今回
の振幅値がしきい値TRLRLを越えて増大したとき、つま
り、これは弦操作後に同じ弦を再度ピツキングしたとき
(トレモロ奏法などによる)にこのようなことがおき、
この場合はS41でリラテイブオンの処理をすべくS41から
S78へ進み、時定数変換制御回路TCCの時定数チエンジレ
ジスタCHTRRへ最高音フレツト(例えば22フレツト)の
周期CHTIMをセツトする。しかる後、第5図のS06へ進
み、当該発音中の楽音をノートオフした後、再発音開始
する。
通常の演奏操作によれば、S40、S41、S42へ進み、上
述したルートもしくはルートへ進む。
次に第12図、第13図を参照し、リラテイブオン処理を
説明する。つまり、フレツト操作している状態から、開
放弦状態へ移行すると、波形の振幅レベルは急激に落ち
てきて、前々回の波高値AMRL2と前回の波高値AMRL1との
差が(1/32)AMRL2を越えるようになると、S46からS74
へ進む。そして、リラテイブオンカウンタFOFRが定数RO
FCTを越えるまでカウントアツプするようにS74からS75
へ進む。このとき、S75からS48へ行きS49〜S55の処理を
行なうが、FOFR=0でないので、リラテイブオン処理に
入る直前ではピツチ変更をおこなうことなくメインルー
チンへ戻る。
そして、S74でYと判断すると、つまり第13図の例で
は、FOFRの値が3となつたとき(ROFCTは2である)、S
74からS75へいく。
ただし、S46のジヤツジでYの判断が一度でもある
と、S46からS47へ進み、FOFRをリセツトするようにな
る。従つて、ROFCTで指定される回数だけ続けてS46の条
件を満足しなければ、リラテイブオンの処理はなされな
い。なお、ROFCTの値は、音高が高い弦について大きな
値としておけば、略一定の時間経過で、いずれの弦につ
いてもリラテイブオン処理ができる。
そして、S74からS76へ行くと、リラテイブオンカウン
タFOFRをリセツトし、レジスタSTEPを5とし、S77へ進
んで音源SSに対しノートオフを指示する。このSTEPが5
の状態では、ピツチ抽出処理をSTEP4の時と同様に実行
するが、S60からS61を介することなくS62へ進むので、
音源SSに対しては、ピツチ変更はされない。ただし、S6
2において抽出した周期に従つて時定数チエンジ処理を
行なう。
そして、STEPが5の状態では、リラテイブオンの処理
を受付けるが(S41、S78)、それ以外の場合では、第4
図のメインフローの中で、振動レベルが減少してきたこ
とが検知されることによりM14でSTEPが0となり、初期
状態にもどる。
なお、S46で使用するAMRL1、AMRL2はS64で作られてお
り、1周期の中でレベルが大な方のピーク(最大ピーク
と最小ピークとの一方)が、この値とされ、第13図の例
では、最大ピークakが最小ピークbk-1より必ず大であ
る場合であつて、an+1とan+2、an+2とan+3、an+
とan+4の差がいずれも所定値を越えるようになつてい
る。
また、このときルートの処理においては、最小ピー
クbn+1、bn+2、bn+3が極端に減少してきているの
で、S54でNの判断が成されて、メインルーチンへリタ
ーンし、ピツチ変更処理はなされない。
次に、ピツチ抽出しているなかで、オクターブ関係に
ある倍音、つまりオクターブ高い音やオクターブ低い音
が続けて検出されたときの処理について説明する。
既に説明したように、S58ではttがTTUを越えなかつた
とき、つまり、前回抽出した周期の17/32倍した値TTUよ
り小になつたとき、S76へ進む。つまり、オクターブ高
い音が抽出されたときは、指定していたフレツトから指
を離してミユート操作をした場合とみなし、オクターブ
高い音を出力することなく、S58からS76へ行き、リラテ
イブオン時同様S76、S77の処理によつて当該音の発音を
停止する。
また、S59では、ttがTTWを越えなかつたとき、つまり
前回抽出した周期の31/16倍した値TTWより大となつたと
き、S60へ進むことなく、メインルーチンヘリターンす
る。
この状態は第14図に示されている。通常ノートオフ近
辺の非常に波形が小さい場合、他のピツキングによつて
ヘキサピツクアツプのクロストオークやボデイの共振に
よつて波形が乗つてくる。すると、例えば、第14図のよ
うな入力波形となり、1オクターブ下の入力波形が続け
て検出されてしまうことがある。
このような場合、何等処理を施さないと、急にオクタ
ーブ下の音を出力してしまい、極めて不自然となる。そ
のために、S57、S56でTan+2≒Tan+3≒Tbn+2が検出さ
れてもTan+3>Tan+1×(31/16)となるので、ピツチ
変更することなく、S59からメインルーチンへリターン
する。
次に、ダブリの波形が抽出される場合つまり、同じ極
性のゼロクロス点が続けて到来する場合について説明す
る。第15図は、MT=1の場合の例を示しており、基本波
周期と倍音成分の周期が非整数倍の関係にあるので、倍
音の位相がずれて行き、同じ極性のゼロクロスを検出を
してしまうことになり、そのために誤つたピツチ変更を
しないようにしないといけない。
そこで、図のダブリと書いてあるゼロクロス時のSTEP
4の処理では、S42からS43へ行き、S43ではYの判断をし
てS72へ行く。ここで、(an+3)と(an+2)の大きさ
が比較され、もし(an+3)が(an+2)より大であれ
ば、S72でYの判断をし、AMP(1)に、(an+3)の値
をセツトし、もし逆の場合は何等変更処理をしない。
ところで、このダブリの場合抽出している時刻データ
は何等使用しないので、周期情報Tan+3は何等変わらな
い。また、当然周期データに基づくピツチ変更は行なわ
れない。
同様に、第16図は波形のダブリの場合の例で、MT=0
の状態を示している。このときも、図中にダブリと示し
ているところ、ダブリの状態が生じている。このとき
は、S42からS63へ行き、Yの判断をしてS68へ行く。S68
では、いまの場合(an+2)と(an+3)との比較をし
て、(an+3)が(an+2)より大なときに限りS69へ行
き、AMP(1)を書替える。この場合は、更に前回の振
幅値AMRL1と今回の振幅情報(波高値c)の比較をS70で
行なつても、もしYならばS71へ進み、今回の振幅情報
cを前回の振幅値AMRL1へセツトする。
このようにして、倍音の影響で、波形がダブつたとき
にも、S56、S57を満足しない限りピツチ変更処理はなさ
れないことになる。
以上述べた実施例によれば、フレツト操作して弦をピ
ツキングすることにより音源SSから発生した楽音を、ミ
ユート操作を行う、即ち当該フレツト操作をやめて開放
弦状態に移行する操作を行うことによつて確実に消音す
ることができるようになる(S591、S595、S76、S77参
照)。
しかも、抽出したピツチの変動(ゆらぎ)や、トレモ
ロ操作によつては、誤つてミユート指示を音源SSへ与え
ることが防止される(S592、S593、S591参照)ので、演
奏操作に支障をきたさない。
なお、前記実施例においては、最大ピーク点、最小ピ
ーク点の次のゼロクロス点毎の間隔から周期抽出を行な
うようにしたが、その他の方式、例えば最大ピーク点間
や最小ピーク点間の時間間隔から周期抽出をおこなつて
もよい。また、それに合せて回路構成は種々変更し得
る。
また、前記実施例においては、この発明を電子ギター
(ギターシンセサイザ)に適用したものであつたが、そ
れに限らない。源振動により生ずる波形信号からピツチ
抽出を行なつて、オリジナルの信号とは別の音響信号を
発生するタイプの楽器または装置であれば、種々適用可
能である。
〔発明の効果〕
以上詳述したように、本発明は、押圧位置検出手段が
検出するフレットボード上に押圧位置に対応する音高を
音高指定手段が指定し、発音開始指示手段により楽音の
発音開始が指示されると、前記音高指定手段により指定
された音高の楽音の発生を楽音発生指示手段が指示し、
前記楽音発生指示手段の前記指示による楽音の発生中
に、前記押圧位置検出手段が、前記フレットボード上の
所定の音高に対応する位置より高音側の位置が押圧され
ている状態から、押圧されていない状態に移行したこと
を検出した場合、該発生中の楽音を消音するように消音
指示手段が指示するようにしたのでミュートが確実に行
え、耳ざわりな開放弦音高の楽音が発生することが防止
できる。しかも、ミユート以外の操作や抽出したピツチ
の変動によつて誤つて上記同様なミユート指示が音源手
段に対しなされることも防止できる。
【図面の簡単な説明】
第1図は本発明による電子楽器の入力制御装置の全体の
構成を示すブロツク図、第2図は第1図のピツチ抽出デ
ジタル回路の一例を示すブロツク図、第3図は第2図の
マイコンの割込み処理ルーチンを示すフローチヤート、
第4図は第2図のマイコンのメイン処理ルーチンを示す
フローチヤート、第5図〜第7図および第9図、第10図
はいずれも第2図のマイコンの各ステツプの動作を説明
するためのフローチヤート、第8図、第11図〜第17図は
いずれも各ステツプの動作を説明するためのタイミング
チヤートである。 PA……ピツチ抽出アナログ回路、PD……ピツチ抽出デジ
タル回路、MCP……マイコン、SS……音源、PEDT……ピ
ーク検出回路、ZTS……ゼロクロス時刻取込回路、TCC…
…時定数変換制御回路、PVS……波高値取込み回路。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】楽音の発音開始を指示する発音開始指示手
    段と、 フレットボード上の押圧の有無及び押圧位置を検出する
    押圧位置検出手段と、 前記押圧位置検出手段が検出する押圧位置に対応する音
    高を指定する音高指定手段と、 前記発音開始指示手段により楽音の発音開始が指示され
    ると、前記音高指定手段により指定された音高の楽音の
    発生を指示する楽音発生指示手段と、 前記楽音発生指示手段の前記指示による楽音の発生中
    に、前記押圧位置検出手段が、前記フレットボード上の
    所定の音高に対応する位置より高音側の位置が押圧され
    ている状態から、押圧されていない状態に移行したこと
    を検出した場合、該発生中の楽音を消音するように指示
    する消音指示手段と を有することを特徴とする電子弦楽器。
  2. 【請求項2】前記押圧位置検出手段は前記フレットボー
    ド上に張設された弦の振動周期に基づいて、前記押圧位
    置を検出することを特徴とする請求範囲第1項記載の電
    子弦楽器。
JP62336411A 1987-12-28 1987-12-28 電子弦楽器 Expired - Lifetime JP2591000B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62336411A JP2591000B2 (ja) 1987-12-28 1987-12-28 電子弦楽器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62336411A JP2591000B2 (ja) 1987-12-28 1987-12-28 電子弦楽器

Publications (2)

Publication Number Publication Date
JPH01177083A JPH01177083A (ja) 1989-07-13
JP2591000B2 true JP2591000B2 (ja) 1997-03-19

Family

ID=18298852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62336411A Expired - Lifetime JP2591000B2 (ja) 1987-12-28 1987-12-28 電子弦楽器

Country Status (1)

Country Link
JP (1) JP2591000B2 (ja)

Also Published As

Publication number Publication date
JPH01177083A (ja) 1989-07-13

Similar Documents

Publication Publication Date Title
JP2615825B2 (ja) 電子弦楽器
JP2734521B2 (ja) 楽音制御装置
US5048391A (en) Electronic musical instrument for generating musical tones on the basis of characteristics of input waveform signal
US5147970A (en) Electronic musical instrument for generating musical tones on the basis of characteristics of input waveform signal
US5990408A (en) Electronic stringed instrument using phase difference to control tone generation
US4924746A (en) Input apparatus of electronic device for extracting pitch from input waveform signal
JP2591000B2 (ja) 電子弦楽器
JP2661066B2 (ja) 発音制御装置
JP2611263B2 (ja) 発音制御装置
JP2722584B2 (ja) 楽音制御装置
JP2591001B2 (ja) 電子弦楽器
JP2775633B2 (ja) 楽音制御装置
JP2661065B2 (ja) 発音制御装置
JP2605773B2 (ja) 電子弦楽器
JP6135312B2 (ja) 電子弦楽器、楽音制御方法及びプログラム
JP2958778B2 (ja) 楽音発生装置
JP2661481B2 (ja) 電子楽器
JP2615946B2 (ja) 楽音制御装置
JP2858313B2 (ja) 音高情報生成装置
JP2530928Y2 (ja) 電子楽器のレベル表示装置
JP2005189600A (ja) 電子弦楽器
JP6361109B2 (ja) 電子弦楽器、楽音制御方法及びプログラム
JP2014153434A (ja) 電子弦楽器、楽音生成方法及びプログラム
JPH07104753A (ja) 電子楽器の自動調律装置
JPH01100597A (ja) 発音制御装置