2011-09-17 4 views
0

이것은 Java Sound 정보 페이지에서 약간 수정 된 예제입니다. https://stackoverflow.com/tags/javasound/info 불행히도 사운드는 한 번만 재생되지만 의도는 두 번입니다.Clip 및 AudioInputStream을 통한 Java 사운드 재생이 작동하지 않습니다.

import java.io.File; 
import javax.sound.sampled.*; 

public class TestNoise { 
    public static void main(String[] args) throws Exception { 
     File f = new File("/home/brian/drip.wav"); 
     AudioInputStream ais = AudioSystem.getAudioInputStream(f); 

     AudioFormat af = ais.getFormat(); 
     DataLine.Info info = new DataLine.Info(Clip.class, af); 
     Clip clip = (Clip)AudioSystem.getLine(info); 

     clip.open(ais); 
     clip.start(); // heard this 
     Java.killTime(); 
     clip.start(); // NOT HEARD 
     Java.killTime(); 
    } 
} 

편집 : 대답을 이해하기 위해, 방황에서 제공하는 링크를 참조하거나 그냥 그의 대답 아래의 코멘트에서 말하는 않습니다.

+0

1) [JavaSound info. 페이지] (http://stackoverflow.com/tags/javasound/info) 당신을 위해 WAV 작업을 재생? 2) 테스트 WAV에 대해 정확한 소스 (URL 변경 제외)가 실패합니까? –

+0

빨리 도움을 받으려면 [SSCCE] (http://pscode.org/sscce.html)를 게시하십시오. –

+1

@broiyan : 스윙 유효성 검사 질문을 그냥 지우려면 내 자유 시간을 낭비 했지? Duly는 향후 참조를 위해 언급했습니다. –

답변

0

두번째 클립을 재생하려면 당신은) (clip.start의 두 번째 호출 후

clip.start(); 
clip.stop(); 

원인을 호출해야합니다; it stopped previously이있는 곳에서 파일을 재생하려고합니다.

+1

감사합니다. 그것은 필요한 clip.setFramePosition (0); 제대로 재생할 수 있습니다. – H2ONaCl

관련 문제