View Full Version : InterFrame 2.8.2 - Framedoubling/60FPS/HFR conversion script
Pages :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[
17]
18
19
20
Sparktank
10th March 2015, 07:34
2.8.0.1
(it will probably be released as v2.8.1)
So close! :p
Wasn't entirely sure the udpate would be dire to InterFrame, but always nice for archival puproses. :)
SubJunk
10th March 2015, 08:04
Hahaha, I only did a different version to be difficult ;)
kide13
11th March 2015, 15:22
Thanks SubJunk, chainik_svp and others, this is very cool for most of scenes, i've only some problems with very fast moves,
I'm using this script with last dlls:
Setmemorymax(2048)
SetMTMode(3,12)
PluginPath = "C:\Program Files (x86)\MeGUI\tools\avisynth_plugin\"
LoadPlugin(PluginPath+"svpflow1.dll")
LoadPlugin(PluginPath+"svpflow2.dll")
Import(PluginPath+"InterFrame2.avsi")
<input>.ConvertToYV12()
SetMTMode(2)
<deinterlace>
<crop>
<denoise>
<resize>
InterFrame(Cores=12, FrameDouble=true, GPU=true, Tuning="Smooth")
I saw on svp doc some "limits" parameters like "scene" and "block"
Can i use this parameters in the script ? and is it usefull ?
I would remove artifacts from very fast move or remove some frames maybe ? actually i've 48 fps but is it possible to skip some frames ? i could have 45 fps if some frames are skiped ?
ex: very fast move from pocket to the mouth
original: http://img11.hostingpics.net/pics/45444501LeRveil1repartiemkv001139168.jpg
interpolated frame i would fix or skip: http://img11.hostingpics.net/pics/70517501LeRveil1repartiemkv001139189.jpg
orignial http://img11.hostingpics.net/pics/90874201LeRveil1repartiemkv001139198.jpg
for fun http://img11.hostingpics.net/pics/51916601LeRveil1repartiemkv001140866.jpg
Thanks for your help.
SubJunk
11th March 2015, 21:23
kide13 if you remove Tuning="Smooth" you may like it more. It's subjective though. If you want to get more advanced, you can always edit InterFrame2.avsi to use whatever SVP commands you want
kide13
11th March 2015, 21:44
I used "smooth" preset cause i got artifacts with "Film" preset too :( but ty for your help i'll look at InterFrame2.avsi, i guess there is no perfect preset so i have to play with parameters, i'm working on the tv show "Lost" with lot of scenes in jungle so that's not easy ;)
LilScrappy
22nd March 2015, 19:10
Any progress with ghosting to be masking or invisible, when use for 23.976 materials to be 60fps ?
TCmullet
1st May 2015, 16:59
...12/2012 I was able to acquire a custom-assembled i5-2400S quad-core. I do HD capture and all processing of video files there. ... It's worked great til this OpenCL issue.
I put the Evga 210 into the i5 thinking "all will be well". Failed to even come up after I changed the bios from "built-in adapter" to "auto".
Then I found the answer to everything. Evga box says "This graphics card requires: 300 watt or greater power supply with a minimum of 18 amps on the +12 volt rail". Not a problem. I'm "sure" the builder put one bigger than that in there. But had to be sure. Took case off, and drat, can't see labelling. Had to partially lift the supply out of the case to read this:
Output: 250W max
+12v: 14A
Raaaaaaaaats!
Following up from Feb. debacle above, I've finally been able to acquire a 500w supply plus another Evga 210. Ahhhh, GPU=T R U E !
Sorry to have wasted that entire discussion about Open-CL, etc. Just needed a non-builtin video adapter, plus a big enough power supply to support. (Have a nifty Evga 500 watter, 3 yr warranty. Cool.)
So I will be proceeding with heavy GPU processing now! Thanks to all for the various helps, both then and in future.
TCmullet
1st May 2015, 22:31
Hahaha, I only did a different version to be difficult ;)
I'll make it more difficult. You left the source code comments at the top to say "2.8.1" instead of "2.8.0.1". :)
SubJunk
1st May 2015, 23:50
Glad you got the GPU mode working, and you're right about the versioning! Well now 2.8.1 is correct, it was just on a time delay ;)
2.8.1 is released, which updates SVP dependencies which increased speed by up to 15%
chainik_svp
5th May 2015, 22:02
There's a little confusing option in the latest libraries (starting from ver.2.0.0 of svpflow1/2)
search.main.coarse.width = 1050 by default
Default value leads to the very high CPU load for videos with the frame width less than 1050 pixels
Like 1.5 times higher compared to any previous libraries version
To get an old behavior one should set the option to zero.
Still it is very useful for 2K/4K videos so we'll revise default value in the next update.
aegisofrime
10th May 2015, 06:25
Hi, just wondering has anyone tried BlueskyFRC?
http://bluesky23.yukishigure.com/BlueskyFRC.html
Apparently it uses AMD Fluid Motion in Radeon GPUs to do the same thing that InterFrame does.
I'm wondering how's the quality of it. If it's good perhaps some work can be done to see if it can be used within InterFrame :)
Motenai Yoda
17th May 2015, 01:26
Hi, I've not update filters chain lately but with the last I get some nasty artifacts on the right...
mark0077
18th May 2015, 21:50
Guys, are there any documents that describe in lay mans terms what overlap setting means. I'm trying to see which I will use for my realtime playback settings. My machine can't handle Interframe defaults of 8 block size and 2 overlap. It can however handle 8 block, 0 overlap and 16 block with 2 overlap.
I just find it hard to decide which is better. Sometimes I think the higher block size of 16 actually looks better than block size of 8, with same overlap. I guess smaller isn't always better.
johnmeyer
18th May 2015, 22:29
Frame rate conversion often works better, in my experience, with larger block sizes, whereas I have found that smaller block sizes are better for denoising. That certainly is not a hard and fast rule, and others may disagree.
My understanding of overlap, which I'm sure is not entirely correct, is that it keeps you from having discontinuities when "things happen" at the boundaries between the blocks that the picture is broken up into.
This gets into the reason why we have blocks in the first place.
The underlying problem that I think is the reason for blocks is that if you were to analyze every pixel individually, that pixel has almost no information as to what the picture looks like. However, if you take a 4x4 pixel "block," you can begin to see (and so can the software) some structure that is recognizable as something, and which needs to be moved, duplicated, or denoised, depending on what you're doing with the motion estimation. The bigger the block size, the more recognizable the thing becomes, but it also means that everything within that block is going to be treated the same which eventually (as the block size is increased) will produce strange artifacts. One solution is to create multiple blocks that have different boundaries (e.g., pixels 1,2,3,4 in the horizontal and vertical direction, followed by 3,4,5,6 rather than 5,6,7,8,9). The software then overlaps these blocks, although I have no idea how the outcomes and calculations are done.
It is pretty clear that some overlap is going to produce better results, but not at all clear whether an overlap of 4 is going to produce significantly better results than 2.
You pretty much have to experiment, and I generally experiment each time I do a new project, because the nature of the video is also going to affect the end result.
mark0077
18th May 2015, 22:33
Wow thanks for the explanation. Yeah I think 16 blocks is looking better to be honest. Its of course frustrating that some scenes seem to benefit greatly from one setting, while causing negative effects in another :D
I think I'll stick with 16 blocks but as you say its not so clear whether overlap of 1, 2 or even 4 should be better or could even be worse than eachother.
I actually have purchased the Blu-Ray of Goldeneye (one of my old favs) and notice the first section where Bond walks with the gun sights (white circle moving on black background) even seems very challenging for SVP. Its very hard to find a setting where the white circle doesn't flicker or breakup. I guess more experimenting needed :D
SubJunk
21st May 2015, 07:14
InterFrame 2.8.2 is released, which improves speed by updating SVP dependencies. Thanks, SVP!
sofakng
12th June 2015, 16:46
I've compiled the latest FFmpeg with AviSynth support (so I can use InterFrame and SVP), but FMpeg says that it requires AviSynth 2.6 RC1 (or later), or AviSynth+ r1718 (or later).
Does AviSynth 2.6 (from here: http://sourceforge.net/projects/avisynth2/files/AviSynth_Alpha_Releases/AVS_2.6.0/) work with InterFrame and SVP?
Groucho2004
12th June 2015, 17:33
Does AviSynth 2.6 (from here: http://sourceforge.net/projects/avisynth2/files/AviSynth_Alpha_Releases/AVS_2.6.0/) work with InterFrame and SVP?
Interframe/SVP should work with any Avisynth version from 2.5.8 onwards. The plugins still use a avisynth.h with AVISYNTH_INTERFACE_VERSION 3.
sofakng
12th June 2015, 18:57
Thanks!
Should InterFrame/SVP be using all available CPU or is it limited in some way?
For example, I'm using ffmpeg with avisynth (2.6 mt) and interframe/svp. I'm using the NVidia encoder (nvenc) which performs h264 encoding on the GPU. If I don't use InterFrame, the video encodes at ~130 FPS with only 20 - 30% CPU.
However, once I add InterFrame (and still use nvenc/gpu encoding), the CPU stays at 30 - 40% and the encoding goes to 10 FPS.
Is this normal? I'm using "CORES=4" and SetMTMode(2,4). I have a quad-core cpu and I've tried increasing the CORES to 8 and higher but it has no affect.
Braum
9th July 2015, 14:31
Same problem here !
I use this script for realtime rendering :
SetMemoryMax(2048)
SetMTMode(3,4)
SetMTMode(2)
InterFrame(Cores=4, Preset="Faster", NewNum=30000, NewDen=1001, GPU=true, Tuning="Film")
My CPU and GPU are always around 40% but never over 50%.
If I change the preset to "Fast" my CPU and GPU stay around 40% and I got dropped frame, can't render at 29.97 fps :/
Why can't the cpu & gpu load go over 50% ?
With SVP I get around 70-95% for both cpu&gpu.
I can provide screenshots if needed.
:thanks:
edit : My rig : i5 3570K @4.2Ghz | AMD 7870XT OC drivers up to date.
Groucho2004
9th July 2015, 15:36
Same problem here !
I use this script for realtime rendering :
SetMemoryMax(2048)
SetMTMode(3,4)
SetMTMode(2)
InterFrame(Cores=4, Preset="Faster", NewNum=30000, NewDen=1001, GPU=true, Tuning="Film")
My CPU and GPU are always around 40% but never over 50%.
If I change the preset to "Fast" my CPU and GPU stay around 40% and I got dropped frame, can't render at 29.97 fps :/
Why can't the cpu & gpu load go over 50% ?
With SVP I get around 70-95% for both cpu&gpu.
I can provide screenshots if needed.
:thanks:
edit : My rig : i5 3570K @4.2Ghz | AMD 7870XT OC drivers up to date.
If you're using the script in ffdshow you have to add "Distributor()" at the end.
I just did a quick test with AVSMeter on a 1080p source (i5 2500K):
[Script]
LoadPlugin("E:\Apps\VideoTools\DGDecNV\DGDecodeNV.dll")
setmtmode(5, 4)
DGSource("test.dgi")
setmtmode(2)
InterFrame(Cores=4, Preset="Faster", NewNum=30000, NewDen=1001, GPU=true, Tuning="Film")
[Runtime info]
Frames processed: 1089 (0 - 1088)
FPS (min | max | average): 7.248 | 255682 | 79.71
Memory usage (phys | virt): 622 | 698 MB
Thread count: 18
CPU usage (average): 76%
Time (elapsed): 00:00:13.661
Also, your SetMemoryMax(2048) is overkill and a waste of precious memory. The default (512) is enough unless you add QTGMC() or similar.
Groucho2004
9th July 2015, 15:42
For comparison, here is the same script with preset "Medium":
[Runtime info]
Frames processed: 1089 (0 - 1088)
FPS (min | max | average): 3.366 | 210561 | 36.63
Memory usage (phys | virt): 709 | 801 MB
Thread count: 18
CPU usage (average): 88%
Time (elapsed): 00:00:29.727
sofakng
9th July 2015, 16:07
If you're using the script in ffdshow you have to add "Distributor()" at the end.
Is this also needed for ffmpeg? (with avisynth compiled in) I don't think the InterFrame example scripts show that.
If so, do I add Distributer() after the InterFrame() call?
Groucho2004
9th July 2015, 16:15
Is this also needed for ffmpeg? (with avisynth compiled in)
Don't know. Try it, if it is much faster then you know that it is needed.
If so, do I add Distributer() after the InterFrame() call?
You add it at the very end of the script. It's Distributor(), by the way.
sofakng
10th July 2015, 15:26
Thanks so much!
It more than doubled my framerate! Previously it used about 30% CPU during encoding/interpolating, but afterwards it went to 80-90% and was much, much faster.
By the way, what is the best (?) avisynth source filter for MKV/MP4 container (and mostly H.264 encoded) content? I'm using FFMpegSource2 but I dislike that it creates index files.
I'm thinking about using DirectShowSource but I'd need to install LAVFilters I think. (Normally I use MPC-HC for watching video which has internal LAVFilters)
friver
1st August 2015, 14:29
"GPU=true" doesn't work on Windows 10. Can anyone confirm this?
sausuke
8th August 2015, 06:12
can anyone please help me? I'm using this script and my processor is 5960x (8 core CPU)
Cores=8
SetMemoryMax(512)
SetMTMode(3,8)
PluginPath = "C:\Program Files (x86)\MeGui 60 FPS MOD\tools\avisynth_plugin\"
LoadPlugin(PluginPath+"svpflow1.dll")
LoadPlugin(PluginPath+"svpflow2.dll")
Import(PluginPath+"InterFrame2.avsi")
<input>.ConvertToYV12()
SetMTMode(2)
<deinterlace>
<crop>
<denoise>
<resize>
InterFrame(Cores=8)
and I love this script 'cause it uses 100% of cores when encoding in Megui. My question is how to use all the cores on normal encoding without using frame doubling.. I mean I record 60fps games and it doesn't need frame doubling anymore..
My fps on megui is 120fps when using the script above (100% cpu usage) and 45fps only when not using script (45% cpu usage only) I hope someone knows 'cause I googled and don't know the right script for normal encoding..
Thank you in advance.
StainlessS
8th August 2015, 10:41
Maybe something like this (removing svpflow and Interframe)
Cores=8
SetMemoryMax(512)
SetMTMode(3,8)
PluginPath = "C:\Program Files (x86)\MeGui 60 FPS MOD\tools\avisynth_plugin\"
<input>.ConvertToYV12()
SetMTMode(2)
<deinterlace>
<crop>
<denoise>
<resize>
However, the profile will still be called 60FPS (EDIT: as will your MeGUI program directory, ie MeGui 60 FPS MOD).
Or, delete the 60FPS profile and create a new one called eg CORES8.
Here link that you may have used to set it up in the first place (reminder for you): http://www.spirton.com/convert-videos-to-60fps/
traragorn
16th August 2015, 15:42
Hi, just wondering has anyone tried BlueskyFRC?
http://bluesky23.yukishigure.com/BlueskyFRC.html
Apparently it uses AMD Fluid Motion in Radeon GPUs to do the same thing that InterFrame does.
I'm wondering how's the quality of it. If it's good perhaps some work can be done to see if it can be used within InterFrame
Wow, this is the thing I was dreaming of. I have 8-core fx cpu with 280x gpu. I tried svp's player and this interframe and bluesky is the better imo. Easy to setup in mpc and doesn't make my pc hot as hell. (Maybe they are better in nvidia gpu's but with amd gpu this is very good)
aegisofrime
18th August 2015, 02:58
Hi SubJunk!
I'm sure you must have heard of the SVP4 project that the team is working on. I'm just wondering, will SVP4 still work with InterFrame? Will SVP4 even be based on Avisynth?
Thanks!
Sparktank
18th August 2015, 03:48
Hi SubJunk!
I'm sure you must have heard of the SVP4 project that the team is working on. I'm just wondering, will SVP4 still work with InterFrame? Will SVP4 even be based on Avisynth?
Thanks!
SVP has it's own scripts to work with (multiples).
InterFrame is a much simpler form of SVP.
But you can still do some customizations with the given scripts (if you know what you're doing).
This thread is for SVPflow libraries (directly associated with SVP):
http://forum.doom9.org/showthread.php?t=164554
This forum is dedicated to SVP (3.x versions and 4.x versions).
http://www.svp-team.com/forum/index.php
(dedicated English language section plus dedicated Russian language section)
SVP4 should still be running on Avsiynth.
They're still playing with Avisynth+, to see how stable they can keep it.
SVP4 details here: (for technical preview)
http://www.svp-team.com/wiki/SVP4_Technical_Preview
hydra3333
9th September 2015, 06:10
For various reasons (old plugins and scripts) I have to use TSP's old avisynth 2.5.7MT ... will interframe and SVPflow run under avisynth 2.5.7MT ?
MysteryX
10th September 2015, 06:34
For various reasons (old plugins and scripts) I have to use TSP's old avisynth 2.5.7MT ... will interframe and SVPflow run under avisynth 2.5.7MT ?
I don't think so, it's based on AviSynth 2.5.8 MT
Groucho2004
10th September 2015, 07:06
For various reasons (old plugins and scripts) I have to use TSP's old avisynth 2.5.7MT ... will interframe and SVPflow run under avisynth 2.5.7MT ?
2.5.7 and 2.5.8 have the same AVISYNTH_INTERFACE_VERSION. The "MT" extensions are the same, as far as I recall. It should work.
hydra3333
10th September 2015, 10:19
Thanks. It doesn't crash.
My use of Interframe here: http://forum.doom9.org/showthread.php?p=1738023#post1738023 (with a question about deblocking beforehand :))
kolak
17th September 2015, 13:06
Is 2.8.2 based on same dlls as SVP 3.17?
Music Fan
17th September 2015, 13:25
In Interframe 2.8.2,
-svpflow1.dll v2.0.3.0
-svpflow2.dll v2.0.2.0
In SVPflow 1.1.16 ;
-svpflow1.dll v2.0.4.0
-svpflow2.dll v2.0.2.0
And I guess SVPflow 1.1.16 use the same dlls than SVP 3.17.
sofakng
6th October 2015, 13:50
"GPU=true" doesn't work on Windows 10. Can anyone confirm this?
I'm having the exact same problem :(
MysteryX
6th October 2015, 17:05
I'm having the exact same problem :(
Works fine here.
aegisofrime
7th October 2015, 00:21
Works fine here.
I was having the same problem and found that you couldn't use GPU=true if your script also have DGSource in it; That is you can't use that flag if you also had your nvidia graphics card frameserving.
sofakng
22nd October 2015, 14:20
Hmmm, I've tried using FFMpegSource2 and DirectShowSource but neither works with GPU=TRUE.
What else can I use so that I can enable GPU=TRUE?
Groucho2004
22nd October 2015, 14:48
Hmmm, I've tried using FFMpegSource2 and DirectShowSource but neither works with GPU=TRUE.
What else can I use so that I can enable GPU=TRUE?
What exactly does "neither works with GPU=TRUE" mean? How do you determine this? What happens? Does your PC explode?
sofakng
22nd October 2015, 15:02
There seems to be a bug in the NVidia drivers for Windows 10 that causes the application freeze when using CUVID + Open CL.
Here are the discussions from the SVPFlow forum:
Windows 10 GPU-acceleration freeze (http://www.svp-team.com/forum/viewtopic.php?id=2515)
Windows 10 - video player hangs and/or crashes (http://www.svp-team.com/forum/viewtopic.php?id=2671)
However, I do not need GPU acceleration since I'm doing my conversions offline. I still care about quality though.
amayra
6th November 2015, 11:35
what codecs they need i dont went to use k-lile ?
amayra
6th November 2015, 11:56
can update svpflow dll normally ?
VideoFanatic
28th November 2015, 22:37
Is Interframe based on SVP4. If not, any idea when a version based on that will come out?
MysteryX
28th November 2015, 22:38
SVP4 only updated the manager, it is still using the same core libraries. I don't think there's anything to update... yet. Correct me if I'm wrong.
SpyMashine
27th January 2016, 21:19
I'm on Windows 7 64-bit and after updating "AMD Catalyst Drivers 15.11.1" to "AMD Crimson Edition" function "GPU=true" stopped working, but when I back to previous driver "AMD Catalyst Drivers 15.11.1" everything started working properly like it was before.
SVSmoothFps: unable to init GPU-based render [code 0x100FF]
(C:/.../InterFrame2.avsi, line 156)
(C:/.../InterFrame2.avsi, line 58)
(error line 4 in my script, with is GPU=true)
Edit:
I think the reason of this issue is placed in new .dll's installed with those new drivers, on System32 "amdocl64.dll" and SysWOW64 "amdocl.dll"
kristof
11th February 2016, 11:09
Hi, guys
Great collaborative effort this whole video magic!
My terrible problem is that after all interpolation processing audio gets out of sync.
The source is quite a poor condition, unfortuntely it's quite rare, so any better quality is out of reach.
I assume that base recording was avi, then rmvb and now it is flv. Ok, but coding it at 7.744 fps was a crime...
I figured interpolation seems the only solution to make it watchable.
source:
http://gs.video.tt/s?v=95Loalb3Q&t=1455185535&u=&r=2&c=15963991e773c6aca2189235f70b329148e1c6f7ec82106754cd4fecaa1806d90bb8d6ceba3aab998d7309eb5840cf8a&start=0
Used megui + all stuff as prescribed in #1 post of this thead
The script:
Cores=2
SetMemoryMax(512)
SetMTMode(3,Cores)
PluginPath = "C:\video\MeGUI\tools\avisynth_plugin\"
LoadPlugin(PluginPath+"svpflow1.dll")
LoadPlugin(PluginPath+"svpflow2.dll")
Import(PluginPath+"InterFrame2.avsi")
<input>.ConvertToYV12()
SetMTMode(2)
<deinterlace>
<crop>
<denoise>
<resize>
InterFrame(Preset="Fast", Cores=Cores, FrameDouble=true)
Mkv output's audio starts with ~2 s audio before video and develops to ~4 s of premature soundtrack.
I tried to fiddle with settings, but I have to wait 1 hour to check the effects, so tried just a few - all in vain.
Is it all hopeless or maybe there is a solution that would produce synchronized audio&video!?
Music Fan
11th February 2016, 14:11
Out of sync generally happens with variable framerate, is it the case of your video ? You can see it with MediaInfo.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.