f4906862a1310c283f569663ce4658a5c997fa41
- Add shared UBO layout across vertex + fragment stages so vertex uniforms like ove_mvpmat compile and bind correctly. - Rewrite uniform extraction/injection to avoid corrupting the UBO block and to keep explicit sampler bindings stable. - Make the UBO and sampler descriptor bindings visible to both vertex and fragment stages. - Add layout locations for vertex varyings (ove_texcoord) and fragment inputs so SPIR-V generation succeeds. - Extend TransitionImageLayout() to cover all layout pairs used by upload/download/clear/blit. - Add subpass dependencies to the cached render pass and leave destinations in SHADER_READ_ONLY_OPTIMAL after Blit(). - Move descriptor allocation before command recording and abort cleanly if allocation fails; switch Blit() to the persistent linear sampler. - Add a gtest that creates a Vulkan backend, uploads a red U8 RGBA texture, blits through the default pass-through shader, and verifies the downloaded pixel is red. This test passes on the current system. ctest passes 4/4; DynamicRenderBackend.* passes 3/1 (Vulkan fallback skipped because Vulkan is available).
Oak Video Editor
Oak Video Editor is a free non-linear video editor for Windows, macOS, and Linux.
Unfortunately, the original author has not submitted code updates for over 7 months, and no public contact information (email or otherwise) is available to reach them directly.
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 original author compiled following binaries:
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 (Current) | 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
C++
87.8%
C
8.2%
CMake
3.3%
GLSL
0.5%