Озвучка текста с помощью C# и Amazon Polly в Zennoposter

POLOZ

Client
Регистрация
06.02.2018
Сообщения
42
Благодарностей
4
Баллы
8
Приветствую! Помогите решить непосильную задачу для нуба в C#) Как автоматизировать озвучку текста в Zennoposter через Amazon Polly в Zennoposter? Аккаунт, Access key ID, Secret access key и тд. все имеется.
Наткнулся на данную статью с примером, но не догоняю как заставить все это работать. Может кто-то поможет?

Для работы мы создадим простое консольное приложение. После его создания установите через NuGet библиотеку AWSSDK.Polly.
В приложении необходимо будет указать ключ доступа, а также секретный ключ от аккаунта AWS. Вы можете получить эти данные в вашем аккаунте в секции «Access keys».


Код:
using Amazon;
using Amazon.Polly;
using Amazon.Polly.Model;
using Amazon.Runtime;
using System;
using System.IO;

namespace TextToSpeech
{
class Program
{
static void Main(string[] args)
{
// указываем данные используемого аккаунта
BasicAWSCredentials awsCredentials =
new BasicAWSCredentials("AccessKeyID", "SecretAccessKey");

// создаём объект класса AmazonPollyClient,
// передавая данные аккаунта и указывая используемый регион
AmazonPollyClient amazonPollyClient =
new AmazonPollyClient(awsCredentials, RegionEndpoint.EUCentral1);
// создаём объект запроса
SynthesizeSpeechRequest synthesizeSpeechRequest = MakeSynthesizeSpeechRequest();
// получаем ответ от AWS Polly
SynthesizeSpeechResponse synthesizeSpeechResponse =
amazonPollyClient.SynthesizeSpeech(synthesizeSpeechRequest);

CreateMp3File(synthesizeSpeechResponse.AudioStream);
}

// метод создания запроса для озвучивания текста
private static SynthesizeSpeechRequest MakeSynthesizeSpeechRequest()
{
// создаём объект запроса
SynthesizeSpeechRequest synthesizeSpeechRequest = new SynthesizeSpeechRequest();
// передаём необходимый текст
synthesizeSpeechRequest.Text = "Небольшой фрагмент текста для его озвучивания";
// указываем код передаваемого языка
synthesizeSpeechRequest.LanguageCode = LanguageCode.RuRU;
// указываем выходной формат
synthesizeSpeechRequest.OutputFormat = OutputFormat.Mp3;
// указываем желаемый голос
synthesizeSpeechRequest.VoiceId = VoiceId.Tatyana;

return synthesizeSpeechRequest;
}

// метод для создания mp3 файла
private static void CreateMp3File(Stream audioStream)
{
// указываем путь к сохраняемому mp3 файлу
const string pathToMp3 = "F:\\test.mp3";

using (FileStream fileStream = File.Create(pathToMp3))
{
audioStream.CopyTo(fileStream);
fileStream.Flush();
fileStream.Close();
}
}
}
}
 
  • Спасибо
Реакции: bizzon

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)