Improvements to the workflow include the ability to change the length of multiple clips at once, zooming in on audio waveforms, an easier way to work with proxy clips for videos with an alpha channel, and a new Shift+Click option to open or close all effects in the stack. The time code widget has been updated to feature a new color, enhancing the visibility of the active monitor. The project notes now include a search function, and Kdenlive now saves the last used LUT files for color correction.
Recent updates have been incorporated into the binaries, addressing issues such as corruption during the copying and pasting of sequence clips to different projects, enhancing the text outline functionality in the Title Editor, and adjusting the Auto Save feature for a more balanced approach. Kdenlive values the support of its community, and contributions are encouraged.
The comprehensive changelog details resolutions for various issues, including corrupted bin icons, application crashes, GPU whisper script, and additional enhancements. Contributions may be made by identifying and triaging bugs, translating Kdenlive into your language, promoting Kdenlive within your local community, or considering a donation to support the development of Kdenlive.
Kdenlive
We are proud to announce the release of Kdenlive 25.04.0. Here are some highlights of this major release:
Object segmentation
A new plugin based on the SAM2 model now allows you to create object masks to remove the background of your videos or apply an effect only to an object. All processing is done locally.
Improved audio waveforms in timeline.
A nice refactoring was done by Etienne André to make the audio thumbnails faster and more precise.
OpentimelineIO import/export
Darby Johnston rewrote our OpentimelineIO import and export function using the C++ library. Now you can exchange projects with other editing applications that support this open source file format. Please note that effects, filters, and transitions are not exported as each application uses its own standard.
Workflow improvements
Among the many small improvements, here are some of the noteworthy changes:
- The duration of multiple adjacent clips can be changed in one operation
- Allow vertical zooming of audio waveforms
- Fixed proxy clips workflow for videos with an alpha channel
- Added Shift+Click to expand/collapse all effects in the stack
- It is now easier to find out which monitor is active as the time code widget now uses a different color
- Added a search feature to the project notes, and made standard search shortcut work on all widgets
- Fixed UI translations not appearing correctly despite being translated
- Kdenlive now remembers the last used LUT files when doing color correction, making it easier to access them
- Fixed Render widget hidden behind main window on Mac
Many other improvements made it into this release, and we closed more than 30 reported bugs. Please see the change log below for details.
Last minute fixes
Some last minute fixes have been included in our binaries:
- Fixed a corruption when copying and pasting sequence clips to another project
- Improved the Title Editor's text outline to follow the font curves more closely
- Fixed an application freeze when trying to extract the last clip in a track
- Made the Auto Save feature less aggressive by increasing the time intervals and fine tuning the triggers in order to prevent a severe lag in large projects
Need help ?
As usual, you will find very useful tips in our documentation website. You can also get help and exchange your ideas in our users matrix chat room.
Get involved
Kdenlive relies on its community, your help is always welcome. You can contribute by :
- Helping to identify and triage bugs
- Contribute to translating Kdenlive in your language
- Promote Kdenlive in your local community
You can also support us by considering a donation that will help Kdenlive's development.
The work on the OpentimelineIO and audio waveform features was made possible thanks to all the people who contributed to our fundraising, see our final campaign report.
Full Changelog
Click to see the full changelog (English)
- Ensure secondary bins are created after mainwindow is initialized. Commit.
- Fix corrupted bin icon. Commit. Fixes issue #1993
- Fix crash duplicating a sequence with built-in effects enabled. Commit. Fixes issue #1996
- Temporarily disable exporting OTIO metadata on macos. Commit.
- Snapcraft: sync fixes from master to release. Commit.
- Don't search LUT file in all subdirectories. Commit. See bug #502581
- Fix GPU whisper script. Commit.
- Show proper error message when trying to apply a mix and all tracks are disabled. Commit. Fixes bug #502610
- Fix qml typo. Commit.
- Fix clip markers vertical pos. Commit.
- Fix typo breaking timeline thumbnails. Commit.
- Fix major slowdown to timeline operations (scroll, etc) on large projects using clip markers. Commit. See bug #502610
- Refactor qml around timeline mouse position. Commit.
- Try to fix render dialog categories (xml extract does not work with i18nc). Commit. See bug #502297
- Add torchaudio for NVidia GPU whisper in case it is not automatically installed. Commit.
- Fix Extract clip with multiple selection. Commit. Fixes bug #485517
- Don't enforce mapping audio or video streams if we anyways don't want them. Commit. See bug #502437
- Fix Clip monitor audio preview causing monitor image resize when not permanently enabled. Commit. See issue #1984
- Fix audio spectrum not correctly refreshing on color theme change. Commit.
- Remove undocumented tag in effects xml breaking translations. Commit. See bug #502594
- Fix documentation link to JogShuttle. Commit. Fixes bug #502618
- Cleanup track head tooltips, show track name on track tag hover when collapsed. Commit.
- Make Slider in AudioMixer follow changes done in the SpinBox. Commit.
- Fix cut-off text of dB scale values in AudioLevelWidget. Commit.
- Additional OTIO missing media test. Commit.
- Fixes for small clips. Commit.
- Fix effect stack model crashes and undo move. Commit.
- Fix deleting single bin clip effect when effect group is enabled. Commit.
- Increase precision of BoxBlur to allow 1 pixel blur. Commit.
- LUT: always list LUTS placed in the last opened folder. Commit. See issue #1985
- Fix timeline audio thumbnails for clips with multiple streams and different channel count. Commit. Fixes bug #501280
- Make Remove timeline preview work with undo/redo. Commit. Fixes bug #502192
- Fix timeline preview chunk incorrectly identified as missing bin clip. Commit.
- Timeline preview: fix breakage with build-in effects and undo. Commit.
- Fix clear history broken. Commit. Fixes bug #499544
- Fix glaxnimate connection not terminated on app close on Windows. Commit. Fixes bug #473036
- Text based edit: with multiple text selection, create multiple markers. Commit. Fixes bug #498259
- Fix markers on clips with negative speed seeking to incorrect position. Commit.
- Fix variable fps message in clip properties using too much space. Commit.
- Better default height for assets info box, remember its size. Commit. Fixes bug #502089
- Fix 1 frame offset in reverse clip. Commit.
- Fix incorrect waveform on clips with negative speed. Commit. Fixes issue #1981
- Prevent loading MLT Qt5 modules crashing tests. Commit.
- Ensure track state is correctly restored on undo hide. Commit.
- Fix missing menu entry for hide track, cleanup and allow Shift+click to hide all audio/video tracks. Commit. See bug #495921
- Fix first background frame not displayed when opening a timeline clip in glaxnimate. Commit.
- Correclty restore all audio streams in restore audio operation. Commit. Fixes bug #474140
- Ensure render dialog shows up even if it was minimized. Commit.
- Try to move Render Widget on top when activated. Commit.
- Fix audio targets not updating anymore after audio or video only drag from clip monitor. Commit.
- Cleanup debug lines. Commit.
- Add Quick Sync h264/265 render profile. Commit.
- Ensure we don't delete a builtin effect. Commit.
- Fix crash undoing delete all effects. Commit.
- Fix crash trying to group a clip with a composition. Commit.
- Enable Ctrl+F shortcut to focus search line in Bin, Guides and Effects/Transitions list. Commit.
- Text based edit: don't use hardcoded colors in text search background, make standard shortcuts work (find, find next/previous). Commit.
- Fix some effects/composition names appear untranslated - caused by i18n context. Commit. See bug #473086
- Fix tests after last commit. Commit.
- When opening a project file with a custom effect that is not on the system, use the MLT base effect to correctly recover the project. Commit. Fixes bug #460928
- Correctly set audio flag for generator clips (don't pretend we have an audio track when we don't). Commit.
- Fix autoclose attribute not properly set on playlists on rendering, causing huge memory usage. Commit. See bug #501578
- Fix some minor color palette issues in effect stack. Commit.
- Remove unsupported html tags from notifications. Commit. Fixes bug #174560
- Improve our memory checks on rendering to use more sane values and be more visible on low memory. Commit.
- Get rid of stylesheets for asset panel. Commit.
- Ensure we use cpu by default for whisper if no device configured yet. Commit.
- Fix speed dialog mnemonics and tab order. Commit. Fixes bug #501565
- Several monitor qml overlay fixes. Commit.
- Fix profile change aborted when switching from empty project. Commit. Fixes bug #500751
- Insert space should move guides if they are not locked. Commit. Fixes bug #500773
- Add keyboard shortut for render filename field. Commit. Fixes bug #500772
- Fix rendering files with an ampersand in name is broken on linux. Commit. Fixes bug #500794
- Remove link character that is missing in many fonts. Commit.
- Motion tracker: create keyframes with smooth_natural type instead of the deprecated smooth that caused cusps and could lead to empty area causing crashes. Commit. See bug #500850
- Add missing subfolders for translations. Commit. See bug #473086
- Fix saved tracker effect doesn't work. Commit. Fixes bug #501227
- Add OTIO tests for transitions and missing media. Commit.
- Ensure Bin messages don't crash when running in headless mode (like tests). Commit.
- Fix project monitor ruler not updating correctly on scene change. Commit.
- Display black frame when seeking after last clip in timeline. Commit.
- Display timecode in project monitor even if we are past the last clip. Commit.
- Fix replacing color clip. Commit. Fixes bug #501394
- Reorganize timeline toolbar separators to be more coherent with feature. Commit. See issue #1972
- Re-enable the keep source default size feature now that qtblend is fixed. Commit.
- Add some context info for built-in effects. Commit.
- Fix crash on close with mask task running. Commit.
- XML effect file corrections. Commit.
- Add some contextual info buttons to plugins. Commit.
- Fix transcoding and proxying of clips with cover art. Commit. Fixes bug #496599
- Add info message about SAM2's high memory usage. Commit.
- Hide some built-in effects on color clips. Commit.
- Fix incorrect properties keyword. Commit.
- Disable exception handling to fix CD builds. Commit.
- Clazy fixes. Commit.
- Allow installing specific CUDA version for Whisper and SAM2. Commit.
- Add OTIO support for color clips. Commit.
- Add progress dialogs. Commit.
- Revert "Allow testing checkerboard with MLT 7.30". Commit.
- Improve error log on venv setup error. Commit.
- Work around for header oddity with OTIO and Imath. Commit.
- Update nightly Flatpak deps for OpenTimelineIO. Commit.
- Fix OpenTimelineIO target names. Commit.
- Ensure Bin effects keep their in/out when clip is inserted in timeline, like shape filter. Commit.
- Fix alpha mask keyframes. Commit. See issue #1964
- Fix startup crash. Commit.
- Fix mask not created on request. Commit.
- Fix effectstack not showing up for color/image bin clips. Commit.
- Misc Mask fixes, allow editing a missing mask to recreate it. Commit.
- Temporarily disable otio test. Commit.
- Test fix. Commit.
- Add guides and markers test. Commit.
- Refactoring. Commit.
- Add more tests. Commit.
- Wait for clips to load. Commit.
- Add messages boxes for errors. Commit.
- Add asserts. Commit.
- WIP import transitions. Commit.
- Remove old code. Commit.
- WIP support for exporting mixes as OTIO transitions. Commit.
- Set the profile. Commit.
- Add basic test. Commit.
- Add copyright header. Commit.
- Move OTIO dependency into a subdirectory. Commit.
- Add test file. Commit.
- Refactoring. Commit.
- Remove TODOs. Commit.
- Get the resolution from the first video clip. Commit.
- Update notes. Commit.
- Use AV libs for timecode. Commit.
- CMake fixes. Commit.
- Add notes. Commit.
- Refactoring. Commit.
- Add guides support. Commit.
- Refactoring. Commit.
- Refactoring. Commit.
- Import markers. Commit.
- Better profile handling. Commit.
- Export markers. Commit.
- Account for gaps. Commit.
- Remove QModelIndex traversal. Commit.
- Use start time code from media. Commit.
- Add FETCH_OTIO option. Commit.
- Create a new document when importing. Commit.
- Do not translate the file extension. Commit.
- WIP import. Commit.
- Add comment. Commit.
- Initial attempt at importing. Commit.
- Add basic OTIO export. Commit.
- Try using kde_target_enable_exceptions() for OTIO. Commit.
- Use FetchContent for OTIO. Commit.
- Initial check-in. Commit.
- Multiple fixes for background removal (you can now continue working while mask is being created). Commit.
- Timeline highlight: switch from stylesheet to palette roles. Commit.
- Get rid of focus timer hack breaking stuff. Commit.
- Revamp python plugins install, fix downloading whisper model on first run if model folder does not exist. Commit.
- Fix invert mask button. Commit. See issue #1976
- Fix audio playback breaks when switching between bin clips. Commit. See bug #500491. See issue #1963
- Remove debug. Commit.
- Various fixes for background removal. Commit.
- Fix playlist alpha proxy. Commit. See issue #1556
- Don't allow changing zone when monitor is in mask creation mode. Commit.
- Fix coding style. Commit.
- Fix seeking to zone start in bin clip when starting a mask. Commit.
- Make proxy profile for clips with alpha configurable (globaly not per project). Commit. See issue #1556
- Enforce libvpx decoders when transcoding a file with alpha. Commit. See issue #1556
- Add basic alpha detection for playlist clips to disable automatic proxies. Commit. See issue #1556
- Try to fix CI tests freeze. Commit.
- Cleanup built-in Mask task. Commit.
- Ensure we don't add 2 mask effects. Commit.
- Show mask progress and stop button in build-in widget. Commit.
- Add remove background button in built-in effects. Commit.
- Use deleteLater when switching monitor scene to avoid possible crash if a switch occurs while a qml action happens like mouse click. Commit.
- Object masks: allow selecting mask color and adding a border. Commit.
- Fix ClipLoadtask usage in tests. Commit.
- Add a few tests for Timecode and GenTime. Commit.
- Improve code to get start timecode of a clip. Commit.
- Add scaleTimecode helper to deduplicate code. Commit.
- Change icon for speech recogniation in subtitle trackhead. Commit.
- Make active monitor timecode font bold. Commit.
- Make monitor timecode color different if monitor is active. Commit. See bug #471086
- Fix align audio to reference always using first stream. Commit. Fixes issue #1968
- Fix audio stream index indicator in timeline clips. Commit.
- Don't output hundreds of useless avformat warnings. Commit.
- SAM: Add option to offload memory to CPU, allowing to create longer masks, useful for GPU with low VRAM. Commit.
- Snapcraft: Use ffmpeg sdk for building. Commit.
- Fix compilation. Commit.
- SAM segmentation: Allow creating include / exclude points later in the video, display keyframes in monitor ruler. Commit.
- Ask for confirmation when closing a project with running mask task. Commit.
- Ensure shape masks gets correct parameters on start. Commit.
- Remove useless debug. Commit.
- Make sam2 process stay alive during mask creation. Commit.
- Don't draw audio channel name if we merge channels. Commit.
- Fix audiothumbs disappear on high zoom. Commit. Fixes issue #1969
- Fix dragging from clip monitor becomes audio or video only when passing over the buttons. Commit.
- Use current stream for audio matching. Commit. See issue #1968
- Fix compile issue with fakeit template. Commit.
- Fix effects with analysis step like loudness 2 pass and tracker broken on cut clips or on tracks. Commit. Fixes bug #492729. Fixes bug #441451. Fixes issue #1789
- [CI] Dependencies for @all. Commit.
- CI: Add linux-qt6-next build. Commit.
- Remove dead code to trigger rebuild. Commit.
- Titler: fix horizontal center of text with letter spacing > 0. Commit.
- Fix crash pasting clips with a same track transition (like dissolve). Commit.
- Allow testing checkerboard with MLT 7.30. Commit.
- Ensure proxy clips have a fixed frame rate (using vsync 1). Commit. Fixes bug #499559
- Fix Clip Monitor audi/video drag buttons. Commit.
- Shift+Click to collapse/expand all effects. Commit.
- Fix rotoscoping shape sometimes jumps to unexpected location when drag while playing. Commit.
- Fix incorrect behavior / crash on single item deletion. Commit. Fixes bug #499570
- Fix crash trying to import invalid keyframe data from clipboard. Commit. Fixes bug #499531
- Fix keyboard focus lost on fullscreen monitor with rotoscoping and maybe other effect overlays. Commit.
- Clip Monitor Background: add checkerboard option. Commit. Fixes issue #833
- Fix resetting rotoscoping effect is broken. Commit.
- Don't try to update monitor overlay if effect is disabled. Commit.
- Report proxy failure if process exit code != 0. Commit.
- Hide split screen from 3 point balance (option is available from Kdenlive effect stack button). Commit.
- Try having double and integer params have the same size in effects,. Commit.
- Fix minor typo. Commit.
- Remove unused qml param. Commit.
- Add option to zoom audio waveforms. From the timeline menu or button in the first audio track header. Commit.
- Fix clip monitor selection invisible on audio frame. Commit. See bug #499365
- Fix crash setting empty name for folder. Commit. Fixes bug #499070
- Fixes to rectangle keyframes (fix possible crash) and add configurable limit to automatic keyframes, for example only every 10 frames. Commit.
- Ensure the keyframe position is correct in case we move a rectangle over monitor while playing. Commit.
- Cleanup communication with qml monitor rectangle. Commit.
- Better fix for expand library clips broken with proxies. Commit. Fixes bug #499171
- Revert "Correctly fix path for proxied clip inside a playlist clip like in library". Commit.
- Correctly fix path for proxied clip inside a playlist clip like in library. Commit. See bug #499171
- Fix clip monitor default zone does not include last frame. Commit.
- Try to fix Whisper models folder on Flatpak. Commit. See bug #499012
- Ensure CTRL+end goes after the last frame to allow inserting new clips. Commit.
- Fix effect param slider misbehaving after effect reset. Commit.
- Don't try to delete ui file elements on subtitlemanager close. Commit.
- Fix minor typo (remove an extra period). Commit.
- Fix tags. Commit.
- Object mask: fix minor monitor overlay issues (rectangle selection incorrect when zoomed). Commit.
- Add shortcut to focus bin search. Commit.
- Fix effect stack widget not properly resizing. Commit. See issue #1957
- New XML files, updates, fixes, UI improvements. Commit.
- Fix whisper not working if device is empty. Don't unnecessarily reset monitor scene when changing monitor preview resolution, fix progress in frame export. Commit.
- Add a proper meltjob class to handle SAM2 frame export. Commit.
- Fix crash on some systems while extracting frames for a mask. Commit.
- Testing some sam2 fixes. Commit.
- Update config tooltip. Commit.
- Fix compilation with Qt < 6.7. Commit.
- Fix whisper/sam system python not correctly stored. Commit.
- Improve control points visibility for object masks, allow moving a point. Commit.
- Fix SAM rect selection. Commit.
- Fix remaining incorrect ffmpeg path on Mac. Commit.
- Cleanup speech scripts, fix hardcoded ffmpeg path breaking whisper and vosk on Mac, add system packages checkbox. Commit. See bug #498949
- Update automask tooltip to say you can also draw a box. Commit.
- SAM segmentation: allow drawing a rectangle on monitor to select object, fix system python package, related to #1944. Commit.
- Add option to use system packages for SAM (Whisper will come later). Commit. See issue #1944
- Another round of clazy fixes. Commit.
- Change icon back from "red trash can" to "red X". Commit.
- Another round of Clazy fixes. Commit.
- Clazy fixes. Commit.
- Ensure built-in effects reset button is enabled. Commit.
- Typo fix in setTimelineProperty method name. Commit.
- Ensure vidstab external files are correctly listed and archived. Commit.
- Ensure mask files are correctly listed in Project settings / Archive widget. Commit.
- Added 2 decimals for the rotation parameter (addresses bug #498586). Commit.
- Rescale 48-apps-kdenlive.png to 48x48. Commit.
- Fix effects layout broken on resize. Commit. Fixes bug #498749
- Fix possible crash on exit. Commit.
- Reassemble proxy profile elements in the correct order after validation. Commit. Fixes bug #485356
- Fix the spinbox range for title position and size. Commit. Fixes bug #487950
- Fix handling of null frames in audiolevels generation. Commit.
- Remove debug print. Commit.
- Fix memory leaks in generatelibav. Commit.
- Fix crash on audio zoomed in view with merged channels. Commit.
- Change: Whisper, «Uninstall model» to «Remove model». Commit.
- Fix: Make more delete icon consistent. Commit.
- Workaround crash switching or zooming in merged audio channel view. Commit.
- Audio waveform (audiolevels) rewrite. Commit.
- Fix typo builtin to built-in. Commit.
- Update to icon "edit-delete". Commit.
- Make monitor opengl interpolation independant for clip and project monitors. Commit.
- When zooming in the monitor view, use linear scaling so we can see individual pixels (linux only for now). Commit.
- Fix rendering progress not shown when rendering a zone. Commit.
- Snapcraft: symbolic link to proper home in packaging dir. Commit.
- Nightly Flatpak: Add inih dep for exiv2. Commit.
- Nightly Flatpak: remove movit dependency. Commit.
- Nightly Flatpak: update deps. Commit.
- Nightly Flatpak: don't install srt and vosk anymore. Commit.
- SAM-2: pull as archive, not from git. Commit.
- AbstractPythonInterface: cleanup venv check. Commit.
- PythonInterface: remove unused installDisabled option. Commit.
- Small tweaks to timeline resize handles and fix subtitles track head anchor issue. Commit.
- Timeline: make resize handle slightly larger. Commit.
- Fix error in last commit breaking tests and more. Commit.
- Work/sequenceresize. Commit.
- Ensure sequence clips in timeline are not resized to smaller when hiding a track. Commit. Fixes bug #498178
- Snapcraft: Move to core24. Commit.
- Allow more than 9 layouts. Commit.
- Fix crash saving effect stack. Commit. Fixes bug #498124
- Fix layout order with > 9 layouts. Commit.
- Fix use after free from last commit. Commit.
- Fix reload or proxy clip losing tags, markers, force aspect ratio. Commit. Fixes bug #498014
- Some mask fixes, including error reporting. Commit.
- Show log on mask creation error. Commit.
- Fix mask creation on Windows. Commit.
- Fix label without layout. Commit.
- Show notification in mask manager when creating a mask. Commit.
- Fix bin clips effects sometimes incorrectly applied to timeline instance. Commit.
- Fix minor typos. Commit.
- Don't enable vos_optimized on CUDA < 8. Commit.
- Fix sam config layout issue. Commit.
- Fix image mask creation after first install. Commit.
- Don't move selection when dropping a bin clip on another bin. Commit.
- Automatic object segmentation. Commit. See issue #1919
- Update message when trying to proxy a clip with alpha. Commit.
- Fix track resizing. Commit.
- Add MAC videotoolbox HW rendering profiles. Commit.
- Fix line return when pasting text with timecodes inside project notes. Commit.
- Warn and fix proxying of alpha clips. Commit.
- Fix delta display when resizing clip, add duration info when resizing from start. Commit.
- Fix transparent rendering ffv1 profile. Commit.
- Add ripple checkbox to clip duration dialog. Commit.
- Save effect preset screen positions in percents. Commit.
- Bring back presets to build in effects. Commit.
- Fix titlewidget animation tab layout. Commit.
- Clazy fixes part two. Commit.
- Clazy fixes part one. Commit.
- Assetlistwidget buildLink use const ref for argument 'id'. Commit.
- Don't allow adding master only effect to timeline clips/tracks. Commit.
- Add small transform button in top left timeline monitor when build-in effects enabled to easily trigger a resize. Commit.
- Fix incorrect code change that broke tests. Commit.
- Add shortcut to extract clip from timeline. Commit.
- Add some debug info for random failing tests. Commit.
- Fix minor typo: you -> your. Commit.
- Fix crash loading project with effect zone. Commit.
- Fix placeholder. Commit.
- Add campaign infos to our website links. Commit.
- Drop useless CMAKE stuff from kiss_fft. Commit.
- Effects XML changes to include keyframes. Commit.
- Docs: Add some Qtmodules as deps for building. Commit.
- Update build.md with dependencies for Ubuntu 24.10. Commit.
- Fix effect value comparison now that sepia is keyframable. Commit.
- Make multiple effect parameters keyframable. Commit.