Skip to navigation

Transcriptie

Leer hoe je gesproken audio met ElevenLabs omzet in tekst.

Overzicht

De Speech to Text (STT) API van ElevenLabs zet gesproken audio met state-of-the-art nauwkeurigheid om in tekst. Ons Scribe v2-model past zich aan tekstuele aanwijzingen aan in meer dan 90 talen en verschillende spreekstijlen. Bezoek onze showcasepagina voor Speech to Text om een live demo te proberen.

Bedrijven die HIPAA-naleving vereisen, moeten contact opnemen met ElevenLabs Sales om een Business Associate Agreement (BAA) te ondertekenen. Zorg dat je deze stap afrondt voordat je doorgaat met integraties of implementaties die verband houden met HIPAA.

Modellen

Voorbeeld van API-response

Het volgende voorbeeld toont de output van de Speech to Text API met het Scribe v2-model voor een voorbeeldaudiobestand.

{
"language_code": "en",
"language_probability": 1,
"text": "With a soft and whispery American accent, I'm the ideal choice for creating ASMR content, meditative guides, or adding an intimate feel to your narrative projects.",
"words": [
{
"text": "With",
"start": 0.119,
"end": 0.259,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 0.239,
"end": 0.299,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "a",
"start": 0.279,
"end": 0.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 0.339,
"end": 0.499,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "soft",
"start": 0.479,
"end": 1.039,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.019,
"end": 1.2,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "and",
"start": 1.18,
"end": 1.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.339,
"end": 1.44,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "whispery",
"start": 1.419,
"end": 1.979,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.959,
"end": 2.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "American",
"start": 2.159,
"end": 2.719,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 2.699,
"end": 2.779,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "accent,",
"start": 2.759,
"end": 3.389,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.119,
"end": 4.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "I'm",
"start": 4.159,
"end": 4.459,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.44,
"end": 4.52,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "the",
"start": 4.5,
"end": 4.599,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.579,
"end": 4.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "ideal",
"start": 4.679,
"end": 5.099,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 5.079,
"end": 5.219,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "choice",
"start": 5.199,
"end": 5.719,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 5.699,
"end": 6.099,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "for",
"start": 6.099,
"end": 6.199,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 6.179,
"end": 6.279,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "creating",
"start": 6.259,
"end": 6.799,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 6.779,
"end": 6.979,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "ASMR",
"start": 6.959,
"end": 7.739,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 7.719,
"end": 7.859,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "content,",
"start": 7.839,
"end": 8.45,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 9,
"end": 9.06,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "meditative",
"start": 9.04,
"end": 9.64,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 9.619,
"end": 9.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "guides,",
"start": 9.679,
"end": 10.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 10.359,
"end": 10.409,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "or",
"start": 11.319,
"end": 11.439,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 11.42,
"end": 11.52,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "adding",
"start": 11.5,
"end": 11.879,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 11.859,
"end": 12,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "an",
"start": 11.979,
"end": 12.079,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 12.059,
"end": 12.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "intimate",
"start": 12.179,
"end": 12.579,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 12.559,
"end": 12.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "feel",
"start": 12.679,
"end": 13.159,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.139,
"end": 13.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "to",
"start": 13.159,
"end": 13.26,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.239,
"end": 13.3,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "your",
"start": 13.299,
"end": 13.399,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.379,
"end": 13.479,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "narrative",
"start": 13.479,
"end": 13.889,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.919,
"end": 13.939,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "projects.",
"start": 13.919,
"end": 14.779,
"type": "word",
"speaker_id": "speaker_0"
}
]
}

De output wordt ingedeeld in drie categorietypen:

  • word - Een woord in de taal van de audio
  • spacing - De ruimte tussen woorden; niet van toepassing op talen zonder spaties, zoals Japans, Mandarijn, Thais, Laotiaans, Birmaans en Kantonees
  • audio_event - Niet-spraakgeluiden zoals gelach of applaus

