Проблема преобразования текста в речь с SpeechSynthesizer

#c# #text-to-speech #speech-to-text

#c# #преобразование текста в речь #преобразование речи в текст

Вопрос:

Я пытаюсь создать простое приложение преобразования текста в речь, используя C # и System.Speech.Synthesis . Проблема в том, что я хочу, чтобы это приложение работало с греческим языком. Итак, что я попытался сделать, это:

 SpeechSynthesizer synthesizer = new SpeechSynthesizer
{
Volume = 100,
Rate = -2
};

synthesizer.SpeakAsync("Γειά σου κόσμε!");
  

Конечно, это не работает, поскольку результатом этого кода является то, что голос произносит каждую букву по отдельности. После долгих поисков в Google я попытался установить и использовать espeak и прилагаемый к нему греческий voice следующим образом:

 synthesizer.SelectVoice("eSpeak-el-gr");
  

Результат был точно таким же — голос произносил каждую букву по отдельности, а не все слово целиком. Есть ли способ исправить эту проблему, чтобы SpeechSynthesizer произносить все греческие слова, а не только их буквы?

Комментарии:

1.SpeechSynthesizer.GetInstalledVoices.

2. Я знаю об этом методе, но он меня никуда не приводит. Причина в том, что предустановленный Greek voice на моем компьютере, похоже, не отображается в списке. Взгляните на этот скриншот . Я знаю, что, вероятно, мне здесь чего-то не хватает, но я не знаю, чего.