# Print output for @column tags ?>
Developers

- Design
- Develop
- Distribute

Developer Console

## Most visited

## Recently visited

## Results for

Summary: Ctors | Methods | Inherited Methods

# AudioTrack.StreamEventCallback

`public static abstract class AudioTrack.StreamEventCallback`
`extends Object` ``

java.lang.Object
↳ | android.media.AudioTrack.StreamEventCallback

Abstract class to receive event notifications about the stream playback in offloaded mode. See `AudioTrack#registerStreamEventCallback(Executor, StreamEventCallback)` to register the callback on the given `AudioTrack` instance.

## Summary

### Public constructors
`StreamEventCallback()`

### Public methods
`void` | `onDataRequest(AudioTrack track, int sizeInFrames)` Called when more audio data can be written without blocking on an offloaded track.
`void` | `onPresentationEnded(AudioTrack track)` Called when all the buffers of an offloaded track that were queued in the audio system (e.g. the combination of the Android audio framework and the device's audio hardware) have been played after `AudioTrack#stop()` has been called.
`void` | `onTearDown(AudioTrack track)` Called when an offloaded track is no longer valid and has been discarded by the system.

### 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 timeout, 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 timeout)` 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

### StreamEventCallback

    public StreamEventCallback ()

## Public methods

### onDataRequest

    public void onDataRequest (AudioTrack track,
                    int sizeInFrames)

Called when more audio data can be written without blocking on an offloaded track.

Parameters
`track` | `AudioTrack`: the `AudioTrack` on which the event happened. This value cannot be `null`.
`sizeInFrames` | `int`: the number of frames available to write without blocking. Note that the frame size of a compressed stream is 1 byte. Value is 0 or greater

### onPresentationEnded

    public void onPresentationEnded (AudioTrack track)

Called when all the buffers of an offloaded track that were queued in the audio system (e.g. the combination of the Android audio framework and the device's audio hardware) have been played after `AudioTrack#stop()` has been called.

Parameters
`track` | `AudioTrack`: the `AudioTrack` on which the event happened. This value cannot be `null`.

### onTearDown

    public void onTearDown (AudioTrack track)

Called when an offloaded track is no longer valid and has been discarded by the system. An example of this happening is when an offloaded track has been paused too long, and gets invalidated by the system to prevent any other offload.

Parameters
`track` | `AudioTrack`: the `AudioTrack` on which the event happened. This value cannot be `null`.

Full name *
Email address *
Company / developer name
One of your Play Store app URLs *
Which best describes your business:*
Apps
Games
Apps & Games
*
*