VideoHelp Forum
+ Reply to Thread
Page 1 of 8
1 2 3 ... LastLast
Results 1 to 30 of 211
Thread
  1. Hi all.
    I have long studied the forum and came to the conclusion that only here can help me to download and decrypt the DRM video
    I want to download videos from kinescope.io hosting, apparently they use protection not similar to Widevine, it seems to me that it is ClearKey.

    There are 2 videos on the page, EME logger shows the following output

    Code:
    [EME] Navigator::requestMediaKeySystemAccess
        Key System: org.w3.clearkey
        Supported Configurations:
        [
            {
                "initDataTypes": [
                    "cenc"
                ],
                "videoCapabilities": [
                    {
                        "contentType": "video/mp4;codecs=\"avc1.4D401E\"",
                        "robustness": ""
                    }
                ],
                "distinctiveIdentifier": "optional",
                "persistentState": "optional",
                "sessionTypes": [
                    "temporary"
                ]
            }
        ]
    
    [EME] MediaKeySystemAccess::createMediaKeys
        Key System: org.w3.clearkey
        Configurations:
        {
            "audioCapabilities": [],
            "distinctiveIdentifier": "not-allowed",
            "initDataTypes": [
                "cenc"
            ],
            "label": "",
            "persistentState": "not-allowed",
            "sessionTypes": [
                "temporary"
            ],
            "videoCapabilities": [
                {
                    "contentType": "video/mp4;codecs=\"avc1.4D401E\"",
                    "robustness": ""
                }
            ]
        }
    
    [EME] MediaKeys::createSession
        Session Type: temporary
    
    [EME] MediaKeySession::generateRequest
        Session ID: (not available)
        Init Data Type: keyids
        Init Data: eyJraWRzIjpbIlpsRnZXRVY0YUhOQldHVnplVUZyUFEiXX0=
    
    [EME] MediaKeys::createSession
        Session Type: temporary
    
    [EME] MediaKeySession::generateRequest
        Session ID: (not available)
        Init Data Type: keyids
        Init Data: eyJraWRzIjpbIlpsRnZXRVY0YUhOQldHVnplVUZyUFEiXX0=
    
    [EME] MediaKeySession::message
        Session ID: 1
        Message Type: license-request
        Message: eyJraWRzIjpbIlpsRnZXRVY0YUhOQldHVnplVUZyUFEiXSwidHlwZSI6InRlbXBvcmFyeSJ9
        Listeners: 
    Array [ {…} ]
    
    [EME] MediaKeySession::message
        Session ID: 2
        Message Type: license-request
        Message: eyJraWRzIjpbIlpsRnZXRVY0YUhOQldHVnplVUZyUFEiXSwidHlwZSI6InRlbXBvcmFyeSJ9
        Listeners: 
    Array [ {…} ]
    
    [EME] Navigator::requestMediaKeySystemAccess
        Key System: org.w3.clearkey
        Supported Configurations:
        [
            {
                "initDataTypes": [
                    "cenc"
                ],
                "videoCapabilities": [
                    {
                        "contentType": "video/mp4;codecs=\"avc1.4D401E\"",
                        "robustness": ""
                    }
                ],
                "distinctiveIdentifier": "optional",
                "persistentState": "optional",
                "sessionTypes": [
                    "temporary"
                ]
            }
        ]
    
    [EME] MediaKeySystemAccess::createMediaKeys
        Key System: org.w3.clearkey
        Configurations:
        {
            "audioCapabilities": [],
            "distinctiveIdentifier": "not-allowed",
            "initDataTypes": [
                "cenc"
            ],
            "label": "",
            "persistentState": "not-allowed",
            "sessionTypes": [
                "temporary"
            ],
            "videoCapabilities": [
                {
                    "contentType": "video/mp4;codecs=\"avc1.4D401E\"",
                    "robustness": ""
                }
            ]
        }
    
    [EME] MediaKeys::createSession
        Session Type: temporary
    
    [EME] MediaKeySession::generateRequest
        Session ID: (not available)
        Init Data Type: keyids
        Init Data: eyJraWRzIjpbImJWWkxVSE00YnpCS0xVUXRSRWxSUFEiXX0=
    
    [EME] MediaKeys::createSession
        Session Type: temporary
    
    [EME] MediaKeySession::generateRequest
        Session ID: (not available)
        Init Data Type: keyids
        Init Data: eyJraWRzIjpbImJWWkxVSE00YnpCS0xVUXRSRWxSUFEiXX0=
    
    [EME] MediaKeySession::message
        Session ID: 3
        Message Type: license-request
        Message: eyJraWRzIjpbImJWWkxVSE00YnpCS0xVUXRSRWxSUFEiXSwidHlwZSI6InRlbXBvcmFyeSJ9
        Listeners: 
    Array [ {…} ]
    
    [EME] MediaKeySession::message
        Session ID: 4
        Message Type: license-request
        Message: eyJraWRzIjpbImJWWkxVSE00YnpCS0xVUXRSRWxSUFEiXSwidHlwZSI6InRlbXBvcmFyeSJ9
        Listeners: 
    Array [ {…} ]
    
    [EME] MediaKeySession::update
        Session ID: 1
        Response: eyJrZXlzIjpbeyJrdHkiOiJvY3QiLCJhbGciOiJBMTI4S1ciLCJraWQiOiJabEZ2V0VWNGFITkJXR1Z6ZVVGclBRIiwiayI6IlZEUm9VM1kwVUd0cGJuSkdjV2cwUFEifV19
    
    [EME] MediaKeySession::keystatuseschange
        Session ID: 1
        [USABLE] ZlFvWEV4aHNBWGVzeUFrPQ==
        Listeners: 
    Array [ {…} ]
    
    [EME] MediaKeySession::update
        Session ID: 2
        Response: eyJrZXlzIjpbeyJrdHkiOiJvY3QiLCJhbGciOiJBMTI4S1ciLCJraWQiOiJabEZ2V0VWNGFITkJXR1Z6ZVVGclBRIiwiayI6IlZEUm9VM1kwVUd0cGJuSkdjV2cwUFEifV19 
    
    [EME] MediaKeySession::keystatuseschange
        Session ID: 2
        [USABLE] ZlFvWEV4aHNBWGVzeUFrPQ==
        Listeners: 
    Array [ {…} ]
    
    [EME] MediaKeySession::update
        Session ID: 4
        Response: eyJrZXlzIjpbeyJrdHkiOiJvY3QiLCJhbGciOiJBMTI4S1ciLCJraWQiOiJiVlpMVUhNNGJ6QktMVVF0UkVsUlBRIiwiayI6ImRESmpXbXBNZDBGWlQwZFdVRkpSUFEifV19
    
    [EME] MediaKeySession::keystatuseschange
        Session ID: 4
        [USABLE] bVZLUHM4bzBKLUQtRElRPQ==
        Listeners: 
    Array [ {…} ]
    
    [EME] MediaKeySession::update
        Session ID: 3
        Response: eyJrZXlzIjpbeyJrdHkiOiJvY3QiLCJhbGciOiJBMTI4S1ciLCJraWQiOiJiVlpMVUhNNGJ6QktMVVF0UkVsUlBRIiwiayI6ImRESmpXbXBNZDBGWlQwZFdVRkpSUFEifV19
    
    [EME] MediaKeySession::keystatuseschange
        Session ID: 3
        [USABLE] bVZLUHM4bzBKLUQtRElRPQ==
        Listeners: 
    Array [ {…} ]
    Can you please tell me what to do?)
    With widevine I know how to bypass protection, but with clearkey has not yet encountered
    Quote Quote  
  2. Maybe it works like this.
    The last base64 response is:
    Code:
    eyJrZXlzIjpbeyJrdHkiOiJvY3QiLCJhbGciOiJBMTI4S1ciLCJraWQiOiJiVlpMVUhNNGJ6QktMVVF0UkVsUlBRIiwiayI6ImRESmpXbXBNZDBGWlQwZFdVRkpSUFEifV19
    When you base64 decode this you get
    Code:
    {"keys":[{"kty":"oct","alg":"A128KW","kid":"bVZLUHM4bzBKLUQtRElRPQ","k":"dDJjWmpMd0FZT0dWUFJRPQ"}]}
    When you base64 to hex the kid and k (key) you get
    Code:
    6d564b5073386f304a2d442d4449513d
    Code:
    7432635a6a4c7741594f47565052513d
    So this might be your kid:key combination.
    Buuuut I see the last 4 characters are the same and it kinda makes me think that it doesn't work like this.
    Quote Quote  
  3. @Marsha0xGriffith


    Please kindly give the top url of the video.


    Btw: another great job [ss]vegeta


    I have a suspicion the you can use those credentials with hlsdl
    Quote Quote  
  4. Curl command to get master.mpd
    https://pastebin.com/v7NWHkcF

    But there is one strange thing, the video itself does not last more than 15 minutes, but when downloaded through mpd in the worst quality you get a file size of 9 GB
    downloaded with

    Code:
    yt-dlp --allow-u --downloader aria2c
    Quote Quote  
  5. Originally Posted by [ss]vegeta View Post
    Maybe it works like this.
    The last base64 response is:
    Code:
    eyJrZXlzIjpbeyJrdHkiOiJvY3QiLCJhbGciOiJBMTI4S1ciLCJraWQiOiJiVlpMVUhNNGJ6QktMVVF0UkVsUlBRIiwiayI6ImRESmpXbXBNZDBGWlQwZFdVRkpSUFEifV19
    When you base64 decode this you get
    Code:
    {"keys":[{"kty":"oct","alg":"A128KW","kid":"bVZLUHM4bzBKLUQtRElRPQ","k":"dDJjWmpMd0FZT0dWUFJRPQ"}]}
    When you base64 to hex the kid and k (key) you get
    Code:
    6d564b5073386f304a2d442d4449513d
    Code:
    7432635a6a4c7741594f47565052513d
    So this might be your kid:key combination.
    Buuuut I see the last 4 characters are the same and it kinda makes me think that it doesn't work like this.
    Thanks, but I have no way to test it yet, my internet is limited and there is not enough space on my VDS to fully decode a 9 GB file

    I can not imagine how a video 13-15 minutes long in SD quality can take 9 GB
    Quote Quote  
  6. The video you think is 13-15 minutes is prolly only a smaaall part of the content in this MPD.
    This mpd is 500kb and it contains thousands of segments.
    Even the audio is 13GB lol.
    Quote Quote  
  7. Weird stuff is happening.
    I downloaded the audio and MediaInfo says 163 hours.
    Windows and media players say 25 minutes 30 seconds.
    I tried decrypting the audio with the key I mentioned up there. Even after decryption, MediaInfo says it is still encrypted, and yet the audio is playable, at least for those 25 minutes and 30 seconds.
    Quote Quote  
  8. key above works...but size of video not matches with time...getting nearly 3 minutes for 3gb plus size
    Image Attached Thumbnails Click image for larger version

