# PassthroughAudioProcessor

# PassthroughAudioProcessor

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

*** ** * ** ***

Kotlin\|[Java](https://developer.android.com/reference/androidx/media3/test/utils/PassthroughAudioProcessor "View this page in Java")

<br />

```
@UnstableApi
class PassthroughAudioProcessor : BaseAudioProcessor
```

<br />

|---|---|-------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html)                                                                                |||
| ↳ | [androidx.media3.common.audio.BaseAudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor)              ||
|   | ↳ | [androidx.media3.test.utils.PassthroughAudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/PassthroughAudioProcessor) |

*** ** * ** ***

A[BaseAudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor)implementation that accepts all input formats and copies all input buffers onto the output without modifications.

## Summary

|                                                                     ### Public constructors                                                                      |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [PassthroughAudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/PassthroughAudioProcessor#PassthroughAudioProcessor())`()` |

|                             ### Public functions                              |
|-------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html) | [queueInput](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/PassthroughAudioProcessor#queueInput(java.nio.ByteBuffer))`(inputBuffer: `[ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html)`!)` Queues audio data between the position and limit of the`inputBuffer`for processing. |

|                                                         ### Protected functions                                                         |
|-----------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [AudioProcessor.AudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.AudioFormat)`!` | [onConfigure](https://developer.android.com/reference/kotlin/androidx/media3/test/utils/PassthroughAudioProcessor#onConfigure(androidx.media3.common.audio.AudioProcessor.AudioFormat))`(inputAudioFormat: `[AudioProcessor.AudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.AudioFormat)`!)` Called when the processor is configured for a new input format. |

|                                                                                                                                                                                                                                                                                                                                                                                      ### Inherited Constants                                                                                                                                                                                                                                                                                                                                                                                      |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| From[androidx.media3.common.audio.AudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor) |-------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `const `[ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html)`!` | [EMPTY_BUFFER](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#EMPTY_BUFFER()) An empty, direct[ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html). | |

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     ### Inherited functions                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| From[androidx.media3.common.audio.AudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor) |-------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html) | [getDurationAfterProcessorApplied](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#getDurationAfterProcessorApplied(long))`(durationUs: `[Long](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)`)` Returns the expected duration of the output stream when the processor is applied given a input`durationUs`. |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| From[androidx.media3.common.audio.BaseAudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor) |-----------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [AudioProcessor.AudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.AudioFormat)`!` | [configure](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#configure(androidx.media3.common.audio.AudioProcessor.AudioFormat))`(inputAudioFormat: `[AudioProcessor.AudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.AudioFormat)`!)` Configures the processor to process input audio with the specified format.                                                                                                                                                                                                                                 | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | ~~[flush](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#flush())~~`()` **This function is deprecated.** Use[flush](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata))instead. <br />                                                                                                                                                                                                                                                                                                       | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | [flush](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata))`(streamMetadata: `[AudioProcessor.StreamMetadata](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata)`!)` Prepares the audio processor to receive a new stream of input in the last[configured format](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#configure(androidx.media3.common.audio.AudioProcessor.AudioFormat))and clears any buffered data and pending output. | | [ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html)`!`                                                       | `@`[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper) [getOutput](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#getOutput())`()` Returns a buffer containing processed output data between its position and limit.                                                                                                                                                                                                                                                                                                                                             | | [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)                                                     | [hasPendingOutput](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#hasPendingOutput())`()` Returns whether the current output buffer has any data remaining.                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)                                                     | `@`[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper) [isActive](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#isActive())`()` Returns whether the processor is configured and will process input buffers.                                                                                                                                                                                                                                                                                                                                                     | | [Boolean](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)                                                     | `@`[CallSuper](https://developer.android.com/reference/kotlin/androidx/annotation/CallSuper) [isEnded](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#isEnded())`()` Returns whether this processor will return no more output from[getOutput](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#getOutput())until[flush](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush())has been called and more input has been queued.                                                                                  | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | ~~[onFlush](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#onFlush())~~`()` **This function is deprecated.** Use[onFlush](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#onFlush(androidx.media3.common.audio.AudioProcessor.StreamMetadata))instead. <br />                                                                                                                                                                                                                                                                                           | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | [onFlush](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#onFlush(androidx.media3.common.audio.AudioProcessor.StreamMetadata))`(streamMetadata: `[AudioProcessor.StreamMetadata](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.StreamMetadata)`!)` Called when the processor is[flushed](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#flush(androidx.media3.common.audio.AudioProcessor.StreamMetadata)).                                                                                                    | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | [onQueueEndOfStream](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#onQueueEndOfStream())`()` Called when the end-of-stream is queued to the processor.                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | [onReset](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#onReset())`()` Called when the processor is reset.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | [queueEndOfStream](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#queueEndOfStream())`()` Queues an end of stream signal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | [ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html)`!`                                                       | [replaceOutputBuffer](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#replaceOutputBuffer(int))`(size: `[Int](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)`)` Replaces the current output buffer with a buffer of at least`size`bytes and returns it.                                                                                                                                                                                                                                                                                                                          | | [Unit](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)                                                           | [reset](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#reset())`()` Resets the processor to its unconfigured state, releasing any resources.                                                                                                                                                                                                                                                                                                                                                                                                                                                           | |

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ### Inherited properties                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| From[androidx.media3.common.audio.BaseAudioProcessor](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor) |-----------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [AudioProcessor.AudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.AudioFormat)`!` | [inputAudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#inputAudioFormat()) The current input audio format.    | | [AudioProcessor.AudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.AudioFormat)`!` | [outputAudioFormat](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/BaseAudioProcessor#outputAudioFormat()) The current output audio format. | |

## Public constructors

### PassthroughAudioProcessor

```
PassthroughAudioProcessor()
```  

## Public functions

### queueInput

```
fun queueInput(inputBuffer: ByteBuffer!): Unit
```

Queues audio data between the position and limit of the`inputBuffer`for processing. After calling this method, processed output may be available via[getOutput](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor#getOutput()). Calling`queueInput(ByteBuffer)`again invalidates any pending output.  

|                                            Parameters                                            |
|--------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `inputBuffer: `[ByteBuffer](https://developer.android.com/reference/java/nio/ByteBuffer.html)`!` | The input buffer to process. It must be a direct byte buffer with native byte order. Its contents are treated as read-only. Its position will be advanced by the number of bytes consumed (which may be zero). The caller retains ownership of the provided buffer. |

## Protected functions

### onConfigure

```
protected fun onConfigure(inputAudioFormat: AudioProcessor.AudioFormat!): AudioProcessor.AudioFormat!
```

Called when the processor is configured for a new input format.  

|                                                                                                Throws                                                                                                 |
|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| [androidx.media3.common.audio.AudioProcessor.UnhandledAudioFormatException](https://developer.android.com/reference/kotlin/androidx/media3/common/audio/AudioProcessor.UnhandledAudioFormatException) |   |