Log in

View Full Version : 64bit Windows and Avisynth/Vdub


papcom
13th November 2014, 18:44
64Bit or 32Bit - Which platform is the right one if I want to work with avisynth (film- and video restoring) and Virtual Dub with more render power?

What about the filters and plugins? Will they still work with 64 Bit… I am especially into these plugins : despot, degrain, depan, remove dirt, remove grain, warpsharp, mvtools, etc….

Asmodian
13th November 2014, 22:42
64 Bit.

32 bit software works fine in 64 bit Windows and you have access to a lot more memory. The 32 bit apps will not, they get up to 4 GB with large address aware, but the rest of the OS can.

Groucho2004
13th November 2014, 22:59
What about the filters and plugins? Will they still work with 64 Bit… I am especially into these plugins : despot, degrain, depan, remove dirt, remove grain, warpsharp, mvtools, etc….
32 Bit plugins only load with 32 Bit Avisynth, 64 Bit plugins only load with 64 Bit Avisynth.
There are not many plugins which were ported to 64 Bit, looking at your list it seems that you have to stick with 32 Bit.
However, on a 64 Bit OS, you can utilize almost 4 GB for Avisynth32 alone which should be sufficient in most cases.

creaothceann
14th November 2014, 01:02
Well, maybe you could pipe video data from 32-bit to 64-bit and vice versa, but it'd probably a lot of work (if it works at all).

Groucho2004
14th November 2014, 02:07
Well, maybe you could pipe video data from 32-bit to 64-bit and vice versa, but it'd probably a lot of work (if it works at all).
I pipe my scripts from 32 bit avisynth to 64 bit x264 all the time, avs2yuv and a simple batch file is all that's needed.

papcom
14th November 2014, 11:10
thank You for Your input. But I still don't know… shall I go for 32bit OS or 64Bit?


Do my 32 bit Scripts work on the 64 bit Windows8 Platform?
Do I have to install 23-bit Avisynth on the 64bit PC?
What means: "may be you could pipe video data from 32-bit to 64-bit ?"
What means: "32 bit software works fine in 64 bit Windows …the 32 bit apps will not"?

colours
14th November 2014, 11:30
You should always choose to install the x86-64 version of an OS over the x86 version unless you have very special requirements and know what you're doing.

1: Scripts are plain text files, and if you have the appropriate plugins for the appropriate architecture installed, they'll work just as well on 32-bit as on 64-bit. The only problem is that many older plugins do not have 64-bit binary releases, so it's generally less painful to stick to using 32-bit Avisynth.

2: The Avisynth+ installer installs both 32-bit and 64-bit DLLs by default.

creaothceann
14th November 2014, 18:20
I pipe my scripts from 32 bit avisynth to 64 bit x264 all the time, avs2yuv and a simple batch file is all that's needed.

I meant 32-bit Avisynth ↔ 64-bit Avisynth.

Groucho2004
14th November 2014, 18:58
I meant 32-bit Avisynth ↔ 64-bit Avisynth.
Can you elaborate?

creaothceann
14th November 2014, 19:28
Running a 32-bit program that has 32-bit Avisynth and 32-bit plugins loaded, and passing the video to a program that has 64-bit Avisynth and 64-bit plugins loaded. Or vice versa.

Sparktank
15th November 2014, 05:15
Running a 32-bit program that has 32-bit Avisynth and 32-bit plugins loaded, and passing the video to a program that has 64-bit Avisynth and 64-bit plugins loaded. Or vice versa.

Have you looked at MP_Pipeline?
It can pass 32/64 back and forth.
Requires quite a bit of reading to understand how it works and some testing to get it right.

I've not used it (enough to give any help). Just to pass the source indexed as x64 DGdecNV.

MP_Pipeline 0.18 - run parts of avisynth script in external processes [2014-04-06]
http://forum.doom9.org/showthread.php?p=1542161

the little work i did was not beneficial to my simple editing needs.
but more complex scripts requiring x64 plugins would be better suited to actually use something like MP_Pipeline.

