Я использую PHP shell_exec для вызова Bluemix
Text to Speech API и мой код работает хорошо, кроме случаев, когда я вызываю текст с SSML
теги, как мой второй код.
Как я могу использовать текст и SSML в одном запросе данных?
$result = shell_exec("/usr/bin/curl -k -u 'XXX':'XXX' -X POST \
--header 'Content-Type: application/json' \
--header 'Accept: audio/wav' \
--max-time 90000 \
--output 'public/uploads/audios/padrao_bomdia.wav' \
--data '{\"text\":\"Hello! This is an test.\", \"voice\":\"pt-BR_IsabelaVoice\"}' \
'https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?voice=pt-BR_IsabelaVoice'");
$result = shell_exec("/usr/bin/curl -k -u 'XXX':'XXX' -X POST \
--header 'Content-Type: application/json' \
--header 'Accept: audio/wav' \
--max-time 90000 \
--output 'public/uploads/audios/padrao_bomdia.wav' \
--data '{\"text\":\"Hello! <say-as interpret-as="letters">Hello</say-as> This is an test.\", \"voice\":\"pt-BR_IsabelaVoice\"}' \
'https://stream.watsonplatform.net/text-to-speech/api/v1/synthesize?voice=pt-BR_IsabelaVoice'");
Требуется ли фрагменту say-as interpret-as = «letters» Hello «escape-косые черты вокруг ‘letters’?
К сожалению, только американский и американский голос Allison поддерживает Expressive SSML. Изабела, голос PT-BR, не поддерживает SSML. Вот почему это не работает.
В настоящее время сервис поддерживает выразительность только для США. Английский
Голос Эллисон (en-US_AllisonVoice). Использование элемента с любым другим
Голос возвращает ошибку.