Pre-release
This release is a pre-release and may not be stable for production use.
FramePerfect
A lightweight GUI application for precise frame-by-frame video analysis and screenshot extraction, built with PySide/PyQt and OpenCV.
Why This Tool?
- Perfect for: Video editors, forensic analysts, researchers, and anyone needing precise frame analysis
- Advantages over media players:
- Guaranteed frame accuracy (no skipped frames)
- Dedicated screenshot workflow
- Clean interface without unnecessary features
- Multi-file sequential processing: Provide multiple video files and automatically advance to the next when closing (New!)
Key Features
- Frame-accurate navigation: Move through videos one frame at a time with perfect precision
- Instant screenshot capture: Save any frame as PNG/JPEG with customizable paths
- Simple workflow: Open -> Navigate -> Capture -> Repeat
- Visual timeline: Quickly jump to any frame using the position slider
- Compatibility: Supports Python 2+ and PyQt4/PyQt5/PyQt6/PySide/PySide2/PySide6
Installation
pip install frameperfect
After installation, run it as frameperfect.
Usage
Option 1: Interactive Mode
frameperfect
- Click "Open Video" and select your video file
- Use navigation controls:
- Previous/Next Frame: Move precisely through frames
- Slider: Jump to any position
- Save Frame: Capture current frame
Option 2: Sequential Batch Mode (New!)
frameperfect video1.mp4 video2.mp4 video3.mp4
- Automatically opens
video1.mp4first - When window closes, immediately opens
video2.mp4 - Process repeats until all videos are processed
- Perfect for reviewing multiple clips in one session
Basic Workflow
- Click "Open Video" and select your video file
- Use these controls:
- Previous/Next Frame: Move precisely through frames
- Slider: Jump to any position in the video
- Save Frame: Capture the current frame to your Pictures folder
Troubleshooting
- If video doesn't open: Try converting to MP4 with H.264 codec
- For large videos: Consider splitting files for better performance
Contributing
Contributions are welcome! Please submit pull requests or open issues on GitHub.
License
AGPL-3.0 - See LICENSE for details.
Release files for frameperfect 0.1.0a3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| frameperfect-0.1.0a3.tar.gz | 18.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| frameperfect-0.1.0a3-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 36.7 kB
Release files / frameperfect-0.1.0a3.tar.gz
| Download URL | frameperfect-0.1.0a3.tar.gz |
|---|---|
| Size | 18.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8393d2694cbe5e4d16a09eb2a3790a702b9d82adb08e14080243c06bacd79a65
|
|
BLAKE2b-256 checksum How to use checksums |
5ca1a19f40886767e4e01fe28da0258a3b09ea5c8478c673b32bab9e0c58c371
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / frameperfect-0.1.0a3-py2.py3-none-any.whl
| Download URL | frameperfect-0.1.0a3-py2.py3-none-any.whl |
|---|---|
| Size | 18.5 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
71f54dcea80439a77c0e65e1e64342bb6b7082ae4a62bb7781fcd79047fe4a2d
|
|
BLAKE2b-256 checksum How to use checksums |
ef0a2fde88b57598aec27ecc3d276ec24c338ab1913fa794e4acd86ccdeb7c01
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|