Skip to main content

Overview

DeepdubTTSService generates speech from text using Deepdub AI’s real-time streaming WebSocket API. It extends Pipecat’s InterruptibleTTSService and pushes TTSAudioRawFrame audio into the pipeline, with support for multiple models (dd-etts-2.5, dd-etts-3.0), voice customization, and accent control.

Source Repository

Source code, examples, and issues for the Deepdub TTS integration

PyPI Package

The pipecat-deepdub-tts package on PyPI

Deepdub AI

Learn more about Deepdub AI and sign up for an API key

Installation

This is a community-maintained package distributed separately from pipecat-ai:

Prerequisites

Deepdub Account Setup

Before using the Deepdub TTS service, you need:
  1. Deepdub Account: Sign up at Deepdub AI
  2. API Key: Obtain your API key from your Deepdub account
  3. Voice Prompt ID: A voice prompt ID to use for synthesis

Required Environment Variables

  • DEEPDUB_API_KEY: Your Deepdub API key for authentication
  • DEEPDUB_VOICE_ID: The voice prompt ID used for synthesis

Configuration

api_key
str
required
Deepdub API key for authentication.
voice_id
str
required
Voice prompt ID to use for synthesis.
model
str
default:"dd-etts-2.5"
TTS model name (e.g. "dd-etts-2.5", "dd-etts-3.0").
sample_rate
int
default:"16000"
Audio sample rate in Hz. Valid values: 8000, 16000, 22050, 24000, 44100, 48000.
params
DeepdubTTSService.InputParams
default:"None"
Optional voice customization parameters. See InputParams below.

InputParams

Optional voice customization passed via the params constructor argument using DeepdubTTSService.InputParams(...).
Available parameters and defaults are defined by the integration. See the source repository for the authoritative, up-to-date list.

Usage

Compatibility

Tested with Pipecat v0.0.97. Check the source repository for the latest tested version and changelog.