Hi,
We have an issue with audio recording on i.MX6 Quad Core Platform. The hardware is made by our self (based on SABRESD board), and running Android 4.4.2 (BSP based on android_kk4.4.2_1.0.0-ga).
When the audio source frequency higher than 8 KHz, we can't record any data with our device.
We have confirmed that Microphone can received high frequency (at least 20 KHz) and audio chip (ALC5640) also can record from 8 KHz to 96 KHz data no problem (tested with audio EVB).
The audio chip vendor mention that the limitation may caused by freescale i.MX6, but we have not see any discussion about this topic on support forum.
Have any one have such experience to record high frequency audio on i.MX6 platform? Our requirement is to support 18 KHz~ 20 KHz audio record for audio payment solution.
Our hardware information list on below:
CPU: i.MX6 Quad Core
Audio: Realteak ALC5640-VB
Microphone: Digital Microphone
Android Version: android_kk4.4.2_1.0.0-ga
I2S clock
MCLK : 11289600Hz
BCLK : 1411200Hz
LRCLK: 44100Hz
Rick
7KHz source is okay
8KHz source is NG
已解决! 转到解答。
Update:
We have contact local FAE support, and found this issue not happened on Linux BSP, but fail on Android BSP.
We have another hardware platform (Intel SoC) with same audio chip (ALC5640), and running Android 4.4.4 on it. No problem with this test.
Rick
Hi Rick
I think this may be caused by ALC5640 internal filtering, because
it is difficult to imagine how linux may cause this filtering.
Suggest to check this with SDK, for narrow down possible reasons and
avoiding Linux OS side effects.
i.MX 6Series Platform SDK : Bare-metal SDK for the i.MX 6
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
Thanks for your response.
We have make sure all ALC5640 internal filtering have been disabled in our driver (also using i2c utility to read out register value when recording).
Is it possible to measure if record data have been filter and no output to i.MX6 (to monitor AUDn_RXD)?
Rick
Update:
We have contact local FAE support, and found this issue not happened on Linux BSP, but fail on Android BSP.
We have another hardware platform (Intel SoC) with same audio chip (ALC5640), and running Android 4.4.4 on it. No problem with this test.
Rick
We have this same issue of audio 7kHz working, but 8kHz not working. Did you find a solution for Android?
We are using an external A/V decoder -> I2S -> AUD6_RXD. This is when we have the problem.
Note that in Android, playing an audio file from a USB drive does not have this problem.