JP3693981B2 - Pitch converter - Google Patents

Pitch converter Download PDF

Info

Publication number
JP3693981B2
JP3693981B2 JP2002159323A JP2002159323A JP3693981B2 JP 3693981 B2 JP3693981 B2 JP 3693981B2 JP 2002159323 A JP2002159323 A JP 2002159323A JP 2002159323 A JP2002159323 A JP 2002159323A JP 3693981 B2 JP3693981 B2 JP 3693981B2
Authority
JP
Japan
Prior art keywords
pitch
value
waveform
register
switch
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 - Fee Related
Application number
JP2002159323A
Other languages
Japanese (ja)
Other versions
JP2003036082A (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.)
Roland Corp
Original Assignee
Roland Corp
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 Roland Corp filed Critical Roland Corp
Priority to JP2002159323A priority Critical patent/JP3693981B2/en
Publication of JP2003036082A publication Critical patent/JP2003036082A/en
Application granted granted Critical
Publication of JP3693981B2 publication Critical patent/JP3693981B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PROBLEM TO BE SOLVED: To convert a pitch while maintaining a formant of a former audio signal by synthesizing segmented phoneme pieces. SOLUTION: A pitch converting means 24 reads the phoneme pieces from an input waveform data stored in a RAM12 between intervals of two cycles, gives an envelope, synthesizes in a cycle corresponding to the reproducing pitch, and outputs.

Description

【0001】
【発明の属する技術分野】
本発明は、音声信号や楽音信号のピッチを変換するピッチ変換装置に関する。
【0002】
【従来の技術】
従来、ピッチ変換装置としては、種々のものが提案されている。例えば特開昭62−65098号公報には、入力された音声信号を切り出して、鍵盤によって選択されたピッチで音声信号を再生するように構成した音楽用ボコーダについて開示されている。このボコーダでは、再生される音声信号の音程を入力音声信号と異ならせていても、再生される音声信号のフォルマントは、入力音声信号のフォルマントをほぼ維持できるように構成されている。
【0003】
【発明が解決しようとする課題】
上記ボコーダでは、もとの音声の1周期を切り出して、所望のピッチに対応する時間間隔で再生して合成している。この方法では、矩形波の窓を掛けていることになり、結果的に余分な高調波が発生する。本発明は、極力余分な高調波が発生しないピッチ変換装置を提供することを目的とする。
【0004】
【課題を解決するための手段】
本発明は、複数周期からなるオーディオ信号を記憶するメモリと、前記オーディオ信号のピッチを検出するピッチ検出手段と、再生ピッチを設定する再生ピッチ情報を記憶する再生ピッチ情報記憶手段と、前記ピッチ検出手段によって検出されたピッチの周期に従って、前記メモリに記憶された前記オーディオ信号の所定の2周期分の区間を、前記再生ピッチ情報とは独立して設定された読み出し速度で読み出すことで音素片の切り出しを行う音素片切り出し手段と、その切り出された音素片に、その音素片の読み出しに要する時間と等しい長さで、最小値から最大値を経て最小値へと漸次移行するエンベロープを付与し、前記再生ピッチ情報記憶手段に記憶された前記再生ピッチ情報に基づいた2周期単位で合成して、再生オーディオ信号を生成する再生オーディオ信号合成手段とを、備えたものである。
【0005】
本発明によれば、オーディオ信号から複数周期の音素片を切り出して、所定のエンベロープを付与した後、再生ピッチに対応した周期で合成するため、不要な高調波の発生が少なく、元のオーディオ信号のフォルマントが維持されたまま、ピッチ変換が行われる。
【0006】
【発明の実施の形態】
本発明の第1の実施形態は、図1(a)に示すように、アナログの楽音信号または音声信号等の可聴周波数信号が入力される入力端子2を有し、この入力端子2に供給された可聴周波数信号が、A/D変換器4によってディジタル可聴周波数信号(サンプリングデータ)に変換される。このA/D変換器4と入力端子2との間には、可聴周波数信号をA/D変換器4におけるサンプリング周波数の1/2以下の周波数に制限して、エイリアシングの発生を防止するために、ローパスフィルタ6が設けられている。
【0007】
A/D変換器4からのサンプリングデータは、DSP(ディジタル信号処理装置)8に供給され、これからRAM12に供給される。このRAM12は、入力されたサンプリングデータを順次記憶するリングメモリとして使用されている。
【0008】
DSP8は、このリングメモリからサンプリングデータを読出して、処理を行い、D/A変換器14に供給する。D/A変換器14は、DSP8で処理されたサンプリングデータをアナログの可聴周波数信号に変換し、ローパスフィルタ16に供給し、不要な信号成分を除去した後、出力端子18に供給する。
【0009】
DSP8は、予め設定されているプログラムに従ってサンプリングデータを処理する。その処理には、例えば使用者が操作する操作子20によって設定されたフォルマント変更係数FORMANT−VRやピッチ変更係数PITCH−VR等のパラメータが使用される。これらフォルマント変更係数FORMANT−VRやピッチ変更係数PITCH−VRは、CPU22によって検出され、DSP8に供給される。CPU22は、この他にDSP8の制御も行う。
【0010】
図1(b)及び(c)は、DSP8が実行する機能を機能ブロック図で示したもので、同図(b)は、本発明の基本となる実施形態を、同図(c)は、本発明のその他の実施形態を示したものである。なお、これらの図面では、入力端子23に入力されるサンプリングデータをRAM12のリングメモリに順次記憶する機能ブロックを有しているが、説明を容易にするため、その機能ブロックを省略している。
【0011】
同図(b)の基本実施形態では、入力手段、例えば入力端子23と、ピッチ変換手段24と、ピッチ検出手段26と、制御手段28と、出力端子29とが、設けられている。制御手段28は、ピッチ検出手段26からのピッチ検出信号や、CPU22を介して操作子20の操作によって設定されたフォルマント変更係数FORMANT−VRやピッチ変更係数PITCH−VR等のパラメータを用いて、RAM12に記憶されているサンプリングデータを、ピッチ変換手段24に処理させるものである。
【0012】
ピッチ変換手段24、ピッチ検出手段26及び制御手段28が行う処理は、概略的に説明すると、リングメモリに記憶されているサンプリングデータから所望の区間を音素として、時間経過に従って、フォルマント変更係数FORMANT−VRに応じた読み出し速度で順次切り出して、フォルマント特性を適宜変更すると共に、その切り出した音素を、ピッチ検出手段26で検出したピッチと、ピッチ変更係数PITCH−VRとに対応した周期で再生し、入力時とは異なるピッチ及びフォルマントで再生可能にするものである。
【0013】
なお、本願実施形態では、上記音素の再生を、第1の波形を再生するための処理経路と、第2の波形を再生するための処理経路とを使用し、それぞれの処理経路では、再生しようとする周期の2倍の周期で音素を再生し、これらを合成するようにしている。
【0014】
この効果付加の動作を、図2及び図3に示すフローチャートに基づいて説明する。DSP8は、サンプリングデータの検出ピッチを記憶するレジスタPITCH、リングメモリからサンプリングデータを切り出す(読出)アドレスを記憶するレジスタSADRSを備えている。更に、後述する再生ピッチ周期長に達したかをカウントするためのカウンタPHASE、第1の波形の位相をカウントするためのカウンタPH1、第2の波形の位相をカウントするためのカウンタPH2も設けられている。
【0015】
また、ピッチ検出手段26によって検出したピッチをピッチ変更係数PITCH−VRによって変更した再生ピッチ情報(再生ピッチ周期長)を記憶するためのレジスタWIDTH、検出したピッチとフォルマント係数FORMANT−VRとから定めたエンベロープの長さを記憶するレジスタLENGTH、第1の波形のエンベロープを記憶するためのレジスタENV1、及び第2の波形のエンベロープを記憶するためのレジスタENV2が、設けられている。
【0016】
更に、第1の波形のエンベロープの形状を決定するためのレジスタWINDOW1、第2の波形のエンベロープの形状を決定するためのレジスタWINDOW2、LENGTHの値に基づいて定めたWINDOW1、WINDOW2の歩進率を記憶するレジスタW−RATE、第1の波形の切り出し開始アドレスを記憶するレジスタSADRS1、第2の波形の切り出し開始アドレスを記憶するレジスタSADRS2、第1及び第2の波形の切り出しの開始位置等の決定のために使用するフラグF等も設けられている。
【0017】
これらは、電源の投入の際に、初期化が行われる。即ち、フラグFは1に、他のものは0に、それぞれ設定される。なお、以下の説明では、既に各レジスタや各カウンタには、既に適当な値が記憶されているとして説明する。また、図2及び図3に示すフローチャートの各ステップは、DSP8にA/D変換器4からサンプリングデータが入力されるごとに実行される。
【0018】
図2において、サンプリングデータがA/D変換器4から供給されると、これをリングメモリに書き込む(ステップS2)。次に、この入力されたサンプリングデータに基づいてピッチ検出処理を行う(ステップS4)。このステップS4がピッチ検出手段26に相当する。このピッチ検出処理は、ピッチを検出したときにゼロクロス位置のアドレスと検出したピッチとを出力するものである。
【0019】
このピッチ検出処理は、例えば隣接するゼロクロス間の時間間隔を順次比較するものである。例えば、図4(a)において、入力信号のゼロクロス間の時間間隔がa0、b0、c0、d0、a1、b1、c1、d1であるとする。最初のゼロクロス間の時間間隔a0と次のゼロクロス間の時間間隔b0とを比較し、両者が異なると、次にそれらを加算した時間間隔(a0+b0)と隣接する時間間隔(c0+d0)とを比較する。この比較においても両者が異なると、時間間隔(a0+b0+c0)と隣接する時間間隔(d0+a1+b1)とを比較する。やはり両者が異なると、時間間隔(a0+b0+c0+d0)と隣接する時間間隔(a1+b1+c1+d1)とを比較する。この比較で両者がほぼ一致すると、時間間隔(a1+b1+c1+d1)をピッチ、Z1をゼロクロス位置のアドレスとして出力する。
【0020】
その他、例えば特開平3−288200号公報に開示されているように、サンプリングデータのゼロクロス位置と、波形信号のピーク位置とを検出し、これらゼロクロス位置とピーク位置との時間間隔を、以前に検出したゼロクロス位置との時間間隔と比較することによって、ピッチを検出するものも使用することができる。
【0021】
ステップS4においてピッチ検出が行われた否かを判断し(ステップS6)、ピッチ検出された場合、ステップS4で検出されたゼロクロス位置を切り出しアドレスとし、これによってレジスタSADRSの値を更新し、かつ検出ピッチを1周期長として、これでPITCHの値を更新する(ステップS8)。このようにピッチ検出手段26は、切り出し手段の一部を構成する。
【0022】
ピッチ検出が行われなかった場合、またはピッチ検出が行われ、上記の両レジスタの更新が行われた場合、レジスタPHASE、PH1、PH2の値をそれぞれ1歩進させる(ステップS10)。
【0023】
次にレジスタPHASE、WIDTHの値を比較する(ステップS12)。WIDTHは、後述するようにレジスタPITCHの値とピッチ変更係数PITCH−VRとを乗算して求めた1周期長を記憶しており、PHASEの値がこのWIDTHの値に達しているか否かを判断している。即ち、所定の再生ピッチにPHASEの値が達しているか否かを判断している。このWIDTHの値が再生ピッチ情報に相当する。
【0024】
PHASEの値がWIDTHの値に達していないと、後述するステップS32の波形処理へ進む。PHASEの値がWIDTHの値に達していると、レジスタPHASEの値を0とし(ステップS14)、操作子20によって設定されたピッチ変更係数PITCH−VR及びフォルマント変更係数FORMANT−VRをCPU22を介して読み込む(ステップS16)。
【0025】
そして新たなWIDTHの値を決定するために、PITCHの値とピッチ変更係数PITCH−VRとを乗算し、これをレジスタWIDTHに記憶させると共に、第1の波形のエンベロープ、第2の波形のエンベロープの周期を決定するために、PITCHの値をフォルマント係数FORMANT−VRで除算し、レジスタLENGTHに記憶させる(ステップS18)。
【0026】
次にレジスタLENGTHの値とレジスタWIDTHとの値を比較し(ステップS20)、LENGTHの値がWIDTHの値よりも大きいと、LENGTHの値をWIDTHの値とする(ステップS22)。これは、LENGTHの値がWIDTHの値を超えないようにするためである。即ち、後述するステップS32の波形読み出し処理において波形を加算するための処理経路が2つしか用意していないため、2つ以上の波形が重ならないようにするためである。
【0027】
なお、LENGTHの値がWIDTHの値以下であると、ステップS22のような処理を行わずに、ステップS24の処理を行う。また、ステップS22に続いて、ステップS24の処理も行われる。ステップS24では、LENGTHの値の逆数を求め、レジスタW−RATEに記憶させる。このW−RATEの値は、後述するようにWINDOW1、WINDOW2の値を歩進させるために使用する。また、ステップS24では、フラグFの値を今までの値と反転させることも行う。
【0028】
次に、ステップS24で反転させたフラグFの値が1であるか、−1であるかを判断する(ステップS26)。フラグFが1であると、第1の波形の読出開始のため、レジスタPH1、WINDOW1をそれぞれ0とし、ステップS8で決定したSADRSの値(切り出しアドレス)を切り出し開始アドレスレジスタSADRS1に記憶させる(ステップS28)。
【0029】
またステップS24で反転させたFの値が−1であると、第2の波形の読出開始のため、レジスタPH2、WINDOW2をそれぞれ0とし、ステップS8で決定したレジスタSADRSの値(切り出しアドレス)を切り出し開始アドレスレジスタSADRS2に記憶させる(ステップS30)。
【0030】
このようなステップS12、S14、S16、S18、S20、S22、S24、S26、S28、S30によって、2再生ピッチの周期長に相当する時間(WIDTHの値の2倍)経過ごとに、第1及び第2の波形データの切り出し開始アドレスが更新され、PHASEの値がWIDTHの値に達するごとにフラグFの値が反転されることになる。
【0031】
ステップS28またはS30に続いて、またはステップS12においてレジスタPHASEの値がレジスタWIDTHの値に達していないと判断された場合、波形読出処理を行う(ステップS32)。このように波形読みだし処理は、PHASEの値がWIDTHに達するまでは、WIDTHの値、LENGTHの値(ひいてはW−RATEの値)を変更せずに行われる。
【0032】
後述する波形読み出し処理では、W−RATEの値で、第1及び第2の波形のエンベロープENV1、ENV2の値が制御される。
【0033】
そして、W−RATE、ひいてはLENGTHの値は、ステップS18において検出ピッチをフォルマント変更係数FORMANT−VRによって変更したものであるので、波形読出処理される波形のピッチは、フォルマント変更係数FORMANT−VRに応じたものとなる。
【0034】
この波形読出処理では、図3に示すように、まずカウンタWINDOW1の値をW−RATEの値だけ歩進させる(ステップS34)。そして、歩進させたWINDOW1の値が1より小さいか、1以上であって2より小さいか、2以上であるかを判定する(ステップS36)。
【0035】
1より小さい場合、WINDOW1の値をレジスタENV1に記憶させ(ステップS38)、1以上であって2より小さいとき、2からWINDOW1の値を減算した値をレジスタENV1に記憶させ(ステップS40)、2以上のとき、ENV1の値を0とする(ステップS42)。
【0036】
ステップS34乃至S40は、W−RATEの値ずつ値が増加する鋸歯状波を作成し、これの値を1で折り返すことによって、ENV1を作成している。但し、WINDOW1の値が2を超えた場合には、ステップS42によってENV1を0としている。即ち、フォルマント係数FORMANT−VRと検出ピッチとに基づいて定めたLENGTHの値の逆数であるW−RATEずつ1まで増加し、その後、W−RATEずつ0まで減少する三角波を第1の波形のエンベロープとして作成している。
【0037】
また、ステップS38、S40またはS42に続いて、レジスタPH1の値(切り出しアドレスの歩進値)にフォルマント係数FORMANT−VRを乗算した値を、第1の波形の切り出し開始アドレスを記憶しているレジスタSADRS1の値と加算して、第1の波形の切り出しアドレスを記憶するレジスタADRS1に記憶させる(ステップS44)。これに続いて、リングメモリから切り出しアドレスADRS1で第1の波形の波形データDATA1を読出す(ステップS46)。
【0038】
このように読出アドレスはフォルマント係数FORMANT−VRによって変更されているので、結果的には波形データDATA1の読出速度が、フォルマント係数FORMANT−VRによって変更されている。
【0039】
これに続いて、WINDOW2の値をW−RATEだけ歩進させる(ステップS48)。歩進させたWINDOW2の値が1より小さいか、1以上で2未満であるか、または2以上であるか判断する(ステップS50)。そして、WINDOW2の値が1より小さいと、WINDOW2の値をレジスタENV2に記憶させ(ステップS52)、WINDOW2の値が1以上で2未満であると、2からWINDOW2の値を減算した値をレジスタENV2の記憶させ(ステップS54)、WINDOW2の値が2以上であると、ENV2の値を0とする(ステップS56)。このようにして、第2の波形のエンベロープを準備する。
【0040】
ステップS52、S54またはS56に続いて、レジスタPH2の値にフォルマント係数FORMANT−VRを乗算した値と第2の波形データ用の切り出し開始アドレスSADRS2の値とを加算した値を、第2の波形データ用の切り出しアドレス用のレジスタADRS2に記憶させる(ステップS58)。そして、リングメモリからアドレスADRS2で第2の波形の波形データ(DATA2)を読出す(ステップS60)。
【0041】
このようにして読出されたDATA1にENV1の値を乗算したものと、DATA2にENV2の値を乗算したものとを、加算したものを出力OUTとする(ステップS62)。このような波形読出処理が行われた後、図2に示すように出力OUTを送出する(ステップS64)。
【0042】
図2及び図3において、ステップS2、S4、S6、S8、S26、S28、S30、S46及びS60が切り出し手段に相当する。また、図1に示す操作子20、図2のステップS16及びS18でWIDTHを生成する手段が再生ピッチ情報生成手段に、同様に図1に示す操作子20、図2のステップS16でFORMANT−VRを生成する手段がフォルマント変更情報生成手段に相当する。図2及び図3の上述した以外のステップが再生オーディオ信号合成手段に相当する。
【0043】
図4は、ピッチ変更係数PITCH−VR及びフォルマント変更係数FORMANT−VRを共に1とした場合の各部の波形を示し、図5はピッチ変更係数PITCH−VRを1より大きくし、フォルマント変更係数FORMANT−VRを1とした場合の各部の波形を示し、図6はピッチ変更係数PITCH−VRを1、フォルマント変更係数FORMANT−VRを1より大きくした場合の各部の波形を示す。
【0044】
これら波形から明らかなように、この実施例では、出力される信号のピッチは、ピッチ変更係数PITCH−VRと検出ピッチとを乗算したWIDTHの値、即ちピッチ再生情報によって定められ、出力される信号の読出速度は、フォルマント変更係数FORMANT−VRによって定められる。そして、これらピッチ変更係数とフォルマント変更係数FORMANT−VRとは、操作子20の操作によって互いに独立して変更可能である。
【0045】
次に、同じ図1(b)のような構成において、フォルマント変更情報を時変する場合の実施形態を説明する。この場合のピッチ変換手段24、ピッチ検出手段26及び制御手段28が行う効果付加の処理は、図2と、その図2の波形読出処理S32の詳細な処理である図8及び図9とで表されている。この実施例において変調波形選択パラメータ(MSTART、MLENG)等の操作子20からの操作子設定も、更に入力されることになる。
【0046】
ピッチ変換手段24内には、例えばROMで構成した変調波形メモリが、設けられている。この変調波形メモリには、例えば図7に示すような、1から始まり1で終わる、それぞれ異なる波形の変調波形が、複数、例えば3つ記憶されている。図7に示すSA1、SA2、SA3は、これら各変調波形のスタートアドレスを表し、LENG1、LENG2、LENG3は、各変調波形の長さを表している。
【0047】
これら各変調波形のうち1つが、操作子20の操作によって選択され、選択された波形のスタートアドレスは、ピッチ変換手段24内に設けたレジスタMSTARTに、選択された波形の長さは、同レジスタMLENGに、それぞれ記憶される。
【0048】
他のレジスタやカウンタは、前述の実施形態と同様に使用され、さらに、レジスタWINDOW1、WINDOW2の値を1/2にした値を記憶するレジスタMAD1、MAD2と、MAD1、MAD2の値とMLENGの値とMSTARTの値とを用いて、変調メモリからの波形データを読出すアドレスを記憶するレジスタMODAD1、MODAD2が設けられている。
【0049】
この実施形態において、図2は前述の実施形態と同じであるため、前述の実施形態と異なる図8及び図9のフローチャートについて説明する。よって波形読出処理では、図8に示すように、ステップS34において、現在のWINDOW1の値をW−RATEの値だけ更新させ、その更新後のWINDOW1の値の1/2をレジスタMAD1に記憶させる(ステップS64)。次に、このレジスタMAD1の値を1と比較する(ステップS66)。MAD1の値が1より大きい場合には、MAD1の値を1とする(ステップS68)。
【0050】
ステップS66において、レジスタMAD1の値が1より小さい場合、またはステップS68に続いて、レジスタMAD1の値とMLENGの値とを乗算した値とMSTARTの値とを加算した値を、第1の波形データの読出速度の変調データのアドレスとして、レジスタMODAD1に記憶させる(ステップS70)。これに続いて、変調波形メモリにおけるMODAD1の値に対応するアドレスからデータMODDATA1を読出す(ステップS72)。
【0051】
なお、ステップS64において、WINDOW1の値を1/2としているのは、ステップS70におけるMODAD1の値が選択された変調波形メモリの最終アドレスを超えないようにするためである。
【0052】
これに続いて、ステップS36、S38、S40、S42を実行して、第1の波形用のエンベロープを、レジスタENV1に記憶させる。
【0053】
次に、ステップS10で歩進させたカウンタPH1の値と、フォルマント係数FORMANT−VRとステップS72で求めたMODDATA1とを乗算し、この乗算値に、ステップS28で定めた切り出し開始アドレス用レジスタSADRS1の値を加算した値を、レジスタADRS1に記憶させる(ステップS44a)。これを第1の波形の波形データの読出アドレスとし、リングメモリにおける、この波形データの読出アドレスから、第1の波形の波形データDATA1を読出す(ステップS46a)。この「その他の実施例」では、ステップS34、S64、S66、S68、S70、S72とフォルマント変更係数FORMANT−VRを生成する手段がフォルマント変更情報生成手段に相当する。
【0054】
次に、図8のフローチャートに続く図9に示すように、カウンタWINDOW2の値をW−RATEの値だけ歩進させる(ステップS48)。そして、このWINDOW2の値を1/2として、レジスタMAD2に記憶させる(ステップS74)。そして、このMAD2の値を1と比較する(ステップS76)。
【0055】
MAD2の値は1より大きいと、MAD2の値は1に修正される(ステップS78)。ステップS76において、MAD2の値が1以下の場合、またはステップS76に続いて、MAD2の値とMLENGの値との乗算値にMSTARTの値を加算した値を、レジスタMODAD2に記憶させる(ステップS80)。変調波形メモリにおけるMODAD2の値に対応するアドレスから、第2の波形データ用の変調データMODDATA2を読出す(ステップS82)。
【0056】
ステップS74において、WINDOW2の値を1/2としているのは、ステップS64においてWINDOW1の値を1/2としているのと同一の理由である。
【0057】
これに続いて、ステップS50、S52、S54、S56を実行して、第2の波形用のエンベロープを、レジスタENV2に記憶させる。
【0058】
次に、ステップS10で歩進させたカウンタPH2の値と、フォルマント係数FORMANT−VRとステップS82で求めたMODDATA2とを乗算し、この乗算値に、ステップS30で定めた切り出し開始アドレス用レジスタSADRS2の値を加算した値を、レジスタADRS2に記憶させ、第2の波形の波形データの読出アドレスとする(ステップS58a)。前述と同様に、ステップS48、S74、S76、S78、S80、S82とフォルマント変更係数FORMANT−VRを生成する手段がフォルマント変更情報生成手段に相当する。リングメモリにおける、この波形データの読出アドレスから、第2の波形データDATA2を読出す(ステップS60a)。
【0059】
そして、第1の波形データDATA1とENV1の第1のエンベロープとを乗算した値と、第2の波形データDATA2とENV2の第2のエンベロープとを乗算した値とを加算したものを、出力OUTとする(ステップS62a)。以下、図2に示すステップS64を実行する。
【0060】
このように、この実施形態では、変調波形メモリに記憶されている変調波形を使用して、第1及び第2の波形データの読出アドレスを変調している。従って、従来にない独特な効果を入力可聴周波数信号に付加することができる。しかも、この変調をかけるために使用する変調波形データは、複数準備されており、そのうちの任意のものを使用できるので、様々な効果を付加することができる。またフォルマント変更係数FORMANT−VRの値を操作子20の操作によって変更することによって、変調の程度を変更することができるので、フォルマント変更係数FORMANT−VRの値を変更することによって、同じ変調波形データを使用しても、異なった効果を付加することができる。
【0061】
次に前述の2つの実施形態いずれかを実施した、図1(b)の構成の代わりに、図1(c)に示す構成において本発明を実施した場合について説明する。図1(c)に示す実施例では、図1(b)の構成におけるピッチ変換手段24と入力端子23との間に、波形変換手段30とフィルタ手段32とを縦続接続したものが更に付加されている。また、制御手段28には、CPU22を介して、ピッチ変更係数PITCH−VR、フォルマント変更係数FORMANT−VRの他に、波形変換手段30の設定パラメータ、フィルタ手段32の設定パラメータ等の操作子20からの操作子設定も入力される。
【0062】
波形変換手段30は、入力された波形の所定レベル以上をクリップさせる所謂ディストーション回路であり、その詳細は公知であるので、説明は省略する。
【0063】
フィルタ手段32としては、公知の櫛型フィルタ、ローパスフィルタ、ハイパスフィルタ等、或いはこれらを組み合わせたものを使用することもできるが、この実施形態では、例えば特開平6−4076号公報に開示されているような、入力楽音信号のピッチに応じてその特性が変化するものを使用している。
【0064】
即ち、特開平6−4076号公報に開示されているフィルタ手段では、入力楽音信号のピッチに対応して、フィルタの特性を制御して、入力楽音信号の倍音に対して適切な周波数特性を得ている。
【0065】
従って、この実施形態では、波形変換手段30で入力端子23に供給された可聴周波数信号を歪ませた後、フィルタ手段32によって倍音に対して適切な周波数特性を持たせた上で、上述したようにフォルマントの読出速度に変調をかけ、この変調状態をフォルマント変更係数FORMANT−VRによって調整し、その上に出力ピッチもピッチ変更係数PITCH−VRによって調整しているので、前述の2つの実施形態の効果に加え、さらに従来にない独特の効果を付加することができる。
【0066】
上記の両実施形態では、音素である第1及び第2の波形データを発生する、2つの処理経路を備え、それぞれの処理経路では再生ピッチの2倍の周期で音素を再生するようにし、それらを合成するようになされていたが、3つ以上の処理経路を備え、合成するようにしてもよい。さらに、上記の実施形態では、ピッチ検出手段を用いたが、これに代えて、例えば入力可聴周波数信号の倍音の周波数の検出手段を用いてもよい。
【0067】
本発明の第2の実施形態について説明する。この実施形態では、図10に示すように、例えばカラオケ演奏部40からのカラオケ演奏に従って歌った歌声を図1に示したのと同様にディジタル化したディジタル音声信号が、音声入力端子42からコーラス付加部44に入力され、ここでコーラス効果を付加して出力することが可能である。この場合、コーラス付加部44では、音声入力のピッチ及びフォルマントを変更したものと元の音声入力とを合成することによってコーラス効果を付加している。
【0068】
このピッチの変更及びフォルマントの変更に、本発明を利用している。このピッチの変更及びフォルマントの変更のための情報は、操作子46の操作によってコーラス付加部44に与えられる。また、カラオケ演奏部40からピッチ情報やレベル情報がMIDI信号としてコーラス付加部44に供給される。また、これらピッチ情報やレベル情報は、カラオケ演奏部40からではなく、外部に設けられた別の機器、例えば演奏可能なキーボードからの外部入力MIDI信号としてコーラス付加部44に供給されることもある。
【0069】
また、コーラス付加部44によって付加されるコーラスには、予め記憶している演奏情報に従ってコーラスを付加するカラオケモードと、大人数でコーラスしているようなクワイヤモードとの2つがある。この実施形態では、カラオケモードの場合には、ピッチ情報やレベル情報は、カラオケ演奏部40からコーラス付加部44に供給され、クワイヤモードの場合に、上記外部機器から供給される。
【0070】
カラオケ演奏部40は、自動演奏手段48と楽音発生手段50とを有し、これらを制御するカラオケ制御手段52も有している。自動演奏手段48は、従来公知の自動演奏装置に相当するもので、複数曲の自動演奏情報を記憶している。また、楽音発生手段50は、従来公知の音源装置に相当するものである。
【0071】
操作子46の操作に応じて後述する操作子制御手段54がカラオケ制御手段52に供給した情報に従って、カラオケ制御手段52が発生した指令に応じて、自動演奏手段48は、自動演奏情報から演奏曲情報を選択し、その情報に従って、楽音発生手段50の自動演奏を行い、伴奏(カラオケ)の演奏を行う。自動演奏情報には、コーラスパートの演奏情報も記憶されており、これに上述したピッチ情報やレベル情報が含まれ、コーラス付加部44にMIDI信号の形態で供給される。
【0072】
コーラス付加部44は、コーラス効果付加手段56と、コーラス制御手段58とを含んでいる。コーラス効果付加手段56は、図11に示すように音声入力端子42から供給されたディジタル音声信号がそれぞれ供給される主チャンネル60Mと、複数の例えば4つのコーラスチャンネル60C1乃至60C4を有している。
【0073】
主チャンネル60Mは、ディジタル音声信号のレベルを調整する乗算器62Mと、レベル調整されたディジタル音声信号に、例えば残響効果等の効果を付加する効果付加手段64Mとを有している。
【0074】
コーラスチャンネル60C1乃至60C4は、入力されたディジタル音声信号のピッチとフォルマントとを変更し、さらに、残響効果等の効果を付加するピッチ変換手段66C1乃至66C4と、これらピッチ変換手段66C1乃至66C4の出力をそれぞれ遅延させる遅延手段68C1乃至68C4と、これら遅延手段68C1乃至68C4の出力のレベルをそれぞれ調整する乗算器62C1乃至62C4を有している。
【0075】
ピッチ変換手段66C1乃至66C4は、例えば図1(c)に示す構成において、ピッチ検出手段を除いたものに対応し、波形変換手段30、フィルタ手段32が、ここでいう効果付加手段に相当する。なお、この効果付加手段としては、例えば公知の残響付加装置や、図12に示すように遅延手段76の遅延時間を低周波発振器78によって変更させて、疑似的に合奏しているような効果を付加する疑似コーラス効果付加装置でもよい。各ピッチ変換手段66C1乃至66C4において使用するために、ディジタル音声信号のピッチを検出するピッチ検出手段74が設けられている。また、各ピッチ変換手段66C1乃至66C4に効果付加手段を設ける必要がない場合もある。
【0076】
これら各コーラスチャンネル60C1乃至60C4の出力は、加算器70で合成された後、効果付加手段64Cによって、例えば残響効果等の効果が付加される。なお、この効果付加手段64Cは、後述するように効果パラメータの設定によって、図12の擬似コーラス効果付加装置としても機能する。この効果付加手段64Cの出力は、効果付加手段64Mの出力と加算器72によって合成されて、出力される。
【0077】
また、各ピッチ変換手段66C1乃至66C4には、フォルマント変更情報、例えばフォルマント変更係数F1乃至F4、ピッチ変更情報、例えばピッチ変更係数P1乃至P4、コーラス音のピッチ情報SP1乃至SP4、ピッチ変換手段66C1乃至66C4内の効果付加手段の効果付加情報e1乃至e4が、コーラス制御手段58からそれぞれ供給されている。
【0078】
また、各遅延手段68C1乃至68C4に遅延情報D1乃至D4がコーラス制御手段58から供給されている。さらに、各乗算器62M、62C1乃至62C4に、レベル情報L0乃至L4が、コーラス制御手段58から供給されている。同様に、効果付加手段64M、64Cに、効果付加パラメータEM及びECがそれぞれコーラス制御手段58から供給されている。なお、効果付加パラメータは、それぞれ複数の効果パラメータから構成されている。
【0079】
コーラス制御手段58は、後述するが、操作子制御手段54からの情報と、カラオケ演奏部40または外部機器からのMIDI信号とに基づいてこれら各情報を生成する。
【0080】
コーラス付加部44は、例えば図1(a)に示したDSPとRAMとによって構成することができ、カラオケ制御手段52、自動演奏手段48及び操作子制御手段54は、図1に示したCPUによって構成することができる。
【0081】
ピッチ変換手段66C1乃至66C4は、図1(c)に示すピッチ変換手段24をそのまま使用してもよいが、この実施形態では、ピッチ変換手段24よりもつながりのよい自然な音声信号を得られるように、ピッチ変換手段66C1乃至66C4は、改良されている。
【0082】
図13(a)は、例えば音声入力端子42に供給されるディジタル音声信号の原波形を示したもので、高調波が含まれ、その高調波が変化するものである。この波形の零クロス点、例えばs1、s2、s3・・・を基準としてピッチを測定し、ピッチ検出手段74がピッチデータを検出する。通常、音声信号では急激で一時的なピッチの変化は生じないので、ピッチ検出時に、そのような急激な変化があった場合には、ピッチ検出に失敗したと判断して、ピッチ検出手段74は、検出データを出力しないように処理している。具体的には、図13(a)のピッチcは、同bに比較して差が大きすぎるので、ピッチデータとして出力されない。同様に、同dも同cに比較して差が大きすぎるので、ピッチデータとして出力されない。結局、ピッチ検出手段74は、ピッチデータとしてa、b、e・・を出力する。
【0083】
図13(b)は、図13(a)の波形の基本波を示したもので、以下、この基本波を用いて説明する。ピッチの変更やフォルマントを変更するために、RAMに構成したリングメモリから波形を読出す(切り出す)が、例えば同図(c)に示すように零クロス点s1からピッチデータaに相当する期間の波形を切り出し、次に零クロス点s2からピッチデータbに相当する期間の波形を切り出し、ピッチデータcの検出に失敗しているので、再び零クロス点s2からピッチデータbを読出すことを、ピッチの検出に成功するまで繰り返し、ピッチ検出に成功したとき、その零クロス点s5からピッチデータeに相当する波形を切りだすと、基本波形については波形の不連続が発生する。
【0084】
図13(d)に示すように、まず零クロス点s1を基準としてピッチデータaに相当する期間の波形を切り出す。この切り出し後、s1+aの演算を行い、その結果s2を基準としてピッチデータbに相当する期間の波形を切り出す。次に、s2+bの演算を行い、その結果s3を基準として、ピッチcの検出に失敗しているので、ピッチデータbに相当する期間の波形を切り出す。次に、s3+bの演算を行い、その結果ss4を基準としてピッチdの検出に失敗しているので、ピッチデータbに相当する期間の波形を切り出す。次に、ss4+bの演算を行い、その結果ss5を基準とし、ピッチデータeの検出に成功しているので、ピッチデータeに相当する期間の波形を切り出す。次にss5+eの演算を行い、その結果ss6を基準としてピッチデータfに相当する期間の波形を切り出す。このように検出ピッチに従って、切り出しの基準を更新しているので、基本波成分の不連続が発生することがない。
【0085】
この実施形態では、このようにして波形を切り出した後に、ピッチの変更やフォルマントの変更を行っている。以下、図14乃至図17を参照しながら、上記の切り出し、ピッチ及びフォルマントの変更について説明する。なお、説明を簡略化するため、1コーラスチャンネルにおけるピッチ変換手段についてのみ説明する。なお、今までは各ピッチ変換手段に供給されるピッチ変更係数をP1乃至P4として説明したが、以下の説明ではPITCH−VRとして表し、同様にフォルマント変更係数をF1乃至F4と表したが、以下の説明ではFORMANT−VRと表す。
【0086】
なお、第1の実施形態と同様に、レジスタPITICH、SADRS、カウンタPHASE、PH1、PH2、レジスタWIDTH、LENGTH、ENV1、ENV2、W−RATE、SADRS1、SADRS2、ADRS1、ADRS2、フラグFを用いている。
【0087】
サンプリングデータ(ディジタル音声信号)が入力端子42に供給されると、図2のステップS2と同様に、図示していないRAMに構成されたリングメモリの書き込みアドレスIBUF−PTRにサンプリングデータが書き込まれる(ステップS2a)。但し、書き込みアドレスIBUF−PTRは、サンプリングデータが入力端子42に供給されるごとに、1づつ歩進している。次に、ステップS4と同様にピッチ検出処理が行われ(ステップS4a)、ステップS6と同様に、ピッチ検出が行われたか判断し(ステップS6a)、検出結果でピッチ情報PITCHを更新する(ステップS8a)。ステップS8では、ピッチ情報PITCHの更新の他に、切り出しアドレスSADRSも、ピッチ検出で求められた零クロス位置に更新していたが、ステップS8aでは、SADRSの更新は、行わず、別途にステップS100によって行われる。このステップS100での切り出しアドレスの更新は、図13に関連して説明したように、検出ピッチに従って、切り出しの基準を更新するもので、詳細は後述する。また、ステップS4aにおいて、ピッチの検出が行われなかった場合にも、ステップS100が実行される。
【0088】
ステップS100に続いて、ステップS10と同様にレジスタPHASE、PH1、PH2の値をそれぞれ1歩進させる(ステップS10a)。次に、ステップS12と同様に、レジスタPHASE及びWIDTHの値を比較する(ステップS12a)。PHASEの値がWIDTHの値に達していないと、後述するステップS32aの波形読み出し処理へ進む。PHASEの値がWIDTHの値に達していると、ステップS14と同様に、レジスタPHASEの値を0とする(ステップS14a)。
【0089】
次に、コーラス制御手段58からのピッチ変更係数PITCH−VR、フォルマント変更係数FORMANT−VR及び再生ピッチ情報SPITCHを入力する(ステップS16a)。ステップS16では、操作子によって設定されたピッチ変更係数PITCH−VR、フォルマント変更係数FORMANT−VRのみを入力していたのに対し、ステップS16aでは、操作子46の操作に応じて設定されたピッチ変更係数PITCH−VR、フォルマント変更係数FORMANT−VRの他に、カラオケ演奏部40または外部機器からのMIDI信号に基づく再生ピッチ情報SPITCHが入力されている。
【0090】
そして新たなWIDTHの値(特許請求の範囲に記載の再生ピッチ情報に相当)を決定するために、再生ピッチ情報SPITCHとピッチ変更係数PITCH−VRとを乗算し、これをレジスタWIDTHに記憶させると共に、第1の波形のエンベロープ、第2の波形のエンベロープの周期を決定するために、PITCHの値をフォルマント係数FORMANT−VRで除算し、レジスタLENGTHに記憶させる(ステップS18a)。ステップS18では、検出したピッチ情報PITCHにPITCH−VRを乗算していたのに対し、ステップS18aではSPITCHとPITCH−VRとを乗算している点が相違する。
【0091】
次に、図15に示すように、レジスタLENGTHの値を、例えば100Hzの周期Pと比較する(ステップS102)。LENGTHの値がPよりも大きければ、LENGTHの値をPに変更する(ステップS104)。これらステップS102、104は、ディジタル音声信号として低い周波数のものが入力されても、大きな遅延が付加されないようにするためである。具体的には、100Hzよりも低い周波数のディジタル音声信号が入力された場合でも、遅延を100Hzの遅延時間10m秒に制限するためのものである。
【0092】
ステップS104に続いて、またはステップS102においてLENGTHの値がPよりも小さい場合、ステップS20と同様にLENGTHの値とWIDTHの値とを比較し(ステップS20a)、LENGTHの値がWIDTHの値よりも大きいと、ステップS22と同様に、LENGTHの値をWIDTHの値とする(ステップS22a)。
【0093】
なお、LENGTHの値がWIDTHの値以下であると、ステップS22aの処理を行わずに、ステップS24aの処理を行う。またステップS22aに続いてもステップS24aの処理を行う。ステップS24aの処理は、ステップS24と同様に、LENGTHの値の逆数を求め、レジスタW−RATEに記憶させる。このW−RATEの値は、レジスタWINDOW1、WINDOW2の値を歩進させるために使用する。また、ステップS24aでは、フラグFの値を反転させる。ステップS24aは、ステップS12aにおいてPHASEの値がWIDTHの値以上になったときに行われているので、フラグFの反転も、PHASEの値がWIDTHの値以上になったときに行われる。
【0094】
次に、ステップS26と同様にフラグFの値を0と比較し(ステップS26a)、フラグFが1であるか、−1であるかを判断している。フラグFの値が1であると、ステップS28と同様にレジスタPH1、WINDOW1をそれぞれ0とし、ステップS100で決定したSADRSの値を切り出し開始アドレスレジスタSADRS1に記憶させる(ステップS28a)。
【0095】
また、フラグFの値が−1であると、ステップS30と同様に、レジスタPH2、WINDOW2をそれぞれ0とし、ステップS100で決定したレジスタSADRSの値を切り出し開始アドレスレジスタSADRS2に記憶させる(ステップS30a)。
【0096】
ステップS28aまたは30aに続いて、またはステップS12aにおいてレジスタPHASEの値がWIDTHの値に達していないと判断されたとき、ステップS36と同様な波形読み出し処理を行う(ステップS32a)。この波形読み出し処理は、図3に示したものと同様なものであるので、詳細な説明を省略する。そして、波形読み出し処理が行われた波形が、ステップS64と同様に送出される(ステップS64a)。
【0097】
例えばSPITCH=PITCHとし、PITCH−VR及びFORMANT−VRをそれぞれ1とした場合、図4と同様な出力波形が得られる。また、SPITCH=PITCH、PITCH>1、FORMANT−VR=1の場合、図5と同様な出力波形が得られる。また、SPITCH=PITCH、PITCH−VR=1、FORMANT−VR>1の場合、図6と同様な波形が得られる。
【0098】
なお、PITCH=SPITCH、PITCH−VR<1、FORMANT−VR=1とした場合、図5において、2*WIDTHとENV1、ENV2の周期が等しくなり、同図(h)、(i)のレベル0の部分がなくなる。同様に、PITCH=SPITCH、PITCH−VR=1、FORMANT−VR<1とした場合、図5において、2*WIDTHとENV1、ENV2の周期が等しくなり、同図(h)、(i)のレベル0の部分がなくなる。
【0099】
次に、図16及び図17を参照して、ステップS100の切り出しアドレスの更新処理について説明する。ステップS2aにおいて、サンプリングデータが書き込まれているリングメモリは、アドレス0からFFF(hex)を有し、書き込みアドレスIBUF−PTRは、図17に実線で示すように鋸歯状波のように変化する。即ち、アドレスFFF(hex)まで到達すると、次のアドレスは0となる。
【0100】
この切り出しアドレスの更新処理は、波形読み出し処理においてサンプリングデータを切り出す際の基準となる読み出しアドレスADRS1、ADRS2を設定するための前提となるもので、これらアドレスADRS1、ADRS2が書き込みアドレスIBUF−PTRを追い越さないようにしてある。そのため、まず、現在の書き込みアドレスIBUF−PTRを読み出しアドレスが追い越すことがない距離(アドレス差)DELAYを、現在の書き込みアドレスIBUF−PTRから減算し、これと(1000(hex)−1)のアンドを取った結果を基準読み出しアドレスADRSとして記憶している(ステップS106)。このアンドを取っているのは、上記の減算値がリングメモリのアドレス範囲0からFFF(hex)内になるようにするためである。なお、このDELAYは、図15のステップS102で用いたPの値と等しく設定してある。
【0101】
次に、このADRSと現在の切り出しアドレスSADRSとを比較し(ステップS108)、SADRSがADRSよりも大きければ、ADRSに1000(hex)を加算する(ステップS110)。これは、例えば図17に示すようにADRSが一時的にSADRSよりも小さくなることがあり、そのままでは以後の処理に不都合な影響を与えるため、これを補正するためである。
【0102】
ステップS110に続いて、或いはステップS108においてADRSがSADRSよりも大きいと判断されたとき、ADRSと(SADRS+PITCH)を比較する(ステップS112)。このPITCHはステップS8aにおいて更新されたものである。ADRS≧(SADRS+PITCH)であると、即ち、ADRSとSADRSとの間にPITCH以上の差が生じたとき、(SADRS+PITCH)&(1000(hex)−1)の演算を行い、この演算結果にSADRSの値を更新する(ステップS114)。また、ステップS112において、ADRS<(SADRS+PITCH)であると判断されると、ステップS114は実行されない。この結果、図13(d)に示したように検出ピッチPITCHに従って、切り出しの基準SADRSが更新され、SADRSは図17に階段状に示す実線のようにPITCHずつ変化する。
【0103】
次に図18を参照して、操作子46について説明する。操作子46は、MODEスイッチ80を含み、これは、カラオケ演奏においてコーラスを付加するカラオケモードと、外部機器からのMIDI信号によってコーラスを付加するクワイアモードとを設定するためのものである。このスイッチ80は、オン/オフの2状態を切り換えるスイッチで、オンのときにクワイアモードに設定され、オフのときにコーラスモードに設定される。なお、オンのとき、このスイッチ80に設けられている表示手段、例えばLED82が点灯し、オフのときのLED82が消灯する。
【0104】
操作子46には、PITCHスイッチ84、FORMANTスイッチ88、EFFECTスイッチ92及びレベル操作子96が設けられている。これらは、コーラス効果付加手段56の各コーラスチャンネル60C1乃至60C4のピッチ変換手段66C1乃至66C4、遅延手段68C1乃至68C4、乗算器62C1乃至62C4に各種パラメータを設定するためのものである。なお、いずれのコーラスチャンネルに上記各種パラメータを設定するかは、CH−SELECTスイッチ100の操作によって決定される。CH−SELECTスイッチ100は、各コーラスチャンネル60C1乃至60C4に対応する4つのスイッチ100a乃至100dを有し、これらスイッチ100a乃至100dには、それぞれLED101a乃至101dが設けられている。
【0105】
PITCHスイッチ84は、−1OCTスイッチ84a、NORMALスイッチ84b、+1OCTスイッチ84cを含んでいる。PITCHスイッチ84は、付加するコーラスの音声信号の音質(音色)を、ピッチ変換することによって変更するためのもので、より詳しく言えば、コーラス音声信号のピッチを、カラオケ演奏部40または外部機器からのMIDI信号で指定された音高のままで出力するか、オクターブ単位で音高を上げるか下げるかすることを指令するためのものである。
【0106】
−1OCTスイッチ84aは、コーラス音声信号をMIDI信号で指定された音高よりも1オクターブ低く再生するためのモードで、例えば女性の音声が入力される場合に、男性のコーラスを付加したい場合に操作する。NORMALスイッチ84cは、MIDI信号で表されている音高のままでコーラスを付加する場合に操作する。+1OCTスイッチ84cは、再生されるコーラス音声信号をMIDI信号で指定された音高よりも1オクターブ高くする場合に操作され、例えば男性の音声が入力される場合に、女性のコーラスを付加する場合に操作される。
【0107】
なお、これら3つのスイッチ84a乃至84cには、LED86a乃至86cがそれぞれ設けられており、これらLED86a乃至86cのうち、操作されたスイッチに設けられているLEDが点灯する。これら3つのスイッチ84a乃至84cは、例えばスイッチ84aが既に操作されている状態で、スイッチ84bが操作されると、スイッチ84bによる操作が有効となる。このように後になされた操作が優先になるように構成されている。なお、CH−SELECTスイッチ100も同様に後操作優先に構成されている。
【0108】
FORMANTスイッチ88は、入力音声信号のフォルマントを変更して、コーラス音声信号の音質を変更するためのもので、LOWスイッチ88a、NORAMALスイッチ88b、HIGHスイッチ88cを有している。LOWスイッチ88aは、コーラス音声信号のフォルマントを入力音声信号よりも下げて太い声質に変える場合に操作される。NORMALスイッチ88bは、コーラス音声信号のフォルマントを入力音声信号のフォルマントと同一にする場合に操作される。HIGHスイッチ88cは、フォルマントを上げて細い声質にする場合に操作される。これらスイッチ88a乃至88cにも、LED90a乃至90cがそれぞれ設けられており、スイッチ88a乃至88cのうち操作されたものに設けられているLEDが点灯する。これら3つのスイッチ86a乃至86cも、後になされた操作が有効になるように構成されている。
【0109】
PITCHスイッチ84とFORMANTスイッチ88との操作例としては、例えば次のようなものがある。入力音声信号が男性で、MIDI信号によって指定されたコーラスピッチ情報が男性の音域の範囲にあるとすると、PITCHスイッチ84中の+1OCTスイッチ84cを操作して、コーラス音声信号を1オクターブ上げて、FORMANTスイッチ88中のHIGHスイッチ88cを操作して、コーラス音声信号のフォルマントを上げる。この場合、男性の音声信号が入力されても、コーラス音声信号は女性の音域で、女性のフォルマントで合成されるようになる。
【0110】
各ピッチ変換手段66c1乃至66c4及び遅延手段68c1乃至68c4にそれぞれ供給する効果パラメータe1乃至e4、遅延情報D1乃至D4を、例えばそれぞれ内容の異なる4種類ずつ、カラオケ用とクワイア用にそれぞれ、予め図示していないプリセットメモリに記憶してあり、EFFECTスイッチ92は、それらのうちいずれを使用するかを指定するためのもので、各種類に対応して設けられた4つのスイッチ92a乃至92dを有している。これらスイッチ92a乃至92dにもLED94a乃至94dがそれぞれ設けられており、操作されたスイッチに対応するLEDが点灯する。これらスイッチ92a乃至92dも後操作優先に構成されている。
【0111】
レベル操作子96は、アップ操作子102、ダウン操作子104及び8セグメント表示部106を有し、表示部106を有し、アップ操作子102及びダウン操作子104の操作に応じて表示部106に表示される数値をアップまたはダウンさせて、乗算器62c1乃至62c4のうちCH−SELECTスイッチ100によって指定されたチャンネルの乗算器のレベルを適当な値に設定するものである。
【0112】
また、操作子46には、各コーラスチャンネル60c1乃至60c4に共通に遅延手段68c1乃至68c4をオンとするかオフとするかを指定するためにDELAYスイッチ98が設けられている。このDELAYスイッチ98は、オンのとき1を、オフのとき0を設定し、オンのときLED108が点灯する。
【0113】
さらに、効果付加手段64Mに対するそれぞれ内容の異なる例えば4種類の効果パラメータが、それぞれカラオケ用及びクワイア用プリセットメモリ(図示せず)に記憶されており、これらのうちいずれを使用するかを選択するために、操作子46にはEFFECT Mスイッチ110が設けられている。このEFFECT Mスイッチ110は、上記4種類に対応して4つのスイッチ110a乃至110dを有し、使用しようとする種類に対応するスイッチを操作することによって、後述するようにして効果付加手段64Mに設定される。なお、カラオケ用とクワイア用のいずれを使用するかは、MODEスイッチ80の操作に従う。これらスイッチ110a乃至110dにも、LED112a乃至112dが設けられ、操作されたスイッチに設けられているものが点灯する。これらスイッチも、後操作優先に構成されている。
【0114】
同様に、効果付加手段64Cに対するそれぞれ内容の異なる例えば4種類の効果パラメータがカラオケ用及びクワイア用プリセットメモリ(図示せず)に記憶されており、これらのうちいずれを使用するかを選択するために、操作子46にはEFFECT Cスイッチ114が設けられている。このEFFECT Cスイッチ114は、上記4種類に対応して4つのスイッチ114a乃至114dを有し、使用しようとする種類に対応するスイッチを操作することによって、後述するようにして効果付加手段64Cに指定された種類のパラメータを設定できる。カラオケ用及びクワイア用プリセットメモリのいずれを使用するかは、MODEスイッチ80の操作に従う。これらスイッチ114a乃至114dにも、LED116a乃至116dが設けられ、操作されたスイッチに設けられているものが点灯する。これらスイッチも、後操作優先に構成されている。
【0115】
また、DIRECT LEVEL操作子118も、操作子46には設けられている。これは、主チャンネル60Mの乗算器62Mのレベル情報を設定するためのもので、アップ操作子120、ダウン操作子122及び8セグメント表示部124を有し、アップ操作子120及びダウン操作子122の操作に応じて表示部124に表示される数値をアップまたはダウンさせて、乗算器62Mのレベルを適当な値に設定するものである。
【0116】
次に、図19を参照しながら、コーラス制御手段58が行う処理について説明する。まず、操作子制御手段54から入力されるMODEスイッチ80の設定状態を判定する(ステップS116)。なお、後述するように操作子制御手段54が、操作子46を所定の周期で操作して、どの操作子が操作されているかを検出するごとに、コーラス制御手段58は、後述する操作子処理を行い、その結果としてMODEスイッチ80の設定状態が入力される。
【0117】
ここでカラオケモードと判定されると、MIDI入力信号をカラオケ演奏部40から入力するように設定し、プリセットメモリをカラオケ用に設定し、後述するチャンネルメモリをカラオケ用に設定する(ステップS118)。これに続いて、後述するカラオケモード用パラメータ処理を行う(ステップS120)。また、モード変更が変更されたかを判定する(ステップS122)。これも操作子処理の結果として得られたMODEスイッチ80の状態に応じて行う。モードが変更されていなければ、ステップS122を繰り返し、モードが変更されていると、ステップS116に戻る。
【0118】
ステップS116において、モードがクワイアモードであると判断されると、MIDI信号を外部機器から入力するように設定し、プリセットメモリをクワイヤ用に設定し、後述するチャンネルメモリをクワイア用に設定する(ステップS124)。次に、後述するクワイアモード用パラメータ処理を行う(ステップS126)。そして、モード変更が変更されたかを判定する(ステップS128)。これも操作子処理の結果として得られたMODEスイッチ80の状態に応じて行う。モードが変更されていなければ、ステップS128を繰り返し、モードが変更されていると、ステップS116に戻る。
【0119】
次に、図20及び図21を参照しながら、コーラス制御手段58が行う操作子処理について説明する。操作子制御手段54は、公知のように所定周期ごとに操作子46を走査して、いずれの操作子が操作されているかの情報を、コーラス制御手段58に供給する。コーラス制御手段58は、この情報が入力されるごとに、操作子処理を行う。なお、操作子制御手段54は、図21に示すようにレジスタ群126と、カラオケモード用のチャンネルメモリ128と、クワイアモード用にチャンネルメモリ130とを有している。
【0120】
レジスタ群126は、各コーラスチャンネル60C1乃至60C4に対応させて、PITCHスイッチ84の操作によって設定されたピッチ変更係数P1乃至P4(PITCH−VRに相当)、FORMANTスイッチ88の操作によって設定されたフォルマント変更係数F1乃至F4(FORMANT−VRに相当)、レベル操作子96の操作によって設定された乗算器62c1乃至62c4へのレベル情報L1乃至L4、EFFECTスイッチ92の操作によってそれぞれ設定された効果パラメータe1乃至e4及び遅延情報D1乃至D4をそれぞれ記憶するレジスタを有している。また、DELAYスイッチ98の操作によって設定されたオンまたはオフの情報を記憶するレジスタを有している。さらに、EFFECT Mスイッチ110の操作によって設定された効果パラメータEM(=EM1乃至EMm)を記憶するためのレジスタ、EFFECTスイッチ Cの操作によって設定された効果パラメータEC(=EC1乃至ECm)を記憶するレジスタ、主チャンネルの乗算器62Mに対するレベル情報L0を記憶するためのレジスタを有している。
【0121】
カラオケ用チャンネルメモリ128は、カラオケモード用にレジスタ群126に設定されたピッチ変更係数P1乃至P4、フォルマント変更係数F1乃至F4、レベル情報L1乃至L4、効果情報e1乃至e4、遅延情報D1乃至D4を、記憶するためのものである。またクワイア用チャンネルメモリ130は、クワイアモード用にレジスタ群126に設定されたピッチ変更係数P1乃至P4、フォルマント変更係数F1乃至F4、レベル情報L1乃至L4、効果情報e1乃至e4、遅延情報D1乃至D4を、記憶するためのものである。
【0122】
なお、カラオケ用チャンネルメモリ128を使用するか、クワイア用チャンネルメモリ130を使用するかは、ステップS118またはS124によって決定されている。また、上述したプリセットメモリも使用するが、コーラス用またはクワイア用いずれのメモリを使用するかも、ステップS118またはS124によって決定されている。また、この処理では、CH−SELECTスイッチ100の前回の操作状態を記憶するためのフラグFlg ONと、チャンネルメモリへの書き込みが終了したかを判断するためのFlg Mと、CH−SELECTスイッチ100の操作されている時間をカウントするためのTカウンタとを使用する。
【0123】
まず、操作子制御手段54から供給された各操作子46の操作状態を検出し、レジスタ群126の対応するものにセットし、操作されている操作子に対応する表示手段を表示する(ステップS130)。但し、PITCHスイッチ84、FORMANTスイッチ88、EFFECTスイッチ92、LEVEL操作子96の操作状態は、CH−SELECTスイッチ100によって選択されたチャンネルに対応するレジスタに記憶される。また、PITCHスイッチ84では、−1OCTスイッチ84aが操作された場合には0.5を、NORMALスイッチ84bが操作された場合には1を、+1OCTスイッチ84cが操作された場合には2.0を、選択されたチャンネルのピッチ変更係数のレジスタPに記憶させる。同様にFORMANTスイッチ88では、LOWスイッチ88aが操作された場合には0.5を、NORAMALスイッチ88bが操作された場合には1を、HIGHスイッチ88cが操作された場合には2.0が、選択されたチャンネルのレジスタFに記憶される。
【0124】
同様に、レベル操作子96の場合、アップ操作子102、ダウン操作子104の操作によって設定された数値が、選択されたチャンネルのレジスタLに記憶される。また、EFFECTスイッチ92の場合、操作されたスイッチに対応する効果パラメータと遅延情報とが、選択されたチャンネルのパラメータレジスタeと遅延レジスタDとにそれぞれ記憶される。なお、図21において、各チャンネルのパラメータレジスタeの内容e1乃至e4がそれぞれe11、e12のように複数記載されているのは、実際には、これらパラメータe1乃至e4がそれぞれ複数のパラメータから構成されていることを示している。
【0125】
また、DELAYレジスタには、DELAYスイッチ98の操作結果が記憶される。またEFFECT Mレジスタ、EFFECT Cレジスタには、EFFECT Mスイッチ110及びEFFECT Cスイッチ114のうち操作されたものに対応する効果パラメータが、それぞれ記憶される。
【0126】
さらに、DIRECT LEVELレジスタには、DIRECT LEVEL操作子118によって設定された数値が記憶される。
【0127】
次に、ステップS130で検出されたCH−SELECTスイッチ100がオンであるか判断する(ステップS132)。オンであると、Flg ONフラグが0であるか判断する(ステップS134)。Flg ONフラグが0であると、Flg ONフラグを1とし、かつFlg Mフラグを1とする(ステップS136)。そして、Tカウンタをリセットし(ステップS138)、この処理を終了する。
【0128】
ステップS134において、Flg ONフラグが0でないと判断されると、Flg Mフラグが0であるか判断する(ステップS140)。Flg Mフラグが0であると、この処理を終了する。Flg ONフラグが0でないと、Tカウンタの計数値を1進める(ステップS142)。そして、この計数値が4秒以上に相当するものであるか判断し(ステップS144)、4秒以上でなければ、この処理を終了する。4秒以上であれば、CH−SELECTスイッチで選択されたチャンネルの各レジスタの内容を、チャンネルメモリの対応するチャンネルの領域に記憶させ(ステップS146)、Flg Mフラグを0として(ステップS148)、この処理を終了する。
【0129】
例えば、カラオケモードにおいて、チャンネル1に対応してピッチ変更係数、フォルマント変更係数、効果パラメータ、レベル情報、遅延情報が設定され、CH−SELECTスイッチ100のチャンネル1に対応するスイッチ94aが4秒以上操作されていると、カラオケ用チャンネルメモリ128のチャンネル1のピッチ変更係数、フォルマント変更係数、効果パラメータ、レベル情報、遅延情報の記憶領域に、上記の各値が記憶される。
【0130】
ステップS132において、CH−SELECTスイッチ100がオンでないと判断されると、Flg ONフラグが1であるか判断し(ステップS150)、1でなければ、この処理を終了する。1であれば、Flg ONフラグを0とし(ステップS152)、Flg Mフラグが1であるか判断する(ステップS154)。Flg Mフラグが1でなければ、この処理を終了する。
【0131】
Flg Mが1であれば、チャンネルメモリのうち、操作されているCH−SELECTスイッチ100に対応するチャンネルの内容を、レジスタ群126にそれぞれ記憶させ、操作子46に表示させる(ステップS156)。例えば、クワイアモードにおいて、チャンネル1が選択されている状態で、CH−SELECTスイッチ100のチャンネル1のスイッチ101aが4秒より短い時間しか操作されていないと、クワイア用チャンネルメモリ130のチャンネル1に記憶されている内容がレジスタ群126の対応するレジスタにそれぞれ記憶され、これらレジスタに対応する操作子に設けられているLEDが点灯する。これに続いて、Flg Mフラグが0とされ(ステップS158)、この処理を終了する。
【0132】
次に図22及び図23を参照して、コーラス制御手段58が、カラオケ演奏部40または外部機器からMIDI信号を受けるごとに行う処理について説明する。なお、コーラス制御手段58は、図23に示すようにMIDIレジスタを有し、これは、テンポを記憶するテンポレジスタ132を有し、さらに各チャンネルごとに、コーラス音のピッチ情報SPITCHを記憶するレジスタ134a乃至134dと、コーラス音のレベル情報Lmidiを記憶するレジスタ136a乃至136dとを有している。
【0133】
入力されたMIDI信号が演奏のテンポを表すタイミング・クロックであるか判断し(ステップS160)、タイミング・クロックであると、タイミング・クロックからテンポを測定し、MIDIレジスタのTEMPOレジスタ132に記憶させ(ステップS162)、この処理を終了する。なお、記憶させるのは、例えば測定結果に所定の係数を乗算し、4分音符の長さのテンポ情報に変換したものである。なお、タイミング・クロックの周期を測定しているため、最初のタイミング・クロック入力のときは、測定不能となって、この処理を終わる。また、タイミング・クロックではなく、テンポ情報を数値データとして伝送することもあり、この場合には、ステップS160はテンポ情報かの判断に変更され、テンポ情報の場合、そのテンポ情報をそのままTEMPOレジスタ132に記憶させる。
【0134】
ステップS160において、タイミングクロックでなければ、入力されたMIDI信号が、コーラス音の発音を指示するノートオン信号であるか判断する(ステップS164)。ノートオン信号であれば、これに続いて再生音の音高を表すキー番号と、その再生音の発生レベルを表すベロシティと、再生チャンネルを表すチャンネル情報とを有しているので、図示していない変換テーブルによって、キー番号をコーラス音の再生ピッチ情報SPITCHに変換して、チャンネル情報によって指定されたチャンネルの再生ピッチ情報レジスタに記憶させる(ステップS166)。
【0135】
次に、ベロシティをレベル情報Lmidiとして、MIDIレジスタのレベル情報レジスタ中のチャンネル情報によって指定されたチャンネルのものに記憶させ(ステップS168)、処理を終了する。
【0136】
ステップS164において、ノートオン信号でないと判断されると、ノートオフ信号であるか判断する(ステップS170)。ノートオフ信号であれば、これに続いてノートオフするチャンネルを表すチャンネル情報を有しているので、チャンネル情報で指定されたチャンネルのレベル情報レジスタの値を0とし(ステップS172)、この処理を終了する。
【0137】
次に図24を参照しながら、図19に示すステップS120のカラオケモードパラメータ供給処理の詳細について説明する。このカラオケモードパラメータ供給処理は、操作子47の操作等によるパラメータ変化が効果の変化として不自然でない程度の所定の時間が経過するごとに実行する。そのため図示していないが、この処理が実行されると、予め準備したカウンタの値が1進められ、その値が所定の値になっていないと、ステップS122の実行に移り、その値が所定の値になると、カウンタの値を0として、以下の処理を実行する。なお、上記所定の時間が長いと操作子47の操作に対して反応が遅れ、不自然になり、また所定時間が短いと、効果の変化が人には感知できないので、無駄な処理を行うことになる。
【0138】
この処理では、図21に示したレジスタ群からEFFECT MとEFFECT Cとのパラメータ群と、DIRECTレベルとを読み出し、図11に示す効果付加手段64M、64C、乗算器62Mにそれぞれ供給する(ステップS174)。
【0139】
次に各コーラスチャンネルの機器にパラメータを指定するため、チャンネル指定用のカウンタnの値を1とする(ステップS176)。次に、図23に示すMIDIレジスタのうちカウンタnによって指定されたチャンネルのレベル情報Lmidinと、図21に示すカラオケ用チャンネルメモリにおけるカウンタnによって指定されたチャンネルのレベル情報Lnとを乗算して、その乗算結果を乗算器62c1乃至62c4のうちカウンタnによって指定されたものにレベル情報として供給し、さらにMIDIレジスタのテンポ情報とレジスタ群126のDELAYと、カラオケ用チャンネルメモリ128のうちカウンタnによって指定されたチャンネルの遅延情報Dnとを読み出し、これらを乗算して、遅延手段68c1乃至68c4のうちカウンタによって指定されたものに遅延時間として供給する(ステップS178)。遅延情報Dnは、4分音符に換算して何個分に相当する遅延時間であるかを表す値であるので、これとTEMPOとを乗算することによって実際の遅延時間を決定できる。また、DELAYは、遅延させる場合には1、遅延させない場合には0であるので、遅延させる場合には、実際の遅延時間が遅延手段に設定され、遅延させない場合には0が遅延手段に設定される。
【0140】
次に、チャンネルメモリ128のうちカウンタnによって指定されたチャンネルからピッチ変更係数Pn、フォルマント変更係数Fn、効果パラメータenが読出され、ピッチ変換手段66c1乃至66c4のうちカウンタnによって指定されたものに設定する(ステップS180)。そして、MIDIレジスタのコーラスピッチ情報のうちカウンタnによって指定されたものが、ピッチ変換手段66c1乃至66c4のうちカウンタnによって指定されたものに設定される(ステップS182)。そして、カウンタnの値が4以上であるか判断し(ステップS184)、4以上であれば、この処理を終了し、4以上でなければ、カウンタnの値を1進め(ステップS186)、ステップS178に戻る。
【0141】
なお、ステップS126のクワイアモードパラメータ供給処理も、使用されるチャンネルメモリが、クワイア用のチャンネルメモリ130となるだけであるので詳細な説明は省略する。
【0142】
次に図25を参照しながらカラオケモードにおけるコーラス効果が付加される状態を説明する。なお、説明を簡易化するため、コーラスチャンネル60c1のみが使用され、他のチャンネルには、レベル情報0と遅延情報0とがそれぞれ供給されているとする。また、遅延手段68c1には4分音符1つ分の遅延時間が設定され、乗算器62c1には0でないレベル情報が設定されているとする。また、ピッチ変換手段66c1には、入力されるMIDI信号に対応した再生ピッチ情報SP1として音高Eのピッチ情報が入力されるものとする。そして、同図(c)のように音高Cの「CAME ON」という音高信号がピッチ変換手段66c1に入力されると前記再生ピッチ情報SP1に対応した音高Eの「CAMEON」という音声信号が出力される。この出力は、ピッチ変換手段66c1から同図(d)に示すように出力される。そして、遅延手段68c1によって上記の遅延時間だけ遅延され、効果付加手段64cによって効果が付加される。一方、入力音声信号も、効果付加手段64Mによって効果が付加され、加算器72によって加算され、同図(f)に示すようにコーラス出力信号として出力され、同図(a)、(b)に示す楽譜のような音が発生する。
【0143】
遅延手段68c1乃至68c4には、DELAYスイッチ98によって、遅延させないときには0を入力するものを使用したが、遅延させない場合には、図26に示すように遅延手段68nを遅延スイッチ69nによってバイパスする構成のものを遅延手段として使用する場合には、レベル情報Lnを制御するのではなく、DELAYスイッチ98に代えて、各チャンネルごとに設けた遅延スイッチによって遅延のオン、オフを制御するようにしてもよい。
【0144】
次に、クワイアモードにおけるコーラス効果が付加される状態を説明する。このクワイアモードは、大人数でコーラスをしているような効果を付加するもので、クワイアモードでは、図11に示す効果付加手段64cが、図12に示す疑似コーラス効果付加装置として機能するようにパラメータが設定されている。また、各ピッチ変換手段66c1乃至66c4に設けた効果付加手段が図12に示すコーラス効果付加装置として機能するようにパラメータを設定してもよい。
【0145】
そして、FORMANTスイッチ88の操作によって、例えばコーラスチャンネル1、2の声質を男性とし、コーラスチャンネル3、4の声質を女性とすることによって、大人数で合唱しているような効果を得られる。なお、各遅延手段68c1乃至68c4に設定する遅延情報を少しずつずらせて設定しておくと、各コーラスチャンネルの歌い出しのタイミングがわずかにずれて、人間が歌っているような自然なものとなる。また、図12に示す疑似コーラス効果装置として、効果付加手段64cまたは各ピッチ変換手段66c1乃至66c4の効果付加手段を使用した場合、これによっても遅延が得られるので、積極的に各遅延手段68c1乃至68c4で遅延を生じさせる必要がない場合もある。
【0146】
上述した実施形態では、操作子46のPITCHスイッチ84、FORMANTスイッチ88の操作によって、パラメータPITCH−VRとFORMANT−VRとを設定したが、1つのスイッチの操作によって両者を設定することもできる。
【0147】
例えば図27に示すように、BIGMANスイッチ124aと、NORMALスイッチ124bと、PRETTYGIRLスイッチ124cとからなるCHARACTERスイッチ124を、操作子46におけるPITCHスイッチ84、FORMANTスイッチ88に代えて設け、これらスイッチのいずれがか操作されると、PITCH−VRとFORMANT−VRとが設定されるようにしてもよい。
【0148】
この場合、図20に示したステップS130において、BIGMANスイッチ124aが操作されると、PITCH−VRとして0.5が、FORMANT−VRとして0.7が、レジスタ群126のCH−SELECTスイッチ100によって指定されたチャンネルのP、F領域にそれぞれ記憶される。同様に、NORMALスイッチ124bが操作された場合には、PITCH−VRとして1が、FORMANT−VRとして1が、レジスタ群126のCH−SELECTスイッチ100によって指定されたチャンネルのP、F領域にそれぞれ記憶される。PRETTYGIRLスイッチ124cが操作された場合には、PITCH−VRとして2.0が、FORMANT−VRとして1.5が、レジスタ群126のCH−SELECTスイッチ100によって指定されたチャンネルのP、F領域にそれぞれ記憶される。
【0149】
これらスイッチ124a乃至124cにもLED126a乃至126cがそれぞれ設けられており、操作されたスイッチに対応するものが点灯する。また、これらスイッチ124a乃至124cも後操作優先に構成されている。
【0150】
第2の実施形態では、PITCH−VRやFORMANT−VRは、スイッチ84、88の操作によって予め定めた値の中から選択したもの設定したが、これらスイッチに代えて、ポテンショメータを設け、これらポテンショメータの操作によって任意の値を設定するようにしてもよい。また、各遅延手段68C1乃至68C4に設定する遅延時間を定めるための遅延情報は、EFFECTスイッチ92の設定によって定めたが、例えばカラオケ演奏部40または外部機器からのMIDI信号によって設定するようにしてもよく、この場合には時間の経過と共に遅延情報を変化させることができるので、遅延時間も時間と共に変化させることができ、効果的な演奏が行える。同様に、ピッチ変換手段66C1乃至66C4に含まれる効果付加手段や、効果付加手段64M、64Cにそれぞれ設定する効果パラメータも、MIDI信号によって設定するようにしてもよい。この場合にも時間の経過と共に、これら効果付加手段によって付加される効果が時間の経過と共に変化する。
【0151】
【発明の効果】
以上のように本発明によれば、オーディオ信号から複数周期の音素片を切り出し、所定のエンベロープを付与した後、再生ピッチに対応した周期で合成するため、不要な高調波の発生が少なく、元のオーディオ信号のフォルマントが維持されたまま、ピッチ変換が行われる。
【図面の簡単な説明】
【図1】(a)は本発明による効果付加装置の第1の実施形態を示すブロック図、(b)は同ブロック図におけるDSPの実施形態を示すブロック図、(c)はDSPのその他の実施形態を示すブロック図である。
【図2】同実施形態においてDSPが実行する機能の一部を示すフローチャートである。
【図3】図2のフローチャートにおける波形読み出し処理の詳細な内容を示すフローチャートである。
【図4】同実施形態においてピッチ変更係数及びフォルマント変更係数を共に1とした場合の動作説明図である。
【図5】同実施形態においてピッチ変更係数を1より大きくし、フォルマント変更係数を1とした場合の動作説明図である。
【図6】同実施形態においてピッチ変更係数を1とし、フォルマント変更係数を1より大きくした場合の動作説明図である。
【図7】同実施形態の変形例において使用する変調波形メモリに記憶させる変調波形を示す図である。
【図8】同実施形態の変形例における波形読み出し処理の一部の詳細な内容を示すフローチャートである。
【図9】同実施形態の変形例における波形読み出し処理の残り部分の詳細な内容を示すフローチャートである。
【図10】本発明の第2の実施形態のブロック図である。
【図11】同第2の実施形態のコーラス効果付加手段のブロック図である。
【図12】図11の効果付加手段内で使用する擬似コーラス付加装置のブロック図である。
【図13】同第2の実施形態における波形の切り出しの説明図である。
【図14】図11のコーラス効果付加手段の動作の一部を説明するフローチャートである。
【図15】図11のコーラス効果付加手段の動作の他の部分を説明するフローチャートである。
【図16】図11のコーラス効果付加手段における波形の切り出しに関連する動作を説明するフローチャートである。
【図17】図11のコーラス効果付加手段における波形の切り出しに使用するリングメモリのアドレスの変化状態を示す図である。
【図18】第2の実施形態において使用する操作子を示す図である。
【図19】図10に示すコーラス制御手段の動作を説明するフローチャートである。
【図20】図10に示すコーラス制御手段が操作子の操作状態に応じて行う動作を説明するフローチャートである。
【図21】コーラス制御手段が備えるレジスタ及びチャンネルメモリを示す図である。
【図22】コーラス制御手段がMIDI信号の入力に応じて行う処理を説明するフローチャートである。
【図23】コーラス制御手段が備えるMIDIレジスタを示す図である。
【図24】図19に示すカラオケモードパラメータ供給処理を説明するフローチャートである。
【図25】第2の実施形態におけるコーラス効果が付加される状態を説明する図である。
【図26】第2の実施形態で使用する遅延手段の他の例を示す図である。
【図27】第2の実施形態で使用する操作子の他の例を示す図である。
【符号の説明】
8 DSP
12 RAM
20 46 操作子
22 CPU
26 74 ピッチ検出手段
66C1乃至66C4 ピッチ変換手段
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a pitch converter for converting the pitch of an audio signal or a musical sound signal.
[0002]
[Prior art]
Conventionally, various pitch converters have been proposed. For example, Japanese Patent Laid-Open No. 62-65098 discloses a music vocoder configured to cut out an input audio signal and reproduce the audio signal at a pitch selected by a keyboard. In this vocoder, even if the pitch of the reproduced audio signal is different from that of the input audio signal, the formant of the reproduced audio signal can be substantially maintained as the formant of the input audio signal.
[0003]
[Problems to be solved by the invention]
In the vocoder, one period of the original voice is cut out and reproduced and synthesized at a time interval corresponding to a desired pitch. In this method, a rectangular wave window is applied, and as a result, extra harmonics are generated. An object of the present invention is to provide a pitch conversion device that generates as little extra harmonics as possible.
[0004]
[Means for Solving the Problems]
The present invention provides a memory for storing an audio signal having a plurality of periods, a pitch detection means for detecting the pitch of the audio signal, a reproduction pitch information storage means for storing reproduction pitch information for setting a reproduction pitch, and the pitch detection. The audio signal stored in the memory according to a pitch period detected by the means; Is read at a reading speed set independently of the reproduction pitch information. A phoneme segmentation means for segmenting a phoneme segment, and an envelope that gradually shifts from the minimum value to the maximum value with a length equal to the time required to read the phoneme segment to the segmented segment. And stored in the reproduction pitch information storage means In units of 2 cycles based on playback pitch information Reproduction audio signal synthesis means for synthesizing and generating a reproduction audio signal is provided.
[0005]
According to the present invention, a plurality of periods of speech segments are cut out from an audio signal, given a predetermined envelope, and then synthesized at a period corresponding to the playback pitch, so that unnecessary harmonics are less generated and the original audio signal is reduced. The pitch conversion is performed while maintaining the formant.
[0006]
DETAILED DESCRIPTION OF THE INVENTION
As shown in FIG. 1A, the first embodiment of the present invention has an input terminal 2 to which an audible frequency signal such as an analog musical sound signal or a voice signal is input, and is supplied to this input terminal 2. The audible frequency signal is converted into a digital audible frequency signal (sampling data) by the A / D converter 4. In order to prevent the occurrence of aliasing between the A / D converter 4 and the input terminal 2, the audio frequency signal is limited to a frequency that is ½ or less of the sampling frequency in the A / D converter 4. A low-pass filter 6 is provided.
[0007]
Sampling data from the A / D converter 4 is supplied to a DSP (digital signal processor) 8 and then supplied to the RAM 12. The RAM 12 is used as a ring memory that sequentially stores input sampling data.
[0008]
The DSP 8 reads the sampling data from the ring memory, performs processing, and supplies it to the D / A converter 14. The D / A converter 14 converts the sampling data processed by the DSP 8 into an analog audible frequency signal, supplies the analog audio frequency signal to the low-pass filter 16, removes unnecessary signal components, and supplies the signal to the output terminal 18.
[0009]
The DSP 8 processes sampling data according to a preset program. For the processing, parameters such as formant change coefficient FORMAT-VR and pitch change coefficient PITCH-VR set by the operator 20 operated by the user are used, for example. The formant change coefficient FORMAT-VR and the pitch change coefficient PITCH-VR are detected by the CPU 22 and supplied to the DSP 8. In addition to this, the CPU 22 also controls the DSP 8.
[0010]
1 (b) and 1 (c) show functions executed by the DSP 8 in a functional block diagram. FIG. 1 (b) shows a basic embodiment of the present invention, and FIG. Other embodiment of this invention is shown. In these drawings, there are functional blocks for sequentially storing sampling data input to the input terminal 23 in the ring memory of the RAM 12, but the functional blocks are omitted for ease of explanation.
[0011]
In the basic embodiment of FIG. 2B, input means, for example, an input terminal 23, a pitch conversion means 24, a pitch detection means 26, a control means 28, and an output terminal 29 are provided. The control unit 28 uses the pitch detection signal from the pitch detection unit 26 and parameters such as the formant change coefficient FORMANT-VR and the pitch change coefficient PITCH-VR set by the operation of the operator 20 via the CPU 22. The sampling data stored in is processed by the pitch conversion means 24.
[0012]
The processing performed by the pitch conversion unit 24, the pitch detection unit 26, and the control unit 28 will be briefly described. The formant change coefficient FORMANT− is obtained with the passage of time as a phoneme from the sampling data stored in the ring memory. Cut out sequentially at a reading speed according to VR, change formant characteristics as appropriate, and reproduce the cut out phoneme at a period corresponding to the pitch detected by the pitch detection means 26 and the pitch change coefficient PITCH-VR, This enables playback at a pitch and formant different from those at the time of input.
[0013]
In the embodiment of the present application, the phoneme is reproduced using a processing path for reproducing the first waveform and a processing path for reproducing the second waveform. Phonemes are reproduced at a period twice as long as
[0014]
This effect adding operation will be described with reference to the flowcharts shown in FIGS. The DSP 8 includes a register PITCH that stores a detection pitch of sampling data, and a register SADRS that stores an address for reading (reading) sampling data from the ring memory. Further, a counter PHASE for counting whether a reproduction pitch period length described later has been reached, a counter PH1 for counting the phase of the first waveform, and a counter PH2 for counting the phase of the second waveform are also provided. ing.
[0015]
Further, a register WIDTH for storing reproduction pitch information (reproduction pitch period length) in which the pitch detected by the pitch detection means 26 is changed by the pitch change coefficient PITCH-VR, and the detected pitch and the formant coefficient FORMAT-VR are determined. A register LENGTH for storing the length of the envelope, a register ENV1 for storing the envelope of the first waveform, and a register ENV2 for storing the envelope of the second waveform are provided.
[0016]
Further, the step rate of WINDOW1 and WINDOW2 determined based on the values of the register WINDOW1 for determining the shape of the envelope of the first waveform, the registers WINDOW2 and LENGTH for determining the shape of the envelope of the second waveform, Register W-RATE to be stored, register SADRS1 to store the first waveform cut-out start address, register SADRS2 to store the second waveform cut-out start address, determination of the first and second waveform cut-out start positions, etc. A flag F used for the purpose is also provided.
[0017]
These are initialized when the power is turned on. That is, the flag F is set to 1 and the others are set to 0. In the following description, it is assumed that appropriate values are already stored in each register and each counter. Each step of the flowcharts shown in FIGS. 2 and 3 is executed each time sampling data is input from the A / D converter 4 to the DSP 8.
[0018]
In FIG. 2, when sampling data is supplied from the A / D converter 4, it is written in the ring memory (step S2). Next, pitch detection processing is performed based on the input sampling data (step S4). This step S4 corresponds to the pitch detection means 26. This pitch detection process outputs the address of the zero cross position and the detected pitch when the pitch is detected.
[0019]
This pitch detection process sequentially compares time intervals between adjacent zero crosses, for example. For example, in FIG. 4A, it is assumed that the time intervals between the zero crosses of the input signal are a0, b0, c0, d0, a1, b1, c1, and d1. The time interval a0 between the first zero crosses and the time interval b0 between the next zero crosses are compared. If they are different, the time interval (a0 + b0) obtained by adding them is compared with the adjacent time interval (c0 + d0). . If both are different in this comparison, the time interval (a0 + b0 + c0) is compared with the adjacent time interval (d0 + a1 + b1). If they are still different, the time interval (a0 + b0 + c0 + d0) is compared with the adjacent time interval (a1 + b1 + c1 + d1). If the two values are almost the same in this comparison, the time interval (a1 + b1 + c1 + d1) is output as the pitch, and Z1 is output as the address of the zero cross position.
[0020]
In addition, as disclosed in, for example, Japanese Patent Laid-Open No. 3-288200, the zero cross position of the sampling data and the peak position of the waveform signal are detected, and the time interval between the zero cross position and the peak position is previously detected. It is also possible to use one that detects the pitch by comparing the time interval with the zero cross position.
[0021]
In step S4, it is determined whether or not pitch detection has been performed (step S6). If the pitch is detected, the zero-cross position detected in step S4 is used as a cut-out address, thereby updating and detecting the value of the register SADRS. The pitch is set to one cycle length, and the value of PITCH is updated by this (step S8). Thus, the pitch detection means 26 constitutes a part of the cutout means.
[0022]
When pitch detection is not performed or when pitch detection is performed and both the above registers are updated, the values of the registers PHASE, PH1, and PH2 are each incremented by one (step S10).
[0023]
Next, the values of the registers PHASE and WIDTH are compared (step S12). WIDTH stores one cycle length obtained by multiplying the value of the register PITCH and the pitch change coefficient PITCH-VR, as will be described later, and determines whether the PHASE value has reached this WIDTH value. are doing. That is, it is determined whether or not the PHASE value has reached a predetermined reproduction pitch. The value of WIDTH corresponds to reproduction pitch information.
[0024]
If the value of PHASE has not reached the value of WIDTH, the process proceeds to waveform processing in step S32 described later. When the value of PHASE reaches the value of WIDTH, the value of the register PHASE is set to 0 (step S14), and the pitch change coefficient PITCH-VR and the formant change coefficient FORMAT-VR set by the operator 20 are set via the CPU 22. Read (step S16).
[0025]
In order to determine a new WIDTH value, the PITCH value and the pitch change coefficient PITCH-VR are multiplied and stored in the register WIDTH, and the envelope of the first waveform and the envelope of the second waveform are also stored. In order to determine the period, the value of PITCH is divided by the formant coefficient FORMAT-VR and stored in the register LENGTH (step S18).
[0026]
Next, the value of the register LENGTH is compared with the value of the register WIDTH (step S20). If the value of LENGTH is larger than the value of WIDTH, the value of LENGTH is set as the value of WIDTH (step S22). This is to prevent the LENGTH value from exceeding the WIDTH value. In other words, since only two processing paths for adding waveforms are prepared in the waveform reading process of step S32 described later, two or more waveforms are prevented from overlapping.
[0027]
If the LENGTH value is less than or equal to the WIDTH value, the process of step S24 is performed without performing the process of step S22. Following step S22, the process of step S24 is also performed. In step S24, the reciprocal of the LENGTH value is obtained and stored in the register W-RATE. This W-RATE value is used to step up the values of WINDOW1 and WINDOW2 as will be described later. Further, in step S24, the value of the flag F is also inverted from the previous value.
[0028]
Next, it is determined whether the value of the flag F reversed in step S24 is 1 or -1 (step S26). If the flag F is 1, the registers PH1 and WINDOW1 are set to 0 to start reading the first waveform, and the SADRS value (cutout address) determined in step S8 is stored in the cutout start address register SADRS1 (step S28).
[0029]
If the value of F inverted in step S24 is -1, the reading of the second waveform is started, so that the registers PH2 and WINDOW2 are set to 0, and the value (cutout address) of the register SADRS determined in step S8 is set. The cutout start address register SADRS2 is stored (step S30).
[0030]
By such steps S12, S14, S16, S18, S20, S22, S24, S26, S28, and S30, the first and second time intervals corresponding to the period length of two playback pitches (twice the value of WIDTH) are passed. The cut start address of the second waveform data is updated, and the value of the flag F is inverted every time the PHASE value reaches the WIDTH value.
[0031]
Following step S28 or S30, or if it is determined in step S12 that the value of the register PHASE has not reached the value of the register WIDTH, a waveform reading process is performed (step S32). In this manner, the waveform reading process is performed without changing the WIDTH value and LENGTH value (and thus the W-RATE value) until the PHASE value reaches WIDTH.
[0032]
In the waveform readout process described later, the values of envelopes ENV1 and ENV2 of the first and second waveforms are controlled by the value of W-RATE.
[0033]
Since the value of W-RATE, and hence LENGTH, is obtained by changing the detected pitch by the formant change coefficient FORMANT-VR in step S18, the pitch of the waveform to be subjected to the waveform reading process depends on the formant change coefficient FORMANT-VR. It will be.
[0034]
In this waveform reading process, as shown in FIG. 3, first, the value of the counter WINDOW1 is incremented by the value of W-RATE (step S34). Then, it is determined whether the value of the incremented WINDOW1 is less than 1, 1 or more, less than 2, or 2 or more (step S36).
[0035]
If it is smaller than 1, the value of WINDOW1 is stored in the register ENV1 (step S38). If it is 1 or more and smaller than 2, the value obtained by subtracting the value of WINDOW1 from 2 is stored in the register ENV1 (step S40). At this time, the value of ENV1 is set to 0 (step S42).
[0036]
In steps S34 to S40, a sawtooth wave whose value increases by the value of W-RATE is created, and this value is folded back to 1, thereby creating ENV1. However, if the value of WINDOW1 exceeds 2, ENV1 is set to 0 in step S42. That is, a triangular wave that increases to 1 by W-RATE, which is the reciprocal of the value of LENGTH determined based on the formant coefficient FORMANT-VR and the detection pitch, and then decreases to 0 by W-RATE is converted into an envelope of the first waveform. It is created as.
[0037]
Further, following step S38, S40, or S42, a register that stores the cut-out start address of the first waveform by a value obtained by multiplying the value of the register PH1 (step value of the cut-out address) by the formant coefficient FORMAT-VR. The value is added to the value of SADRS1 and stored in the register ADRS1 that stores the cut-out address of the first waveform (step S44). Following this, the waveform data DATA1 of the first waveform is read from the ring memory at the cut-out address ADRS1 (step S46).
[0038]
As described above, since the read address is changed by the formant coefficient FORMAT-VR, as a result, the read speed of the waveform data DATA1 is changed by the formant coefficient FORMAT-VR.
[0039]
Following this, the value of WINDOW2 is incremented by W-RATE (step S48). It is determined whether the value of the incremented WINDOW2 is less than 1, 1 or more and less than 2, or 2 or more (step S50). If the value of WINDOW2 is smaller than 1, the value of WINDOW2 is stored in the register ENV2 (step S52). If the value of WINDOW2 is 1 or more and less than 2, the value obtained by subtracting the value of WINDOW2 from 2 is set in the register ENV2. (Step S54), and if the value of WINDOW2 is 2 or more, the value of ENV2 is set to 0 (step S56). In this way, the envelope of the second waveform is prepared.
[0040]
Subsequent to step S52, S54, or S56, the value obtained by multiplying the value of the register PH2 by the formant coefficient FORMAT-VR and the value of the cut-out start address SADRS2 for the second waveform data are added to the second waveform data. Is stored in the register ADRS2 for the cut-out address (step S58). Then, the waveform data (DATA2) of the second waveform is read from the ring memory at the address ADRS2 (step S60).
[0041]
The output OUT is obtained by adding the value of ENV1 multiplied by the value of DATA1 read out in this way and the value of DATA2 multiplied by the value of ENV2 (step S62). After such waveform reading processing is performed, an output OUT is sent out as shown in FIG. 2 (step S64).
[0042]
2 and 3, steps S2, S4, S6, S8, S26, S28, S30, S46 and S60 correspond to the cutting means. 1 and the means for generating WIDTH in steps S16 and S18 in FIG. 2 are the reproduction pitch information generating means. Similarly, the operator 20 shown in FIG. 1 and the FORMAT-VR in step S16 in FIG. Means for generating formant change information generating means. Steps other than those described above in FIGS. 2 and 3 correspond to reproduction audio signal synthesis means.
[0043]
FIG. 4 shows a waveform of each part when the pitch change coefficient PITCH-VR and the formant change coefficient FORMAT-VR are both 1. FIG. 5 shows that the pitch change coefficient PITCH-VR is larger than 1, and the formant change coefficient FORMAT- FIG. 6 shows the waveform of each part when the pitch change coefficient PITCH-VR is 1 and the formant change coefficient FORMAT-VR is greater than 1.
[0044]
As apparent from these waveforms, in this embodiment, the pitch of the output signal is determined by the value of WIDTH obtained by multiplying the pitch change coefficient PITCH-VR and the detected pitch, that is, the pitch reproduction information, and the output signal. Is read by the formant change coefficient FORMANT-VR. The pitch change coefficient and the formant change coefficient FORMAT-VR can be changed independently of each other by the operation of the operation element 20.
[0045]
Next, an embodiment in the case of changing the formant change information with time in the same configuration as shown in FIG. 1B will be described. The effect addition processing performed by the pitch conversion unit 24, the pitch detection unit 26, and the control unit 28 in this case is shown in FIG. 2 and FIGS. 8 and 9 which are detailed processing of the waveform readout processing S32 of FIG. Has been. In this embodiment, the operator setting such as the modulation waveform selection parameters (MSTART, MLENG) from the operator 20 is further input.
[0046]
In the pitch converting means 24, a modulation waveform memory composed of, for example, a ROM is provided. In this modulation waveform memory, for example, a plurality of, for example, three modulation waveforms having different waveforms starting with 1 and ending with 1 as shown in FIG. 7 are stored. SA1, SA2, and SA3 shown in FIG. 7 represent the start addresses of these modulation waveforms, and LENG1, LENG2, and LENG3 represent the lengths of the respective modulation waveforms.
[0047]
One of these modulated waveforms is selected by the operation of the operation element 20. The start address of the selected waveform is stored in the register MSTART provided in the pitch converting means 24, and the length of the selected waveform is stored in the same register. Each stored in MLENG.
[0048]
Other registers and counters are used in the same manner as in the above-described embodiment, and further, the values of registers MAD1, MAD2, MAD1, MAD2, and the value of MLENG that store values obtained by halving the values of registers WINDOW1, WINDOW2 Registers MODAD1 and MODAD2 are provided for storing addresses for reading the waveform data from the modulation memory using the value of MSTART and the value of MSTART.
[0049]
In this embodiment, since FIG. 2 is the same as the above-described embodiment, the flowcharts of FIGS. 8 and 9 different from the above-described embodiment will be described. Therefore, in the waveform reading process, as shown in FIG. 8, in step S34, the current WINDOW1 value is updated by the value of W-RATE, and ½ of the updated WINDOW1 value is stored in the register MAD1 (see FIG. 8). Step S64). Next, the value of the register MAD1 is compared with 1 (step S66). If the value of MAD1 is greater than 1, the value of MAD1 is set to 1 (step S68).
[0050]
In step S66, if the value of register MAD1 is smaller than 1, or following step S68, the value obtained by multiplying the value of register MAD1 and the value of MLENG and the value of MSTART is the first waveform data. Is stored in the register MODAD1 as the address of the modulation data of the reading speed (step S70). Subsequently, data MODDATA1 is read from an address corresponding to the value of MODAD1 in the modulation waveform memory (step S72).
[0051]
In step S64, the value of WINDOW1 is halved so that the value of MODAD1 in step S70 does not exceed the final address of the selected modulation waveform memory.
[0052]
Following this, steps S36, S38, S40, and S42 are executed to store the envelope for the first waveform in the register ENV1.
[0053]
Next, the value of the counter PH1 advanced in step S10 is multiplied by the formant coefficient FORMAT-VR and MODDATA1 obtained in step S72, and this multiplied value is multiplied by the cut-out start address register SADRS1 determined in step S28. A value obtained by adding the values is stored in the register ADRS1 (step S44a). This is used as the read address of the waveform data of the first waveform, and the waveform data DATA1 of the first waveform is read from the read address of the waveform data in the ring memory (step S46a). In this “other embodiment”, steps S34, S64, S66, S68, S70, S72 and the means for generating the formant change coefficient FORMAT-VR correspond to the formant change information generating means.
[0054]
Next, as shown in FIG. 9 following the flowchart of FIG. 8, the value of the counter WINDOW2 is incremented by the value of W-RATE (step S48). Then, the value of WINDOW2 is halved and stored in the register MAD2 (step S74). Then, the value of MAD2 is compared with 1 (step S76).
[0055]
If the value of MAD2 is greater than 1, the value of MAD2 is corrected to 1 (step S78). In step S76, when the value of MAD2 is 1 or less, or following step S76, a value obtained by adding the value of MSTART to the product of the value of MAD2 and the value of MLENG is stored in register MODAD2 (step S80). . The modulation data MODDATA2 for the second waveform data is read from the address corresponding to the value of MODAD2 in the modulation waveform memory (step S82).
[0056]
In step S74, the value of WINDOW2 is halved for the same reason that the value of WINDOW1 is halved in step S64.
[0057]
Following this, steps S50, S52, S54, and S56 are executed to store the envelope for the second waveform in the register ENV2.
[0058]
Next, the value of the counter PH2 advanced in step S10 is multiplied by the formant coefficient FORMAT-VR and MODDATA2 obtained in step S82, and this multiplication value is stored in the cut-out start address register SADRS2 determined in step S30. A value obtained by adding the values is stored in the register ADRS2 and used as a read address of the waveform data of the second waveform (step S58a). Similarly to the above, the steps S48, S74, S76, S78, S80, S82 and the means for generating the formant change coefficient FORMAT-VR correspond to the formant change information generating means. The second waveform data DATA2 is read from the read address of the waveform data in the ring memory (step S60a).
[0059]
A value obtained by multiplying the first waveform data DATA1 and the first envelope of ENV1 and a value obtained by multiplying the second waveform data DATA2 and the second envelope of ENV2 are added to the output OUT. (Step S62a). Thereafter, step S64 shown in FIG. 2 is executed.
[0060]
Thus, in this embodiment, the read addresses of the first and second waveform data are modulated using the modulation waveform stored in the modulation waveform memory. Therefore, it is possible to add an unprecedented unique effect to the input audio frequency signal. In addition, a plurality of modulation waveform data used for applying this modulation are prepared, and any of them can be used, so various effects can be added. In addition, since the degree of modulation can be changed by changing the value of the formant change coefficient FORMAT-VR by operating the operation element 20, the same modulation waveform data can be obtained by changing the value of the formant change coefficient FORMAT-VR. Even if is used, different effects can be added.
[0061]
Next, the case where the present invention is implemented in the configuration shown in FIG. 1C instead of the configuration in FIG. 1B in which one of the two embodiments described above is implemented will be described. In the embodiment shown in FIG. 1 (c), a structure in which the waveform converting means 30 and the filter means 32 are cascade-connected is added between the pitch converting means 24 and the input terminal 23 in the configuration of FIG. 1 (b). ing. In addition to the pitch change coefficient PITCH-VR and the formant change coefficient FORMAT-VR, the control means 28 is supplied from the operator 20 such as setting parameters of the waveform converting means 30 and setting parameters of the filter means 32 via the CPU 22. The operator settings are also entered.
[0062]
The waveform converting means 30 is a so-called distortion circuit that clips a predetermined level or more of the input waveform, and the details thereof are well known, and thus the description thereof is omitted.
[0063]
As the filter means 32, a known comb filter, low-pass filter, high-pass filter, or the like, or a combination thereof can be used. In this embodiment, for example, it is disclosed in Japanese Patent Laid-Open No. 6-4076. In such a case, the one whose characteristics change according to the pitch of the input musical sound signal is used.
[0064]
That is, in the filter means disclosed in Japanese Patent Laid-Open No. 6-4076, the filter characteristics are controlled in accordance with the pitch of the input musical sound signal to obtain an appropriate frequency characteristic for the harmonics of the input musical sound signal. ing.
[0065]
Therefore, in this embodiment, after the audible frequency signal supplied to the input terminal 23 is distorted by the waveform converting means 30, the filter means 32 has an appropriate frequency characteristic with respect to the overtone, and as described above. The formant read speed is modulated, the modulation state is adjusted by the formant change coefficient FORMAT-VR, and the output pitch is also adjusted by the pitch change coefficient PITCH-VR. In addition to the effects, it is possible to add unique effects that are not found in the prior art.
[0066]
In both of the above embodiments, two processing paths for generating the first and second waveform data that are phonemes are provided, and in each processing path, the phonemes are reproduced at a cycle twice the reproduction pitch. However, three or more processing paths may be provided and combined. Furthermore, in the above embodiment, the pitch detecting means is used. However, instead of this, for example, a means for detecting the frequency of harmonics of the input audio frequency signal may be used.
[0067]
A second embodiment of the present invention will be described. In this embodiment, as shown in FIG. 10, for example, a digital voice signal obtained by digitizing a singing voice sung according to a karaoke performance from the karaoke performance unit 40 as shown in FIG. It is input to the unit 44, where it is possible to add a chorus effect and output it. In this case, the chorus adding unit 44 adds the chorus effect by synthesizing the original voice input with the voice input pitch and formant changed.
[0068]
The present invention is used to change the pitch and formant. Information for changing the pitch and changing the formant is given to the chorus adding unit 44 by operating the operator 46. Further, pitch information and level information are supplied from the karaoke performance unit 40 to the chorus adding unit 44 as MIDI signals. The pitch information and level information may be supplied not to the karaoke performance unit 40 but to the chorus adding unit 44 as an external input MIDI signal from another device provided outside, for example, a keyboard that can be played. .
[0069]
There are two choruses added by the chorus adding unit 44: a karaoke mode in which chorus is added according to pre-stored performance information, and a choir mode in which a chorus is performed by a large number of people. In this embodiment, pitch information and level information are supplied from the karaoke performance unit 40 to the chorus adding unit 44 in the karaoke mode, and are supplied from the external device in the quire mode.
[0070]
The karaoke performance unit 40 includes an automatic performance means 48 and a musical sound generation means 50, and also includes a karaoke control means 52 for controlling them. The automatic performance means 48 corresponds to a conventionally known automatic performance device and stores automatic performance information of a plurality of songs. The musical sound generating means 50 corresponds to a conventionally known sound source device.
[0071]
In response to a command generated by the karaoke control means 52 in accordance with information supplied to the karaoke control means 52 by an operator control means 54 (to be described later) in response to an operation of the operation element 46, the automatic performance means 48 performs performance music from the automatic performance information. Information is selected, and the musical sound generating means 50 is automatically played according to the information, and accompaniment (karaoke) is played. The performance information of the chorus part is also stored in the automatic performance information, which includes the above-described pitch information and level information, and is supplied to the chorus adding unit 44 in the form of a MIDI signal.
[0072]
The chorus adding unit 44 includes chorus effect adding means 56 and chorus control means 58. As shown in FIG. 11, the chorus effect adding means 56 has a main channel 60M to which a digital audio signal supplied from the audio input terminal 42 is supplied, and a plurality of, for example, four chorus channels 60C1 to 60C4.
[0073]
The main channel 60M includes a multiplier 62M that adjusts the level of the digital audio signal, and an effect adding unit 64M that adds an effect such as a reverberation effect to the digital audio signal whose level has been adjusted.
[0074]
The chorus channels 60C1 to 60C4 change the pitch and formant of the input digital audio signal, and further add pitch conversion means 66C1 to 66C4 for adding effects such as a reverberation effect, and outputs of these pitch conversion means 66C1 to 66C4. Delay means 68C1 to 68C4 for delaying and multipliers 62C1 to 62C4 for adjusting the output levels of the delay means 68C1 to 68C4, respectively.
[0075]
The pitch converting means 66C1 to 66C4 correspond to the structure shown in FIG. 1C, for example, excluding the pitch detecting means, and the waveform converting means 30 and the filter means 32 correspond to the effect adding means here. As this effect adding means, for example, a known reverberation adding device, or a delay effect of the delay means 76 is changed by a low frequency oscillator 78 as shown in FIG. A pseudo chorus effect adding device may be used. For use in each of the pitch converting means 66C1 to 66C4, a pitch detecting means 74 for detecting the pitch of the digital audio signal is provided. In some cases, it is not necessary to provide effect adding means for each of the pitch converting means 66C1 to 66C4.
[0076]
The outputs of the chorus channels 60C1 to 60C4 are combined by the adder 70, and then an effect such as a reverberation effect is added by the effect adding means 64C. The effect adding means 64C also functions as a pseudo chorus effect adding device in FIG. 12 by setting effect parameters as will be described later. The output of the effect adding means 64C is combined with the output of the effect adding means 64M by the adder 72 and output.
[0077]
Also, each of the pitch conversion means 66C1 to 66C4 includes formant change information such as formant change coefficients F1 to F4, pitch change information such as pitch change coefficients P1 to P4, pitch information SP1 to SP4 of chorus sound, and pitch conversion means 66C1 to 66C1. The effect addition information e1 to e4 of the effect addition means in 66C4 is supplied from the chorus control means 58, respectively.
[0078]
Further, delay information D1 to D4 is supplied from the chorus control means 58 to each of the delay means 68C1 to 68C4. Further, level information L0 to L4 is supplied from the chorus control means 58 to the multipliers 62M and 62C1 to 62C4. Similarly, effect addition parameters EM and EC are supplied from the chorus control unit 58 to the effect addition units 64M and 64C, respectively. The effect addition parameters are each composed of a plurality of effect parameters.
[0079]
As will be described later, the chorus controller 58 generates each piece of information based on information from the operator controller 54 and a MIDI signal from the karaoke performance unit 40 or an external device.
[0080]
The chorus adding unit 44 can be constituted by, for example, the DSP and RAM shown in FIG. 1A, and the karaoke control means 52, the automatic performance means 48, and the operator control means 54 are controlled by the CPU shown in FIG. Can be configured.
[0081]
The pitch conversion means 66C1 to 66C4 may use the pitch conversion means 24 shown in FIG. 1C as it is, but in this embodiment, it is possible to obtain a natural audio signal that is more connected than the pitch conversion means 24. In addition, the pitch converting means 66C1 to 66C4 are improved.
[0082]
FIG. 13A shows an original waveform of a digital audio signal supplied to the audio input terminal 42, for example, which includes harmonics and changes the harmonics. The pitch is measured with reference to zero cross points of this waveform, for example, s1, s2, s3..., And the pitch detection means 74 detects pitch data. Usually, since a sudden and temporary change in pitch does not occur in an audio signal, if such a sudden change occurs during pitch detection, it is determined that pitch detection has failed, and the pitch detection means 74 The detection data is not output. Specifically, the pitch c in FIG. 13A is not output as pitch data because the difference is too large compared to b. Similarly, since the difference d is too large compared to the same c, it is not output as pitch data. Eventually, the pitch detection means 74 outputs a, b, e,... As pitch data.
[0083]
FIG. 13 (b) shows the fundamental wave of the waveform of FIG. 13 (a), which will be described below using this fundamental wave. In order to change the pitch or formant, the waveform is read (cut out) from the ring memory configured in the RAM. For example, as shown in FIG. 5C, the waveform corresponds to the pitch data a from the zero cross point s1. The waveform is cut out, and then the waveform in the period corresponding to the pitch data b is cut out from the zero cross point s2. Since the detection of the pitch data c has failed, the pitch data b is read from the zero cross point s2 again. When the pitch detection is successful, the waveform corresponding to the pitch data e is cut out from the zero cross point s5 when the pitch detection is successful, and discontinuity occurs in the basic waveform.
[0084]
As shown in FIG. 13D, first, a waveform of a period corresponding to the pitch data a is cut out with the zero cross point s1 as a reference. After the cutout, s1 + a is calculated, and as a result, a waveform corresponding to the pitch data b is cut out based on s2. Next, the calculation of s2 + b is performed, and as a result, the detection of the pitch c has failed with reference to s3. Next, the calculation of s3 + b is performed, and as a result, the detection of the pitch d has failed with reference to ss4. Next, the calculation of ss4 + b is performed, and as a result, the detection of the pitch data e is successful with ss5 as a reference, and therefore a waveform corresponding to the pitch data e is cut out. Next, calculation of ss5 + e is performed, and as a result, a waveform of a period corresponding to the pitch data f is cut out with ss6 as a reference. As described above, the cut-out reference is updated according to the detection pitch, so that the discontinuity of the fundamental wave component does not occur.
[0085]
In this embodiment, after the waveform is cut out in this way, the pitch is changed or the formant is changed. Hereinafter, the cutout, pitch and formant changes will be described with reference to FIGS. 14 to 17. In order to simplify the description, only the pitch conversion means in one chorus channel will be described. In the above description, the pitch change coefficients supplied to the pitch conversion means have been described as P1 to P4. However, in the following description, the pitch change coefficients are expressed as PITCH-VR, and similarly, the formant change coefficients are expressed as F1 to F4. In the description of, it is expressed as FORMAT-VR.
[0086]
As in the first embodiment, the registers PITICH, SADRS, counter PHASE, PH1, PH2, registers WIDTH, LENGTH, ENV1, ENV2, W-RATE, SADRS1, SADRS2, ADRS1, ADRS2, and flag F are used. .
[0087]
When the sampling data (digital audio signal) is supplied to the input terminal 42, the sampling data is written to the write address IBUF-PTR of the ring memory configured in the RAM (not shown) as in step S2 of FIG. Step S2a). However, the write address IBUF-PTR is incremented by one every time sampling data is supplied to the input terminal 42. Next, pitch detection processing is performed in the same manner as in step S4 (step S4a), and it is determined whether pitch detection has been performed in the same manner as in step S6 (step S6a), and the pitch information PITCH is updated with the detection result (step S8a). ). In step S8, in addition to the update of the pitch information PITCH, the cut-out address SADRS is also updated to the zero cross position obtained by the pitch detection. However, in step S8a, the SADRS is not updated, and step S100 is separately performed. Is done by. The update of the cut-out address in step S100 updates the cut-out reference according to the detection pitch as described with reference to FIG. 13, and details will be described later. Further, step S100 is executed also when the pitch is not detected in step S4a.
[0088]
Subsequent to step S100, the values of the registers PHASE, PH1, and PH2 are each incremented by one as in step S10 (step S10a). Next, as in step S12, the values of the registers PHASE and WIDTH are compared (step S12a). If the PHASE value does not reach the WIDTH value, the process proceeds to a waveform reading process in step S32a described later. If the value of PHASE has reached the value of WIDTH, the value of register PHASE is set to 0 (step S14a) as in step S14.
[0089]
Next, the pitch change coefficient PITCH-VR, formant change coefficient FORMAT-VR, and reproduction pitch information SPITCH are input from the chorus control means 58 (step S16a). In step S16, only the pitch change coefficient PITCH-VR and the formant change coefficient FORMAT-VR set by the operator are input, whereas in step S16a, the pitch change set in accordance with the operation of the operator 46 is input. In addition to the coefficient PITCH-VR and the formant change coefficient FORMAT-VR, reproduction pitch information SPITCH based on the MIDI signal from the karaoke performance unit 40 or an external device is input.
[0090]
In order to determine a new WIDTH value (corresponding to the reproduction pitch information described in the claims), the reproduction pitch information SPITCH is multiplied by the pitch change coefficient PITCH-VR, and this is stored in the register WIDTH. In order to determine the period of the envelope of the first waveform and the envelope of the second waveform, the value of PITCH is divided by the formant coefficient FORMAT-VR and stored in the register LENGTH (step S18a). In step S18, the detected pitch information PITCH is multiplied by PITCH-VR, whereas in step S18a, SPITCH and PITCH-VR are multiplied.
[0091]
Next, as shown in FIG. 15, the value of the register LENGTH is compared with a period P of 100 Hz, for example (step S102). If the LENGTH value is larger than P, the LENGTH value is changed to P (step S104). These steps S102 and S104 are for preventing a large delay from being added even if a digital audio signal having a low frequency is input. Specifically, even when a digital audio signal having a frequency lower than 100 Hz is input, the delay is limited to a delay time of 10 milliseconds of 100 Hz.
[0092]
Subsequent to step S104 or when the LENGTH value is smaller than P in step S102, the LENGTH value is compared with the WIDTH value as in step S20 (step S20a), and the LENGTH value is smaller than the WIDTH value. If it is larger, the LENGTH value is set to the WIDTH value (step S22a) as in step S22.
[0093]
If the LENGTH value is less than or equal to the WIDTH value, the process of step S24a is performed without performing the process of step S22a. Further, even after step S22a, the process of step S24a is performed. In the process of step S24a, the reciprocal of the LENGTH value is obtained and stored in the register W-RATE, as in step S24. The value of W-RATE is used to increment the value of registers WINDOW1 and WINDOW2. In step S24a, the value of the flag F is inverted. Since step S24a is performed when the PHASE value becomes equal to or greater than the WIDTH value in step S12a, the inversion of the flag F is also performed when the PHASE value becomes equal to or greater than the WIDTH value.
[0094]
Next, similarly to step S26, the value of the flag F is compared with 0 (step S26a), and it is determined whether the flag F is 1 or -1. If the value of the flag F is 1, the registers PH1 and WINDOW1 are set to 0 as in step S28, and the SADRS value determined in step S100 is stored in the cut-out start address register SADRS1 (step S28a).
[0095]
If the value of the flag F is −1, as in step S30, the registers PH2 and WINDOW2 are set to 0, and the value of the register SADRS determined in step S100 is extracted and stored in the start address register SADRS2 (step S30a). .
[0096]
Subsequent to step S28a or 30a, or when it is determined in step S12a that the value of the register PHASE has not reached the value of WIDTH, the same waveform reading process as in step S36 is performed (step S32a). Since this waveform readout process is the same as that shown in FIG. 3, a detailed description thereof will be omitted. Then, the waveform subjected to the waveform reading process is sent out in the same manner as in step S64 (step S64a).
[0097]
For example, when SPITCH = PITCH and PITCH-VR and FORMAT-VR are each 1, an output waveform similar to that in FIG. 4 is obtained. In addition, when SPITCH = PITCH, PITCH> 1, and FORMAT-VR = 1, an output waveform similar to that in FIG. 5 is obtained. Further, when SPITCH = PITCH, PITCH-VR = 1, and FORMAT-VR> 1, a waveform similar to that in FIG. 6 is obtained.
[0098]
When PITCH = SPITCH, PITCH-VR <1, and FORMAT-VR = 1, in FIG. 5, the periods of 2 * WIDTH, ENV1, and ENV2 are equal, and levels 0 in FIGS. The part of disappears. Similarly, when PITCH = SPITCH, PITCH-VR = 1, and FORMAT-VR <1, in FIG. 5, the periods of 2 * WIDTH, ENV1, and ENV2 are equal to each other, and the levels shown in FIGS. The 0 part disappears.
[0099]
Next, with reference to FIG. 16 and FIG. 17, the update process of the cut-out address in step S100 will be described. In step S2a, the ring memory in which the sampling data is written has addresses 0 to FFF (hex), and the write address IBUF-PTR changes like a sawtooth wave as shown by a solid line in FIG. That is, when the address FFF (hex) is reached, the next address becomes 0.
[0100]
The update processing of the cut-out address is a premise for setting the read addresses ADRS1 and ADRS2 that are the reference when cutting out the sampling data in the waveform read processing, and these addresses ADRS1 and ADRS2 overtake the write address IBUF-PTR. There is no way. Therefore, first, the distance (address difference) DELAY at which the read address does not overtake the current write address IBUF-PTR is subtracted from the current write address IBUF-PTR, and the AND of (1000 (hex) -1). The result obtained is stored as a reference read address ADRS (step S106). The reason for taking this AND is to make the above subtraction value within the address range 0 of the ring memory within FFF (hex). This DELAY is set equal to the value of P used in step S102 of FIG.
[0101]
Next, this ADRS is compared with the current cut-out address SADRS (step S108). If SADRS is larger than ADRS, 1000 (hex) is added to ADRS (step S110). This is because, for example, as shown in FIG. 17, ADRS may be temporarily smaller than SADRS, and if it is left as it is, it adversely affects the subsequent processing, and this is to be corrected.
[0102]
Subsequent to step S110 or when it is determined in step S108 that ADRS is larger than SADRS, ADRS is compared with (SADRS + PITCH) (step S112). This PITCH is updated in step S8a. When ADRS ≧ (SADRS + PITCH), that is, when a difference greater than or equal to PITCH occurs between ADRS and SADRS, the calculation of (SADRS + PITCH) & (1000 (hex) −1) is performed, and the result of SADRS is calculated. The value is updated (step S114). If it is determined in step S112 that ADRS <(SADRS + PITCH), step S114 is not executed. As a result, the cut-out reference SADRS is updated according to the detected pitch PITCH as shown in FIG. 13D, and the SADRS changes by PITCH as indicated by the solid line shown in the staircase pattern in FIG.
[0103]
Next, the operation element 46 will be described with reference to FIG. The controller 46 includes a MODE switch 80 for setting a karaoke mode for adding a chorus in karaoke performance and a choir mode for adding a chorus by a MIDI signal from an external device. The switch 80 is a switch for switching between two on / off states. When the switch 80 is on, the chore mode is set. When the switch 80 is off, the chorus mode is set. When the switch is on, the display means provided in the switch 80, for example, the LED 82 is turned on, and when it is turned off, the LED 82 is turned off.
[0104]
The operation unit 46 is provided with a PITCH switch 84, a FORMAT switch 88, an EFFECT switch 92, and a level operation unit 96. These are for setting various parameters in the pitch converting means 66C1 to 66C4, delay means 68C1 to 68C4, and multipliers 62C1 to 62C4 of the chorus channels 60C1 to 60C4 of the chorus effect adding means 56. Note that it is determined by operating the CH-SELECT switch 100 which chorus channel the various parameters are set to. The CH-SELECT switch 100 includes four switches 100a to 100d corresponding to the respective chorus channels 60C1 to 60C4, and the switches 100a to 100d are provided with LEDs 101a to 101d, respectively.
[0105]
The PITCH switch 84 includes a -1OCT switch 84a, a NORMAL switch 84b, and a + 1OCT switch 84c. The PITCH switch 84 is for changing the tone quality (tone color) of the chorus audio signal to be added by pitch conversion. More specifically, the pitch of the chorus audio signal is changed from the karaoke performance unit 40 or an external device. This is for instructing whether to output with the pitch specified by the MIDI signal, or to raise or lower the pitch in octave units.
[0106]
The -1OCT switch 84a is a mode for reproducing a chorus voice signal one octave lower than the pitch specified by the MIDI signal. For example, when a female voice is inputted, a male chorus is added. To do. The NORMAL switch 84c is operated when adding a chorus while keeping the pitch represented by the MIDI signal. The + 1OCT switch 84c is operated when the reproduced chorus audio signal is set to an octave higher than the pitch specified by the MIDI signal. For example, when a male voice is input, a female chorus is added. Operated.
[0107]
The three switches 84a to 84c are provided with LEDs 86a to 86c, respectively, and among these LEDs 86a to 86c, the LED provided for the operated switch is lit. For example, when the switch 84b is operated in the state where the switch 84a is already operated, the operation by the switch 84b is effective for these three switches 84a to 84c. Thus, the operation performed later is configured to be prioritized. Note that the CH-SELECT switch 100 is similarly configured to give priority to subsequent operations.
[0108]
The FORMAT switch 88 is for changing the sound quality of the chorus audio signal by changing the formant of the input audio signal, and includes a LOW switch 88a, a NORMAL switch 88b, and a HIGH switch 88c. The LOW switch 88a is operated to change the formant of the chorus audio signal to a thicker voice quality than the input audio signal. The NORMAL switch 88b is operated when the formant of the chorus audio signal is the same as the formant of the input audio signal. The HIGH switch 88c is operated when the formant is raised to make a fine voice quality. These switches 88a to 88c are also provided with LEDs 90a to 90c, respectively, and the LED provided on the operated one of the switches 88a to 88c is lit. These three switches 86a to 86c are also configured so that the operation performed later becomes effective.
[0109]
Examples of operations of the PITCH switch 84 and the FORMAT switch 88 include the following. If the input audio signal is male and the chorus pitch information specified by the MIDI signal is in the male range, the + 1OCT switch 84c in the PITCH switch 84 is operated to raise the chorus audio signal by one octave, and the FORMAT The HIGH switch 88c in the switch 88 is operated to increase the formant of the chorus audio signal. In this case, even if a male audio signal is input, the chorus audio signal is synthesized in the female sound range with the female formant.
[0110]
The effect parameters e1 to e4 and the delay information D1 to D4 supplied to the pitch converting means 66c1 to 66c4 and the delay means 68c1 to 68c4, respectively, are illustrated in advance for karaoke and choir, for example, with four types having different contents. The EFFECT switch 92 is used for designating which one of them is to be used, and has four switches 92a to 92d provided for each type. Yes. These switches 92a to 92d are also provided with LEDs 94a to 94d, respectively, and the LED corresponding to the operated switch is lit. These switches 92a to 92d are also configured with priority on the post-operation.
[0111]
The level operation unit 96 includes an up operation unit 102, a down operation unit 104, and an 8-segment display unit 106. The level operation unit 96 includes a display unit 106. The displayed numerical value is increased or decreased to set the multiplier level of the channel designated by the CH-SELECT switch 100 among the multipliers 62c1 to 62c4 to an appropriate value.
[0112]
Further, the operation element 46 is provided with a DELAY switch 98 for designating whether the delay means 68c1 to 68c4 are turned on or off in common to the respective chorus channels 60c1 to 60c4. The DELAY switch 98 is set to 1 when it is on, 0 when it is off, and the LED 108 is lit when it is on.
[0113]
Further, for example, four kinds of effect parameters having different contents for the effect adding means 64M are stored in karaoke and chore preset memories (not shown), respectively, for selecting which one to use. In addition, the operation element 46 is provided with an EFFECT M switch 110. This EFFECT M switch 110 has four switches 110a to 110d corresponding to the above four types, and is set in the effect adding means 64M as will be described later by operating the switch corresponding to the type to be used. Is done. Whether to use karaoke or choir depends on the operation of the MODE switch 80. These switches 110a to 110d are also provided with LEDs 112a to 112d, and those provided for the operated switches are lit. These switches are also configured to give priority to post-operation.
[0114]
Similarly, for example, four types of effect parameters having different contents for the effect adding means 64C are stored in a preset memory (not shown) for karaoke and choir, in order to select which one to use. The operation element 46 is provided with an EFFECT C switch 114. The EFFECT C switch 114 has four switches 114a to 114d corresponding to the above four types, and is designated as the effect adding means 64C as described later by operating the switch corresponding to the type to be used. You can set parameters of the specified type. Whether to use the preset memory for karaoke or choir depends on the operation of the MODE switch 80. These switches 114a to 114d are also provided with LEDs 116a to 116d, and those provided for the operated switches are lit. These switches are also configured to give priority to post-operation.
[0115]
A direct level operator 118 is also provided on the operator 46. This is for setting the level information of the multiplier 62M of the main channel 60M, and has an up operator 120, a down operator 122, and an 8-segment display unit 124. The numerical value displayed on the display unit 124 is increased or decreased according to the operation, and the level of the multiplier 62M is set to an appropriate value.
[0116]
Next, processing performed by the chorus control means 58 will be described with reference to FIG. First, the setting state of the MODE switch 80 input from the operator control unit 54 is determined (step S116). As will be described later, each time the operating element control unit 54 operates the operating element 46 at a predetermined cycle to detect which operating element is being operated, the chorus control means 58 performs an operating element process described later. As a result, the setting state of the MODE switch 80 is input.
[0117]
If it is determined that the karaoke mode is selected, a MIDI input signal is set to be input from the karaoke performance unit 40, a preset memory is set for karaoke, and a channel memory to be described later is set for karaoke (step S118). Subsequently, karaoke mode parameter processing, which will be described later, is performed (step S120). Further, it is determined whether or not the mode change has been changed (step S122). This is also performed according to the state of the MODE switch 80 obtained as a result of the operator processing. If the mode has not been changed, step S122 is repeated, and if the mode has been changed, the process returns to step S116.
[0118]
If it is determined in step S116 that the mode is the choir mode, the MIDI signal is set to be input from an external device, the preset memory is set for the choir, and the channel memory described later is set for the choir (step). S124). Next, a parameter process for a chore mode described later is performed (step S126). Then, it is determined whether the mode change has been changed (step S128). This is also performed according to the state of the MODE switch 80 obtained as a result of the operator processing. If the mode has not been changed, step S128 is repeated. If the mode has been changed, the process returns to step S116.
[0119]
Next, the operator processing performed by the chorus control means 58 will be described with reference to FIGS. As is well known, the operator control means 54 scans the operator 46 every predetermined period, and supplies information on which operator is being operated to the chorus control means 58. The chorus control means 58 performs a manipulator process each time this information is input. As shown in FIG. 21, the operator control means 54 has a register group 126, a channel memory 128 for karaoke mode, and a channel memory 130 for choir mode.
[0120]
The register group 126 corresponds to each of the chorus channels 60C1 to 60C4, and the pitch change coefficients P1 to P4 (corresponding to PITCH-VR) set by the operation of the PITCH switch 84 and the formant change set by the operation of the FORMAT switch 88 are set. Coefficients F1 to F4 (corresponding to FORMAT-VR), level information L1 to L4 to the multipliers 62c1 to 62c4 set by operating the level operator 96, and effect parameters e1 to e4 set by operating the EFFECT switch 92, respectively. And registers for storing delay information D1 to D4, respectively. Further, it has a register for storing ON / OFF information set by operating the DELAY switch 98. Furthermore, a register for storing the effect parameter EM (= EM1 to EMm) set by the operation of the EFFECT M switch 110, and a register for storing the effect parameter EC (= EC1 to ECm) set by the operation of the EFFECT switch C And a register for storing level information L0 for the multiplier 62M of the main channel.
[0121]
The karaoke channel memory 128 stores pitch change coefficients P1 to P4, formant change coefficients F1 to F4, level information L1 to L4, effect information e1 to e4, and delay information D1 to D4 set in the register group 126 for the karaoke mode. , For memorizing. Further, the channel memory 130 for the choir includes pitch change coefficients P1 to P4, formant change coefficients F1 to F4, level information L1 to L4, effect information e1 to e4, delay information D1 to D4 set in the register group 126 for the choir mode. Is for memorizing.
[0122]
Whether to use the karaoke channel memory 128 or the choir channel memory 130 is determined in step S118 or S124. Further, although the preset memory described above is used, it is determined in step S118 or S124 whether to use a chorus memory or a choir memory. In this process, the flag Flg ON for storing the previous operation state of the CH-SELECT switch 100, Flg M for determining whether the writing to the channel memory is completed, and the CH-SELECT switch 100 Use a T-counter to count the time being operated.
[0123]
First, the operation state of each operation element 46 supplied from the operation element control means 54 is detected, set to the corresponding one in the register group 126, and the display means corresponding to the operation element being operated is displayed (step S130). ). However, the operation states of the PITCH switch 84, the FORMAT switch 88, the EFFECT switch 92, and the LEVEL operator 96 are stored in a register corresponding to the channel selected by the CH-SELECT switch 100. In the PITCH switch 84, 0.5 is set when the -1OCT switch 84a is operated, 1 is set when the NORMAL switch 84b is operated, and 2.0 is set when the + 1OCT switch 84c is operated. The pitch change coefficient register P of the selected channel is stored. Similarly, the FORMAT switch 88 is 0.5 when the LOW switch 88a is operated, 1 when the NORMAL switch 88b is operated, and 2.0 when the HIGH switch 88c is operated. It is stored in the register F of the selected channel.
[0124]
Similarly, in the case of the level operator 96, the numerical values set by the operation of the up operator 102 and the down operator 104 are stored in the register L of the selected channel. In the case of the EFFECT switch 92, the effect parameter and the delay information corresponding to the operated switch are stored in the parameter register e and the delay register D of the selected channel, respectively. In FIG. 21, the contents e1 to e4 of the parameter register e of each channel are described in plural as e11 and e12, respectively. Actually, these parameters e1 to e4 are each composed of a plurality of parameters. It shows that.
[0125]
The operation result of the DELAY switch 98 is stored in the DELAY register. In the EFFECT M register and the EFFECT C register, effect parameters corresponding to the operated one of the EFFECT M switch 110 and the EFFECT C switch 114 are stored.
[0126]
Further, the DIRECT LEVEL register stores a numerical value set by the DIRECT LEVEL operator 118.
[0127]
Next, it is determined whether the CH-SELECT switch 100 detected in step S130 is on (step S132). If it is on, it is determined whether the Flg ON flag is 0 (step S134). If the Flg ON flag is 0, the Flg ON flag is set to 1 and the Flg M flag is set to 1 (step S136). Then, the T counter is reset (step S138), and this process ends.
[0128]
If it is determined in step S134 that the Flg ON flag is not 0, it is determined whether the Flg M flag is 0 (step S140). If the Flg M flag is 0, this process is terminated. If the Flg ON flag is not 0, the count value of the T counter is incremented by 1 (step S142). Then, it is determined whether or not the counted value corresponds to 4 seconds or more (step S144). If it is not 4 seconds or more, this process is terminated. If it is 4 seconds or longer, the contents of each register of the channel selected by the CH-SELECT switch are stored in the corresponding channel area of the channel memory (step S146), and the Flg M flag is set to 0 (step S148). This process ends.
[0129]
For example, in the karaoke mode, a pitch change coefficient, a formant change coefficient, an effect parameter, level information, and delay information are set corresponding to channel 1, and the switch 94a corresponding to channel 1 of the CH-SELECT switch 100 is operated for 4 seconds or more. Then, the above values are stored in the storage area for the channel 1 pitch change coefficient, formant change coefficient, effect parameter, level information, and delay information in the channel memory 128 for karaoke.
[0130]
If it is determined in step S132 that the CH-SELECT switch 100 is not on, it is determined whether the Flg ON flag is 1 (step S150). If not 1, the process ends. If it is 1, the Flg ON flag is set to 0 (step S152), and it is determined whether the Flg M flag is 1 (step S154). If the Flg M flag is not 1, this process is terminated.
[0131]
If Flg M is 1, the contents of the channel corresponding to the operated CH-SELECT switch 100 in the channel memory are stored in the register group 126 and displayed on the operator 46 (step S156). For example, in channel mode 1, when channel 1 is selected and channel 101 switch 101a of CH-SELECT switch 100 has been operated for less than 4 seconds, it is stored in channel 1 of channel channel memory 130. The stored contents are stored in the corresponding registers of the register group 126, and the LEDs provided on the controls corresponding to these registers are lit. Following this, the Flg M flag is set to 0 (step S158), and this process ends.
[0132]
Next, with reference to FIG. 22 and FIG. 23, a process performed by the chorus control unit 58 every time it receives a MIDI signal from the karaoke performance unit 40 or an external device will be described. The chorus control means 58 has a MIDI register as shown in FIG. 23, which has a tempo register 132 for storing the tempo, and a register for storing the chorus sound pitch information SPITCH for each channel. 134a to 134d, and registers 136a to 136d for storing chorus sound level information Lmidi.
[0133]
It is determined whether the input MIDI signal is a timing clock representing the performance tempo (step S160). If it is the timing clock, the tempo is measured from the timing clock and stored in the TEMPO register 132 of the MIDI register ( In step S162), this process ends. Note that what is stored is, for example, a product obtained by multiplying a measurement result by a predetermined coefficient and converting it into tempo information having a quarter note length. Since the period of the timing clock is measured, the measurement cannot be performed at the first timing clock input, and this process is terminated. In addition, tempo information may be transmitted as numerical data instead of the timing clock. In this case, step S160 is changed to determination of tempo information. In the case of tempo information, the tempo information is directly used as the TEMPO register 132. Remember me.
[0134]
If it is not a timing clock in step S160, it is determined whether or not the input MIDI signal is a note-on signal for instructing the production of a chorus sound (step S164). If it is a note-on signal, it has a key number that represents the pitch of the reproduced sound, a velocity that represents the level of the reproduced sound, and channel information that represents the reproduced channel. The key number is converted into chorus sound reproduction pitch information SPITCH by a conversion table that is not present, and stored in the reproduction pitch information register of the channel designated by the channel information (step S166).
[0135]
Next, the velocity is stored as level information Lmidi in the channel specified by the channel information in the level information register of the MIDI register (step S168), and the process is terminated.
[0136]
If it is determined in step S164 that it is not a note-on signal, it is determined whether it is a note-off signal (step S170). If it is a note-off signal, it has channel information indicating the channel to be note-off subsequently, so the value of the level information register of the channel specified by the channel information is set to 0 (step S172), and this processing is performed. finish.
[0137]
Next, the details of the karaoke mode parameter supply process in step S120 shown in FIG. 19 will be described with reference to FIG. This karaoke mode parameter supply process is executed each time a predetermined time elapses such that a parameter change due to an operation of the operation element 47 or the like is not unnatural as an effect change. Therefore, although not shown in the figure, when this process is executed, the value of the counter prepared in advance is advanced by 1. If the value is not a predetermined value, the process proceeds to step S122, and the value is set to a predetermined value. When the value is reached, the counter value is set to 0 and the following processing is executed. If the predetermined time is long, the response to the operation of the operation element 47 is delayed and unnatural, and if the predetermined time is short, a change in the effect cannot be perceived by humans. become.
[0138]
In this process, the parameter group of EFFECT M and EFFECT C and the DIRECT level are read from the register group shown in FIG. 21 and supplied to the effect adding means 64M and 64C and the multiplier 62M shown in FIG. 11 (step S174). ).
[0139]
Next, in order to designate a parameter for each chorus channel device, the value of the channel designation counter n is set to 1 (step S176). Next, the level information Lmidin of the channel designated by the counter n in the MIDI register shown in FIG. 23 is multiplied by the level information Ln of the channel designated by the counter n in the karaoke channel memory shown in FIG. The multiplication result is supplied as level information to the multipliers 62c1 to 62c4 designated by the counter n, and further, the tempo information of the MIDI register, the DELAY of the register group 126, and the counter n of the karaoke channel memory 128 are designated by the counter n. The channel delay information Dn is read out, multiplied by these, and supplied as the delay time to the delay means 68c1 to 68c4 designated by the counter (step S178). Since the delay information Dn is a value representing the number of delay times corresponding to quarter notes, the actual delay time can be determined by multiplying this by TEMPO. Since DELAY is 1 when delaying and 0 when not delaying, the actual delay time is set in the delay means when delaying, and 0 is set as the delay means when not delaying. Is done.
[0140]
Next, the pitch change coefficient Pn, formant change coefficient Fn, and effect parameter en are read from the channel specified by the counter n in the channel memory 128, and set to the one specified by the counter n among the pitch conversion means 66c1 to 66c4. (Step S180). The chorus pitch information specified by the counter n in the MIDI register is set to the pitch conversion means 66c1 to 66c4 specified by the counter n (step S182). Then, it is determined whether the value of the counter n is 4 or more (step S184). If it is 4 or more, this process is terminated. If it is not 4 or more, the value of the counter n is advanced by 1 (step S186). The process returns to S178.
[0141]
Note that the chore mode parameter supply process in step S126 will not be described in detail because the channel memory used is only the channel memory 130 for the choir.
[0142]
Next, a state where the chorus effect is added in the karaoke mode will be described with reference to FIG. In order to simplify the description, it is assumed that only the chorus channel 60c1 is used, and level information 0 and delay information 0 are supplied to the other channels, respectively. Further, it is assumed that a delay time for one quarter note is set in the delay means 68c1, and level information other than 0 is set in the multiplier 62c1. In addition, it is assumed that pitch information of the pitch E is input to the pitch conversion means 66c1 as reproduction pitch information SP1 corresponding to the input MIDI signal. Then, when a pitch signal “CAME ON” having a pitch C is input to the pitch converting means 66c1, as shown in FIG. 10C, a voice signal “CAMEON” having a pitch E corresponding to the reproduction pitch information SP1. Is output. This output is output from the pitch converting means 66c1 as shown in FIG. Then, the delay means 68c1 delays the above delay time, and the effect adding means 64c adds an effect. On the other hand, the effect is also added to the input audio signal by the effect adding means 64M, added by the adder 72, and output as a chorus output signal as shown in FIG. A sound like the score shown is generated.
[0143]
As the delay means 68c1 to 68c4, the one which inputs 0 when not delaying by the DELAY switch 98 is used, but when not delaying, the delay means 68n is bypassed by the delay switch 69n as shown in FIG. In the case of using a delay means, the level information Ln is not controlled, but the delay on / off may be controlled by a delay switch provided for each channel instead of the DELAY switch 98. .
[0144]
Next, a state where the chorus effect in the choir mode is added will be described. This choir mode adds the effect of chorusing with a large number of people. In the choir mode, the effect adding means 64c shown in FIG. 11 functions as the pseudo chorus effect adding device shown in FIG. The parameter is set. Further, the parameters may be set so that the effect adding means provided in each of the pitch converting means 66c1 to 66c4 functions as the chorus effect adding device shown in FIG.
[0145]
By operating the FORMAT switch 88, for example, the voice quality of the chorus channels 1 and 2 is set to male, and the voice quality of the chorus channels 3 and 4 is set to female. Note that if the delay information set in each delay means 68c1 to 68c4 is slightly shifted and set, the singing timing of each chorus channel is slightly shifted, and it becomes natural as if a human is singing. . In addition, when the effect adding means 64c or the effect adding means of each of the pitch converting means 66c1 to 66c4 is used as the pseudo chorus effect device shown in FIG. It may not be necessary to cause a delay at 68c4.
[0146]
In the above-described embodiment, the parameters PITCH-VR and FORMAT-VR are set by operating the PITCH switch 84 and the FORMAT switch 88 of the operator 46, but both can be set by operating one switch.
[0147]
For example, as shown in FIG. 27, a CHARACTER switch 124 including a BIGMAN switch 124a, a NORMAL switch 124b, and a PRETTYGIRL switch 124c is provided in place of the PITCH switch 84 and the FORMAT switch 88 in the operation unit 46, and any of these switches is provided. If operated, PITCH-VR and FORMAT-VR may be set.
[0148]
In this case, when the BIGMAN switch 124a is operated in step S130 shown in FIG. 20, 0.5 is specified as PITCH-VR, 0.7 is specified as FORMAT-VR, and the CH-SELECT switch 100 of the register group 126 is designated. Stored in the P and F areas of the selected channel. Similarly, when the NORMAL switch 124b is operated, 1 is stored as PITCH-VR and 1 is stored as FORMAT-VR in the P and F areas of the channel specified by the CH-SELECT switch 100 of the register group 126, respectively. Is done. When the PRETTYGIRL switch 124c is operated, 2.0 is set as PITCH-VR, 1.5 is set as FORMAT-VR, and the P and F areas of the channel designated by the CH-SELECT switch 100 of the register group 126 are respectively set. Remembered.
[0149]
These switches 124a to 124c are also provided with LEDs 126a to 126c, respectively, and those corresponding to the operated switches are lit. Further, these switches 124a to 124c are also configured with priority on the post-operation.
[0150]
In the second embodiment, PITCH-VR and FORMAT-VR are set by selecting one of predetermined values by operating the switches 84 and 88. However, instead of these switches, potentiometers are provided, An arbitrary value may be set by an operation. The delay information for determining the delay time set in each of the delay means 68C1 to 68C4 is determined by the setting of the EFFECT switch 92, but may be set by a MIDI signal from the karaoke performance unit 40 or an external device, for example. In this case, since the delay information can be changed with the passage of time, the delay time can also be changed with time, and an effective performance can be performed. Similarly, the effect adding means included in the pitch converting means 66C1 to 66C4 and the effect parameters respectively set in the effect adding means 64M and 64C may be set by the MIDI signal. Also in this case, the effect added by these effect adding means changes with the passage of time.
[0151]
【The invention's effect】
As described above, according to the present invention, a plurality of periods of speech segments are cut out from an audio signal, a predetermined envelope is added, and then synthesized at a period corresponding to the reproduction pitch. The pitch conversion is performed while maintaining the formant of the audio signal.
[Brief description of the drawings]
FIG. 1A is a block diagram showing a first embodiment of an effect adding device according to the present invention, FIG. 1B is a block diagram showing an embodiment of a DSP in the block diagram, and FIG. It is a block diagram which shows embodiment.
FIG. 2 is a flowchart showing a part of functions executed by a DSP in the embodiment.
FIG. 3 is a flowchart showing detailed contents of a waveform reading process in the flowchart of FIG. 2;
FIG. 4 is an operation explanatory diagram when the pitch change coefficient and the formant change coefficient are both 1 in the embodiment.
FIG. 5 is an operation explanatory diagram when the pitch change coefficient is made larger than 1 and the formant change coefficient is set to 1 in the same embodiment;
6 is an operation explanatory diagram when the pitch change coefficient is 1 and the formant change coefficient is larger than 1 in the embodiment. FIG.
FIG. 7 is a diagram showing a modulation waveform stored in a modulation waveform memory used in a modification of the embodiment.
FIG. 8 is a flowchart showing the detailed contents of a part of a waveform read process in a modification of the embodiment.
FIG. 9 is a flowchart showing the detailed contents of the remaining part of the waveform reading process in the modification of the embodiment.
FIG. 10 is a block diagram of a second embodiment of the present invention.
FIG. 11 is a block diagram of chorus effect adding means of the second embodiment.
12 is a block diagram of a pseudo chorus adding device used in the effect adding means of FIG. 11. FIG.
FIG. 13 is an explanatory diagram of waveform cutout in the second embodiment.
FIG. 14 is a flowchart for explaining a part of the operation of the chorus effect adding means of FIG. 11;
FIG. 15 is a flowchart for explaining another part of the operation of the chorus effect adding means of FIG. 11;
16 is a flowchart for explaining operations related to waveform cutting in the chorus effect adding means of FIG. 11. FIG.
17 is a diagram showing a change state of an address of a ring memory used for waveform extraction in the chorus effect adding means of FIG.
FIG. 18 is a diagram showing an operator used in the second embodiment.
FIG. 19 is a flowchart for explaining the operation of the chorus control means shown in FIG. 10;
20 is a flowchart illustrating an operation performed by the chorus control unit shown in FIG. 10 in accordance with the operation state of the operator.
FIG. 21 is a diagram showing a register and channel memory provided in the chorus control means.
FIG. 22 is a flowchart illustrating processing performed by a chorus control unit in response to an input of a MIDI signal.
FIG. 23 is a diagram showing a MIDI register included in the chorus control means.
24 is a flowchart illustrating karaoke mode parameter supply processing shown in FIG.
FIG. 25 is a diagram illustrating a state in which a chorus effect is added in the second embodiment.
FIG. 26 is a diagram showing another example of delay means used in the second embodiment.
FIG. 27 is a diagram illustrating another example of the operation element used in the second embodiment.
[Explanation of symbols]
8 DSP
12 RAM
20 46 operator
22 CPU
26 74 Pitch detection means
66C1 to 66C4 pitch conversion means

Claims (1)

複数周期からなるオーディオ信号を記憶するメモリと、
前記オーディオ信号のピッチを検出するピッチ検出手段と、
再生ピッチを設定する再生ピッチ情報を記憶する再生ピッチ情報記憶手段と、
前記ピッチ検出手段によって検出されたピッチの周期に従って、前記メモリに記憶された前記オーディオ信号の所定の2周期分の区間を、前記再生ピッチ情報とは独立して設定された読み出し速度で読み出すことで音素片の切り出しを行う音素片切り出し手段と、
その切り出された音素片に、その音素片の読み出しに要する時間と等しい長さで、最小値から最大値を経て最小値へと漸次移行するエンベロープを付与し、前記再生ピッチ情報記憶手段に記憶された再生ピッチ情報に基づいた2周期単位で合成して、再生オーディオ信号を生成する再生オーディオ信号合成手段とを、
備えたピッチ変換装置。
A memory for storing an audio signal having a plurality of periods;
Pitch detecting means for detecting the pitch of the audio signal;
Reproduction pitch information storage means for storing reproduction pitch information for setting a reproduction pitch;
According to the pitch period detected by the pitch detection means, a predetermined two-cycle section of the audio signal stored in the memory is read at a reading speed set independently of the reproduction pitch information. Phoneme segmentation means for segmenting phonemes;
An envelope that gradually shifts from the minimum value to the maximum value with a length equal to the time required to read the phoneme segment is given to the extracted phoneme segment, and is stored in the reproduction pitch information storage means. Reproduction audio signal synthesis means for synthesizing in units of two periods based on the reproduction pitch information and generating a reproduction audio signal;
A pitch converter provided.
JP2002159323A 1995-03-06 2002-05-31 Pitch converter Expired - Fee Related JP3693981B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002159323A JP3693981B2 (en) 1995-03-06 2002-05-31 Pitch converter

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP7-74584 1995-03-06
JP7458495 1995-03-06
JP2002159323A JP3693981B2 (en) 1995-03-06 2002-05-31 Pitch converter

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP25707195A Division JP3329635B2 (en) 1995-03-06 1995-09-07 Effect device

