Как пропустить часть текста во время разговора с использованием SSML
Есть ли некоторые теги SSML и т. Д., Чтобы удалить определенную строку текста из речи. Да, я знаю, что могу удалить это, используя строковые функции, перед отправкой в синтезатор речи. Но мой вопрос, есть ли способ пометить или пометить какой-нибудь текст, чтобы он не воспроизводился. Я ищу решение на основе XML для этой проблемы.
4 ответа
Есть так много способов, вы должны уточнить, чего вы хотите достичь.
Может быть, один из них поможет вам:
1. standard XML comment <!-- -->
2. <sub alias=" "> your text </sub>
3. <audio src='short_silence.wav'> your text </audio>
4. <prosody volume='silent'> your text </prosody>
Посмотрев быстро на документацию SSML от W3C, я нашел элемент просодии.
Похоже, что вы можете пропустить раздел, установив громкость на 0 и установив длительность на очень маленькое значение.
Установка громкости на ноль должна подавлять вывод звука, но, скорее всего, потребуется то же время, чтобы "прочитать" раздел, как если бы он читался вслух. Если вы также установите продолжительность, вы сможете по существу "пропустить" раздел (быстро прочитайте его молча).
Вам придется экспериментировать, чтобы увидеть, работает ли это.
Мне интересно, является ли комментирование XML правильным решением для того, чего вы пытаетесь достичь:
<!-- <say-as interpret-as="telephone" format="39">+39.347.7577577</say-as> -->
Или же:
<say-as interpret-as="telephone" format="39"><!-- +39.347.7577577 --></say-as>
Надеюсь это поможет.
Использование метатега может предложить какое-то решение.
<speak>This is spoken <meta content="this is not spoken"/> </speak>