In order to obtain the best parameters for different kinds of music, understand how the algorithms work and change them to obtain better results, I decided to make this simple app. Supported audio file extensions are .wav, .flac and .mp3.
If you're looking to give it a quick test, you can download one of the packages in the releases page. Else you'll probably want to build it yourself.
First clone this repository (option --recurse-submodules is needed to get the Beat-and-Tempo-Tracking dependency too):
git clone --recurse-submodules https://github.com/acrilique/TempoTest.git
To build this, you will need to install cmake, pkg-config and the GTK4 development libraries. If they're not installed, the cmake .. command will fail with an error message. If you're on Linux, use one of the following commands to install them:
Ubuntu:
sudo apt install cmake pkg-config libgtk-4-devFedora:
sudo dnf install cmake pkg-config gtk4-develOpenSUSE:
sudo zypper install cmake pkg-config gtk4-develThe only way I've tried this on MacOS is via Homebrew. After completing installation of Homebrew, run the following command to obtain the dependencies:
brew install cmake pkg-config gtk4For this you will need to install MSYS2
After installing, from the UCRT64 shell, run the following command to install the c compiler, gtk4 and cmake:
pacman -S mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-gtk4 mingw-w64-ucrt-x86_64-cmakeRun this from the TempoTest folder, in a shell that has access to the utilities installed above (on Windows, that'll be the UCRT64 shell if you followed the steps above)
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build
cd Release
./TesterYou will need the mingw64 package for gtk4, I've only tried to do this on Fedora. I had to install these packages:
sudo dnf install mingw64-gcc mingw64-gtk4Then the build process is the same, but on the cmake command you need to specify compiler path and toolchain file like this:
mkdir build
cd build
cmake .. -DCMAKE_C_COMPILER:FILEPATH=x86_64-w64-mingw32-gcc -DCMAKE_TOOLCHAIN_FILE:FILEPATH=/path/to/mingw-w64-x86_64.cmake
cmake --buildThe resulting .exe file and dll's need to be in the same folder in order for the app to execute on the target windows machine.