# DefaultTrackSelector.Parameters

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/trackselection/DefaultTrackSelector.java+class:androidx.media3.exoplayer.trackselection.DefaultTrackSelector.Parameters)

*** ** * ** ***

<br />

```
class DefaultTrackSelector.Parameters : TrackSelectionParameters
```

<br />

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [androidx.media3.common.TrackSelectionParameters](https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters) ||
|   | ↳ | [androidx.media3.exoplayer.trackselection.DefaultTrackSelector.Parameters](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters) |

*** ** * ** ***

Extends `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters` by adding fields that are specific to `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector`.

## Summary

| ### Nested types |
|---|
| `class https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder : https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters.Builder` A builder for `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters`. |

| ### Constants |
|---|---|
| `const https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters!` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#DEFAULT()` An instance with default values. |
| `const https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters!` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#DEFAULT_WITHOUT_CONTEXT()` **This property is deprecated.** Use `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#DEFAULT()` instead. <br /> |

| ### Public functions |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder!` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#buildUpon()()` Creates a new `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder`, copying the initial values from this instance. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#equals(java.lang.Object)(obj: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html?)` |
| `java-static https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters!` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#fromBundle(android.os.Bundle)(bundle: https://developer.android.com/reference/android/os/Bundle.html!)` Restores a `Parameters` from a `https://developer.android.com/reference/android/os/Bundle.html`. |
| `java-static https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters!` | `[getDefaults](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#getDefaults(android.content.Context))(context: https://developer.android.com/reference/android/content/Context.html!)` **This function is deprecated.** Use `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#DEFAULT()` instead. <br /> |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#getRendererDisabled(int)(rendererIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` Returns whether the renderer is disabled. |
| `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.SelectionOverride?` | `[getSelectionOverride](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#getSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray))(rendererIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, groups: https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray!)` **This function is deprecated.** Only works to retrieve the overrides set with the deprecated `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder#setSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray,androidx.media3.exoplayer.trackselection.DefaultTrackSelector.SelectionOverride)`. <br /> |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `[hasSelectionOverride](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#hasSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray))(rendererIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, groups: https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray!)` **This function is deprecated.** Only works to retrieve the overrides set with the deprecated `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder#setSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray,androidx.media3.exoplayer.trackselection.DefaultTrackSelector.SelectionOverride)`. <br /> |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#hashCode()()` |
| `https://developer.android.com/reference/android/os/Bundle.html!` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#toBundle()()` |

| ### Public properties |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowAudioMixedChannelCountAdaptiveness()` Whether to allow adaptive audio selections containing mixed channel counts. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowAudioMixedDecoderSupportAdaptiveness()` Whether to allow adaptive audio selections with mixed levels of `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.DecoderSupport` and `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.HardwareAccelerationSupport`. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowAudioMixedMimeTypeAdaptiveness()` Whether to allow adaptive audio selections containing mixed MIME types. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowAudioMixedSampleRateAdaptiveness()` Whether to allow adaptive audio selections containing mixed sample rates. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowAudioNonSeamlessAdaptiveness()` Whether to allow adaptive audio selections where adaptation may not be completely seamless. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowInvalidateSelectionsOnRendererCapabilitiesChange()` Whether to allow to invalidate selections on renderer capabilities change. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowMultipleAdaptiveSelections()` Whether multiple adaptive selections with more than one track are allowed. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowVideoMixedDecoderSupportAdaptiveness()` Whether to allow adaptive video selections with mixed levels of `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.DecoderSupport` and `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.HardwareAccelerationSupport`. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowVideoMixedMimeTypeAdaptiveness()` Whether to allow adaptive video selections containing mixed MIME types. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowVideoNonSeamlessAdaptiveness()` Whether to allow adaptive video selections where adaptation may not be completely seamless. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#constrainAudioChannelCountToDeviceCapabilities()` Whether to constrain audio track selection so that the selected track's channel count does not exceed the device's output capabilities. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#exceedAudioConstraintsIfNecessary()` Whether to exceed the `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxAudioChannelCount()` and `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxAudioBitrate()` constraints when no selection can be made otherwise. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#exceedRendererCapabilitiesIfNecessary()` Whether to exceed renderer capabilities when no selection can be made otherwise. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#exceedVideoConstraintsIfNecessary()` Whether to exceed the `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoWidth()`, `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoHeight()` and `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoBitrate()` constraints when no selection can be made otherwise. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#tunnelingEnabled()` Whether to enable tunneling if possible. |

