Commit Graph

1072 Commits

Author SHA1 Message Date
4b451aa7a6 chore: update project structure and workflows
Some checks failed
Build_Subgen_Dockerfile_CPU / docker (push) Failing after 20s
Build_Subgen_Dockerfile_GPU / docker (push) Has been cancelled
- Update .gitignore for new backend structure
- Update GitHub workflows for transcriptarr rename
- Update launcher.py to use new module name
2026-01-11 21:24:11 +01:00
529af217e9 docs: add comprehensive documentation and test suite
- Add CLAUDE.md with project architecture and operation modes
- Add backend/README.md with setup and usage instructions
- Add test_backend.py with automated tests for config, database, and queue
- Update requirements.txt with optional dependencies structure
- Update .env.example with all configuration options
2026-01-11 21:23:58 +01:00
7959210724 feat: add centralized configuration system with Pydantic
- Add backend/config.py with Pydantic settings validation
- Support for standalone, provider, and hybrid operation modes
- Multi-database backend configuration (SQLite/PostgreSQL/MariaDB)
- Environment variable validation with helpful error messages
- Worker and Whisper model configuration
2026-01-11 21:23:45 +01:00
McCloudS
ad0bdba03d Fix double task_done in ASR/detect-language handlers (#262)
All checks were successful
Update_CalVer_Amend / docker (push) Successful in 24s
2026-01-10 22:59:03 +00:00
McCloudS
11cca018ae Check model existence before unloading
Add a check to ensure model exists before unloading.
2026-01-07 22:17:19 +00:00
McCloudS
948d44ca66 Remove unused import statement for cutil
Removed unused import of cutil.
2026-01-07 21:33:27 +00:00
McCloudS
809f1a055d Import cutil and ctypes for memory optimization
Added ctypes and cutil imports for memory management.
2026-01-07 19:13:28 +00:00
McCloudS
594b78b84f Refactor transcription worker error handling
Might fix CPU memory leak.
2026-01-07 18:39:30 +00:00
McCloudS
7373f9a87b Change runner to self-hosted for GPU build 2025-12-13 14:15:57 -05:00
McCloudS
1f428eabf9 Update GitHub Actions workflow for GPU build 2025-12-13 12:58:21 -05:00
McCloudS
a0778e7220 Remove local Docker artifacts cleanup step
Removed cleanup step for local Docker artifacts after job completion.
2025-12-13 12:46:14 -05:00
McCloudS
6e99826c9e Downgrade CUDA base image version in Dockerfile
Not worth the other broken stuff to save ~1gb of space for now...
2025-12-13 12:34:08 -05:00
McCloudS
8bbf9eff6f Remove disk cleanup step from build_GPU workflow
Removed pre-job step for cleaning up disk space.
2025-12-13 12:12:20 -05:00
McCloudS
512a8a473b Update CUDA base image version in Dockerfile 2025-12-13 12:09:10 -05:00
McCloudS
771ec16597 Update GitHub Actions workflow for GPU build 2025-12-13 12:06:50 -05:00
McCloudS
c0cc23b5a9 Enhance GPU build workflow with disk cleanup steps
Added pre-job and post-job steps for disk cleanup in the GPU build workflow.
2025-12-13 12:00:42 -05:00
McCloudS
44acb13e2b Update CUDA base image version in Dockerfile
Trying to shrink the image...
2025-12-13 11:48:46 -05:00
McCloudS
9e5d9229e9 Force /batch to require a string 2025-11-23 20:36:59 +00:00
McCloudS
dc0cb72b3d Add timestamps to regular logging. 2025-09-17 14:11:06 +00:00
McCloudS
34df085cfe Add curl to image 2025-08-30 09:19:38 -04:00
McCloudS
12a5e1803b Add curl to image 2025-08-30 09:19:27 -04:00
McCloudS
fc3b7b0bd4 Update subgen.py 2025-08-28 23:52:45 +00:00
McCloudS
8c598007e5 Clarify if we're transcribing or translating from Bazarr 2025-08-28 23:36:16 +00:00
McCloudS
298dcd74a9 Standardize environment variable naming with backwards compatibility (#229)
- Add get_env_with_fallback() helper function for seamless migration
- Implement consistent UPPERCASE_WITH_UNDERSCORES naming convention
- Group variables by logical categories (PLEX_*, JELLYFIN_*, PROCESS_*, SKIP_*, etc.)
- Maintain full backwards compatibility with legacy variable names
- Add comprehensive documentation explaining new naming convention

New standardized names with backwards compatibility:
- PLEX_TOKEN (was PLEXTOKEN)
- PLEX_SERVER (was PLEXSERVER)
- JELLYFIN_TOKEN (was JELLYFINTOKEN)
- JELLYFIN_SERVER (was JELLYFINSERVER)
- PROCESS_ADDED_MEDIA (was PROCADDEDMEDIA)
- PROCESS_MEDIA_ON_PLAY (was PROCMEDIAONPLAY)
- SUBTITLE_LANGUAGE_NAME (was NAMESUBLANG)
- WEBHOOK_PORT (was WEBHOOKPORT)
- SKIP_IF_EXTERNAL_SUBTITLES_EXIST (was SKIPIFEXTERNALSUB)
- SKIP_IF_TARGET_SUBTITLES_EXIST (was SKIP_IF_TO_TRANSCRIBE_SUB_ALREADY_EXIST)
- SKIP_IF_INTERNAL_SUBTITLES_LANGUAGE (was SKIPIFINTERNALSUBLANG)
- SKIP_SUBTITLE_LANGUAGES (was SKIP_LANG_CODES)
- SKIP_IF_AUDIO_LANGUAGES (was SKIP_IF_AUDIO_TRACK_IS)
- SKIP_ONLY_SUBGEN_SUBTITLES (was ONLY_SKIP_IF_SUBGEN_SUBTITLE)
- SKIP_IF_NO_LANGUAGE_BUT_SUBTITLES_EXIST (was SKIP_IF_LANGUAGE_IS_NOT_SET_BUT_SUBTITLES_EXIST)

Migration is seamless - both old and new names work simultaneously.
New names take precedence when both are set.

Tested: All mappings, type conversions, precedence logic, and syntax validation.
2025-08-27 00:48:04 +00:00
McCloudS
9879e2d4b9 Prepare for pull 229 changes in the readme 2025-08-26 20:47:36 -04:00
McCloudS
405476ca87 Fix subtitle checking logic to properly separate internal vs external subtitle detection (#228)
- Line 1139: Change has_subtitle_language() to has_subtitle_language_in_file() for SKIPIFINTERNALSUBLANG check
- Line 1148: Change has_subtitle_language() to has_subtitle_of_language_in_folder() for SKIPIFEXTERNALSUB check

This fixes the logic conflict where:
- SKIPIFINTERNALSUBLANG should only check for internal/embedded subtitles
- SKIPIFEXTERNALSUB should only check for external subtitle files

Previously both were using has_subtitle_language() which checks both internal AND external,
causing incorrect skip behavior when users wanted to generate subtitles despite having
internal subtitles but skip when external subtitle files exist.
2025-08-22 03:21:11 +00:00
McCloudS
94cc7c5005 fix naming subtitles again 2025-08-12 12:03:59 +00:00
McCloudS
51ca07ddf4 Update README.md 2025-08-12 07:59:47 -04:00
McCloudS
41b843965d Fix subtitle naming for distil 3.5
Original function split on '.' which broken naming with models with decimals.
2025-08-12 11:58:30 +00:00
v3DJG6GL
67f0bf1404 fix "SUBGEN_KWARGS" example (#209)
I think the example is wrong here. The values should be passed as boolean and float instead of strings.
Not sure but I suppose this issue was caused by this. I at least got the exact same error message: https://github.com/McCloudS/subgen/issues/114
2025-05-14 19:06:20 -06:00
McCloudS
04026c3b64 Revert Logging Change 2025-05-14 15:59:22 +00:00
McCloudS
c80b5db14d Fix terrible hierarchy of environment/external variables
DEBUG should be respected now.
2025-05-14 09:57:43 -06:00
McCloudS
d9febbe991 Fix Uvicorn logger overwriting Subgen logging 2025-05-14 14:47:44 +00:00
McCloudS
2b0f0fc478 Fix calling an empty environment variable 2025-05-11 01:31:49 +00:00
McCloudS
5e209bfc0c Add "Known Issues" 2025-05-03 10:08:58 -06:00
McCloudS
b73c32aa71 Update README.md 2025-05-02 09:40:07 -06:00
McCloudS
4b2407b370 Update README.md 2025-05-02 09:33:09 -06:00
McCloudS
89e0556930 Add option to remove subgen and model name from subtitle filename 2025-05-02 15:32:01 +00:00
McCloudS
49d85bf939 Update Dockerfile 2025-03-28 03:04:45 -06:00
McCloudS
ec2b636ee0 Add tzdata for TZ env variable 2025-03-27 19:37:38 -06:00
McCloudS
9e35780e7b Add tzdata for TZ env variable 2025-03-27 19:37:22 -06:00
McCloudS
3ed6da7f4c add video_file for detect-language if Bazarr provides it. 2025-03-05 02:36:44 +00:00
McCloudS
d183ad574a Fix wrong languagecode being used 2025-03-02 19:41:17 +00:00
McCloudS
cc2868915f Add queue debug logging. 2025-03-02 02:26:02 +00:00
McCloudS
3cba9352a8 reorganize detect-language logic 2025-03-02 00:53:54 +00:00
McCloudS
a9a68c2397 Add note about python version 2025-03-01 14:34:15 -07:00
McCloudS
31e91eb083 remove git/building from source 2025-03-01 14:15:02 -07:00
McCloudS
8ae39b6fc0 remove git from instructions 2025-03-01 14:14:42 -07:00
McCloudS
6a0ed4b107 Update subgen.py 2025-02-20 13:00:16 -07:00
McCloudS
cfc7890137 Fixed misnamed DETECT_LANGUAGE_OFFSET 2025-02-20 12:53:43 -07:00