# androidx.media3.test.utils.robolectric

*** ** * ** ***

## Interfaces

|---|---|
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/CapturingRenderersFactory.TextRendererFactory` | A factory for `https://developer.android.com/reference/androidx/media3/exoplayer/Renderer` instances that handle `https://developer.android.com/reference/androidx/media3/common/C#TRACK_TYPE_TEXT()` tracks. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/PlayerAudioFocusContractTest.PlayerInfo` | Interface that allows access to a `https://developer.android.com/reference/androidx/media3/common/Player` instance and its internal `https://developer.android.com/reference/androidx/media3/common/util/Clock` and processing `https://developer.android.com/reference/android/os/Looper.html`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/ScrubbingModeContractTest.PlayerInfo` | Interface that allows access to a `https://developer.android.com/reference/androidx/media3/common/Player` instance, relevant internals, and other methods not implemented within the `https://developer.android.com/reference/androidx/media3/common/Player` interface required for testing. |

## Classes

|---|---|
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/CapturingRenderersFactory` | A `https://developer.android.com/reference/androidx/media3/exoplayer/RenderersFactory` that captures interactions with the audio and video `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter` instances and `https://developer.android.com/reference/androidx/media3/exoplayer/image/ImageOutput` instances. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/CapturingRenderersFactory.CapturingMediaCodecVideoRenderer` | A `https://developer.android.com/reference/androidx/media3/exoplayer/video/MediaCodecVideoRenderer` that will not skip or drop buffers due to slow processing. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/FakeDownloader` | A fake `https://developer.android.com/reference/androidx/media3/exoplayer/offline/Downloader`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/IdlingMediaCodecAdapterFactory` | A `https://developer.android.com/reference/androidx/media3/exoplayer/mediacodec/MediaCodecAdapter.Factory` which can `https://robolectric.org/javadoc/4.11/org/robolectric/shadows/ShadowLooper.html#idle--` all the async queueing and callback threads used in async MediaCodec mode. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/PlaybackOutput` | Class to capture output from a playback test. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/PlayerAudioFocusContractTest` | A collection of contract tests for `https://developer.android.com/reference/androidx/media3/common/Player` implementations that support `https://developer.android.com/reference/androidx/media3/common/Player#COMMAND_SET_AUDIO_ATTRIBUTES()`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/RandomizedMp3Decoder` | Generates randomized, but correct amount of data on MP3 audio input. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/RobolectricUtil` | Utility methods for Robolectric-based tests. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/ScrubbingModeContractTest` | A collection of contract tests for `https://developer.android.com/reference/androidx/media3/common/Player` implementations that support `https://developer.android.com/reference/androidx/media3/common/Player#COMMAND_SET_AUDIO_ATTRIBUTES()` and `https://developer.android.com/reference/androidx/media3/exoplayer/ExoPlayer#setScrubbingModeEnabled(boolean)`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/ShadowMediaCodecConfig` | A JUnit @Rule to configure Robolectric's `https://robolectric.org/javadoc/4.11/org/robolectric/shadows/ShadowMediaCodec.html`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/ShadowMediaCodecConfig.CodecInfo` | Class that holds information about a `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/ShadowMediaCodecConfig.CodecImpl` configuration. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/TestDownloadManagerListener` | Allows tests to block for, and assert properties of, calls from a `https://developer.android.com/reference/androidx/media3/exoplayer/offline/DownloadManager` to its `https://developer.android.com/reference/androidx/media3/exoplayer/offline/DownloadManager.Listener`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/TestPlayerRunHelper` | Helper methods to block the calling thread until the provided `https://developer.android.com/reference/androidx/media3/exoplayer/ExoPlayer` instance reaches a particular state. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/TestPlayerRunHelper.CompositionPlayerRunResult` | A `https://developer.android.com/reference/androidx/media3/transformer/CompositionPlayer` specific subclass of `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/TestPlayerRunHelper.PlayerRunResult`, giving access to conditions that only make sense for `https://developer.android.com/reference/androidx/media3/transformer/CompositionPlayer`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/TestPlayerRunHelper.ExoPlayerRunResult` | An `https://developer.android.com/reference/androidx/media3/exoplayer/ExoPlayer` specific subclass of `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/TestPlayerRunHelper.PlayerRunResult`, giving access to conditions that only make sense for the `https://developer.android.com/reference/androidx/media3/exoplayer/ExoPlayer` interface. |
| `https://developer.android.com/reference/androidx/media3/test/utils/robolectric/TestPlayerRunHelper.PlayerRunResult` | Intermediate type that allows callers to run the main `https://developer.android.com/reference/android/os/Looper.html` until certain conditions are met. |