Digital audio from a sound card

Click For Summary
SUMMARY

The discussion focuses on the process of audio programming and how sound cards handle audio signals. It establishes that audio signals are typically sampled in the time domain, where voltage levels are represented at discrete intervals as x[n]. The reconstruction of audio involves a Digital-to-Analog Converter (DAC) that outputs these samples, requiring filtering to smooth the output. Additionally, the use of Fast Fourier Transform (FFT) is noted in the context of lossy audio compression, where it aids in processing the sampled stream before decompression and D/A conversion.

PREREQUISITES
  • Understanding of Digital Signal Processing (DSP) concepts
  • Familiarity with Digital-to-Analog Converters (DAC)
  • Knowledge of Fast Fourier Transform (FFT) and its applications
  • Basic principles of audio sampling and reconstruction
NEXT STEPS
  • Research the role of Digital-to-Analog Converters (DAC) in audio output
  • Learn about filtering techniques used in audio signal processing
  • Explore the applications of Fast Fourier Transform (FFT) in audio compression
  • Study the principles of audio sampling rates and their impact on sound quality
USEFUL FOR

Audio programmers, sound engineers, and anyone interested in understanding the technical aspects of how sound cards process and reproduce audio signals.

FrankJ777
Messages
140
Reaction score
6
I would like to do some audio programming for a school project, but I'm not sure how a computer processes audio and reconstructs it in a sound card. I've had a signal processing course that covered standard DSP topics but I'm not sure when or how they are applied to acquire, store, and reproduce audio through a sound card. In trying to find a functional explanation I usually see it explained as sampling a time domain signal, storing the samples, and then reproducing audio wave in the time domain by using the sample to represent a voltage at discrete time intervals. But use of the FFT is always mentioned, but I'm not sure how it all fits together. So I have two "theories" about how it's accomplished.

a) A audio signal x(t) is sampled, which represents signal voltage levels at discrete time intervals x[n]. The time domain samples are stored in memory. Then the time domain samples are used to output a voltage signal by setting a voltage level to the value of the sample x[n] at time intervals of the sampling period.

b) A audio signal x(t) is sampled as before. The samples x[n] are then passed to an FFT then the frequency domain values X[k] are stored in memory. Reconstruction is accomplished by oscillators in the sound card which each oscillate at a discrete frequency (for time intervals of the sampling period) at the magnitude indicated by the value of the sample X[k].

Or, in other words. When you give data to a sound card to output audio, is your data a time domain representation of the signal where each successive data value represents the magnitude of the wave at a time interval x[n], or does the data you give sound card represent discrete frequency values X[k] at time intervals.

I know this question is verbose, but I think the easiest way for me to gain understanding is to explain what I think is going on as I understand, and let somebody else tell me where I'm looking at this wrong. I hope someone can straighten me out on this.

Thanks.
 
Engineering news on Phys.org
The typical setup is a). During the conversion from digital back to analog (D/A), you will also need some sort of filter to smooth out the steps in your output which occur at the sampling/reconstruction frequency.

If lossy audio (or video) compression are performed, an FFT (or a subset, usually) is performed on the sampled stream and then appropriate processing is performed. Decompression requires the inverse FFT and then you do the same D/A conversion as before.
 
Or, in other words. When you give data to a sound card to output audio, is your data a time domain representation of the signal where each successive data value represents the magnitude of the wave at a time interval x[n], or does the data you give sound card represent discrete frequency values X[k] at time intervals.

The sound card has a digital to analog converter in it and the outputs are generated at the same rate as they were sampled.
The outputs represent the instantaneous amplitude of the original sound and, after some filtering to get rid of components above human hearing, the result is presented to an audio amplifier.
 

Similar threads

  • · Replies 24 ·
Replies
24
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
Replies
7
Views
4K
  • · Replies 6 ·
Replies
6
Views
2K
Replies
17
Views
6K
  • · Replies 14 ·
Replies
14
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 14 ·
Replies
14
Views
6K
  • · Replies 14 ·
Replies
14
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K