IFVE: pulling training images out of one video, with a GUI
A small Python desktop app that extracts a chosen number of frames from a video, optionally resizing to 512 or 768, and skips the studio intro and the credit…
On this page
IFVE: pulling training images out of one video, with a GUI
TL;DR
- IFVE is a small Python desktop app that extracts frames from a video and saves them as images, with the README naming Stable Diffusion training as the use case.
- Five controls, and that is the whole interface: pick the video, pick the folder, enter how many frames, optionally pick a resize to 512x512 or 768x768, press Continue.
- One behavior matters most for a dataset: on a video longer than 60 minutes, the first and last 10 minutes are skipped automatically to avoid studio intro scenes and credit scenes.
- The README calls it a hobby project written to practice beginner Python — treat it as a small working tool, not a maintained framework.
What it is and who it is for
IFVE — Image from video extraction is a Python application with a small window: choose a video file, choose where the images go, say how many you want, and press a button.
It is for the person who wants training images from a video without writing a script or opening a frame-by-frame tool, and for whom the desktop window is the whole point — the README's five steps are all clicks, not commands.
What it does
- Select a video file to extract frames from.
- Choose a folder to save the extracted frames.
- Choose the number of frames to extract.
- Optionally resize the frames to 512x512 or 768x768.
- On a video longer than 60 minutes, skip the first 10 minutes and the last 10 minutes, so a studio intro and end credits stay out of the dataset.
That last rule is the one worth reading twice, because it is different from a percentage rule: it is a fixed ten-minute window at each end, applied only when the video is longer than sixty minutes. A forty-minute video keeps its intro, and a two-hour video loses twenty minutes from its runtime before any frame is chosen.
How to use it
- Clone the repository.
- Install the dependencies — the README says to install them, without listing which.
- Run the application.
- Click "Select video" and choose the file.
- Click "Select folder to save images" and choose the destination.
- Enter the number of images you need in "Select how many images you need".
- Optionally pick a resize option from "Select image size option".
- Click "Continue", and the images are saved to the folder.
The interface is named in the README's own words, which is why the steps above read like the window: three buttons, one text field, one dropdown.
What to expect, honestly
The README is short and it says what it is: a hobby project written to exercise beginner Python skills. That framing is the useful thing to keep in mind — there is no batch mode, no frame-quality filter, no duplicate detection and no manifest of which frame came from which second.
So the output is a folder of images with the size you asked for, and the honest expectation is that you will still look through them. The one dataset rule that is already in the code is the ten-minute skip, and it is there because the author hit the same problem everyone hits with a studio recording.
When to use it, when not to
Use it when the video is one long file and you want a batch of stills for a training set, when the video has a long intro and end credits, or when you want a window, a number and a resize, and nothing else.
Do not use it when you need frames at specific timestamps, when several videos need one run, or when the dataset needs per-frame metadata — every one of those is a script, not a window. And do not assume the dependencies are listed: the README has an install step without a package list, so the environment is something you will work out yourself.
Sources
- IFVE — Image from video extraction — repository — features, the ten-minute skip rule, installation and usage steps quoted above.
- README.md — features, install and usage steps, hobby-project framing.
Project page: IFVE — Image from video extraction
For the script version that handles a list of YouTube links with a luminance filter, see YT-Frame-Extractor, and for what to do with the images, building a training dataset.
FAQ
Which resize options are available? 512x512 and 768x768, and the resize is optional — leaving it out keeps the original frame size.
Does it skip the intro? Only on videos longer than 60 minutes, where the first and last 10 minutes are skipped to avoid studio intro and credit scenes.
Can I process several videos at once? The README describes one video per run: select the file, select the folder, set the count, press Continue.
What is it for? The README names Stable Diffusion training as the use case, and describes the project as a hobby exercise in beginner Python.