| Agreed - and after quantization nothing reproduces the signal before quantization. So claiming Nyquist-Shannon proves the OP wrong is incorrect. >It's then passed through an ADC and stored as a sine wave. After an ADC it is not stored as a sine wave. It's stored as quantized values, thus the 'D' in Analog-to-Digital-Converter. >cause no one is mastering inaudible square waves on a reel for kitsch value Pretty much all audio processing is now done digitally, which is the same as square waves - each jump in discrete digital value is a step function. When you push it through properly engineered output devices the squareness is smoothed somewhat, but still has frequency ringing because it is square edged. Take a good speaker, take something that can grab audio spectrum far beyond audible, and look at the output. There is stuff far outside human hearing coming from the speaker because of these square waves. Naively, this is because the Fourier transform of the square waves have high frequency ringing, and this is because the playback has sharp edges. (See this [1] for some related info for example). Also Nyquist-Shannon is about frequencies, not about amplitudes, which are also quantized. Physical devices making sound have a (up to quantum level) continuum of possible amplitudes. Quantization necessarily loses this forever. For example, take A0, the lowest standard piano note, freq ~27.5. Sample a pure sine wave at
60 hz, in 8 bit audio. Now record this tone going from no sound up to very loud, very smoothly, over some time. The 8-bit audio will necessarily have less smoothness to it, since it is 8 bit audio. It perfectly matched your Nyquist-Shannon claim, yet it fails to reproduce what you hear. Take 16 bit audio - better. Take 32-bit or floating point audio, better again. And so on. I agree that really well engineered systems can push the errors outside human hearing, but to claim they reproduce the same signals is incorrect. The gist of this is: to get the most accurate reproduction of the original, merely sampling at 2x the top human freq is no where near state of the art. An counter-intuitive example: to get the best quality and most accurate output, one needs to add noise to the input. The reason is that due to quantization, if some input signal is between possible quantized output values, adding noise (usually Gaussian, of std dev ~sqrt(step size)) makes that signal trigger both high and low quantized values in proportion to the intermediate value, making the output playback the step square waves as close to approximating the original as possible. The entire field is full of stuff like this. For reference, I've worked on stuff like this on and off for decades, having written libraries used by others, designed high end audio simulation software (think raytracer for audio in physical settings to help design stadiums), written articles, and produced hardware in a company I own. I am quite familiar with all sorts of audio processing. [1] https://electronics.stackexchange.com/questions/156197/can-c... |
Maybe back in the 1980s on some of the early consumer digital equipment; but those problems were solved in the early 1990s by oversampling in the DAC, and then using some basic analog filtering far above the human hearing range.
IE, a consumer DAC will oversample a 44.1khz signal to (example) 705.6khz in the digital domain; and then use a very gentle analog lowpass filter to deal with the ultrasonic distortion. At that point the difference between the original analog signal and the one coming from the DAC is approximately as accurate as if there was no DAC in the first place. (Granted, some people can hear up to 27khz, which is why some people like 96khz sampling rates.)