Wie wir bei der «Neuen Zürcher Zeitung» einen hochwertigen Text-To-Speech-Service eingeführt haben

Niklaus Gerber
NZZ Open
Published in
6 min readOct 19, 2018

Vergangene Woche haben wir bei der «Neuen Zürcher Zeitung» erfolgreich einen Text-To-Speech (TTS)-Audio-Service als Beta-Version auf unserer Website und in unserer App lanciert. Es ist ein Service für unsere mobilen und audiophilen Nutzer, der den Nachrichtenkonsum für unterwegs einfach und bequem gestaltet.

Wie wir den Bedarf an einem Text-To-Speech-Service definiert haben

Minimierter Text-zu-Speech-Player

Mit Sprachtechnologien wie Amazon Alexa und Google Home, die in unserem Alltag immer wichtiger werden, beschäftigen sich in den letzten Jahren auch vermehrt Medienunternehmen mit der Auslieferung von Nachrichten mit Audio.

Auch von unseren Nutzern wurde der Wunsch nach mehr Audioinhalten vermehrt geäussert: Klassische Podcast-Formate reichten ihnen oft nicht mehr aus — sie wollen die Wahl haben, ob sie nun einen Artikel lesen oder hören möchten.

Wir fingen an, uns über die Anzahl der Artikel Gedanken zu machen, die in Audio umgewandelt werden sollten. Sollten wir professionelle Sprecher haben, die eine bestimmte Anzahl von Artikeln pro Tag sprechen, wie es zum Beispiel der “Economist” macht? Oder ist es ein grösseres Bedürfnis unserer Nutzer, alle Artikel als Audio hören zu können?

In Nutzerinterviews stellten wir fest, dass unsere Benutzer selber wählen wollten, welchen Artikel sie hören wollten. So haben wir uns entschieden, dass wir alle Artikel, die als Audio veröffentlicht wurden, anbieten wollen. Bei der grossen Textmenge — die NZZ veröffentlicht täglich bis zu 200 digitale Artikel — war die Aufnahme mit professionellen Sprechern keine Option. Die Phase der Suche nach dem besten Text-To-Speech-Service begann.

Wie wir den Business Case definiert haben

Die NZZ verfolgt seit mehreren Jahren die Strategie, über digitale Abonnements langfristig profitabel zu bleiben. Auf dieses Ziel hin wurde das digitale Produkt nach seinem Relaunch im November 2017 entworfen, in dem ein Nutzer den Conversion-Funnel in einer zweistufigen Mechanik durchläuft. Die erste Stufe des Funnel erfolgt über die Registration, nach derer ein Kunde das Gesamt Feature-Set erhält, namentlich personalisierte Inhalte, Merklisten etc. In der zweiten Stufe folgt der Kauf eines Abonnements, worüber alle Inhalte der digitalen NZZ verfügbar sind. Indem sich unsere neue Audio-Funktionalität in die erste Stufe des Conversion-Funnels einordnet, müssen sich die Benutzer registrieren, um den neuen Service nutzen zu können. Der Umstand, dass der neue Audiodienst hinter der Registrierungspflicht steht, hat es uns ermöglicht, Audio nicht nur nahtlos in unser Geschäftsmodell zu integrieren, sondern auch zu einem weiteren Auslöser für die Conversion zu machen.

Wie wir das Design entwickelt haben

Da moderne Audioplayer wie jene von Spotify, Apple Music, Acast oder Sonos bereits stark in unserem Alltag als Apps und Services vertreten sind, haben wir uns entschieden, dass wir das Design eines Audioplayers nicht neu erfinden müssen und dass es für unsere Nutzer meist verwirrend sein würde, dies zu tun. Deshalb haben wir bei vielen unserer Designentscheidungen uns auf die Designs bereits bestehender Player gestützt. Bei neuen Funktionalitäten, wie zum Beispiel der Einstellung von Auto-Play, haben wir iterativ entworfen, gemeinsam mit unseren Nutzern entwickelt und verschiedene Versionen getestet, bis wir zu dem Design kamen, das wir heute haben. Wir werden dies auch in den nächsten Monaten weiterhin tun, da der Use Case noch neu in der Branche ist.

Wie wir den Service mit seiner einzigartigen Struktur aufgebaut haben

Als es um die eigentliche Konvertierung von Text in Sprache ging, explorierten wir verschiedene TTS-Dienste, darunter IBMs Watson, Amazon Polly, und Google Wavenet. Fürs erste haben wir uns für Amazon Polly entschieden.