### Inherited Constants

From [androidx.media3.common.TrackSelectionParameters](https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters) `const https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters!` `@https://developer.android.com/reference/kotlin/androidx/media3/common/util/UnstableApi
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#DEFAULT()`

An instance with default parameters.
`const https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters!` `@https://developer.android.com/reference/kotlin/androidx/media3/common/util/UnstableApi
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#DEFAULT_WITHOUT_CONTEXT()`

**This property is deprecated.**

Use `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#DEFAULT()` instead.

<br />

`const https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `@https://developer.android.com/reference/kotlin/androidx/media3/common/util/UnstableApi
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#FIELD_CUSTOM_ID_BASE() = 1000`

Defines a minimum field ID value for subclasses to use when implementing `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#toBundle()` and delegating to `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters.Builder#Builder(android.os.Bundle)`.

### Inherited functions

From [androidx.media3.common.TrackSelectionParameters](https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters) `java-static https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#fromBundle(android.os.Bundle)(bundle: https://developer.android.com/reference/android/os/Bundle.html!)`

Construct an instance from a `https://developer.android.com/reference/android/os/Bundle.html` produced by `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#toBundle()`.
`java-static https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters!` `[getDefaults](https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#getDefaults(android.content.Context))(context: https://developer.android.com/reference/android/content/Context.html!)`

**This function is deprecated.**

Use `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#DEFAULT()` instead.

<br />

### Inherited properties

From [androidx.media3.common.TrackSelectionParameters](https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters) `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters.AudioOffloadPreferences!` `@https://developer.android.com/reference/kotlin/androidx/media3/common/util/UnstableApi
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#audioOffloadPreferences()`

The preferred offload mode settings for audio playback.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableSet.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#disabledTrackTypes()`

The track types that are disabled.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#forceHighestSupportedBitrate()`

Whether to force selection of the highest bitrate audio and video tracks that comply with all other constraints.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#forceLowestBitrate()`

Whether to force selection of the single lowest bitrate audio and video tracks that comply with all other constraints.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `@https://developer.android.com/reference/kotlin/androidx/media3/common/C.SelectionFlags
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#ignoredTextSelectionFlags()`

Bitmask of selection flags that are ignored for text track selections.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `@https://developer.android.com/reference/kotlin/androidx/media3/common/util/UnstableApi
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#isPrioritizeImageOverVideoEnabled()`

Whether an image track will be selected over a video track if both are available.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#isViewportSizeLimitedByPhysicalDisplaySize()`

Whether the viewport size should be assumed to the physical display size if no other specific viewport size constraint is specified.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxAudioBitrate()`

Maximum allowed audio bitrate in bits per second.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxAudioChannelCount()`

Maximum allowed audio channel count.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoBitrate()`

Maximum allowed video bitrate in bits per second.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoFrameRate()`

Maximum allowed video frame rate in hertz.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoHeight()`

Maximum allowed video height in pixels.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoWidth()`

Maximum allowed video width in pixels.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#minVideoBitrate()`

Minimum allowed video bitrate in bits per second.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#minVideoFrameRate()`

Minimum allowed video frame rate in hertz.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#minVideoHeight()`

Minimum allowed video height in pixels.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#minVideoWidth()`

Minimum allowed video width in pixels.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableMap.html<https://developer.android.com/reference/kotlin/androidx/media3/common/TrackGroup!, https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionOverride!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#overrides()`

Overrides to force selection of specific tracks.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredAudioLabels()`

The preferred labels for audio tracks in order of preference, or an empty list for no preference.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredAudioLanguages()`

The preferred languages for audio and forced text tracks as IETF BCP 47 conformant tags in order of preference.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredAudioMimeTypes()`

The preferred sample MIME types for audio tracks in order of preference, or an empty list for no preference.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `@https://developer.android.com/reference/kotlin/androidx/media3/common/C.RoleFlags
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredAudioRoleFlags()`

The preferred `https://developer.android.com/reference/kotlin/androidx/media3/common/C.RoleFlags` for audio tracks.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredTextLabels()`

The preferred labels for text tracks in order of preference, or an empty list for no preference.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredTextLanguages()`

The preferred languages for text tracks as IETF BCP 47 conformant tags in order of preference.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `@https://developer.android.com/reference/kotlin/androidx/media3/common/C.RoleFlags
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredTextRoleFlags()`

The preferred `https://developer.android.com/reference/kotlin/androidx/media3/common/C.RoleFlags` for text tracks.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredVideoLabels()`

