![]() |
| | LinkBack | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| fka Gottzilla Registriert seit: 02.02.2005 Ort: Würzburg
Beiträge: 754
| Einstieg in das Java Speech API Heutzutage wird moderne und barrierefreie Technik immer wichtiger. Ein Teil davon ist die Sprachausgabe in Programmen und das damit verbundene Vorlesen von Texten durch den Computer. Vor allem wenn dynamische Texte vorgelesen werden sollen, kommen Entwickler ins Straucheln, da diese nicht mehr einfach als Audio-Datei dem Programm mitgegeben werden können. JSAPI bietet hier für die Java-Plattform Abhilfe. Es handelt sich hierbei um eine Text-To-Speech-Engine, die eine Sprachausgabe von dynamischen Texten ermöglicht. Zuerst muss festgestellt werden, dass Sun die Implementierung der JSAPI nicht selbst liefert. Das heißt, dass du bei der Verwendung auf die Implementation eines dritten Herstellers zurückgreifen musst. Eine Auflistung solcher Implementierungen findest du in den JSAPI FAQ von Sun. Wir werden uns in diesem Tutorial hauptsächlich mit der FreeTTS-Implementierung auseinandersetzen. In diesem Tutorial beschätigen wir uns mit einem einfachen “Hello World”, gesprochen von FreeTTS. Konfiguration von FreeTTS Wie bei jeder anderen externen Programmteilen, müssen die benötigten JARs heruntergeladen und in den Classpath der Anwendung eingebunden werden. Du kannst FreeTTS direkt von sourceforge.net runterladen. Das Projektverzeichnis findest du hier. Lade hierbei die Binarys (Stand 09.03.2009: freetts-1.2.2-bin.zip) herunter. Sobald du das Archiv entpackt hast, findest du dort im Verzeichnis lib die Datei freetts.jar. Diese musst du für dieses Tutorial als einzige in den Classpath aufnehmen und einbinden. Sag “Hello World” Dein Programm zum Reden zu bewegen, ist nun denkbar einfach. Lediglich diese paar Zeilen Code sind notwendig: java Code:
Wenn du alles richtig gemacht hast, ertönt nun beim Ausführen des Programms der Text “Good morning Java World! It’s a great day to speak some words.” aus dem Lautsprecher. Sehen wir uns den Quellcode an. Zuerst benötigen wir einen VoiceManager, der für die Handhabung der unterschiedlichen Stimmen zuständig ist. Über den Methodenaufruf getVoice(String) erhalten wir ein Objekt des Typs Voice, welches die eigentliche Stimme repräsentiert. Du kannst mit folgendem Code alle verfügbaren Stimmen aufzeigen lassen: java Code:
Deutsche Sprachausgabe? Natürlich kannst du FreeTTS auch deutsche Sätze vorlesen lassen. Die sind aber nicht sonderlich gut verständlich und haben alle einen englischen Akzent. Dies liegt daran, dass FreeTTS erst einmal nur für die englische Sprachausgabe gedacht ist. Andere Speech-To-Text-Engines beherrschen aber durchaus auch andere Sprachen als Englisch. Es ist auch möglich FreeTTS eine andere Sprache beizubringen. Dies ist aber nicht gerade trivial, weshalb an dieser Stelle nicht darauf eingegangen werden soll. Dieses Tutorial wird uns mit freundlicher Genehmigung von java-blog-buch.de zur Verfügung gestellt. Solltest du Fragen zu diesem Tutorial haben, so schreibe bitte einen Beitrag im Java-Forum mit einem Verweis auf dieses Tutorial. Geändert von Jann Hendrik (01.07.2009 um 17:24 Uhr) |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [Java] Suche Java und Eclipse-Entwickler | mepeisen | Gesuche | 0 | 14.02.2008 17:36 |
| [JAVA] Wie man aus Java mit einem PHP-Script kommuniziert | sparrow | Tutorials | 0 | 25.03.2006 22:24 |
| [BUCH] Java ist auch eine Insel | kampet | Literatur | 5 | 22.02.2005 14:40 |
| Java Mail Api | Flytronik | Allgemeine Java-Programmierung | 4 | 19.09.2004 18:36 |
| Zwist um Java als Open Source | kampet | Nachrichten | 0 | 05.07.2004 03:37 |