Pitch compensation in kdenlive does not seem to work - it is greyed out.
I found online that this is a known bug, which may have todo with missing rubberband dependency.
https://bugs.kde.org/show_bug.cgi?id=421257
Researching further it seems that there is one packaging from flatpak which indeed wraps rubberband correctly (so this should contain all necessary information)
- merge request: add rubberband by eszlari · Pull Request #68 · flathub/org.kde.kdenlive · GitHub
- flatpak specification: Flatpak Builder Command Reference — Flatpak documentation
I am beginner with nix, and tried to fix this within an overlay of mine, but nothing worked. Here my state so far
final: prev:
{
rubberband_kdenlive = prev.rubberband.overrideAttrs (old: {
# options taken from this fix https://github.com/flathub/org.kde.kdenlive/pull/68/files
# ( interpretation of the respective json attribute "config-opts" is taken from https://docs.flatpak.org/en/latest/flatpak-builder-command-reference.html?highlight=config-opts )
configureFlags = (old.configureFlags or []) ++ [
"--disable-program"
"--enable-shared"
"--disable-static"
"--without-ladspa"
"--with-vamp"
"--without-jni"
];
});
# also used by kdenlive
ffmpeg-full = prev.ffmpeg-full.overrideAttrs (old: {
buildInputs = (old.buildInputs or []) ++ [
final.rubberband_kdenlive
];
configureFlags = (old.configureFlags or []) ++ [
"--enable-librubberband"
];
});
kdenlive = (prev.kdenlive.override (old: {
ffmpeg-full = final.ffmpeg-full;
})
).overrideAttrs (old: {
buildInputs = (old.buildInputs or []) ++ [
final.makeWrapper
final.vamp-plugin-sdk
final.rubberband_kdenlive
];
preBuild = (old.preBuild or "") + ''
export PATH=${final.vamp-plugin-sdk}/bin:${final.rubberband_kdenlive}/bin:$PATH
export LD_LIBRARY_PATH=${final.vamp-plugin-sdk}/lib:${final.rubberband_kdenlive}/lib:$LD_LIBRARY_PATH
export XDG_DATA_DIRS=${final.rubberband_kdenlive}/share:$XDG_DATA_DIRS
'';
postInstall = (old.postInstall or "") + ''
wrapProgram $out/bin/kdenlive \
--prefix PATH : ${final.rubberband_kdenlive}/bin \
--prefix PATH : ${final.vamp-plugin-sdk}/bin \
--prefix LD_LIBRARY_PATH : ${final.rubberband_kdenlive}/lib \
--prefix LD_LIBRARY_PATH : ${final.vamp-plugin-sdk}/lib \
--prefix XDG_DATA_DIRS : ${final.rubberband_kdenlive}/share
'';
});
}
As you see I tried a lot to somehow make kdenlive aware of the new dependencies, but nothing worked. The fix of ffmpeg-full seems to have worked on its own and so I am currently just using ffmpeg as a work-around.
If someone could help completing the fix and make the pitch-compensation feature work, that would be awesome.