Ticket #605 (closed defect: elsewhere)

Opened 13 months ago

Last modified 12 months ago

Capture Rate 3 times 44100

Reported by: knightk Owned by: lennart
Milestone: Component: module-alsa-*
Keywords: Cc:

Description

I am using pulseaudio-0.9.10 with ALSA 1.0.16 and my target is an ARMv6.

I have the following in my default.pa

load-module module-alsa-sink device=hw:0 --rate=44100 --channels=2 --format=s16le sink_name=output load-module module-alsa-source device=hw:0 --rate=44100 --channels=2 --format=s16le source_name=input

ALSA file descriptors for capture data are causing poll() in pa_rtpoll_run() to invoke mmap_read() to read from the capture buffer enough packets to record at 3 x 44100. In reality the codec does not support such a high rate.

I have tested ALSA's utility arecord and it does not have this issue, therefore, I think that pulseaudio or one of its libraries is at fault.

Change History

Changed 12 months ago by lennart

  • status changed from new to closed
  • resolution set to elsewhere

0.9.10 is a very old PA version.

You sound driver is broken if it signals POLLOUT too often, or snd_pcm_avail() is broken. It should only signal POLLOUT when there is actually audio data to write. PA will only call mmap_read() if either POLLOUT or snd_pcm_avail() tell it it makes sense to do that.

Note: See TracTickets for help on using tickets.