The documentation provided in the archive provides much more reading material and examples.

Asmodian
17th November 2014, 02:12
64Bit or 32Bit - Which platform is the right one if I want to work with avisynth (film- and video restoring) and Virtual Dub with more render power?

What about the filters and plugins? Will they still work with 64 Bit… I am especially into these plugins : despot, degrain, depan, remove dirt, remove grain, warpsharp, mvtools, etc….

To elaborate on the original question:

OS: Use 64 bit. No reason to use a 32 bit OS for Avisynth & VirtualDub.

Avisynth: 32 bit, it is more stable and generally works better. There is little advantage to >4GB of memory for even the most demanding of scripts (may change if using 4K) and the ecosystem is much more robust with 32 bit Avisynth. 32 bit Avisynth runs better in a 64 bit OS than it does in a 32 bit OS.

VirtualDub: 32 bit, you need to use the same bitdepth as Avisynth. You probably still don't need more than 4GB of RAM so this is ok.

x264: I like piping to 64 bit, 64bit x264 is faster. Piping has gotten pretty easy now and there are some good GUIs and guides for it. 32 bit x264 works as well if you wish to avoid piping.

Asmodian
17th November 2014, 02:29
thank You for Your input. But I still don't know… shall I go for 32bit OS or 64Bit?


Do my 32 bit Scripts work on the 64 bit Windows8 Platform?
Do I have to install 23-bit Avisynth on the 64bit PC?
What means: "may be you could pipe video data from 32-bit to 64-bit ?"
What means: "32 bit software works fine in 64 bit Windows …the 32 bit apps will not"?



Yes, 32 bit Scripts actually work better in 64 bit Win8 than they do in 32 bit Win8.
Yes you install 32-bit Avisynth on the 64 bit PC with 64 bit Windows.
There is a way to transfer data from 32 bit programs to 64 bit programs called "piping". It passes it though a "pipe" which allows 64 bit and 32 bit software to communicate. This is not related to the OS, only software running within it, and you probably do not need to use it.
I don't think anyone said the "...the 32 apps will not" part? 32 bit software works well in 64 bit Windows. It is only that 32 bit software can only directly use 32 bit software. For example: 32 bit VirtualDub can only use 32 bit Avisynth using 32 bit plugins but all of them can run on 64 bit Windows.


Edit: I see my "The 32 apps will not"; that was referring to the "accesses to a lot more memory" not weather or not they ran in 64-bit OS. I can see how it would be confusing for a non-native speaker.

Rewritten to be more specific, maybe it is less confusing (maybe more confusing?). :o
"32 bit software works fine in 64 bit Windows and you have access to a lot more memory. The 32 bit apps will not have access to a lot more memory, they only get up to 4 GB with large address aware, but the rest of the OS can access more memory so each 32 bit application can get the full 32 bit limit."

papcom
17th November 2014, 14:15
thanks a lot for Your detailed explanations. I have bought a Win8 Pro 64Bit OS and I will setup my 64Bit PC asap. Will report my experience when I am ready.

SEt
17th November 2014, 21:18
Actually under 64-bit Windows 32-bit programs can use 64-bit code. I've even halfway written wrapper for 32-bit Avisynth to load 64-bit plugins but that died due to lack of time and interest.
Though that is of course very advanced topic and for newbies it's definitely better to explain "everything must have the same bitness in one process".

As for original question: always go with 64-bit OS if not sure.

foxyshadis
18th November 2014, 01:41
Actually under 64-bit Windows 32-bit programs can use 64-bit code. I've even halfway written wrapper for 32-bit Avisynth to load 64-bit plugins but that died due to lack of time and interest.
Though that is of course very advanced topic and for newbies it's definitely better to explain "everything must have the same bitness in one process".

As for original question: always go with 64-bit OS if not sure.

I was considering sketching out an x64 wrapper for MadVR, but I definitely don't have the dedication to keep that current. It's too bad the commercial wrappers are all pretty pricey.

