win32com sprachausgabe

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
toper3902

Hallo zusammen,
ich habe eine Sprachausgabe mit folgendem programm erstellt:

Code: Alles auswählen

import win32com.client

speak = win32com.client.Dispatch("SAPI.SpVoice")
speak.Volume = 100
speak.Rate = 1
speak.GetVoices("Name=Microsoft Sam")

speak.Speak("Hello")
Meine Frage:
Wie kann man das ganze auf deutsche b.z.w spanische aussprache umstellen?
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

Indem Du eine Stimme nimmst, die Deutsch oder Spanisch spricht, z.B. mit Angabe eines "Language="-Attributs. Dann mußt Du natürlich auch noch die Stimme setzen.
Wer die Dokumentation liest, ist dabei klar im Vorteil.
toper3902

Ich habe mir das ganze mal angesehen und were einfach nicht schlau daraus.
Könnte bitte jemand den Programmteil schicken wie er funktionieren müsste.
Vielen dank
Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

Woraus wirst Du nicht schlau? Da ist doch schon Beispielcode dabei.
toper3902

Ja aber der funktioniert so nicht.
Es wäre nett wenn du mir einfach den Teil schreiben könntest der die Sprsch ändert.
Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

Diese Anspruchshaltung ist ziemlich frech. Lerne Dokumentationen zu lesen, dann kannst Du Dein nächstes Problem selbst lösen.
toper3902

Wow. Soviel zur Hilfe im Forum!
Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

Ja Hilfe, und nicht kostenloser Programmierservice.
Benutzeravatar
Perlchamp
User
Beiträge: 172
Registriert: Samstag 15. April 2017, 17:58

@toper3902:
also, vorneweg:
ich finde deine Haltung schier zum K... Hier sind Menschen, die UNENTGELDLICH ihre professionelle Hilfe anbieten, um anderen zu HELFEN ! Das gibt es nicht oft in dieser Welt !
bloß, weil du kein Englisch kannst, fängst du an, andere zu beleidigen. Sind IMMER die anderen Schuld, oder ?

Da ich Anfänger bin, macht es mir auch nichts aus, zu versuchen, anderen zu helfen. Kann aber auch komplett falsch sein, was ich schreibe ... ist mir in diesem Fall aber unglaublich egal ... also:

Mit dem Speech SDK von Microsoft kannst du (auf MS-Windows-Plattformen) Skripte mit Sprachausgabe schreiben. Dazu benötigst du die (kostenlose) Entwicklungsumgebung Pythonwin von Mark Hammond. Suche beispielsweise in Sourceforge nach winpy und wähle die Version, die zu deiner Python-Version passt.
In der Entwicklungsumgebung Pythonwin musst du einmal im Menü TOOLS die Funktion COM MAKEPY UTILITY anklicken und dann MICROSOFT SPEECH OBJECT LIBRARY auswählen. Im interaktiven Modus kannst du jetzt den Computer zum Sprechen bringen.

Code: Alles auswählen

>>> import win32com.client
>>> speaker = win32com.client.Dispatch("SAPI.SpVoice")
>>> speaker.Speak("Python is wonderful")
Mit dem folgenden Skript kannst du herausfinden, welche Stimmen auf deinem System installiert sind:

Code: Alles auswählen

import win32com.client
text = """Hello World. Python ist klasse."""
speaker = win32com.client.Dispatch('Sapi.SpVoice')
voices = speaker.GetVoices()
for voice in voices:
    print(voice.GetDescription())
    speaker.Voice = voice
    speaker.Speak(text)
Weitere Stimmen für verschiedene Sprachen kannst du bei Microsoft herunterladen
(https://www.microsoft.com/en-us/downloa ... x?id=27224).
Viel Spaß !
wer lesen kann ist klar im Vorteil ;-)
es gibt keine Probleme, sondern nur Lösungen !
Bildung ist die Freude auf mich selbst !
Antworten