asp.net-mvc-2 - 在 asp.net web 应用程序中转录语音到文本的最佳选择是什么?

标签 asp.net-mvc-2 speech-recognition speech-to-text

我正在构建一个用于录制语音消息的网络应用程序,并且正在寻找将语音消息转换为文本的最佳选项。有没有人对使用什么进行转换有一些建议? System.Speech 会工作吗?

最佳答案

System.Speech 是一个以客户端为中心的 API。 Vista 和 Windows 7 包括 System.Speech 的语音引擎。您可以将其用于转录,因为 Microsoft 提供的客户端语音引擎包含听写语法。

Microsoft 提供的服务器语音引擎不包含听写语法,因此它们更难用于转录。用于服务器识别的 .NET 命名空间是 Microsoft.Speech,10.2 版本的完整 SDK 可在 http://www.microsoft.com/downloads/en/details.aspx?FamilyID=1b1604d3-4f66-4241-9a21-90a294a5c9a4 获得。语音引擎可免费下载。

要开始使用 .NET 语音,几年前在 http://msdn.microsoft.com/en-us/magazine/cc163663.aspx 上发表了一篇非常好的文章。这可能是迄今为止我找到的最好的介绍性文章。它有点过时,但非常有用。 (在测试版之后删除了 AppendResultKeyValue 方法。)

这是一个快速示例,显示了使用我能想到的听写语法的最简单的 .NET Windows 窗体应用程序之一。这应该适用于 Windows Vista 或 Windows 7。我创建了一个表单。在它上面放一个按钮并使按钮变大。添加了对 System.Speech 和以下行的引用:

using System.Speech.Recognition;

然后我将以下事件处理程序添加到 button1:
private void button1_Click(object sender, EventArgs e)
{         
    SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();
    Grammar dictationGrammar = new DictationGrammar();
    recognizer.LoadGrammar(dictationGrammar);
    try
    {
        button1.Text = "Speak Now";
        recognizer.SetInputToDefaultAudioDevice();
        RecognitionResult result = recognizer.Recognize();
        button1.Text = result.Text;
    }
    catch (InvalidOperationException exception)
    {
        button1.Text = String.Format("Could not recognize input from default aduio device. Is a microphone or sound card available?\r\n{0} - {1}.", exception.Source, exception.Message);
    }
    finally
    {
        recognizer.UnloadAllGrammars();
    }                          
}

可以在 What is the difference between System.Speech.Recognition and Microsoft.Speech.Recognition? 上找到更多比较 Microsoft 提供的各种语音引擎和 API 的信息

关于asp.net-mvc-2 - 在 asp.net web 应用程序中转录语音到文本的最佳选择是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4730318/

相关文章:

unity-game-engine - (Unity 5.6) (Watson SDK) 我的 'text to speech' 小部件不会解析/播放关联的字符串

ios - 集成 Nuance Dragon Mobile 时架构 x86_64 的 undefined symbol

c# - ASP.NET MVC2 和 MEF - 为什么我的 MefControllerFactory 无法获取导出或元数据?

asp.net-mvc - T4MVC 和不同区域的重复 Controller 名称

jquery - ASP.NET MVC 页面,CSS(?)问题

java - 使用 cmu sphinx 进行语音识别 - 无法正常工作

r - R depmixs4 中的 HMM 文本识别

java - Android 语音识别 react 时间过长

javascript - 有没有一种方法可以针对给定的少量单词(大约100个单词)实现语音到文本的功能?

c# - 客户端验证不适用于自定义属性