papcom
18th November 2014, 19:27
which Versions of Avisynth and VirtualDub would You suggest for safest and effective Operation?
Lately I have used Vdub 1.10.4 and Avisynth 2.6MT on my WIN7 32-bit PC, and as an Editor AvsPMod 2.5.1

creaothceann
18th November 2014, 21:41
I'm using this:

- Win7 (64-bit)
- AvsPmod
- doing everything via GUI: VirtualDubMod (lets you save the "fast recompress" video option) + x264vfw + lame MP3 codec (ACM version)
- doing everything via CLI: cmd.exe + x264.exe + lame.exe + batch files (Notepad2 / Notepad++ for editing)

If you want the safest option, use 32-bit Avisynth without multithreading and split the video encoding into several parts that run concurrently (dunno if 2.6 is more stable than 2.58).

papcom
18th November 2014, 23:10
i searched for virtualdubmod, but i did only find Releases from 2003. Which Version is the correct one and from where do I get VirtualDubMod?

creaothceann
18th November 2014, 23:13
http://virtualdubmod.sourceforge.net/

Yup it's old, but since it's only used for connecting data streams with encoders...

papcom
19th November 2014, 11:53
my first Problem: After Installation of avisynth on my 64bit Win8, I cannot find avisynth.dll, which normally should be in system32 Folder. Where is this now?

Groucho2004
19th November 2014, 12:06
my first Problem: After Installation of avisynth on my 64bit Win8, I cannot find avisynth.dll, which normally should be in system32 Folder. Where is this now?
If you installed the 32 Bit Avisynth version, it should be in SysWoW64. On a 64 Bit OS, "system32" is only for 64 Bit binaries.

papcom
19th November 2014, 13:00
thank You @groucho2004 - I have found it.
What shall I do with the plugins? I have installed avisynth 2.5.8, then replaced the DLL with the Version 2.6, and now which dllßs do I have to put in the plugins Folder 32bit or 64 bit? (or both, which can be difficult if they have the same Name)

