Re: SVP with AviSynth 2.6 or AviSynth+ ?

Mystery
Since you embed MPC-HC into SVP's package, you can have it patched.

Not sure it's legal.

Re: SVP with AviSynth 2.6 or AviSynth+ ?

one more time - mpc-hc IS patched
always

78 (edited by fuck_yeah 02-01-2016 17:26:34)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

AviSynth+ r1779 (March 17, 2015) also works normaly with MT enabled in 64 bit programms using InterFrame 2.8.2 and 64 bit svpflow*.dll from http://www.svp-team.com/files/gpl/svpflow-1.1.17.zip

SetFilterMTMode("DEFAULT_MT_MODE", 2)
potplayer_source()
LoadPlugin("C:\Program Files (x86)\AviSynth\plugins64\InterFrame\Dependencies\svpflow1.dll")
LoadPlugin("C:\Program Files (x86)\AviSynth\plugins64\InterFrame\Dependencies\svpflow2.dll")
Import("C:\Program Files (x86)\AviSynth\plugins64\InterFrame\InterFrame2.avsi")
InterFrame(Preset="Medium", Tuning="Film", GPU=false, Cores=4)
Prefetch(4)

script for Potplayer 64 bit - you have to add it to the player's settings "F5, Video/AviSynth" (it can also be used with ffdshow raw video decoder in other players - check "Add ffdshow video source" in it's configuration and delete potplayer_source() in the script)

But it doesn't work with GPU acceleration when using 64 bit programs (so it's disabled)
p.s.  AviSynth+ r1825 (March 23, 2015) doesn't work with ffdshow

Re: SVP with AviSynth 2.6 or AviSynth+ ?

fuck_yeah wrote:

InterFrame(Preset="Medium", Tuning="Film", GPU=false, Cores=4)

But it doesn't work with GPU acceleration when using 64 bit programs (so it's disabled)

The same with MPC-HC however GPU acceleration will turn-on with MPC-BE

Re: SVP with AviSynth 2.6 or AviSynth+ ?

fuck_yeah wrote:

But it doesn't work with GPU acceleration when using 64 bit programs (so it's disabled)

What do you mean with that? Do you mean that GPU acceleration is GPU decoding like decoding 8-bit video?
If yes, keep in mind that when using SVPFlow, you already cannot use GPU decoding.

If you mean GPU assisted computation, it works with 64-bit programs/codecs chain. I've been using it for months already.
If it cannot, there's no reason I choose to use SVPFlow x64 over SVP Manager.

While InterFrame seems easy to use based on your script, the moment you use the script it would be meaningless if you have less freedom in tweaking the setting.
I would advise to use SVSuper, SVAnalyse and SVPSmoothFps directly.

81 (edited by MistahBonzai 10-01-2016 17:18:24)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

I been using SVP within a AviSynth (AVS-MT and AVS+) script wherein I also call nnedi3 along with some other simple filters.  Been doing this for at least a year now with MPC-BE and MPC-HC with the MadVR renderer - 32-bit versions works fine once I match the .dll files.  Once I had access to 64-bit versions of the svpflow1&2 .dll files I couldn't wait to try out 64-bit versions of MPC-HC and -BE. MPC-BE worked fine - I could see the sizeable differences in CPU, and to a lesser extent GPU, utilization when enabling /disabling GPU:0/1 in the AviSynth script. Unfortunately MPC-HC 64-bit kicks the following error with gpu:1 (enabled): "SVSmoothFps: unable to init GPU based renderer [code 0x10000]. The specific line referenced is: "{scale:{up:0},gpu:1,rc:true}". Works fine with gpu:0

I figured it was unique to my configuration (i7-3770, AMD hd-7850 various Radeon drivers - now with 15.11 Crimson, windows 7 latest patches) until I read the previous post by fuck_yeah. If 64-bit MPC-HC/MadVR/ffdshow raw/AviSynth works for you I would luv to see your script. TIA smile

Update 10-01-2016
FIXED IT: AMD drivers for my HD 7850. Uninstalled the latest Crimson drivers pkg and installed the final pre-crimson drivers (15.7.1) and all is fine now (GPU acceleration works from AviSynth script in ffdshow).

82 (edited by mashingan 03-01-2016 06:46:45)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

MistahBonzai
I've shared my configuration script in this post, http://www.svp-team.com/forum/viewtopic … 563#p55563
My system is far inferior compared to yours, see the pict

