Physical modeling engine: Ripplerx: lv2 installation pull request & merged

Very nice! That means that staging isn’t parallel to vangelis anymore. Let’s see if I can switch to the latter without braking the instrument this time.

I do not speak this language, but from reading the examples it means to add groups to the bottom of the file

[filename]_lv2:[GROUP ID - arbitrary name but basis for ordering alphabetically]
	a pg:InputGroup, pg:ControlGroup; # Don't understand the difference
	lv2:name "[GROUP DISPLAY NAME]" ; 
	lv2:symbol "[GROUP ID IN LOWER CASE]" .

Then adding each parameter to a group

pg:group [FILENAME]_lv2:[GROUP ID] ;

and add in case it is a adsr param:

lv2:designation param:[attack/decay/sustain/release];

Correct? But to be honest, I am a bit overwhelmed.

I think it’s one of the best, but also quite complex.

1 Like

Sorry to ask again, When I last time updated to vangelis it broke my system. There was much apt update && upgrade involved. I heard this should not be the case.

Now I switched to vangelis again, it is working this time, but the system did again update 161 packages. Is this indended?

 ##########################       ----------------------------------------
#                          #      ZynthianOS ORAM-2409
#            ##            #      Timestamp: 2024-10-02
#      ##   #  #   ##      #      Built from RaspberryPiOS Bookworm (aarch64)
#     #  #  #  #  #  #     #      ----------------------------------------
###   #  #  #  #  #  #   ###      Kit:           Custom
#  #  #  #  #  #  #  #  #  #      Display:       Generic HDMI/DSI Display
#   ##   #  #  #  #   ##   #      Soundcard:     HifiBerry DAC+ ADC PRO
#         ##    ##         #      Wiring Layout: MCP23017_ENCODERS_V5TOUCH
#                          #      ----------------------------------------
 ##########################
                                  zynthian-ui: vangelis (e48c01)
                                  zynthian-webconf: vangelis (9e5e06)
                                  zyncoder: vangelis (092fb2)
                                  zynthian-sys: vangelis (c8d472)
                                  zynthian-data: vangelis (b3cdb0)
                                  ---------------------------------------

Linux zynthian 6.6.47-v8-16k+ #1794 SMP PREEMPT Thu Aug 29 16:30:28 BST 2024 aarch64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
(venv) root@zynthian:~# update
update-alternatives         update-dictcommon-aspell    update-gsfontmap            update-pciids               update_zynthian_code.sh
update-ca-certificates      update-dictcommon-hunspell  update-icon-caches          update-rc.d                 update_zynthian_data.sh
update-catalog              update_envars.py            update-initramfs            update_rubygems             update_zynthian_recipes.sh
update-default-aspell       update-fonts-alias          update-locale               update-shells               update_zynthian.sh
update-default-ispell       update-fonts-dir            update-mime-database        update_system_image.sh      update_zynthian_sys.sh
update-default-wordlist     update-fonts-scale          update-passwd               update-xmlcatalog
(venv) root@zynthian:~# update_zynthian
update_zynthian_code.sh     update_zynthian_data.sh     update_zynthian_recipes.sh  update_zynthian.sh          update_zynthian_sys.sh
(venv) root@zynthian:~# update_zynthian.sh
Updating zynthian-sys (vangelis)...
Updated 0 paths from the index
Already up to date.
Updating System configuration...
Alsa Mixer already configured for HifiBerry DAC+ ADC PRO...
SOUNDCARD_MIXER is OK
BOOT LOG ENABLED
OVERCLOCKING => None
RBPI AUDIO ENABLED
OTG ENABLED
SOUNDCARD CONFIG => dtoverlay=hifiberry-dacplusadcpro\nforce_eeprom_read=0
DISPLAY CONFIG => disable_overscan=1\nhdmi_force_hotplug=1\nhdmi_drive=1\nhdmi_group=2\nhdmi_mode=87\nhdmi_cvt=1280 800 60 6 0 0 0\ndtoverlay=vc4-kms-v3d-pi5,noaudio
CUSTOM CONFIG =>
Executing update recipes...
Current patch level: 20250214.1
Applying patch 20250218.1 ...
--2025-02-18 18:52:34--  https://os.zynthian.org/plugins/aarch64/RipplerX.lv2.tar.xz
Resolving os.zynthian.org (os.zynthian.org)... 116.202.123.69
Connecting to os.zynthian.org (os.zynthian.org)|116.202.123.69|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1536240 (1.5M) [application/x-xz]
Saving to: ‘RipplerX.lv2.tar.xz’

RipplerX.lv2.tar.xz                     100%[============================================================================>]   1.46M  2.13MB/s    in 0.7s

2025-02-18 18:52:35 (2.13 MB/s) - ‘RipplerX.lv2.tar.xz’ saved [1536240/1536240]

