我正在创建一个短片然后播放它,调用该start()
方法.然后我调用该drain()
方法来阻止执行,直到剪辑回放完成.但是,当运行多次下面的代码时,有时它会工作,有时它不会,并且声音在结束前随机停止.
Mixer mixer = AudioSystem.getMixer(null); AudioFormat format = new AudioFormat(44100, 8, 1, true, false); DataLine.Info info = new DataLine.Info(Clip.class, format); try { // Create a sound of 1 second Clip clip = (Clip)mixer.getLine(info); byte[] b = new byte[44100]; for(int i=0; i所以我的问题是:这是一个错误吗?还是我误解了这个
drain()
方法?