alsa/all_notes_off

24 lines
688 B
Bash

#!/bin/bash
#
# Send an "all notes off" event to all channels of all
# MIDI-Devices configured in the System
#
# Written by Matthias Nagorni, (c) 2001 SuSE GmbH Nuremberg
# (c) 2014 SUSE Linux Products GmbH
#
for d in /dev/snd/midiC?D?; do
echo Sending "all notes off" to MIDI device $d
cat /usr/lib/all_notes_off.bin > $d
done
if [ -x /usr/bin/pmidi ]; then
echo Can execute pmidi. Fine.
plist=$(pmidi -l)
for p in $plist; do
p1=${p%:0}
if [ "$p1" != "$p" ] && [ $p1 -gt 16 ]; then
echo Sending "all notes off" to MIDI port $p
pmidi -p $p -d 0 /usr/lib/all_notes_off.mid
fi
done
fi