RipplerX.lv2/
RipplerX.lv2/dsp.ttl
RipplerX.lv2/manifest.ttl
RipplerX.lv2/ui.ttl
RipplerX.lv2/libRipplerX.so
END OF PATCHES
UPGRADING DEBIAN PACKAGES ...
Hit:1 http://deb.debian.org/debian bookworm InRelease
Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
Get:3 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
Get:4 http://deb.debian.org/debian-security bookworm-security/main armhf Packages [226 kB]
Get:5 http://deb.debian.org/debian-security bookworm-security/main arm64 Packages [242 kB]
Get:6 http://deb.debian.org/debian-security bookworm-security/main Translation-en [146 kB]
Get:7 http://ppa.launchpad.net/kxstudio-debian/libs/ubuntu focal InRelease [18.3 kB]
Get:8 http://archive.raspberrypi.com/debian bookworm InRelease [39.3 kB]
Hit:9 http://ppa.launchpad.net/kxstudio-debian/plugins/ubuntu focal InRelease
Hit:10 http://ppa.launchpad.net/kxstudio-debian/apps/ubuntu focal InRelease
Hit:11 http://ppa.launchpad.net/kxstudio-debian/kxstudio/ubuntu focal InRelease
Hit:12 http://ppa.launchpad.net/kxstudio-debian/libs/ubuntu bionic InRelease
Get:13 http://archive.raspberrypi.com/debian bookworm/main arm64 Packages [533 kB]
Hit:14 http://ppa.launchpad.net/kxstudio-debian/music/ubuntu bionic InRelease
Hit:15 https://deb.zynthian.org/zynthian-oram bookworm-oram InRelease
Get:16 http://ppa.launchpad.net/kxstudio-debian/plugins/ubuntu bionic InRelease [16.2 kB]
Hit:17 http://ppa.launchpad.net/kxstudio-debian/apps/ubuntu bionic InRelease
Hit:18 http://ppa.launchpad.net/kxstudio-debian/kxstudio/ubuntu bionic InRelease
Get:19 http://archive.raspberrypi.com/debian bookworm/main armhf Packages [562 kB]
Hit:20 https://www.deb-multimedia.org bookworm InRelease
Fetched 1,887 kB in 10s (195 kB/s)
Reading package lists... Done
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
  libcamera-ipa linux-headers-rpi-2712 linux-headers-rpi-v8 linux-image-rpi-2712 linux-image-rpi-v8 raspi-config rpicam-apps-lite zynaddsubfx
  zynaddsubfx-data zynaddsubfx-lv2
The following packages will be upgraded:
  avahi-daemon base-files bsdextrautils bsdutils curl deb-multimedia-keyring distro-info-data dnsmasq dnsmasq-base eject fdisk ghostscript git git-man
  gstreamer1.0-plugins-base gstreamer1.0-plugins-good initramfs-tools initramfs-tools-core iputils-ping libapr1 libarchive13 libavahi-client3
  libavahi-common-data libavahi-common3 libavahi-core7 libblkid-dev libblkid1 libc-bin libc-dev-bin libc-devtools libc-l10n libc6 libc6-dbg libc6-dev
  libcamera0.3 libcjson1 libcups2 libcurl3-gnutls libcurl4 libcurl4-gnutls-dev libdrm-amdgpu1 libdrm-common libdrm-dev libdrm-etnaviv1 libdrm-freedreno1
  libdrm-nouveau2 libdrm-radeon1 libdrm-tegra0 libdrm2 libebml5 libfdisk1 libglib2.0-0 libglib2.0-bin libglib2.0-data libglib2.0-dev libglib2.0-dev-bin
  libgnutls30 libgs-common libgs10 libgs10-common libgsl27 libgslcblas0 libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0 libgstreamer1.0-0 libheif1
  libjavascriptcoregtk-4.1-0 libmount-dev libmount1 libmpg123-0 libmpg123-dev libnfsidmap1 libnghttp2-14 libnss3 libntfs-3g89 libopenjp2-7 libout123-0
  libpam-systemd libpisp-common libpisp1 libpixman-1-0 libpixman-1-dev libpython3.11 libpython3.11-dev libpython3.11-minimal libpython3.11-stdlib
  libsmartcols1 libsoup2.4-1 libsoup2.4-common libsqlite3-0 libsqlite3-dev libsrt1.5-gnutls libssl-dev libssl3 libsyn123-0 libsystemd-dev libsystemd-shared
  libsystemd0 libtasn1-6 libtiff-dev libtiff6 libtiffxx6 libudev-dev libudev1 libuuid1 libwayland-bin libwayland-client0 libwayland-cursor0 libwayland-dev
  libwayland-egl1 libwayland-server0 libwebkit2gtk-4.1-0 linux-libc-dev locales mount mpg123 nfs-common ntfs-3g openssh-client openssh-server
  openssh-sftp-server openssl puredata puredata-core puredata-dev puredata-doc puredata-extra puredata-gui puredata-gui-l10n puredata-utils
  python3-cryptography python3-pkg-resources python3-setuptools python3-setuptools-whl python3-urllib3 python3.11 python3.11-dev python3.11-minimal
  python3.11-venv raspberrypi-net-mods raspberrypi-sys-mods raspi-firmware rfkill rpi-eeprom rsync ssh systemd systemd-sysv systemd-timesyncd tzdata ucf
  udev userconf-pi util-linux util-linux-extra uuid-dev wayland-protocols xserver-common xserver-xorg-core zlib1g zlib1g-dev
