Valdu
Junior Member
Posts: 61
|
Post by Valdu on Jan 26, 2024 6:41:51 GMT -5
Ddrum4 users, I am proud to announce the birth of ddrum4ui! The idea for this interface came to me after reading Ken Wright's enormous work over the past few years on ddrum4edit (see here), and its realization was made possible thanks to my friend Geoff Levner, a genius developer who discovered the world of electronic drums with this project, and who worked hard this last month outside of his office hours. A huge thank you to both of them for their involvement and collaboration on this project. What is ddrum4ui ?Ddrum4ui is a sound management interface for the Clavia ddrum4 module, based on Ken Wright's ddrum4edit command line utility. It allows the management and modification of original sounds from Clavia sound banks, as well as the creation of new sounds from your own samples. The interface is nice and clean, intuitive and simple to use. What can you do with ddrum4ui? OPEN factory sound files provided by Clavia. CREATE your own sound files from scratch by importing audio samples. DISPLAY the layers and the samples defined by the sound. LISTEN TO layers and samples separately in real time. MANAGE layer and sample settings: Add/remove, adjust pitch, volume and decay, define position and velocity parameters. COPY layers and samples from one sound file to another, by simple drag and drop. MANAGE variations and sequences. LISTEN TO modified sounds at any time using the pad simulator. How do I get ddrum4ui ?The software is FREE and is available on MacOS (10.13 or later), and Windows (10 and 11). Download links and readme: drive.google.com/drive/folders/1j15PXTHdNb-RMrtfxqeyE-5Squ0C9fpc?usp=drive_linkEnjoy! Alain Duval AKA Valdu for the ddrum4ui team
|
|
Valdu
Junior Member
Posts: 61
|
Post by Valdu on Jan 26, 2024 6:45:23 GMT -5
|
|
|
Post by kenjwright on Jan 26, 2024 18:40:39 GMT -5
Kudos to Geoff ( glevner ) and Alain ( Valdu ) for this great piece of work! It’s been loads of fun participating in this project with ideas, technical details, and testing! Enjoy everyone! Cheers! Ken
|
|
|
Post by Falko76 on Jan 27, 2024 10:46:14 GMT -5
Funny enough, I have just started yesterday to finally convert VST drums to ddrum4, after around a year I have set up everything, set up batch files so it's easy to convert, just did my first kick and snare, and you pop me up with this release :-) GREAT :-) BTW kenjwright, when I use latest version of ddrumedit, I want to compress samples so I use cue markers, but I don't think its working correctly. I put in config file:
IFF CUE MARKERS -------------------- Sample|Position|Rate -Begin-Cue-Markers- S1 0.001 44100 S1 0.100 8000 -End-Cue-Markers-
but entire sample is downsampled to 8000Hz, instead of just part of it. When removing second S1 line, sample is correctly at 44100Hz. Is it a bug?
|
|
|
Post by kenjwright on Jan 27, 2024 14:23:00 GMT -5
HI falko76, I suspect your sample has a total length that is less than .100? At the default of 44100 each packet is roughly 0.02 seconds (20 milliseconds) long. If you use -p to print the sound file content, what is the last packet number displayed? Also, unless your wave file already has a sample rate less than 44100, the first cue line (S1 0.001 44100) is not necessary as the default at 0.00 will always be 44100 if your wave file is sampled at 44100 or greater. Cheers! Ken
|
|
|
Post by Falko76 on Jan 27, 2024 15:41:10 GMT -5
That's strange, -p parameter,WITHOUT CUES, prints only 3 last samples, although .mid file contains all 8 files I included: Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ................................................... Reading RIFF File (snare1 - 080.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ................................................... Reading RIFF File (snare1 - 100.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ................................................... Reading RIFF File (snare1 - 121.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ................................................... Writing Sound File (SNRE101 snare1.mid)... Writing MIDI Data... Writing Packet Zero... Writing Sample Packets... Finished Writing Sound File (SNRE101 snare1.mid)
And also WITH CUES enabled like this in cue markers section in .cfg: S1 0.000 44100 S1 0.200 8000 S2 0.000 44100 S2 0.200 8000 S3 0.000 44100 S3 0.200 8000 S4 0.000 44100 S4 0.200 8000 S5 0.000 44100 S5 0.200 8000 S6 0.000 44100 S6 0.200 8000 S7 0.000 44100 S7 0.200 8000 S8 0.000 44100 S8 0.200 8000
then -p says (all samples are exactly 1 second long): Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 . waveSize= 15590 bitDepth=16 reSampleRate= 7795 ........ Reading RIFF File (snare1 - 080.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 . waveSize= 15590 bitDepth=16 reSampleRate= 7795 ........ Reading RIFF File (snare1 - 100.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 . waveSize= 15590 bitDepth=16 reSampleRate= 7795 ........ Reading RIFF File (snare1 - 121.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 . waveSize= 15590 bitDepth=16 reSampleRate= 7795 ........ Writing Sound File (SNRE101 snare1.mid)... Writing MIDI Data... Writing Packet Zero... Writing Sample Packets... Finished Writing Sound File (SNRE101 snare1.mid)
Then I use original ddrum4tool to listen to it and it is all resampled at 7795, you can hear it :-)
|
|
|
Post by Falko76 on Jan 27, 2024 15:52:32 GMT -5
Changing all cues section from 0.200 to 0.100 like example from above produces exactly the same printout as above (bottom one) even though all samples are exactly 1 second long. Even the .mid file is the same length with 0.100 and 0.200. I take it 0.200 i 200ms?
|
|
|
Post by kenjwright on Jan 27, 2024 16:35:54 GMT -5
Hmm. Something odd about that for sure. Are you able to provide the source material to me (dropbox, google, etc)? If so PM me and I'll sort through it. Not making sense. With a sample length of 1+ seconds there should be no issue with a change at .100. That should yield 5 blocks (packets) at 44100 and the rest at 8000.
|
|
|
Post by Falko76 on Jan 28, 2024 3:55:20 GMT -5
Ok its here: drive.google.com/file/d/1gsr5RGMV04_riZlIv0u0VKL0LZChjuPw/view?usp=sharingThis zip file as it is here, you just unzip to some folder and run "Edit Parameters here and then run this.bat" file. This will generate two new files - configModded.cfg (the one for you to examine - which is actually used by ddrum4edit), and final .mid file This is Addictive Drums 2 snare from RNB YouGotMe preset. My workflow is: 1)I first run Lustark SDSE to generate normalized 127 .wav files for each velocity (I choose which samples to actually use later, in config.cfg file) These wav files are included here in .zip 2) Then I edit file: "config.cfg" where I edit all usual ddrum4edit parameters for generating .mid (like f.e above mentioned - which samples to use, or cue markers etc) 3) Then I edit second file "Edit Parameters here and then run this.bat", which (for automation) generates new configModded.cfg file, which replaces some strings in config.cfg, and this new file is then actually used by ddrum4edit. To see what parameters are editable, look within the file in comments (f.e if it's snare, kick, numer of sample, etc) So this way when I generate new snare or kick with SDSE in new folder, I actually only copy these two above files in new folder and then edit with new parameters (snare, kick, samplenumber) and simply run .bat so it's super quick and simple workflow for me. In this .zip example I have set up cues at 0.200, but changing even to 0.100 or anything doesnt make difference in resulting size
|
|
|
Post by kenjwright on Jan 28, 2024 6:17:46 GMT -5
Thanks for that! Unfortunately I am not able to replicate your issue. I unzipped and executed the batch file without any modifications (except as noted); Edit Arguments here and then run this.batNotes: - I removed the -p parameter as it has no meaning when used with -c as it requires a .mid filename, (which is not yet created).
- FYI, you are using v1.00.29. The current version is v1.01.00 which includes a number of enhancements although nothing related to this testing.
- For consistency I ran my tests on a Windows10 vm using the same version of ddrum4edit.exe (v1.00.29). Also repeated on a MacBook.
- I would like to see the output of ddrum4edit -t 'SNRE101 snare1.mid' (this creates a txt file of the .mid file content). Or just send me the .mid file.
The output below looks normal with the transition to 7795 between packets 11 and 12 of the first sample and consistently same for the rest. At the very bottom is a snip of the output from printing the contents of the generated .mid file, showing the transition between packets 11 and 12. ddrum4edit, v1.00.29, (c) 2020-2022 Ken J. Wright / Cncware
Reading Configuration File (configModded.cfg) Reading RIFF File (snare1 - 001.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Reading RIFF File (snare1 - 010.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Reading RIFF File (snare1 - 025.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Reading RIFF File (snare1 - 040.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Reading RIFF File (snare1 - 060.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Reading RIFF File (snare1 - 080.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Reading RIFF File (snare1 - 100.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Reading RIFF File (snare1 - 121.wav)... Converting 24bit to 16bit... Done Converting 2 channels to mono... Done waveSize= 88198 bitDepth=16 sampleRate=44100 ............ waveSize= 15590 bitDepth=16 reSampleRate= 7795 ...... Writing Sound File (SNRE101 snare1.mid)... Writing MIDI Data... Writing Packet Zero... Writing Sample Packets... Finished Writing Sound File (SNRE101 snare1.mid) ddrum4edit -p "SNRE101 snare1.mid" Packet Footer : F7 82 21 Packet (11) Header : F0 89 15 33 7F 05 00 Packet Number : 00 0B (11) Packet Data (Head ... Tail) : 3F 4E 04 21 18 44 2E 21 11 43 1E 1F 10 34 4C 19 ... 7D 21 7F 19 7F 61 5F 76 67 7D 2C 00 05 25 68 00 Packet Wave Details : RateIdx= 0 (1.000000 : 44100), ExponentIdx=42 (0.007943), Emphasis= 93 (0.726563), Frequency= 206.85 Hz, MaxSample= 661, MinSample= -685, Gain=0.0209, Db=-33.59, Duration= 0.01995 Packet Footer : F7 82 21 Packet (12) Header : F0 89 15 33 7F 05 00 Packet Number : 00 0C (12) Packet Data (Head ... Tail) : 67 7E 5C 5D 07 57 2F 59 05 30 7B 50 17 4D 14 17 ... 00 30 00 0A 1F 78 5F 7D 03 7F 2B 05 04 62 18 00 Packet Wave Details : RateIdx=20 (0.176777 : 7795), ExponentIdx=38 (0.012589), Emphasis= 35 (0.273438), Frequency= 229.41 Hz, MaxSample= 517, MinSample= -298, Gain=0.0158, Db=-36.04, Duration= 0.11290
|
|
Valdu
Junior Member
Posts: 61
|
Post by Valdu on Jan 28, 2024 6:50:54 GMT -5
I would like to tell the readers of this topic that the previous dialogue is mainly about ddrum4edit, ddrum4ui is much easier to use! So don't be scared!
|
|
|
Post by Falko76 on Jan 28, 2024 8:49:56 GMT -5
Perhaps we should move back to original thread :-) maybe delete these scary posts if you can. Back to my problem (next time I will post in original thread) Here's the zip drive.google.com/file/d/1C8xaL2Znjn8RwG6CrCHKP8iZEAYay3Jb/view?usp=sharingI made it super simple, just config file with just one sample at hardest velocity. Inside first folder "One cue line" is result of my .mid file along with .txt of my console output of -p parameter with config file using only S1 0.000 44100 cue. Second folder "Two cue lines" is result of two cue lines: S1 0.000 44100, S1 0.200 8000. I can see that the -p result of two cues in my case yields no 44100 sample, it goes straight to 7795 (check my .mid) So what happens if you run "Run to create mid file.bat" inside "Two cues folder". Is .mid that generates on your machine different than mine?
|
|
Valdu
Junior Member
Posts: 61
|
Post by Valdu on Jan 28, 2024 9:20:53 GMT -5
I don't think I can do it, maybe Krillo could move this part of your discussion (cue markers) in the ddrum4edit thread? Thanks to continue your discussion in the original thread. :-)
|
|
|
Post by kjob3022 on Jan 28, 2024 12:57:45 GMT -5
I just played around with the UI app and hit open to get the file to pick but after I listened to it thru the sample/layer page I closed it without saving and said it would remove original sound file so is that alright?and is it now possible to use this new library to load midi thru sysex library or are ddrum4edit and ddrum4ui libraries need to be separated and imported differently, as always thanks a ton.Ken
|
|
Valdu
Junior Member
Posts: 61
|
Post by Valdu on Jan 28, 2024 13:28:52 GMT -5
If you open a sound and make no changes, it will be saved as the original. If you make changes and want to keep the original, you do "save as" and change the description name. It will keep the same sound ID, meaning that if you load it into the module it will go to the corresponding place. To test the sound, you will first need to remove the sound present with the same sound ID, otherwise the module will display "dup" and will not load the sound. You can also change the sound ID (Edit/Sound ID) to choose an empty location in the Clavia sound banks, so it will not erase any original sounds. The only important data taken into account by the module is the Sound ID, for example SNRE_151,in the rest of the name you put whatever you want. Personally, I created a CUSTOM folder in which I put my different tests, without changing the Sound ID, and when I am satisfied I rename the Sound ID and I choose an empty location from the ddrum 4 sound banks.
|
|