[alsa-devel] Need help fixing pop/click artifacts in an ASOC driver

Mark Brown broonie at kernel.org
Thu Nov 15 00:02:55 CET 2018


On Thu, Nov 15, 2018 at 12:50:30AM +0200, Dimitris Papavasiliou wrote:

> The clocks are switched inside the hw_params callback of the
> machine driver, when the sampling rate changes from a multiple of
> 48kHz to a multiple of 44.1kHz and vice versa, usually after
> opening the device and before starting playback.  That has to be
> so, as far as I can see.

That's fairly normal, yes.  You can also do SRC in software and lock the
rate at one.

> If by idle you mean, not playing, then the device is idle during
> the switch.  If by idle you mean biased off, then it depends on
> circumstance.  For instance if playback at 44.1kHz is stopped and
> quickly restarted at 48kHz, as often happens, the device won't
> have had the chance to sit long enough to be biased off (and even
> if it has, I'm not entirely sure whether it won't be biased on
> before the hw_params callback).  The pop may still be avoided if

Usually it's only the digital that will notice clocking changes, so long
as none of the digital stuff is active you're normally fine.  It does
depend on the hardware though.

> auto-mute is used, but that's not always the case.  My proposed
> fix on the other hand consistently avoids generating the pop and
> does not rely on muting.  I'm just not sure how to best implement
> it.

I've no idea what you're proposing, sorry.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20181114/af542f37/attachment.sig>


More information about the Alsa-devel mailing list