65.9K
CodeProject 正在变化。 阅读更多。
Home

使用 SAPI 5.1 SDK 的一个简单语音应用程序

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.24/5 (24投票s)

2004年10月3日

2分钟阅读

viewsIcon

224406

downloadIcon

39564

使用 SAPI 5.1 SDK 的一个简单语音应用程序。

引言

这个简单的语音应用程序可以将文本转换为语音,也可以将语音转换为文本。 如果您选择“朗读”选项,您在文本框中键入的任何内容都会转换为语音,您可以听到微软的默认语音朗读出来!

这个应用程序还可以将语音转换为文本。 只需要连接您的麦克风并进行“麦克风设置”来设置您的麦克风并讲话。 您将能够看到您说话时文本框中输入单词!

为了获得最佳效果,请在说话之前尝试语音训练向导,它有助于设置您的语法。

Using the Code

该应用程序是一个基于对话框的应用程序,用 MFC 编写。 它只使用一个对话框类 CSpeechDlg

涉及的步骤如下

  1. 初始化 COM。
  2. 初始化识别器(以识别正在调用语音)。
  3. 初始化 RecoEngine(语音引擎)。
  4. 初始化 RecoContext(我们将编写语音应用程序的上下文)。
  5. 设置一个用户定义的消息,每当有语音时,将捕获该消息并发送到我们的窗口(这里是对话框)。
  6. 将语音记录兴趣设置为 RECOGNITION 状态。
  7. 创建默认音频输入。
  8. 将输入设置为语音引擎。
  9. 指定我们想要使用的语法(这里我们使用听写语法)。
  10. 加载听写工具。

语音转文本

对于语音到文本转换,我们的用户定义消息的 CallBack 函数将执行以下操作

  • 它将处理所有语音事件。
  • 检查生成的事件 ID 以识别发生的语音事件。
  • 如果是语音识别事件,则获取文本并在文本区域中显示它。

文本转语音

这是一个简单的过程,您只需要将文本传递给一个函数 Speak(text) ,现在该函数将负责处理它。

参考文献

  • Microsoft Speech SDK 5.1。

先决条件

  • Microsoft Speech SDK 5.1 及更高版本。

我的联系方式

注意

  • SAPI - 语音应用程序编程接口。
© . All rights reserved.