Skip to main content

Typecast TTS service integration for Pipecat

Project description

pipecat-typecast

A community integration that adds Typecast TTS support to Pipecat.

Typecast provides high-quality multilingual neural voices with fine-grained emotion and prosody controls.

Installation

pip install pipecat-typecast

Or with uv:

uv add pipecat-typecast

Usage

from pipecat_typecast import TypecastTTSService

tts = TypecastTTSService(
    api_key="YOUR_TYPECAST_API_KEY",
    settings=TypecastTTSService.Settings(
        voice="tc_689450bdcce4027c2f06eee8",
        model="ssfm-v30",
    ),
)

Emotion control

tts = TypecastTTSService(
    api_key="YOUR_TYPECAST_API_KEY",
    settings=TypecastTTSService.Settings(
        voice="tc_689450bdcce4027c2f06eee8",
        model="ssfm-v30",
        emotion_type="preset",
        emotion_preset="happy",       # normal | happy | sad | angry | whisper | toneup | tonedown
        emotion_intensity=1.5,        # 0.0 – 2.0
    ),
)

Prosody controls

TypecastTTSService.Settings(
    voice="tc_689450bdcce4027c2f06eee8",
    audio_tempo=1.2,   # 0.5 – 2.0 (speech speed)
    audio_pitch=2,     # -12 to +12 semitones
    volume=120,        # 0 – 200
    seed=42,           # reproducible output
)

Running the example

cd examples
TYPECAST_API_KEY=... DAILY_API_KEY=... DAILY_ROOM_URL=... OPENAI_API_KEY=... python typecast_tts_example.py

The example creates a voice agent in a Daily WebRTC room that responds to speech using Typecast TTS.

Settings reference

Setting Type Default Description
voice str Typecast voice ID (required)
model str ssfm-v30 TTS model: ssfm-v30 or ssfm-v21
language str auto ISO 639-3 language code
emotion_type str smart or preset
emotion_preset str normal, happy, sad, angry, whisper, toneup, tonedown
emotion_intensity float 1.0 Emotion intensity (0.0–2.0)
previous_text str Context before current utterance
next_text str Context after current utterance
audio_tempo float 1.0 Speech speed (0.5–2.0)
audio_pitch int 0 Pitch in semitones (-12 to +12)
volume int 100 Volume (0–200)
seed int Seed for reproducible output

Pipecat compatibility

pipecat-typecast pipecat-ai
0.1.x >=0.0.62

Maintainer

@ironyee

License

BSD 2-Clause — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pipecat_typecast-0.1.0.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pipecat_typecast-0.1.0-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file pipecat_typecast-0.1.0.tar.gz.

File metadata

  • Download URL: pipecat_typecast-0.1.0.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for pipecat_typecast-0.1.0.tar.gz
Algorithm Hash digest
SHA256 105e2f821df51cb454f0d66d724ee1e94d49f09ff581251a2306316f2518d1c4
MD5 67f0103d326c4e9a9e8d204abd578f9f
BLAKE2b-256 43f21320255f411cb4b610b8d5e305e1e8eb8a77f412a67acca20261c71887fe

See more details on using hashes here.

File details

Details for the file pipecat_typecast-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pipecat_typecast-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for pipecat_typecast-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0af7fdea20b8d670423774197674033f050874a8939353f1799308685b2a46b5
MD5 307c7271454d4064dc63888e31d88dd5
BLAKE2b-256 0c97caa531fe7c8eec617421629170ce69ecc2485ba160c0e2c9458fa973722c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page