Início rápido do Voice Design

Este guia mostra como criar uma voz por meio de um prompt de texto usando a API Voice Design.

Este guia mostra como criar uma voz por meio de um prompt usando a API Voice Design.

Usando a API Voice Design

Este guia pressupõe que você já configurou sua chave de API e seu SDK. Conclua primeiro o guia de início rápido, caso ainda não tenha feito isso. Para reproduzir áudio pelos alto-falantes, talvez você também precise de MPV e/ou ffmpeg.

1

Faça a solicitação à API

Criar uma voz por meio de um prompt tem duas etapas:

  1. Gere prévias com base em um prompt.
  2. Selecione a melhor prévia e use-a para criar uma nova voz.

Vamos começar gerando prévias com base em um prompt.

Crie um novo arquivo chamado example.py ou example.mts, dependendo da linguagem escolhida, e adicione o código a seguir:

# example.py
from dotenv import load_dotenv
from elevenlabs.client import ElevenLabs
from elevenlabs.play import play
import base64
load_dotenv()
elevenlabs = ElevenLabs(
api_key=os.getenv("ELEVENLABS_API_KEY"),
)
voices = elevenlabs.text_to_voice.design(
model_id="eleven_multilingual_ttv_v2",
voice_description="A massive evil ogre speaking at a quick pace. He has a silly and resonant tone.",
text="Your weapons are but toothpicks to me. Surrender now and I may grant you a swift end. I've toppled kingdoms and devoured armies. What hope do you have against me?",
)
for preview in voices.previews:
# Convert base64 to audio buffer
audio_buffer = base64.b64decode(preview.audio_base_64)
print(f"Playing preview: {preview.generated_voice_id}")
play(audio_buffer)
2

Execute o código

python example.py

Você deverá ouvir as prévias de voz geradas sendo reproduzidas pelos alto-falantes, uma por vez.

3

Adicione a voz gerada à sua biblioteca

Depois de gerar as prévias e escolher sua favorita, você pode adicioná-la à sua biblioteca de vozes usando o ID da voz gerada, para utilizá-la com outras APIs.

voice = elevenlabs.text_to_voice.create(
voice_name="Jolly giant",
voice_description="A huge giant, at least as tall as a building. A deep booming voice, loud and jolly.",
# The generated voice ID of the preview you want to use,
# using the first in the list for this example
generated_voice_id=voices.previews[0].generated_voice_id
)
print(voice.voice_id)

Próximas etapas