In Reply to: RE: Converting DSD to PCM posted by dtc on August 5, 2015 at 14:34:14:
They +1.0 and -1.0 are floating point numbers. Consider them to be, for all practical purposes, real numbers. When you are done with the filtering you will have a bunch of real numbers in the range of -1.0 to +1.0 (after possibly having to multiply by a scale). Then you have to convert these numbers into fixed point if you are going to send them to a fixed point DAC. (Or the operating system may do this for you.) If you want 16 bit numbers you would multiply by 16383 to get a number in the range of -16383 to +16383 and then convert this sign magnitude representation to a 2's complement number, which is what DACs are going to accept. The numbers for 24 bit would be -8388607 to +8388607. This is all basic computer arithmetic.
The filtering does the necessary averaging. (Averaging is just a form of filtering.) After you are done the filtering, etc., to downsample to 176.4 you take every 16th filtered result and discard the rest. This process is called decimation. Obviously, if you are clever you don't have to calculate the numbers that you are going to throw out.
Tony Lauck
"Diversity is the law of nature; no two entities in this universe are uniform." - P.R. Sarkar
This post is made possible by the generous support of people like you and our sponsors:
Follow Ups
- RE: Converting DSD to PCM - Tony Lauck 08/5/1515:45:29 08/5/15 (4)
- RE: Converting DSD to PCM - dtc 18:00:56 08/5/15 (3)
- RE: Converting DSD to PCM - Tony Lauck 18:27:34 08/5/15 (2)
- RE: Converting DSD to PCM - dtc 18:56:08 08/5/15 (1)
- RE: Converting DSD to PCM - Tony Lauck 19:45:20 08/5/15 (0)