Hi,
Just wondering is it possible to obtain keys via cdrm-project.com or other means?
Looking to rip the first season of Neighbours from Freevee:
https://s3-iad-2.cf.dash.row.aiv-cdn.net/dm/2$HR_Xea-YY3SqvHqdF69DTCJMMqQ~/3353/71d3/fcca/4e54-8e74-e0c1fcb76636/f2016ff7-37cd-445a-8d4b-b1cd05ded14d_video_11.mp4?amznDtid=AOAGZA014O5RE
I have the S01E1 pssh: CAESECHu0arLIUaWh3hp/mHlYUIaBmFtYXpvbiI1Y2lkOjVsYTBhREpFUzlDVVJhbTB3eGd BZWc9PSxJZTdScXNzaFJwYUhlR24rWWVWaFFnPT0qAlNEMgA=
Any help to obtain the license url/headers much appreciated.
Cheers
Steve
+ Reply to Thread
Results 1 to 17 of 17
-
Last edited by stevepen1974; 8th May 2023 at 06:44.
-
The
Code:CAES...
The full PSSH (that has your base 64 decoded 'CAES...' data in it) is:Code:AAAAeXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAFkIARIQIe7RqsshRpaHeGn+YeVhQhoGYW1hem9uIjVjaWQ6NWxhMGFESkVTOUNVUmFtMHd4Z0FlZz09LEllN1Jxc3NoUnBhSGVHbitZZVZoUWc9PSoCU0QyAA==
It's a long time since I messed around with freevee, so things might have changed. But at least you have the right PSSH to start from now.
Looking at the PSSH, it includes a track type, which is 'SD', so you might be getting the right mpd already.Last edited by bamboobali; 8th May 2023 at 08:00.
-
just for a test could you please try use to TubeDigger in RecMode i'm curious if it works for this site as well
thx for trying -
It will not work with CDRM since there's additional challenges being made. You'd need a script.
License server is:
Code:https://atv-ps-eu.amazon.co.uk/cdp/catalog/GetPlaybackResources....
Code:headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0', 'Accept': '*/*', 'Accept-Language': 'en-US,en;q=0.5', }
Code:PSSH: AAAAeXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAFkIARIQbh0M5KpsTq6osKIzMS1AEBoGYW1hem9uIjVjaWQ6YmgwTTVLcHNUcTZvc0tJek1TMUFFQT09LFlkRkZSa0hUUy91ejdrQW5iUGlYTnc9PSoCU0QyAA== --key b770d5b4bb6b594daf985845aae9aa5f:b0cb46d2d31cf044bc73db71e9865f6f --key 6e1d0ce4aa6c4eaea8b0a233312d4010:aa293e7f42e48e08bd3c10a8c8af4b13 --key 61d1454641d34bfbb3ee40276cf89737:36df6d7718f5bb1bcf72325016eb86ca
-
@stabbedbybrick Are Android cdms still restricted to SD for freevee? Freevee doesn't seem to want to stream in SD for me at the moment.
-
Many thanks stabbedbybrick.
Fails to decrypt:
yt-dlp.exe --allow-u -N 6 "https://s3-iad-2.cf.dash.row.aiv-cdn.net/dm/2$HR_Xea-YY3SqvHqdF69DTCJMMqQ~/3353/71d3/fcca/4e54-8e74-e0c1fcb76636/f2016ff7-37cd-445a-8d4b-b1cd05ded14d_corrected.mpd?amznDtid=AOAGZA014O5RE& encoding=segmentBase"
as per:
mp4decrypt --key b770d5b4bb6b594daf985845aae9aa5f:b0cb46d2d31cf044b c73db71e9865f6f enc_video.mp4 dec_video.mp4
Tried the other 2 keys and does not decrypt. Presume one key is for audio and another for video?
If you can confirm all is correct.
Cheers
Steve -
I can confirm that the keys are correct:
[Attachment 70867 - Click to enlarge]
Make sure you grab the correct mpd. And I'd highly suggest using N_m3u8DL-RE to make things easier. It will take care of downloading, decrypting and merging.
Code:N_m3u8DL-RE --key --key --key "MPD URL" -M --format=mp4 -mt --save-name "Title of video"
-
@Silv3r I tried Tubedigger (trial version) in Rec Mode on this site to see if the HD streams were available.
It didn't work for me.
I used the 'Monitor Browser' option along with Rec Mode, files appeared in the Tubedigger video output folder but none were playable,
It might be user error, I've never used Tubedigger before. -
Code:
https://www.amazon.com/gp/video/detail/B0B8Q6H77C
Code:--key 5ab2c1022b1e44799c992e8012184aa3:1bb3b26fa0aa3a12056dd5498e7527ed
Code:--key 4e58b937673149148af119d9f9b06ca6:7fed08912418a71b1a82d86a95b2f4f3
Code:General Format : Matroska Format version : Version 4 File size : 2.46 GiB Duration : 23 min 30 s Overall bit rate : 15.0 Mb/s Encoded date : UTC 2023-05-21 20:47:10 Writing application : mkvmerge v76.0 ('Celebration') 64-bit Writing library : libebml v1.4.4 + libmatroska v1.7.1 Video ID : 1 Format : AVC Format/Info : Advanced Video Codec Format profile : High@L4 Format settings : CABAC / 4 Ref Frames Format settings, CABAC : Yes Format settings, Reference frames : 4 frames Codec ID : V_MPEG4/ISO/AVC Duration : 23 min 30 s Bit rate : 14.8 Mb/s Width : 1 440 pixels Height : 1 080 pixels Display aspect ratio : 4:3 Frame rate mode : Constant Frame rate : 25.000 FPS Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Scan type : Progressive Bits/(Pixel*Frame) : 0.380 Stream size : 2.42 GiB (98%) Default : Yes Forced : No Color range : Limited Color primaries : BT.709 Transfer characteristics : BT.709 Matrix coefficients : BT.709 Audio ID : 2 Format : E-AC-3 Format/Info : Enhanced AC-3 Commercial name : Dolby Digital Plus Codec ID : A_EAC3 Duration : 23 min 30 s Bit rate mode : Constant Bit rate : 224 kb/s Channel(s) : 2 channels Channel layout : L R Sampling rate : 48.0 kHz Frame rate : 31.250 FPS (1536 SPF) Compression mode : Lossy Stream size : 37.7 MiB (1%) Language : English Service kind : Complete Main Default : Yes Forced : No Text ID : 3 Format : UTF-8 Codec ID : S_TEXT/UTF8 Codec ID/Info : UTF-8 Plain Text Duration : 23 min 30 s Bit rate : 81 b/s Frame rate : 0.397 FPS Count of elements : 560 Stream size : 14.1 KiB (0%) Language : English Default : Yes Forced : No
Last edited by iamghost; 21st May 2023 at 15:50.
-
I have been trying for a while to get this. I can get the PSSH from the init, convert to HEX, take the portion of HEX
"PSSH header is always 000000xx70737368 - xx is changeable, here it is 34 and you will take 6 zeros before it."
I take that and convert back to base64, and do get a PSSH which is:
Code:AAAAeXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAFkIARIQWrLBAiseRHmcmS6AEhhKoxoGYW1hem9uIjVjaWQ6VGxpNU4yY3hTUlNLOFJuWitiQnNwZz09LFdyTEJBaXNlUkhtY21TNkFFaGhLb3c9PSoCU0QyAA==
Code:AAAAeXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAFkIARIQbh0M5KpsTq6osKIzMS1AEBoGYW1hem9uIjVjaWQ6YmgwTTVLcHNUcTZvc0tJek1TMUFFQT09LFlkRkZSa0hUUy91ejdrQW5iUGlYTnc9PSoCU0QyAA==
Code:D:\free>python l3.py PSSH: AAAAeXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAFkIARIQbh0M5KpsTq6osKIzMS1AEBoGYW1hem9uIjVjaWQ6YmgwTTVLcHNUcTZvc0tJek1TMUFFQT09LFlkRkZSa0hUUy91ejdrQW5iUGlYTnc9PSoCU0QyAA== License URL: https://atv-ps.amazon.com/cdp/catalog/GetPlaybackResources?deviceID=b547ad1f-eb62-4bf0-b8cd-aef714e6aa9a&deviceTypeID=AOAGZA014O5RE&gascEnabled=false&marketplaceID=ATVPDKIKX0DER&uxLocale=en_US&firmware=1&playerType=xp&operatingSystemName=Windows&operatingSystemVersion=10.0&deviceApplicationName=Chrome&asin=B0B649M2CH&consumptionType=Streaming&desiredResources=Widevine2License&resourceUsage=ImmediateConsumption&videoMaterialType=Feature&clientId=f22dbddb-ef2c-48c5-8876-bed0d47594fd&userWatchSessionId=f8355033-8674-4f9d-b637-7778c6ab30d7&deviceProtocolOverride=Https&vodStreamSupportOverride=Auxiliary&deviceStreamingTechnologyOverride=DASH&deviceDrmOverride=CENC&deviceAdInsertionTypeOverride=SSAI&deviceHdrFormatsOverride=None&deviceVideoCodecOverride=H264&deviceVideoQualityOverride=HD&deviceBitrateAdaptationsOverride=CVBR%2CCBR&playerAttributes=%7B%22middlewareName%22%3A%22Chrome%22%2C%22middlewareVersion%22%3A%22115.0.0.0%22%2C%22nativeApplicationName%22%3A%22Chrome%22%2C%22nativeApplicationVersion%22%3A%22115.0.0.0%22%2C%22supportedAudioCodecs%22%3A%22AAC%22%2C%22frameRate%22%3A%22HFR%22%2C%22H264.codecLevel%22%3A%224.2%22%2C%22H265.codecLevel%22%3A%220.0%22%2C%22AV1.codecLevel%22%3A%220.0%22%7D unable to parse license - check protobufs
Code:headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/109.0', 'Accept': '*/*', 'Accept-Language': 'en-US,en;q=0.5', }
-
stabbedbybrick did wrote there's additional challenges being made. You'd need a script.
-
I know, and I guess that is the part I do not know. I am not good with any kind of scripting. Any info on this?
What would I need, if I could figure it out what am I looking to capture with the script?
I am sorry, my line of questioning is very vague, I honestly do not know what I am looking for. -
if you use andriod l3 cdm, freevee will give upto 576p keys (i think), i have chromecdm which it will give upto 1080p keys
-
Passing just PSSH and simple headers only work for services with a simple setup. What you need for Freevee, among many others, is to post the request with a properly structured JSON payload that includes a challenge generated by your own CDM, and some additional account data. If you right-click the license, copy as cURL, and paste it on curlconverter.com, you'll see more clearly what it could look like in Python code, which is the language being used in your "l3.py". The important bits here are the data and cookie parameters. And then you'll get a JSON response back that you need to handle.
To understand these concepts and write your own scripts, you'll need to learn some programming. There's no way around it. Even if someone gives you a working script, using them without knowing why they work is going to lead to serious frustrations when things break. Luckily, there's a massive community surrounding Python, so learning it only requires some dedication on your part. -
If you 'unquote' your license url:
Code:print(requests.utils.unquote("https://atv-ps.amazon.com/cdp/catalog/GetPlaybackResources...all the way to the end"))
deviceVideoQualityOverride=HD
Possibly someone who can get the SD mpd could confirm.
Similar Threads
-
Amazon freevee, AnyStream & Out of order audio channels.
By doctorm in forum Video Streaming DownloadingReplies: 6Last Post: 20th Oct 2022, 14:26