Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import java.io.*;
- import javax.sound.sampled.*;
- import java.util.Timer;
- import java.util.TimerTask;
- public class Alarm {
- private static String audioFile; //오디오 파일명
- private Clip clip; //오디오 재생클립
- private AudioInputStream audioInputStream; //스트림
- private static int count=0; //타이머 시행횟수
- public void wristVoice(int click) {
- switch(click) {
- case 50:
- this.setFlie("50click_tts.wav");
- this.playAudioFile();
- break;
- case 100:
- this.setFlie("100click_tts.wav");
- this.playAudioFile();
- break;
- case 500:
- this.setFlie("500click_tts.wav");
- this.playAudioFile();
- break;
- case 1000:
- this.setFlie("1000click_tts.wav");
- this.playAudioFile();
- break;
- }
- } //end func
- public void wristMessage(int click) {
- String str;
- if(click == 1000) {
- str = click + "번 마우스를 클릭하셨습니다.\n컴퓨터를 종료하여 주세요!";
- JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.WARNING_MESSAGE);
- } else {
- str = click + "번 마우스를 클릭하셨습니다.\n건강에 유의하여주세요.";
- JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.INFORMATION_MESSAGE);
- }
- } //end func
- public void posVoice() {
- this.setFlie("position_tts.wav");
- this.playAudioFile();
- }
- public void posMessage() {
- String str = "자세 교정 시간입니다.\nhttps://youtu.be/iw-WLD5v26c";
- JOptionPane.showMessageDialog(null, str, "자세 건강 알림창", JOptionPane.INFORMATION_MESSAGE);
- }
- public void eyeVoice(int time) {
- switch(time) {
- case 1:
- this.setFlie("1hour_tts.wav");
- this.playAudioFile();
- break;
- case 2:
- this.setFlie("2hours_tts.wav");
- this.playAudioFile();
- break;
- case 3:
- this.setFlie("3hours_tts.wav");
- this.playAudioFile();
- break;
- case 4:
- this.setFlie("4hours_tts.wav");
- this.playAudioFile();
- break;
- case 5:
- this.setFlie("5hours_tts.wav");
- this.playAudioFile();
- break;
- }
- } //end func
- public void eyeMessage(int time) {
- String str;
- if(time == 5) {
- str = time + "동안 모니터를 주시하셨습니다.\n컴퓨터를 종료하여 주세요!";
- JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.WARNING_MESSAGE);
- } else {
- str = time + "동안 모니터를 주시하셨습니다.\n건강에 유의하여주세요.";
- JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.INFORMATION_MESSAGE);
- }
- } //end func
- public void setFlie(String file) { //파일 경로 설정
- audioFile = file;
- } //end func
- public void playAudioFile() { //.Wav 재생, setFile 이후 실행가능
- try {
- Clip clip = AudioSystem.getClip();
- File clap = new File(audioFile);
- clip.open(AudioSystem.getAudioInputStream(clap));
- clip.start();
- Thread.sleep(clip.getMicrosecondLength()/1000);
- clip.stop();
- } catch(Exception e) {
- e.printStackTrace();
- }
- } //end func
- } //end class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement