4 methods to find PSSH:
The simplest one: PSSH is clearly indicated in MPD file. Download MPD file (browser add-on "MPD Detector" will give you MPD link or filtering for
networktab of devoloper tools (ctrl + shift + c)), open it with Notepad, search for pssh value.
If there is KID, but no PSSH in MPD, calculate PSSH by using KID:
Using this website you can get the PSSH by entering in the
urn:uuid: into the
System ID field and entering the
cenc:default_KID= into the
KEY IDs field without the quotes
- EME Logger Script (installed on Tampermonkey add-on) will give you init data. That's your PSSH. This can be found on Developer Tools (ctrl + shift + c) > Console, in the filter bar search for
MediaKeySession::generateRequestyou will find Init Data.
Optional, may be rquired:
If that Init Data is very very long, convert it to HEX: https://base64.guru/converter/decode/hex
After Base64 > HEX conversion, you will find a Widevine-PSSH box, this can be found easily by searching with ctrl + f and searching for
PSSH header is always in a
000000xx70737368 where the
xx is varied and can be from 1-9 in both x spots.
You always want to copy the 6
0's before the xx as well.
The end of the header is always then followed by 8 more
0s, if you see this, you are in the right place.
Once you find the header start at the beginning 0 from the header and copy until the end of the converted hex, it should look like this
In this case the full value was
convert the hex back into base64 using https://base64.guru/converter/encode/hex
In this case we got the PSSH value of
Congrats, you have the PSSH!
- Using init files
You can use this tool to obtain the PSSH from an init file