Very slow rendering on fast PC

Hello everybody.
I hope this is the right section for this.
I wanted to do zooms on a timeline with 3 videos. I couldn’t manage to do it on kdenlive so I tried Natron out. The result is as follows:

https://www.youtube.com/watch?v=G675K9S_Vzw&feature=youtu.be

The problem : It took more than 2 hours to render 15 seconds of video. I know Natron is very resource intensive but I have a fast PC (Intel(R) Core™ i7-6700 CPU @ 3.40GHz, 16 GB of Ram).

I can only assume this is due to the way I arranged my nodes.
I had 3 videos to play so I made a picture containing all 3 videos. The picture is huge because I wanted all videos to display at 1080p

Here are how my nodes looked like :

I merged the videos on the image, an then merged again with an empty video in order to make the video fit on 1980x1080 pixels (I found no other way to do it as crop or resize didn’t work).

Then, I used the Position and Resize nodes to make the camera move on the canvas and reach my final result. Is there a faster way to do this? I’m ok with the results but it took really long and I don’t want to use it for my future videos as the process is extremely time-consuming.

Thanks in advance to whomever had the patience to read this to the end. I’m new to Natron but I like the software and would like to make it work faster.

Hi,

See Troubleshooting — Natron 2.3.16 documentation

Natron is a compositor, not an NLE, so having H.264 videos as input isn’t helping much.

In your case, start by:

  • using DiskCache nodes after your readers,
  • using either a DiskCache node before the Writer or writing to individual frames (instead of mp4) and compress the sequence using ffmpeg.

Also, if you have many cores on you CPU, you should limit the number of threads used by Natron in the Preferences. We should probably have a better way to compute the number of cores.

Check your bbox it looks huge! Try to change the bbox setting in the merge nodes.

And you could convert your mp4 into an image sequences.

1 Like

@devernay
Thanks a lot for your reply! I used DiskCache for this time but it did not make any difference. Uncompressing the source videos to raw files did help in the preview loading speed but not in the actual rendering. The video quality after rendering is way more consistent though.

I also changed the output to raw but it did not have any positive effect either.

Regarding the render threads, I am currently set up on 0=guess. My CPU has 8 cores. I tried to set up 8 threads but again, it did not make a great difference.

@Lebref
Thanks a lot! I thought that the video compression would be a problem but had no idea it would be that critical. However, the rendering still takes more than an hour.

Regarding the size of the Bbox : I tried to tweak the merge options but I could only get the zoom and sliding working with a Bbox that was smaller than the whole slide. The solution to my issue may lay here but I’m not sure which node I should be using. I tried a lot of different nodes but Position and Resize were the only ones working.

As a conclusion, I must be missing something but it seems to me that zooming and sliding between several videos in intrinsically heavy. I can do something similar on an NLE but I can’t play the videos while zooming and the result is quite bad as a result. Thank you both for your replies which helped me understand more about the importance of codecs in the processing speeds.

I hope there is something obvious I am missing to make my transitions and will keep you updated if I find something.

Cheers.

I doubt this has anything do to with cores/threads in your case. You have a regular i7 (4C/8T) CPU.

Natron seems to run into issues with threadrippers etc (might also be a CPU issue, I have several Intel machines that don’t have this issue).

If your input/output is video you will get a performance penalty (and possible corrupt frames).

If you want replace your videos by constants with the same resolution then copy and paste it here I can check the bbox.

Doesn’t sound like you were successful in changing the BBox settings, looks like Timeline 2k is to blame so put a crop node before it, then a transform before the crop node if you want to move it around. Also consider writing an image sequence instead of an MP4 and then encoding it into a video in a separate step, image sequences are far more performant.