[pulseaudio-discuss] cracks and pops with intelHDA

Ritesh Kumar ritesh at cs.unc.edu
Wed Jan 2 08:21:29 PST 2008


Hi Guys,
     Happy New Year!

I was wondering if anybody was experiencing random cracks and pops (loud
ones actually :( ) while using pulseaudio with intelHDA? I have the
following configuration for my inbuilt intelHDA card and will be thankful if
somebody helped me out here. I haven't observed cracks and pops on my other
card (Griffin iMic). I am using pulseaudio 0.9.8 which is able to acquire
realtime scheduling priority and a nice level of -11.

ALSA (asound.conf):
pcm.!default {
        type pulse
}
ctl.!default {
        type pulse
}
pcm.intelHDA {
        type softvol
        slave.pcm "hw:0,0"
        control.name "Master"
        control.card 0
}
ctl.intelHDA {
        type hw
        card 0
}
pcm.iMic {
        type hw
        card 1
}
#ctl.iMic {
#       type hw
#       card 1
#}


default.pa:
load-module module-alsa-sink device=intelHDA sink_name=Spkr rate=192000
load-module module-alsa-sink device=iMic sink_name=HeadPh rate=48000
load-module module-native-protocol-unix
load-module module-rescue-streams
load-module module-suspend-on-idle
set-default-sink Spkr

output of pulseaudio -vvC
I: main.c: We're in the group 'realtime', allowing real-time and
high-priority scheduling.
I: core-util.c: Successfully gained nice level -11.
I: main.c: Successfully increased RLIMIT_RTPRIO, giving up CAP_NICE.
W: main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
I: main.c: Page size is 4096 bytes
I: main.c: Fresh high-resolution timers available! Bon appetit!
I: module-alsa-sink.c: Successfully opened device intelHDA.
I: module-alsa-sink.c: Successfully enabled mmap() mode.
I: alsa-util.c: Successfully attached to mixer 'intelHDA'
I: alsa-util.c: Using mixer control "Master".
I: sink.c: Created sink 0 "Spkr" with sample spec "s16le 2ch 192000Hz"
I: source.c: Created source 0 "Spkr.monitor" with sample spec "s16le 2ch
192000Hz"
I: module-alsa-sink.c: Using 3 fragments of size 19200 bytes.
I: alsa-util.c: All 2 channels can be mapped to mixer channels. Using
hardware volume control.
D: module-alsa-sink.c: Thread starting up
I: core-util.c : Successfully enabled SCHED_FIFO scheduling for thread, with
priority 5.
D: rtpoll.c: Acquired POSIX realtime signal SIGRTMIN+29
I: module-alsa-sink.c: Starting playback.
I: module.c: Loaded "module-alsa-sink" (index: #0; argument:
"device=intelHDA sink_name=Spkr rate=192000").
I: module-alsa-sink.c: Successfully opened device iMic.
I: module-alsa-sink.c: Successfully enabled mmap() mode.
ALSA lib control.c:909:(snd_ctl_open_noupdate) Invalid CTL iMic
I: alsa-util.c: Unable to attach to mixer iMic: No such file or directory
I: alsa-util.c: Unable to attach to mixer hw:(null): No such device
I: sink.c: Created sink 1 "HeadPh" with sample spec "s16le 2ch 48000Hz"
I: source.c: Created source 1 "HeadPh.monitor" with sample spec "s16le 2ch
48000Hz"
I: module-alsa-sink.c: Using 4 fragments of size 4796 bytes.
D: module-alsa-sink.c: Thread starting up
I: core-util.c: Successfully enabled SCHED_FIFO scheduling for thread, with
priority 5.
D: rtpoll.c: Acquired POSIX realtime signal SIGRTMIN+28
I: module-alsa-sink.c: Starting playback.
I: module.c: Loaded "module-alsa-sink" (index: #1; argument: "device=iMic
sink_name=HeadPh rate=48000").
I: protocol-native.c: loading cookie from disk.
I: module.c: Loaded "module-native-protocol-unix" (index: #2; argument: "").
I: module.c: Loaded "module-rescue-streams" (index: #3; argument: "").
D: module-suspend-on-idle.c : Sink Spkr becomes idle.
D: module-suspend-on-idle.c: Sink HeadPh becomes idle.
D: module-suspend-on-idle.c: Source Spkr.monitor becomes idle.
D: module-suspend-on-idle.c: Source HeadPh.monitor becomes idle.
I: module.c: Loaded "module-suspend-on-idle" (index: #4; argument: "").
I: client.c: Created 0 "STDIN/STDOUT client"
I: module.c: Loaded "module-cli" (index: #5; argument: "exit_on_eof=1").
I: main.c: Daemon startup complete.
Welcome to PulseAudio! Use "help" for usage information.
>>> I: module-suspend-on-idle.c: Sink Spkr idle for too long, suspending ...
I: module-alsa-sink.c : Device suspended...
I: module-suspend-on-idle.c: Source HeadPh.monitor idle for too long,
suspending ...
I: module-suspend-on-idle.c: Source Spkr.monitor idle for too long,
suspending ...
I: module-suspend-on-idle.c : Sink HeadPh idle for too long, suspending ...
I: module-alsa-sink.c: Device suspended...

I also tried appending fragments and fragment_size options at the end of the
intelHDA alsa sink configuration but it still reports "Using 3 fragments of
size 19200 bytes.". I was hoping to improve buffering but it seems I am
hitting on a bug here.

I used to run dmix with my intelHDA running at rate 192000Hz without any
problems. Plus, the cracks and pops come using both alsa-pulse and
gst-pulse.

Thanks in advance for the help.

_r
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20080102/003d7ebf/attachment.htm>


More information about the pulseaudio-discuss mailing list