我正在将代码从 Oracle JDK 导入到OpenJDK (Java 8)。剩下的唯一需要解决的问题是如何改变Java Clip (java.sound.sampled.Clip)的音量?即使经过几个小时的搜索,我也找不到如何更改 Clip 的音量。
我使用 Oracle JDK 这样做了:
FloatControl floatControl = (FloatControl) myClip.getControl(FloatControl.Type.MASTER_GAIN); floatControl.setValue(myVolume);
我也尝试过FloatControl.Type.VOLUME
,但不支持。
我只想更改剪辑的音量,而不是使用另一个类/包重写整个音频系统。
我的想法是将传入的音频数据与 a 相乘float
,这将降低或提高音量。缺点是它可能会很昂贵,因为我需要在播放音频时改变音量,而不是在程序启动时改变音量。
编辑:我想这并不是那么简单,Clip
因为没有一个答案或评论。Clip
除了易于设置且重量轻之外,我还能使用什么(因为我可能会同时播放最多 30 个声音)?
Linux 5.0.0-27 上的 Kubuntu 19.04
OpenJDK 1.8.0_222
相关分类