ANLEITUNG

React Native Text-to-Speech: von Systemstimmen zum eigenen Sprachserver

Eine React-Native-App kann auf drei Arten sprechen: mit den Stimmen des Handys, mit vorab vertonten Audiodateien oder mit einem Server, der neuen Text auf Abruf vertont. Die Handystimmen sind kostenlos und offline, klingen aber auf jedem Gerät anders; die anderen beiden geben Ihrer App eine wiedererkennbare Stimme.

SuperClonica bietet natürliche Stimmen in 31 Sprachen, gratis online zum Testen, eine kostenlose Engine, um die Sätze der App am Rechner zu vertonen, und einen Docker-Server für wechselnden Text. Dieser Leitfaden zeigt jeden Ansatz in React Native und Expo.

Drei Wege, eine App sprechen zu lassen

SuperClonica spricht 31 Sprachen; Chinesisch wird noch nicht unterstützt, eine chinesische Oberfläche braucht also eine andere Stimme.

  • expo-speech oder react-native-tts: die auf dem Handy installierten Stimmen, kostenlos und offline, auf jedem Gerät anders, und sie können kein Audio speichern.
  • Vorvertonte Assets: jeder feste Satz einmal mit SuperClonica vertont und mit der App ausgeliefert.
  • Ein Sprachserver: Die App schickt Text an Ihren SuperClonica-Server und spielt die Antwort ab.
  • Die meisten Apps mischen: Assets für feste Sätze, ein Server für Nutzertext, die Systemstimme als Rückfall.

Eine Stimme gratis online wählen

Geben Sie auf der Seite einer beliebigen Stimme einen Satz Ihrer App ein, 30 bis 100 Zeichen, wählen Sie die Sprache und klicken Sie auf die Schaltfläche zum Vertonen. In wenigen Sekunden hören Sie, ob die Stimme passt, ohne Konto, auch am Handy.

Vorvertonte Sätze mit expo-audio

Benennen Sie die Dateien nach dem Schlüssel, den Sie für Übersetzungen schon nutzen, dann hat jede Sprache in ihrem Ordner dieselben Dateinamen.

  • Installieren Sie die kostenlose Engine am Rechner: python -m pip install superclonica-cpu.
  • Vertonen Sie jeden Satz: superclonica --text "Willkommen zurück!" --voice F1 --lang de --output assets/voice/welcome.mp3.
  • Spielen Sie ihn mit expo-audio ab: const player = useAudioPlayer(require('./assets/voice/welcome.mp3')); player.play();
  • Assets funktionieren offline und ohne Verzögerung; als MP3 belegt ein Satz einige Dutzend Kilobyte.

Ein Sprachserver für Nutzertext

Für wechselnden Text wie Chatnachrichten, Nutzernotizen oder einen Tutor, der antwortet, betreiben Sie den Server auf einer Maschine, die Sie kontrollieren: docker run -d -p 8000:8000 -v superclonica-models:/models superclonica/superclonica:cpu. Stellen Sie ihn hinter HTTPS und setzen Sie SUPERCLONICA_API_KEY, damit nur Ihre App ihn aufrufen kann. Die App schickt JSON mit text, voice und lang an /synthesize und bekommt eine WAV-Datei zurück; speichern Sie sie mit Ihrer Dateisystem-Bibliothek und geben Sie die Datei an den Player. Cachen Sie Antworten für wiederkehrende Texte: Gleicher Text, gleiche Stimme und gleicher Seed ergeben immer dieselbe Datei.

Wann die Systemstimme reicht

Die Systemstimme reicht, wenn sie nur verstanden werden muss: eine Benachrichtigung vorlesen, eine Barrierefreiheitshilfe oder ein Prototyp, der ohne Netz laufen muss. Wählen Sie eine eigene Stimme, wenn sie Teil des Produkts ist, etwa ein Tutor, eine Spielfigur oder eine geführte Meditation. Für eine veröffentlichte App nutzen Sie die zehn Standardstimmen, M1 bis M5 und F1 bis F5, kostenlos unter der OpenRAIL-M-Lizenz, oder Ihre eigene, im SuperClonica-Studio trainierte Stimme; von Fans gemachte Figurenstimmen sind nicht für Store-Apps.