我正在编写Java应用程序,我想将Mp3转换为Amr音频格式。 所以,我没有成功,因为没有文件或图书馆可以提供帮助。 如果可能的话,你能否举例说明如何处理。
感谢。
答案 0 :(得分:3)
我发现这个名为jave的库你可以将媒体格式转换为另一种格式。你可以看到图书馆here
以下是我使用上述插件执行的示例代码
Encoder encoder = new Encoder();
EncodingAttributes attributes = new EncodingAttributes();
attributes.setFormat("wav");
AudioAttributes audio = new AudioAttributes();
audio.setBitRate(new Integer(64000));
audio.setChannels(new Integer(1));
audio.setSamplingRate(new Integer(22050));
attributes.setAudioAttributes(audio);
File source = new File("mysong.mp3");
File target = new File("mysong.wav");
try {
encoder.encode(source, target, attributes);
} catch (IllegalArgumentException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (InputFormatException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (EncoderException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
我发布的代码基本上将mp3转换为wav
答案 1 :(得分:0)
JAVE是一种众所周知的非常有用的格式转换工具,但是它存在一些问题,EncoderException就是其中之一。
我创建了一个项目以使其更新并易于使用。
https://github.com/dadiyang/jave
此工具主要用于将AMR转换为MP3格式,以便在HTML5的音频标签中播放。它包装ffmpeg,并使其具有跨平台功能。
基于依赖ffmpeg的JAVE项目,此工具可用于所有ffmpeg支持的格式转换。有关详细信息,请参见JAVE官方文档。
您唯一需要做的是:
包括Maven依赖度
<dependency>
<groupId>com.github.dadiyang</groupId>
<artifactId>jave</artifactId>
<version>1.0.0</version>
</dependency>
并调用AudioUtils.amrToMp3方法
public void amrToMp3() {
File source = new File("testAudio.amr");
File target = new File("testAudio.mp3");
AudioUtils.amrToMp3(source, target);
}
希望对您有帮助。
啊哈,别忘了看星星。