我在如何改变已经在循环模式下播放的Clip的音量上费了脑筋。我当前拥有的代码是:
Clip c = currentSound.getClip();
FloatControl gainControl =
(FloatControl) c.getControl(FloatControl.Type.MASTER_GAIN);
gainControl.setValue(-10.0f);
currentSound.loop(loopCount);
我是否假设一旦循环开始就无法更改音量,是吗?
我是否假设一旦循环开始就无法更改音量,是吗?
没有Clip
音量可以随时更改,如果可以更改的话。
或者,如果您想实时控制Clip
卷,则可以使用AudioCue。它是一个小型库,并且在Clip
类上进行了尽可能接近的建模。可以像在Java中那样保证音量控制,而不是依赖FloatControl
,C [0]依赖于操作系统和硬件提供的功能,并且更改是按帧分布的,而不是仅按帧进行更改。 -缓冲区边界。