X

Tech Talk: How The Superpowered SDK Will Solve Android Audio

In the pockets of some 3 billion users worldwide, you’ll find an object that represents their choice of sides in a complex, years-long war where both sides are alike enough that it’s understandable when somebody switches sides, but so different that they can never reconcile. The war will likely continue for the foreseeable future, on a number of new fronts, with neither side ever gaining any ground. Although one may be greater than the other in number, raw numbers don’t tell the full story. I’m talking, of course, about Android and iOS smartphones. Each ecosystem has its advantages and disadvantages, and most times, talking to an owner on one side of the fence will reveal that they may have been exposed to the other side at one point and found themselves becoming fiercely loyal to their side. One of the reasons for that division is the way that Android handles audio.

While Android users treasure their open ecosystem, lovers of Google’s OS who happen to be audiophiles or musicians can tell you that something is seriously wrong. Due to a jitter of sorts in the way audio handling has always been coded, stemming from the fact that it’s run through a Java-based backend, Android features serious latency issues that make all but the most basic audio tasks extremely difficult, if not impossible. On top of that, USB audio and MIDI audio suffer from issues that can make it challenging just getting apps and hardware to run, let alone run well and produce good sound. While the audio handling has been improved in a big way as of Android 6.0 Marshmallow, the issue still persists, albeit in a much lesser form, leaving Apple fans to run apps like Garageband and mix, master and release music with impunity, while Android fans struggle to get D.A.C. equipment working acceptably on anything but the latest hardware and software.

A new SDK, or software development kit, on the market, called Superpowered, offers to fix this issue by taking over the handling of USB and MIDI audio on Android, normally routed through Java to the Android Run Time, and putting the audio through its custom, tailor-made code stack. Signal will pass from a connected audio device to a custom made software-side USB host controller, where it’s routed away from the standard Android channels. The signal begins its journey on Superpowered’s ecosystem at that point, going from there to visit a specially made Superpowered core that slices and dices the audio into bits that can be processed and edited by the software, rather than being allowed straight through as it is in Android’s native implementation. That’s where it’s passed on to a custom Linux backend where the various bits and bobs of the Superpowered application and system are applied, then the signal is put back through the Superpowered core for reassembly, then routed back to the user-facing application. Obviously, the process happens in reverse when the application finishes processing the audio and it’s ready to head to the output channel. The stack implements support for 24 and 32 bit audio, as well as a number of fixes and compatibility with multiple simultaneous devices. The Superpowered stack skips completely over Android’s native Java-based audio routing system, cutting out the jitter and delay normally seen with pro-level audio on Android. The SDK also allows Android devices to record at just about any sample rate and implement a number of low-level hardware controls that would not otherwise be possible.

With the improvements to USB and MIDI audio made possible by the Superpowered SDK, Android suddenly becomes just as capable as iOS when it comes to recording and mastering music, as well as live performances. Low-latency, high-quality audio available with almost any USB or MIDI device could allow DJs, indie rockers and wedding singers to use the phone they carry every day as their studio and performance rig, so long as they have the correct adapters on hand. Aspiring musicians will find it much easier to overlay tracks, listen to one track while recording and even mix tracks in real time through multiple input devices; it even becomes possible to hook an entire band up to a single Android device, allowing just about any stage show to use a USB hub and a fairly modern Android device to run the show’s audio. Naturally, this also means that the kinds of bands who only really jive when they play together can now record on one of their members’ phones. The SDK also brings compatibility with USB and MIDI audio equipment to any device running Android 4.4 Kit Kat and up, on top of the usual crop of Marshmallow devices. The SDK is available through the source link and can also be implemented on OSX, tvOS and iOS, though the greatest difference will obviously be noticed on an Android device. If you happen to be a music buff with some technological knowledge and an Android device, a developer who deals with audio, or both, head through the source link and give the SDK a download. Keep in mind, it requires a free registration to the site, which will net you a confirmation email.