bjin / mpv-prescalers

prescalers for mpv, as user shaders
GNU Lesser General Public License v3.0
355 stars 34 forks source link

add SmoothD2 #33

Closed Eignar17 closed 5 years ago

Eignar17 commented 5 years ago

SmoothD2 I'd be grateful if the filter was ported to mpv-prescalers or mpv

view result in to videos. Captura de pantalla -2019-03-24 18-16-13

new upscale free to blocks colors and clean image please implement SmoothD2 in your project

page to pluging avisynth SmoothD2

http://avisynth.nl/index.php/SmoothD2

@bjin

bjin commented 5 years ago

Did a quick look, this algorithm isn't exactly a good fit to be implemented as a shader, especially with the 8x8 block IDCT part.

I'm not against adding a deblock/dering filter though, but if I plan to add one, I would probably choose a filter based on CNN network. Both NGU(madVR) and FSRCNNX(mpv) could reduce (or be configured to reduce) compression artifacts during upscaling. And I believe it's very straightforward to modify their model a bit and make them reduce compression artifacts only without upscaling (just remove the last sub-convolution layer which perform the actual upscaling). As for the training dataset, transcoding a high bitrate video to low bitrate with x264/x265 would probably work fine. This approach is much more robust, and could potentially fix any type of compression artifacts instead of those only appears in super low bitrate JPEG files.