+ Reply to Thread
Results 91 to 120 of 221
-
-
The problem with phased's adjustments, when new commits come along at the very least you'll need to do a backup of episode.py, movie.py and song.py before doing git pull. Or, worse case, if on the new commit any of those files have been altered, you'll need to go through the whole editing rigmorole again.
What would be really super super duper is if we had an approach similar to stabby's freevine where the filename format is defined in the yaml file by the end user. Including whether output is mp4 or mkv.Last edited by deccavox; 1st Aug 2025 at 11:33.
-
I wrote this little ditty to tidy up my filenames (not just devine/ unshackle but from other sources like scene). I called it 'filename_strip.py'
I copy it into the folder that contains as many files as I want to be cleaned up. Double click it and it tidies each file taking a fraction of a second per file. It takes in mkv and mp4 files.
As an example
Grace.S05E01.Dead.If.You.Dont.1080p.ITV.WEB-DL.AAC2.0.H.264-user_tag.mkv
becomes
Grace S05E01 Dead If You Dont [1080p] [subs].mkv
Code:'''Strips all text from a filename after the resolution, removes dots and add '[subs]' at the end''' import os import re def rename_files(): # Get all mp4 and mkv files in the current directory files = [f for f in os.listdir('.') if f.endswith(('.mp4', '.mkv'))] for file in files: # Extract everything up to and including the resolution match = re.search(r'(.+?\d+[pP])', file, re.IGNORECASE) if match: new_name = match.group(1) # Extract the resolution and surround with brackets resolution = re.search(r'(\d+[pP])$', new_name, re.IGNORECASE) if resolution: resolution = f"[{resolution.group(1).lower()}]" new_name = new_name[:-len(resolution)+2] # Remove resolution from main name # Replace dots with spaces and clean up new_name = new_name.replace('.', ' ').strip() # Get the original file extension _, ext = os.path.splitext(file) # Construct the final name new_name = f"{new_name} {resolution} [subs]{ext}" # Rename the file os.rename(file, new_name) print(f"Renamed: {file} -> {new_name}") if __name__ == "__main__": rename_files() print("Renaming complete.")
Last edited by deccavox; 1st Aug 2025 at 11:29.
-
-
-
Everyone iPlayer working for you?
mine says ConnectionError: Failed to request the M3U(8) document. -
A repository branch with the scene_naming as an option in unshackle.yaml is now available for testing; https://github.com/unshackle-dl/unshackle/tree/feature/scene-naming-option.
scene_naming: true gives episode titles like this Prime.Suspect.S07E01.The.Final.Act.-.Part.One.1080p.ITV.WEB-DL.AAC2.0.H.264
scene_naming: false gives episode titles like this Prime.Suspect S07E01 The Final Act - Part One
I guess it will be released to the main branch in due course. -
-
Try as I might I cannot get unshackle to find my services , My yaml says
directories:
services: .\unshackle/unshackle/services
cache: .\cache
cookies: .\cookies
# dcsl: DCSL # Device Certificate Status List
downloads: .\Downloads
logs: .\Logs
temp: .\temp
WVDs: .\unshackle\WVDs
But when I check my unshackle env info, I get
No config file found, you can use any of the following locations:
├── 1.
│ C:\Users\palmer\AppData\Roaming\uv\tools\unshackle \Lib\site-packag
│ es\unshackle\unshackle.yaml
├── 2.
│ C:\Users\palmer\AppData\Roaming\uv\tools\unshackle \Lib\site-packag
│ es\unshackle.yaml
└── 3.
C:\Users\palmer\AppData\Roaming\uv\tools\unshackle \Lib\site-packag
es\unshackle\unshackle.yaml
Directories
┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━━━━━━━━━━┓
┃ Name ┃ Path ┃
┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━━━━━━━━━━┩
│ Cache │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\cache │
│ Commands │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\commands │
│ Cookies │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\cookies │
│ Core_Dir │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\core │
│ Data │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle │
│ Dcsl │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\DCSL │
│ Downloads │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\dow │
│ │ nloads │
│ Fonts │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\fonts │
│ Logs │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\logs │
│ Namespace_Dir │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle │
│ Prds │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\PRDs │
│ Services │ C:\Users\palmer\AppData\Roaming\uv\tools\unshackle │
│ │ \Lib\site-packages\unshackle\services │
│ Temp │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\tem │
│ │ p │
│ User_Configs │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle │
│ Vaults │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\vaults │
│ Wvds │ %APPDATA%\uv\tools\unshackle\Lib\site-packages\uns │
│ │ hackle\WVDs │
└───────────────┴───────────────────────────────── ───────────────────┘
Anu suggestions would be much appreciated -
Since you installed with uv tool everything is kept within the venv location which can be confusing if you're unsure.
Best to just revertCode:uv tool uninstall unshackle
Code:uv sync
This is the best way to handle it at the moment but you could get fancier withCode:setx UV_TOOL_BIN_DIR "C:\Tools\Unshackle"
-
Last edited by kev043; 3rd Aug 2025 at 06:02.
-
this how I have my yaml setup, I hope this can help you.
Code:directories: cache: C:\Users\xxxx\unshackle\Cache cookies: C:\Users\xxxx\unshackle\Cookies dcsl: DCSL # Device Certificate Status List downloads: C:\Users\xxxx\unshackle\Downloads logs: C:\Users\xxxx\unshackle\Logs temp: C:\Users\xxxx\unshackle\Temp wvds: C:\Users\xxxx\unshackle\WVDs # prds: PRDs # Additional directories that can be configured: # commands: Commands services: - C:\Users\xxxx\unshackle\Services # vaults: Vaults # fonts: Fonts
-
I get that you are advising me to uninstall unshackle , I originally installed it using these codes
git clone https://github.com/unshackle-dl/unshackle.git
cd unshackle
uv sync
uv run unshackle --help
that's one of the four installation instructions in the github guide that you pointed me to
should I be using one of the other three installation instructions ? -
Code:
git clone https://github.com/unshackle-dl/unshackle.git cd unshackle uv sync uv run unshackle --help
Code:pip install uv
-
-
I cannot understand why my config is loading from
%APPDATA%\uv\tools\unshackle\Lib\site-packages\uns
hackle\cache
when,in my opinion, it should be loading from
%USERPROFILE%\unshackle -
because you didnt add unshackle.yaml
[Attachment 88106 - Click to enlarge]
your name/unshackle/"ADD FOLDER" name - Logs, Temp, WVDs, etc -
Last edited by mickmars; 3rd Aug 2025 at 15:28.
-
[Attachment 88110 - Click to enlarge]
[Attachment 88111 - Click to enlarge]
Should unshackle really be in two different places on my computer ? -
delete .venv
make sure use / not \
Code:directories: services: ./unshackle/services cache: ./cache cookies: ./cookies # dcsl: DCSL # Device Certificate Status List downloads: ./Downloads logs: ./Logs temp: ./temp WVDs: ./unshackle/WVDs
-
How do we update unshackle? With devine it used to be pip install devine --upgrade but as unshackle doesn't use pip we can't do that.
-
what do I put in my yaml to make the configuration load from
C:\Users\xxxxxx\AppData\Roaming\uv\tools\unshackle \Lib\site-packag
es\unshackle\unshackle.yaml -
-
I've had a thought. You've been concentrating on getting unshackle installed but where are your environment dependencies? I have all mine in a special folder which I have referenced as PATHs within my Windows Environment Variables. Another option would be to have them within your unshackle folder. I am talking about the likes of ffmpeg, ffprobe, MKVToolNix (mkvmerge, mkvpropedit), aria2c, N_m3u8DL-RE, shaka-packager (renamed to packager-win-x64), ccextractor.
Try runningCode:uv run unshackle env check
-
-
Environment Dependencies
┏━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━ ━━┳━━━━━━━━━━━━━━━━━━━━━━┓
┃ Category ┃ Tool ┃ Status ┃ Req ┃ Purpose ┃
┡━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━ ━━╇━━━━━━━━━━━━━━━━━━━━━━┩
│ Core │ FFmpeg │ ✓ │ Y │ Media processing │
│ │ FFprobe │ ✓ │ Y │ Media analysis │
│ │ MKVToolNix │ ✓ │ Y │ MKV muxing │
│ │ mkvpropedit │ ✓ │ Y │ MKV metadata │
│ DRM │ shaka-packager │ ✓ │ Y │ DRM decryption │
│ │ mp4decrypt │ ✓ │ - │ DRM decryption │
│ HDR │ dovi_tool │ ✗ │ - │ Dolby Vision │
│ │ HDR10Plus_tool │ ✗ │ - │ HDR10+ metadata │
│ Download │ aria2c │ ✓ │ - │ Multi-thread DL │
│ │ N_m3u8DL-RE │ ✓ │ - │ HLS/DASH/ISM │
│ Subtitle │ SubtitleEdit │ ✗ │ - │ Sub conversion │
│ │ CCExtractor │ ✓ │ - │ CC extraction │
│ Player │ FFplay │ ✓ │ - │ Simple player │
│ │ MPV │ ✗ │ - │ Advanced player │
│ Network │ HolaProxy │ ✗ │ - │ Proxy service │
│ │ Caddy │ ✗ │ - │ Web server │
└────────────┴──────────────────┴────────────┴──── ──┴──────────────────────┘
Total: 10/16 All required tools installed ✓
Similar Threads
-
Devine - Modular Movie, TV, and Music Archival Software
By billybanana in forum Video Streaming DownloadingReplies: 1817Last Post: 16th Aug 2025, 21:39 -
Bitrate confusion: HD vs. DV archival
By taigi in forum Capturing and VCRReplies: 3Last Post: 9th Nov 2024, 03:38 -
How do I completely remove the music and sound effects from a movie?
By cns00 in forum EditingReplies: 1Last Post: 15th Jan 2024, 12:11 -
Which software can remove music from show but keep character dialogue?
By Mohamed61020 in forum AudioReplies: 6Last Post: 2nd Jul 2023, 21:32 -
Software for simple music videos?
By dewiclements in forum Software PlayingReplies: 3Last Post: 26th Jul 2022, 01:21