Greetings tormento.
Good advice, thanks. I'll have a look. I don't know if it uses a full 3D NLM or if it just hacks in some kind of temporal filter. I'm close to deciding not to bother anyway, unless someone shows me a clip that really needs the temporal component.
Exposing the search size and patch size by making them parameters is not so easy when the loops are unrolled at compile time (loop unrolling gives a massive speed-up). I could provide a set of selectable kernels with different fixed parameters (call them presets). What fixed parameter sets would be useful for you?
I've been looking for ways to make NLM separable, as that could give a substantial speed-up. One paper I saw does it by recasting NLM as a convolution, but I'm still grokking the details.
BTW, I added licensing checks to DGDecodeNV.dll in order to protect included standalone filters that don't depend on a DGI file. I want to reward only legit and loyal DG users (and not people at other forums that abuse me with full support of the administrators; at my core I am a decent, generous guy, but I hit back hard when attacked). Anyway, gonca kept asking me to add licensing.
