Menu

#72 Documenting constants in dsdpcm_constants.h

1.0.x
open
nobody
dsd (1) pcm (1)
5
2023-04-11
2023-04-08
Pier-Luc
No

Hello,

In the dsdpcm_constants.h file, the constants defined in there are not documented. Is there any documentation or publication somewhere explaining how these constants were calculated and defined?

For the array of 160 values (DSDFIR1_16_COEFS), I have been able to approach those values with a weighted sum of 8 cosines as defined here:
https://en.wikipedia.org/wiki/Window_function#Cosine-sum_windows
But I could not get to the exact values in your code.

The sum of the 160 values should be equal to 1<<28, but it is slightly more. Should all these values be reviewed?

Best regards.

Discussion

  • Maxim V.Anisiutkin

    All FIRs except PCMFIR4_147_160_COEFS were borrowed from Philips Audio Format Converter utility. PCMFIR2_2_COEFS and PCMFIR3_2_COEFS look like usual half band filters. Regarding DSDFIR1_8/16/64_COEFS I just don't know. Al least zeros/poles plots are unfamiliar for me. I decided to leave all "AS IS" to be kind of a reference point for other developers. Actually, Philips AFC is the source of all this stuff.

     
  • Pier-Luc

    Pier-Luc - 2023-04-11

    Great, thank you! I will take a look at that.

     

Anonymous
Anonymous

Add attachments
Cancel