I understand current cell phones use digital communications. Given that this industry brings in billions of dollars each year, there is much incentive to get the best performance possible. So what method of reconstructing an audio signal from discrete samples is normally used in a good cell phone these days? It seems there must be methods that work better than the ones I read about in text/reference books.
-
$\begingroup$ Strictly speaking this question requires an answer from someone who indeed has an access to standards (definitions and implementations) But, nowadays an observer can make the following deduction that as today's mobile communications market (4G,5G etc) is providing video streaming to its users, it seems they don't have a bandwidth restriction as severe as previous generations. Eventhough a minimum for speech is always the best choice, they seem to be concentrated on other features... $\endgroup$– Fat32May 28, 2016 at 19:09
-
$\begingroup$ @Fat32, let me put it this way. I think at one time, there was an incentive to squeeze every bit of performance from a realitively small number of samples. Wouldn't that Have been the case in the early days of digital music and/or digital cell phones? All that aside, I want to know what is/are the best algorithms for signal reconstruction. $\endgroup$– Ted ErsekMay 28, 2016 at 19:50
-
$\begingroup$ you are right... It was so, and I hope it is still so... $\endgroup$– Fat32May 28, 2016 at 20:02
-
$\begingroup$ @TedErsek I would like to point out that the purpose of a DAC in a cell phone is arguably not to get out the "best performance possible". The components such as the loudspeaker and the microphone distort the signal far more than any DAC would (arguably). It would be wasteful to use a state of an art DAC on a cellphone. $\endgroup$– DoleMay 29, 2016 at 18:06
-
$\begingroup$ @Dole, I think the industry strives to make cell phones and monthly bills as affordable as possible while also having good audio quality. They also want to make they cell phones small. Hence, the microphones and speakers are no better than necessary. Also, if it were not for cleaver compression, and DAC algorithms monthly $\endgroup$– Ted ErsekMay 30, 2016 at 12:57
2 Answers
Some recent cell phone models use something like a Cirrus Logic CS42xx series audio IO chip, which seems to use a digital polyphase interpolation filter, a sigma delta modulator, followed by a switched capacitor DAC and low-pass filter.
Sinc interpolation (or, given finite hardware, a polyphase FIR kernel similar to a windowed Sinc) is one high quality method of reconstruction from bandlimited samples.
But reconstruction isn't the main issue with respect to audio quality. Quality or fidelity is more likely constrained by the audio data compression algorithm used (or required by standardization), and how much spectrum bandwidth is allocated by the comunications standard and regulations.
-
2$\begingroup$ so, Ted, as hotpaw says here, the interpolation state-of-the-art is going to be something that looks like a windowed-sinc $$ x(t) = \sum_{n} x[n] \cdot h\left(t - \frac{n}{f_\text{s}} \right) $$ where $$h(t) = w(t) \cdot \text{sinc}\left(f_\text{s} t \right)$$. $w(t)$ might be a Kaiser window with $\beta \approx 5$ and with, say, 32 samples in the summation. that's real clean and well defined. and the real issue about audio quality in digital communications is the compression and expansion. $\endgroup$ May 28, 2016 at 23:14
The general mathematical framework for interpolation is approximation theory. I guess the most important result is that for signals with bandwidth limitation, you can have perfect reconstruction via $sinc(\cdot)$ convolution; the famous sampling theorem, that has been mentioned here several times. I guess it is equally well-known that it is not really possible to implement this in practice, since it requires the entire signal before interpolation. The goal of any practical interpolation is to approximate the $sinc(\cdot)$ convolution, and to do so in an efficient manner. Good practical interpolation that I know about:
- FIR filters: Computationally effective, especially when using the polyphase implementation, which reduces the computational complexity.
- Splines: Any number of types of splines can interpolate a signal to an arbitrary precision by increasing the order. I seem to remember that the basis-function for B-splines actually converges to $sinc(\cdot)$ if the order goes to infinity. However, even a cubic spline provides a pretty good approximation to the $sinc(\cdot)$ function. A problem using splines on a stream is the choice of boundary conditions.
- Convolution interpolation: This is similar to splines, but the kernel, or basis function, used in the convolution is chosen differently. I known cubic convolution has been applied in medical imaging.
These are to my knowledge the best practical interpolation methods. When you get to the physical layer of your phone, the DAC, there additional restrictions. Almost all DACs these days use can be modeled using zero-order-hold (ZOH), which is a special case of spline interpolation. It has the Laplace transform $$ \text{ZOH}(s) = \frac{1 - \text{e}^{-\tau_{s} s}}{\tau_{s} s} $$ which has a low-pass characteristic. Additionally, you would add an analog low-pass filter to the output as well. Here you a stuck with the standard topologies (Sallen-Key, twin-T, state variable, ...) and pole-placement patterns (Bessel, Butterworth, Chebychev, ...). However, there does exists some exotic DACs that are not based on on/off of switching elements, but implements higher-order spline interpolation directly using analog integrators.
Now, do you really need a reconstruction filter? For audio, some people argue that you do not; the reason being that the repeated spectra that you are trying to remove are inaudible to the human ear -- the only reason would be to reduce the additional power consumption needed when trying to reproduce inaudible high-frequency content, and to limit any non-linear behavior such a slewing and saturations that might occur...