5

I want to make a new project with pyttsx3, but I can't choose a voice. In general, I need a set of Russian voices, so I installed the RHVoice packages, but the module does not want to see individual voices, showing only languages. Help, please, how to choose them or configure them correctly on linux?

How I look at the list of voices:

import pyttsx3

tts = pyttsx3.init()

voices = tts.getProperty('voices')
for voice in voices:
    print(voice.name)

Output this code:

afrikaans
aragonese
bulgarian
bengali
bosnian
catalan
czech
welsh
danish
german
greek
default
english
en-scottish
english-north
english_rp
english_wmids
english-us
en-westindies
esperanto
spanish
spanish-latin-am
estonian
basque-test
Persian+English-UK
Persian+English-US
persian-pinglish
finnish
french-Belgium
french
irish-gaeilge
greek-ancient
gujarati-test
hindi
croatian
hungarian
armenian
armenian-west
interlingua
indonesian
icelandic
italian
lojban
georgian
kannada
kurdish
latin
lingua_franca_nova
lithuanian
latvian
macedonian
malayalam
malay
nepali
dutch
norwegian
punjabi
polish
brazil
portugal
romanian
russian
slovak
albanian
serbian
swedish
swahili-test
tamil
telugu-test
turkish
vietnam
vietnam_hue
vietnam_sgn
Mandarin
cantonese

The video from which I performed the installation. It is in Russian, but the commands are in the description

Update

<Voice id=afrikaans
          name=afrikaans
          languages=[b'\x05af']
          gender=male
          age=None>
<Voice id=aragonese
          name=aragonese
          languages=[b'\x05an']
          gender=male
          age=None>
<Voice id=bulgarian
          name=bulgarian
          languages=[b'\x05bg']
          gender=None
          age=None>
<Voice id=bengali
          name=bengali
          languages=[b'\x05bn']
          gender=male
          age=None>
<Voice id=bosnian
          name=bosnian
          languages=[b'\x05bs']
          gender=male
          age=None>
<Voice id=catalan
          name=catalan
          languages=[b'\x05ca']
          gender=male
          age=None>
<Voice id=czech
          name=czech
          languages=[b'\x05cs']
          gender=male
          age=None>
<Voice id=welsh
          name=welsh
          languages=[b'\x05cy']
          gender=male
          age=None>
<Voice id=danish
          name=danish
          languages=[b'\x05da']
          gender=male
          age=None>
<Voice id=german
          name=german
          languages=[b'\x05de']
          gender=male
          age=None>
<Voice id=greek
          name=greek
          languages=[b'\x05el']
          gender=male
          age=None>
<Voice id=default
          name=default
          languages=[b'\x05en']
          gender=male
          age=None>
<Voice id=english
          name=english
          languages=[b'\x02en-gb']
          gender=male
          age=None>
<Voice id=en-scottish
          name=en-scottish
          languages=[b'\x05en-sc']
          gender=male
          age=None>
<Voice id=english-north
          name=english-north
          languages=[b'\x05en-uk-north']
          gender=male
          age=None>
<Voice id=english_rp
          name=english_rp
          languages=[b'\x05en-uk-rp']
          gender=male
          age=None>
<Voice id=english_wmids
          name=english_wmids
          languages=[b'\x05en-uk-wmids']
          gender=male
          age=None>
<Voice id=english-us
          name=english-us
          languages=[b'\x02en-us']
          gender=male
          age=None>
<Voice id=en-westindies
          name=en-westindies
          languages=[b'\x05en-wi']
          gender=male
          age=None>
<Voice id=esperanto
          name=esperanto
          languages=[b'\x05eo']
          gender=male
          age=None>
<Voice id=spanish
          name=spanish
          languages=[b'\x05es']
          gender=male
          age=None>
<Voice id=spanish-latin-am
          name=spanish-latin-am
          languages=[b'\x05es-la']
          gender=male
          age=None>
<Voice id=estonian
          name=estonian
          languages=[b'\x05et']
          gender=None
          age=None>
<Voice id=basque-test
          name=basque-test
          languages=[b'\x05eu']
          gender=None
          age=None>
<Voice id=Persian+English-UK
          name=Persian+English-UK
          languages=[b'\x05fa']
          gender=None
          age=None>
