Remove TrackSelection.Factory from SelectionOverride

Issue: #3915

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=193045534
This commit is contained in:
olly 2018-04-16 08:46:22 -07:00 committed by Oliver Woodman
parent e99b8802eb
commit fec7d32836
4 changed files with 16 additions and 38 deletions

View File

@ -361,7 +361,7 @@ public class PlayerActivity extends Activity
new DefaultRenderersFactory(this, extensionRendererMode);
trackSelector = new DefaultTrackSelector(trackSelectionFactory);
trackSelectionHelper = new TrackSelectionHelper(trackSelector, trackSelectionFactory);
trackSelectionHelper = new TrackSelectionHelper(trackSelector);
lastSeenTrackGroupArray = null;
player =

View File

@ -32,7 +32,6 @@ import com.google.android.exoplayer2.source.TrackGroupArray;
import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
import com.google.android.exoplayer2.trackselection.DefaultTrackSelector.SelectionOverride;
import com.google.android.exoplayer2.trackselection.MappingTrackSelector.MappedTrackInfo;
import com.google.android.exoplayer2.trackselection.TrackSelection;
import java.util.Arrays;
/**
@ -42,7 +41,6 @@ import java.util.Arrays;
DialogInterface.OnClickListener {
private final DefaultTrackSelector selector;
private final TrackSelection.Factory trackSelectionFactory;
private MappedTrackInfo trackInfo;
private int rendererIndex;
@ -55,14 +53,9 @@ import java.util.Arrays;
private CheckedTextView defaultView;
private CheckedTextView[][] trackViews;
/**
* @param selector The track selector.
* @param trackSelectionFactory A factory for overriding {@link TrackSelection}s.
*/
public TrackSelectionHelper(
DefaultTrackSelector selector, TrackSelection.Factory trackSelectionFactory) {
/** @param selector The track selector. */
public TrackSelectionHelper(DefaultTrackSelector selector) {
this.selector = selector;
this.trackSelectionFactory = trackSelectionFactory;
}
/**
@ -228,7 +221,7 @@ import java.util.Arrays;
}
private void setOverride(int group, int... tracks) {
override = new SelectionOverride(trackSelectionFactory, group, tracks);
override = new SelectionOverride(group, tracks);
}
// Track array manipulation.

View File

@ -632,33 +632,20 @@ public class DefaultTrackSelector extends MappingTrackSelector {
/** A track selection override. */
public static class SelectionOverride {
public final TrackSelection.Factory factory;
public final int groupIndex;
public final int[] tracks;
public final int length;
/**
* @param factory A factory for creating selections from this override.
* @param groupIndex The overriding track group index.
* @param tracks The overriding track indices within the track group.
*/
public SelectionOverride(TrackSelection.Factory factory, int groupIndex, int... tracks) {
this.factory = factory;
public SelectionOverride(int groupIndex, int... tracks) {
this.groupIndex = groupIndex;
this.tracks = tracks;
this.length = tracks.length;
}
/**
* Creates an selection from this override.
*
* @param groups The track groups whose selection is being overridden.
* @return The selection.
*/
public TrackSelection createTrackSelection(TrackGroupArray groups) {
return factory.createTrackSelection(groups.get(groupIndex), tracks);
}
/** Returns whether this override contains the specified track index. */
public boolean containsTrack(int track) {
for (int overrideTrack : tracks) {
@ -905,8 +892,17 @@ public class DefaultTrackSelector extends MappingTrackSelector {
TrackGroupArray rendererTrackGroup = mappedTrackInfo.getTrackGroups(i);
if (hasSelectionOverride(i, rendererTrackGroup)) {
SelectionOverride override = selectionOverrides.get(i).get(rendererTrackGroup);
if (override == null) {
rendererTrackSelections[i] = null;
} else if (override.length == 1) {
rendererTrackSelections[i] =
override == null ? null : override.createTrackSelection(rendererTrackGroup);
new FixedTrackSelection(
rendererTrackGroup.get(override.groupIndex), override.tracks[0]);
} else {
rendererTrackSelections[i] =
adaptiveTrackSelectionFactory.createTrackSelection(
rendererTrackGroup.get(override.groupIndex), override.tracks);
}
}
}
}

View File

@ -264,17 +264,6 @@ public abstract class MappingTrackSelector extends TrackSelector {
}
// TODO: Make DefaultTrackSelector.SelectionOverride final when this is removed.
/** @deprecated Use {@link DefaultTrackSelector.SelectionOverride} */
@Deprecated
public static final class SelectionOverride extends DefaultTrackSelector.SelectionOverride {
public SelectionOverride(TrackSelection.Factory factory, int groupIndex, int... tracks) {
super(factory, groupIndex, tracks);
}
}
private MappedTrackInfo currentMappedTrackInfo;
/**