VideoHelp Forum




+ Reply to Thread
Page 6 of 6
FirstFirst ... 4 5 6
Results 151 to 159 of 159
  1. Keys:
    Code:
    bc945de9a957ab14e80244c00b27e7fd:b8eea9fb4dce61c8cded0f136a37122d
    23fe583a6bc4acc3c4372b57689c0d20:fb372447ce6d32edc583c4a08f0e14ae
    Bypass HMACs, One-time-tokens and Lic.Wrapping: https://github.com/DevLARLEY/WidevineProxy2
    Quote Quote  
  2. Originally Posted by 4L7zHhiyQO3Thui6 View Post
    Does anybody have the links to the MPDs for the following URLs:

    https://plus.rtl.de/video-tv/shows/schlefaz-die-schlechtesten-filme-aller-zeiten-98885...mbiber-1025166
    https://plus.rtl.de/video-tv/shows/schlefaz-die-schlechtesten-filme-aller-zeiten-98885...xpress-1025167

    I would be interested in the CBR versions with the highest bitrate

    Thanks in advance, and have a nice weekend!
    CBR 1080p:
    Code:
    https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/1025166/1-10000-1-1-1-X.ism/rtlplus.mpd
    56922b077e89d58ac7c4b8a3f0243ec3:59de6c0fdc4ecfccc0021ee8e2a5f89c
    https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/1025167/1-10000-1-1-1-X.ism/rtlplus.mpd
    637a19992e0c27df76d356e103fafa9b:862bd4e117a72b9ada96816d83b0e222
    VBR (from premium with no url hacks) 1080p:
    Code:
    https://vodnowusoawsdash-cf.tvnow.de/pgrn/cves/sd/rtlplus/1025166/3-1-1-1-2-1-12.ism/v1.mpd
    906f41d341b6387d502064e5625e6c11:5527f4048344d84a6989680a3c1cf9b1
    https://vodnowusoawsdash-cf.tvnow.de/pgrn/cves/sd/rtlplus/1025167/6-1-1-1-2-1-12.ism/v1.mpd
    7a2cda05d355eb5e7ba64f7337ec5b6c:756f53b53134fe7818a02a8d4215e3f4
    For whatever reason RTL gives you the /sd/ url for premium but doesnt matter its all the same mpd. Same for android/tv/tizen and so on.

    VBR is 99 % trash. So have fun with the CBR Playlist
    Last edited by Lostion; 12th Sep 2025 at 17:23.
    Quote Quote  
  3. Hi all,

    I also need a little help getting the keys.

    I try to go step by step through what I've done so far:

    1) The file I want to download: https://plus.rtl.de/video-tv/serien/alles-was-zaehlt-146430/2025-8-1039293/episode-476...bedroht-971749
    2) --> mpd: https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/971749/3-10000-1-1-1-X.ism/rtlplus.mpd
    3) --> licence url: https://rtlplus-widevine.streamingtech.de/index/rtlplus

    Then I edited the headers.py with the x-auth-token show in the headers of the POST https://rtlplus-widevine.streamingtech.de/index/rtlplus:
    Image
    [Attachment 88706 - Click to enlarge]

    (scolling down a little to the x-auth-token:
    Image
    [Attachment 88707 - Click to enlarge]


    4) My headers.py:
    Code:
    import requests
    
    headers = {
        'x-auth-token': 'eyJhbGciO...',
    }
    params = (
        ('platform', 'BROWSER'),
        ('type', 'MOVIE'),
    )
    # params inserted below will be passed to data-raw 
    
    token = 'PFYtFSqWMYIROJYywBp0rbKvpD3z6N6E6UezNrZmCeKHkcJ5BiH4J8qwO0kfWOmrSsyFJMg9OqKKEwvuQiXL4qdDTa6ZYplNV9IQt6eEuveglDxjVlYd0vAecS5TZKn5mIs01YxcYNlTC7tu3BIk63JhMykMWEMmj1oEqaLa7N3ZrfU2VTlEPaWXBQV6PxnFeD022Yi298GOX/lDik7sXt5u4duT0aKIYbz0HPmjoh8b9Uy8bvzJUa0/SlgRcsW8RNTNjRJHM6N7BESCBGFEZcWoSXeDLEblEfRoBKro2iDGB1neLfRdY1fj7tJX1Rn9lj+OJwRTrBV4XoTQFuSsFwvYCeQfkAoRHXnze9njI5pY7sYgIGxuM4Zh3Wqaps6kxdO53QMm0jJ/L41X6r5CikSGKQ3Rcps8eQccZb9svEuyXMof2nm+eYL+AVPPrfmAf/BrmUHfiuF9CmNsF9pI7PjJfLeASmh3KDI/5gUuC4uJB7rjTzHVWNRz8MSvYjJ37/5V9+FTihpu04+0jFZ1AlGRks2dzk2IGvm5WcwUhsW2l/oQXlh7AgsksIl2DT0wH11WeG+h1/ijymMcG9AZzsxtkC53eLJ8bl55/Aag0TJfX4N6KvV7UhglXxkLifb06bLK/wlcGCfb01b4cnngcjPJEMxh2+Q7sJSnbyrtsfodzNah8JXITmx5kTkFFZkdtga1ha9jAb+Z40VMQfbrCLgh0GEe2G3VczcIt8QHAWAeS91TkzLbMRAugbgLvdbI8yQXtM15uo+TXrV4PNFprug33AnvnQu7IpNxlmgPMZhEn4Qqc/V++OFIpz/JYEMnLFvjYcXE2+sPc4uKnoE0xk33+IgZKtWtDhxRg2SJKyKOYxXucXybUuqPP/d+Nq1VNhD84Of+EfVvBjs1u75pNz/kmu5ms9ppRMkafq0/2311hbYi6VXmp6AeJweGJWkGKEFxw7xADuC8iM7xWnXW5aiNvhbsXBOwuTK8b2ioxjrg6OFhiMck+z9M5FHg+ktY7YB8iY+0V6B/Op2cQGtLaZ2E9lsomlQpxL+LiPI7UWEqmALEGH/Pk5tdLnlFRjEk2PPc8YURw+/nkP9tqJ/AXQwaXc9iwC5yxlYPCsp/Tc4='
    provider = 'kakaotv'
    
    
    releasePid = "_qVpiY31v_oU"
    #response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers, cookies=cookies, data=data)
    response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers)
    
    # print(f'{chr(10)}widevine_license: {response.content}')
    #NB. Original query string below. It seems impossible to parse and
    #reproduce query strings 100% accurately so the one below is given
    #in case the reproduced version is not "correct".
    # response = requests.options('https://api.ott.kinopoisk.ru/v12/license-affected-content-metadata?contentIds=4b63db58ab27e92b90a457e533b00007&serviceId=25', headers=headers)
    # dash-cenc/hdr10_uhd_hevc_ec3.mpd
    # https://strm.yandex.ru/vh-ottenc-converted/vod-content/4315082489d87677b21f7c83593fcb73/8614535x1631802676x41611665-4e76-41ac-93a7-5070b77b5f3c/dash-cenc/sdr_uhd_hevc_ec3.mpd
    
    # 'GET /certificate HTTP/1.1'
    Is this correct?

    In the requests.post I removed the cookies=cookies and data=data as later on the l3.py crashed.
    With the cookies I get this error:
    Code:
    Traceback (most recent call last):
      File "C:\Users\Marcel\Downloads\tmp\widevine_keys\l3.py", line 8, in <module>
        import headers
      File "C:\Users\Marcel\Downloads\tmp\widevine_keys\headers.py", line 17, in <module>
        response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers, cookies=cookies, data=data)
    NameError: name 'cookies' is not defined
    5) Execute the l3.py using "python.exe .\l3.py"

    I get this error:
    Code:
    Input MPD URL: https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/971749/3-10000-1-1-1-X.ism/rtlplus.mpd
    License URL: https://rtlplus-widevine.streamingtech.de/index/rtlplus
    
    PSSH obtained.
    AAAAUHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADAIARIgNDQyNDZlNjUzMTNhNjk3N2I1MjA3ZDY3MzVhNjkyZTQiBjk3MTc0OSoCU0Q=
    
    license response status: <Response [404]>
    server reports: {"error":"invalid.meta.data.INVALID_LICENSE_CHALLENGE.100)","errorCode":12400,"origin":"google"}
    server did not issue license, make sure you have correctly pasted all the required headers in the headers.py. Also check json/raw params of POST request.
    Any idea what could be the problem?
    Last edited by Marcel; 13th Sep 2025 at 13:09.
    Quote Quote  
  4. @Obo
    @larley

    Thank you very much for the links and for the keys, respectively. However, due to random, I have tried the links from @lostion first, and they worked at once, so I didn't try yours in addition.

    @Lostion
    As always, thank you very much! Your links and keys worked like a charm - no fiddling around. Next weekend I'll probably ask for the next two Schlefaz episodes
    Quote Quote  
  5. np just write me a PM and I can send you the links
    Quote Quote  
  6. Originally Posted by Marcel View Post
    Hi all,

    I also need a little help getting the keys.

    I try to go step by step through what I've done so far:

    1) The file I want to download: https://plus.rtl.de/video-tv/serien/alles-was-zaehlt-146430/2025-8-1039293/episode-476...bedroht-971749
    2) --> mpd: https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/971749/3-10000-1-1-1-X.ism/rtlplus.mpd
    3) --> licence url: https://rtlplus-widevine.streamingtech.de/index/rtlplus

    Then I edited the headers.py with the x-auth-token show in the headers of the POST https://rtlplus-widevine.streamingtech.de/index/rtlplus:
    Image
    [Attachment 88706 - Click to enlarge]

    (scolling down a little to the x-auth-token:
    Image
    [Attachment 88707 - Click to enlarge]


    4) My headers.py:
    Code:
    import requests
    
    headers = {
        'x-auth-token': 'eyJhbGciO...',
    }
    params = (
        ('platform', 'BROWSER'),
        ('type', 'MOVIE'),
    )
    # params inserted below will be passed to data-raw 
    
    token = 'PFYtFSqWMYIROJYywBp0rbKvpD3z6N6E6UezNrZmCeKHkcJ5BiH4J8qwO0kfWOmrSsyFJMg9OqKKEwvuQiXL4qdDTa6ZYplNV9IQt6eEuveglDxjVlYd0vAecS5TZKn5mIs01YxcYNlTC7tu3BIk63JhMykMWEMmj1oEqaLa7N3ZrfU2VTlEPaWXBQV6PxnFeD022Yi298GOX/lDik7sXt5u4duT0aKIYbz0HPmjoh8b9Uy8bvzJUa0/SlgRcsW8RNTNjRJHM6N7BESCBGFEZcWoSXeDLEblEfRoBKro2iDGB1neLfRdY1fj7tJX1Rn9lj+OJwRTrBV4XoTQFuSsFwvYCeQfkAoRHXnze9njI5pY7sYgIGxuM4Zh3Wqaps6kxdO53QMm0jJ/L41X6r5CikSGKQ3Rcps8eQccZb9svEuyXMof2nm+eYL+AVPPrfmAf/BrmUHfiuF9CmNsF9pI7PjJfLeASmh3KDI/5gUuC4uJB7rjTzHVWNRz8MSvYjJ37/5V9+FTihpu04+0jFZ1AlGRks2dzk2IGvm5WcwUhsW2l/oQXlh7AgsksIl2DT0wH11WeG+h1/ijymMcG9AZzsxtkC53eLJ8bl55/Aag0TJfX4N6KvV7UhglXxkLifb06bLK/wlcGCfb01b4cnngcjPJEMxh2+Q7sJSnbyrtsfodzNah8JXITmx5kTkFFZkdtga1ha9jAb+Z40VMQfbrCLgh0GEe2G3VczcIt8QHAWAeS91TkzLbMRAugbgLvdbI8yQXtM15uo+TXrV4PNFprug33AnvnQu7IpNxlmgPMZhEn4Qqc/V++OFIpz/JYEMnLFvjYcXE2+sPc4uKnoE0xk33+IgZKtWtDhxRg2SJKyKOYxXucXybUuqPP/d+Nq1VNhD84Of+EfVvBjs1u75pNz/kmu5ms9ppRMkafq0/2311hbYi6VXmp6AeJweGJWkGKEFxw7xADuC8iM7xWnXW5aiNvhbsXBOwuTK8b2ioxjrg6OFhiMck+z9M5FHg+ktY7YB8iY+0V6B/Op2cQGtLaZ2E9lsomlQpxL+LiPI7UWEqmALEGH/Pk5tdLnlFRjEk2PPc8YURw+/nkP9tqJ/AXQwaXc9iwC5yxlYPCsp/Tc4='
    provider = 'kakaotv'
    
    
    releasePid = "_qVpiY31v_oU"
    #response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers, cookies=cookies, data=data)
    response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers)
    
    # print(f'{chr(10)}widevine_license: {response.content}')
    #NB. Original query string below. It seems impossible to parse and
    #reproduce query strings 100% accurately so the one below is given
    #in case the reproduced version is not "correct".
    # response = requests.options('https://api.ott.kinopoisk.ru/v12/license-affected-content-metadata?contentIds=4b63db58ab27e92b90a457e533b00007&serviceId=25', headers=headers)
    # dash-cenc/hdr10_uhd_hevc_ec3.mpd
    # https://strm.yandex.ru/vh-ottenc-converted/vod-content/4315082489d87677b21f7c83593fcb73/8614535x1631802676x41611665-4e76-41ac-93a7-5070b77b5f3c/dash-cenc/sdr_uhd_hevc_ec3.mpd
    
    # 'GET /certificate HTTP/1.1'
    Is this correct?

    In the requests.post I removed the cookies=cookies and data=data as later on the l3.py crashed.
    With the cookies I get this error:
    Code:
    Traceback (most recent call last):
      File "C:\Users\Marcel\Downloads\tmp\widevine_keys\l3.py", line 8, in <module>
        import headers
      File "C:\Users\Marcel\Downloads\tmp\widevine_keys\headers.py", line 17, in <module>
        response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers, cookies=cookies, data=data)
    NameError: name 'cookies' is not defined
    5) Execute the l3.py using "python.exe .\l3.py"

    I get this error:
    Code:
    Input MPD URL: https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/971749/3-10000-1-1-1-X.ism/rtlplus.mpd
    License URL: https://rtlplus-widevine.streamingtech.de/index/rtlplus
    
    PSSH obtained.
    AAAAUHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADAIARIgNDQyNDZlNjUzMTNhNjk3N2I1MjA3ZDY3MzVhNjkyZTQiBjk3MTc0OSoCU0Q=
    
    license response status: <Response [404]>
    server reports: {"error":"invalid.meta.data.INVALID_LICENSE_CHALLENGE.100)","errorCode":12400,"origin":"google"}
    server did not issue license, make sure you have correctly pasted all the required headers in the headers.py. Also check json/raw params of POST request.
    Any idea what could be the problem?
    Hi Marcel,

    I really can't tell you what the problem is. Nevertheless, I perhaps have a solution for you:

    Personally, my motivation to play around with Python code is quite limited; I just want the stuff to be on my disk. Therefore, a while ago, I have searched for a more usable solution and have found something that is called `hellyes`. Watch out out for version 5 (hellyes5). It is a ZIP archive that (among a lot of other stuff) contains a python script with "...gui..." in its name.

    This is what you may be after . If you execute it, a minimal GUI appears where you enter the MPD URL in the first field and the license request URI in the second field, and it does the rest automatically. I always had success with it as long as I had the correct MPD and license URI. I didn't test it with anything else than RTL plus so far, though, because I am only interested in the Schlefaz show.

    Two things to note:

    1. Before you start the script mentioned above, you must activate the correct virtual environment that's in the helleys5 directory. Otherwise, the script may throw errors and may not start at all (depending on your Python installation).

    2. I believe that your license URI is wrong. I haven't used all that stuff for a longer time now, but I eventually remember that the license URI usually contains a lot of parameters and thus is several hundreds of characters long. In contrast, your URI is just a URL without any parameters. I may be wrong, so it would probably a good idea to learn how to extract the license URI the correct way.

    Have fun, and a nice Sunday!
    Last edited by 4L7zHhiyQO3Thui6; 14th Sep 2025 at 06:37.
    Quote Quote  
  7. Hi 4L7zHhiyQO3Thui6,

    thanks for the hint, it's working now. You were right, the problem was the url of the licence.

    I will play around with it a little more and then come back and give an update.

    Thanks again and have a nice rest of the sunday
    Quote Quote  
  8. Code:
    https://rtlplus-widevine.streamingtech.de/index/rtlplus
    Is the right url for widevine.

    No idea about the python code above.
    Quote Quote  
  9. Originally Posted by Marcel View Post
    Hi all,

    I also need a little help getting the keys.

    I try to go step by step through what I've done so far:

    1) The file I want to download: https://plus.rtl.de/video-tv/serien/alles-was-zaehlt-146430/2025-8-1039293/episode-476...bedroht-971749
    2) --> mpd: https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/971749/3-10000-1-1-1-X.ism/rtlplus.mpd
    3) --> licence url: https://rtlplus-widevine.streamingtech.de/index/rtlplus

    Then I edited the headers.py with the x-auth-token show in the headers of the POST https://rtlplus-widevine.streamingtech.de/index/rtlplus:
    Image
    [Attachment 88706 - Click to enlarge]

    (scolling down a little to the x-auth-token:
    Image
    [Attachment 88707 - Click to enlarge]


    4) My headers.py:
    Code:
    import requests
    
    headers = {
        'x-auth-token': 'eyJhbGciO...',
    }
    params = (
        ('platform', 'BROWSER'),
        ('type', 'MOVIE'),
    )
    # params inserted below will be passed to data-raw 
    
    token = 'PFYtFSqWMYIROJYywBp0rbKvpD3z6N6E6UezNrZmCeKHkcJ5BiH4J8qwO0kfWOmrSsyFJMg9OqKKEwvuQiXL4qdDTa6ZYplNV9IQt6eEuveglDxjVlYd0vAecS5TZKn5mIs01YxcYNlTC7tu3BIk63JhMykMWEMmj1oEqaLa7N3ZrfU2VTlEPaWXBQV6PxnFeD022Yi298GOX/lDik7sXt5u4duT0aKIYbz0HPmjoh8b9Uy8bvzJUa0/SlgRcsW8RNTNjRJHM6N7BESCBGFEZcWoSXeDLEblEfRoBKro2iDGB1neLfRdY1fj7tJX1Rn9lj+OJwRTrBV4XoTQFuSsFwvYCeQfkAoRHXnze9njI5pY7sYgIGxuM4Zh3Wqaps6kxdO53QMm0jJ/L41X6r5CikSGKQ3Rcps8eQccZb9svEuyXMof2nm+eYL+AVPPrfmAf/BrmUHfiuF9CmNsF9pI7PjJfLeASmh3KDI/5gUuC4uJB7rjTzHVWNRz8MSvYjJ37/5V9+FTihpu04+0jFZ1AlGRks2dzk2IGvm5WcwUhsW2l/oQXlh7AgsksIl2DT0wH11WeG+h1/ijymMcG9AZzsxtkC53eLJ8bl55/Aag0TJfX4N6KvV7UhglXxkLifb06bLK/wlcGCfb01b4cnngcjPJEMxh2+Q7sJSnbyrtsfodzNah8JXITmx5kTkFFZkdtga1ha9jAb+Z40VMQfbrCLgh0GEe2G3VczcIt8QHAWAeS91TkzLbMRAugbgLvdbI8yQXtM15uo+TXrV4PNFprug33AnvnQu7IpNxlmgPMZhEn4Qqc/V++OFIpz/JYEMnLFvjYcXE2+sPc4uKnoE0xk33+IgZKtWtDhxRg2SJKyKOYxXucXybUuqPP/d+Nq1VNhD84Of+EfVvBjs1u75pNz/kmu5ms9ppRMkafq0/2311hbYi6VXmp6AeJweGJWkGKEFxw7xADuC8iM7xWnXW5aiNvhbsXBOwuTK8b2ioxjrg6OFhiMck+z9M5FHg+ktY7YB8iY+0V6B/Op2cQGtLaZ2E9lsomlQpxL+LiPI7UWEqmALEGH/Pk5tdLnlFRjEk2PPc8YURw+/nkP9tqJ/AXQwaXc9iwC5yxlYPCsp/Tc4='
    provider = 'kakaotv'
    
    
    releasePid = "_qVpiY31v_oU"
    #response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers, cookies=cookies, data=data)
    response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers)
    
    # print(f'{chr(10)}widevine_license: {response.content}')
    #NB. Original query string below. It seems impossible to parse and
    #reproduce query strings 100% accurately so the one below is given
    #in case the reproduced version is not "correct".
    # response = requests.options('https://api.ott.kinopoisk.ru/v12/license-affected-content-metadata?contentIds=4b63db58ab27e92b90a457e533b00007&serviceId=25', headers=headers)
    # dash-cenc/hdr10_uhd_hevc_ec3.mpd
    # https://strm.yandex.ru/vh-ottenc-converted/vod-content/4315082489d87677b21f7c83593fcb73/8614535x1631802676x41611665-4e76-41ac-93a7-5070b77b5f3c/dash-cenc/sdr_uhd_hevc_ec3.mpd
    
    # 'GET /certificate HTTP/1.1'
    Is this correct?

    In the requests.post I removed the cookies=cookies and data=data as later on the l3.py crashed.
    With the cookies I get this error:
    Code:
    Traceback (most recent call last):
      File "C:\Users\Marcel\Downloads\tmp\widevine_keys\l3.py", line 8, in <module>
        import headers
      File "C:\Users\Marcel\Downloads\tmp\widevine_keys\headers.py", line 17, in <module>
        response = requests.post('https://rtlplus-widevine.streamingtech.de/index/rtlplus', headers=headers, cookies=cookies, data=data)
    NameError: name 'cookies' is not defined
    5) Execute the l3.py using "python.exe .\l3.py"

    I get this error:
    Code:
    Input MPD URL: https://vodnowusoawsdash-cf.tvnow.de/pgrn/streaming/watch/971749/3-10000-1-1-1-X.ism/rtlplus.mpd
    License URL: https://rtlplus-widevine.streamingtech.de/index/rtlplus
    
    PSSH obtained.
    AAAAUHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADAIARIgNDQyNDZlNjUzMTNhNjk3N2I1MjA3ZDY3MzVhNjkyZTQiBjk3MTc0OSoCU0Q=
    
    license response status: <Response [404]>
    server reports: {"error":"invalid.meta.data.INVALID_LICENSE_CHALLENGE.100)","errorCode":12400,"origin":"google"}
    server did not issue license, make sure you have correctly pasted all the required headers in the headers.py. Also check json/raw params of POST request.
    Any idea what could be the problem?
    you only need to pass x-auth-token in pywidevine script
    Code:
     def decrypt_content(pssh, license_url, token):
    
        try:
            pssh_obj = PSSH(pssh)
            device = Device.load(DEVICE_PATH)
            cdm = Cdm.from_device(device)
            session_id = cdm.open()
            
            challenge = cdm.get_license_challenge(session_id, pssh_obj)
            
            headers = {
                'x-auth-token': token,
            }
            
            session = requests.Session()
            licence_response = session.post(
                license_url,
                data=challenge,
                headers=headers
            )
            licence_response.raise_for_status()
            
            licence = licence_response.content
            cdm.parse_license(session_id, licence)
    
            returned_keys = []
            print("\nKeys :")
            for key in cdm.get_keys(session_id):
                if key.type != "SIGNING":
                    key_string = f"{key.kid.hex}:{key.key.hex()}"
                    returned_keys.append(key_string)
                    print(f"   --key {key_string}")
    
            cdm.close(session_id)
    Quote Quote  



Similar Threads

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