Skip to content

Commit

Permalink
AudioSink: interface add isAudioSinkAvailable
Browse files Browse the repository at this point in the history
Signed-off-by: Xerxes Rånby <xerxes@zafena.se>
  • Loading branch information
xranby committed Jun 24, 2013
1 parent 11e27bf commit 6509c31
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 6 deletions.
3 changes: 2 additions & 1 deletion src/jogl/classes/jogamp/opengl/openal/av/ALAudioSink.java
Expand Up @@ -161,7 +161,8 @@ public int getDataAvailable() {
return (NUM_BUFFERS-val[0])*4096;
}

public static boolean isAvailable() {
@Override
public boolean isAudioSinkAvailable() {
return available;
}
}
2 changes: 2 additions & 0 deletions src/jogl/classes/jogamp/opengl/util/av/AudioSink.java
Expand Up @@ -2,6 +2,8 @@

public interface AudioSink {

boolean isAudioSinkAvailable();

int getDataAvailable();

boolean isDataAvailable(int data_size);
Expand Down
Expand Up @@ -71,7 +71,8 @@ public boolean isDataAvailable(int data_size) {
return auline.available()>=data_size;
}

public static boolean isAvailable() {
@Override
public boolean isAudioSinkAvailable() {
return available;
}

Expand Down
5 changes: 5 additions & 0 deletions src/jogl/classes/jogamp/opengl/util/av/NullAudioSink.java
Expand Up @@ -15,4 +15,9 @@ public boolean isDataAvailable(int data_size) {
@Override
public void writeData(byte[] sampleData, int data_size) {
}

@Override
public boolean isAudioSinkAvailable() {
return true;
}
}
Expand Up @@ -130,11 +130,12 @@ public class FFMPEGMediaPlayer extends EGLMediaPlayerImpl {
System.err.println("LIB_AV Codec : "+avCodecVersion);
initIDs0();
available = true;
audioSink = new NullAudioSink();
if(ALAudioSink.isAvailable()) {
audioSink = new ALAudioSink();
} else if(JavaSoundAudioSink.isAvailable()) {
audioSink = new ALAudioSink();
if(!audioSink.isAudioSinkAvailable()) {
audioSink = new JavaSoundAudioSink();
if(!audioSink.isAudioSinkAvailable()) {
audioSink = new NullAudioSink();
}
}
maxAvailableAudio = audioSink.getDataAvailable();

Expand Down

0 comments on commit 6509c31

Please sign in to comment.