26

(23 replies, posted in Using SVP)

Looking forward to that update! That will be great

27

(17 replies, posted in Using SVP)

Cool smile Is there a changelog for 3.0.1?

28

(17 replies, posted in Using SVP)

Well my example isn't as good as MAG's one, but if you want the testing video I use it is here.
It is just a video with some scenes from different movies and TV shows that are difficult for interpolation scripts to handle, so it is useful for tweaking scripts smile

The part where the SSE vs GPU difference is most obvious is from 0:44 to 0:52, and that is where the screenshots from here came from smile

It looks like in this case MAG's source would be more useful, though, since his example is much more obvious.

29

(17 replies, posted in Using SVP)

They are still different with overlapping removed

30

(17 replies, posted in Using SVP)

Cool gif smile
Is it something that can be fixed/improved?

31

(17 replies, posted in Using SVP)

SSE:

Input = DSS2("filename")
Super = MSuper(Input, hpad=16, vpad=16, rfilter=4)
backward = MAnalyse(Super, blksize=16, searchparam=4, plevel=0, isb=true , badSAD=1000, overlap=4, search=3, dct=5, pelsearch=3)
forward  = MAnalyse(Super, blksize=16, searchparam=4, plevel=0, isb=false, badSAD=1000, overlap=4, search=3, dct=5, pelsearch=3)
backward = MRecalculate(Super, backward, blksize=8, searchparam=1, overlap=2, search=3, dct=5)
forward  = MRecalculate(Super, forward,  blksize=8, searchparam=1, overlap=2, search=3, dct=5)
svp_flow_lib = "C:\path\libflowsse.dll"
Finest = MFinest(Input, Super)
MSmoothFps(Input, Super, backward, forward, finest=Finest, num=48000, den=1001, algo=23, ml=0, sadml=150, sadgamma=2, block=false, blend=true)

GPU:

Input = DSS2("filename")
Super = MSuper(Input, hpad=16, vpad=16, rfilter=4)
backward = MAnalyse(Super, blksize=16, searchparam=4, plevel=0, isb=true , badSAD=1000, overlap=4, search=3, dct=5, pelsearch=3)
forward  = MAnalyse(Super, blksize=16, searchparam=4, plevel=0, isb=false, badSAD=1000, overlap=4, search=3, dct=5, pelsearch=3)
backward = MRecalculate(Super, backward, blksize=8, searchparam=1, overlap=2, search=3, dct=5)
forward  = MRecalculate(Super, forward,  blksize=8, searchparam=1, overlap=2, search=3, dct=5)
svp_flow_lib = "C:\path\libflowgpu.dll"
MSmoothFps(Input, Super, backward, forward, num=48000, den=1001, algo=23, ml=0, sadml=150, sadgamma=2, block=false, blend=true)

32

(2 replies, posted in Using SVP)

Ah ok, thanks for the response smile

33

(17 replies, posted in Using SVP)

GPU vs SSE.
You see the SSE one is sharper with small details, like the trees to the right, and the truck in the lower-middle

34

(17 replies, posted in Using SVP)

Oh ok. I was comparing them and it seems that MFinest adds some nice sharpness to the frame; retains more details. I thought it would be a cool addition smile

35

(17 replies, posted in Using SVP)

Are there any plans to support MFinest in libflowgpu too?

36

(2 replies, posted in Using SVP)

I love the sadml parameter in MSmoothFps, it is really effective.
I wonder if it would improve quality to offer a parameter to tell sadml to ignore the edges of the screen? Like sadmledges=false
It creates an almost constant blur on the edges of the screen and doesn't seem to improve accuracy there

37

(23 replies, posted in Using SVP)

If I have the choice between running a script 6% faster or not, I will choose faster wink
It's OK if you have no interest in it smile

38

(23 replies, posted in Using SVP)

I just ran a quick comparison with x264. The results are below:

http://i.imgur.com/NyCjt.png

So 32-bit gave an average 15.384fps while 64-bit an average of 16.408fps, which is a 6.241% speed increase with 64-bit.
Note that this is with everything else in 32-bit mode; only x264 is 64-bit. Theoretically there would be a larger difference in speed if the program (MeGUI) and other DLLs were 64-bit.

39

(23 replies, posted in Using SVP)

Just for speed. 64-bit builds typically perform roughly 20% faster than the 32-bit builds so that would be great smile

Yes, I agree completely that this is a breath of fresh air. It is the best thing to happen to frame interpolation in years smile

41

(23 replies, posted in Using SVP)

Just wondering if there are any plans to build 64-bit versions of the MVTools2 DLLs? smile

42

(11 replies, posted in Using SVP)

Nice one smile

43

(4 replies, posted in Using SVP)

Yes, I posted about that here too smile

44

(17 replies, posted in Using SVP)

Cool, I thought something like that but I wanted to check smile

45

(11 replies, posted in Using SVP)

Would it be possible in the next version to remove the AviSynth version check?
Your version causes encoding crashes for me and I encode a lot, so right now I have to keep installing different versions of AviSynth whenever I want to use SVP.
I know that your version has custom code, so offering a choice to the user to explain that would be great, like:
"Warning: Choosing not to install our custom build of AviSynth may affect your performance."

