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.

Domains: forum.doom9.org / forum.doom9.net / forum.doom9.se

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Development
Register FAQ Today's Posts Search

Reply
 
Thread Tools Search this Thread
Old 8th March 2004, 13:01   #21  |  Link
Manao
Registered User
 
Join Date: Jan 2002
Location: France
Posts: 2,856
Quote:
What happens with user defined function:

function mpeg2dec_motionmask (.......){} ?
They create an error, and I don't see a problem here. The user can define it another way.
Quote:
Nobody knows about all exported functions from all installed plugins.
Yes, but an error message saying function's name is already in use should be enough.
Quote:
I'll never prefer that quadro point thing, one point is enough
Yes, of course, but '.' is already in use ( clip.filter() ), so you have to find another separator.

BTW, banning '_' from dll & function name would resolve almost all the issues you're expecting. The filters using '_' in the dll name or a function name can be counted on the finger of one hand ( I know only _2DcleanerYUY2 )
Manao is offline   Reply With Quote
Old 8th March 2004, 14:28   #22  |  Link
stickboy
AviSynth Enthusiast
 
Join Date: Jul 2002
Location: California, U.S.
Posts: 1,267
Quote:
Originally posted by Manao
Quote:
What happens with user defined function:

function mpeg2dec_motionmask (.......){} ?
They create an error, and I don't see a problem here.
If I'm understanding sh0dan correctly, there would be no error.

Despite what the AviSynth docs say, user-defined functions seem to override plug-ins and built-in function names. (I think it's better that way. Functions in the script itself should take precedence. It would be bad if adding a plug-in to the autoload directory broke an existing script.) Nothing should happen to that user-defined function.

The current approach is that when a plug-in adds its function names to the namespace, AviSynth generates the corresponding dll_ names and adds those to the namespace too. This has the advantage of not requiring any changes to the parser and not having any ambiguity, but it has the disadvantage that the generated names won't necessarily be unique. If there is a collision, behavior would be the same as it currently is.
Quote:
BTW, banning '_' from dll & function name would resolve almost all the issues you're expecting. The filters using '_' in the dll name or a function name can be counted on the finger of one hand ( I know only _2DcleanerYUY2 )
If you want to include user-defined functions, I can think of quite a number of functions that have underscores in their names.

Last edited by stickboy; 8th March 2004 at 14:39.
stickboy is offline   Reply With Quote
Old 8th March 2004, 23:46   #23  |  Link
zettai
Fascinated Lurker
 
zettai's Avatar
 
Join Date: Feb 2002
Location: Durham, UK
Posts: 243
If we are creating alias function names do we really need overrides at all?

Is it not possible that when a filter is parsed that the regular function names are defined AND an alias name which is filtername_functionname is also defined. If a name exists then only the latter is defined.

This not only allows you to use the first funciton in the chain as Function() but it also allows you to specify which type you use whether there is a function clash or not.

So even if I didn't have any other filters that contained Telecide I could still have a script containing decomb511_telecide(order=1) and know what I was going to get and if by chance I happen to leave an old version in the plugin dir I'd still be able to use the new one.

Am I making any sense?
zettai is offline   Reply With Quote
Old 9th March 2004, 00:00   #24  |  Link
stickboy
AviSynth Enthusiast
 
Join Date: Jul 2002
Location: California, U.S.
Posts: 1,267
Quote:
Originally posted by zettai
Is it not possible that when a filter is parsed that the regular function names are defined AND an alias name which is filtername_functionname is also defined.
I think this is what the new scheme already does.
Quote:
If a name exists then only the latter is defined.

This not only allows you to use the first funciton in the chain as Function() but it also allows you to specify which type you use whether there is a function clash or not.
Currently whatever plug-in was loaded last will take Function(). Last or first seems pretty arbitrary to me; I don't see why there should be any major reason to prefer one over the other, so it might as well be last. (If we include user-defined functions in our discussion, then having the last definition override the earlier ones makes more sense.)
Quote:
So even if I didn't have any other filters that contained Telecide I could still have a script containing decomb511_telecide(order=1) and know what I was going to get and if by chance I happen to leave an old version in the plugin dir I'd still be able to use the new one.
I imagine that this is what the new scheme already does.
stickboy is offline   Reply With Quote
Old 9th March 2004, 22:55   #25  |  Link
WarpEnterprises
C64
 
WarpEnterprises's Avatar
 
Join Date: Apr 2002
Location: Austria
Posts: 830
Quote:
Originally posted by stickboy
Despite what the AviSynth docs say, user-defined functions seem to override plug-ins and built-in function names.
You are right - shame on me
WarpEnterprises is offline   Reply With Quote
Old 20th March 2004, 04:16   #26  |  Link
stickboy
AviSynth Enthusiast
 
Join Date: Jul 2002
Location: California, U.S.
Posts: 1,267
Hmm... I'm trying the 2004-03-14 AviSynth build, and it looks like the new DLLName_function() support works only for auto-loaded plug-ins. It doesn't seem to auto-generate the additional names for plug-ins loaded from LoadPlugin.

Is this the intended behavior?
stickboy is offline   Reply With Quote
Old 28th March 2004, 23:37   #27  |  Link
stickboy
AviSynth Enthusiast
 
Join Date: Jul 2002
Location: California, U.S.
Posts: 1,267
Also, do the built-in functions get additional names too?
stickboy is offline   Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 17:35.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.