Low quality dark areas overlay


Im using an overlay effect over a black area and im getting this (low quality gradient) no matter how i render... what can i do?




Banding, quite typical of dark areas in 8bit limited levels video files. Not sure if kdenlive / MLT has gradfun or similar filter available to add as render time option. The denoise filter might possibly help, but you'll risk loosing detail and may be better to mask the areas of detail by rotoscoping perhaps and just denoise the dark areas, otherwise adding a vingette filter over may help.

Personally I'd render out of kdenlive to a lossless codec and use a debanding filter either via ffmpeg on the command line (gradfun), Avidemux or my preference via Avisynth + Wine where there are many more options available, somthing like Dither Tools for extreme control.


Others may be able to suggest alternatives. I generally just use kdenlive to cut and render to lossless then do all the final encoding via Avisynth filters in these cases.

Appearance of banding can be made worse by playback handling as well. Depends whether banding is prominent in the source files, encoder settings and playback handling.

What were your source files from?

Thank you for answer! I recorded with a 5D Mark II and that blue thing is a random burn effect from web. I tried to blur it but it happends the same thing after render (even lossless). Is there a debanding filter in avidemux? Would be great. I Dont care about hunder of alternatives. If there is one, id go for it.

I thought gradfun was available via avidemux, otherwise maybe google on using it with ffmpeg/libav and encoding from lossless to delivery codec you want.

A mixture of debanding and dithering by adding noise or ordered dither at encoding stage both via avisynth would be my choice but requires Wine with Linux unless you go native Linux with VapourSynth.

I can probably help later if you want to go that route, others may have alternative suggestions.

Hi! Do you transcode your videos before editing? I used to have some banding problems until i started using prores transcoding on all my footage.

Transcode to prores for use in kdenlive??

miticamotanu, what version of kdenlive are you using out of interest?

I would also recommend Experimenting with different output (render) options. Most compressed formats encode color with LESS that 8 bits, through "quantization tables", which can have down to only a bit or two for the high-frequency components.

With normal video, residual random noise in the video will hide this, but if you are using artificially generated noiseless gradients, the steps will stand out. Especially if you increase the contrast of the gradient in later processing.

Yellow is there a problem with prores on kdenlive? It is working perfectly for me. I transcode it to HQ prores. The difference is visible and better than DNxHD which produced additional banding. Just a small question: Kdenlive applies effects in 8bit or can it go up to 32bit if the clip has color depth greater than 8bit?

No problem, just don't really see the point transcoding to prores other than to make editing realtime versus proxies.

As soon as we add an effect the source frame is generally converted to RGB and at the end we go back to 4:2:0 h264 or mpeg2 etc so banding once again is a risk, so just seems better to edit with native source and deal with banding if it should occur at final encode.

I'm pretty sure all effects are done in 8bit RGB, it would be useful to identify and flag any effects and filters which work at 32bit precision and color space whether RGB or YCC.

While DNxHD is a "low compression" format, at the same bitrate, it will need to use coarser quantization than an interframe format, because it cannot take advantage of interframe redundancies!
But since it usually uses much higher bitrates, this will probably compensate.

Anyway, if your gradients are internally generated (by Kdenlive), the quality of the input video shouldn't have any effect.

The order of the application of the effects might also influence banding visibility. Try removing the effects one by one, beginning with the last one, to see where in the chain the banding pops out.

As far as I know MLT is completely 8 bit, so even if the effects are more accurate internally (many Frei0rs use float), in the end, and between the effects, you go 8 bit.

As far as banding goes, 8 bit RGB is better than 8 bit YCC, because it has finer quantization steps, but that does not help very much, as in the end, 99% of the render formats are YCC.

Im using 0.9.2 version. I made that gradient using a prerendered burn effect with a lot of blur over (using screen option) some videos directly from 5D camera. I did the same thing (extracting only one frame) in GIMP and it looked as it should...smooth...no banding...but when i do this on video in kdenlive, thats the result no matter what output option.

Is the banding visible in the program monitor or only in the rendered video?

If you import the prerendered effect as a clip, is the banding visible in the clip monitor?

Maybe it appears when you add the blur?

If you can provide an example frame and the exact description of effects and settings you use, I could try to reproduce the problem, and maybe give a better diagnosis.