Name:	Capture1.JPG
Views:	401
Size:	105.1 KB
ID:	64776  

    Click image for larger version

Name:	Capture.JPG
Views:	567
Size:	246.9 KB
ID:	64777  

    Quote Quote  
  9. Originally Posted by [ss]vegeta View Post
    Weird stuff is happening.
    I downloaded the audio and MediaInfo says 163 hours.
    Windows and media players say 25 minutes 30 seconds.
    I tried decrypting the audio with the key I mentioned up there. Even after decryption, MediaInfo says it is still encrypted, and yet the audio is playable, at least for those 25 minutes and 30 seconds.
    Thank you all, now looking for a suitable VPS to check
    There is still a question about the size of the files))
    The bitrate 223 mbps looks strange, maybe after decoding it will be possible to compress the video to an adequate size with ffmpeg
    Quote Quote  
  10. Hi all, finally found a suitable vps server to test
    It looks like it really works, only I still can't figure out how to bring the final file to a normal size.
    I can also get the master.m3u8 from this site using the same link, but not sure if that helps.
    I think the video/audio should be no bigger than 150 mb, but definitely not 50+ GB

    Maybe someone has encountered a similar situation?
    Is it possible to change mpd file in some way, maybe remove some extra parts to get normal sized files?
    Or is it the only option - to download files of that size, decrypt them and then convert them?
    If there are ffmpeg experts here - I'll be grateful for hints
    Quote Quote  
  11. 'Please kindly give the top url of the video.'
    Quote Quote  
  12. Originally Posted by Marsha0xGriffith View Post
    Hi all, finally found a suitable vps server to test
    It looks like it really works, only I still can't figure out how to bring the final file to a normal size.
    I can also get the master.m3u8 from this site using the same link, but not sure if that helps.
    I think the video/audio should be no bigger than 150 mb, but definitely not 50+ GB

    Maybe someone has encountered a similar situation?
    Is it possible to change mpd file in some way, maybe remove some extra parts to get normal sized files?
    Or is it the only option - to download files of that size, decrypt them and then convert them?
    If there are ffmpeg experts here - I'll be grateful for hints
    looks like its not being parsed properly by yt-dlp (maybe its all the extra linebreaks and tabs thats causing a problem - or thats just what i see)
    the mpd breaks up the file into fragments by using range requests.
    you can grab the correct file by downloading the full mp4 file for video and audio, decrypting them and then joining them.
    ie. for 360p
    Code:
    curl -o 360p.mp4 "https://kinescopecdn.net/7a16ef25-a06d-4915-b783-b59db753c39e/videos/a9f74926-8279-44e6-a08d-3462436e692c/assets/195901bf-9039-4f73-9f6d-dd1a5554b2f6/360p.mp4?expires=1652743983&sign=<blah>"
    resulting joined video + audio for 360p is 25:31 long and ~60mb

    heres a fixed up version of that mpd that works with yt-dlp
    https://transfer.sh/get/tEyIGn/kinescope1.mpd
    Quote Quote  
  13. Nice Elcap....so that was the issue...all the tabs and spaces in mpd...if you clean it up it will work with yt-dlp...
    Quote Quote  
  14. sort of.
    even when i cleaned up the spaces and line breaks it still didnt want to work, so i recreated it similar to another mpd that used progressive download.
    the mpd is much smaller now, but itd be much quicker to just grab one of the video and audio file links and manually grab the whole mp4 file, then decrypt, join etc.
    Quote Quote  
  15. Originally Posted by ElCap View Post
    then decrypt, join etc.
    What comes after joining?
    I know some people tend to do something along the lines of... watching. But there's no fun in that.
    Quote Quote  
  16. Archiving, of course.
    This is only for educational purposes
    Quote Quote  
  17. Yay, I finally figured it out!
    Special thanks to [ss]vegeta and ElCap!
    And thanks to everyone who helped me solve this difficult problem!
    Quote Quote  
  18. The solution for those who do not understand (windows):

    yt-dlp.exe --merge-output-format mp4 https://kinescope.io/NumbersOfYourLesson/master.m3u8 --referer https://kinescope.io -o "NameYourLesson"

    You should have the latest versions of "yt-dlp.exe" and "ffmpeg.exe" in the folder.
    This command will download the video and audio streams separately, then merge them and give them the name you specify.
    P.S All the participants in this thread deserve thanks, without their help I would not have guessed how to download from kinescope.io. You are cool!!!
    Quote Quote  
  19. Member
    Join Date
    Sep 2022
    Location
    Vilnius
    Search PM
    Can you help me and explain step by step how to download video? Thank you very much, friends!
    Quote Quote  
  20. Originally Posted by VitinIvsky View Post
    The solution for those who do not understand (windows):

    yt-dlp.exe --merge-output-format mp4 https://kinescope.io/NumbersOfYourLesson/master.m3u8 --referer https://kinescope.io -o "NameYourLesson"

    You should have the latest versions of "yt-dlp.exe" and "ffmpeg.exe" in the folder.
    This command will download the video and audio streams separately, then merge them and give them the name you specify.
    P.S All the participants in this thread deserve thanks, without their help I would not have guessed how to download from kinescope.io. You are cool!!!
    Good, very helpful! Thank you very much!
    Did everything by the tutorial, the video is downloaded and merged with audio, however it looks like this:
    Image
    [Attachment 68113 - Click to enlarge]

    Image
    [Attachment 68114 - Click to enlarge]


    The lenght is perfect - same as the online source. The size and resolution also should be fine (1,71 GB for a hour+ video source, 720p). Also noticed this error while downloading audio:
    Image
    [Attachment 68115 - Click to enlarge]


    There are some squeaky noise when Im trying to play the file in MPCHC and the video plays fast.

    Is there some new "protection" on the kinescope side? Why it looks like this?
    Thank you!
    Quote Quote  
  21. Originally Posted by lexaring View Post
    Did everything by the tutorial, the video is downloaded and merged with audio, however it looks like this

    Is there some new "protection" on the kinescope side? Why it looks like this?
    you talk about what video link? write here
    Quote Quote  
  22. Originally Posted by lomero View Post
    Originally Posted by lexaring View Post
    Did everything by the tutorial, the video is downloaded and merged with audio, however it looks like this

    Is there some new "protection" on the kinescope side? Why it looks like this?
    you talk about what video link? write here
    A kinescope link obvioulsy.
    Quote Quote  
  23. Your video seems to be drm encrypted.

    Give us the link
    Quote Quote  
  24. Originally Posted by cedric8528 View Post
    Your video seems to be drm encrypted.

    Give us the link
    Yeap, looks like it. Tried it with another video and noticed "failed to seek for auxiliary info will only parse..." messages while downloading. So it is a DRM (by StackOverflow). So basically you can download only not DRM protected files using this method? Or is there a setting i can turn on to make it work?
    Quote Quote  
  25. Originally Posted by lexaring View Post
    Originally Posted by lomero View Post
    Originally Posted by lexaring View Post
    Did everything by the tutorial, the video is downloaded and merged with audio, however it looks like this

    Is there some new "protection" on the kinescope side? Why it looks like this?
    you talk about what video link? write here
    A kinescope link obvioulsy.
    No one can help you while you are being vague, to be able to provide accurate assistance you must post the url of the video, and post cedric or someone who knows what they are doing, the login credentials via PM if it needs them too.
    Quote Quote  
  26. Originally Posted by codehound View Post
    Originally Posted by lexaring View Post
    Originally Posted by lomero View Post
    Originally Posted by lexaring View Post
    Did everything by the tutorial, the video is downloaded and merged with audio, however it looks like this

    Is there some new "protection" on the kinescope side? Why it looks like this?
    you talk about what video link? write here
    A kinescope link obvioulsy.
    No one can help you while you are being vague, to be able to provide accurate assistance you must post the url of the video, and post cedric or someone who knows what they are doing, the login credentials via PM if it needs them too.
    Are you saying you need to create UNIQUE solution for every video file?
    The simple answer like "There is no way to download DRM protected files from kinescope" would be just fine.
    Quote Quote  
  27. A bit strange seems that if you used the above

    yt-dlp.exe --merge-output-format mp4 https://kinescope.io/NumbersOfYourLesson/master.m3u8 --referer https://kinescope.io -o "NameYourLesson"

    why it was possible to download encrypted streams without an --allow-u.
    Quote Quote  
  28. Originally Posted by Quint View Post
    A bit strange seems that if you used the above

    yt-dlp.exe --merge-output-format mp4 https://kinescope.io/NumbersOfYourLesson/master.m3u8 --referer https://kinescope.io -o "NameYourLesson"

    why it was possible to download encrypted streams without an --allow-u.
    Yes, I used that.
    Quote Quote  
  29. Originally Posted by LZAA View Post
    Url?
    Any free video from nday.club/video/open
    You have to be registered though and the site is in russian language.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!