Crate elevenlabs_ttm

Crate elevenlabs_ttm 

Source
Expand description

ElevenLabs Text-to-Music API client

A type-safe, async Rust client for the ElevenLabs TTM API.

§Quick Start

use elevenlabs_ttm::{ElevenLabsTTMClient, MusicPlan, TTMPromptPlan};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = ElevenLabsTTMClient::new("your-api-key");

   let prompt = "Generate an energetic house track with tribal percussion and atmospheric pads.";
   let prompt_plan: MusicPlan = MusicPlan::Prompt(TTMPromptPlan::new(prompt.to_string()));
     
   let music_audio = client.compose_music(prompt_plan).execute().await?;
     
    // music_audio is Vec<u8> - raw msuic audio's data
    std::fs::write("output.mp3", music_audio)?;
    Ok(())
}

Re-exports§

pub use error::ElevenLabsTTMError;
pub use types::*;

Modules§

error
models
types

Structs§

ElevenLabsTTMClient
Main client for interacting with ElevenLabs API
TextToMusicBuilder
Builder for text-to-speech requests