|
Sound Byte Libs 29c5ff3
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
|
V/Oct input component — calibrated pitch CV from ADC values. More...
Go to the source code of this file.
Classes | |
| struct | sbl::components::cv::VoctCalibration |
| Linear calibration parameters for V/Oct conversion. More... | |
| class | sbl::components::cv::VoctInput |
| V/Oct pitch CV input with smoothing and calibration. More... | |
Namespaces | |
| namespace | sbl |
| Root namespace for all Sound Byte Libs functionality. | |
| namespace | sbl::components |
| Mid-level functional components. | |
| namespace | sbl::components::cv |
| CV/gate input components. | |
V/Oct input component — calibrated pitch CV from ADC values.
VoctInput chains CvInput (EWMA smoothing) with a linear calibration to convert raw ADC values into musical pitch. The calibration maps ADC values to MIDI note numbers (semitones), then pitch tables convert to frequency, ratio, or phase increment.
Pipeline: ADC raw → CvInput (EWMA) → calibration (scale + offset) → semitones ↓ phase_increment ← frequency ← pitch tables
Usage: sbl::components::cv::VoctInput voct; voct.update(raw_adc_value); float freq = voct.frequency(); // Hz uint32_t inc = voct.phase_increment(48000.0f);
Definition in file voct.hpp.