匹配两个音频文件
回答
对您的问题没有简单的答案。但是,对于初学者,您可能会了解音频指纹如何工作。本文是Shazam的创作者写一个良好的开端:
http://www.ee.columbia.edu/~dpwe/papers/Wang03-shazam.pdf
我不知道如何该方法将会对狗叫工作,但也有一些概念有可能证明是有用的。
另一个需要研究的问题是FFT如何工作。这是一个包含我为音高跟踪编写的代码的教程,这是使用FFT的一种方式。您正在更多地关注语气和音调如何与给定狗的共振峰结构相互作用。因此,你想要得到的参数可能包括基本音高(单独这可能足以区分呜呜声与其他树皮)以及基本音高与高次谐波的比率,这将有助于确定树皮的激进程度(I在这儿猜了一下):
http://blog.bjornroche.com/2012/07/frequency-detection-using-fft-aka-pitch.html
最后,你可能想要做一些研究,基本的语音识别和语音处理,因为会有一些重叠。维基百科可能足以让你开始。
编辑:哦,另外,一旦你确定了一些参数用于比较,你需要一种方法来比较你的多个参数到你的数据库的声音与多个参数。我不认为shazam文章中的技术会起作用。你可以尝试的一件事是Logistic Regression。还有其他选择,但这可能是最简单的。
我检查了谷歌的开源LIB musicg API:http://code.google.com/p/musicg/
它的Java因此它可以在Android和它给出了两个音频文件的相似性指标。
你能建议我任何适当的链接或代码示例集成这种功能。我也面临同样的问题 – 2017-03-30 08:07:56
- 1. 比较两个音频文件。声音匹配
- 2. 查找两个压缩音频文件中的匹配内容
- 3. 音频文件匹配程序
- 4. 如何将两个音频文件合并为一个Android音频文件?
- 5. 将两个.caf音频文件合并为一个iPhone中的音频文件
- 6. 音频波形匹配
- 7. 合并两个音频文件失败
- 8. 合并两个音频文件FFMpeg acodec
- 9. 结合两个音频文件
- 10. 比较两个音频文件波形
- 11. 播放两个音频文件在android
- 12. iOS - 混合两个音频文件
- 13. 比较这两个音频文件
- 14. 如何附加两个音频文件?
- 15. 将Kinect音频与视频相匹配
- 16. 使用java匹配带有文本的音频文件
- 17. 两个文件并提取匹配的单词匹配一个
- 18. 将两个音频文件合并为一个文件
- 19. 如果时间匹配播放音频文件
- 20. 匹配两个文件的内容
- 21. 在两个文件中匹配数据
- 22. 两个文件匹配后的行
- 23. 匹配来自两个文件的列
- 24. 使用混音器混合两个音频文件
- 25. 加入多个音轨时的音频持续时间匹配
- 26. Android:音频匹配(音频指纹识别)
- 27. 两个音频文件的频谱图(加在一起)
- 28. 将音频文件添加到另一个音频文件,最终结果为一个新的音频文件
- 29. 同时播放两个AVPlayer音频文件时的音频故障
- 30. 如何使UISlider匹配音频进度
我认为最好的选择是谱分析师。使用FFT(快速傅立叶变换)来获取树皮的光谱并比较光谱。您可能可以定义一些过滤器来帮助分析师。玩的开心。 – cliff2310 2012-07-28 22:53:34
谢谢你@ clif2310。有没有另一种方法来实现它?使用FFT将意味着大量的时间学习和实施,因为它非常复杂。 – pindleskin 2012-07-28 23:00:47
FFT只是这里的冰山一角。我已经实现了仅在过程的一部分中使用FFT的音频指纹识别,并且它只匹配两个听起来相同的声音 - 您的问题远远大于此。无论如何,你最终可能会使用一些服务器端解决方案,在那里你的android设备只会获取音频并将其发送到服务器,这将进行比较。调查shazaam,playkontrol或soundhound ... – 2012-07-28 23:21:41