161 upgraded, 0 newly installed, 0 to remove and 10 not upgraded.
Need to get 150 MB of archives.
After this operation, 66.0 MB disk space will be freed.
Get:1 http://deb.debian.org/debian bookworm/main arm64 base-files arm64 12.4+deb12u9 [70.8 kB]
Get:2 http://deb.debian.org/debian bookworm/main arm64 bsdutils arm64 1:2.38.1-5+deb12u3 [94.2 kB]
Get:3 http://deb.debian.org/debian bookworm/main arm64 libsmartcols1 arm64 2.38.1-5+deb12u3 [104 kB]
Get:4 http://deb.debian.org/debian bookworm/main arm64 util-linux-extra arm64 2.38.1-5+deb12u3 [112 kB]
Get:5 http://deb.debian.org/debian bookworm/main arm64 util-linux arm64 2.38.1-5+deb12u3 [1,143 kB]
Get:6 http://deb.debian.org/debian bookworm/main arm64 mount arm64 2.38.1-5+deb12u3 [134 kB]
Get:7 http://deb.debian.org/debian bookworm/main arm64 systemd-sysv arm64 252.33-1~deb12u1 [42.5 kB]
Get:8 http://deb.debian.org/debian bookworm/main arm64 libpam-systemd arm64 252.33-1~deb12u1 [209 kB]
Get:9 http://deb.debian.org/debian bookworm/main arm64 uuid-dev arm64 2.38.1-5+deb12u3 [40.5 kB]
Get:10 http://deb.debian.org/debian bookworm/main arm64 libuuid1 arm64 2.38.1-5+deb12u3 [28.5 kB]
Get:11 http://deb.debian.org/debian bookworm/main arm64 libblkid-dev arm64 2.38.1-5+deb12u3 [183 kB]
Get:12 http://deb.debian.org/debian bookworm/main arm64 libblkid1 arm64 2.38.1-5+deb12u3 [143 kB]
Get:13 http://deb.debian.org/debian bookworm/main arm64 libudev-dev arm64 252.33-1~deb12u1 [52.7 kB]
Get:14 http://deb.debian.org/debian bookworm/main arm64 systemd-timesyncd arm64 252.33-1~deb12u1 [61.8 kB]
Get:15 http://deb.debian.org/debian bookworm/main arm64 libsystemd-shared arm64 252.33-1~deb12u1 [1,509 kB]
Get:16 http://deb.debian.org/debian bookworm/main arm64 libsystemd-dev arm64 252.33-1~deb12u1 [354 kB]
Get:17 http://deb.debian.org/debian bookworm/main arm64 libsystemd0 arm64 252.33-1~deb12u1 [308 kB]
Get:18 http://deb.debian.org/debian bookworm/main arm64 systemd arm64 252.33-1~deb12u1 [2,836 kB]
Get:19 http://deb.debian.org/debian bookworm/main arm64 udev arm64 252.33-1~deb12u1 [1,642 kB]
Get:20 http://deb.debian.org/debian bookworm/main arm64 libudev1 arm64 252.33-1~deb12u1 [103 kB]
Get:21 http://deb.debian.org/debian bookworm/main arm64 libmount-dev arm64 2.38.1-5+deb12u3 [22.6 kB]
Get:22 http://deb.debian.org/debian bookworm/main arm64 libmount1 arm64 2.38.1-5+deb12u3 [160 kB]
Get:23 http://deb.debian.org/debian bookworm/main arm64 libfdisk1 arm64 2.38.1-5+deb12u3 [182 kB]
Get:24 http://deb.debian.org/debian bookworm/main arm64 dnsmasq-base arm64 2.90-4~deb12u1 [472 kB]
Get:25 http://deb.debian.org/debian bookworm/main arm64 dnsmasq all 2.90-4~deb12u1 [66.1 kB]
Get:26 http://deb.debian.org/debian bookworm/main arm64 nfs-common arm64 1:2.6.2-4+deb12u1 [251 kB]
Get:27 http://deb.debian.org/debian bookworm/main arm64 libnfsidmap1 arm64 1:2.6.2-4+deb12u1 [52.3 kB]
Get:28 http://deb.debian.org/debian bookworm/main arm64 ucf all 3.0043+nmu1+deb12u1 [55.3 kB]
Get:29 http://deb.debian.org/debian bookworm/main arm64 libcurl4-gnutls-dev arm64 7.88.1-10+deb12u8 [471 kB]
Get:30 http://deb.debian.org/debian-security bookworm-security/main arm64 libtasn1-6 arm64 4.19.0-2+deb12u1 [46.0 kB]
Get:31 http://deb.debian.org/debian-security bookworm-security/main arm64 libgnutls30 arm64 3.7.9-2+deb12u4 [1,313 kB]
Get:32 http://deb.debian.org/debian bookworm/main arm64 libnghttp2-14 arm64 1.52.0-1+deb12u2 [68.6 kB]
Get:33 http://deb.debian.org/debian bookworm/main arm64 libcurl3-gnutls arm64 7.88.1-10+deb12u8 [360 kB]
Get:34 http://deb.debian.org/debian-security bookworm-security/main arm64 git-man all 1:2.39.5-0+deb12u2 [2,053 kB]
Get:35 http://deb.debian.org/debian-security bookworm-security/main arm64 git arm64 1:2.39.5-0+deb12u2 [7,148 kB]
Get:36 http://deb.debian.org/debian-security bookworm-security/main arm64 openssh-sftp-server arm64 1:9.2p1-2+deb12u5 [60.7 kB]
Get:37 http://deb.debian.org/debian-security bookworm-security/main arm64 openssh-server arm64 1:9.2p1-2+deb12u5 [413 kB]
Get:38 http://deb.debian.org/debian-security bookworm-security/main arm64 openssh-client arm64 1:9.2p1-2+deb12u5 [935 kB]
Get:39 http://deb.debian.org/debian bookworm/main arm64 python3-setuptools-whl all 66.1.1-1+deb12u1 [1,112 kB]
Get:40 http://deb.debian.org/debian bookworm/main arm64 python3.11-venv arm64 3.11.2-6+deb12u5 [5,892 B]
Get:41 http://deb.debian.org/debian bookworm/main arm64 python3.11-dev arm64 3.11.2-6+deb12u5 [617 kB]
Get:42 http://deb.debian.org/debian bookworm/main arm64 libpython3.11-dev arm64 3.11.2-6+deb12u5 [4,392 kB]
Get:43 http://archive.raspberrypi.com/debian bookworm/main arm64 libc6-dbg arm64 2.36-9+rpt2+deb12u9 [8,130 kB]
Get:44 http://deb.debian.org/debian bookworm/main arm64 libpython3.11 arm64 3.11.2-6+deb12u5 [1,840 kB]
Get:45 http://deb.debian.org/debian bookworm/main arm64 python3.11 arm64 3.11.2-6+deb12u5 [573 kB]
Get:46 http://deb.debian.org/debian bookworm/main arm64 libpython3.11-stdlib arm64 3.11.2-6+deb12u5 [1,748 kB]
Get:47 http://deb.debian.org/debian bookworm/main arm64 python3.11-minimal arm64 3.11.2-6+deb12u5 [1,857 kB]
Get:48 https://www.deb-multimedia.org bookworm/main arm64 deb-multimedia-keyring all 2024.9.1 [14.6 kB]
Get:49 http://deb.debian.org/debian bookworm/main arm64 libpython3.11-minimal arm64 3.11.2-6+deb12u5 [810 kB]
Get:50 http://deb.debian.org/debian bookworm/main arm64 libsqlite3-dev arm64 3.40.1-2+deb12u1 [979 kB]
Get:51 https://www.deb-multimedia.org bookworm/main arm64 libgstreamer-plugins-base1.0-0 arm64 1.22.3-dmo1+deb12u5 [832 kB]
Get:52 http://deb.debian.org/debian bookworm/main arm64 libsqlite3-0 arm64 3.40.1-2+deb12u1 [785 kB]
Get:53 http://deb.debian.org/debian-security bookworm-security/main arm64 rsync arm64 3.2.7-1+deb12u2 [400 kB]
Get:54 http://deb.debian.org/debian bookworm/main arm64 tzdata all 2024b-0+deb12u1 [298 kB]
Get:55 http://deb.debian.org/debian bookworm/main arm64 fdisk arm64 2.38.1-5+deb12u3 [139 kB]
Get:56 http://deb.debian.org/debian bookworm/main arm64 iputils-ping arm64 3:20221126-1+deb12u1 [46.1 kB]
Get:57 http://deb.debian.org/debian bookworm/main arm64 avahi-daemon arm64 0.8-10+deb12u1 [80.1 kB]
Get:58 http://deb.debian.org/debian bookworm/main arm64 libavahi-core7 arm64 0.8-10+deb12u1 [96.0 kB]
Get:59 http://deb.debian.org/debian bookworm/main arm64 libavahi-client3 arm64 0.8-10+deb12u1 [44.3 kB]
Get:60 http://deb.debian.org/debian bookworm/main arm64 libavahi-common3 arm64 0.8-10+deb12u1 [41.2 kB]
Get:61 http://deb.debian.org/debian bookworm/main arm64 libavahi-common-data arm64 0.8-10+deb12u1 [107 kB]
Get:62 http://deb.debian.org/debian bookworm/main arm64 bsdextrautils arm64 2.38.1-5+deb12u3 [87.1 kB]
Get:63 http://deb.debian.org/debian bookworm/main arm64 curl arm64 7.88.1-10+deb12u8 [309 kB]
Get:64 http://deb.debian.org/debian bookworm/main arm64 libcurl4 arm64 7.88.1-10+deb12u8 [365 kB]
Get:65 http://deb.debian.org/debian bookworm/main arm64 distro-info-data all 0.58+deb12u3 [6,272 B]
Get:66 http://deb.debian.org/debian bookworm/main arm64 eject arm64 2.38.1-5+deb12u3 [51.2 kB]
Get:67 http://deb.debian.org/debian bookworm/main arm64 ghostscript arm64 10.0.0~dfsg-11+deb12u6 [57.6 kB]
Get:68 http://deb.debian.org/debian bookworm/main arm64 libgs10 arm64 10.0.0~dfsg-11+deb12u6 [2,258 kB]
Get:69 http://deb.debian.org/debian bookworm/main arm64 libgs10-common all 10.0.0~dfsg-11+deb12u6 [587 kB]
Get:70 http://deb.debian.org/debian bookworm/main arm64 libgs-common all 10.0.0~dfsg-11+deb12u6 [149 kB]
Get:71 http://deb.debian.org/debian bookworm/main arm64 libcups2 arm64 2.4.2-3+deb12u8 [229 kB]
Get:72 http://deb.debian.org/debian-security bookworm-security/main arm64 libopenjp2-7 arm64 2.5.0-2+deb12u1 [176 kB]
Get:73 http://deb.debian.org/debian bookworm/main arm64 libtiff-dev arm64 4.5.0-6+deb12u2 [441 kB]
Get:74 http://deb.debian.org/debian bookworm/main arm64 libtiffxx6 arm64 4.5.0-6+deb12u2 [144 kB]
Get:75 http://deb.debian.org/debian bookworm/main arm64 libtiff6 arm64 4.5.0-6+deb12u2 [301 kB]
Get:76 http://deb.debian.org/debian bookworm/main arm64 libglib2.0-dev arm64 2.74.6-2+deb12u5 [1,619 kB]
Get:77 http://deb.debian.org/debian bookworm/main arm64 libglib2.0-dev-bin arm64 2.74.6-2+deb12u5 [150 kB]
Get:78 http://deb.debian.org/debian bookworm/main arm64 libglib2.0-data all 2.74.6-2+deb12u5 [1,209 kB]
Get:79 http://deb.debian.org/debian bookworm/main arm64 libglib2.0-bin arm64 2.74.6-2+deb12u5 [107 kB]
Get:80 http://deb.debian.org/debian bookworm/main arm64 libglib2.0-0 arm64 2.74.6-2+deb12u5 [1,313 kB]
Get:81 http://deb.debian.org/debian bookworm/main arm64 libgstreamer1.0-0 arm64 1.22.0-2+deb12u1 [1,065 kB]
Get:82 http://deb.debian.org/debian bookworm/main arm64 libmpg123-dev arm64 1.31.2-1+deb12u1 [57.6 kB]
Get:83 http://deb.debian.org/debian bookworm/main arm64 libout123-0 arm64 1.31.2-1+deb12u1 [27.0 kB]
Get:84 http://deb.debian.org/debian bookworm/main arm64 libsyn123-0 arm64 1.31.2-1+deb12u1 [82.7 kB]
Get:85 http://deb.debian.org/debian bookworm/main arm64 libmpg123-0 arm64 1.31.2-1+deb12u1 [141 kB]
Get:86 http://deb.debian.org/debian bookworm/main arm64 libsoup2.4-common all 2.74.3-1+deb12u1 [56.2 kB]
Get:87 http://deb.debian.org/debian bookworm/main arm64 libsoup2.4-1 arm64 2.74.3-1+deb12u1 [252 kB]
Get:88 http://deb.debian.org/debian bookworm/main arm64 libapr1 arm64 1.7.2-3+deb12u1 [94.1 kB]
Get:89 http://deb.debian.org/debian bookworm/main arm64 libarchive13 arm64 3.6.2-1+deb12u2 [316 kB]
Get:90 http://deb.debian.org/debian bookworm/main arm64 libcjson1 arm64 1.7.15-1+deb12u2 [22.4 kB]
Get:91 http://deb.debian.org/debian bookworm/main arm64 libgsl27 arm64 2.7.1+dfsg-5+deb12u1 [817 kB]
Get:92 https://www.deb-multimedia.org bookworm/main arm64 gstreamer1.0-plugins-base arm64 1.22.3-dmo1+deb12u5 [637 kB]
Get:93 http://deb.debian.org/debian bookworm/main arm64 libgslcblas0 arm64 2.7.1+dfsg-5+deb12u1 [74.9 kB]
Get:94 http://deb.debian.org/debian bookworm/main arm64 libheif1 arm64 1.15.1-1+deb12u1 [191 kB]
Get:95 http://deb.debian.org/debian-security bookworm-security/main arm64 libwebkit2gtk-4.1-0 arm64 2.46.6-1~deb12u1 [21.7 MB]
Get:96 https://www.deb-multimedia.org bookworm/main arm64 gstreamer1.0-plugins-good arm64 1.22.3-dmo1+deb12u2 [1,926 kB]
Get:97 http://deb.debian.org/debian-security bookworm-security/main arm64 libjavascriptcoregtk-4.1-0 arm64 2.46.6-1~deb12u1 [6,993 kB]
Get:98 https://www.deb-multimedia.org bookworm/main arm64 libebml5 arm64 1:1.4.4-dmo1+deb12u1 [44.0 kB]
Get:99 https://www.deb-multimedia.org bookworm/main arm64 libgstreamer-gl1.0-0 arm64 1.22.3-dmo1+deb12u5 [224 kB]
Get:100 http://deb.debian.org/debian bookworm/main arm64 libnss3 arm64 2:3.87.1-1+deb12u1 [1,218 kB]
Get:101 http://deb.debian.org/debian bookworm/main arm64 ntfs-3g arm64 1:2022.10.3-1+deb12u2 [376 kB]
Get:102 http://deb.debian.org/debian bookworm/main arm64 libntfs-3g89 arm64 1:2022.10.3-1+deb12u2 [149 kB]
Get:103 http://deb.debian.org/debian bookworm/main arm64 libsrt1.5-gnutls arm64 1.5.1-1+deb12u1 [272 kB]
Get:104 http://deb.debian.org/debian bookworm/main arm64 mpg123 arm64 1.31.2-1+deb12u1 [201 kB]
Get:105 http://deb.debian.org/debian bookworm/main arm64 puredata-gui-l10n all 0.53.1+ds-2+deb12u1 [82.3 kB]
Get:106 http://deb.debian.org/debian bookworm/main arm64 puredata-core arm64 0.53.1+ds-2+deb12u1 [748 kB]
Get:107 http://deb.debian.org/debian bookworm/main arm64 puredata-gui all 0.53.1+ds-2+deb12u1 [129 kB]
Get:108 http://deb.debian.org/debian bookworm/main arm64 puredata-dev all 0.53.1+ds-2+deb12u1 [40.3 kB]
Get:109 http://deb.debian.org/debian bookworm/main arm64 puredata-doc all 0.53.1+ds-2+deb12u1 [1,495 kB]
Get:110 http://deb.debian.org/debian bookworm/main arm64 puredata-extra arm64 0.53.1+ds-2+deb12u1 [101 kB]
Get:111 http://deb.debian.org/debian bookworm/main arm64 puredata-utils arm64 0.53.1+ds-2+deb12u1 [22.7 kB]
Get:112 http://deb.debian.org/debian bookworm/main arm64 puredata all 0.53.1+ds-2+deb12u1 [13.1 kB]
Get:113 http://deb.debian.org/debian bookworm/main arm64 python3-cryptography arm64 38.0.4-3+deb12u1 [590 kB]
Get:114 http://deb.debian.org/debian bookworm/main arm64 python3-setuptools all 66.1.1-1+deb12u1 [522 kB]
Get:115 http://deb.debian.org/debian bookworm/main arm64 python3-pkg-resources all 66.1.1-1+deb12u1 [296 kB]
Get:116 http://deb.debian.org/debian bookworm/main arm64 python3-urllib3 all 1.26.12-1+deb12u1 [114 kB]
Get:117 http://deb.debian.org/debian bookworm/main arm64 rfkill arm64 2.38.1-5+deb12u3 [37.3 kB]
Get:118 http://deb.debian.org/debian-security bookworm-security/main arm64 ssh all 1:9.2p1-2+deb12u5 [174 kB]
Get:119 http://archive.raspberrypi.com/debian bookworm/main arm64 libc-devtools arm64 2.36-9+rpt2+deb12u9 [60.6 kB]
Get:120 http://archive.raspberrypi.com/debian bookworm/main arm64 libc6-dev arm64 2.36-9+rpt2+deb12u9 [2,091 kB]
Get:121 http://archive.raspberrypi.com/debian bookworm/main arm64 libc-dev-bin arm64 2.36-9+rpt2+deb12u9 [49.2 kB]
Get:122 http://archive.raspberrypi.com/debian bookworm/main arm64 linux-libc-dev all 1:6.6.74-1+rpt1 [2,057 kB]
Get:123 http://archive.raspberrypi.com/debian bookworm/main arm64 libc6 arm64 2.36-9+rpt2+deb12u9 [4,989 kB]
Get:124 http://archive.raspberrypi.com/debian bookworm/main arm64 libc-bin arm64 2.36-9+rpt2+deb12u9 [749 kB]
Get:125 http://archive.raspberrypi.com/debian bookworm/main arm64 xserver-common all 2:21.1.7-3+rpt3+deb12u8 [2,387 kB]
Get:126 http://archive.raspberrypi.com/debian bookworm/main arm64 xserver-xorg-core arm64 2:21.1.7-3+rpt3+deb12u8 [4,041 kB]
Get:127 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-dev arm64 2.4.123-1~bpo12+1+rpt1 [428 kB]
Get:128 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-radeon1 arm64 2.4.123-1~bpo12+1+rpt1 [25.2 kB]
Get:129 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-nouveau2 arm64 2.4.123-1~bpo12+1+rpt1 [22.1 kB]
Get:130 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-amdgpu1 arm64 2.4.123-1~bpo12+1+rpt1 [25.5 kB]
Get:131 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-freedreno1 arm64 2.4.123-1~bpo12+1+rpt1 [24.8 kB]
Get:132 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-tegra0 arm64 2.4.123-1~bpo12+1+rpt1 [13.4 kB]
Get:133 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-etnaviv1 arm64 2.4.123-1~bpo12+1+rpt1 [16.5 kB]
Get:134 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm-common all 2.4.123-1~bpo12+1+rpt1 [9,338 B]
Get:135 http://archive.raspberrypi.com/debian bookworm/main arm64 libdrm2 arm64 2.4.123-1~bpo12+1+rpt1 [46.9 kB]
Get:136 http://archive.raspberrypi.com/debian bookworm/main arm64 libpixman-1-dev arm64 0.42.2-1+rpt3 [572 kB]
Get:137 http://archive.raspberrypi.com/debian bookworm/main arm64 libpixman-1-0 arm64 0.42.2-1+rpt3 [526 kB]
Get:138 http://archive.raspberrypi.com/debian bookworm/main arm64 libssl-dev arm64 3.0.15-1~deb12u1+rpt1 [3,442 kB]
Get:139 http://archive.raspberrypi.com/debian bookworm/main arm64 libssl3 arm64 3.0.15-1~deb12u1+rpt1 [2,363 kB]
Get:140 http://archive.raspberrypi.com/debian bookworm/main arm64 zlib1g-dev arm64 1:1.2.13.dfsg-1+rpt1 [944 kB]
Get:141 http://archive.raspberrypi.com/debian bookworm/main arm64 zlib1g arm64 1:1.2.13.dfsg-1+rpt1 [94.3 kB]
Get:142 http://archive.raspberrypi.com/debian bookworm/main arm64 raspi-firmware all 1:1.20241126-1 [12.8 MB]
Get:143 http://archive.raspberrypi.com/debian bookworm/main arm64 libc-l10n all 2.36-9+rpt2+deb12u9 [1,541 kB]
Get:144 http://archive.raspberrypi.com/debian bookworm/main arm64 locales all 2.36-9+rpt2+deb12u9 [5,086 kB]
Get:145 http://archive.raspberrypi.com/debian bookworm/main arm64 initramfs-tools all 0.142+rpt3+deb12u1 [17.2 kB]
Get:146 http://archive.raspberrypi.com/debian bookworm/main arm64 initramfs-tools-core all 0.142+rpt3+deb12u1 [53.1 kB]
Get:147 http://archive.raspberrypi.com/debian bookworm/main arm64 libpisp1 arm64 1.1.0-1 [282 kB]
Get:148 http://archive.raspberrypi.com/debian bookworm/main arm64 libpisp-common all 1.1.0-1 [4,908 B]
Get:149 http://archive.raspberrypi.com/debian bookworm/main arm64 libcamera0.3 arm64 0.3.2+rpt20241119-1 [815 kB]
Get:150 http://archive.raspberrypi.com/debian bookworm/main arm64 libwayland-dev arm64 1.23.0-1~bpo12+1+rpt1 [128 kB]
Get:151 http://archive.raspberrypi.com/debian bookworm/main arm64 libwayland-server0 arm64 1.23.0-1~bpo12+1+rpt1 [40.9 kB]
Get:152 http://archive.raspberrypi.com/debian bookworm/main arm64 libwayland-cursor0 arm64 1.23.0-1~bpo12+1+rpt1 [13.0 kB]
Get:153 http://archive.raspberrypi.com/debian bookworm/main arm64 libwayland-egl1 arm64 1.23.0-1~bpo12+1+rpt1 [6,170 B]
Get:154 http://archive.raspberrypi.com/debian bookworm/main arm64 libwayland-bin arm64 1.23.0-1~bpo12+1+rpt1 [23.9 kB]
Get:155 http://archive.raspberrypi.com/debian bookworm/main arm64 libwayland-client0 arm64 1.23.0-1~bpo12+1+rpt1 [31.4 kB]
Get:156 http://archive.raspberrypi.com/debian bookworm/main arm64 openssl arm64 3.0.15-1~deb12u1+rpt1 [1,492 kB]
Get:157 http://archive.raspberrypi.com/debian bookworm/main arm64 raspberrypi-net-mods all 1.4.3 [2,272 B]
Get:158 http://archive.raspberrypi.com/debian bookworm/main arm64 raspberrypi-sys-mods arm64 20241202 [22.0 kB]
Get:159 http://archive.raspberrypi.com/debian bookworm/main arm64 rpi-eeprom all 27.4-1 [3,151 kB]

