3
我正在分析音樂mp3文件。我正在做的是從文件中提取音頻數據並計算音樂相似度。Java Media Framework:從mp3文件中提取音頻信息
我一直在使用javazoom來處理mp3文件。通過使用AudioFormat的我是從MP3文件中提取原始數據:
byte[] audioBytes = new byte[numBytes];
in_format_init = AudioSystem.getAudioInputStream(musicFile);
AudioFormat formatInit = in_format_init.getFormat();
AudioFormat formatFinal = new AudioFormat(
AudioFormat.Encoding.PCM_SIGNED,
formatInit.getSampleRate(),
16,
formatInit.getChannels(),
formatInit.getChannels()*2,
formatInit.getSampleRate(),
false);
AudioInputStream streamIn = AudioSystem.getAudioInputStream(formatFinal, in_format_init);
while (((numBytesRead = streamIn.read(audioBytes)) != -1))
{...}
通過這樣做,我的音頻數據(沒有標題或標籤)存儲在audioBytes,然後存儲在陣列中的信息進行處理。
我的問題是:是否可以從mp3音頻文件中提取音頻信息並存儲它,就像我在我的示例中那樣?我一直在閱讀關於JMF的知識,但這對我來說很困惑。
謝謝。