В данной статье я покажу как при помощи C# можно озвучить текст.
Работать будем только с английским текстом. Для работы нам понадобится подключить библиотеку Speech.
Прокомментированный код ниже:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
using System; using System.Speech.Synthesis; // подключаем библиотеку, необходимую для озвучивания namespace VoiceApp { class Program { static void Main(string[] args) { SpeechSynthesizer speechSynth = new SpeechSynthesizer(); // создаём объект speechSynth.Volume = 100; // устанавливаем уровень звука speechSynth.Speak("Hello world"); // озвучиваем переданный текст foreach (var currentVoice in speechSynth.GetInstalledVoices()) // перебираем все установленные в системе голоса { Console.WriteLine(currentVoice.VoiceInfo.Name); // выводим имя текущей озвучки speechSynth.SelectVoice(currentVoice.VoiceInfo.Name); // устанавливаем данную озвучку speechSynth.Speak("Hello world"); // и озвучиваем ей текст } speechSynth.SelectVoiceByHints(VoiceGender.Female, VoiceAge.Adult); // также можно устанавливать пол и возвраст озвучки speechSynth.Speak("Hello world"); // озвучка женским 30-летним голосом Console.ReadKey(); // ожидаем нажатия любой кнопки } } } |
Также есть способ озвучивания текста при помощи Amazon Polly. Данный способ поддерживает большое количество языков. Статья по работе с данным сервисом находится тут.
Если что-то непонятно, тогда можете спросить меня в комментариях к данной статье.