我在转换WAV文件的音频格式时遇到麻烦。

我正在从麦克风录制声音,并且声音以以下格式录制:PCM_SIGNED 44100.0 Hz,16位,单声道,2字节/帧

我想将上述格式转换为ULAW 8000.0 Hz,8位,单声道,1字节/帧

我正在使用以下代码,

InputStream is = request.getInputStream();

AudioInputStream ais = AudioSystem.getAudioInputStream(is);

AudioFormat oldFormat = ais.getFormat();

AudioFormat newFormat = new AudioFormat(AudioFormat.Encoding.ULAW, 8000, 8, 1, 1, 8000, false) ;

AudioInputStream lowResAIS = AudioSystem.getAudioInputStream(newFormat, ais); //Getting the below Exception on this line

我收到以下错误,

java.lang.IllegalArgumentException:不支持的转换:ULAW 8000.0

Hz,8位,单声道,1字节/帧,来自PCM_SIGNED 44100.0 Hz,16位,单声道,2字节/帧,little-endian

有人可以帮我解决这个问题!!!

万分感谢!!!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