Поделиться через


Использование личного голоса в приложении

Вы можете использовать идентификатор профиля говорящего для личного голоса для синтеза речи на любом из 91 языков, поддерживаемых в 100+ языковых стандартах. Не требуется тег языкового стандарта. Личный голос использует автоматическое обнаружение языка на уровне предложения.

Интеграция личного голоса в приложении

Для использования личного голоса в приложении необходимо использовать язык разметки синтеза речи (SSML ). SSML — это язык разметки на основе XML, который предоставляет стандартный способ разметки текста для создания искусственной речи. Теги SSML используются для управления произношением, громкости, шагом, скоростью и другими атрибутами выходных данных синтеза речи.

  • Свойство speakerProfileId в SSML используется для указания идентификатора профиля говорящего для личного голоса.

  • Имя голоса указывается в свойстве name SSML. Для личного голоса имя голоса должно быть одним из поддерживаемых имен голосовой модели базовой модели. Чтобы получить список поддерживаемых имен голосовой связи базовой модели, используйте BaseModels_List операцию пользовательского API голосовой связи.

    Примечание.

    Имена голосов, помеченные Latestтаким DragonLatestNeural PhoenixLatestNeuralобразом, будут обновляться от времени. Его производительность может отличаться от обновлений для текущих улучшений. Если вы хотите использовать фиксированную версию, выберите одну метку с номером версии, например PhoenixV2Neural.

  • DragonLatestNeural — это базовая модель с превосходным клонированием голоса по сравнению PhoenixLatestNeuralс . PhoenixLatestNeural является базовой моделью с более точным произношением и более низкой задержкой, чем DragonLatestNeural.

  • Для личного голоса можно использовать <lang xml:lang> элемент для настройки языка речи. Это то же самое, что и многоязычные голоса. Узнайте , как использовать элемент lang для говорить на разных языках.

Ниже приведен пример SSML в запросе на речь с именем голоса и идентификатором профиля говорящего. В этом примере также показано, как переключаться с языка на en-US zh-HK использование <lang xml:lang> элемента.

<speak version='1.0' xmlns='http://www.w3.org/2001/10/synthesis' xmlns:mstts='http://www.w3.org/2001/mstts' xml:lang='en-US'>
    <voice name='DragonLatestNeural'> 
        <mstts:ttsembedding speakerProfileId='your speaker profile ID here'> 
            I'm happy to hear that you find me amazing and that I have made your trip planning easier and more fun. 
            <lang xml:lang='zh-HK'>我很高興聽到你覺得我很了不起,我讓你的旅行計劃更輕鬆、更有趣。</lang>
        </mstts:ttsembedding> 
    </voice> 
</speak>

SSML можно использовать с помощью пакета SDK службы "Речь" или REST API.

  • Синтез речи в режиме реального времени: используйте пакет SDK службы "Речь" или REST API для преобразования текста в речь.
    • При использовании пакета SDK службы "Речь" не устанавливайте идентификатор конечной точки, как и для предварительной сборки голоса.
    • При использовании REST API используйте предварительно созданную конечную точку нейронных голосов.

Поддерживаемые и неподдерживаемые элементы SSML для личного голоса

Подробные сведения о поддерживаемых и неподдерживаемых элементах SSML для моделей Phoenix и Dragon см. в следующей таблице. Инструкции по использованию элементов SSML см. в структуре и событиях документов SSML.

Элемент Description Поддерживается в Phoenix Поддерживается в Dragon
<voice> Указывает голос и необязательные эффекты (eq_car и eq_telecomhp8k). Да Да
<mstts:express-as> Задает стили и роли речи. No No
<mstts:ttsembedding> Указывает speakerProfileId свойство для личного голоса. Да Да
<lang xml:lang> Задает язык речи. Да Да
<prosody> Настраивает шаг, контур, диапазон, скорость и объем.
   pitch Задает базовую высоту тона для текста. No No
   contour Представляет изменения в поле. No No
   range Представляет диапазон поля для текста. No No
   rate Указывает скорость произнесения текста. Да Да
   volume Указывает уровень громкости речи. No No
<emphasis> Добавляет или удаляет стресс на уровне слова для текста. No No
<audio> Внедряет предварительно подготовленный звук в документ SSML. Да Нет
<mstts:audioduration> Указывает длительность выходного звука. No No
<mstts:backgroundaudio> Добавляет фоновый звук в документы SSML или смешивает звуковой файл с текстом для речи. Да Нет
<phoneme> Указывает фонетическое произношение в документах SSML.
   ipa Один из фонетических алфавитов. Да Нет
   sapi Один из фонетических алфавитов. No No
   ups Один из фонетических алфавитов. Да Нет
   x-sampa Один из фонетических алфавитов. Да Нет
<lexicon> Определяет, как считываются несколько сущностей в SSML. Да Да (только псевдоним поддержки)
<say-as> Указывает тип контента, например число или дату текста элемента. Да Да
<sub> Указывает, что текстовое значение атрибута псевдонима должно быть произнесено вместо заключенного текста элемента. Да Да
<math> Использует MathML в качестве входного текста для правильного произношения математических нотации в выходном звуке. Да Нет
<bookmark> Получает смещение каждого маркера в звуковом потоке. Да Нет
<break> Переопределяет поведение разрывов или пауз по умолчанию между словами. Да Да
<mstts:silence> Вставка приостанавливается до или после текста или между двумя смежными предложениями. Да Нет
<mstts:viseme> Определяет положение лица и рта во время выступления человека. Да Нет
<p> Обозначает абзацы в документах SSML. Да Да
<s> Обозначает предложения в документах SSML. Да Да

Поддерживаемые и неподдерживаемые функции пакета SDK для личного голоса

В следующей таблице описаны возможности пакета SDK для моделей Phoenix и Dragon. Дополнительные сведения об использовании этих функций пакета SDK в приложениях см. в статье "Подписка на события синтезатора".

Возможности пакета SDK Description Поддерживается в Phoenix Поддерживается в Dragon
Граница Word Сигнализирует о том, что во время синтеза была получена граница слова, обеспечивая точное время слова во время процесса синтеза речи. Да Нет
События Viseme Предоставляет информацию viseme (губы, челюсть и перемещение языка) во время синтеза, позволяя визуальной синхронизации. Да Нет

Справочная документация

Следующие шаги

  • Дополнительные сведения о пользовательском нейронном голосе см. в обзоре.
  • Дополнительные сведения о Speech Studio см. в обзоре.