首页 > 代码库 > 关于java AudioInputStream播放短音频没声音的问题
关于java AudioInputStream播放短音频没声音的问题
参考java官网关于此问题的解释。
播放短的音频时,在还没有播放时,程序就调用了stop事件,解决方法,为Clip添加一个监听器:
1 import javax.sound.sampled.*; 2 3 public class EarlyStopDemo { 4 private Clip clip; 5 6 public void go() throws Exception { 7 AudioInputStream audioInputStream = 8 AudioSystem.getAudioInputStream( 9 new java.io.File("testLong.wav")); 10 DataLine.Info info = 11 new DataLine.Info(Clip.class, audioInputStream.getFormat()); 12 clip = (Clip) AudioSystem.getLine(info); 13 clip.addLineListener(new LineListener() { 14 public void update(LineEvent e) { 15 if (e.getType() == LineEvent.Type.STOP) { 16 synchronized(clip) { 17 clip.notify(); 18 } 19 } 20 } 21 }); 22 clip.open(audioInputStream); 23 clip.start(); 24 synchronized (clip) { 25 clip.wait(); 26 } 27 clip.close(); 28 } 29 30 public static void main(String[] args) throws Exception { 31 EarlyStopDemo acd = new EarlyStopDemo(); 32 for (int i = 0; i < 10 ; i++ ) { 33 acd.go(); 34 } 35 } 36 }
关于java AudioInputStream播放短音频没声音的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。