[Shortened because character limitation]

Yes. Totally intended. When moving to testimg (vangelis), system packages are updated to the last.

Regards

@jofemodo , I’m already doing something here. I have control groups now and the parameters assigned to it. Do I order the pages and params with

lv2:displayPriority *;

or

lv2:index *;

?

Do I have to keep the params in order then? Because there’s some ordered list

patch:writable
[...]
patch:readable
[...]

In vst I remember it was critical for patches to keep the param id order intact.

And if I’m already here: Is there a shorter way to updating the lv2-custom file to the plugin folder than updating the system?

You sort parameters with DisplayPriority. First parameter on each group determine group ordering. This can be a little be confusing.

1 Like

Ok, so I keep the order in the file intact and use the priority. And it’s also usable for ordering params within the group as well as groups itself?

And what is lv2:index 1 ; good for then? It’s used in several ttl’s.

@jofemodo
So here is my submission. That was tough.

dsp.ttl (20.3 KB)

Now that I got a bit into it, I had some questions in case I had a rush on editing other ttls:

  1. How will my future updates in vangelis work? Will there be a merge conflict since I just created a file in a git observed file system?
  2. is there a comprehensive tutorial here on how to edit custom-lv2 ttl? (ignore following questions, if so)
  3. Is there a guide about how a meaningful order of parameters should be implemented for different engines already?
  4. Like asked above: what is the purpose of lv2:index 1 ;
  5. Can I assign custom parameter display strings?
  6. Can I reorder parameters without breaking the functionality?
  7. Is there a guide about lv2 parameter editing in terms of param shape or any transfer functions, enum handling (int to string conversin), data type (double/float/int/bool) and so on regarding these kind of ttl editing already?

