Speech.dll
Simple Sprachausgabe von Texten mittels SAPI.
Freeware, Version 1.0
 
© 2006  Frank Abbing, http//:frabbing.bplaced.net
 
 
Einleitung:
Das Speech Application Programming Interface (SAPI) ist eine Schnittstelle zur Anbindung von Bibliotheken zur Sprachsynthese und Spracherkennung unter dem Betriebssystem Microsoft Windows. Das SAPI-Paket gehört in den englischen, chinesischen und japanischen Windows Versionen (ab Windows 2000) zum Lieferumfang. Jedoch ist eine nachträgliche Installation auf allen Windows Systemen möglich.
Die aktuelle Hauptversion ist SAPI 5. Der Unterschied zu älteren SAPI 4 Version sind (aus Benutzersicht) die wenigen kostenlosen Sprachen für SAPI 5. Microsoft stellt aber mit dem Microsoft Reader© und dessen „Text zu Sprache“ Erweiterungen, kostenlos folgende zusätzliche Sprachen für SAPI 5 zur Verfügung: Französisch, Deutsch, Italienisch und Spanisch. Auf der Seite von Microsoft können diese runtergeladen werden.
 
 
Die Speech.dll:
Die Dll ist entstanden, um den Einbau der SAPI-Schnittstelle in eigene Programme zu vereinfachen. Dabei nutzt sie weder alle Möglichkeiten der SAPI, noch legt sie Anspruch darauf, vollständig zu sein.
Zum aktuellen Stand der Dll wird nur die Ausgabe von Sprache unterstützt. Texte können also vom System vorgetragen werden.
Ein Anwendungsbeispiel wäre z.B. das Vorlesen von Tooltipps.
 
 
Die Funktionen:
Momentan kennt die Speech.dll vier verschiedene Funktionen:
 
InitSpeech()
 
Bereitet SAPI auf kommende Sprachausgaben vor.
 
Ergebnis: Long - Language-ID der vom User eingestellten Sprache. Bei Fehler 0.
 
InitSpeech() wird ohne Parameter aufgerufen. Die Funktion bereitet die SAPI-Schnittstelle entsprechend vor.
Liefert sie Null zurück, dann ist keine Sprachausgabe möglich, weil die Schnittstelle nicht angesprochen werden kann oder nicht vorhanden ist. Ansonsten ist das Ergebniss die Sprache, die auf dem Computer für die Ausgabe eingestellt ist, z.B. Deutsch ($407), Französisch ($40c), Englisch (US, $409), Italienisch ($410), Spanisch ($40a) und Türkisch ($41f). Weitere Language-ID's findet man hier aufgelistet.
Der Aufruf von InitSpeech() ist nötig, um die anderen Dll-Funktionen aufrufen zu können. Wird die Sprachausgabe nicht mehr benötigt, muss sie mit DeInitSpeech() wieder freigegeben werden.
   
DeInitSpeech()
 
Gibt die SAPI-Schnittstelle wieder frei, die mit InitSpeech() vorbereitet wurde. Wird die Sprachausgabe nicht mehr benötigt, muss sie mit DeInitSpeech() wieder freigegeben werden.
 
PlaySpeech(T,B)
 
Gibt einen Text als Sprache aus.
 
T : Long - Zeiger auf einen Text.
B : Long - Grösse des Texts T in Bytes.
 
Der Text T wird von der SAPI-Schnittstelle über die Lautsprecher vorgelesen. Welche Sprache vom User voreingestellt ist, kann mit InitSpeech() ausgelesen werden. Während der Sprachausgabe läuft das aufrufende Programm ganz normal weiter.
 
StopSpeech()
 
Stoppt die aktuelle Sprachausgabe.
   
 
Weiteres:
 
In keinem Fall bin ich, Frank Abbing, verantwortlich für irgendwelche speziellen, zufälligen oder indirekten Beschädigungen jeglicher Art, die durch die Lieferung, Ausführung oder Anwendung dieser Software entstehen.
Die Speech.dll wurde mit großer Sorgfalt geschrieben, aber ich möchte nicht garantieren, daß sie fehlerfrei ist. Allerdings wurde die Software ausgiebig getestet, ohne das Schäden entstanden sind.
Sie dürfen nicht versuchen, diese Software ganz oder teilweise zu decompilieren, zu verändern, zu übersetzen oder zu disassemblieren, kein einzelnes Bit darf verändert werden.