AudioInputStream:任何方式跟踪从源流读取的字节数?

时间:2011-08-31 07:32:10

标签: java mp3 audio-streaming

我正在使用JavaZoom的mp3spi-1.9.5和jl-1.0.1来播放MP3文件。这工作正常,但我在跟踪流的“进度”(以字节为单位)

时遇到一些麻烦

我需要从远程文件播放InputStream,我需要知道应用程序从原始流中读取和“处理”了多少字节。我不需要知道流有多长。

我现在所做的是使用AudioSystem.getAudioInputStream(url)获取流。但是,我相信从该流中读取的字节数是“已解码”/“未压缩”字节数,并不反映从流中读取的实际字节数。

有没有人知道如何跟踪从原始流中读取的“实际”字节数?

1 个答案:

答案 0 :(得分:1)

使用JavaZoom的库时,AudioInputStream在处理MP3时会是DecodedMpegAudioInputStream。通过将AudioInputStream转换为DecodedMpegAudioInputStream,您可以通过调用properties()并获取键“mp3.position.byte”来获取读取的字节数。