I'm a sound designer and I'm interested in using/simulating that effect of DAB radio when you have a low signal/interference, where voices become garbled, bubbling, burbling, broken up, etc. I wondered if someone could explain how the specific sonic qualities of that type of noise arise from digital radio algorithms?

My knowledge base is in digital signal processing, but not in any theory of radio codecs etc., so I'd find it really useful if you could give me an explanation that references general audio operations but not the deep technicalities of radio processes. For instance, my initial hypothesis is that it somehow arises out of extreme sudden jumps in bitrate: does that come close to the truth at all?

  • $\begingroup$ Hello and welcome to ham.stackexchange.com! Please consider taking the tour to get the most from the site. $\endgroup$ – rclocher3 Mar 12 '17 at 17:00

I'm not familiar with the DAB system in particular, but I can give you a conceptual answer which I think you will find useful.

In analog radio, things are straightforward. The lower the signal-to-noise ratio, the more the received signal deviates from the transmitted one, and that deviation from ideality in the RF signal results in some closely related deviation in the demodulated audio — the details depending on the modulation used. But, critically, this is on an instantaneous basis; that is, you could plot the original audio, modulated RF signal, signal received with noise, and demodulated audio on a single graph with a common time axis and there would be a consistent relationship. Therefore, since RF noise (that is not deliberate interference) is generally random from instant to instant, so is the effect on the audio.

In digital radio using an audio codec, this time relationship does not hold, so more complex effects are possible because the influence of noise can cause loss or modification of portions of the audio in a consistent way over a longer time interval.

(It would be possible to send a digital audio signal while preserving the time relationship — for example, using a DSD bitstream, or using a modulation with multiple bits per symbol to send an entire PCM sample value at once. However, since it is neither compressed nor error-corrected, it would be very inefficient.)

Generally speaking, an audio codec attempts to represent digital audio using fewer bits than would be taken by the numbers that are the original sample values. This necessarily makes some assumptions about the structure of the signal — that it contains something like voice or music. Therefore, if you put random or corrupted data into the decoding process, it is more likely to generate something that we would call “garble” rather than “noise”, just as a matter of statistics.

Also, digital radio usually makes use of error-detecting (and error-correcting) codes. This means that it is possible for the receiver to know when it is receiving corrupted data, and make a decision about what to do instead. This could be as simple as playing silence instead, but a better option for short interruptions is to proceed using the previous data. Since the decoder is in some sense synthesizing its output, it can just keep doing that, generating the same waveform for longer than intended (as opposed to literally reusing old samples, which creates an obvious glitch as anyone who's listened to a CD skip knows). This is another way you get garble — you're listening to realistic voice sounds being held for longer than makes sense.

Furthermore, according to Wikipedia, DAB uses an “unequal error protection (UEP)” scheme, which means that the error-correction is biased towards preserving aspects of the encoded audio considered more critical.

So your idea of “jumps in bitrate” is somewhat close to the actual situation: it's a change in how many good bits the decoder has available to it, and it compensating as best it can. And in particular, the use of UEP means that a weak signal is more similar to an intentionally lower bitrate than it would be without UEP.

  • $\begingroup$ What a full answer, thank you! This certainly pushes me to think in the right direction. What comes out of my radio sounds somewhat similar to short bursts of different kinds of noise fed into a vocoder. I uploaded an example for reference: soundcloud.com/ngaidakov/dabgarble Based on your answer, I'm guessing this has something to do with the radio receiving vocoded/LPC-style speech data in a separate packet to full frequency data. So the approach I'm going for just now is to vocode bursts of noise - but I wonder how I might narrow down the exact character of this noise... $\endgroup$ – Igid Mar 12 '17 at 22:50
  • $\begingroup$ @Igid Unfortunately, I don't actually know the details of audio codecs so I can't help you there. sound.stackexchange.com might like to help you with the "reproduce this effect" problem and there's also dsp.stackexchange.com though they don't seem to have a lot of answered codec-guts questions. $\endgroup$ – Kevin Reid AG6YO Mar 12 '17 at 23:00
  • $\begingroup$ Great idea. Posted: sound.stackexchange.com/questions/41095/… Thanks again! $\endgroup$ – Igid Mar 12 '17 at 23:35

There are many techniques under a general category called error concealment.

When a segment of streamed data is lost, the idea is to synthesize something that might plausibly belong or at least seem minimally objectionable. It might involve using repeated samples or interpolated modeling coefficients or other ad hock insertions of synthesized or made-up stuff. Likely, a lot of psychoperceptual research was done to select the exact concealment strategy used in any specific decoder.

This is all done completely after the radio chain, after the error correction logic communicates that decoding the next data packet(s) failed. It is then the audio systems responsibility to do something other than an annoying loud pop plus silence.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.