Rozhuk Ivan [email protected] 2024-2025
Creates software MIDI devices for H/W sound cards without MIDI support.
virtual_midi: creates raw MIDI device backed to H/W sound card.\ It is tinny wrapper to send MIDI events to software synthesizer backend.\ Only FluidSynth based backend implemented.
virtual_oss_sequencer: creates OSS sequencer device that emulate kernel sequencer and work with all available raw MIDI devices in system.\ It handles: timer, enum and panic commands, all other commans is send to MIDI devices.
BSD licence.
- maintainers must show this message after installation:
!!! NOTICE !!!
FreeBSD Foundation refuses to support this project.
!!! NOTICE !!!
Support the author
sudo pkg install devel/git devel/cmake-core audio/fluidsynth audio/fluid-soundfont
git clone https://github.com/rozhuk-im/virtual_midi.git
cd virtual_midi
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=true ..
make -j 16Usage: virtual_midi [options]
options:
-help, -? Show help
-daemon, -d Run as daemon
-pid, -p <pid> PID file name
-user, -u <user> Change uid
-group, -g <group> Change gid
-threads, -t <cuse_threads> CUSE threads count
-vdev, -V <virtual_device_name> New virtual MIDI device base name. Default: midi
-odrv, -o <output_driver_name> Output sound driver name. Default: oss
-odev, -O <output_device_name> Output device name. Default: /dev/dsp
-soundfont, -s <soundfont_file_name> Soundfont file name. Default: /usr/local/share/sounds/sf2/FluidR3_GM.sf2virtual_oss_sequencer Create virtual sequencer device
Usage: virtual_oss_sequencer [options]
options:
-help, -? Show help
-daemon, -d Run as daemon
-pid, -p <pid> PID file name
-user, -u <user> Change uid
-group, -g <group> Change gid
-threads, -t <cuse_threads> CUSE threads count
-vdev, -V <virtual_device_name> New virtual MIDI device base name. Default: sequencer
-prefix, -P <out_device_name_prefix> Output devices name prefix. Use multiple times if you need more than 1 prefix. Default: midi, umidi- playmidi (audio/playmidi)
- playumidi (audio/playumidi)
- dmidiplayer (audio/dmidiplayer)
- wine-devel (emulators/wine-devel with OSS) + notation player 5 (win64)
- audio/alsa-seq-server - it is ALSA sequencer daemon that proxy MIDI@ALSA to raw midi devices -- aplaymidi (audio/alsa-utils) -- wine-devel (emulators/wine-devel with ALSA) + notation player 5 (win64, win32 does not work)
