Hi all,I'm a sporadic user of pskmail, software developer and ham radio op as well; I'm looking at the source code of fldigi because I'm interested in the pskr software modem implementation. Can someone explain (shortly) the method used for the 4-level softbit quantizer ? Or give a reference to find mathematics involved ?
... averageamp = decayavg(averageamp, sigamp, SQLDECAY); if (sigamp > 0 && averageamp > 0) { softamp = clamp( averageamp / sigamp, 1.0, 1e6); } else { softamp = 1; // arbritary number (50% impact) } // Compute values between -128 and +127 for phase value only if (phase > M_PI) {softangle = (127 - (((2 * M_PI - phase) / M_PI) * (double) 255));
} else { softangle = (127 - ((phase / M_PI) * (double) 255)); } // Then apply impact of amplitude. Finally, re-centre on 127-128 // as the decoder needs values between 0-255 softbit = (unsigned char) ((softangle / (1 + softamp)) - 127); ... many thanks in advance Stefano ik2yxt.