Autor Beitrag
galagher
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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:

ausblenden 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 698



BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 698



BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1349
Erhaltene Danke: 1

Win XP
D5 Pers (SSL), D2005 Pro, C, C#
BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1349
Erhaltene Danke: 1

Win XP
D5 Pers (SSL), D2005 Pro, C, C#
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 698



BeitragVerfasst: 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 Suche bei Google SPCHAPI.EXE LHTTSGED.EXE. Die eine ist die Sprechengine, die andere das deutsche Modul.

_________________
Gruß
Martin
galagher Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1349
Erhaltene Danke: 1

Win XP
D5 Pers (SSL), D2005 Pro, C, C#
BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 448

Slackware 10.1
Kylix 3, D5 Standard
BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2562
Erhaltene Danke: 46

Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
BeitragVerfasst: So 18.04.04 08:28 
Hallo, ich hab noch eine Frage: :oops:

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.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: So 18.04.04 16:01 
Hier geht es weiter.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Dieses Thema ist gesperrt, Du kannst keine Beiträge editieren oder beantworten.

Das Thema wurde von einem Team-Mitglied geschlossen. Wenn du mit der Schließung des Themas nicht einverstanden bist, kontaktiere bitte das Team.