VideoHelp Forum




+ Reply to Thread
Page 35 of 46
FirstFirst ... 25 33 34 35 36 37 45 ... LastLast
Results 1,021 to 1,050 of 1358
  1. I notice you have PlayReady and one less subtitle then I do. They both downloaded but yours has no corruption? In my downloads earlier last night with a different series I got six episodes of a series and only one episode out of that six wasn't corrupted and that warning from mkvmerge was not displayed in all the corrupted videos. I chocked it up to being an issue with h265 but then I instructed Unshackle to go for .h256 instead and there was less corruption but still corruption at the beginning of the videos. I should figure out PlayReady. Thank you for your post.
    Quote Quote  
  2. Member
    Join Date
    Dec 2021
    Location
    england
    Search Comp PM
    I have updated service, both work on unshackle 5.1.0
    Image
    [Attachment 92747 - Click to enlarge]

    Image
    [Attachment 92748 - Click to enlarge]
    Quote Quote  
  3. I now had a PRD folder with a prd in it. I did a download again via widevine and still the distortion at the beginning of the video. I don't know how to select it to download with prd but hopefully that would make a difference and this problem would go away. Thankfully whatever it is as far as I know it is limited to CRAV.

    Update downloaded the same episode with another program and it is flawless. The size of the video and the duration are the same but no glitches at the beginning of the file. This has me stumped.
    Last edited by Tom Saurus; 18th Jun 2026 at 12:27.
    Quote Quote  
  4. Originally Posted by Tom Saurus View Post
    I now had a PRD folder with a prd in it. I don't know how to select it to download with prd but hopefully that would make a difference and this problem would go away. This has me stumped.
    Input in your unshackle.yaml, paying careful attention to the indentation.

    Code:
    cdm:
      # Global default CDM device (fallback for all services/profiles)
      default: 'name_of_your_android_xxx_l3'
    
      # Direct service-specific CDM
      CRAV: 'name_of_your_prd_sl2000'
    Last edited by YmFzZTY0; 18th Jun 2026 at 13:58.
    Quote Quote  
  5. Thank you for your post. I gave it a try but it doesn't seem to like the PRD.

    C:\Unshackle>uv run unshackle dl -q 540 -w S01E02 CRAV https://www.crave.ca/en/series/reba-56028

    ▄• ▄▌ ▐ ▄ .▄▄ · ▄ .▄ ▄▄▄· ▄▄· ▄ •▄ ▄▄▌ ▄▄▄ .
    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██• ▀▄.▀·
    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪ ▐▀▀▪▄
    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
    ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀ ▀ ·▀▀▀ ·▀ ▀.▀▀▀ ▀▀▀
    v 5.1.0 - © 2025-2026 - github.com/unshackle-dl/unshackle

    Service Config loaded
    Loaded 1/1 Vaults
    Failed to load CDM, hisense_smarttv_32e5600eu_sl3000 does not exist or
    is not a file

    Maybe the prd is too old and no longer works.

    Yaml:

    # Pre-define which Widevine or PlayReady device to use for each Service
    cdm:
    default: ANDROID_4464_l3
    EXAMPLE: mtc_mtc_atv_atv_sl3000_6f0ab22b

    # Direct service-specific CDM
    CRAV: 'hisense_smarttv_32e5600eu_sl3000'
    Quote Quote  
  6. Member
    Join Date
    Dec 2021
    Location
    england
    Search Comp PM
    find where is PRD folder is
    uv run unshackle dl env info

    Image
    [Attachment 92755 - Click to enlarge]
    Quote Quote  
  7. Originally Posted by iamghost View Post
    find where is PRD folder is
    uv run unshackle dl env info

    Image
    [Attachment 92755 - Click to enlarge]

    Code:
    C:\Unshackle>uv run unshackle env info
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
               v 5.1.0 - © 2025-2026 - github.com/unshackle-dl/unshackle
    
         Config loaded from C:\Unshackle\unshackle\unshackle.yaml
    
                                      Directories
         ┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
         ┃ Name          ┃ Path                                               ┃
         ┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
         │ Cache         │ C:\Unshackle\Cache                                 │
         │ Commands      │ C:\Unshackle\unshackle\commands                    │
         │ Cookies       │ C:\Unshackle\Cookies                               │
         │ Core_Dir      │ C:\Unshackle\unshackle\core                        │
         │ Data          │ C:\Unshackle\unshackle                             │
         │ Dcsl          │ C:\Unshackle\DCSL                                  │
         │ Downloads     │ C:\Unshackle\Downloads                             │
         │ Exports       │ C:\Unshackle\unshackle\exports                     │
         │ Fonts         │ C:\Unshackle\unshackle\fonts                       │
         │ Logs          │ C:\Unshackle\Logs                                  │
         │ Namespace_Dir │ C:\Unshackle\unshackle                             │
         │ Prds          │ C:\Unshackle\PRDs - \path\to\services -            │
         │               │ \other\path\to\services                            │
         │ Services      │ C:\Unshackle\unshackle\services                    │
         │ Temp          │ C:\Unshackle\Temp                                  │
         │ User_Configs  │ C:\Unshackle\unshackle                             │
         │ Vaults        │ C:\Unshackle\unshackle\vaults                      │
         │ Wvds          │ C:\Unshackle\WVDs                                  │
         └───────────────┴────────────────────────────────────────────────────┘
    
    
    C:\Unshackle>
    I will go back into the .yaml and see about making it resemble how you have yours. I was just given a working .prd so I will put that in my PRDs folder and see how that works. Thank you for your post and thank you to the person who gave me the working .prd
    Quote Quote  
  8. yaml:

    downloads: C:\unshackle\Downloads
    logs: C:\unshackle\Logs
    temp: C:\unshackle\Temp
    wvds: C:\unshackle\WVDs
    prds: C:\Unshackle\PRDs
    - /path/to/services
    - /other/path/to/services
    # vaults: Vaults
    # fonts: Fonts


    # Pre-define which Widevine or PlayReady device to use for each Service
    cdm:
    default: ANDROID_4464_l3
    CRAV: 'samsung_sm-g925f_sl2000'
    if unshackle can't find prd then try this
    CRAV: 'samsung_sm-g925f_sl2000.prd'

    Code:
    C:\Unshackle>uv run unshackle dl -q 540 -w S01E02 CRAV https://www.crave.ca/en/series/reba-56028
    Traceback (most recent call last):
      File "<frozen runpy>", line 198, in _run_module_as_main
      File "<frozen runpy>", line 88, in _run_code
      File "C:\Unshackle\.venv\Scripts\unshackle.exe\__main__.py", line 4, in <module>
      File "C:\Unshackle\unshackle\core\__main__.py", line 14, in <module>
        from unshackle.core.commands import Commands
      File "C:\Unshackle\unshackle\core\commands.py", line 7, in <module>
        from unshackle.core.config import config
      File "C:\Unshackle\unshackle\core\config.py", line 257, in <module>
        config = Config.from_yaml(config_path)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\unshackle\core\config.py", line 229, in from_yaml
        return cls(**yaml.safe_load(path.read_text(encoding="utf8")) or {})
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\__init__.py", line 125, in safe_load
        return load(stream, SafeLoader)
               ^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\__init__.py", line 81, in load
        return loader.get_single_data()
               ^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\constructor.py", line 49, in get_single_data
        node = self.get_single_node()
               ^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\composer.py", line 36, in get_single_node
        document = self.compose_document()
                   ^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\composer.py", line 55, in compose_document
        node = self.compose_node(None, None)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\composer.py", line 84, in compose_node
        node = self.compose_mapping_node(anchor)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\composer.py", line 133, in compose_mapping_node
        item_value = self.compose_node(node, item_key)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\composer.py", line 84, in compose_node
        node = self.compose_mapping_node(anchor)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\composer.py", line 127, in compose_mapping_node
        while not self.check_event(MappingEndEvent):
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\parser.py", line 98, in check_event
        self.current_event = self.state()
                             ^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\parser.py", line 428, in parse_block_mapping_key
        if self.check_token(KeyToken):
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\scanner.py", line 115, in check_token
        while self.need_more_tokens():
              ^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\scanner.py", line 152, in need_more_tokens
        self.stale_possible_simple_keys()
      File "C:\Unshackle\.venv\Lib\site-packages\yaml\scanner.py", line 291, in stale_possible_simple_keys
        raise ScannerError("while scanning a simple key", key.mark,
    yaml.scanner.ScannerError: while scanning a simple key
      in "<unicode string>", line 79, column 3:
          if unshackle can't find prd then ...
          ^
    could not find expected ':'
      in "<unicode string>", line 80, column 3:
          CRAV: 'samsung_sm-g925f_sl2000.prd'
          ^
    
    C:\Unshackle>
    It looks like I have to do some more fine tuning. Thank you for the guidance thus far.
    Quote Quote  
  9. Your error is because of this:

    Code:
    cdm:
    default: ANDROID_4464_l3
    CRAV: 'samsung_sm-g925f_sl2000'
    if unshackle can't find prd then try this
    CRAV: 'samsung_sm-g925f_sl2000.prd'
    Needs to be:

    Code:
    cdm:
      default: 'ANDROID_4464_l3'
      CRAV: 'samsung_sm-g925f_sl2000'
    Quote Quote  
  10. I changed it and now get this but perhaps I am closer than I was:

    C:\Unshackle>uv run unshackle dl --list-titles CRAV https://www.crave.ca/en/series/reba-56028

    ▄• ▄▌ ▐ ▄ .▄▄ · ▄ .▄ ▄▄▄· ▄▄· ▄ •▄ ▄▄▌ ▄▄▄ .
    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██• ▀▄.▀·
    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪ ▐▀▀▪▄
    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
    ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀ ▀ ·▀▀▀ ·▀ ▀.▀▀▀ ▀▀▀
    v 5.1.0 - © 2025-2026 - github.com/unshackle-dl/unshackle

    Service Config loaded
    Loaded 1/1 Vaults
    Failed to load CDM, samsung_sm-g925f_sl2000 does not exist or is not a
    file
    Quote Quote  
  11. Do:
    uv run unshackle env info

    Then compare where it says your PRDs folder is to where it actually is.

    If there's a discrepancy then physically move the folder to where it wants it, or edit your yaml to the path where it actually is.
    Quote Quote  
  12. Originally Posted by YmFzZTY0 View Post
    Do:
    uv run unshackle env info

    Then compare where it says your PRDs folder is to where it actually is.

    If there's a discrepancy then physically move the folder to where it wants it, or edit your yaml to the path where it actually is.
    It seems to reflect where it is. I better take a break and look at afresh later on.

    I thought perhaps I could get it working in Envied and now I have screwed that up. Sometimes I keep digging the hole deeper.
    Quote Quote  
  13. I tinkered and got my Envied .yaml working and finally CRAV widevine working in Envied. But sad to report the distortion with Envied widevine decryption was the exact same as the one in Unshackle.

    But I did learn to work with the full working copy of Envied .yaml and imputed what I needed to get it to work. So whatever this is that is causing this flaw may be exclusive to just me as no one else has reported a problem. I might be able to get the PRD to work in Envied and be able to test.

    In my C: Unshackle folder I made a folder called PRDs. I right clicked and selected copy path and imputed that into the Unshackle .yaml at the appropriate spot I think.

    Update I have did some more tinkering in the Envied .yaml and it seems to have accept the .prd. It seems to be downloading and fingers crossed hopefully the distortion or flaw at the beginning of the video will not be there. If it is I don't have clue what to do going forward if that is the case.

    Further Update: It download and decrypted via the prd in Envied and the flaw that was there in the widevine is there in the prd decrypted file. I don't have any way to deal with that and it seems to be just happening to me so there won't be a Service fix.

    I have a theory that perhaps there are some segments missing somehow and perhaps that is what is causing this. The other program I used downloaded it with N-m3u8DL-RE and it was flawless.

    I did an experiment just downloading the video thinking perhaps the flaw comes about via muxing. The video file with no audio or subtitle still had the flaw for the first 48 seconds or so. I have nothing else to go on so I best be grateful for what works and work with what Services are working fine for me and hope this problem doesn't spread. Thank you for those who helped me.
    Last edited by Tom Saurus; 19th Jun 2026 at 00:45.
    Quote Quote  
  14. Member
    Join Date
    Dec 2021
    Location
    england
    Search Comp PM
    you got error because I add "if unshackle can't find prd then try this" it only show you to pick one with or without .prd, not add all in yaml
    try this
    Code:
    cdm:
      default: 'ANDROID_4464_l3'
      CRAV: 'samsung_sm-g925f_sl2000.prd'
    Last edited by iamghost; 19th Jun 2026 at 07:27.
    Quote Quote  
  15. It is quite a mystery as to what is going on. I have changed it to add that .prd on the end of that line of code as I finally got it exactly like you have imputed above.

    I have the PRDs folder in the main Unshackle folder where the WVDs folder is.

    Code:
    # Override default directories used across unshackle
    directories:
      services: C:\Unshackle\unshackle\services
      cache: C:\unshackle\Cache
      cookies: C:\unshackle\Cookies
      dcsl: DCSL # Device Certificate Status List
    
      downloads: C:\unshackle\Downloads
      logs: C:\unshackle\Logs
      temp: C:\unshackle\Temp
      wvds: C:\unshackle\WVDs
      prds: C:\unshackle\PRDs
        - /path/to/services
        - /other/path/to/services
      # vaults: Vaults
      # fonts: Fonts
    
    # Pre-define which Widevine or PlayReady device to use for each Service
    cdm:
      default: 'ANDROID_4464_l3'
      CRAV: 'samsung_sm-g925f_sl2000.prd'
      
    
    # Use pywidevine Serve-compliant Remote CDMs
    remote_cdm:
      - name: "chrome"
        device_name: chrome
        device_type: CHROME
        system_id: 27175
        security_level: 3
        host: https://domain.com/api
        secret: secret_key
      - name: "chrome-2"
        device_name: chrome
        device_type: CHROME
        system_id: 26830
        security_level: 3
        host: https://domain-2.com/api
        secret: secret_key
    
    # Key Vaults store your obtained Content Encryption Keys (CEKs)
    key_vaults:
      - type: SQLite
        name: Local
        path: key_store.db
      # Additional vault types:
      # - type: API
      #   name: "Remote Vault"
      #   uri: "https://key-vault.example.com"
      #   token: "secret_token"
      # - type: MySQL
      #   name: "MySQL Vault"
      #   host: "127.0.0.1"
      #   port: 3306
      #   database: vault
      #   username: user
      #   password: pass
    
    # Choose what software to use to download data
    downloader: aria2c
    # Options: requests | aria2c | curl_impersonate | n_m3u8dl_re
    # Can also be a mapping:
    # downloader: n_m3u8dl_re
    #   ALL4: n_m3u8dl_re
    #   TVNZ: n_m3u8dl_re
    #   default: n_m3u8dl_re
    
     
    
    # aria2c downloader configuration
    aria2c:
      max_concurrent_downloads: 4
      max_connection_per_server: 3
      split: 5
      file_allocation: falloc # none | prealloc | falloc | trunc
    
    # N_m3u8DL-RE downloader configuration
    n_m3u8dl_re:
      thread_count: 16
      ad_keyword: "advertisement"
      use_proxy: true
    
    # curl_impersonate downloader configuration
    curl_impersonate:
      browser: chrome120
    
    # Pre-define default options and switches of the dl command
    dl:
      best: true
      sub_format: srt
      downloads: 4
      workers: 16
      lang:
        - en
    #    - fr
      EXAMPLE:
        bitrate: CBR
    
    # Chapter Name to use when exporting a Chapter without a Name
    chapter_fallback_name: "Chapter {j:02}"
    
    # Case-Insensitive dictionary of headers for all Services
    headers:
      Accept-Language: "en-US,en;q=0.8"
      User-Agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.75 Safari/537.36"
    
    # Override default filenames used across unshackle
    filenames:
      log: "unshackle_{name}_{time}.log"
      config: "config.yaml"
      root_config: "unshackle.yaml"
      chapters: "Chapters_{title}_{random}.txt"
      subtitle: "Subtitle_{id}_{language}.srt"
    
    # API key for The Movie Database (TMDB)
    tmdb_api_key: ""
    
    # Configuration for pywidevine's serve functionality
    serve:
      users:
        secret_key_for_user:
          devices:
            - generic_nexus_4464_l3
          username: user
      # devices:
      #   - '/path/to/device.wvd'
    
    # Configuration data for each Service
    services:
      iP:
        cert: .\certs\bbciplayer.pem
      # Service-specific configuration goes here
      # EXAMPLE:
      #   api_key: "service_specific_key"
    
    # conversion_method:
    # - auto (default): Smart routing - subby for WebVTT/SAMI, standard for others
    # - subby: Always use subby with advanced processing
    # - pycaption: Use only pycaption library (no SubtitleEdit, no subby)
    # - subtitleedit: Prefer SubtitleEdit when available, fall back to pycaption
    subtitle:
      conversion_method: auto
      sdh_method: auto


    Code:
    C:\Unshackle>uv run unshackle env info
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
               v 5.1.0 - © 2025-2026 - github.com/unshackle-dl/unshackle
    
         Config loaded from C:\Unshackle\unshackle\unshackle.yaml
    
                                      Directories
         ┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
         ┃ Name          ┃ Path                                               ┃
         ┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
         │ Cache         │ C:\Unshackle\Cache                                 │
         │ Commands      │ C:\Unshackle\unshackle\commands                    │
         │ Cookies       │ C:\Unshackle\Cookies                               │
         │ Core_Dir      │ C:\Unshackle\unshackle\core                        │
         │ Data          │ C:\Unshackle\unshackle                             │
         │ Dcsl          │ C:\Unshackle\DCSL                                  │
         │ Downloads     │ C:\Unshackle\Downloads                             │
         │ Exports       │ C:\Unshackle\unshackle\exports                     │
         │ Fonts         │ C:\Unshackle\unshackle\fonts                       │
         │ Logs          │ C:\Unshackle\Logs                                  │
         │ Namespace_Dir │ C:\Unshackle\unshackle                             │
         │ Prds          │ C:\Unshackle\PRDs - \path\to\services -            │
         │               │ \other\path\to\services                            │
         │ Services      │ C:\Unshackle\unshackle\services                    │
         │ Temp          │ C:\Unshackle\Temp                                  │
         │ User_Configs  │ C:\Unshackle\unshackle                             │
         │ Vaults        │ C:\Unshackle\unshackle\vaults                      │
         │ Wvds          │ C:\Unshackle\WVDs                                  │
         └───────────────┴────────────────────────────────────────────────────┘
    
    
    C:\Unshackle>uv run unshackle dl -q 540 -w S01E02 CRAV https://www.crave.ca/en/series/reba-56028
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
               v 5.1.0 - © 2025-2026 - github.com/unshackle-dl/unshackle
    
         Service Config loaded
         Loaded 1/1 Vaults
         Failed to load CDM, samsung_sm-g925f_sl2000.prd does not exist or is
         not a file
    
    C:\Unshackle>
    Last edited by Tom Saurus; 19th Jun 2026 at 09:25.
    Quote Quote  
  16. Member
    Join Date
    Dec 2022
    Location
    Lesotho
    Search Comp PM
    Remove the two lines after the PRD location.


    Code:
    prds: C:\unshackle\PRDs
        - /path/to/services
        - /other/path/to/services
    Quote Quote  
  17. Member
    Join Date
    Dec 2021
    Location
    england
    Search Comp PM
    here your yaml
    Code:
    # Override default directories used across unshackle
    directories:
      services: C:\Unshackle\unshackle\services
      cache: C:\unshackle\Cache
      cookies: C:\unshackle\Cookies
      dcsl: DCSL # Device Certificate Status List
    
      downloads: C:\unshackle\Downloads
      logs: C:\unshackle\Logs
      temp: C:\unshackle\Temp
      wvds: C:\unshackle\WVDs
      prds: C:\unshackle\PRDs
      # vaults: Vaults
      # fonts: Fonts
    
    # Pre-define which Widevine or PlayReady device to use for each Service
    cdm:
      default: 'ANDROID_4464_l3'
      CRAV: 'samsung_sm-g925f_sl2000.prd'
      
    
    # Use pywidevine Serve-compliant Remote CDMs
    remote_cdm:
      - name: "chrome"
        device_name: chrome
        device_type: CHROME
        system_id: 27175
        security_level: 3
        host: https://domain.com/api
        secret: secret_key
      - name: "chrome-2"
        device_name: chrome
        device_type: CHROME
        system_id: 26830
        security_level: 3
        host: https://domain-2.com/api
        secret: secret_key
    
    # Key Vaults store your obtained Content Encryption Keys (CEKs)
    key_vaults:
      - type: SQLite
        name: Local
        path: key_store.db
      # Additional vault types:
      # - type: API
      #   name: "Remote Vault"
      #   uri: "https://key-vault.example.com"
      #   token: "secret_token"
      # - type: MySQL
      #   name: "MySQL Vault"
      #   host: "127.0.0.1"
      #   port: 3306
      #   database: vault
      #   username: user
      #   password: pass
    
    # Choose what software to use to download data
    downloader: aria2c
    # Options: requests | aria2c | curl_impersonate | n_m3u8dl_re
    # Can also be a mapping:
    # downloader: n_m3u8dl_re
    #   ALL4: n_m3u8dl_re
    #   TVNZ: n_m3u8dl_re
    #   default: n_m3u8dl_re
    
     
    
    # aria2c downloader configuration
    aria2c:
      max_concurrent_downloads: 4
      max_connection_per_server: 3
      split: 5
      file_allocation: falloc # none | prealloc | falloc | trunc
    
    # N_m3u8DL-RE downloader configuration
    n_m3u8dl_re:
      thread_count: 16
      ad_keyword: "advertisement"
      use_proxy: true
    
    # curl_impersonate downloader configuration
    curl_impersonate:
      browser: chrome120
    
    # Pre-define default options and switches of the dl command
    dl:
      best: true
      sub_format: srt
      downloads: 4
      workers: 16
      lang:
        - en
    #    - fr
      EXAMPLE:
        bitrate: CBR
    
    # Chapter Name to use when exporting a Chapter without a Name
    chapter_fallback_name: "Chapter {j:02}"
    
    # Case-Insensitive dictionary of headers for all Services
    headers:
      Accept-Language: "en-US,en;q=0.8"
      User-Agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.75 Safari/537.36"
    
    # Override default filenames used across unshackle
    filenames:
      log: "unshackle_{name}_{time}.log"
      config: "config.yaml"
      root_config: "unshackle.yaml"
      chapters: "Chapters_{title}_{random}.txt"
      subtitle: "Subtitle_{id}_{language}.srt"
    
    # API key for The Movie Database (TMDB)
    tmdb_api_key: ""
    
    # Configuration for pywidevine's serve functionality
    serve:
      users:
        secret_key_for_user:
          devices:
            - generic_nexus_4464_l3
          username: user
      # devices:
      #   - '/path/to/device.wvd'
    
    # Configuration data for each Service
    services:
      iP:
        cert: .\certs\bbciplayer.pem
      # Service-specific configuration goes here
      # EXAMPLE:
      #   api_key: "service_specific_key"
    
    # conversion_method:
    # - auto (default): Smart routing - subby for WebVTT/SAMI, standard for others
    # - subby: Always use subby with advanced processing
    # - pycaption: Use only pycaption library (no SubtitleEdit, no subby)
    # - subtitleedit: Prefer SubtitleEdit when available, fall back to pycaption
    subtitle:
      conversion_method: auto
      sdh_method: auto
    Quote Quote  
  18. Code:
    # Pre-define which Widevine or PlayReady device to use for each Service
    cdm:
      default: 'ANDROID_4464_l3'
      CRAV: 'samsung_sm-g925f_sl2000.prd'
    You can't add the file extension, either .wvd or .prd
    The very latest post on Sparkys discord server relates to this matter. And he's the developer.
    Image
    [Attachment 92766 - Click to enlarge]
    Quote Quote  
  19. Thank you both for your posts. I did a copy and replace with iamghost's yaml post and it led to some major problems so I had to revert. But somehow with taking that .prd off the end and the advice that you both have given me the prd is finally accepted and I am testing it now. I hope this video problem at the beginning of the files is not repeated when this Reba episode is finished downloading. I did have success with no flaws using WVP2 on the same episode. So if for whatever reason this distortion in the video continues via Envied and Unshackle I will just have to see about downgrading to an earlier version of Crav or watching for a new version at some point to see if that goes away. Thankfully I pretty much archived most of what I wanted and there isn't all that much left that I am interested in.

    It is strange though this distortion at the beginning of the videos is just happening with my downloads with both Envied and Unshackle. The download just finished and mkvmerge is giving a report:

    Code:
    C:\Unshackle>uv run unshackle dl -q 540 -w S01E02 CRAV https://www.crave.ca/en/series/reba-56028
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
               v 5.1.0 - © 2025-2026 - github.com/unshackle-dl/unshackle
    
         Service Config loaded
         Loaded 1/1 Vaults
         Loaded PlayReady CDM: Samsung Electronics Co. LTD SM-G925F-EUR-XX
         SM-G925F (L2000)
    
      ────────────────────────────── Service: CRAV ───────────────────────────────
    
         Service is not Geoblocked in your region
          + Authenticating...
          + Refreshing profile tokens...
         Authenticated with Service
    
      ─────────────────────────── Series: Reba (2001) ────────────────────────────
    
         6 seasons, S1(22), S2(25), S3(22), S4(22), S5(22), S6(13)
    
      ──────────── Reba 2001 S01E02 The Honeymoon's Over or Now What? ────────────
    
         Cached 1 Key to 1/1 Vaults
    
         1 Video
         └── [H.264, SDR] | en | 960x540 @ 1800 kb/s, 29.970 FPS
              ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 05:26 • Downloaded
         1 Audio
         └── [DD] | en | 6.0 | 384 kb/s | Original
              ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 05:26 • Downloaded
         3 Subtitles
         ├── [WVTT] | en | Original
         │    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 00:11 • Downloaded
         ├── [WVTT] | en | Original (SDH)
         │    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 00:12 • Downloaded
         └── [VTT] | en | Original (SDH)
              ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 00:13 • Downloaded
         3 Chapters
         ├── 00:00:00.000
         ├── 00:02:01.000 | Intro
         └── 00:02:32.000
    
         PlayReady(AAADLHBzc2gAAAAAmgTweZhAQoarkuZb4IhflQAAAwwMAwAAAQABAAID...)
         └── 5ece9b2f6220bdec3c08c875e07ed822:dab8e8bdc313d282bb44c448396ff1d2*
    
         Track downloads finished in 5m26s
         mkvmerge had at least one warning or error, continuing anyway...
         #GUI#warning 'C:\unshackle\Temp\Audio_18c4dafb.mp4' track 0: This
         audio track contains 36848 bytes of invalid data which were skipped
         before timestamp 00:01:00.032000000. The audio/video synchronization
         may have been lost.
    
         #GUI#warning 'C:\unshackle\Temp\Audio_18c4dafb.mp4' track 0: This
         audio track contains 33776 bytes of invalid data which were skipped
         before timestamp 00:01:18.016000000. The audio/video synchronization
         may have been lost.
    
         Multiplexing...  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 00:01 •
    
         🎉 Title downloaded in 5m30s!
    
         Processed all titles in 5m35s
    
    
    C:\Unshackle>
    Quote Quote  
  20. You haven't got a load of crap in your Temp folder have you ? That's potentially interfering with the final stages ?
    Quote Quote  
  21. Originally Posted by YmFzZTY0 View Post
    You haven't got a load of crap in your Temp folder have you ? That's potentially interfering with the final stages ?
    I am pretty good at keeping the Temp folder clear of stuff. However maybe I need to clear some caches; you never know. But with my experiment last night just downloading the video file the flaw was still in that and so muxing needed to be done with adding in audio. But the video files are made up of smaller video file segments themselves that are combined together. I remember with Freevine that sometimes a download would fail and it would be just missing a segment or two and you could reload the download and it would quickly get the missing segments and then go on and get the audio and subtitle and mux at the end. I am running across that the odd time with WVP2 but thankfully it usually works out.
    Quote Quote  
  22. If you want to either post here, or PM me the title I can download myself with both unshsckle and vinetrimmer and we can appraise them for the issues you are experiencing? It could well prove to be a site issue, and that would at least put your mind at rest ?
    Quote Quote  
  23. Member
    Join Date
    Aug 2005
    Location
    England
    Search Comp PM
    I've been trying to archive all the iPlayer UHD coverage of the World Cup (so far) and annoyingly the BBC are now deleting the UHD streams as soon as they finish. I tried to start a download a few seconds after it stopped airing live and it actually worked! However, after downloading the video stream it hanged at this point:
    Code:
         1 Video
         └── [H.265, HLG] | en | 3840x2160 @ 18000 kb/s, 50.000 FPS
             ⠧ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸ • --:-- • DASH 22.7 MB/s
    The download rate part just continually drops but it never moves onto the next "merging" stage like normal downloads do. I have all of the mp4 video segments from the temp folder still...can I force unshackle to move onto the next stage using them? Or merge them manually somehow?

    The final log entry printed before it hangs is:
    Code:
    {"timestamp": "2026-06-19T21:31:08.244808+00:00", "session_id": "58e3001a", "level": "DEBUG", "operation": "downloader_start", "message": "Starting download", "context": {"url_count": 3249, "first_url": "https://ve-uhd-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_041/t=3840/v=pv81/b=18000000/464034434.m4s", "output_dir": "/unshackle/temp/Video_2d6c8e62.mp4_segments", "filename": "{i:04}.mp4", "max_workers": 16, "has_proxy": false, "session_type": "Session"}}
    Trying the download from scratch is not an option because the UHD stream has already been removed!
    Quote Quote  
  24. Originally Posted by YmFzZTY0 View Post
    If you want to either post here, or PM me the title I can download myself with both unshsckle and vinetrimmer and we can appraise them for the issues you are experiencing? It could well prove to be a site issue, and that would at least put your mind at rest ?
    Reba s01e02 is flawed at the beginning. The video plays then goes still and then starts again meanwhile the audio is playing throughout. After 48 seconds it finally plays fine the rest of the video. But all the other videos I have tried since upgrading to the newest version of Unshackle and stabbedbybricks new version of Crav are like this. Well there was one exception the fourth episode of a series I was going to archive seemed flawless but the other episodes that preceeded it were flawed at the beginning. Thankfully WVP2 was able to get me an episode without flaws which has me wondering what has happened.

    iamghost downloaded the episode and didn't report any problems with it and no one else has mentioned any problems. Maybe it has to do with our family being subscribed to the ad supported Crave Basic.

    Maybe stabbedbybrick's newest CRAV doesn't need credentials and maybe that has something to do with this. But all in all I am happy with what I can get and have gotten so perhaps through time it will work again with getting videos without this distortion.

    Thank you for your post.
    Quote Quote  
  25. Points taken. Sure
    Quote Quote  
  26. Just wanted to drop in and let people know I've decided to archive my repo with services.

    With Unshackle v5 performing a lot worse for some users (myself included), I've been getting messages asking how to re-introduce n_m3u8dl_re and other various fixes. So it looks like we're back in the fragmented state of things where forks are being made and some even reverting to Vinetrimmer - the tool our ancestors used before fire was invented. And I'm just not interested in doing all that again. I'm also not a huge fan of how big of a role Claude has with the whole thing, but that's just my personal gripe with AI in general.

    I still like creating things and might do something else in the future, but as far as Unshackle goes it's time for me to call it a day. I'd still argue that it's the best public downloader/framework out there, though, so don't take this as me dumping on it. It's just not working well for me personally and it's time to move on.
    Quote Quote  
  27. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by stabbedbybrick View Post
    Just wanted to drop in and let people know I've decided to archive my repo with services.

    With Unshackle v5 performing a lot worse for some users (myself included), I've been getting messages asking how to re-introduce n_m3u8dl_re and other various fixes. So it looks like we're back in the fragmented state of things where forks are being made and some even reverting to Vinetrimmer - the tool our ancestors used before fire was invented. And I'm just not interested in doing all that again. I'm also not a huge fan of how big of a role Claude has with the whole thing, but that's just my personal gripe with AI in general.

    I still like creating things and might do something else in the future, but as far as Unshackle goes it's time for me to call it a day. I'd still argue that it's the best public downloader/framework out there, though, so don't take this as me dumping on it. It's just not working well for me personally and it's time to move on.
    Thanks for all the fish!
    Noob Starter Pack. Just download any Widevine media! Over 30,000 downloads for V6!.
    https://files.videohelp.com/u/301890/hellyes6.zip
    Quote Quote  
  28. Originally Posted by stabbedbybrick View Post
    Just wanted to drop in and let people know I've decided to archive my repo with services.

    With Unshackle v5 performing a lot worse for some users (myself included), I've been getting messages asking how to re-introduce n_m3u8dl_re and other various fixes. So it looks like we're back in the fragmented state of things where forks are being made and some even reverting to Vinetrimmer - the tool our ancestors used before fire was invented. And I'm just not interested in doing all that again. I'm also not a huge fan of how big of a role Claude has with the whole thing, but that's just my personal gripe with AI in general.

    I still like creating things and might do something else in the future, but as far as Unshackle goes it's time for me to call it a day. I'd still argue that it's the best public downloader/framework out there, though, so don't take this as me dumping on it. It's just not working well for me personally and it's time to move on.
    Thank you for all that you have done. I am going to try to revert a lower version of Unshackle as this newest version is problematic. I seem to be the only one with the Crave video problem but hopefully WVP2 keeps working flawlessly and doesn't end up with the same problem.

    I get that Unshackle is evolving but it seems with the last two upgrades that for whatever these advances are that you loose something and services that used to work splendidly now don't. I hope you continue to create. I am grateful for Twinvine as well but that CRAV problem that only I see to be having even happened with it with both Widevine and PlayReady. I am beginning to think I need to set up a Bell Media account instead of using Crave credentials.
    Quote Quote  
  29. Now I am finding that ALL4 is failing even in Envied with the newest version of Envied. I haven't upgraded on the older Mini PC to the newest envied so it is working with ALL4 for now anyway.

    If I could do it over again I would not have upgraded to the new version of Unshackle.
    Quote Quote  



Similar Threads

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