Summary
Add a TTS WebSocket streaming client to the Go SDK, enabling real-time text-to-speech with chunked audio delivery — matching the TTS WebSocket support already available in the Python and JS SDKs.
Problem it solves
Go developers building voice agents, IVR systems, and real-time audio applications need streaming TTS for low-latency speech synthesis. The Go SDK currently supports TTS only via the REST endpoint (full audio response), which adds latency unacceptable for conversational use cases. A WebSocket TTS client would enable Go developers to receive audio chunks as they're generated, matching the experience in other Deepgram SDKs.
Proposed API
client := speak.NewWebSocketClient(apiKey)
err := client.Connect(speak.WebSocketOptions{
Model: "aura-asteria-en",
Encoding: "linear16",
})
client.OnAudioData(func(data []byte) {
// Play or relay audio chunk
})
client.SendText("Hello from Deepgram!")
client.Flush()
client.Close()
Acceptance criteria
Raised by the DX intelligence system.
Summary
Add a TTS WebSocket streaming client to the Go SDK, enabling real-time text-to-speech with chunked audio delivery — matching the TTS WebSocket support already available in the Python and JS SDKs.
Problem it solves
Go developers building voice agents, IVR systems, and real-time audio applications need streaming TTS for low-latency speech synthesis. The Go SDK currently supports TTS only via the REST endpoint (full audio response), which adds latency unacceptable for conversational use cases. A WebSocket TTS client would enable Go developers to receive audio chunks as they're generated, matching the experience in other Deepgram SDKs.
Proposed API
Acceptance criteria
Raised by the DX intelligence system.