I will apologise initially for my lack of knowledge compared to the rest of the community I have witnessed as I have been reading around trying to learn.
My base system is the HummingBoard-i2eX board http://www.solid-run.com/wp-content/uploads/2014/06/HuumingBoard-BlockDiagram.png
I have flashed the 4.4.2 Android image suuplied by SolidRun which I believe consists of the following components
- Based on Freescale kk-4.4.2-1.0.0-ga release
- Based on Kernel IMX 3.0.35
- SGTL5000 audio codec
I have been attempting to record quality audio using the analogue TRRS plug running under Android.
The application basically records a reference file played directly into the TRRS plug and then compares the degradation during transport, by comparing the captured recording to a locally stored exact copy of the original reference audio.
Audio quality rendered out is as expected. However the audio capture in, appears to have "flares", general noise, and it appears to have more samples than expected.
I was hoping I could ask for some advice on where/why this could be happening. Is it the codec, kernel, tinyalsa or have I simply missed some configurable options under tinyalsa ? The recording in the APK is through the HAL and attempting to record at 8000Hz, 16bit, mono.
I have attached the tinymix settings screenshot, the reference audio (ref) and the captured degraded audio showing the loss of quality (sgtl5000). I have also attached a comparison of the waveforms showing the extra length in the captured audio compared to the reference.
Please note this setup has worked consistently using the Nexus hardware (4 and 5) so the only new component is the HummingBoard.
I would really appreciate any thoughts, comments, ideas from the community
Please note this has also been posted at the SolidRun Forum: http://www.solid-run.com/community/topic2167.html
Original Attachment has been moved to: Wav-Files.7z.zip