Package com.castlabs.android.player

# Class VideoTrackSelection.Factory

java.lang.Object
com.castlabs.android.player.VideoTrackSelection.Factory

All Implemented Interfaces:
  `com.google.android.exoplayer2.trackselection.ExoTrackSelection.Factory`

Enclosing class:
  `VideoTrackSelection`

public static final class VideoTrackSelection.Factory extends Object implements com.google.android.exoplayer2.trackselection.ExoTrackSelection.Factory
The factory used to create instances of the track selector

- ## Method Summary

  Modifier and Type
  Method
  Description
  `VideoTrackSelection`
  `createTrackSelection(com.google.android.exoplayer2.source.TrackGroup group, com.google.android.exoplayer2.source.MediaSource.MediaPeriodId periodId, com.google.android.exoplayer2.Timeline timeline, int... tracks)`
  Creates a track selection
  `com.google.android.exoplayer2.trackselection.ExoTrackSelection[]`
  `createTrackSelections(com.google.android.exoplayer2.trackselection.ExoTrackSelection.Definition[] definitions, com.google.android.exoplayer2.upstream.BandwidthMeter bandwidthMeter, com.google.android.exoplayer2.source.MediaSource.MediaPeriodId mediaPeriodId, com.google.android.exoplayer2.Timeline timeline)`
  `void`
  `resetBandwidthMeter()`
  Resets bandwidth meter

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

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

- ## Method Details

  - ### resetBandwidthMeter

    public void resetBandwidthMeter()
    Resets bandwidth meter

  - ### createTrackSelection

    public VideoTrackSelection createTrackSelection(com.google.android.exoplayer2.source.TrackGroup group, @NonNull com.google.android.exoplayer2.source.MediaSource.MediaPeriodId periodId, @NonNull com.google.android.exoplayer2.Timeline timeline, int... tracks)
    Creates a track selection
    Parameters:
      `group` - Track group
      `periodId` - Period Id
      `timeline` - Timeline
      `tracks` - Tracks
    Returns:
      Track selection

  - ### createTrackSelections

    @NonNull public com.google.android.exoplayer2.trackselection.ExoTrackSelection[] createTrackSelections(@NonNull com.google.android.exoplayer2.trackselection.ExoTrackSelection.Definition[] definitions, @NonNull com.google.android.exoplayer2.upstream.BandwidthMeter bandwidthMeter, @NonNull com.google.android.exoplayer2.source.MediaSource.MediaPeriodId mediaPeriodId, @NonNull com.google.android.exoplayer2.Timeline timeline)
    Specified by:
      `createTrackSelections` in interface `com.google.android.exoplayer2.trackselection.ExoTrackSelection.Factory`