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. |
9th March 2020, 16:07 | #62 | Link |
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,419
|
My general assumption was that when autoloading by default was enabled, it would be $libdir/avisynth. When you build with MinGW, that's already where I'd made the plugins (ConvertStacked, ImageSeq, TimeStretch, and VDubFilter) get installed, even if it's sort of pointless on Windows.
What magiblot had mentioned in the plugin loader discussion was having it set up to use an external config file, as is usual on Linux, etc. That is the most portable way to do it (heck, even Windows could use something like that for portable builds). On Linux, the two most logical places it could go are /etc (for the system, maybe in /etc/avisynth if we want to add more configuration files in the future) and $HOME/.config/avisynth (for a single user). The presence of one in $HOME/.config/avisynth would need to take precedence over the one in /etc, because it would be the one a normal user can override, add to, and edit as they like (it also would be up to the user to create the one in $HOME/.config/avisynth, but we need to be able to read from it first if it exists). The one in /etc would need to restrict itself to just the basic $libdir/avisynth directory, because having it installed with CMake would mean getting overwritten every time we build and install the library. Name-wise, 'avisynth.conf' probably makes the most sense. The config file would have an autoload_directory= field that can hold a list of directories to autoload from (with the default being $libdir/avisynth, $libdir having been populated by CMAKE_INSTALL_PREFIX when AviSynth+ was built). |
11th March 2020, 04:37 | #64 | Link |
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,419
|
The good news: it didn't take a whole lot to get Clang 9 to compile the source on Ubuntu 19.10.
The not-so-good news: it didn't fix macOS or FreeBSD issues with Clang, even if I grab Clang 9/llvm-9 from pkg or Homebrew rather than trying to use the default versions. |
27th March 2020, 11:22 | #66 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,309
|
Thanks. Good news if that's all. I'm cherry-picking mt and other fixes from Neo branch, so this is only a temporary happyness I have almost cherry-picked a whole tree, no, a whole orchard, picked lines depend on other things, if I pull them they needs quadruple times other things; even the merge is huge work, and he created those changes from scratch.
|
27th March 2020, 11:46 | #67 | Link |
結城有紀
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
|
Yea I tried to pack git~d438bd5 and failed. Adding that include fixed the issue -- at least for compiling. Very appreciate if someone can push a quick fix to that repo.
Meanwhile I was thinking where to put AVS+VS dual interface filters. I'm thinking about a dedicated directory (like /usr/lib/ARCH/avisynth+vapoursynth/) for those filters and then create sym links to both avisynth and vapoursynth directories. Any thoughts? |
27th March 2020, 12:21 | #69 | Link |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
|
since there are work on autoload and AddAutoloadDir can we have fix for these? https://github.com/pinterf/AviSynthPlus/issues/11
__________________
See My Avisynth Stuff |
27th March 2020, 20:15 | #71 | Link | |
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,419
|
Quote:
For normal libraries that happen to have plugin interfaces (like FFMS2) it makes sense to just install them into the normal $libdir and then symlink into the two directories based on whether the plugin interfaces were activated (and which one, if they can be toggled separately). |
|
27th March 2020, 21:35 | #72 | Link |
結城有紀
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
|
I have a few filters that I equipped with dual interface. I'm planning to test compile lsmash works under Linux as one piece. I'm not a fan of having dedicated purpose libraries dangling in lib dir, so I'm heading for libdir/avisynth+vapoursynth if no one objects.
|
28th March 2020, 03:43 | #74 | Link |
結城有紀
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
|
Some updates:
Latest AVS+ compiles. I have AviSynth+ 3.5 (r3100, HEAD, x86_64) with me. HolyWu LSmashWorks compiles with a few tweaks. I managed to encode using x265-yuuki with lsmashsource into mp4 output, it went smoothly. I still have to AddAutoloadDir("/usr/lib/x86_64-linux-gnu/avisynth/") because that piece of code hasn't reached there yet. I ended up putting the filter inside /usr/lib/x86_64-linux-gnu/dualsynth/ and sym linking it to both directories. |
3rd April 2020, 00:48 | #75 | Link |
...?
Join Date: Nov 2005
Location: Florida
Posts: 1,419
|
With 3.5.1, several things have been fixed:
FreeBSD and macOS can use AddAutoloadDir, although in FreeBSD's case it's required to first mount procfs. FreeBSD does have a different way of gleaning the information needed, but I'm not sure if that's applicable to the other *BSDs as well. In NetBSD and DragonFly BSD, the procfs thing should work, although like FreeBSD, it's not mounted by default and treated as deprecated. OpenBSD out-and-out removed procfs, so I'm not sure what we're going to do there. I've abandoned the config file to manage autoloading idea for now, and instead hardcoded the two plugin autoload directories: $libdir/avisynth (determined when the core is built, doesn't change) and $HOME/.avisynth. Users will need to create $HOME/.avisynth if they wish to put anything there, but that means that even if some plugin installs don't go to the same /avisynth subdirectory that the core puts ConvertStacked in, an .avsi file using AddAutoloadDir in $HOME/.avisynth can probably remedy them loading without needing it in every script. Provided AVSI autoloading functions. Native Clang 8 on FreeBSD 12.1 and AppleClang on Catalina can now build AviSynth+, although there are a lot of warnings. High Sierra and Mojave, for those still using them, need to keep using GCC-9 due to the lack of <filesystem> support in the base libc++ from Apple. Even llvm-9 from Homebrew seemed to get hit by this, from what I remember, but I haven't tested it thoroughly. SONAME and SOVERSION are now set, and yes, it looks weird. The base library bears the release version, so that multiple versions can be installed simultaneously, while the SOVERSION symlink points to AVISYNTH_INTERFACE_VERSION (the closest thing to the ABI compatibility indicators SOVERSIONs are meant to relay). So libavisynth.so.3.5.1, libavisynth.so.7 symlink, and the regular libavisynth.so symlink. -fpermissive is no longer required. |
4th May 2020, 22:43 | #77 | Link |
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
Some tools seem to load avisynth from the path env var enabling portable setup, other tools don't.
works: av2pipemod x264 does not work: mpc be mpv ffmpeg Might there be security concerns or is it simply a missing feature?
__________________
https://github.com/stax76/software-list https://www.youtube.com/@stax76/playlists |
4th May 2020, 22:47 | #78 | Link |
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
|
__________________
Groucho's Avisynth Stuff |
4th May 2020, 22:57 | #79 | Link |
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
mpv.net:
starts delayed without showing an error or doing anything mpc be: cannot render the file ffmpeg: D:\Samples\aaa_temp\aaa.avs: Unknown error occurred
__________________
https://github.com/stax76/software-list https://www.youtube.com/@stax76/playlists |
4th May 2020, 23:00 | #80 | Link |
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
|
Can you post that script?
Edit - Also, how did you install Avisynth?
__________________
Groucho's Avisynth Stuff Last edited by Groucho2004; 4th May 2020 at 23:02. |
Thread Tools | Search this Thread |
Display Modes | |
|
|