Thread: Avisynth+
View Single Post
Old 4th April 2020, 12:26   #5364  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
Tormento,
AvsInit.avsi allows you to use a GIMPORT directory where avs/avsi scripts are auto loaded (by AvsInit), and makes it possible to have scripts that will load
under avs v2.58/2.60/2.61 Std with GScript, OR, under Avs+, either x86 or x64, and where all can use Gscript style constructs [for/While/If].
Can have a GIMPORT in plugins directory specifically for a single version of Avs, or where using G2K4 Avisynth Universal Installer, a
universal GIMPORT directory used by all avs versions, dont need same identical scripts in all avs version plugins.
Also some other functionality.

AvsInit.avsi :- https://forum.doom9.org/showthread.p...hlight=AvsInit

EDIT: Some functions callable from inside AvsInit or user scripts.
Code:
        AvsInit_LoadPlugin(fn)                  Load CPP dll with filename FN, sending debug stuff (success/fail) to DebugView window.
                                                [Avs+ will also load C plugins].
        AvsInit_LoadCPlugin(fn)                 Load C dll with filename FN, sending debug stuff (success/fail) to DebugView window.
        AvsInit_Import(fn)                      Import[GImport() if GScript Present] avs/avsi script with filename FN, sending debug
                                                stuff (success/fail) to DebugView window.
        ###
                                                Directory of files load/Import functions. Return total number of scripts imported,
                                                or dll's loaded,
        AvsInit_DImport(Dir)                    Import[GImport() if GScript Present] All avs/avsi scripts in folder Dir, sending debug
                                                stuff (success/fail) to DebugView window.
        AvsInit_DLoad(Dir)                      Load all CPP/C plugin dll's in folder Dir, sending debug stuff (success/fail) to
                                                DebugView window.

                                                Both DImport and DLoad, funcs may be of use in user functions to satisfy some script
                                                dependency, where a complex script requires multiple dll's or script loaded.

        The Import style functions use GImport() when GScript is available, otherwise Import(). Any scripts imported should have any
        GScript style wrappers removed, eg

        >>>>    CODE  >>>>
            GScript("""         # <<<<<<<<<<========= REMOVE THIS LINE
                ...
                Some gscript stuff, if/else/for/next while etc
                ...
            """)                # <<<<<<<<<<========= REMOVE THIS LINE
        <<<< END CODE <<<<

        With GScript wrappers removed and imported via this library, then should be able to use same scripts in any version of avs
        standard(with Gscript plugin) or avs+, whether it be avs v2.58, avs v2.60/2.61 Standard, avs+ x86 or x64.
EDIT: With AvsInit, you only need the AvsiInit.avsi in plugins, all others can be in local or global GIMPORT (or some other name) directory.
__________________
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; 4th April 2020 at 13:11.
StainlessS is offline