Karya, built on Mon Jul 24 11:39:07 PDT 2017 (patch 33511aca01257b76b88de7c7a2763b7a965c084e)

Perform.Midi.Control

Contents

Description

Support for MIDI controls.

Synopsis

# Documentation

type PbRange = (Int, Int) Source #

Pitchbend range in tempered semitones below and above unity. The first integer should probably be negative.

Convert from a control to a function that creates its MIDI message.

True if the given control will be used by the MIDI performer. Takes a Score.Control because being a MIDI control is a precondition for conversion into Control.

True for controls that must have a channel to themselves. Midi controls are a subset of what I consider controls, since I include all variable note parameters.

Given a NoteNumber, return the midi note number and pitch bend amount to sound at the pitch.

## cc controls

This map is used by both input and outpt. On input, InputNote maps a midi cc to a symbolic control name, and on output, maps it back again. Of course it may very well be mapped to and from a higher level control name but the defaults are always available.

On output, the "standard" set of symbolic names are understood, but the low level cc## names work uniformly.

This will also be checked by control_constructor, so these are controls that every instrument will respond to. Of course it may override some of these names if it wishes.