Drumgizmo preset <-> snapshot

I would recommend you to change to testing branch. The easiest way is downloading the latest testing SD-image:

https://os.zynthian.org/test/2023-11-02-zynthianos-testing-2311.zip

and burn it in another SD-card. It’s highly recommended to keep separated stable & testing SD-cards.

The best!

1 Like

Also, could you explain in detail your use case? It seems you are using the Zynthian as a Drums module and we’re really interested in improving zynthian in this area. Your feedback is highly valuable.

The best,

1 Like

OK! First, please, note that you are the first user that give us feedback about using DrumGizmo with zynthian.

  • This is bad for you, because there are some work to do to get a reliable integration.
  • This is good for you, because as a percussionist i’m really interested in improving zynthian as a drumkit module, and you can influence how this improvement is done.

Current drumgizmo integration into zynthian is “as a LV2 plugin”, but drumgizmo is a serious piece of software and it has a nice unix-style CLI that offers a number of advanced options, some of them related with to way samples are loaded or streamed from disk, what is probably causing the “lagging” issues:

https://www.drumgizmo.org/wiki/doku.php?id=cli-howto

I need to do some deeper research about it … :wink:

Regards,

2 Likes

OK! I’ve spent part of my day in testing drumgizmo and other options, reading forums, etc.

First, i’ve tried drumgizmo CLI version with the drumkit you told (Muldjord) and it sounds pretty well, without lagging. Pretty playable except that CPU reach the limit when playing hard, and this shouldn’t happen. Now i’ve downloaded the latest version and i’m compiling it to see if i can improve performance.
I’ve noted that the “standard” version has separated audio output for every “mic” you could put in your set. Crazy, but useful if you want to control 100% the mixed sound. Anyway, i would try limiting this to a stereo output.

Second, why drumgizmo and not SFZ? I can’t see the advantage, apart from the multi-channel output. Time & velocity randomization options can be added as external MIDI-FXs and for the rest of features, i can’t see any real advantage on using drumgizmo instead of SFZ. I mean, SFZ is capable of doing everything drumgizmo does, including roundrobin randomization, etc.

Indeed, many drumgizmo native drumkits, if not all, have been already converted to SFZ. For instance:

Finally, i’ve been investigating the possibility of loading Hydrogen drumkits, that is a popular format for drumkits in the Open Source world:

Hydrogen - Browse /Sound Libraries/Main sound libraries at SourceForge.net

We have 2 options here:

  • DrMr LV2, that is installed in zynthian, but GUI doesn’t work. It doesn’t seem to be maintained anymore and latest version is 12 years old.

  • LiquidSFZ (GitHub - swesterfeld/liquidsfz: SFZ Sampler) that seems to be actively maintained, but it’s not currently integrated in zynthian. It should be tested.

Kind Regards,

3 Likes

Ok Great. I’m excited to contribute.

Latency is much better with the Testing OS, its acceptable. Would be good to be able to adjust the latency somehow. Not sure if it is the same in Raspi as on PC. For example, I usually have the ASIO buffer on my audio interface set to 128 or below to achieve lowest latency depending on what the cpu can handle. I haven’t fully tested a full kit yet.

You answered my next question regarding the Channels of different mic samples used in the Muld Kit. Was going to ask how to access these. Not sure which sample I’m hearing but its one of the overhead mic samples. So, yeah need to figure how to switch/access those. That being said this is very overkill and not completely necessary I will explain below.

Was able to get the high hat to function somewhat. I get the high hat pedal foot sound and can control open and closed, get the open sound when pedal is not depressed but when closed I do not get the closed sound. It is continuous controller info. Not sure if that is the same as pitchbend info in midi which is how it might be received in the Z. But this is not totally necessary and could be used as a simple switch - pedal open = open sound , pedal depressed = stops open sound and plays closed sound.

I also was investigating Hydrogen and such.

What happened to Muti-Timbral midi mode in the testing version? I don’t see it.

Here is the scoop of what I would like to do with the Z -

Drum sound source I can play and record with my eKit or any trigger device. Which is really no different than a keyboard other than the High Hat control and the option to control each midi note volume.

Simple version - for playing and not critical for mixing.

Not necessary to have multiple channels of different mics like drumgizmo. A lot of drum software today the drums are already processed in the stereo field. So we only need one midi note per drum that plays 20 ( for example ) samples stacked and activated by velocity.

