diff --git a/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java b/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java index 1f45380cc3..29e84d35cc 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/drm/FrameworkMediaDrm.java @@ -218,11 +218,7 @@ public final class FrameworkMediaDrm implements ExoMediaDrm { mediaDrm.getKeyRequest(scope, initData, mimeType, keyType, optionalParameters); byte[] requestData = adjustRequestData(uuid, request.getData()); - - String licenseServerUrl = request.getDefaultUrl(); - if (MOCK_LA_URL_VALUE.equals(licenseServerUrl)) { - licenseServerUrl = ""; - } + String licenseServerUrl = adjustLicenseServerUrl(request.getDefaultUrl()); if (TextUtils.isEmpty(licenseServerUrl) && schemeData != null && !TextUtils.isEmpty(schemeData.licenseServerUrl)) { @@ -236,6 +232,17 @@ public final class FrameworkMediaDrm implements ExoMediaDrm { return new KeyRequest(requestData, licenseServerUrl, requestType); } + private static String adjustLicenseServerUrl(String licenseServerUrl) { + if (MOCK_LA_URL.equals(licenseServerUrl)) { + return ""; + } else if (Util.SDK_INT == 33 && "https://default.url".equals(licenseServerUrl)) { + // Work around b/247808112 + return ""; + } else { + return licenseServerUrl; + } + } + @Override @Nullable public byte[] provideKeyResponse(byte[] scope, byte[] response)