如何在Android应用中检测特定声音?

时间:2018-07-19 20:21:12

标签: java android android-studio

我是Android编程的初学者。在Android Studio中开发声音检测应用。有人可以帮助我检测特定声音吗?

1 个答案:

答案 0 :(得分:1)

尝试使用musicg

musicg 是一个轻量级的音频分析库,用Java编写,目的是提取高级别低级别音频功能。该API使开发人员可以从输入流中轻松提取音频功能并操作音频数据,例如读取,剪切和修整。它还提供了用于数字信号处理的工具,可以渲染波形图或频谱图以进行研发。

将musicg库添加到您的项目,然后尝试以下代码:-

Wave w1= new Wave("first_wav"); // Base Audio file
Wave w2= new Wave("second_wav"); // Audio file to compare
// Finding Audio Fingerprint Similarity
FingerprintSimilarity fps = w1.getFingerprintSimilarity(w2);
float score = fps.getScore();
float sim = fps.getSimilarity();

sim包含与音频文件(值范围从0到1.0)之间的相似度。大于 {0.3 的值可以被视为相似的声音。musicg使用16 bit PCM音频文件。

This app使用musicg进行声音检测。