The preferred labels for video tracks in order of preference, or an empty list for no preference.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredVideoLanguages()`

The preferred languages for video tracks as IETF BCP 47 conformant tags in order of preference.
`https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredVideoMimeTypes()`

The preferred sample MIME types for video tracks in order of preference, or an empty list for no preference.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `@https://developer.android.com/reference/kotlin/androidx/media3/common/C.RoleFlags
https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredVideoRoleFlags()`

The preferred `https://developer.android.com/reference/kotlin/androidx/media3/common/C.RoleFlags` for video tracks.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#selectTextByDefault()`

Prefer to select any text track by default.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#selectUndeterminedTextLanguage()`

Whether a text track with undetermined language should be selected if no track with `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredTextLanguages()` is available, or if `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#preferredTextLanguages()` is unset.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#usePreferredTextLanguagesAndRoleFlagsFromCaptioningManager()`

Whether the preferred languages and the preferred role flags for text tracks should be set according the `https://developer.android.com/reference/android/view/accessibility/CaptioningManager.html` preferences, if enabled in the system settings and no other explicit language or role flag preferences are specified.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#viewportHeight()`

Viewport height in pixels.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#viewportOrientationMayChange()`

Whether the viewport orientation may change during playback.
`https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#viewportWidth()`

Viewport width in pixels.

## Constants

### DEFAULT

```
const val DEFAULT: DefaultTrackSelector.Parameters!
```

An instance with default values.

### DEFAULT_WITHOUT_CONTEXT

```
const val DEFAULT_WITHOUT_CONTEXT: DefaultTrackSelector.Parameters!
```

> [!CAUTION]
> **This property is deprecated.**   
>
> Use `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#DEFAULT()` instead.

## Public functions

### buildUpon

```
fun buildUpon(): DefaultTrackSelector.Parameters.Builder!
```

Creates a new `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder`, copying the initial values from this instance.

### equals

```
fun equals(obj: Any?): Boolean
```

### fromBundle

```
java-static fun fromBundle(bundle: Bundle!): DefaultTrackSelector.Parameters!
```

Restores a `Parameters` from a `https://developer.android.com/reference/android/os/Bundle.html`.

### getDefaults

```
java-static fun [getDefaults](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#getDefaults(android.content.Context))(context: Context!): DefaultTrackSelector.Parameters!
```

> [!CAUTION]
> **This function is deprecated.**   
>
> Use `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#DEFAULT()` instead.

### getRendererDisabled

```
fun getRendererDisabled(rendererIndex: Int): Boolean
```

Returns whether the renderer is disabled.

