Skip to main content

Supertonic TTS service integration for Pipecat (Unofficial)

Project description

pipecat-supertonic

pipecat-supertonic provides a Pipecat-compatible TTSService wrapper for the official Supertonic Python SDK.

The package is designed to feel like a native Pipecat service:

  • import with from pipecat_supertonic import SupertonicTTSService
  • configure with SupertonicTTSService.Settings(...)
  • drop directly into an existing Pipecat pipeline

This project is an independent community integration maintained by Archit Jambhule. It is not affiliated with Supertone or the Supertonic team.

Install

pip install pipecat-supertonic

Or with uv:

uv add pipecat-supertonic

Supported Voices

F1, F2, F3, F4, F5, M1, M2, M3, M4, M5

Basic Usage

from pipecat_supertonic import SupertonicTTSService

tts = SupertonicTTSService(
    settings=SupertonicTTSService.Settings(
        voice="M1",
        language="en",
        total_steps=5,
        speed=1.05,
    )
)

await tts.warmup()

warmup() is required before the service is used in a live Pipecat pipeline. Call it during application startup so Supertonic can download and cache the model before the first user request arrives.

Pipecat Pipeline Usage

Use SupertonicTTSService anywhere Pipecat expects a TTS processor:

from pipecat.pipeline.pipeline import Pipeline
from pipecat_supertonic import SupertonicTTSService

tts = SupertonicTTSService(
    settings=SupertonicTTSService.Settings(
        voice="M1",
        language="en",
        total_steps=5,
        speed=1.05,
    )
)

await tts.warmup()

pipeline = Pipeline(
    [
        transport.input(),
        stt,
        llm,
        tts,
        transport.output(),
    ]
)

Warmup Contract

This package intentionally does not lazy-load Supertonic during active TTS requests. If the service is used before warmup(), it fails fast with a clear error telling the caller to warm the service up first.

This avoids first-request cold-start delays and keeps Pipecat TTS frame ordering stable.

Foundational Example

examples/voice-supertonic.py synthesizes a short utterance and writes the generated PCM audio to examples/supertonic-demo.wav.

Run it from the repository root:

uv sync --group dev
uv run python examples/voice-supertonic.py

Compatibility

Tested with pipecat-ai==1.2.0 and supertonic==1.2.1.

Development

uv sync --group dev
uv run pytest
uv run ruff check .

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_supertonic-0.1.1.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

pipecat_supertonic-0.1.1-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file pipecat_supertonic-0.1.1.tar.gz.

File metadata

  • Download URL: pipecat_supertonic-0.1.1.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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_supertonic-0.1.1.tar.gz
Algorithm Hash digest
SHA256 782ae4f8fc294dedacfadb6812c5024d4589d8d92e75401e3e7dcccaab2a9f69
MD5 e63d991c262b35fdffda8fd7fdc8a60c
BLAKE2b-256 00e680cc81a6f00933a83e763d72d9370320711d08efd0e1e09046e1096f5394

See more details on using hashes here.

File details

Details for the file pipecat_supertonic-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: pipecat_supertonic-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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_supertonic-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7dee69b2353e00523bc51be1f16661ea0d4cf515130a51629fb9f1ce8a9d1167
MD5 0ef8a55cae0c6cc0b9b1120ac8293150
BLAKE2b-256 e15223040882edfeea008fc7e938ceaa5a521be709a55301d970ce0fd9120997

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