Skip to main content

Recently Updated Pages

Proxies, Thumbnails, Waveforms

Venturi Architecture 3. Media Pipeline (vv-media)

Three artifacts are derived from every imported media, each by its own background worker in vv-a...

Updated 1 week ago by Morrolinux

Frame Cache

Venturi Architecture 3. Media Pipeline (vv-media)

Playback and scrubbing read decoded frames from one SharedFrameCache ( vv-media/src/cache.rs), f...

Updated 1 week ago by Morrolinux

Decode & HW Acceleration

Venturi Architecture 3. Media Pipeline (vv-media)

vv_media::Decoder decodes one video stream, sequentially ( next_frame) or after seek_to_time. Ev...

Updated 1 week ago by Morrolinux

Probe & Import

Venturi Architecture 3. Media Pipeline (vv-media)

Importing turns a file path into a MediaItem in the project's media pool. Probing is the only st...

Updated 1 week ago by Morrolinux

Silence Detection

Venturi Architecture 5. Audio (vv-audio, vv-vad)

Silence removal tells speech apart from pauses with voice activity detection rather than a volume...

Updated 1 week ago by Morrolinux

Voiceover Recording

Venturi Architecture 5. Audio (vv-audio, vv-vad)

Voiceover records the microphone onto the armed audio tracks while the timeline plays at 1x, over...

Updated 1 week ago by Morrolinux

Time-Stretch & Speed

Venturi Architecture 5. Audio (vv-audio, vv-vad)

Pitch-preserving time-stretch is libavfilter's rubberband filter, wrapped by vv_audio::stretch_...

Updated 1 week ago by Morrolinux

Headless vs Editor-Hosted

Venturi Architecture 9. MCP Server (vv-mcp)

The same MCP server runs in two hosts. Headless, vv-app mcp [project] is the whole program: no w...

Updated 1 week ago by Morrolinux

Architecture

Venturi Architecture 9. MCP Server (vv-mcp)

vv-mcp exposes Venturi to AI agents over the Model Context Protocol. The protocol side (rmcp on a...

Updated 1 week ago by Morrolinux

Settings, i18n, Theme

Venturi Architecture 7. Editor UI (vv-app)

User settings settings.rs holds preferences of the program, not of the project. They are stored a...

Updated 1 week ago by Morrolinux

Workspace Map

Venturi Architecture 1. Overview

Venturi is a single Cargo workspace (edition 2024) of eight crates. Dependencies never point upwa...

Updated 1 week ago by Morrolinux

Thread Map

Venturi Architecture 8. Concurrency

Venturi has one owner of the document at a time: the UI thread holds the Session (project + undo...

Updated 1 week ago by Morrolinux

Data Flow Between Threads

Venturi Architecture 8. Concurrency

Two patterns cover almost all cross-thread traffic: the playback loop, where the audio clock driv...

Updated 1 week ago by Morrolinux

OTIO Import/Export

Venturi Architecture 2. Data Model (vv-core)

Timelines travel to and from other NLEs as OpenTimelineIO JSON ( vv_core::otio), tested against D...

Updated 1 week ago by Morrolinux

Commands, Undo/Redo

Venturi Architecture 2. Data Model (vv-core)

Undo uses the command pattern ( command.rs). Each command captures, when applied, the state it ne...

Updated 1 week ago by Morrolinux

IDs & IdMap

Venturi Architecture 2. Data Model (vv-core)

Entities are referenced by id, never by pointer or index into a Vec that could shift. The core r...

Updated 1 week ago by Morrolinux

Entities

Venturi Architecture 2. Data Model (vv-core)

The whole document is one plain struct, vv_core::Project ( model.rs). There is no node graph: ev...

Updated 1 week ago by Morrolinux

Timeline UI

Venturi Architecture 7. Editor UI (vv-app)

timeline_ui.rs (~6.7k lines, the largest module) is the multi-track timeline widget. It is drawn ...

Updated 1 week ago by Morrolinux

Packaging

Venturi Architecture 10. Build & Distribution

Releases ship three files: an AppImage for Linux x86_64, one for Linux aarch64, and a dmg for App...

Updated 1 week ago by Morrolinux

Building & Dependencies

Venturi Architecture 10. Build & Distribution

Full instructions live in docs/BUILDING.md; this page summarises what the build needs and why. B...

Updated 1 week ago by Morrolinux