Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::midi::NoteDelaySpec Struct Reference

MIDI note delay / echo. More...

#include <note_delay.hpp>

Public Member Functions

constexpr auto operator<=> (const NoteDelaySpec &) const =default

Public Attributes

NoteDelaySync sync = NoteDelaySync::Division
timebase::TickDuration interval {timebase::kTicksPerQuarter / 4}
std::int64_t milliseconds = 250
std::uint8_t repeats = 0
std::uint8_t gate_percent = 0
 Gate length for generated echoes as a percentage of their delay stride.
std::uint8_t velocity_decay_percent = 70
std::int8_t transpose_semitones = 0

Detailed Description

MIDI note delay / echo.

The authored note passes through untouched and each repeat is an additional scheduled note, so the kernel is a send rather than a replacement. A repeat carries a decayed velocity and an optional cumulative transposition.

repeats == 0 is the declared bypass: the stream passes through unchanged and the kernel owns nothing.

Member Function Documentation

◆ operator<=>()

auto pulp::midi::NoteDelaySpec::operator<=> ( const NoteDelaySpec & ) const
constexprdefault

Member Data Documentation

◆ gate_percent

std::uint8_t pulp::midi::NoteDelaySpec::gate_percent = 0

Gate length for generated echoes as a percentage of their delay stride.

Zero preserves the original source-held gate policy: the authored release determines each echo's length. Values 1..100 make the gate authorable and keep it independent of the source note's release.

◆ interval

timebase::TickDuration pulp::midi::NoteDelaySpec::interval {timebase::kTicksPerQuarter / 4}

◆ milliseconds

std::int64_t pulp::midi::NoteDelaySpec::milliseconds = 250

◆ repeats

std::uint8_t pulp::midi::NoteDelaySpec::repeats = 0

◆ sync

NoteDelaySync pulp::midi::NoteDelaySpec::sync = NoteDelaySync::Division

◆ transpose_semitones

std::int8_t pulp::midi::NoteDelaySpec::transpose_semitones = 0

◆ velocity_decay_percent

std::uint8_t pulp::midi::NoteDelaySpec::velocity_decay_percent = 70

The documentation for this struct was generated from the following file:
  • /home/runner/work/pulp/pulp/core/midi/include/pulp/midi/note_delay.hpp