我有一个循环剪辑,我像这样改变音量:
clip.stop();
clip.flush();
FloatControl fc = (FloatControl) clip.getControl(FloatControl.Type.MASTER_GAIN);
fc.setValue(new_volume);
clip.loop(javax.sound.midi.Sequencer.LOOP_CONTINUOUSLY);
问题:当剪辑重新启动时,它没有在与结束时相同的帧播放;循环中有可听见的跳跃。
如果我不刷新剪辑,这个问题就会消失,但是在缓冲数据耗尽之前,音量不会改变,这会更糟。
我尝试获取和重置框架位置,但这似乎并没有改变任何东西。
有什么办法可以从中断的地方恢复播放吗?(不需要精确......)有没有办法测量将被刷新的数据量并根据它设置框架?