我在变量“myByteBuffer”中有一个heapbytebuffer,它代表我想播放的音频wav。我看到AudioInputStream是一种使用AudioSystem.getAudioInputStream(soundFile)播放文件的方法。由于它接受“文件”,如何将我所拥有的heapbytebuffer转换为“文件”?
答案 0 :(得分:1)
除非您(或想要保存)物理文件,否则不要使用File
重载。只需获取您的数据并将其包装在InputStream
:
AudioSystem.getAudioInputStream(new ByteArrayInputStream(myByteBuffer.array()))
这假设您正在使用完整缓冲区。如果没有,您可以根据需要切出您正在使用的部分。有关详细信息,请参阅here。