AudioRecord.Builder
public static class AudioRecord.Builder
extends Object
Builder class for AudioRecord
objects. Use this class to configure and create an AudioRecord
instance. By setting the recording source and audio format parameters, you indicate which of those vary from the default behavior on the device.
Here is an example where Builder
is used to specify all AudioFormat
parameters, to be used by a new AudioRecord
instance:
AudioRecord recorder = new AudioRecord.Builder()
.setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION)
.setAudioFormat(new AudioFormat.Builder()
.setEncoding(AudioFormat.ENCODING_PCM_16BIT)
.setSampleRate(32000)
.setChannelMask(AudioFormat.CHANNEL_IN_MONO)
.build())
.setBufferSize(2*minBuffSize)
.build();
If the audio source is not set with setAudioSource(int)
, DEFAULT
is used.
If the audio format is not specified or is incomplete, its channel configuration will be CHANNEL_IN_MONO
, and the encoding will be ENCODING_PCM_16BIT
. The sample rate will depend on the device actually selected for capture and can be queried with getSampleRate()
method.
If the buffer size is not specified with setBufferSizeInBytes(int)
, the minimum buffer size for the source is used.
Summary
Public constructors |
AudioRecord.Builder() Constructs a new Builder with the default values as described above. |
Inherited methods |
From class java.lang.Object
Object |
clone() Creates and returns a copy of this object. |
boolean |
equals(Object obj) Indicates whether some other object is "equal to" this one. |
void |
finalize() Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. |
final Class<?> |
getClass() Returns the runtime class of this Object . |
int |
hashCode() Returns a hash code value for the object. |
final void |
notify() Wakes up a single thread that is waiting on this object's monitor. |
final void |
notifyAll() Wakes up all threads that are waiting on this object's monitor. |
String |
toString() Returns a string representation of the object. |
final void |
wait(long millis, int nanos) Causes the current thread to wait until another thread invokes the notify() method or the notifyAll() method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed. |
final void |
wait(long millis) Causes the current thread to wait until either another thread invokes the notify() method or the notifyAll() method for this object, or a specified amount of time has elapsed. |
final void |
wait() Causes the current thread to wait until another thread invokes the notify() method or the notifyAll() method for this object. |
|
Public constructors
AudioRecord.Builder
AudioRecord.Builder ()
Constructs a new Builder with the default values as described above.
Public methods
build
AudioRecord build ()
Returns |
AudioRecord |
a new AudioRecord instance successfully initialized with all the parameters set on this Builder . |
Throws |
UnsupportedOperationException |
if the parameters set on the Builder were incompatible, or if they are not supported by the device, or if the device was not available. |
setBufferSizeInBytes
AudioRecord.Builder setBufferSizeInBytes (int bufferSizeInBytes)
Sets the total size (in bytes) of the buffer where audio data is written during the recording. New audio data can be read from this buffer in smaller chunks than this size. See getMinBufferSize(int, int, int)
to determine the minimum required buffer size for the successful creation of an AudioRecord instance. Since bufferSizeInBytes may be internally increased to accommodate the source requirements, use getBufferSizeInFrames()
to determine the actual buffer size in frames.
Parameters |
bufferSizeInBytes |
int : a value strictly greater than 0 |