Sitala drum plugin

All your LV2 and LADSPA goodness and more.

Moderators: MattKingUSA, khz

windowsrefund
Established Member
Posts: 64
Joined: Mon Jul 30, 2018 11:04 pm

Re: Sitala drum plugin

Post by windowsrefund »

Yep, that did the trick. Nice catch. While I'm here, I'm curious to know what may be planned for supporting the importing of additional kits?
scottwheeler
Established Member
Posts: 24
Joined: Mon Dec 17, 2018 4:26 am
Location: Berlin
Contact:

Re: Sitala drum plugin

Post by scottwheeler »

windowsrefund wrote:Yep, that did the trick. Nice catch. While I'm here, I'm curious to know what may be planned for supporting the importing of additional kits?
Sitala does support importing additional kits (click on the "hamburger menu" in the top right), there's just not yet a significant pool of additional kits that have been made for it. (It also has its own kit file format, which is just a bunch of wav files and an XML description in a zip file.)

I actually created some new kits for it yesterday from a free sample pack and got in touch with the sample pack creator to ask for permission to redistribute them.
scottwheeler
Established Member
Posts: 24
Joined: Mon Dec 17, 2018 4:26 am
Location: Berlin
Contact:

Re: Sitala drum plugin

Post by scottwheeler »

raboof wrote:
scottwheeler wrote:I'll play around with this and see how a statically linked Sitala fares. Back in the day (I was a very active Linux desktop developer in the early 2000s) you would still run into problems if you had two versions of the same library loaded into a binary because of global variable clashes and symbol collisions
Hmm yes, good point.
scottwheeler wrote:but I think symbol visibility and thread safety may have improved enough at this point that it'd work. I'll give it a try.
Here's hoping!
From my initial tests, the thing I ran into is that the system libraries that are shipped as .a files (say, libfreetype.a) can't be linked into a shared library because they're not relocatable (i.e. compiled with -fPIC). It might be possible to recompile every library that Sitala depended on to then link to a static lib compiled with -fPIC, but that's deeper down the rabbit hole than I'm willing to go at the moment.
User avatar
khz
Established Member
Posts: 1648
Joined: Thu Apr 17, 2008 6:29 am
Location: German
Has thanked: 42 times
Been thanked: 92 times

Re: Sitala drum plugin

Post by khz »

khz wrote:I have entered in the "/etc/portage/package.use"

Code: Select all

net-misc/curl gnutls
<-- This is wrong.

Correct: In the "make.conf" add the entry

Code: Select all

CURL_SSL="gnutls"
.

Code: Select all

[ebuild   R    ] net-misc/curl-7.63.0::gentoo  USE="ipv6 ldap ssl threads -adns -brotli -http2 -idn -kerberos -metalink -rtmp -samba -ssh -static-libs -test" ABI_X86="(64) -32 (-x32)" CURL_SSL="gnutls -libressl -mbedtls -nss -openssl (-winssl)" 0 KiB

Code: Select all

 $ ldd libsitala.so
