If your application records audio at a specified sample rate, be aware
that some OEMs are faking it!  We have a piano tuning app that needs
to detect frequencies up to about 4200 Hz.  This requires sampling
audio at least twice that frequency, or 8400.  So we used one of the
"standard" audio sample rates of 22050.  Most devices we have tested
work fine.  But on the Acer Iconia  tablet something strange happens.
The calls to set up the AudioRecord at 22050 samples per second work
without error, and the frequency spectrum shows that it is indeed
returning 22050 samples for every second of audio.  But then we
started looking at the higher frequencies and found a frequency fold-
back point of 3690 Hz, just as if the sample rate were really 7380
Hz.  Our conclusion is that 7380 is the native audio record sample
rate for the Acer Iconia, but other sample rates are simulated by up-
sampling.  That is, certain samples are repeated in order to make 7380
samples do the job of 22050 samples.  This creates the fold-back
phenomenon where any frequency above 3690 shows up as a frequency
below 3690 by the same amount.  Other than running tests on real sound
I know of no way to programmatically verify that the requested sample
rate is being honored for real and not simulated by up-sampling.  (By
contrast the original Motorola Droid has not such fold-back behavior
and appears to return 22050 samples per second for real.)

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to