JPH04230795A - 波形発生方法 - Google Patents

波形発生方法

Info

Publication number
JPH04230795A
JPH04230795A JP3107192A JP10719291A JPH04230795A JP H04230795 A JPH04230795 A JP H04230795A JP 3107192 A JP3107192 A JP 3107192A JP 10719291 A JP10719291 A JP 10719291A JP H04230795 A JPH04230795 A JP H04230795A
Authority
JP
Japan
Prior art keywords
waveform
window function
zero value
waveforms
samples
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.)
Granted
Application number
JP3107192A
Other languages
English (en)
Other versions
JPH0736115B2 (ja
Inventor
Kinji Kawamoto
河本 欣士
Masataka Nikaido
正隆 二階堂
Tatsuya Adachi
達也 足立
Kazuhiro Murase
村瀬 多弘
Tetsuhiko Kaneaki
哲彦 金秋
Sakurako Matsuda
松田 桜子
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP3107192A priority Critical patent/JPH0736115B2/ja
Publication of JPH04230795A publication Critical patent/JPH04230795A/ja
Publication of JPH0736115B2 publication Critical patent/JPH0736115B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数の波形の補間演算
により、時間変化を自在につくり出し、自然な感じの音
声や楽音を作り出すようにした波形発生方法であって、
音声合成器や電子楽器に適したものである。
【0002】
【従来の技術】従来、楽音波形の発生方法としては、複
数の波形をメモリに記憶しておき、この波形の1つを所
定回繰り返して、順次つぎの新たな波形に切り替えてゆ
くことによって、音声波を合成する方法がある。また、
他に特願昭55−155053号のように、複数の波形
の補間計算を行なう方法がある。
【0003】
【発明が解決しようとする課題】上述した第1の方法で
は波形の切り替わり時に全く異なるスペクトルをもつ波
形をつなぐために、なめらかな音質の変化ができず、不
要な雑音が発生する。また、第2の方法を用いた場合、
自由な波形を発生させるためには、さらに工夫が必要で
ある。
【0004】本発明は、ある波形から別の波形への推移
がなめらかで、かつ、その推移が波形の周期にとらわれ
ることなく自由に行なえる波形発生方法を提供すること
を目的とする。
【0005】
【課題を解決するための手段】本発明の波形発生方法は
、様々な周期を有するN個(Nは正の整数)の波形を記
憶するN枚の波形メモリのうちNより十分少ない複数の
波形メモリより波形サンプルを読み出してこれらの差サ
ンプルを発生させ、零値または実質的零値を有する窓関
数を発生させて、上記差サンプルと上記窓関数とを乗算
し、その積を上記複数の波形サンプルの1つに加算して
出力波形を得、上記窓関数が零値または実質的零値にお
いて、上記波形メモリの読み出しを切り換えるようにし
たものである。
【0006】
【作用】本発明は上記した方法をとることにより、波形
の切り替わり点でのスペクトルがなめらかに変化するの
で、不要な雑音の発生がない。
【0007】
【実施例】図1は本発明の一実施例のブロック図である
。図1において、1,2は楽音の波形を発生する波形発
生器であり、複数種類の波形WI1〜WI5を記憶した
メモリ5と、WII1〜WII5を記憶したメモリ6か
ら波形のサンプルを所定の順序で読み出す。読み出され
た波形サンプルは、乗算器7と8に供給される。3,4
は窓関数発生器であって、後述する窓関数波を出力する
。乗算器7と8は、波形と窓関数を乗算し、加算器9は
その積の和を算出する。エンベロープ発生器10と乗算
器11は、加算器9の出力波形に、エンベロープ変化を
付加する。乗算器11の出力はディジタルアナログ変換
されて音波形となり出力される。
【0008】次に波形と窓関数について説明する。波形
WI1〜WI5,WII1〜WII5はそれぞれ、自然
音声や楽器音の一周期分より構成されているものとする
。そして、図2(a)に示すように、WI1〜WI5の
各区間において、波形WI1〜WI5のそれぞれが繰り
返される。 一方、窓関数は図2(b)に示すように、FI1〜FI
5のような三角形状の関数とする。波形WI1〜WI5
とWII1〜WII5、窓関数FI1〜FI5とFII
1〜FII5は図2(a)と(c)、(b)と(d)と
を対比するとわかるように、波形の切り替え時刻と、窓
関数の位相かそれぞれたがいに異なっている。
【0009】時刻nTにおける波形WIiのサンプル値
をWIi(nT)、窓関数をFIi(nT)、波形WI
Iiのサンプル値をWIIj(nT)、窓関数をFII
j(nT)とすると出力波形WO(nT)は(数1)と
なる。
【0010】
【数1】
【0011】WIi区間において、波形WIiは繰り返
し読み出され、Ri波を発生する。Riの値は窓関数F
Iiの時間長に依存し、整数のときもあるが、小数のと
きもある。小数のときは波形WIiの途中から波形WI
i+1に切り替わる。この場合、波形WIiとWIi+
1の位相は必ずしも連続でないから、波形間でなめらか
に推移するとは限らないが、窓関数FIiからFIi+
1に移るときに零値を経るから、乗算出力WIi×FI
iはなめらかに推移する。乗算出力WIIj×FIIj
についても同様のことが云える。すなわち、波形WIi
,WIIjの位相,繰り返し回数のいかんにかかわらず
、乗算出力においては、出力波形の瞬時値の不連続や、
微係数の不連続がないので不要な雑音が発生しない。こ
の様子を図2(e),(f),(g)に示す。同図(e
)は波形、(f)は窓関数、(g)は積である。
【0012】波形WIiとしては、区間WIiにおいて
、一周期の波形を繰り返すようにしたが、その代りに1
区間内の全波形をメモリ5に記憶しておき読み出すよう
にしてもよい。このときも、区間の接点における不連続
は生じない。
【0013】波形WIiからWIi+1に移行する際に
、それらの波形が同一形状であって、ただ初期位相が異
なるようなものにしてもよい。このときには、波形WI
i+1を省略して波形WIiの読み出しアドレスを不連
続にジャンプさせれば良いのでメモリが節約できる。こ
のような制御は、波形発生器1,2の出力するアドレス
コードを操作することにより可能となる。
【0014】図3(a),(b),(c),(d)は、
波形の区間と窓関数の別の例である。区間WI1におい
て窓関数FI1を一定値としているので、波形WI1が
そのまま乗算器7の出力として現われる。一方、窓関数
FII1を零としているので、波形WII1は不要であ
る。
【0015】区間WI1からWI2への切り替わりにお
いては、窓関数FI1とFI2の間に零がないので、波
形WI1とWI2は連続波形とする必要がある。すなわ
ち、区間WI1とWI2を1つの区間とみなし、窓関数
としてFI1とFI2を合わせた台形波とみなせば良い
【0016】図2と図3の例では、
【0017】
【数2】
【0018】とした。したがって(数1)の代りに(数
3)の演算を行なっても良い。
【0019】
【数3】
【0020】あるいは、
【0021】
【数4】
【0022】すなわち、2つの波形のうちの一方のサン
プル値に、2つの波形サンプルの差分値と、窓関数の積
を加えるという操作を行なうことになる。
【0023】次に図2を用いて、波形WIiからWII
i+1、あるいは波形WIIiからWIiへの補間が行
なわれることについて説明する。図2(b)のFIiの
立下り(時刻T0〜T1)に着目すると、波形WI1の
レベルは単調に減少する。一方、FII2は立上るから
、波形WII2はそのレベルが増加する。WI1とWI
I2の各周波数成分の位相が一致している場合、各周波
数成分について、波形WI1のレベルからWII2のレ
ベルへ直線的に変化してゆく。位相はそのまま保存され
る。すなわち、各周波数スペクトルレベルが直線補間さ
れる。波形WI1とWII2の各周波数成分の位相が一
致していないときは、レベルの補間のみならず、位相角
を含めたベクトル加算として考える必要が出てくる。こ
のときは位相と振幅が共に変化してゆく。この様子の例
を図4に示す。波形WI1のベクトルから波形WII1
のベクトルへ直線上を合成ベクトルW0が移ってゆく。
【0024】図5は、窓関数の他の例である。FIiと
FIi+1の間に有限の零区間を設けており、波形WI
iとWIi+1は、この零区間の中で切り替わる。した
がって、波形WIiとWIi+1の間に不連続があって
もWIi×FIiとWIi+1×FIi+1のつながり
には不連続が発生しない。零区間があるため、波形WI
iとWIIiの間は直線補間から少しずれるが、実用上
問題ない。
【0025】図6は、FIiとFIIiのそれぞれを台
形とし、かつ、
【0026】
【数5】
【0027】または、
【0028】
【数6】
【0029】としたものである。この場合は台形の頂上
部で一方の波形のみが出力される。台形の傾斜部では両
波形の1次補間となる。
【0030】図7は、本発明の別の実施例である。10
1は各区間の波形を記憶したメモリである。100はメ
モリ101に対してアドレスを供給し、所定のアドレス
の波形サンプルを読み出して出力する波形発生器である
。波形発生器100の出力は、乗算器102と加算器1
04に供給される。乗算器102の出力は加算器104
に供給される。加算器104の出力が出力波形データと
なる。103は窓関数発生器であって、後述する窓関数
データを乗算器102に供給し、かつ、波形発生器10
0に波形の切り替え指令を出力する。
【0031】メモリ101には、波形WI1〜WI6,
WII1〜WII6が順番に格納されている。図8は(
数7)に従う演算処理の手順を示している。
【0032】
【数7】
【0033】以上のような演算を、波形の各サンプル値
に対して行なえば、WIiとWIIi+1または〜WI
IiとWIiの間のなめらかな波形の推移が実現できる
。窓関数F2i,F2i−1は単調1次減少波形である
【0034】F2i−1,F2iの代りに、
【0035
【数8】
【0036】
【数9】
【0037】を満足する。F2i−1,F2iを用いて
(数7)を変形した別の演算式を実行しても良い。
【0038】図9は、窓関数Fjの別の形の例である。 ここでは、三角形の頂点と次の三角形の始点に、平坦部
分を設けている。この平坦部分において波形の切り替え
を行なう。
【0039】上記説明において、窓関数として、三角形
,台形,直角三角形などを使う例を述べた。これらの関
数は、ディジタル回路により容易に発生できる。たとえ
ば、システムクロックパルスを分周したものを、カウン
タで計数することにより発生できる。アップダウンカウ
ンタにより対称三角波ができる。アップカウンタまたは
ダウンカウンタにより直角三角形ができる。カウンタへ
のクロック周波数を変えることにより、傾きを変えるこ
とができる。カウンタ出力が零になったときに、波形発
生器1,2,100へ波形切替指令の出力を供給するこ
とにする。カウンタ出力が零や全部“1”のときにクロ
ックを一時停止すれば、零区間を設けることができる。 他の方法として、所定の小さな値ΔFを加算器で累算し
てゆけば、1次単調増加関数を発生できる。所定の値を
越えた時に累算値を零にリセットするようにすれば、図
8(c)のような関数が得られる。加減算器を用いてお
き、加算を減算に切り替えれば図2(b),(d)の関
数が得られる。この方法では、ΔFを変えることにより
、各区間の時間長が設定できる。
【0040】楽器のように長い間、楽音を発生し続ける
必要があるときの終了処理について説明する。メモリ1
01が非常に大きければ長い音を出せるが、早晩メモリ
を読みつくしてしまう。メモリの終りの区間に到達した
ときには、次の処理を行なう。 (1)  窓関数の最終値を保持し、その区間の波形を
それまでと同様に繰り返し読み出し続ける。 (2)  窓関数の最終値に到達したら、以前の窓関数
にもどり、波形もそのもどった区間の波形を読み出す。
【0041】(1)によると、最後の波形が繰り返され
るので、時間的変化がなくなる。(2)によれば、所定
の区間の波形が繰り返し出力されるので、時間的変動の
伴った音となる。
【0042】さらに3番目の方法として、最終波形の読
み出し位相をランダムに変えるようにしても良い。この
ときは、位相変調が窓関数に応じて付加されるので多少
の時間変動が生じる。
【0043】上記説明においては、2種の波形の間の補
間演算として説明した。波形と窓関数をさらに増やして
次ぎの一般式を実行するようにしてもよい。
【0044】
【数10】
【0045】この場合、単純な直線補間からは、はずれ
,高次の補間とみなすことができる。
【0046】また、窓関数としては、三角形,台形を用
いて説明したが、2次曲線や他の形状の関数を用いるこ
とも考えられる。一般的には図10に示したように零区
間を備えた任意の波形が使える。
【0047】波形の形状により、補間式が変わるから、
直線補間からずれることになるが、より自然な時間変化
をもった音をつくり出すことができる。窓関数に適当な
変動成分を重畳させれば、複数の波形間での振幅の変動
が発生するから、振幅変調効果に使うことができる。こ
れは(数11)で表わせる。
【0048】
【数11】
【0049】Fはもとの窓関数、AMは重畳成分、Fx
は新しい窓関数である。ただし、波形の切り替わり時点
でFxが零であるように、AMを決めなければならない
ことはもちろんである。
【0050】(数11)の代りに、任意の関数Eを用い
て、次式のような窓関数を生成させてもよい。
【0051】
【数12】
【0052】図1において、(数12)を用いて窓関数
FxIiとFxIIiをつくると、Eをエンベロープデ
ータとみなし得るから、窓関数によりエンベロープ制御
ができる。振幅変調に用いることもできる。
【0053】図1,図7の実施例では、窓関数発生器3
,4,103が関数を発生させるようにしたが、メモリ
に窓関数波形を記憶しておき、これを読み出しても良い
【0054】図1,図7では図示していないが、窓関数
のそれぞれの時間長は、波形の区間長と対応しているも
のであるから、波形の区間長データを、メモリ5,6,
101に、波形と共に記憶させておき、この区間長デー
タを窓関数発生器が順次読み出して、所定の時間長の窓
関数を生成するようにするのが好ましい。
【0055】波形発生器1,2,100は、メモリに記
憶している波形データを読み出すようにしたが、波形発
生器がデータ処理をしたり、あるいは自身で波形をつく
り出すようなものでも良い。
【0056】波形の発生は、楽音の周波数の一周期サン
プル数倍に対応した周期または平均的周期で行なうのが
普通である。これに対して、窓関数は実時間に対応して
発生させる場合がある。このときは、それぞれの実時間
上の時刻位置が必ずしも完全に同期しない。しかしなが
ら、窓関数の変化は、波形の変化よりゆっくりしている
ことが多いから、窓関数のサンプル値として、本来の時
刻位置の前後の値を採用しても、大幅な誤差にならない
場合が多い。すなわち、波形の発生と窓関数の発生とは
同期を完全にとる必要はない。この場合、一次直線型の
窓関数を用いても直線上で多少の増減が発生することに
なるが実用上さしつかえない。
【0057】なお上記説明では、楽音や音声の一波を中
心に述べたが、一波でない多数波よりなる波形やその他
の任意の波形や、音以外の波形、たとえば、映像信号や
種々の信号に対しても適用できる。
【0058】
【発明の効果】本発明は、様々な周期を有するN個(N
は正の整数)の波形を記憶するN枚の波形メモリのうち
Nより十分少ない複数の波形メモリより波形サンプルを
読み出してこれらの差サンプルを発生させ、零値または
実質的零値を有する窓関数を発生させて、上記差サンプ
ルと上記窓関数とを乗算し、その積を上記複数の波形サ
ンプルの1つに加算して出力波形を得、上記窓関数が零
値または実質的零値において、上記波形メモリの読み出
しを切り換えるようにしたものである。
【0059】したがって、時々刻々に変化してゆく自然
音声や、自然楽器の音を余分な雑音の発生を伴わずに合
成することができる。複数種の波形の位相をそろえる必
要がないから、振幅の推移だけでなく、位相の推移を補
間的に再現できる。位相の推移を連続させれば、周波数
が変化するから、本来の波形の周期からずれた高調波性
のない音をつくり出すこともできる。さらには、複数種
の波形の位相関係をずらしたり、あるいは、1つの波形
の読み出しアドレスを区間ごとに順次変えてゆくことに
より、ビブラートや位相変調効果あるいは遅延時間変調
をつくることができる。
【図面の簡単な説明】
【図1】本発明の波形発生方法の一実施例のブロック図
【図2】本発明の波形演算方法を説明するための図
【図
3】本発明の波形演算方法を説明するための図
【図4】
本発明に係る位相と振幅の補間を説明するためのブロッ
ク図
【図5】本発明に係る他の窓関数を用いた場合の波形演
算方法を説明するための図
【図6】本発明に係る他の窓関数を用いた場合の波形演
算方法を説明するための図
【図7】本発明の別の実施例のブロック図
【図8】図7
に示す実施例の波形演算方法を説明するための図
【図9】本発明において適用可能な窓関数波形の一例を
示す図
【図10】本発明において適用可能な窓関数波形の一例
を示す図
【符号の説明】
1,2,100  波形発生器 3,4,103  窓関数発生器 7,8,102  乗算器 9,104  加算器

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】様々な周期を有するN個(Nは正の整数)
    の波形を記憶するN枚の波形メモリのうちNより十分少
    ない複数の波形メモリより波形サンプルを読み出してこ
    れらの差サンプルを発生させ、零値または実質的零値を
    有する窓関数を発生させて、上記差サンプルと上記窓関
    数とを乗算し、その積を上記複数の波形サンプルの1つ
    に加算して出力波形を得、上記窓関数が零値または実質
    的零値において、上記波形メモリの読み出しを切り換え
    るようにしたことを特徴とする波形発生方法。
  2. 【請求項2】窓関数が実質的に三角形または台形である
    ことを特徴とする特許請求の範囲第1項記載の波形発生
    方法。
  3. 【請求項3】様々な周期を有するN個(Nは正の整数)
    の波形を記憶するN枚の波形メモリと、複数の波形発生
    器と窓関数発生器と乗算器とを備え、上記波形発生器は
    上記N枚の波形メモリのうちNより十分少ない複数の波
    形メモリより波形サンプルを読み出し、零値または実質
    的零値を有する窓関数を、上記Nより十分少ない複数の
    数だけ上記窓関数発生器より発生させて、上記読み出し
    た複数の波形サンプルと上記発生した複数の窓関数とを
    それぞれ乗算し、その積を加算して出力波形を得、上記
    窓関数が零値または実質的零値において、上記波形メモ
    リの読み出しを切り換えるようにしたことを特徴とする
    波形発生方法。
  4. 【請求項4】複数の波形発生器,窓関数発生器,乗算器
    が時分割的に作動される単一の波形発生器,窓関数発生
    器及び乗算器であることを特徴とする特許請求の範囲第
    3項記載の波形発生方法。
  5. 【請求項5】波形発生器が波形の書き込まれたメモリか
    らその波形を読み出すことにより波形を発生させること
    を特徴とする特許請求の範囲第3項記載の波形発生方法
  6. 【請求項6】窓関数の和が実質的に一定であるようにし
    たことを特徴とする特許請求の範囲第3項記載の波形発
    生方法。
  7. 【請求項7】窓関数が実質的に台形であることを特徴と
    する特許請求の範囲第3項記載の波形発生方法。
JP3107192A 1991-05-13 1991-05-13 波形発生方法 Expired - Fee Related JPH0736115B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3107192A JPH0736115B2 (ja) 1991-05-13 1991-05-13 波形発生方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3107192A JPH0736115B2 (ja) 1991-05-13 1991-05-13 波形発生方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP58133442A Division JPS6024593A (ja) 1983-01-18 1983-07-20 波形発生方法

Publications (2)

Publication Number Publication Date
JPH04230795A true JPH04230795A (ja) 1992-08-19
JPH0736115B2 JPH0736115B2 (ja) 1995-04-19

Family

ID=14452808

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3107192A Expired - Fee Related JPH0736115B2 (ja) 1991-05-13 1991-05-13 波形発生方法

Country Status (1)

Country Link
JP (1) JPH0736115B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009224922A (ja) * 2008-03-14 2009-10-01 Fujitsu Ltd ピーク抑圧装置、無線送信装置及び窓関数生成装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5173418A (en) * 1974-12-20 1976-06-25 Sanyo Electric Co Jikanjikuhenkansochino zatsuonyokuatsukairo
JPS53134418A (en) * 1977-04-28 1978-11-24 Nippon Gakki Seizo Kk Electronic musical instrument
JPS5648880A (en) * 1979-07-20 1981-05-02 Hauni Werke Koerber & Co Kg Receiving station of air force type conveying zone for conveying rod like article in tobacco processing machine
JPS56167197A (en) * 1980-05-27 1981-12-22 Suwa Seikosha Kk Voice synthesizer

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5173418A (en) * 1974-12-20 1976-06-25 Sanyo Electric Co Jikanjikuhenkansochino zatsuonyokuatsukairo
JPS53134418A (en) * 1977-04-28 1978-11-24 Nippon Gakki Seizo Kk Electronic musical instrument
JPS5648880A (en) * 1979-07-20 1981-05-02 Hauni Werke Koerber & Co Kg Receiving station of air force type conveying zone for conveying rod like article in tobacco processing machine
JPS56167197A (en) * 1980-05-27 1981-12-22 Suwa Seikosha Kk Voice synthesizer

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009224922A (ja) * 2008-03-14 2009-10-01 Fujitsu Ltd ピーク抑圧装置、無線送信装置及び窓関数生成装置

Also Published As

Publication number Publication date
JPH0736115B2 (ja) 1995-04-19

Similar Documents

Publication Publication Date Title
US5007095A (en) System for synthesizing speech having fluctuation
US7612281B2 (en) Reverberation effect adding device
US4597318A (en) Wave generating method and apparatus using same
KR0150223B1 (ko) 악음신호발생장치
US5270954A (en) Filter device and electronic musical instrument using the filter device
AU713438B2 (en) System and method for generating fractional length delay lines in a digital signal processing system
AU723969B2 (en) Digital signal processing system and method for generating musical legato using multitap delay line with crossfader
JP2659608B2 (ja) Daコンバータ
JPH0795235B2 (ja) 電子楽器
JPH04230795A (ja) 波形発生方法
US5266734A (en) Musical tone synthesizing apparatus performing high-speed non-linear operation
JPS6367196B2 (ja)
US5559298A (en) Waveform read-out system for an electronic musical instrument
JP3347338B2 (ja) 楽音合成装置
JPH04116598A (ja) 楽音信号生成装置
JPH0497197A (ja) 楽音合成装置
JPH11161275A (ja) 可変遅延装置および方法
JP2608938B2 (ja) 波形補間装置
JP3435702B2 (ja) 楽音発生装置
JPH05232965A (ja) 楽音合成装置
JP2002006853A (ja) 共鳴装置
JP2669073B2 (ja) Pcm音源装置
JP3235315B2 (ja) フォルマント方式音源
JP3339273B2 (ja) 楽音波形形成装置
JP3480063B2 (ja) 楽音合成装置