Проблема преобразования текста в речь с помощью speechsynthesizer
Я пытаюсь создать простое приложение преобразования текста в речь с использованием C# и `System.Речь.Синтез`. Проблема в том, что я хочу, чтобы это приложение работало с греческим языком. Поэтому я попытался сделать вот что:
SpeechSynthesizer synthesizer = new SpeechSynthesizer { Volume = 100, Rate = -2 }; synthesizer.SpeakAsync("Γειά σου κόσμε!");
Конечно, это не работает, так как результатом этого кода является то, что голос произносит каждую букву индивидуально.
Что я уже пробовал:
После долгих поисков в Google я попытался установить и использовать espeak и греческий голос, который поставляется вместе с ним, вот так:
synthesizer.SelectVoice("eSpeak-el-gr");
Результат был точно такой же - голос произносил каждую букву по отдельности, а не целое слово. Есть ли способ решить эту проблему, чтобы "SpeechSynthesizer" произносил все греческие слова, а не только их буквы ?
Richard MacCutchan
Вы проверили, что установлен правильный голос: Синтезатор речи.Метод GetInstalledVoices (System.Речь.Синтез) | Microsoft Docs[^]?
Afzaal Ahmad Zeeshan
Кроме того, помимо того, что сказал Ричард, также проверьте, какой язык вы настраиваете для синтезатора речи. Это может быть проблема с локализацией.