6 releases

0.3.2 Nov 3, 2024
0.3.1 Jul 11, 2024
0.3.0 Jun 28, 2024
0.2.0 Aug 9, 2023
0.1.1 Aug 8, 2023

#296 in Audio

Download history 32/week @ 2024-09-11 33/week @ 2024-09-18 20/week @ 2024-09-25 110/week @ 2024-10-30 49/week @ 2024-11-06 15/week @ 2024-11-13 18/week @ 2024-11-20 6/week @ 2024-11-27 86/week @ 2024-12-04 47/week @ 2024-12-11 17/week @ 2024-12-18 3/week @ 2024-12-25

157 downloads per month
Used in reddit-motion

MIT license

180KB
4K SLoC

An unofficial lib crate for ElevenLabs

Text-to-Speech

use elevenlabs_rs::*;
use elevenlabs_rs::utils::play;

#[tokio::main]
async fn main() -> Result<()> {
    let client = ElevenLabsClient::default()?;
    let body = TextToSpeechBody::new(
        "This is the way the world ends, not with a bang but a whimper",
        Model::ElevenMultilingualV2,
    );
    let endpoint = TextToSpeech::new(PreMadeVoiceID::Clyde, body);
    let speech = client.hit(endpoint).await?;
    play(speech)?;

    Ok(())
}

lib.rs:

An unofficial lib crate for ElevenLabs.

ElevenLabs' web app: https://elevenlabs.io/

ElevenLabs' API documentation: https://docs.elevenlabs.io/api-reference/quick-start/introduction.

Example

Text to Speech

use elevenlabs_rs::*;
use elevenlabs_rs::utils::play;

#[tokio::main]
async fn main() -> Result<()> {
    let client = ElevenLabsClient::default()?;
    let body = TextToSpeechBody::new(
        "This is the way the world ends, not with a bang but a whimper",
        Model::ElevenMultilingualV2,
    );
    let endpoint = TextToSpeech::new(PreMadeVoiceID::Clyde, body);
    let speech = client.hit(endpoint).await?;
    play(speech)?;

    Ok(())
}

Dependencies

~8–41MB
~659K SLoC