为Azure聊天机器人程序添加对Directline语音中各种口音的支持



我们正在处理一个需要支持azure聊天机器人的各种口音的需求。目前,我们为语音启用了Directline语音,如下所示。

(async function () {
var speechServicesTokenRes = await fetch(
'https://eastus.api.cognitive.microsoft.com/sts/v1.0/issuetoken',
{
method: 'POST',
headers: {
'Ocp-Apim-Subscription-Key': '***************'
}
});
if (speechServicesTokenRes.status === 200) {
authorizationToken = await speechServicesTokenRes.text();
var webSpeechPonyfillFactory = await window.WebChat.createCognitiveServicesSpeechServicesPonyfillFactory({
authorizationToken: authorizationToken,
region: 'eastus'
});
window.WebChat.renderWebChat({
directLine: createDirectLine({
secret: '********************'
}),
webSpeechPonyfillFactory: webSpeechPonyfillFactory
}, document.getElementById('webchat'));
}
})().catch(err => console.error(err));

如果有任何方法可以为口音自定义Directline语音,有人可以指导我吗。

不幸的是,Direct Line Speech不支持重音符号。支持的语言的完整列表,包括地区变体(例如西班牙语(洪都拉斯(与西班牙语(巴拿马((,可以在这里找到。

Direct Line Speech确实支持SSML(语音合成标记语言(,它具有丰富的相关功能。可能帮助您的一些选项是:

  • 调整说话风格以表达心情
  • 添加/删除中断或暂停
  • 用音素调整发音
  • 使用自定义词典调整发音
  • 调整韵律(如音高、速率、重音等(

最后一个选项是创建一个自定义的神经语音,

允许您为应用程序创建独一无二的定制合成语音。

在这种情况下,您将提供音频和/或文本样本,以便训练语音以用于自定义。

希望得到帮助!

最新更新