extend default WFM bandwidth to 150kHz, allowing up to 200kHz
This commit is contained in:
parent
3273716706
commit
1b36baad88
@ -536,12 +536,12 @@ class dsp(object):
|
|||||||
# wideband fm has a much higher frequency deviation (75kHz).
|
# wideband fm has a much higher frequency deviation (75kHz).
|
||||||
# we cannot cover this if we immediately decimate to the sample rate the audio will have later on, so we need
|
# we cannot cover this if we immediately decimate to the sample rate the audio will have later on, so we need
|
||||||
# to compensate here.
|
# to compensate here.
|
||||||
# the factor of 5 is by experimentation only, with a minimum audio rate of 36kHz (enforced by the client)
|
# the factor of 6 is by experimentation only, with a minimum audio rate of 36kHz (enforced by the client)
|
||||||
# this allows us to cover at least +/- 80kHz of frequency spectrum (may be higher, but that's the worst case).
|
# this allows us to cover at least +/- 108kHz of frequency spectrum (may be higher, but that's the worst case).
|
||||||
# the correction factor is automatically compensated for by the secondary decimation stage, which comes
|
# the correction factor is automatically compensated for by the secondary decimation stage, which comes
|
||||||
# after the demodulator.
|
# after the demodulator.
|
||||||
if self.get_demodulator() == "wfm":
|
if self.get_demodulator() == "wfm":
|
||||||
correction = 5
|
correction = 6
|
||||||
while input_rate / (decimation + 1) >= output_rate * correction:
|
while input_rate / (decimation + 1) >= output_rate * correction:
|
||||||
decimation += 1
|
decimation += 1
|
||||||
fraction = float(input_rate / decimation) / output_rate
|
fraction = float(input_rate / decimation) / output_rate
|
||||||
|
@ -8,7 +8,7 @@ Filter.prototype.getLimits = function() {
|
|||||||
if (this.demodulator.get_secondary_demod() === 'pocsag') {
|
if (this.demodulator.get_secondary_demod() === 'pocsag') {
|
||||||
max_bw = 12500;
|
max_bw = 12500;
|
||||||
} else if (this.demodulator.get_modulation() === 'wfm') {
|
} else if (this.demodulator.get_modulation() === 'wfm') {
|
||||||
max_bw = 80000;
|
max_bw = 100000;
|
||||||
} else if (this.demodulator.get_modulation() === 'drm') {
|
} else if (this.demodulator.get_modulation() === 'drm') {
|
||||||
max_bw = 100000;
|
max_bw = 100000;
|
||||||
} else if (this.demodulator.get_secondary_demod() === 'packet') {
|
} else if (this.demodulator.get_secondary_demod() === 'packet') {
|
||||||
|
@ -54,7 +54,7 @@ class DigitalMode(Mode):
|
|||||||
class Modes(object):
|
class Modes(object):
|
||||||
mappings = [
|
mappings = [
|
||||||
AnalogMode("nfm", "FM", bandpass=Bandpass(-4000, 4000)),
|
AnalogMode("nfm", "FM", bandpass=Bandpass(-4000, 4000)),
|
||||||
AnalogMode("wfm", "WFM", bandpass=Bandpass(-50000, 50000)),
|
AnalogMode("wfm", "WFM", bandpass=Bandpass(-75000, 75000)),
|
||||||
AnalogMode("am", "AM", bandpass=Bandpass(-4000, 4000)),
|
AnalogMode("am", "AM", bandpass=Bandpass(-4000, 4000)),
|
||||||
AnalogMode("lsb", "LSB", bandpass=Bandpass(-3000, -300)),
|
AnalogMode("lsb", "LSB", bandpass=Bandpass(-3000, -300)),
|
||||||
AnalogMode("usb", "USB", bandpass=Bandpass(300, 3000)),
|
AnalogMode("usb", "USB", bandpass=Bandpass(300, 3000)),
|
||||||
|
Loading…
Reference in New Issue
Block a user