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.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 19th December 2019, 16:22   #21  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Quote:
Wait, does that mean plugins which make use of arrays won't work on recent versions of AviSynth? What makes it incompatible?
I believe they may be commented out in avs+ source [not sure], but only for script, not plugins.
[ie arrays not yet implemented for scripts, you is ok for plugs, they have always worked, cannot be implemented for script so long as v2.5 interface is supported for plugins (or something like that)]

Some Links (Search on "array", in Avisynth Devs forum, user Pinterf, posts only):-
(in reverse order as they appear in search)

http://forum.doom9.org/showthread.ph...58#post1860458
http://forum.doom9.org/showthread.ph...60#post1824560

Quote:
remove script array (new AVSValue schema) feature, cannot make it compatible with Invoke from v2.5 plugins until I figure out a workaround or such plugins would slowly distinct. <sniff> <sniff>
http://forum.doom9.org/showthread.ph...25#post1789325

http://forum.doom9.org/showthread.ph...32#post1788632
http://forum.doom9.org/showthread.ph...29#post1788529
http://forum.doom9.org/showthread.ph...18#post1785318
http://forum.doom9.org/showthread.ph...53#post1785253
http://forum.doom9.org/showthread.ph...79#post1784879
http://forum.doom9.org/showthread.ph...19#post1784619
http://forum.doom9.org/showthread.ph...32#post1784532
http://forum.doom9.org/showthread.ph...81#post1784081

Quote:
Originally Posted by pinterf View Post
It turned out that it is a filter using avisynth 2.5 plugin interface.

I'm not happy, now I have a deeper clue about the caveats of keeping the backward compatibility with that what is called "baked code".

In its current form I am not able to keep the compatibility between avisynth 2.5 interface and my new AVSValue handling schema. The problem affects arrays (and such, the filter parameter passing). Although the array creation is transparent when 2.6 interface is used and automatically uses the new mechanism for creating and copying AVSValue types, but plugins using "baked code" avs 2.5 interface are not knowing about the feature and use the array creation codes hardcoded in the 2.5 interface.

And since I simply not able to check, what kind of interface made a call to ScriptEnvironment::Invoke, I have to revert that array feature. O.K. having script arrays are only a nice addition to the language but there was quite a bit of work with this feature.

So it seems that I have to revert my nice new array mechanism, even from the dev version of my builds. As there are still some plugins out there with the 2.5 interface, I cannot make avs+ incompatible with them and cause users inconveniance.
http://forum.doom9.org/showthread.ph...52#post1789252

Above links may or may not be relevant [I skipped a few links that seemed not relevant].
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 19th December 2019 at 17:07.
StainlessS is offline   Reply With Quote
Old 20th December 2019, 12:18   #22  |  Link
vcmohan
Registered User
 
Join Date: Jul 2003
Location: India
Posts: 890
Quote:
Originally Posted by wonkey_monkey View Post
They can if a variable of another type appears between them. I did this on my ColourWarp plugin so you can specify non-clip-specific points first, then the clips, then the clip-specific points.
I am under the impression that since the default input clip is 'last', it always must be specified first. still can a string like
.*c.+[dat]i.*
be used?
__________________
mohan
my plugins are now hosted here
vcmohan is offline   Reply With Quote
Old 20th December 2019, 12:28   #23  |  Link
wonkey_monkey
Formerly davidh*****
 
wonkey_monkey's Avatar
 
Join Date: Jan 2004
Posts: 2,493
Not sure about that. I would expect the "last" clip to be matched on the ".*", not on the "c". In fact everything will probably end up in the first array until it encounters a named parameter.

My filter still uses the default first input clip, but it allows you to specify further clips as colour sources. I probably did something like

Code:
ci*c*i*
__________________
My AviSynth filters / I'm the Doctor
wonkey_monkey is offline   Reply With Quote
Old 20th December 2019, 12:42   #24  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
Arrays, as they appear for plugin writers are working fine, no change in them. Some years ago I was experimenting, made an attempt to support arrays in the script level as well. e.g.
color = [255, 233, 101]
or
values = [[0,"black"],[255,"white"]]
color = values[0,0]
But it broke compatibility (=crashed ) - I think plugins using avs 2.5 "baked code" concept and even avspmod was not compatible with it. The remnants are still there in my source under NEW_AVSVALUE define.
pinterf is offline   Reply With Quote
Old 20th December 2019, 12:42   #25  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Quote:
Originally Posted by wonkey_monkey View Post
Not sure about that. I would expect the "last" clip to be matched on the ".*", not on the "c". In fact everything will probably end up in the first array until it encounters a named parameter.