ldd: Warnung: Sie haben kein Ausführungsrecht für `./libsitala.so'
	linux-vdso.so.1 (0x00007ffd1bfde000)
	libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fe2c5454000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe2c5233000)
	libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007fe2c4f55000)
	libgtk-3.so.0 => /usr/lib64/libgtk-3.so.0 (0x00007fe2c45ac000)
	libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0 (0x00007fe2c4353000)
	libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007fe2c401b000)
	libcurl-gnutls.so.4 => not found
	libwebkit2gtk-4.0.so.37 => /usr/lib64/libwebkit2gtk-4.0.so.37 (0x00007fe2c1329000)
	libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fe2c1113000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007fe2c0f0f000)
	librt.so.1 => /lib64/librt.so.1 (0x00007fe2c0d07000)
	libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/libstdc++.so.6 (0x00007fe2c08fc000)
	libm.so.6 => /lib64/libm.so.6 (0x00007fe2c0576000)
	libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/libgcc_s.so.1 (0x00007fe2c035e000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fe2bff8e000)
	libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fe2bfd62000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fe2c6464000)
	libbz2.so.1 => /lib64/libbz2.so.1 (0x00007fe2bfb4b000)
	libpng16.so.16 => /usr/lib64/libpng16.so.16 (0x00007fe2bf906000)
	libz.so.1 => /lib64/libz.so.1 (0x00007fe2bf6eb000)
	libgdk-3.so.0 => /usr/lib64/libgdk-3.so.0 (0x00007fe2bf428000)
	libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0 (0x00007fe2bf224000)
	libpangocairo-1.0.so.0 => /usr/lib64/libpangocairo-1.0.so.0 (0x00007fe2bf016000)
	libXi.so.6 => /usr/lib64/libXi.so.6 (0x00007fe2bee04000)
	libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007fe2bebfe000)
	libcairo-gobject.so.2 => /usr/lib64/libcairo-gobject.so.2 (0x00007fe2be9f5000)
	libcairo.so.2 => /usr/lib64/libcairo.so.2 (0x00007fe2be680000)
	libgdk_pixbuf-2.0.so.0 => /usr/lib64/libgdk_pixbuf-2.0.so.0 (0x00007fe2be459000)
	libatk-1.0.so.0 => /usr/lib64/libatk-1.0.so.0 (0x00007fe2be232000)
	libatk-bridge-2.0.so.0 => /usr/lib64/libatk-bridge-2.0.so.0 (0x00007fe2be000000)
	libepoxy.so.0 => /usr/lib64/libepoxy.so.0 (0x00007fe2bdcca000)
	libgio-2.0.so.0 => /usr/lib64/libgio-2.0.so.0 (0x00007fe2bd907000)
	libharfbuzz.so.0 => /usr/lib64/libharfbuzz.so.0 (0x00007fe2bd5ef000)
	libpangoft2-1.0.so.0 => /usr/lib64/libpangoft2-1.0.so.0 (0x00007fe2bd3d9000)
	libpango-1.0.so.0 => /usr/lib64/libpango-1.0.so.0 (0x00007fe2bd18a000)
	libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00007fe2bcf37000)
	libffi.so.7 => /usr/lib64/libffi.so.7 (0x00007fe2bcd2c000)
	libpcre.so.1 => /lib64/libpcre.so.1 (0x00007fe2bcab4000)
	libGL.so.1 => /usr/lib64/libGL.so.1 (0x00007fe2bc837000)
	libEGL.so.1 => /usr/lib64/libEGL.so.1 (0x00007fe2bc5fc000)
	libnotify.so.4 => /usr/lib64/libnotify.so.4 (0x00007fe2bc3f4000)
	libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00007fe2bc04b000)
	libxslt.so.1 => /usr/lib64/libxslt.so.1 (0x00007fe2bbe0c000)
	libsqlite3.so.0 => /usr/lib64/libsqlite3.so.0 (0x00007fe2bba8e000)
	libjavascriptcoregtk-4.0.so.18 => /usr/lib64/libjavascriptcoregtk-4.0.so.18 (0x00007fe2ba80e000)
	libicuuc.so.63 => /usr/lib64/libicuuc.so.63 (0x00007fe2ba41d000)
	libicui18n.so.63 => /usr/lib64/libicui18n.so.63 (0x00007fe2b9f19000)
	libwoff2dec.so.1.0.2 => /usr/lib64/libwoff2dec.so.1.0.2 (0x00007fe2b9d0d000)
	libharfbuzz-icu.so.0 => /usr/lib64/libharfbuzz-icu.so.0 (0x00007fe2b9b0a000)
	libgcrypt.so.20 => /usr/lib64/libgcrypt.so.20 (0x00007fe2b97c0000)
	libgstapp-1.0.so.0 => /usr/lib64/libgstapp-1.0.so.0 (0x00007fe2b95b0000)
	libgstbase-1.0.so.0 => /usr/lib64/libgstbase-1.0.so.0 (0x00007fe2b9338000)
	libgstreamer-1.0.so.0 => /usr/lib64/libgstreamer-1.0.so.0 (0x00007fe2b8feb000)
	libgstpbutils-1.0.so.0 => /usr/lib64/libgstpbutils-1.0.so.0 (0x00007fe2b8db1000)
	libgstaudio-1.0.so.0 => /usr/lib64/libgstaudio-1.0.so.0 (0x00007fe2b8b25000)
	libgsttag-1.0.so.0 => /usr/lib64/libgsttag-1.0.so.0 (0x00007fe2b88e4000)
	libgstvideo-1.0.so.0 => /usr/lib64/libgstvideo-1.0.so.0 (0x00007fe2b8600000)
	libgstgl-1.0.so.0 => /usr/lib64/libgstgl-1.0.so.0 (0x00007fe2b8397000)
	libgstfft-1.0.so.0 => /usr/lib64/libgstfft-1.0.so.0 (0x00007fe2b8188000)
	libjpeg.so.62 => /usr/lib64/libjpeg.so.62 (0x00007fe2b7eee000)
	libwebp.so.7 => /usr/lib64/libwebp.so.7 (0x00007fe2b7c3b000)
	libwebpdemux.so.2 => /usr/lib64/libwebpdemux.so.2 (0x00007fe2b7a36000)
	libenchant.so.1 => /usr/lib64/libenchant.so.1 (0x00007fe2b782a000)
	libsoup-2.4.so.1 => /usr/lib64/libsoup-2.4.so.1 (0x00007fe2b7532000)
	libtasn1.so.6 => /usr/lib64/libtasn1.so.6 (0x00007fe2b731e000)
	libhyphen.so.0 => /usr/lib64/libhyphen.so.0 (0x00007fe2b7117000)
	libXcomposite.so.1 => /usr/lib64/libXcomposite.so.1 (0x00007fe2b6f14000)
	libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x00007fe2b6d11000)
	libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fe2b6b0d000)
	libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00007fe2b6907000)
	libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x00007fe2b66fb000)
	libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007fe2b64f0000)
	libpixman-1.so.0 => /usr/lib64/libpixman-1.so.0 (0x00007fe2b61e1000)
	libxcb-shm.so.0 => /usr/lib64/libxcb-shm.so.0 (0x00007fe2b5fdd000)
	libxcb-render.so.0 => /usr/lib64/libxcb-render.so.0 (0x00007fe2b5dce000)
	libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007fe2b5bc3000)
	libatspi.so.0 => /usr/lib64/libatspi.so.0 (0x00007fe2b598e000)
	libdbus-1.so.3 => /usr/lib64/libdbus-1.so.3 (0x00007fe2b573f000)
	libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fe2b5527000)
	libmount.so.1 => /lib64/libmount.so.1 (0x00007fe2b52c5000)
	libgraphite2.so.3 => /usr/lib64/libgraphite2.so.3 (0x00007fe2b509d000)
	libfribidi.so.0 => /usr/lib64/libfribidi.so.0 (0x00007fe2b4e7e000)
	libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007fe2b4c40000)
	libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fe2b4a38000)
	libglapi.so.0 => /usr/lib64/libglapi.so.0 (0x00007fe2b4806000)
	libdrm.so.2 => /usr/lib64/libdrm.so.2 (0x00007fe2b45f1000)
	libxcb-glx.so.0 => /usr/lib64/libxcb-glx.so.0 (0x00007fe2b43d4000)
	libX11-xcb.so.1 => /usr/lib64/libX11-xcb.so.1 (0x00007fe2b41d2000)
	libxcb-dri2.so.0 => /usr/lib64/libxcb-dri2.so.0 (0x00007fe2b3fcd000)
	libXxf86vm.so.1 => /usr/lib64/libXxf86vm.so.1 (0x00007fe2b3dc7000)
	libxcb-dri3.so.0 => /usr/lib64/libxcb-dri3.so.0 (0x00007fe2b3bc2000)
	libxcb-present.so.0 => /usr/lib64/libxcb-present.so.0 (0x00007fe2b39bf000)
	libxcb-sync.so.1 => /usr/lib64/libxcb-sync.so.1 (0x00007fe2b37b8000)
	libxshmfence.so.1 => /usr/lib64/libxshmfence.so.1 (0x00007fe2b35b6000)
	libgbm.so.1 => /usr/lib64/libgbm.so.1 (0x00007fe2b33a7000)
	libxcb-xfixes.so.0 => /usr/lib64/libxcb-xfixes.so.0 (0x00007fe2b319e000)
	libicudata.so.63 => /usr/lib64/libicudata.so.63 (0x00007fe2b15b0000)
	libwoff2common.so.1.0.2 => /usr/lib64/libwoff2common.so.1.0.2 (0x00007fe2b13ad000)
	libbrotlidec.so.1 => /usr/lib64/libbrotlidec.so.1 (0x00007fe2b11a0000)
	libgpg-error.so.0 => /usr/lib64/libgpg-error.so.0 (0x00007fe2b0f7c000)
	liborc-0.4.so.0 => /usr/lib64/liborc-0.4.so.0 (0x00007fe2b0ccc000)
	libgstallocators-1.0.so.0 => /usr/lib64/libgstallocators-1.0.so.0 (0x00007fe2b0ac8000)
	libgudev-1.0.so.0 => /usr/lib64/libgudev-1.0.so.0 (0x00007fe2b08be000)
	libbsd.so.0 => /usr/lib64/libbsd.so.0 (0x00007fe2b06a1000)
	libblkid.so.1 => /lib64/libblkid.so.1 (0x00007fe2b0449000)
	libbrotlicommon.so.1 => /usr/lib64/libbrotlicommon.so.1 (0x00007fe2b0228000)
	libudev.so.1 => /lib64/libudev.so.1 (0x00007fe2affff000)
libcurl-gnutls.so.4 => not found

Code: Select all

 # /usr/lib64/libcur
libcurl.so        libcurl.so.4      libcurl.so.4.5.0  libcurses.so
8-)
. . . FZ - Does humor belongs in Music?
. . GNU/LINUX@AUDIO ~ /Wiki $ Howto.Info && GNU/Linux Debian installing >> Linux Audio Workstation LAW
  • I don't care about the freedom of speech because I have nothing to say.
User avatar
autotech
Established Member
Posts: 5
Joined: Mon Oct 15, 2018 9:54 pm

Re: Sitala drum plugin

Post by autotech »

scottwheeler wrote:I'm not entirely sure that I would recommend this (since I don't know what assumptions Ardour makes about the old libraries), but just doing this makes things work for me:

Code: Select all

cd /opt/Ardour-5.12.0/lib
mkdir old
mv libgio-2.0.so.0 libglib-2.0.so.0 libgobject-2.0.so.0 libharfbuzz.so.0 old/
After that Ardour runs fine, and loads Sitala without problems.

Basically that removes Ardour's overrides of the relevant system libraries (but still leaves many other ones in place -- again, their packaging process is very questionable), and gets things working for Sitala.
Greetings,

I got Sitala to work in Ardour 5.12 (KXStudio) and Ubuntu 18.04.2 with the method above. I did everything with root Nautilus. The old libraries are backed up in the "old" directory and so far I have not seen any trouble from Ardour. Sitala shows up as a multi-output plugin, but it works. We'll see how it holds up. Hopefully all problems from every angle get tackled so both Ardour and plugins will be ready for prime time. In the meantime I'll be taking it as far as it can go.

Cheers.

AT
Manjaro KDE 18.0.4 - Ardour v5.12 - LMMS
Audio Interface - UMC204HD
scottwheeler
Established Member
Posts: 24
Joined: Mon Dec 17, 2018 4:26 am
Location: Berlin
Contact:

Re: Sitala drum plugin

Post by scottwheeler »

Something I figured the folks here would be interested in: for the upcoming release, we removed the dependency on GTK. It was only being used by Webkit to render changelogs in our update notifications, which are now shown in plain text on Linux, rather than HTML. This means a lot less dependencies are pulled in, and will probably make Sitala clash less with the Ardour packages available from their website (which include system libraries).
User avatar
milkii
Established Member
Posts: 477
Joined: Tue Jan 05, 2016 9:08 am
Location: Edinburgh
Has thanked: 92 times
Been thanked: 91 times
Contact:

Re: Sitala drum plugin

Post by milkii »

https://decomposer.de/sitala/

From https://www.facebook.com/decomposermusi ... 3375543649 :
There are a handful of big new features, and loads of little usability tweaks all over the app. Here's the big stuff:

• Brand new 808 kit

One of Berlin's top producers / mastering houses dragged out an old 808 and sampled a brand new default kit just for us.

• Drag & Drop Kit Management

Ever get half-way through setting up a kit and realize that you want one more cymbal, but want to group it next to your other cymbal sounds? Happens to us all the time. Now it's easy to move pads around or copy them via drag and drop.

• File browser

We've got a slick new file browser that lets you select samples without ever leaving the sample view window.

• User kits

It's now possible to save your kits to a user kits folder that's easy to find in the kits drop down menu.

That's the big stuff. There are a bajillion other little tweaks throughout the app to make your life easier.

Now, another big theme with this release is that we're hoping to convince more sample pack vendors to start shipping stuff in Sitala format. We've added a collection of features to make their lives easier and created a page on our website to help them along. If you're in the business of distributing sample packs, we'd love to talk to you!

Bass drums speak louder than words, so I'll shut up and let you get to playing with the new toy. We're looking forward to your feedback!

they/them ta / libreav.org / wiki.thingsandstuff.org/Audio and related pages / gh

User avatar
sysrqer
Established Member
Posts: 2519
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 148 times
Contact:

Re: Sitala drum plugin

Post by sysrqer »

There is a packaging error on the ubuntu deb I think:

Code: Select all

sudo dpkg -i sitala-1.0.0-beta-2_amd64.deb 
(Reading database ... 374820 files and directories currently installed.)
Preparing to unpack sitala-1.0.0-beta-2_amd64.deb ...
Unpacking sitala (1.0.0-beta-2) over (1.0.0-beta-1) ...
dpkg: dependency problems prevent configuration of sitala:
 sitala depends on libwebkit2gtk-4.0-37 (>= 2.26.2-1~deb10+1); however:
  Version of libwebkit2gtk-4.0-37:amd64 on system is 2.26.2-0ubuntu0.18.04.1.
User avatar
elcalen
Established Member
Posts: 114
Joined: Mon Oct 28, 2019 12:39 pm
Location: Finland
Has thanked: 1 time
Been thanked: 12 times
Contact:

Re: Sitala drum plugin

Post by elcalen »

sysrqer wrote:There is a packaging error on the ubuntu deb I think
It does install without error on Debian testing, which appears to have a compatible version of libwebkit2gtk-4.0-37. Which is lucky for me, since I'm on Debian testing.

But yeah, looks like Ubuntu is on a slightly different version of the package. Unless there's something very specific in the 1~deb10+1 build that Sitala depends on, I'd guess that's an error in the .deb build?
Artist name Ben Enkindle. Making electronic music exclusively with Linux software.
scottwheeler
Established Member
Posts: 24
Joined: Mon Dec 17, 2018 4:26 am
Location: Berlin
Contact:

Re: Sitala drum plugin

Post by scottwheeler »

elcalen wrote:
sysrqer wrote:There is a packaging error on the ubuntu deb I think
It does install without error on Debian testing, which appears to have a compatible version of libwebkit2gtk-4.0-37. Which is lucky for me, since I'm on Debian testing.
Actually what initially happened was I built versions for Debian Stable and Ubuntu, but then uploaded the wrong one. For the moment we didn't intend to release the Debian package since it basically didn't work at all on Debian Stable (main window didn't show up in standalone, crashed immediately when used as a plugin). I'm not sure why it pulled in GTK on Debian, but that was the least of its issues.

Now the site has the correct Ubuntu package.
User avatar
sysrqer
Established Member
Posts: 2519
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 148 times
Contact:

Re: Sitala drum plugin

Post by sysrqer »

All working now, thanks.

Honestly, this is a dream for me right now. I've spent the last year or so making music exclusively with VCV Rack and now I'm starting to use reaper again a bit more but I've been really stuck for a decent drum sampler solution. I forgot about this plugin but it is exactly what I've needed.
Codesound
Established Member
Posts: 26
Joined: Mon Aug 12, 2019 12:21 pm

Re: Sitala drum plugin

Post by Codesound »

sysrqer wrote: Sat Dec 15, 2018 2:29 pm Just found this, it's a cross platform drum machine. It's quite simple but has some handy features.

https://decomposer.de/sitala.html
Hi,

Linux Mint 20.1-x64 cinnamom, reaper 6.28, sitala 1.0.deb


I installed sitala.deb but Reaper doesn't recognize It...
What Is the correct Path to indicate in reaper?

Thanks for this forum and for anyone help me....
User avatar
Linuxmusician01
Established Member
Posts: 1524
Joined: Mon Feb 23, 2015 2:38 pm
Location: Holland
Has thanked: 756 times
Been thanked: 134 times

Re: Sitala drum plugin

Post by Linuxmusician01 »

Codesound wrote: Sat May 15, 2021 9:34 am
sysrqer wrote: Sat Dec 15, 2018 2:29 pm Just found this, it's a cross platform drum machine. It's quite simple but has some handy features.

https://decomposer.de/sitala.html
Hi,

Linux Mint 20.1-x64 cinnamom, reaper 6.28, sitala 1.0.deb


I installed sitala.deb but Reaper doesn't recognize It...
What Is the correct Path to indicate in reaper?

Thanks for this forum and for anyone help me....
The .deb file can be viewed with File Roller. It contains the standalone binary and the Linux VST (not to be confused with a Windows VST). The VST is called libsitala.so and it will be installed to /usr/lib/lxvst/ (which is always the default in Linux). If you want to use the VST in your DAW make sure that it looks for VST's in that directory and refresh. I don't use Reaper so I don't know how to set paths in that DAW.

Good luck!


P.S. My Linux distro is so old that the standalone binary won't run because my glibc version is too old.
User avatar
logicgate
Established Member
Posts: 37
Joined: Sat Oct 20, 2012 2:21 am
Has thanked: 1 time

Re: Sitala drum plugin

Post by logicgate »

I installed sitala.deb but Reaper doesn't recognize It...
What Is the correct Path to indicate in reaper?
I had the same issue. The Sitala VSTi installs to /usr/lib/lxvst. Either add that to the REAPER path or copy the file to a location you're already using in REAPER.
Logic Gate Music (retro electronic music and more...)
Post Reply