Commit Graph
11 Commits
Author SHA1 Message Date
tri 8c57c9ddb6 ci: build and test every PR, release on tags, and add AUR packages (#15)
CI / build (push) Successful in 5m11s
Release / release (push) Failing after 7m17s
Co-authored-by: Tri Vo Khac <git@trivk.dev>
2026-11-14 00:18:16 +07:00
tri bcfc2f3f6a feat(translate): translate a whole playlist so the next episodes are ready (#16)
Co-authored-by: Tri Vo Khac <git@trivk.dev>
2026-11-13 23:27:13 +07:00
tri ad50230829 feat(playlist): compact rows with clean titles and durations (#13)
Co-authored-by: Tri Vo Khac <git@trivk.dev>
2026-11-13 22:54:32 +07:00
tri 76b12d6632 feat(translate): keep translated subtitles next to the video so they load on reopen (#14)
Co-authored-by: Tri Vo Khac <git@trivk.dev>
2026-11-13 22:49:56 +07:00
tri b34a01a92f fix(mpv): auto-select subtitle and audio tracks on file open (#12)
Closes #7

mpv only turns on a subtitle that is flagged default or matches `slang`, so releases like VisionQuest (Russian dub by default, ru/ru/en subtitles, none flagged) open with subtitles off, which also disabled **Translate subtitle**.

- New `TrackSelection` helpers in `qtpotato_core` with unit tests.
- On file load: audio follows *Preferred languages* (Playback settings); subtitle follows *Preferred languages* (Subtitles settings), else keeps mpv's choice, else (new *Turn on a subtitle when none matches*, on by default) picks a full text subtitle in the system language, then English, then the audio language, then the default/first track.
- Translate is enabled whenever the file has a text subtitle; with none or a bitmap subtitle shown it translates the best text track (English first).

Verified in the real app on VisionQuest S01E01: subtitle 3 (en) is selected on open; with audio set to `en` and auto-select off, audio switches to track 7, subtitle stays off and Translate stays enabled with the English source.

Reviewed-on: #12
Co-authored-by: Tri Vo Khac <git@trivk.dev>
2026-11-13 21:15:22 +07:00
tri 97b4a2fe32 feat(glossary): add episode groups, search, and import/export
Apply glossary edits directly to translated subtitles and reload the active track. Keep terms with their originating episode, preserve existing translations, and clear stale episode groups with glossary entries.
2026-11-11 19:44:38 +07:00
tri 309801d059 fix(glossary): handle save errors and improve playlist controls 2026-11-07 20:08:28 +07:00
tri 9e55dba687 feat(translate): add per-series glossary with auto extraction 2026-11-07 13:28:32 +07:00
triandClaude Opus 5.5 54ad4eecf3 feat: add playlist, recent files and MPRIS backends
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-28 09:26:12 +07:00
tri 6b5742b2ca feat: load the user's mpv.conf 2026-10-28 00:03:01 +07:00
tri 4665bf632a feat: translate subtitles with an OpenAI-compatible LLM 2026-10-27 22:43:03 +07:00