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