Gelijktijdigheid en prioriteit

Gelijktijdigheid is het aantal requests dat tegelijk kan worden verwerkt.

Voor Speech to Text worden bestanden langer dan 8 minuten intern parallel getranscribeerd om de verwerking te versnellen. De audio wordt opgesplitst in vier segmenten die gelijktijdig worden getranscribeerd.

Je kunt de gelijktijdigheidslimiet met de volgende berekening bepalen:

Concurrency=min⁡(4,round_up(audio_duration_secs480))Concurrency = \min(4, \text{round\_up}(\frac{\text{audio\_duration\_secs}}{480}))

Zo wordt een audiobestand van 15 minuten getranscribeerd met een gelijktijdigheid van 2, terwijl een audiobestand van 120 minuten wordt getranscribeerd met een gelijktijdigheid van 4.

De bovenstaande berekening is alleen van toepassing op Scribe v2 en Scribe v2 Medical. Zie voor Scribe v2 Realtime de grafiek met gelijktijdigheidslimieten.

Geavanceerde functies

Keyterm prompting en transcriptbewerking brengen extra kosten met zich mee. Bekijk de API-prijspagina voor gedetailleerde prijsinformatie.

Keyterm prompting

Keyterm prompting is beschikbaar met Scribe v2, Scribe v2 Medical (batch) en Scribe v2 Realtime.

Markeer woorden of zinnen om het model te sturen bij het transcriberen ervan. Dit is handig voor het transcriberen van specifieke woorden of zinnen die niet vaak in de audio voorkomen, zoals productnamen, namen of andere specifieke termen. Keyterms zijn krachtiger dan bevooroordeelde keywords of aangepaste woordenlijsten die andere modellen bieden, omdat het model op de context vertrouwt om te bepalen of die term al dan niet moet worden getranscribeerd. Batch ondersteunt maximaal 1000 keyterms (elk 50 tekens) en realtime ondersteunt maximaal 50 keyterms (elk 20 tekens).

Lees de documentatie over keyterm prompting voor meer informatie over het gebruik ervan.

No verbatim-modus

De no verbatim-modus is beschikbaar met Scribe v2, Scribe v2 Medical (batch) en Scribe v2 Realtime.

Wanneer no_verbatim is ingeschakeld, verwijdert het model stopwoorden, valse starts en haperingen uit het transcript. Dit zorgt voor een nettere output die geschikt is voor ondertiteling, samenvattingen of andere toepassingen waarbij leesbaarheid belangrijker is dan elk gesproken woord vastleggen.

Entiteitsdetectie

Entiteitsdetectie is beschikbaar met alle batchmodellen en Scribe v2 Realtime.

Batchmodellen en Scribe v2 Realtime kunnen verschillende categorieën entiteiten in het transcript detecteren en hun exacte tijdstempels geven. Dit is handig om creditcardnummers, namen, medische aandoeningen of BSN’s te markeren.

Bekijk de documentatie over entiteitsdetectie voor een volledige lijst van ondersteunde entiteiten.

Transcriptbewerking

Transcriptbewerking is een experimentele functie die beschikbaar is met alle batchmodellen en Scribe v2 Realtime.

Geef een instructie in natuurlijke taal mee met de parameter transcript_edit; deze wordt toegepast op het voltooide transcript. De bewerkte tekst wordt teruggestuurd in edited_transcript naast het oorspronkelijke transcript, zodat tijdstempels en sprekerlabels intact blijven. Dit is handig om de schrijfwijze van datums, tijden of eenheden te normaliseren, een andere stijl toe te passen of het transcript in één request te herschrijven.

Lees voor meer informatie de documentatie over transcriptbewerking en de handleiding voor realtime transcriptbewerking.

Ondersteunde talen

Scribe v2 ondersteunt meer dan 90 talen, waaronder:

