Skip to content

Conversation

@TPD94
Copy link
Contributor

@TPD94 TPD94 commented Sep 30, 2025

No description provided.

@vinefeeder
Copy link

You'll need to update pyproject.toml with the mypy import

@TPD94
Copy link
Contributor Author

TPD94 commented Sep 30, 2025

You'll need to update pyproject.toml with the mypy import

Already exists

"mypy>=1.9.0,<2",

@Sp5rky
Copy link
Contributor

Sp5rky commented Sep 30, 2025

I booted up my Windows 11 VM, put the portable EXE for subtitleedit in the /binaries folder and it detects subtitleedit without issues. (with no modifications of the code)

image

Thinking about it further you may have installed unshackle as uv tools which doesn't exist in the same place would recommend doing uv run unshackle env info and see what paths its expecting your code, if you run with just unshackle it's installed as a tool which has its files in a different path.

@vinefeeder
Copy link

You'll need to update pyproject.toml with the mypy import

Already exists

"mypy>=1.9.0,<2",

This line in binaries.py
from mypy.types import names
will cause an error. The dependency you list is in a dependency-group labelled dev. For normal users, (non dev), uv will not install it.

@TPD94
Copy link
Contributor Author

TPD94 commented Oct 6, 2025

I booted up my Windows 11 VM, put the portable EXE for subtitleedit in the /binaries folder and it detects subtitleedit without issues. (with no modifications of the code)
image

Thinking about it further you may have installed unshackle as uv tools which doesn't exist in the same place would recommend doing uv run unshackle env info and see what paths its expecting your code, if you run with just unshackle it's installed as a tool which has its files in a different path.

Still would like to suggest this PR as there are exe's that have multiple files besides the binary (examples attached). After renaming them to what binaries.py searches for -- it still works correctly and reduces clutter or shared dynamic link libraries etc
binaries
env_check
mpv_clutter
se_clutter

@Sp5rky
Copy link
Contributor

Sp5rky commented Oct 9, 2025

Can you make an adjustment to support both root binaries folder and the sub folder layout, additionally will need to remove the .gitignore changes and I'll be happy to merge this.

TPD94 and others added 4 commits October 18, 2025 21:06
Refactor code to search for binaries either in root of binary folder or in a subfolder named after the binary.
@TPD94
Copy link
Contributor Author

TPD94 commented Oct 22, 2025

Can you make an adjustment to support both root binaries folder and the sub folder layout, additionally will need to remove the .gitignore changes and I'll be happy to merge this.

Updated in latest commit e04399f

Also added an instance check choice for playready in 087df59 that fixed issues like so

     [PlayReady]: [1018/210812:ERROR:mp4_media_parser.cc(271)] Could not
                 find 'moov' box in file 'C:\Users\TPD94\Documents\Git\unsh
                 ackle\temp\Audio_8f8642f6.mp4_segments\segments\000.mp4a'
                 [1018/210812:ERROR:mp4_media_parser.cc(748)] Failure while
                 processing: moov_.get()
                 [1018/210812:ERROR:packager_main.cc(554)] Packaging Error:
                 8 (PARSER_FAILURE): Cannot parse media file C:\Users\TPD94
                 \Documents\Git\unshackle\temp\Audio_8f8642f6.mp4_segments\
                 segments\000.mp4a

as it was trying to decrypt each part of audio instead of decrypting the merged file in which the moov atom is contained.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants