Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用FFT比较两个音频文件,然后进行实时比较_Java_Android_Audio_Fft_Signals - Fatal编程技术网

Java 使用FFT比较两个音频文件,然后进行实时比较

Java 使用FFT比较两个音频文件,然后进行实时比较,java,android,audio,fft,signals,Java,Android,Audio,Fft,Signals,我正在为Android制作一个应用程序,它将在应用程序运行时保存用户的语音命令;将麦克风输入的实时数据与保存的实时数据进行比较。到目前为止,我已经保存在wav文件的声音,现在我想比较它的输入流。我已使用此API应用FFT,因为它与Android兼容: 我对这个api也不太了解,但我认为FFT数据存储在FrequencyTimeDomainRepresentation对象中。我在互联网上搜索,发现我必须使用一个窗口来比较数据,但我不知道如何做。 我不知道如何比较这些数据 请告诉我如何比较FFT数

我正在为Android制作一个应用程序,它将在应用程序运行时保存用户的语音命令;将麦克风输入的实时数据与保存的实时数据进行比较。到目前为止,我已经保存在wav文件的声音,现在我想比较它的输入流。我已使用此API应用FFT,因为它与Android兼容:

我对这个api也不太了解,但我认为FFT数据存储在FrequencyTimeDomainRepresentation对象中。我在互联网上搜索,发现我必须使用一个窗口来比较数据,但我不知道如何做。 我不知道如何比较这些数据

请告诉我如何比较FFT数据,以及如何将保存的文件数据与输入流数据(我是指代码)匹配。同时,我正在尝试比较两个音频文件使用java,而不是android上的

任何帮助都将不胜感激,
谢谢。

如评论中所述,这是一个与dsp相关的问题。您应该在dspexchange上查询详细信息


但是给你一个快速的肮脏的回答。明确定义你的算法应该做什么。它应该做语音识别吗?如果你只是想用一个简单的方法来衡量相似性,可以使用互相关(问问谷歌)。你也不需要FFT(最近FFT似乎被过度使用了很多。每个不知道他在做什么的人都会想出FFT的东西)。一旦你知道你想做什么,并且你知道你真的需要它,FFT可能会发挥作用;也许是为了应用一些心理模型。但即使这样,简单的haar变换可能更充分、更简单、更快,尤其是在moblie设备上。

如评论中所述,这是一个与dsp相关的问题。您应该在dspexchange上查询详细信息


但是给你一个快速的肮脏的回答。明确定义你的算法应该做什么。它应该做语音识别吗?如果你只是想用一个简单的方法来衡量相似性,可以使用互相关(问问谷歌)。你也不需要FFT(最近FFT似乎被过度使用了很多。每个不知道他在做什么的人都会想出FFT的东西)。一旦你知道你想做什么,并且你知道你真的需要它,FFT可能会发挥作用;也许是为了应用一些心理模型。但即使这样,简单的haar变换可能更充分、更简单、更快,尤其是在moblie设备上。

你需要学习信号处理,因为这个问题对SO来说太宽泛了。你需要学习信号处理,因为这个问题对SO来说太宽泛了。