音声合成とボコーダ — 声を分解し、声を作る

人の声は「音源(声帯)× フィルタ(声道)」という驚くほどシンプルな掛け算でモデル化できます。このソース・フィルタモデルから出発し、母音を決めるフォルマント、そして WaveNet・HiFi-GAN に至るニューラルボコーダの進化まで — 「声を作る技術」の全体像を動かして学びます。

1. ソース・フィルタモデル — 声は「ブザー × 筒」

発声のしくみは2段構えです。まず声帯が周期的に開閉してブザーのようなパルス列を作る(=ソース、スペクトルは f0 間隔の櫛)。次にそのブザー音が喉・口・唇からなる声道という「形の変わる筒」を通り、特定の周波数だけ共鳴で強調される(=フィルタ)。

周波数領域で見れば、出力スペクトルは単純な積です。声の高さ(ソース側の f0)と、どの母音か(フィルタ側の共鳴)が独立に操作できることを下のデモで確かめてください。

ソース × フィルタ = 声 — 3パネル連動デモ
左: 声帯パルス列のスペクトル(f0 間隔の櫛)。中: 声道フィルタの周波数応答 — 母音ボタンで山(フォルマント F1, F2)の位置がなめらかに動く。右: 両者の積=実際に口から出る音。f0 を変えても山の位置は動かず、母音を変えても櫛の間隔は変わらない — 高さと母音は独立です。
X(f) = S(f) · H(f) S = 声帯ソースのスペクトル(櫛)、H = 声道フィルタの周波数応答(包絡)。log を取れば和に分かれる — MFCC・ケプストラムと同じ構造

2. フォルマント — 母音の住所

声道の共鳴で強調される周波数の山をフォルマントと呼び、低い方から F1, F2, F3… と番号を付けます。母音の聞き分けはほぼ F1 と F2 の2つで決まる — つまりすべての母音は「F1×F2 平面上の住所」を持っています。

フォルマント平面 — 母音「あいうえお」の地図
左: F1×F2 平面。ボタンで母音を選ぶと白いマーカーが滑って移動します。「い」と「う」は F1 が低く(口の開きが小さい)、「あ」は F1 が高い(口が大きく開く)。右上: 選んだ母音のスペクトル包絡、右下: 対応する合成波形(流れているのは同じ f0 = 125 Hz — 形だけが変わる)。
POINT — 分析合成(ボコーダ)の発想 声が「f0(ソース)+ 包絡(フィルタ)」に分解できるなら、その2つのパラメータだけ送って受信側で再合成すれば、波形そのものを送るよりはるかに少ない情報で声を伝えられる。これが1939年の Dudley の Vocoder(voice + coder)以来の基本アイデアで、携帯電話の音声コーデックも、歌声を加工する音楽エフェクトも、この系譜にある。

この分析合成路線を極めたのが STRAIGHT や WORLD といった高品質ボコーダです。音声を「f0・スペクトル包絡・非周期性指標」の3要素に分解し、パラメータをいじってから再合成する — 声の高さだけ変える、話速だけ変える、といった加工が自在にできるため、長らく音声合成・歌声合成(初期の歌声合成ソフトなど)の心臓部でした。ただし「ブザー×筒」という単純化ゆえの機械っぽさ(buzzy な音質)が残るのが限界でした。

3. ニューラルボコーダ — 波形を「予測」で作る

2016年の WaveNet が流れを変えました。物理モデルを捨て、「直前までの波形サンプルから次の1サンプルを予測する」ニューラルネットで波形を直接生成する — 自己回帰型の発想です。品質は一気に人間の声へ近づきましたが、1サンプルずつ順番に作るため生成が絶望的に遅い(1秒の音声に数万回の推論)。

そこで登場したのが並列型です。HiFi-GAN などの GAN ベースのボコーダは、メルスペクトログラムを入力に全サンプルを一括生成し、「本物の波形か合成か」を聞き分ける識別器と競わせて品質を磨きます。リアルタイムの数百倍の速度と高品質を両立し、現在の TTS(テキスト音声合成)の標準部品になりました。

ニューラルボコーダ — メルスペクトログラムから波形へ
上段: 入力のメルスペクトログラム(色グリッド)→ ニューラルネット(処理中のノードが光る)→ 右へ波形が生成されていく。下段: 生成方式の速度対決 — WaveNet(自己回帰)は1サンプルずつじわじわ進み、GAN型(並列)は1パスで一括生成。同じ品質ならどちらを製品に載せたいかは一目瞭然。
自己回帰型: p(x) = Πt p(xt | x1, …, xt−1) WaveNet は次サンプルの条件付き分布を予測。並列型(GAN・Flow・拡散)はこの逐次性を外して一括生成する
注意 — ボコーダの本当の仕事は「位相の復元」 現代の TTS は「テキスト → 音響モデルがメルスペクトログラムを生成 → ボコーダが波形化」という2段構成。メルスペクトログラムは振幅情報だけで位相を持たないため、そのままでは波形に戻せない。もっともらしい位相ごと波形を作り出すこと — それがニューラルボコーダの核心の仕事で、古典的な Griffin-Lim 反復法との品質差が最も出る部分。
一歩先へ — ボコーダのその後 GAN 型の後も進化は続く。拡散モデル型(WaveGrad, DiffWave)、逆STFTで波形化する軽量な Vocos、超広帯域対応の BigVGAN。さらに最近の主流は、EnCodec などのニューラル音声コーデックで波形を離散トークン化し、LLM と同じ「次トークン予測」で音声を生成してからコーデックのデコーダで波形へ戻す方式 — ボコーダの役割がコーデックのデコーダへ吸収されつつある。

4. まとめ