diff options
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/util/av/NullAudioSink.java')
-rw-r--r-- | src/jogl/classes/jogamp/opengl/util/av/NullAudioSink.java | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/src/jogl/classes/jogamp/opengl/util/av/NullAudioSink.java b/src/jogl/classes/jogamp/opengl/util/av/NullAudioSink.java new file mode 100644 index 000000000..8d3dbdf44 --- /dev/null +++ b/src/jogl/classes/jogamp/opengl/util/av/NullAudioSink.java @@ -0,0 +1,129 @@ +package jogamp.opengl.util.av; + + +import java.nio.ByteBuffer; + +import com.jogamp.opengl.util.av.AudioSink; + +public class NullAudioSink implements AudioSink { + + @Override + public boolean isInitialized() { + return true; + } + + private volatile float playSpeed = 1.0f; + private volatile boolean playRequested = false; + private float volume = 1.0f; + + @Override + public final float getPlaySpeed() { return playSpeed; } + + @Override + public final boolean setPlaySpeed(float rate) { + if( Math.abs(1.0f - rate) < 0.01f ) { + rate = 1.0f; + } + playSpeed = rate; + return true; + } + + @Override + public final float getVolume() { + // FIXME + return volume; + } + + @Override + public final boolean setVolume(float v) { + // FIXME + volume = v; + return true; + } + + @Override + public AudioFormat getPreferredFormat() { + return DefaultFormat; + } + + @Override + public final int getMaxSupportedChannels() { + return 8; + } + + @Override + public final boolean isSupported(AudioFormat format) { + return true; + } + + @Override + public boolean init(AudioFormat requestedFormat, float frameDuration, int initialQueueSize, int queueGrowAmount, int queueLimit) { + return true; + } + + @Override + public boolean isPlaying() { + return playRequested; + } + + @Override + public void play() { + playRequested = true; + } + + @Override + public void pause() { + playRequested = false; + } + + @Override + public void flush() { + } + + @Override + public void destroy() { + } + + @Override + public final int getEnqueuedFrameCount() { + return 0; + } + + @Override + public int getFrameCount() { + return 0; + } + + @Override + public int getQueuedFrameCount() { + return 0; + } + + @Override + public int getQueuedByteCount() { + return 0; + } + + @Override + public int getQueuedTime() { + return 0; + } + + @Override + public final int getPTS() { return 0; } + + @Override + public int getFreeFrameCount() { + return 1; + } + + @Override + public AudioFrame enqueueData(AudioDataFrame audioDataFrame) { + return null; + } + + @Override + public AudioFrame enqueueData(int pts, ByteBuffer bytes, int byteCount) { + return null; + } +} |