I’m using the Genio-1200, and I found that every time I use the digital microphone to record, I always hear a pop sound at the beginning of the sound file.
Is there something wrong with the mic? How can I fix this issue?
Hello @david.loman,
How is it going?
The behavior you describe sounds familiar.
I think I have seen it in the past, however, it was on a different platform.
Just out of curiosity.
How are you capturing the audio file ? Are you using GStreamer ? If so, can you share the pipeline?
best regards,
Andres
Embedded Software Engineer at ProventusNova
Hi @Andres_Campos,
I used the example command for digital microphone provided in the MediaTek IoT Yocto Audio User Guide to capture the audio file.
arecord -D dmic -c 2 -r 48000 -f S32_LE -d 10 sample.wav
Do you experience the same issue when using GStreamer?
Attached is the result of analyzing the dmic recording file with an audio analyzer, which shows obvious noise at the beginning of the audio.
Hi @david.loman @Andres_Campos ,
The “pop” you hear at the start of a DMIC recording is a normal startup transient. When the digital microphone and its clock/power first turn on, the signal and filters need a brief moment to stabilize. That short settling peroid may cause the “pop” sound.
So this is not a defect but a common behavior of digital microphones when they start from idle.
To avoid this, you can try adding the wakeup-delay-ms property to the DTS file. This adds a delay after enabling the DMIC. For detail, please refer to dmic-codec.yaml.
And you can adjust the delay value according to your situation. Based on the attachment @david.loman provided in the previous reply, a 100 ms delay should be sufficient.
Also, please make sure you have enabled the SND_SOC_DMIC config if you want to use the wakeup-delay-ms property.
