Замедление TTS с помощью & lt; prosody & gt; Может глюк?

У меня есть приложение IVR, которое работает SSML 2.0 на Voice Server 4.0

Я могу успешно замедлить вывод TTS при использовании

<prosody rate="slow"> Hello </prosody>

Я также могу использовать, скажем, как говорить цифры, а не целое число

<say-as interpret-as="number_digit">1234567890</say-as>

Тем не менее, я, кажется, не могу быть в состоянии использовать оба сразу. Пока <say-as> активен, скорость не меняется.

например

<prosody rate="slow">
<say-as interpret-as="number_digit">1234567890</say-as>
</prosody>

Производит вывод однозначных цифр, но не в медленном темпе. Есть какая-то проблема совместимости или что-то, чего мне не хватает? Или есть другой способ достичь моей цели. Говорящий номер — это длинный номер, который пользователь должен проверить, поэтому замедление работы TTS очень важно.

3

Решение

Это может работать:

<say-as interpret-as="number_digit">
<prosody rate="slow">1234567890</prosody>
</say-as>

Это будет работать:

<prosody rate="slow">1</prosody>
<prosody rate="slow">2</prosody>
<prosody rate="slow">3</prosody>
...

Вот как это сделать с помощью PHP:

<?php
for($i = 0; $i < strlen($number.""); $i++){ //$number."" to cast it as string.
?>
<prosody rate='slow'><?=substr($number, $i, 1)?></prosody>
<?php
}
?>
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]