Text to Speech streamen
Dieser Leitfaden behandelt drei Ansätze: Sprache als Datei generieren, die Audioantwort direkt streamen und generiertes Audio optional in einen AWS-S3-Bucket hochladen, um es über eine signierte URL zu teilen.
Dieser Leitfaden setzt voraus, dass Sie Ihren API-Schlüssel und Ihr SDK eingerichtet haben. Schließen Sie zuerst die Schnellstartanleitung ab, falls Sie dies noch nicht getan haben. Der optionale Abschnitt zum S3-Upload erfordert außerdem ein AWS-Konto mit Zugriff auf S3.
Möchten Sie wissen, warum Streaming so funktioniert? Audio-Streaming verstehen erläutert Protokoll, Pufferung und Latenz-Kompromisse im Detail.
Text in Sprache umwandeln (Datei)
Um Text in Sprache umzuwandeln und als Datei zu speichern, verwenden wir die Methode convert des ElevenLabs SDK und speichern sie anschließend lokal als .mp3-Datei.
Anschließend können Sie diese Funktion wie folgt ausführen:
Text in Sprache umwandeln (Streaming)
Wenn Sie das Audio lieber direkt streamen möchten, ohne es in einer Datei zu speichern, können Sie unsere Streaming-Funktion verwenden.
Anschließend können Sie diese Funktion wie folgt ausführen:
Bonus – Upload in AWS S3 und sicherer Freigabelink
Sobald Ihre Audiodaten als Datei oder Stream erstellt wurden, möchten Sie sie möglicherweise mit Ihren Nutzern teilen. Dazu können Sie sie in einen AWS-S3-Bucket hochladen und einen sicheren Freigabelink generieren.
AWS-Anmeldedaten erstellen
Um die Daten in S3 hochzuladen, müssen Sie Ihre AWS-Zugriffsschlüssel-ID, den geheimen Zugriffsschlüssel und den Namen der AWS-Region in Ihre .env-Datei eintragen. So finden Sie die Anmeldedaten:
- Melden Sie sich bei Ihrer AWS Management Console an: Rufen Sie die AWS-Startseite auf und melden Sie sich mit Ihrem Konto an.

- Öffnen Sie das IAM-Dashboard (Identity and Access Management): Sie finden IAM im Servicemenü unter „Security, Identity, & Compliance“. Das IAM-Dashboard verwaltet den Zugriff auf Ihre AWS-Services sicher.

- Erstellen Sie einen neuen Nutzer (falls erforderlich): Wählen Sie im IAM-Dashboard „Users“ und dann „Add user“. Geben Sie einen Benutzernamen ein.

- Legen Sie die Berechtigungen fest: Hängen Sie Richtlinien entsprechend der gewünschten Zugriffsebene direkt an den Nutzer an. Für S3-Uploads können Sie die Richtlinie AmazonS3FullAccess verwenden. Es empfiehlt sich jedoch, nach dem Prinzip der geringsten Berechtigung nur die minimal erforderlichen Berechtigungen für eine Aufgabe zu vergeben. Sie sollten eine benutzerdefinierte Richtlinie erstellen, die nur die notwendigen Aktionen für Ihren S3-Bucket erlaubt.

- Prüfen und erstellen Sie den Nutzer: Prüfen Sie Ihre Einstellungen und erstellen Sie den Nutzer. Nach der Erstellung erhalten Sie eine Zugriffsschlüssel-ID und einen geheimen Zugriffsschlüssel. Laden Sie diese Anmeldedaten herunter und speichern Sie sie sicher; der geheime Zugriffsschlüssel kann danach nicht erneut abgerufen werden.

- Ermitteln Sie den Namen der AWS-Region, z. B. us-east-1

Falls Sie keinen AWS-S3-Bucket haben, müssen Sie einen neuen erstellen:
- Öffnen Sie das S3-Dashboard: Sie finden S3 im Servicemenü unter „Storage“.

- Erstellen Sie einen neuen Bucket: Klicken Sie im S3-Dashboard auf die Schaltfläche „Create bucket“.

- Geben Sie einen Bucket-Namen ein und klicken Sie auf die Schaltfläche „Create bucket“. Sie können die anderen Bucket-Optionen auf den Standardwerten lassen. Der neu hinzugefügte Bucket erscheint in der Liste.


AWS SDK installieren und Anmeldedaten hinzufügen
Installieren Sie boto3 für die Interaktion mit AWS-Services über pip und npm.
Fügen Sie dann die Umgebungsvariablen wie folgt zur .env-Datei hinzu:
In AWS S3 hochladen und signierte URL generieren
Fügen Sie die folgenden Funktionen hinzu, um den Audiostream in S3 hochzuladen und eine signierte URL zu generieren.
Anschließend können Sie die Upload-Funktion mit dem Audiostream aus dem Text aufrufen.
Generieren Sie nach dem Hochladen der Audiodatei in S3 eine signierte URL, um den Zugriff auf die Datei zu teilen. Diese URL ist zeitlich begrenzt und läuft nach einem bestimmten Zeitraum ab. So eignet sie sich für eine sichere temporäre Freigabe.
Sie können jetzt wie folgt eine URL aus einer Datei generieren:
Wenn Sie die Datei mehrfach verwenden möchten, sollten Sie den S3-Dateipfad in Ihrer Datenbank speichern und die signierte URL bei Bedarf neu generieren, statt die signierte URL direkt zu speichern, da sie abläuft.
Alles zusammenführen
Um alles zusammenzuführen, können Sie das folgende Skript verwenden:
Fazit
Sie wissen jetzt, wie Sie Text in Sprache umwandeln und eine signierte URL zum Teilen der Audiodatei generieren. Diese Funktion eröffnet zahlreiche Möglichkeiten, Inhalte dynamisch zu erstellen und zu teilen.
Hier sind einige Beispiele dafür, was Sie damit erstellen können.
-
Bildungs-Podcasts: Erstellen Sie personalisierte Bildungsinhalte, auf die Schüler bei Bedarf zugreifen können. Lehrkräfte können ihre Lektionen in Audio umwandeln, in S3 hochladen und die Links mit Schülern teilen – für ein ansprechenderes Lernerlebnis außerhalb des traditionellen Klassenzimmers.
-
Barrierefreiheitsfunktionen für Websites: Verbessern Sie die Barrierefreiheit von Websites, indem Sie Textinhalte im Audioformat anbieten. So werden Informationen auf Websites für Menschen mit Sehbeeinträchtigungen oder für Personen, die auditiv lernen, zugänglicher.
-
Automatisierte Kundenservice-Nachrichten: Erstellen Sie automatisierte und personalisierte Audionachrichten für den Kundenservice, etwa FAQs oder Bestellupdates. Dies kann ein ansprechenderes Kundenerlebnis als herkömmliche Text-E-Mails bieten.
-
Hörbücher und Erzählungen: Wandeln Sie ganze Bücher oder Kurzgeschichten in Audio um und bieten Sie Ihrem Publikum eine neue Möglichkeit, Literatur zu erleben. Autoren und Verlage können ihr Inhaltsangebot erweitern und Menschen erreichen, die lieber hören als lesen.
-
Sprachlerntools: Entwickeln Sie Sprachlernmittel, die Lernenden Audiolektionen und Übungen bieten. So lassen sich Aussprache und Hörverständnis gezielt üben.