My filter still uses the default first input clip, but it allows you to specify further clips as colour sources. I probably did something like

Code:
ci*c*i*
+1, yes.

EDIT: [After seeing Pinterf post above] Perhaps v2.5 support should be dropped soon/immediately. [I would be happy to do same].
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 20th December 2019 at 12:45.
StainlessS is offline   Reply With Quote
Old 20th December 2019, 12:48   #26  |  Link
Groucho2004
 
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
Quote:
Originally Posted by StainlessS View Post
Perhaps v2.5 support should be dropped soon/immediately.
Seriously? Can you imagine the scream of a million voices of those who use 2.5 plugs? Me included?
__________________
Groucho's Avisynth Stuff
Groucho2004 is offline   Reply With Quote
Old 20th December 2019, 12:50   #27  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Who cares bout them, or you !

EDIT: Can still provide v2.5 plug, and separate v2.6 plug, v2.58 will still be able to use existing 2.5 plugs.
That there bullet will one day need biting. [whenever you do it, some will not like it]
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 8th April 2020 at 22:38.
StainlessS is offline   Reply With Quote
Old 20th December 2019, 13:05   #28  |  Link
Groucho2004
 
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
Quote:
Originally Posted by StainlessS View Post
Can still provide v2.5 plug, and separate v2.6 plug, v2.58 will still be able to use existing 2.5 plugs.
1. I don't want to use 2.5.8, I want to use AVS+.
2. There are 2.5 plugs for which there is no source code.
__________________
Groucho's Avisynth Stuff
Groucho2004 is offline   Reply With Quote
Old 20th December 2019, 13:05   #29  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
We need a list of 'invaluable' v2.5 plugins that are not yet converted to v2.6 interface, and some that will take on conversions, I am prepared to help in this where I am able.

And list of v2.5 invaluable plugs for which there is no source. [Some/Most LaTo will likely be in this list]

EDIT: Entire Gavino Grunt compatibility in avs+ would be a good idea (where not already implemented).
Both Grunt and GScript should have been adopted way back in Avs v2.60 Standard, as suggested by some.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 20th December 2019 at 13:30.
StainlessS is offline   Reply With Quote
Old 20th December 2019, 16:03   #30  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by pinterf View Post
Arrays, as they appear for plugin writers are working fine, no change in them. Some years ago I was experimenting, made an attempt to support arrays in the script level as well. e.g.
color = [255, 233, 101]
or
values = [[0,"black"],[255,"white"]]
color = values[0,0]
But it broke compatibility (=crashed ) - I think plugins using avs 2.5 "baked code" concept and even avspmod was not compatible with it. The remnants are still there in my source under NEW_AVSVALUE define.
can it be like http://avisynth.nl/index.php/RemapFrames#Usage_5 to fix this?

edit: or the same way that used to load 2.0 plugins in avs 2.5 (by LoadPluginEx.dll, so it will be LoadPlugin25.dll or something)?

+ aside from that, still waiting for expr changes
__________________
See My Avisynth Stuff

Last edited by real.finder; 20th December 2019 at 16:16.
real.finder is offline   Reply With Quote
Old 20th December 2019, 17:00   #31  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,419
Quote:
Originally Posted by pinterf View Post
The remnants are still there in my source under NEW_AVSVALUE define.
'Remnants' meaning that it was just shuffled behind the define so it wouldn't cause compatibility issues, or that even if it is active, it's incomplete (per 2.6+, where it would presumably work)?

I ask, because I actually was considering having NEW_AVSVALUE active for Linux/OSX builds (at least once I actually get libavisynth.so in a working* state). We don't have to worry about retaining compatibility with 2.5 plugins on those platforms because there's practically none that were ported while AvxSynth was a thing. Like, there's maybe 5 in total.

*it builds, but because of some of the Win32-specific things that had to be disabled on non-Windows, it currently fails to load. And I haven't reconciled the changes enough so that it doesn't impede MSVC's ability to build the codebase on Windows.
qyot27 is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

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 21:56.


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