簡體   English   中英

識別文件中的音頻樣本

[英]Identify audio sample in a file

我希望能夠在我擁有的音頻文件(mp3)中識別音頻樣本(由用戶提供)。

mp3 文件是一個收音機 stream,我保留用於測試目的,並且我有節目的前貼片。 我想在文件中識別它並獲取它在文件中播放的時間戳。

注意:該解決方案可以采用以下任何一種編程語言:Java、Python 或 C++。 我不知道如何分析視頻文件,任何關於這個主題的參考都會有所幫助。

這個問題屬於音頻指紋識別的范疇。 如果您將樣本與歌曲匹配,那么您肯定會知道樣本在歌曲中出現的時間戳。 Shazam 背后的人有一篇很棒的論文描述了他們的技術: http://www.ee.columbia.edu/~dpwe/papers/Wang03-shazam.pdf他們基本上在頻譜圖中挑選出局部最大值並創建一個hash 基於它們的相對位置。

這是對音頻指紋算法的一個很好的評論: http://mtg.upf.edu/files/publications/MMSP-2002-pcano.pdf

無論如何,您可能會大量使用 FFT 和頻譜圖。 這篇文章討論了如何在 Python 中做到這一點。

我首先計算 haystack 和 needle 文件的 FFT 頻譜圖(可以這么說)。 然后你可以嘗試(模糊地)匹配頻譜圖——如果你將它們格式化為圖像,你甚至可以使用現成的算法。

不確定這是否是規范或最佳方式,但我覺得它應該有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM