A software MIDI controller which can send MIDI to any input device. Also exposes itself as a MIDI input to other applications (OSX only)
This project uses CMake as its build system. You'll need CMake 3.22 or later.
Install all required dependencies for JUCE development:
sudo apt-get update
sudo apt-get install -y \
build-essential \
cmake \
libcurl4-openssl-dev \
libasound2-dev \
libjack-jackd2-dev \
libfreetype6-dev \
libx11-dev \
libxext-dev \
libxrandr-dev \
libxinerama-dev \
libxcursor-dev \
libgl1-mesa-dev \
libgtk-3-dev \
pkg-config-
Initialize submodules:
git submodule update --init --recursive
Note: If the
libkv-authsubmodule fails to download (private repository), the build system will use stub implementations that disable unlock functionality but allow the project to build successfully. -
Create a build directory and configure:
mkdir build cd build cmake .. -DCMAKE_BUILD_TYPE=Release -
Build the project:
cmake --build . --config Release --parallel -
The executable will be created at:
build/virtual-midi-controller_artefacts/Release/Virtual MIDI Controller
GitHub Actions automatically builds the project for Linux on every push and pull request. The built artifacts are available for download from the Actions tab.
There are launch and build tasks in the .vscode folder, though these may need updating to use CMake instead of the previous build system.
