diff --git a/.classpath b/.classpath
index 5ac3191b..abba7323 100644
--- a/.classpath
+++ b/.classpath
@@ -24,6 +24,5 @@
-
diff --git a/scripts/run_sdrtrunk_windows.bat b/scripts/run_sdrtrunk_windows.bat
index 04553f75..e911942d 100644
--- a/scripts/run_sdrtrunk_windows.bat
+++ b/scripts/run_sdrtrunk_windows.bat
@@ -1 +1 @@
-java -cp "SDRTrunk.jar;libs/*;config/*;images/*" gui.SDRTrunk
\ No newline at end of file
+java -cp "SDRTrunk.jar;*;libs/*;config/*;images/*" gui.SDRTrunk
\ No newline at end of file
diff --git a/src/audio/AudioOutputManager.java b/src/audio/AudioOutputManager.java
new file mode 100644
index 00000000..8777fef6
--- /dev/null
+++ b/src/audio/AudioOutputManager.java
@@ -0,0 +1,64 @@
+package audio;
+
+import javax.sound.sampled.AudioFormat;
+import javax.sound.sampled.AudioSystem;
+import javax.sound.sampled.DataLine;
+import javax.sound.sampled.Line;
+import javax.sound.sampled.Mixer;
+import javax.sound.sampled.SourceDataLine;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class AudioOutputManager
+{
+ private final static Logger mLog =
+ LoggerFactory.getLogger( AudioOutputManager.class );
+
+ public AudioOutputManager()
+ {
+
+ }
+
+ public static void main( String[] args )
+ {
+ Mixer.Info[] mi = AudioSystem.getMixerInfo();
+
+ for (Mixer.Info info : mi)
+ {
+ mLog.debug( "info: " + info );
+
+ Mixer m = AudioSystem.getMixer(info);
+
+ mLog.debug( "mixer " + m );
+
+ Line.Info[] sl = m.getSourceLineInfo();
+
+ for (Line.Info info2 : sl)
+ {
+ mLog.debug( " info: " + info2 );
+
+ try
+ {
+ Line line = AudioSystem.getLine( info2 );
+
+ if (line instanceof SourceDataLine)
+ {
+ SourceDataLine source = (SourceDataLine) line;
+
+ DataLine.Info i = (DataLine.Info) source.getLineInfo();
+
+ for (AudioFormat format : i.getFormats())
+ {
+ mLog.debug( " format: " + format );
+ }
+ }
+ }
+ catch( Exception e )
+ {
+ mLog.error( "errors", e );
+ }
+ }
+ }
+ }
+}
diff --git a/src/decode/am/AMDecoder.java b/src/decode/am/AMDecoder.java
index 1ac93f89..12acac7d 100644
--- a/src/decode/am/AMDecoder.java
+++ b/src/decode/am/AMDecoder.java
@@ -86,8 +86,7 @@ public class AMDecoder extends Decoder
@Override
public IAudioOutput getAudioOutput()
{
- // TODO Auto-generated method stub
- return null;
+ return mAudioOutput;
}
@Override
diff --git a/src/decode/p25/audio/IMBETargetDataLine.java b/src/decode/p25/audio/IMBETargetDataLine.java
index 5a695010..a402400f 100644
--- a/src/decode/p25/audio/IMBETargetDataLine.java
+++ b/src/decode/p25/audio/IMBETargetDataLine.java
@@ -29,18 +29,13 @@ public class IMBETargetDataLine implements TargetDataLine
*/
public IMBETargetDataLine()
{
- mLog.debug( "Constructing instance of TDL" );
}
@Override
public void open( AudioFormat format, int bufferSize )
throws LineUnavailableException
{
- if( format == IMBEAudioFormat.IMBE_AUDIO_FORMAT )
- {
- mLog.debug( "We have now set the state - open:" );
- }
- else
+ if( format != IMBEAudioFormat.IMBE_AUDIO_FORMAT )
{
throw new LineUnavailableException( "Unsupported format" );
}
@@ -49,15 +44,12 @@ public class IMBETargetDataLine implements TargetDataLine
@Override
public void open() throws LineUnavailableException
{
- mLog.debug( "open() invoked" );
-
open( IMBEAudioFormat.IMBE_AUDIO_FORMAT, BUFFER_SIZE );
}
@Override
public void close()
{
- mLog.debug( "Closing the IMBE target data line" );
}
@Override
diff --git a/src/decode/p25/audio/P25AudioOutput.java b/src/decode/p25/audio/P25AudioOutput.java
index 7489a83f..874c138a 100644
--- a/src/decode/p25/audio/P25AudioOutput.java
+++ b/src/decode/p25/audio/P25AudioOutput.java
@@ -140,7 +140,7 @@ public class P25AudioOutput implements IAudioOutput, IAudioTypeListener,
if( mIMBEToPCMConverter != null )
{
- mLog.debug( "IMBE audio converter library loaded successfully" );
+ mLog.info( "IMBE audio converter library loaded successfully" );
try
{
@@ -148,8 +148,6 @@ public class P25AudioOutput implements IAudioOutput, IAudioTypeListener,
if( mOutput != null )
{
- mLog.debug( "Audio output line loaded successfully" );
-
/* Open the audio line with room for two buffers */
mOutput.open( IMBEAudioFormat.PCM_SIGNED_8KHZ_16BITS,
PROCESSED_AUDIO_FRAME_SIZE * 2 );
@@ -184,7 +182,7 @@ public class P25AudioOutput implements IAudioOutput, IAudioTypeListener,
}
catch( IllegalArgumentException iae )
{
- mLog.equals( "couldn't find/load IMBE to PCM audio converter" );
+ mLog.info( "could NOT find/load IMBE audio converter library" );
}
}