我正在开发一个播放(演示)来自网络的音频文件的应用。我想将这些演示减少到30秒的段,这意味着仅流式传输一部分原始音频文件(MP3)。但是我不想要剪切音频文件并将这些段存储为服务器上的不同文件,而我的目的是在原始文件中即时执行。我尝试过类似下面的代码而没有成功。
AudioInputStream stream=AudioSystem.getAudioInputStream(new URL("http://example.com/test.mp3"));
float rate=stream.getFormat().getFrameRate();
clip.open(stream);
clip.setLoopPoints((int)Math.round(rate*0.1264931), (int)Math.round(rate*0.5258144));
clip.setFramePosition((int)Math.round(rate*0.1264931));
clip.loop(1);
我想知道是否可能以上述逻辑的形式出现?
对于这个案例没有进行物理分割是否有任何建议?