Stay organized with collections
Save and categorize content based on your preferences.
Interfaces
Classes
Exceptions
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-06-04 UTC.
[null,null,["Last updated 2025-06-04 UTC."],[],[],null,["# androidx.media3.exoplayer.mediacodec\n====================================\n\n*** ** * ** ***\n\n[Kotlin](/reference/kotlin/androidx/media3/exoplayer/mediacodec/package-summary \"View this page in Kotlin\") \\|Java\n\nInterfaces\n----------\n\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------|\n| [LoudnessCodecController.LoudnessParameterUpdateListener](/reference/androidx/media3/exoplayer/mediacodec/LoudnessCodecController.LoudnessParameterUpdateListener) | Interface to intercept and modify loudness parameters before applying them to the codec. |\n| [MediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter) | Abstracts [MediaCodec](https://developer.android.com/reference/android/media/MediaCodec.html) operations. |\n| [MediaCodecAdapter.Factory](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory) | A factory for [MediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter) instances. |\n| [MediaCodecAdapter.OnBufferAvailableListener](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.OnBufferAvailableListener) | Listener to be called when an input or output buffer becomes available. |\n| [MediaCodecAdapter.OnFrameRenderedListener](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.OnFrameRenderedListener) | Listener to be called when an output frame has rendered on the output surface. |\n| [MediaCodecSelector](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecSelector) | Selector of [MediaCodec](https://developer.android.com/reference/android/media/MediaCodec.html) instances. |\n\nClasses\n-------\n\n|------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [DefaultMediaCodecAdapterFactory](/reference/androidx/media3/exoplayer/mediacodec/DefaultMediaCodecAdapterFactory) | The default [MediaCodecAdapter.Factory](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory). |\n| [ForwardingMediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/ForwardingMediaCodecAdapter) | A [MediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter) instance that forwards all calls to its delegate. |\n| [LoudnessCodecController](/reference/androidx/media3/exoplayer/mediacodec/LoudnessCodecController) | Wrapper class for the platform [android.media.LoudnessCodecController](https://developer.android.com/reference/android/media/LoudnessCodecController.html). |\n| [MediaCodecAdapter.Configuration](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Configuration) | Configuration parameters for a [MediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter). |\n| [MediaCodecInfo](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecInfo) | Information about a [MediaCodec](https://developer.android.com/reference/android/media/MediaCodec.html) for a given MIME type. |\n| [MediaCodecRenderer](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecRenderer) | An abstract renderer that uses [MediaCodec](https://developer.android.com/reference/android/media/MediaCodec.html) to decode samples for rendering. |\n| [MediaCodecUtil](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecUtil) | A utility class for querying the available codecs. |\n| [SynchronousMediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter) | A [MediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter) that operates the underlying [MediaCodec](https://developer.android.com/reference/android/media/MediaCodec.html) in synchronous mode. |\n| [SynchronousMediaCodecAdapter.Factory](/reference/androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter.Factory) | A factory for [SynchronousMediaCodecAdapter](/reference/androidx/media3/exoplayer/mediacodec/SynchronousMediaCodecAdapter) instances. |\n\nExceptions\n----------\n\n|--------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------|\n| [MediaCodecDecoderException](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecDecoderException) | Thrown when a failure occurs in a [MediaCodec](https://developer.android.com/reference/android/media/MediaCodec.html) decoder. |\n| [MediaCodecRenderer.DecoderInitializationException](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecRenderer.DecoderInitializationException) | Thrown when a failure occurs instantiating a decoder. |\n| [MediaCodecUtil.DecoderQueryException](/reference/androidx/media3/exoplayer/mediacodec/MediaCodecUtil.DecoderQueryException) | Thrown when an error occurs querying the device for its underlying media capabilities. |"]]