Afrikaans (afr), Amhaars (amh), Arabisch (ara), Armeens (hye), Assamees (asm), Asturisch (ast), Azerbeidzjaans (aze), Belarussisch (bel), Bengaals (ben), Bosnisch (bos), Bulgaars (bul), Birmaans (mya), Kantonees (yue), Catalaans (cat), Cebuano (ceb), Chichewa (nya), Kroatisch (hrv), Tsjechisch (ces), Deens (dan), Nederlands (nld), Engels (eng), Estisch (est), Filipijns (fil), Fins (fin), Frans (fra), Fula (ful), Galicisch (glg), Ganda (lug), Georgisch (kat), Duits (deu), Grieks (ell), Gujarati (guj), Hausa (hau), Hebreeuws (heb), Hindi (hin), Hongaars (hun), IJslands (isl), Igbo (ibo), Indonesisch (ind), Iers (gle), Italiaans (ita), Japans (jpn), Javaans (jav), Kabuverdianu (kea), Kannada (kan), Kazachs (kaz), Khmer (khm), Koreaans (kor), Koerdisch (kur), Kirgizisch (kir), Laotiaans (lao), Lets (lav), Lingala (lin), Litouws (lit), Luo (luo), Luxemburgs (ltz), Macedonisch (mkd), Maleis (msa), Malayalam (mal), Maltees (mlt), Mandarijn-Chinees (zho), Māori (mri), Marathi (mar), Mongools (mon), Nepalees (nep), Noord-Sotho (nso), Noors (nor), Occitaans (oci), Odia (ori), Pasjtoe (pus), Perzisch (fas), Pools (pol), Portugees (por), Punjabi (pan), Roemeens (ron), Russisch (rus), Servisch (srp), Shona (sna), Sindhi (snd), Singalees (sin), Slowaaks (slk), Sloveens (slv), Somalisch (som), Spaans (spa), Swahili (swa), Zweeds (swe), Tamil (tam), Tadzjieks (tgk), Telugu (tel), Thais (tha), Turks (tur), Oekraïens (ukr), Umbundu (umb), Urdu (urd), Oezbeeks (uzb), Vietnamees (vie), Welsh (cym), Wolof (wol), Xhosa (xho) en Zoeloe (zul).

Overzicht van taalondersteuning

Word Error Rate (WER) is een belangrijke meetwaarde voor het beoordelen van de nauwkeurigheid van transcriptiesystemen. Deze meet hoeveel fouten een transcript bevat ten opzichte van een referentietranscript. Hieronder vind je een overzicht van de WER voor elke taal die Scribe v2 ondersteunt.

Wit-Russisch (bel), Bosnisch (bos), Bulgaars (bul), Catalaans (cat), Kroatisch (hrv), Tsjechisch (ces), Deens (dan), Nederlands (nld), Engels (eng), Estisch (est), Fins (fin), Frans (fra), Galicisch (glg), Duits (deu), Grieks (ell), Hongaars (hun), IJslands (isl), Indonesisch (ind), Italiaans (ita), Japans (jpn), Kannada (kan), Lets (lav), Macedonisch (mkd), Maleis (msa), Malayalam (mal), Noors (nor), Pools (pol), Portugees (por), Roemeens (ron), Russisch (rus), Slowaaks (slk), Spaans (spa), Zweeds (swe), Turks (tur), Oekraïens (ukr) en Vietnamees (vie).

Armeens (hye), Azerbeidzjaans (aze), Bengaals (ben), Kantonees (yue), Filipijns (fil), Georgisch (kat), Gujarati (guj), Hindi (hin), Kazachs (kaz), Litouws (lit), Maltees (mlt), Mandarijn (cmn), Marathi (mar), Nepalees (nep), Odia (ori), Perzisch (fas), Servisch (srp), Sloveens (slv), Swahili (swa), Tamil (tam) en Telugu (tel)

