mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-02-27 18:22:41 -08:00
1.9 KiB
1.9 KiB
id, title, status, assignee, created_date, labels, dependencies
| id | title | status | assignee | created_date | labels | dependencies |
|---|---|---|---|---|---|---|
| TASK-31 | Add optional Jellyfin integration with basic streaming/ playback features | To Do | 2026-02-13 18:38 |
Description
Implement optional Jellyfin integration so SubMiner can act as a lightweight Jellyfin client similar to jellyfin-mpv-shim. The feature should support connecting to Jellyfin servers, browsing playable media, and launching playback through SubMiner, including direct play when possible and transparent transcoding when required.
Acceptance Criteria
- #1 Add a configurable Jellyfin integration path that can be enabled/disabled without impacting core non-Jellyfin functionality.
- #2 Support authenticating against a user-selected Jellyfin server (server URL + credentials/token) and securely storing/reusing connection settings.
- #3 Allow discovery or manual selection of movies/tv shows/music libraries and playback items from the connected Jellyfin server.
- #4 Enable playback from Jellyfin items via existing player pipeline with a dedicated selection/launch flow.
- #5 Honor Jellyfin playback options so direct play is attempted first when media/profiles are compatible.
- #6 Fall back to Jellyfin-managed transcoding when direct play is not possible, passing required transcode parameters to the player.
- #7 Preserve useful Jellyfin metadata/features during playback: title/season/episode, subtitles, audio track selection, and playback resume markers where available.
- #8 Add handling for common failure modes (invalid credentials, token expiry, server offline, transcoding/stream errors) with user-visible status/errors.
- #9 Document setup and limitations (what works vs what is optional) in project documentation, and add tests or mocks that validate key integration logic and settings handling.