匹配兩個音頻文件
回答
對您的問題沒有簡單的答案。但是,對於初學者,您可能會了解音頻指紋如何工作。本文是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