From d8afc9f5c2aa97a96ca326c0178a7fc9577afaaf Mon Sep 17 00:00:00 2001 From: Przemyslaw Date: Mon, 1 Apr 2024 09:02:22 +0200 Subject: Init --- src/wavResource.java | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 src/wavResource.java (limited to 'src/wavResource.java') diff --git a/src/wavResource.java b/src/wavResource.java new file mode 100644 index 0000000..5db3e98 --- /dev/null +++ b/src/wavResource.java @@ -0,0 +1,71 @@ + +package src; + +import java.io.IOException; +import java.io.InputStream; +import java.io.PrintStream; +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.io.BufferedInputStream; +import java.io.FileInputStream; +import java.io.File; + +import java.util.*; +import java.lang.*; + +import javax.sound.sampled.AudioInputStream; +import javax.sound.sampled.AudioSystem; +import javax.sound.sampled.Clip; +import javax.sound.sampled.LineUnavailableException; + + +public class wavResource { + AudioInputStream ais; + Clip clip; + boolean running=false; + public boolean PlayFlag=false; + final int BUFFER_SIZE=128000; + + public void wavResource() + { + + } + public synchronized void play(final String filename){ + new Thread(new Runnable() { + public void run() { + try{ + InputStream is = getClass().getResourceAsStream(filename); + InputStream bIn = new BufferedInputStream(is); + ais = AudioSystem.getAudioInputStream(bIn); + + if (PlayFlag) { // to musi byc + clip = AudioSystem.getClip(); + clip.open(ais); + clip.start(); + ais.mark(BUFFER_SIZE); // po odkomentowaniu clip ustawiony na poczatek + ais.reset(); + PlayFlag=false; + } + } catch (Exception e) { + e.printStackTrace(); + } //catch (IOException e){ + + + // } + + } + }).start(); + } + public void stop(){ + if (clip != null) { + clip.stop(); + clip.drain(); + clip.close(); + PlayFlag=false; + //clip.flush(); + //clip.setFramePosition(0); + //System.out.println("Jestem w stopOk"); + } + } + +} -- cgit v1.2.3