3792c498543768d601a22a4f46b1b5857d73132d
The OFX abort contract is "0 = keep rendering, anything else = stop" and the ofxs support library literally checks abort(...) != 0. Our host answered kOfxStatReplyNo (13) for "not cancelled", so every openfx-misc processor aborted its pixel loop before writing a single row: the render action returned OK with the output buffer untouched — a solid black frame everywhere an effect was applied (the previous smoke test only asserted "not the purple failure frame", which let this slip through as a fake pass). - image-effect abort: return 0 when not cancelled, 1 when cancelled (instance cancel flag or progress cancellation), BadHandle for descriptor handles as before - strengthen the real-plugin smoke tests to also reject an all-zero output frame, so a silent no-write can no longer pass - more trace-gated [ofx] diagnostics (value dumps for propGetN / propGetPointer / clipGetImage fetches, multiThread entry, render output buffer address) — the tooling that pinned this down Verified with lldb watchpoints: the AddOFX/ChromaKeyerOFX processors now write the real pixels through the executor path.
Oak Video Editor 
Oak Video Editor is a free non-linear video editor for Windows, macOS, and Linux.
This project is a community-maintained fork of Olive Video Editor.

NOTE: Oak Video Editor is alpha software and is considered highly unstable. While we highly appreciate users testing and providing usage information, please use at your own risk.
Binaries
The binary can be downloaded here:
Building from Source
See docs/build.md for build instructions on Windows (MSYS2), Linux (Debian/Ubuntu, Fedora, Arch Linux), and macOS.
Documentation
- Project Storage Architecture (中文) — database write-through persistence, node-granular journal, persistent undo
- Build guide · 工程文件格式
Roadmap
| Version | Theme | Core Deliverables | Boundary Notes |
|---|---|---|---|
| 0.3 | Plugin Architecture Milestone | Production-ready OpenFX host support | Not about quantity of plugins, but "any OFX plugin loads without crashing" |
| 0.4 | Color, Audio & Performance | .cube/.3dl support, scopes (waveform/vectorscope/histogram), three-way color wheels, waveform auto-sync, BWF timecode sync, audio meters (LUFS/VU), proxy media workflow, hardware-accelerated export (NVENC/VideoToolbox), batch render queue |
Combines the previous 0.4-0.6 scope into one usability milestone: color workflow, audio sync, and 4K/8K performance |
| 0.5 | Animation, Tracking & Collaboration | Bézier keyframe curve editor, basic point tracking, image stabilizer, full multicam angle switching, OpenTimelineIO, EDL/XML import/export | Combines the previous 0.7-0.8 scope into one timeline/interchange milestone |
| 0.6 | Stability Milestone | Project file format freeze (backward compatibility promise), crash recovery, autosave, memory optimization | "Feature freeze" testing period before 1.0 |
| 1.0 | Production Ready | Complete documentation, installers, known issues list, community support channels | Declared "ready for serious projects" |
Languages
Rust
82.2%
HTML
11.9%
C
4.8%
C++
0.7%
Shell
0.4%