Linux & Drum VSTi

I do get some xruns on first playthrough when using the Modern Doom or Tight Studio kits but nothing to write home about and nothing audible in the stems when bouncing the recorded / arranged midi to audio… I use underpowered old hardware (a desktop from 2013, 8GB ram) and always assumed it was just because of that…

Sort of agree :slightly_smiling_face: I love the idea, the simplicity and flexibility but some of the samples on one or two kits clip at full velocity, some of the hits aren’t hard enough for my liking… Plus I’ve struggled to get a decent drum mix from it :frowning_face: But as mentioned, I’d wager that’s down to my crap mixing skills. The drums on that track you shared earlier in the thread sound absolutely fantastic…!

Hmmmm I’ve been curious to try them but not gotten round to it yet. I really really like Amp Locker, if that counts for anything (already have a tonne of Audio Assault’s amp sims) but the demos on the Drum Locker page sound a bit uninspiring and generic…? Cymbals dark and plastic, snares overly boxy and without character… Was your initial reaction the same? Is there a lot of scope and flexibility to mix the individual kit pieces and overall tone etc?

Linux: Mint 22.2 with modified grub parameters
Ardour 8.12.0 from ardour.org
Ugritone: 3.0.21

Processor: Intel© Core™ i7-1065G7 CPU @ 1.30GHz × 4
Ram: 32 GB
Kernel: 6.8.0-84-generic
DIsplay Server: X11

44,1 kHz, 1024 samples, 3 Periods
using my old Zoom G3X guitar processor as soundcard via USB

Just tried again, seamlessly switching while playing the track,

That’s similar to my DG experience…I might get a random xrun on occasion, but nothing audible on stems, and I can’t “see” anything on the stem signals. Ugritone…I watch the xruns increment like a counter until it freezes up, or outright crashes Ardour. @peter.zenk posted his configuration, which is lower-specced hardware than my own, but Ugritone runs great for him. Besides the lower-specced hardware, he is also running a slightly older version of Ardour (8.12 for Peter and 8.40 for me). The biggest differences I see are he is running Linux Mint 22.2 (I am running Lubuntu 24.04 with Ubuntu Studio 24.04 “overlay” for audio configurations); and his Ugritone version is 3.0.21, while mine is 3.0.15. And we are running 2 different soundcards. I have to believe it’s one of those 3 variables.

I don’t know that I’m any good at this mixing stuff, but I think I’m slowly getting better at it. I mix to what sounds good to MY ears, as opposed to some industry standard(s). Is there such a thing…I dunno? Appreciate knowing that someone else thinks it sounds good too, so THANK YOU for that!

As far as the DG kits, volumes & velocities…check your MIDI “lollipops”…that’s what drives your volume moreso than the plugin. Also, check the DG “readme.txt” file and verify you’ve got your mics routed to the correct channel fanout tracks! My DG routes to a kick, snare top, snare bottom, Tom1, Tom2, Tom3, Tom4(?), hihats, ride, ambient room (L&R), and overhead (L&C&R). I haven’t experienced the lack of volume or clipping issues you describe. Maybe it’s different for different kits? I’m using Crocell, although I did adjust the snare samples to a lower tuning, using the guide (almost hidden) on the DG website. Tuned down 200 “cents” and voila…there was the snare tone I wanted!

I wasn’t impressed with sounds on the Audio Assault website…they sounded promising, but I wasn’t blown away. (to be fair, I wasn’t blown away by DG sample sounds, either!) But I LOVE their amp plugins and decided to try DrumLocker based on my AmpLocker experience…and I was willing to burn $5 to try it out! I’m not done shaping DL drums, but there is a LOT of built-in processing right within the plugin…compressors, EQ, dynamics & ambience, panning, etc…all within DL. And from the MIDI page, they have controls to increase or decrease the MIDI velocity, like you mentioned about DG. I haven’t tried to mix & match pieces of kits for a custom kit, but on Audio Assault Facebook page I read a guy comment he added the cowbell from 80s kit to another kit (Druminator perhaps?) and that it was a very cool feature that he liked. The manual hasn’t been written yet, so that will be very helpful once it exists. For $5, I am IN. It’s absolutely worth $5, and I’ll probably spend another $15-$20 to get every kit they have, so I can accommodate the tastes of every drummer who comes to my studio! LOL!

If you decide to give it a whirl, I’m no expert, but I’ll help if I can. BTW…DrumLocker is FREE, and includes a 70s kit. No “trial version”, or time limit on the free. If you like the 70s kit…you’re golden. But curiousity killed this cat for $5…I had to take it further! LOL!

Thanks @peter.zenk ! I’m a little jealous

