Stay organized with collections
Save and categorize content based on your preferences.
@Documented
@Retention(value = RetentionPolicy.SOURCE)
@Target(value = ElementType.TYPE_USE)
@IntDef(value = )
public annotation RendererCapabilities.Capabilities
Combined renderer capabilities.
This is a bitwise OR of C.FormatSupport
, AdaptiveSupport
, TunnelingSupport
, HardwareAccelerationSupport
, DecoderSupport
and AudioOffloadSupport
. Use getFormatSupport
, getAdaptiveSupport
, getTunnelingSupport
, getHardwareAccelerationSupport
, getDecoderSupport
and AudioOffloadSupport
to obtain individual components. Use create
, create
, create
, or create
to create combined capabilities from individual components.
Possible values:
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-08-28 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["RendererCapabilities.Capabilities \nArtifact: [androidx.media3:media3-exoplayer](/jetpack/androidx/releases/media3) \n[View Source](https://cs.android.com/search?q=file:androidx/media3/exoplayer/RendererCapabilities.java+class:androidx.media3.exoplayer.RendererCapabilities.Capabilities)\n\n*** ** * ** ***\n\n[Kotlin](/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.Capabilities \"View this page in Kotlin\") \\|Java\n\n\n```\n@Documented\n@Retention(value = RetentionPolicy.SOURCE)\n@Target(value = ElementType.TYPE_USE)\n@IntDef(value = )\npublic annotation RendererCapabilities.Capabilities\n```\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\nCombined renderer capabilities.\n\nThis is a bitwise OR of [C.FormatSupport](/reference/androidx/media3/common/C.FormatSupport), [AdaptiveSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.AdaptiveSupport), [TunnelingSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.TunnelingSupport), [HardwareAccelerationSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.HardwareAccelerationSupport), [DecoderSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.DecoderSupport) and [AudioOffloadSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.AudioOffloadSupport). Use [getFormatSupport](/reference/androidx/media3/exoplayer/RendererCapabilities#getFormatSupport(int)), [getAdaptiveSupport](/reference/androidx/media3/exoplayer/RendererCapabilities#getAdaptiveSupport(int)), [getTunnelingSupport](/reference/androidx/media3/exoplayer/RendererCapabilities#getTunnelingSupport(int)), [getHardwareAccelerationSupport](/reference/androidx/media3/exoplayer/RendererCapabilities#getHardwareAccelerationSupport(int)), [getDecoderSupport](/reference/androidx/media3/exoplayer/RendererCapabilities#getDecoderSupport(int)) and [AudioOffloadSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.AudioOffloadSupport) to obtain individual components. Use [create](/reference/androidx/media3/exoplayer/RendererCapabilities#create(int)), [create](/reference/androidx/media3/exoplayer/RendererCapabilities#create(int,int,int)), [create](/reference/androidx/media3/exoplayer/RendererCapabilities#create(int,int,int,int)), or [create](/reference/androidx/media3/exoplayer/RendererCapabilities#create(int,int,int,int,int,int)) to create combined capabilities from individual components.\n\nPossible values:\n\n- [C.FormatSupport](/reference/androidx/media3/common/C.FormatSupport): The level of support for the format itself. One of [FORMAT_HANDLED](/reference/androidx/media3/common/C#FORMAT_HANDLED()), [FORMAT_EXCEEDS_CAPABILITIES](/reference/androidx/media3/common/C#FORMAT_EXCEEDS_CAPABILITIES()), [FORMAT_UNSUPPORTED_DRM](/reference/androidx/media3/common/C#FORMAT_UNSUPPORTED_DRM()), [FORMAT_UNSUPPORTED_SUBTYPE](/reference/androidx/media3/common/C#FORMAT_UNSUPPORTED_SUBTYPE()) and [FORMAT_UNSUPPORTED_TYPE](/reference/androidx/media3/common/C#FORMAT_UNSUPPORTED_TYPE()).\n- [AdaptiveSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.AdaptiveSupport): The level of support for adapting from the format to another format of the same MIME type. One of [ADAPTIVE_SEAMLESS](/reference/androidx/media3/exoplayer/RendererCapabilities#ADAPTIVE_SEAMLESS()), [ADAPTIVE_NOT_SEAMLESS](/reference/androidx/media3/exoplayer/RendererCapabilities#ADAPTIVE_NOT_SEAMLESS()) and [ADAPTIVE_NOT_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#ADAPTIVE_NOT_SUPPORTED()). Only set if the level of support for the format itself is [FORMAT_HANDLED](/reference/androidx/media3/common/C#FORMAT_HANDLED()) or [FORMAT_EXCEEDS_CAPABILITIES](/reference/androidx/media3/common/C#FORMAT_EXCEEDS_CAPABILITIES()).\n- [TunnelingSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.TunnelingSupport): The level of support for tunneling. One of [TUNNELING_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#TUNNELING_SUPPORTED()) and [TUNNELING_NOT_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#TUNNELING_NOT_SUPPORTED()). Only set if the level of support for the format itself is [FORMAT_HANDLED](/reference/androidx/media3/common/C#FORMAT_HANDLED()) or [FORMAT_EXCEEDS_CAPABILITIES](/reference/androidx/media3/common/C#FORMAT_EXCEEDS_CAPABILITIES()).\n- [HardwareAccelerationSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.HardwareAccelerationSupport): The level of support for hardware acceleration. One of [HARDWARE_ACCELERATION_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#HARDWARE_ACCELERATION_SUPPORTED()) and [HARDWARE_ACCELERATION_NOT_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#HARDWARE_ACCELERATION_NOT_SUPPORTED()).\n- [DecoderSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.DecoderSupport): The level of decoder support. One of [DECODER_SUPPORT_PRIMARY](/reference/androidx/media3/exoplayer/RendererCapabilities#DECODER_SUPPORT_PRIMARY()), [DECODER_SUPPORT_FALLBACK](/reference/androidx/media3/exoplayer/RendererCapabilities#DECODER_SUPPORT_FALLBACK()), or [DECODER_SUPPORT_FALLBACK_MIMETYPE](/reference/androidx/media3/exoplayer/RendererCapabilities#DECODER_SUPPORT_FALLBACK_MIMETYPE()).\n- [AudioOffloadSupport](/reference/androidx/media3/exoplayer/RendererCapabilities.AudioOffloadSupport): The level of offload support. Value will have the flag [AUDIO_OFFLOAD_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#AUDIO_OFFLOAD_SUPPORTED()) or be [AUDIO_OFFLOAD_NOT_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#AUDIO_OFFLOAD_NOT_SUPPORTED()). In addition, if it is [AUDIO_OFFLOAD_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#AUDIO_OFFLOAD_SUPPORTED()), then one can check for [AUDIO_OFFLOAD_SPEED_CHANGE_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#AUDIO_OFFLOAD_SPEED_CHANGE_SUPPORTED()) and [AUDIO_OFFLOAD_GAPLESS_SUPPORTED](/reference/androidx/media3/exoplayer/RendererCapabilities#AUDIO_OFFLOAD_GAPLESS_SUPPORTED()). These represent speed change and gapless transition support with audio offload respectively."]]