AudioTrack.Builder Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Builder class for AudioTrack objects.
[Android.Runtime.Register("android/media/AudioTrack$Builder", ApiSince=23, DoNotGenerateAcw=true)]
public class AudioTrack.Builder : Java.Lang.Object
[<Android.Runtime.Register("android/media/AudioTrack$Builder", ApiSince=23, DoNotGenerateAcw=true)>]
type AudioTrack.Builder = class
inherit Object
- Inheritance
- Attributes
Remarks
Builder class for AudioTrack objects. Use this class to configure and create an AudioTrack instance. By setting audio attributes 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 AudioTrack instance:
AudioTrack player = new AudioTrack.Builder()
.setAudioAttributes(new AudioAttributes.Builder()
.setUsage(AudioAttributes.USAGE_ALARM)
.setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
.build())
.setAudioFormat(new AudioFormat.Builder()
.setEncoding(AudioFormat.ENCODING_PCM_16BIT)
.setSampleRate(44100)
.setChannelMask(AudioFormat.CHANNEL_OUT_STEREO)
.build())
.setBufferSizeInBytes(minBuffSize)
.build();
If the audio attributes are not set with #setAudioAttributes(AudioAttributes), attributes comprising AudioAttributes#USAGE_MEDIA will be used. <br>If the audio format is not specified or is incomplete, its channel configuration will be AudioFormat#CHANNEL_OUT_STEREO and the encoding will be AudioFormat#ENCODING_PCM_16BIT. The sample rate will depend on the device actually selected for playback and can be queried with #getSampleRate() method. <br>If the buffer size is not specified with #setBufferSizeInBytes(int), and the mode is AudioTrack#MODE_STREAM, the minimum buffer size is used. <br>If the transfer mode is not specified with #setTransferMode(int), MODE_STREAM will be used. <br>If the session ID is not specified with #setSessionId(int), a new one will be generated. <br>Offload is false by default.
Java documentation for android.media.AudioTrack.Builder.
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.
Constructors
| Name | Description |
|---|---|
| AudioTrack.Builder() |
Constructs a new Builder with the default values as described above. |
| AudioTrack.Builder(IntPtr, JniHandleOwnership) | |
Properties
| Name | Description |
|---|---|
| Class |
Returns the runtime class of this |
| Handle |
The handle to the underlying Android instance. (Inherited from Object) |
| JniIdentityHashCode |
Gets the identity hash code assigned to this Java peer by the interop runtime. (Inherited from Object) |
| JniManagedPeerState | (Inherited from JavaObject) |
| JniPeerMembers | |
| PeerReference |
Gets the JNI object reference for this Java peer. (Inherited from Object) |
| ThresholdClass | |
| ThresholdType | |
Methods
| Name | Description |
|---|---|
| Build() |
Builds an |
| Clone() |
Creates and returns a copy of this object. (Inherited from Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) | (Inherited from JavaObject) |
| Dispose() |
Releases the resources held by this Java peer. (Inherited from Object) |
| Dispose(Boolean) |
Releases the resources held by this Java peer. (Inherited from Object) |
| DisposeUnlessReferenced() | (Inherited from JavaObject) |
| Equals(Object) | (Inherited from JavaObject) |
| Equals(Object) |
Indicates whether some other object is "equal to" this one. (Inherited from Object) |
| GetHashCode() |
Returns a hash code value for the object. (Inherited from Object) |
| JavaFinalize() |
Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. (Inherited from Object) |
| Notify() |
Wakes up a single thread that is waiting on this object's monitor. (Inherited from Object) |
| NotifyAll() |
Wakes up all threads that are waiting on this object's monitor. (Inherited from Object) |
| SetAudioAttributes(AudioAttributes) |
Sets the AudioAttributes. |
| SetAudioFormat(AudioFormat) |
Sets the format of the audio data to be played by the AudioTrack. |
| SetBufferSizeInBytes(Int32) |
Sets the total size (in bytes) of the buffer where audio data is read from for playback. |
| SetContext(Context) |
Sets the context the track belongs to. |
| SetEncapsulationMode(Int32) |
Sets the encapsulation mode. |
| SetHandle(IntPtr, JniHandleOwnership) |
Sets the Handle property. (Inherited from Object) |
| SetOffloadedPlayback(Boolean) |
Sets whether this track will play through the offloaded audio path. |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) | (Inherited from JavaObject) |
| SetPerformanceMode(AudioTrackPerformanceMode) |
Sets the AudioTrack performance mode. |
| SetSessionId(Int32) |
Sets the session ID the AudioTrack will be attached to. |
| SetTransferMode(AudioTrackMode) |
Sets the mode under which buffers of audio data are transferred from the AudioTrack to the framework. |
| ToArray<T>() |
Creates a managed array from this Java array wrapper. (Inherited from Object) |
| ToString() |
Returns a string representation of the object. (Inherited from Object) |
| UnregisterFromRuntime() |
Unregisters this Java peer from the interop runtime. (Inherited from Object) |
| Wait() |
Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>. (Inherited from Object) |
| Wait(Int64, Int32) |
Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed. (Inherited from Object) |
| Wait(Int64) |
Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed. (Inherited from Object) |
Explicit Interface Implementations
| Name | Description |
|---|---|
| IJavaPeerable.Disposed() | (Inherited from JavaObject) |
| IJavaPeerable.Finalized() | (Inherited from JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock | (Inherited from JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) | (Inherited from JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) | (Inherited from JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) | (Inherited from JavaObject) |
Extension Methods
| Name | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Gets the JNI name of the type of the instance |
| JavaAs<TResult>(IJavaPeerable) |
Try to coerce |
| JavaCast<TResult>(IJavaObject) |
Performs an Android runtime-checked type conversion. |
| JavaCast<TResult>(IJavaObject) | |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Try to coerce |