Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
506 commits
Select commit Hold shift + click to select a range
e42b9cf
feat: refactor mp4 tagger to use BoundedIO
Totto16 Jun 11, 2026
df61ee9
feat: refactor spans
Totto16 Jun 11, 2026
7ba57b8
fix: fix one avi test
Totto16 Jun 11, 2026
a423910
fix: fix remaining avi tests
Totto16 Jun 11, 2026
a6d2a76
feat: fix mp4 tagger
Totto16 Jun 12, 2026
e45a24f
fix: fix io spans for mp4 box parsing
Totto16 Jun 12, 2026
97258b7
fix: fix small test error in mp4 boxes
Totto16 Jun 12, 2026
becfd91
fix: fix exception handling in BoundedIO __exit__
Totto16 Jun 12, 2026
d94dcc9
fix: some small fixes
Totto16 Jun 12, 2026
b5235c7
fix: fix small error in exception classes used
Totto16 Jun 12, 2026
461a468
fix: fix some ruff errors
Totto16 Jun 12, 2026
f0d2a55
fix: some small fix
Totto16 Jun 12, 2026
312b4da
feat: some progress towards metadata writing with the custom mp4 tagger
Totto16 Jun 12, 2026
0d784d2
feat: implement the mp4 meta box reuse, so that the data can be writt…
Totto16 Jun 12, 2026
4ede529
fix: correctly overwrite the metadata in the custom mp4 tagger (not u…
Totto16 Jun 12, 2026
38b3ec9
feat: implement custom toplevel meta metadata reading
Totto16 Jun 12, 2026
eb9ab19
fix: fix new overwrite tags tests for mutagen
Totto16 Jun 13, 2026
958a3cc
fix: fix a few mp4 tagger errors
Totto16 Jun 13, 2026
6917e61
fix: fix some uuid related things
Totto16 Jun 13, 2026
0e1f137
fix: fix some more mp4 tagger meta toplevel metadata realted errors
Totto16 Jun 13, 2026
1f54d40
fix: fix a big mp4 tagger logic error
Totto16 Jun 13, 2026
2c28570
fix: fix the mp4 test for the custom tagger
Totto16 Jun 13, 2026
72b9de1
feat: add ffprobe tests for the custom mp4 tagger
Totto16 Jun 13, 2026
829814d
feat: add basic tagger subcommand as a utility
Totto16 Jun 13, 2026
87417b7
fix: refactor the videotagger
Totto16 Jun 13, 2026
5d684ce
fix: fix some ruff errors
Totto16 Jun 13, 2026
edfa0d3
feat: more tagger progress
Totto16 Jun 13, 2026
21545dd
feat: make each command invocation smaller, by not importing unneces…
Totto16 Jun 13, 2026
52641fd
feat: reduce import time even more
Totto16 Jun 13, 2026
5b7e3f1
feat: add tagger write metadata support
Totto16 Jun 14, 2026
63f4d19
fix: some small tagger fixes
Totto16 Jun 15, 2026
05d7afd
feat: add backup feature to custom mp4 formatter
Totto16 Jun 15, 2026
d669428
feat: start of refactoring the filter system
Totto16 Jun 15, 2026
ba2d605
feat: implement basics for the filter system
Totto16 Jun 15, 2026
d3e1d26
fix: fix some small errors
Totto16 Jun 15, 2026
ec4d5c0
feat: add execute filters
Totto16 Jun 15, 2026
3de64fb
feat: implement the filter help command
Totto16 Jun 15, 2026
e776b87
fix: fix apischema serialization typing error
Totto16 Jun 15, 2026
ed97a11
fix: use type argument for parsed file paths
Totto16 Jun 15, 2026
0786a04
feat: print message on backup restore in mp4 tagger
Totto16 Jun 15, 2026
346f837
feat: refactor the validate_multiple function for validators
Totto16 Jun 15, 2026
ca7aca7
fix: fix small validator error
Totto16 Jun 15, 2026
a522ff1
WIP: add validator filters
Totto16 Jun 16, 2026
1d25e06
fix: implement the validator filter
Totto16 Jun 16, 2026
fde5af5
feat: better implement the help system in filters, make it, so that …
Totto16 Jun 16, 2026
23c1810
fix: fix the EmptyFilter situation:
Totto16 Jun 16, 2026
8a5d4d0
fix: fix small print error
Totto16 Jun 16, 2026
6d28a2d
feat: add avi tagger
Totto16 Jun 17, 2026
ca76085
feat: refactor video taggers
Totto16 Jun 17, 2026
d290598
fix: don't restore backups, when the file was just opened for reading
Totto16 Jun 17, 2026
0596e34
feat: add test implementation to patch avi size
Totto16 Jun 17, 2026
f25735b
wip: some more avi tagger metadata progress
Totto16 Jun 17, 2026
0f27589
fix: fix simple avi size error
Totto16 Jun 17, 2026
03517d2
wip: some more avi metadata progress
Totto16 Jun 17, 2026
1ca3c91
fix: rename all Mp4 names to MP4
Totto16 Jun 18, 2026
42debb1
feat: some avi tagger metadata progress
Totto16 Jun 18, 2026
d4722f0
feat: more avi progress
Totto16 Jun 18, 2026
f8c1260
don't use behaviour, use behavior
Totto16 Jun 18, 2026
b730af3
feat: some small improvements
Totto16 Jun 18, 2026
439e7c9
feat: some more avi tagger progress
Totto16 Jun 18, 2026
71ebf73
feat: read metadata from avi INFO list
Totto16 Jun 18, 2026
a1e568f
feat: more avi tagger progress
Totto16 Jun 18, 2026
a96db5b
fix: fix some generic errors
Totto16 Jun 18, 2026
de79e33
fix: correctly read the the info chunk in the avi file, if it is present
Totto16 Jun 18, 2026
d5b7949
feat: fix some alignment error in the writing of custom avi chunks
Totto16 Jun 18, 2026
ed5f484
fix: fix avi tags getting
Totto16 Jun 18, 2026
c6d5bef
fix: some generic fixes
Totto16 Jun 18, 2026
4eefa81
fix: fix some avi tags write behavior
Totto16 Jun 18, 2026
235764b
fix: remove comment from ffmpeg json string INFo sub chunk
Totto16 Jun 18, 2026
aec7996
fix: add unrecognized arguments form the impl value to the result of …
Totto16 Jun 18, 2026
232c426
feat: suppress the vldf chunk in the unrecognized metadata read results
Totto16 Jun 18, 2026
3b697fb
fix: add some chunk / box size checks for not overflowing the parent
Totto16 Jun 18, 2026
0906aa7
fix: fix minor avi things
Totto16 Jun 18, 2026
e57eac7
fix: fix avi tagger writing
Totto16 Jun 18, 2026
23f8f1e
feat: add additional checks for the mp4 tests
Totto16 Jun 18, 2026
3998e05
feat: add additional checks for the avi tests
Totto16 Jun 18, 2026
02e0b2d
feat: add language to the tagger writer
Totto16 Jun 18, 2026
acacc07
feat: add tags validator
Totto16 Jun 19, 2026
549cacc
wip: implement more special filter
Totto16 Jun 19, 2026
1812a9f
feat: implement special filters in a better way
Totto16 Jun 19, 2026
9a5441d
fix: don't catch baseException,a s then KeyboardInterrupt is caught a…
Totto16 Jun 19, 2026
ff4b816
feat: add options to filters
Totto16 Jun 19, 2026
b53ebb5
wip: add manager to the validators
Totto16 Jun 19, 2026
655acbd
fix: move ffmpeg helper util into main file, so that only one cli fil…
Totto16 Jun 19, 2026
21e4915
fix: refactor the ffmpeg_helper functions
Totto16 Jun 19, 2026
b2415ae
feat: first draft of custom decorator
Totto16 Jun 19, 2026
08c6ae5
feat: refactor some slots related things
Totto16 Jun 19, 2026
b53393f
fix: fix some decorator related stuff
Totto16 Jun 19, 2026
c059ada
feat: add documented error in decorators
Totto16 Jun 19, 2026
865fdf6
fix: fix the decorator super error
Totto16 Jun 19, 2026
d69de8f
fix: more dataclass like fixes
Totto16 Jun 19, 2026
dbd66fc
feat: type the decorator tests correctly
Totto16 Jun 19, 2026
04e2b8f
feat: mor test cases for the decorator
Totto16 Jun 19, 2026
9510799
feat: annotate nearly all classes with @decorate_class(slots=True)
Totto16 Jun 19, 2026
ed93f8b
fix: fix some decorator errors
Totto16 Jun 19, 2026
0065b06
feat: add some constraints on which types the decorate_class can be c…
Totto16 Jun 19, 2026
f540ec2
feat: use slots in all dataclasses
Totto16 Jun 19, 2026
adb626f
feat: add TypeDict decorator, that makes it possible to merge two cl…
Totto16 Jun 20, 2026
2bc3d2f
feat: remove typedict_variant
Totto16 Jun 20, 2026
3ab0bab
fix: fix some small issues
Totto16 Jun 21, 2026
1e42ec3
fix: fix some more errors
Totto16 Jun 21, 2026
8f104fd
feat: make translator fixed for tests
Totto16 Jun 21, 2026
6e67b17
feat: add more tests
Totto16 Jun 21, 2026
0c86251
fix: fix tests
Totto16 Jun 22, 2026
5cb6731
fix: fix some dependency issues in the different graphics categories
Totto16 Jun 20, 2026
1d38edc
feat: add wip target file, so that the in the future, we can expand this
Totto16 Jun 23, 2026
8f34623
fix: fix schema generation
Totto16 Jun 23, 2026
bfcc966
feat: add schema test
Totto16 Jun 23, 2026
20f2dde
fix: fix small typo error
Totto16 Jun 23, 2026
c7068fa
feat: make global status bar not part of the scanner callback
Totto16 Jun 23, 2026
b3f043e
feat: make app_status bar global and correctly set and update configs
Totto16 Jun 23, 2026
982479b
feat: add more mypy options
Totto16 Jun 23, 2026
c0488d3
feat: also allow writes for the tags validator
Totto16 Jun 23, 2026
7a09dfa
feat: refactor the status bar interface
Totto16 Jun 24, 2026
83eb498
feat: add checked append to validator states
Totto16 Jun 24, 2026
0fa21a8
fix: fix small validator error
Totto16 Jun 24, 2026
4cce0a0
feat: add better status bar to multiple validations
Totto16 Jun 24, 2026
1c737fd
feat: factor the backup of the tagged file into a reusable class
Totto16 Jun 24, 2026
2b4944a
feat: add write_tags_safe function, so that the tags get automaticall…
Totto16 Jun 24, 2026
49fb765
feat: improve the write_tags_safe function
Totto16 Jun 24, 2026
f769396
feat: add possibility, to read the language
Totto16 Jun 24, 2026
33ed2db
feat: also add the read_language call to the tagger helper cli
Totto16 Jun 24, 2026
3fdeaab
feat: add inspect command for tagger
Totto16 Jun 24, 2026
c3f367e
fix: fix some validator related things
Totto16 Jun 24, 2026
1215250
feat: update translation
Totto16 Jun 24, 2026
8ae8144
feat: implement avi chunk iteration for tagger inspect
Totto16 Jun 24, 2026
ac40437
feat: also add mp4 iterate functionality
Totto16 Jun 24, 2026
373ee26
feat: filter auto data chunks in avi
Totto16 Jun 24, 2026
9f23091
feat: add better element type for inspecting video files
Totto16 Jun 24, 2026
765f11c
feat: add output format for inspect calls
Totto16 Jun 24, 2026
5da901a
feat: add video file specs
Totto16 Jun 24, 2026
6ed6812
fix: change default inspect output format
Totto16 Jun 24, 2026
4b1bc5c
fix: fix fix chapter
Totto16 Jun 24, 2026
7ef9bc6
feat: add exception suppress to __del__ functions
Totto16 Jun 24, 2026
5e82292
fix: mp4 tagger, fix box parsing
Totto16 Jun 24, 2026
bf6dc5e
feat: add new exception class for apple itunes related errors
Totto16 Jun 24, 2026
566b528
feat: allow apple itunes implict values, if environment variable is set
Totto16 Jun 24, 2026
8011a04
feat: also accept valid old quicktime files in the mp4 parsers
Totto16 Jun 24, 2026
78ba98b
fix: small typo fix
Totto16 Jun 24, 2026
632f57d
fic: remove temporary migration with env for tags
Totto16 Jun 24, 2026
99224d1
feat: add mp4 decode options
Totto16 Jun 24, 2026
99b85f9
feat: add more mp4 decode options
Totto16 Jun 24, 2026
3ad4e30
fix: rename Mp4 to MP4
Totto16 Jun 24, 2026
6b95490
fix: ignore data chunk in avi file, if only checking if the file i su…
Totto16 Jun 24, 2026
c8d9c69
feat: provide inspect level for inspect
Totto16 Jun 24, 2026
80e2aad
feat: add better json inspect printer
Totto16 Jun 24, 2026
910b131
feat: first draft of path filters
Totto16 Jun 24, 2026
4f0faca
feat: implement content_filter for the validator multiple usage
Totto16 Jun 25, 2026
fe34f96
feat: correc5tly implement filters
Totto16 Jun 25, 2026
517373f
feat: some small fixes
Totto16 Jun 25, 2026
9383a80
feat: add mkv specs
Totto16 Jun 25, 2026
6975d8a
feat: first mkv draft
Totto16 Jun 25, 2026
b1a06f7
fix: add TODO
Totto16 Jun 25, 2026
01380d1
feat: add stringification for video metadata
Totto16 Jun 25, 2026
c5fde5a
feat: add tests for bititerator
Totto16 Jun 25, 2026
a476e0d
feat: test more mkv related things
Totto16 Jun 25, 2026
426f96b
feat: test varint parsing
Totto16 Jun 25, 2026
bd596f5
feat: test more ebml varint stuff
Totto16 Jun 26, 2026
d37d0ec
feat: more stuff
Totto16 Jun 26, 2026
34c9372
fix: small avi fix
Totto16 Jun 26, 2026
38e0190
feat: more mkv progress
Totto16 Jun 26, 2026
846d203
fea: more mkv progress
Totto16 Jun 26, 2026
48f0b7b
feat: more ebml progress
Totto16 Jun 26, 2026
25627bd
more ebml progress
Totto16 Jun 26, 2026
020bdf2
feat: more ebml progress, add float element
Totto16 Jun 26, 2026
17d720f
feat: more ebml progress, add string element
Totto16 Jun 26, 2026
66312e3
feat: more ebml progress, add utf-8 element
Totto16 Jun 26, 2026
3bb73f7
feat: more ebml progress, add date element
Totto16 Jun 26, 2026
9d43891
feat: more ebml progress, add master element
Totto16 Jun 26, 2026
863de24
feat: more ebml progress, add binary element
Totto16 Jun 26, 2026
ce3692c
fix: remove unnecessary special functions for mp4 special box size
Totto16 Jun 26, 2026
7223d23
feat: improve the ffprobe duration handling
Totto16 Jun 28, 2026
2c4665c
fix: fix Timedelta Compat serialization / deserialization
Totto16 Jun 28, 2026
56a90cf
feat: more mkv progress
Totto16 Jun 28, 2026
bcb3618
feat: more mkv tagger progress
Totto16 Jun 30, 2026
39f9587
feat: add mkv / ebml schemas
Totto16 Jun 30, 2026
57da7aa
fix: use correct xml spec for ebml
Totto16 Jun 30, 2026
c4d1cca
feat: more ebml parse progress
Totto16 Jun 30, 2026
5c2e52e
feat: more ebml / mkv progress
Totto16 Jun 30, 2026
ecae6eb
feat: more mkv / ebml progress
Totto16 Jun 30, 2026
b28d159
feat: more mkv ebml schema parse progress
Totto16 Jul 1, 2026
f43be85
feat: add range parser for ebml schema parser
Totto16 Jul 1, 2026
99e8def
feat: dix some small things in the ebml schema parser
Totto16 Jul 1, 2026
c6f3fd2
feat: add better eq support for the OkResult and ErrResult test helper
Totto16 Jul 1, 2026
1abc253
feat: also support FancyEq on the right side of the comparison
Totto16 Jul 1, 2026
0de7036
feat: small refactor for ebml schema ranges
Totto16 Jul 1, 2026
f3803fb
feat: add more tests for ebml schema range
Totto16 Jul 1, 2026
787414f
feat: refactor the ranges, add explicit Exclusive or Inclusive suppor…
Totto16 Jul 1, 2026
14becac
feat: try to parse the matroska ebml schema
Totto16 Jul 1, 2026
a7deb4e
feat: correctly handle floats in ebml schema
Totto16 Jul 1, 2026
3f243f6
feat: allow version constraints in ebml schema
Totto16 Jul 1, 2026
a76c06a
fix: fix mkv schema, the minver has to be 0 too, if the maxver is 0
Totto16 Jul 1, 2026
f81ab05
feat: fix order of checks in ebml schema range parser
Totto16 Jul 1, 2026
152d7b3
feat: add all needed xml elements for the mkv spec to be parsed succe…
Totto16 Jul 1, 2026
60f26d2
feat: add mkv tagger stub in tagger
Totto16 Jul 1, 2026
674cb51
feat: fix some ruff errors
Totto16 Jul 1, 2026
858f4de
feat: implement more mkv things
Totto16 Jul 2, 2026
5a0e447
feat: more ebml / mkv tagger progress
Totto16 Jul 2, 2026
692d6f5
feat: more ebml progress
Totto16 Jul 2, 2026
d84c96d
feat: more general tagger progress
Totto16 Jul 2, 2026
b6e6d19
feat: add schema parse test
Totto16 Jul 2, 2026
a3a7067
fix: fix some parser errors
Totto16 Jul 2, 2026
ac6bef2
feat: add ebml schema tests
Totto16 Jul 2, 2026
51bf05c
feat: make mkv spec check pass the test
Totto16 Jul 2, 2026
2aa5451
feat: wip add trakt extension
Totto16 Jul 2, 2026
805e56a
feat: some general improvements
Totto16 Jul 2, 2026
d6842d3
feat: mark config with version
Totto16 Jul 2, 2026
0d5ef21
feat: validate meta schema, on generation
Totto16 Jul 2, 2026
cfe0373
feat: also vaöidte config data schema on config validation
Totto16 Jul 3, 2026
03af7d3
feat: add logo (primarily for gui)
Totto16 Jul 3, 2026
292c29e
add trakt TODO
Totto16 Jul 3, 2026
9112e07
feat: refactor naming for iter function in mp4 tagger
Totto16 Jul 3, 2026
3317d58
WIP
Totto16 Jul 3, 2026
2516957
feat: implement inspect for the mkv tagger
Totto16 Jul 3, 2026
afd70be
fix: fix some test realted things
Totto16 Jul 3, 2026
53189a2
feat: remove wrong matroska video- even if it says .mkv and the serve…
Totto16 Jul 3, 2026
2937d08
fix: fix ebml element id parsing
Totto16 Jul 3, 2026
32773c4
fix: fix small error in EBMLElementIDParsed initialization
Totto16 Jul 3, 2026
0adaa7e
fix: fix some small mkv errors
Totto16 Jul 3, 2026
288ce7e
feat: fix some small mkv things
Totto16 Jul 3, 2026
b954877
feat: add crc check for ebml elements
Totto16 Jul 4, 2026
ea710eb
feat: fix CRC validation for mkv
Totto16 Jul 4, 2026
52f9172
feat: add skip printer option for inspect call
Totto16 Jul 4, 2026
52bc193
feat: also inspect the header and the body of the file in the mkv tagger
Totto16 Jul 4, 2026
38eacb5
fix: add small note
Totto16 Jul 4, 2026
4337d51
feat: add occurrences checker for ebml elements
Totto16 Jul 5, 2026
cc9a702
feat: refactor Optional[str] usage
Totto16 Jul 5, 2026
dbbb1c6
feat: fix default value for Err and OKResult
Totto16 Jul 5, 2026
ad2f71f
WIP: improve dict has
Totto16 Jul 6, 2026
5893540
fix: fix fancy eq implementation
Totto16 Jul 7, 2026
546d435
fix: fix dict_has and dict_at calls
Totto16 Jul 7, 2026
cad0637
feat: resolve circular dependency
Totto16 Jul 8, 2026
7a950d3
feat: fix some small errors in the tests
Totto16 Jul 8, 2026
cf3cd4a
fix: fix more tests
Totto16 Jul 8, 2026
e4d8339
fix: fix some ebml mkv tests
Totto16 Jul 8, 2026
0115d0e
feat: add more mkv tests
Totto16 Jul 8, 2026
55a0b6d
chore: add some todos
Totto16 Jul 8, 2026
b39f93c
fix: fix CI
Totto16 Jul 8, 2026
72a8599
fix: fix develop packages in CI
Totto16 Jul 8, 2026
60a686b
fix: try to fix CI again
Totto16 Jul 8, 2026
4d3d20c
fix: small test fix
Totto16 Jul 8, 2026
37b06cf
feat: stub out the mkv tagger context
Totto16 Jul 8, 2026
42ffb68
fix: improve hash function implementations
Totto16 Jul 8, 2026
ce1b292
feat: refactor some small unused things of the core EBMLElement class
Totto16 Jul 8, 2026
b43a03c
feat: implement mkv recursive elements testing
Totto16 Jul 8, 2026
ceeac6f
fix: fix some ruff related errors
Totto16 Jul 8, 2026
05e4a2e
feat: fix a few minor mkv test related things
Totto16 Jul 8, 2026
811b8ea
fix: fix edge case in chunk / box / element container / list / master…
Totto16 Jul 8, 2026
a79f5c1
WIP: make mkv element test succeed
Totto16 Jul 9, 2026
0505786
feat: fix complete mkv layout test
Totto16 Jul 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 5 additions & 9 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,7 @@ jobs:
apt-get install cmake --no-install-recommends -y
pip install pipenv -U --quiet
apt-get update
apt-get install python3-wxgtk4.0 libgtk-3-dev -y
pipenv run pip install -U -f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-24.04/ wxPython
pipenv install --dev
pipenv install --categories "packages dev-packages integrated" --verbose

- name: run lint
run: |
Expand All @@ -45,10 +43,9 @@ jobs:
- name: prepare environment
run: |
apt-get update
apt-get install python3-wxgtk4.0 libgtk-3-dev ffmpeg cmake --no-install-recommends -y
apt-get install ffmpeg cmake --no-install-recommends -y
pip install pipenv -U --quiet
pipenv run pip install -U -f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-24.04/ wxPython
pipenv install --dev
pipenv install --categories "packages dev-packages integrated" --verbose

- name: run tests
run: |
Expand All @@ -68,10 +65,9 @@ jobs:
- name: prepare environment
run: |
sudo apt-get update
sudo apt-get install libgtk-3-dev python3-setuptools python3-wxgtk4.0 python3.13 ffmpeg --no-install-recommends -y
sudo apt-get install python3-setuptools python3.13 ffmpeg --no-install-recommends -y
pip install pipenv -U --quiet
pipenv run pip install -U -f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-24.04/ wxPython
pipenv install --dev
pipenv install --categories "packages dev-packages integrated" --verbose

- name: run coverage report
run: |
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ __pycache__
model/
/src/tmp/
/data/
/*.json
/.vscode
/.coverage
/coverage.xml
/config.yaml
/config.lock
5 changes: 2 additions & 3 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ python-lint-job:
script:
- pip install pipenv -U --quiet
- apt-get update
- apt-get install python3-wxgtk4.0 libgtk-3-dev -y
- pipenv install --dev
- pipenv run mypy
- pipenv run ruff-ci gitlab
Expand All @@ -23,7 +22,7 @@ python-test-job:
script:
- pip install pipenv -U --quiet
- apt-get update
- apt-get install python3-wxgtk4.0 libgtk-3-dev ffmpeg -y
- apt-get install ffmpeg -y
- pipenv install --dev
- pipenv run test

Expand All @@ -45,7 +44,7 @@ sonarqube-check:
script:
# TODO:check if this is even debian / ubuntu or alpine and install ffprobe
- apt-get update
- apt-get install python3.11 --install-recommends python3-wxgtk4.0 libgtk-3-dev ffmpeg -y
- apt-get install python3.11 --install-recommends ffmpeg -y
- pipenv install --dev
- pipenv run coverage
- sonar-scanner
Expand Down
54 changes: 43 additions & 11 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,25 @@ verify_ssl = true
name = "pypi"

[[source]]
url = "https://download.pytorch.org/whl/cu130/"
url = "https://download.pytorch.org/whl/cu132/"
verify_ssl = true
name = "torch-nvidia"

[[source]]
url = "https://download.pytorch.org/whl/cu130/"
verify_ssl = true
name = "torch-nvidia-old"

[[source]]
url = "https://download.pytorch.org/whl/nightly/rocm7.2/"
verify_ssl = true
name = "torch-amd"

[[source]]
url = "https://download.pytorch.org/whl/cpu"
verify_ssl = true
name = "torch-cpu"


[packages]
#see: https://github.com/speechbrain/speechbrain/pull/2996
Expand All @@ -23,21 +33,43 @@ enlighten = "*"
psutil = "*"
apischema = "*"
pysoundfile = "*"
wxpython = {version = "*", find-links="https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-24.04/"}
themoviedb = "*"
sentencepiece = {git = "https://github.com/google/sentencepiece", subdirectory = "python", ref="13394e10a2e7b8a6912cf087681f77c96f9f6020"}
prompt-toolkit = "*"
questionary = "*"
colorlog = "*"
pyperclip = "*"
annotated-types = "*"
jsonschema = "*"

# fastapi for the backend, using standard feature / configuration
"fastapi[standard]" = "*"
"uvicorn[standard]" = "*"
websockets = "*"

## generic opencl
pyopencl = "*"
siphash24 = "*"

# video tag creation
mutagen = "*"
pymkv2 = "*"

# extensions
trakt = "*"

##no dedicated gpu
[integrated]
torchaudio = {version = "*", index="torch-cpu", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torchvision = {version = "*", index="torch-cpu", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torch = {version = "*", index="torch-cpu", markers = "sys_platform == 'linux' and python_version == '3.13'"}

speechbrain = {version = ">=1.1.0"}

##nvidia gpu
[nvidia]
nvidia-ml-py = "*"
torchaudio = {version = "*", index="torch-nvidia-old", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torchvision = {version = "*", index="torch-nvidia", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torch = {version = "*", index="torch-nvidia", markers = "sys_platform == 'linux' and python_version == '3.13'"}

Expand All @@ -46,10 +78,10 @@ speechbrain = {version = ">=1.1.0"}
##amd gpu
[amd]
amdsmi = "*"
torchvision = {version = "==0.27.0.dev20260427+rocm7.2", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torch = {version = "==2.13.0.dev20260426+rocm7.2", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torchaudio = {version = "==2.11.0.dev20260427+rocm7.2", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}
triton-rocm = {version = "==3.7.0+git88b227e2", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torchvision = {version = "==0.29.0.dev20260619+rocm7.2", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torch = {version = "==2.14.0.dev20260618+rocm7.2", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}
torchaudio = {version = "==2.11.0.dev20260619+rocm7.2", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}
triton-rocm = {version = "==3.7.1+git5d6048aa", index="torch-amd", markers = "sys_platform == 'linux' and python_version == '3.13'"}

speechbrain = {version = ">=1.1.0"}

Expand All @@ -69,19 +101,19 @@ pytest-subtests = "*"
types-requests = "*"
requests = "*"
chardet = "*"
types-wxpython = "*"
types-pyyaml = "*"
types-jsonschema = "*"

[scripts]
check = "python src/entry.py run"
lint = "bash -c 'pipenv run mypy && pipenv run ruff'"
mypy = "bash -c 'pipenv run mypy-source && pipenv run mypy-helpers'"
mypy-source = "mypy src/ tests/"
mypy-helpers = "bash -c 'cd ffmpeg_helper/ && mypy . --explicit-package-bases'"
ruff = "ruff check src/ tests/ ffmpeg_helper/"
mypy = "mypy src/ tests/"
ruff = "ruff check src/ tests/"
ruff-fix = "pipenv run ruff --fix"
schema = "python src/entry.py schema"
gui = "python src/entry.py gui"
tagger = "python src/entry.py tagger"
api = "python src/entry.py api"
test = "pytest tests/"
coverage = "bash -c 'coverage run -m pytest tests/ && coverage xml'"
extract_translation = "pygettext3 -d video_language_detect -o locales/video_language_detect.pot src/"
Expand Down
Loading
Loading