liquidsoap
liquidsoap copied to clipboard
Allow to control which dynamic plugins get loaded
Some of them have triggered segfault in the past and they slow down start time in some cases.
I can take it, but do you have a suggestion about how we should specify this?
It's a good question. Ideally we'd like to be able to list them so we can add the plugins to the API but only load them entirely if they are used.
I believe that this is not possible, in which can I'd suggest perhaps a settings that can also be controlled via a command line option?
For the default value, I'd say we should always be on the safe side so perhaps disable? Or be smart with it, e.g. always enable when doing -h
so they can be listed and enable only when using lasdpa.*
on the script side?
Hi, I'm again confronted to this… Either I have to rely on liq-minimal (not sure how happy I'm about it), or I have to just … wait…
INFO: Loading Sdl_image, Target = linux
INFO: Loading Sdl_ttf, Target = linux
Liquidsoap 2.2.2
Copyright (c) 2003-2023 Savonet team
Liquidsoap is open-source software, released under GNU General Public License.
See <http://liquidsoap.info> for more information.
liquidsoap --version 3,25s user 0,15s system 76% cpu 4,441 total
That's 4s to do nothing. Granted, this is on a machine that has a lot of LADSPA/LV2 plugins available, so somehow expected (though I don't need anything related to it for most of my use-cases). I'm OK working around it, do we have an environment variable to switch liq out of /usr/lib/ladspa ? disable SDL? Do I really have to build liq specifically for that?
The most annoying part of that is for quick script parsing, and documentation checks, it makes it horrible and I usually give up after 3 tries…
INFO: Loading Sdl_image, Target = linux
INFO: Loading Sdl_ttf, Target = linux
liquidsoap -h output.file > /dev/null 8,87s user 0,18s system 99% cpu 9,055 total
Can you show us the startup times? For instance here:
$ ./liquidsoap 'output.dummy(sine())'
2023/11/15 13:42:22 >>> LOG START
...
2023/11/15 13:42:22 [startup:3] DSSI plugins registration: 0.01s
2023/11/15 13:42:22 [startup:3] FFmpeg filters registration: 0.17s
2023/11/15 13:42:22 [startup:3] FFmpeg bitstream filters registration: 0.02s
2023/11/15 13:42:22 [startup:3] Lilv plugins registration: 0.17s
2023/11/15 13:42:22 [startup:3] Frei0r plugin registration: 0.04s
2023/11/15 13:42:22 [startup:3] LADSPA plugins registration: 0.02s
2023/11/15 13:42:22 [startup:3] Typechecking: 3.45s
2023/11/15 13:42:22 [startup:3] Evaluation: 0.01s
2023/11/15 13:42:22 [startup:3] Loaded ./src/libs/stdlib.liq: 3.65s
2023/11/15 13:42:22 [startup:3] Typechecking: 0.00s
2023/11/15 13:42:22 [startup:3] Evaluation: 0.00s
I'm including my prompt timestamp so you get an idea of how bad it is ;) This machine has 100+ LADSPA plugins, 100+ LV2 plugins, maybe some other stuff. Liq installed from the GH actions assets.
15:22:43 gilou@X395-19S ~ 17s
$ liquidsoap 'output.dummy(sine())'
INFO: Loading Sdl_image, Target = linux
INFO: Loading Sdl_ttf, Target = linux
2023/11/15 15:23:40 >>> LOG START
2023/11/15 15:23:35 [main:3] Liquidsoap 2.2.2
2023/11/15 15:23:35 [main:3] Using: alsa=0.3.0 angstrom=0.15.0 ao=0.2.4 asetmap=0.8.1 asn1-combinators=0.2.6 astring=0.8.5 base64=3.5.1 bigarray=[distributed with OCaml] bigarray-compat=1.1.0 bigstringaf=0.9.1 bjack=0.1.6 bos=0.2.1 bytes=[distributed with OCaml] ca-certs=v0.2.3 camlimages.all_formats=4.2.6 camlimages.core=5.0.4 camlimages.exif=5.0.4 camlimages.gif=5.0.4 camlimages.jpeg=5.0.4 camlimages.png=5.0.4 camlimages.tiff=5.0.4 camlimages.xpm=5.0.4 camlp-streams camomile.lib=2.0 cohttp=5.1.0 cohttp-lwt=5.1.0 cohttp-lwt-unix=5.1.0 conduit=6.2.0 conduit-lwt=6.2.0 conduit-lwt-unix=6.2.0 cry=1.0.2 cstruct=6.2.0 ctypes=0.20.2 ctypes.foreign=0.20.2 ctypes.stubs=0.20.2 curl=0.9.2 domain-name=0.4.0 dssi=0.1.5 dtools=0.4.5 dune-build-info=3.8.2 dune-private-libs.dune-section=3.8.2 dune-site=3.8.2 dune-site.private=3.8.2 duppy=0.9.3 eqaf=0.9 eqaf.bigstring=0.9 eqaf.cstruct=0.9 faad=0.5.2 fdkaac=0.3.3 ffmpeg-av=1.1.9 ffmpeg-avcodec=1.1.9 ffmpeg-avdevice=1.1.9 ffmpeg-avfilter=1.1.9 ffmpeg-avutil=1.1.9 ffmpeg-swresample=1.1.9 ffmpeg-swscale=1.1.9 fileutils=0.6.4 flac=0.5.0 flac.decoder=0.5.0 flac.ogg=0.5.0 fmt=0.9.0 fpath=0.7.3 frei0r=0.1.2 gd=1.0a5 gen=1.1 gmap=0.3.0 hkdf=1.0.4 inotify=2.4.1 integers ipaddr=5.5.0 ipaddr-sexp=5.5.0 ipaddr.unix=5.5.0 irc-client irc-client-unix jemalloc ladspa=0.2.2 lame=0.3.7 lastfm=0.3.3 lilv=0.1.0 liquidsoap-lang=2.2.2 liquidsoap-lang.console=2.2.2 liquidsoap_alsa=v2.2.2-1-g93f305b liquidsoap_ao=v2.2.2-1-g93f305b liquidsoap_bjack=v2.2.2-1-g93f305b liquidsoap_builtins=v2.2.2-1-g93f305b liquidsoap_camlimages=v2.2.2-1-g93f305b liquidsoap_core=v2.2.2-1-g93f305b liquidsoap_dssi=v2.2.2-1-g93f305b liquidsoap_faad=v2.2.2-1-g93f305b liquidsoap_fdkaac=v2.2.2-1-g93f305b liquidsoap_ffmpeg=v2.2.2-1-g93f305b liquidsoap_flac=v2.2.2-1-g93f305b liquidsoap_frei0r=v2.2.2-1-g93f305b liquidsoap_gd=v2.2.2-1-g93f305b liquidsoap_irc=v2.2.2-1-g93f305b liquidsoap_jemalloc=v2.2.2-1-g93f305b liquidsoap_ladspa=v2.2.2-1-g93f305b liquidsoap_lame=v2.2.2-1-g93f305b liquidsoap_lastfm=v2.2.2-1-g93f305b liquidsoap_lilv=v2.2.2-1-g93f305b liquidsoap_lo=v2.2.2-1-g93f305b liquidsoap_mad=v2.2.2-1-g93f305b liquidsoap_magic=v2.2.2-1-g93f305b liquidsoap_mem_usage=v2.2.2-1-g93f305b liquidsoap_memtrace=v2.2.2-1-g93f305b liquidsoap_ogg=v2.2.2-1-g93f305b liquidsoap_ogg_flac=v2.2.2-1-g93f305b liquidsoap_optionals=v2.2.2-1-g93f305b liquidsoap_opus=v2.2.2-1-g93f305b liquidsoap_osc=v2.2.2-1-g93f305b liquidsoap_oss=v2.2.2-1-g93f305b liquidsoap_portaudio=v2.2.2-1-g93f305b liquidsoap_posix_time=v2.2.2-1-g93f305b liquidsoap_prometheus=v2.2.2-1-g93f305b liquidsoap_pulseaudio=v2.2.2-1-g93f305b liquidsoap_runtime=v2.2.2-1-g93f305b liquidsoap_samplerate=v2.2.2-1-g93f305b liquidsoap_sdl=v2.2.2-1-g93f305b liquidsoap_shine=v2.2.2-1-g93f305b liquidsoap_soundtouch=v2.2.2-1-g93f305b liquidsoap_speex=v2.2.2-1-g93f305b liquidsoap_srt=v2.2.2-1-g93f305b liquidsoap_ssl=v2.2.2-1-g93f305b liquidsoap_stereotool=v2.2.2-1-g93f305b liquidsoap_taglib=v2.2.2-1-g93f305b liquidsoap_theora=v2.2.2-1-g93f305b liquidsoap_tls=v2.2.2-1-g93f305b liquidsoap_vorbis=v2.2.2-1-g93f305b liquidsoap_xmlplaylist=v2.2.2-1-g93f305b liquidsoap_yaml=v2.2.2-1-g93f305b lo=0.2.0 logs=0.7.0 logs.fmt=0.7.0 logs.lwt=0.7.0 lwt=5.6.1 lwt.unix=5.6.1 macaddr=5.5.0 mad=0.5.3 magic=0.7.3 magic-mime=1.3.0 mem_usage=0.0.4 memtrace=0.2.3 menhirLib=20230608 metadata=0.2.0 mirage-crypto=0.11.1 mirage-crypto-ec=0.11.1 mirage-crypto-pk=0.11.1 mirage-crypto-rng=0.11.1 mirage-crypto-rng.unix=0.11.1 mm=0.8.4 mm.audio=0.8.4 mm.base=0.8.4 mm.image=0.8.4 mm.midi=0.8.4 mm.video=0.8.4 ocplib-endian ocplib-endian.bigstring ogg=0.7.4 ogg.decoder=0.7.4 opus=0.2.3 opus.decoder=0.2.3 osc osc-unix parsexp=v0.16.0 pbkdf pcre=7.5.0 portaudio=0.2.3 posix-base=b516d46 posix-socket=b516d46 posix-socket.constants=b516d46 posix-socket.stubs=b516d46 posix-socket.types=b516d46 posix-time2=b516d46 posix-time2.constants=b516d46 posix-time2.stubs=b516d46 posix-time2.types=b516d46 posix-types=b516d46 posix-types.constants=b516d46 ppx_sexp_conv.runtime-lib=v0.16.0 prometheus=1.2 prometheus-app=1.2 ptime=1.1.0 ptime.clock.os=1.1.0 pulseaudio=0.1.6 re=1.10.4 result=1.5 rresult=0.7.0 samplerate=0.1.7 sedlex=a1362bd seq=[distributed with OCaml 4.07 or above] sexplib=v0.16.0 sexplib0=v0.16.0 shine=0.2.3 soundtouch=0.1.9 speex=0.4.2 speex.decoder=0.4.2 srt=0.3.0 srt.constants=0.3.0 srt.stubs=0.3.0 srt.stubs.locked=0.3.0 srt.types=0.3.0 ssl=0.7.0 stdlib-shims=0.3.0 stereotool=v2.2.2-1-g93f305b str=[distributed with OCaml] stringext=1.6.0 taglib=0.3.10 theora=0.4.1 theora.decoder=0.4.1 threads=[distributed with OCaml] threads.posix=[distributed with OCaml] tls=0.17.0 tsdl=v1.0.0 tsdl-image=0.5 tsdl-ttf=0.5 unix=[distributed with OCaml] unix-errno=52c6ecb unix-errno.errno_bindings=52c6ecb unix-errno.errno_types=52c6ecb unix-errno.errno_types_detected=52c6ecb unix-errno.unix=52c6ecb uri=4.2.0 uri-sexp=4.2.0 uri.services=4.2.0 vorbis=0.8.1 vorbis.decoder=0.8.1 x509=0.16.4 xmlm=1.4.0 xmlplaylist=0.1.5 yaml=3.1.0 yaml.bindings=3.1.0 yaml.bindings.types=3.1.0 yaml.c=3.1.0 yaml.ffi=3.1.0 yaml.types=3.1.0 zarith=1.12
2023/11/15 15:23:35 [clock:3] Using native (high-precision) implementation for latency control
2023/11/15 15:23:40 [main:3] Standard library loaded in 5.22 seconds.
2023/11/15 15:23:40 [frame:3] Using 44100Hz audio, 25Hz video, 44100Hz main.
2023/11/15 15:23:40 [frame:3] Video frame size set to: 1280x720
2023/11/15 15:23:40 [frame:3] Frame size must be a multiple of 1764 ticks = 1764 audio samples = 1 video samples.
2023/11/15 15:23:40 [frame:3] Targeting 'frame.duration': 0.04s = 1764 audio samples = 1764 ticks.
2023/11/15 15:23:40 [frame:3] Frames last 0.04s = 1764 audio samples = 1 video samples = 1764 ticks.
2023/11/15 15:23:40 [sandbox:3] Sandboxing disabled
2023/11/15 15:23:40 [startup:3] DSSI plugins registration: 0.00s
2023/11/15 15:23:40 [startup:3] FFmpeg filters registration: 0.02s
2023/11/15 15:23:40 [startup:3] FFmpeg bitstream filters registration: 0.00s
2023/11/15 15:23:40 [startup:3] Lilv plugins registration: 1.98s
2023/11/15 15:23:40 [startup:3] Frei0r plugin registration: 0.07s
2023/11/15 15:23:40 [startup:3] LADSPA plugins registration: 1.06s
2023/11/15 15:23:40 [startup:3] Typechecking: 4.88s
2023/11/15 15:23:40 [startup:3] Evaluation: 0.01s
2023/11/15 15:23:40 [startup:3] Typechecking: 0.09s
2023/11/15 15:23:40 [startup:3] Evaluation: 0.00s
2023/11/15 15:23:40 [startup:3] Typechecking: 0.00s
2023/11/15 15:23:40 [startup:3] Evaluation: 0.00s
2023/11/15 15:23:40 [dummy:3] Content type is {audio=pcm(stereo)}.
2023/11/15 15:23:40 [sine:3] Content type is {audio=pcm(stereo)}.
2023/11/15 15:23:40 [video.converter:3] Using preferred video converter: ffmpeg.
2023/11/15 15:23:40 [audio.converter:3] Using samplerate converter: libsamplerate.
2023/11/15 15:23:40 [clock.main:3] Streaming loop starts in auto-sync mode
2023/11/15 15:23:40 [clock.main:3] Delegating synchronization to CPU clock
2023/11/15 15:23:40 [video.text:3] Using sdl implementation
^C2023/11/15 15:23:49 [main:3] Shutdown signal received.
2023/11/15 15:23:49 [threads:3] Main loop exited
2023/11/15 15:23:49 [main:3] Shutdown started!
2023/11/15 15:23:49 [threads:3] Waiting for main threads to terminate...
2023/11/15 15:23:49 [clock.main:3] Streaming loop stopped.
2023/11/15 15:23:49 [threads:3] Main threads terminated.
2023/11/15 15:23:49 [threads:3] Shutting down scheduler...
2023/11/15 15:23:49 [threads:3] Scheduler shut down.
2023/11/15 15:23:49 [main:3] Cleaning downloaded files...
2023/11/15 15:23:49 [main:3] Freeing memory...
2023/11/15 15:23:49 >>> LOG END
Oops, that was a late try, it's not 1 minute from shell start, but I still get 6-15s between the actual call, and the LOG START. Actual one, with the shell timestamp accurate at 1s tops:
15:32:55 ✘ gilou@X395-19S ~
$ liquidsoap 'output.dummy(sine())'
INFO: Loading Sdl_image, Target = linux
INFO: Loading Sdl_ttf, Target = linux
2023/11/15 15:33:05 >>> LOG START
2023/11/15 15:32:59 [main:3] Liquidsoap 2.2.2
2023/11/15 15:32:59 [main:3] Using: alsa=0.3.0 angstrom=0.15.0 ao=0.2.4 asetmap=0.8.1 asn1-combinators=0.2.6 astring=0.8.5 base64=3.5.1 bigarray=[distributed with OCaml] bigarray-compat=1.1.0 bigstringaf=0.9.1 bjack=0.1.6 bos=0.2.1 bytes=[distributed with OCaml] ca-certs=v0.2.3 camlimages.all_formats=4.2.6 camlimages.core=5.0.4 camlimages.exif=5.0.4 camlimages.gif=5.0.4 camlimages.jpeg=5.0.4 camlimages.png=5.0.4 camlimages.tiff=5.0.4 camlimages.xpm=5.0.4 camlp-streams camomile.lib=2.0 cohttp=5.1.0 cohttp-lwt=5.1.0 cohttp-lwt-unix=5.1.0 conduit=6.2.0 conduit-lwt=6.2.0 conduit-lwt-unix=6.2.0 cry=1.0.2 cstruct=6.2.0 ctypes=0.20.2 ctypes.foreign=0.20.2 ctypes.stubs=0.20.2 curl=0.9.2 domain-name=0.4.0 dssi=0.1.5 dtools=0.4.5 dune-build-info=3.8.2 dune-private-libs.dune-section=3.8.2 dune-site=3.8.2 dune-site.private=3.8.2 duppy=0.9.3 eqaf=0.9 eqaf.bigstring=0.9 eqaf.cstruct=0.9 faad=0.5.2 fdkaac=0.3.3 ffmpeg-av=1.1.9 ffmpeg-avcodec=1.1.9 ffmpeg-avdevice=1.1.9 ffmpeg-avfilter=1.1.9 ffmpeg-avutil=1.1.9 ffmpeg-swresample=1.1.9 ffmpeg-swscale=1.1.9 fileutils=0.6.4 flac=0.5.0 flac.decoder=0.5.0 flac.ogg=0.5.0 fmt=0.9.0 fpath=0.7.3 frei0r=0.1.2 gd=1.0a5 gen=1.1 gmap=0.3.0 hkdf=1.0.4 inotify=2.4.1 integers ipaddr=5.5.0 ipaddr-sexp=5.5.0 ipaddr.unix=5.5.0 irc-client irc-client-unix jemalloc ladspa=0.2.2 lame=0.3.7 lastfm=0.3.3 lilv=0.1.0 liquidsoap-lang=2.2.2 liquidsoap-lang.console=2.2.2 liquidsoap_alsa=v2.2.2-1-g93f305b liquidsoap_ao=v2.2.2-1-g93f305b liquidsoap_bjack=v2.2.2-1-g93f305b liquidsoap_builtins=v2.2.2-1-g93f305b liquidsoap_camlimages=v2.2.2-1-g93f305b liquidsoap_core=v2.2.2-1-g93f305b liquidsoap_dssi=v2.2.2-1-g93f305b liquidsoap_faad=v2.2.2-1-g93f305b liquidsoap_fdkaac=v2.2.2-1-g93f305b liquidsoap_ffmpeg=v2.2.2-1-g93f305b liquidsoap_flac=v2.2.2-1-g93f305b liquidsoap_frei0r=v2.2.2-1-g93f305b liquidsoap_gd=v2.2.2-1-g93f305b liquidsoap_irc=v2.2.2-1-g93f305b liquidsoap_jemalloc=v2.2.2-1-g93f305b liquidsoap_ladspa=v2.2.2-1-g93f305b liquidsoap_lame=v2.2.2-1-g93f305b liquidsoap_lastfm=v2.2.2-1-g93f305b liquidsoap_lilv=v2.2.2-1-g93f305b liquidsoap_lo=v2.2.2-1-g93f305b liquidsoap_mad=v2.2.2-1-g93f305b liquidsoap_magic=v2.2.2-1-g93f305b liquidsoap_mem_usage=v2.2.2-1-g93f305b liquidsoap_memtrace=v2.2.2-1-g93f305b liquidsoap_ogg=v2.2.2-1-g93f305b liquidsoap_ogg_flac=v2.2.2-1-g93f305b liquidsoap_optionals=v2.2.2-1-g93f305b liquidsoap_opus=v2.2.2-1-g93f305b liquidsoap_osc=v2.2.2-1-g93f305b liquidsoap_oss=v2.2.2-1-g93f305b liquidsoap_portaudio=v2.2.2-1-g93f305b liquidsoap_posix_time=v2.2.2-1-g93f305b liquidsoap_prometheus=v2.2.2-1-g93f305b liquidsoap_pulseaudio=v2.2.2-1-g93f305b liquidsoap_runtime=v2.2.2-1-g93f305b liquidsoap_samplerate=v2.2.2-1-g93f305b liquidsoap_sdl=v2.2.2-1-g93f305b liquidsoap_shine=v2.2.2-1-g93f305b liquidsoap_soundtouch=v2.2.2-1-g93f305b liquidsoap_speex=v2.2.2-1-g93f305b liquidsoap_srt=v2.2.2-1-g93f305b liquidsoap_ssl=v2.2.2-1-g93f305b liquidsoap_stereotool=v2.2.2-1-g93f305b liquidsoap_taglib=v2.2.2-1-g93f305b liquidsoap_theora=v2.2.2-1-g93f305b liquidsoap_tls=v2.2.2-1-g93f305b liquidsoap_vorbis=v2.2.2-1-g93f305b liquidsoap_xmlplaylist=v2.2.2-1-g93f305b liquidsoap_yaml=v2.2.2-1-g93f305b lo=0.2.0 logs=0.7.0 logs.fmt=0.7.0 logs.lwt=0.7.0 lwt=5.6.1 lwt.unix=5.6.1 macaddr=5.5.0 mad=0.5.3 magic=0.7.3 magic-mime=1.3.0 mem_usage=0.0.4 memtrace=0.2.3 menhirLib=20230608 metadata=0.2.0 mirage-crypto=0.11.1 mirage-crypto-ec=0.11.1 mirage-crypto-pk=0.11.1 mirage-crypto-rng=0.11.1 mirage-crypto-rng.unix=0.11.1 mm=0.8.4 mm.audio=0.8.4 mm.base=0.8.4 mm.image=0.8.4 mm.midi=0.8.4 mm.video=0.8.4 ocplib-endian ocplib-endian.bigstring ogg=0.7.4 ogg.decoder=0.7.4 opus=0.2.3 opus.decoder=0.2.3 osc osc-unix parsexp=v0.16.0 pbkdf pcre=7.5.0 portaudio=0.2.3 posix-base=b516d46 posix-socket=b516d46 posix-socket.constants=b516d46 posix-socket.stubs=b516d46 posix-socket.types=b516d46 posix-time2=b516d46 posix-time2.constants=b516d46 posix-time2.stubs=b516d46 posix-time2.types=b516d46 posix-types=b516d46 posix-types.constants=b516d46 ppx_sexp_conv.runtime-lib=v0.16.0 prometheus=1.2 prometheus-app=1.2 ptime=1.1.0 ptime.clock.os=1.1.0 pulseaudio=0.1.6 re=1.10.4 result=1.5 rresult=0.7.0 samplerate=0.1.7 sedlex=a1362bd seq=[distributed with OCaml 4.07 or above] sexplib=v0.16.0 sexplib0=v0.16.0 shine=0.2.3 soundtouch=0.1.9 speex=0.4.2 speex.decoder=0.4.2 srt=0.3.0 srt.constants=0.3.0 srt.stubs=0.3.0 srt.stubs.locked=0.3.0 srt.types=0.3.0 ssl=0.7.0 stdlib-shims=0.3.0 stereotool=v2.2.2-1-g93f305b str=[distributed with OCaml] stringext=1.6.0 taglib=0.3.10 theora=0.4.1 theora.decoder=0.4.1 threads=[distributed with OCaml] threads.posix=[distributed with OCaml] tls=0.17.0 tsdl=v1.0.0 tsdl-image=0.5 tsdl-ttf=0.5 unix=[distributed with OCaml] unix-errno=52c6ecb unix-errno.errno_bindings=52c6ecb unix-errno.errno_types=52c6ecb unix-errno.errno_types_detected=52c6ecb unix-errno.unix=52c6ecb uri=4.2.0 uri-sexp=4.2.0 uri.services=4.2.0 vorbis=0.8.1 vorbis.decoder=0.8.1 x509=0.16.4 xmlm=1.4.0 xmlplaylist=0.1.5 yaml=3.1.0 yaml.bindings=3.1.0 yaml.bindings.types=3.1.0 yaml.c=3.1.0 yaml.ffi=3.1.0 yaml.types=3.1.0 zarith=1.12
2023/11/15 15:32:59 [clock:3] Using native (high-precision) implementation for latency control
2023/11/15 15:33:04 [main:3] Standard library loaded in 5.23 seconds.
2023/11/15 15:33:05 [frame:3] Using 44100Hz audio, 25Hz video, 44100Hz main.
2023/11/15 15:33:05 [frame:3] Video frame size set to: 1280x720
2023/11/15 15:33:05 [frame:3] Frame size must be a multiple of 1764 ticks = 1764 audio samples = 1 video samples.
2023/11/15 15:33:05 [frame:3] Targeting 'frame.duration': 0.04s = 1764 audio samples = 1764 ticks.
2023/11/15 15:33:05 [frame:3] Frames last 0.04s = 1764 audio samples = 1 video samples = 1764 ticks.
2023/11/15 15:33:05 [sandbox:3] Sandboxing disabled
2023/11/15 15:33:05 [startup:3] DSSI plugins registration: 0.00s
2023/11/15 15:33:05 [startup:3] FFmpeg filters registration: 0.02s
2023/11/15 15:33:05 [startup:3] FFmpeg bitstream filters registration: 0.00s
2023/11/15 15:33:05 [startup:3] Lilv plugins registration: 1.97s
2023/11/15 15:33:05 [startup:3] Frei0r plugin registration: 0.07s
2023/11/15 15:33:05 [startup:3] LADSPA plugins registration: 1.25s
2023/11/15 15:33:05 [startup:3] Typechecking: 4.87s
2023/11/15 15:33:05 [startup:3] Evaluation: 0.01s
2023/11/15 15:33:05 [startup:3] Typechecking: 0.10s
2023/11/15 15:33:05 [startup:3] Evaluation: 0.00s
2023/11/15 15:33:05 [startup:3] Typechecking: 0.00s
2023/11/15 15:33:05 [startup:3] Evaluation: 0.00s
2023/11/15 15:33:05 [dummy:3] Content type is {audio=pcm(stereo)}.
2023/11/15 15:33:05 [sine:3] Content type is {audio=pcm(stereo)}.
2023/11/15 15:33:05 [video.converter:3] Using preferred video converter: ffmpeg.
2023/11/15 15:33:05 [audio.converter:3] Using samplerate converter: libsamplerate.
2023/11/15 15:33:05 [clock.main:3] Streaming loop starts in auto-sync mode
2023/11/15 15:33:05 [clock.main:3] Delegating synchronization to CPU clock
2023/11/15 15:33:05 [video.text:3] Using sdl implementation
^C2023/11/15 15:33:18 [main:3] Shutdown signal received.
2023/11/15 15:33:18 [threads:3] Main loop exited
2023/11/15 15:33:18 [main:3] Shutdown started!
2023/11/15 15:33:18 [threads:3] Waiting for main threads to terminate...
2023/11/15 15:33:18 [clock.main:3] Streaming loop stopped.
2023/11/15 15:33:18 [threads:3] Main threads terminated.
2023/11/15 15:33:18 [threads:3] Shutting down scheduler...
2023/11/15 15:33:18 [threads:3] Scheduler shut down.
2023/11/15 15:33:18 [main:3] Cleaning downloaded files...
2023/11/15 15:33:18 [main:3] Freeing memory...
2023/11/15 15:33:18 >>> LOG END
This is my Ubuntu 22.04.3 laptop, with a Ryzen 7 PRO 3700U CPU, with 1.4 GB of free RAM out of 16 GB, running on a pretty decent SSD. But it has many ladspa/lv2 plugins available, indeed ;)
Here is the same through strace if that brings any interesting information.
$ strace -o /tmp/liq.log --timestamps liquidsoap 'output.dummy(sine())'
INFO: Loading Sdl_image, Target = linux
INFO: Loading Sdl_ttf, Target = linux
2023/11/15 15:40:13 >>> LOG START
2023/11/15 15:40:07 [main:3] Liquidsoap 2.2.2
[…]