Base class for CODECs that can convert to and from PCM. More...
Public Member Functions | |
abstract void | convertFromPCM (byte[] in, byte[] out) |
Encodes data to PCM, i.e. | |
abstract void | convertToPCM (byte[] in, byte[] out) |
Decodes data from PCM, i.e. | |
abstract int | getVoicePduSubclass () |
Gets the VoicePDU subclass attribute of the AbstractAudio object. | |
void | stopRecording () |
Stops the recorder - but don't throw it away. | |
long | startRecording () |
Starts the recorder (returning the time) | |
void | startPlay () |
Starts the player. | |
void | stopPlay () |
Stops the player. | |
void | startRinging () |
Starts ringing signal. | |
void | stopRinging () |
Stops ringing signal. | |
void | writeBuffered (byte[] buf, long timestamp) throws IOException |
Plays the sample given (AudioInterface.getSampleSize() bytes) assuming that it's timestamp is long. | |
long | readWithTimestamp (byte[] buf) throws IOException |
Reads from the microphone, using the buffer provided, but only filling getSampSize() bytes. | |
void | writeDirectly (byte[] f) |
Writes directly to source line without buffering. | |
void | setAudioSender (AudioInterface.Packetizer as) |
Sets the audioSender attribute of the AbstractAudio object. | |
void | cleanUp () |
Cleans up resources used by the interface. | |
AudioInterface | getByFormat (Integer format) |
Creates new instance of the interface by choosing specified CODEC format. | |
Protected Attributes | |
AudioInterfacePCM | audio |
Instance of the audio interface that provides access to PCM (signed 16-bit linear) samples. | |
byte[] | outputPcmBuf |
Output PCM buffer (converted from CODEC) written to audio interface. | |
byte[] | inputPcmBuf |
Input PCM buffer (converted to CODEC) read from audio interface. |
Base class for CODECs that can convert to and from PCM.
The class wraps underlying AudioInterfacePCM that can find and talk to PCM hardware. Derived classes should only implement encoding/decoding part from/to PCM (methods AbstractCODEC.convertFromPCM() and AbstractCODEC.convertToPCM()).
Definition at line 12 of file AbstractCODEC.java.
void audio.AbstractCODEC.cleanUp | ( | ) | [virtual] |
Cleans up resources used by the interface.
Implements audio.AudioInterface.
Definition at line 136 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.cleanUp().
{ audio.cleanUp (); }
abstract void audio.AbstractCODEC.convertFromPCM | ( | byte[] | in, |
byte[] | out | ||
) | [pure virtual] |
Encodes data to PCM, i.e.
converts samples from PCM to CODEC format.
Implemented in audio.AudioCodecAlaw, and audio.AudioCodecUlaw.
Referenced by audio.AbstractCODEC.readWithTimestamp().
abstract void audio.AbstractCODEC.convertToPCM | ( | byte[] | in, |
byte[] | out | ||
) | [pure virtual] |
Decodes data from PCM, i.e.
converts samples from CODEC to PCM format.
Implemented in audio.AudioCodecAlaw, and audio.AudioCodecUlaw.
Referenced by audio.AbstractCODEC.writeBuffered(), and audio.AbstractCODEC.writeDirectly().
AudioInterface audio.AbstractCODEC.getByFormat | ( | Integer | format ) | [virtual] |
Creates new instance of the interface by choosing specified CODEC format.
Implements audio.AudioInterface.
Definition at line 144 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.getByFormat().
{ return audio.getByFormat(format); }
abstract int audio.AbstractCODEC.getVoicePduSubclass | ( | ) | [pure virtual] |
Gets the VoicePDU subclass attribute of the AbstractAudio object.
Implements audio.AudioInterface.
Implemented in audio.AudioCodecAlaw, and audio.AudioCodecUlaw.
long audio.AbstractCODEC.readWithTimestamp | ( | byte[] | buf ) | throws IOException [virtual] |
Reads from the microphone, using the buffer provided, but only filling getSampSize() bytes.
Returns the time-stamp of the sample from the audio clock.
Implements audio.AudioInterface.
Definition at line 108 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, audio.AbstractCODEC.convertFromPCM(), audio.AbstractCODEC.inputPcmBuf, and audio.AudioInterfacePCM.readWithTimestamp().
{ long ret = audio.readWithTimestamp( inputPcmBuf ); convertFromPCM( inputPcmBuf, buf ); return ret; }
void audio.AbstractCODEC.setAudioSender | ( | AudioInterface.Packetizer | as ) | [virtual] |
Sets the audioSender attribute of the AbstractAudio object.
Implements audio.AudioInterface.
Definition at line 128 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.setAudioSender().
{ audio.setAudioSender( as ); }
void audio.AbstractCODEC.startPlay | ( | ) | [virtual] |
Starts the player.
Implements audio.AudioInterface.
Definition at line 64 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.startPlay().
{ audio.startPlay(); }
long audio.AbstractCODEC.startRecording | ( | ) | [virtual] |
Starts the recorder (returning the time)
Implements audio.AudioInterface.
Definition at line 56 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.startRecording().
{ return audio.startRecording (); }
void audio.AbstractCODEC.startRinging | ( | ) | [virtual] |
Starts ringing signal.
Implements audio.AudioInterface.
Definition at line 80 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.startRinging().
{ audio.startRinging (); }
void audio.AbstractCODEC.stopPlay | ( | ) | [virtual] |
Stops the player.
Implements audio.AudioInterface.
Definition at line 72 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.stopPlay().
{ audio.stopPlay(); }
void audio.AbstractCODEC.stopRecording | ( | ) | [virtual] |
Stops the recorder - but don't throw it away.
Implements audio.AudioInterface.
Definition at line 48 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.stopRecording().
{ audio.stopRecording (); }
void audio.AbstractCODEC.stopRinging | ( | ) | [virtual] |
Stops ringing signal.
Implements audio.AudioInterface.
Definition at line 88 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, and audio.AudioInterfacePCM.stopRinging().
{ audio.stopRinging (); }
void audio.AbstractCODEC.writeBuffered | ( | byte[] | buf, |
long | timestamp | ||
) | throws IOException [virtual] |
Plays the sample given (AudioInterface.getSampleSize() bytes) assuming that it's timestamp is long.
Implements audio.AudioInterface.
Definition at line 97 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, audio.AbstractCODEC.convertToPCM(), audio.AbstractCODEC.outputPcmBuf, and audio.AudioInterfacePCM.writeBuffered().
{ convertToPCM( buf, outputPcmBuf ); audio.writeBuffered( outputPcmBuf, timestamp ); }
void audio.AbstractCODEC.writeDirectly | ( | byte[] | f ) | [virtual] |
Writes directly to source line without buffering.
Implements audio.AudioInterface.
Definition at line 118 of file AbstractCODEC.java.
References audio.AbstractCODEC.audio, audio.AbstractCODEC.convertToPCM(), and audio.AudioInterfacePCM.writeDirectly().
{ byte[] tf = new byte[ 2 * f.length ]; convertToPCM( f, tf ); audio.writeDirectly( tf ); }
AudioInterfacePCM audio.AbstractCODEC.audio [protected] |
Instance of the audio interface that provides access to PCM (signed 16-bit linear) samples.
Definition at line 33 of file AbstractCODEC.java.
Referenced by audio.AudioCodecAlaw.AudioCodecAlaw(), audio.AudioCodecUlaw.AudioCodecUlaw(), audio.AbstractCODEC.cleanUp(), audio.AbstractCODEC.getByFormat(), audio.AbstractCODEC.readWithTimestamp(), audio.AbstractCODEC.setAudioSender(), audio.AbstractCODEC.startPlay(), audio.AbstractCODEC.startRecording(), audio.AbstractCODEC.startRinging(), audio.AbstractCODEC.stopPlay(), audio.AbstractCODEC.stopRecording(), audio.AbstractCODEC.stopRinging(), audio.AbstractCODEC.writeBuffered(), and audio.AbstractCODEC.writeDirectly().
byte [] audio.AbstractCODEC.inputPcmBuf [protected] |
Input PCM buffer (converted to CODEC) read from audio interface.
Definition at line 43 of file AbstractCODEC.java.
Referenced by audio.AudioCodecAlaw.AudioCodecAlaw(), audio.AudioCodecUlaw.AudioCodecUlaw(), and audio.AbstractCODEC.readWithTimestamp().
byte [] audio.AbstractCODEC.outputPcmBuf [protected] |
Output PCM buffer (converted from CODEC) written to audio interface.
Definition at line 38 of file AbstractCODEC.java.
Referenced by audio.AudioCodecAlaw.AudioCodecAlaw(), audio.AudioCodecUlaw.AudioCodecUlaw(), and audio.AbstractCODEC.writeBuffered().