PASS: 16-verify-tx-consistent.test
FAIL: 17-verify-tx-consistent-float.test
The FAIL is due inconsistency in the .wav header (only for floats)
constructed by libsndfile -- its different every wall-clock second.
Even just a bare header (no audio samples) shows the effect:
minimodem --float-samples --tx 1000 -f /tmp/xx.wav </dev/null
sum -r /tmp/xx.wav
sleep 1
minimodem --float-samples --tx 1000 -f /tmp/xx.wav </dev/null
sum -r /tmp/xx.wav
This might also relate to:
https://github.com/kamalmostafa/minimodem/issues/24
Emit a preamble of 16 (hardcoded) sync-bytes if --sync-byte is
specified with --tx mode. This makes --tx SAME emit the required
preamble of 16 0xAB's automatically. So --rx SAME now directly
decodes the output of --tx SAME without needing to manually inject
the preamble byte(s), simplifying the test case.
Thanks to Harold Giddings, for reporting the issue.
Now, minimodem prints all received bytes without isprint() filtering,
unless --print-filter is specified. Allows for binary file transfers
and multibyte characters.
Computes SNR confidence value, where "signal" is the magnitude of the FSK
driven frequency, and "noise" is the magnitude of the non-driven frequency.
(Also includes unused algo #4 code, which may not compile anymore.)