Attached too the performance comparison between 32bit vs 64bit, the tested video duration only 01:40 though.

PS: I am using ffdshow from K-Lite codecs.

Post's attachments

sys_summary.png, 53.06 kb, 640 x 577
sys_summary.png 53.06 kb, 711 downloads since 2016-01-03 

x32_v_x64.png 89.71 kb, 238 downloads since 2016-01-03 

83 (edited by MistahBonzai 04-01-2016 01:41:52)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

OK.. I configured the folders and paths to replicate the 3 AVS files approach you utilized. Then verified that it worked with MPC-BE (with and without the GPU via the GPU:1 or 0 switch.  Satisfied that SVP worked as expected I moved on to MPC-HC. And once again I was foiled by the inability to enable GPU in the svp64_1080p.avs script.

Just so we are on the same page I'll post a sample of the single script approach which I use - keep in mind my display is 1080p/60HZ, I load the file in ffdshow raw video filter via AviSynth support and I use only the svpflow 1&2 .dll files from SVP and not the manager or other associated files. My bottom line is MPC-BE works with/without GPU enabled while MPC-HC works only without the GPU acceleration.

Oh yeah, and a big thanks for the script samples as they give me ideas on how to 'if than' my single script into relevant sections based on resolution rather than on the fly edits smile

# *******************************************************************************************************
# **Global SVP w/auto refreash rate (Good for AVS+ 64-bit - with smoothing (SVP script by yan04000985) **
# *******************************************************************************************************
# Check http://www.svp-team.com/wiki/Plugins:_SVPflow for more setting details.
# Check http://www.svp-team.com/wiki/SVP:Profile for more setting details.
#
# Supporting 64-bit dll's
# AviSynth is AviSynth+0.1 (r1779)
# nnedi3.dll is v0.9.4.20
# SVPflow plugins are SVPFlow1 2.0.4.0 7/8/2015 - SVPFlow2 2.0.3.0 10/30/2015
#
SetMemoryMax(4000)
threads=8 #PC threads*1.5/2
#
LoadPlugin("C:\Program Files\MPC-BE x64\plugins64\svpflow1.dll")
LoadPlugin("C:\Program Files\MPC-BE x64\plugins64\svpflow2.dll")
PluginPath="C:\Program Files\MPC-BE x64\plugins64\"
LoadPlugin(PluginPath+"nnedi3.dll")
#
SetFilterMTMode("DEFAULT_MT_MODE",2)
SetFilterMTMode("ffdShow_source",3)
ffdShow_source()
#
#nnedi3 64-bit
nnedi3_rpow2(rfactor=2,cshift="Spline36Resize",fwidth=Width()*1,fheight=Height()*1,nsize=0,nns=2,qual=1) #No change in size
#
#Begin SVP script framework - credit to yan04000985
#
video_fps = last.Framerate
Your_screnn_refresh_rate    = "60"            # or your target frame rate
Frames_interpolation_mode   = "3"             # Uniform:0 1m:1 2m:2 adaptive:3
SVP_shader                  = "13"            # 1/2/11/13/21/23
Decrease_grid_step          = "{thsad:250}"   # By two with global refinement {thsad:250}\{thsad:4000}\{thsad:65000},{thsad:65000}\{thsad:65000} To small step 6-8 px
Target_frame_rate           =  0              # 0 = To screen refresh rate , 1 = original video frame rate , 2 = original video frame rate x2 , 3 = original video frame rate x3
Blend_adjacent_frames       = "false"
super_params     = "{scale:{up:2,down:4},gpu:1,full:true,rc:false}"
analyse_params   = "{block:{overlap:2,w:16,h:16},main:{levels:3,search:{coarse:{distance:-24,bad:{sad:750,range:-32},trymany:false,width:1921},distance:-24,sort:true},penalty:{lambda:10.5,plevel:1.6,lsad:3500,pnew:50,pglobal:50,pzero:100,pnbour:40,prev:30}},refine:["+Decrease_grid_step+"],vectors:3}"
smoothfps_params = Target_frame_rate > 0                                                          ? 
\                  "{rate:{num:"+String(Target_frame_rate)+",den:1,abs:false},algo:"+SVP_shader+",mask:{cover:70,area:100,area_sharp:1.65},scene:{mode:"+Frames_interpolation_mode+",blend:"+Blend_adjacent_frames+"}}"
\                : video_fps == 24000/1001 || video_fps == 25000/1001 || video_fps == 48000/1001 || video_fps == 30000/1001  ? 
\                  "{rate:{num:"+Your_screnn_refresh_rate+"000,den:1001,abs:true},algo:"+SVP_shader+",mask:{cover:70,area:100,area_sharp:1.65},scene:{mode:"+Frames_interpolation_mode+",blend:"+Blend_adjacent_frames+"}}"
\                : "{rate:{num:"+Your_screnn_refresh_rate+",den:1,abs:true},algo:"+SVP_shader+",mask:{cover:70,area:100,area_sharp:1.65},scene:{mode:"+Frames_interpolation_mode+",blend:"+Blend_adjacent_frames+"}}"
input = last
#
super=SVSuper(input, super_params)
vectors=SVAnalyse(super, analyse_params, src=input)
SVSmoothFps(input, super, vectors, smoothfps_params, mt=threads, url="www.svp-team.com")
Prefetch(threads)
#end

84 (edited by mashingan 04-01-2016 08:21:14)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

MistahBonzai
Since you have an i7, the optimum threads is 19.

Have you ever tried to move the plugins64 to folder which not in MPC-BE folder?
In my case, I put the SVP1.dll and SVP2.dll x64 in "C:\Program Files (x86)\SVP\plugins\x64".

What version of MPC-HC do you have? Mine is 1.7.10.40, see the pic.

p.s.: My MPC-HC (32bit and 64bit) comes from K-Lite and all others necessary codec chain. It works too with MPC-BE (32bit and 64bit) without installation.

Edit: I've tried your script. Except changing width and height from 16 to 32 and disable nnedi3_rpow2, it works without problem both MPC-HC and MPC-BE.

Post's attachments

mpchc-version.png, 14.62 kb, 392 x 362
mpchc-version.png 14.62 kb, 718 downloads since 2016-01-04 

Re: SVP with AviSynth 2.6 or AviSynth+ ?

mashingan wrote:

MistahBonzai

1. Since you have an i7, the optimum threads is 19.
I usually use 15 or there abouts but was messing around with the script and copied from the session.

2. Have you ever tried to move the plugins64 to folder which not in MPC-BE folder?
That is next on my adgenda now that I know MPC-HC x64 works for you.

3. In my case, I put the SVP1.dll and SVP2.dll x64 in "C:\Program Files (x86)\SVP\plugins\x64".
See 2 smile

4. What version of MPC-HC do you have? Mine is 1.7.10.40, see the pic.
Same here.

5. p.s.: My MPC-HC (32bit and 64bit) comes from K-Lite and all others necessary codec chain. It works too with MPC-BE (32bit and 64bit) without installation.
All mine are the latest nightly builds from the individual projects. I'm thinking maybe a registry issue (K-Lite may be 'woven together' such that the issue is avoided) but then again MPC-HC x86 is fine.

6. Edit: I've tried your script. Except changing width and height from 16 to 32 and disable nnedi3_rpow2, it works without problem both MPC-HC and MPC-BE
Good deal - I usually use width/height of 32 and overlap of 1 with 1080p. I drop it down to 16/2 on 720p and kick in the nnedi3. Thank you so much for testing everything on your configuration. smile  Now I have a better idea where to look.
.

Re: SVP with AviSynth 2.6 or AviSynth+ ?

K-Lite? Does someone still use it?))

