Aphelion

Aphelion Editor

Edit on GitHub

Aphelion Editor

A node-based video compositor. Build a graph, preview in real time, export from any Viewer.

Aphelion is a desktop suite: node graph, viewport, timeline, media pool, and property inspector. The pipeline is float32 RGB. Export and tracking run off the UI thread. Third-party nodes use the sibling Plugin SDK.

Version 0.1.1. Python 3.11+.

Features

  • 90+ built-in nodes — input/output, generators, color, filters, compositing, transform, keying, roto, tracking, timing, distort, stylize, math
  • Real-time preview — decode-time proxy (default 960px), optional 640px playback proxy, frame cache and prefetch
  • Compositing — chroma key, matte edge, spill suppress, bezier roto, point and planar tracking, corner pin, merge/dissolve
  • Color — grading, exposure, hue/saturation, white balance, levels, vibrance, shadows/highlights, creative looks
  • Timeline — playback, in/out, keyframed properties (default 1920×1080 @ 30 fps, 10 s)
  • Projects.aph JSON with autosave once a path exists
  • Export — MP4 or PNG sequence from the active Viewer
  • Pluginsaphelion_sdk drop-ins, wheels, and Preferences → Plugins (enable, disable, reload)

Quick start

cd aphelion-editor
python -m venv .venv
# Windows: .\.venv\Scripts\Activate.ps1
# macOS / Linux: source .venv/bin/activate
pip install -e ".[dev,freeze]"
python main.py

The launcher creates a project, opens a .aph, or restores a recent file. aphelion --version prints the app version.

Full install notes: docs/getting-started.md.

Documentation

GuideContents
Getting startedEnvironment, install, launch
User guideWorkspace, graph, playback, export, shortcuts
PluginsFolders, preferences, reload
ArchitecturePackages, boot, frame pipeline
PackagingWheels, freeze, Windows MSI
DevelopmentTests, typing, logging

CLI

python main.py
python main.py --build
python main.py --build-installer          # Windows MSI → dist/AphelionEditorSetup-0.1.0-win64.msi
python main.py --build-dir path/to/output
aphelion --version

--build-installer includes a freeze. Details: docs/packaging.md.

Layout

aphelion-editor/
  src/           Application packages (ui, core, render, …)
  plugins/       Bundled drop-in plugin modules
  tests/         pytest
  main.py        Source-tree launcher
aphelion-sdk/    Public plugin SDK (sibling package)

UI stays in ui/. Core logic is Qt-free. Frames are float32 RGB in [0, 1].

License

Proprietary. Same for the plugin SDK; see ../aphelion-sdk/pyproject.toml.