An Electron desktop app for previewing, renaming, and batch-transcoding video files (built primarily for tidying up movie rips). Load one or many videos, sanity-check them with screenshots, get an AI-suggested filename, then queue up HEVC/H.264 encodes with sensible per-resolution profiles. This comes in handy for working your way through a TV Series or a large number of movies that require both filename cleanup and encoding.
Encoding profiles are Apple hardware centric (VideoToolbox for HEVC).
- Open one or many videos via a file picker, or drag and drop files onto the window
- Extract 8 evenly spaced screenshots from each video, with an adjustable start offset and a "More Screenshots" button to pull additional frames
- Video info line showing runtime, dimensions, detected color space (SDR / HDR10 / HLG), and the suggested crop (video bounds)
- Play in VLC to open the current file for a closer look
- Prev / Next navigation to move through a batch of loaded files
- Rename the current file directly from the UI (extension is preserved)
- Optional filename base applied across a batch
- AI filename suggestions — for videos longer than 80 minutes, the app asks Claude to guess the movie title and year from the filename (optional if you bring your own API key, see Claude API key below)
- Batch encoding queue with a live progress bar, percentage, and a Stop Encoding button; queued and in-progress items are shown in a separate queue window
- Encoded output is written to a
Completed/subfolder as.mkv, alongside anffmpeg.log - Automatic profile selection by source resolution — when a loaded file's
height differs from the previous one, the profile switches automatically:
- 2160p → 4K Mac M1 HEVC High Quality
- 1080p / 720p → HD Mac M1 HEVC 10-bit High Quality
- 480p → SD
- Encoding profiles for different targets and hardware:
HD Mac M1 HEVC High Quality/Medium Quality(VideoToolbox HEVC)HD Mac M1 HEVC 10-bit High Quality(10-bit, auto SDR/HDR color)4K Mac M1 HEVC High Quality(VideoToolbox HEVC, auto SDR/HDR color)4K Software HEVC High Quality(libx265)HD Software HEVC High Quality(libx264)SDandSD Animation(libx264, animation tuning + deinterlacing)
- Automatic color-space handling — the source's color metadata is inspected and HDR sources (HDR10 / HLG) keep their HDR tags while SDR sources are tagged BT.709, avoiding the red tint that comes from mislabeling SDR as HDR
- Automatic crop detection via
cropdetect, toggled with the Crop Video checkbox - Subtitle passthrough — bitmap subtitle tracks (PGS / DVD) are copied from the source into the output
- Audio handling — all audio tracks are copied; the default track is also re-encoded to AAC when it isn't already AAC/AC-3. An English Audio Only option limits audio to English tracks
- Adjustable CRF / quality override per encode, with per-profile defaults
- node.js v22+
- VLC if you want to play video from inside the app
- An Anthropic API key if you want AI filename suggestions (optional)
- Install dependencies:
npm install - Run the app:
npm start - Click "Open Video Files" (or drag files onto the window) and select one or many videos
- Review the screenshots, rename the file, choose/confirm an encoding profile, and click "Queue Encode" or "Start Encode"
AI filename suggestions are powered by Claude and require an Anthropic API key. This feature is optional — the rest of the app works without it.
-
Create an API key in the Anthropic Console.
-
Create a file named
.envin the project root (the same folder aspackage.json). -
Add your key on a single line:
API_KEY=sk-ant-your-key-here -
Restart the app. When you load a video longer than 80 minutes, a suggested
Movie Title (Year)name will appear next to the rename field; click "Use Suggested" to apply it.
The key is read locally from .env at startup and used only to call the
Anthropic API. Keep .env out of version control.
- Electron
ffmpeg-static&fluent-ffmpegfor screenshots, probing, and encoding@anthropic-ai/sdkfor AI filename suggestions