I’m running Lubuntu 24.04, but with Ubuntu Studio “overlay” package to modify for audio production
Ardour 8.40 from repo
Ugritone 3.0.15 from Ugritone website

inxi -Fxz provides following info (curated to match your info)
jim@OptiStudio:~$ inxi -Fxz
System:
Kernel: 6.8.0-64-lowlatency arch: x86_64 bits: 64 compiler: gcc
v: 13.3.0
Desktop: LXQt v: 1.4.0 Distro: Lubuntu 24.04.3 LTS (Noble Numbat)
base: Ubuntu
Machine:
Type: Desktop System: Dell product: OptiPlex 3000 v: N/A
serial:
Mobo: Dell model: 0R7HRW v: A02 serial:
UEFI: Dell v: 1.31.0 date: 03/26/2025
CPU:
Info: 6-core model: 12th Gen Intel Core i5-12600T bits: 64
Speed (MHz): avg: 1551 high: 4200 min/max: 800/4600 cores:
Graphics:
Device-1: Intel Alder Lake-S GT1 [UHD Graphics 770] vendor: Dell
driver: i915 v: kernel arch: Gen-12.2 bus-ID: 00:02.0
Display: x11 server: X.Org v: 21.1.11 driver: X:
loaded: modesetting unloaded: fbdev,vesa dri: iris gpu: i915
resolution: 1920x1080~60Hz
Audio:
Device-1: Intel Alder Lake-S HD Audio vendor: Dell
driver: snd_hda_intel v: kernel bus-ID: 00:1f.3
Device-2: BEHRINGER GmbH UMC404HD 192k driver: snd-usb-audio
type: USB bus-ID: 1-4:14
Info:
Memory: total: 32 GiB note: est. available: 31.04 GiB
used: 12.37 GiB (39.9%)

By most (all?) metrics, my system SHOULD perform better than yours, but reality says otherwise. The biggest variables, IMO, are our operating systems (Mint vs Lubuntu), versions of Ugritone plugin, and our soundcard hardware.

My Ardour parameters are VERY similar to yours:
image

I notice your samples are much higher than mine, yielding a higher buffer, but that increases my latency too much for live tracking. Everything else seems to be inline. If I was in a troubleshooting mood, I’d probably start with an updated Ugritone version. If that didn’t help, I wouldn’t know where to turn next. But I’m not in a troubleshooting mood, when I’ve solved this issue in another way, with a different plugin. And I don’t want to devolve this thread into a Ugritone troubleshooting exercise.

I’m fine with acknowledging that Ugritone is a viable option for folks, with the caveat that “your mileage may vary” (YMMV). Peter’s system performs flawlessly with the hardware & specs he provided, while mine does not. If I ever figure out why not, and get it fixed, I’ll report back here what the solution was. Otherwise, let’s leave Ugritone troubleshooting for a different thread. But I do THANK YOU for providing a yardstick for a system that runs Ugritone without issue. TY!

Another option would be to try the demo version of Ardour from ardour.org. which can be installed (and removed) in parallel to the one from the distribution.
versions from distributions sometimes behave differently than the one from the developer’s web site.
I understand you have your solution, but it might be useful for other folks

1 Like

ABSOLUTELY! TY, brutha!

1 Like

Viruosity Drums seems to be both open source and can be played by a e-drum (see the manual where it is described how to reconfigure it to listen to CC4 for the hihat).

It needs a sfz player, and they mention Sfortzando in several places. Possibly it also works with sfizz. I did not try this.

4 Likes

There is no such version as 8.40, 8.12 is the latest released version. Not particularly important, I just didn’t want someone else reading this to be confused.

What CPU governor? It looks like you may be running on-demand governor. Try performance governor but lock the CPU clock to something lower than maximum (to avoid having the fans running full blast all the time). Something in the range of 2.4GHz to 3GHz should be plenty, and if the processor max is 4.6GHz then you should have some thermal headroom so the fans aren’t screaming the entire time.

You missed a lot of relevant system settings in your list. Things like the CPU governor that I pointed out make a much bigger difference than the relatively minor differences between Mint and Lubuntu.

1 Like

@ccaudle …appreciate you chiming in, because that’s helpful information, but here is my screenshot for “about Ardour”. That looks like a version from ubuntu repos to me:

My CPU governor is actually set to performance. But you lost me at “lock the CPU clock”. I don’t know what that is, or how to do it. I’ll defer to your expertise, but I was trying to identify the "most likely’ variables. At the top of my list would be the version of Ugritone plugin. I think I might include the capture soundcard in that list too, but my Behringer UMC404HD is relatively new, while Peter says his Zoom device is older. I don’t know if that could be a culprit, but I’m otherwise very happy with the Behringer and not inclined to “upgrade” it for a single plugin.