I’m asking all this because I could really imagine diving deepee into this system to finally contribute something to this great project, but I would definetly need a “bold push” to get there.

Hi @hannesmenzel!

These are all good questions. The LV2 documentation is painful. It is the kind of documentation that makes sense, only after you understand the concepts, i.e. you don’t learn from the docs but instead have to work out (e.g. from other examples) what is meant then you can understand what the docs mean… well that is my experience!

The update mechanism in zynthian tends to overwrite existing changes. If you manually git pull then you have to manage conflicts yourself. Basically, you should chose to use the normal user update method if you are a normal user of manual pull/merge if you are a developer. I seldom use the normal update methods - only if testing the update mechanism.

Probably not. Check the wiki. A search for “LV2” shows a few pages with varying relevance.

No! We tend to be sympathetic to the upstream design. It may seem logical to have some form of uniform approach, e.g. oscilattors then filters, then envelopes, etc. but this may mess with the workflow of a synth and is not necessarily good practice for all engines. We hope that upstream developers have already considered this (though in practice many don’t). Mimi-d is an example where the upstream developer is very concious of zynthian implementation and considers parameter order and grouping carefully. Others have different targets in mind so may have different criteria when planning this.

This is the unique id used by the source code to identify each parameter. These must not be changed. They do not signifiy order. They are simply uids.

