For those interested:
in order to get JT9-2, JT9-5 and JT9-10 signals decoded with a JT9 decoder (from the WSJT-X suite), the JT9-2, JT9-5, JT9-10 audio is "speeded up" to JT9-1. During the process the signal is also averaged (otherwise ther would be no S/N improvement).
In the initial versions of SlowJT9 the ratios were integer values: 2 for JT9-2 anf 5 for JT9-5, making averaging very simple.
In SlowJT9 v0.9.10 however the original parameters for JT9-2, JT9-5 and JT9-10 are used, resulting in some non-integer conversion rates: 2.2222 (15360/6912) for JT9-2 and 5.9259 (40960/6912) for JT9-5.
So, how to average with for example each 2.2222 incoming samples are converted to 1 outgoing sample?
Not finding relevant information about this on the web, I did it quite straigh forward:
Assuming I1, I2, I3, I4, ... are the incoming JT9-2 samples and O1, O2, O3, O4, ... are the outgoing JT9(-1) samples
O1 = (I1+I2+0.222*I3)/2.222
O2 = (0.778*I3+I4+0.444*I5)/2.222
O3 = (0.556*I5+I6+0.667*I7)/2.222
O4 = (0.333*I7+I8+0.889*I9)/2.222
and so on.
I am by no means sure that this is the best way to average for non-integer conversion rates (it was just the best I could think of), so any suggestion to do this better is welcome.
73, Rik ON7YD - OR7T
|