<Voice id=Persian+English-US
          name=Persian+English-US
          languages=[b'\x05fa']
          gender=None
          age=None>
<Voice id=persian-pinglish
          name=persian-pinglish
          languages=[b'\x05fa-pin']
          gender=None
          age=None>
<Voice id=finnish
          name=finnish
          languages=[b'\x05fi']
          gender=male
          age=None>
<Voice id=french-Belgium
          name=french-Belgium
          languages=[b'\x05fr-be']
          gender=male
          age=None>
<Voice id=french
          name=french
          languages=[b'\x05fr-fr']
          gender=male
          age=None>
<Voice id=irish-gaeilge
          name=irish-gaeilge
          languages=[b'\x05ga']
          gender=None
          age=None>
<Voice id=greek-ancient
          name=greek-ancient
          languages=[b'\x05grc']
          gender=male
          age=None>
<Voice id=gujarati-test
          name=gujarati-test
          languages=[b'\x05gu']
          gender=None
          age=None>
<Voice id=hindi
          name=hindi
          languages=[b'\x05hi']
          gender=male
          age=None>
<Voice id=croatian
          name=croatian
          languages=[b'\x05hr']
          gender=male
          age=None>
<Voice id=hungarian
          name=hungarian
          languages=[b'\x05hu']
          gender=male
          age=None>
<Voice id=armenian
          name=armenian
          languages=[b'\x05hy']
          gender=male
          age=None>
<Voice id=armenian-west
          name=armenian-west
          languages=[b'\x05hy-west']
          gender=male
          age=None>
<Voice id=interlingua
          name=interlingua
          languages=[b'\x05ia']
          gender=None
          age=None>
<Voice id=indonesian
          name=indonesian
          languages=[b'\x05id']
          gender=male
          age=None>
<Voice id=icelandic
          name=icelandic
          languages=[b'\x05is']
          gender=male
          age=None>
<Voice id=italian
          name=italian
          languages=[b'\x05it']
          gender=male
          age=None>
<Voice id=lojban
          name=lojban
          languages=[b'\x05jbo']
          gender=None
          age=None>
<Voice id=georgian
          name=georgian
          languages=[b'\x05ka']
          gender=None
          age=None>
<Voice id=kannada
          name=kannada
          languages=[b'\x05kn']
          gender=None
          age=None>
<Voice id=kurdish
          name=kurdish
          languages=[b'\x05ku']
          gender=male
          age=None>
<Voice id=latin
          name=latin
          languages=[b'\x05la']
          gender=male
          age=None>
<Voice id=lingua_franca_nova
          name=lingua_franca_nova
          languages=[b'\x05lfn']
          gender=male
          age=None>
<Voice id=lithuanian
          name=lithuanian
          languages=[b'\x05lt']
          gender=male
          age=None>
<Voice id=latvian
          name=latvian
          languages=[b'\x05lv']
          gender=male
          age=None>
<Voice id=macedonian
          name=macedonian
          languages=[b'\x05mk']
          gender=male
          age=None>
<Voice id=malayalam
          name=malayalam
          languages=[b'\x05ml']
          gender=male
          age=None>
<Voice id=malay
          name=malay
          languages=[b'\x05ms']
          gender=male
          age=None>
<Voice id=nepali
          name=nepali
          languages=[b'\x05ne']
          gender=male
          age=None>
<Voice id=dutch
          name=dutch
          languages=[b'\x05nl']
          gender=male
          age=None>
<Voice id=norwegian
          name=norwegian
          languages=[b'\x05no']
          gender=male
          age=None>
<Voice id=punjabi
          name=punjabi
          languages=[b'\x05pa']
          gender=None
          age=None>
<Voice id=polish
          name=polish
          languages=[b'\x05pl']
          gender=male
          age=None>
<Voice id=brazil
          name=brazil
          languages=[b'\x05pt-br']
          gender=male
          age=None>
<Voice id=portugal
          name=portugal
          languages=[b'\x05pt-pt']
          gender=male
          age=None>
<Voice id=romanian
          name=romanian
          languages=[b'\x05ro']
          gender=male
          age=None>
<Voice id=russian
          name=russian
          languages=[b'\x05ru']
          gender=male
          age=None>
<Voice id=slovak
          name=slovak
          languages=[b'\x05sk']
          gender=male
          age=None>
