2014-09-11 101 views
0

因此,我可以獲得一個wav文件的所有字節數組,我只想知道如何將原始聲音數據解碼爲我可以用來分辨歌手何時說/他的節拍(我不知道適當的音樂條款,對不起)Java閱讀/操作Wav文件

如果有一個API或教程在那裏有人可以鏈接我,這將是膨脹,因爲我似乎無法找到任何好東西。

+0

對這個特定的需求還不太確定,但是當我使用FFMpeg(https://www.ffmpeg.org/)來處理音頻文件時。你可能會發現一些好的東西。社區也非常活躍。 – 2014-09-11 03:33:44

回答

0

你會提前知道這個節拍嗎?如果是這樣,你可以輸出兩個信號,並且這個輸出中的最高峯值將對應於時間延遲。除此之外,根據節拍開始前的聲音,您可以轉換到頻域(通過FFT)並查看存在的頻率,並查看節拍開始時是否有顯着變化。

一些示例/額外的細節將有所幫助。

如果您正在嘗試檢測節拍的節奏,請忽略 所有內容 我所說的大部分內容。

0

一般來說,檢測波形文件中「某些事件發生時的情況」並不像人們想象的那樣想象。

可能的第一步是將您的.wav轉換爲所謂的「光譜圖」。 我不認爲Java爲此具有專門的API,但使用「java spectrogram」搜索會給你一些第三方示例。

我也發現this question可能是相關的。

P.S.我不是信號處理專家,所以我們歡迎更正。