2014-05-25 5 views
-2

나는 약 20 가지 다른 사운드를 가지고 있으며, 예를 들어 1 초마다 재생되기를 원합니다. 모든 사운드의 지속 시간은 약 0.7 초입니다. 나는 심지어 자바로 mp3를 가져 오는 법도 모른다. 어떻게 내가 자바에서 이것을 할 수 있을까?Java에서 매 x 초마다 소리를내는 간단한 방법

UPDATE

try 
{ 
     in = new FileInputStream(new File("C:\\Users\\Toshiba\\Downloads\\Music\\adios.wav")); 

     AudioStream as = new AudioStream(in); 
     AudioPlayer.player.start(as); 

     Thread.sleep(1*1000); 

    } catch (Exception e) 
    { 
     JOptionPane.showMessageDialog(null, e); 
    } 

내가 새로운 문제가있어. 당신이 소리 every x초을 재생하려는 때문에 당신은 당신이 사용한다, 문서도 here을 찾을 수있는 javax.sound.sampled 라이브러리를 사용할 필요가

+0

시도는 그 작업을 수행하는 코드를 작성합니다. – Maroun

+0

기본 Java가 거의 없거나 작은 반면 mp3를 재생할 수있는 MediaPlayer 클래스가 있으므로 [JavaFX] (http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html)를 사용합니다. mp3에 대한 지원이 없습니다. TimerTask 작업을 사용하여 간격으로 사운드를 재생하십시오. – Cobbles

+0

AudioPlayer는 향후 제거 될 수있는 내부 독점 API이므로 다른 라이브러리를 사용하는 것이 더 안전합니다. Java로 변경하고 싶지 않다면이 라이브러리를 사용할 수 있습니다 : http://www.javazoom.net/javalayer/javalayer.html – Cobbles

답변

0

을 시작하면 나는 그것을 멈출 수 없다

Thread.sleep(x*1000);

소리를 낸 후에. (x은 컴퓨터가 대기하는 시간 (초)입니다.)

더 많은 코드를 제공하면 좀 더 자세하게 설명 할 것입니다.

+0

내가 틀릴 수도 있지만 그 라이브러리가 mp3 호환성을 가지고 있다고 생각하지 않는다. – Cobbles

+0

나는 매 1 초마다 사운드를 재생해야한다. 그게 전부다 –

+0

내가 쓴 라이브러리를 배워야한다. – padawan

0

JavaFX을 사용하십시오. It comes with netbeans

TimerTask task = new TimerTask() { 
     @Override 
     public void run() { 
      //MediaPlayer player; 
      //Media audioFile = new Media(new File("PATH_TO_SOUND")); 
      //player = new MediaPlayer(audioFile); 
      //player.play(); 

      FileInputStream in = new FileInputStream(new File("C:\\Users\\Toshiba\\Downloads\\Music\\adios.wav")); 
      AudioStream as = new AudioStream(in); 
      AudioPlayer.player.start(as); 
     } 
    }; 
Timer timer; 
timer.scheduleAtFixedRate(task, 0, 1000); //start immediately, 1000ms period 

수입 :

import javafx.scene.media.Media; 
import javafx.scene.media.MediaPlayer; 
+0

'timer.scheduleAtFixedRate (task, 0, 1000)'오류가 발생했습니다. 그것은 기호를 찾지 못했습니다 –

+0

미안 해요, 내가 이미 자바 라이브러리로 변경하고 그것을 해결하기 전에 내가 그것을 javax 라이브러리에서 가져 오기 전에 그것을 해결했습니다. 그러나 그것은 여전히 ​​나에게 오류를 준다, 당신은 도서관이 가져올 필요가있는 것을 나에게 보여 줄 수 있니? –

+0

어떤 IDE를 사용하고 있습니까? 나는 일반적인 Java Swing으로 앱을 만들기 시작했고 mp3는 재생할 수 없지만 JavaFX는 별도의 GUI 툴킷입니다. JavaFX와 함께 제공되는 netbeans를 사용하므로 새로운 JavaFX 프로젝트를 작성한 다음 해당 코드가 작동해야합니다. – Cobbles

관련 문제