巨蟒语音比较
问题描述
我有两个.wav文件,我需要比较它们并确定它们是否包含相同的单词(顺序也相同)。
我一直在寻找最好的方法。我想不出如何让pySpeech使用文件作为输入。我试过让CMU的狮身人面像项目工作,但我似乎不能让GStreamer与Python27一起工作,更不用说他们的项目了。我也玩过蜻蜓,但没有运气。
我使用的是64位Win7和Python27。有谁有什么主意吗?
非常感谢您的帮助。
解决方案
您可以尝试PySpeech。有关更多信息,请参阅pyspeech (python) - Transcribe mp3 files?。我从来没有用过它,但我相信它利用了Windows内置的语音识别引擎。这将允许您将Wav文件转换为文本,然后您可以进行文本比较。
若要使用Windows语音引擎并使用wav文件进行输入,有两个要求。
- 使用进程识别器(SpeechRecognitionEngine)。共享识别器无法使用Wav文件作为输入。
- 在识别器对象上,调用SetInputToWaveFile以指定您的输入WAV文件。
- 每个样本8位
- 单声道单声道
- 每秒22,050个样本
- PCM编码
在Windows上运行良好。有关详细信息,请参阅https://stackoverflow.com/a/6203533/90236。
有关Windows语音引擎的更多背景知识,您可以查看SAPI and Windows 7 Problem和What is the difference between System.Speech.Recognition and Microsoft.Speech.Recognition?
相关文章