<Voice id=albanian
          name=albanian
          languages=[b'\x05sq']
          gender=male
          age=None>
<Voice id=serbian
          name=serbian
          languages=[b'\x05sr']
          gender=male
          age=None>
<Voice id=swedish
          name=swedish
          languages=[b'\x05sv']
          gender=male
          age=None>
<Voice id=swahili-test
          name=swahili-test
          languages=[b'\x05sw']
          gender=male
          age=None>
<Voice id=tamil
          name=tamil
          languages=[b'\x05ta']
          gender=male
          age=None>
<Voice id=telugu-test
          name=telugu-test
          languages=[b'\x05te']
          gender=None
          age=None>
<Voice id=turkish
          name=turkish
          languages=[b'\x05tr']
          gender=male
          age=None>
<Voice id=vietnam
          name=vietnam
          languages=[b'\x05vi']
          gender=male
          age=None>
<Voice id=vietnam_hue
          name=vietnam_hue
          languages=[b'\x05vi-hue']
          gender=male
          age=None>
<Voice id=vietnam_sgn
          name=vietnam_sgn
          languages=[b'\x05vi-sgn']
          gender=male
          age=None>
<Voice id=Mandarin
          name=Mandarin
          languages=[b'\x05zh']
          gender=male
          age=None>
<Voice id=cantonese
          name=cantonese
          languages=[b'\x05zh-yue']
          gender=male
          age=None>
Matheus Portela
  • 2,420
  • 1
  • 21
  • 32
DGDays
  • 76
  • 12
  • Have you referred this [documentation](https://pyttsx3.readthedocs.io/en/latest/engine.html)? – Girish Feb 02 '21 at 15:20
  • @Girish, yes. I took my programm, wich I wrote 3 months ago and I trying run it – DGDays Feb 02 '21 at 15:21
  • @Girish, True, I wrote it on Windows, and about a month ago I switched to Linux. That's the problem because now – DGDays Feb 02 '21 at 15:28
  • @Girish Just like... you answer doesn't really work ;) – USERNAME GOES HERE Feb 09 '21 at 13:22
  • @VictorVosMottor can you please share how we can solve this problem if you have the solution? The issue is that all of the Russian voices provided by `RHVoice` are not detected here in `pyttsx3`, it only detects one male Russian voice. – Girish Feb 09 '21 at 17:40
  • @Girish Unfortunately I have no solution. Just your solution doesn't work. Sorry for downvotes though. – USERNAME GOES HERE Feb 09 '21 at 17:42
  • 1
    @VictorVosMottor I'm not concerned about downvotes here :) rather I want to know where exactly the problem is, is it in pyttsx3 or RHVoice or something else and how we can solve it that's it. – Girish Feb 09 '21 at 17:46
  • 1
    @Girish, the problem is that all RHVoice voices on linux are installed with their own tts, with which pyttsx3, unfortunately, cannot work( On Windows, all voices are installed for general use, so all programs have access to them... – DGDays Feb 10 '21 at 05:22
  • This I learned from the developers of pyttsx3 – DGDays Feb 10 '21 at 05:23
  • @DGDays This [solve](https://stackoverflow.com/a/44931699/3607051) will solve your problem. – Raksha Saini Feb 11 '21 at 15:05
  • @RakshaSaini, it is not working – DGDays Feb 11 '21 at 16:08
  • @DGDays Do you find Solution [here](https://stackoverflow.com/a/66157507/3607051) – Raksha Saini Feb 11 '21 at 16:10

1 Answers1

-2

I want to say chinese work on Ubuntu 18.04. My voices are the same as you. I use Mandarin to say, It always say "Chinese letter letter letter". "letter" word sums is the same as Chinese character num. Does every could tell that how to say chinese on Ubuntu?

<Voice id=Mandarin
          name=Mandarin
          languages=[b'\x05zh']
          gender=male
          age=None>
<Voice id=cantonese
          name=cantonese
          languages=[b'\x05zh-yue']
          gender=male
          age=None>


import pyttsx3
engine = pyttsx3.init()
voices = engine.getProperty('voices')
for voice in voices:
    print(voice)
engine.setProperty('voice', 'zh')
engine.say("你好")
engine.runAndWait()

or just directly use "espeak -v zh '你好'"