我想在Java中播放WAV聲音(一些自定義視頻格式的音頻曲目),但是,我無法使用Clip:一次似乎只有一個實例是可忍受的。因此,我切換到普通的舊的SourceDataLine方式。暫停SourceDataLine播放
在這種情況下,我想在視頻暫停和取消暫停時暫停和恢復音頻。不幸。當我請SDL停止()時,播放螺紋完全完成和聲音緩衝器被清空:
sdl.open();
sdl.start();
sdl.write(dataBuffer);
sdl.drain();
sdl.stop();
發出異步停止(),同時音頻線程被阻塞上寫(),或漏()將實際上放鬆播放位置。
我該如何用阻塞的方式暫停SourceDataLine,以及/或者如何知道已經通過它播放了多少音頻來使用write(databuffer,skip,len)執行恢復操作?