Documentation Wiki rss-feed







The Player agent generates key presses on demand. Its output looks like a keygroup, which can be connected to an instrument, and it provides verbs to generate artificial key presses on that output.

The keypresses are generated with a simple pressure envelope which varies with the velocity of the key press. More sophisticated envelopes can be generated with the ahdsr agent.

The generated key presses are adequate to provide velocity information to ahdsr.

It is used (for example) to play notes from the arranger.



  • Name:


  • Input, Set
  • Type: Integer
  • Range: 1 to 10000
  • Default: 100

Configures the size of the virtual keyboard that is used by the player agent.

Controller Input

  • Name:

1775 125
controller output

  • Output
  • Type: Generic

The controller output generates geometry information as if it's a virtual keyboard with only one course and one physical row. The length of the courses and rows are determined by the size input port.

Pressure Output

  • Name:

128 125
pressure output

  • Output
  • Type: Number
  • Range: 0 to 1

The pressure output carries the pressure envelope of the generated key presses. It would normally be connected to the pressure input of an instrument.

Key Output

  • Name:

114 125
key output

  • Input, Set
  • Type: Key

The key output gives the key number of the generated notes. It would normally be connected to the key input of an instrument. Key presses are normally generated in course 1/column 1.



124 ? 24 1417 ? 187
note X with velocity X play
124 ? 24 1417 ? 233 ? 234 187
note X with velocity X for X second play

The 'play' verb is used to generate key presses, given a number and velocity. Optionally, a duration in seconds can be specified.

The generated note will have a pressure envelope which ramps up to a maximum value which depends on the velocity specified, at a rate which also depends on the velocity.


Before using the Belcanto examples below, make sure you have the desired Player Agent in the conversation using

8628 ? 1131
player X listen

where X is the number of the desired Audio Agent.

Playing notes

124 11 24 1417 11 187
note 1 with velocity 1 play
124 12 22 24 1417 11 22 22 233 22 33 17 15 234 187
note 2 0 with velocity 1 0 0 for 0 . 7 5 second play

See also