| Parameters |
|---|---|
| `rendererIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | The renderer index. |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | Whether the renderer is disabled. |

### getSelectionOverride

```
fun [getSelectionOverride](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#getSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray))(rendererIndex: Int, groups: TrackGroupArray!): DefaultTrackSelector.SelectionOverride?
```

> [!CAUTION]
> **This function is deprecated.**   
>
> Only works to retrieve the overrides set with the deprecated `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder#setSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray,androidx.media3.exoplayer.trackselection.DefaultTrackSelector.SelectionOverride)`. Use `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#overrides()` instead.

Returns the override for the specified renderer and `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray`.

| Parameters |
|---|---|
| `rendererIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | The renderer index. |
| `groups: https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray!` | The `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray`. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.SelectionOverride?` | The override, or null if no override exists. |

### hasSelectionOverride

```
fun [hasSelectionOverride](https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#hasSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray))(rendererIndex: Int, groups: TrackGroupArray!): Boolean
```

> [!CAUTION]
> **This function is deprecated.**   
>
> Only works to retrieve the overrides set with the deprecated `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters.Builder#setSelectionOverride(int,androidx.media3.exoplayer.source.TrackGroupArray,androidx.media3.exoplayer.trackselection.DefaultTrackSelector.SelectionOverride)`. Use `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#overrides()` instead.

Returns whether there is an override for the specified renderer and `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray`.

| Parameters |
|---|---|
| `rendererIndex: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html` | The renderer index. |
| `groups: https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray!` | The `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/TrackGroupArray`. |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | Whether there is an override. |

### hashCode

```
fun hashCode(): Int
```

### toBundle

```
fun toBundle(): Bundle!
```

## Public properties

### allowAudioMixedChannelCountAdaptiveness

```
val allowAudioMixedChannelCountAdaptiveness: Boolean
```

Whether to allow adaptive audio selections containing mixed channel counts. Adaptations between different channel counts may not be completely seamless. The default value is ` false`.

### allowAudioMixedDecoderSupportAdaptiveness

```
val allowAudioMixedDecoderSupportAdaptiveness: Boolean
```

Whether to allow adaptive audio selections with mixed levels of `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.DecoderSupport` and `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.HardwareAccelerationSupport`.

### allowAudioMixedMimeTypeAdaptiveness

```
val allowAudioMixedMimeTypeAdaptiveness: Boolean
```

Whether to allow adaptive audio selections containing mixed MIME types. Adaptations between different MIME types may not be completely seamless, in which case `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowAudioNonSeamlessAdaptiveness()` also needs to be `true` for mixed MIME type selections to be made. The default value is `false`.

### allowAudioMixedSampleRateAdaptiveness

```
val allowAudioMixedSampleRateAdaptiveness: Boolean
```

Whether to allow adaptive audio selections containing mixed sample rates. Adaptations between different sample rates may not be completely seamless. The default value is `false`.

### allowAudioNonSeamlessAdaptiveness

```
val allowAudioNonSeamlessAdaptiveness: Boolean
```

Whether to allow adaptive audio selections where adaptation may not be completely seamless. The default value is `true`.

### allowInvalidateSelectionsOnRendererCapabilitiesChange

```
val allowInvalidateSelectionsOnRendererCapabilitiesChange: Boolean
```

Whether to allow to invalidate selections on renderer capabilities change. The default value is `false`.

### allowMultipleAdaptiveSelections

```
val allowMultipleAdaptiveSelections: Boolean
```

Whether multiple adaptive selections with more than one track are allowed. The default value is `true`.

Note that tracks are only eligible for adaptation if they define a bitrate, the renderers support the tracks and allow adaptation between them, and they are not excluded based on other track selection parameters.

### allowVideoMixedDecoderSupportAdaptiveness

```
val allowVideoMixedDecoderSupportAdaptiveness: Boolean
```

Whether to allow adaptive video selections with mixed levels of `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.DecoderSupport` and `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/RendererCapabilities.HardwareAccelerationSupport`.

### allowVideoMixedMimeTypeAdaptiveness

```
val allowVideoMixedMimeTypeAdaptiveness: Boolean
```

Whether to allow adaptive video selections containing mixed MIME types. Adaptations between different MIME types may not be completely seamless, in which case `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/trackselection/DefaultTrackSelector.Parameters#allowVideoNonSeamlessAdaptiveness()` also needs to be `true` for mixed MIME type selections to be made. The default value is `false`.

### allowVideoNonSeamlessAdaptiveness

```
val allowVideoNonSeamlessAdaptiveness: Boolean
```

Whether to allow adaptive video selections where adaptation may not be completely seamless. The default value is `true`.

### constrainAudioChannelCountToDeviceCapabilities

```
val constrainAudioChannelCountToDeviceCapabilities: Boolean
```

Whether to constrain audio track selection so that the selected track's channel count does not exceed the device's output capabilities. The default value is `true`.

### exceedAudioConstraintsIfNecessary

```
val exceedAudioConstraintsIfNecessary: Boolean
```

Whether to exceed the `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxAudioChannelCount()` and `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxAudioBitrate()` constraints when no selection can be made otherwise. The default value is `true`.

### exceedRendererCapabilitiesIfNecessary

```
val exceedRendererCapabilitiesIfNecessary: Boolean
```

Whether to exceed renderer capabilities when no selection can be made otherwise.

This parameter applies when all of the tracks available for a renderer exceed the renderer's reported capabilities. If the parameter is `true` then the lowest quality track will still be selected. Playback may succeed if the renderer has under-reported its true capabilities. If `false` then no track will be selected. The default value is `true`.

### exceedVideoConstraintsIfNecessary

```
val exceedVideoConstraintsIfNecessary: Boolean
```

Whether to exceed the `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoWidth()`, `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoHeight()` and `https://developer.android.com/reference/kotlin/androidx/media3/common/TrackSelectionParameters#maxVideoBitrate()` constraints when no selection can be made otherwise. The default value is `true`.

### tunnelingEnabled

```
val tunnelingEnabled: Boolean
```

Whether to enable tunneling if possible.