I'm implementing DBPSK (differential binary phase-shift keying) over audio (44.1kHz sample-rate) using software. Eventually I'll use multiple audio frequencies at once, so I'm using FFTs and inverse FFTs.
As expected, as the window size (symbol length) gets smaller, ISI becomes more and more of a problem and the BER (bit error rate) increases.
It seems like using RRC (root-raised cosine) filters is an established way to reduce ISI.
If as part of my data transmission I send out a special known signal that can be detected, then presumably I can determine the impulse response of the channel and apply an inverse transformation to re-construct (ignoring noise) the original signal without multi-path distortion. Why is RRC useful if this transformation can be done?