Please familiarise yourself with the forum, including policy on feature requests, rules & guidelines

Deluge Kit Generator

11
HorstmaistaHorstmaista Los AngelesBeta Tester Posts: 56

(this was posted on the Deluge Facebook Forum but thought it would be good to add this here)
Hey people!
I wrote a little script to build Deluge drumkits for me. It scans the folder from which it was launched at, will create a /delugekits subfolder and fill it with the kits (one kit per wav-subfolder it finds). I wrote this for myself (pretty low tech Python) but thought I'd share it. Don't expect a fleshed out UI.
It'll try to put the bassdrum onto 1, then snare, open hihat, closed hihat, rest of sounds, then loops.
PLEASE READ THE "README-PLEASE.txt" INSIDE OF THE ATTACHED ZIP FILE!
Lee Pe had posted the '66 Drum Kits' package the other day. Unfortunately all files are just number. The script would work like that. But you can also run rename66.exe first. That'll go through the folders and rename the .wav files based on the folders names.txt. After that you'll have good short names on each drumkits sound and bd/sd/chh/ohh nicely sorted.
So...easiest way:

  • copy the content of the attached zip-file into the "\66 Legendary Drum kits" folder.
  • run rename66.exe.
  • run build.exe
  • copy all subfolders onto the SD card into /SAMPLES/6LDk (=auto proposed short folder name - see help file)
  • copy content of /delugekits onto the SD card into /KITS
    Enjoy your 66 new drumkits starting at 100.
    Oh I should say: Even though this doesn't do anything crazy, you'll run it at your own risk (renaming the 66 drumkit's wav-files would be the most invasive, apart from that it just generates the xmls)
    Here's a screenshot:
«1

Comments

  • 0
    HorstmaistaHorstmaista Los AngelesBeta Tester Posts: 56
    edited June 2017

    Here are the files.
    Eeeeeh somehow this doesn't work. Are we not allowed to post .zip files? Not sure whats wrong.
    Hmmm - until then: Facebook. Sorry.

    Post edited by Horstmaista on
  • 0
    RandomAztecRandomAztec IrelandPosts: 108

    can anybody repost the drum samples here?

  • 2
    IcoustikIcoustik NorwayModerator, Beta Tester, Mentor Posts: 1,017
  • 0
    RandomAztecRandomAztec IrelandPosts: 108
    Thanks
  • 0
    matsmats GermanyBeta Tester Posts: 4

    Thx for providing the source code, too. To make the scripts work with Python versions < 3.5 (eg. on Linux or Mac) you need to:

    pip install glob2

    and replace the line

    import glob

    with

    import glob2 as glob

    in the Python scripts (older versions of glob do not support the recursive=True argument).

  • 0
    dinterplaydinterplay Posts: 12
    edited May 2018

    Rather than have every use re-run the script everytime, has anyone done this where they could just post the final product for the 66-kit?

    Post edited by dinterplay on
  • 0
    sIRwa2sIRwa2 Posts: 5

    I did the rename and the generating bit.. did notice some kits didn't get processed right.. might need a manual correct before uploading.. bit its very easy to do.. so just go for it :)

  • 0
    dinterplaydinterplay Posts: 12

    @sIRwa2 said:
    I did the rename and the generating bit.. did notice some kits didn't get processed right.. might need a manual correct before uploading.. bit its very easy to do.. so just go for it :)

    I'm on a mac only and don't know python to execute it.

  • 0
    fryyyyfryyyy germanyPosts: 161

    Heres a kit list

    1. Ace Tone Rhythm Ace
    2. AKAI XE8
    3. AKAI XR10
    4. BOSS DR-110
    5. BOSS DR-220
    6. BOSS Dr. Rhythm 55
    7. Casio MT-18
    8. Casio MT-100
    9. Casio MT-500
    10. Casio MT-800
    11. Casio PT-1
    12. Casio PT-82
    13. Casio Rapman
    14. Casio RZ 1
    15. Casio SK-1
    16. E-mu Drumulator
    17. EKO CompuRhythm
    18. EMU SP12
    19. Fricke MSB512
    20. Hammond Drum-Machine
    21. Hohner Rhythm 80
    22. Korg DDD-1
    23. Korg DDM-110
    24. Korg DDM-220
    25. Korg KPR-77
    26. Korg KR-55
    27. Korg Minipops
    28. Kurzweil K2000
    29. Linn 9000
    30. Linn Drum
    31. Maestro Rhythm King
    32. Mattel Synsonic Drum Pad
    33. MPC Electronics the KIT
    34. MTI Auto Orchestra
    35. MXR 185
    36. Oberheim DMX
    37. Pearl Syncussion
    38. Real SCRP
    39. Roland CompuRhythm CR-78
    40. Roland CR-1000
    41. Roland CR-8000
    42. Roland R8
    43. Roland Super Quartet MKS-7
    44. Roland System 100
    45. Roland TR-66
    46. Roland TR-505
    47. Roland TR-606 Drumatix
    48. Roland TR-626
    49. Roland TR-707
    50. Roland TR-727
    51. Roland TR-808
    52. Roland TR-909
    53. Sakata DPM-48
    54. Sequential Circuits Drumtraks
    55. Sequential Circuits Studio 440
    56. Sequential Circuits Tom
    57. Simmons SDS-5
    58. Sonor Mini Mammut
    59. SoundMaster SR-88
    60. Univox Micro-Rhythmer 12
    61. Visco SpaceDrum
    62. Wurlizer Swing Rhythm
    63. Yamaha MR10
    64. Yamaha RX-21
    65. Yamaha RX11
    66. Yamaha RY-30
  • 0
    mbangmbang Gothenburg, SwedenPosts: 61

    Wonderful tool, thanks a million! Was just wondering, when doing the rename - this one did not have a "names.txt" file: 17. EKO CompuRhythm
    I´ve googled but without success, anyone grabbed the file names from somewhere and care to share?

  • 1
    atimchakatimchak Chicago, ILPosts: 28

    So I would like to add for a total coding novice like me, if it would be possible to post the finished product I would be forever grateful as there are some amazing drum machine finds there!

  • 1
    robleighton22robleighton22 MelbournePosts: 27

    I'd even pay to have the fu finished deluge ready product.

  • 0
    robleighton22robleighton22 MelbournePosts: 27

    I've since worked this out and it is dead easy, no real python knowledge needed. Excellent work, the samples sound great - recommend this to all deluge users. Only complaint would be I would prefer to have all kicks on the first note, all snares on the 2nd, etc but guess I could edit the kit generator. Deluge is my go to for drum programming now.

  • 0

    I'm still not getting where and how to set what you want your first kit number to be. Help please, thanks!

  • 0
    HorstmaistaHorstmaista Los AngelesBeta Tester Posts: 56

    When you start the tool without anything it'll tell you all the options (see below). So build.exe -s 120 will start your numbers from 120.

    -s
    NO START GIVEN, USING: 100
    -f
    NO FOLDER GIVEN, USING: C:\Users\HORSTM~1\AppData\Local\Temp\Rar$EXa0.582
    WRITING DELUGE KITS TO: C:\Users\HORSTM~1\AppData\Local\Temp\Rar$EXa0.582\delugekits
    -t
    NO SAMPLE PATH GIVEN, USING AUTOGENERATED: SAMPLES/Rar$
    delugekits >> YES

  • 0
    ToddNickolasToddNickolas Posts: 6
    edited August 2018

    Thanks. I get that, just don't get how/where to change that number. I run the CMD script like in the directions, still can't change the value for -s. When I try to change that number it does nothing. If I start build.exe in its own folder, that screen comes up but then says "press any key to continue" so the second I press anything it closes.

    Post edited by ToddNickolas on
  • 0
    HorstmaistaHorstmaista Los AngelesBeta Tester Posts: 56

    Hmm works for me - python script and .exe file. I drop the exe file into the parent folder of my sample folders and type
    build.exe -s 200
    Kits start from 200 upwards.

  • 0

    So just to make sure I'm understanding this correctly, each time I want to make more kits using a higher sequence of numbers I have to make a new build.exe using Python first?

  • 0
    HorstmaistaHorstmaista Los AngelesBeta Tester Posts: 56

    No.
    The python version and the exe file are doing exactly the same thing. The exe file is just a wrapped version of the the python script to make it easier for users who don't have python installed.
    If you prefer to run the python version just do:
    python build.py -s 200
    and ignore the exe file.

  • 2
    synthdadsynthdad IrelandBeta Tester Posts: 9

    Just want to say thanks for the python script! I just spent the afternoon creating kits from my sample packs. Two little things I noticed:

    1. The samples have to be in a sub-folder of the main folder for the -f parameter. You can't have a folder called 'samples' with files and then give -f samples as a parameter
    2. In the mid.txt template loopMode is set to 1 which I didn't want as I prefer one-shot samples, so I changed it.

    Otherwise, works a charm!

  • 0
    b22b22 HessenPosts: 2

    Tried it with Mega Drum Machines Collection v.2
    it seems that there is a problem with wav-files with a bit-rate of 1536 kBit/s?
    And another problem seems to be when there are space " " in the names. I converted those things by hand, resp. with to programs ( MediaHuman Audio Converter and Advanced Renamer) but perhaps it is easy to change it in the program??? Thx a lot for this nice thing!!!

  • 0
    b22b22 HessenPosts: 2

    Signs like the german ä, ö, ü had I to change in ae, oe, ue. And it seems, that 349 kBit/s are also a problem (the Tama_TS-305 set in the Mega Drum Machines Collection v.2).

  • 0
    LukreeLukree Posts: 11

    A great tool! On OSX, first had problem with glob, then it was a pain to install PIP but after I got it sorted out this worked great.

    One question, had shitloads of Maschine kits converted, but the script somehow tries to organize samples by type (Bd, snare, hihat etc) but somehow with my kits it seems to fail every now and then. I have my samples starting with a number from 001 to 016 - is it somehow possible to prevent the reordering and make the script only pick the files in order? 001 to first slot and so on?

  • 0
    KakerowKakerow GermanyBeta Tester Posts: 10

    Great Tool, thanx!

    On a Win System the uses WAVEs have to be *.wav (lower case) ...
    ... Love it!

  • 0
    EddyEddy Cologne, GermanyBeta Tester Posts: 292

    What exactly is the "Deluge Kit Generator"?
    the Name is most promising but I can´t imagine how it works and what´s the purpose....maybe someone can explain or make a video how to use it

  • 0
    punchedoutpunchedout United StatesPosts: 29

    The tool works great, but I was wondering why sometimes kicks end up on one row and other kits a different row

    Like robleighton22 mentioned it would be nice to have all kicks on the same row so we could use external midi with the kits, but right now its impossible to map a premade template because the kick / snare / chh / ohh end up on different rows per kit.

    If someone could give me some pointers as to why this is I would appreciate it so I may try to modify the script.
    Otherwise this is very useful and I would like to help develop it further if possible.

  • 0
    HorstmaistaHorstmaista Los AngelesBeta Tester Posts: 56

    It looks at the naming of the samples and sorts it based on that. If the naming isn't matching it has no way to know how to sort them (doesn't do any frequency analysis). Below are the different namings it would recognize.
    If I remember right it sorts samples by name if there are multiple of the same type (e.g. kicks) in one folder.
    Hope this makes sense. Feel free to modify the script.

    pbd = ["bd","BD","KICK","kick","Kick","Bassdrum"]
    psd = ["sd","snare","SNARE","Snare"]
    pch = ["hh","ch","hihat","hhc","hhcl","cl_hat","Chh","Hhclose","hihatclosed","hi_hat","closed_hi_hat","Hatclosed","hi_hat","Hat_Closed"]
    poh = ["oh","hho","hhop","Ohh","ophihat","Hhopen","hihatopen","open_hi_hat","Hatop","open_hi_hat","Hat_Open"]

  • 0
    punchedoutpunchedout United StatesPosts: 29
    edited March 2019

    Thank you for responding and creating this tool it is excellent and I am learning alot from it. I reviewed the xml's that it creates vs the default ones and the code in the build.py further before responding. It is finding the correct file name and sample which corresponds to kick. The issue is that sometimes the lowest note in the kit is C0 and sometimes its B0 Even tho both are kicks when I send midi to the deluge I do not get a kick because for certain kits actually extend below C1.

    If you could point me in the direction of how it decides what row to start the kit, rather than how it determines what sample to put in each row. (I believe this is what I want, I can take a video or gif if I'm not clear.)

    How does it determine the beginning of the array or index? If its just a default I don't understand how some kits extend below C1.

    I'm probably doing something wrong or missing something obvious maybe. I really appreciate your help... (I spent most of my day trying to figure out the deluge file system to some success... This is one of the last things causing me to pull my hair out).

    Post edited by punchedout on
  • 0
    HorstmaistaHorstmaista Los AngelesBeta Tester Posts: 56

    Mmmh can't really tell you why that happens. The script really just adds a bunch of modified copies of the mid.txt together. I guess the Deluge lines them up in the drum kit.
    Might be worth making two different drum kits on the Deluge and compare them. One with a bassdrum on C0 and one with the bassdrum on B0 and compare them.
    But yeah, can't really tell you why that happens.

Sign In or Register to comment.