Package com.google.android.exoplayer2.trackselection

## Class DefaultTrackSelector.ParametersBuilder

- java.lang.Object
- - com.google.android.exoplayer2.trackselection.TrackSelectionParameters.Builder
  - - com.google.android.exoplayer2.trackselection.DefaultTrackSelector.ParametersBuilder

- Enclosing class:
    DefaultTrackSelector

      public static final class DefaultTrackSelector.ParametersBuilder
      extends TrackSelectionParameters.Builder

  A builder for `DefaultTrackSelector.Parameters`. See the `DefaultTrackSelector.Parameters` documentation for explanations of the parameters that can be configured using this builder.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ParametersBuilder()` | Deprecated. `Context` constraints will not be set using this constructor.
    `ParametersBuilder​(Context context)` | Creates a builder with default initial values.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `DefaultTrackSelector.Parameters` | `build()` | Builds a `DefaultTrackSelector.Parameters` instance with the selected values.
    `DefaultTrackSelector.ParametersBuilder` | `clearSelectionOverride​(int rendererIndex, TrackGroupArray groups)` | Clears a track selection override for the specified renderer and `TrackGroupArray`.
    `DefaultTrackSelector.ParametersBuilder` | `clearSelectionOverrides()` | Clears all track selection overrides for all renderers.
    `DefaultTrackSelector.ParametersBuilder` | `clearSelectionOverrides​(int rendererIndex)` | Clears all track selection overrides for the specified renderer.
    `DefaultTrackSelector.ParametersBuilder` | `clearVideoSizeConstraints()` | Equivalent to `setMaxVideoSize(Integer.MAX_VALUE, Integer.MAX_VALUE)`.
    `DefaultTrackSelector.ParametersBuilder` | `clearViewportSizeConstraints()` | Equivalent to `setViewportSize(Integer.MAX_VALUE, Integer.MAX_VALUE, true)`.
    `DefaultTrackSelector.ParametersBuilder` | `setAllowAudioMixedChannelCountAdaptiveness​(boolean allowAudioMixedChannelCountAdaptiveness)` | Sets whether to allow adaptive audio selections containing mixed channel counts.
    `DefaultTrackSelector.ParametersBuilder` | `setAllowAudioMixedMimeTypeAdaptiveness​(boolean allowAudioMixedMimeTypeAdaptiveness)` | Sets whether to allow adaptive audio selections containing mixed MIME types.
    `DefaultTrackSelector.ParametersBuilder` | `setAllowAudioMixedSampleRateAdaptiveness​(boolean allowAudioMixedSampleRateAdaptiveness)` | Sets whether to allow adaptive audio selections containing mixed sample rates.
    `DefaultTrackSelector.ParametersBuilder` | `setAllowMultipleAdaptiveSelections​(boolean allowMultipleAdaptiveSelections)` | Sets whether multiple adaptive selections with more than one track are allowed.
    `DefaultTrackSelector.ParametersBuilder` | `setAllowVideoMixedMimeTypeAdaptiveness​(boolean allowVideoMixedMimeTypeAdaptiveness)` | Sets whether to allow adaptive video selections containing mixed MIME types.
    `DefaultTrackSelector.ParametersBuilder` | `setAllowVideoNonSeamlessAdaptiveness​(boolean allowVideoNonSeamlessAdaptiveness)` | Sets whether to allow adaptive video selections where adaptation may not be completely seamless.
    `DefaultTrackSelector.ParametersBuilder` | `setDisabledTextTrackSelectionFlags​(int disabledTextTrackSelectionFlags)` | Sets a bitmask of selection flags that are disabled for text track selections.
    `DefaultTrackSelector.ParametersBuilder` | `setExceedAudioConstraintsIfNecessary​(boolean exceedAudioConstraintsIfNecessary)` | Sets whether to exceed the `setMaxAudioChannelCount(int)` and `setMaxAudioBitrate(int)` constraints when no selection can be made otherwise.
    `DefaultTrackSelector.ParametersBuilder` | `setExceedRendererCapabilitiesIfNecessary​(boolean exceedRendererCapabilitiesIfNecessary)` | Sets whether to exceed renderer capabilities when no selection can be made otherwise.
    `DefaultTrackSelector.ParametersBuilder` | `setExceedVideoConstraintsIfNecessary​(boolean exceedVideoConstraintsIfNecessary)` | Sets whether to exceed the `setMaxVideoBitrate(int)`, `setMaxVideoSize(int, int)` and `setMaxVideoFrameRate(int)` constraints when no selection can be made otherwise.
    `DefaultTrackSelector.ParametersBuilder` | `setForceHighestSupportedBitrate​(boolean forceHighestSupportedBitrate)` | Sets whether to force selection of the highest bitrate audio and video tracks that comply with all other constraints.
    `DefaultTrackSelector.ParametersBuilder` | `setForceLowestBitrate​(boolean forceLowestBitrate)` | Sets whether to force selection of the single lowest bitrate audio and video tracks that comply with all other constraints.
    `DefaultTrackSelector.ParametersBuilder` | `setMaxAudioBitrate​(int maxAudioBitrate)` | Sets the maximum allowed audio bitrate.
    `DefaultTrackSelector.ParametersBuilder` | `setMaxAudioChannelCount​(int maxAudioChannelCount)` | Sets the maximum allowed audio channel count.
    `DefaultTrackSelector.ParametersBuilder` | `setMaxVideoBitrate​(int maxVideoBitrate)` | Sets the maximum allowed video bitrate.
    `DefaultTrackSelector.ParametersBuilder` | `setMaxVideoFrameRate​(int maxVideoFrameRate)` | Sets the maximum allowed video frame rate.
    `DefaultTrackSelector.ParametersBuilder` | `setMaxVideoSize​(int maxVideoWidth, int maxVideoHeight)` | Sets the maximum allowed video width and height.
    `DefaultTrackSelector.ParametersBuilder` | `setMaxVideoSizeSd()` | Equivalent to `setMaxVideoSize(1279, 719)`.
    `DefaultTrackSelector.ParametersBuilder` | `setMinVideoBitrate​(int minVideoBitrate)` | Sets the minimum allowed video bitrate.
    `DefaultTrackSelector.ParametersBuilder` | `setMinVideoFrameRate​(int minVideoFrameRate)` | Sets the minimum allowed video frame rate.
    `DefaultTrackSelector.ParametersBuilder` | `setMinVideoSize​(int minVideoWidth, int minVideoHeight)` | Sets the minimum allowed video width and height.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredAudioLanguage​(String preferredAudioLanguage)` | Sets the preferred language for audio and forced text tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredAudioLanguages​(String... preferredAudioLanguages)` | Sets the preferred languages for audio and forced text tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredAudioMimeType​(String mimeType)` | Sets the preferred sample MIME type for audio tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredAudioMimeTypes​(String... mimeTypes)` | Sets the preferred sample MIME types for audio tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredAudioRoleFlags​(int preferredAudioRoleFlags)` | Sets the preferred `C.RoleFlags` for audio tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredTextLanguage​(String preferredTextLanguage)` | Sets the preferred language for text tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredTextLanguageAndRoleFlagsToCaptioningManagerSettings​(Context context)` | Sets the preferred language and role flags for text tracks based on the accessibility settings of `CaptioningManager`.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredTextLanguages​(String... preferredTextLanguages)` | Sets the preferred languages for text tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredTextRoleFlags​(int preferredTextRoleFlags)` | Sets the preferred `C.RoleFlags` for text tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredVideoMimeType​(String mimeType)` | Sets the preferred sample MIME type for video tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setPreferredVideoMimeTypes​(String... mimeTypes)` | Sets the preferred sample MIME types for video tracks.
    `DefaultTrackSelector.ParametersBuilder` | `setRendererDisabled​(int rendererIndex, boolean disabled)` | Sets whether the renderer at the specified index is disabled.
    `DefaultTrackSelector.ParametersBuilder` | `setSelectionOverride​(int rendererIndex, TrackGroupArray groups, DefaultTrackSelector.SelectionOverride override)` | Overrides the track selection for the renderer at the specified index.
    `DefaultTrackSelector.ParametersBuilder` | `setSelectUndeterminedTextLanguage​(boolean selectUndeterminedTextLanguage)` | Sets whether a text track with undetermined language should be selected if no track with `a preferred language` is available, or if the preferred language is unset.
    `DefaultTrackSelector.ParametersBuilder` | `setTunnelingEnabled​(boolean tunnelingEnabled)` | Sets whether to enable tunneling if possible.
    `DefaultTrackSelector.ParametersBuilder` | `setViewportSize​(int viewportWidth, int viewportHeight, boolean viewportOrientationMayChange)` | Sets the viewport size to constrain adaptive video selections so that only tracks suitable for the viewport are selected.
    `DefaultTrackSelector.ParametersBuilder` | `setViewportSizeToPhysicalDisplaySize​(Context context, boolean viewportOrientationMayChange)` | Equivalent to calling `setViewportSize(int, int, boolean)` with the viewport size obtained from `Util.getCurrentDisplayModeSize(Context)`.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ParametersBuilder

          @Deprecated
          public ParametersBuilder()

      Deprecated.
      `Context` constraints will not be set using this constructor. Use `ParametersBuilder(Context)` instead.

    - #### ParametersBuilder

          public ParametersBuilder​(Context context)

      Creates a builder with default initial values.
      Parameters:
        `context` - Any context.

  - ### Method Detail

    - #### setMaxVideoSizeSd

          public DefaultTrackSelector.ParametersBuilder setMaxVideoSizeSd()

      Equivalent to `setMaxVideoSize(1279, 719)`.
      Returns:
        This builder.

    - #### clearVideoSizeConstraints

          public DefaultTrackSelector.ParametersBuilder clearVideoSizeConstraints()

      Equivalent to `setMaxVideoSize(Integer.MAX_VALUE, Integer.MAX_VALUE)`.
      Returns:
        This builder.

    - #### setMaxVideoSize

          public DefaultTrackSelector.ParametersBuilder setMaxVideoSize​(int maxVideoWidth,
                                                                        int maxVideoHeight)

      Sets the maximum allowed video width and height.
      Parameters:
        `maxVideoWidth` - Maximum allowed video width in pixels.
        `maxVideoHeight` - Maximum allowed video height in pixels.
      Returns:
        This builder.

    - #### setMaxVideoFrameRate

          public DefaultTrackSelector.ParametersBuilder setMaxVideoFrameRate​(int maxVideoFrameRate)

      Sets the maximum allowed video frame rate.
      Parameters:
        `maxVideoFrameRate` - Maximum allowed video frame rate in hertz.
      Returns:
        This builder.

    - #### setMaxVideoBitrate

          public DefaultTrackSelector.ParametersBuilder setMaxVideoBitrate​(int maxVideoBitrate)

      Sets the maximum allowed video bitrate.
      Parameters:
        `maxVideoBitrate` - Maximum allowed video bitrate in bits per second.
      Returns:
        This builder.

    - #### setMinVideoSize

          public DefaultTrackSelector.ParametersBuilder setMinVideoSize​(int minVideoWidth,
                                                                        int minVideoHeight)

      Sets the minimum allowed video width and height.
      Parameters:
        `minVideoWidth` - Minimum allowed video width in pixels.
        `minVideoHeight` - Minimum allowed video height in pixels.
      Returns:
        This builder.

    - #### setMinVideoFrameRate

          public DefaultTrackSelector.ParametersBuilder setMinVideoFrameRate​(int minVideoFrameRate)

      Sets the minimum allowed video frame rate.
      Parameters:
        `minVideoFrameRate` - Minimum allowed video frame rate in hertz.
      Returns:
        This builder.

    - #### setMinVideoBitrate

          public DefaultTrackSelector.ParametersBuilder setMinVideoBitrate​(int minVideoBitrate)

      Sets the minimum allowed video bitrate.
      Parameters:
        `minVideoBitrate` - Minimum allowed video bitrate in bits per second.
      Returns:
        This builder.

    - #### setExceedVideoConstraintsIfNecessary

          public DefaultTrackSelector.ParametersBuilder setExceedVideoConstraintsIfNecessary​(boolean exceedVideoConstraintsIfNecessary)

      Sets whether to exceed the `setMaxVideoBitrate(int)`, `setMaxVideoSize(int, int)` and `setMaxVideoFrameRate(int)` constraints when no selection can be made otherwise.
      Parameters:
        `exceedVideoConstraintsIfNecessary` - Whether to exceed video constraints when no selection can be made otherwise.
      Returns:
        This builder.

    - #### setAllowVideoMixedMimeTypeAdaptiveness

          public DefaultTrackSelector.ParametersBuilder setAllowVideoMixedMimeTypeAdaptiveness​(boolean allowVideoMixedMimeTypeAdaptiveness)

      Sets whether to allow adaptive video selections containing mixed MIME types.

      Adaptations between different MIME types may not be completely seamless, in which case `setAllowVideoNonSeamlessAdaptiveness(boolean)` also needs to be `true` for mixed MIME type selections to be made.

      Parameters:
        `allowVideoMixedMimeTypeAdaptiveness` - Whether to allow adaptive video selections containing mixed MIME types.
      Returns:
        This builder.

    - #### setAllowVideoNonSeamlessAdaptiveness

          public DefaultTrackSelector.ParametersBuilder setAllowVideoNonSeamlessAdaptiveness​(boolean allowVideoNonSeamlessAdaptiveness)

      Sets whether to allow adaptive video selections where adaptation may not be completely seamless.
      Parameters:
        `allowVideoNonSeamlessAdaptiveness` - Whether to allow adaptive video selections where adaptation may not be completely seamless.
      Returns:
        This builder.

    - #### setViewportSizeToPhysicalDisplaySize

          public DefaultTrackSelector.ParametersBuilder setViewportSizeToPhysicalDisplaySize​(Context context,
                                                                                             boolean viewportOrientationMayChange)

      Equivalent to calling `setViewportSize(int, int, boolean)` with the viewport size obtained from `Util.getCurrentDisplayModeSize(Context)`.
      Parameters:
        `context` - Any context.
        `viewportOrientationMayChange` - Whether the viewport orientation may change during playback.
      Returns:
        This builder.

    - #### clearViewportSizeConstraints

          public DefaultTrackSelector.ParametersBuilder clearViewportSizeConstraints()

      Equivalent to `setViewportSize(Integer.MAX_VALUE, Integer.MAX_VALUE, true)`.
      Returns:
        This builder.

    - #### setViewportSize

          public DefaultTrackSelector.ParametersBuilder setViewportSize​(int viewportWidth,
                                                                        int viewportHeight,
                                                                        boolean viewportOrientationMayChange)

      Sets the viewport size to constrain adaptive video selections so that only tracks suitable for the viewport are selected.
      Parameters:
        `viewportWidth` - Viewport width in pixels.
        `viewportHeight` - Viewport height in pixels.
        `viewportOrientationMayChange` - Whether the viewport orientation may change during playback.
      Returns:
        This builder.

    - #### setPreferredVideoMimeType

          public DefaultTrackSelector.ParametersBuilder setPreferredVideoMimeType​(@Nullable
                                                                                  String mimeType)

      Sets the preferred sample MIME type for video tracks.
      Parameters:
        `mimeType` - The preferred MIME type for video tracks, or `null` to clear a previously set preference.
      Returns:
        This builder.

    - #### setPreferredVideoMimeTypes

          public DefaultTrackSelector.ParametersBuilder setPreferredVideoMimeTypes​(String... mimeTypes)

      Sets the preferred sample MIME types for video tracks.
      Parameters:
        `mimeTypes` - The preferred MIME types for video tracks in order of preference, or an empty list for no preference.
      Returns:
        This builder.

    - #### setPreferredAudioLanguage

          public DefaultTrackSelector.ParametersBuilder setPreferredAudioLanguage​(@Nullable
                                                                                  String preferredAudioLanguage)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets the preferred language for audio and forced text tracks.
      Overrides:
        `setPreferredAudioLanguage` in class `TrackSelectionParameters.Builder`
      Parameters:
        `preferredAudioLanguage` - Preferred audio language as an IETF BCP 47 conformant tag, or `null` to select the default track, or the first track if there's no default.
      Returns:
        This builder.

    - #### setPreferredAudioLanguages

          public DefaultTrackSelector.ParametersBuilder setPreferredAudioLanguages​(String... preferredAudioLanguages)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets the preferred languages for audio and forced text tracks.
      Overrides:
        `setPreferredAudioLanguages` in class `TrackSelectionParameters.Builder`
      Parameters:
        `preferredAudioLanguages` - Preferred audio languages as IETF BCP 47 conformant tags in order of preference, or an empty array to select the default track, or the first track if there's no default.
      Returns:
        This builder.

    - #### setPreferredAudioRoleFlags

          public DefaultTrackSelector.ParametersBuilder setPreferredAudioRoleFlags​(@RoleFlags
                                                                                   int preferredAudioRoleFlags)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets the preferred `C.RoleFlags` for audio tracks.
      Overrides:
        `setPreferredAudioRoleFlags` in class `TrackSelectionParameters.Builder`
      Parameters:
        `preferredAudioRoleFlags` - Preferred audio role flags.
      Returns:
        This builder.

    - #### setMaxAudioChannelCount

          public DefaultTrackSelector.ParametersBuilder setMaxAudioChannelCount​(int maxAudioChannelCount)

      Sets the maximum allowed audio channel count.
      Parameters:
        `maxAudioChannelCount` - Maximum allowed audio channel count.
      Returns:
        This builder.

    - #### setMaxAudioBitrate

          public DefaultTrackSelector.ParametersBuilder setMaxAudioBitrate​(int maxAudioBitrate)

      Sets the maximum allowed audio bitrate.
      Parameters:
        `maxAudioBitrate` - Maximum allowed audio bitrate in bits per second.
      Returns:
        This builder.

    - #### setExceedAudioConstraintsIfNecessary

          public DefaultTrackSelector.ParametersBuilder setExceedAudioConstraintsIfNecessary​(boolean exceedAudioConstraintsIfNecessary)

      Sets whether to exceed the `setMaxAudioChannelCount(int)` and `setMaxAudioBitrate(int)` constraints when no selection can be made otherwise.
      Parameters:
        `exceedAudioConstraintsIfNecessary` - Whether to exceed audio constraints when no selection can be made otherwise.
      Returns:
        This builder.

    - #### setAllowAudioMixedMimeTypeAdaptiveness

          public DefaultTrackSelector.ParametersBuilder setAllowAudioMixedMimeTypeAdaptiveness​(boolean allowAudioMixedMimeTypeAdaptiveness)

      Sets whether to allow adaptive audio selections containing mixed MIME types.

      Adaptations between different MIME types may not be completely seamless.

      Parameters:
        `allowAudioMixedMimeTypeAdaptiveness` - Whether to allow adaptive audio selections containing mixed MIME types.
      Returns:
        This builder.

    - #### setAllowAudioMixedSampleRateAdaptiveness

          public DefaultTrackSelector.ParametersBuilder setAllowAudioMixedSampleRateAdaptiveness​(boolean allowAudioMixedSampleRateAdaptiveness)

      Sets whether to allow adaptive audio selections containing mixed sample rates.

      Adaptations between different sample rates may not be completely seamless.

      Parameters:
        `allowAudioMixedSampleRateAdaptiveness` - Whether to allow adaptive audio selections containing mixed sample rates.
      Returns:
        This builder.

    - #### setAllowAudioMixedChannelCountAdaptiveness

          public DefaultTrackSelector.ParametersBuilder setAllowAudioMixedChannelCountAdaptiveness​(boolean allowAudioMixedChannelCountAdaptiveness)

      Sets whether to allow adaptive audio selections containing mixed channel counts.

      Adaptations between different channel counts may not be completely seamless.

      Parameters:
        `allowAudioMixedChannelCountAdaptiveness` - Whether to allow adaptive audio selections containing mixed channel counts.
      Returns:
        This builder.

    - #### setPreferredAudioMimeType

          public DefaultTrackSelector.ParametersBuilder setPreferredAudioMimeType​(@Nullable
                                                                                  String mimeType)

      Sets the preferred sample MIME type for audio tracks.
      Parameters:
        `mimeType` - The preferred MIME type for audio tracks, or `null` to clear a previously set preference.
      Returns:
        This builder.

    - #### setPreferredAudioMimeTypes

          public DefaultTrackSelector.ParametersBuilder setPreferredAudioMimeTypes​(String... mimeTypes)

      Sets the preferred sample MIME types for audio tracks.
      Parameters:
        `mimeTypes` - The preferred MIME types for audio tracks in order of preference, or an empty list for no preference.
      Returns:
        This builder.

    - #### setPreferredTextLanguageAndRoleFlagsToCaptioningManagerSettings

          public DefaultTrackSelector.ParametersBuilder setPreferredTextLanguageAndRoleFlagsToCaptioningManagerSettings​(Context context)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets the preferred language and role flags for text tracks based on the accessibility settings of `CaptioningManager`.

      Does nothing for API levels < 19 or when the `CaptioningManager` is disabled.

      Overrides:
        `setPreferredTextLanguageAndRoleFlagsToCaptioningManagerSettings` in class `TrackSelectionParameters.Builder`
      Parameters:
        `context` - A `Context`.
      Returns:
        This builder.

    - #### setPreferredTextLanguage

          public DefaultTrackSelector.ParametersBuilder setPreferredTextLanguage​(@Nullable
                                                                                 String preferredTextLanguage)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets the preferred language for text tracks.
      Overrides:
        `setPreferredTextLanguage` in class `TrackSelectionParameters.Builder`
      Parameters:
        `preferredTextLanguage` - Preferred text language as an IETF BCP 47 conformant tag, or `null` to select the default track if there is one, or no track otherwise.
      Returns:
        This builder.

    - #### setPreferredTextLanguages

          public DefaultTrackSelector.ParametersBuilder setPreferredTextLanguages​(String... preferredTextLanguages)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets the preferred languages for text tracks.
      Overrides:
        `setPreferredTextLanguages` in class `TrackSelectionParameters.Builder`
      Parameters:
        `preferredTextLanguages` - Preferred text languages as IETF BCP 47 conformant tags in order of preference, or an empty array to select the default track if there is one, or no track otherwise.
      Returns:
        This builder.

    - #### setPreferredTextRoleFlags

          public DefaultTrackSelector.ParametersBuilder setPreferredTextRoleFlags​(@RoleFlags
                                                                                  int preferredTextRoleFlags)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets the preferred `C.RoleFlags` for text tracks.
      Overrides:
        `setPreferredTextRoleFlags` in class `TrackSelectionParameters.Builder`
      Parameters:
        `preferredTextRoleFlags` - Preferred text role flags.
      Returns:
        This builder.

    - #### setSelectUndeterminedTextLanguage

          public DefaultTrackSelector.ParametersBuilder setSelectUndeterminedTextLanguage​(boolean selectUndeterminedTextLanguage)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets whether a text track with undetermined language should be selected if no track with `a preferred language` is available, or if the preferred language is unset.
      Overrides:
        `setSelectUndeterminedTextLanguage` in class `TrackSelectionParameters.Builder`
      Parameters:
        `selectUndeterminedTextLanguage` - Whether a text track with undetermined language should be selected if no preferred language track is available.
      Returns:
        This builder.

    - #### setDisabledTextTrackSelectionFlags

          public DefaultTrackSelector.ParametersBuilder setDisabledTextTrackSelectionFlags​(@SelectionFlags
                                                                                           int disabledTextTrackSelectionFlags)

      Description copied from class: `TrackSelectionParameters.Builder`
      Sets a bitmask of selection flags that are disabled for text track selections.
      Overrides:
        `setDisabledTextTrackSelectionFlags` in class `TrackSelectionParameters.Builder`
      Parameters:
        `disabledTextTrackSelectionFlags` - A bitmask of `C.SelectionFlags` that are disabled for text track selections.
      Returns:
        This builder.

    - #### setForceLowestBitrate

          public DefaultTrackSelector.ParametersBuilder setForceLowestBitrate​(boolean forceLowestBitrate)

      Sets whether to force selection of the single lowest bitrate audio and video tracks that comply with all other constraints.
      Parameters:
        `forceLowestBitrate` - Whether to force selection of the single lowest bitrate audio and video tracks.
      Returns:
        This builder.

    - #### setForceHighestSupportedBitrate

          public DefaultTrackSelector.ParametersBuilder setForceHighestSupportedBitrate​(boolean forceHighestSupportedBitrate)

      Sets whether to force selection of the highest bitrate audio and video tracks that comply with all other constraints.
      Parameters:
        `forceHighestSupportedBitrate` - Whether to force selection of the highest bitrate audio and video tracks.
      Returns:
        This builder.

    - #### setExceedRendererCapabilitiesIfNecessary

          public DefaultTrackSelector.ParametersBuilder setExceedRendererCapabilitiesIfNecessary​(boolean exceedRendererCapabilitiesIfNecessary)

      Sets 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.

      Parameters:
        `exceedRendererCapabilitiesIfNecessary` - Whether to exceed renderer capabilities when no selection can be made otherwise.
      Returns:
        This builder.

    - #### setTunnelingEnabled

          public DefaultTrackSelector.ParametersBuilder setTunnelingEnabled​(boolean tunnelingEnabled)

      Sets whether to enable tunneling if possible. Tunneling will only be enabled if it's supported by the audio and video renderers for the selected tracks.
      Parameters:
        `tunnelingEnabled` - Whether to enable tunneling if possible.
      Returns:
        This builder.

    - #### setAllowMultipleAdaptiveSelections

          public DefaultTrackSelector.ParametersBuilder setAllowMultipleAdaptiveSelections​(boolean allowMultipleAdaptiveSelections)

      Sets whether multiple adaptive selections with more than one track are allowed.
      Parameters:
        `allowMultipleAdaptiveSelections` - Whether multiple adaptive selections are allowed.
      Returns:
        This builder.

    - #### setRendererDisabled

          public final DefaultTrackSelector.ParametersBuilder setRendererDisabled​(int rendererIndex,
                                                                                  boolean disabled)

      Sets whether the renderer at the specified index is disabled. Disabling a renderer prevents the selector from selecting any tracks for it.
      Parameters:
        `rendererIndex` - The renderer index.
        `disabled` - Whether the renderer is disabled.
      Returns:
        This builder.

    - #### setSelectionOverride

          public final DefaultTrackSelector.ParametersBuilder setSelectionOverride​(int rendererIndex,
                                                                                   TrackGroupArray groups,
                                                                                   @Nullable
                                                                                   DefaultTrackSelector.SelectionOverride override)

      Overrides the track selection for the renderer at the specified index.

      When the `TrackGroupArray` mapped to the renderer matches the one provided, the override is applied. When the `TrackGroupArray` does not match, the override has no effect. The override replaces any previous override for the specified `TrackGroupArray` for the specified `Renderer`.

      Passing a `null` override will cause the renderer to be disabled when the `TrackGroupArray` mapped to it matches the one provided. When the `TrackGroupArray` does not match a `null` override has no effect. Hence a `null` override differs from disabling the renderer using `setRendererDisabled(int, boolean)` because the renderer is disabled conditionally on the `TrackGroupArray` mapped to it, where-as `setRendererDisabled(int, boolean)` disables the renderer unconditionally.

      To remove overrides use `clearSelectionOverride(int, TrackGroupArray)`, `clearSelectionOverrides(int)` or `clearSelectionOverrides()`.

      Parameters:
        `rendererIndex` - The renderer index.
        `groups` - The `TrackGroupArray` for which the override should be applied.
        `override` - The override.
      Returns:
        This builder.

    - #### clearSelectionOverride

          public final DefaultTrackSelector.ParametersBuilder clearSelectionOverride​(int rendererIndex,
                                                                                     TrackGroupArray groups)

      Clears a track selection override for the specified renderer and `TrackGroupArray`.
      Parameters:
        `rendererIndex` - The renderer index.
        `groups` - The `TrackGroupArray` for which the override should be cleared.
      Returns:
        This builder.

    - #### clearSelectionOverrides

          public final DefaultTrackSelector.ParametersBuilder clearSelectionOverrides​(int rendererIndex)

      Clears all track selection overrides for the specified renderer.
      Parameters:
        `rendererIndex` - The renderer index.
      Returns:
        This builder.

    - #### clearSelectionOverrides

          public final DefaultTrackSelector.ParametersBuilder clearSelectionOverrides()

      Clears all track selection overrides for all renderers.
      Returns:
        This builder.

    - #### build

          public DefaultTrackSelector.Parameters build()

      Builds a `DefaultTrackSelector.Parameters` instance with the selected values.
      Overrides:
        `build` in class `TrackSelectionParameters.Builder`