6

我有两个 .wav 文件需要比较并确定它们是否包含相同的单词(顺序也相同)。

我一直在寻找最好的方法。我不知道如何让 pyspeech 使用文件作为输入。我试过让 CMU sphinx 项目工作,但我似乎无法让 GStreamer 与 Python 27 一起工作,更不用说他们的项目了。我也搞砸了 DragonFly 也没有运气。

我正在使用带有 Python27 的 Win7 64 位。有没有人有任何想法?

任何帮助是极大的赞赏。

4

1 回答 1

5

你可以试试PySpeech。有关更多信息,请参阅pyspeech (python) - 转录 mp3 文件?. 我从未使用过它,但我相信它利用了 Windows 的内置语音识别引擎。这将让您将 Wav 文件转换为文本,然后您可以进行文本比较。

要使用 Windows 语音引擎并使用 wav 文件进行输入,有两个要求。

  1. 使用 inproc 识别器 (SpeechRecognitionEngine)。共享识别器不能使用 Wav 文件作为输入。
  2. 在识别器对象上调用 SetInputToWaveFile 来指定您的输入 wav 文件。

您可能必须重新采样 wav 文件,因为语音识别引擎仅支持某些采样率。

  • 每个样本 8 位
  • 单声道单声道
  • 每秒 22,050 个样本
  • PCM编码

在 Windows 上运行良好。有关更多信息,请参阅https://stackoverflow.com/a/6203533/90236 。

有关 Windows 语音引擎的更多背景信息,您可以查看SAPI 和 Windows 7 问题以及System.Speech.Recognition 和 Microsoft.Speech.Recognition 之间的区别是什么?

于 2012-02-23T21:20:20.143 回答