Re: [PATCH v3 0/6] ASoC: q6apm: fix under runs and fragment sizes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 04/03/2025 17:04, Johan Hovold wrote:
On Tue, Mar 04, 2025 at 10:57:17AM +0000, Srinivas Kandagatla wrote:
From: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>

On Qualcomm Audioreach setup, some of the audio artifacts are seen in
both recording and playback. These patches fix issues by
1. Adjusting the fragment size that dsp can service.
2. schedule available playback buffers in time for dsp to not hit under runs
3. remove some of the manual calculations done to get hardware pointer.

With these patches, am able to see Audio quality improvements.

Any testing would be appreciated.

This fixes the playback and capture issues with Pipewire, including the
heavily distorted, choppy playback when pavucontrol is open. Turns out
that the pavucontrol volume meters reduces the output sink quantum size
from the default 1024 to 256, which was too low with v2 but now seems to
work.

Unfortunately, this series still regresses Pulseaudio as capture is now
choppy (e.g. when recording using parecord).


During our off-list debugging sessions you suggested reducing the max
capture period size (that this series increases) to 6144 (same as min)
and that fixed the Pulseaudio capture issue. In v3 the, the max period
is again increased to 65536 which appears to break Pulseaudio capture.

I have verified pulseaudio on my side as well, the 64 byte alignment should have fixed the issue on the pulseaudio side.

Did you pick up the [PATCH v3 4/6] ASoC: qdsp6: q6apm-dai: set correct period and buffer alignment. patch in your tests?

thanks,
Srini

Changes since v2:
	- dropped patch which is causing regression with pluseaudio.
	- setup period sizes only for capture path
	- fix underruns/overruns in dsp pipelines.
	- add fixes tag
	- add patch to fix buffer alignment

Johan




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux