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
kristof
11th February 2016, 14:35
Looks like constant both in video and audio
General
Unique ID : 205335626914220544381893522803225894184 (0x9A7A340858C8E7DD9F0BDA7BC4D19D28)
Complete name : D:\cyf2hl13.gbn\Ndinz e025.rmvb.mkv
Format : Matroska
Format version : Version 2
File size : 207 MiB
Duration : 48mn 31s
Overall bit rate : 597 Kbps
Encoded date : UTC 2016-02-03 12:31:06
Writing application : mkvmerge v8.5.2 ('Crosses') 32bit
Writing library : libebml v1.3.3 + libmatroska v1.4.4
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L3
Format settings, CABAC : Yes
Format settings, ReFrames : 4 frames
Codec ID : V_MPEG4/ISO/AVC
Duration : 48mn 29s
Bit rate : 533 Kbps
Width : 720 pixels
Height : 480 pixels
Display aspect ratio : 3:2
Frame rate mode : Constant
Frame rate : 15.497 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.099
Stream size : 185 MiB (89%)
Writing library : x264 core 148 r2638 7599210
Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=3 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=155 / keyint_min=15 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=23.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00
Default : Yes
Forced : No
Audio
ID : 2
Format : MPEG Audio
Format version : Version 1
Format profile : Layer 3
Mode : Joint stereo
Mode extension : MS Stereo
Codec ID : A_MPEG/L3
Codec ID/Hint : MP3
Duration : 48mn 30s
Bit rate mode : Constant
Bit rate : 64.0 Kbps
Channel(s) : 2 channels
Sampling rate : 44.1 KHz
Frame rate : 38.281 fps (1152 spf)
Compression mode : Lossy
Delay relative to video : 166ms
Stream size : 22.2 MiB (11%)
Writing library : LAMEUUULAME3.98.4
Language : English
Default : Yes
Forced : No
TCmullet
11th February 2016, 14:38
Yes, MediaInfo, Tree view. I have recently gotten lots of videos, some in FLV. And some of them are that d_m VFR (which IMO should be banned as we no longer need to save space these days in most cases). However, some kind soul pointed me to LSmash which I was already using but didn't know there was an option to smoothout VFR, adding and subtracting frames as needed to match a target framerate.
But also you might be having a drift (with or without VFR - I have it without VFR sometimes), which is a separate problem. I discovered TimeStretch function in Avisynth works nicely once you get the hang of it. Also found a short simple code fragment that does the needed math. Works great. Now if I can find it again....
...found it.
https://kb.speeddemosarchive.com/AviSynth#Progressive_audio_desync
kristof
11th February 2016, 14:47
thx
later today I will read and try to understand it ;)
Music Fan
11th February 2016, 15:14
I see that your file has a rmvb extension before its mkv extension ; if the rmvb has been opened as is in mkvmerge, there is maybe a problem with the header. Try to demux the video with MKVExtract and remux it or open the raw video in Avisynth.
kristof
11th February 2016, 21:02
First approach failed.
I have to postpone digging for weekend.
The "MKVExtract and remux" part is too much for now due to my poor tech abilities.
And similar - as tip in https://kb.speeddemosarchive.com/AviSynth#Progressive_audio_desync suggested - I inserted file sourcepath and tried to play avisynth script in media player (to have ability to preview eventual changes), but no success - mp shows some weird picture for 10s and turns off. I guess it can have sth to do with things mentioned in http://forum.doom9.org/archive/index.php/t-112883.html but I couldnt even install properly FLVSplitter.ax :(
lonely.myp
13th February 2016, 12:53
I do not understand why if I just want to encode the movie, then the process will take 6-8 hours?
If I watch a movie with SVP4, encoding in real time.
May I use the wrong settings?
How to set up the script to the movie recoding is not occupied for half a day?
StainlessS
13th February 2016, 14:25
If I watch a movie with SVP4, encoding in real time.
Presumably you mean 'not encoding it at all, ie just playing result of script".
Look to your encoding settings in MeGUI or whatever else you are using to really encode. As you do not mention
what you are using to encode, nor any settings, you are unlikely to get any assistance as no-one is going to have
the slightest idea what you are doing.
Music Fan
13th February 2016, 20:39
I do not understand why if I just want to encode the movie, then the process will take 6-8 hours?
If I watch a movie with SVP4, encoding in real time.
May I use the wrong settings?
How to set up the script to the movie recoding is not occupied for half a day?
Are you sure nothing else in the script uses lot of CPU ?
You can compare the script's speed with AVSMeter (I mean with and without Interframe).
If the CPU usage with your script don't exceed 30 or 40%, you can divide the video in several parts (with the trim function) and encode 2 or 3 scripts together to hit 100 %, then you join files (I do it in lossless -Lagarith- then join the files with a script and I make a single x264 encoding to avoid to join h264, which isn't always as accurate as lossless because of the GOPs).
The whole process will be faster than with a single script.
StainlessS
13th February 2016, 22:44
Musicfan ,methinks he is asking why it takes longer to both process and encode than to just process.
lonely.myp
15th February 2016, 14:16
As you do not mention
what you are using to encode, nor any settings, you are unlikely to get any assistance as no-one is going to have
the slightest idea what you are doing.
I do everything exactly on "Step-by-step guide on how to use InterFrame for beginners"
ordinary movie volume of 2-3 GB takes 8 hours.
I do not want to encode a movie, resize, or something to do with it, just to increase the frame rate.
StainlessS
15th February 2016, 21:05
I do not want to encode a movie, resize, or something to do with it, just to increase the frame rate
Yes you do.
I do not understand why if I just want to encode the movie, then the process will take 6-8 hours?
If I watch a movie with SVP4, encoding in real time.
May I use the wrong settings?
How to set up the script to the movie recoding is not occupied for half a day?
You want to, decode (some avisynth source reader), process to higher framerate using SVP, and then re-encode (ie re-compress using some codec/compressor). Compression (encode) takes time, especially for high compression, so it takes longer to Process (decode, SVP) and then re-encode (compress).
If you just watch output of SVP then you are not encoding at all, and so is much faster.
Groucho2004
15th February 2016, 23:06
I do everything exactly on "Step-by-step guide on how to use InterFrame for beginners"
ordinary movie volume of 2-3 GB takes 8 hours.
I do not want to encode a movie, resize, or something to do with it, just to increase the frame rate.
The guide you are referring to describes the process of re-encoding a movie with megui.
In order to just play a movie with increased frame rate you should probably read the documentation on svp-team.com or use a suitable script in ffdshow.
lonely.myp
16th February 2016, 09:46
Compression (encode) takes time, especially for high compression, so it takes longer to Process (decode, SVP) and then re-encode (compress).
How can I speed up the process?
Set minimal compression? Choose faster codec?
StainlessS
16th February 2016, 18:20
Well with MeGUI and x264, you could (Encoder Settings/Config, scratchpad/Preset), change from Slow (or whatever its set to), to eg Medium or Fast,
or Faster, or VeryFast or SuperFast or UltraFast.
But this is more a MeGUI issue than Avisynth, if need more assistance call on expert help in that forum, maybe here:- http://forum.doom9.org/showthread.php?t=105920&page=402
Groucho2004
16th February 2016, 18:49
@Stainless
You must possess a crystal ball or some mind reading device in order to figure out that he actually does want to encode even though he clearly stated that he does not want to encode - Pure magic. :D
StainlessS
17th February 2016, 02:47
Methinks lonely.myp was under the impression that he could increase the framerate internally in the movie file, without re-encode, but of course he cant.
lonely.myp, I once (a few years ago) encoded a triple episode extended DVD set (about 4hr:20mins per episode), and each episode took about
48hours of [EDIT: processing plus] encoding, so 8hrs is not so bad really. (LOTR)
VideoFanatic
21st June 2016, 21:38
I've used Interframe before to convert a rare SD 25p video to 720 x 576i. I used FFMS (frame accurate) in MeGUI since the source was an AVI inside an MKV container. The script worked correctly.
However this time I'm trying to convert a 1080i 25fps video to 720p 59.94fps. Here's my script:
Spline36Resize(1280,1080)
QTGMC(Preset="Slow")
Spline36Resize(1280,720)
InterFrame(Cores=1, Tuning="Smooth", GPU=true)
Doesn't seem to matter if I specify more cores or not as I get the same speed since I'm not running in MT mode. The video finishes encoding but the resulting video only has video for the first several minutes. When I try to go further the video just stays paused while I can hear the audio carry on playing.
How can I get this working correctly? I'm using DGDecodeNV as the indexer in MeGUI.
mpxman
18th July 2016, 13:07
How to increase artifact protection? Near borders I get this
http://i.imgur.com/r7kRFfC.jpg
Now I use
ChangeFPS(input, 25)
instead of
clip.InterFrame(NewNum=25, NewDen=1, Cores=4, tuning="film")
because of the artifacts.
This code from videoFred's script works well in that scene . The legs are sharp. Unfortunately that script fails in many scenes and causes disappearing text to morph (shrinking).
numerator= fps #numerator for the interpolator (final frame rate)
denumerator= 1 #denumerator example: 60000/1001= 59.94fps
block_size= 16 #block size of MVDegrainMulti()
block_size_v= 16
block_over= 8 #block overlapping of MVDegrainMulti()
super= clip.MSuper()
backward_vec= MAnalyse(super, blksize=block_size, blksizev= block_size_v, overlap=block_over, isb=true)
forward_vec= MAnalyse(super,blksize=block_size, blksizev= block_size_v, overlap=block_over, isb= false)
clip25fps4= clip.MFlowFps(super, backward_vec, forward_vec, num=numerator, den= denumerator, ml=100)
StainlessS
18th July 2016, 15:21
I tend to use Padding(), especially where using multiple MC filters, without it, you tend to get weird periodic
anomalies at frame edges. Think mv has arg to auto add/remove borders but I usually just do a Padding() followed by
crop() at end of processing.
I usually use Padding(16,16,16,16)
function Padding(clip c, int left, int top, int right, int bottom) {
# Didee: http://forum.doom9.org/showthread.php?p=1596804#post1596804
# eg, Padding(32,32,0,0).Padding(0,0,32,32)
w = c.width()
h = c.height()
c.pointresize( w+left+right, h+top+bottom, -left, -top, w+left+right, h+top+bottom )
}
mpxman
18th July 2016, 18:17
I tend to use Padding(), especially where using multiple MC filters, without it, you tend to get weird periodic
anomalies at frame edges. Think mv has arg to auto add/remove borders but I usually just do a Padding() followed by
crop() at end of processing.
I usually use Padding(16,16,16,16)
function Padding(clip c, int left, int top, int right, int bottom) {
# Didee: http://forum.doom9.org/showthread.php?p=1596804#post1596804
# eg, Padding(32,32,0,0).Padding(0,0,32,32)
w = c.width()
h = c.height()
c.pointresize( w+left+right, h+top+bottom, -left, -top, w+left+right, h+top+bottom )
}
Thanks. That helped. Result is not perferct but there's always two legs. Not four :)
johnmeyer
18th July 2016, 18:21
You didn't provide information on the resolution of your video, nor did you mention what version of MVTools2 you have installed (Interframe is simply a front end for MVTools2). I found some bugs in MVTools2 that only surface with certain resolution videos:
MVTools2 artifacts, but only at high resolution (http://forum.doom9.org/showthread.php?t=165075)
If you read that thread you will get ideas of how to work around the problem, if it is indeed the same one I found.
feisty2
18th July 2016, 18:31
You didn't provide information on the resolution of your video, nor did you mention what version of MVTools2 you have installed (Interframe is simply a front end for MVTools2). I found some bugs in MVTools2 that only surface with certain resolution videos:
MVTools2 artifacts, but only at high resolution (http://forum.doom9.org/showthread.php?t=165075)
If you read that thread you will get ideas of how to work around the problem, if it is indeed the same one I found.
Obsolete intel
That bug has been eliminated months ago.
feisty2
18th July 2016, 18:35
http://forum.doom9.org/showthread.php?p=1765458#post1765458
v2.5.11.21 (22.04.2016 by Fizick)
•MflowXXX: remove limit of motion vectors length (was 127/pel).
Reel.Deel
18th July 2016, 18:40
I tend to use Padding(), especially where using multiple MC filters, without it, you tend to get weird periodic
anomalies at frame edges.
When using Padding() it's also a good idea to set "hpad" and "vpad" to 0 in MSuper. "hpad" and "vpad" default to 8 and do the same thing as Padding() but only on the super clip.
You didn't provide information on the resolution of your video, nor did you mention what version of MVTools2 you have installed (Interframe is simply a front end for MVTools2). I found some bugs in MVTools2 that only surface with certain resolution videos:
MVTools2 artifacts, but only at high resolution (http://forum.doom9.org/showthread.php?t=165075)
If you read that thread you will get ideas of how to work around the problem, if it is indeed the same one I found.
Interframe uses SVPflow. Also, the MVTools issue mentioned in that thread issues have been fixed in the latest release.
2.5.11.21 (22.04.2016 by Fizick)
MflowXXX: remove limit of motion vectors length (was 127/pel).
Beat by feisty2
StainlessS
18th July 2016, 19:29
When using Padding() it's also a good idea to set "hpad" and "vpad" to 0 in MSuper. "hpad" and "vpad" default to 8 and do the same thing as Padding() but only on the super clip.
Thanks RD, I do set hpad,ypad to 0 in one part of my standard render script, but use MCDegrain() where it is not setting hpad,ypad to anything, think I'll havta inline the MCDegrain script so as to have more complete control.
Again thanks for the poke in the ribs.
Music Fan
18th July 2016, 19:52
http://forum.doom9.org/showthread.php?p=1765458#post1765458
There is a link for v2.5.11.22 but I have the v2.6.0.5 since 2015, are there parallel dev ?
Which one should be used ?
Reel.Deel
18th July 2016, 20:02
There is a link for v2.5.11.22 but I have the v2.6.0.5 since 2015, are there parallel dev ?
Which one should be used ?
This version includes Fizick's recent changes as well as the changes from v2.6.0.5: http://forum.doom9.org/showthread.php?t=173356
Music Fan
18th July 2016, 22:38
This version includes Fizick's recent changes as well as the changes from v2.6.0.5: http://forum.doom9.org/showthread.php?t=173356
Thanks, do you mean the first link of the first post ?
Sparktank
18th July 2016, 23:05
The wiki has also been updated to replace Firesledge's binary:
http://avisynth.nl/index.php/MVTools
v2.5.11.22 is linked to Fizick.
While the pfmod is linked to printerf's own GitHub with binaries, which includes 2.5.11.22.
"mvtools2 2.7.0.22 x64/x86. Sync'd with 2.5.11.22"
johnmeyer
19th July 2016, 01:54
I guess you're right that Interframe uses SVPFlow, and not its progenitor, MVTools2. I don't use Interframe, but when I looked at the header of the script, this is what my version says:#------------------------------------------------------------------------------#
# #
# InterFrame 2.0pre2 by SubJunk, DeathTheSheep #
# #
# A frame interpolation script that primarily uses MVTools2 for making #
# accurate estimations about the content of non-existent frames #
# Its main use is to give videos higher framerates like newer TVs do #
#------------------------------------------------------------------------------#
However, looking at the actual code later in the script, the calls are definitely SVPFlow calls, not MVTools2.
So, I guess I was wrong, but at least I wasn't entirely crazy. At my age, I'll take that.
StainlessS
19th July 2016, 02:06
IIRC, it started out using mvtools, and then at some point changed to SVPFlow, guess that reference to mvtools managed to escape editing.
Sparktank
19th July 2016, 02:16
Since SVP has gone Pro, I don't know how far behind public releases of SVPFlow are compared to Pro that you can update the day of new releases.
(I mean I don't know how long they intend to not update the public releases)
Public release:
https://www.svp-team.com/wiki/Download
SVPflow 4.0.0.128
But the changelog linked at the top of the page:
https://www.svp-team.com/wiki/Changelog
Shows last SVPflow update was:
SVPflow - 4.0.0.135 - 2016-04-30
Reel.Deel
19th July 2016, 02:43
IIRC, it started out using mvtools, and then at some point changed to SVPFlow, guess that reference to mvtools managed to escape editing.
John's script is pretty old (2.0pre2), the latest version does not mention MVTools anymore.
Since SVP has gone Pro, I don't know how far behind public releases of SVPFlow are compared to Pro that you can update the day of new releases.
(I mean I don't know how long they intend to not update the public releases)
Public release:
https://www.svp-team.com/wiki/Download
SVPflow 4.0.0.128
But the changelog linked at the top of the page:
https://www.svp-team.com/wiki/Changelog
Shows last SVPflow update was:
SVPflow - 4.0.0.135 - 2016-04-30
The SVPflow binaries have always been the same as in their 'pro' version. If I'm not mistaken, SVP is legally obligated to release the SVPflow binaries used in their 'pro' version since it uses GPL code from MVTools2. The reason v4.0.0.135 has not been publicly released is probably because it only introduced a temporary fix and it sounds like it's just an old version anyways. Read here for more info: http://www.svp-team.com/forum/viewtopic.php?id=3314
Sparktank
19th July 2016, 04:22
That makes a lot of sense.
Thanks for clearing that up.
I've just recently switched to the latest AVS+ that's been posted not too long ago.
Reel.Deel
20th July 2016, 02:01
For the reason stated in the SVP thread I'm still using v1.1.17 (https://www.dropbox.com/s/eegzjv76nhbtvo1/svpflow-1.1.17.zip?dl=1) with AviSynth+. The newer version (v4.0.0.128) does not introduce anything new other than VapourSynth support. If you use v1.1.17 with MT, just remember to set it to mode 2.
amayra
20th July 2016, 11:09
Shows last SVPflow update was:
SVPflow - 4.0.0.135 - 2016-04-30
where can i get svpflow 4.0.0.135 ?
Sparktank
20th July 2016, 17:47
where can i get svpflow 4.0.0.135 ?
You have to buy the Pro version.
I don't know if the Free version of SVP has it.
amayra
21st July 2016, 10:23
You have to buy the Pro version.
I don't know if the Free version of SVP has it.
thanks you free version of SVP has it
kolak
28th July 2016, 17:04
For file conversion new MVtools for vapoursynth offer better quality, but they are slow.
SubJunk
28th July 2016, 23:59
For file conversion new MVtools for vapoursynth offer better quality, but they are slow.Can you expand on what you mean by "better quality"? If it offers better interpolation than SVP maybe there could be an InterFrame for vapoursynth
kolak
29th July 2016, 10:28
Yes, less artefacts, but also waaay slower than svp.
It also supports up to 16bit 4:4:4.
amayra
30th July 2016, 00:04
so interframe need to be updated to vapoursynth and new MVtools ?
johnmeyer
30th July 2016, 00:49
Why is it slower under vapoursynth?
Reel.Deel
30th July 2016, 01:14
Can you expand on what you mean by "better quality"? If it offers better interpolation than SVP maybe there could be an InterFrame for vapoursynth
HolyWu already ported InterFrame to VapourSynth, which also uses SVPflow.
For file conversion new MVtools for vapoursynth offer better quality, but they are slow.
Fizick updated MVTools2 not too long ago, there was a few bug fixes and other things. I don't know if that has anything to do with it. I have not compared the two recently. Regarding MVTools2 for VS, other than 16-bit and the additional color spaces it should produce the same quality as the AviSynth version.
kolak
30th July 2016, 13:20
HolyWu already ported InterFrame to VapourSynth, which also uses SVPflow.
Fizick updated MVTools2 not too long ago, there was a few bug fixes and other things. I don't know if that has anything to do with it. I have not compared the two recently. Regarding MVTools2 for VS, other than 16-bit and the additional color spaces it should produce the same quality as the AviSynth version.
Yes, and this is what I'm using (vs version) and quality is better than svp, although way slower.
I'm not saying that avs version is different than vs (did not try avs), but that latest mvtools produce better results than svp. (maybe it was always a case).
bcn_246
30th July 2016, 15:53
Yes, and this is what I'm using (vs version) and quality is better than svp, although way slower.
I'm not saying that avs version is different than vs (did not try avs), but that latest mvtools produce better results than svp. (maybe it was always a case).
SVP needs a bit of tweaking, remember by default it is set so a Core 2 Duo can run it in real-time (so tweaking to have it run at 5fps yields much better results). Otherwise its an unfair test, like comparing yadif (realtime) with QTGMC (about 10fps at default values). I it is leaps and bounds above MVTools (they credit it as the building blocks for SVP). IMO it is better than even the paid Adobe Premier Pro/After Effects plug-ins.
kolak
30th July 2016, 16:18
I tweaked main interframe script, but it's still not as good as new mvtools. The beauty is GPU support, but quality wise every new version is getting rather worse. I used it at the very beginning and quality was better- all later versions added speed, but not really quality.
Adobe's motion adaptive engine is rather poor. If you wan compare svp, mvtools than you need to use pro solutions as a reference.
Reel.Deel
30th July 2016, 21:59
If you wan compare svp, mvtools than you need to use Alchemist OD and Tachyon as a reference.
Would you happen to have some samples? I don't have access to such hardware/software. I'm sure I'm not the only one. :)
kolak
31st July 2016, 00:05
It's about the same level as new mvtools.
Both codes are GPU based.
You can get trial of Alchemist OD- it's bit fussy about GPU, but modern GTX should work.
SubJunk
1st August 2016, 01:09
HolyWu already ported InterFrame to VapourSynth, which also uses SVPflow.Cool, where is it? I must have missed that
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.