5

我在互联网上浏览了一下,但没有运气。有谁知道是否存在?

4

4 回答 4

1

显然答案是否定的。一直找不到那里的任何东西。

于 2012-04-17T02:17:37.833 回答
0

如果您使用的是 Windows 7 或更高版本,您可能想尝试MFSampledSP

如果您喜欢冒险并且需要支持 Windows 以外的其他平台,您可以尝试修改FFSampledSP及其上游项目。

于 2014-09-25T16:09:35.890 回答
0

使用Quicktime API 做这样的事情,

我已经用这个解决了我的问题quickTime.jar

您可以从 下载此实用程序apple.com

于 2012-04-12T01:32:56.773 回答
0

我意识到您正在寻找一个 .jar 文件来插入并提供对 .wma 文件的支持,但这个解决方案是我获得 .wma 文件支持的方式,它并不比放入一个新 jar 复杂得多。从技术上讲,这不是 SPI,但由于似乎没有这样的东西,我认为发布一个简单的替代方案可能会有用。

这个答案我找到了我的方向。不过,在您深入了解 JAVE 并了解它的内容之前,我将提供一段代码,以便您了解我必须编写多少代码才能转换和播放 wma 文件。JAVE 所做的一切都需要您使用 Encoder 类的实例。

try {
    EncodingAttributes attr = new EncodingAttributes();
    attr.setAudioAttributes(new AudioAttributes()); //default values
    attr.setVideoAttributes(new VideoAttributes()); //default values
    attr.setFormat("wav"); //this is the target format I am trying to achieve
    //b.wma is a file I brought to the project
    File wma = new File("Resources\\b.wma");
    //target.wav is the created file I'll achieve after the encode, which gets used to  make a Clip
    File target = new File("Resources\\target.wav");
    Encoder encoder = new Encoder();
    //this will show you all supported encoding / decoding formats
    //String[] list = encoder.getSupportedEncodingFormats();
    //String[] list = encoder.getSupportedDecodingFormats()
    encoder.encode(wma, target, attr);
    AudioInputStream is = AudioSystem.getAudioInputStream(target);
    Clip clip = AudioSystem.getClip();
    clip.open(is);
    clip.setFramePosition(0);
    clip.start();

} catch (IllegalArgumentException | EncoderException e) {
    e.printStackTrace();
} catch (UnsupportedAudioFileException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
} catch (LineUnavailableException e) {
    e.printStackTrace();
}
于 2014-06-05T22:59:21.273 回答