[opus] [Opus][RFC][FFT][Fixed-Point][NEON] NEON-Optimize

Jean-Marc Valin jmvalin at jmvalin.ca
Mon Jan 19 05:17:36 PST 2015


Hi Phil,

Opus has the following tests:
celt/tests/test_unit_dft.c
celt/tests/test_unit_mdct.c
I recommend running these with your FFT and comparing to what the
reference code gives.

Cheers,

	Jean-Marc


On 19/01/15 05:20 AM, Phil Wang wrote:
> Hi Jean-Marc,
> 
> I have implemented fixed-point FFT with 32-bit twiddles. Now I want to
> evaluate the accuracy, what method does Opus use?
> I use function implemented inside Ne10 to calculate SNR. Any comment?
> 
> |  size |    SNR (dB)  |
> |   16  | 82.558587 |
> |   32  | 83.530298 |
> |   60  | 80.292433 |
> |   64  | 82.752950 |
> | 120  | 79.625077 |
> | 128  | 83.091260 |
> | 240  | 79.555263 |
> | 256  | 82.470671 |
> | 480  | 79.741435 |
> | 512  | 82.675800 |
> | 900  | 79.098034 |
> | 960  | 79.737709 |
> 
> If Opus are using other method to evaluate the accuracy, can you kindly show
> me the path?
> 
> Best Regards,
> Phil Wang
> 
>> -----Original Message-----
>> From: Jean-Marc Valin [mailto:jmvalin at jmvalin.ca]
>> Sent: Tuesday, December 30, 2014 3:30 AM
>> To: Phil Wang; opus at xiph.org; Timothy B. Terriberry (tterribe at xiph.org)
>> Cc: Zhongwei Yao; Yang Zhang; Zhou (Joe) Yu; Steve Bannister
>> Subject: Re: [opus] [Opus][RFC][FFT][Fixed-Point][NEON] NEON-Optimize
>>
>> On 28/12/14 11:04 PM, Phil Wang wrote:
>>> It requires some extra effort if twiddles and input/output have
>>> different bit width.  Since Opus uses int32 for twiddles, we are going
>>> to do the same thing.
>>
>> Actually, the existing Opus code has 16-bit twiddles, mostly because it
> makes
>> it possible to use smulwb on ARMv5E. That being said, I agree that for
> Neon it
>> makes sense to use 32-bit twiddles since there's no 16x32 multiplier.
>>
>> Cheers,
>>
>> 	Jean-Marc
>>
>>>
>>>
>>> Thanks,
>>>
>>> Phil Wang
>>>
>>>
>>> -- IMPORTANT NOTICE: The contents of this email and any attachments
>>> are confidential and may also be privileged. If you are not the
>>> intended recipient, please notify the sender immediately and do not
>>> disclose the contents to any other person, use it for any purpose, or
>>> store or copy the information in any medium. Thank you.
>>>
>>> ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ,
>>> Registered in England & Wales, Company No: 2557590 ARM Holdings plc,
>>> Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in
>>> England & Wales, Company No: 2548782
>>>
>>>
>>> _______________________________________________
>>> opus mailing list
>>> opus at xiph.org
>>> http://lists.xiph.org/mailman/listinfo/opus
>>>
> 
> 
> 
> 


More information about the opus mailing list