package de.tu.darmstadt.seemoo.ansian.tools.morse;
import android.media.AudioFormat;
import android.media.AudioManager;
import android.media.AudioRecord;
import android.media.AudioTrack;
public class MorseAudioTrack extends AudioTrack {
private short[] sound;
public MorseAudioTrack(int sampleRateInHz, short[] sound) throws IllegalArgumentException {
super(AudioManager.STREAM_MUSIC, sampleRateInHz, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT,
AudioRecord.getMinBufferSize(sampleRateInHz, AudioFormat.CHANNEL_OUT_STEREO,
AudioFormat.ENCODING_PCM_16BIT),
AudioTrack.MODE_STREAM);
this.sound = sound;
}
public void playSound() throws IllegalStateException {
play();
write(sound, 0, sound.length);
stop();
}
}