Re: SVP with AviSynth 2.6 or AviSynth+ ?

fuck_yeah wrote:

K-Lite? Does someone still use it?))

I do not see anything wrong in the use of K-Lite Standard, especially if you are new to smooth motion.

Re: SVP with AviSynth 2.6 or AviSynth+ ?

fuck_yeah wrote:

K-Lite? Does someone still use it?))

I do, for the sake of convenience.

It's just like aptitude or apt-get in Ubuntu Linux or pacman in Arch Linux.
While I still can do without those package managers, it's certainly convenience to have/use those.

Re: SVP with AviSynth 2.6 or AviSynth+ ?

How do I configure SVP 4 with MPC-HC and ffdshow 32bit for AviSynth+ ?

90 (edited by fuck_yeah 07-01-2016 01:23:39)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

maruschade wrote:

How do I configure SVP 4 with MPC-HC and ffdshow 32bit for AviSynth+ ?

instruction https://www.svp-team.com/wiki/SVP:MPC-HC
and just install AviSynth+ r1779 (March 17, 2015)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

fuck_yeah wrote:

K-Lite? Does someone still use it?))

Are you saying if we use SVP 4, K-Lite codec is not required?

Re: SVP with AviSynth 2.6 or AviSynth+ ?

Teiji wrote:

