| Autor |
Beitrag |
galagher
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 11:50
Hallo!
Ich war auf der Suche nach einer Möglichkeit, Text als Sprache auszugeben und habe hier im Forum CreateOLEObject gefunden. Klappt aber leider nicht. Hier das Beispiel, das ich habe:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TForm1.Button1Click(Sender: TObject); var voice: OLEVariant; Text : string; begin Text := 'Das ist der Text'; voice := CreateOLEObject('SAPI.SpVoice'); voice.Speak(Text, 0); end; |
Wenn ich auf Button1 klicke, erhalte ich diese Fehlermeldung:
Ungültige Klassenzeichenfolge
Was mache ich falsch? Muss ich ausserdem voice freigeben? Bitte um Rat und danke schon mal!!!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
MartinPb
      
Beiträge: 698
|
Verfasst: Sa 17.04.04 12:01
Warum so kompliziert? Importiere das Windows Modul über ActiveX importieren im Komponenten Menü. Dannach hast du eine Speak-Komponente in deinem Delphi und kannst normal zugreifen.
_________________ Gruß
Martin
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 12:11
| MartinPb hat folgendes geschrieben: | | Importiere das Windows Modul über ActiveX |
Danke für die rasche Antwort! Aber ehrlich gesagt, weiß ich nicht, welches Modul du meinst. Wie heißt es?
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
MartinPb
      
Beiträge: 698
|
Verfasst: Sa 17.04.04 12:22
Das Sprachmodul, was sonnst. Wie wäre es, wenn du reingehst und ein Speak-Modul suchst.
_________________ Gruß
Martin
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 12:46
| MartinPb hat folgendes geschrieben: | | Das Sprachmodul, was sonnst. Wie wäre es, wenn du reingehst und ein Speak-Modul suchst. |
Da ist aber nichts dabei, was wie ein Speak-Modul aussieht. Und wenn, weiß ich nicht, welches.
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Sa 17.04.04 12:46
Hallo,
ich habe es eben versucht und es klappt tatsächlich: Ich habe das ActiveX-Control Microsoft Voice Text installiert und eine Komponente vom Typ TTextSpeech erhalten (bei mir unter der Palette Internet zu finden).
Diese Komponente kannst du dann mit der Methode Speak zum reden bezwingen: TextToSpeech1.Speak('Hallo wie geht es dir?');Hört sich zwar sehr amerikanisch an, aber besser als nix  !
Gruß Hape!
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 12:51
| wulfskin hat folgendes geschrieben: | Hallo,
Ich habe das ActiveX-Control Microsoft Voice Text installiert |
Das habe ich leider nicht in der Liste. Also habe ich nach einer *voi*.ocx -Datei gesucht - gibt's nicht.
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Sa 17.04.04 12:58
Hallo galagher,
such doch nach einer anderen Sprachkomponente (sicherlich irgendwas mit Speech). Falls du wirklich keine findest, dann liegt es vielleicht daran, dass dir die Speech-Api fehlt. Diese kannst du beim Micro$oft downloaden:
www.microsoft.com/speech/download/sdk51/
Gruß Hape
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
MartinPb
      
Beiträge: 698
|
Verfasst: Sa 17.04.04 13:22
@galagher
Hängt davon ab welche Windowsversion du hast. Windows Xp hat es bereits drinn, älterer Versionen haben es nicht. Dann mußt du es laden und installieren. Such mit Google die beiden Dateien SPCHAPI.EXE LHTTSGED.EXE. Die eine ist die Sprechengine, die andere das deutsche Modul.
_________________ Gruß
Martin
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 14:12
Danke an alle! Mein Programm spricht! Super! Hat etwas gedauert, da mein PC spinnt (hängt sich dauernd auf, wenn ich auf die Microsoft-Site gehe), aber jetzt hab' ich's!
Nochmals vielen Dank für eure rasche Hilfe!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 14:58
Hallo, ich hab da noch eine Frage: Kann man irgendwie auf eine männliche Stimme umstellen? mit Gender geht's nicht...
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: Sa 17.04.04 14:59
OT: Was spricht es den, bzw. was soll es sprechen?
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 15:29
| wulfskin hat folgendes geschrieben: | | OT: Was spricht es den, bzw. was soll es sprechen? |
Ok, hab's herausgefunden: DirectSS1.CurrentMode := 1 weiblich, DirectSS1.CurrentMode := 2 männlich
DirectSS dürfte stabiler laufen als TextToSpeech - glaube ich jedenfalls. Es funktioniert, aber so richtig klappt's mit den diversen Einstellungen doch nicht. ZB. können MinSpeed und Speed zwar herabgesetzt werden, aber nur bis 92 (manchmal aber auch bis 86). Gender auf 0,1,2 oder was weiss ich zu setzen, nützt gar nichts - stellt sich die Frage, wofür's das dann gibt, zumal Gender "Geschlecht" heißt. Aber sonst ist es super! Bin noch am Testen!
Edit: Das Ganze ist immer noch mein Chat-Programm, es soll seine Textausgabe sprechen!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 18:49
Hallo, ich hätte da noch eine Frage: bei TDirectSS und TTextToSpeech gibt's einige Eigenschaften, die man einstellen kann, zB. Dialect. Habe das zwar getestet, die meisten haben keinerlei Auswirkungen, aber irgendeinen Zweck muss es ja haben, daß man Einstellungen vornehmen kann.
Danke!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
NetZwerg
      
Beiträge: 448
Slackware 10.1
Kylix 3, D5 Standard
|
Verfasst: Sa 17.04.04 19:00
ich habe auch mal ne frage... wenn ich n längeren text reden lasse (meinetwegen 100 zeichen) hängt sich das programm und der gesamte computer übelst auf, und es gibt im hintergrund nen prozess vcmd.exe und der computer wird sau lahm... wie klann ich das verhindern?
_________________ "Manche Leute drücken nur deshalb ein Auge zu, damit sie besser zielen können."
Billy Wilder, amer. Filmregisseur
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Sa 17.04.04 20:09
| NetZwerg hat folgendes geschrieben: | | wenn ich n längeren text reden lasse (meinetwegen 100 zeichen) hängt sich das programm und der gesamte computer übelst auf |
Es klappt mit 186 Zeichen problemlos (habe ihn den Sourcecode lesen lassen!) - hört sich das vielleicht dämlich an! Aber mit TextToSpeech hatte ich anfangs auch das Problem mit dem langsamen PC, aber ob die Textlänge die Ursache war...? Ich arbeite jetzt mit DirectSS.
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
galagher 
      
Beiträge: 2562
Erhaltene Danke: 46
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: So 18.04.04 08:28
Hallo, ich hab noch eine Frage:
Weiß jemand, wie man die Sprache einstellen kann, von Deutsch auf englisch und wieder zurück? Danke!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Christian S.
      
Beiträge: 20451
Erhaltene Danke: 2264
Win 10
C# (VS 2019)
|
Verfasst: So 18.04.04 16:01
_________________ Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
|
|