@Override protected void onDisabled() { format = null; availableCodecInfos = null; try { releaseCodec(); } finally { try { if (drmSession != null) { drmSessionManager.releaseSession(drmSession); } } finally { try { if (pendingDrmSession != null && pendingDrmSession != drmSession) { drmSessionManager.releaseSession(pendingDrmSession); } } finally { drmSession = null; pendingDrmSession = null; } } } }
/** * Returns whether {@code drmSessionManager} supports the specified {@code drmInitData}, or true * if {@code drmInitData} is null. * * @param drmSessionManager The drm session manager. * @param drmInitData {@link DrmInitData} of the format to check for support. * @return Whether {@code drmSessionManager} supports the specified {@code drmInitData}, or * true if {@code drmInitData} is null. */ protected static boolean supportsFormatDrm(@Nullable DrmSessionManager<?> drmSessionManager, @Nullable DrmInitData drmInitData) { if (drmInitData == null) { // Content is unencrypted. return true; } else if (drmSessionManager == null) { // Content is encrypted, but no drm session manager is available. return false; } return drmSessionManager.canAcquireSession(drmInitData); }
new IllegalStateException("Media requires a DrmSessionManager"), getIndex()); pendingDrmSession = drmSessionManager.acquireSession(Looper.myLooper(), inputFormat.drmInitData); if (pendingDrmSession == drmSession) { drmSessionManager.releaseSession(pendingDrmSession);
new IllegalStateException("Media requires a DrmSessionManager"), getIndex()); pendingDrmSession = drmSessionManager.acquireSession(Looper.myLooper(), format.drmInitData); if (pendingDrmSession == drmSession) { drmSessionManager.releaseSession(pendingDrmSession);
new IllegalStateException("Media requires a DrmSessionManager"), getIndex()); pendingDrmSession = drmSessionManager.acquireSession(Looper.myLooper(), format.drmInitData); if (pendingDrmSession == drmSession) { drmSessionManager.releaseSession(pendingDrmSession);
@Override protected void onDisabled() { inputFormat = null; audioTrackNeedsConfigure = true; waitingForKeys = false; try { releaseDecoder(); audioSink.release(); } finally { try { if (drmSession != null) { drmSessionManager.releaseSession(drmSession); } } finally { try { if (pendingDrmSession != null && pendingDrmSession != drmSession) { drmSessionManager.releaseSession(pendingDrmSession); } } finally { drmSession = null; pendingDrmSession = null; decoderCounters.ensureUpdated(); eventDispatcher.disabled(decoderCounters); } } } }
@Override protected void onDisabled() { format = null; waitingForKeys = false; clearReportedVideoSize(); clearRenderedFirstFrame(); try { releaseDecoder(); } finally { try { if (drmSession != null) { drmSessionManager.releaseSession(drmSession); } } finally { try { if (pendingDrmSession != null && pendingDrmSession != drmSession) { drmSessionManager.releaseSession(pendingDrmSession); } } finally { drmSession = null; pendingDrmSession = null; decoderCounters.ensureUpdated(); eventDispatcher.disabled(decoderCounters); } } } }
if (drmSession != null && pendingDrmSession != drmSession) { try { drmSessionManager.releaseSession(drmSession); } finally { drmSession = null;