0
1
mirror of https://github.com/radio95-rnt/fm95.git synced 2026-02-26 19:23:51 +01:00
Files
fm95/dsp/fm_modulator.h

23 lines
555 B
C

#pragma once
#include "oscillator.h"
typedef struct
{
float frequency;
float deviation;
float osc_phase;
float sample_rate;
} FMModulator;
void init_fm_modulator(FMModulator *fm, float frequency, float deviation, float sample_rate);
float modulate_fm(FMModulator *fm, float sample);
typedef struct
{
float deviation;
Oscillator* osc;
} RefrencedFMModulator;
void init_refrenced_fm_modulator(RefrencedFMModulator *fm, Oscillator *osc, float deviation);
float refrenced_modulate_fm(RefrencedFMModulator *fm, float sample, float phase_multiplier);