How erfan-ops/videoeditorbeta works
RetroShade is a Qt image/video editor with a modular effect system and GPU-oriented processing. The documented user workflow is to open media, select an effect, process it, and view or save the result. The tree supports separate image/video and effect layers, but the main-window implementation and most call sites are absent, so several workflow connections are intentionally omitted. OpenCL support is documented; its runtime dispatch wiring is not established by the excerpts.
Main entry points: effectBase.h Effect interface · image.cpp Image handling · Video.cpp Video handling · imageBlur.cpp Image effects
Components 18
Application UI
- Qt entry point
main.cpp - Main window
- Effect controls
EffectButton.cpp - Color controls
colorButton.cpp - File selection
fileDialog.cpp
Media Handling
- Image handling
image.cpp - Video handling
Video.cpp
Effect Processing
- Processor base
baseProcessor.cpp - Effect interface
effectBase.h - Image effect base
imageEffectBase.h - Effect catalog
effects.h - Image effects
imageBlur.cpp - Video effects
Blur.cpp
GPU Acceleration
- OpenCL kernels
SourcesOpenCL.cpp - OpenCL palette
OpenCLSoftPalette.cpp
Other components
- Editor user
- OpenCV
- Edited media
Connections 17
- Editor user → Qt entry point: launches
- Qt entry point → Main window: creates
- Editor user → Main window: interacts
- Main window → File selection: selects media
- Main window → Effect controls: presents controls
- Main window → Color controls: presents controls
- Image handling → OpenCV: uses
- Video handling → OpenCV: uses
- Effect catalog → Effect interface: describes effects
- Image effects → Image effect base: implements
- Video effects → Effect interface: implements
- Processor base → Effect interface: supports
- OpenCL palette → OpenCL kernels: uses kernels
- Image effects → Edited media: produces
- Video effects → Edited media: produces
- Image handling → Edited media: handles
- Video handling → Edited media: handles