Объект Device/Методы/TextToSound

Материал из Call Office Wiki
Перейти к навигации Перейти к поиску

Синтаксис

TextToSound (BSTR Text, BSTR Parameters)

Параметры

  • Text - текст синтезируемого сообщения.
  • Parameters - параметры синтеза текста.

Параметры синтеза текста с использованием сервиса Google

  • Service - сервис синтеза Google (Service=Google;).
  • Lang - язык.
  • Speed - скорость произнесения текста.
  • Voice - голос.
  • Emotion - эмоциональная окраска голоса.

Параметры синтеза текста с использованием сервиса Yandex API v1

  • Service - сервис синтеза Google (Service=Yandex;).
  • Lang - язык (список языков).
  • Speed - скорость произнесения текста.
  • Voice - голос.
  • Emotion - эмоциональная окраска голоса.

Описание параметров на сайте Яндекс

Параметры синтеза текста с использованием сервиса Yandex API v3

  • Service - сервис синтеза Yandex (Service=Yandex;API=v3;).
  • Model - модель распознавания (пока не используется).
  • Voice - голос (список голосов).
  • Speed - скорость произнесения текста.
  • Volume - громкость.
  • Role - эмоциональная окраска голоса/характер произношения.
  • PitchShift - высота звука. Значения от -1000 до 1000, по умолчанию 0.
  • LoudnessNormalizationType - тип нормализации громкости:
    • MAX_PEAK - тип нормализации, при котором усиление изменяется для приведения максимального значения выборки PCM или пика аналогового сигнала к заданному уровню.
    • LUFS - тип нормализации основан на рекомендации EBU R128.
  • IsUnsafeMode - позволяет использовать синтез текста более 250 символов за раз. Возможно некоторое снижение качества синтеза.

Описание параметров на сайте Яндекса.

Результат

Объект Sound, содержащий синтезированное сообщение.

Описание

Метод выполняет синтез текста в голосовое сообщения используя технологию Text To Speech (TTS). Голосовая машина используемая для синтеза определяется свойством TTSEngine.

Примеры

Пример с использованием Yandex на JavaScript
var Device = new ActiveXObject ("CallOffice.Device");
var NumberPhone = prompt ("Введите номер телефона",'');

Device.Open ();

var Sound = Device.TextToSound ("Привет, это программа CallOffice", "Service=Yandex; lang=ru-RU; speed=1; voice=zahar; emotion=neutral;"); // Синтезируем голос

var Result = Device.Dial (NumberPhone, 40);
if (Result == 0) {
   Device.Say (Sound);                                                      // Произносим синтезированное сообщение
}
Device.HangUp ();
Device.Close ();
Пример на JavaScript
var Device = new ActiveXObject ("CallOffice.Device");
var NumberPhone = prompt ("Введите номер телефона",'');

Device.Open ();

Device.TTSEngine = "Microsoft Anna - English (United States)";              // Устанавливаем голосовую машину
var Sound = Device.TextToSound ("Hello, this is the program CallOffice!");  // Синтезируем сообщение

var Result = Device.Dial (NumberPhone, 40);
if (Result == 0) {
   Device.Say (Sound);                                                      // Произносим синтезированное сообщение
}
Device.HangUp ();
Device.Close ();
Пример с использованием Yandex на VBScript
Dim Device
Dim Sound
Set Device = CreateObject ("CallOffice.Device")
NumberPhone = prompt ("Введите номер телефона","")

Device.Open

Set Sound = Device.TextToSound ("Привет, это программа CallOffice", "Service=Yandex; lang=ru-RU; speed=1; voice=zahar; emotion=neutral;"); // Синтезируем голос

Result = Device.Dial (NumberPhone, 40)

if Result = 1 then
   Device.Say Sound                                                        ' Произносим синтезированное сообщение
end if

Device.HangUp
Device.Close
Пример на VBScript
Dim Device
Dim Sound
Set Device = CreateObject ("CallOffice.Device")
NumberPhone = prompt ("Введите номер телефона","")

Device.Open

Device.TTSEngine = "Microsoft Anna - English (United States)"              ' Устанавливаем голосовую машину
Set Sound = Device.TextToSound ("Hello, this is the program CallOffice!")  ' Синтезируем сообщение

Result = Device.Dial (NumberPhone, 40)

if Result = 1 then
   Device.Say Sound                                                        ' Произносим синтезированное сообщение
end if

Device.HangUp
Device.Close

Назад к методам объекта Device.