Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::signal::drum::SubLayer Class Reference

A sine an octave below the body, gated by the body's own envelope. More...

#include <layers.hpp>

Public Member Functions

void prepare (double sample_rate)
void reset ()
void set_level (double level)
double level () const
void trigger ()
double process (double body_hz, double body_envelope)
 Next sample at half of body_hz, scaled by the body's envelope.

Detailed Description

A sine an octave below the body, gated by the body's own envelope.

This is a mastering layer rather than a synthesis one. It exists because the fundamental of a kick often sits where small speakers cannot reproduce it, and an octave-down sine gives the ear a second, lower reference that survives; it is gated by the body so it cannot outlast the note and turn into a drone.

RT contract: allocates nothing anywhere.

Member Function Documentation

◆ level()

double pulp::signal::drum::SubLayer::level ( ) const
inline

◆ prepare()

void pulp::signal::drum::SubLayer::prepare ( double sample_rate)
inline

◆ process()

double pulp::signal::drum::SubLayer::process ( double body_hz,
double body_envelope )
inline

Next sample at half of body_hz, scaled by the body's envelope.

◆ reset()

void pulp::signal::drum::SubLayer::reset ( )
inline

◆ set_level()

void pulp::signal::drum::SubLayer::set_level ( double level)
inline

◆ trigger()

void pulp::signal::drum::SubLayer::trigger ( )
inline

The documentation for this class was generated from the following file:
  • /home/runner/work/pulp/pulp/core/signal/include/pulp/signal/drum/layers.hpp