用于转录的Microsoft SAPI System.Speech

时间:2016-04-15 19:52:01

标签: .net sapi

我目前正在研究一种能够转录音频文件的工具。我首先要看的是使用Microsoft的System.Speech API的可能性。

通过msdn documentation看来,这个工具似乎更适合于短语音命令,在这些命令中您可以了解扬声器的内容。它要求您创建语法以获得良好的准确性。

有此API经验的人可以确认这是否正确?

2 个答案:

答案 0 :(得分:2)

扩展莱斯利的答案 -

Microsoft提供3种不同的SR引擎,具有不同的权衡。

  • System.Speech.Recognition(或桌面SAPI) - 支持单人 来自波形文件(或其他流)的听写和输入,但是 识别器必须为特定的人进行训练才能获得 良好的认可。此外,输入源必须很高 质量(低噪声,16位,22KHz采样率)。

    • Microsoft.Speech.Recognition(或服务器SAPI) - 不支持 听写完全,但确实从波形文件(或其他 stream),不需要培训,并且工作质量较低 来源(更多噪音,8位,8 KHz采样率)。

    • Windows.Media.Speech.Recognition - 新的Windows运行时语音 识别API。支持听写,不需要培训,工作 使用较低质量的输入源,但不从波中获取输入 文件,并要求您的应用程序基于Windows运行时。

对于转录方案,我会调查Windows.Media.Speech.Recognition工具,并查看Virtual Audio Cable之类的内容来创建虚假的默认音频输入设备。

答案 1 :(得分:1)

是和否。

虽然理论上任何语音识别器都可以实现SAPI(因此理论上具有 ANY 准确度),但我发现的库存窗口识别器对命令和控制,但不是自由形式听写或关键字定位等事情。

这并不是说你无法识别出强大的单词选择并且非常准确。我已经让SAPI识别并说Klingon,并且有大量的语法文件。只是当你试图创建自己的识别器,甚至是你自己的SAPI语音时,绝对缺乏信息。通常情况下,那些可以帮助你的人不太可能正是因为它很难或者他们拥有的信息是专有的。

如果你有一个更大的词汇,你希望以自由形式的方式得到认可,你可能会更喜欢像狮身人面像这样的东西。