如何解决Java 将 MP3 音频输入流转换为 µ-law
我有一个 MP3 音频文件,我必须将其转换为 µ-law (8000/mulaw) base64 编码字符串。我尝试了不同的方法,但我无法解决这个问题。但从一开始:
基于 mp3spi,我们可以将 MP3 文件读取到 AudioInputStream
<dependency>
<groupId>com.googlecode.soundlibs</groupId>
<artifactId>mp3spi</artifactId>
<version>1.9.5.4</version>
</dependency>
这里是我尝试使用的代码:
AudioFormat TARGET_FORMAT = new AudioFormat(
AudioFormat.Encoding.ULAW,8000,// Samplerate
8,// quantization
1,// mono
1,false);
AudioInputStream mp3Stream = AudioSystem.getAudioInputStream(mp3Data);
AudioInputStream converted = AudioSystem.getAudioInputStream(TARGET_FORMAT,mp3Stream);
String content = Base64.getEncoder().encodetoString(converted.readAllBytes());
不幸的是,生成的结果不适用于目标系统。 目标系统本身正在工作,如果我只使用波形文件,一切都很好。
有人有解决方案吗?
问候托马斯
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。