Android中的语音匹配

时间:2014-03-16 21:16:22

标签: java android eclipse voice-recognition voice

我们有什么方法可以在Android中进行语音匹配?采取以下方案。

  1. 用户“A”在应用中讲一些内容,并通过应用将其录制到手机中。
  2. 用户“B”在应用程序中说些什么,并通过应用程序将其记录在手机中。
  3. 用户“C”在应用程序中说些什么,并通过应用程序将其记录在手机中。
  4. 在所有这些录音之后,用户“A”来到该应用程序并与之交谈。由于他的声音已被录制,app确定这是用户“A”。
  5. 或者像这样......

    1. 用户“A”在应用程序中使用“House”字样,并通过应用程序将其记录在手机中。
    2. 用户“B”在应用程序中使用“House”字样,并通过应用程序将其记录在手机中。
    3. 用户“C”在应用程序中使用“House”字样,并通过应用程序将其记录在手机中。
    4. 在所有这些录音之后,用户“A”来到应用程序并说出“House”这个词。由于他的声音已被录制,app确定这是用户“A”。
    5. 这在Android中是否可行?哪种方法可行?我没有看到任何内置的库,但有什么办法吗?

1 个答案:

答案 0 :(得分:3)

您可能需要检查在Java中进行文本独立说话人识别的Recognito

它是在Apache 2.0下获得许可的FOSS lib

https://github.com/amaurycrickx/recognito

免责声明:我是作者: - )

它对Oracle的javax.sound有轻微的依赖关系来处理文件,但它应该直接从主要的Recognito类中删除这种依赖(一些丢弃的方法:查找"文件&#34 ;在params和hit del)

我不知道任何其他未经修改即可与Android兼容的FOSS替代品

有大量的javadoc,代码应该是直截了当的。

你会想知道如何使用介于-1.0和1.0之间的值创建double [] 首先,您可能需要查看使用16位PCM编码文件的FileHelper类。

请注意,单个单词不足以提取良好的声乐效果并在之后识别用户

对于这个过程,我说使用重复3次的短语来构建平均声乐效果。在识别时使用相同的短语。

lib与文本无关,但如果您需要保持录音短,则有助于使用相同的短语。如果你想让它真正独立于文本(用户说什么并得到认可),你需要更长的声音样本。

HTH