安卓如何识别两个人的声音?

6

我想开发一个安卓应用。

应用的一个功能是识别两个人的声音。

它会像这样 - 当应用程序打开时,两个人会在它的前面交谈。 应用将检测到2个人在说话,并计算A和B两人分别占总发言量的百分比。

因此,例如,在1分钟后,该应用程序将告诉您A发言了80%,B发言了20%。

所以,我需要知道如何区分两个人的声音。

我已经尝试过SpeechRecognizerandroid.speech.tts。 但我无法使其工作。

在安卓中,是否可以区分两个人的声音?

谢谢提前帮助。


我认为有一种方法。我也需要它的解决方案。 - user4274333
有人能帮忙吗?拜托了。 - Abrar Jahin
1
SpeechRecognizer 用于运行自动语音识别(ASR),TTS代表“文本转语音”。你需要识别说话者而不是语音,所以两者都是错误的方式。在非安卓环境下,您应该查看 LIUM_SpkDiarization 或 Alize。我不知道如何在安卓上模拟这些软件。 - lCapp
1
看一下这个链接,这样你就可以更好地理解你想要做什么。https://dev59.com/V1PTa4cB1Zd3GeqPm9dy - lCapp
你做了这个应用吗?如果是的话,请提供链接,我想购买它 :-) - Freedom_Ben
1个回答

4

SpeechRecognizer或TTS都无法帮助您进行说话者识别,因为它们被设计用于语音识别。您需要使用DSP技术才能识别说话者。由于其复杂性,我认为您无法在设备本身内完成此任务。您可以保存您的音频(使用类似于Android中的AudioRecord的东西),然后将其发送到服务器。在服务器端,您可以运行一个说话者识别程序。ALIZE是一个非常流行的开源工具。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接