Release Notes for DrumGizmo-0.9.19

Released on November 22nd 2020

Roadmap: version_0919

Contributors: chaot4, TheMarlboroMan, trebmuh, Dimitri Karamazov and deva.

It has been more than a year since the last DrumGizmo release so we thought it was high time that we did another one. And what better excuse to do a release than to celebrate the upcoming LAC2020 (online) conference? (Where, might I add, chaot4 will be presenting a paper on the DrumGizmo sample selection engine)

This release is mainly a feature release with some really exciting new features in it but also the removal of quite a number of annoying bugs.

Highlights:

  • Default midimaps now read from drumkit file.
  • Add OSX retina display UI scaling.
  • Sample selection default values improved.
  • New powermap feature.
  • Add gettext support to plugin UI with French translation.
  • Per instrument voice limit feature.

OSX Retina Display Scaling

We now detect OSX retina (HiDPI) displays and render the UI with scaling. For now it is simply a pixel double scale-up, but at least it works :-)

Note that the image was taken with a slightly older version of the UI

Sample Selection Defaults Improvements

After some testing in the wild, with the feed-back from users, we decided to alter the default values for the sample selection algorithm to make the default behaviour a bit less jumpy and the overall ride more smooth to everybody.

If you have an existing session and would like to use the new values, simply double-click all the control knobs in the UI, to reset them to the new defaults.

Powermap Feature

New powermap feature, to make it easier to get a good natural feeling when playing a midi-drumkit.

The concept of velocity on a midi drumkit is really the midi drums piezo sensors analogue output mapped to a velocity number. This number does not necessarily have any relation to the real world and as such can be seen as arbitrary.

How a particular DrumGizmo drumkits sample powers are mapped to velocities are similarly arbitrary.

This means that when you hit a drum, you would probably expect the sample played to be similar to the sound a physical drum would make - which may or may not be case with these arbitrary mappings.

Enter: The powermap feature.

The powermap is basically a tool that can be used to correct these arbitrary mappings and transform how the feel of the drum matches the sound that DrumGizmo produces when you hit it. It may take a while to get it set up correctly, but the results could be such that the midi-drum feels a lot more natural to play.

Play around with it and let us know what you have achieved with it.

Translation Support

Translation support has been added to the UI, using the gettext suite of tools. The first translation has already been made by Olivier Humbert who has translated the entire UI to French as can seen in the screen-shot below. The UI automatically reads out the language settings from the operating system when it starts and uses this language for the UI whenever available.

Per-Instrument Voice Limitation Feature

The new per-instrument voice-limit feature makes it possible to play very fast even with low latency without the engine dropping out.

An experiment has been made where the jack engine was set to 256 samples buffer-size (ie. small) and then playing a blast-beat at 666bpm (16th notes on ride cymbal, snare and kick-drum simultaneously).

With the new feature enabled and the limit set to 1, the DSP usage stayed at around 25%. When disabling the feature, the DSP usage would slowly climb until it reached ~90% at which point it would start making heavy xruns and ultimately drop the audio entirely.

Together with the new resample quality control, this makes should make it possible to use DrumGizmo in a live situation with low-latency and resampling with a rock-solid output.

Default Midimaps

Default midimaps are now read from drumkit files so no explicit loading of midimaps are needed for kits that provide these.

To use this feature (as a drumkit designer) add a defaultmidimap tag with and src attribute to the meta segment. The file should be in the same folder, or relative to it, as the drumkit file.

Example:

<?xml version="1.0" encoding="UTF-8"?>
<drumkit samplerate="48000">
        <metadata>
                <defaultmidimap src="Midimap_full.xml"/>
.
.
.

This will load the Midimap_full.xml midimap when the drumkit is loaded into a new plugin instance.

Other Minor Changes and Bugfixes

  • UI Rendering Speed Improvement; the UI can now render some views more than 10 times faster than the old code.
  • The dgvalidator tool has been improved to include a lot more validation checks.
  • Resampling quality (and thereby cpu usage) can now be controlled through the UI.
  • Choke handling bug has been fixed.
  • The flickering of lv2 inline display while loading has been fixed.
  • A much reported LV2UI_Descriptor type compilation error when using “new” LV2 sources has been fixed.
  • Misaligned clickmap overlays with drumkit images in the drumkit tab, when image is bigger than window has been fixed.
  • Notes with velocity 0 is now ignored.
  • Default drumkitpath is now correctly stored on windows.
  • Jack engine (commandline) when system is under load triggered assert (crash) which has now been removed.
  • The configure-time option to use glob instead of wordexp has been added to support compilation on OpenBSD.
changelog/drumgizmo-0.9.19.txt · Last modified: 2020/11/28 14:05 by deva
Trace: drumgizmo-0.9.19
GNU Free Documentation License 1.3
Valid CSS Driven by DokuWiki Recent changes RSS feed Valid XHTML 1.0