public class SingleFileAudioPlayer extends Object implements AudioPlayer
Modifier and Type | Field and Description |
---|---|
private String |
baseName |
private int |
curIndex |
private AudioFormat |
currentFormat |
private static Logger |
LOGGER
Logger instance.
|
private byte[] |
outputData |
private Vector<InputStream> |
outputList |
private AudioFileFormat.Type |
outputType |
private int |
totBytes |
Constructor and Description |
---|
SingleFileAudioPlayer()
Creates a default audio player for an AudioFileFormat of type
WAVE.
|
SingleFileAudioPlayer(String baseName,
AudioFileFormat.Type type)
Constructs a FileAudioPlayer
|
Modifier and Type | Method and Description |
---|---|
void |
begin(int size)
Starts the output of a set of data.
|
void |
cancel()
Cancels currently playing audio
|
void |
close()
Closes this audio player
|
boolean |
drain()
Waits for all queued audio to be played
|
boolean |
end()
Marks the end of a set of data.
|
AudioFormat |
getAudioFormat()
Gets the audio format for this player
|
long |
getTime()
Gets the amount of played since the last mark
|
float |
getVolume()
Returns the current volume.
|
void |
pause()
Pauses audio output
|
void |
reset()
Prepares for another batch of output.
|
void |
resetTime()
Resets the audio clock
|
void |
resume()
Resumes audio output
|
void |
setAudioFormat(AudioFormat format)
Sets the audio format for this player
|
void |
setVolume(float volume)
Sets the current volume.
|
void |
showMetrics()
Shows metrics for this audio player
|
void |
startFirstSampleTimer()
Starts the first sample timer
|
String |
toString()
Returns the name of this audioplayer
|
boolean |
write(byte[] audioData)
Writes the given bytes to the audio stream
|
boolean |
write(byte[] bytes,
int offset,
int size)
Writes the given bytes to the audio stream
|
private AudioFormat currentFormat
private byte[] outputData
private int curIndex
private int totBytes
private AudioFileFormat.Type outputType
private Vector<InputStream> outputList
public SingleFileAudioPlayer(String baseName, AudioFileFormat.Type type)
baseName
- the base name of the audio filetype
- the type of audio outputpublic SingleFileAudioPlayer()
public void setAudioFormat(AudioFormat format)
setAudioFormat
in interface AudioPlayer
format
- the audio formatUnsupportedOperationException
- if the line cannot be opened with
the given formatpublic AudioFormat getAudioFormat()
getAudioFormat
in interface AudioPlayer
public void pause()
pause
in interface AudioPlayer
public void resume()
resume
in interface AudioPlayer
public void cancel()
cancel
in interface AudioPlayer
public void reset()
reset
in interface AudioPlayer
public void startFirstSampleTimer()
startFirstSampleTimer
in interface AudioPlayer
public void close() throws IOException
close
in interface AudioPlayer
IOException
- error closing the audio playerpublic float getVolume()
getVolume
in interface AudioPlayer
public void setVolume(float volume)
setVolume
in interface AudioPlayer
volume
- the current volume (between 0 and 1)public void begin(int size)
begin
in interface AudioPlayer
size
- the size of data between now and the endpublic boolean end()
end
in interface AudioPlayer
public boolean drain()
drain
in interface AudioPlayer
public long getTime()
getTime
in interface AudioPlayer
public void resetTime()
resetTime
in interface AudioPlayer
public boolean write(byte[] audioData)
write
in interface AudioPlayer
audioData
- audio data to write to the devicetrue
of the write completed successfully,
false
if the write was cancelled.public boolean write(byte[] bytes, int offset, int size)
write
in interface AudioPlayer
bytes
- audio data to write to the deviceoffset
- the offset into the buffersize
- the size into the buffertrue
of the write completed successfully,
false
if the write was cancelled.public void showMetrics()
showMetrics
in interface AudioPlayer
WebARTS Library Licensed Under the GNU - General Public License. Other Libraries licensed under their respective Open Source Licenses