“Our biquad implementation on Hexagon DSP runs about twice as fast as on our previous implementation. It’s almost across the board -- most of our algorithms run twice as fast now, cycle for cycle.”
Chris Kyriakakis, CTO and Founder, Audyssey Laboratories Inc.
- Delivers studio-reference quality in consumer headphones through Hexagon™ DSP customization
- Allows Audyssey module to process all audio moving through device
- Expands addressable opportunity to millions of current and future mobile devices
- Makes corrections for acoustics and human perception available in Android build
In audio processing, which is more important: Reference or Preference?
Plenty of casual listeners favor Preference, switching on bass boost, loudness and other effects. But since 2005, Audyssey has been building a successful business around Reference – the way audio was intended to sound when it was professionally mixed. The company’s technology listens to how sound behaves when it leaves the loudspeakers and then fixes it.
Audyssey has licensed its technology to most home theater manufacturers, who ship its signature microphone and calibration kit with their receivers. Digital IMAX theaters use Audyssey to fix their acoustics, and the engineers at several automobile manufacturers use it to measure and pre-calibrate each car model automatically.
Then a mobile device OEM approached the company about optimizing audio in headphones connected to Snapdragon®-powered devices. Audyssey revisited its approach to calibration and prepared to enter the world of mobile.
Implementing Audio Algorithms on QDSP
“You can’t calibrate headphones the same way you can rooms, theaters and cars,” says Chris Kyriakakis, CTO and founder of Audyssey. “So we set up our equipment in music and film studios to capture the common sound characteristics of the best ones. We made a measurement system for hundreds of headphone models and created a profile of filters that brings each headphone to studio reference.”
The result is ExpertFit: an advanced audio processing engine and a database of hundreds of customized device profiles that account for acoustical characteristics and human perception. Audyssey first built it into an iOS music player app, then focused on porting it to QDSP to reap three benefits:
- Higher performance than on previous implementation
- Lower power consumption than running in software
- Ability to process all audio moving through the device, instead of just the music moving through the player app
Audyssey’s DSP team started working with Qualcomm® Hexagon™ SDK 1.0.0. “We develop audio APPI modules,” says Stephan Studer, VP of DSP and Software for Audyssey, “so we’ve used those headers, the associated GCC toolchains and the Hexagon simulator. Our internal processing is all fixed point, and we make good use of the assembly-optimized, mixed-precision Fast Fourier Transformation (FFT) included in the Hexagon SDK. The APPI sample projects helped us get going in the right direction.”
The engineers had to modify their own code to accommodate the Hexagon SDK, but with little disruption. “We have an internal abstraction layer for all the DSP kernels that worked very well for Hexagon,” continues Studer. “The intrinsics work well and the compiler does a fantastic job, so we were able to get optimized code very quickly. Now that many manufacturers are adopting Hexagon v5, we will switch from fixed point to floating point to get the dynamic range we want for our algorithms. It’s nice that we can solve our problems without too many hassles.”
Higher Performance, More-Efficient Implementation and New Relationships
Audyssey wasn’t surprised that its audio processing ran faster on QDSP than in software, but it was pleasantly surprised to see how much faster it ran compared to other hardware. The zero write-back delay on QDSP means that many audio-type algorithms in Audyssey’s optimization, such as smoothers, biquads and other filters with loop-carried dependencies, run about twice as fast as on other implementations.
Accustomed to working with traditional DSPs in the world of home theater and car, Audyssey engineers thought, “If it works there, why change it?” But the process of optimizing for QDSP also allowed them to re-examine and improve individual blocks of processing like its filtering and limiter blocks. Since working on QDSP, a platform that allows extensive customization, they now have a much more efficient implementation of ExpertFit.
Studer’s advice for audio developers who want to take advantage of QDSP? “You can trust the intrinsics and the tools,” he says. “Audyssey has always used high-fidelity processing: 32-bit float if possible, but 32-bit fixed point when required. The QDSP provides a nice range of mixed-precision elements so that you can always optimize the performance vs. precision tradeoff for the application.”
Also, Audyssey’s business relationship with Qualcomm Developer Network is deepening. “Things are just getting started,” says Kyriakakis. “We’ve been named on QDSP as an approved developer. And because of our success with auto manufacturers we have been introduced to people in Qualcomm Technologies, Inc., who work in that sector.”
It took Audyssey’s engineers about a month and a half to get to proof of concept of their audio processing technology on QDSP. Then they spent two to three months optimizing with the Hexagon SDK to get to lean code.Think about how much you and your team could get done in that amount of time and find out more about optimizing your algorithms with the Hexagon SDK.