Skip to content

Fix Vectorscope zooming artifacts on high zoom level

When zoomed (gain > 1.0) we did not plot additional pixels in the zoomed region so those remain as fill color producing visible artifacts making it hard to see anything on the scope.

Fixed by interpolating these additional in-between pixels so we get a smooth continuous view without artifacts.

Using QImage SmoothTransformation method here for a smooth/blurry look. With FastTransformation we'd be 2x faster but compared to the time it takes to draw the vectorscope overall the scaling time doesn't really matter.

Testing on a 1080p clip:

Before:

101_000 us

no_transformation

After:

102_000 us

This includes scaling with SmoothTransformation which itself took 700 us.

smooth_transformation

Interpolation Method:

I went with SmoothTransformation but other options would be possible.

FastTransformation would be faster at around 300 us. But given the time it takes to draw the unscaled Vectorscope this gain is pretty much negligible.

This is how it would look using FastTransformation instead of Smooth:

fast_transformation

This is what it looks like in Davinci Resolve: https://youtu.be/m1F9TJzfo1s?feature=shared&t=483

Too me this looks blurry so I guess they use Bilinear/Smooth interpolation.

@emohr was in favor (via Chat) of following Davinci here.

Merge request reports

Loading