But if I’m missing something that would help performance, I’m willing to be educated. :sunglasses:

I’ll second the Virtuosity Drums recommendation. I can’t attest to how it performs with e-drums, but it’s got options with a vintage mic, separate overhead and room mics, makes for a very realistic sounding kit.

Ardour 8.4**.**0 is a released version. That is not 8.40 (minor version 4, sub-minor or release version of 0 rather than minor version 40) which was the original description.

It takes a finite amount of time for the CPU to change clock rates, and execution of software essentially stops until the clock rate is stable again, so for reliable realtime performance you want the clock rate to be constant. Consistency is usually more important than raw instruction throughput, so forcing the clock rate to be constant, but lower than the maximum possible, can often provide consistent realtime behavior, performance which is high enough to do what you need, but does not waste power unnecessarily (which reduces the cooling needed and so reduces the fan noise of the computer).

I believe I may have been mistaken in thinking that the performance governor always runs at the maximum clock, after some reading I now think it just biases the clock settings to the higher range, but does not set the clock to a single frequency.

If you are interested in experimenting to see if you can eliminate xruns at your chosen buffern size I would suggest using the command sudo cpupower frequency-set 2.4G and checking the behavior with a Ugritone session again to see if that eliminates the xruns.

You can also verify the current preemption model in use by a dynamic preempt kernel with this command:
sudo cat /sys/kernel/debug/sched/preempt
That will display the available preemption models, with the currently used mode bracketed by parenthesis. If the current mode is “voluntary” then adding preempt=full to the kernel command line when booting would also be a useful experiment. I have seen conflicting information about whether the preemption mode must be changed at boot time or can be changed during runtime, so modifying the kernel command line seems like the most reliable way to make sure the kernel is running in full preemption mode. If you have a new enough kernel (6.13 or later) there is a mode called “lazy” preemption which should be equivalent to full preemption for realtime tasks, so if the current mode is “full” or “lazy” it should be OK, but if the mode is “voluntary” you may get better performance of realtime tasks by changing.

5 Likes

Some feedback on Drumlocker:

Firstly, thanks for the invaluable write up. It certainly was useful for me, and introduced me to Drumlocker, which I wasn’t aware of before.

I installed it and splashed out the (bargain) $5 for the Modern Drum pack.

First of all, they sound pretty good to my ears, and are responsive and relatively dynamic. I did have to remap a few of them for my TD-1KV kit, but that wasn’t too hard.

Unfortunately, the kits are a little limited compared to DrumGizmo and CrocelKit (my preferred kit). Particularly, the cymbals only have a single note, whilst my cymbals will give separate notes for edge and bow (including on the hihat). I have managed to remap these to other sounds (such as splash) but it’s not the same really.

Also there’s no rimshot on the snare which is, IMO, quite a serious omission. Maybe they’ll add some of these to future kits.

Meanwhile, I don’t regret the $5 and I’m sure I’ll find a use for it, so thanks again.

I’ve not tried Ugritone drums, and I’m not sure I’m prepared to spend $26 (the least expensive) on them without knowing if they are likely to have similar mapping issues. I’ll have to research this a bit more.

Cheers,

Keith

You can remap each kit piece in Ugritone and there are plenty of extra ‘cymbals’ which are actually used for things like rim shots, cow bells, tambourines, etc on many kits and can be changed and swapped out as desired. If you’re in no rush to try new drum VSTs then I’d suggest waiting for a sale (although I think Ugritone has a good refund policy, if memory serves correctly).

Note, the Klangmacht drums are Win / Mac only I believe, on account of them needing Kontakt…?

In my opinion though, I think Drumgizmo is a fantastic choice if you’re OK with the kit sounds and whatnot. The devs have done a phenomenal job with it.

Thanks for all the info :slightly_smiling_face: :+1: I think you’ve sold me on it so I’ll try fork out for some (or at those prices, all) of the kits soon and see how it compares.

1 Like

This is EXCELLENT information @ccaudle! Where were you when I was trying to convert my daily-driver distro to a recording rig? LOL!

What you are describing seems to fit my symptoms. When I first load some of my plugins is when an xrun or 2 appears. Then it “settles in” and everything is fine. With Ugritone, the xruns continue…like a SLOW counter…until it freezes my system or crashes out. But loading Ugritone, or switching instruments (loading the new instrument samples?) is when the bulk of xruns happens.

I was focused on the cpu governor, as my default is “powersave”, if I remember correctly. I cannot choose “ondemand” with my cpu (an Intel i5 listed above in my curated inxi -Fxz output)…can’t remember why. So “performance” is where I’m at now. It’s noticeably better, but not ideal.

