AudioInputStream到base64

时间:2016-09-22 12:48:41

标签: java arrays base64 audioinputstream

我正在使用一些代码从HTTP GET请求中读取一些音频文件并将它们混合起来。我最终得到AudioInputStream。如果我将其写入文件(aisAudioInputStream),并且代码如下,则文件成功创建,如果我尝试读取它,则javascript我可以获得base64文件没有问题。

AudioSystem.write(
      ais
      ,AudioFileFormat.Type.WAVE
      ,new File("test.wav"));

但我需要做的是使用AudioInputStream提取字节数组(并将其转换为base64以将其发送到代码的其他部分。我无法将文件保存到磁盘,我需要从应用程序内存中执行此操作

1 个答案:

答案 0 :(得分:1)

通过将其写入ByteArrayOutputStream,然后将字节数组转换为base64

来管理
baos = new ByteArrayOutputStream();

AudioSystem.write(
       ais
       ,AudioFileFormat.Type.WAVE
       ,baos);

audioInByteArray = baos.toByteArray();