Fix for problems running Avisynth's RemoveDirtMC - digitalFAQ Forum
 Forum Fix for problems running Avisynth's RemoveDirtMC
 Ask Question Join / Register FAQ Search Today's Posts Mark Forums Read

#1
04-20-2018, 08:21 AM
 sanlyn Premium Member Join Date: Aug 2009 Location: N. Carolina and NY, USA Posts: 3,648 Thanked 1,265 Times in 972 Posts
The Avisynth plugin RemoveDirtMC.avs is a popular denoiser that can clean general grunge, grain, some spots and some dropouts from video. Especially recommended for analog captures and DV compression noise. But some users have complained that trying to run the filter results in Avisynth error messages.

RemoveDirtMC requires some older Avisynth plugins hat are still in wide use and work with old and new versions of Avisynth from 2.5 onward. The siupport plugins required are in RemoveDirt v0.9 and RemoveGrain v1.0. These plugins come with multiple filters and are attached here as .zip files. The .zips also contain install instructions and original html docs.

In its ongoing effort to generate confusion, obsolescence, and general dissatisfaction, Microsoft in its infinite wisdom did not include VisualC v7.1 runtime libraries in Windows 7, 8, or 10. They also ceased supporting the runtimes on their website. So if you have programs, games, or video apps that require 2003 .NET and VC++ runtime files, you're out of luck.

But wait! Several geek sites and Microsoft expatriates found a simple solution. What you require are two .dll's, and fortunately the .dll's don't require registry entries. All you have to do is have them in your wobegotten Win7/8/10 systems. If you're using XP Sp2/Sp3, those .dll's will be present.

The two files are Msvcp71.dll and Msvcr71.dll. A .zip containing them is attached. All that's needed is to copy the two files into the following locations:
- In 32-bit Windows, both dll's belong in /System32.
- In 64-bit Windows, both dll's belong in /SYSWOW64
These two dll's are 32-bit only.

Try this website for pictures and more notes: https://www.addictivetips.com/window...-in-windows-7/

There are other efforts to get these files into later Windows systems, but unfortunately the older updates that installed them won't run in Win7 or later, or have been discontinued by Microsoft, and even if they run they install other files that you don't want anyway.

Of course, you can always upgrade to XP.

Attached Files
 The following users thank sanlyn for this useful post: Damon_Brand (01-11-2019)
Someday, 12:01 PM
 Ads / Sponsors Join Date: ∞ Posts: 42 Thanks: ∞ Thanked 42 Times in 42 Posts
#2
09-27-2019, 09:48 PM
 hofmand Free Member Join Date: Sep 2019 Posts: 6 Thanked 6 Times in 3 Posts
I highly suggest using the official Microsoft Visual C++ redistributable packages available at this Microsoft link. It's easier and safer than copying dll's into your Windows directories.
#3
09-28-2019, 06:34 PM
 sanlyn Premium Member Join Date: Aug 2009 Location: N. Carolina and NY, USA Posts: 3,648 Thanked 1,265 Times in 972 Posts
Those two dll's are not available from Microsoft and never will be again. They are available only with older system installs and with a few retail software products no longer in print.

If you find a link, go for it and post it here.
#4
09-28-2019, 10:17 PM
 hofmand Free Member Join Date: Sep 2019 Posts: 6 Thanked 6 Times in 3 Posts
The "71" in files msvcrt71.dll, msvcp71.dll and so on means version "7.1" which is Visual Studio .NET 2003. Other version numbers are listed here. It's helpful to know what that "71" means when searching for the redistributables.

