2012-12-10 49 views
4

我正在嘗試處理mp3文件以獲取其屬性。我想通過處理這些文件來獲得像Tempo(BPM),Pitch,Rythm等功能。爲此,我正在尋找可以幫助我獲得這些功能的Java或.Net庫。或者,如果我能掌握一些庫,這些庫可以幫助我獲得MP3/Wav文件的基本信號特徵,以便我可以實現描述算法的研究論文,以從基本信號信息中獲取節奏等。有人可以幫我提供任何建議?或者至少是扔我一塊骨頭......告訴我從哪裏開始?Get Tempo(BPM),Rythm,使用Java/C#從MP3或Wav或任何數字音樂文件播放音調信息?

+0

你看過JLayer嗎?這是一個「用於Java™平臺的MP3解碼器/播放器/轉換器庫」。我不知道它是否會做你想做的一切,但也許它可以給你一個開始 - http://www.javazoom.net/javalayer/javalayer.html –

+5

音樂分析是**硬**。如果您不確定從哪裏開始,可能需要查看[Echo Nest](http://echonest.com/)API,以瞭解其中的內容。 – duskwuff

回答

0

您可能想試試aufTAKT。它不是C#/ Java,但它很容易與C++/CLI,P/Invoke或JNI橋接。

0

我不知道Java或.Net本機庫會做你想做的。 JavaSound可以本地讀取/寫入WAV文件,只需要Google for JavaSound。 jsresources.org有很多例子。 Tritonus和JLayer都是擴展,可以幫助讀取MP3文件等內容,而且非常標準。還有很多關於如何做的問題,所以我會再說一次。

唯一的高品質開源庫,我知道的,你想要做的排序處理的是aubio,用C寫的當然也有商業選擇,其中一個在另一個答案被提及,並EchoNest ,一個通過請求在線進行這種分析的API。也許還有其他的選擇,但這是一個專門的領域,所以可能沒有很多其他的選擇。

相關問題