2013-02-09 2 views
1

여기는 내가 사용하고있는 코드입니다. clip.Program을 재생하기 위해 Clip 클래스를 사용했습니다. 오류없이 컴파일되었고 제대로 실행되고 있지만 소리를들을 수 없습니다.java : clip line not working

import java.io.File; 

import javax.sound.sampled.AudioInputStream; 
import javax.sound.sampled.AudioSystem; 
import javax.sound.sampled.Clip; 
import javax.sound.sampled.DataLine; 
import javax.sound.sampled.LineEvent; 
import javax.sound.sampled.LineListener; 


public class ClipTest { 

public static void main(String[] args) throws Exception { 


File soundFile = new File("./1.wav"); 
AudioInputStream sound = AudioSystem.getAudioInputStream(soundFile); 


DataLine.Info info = new DataLine.Info(Clip.class, sound.getFormat()); 
Clip clip = (Clip) AudioSystem.getLine(info); 
clip.open(sound); 


clip.addLineListener(new LineListener() { 
    public void update(LineEvent event) { 
    if (event.getType() == LineEvent.Type.STOP) { 
     event.getLine().close(); 
     System.exit(0); 
    } 
    } 
}); 


clip.start(); 
} 
}  
+0

가 난 그냥

InputStream inRequest = this.getClass().getResourceAsStream("1.wav"); AudioInputStream sound = AudioSystem.getAudioInputStream(inRequest); 

File soundFile = new File("./1.wav"); AudioInputStream sound = AudioSystem.getAudioInputStream(soundFile); 

를 대체 당신의 실수가 파일 경악 빈 여부가 제대로

로드이었다 생각을하시기 바랍니다 내 게시물보세요. 그것은 내 컴퓨터에서 작동합니다 –

답변

0

코드를 입력 해주세요. 나는 여기에 새 클래스

public class ClipTest { 

    public void run() throws UnsupportedAudioFileException, IOException, LineUnavailableException { 
     InputStream inRequest = this.getClass().getResourceAsStream("batR.wav"); 
     AudioInputStream sound = AudioSystem.getAudioInputStream(inRequest); 

     DataLine.Info info = new DataLine.Info(Clip.class, sound.getFormat()); 
     Clip clip = (Clip) AudioSystem.getLine(info); 
     clip.open(sound); 

     clip.addLineListener(new LineListener() { 

      public void update(LineEvent event) { 
       if(event.getType() == LineEvent.Type.STOP) { 
        event.getLine().close(); 
        System.exit(0); 
       } 
      } 
     }); 

     clip.start(); 

    } 

    public static void main(String[] args) throws Exception { 
     ClipTest clipTest = new ClipTest(); 
     clipTest.run(); 

    } 
} 
+0

친구, 코드가 작동하지 않습니다 ....하지만 결국 내 코드에서 문제를 알아 냈어 ... 그리고 당신의 코드는 같은 문제가 .... 나는 해결 된 버전을 게시 오전. ... thnx by your help – user1678213

+0

위의 코드가 내 컴퓨터에서 100 % 작동 함 –

+0

코드가 컴퓨터에서 작동하는 경우 JDK 1.4.2 또는 이전 버전을 사용 중일 수 있습니다. – user1678213