Afrikaans (afr), Arabisch (ara), Assamees (asm), Asturisch (ast), Birmaans (mya), Hausa (hau), Hebreeuws (heb), Javaans (jav), Koreaans (kor), Kirgizisch (kir), Luxemburgs (ltz), Māori (mri), Occitaans (oci), Punjabi (pan), Tadzjieks (tgk), Thais (tha), Oezbeeks (uzb) en Welsh (cym).

Amhaars (amh), Ganda (lug), Igbo (ibo), Iers (gle), Khmer (khm), Koerdisch (kur), Laotiaans (lao), Mongools (mon), Noord-Sotho (nso), Pasjtoe (pus), Shona (sna), Sindhi (snd), Singalees (sin), Somalisch (som), Urdu (urd), Wolof (wol), Xhosa (xho), Yoruba (yor) en Zoeloe (zul).

Veelgestelde vragen

Ja, de API ondersteunt het uploaden van zowel audio- als videobestanden voor transcriptie.

Bestanden tot 3 GB worden ondersteund. De maximale duur hangt af van de transcriptiemodus:

  • Standaardmodus (use_multi_channel=false): Maximaal 10 uur
  • Multichannelmodus (use_multi_channel=true): De gecombineerde duur van alle kanalen moet minder dan 10 uur zijn

De API ondersteunt de volgende audio- en videoformaten:

  • audio/aac
  • audio/x-aac
  • audio/x-aiff
  • audio/ogg
  • audio/mpeg
  • audio/mp3
  • audio/mpeg3
  • audio/x-mpeg-3
  • audio/opus
  • audio/wav
  • audio/x-wav
  • audio/webm
  • audio/flac
  • audio/x-flac
  • audio/mp4
  • audio/aiff
  • audio/x-m4a

Ondersteunde videoformaten zijn onder andere:

  • video/mp4
  • video/x-msvideo
  • video/x-matroska
  • video/quicktime
  • video/x-ms-wmv
  • video/x-flv
  • video/webm
  • video/mpeg
  • video/3gpp

ElevenLabs breidt het aantal talen dat door onze modellen wordt ondersteund voortdurend uit. Kom regelmatig terug voor updates.

Ja, asynchrone transcriptieresultaten kunnen worden verzonden naar webhooks die zijn geconfigureerd in de webhookinstellingen in de UI. Lees meer in het webhooks-cookbook.

Ja, met de multichannel-STT-functie kun je audio transcriberen waarbij elk kanaal onafhankelijk wordt verwerkt en op basis van het kanaalnummer een spreker-ID krijgt toegewezen. Deze functie ondersteunt maximaal 5 kanalen. Lees meer in het cookbook voor multichannel-transcriptie.

ElevenLabs rekent voor speech to text op basis van de duur van de audio die voor transcriptie wordt verzonden. Facturering wordt per uur audio berekend, met tarieven die per niveau en model verschillen. Bekijk de API-prijspagina voor gedetailleerde prijsinformatie.

Stilte telt mee voor de gefactureerde duur. Zowel batch- als realtime transcriptie wordt gemeten voor elke seconde audio die je verstuurt, inclusief pauzes en stille passages. Er geldt geen korting voor stilte.

Belangrijke feiten

  • Ondersteunde invoer: Audio- en videobestanden worden beide geaccepteerd
  • Maximale bestandsgrootte: 3 GB
  • Maximale duur: 10 uur (standaardmodus), 1 uur (multichannelmodus)
  • Multichannelmodus: Maximaal 5 kanalen; elk wordt onafhankelijk verwerkt met een spreker-ID die is toegewezen op basis van het kanaalnummer
  • Webhooks: Asynchrone transcriptieresultaten kunnen aan een webhook worden geleverd — configureer dit in de workspace-instellingen
  • Ondersteunde audioformaten: AAC, AIFF, OGG, MP3, OPUS, WAV, FLAC, M4A, WebM
  • Ondersteunde videoformaten: MP4, AVI, MKV, MOV, WMV, FLV, WebM, MPEG, 3GPP