[opus] Opus decoding performance on ARM devices

Jean-Marc Valin jmvalin at jmvalin.ca
Thu Sep 4 10:40:24 PDT 2014


Hi Dan,

I suggest you try the code in git master, which has further ARM
optimizations compared to 1.1.

Cheers,

	Jean-Marc

On 04/09/14 08:00 AM, Dan Nilsson wrote:
> Hi everyone,
> 
> I have lately been evaluating the performance of various audio decoders,
> particularly for ARM devices (Cortex A8 / A9). The context is audio
> playback in a game engine, and thus decoding performance is of particular
> interest. 
> 
> Looking at Opus versus Vorbis on a Cortex A9 smartphone, the numbers look
> approximately like this:
> 
> Vorbis (tremolo decoder)
> 9.3 Mb PCM/s
> 
> Opus (libopus 1.1)
> 4.8 Mb PCM/s
> 
> The Opus audio is encoded approximately 120 kbps (and the vorbis file has
> higher bitrate). On ARM devices this far I get Opus decoded at about half
> the rate (and on x86 they are about on par).
> 
> Should I be able to squeeze more performance out of it?  Or do those
> numbers look about what should be expected? What I really want to know is
> if Opus could potentially run faster than Vorbis for equivalent audio.
> 
> I also must mention I am cross compiling with a different build system. I
> have attempted different sets of compilation defines. Latest run included
> the following:
> 
> OPUS_ARM_ASM
> OPUS_ARM_MAY_HAVE_NEON
> OPUS_ARM_MAY_HAVE_MEDIA
> OPUS_ARM_INLINE_EDSP
> OPUS_ARM_INLINE_NEON
> OPUS_ARM_INLINE_ASM
> FIXED_POINT
> OPUS_BUILD
> HAVE_LRINT
> HAVE_LRINTF
> 
> Thanks!
> Dan
> 
> _______________________________________________
> opus mailing list
> opus at xiph.org
> http://lists.xiph.org/mailman/listinfo/opus
> 


More information about the opus mailing list