diff --git a/src/controller/eme-controller.ts b/src/controller/eme-controller.ts index 5f91fb7006b..56da024059c 100644 --- a/src/controller/eme-controller.ts +++ b/src/controller/eme-controller.ts @@ -544,7 +544,7 @@ class EMEController implements ComponentAPI { const json = bin2str(new Uint8Array(initData)); try { const sinf = base64Decode(JSON.parse(json).sinf); - const tenc = parseSinf(new Uint8Array(sinf)); + const tenc = parseSinf(sinf); if (!tenc) { return; } diff --git a/src/crypt/decrypter.ts b/src/crypt/decrypter.ts index ada612153dc..9c32acf99cb 100644 --- a/src/crypt/decrypter.ts +++ b/src/crypt/decrypter.ts @@ -85,7 +85,8 @@ export default class Decrypter { ): Promise { if (this.useSoftware) { return new Promise((resolve, reject) => { - this.softwareDecrypt(new Uint8Array(data), key, iv); + const dataView = ArrayBuffer.isView(data) ? data : new Uint8Array(data); + this.softwareDecrypt(dataView, key, iv); const decryptResult = this.flush(); if (decryptResult) { resolve(decryptResult.buffer);