# Velocity

> Scale, offset, floor or fix note-on velocities.

Source: https://docs.tune.toys/nodes/midi.velocity/

Velocity scales, offsets, floors or fixes the velocity of note-on messages.

## What it does

Incoming velocity is multiplied by Scale (0 to 2), then Offset (a fraction of full velocity, -1 to 1) is added, and the result is raised to at least Floor. Turn Fixed on to replace every velocity with Fixed value instead. Only note-on velocity is changed; other messages pass through.

## When to use it

Use it to make a controller play louder or softer, to even out dynamics with a floor, or to get a constant velocity from an instrument that responds to it.

## Ports

<!-- ports:start -->

| Port   | Direction | Signal | Lanes            |
| ------ | --------- | ------ | ---------------- |
| `midi` | Input     | MIDI   | 16 MIDI channels |
| `midi` | Output    | MIDI   | 16 MIDI channels |

<!-- ports:end -->

## Parameters

<!-- parameters:start -->

| Parameter     | Label       | Range   | Default | Unit | Scale  | Notes                                                                      |
| ------------- | ----------- | ------- | ------- | ---- | ------ | -------------------------------------------------------------------------- |
| `scale`       | Scale       | 0 to 2  | 1       |      | linear | Multiplier on incoming velocity.                                           |
| `offset`      | Offset      | -1 to 1 | 0       |      | linear | Added after scaling, as a fraction of full velocity.                       |
| `floor`       | Floor       | 0 to 1  | 0       |      | linear | Minimum velocity of any note-on.                                           |
| `fixed`       | Fixed       | 0 to 1  | 0       |      | linear | Replace every velocity with Fixed value. Choices: 0 Follow input, 1 Fixed. |
| `fixed_value` | Fixed value | 0 to 1  | 0.8     |      | linear | Velocity used when Fixed is on. Shown when `fixed` is 1.                   |

<!-- parameters:end -->

### Scale (`scale`)

Multiplier on incoming velocity, 0 to 2.

### Offset (`offset`)

Added after scaling, as a fraction of full velocity, -1 to 1.

### Floor (`floor`)

The minimum velocity of any note-on, 0 to 1.

### Fixed (`fixed`)

Follow input leaves velocities to the controls above; Fixed replaces every velocity with Fixed value. A discrete choice.

### Fixed value (`fixed_value`)

The velocity used when Fixed is on, 0 to 1.

## Tips

- Floor keeps soft notes audible without changing loud ones.
- The piano widget's velocity depends on where a key is pressed, so Fixed makes it even.

## See also

[Transpose](https://docs.tune.toys/nodes/midi.transpose/), [MIDI channel](https://docs.tune.toys/nodes/midi.channel/), [Polyphonic instrument](https://docs.tune.toys/nodes/std.poly/), [MIDI](https://docs.tune.toys/concepts/midi/).
