GNU Radio for Audio DSP
GNU Radio project simplifies building DSP systems, even if they’re not Software Defined Radios. This month, Ed interfaces a pair of microphones with a GNU Radio flowgraph and shows how to aim the mic response around a meeting room.
Topics Discussed
How to interface a pair of microphones with a GNU Radio flowgraphHow to synchronize the audio inputsHow to understand the geometry behind a simple beamsteering receiver
Tech Used
Sound Tech CM-1000 USB and analog microphone setQC-20 Noise-cancelling earphonesIntel EdisonGNU Radio
We recently bought a new car sporting an audio system with a USB jack and a built-in MP3 player. I dumped an assortment of traveling music onto a USB drive, plugged it in, and discovered that the system’s Treble control had absolutely no effect on what I heard, even while sitting in a quiet garage. Unfortunately, the problem was all in my head, not the audio system: these days, my world has no treble and very little midrange.
That’s a continuation of the situation I described in my August and October 2007 columns: the pure-analog treble boost amplifier I built improved several years of concerts, even though the bulky package wasn’t practical for daily use and, alas, became less useful as my treble response continued to drop.
One member of the local hackerspace, who works on weapons-grade RF signal analysis equipment using GNU Radio as part of his day job, suggested that GNU Radio could produce an audio-frequency DSP “circuit” that would run on low-end hardware. Based on that, I decided to see what stock x86-based hardware and DSP software could accomplish, rather than build another pure analog “hearing aid.”
In this column, I’ll describe how I characterized a USB microphone and produced a simple audio beamsteering application with the GNU Radio’s DSP blocks, defining the flowgraphs with the GNU Radio Companion GUI. Even though the hardware is much less portable than my old analog amplifier, some ear