次のページ     目次


<音声の波形の 生成を理解す る>


その5: 「あ」、「は」、 「さ」、「か」、「た」、「ま」、「な」、「ら」、「ぱ」 の子音生成 の試み。数値計算ソフトのSCILABプログラムによる。



  2つの管(チューブ)をつなぎ合わせた模型とデジタル フィルターを使って、日本語の、「あ」、「は」、「さ」、「か」、「た」、「ま」、「な」、「ら」、「ぱ」 の音を作る実験をし てみた。


作った音のサンプル  .wav ファイル 

更に、おまけで作った音




作り方
  1. 「あ」  前述を参考して欲し い。
  2. 「は」  有声波の替わりに、のどで発生するノイズを音源として、口の共鳴管システムに入力する。音は無声音であるがその共鳴管の特徴を有す ることになる。
  3. 「さ」  口先の狭い隙間で、他にくらべて 周波数が高いところで分布するノイズを発生させる。 下図に周波数の例を示す。実際の中心周波数 の値はまちまちであろう。
     
  4. 「か」  強い息の吹きかけにより(ノイズ)、非線形現象の不定期に発生するバースト波tone burst waveformを発生させる。ランダムノイ ズの信号を狭帯域通過フィルターを通してつくった、バースト波もどきを使ってみた。それ入力として更に口内部で 多少 共鳴させる。
  5. 「た」  弱い息の吹きかけて(ノイズ)、すばやく音を立ち上げる。「た」には多くの形がある。はじめのノイズ成分により高い周波数成分を入 れると濁音ぽくなる。
  6. 「ら」    口蓋から舌を離す音からはじまり(変 化点の一例)、そして、各構成要素が段々と形つくられ最後に「あ」の形になる。 ( 本 物の音声の「ら」のスペクトルの変化の一例
     今回は、高めの周波数信号を付加した状態からそれを無くすことで はじまりの音 を代用し、口先は つぼめ た状態からだんだんに口をあけて「あ」の形に連続的に変化させてつくってみた。
    「な」の先頭はじめの部分を無くすと「ら」 に聞こえる。
  7. 「ん」  本来あるべきピークを鼻の効果で消音してしまい、かつ、高域周波数成分の音は無くす。今回は、消音効果のため帯域除去フィルター (BEF)を使い、高周波数成分のカットの目的に、きゅうな減衰特性をもつチェビシェフ特性のフィルターを使った。
    2管声道モデルで作った「ん(/N)」(”う”っぽいい音)と、その高域周波数成分をカットした 「」。
  8. 「ま」  本来あるべきピークを消音するのと、高域周波数成分は主に2つのピークのみに消音する、2つの鼻に効果からはじめ、じょじょに鼻の 効果を緩和させて 本来あるピークを復帰させる。(「む」の場合の例
  9. 「な」   「ま」と似ている。「ま」のときは最初からターゲットにあわせた口の形に設定したが、「な」は口先をつぼみかげんの状態から ターゲットの「あ」の形に連 続変化させてみた。
  10. 「ぱ」 強い息の吹きかけとその反響の音からはじまる。



   参考


サンプルの音の波形はこうなります。 青色が声門の波形を、赤色が音声に相当する音圧の波形を示している。








さて、これらの音を作る 数値演算 ライブラリ SCILABのサンプルプログラムを参考にリンク しておきます。 windowsのSCILAB-4.1.2向けconttubesci.txt  ファイル名をconttube.sciに名称変更してからSCILAB上で実行します。 これで作ることができる音の質は良くありませんが、音声 を生成する原理を研究するときに、参考になるかもしれません。

作った音は、 menu_sound の中にある項目の (2)play soundで再生 または  (3)save soundで.wavファイルとして書き出しすることが、scilabの動作環境がこのサンプルプログラムと上手く合っていれば、できるかもしれません。

別の音を作るためには、step1_edit の中にある項目の A (0)select and setでどれかの音を選びます。 必要におうじて 、(2)edit lrpaにおいて 管モデルやピッチ、振幅の大きさ、ノイズの種類、反射係数、帯域除去フィルター、高域カットフィルターなどちょっと変更することもできます。 実際の設定 は、conttube.sci の function sub_demo1  の中身を編集します。 ちなみに、現在の設定は このように(excel 形式html版)なっています。  編集終 了後、OKを押して、 B (4)make parameters、そして、step2_wave_generateの中にある項目の C (1)wave generateで波形を計算する。

また、step3_check_areaの中にある項目の(1)preparation bode で計算して - cacluation was done. がでたあと  (2) set event handler window(1)で、各ピッチ毎の理論的な周波数特性を見ることもできます。マウスの右クリックで表示が戻り、左クリックで先のデータに進みます。


(SCILABのバージョン 5.1.1の使用上の注意)

 2009年5月25日時点のSCILABの最新のバージョンは、SCILAB-5.1.1である。旧バージョンに比べて内部のつくりが大きく変更になっ ているため、LINUX版でglibcが古くて起動しなかったり、グラフィックカードのドライバーとの関連(usecanvs ???)でグラフィック図形が上手く表示しない叉は停止するなどの症状が見られる。環境によっては正常に動作するようだが、もし、お使いの環境でうまく動 かないときは、旧 バージョンのSCILAB-4.1.2の 使用をお すすめする。または、windows版の方をすすめる。windows版の方が安定して動作する ように見える。





No.29b   2010年2月27日
 2015年2月26日