Kdenlive ladspa plugins

Running kdenlive from unstable. (kdenlive version 23.04.3)

Seems it can’t find a lot of stuff. i need the one of the ladspa plugins.

I found this on the tracker… Mlt glaxnimate missing from Kdenlive · Issue #209923 · NixOS/nixpkgs · GitHub

any idea’s?

lugin not available: "avfilter.acompressor"
plugin not available: "avfilter.aecho"
plugin not available: "avfilter.agate"
plugin not available: "avfilter.atadenoise"
plugin not available: "avfilter.bs2b"
plugin not available: "avfilter.bwdif"
plugin not available: "avfilter.deblock"
plugin not available: "avfilter.dedot"
plugin not available: "avfilter.deflate"
plugin not available: "avfilter.derain"
plugin not available: "avfilter.doubleweave"
plugin not available: "avfilter.field"
plugin not available: "avfilter.framestep"
plugin not available: "avfilter.fspp"
plugin not available: "avfilter.graphmonitor"
plugin not available: "avfilter.hqdn3d"
plugin not available: "avfilter.inflate"
plugin not available: "avfilter.lagfun"
plugin not available: "avfilter.loudnorm"
plugin not available: "avfilter.mcdeint"
plugin not available: "avfilter.random"
plugin not available: "avfilter.removegrain"
plugin not available: "avfilter.separatefields"
plugin not available: "avfilter.shuffleplanes"
plugin not available: "avfilter.sofalizer"
plugin not available: "avfilter.sr"
plugin not available: "avfilter.tmix"
plugin not available: "avfilter.w3fdif"
plugin not available: "avfilter.weave"
plugin not available: "avfilter.yadif"
plugin not available: "frei0r.baltan"
plugin not available: "frei0r.bgsubtract0r"
plugin not available: "frei0r.bigsh0t_eq_mask"
plugin not available: "frei0r.bigsh0t_eq_to_rect"
plugin not available: "frei0r.bigsh0t_eq_to_stereo"
plugin not available: "frei0r.bigsh0t_hemi_to_eq"
plugin not available: "frei0r.bigsh0t_rect_to_eq"
plugin not available: "frei0r.bigsh0t_stabilize_360"
plugin not available: "frei0r.bigsh0t_transform_360"
plugin not available: "frei0r.delay0r"
plugin not available: "frei0r.delaygrab"
plugin not available: "frei0r.lightgraffiti"
plugin not available: "frei0r.lightgraffiti"
plugin not available: "frei0r.rgbparade"
plugin not available: "frei0r.scale0tilt"
plugin not available: "frei0r.tehRoxx0r"
plugin not available: "frei0r.vectorscope"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa.9354877"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "ladspa"
plugin not available: "movit.unsharp_mask"
plugin not available: "timewarp"
plugin not available: "frei0r.sleid0r_push-down"
plugin not available: "frei0r.sleid0r_push-left"
plugin not available: "frei0r.sleid0r_push-right"
plugin not available: "frei0r.sleid0r_push-up"
plugin not available: "frei0r.sleid0r_slide-down"
plugin not available: "frei0r.sleid0r_slide-left"
plugin not available: "frei0r.sleid0r_slide-up"
plugin not available: "frei0r.sleid0r_slide-right"
plugin not available: "frei0r.sleid0r_wipe-barn-door-h"
plugin not available: "frei0r.sleid0r_wipe-barn-door-v"
plugin not available: "frei0r.sleid0r_wipe-circle"
plugin not available: "frei0r.sleid0r_wipe-down"
plugin not available: "frei0r.sleid0r_wipe-left"
plugin not available: "frei0r.sleid0r_wipe-rect"
plugin not available: "frei0r.sleid0r_wipe-right"
plugin not available: "frei0r.sleid0r_wipe-up"
plugin not available: "region"
=== /// CANNOT ACCESS SPEECH DICTIONARIES FOLDER
QQmlEngine::setContextForObject(): Object already has a QQmlContext
QQmlEngine::setContextForObject(): Object already has a QQmlContext
QQmlEngine::setContextForObject(): Object already has a QQmlContext
QQmlEngine::setContextForObject(): Object already has a QQmlContext
:::: NOT FOUND DOCUMENT GUIDES !!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!
QQmlEngine::setContextForObject(): Object already has a QQmlContext
qrc:/qml/timeline.qml:500: ReferenceError: proxy is not defined
qrc:/qml/timeline.qml:481: ReferenceError: proxy is not defined
==== NO PREVIOUS TIMELINE

there is more gore if you really want to see.

I figured out some things about Kdenlive and ladspa plugins:

  • Kdenlive is already built with ladspa support in nixpkgs, so that’s fine,
  • The plugins have two parts: an *.so file that is the actual plugin, and an *.xml file that is the plugin description,
  • The XMLs come from the Kdenlive repo and are installed alongside it. E.g. ladspa_librnnoise.xml
  • The *.so files come from various packages. E.g. rnnoise-plugin
  • Kdenlive needs to be told where the *.so files are installed by setting the LADSPA_PATH variable to point to the directories containing them.

As far as I can tell, there’s no way to nicely add a ladspa plugin to Kdenlive in nixpkgs.

So, we have to use an override. Instead of installing kdenlive, install something like this:

environment.systemPackages = with pkgs; with libsForQt5; [
  ...
  (kdenlive.overrideAttrs (prevAttrs: {
    nativeBuildInputs = (prevAttrs.nativeBuildInputs or [ ]) ++ [ makeBinaryWrapper ];
    postInstall = (prevAttrs.postInstall or "") + ''
      wrapProgram $out/bin/kdenlive --prefix LADSPA_PATH : ${rnnoise-plugin}/lib/ladspa
    '';
  }))
2 Likes