A local-first desktop video study player for language learners.
Local Study Player helps you study from video and subtitle files you already have. Open a video, add SRT/ASS/SSA subtitles, replay difficult lines, set A/B loops, save timestamped notes, save useful phrases, and copy provider-neutral AI prompts for explanation or review.
- Local video playback with no account or backend
- SRT, ASS, and SSA subtitle parsing
- Clickable transcript with current-line highlighting
- Replay 4 seconds, playback speed controls, and A/B loop
- Timestamped notes and one-click phrase saving
- Phrase review with a lightweight random 5-item session
- Provider-neutral AI prompt workflow via clipboard only
- Markdown note export and JSON phrase export
Local Study Player uses the built-in Chromium/Electron media player. MP4/WebM files with AAC or Opus audio are the safest choice.
Some MKV or AVI files may show video but play without sound when the audio track uses AC3, EAC3, DTS, or another codec Chromium cannot decode.
The app cannot bypass Chromium codec support in the lightweight public version. For the built-in player, remux or convert the audio track to AAC/Opus, or use an MP4/WebM version of the same video.
Your videos and subtitles stay on your computer. The app does not upload media, run a hosted service, connect an AI provider, or require an API key.
The AI buttons only copy prompts to your clipboard so you can paste them into the AI tool you already use.
npm install
npm run devFor the Electron desktop shell:
npm run desktopFor a production web build:
npm run buildFor a macOS app directory build:
npm run package:macSpace: Play / pauseLeft arrow: Replay 4 secondsA: Set loop startB: Set loop endEsc: Clear loopUp/Down: Previous / next subtitle
This project intentionally stays small. It is not trying to be a full language-learning platform, cloud transcription service, dictionary suite, or Anki clone.
Good fit:
- Studying local videos and subtitle files
- Shadowing and replaying short sections
- Saving phrases with context and timestamps
- Reviewing saved phrases with your own AI tool
Out of scope for the first public releases:
- User accounts or sync
- Hosted AI or built-in model calls
- Cloud video processing
- Heavy flashcard scheduling
Source layout:
electron/ Electron main and preload scripts
src/ React/Vite app source
docs/ Screenshots and project documentation
.github/ Issue templates and CI workflow
MIT