JPH0519792A - ピツチ抽出装置 - Google Patents
ピツチ抽出装置Info
- Publication number
- JPH0519792A JPH0519792A JP12029191A JP12029191A JPH0519792A JP H0519792 A JPH0519792 A JP H0519792A JP 12029191 A JP12029191 A JP 12029191A JP 12029191 A JP12029191 A JP 12029191A JP H0519792 A JPH0519792 A JP H0519792A
- Authority
- JP
- Japan
- Prior art keywords
- interval
- zero
- pitch
- polarity
- 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.)
- Pending
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
(57)【要約】
【目的】 本発明は、人間の声や楽音などの音声信号か
らピッチを抽出する場合に、倍音成分によるゼロクロス
の影響をなくし、1ピッチ周期に相当する入力波形のゼ
ロクロス間隔の正しい計測を可能とすることを目的とす
る。 【構成】 CPUは、まず、例えば極性が正である波形
部分aの両端のゼロクロス点の間隔を計測し、それ以
後、同極性の波形部分b、c、dのそれぞれの部分の両
端のゼロクロス点の各間隔を順次計測する。そして、間
隔が波形部分aの間隔に対してほぼ等しく、かつ時間的
に一番近い距離にある波形部分dを見出したら、波形部
分aとdの各開始点(ゼロクロス点)の間の間隔を入力
波形のピッチ周期として抽出する。その後は、上記一連
の処理を繰り返す。
らピッチを抽出する場合に、倍音成分によるゼロクロス
の影響をなくし、1ピッチ周期に相当する入力波形のゼ
ロクロス間隔の正しい計測を可能とすることを目的とす
る。 【構成】 CPUは、まず、例えば極性が正である波形
部分aの両端のゼロクロス点の間隔を計測し、それ以
後、同極性の波形部分b、c、dのそれぞれの部分の両
端のゼロクロス点の各間隔を順次計測する。そして、間
隔が波形部分aの間隔に対してほぼ等しく、かつ時間的
に一番近い距離にある波形部分dを見出したら、波形部
分aとdの各開始点(ゼロクロス点)の間の間隔を入力
波形のピッチ周期として抽出する。その後は、上記一連
の処理を繰り返す。
Description
【0001】
【産業上の利用分野】本発明は、入力された音声信号か
ら、その波形のピッチ(音高)を抽出するピッチ抽出装
置に関する。
ら、その波形のピッチ(音高)を抽出するピッチ抽出装
置に関する。
【0002】
【従来の技術】従来から、例えば人が歌う歌声やマイク
ロフォンから採取した楽音などの繰り返し波形からなる
音声信号から、そのピッチ周波数又はピッチ周期(以
下、単に「ピッチ」と呼ぶ)を抽出したいという要請が
強い。ピッチを抽出できれば、例えば、そのピッチの音
高に対応する楽音を電子楽器等から発音させることがで
きるようになるなど、抽出されたピッチ情報を様々な処
理に用いることが可能となる。
ロフォンから採取した楽音などの繰り返し波形からなる
音声信号から、そのピッチ周波数又はピッチ周期(以
下、単に「ピッチ」と呼ぶ)を抽出したいという要請が
強い。ピッチを抽出できれば、例えば、そのピッチの音
高に対応する楽音を電子楽器等から発音させることがで
きるようになるなど、抽出されたピッチ情報を様々な処
理に用いることが可能となる。
【0003】従来から、音声信号からピッチを抽出する
技術として種々の手法が提案されているが、その中でも
時間域の音声信号から直接ピッチを抽出する方式は、演
算量が少なく、リアルタイム処理が容易に実現可能であ
る。
技術として種々の手法が提案されているが、その中でも
時間域の音声信号から直接ピッチを抽出する方式は、演
算量が少なく、リアルタイム処理が容易に実現可能であ
る。
【0004】時間域のピッチ抽出方式の第1の従来例と
しては、例えば、入力波形の隣接するゼロクロス点(振
幅が0となる時間位置)の間の時間を、その波形のピッ
チ周期として求める方式がある。
しては、例えば、入力波形の隣接するゼロクロス点(振
幅が0となる時間位置)の間の時間を、その波形のピッ
チ周期として求める方式がある。
【0005】また、第2の従来例として、入力波形をロ
ーパスフルタに通して倍音成分を除去してから、ゼロク
ロス間隔を抽出するようにした方式もある。更に、第3
の従来例として、入力波形の自己相関値を演算して、そ
の値がピークとなる自己相関のずれ量からピッチ周期を
抽出する方式も提案されている。
ーパスフルタに通して倍音成分を除去してから、ゼロク
ロス間隔を抽出するようにした方式もある。更に、第3
の従来例として、入力波形の自己相関値を演算して、そ
の値がピークとなる自己相関のずれ量からピッチ周期を
抽出する方式も提案されている。
【0006】
【発明が解決しようとする課題】しかし、人の声などは
倍音をかなり含み、入力波形の1ピッチ周期中にゼロク
ロス点が何回か出現するため、第1の従来例のように単
純にゼロクロス間隔を抽出する方式では、正しい周期が
求められずピッチ抽出誤りが大きいという問題点を有し
ている。
倍音をかなり含み、入力波形の1ピッチ周期中にゼロク
ロス点が何回か出現するため、第1の従来例のように単
純にゼロクロス間隔を抽出する方式では、正しい周期が
求められずピッチ抽出誤りが大きいという問題点を有し
ている。
【0007】また、第2の従来例では、ローパスフィル
タのカットオフ周波数を下げると、ピッチを抽出できる
音域が低い音域に限られてしまい、逆に、カットオフ周
波数を上げると倍音成分が残ってピッチ抽出誤りが増加
してしまうという、相反する問題点を有している。
タのカットオフ周波数を下げると、ピッチを抽出できる
音域が低い音域に限られてしまい、逆に、カットオフ周
波数を上げると倍音成分が残ってピッチ抽出誤りが増加
してしまうという、相反する問題点を有している。
【0008】更に、第3の従来例は、時間域の処理であ
るにもかかわらず、非常に多くの演算量を必要とし、リ
アルタイムで入力波形のピッチを抽出する目的には適さ
ないという問題点を有している。
るにもかかわらず、非常に多くの演算量を必要とし、リ
アルタイムで入力波形のピッチを抽出する目的には適さ
ないという問題点を有している。
【0009】本発明の課題は、上述のような倍音成分に
よるゼロクロスの影響をなくし、1ピッチ周期に相当す
る入力波形のゼロクロス間隔の正しい計測を可能とする
ことにある。
よるゼロクロスの影響をなくし、1ピッチ周期に相当す
る入力波形のゼロクロス間隔の正しい計測を可能とする
ことにある。
【0010】
【課題を解決するための手段】本発明は、まず、入力波
形が負又は正の第1の極性から他方の第2の極性へゼロ
クロスするゼロクロス点からつぎに前記第2の極性から
前記第1の極性へゼロクロスするゼロクロス点までの間
隔を第1の間隔として計測する第1の間隔計測手段を有
する。
形が負又は正の第1の極性から他方の第2の極性へゼロ
クロスするゼロクロス点からつぎに前記第2の極性から
前記第1の極性へゼロクロスするゼロクロス点までの間
隔を第1の間隔として計測する第1の間隔計測手段を有
する。
【0011】つぎに、第1の間隔計測手段による計測の
終了後、入力波形が第1の極性から第2の極性へゼロク
ロスするゼロクロス点からつぎに第2の極性から第1の
極性へゼロクロスするゼロクロス点までのそれぞれの区
間の間隔を第2の間隔として順次計測する第2の間隔計
測手段を有する。
終了後、入力波形が第1の極性から第2の極性へゼロク
ロスするゼロクロス点からつぎに第2の極性から第1の
極性へゼロクロスするゼロクロス点までのそれぞれの区
間の間隔を第2の間隔として順次計測する第2の間隔計
測手段を有する。
【0012】さらに、第1の間隔計測手段による計測が
開始されたゼロクロス点からの間隔を逐次計測する第3
の間隔計測手段を有する。上述の第1、第2、第3の各
間隔計測手段は、例えばカウンタによって構成される。
開始されたゼロクロス点からの間隔を逐次計測する第3
の間隔計測手段を有する。上述の第1、第2、第3の各
間隔計測手段は、例えばカウンタによって構成される。
【0013】また、第2の計測手段が各第2の間隔の計
測を開始した各時点において第3の間隔計測手段が計測
している間隔を周期情報として順次更新しながら記憶す
る間隔記憶手段を有する。
測を開始した各時点において第3の間隔計測手段が計測
している間隔を周期情報として順次更新しながら記憶す
る間隔記憶手段を有する。
【0014】加えて、第1の間隔計測手段が計測した第
1の間隔と第2の間隔計測手段が順次計測した各第2の
間隔が、所定の許容誤差範囲内で一致したか否かを順次
判定する判定手段を有する。
1の間隔と第2の間隔計測手段が順次計測した各第2の
間隔が、所定の許容誤差範囲内で一致したか否かを順次
判定する判定手段を有する。
【0015】そして、判定手段が一致を検出した時点で
時間記憶手段に記憶されている周期情報を入力波形のピ
ッチ情報として出力し、その後、第1の間隔計測手段に
よる計測処理から順に各処理を繰り返させることにより
入力波形からピッチ情報を順次抽出する繰り返し制御手
段を有する。
時間記憶手段に記憶されている周期情報を入力波形のピ
ッチ情報として出力し、その後、第1の間隔計測手段に
よる計測処理から順に各処理を繰り返させることにより
入力波形からピッチ情報を順次抽出する繰り返し制御手
段を有する。
【0016】上述の発明の構成において、判定手段が一
致を検出しなかった時点において、第3の間隔計測手段
が計測している間隔が予め設定された最低音のピッチ周
期に対応する間隔を越えたか否かを判定し、越えたと判
定した場合に、第1の間隔計測手段による計測処理から
各処理をやり直させる制限手段を有するように構成でき
る。
致を検出しなかった時点において、第3の間隔計測手段
が計測している間隔が予め設定された最低音のピッチ周
期に対応する間隔を越えたか否かを判定し、越えたと判
定した場合に、第1の間隔計測手段による計測処理から
各処理をやり直させる制限手段を有するように構成でき
る。
【0017】
【作用】音声信号は、ピッチ周期毎に1つ以上の波形の
山が繰り返す波形として構成され、各ピッチ周期内の各
波形の山は連続するピッチ周期間で相似形を呈する。そ
して、隣接するピッチ周期のほぼ相似の波形の山のそれ
ぞれの両端のゼロクロス点間の間隔は、互いにほぼ等し
いという特徴を有する。
山が繰り返す波形として構成され、各ピッチ周期内の各
波形の山は連続するピッチ周期間で相似形を呈する。そ
して、隣接するピッチ周期のほぼ相似の波形の山のそれ
ぞれの両端のゼロクロス点間の間隔は、互いにほぼ等し
いという特徴を有する。
【0018】本発明は、この点に着目して、まず、第1
の間隔計測手段が1つの波形の山の両端のゼロクロス点
の間隔を計測し、第2の間隔計測手段がそれ以後順次現
れる山の両端のゼロクロス点の間隔を順次計測する。
の間隔計測手段が1つの波形の山の両端のゼロクロス点
の間隔を計測し、第2の間隔計測手段がそれ以後順次現
れる山の両端のゼロクロス点の間隔を順次計測する。
【0019】そして、判定手段が、上述の第1の間隔と
それぞれの第2の間隔が、所定の許容誤差範囲内で一致
したか否かを順次判定し、一致した時点における第1の
間隔に対応する山から当該第2の間隔に対応する山の先
頭までの間隔をピッチ情報として抽出する。このピッチ
情報は、間隔記憶手段に記憶された第3の計測手段の各
計測間隔である周期情報として得ることができる。
それぞれの第2の間隔が、所定の許容誤差範囲内で一致
したか否かを順次判定し、一致した時点における第1の
間隔に対応する山から当該第2の間隔に対応する山の先
頭までの間隔をピッチ情報として抽出する。このピッチ
情報は、間隔記憶手段に記憶された第3の計測手段の各
計測間隔である周期情報として得ることができる。
【0020】このようにして、倍音成分による影響に関
わらず、入力波形のピッチを安定して抽出することがで
きる。
わらず、入力波形のピッチを安定して抽出することがで
きる。
【0021】
【実施例】以下、図面を参照しながら本発明の実施例に
つき説明する。 <実施例の構成>図1は、本発明の実施例の全体構成図
である。
つき説明する。 <実施例の構成>図1は、本発明の実施例の全体構成図
である。
【0022】同図において、例えば特には図示しないマ
イクロフォンによって採取された1人の人が歌う歌声や
アナログ楽器の単音の演奏音などのアナログの音声信号
は、直流成分を除くためのキャパシタ1を介してA/D
変換器2に入力され、デジタル信号に変換される。
イクロフォンによって採取された1人の人が歌う歌声や
アナログ楽器の単音の演奏音などのアナログの音声信号
は、直流成分を除くためのキャパシタ1を介してA/D
変換器2に入力され、デジタル信号に変換される。
【0023】CPU(中央演算制御装置)3は、RAM
(Random Access Memory)4をワークメモリとして、RO
M(Read Only Memory)9に記憶されたプログラムを実行
することにより、入力音声信号の音高(ピッチ)に関す
る情報を抽出する。
(Random Access Memory)4をワークメモリとして、RO
M(Read Only Memory)9に記憶されたプログラムを実行
することにより、入力音声信号の音高(ピッチ)に関す
る情報を抽出する。
【0024】つぎに、音源5はCPU3の制御により、
上記音高に関する情報に基づくノートナンバーと、演奏
者が音色選択スイッチ(図示はしていない)などで選択
した音色(例えば、上記歌声とはまったく異なるトラン
ペットなどの管楽器の音色)を有する楽音信号を生成す
る。そのあと、生成された楽音信号はD/A変換器6で
アナログの楽音信号に変換され、増幅器7を介してスピ
ーカ8から楽音として放音される。
上記音高に関する情報に基づくノートナンバーと、演奏
者が音色選択スイッチ(図示はしていない)などで選択
した音色(例えば、上記歌声とはまったく異なるトラン
ペットなどの管楽器の音色)を有する楽音信号を生成す
る。そのあと、生成された楽音信号はD/A変換器6で
アナログの楽音信号に変換され、増幅器7を介してスピ
ーカ8から楽音として放音される。
【0025】なお、ROM9には、上述のプログラムの
他に、後述するように、ピッチ抽出時に用いられる種々
のデータや、得られた入力信号の周期とノートナンバー
との対応を示すテーブル等を有する。
他に、後述するように、ピッチ抽出時に用いられる種々
のデータや、得られた入力信号の周期とノートナンバー
との対応を示すテーブル等を有する。
【0026】上述の回路構成により、以下に説明する基
本動作原理に従って、入力される音声信号からピッチデ
ータ(以後、略称する場合は、単にピッチと呼ぶ)の抽
出が行われる。<実施例の基本動作原理>通常、例えば
人の歌声などのように、ピッチ感が明瞭でかつ単音で演
奏される音声は、図2に示すように、ピッチ周期(例え
ば)毎に繰り返される、ほぼ相似の波形要素(例えば
同図のaとd、bとe、cとf)で構成されている。
本動作原理に従って、入力される音声信号からピッチデ
ータ(以後、略称する場合は、単にピッチと呼ぶ)の抽
出が行われる。<実施例の基本動作原理>通常、例えば
人の歌声などのように、ピッチ感が明瞭でかつ単音で演
奏される音声は、図2に示すように、ピッチ周期(例え
ば)毎に繰り返される、ほぼ相似の波形要素(例えば
同図のaとd、bとe、cとf)で構成されている。
【0027】このような音声は、その音声に含まれる倍
音成分のために、その波形が振幅0の基準レベルを横切
るゼロクロス点を1ピッチ周期内に数多く有している。
そのため、このような周期性を有する波形からそのピッ
チ周期を求めるには、いずれのゼロクロス点の間をピッ
チ周期とするかを決定しなければならないが、上述のよ
うな周期性を有する波形にはつぎのような特徴がある。
音成分のために、その波形が振幅0の基準レベルを横切
るゼロクロス点を1ピッチ周期内に数多く有している。
そのため、このような周期性を有する波形からそのピッ
チ周期を求めるには、いずれのゼロクロス点の間をピッ
チ周期とするかを決定しなければならないが、上述のよ
うな周期性を有する波形にはつぎのような特徴がある。
【0028】すなわち、隣接するピッチ周期のほぼ同形
の波形(例えば上記aとd)のそれぞれのゼロクロス点
(例えばZ1〜Z2とZ7〜Z8)で定まる区間(例えばと
)の時間はほぼ等しい。
の波形(例えば上記aとd)のそれぞれのゼロクロス点
(例えばZ1〜Z2とZ7〜Z8)で定まる区間(例えばと
)の時間はほぼ等しい。
【0029】本発明は、この点に着目して、隣接するゼ
ロクロス点間の時間のほぼ等しい2つの区間(例えば
と)を見出すことにより、その2つの区間のそれぞれ
の開始点(例えばZ1とZ7)の間の時間間隔を抽出して、
ピッチ周期を抽出する。
ロクロス点間の時間のほぼ等しい2つの区間(例えば
と)を見出すことにより、その2つの区間のそれぞれ
の開始点(例えばZ1とZ7)の間の時間間隔を抽出して、
ピッチ周期を抽出する。
【0030】上述のような基本動作原理に従って動作す
る本実施例の動作について、以下に説明する。 <実施例の概要>図2において、例えば、波形aのゼロ
クロス点Z1〜Z2の区間の時間がカウントされ、そのカ
ウント値COUNT 1 が第1のカウンタに保持される。つぎ
に、波形aと同じ極性を有する波形b、c、d・・・の
それぞれの区間、、の時間が順次カウントされ、
そのカウント値COUNT 2 は、COUNT 1 とほぼ等しい値が
得られるまで順次更新されながら、第2のカウンタに保
持される。
る本実施例の動作について、以下に説明する。 <実施例の概要>図2において、例えば、波形aのゼロ
クロス点Z1〜Z2の区間の時間がカウントされ、そのカ
ウント値COUNT 1 が第1のカウンタに保持される。つぎ
に、波形aと同じ極性を有する波形b、c、d・・・の
それぞれの区間、、の時間が順次カウントされ、
そのカウント値COUNT 2 は、COUNT 1 とほぼ等しい値が
得られるまで順次更新されながら、第2のカウンタに保
持される。
【0031】この場合に、ゼロクロス点Z1から、波形
b、c、dのそれぞれのゼロクロス点Z3、Z5、Z7までの
時間、、およびが第3のカウンタによってカウン
トされる。そのカウント値COUNT 3は、この入力音声信
号のピッチ周期となる可能性を有するので、ピッチ周期
となるカウント値が得られるまで、順次更新されながら
RAM4内の変数PITCOUNTER に保存される。
b、c、dのそれぞれのゼロクロス点Z3、Z5、Z7までの
時間、、およびが第3のカウンタによってカウン
トされる。そのカウント値COUNT 3は、この入力音声信
号のピッチ周期となる可能性を有するので、ピッチ周期
となるカウント値が得られるまで、順次更新されながら
RAM4内の変数PITCOUNTER に保存される。
【0032】そして、区間の時間とほぼ等しい時間を
有する区間が見出されたら、ゼロクロス点Z1、Z7間の
時間に相当するカウンタ値が上記メモリ変数PIT COUN
TERから読み出され、ピッチ周期として確定される。そ
して、そのピッチ周期に対応するノートナンバーがRO
M9内のテーブルから求められる。 <本実施例の動作>つぎに、上述の動作原理に従い、入
力波形のピッチを求める動作を、図3〜図6の動作フロ
ーチャートを用いて説明する。これらの動作フローチャ
ートは、図1のCPU3が、ROM9内に記憶されてい
る制御プログラムを実行する動作として実現される。
有する区間が見出されたら、ゼロクロス点Z1、Z7間の
時間に相当するカウンタ値が上記メモリ変数PIT COUN
TERから読み出され、ピッチ周期として確定される。そ
して、そのピッチ周期に対応するノートナンバーがRO
M9内のテーブルから求められる。 <本実施例の動作>つぎに、上述の動作原理に従い、入
力波形のピッチを求める動作を、図3〜図6の動作フロ
ーチャートを用いて説明する。これらの動作フローチャ
ートは、図1のCPU3が、ROM9内に記憶されてい
る制御プログラムを実行する動作として実現される。
【0033】図3において、まず、RAM4のイニシャ
ル・セットが行われる。すなわち、音声信号を読み出す
時点がその信号波形のいかなる状態(status)に対応す
るかを示すステータス・フラグ(STATUS FLAG 、図2参
照)、入力音声信号の波形エンベロープの大きさを示す
変数ENV、ピッチ抽出の結果得られたピッチに対応する
ノートナンバーを保持する変数PIT 、現在発音中のノー
トナンバーを保持する変数ON NOW、第1、第2、第3の
3個のカウンタのそれぞれのカウント値を保持する変数
COUNT 1,COUNT 2,COUNT 3 、および1つ前のA/D変換
値を保持する変数ADMEM などの各内容がすべてクリアさ
れる(ステップS301)。なお、PIT やONNOW の値が0と
いうことは、それぞれピッチ抽出された音が無い、また
は現在発音中の音が無いことを示す。
ル・セットが行われる。すなわち、音声信号を読み出す
時点がその信号波形のいかなる状態(status)に対応す
るかを示すステータス・フラグ(STATUS FLAG 、図2参
照)、入力音声信号の波形エンベロープの大きさを示す
変数ENV、ピッチ抽出の結果得られたピッチに対応する
ノートナンバーを保持する変数PIT 、現在発音中のノー
トナンバーを保持する変数ON NOW、第1、第2、第3の
3個のカウンタのそれぞれのカウント値を保持する変数
COUNT 1,COUNT 2,COUNT 3 、および1つ前のA/D変換
値を保持する変数ADMEM などの各内容がすべてクリアさ
れる(ステップS301)。なお、PIT やONNOW の値が0と
いうことは、それぞれピッチ抽出された音が無い、また
は現在発音中の音が無いことを示す。
【0034】つづいて、入力音声信号の1サンプリング
分のA/D変換の終了を待って(S302)、つぎのステップ
S303に進み、CPU3内のレジスタreg1にA/D変換し
たデータがセットされる。
分のA/D変換の終了を待って(S302)、つぎのステップ
S303に進み、CPU3内のレジスタreg1にA/D変換し
たデータがセットされる。
【0035】そのあと、ステータス・フラグによって処
理が3つに分岐される(ステップS304)。最初は、図2
のステータス・フラグ=0の状態であるので、ステップ
S305に進む。ステータス・フラグ=0の状態では、入力
波形の負側から正側へのゼロクロスの点Z1を検出するた
めに、1つ前のA/D変換値が書き込まれている変数AD
MEM の値が負で、かつ現在のA/D変換値が格納されて
いるレジスタreg1の値が正であるか否かが判定される。
理が3つに分岐される(ステップS304)。最初は、図2
のステータス・フラグ=0の状態であるので、ステップ
S305に進む。ステータス・フラグ=0の状態では、入力
波形の負側から正側へのゼロクロスの点Z1を検出するた
めに、1つ前のA/D変換値が書き込まれている変数AD
MEM の値が負で、かつ現在のA/D変換値が格納されて
いるレジスタreg1の値が正であるか否かが判定される。
【0036】今の場合、ステップS305の判定はNOであ
り、ステップS307に進む。そして、今回A/D変換値が
セットされたreg1の値が変数ADMEM に移され(ステップ
S307)、エンベロープ抽出(ステップS308)、楽音のノ
ートオン/ノートオフ処理(発音/消音処理、ステップ
S309)と進み、再びA/D変換終了待ちとなる(ステッ
プS302)。
り、ステップS307に進む。そして、今回A/D変換値が
セットされたreg1の値が変数ADMEM に移され(ステップ
S307)、エンベロープ抽出(ステップS308)、楽音のノ
ートオン/ノートオフ処理(発音/消音処理、ステップ
S309)と進み、再びA/D変換終了待ちとなる(ステッ
プS302)。
【0037】上記エンベロープ抽出(ステップS308)と
楽音のノートオン/ノートオフ(ステップS309)に関す
る処理は、図5、図6のそれぞれの動作フローチャート
に示されている。
楽音のノートオン/ノートオフ(ステップS309)に関す
る処理は、図5、図6のそれぞれの動作フローチャート
に示されている。
【0038】図5において、まず、現在のA/D変換値
(reg1の内容)の絶対値が演算され(ステップS501)、
そのあとローパスフィルタを通されて(デジタルフィル
タリング演算の実行による)、入力波形が整形される
(ステップS502)。そしてその結果得られた値が変数EN
V に格納される(ステップS503)。
(reg1の内容)の絶対値が演算され(ステップS501)、
そのあとローパスフィルタを通されて(デジタルフィル
タリング演算の実行による)、入力波形が整形される
(ステップS502)。そしてその結果得られた値が変数EN
V に格納される(ステップS503)。
【0039】図6のノートオン/ノートオフ処理では、
まず変数ENV の大きさが所定の閾値(THRESHOLD)を超
え、かつノートナンバーを保持する変数PIT の値が0よ
り大きいか否かが判定される(ステップS604)。
まず変数ENV の大きさが所定の閾値(THRESHOLD)を超
え、かつノートナンバーを保持する変数PIT の値が0よ
り大きいか否かが判定される(ステップS604)。
【0040】その判定がNOならば、第1図の音源5の
すべて発音中の音の消音が指示され、かつ発音中の音が
無いことを示すために、変数ON NOWがクリアされて(ス
テップS609)、メインルーチン(図3)に戻る。
すべて発音中の音の消音が指示され、かつ発音中の音が
無いことを示すために、変数ON NOWがクリアされて(ス
テップS609)、メインルーチン(図3)に戻る。
【0041】また、ステップS604の判定がYESなら
ば、ステップS605で現在発音中の音がないか否かが判定
され、その判定がYESならば、ステップS608に進む。
ステップS605の判定がNOならば、発音中のノートナン
バーを示す変数ON NOWと抽出されたノートナンバーを示
す変数PIT の各値が比較される(ステップS606)。比較
の結果、両者が一致すれば、再発音する必要がないので
メインルーチン(図3)に戻り、一致しなければ、発音
すべきノートナンバーが変化したことになり、現在発音
中の音の消音を音源5に指示し(ステップS607)、その
あとステップS608に進む。
ば、ステップS605で現在発音中の音がないか否かが判定
され、その判定がYESならば、ステップS608に進む。
ステップS605の判定がNOならば、発音中のノートナン
バーを示す変数ON NOWと抽出されたノートナンバーを示
す変数PIT の各値が比較される(ステップS606)。比較
の結果、両者が一致すれば、再発音する必要がないので
メインルーチン(図3)に戻り、一致しなければ、発音
すべきノートナンバーが変化したことになり、現在発音
中の音の消音を音源5に指示し(ステップS607)、その
あとステップS608に進む。
【0042】ステップS608において、ノートナンバーを
示す変数PIT に応じた発音指示が行われるとともに、変
数ON NOWに変数PIT の値が代入されて、現在、変数PIT
に対応するピッチを有する楽音を発音中であることが示
される(ステップS608)。そのあとメインルーチン(図
3)に戻る。
示す変数PIT に応じた発音指示が行われるとともに、変
数ON NOWに変数PIT の値が代入されて、現在、変数PIT
に対応するピッチを有する楽音を発音中であることが示
される(ステップS608)。そのあとメインルーチン(図
3)に戻る。
【0043】以上の処理は、負側から正側へのゼロクロ
ス点(図2のZ1)に到達するまで繰り返され、やがて図
3のステップS305の判定がYESとなり、ステータス・
フラグSTATUS FLAG が1にされる(ステップS306)。
ス点(図2のZ1)に到達するまで繰り返され、やがて図
3のステップS305の判定がYESとなり、ステータス・
フラグSTATUS FLAG が1にされる(ステップS306)。
【0044】このあと前述と同様な動作が行われて、ふ
たたびステップS304に戻る。ここで、STATUS FLAG =1
の状態となったため、ステップS310に移る。この状態で
は、図2の区分に例示される時間をカウントするため
に、第1のカウンタとしての変数COUNT 1 (以下、第1
のカウンタCOUNT 1 と呼ぶ)のインクリメントが、ま
た、区分に例示される時間をカウントするために第3
のカウンタとしての変数COUNT 3 (以下、第3のカウン
タCOUNT 3 と呼ぶ)のインクリメントがそれぞれ開始さ
れる。
たたびステップS304に戻る。ここで、STATUS FLAG =1
の状態となったため、ステップS310に移る。この状態で
は、図2の区分に例示される時間をカウントするため
に、第1のカウンタとしての変数COUNT 1 (以下、第1
のカウンタCOUNT 1 と呼ぶ)のインクリメントが、ま
た、区分に例示される時間をカウントするために第3
のカウンタとしての変数COUNT 3 (以下、第3のカウン
タCOUNT 3 と呼ぶ)のインクリメントがそれぞれ開始さ
れる。
【0045】まず、ステップS310において、第1のカウ
ンタCOUNT 1 の値が1増加させられる(ステップS31
0)。つぎに、入力波形の正側から負側へのゼロクロス
点、すなわち図2の区間の終了点であるゼロクロス点
Z2を検出するために、1つ前のA/D変換値が書き込ま
れた変数ADMEM の値が正で、かつ現在のA/D変換値が
書き込まれたレジスタreg 1 の値が負であるか否かが判
定される(ステップS311)。
ンタCOUNT 1 の値が1増加させられる(ステップS31
0)。つぎに、入力波形の正側から負側へのゼロクロス
点、すなわち図2の区間の終了点であるゼロクロス点
Z2を検出するために、1つ前のA/D変換値が書き込ま
れた変数ADMEM の値が正で、かつ現在のA/D変換値が
書き込まれたレジスタreg 1 の値が負であるか否かが判
定される(ステップS311)。
【0046】その判定がNOなら、第3のカウンタCOUN
T 3 の値が1増加させられる(ステップS313)。以後、
ステップS311→S313→S307→S308→S309→S302〜S304〜
S311・・・のループ処理が繰り返され、その繰り返し処
理毎に第1のカウンタCOUNT 1 および第3のカウンタCO
UNT3 の値が1づつ増加される。
T 3 の値が1増加させられる(ステップS313)。以後、
ステップS311→S313→S307→S308→S309→S302〜S304〜
S311・・・のループ処理が繰り返され、その繰り返し処
理毎に第1のカウンタCOUNT 1 および第3のカウンタCO
UNT3 の値が1づつ増加される。
【0047】そして、ステップS311の判定がYESにな
り、正側から負側へのゼロクロス点Z2に到達すると、ス
テータス・フラグが2にされる(ステップS312)。その
後、ステップS313に進み、COUNT 3 が値1増加されたあ
と、ステップS307→S308→S309と進み、ステップS302に
戻る。
り、正側から負側へのゼロクロス点Z2に到達すると、ス
テータス・フラグが2にされる(ステップS312)。その
後、ステップS313に進み、COUNT 3 が値1増加されたあ
と、ステップS307→S308→S309と進み、ステップS302に
戻る。
【0048】以上のようなループ処理が行われて、図2
の区間の時間に相当するカウンタ値が第1のカウンタ
COUNT 1 に保持される。つぎに、ステップS312でステー
タス・フラグは2にされているので、今回はステップS3
02〜S304から、図4のステップS401→S402と進む。
の区間の時間に相当するカウンタ値が第1のカウンタ
COUNT 1 に保持される。つぎに、ステップS312でステー
タス・フラグは2にされているので、今回はステップS3
02〜S304から、図4のステップS401→S402と進む。
【0049】ステップS402では、負側から正側へのゼロ
クロス点(図4のZ3)を検出するために、図3のステッ
プS305と同じ処理、すなわち、変数ADMEM の値(1つ前
のA/D変換値)が負で、かつレジスタreg1の値(現在
のA/D変換値)が正であるか否かが判定される。
クロス点(図4のZ3)を検出するために、図3のステッ
プS305と同じ処理、すなわち、変数ADMEM の値(1つ前
のA/D変換値)が負で、かつレジスタreg1の値(現在
のA/D変換値)が正であるか否かが判定される。
【0050】その判定がNOである間は、S402→S313
(図3)→S307〜S309→S302〜S304→S401(図4)→S4
02・・・のループ処理が繰り返され、各繰り返し毎に第
3のカウンタCOUNT 3 のカウント値が1づつ増加させら
れる(S313)。
(図3)→S307〜S309→S302〜S304→S401(図4)→S4
02・・・のループ処理が繰り返され、各繰り返し毎に第
3のカウンタCOUNT 3 のカウント値が1づつ増加させら
れる(S313)。
【0051】そして、ステップS402の判定がYESにな
り、負側から正側へのゼロクロス点Z3に到達すると、ス
テータス・フラグが3にされ、このときのCOUNT 3 の値
(図2の時間に相当)が変数PITCOUNTER に保存され
る(ステップS403)。このPITCOUNTERの値は、抽出すべ
きピッチに対応する周期の候補、すなわち、図2の区間
のカウント値になる可能性を有するものとして、保持
される。
り、負側から正側へのゼロクロス点Z3に到達すると、ス
テータス・フラグが3にされ、このときのCOUNT 3 の値
(図2の時間に相当)が変数PITCOUNTER に保存され
る(ステップS403)。このPITCOUNTERの値は、抽出すべ
きピッチに対応する周期の候補、すなわち、図2の区間
のカウント値になる可能性を有するものとして、保持
される。
【0052】その後、ステップS403→S313(図3)〜S3
09→S302〜S304〜S401(図4)と進む。今回はSTATUS F
LAG =3 の状態となったため、ステップS401からステッ
プS404に進み、第2のカウンタCOUNT 2 のカウント値が
1増加され、この時点から図2の区分のカウントが開
始される。
09→S302〜S304〜S401(図4)と進む。今回はSTATUS F
LAG =3 の状態となったため、ステップS401からステッ
プS404に進み、第2のカウンタCOUNT 2 のカウント値が
1増加され、この時点から図2の区分のカウントが開
始される。
【0053】つぎに、入力波形の正側から負側へのゼロ
クロス点、すなわち図2の区間の終了点に相当するゼ
ロクロス点Z4が検出されるため、変数ADEMの値(1つ前
のA/D 変換値)が正で、かつレジスタreg1の値(現在の
A/D 変換値)が負であるか否かが判定される(ステップ
S405)。
クロス点、すなわち図2の区間の終了点に相当するゼ
ロクロス点Z4が検出されるため、変数ADEMの値(1つ前
のA/D 変換値)が正で、かつレジスタreg1の値(現在の
A/D 変換値)が負であるか否かが判定される(ステップ
S405)。
【0054】その判定がNOの間は、ステップS404→S4
05→S313(図3)〜S309→S302〜S304→S401(図4)→
S404のループ処理が繰り返され、各繰り返し毎に第2の
カウンタCOUNT 2 および第3のカウンタCOUNT 3 の値が
1づつ増加される。
05→S313(図3)〜S309→S302〜S304→S401(図4)→
S404のループ処理が繰り返され、各繰り返し毎に第2の
カウンタCOUNT 2 および第3のカウンタCOUNT 3 の値が
1づつ増加される。
【0055】ステップS405の判定がYESになると、ゼ
ロクロス点Z4が検出されたことになり、ここでステータ
ス・フラグが4に変えられる(ステップS406)。その
後、図3のステップS313に進み、COUNT 3 が値1増加さ
れたあと、ステップS307→S308→S309〜S401(図4)と
進む。
ロクロス点Z4が検出されたことになり、ここでステータ
ス・フラグが4に変えられる(ステップS406)。その
後、図3のステップS313に進み、COUNT 3 が値1増加さ
れたあと、ステップS307→S308→S309〜S401(図4)と
進む。
【0056】今回はSTATUS FLAG =4 の状態となったた
め、ステップS401からステップS407に進む。この状態で
は、図2の区分に対して区分、、が順次比較さ
れ、区分とほぼ等しい時間を有する区分が見出され
たとき、区分の時間を入力波形のピッチ周期と定める
処理動作が行われる。
め、ステップS401からステップS407に進む。この状態で
は、図2の区分に対して区分、、が順次比較さ
れ、区分とほぼ等しい時間を有する区分が見出され
たとき、区分の時間を入力波形のピッチ周期と定める
処理動作が行われる。
【0057】まず、いままでに得られた第1のカウンタ
COUNT 1 と第2のカウンタCOUNT 2のそれぞれの値がほ
ぼ等しいか否か、すなわち、COUNT 1 とCOUNT 2 のそれ
ぞれの値の差の絶対値が、許容誤差範囲内にあるか否か
が判定される(ステップS407)。この許容誤差範囲は、
入力信号のサンプリング周波数とピッチ周波数に依存す
るが、経験的に決定される。
COUNT 1 と第2のカウンタCOUNT 2のそれぞれの値がほ
ぼ等しいか否か、すなわち、COUNT 1 とCOUNT 2 のそれ
ぞれの値の差の絶対値が、許容誤差範囲内にあるか否か
が判定される(ステップS407)。この許容誤差範囲は、
入力信号のサンプリング周波数とピッチ周波数に依存す
るが、経験的に決定される。
【0058】今の場合は、COUNT 1 とCOUNT 2 は、それ
ぞれ図2の区間とのカウント値を保持しているた
め、ステップS407の判定はNOとなりステップS408に進
む。ここで、入力音声信号に雑音などが混入すると、そ
れが原因となって、ステップS407の判定がNOの状態が
異常に長く続き、楽音の発音指示が行われない場合があ
る。
ぞれ図2の区間とのカウント値を保持しているた
め、ステップS407の判定はNOとなりステップS408に進
む。ここで、入力音声信号に雑音などが混入すると、そ
れが原因となって、ステップS407の判定がNOの状態が
異常に長く続き、楽音の発音指示が行われない場合があ
る。
【0059】このような異常状態の発生を防ぐために、
音声信号のピッチ周期とされるべき時間をカウントする
第3のカウンタCOUNT 3 の値が常に監視され、その値が
音声信号の最低音のピッチ周期に比べてはるかに大きい
値を有する所定の制限値LIMIT を超えているか否かが判
定される(ステップS408)。
音声信号のピッチ周期とされるべき時間をカウントする
第3のカウンタCOUNT 3 の値が常に監視され、その値が
音声信号の最低音のピッチ周期に比べてはるかに大きい
値を有する所定の制限値LIMIT を超えているか否かが判
定される(ステップS408)。
【0060】この制限値も前述の許容誤差範囲と同様、
経験的に決定される。例えばサンプリング周波数を20KH
z 、最低抽出音高(ピッチ)を110.5Hz (音名:A1に相
当)とすると、 20000 ÷110.5 =180.995 ・・・ となるため、制限値は180前後とすればよい。
経験的に決定される。例えばサンプリング周波数を20KH
z 、最低抽出音高(ピッチ)を110.5Hz (音名:A1に相
当)とすると、 20000 ÷110.5 =180.995 ・・・ となるため、制限値は180前後とすればよい。
【0061】ステップS408の判定がYESの場合、すな
わち異常状態の場合は、図3のステップS314に進み、図
2の音源5に対して、すべての発音中の音を消音する指
示がなされるとともに、変数ON NOWがクリアされる。そ
のあと、ステップS301に戻って、ふたたび上述のピッチ
抽出の処理動作が実行し直される。
わち異常状態の場合は、図3のステップS314に進み、図
2の音源5に対して、すべての発音中の音を消音する指
示がなされるとともに、変数ON NOWがクリアされる。そ
のあと、ステップS301に戻って、ふたたび上述のピッチ
抽出の処理動作が実行し直される。
【0062】ステップS408の判定がNOの場合は、ステ
ップS409に進み、第2のカウンタCOUNT 2 の値がクリア
され、ステータス・フラグは2に戻される。そして、ふ
たたび、つぎのゼロクロスを求めるための処理に入る。
このとき変数PIT COUNTER に保持された値は無効となる
が、第3のカウンタCOUNT 3 は依然カウントアップをつ
づけており、また、第1のカウンタCOUNT 1 も図2の区
間のカウント値を保持している。
ップS409に進み、第2のカウンタCOUNT 2 の値がクリア
され、ステータス・フラグは2に戻される。そして、ふ
たたび、つぎのゼロクロスを求めるための処理に入る。
このとき変数PIT COUNTER に保持された値は無効となる
が、第3のカウンタCOUNT 3 は依然カウントアップをつ
づけており、また、第1のカウンタCOUNT 1 も図2の区
間のカウント値を保持している。
【0063】上述のようにしてステータス・フラグの2
の状態に戻された後は、前回と同様にステータス・フラ
グの3の状態、4の状態と進み、第2のカウンタCOUNT
2 には図2の区間のカウント値、変数PIT COUNTER に
は同図の区間の始まりから区間のゼロクロス点Z5ま
でのカウント値(図2の)が保持される。
の状態に戻された後は、前回と同様にステータス・フラ
グの3の状態、4の状態と進み、第2のカウンタCOUNT
2 には図2の区間のカウント値、変数PIT COUNTER に
は同図の区間の始まりから区間のゼロクロス点Z5ま
でのカウント値(図2の)が保持される。
【0064】しかし、今回もCOUNT 1 の値(区分の時
間に対応)とCOUNT 2 の値(区分の時間に対応)が一
致しないため、ステップS407の判定がNOとなる。その
ためステップS408を介してステップS409に進み、ふたた
びステータス・フラグが2の状態から実行し直されるこ
とになる。
間に対応)とCOUNT 2 の値(区分の時間に対応)が一
致しないため、ステップS407の判定がNOとなる。その
ためステップS408を介してステップS409に進み、ふたた
びステータス・フラグが2の状態から実行し直されるこ
とになる。
【0065】そして、このつぎにステータス・フラグ
が、ふたたび4の状態になったとき、COUNT 2 は図2の
区間のカウント値を保持し、一方、PIT COUNTER は同
図の時間のカウント値を保持している。そして、ステ
ップS407において、初めてYESと判定され、ステップ
S410に進む。
が、ふたたび4の状態になったとき、COUNT 2 は図2の
区間のカウント値を保持し、一方、PIT COUNTER は同
図の時間のカウント値を保持している。そして、ステ
ップS407において、初めてYESと判定され、ステップ
S410に進む。
【0066】このときの入力波形のピッチ周期の正しい
値は、PIT COUNTER に保持されている第3のカウンタCO
UNT 3 の値(図2の)となる。そして、この値に対応
するノートナンバーが図1のROM9内のテーブルから
読み出され、変数PIT に移される(ステップS410)。
値は、PIT COUNTER に保持されている第3のカウンタCO
UNT 3 の値(図2の)となる。そして、この値に対応
するノートナンバーが図1のROM9内のテーブルから
読み出され、変数PIT に移される(ステップS410)。
【0067】つぎに、ステータス・フラグと、すべての
カウンタがクリアされ、初期状態にリセットされる(ス
テップS411)。そのあと、図3のステップS307〜S309の
ノートオン/オフ処理に進み、この処理において、上述
の入力音声信号のピッチ(音高)に対応するノートナン
バーを有する楽音の新たな発音指示がなされる。
カウンタがクリアされ、初期状態にリセットされる(ス
テップS411)。そのあと、図3のステップS307〜S309の
ノートオン/オフ処理に進み、この処理において、上述
の入力音声信号のピッチ(音高)に対応するノートナン
バーを有する楽音の新たな発音指示がなされる。
【0068】すなわち、ステップS309に対応する図6の
フローで、ステップS604の判定がYESとなった後、ス
テップS605で現在発音中の音がない(YES)と判定さ
れたら、前述したように、ステップS608で、ノートナン
バーを示す変数PIT に応じた発音指示が行われる。ま
た、ステップS605で現在発音中の音がある(NO)と判
定されたら、前述したように、ステップS606で、発音中
のノートナンバーを示す変数ON NOWと抽出されたノート
ナンバーを示す変数PIT の各値が比較される。その比較
の結果、両者が一致すれば、再発音する必要がないので
メインルーチン(図3)に戻り、一致しなければ、発音
すべきノートナンバーが変化したことになり、現在発音
中の音の消音が音源5に指示され(ステップS607)、そ
のあとステップS608で、新たなノートナンバーが格納さ
れた変数PIT に応じた新たな発音指示が行われる。
フローで、ステップS604の判定がYESとなった後、ス
テップS605で現在発音中の音がない(YES)と判定さ
れたら、前述したように、ステップS608で、ノートナン
バーを示す変数PIT に応じた発音指示が行われる。ま
た、ステップS605で現在発音中の音がある(NO)と判
定されたら、前述したように、ステップS606で、発音中
のノートナンバーを示す変数ON NOWと抽出されたノート
ナンバーを示す変数PIT の各値が比較される。その比較
の結果、両者が一致すれば、再発音する必要がないので
メインルーチン(図3)に戻り、一致しなければ、発音
すべきノートナンバーが変化したことになり、現在発音
中の音の消音が音源5に指示され(ステップS607)、そ
のあとステップS608で、新たなノートナンバーが格納さ
れた変数PIT に応じた新たな発音指示が行われる。
【0069】以上の発音指示の後、図3のステップS307
〜S302〜S304へ進み、STATUS FLAG=0 の状態から、い
ままでと同様な動作が繰り返される。以上説明した実施
例では、波形の振幅値0の基準レベルに対して、正側の
波形部分(例えば、図2の波形a、b、c、d・・・)
について、それぞれの区分の時間を比較してピッチを抽
出したが、本発明はこれに限られることなく、負側の波
形部分を用いてもまったく同様ピッチ抽出動作を行うこ
とができる。
〜S302〜S304へ進み、STATUS FLAG=0 の状態から、い
ままでと同様な動作が繰り返される。以上説明した実施
例では、波形の振幅値0の基準レベルに対して、正側の
波形部分(例えば、図2の波形a、b、c、d・・・)
について、それぞれの区分の時間を比較してピッチを抽
出したが、本発明はこれに限られることなく、負側の波
形部分を用いてもまったく同様ピッチ抽出動作を行うこ
とができる。
【0070】さらに、基準レベルに対して正側と負側の
それぞれの波形について、並行して上述のピッチ抽出動
作を行い、それぞれの第3のカウンタCOUNT 3 の値が所
定の誤差を許容して一致した場合に、例えば2つのCOUN
T 3 の値の平均値を入力波形のピッチ周期として求めれ
ば、より精度の高いピッチ抽出が可能である。
それぞれの波形について、並行して上述のピッチ抽出動
作を行い、それぞれの第3のカウンタCOUNT 3 の値が所
定の誤差を許容して一致した場合に、例えば2つのCOUN
T 3 の値の平均値を入力波形のピッチ周期として求めれ
ば、より精度の高いピッチ抽出が可能である。
【0071】また、図6のノートオン/オフの処理で
は、発音中の楽音のピッチが変化した場合には、一度、
消音してから発音し直すような処理を行っているが、こ
の場合に、例えばエンベロープがそれほど変化してなけ
れば消音はせずに音高のみを変化させるように、図2の
音源5に対して指示を行うことも可能である。
は、発音中の楽音のピッチが変化した場合には、一度、
消音してから発音し直すような処理を行っているが、こ
の場合に、例えばエンベロープがそれほど変化してなけ
れば消音はせずに音高のみを変化させるように、図2の
音源5に対して指示を行うことも可能である。
【0072】
【発明の効果】本発明によれば、ゼロクロス点間の間隔
がほぼ等しく波形の山が相似であると判別される時点を
抽出することによって、倍音成分による影響に関わら
ず、入力波形のピッチを安定して抽出することが可能と
なる。
がほぼ等しく波形の山が相似であると判別される時点を
抽出することによって、倍音成分による影響に関わら
ず、入力波形のピッチを安定して抽出することが可能と
なる。
【0073】これにより、例えば倍音を含む歌声や楽音
などの音声波形から、その音高を示すピッチを確実に抽
出することが可能となる。
などの音声波形から、その音高を示すピッチを確実に抽
出することが可能となる。
【図1】本発明の一実施例の全体構成図である。
【図2】入力音声信号の波形図である。
【図3】本実施例の動作フローチャート(その1)であ
る。
る。
【図4】本実施例の動作フローチャート(その2)であ
る。
る。
【図5】本実施例のエンベロープ検出に関する動作フロ
ーチャートである。
ーチャートである。
【図6】本実施例のノートオン/オフに関する動作フロ
ーチャートである。
ーチャートである。
1 キャパシタ
2 A/D変換器
3 CPU
4 RAM
5 音源
6 D/A変換器
7 増幅器
8 スピーカ
9 ROM
Claims (2)
- 【請求項1】入力波形が負又は正の第1の極性から他方
の第2の極性へゼロクロスするゼロクロス点からつぎに
前記第2の極性から前記第1の極性へゼロクロスするゼ
ロクロス点までの間隔を第1の間隔として計測する第1
の間隔計測手段と、 該第1の間隔計測手段による計測の終了後、前記入力波
形が前記第1の極性から前記第2の極性へゼロクロスす
るゼロクロス点からつぎに前記第2の極性から前記第1
の極性へゼロクロスするゼロクロス点までのそれぞれの
区間の間隔を第2の間隔として順次計測する第2の間隔
計測手段と、 前記第1の間隔計測手段による計測が開始されたゼロク
ロス点からの間隔を逐次計測する第3の間隔計測手段
と、 前記第2の計測手段が前記各第2の間隔の計測を開始し
た各時点において前記第3の間隔計測手段が計測してい
る間隔を周期情報として順次更新しながら記憶する間隔
記憶手段と、 前記第1の間隔計測手段が計測した前記第1の間隔と前
記第2の間隔計測手段が順次計測した前記各第2の間隔
が、所定の許容誤差範囲内で一致したか否かを順次判定
する判定手段と、 該判定手段が前記一致を検出した時点で前記時間記憶手
段に記憶されている前記周期情報を前記入力波形のピッ
チ情報として出力し、その後、前記第1の間隔計測手段
による計測処理から順に前記各処理を繰り返させること
により前記入力波形からピッチ情報を順次抽出する繰り
返し制御手段と、 を有することを特徴とするピッチ抽出装置。 - 【請求項2】前記判定手段が前記一致を検出しなかった
時点において、前記第3の間隔計測手段が計測している
間隔が予め設定された最低音のピッチ周期に対応する間
隔を越えたか否かを判定し、越えたと判定した場合に、
前記第1の間隔計測手段による計測処理から前記各処理
をやり直させる制限手段を、更に有することを特徴とす
る請求項1に記載のピッチ抽出装置。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12029191A JPH0519792A (ja) | 1991-05-02 | 1991-05-24 | ピツチ抽出装置 |
| US08/154,157 US5349130A (en) | 1991-05-02 | 1993-11-17 | Pitch extracting apparatus having means for measuring interval between zero-crossing points of a waveform |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3-100985 | 1991-05-02 | ||
| JP10098591 | 1991-05-02 | ||
| JP12029191A JPH0519792A (ja) | 1991-05-02 | 1991-05-24 | ピツチ抽出装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0519792A true JPH0519792A (ja) | 1993-01-29 |
Family
ID=26441916
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP12029191A Pending JPH0519792A (ja) | 1991-05-02 | 1991-05-24 | ピツチ抽出装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0519792A (ja) |
-
1991
- 1991-05-24 JP JP12029191A patent/JPH0519792A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Dixon | On the computer recognition of solo piano music | |
| Moorer | On the transcription of musical sound by computer | |
| US5210366A (en) | Method and device for detecting and separating voices in a complex musical composition | |
| US6380474B2 (en) | Method and apparatus for detecting performance position of real-time performance data | |
| US5780759A (en) | Method for pitch recognition, in particular for musical instruments which are excited by plucking or striking | |
| US7507899B2 (en) | Automatic music transcription apparatus and program | |
| US6766288B1 (en) | Fast find fundamental method | |
| CN113012666A (zh) | 一种检测音乐调性的方法、装置、终端设备及计算机存储介质 | |
| Grubb et al. | Enhanced vocal performance tracking using multiple information sources | |
| CN114882905A (zh) | 一种基于神经网络的音乐节拍速度检测方法 | |
| JP3092197B2 (ja) | ピッチ抽出装置 | |
| JPH0519792A (ja) | ピツチ抽出装置 | |
| JP3092198B2 (ja) | ピッチ抽出装置 | |
| Alcabasa et al. | Automatic guitar music transcription | |
| EP0367191B1 (en) | Automatic music transcription method and system | |
| JP2006227452A (ja) | 調律装置および調律装置の制御方法 | |
| EP0264955B1 (en) | Apparatus for determining the pitch of a substantially periodic input signal | |
| JP3132038B2 (ja) | 和音判別装置及びそれを用いた自動伴奏装置 | |
| JP2005107335A (ja) | カラオケ装置 | |
| Maula et al. | Spectrum identification of peking as a part of traditional instrument of gamelan | |
| JPH0972779A (ja) | 音声波形のピッチ検出装置 | |
| JP3118863B2 (ja) | 音階検出装置を用いた楽音発生装置 | |
| Grubb et al. | PROCEEDINGS ICMC98 37 | |
| Grubb et al. | INFORMATION SOURCES | |
| Grubb et al. | PROCEEDINGS| cmcss 37 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20010417 |