quincer is a MIDI sequencer for composed music.

quincer reads text files for input, which may include other input files to re-use material. It is a pure JACK client. Some sample input:

voice kick vsamp 1
voice hat vsamp 2
voice castanet vsamp 5
voice wow vsamp 6

pattern 88 0

k 80 60
h 80 60
c 80 60
w 80 60

L cc 10 10
l cc 10 40
r cc 10 80
R cc 10 110

q cc 43 70
a cc 43 80
z cc 43 90
x cc 43 120

k kk       |                         kick
   h h |                             hat
       c        c    c    c    c   | castanet
                   w www-- w   w   | wow
                   L   l   r   R   | wow
                   q   a   z   x   | wow
You can:
  • send events to multiple output devices
  • send MIDI control change (CC) and program change events
  • set tempo per-pattern
  • add events as prefixes and suffixes (think fills, cues)
  • set unusual ticks-per-beat and beats-per-bar, and change them in the next pattern
  • use as a JACK timebase master
  • send MIDI clock output to any devices (with per-device clock divisors)
Eventually you'll be able to:
  • set swing
  • change base tempo and swing values at runtime via MIDI CC
  • jump around in your song via MIDI CC
  • base note events on patterns + controller events (arpeggiator)
  • base note events on randomness

Full documentation can be found in the README. Also, see the videos below for capability demonstrations.

Source code can be cloned from here.

Questions and patches can go to the mailing list. Subscribe by sending a message to quincer-dev+subscribe@busted.systems. The searchable mailing list archive is here.

Quick Introduction

Advanced Features

Emit MIDI Clock