I had some capture issue in OBS, where during certain parts of my screen capture some windows flicker.
Here's a sample of the affected footage:
I think this should be at least to some degree correctable algorithmically, but I don't know the tools to implement that.
Basically for every pixel in the video stream I'd have to do this:
# we need to compare the same pixel in three consecutive frames
A = pixels[x,y, current_frame]
B = pixels[x,y, current_frame + 1]
C = pixels[x,y, current_frame + 2]
# if two border pixel values are identical, but the middle one is different - we assume that to be a flicker, so we replace the middle frame with the first one
if A == C and B != A:
pixels[x,y, current_frame + 1] = pixels[x,y, current_frame]
# let's move onto the next frame
current_frame += 1
I wonder if this is possible to do with GLSL - I don't know if it has access to frame history...
Are there any (preferably free, open-source and running on Linux) tools that could do this?