【发布时间】:2020-02-19 09:26:27
【问题描述】:
我正在尝试更新实验性DirectLineSpeech Echo Bot sample 的Speak() 方法以使用神经声音,但它似乎不起作用。
这是我试图让它工作的代码 -
public IActivity Speak(string message)
{
var activity = MessageFactory.Text(message);
string body = @"<speak version='1.0' xmlns='https://www.w3.org/2001/10/synthesis' xml:lang='en-US'>
<voice name='Microsoft Server Speech Text to Speech Voice (en-US, JessaNeural)'>
<mstts:express-as type='chat'>" + $"{message}" + "</mstts:express-as></voice></speak>";
activity.Speak = body;
return activity;
}
这是基于SSML Guide中提供的建议
以下是标准 T2S 供参考:
public IActivity Speak(string message)
{
var activity = MessageFactory.Text(message);
string body = @"<speak version='1.0' xmlns='https://www.w3.org/2001/10/synthesis' xml:lang='en-US'>
<voice name='Microsoft Server Speech Text to Speech Voice (en-US, JessaRUS)'>" +
$"{message}" + "</voice></speak>";
activity.Speak = body;
return activity;
}
有人可以帮助我了解它是如何工作的或者我做错了什么吗?
如果它有助于找到任何限制,我已将机器人部署为 westus2 地区的 F1 免费层中的应用服务。
编辑:更新代码以使用全名,即。 Microsoft Server Speech Text to Speech Voice (en-US, JessaNeural) 而不是 Nicholas 建议的短名称 en-US-JessaNeural。但这似乎也无济于事。
【问题讨论】:
标签: text-to-speech microsoft-cognitive azure-cognitive-services direct-line-botframework