Closed NKS1608 closed 1 week ago
Is there a warning at the top when you run it?
Only on cli
Only on cli
Could I see the warning?
Also that's weird, does that mean with the GUI downloading works?
On CLI: [WARN] Decryption not enabled! On GUI: Not Work and no Warning
You don't have mp4decrypt properly installed/setup, though on the GUI you should still get that warning, I'll look into fixing that
I have changed the in-path.yml to the full path
ffmpeg: "/usr/local/bin/ffmpeg"
mkvmerge: "/usr/local/bin/mkvmerge"
ffprobe: "/usr/local/bin/ffprobe"
mp4decrypt: "/usr/local/bin/mp4decrypt"
What is the result of opening a terminal and typing mp4decrypt
?
(Bento4 Version 1.6.0.0)
(c) 2002-2015 Axiomatic Systems, LLC
usage: mp4decrypt [options] <input> <output>
Options are:
--show-progress : show progress details
--key <id>:<k>
<id> is either a track ID in decimal or a 128-bit KID in hex,
<k> is a 128-bit key in hex
(several --key options can be used, one for each track or KID)
note: for dcf files, use 1 as the track index
note: for Marlin IPMP/ACGK, use 0 as the track ID
note: KIDs are only applicable to some encryption methods like MPEG-CENC
--fragments-info <filename>
Decrypt the fragments read from <input>, with track info read
from <filename>.
Check the bin-path.yml and if it has ".exe" and the end of all the files, remove the ".exe" and check if it works
EDIT: Realized you said MacOS in the ticket itself, whoops
I've tried it, I even put in the full path and it didn't work
Weird, so changing the mp4decrypt path to just mp4decrypt
doesn't work?
How did you add mp4decrypt to your system path?
It didn't work, and it's in the path, it was installed by brew
And just to make double sure, you don't have a warning at the very top of the script when running it that says either Private key missing
or Identifier blob missing
?
Could you share a screenshot of your widevine directory?
I'll install it on windows and try it out
I just want to make sure of a few things since I want to make sure there isn't a problem with our auto CDM detection, when you edit device_private_key in a text editor, do you see it starting with -----BEGIN RSA PRIVATE KEY-----
, and does the device_client_id_blob contain the text widevine_cdm_version
?
-----BEGIN PRIVATE KEY-----
widevine_cdm_version16.0.0$ oem_crypto_security_patch_level02�� (0@�H�P�`
After adding RSA to the header, the error changed to -----BEGIN RSA PRIVATE KEY-----
Decryption Needed, attempting to decrypt [ERROR] HTTPError 406: Not Acceptable [ERROR] HTTP Status 406 – Not Acceptable [ERROR] Body: <!doctype html>
Aha! For some reason your key just says BEGIN PRIVATE KEY
instead of BEGIN RSA PRIVATE KEY
Just to test, if you change it to be BEGIN RSA PRIVATE KEY
and the ending to END RSA PRIVATE KEY
, does it work? If it does, I clearly need to also add detection for the string BEGIN PRIVATE KEY
, lol
oh interesting, did you just dump this CDM? Because usually that means the server doesn't accept the CDM. And did you also edit the footer to contain RSA?
Yes, I'll try extracting the key from another phone and then try again
If you're comfortable compiling, try changing it back to not say RSA, and try editing line 19 of ./modules/widevine.ts to say
if (fileContents.includes('-BEGIN PRIVATE KEY-') || fileContents.includes('-BEGIN RSA PRIVATE KEY-')) {
It theoretically shouldn't make a difference, but the RSA header may change how the key is being read by the crypto libraries, breaking it
I replaced the keys with those from another device and it worked
Program version
5.0.3
Operating System
MacOS
Type
GUI
Service
Crunchyroll
Command used
./aniDL
Show ID
G3KHEVDJ7
Episode
13
Console Output
Additional Information
I have the keys in ./widevine dir