Download:  xwinmidiarptoy

Download:  xwinmidiarptoy.txt



A BASH shell script which acts as some kind of MIDI sequencer which utilizes X (*new* 2010)

xwinmidiarptoy is an experimental BASH script which utilizes X and whichever window manager you happen to be using within X. xwinmidiarptoy is a MIDI sequencer which works by repeatedly opening xterm terminal windows within X and maps the position of the terminal window on the desktop to a MIDI note and velocity. Each xterm hangs around while the note plays, and then some specified time afterwards before disappearing again. Different arpegiating patterns can be generated by placing the windows of other software programs in varying positions within the desktop and thus (if you are using a window manager that works this way) blocking the script from producing certain notes.

Originally, this 'toy' developed from experiments intended to create interesting videos that could be recorded with recordmydesktop. After producing such videos, the next step obviously seemed to involve sound.

Due to the demands of serious MIDI sequencing within linux requiring Real-Time low latency operation, and also wishing to pain myself somewhat, I am currently in the planning/learning stages of implementing this script as an application. The application will, instead of opening xterm's, have it's own workspace in which coloured squares behave in a similar manner. What is controlled by the window manager for the script (the placing of the xterms) will then be under the control of the program - and thus the user. The program is planned to use JACK MIDI and because of this, will have Real-Time low latency response. Don't expect this application to arrive any time soon!

xwinmidiarptoy is written by James W. Morris.

DISCLAIMER: The opinions and attitudes of James W. Morris as expressed here in the past may or may not accurately reflect the opinions and attitudes of James W. Morris at present, moreover, they may never have.


this page last updated:29th April 2013 jwm-art.net (C) 2003 - 2017 James W. Morris

script time:0.0419