NAME
libmidi — midi player base on timidity and imgui
SYNOPSIS
INFO
DESCRIPTION
midi player base on timidity and imgui
README
News
- 2023/12/21 Publish libmidi on Gitee!
- 2022/9/22 Update libmidi version to 2.15.3, we support very large midi file playing such as millions voices midi files
Introduction
MIDI player base on timidity and imgui, support soundfont(SF2) and software MIDI keyboard.
App main window with paino keyboard view

App main window with event rolling

Soundfont Select

Software MIDI keyboard

Software MIDI keyboard mapping

Software MIDI keyboard instrument

Console demo

Getting the Source
git clone --recurse-submodules https://github.com/opencodewin/libmidi
Building
This project supports CMake out of the box.
- Linux
Install dependence library ncurses with apt
- MacOS
Install dependence library ncurses with homebrew
- Windows
Using MSYS64 + Mingw64 + Clang/GCC Install dependence library with pacman
- imgui build
See imgui document imgui
Quick start:
- download soundfont file GoogleDrive. BaiduYun code: 901u.
Copy soundfont files into soundfont folder, then you can using extra soundfont(GM best). if you have SF2 format soundfont files, also put them into folder.
mkdir -p build && cd build
cmake -DCMAKE_BUILD_TYPE=Release .. && cmake --build .
./build/immidi
./build/timidity
LICENSE
This project is released under The MIT License。