Package com.sun.speech.freetts.audio
Class RawFileAudioPlayer
- java.lang.Object
-
- com.sun.speech.freetts.audio.RawFileAudioPlayer
-
- All Implemented Interfaces:
AudioPlayer
public class RawFileAudioPlayer extends java.lang.Object implements AudioPlayer
Provides an implementation ofAudioPlayerthat sends all audio data to the given file.
-
-
Constructor Summary
Constructors Constructor Description RawFileAudioPlayer()Creates a default audio player for an AudioFileFormat of type WAVE.RawFileAudioPlayer(java.lang.String path)Constructs a NullAudioPlayer
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbegin(int size)Starts the output of a set of datavoidcancel()Cancels all queued output.voidclose()Waits for all audio playback to stop, and closes this AudioPlayer.booleandrain()Waits for all queued audio to be playedbooleanend()Marks the end of a set of datajavax.sound.sampled.AudioFormatgetAudioFormat()Retrieves the audio format for this playerlonggetTime()Gets the amount of played since the last resetTime Currently not supported.floatgetVolume()Returns the current volume.voidpause()Pauses the audio outputvoidreset()Prepares for another batch of output.voidresetTime()Resets the audio clockvoidresume()Resumes audio outputvoidsetAudioFormat(javax.sound.sampled.AudioFormat format)Sets the audio format for this playervoidsetVolume(float volume)Sets the current volume.voidshowMetrics()Shows metrics for this audio playervoidstartFirstSampleTimer()Starts the first sample timerbooleanwrite(byte[] audioData)Writes the given bytes to the audio streambooleanwrite(byte[] bytes, int offset, int size)Writes the given bytes to the audio stream
-
-
-
Constructor Detail
-
RawFileAudioPlayer
public RawFileAudioPlayer() throws java.io.IOExceptionCreates a default audio player for an AudioFileFormat of type WAVE. Reads the "com.sun.speech.freetts.AudioPlayer.baseName" property for the base filename to use, and will produce files of the form <baseName>.raw. The default value for the base name is "freetts".- Throws:
java.io.IOException
-
RawFileAudioPlayer
public RawFileAudioPlayer(java.lang.String path) throws java.io.IOExceptionConstructs a NullAudioPlayer- Throws:
java.io.IOException
-
-
Method Detail
-
setAudioFormat
public void setAudioFormat(javax.sound.sampled.AudioFormat format)
Sets the audio format for this player- Specified by:
setAudioFormatin interfaceAudioPlayer- Parameters:
format- the audio format
-
getAudioFormat
public javax.sound.sampled.AudioFormat getAudioFormat()
Retrieves the audio format for this player- Specified by:
getAudioFormatin interfaceAudioPlayer- Returns:
- the current audio format.
-
cancel
public void cancel()
Cancels all queued output. Current 'write' call will return false- Specified by:
cancelin interfaceAudioPlayer
-
pause
public void pause()
Pauses the audio output- Specified by:
pausein interfaceAudioPlayer
-
reset
public void reset()
Prepares for another batch of output. Larger groups of output (such as all output associated with a single FreeTTSSpeakable) should be grouped between a reset/drain pair.- Specified by:
resetin interfaceAudioPlayer
-
resume
public void resume()
Resumes audio output- Specified by:
resumein interfaceAudioPlayer
-
close
public void close()
Waits for all audio playback to stop, and closes this AudioPlayer.- Specified by:
closein interfaceAudioPlayer
-
getVolume
public float getVolume()
Returns the current volume.- Specified by:
getVolumein interfaceAudioPlayer- Returns:
- the current volume (between 0 and 1)
-
setVolume
public void setVolume(float volume)
Sets the current volume.- Specified by:
setVolumein interfaceAudioPlayer- Parameters:
volume- the current volume (between 0 and 1)
-
write
public boolean write(byte[] audioData)
Writes the given bytes to the audio stream- Specified by:
writein interfaceAudioPlayer- Parameters:
audioData- array of audio data- Returns:
trueof the write completed successfully,falseif the write was cancelled.
-
begin
public void begin(int size)
Starts the output of a set of data- Specified by:
beginin interfaceAudioPlayer- Parameters:
size- the size of data between now and the end
-
end
public boolean end()
Marks the end of a set of data- Specified by:
endin interfaceAudioPlayer- Returns:
trueif the audio was output properly,falseif the output was canceled or interrupted.
-
write
public boolean write(byte[] bytes, int offset, int size)Writes the given bytes to the audio stream- Specified by:
writein interfaceAudioPlayer- Parameters:
bytes- audio data to write to the deviceoffset- the offset into the buffersize- the size into the buffer- Returns:
trueof the write completed successfully,falseif the write was cancelled.
-
startFirstSampleTimer
public void startFirstSampleTimer()
Starts the first sample timer- Specified by:
startFirstSampleTimerin interfaceAudioPlayer
-
drain
public boolean drain()
Waits for all queued audio to be played- Specified by:
drainin interfaceAudioPlayer- Returns:
trueif the audio played to completion,falseif the audio was stopped
-
getTime
public long getTime()
Gets the amount of played since the last resetTime Currently not supported.- Specified by:
getTimein interfaceAudioPlayer- Returns:
- the amount of audio in milliseconds
-
resetTime
public void resetTime()
Resets the audio clock- Specified by:
resetTimein interfaceAudioPlayer
-
showMetrics
public void showMetrics()
Shows metrics for this audio player- Specified by:
showMetricsin interfaceAudioPlayer
-
-