We have been measuring the performance of our system with your ASRC and are finding a few discrepancies. First of all, the User Guide explains that "to leave headroom for down stream signal processing the ASRC output signal is attenuated by 2x". Our tests have shown that we are not getting 2x but closer to 4.5x attenuation out of the ASRC. This wouldn't be a big issue (as we just have a 4.5x multiplier after the ASRC) but we are seeing our noise floor being raised higher than expected (around 10 dB). IF we use a higher quality version of the ASRC (100 dB instead of 80 dB version) then we can see we get around 5 dB back but still not great (and even going higher to 120 dB and 140 dB versions there is no difference). However, we cannot use the higher quality version due to CPU processing constraints. Here are the parameters we are using:
dspc_asrc_48000_to_48000_8m_080db, ASRC_PHASELEN_28, Q31, block size = 48
After inputting a sine wave and writing it using dspc_asrc_write_input_Q31, we read dspc_asrc_read_output_linear_Q31 and find the output 4.5x (~13 dB) lower.
Have you seen this before? Please check our parameters and let us know if there is anything else we can try to get to the bottom of this.