エンヴェロープ(包絡線)

エンヴェロープとは音量の変化である。ここではエンヴェロープを変えることで音の印象がかわることを確認する。まずエンヴェロープの形をグラフで見る方法を確認する。

graphとgraph1

以前グラフを表示するのに graph1を使ったが、ここではグラフを表示するのにgraphを使う。

graph1 : 0.1秒分のデータをグラフに表示する

graph : 1秒分のデータグラフにする

指数関数 exp(-t)

入力

 

r=exp(-t/0.1);
graph(r);

 

結果

組み合わせると

sin関数とエンヴェロープのデータを乗算することで、sin関数に任意のエンヴェロープをつけることができる。指数関数のエンヴェロープとsin関数を組み合わせると、「ピン」というバネをはじいたような音になる。

このとき、エンヴェロープ r と sin関数の掛算には .* (ピリオドと*) を用いる。

入力

 


r=exp(-t/0.1);
f=440;
x=r .* sin(2*%pi*f*t);
clf();graph(x);
play(x);

 

結果

再生すると「ポン」という音がなる。

 

 

以下のようにaの式を加えると、今度は始まりのやわらかい音を作ることができる。

入力

a=(1-exp(-t/0.02));
r=exp(-t/0.1);
f=440; 
x=a.*r.* sin(2*%pi*f*t);
clf();graph(x);
play(x);	
         
結果

少しタッチのやわらかい音になる

 

 

aとrの計算式の中の赤色の数値を変えると、様々な包絡線に変化する。

音の変化を確かめよう