Yes. The “lv2:name” parameter is for display purpose only. The “lv2:symbol” parameter is the UID used by clients / hosts to identify the parameter. (It is poor practice to have redundant data, with index and symbol both acting as a UID but they must both remain unchanged.)

Yes. Use “pg:group” to categorise parameters into groups and “lv2:displayPriority” to order parameters within a group. The same display priority may be used for controls in different groups, e.g. withing envelope group you can have display priorites: 1, 2, 3, 4 and then also within filter group you can have display priorites: 1, 2, 3, 4.

Not that I am aware of. I tend to look at other examples (or what I have done before) to remind myself of how to achieve my goal. Remember that all numbers in LV2 are treated as floating point, even though they may be displayed as other types. Enumerations can be quite verbose and I tend to write a python script to create them to reduce typing and the risk of error.

Consider this a bold push and not a long hard stare!

2 Likes

Thanks a lot for the comprehensive answer!

What I applied yesterday in the ttl above is to use distinct display priorities. When using 1,2,3,4 in each respective group I don’t know how to fix the group order. So what I did is starting with 99 and go backwards to order both the controls within groups and between groups alike.

You mean I could apply display priority to both groups and controls? That would have been easier.

By the way, my questions towards “guides” and “tutorials” was maybe a bit misleading. I rather thought also about weather there was a discussion already which lead to agreements how to do that.

No, what you did is right. Zynthian uses the display priority parameter to order controls and the group parameter to group them so, if you want to order groups, you need to use display priorites across groups, e.g. to show the filter group before the oscillator group, assign higher display priorities in the filter group than in the oscillator group.

Be aware that these are not saved in the snapshot so, if you want to change the order, it can be done in the ttl and will be used next time the engine is loaded.

There hasn’t been too much discussion here on best practice. Feel free to lead such a discussion.

I meant if I can reorder the position of the respective parameter implementations in the file.

Hi @hannesmenzel and @riban!

We could implement displayPriority for groups, so ordering groups would be a lot easier. Of course, this doesn’t mean we have to modify current TTLs, but it would simplify further work.

@hannesmenzel, once your custom TTL is ready, you should do a PR to zynthian-data repository, so it’s managed in zynthian updates and available to all users.

Regards,

1 Like

It is ready. Sorry, but I don’t speak git fluently and don’t know how to do that.

EDIT: Well then, here is the PR.

3 Likes

This one I did not figure out though.

Merged! It’s already available in vangelis branch. Just update and enjoy!

Thanks a lot @hannesmenzel ! Good work! Have you considered doing more work like this? We have a bunch of synth engines and audio FX that would benefit from LV2 grouping :innocent:

Regards,

1 Like

I would do that occasionally. There are still some things I am a bit unsettled. First thing is to find out how to do the git right, not just accidentially doing it right. Otherwise some more insight in these LV2 structures like this

and this

and some other things.

Did I miss anything…?

I think this would be a good summary:

Well and maybe this:

Welcome to our world.

Someone will be along soon to feed you rook soup.

It will be horrible, and way too much of it . . .

Well done.