After loading the source and checking the preview, the next thing I did was looking at the source with separate fields:
I added:
clip = core.std.SeparateFields(clip, tff=True)
clipEven = clip[::2]
clipOdd = clip[1::2]
clip = core.std.StackVertical([clipEven, clipOdd])
into a custom section (and checked that the scan type was progressive).
This showed there were tons of duplicates and blends and I couldn't really see a pattern.
With enough motivation, one could probably find a pattern which would allow fixing this, or go through all the frames and replace unwanted ones with interpolations.
So I removed the custom part, and overwrote the scan type to tff and used QTGMC without Bob.
Then I cropped the source and applied Retinex (that helps with the general brightness):
# color adjustment using Retinex
clip = core.retinex.MSRCP(input=clip, sigma=[25,80,250], fulls=False, fulld=False)
followed by AutoWhite and started playing around. (
https://pastebin.com/n1sX9BWr)
About the noise, aside from throwing some heavy hitters like:
SpotLess, RemoveDirtMC, MCTermpoalDenoise, there's not much you can do aside from heavy smoothing and maybe throw some machine learning stuff at it.
The general workflow for something like this should probably be:
a. fix/replace fields/frames
b. crop
c. color and edge correction
d. denoise
Cu Selur