diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 38a8dc8edb..d5b511d218 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -35,6 +35,9 @@ * Provide `MediaCodecInfo` of the codec that will be initialized in `MediaCodecRenderer.onReadyToInitializeCodec` ([#1963](https://github.com/androidx/media/pull/1963)). + * Disable use of asynchronous decryption in MediaCodec to avoid reported + codec timeout issues with this platform API + ([#1641](https://github.com/androidx/media/issues/1641)). * Transformer: * Update parameters of `VideoFrameProcessor.registerInputStream` and `VideoFrameProcessor.Listener.onInputStreamRegistered` to use `Format`. diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/AsynchronousMediaCodecAdapter.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/AsynchronousMediaCodecAdapter.java index 00b38ffc7d..225b80d2c7 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/AsynchronousMediaCodecAdapter.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/AsynchronousMediaCodecAdapter.java @@ -80,7 +80,7 @@ public Factory(@C.TrackType int trackType) { Supplier queueingThreadSupplier) { this.callbackThreadSupplier = callbackThreadSupplier; this.queueingThreadSupplier = queueingThreadSupplier; - enableSynchronousBufferQueueingWithAsyncCryptoFlag = true; + enableSynchronousBufferQueueingWithAsyncCryptoFlag = false; } /** diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/DefaultMediaCodecAdapterFactory.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/DefaultMediaCodecAdapterFactory.java index 6699c424cc..a14b51d1d3 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/DefaultMediaCodecAdapterFactory.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/mediacodec/DefaultMediaCodecAdapterFactory.java @@ -67,7 +67,7 @@ public final class DefaultMediaCodecAdapterFactory implements MediaCodecAdapter. @Deprecated public DefaultMediaCodecAdapterFactory() { asynchronousMode = MODE_DEFAULT; - asyncCryptoFlagEnabled = true; + asyncCryptoFlagEnabled = false; context = null; } @@ -79,7 +79,7 @@ public DefaultMediaCodecAdapterFactory() { public DefaultMediaCodecAdapterFactory(Context context) { this.context = context; asynchronousMode = MODE_DEFAULT; - asyncCryptoFlagEnabled = true; + asyncCryptoFlagEnabled = false; } /**