This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Missing Distriduted rendering and GPU accelerated rendering

Tags: gpu rendering, render farm, rendering gpu rendering, render farm, rendering gpu rendering, render farm, rendering
(comma "," separated)
User avatar
knosso41
Registered Member
Posts
3
Karma
0
Hi all,
I am new to the forum. I've decided to post this topic in the General Discussion section since I've found very little about it in the forum. Please tell me if i need to move the topic to another section.

First of all I want to say that i really appreciate this project and i find it the best open source editing software I've ever seen. However, as the title says, there are a couple of missing features that nowadays are crucial for a video editing software.

For what concerns GPU accelerated rendering Kdenlive doesn't support it natively, however as far as i know mlt can be recompiled to at least support acceleration for h264 and h265 using the integrated video engine of modern day GPUs (the same used for shadowplay as i understood). In a youtube video i found a guy that more easily just used the precompiled version found in shotcut: https://www.youtube.com/watch?v=X14GvmBpq08&t=4s. I haven't personally tested it but should offload up to 50% of the rendering work to the gpu (I will bi able to test it in approximately 10 days). Even if this is really working we still have a GPU that is largely not utilized. For comparison Adobe Premiere can use CUDA for the rendering process thus using all the power the GPU can provide (even a weak GT 610 can halve the rendering time).

So now I want to genuinely ask: why kdenlive does not come with a similarly compiled mlt in order to support at least partially GPU accelerated rendering? Since CUDA has been available for something like 13 years, why has been decided to not implement something that utilizes it?

For what concerns the Distributed Rendering i found a couple of old posts: https://forum.kde.org/viewtopic.php?f=272&t=115773&p=284484&hilit=distributed+rendering#p284484, https://forum.kde.org/viewtopic.php?f=83&t=142751&p=384059&hilit=distributed+rendering#p384059 and some other in non kde forums but no real answer.
The closest thing i found was this script https://github.com/unfa/kdenlive-multirender which basically splits a rendering job in several parts and then renders them simultaneously. Maybe it can be modified so several computers look in the same network folder for new scripts to execute.
Distributed rendering seems less of a problem than the previous one and, since the available computing power is always a limiting factor, i really cannot understand why there is not any way to do it. I do have very little spare time and I don't know how to code but I will try to help as i can, starting with learning what the linked script really do.

Right now i'm using kdenlive on Linux Mint 19. In one pc the one found in the repositories (4:17.12.3-0ubuntu1), and in another 2 the Flathub version (18.12.1). Please don't consider my words as bad criticism, I love kdenlive. It's just that this 2 missing features really hinder it's use. For example rendering 60 min footage in 4K takes 3 days and i could potentially use up to 50 PCs with similar computing power thus reducing the rendering time to just 90 min (45 min if they could use at least partially the GPU).
Merlimau
Registered Member
Posts
986
Karma
8
A developer is working on GPU acceleration for the upcoming refactoring version. It seems not so easy to implement.
User avatar
knosso41
Registered Member
Posts
3
Karma
0
Merlimau wrote:A developer is working on GPU acceleration for the upcoming refactoring version. It seems not so easy to implement.

Thanks for the answer. I can only imagine how difficult can be to implement a completely different programming language in such a big project.
Do you know if there is anybody that attempted any kind of distributed rendering? Just to know if it can be done with a couple of well written scrips that manipulate a normal kdenlive script or if there is the need to alter kdenlive code itself.
Merlimau
Registered Member
Posts
986
Karma
8
What I see is that MLT has some issues for GPU acceleration. So it’s about the Kdenlive/Movit code itself.

If you like you can try with the actual Refactoring version. There some acceleration is implemented. Kdenlive_Nightly_Appimage: https://binary-factory.kde.org/job/Kden ... /artifact/
User avatar
knosso41
Registered Member
Posts
3
Karma
0
Merlimau wrote:What I see is that MLT has some issues for GPU acceleration. So it’s about the Kdenlive/Movit code itself.

If you like you can try with the actual Refactoring version. There some acceleration is implemented. Kdenlive_Nightly_Appimage: https://binary-factory.kde.org/job/Kden ... /artifact/


Thanks for the tip. I will try it nex week (the 29th) when I will be able to access a pc with a discrete GPU and report the result.
Merlimau
Registered Member
Posts
986
Karma
8
If you like to test OpenCV:
We now have 18.12 AppImages with and without OpenCV:
Without OpenCV: https://files.kde.org/kdenlive/release/ ... mirrorlist
With OpenCV: https://files.kde.org/kdenlive/release/ ... mirrorlist

From the reports, rendering a project (it doesn't need to use any opencv effects) is much slower with the OpenCV version than without OpenCV.
Any confirmation of this would be welcome.


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]