Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

BDM - A (nearly complete) digital drum kit synth

Post any examples or modules that you want to share here

BDM - A (nearly complete) digital drum kit synth

Postby mwvdlee » Tue Dec 29, 2015 2:29 pm

Hi,

Some of you may still remember me back from the days of SynthMaker; I used to be quite active years ago on both the forums and with plug-ins and sharing stuff.

There is one thing I've never shared (or probably even mentioned) back then; My Big Project. The plan was to get this thing finished and released as a commercial product, but due to a number of bugs in the MIDI input handling in SynthMaker that were never resolved, a new job and an entire IT bachelor degree education, I never got around to finishing the project.

About half a decade has past and the chance of this project ever seeing the light of day has become ever smaller. But I didn't want it go to waste on my harddisk, so here it is in all it's glory;

BDM (version 0.17.117)
screenshot.png
screenshot.png (71.53 KiB) Viewed 33894 times


Note that this release is licensed with the GPL3 license; so you can use it (or parts of it), but you MUST make changed versions of code using parts of this synth available with the GPL3 license as well. A complete license text is included in the .fsm file.

Installing
Download the attached .fsm file and a .zip file containing some configuration files.
BDM 0071-117-GPL.fsm
(576.26 KiB) Downloaded 1201 times

bigmonocnv_bdm_config.zip
(566.85 KiB) Downloaded 1207 times

You'll also need to download a set of layered drum samples. The zipfiles assume you have downloaded these: http://www.analoguedrums.com/details-bm.php

Ideally, put the drum samples in a folder named
Code: Select all
E:\bigmonocnv
and put the configuration files from the .zip in the same folder. If you use a different folder, you'll need to edit the ride.kit text file. The .drum files contain configurations of the individual drum pads, the .kit file ties them all together, so you can load en entire set at once.

Using
Assuming you installed correctly, just load up the .fsm file in FlowStone (I only have an old version, but I assume newer versions will work), load a .kit file using the [Kit] button, then click the big red INIT trigger button to start loading all the samples. You'll see a progress bar in the statusbar.

Configuring
The default MIDI mapping is setup for my cheap-ass Medeli dd505(D) digital drum kit. You can change the MIDI bindings using the menu buttons on the top-left. Just smash your drum kit to select the matching key, then click the event you want to map to it.

Developers
There are a lot of interesting bits in this code. Most of them will be clear from the user interface, but there are a few in particular that may be of interrest:

Poly limit (part of drumpad player) - A mechanism which tries to approximate perceptible amplitude of a single channel, then kills the least perceptible channel if there are too many active channels.
Windowing system - Open, close, drag and z-order multiple windows inside the user interface (I may have published this earlier; can't remember).
Drumpad player - Variable velocity layers, pitch ending, balancing, etc. This thing is pretty flexible and fast.
Drumpad UI - Flash when you use a drumpad.
Mixers UI - Managing the configuration files and samples.
Configurability - It takes very little effort to add new .drum files with new samples. In fact, I left out some of my more obscure tests like non-drums, velocity-to-pitch mapping and morphing drums.

I'm forgetting a lot of little things, I leave these for you to discover ;)

Status
It's "nearly complete" as in "it does everything a digital drum kit synth should do", not as in "ready for commercial release". The most obvious omission is an initial loader for the kit and drums and lack of organisation in the UI. Neither should be particularly difficult to fix. As far as the audio processing goes, I consider this finished. I've done some experiments with binaural stereo a while back, and would like to add it (since it works quite well), but simply don't have the time to get around to doing it. Also, I seem to have lost my experiments.

It's good enough for me to use regularly next to BFD3 and ToonTracks.

License
As mentioned earlier, this all is released using the GPL3 license; the GNU General Public License 3.0. This license is the same as used by the Linux kernel and many other open source software. It differs from most open source licenses in that it requires derived products to be released as open source using the same GPL3 license.

I've done this for a number of reasons;
1. I believe it's best in the long term for the community to encourage sharing.
2. I hope BDM will be adopted and improved by the community.
3. This thing has taken me a lot of time to built and quite a bit of money.
4. I don't want anybody running away with it and selling it without giving anything back to the community.
5. There are parts I would have liked to have patented, the GPL3 license gives me some insurance against other people patenting them or blocking me from ever using these parts myself in the future; it establishes prior art.

Some people will want to use parts (or the whole) without respecting the GPL3 license. To these people I have a few things to say:
1. Just ask; if there's any specific part you want to use, I could drop the license.
2. Don't be a dick.
3. GPL3 has been extensively tested in court; ignoring the GPL license has historically not been a very profitable business strategy.

And finally...
Let me know what you think of it, whether you can get it up and running or whatever.
mwvdlee
 
Posts: 6
Joined: Thu Jul 15, 2010 6:58 am

Re: BDM - A (nearly complete) digital drum kit synth

Postby martinvicanek » Tue Dec 29, 2015 2:59 pm

Hey, mwvdlee, we've met at the filtermeister forum. Good to see you (back) here! And wow, thanks for sharing this absolutely stunning project. Will take a deep dive when I get back to my main PC.
User avatar
martinvicanek
 
Posts: 1334
Joined: Sat Jun 22, 2013 8:28 pm

Re: BDM - A (nearly complete) digital drum kit synth

Postby Walter Sommerfeld » Tue Dec 29, 2015 3:58 pm

Hello Martijn,

good to see U...

I always appreciated you detailed sources:

Like THE controls or Skratz... :)
Always wanted 2 ask U if i could use the source of the jogwheels in my project(s) (i added some bitmaps)?!

