Skip to content

Add provider subtitles, embedded captions, and subtitle styling - #10

Merged
pushpinderbal merged 2 commits into
mainfrom
feat/subtitle-support
Oct 19, 2026
Merged

pushpinderbal merged 2 commits into
mainfrom
feat/subtitle-support

Conversation

@pushpinderbal

@pushpinderbal pushpinderbal commented Oct 19, 2026 •

Copy link
Copy Markdown
Owner

Movies and shows now expose provider WebVTT, SRT, and HLS subtitles in the player's CC menu, with embedded CEA-608 captions as a fallback when a provider track is unavailable. Track selection persists in the browser, and subtitles remain aligned after seeking in both copy and transcode modes.

All users can preview and adjust subtitle font, size, color, and background in Settings. Appearance preferences stay in browser storage. Captions retain bottom padding when controls hide, move above the seek controls when visible, and wrap long lines on mobile.

Provider subtitle resources are fetched server-side, cached within bounded stream-session storage, and removed with the playback generation. The README includes an animated showcase and still preview made with fictional demo content.

Validation:

  • go test ./... and go vet ./...
  • Frontend production build
  • FFmpeg-to-browser integration: provider subtitles and embedded captions in copy/transcode modes, selection and Off, language fallback, local/server seeking, and desktop/mobile caption placement and wrapping
  • Browser checks for appearance settings, viewer access, storage fallback, and cross-tab preferences; manual desktop/mobile playback review

Embedded fallback uses HLS.js's CEA-608 decoder; pure CEA-708 services are not decoded.

@pushpinderbal
pushpinderbal merged commit 3dd0873 into main Oct 19, 2026
2 checks passed
@pushpinderbal
pushpinderbal deleted the feat/subtitle-support branch October 23, 2026 01:39
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.

1 participant