Объект Device/Методы/TextToSound: различия между версиями
Перейти к навигации
Перейти к поиску
Jugin (обсуждение | вклад) |
Jugin (обсуждение | вклад) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 22: | Строка 22: | ||
*'''emotion''' - эмоциональная окраска голоса. | *'''emotion''' - эмоциональная окраска голоса. | ||
Описание параметров на [https://cloud.yandex.ru/docs/speechkit/tts/request сайте Яндекс]. | Описание параметров на [https://cloud.yandex.ru/docs/speechkit/tts/request сайте Яндекс]. | ||
Если синтезируемый текст находится внутри тегов <speak>, текст передается в формате [https://cloud.yandex.ru/docs/speechkit/tts/markup/ssml SSML], иначе текст воспринимается как текст в [https://cloud.yandex.ru/docs/speechkit/tts/markup/tts-markup TTS-разметке] . | Если синтезируемый текст находится внутри тегов <speak>, текст передается в формате [https://cloud.yandex.ru/docs/speechkit/tts/markup/ssml SSML], иначе текст воспринимается как текст в [https://cloud.yandex.ru/docs/speechkit/tts/markup/tts-markup TTS-разметке].<br> | ||
Различия в синтезе голоса между версиями [https://cloud.yandex.ru/docs/speechkit/tts/ API v1 и v3]. | |||
=== Параметры синтеза текста с использованием сервиса Yandex API v3 === | === Параметры синтеза текста с использованием сервиса Yandex API v3 === | ||
Строка 36: | Строка 37: | ||
**'''LUFS''' - взвешенная нормализация на основе стандарта EBU R128, в соответствии с которым нормализация громкости производится относительно цифровой полной шкалы (по умолчанию). | **'''LUFS''' - взвешенная нормализация на основе стандарта EBU R128, в соответствии с которым нормализация громкости производится относительно цифровой полной шкалы (по умолчанию). | ||
*'''IsUnsafeMode''' - позволяет использовать синтез текста более 250 символов за раз. Возможно некоторое снижение качества синтеза. | *'''IsUnsafeMode''' - позволяет использовать синтез текста более 250 символов за раз. Возможно некоторое снижение качества синтеза. | ||
Описание параметров на [https://cloud.yandex.ru/docs/speechkit/tts-v3/api-ref/grpc/tts_service сайте Яндекса]. | Описание параметров на [https://cloud.yandex.ru/docs/speechkit/tts-v3/api-ref/grpc/tts_service сайте Яндекса]. Текст воспринимается как текст в [https://cloud.yandex.ru/docs/speechkit/tts/markup/tts-markup TTS-разметке].<br> | ||
Текст воспринимается как текст в [https://cloud.yandex.ru/docs/speechkit/tts/markup/tts-markup TTS-разметке] . | Различия в синтезе голоса между версиями [https://cloud.yandex.ru/docs/speechkit/tts/ API v1 и v3]. | ||
=== Параметры синтеза текста с использованием сервиса Tinkoff === | === Параметры синтеза текста с использованием сервиса Tinkoff === |
Текущая версия на 09:36, 19 декабря 2023
Синтаксис
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 - эмоциональная окраска голоса.
Описание параметров на сайте Яндекс.
Если синтезируемый текст находится внутри тегов <speak>, текст передается в формате SSML, иначе текст воспринимается как текст в TTS-разметке.
Различия в синтезе голоса между версиями API v1 и v3.
Параметры синтеза текста с использованием сервиса Yandex API v3
- Service - сервис синтеза Yandex (Service=Yandex;API=v3;).
- Model - модель распознавания (пока не используется).
- Voice - голос (список голосов).
- Speed - скорость произнесения текста.
- Volume - громкость.
- Role - амплуа/эмоциональная окраска голоса/характер произношения. Допустимые параметры зависят от голоса (список голосов и амплуа).
- Pitch - смена высоты звука в Гц. Значения от -1000 до 1000 (по умолчанию 0).
- LoudnessNormalizationType - тип нормализации громкости:
- MAX_PEAK - пиковая нормализация, при которой уровень звукового сигнала поднимается до максимально возможного значения для цифрового звука без появления искажений.
- LUFS - взвешенная нормализация на основе стандарта EBU R128, в соответствии с которым нормализация громкости производится относительно цифровой полной шкалы (по умолчанию).
- IsUnsafeMode - позволяет использовать синтез текста более 250 символов за раз. Возможно некоторое снижение качества синтеза.
Описание параметров на сайте Яндекса. Текст воспринимается как текст в TTS-разметке.
Различия в синтезе голоса между версиями API v1 и v3.
Параметры синтеза текста с использованием сервиса Tinkoff
- Service - сервис синтеза Google (Service=Tinkoff;).
- Voice - голос (список голосов).
- Speed - cкорость произношения. Задаётся в долях от естественной скорости произношения для конкретного голоса. Например, значение 0.5 - замедляет речь в два раза, 2 - ускоряет речь в 2 раза. Поддерживаются значения от 0.33 до 3 (по умолчанию - 1.0).
- Pitch - высота речи. Задаётся в долях от естественной высоты конкретного голоса. Например, значение 0.5 - понижает высоту голоса в 2 раза, 2 - повышает высоту голоса в 2 раза. Поддерживаются значения от 0.33 до 3 (по умолчанию - 1.0).
Описание параметров на сайте Tinkoff. Если синтезируемый текст находится внутри тегов <speak>, текст передается в формате SSML, иначе текст воспринимается как текст без SSML-разметки, допускается пунктуация.
Результат
- Объект 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