com.frinika.project
Class FrinikaAudioServer

java.lang.Object
  extended by com.frinika.project.FrinikaAudioServer
All Implemented Interfaces:
uk.org.toot.audio.server.AudioServer

public class FrinikaAudioServer
extends java.lang.Object
implements uk.org.toot.audio.server.AudioServer

An AudioServer that adapts any other AudioServer to add a non-real-time capability.


Field Summary
 
Fields inherited from interface uk.org.toot.audio.server.AudioServer
THREAD_NAME
 
Constructor Summary
FrinikaAudioServer(uk.org.toot.audio.server.AudioServer server)
           
 
Method Summary
 void closeAudioInput(uk.org.toot.audio.server.IOAudioProcess input)
           
 void closeAudioOutput(uk.org.toot.audio.server.IOAudioProcess output)
           
 uk.org.toot.audio.core.AudioBuffer createAudioBuffer(java.lang.String name)
           
 java.util.List<java.lang.String> getAvailableInputNames()
           
 java.util.List<java.lang.String> getAvailableOutputNames()
           
 int getInputLatencyFrames()
           
 float getLoad()
           
 int getOutputLatencyFrames()
           
 double getOutputLatencyMillis()
           
 float getSampleRate()
           
 int getTotalLatencyFrames()
           
 boolean isRealTime()
           
 boolean isRunning()
           
 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)
           
 void returnAudioServer(java.lang.Object thief)
           
 void setClient(uk.org.toot.audio.server.AudioClient client)
           
 void setRealTime(boolean rt)
           
 void setSampleRate(float sampleRate)
           
 void start()
           
static uk.org.toot.audio.server.AudioServer stealAudioServer(java.lang.Object thief, uk.org.toot.audio.server.AudioClient client)
           
 void stop()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FrinikaAudioServer

public FrinikaAudioServer(uk.org.toot.audio.server.AudioServer server)
Method Detail

getOutputLatencyMillis

public double getOutputLatencyMillis()
Returns:
esitmated output latency

returnAudioServer

public void returnAudioServer(java.lang.Object thief)

setRealTime

public void setRealTime(boolean rt)

isRealTime

public boolean isRealTime()

start

public void start()
Specified by:
start in interface uk.org.toot.audio.server.AudioServer

stop

public void stop()
Specified by:
stop in interface uk.org.toot.audio.server.AudioServer

isRunning

public boolean isRunning()
Specified by:
isRunning in interface uk.org.toot.audio.server.AudioServer

getLoad

public float getLoad()
Specified by:
getLoad in interface uk.org.toot.audio.server.AudioServer

createAudioBuffer

public uk.org.toot.audio.core.AudioBuffer createAudioBuffer(java.lang.String name)
Specified by:
createAudioBuffer in interface uk.org.toot.audio.server.AudioServer

getAvailableOutputNames

public java.util.List<java.lang.String> getAvailableOutputNames()
Specified by:
getAvailableOutputNames in interface uk.org.toot.audio.server.AudioServer

getAvailableInputNames

public java.util.List<java.lang.String> getAvailableInputNames()
Specified by:
getAvailableInputNames in interface uk.org.toot.audio.server.AudioServer

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
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
Throws:
java.lang.Exception

closeAudioOutput

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

closeAudioInput

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

getSampleRate

public float getSampleRate()
Specified by:
getSampleRate in interface uk.org.toot.audio.server.AudioServer

setSampleRate

public void setSampleRate(float sampleRate)

getInputLatencyFrames

public int getInputLatencyFrames()
Specified by:
getInputLatencyFrames in interface uk.org.toot.audio.server.AudioServer

getOutputLatencyFrames

public int getOutputLatencyFrames()
Specified by:
getOutputLatencyFrames in interface uk.org.toot.audio.server.AudioServer

getTotalLatencyFrames

public int getTotalLatencyFrames()
Specified by:
getTotalLatencyFrames in interface uk.org.toot.audio.server.AudioServer

setClient

public void setClient(uk.org.toot.audio.server.AudioClient client)
Specified by:
setClient in interface uk.org.toot.audio.server.AudioServer

stealAudioServer

public static uk.org.toot.audio.server.AudioServer stealAudioServer(java.lang.Object thief,
                                                                    uk.org.toot.audio.server.AudioClient client)