Python 开发
谷歌tts流式生成
这篇笔记围绕 Google Cloud Text-to-Speech 的流式音频生成实现展开,重点处理中文 TTS 暂不支持原生 streaming_synthesize 的现实限制。内容先给出一种“伪流式”方案:通过 synthesize_speech 一次性拿到完整 MP3 音频,再按 1KB 等固定大小切分,用异步文件写入、yield 分片和短暂 sleep 模拟持续下发,使调用方可以边接收边播放、上传或统计,但首包仍要等服务端完成整段合成。随后演示原生流式接口的调用方式,包括选择 en-US-Chirp3-HD-Charon 声线、先发送 streaming_config、再发送文本输入,并遍历 responses 中的 audio_content 分片实现边合成边消费。文章明确指出当前原生流式仅适用于英文 Chirp 3 HD 系列,中文和其他声线需要回退到伪流式或普通合成接口。编码部分比较了非流式与流式接口的差异:前者可用 MP3、LINEAR16、OGG_OPUS 等格式,后者只支持 OGG_OPUS 和 LINEAR16,请求 MP3 会报不支持。最后从延迟、带宽和兼容性解释 PCM 与 OGG/Opus 的取舍,适合正在为 AI 语音播报、Web 播放、对象存储上传或实时语音链路选择 Google TTS 接入方式的后端和应用开发者。

