Da ist nämlich noch zu viel Handarbeit nötig. Allein schon die Analyse des Textes, um genau zu erkennen, was sind Dialoge, welche Figur spricht gerade. Ohne Unterstützungl einer anderen K.I., die in der Lage ist Texte im Kontext zu verstehen, ist es fast unmöglich einen komplexen Text nur mit einer einfachen Programmierung zu analysieren. Was sehr gut und einfach funktioniert, die Unterscheidung zwischen Dialogtext und Erzählertext. Da bieten sich logische Abfragen und Ansätze an um das zu erkennen.
Das setzt aber voraus, dass der Text eine gewisse gleichbleibende Form hat, z.B. einleitende und ausleitende Anführungszeichen. Schwieriger wird es bei, "Wer spricht`?". Es steht gerne mal am Anfang vor dem Dialogsatz oder auch mal dazischen oder am Ende. Aber leider lässt sich oft auch erst im Verlauf des Textes vorher oder danach im Kontext beim Lesen erkennen, wer spricht. Wenn es z.B. heißt, "Wach auf!", sagte er und vorher erfährt man aus dem Kontext heraus wer "er" überhaupt ist und zu wem es gesagt wird, weil da der Name genannt wurde. Oder perfide wie in meinem Pharao Text, ein und die selbe Figur verwenden verschiedene Namen oder Pronomen - hier zu verstehen, dass ist die gleiche Figur, das muss von der gleichen Stimme gesprochen werden, da verlassen mich meine einfachen Programmierfähigkeiten auf der simpler Wenn-Dann-Sonst Logik.
Daher war ein erster Zwischenschritt manuell nötig, "Hier du schlaue K.I. nimm Buchtext und sag mir welche Rollen sprechen in dem Buch." Die K.I. ist mittlerweile so schlau, dass sie auch Synomyme also andere Namen der Figur aus dem Kontext erkennt und spuckt brav die Texte für Erzähler und jede Figur als Basis für die Audio-Umwandlung aus. Okay, dann den Text nur rein und Audio raus, dachte ich mir so, in meinem jugendlichen Eifer und Leichtsinn. Nein, ganz im Gegenteil - da kommt eben nur, wie man hört, Grütze raus.
Und warum ist das so?
Das versuche ich gerade heraus zu finden. Mal spricht er den Text langsam, dann wieder schneller, dann klingt es wie ein Roboter, urplötzlich fraktalisiert der Ton, im Audio generiert er eine Feedbackrauschschleife, es ist nur Stille generiert, Sätze brechen ab, Wörter sind vernuschelt, klingen unnatürlich betont, alles in allem ist diese Arbeit hier jetzt schon im Ergebnis so mies, dass es sich gar nicht lohnt weiter zu machen. Es wird meinem Qualitätsanspruch nicht gerecht werden. Doch der Ehrgeiz ist, diese komischen Macken bei der Audioerzeugung in den Griff zu kriegen, den Text so vorzubereiten, dass er eben nicht leiert oder das TTS-System anfängt zu hallozinieren und man ein halbwegs hörbares Ergebnis erhält, das einem nicht die Ohren bluten lässt.
Warum dann trotzdem dieser ganze Versuch und Aufwand?
Es gibt da draußen so viele Texte und Bücher, da geht kein Sprecher dran, teils mangels Interesse oder der Inhalt ist so stumpfsinnig und fachchinesich geprägt, dass selber lesen schon keinen Spaß macht. Für sowas mal eben "schnell" in besserer Qualität vorlesen zu lassen, als dem Browser zu sagen lies mal vor, versuche ich das gerade. Cutter sind rar und haben oft auch Anderes zu tun als sich um diese kleinen arbeitsaufwändigigen Geschichten kümmern zu wollen. Warum also nicht ein Versuch starten diese Werke automatisch vorlesen zu lassen und Dialoge mit entsprechenden Stimmen automatisiert generieren zu lassen.?
Bei dem niedrigen Anspruch, den ich hier für meinen Test im Cut und auch allgemein ansetze, nehme ich durch die Automatisierung natürlich dem Cuttemr und auch Sprechern Brot und Lohn weg. Sorry Leute. Aber ganz ehrlich, ich schone den Cutter und seine Ohren und Sprechern ihre Nerven, sich durch komisch zu artikulierende Sätze am Mikrofon zu spielen. Denn das was da als Audio nach der Generierung vom System Retour kommt ist übelst schlecht.
Andere teure kostenpflichte TTS.-Systeme sind ggf. schon weiter und in der Lage Metatext (SSML), also sowas wie Regieanweisungen zum Text, zu verstehen. Da können dann Sprechpausen, Emotionen, Artikulation für den zu lesenden Satz oder einzelner Wörter mitgegeben werden. Das müsste man dann auch aus dem Text her extrahieren, um es automatisieren zu können. Mein Hirn ist da leider zu doof um einem Computer zu sagen, guck mal Text, der wird gesprochen finde bitte heraus wie er Artikuliert werden muss (laut, leise, gebrühlt, geflüstert, liebevoll, ironisch,etc., schnell, langsam, buchstabiert ) und schreibe eine Regieanweisung. Eine K.I. wie Google Gemini kann das aber. Der sagt Dir anhand des kontext, das soll gebrüllt oder geschriehen werden.
Das kostenlose TTS System macht es auch schon ein bisschen, wenn nur eine Stimme verwendet wird, erkennt es aus dem Kontext heraus, dieser Text wird gerade gesprochen, und die Stimme wird für das Auidio so verzerrt und geschoben, dass sie im Klang sich vom Lesetext abhebt und durch Lautstäkrenveränderung der Eindruck entsteht, das es lebendiger gesprochen ist. Leider geht die Kontext-Information flöten, wenn man den Text zuvor in Häppchen und auf Rollen aufteilt, um jede Figur automatisch generieren zu lassen. Aber auch das lässt sich vielleicht lösen. Aber stepp bei stepp.
Ich kämpfe noch mit den banalen Unzulänglichkeiten und den Stolpersteinen, teils auch mit Systemaufbau Nachinstallation irgendwelcher benötigter Bibleothken oder Updates. Auch die Informationen des Textes die dafür sorgen, dass die Audioerstellung aus dem Tritt kommt. Sonderzeichen wie u.a. Punkt, Komma, Strichpunkt, Anführungszeichen - das System ist für engliche Sprache geprägt und kommt da mit mancher Zeichensetzung im Text einfach aus dem Tritt. Hier muss ich noch Hirnschmalz einsetzen wie man die Texte vorher bereinigt und die Häppchen speziell aufbereitet zur Umwandlung gibt. Wenn man jedoch keine ganzen Sätze liefert, kann die Betonung nicht automatisch errechnet werden und es klingt als würde ein Roboter monoton irgendwelche Wörter sprechen, aber keinen Satz vorlesen. Machen wir uns nix vor ein schwieiriges Unterfangen.
Warum das Ganze überhaupt weiter verfolgen, wenn das schlechte Audio-Ergebnis schon klar ist?
Ich bin gezwungen mich beruflich auch mit K.I. und ganz viel anderem Kram zu beschäftigen und sehe das Ganze als Lernen an.
Ich hab keine Ahnung von Python, das braucht es aber, um überhaupt irgendwas zu automatisieren und so einem TTS-System was zum Arbeiten zu übergeben um ein Audio zu erhalten. Klar ging online schon schneller Text rein Audio raus geht da ruckzuck und je nach Anbieter sogar mit einer schön klingenden Stimme in guter Quailtät. Der Lerneffekt ist jedenfalls riesengroß, auf was man da alles kommt und achten muss, damit das überhaupt funktioniert und welche Hürden und Stolpersteine ich bisher schon im Weg hatte, wäre eine Geschichte für sich. So ein bisschen lass ich Euch hier an dieser Geschichte teilhaben. Im Detail sitze ich vor meiner Maschine brülle die K.I. an und überlege mir wie ich was lösen und Fehler behebe.