Groucho2004
19th November 2014, 16:40
I have installed avisynth 2.5.8, then replaced the DLL with the Version 2.6
Why? There is an installer for v2.6 (http://sourceforge.net/projects/avisynth2/files/AviSynth_Alpha_Releases/AVS%202.6.0%20Alpha%205%20%5B130918%5D/AviSynth_130918.exe/download).

now which dllßs do I have to put in the plugins Folder 32bit or 64 bit?
32 Bit plugins for 32 Bit Avisynth, I believe it has been said several times before in this thread.
Your confusion makes me think that you would benefit from having a look at information about the basic workings of Avisynth, nicely organized on this web page (http://avisynth.nl/index.php/Main_Page).

papcom
19th November 2014, 23:54
Why? There is an installer for v2.6 (http://sourceforge.net/projects/avisynth2/files/AviSynth_Alpha_Releases/AVS%202.6.0%20Alpha%205%20%5B130918%5D/AviSynth_130918.exe/download).

32 Bit plugins for 32 Bit Avisynth, I believe it has been said several times before in this thread.
Your confusion makes me think that you would benefit from having a look at information about the basic workings of Avisynth, nicely organized on this web page (http://avisynth.nl/index.php/Main_Page).

The install procedure of avisynth2.6 I made several times before, because in the 2.6 Thread here, this is recommended like this ... and it worked always for me.=== What is different or better with the installer You mention?

regarding the Avisynth wiki - I know this page well since a Long time. Although I have read a lot on this page and in other ressources, but this does not mean that I understand everything today. I occupy myself since years with avisynth and vdub (sporadicly) but I did never use it in a 64 bit environnement... that`s what confuses me sometimes a bit. That`s why I am thankful for any help... I shurely do not have to restart at the wiki!

Groucho2004
20th November 2014, 00:07
The install procedure I made several times before, because in the 2.6 Thread this was recommended and it worked always.
Do you have a link where this is recommended? It makes no sense since there is (and has been for a while) an installer for 2.6.

What is different or better with the installer You mention?
It does for example install up to date docs and plugin DLLs.

papcom
20th November 2014, 09:20
@groucho2004 - Look here:

How to use it correctly
1. Installation
Install any recent official version of Avisynth.
Replace avisynth.dll in your system32 (on 32-bit OS) or syswow64 (on 64-bit OS) folder with the one from this thread.
http://forum.doom9.org/showthread.php?t=148782

Groucho2004
20th November 2014, 09:56
@groucho2004 - Look here:

How to use it correctly
1. Installation
Install any recent official version of Avisynth.
Replace avisynth.dll in your system32 (on 32-bit OS) or syswow64 (on 64-bit OS) folder with the one from this thread.
http://forum.doom9.org/showthread.php?t=148782
2.5.8 is 6 years old, I'd hardly call that recent. Anyway, it's no big deal, it will most likely work just fine.

papcom
20th November 2014, 12:46
basically I have my 64-bit System up and running. Most functions are OK but there are some Points which do not work anymore:


in VirtualDub 1.10.4 I do not have the "MSU Colors"- filter in my filterlist, although the "MSUColorEnhancement.vdf" is in my plugins32 Folder of vdub.

in Avisynth 2.6 (32bit) my script with RemoveDirtMC (RemoveGrain) there is the error: there is not function named "RemoveGrain"

in Avisynth when I load @johnmeyers script there is the error: load plugin: unable to load "RemoveDirtSSE2.dll


...is there any easy solution to this? I am greatful for Your hints.

StainlessS
20th November 2014, 13:57
Removegrain And Removedirtsse2 both require MSVCR71.dll from Visualstudio Toolkit3 / VS DotNet 2003
http://forum.doom9.org/showthread.php?p=1699834#post1699834

Is MSUColorEnhancement.vdf actually a 32 bit plugin, should it just be in the ordinary plugins directory ?

EDIT: 32 bit plugins all have *.vdplugin extension, yes it should be in ordinary plugins directory and NOT 32 bit plugins.

papcom
20th November 2014, 14:09
Removegrain And Removedirtsse2 both require MSVCR71.dll from Visualstudio Toolkit3 / VS DotNet 2003
http://forum.doom9.org/showthread.php?p=1699834#post1699834

Is MSUColorEnhancement.vdf actually a 32 bit plugin, should it just be in the ordinary plugins directory ?

EDIT: 32 bit plugins all have *.vdplugin extension, yes it should be in ordinary plugins directory and NOT 32 bit plugins.


Re avisynth pugins (removegrain etc.) - I have checked in the avisynth plugins Directory of my WIN7-32bit PC, (where my vs- scripts run fine)... there is no MSVCR71.dll there... Has this changed with 64bit WIN8, or what is the reason, that I need MSVCR71.dll now?
Re Vdub - all my vdf plugins are in the vdub plugins32 folder and run fine. What is the "ordinary" plugins direcory you mention?

StainlessS
20th November 2014, 14:23
See the link I posted and a few posts prior and links there.

Well '*.vdf' plugins are supposed to go in 'Plugins' directory not 'Plugins32' where the '*.vdplugin' plugins are supposed to go.
The real question is how/why are the other vdf's working when they should not be.

Reel.Deel
20th November 2014, 14:35
Removegrain And Removedirtsse2 both require MSVCR71.dll from Visualstudio Toolkit3 / VS DotNet 2003
http://forum.doom9.org/showthread.php?p=1699834#post1699834
Only the RemoveGrain v0.9 package requires the MSVCR71.DLL runtime. v0.9 is considered outdated (SSETools is the only plugin that is (unfortunately) still in use from that package).

RemoveGrain v1.0 (http://avisynth.nl/index.php/RemoveGrain_v1.0b) is highly recommended and it requires the MSVCR80.DLL from the Microsoft Visual C++ 2005 Redistributable Package (x86) (http://www.microsoft.com/en-us/download/details.aspx?id=3387).

Regarding RemoveDirt (http://avisynth.nl/index.php/RemoveDirt), yes it does require MSVCR71.dll; download it here: msvcr7071msvcp7071.rar (https://web.archive.org/web/20070706223430/http://home.arcor.de/dhanselmann/_stuff/msvcr7071msvcp7071.rar) and add to your system directory (SysWOW64 on Windows 7).

StainlessS
20th November 2014, 14:36
Thanx RD.

papcom
20th November 2014, 14:41
Well '*.vdf' plugins are supposed to go in 'Plugins' directory not 'Plugins32' where the '*.vdplugin' plugins are supposed to go.
The real question is how/why are the other vdf's working when they should not be.
I checked all Vdub Installations... in Vdub 1.9.11 there is a plugins Folder but no plugins32-folder... and in Vdub 1.10.4 there is a plugins32 folder and no plugins-folder. On my two other Win732bit PC's I have no problems with these vdf's but now obviously under WIN8-64bit it is different.

btw: These are the DLL's in my standard avisynth plugins Directory.
03_RemoveDirtMC.avs
AutoAdjust.dll
colors_rgb_avsi
DePan.dll
DePanEstimate.dll
despot.dll
DirectShowSource.dll
ff3dfilter.dll
fftw3.dll
mt_masktools.dll
MVTools.dll
mvtools2.dll
QTSource.dll
RemoveDirt.dll
RemoveDirtSSE2.dll
Removegrain.dll
RemoveGrainSSE2.dll
SmoothAdjust.dll
TCPDeliver.dll
warpsharp.dll

Reel.Deel
20th November 2014, 14:49
btw: These are the DLL's in my standard avisyth plugins Directory.
...
RemoveDirt.dll
RemoveDirtSSE2.dll
Removegrain.dll
RemoveGrainSSE2.dll
...

You should only have one of each; read this post from StainlessS: http://forum.doom9.org/showpost.php?p=1699833&postcount=1832

papcom
20th November 2014, 14:58
I have read it but that's just the point: When I have a script which uses SSE" and another which does not?!?

#SetMemoryMax(1000)

LoadPlugin ("mvtools2.dll") #Version 2.5.11.9 2/24/2012
LoadPlugin("autolevels.dll") #Version 0.6.0.0 1/09/2011
LoadPlugin("Deflicker.dll") #Version 0.4.0.0 8/16/2004
Loadplugin("Depan.dll") #Version 1.10.0.0 4/09/2007
LoadPlugin("DepanEstimate.dll") #Version 1.9.2.0 3/25/2007
LoadPlugin("fft3dfilter.dll") #Version 2.1.1.0 2/20/2007
Loadplugin("mt_masktools.dll") #Version 2.0.23.0 3/14/2008
loadplugin("RemoveDirtSSE2.dll") #Version 0.9 5/05/2005
Loadplugin("RemoveGrainSSE2.dll") #Version 0.9 5/01/2005
#Loadplugin("removegrain.dll") #Version 0.9 5/01/2005
Loadplugin("warpsharp.dll") # 4/05/2010


QTInput("C:\videodaten\myonee_.mov") .FlipHorizontal()
converttoYV12()
RemoveDirtMC(30,false)

function RemoveDirtMC(clip,int limit, bool "_grey")
{
_grey=default(_grey, false)
limit = default(limit,6)

#~ prefiltered = fft3dfilter(clip,sigma=1,sigma2=2,sigma3=3,sigma4=5,bw=64,bh=64)
prefiltered = RemoveGrain(clip,2)
superfilt = MSuper(prefiltered, hpad=32, vpad=32,pel=2)

super=MSuper(clip, hpad=32, vpad=32,pel=2)

bvec = MAnalyse(superfilt,isb=true, blksize=16, overlap=2,delta=1, truemotion=true)
fvec = MAnalyse(superfilt,isb=false, blksize=16, overlap=2,delta=1, truemotion=true)

# Increase thSAD if moving objects are being removed!!
bvec_re = Mrecalculate(super,bvec,blksize=8, overlap=0,thSAD=100)
fvec_re = Mrecalculate(super,fvec,blksize=8, overlap=0,thSAD=100)

backw = MFlow(clip,super,bvec_re)
forw = MFlow(clip,super,fvec_re)

clp=interleave(backw,clip,forw)
clp=clp.RemoveDirt(limit,_grey)
clp=clp.SelectEvery(3,1)
return clp
}

function RemoveDirt(clip input, int limit, bool _grey)
{
clensed=input.Clense(grey=_grey, cache=4)
alt=input.RemoveGrain(2)
return RestoreMotionBlocks(clensed,input,alternative=alt,pthreshold=6,cthreshold=8, gmthreshold=40,dist=3,dmode=2,debug=false,noise=limit,noisy=4, grey=_grey)
}

StainlessS
20th November 2014, 15:06
eg RemoveDirt uses either RemoveDirt.dll or RemoveDirtSSE.dll or RemoveDirtSSE2.dll or RemoveDirtSSE3.dll or RemoveDirtS.dll,
whichever one was loaded last. The avisynth filter is RemoveDirt not RemoveDirtSSE2 (or whatever).

EDIT: All dll's above have a filter called "RemoveDirt()", the SSE stuff in dll name tells what processor is needed, eg SSE needs
Pentium III or above.

Reel.Deel
20th November 2014, 15:09
I have read it but that's just the point: When I have a script which uses SSE" and another which does not?!?


That does not matter, the plugin will work the same.




Loadplugin("mt_masktools.dll") #Version 2.0.23.0 3/14/2008


Wow that version is ancient, I recommend the latest version here (https://github.com/tp7/masktools/releases).

papcom
20th November 2014, 16:13
Regarding RemoveDirt (http://avisynth.nl/index.php/RemoveDirt), yes it does require MSVCR71.dll; download it here: msvcr7071msvcp7071.rar (https://web.archive.org/web/20070706223430/http://home.arcor.de/dhanselmann/_stuff/msvcr7071msvcp7071.rar) and add to your system directory (SysWOW64 on Windows 7).

thank You all... putting these DLL's into the SysWOW64 Folder did help.

Obviously MSUcolorEnhancer VDub Filter Needs a mfc71.dll... That's what vdub tells me when MSUColor is in a "plugins" Folder (instead of the plugins32 Folder). Where can I get such a DLL?
(I assume that I don't have to download the whole visual C package?!)

StainlessS
20th November 2014, 17:18
If you do a search on your Program Files (or whatever it is on 64bit), you will probably find many copies of that file.

papcom
20th November 2014, 17:24
If you do a search on your Program Files (or whatever it is on 64bit), you will probably find many copies of that file.
wow mysterious ...I did a search on my PC and the result was "Zero"... did not find any mfc71.dll.

StainlessS
20th November 2014, 17:37
OK, Here you are:
http://www.mediafire.com/download/1220u8g1drmubi8/MSVCR71_70_Runtimes.rar

EDIT: And here is Dependency Walker 2.2 which MS bundles in Visual Studio (from the makers, ie might be more recent than
the one that MS is distributing): http://www.dependencywalker.com/

Load a dll and see what other dll's it depends upon.

papcom
20th November 2014, 18:18
thank You @stainless - I have searched my older Win7-32bit PC and there I found one mfc71.dll in the system32 Folder.

let's see what the evening brings... :-) thanks again.

papcom
22nd November 2014, 14:18
so far everything works fine on my new 64bit-Win8 PC. Thank You all for Your helpful hints. My next project will be to sort out and exchange all old or outdated DLL's

papcom
28th November 2014, 21:24
@johnmeyer - I actually try Your filmrestoring scripts (MT Versions) with Avisynth 2.6MT and Virtual Dub 1.10.4 on my 64bit WN8 PC... In AvsPMod the script runs fine and shows the result picture. But in Virtual Dub 1.10.4 on the same computer I cannot load Your script... it immediately shows the Vdub error: unable to open file.

Avisynth and all plugins are installed as 32-bit Versions.

I had the same Kind of problem on my Win7 PC, where I cannot load Your film-restoring-scripts in VDub 1.10. Anyway the scripts run in Vdub 1.9.

Where shall I start to search?