我想使用JLayer来解码MP3文件。我搜索了又搜索关于如何做到这一点的文档和示例,但没有找到任何有用的东西。我发现的所有内容都嵌入在其他示例或引用JavaSound中,这在我的情况下是不可接受的。
我觉得这非常容易,但我不知道怎么做。我不知道的参数是什么
Decoder decoder = new Decoder();
decoder.decodeFrame(Header header, Bitstream stream);
或者如何获得它们。
tl;dr如何使用JLayer解码MP3文件?没有MP3 SPI、JavaSound、Tritonus——什么都没有。
我自己想好了。
Bitstream bitStream = new Bitstream(new FileInputStream("path/to/audio.mp3"));
while(condition){
Decoder decoder = new Decoder();
int[] samples = decoder.decodeFrame(bitStream.readFrame(), bitStream); //returns the next 2304 samples
bitStream.closeFrame();
//do whatever with your samples
}