The -M option of aucat was removed long time ago, and as we're at it mention about softsynths.
OK? Index: faq13.html =================================================================== RCS file: /cvs/www/faq/faq13.html,v retrieving revision 1.152 diff -u -p -u -p -r1.152 faq13.html --- faq13.html 1 Dec 2014 09:49:46 -0000 1.152 +++ faq13.html 23 Feb 2015 08:53:42 -0000 @@ -808,23 +808,25 @@ umidi1 at uhub1 port 2 configuration 1 i midi1 at umidi1: <USB MIDI I/F> </pre></blockquote> -It shows three MIDI ports, corresponding to: +It shows three MIDI ports, known by +<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=sndio">sndio(7)</a> +as: <ul> -<li> <tt>/dev/rmidi0</tt> - synthesizer connected by USB -<li> <tt>/dev/rmidi1</tt> - a MIDI master keyboard +<li> <tt>rmidi/0</tt> - synthesizer connected by USB +<li> <tt>rmidi/1</tt> - a MIDI master keyboard </ul> -These devices are known by -<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=sndio">sndio(7)</a> -as <tt>rmidi/0</tt> and <tt>rmidi/1</tt>. +They are backed by the <tt>/dev/rmidi0</tt> and <tt>/dev/rmidi1</tt> +character devices. +The later are handly for testing the hardware, bypassing most software layers. To test your MIDI keyboard, you can use the <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=hexdump&sektion=1">hexdump(1)</a> utility to display MIDI data you're playing on it: <blockquote><pre> -$ <strong>aucat -Mq rmidi/1 -o - | hexdump -e '1/1 "%02x\n"'</strong> +$ <strong>hexdump -e '1/1 "%02x\n"' < /dev/rmidi0</strong> 90 3c 71 @@ -835,14 +837,11 @@ The output of the keyboard can be connec synthesizer, as follows: <blockquote><pre> -$ <strong>aucat -M -q rmidi/0 -q rmidi/1</strong> +$ <strong>cat -u < /dev/rmidi0 > /dev/rmidi1</strong> </pre></blockquote> Now you can hear on the synthesizer what you're playing on the MIDI keyboard. -Refer to the -<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=aucat&sektion=1">aucat(1)</a> -manual page for further information. <!-- <h3>Playing, recording MIDI sequences</h3> --> @@ -854,6 +853,19 @@ is as easy as: <blockquote><pre> $ <strong>midiplay -f rmidi/0 file.mid</strong> +</pre></blockquote> + +<p> +The +<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=sndiod">sndiod(1)</a> +server exposes MIDI thru ports, allowing programs to send each other +MIDI data. +For instance, if you have no hardware synthsizer connected, you could +start a software one (like the audio/fluidsynth port), and then use +it as MIDI output: + +<blockquote><pre> +$ <strong>midiplay -f midithru/0 file.mid</strong> </pre></blockquote> <p>