uk.org.toot.audio.server
Class MultiIOJavaSoundAudioServer

java.lang.Object
  extended by uk.org.toot.audio.server.AbstractAudioServer
      extended by uk.org.toot.audio.server.TimedAudioServer
          extended by com.frinika.toot.PriorityAudioServer
              extended by uk.org.toot.audio.server.JavaSoundAudioServer
                  extended by uk.org.toot.audio.server.MultiIOJavaSoundAudioServer
All Implemented Interfaces:
java.lang.Runnable, uk.org.toot.audio.server.AudioServer, ExtendedAudioServer

public class MultiIOJavaSoundAudioServer
extends JavaSoundAudioServer

Provides a layer which allows multiple IO open/close. real IO is closed when open+closed count =0


Nested Class Summary
 
Nested classes/interfaces inherited from class uk.org.toot.audio.server.JavaSoundAudioServer
JavaSoundAudioServer.JavaSoundAudioInput, JavaSoundAudioServer.JavaSoundAudioLine, JavaSoundAudioServer.JavaSoundAudioOutput
 
Field Summary
 
Fields inherited from class uk.org.toot.audio.server.TimedAudioServer
hasStopped, isRunning, maximumLatencyMilliseconds, stableCount, stableThreshold, started, syncLine
 
Fields inherited from class uk.org.toot.audio.server.AbstractAudioServer
bufferFrames, endTimeNanos, startTimeNanos
 
Fields inherited from interface uk.org.toot.audio.server.AudioServer
THREAD_NAME
 
Constructor Summary
MultiIOJavaSoundAudioServer()
           
 
Method Summary
 void closeAudioInput(uk.org.toot.audio.server.IOAudioProcess input)
           
 void closeAudioOutput(uk.org.toot.audio.server.IOAudioProcess output)
           
 uk.org.toot.audio.server.IOAudioProcess openAudioInput(java.lang.String name, java.lang.String label)
           
 uk.org.toot.audio.server.IOAudioProcess openAudioOutput(java.lang.String name, java.lang.String label)
           
 
Methods inherited from class uk.org.toot.audio.server.JavaSoundAudioServer
checkFormat, controlGained, createByteBuffer, getAvailableInputNames, getAvailableOutputNames, getConfigKey, getInputLatencyFrames, getInputs, getOutputLatencyFrames, getOutputs, getSampleRate, getSampleSizeInBits, inputForName, minimiseInputLatency, outputForName, resizeBuffers, setLatencyMilliseconds, setSampleRate, setSampleSizeInBits, startImpl, stopImpl
 
Methods inherited from class com.frinika.toot.PriorityAudioServer
assertPriority, getPriority, requestPriority, work
 
Methods inherited from class uk.org.toot.audio.server.TimedAudioServer
calculateBufferFrames, canStart, getActualLatencyMilliseconds, getBufferMilliseconds, getBufferUnderRuns, getLatencyMilliseconds, getLowestLatencyMilliseconds, getMaximumLatencyMilliseconds, getMinimumLatencyMilliseconds, getTotalLatencyFrames, isRunning, reset, resetMetrics, run, setBufferMilliseconds, sync
 
Methods inherited from class uk.org.toot.audio.server.AbstractAudioServer
_createAudioBuffer, checkStart, createAudioBuffer, getBufferFrames, getLoad, removeAudioBuffer, setClient, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface uk.org.toot.audio.server.AudioServer
createAudioBuffer, getLoad, setClient, start, stop
 

Constructor Detail

MultiIOJavaSoundAudioServer

public MultiIOJavaSoundAudioServer()
Method Detail

openAudioOutput

public uk.org.toot.audio.server.IOAudioProcess openAudioOutput(java.lang.String name,
                                                               java.lang.String label)
                                                        throws java.lang.Exception
Specified by:
openAudioOutput in interface uk.org.toot.audio.server.AudioServer
Overrides:
openAudioOutput in class JavaSoundAudioServer
Throws:
java.lang.Exception

openAudioInput

public uk.org.toot.audio.server.IOAudioProcess openAudioInput(java.lang.String name,
                                                              java.lang.String label)
                                                       throws java.lang.Exception
Specified by:
openAudioInput in interface uk.org.toot.audio.server.AudioServer
Overrides:
openAudioInput in class JavaSoundAudioServer
Throws:
java.lang.Exception

closeAudioInput

public void closeAudioInput(uk.org.toot.audio.server.IOAudioProcess input)
Specified by:
closeAudioInput in interface uk.org.toot.audio.server.AudioServer
Overrides:
closeAudioInput in class JavaSoundAudioServer

closeAudioOutput

public void closeAudioOutput(uk.org.toot.audio.server.IOAudioProcess output)
Specified by:
closeAudioOutput in interface uk.org.toot.audio.server.AudioServer
Overrides:
closeAudioOutput in class JavaSoundAudioServer