46

(4 replies, posted in Using SVP)

I just wrote a short review on my blog here for SVP.
I hope you guys like it and it brings more users to you smile

47

(17 replies, posted in Using SVP)

Oh also, I wonder if you have seen the newer Yushko update which isn't at that link. He was distributing it as "MVTools2 Extreme Edition".
You probably already know about it but just to make sure, the following is YFRC-06dd-01mm-2011yyyy.avsi:

# Author: RunForLife(Oleg Yushko) http://videomontazh.com.ua
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA, or visit
# http:#www.gnu.org/copyleft/gpl.html.

#LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MvTools2\mvtools2debug.dll")
#LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MaskTools2.0a36\mt_masktools-26.dll")

#If u feel bad with blending, u can turn it off: YFRC(OverlayType=1)

#####################################################################################################################################################################################################################################
function YFRC(clip clp_Input, int "BlockH", int "BlockV", int "OverlayType", int "MaskExpand")
{
#Yushko Frame Rate Converter 2x
#ColorSpace: YV12
#OverlayType: 0 - soft (blend), 1 - hard (SelectOdd)

clp_input      = ConvertToYV12(clp_input)                      # script produce YV12 colorspace (3 times faster than YUY2!!!)
clp_Super      = MSuper(clp_Input.blur(1), chroma=true, pel=2) # blur(1) - smooth edges for better analysing
ox             = clp_Input.width()
oy             = clp_Input.height()
fps_num        = FrameRateNumerator(clp_input)*2  # Numerator  , always 2X
fps_den        = FrameRateDenominator(clp_input)  # Denominator, always same as input clip

fps_num        = ((fps_num==0||fps_den==0)) ? FramerateNumerator(clp_input)*2 : fps_num
fps_den        = ((fps_num==0||fps_den==0)) ? FramerateDenominator(clp_input) : fps_den
MaskExpand     = default(MaskExpand, 1) # 1 or 2
OverlayType    = default(OverlayType, 0) # 0 - like ConvertFPS (blend); 1 - like ChangeFPS (strong);
blendSOFT      = (OverlayType==0) ? clp_Input.ConvertFPS(fps_num, fps_den).SelectOdd() : DeleteFrame(clp_Input, 0)
BlockH         = default(BlockH, 16) # use 8 for 320x240 (WEB); 16 for 720x576 (SD); 32 for 1280x720 (720p HD); 32 for 1920x1080 (1080p HD)
BlockV         = default(BlockV, 16) # use 8 for 320x240 (WEB); 16 for 720x576 (SD); 32 for 1280x720 (720p HD); 32 for 1920x1080 (1080p HD)
blendHARD      = DeleteFrame(clp_Input, 0) # SceneChange detection

bw1_vec116     = clp_Super.MAnalyse(blksize=BlockH, blksizeV=BlockV, isb = true , chroma=false, search=1, searchparam=1, truemotion=true, lambda=2000, global=true, dct=0, divide=2)
fw1_vec116     = clp_Super.MAnalyse(blksize=BlockH, blksizeV=BlockV, isb = false, chroma=false, search=1, searchparam=1, truemotion=true, lambda=2000, global=true, dct=0, divide=2)
ErrorMask16L   = MMask(clp_input, bw1_vec116, kind=1)
ErrorMask16R   = DeleteFrame(MMask(clp_input, fw1_vec116, kind=1), 0)
ErrorMask16    = Overlay(ErrorMask16L, ErrorMask16R, opacity=0.5, mode="Lighten")#.ColorYUV(gain_y=256)
SceneChange    = MSCDetection(clp_input, bw1_vec116, thSCD2=130)
FPSconverted16 = clp_input.MSimpleFlowFps(clp_input.MSuper(), bw1_vec116, fw1_vec116, num=fps_num, den=fps_den, blend=false, mask=0) #mask=0 - doesn't matter what mode is

CircleExpand   = mt_circle(radius=MaskExpand, zero=true)
CircleInpand   = mt_circle(radius=1         , zero=true)
ErrorMask16    = ErrorMask16.BicubicResize(Round((Ox/BlockH)/4)*4, Round((Oy/BlockV)/4)*4).mt_expand(mode=CircleExpand).mt_inpand(mode=CircleInpand).mt_binarize(64).Blur(1).BicubicResize(ox, oy)

ClipToReturn   = mt_merge(SelectOdd(FPSconverted16), blendSOFT, ErrorMask16, luma=true)
ClipToReturn   = mt_merge(ClipToReturn, blendHARD, SceneChange, luma=true)
ClipToReturn   = Interleave(clp_Input, ClipToReturn)

return ClipToReturn
}
#####################################################################################################################################################################################################################################

I found it to be lower quality than our scripts, but maybe there is something useful in there.

48

(3 replies, posted in Using SVP)

For sure smile I wish your project a lot of success

49

(3 replies, posted in Using SVP)

That's very generous of you guys, thanks a lot smile

50

(17 replies, posted in Using SVP)

Oh very cool. I was wondering what had changed about the mask wink Good idea