Crucial5473
New member
Hi,
I am using Teensy 4.1 + ICS43434 in my project. As ICS43434 is a 24-bit i2s mems mic, I am interested in how the 24bits are truncated. I quickly went through the audio library code (not every detail). It looks like the high 16bits of I2S register is used by the audio library:
Usually, the I2S "standard" is that the MSB of the left channel is valid on the second rising edge of BCLK after the falling edge of LRCLK. Similarly, the MSB of the right channel is valid on the second rising edge of BCLK after the rising edge of LRCLK. Below is a figure from ICS43434 datasheet:
So the question is: If using a 16-bit i2s mic, is the LSB still truncated in the current audio library implementation?
PS: either 16bit or 15bit audio quality is good enough for my project. Just thought this might be an issue for someone else who really cares about missing LSB.
Thanks,
I am using Teensy 4.1 + ICS43434 in my project. As ICS43434 is a 24-bit i2s mems mic, I am interested in how the 24bits are truncated. I quickly went through the audio library code (not every detail). It looks like the high 16bits of I2S register is used by the audio library:
Audio/input_i2s.cpp at f3777604cfa07f795c5bf6340c4abf967fbf4ffe · PaulStoffregen/Audio
Teensy Audio Library. Contribute to PaulStoffregen/Audio development by creating an account on GitHub.
github.com
Audio/input_i2s.cpp at f3777604cfa07f795c5bf6340c4abf967fbf4ffe · PaulStoffregen/Audio
Teensy Audio Library. Contribute to PaulStoffregen/Audio development by creating an account on GitHub.
github.com
Usually, the I2S "standard" is that the MSB of the left channel is valid on the second rising edge of BCLK after the falling edge of LRCLK. Similarly, the MSB of the right channel is valid on the second rising edge of BCLK after the rising edge of LRCLK. Below is a figure from ICS43434 datasheet:
So the question is: If using a 16-bit i2s mic, is the LSB still truncated in the current audio library implementation?
PS: either 16bit or 15bit audio quality is good enough for my project. Just thought this might be an issue for someone else who really cares about missing LSB.
Thanks,