Let's improve Kdenlive on Fedora

Running the Kdenlive package on Fedora has been a pain. It doesn’t work properly with many missing functionalities. A possible fix would be to install libavcodec-freeworld from RPM Fusion. Could any Fedora users install that package, do some editing and let us know if it improves the experience?

can you tell what exactly the issues with the fedora packages are? so i could do some more testing. i run fedora 41 kde and kdenlive seems to work fine without libavcodec-freeworld from rpm fusion.

Without that package you won’t be able to render/transcode using any proprietary codecs like h264, h265, prores. This is something expected in video production. So we need to see if adding that resolved most complaints and if any new ones might pop up that might need to be added as a dep.

hmm i see and h264 rendering doesnt even work for me with libavcodec-freeworld installed. without the package, while rendering, kdenlive maxes out on memory usage and crashes. with the package installed, the rendering also crashes for me, but kdenlive shows its own error message:

[in @ 0x7f0c1ff1a780] Changing video frame properties on the fly is not supported by all filters. [in @ 0x7f0c1ff1a780] filter context - w: 1920 h: 1080 fmt: 26 csp: unknown range: unknown, incoming frame - w: 1920 h: 1080 fmt: 26 csp: gbr range: unknown pts_time: 20.38
[in @ 0x7f05fcafefc0] Changing video frame properties on the fly is not supported by all filters. [in @ 0x7f05fcafefc0] filter context - w: 1920 h: 1080 fmt: 1 csp: unknown range: unknown, incoming frame - w: 1920 h: 1080 fmt: 1 csp: bt709 range: unknown pts_time: 39.82
[in @ 0x7f05ffdd02c0] Changing video frame properties on the fly is not supported by all filters. [in @ 0x7f05ffdd02c0] filter context - w: 1920 h: 1080 fmt: 26 csp: unknown range: unknown, incoming frame - w: 1920 h: 1080 fmt: 26 csp: gbr range: unknown pts_time: 39.88
[mp4 @ 0x7f0cc4200f80] Timestamps are unset in a packet for stream 1. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly [mp4 @ 0x7f0cc4200f80] Encoder did not produce proper pts, making some up.

the same project exports without issues in the flatpak version

1 Like

Trying to replace libav/ffmpeg without rebuilding all deps of it on the system can be kind of painful. If the builds are ‘compatible enough’ you might get away with it for a while - but mostly you tend to end up with a problem like:

kdenlive is built with one version of ffmpeg, but it links to other libraries which were built with a different version, and all sort of subtle Bad Things ensue.

That was the source of some of the more confusing problems I eventually ran into when I first started building kdenlive from source and was trying to do so with packages created using exactly the same versions of what was shipped in the appimage.

If fedora is not going to ship those encumbered codecs (and I do sympathise with their stance on that and wish more people would use superior and royalty free codecs like AV1/Opus to stop trapping creators into paying royalties to the patent abuse mafia), then probably the only sane option there is things like appimage or flatpak that let you bundle more of the deps that are different to what the system ships.