From 4cc8e209bda9983990593993b39d91fff63259a1 Mon Sep 17 00:00:00 2001 From: FongMi Date: Wed, 12 Mar 2025 00:56:42 +0800 Subject: [PATCH] Add forceKey for drm --- .../main/java/com/fongmi/android/tv/bean/Drm.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Drm.java b/app/src/main/java/com/fongmi/android/tv/bean/Drm.java index 81a8edc54..d4351c6c7 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Drm.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Drm.java @@ -17,6 +17,8 @@ public class Drm { private String key; @SerializedName("type") private String type; + @SerializedName("forceKey") + private boolean forceKey; @SerializedName("header") private JsonElement header; @@ -37,6 +39,10 @@ public class Drm { return TextUtils.isEmpty(type) ? "" : type; } + public boolean isForceKey() { + return forceKey; + } + private JsonElement getHeader() { return header; } @@ -49,6 +55,11 @@ public class Drm { } public MediaItem.DrmConfiguration get() { - return new MediaItem.DrmConfiguration.Builder(getUUID()).setLicenseUri(getKey()).setLicenseRequestHeaders(Json.toMap(getHeader())).setMultiSession(!getType().contains("clearkey")).build(); + MediaItem.DrmConfiguration.Builder builder = new MediaItem.DrmConfiguration.Builder(getUUID()); + builder.setMultiSession(!C.CLEARKEY_UUID.equals(getUUID())); + builder.setLicenseRequestHeaders(Json.toMap(getHeader())); + builder.setForceDefaultLicenseUri(isForceKey()); + builder.setLicenseUri(getKey()); + return builder.build(); } }