Prompt()和SpeakAsync(String)有什么区别

时间:2013-06-05 13:28:28

标签: c# .net wpf text-to-speech

我已阅读文档,但未能理解使用之间的潜在差异:

Prompt prompt = new Prompt("What are you doing?");
speaker.SpeakAsync(prompt);

VS

speaker.SpeakAsync("What are you doing?");

我问这个的原因是因为我试图得到用户的回复而且这不仅仅是一个声明,我期待对发言者提出的问题的具体答案。

例如,我希望speaker说“你在做什么?”如果用户对着麦克风讲话,“我正试着读,请不要管它。”然后语音识别应该保持安静。

我正在尝试确定如何最好地处理基于问题/答案的方案。当我的应用程序期待特定类型的答案以便它可以对其采取行动时,我应该如何处理这个问题。

2 个答案:

答案 0 :(得分:2)

如果它只是一个简单的字符串,就没有理由使用Prompt。

但是可以使用PromptBuilder构建更精细的短语,切换语音和音量,插入暂停和音频片段,使用Ssml标记,指定样式和发音,标记段落和句子。如果你重复这个短语,你还有可能想要保留它。你需要使用Prompt类。

答案 1 :(得分:1)

提示对象可以包含纯文本,使用标记语言格式化的文本或音频文件。

SpeakAsync属于提示类型。

我必须检查我做了一会儿的tts应用程序。