(The redistributables include the files msvcrt##.dll, mscvp##.dll, and so on.)

In this case, an Internet search found the restributables for v7.1 at the following two Microsoft links:

The reason we have to do this is because the Avisynth plugin was compiled against the v7.1 redistributables but the plugin did not package the necessary redistributables. It was simply laziness on the developer's part.

When the redistributable packs install dlls, they don't put them into C:\Windows\System32 or C:\Windows\SysWOW64 because there can be multiple versions of the same .dll filename, only one of which was tested with the application that needs it, and loading the wrong .dll can cause compatibility issues. Microsoft solved this "dll hell" by putting each version of the .dll into its own subdirectory of the WinSxS directory, and loading the correct .dll upon request.

When third party software installs redistributables, it can either package the whole redistributable installer(s) like at the two links above, or it can package just the .dll(s) and copy them into the application's own directory. It shouldn't copy the .dll(s) into C:\Windows\System32 or C:\Windows\SysWOW64 because of the "dll hell" problem described above.

I just tried installing the above two redistributable packs on my Windows 10 machine and they appeared to install successfully.
 The following users thank hofmand for this useful post: sanlyn (09-29-2019)
#5
09-29-2019, 07:23 AM
 sanlyn Premium Member Join Date: Aug 2009 Location: N. Carolina and NY, USA Posts: 3,648 Thanked 1,265 Times in 972 Posts
Thanks for the links. I used to implement .net libraries in my programming days (what a pain in the neck!). Why Micro\$oft made these links so difficult to find isn't surprising, while having to install the whole 1.x framework to get one small dll isn't a surprise either. There was a time in the dim archeological past when "backward compatible" was possible, but that went down the river a long time ago. Thanks again.
#6
04-04-2020, 09:37 PM
 Winsordawson Premium Member Join Date: Sep 2010 Location: Behind you Posts: 438 Thanked 28 Times in 24 Posts
I have installed all of the redistributable packages and the two .dll files listed above were already there. AvsPMod seems to recognize RemoveDirt because it comes up as an suggestion, but when I run it an error says that there is no function by that name. I am using Avisynth+ and have RemoveGrain. Any ideas?
 The following users thank Winsordawson for this useful post: Moffie56 (03-12-2022)
#7
04-05-2020, 08:48 AM
 sanlyn Premium Member Join Date: Aug 2009 Location: N. Carolina and NY, USA Posts: 3,648 Thanked 1,265 Times in 972 Posts
Quote:
 Originally Posted by Winsordawson I have installed all of the redistributable packages and the two .dll files listed above were already there. AvsPMod seems to recognize RemoveDirt because it comes up as an suggestion, but when I run it an error says that there is no function by that name. I am using Avisynth+ and have RemoveGrain. Any ideas?

When you get Avisynth errors you should post your script. It looks as if you didn't import RemoveDirtMC.avs, which doesn't load automatically. Use a statement such as:
Code:
Import("Drive:\path\to\RemoveDirtMC.avs")
Correct the path statement above to indicate the location of the .avs script in your system.
http://avisynth.nl/index.php/Internal_functions#Import
#8
04-05-2020, 10:39 AM
 Winsordawson Premium Member Join Date: Sep 2010 Location: Behind you Posts: 438 Thanked 28 Times in 24 Posts
Thank you for the reply. I know how to import a script but I can't even get to RemoveDirtMC because RemoveDirt() returns an error saying "There is no function called RemoveDirt()". But AVSPmod does recognize it as a suggestion while typing. I installed the newest version which is statically linked. My understanding was that RemoveDirtMC() was a modified version of RemoveDirt(). My script was just:

Code:
LoadPlugin("C:\Program Files (x86)\AviSynth+\plugins+\RemoveDirt.dll")
AVISource("file.avi")
RemoveDirt()
return last
#9
04-05-2020, 11:54 AM
 msgohan Free Member Join Date: Feb 2011 Location: Vancouver, Canada Posts: 1,323 Thanked 329 Times in 274 Posts
AvsPmod includes a database of functions; the fact that it shows an autocomplete suggestion doesn't mean you have the filter installed. I've also found this confusing, at times.

https://github.com/AvsPmod/AvsPmod/wiki/Filter-database
#10
04-05-2020, 02:59 PM
 Winsordawson Premium Member Join Date: Sep 2010 Location: Behind you Posts: 438 Thanked 28 Times in 24 Posts
Quote:
 Originally Posted by msgohan AvsPmod includes a database of functions; the fact that it shows an autocomplete suggestion doesn't mean you have the filter installed. I've also found this confusing, at times. https://github.com/AvsPmod/AvsPmod/wiki/Filter-database
Thank you. I thought that the filters that pop up with a question mark inside a person are the filters that cannot be found. My RemoveDirt has a green check mark next to it. There are also some with a but I have no clue as to why.

 Similar Threads Thread Thread Starter Forum Replies Last Post scameron Capture, Record, Transfer 15 01-19-2010 07:38 PM admin Web Design + Site Planning 4 01-10-2010 11:07 PM admin Computers 0 06-06-2009 01:23 AM Canon Computers 1 02-20-2009 11:43 PM manthing Capture, Record, Transfer 10 03-13-2006 10:37 PM