Im Wissen, dass sich jeder TTS-Dienst auf dem Markt in den kommenden Monaten schnell entwickeln würde, mussten wir eine Architektur aufbauen, die flexibel genug ist, um schnell auf Veränderungen zu reagieren (z.B. den Austausch der TTS-Engine). Unser Bedürfnis nach Flexibilität hat uns dazu veranlasst, uns für unsere einzigartige Struktur zu entscheiden: Der Artikeltext läuft durch unsere selbstgebaute Middleware — wir nennen sie Orator — wo Abkürzungen ausformuliert werden und alternative Aussprachen definiert werden. So wird beispielsweise aus “z. B.” “zum Beispiel”, aus “boa.” “Boas Ruh” (ein NZZ-Redaktor) und aus “Cervelat” “Servellah” — weil die TTS-Engine das Wort sonst falsch aussprechen würde. Der Text wird danach in SSML umgewandelt und anschließend durch die TTS-Engine gesendet, wo ein MP3 generiert wird. Dieses können wir dann speichern und es bei Bedarf auf der Website oder der App ausspielen.

Text-To-Speech-Architektur

SSML, Speech Synthesis Markup Language, bietet uns eine standardisierte Methode zur Steuerung verschiedener Aspekte der Sprachsynthese. Mit SSML kann man beispielsweise Prosodie-Attribute wie Geschwindigkeit, Tonhöhe und Lautstärke ändern, beliebig lange Pausen einfügen, die Sprechstimme beim Lesen ändern und viele andere Aspekte steuern, wie der Text von der synthetischen Stimme gelesen wird. Das Tolle an SSML ist, dass die gleiche Eingabe an jede TTS-Engine weitergegeben werden kann: Ob Amazon Polly oder Google Wavenet, sie alle folgen den gleichen Befehlen — mit einigen kleinen Ausnahmen. Und da die Ausgabe unseres Middleware-Lexikas in das SSML einfliesst, kann jede Komponente unserer Struktur ersetzt werden.

Wenige Wochen vor dem Beta-Release unserer Audio-Funktionalität hat Google Wavenet seinen TTS-Dienst für die deutsche Sprache veröffentlicht. Der von Google DeepMind entwickelte Service arbeitet mit neuronalen Netzwerken und Machine Learning und bietet zurzeit die beste Sprachqualität auf dem Markt.

Dank der flexibel gewählten Architektur konnten wir unseren Service kurzfristig von Amazon Polly auf Google Wavenet umhängen. Das Ergebnis ist ein Service, der sich um Quantensprünge verbessert hat. Da Google Wavenet von selbst dazulernt, erwarten wir zudem, dass sich die Verbesserung kontinuierlich steigert — bis wir in einigen Monaten kaum den Unterschied zu einer natürlichen Stimme festellen können werden.

Der Service kann auf allen möglichen Geräten wie Smart Speakers oder in Autos genutzt zu werden

Wie man den Dienst während der Beta-Phase aktiviert

Weil wir den Service weiter verbessern möchten, bevor wir ihn ganz öffentlich machen, ist er im Moment erst als Beta-Funktion, die zuerst aktiviert werden muss, auf der Website. Um die neue Funktion zu aktiveren, müssen Sie registriert sein. Öffnen Sie dafür das Einstellungsmenü in der Burger-Navigation auf dem Handy (sowohl iOS als auch Android), navigieren Sie zu “Einstellungen” und danach “Einstellungen für Beta-Funktionen” und aktivieren Sie es durch Einschalten der Funktion “Artikel hören”. Im Web navigieren Sie zum Menü und fügen Sie die Funktionalität in den Einstellungen unter “Beta-Funktionen” hinzu.

Die Umsetzung von der Idee bis zum Beta-Prototypen war dank der hervorragenden Leistung des Produktentwicklungsteams (ich — Niklaus Gerber, Luisa Bider) und der Technologie (Vovka Fertak und Notarmon Buchli) möglich — herzlichen Dank für euren Einsatz.

PS: I usually send out these articles via my personal email list right here. You can sign up anytime, I won’t spam, promise.

Thanks for hitting the 👏🏻 if you enjoyed this article. This will tell me to write more of it!

_
Niklaus assists companies with digital innovation. He solves problems, designs products, refines strategies and makes things simpler, smarter and more helpful. Working as head of digital product development at Neue Zürcher Zeitung.

--

--

Niklaus Gerber
NZZ Open

I assist companies with digital innovation. I guide teams, shape products, refine strategies and make things simpler, smarter and more helpful.