1

我正在编写一个 Java 应用程序,我想将 Mp3 转换为 Amr 音频格式。因此,我无法成功,因为没有文档或库可以提供帮助。如果可能的话,您能否通过示例提示如何处理。

谢谢。

4

2 回答 2

3

我发现这个名为 jave 的库可以将媒体格式转换为另一种格式。你可以在这里看到图书馆

这是我使用上述插件所做的示例代码

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

于 2012-12-28T07:52:21.993 回答
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);
}

愿它对你有所帮助。

啊哈,别忘了加星。

于 2018-12-17T14:19:05.520 回答