JP2679042B2 - Input waveform signal controller - Google Patents

Input waveform signal controller

Info

Publication number
JP2679042B2
JP2679042B2 JP62076452A JP7645287A JP2679042B2 JP 2679042 B2 JP2679042 B2 JP 2679042B2 JP 62076452 A JP62076452 A JP 62076452A JP 7645287 A JP7645287 A JP 7645287A JP 2679042 B2 JP2679042 B2 JP 2679042B2
Authority
JP
Japan
Prior art keywords
pitch
data
octave
pitch data
difference
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
JP62076452A
Other languages
Japanese (ja)
Other versions
JPS63243996A (en
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 JP62076452A priority Critical patent/JP2679042B2/en
Publication of JPS63243996A publication Critical patent/JPS63243996A/en
Application granted granted Critical
Publication of JP2679042B2 publication Critical patent/JP2679042B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 [発明の技術分野] この発明は例えば電子ギター等において利用される入
力波形信号制御装置に関し、特に外部からの入力波形信
号により抽出したピッチ(基本周波数)に基づいて音高
を決定するものに関する。 [発明の背景] 従来より、自然楽器の演奏操作によって発生する波形
信号からピッチ(基本周波数)を抽出し、電子回路で構
成された音源装置を制御して、人工的に楽音等の影響を
得るようにしたものが種々開発されている。 この種の電子楽器では、入力波形信号のピッチを抽出
してから音源装置に対し当該ピッチに対応する音名の音
を発生するよう指示するのが一般的である。 この場合、抽出したピッチデータTより対応する音名
データKに変換するには、基準となる音名K0のピッチデ
ータをT0とすると、 T0/T=2K/12/2k0/12 の関係があり、これに基づき K=K0+12log2(T0/T) の対数演算式により音名データKが求められることにな
る。 しかし、この対数演算は、処理時間が長くかかるもの
であるため、波形が入力されたら直ちにこの波形に応じ
た音高の楽音を生成放音しなくてはならない電子楽器で
は、不都合が生じていた。 そこで、代表的な複数の音名データに対するピッチデ
ータを記憶しておき、このピッチデータの中から抽出し
たピッチデータに一番近いものを検索し、必要に応じて
補間計算を行うことによって、音名を得ることが考えら
れている。 これによれば、複数オクターブにわたる広い音域をカ
バーしようとしたり、精度を上げようとすると、音名検
索用のデータテーブルのメモリ容量が非常に大きなもの
となってしまい、検索のための時間も長くなってしまう
という問題点があった。 [発明の目的] この発明は上述した事情に鑑みてなされたもので、そ
の目的とするところは、少ないメモリ容量で、広い音域
にわたって高い精度で音名を検索することのできる入力
波形信号制御装置を提供することにある。 [発明の要点] この発明は上述した目的を達成するために、1オクタ
ーブ分の音域を複数の音域に分割し、これらの分割され
た各音域をピッチ差で表わした差分ピッチデータdTm
と、これらの差分ピッチデータdTmに対してピッチの大
きさ順に設定された順番データmと、1オクターブ分の
音域で最も低い音高に対応した基準ピッチデータT0と、
基準ピッチデータT0に対応する音名データK0とによっ
て、ピッチ抽出データに対応するオクターブOCTとオク
ターブ未満の音域を検索した後、オクターブ未満の端数
データtが1オクターブ分の音域を分割して得られる複
数の音域のいずれかに属するかを検索してから求めるべ
き音名データKを決定するもので、 の式により対応する音名の音高値を求めることができ
る。 これにより、音名を決定したい広い音域にわたってピ
ッチデータを記憶しておかなくとも済み、それだけメモ
リ容量が少なくてよくなるほか、メモリ容量を少なくで
きた分だけ記憶するピッチデータの幅を細かくすること
もでき、音名を決定する精度も上げることができる。 [実施例] 本実施例では、ピッチ抽出回路P1〜P6がピッチ抽出手
段に、ピッチデータテーブル40がピッチデータ記憶手段
に、ステップD1〜D7を実行するCPU100がオクターブ決定
手段に、ステップD8〜D12を実行するCPU100が音名決定
手段に夫々対応する。 全体回路構成 第1図は、同実施例の全体回路構成を示しており、6
つの入力端子1の信号は、電子ギターボディ上に張設さ
れた6つの弦の夫々に設けられた、弦の振動を電気信号
に変換するピックアップからの信号である。 入力端子1……からの楽音信号は、ピッチ抽出回路P1
〜P6(図では第1弦のP1についてのみその内部構成を示
している。)内部の夫々のアンプ2……で増幅され、ロ
ーパスフィルタ(LPF)3……で高周波成分がカットさ
れて基本波形が抽出され、最大ピーク検出回路(MAX)
4……、最小ピーク検出回路(MIN)5……及びゼロク
ロス点検出回路(Zero)6……に与えられる。ローパス
フィルタ3……は、各弦の開放弦の振動音周波数fの4
倍の4fにカットオフ周波数が設定されている。これは、
各弦の出力音の周波数が2オクターブ以内であることに
基づくものである。最大ピーク検出回路4……では、楽
音信号の最大ピーク点が検出され、その検出パルス信号
の立上りで後段に接続されているフリップフロップ14…
…のQ出力がHighレベルとなり、このフリップフロップ
14……の出力とゼロクロス点検出回路6……のインバー
タ30……の反転出力とのアンド出力がアンドゲート24…
…を介して割り込み指令信号INTa1〜INTa6としてCPU100
に与えられ、同様に最小ピーク検出回路5……でも、楽
音信号の最小ピーク点が検出され、その検出パルス信号
の立上りで後段に接続されているフリップフロップ15…
…のQ出力がHighレベルとなり、このフリップフロップ
15……の出力とゼロクロス点検出回路6……の出力との
アンド出力がアンドゲート25……を介して割り込み指令
信号INTb1〜INTb6としてCPU100に与えられる。 即ち、最大ピーク点が検出されてフリップフロップ14
がHighレベルになっているときに、波形が正から負へ横
切ったとき割り込み指令信号INTa1〜INTa6がCPU100に与
えられ、逆に最小ピーク点が検出されてフリップフロッ
プ15がHighレベルとなっているときに、波形が負から正
に変化したとき割り込み指令信号INTb1〜INTb6がCPU100
に入力する。 そして、CPU100は、これらの割り込み指令信号を受付
けた直後に、対応するフリップフロップ14……、15……
に対しクリア信号CLa1〜CLa6、CLb1〜CLb6を発生してリ
セットする。従って、次に最大ピーク点あるいは最小ピ
ーク点を検出するまで何度ゼロクロス点を通過しても対
応するフリップフロップ14……、15……はリセット状態
であるので、CPU100には割り込みがかからないことにな
る。 そして、CPU100では、当該弦の振動出力により割り込
み指令信号INTa1〜INTa6もしくはINTb1〜INTb6が与えら
れて、夫々の時間間隔の少なくとも一方の時間間隔のピ
ッチデータに従った音高の音を発生する。尚、発音開始
時においては開放弦の音高の音を発生開始してピッチ抽
出の後で正しい周波数に修正してもよい。この発音開始
時の動作については後述する。 そして、上記時間間隔のピッチデータは、後述するよ
うにカウンタ7と、ワークメモリ101とを用いて求め
る。即ち、このワークメモリ101には、最大ピーク点の
直後あるいは最小ピーク点の直後のゼロクロス点時のカ
ウンタ7のカウント値など各種データが記憶される。 一方、ピッチデータテーブル40は、第7図のdTmとm
とで表わすように、A3の音高からA4の音高まで順番に音
高データK「57.0」「57.5」「58.0」「58.5」……とこ
れに対応するピッチデータT「4525」「4271」「4149」
「4031」……とを差分値表現にて記憶している。つま
り、A3の音高データ「57.0」とそのピッチデータ「452
5」とはK0、T0としてピッチデータから音高データを決
定する場合の基準データとして用いられる。 そして、このピッチデータテーブル40には、各ピッチ
データT「4525」「4271」「4149」「4031」……の差を
表わす差分表現のピッチデータdTm「129」「125」「12
2」……とこれに応じた順番データm「0」「1」
「2」「3」……とが記憶されている。その結果、音高
データKは、オクターブの範囲を越えて50セントごとに
「0.5」ずつ増減し、この音高データKの値に基づいて
所属オクターブと音名とがわかることになる。 このピッチデータテーブル40の各データに基づいて、
抽出ピッチデータTより音高データKが求められるが、
この求め方は、まず、抽出ピッチデータTを2n倍(n=
……、2、−1、0、1、2……)として、A3〜A4のピ
ッチデータTの範囲内T0〜T0/2にはいるようにし、この
ときのnの値に基づいて抽出ピッチデータのオクターブ
OCTが決定され、次いで、この2n倍した抽出ピッチデー
タと上記基準となるA3のピッチデータT0との差であるオ
クターブ未満の端数データより上記差分ピッチデータdT
mを順次引いて、もう引けなくなった時の対応する順番
データmにより音名が決定される。そして、最後に残っ
たデータtと直前に引いた差分ピッチデータdTmとの比
例補間により、さらに細かい音高データ部分(例えばセ
ント単位)が求められる。 そして、発音開始後は、順次求まるピッチデータに従
って、発生中の楽音の周波数を可変制御してゆく。即ち
CPU100より上述の如くして求まった音高を指定するデー
タを周波数ROM8へ送出し、その結果対応する周波数を示
す周波数データが読み出され、音弦回路9に送られて楽
音信号が生成され、サウンドシステム10より放音出力さ
れる。 また、上記ローパスフィルタ3……からの楽音信号
は、A/Dコンパレータ11……に与えられ、その波形レベ
ルに応じたデジタルデータに変換される。 そして、このA/Dコンバータ11……の出力はラッチ12
……にラッチされる。このラッチ12……に対するラッチ
信号は、上記フリップフロップ14……、15……の出力が
オアゲート13……を介することで生成され、最大ピーク
点もしくは最小ピーク点を通過する都度ラッチ12……に
はそのときの波形のレベルを示す信号が記憶される。ま
た、このオアゲート13……からのラッチ信号L1〜L6はCP
U100にも与えられる。 そして、ラッチ12……出力はCPU100へ与えられ、発音
開始、停止、更には出力音の放音レベル(音量)等の制
御がこのデータに従ってなされる。なお、このラッチ12
に記憶されるピーク値である波高値は、ワークメモリ10
1に順次書込まれる。 即ち、CPU100では、A/Dコンバータ11……より与えら
れる波形レベルを示すデータの絶対値が、予め決められ
た一定値以上になった時には、楽音の発音を開始させる
とともにピッチ(基本周波数)抽出も開始させ、このデ
ータが一定値以下になった時には、消音指示をして放音
を終了させる。その動作の詳細は後述するとおりであ
る。 なお、第1図には、A/Dコンバータ11が、ピッチ抽出
回路P1〜P6に夫々独立に設けてあるが、一個のA/Dコン
バータを時分割的に使用することも勿論可能である。 そして、周波数ROM8、音源回路9は時分割処理により
少なくとも6チャンネルの楽音生成系が形成されてい
る。 なお、第2図は、ピッチ抽出回路P1内の各部の信号波
形のタイムチャートを表わしており、図のは、ローパ
スフィルタ3の出力、は最大ピーク検出回路4の出
力、は最小ピーク検出回路5の出力、はゼロクロス
点検出回路6の出力、は割り込み指令信号INTa1〜INT
a6、は割り込み指令信号INTb1〜INTb6である。 動 作 次に本実施例の動作について説明する。第3図はCPU1
00のメインフローであり、第4図及び第5図は割り込み
ルーチンのフローであり、第6図は音高計算処理のフロ
ーである。なお、この第3図〜第6図はひとつの弦につ
いての処理しか示していないが、全ての弦の処理は全く
同じなので、CPU100が夫々の弦についての処理を時分割
的に実行すると考えればよい。 メイン処理 メインルーチン(第3図)では、CPU100は、まずステ
ップA1で初期設定を行った後、ステップA2でラッチ12か
らのA/Dコンバータ11の値を読み込んで、一定レベルと
ならない限り、楽音のオフ処理を続ける(ステップA3、
A4)。いま、弦の演奏操作があって、第2図に示すよう
な一定レベル以上の楽音信号がA/Dコンバータ11に入力
されれば(ステップA3)、ステップA5に進んで周波数制
御処理すなわちカウンタ7からのデータを周波数ROM8に
与える楽音放音処理を行い、楽音信号レベルが一定レベ
ル以上である限りこの放音処理を続ける(ステップA2、
A3、A5)。このカウンタ7のカウントデータは次述する
割り込み処理で設定される。 ゼロクロス点での割り込み処理 次に、弦操作によって楽音波形が立上り、第2図の
MAX1に示す最初の最大ピーク点に波形レベルが達したと
すると、最大ピーク検出回路4より第2図に示すよう
な信号が発生し、フリップフロップ14がHighレベルとさ
れる。そして、ゼロクロス点検出回路6から第2図の
Zero1の点でゼロクロス点検出出力が反転する(同図
参照)と、アンドゲート24よりCPU100に対し割り込み指
令信号INTaが与えられ、CPU100は第4図の割り込み処理
を開始する。まず、CPU100はステップB1でカウンタ7の
カウント値を読み込み、波形が1波目か否かを判断する
(ステップB2)。いま、楽音波形は立上ったばかりで、
1波目なので、ステップB6に進んでフラグ「1」を立て
て、ワークメモリ101に上記ステップB1で読み出したカ
ウンタ7のカウント値をセットする。このフラグ「1」
は、最大ピーク点の次のゼロクロス点が既に検出された
ことを示すフラグであり、このフラグがクリアされてい
ると、最小ピーク点が検出されたことを示すことにな
る。なお、このフラグの機能は後述するようとおりであ
る。 そして次に、第2図のMIN1に示す最小ピーク点に達
すると、今度は最小ピーク検出回路5よりピーク検出信
号が出力し、フリップフロップ15がセットされる。そし
て、次のゼロクロス点(Zero2)にて、ゼロクロス点検
出回路6出力は反転し、その結果アンドゲート25よりCP
U100に対し割り込み指令信号INTbが与えられ、CPU100は
第5図の割り込み処理を開始する。まず、CPU100はステ
ップC1でフリップフロップ15をリセットし、更にカウン
タ7のカウント値を読み込み、波形が1波目か否か判断
する(ステップC2)が、最小ピーク点の次のゼロクロス
点についてはいまの場合1波目であるので、ステップC6
に進んでフラグをクリアして「0」とし、ワークメモリ
101に上記ステップC1で読み出したカウンタ7のカウン
ト値をセットする。 このステップC2の上記ステップB2の1波目か否かの判
断は、例えばA/Dコンバータ11からの波形レベルデータ
が一定以上となった時に、1波目フラグA、Bを立て、
最大ピーク点直後のゼロクロス点検出の割り込み指令信
号INTaが与えられた時のステップB2の後でステップB6の
前に、この1波目フラグAをクリアし、最小ピーク点直
後のゼロクロス点検出の割り込み指令信号INTbが与えら
れた時のステップC2の後でステップC6の前に、この1波
目フラグBをクリアし、ステップB2、C2で1波目フラグ
A、Bが立っているか否かを判断することで達成され
る。 そして、第2図のMAX2に示す最大ピーク点に続くゼ
ロクロス点(ZOer3)に到達すると、最大ピーク点直後
のゼロクロス点検出の割り込み指令信号INTaが与えら
れ、CPU100はステップB1でカウンタ7のカウント値を読
み込み、ステップB2で波形がもう1波目でないことを判
断して、ステップB3でフラグが「0」か否か判断する。
フラグは、すぐ前の最小ピーク点MIN1の次のゼロクロス
点(Zero2)で「0」になっているから、CPU100はステ
ップB6に進み一周期前の最大ピーク点MAX1の直後のゼロ
クロス点(Zero1)でワークメモリ101にセットしたタイ
ムカンウントデータを読み出して上記ステップB1で読み
出した今回のタイムカウントデータより減算し、Zero1
からZero3までの一周期分のピッチデータTを抽出す
る。 そして、この抽出ピッチデータTより、ピッチデータ
テーブル40のデータ内容に基づいて音高データKを計算
する(ステップB5)。この計算内容の詳細は後述する。
この結果、上述のステップA5では、上記音高データKを
周波数ROM8に与えて、ゼロクロス点(Zero1)からゼロ
クロス点(Zero3)までの時間長を一周期とする周波数
の楽音を放音するように制御することになる。上述の処
理にひき続いて、CPU100はフラグ「1」を立て、上記今
回のタイムカウントデータ値をワークメモリ101にセッ
トする(ステップB6)。 このように、ステップC6、B3で最大ピーク点のすぐ次
のゼロクロス点が判別され、このゼロクロス点間だけの
時間が計測され、ステップB4、B5で周期計算及び音高計
算が行われてゆく。 同様にして、最小値検出直後のゼロクロス点(Zero
4)の検出によって発生されるアンドゲート25からの割
り込み信号INTbの入力に応じて、CPU100は、第5図に示
すフローの処理を行い今回は、前のゼロクロス点(Zero
2)から今回のゼロクロス点(Zero4)までの時間間隔が
抽出ピッチデータTとなる。 従って、本実施例では、最大値検出直後発生するゼロ
クロス点どおしの時間間隔(ZOer1→Zero3)と、最小値
検出直後発生するゼロクロス点どおしの時間間隔(Zero
2→Zero4)とが求まり、一周期に2回周波数変更の処理
が行え、入力信号の周波数変化に応答できるようになっ
ている。 音高決算処理 上述したステップB5、C5の音高計算処理は、第6図に
示すフローチャートに基づいて行われる。 CPU100は、まずオクターブ値OCTを0とし(ステップD
1)、抽出ピッチデータTがピッチデータテーブル40内
の第7図の基準ピッチデータT0「4525」より小さいか否
か判断する(ステップD2)。いま抽出ピッチデータTが
例えば「9800」であったとすると、このデータT「980
0」は基準ピッチデータT0「4525」より大きいので、CPU
100はステップD3に進み、抽出ピッチデータT「9800」
を1/2にして「4900」とし、オクターブ値OCTを−1にし
て「−1」とし(ステップD4)、再びステップD2に戻っ
て、1/2にした抽出ピッチデータT「4900」が基準ピッ
チデータT0「4525」より小さいか否か判断する。 今度も基準ピッチデータT0より大きいので、再度ステ
ップD3、D4の処理を繰り返し、抽出ピッチデータTを1/
2にして「2450」とし、オクターブ値を−1して「−
2」とし、同じく抽出ピツチデータT「2450」が基準ピ
ッチデータT0「4525」より小さいか否か判断する(ステ
ップD2)。 今度は基準ピッチデータT0より小さくなるので、ステ
ップD5に進み、抽出ピッチデータT「2450」がその1/2
の基準ピッチデータT0「2262.5」より大きいか否か判断
する。抽出ピッチデータT「2450」の方が大きいので、
CPU100は、ステップD8に進み、上記基準ピッチデータT0
「4525」により抽出ピッチデータT「2450」を引いてオ
クターブ未満の端数データt「2075」を求め、順番デー
タmを「0」とし(ステップD9)。この「0」の順番デ
ータmに応じた差分ピッチデータdTm「129」より上記端
数データt「2075」が小さいか否か判断する(ステップ
D10)。 差分ピッチデータdTmの方が小さいので、CPU100は、
ステップD11に進んで、端数データt「2075」より先頭
の差分ピッチデータdTm「129」を引いて「1946」とし、
順番データmを+1して「1」とする(ステップD1
2)。そして、CPU100は、端数データtが差分ピッチデ
ータdTmより小さくなるまで、ステップD11、D12の処理
を繰り返して、端数データtより差分ピッチデータdTm
を順番に引いていく。 そして、差分ピッチデータdTmが「73」まで差し引か
れ、順番データmが「21」になると、端数データtが残
り「17」となり、次の差分ピッチデータdTm(m=21)
「70」より小さくなるので、CPU100はステップD13に進
み、K=K0+12×OCT+(m+t/dTm)/2=57.0+12×
(−2)+(21+17/70)/2=43.62の演算を実行して、
新たな音高データKを求める。この音高はG1 よりやや
上の音高となる。 こうして、ピッチデータテーブル40に記憶されたA3
A4の1オクターブ分のピッチの差分データdTmだけで、
他のオクターブの音高データを求めることができる。 また、抽出したピッチデータTが1/2の基準ピッチデ
ータT0/2「2262.5」より小さければ、CPU100は、ステッ
プD5〜D7で抽出ピッチデータTが「2262.5」より大きく
なるまで2n倍(n=1、2、3……)していき、以後は
上述したステップD8〜D13の処理を行って、音高データ
Kを求める。 以上要約すると、CPU100は、ステップD1〜D7で、抽出
ピッチデータTを2n倍(n=……、−2、−1、0、
1、2……)して、ピッチデータテーブル40に記憶され
ているピッチデータの範囲内にはいるようにすることに
より、このnの値であるオクターブ値OCTを求め、ステ
ップD8〜D12で、上記抽出ピッチデータTのオクターブ
未満の端数データと差分ピッチデータdTmの累算データ
との対応から音名が求められることになる。 なお、上述の例では第7図右半分の差分ピッチデータ
dTmと順番データmと基準の音高データK0「57.0」とピ
ッチデータT0「4525」とだけピッチデータテーブル40に
記憶するようにしたが、ピッチデータテーブル40に記憶
するピッチデータTは、第7図の左半分の音高データと
ピッチデータTのみとしてもよい。音高データKとピッ
チデータTのみとする場合には、ステップD8、D9を省略
し、ステップD10で上記ステップD3、D6で2n倍(n=…
…、−2、−1、0、1、2……)した抽出ピッチデー
タTがピッチデータテーブル40内の各音高の記憶ピッチ
データより小さいか否かが判断され、ステップD11でピ
ッチデータテーブル40の読出アドレスを+1する処理が
行われ、ステップD12はそのままで、ステップD13の音高
計算処理の前に、抽出ピッチデータTより直前にピッチ
データテーブル40より読み出したピッチデータとの差を
tとし、このピッチデータテーブル40のピッチデータと
次の番地のピッチデータとの差をdTmとする処理が実行
されることになる。 ピッチデータテーブル40に記憶するデータを上記差分
ピッチデータdTm、順番データmと基準の音高データK0
「57.0」とピッチデータT0「4525」のみとする場合に
は、差分ピッチデータdTmと順番データmの桁数は、音
高データKとピッチデータTの桁数より小さいため、記
憶容量がそれだけ小さくて済む効果があるが、音高デー
タK、ピッチデータTをも記憶したとしても、従来のよ
うに全オクターブにつきピッチデータを記憶する場合に
比べて、記憶容量がそれだけ小さくて済むことに変わり
はない。 また、上記実施例では、音高の表示を、シリアル番号
とするようにしたが、オクターブ、音階名(コード)、
半音以下のデータにて表現するようにしてもよく、その
他どのような表現形態であってもよい。 更に、上記実施例ではピッチデータを50セント単位
(半音の半分)でもつようにしたが、100セント単位
(半音毎)にもってもよく、あるいは更に細分化しても
つようにしてもよく、加えて、1オクターブを越えてそ
のようなデータをもつようにしてもよい。 その他、ピッチ抽出の方式は上記実施例に限られるも
のでなく、また本発明は電子ギターのほか各種電子楽器
に適用できる。 [発明の効果] この発明は以上詳述したように、ピッチ抽出手段が出
力した抽出ピッチデータと記憶手段が記憶しているピッ
チデータとを比較して、この比較結果に基づいて入力波
形信号に係わる音名を決定するようにしたから、音名を
決定したい広い音域にわたってピッチデータを記憶して
おかなくとも済み、それだけメモリ容量が少なくてよく
なるほか、メモリ容量を少なくできた分だけ記憶するピ
ッチデータの幅を細かくすることもでき、音名に対応す
る音名データを電子楽器の音源に供給すれば、この決定
された音名データに忠実な音高の楽音が速やかに発音で
きるという効果を奏する。
Description: TECHNICAL FIELD OF THE INVENTION The present invention relates to an input waveform signal control device used in, for example, an electronic guitar, and in particular, a sound based on a pitch (fundamental frequency) extracted by an input waveform signal from the outside. Regarding what determines high. BACKGROUND OF THE INVENTION Conventionally, a pitch (fundamental frequency) is extracted from a waveform signal generated by a performance operation of a natural musical instrument, and a sound source device composed of an electronic circuit is controlled to artificially influence a musical sound or the like. A variety of such methods have been developed. In this type of electronic musical instrument, it is common to extract the pitch of an input waveform signal and then instruct the sound source device to generate a sound having a pitch name corresponding to the pitch. In this case, in order to convert the extracted pitch data T into the corresponding pitch name data K, if the pitch data of the reference pitch name K 0 is T 0 , T 0 / T = 2 K / 12/2 k0 / There are 12 relationships, and based on this, the note name data K is obtained by the logarithmic expression of K = K 0 + 12log 2 (T 0 / T). However, since this logarithmic calculation takes a long processing time, there is a problem with an electronic musical instrument that has to generate and emit a musical tone of a pitch corresponding to the waveform as soon as the waveform is input. . Therefore, the pitch data for a plurality of typical note name data is stored, the one closest to the extracted pitch data is searched from this pitch data, and interpolation calculation is performed if necessary, thereby It is considered to get a name. According to this, when attempting to cover a wide range of notes over multiple octaves or to improve accuracy, the memory capacity of the data table for searching note names becomes extremely large, and the time required for searching is long. There was a problem that it would become. [Object of the Invention] The present invention has been made in view of the above-mentioned circumstances, and an object thereof is to provide an input waveform signal control device capable of searching a pitch name with high accuracy over a wide range with a small memory capacity. To provide. SUMMARY OF THE INVENTION In order to achieve the above-mentioned object, the present invention divides a range of one octave into a plurality of ranges, and the difference pitch data dTm in which each of the divided ranges is represented by a pitch difference.
And order data m set in order of pitch magnitude with respect to the difference pitch data dTm, reference pitch data T 0 corresponding to the lowest pitch in the octave range,
After searching the octave OCT corresponding to the pitch extraction data and the range below the octave by the pitch name data K 0 corresponding to the reference pitch data T 0 , the fractional data t below the octave is obtained by dividing the range of one octave. To determine the note name data K to be obtained after searching which one of the plurality of note ranges it belongs to, It is possible to obtain the pitch value of the corresponding pitch name by the expression of. As a result, it is not necessary to store pitch data over a wide range of pitches for which note names are to be determined, the memory capacity can be reduced accordingly, and the width of the pitch data stored can be made smaller as much as the memory capacity can be reduced. It is possible to improve the accuracy of determining the note name. [Embodiment] In this embodiment, the pitch extraction circuits P1 to P6 serve as pitch extraction means, the pitch data table 40 serves as pitch data storage means, the CPU 100 which executes steps D1 to D7 serves as octave determination means, and steps D8 to D12. The CPU 100 that executes the steps corresponds to the pitch name determining means. 1. Overall Circuit Configuration FIG. 1 shows the overall circuit configuration of the embodiment.
The signals of the two input terminals 1 are signals from pickups provided on each of the six strings stretched on the electronic guitar body and converting vibrations of the strings into electric signals. The tone signal from the input terminal 1 is a pitch extraction circuit P1
... P6 (only the first string P1 is shown in the figure). Each of the amplifiers 2... Within the amplifier is amplified by a low-pass filter (LPF) 3. Is extracted and the maximum peak detection circuit (MAX)
4,..., A minimum peak detection circuit (MIN) 5 and a zero cross point detection circuit (Zero) 6. The low-pass filter 3... Is 4 of the vibration sound frequency f of the open string of each string.
The cutoff frequency is set to 4f times. this is,
This is based on the fact that the frequency of the output sound of each string is within two octaves. The maximum peak detecting circuit 4 detects the maximum peak point of the tone signal, and the flip-flops 14 connected at the subsequent stage at the rise of the detected pulse signal.
… The Q output becomes High level and this flip-flop
The AND output of the output of 14... And the inverted output of the inverter 30 of the zero-crossing point detection circuit 6.
… Via CPU 100 as interrupt command signals INT a1 to INT a6
Similarly, the minimum peak detection circuit 5 also detects the minimum peak point of the tone signal, and the flip-flop 15 connected to the subsequent stage at the rise of the detected pulse signal.
… The Q output becomes High level and this flip-flop
15 and the output of the output of ... and the output of the zero-crossing point detecting circuit 6 ... is given to the CPU100 as an interrupt command signal INT b1 to INT b6 through the AND gates 25 ..... That is, the maximum peak point is detected and the flip-flop 14
Is high level, when the waveform crosses from positive to negative, the interrupt command signals INT a1 to INT a6 are given to the CPU100, conversely the minimum peak point is detected and the flip-flop 15 becomes high level. When the waveform changes from negative to positive, the interrupt command signals INT b1 to INT b6
To enter. Then, immediately after receiving these interrupt command signals, the CPU 100 sets the corresponding flip-flops 14..., 15.
Then, clear signals CL a1 to CL a6 and CL b1 to CL b6 are generated and reset. Therefore, no matter how many times the zero-cross point is detected until the next maximum peak point or minimum peak point is detected, the corresponding flip-flops 14..., 15. Become. Then, in the CPU 100, the interruption command signal INT a1 to INT a6 or INT b1 to INT b6 is given by the vibration output of the string, and the pitch of the pitch according to the pitch data of at least one of the time intervals is given. To occur. It should be noted that at the start of sound generation, a tone having an open string pitch may be started and corrected to a correct frequency after pitch extraction. The operation at the start of sound generation will be described later. Then, the pitch data of the above time interval is obtained using the counter 7 and the work memory 101 as described later. That is, the work memory 101 stores various data such as the count value of the counter 7 at the time of the zero crossing point immediately after the maximum peak point or immediately after the minimum peak point. On the other hand, the pitch data table 40 is dTm and m in FIG.
As indicated by and, pitch data K “57.0” “57.5” “58.0” “58.5” ... and corresponding pitch data T “4525” “from the pitch of A 3 to the pitch of A 4 4271 '', 4149 ''
"4031" ... is stored as a difference value expression. In other words, the pitch data “57.0” of A 3 and its pitch data “452
“5” is used as reference data when pitch data is determined from pitch data as K 0 and T 0 . Then, in the pitch data table 40, the pitch data dTm “129” “125” “12” of the differential expression representing the difference of each pitch data T “4525” “4271” “4149” “4031” ....
2 ”…… and the corresponding order data m“ 0 ”“ 1 ”
“2”, “3”, and so on are stored. As a result, the pitch data K is increased or decreased by "0.5" every 50 cents beyond the octave range, and the belonging octave and pitch name can be known based on the value of the pitch data K. Based on each data of this pitch data table 40,
The pitch data K is obtained from the extracted pitch data T,
To obtain this, first, the extracted pitch data T is multiplied by 2 n (n =
..., 2, as -1,0,1,2 ....), and to enter the range T 0 through T 0/2 of the pitch data T of A 3 to A 4, the value of n in this case Octave of extracted pitch data based on
The OCT is determined, and then the difference pitch data dT is calculated from the fractional data less than the octave, which is the difference between the extracted pitch data multiplied by 2 n and the reference pitch data T 0 of A 3.
The pitch name is determined by sequentially subtracting m, and the corresponding order data m when it is no longer possible to draw. Then, a finer pitch data portion (for example, a cent unit) is obtained by proportional interpolation between the last remaining data t and the difference pitch data dTm drawn immediately before. After the start of sound generation, the frequency of the musical tone being generated is variably controlled according to the pitch data that is sequentially obtained. That is
The data designating the pitch obtained as described above is sent from the CPU 100 to the frequency ROM 8, and as a result, the frequency data indicating the corresponding frequency is read out and sent to the string circuit 9 to generate a tone signal. Sound is output from the sound system 10. Further, the tone signal from the low pass filter 3 ... Is given to the A / D comparator 11 ... And converted into digital data according to the waveform level. The output of the A / D converter 11 is a latch 12
…… is latched. The latch signal for the latches 12 is generated by the outputs of the flip-flops 14..., 15... Passing through the OR gates 13. Stores a signal indicating the level of the waveform at that time. The latch signals L 1 to L 6 from the OR gates 13...
Also given to the U100. The outputs of the latches 12 are supplied to the CPU 100, and the control of the start and stop of sound generation, and the sound emission level (volume) of the output sound is performed according to the data. Note that this latch 12
The peak value that is the peak value stored in
Sequentially written to 1. That is, in the CPU 100, when the absolute value of the data indicating the waveform level given by the A / D converter 11 becomes equal to or more than a predetermined constant value, the CPU 100 starts generating a tone and extracts a pitch (basic frequency). When this data falls below a certain value, a mute instruction is issued and sound emission is terminated. Details of the operation are as described later. In FIG. 1, the A / D converter 11 is provided independently for each of the pitch extraction circuits P1 to P6, but it is of course possible to use one A / D converter in a time-division manner. The frequency ROM 8 and the tone generator 9 form a tone generation system of at least six channels by time division processing. FIG. 2 shows a time chart of signal waveforms at various parts in the pitch extraction circuit P1, in which the output of the low-pass filter 3, the output of the maximum peak detection circuit 4, and the minimum peak detection circuit 5 are shown. , The output of the zero-cross point detection circuit 6, and the interrupt command signals INT a1 to INT a
a6, is an interrupt command signal INT b1 ~INT b6. Operation Next, the operation of this embodiment will be described. Figure 3 shows CPU1
FIG. 4 is a main flow of 00, FIGS. 4 and 5 are a flow of an interrupt routine, and FIG. 6 is a flow of a pitch calculation process. It should be noted that although FIGS. 3 to 6 only show the processing for one string, the processing for all strings is exactly the same, so assuming that the CPU 100 executes the processing for each string in a time division manner. Good. Main Processing In the main routine (FIG. 3), the CPU 100 first performs initial setting in step A1, then reads the value of the A / D converter 11 from the latch 12 in step A2, and unless a certain level is reached, a musical tone is generated. Off processing continues (step A3,
A4). Now, if there is a string playing operation and a tone signal of a certain level or higher as shown in FIG. 2 is input to the A / D converter 11 (step A3), the process proceeds to step A5 and the frequency control process, that is, the counter 7 is performed. Performs the tone emission processing that gives the data from the frequency ROM8 to the frequency ROM8, and continues this tone emission processing as long as the tone signal level is above a certain level (step A2,
A3, A5). The count data of the counter 7 is set in the interrupt processing described below. Interrupt processing at the zero-cross point Next, the musical sound waveform rises by the string operation,
When the waveform level reaches the first maximum peak point shown in MAX1, the maximum peak detection circuit 4 generates a signal as shown in FIG. 2, and the flip-flop 14 is set to the high level. From the zero-cross point detection circuit 6 shown in FIG.
A zero-cross point detection output is inverted in terms of zero1 (see drawing), the interrupt command signal INT a is supplied to the CPU 100 from the AND gate 24, CPU 100 starts the interrupt processing of FIG. 4. First, the CPU 100 reads the count value of the counter 7 in step B1, and determines whether or not the waveform is the first waveform (step B2). Now, the tone waveform has just risen,
Since it is the first wave, the routine proceeds to step B6, the flag "1" is set, and the count value of the counter 7 read at step B1 is set in the work memory 101. This flag "1"
Is a flag indicating that the zero-cross point next to the maximum peak point has already been detected. If this flag is cleared, it indicates that the minimum peak point has been detected. The function of this flag is as described later. Next, when the minimum peak point indicated by MIN1 in FIG. 2 is reached, the peak detection signal is output from the minimum peak detection circuit 5, and the flip-flop 15 is set. Then, at the next zero crossing point (Zero2), the output of the zero crossing point detection circuit 6 is inverted, and as a result, the AND gate 25 outputs CP.
U100 interrupt command signal INT b is given to, CPU 100 starts the interrupt processing of FIG. 5. First, the CPU 100 resets the flip-flop 15 in step C1, reads the count value of the counter 7 and determines whether the waveform is the first wave (step C2), but the zero cross point next to the minimum peak point is now In case of, it is the first wave, so step C6
Go to and clear the flag to "0", and work memory
In 101, the count value of the counter 7 read in step C1 is set. Whether or not it is the first wave in the step B2 of the step C2 is determined by setting the first wave flags A and B when the waveform level data from the A / D converter 11 becomes a certain level or more, for example.
Before step B6 after step B2 when the interrupt command signal INT a zero-cross point detection immediately after the maximum peak point is given, clears the first wave-th flag A, the zero-cross point detection immediately after the minimum peak point before step C6 after step C2 when the interrupt command signal INT b is given, it clears the first wave-th flag B, whether the step B2, C2 in first wave-th flag a, B is standing It is achieved by judging. Then, upon reaching the zero-cross point following the maximum peak point shown in MAX2 of FIG. 2 (ZOer3), the interrupt command signal INT a zero-cross point detection immediately after the maximum peak point is given, CPU 100 counts of counter 7 in step B1 The value is read, it is determined in step B2 that the waveform is not the first waveform, and it is determined in step B3 whether the flag is "0".
The flag is set to "0" at the next zero cross point (Zero2) of the immediately preceding minimum peak point MIN1, so the CPU 100 proceeds to step B6 and immediately after the maximum peak point MAX1 one cycle before the zero cross point (Zero1). Read the time count data set in the work memory 101 with and subtract it from the current time count data read in step B1 above
Pitch data T for one cycle from 0 to Zero3 is extracted. Then, the pitch data K is calculated from the extracted pitch data T based on the data content of the pitch data table 40 (step B5). The details of this calculation will be described later.
As a result, in the above step A5, the pitch data K is given to the frequency ROM8 so that the musical tone of the frequency having the time length from the zero cross point (Zero1) to the zero cross point (Zero3) as one cycle is emitted. Will be in control. Subsequent to the above processing, the CPU 100 sets the flag "1" and sets the current time count data value in the work memory 101 (step B6). Thus, in steps C6 and B3, the zero cross point immediately following the maximum peak point is determined, the time between these zero cross points is measured, and in steps B4 and B5, the period calculation and the pitch calculation are performed. Similarly, the zero-cross point (Zero
In response to the input of the interrupt signal INT b from the AND gate 25 generated by the detection of 4), the CPU 100 performs the processing of the flow shown in FIG. 5, this time, the previous zero-cross point (Zero
The time interval from 2) to the current zero-cross point (Zero4) is the extracted pitch data T. Therefore, in this embodiment, the time interval between zero cross points (ZOer1 → Zero3) that occurs immediately after the maximum value is detected and the time interval between zero cross points that occurs immediately after the minimum value is detected (Zero).
2 → Zero4) is obtained, the frequency change process can be performed twice in one cycle, and it can respond to the frequency change of the input signal. Pitch Settlement Processing The pitch calculation processing in steps B5 and C5 described above is performed based on the flowchart shown in FIG. The CPU 100 first sets the octave value OCT to 0 (step D
1) It is determined whether the extracted pitch data T is smaller than the reference pitch data T 0 "4525" of FIG. 7 in the pitch data table 40 (step D2). If the extracted pitch data T is, for example, "9800", this data T "980
Since "0" is larger than the reference pitch data T 0 "4525", the CPU
100 advances to step D3, and extracted pitch data T "9800"
Is set to 1/2 to be "4900", the octave value OCT is set to -1 to be "-1" (step D4), the process returns to step D2 again, and the half extracted pitch data T "4900" is used as a reference. Pitch data T 0 Judge whether it is smaller than "4525". This time, since it is larger than the reference pitch data T 0 , the processing of steps D3 and D4 is repeated again, and the extracted pitch data T is 1 /
Set it to 2 and set it to "2450".
Similarly, it is determined whether the extracted pitch data T "2450" is smaller than the reference pitch data T 0 "4525" (step D2). Since it is smaller than the reference pitch data T 0 this time, the process proceeds to step D5, and the extracted pitch data T "2450" is half of that.
It is determined whether the reference pitch data T 0 is larger than T 0 “2262.5”. Since the extracted pitch data T "2450" is larger,
The CPU 100 proceeds to step D8, and the reference pitch data T 0
The extracted pitch data T "2450" is subtracted from "4525" to obtain fractional data t "2075" less than the octave, and the order data m is set to "0" (step D9). It is determined whether or not the fractional data t "2075" is smaller than the difference pitch data dTm "129" corresponding to the order data m of "0" (step).
D10). Since the difference pitch data dTm is smaller, the CPU 100
Proceeding to step D11, subtracting the leading difference pitch data dTm “129” from the fractional data t “2075” to obtain “1946”,
The sequence data m is incremented by 1 to be "1" (step D1
2). Then, the CPU 100 repeats the processing of steps D11 and D12 until the fraction data t becomes smaller than the difference pitch data dTm, and the difference pitch data dTm is calculated from the fraction data t.
In order. Then, when the difference pitch data dTm is deducted to "73" and the order data m becomes "21", the fraction data t remains "17", and the next difference pitch data dTm (m = 21).
Since it is smaller than “70”, the CPU 100 proceeds to step D13, K = K 0 + 12 × OCT + (m + t / dTm) /2=57.0+12×
Perform the operation of (-2) + (21 + 17/70) / 2 = 43.62,
Obtain new pitch data K. This pitch is a little higher than G 1 # . Thus, A 3 ~ stored in the pitch data table 40
With only the difference data dTm of the pitch for one octave of A 4 ,
Pitch data for other octaves can be obtained. Further, if the extracted pitch data T is smaller than the reference pitch data T 0 /2`2262.5 "of 1/2, CPU 100 is, 2 n times until extraction pitch data T in step D5~D7 is greater than" 2262.5 "( n = 1, 2, 3 ...), and thereafter, the above-mentioned steps D8 to D13 are performed to obtain the pitch data K. In summary, the CPU 100 multiplies the extracted pitch data T by 2 n times (n = ..., -2, -1, 0, step D1 to D7).
1, 2 ...) so that the pitch data stored in the pitch data table 40 falls within the range of the pitch data, the octave value OCT which is the value of n is obtained, and in steps D8 to D12, The note name is obtained from the correspondence between the fractional data less than the octave of the extracted pitch data T and the accumulated data of the difference pitch data dTm. In the above example, the difference pitch data in the right half of FIG.
Only dTm, order data m, reference pitch data K 0 “57.0” and pitch data T 0 “4525” are stored in the pitch data table 40. However, the pitch data T stored in the pitch data table 40 is It is also possible to use only the pitch data and pitch data T of the left half of FIG. When only the pitch data K and the pitch data T are used, steps D8 and D9 are omitted, and 2n times (n = ...
, -2, -1, 0, 1, 2, ...) It is determined whether the extracted pitch data T is smaller than the stored pitch data of each pitch in the pitch data table 40, and in step D11 the pitch data table The read address of 40 is incremented by 1, the step D12 remains unchanged, and the difference from the pitch data read from the pitch data table 40 immediately before the extracted pitch data T is t before the pitch calculation processing of step D13. The difference between the pitch data in the pitch data table 40 and the pitch data at the next address is set to dTm. The data stored in the pitch data table 40 includes the above-mentioned difference pitch data dTm, order data m, and reference pitch data K 0.
When only “57.0” and pitch data T 0 “4525” are used, the number of digits of the difference pitch data dTm and the order data m is smaller than the number of digits of the pitch data K and the pitch data T, so the storage capacity is only that much. Although there is an effect that it can be small, even if the pitch data K and the pitch data T are also stored, the storage capacity will be smaller as compared with the conventional case where the pitch data is stored for every octave. There is no. Further, in the above-mentioned embodiment, the pitch is displayed as the serial number, but the octave, the scale name (chord),
The data may be expressed in semitones or less, and may be expressed in any other form. Further, in the above embodiment, the pitch data is stored in units of 50 cents (half a semitone), but may be stored in units of 100 cents (every semitone), or may be further segmented. It is possible to have such data for more than one octave. In addition, the method of pitch extraction is not limited to the above embodiment, and the present invention can be applied to various electronic musical instruments other than the electronic guitar. As described above in detail, the present invention compares the extracted pitch data output by the pitch extraction means with the pitch data stored in the storage means, and determines the input waveform signal based on the comparison result. Since the related note name is decided, it is not necessary to store the pitch data over a wide range of note for which the note name is decided, and the memory capacity can be reduced accordingly. The width of the data can be made narrower, and if the note name data corresponding to the note name is supplied to the sound source of the electronic musical instrument, it is possible to quickly produce a musical tone with a pitch that is faithful to the decided note name data. Play.

【図面の簡単な説明】 第1図は、本発明の一実施例の全体回路構成を示す図、
第2図は、第1図中の各部の動作波形を示す図、第3図
はCPUのメインフローチャートを示す図、第4図は最大
ピーク点直後のゼロクロス点検出時の割り込み処理フロ
ーチャートを示す図、第5図は最小ピーク点直後のゼロ
クロス点検出時の割り込み処理フローチャートを示す
図、第6図は音高計算処理のサブルーチンのフローチャ
ートの図、第7図はピッチデータテーブル40の記憶内容
を示す図である。 1……入力端子、4……最大ピーク検出回路、5……最
小ピーク検出回路、6……ゼロクロス点検出回路、7…
…カウンタ、8……周波数ROM、9……音源回路、10…
…サウンドシステム、12……ラッチ、14、15……フリッ
プフロップ、40……ピッチデータテーブル、100……CP
U、101……ワークメモリ、P1〜P6……ピッチ抽出回路。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a diagram showing the overall circuit configuration of an embodiment of the present invention,
FIG. 2 is a diagram showing operation waveforms of respective parts in FIG. 1, FIG. 3 is a diagram showing a main flowchart of the CPU, and FIG. 4 is a diagram showing an interrupt processing flowchart at the time of detecting a zero cross point immediately after the maximum peak point. 5, FIG. 5 is a flowchart showing an interrupt process when a zero-cross point is detected immediately after the minimum peak point, FIG. 6 is a flowchart of a pitch calculation process subroutine, and FIG. 7 shows the contents stored in the pitch data table 40. It is a figure. 1 ... input terminal, 4 ... maximum peak detection circuit, 5 ... minimum peak detection circuit, 6 ... zero cross point detection circuit, 7 ...
… Counter, 8… Frequency ROM, 9… Sound source circuit, 10…
Sound system, 12 Latch, 14, 15 Flip-flop, 40 Pitch data table, 100 CP
U, 101 ... Work memory, P1 to P6 ... Pitch extraction circuit.

Claims (1)

(57)【特許請求の範囲】 1.入力波形信号のピッチを抽出してピッチ抽出データ
Tを出力するピッチ抽出手段と、 少なくとも1オクターブ分の音域を複数の音域に分割
し、これらの分割された各音域をピッチ差で順番に表わ
した差分ピッチデータdTmと、前記1オクターブ分の音
域で最も低い音名に対応した基準ピッチデータT0と、該
基準ピッチデータT0に対応する音名データK0と、を記憶
する記憶手段と、 前記ピッチ抽出データTと前記基準ピッチデータT0との
大小を比較し、該比較結果に応じて前記ピッチ抽出デー
タの値を2n倍(n=……−2、−1、0、1、2……)
した場合に、前記基準ピッチデータT0から該基準ピッチ
データT0の2分の1の範囲に入るようなnを検索し、こ
の検索されたnの値に基づいて、前記ピッチ抽出データ
Tと前記基準ピッチデータT0とのオクターブ差OCT、及
びオクターブ未満の端数データtを決定するオクターブ
検索手段と、 前記記憶手段から前記ピッチ差データdTmを順次読み出
して、前記オクターブ未満の端数データtが前記記憶手
段に記憶された1オクターブ分の音域を分割して順番に
並べられた複数の音域のいずれに属するかを示す順番デ
ータmを検索するオクターブ内音高検索手段と、 前記音名データK0、オクターブ差OCT、端数データt、
ピッチ差データdTm、順番データm、に基づいて音名デ
ータKを決定する音名データ算出手段と、から成り、 該音名データ算出手段は、の数式を用いて、音名データKを決定することを特徴と
する入力波形信号制御装置。
(57) [Claims] Pitch extraction means for extracting the pitch of the input waveform signal and outputting pitch extraction data T, and a pitch range of at least one octave are divided into a plurality of pitch ranges, and each of these divided pitch ranges is sequentially represented by a pitch difference. Storage means for storing the differential pitch data dTm, reference pitch data T 0 corresponding to the lowest pitch name in the one octave range, and pitch name data K 0 corresponding to the reference pitch data T 0 ; The pitch extraction data T and the reference pitch data T 0 are compared in size, and the value of the pitch extraction data is multiplied by 2 n (n = ... -2, -1, 0, 1, 2) according to the comparison result. ......)
When searches the n as fall from the reference pitch data T 0 to 1 in the range of 2 minutes of the reference pitch data T 0, based on the value of the retrieved n, and the pitch extraction data T An octave difference OCT from the reference pitch data T 0 and an octave search means for determining a fractional data t less than an octave, and the pitch difference data dTm are sequentially read from the storage means, and the fractional data t less than the octave is Pitch-in-octave pitch searching means for dividing the octave pitch range stored in the storage means and searching for order data m indicating which of a plurality of pitch ranges arranged in order, the pitch name data K0, Octave difference OCT, fraction data t,
Pitch name data calculation means for determining pitch name data K based on pitch difference data dTm and order data m. An input waveform signal control device, characterized in that the pitch name data K is determined by using the following equation.
JP62076452A 1987-03-31 1987-03-31 Input waveform signal controller Expired - Lifetime JP2679042B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62076452A JP2679042B2 (en) 1987-03-31 1987-03-31 Input waveform signal controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62076452A JP2679042B2 (en) 1987-03-31 1987-03-31 Input waveform signal controller

Publications (2)

Publication Number Publication Date
JPS63243996A JPS63243996A (en) 1988-10-11
JP2679042B2 true JP2679042B2 (en) 1997-11-19

Family

ID=13605540

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62076452A Expired - Lifetime JP2679042B2 (en) 1987-03-31 1987-03-31 Input waveform signal controller

Country Status (1)

Country Link
JP (1) JP2679042B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3071476B2 (en) * 1991-01-31 2000-07-31 日本電気アイシーマイコンシステム株式会社 Voice pitch extraction device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5512963A (en) * 1978-07-15 1980-01-29 Asahi Onkyo Musical player
JPS5681895A (en) * 1979-12-10 1981-07-04 Casio Computer Co Ltd System for generating scale sound from voice input
JPS56146198A (en) * 1980-03-28 1981-11-13 Kawai Musical Instr Mfg Co Digital frequency follower for electronic music instrument
JPS58123591A (en) * 1982-01-19 1983-07-22 三洋電機株式会社 Electronic musical instrument
JPS58199393A (en) * 1982-05-17 1983-11-19 松下電器産業株式会社 Frequency controller
JPS60254093A (en) * 1984-05-30 1985-12-14 株式会社東芝 Pitch name calculation circuit

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5512963A (en) * 1978-07-15 1980-01-29 Asahi Onkyo Musical player
JPS5681895A (en) * 1979-12-10 1981-07-04 Casio Computer Co Ltd System for generating scale sound from voice input
JPS56146198A (en) * 1980-03-28 1981-11-13 Kawai Musical Instr Mfg Co Digital frequency follower for electronic music instrument
JPS58123591A (en) * 1982-01-19 1983-07-22 三洋電機株式会社 Electronic musical instrument
JPS58199393A (en) * 1982-05-17 1983-11-19 松下電器産業株式会社 Frequency controller
JPS60254093A (en) * 1984-05-30 1985-12-14 株式会社東芝 Pitch name calculation circuit

Also Published As

Publication number Publication date
JPS63243996A (en) 1988-10-11

Similar Documents

Publication Publication Date Title
JP2679042B2 (en) Input waveform signal controller
JPH0371718B2 (en)
JP2605668B2 (en) Electronic string instrument
JP2532424B2 (en) Waveform signal input controller
EP0264955B1 (en) Apparatus for determining the pitch of a substantially periodic input signal
JP5585320B2 (en) Singing voice evaluation device
JP2555551B2 (en) Input waveform signal controller
JPH083711B2 (en) Input waveform signal controller
JPH0431599B2 (en)
JPH0648556Y2 (en) Input control device for electronic musical instruments
JP2792022B2 (en) Electronic musical instrument input control device
JP2581068B2 (en) Waveform signal controller
JP2508035B2 (en) Input waveform signal controller
JPS63136088A (en) Input controller for electronic musical instrument
JP3092197B2 (en) Pitch extraction device
JP2532233Y2 (en) Electronic string instrument
JPH0782320B2 (en) Music control device
JP2508692B2 (en) Input waveform signal controller
JPH07104666B2 (en) Pitch extractor
JP2555553B2 (en) Input waveform signal controller
JP3322131B2 (en) Waveform processing equipment and sound source
JPH0715031Y2 (en) Electronic stringed instrument
JPH0431598B2 (en)
JPS63173096A (en) Input controller for electronic musical instrument
JP6175034B2 (en) Singing evaluation device