hama3254 / Crunchyroll-Downloader-v3.0

Downloader for Crunchyroll
844 stars 108 forks source link

[API change?] Crunchyroll DRM #740

Closed hama3254 closed 5 months ago

hama3254 commented 1 year ago

while working on #739 i was unable to find the streams json file the object json file is still there and and stil links to the streams but it is missing (it should be there on the left) grafik

further more there is a different play json with only DASH video streams

grafik

The new streams are also protected with microsoft:playready grafik

MyNameIsDark01 commented 1 year ago

it's widevine (provided by castlabs), it shuld work with streams as well until they don't disable it

AnimeDL commented 1 year ago

It's also worth noting as far as I can tell, so far it only exists like this via chrome (and likely chromium based browsers, but I haven't tested).

wraith4081 commented 1 year ago

Recently, when I was writing a cli with typescript to download something from Crunchyroll, they switched from m3u8 to MPEG Dash (MPD) in front of my eyes. This requires a lot of tweaking and I think that the m4s's in the MPD file are encrypted, so it's a lot of work.

At the bottom I am attaching some useful resources I have found: https://seclab.cs.ucsb.edu/files/publications/Wang2010Steal_This.pdf https://forum.videohelp.com/threads/401859-How-to-download-mpd-stream-%28DRM-protected%29/page3 https://forum.videohelp.com/threads/400577-Please-help-me-download-this-video-encrypted-with-Playready-DRM-from-mpd

wraith4081 commented 1 year ago

@hama3254 any update? I broke /drm/auth in my own experiments, but I can't figure out how to create the body part of widevine lisance create request. This is the only and huge obstacle if I can find something. I'll let you know, I need this program fixed, I need to download an episode but I can't.

hama3254 commented 1 year ago

@wraith4081 I still use old API and I don't plan on using any DRM streams for legal reasons. As far I know only logged-in users get newer API so I don't know what CR is even planning to do.

wraith4081 commented 1 year ago

@hama3254 Right now I think they're trying to DRM all content, and I think it's going to be mixed with the current system until the problems are over.

hama3254 commented 1 year ago

@wraith4081 i mean they started adding DRM stream back in 2019 and did a brand new website since them so i don't see any serious planing behind that. I just see and wait and if they shoutdown the old api then this projects meets also it's end for me.

MyNameIsDark01 commented 1 year ago

The only solution is to change and add DRM decryption with user own widevine device. Btw if u don't know how to properly use could get a ban and the streaming on device u got the key won't work anymore.

hama3254 commented 11 months ago

The new API also now adds the limit. grafik

grafik

MyNameIsDark01 commented 11 months ago

wdym? They already have these plan since the legacy api, and of course u can't open streams on more devices than your plan

hama3254 commented 11 months ago

@MyNameIsDark01 I know that they have that tier system for a while now but i never see them actually enforce it.

I also got that message pretty fast by just using the downloader and the webbrowser at the same time.

tamodolo commented 6 months ago

@hama3254 Right now I think they're trying to DRM all content, and I think it's going to be mixed with the current system until the problems are over.

This is easy to understand. historicaly CR is a company made by fansub people. They started as a pirate site. The fun thing is even on Brazil, where I live, the ones that run it was from fansubs originaly (they all leave after sony takeover). I don't think these people were to akin to switch on DRM. The thing is Sony bough them. Now let's see what Sony is: A mega corporation that has open capital (it means stonks). Now you get all the streamlined bs out of the box:

Investors are very insecure and ansious people. They won't put money on something that isn't protected. So DRM is just this: make investors to sleep well. The general public knows that DRM never blocked piracy ever. (probably DENUVO is the one that are wining the game for now. I don't doubt people will rise again against it eventualy). For passive midia you just need to record the framebuffer if the objective is just share the thing. But this is not my objective... I just hate CR players. They junt will not deliver 1080p stream no matter what you do. I have a LG TV and tested the new app. It's ok as a browser but the player can't stream more than 720p. To make things worser the app is limited to 1080p and does not scale anything. The final result is an insult.