Vai alla navigazione

Guida rapida a Voice Design

Questa guida mostra come progettare una voce tramite un prompt di testo usando l'API Voice Design.

Questa guida mostra come progettare una voce tramite un prompt usando l’API Voice Design.

Uso dell’API Voice Design

Questa guida presuppone che tu abbia configurato la chiave API e l’SDK. Completa prima la guida rapida, se non l’hai già fatto. Per riprodurre l’audio dagli altoparlanti, potresti anche aver bisogno di MPV e/o ffmpeg.

1

Effettua la richiesta API

Progettare una voce tramite un prompt richiede due passaggi:

  1. Genera anteprime in base a un prompt.
  2. Seleziona l’anteprima migliore e usala per creare una nuova voce.

Inizieremo generando anteprime in base a un prompt.

Crea un nuovo file denominato example.py o example.mts, a seconda del linguaggio che preferisci, e aggiungi il codice seguente:

# 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

Esegui il codice

python example.py

Dovresti sentire le anteprime delle voci generate riprodotte dagli altoparlanti, una alla volta.

3

Aggiungi la voce generata alla libreria

Dopo aver generato le anteprime e scelto la tua preferita, puoi aggiungerla alla libreria vocale tramite l’ID della voce generata, così potrai usarla con altre API.

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)

Passaggi successivi