You are here - Hydrogen to drumkv1 drumkit conversion tool

I just wrote a conversion script that allows drumkv1 to use Hydrogen drumkits. I thought some of you might find it useful :)

You can find it here:

The two samplers have a lot of different features and not everything translates well, but most parameters will work just fine.
I figured out all the conversion scales (pitch, panning, and so on), but I might have missed something so please let me know if you see any ways this script could be improved.



this is magic: I was about to do same and it fits exactly to what I am doing currently!

Since today (!) my build for Raspi contains all the hydrogen presets downloadable from hydrogen's GUI by default after build. So currently I am adding your script to my build to create drumkv1 presets from those. Doing so two questions come up:

* does drumkv1 support full-paths for samples - Rui?
* if yes: Could you add an optional third parameter that adds a path before sample file name?

Two times yes would save me from creating soft-links - in my environment hydrogen drumkits are at different location than drumkv1 presets

rncbc's picture

does drumkv1 support full-paths for samples ?

yes; sample paths may be specified in either absolute full-paths or relative to the location where the .drumkv1 xml file is.


ps. btw. @Turi: great job, thanks for sharing here.

* just tested: drumkv1 works perfectly fine with full paths - so what do you think of adding an optional parameter e.g. samplepath that prefixes sample file names?
* can't find it currently but I think you wrote somewhere that you use most quiet sample in case hydrogen offers more than one sample file per sound element. Is there a certain reason for this way round (e.g loud samples distorted or some dynamic feature)? From sample quality aspect I would choose loud sample files of better signal/noise ratio due finer resolution.

About the argument to specify the sample path: it's a good idea, I'll implement it as soon as we figure out what else should be available as an optional argument (any suggestions?)

Because drumkv1 does not have anything like multilayered samples, I had to take a decision. It was either exporting each layer as its own instrument, or picking just one layer. The way Python iterates through nodes by default makes it pick the first layer it finds - I agree that it would be a better idea to choose the last one instead.

Script updated. The loudest sample is now the one that gets exported.

The latest version of the script allows you to specify a path prefix.

Thanks - will give the new version a try tomorrow

Just getting busy with this awesome script and drumkv1. I just have to ask though, any plans for drumkv1 to support multilayered samples?

Thanks in advance

rncbc's picture

... any plans for drumkv1 to support multilayered samples?

nope. not in the short term though, sorry.

the vee-one suite aren't getting anymore complex than that already are.

maybe that's for the vee-two? who knows? ;)

FYI, TuriSc just merged my PR which turns the script into more of a "mass conversion" tool for multiple kits. Additional information about kits can be found here:


I downloaded the Then extracted the py file to /home/user/bin (what is part of my PATH) and chmod'ed the file to make it executable.
As stated in the help file I then executed the following command: /usr/share/hydrogen/data/drumkits/Techno-1/ /home/user/drumkv1/test/

but nothing happens. No output, not even an error message. And no new file(s) in the destination folder. I also tried it with several other drumkits that came with hydrogen.
Is there something that I am missing? I have python installed.

The file formats in the drumkit dirs of hydrogen differ from flac over wav to aiff. I tried it all, but to no avail.
Does the conversion tool expect any special file format or some sort of compressed file?

Can anyone help?

Ok, I got it. The converter expects files ending with .h2drumkit
Found them on

Add new comment