Remove TrackSelection.Factory from SelectionOverride
Issue: #3915 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=193045534
This commit is contained in:
parent
e99b8802eb
commit
fec7d32836
@ -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 =
|
||||
|
@ -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.
|
||||
|
@ -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);
|
||||
rendererTrackSelections[i] =
|
||||
override == null ? null : override.createTrackSelection(rendererTrackGroup);
|
||||
if (override == null) {
|
||||
rendererTrackSelections[i] = null;
|
||||
} else if (override.length == 1) {
|
||||
rendererTrackSelections[i] =
|
||||
new FixedTrackSelection(
|
||||
rendererTrackGroup.get(override.groupIndex), override.tracks[0]);
|
||||
} else {
|
||||
rendererTrackSelections[i] =
|
||||
adaptiveTrackSelectionFactory.createTrackSelection(
|
||||
rendererTrackGroup.get(override.groupIndex), override.tracks);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -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;
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user