Are you saying if we use SVP 4, K-Lite codec is not required?

you need only svp4, ffdshow, avisynth and player

Re: SVP with AviSynth 2.6 or AviSynth+ ?

I realized that when playing an AviSynth script with AviSynth 2.6 MT, there is a very slight delay between the audio and video (~1.6ms)

So I'm trying again with AviSynth+ MT and the delay is gone when playing 60fps video files.

However, SVP doesn't sync audio and video with AviSynth+. What do I need to do to make is sync? I remember I read something somewhere about enabling AviSynth Buffer in ffdshow settings, which I did but that didn't help.

94 (edited by Nintendo Maniac 64 14-01-2016 09:15:08)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

Mystery wrote:

~1.6ms

Uhhhh, is that a typo?  Because that's quicker than a single frame even on a 144Hz monitor... How would you even perceive that?

Re: SVP with AviSynth 2.6 or AviSynth+ ?

The delay varies from video to video.

I found out that the issue is with TimeStretch

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

This is NOT a sample exact plugin. If you use it, slight inaccuracies might occur. Since we are dealing with float values rounding errors might occur, especially on large samples. In general however inaccuracies should not exceed a few 10's of milliseconds for movielength samples.

There is no delay if I instead use this script; but then it slightly slows down playback speed.

V=AssumeFPS(432.0/440.0*FrameRate)
A=AssumeSampleRate(int(432.0/440.0*AudioRate))
AudioDub(V, A)

In any cases, I'd like to get my AviSynth+ to work. Who has got it working, and how did you do?

Re: SVP with AviSynth 2.6 or AviSynth+ ?

Mystery
How many last/ahead buffer did you fill in ffdshow avisynth tab?

Of course you're using Avisynth+ r1779 mt, right?

Re: SVP with AviSynth 2.6 or AviSynth+ ?

Yes I'm using r1779. I have enabled AviSynth Buffer back/ahead with 10/10 (default).

Even with that enabled, it still doesn't sync.

Re: SVP with AviSynth 2.6 or AviSynth+ ?

Try to add it to 20/20.

99 (edited by MistahBonzai 15-01-2016 08:15:55)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

Using AviSynth mt (x86) and AviSynth+ (x64) and both seemingly work fine. Note: I don't watch long feature movies - if I can play a short 20 minute video by an independent filmmaker without audio/video problems I'm jazzed smile

That said I just finished watching Little Hurricane perform "Crocodile Tears"  https://www.youtube.com/watch?v=o74iygYCXDw (I have it local on my media drive). I specifically looked for audio issues and the sync was right on with the video using the attached AviSynth script.

The software involved was Windows 7 sp1, MPC-HC (x64) 1.7.10.56 (nightly), madVR v0.90.2, fdshow raw video filter rev4533 (sep 29 2014) with buffers set to 3 back and 10 ahead, LAV Video and Spliter Source 0.67.0.58-git.

