diff options
author | Skylion007 <skylion.aaron@gmail.com> | 2013-10-06 23:45:41 +0400 |
---|---|---|
committer | Skylion007 <skylion.aaron@gmail.com> | 2013-10-06 23:45:41 +0400 |
commit | f7c5335a7074201d878ca90215fc8c672862f499 (patch) | |
tree | d5b33c6ecabe55fdb68c3fde6e34c40c4021b434 | |
parent | 4629a5408d09ef0bc2ab40eca48eb44ae9deed69 (diff) |
Bug-fix for volume collection.
-rw-r--r-- | src/com/darkprograms/speech/microphone/Microphone.java | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/com/darkprograms/speech/microphone/Microphone.java b/src/com/darkprograms/speech/microphone/Microphone.java index bae1366..e2003da 100644 --- a/src/com/darkprograms/speech/microphone/Microphone.java +++ b/src/com/darkprograms/speech/microphone/Microphone.java @@ -142,8 +142,10 @@ public class Microphone { File file = new File(audioFile); setAudioFile(file); - DataLine.Info dataLineInfo = new DataLine.Info(TargetDataLine.class, getAudioFormat()); - setTargetDataLine((TargetDataLine) AudioSystem.getLine(dataLineInfo)); + if(getTargetDataLine()==null){ + DataLine.Info dataLineInfo = new DataLine.Info(TargetDataLine.class, getAudioFormat()); + setTargetDataLine((TargetDataLine) AudioSystem.getLine(dataLineInfo)); + } //Get Audio @@ -180,8 +182,8 @@ public class Microphone { if(getTargetDataLine()==null){ initTargetDataLine(); } - if(!getTargetDataLine().isOpen()){ - try { + if(!getTargetDataLine().isOpen() && !getTargetDataLine().isRunning() && !getTargetDataLine().isActive()){ + try { setState(CaptureState.PROCESSING_AUDIO); getTargetDataLine().open(getAudioFormat()); getTargetDataLine().start(); |