public class SpeexEncoder
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private Bits |
bits |
private int |
channels |
private Encoder |
encoder |
private int |
frameSize |
private float[] |
rawData |
private int |
sampleRate |
static java.lang.String |
VERSION
Version of the Speex Encoder
|
Constructor and Description |
---|
SpeexEncoder()
Constructor
|
Modifier and Type | Method and Description |
---|---|
int |
getChannels()
Returns the number of channels.
|
Encoder |
getEncoder()
Returns the Encoder being used (Narrowband, Wideband or Ultrawideband).
|
int |
getFrameSize()
Returns the size of a frame.
|
int |
getProcessedData(byte[] data,
int offset)
Pull the decoded data out into a byte array at the given offset
and returns the number of bytes of encoded data just read.
|
int |
getProcessedDataByteSize()
Returns the number of bytes of encoded data ready to be read.
|
int |
getSampleRate()
Returns the sample rate.
|
boolean |
init(int mode,
int quality,
int sampleRate,
int channels)
Initialisation
|
static void |
mapPcm16bitLittleEndian2Float(byte[] pcm16bitBytes,
int offsetInput,
float[] samples,
int offsetOutput,
int length)
Converts a 16 bit linear PCM stream (in the form of a byte array)
into a floating point PCM stream (in the form of an float array).
|
boolean |
processData(byte[] data,
int offset,
int len)
This is where the actual encoding takes place
|
boolean |
processData(float[] data,
int numSamples)
Encode an array of floats.
|
boolean |
processData(short[] data,
int offset,
int numShorts)
Encode an array of shorts.
|
public static final java.lang.String VERSION
private Encoder encoder
private Bits bits
private float[] rawData
private int sampleRate
private int channels
private int frameSize
public boolean init(int mode, int quality, int sampleRate, int channels)
mode
- the mode of the encoder (0=NB, 1=WB, 2=UWB).quality
- the quality setting of the encoder (between 0 and 10).sampleRate
- the number of samples per second.channels
- the number of audio channels (1=mono, 2=stereo, ...).public Encoder getEncoder()
public int getSampleRate()
public int getChannels()
public int getFrameSize()
public int getProcessedData(byte[] data, int offset)
data
- offset
- public int getProcessedDataByteSize()
public boolean processData(byte[] data, int offset, int len)
data
- offset
- len
- public boolean processData(short[] data, int offset, int numShorts)
data
- offset
- numShorts
- public boolean processData(float[] data, int numSamples)
data
- numSamples
- public static void mapPcm16bitLittleEndian2Float(byte[] pcm16bitBytes, int offsetInput, float[] samples, int offsetOutput, int length)
pcm16bitBytes
- - byte array of linear 16-bit PCM formated audio.offsetInput
- samples
- - float array to receive the 16-bit linear audio samples.offsetOutput
- length
- Copyright © 1999-2004 Wimba S.A. All Rights Reserved.