AuroraVoice Gateway — Cloudflare Workers上のTTSゲートウェイ
概要
AuroraVoice Gatewayは、Cloudflare Workers上にデプロイして使うことを前提としたTTS(テキスト・トゥ・スピーチ)用のゲートウェイプロジェクトです。プロジェクト自体は上流のTTSエンジンを内包せず、代わりに任意のバックエンドTTSサービスを呼び出すためのシンプルなREST APIと、動作確認や操作に便利なWebベースのダークテーマコンソールを提供します。主な目的は、エッジでの低遅延なアクセスポイントを用意して、既存のTTS実装を簡単に公開・試験・統合できるようにすることです。
リポジトリの統計情報
- スター数: 4
- フォーク数: 0
- ウォッチャー数: 4
- コミット数: 13
- ファイル数: 6
- メインの言語: TypeScript
主な特徴
- Cloudflare Workers上で動作するため、軽量かつグローバル配信が可能。
- シンプルなREST APIを提供(ヘルスチェック、音声一覧、合成)。
- APIキー(X-Api-Key)による簡易認証をサポートし、複数キーの設定が可能。
- ダークテーマのWebコンソール(webディレクトリ)を同梱し、テキスト入力や音声オプションの指定が可能。
技術的なポイント
AuroraVoice GatewayはTypeScriptで実装され、Cloudflare Workersというエッジランタイム上で動作する構成を取っています。Workersの利点であるグローバルな配信と低レイテンシを活かして、地域的に分散したクライアントでもTTS呼び出しをスムーズに中継可能です。設計は「シンプルなプロキシ兼管理層」としてまとめられており、/api/healthでのヘルスチェック、/api/voicesでの利用可能な音声一覧取得、/api/tts/synthesizeでの合成リクエスト受け付けを行います。合成APIはPOSTでテキストとオプションを受け取り、バックエンドのTTSサービスにフォワードして音声バイナリを返却する役割を担います。
認証はHTTPヘッダのX-Api-Keyによる方式を採用しており、複数キーの比較で許可を判断するシンプルな実装です。Workers上で動かすことで、CORSやキャッシュ制御などエッジ側での運用ルールを柔軟に設定できます。音声データの扱いはレスポンスのContent-Typeやバイナリストリームの扱いに注意が必要ですが、WorkersのFetch APIとReadableStreamを使えば大容量オーディオの逐次配信やストリーミングモデルにも対応可能です。
フロントエンドはwebディレクトリ内にシンプルなコントロールUIを備え、音声選択、速度やピッチなどのパラメータ設定、音声フォーマット指定をサポートします。プロジェクトは上流のTTS実装を含まない点を明確にしており、Edge TTSやクラウドプロバイダのTTSを別途用意して接続する運用を前提としています。これにより、著作権や利用規約に従った安全な導入が可能となります。TypeScript採用により型安全性が確保され、今後の拡張(認可の強化、メトリクス収集、ストリーミング最適化など)も比較的容易です。
プロジェクトの構成
主要なファイルとディレクトリ:
- README.md: file
- package.json: file
- src: dir
- tsconfig.json: file
- web: dir
…他 1 ファイル
まとめ
エッジでTTSを中継・公開したい場面に適した、軽量で実用的なゲートウェイ実装です。
リポジトリ情報:
- 名前: AuroraVoice-Gateway
- 説明: 説明なし
- スター数: 4
- 言語: TypeScript
- URL: https://github.com/moge9800/AuroraVoice-Gateway
- オーナー: moge9800
- アバター: https://avatars.githubusercontent.com/u/206563506?v=4
READMEの抜粋: AuroraVoice Gateway 是一个部署在 Cloudflare Workers 上的文本转语音(TTS)网关,将后端 TTS 服务封装成简单的 REST API,并附带一个可视化 Web 控制台,方便你快速测试与集成。[web:26][web:31]
本项目仅提供网关与前端示例,不内置任何第三方 TTS 上游实现。使用 Edge TTS 或其他云厂商服务时,请自行搭建合规的上游服务,并遵守对应服务条款与版权要求。[web:23][web:24]
機能特徴
- 运行于 Cloudflare Workers,轻量、可全球加速。[web:26]
- 自定义 REST API:
GET /api/health健康检查GET /api/voices获取可用语音列表POST /api/tts/synthesize文本合成语音
- 支持
X-Api-Key鉴权(可配置多个密钥)。 - 自带暗色风格 Web 控制台(
web/目录),支持:- 文本输入
- 语音选择
- 语速、语气、音频格式控制…