Publications (2)

Publication Number Publication Date
JP2003036082A JP2003036082A (en) 2003-02-07
JP3693981B2 true JP3693981B2 (en) 2005-09-14

Family

ID=26415742

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002159323A Expired - Fee Related JP3693981B2 (en) 1995-03-06 2002-05-31 Pitch converter

Country Status (1)

Country Link
JP (1) JP3693981B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4565846B2 (en) * 2004-01-08 2010-10-20 ローランド株式会社 Pitch converter
JP4645241B2 (en) * 2005-03-10 2011-03-09 ヤマハ株式会社 Voice processing apparatus and program
JP4784184B2 (en) * 2005-07-12 2011-10-05 ヤマハ株式会社 Acoustic signal processing apparatus and program
JP5018421B2 (en) * 2007-11-19 2012-09-05 ヤマハ株式会社 Harmony sound generator and program
JP5679451B2 (en) * 2011-08-02 2015-03-04 日本放送協会 Speech processing apparatus and program thereof

Also Published As

Publication number Publication date
JP2003036082A (en) 2003-02-07

Similar Documents

Publication Publication Date Title
JPH0816181A (en) Effect addition device
JP6175812B2 (en) Musical sound information processing apparatus and program
JP3693981B2 (en) Pitch converter
JP3329635B2 (en) Effect device
JPS6328478Y2 (en)
JP2999806B2 (en) Music generator
Dutilleux et al. Time‐segment Processing
US5559298A (en) Waveform read-out system for an electronic musical instrument
JPH0318197B2 (en)
JPH10116088A (en) Effect giving device
JP4565846B2 (en) Pitch converter
JPS59116696A (en) Electronic musical instrument
JP3660125B2 (en) Electronic musical instrument sound image localization control device
JPS61204697A (en) Tone signal generator
JP2970438B2 (en) Waveform memory type tone generator
JP3092250B2 (en) Music synthesizer
JPS5921038B2 (en) electronic musical instruments
JPH02176795A (en) Musical sound generating device for electronic musical instrument
JP3652504B2 (en) Electronic instrument reverberation effect adding device
JPS592034B2 (en) electronic musical instruments
JPH038558B2 (en)
JP2939098B2 (en) Electronic musical instrument
JP3558814B2 (en) Electronic musical instrument with harmonic coefficient envelope function
JP2833485B2 (en) Tone generator
JPH1078776A (en) Chorus effect imparting device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050418

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050622

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080701

Year of fee payment: 3

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080701

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080701

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080701

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110701

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120701

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130701

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees