Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
22nd August 2015, 16:30 | #1 | Link |
Registered User
Join Date: Mar 2002
Posts: 76
|
Trying To Get QTGMC() To Work
I totally uninstalled then reinstalled and updated to the latest versions of AviSynth and MeGUI. I am running the 32bit versions.
AviSynth 2.60 Build Feb20 2015 MeGUI 2525 ok so... I went here http://forum.doom9.org/showthread.php?t=156028 And downloaded plugin pack using the updated Avisynth 2.6 interface I then put the Avisynth 32-bit Plugins in C:\Program Files (x86)\AviSynth 2.5\plugins and put the 32-bit System dlls in the Windows\SysWoW64 folder because I am running windows 7 Pro 64 I also tried updating AviSynth.dll from here http://forum.doom9 But I get this error AviSynth access violation mt_masktools-26.dl If I use AviSynth mt_masktools-25.dl I get a access violation RemoveGrainSSE2.dll Can anyone help me? |
23rd August 2015, 04:31 | #4 | Link |
Registered User
Join Date: Mar 2012
Location: Texas
Posts: 1,666
|
That doesn't tell us anything. If you want help you have to be more descriptive. Any error message(s)? Just guessing I would say you're probably missing the MSVC runtimes (very common problem), download and install vcredist_x86.exe. Also make sure you're using the 32-bit version of the plugins and delete all of the plugins from the "QTGMC plugins package using the updated AviSynth 2.6 interface", those plugins are all incompatible with AviSynth 2.6.
|
23rd August 2015, 17:21 | #5 | Link |
Registered User
Join Date: Mar 2002
Posts: 76
|
ok so I installed vcredist_x86.exe and removed the plugins from the folder. It was getting to be a lot in there from trying this or that.
So I have clean installs of: AviSynth 2.60 Build Feb20 2015 MeGUI 2525 And I'm ready to go with what is next. Can someone tell me what dlls I need to put in there please? And possibly post a script for testing purposes. Also it is better to have MT ones because they use my dual core yes? This is the first time I've ever had trouble trying to get a AviSynth script to work. I am now on like day 4/5 of trying to get this to work lol. Getting just a little frustrated but oh well. But I can't seem to let it go either. |
23rd August 2015, 17:59 | #6 | Link |
Registered User
Join Date: Mar 2012
Location: Texas
Posts: 1,666
|
QTGMC() with default settings requires only these core plugins: MaskTools2, MVTools, nnedi3, RgTools. Use the plugins that Groucho2004 linked to. For nnedi3 you can use the official nnedi3 or nnedi3 for AviSynth 2.6. If you want to use other features like denoising then you'll need FFT3DFilter or dfttest, read the documentation for more info.
I see you're using AviSynth 2.60 Build Feb20 2015, wouldn't hurt to update to the latest version. |
24th August 2015, 20:45 | #7 | Link |
Angel of Night
Join Date: Nov 2004
Location: Tangled in the silks
Posts: 9,559
|
Some of the plugins might need the other VCRedists. It's a good idea to get the 2008, 2010, 2012, 2013, and 2015! (Quite a pain.) I don't think anything made with 2005 is still floating around, but that's another. Each dll can potentially use a different version.
Oddly enough, I haven't seen anyone put together a single mega-installer on MSFN yet. That would be VERY helpful. |
25th August 2015, 22:36 | #8 | Link |
Registered User
Join Date: Mar 2002
Posts: 76
|
ok well I finally got it all working!!! At last!!! I've never had to fight so hard to get a script to work. So thank you one and all!!.....
Anyway I just want to do a final check that I have done everything correctly.... I updated and downloaded the dll's I was asked to. Updated AviSynth... And the other VCRedists.... I also download GRunT.dll from here: http://forum.doom9.org/showthread.php?t=139337 for use with SRestore(), (took me a while to realise it was a avsi script) I also had to swap out AviSynth.dll for the MT version http://forum.doom9.org/showthread.php?t=148782 It was slightly older than the AviSynth.dll already in there but not by much. And it cut down my encode time by 50%. Here is my script: # Set DAR in encoder to 16 : 9. The following line is for automatic signalling global MeGUI_darx = 16 global MeGUI_dary = 9 LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\mvtools2.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\masktools2.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\nnedi3.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\RgTools.dll") LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\GRunT.dll") import("C:\Program Files (x86)\AviSynth 2.5\plugins\QTGMC-3.32.avsi") import("C:\Program Files (x86)\AviSynth 2.5\plugins\SRestore.avsi") SetMemoryMax(2000) SetMTMode(3, 8) LoadPlugin("C:\Program Files (x86)\MeGUI\tools\ffms\ffms2.dll") FFVideoSource("Video.mkv", cachefile="Video.ffindex", fpsnum=30000, fpsden=1001, threads=1) SetMTMode(2) QTGMC(EdiThreads=2) SRestore() LoadPlugin("C:\Program Files (x86)\MeGUI\tools\avisynth_plugin\UnDot.dll") Undot() # Minimal Noise Now I should use QTGMC on interlaced video only right? What about partial film/interlaced stuff? Is my Resize in the right place? I know when you resize you have to be careful not to destroy the the fields in the video or something. Is there anything else I should do? Once again I appreciate the time and effort that was given to me. Thank You |
26th August 2015, 19:22 | #9 | Link | |
Registered User
Join Date: Sep 2006
Posts: 176
|
Quote:
http://www.wincert.net/forum/topic/9...utable-x86x64/ |
|
27th August 2015, 16:06 | #12 | Link | |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
Quote:
then why would anyone actually want to build some already developed program with "Debug" mode (= msvcr will be required)? "Debug" mode is only useful when the program is still under development, right? |
|
27th August 2015, 16:14 | #13 | Link | |
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
|
Quote:
You need them when you use dynamic linking in your project, you don't need them if you link against static libraries. |
|
27th August 2015, 16:19 | #14 | Link | |
Formerly davidh*****
Join Date: Jan 2004
Posts: 2,496
|
Quote:
At least, that's what I've come to believe over the years. I may be wrong about this. |
|
27th August 2015, 16:41 | #16 | Link |
Formerly davidh*****
Join Date: Jan 2004
Posts: 2,496
|
I would also recommend setting Enable Enhanced Instruction Set to SSE2. Practically everyone has it these days, and even if you don't directly code for it, the compiler might be able to use it to give your plugin a speed boost.
There may also be options there for AVX and AVX2, but those are much newer (2011 onwards), so older processors may not be able to run your compiled code. You will need to set these options separately for x86/x64 and debug/release. |
27th August 2015, 16:45 | #17 | Link | |
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
|
For those who link their DLLs against a static CRT, I strongly recommend reading this article on MSDN.
Pay close attention to this paragraph: Quote:
|
|
27th August 2015, 17:09 | #18 | Link | |
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
|
Quote:
Last edited by Groucho2004; 28th August 2015 at 21:33. |
|
1st September 2015, 16:44 | #19 | Link | |
Registered User
Join Date: Aug 2010
Location: Athens, Greece
Posts: 2,901
|
Quote:
I remember compiling the FLOPS C code with double precision floating point arithmetic, using MS VC 2013 with SSE2, AVX and AVX2-FMA3 switches, but non of them produced any speedup, although after disassempling the SSE, AVX and FMA3 versions, the code was there for each instruction set. So, it surely produces the instructions, but the final result was the same speed for all those executables on Haswell. It seems that it uses optimizations for all those instruction sets, but not for executing vectored code of arithmetic operations, probably some other kind (memory, caches) of optimizations. I'm not sure, I'm waiting for your feedback.
__________________
Win 10 x64 (19042.572) - Core i5-2400 - Radeon RX 470 (20.10.1) HEVC decoding benchmarks H.264 DXVA Benchmarks for all |
|
1st September 2015, 19:51 | #20 | Link |
Formerly davidh*****
Join Date: Jan 2004
Posts: 2,496
|
I was under the impression that it was just that certain things could be done quicker using SSE instructions even on single operands. There's some data here that suggests, for example, that sin implemented in SSE is 5 times quicker than ye olde sinf. It's not clear whether that's for one operand or four at once, but either way it still implies a speed-up with a single operand.
Maybe the speedups aren't so good for double precision stuff? |
|
|