Posts: 18
Threads: 4
Joined: Jan 2021
Is it possible to Add FSRCNNX To Hybird in the Next Release?
I kind of like that FSRCNNX...
This thing https://github.com/igv/FSRCNN-TensorFlow/releases
It might be worth worth mentioning
https://artoriuz.github.io/blog/mpv_upscaling.html
Posts: 10.976
Threads: 56
Joined: May 2017
17.01.2021, 13:08
(This post was last modified: 17.01.2021, 13:21 by Selur.)
Got an example how to use this properly?
Atm. my best guess would be to use https://github.com/Lypheo/vs-placebo with:
clip = core.placebo.Shader(clip=clip, shader="PATH TO glsl Shader")
but I have no clue how the target resolution or similar would be set?
-> if you can provide my with information on how to use FSRCNNX with Vapoursynth I might be able to add it to Hybrid.
Okay, looking at the names I assumed 'FSRCNNX_x2_16-0-4-1.glsl' would automatically return a frame with width&height multiplied by two, but applying:
# Imports
import vapoursynth as vs
core = vs.get_core()
# Loading Plugins
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/SourceFilter/FFMS2/ffms2.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/Support/libvs_placebo.dll")
# source: 'F:\TestClips&Co\files\test.avi'
# current color space: YUV420P8, bit depth: 8, resolution: 640x352, fps: 25, color matrix: 470bg, yuv luminance scale: limited, scanorder: progressive
# Loading source using FFMS2
clip = core.ffms2.Source(source="F:/TestClips&Co/files/test.avi",cachefile="E:/Temp/avi_078c37f69bb356e7b5fa040c71584c40_853323747.ffindex",format=vs.YUV420P8,alpha=False)
# making sure input color matrix is set as 470bg
clip = core.resize.Point(clip, matrix_in_s="470bg",range_s="limited")
# making sure frame rate is set to 25
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# set output frame rate to 25.000fps
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
# convert to YUV444P16 for Shader
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P16)
# applying FSRCNNX_x2_16-0-4-1.glsl
clip = core.placebo.Shader(clip=clip, shader="I:/Hybrid/64bit/vsfilters/ResizeFilter/FSRCNNX/FSRCNNX_x2_16-0-4-1.glsl")
# Output
clip.set_output()
does not seem to do anything, so this is probably not how to apply that glsl properly.
Cu Selur
Posts: 18
Threads: 4
Joined: Jan 2021
(17.01.2021, 13:08)Selur Wrote: Got an example how to use this properly?
Atm. my best guess would be to use https://github.com/Lypheo/vs-placebo with:
clip = core.placebo.Shader(clip=clip, shader="PATH TO glsl Shader")
but I have no clue how the target resolution or similar would be set?
-> if you can provide my with information on how to use FSRCNNX with Vapoursynth I might be able to add it to Hybrid.
Okay, looking at the names I assumed 'FSRCNNX_x2_16-0-4-1.glsl' would automatically return a frame with width&height multiplied by two, but applying:
# Imports
import vapoursynth as vs
core = vs.get_core()
# Loading Plugins
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/SourceFilter/FFMS2/ffms2.dll")
core.std.LoadPlugin(path="I:/Hybrid/64bit/vsfilters/Support/libvs_placebo.dll")
# source: 'F:\TestClips&Co\files\test.avi'
# current color space: YUV420P8, bit depth: 8, resolution: 640x352, fps: 25, color matrix: 470bg, yuv luminance scale: limited, scanorder: progressive
# Loading source using FFMS2
clip = core.ffms2.Source(source="F:/TestClips&Co/files/test.avi",cachefile="E:/Temp/avi_078c37f69bb356e7b5fa040c71584c40_853323747.ffindex",format=vs.YUV420P8,alpha=False)
# making sure input color matrix is set as 470bg
clip = core.resize.Point(clip, matrix_in_s="470bg",range_s="limited")
# making sure frame rate is set to 25
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
# Setting color range to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# set output frame rate to 25.000fps
clip = core.std.AssumeFPS(clip=clip, fpsnum=25, fpsden=1)
# convert to YUV444P16 for Shader
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P16)
# applying FSRCNNX_x2_16-0-4-1.glsl
clip = core.placebo.Shader(clip=clip, shader="I:/Hybrid/64bit/vsfilters/ResizeFilter/FSRCNNX/FSRCNNX_x2_16-0-4-1.glsl")
# Output
clip.set_output()
does not seem to do anything, so this is probably not how to apply that glsl properly.
Cu Selur I Don't Have A clue how to use this In vaporsynth..But In MPV player It works perfectly...So I thought That You might be able to know about this...It's similar to MADVR NGU..
Posts: 10.976
Threads: 56
Joined: May 2017
Using:
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P16)
clip = core.placebo.Shader(clip=clip, shader="I:/Hybrid/64bit/vsfilters/ResizeFilter/FSRCNNX/FSRCNNX_x2_16-0-4-1.glsl", width=1280, height=704)
seems to work,...
Cu Selur
Posts: 18
Threads: 4
Joined: Jan 2021
(17.01.2021, 13:27)Selur Wrote: Using:
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P16)
clip = core.placebo.Shader(clip=clip, shader="I:/Hybrid/64bit/vsfilters/ResizeFilter/FSRCNNX/FSRCNNX_x2_16-0-4-1.glsl", width=1280, height=704)
seems to work,...
Cu Selur
So it is possible to Add in Hybrid?
Posts: 10.976
Threads: 56
Joined: May 2017
Yes, but question is: Is it worth it?
Looking at the output it doesn't really seem to do much,..
Cu Selur
Posts: 18
Threads: 4
Joined: Jan 2021
It's Totally worth it since it's better than Nnedi3 resizer...
FSRCNNX is true to the Source..
Mainly I like MADvr NGU upscaling..
But I somehow have low end GPU...
So I have to upscale it first...
I was using NNEDI3 for a while..
but it's not really that much good...
So i tried waifu2x..
but it's so much time consuming...
since MADVR NGU is similar to Fsrcnnx I had to request to you to add this in hybrid!
(17.01.2021, 13:37)fltasin Wrote: It's Totally worth it since it's better than Nnedi3 resizer...
FSRCNNX is true to the Source..
Mainly I like MADvr NGU upscaling..
But I somehow have low end GPU...
So I have to upscale it first...
I was using NNEDI3 for a while..
but it's not really that much good...
So i tried waifu2x..
but it's so much time consuming...
since MADVR NGU is similar to Fsrcnnx I had to request to you to add this in hybrid!
If You Don't want to add this is Completely okay..
But If You Could Help me to use this FSRCNNX then It would be awesome!
Posts: 10.976
Threads: 56
Joined: May 2017
17.01.2021, 14:35
(This post was last modified: 17.01.2021, 14:40 by Selur.)
Added a basic GLSL Resizer support, which will allow to use any of the glsl-resizers that can be used in mpc-hc, to my current dev version.
(Will send you a link via pm once I made a fresh compile and uploaded it.)
Got a .glsl file for MADVR NGU ? (I thought it was closed source and a fixed part of the MADVR)
Cu Selur
Posts: 18
Threads: 4
Joined: Jan 2021
(17.01.2021, 14:35)Selur Wrote: Added a basic GLSL Resizer support, which will allow to use any of the glsl-resizers that can be used in mpc-hc, to my current dev version.
(Will send you a link via pm once I made a fresh compile and uploaded it.)
Got a .glsl file for MADVR NGU ? (I thought it was closed source and a fixed part of the MADVR)
Cu Selur
GLSL Is not a part of Madvr..
I have a question...
That is MPC-HC doesn't support GLSL (I think)
IT only Support HLSL..
(17.01.2021, 14:44)fltasin Wrote: (17.01.2021, 14:35)Selur Wrote: Added a basic GLSL Resizer support, which will allow to use any of the glsl-resizers that can be used in mpc-hc, to my current dev version.
(Will send you a link via pm once I made a fresh compile and uploaded it.)
Got a .glsl file for MADVR NGU ? (I thought it was closed source and a fixed part of the MADVR)
Cu Selur
GLSL Is not a part of Madvr..
I have a question...
That is MPC-HC doesn't support GLSL (I think)
IT only Support HLSL..
As I know Only MPV works With GLSL..
Posts: 10.976
Threads: 56
Joined: May 2017
17.01.2021, 14:47
(This post was last modified: 17.01.2021, 14:50 by Selur.)
Oh, okay.
Don't think there's support for HLSL in Vapoursynth.
So other glsl filters would work but not the hlsl filters.
Cu Selur
Ps.: it might be possible to convert .hlsl into .glsl, see: https://www.gamasutra.com/blogs/EgorYuso...verter.php
|