Not to insult anyone’s intelligence but just trying to be clear.

Midi note C1/36 plays a bass drum sample, 20 wave files played soft to loud for example. A sampler that plays stacked voices per note in essence.

Takes a lot less cpu.

Ultimate goal would be to record this midi / instrument info on the Z and build music adding synths etc.

There have been changes in this area. Good ones.
This thread explains how this is now organised.

Midi Capture . . .

The Zen of python Zen of Python covers this on the second line.

Really nice write up. Very helpful.

  • Beautiful is better than ugly.
  • Explicit is better than implicit.
  • Simple is better than complex.
  • Complex is better than complicated.
  • Flat is better than nested.
  • Sparse is better than dense.
  • Readability counts.
  • Special cases aren’t special enough to break the rules.
  • Although practicality beats purity.
  • Errors should never pass silently.
  • Unless explicitly silenced.
  • In the face of ambiguity, refuse the temptation to guess.
  • There should be one-- and preferably only one --obvious way to do it.[a]
  • Although that way may not be obvious at first unless you’re Dutch.
  • Now is better than never.
  • Although never is often better than right now.[b]
  • If the implementation is hard to explain, it’s a bad idea.
  • If the implementation is easy to explain, it may be a good idea.
  • Namespaces are one honking great idea – let’s do more of those!

Yeah, that LiquidSFZ looks promising. How can I test that?

Latency is set in a very similar way to you ASIO driver. In webconf there is an audio settings option that has jack parameters. You can define the buffer size here. It is cryptic, being a parameter of a command line. There is a limit to how low this can go. It should be a power of two and does not take effect until jack restarts. I strongly recommend rebooting the whole device after changing this setting. (I think webconf offers reboot.)

If your pedal sends CC then it can be mapped to a controller but this may need to be a specific fibrin offered by the engine, i.e. a generic sample player may not distinguish between hihat control and other drums. You may find that a percussion specific engine like drumgizmo offers such a feature where linuxsampler may not.

I think SFZ format allow this kind of things and more

Regards

@riban Thank you excellent. It was set for 256. I brought it down to 128 and see what happens. I gotta have something or someone to blame for my poor timing!

@wyleu Thank you! Perfect.

There should be a way to configure pedal control to either switch or pitchbend / controller.

Using the testing branch. I am unable to get Midi out from the Z. I load a new synth chain - ZynAddSubFx-bass for example. Use an external midi sound device/keyboard or my drum module and record midi onto the synth track. Upon playback midi out on the Z is not outputting midi back to my sound device. I can see what midi note are playing in the midi log and know that the channels are setup properly. Changed midi options in webconfg to route midi to output ports. Is there a setting I’m not ticking? Thnx

Try to enable midi bridge in the admin menu

Regards

Yes, bridge midi-out is enabled and no output.

Midi Thru does not work either.

Midi out works on stable version not testing version. The Midi Thru port does not work on either OS. I get Midi pass thru from the Midi Out port on original stable version not testing version.

Is your testing SD updated to the last ? Did you update recently?

Regards

Yes, I re-flashed a different SD card and updated via ethernet cable with update procedure on the Z itself to double check. About 6 hours ago. Same results.

Hi @Octiv8,

I would need to know all details about your setup. ALL.

My setup works perfectly with testing, and MIDI go out the zynthian by DIN, USB and network.

We are missing some detail in your setup.

Regards

1 Like

Ok, after reading that recent Midi -DIN post I did not realize there are more settings in Webconf - Midi Options and that those three dots are a button. Maybe label that “More” or something. After activating the Midi out DIN it works. Hours of troubleshooting - glad I’m bald or the cleanup would have been horrible.

3 Likes

Well, three dots normally means “more options” and it’s documented in the wiki. Anyway, you are right that this is not very accesible. We will move these options to the UI very soon, so you don’t need to access webconf for changing midi-out settings.

The best

1 Like

Hello there… I do use DrumGizmo in finger druming and it work GREAT ! But it’s okay to use an other engine if it’s even better.
Not latency with raspberry 4, but 90 seconds of loading-without-touching .

Hi-Hat is close or open in two different midi note, there is no variation at all implemented because … Drumgizmo is not made to be a live setup, there is no recorded sound either of mid-range Hi-Hat

Ps: and so, it’s not the only topic about drumgizmo and zynthian :wink: