81431d180d61915d22f4d241888c50b5182507f4
- ViewerOutput owns timeline markers/work area via refcounted OakTimeline* value handles (oaktimeline_*_create) instead of C++ objects - oaktimeline C API: add marker_list_create/marker_add/ workarea_create/workarea_set_enabled; handle boxes gain an optional deleter for owning handles - oaknode_node_get_markers/get_work_area return addref'd OakTimeline* handles via out params (named-struct forward declarations avoid the public header cycle); drop OakNodeMarkerList/OakNodeWorkArea - serializers 210528-230220 load/save markers and work areas through the oaktimeline C API; SerializedMarker POD replaces std::vector<TimelineMarker*> in the serializer interface - Sequence::add_default_nodes uses oaktimeline_add_track_command - clip.cpp display-mode enums come from the new neutral include/timeline/displaymode.h; delete src/node/transition/timeline - oakcommon xml: add oakcommon_xml_reader/writer_wrap_native borrowed wrappers (C++ adapter use) - liboaknode now has zero C++ symbol references into liboaktimeline Tests: new owning-handle and wrap_native cases; all standalone trees green (common 196, codec 22, audio 40, task 110, render 49, timeline 123, node 96, plugin 100).
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.
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
95%
C
4%
C++
0.6%
Shell
0.4%