> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Snelstartgids voor Voice Design

In deze handleiding leer je hoe je via een prompt een stem ontwerpt met de Voice Design API.

## De Voice Design API gebruiken

> **Note**
>
> Deze handleiding gaat ervan uit dat je [je API-sleutel en SDK hebt ingesteld](/docs/nl/eleven-api/quickstart). Voltooi
> eerst de snelstartgids als je dat nog niet hebt gedaan. Mogelijk heb je ook
> [MPV](https://mpv.io/) en/of [ffmpeg](https://ffmpeg.org/) nodig om audio via je speakers af te spelen.

#### De API-request uitvoeren

Een stem ontwerpen via een prompt bestaat uit twee stappen:

1. Genereer previews op basis van een prompt.
2. Selecteer de beste preview en gebruik deze om een nieuwe stem te maken.

We beginnen met het genereren van previews op basis van een prompt.

Maak een nieuw bestand met de naam `example.py` of `example.mts`, afhankelijk van de programmeertaal van je keuze, en voeg de volgende code toe:

```python maxLines=0
# 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)
```

```typescript maxLines=0
// example.ts
import { ElevenLabsClient, play } from "@elevenlabs/elevenlabs-js";
import "dotenv/config";
import { Readable } from 'node:stream';
import { Buffer } from 'node:buffer';

const elevenlabs = new ElevenLabsClient();

const { previews } = await elevenlabs.textToVoice.design({
    modelId: "eleven_multilingual_ttv_v2",
    voiceDescription: "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 (const preview of previews) {
    // Convert base64 to buffer and create a Readable stream
    const audioStream = Readable.from(Buffer.from(preview.audioBase64, 'base64'));

    console.log(`Playing preview: ${preview.generatedVoiceId}`);

    // Play the audio using the stream
    await play(audioStream);
}
```

#### De code uitvoeren

```python
python example.py
```

```typescript
npx tsx example.mts
```

Je zou de gegenereerde stempreviews één voor één via je speakers moeten horen.

#### Gegenereerde stem aan je bibliotheek toevoegen

Nadat je de previews hebt gegenereerd en je favoriet hebt gekozen, kun je deze via de gegenereerde stem-ID aan je stembibliotheek toevoegen, zodat je deze met andere API's kunt gebruiken.

```python
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)
```

```typescript
const voice = await elevenlabs.textToVoice.create({
    voiceName: "Jolly giant",
    voiceDescription: "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
    generatedVoiceId: previews[0].generatedVoiceId
});

// The ID of the newly created voice, use this to reference the voice in other APIs
console.log(voice.voiceId);
```

## Volgende stappen

#### [Instant voice cloning](/docs/nl/eleven-api/guides/how-to/voices/instant-voice-cloning)

Kloon een stem op basis van bestaande audio in plaats van er een uit een beschrijving te genereren.

#### [API-referentie](/docs/nl/api-reference/text-to-voice/design)

Volledige Voice Design API-referentie en parameters.