# TeeAudioProcessor.AudioBufferSink

Artifact: [androidx.media3:media3-exoplayer](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/exoplayer/audio/TeeAudioProcessor.java+class:androidx.media3.exoplayer.audio.TeeAudioProcessor.AudioBufferSink)

*** ** * ** ***


```
public interface TeeAudioProcessor.AudioBufferSink
```

<br />

Known direct subclasses [CapturingAudioSink.InterceptingBufferSink](https://developer.android.com/reference/androidx/media3/test/utils/CapturingAudioSink.InterceptingBufferSink), [CapturingAudioSink.SampleInterceptingBufferSink](https://developer.android.com/reference/androidx/media3/test/utils/CapturingAudioSink.SampleInterceptingBufferSink), [TeeAudioProcessor.WavFileAudioBufferSink](https://developer.android.com/reference/androidx/media3/exoplayer/audio/TeeAudioProcessor.WavFileAudioBufferSink), [WaveformAudioBufferSink](https://developer.android.com/reference/androidx/media3/exoplayer/audio/WaveformAudioBufferSink)

|---|---|
| `https://developer.android.com/reference/androidx/media3/test/utils/CapturingAudioSink.InterceptingBufferSink` |   |
| `https://developer.android.com/reference/androidx/media3/test/utils/CapturingAudioSink.SampleInterceptingBufferSink` |   |
| `https://developer.android.com/reference/androidx/media3/exoplayer/audio/TeeAudioProcessor.WavFileAudioBufferSink` | A sink for audio buffers that writes output audio as .wav files with a given path prefix. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/audio/WaveformAudioBufferSink` | A sink for audio buffers that produces `https://developer.android.com/reference/androidx/media3/exoplayer/audio/WaveformAudioBufferSink.WaveformBar`. |

*** ** * ** ***

A sink for audio buffers handled by the audio processor.

## Summary

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/TeeAudioProcessor.AudioBufferSink#flush(int,int,int)(int sampleRateHz, int channelCount, @https://developer.android.com/reference/androidx/media3/common/C.PcmEncoding int encoding)` Called when the audio processor is flushed with a format of subsequent input. |
| `abstract void` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/TeeAudioProcessor.AudioBufferSink#handleBuffer(java.nio.ByteBuffer)(https://developer.android.com/reference/java/nio/ByteBuffer.html buffer)` Called when data is written to the audio processor. |

## Public methods

### flush

```
abstract void flush(int sampleRateHz, int channelCount, @C.PcmEncoding int encoding)
```

Called when the audio processor is flushed with a format of subsequent input.

### handleBuffer

```
abstract void handleBuffer(ByteBuffer buffer)
```

Called when data is written to the audio processor.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/nio/ByteBuffer.html buffer` | A read-only buffer containing input which the audio processor will handle. |