Fix casting to not need warning suppression

Also remove getRendererCapabilities arg that's now always null.

PiperOrigin-RevId: 283966795
This commit is contained in:
olly 2019-12-05 15:08:56 +00:00 committed by Oliver Woodman
parent 023e141be8
commit a5ee17ec26
4 changed files with 9 additions and 15 deletions

View File

@ -507,7 +507,7 @@ public class PlayerActivity extends AppCompatActivity
} }
private MediaSource createLeafMediaSource( private MediaSource createLeafMediaSource(
Uri uri, String extension, DrmSessionManager<ExoMediaCrypto> drmSessionManager) { Uri uri, String extension, DrmSessionManager<?> drmSessionManager) {
@ContentType int type = Util.inferContentType(uri, extension); @ContentType int type = Util.inferContentType(uri, extension);
switch (type) { switch (type) {
case C.TYPE_DASH: case C.TYPE_DASH:
@ -616,13 +616,12 @@ public class PlayerActivity extends AppCompatActivity
MediaSourceFactory adMediaSourceFactory = MediaSourceFactory adMediaSourceFactory =
new MediaSourceFactory() { new MediaSourceFactory() {
private DrmSessionManager<ExoMediaCrypto> drmSessionManager = private DrmSessionManager<?> drmSessionManager =
DrmSessionManager.getDummyDrmSessionManager(); DrmSessionManager.getDummyDrmSessionManager();
@Override @Override
@SuppressWarnings("unchecked") // Safe upcasting.
public MediaSourceFactory setDrmSessionManager(DrmSessionManager<?> drmSessionManager) { public MediaSourceFactory setDrmSessionManager(DrmSessionManager<?> drmSessionManager) {
this.drmSessionManager = (DrmSessionManager<ExoMediaCrypto>) drmSessionManager; this.drmSessionManager = drmSessionManager;
return this; return this;
} }

View File

@ -269,7 +269,7 @@ public final class DownloadHelper {
drmSessionManager, drmSessionManager,
/* streamKeys= */ null), /* streamKeys= */ null),
trackSelectorParameters, trackSelectorParameters,
Util.getRendererCapabilities(renderersFactory, /* drmSessionManager= */ null)); Util.getRendererCapabilities(renderersFactory));
} }
/** @deprecated Use {@link #forHls(Context, Uri, Factory, RenderersFactory)} */ /** @deprecated Use {@link #forHls(Context, Uri, Factory, RenderersFactory)} */
@ -339,7 +339,7 @@ public final class DownloadHelper {
drmSessionManager, drmSessionManager,
/* streamKeys= */ null), /* streamKeys= */ null),
trackSelectorParameters, trackSelectorParameters,
Util.getRendererCapabilities(renderersFactory, /* drmSessionManager= */ null)); Util.getRendererCapabilities(renderersFactory));
} }
/** @deprecated Use {@link #forSmoothStreaming(Context, Uri, Factory, RenderersFactory)} */ /** @deprecated Use {@link #forSmoothStreaming(Context, Uri, Factory, RenderersFactory)} */
@ -409,7 +409,7 @@ public final class DownloadHelper {
drmSessionManager, drmSessionManager,
/* streamKeys= */ null), /* streamKeys= */ null),
trackSelectorParameters, trackSelectorParameters,
Util.getRendererCapabilities(renderersFactory, /* drmSessionManager= */ null)); Util.getRendererCapabilities(renderersFactory));
} }
/** /**

View File

@ -54,8 +54,6 @@ import com.google.android.exoplayer2.RendererCapabilities;
import com.google.android.exoplayer2.RenderersFactory; import com.google.android.exoplayer2.RenderersFactory;
import com.google.android.exoplayer2.SeekParameters; import com.google.android.exoplayer2.SeekParameters;
import com.google.android.exoplayer2.audio.AudioRendererEventListener; import com.google.android.exoplayer2.audio.AudioRendererEventListener;
import com.google.android.exoplayer2.drm.DrmSessionManager;
import com.google.android.exoplayer2.drm.FrameworkMediaCrypto;
import com.google.android.exoplayer2.upstream.DataSource; import com.google.android.exoplayer2.upstream.DataSource;
import com.google.android.exoplayer2.video.VideoRendererEventListener; import com.google.android.exoplayer2.video.VideoRendererEventListener;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
@ -1979,13 +1977,10 @@ public final class Util {
* Extract renderer capabilities for the renderers created by the provided renderers factory. * Extract renderer capabilities for the renderers created by the provided renderers factory.
* *
* @param renderersFactory A {@link RenderersFactory}. * @param renderersFactory A {@link RenderersFactory}.
* @param drmSessionManager An optional {@link DrmSessionManager} used by the renderers.
* @return The {@link RendererCapabilities} for each renderer created by the {@code * @return The {@link RendererCapabilities} for each renderer created by the {@code
* renderersFactory}. * renderersFactory}.
*/ */
public static RendererCapabilities[] getRendererCapabilities( public static RendererCapabilities[] getRendererCapabilities(RenderersFactory renderersFactory) {
RenderersFactory renderersFactory,
@Nullable DrmSessionManager<FrameworkMediaCrypto> drmSessionManager) {
Renderer[] renderers = Renderer[] renderers =
renderersFactory.createRenderers( renderersFactory.createRenderers(
new Handler(), new Handler(),
@ -1993,7 +1988,7 @@ public final class Util {
new AudioRendererEventListener() {}, new AudioRendererEventListener() {},
(cues) -> {}, (cues) -> {},
(metadata) -> {}, (metadata) -> {},
drmSessionManager); /* drmSessionManager= */ null);
RendererCapabilities[] capabilities = new RendererCapabilities[renderers.length]; RendererCapabilities[] capabilities = new RendererCapabilities[renderers.length];
for (int i = 0; i < renderers.length; i++) { for (int i = 0; i < renderers.length; i++) {
capabilities[i] = renderers[i].getCapabilities(); capabilities[i] = renderers[i].getCapabilities();

View File

@ -115,7 +115,7 @@ public class DownloadHelperTest {
TEST_CACHE_KEY, TEST_CACHE_KEY,
new TestMediaSource(), new TestMediaSource(),
DownloadHelper.DEFAULT_TRACK_SELECTOR_PARAMETERS_WITHOUT_VIEWPORT, DownloadHelper.DEFAULT_TRACK_SELECTOR_PARAMETERS_WITHOUT_VIEWPORT,
Util.getRendererCapabilities(renderersFactory, /* drmSessionManager= */ null)); Util.getRendererCapabilities(renderersFactory));
} }
@Test @Test