On 12/5/19 11:22 PM, Mohan Prasath Ramamoorthy wrote:
Dear All,
We are working on external modules of microphone and speaker and we are using the kernel version 3.10.96
wow, that is one ancient kernel EOL'ed in 2017...
We are recording with commands like arecord and aplay for recording and playback respectively.
While doing the below experiments we could able to observe an issue as below,
With only recording and not playback we haven't faced any issues.
With only playback and not recording we haven't faced any issues.
By starting an infinite recording in the background and by doing a
playback of the audio file(30seconds, the sampling rate of 22050, the channel is stereo), after some iterations, we are facing a below error and we could not able to listen to the audio.
Error: aplay: pcm_write:1940: write error: Input/output error
Below are the respective commands for recording and playback,
- arecord -D hw:0,0 -c 2 -f s16_le -r 8000 /home/ubuntu/mic_testing.wav &
- aplay -D hw:0,3 audio_22k_c2.wav
But when the issues come, we just stopped recording and restarted the recording in the background. After this, the playback is working fine.
Also, during the issue came, we have checked for the below properties,
- I2S has been enabled. Checked under the file:
/sys/kernel/debug/clock/clock_tree 2. Driver callbacks have been called. (Checked with the kernel logs[dmesg])
We would like to know the reason behind this error.?
Sounds typical of an interference between the playback and record programming flows, e.g. when changing a shared register. Not all I2S tolerate dynamic changes from RX or TX only to full-duplex.