Dubbing-Schnellstart

Erfahren Sie, wie Sie Audio- und Videodateien mit der Dubbing API sprachübergreifend synchronisieren.

Dieser Leitfaden zeigt Ihnen, wie Sie mit der Dubbing API eine Mediendatei in eine andere Sprache synchronisieren. In diesem Beispiel erstellen Sie ein Synchronisationsprojekt aus einer englischen Audiodatei und generieren eine spanische Synchronisation.

Ein Synchronisationsprojekt besteht aus zwei Teilen: einem Projekt, das eine Medienquelle und ihr Transkript enthält, und einem oder mehreren Sprachzielen, die jeweils einen synchronisierten Output in einer einzelnen Sprache erzeugen. Sie erstellen ein Projekt, warten auf die Transkription der Quelle, fügen eine Sprache hinzu und laden dann die fertige Synchronisation herunter.

Das Erstellen eines Projekts berechnet Ihnen im Voraus eine Sprache — die Mindestgebühr eines Synchronisationsprojekts. Damit ist Ihr erstes Sprachziel vorausbezahlt: Die erste hinzugefügte Sprache wird damit abgedeckt, jede weitere Sprache wird separat berechnet. Details finden Sie unter Wie viel kostet Dubbing?.

Sprachen werden als BCP-47-Tags angegeben, zum Beispiel es oder fr-CA. Alle akzeptierten Werte finden Sie unter unterstützte Sprachen und Dialekte.

Dubbing API verwenden

1

API-Schlüssel erstellen

Erstellen Sie hier im Dashboard einen API-Schlüssel, den Sie für den sicheren Zugriff auf die API verwenden.

Speichern Sie den Schlüssel als verwaltetes Secret und übergeben Sie ihn je nach Präferenz an die SDKs entweder als Umgebungsvariable über eine .env-Datei oder direkt in der Konfiguration Ihrer App.

.env
ELEVENLABS_API_KEY=<your_api_key_here>
2

SDK installieren

Wir verwenden außerdem die Bibliothek dotenv, um unseren API-Schlüssel aus einer Umgebungsvariable zu laden.

pip install elevenlabs
pip install python-dotenv

Das Python-Beispiel verwendet die Bibliothek requests, um die synchronisierte Audiodatei herunterzuladen. Installieren Sie sie mit pip install requests.

3

API-Anfrage erstellen

Erstellen Sie je nach bevorzugter Sprache eine neue Datei mit dem Namen example.py oder example.mts und fügen Sie folgenden Code hinzu:

# example.py
import os
import time
import requests
from dotenv import load_dotenv
from elevenlabs.client import ElevenLabs
load_dotenv()
elevenlabs = ElevenLabs(
api_key=os.getenv("ELEVENLABS_API_KEY"),
)
# 1. Create a project from a source URL
project = elevenlabs.dubbing.project.create(
source_url="https://storage.googleapis.com/eleven-public-cdn/audio/marketing/nicole.mp3",
source_language="en",
reference="Quickstart dub",
)
# 2. Wait for the source media to be transcribed
while True:
project = elevenlabs.dubbing.project.get(project.project_id)
if project.status == "ready":
break
if project.status == "failed":
raise RuntimeError("Project preparation failed")
print("Preparing project...")
time.sleep(5)
# 3. Add a Spanish language target
language = elevenlabs.dubbing.project.language.create(
project.project_id,
target_language="es",
)
# 4. Wait for the dub to finish generating
while True:
language = elevenlabs.dubbing.project.language.get(
project.project_id, language.language_id
)
if language.status == "completed":
break
if language.status == "failed":
raise RuntimeError("Dub generation failed")
print("Generating dub...")
time.sleep(5)
# 5. Download the dubbed audio from the signed URL
audio = requests.get(language.outputs.lossless_audio)
with open("dubbed.wav", "wb") as f:
f.write(audio.content)
print("Saved dubbed audio to dubbed.wav")

Die Download-URL in outputs.lossless_audio ist signiert und läuft etwa eine Stunde nach ihrer Ausstellung ab. Rufen Sie die Sprache erneut ab, um eine neue URL zu erhalten, wenn sie abgelaufen ist.

Führen Sie es dann aus:

python example.py

Die synchronisierte Audiodatei wird in Ihrem Arbeitsverzeichnis als dubbed.wav gespeichert.

Umgang mit Fehlern

Wenn das Hinzufügen einer Sprache nicht gelingt, fügen Sie dieselbe Sprache erneut zum bestehenden Projekt hinzu, statt ein neues Projekt zu erstellen. Das Projekt und seine transkribierte Quelle sind wiederverwendbar. Ein erneuter Versuch für die Sprache ist daher schneller und vermeidet, dass Sie die Mindestgebühr für eine Sprache ein zweites Mal zahlen.

Erstellen Sie nur ein neues Projekt, wenn das Projekt selbst bei der Vorbereitung den Status failed erreicht. Das bedeutet, dass seine Quelle nicht transkribiert werden konnte. Prüfen Sie die Quelldatei oder URL und erstellen Sie dann ein neues Projekt.

Enterprise-Arbeitsbereiche können das Quelltranskript prüfen und korrigieren, bevor eine Sprache hinzugefügt wird. Das führt zu genaueren Übersetzungen. Weitere Informationen finden Sie unter Synchronisation verfeinern und neu generieren.

Nächste Schritte