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

Kdenlive 18.04 breaks latest MLT 6.11 version

Tags: None
(comma "," separated)
arjohn
Registered Member
Posts
5
Karma
0
Short Issue Description: (Rendering a file with Kdenlive and the latest MLT 6.11 version, only allows 1 CPU core to be fully utilized when using NVENC)

For this test I used mlt 6.11, successfully compiled by Dan Dennedy's build-melt.sh

The test file that I am using is the 1080p version of Sintel.
https://durian.blender.org/download/

CPU: i5 6600K, GPU:GTX 750 TI nvidia-390 driver , Platform: Kubuntu 18.04

In order to check melt and isolate the problem I simply rendered the first minute of the Sintel short film with the following command:
(This is not the /bin/melt, but the script which launches it with the correct libs)

Code: Select all
/home/frank/melt/20180724/melt -profile atsc_1080p_60 sintel.mkv out=3600 -consumer avformat:result-60.mp4 f=mp4 vcodec=h264_nvenc preset=slow

[CPU Utilization: 67% - 70% - 68% - 74%] [Video Engine Utilization (NVENC): 80%] [Render Time: 20s]

It obviously works perfectly.

Now when I select this melt in the kdenlive environment, and also ffmpeg, ffplay, ffprobe and the profiles path from Dan's melt folder, yields the following results when rendering the first minute of Sintel.
[CPU Utilization: 100% - 7% - 10% - 18%] [Video Engine Utilization (NVENC): 8%] [Render Time: 2m54s]
Something in kdenlive breaks parallel processing, only allowing 1 single core to be fully utilized.

And I have tested every single version of kdenlive available on this earth.
Every app image, including the refractoring version and every single ppa version, including stable, dev and master.

Also generating and launching the render script from the terminal yields the same result.
Code: Select all
RENDERER="/home/frank/kdenlive/bin/kdenlive_render"
MELT="/home/frank/melt/20180724/melt"
SOURCE_0="file:///home/frank/Documents/scripts/script001.sh.mlt"
TARGET_0="file:///home/frank/Documents/untitled.mkv"
PARAMETERS_0="-pid:2664 in=0 out=3052 $MELT atsc_1080p_60 avformat - $SOURCE_0 $TARGET_0 vcodec=nvenc_h264 threads=4 real_time=-1"
$RENDERER $PARAMETERS_0


I have also tested different kdenlive_render executables/libs with the same result.

I should note, that using the kdenlive_multirender script in conjunction with the generated render script by kdenlive, while specifying 4 threads, the CPU uses 2 cores at 100%.
https://github.com/unfa/kdenlive-multirender

Now as I have described before, when I compile melt without enabling gpl, the 1 minute of Sintel renders perfectly again, with full utilization on both the CPU and GPU, but from within Kdenlive this time.

I conclude that this problem is somehow caused by Kdenlive and related to qt, but I do not possess the knowhow to further analyze it.

With the latest 18.08 Beta18 and the most recent QT version, 2 cores instead of 1 are now being utilized at 100% with the NVENC profile.
I used the following command to implement the new qt libs.
Code: Select all
export LD_LIBRARY_PATH="/home/frank/Qt5.11.1/5.11.1/gcc_64/lib/:$LD_LIBRARY_PATH"

QT5.11: http://download.qt.io/official_releases/qt/5.11

So this is 100% a QT issue, but I eally need further insight from a professional.
User avatar
fsckdsk
Registered Member
Posts
90
Karma
0
arjohn wrote:Short Issue Description: (Rendering a file with Kdenlive and the latest MLT 6.11 version, only allows 1 CPU core to be fully utilized when using NVENC)

For this test I used mlt 6.11, successfully compiled by Dan Dennedy's build-melt.sh

The test file that I am using is the 1080p version of Sintel.
https://durian.blender.org/download/

CPU: i5 6600K, GPU:GTX 750 TI nvidia-390 driver , Platform: Kubuntu 18.04

In order to check melt and isolate the problem I simply rendered the first minute of the Sintel short film with the following command:
(This is not the /bin/melt, but the script which launches it with the correct libs)

Code: Select all
/home/frank/melt/20180724/melt -profile atsc_1080p_60 sintel.mkv out=3600 -consumer avformat:result-60.mp4 f=mp4 vcodec=h264_nvenc preset=slow

[CPU Utilization: 67% - 70% - 68% - 74%] [Video Engine Utilization (NVENC): 80%] [Render Time: 20s]

It obviously works perfectly.

Now when I select this melt in the kdenlive environment, and also ffmpeg, ffplay, ffprobe and the profiles path from Dan's melt folder, yields the following results when rendering the first minute of Sintel.
[CPU Utilization: 100% - 7% - 10% - 18%] [Video Engine Utilization (NVENC): 8%] [Render Time: 2m54s]
Something in kdenlive breaks parallel processing, only allowing 1 single core to be fully utilized.

And I have tested every single version of kdenlive available on this earth.
Every app image, including the refractoring version and every single ppa version, including stable, dev and master.

Also generating and launching the render script from the terminal yields the same result.
Code: Select all
RENDERER="/home/frank/kdenlive/bin/kdenlive_render"
MELT="/home/frank/melt/20180724/melt"
SOURCE_0="file:///home/frank/Documents/scripts/script001.sh.mlt"
TARGET_0="file:///home/frank/Documents/untitled.mkv"
PARAMETERS_0="-pid:2664 in=0 out=3052 $MELT atsc_1080p_60 avformat - $SOURCE_0 $TARGET_0 vcodec=nvenc_h264 threads=4 real_time=-1"
$RENDERER $PARAMETERS_0


I have also tested different kdenlive_render executables/libs with the same result.

I should note, that using the kdenlive_multirender script in conjunction with the generated render script by kdenlive, while specifying 4 threads, the CPU uses 2 cores at 100%.
https://github.com/unfa/kdenlive-multirender

Now as I have described before, when I compile melt without enabling gpl, the 1 minute of Sintel renders perfectly again, with full utilization on both the CPU and GPU, but from within Kdenlive this time.

I conclude that this problem is somehow caused by Kdenlive and related to qt, but I do not possess the knowhow to further analyze it.

With the latest 18.08 Beta18 and the most recent QT version, 2 cores instead of 1 are now being utilized at 100% with the NVENC profile.
I used the following command to implement the new qt libs.
Code: Select all
export LD_LIBRARY_PATH="/home/frank/Qt5.11.1/5.11.1/gcc_64/lib/:$LD_LIBRARY_PATH"

QT5.11: http://download.qt.io/official_releases/qt/5.11

So this is 100% a QT issue, but I eally need further insight from a professional.



You are not alone here.
Merlimau
Registered Member
Posts
986
Karma
8
arjohn wrote:Now as I have described before, when I compile melt without enabling gpl, the 1 minute of Sintel renders perfectly again, with full utilization on both the CPU and GPU, but from within Kdenlive this time.

Interesting!

Here some more details about implementation of NVENC: https://mail.kde.org/pipermail/kdenlive ... 10283.html

It should come with the December release.


Bookmarks



Who is online

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