The hardware is i7-3770 @ 3.40 GHz, AMD HD 7850 with Catalyst 15.7.1 (had problems with Crimson as I couldn't get GPU:1 to work in the AviSynth script) and Logitech G930 7.1 Wireless headset.

There, I think that should do it...

# *******************************************************************************************
# **Global SVP w/auto refresh rate (Good for AVS+ 64-bit - with smoothing (SVP script by yan04000985) **
# *******************************************************************************************
# Check http://www.svp-team.com/wiki/Plugins:_SVPflow for more setting details.
# Check http://www.svp-team.com/wiki/SVP:Profile for more setting details.
#
# Supporting 64-bit dll's
# AviSynth is AviSynth+0.1 (r1779)
# nnedi3.dll is v0.9.4.20
# SVPflow plugins are SVPFlow1 2.0.4.0 7/8/2015 - SVPFlow2 2.0.3.0 10/30/2015
#
SetMemoryMax(4000)
threads=12 #PC threads*1.5/2
#
LoadPlugin("C:\Program Files (x86)\SVP\Plugins\x64\svpflow1.dll")
LoadPlugin("C:\Program Files (x86)\SVP\Plugins\x64\svpflow2.dll")
PluginPath="C:\Program Files (x86)\SVP\Plugins\x64\"
LoadPlugin(PluginPath+"nnedi3.dll")
#
SetFilterMTMode("DEFAULT_MT_MODE",2)
SetFilterMTMode("ffdShow_source",3)
ffdShow_source()
#
#nnedi3 64-bit
#nnedi3_rpow2(rfactor=2,cshift="Spline36Resize",fwidth=Width()*1,fheight=Height()*1,nsize=0,nns=2,qual=1) #No change in size
#nnedi3_rpow2(rfactor=2,cshift="Spline16Resize",fwidth=Width()*4,fheight=Height()*4,nsize=0,nns=2,qual=2) #No change in size
#
#Begin SVP script framework - credit to yan04000985
#
video_fps = last.Framerate
Your_screnn_refresh_rate    = "60"            # or your target frame rate
Frames_interpolation_mode   = "3"             # Uniform:0 1m:1 2m:2 adaptive:3
SVP_shader                  = "13"            # 1/2/11/13/21/23
Decrease_grid_step          = "{thsad:250}"   # By two with global refinement {thsad:250}\{thsad:4000}\{thsad:65000},{thsad:65000}\{thsad:65000} To small step 6-8 px
Target_frame_rate           =  0              # 0 = To screen refresh rate , 1 = original video frame rate , 2 = original video frame rate x2 , 3 = original video frame rate x3
Blend_adjacent_frames       = "true"
super_params     = "{scale:{up:2,down:4},gpu:1,full:true,rc:true}"
analyse_params   = "{block:{overlap:2,w:32,h:32},main:{levels:3,search:{coarse:{distance:-14,bad:{sad:2000,range:-32},trymany:false,width:1921},distance:-24,sort:true},penalty:{lambda:10.5,plevel:1.6,lsad:3500,pnew:50,pglobal:50,pzero:100,pnbour:40,prev:30}},refine:["+Decrease_grid_step+"],vectors:3}"
smoothfps_params = Target_frame_rate > 0                                                          ?
\                  "{rate:{num:"+String(Target_frame_rate)+",den:1,abs:false},algo:"+SVP_shader+",mask:{cover:70,area:100,area_sharp:1.65},scene:{mode:"+Frames_interpolation_mode+",blend:"+Blend_adjacent_frames+"}}"
\                : video_fps == 24000/1001 || video_fps == 25000/1001 || video_fps == 48000/1001 || video_fps == 30000/1001  ?
\                  "{rate:{num:"+Your_screnn_refresh_rate+"000,den:1001,abs:true},algo:"+SVP_shader+",mask:{cover:70,area:100,area_sharp:1.65},scene:{mode:"+Frames_interpolation_mode+",blend:"+Blend_adjacent_frames+"}}"
\                : "{rate:{num:"+Your_screnn_refresh_rate+",den:1,abs:true},algo:"+SVP_shader+",mask:{cover:70,area:100,area_sharp:1.65},scene:{mode:"+Frames_interpolation_mode+",blend:"+Blend_adjacent_frames+"}}"
input = last
#
super=SVSuper(input, super_params)
vectors=SVAnalyse(super, analyse_params, src=input)
SVSmoothFps(input, super, vectors, smoothfps_params, mt=threads, url="www.svp-team.com")
Prefetch(threads)
########### END OF MSMoothFps.avs ###########
#end

100 (edited by MistahBonzai 16-01-2016 04:33:27)

Re: SVP with AviSynth 2.6 or AviSynth+ ?

Once again I upgraded AMD HD 7850 drivers from Catalyst 15.7.1 to Crimson 16.1 (latest hotfix) and once again the GPU Renderer (GPU:1) can't be initialized via AviSynth script within ffdshow raw video. This applies to my MPC-HC x64/madVR/LAV configuration.

MPC-BE x64 and x86 work just fine along with MPC-HC x86. When using the AMD HD 7850 15.7.1 drivers all work fine. I've played with different 64-bit AviSynth.dll files in C:\Windows\System32 but makes no difference.

I hate to stay stuck at Catalyst 15.7.1 but I'll revert until a solution is found. So, if you have successfully utilized the AMD Crimson drivers (now 16.1) with an SVP x64 configuration via AviSynth script (super_params = "{scale:{up:0},gpu:1,rc:true}") please let me in on it smile

Note: Keep in mind that the problem configuration is strictly MPC-HC x64. MPC-BE x64 is fine. Backing madVR out by switching to EVR-CP makes no difference. Error msg is [code 0x10000)  See Attached screen clip:

Post's attachments

Capture.JPG, 20.92 kb, 683 x 51
Capture.JPG 20.92 kb, 600 downloads since 2016-01-15