JPS60113295A - Musical sound generator by voice input - Google Patents
Musical sound generator by voice inputInfo
- Publication number
- JPS60113295A JPS60113295A JP58221826A JP22182683A JPS60113295A JP S60113295 A JPS60113295 A JP S60113295A JP 58221826 A JP58221826 A JP 58221826A JP 22182683 A JP22182683 A JP 22182683A JP S60113295 A JPS60113295 A JP S60113295A
- Authority
- JP
- Japan
- Prior art keywords
- data
- frame
- value
- counter
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【発明の詳細な説明】
〔発明の44・術分野〕
本発明は音声1人力による楽音発生装置に関する、
〔従来技術とその問題点〕
最近、マイクロホンから入力された音声、っまり1人の
歌声から基本周波数(ピッチ)を抽出し、この抽出した
基本周波数に応じて楽器音を発生させるようにした音声
入力による楽音発生装置が考えられている。しかして、
音声入力の基本周波数、つまり、ピッチな抽出する場合
。[Detailed Description of the Invention] [44/Technical Field of the Invention] The present invention relates to a musical tone generation device powered by a single voice. [Prior art and its problems] Recently, the voice input from a microphone, which is the singing voice of a single person, has been developed. A musical sound generating device using voice input has been considered, which extracts a fundamental frequency (pitch) from a musical instrument and generates a musical instrument sound according to the extracted fundamental frequency. However,
If you want to extract the fundamental frequency, or pitch, of the audio input.
従来では入力データをローパスフィルタを介して取出す
と共に、低い標本化周波数で標本化し、その後、相関計
算を行なうことによってピッチをめる方法が一般に用い
られている。Conventionally, the pitch is generally determined by extracting input data through a low-pass filter, sampling it at a low sampling frequency, and then performing correlation calculations.
しかしながら、上記従来の入力音声に対するピッチ抽出
方法では、入力データに対して広い範囲の相関を計算す
る必要があり、このため実時間でピッチを抽出しようと
すると、抽出分解能が粗くなってしまうという問題があ
る。例えば1人間の歌声のピップ−周波数は、80〜8
00)(zであり、サンプリング周波数が32,768
HZの場合、ピッチ検索のための遅れ時間τは40〜4
00と広い範囲に亘る。相関を計算才る7L/−ムを4
Q Q point = 12 m sec とする
と、この時間内にその全範囲に亘って相関を計算するこ
とは不可能であり、このためピッチ抽出分解能が粗くな
ってしまう。音声ピッチの抽出分解能が粗い場合、ピッ
チの誤抽出が多くなると共に1例えばビブラート、ボル
タメント等の微妙な楽音を発生することができない。However, in the above conventional pitch extraction method for input speech, it is necessary to calculate correlations over a wide range of input data, and as a result, when attempting to extract pitch in real time, the extraction resolution becomes coarse. There is. For example, the pip frequency of a human singing voice is 80 to 8.
00) (z, and the sampling frequency is 32,768
In the case of HZ, the delay time τ for pitch search is 40 to 4
00 over a wide range. 7L/-mu 4 to calculate the correlation
If Q Q point = 12 m sec, it is impossible to calculate the correlation over the entire range within this time, and therefore the pitch extraction resolution becomes coarse. If the extraction resolution of the audio pitch is coarse, there will be many erroneous pitch extractions, and subtle musical tones such as vibrato and voltament cannot be generated.
本発明は上記の点に鑑みてなされたもので。 The present invention has been made in view of the above points.
ピッチを実時間で抽出する場合に、抽出分解能をサンプ
リング周波数で決まる最大限まで上げることができ、ピ
ッチの誤抽出を減少できると共に、微妙な楽音を発生す
ることができる音声入力による楽音発生装置を提供する
ことを目的とする。When extracting pitches in real time, the extraction resolution can be increased to the maximum determined by the sampling frequency, and the erroneous extraction of pitches can be reduced, as well as a musical sound generation device using voice input that can generate subtle musical sounds. The purpose is to provide.
本発明は、ピッチ抽出の分析フレームを、粗い分解能で
広範囲の遅れに対して相関を計算するフレームと、その
フレームで抽出した最大相関値に対する遅れ時間τに基
づき最大限の分解能ゼ狭い範囲の遅れ時間に対して相関
を計算するフレームの2段構成にすることにより、ピッ
チの分解能を向上するようにしたものである、〔発明の
実施例〕
以下図面を参照して本発明の一実施例を説明する。まず
、第1図により楽音発生装置全体の概略構成について説
明する。同図において11はマイクロホンで、このマイ
クロホン1ノからの音声入力は、ピッチ抽出部12内の
前処理部13へ送られる。この前処理部13は、例えば
AGC回路を備えた増幅器、ローパスフィルタ回路等か
らなっており、その処理データなA/D変換部14へ出
力する。このA/D変換部14は1例えば32KHz(
32,768Hz)で入力信号をサンプリングして6ピ
ツトのデジタル信号に変換し、三値相関部15へ出力す
る。この三値相関部15は、入力データを、予め設定さ
れている士のスレシホールドレベルと比較し。The present invention divides the pitch extraction analysis frame into a frame in which correlation is calculated over a wide range of delays with coarse resolution, and a frame in which correlation is calculated for a wide range of delays with coarse resolution, and a delay time in a narrow range with maximum resolution based on the delay time τ for the maximum correlation value extracted in that frame. [Embodiment of the Invention] An embodiment of the present invention will be described with reference to the drawings below. explain. First, the general structure of the entire musical tone generator will be explained with reference to FIG. In the figure, reference numeral 11 is a microphone, and audio input from this microphone 1 is sent to a preprocessing section 13 in a pitch extraction section 12. The preprocessing section 13 is composed of, for example, an amplifier equipped with an AGC circuit, a low-pass filter circuit, etc., and outputs the processed data to the A/D conversion section 14. This A/D converter 14 has a frequency of 1, for example, 32 KHz (
The input signal is sampled at a frequency of 32,768 Hz), converted into a 6-pit digital signal, and output to the ternary correlation section 15. This ternary correlation unit 15 compares the input data with a preset threshold level.
r+xJ 、rOJ 、r−tJの三値データに変換す
る。この三値量子化部15で量子化されたデータは、有
音/無音判定部16及び自己相関計算部17へ送られる
。この自己相関計算部17は、詳細を後述するが、入力
データによって相関を計算し、最大値判定部18へ出力
する。Convert to ternary data of r+xJ, rOJ, and rtJ. The data quantized by the ternary quantization unit 15 is sent to the voice/silence determination unit 16 and the autocorrelation calculation unit 17. The autocorrelation calculating section 17 calculates a correlation based on the input data, and outputs it to the maximum value determining section 18, although the details will be described later.
この最大値判定部18は、τ=0以外で相関値が最大T
となZ・遅れ時間τ=Tをピッチと判定する。そして、
この最大値判定部18の判定結果が、ピッチ抽出部12
の出力としてCPU19へ送られる。また、上記有音/
無音判定部16は、三値量子化部15からの信号を計数
してそのパワーをめ、そのパワーから有音/無音を判別
して自己相関計算部17及びCPU19へ出力′する。This maximum value determination unit 18 determines that the correlation value is the maximum T when τ is other than 0.
Then, Z・delay time τ=T is determined to be the pitch. and,
The determination result of this maximum value determination unit 18 is determined by the pitch extraction unit 12.
It is sent to the CPU 19 as an output. Also, the above sound/
The silence determination unit 16 counts the signal from the ternary quantization unit 15 to determine its power, determines voice/silence based on the power, and outputs it to the autocorrelation calculation unit 17 and CPU 19.
このCPUW9は、上記入力データに従って、ピッチに
対応した周期の楽器音を発生−するように楽片発生部2
0を制御し。The CPUW 9 controls the musical piece generation unit 2 to generate musical instrument sounds with a period corresponding to the pitch according to the input data.
Control 0.
スピーカ21より出力させる。output from the speaker 21.
次に上記自己相関「(算部17部分の詳細について第2
図を参照して説、明する、三値量子化部15から送られ
てくるデータは、自己相関計算部17内のR,kM31
に入力されるζ共に、有音/無音判定部16へ入力され
る。この有音/無音判定部16は、カウンタ16a及び
判断回路16bからなり、カウンタ16において三値量
子化部15からのデータ(r+t J r−1nを計数
してそのパワーをめ1判…「回路16bにおいて上記パ
ワーから有音/無音を判断する。Next, the above autocorrelation “(For the details of calculation section 17, please refer to the second section.
The data sent from the ternary quantization unit 15, which will be explained with reference to the figure, is stored in the R, kM 31 in the autocorrelation calculation unit 17.
Both ζ input to the input signal ζ are input to the voice/silence determining section 16 . The sound/silence determining section 16 is composed of a counter 16a and a judgment circuit 16b. In step 16b, presence/absence of sound is determined from the power.
この判断回路16bから出力される有音/無音判断信号
は、CPUz9へ送られる他、自己相関」算部17内の
タイミング制御部32へ送られる。このタイミング制御
部32は、クロックパルスφ8、フレーム信号φf、ロ
ード信号φL、ゲート制御等を行なうためのタイミング
信号φ人、φB、φG、読出し/書込み命令R/W、、
R/V’を等を発生する。そして、上記タイミング制御
部32から出力されるフレーム信号φfは、′例えば4
00進のフレームカウンタ33へ送られる。このフレー
ムカウンタ33は。The sound/non-sound determination signal outputted from the determination circuit 16b is sent to the CPUz9 as well as to the timing control section 32 in the autocorrelation calculation section 17. The timing control unit 32 includes a clock pulse φ8, a frame signal φf, a load signal φL, timing signals φB, φG, read/write commands R/W, etc. for performing gate control, etc.
Generate R/V' etc. The frame signal φf outputted from the timing control section 32 is, for example, 4
It is sent to the frame counter 33 in base 00. This frame counter 33 is.
上記フレーム信号φfにより0〜399までのカウント
を行ない、そのカウント内容をアドレス組算部34へ出
力すると共に、タイミング信号φBによりゲート制御さ
れるゲート回路01を介してRAMJJへ出力する。さ
らに、上記タイミング制御部32から出力されるクロッ
クパルスφ1は、カウントパルスとして例えば8【)進
のカウンタ35へ入力される。また、このカウンタ35
には、上記タイミング信号φ○がクリア信号として与え
られると共に、初期値設定回路36から「τ−m」のデ
ータが与えられる、この場合、τは相フレームで抽出さ
れるピッチの遅れ最大値であり1mは定数で例えば「3
9」に設定される。そして、上記初期値設定1司路36
から出力さ八、る「τ−m」は、タイミング制御部32
からのロートイ3号φL(二よってフレームカウンタ3
5にロードされる、このフレームカウンタ35は、上記
「τ−m」がロードされると、その後「0〜79」をカ
ウント、つまり、1τ−n1〜τ−m+79Jをカウン
トし、そのカウント出力をROMJ7へ入力すると共に
、ゲート回路G2を介してアドレス計算部34及びRO
M J 8へ入力する。上記ROM37には、 I’l
lフレームの時の遅れ時間τ0〜τ1.が租込まオ℃て
おり、カウンタ35のカウント値に従って記憶内容が読
出され、ゲート回路G3を介してアドレス計算部34及
びROM38へ送られる。このROM38+−は、上記
「 τ0〜 τ 、J、r τ −m〜 τ −m−1
−79Jl二対するウィンドウ関数が記憶さ八ており、
その記憶データは論理ゲート39を介して加減算回路4
0の入力端子aに入力される。そして、上記ゲート回路
G、はタイミング信号φAによってゲート制御され、ゲ
ート回路G、はインノ(−夕41を介して与えられるタ
イミング信号φ人によってゲート制御される。しかして
、上記アドレス計算部34は、カウンタ33のカウント
値jとゲート回路02又は0.を介して送られてくるデ
ータτ1とを加勢ル、その加算結果をタイミング信号φ
、によりゲート制御されるゲート回路O3を介してRA
MJzへ出力する。A count from 0 to 399 is performed using the frame signal φf, and the count contents are outputted to the address combination section 34 and also to the RAMJJ via the gate circuit 01 whose gate is controlled by the timing signal φB. Furthermore, the clock pulse φ1 outputted from the timing control section 32 is inputted as a count pulse to, for example, an octal counter 35. Also, this counter 35
is given the above-mentioned timing signal φ○ as a clear signal, and also given data of "τ-m" from the initial value setting circuit 36. In this case, τ is the maximum pitch delay value extracted in the phase frame. Yes 1m is a constant, for example "3
9”. Then, the initial value setting 1 circuit 36
“τ−m” outputted from the timing control unit 32
Low toy No. 3 φL (2 frame counter 3
When the above-mentioned "τ-m" is loaded, this frame counter 35, which is loaded into the frame counter 5, counts "0 to 79", that is, counts 1τ-n1 to τ-m+79J, and outputs the count output. At the same time as being input to the ROMJ7, the address calculation unit 34 and RO are input via the gate circuit G2.
Input to MJ8. The above ROM37 contains I'l
Delay time τ0 to τ1 for l frame. The stored contents are read out according to the count value of the counter 35 and sent to the address calculation unit 34 and ROM 38 via the gate circuit G3. This ROM38+- has the above-mentioned "τ0 ~ τ, J, r τ -m ~ τ -m-1
The window function for −79Jl2 is stored,
The stored data is transferred to the addition/subtraction circuit 4 via the logic gate 39.
It is input to input terminal a of 0. The gate circuit G is gate-controlled by the timing signal φA, and the gate circuit G is gate-controlled by the timing signal φ applied via the input terminal 41. , the count value j of the counter 33 and the data τ1 sent via the gate circuit 02 or 0. are added, and the addition result is used as the timing signal φ.
RA via gate circuit O3 gate-controlled by ,
Output to MJz.
また、このRAM31には、タイミング制御部32から
読出し/書込み4M号R、’ W 、カ1与えられる。Further, this RAM 31 is given read/write 4M numbers R, 'W, and 1 from the timing control section 32.
上記RAMJJには−、上記アドレスデータに従って三
値量子化データ例えばI) j +o〜Dj−1−sa
yが書込まわる。そして、RAMJJから読出されるデ
ータは、直接及び遅延回路42を介して乗算回路43へ
送られる、この乗坤回路43け、入力データに対する乗
算を行ない、その乗算結果におけるデータを上記論理ゲ
ート39へ入力し、正負を示すサインピットを加減算回
路40の減%1制御端子subへ入力する。」ユ記加瀦
貌IN回路40の出力は、RAM45へ送うれる。この
RAM45には、アドレスカウンタ46からアドレスデ
ータが入力されると共に、夕・fミンク制御部32から
臥・出し/書込み命令R/ W 2が入力される。上記
アドレスカウンタ46は、タイミング信号φCによって
クリアされ、クロックパルスφ1によってカウントアツ
プ動作する。」1記メモリ45は、1己相関値R6(τ
)〜■<77(τ)を記憶するもので。The above RAMJJ contains −, ternary quantized data according to the above address data, for example I) j +o to Dj-1-sa
y is written. The data read from RAMJJ is sent directly and via the delay circuit 42 to the multiplication circuit 43. This multiplication circuit 43 multiplies the input data and sends the multiplication result data to the logic gate 39. A sign pit indicating positive or negative is input to the subtraction %1 control terminal sub of the addition/subtraction circuit 40. The output of the input circuit 40 is sent to the RAM 45. Address data is input from the address counter 46 to this RAM 45, and a sleep/out/write command R/W 2 is input from the evening/f mink control section 32. The address counter 46 is cleared by the timing signal φC, and performs a count-up operation by the clock pulse φ1. ”1 memory 45 stores the 1st correlation value R6(τ
)~■<77(τ).
その記憶データは、加^λ算回路40の入力文1.1子
すへ入力さBると共に、最大値検’&1BIS 47へ
送られる。この最大値検出部47は、入力される自己相
関(r+a R6(τ)〜R,,(τ)の中から最大値
における遅れ時間τを検出し、初期値設定回路36へ出
力すると共にCPUJ9へ出力する。The stored data is input to the input sentence 1.1 child of the addition circuit 40, and is also sent to the maximum value detection '&1 BIS 47. The maximum value detection unit 47 detects the delay time τ at the maximum value from the input autocorrelation (r+a R6(τ) to R,,(τ)), and outputs it to the initial value setting circuit 36 and to the CPUJ9. Output.
次に、上記実施例の11作を説明する。マイクロホン1
1から入力される音声データは、前処理部13で音声信
号帯域外の雑音等が除去されると共に特定の振幅値にな
るように増幅される。Next, 11 works of the above embodiment will be explained. Microphone 1
1, the preprocessing section 13 removes noise and the like outside the audio signal band, and amplifies the audio data to a specific amplitude value.
そして、この前処理された入力データは、 A/D変換
部14によりデジタル4j号に変換されて三値量子化部
15へ送られる。この三値量子化部15は、予め設定さ
れている士のスレシホールドレベルと入力データを比較
し、l+lJ。This preprocessed input data is then converted into digital 4J data by the A/D converter 14 and sent to the ternary quantizer 15 . This ternary quantization unit 15 compares the input data with a preset threshold level of 2, and calculates l+lJ.
rOJ I r−IJの三値データに変換する。この三
値データは1次表に示すように′F3号ビットとデータ
ビットの計2ビットからなり、[+lJまたは「(1」
のとき符号ピットは「0」。rOJ I Convert to r-IJ ternary data. As shown in the primary table, this ternary data consists of a total of 2 bits, the 'F3 bit and the data bit, and is expressed as [+lJ or (1)].
When , the code pit is "0".
r−1」のとき祠号ビットはIllとなる。また、デー
タビットはその絶対値を示し、三(++’jデータが「
±l」のとさ[」、roJのとき「0」となる。r-1'', the shrine number bit becomes Ill. Also, the data bit indicates its absolute value, and the 3(++'j data is "
The height of ±l” becomes “0” when roJ.
表 1
しかして、」二組三値量子化部15で量子化さnだチー
9>’L、 30.5 tt sec I 32 KH
z )の周期で自己相関計算部17及び有音/無音判定
部16へ送ら八、る。この有音/無音判定部16は、入
力データのパワーを計算して有音/無音を判定し、その
判定結果をCP(JI9及び自己相関81算部17内の
タイミング制御部32へ出力する。自己相関81算I7
は、データが入力されると各データに対し7て781i
d(の遅れτについて相関を計算し、398のデータに
関して自己相関を
1((Ti)= ”3 L)fJ)・1Jfj+4i)
・w(fi) −=−(11j=0
R(Ti)は自己相関値、 D(jlけ三値量子化され
たデータ、W(τl)はウィンドウ関数(荷重関数)で
ある。Table 1 However, the two sets of quantization by the ternary quantization unit 15 are n>'L, 30.5 tt sec I 32 KH
The signal is sent to the autocorrelation calculation unit 17 and the voice/silence determination unit 16 at a period of 8.z). The voice/silence determination unit 16 calculates the power of the input data to determine voice/silence, and outputs the determination result to the timing control unit 32 in the CP (JI 9 and autocorrelation 81 calculation unit 17). Autocorrelation 81 Calculation I7
is 781i for each data when the data is input.
Calculate the correlation for the delay τ of d(, and calculate the autocorrelation for 398 data as 1((Ti)=”3L)fJ)・1Jfj+4i)
・w(fi) −=−(11j=0 R(Ti) is an autocorrelation value, D(jl ternary quantized data, W(τl) is a window function (weighting function).
以下第2図に詳細を示す自己相関計算部17において行
なわil、る自己相関計算部理の動作について説明する
。ます、タイミング信号φBによってゲート回路G、の
ゲートが開かれ、フレームカウンタ33の出力によって
RAMJJのアドレスが指定され、その指定アドレスに
玉値卒子化データD (jlが潜込まれる。次いでRA
M3)から量子化データD(jlが読出され、遅延回路
42にラッチされる。その後、タイミング信号φ0が出
力されてゲート回路04のゲートが開かれ、アドレス計
算部34の出力によってRAM31のアドレスが指定さ
れる。この時。The operation of the autocorrelation calculation section carried out in the autocorrelation calculation section 17, the details of which are shown in FIG. 2, will be explained below. First, the gate of the gate circuit G is opened by the timing signal φB, the address of RAMJJ is specified by the output of the frame counter 33, and the ball value graduation data D (jl) is hidden in the specified address.
Quantized data D (jl) is read out from M3) and latched in the delay circuit 42. Then, the timing signal φ0 is output, the gate of the gate circuit 04 is opened, and the address of the RAM 31 is determined by the output of the address calculation unit 34. Specified.At this time.
アドレス計算部34は、フレームカウンタ33の出力j
とROM5yの出力τ1とを加算して出力している。従
ってRAMJJは上記加算出力(j+τi)によりアド
レスが指定されて次・の量子化データD(j+τi)が
書込まれる。The address calculation unit 34 uses the output j of the frame counter 33
and the output τ1 of the ROM 5y are added and output. Therefore, the address of RAMJJ is specified by the addition output (j+τi), and the next quantized data D(j+τi) is written.
そして、このRAM31に書込まれたデータD(i+τ
t)は、乗算回路43に読出され。Then, data D(i+τ
t) is read out to the multiplication circuit 43.
遅延回路42に保持されているデータD(j)との間で
乗算、つまりD(jl・D(j+τi)の乗算が行なわ
2する、そして、上記乗算回路42から出力されるデー
タは論理ゲート39へ送らオシ、■< 0八438から
読出されるウィンドウ値との間で乗算が行なわれる。こ
の場合、乗算回路43の出力は、三イ1〆i (l l
、 00 、01 )であるので、データ部が「工」
のときROM38からのiり・イントウ(直を論1)p
ゲート39から出力し。Multiplication is performed with the data D(j) held in the delay circuit 42, that is, multiplication by D(jl·D(j+τi)), and the data output from the multiplication circuit 42 is sent to the logic gate 39. Multiplying is performed between the window value sent to 438 and the window value read from 438. In this case, the output of the multiplier circuit 43 is 3i1〆i (l l
, 00, 01), so the data part is "engineering".
When , input from ROM38 (direction 1) p
Output from gate 39.
「0」のとき論理ゲート39の出力を禁止でる。When it is "0", the output of the logic gate 39 is inhibited.
そして、上記論理ゲート39の出力は、加減算回路40
の人力☆;1(1子21に入力される。この加減算回路
40は1乗算回路43から送しれてくるサインピッ1が
「()」のとぎは加算、「1」のときはlA′!、′#
!l111作を1ノなう。そして、上記加減算1111
1!′1<40の曲多−出力な遅延回路44を介してR
A k*145にN込むと共に、その記憶データを加減
算回路40の入力端子すに読出し、次のデータのとの間
で加減算をイーjなって累算値をめる。以下、上記の計
算をフレームカウンタ33のカウント値j−(]〜39
7に従って[398jのデータに関して行ない、lフレ
ーム分の相関計算を終了する。そして%J二398のタ
イミングで、最大値検出部47によりRA M 45の
記憶データの中から最大の自己相関値R(τ1)を検出
し、その遅れτ1をCPU 79及び初期値設定回路3
7へ出力する。The output of the logic gate 39 is then sent to an addition/subtraction circuit 40.
Human power ☆; 1 (input to 1 child 21. This addition/subtraction circuit 40 adds when the signal pick 1 sent from the 1 multiplication circuit 43 is "()", and when it is "1", lA'!, ′#
! 111 works are now available. And the above addition/subtraction 1111
1! '1 < 40 through the output delay circuit 44
At the same time as inputting N into A k*145, the stored data is read out to the input terminal of the addition/subtraction circuit 40, and addition/subtraction is performed between the next data and the accumulated value. Hereinafter, the above calculation will be performed using the count value j-(]~39 of the frame counter 33.
7 is performed on the data of [398j, and the correlation calculation for l frames is completed. Then, at the timing of %J2398, the maximum value detection unit 47 detects the maximum autocorrelation value R (τ1) from the data stored in the RAM 45, and the delay τ1 is detected by the CPU 79 and the initial value setting circuit 3.
Output to 7.
しかして、上記自己相関値のR1算は、第4図に示すよ
うに粗い分解能で広範囲の遅れに対して相関を唱qする
粗フレームと、こQ目11フレームで抽出した最大相関
値に対する遅れ時間τに基づき最大限の分解能で狭い範
囲の遅れ[「間に対して相関を51所するWiフレーム
の2段構成で行なわれる。上記粗フレームと密′クレー
ムでは。Therefore, as shown in Figure 4, the R1 calculation of the autocorrelation value is based on the coarse frame in which a correlation is expressed over a wide range of delays with coarse resolution, and the delay relative to the maximum correlation value extracted in the Qth 11th frame. A narrow range delay with maximum resolution based on the time τ is carried out in a two-stage configuration of Wi frames with 51 correlations between them.
アドレスH1′#、部34へ送られるTiの値が異なる
だけである。上記遅れlI!「1l−1Jτiは、カウ
ンタ35のカウント動作に応じて出力さ)l、る。上記
カウンタ35は、クロックパルスφ、にょって動作し、
第3図に示すように各フレームデータに対して80カウ
ントする。そして、上記カウンタ35は、各フレームの
最終タイミングで、タイミング信号φCによりクリアさ
れ1次のフレームで新しくカウント動作を開始する。こ
の場合、粗フレームであハば、−カウンタ35は。The only difference is the address H1'# and the value of Ti sent to section 34. The above delay! 1l-1Jτi is output according to the counting operation of the counter 35. The counter 35 operates according to the clock pulse φ,
As shown in FIG. 3, 80 counts are made for each frame data. The counter 35 is cleared by the timing signal φC at the final timing of each frame, and starts a new counting operation in the first frame. In this case, if it is a coarse frame, -counter 35 is.
タイミング信号φCによりクリアされた後、初期値「0
」から「79」までカウントアツプ動作すム。この時の
カウンタ35のカウント値によっテr< o Ms 7
のアドレスが指定される。この1<0M5vには、粗フ
レームの時の遅れ時間τi(τ。〜r77)が記憶され
ており、上記カウンタ35のカウントアツプ動作に従っ
てその記憶内容がゲート回路03を介してアドレス計算
部34に読出される。このアドレス計算部34は、RO
M 37から読出される遅れ時間τlとカウンタ33の
出力」とを加算し、その加算結果rj+Tijによって
RAM31のアドレスを指定する。また、上記ROMa
vの出力τiによってフィンドウ関数38のアドレスが
指定される。そして、遅れ時間τ。〜τ77までの処理
を終了し、カウンタ35のカウント値が第3図に示すよ
うに「78」になると、 RAM31に読出し命令R/
W、が与えられ、RAM3ノの記憶内容が読出される。After being cleared by the timing signal φC, the initial value "0"
'' to ``79''. At this time, depending on the count value of the counter 35, ter< o Ms 7
address is specified. In this 1<0M5v, the delay time τi (τ.~r77) for the coarse frame is stored, and the stored contents are sent to the address calculation section 34 via the gate circuit 03 according to the count-up operation of the counter 35. Read out. This address calculation unit 34 is RO
The delay time τl read from M37 and the output of the counter 33 are added, and the address of the RAM 31 is designated by the addition result rj+Tij. In addition, the above ROMa
The address of the find function 38 is specified by the output τi of v. And the delay time τ. When the process from ~τ77 is completed and the count value of the counter 35 reaches "78" as shown in FIG.
W is given, and the contents of RAM3 are read out.
次いでカウンタ35の値が179」にカウントアツプす
ると、その最終タイミングでタイミング制御部32から
タイミング信号バー出力され、カウンタ35がクリアさ
れる。」1記のように粗フレームでは。Next, when the value of the counter 35 counts up to 179'', the timing control unit 32 outputs a timing signal bar at the final timing, and the counter 35 is cleared. ” In the rough frame as described in 1.
’i<0M3vに記憶されている遅れ時間τ1に従って
上記した自己相関値をめる計算が行なわれる。A calculation is performed to calculate the above autocorrelation value according to the delay time τ1 stored in 'i<0M3v.
上記粗フレームに対する処理が終了すると。When the processing for the coarse frame is completed.
その時の無音/有無フレームの状態に従って密フレーム
が選択的に実杓される。すなわち、第4図に示すように
無音フレームから有音フレームになった最初の有音フレ
ームは粗フレームとし、次に密フレームとなる。それ以
後、有音フレームが続く限り、粗フレームと密フレーム
が交仕に繰返されZ・。そして、無音フレームでは。Dense frames are selectively displayed according to the state of silent/absent frames at that time. That is, as shown in FIG. 4, the first sound frame that changes from a silent frame to a sound frame is a coarse frame, and then becomes a dense frame. After that, as long as the sound frame continues, coarse frames and fine frames are alternately repeated Z. And in silent frames.
組フレームの処理がhなわれる、しがして、密フレーム
では、タイミング制御部32がらロード信号φLが出力
さ肌、初期値設定回路36がら出力される[τ−m j
の値がカウンタ35にロードさ牡る。上記初期値設定回
路36は、前回の和フレームでめた最大+14関値にお
ける遅れ時間τから一定値mを減鈍し、その減算結果「
τ−1nJを初期値として出力すZ・。そして、上記カ
ウンタ35は、上記]°τ−m lの値がロードされる
と、この値を初期値としてその後クロックパルスφ、に
よりr+80Jカウントする。今例えば組フレームで抽
出された遅れ時間r+=rs6であり、また、「m J
の値が「39」に設定されているきすれば、「r−m=
186−39=I 47Jとなり、「147Jの値がカ
ウンタ35にロードされる。従って。However, in the case of a dense frame, the load signal φL is output from the timing control section 32 and the initial value setting circuit 36 outputs [τ-m j
The value of is loaded into the counter 35. The initial value setting circuit 36 reduces the delay time τ at the maximum +14 function value obtained in the previous sum frame by a constant value m, and the subtraction result is “
Z・ outputs τ-1nJ as the initial value. When the counter 35 is loaded with the value of [°τ-ml], the counter 35 uses this value as an initial value and then counts r+80J using the clock pulse φ. Now, for example, the delay time r+=rs6 extracted from the set frame, and "m J
If the value of is set to "39", then "r-m=
186-39=I47J, and the value of 147J is loaded into the counter 35. Therefore.
カウンタ35は、「j47Jを初期値としてr226j
までカウントアツプするが、 r147J〜「224」
o)78棟のτiがゲート回路02を介してアドレス計
算部34及びROM5sへ送られる。・これにより前回
の粗フレームで抽出されたピッチ、つまり、遅れ時間τ
iを中心として78種の遅れに対する相関が計算される
。The counter 35 is "r226j with j47J as the initial value.
It counts up to r147J ~ "224"
o) τi of 78 buildings is sent to the address calculation unit 34 and ROM 5s via the gate circuit 02.・This allows the pitch extracted in the previous coarse frame, that is, the delay time τ
Correlations for 78 types of delays are calculated with i as the center.
そして、その時の最大相関値に対する遅れ時間τがCP
U19へ送られる。Then, the delay time τ with respect to the maximum correlation value at that time is CP
Sent to U19.
C’PU19は、最大値判定部18から送られてくる最
大相関値に対する遅れ時間τ及び有音/無音判定部16
からの有音/無音信号に従って楽音発生部20を制御し
1.検出ピッチに対応した周期の楽器音をスピーカ2ノ
より出力させる。The C'PU 19 calculates the delay time τ with respect to the maximum correlation value sent from the maximum value determination unit 18 and the sound/silence determination unit 16.
Control the musical tone generator 20 according to the sound/silence signal from 1. A musical instrument sound having a period corresponding to the detected pitch is output from a speaker 2.
以」二述べたように本発明によれば、粗い分解能で広範
囲の遅れに対して相関を計算1−るフレームと、そのフ
レームで抽出した最大相関値に対する遅れ時間τに基づ
き最大限の分解能で狭い範囲の遅れ時間に対して相関を
計aするフレームの2段構成としたので、ピッチを実時
間で抽出する場合に、抽圧分解能をサンプリング周波数
で決まる最大限まで上げることができ、ピッ、チの誤抽
出を防止できると共に、ピッチ抽出が音階対応だけでは
不可能であった例えばビブラート、ボルタメント等の微
妙な楽音を発生し得るものである。As described above, according to the present invention, correlations are calculated over a wide range of delays with coarse resolution, and the correlation is calculated with maximum resolution based on the delay time τ for the maximum correlation value extracted in that frame. Since it has a two-stage configuration of frames that measure the correlation over a narrow range of delay times, when extracting pitches in real time, the extraction resolution can be increased to the maximum determined by the sampling frequency. In addition to preventing erroneous extraction of pitches, it is also possible to generate delicate musical tones such as vibrato and voltamento, which would not be possible if pitch extraction were based only on scale correspondence.
図面は本発明の一実施例を示すもので、第1図は装F(
全体の概略構成を示す図、第2図は第1図における自己
相関計算部の詳細を示すブロック図、第3図及びクシ4
図は動作を説明するためのタイミングチャートである。
11°°゛マイクロホン、12・・・ピッチ抽出部。
16・・・有音°/無音片判定部12・・・自己相関計
算部、31・・・三値格子化データ記憶用RAJ33・
・・ソレーノ・カウンタ、34・・・アドレス計算部、
35・・・カウンタ、36・・・初期値設定回路。
37・・・組フレーム遅れ時間記憶用ROM、s8・・
・ウィンドウ門数記憶用ROM、39・・・論理ゲート
、4o・・・加誠算回路、4.2.44・・・遅延回路
、45・・・相関値記憶hI RA M。The drawings show one embodiment of the present invention, and FIG.
Figure 2 is a block diagram showing the details of the autocorrelation calculation section in Figure 1, Figure 3 is a diagram showing the overall schematic configuration, Figure 3 is a block diagram showing the details of the autocorrelation calculation section in Figure 1,
The figure is a timing chart for explaining the operation. 11°°゛microphone, 12...pitch extraction section. 16...Sound/silent piece determination section 12...Autocorrelation calculation section, 31...RAJ33 for storing ternary lattice data
...Soleno counter, 34...Address calculation section,
35...Counter, 36...Initial value setting circuit. 37...ROM for storing set frame delay time, s8...
- ROM for storing the number of window gates, 39...logic gate, 4o...addition circuit, 4.2.44...delay circuit, 45...correlation value storage hI RAM.
Claims (1)
音発生装置において、上記音声ピッチ情報の抽出に際し
、σ範囲の音階に対して相関H1豹を行ない最大相関値
に対するピップ−情報を抽出する手段と、この手段によ
り抽出したピッチ情報周辺の球い範囲に対し高分wr能
で相関計p、を行なってピッチ情報を抽出する手段とを
具備したことを特徴とfるKr入力による楽音発生装置
。[Claims] Voice pitch information is output from voice input information. In a musical tone generating device that generates a musical tone with a local period corresponding to this voice pitch information, when extracting the voice pitch information, a means for performing correlation H1 on scales in the σ range and extracting pip information for the maximum correlation value. and a means for extracting pitch information by performing a correlation meter p with high resolution on a spherical range around the pitch information extracted by this means. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58221826A JPS60113295A (en) | 1983-11-25 | 1983-11-25 | Musical sound generator by voice input |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58221826A JPS60113295A (en) | 1983-11-25 | 1983-11-25 | Musical sound generator by voice input |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS60113295A true JPS60113295A (en) | 1985-06-19 |
Family
ID=16772792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58221826A Pending JPS60113295A (en) | 1983-11-25 | 1983-11-25 | Musical sound generator by voice input |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60113295A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02126298A (en) * | 1988-11-05 | 1990-05-15 | Yoichi Ando | Acoustic reproducing device |
-
1983
- 1983-11-25 JP JP58221826A patent/JPS60113295A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02126298A (en) * | 1988-11-05 | 1990-05-15 | Yoichi Ando | Acoustic reproducing device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE33739E (en) | Electronic musical instrument | |
JPH0361959B2 (en) | ||
JPS5917838B2 (en) | Waveform generator for electronic musical instruments | |
JPS5844500A (en) | Voice recognition system | |
JP3402748B2 (en) | Pitch period extraction device for audio signal | |
JPS60113295A (en) | Musical sound generator by voice input | |
JPS60192993A (en) | Musical sound generator by inputting voice | |
JPH0261760B2 (en) | ||
JPS621000A (en) | Voice processor | |
JPH0122638B2 (en) | ||
JPS635398A (en) | Voice analysis system | |
JPS59176782A (en) | Digital sound apparatus | |
JPS6325697A (en) | Electronic musical instrument | |
JPS6010299A (en) | Voice message length forecaster | |
JPS63234299A (en) | Voice analysis/synthesization system | |
JPH0736119B2 (en) | Piecewise optimal function approximation method | |
JPS63210900A (en) | Voice synthesizer | |
JPS62182799A (en) | Acoustic signal analyzer/synthesizer | |
JP4007628B2 (en) | Speech synthesizer for normalizing the pitch of speech pitch | |
JPS6039700A (en) | Detection of voice section | |
JP2003255930A (en) | Encoding method for sound signal | |
JPH0659700A (en) | Voice data compressor | |
JPS6265098A (en) | Music vocoder | |
JPS60104892U (en) | Musical sound generation device using voice input | |
JPS6252600A (en) | Method and apparatus for generating conversion of signal |