tgies/klattsch

primitive parallel-formant speech synth in the browser

何を解決するか

ブラウザ、Node.js、またはCLIで重い外部依存関係なしに合成音声を生成する方法を提供します。特に、1970年代後半から1980年代初頭の音声合成器(VotraxやSAMなど)の「レトロ」な音を、並列フォルマント合成を使用して再現します。

動作方法

システムは、コンパイラと合成器の2段階プロセスを使用しています。

  1. コンパイラ:ARPABET標準を使用した音素文字列と、ピッチ、声の高さ、タイミングに関するディレクティブを受け取り、タイムスタンプ付きのターゲットスケジュールに変換します。
  2. 合成器:そのスケジュールを解釈して音声を生成します。発声音にはローゼンバーグスタイルの声帯パルス、非発声音にはxorshiftノイズを使用し、それらを3つの並列バンドパス二階フィルタ(フォルマント)を通すことで、声の質を形成します。

ポリフォニーをサポートしており、複数の独立した声を混合して使用できます。また、低遅延再生のためにWebアプリにAudioWorkletsとして統合可能です。

対象ユーザー

  • プロジェクトにレトロな音声エフェクトを追加したいWeb開発者。
  • キャラクター用に軽量で依存関係のない音声エンジンを探しているゲーム開発者。
  • フォルマント合成や初期のコンピュータ音声に興味を持つサウンドデザイナー。

特徴

  • ランタイム依存なし:ブラウザ、Node、CLIで動作可能。
  • ポリフォニー対応:コードやマルチボイス音声の作成が可能。
  • 柔軟なプロソディ:ピッチ、バイブラート、息の漏れ、声帯努力の制御。
  • カスタマイズ可能:コンパイラは分離されており、カスタムエンジンや高度なDSP拡張のための不透明な状態ディレクティブをサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト