liblilv-0-0/noble,now 0.24.22-1build1 amd64 [installed,automatic]
liblilv-dev/noble,now 0.24.22-1build1 amd64 [installed]
The fix was applied in 0.24.23 (and the bug introduced just after 0.24.20).
So chances are that you are running into the issue because of a liblilv update
Does libliv have a custom apt repo to update from, or should I compile the recent version/manual install it? Also, do I have to recompile my ardour binary as well?
Thanks by the way!
Since liblilv’s API has not changed, you don’t need to recompile Ardour.
For a 2nd opinion, you could also try an official binary or nightly https://nightly.ardour.org/ (demo is fine to test, and it can be installed in parallel to distro versions).
I tried the nightly demo. It gave me this error. The calf reverb and flanger plugins are commonly used in other sessions without issue.
Session “/hyperdrive/recording/album-seven-tabs/magma-den (snapshot magma-den)” did not load successfully:
Cannot initialize session/engine: Port registration failed.
—ERROR: Butler read ahead failure on dstream Audio 1
ERROR: unable to create port 'Acid KICK/audio_out 1': failed constructor
ERROR: Found a reference to a plugin ("http://calf.sourceforge.net/plugins/Flanger") that is unknown.
Perhaps it was removed or moved since it was last used.
ERROR: LV2: Failed to instantiate plugin calf.sourceforge net/plugins/Flanger
ERROR: Found a reference to a plugin (calf.sourceforge net/plugins/Reverb) that is unknown.
Perhaps it was removed or moved since it was last used.
ERROR: LV2: Failed to instantiate plugin calf.sourceforge.net/plugins/Reverb
…
I attempted to review all the reverb flanger plugins and it still crashed. I’m going to uninstall libliv (since I manual installed it) and restart my computer to see if it’ll do anything
Calf failing to work isn’t to surprising, sorry.
Seablade
Ardour is ignoring all of my lv2 plugins. It’s acting as if they are not there. It’s no longer crashing however.
Without liblilv (LV2 library) you will not be able to use any LV2 plugins.
–
Also calf plugins are not longer supported by Ardour, and those plugins will also soon be removed from various major distros (see Ardour 8.4 Calf plugins [ERROR]: failed to instantiate LV2 GUI - #4 by x42)
I installed the updated version manually and recompiled ardour. It still won’t detect an lv2 files.
…
Installing liblilv-0.so.0.24.24 to /usr/local/lib/x86_64-linux-gnu
Installing tools/lv2info to /usr/local/bin
Installing tools/lv2ls to /usr/local/bin
Installing tools/lv2apply to /usr/local/bin
Installing tools/lv2bench to /usr/local/bin
Installing /home/rave/Documents/github/lilv/include/lilv/lilv.h to /usr/local/include/lilv-0/lilv
Installing /home/rave/Documents/github/lilv/include/lilv/lilvmm.hpp to /usr/local/include/lilv-0/lilv
Installing /home/rave/Documents/github/lilv/tools/…/doc/lv2info.1 to /usr/local/share/man/man1
Installing /home/rave/Documents/github/lilv/tools/…/doc/lv2ls.1 to /usr/local/share/man/man1
Installing /home/rave/Documents/github/lilv/tools/…/doc/lv2apply.1 to /usr/local/share/man/man1
Installing /home/rave/Documents/github/lilv/tools/…/doc/lv2bench.1 to /usr/local/share/man/man1
Installing /home/rave/Documents/github/lilv/build/meson-private/lilv-0.pc to /usr/local/lib/x86_64-linux-gnu/pkgconfig
Installing /home/rave/Documents/github/lilv/tools/lilv.bash_completion to /usr/local/etc/bash_completion.d
Installing /home/rave/Documents/github/lilv/bindings/python/lilv.py to /usr/local/lib/python3/dist-packages
Installing symlink pointing to liblilv-0.so.0.24.24 to /usr/local/lib/x86_64-linux-gnu/liblilv-0.so.0
Installing symlink pointing to liblilv-0.so.0 to /usr/local/lib/x86_64-linux-gnu/liblilv-0.so
Running custom install script ‘/usr/bin/python3 /home/rave/Documents/github/lilv/build/meson-private/pycompile.py python-3.12-installed.json 0’
Compiling ‘/usr/local/lib/python3/dist-packages/lilv.py’…
…
Here’s the configuration of the build I did (with liblilv 0.24.24 installed):
Also checked my lv2 directory. It’s filled with plugins.
Ardour Configuration
* Will build against private GTK dependency stack : no
* Will rely on libintl built into libc : yes
* Will build against private Ardour dependency stack : no
Checking for function 'dlopen' in dlfcn.h : yes
Checking for boost library >= 1.56 : yes
Checking for program 'pkg-config' : /usr/bin/pkg-config
Checking for 'alsa' : yes
Checking for 'libpulse' : yes
Checking for 'glib-2.0' >= 2.28 : yes
Checking for 'gthread-2.0' >= 2.2 : yes
Checking for 'glibmm-2.4' >= 2.32.0 : yes
Checking for 'sndfile' >= 1.0.18 : yes
Checking for 'giomm-2.4' >= 2.2 : yes
Checking for 'libcurl' >= 7.0.0 : yes
Checking for 'libarchive' >= 3.0.0 : yes
Checking for 'liblo' >= 0.26 : yes
Checking for 'taglib' >= 1.9 : yes
Checking for 'vamp-sdk' >= 2.1 : yes
Checking for 'vamp-hostsdk' >= 2.1 : yes
Checking for 'rubberband' : yes
Checking for 'libusb-1.0' >= 1.0.16 : yes
Checking for rubberband >= 3.0.0 : yes
Checking for sndfile RF64=>RIFF support : Found
Checking for int128 support : lots of bits found.
Checking for 'futex' syscall support : yes
Checking for 'jack' >= 0.121.0 : yes
Checking for clang : no
Checking compiler for AVX512F intrinsics : Found
Checking compiler for AVX/FMA intrinsics : Found
Checking for 'fftw3f' : yes
Checking for 'libudev' : yes
Checking for 'aubio' >= 0.3.2 : yes
Checking for 'aubio' >= 0.4.0 : yes
Checking for 'gobject-2.0' : yes
Checking for 'gio-2.0' >= 2.2 : yes
Checking for 'libpng' : yes
Checking for 'pango' >= 1.20 : yes
Checking for 'cairo' >= 1.12 : yes
Checking for 'pangocairo' : yes
Checking for 'gio-unix-2.0' : yes
Checking for 'xrandr' >= 1.2.99 : yes
Checking for 'xrandr' >= 1.5.0 : yes
Checking for header X11/extensions/Xinerama.h : yes
Checking for 'gmodule-2.0' : yes
Checking for 'x11' : yes
Checking for 'xext' : yes
Checking for 'sigc++-2.0' >= 2.0 : yes
Checking for 'cairomm-1.0' >= 1.8.4 : yes
Checking for 'pangomm-1.4' >= 1.4 : yes
Checking for 'lv2' >= 1.16.0 : yes
Checking for 'libxml-2.0' : yes
Checking for header execinfo.h : yes
Checking for header unistd.h : yes
Checking for function 'posix_memalign' in stdlib.h : yes
Checking for function 'getmntent' in mntent.h : yes
Checking for function 'localtime_r' in time.h : yes
Checking for 'cppunit' >= 1.12.0 : yes
Checking for header cwiid.h : yes
Checking for header bluetooth/bluetooth.h : yes
Checking for 'cwiid' >= 0.6.00 : yes
Checking for 'libwebsockets' >= 2.0.0 : yes
Checking for 'jack' >= 0.121.0 : yes
Checking for JACK metadata API : ok
Checking for jack_port_rename() : ok
Checking for program 'gas, gcc' : /usr/bin/gcc
Checking for program 'ar' : /usr/bin/ar
Checking for 'lrdf' >= 0.4.0 : yes
Checking for 'samplerate' >= 0.1.0 : yes
Checking for 'lv2' >= 1.2.0 : yes
Checking for 'lv2' >= 1.10.0 : yes
Checking for 'lv2' >= 1.17.2 : yes
Checking for 'lv2' >= 1.18.6 : yes
Checking for 'serd-0' >= 0.14.0 : yes
Checking for 'sord-0' >= 0.8.0 : yes
Checking for 'sratom-0' >= 0.2.0 : yes
Checking for 'lilv-0' >= 0.24.2 : yes
Checking for 'ogg' >= 1.1.2 : yes
Checking for 'flac' >= 1.2.1 : yes
Checking for 'fftw3f' >= 3.3.5 : yes
Checking for header sys/vfs.h : yes
Checking for header sys/statvfs.h : yes
Checking for header unistd.h : yes
Checking for header boost/scoped_ptr.hpp : yes
Checking for header boost/ptr_container/ptr_list.hpp : yes
Checking for 'samplerate' >= 0.1.7 : yes
Checking for header boost/shared_ptr.hpp : yes
Checking for header boost/format.hpp : yes
Checking for 'lv2' >= 1.0.0 : yes
Checking for 'cairo' >= 1.12.0 : yes
Checking for 'gthread-2.0' >= 2.10.1 : yes
Checking for 'pangoft2' >= 1.36.8 : yes
Checking for 'fontconfig' : yes
Checking for header stdio.h readline/readline.h : yes
* build session-utils : yes
Checking for 'dbus-1' : yes
* Build documentation : False
* Debuggable build : True
* Export all symbols (backtrace) : False
* Install prefix : /usr/local
* Strict compiler flags : []
* Internal Shared Libraries : True
* Use YTK instead of GTK : True
* Use External Libraries : False
* Library exports hidden : True
* Free/Demo copy : False
* ALSA DBus Reservation : True
* Architecture flags : None
* ARM NEON support : False
* Aubio : True
* AudioUnits : False
* Build target : x86_64
* Canvas Test UI : False
* Beatbox test app : False
* CoreAudio : False
* CoreAudio 10.5 compat : False
* Debug RT allocations : False
* Debug Symbols : True
* Denormal exceptions : False
* Dr. Mingw : False
* FLAC : True
* FPU optimization : True
* FPU AVX512F support : True
* FPU AVX/FMA support : True
* Futex Semaphore : True
* Freedesktop files : False
* G_ENABLE_DEBUG : True
* Libjack linking : link
* Libjack metadata : True
* Lua Binding Doc : False
* Lua Commandline Tool : True
* LV2 UI embedding : True
* LV2 support : True
* LV2 extensions : True
* LXVST support : True
* Mac VST support : False
* NI-Maschine : False
* OGG : True
* Phone home : True
* Process thread timing : False
* Program name : Ardour
* Samplerate : True
* PT format : False
* PTW32 Semaphore : False
* Threaded WaveViews : True
* Translation : True
* Unit tests : False
* Use LLD linker : False
* VST3 support : True
* Windows VST support : False
* Wiimote support : True
* Windows key : Mod4><Super
* PortAudio Backend : False
* CoreAudio/Midi Backend : False
* ALSA Backend : True
* Dummy backend : True
* JACK Backend : True
* PulseAudio Backend : True
* Buildstack : -system-
* Mac i386 Architecture : False
* Mac ppc Architecture : False
* Mac arm64 Architecture : False
* C compiler flags : ['-I/home/rave/Documents/github/ardour', '-DHAVE_RF64_RIFF', '-DCOMPILER_INT128_SUPPORT', '-DWAF_BUILD', '-g', '-fshow-column', '-DG_ENABLE_DEBUG', '-DARCH_X86', '-mmmx', '-msse', '-mfpmath=sse', '-DUSE_XMMINTRIN', '-DBUILD_SSE_OPTIMIZATIONS', '-DLXVST_64BIT', '-Wall', '-Wpointer-arith', '-Wcast-qual', '-Wcast-align', '-Wno-unused-parameter', '-DBOOST_SYSTEM_NO_DEPRECATED', '-DBOOST_BIND_GLOBAL_PLACEHOLDERS', '-D_ISOC9X_SOURCE', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64', '-DPROGRAM_NAME="Ardour"', '-DPROGRAM_VERSION="8"', '-Wstrict-prototypes', '-Wmissing-prototypes']
* C++ compiler flags : ['-I/home/rave/Documents/github/ardour', '-DHAVE_RF64_RIFF', '-DCOMPILER_INT128_SUPPORT', '-DWAF_BUILD', '-g', '-fshow-column', '-DG_ENABLE_DEBUG', '-DARCH_X86', '-mmmx', '-msse', '-mfpmath=sse', '-DUSE_XMMINTRIN', '-DBUILD_SSE_OPTIMIZATIONS', '-DLXVST_64BIT', '-Wall', '-Wpointer-arith', '-Wcast-qual', '-Wcast-align', '-Wno-unused-parameter', '-DBOOST_SYSTEM_NO_DEPRECATED', '-DBOOST_BIND_GLOBAL_PLACEHOLDERS', '-D_ISOC9X_SOURCE', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64', '-DPROGRAM_NAME="Ardour"', '-DPROGRAM_VERSION="8"', '-Woverloaded-virtual', '-Wno-unused-local-typedefs', '-D__STDC_LIMIT_MACROS', '-D__STDC_FORMAT_MACROS', '-DCANVAS_DEBUG', '-DBOOST_ERROR_CODE_HEADER_ONLY']
* Linker flags : ['']
'configure' finished successfully (3.677s)
Run lv2ls
to see if you still have some LV2 plugins installed.
If you do, start your freshly compiled Ardour from the terminal and see if it complains about anything.
Doesn’t show any of the ones i installed like surge, lsp, etc.
How do I get lv2 to detect?
rave@rave-machine:~$ lv2ls
http://lv2plug.in/plugins/eg-amp
http://lv2plug.in/plugins/eg-fifths
http://lv2plug.in/plugins/eg-metro
http://lv2plug.in/plugins/eg-midigate
http://lv2plug.in/plugins/eg-params
http://lv2plug.in/plugins/eg-sampler
http://lv2plug.in/plugins/eg-scope#Mono
http://lv2plug.in/plugins/eg-scope#Stereo
Where are your plugins installed?
From the Ardour manual:
LV2 plugins are folders/directories. They need to be installed in either /usr/lib/lv2, /usr/local/lib/lv2 or a directory mentioned in the local LV2_PATH environment variable.
One caveat to that is some distributions may modify the search path. Specifically Fedora uses /usr/lib64/lv2 as the system search path and /usr/local/lib64/lv2 for the locally compiled search path.
I think that is done by patching the distribution version of lilv tools, but I have not found a way to make lv2ls print the search paths it is using.
Run
find /usr -name manifest.ttl ; find /opt -name manifest.ttl ; find ~/.lv2 -name manifest.ttl
to see where your plugins are installed
If you uninstalled the lilv package that came with Ubuntu then it probably removed any LV2 plugins that you had “apt installed” as well.
A hack for that is to run something like
strace lv2ls >& /tmp/LOG
grep "openat(AT_FDCWD" /tmp/LOG| grep lv2
I got ardour to scan the plugins, but it says they’re all “Stale”
I have manual reinstalled the plugins.
What is the ardouri8 plugin manager cache directory? I manually compiled the most recent liblilv directory because anything less than 0.24.24 caused the crashing bug. Did that have a side effect/
I use Ubuntu 24.04 LTS are the plugins at a nonstandard directory?
rave@rave-machine:~/Downloads$ cd /usr/lib/lv2/
rave@rave-machine:/usr/lib/lv2$ ls
3BandEQ.lv2 midifilter.lv2
3BandSplitter.lv2 midigen.lv2
abGate.lv2 midi.lv2
a_law-swh.lv2 midimap.lv2
alias-swh.lv2 mixtri.lv2
allpass-swh.lv2 mod_delay-swh.lv2
am_pitchshift-swh.lv2 morph.lv2
AmplitudeImposer.lv2 multivoice_chorus-swh.lv2
amp-swh.lv2 MVerb.lv2
analogue_osc-swh.lv2 Nekobi.lv2
atom.lv2 nodelay.lv2
avldrums.lv2 offset-swh.lv2
balance.lv2 onsettrigger.lv2
bandpass_a_iir-swh.lv2 options.lv2
bandpass_iir-swh.lv2 padthv1.lv2
BChoppr.lv2 parameters.lv2
bode_shifter_cv-swh.lv2 patch.lv2
bode_shifter-swh.lv2 phaserotate.lv2
BSEQuencer.lv2 phasers-swh.lv2
BSlizr.lv2 PingPongPan.lv2
buf-size.lv2 pitch_scale-swh.lv2
butterworth-swh.lv2 plate-swh.lv2
calf.lv2 pointer_cast-swh.lv2
chebstortion-swh.lv2 port-groups.lv2
comb_splitter-swh.lv2 port-props.lv2
comb-swh.lv2 presets.lv2
const-swh.lv2 ProM.lv2
controlfilter.lv2 rate_shifter-swh.lv2
core.lv2 resize-port.lv2
crossover_dist-swh.lv2 retro_flange-swh.lv2
CycleShifter.lv2 revdelay-swh.lv2
darc.lv2 ringmod-swh.lv2
data-access.lv2 samplv1.lv2
dc_remove-swh.lv2 sapistaEQv2.lv2
decay-swh.lv2 satan_maximiser-swh.lv2
decimator-swh.lv2 sc1-swh.lv2
declip-swh.lv2 sc2-swh.lv2
delayorama-swh.lv2 sc3-swh.lv2
delay-swh.lv2 sc4-swh.lv2
diode-swh.lv2 schemas.lv2
divider-swh.lv2 se4-swh.lv2
dj_eq-swh.lv2 sfizz.lv2
dj_flanger-swh.lv2 shaper-swh.lv2
dpl.lv2 sifter-swh.lv2
DragonflyEarlyReflections.lv2 simple_comb-swh.lv2
DragonflyHallReverb.lv2 sin_cos-swh.lv2
DragonflyPlateReverb.lv2 single_para-swh.lv2
DragonflyRoomReverb.lv2 sinus_wavewrapper-swh.lv2
drumkv1.lv2 sisco.lv2
dynmanifest.lv2 smooth_decimate-swh.lv2
dyson_compress-swh.lv2 SoulForce.lv2
event.lv2 spectra.lv2
fad_delay-swh.lv2 split-swh.lv2
fast_lookahead_limiter-swh.lv2 state.lv2
fat1.lv2 stepseq_s8n8.lv2
fil4.lv2 stereoroute.lv2
flanger-swh.lv2 'Surge XT Effects.lv2'
fm_osc-swh.lv2 'Surge XT.lv2'
foldover-swh.lv2 surround_encoder-swh.lv2
foverdrive-swh.lv2 svf-swh.lv2
freq_tracker-swh.lv2 synthv1.lv2
gate-swh.lv2 tape_delay-swh.lv2
geonkick.lv2 testsignal.lv2
giant_flange-swh.lv2 time.lv2
glBars.lv2 transient-swh.lv2
gong_beater-swh.lv2 triple_para-swh.lv2
gong-swh.lv2 tuna.lv2
gverb-swh.lv2 ui.lv2
hard_limiter-swh.lv2 u_law-swh.lv2
harmonic_gen-swh.lv2 units.lv2
hermes_filter-swh.lv2 urid.lv2
highpass_iir-swh.lv2 uri-map.lv2
hilbert-swh.lv2 valve_rect-swh.lv2
impulse-swh.lv2 valve-swh.lv2
instance-access.lv2 vocoder.lv2
invada.lv2 vynil-swh.lv2
inv-swh.lv2 wave_terrain-swh.lv2
ir.lv2 worker.lv2
karaoke-swh.lv2 xfade.lv2
Kars.lv2 xfade-swh.lv2
latency-swh.lv2 ZamAutoSat.lv2
lcr_delay-swh.lv2 ZaMaximX2.lv2
log.lv2 ZamComp.lv2
lookahead_limiter_const-swh.lv2 ZamCompX2.lv2
lookahead_limiter-swh.lv2 ZamDelay.lv2
lowpass_iir-swh.lv2 ZamDynamicEQ.lv2
ls_filter-swh.lv2 ZamEQ2.lv2
lsp-plugins.lv2 ZamGate.lv2
MaBitcrush.lv2 ZamGateX2.lv2
MaFreeverb.lv2 ZamGEQ31.lv2
MaGigaverb.lv2 ZamGrains.lv2
MaPitchshift.lv2 ZamHeadX2.lv2
matrixmixer.lv2 ZamPhono.lv2
matrix_ms_st-swh.lv2 ZamTube.lv2
matrix_spatialiser-swh.lv2 ZaMultiComp.lv2
matrix_st_ms-swh.lv2 ZaMultiCompX2.lv2
mbeq-swh.lv2 ZamVerb.lv2
mda.lv2 zeroconvo.lv2
meters.lv2 zm1-swh.lv2
mididebug.lv2
Stale status is defined as “A plugin changed on the disk but hasn’t been re-scanned by Ardour yet.”
What happens when you click the “Re-scan All” button?
Hopefully nothing. The plugin manager is only for VST2/3 and AU plugins that require scanning.
LV2 plugins are indexed by meta-data at application start (though rescan should clean out the log of previously found, now stale, LV2s).
That is why I was curious, since the plugin manager showed “Stale” state for all of the listed LV2 plugins.
Nothing happens. How do I trigger an LV2 rescan?
As mentioned in my earlier post the plugin manager (the dialog in the screenshot you provided) has several buttons on the left hand side, one of which is labeled “Re-scan All.” Just click that button.