Build Your Own Real-Time Voice Changer with an Arduino and Audio Hacker Shield
If you’ve ever wanted to have your own voice changer, you can follow this guide to build one using an Arduino and an Audio Hacker Shield.
Voice changers are one of those rare gadgets that are just as prevalent in real life as they are in the movies. The caller in Scream used one to great effect, but they’re also used all the time in documentaries to hide a source’s identity. While they can add other effects, most voice changers at least lower the pitch of the speaker’s voice. If you’ve ever wanted to have your own voice changer, you can follow Nootropic Design’s guide to build one using an Arduino and an Audio Hacker Shield.
The “highness” or “lowness” of pitch is dependent on the frequency—a higher frequency results in a higher pitch, and vice versa. That means the simplest way to lower a pitch is to slow down the audio. The problem is that also introduces a slow motion effect, while simultaneously making it impossible to speak in real-time. More sophisticated DSP (Digital Signal Processing) is required to overcome those issues. Fortunately, that is exactly what the Nootropic Design Audio Hacker Arduino shield is designed for. With it, you can perform many DSP tasks in order to manipulate audio.
In this case, you use granular synthesis to break the audio up into small “grains.” Each of those grains is just a small section of the audio feed. Those individual grains are then slowed down in order to lower the pitch. To avoid the slow motion effect, the second grain is played before the first grain has finished, and so on. If you wanted to cut the pitch in half, then you would double the length of each grain and play it halfway through the preceding grain. The shorter the length of each grain, the higher the quality of the audio output. Longer grains result in a synthetic modulated sound, which you’ll hear in cheap voice changers.
Raising the pitch can be done by playing the grains for longer, but that can’t be done in real-time. Doing so would surpass your speech, and so that can only be done in recorded snippets. But if you’re interested in lowering your pitch—or just experimenting with digital signal processing in general—this is an inexpensive way to do it. Nootropic Design has provided the Arduino code to get you started with this project.