OpenJDK中的“Master Gain不受支持”

时间:2009-12-16 11:53:41

标签: java jmf openjdk

我们在Linux上的OpenJDK上使用JavaZoom的库播放音频文件时遇到问题,尽管它在Sun JDK上运行得很好。是否有this'Master Gain不支持'的例外处理方法?

穆赫辛

3 个答案:

答案 0 :(得分:3)

我注意到了同样的事情。我只是在尝试更改增益之前检查Sun Java。很糟糕,但从好的方面来看,OpenJDK的音频表现要比Sun的表现要好得多。

编辑:因为其他人会通过网络搜索找到这个答案,我会补充一点。在某些情况下,OpenJDK的PulseAudioMixer似乎不遵守JSAPI。例如,它坚持你在flush()之前停止()一行。然而,JSAPI明确表示在停止之前冲洗是合法的。或者在你提到的情况下,脉冲音频实现声称在调用isControlSupported时支持增益,但无论如何都会引发异常。这些是JavaZoom代码在OpenJDK中无法工作的两个原因。还有其他人。在某些情况下,PulseAudioMixer不应该受到指责,它只是在未定义的情况下采用不同的路径(例如,如果在未打开的行上调用write()会发生什么?!)。我正在编写一些代码,我写的更强大,所以它将在OpenJDK上运行。

答案 1 :(得分:1)

有一个针对libbasicplayer-java的补丁(适用于3.0-4):

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=567856

然而,OpenJDK仍然因其获得支持而烦恼:

https://bugs.launchpad.net/zekr/+bug/622663

答案 2 :(得分:0)

在该页面上:https://bugs.launchpad.net/ubuntu/+source/openjdk-6/+bug/491784/最后有一个补丁,现在它适用于我。补丁只包括try&抓住。 对不起,我找不到javazoom的作者把源放在网上的地方了。如果您需要,请与我联系。