From 6a410b9a06d5995cf7575c55dbb9f61038c78b6d Mon Sep 17 00:00:00 2001 From: KubaPro010 Date: Wed, 1 Jan 2025 02:23:54 +0100 Subject: [PATCH] experiment --- src/ssb_stereo_coder.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ssb_stereo_coder.c b/src/ssb_stereo_coder.c index 792983b..2f538a2 100644 --- a/src/ssb_stereo_coder.c +++ b/src/ssb_stereo_coder.c @@ -151,7 +151,7 @@ int main() { uninterleave(input, left, right, BUFFER_SIZE*2); for (int i = 0; i < BUFFER_SIZE; i++) { - float sin38 = sinf(pilot_osc.phase*2); + float sin38 = sinf(pilot_osc.phase*2 + (PI/16)); float cos38 = cosf(pilot_osc.phase*2); // Stereo carrier should be a harmonic of the pilot which is in phase, best way to generate the harmonic is to multiply the pilot's phase by two, so it is mathematically impossible for them to not be in phase float pilot = get_oscillator_sin_sample(&pilot_osc); // This is after because if it was before then the stereo would be out of phase by one increment, so [GET STEREO] ([GET PILOT] [INCREMENT PHASE]) float l_in = left[i];