SuperAPI AI 工具集

deepgram-java-text-to-speech

编程与开发

查看项目

更新于 10-15 20:35

技能介绍

用途:在 Java 项目中调用 Deepgram Text-to-Speech v1(/v1/speak)将文本转为音频。REST(audio().generate)适合已有完整文本的一次性合成;WebSocket(v1WebSocket())适合文本分块到达时降低延迟的流式合成。若需在同一会话中听、思考、说,应改用 deepgram-java-voice-agent。

认证:用 DeepgramClient.builder().apiKey(System.getenv("DEEPGRAM_API_KEY")).build() 构建客户端,API key 认证使用 Authorization: Token <apiKey>。

主要能力:REST 请求构建器 SpeakV1Request.builder().text(...),已验证参数包括 model、encoding、sampleRate、bitRate、container、callback、callbackMethod、mipOptOut、tag;方法有 audio().generate(request) 与 audio().withRawResponse().generate(request)。WebSocket 连接选项有 model、encoding、sampleRate、mipOptOut;发送方法有 sendText、sendFlush、sendClear、sendClose;处理器有 onSpeakV1Audio、onMetadata、onFlushed、onCleared、onWarning 及通用连接/错误钩子。异步 REST 返回 CompletableFuture<InputStream>。

使用方式:REST 返回 InputStream,需保存或消费,不能按 JSON 反序列化;WebSocket 音频以二进制 ByteString 到达,写入或播放前需转字节,且关闭前先 Flush 以免丢失音频尾部。示例文件见 examples/speak/TextToSpeech.java 与 examples/speak/StreamingTts.java。

限制:WebSocket 选项比 REST 窄,container 与 bitRate 是 REST 字段而非本检出中的 WebSocket 连接选项;TTS 默认值较简,输出格式重要时需显式设置 model/encoding;本仓库没有 Java TextBuilder 辅助类;异步流在 future 完成后仍需关闭。跨语言产品知识可安装 npx skills add deepgram/skills。