Commit d585c1e1 authored by Prashant Laddha's avatar Prashant Laddha Committed by Mauro Carvalho Chehab

[media] vivid sdr: fix broken sine tone generated for sdr FM

FM (frequency modulated) signal for SDR is generated by varying the
phase, where phase variation is proportional to input signal. It is
seen that, the larger phase increments leads to discontinuities in
the signal recovered after demodulation. Reducing the extent of phase
variation with respect to input signal, equivalent to reducing the
modulation index.

Tested using FM receiver flow graph in gnuradio-companion.

Cc: Antti Palosaari <crope@iki.fi>
Signed-off-by: default avatarPrashant Laddha <prladdha@cisco.com>
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent 4e30a373
...@@ -454,7 +454,7 @@ void vivid_sdr_cap_process(struct vivid_dev *dev, struct vivid_buffer *buf) ...@@ -454,7 +454,7 @@ void vivid_sdr_cap_process(struct vivid_dev *dev, struct vivid_buffer *buf)
FIXP_2PI) >> (31 - FIXP_N); FIXP_2PI) >> (31 - FIXP_N);
dev->sdr_fixp_src_phase += src_phase_step; dev->sdr_fixp_src_phase += src_phase_step;
dev->sdr_fixp_mod_phase += mod_phase_step; dev->sdr_fixp_mod_phase += mod_phase_step / 4;
/* /*
* Transfer phases to [0 / 2xPI] in order to avoid variable * Transfer phases to [0 / 2xPI] in order to avoid variable
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment