Log in

View Full Version : Dlls with same calls/functions in plugin Dir


DDogg
19th May 2004, 17:19
I've always wondered what happens if you get sloppy and leave 2 DLLs in the plugin Dir that do the same things. Like if you left 2 versions of Decomb, or mpeg2dec3/DG. What happens when a mpeg2source call is made, or a telecide()? Anybody know the answer off hand?

Bidoche
19th May 2004, 18:02
I've always wondered what happens if you get sloppy and leave 2 DLLs in the plugin Dir that do the same things. Like if you left 2 versions of Decomb, or mpeg2dec3/DG. What happens when a mpeg2source call is made, or a telecide()? Anybody know the answer off hand?At call, first function found who match the arguments given is used.
It does not search/check if there is another one.
That is to say, it does not handle the ambiguity.

Wilbert
19th May 2004, 20:13
Like if you left 2 versions of Decomb, or mpeg2dec3/DG.
You can demand which one will be used. Read the end of

http://www.avisynth.org/index.php?page=AviSynthPlugins

DDogg
19th May 2004, 21:14
Thanks, Bidoche. Wilbert, thanks for the link. I had not checked the docs in a while. Nice to know we have this ability in 2.55, I was not at all aware of it.

stickboy
20th May 2004, 17:12
It doesn't auto-generate the additional names for plug-ins loaded with LoadPlugin.So is this intentional? Why?

Wilbert
20th May 2004, 19:34
I don't remember. You will have to ask Sh0dan, but I guess he's taking a break for several weeks :)

stickboy
22nd May 2004, 04:57
Personally, I'd prefer that manually loaded plug-ins get the additional names too.
It's more consistent.
For the most part, I don't use the plug-in autoloader. I don't like lumping all of my plugins into the same folder, and I prefer to organize them into subdirectories. As a consequence, I need to call LoadPlugin explicitly. (I do this by autoloading a script that makes the necessary LoadPlugin calls.)
People who share scripts can use DLLName_Function without worrying about oddball AviSynth configurations like mine.But maybe that's just me...

I don't see how removing this exception would hurt, though, unless there's some technical reason for it.

Fizick
11th July 2005, 19:26
It only works for auto-loaded plugins. It doesn't auto-generate the additional names for plug-ins loaded with LoadPlugin.

Avisynth Manual is not correct here.

I often load different (renamed) versions of my plugins to compare its output, for example some day ago I use a script:


avisource("h:\test.avi")
loadplugin("fft3dfilter093.dll")
loadplugin("fft3dfilter110.dll")
converttoyv12(interlaced=false)
i=last
f093=fft3dfilter093_fft3dfilter(i,bt=-1,sharpen=5.0)
f110=fft3dfilter110_fft3dfilter(i,bt=-1,sharpen=5.0)
interleave(i,f093,f110)


It works good both for autoloading and for LoapPlugin, in any combination.
At last with all 2.5.6 beta versions

so, i want change a manual.
(Wilbert, may I do it ?)

Wilbert
11th July 2005, 20:29
so, i want change a manual.
(Wilbert, may I do it ?)
Yes, please do :)

Fizick
11th July 2005, 21:17
Done. :)

IanB
14th July 2005, 04:05
As for explicitly loaded pluggins getting the additional names, it is not intensional, the code has a harmless bug resetting the state from prescanning pluggins.

I take it people like this bug and I should not fix it. :D

IanB

Leak
14th July 2005, 08:20
As for explicitly loaded pluggins getting the additional names, it is not intensional, the code has a harmless bug resetting the state from prescanning pluggins.

I take it people like this bug and I should not fix it. :D

I can't think how this could cause any harm, so why were the additional names only meant to be generated for auto-loaded plugins in the first place? *wonders*

Fizick
14th July 2005, 17:57
IanB, you accomplish a great "nonaction" as true Taoist! :)