2010-05-19 79 views
0

我是新来的语音识别,我正在从一个可识别的列表中接收命令的项目。如何在没有将语音添加到语法列表中的情况下获得语音支持?

例如,我会说“播放歌曲”。电脑会问歌名,我可以说。然后它会将我的答案与我的音乐库进行比较并找到它。

我知道如何为SpeechRecognizer对象添加可识别的语法,如何让计算机说话,以及如何在iTunes中播放歌曲。然而,我不能弄清楚如何让它在语法列表中指定或倾听和解释不是的东西。有没有我失踪的方法?还是尚未被微软简化?我没有代码可以证明这一点,因为我甚至不知道如何搜索这个特定的想法。

当然,我可以让程序读取我的整个库,但考虑到我有成千上万首歌曲,这不是一个最佳解决方案。提前致谢!

+0

建立一个标题,艺术家,专辑和流派中使用的每首歌曲和每个单词的数据库实际上并不是那么糟糕。我的多区域音乐播放器可以做到这一点,它每天晚上都会扫描图书馆以保持数据库的最新状态。 – 2010-05-19 23:12:31

+0

@Hightechrider非常感谢。如果你不介意我问,你的多区域音乐播放器是如何工作的?它是专有的吗?我真的希望最终做这样的事情,并不知道如何攻击它。 – 2010-05-20 00:04:42

+0

在博客http://bit.ly/smarthomedemo上查看演示这是所有.NET,驱动多个声卡,为通知播放鸭子音频,以及更多... – 2010-05-20 01:13:08

回答

1

语音识别的作用是将信号与语法进行比较,所以确实没有一种好的方法可以在没有语法的情况下得到结果。为什么不使用音乐库来生成语法列表?我相信结果会更令人满意。一个非常普遍的语法不会让你知道用户是否说过“麦当娜”,“我的唐娜”或者“疯狂”,并且有任何可靠性。您可能希望通过让用户在他们说出来之前选择说出艺术家,标题或专辑来进一步缩小语法。

+0

起初我对此持怀疑态度,但你绝对是对的。我测试了它是各种艺术家的口授,它只有约30%是奇怪的。我用语法对它进行了测试,结果是100%。非常感谢。 – 2010-05-20 00:26:14