I found a program/utility called Millisecond that checks your system parameters and suggests manual tweaks. I go through the checklist at every boot/reboot. It’s been very helpful for performance, but not perfect.

Millisecond incorporates a lot of the suggestions from linuxaudio.com

System configuration [Linux-Sound]

Your suggestions for manual frequency-set and kernel preemption are interesting, because I haven’t heard of or seen them discussed before. I will absolutely give them a try, but I need a spare day to focus on things, as life is too hectic and chaotic at the moment. I’ll let you know how helpful your suggestions are/were by tagging you in this thread. TKS Chris!

Try Drumlabooh (Drumlabooh | Драмлабух: LV2/VSTi drum machine). It’s LV2/VST3i plugin that supports Hydrogen, SFZ and own format drumkits.

3 Likes

I’m late to the discussion, but a while ago I made this:

Please note that my remarks about SM Drums at the end may be out-of-date, I haven’t looked into it for a while.

3 Likes

I had a thought yesterday - if your edrums use a Roland module, or one of the Yamaha or Alesis ones listed here, or a Millennium 850, then you could buy one of the somewhat-affordable Sound Editions from drum-tec.com and load the better samples into your module and drum away.

If the sounds cut the mustard then voila just record the audio out. If not, then you’ve potentially got better dounds for monitoring while you just record the raw MIDI into Ardour.

I dunno. Food for thought anyway.

My Alesis is the DM10-MKii Pro module. The only Alesis kits that allow loading 3rd party samples appear to be Crimson and Strike kits. And I think the newest kits, the Strata Club and Strata Prime, allow 3rd party samples. Appreciate the link, because I didn’t know that website existed and I’m sure others will be glad to know about it.

I don’t care about onboard sounds, because I don’t play live, I only record. And I record with MIDI because I absolutely want to “fan out” the individual tracks for each trigger/sound. So 3rd party sounds are meaningless to me, but could be big deal to anyone who records stereo analog/audio tracks, or plays live.

cool share willy!

2 Likes

@ccaudle

finally getting around to tinkering with my system, per your suggestions.

entering the 'sudo cpupower frequency-set 2.4G command in CLI yields the following output:

jim@OptiStudio:~$ sudo cpupower frequency-set 2.4G
At least one parameter out of -f/--freq, -d/--min, -u/--max, and
-g/--governor must be passed

not sure what else it’s looking for here? I’ve already set my cpu governor to performance mode. Is any of this helpful info?

jim@OptiStudio:~$ cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 4294.55 ms.
  hardware limits: 800 MHz - 4.60 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 4.60 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 3.27 GHz.
analyzing CPU 1:
  driver: intel_pstate
  maximum transition latency: 4294.55 ms.
Segmentation fault (core dumped)

I also checked my preempt settings, and seems like I might benefit from your suggestion.

jim@OptiStudio:~$ sudo cat /sys/kernel/debug/sched/preempt
[sudo] password for jim: 
none voluntary (full)

Lastly, I’m noting that something changed in my system, as I get xruns now just opening an Ardour session. It doesn’t even have to be playing…just open. The xruns just keep totaling…it doesn’t crash, but I can hear the momentary sound glitch. No hardware changes, no software changes. I keep my system up-to-date, so I’m guessing something unexpected has changed under the hood. I’m eyeballing new kernel, perhaps. I know I’ve had 2 kernel updates. Currently on 6.8.0-90-lowlatency kernel and Lubuntu 24.04.3 which was modified by the Ubuntu Studio configuration package.

I’ve seen some references to the lowlatency kernel no longer being required, as the generic kernel is now tuned for low latency throughput. I’ll try the generic kernel, for sake of comparison, but if that doesn’t solve the issue, I can’t imagine what else might have changed. Any thoughts to help troubleshoot?

As the message indicates you have to specify what parameter you are attempting to set.
Since in your case you wanted to set the clock frequency directly it would be

sudo cpupower frequency-set --freq 2.4G

although I am not sure that will set the frequency to a fixed value, you may need to have the “userspace” governor selected for that. Your system seems to only have performance and powersave available as governors to select, but my system has these available to choose:
conservative ondemand userspace powersave performance schedutil

That is good, that indicates preempt-full, which is the best you can get short of the full preempt-RT configuration.

Recent kernels allow a configuration known as dynamic preempt, where the preemption level can be set at boot time rather than at compile time. It allows a single kernel to be set to any of the three standard preempt levels (actually four now, there is a new level named “lazy” which is like full but with some optimizations to not disadvantage standard processes as much if there are no RT processes running).

Still using the ALSA backend?
There is a utility which can help check your system configuration:

Setting the interrupt priorities with the rtirq script used to be common, but I don’t see that on my distribution now, so I’m not sure if it fits well with the latest systemctl tools or not.

1 Like