I have a source that seems to have quite a bit of blending in it and I cannot seem to get rid of it or even lessen the amount of it.
The blending resembles this order (1 - 1+2 - 2+3 - 4)
Is there anything I can do about this, or am I just going to have to deal with it? Srestore which is the usual method I would attempt, did not seem to be having any effect on it.
Code:lanczosresize(852,480) QTGMC(preset="fast", matchpreset="fast", matchpreset2="fast", fpsdivisor=2, sourcematch=3) santiag(strv=0, nns=4, nsize=5)
+ Reply to Thread
Results 1 to 30 of 31
The progressive encoding of interlaced video has left too much blending for a clean restoration. But the sequence:
QTGMC(preset="fast", matchpreset="fast", matchpreset2="fast", sourcematch=3) SRestore() santiag(strv=0, nns=4, nsize=5)
Last edited by jagabo; 24th Dec 2019 at 07:51.
I tried it, but the ending output was 28.743fps for some reason. It was also slightly more jittery in comparison to only using the QTGMC. Why did it change into that weird framerate with srestore()?
Specify the frame rate in SRestore(frate=23.976). Or maybe 25 fps. There weren't any good panning shots to say for sure.
Last edited by jagabo; 26th Dec 2019 at 16:47.
Looks like 23.976 fps is right.
Yeah, but it becomes so jittery with 23.976fps. It's no longer smooth looking, and jerks as it pans or zooms in. It's not just slightly either, its really noticeable even when things are not panning. Most likely because as you said, theres no unblended frames for some frames.
I guess the source is just too poor to do anything about it properly.
Thanks for the suggestions though.
I thought it looked better than the source. Maybe not as smooth as just QTGMC.
LSmashVideoSource("1080p Sample 2.mp4") AssumeTFF() Crop(240,0,-240,-0) QTGMC(preset="fast", matchpreset="fast", matchpreset2="fast", sourcematch=3) SRestore(23.976)
Got any suggestions for removing those interlace artifacts that are leftover in the blends when things are in motion or panning? I believe the samples I gave have plenty of them.
The QTGMC helps some, but I switched to using TFM. QTGMC was taking almost 3 days per pass to encode.
wtf, your sample is very smooth and looks nice. When I encode it, its jittery as hell and you can see the screen bouncing along instead of a nice slide like yours. Is that assumetff helping it? I used literally the same thing you did but not the assumetff.
Last edited by killerteengohan; 27th Dec 2019 at 17:27.
the assumetff is not working for me either. Look how jittery mine is becoming compared to yours and I'm using the same things you are, with the exception of lsmash.
I just tried lsmash and even tried a new version of MeGui and its still turning out like this for me.
Why is yours nice, but mines always jittery and ruined? I cannot get the video 23.976fps to look good no matter what, even if I use Tdecimate or something else to get it to that framerate, its always jittery/bouncy like that sample I gave.
Yes MeGui always provides a log and everything works and finishes fine. It's only this source giving me this problem, but its not giving Jagabo any trouble because his sample was flawless and were using the same exact script.
I'm wondering if it's QTGMC needs an update, but I cant get the new QTGMC to work. I keep getting a stupid error that says mt_lut does not have a named argument "use_expr". I even tried updating my masktools2 to the newest version since supposedly that's the plugin tied this error, and the masktools2 plugin will not load no matter what. Manual loading of it is also failing. The plugin just refuses to load. masktools2-v2.2.18
This is literally all I ever get no matter how I try to load the plugin. I even tried an older 2.2.17 version and it too wont load.
[Attachment 51225 - Click to enlarge]
EDIT: I still cant figure it out and it will not load or work. They really need to start bundling required plugins with releases.
Anyways, after thinking about it some more, I'm not so sure QTGMC is the culprit because it turns out just fine without srestore or decimating to 23.976fps. Theres no issue with the video on my end until I try to make it 23.976fps, no matter what I use to get it that framerate. This must be something else causing it?
Last edited by killerteengohan; 27th Dec 2019 at 20:17.
I don't think the QTGMC (or any other plugin) version is the difference between your filtering and mine. But your video is only 640x480. Did your script resize before QTGMC? That would be the likely source of the problem.
Nope it's not the resizer causing it. I tried it without resizing at all as well, and the issue still persists. I even tried using TFM with clip2 as QTGMC, and its not as bad, but its still happening and it didnt clean as well as yours did. I am very stumped as to why yours is so smooth compared to mine no matter what I try.
Go through your script line by line until you see what's going wrong.
I missed post #15 about MaskTools2. Are you running 32 bit or 64 bit AviSynth? This is the version I'm using (both 32 bit and 64 bit AviSynth+):
The 64 bit QTGMC.AVSI I'm using is version 3.358. 32 bit is v. 3.32.
Last edited by jagabo; 28th Dec 2019 at 08:32.
I've taken everything but the QTGMC out and its still doing it. I've tried altering several things and rearranging them in different orders and its still doing it. Its not causing it to become more jittery than the source when it's just QTGMC, but your sample is certainly less jittery and more smooth than the source, or this encode I am getting. Possibly because yours is 23.976fps and mine is 29.970fps.
I'm only seeing this increased amount of jittering when I make the video 23.976fps. It doesn't matter if I use srestore or tdecimate to get it to that, it makes it very jittery. It seems to have made yours better than the source. So It's either the srestore I have, or QTGMC is my guess. I doubt it has anything to do with codec settings
I do not have 64-bit avisynth and could never get it to work, so I'm stuck with 32-bit. The updated QTGMC I am trying to get to work is v3.358. v3.32 is the one I have been currently using for a long time. Are you saying the 3.358 will not work at all in 32-bit? I have 32bit versions for all the required plugins to my knowledge.
That's the same masktools I am trying to use, but for whatever reason it refuses to be loaded. I even tried manually using loadplugin and import and it does not want to load in anything that uses avisynth on my computer. AvsPod, MegGui, VirtualDubMod, it will not load in any of these and I only get that jumbled text error. I am going to guess for now that it wont load because I have something running through the encoder and it might be using the older masktools. I may have to take the mt_masktools-26 out of my autoload folder to get the new one to work when loaded in manually. I cannot verify this for at least 9 hours until it finishes.
Post your entire script.
TDecimate() doesn't work well for blended cartoons -- it preferentially removes duplicate frames. Duplicates are usually the clear frames. Blended frames usually aren't duplicates so they get left in.
I've been using AviSynth+, both 32 and 64 bit, for a year or so.
Last edited by jagabo; 28th Dec 2019 at 09:17.
LoadPlugin("C:\Program Files (x86)\MeGui\tools\ffms\ffms2.dll") FFVideoSource("C:\Users\Admin\Desktop\Encoding\Dexter's Laboratory - Rude Removal\Dexter's_Lab_Dexter's_Rude_Removal.mp4", threads=1) __film = last __t0 = __film.trim(1542, 1812) __t0 AssumeTFF() crop(240, 0, -240, -0) LoadPlugin("C:\Program Files (x86)\MeGui\tools\avisynth_plugin\TIVTC.dll") QTGMC(preset="fast", matchpreset="fast", matchpreset2="fast", sourcematch=3, sharpness=0.1) srestore(23.976)
I tried LSmash and got the same results, so it's not FFVideoSource causing it. I tried it with and without AssumeTFF as well. Same results with no cropping also.
I was not aware you could install 2 different versions of avisynth at the same time and not have them conflict or break each other.
Im using avisynth 2.6.
[Attachment 51233 - Click to enlarge]
Last edited by killerteengohan; 28th Dec 2019 at 11:30.
What version of srestore are you using?
I tried updating to the newest srestore but this is all I get for an error when I try to use it.
It looks almost identical to the error I was getting when I was trying to use the newest QTGMC that you have. The only difference is now its mt_lutxy instead of mt_lut.
You have some version conflicts. You're using avisynth 2.6 classic, and your script is calling for the newer function in the newer version of masktools . You'd have to use older matching versions of everything, or newer matching versions of everything
I tried updating everything it said it required. Most of the updated plugins wont even load in and give an error.
[Attachment 51225 - Click to enlarge]
these ones absolutely refuse to load.
LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\dfttest-v18.104.22.168\x86\dfttest.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\masktools2-v2.2.18\x86\masktools2.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\mvtools-2.7.41-with-depans\x86\mvtools2.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\mvtools-2.7.41-with-depans\x86\DePanEstimate.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\mvtools-2.7.41-with-depans\x86\DePan.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\RgTools-0.98\x86\RgTools.dll")
I managed to load these plugins below by removing the ones that would not work or load when called in the script, and now I am seeing this error.
[Attachment 51235 - Click to enlarge]
Is this not the fault of dither plugin? I am loading it in and its the newest one to my knowledge as can be seen below.
LoadPlugin("C:\Program Files (x86)\MeGui\tools\ffms\ffms2.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\dither-1.27.2\win32\avstp.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\dither-1.27.2\win32\dither.dll") Import("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\dither-1.27.2\dither.avsi") Import("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\dither-1.27.2\mt_xxpand_multi.avsi") Import("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\QTGMC.avsi") FFVideoSource("C:\Users\Admin\Desktop\Encoding\Dexter's Laboratory - Rude Removal\Dexter's_Lab__Dexter's_Rude_Removal-TLN_ka1ZSDg.mp4", threads=1) __film = last __t0 = __film.trim(1542, 1992) __t0 crop(240, 0, -240, -0) spline36resize(640,480) QTGMC(preset="fast", matchpreset="fast", matchpreset2="fast", sourcematch=3) SRestore(frate=23.976)
Last edited by killerteengohan; 28th Dec 2019 at 12:46.
You probably need newer version of smdegrain for that Dither_Luma_Rebuild error . Newer versions of QTGMC require newer versions of smdegrain for some dependencies
It might be some megui thing where it has some portable avs version that already loads some versions. But newer .dll versions like that masktools should still load in older avs versions. It might be some already loaded issue, or multiple plugins autoloading conflict issue. You should clean out the plugins folder too
Do you have an actual system avisynth x86 version installed ? You can try test script in vdub2 x86
Yeah I tried the newer smdegrain before as well, and it loaded but changed the error into a different error. Which is I believe tied to masktools? But that wont load. So I took it out.
Import("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC\QTGMC 3.358s\v3.358 Plugins Required\SMDegrain 3.1.2\SMDegrain.avsi")
autoload? isn't autoload overridden by manual loading? I thought if you do a manual load, it will use the manually loaded version you specified instead of the one in the autoload folder. At least thats how it seems to have been working for me when it comes to other plugins. Its trying to use the new QTGMC instead of the one in my autoload folder when I use loadplugin/import for the newer QTGMC.
Yes I have x86 avisynth installed. I never installed the x64 because it would never work for me years ago when I tried it. A lot of plugins I prefer to use are for the x86 version anyways, and I do not use multithreading, so I never bothered with x64 after that.
Last edited by killerteengohan; 28th Dec 2019 at 13:33.
I'm not sure about the "priority" . If you have a .dll in the autoload directory, what happens when you load the same plugin, just different version? What if you have 2 LoadPlugin ? Does it take the 1st or 2nd or the autoload ?
For me, I keep it clean and don't encounter these problems. Nor do I ever want to predispose myself to those problems. I like to follow the KISS rule. And many avisynth problems can be traced back to a cluttered autoload directory
Yes I have x86 avisynth installed. I never installed the x64 because it would never work for me years ago when I tried it.
You have mismatched versions causing these errors, I'm certain of it.
That's where I get the assumption on what version is working and loaded. I figure anything I manually load in the script is what gets priority and what gets loaded based off of that. I also assume the order you load them in is they order they get priority, just like the order you use filters in.
I don't think my autoload folder is too cluttered and I haven't had any problems with updating things before or loading other versions of things from other folders manually like I am trying to do here. This QTGMC however, is being a real pain lol.
I have something encoding and it wont be done for about 5 hours, but when that's done I can try an all new autoload folder out, made from scratch and put in only whats needed for QTGMC to see if it will work. Then I will be able to tell you if was indeed conflict in that folder.
Ideally I would be very happy if I could have an all x86 autoload plugins folder and an all x64 autoload plugins folder, then be able to pick and choose from both when calling them in avisynth script. I might want 32bit only filter for something and 64-bit updated for something else and want to use them in one single avisynth script. I was always under the impression that you can only have one or the other installed though.
Last edited by killerteengohan; 28th Dec 2019 at 14:11.
http://avs-plus.net/ has r1576 version (Seems much older)
https://forum.doom9.org/showthread.php?t=168856 has MT-r2772 version (Is yours MT?)
https://github.com/AviSynth/AviSynthPlus/releases has 3.4.0_20191020 version (completely different version numbering system than the others and possibly worked on by different person?)
Which is the official newest and which would I want?
Last edited by killerteengohan; 28th Dec 2019 at 15:33.