mirror of
https://github.com/romanz/amodem.git
synced 2026-02-24 16:18:12 +08:00
save demodulator errors for debugging.
This commit is contained in:
8
recv.py
8
recv.py
@@ -114,6 +114,11 @@ def train_receiver(symbols, freqs):
|
||||
def demodulate(symbols, filters, freqs):
|
||||
streams = []
|
||||
symbol_list = []
|
||||
errors = {}
|
||||
|
||||
def error_handler(received, decoded, freq):
|
||||
errlist = errors.setdefault(freq, [])
|
||||
errlist.append(received - decoded)
|
||||
|
||||
generators = split(symbols, n=len(freqs))
|
||||
for freq, S in zip(freqs, generators):
|
||||
@@ -124,7 +129,8 @@ def demodulate(symbols, filters, freqs):
|
||||
S = icapture(S, result=equalized)
|
||||
symbol_list.append(equalized)
|
||||
|
||||
bits = sigproc.modulator.decode(S) # list of bit tuples
|
||||
freq_handler = functools.partial(error_handler, freq=freq)
|
||||
bits = sigproc.modulator.decode(S, freq_handler) # list of bit tuples
|
||||
streams.append(bits) # stream per frequency
|
||||
|
||||
log.info('Demodulation started')
|
||||
|
||||
Reference in New Issue
Block a user