Streaming pitch-family mechanism for one sampler voice. More...
#include <sample_heritage_pitch.hpp>
Public Member Functions | |
| SampleHeritagePitchProcessor ()=default | |
| SampleHeritagePitchProcessor (const SampleHeritagePitchProcessor &)=delete | |
| SampleHeritagePitchProcessor & | operator= (const SampleHeritagePitchProcessor &)=delete |
| SampleHeritagePitchProcessor (SampleHeritagePitchProcessor &&)=delete | |
| SampleHeritagePitchProcessor & | operator= (SampleHeritagePitchProcessor &&)=delete |
| SampleHeritagePitchStatus | prepare (SampleHeritagePitchFamily family, double factor, std::size_t channel_count) noexcept |
| void | release () noexcept |
| void | reset () noexcept |
| bool | prepared () const noexcept |
| bool | exact_bypass () const noexcept |
| bool | fixed_clock_processing () const noexcept |
| SampleHeritagePitchFamily | family () const noexcept |
| double | factor () const noexcept |
| SampleHeritagePitchStatus | set_factor (double factor) noexcept |
| Updates note pitch without reallocating or discontinuously resetting the source cursor. | |
| double | machine_clock_multiplier () const noexcept |
| Multiplier applied to the voice machine clock. | |
| double | source_frames_per_machine_frame () const noexcept |
| Source advance per fixed-rate machine frame. | |
| SampleHeritagePitchPlan | plan (std::size_t output_frames) const noexcept |
| SampleHeritagePitchStatus | process (const BufferView< const float > &input, BufferView< float > output) noexcept |
Static Public Attributes | |
| static constexpr double | kMinimumFactor = 0.015625 |
| static constexpr double | kMaximumFactor = 64.0 |
Streaming pitch-family mechanism for one sampler voice.
Variable-clock playback changes the rate of the machine clock and therefore copies machine-domain samples without interpolation. Drop/repeat and early linear playback keep the machine clock fixed and move through the source at the requested factor using zero-order selection or linear interpolation. The profile clock ratio remains an independent multiplier in either route; factor is the note/source pitch factor supplied by the sampler at runtime. prepare() allocates the bounded two-frame history used by fixed-clock modes; plan() and process() do not allocate.
|
default |
|
delete |
|
delete |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Multiplier applied to the voice machine clock.
|
delete |
|
delete |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Updates note pitch without reallocating or discontinuously resetting the source cursor.
A fresh/reset factor-one fixed-clock processor takes the exact copy path; after another factor has displaced the cursor, factor one continues through the indexed path until reset.
|
inlinenoexcept |
Source advance per fixed-rate machine frame.
|
staticconstexpr |
|
staticconstexpr |