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. |
24th March 2008, 07:33 | #1 | Link |
German doom9/Gleitz SuMo
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,753
|
Possible reason for "no plugin list"?
Greetings.
A reinstall of Windows fixed it - but I am curious which reason could have disabled AviSynth for one of the users of the german doom9/Gleitz board. He tried to load a simple 2-line script (LoadPlugin, *Source) and got the following error message: Code:
Avisynth open failure: LoadPlugin: unable to get plugin list $Plugins$, loading "Plugin.dll" (X:\00.avs, line 3) |
24th March 2008, 13:01 | #2 | Link |
Avisynth Developer
Join Date: Jan 2003
Location: Melbourne, Australia
Posts: 3,167
|
The relevant piece of code, line 69, plugins.cpp
Code:
env->SetGlobalVar("$Plugins$", env->SaveString((const char*)plugins, max_plugins*sizeof(HMODULE))); try { loaded_plugins = (HMODULE*)env->GetVar("$Plugins$").AsString(); } catch(...) { // probably should be IScriptEnvironment::NotFound if (!quiet) env->ThrowError("LoadPlugin: unable to get plugin list $Plugins$, loading \"%s\"", filename); return false; } Else corrupt copy Avisynth.dll on disk or in memory. |
2nd April 2008, 20:18 | #5 | Link | |
Registered User
Join Date: Aug 2007
Location: Taiwan
Posts: 10
|
Sorry for interrupt... I faced this problem today on newly installed windows system.
My hardware: Dell XPS M1330 Laptop computer with 2GB RAM. I partitioned HDD and installed two OS: Japanese WinXP and Vista. First is JWinXP, I installed all hotfix and some other applications (such as Firefox, foobar2000...) then installed avisynth 2.5.7 and latest MeGUI (megui online updated to newest state), but when I try to use AVS builder of MeGUI I got this error Quote:
(I downloaded AviSynth and MeGUI directly from SourceForge, I think the file is not broken. After a couple tries to uninstall/reinstall AVIsynth and MeGUI I gave up and turn to install a new Windows Vista to test. This time AVISynth is the first 3rd party application I installed. After I installed MeGUI, it can work to read AVS and show the right result. But after a few windows update hotfix installed, I got the same error..... I don't know what's wrong with it. But I really need to get rid of this issue before I can normally use this computer. |
|
2nd April 2008, 22:13 | #6 | Link | |
Avisynth Developer
Join Date: Jan 2003
Location: Melbourne, Australia
Posts: 3,167
|
On reading the code again, I beleive it cannot be SetGlobalVar failing a malloc, that would cause a GPF, therefore it must be some form of corruption.
Quote:
Try emptying your Plugins directory, in case an Autoloaded plugin is screwing over the $Plugins$ data area. With an empty plugins directory, are you able to run a simple script with only just "Version()" in it? If possible use system restore to roll back the hotfixes to see if it starts working again. If it does then manually install the hotfixes a few at a time (Make system restore checkpoints before each upgrade) to identify the Hotfix that breaks things. Also try the 2.5.8 alpha release. |
|
3rd April 2008, 09:24 | #7 | Link |
Registered User
Join Date: Aug 2007
Location: Taiwan
Posts: 10
|
Hello IanB,
I think I've find the root cause. 1. I deleted AVISynth2.5/plugins directory 2. Reinstall AVISynth 2.5.8 a2 3. Write test.avs with Version() function --> OK. 4. Install MeGUI and online update --> Open d2v file OK. 5. Install DirectVobSub 2.38 (vsfilter.dll , date 2008-3-6, comes from K-Lite Codec Pack 3.85) --> $Plugins$ trashed. Replace vsfilter.dll by an older version (date 2007-6-8, from older K-lite) solves my problem. Now avisynth works under JWinXP and WinVista. |
3rd April 2008, 10:29 | #8 | Link |
German doom9/Gleitz SuMo
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,753
|
See - Codec Packs are Evil. -- The reliable source for vsfilter.dll should be http://sf.net/projects/guliverkli
|
3rd April 2008, 17:49 | #9 | Link |
ангел смерти
Join Date: Nov 2004
Location: Lost
Posts: 9,558
|
Not true, the latest released version of vsfilter there has several known and long-fixed bugs, including a thread hang on most dual-core architectures! A better option is the files from guliverkli2 or mpc-hc projects.
|
12th April 2008, 17:54 | #11 | Link |
Registered User
Join Date: Aug 2006
Posts: 2,229
|
Had the same problem myself, actually it was driving me nuts! luckily I came across this thread, the culprit is indeed vsfilter.dll
I would have never have thought to change that since it was working before with the same filters, but anyways! |
23rd May 2008, 22:28 | #12 | Link |
Aging Video Hobbyist
Join Date: Dec 2004
Location: Off the Map
Posts: 2,461
|
Trying out VSfilter.dll today, actually renamed to VSfilter.vdf w/VdubM, latest version 962,560 bytes says 1.0.1.4 in Properties. Sometime after I'd copied this vsfilter.dll into the Avisynth plugins directory I got this error on an .avs file I'd been opening successfully all day:
Avisynth open failure: LoadPlugin: unable to get plugin list $Plugins$, loading "c:\program files\dgavcdec\dgavcdecode.dll I renamed the vsfilter.dll to .junk and Avisynth (2.58a) cruised again. Thinking maybe the free-codecs download I'd used was corrupt, I went to the guliverkli2 project site and DL'ed it there--same thing, no worky. Then I tried previous version from 20070918 and Avisynth likes it. Something broke going to the 20080306 2.38 package. Sure glad I didn't have to Restore, or (worse) reload Windows to find this! Whew... |
24th May 2008, 00:17 | #13 | Link |
Avisynth Developer
Join Date: Jan 2003
Location: Melbourne, Australia
Posts: 3,167
|
Okay, I finally worked out what is happening. The varTable is being corrupted. Specifically in this instance a variable has had the memory holding it's name free'd, so the internal strcmp() GPF's. I still can't find what is setting the variable in the first place, but when someone does find it, it is going to need an env->SaveString().
|
24th May 2008, 20:37 | #14 | Link |
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
So what we know is VSFilter 2007-09-18 is OK and VSFilter 2008-03-06 introduced a critical bug breaking AviSynth's plugin auto loading and many applications who depend on it.
It's almost three months old. I assume the programmer who introduced the critical bug isn't aware that there is a bug so we have to find out who introduced the bug so we can submit a bug report. Once it's fixed the codec pack authors have to be notified.
__________________
https://github.com/stax76/software-list https://www.youtube.com/@stax76/playlists Last edited by stax76; 24th May 2008 at 20:44. |
24th May 2008, 22:41 | #15 | Link |
Registered User
Join Date: Jan 2007
Posts: 455
|
Hello,
The problem came from a line added in the AviSynth plugin initialization : extern "C" __declspec(dllexport) const char* __stdcall AvisynthPluginInit2(IScriptEnvironment* env) { env->AddFunction("VobSub", "cs", VobSubCreateS, 0); env->AddFunction("TextSub", "cs", TextSubCreateS, 0); env->AddFunction("TextSub", "csi", TextSubCreateSI, 0); env->AddFunction("TextSub", "csif", TextSubCreateSIF, 0); env->AddFunction("TextSubSwapUV", "b", TextSubSwapUV, 0); env->AddFunction("MaskSub", "siifi", MaskSubCreateSIIFI, 0); // env->SetVar("RGBA",false); return(NULL); } I have commented the "env->SetVar("RGBA",false) and now there is no more access violation, but since i'm not the author of the original patch i don't know what this line do. This line also exist for AviSynth1 plugin. Should it be removed to? Any AviSynth expert informations about this appreciated The binary is available here for test perpose : http://www.zshare.net/download/125239838e4379f8/ Can you tell me if it's works?
__________________
Tired of tearing? Try this Media Player Classic mod : http://mpc-hc.sourceforge.net |
24th May 2008, 23:45 | #16 | Link |
Registered User
Join Date: Sep 2005
Location: 100011110010001000001 10000011111111000001
Posts: 221
|
Try the suggestion of IanB (see post #13 in this thread) and change the line to:
Code:
env->SetVar(env->SaveString("RGBA"), false);
__________________
AVSLib, a free extension library for Avisynth. Current version: 1.1.0 (beta), 14/05/2007. [ Home page | Download page ] |
25th May 2008, 22:12 | #17 | Link | |
Registered User
Join Date: Jan 2007
Posts: 455
|
Quote:
http://www.zshare.net/download/125690394d66d037/ Can someone do some additionnals tests with this VSFilter before I commit the modification?
__________________
Tired of tearing? Try this Media Player Classic mod : http://mpc-hc.sourceforge.net |
|
25th May 2008, 22:56 | #18 | Link | |
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
Quote:
Code:
Public Class VSFilterPackage Inherits AviSynthPluginPackage Public Sub New() Name = "VSFilter" Filename = "VSFilter.dll" Description = "VSFilter is a AviSynth plugin for adding hardcoded subtitles. Furthermore it's a DirectShow Filter to display optional subtitles." Version = "2.37" VersionDate = New DateTime(2005, 11, 25) Website = "http://sourceforge.net/projects/guliverkli" DownloadFilename = "VSFilter_2.37.zip" TreeFolder = "AviSynth Plugins" FilterNames = New String() {"VobSub", "TextSub"} End Sub Public Overrides Function Install() As Boolean Dim ret = MyBase.Install() If File.Exists(Path) Then Process.Start("regsvr32", "/s """ + Path + """") End If Return ret End Function End Class
__________________
https://github.com/stax76/software-list https://www.youtube.com/@stax76/playlists |
|
26th May 2008, 23:08 | #19 | Link |
Registered User
Join Date: Jan 2007
Posts: 455
|
This is from mpc-hc repository : http://sourceforge.net/projects/mpc-hc/
Basically it's original Gabest filter and several patches posted on Guliverlki project. I have made no modification myself in this filter.
__________________
Tired of tearing? Try this Media Player Classic mod : http://mpc-hc.sourceforge.net |
28th May 2008, 15:47 | #20 | Link | |
Registered User
Join Date: Dec 2002
Posts: 5,565
|
Quote:
|
|
Thread Tools | Search this Thread |
Display Modes | |
|
|