...will test this fine project later!

I hope you have a nice day.
Walter
User avatar
Walter Sommerfeld
 
Posts: 249
Joined: Wed Jul 14, 2010 6:00 pm
Location: HH - Made in Germany

Re: BDM - A (nearly complete) digital drum kit synth

Postby mwvdlee » Tue Dec 29, 2015 5:32 pm

Whatever happened to the old SynthMaker forum anyway?
Seems like a lot of good example code has gone, including but certainly not limited to the "Skratz" code you mentioned.

Either way, for completeness sake, here's some other useful stuff that used to be on the SM forum:

Missing Links 0014.fsm
(1014.02 KiB) Downloaded 1141 times
- Up-to-now unreleased latest version of my "Missing Links" set of components, including a bunch of incomplete (WIP=Work In Progress) components which may or may not work.

Windows GUI 5.fsm
(1.93 MiB) Downloaded 1185 times
- Demo of the Windowing system in BDM. I think I released this as an executable in the old forums, but never as a schematic. So... there ya go; a working windowing for upto 8 windows.

Conway.fsm
(2.85 KiB) Downloaded 1221 times
- Conway's Game of Life in pure schematic. Don't know if I ever posted this before, but I still like it. Conway GoL is essentially an indirect proof of a Turing completeness.

I don't seem to have a FSM version of Skratz anymore, but if somebody still has it and the required smio.exe, please post it, and I will post the sourcecode to smio.exe as well, which has a very consice ID3-tag parser in it.
mwvdlee
 
Posts: 6
Joined: Thu Jul 15, 2010 6:58 am

Re: BDM - A (nearly complete) digital drum kit synth

Postby mwvdlee » Tue Dec 29, 2015 5:34 pm

Just found a more "recent" version of BDM; version 0.73.204
There don't seem to be any significant functional changes.
The version number is higher, so possibly it contains bug-fixes or other improvements.

BDM 0073-204-GPL.fsm
(572.84 KiB) Downloaded 1157 times
mwvdlee
 
Posts: 6
Joined: Thu Jul 15, 2010 6:58 am

Re: BDM - A (nearly complete) digital drum kit synth

Postby mwvdlee » Tue Dec 29, 2015 7:06 pm

Digging through my backups, I found some more stuff you might want to look at:

Missing Links 0015.fsm
(1.06 MiB) Downloaded 1133 times

Version 15 of "Missing Links", with even more (semi-)useful components.

Skratz 0022.fsm
(182.79 KiB) Downloaded 1113 times

I found the Skratz FSM file again, so here it is. I think you needed mpg123.dll or something like that for the MP3 loading (very slow).

smio.zip
(549.39 KiB) Downloaded 1104 times

You'll need to put the "vanderlee.exe" file in the Skratz folder for it to work with meta data and such. This zip also includes the C++ sourcecode, for use with the DevCPP IDE/compiler.
mwvdlee
 
Posts: 6
Joined: Thu Jul 15, 2010 6:58 am

Re: BDM - A (nearly complete) digital drum kit synth

Postby mwvdlee » Tue Dec 29, 2015 7:13 pm

...And also another version of BDM popped up; with the binaural experiment and a lot of other fun stuff.

BDM 0078-205-GPL.fsm
(935.07 KiB) Downloaded 1152 times


I think this one has the following extras:
Binaural stereo, (basically a few samples delay to somewhat simulate positional tracking of sounds).
Loads samples in a different order, so you can start playing while loading.
Velocity-curve adjustment for each drum; alters how MIDI velocity maps to sample layers.
Slightly more "finished" UI, with the init/clear buttons moved inside the UI.
Lots of crappy standard effects to play with (though they do take a lot of CPU%)
mwvdlee
 
Posts: 6
Joined: Thu Jul 15, 2010 6:58 am

Re: BDM - A (nearly complete) digital drum kit synth

Postby Walter Sommerfeld » Tue Dec 29, 2015 7:49 pm

Wow - what a treasure.. :)

Like ur Ellipse Click 2 Velocity solution - very sick!

Keep on doing!

btw: is there a chance 2 get the 'Hold & Release' inside the Levelmeters in GREEN prims only or ruby?
User avatar
Walter Sommerfeld
 
Posts: 249
Joined: Wed Jul 14, 2010 6:00 pm
Location: HH - Made in Germany

Re: BDM - A (nearly complete) digital drum kit synth

Postby billv » Tue Dec 29, 2015 10:36 pm

mwvdlee wrote:Conway's Game of Life in pure schematic

I spent some time on this a while back, but gave up cause I couldn't
work out how to make an 'endless' grid.
Thanks for uploading your version.
PS:
Some great stuff in the Missing links fsm.
:D Thanks
billv
 
Posts: 1158
Joined: Tue Aug 31, 2010 3:34 pm
Location: Australia

Re: BDM - A (nearly complete) digital drum kit synth

Postby mwvdlee » Wed Dec 30, 2015 7:46 am

billv wrote:how to make an 'endless' grid.

There are no implementations with real endless grid in any language for obvious reasons.
Some have really smart ways of growing the grids as needed, but most just do what I did; take a fixed size and a design that could theoretically be scaled out.
mwvdlee
 
Posts: 6
Joined: Thu Jul 15, 2010 6:58 am


Return to User Examples

Who is online

Users browsing this forum: No registered users and 10 guests