okjack
FongMi 2 years ago
parent 9f765cd549
commit 45ee6d1699
  1. 2
      app/build.gradle
  2. 13
      app/src/main/java/com/fongmi/android/tv/bean/Drm.java

@ -11,7 +11,7 @@ android {
minSdk 21
targetSdk 28
versionCode 215
versionName "1228"
versionName "1228#2"
javaCompileOptions {
annotationProcessorOptions {
arguments = ["room.schemaLocation": "$projectDir/schemas".toString()]

@ -40,6 +40,7 @@ public class Drm {
}
private UUID getUUID() {
if (getType().contains("playready")) return C.PLAYREADY_UUID;
if (getType().contains("widevine")) return C.WIDEVINE_UUID;
if (getType().contains("clearkey")) return C.CLEARKEY_UUID;
return C.UUID_NIL;
@ -47,21 +48,9 @@ public class Drm {
private String getUri() {
if (getKey().startsWith("http")) return getKey();
if (!getKey().startsWith("{") && getKey().contains(":")) convert();
return Server.get().getAddress("license/") + Util.base64(getKey());
}
private void convert() {
String[] split = getKey().split(":");
String kid = getBase64(split[0]);
String key = getBase64(split[1]);
setKey(String.format("{ \"keys\":[ { \"kty\":\"oct\", \"k\":\"%s\", \"kid\":\"%s\" } ], \"type\":\"temporary\" }", key, kid));
}
private String getBase64(String s) {
return Util.base64(Util.hex2byte(s)).replace("=", "");
}
public MediaItem.DrmConfiguration get() {
return new MediaItem.DrmConfiguration.Builder(getUUID()).setLicenseUri(getUri()).build();
}

Loading…
Cancel
Save