ExaDrums is a software drum module that allows drummers play with custom-made drum kits. This C++ library provides the most common features of a drum module. Its associated graphical user interface can be found in a separate repository: https://github.com/SpintroniK/eXaDrums.
Each drum kit is made of instruments that can be individually controlled.
A built-in metronome can be combined with a rhythm coach to make practice sessions easier and efficient.
The drum triggers can be adjusted so that their response feels as natural as possible, and different sensor interfaces include external sensors.
Although eXaDrums is usable as a drum module, it is still a young project. As such, some features are not yet implemented or are still experimental.
Libexadrums is available from the Debian unstable and testing distributions, as well as Ubuntu >=19.10. If you wish to install the latest version of the library, you can build the packages from the Github repositorie.
libeXaDrums depends on Alsa, TinyXml2 and minizip. You can install those two libraries using this command line:
sudo apt install libasound2-dev libtinyxml2-dev libminizip-dev
LibeXaDrums also depends on build-essential, autotools and pkg-config in order to build and install the binaries:
sudo apt install autoconf automake libtool build-essential pkg-config
If you wish to build the Debian packages (which is the recommended way to install the library), you will need to install debhelper:
sudo apt install debhelper
You will also need to install git, so that you can clone this repository:
sudo apt install git
git clone https://github.com/SpintroniK/libeXaDrums.git
Now that you have all dependencies, you can build the Debian packages. Make sure you have dehelper installed, and then checkout the debian branch from your cloned repository:
cd libeXaDrums
git checkout debian
Then you can build the package:
dpkg-buildpackage -b -uc -us
If you have multiple cores/threads, you can speed up the build process by appending the option -jn to dpkg-buildpackage, where n is the number of threads that you want to use for the compilation.
Example, for four threads type: dpkg-buildpackage -b -uc -us -j4
.
The Debian packages are built in the parent directory, so you should be able to install them by using dpkg (don't forget to install them as root):
cd ..
sudo apt install ./libexadrums0_[...].deb
sudo apt install ./libexadrums-dev[...].deb
The library is self documented.