Musical-division conversion and fixed-state delay-time transitions. More...
#include <pulp/timebase/beat_division.hpp>#include <pulp/timebase/compiled_tempo_map.hpp>#include <algorithm>#include <cmath>#include <cstddef>#include <cstdint>#include <limits>Go to the source code of this file.
Classes | |
| struct | pulp::signal::TempoDelayResult |
| class | pulp::signal::TempoDelayTime |
| Fixed-state controller for deterministic delay read-time modulation. More... | |
Namespaces | |
| namespace | pulp |
| namespace | pulp::signal |
Enumerations | |
| enum class | pulp::signal::TempoDelayError : std::uint8_t { pulp::signal::none , pulp::signal::not_prepared , pulp::signal::invalid_division , pulp::signal::invalid_tempo , pulp::signal::invalid_sample_rate , pulp::signal::invalid_delay , pulp::signal::out_of_range } |
Functions | |
| TempoDelayResult | pulp::signal::tempo_delay_samples (timebase::BeatDivision division, double beats_per_minute, double sample_rate) noexcept |
| Convert an exact persisted musical division to a fractional delay length. | |
Variables | |
| constexpr double | pulp::signal::kMinimumTempoDelayBpm = timebase::kMinimumCompiledTempoBpm |
| These bounds intentionally match TempoMap / CompiledTempoMap: a delay synchronized to a transport must accept exactly the tempo and sample-rate domain that the transport can compile. | |
| constexpr double | pulp::signal::kMaximumTempoDelayBpm = timebase::kMaximumCompiledTempoBpm |
| constexpr double | pulp::signal::kMaximumTempoDelaySampleRate |
Musical-division conversion and fixed-state delay-time transitions.