JPH06289876A - 波形データ補間装置 - Google Patents

波形データ補間装置

Info

Publication number
JPH06289876A
JPH06289876A JP5073769A JP7376993A JPH06289876A JP H06289876 A JPH06289876 A JP H06289876A JP 5073769 A JP5073769 A JP 5073769A JP 7376993 A JP7376993 A JP 7376993A JP H06289876 A JPH06289876 A JP H06289876A
Authority
JP
Japan
Prior art keywords
waveform
value
interpolation
values
curve
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
JP5073769A
Other languages
English (en)
Other versions
JP3223280B2 (ja
Inventor
Teruo Jinbo
輝雄 神保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP07376993A priority Critical patent/JP3223280B2/ja
Publication of JPH06289876A publication Critical patent/JPH06289876A/ja
Application granted granted Critical
Publication of JP3223280B2 publication Critical patent/JP3223280B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【目的】 波形歪が少なく、音質の優れた波形データ補
間装置を実現することを目的とする 【構成】 求める補間値に対応する少数アドレスに対し
て、前2点、後1点のサンプリング点の波高値を通る2
次曲線Y1 (x)と、前1点、後2点のサンプリング点
の波高値を通る2次曲線Y2 (x)との平均値を通る曲
線Ys (x)上の点が補間値とされる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、サンプリングされた楽
音信号に基づいて演奏が行われる電子楽器などにおける
楽音などの波形データ補間装置に関する。
【0002】
【従来の技術】電子楽器などにおいては、ピッチ(音の
高さ)の明らかな1つの楽音波形データから異なるピッ
チの楽音信号が作成される場合、及び、ビブラートやデ
チューンなどのエフェクトが楽音に付加され場合には、
通常、新しいピッチを得るためにピッチ補間という処理
が行われる。
【0003】図6は、従来の直線補間方式のピッチ補間
を示す図で、サンプリング点における各波高値を結ぶ直
線上に補間値が求められる。
【0004】
【発明が解決しようとする課題】しかし、上記直線補間
方式は、図6から明らかなように補間精度が良くないた
め、図7に示すように楽音波形が歪み、特に波形データ
にサンプリング周波数の1/2に近い周波数成分が多い
場合や、出力時のオーバーサンプリング比の高い場合に
は、この傾向が顕著となるという問題点があった。
【0005】本発明の課題は、波形歪が少なく、音質の
優れた波形データ補間装置を実現することにある。
【0006】
【課題を解決するための手段】本発明は、波形データの
波形サンプル値に対して、複数の波形サンプル値を補間
することにより、任意の波形位置における波高値を算出
する波形データ補間装置を前提とする。
【0007】そして、指定された波形位置に対して、そ
の波形位置の前2点、後ろ1点のサンプリング点におけ
る波形データの波形サンプル値を通る第1の2次曲線
と、その記波形位置の前1点、後ろ2点のサンプリング
点における波形データの波形サンプル値を通る第2の2
次曲線との相加平均値を通る第3の曲線を算出し、その
波形位置における第3の曲線の値をその波形位置におけ
る波高値として算出する補間手段を有する。
【0008】
【作用】演算の簡単な2次曲線補間を基準とし、指定さ
れた波形位置に対して、前後にずれた2つの2次曲線の
相加平均値を通る第3の曲線が算出され、その波形位置
における第3の曲線の値としてその波形位置における波
高値が算出される。
【0009】従って、演算量の増加を極力抑えつつ、近
似的に補間の次数を上げたのと同じ結果となり、補間精
度が向上する。
【0010】
【実施例】以下、図面を参照しながら、本発明を電子鍵
盤楽器に適用した実施例につき詳細に説明する。構成 図1は、本発明による実施例の全体構成を示すブロック
図である。
【0011】図1において、CPU(中央演算制御装
置)101は、プログラムメモリ102に記憶されたプ
ログラムを実行することによって動作し、スイッチ群1
04及び鍵盤103を走査して各スイッチや鍵の操作状
態を取り込み、データメモリ105から波形ROM10
7のアドレスや、エンベロープデータなどをを読み出す
と共に、発音制御データを音源部106に送って、波形
メモリ107から読み出された波形データに基づく楽音
信号の発音動作を制御する。
【0012】音源部106によって作成された楽音信号
は、D/A変換器108によってアナログ信号に変換さ
れ、オーディオシステム109によって楽音が放音され
る。 本実施例のピッチ補間の原理 次に、図2を用いて本発明によるピッチ補間の動作原理
につき説明する。
【0013】図2において、サンプリング点x=−1,
0,1,2における、それぞれの波高値L-1、L0 、L
1 、L2 に対して、サンプリングポイントx=0(この
時の波高値はL0 )を原点とした座標を考える。そし
て、波高値L0 、L1 、L2 を通る2次曲線Y1 (x)
と、波高値L-1、L0 、L1 を通る2次曲線Y2 (x)
を求め、これら2つの曲線の平均値を通る曲線Y
S (x)上に、各波高値間の補間値が求められる。
【0014】以下、図3、図4を用いてピッチ補間動作
につき説明する。図3は、図1の音源部106の内部構
成を示す構成図である。図3において、整数アドレス計
算ブロック301は、CPU101から波形スタートア
ドレスと、波形ROM107から波形データを繰り返し
読み出すための波形ループアドレスを受取る。また、少
数アドレス計算ブロック302は、CPU101から与
えられたROM107の読み出しアドレスの歩進幅の累
算を行い、キャリーが生じた場合は、整数アドレス計算
ブロック301にそのキャリーを送り、整数アドレスを
インクリメントさせる。そして、少数アドレス計算ブロ
ック302で計算された少数アドレスは、ピッチ補間を
行うためのデータとして、積和ブロック305に入力さ
れる。
【0015】次に、波形ROMデータラッチブロック3
04は、整数アドレス計算ブロック301が指定するア
ドレスに基づいて波形ROM107から波形データを取
り込んで差分値の算出や差分値の累算等の計算を行うと
ともに、それらの計算結果をピッチ補間のためのデータ
として積和ブロック305へ送る。
【0016】積和ブロック305は、後述するように楽
音信号に対するピッチ補間と、エンベロープ発生ブロッ
ク303で発生されたエンベロープデータの乗算を行
い、時分割出力DCOを累算ブロック306に出力す
る。累算ブロック306はCPU101から出力される
パンニングデータに基づいて、時分割出力DCOをRI
GHT(チャネル) 累算レジスタ307とLEFT(チ
ャネル)累算レジスタ308に割り振り、累算を行う。
【0017】累算された時分割出力DCOは、D/A変
換器108でアナログ信号に変換され、オーディオシス
テム109で楽音として再生される。次に、図2におい
て、波高値L0 、L1 、L2 を通る2次曲線Y1 (x)
と、波高値L-1、L0 、L1 を通る2次曲線Y2 (x)
の各平均値を通る曲線Ys (x)は、以下に示すように
して波形データの差分値と波高値L0 で表される。
【0018】まず、2次曲線Y1 (x)を、
【0019】
【数1】Y1 (x)=ax2 +bx とおくと、図2より、
【0020】
【数2】x=1のとき、 Y1 (x)=d1 =a+b
【0021】
【数3】x=2のとき、 Y1 (x)=d2 =4a+2b となる。数3式−数2式×2より、 d2 −2d1 =2a ∴ a=1/2(d2 −2d
1 ) となる。また、数2式×4−数3式より、 4d1 −d2 =2b ∴ b=1/2(4d1 −d
2 ) となる。故に、数1式より、 Y1 (x)=1/2(d2 −2d1 )x2 +1/2(4
1 −d2 )x となる。
【0022】次に、2次曲線Y2 (x)を、
【0023】
【数4】Y2 (x)=ax2 +bx とおくと、
【0024】
【数5】x=1のとき、 Y2 (x)=d1 =a+b
【0025】
【数6】x=−1のとき、 Y2 (x)=−d0 =a−b となる。数5式+数6式より、 d1 −d0 =2a ∴ a=1/2(d1 −d0 ) となる。また、数5式−数6式より、 d1 +d0 =2b ∴ b=1/2(d1 +d2 ) となる。故に、数4式より、 Y2 (x)=1/2(d1 −d0 )x2 +1/2(d1
+d0 )x となる。
【0026】以上は、波高値L0 を原点とした座標系で
あるので、波高値L0 を加えて座標系を元に戻すと、次
のように表される。
【0027】
【数7】Y1 (x)=1/2(d2 −2d1 )x2 +1
/2(4d1 −d2 )x+L0
【0028】
【数8】Y2 (x)=1/2(d1 −d0 )x2 +1/
2(d1 +d0 )x+L0 次に、Y1 (x)とY2 (x)の平均値YS (x)は、
数7式、数8式を用いて次のように求められる。
【0029】
【数9】YS (x)=1/2{Y1 (x)+Y
2 (x)}=(1/4)(d2 −d1 −d0 2 )+
(1/4)(−d2 +5d1 +d0 )x+L0=(1/
4)x{d2 (x−1)+d1 (−x+5)+d0 (−
x+1)}+L0=(1/4)x{−d2 (1−x)+
1 (1−x)+d0 (1−x)+4d1}+L0=x
{1/4(−d2 +d1 +d0 )(1−x)+d1 }+
0 ここで、d0 〜d2 を連続するサンプリングポイントの
波高値L-1〜L2 で表すと、図2から
【0030】
【数10】d2 =L2 −L0
【0031】
【数11】d1 =L1 −L0
【0032】
【数12】d0 =L0 −L-1 となる。故に、数9式より、
【0033】
【数13】(−d2 +d1 +d0 )=−(L2 −L0
+(L1 −L0 )+(L0 −L-1)=−(L2 −L1
+(L0 −L-1) となる。
【0034】次に、連続するサンプリングポイントの波
高値L-1〜L2 と差分値δ-1〜δ+1との関係は、図2よ
り、
【0035】
【数14】δ+1=L2 −L1
【0036】
【数15】δ0 =L1 −L0 (=d1
【0037】
【数16】δ-1=L0 −L-1 である。
【0038】従って、数14式と数16式を用いると、
数13式は、
【0039】
【数17】(−d2 +d1 +d0 )=−δ+1+δ-1 となる。
【0040】以上の結果、数17式、数11式、及び数
15式から、数9式のYS (x)は次式のようになる。
【0041】
【数18】YS (x)=x{1/4(−δ+1+δ-1
(1−x)+δ0 }+L0 数18式よって表される波高値L0 、L1 、L2 を通る
2次曲線Y1 (x)と、波高値L-1、L0 、L1 を通る
2次曲線Y2 (x)の平均値を通る曲線YS (x)上の
各波高値は、図3の音源部106内の波形ROMデータ
ラッチブロック304と、積和ブロック305によって
算出される。
【0042】次に、波形ROMデータラッチブロック3
04と、積和ブロック305の構成と動作につき図4を
用いて説明する。波形ROMデータラッチブロック304 まず、データバス切り換えのためのマルチプレクサ40
5、406の入力が共に“1”側に切り換えられ、差分
値から波高値を復元するための差分値累算レジスタL0
401と、前述のように波形ROM107から読み出さ
れた波形データに基づいて計算された現在の差分値を格
納しているレジスタδ0 403のデータが加減算器40
7で加算され、その加算結果が新たなサンプリング点で
の波高値として、差分値累算レジスタL0 401に書き
込まれる。
【0043】次に、現在より1つ前(前回)のサンプリ
ング点での差分値を格納したレジスタδ-1404と、現
在のサンプリング点での差分値を格納したレジスタδ0
403、及び次のサンプリング点での差分値を格納した
レジスタδ+1402において、δ-1←δ0 、δ0 ←δ+1
のようにデータが更新され、レジスタδ+1には波形RO
M107から新たな差分値が書き込まれる。
【0044】そして、マルチプレクサ405、406の
入力が共に“2”側に切り換えられ、加減算器407に
おいて、前回の差分値レジスタδ-1404から次の差分
値レジスタδ+1のデータが減算されて、レジスタ408
に書き込まれる。
【0045】以上の動作は、図3の整数アドレス計算ブ
ロック301が、図1の波形ROM107のアドレスを
更新する度に繰り返し行われ、積和ブロック305に対
して、現在のサンプリング点での波高値L0 、及び前回
と次回のサンプリング点でのそれぞれの差分値の差−δ
+1+δ-1が送られることになる。なお、レジスタL0
01、δ0 403、δ-1404の内容は、新たに波形デ
ータがアサインされた場合に、リセット信号によりクリ
アされる。積和ブロック305 図4において、まず、マルチプレクサ415、416、
417の入力が、共に“1”側に切り換えられる。図3
の少数アドレス計算ブロック302から送られ、レジス
タx409に書き込まれた少数アドレスxは、反転器4
11で全ビットが反転された後、インクリメンタ412
により1LSB分だけ値が増加され、更に右2ビットシ
フタ413によりデータ値が1/4倍される。
【0046】このようにして、少数アドレスxに対して
0≦x<1の範囲で、データ値1/4(1−x)が得ら
れ、レジスタ414に格納される。次に、マルチプレク
サ415、416の入力が共に“1”側に切り換えられ
ているので、乗算器418の出力にはレジスタ408と
レジスタ414の乗算結果、即ち、 1/4(1−x)(−δ+1+δ-1) が得られる。また、マルチプレクサ417の入力が
“1”側に切り換えられているので、加算器419の出
力には、上記乗算結果とレジスタδ0 403の値の加算
結果、即ち、 1/4(1−x)(−δ+1+δ-1)+δ0 が得られ、この加算結果は、レジスタ420に格納され
る。
【0047】次に、マルチプレクサ415、416、4
17の入力が共に“2”側に切り換えられる。その結
果、乗算器418の出力にはレジスタ420とレジスタ
x409の乗算結果、即ちx{1/4(1−x)(−δ
+1+δ-1)+δ0 }が得られると共に、加算器419の
出力には、上記乗算結果とレジスタL0 401との加算
結果、即ち、 x{1/4(1−x)(−δ+1+δ-1)+δ0 }+L0 が得られ、レジスタ421に格納される。
【0048】この後、マルチプレクサ415、416、
417の入力が、共に“3”側に切り換えられる結果、
乗算418の出力にはレジスタ421と、レジスタ41
0に格納されているエンベロープ発生ブロック303か
らのエンベロープ値ENVとの乗算結果、即ち、 ENV×[x{1/4(1−x)(−δ+1+δ-1)+δ
0 }+L0 ] が得られる。そして、得られたこの値は、加算器419
で、値“0”が加算されて、レジスタ422に格納さ
れ、図3の累算ブロック306へ出力される。
【0049】以上のようにして、波形ROMデータラッ
チブロック304と積和ブロック305において、前述
の(18)式に示される波高値L0 、L1 、L2 を通る
2次曲線Y1 (x)と、波高値L-1、L0 、L1 を通る
2次曲線Y2 (x)の各平均値を通る曲線YS (x)上
の波高値が得られると共に、更にその値に対してエンベ
ロープ値の乗算が行われる。
【0050】
【発明の効果】本発明によれば、演算の簡単な2次曲線
補間を基準とし、指定された波形位置に対して、前後に
ずれた2つの2次曲線の相加平均値を通る第3の曲線が
算出され、その波形位置における第3の曲線の値として
その波形位置における波高値が算出されることにより、
演算量の増加を極力抑えつつ、近似的に補間の次数を上
げたのと同じ効果を生じさせることができ、補間精度を
向上させ波形歪を低減させることが可能となる。
【図面の簡単な説明】
【図1】本発明の実施例の全体構成図である。
【図2】本実施例の補間の説明図である。
【図3】音源部106の構成図である。
【図4】波形ROMデータラッチブロックの構成図であ
る。
【図5】本実施例による補間により得られた信号の波形
図である。
【図6】従来の直線補間の説明図である。
【図7】従来の直線補間により得られた信号の波形図で
ある。
【符号の説明】
101 CPU 102 プログラムメモリ 103 鍵盤 104 スイッチ群 105 データメモリ 106 音源部 107 波形ROM 108 D/A変換器 109 オーディオシステム 301 整数アドレス計算ブロック 302 少数アドレス計算ブロック 303 エンベロープ発生ブロック 304 波形ROMデータラッチブロック 305 積和ブロック 306 累算ブロック 307 RIGHT累算レジスタ 308 LEFT累算レジスタ 401 差分値累算レジスタ 402、403、404、408、409、410、4
14、420、421、422 レジスタ 405、406、415、416、417 マルチプ
レクッサ 407 加減算器 411 反転器 412、419 加算器 413 右2ビットシフタ 418 乗算器

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 波形データの波形サンプル値に対して、
    複数の前記波形サンプル値を補間することにより、任意
    の波形位置における波高値を算出する波形データ補間装
    置において、 指定された波形位置に対して、該波形位置の前2点、後
    ろ1点のサンプリング点における前記波形データの波形
    サンプル値を通る第1の2次曲線と、前記波形位置の前
    1点、後ろ2点のサンプリング点における前記波形デー
    タの波形サンプル値を通る第2の2次曲線との相加平均
    値を通る第3の曲線を算出し、前記波形位置における前
    記第3の曲線の値を波形位置における波高値として算出
    する補間手段を有する、 ことを特徴とする波形データ補間装置。
JP07376993A 1993-03-31 1993-03-31 波形データ補間装置 Expired - Fee Related JP3223280B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP07376993A JP3223280B2 (ja) 1993-03-31 1993-03-31 波形データ補間装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07376993A JP3223280B2 (ja) 1993-03-31 1993-03-31 波形データ補間装置

Publications (2)

Publication Number Publication Date
JPH06289876A true JPH06289876A (ja) 1994-10-18
JP3223280B2 JP3223280B2 (ja) 2001-10-29

Family

ID=13527757

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07376993A Expired - Fee Related JP3223280B2 (ja) 1993-03-31 1993-03-31 波形データ補間装置

Country Status (1)

Country Link
JP (1) JP3223280B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0853292A2 (en) * 1997-01-10 1998-07-15 Harris Corporation Interpolator for and method of interpolating digital samples
KR20170024059A (ko) * 2014-06-27 2017-03-06 오렌지 저-지연 인코딩/디코딩을 위한 보간에 의한 오디오 신호의 리샘플링

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4645337B2 (ja) * 2005-07-19 2011-03-09 カシオ計算機株式会社 波形データ補間装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0853292A2 (en) * 1997-01-10 1998-07-15 Harris Corporation Interpolator for and method of interpolating digital samples
EP0853292A3 (en) * 1997-01-10 1999-09-08 Harris Corporation Interpolator for and method of interpolating digital samples
KR20170024059A (ko) * 2014-06-27 2017-03-06 오렌지 저-지연 인코딩/디코딩을 위한 보간에 의한 오디오 신호의 리샘플링
JP2017526950A (ja) * 2014-06-27 2017-09-14 オランジュ 低遅延符号化/復号のための補間による音声信号のリサンプリング

Also Published As

Publication number Publication date
JP3223280B2 (ja) 2001-10-29

Similar Documents

Publication Publication Date Title
US4715257A (en) Waveform generating device for electronic musical instruments
US7612281B2 (en) Reverberation effect adding device
EP0734018B1 (en) Audio data processing apparatus
US5270954A (en) Filter device and electronic musical instrument using the filter device
JP3760385B2 (ja) 2次補間のための方法および装置
JPH10215147A (ja) 複数の多項式を用いる補間器および関連方法
US5637821A (en) Storing and interpolating means for a musical sound generating device
JP3223280B2 (ja) 波形データ補間装置
US5243658A (en) Modulation effect adding apparatus
JPS59200585A (ja) 補間信号を発生させるための装置
US5250748A (en) Tone signal generation device employing a digital filter
US20040107231A1 (en) Data interpolating device and method, sampling function generating device, data interpolating program, and recorded medium
JP3347338B2 (ja) 楽音合成装置
JP2608938B2 (ja) 波形補間装置
JP3799969B2 (ja) 共鳴装置
JP3435702B2 (ja) 楽音発生装置
JP3214936B2 (ja) 信号処理装置
JP4645337B2 (ja) 波形データ補間装置
JP2769690B2 (ja) 遅延装置
JP3539164B2 (ja) 波形発生器
JP2669073B2 (ja) Pcm音源装置
JP3323166B2 (ja) 補間演算装置
JP3264603B2 (ja) デジタル信号処理装置
JP2817367B2 (ja) リニア/フロート変換器および該変換器を用いた楽音合成装置
JPH04184493A (ja) 電子楽器の信号処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010710

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

Free format text: PAYMENT UNTIL: 20080824

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20080824

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090824

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100824

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100824

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110824

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees