| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Kdenlive is a powerful, free and open-source video editor that brings professional-grade video editing capabilities to everyone. Whether you're creating a simple family video or working on a complex project, Kdenlive provides the tools you need to bring your vision to life.
This fork adds an opt-in recording and reconstruction system for producing auditable video-editing trajectories and deterministic training samples. It records semantic timeline changes and exact Kdenlive/MLT project states; it does not attempt to reproduce a session by replaying mouse gestures or keyboard timing. The MVP does not ask editors for plans, explanations, decisions, or creative intent. The internal team adds the task prompt later when preparing client samples.
The production pipeline is:
JSONL trajectory + content-addressed assets + exact state sidecars
-> validate session, semantic hashes, and global project hash chain
-> resolve the accepted commit/undo/redo branch
-> reconstruct and validate every captured checkpoint
-> render and validate the final accepted state with pinned Melt/MLT and FFmpeg
-> reconstruct every raw command, shortcut, gesture, and state change in a full editor training view
-> gate final-state media on structure, duration, audio structure, and video SSIM
-> atomically publish an accepted sample or a detailed quarantine bundle
Schema 0.3 recordings include stable entity IDs, transaction and undo-entry IDs, project profile/tool context, compressed content-addressed project states, capture-time checkpoint proxies, and explicit abort/recovery lifecycle events. The readers remain backward-compatible with schema 0.1 and 0.2 trajectories and finalized legacy sample directories.
| Platform | Editor collection | Reconstruction | Distribution status |
|---|---|---|---|
| Windows 10/11 x64 | EditPath.exe launches the adjacent instrumented kdenlive.exe | Embedded Python plus packaged Melt/FFmpeg | Primary portable engineering build; unsigned |
| Linux x64 | Native source build and run-collector-app.sh | Native tools or the pinned Docker image | Fully validated development path |
| macOS | Native source build using the upstream Kdenlive dependencies | Native tools or Docker Desktop | Developer path; no signed app bundle yet |
The normal editor entry point is the EditPath supervisor, not Kdenlive directly. Direct Kdenlive launches still work, but recording is disabled unless the supervisor supplies the recorder environment.
Use a portable artifact produced by the Windows portable MVP workflow, or build one from a 64-bit Windows PowerShell session:
Set-ExecutionPolicy -Scope Process Bypass
.\packaging\windows\build-editpath.ps1 -PreflightOnly
.\packaging\windows\build-editpath.ps1Extract windows-output\EditPath-Windows-x64.zip, confirm SELF-TEST.json reports "passed": true, and run:
bin\EditPath.exe
Do not start bin\kdenlive.exe directly for collection. The portable package contains Kdenlive, Melt/MLT, FFmpeg/FFprobe, the Python reconstruction package, and its required Python dependency. Detailed prerequisites and failure-handling instructions are in WINDOWS_BUILD.md.
Install the normal Kdenlive build dependencies documented in dev-docs/build.md, plus Ninja, Python 3.10+, Zstandard, Melt/MLT 7.38+, FFmpeg and FFprobe. Install the complete MLT plugin set used by Kdenlive; at minimum reconstruction needs avformat, xml, and qimage or pixbuf. Frei0r, AVFilter, kdenlivetitle, Glaxnimate, and an SDL/RtAudio backend are needed when the project uses those capabilities.
On openSUSE/WSL, the QtMultimedia QML import is also mandatory for Kdenlive's timeline. The supervisor now refuses to start a broken editor instead of allowing the missing import to become a later Qt crash:
sudo zypper --non-interactive install \
qt6-multimedia-imports libmlt7-modules libmlt7-module-qt6 frei0r-pluginspython3 -m venv .venv
. .venv/bin/activate
python -m pip install -e .
cmake -S . -B build -GNinja -DBUILD_TESTING=OFF
cmake --build build --parallel
python -m edit_path doctor
./video-path-pilot/run-collector-app.shIf dependencies come from KDE Craft rather than system paths, set the location before running the launcher:
export KDENLIVE_PILOT_CRAFT_ROOT=/absolute/path/to/CraftRoot
./video-path-pilot/run-collector-app.shFor recorder diagnostics without the supervisor, use a fresh absolute JSONL path:
./video-path-pilot/run-video-path-pilot.sh /absolute/path/session-001.jsonlmacOS currently uses a source build. Install the Qt/KDE/MLT/FFmpeg dependencies from the upstream build guide, create the Python environment shown above, and build both applications:
cmake -S . -B build -GNinja -DBUILD_TESTING=OFF
cmake --build build --parallel
python3 -m edit_path doctor
EDIT_PATH_REPO_ROOT="$PWD" ./build/bin/EditPathrun-collector-app.sh may also be used when the dependencies are discoverable by CMake. This path has no notarized or signed package yet, so it is intended for developer testing rather than editor distribution.
The finished dataset item is under the displayed session's completed-sample/ directory. sample.json is its authoritative entry point; source media is under inputs/, the editor target under outputs/, the normalized path and replay under edit-path/, derived QA under verification/, and native audit material under provenance/. See DATASET_ITEM.md for the complete layout.
For long-lived WSL GUI containers, create the container with docker run --init ... so a tiny init process reaps Kdenlive render children. The recorder uses a dedicated single-thread sidecar pool with a bounded queue (two pending states by default), reaps completed work during the session, flushes every event, and updates the supervisor manifest heartbeat every 60 seconds. Override the queue only for diagnostics with KDENLIVE_VIDEO_PATH_MAX_PENDING_SIDECARS (accepted range 1-8).
The edit-path CLI implements validation, reconstruction, atomic publication, multi-worker queue claiming, dataset indexing, and deterministic human-QA sampling:
python3 -m edit_path doctor
python3 -m edit_path inspect /path/to/finalized-sample
python3 -m edit_path ingest /path/to/finalized-sample /path/to/work-queue
python3 -m edit_path work-one /path/to/work-queue /path/to/dataset \
--runtime-lock /path/to/runtime-lock.json
python3 -m edit_path qa-sample /path/to/dataset --sample-rate 0.10
python3 -m edit_path index /path/to/datasetAccepted samples contain outputs/final.*, the visual path replay at edit-path/replay.mp4, the separately validated verification/reconstructed.mp4, a portable reconstructed Kdenlive project, normalized operations and events, source assets, exact states, checkpoint references, and a verification report. Rejected sessions retain their raw evidence and a machine-readable gate failure under quarantine/.
The pinned reconstruction image is defined in reconstruction/Containerfile. Detailed gate semantics, worker operation, runtime locking, QA review, and publication bundle layout are documented in video-path-pilot/RECONSTRUCTION.md. Asset licensing metadata is retained but is intentionally non-blocking until the publication phase; operators can enable that later with --require-license.
For more information about Kdenlive's features, tutorials, and community, please visit our official website.
There you can also find downloads for both stable releases and experimental daily builds for Kdenlive.
Kdenlive is a community-driven project, and we welcome contributions from everyone! There are many ways to contribute beyond coding:
Visit kdenlive.org to learn more about non-code contributions.
Kdenlive is written in C++ and is using these technologies and frameworks:
Kdenlive's primary development happens on KDE Invent. While we maintain a GitHub mirror, all code contributions should be submitted through KDE's GitLab instance. For more information about KDE's development infrastructure, visit the KDE GitLab documentation.
Need help getting started? Join our Matrix channel #kdenlive-dev:kde.org - our community is friendly and always ready to help new contributors!
Please get in touch with us before working on a task, either by commenting in the issue or through our Matrix channel.
| Back | FazBrowse Home | New Git URL |