Skip to content

Murf AI Synthesizer support #753

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

nileshmurf
Copy link

Murf Synthesizer Integration

This PR adds support for Murf.ai text-to-speech service as a new synthesizer option in Vocode.

Features Added

  • New MurfSynthesizer websockets implementation
  • MurfSynthesizerConfig with configurable parameters:
    • Voice ID selection
    • Speech rate, pitch, and variation controls
    • Audio format and channel type configuration
    • Style selection (e.g., "Conversational", "Narration", "Inspirational", "Calm" etc )
    • Multi-locale support for voices eg: en-US, en-UK, es-ES etc can be passed in multi_native_locale
  • Robust error handling and exponential backoff for WebSocket connections
  • Proper context management for streaming sessions

Documentation

  • Added Murf to the list of supported synthesizers in documentation
  • Created a new quickstart example: murf_streaming_conversation.py
  • Updated synthesizer factory to include Murf integration

Usage Example

from vocode.streaming.models.synthesizer import MurfSynthesizerConfig
from vocode.streaming.synthesizer.murf_synthesizer import MurfSynthesizer

synthesizer = MurfSynthesizer(
    MurfSynthesizerConfig(
        api_key=os.getenv("MURF_API_KEY"),
        voice_id="en-US-daniel",
        style="Conversational",
        sampling_rate=16000,
        audio_encoding=AudioEncoding.LINEAR16,
    )
)

Dependencies

  • No new dependencies required beyond existing project requirements

-- introduced murf synthesizer configuration and implementation
-- added a new quickstart example for streaming conversation using murf.
-- updated synthesizer list in documentation to include links for each synthesizer.
-- updated synthesizer factory to support murf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant