前回の更新から5ヶ月以上が経過してしまったため、
もうアイデアが尽きて更新がストップしてしまったのではないかと勘ぐられても致し方ない様相ですが、
しがないサラリーマンが仕事と余暇と特許出願の合間に
更新しているのだから致し方ないことと更新を期待されていた方がいらっしゃいましたらご容赦下さい。
さて今回は、タイトルのとおり、声道のインパルス応答らしき波形の簡単な測定方法をご披露いたします。
まず、声道とは要するに体の中で声が共鳴する空間のことです。声の発信機である声帯から発せられた音が
喉とか口の中、あるいは鼻の中や、腹から声を出している場合は、胸の中で共鳴して、
それが口や鼻から漏れ出したものを我々は声と判断しています。
この声道のインパルス応答は、音程に拠らずほぼ一定で、フォルマントとも称されております。
で、このフォルマントがきっちり分かれば、人が歌ったり喋ったりしているかのような合成音が、
サンプリングに頼らずとも出来てしまうのですが、
それはそれでやっぱり難しくで、現在でも近似的に求めるアルゴリズムが色々とあるけれど、
決定的に本物と寸分違わず、というレベルは中々難しいようです。
何しろ人間の音声は呼気の風圧をベースにして歯とか舌とか喉とか、声帯以外の器官でも音が発生しますし、
発声方法や口の開け閉めやら何やらで実のところ刻一刻と変化していますから。
例えフォルマントが全く変化しないと仮定した場合でも、
発音源である声帯自体がそれこそTSP波形でも出してくれない限りは、
正確なインパルス応答は分からない事になります。
結局正確に分からないなら、何も無理して難しいことしなくても簡単にやれる方法でいいじゃん。
前置きが長くなりましたが、これが今回のテーマです。
で、どうやるのかと言いますと。。。
息を吸いながら声を発してみて、その1周期分をインパルス応答と見なす
。。。もう一回書きましょうか?いいですか?いいですね?
息を吸いながら声を出す。
これはやったことが無い人には、非常に不可解な事に思えるかも知れません。
でも、やってみて下さい。通常通り声を出す要領で、喉を軽く閉めます。それで息を吸い込んで見て下さい。
難しいと思うならば、「アー」とか普通に喋ってみて、その喉の状態をキープしつつ、すかさず息を吸い込んで見て下さい。
コツは、低い声を出しながら息を吸い込むことです。
そうすると普段自分が出している声とは随分イメージが違う非常に低い声が出るはずです。
コチラから僕がやって見たサンプルをお聞き頂くことができます。アイウエオと順番に発声してみました。
そして、以下の画像は、このサンプルの「ア゛ア゛ア゛ア゛」と発している部分の波形です。

画像の中の注釈にもあるように、1周期が大体100〜120ミリ秒(8〜10Hz)程度です。
そして単発の1周期分だけを取り出せば、
まるでインパルス応答のような波形であることが分かると思います。
これを文字通りインパルス応答として用いてしまおうというのが、
今回のアイデアという分けです。
で、言ってしまえば単純なことなのですが、いくつかの留意ポイントがあります。
1.純粋なインパルス応答っぽい(音程感を持たない)こと
実は、先ほどのサンプルの中でもよく聴いてみると、1周期の間に音程間のある区間が含まれています。
特に「イ゛」とか「エ゛」では顕著で、「イ゛−」とか「エ゛−」とか音が伸びていて、そして音程感が
感じられてしまう区間は、純粋なインパルス応答っぽくないことになります。
逆に「ア゛」の部分は、1個1個の周期が、パツパツとしたインパルス応答っぽい音になっていることが
分ってもらえると嬉しいです。
波形レベルで見た場合は、1周期と思われる区間内で音が少し伸びていたり、
同じパターンの波形の細かい繰り返しが見られれば、インパルス応答っぽくないと判断すべきです。
インパルス応答っぽい音とインパルス応答っぽくない音は、シビアに比較するととても微妙なので、
経験と感で対処するしかありません。重要なのはやはりパツパツ感で、パツパツせずに濁ったり、伸びている感じがすれば
インパルス応答っぽくない傾向にあるといえるでしょう。
ちなみにインパルス応答っぽくない波形で畳み込みを行うと、僅かながらもコムフィルタ(ショートディレイ)っぽい感じが出てきてしまいます。
2.ノイズが少ないこと
ノイズを少なくするには、マイクにかじりつく様に至近距離で録音するのが第一の方法です。
ただし近づけ過ぎると接近効果で、低音が盛り上がってしまうので、近すぎず遠すぎず、大体5〜10cm程度といったところでしょうか。
問題はブレスというか声帯を息が抜ける音が割と大きめの音量で混入しがちなので、
インパルス応答っぽい部分以外がなるべく無音に近い状態となっている波形を選ぶ必要があります。
3.明瞭な音質であること
微妙なマイクの位置や一瞬一瞬での声帯の状態、口の開き方、などで音の明瞭さは変化します。
この場合、明瞭さとは高音域の出具合と思って頂いて構いません。高音域が弱いと、別の音、例えば代表的なシンセ波形であるノコギリ波を
畳み込んだ場合に、畳み込んだ後の音が丸くなり過ぎてしまう傾向にあります。
普段出している声と比べても、何かくぐもった感じがしてしまう音になることでしょう。
ただ、この問題は録音時の工夫だけでは十分解決できないことが多いです。
何故ならここで録音するインパルス応答っぽい音はやはりどう足掻いてもインパルス応答ではなく、
周期性の除去をベースにした近似的なものでしかないからです。
声帯はアコースティックな装置にはありがちな高周波が減衰する特性を有しています。
さらに畳み込みの対象となるであろうシンセ波形なども人間が聴いて不快ではない音色が用いられる結果、
やはり高周波が減衰する特性を有することになります。両者を畳み込めば、
高周波が減衰し過ぎた物足りなく思えてしまう結果となるわけです。
そこで、一番尖って聞こえる周期の波形を選ぶことは勿論として、
EQなどを用いて無理にでも高音域を持ち上げる必要が出てくるわけです。
補正量の目安としては、代表的なシンセ波形であるノコギリ波や矩形波は−6dB/Octの高域減衰率を
持つので、この逆の特性となるように補正すれば良いと思います。人間の声は3KHz付近から急に落ち込むので、
ブーストもこの近辺の周波数帯からで良いのではないでしょうか。
録音した音をよく聴いてみて、以上の条件をなるべく満たす周期の波形を畳み込み用に採用します。
そして採用した周期を単独で切り出して、振幅が小さくなっている部分をフェーディングします。

フェーディングを怠ると、音の開始サンプルと終了サンプルでプチノイズが発生して、周波数特性が曖昧になってしまうのでご注意下さい。
最後に今回のサンプルとして上げたサンプルから「エ゛」の波形を用いて畳み込んだシンセ音をご披露いたします。
使用ソフトは拙作のテル民です。
どうぞ!
|