On Jan 12, 2008 7:10 PM, Lennart Poettering &lt;<a href="mailto:lennart@poettering.net">lennart@poettering.net</a>&gt; wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Wed, 02.01.08 11:21, Ritesh Kumar (<a href="mailto:ritesh@cs.unc.edu">ritesh@cs.unc.edu</a>) wrote:<br><br>&gt; Hi Guys,<br>&gt; &nbsp; &nbsp; &nbsp;Happy New Year!<br>&gt;<br>&gt; I was wondering if anybody was experiencing random cracks and pops (loud
<br>&gt; ones actually :( ) while using pulseaudio with intelHDA? I have the<br>&gt; following configuration for my inbuilt intelHDA card and will be thankful if<br>&gt; somebody helped me out here. I haven&#39;t observed cracks and pops on my other
<br>&gt; card (Griffin iMic). I am using pulseaudio 0.9.8 which is able to acquire<br>&gt; realtime scheduling priority and a nice level of -11.<br><br></div>What distro is this? What kernel are you using? What is HZ on your
<br>system? Is CONFIG_PREEMPT set?<br><div class="Ih2E3d"><br>&gt; I: sink.c: Created sink 0 &quot;Spkr&quot; with sample spec &quot;s16le 2ch 192000Hz&quot;<br><br></div>Hmm, this is a very a high sampling rate. This might be related to the
<br>problem.<br></blockquote><div><br></div></div>The distribution is a very minimal Gentoo. I don&#39;t even have hal or dbus running. I am using gentoo-sources-2.6.23 with CONFIG_PREEMPT and a HZ of 1000.<br><br>I
also tried appending fragments and fragment_size options at the end of
the intelHDA alsa sink configuration but it still reports &quot;Using 3
fragments of size 19200 bytes.&quot;. I was hoping to improve buffering but
it seems I am hitting on a bug here.
<br>
<br>
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.<br>
<br>I recently dropped the sampling rate for the intel HDA device to 48kHz... The cracks reappear after a suspend-to-ram. (No I don&#39;t hear difference with the changed sample rate... it was basically the satisfaction of driving my soundcard to its fullest :P).
<br><br>As I had mentioned in the first mail of this thread I was using the following configuration:<br>pulseaudio 0.9.8 with Realtime FIFO scheduling.<br><br>ALSA (asound.conf):<br>pcm.!default {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type pulse<br>
}<br>ctl.!default {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type pulse<br>}<br>pcm.intelHDA {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type softvol<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; slave.pcm &quot;hw:0,0&quot;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://control.name/" target="_blank">
control.name</a> &quot;Master&quot;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; control.card 0<br>}<br>ctl.intelHDA {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type hw<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; card 0<br>}<br>pcm.iMic {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type hw<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; card 1<br>}<br>#ctl.iMic {<br>#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type hw<br>

#&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; card 1
<br>#}<br><br><br><a href="http://default.pa/" target="_blank">default.pa</a>:<br>load-module module-alsa-sink device=intelHDA sink_name=Spkr rate=192000<br>load-module module-alsa-sink device=iMic sink_name=HeadPh rate=48000
<br>load-module module-native-protocol-unix
<br>load-module module-rescue-streams<br>load-module module-suspend-on-idle<br>set-default-sink Spkr<br><br>output of pulseaudio -vvC<br>I: main.c: We&#39;re in the group &#39;realtime&#39;, allowing real-time and high-priority scheduling.
<br>I: core-util.c: Successfully gained nice level -11.<br>I: main.c: Successfully increased RLIMIT_RTPRIO, giving up CAP_NICE.<br>W: main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted<br>I: main.c: Page size is 4096 bytes
<br>I: main.c: Fresh high-resolution timers available! Bon appetit!<br>I: module-alsa-sink.c: Successfully opened device intelHDA.<br>I: module-alsa-sink.c: Successfully enabled mmap() mode.<br>I: alsa-util.c: Successfully attached to mixer &#39;intelHDA&#39;
<br>I: alsa-util.c: Using mixer control &quot;Master&quot;.<br>I: sink.c: Created sink 0 &quot;Spkr&quot; with sample spec &quot;s16le 2ch 192000Hz&quot;<br>I: source.c: Created source 0 &quot;Spkr.monitor&quot; with sample spec &quot;s16le 2ch 192000Hz&quot;
<br>I: module-alsa-sink.c: Using 3 fragments of size 19200 bytes.<br>I: alsa-util.c: All 2 channels can be mapped to mixer channels. Using hardware volume control.<br>D: module-alsa-sink.c: Thread starting up<br>I: core-util.c


: Successfully enabled SCHED_FIFO scheduling for thread, with priority 5.<br>D: rtpoll.c: Acquired POSIX realtime signal SIGRTMIN+29<br>I: module-alsa-sink.c: Starting playback.<br>I: module.c: Loaded &quot;module-alsa-sink&quot; (index: #0; argument: &quot;device=intelHDA sink_name=Spkr rate=192000&quot;).
<br>I: module-alsa-sink.c: Successfully opened device iMic.<br>I: module-alsa-sink.c: Successfully enabled mmap() mode.<br>ALSA lib control.c:909:(snd_ctl_open_noupdate) Invalid CTL iMic<br>I: alsa-util.c: Unable to attach to mixer iMic: No such file or directory
<br>I: alsa-util.c: Unable to attach to mixer hw:(null): No such device<br>I: sink.c: Created sink 1 &quot;HeadPh&quot; with sample spec &quot;s16le 2ch 48000Hz&quot;<br>I: source.c: Created source 1 &quot;HeadPh.monitor

&quot; with sample spec &quot;s16le 2ch 48000Hz&quot;
<br>I: module-alsa-sink.c: Using 4 fragments of size 4796 bytes.<br>D: module-alsa-sink.c: Thread starting up<br>I: core-util.c: Successfully enabled SCHED_FIFO scheduling for thread, with priority 5.<br>D: rtpoll.c: Acquired POSIX realtime signal SIGRTMIN+28
<br>I: module-alsa-sink.c: Starting playback.<br>I: module.c: Loaded &quot;module-alsa-sink&quot; (index: #1; argument: &quot;device=iMic sink_name=HeadPh rate=48000&quot;).<br>I: protocol-native.c: loading cookie from disk.
<br>I: module.c: Loaded &quot;module-native-protocol-unix&quot; (index: #2; argument: &quot;&quot;).<br>I: module.c: Loaded &quot;module-rescue-streams&quot; (index: #3; argument: &quot;&quot;).<br>D: module-suspend-on-idle.c


: Sink Spkr becomes idle.<br>D: module-suspend-on-idle.c: Sink HeadPh becomes idle.<br>D: module-suspend-on-idle.c: Source Spkr.monitor becomes idle.<br>D: module-suspend-on-idle.c: Source HeadPh.monitor becomes idle.<br>


I: module.c: Loaded &quot;module-suspend-on-idle&quot; (index: #4; argument: &quot;&quot;).<br>I: client.c: Created 0 &quot;STDIN/STDOUT client&quot;<br>I: module.c: Loaded &quot;module-cli&quot; (index: #5; argument: &quot;exit_on_eof=1&quot;).
<br>I: main.c: Daemon startup complete.<br>Welcome to PulseAudio! Use &quot;help&quot; for usage information.<br>&gt;&gt;&gt; I: module-suspend-on-idle.c: Sink Spkr idle for too long, suspending ...<br>I: module-alsa-sink.c


: Device suspended...<br>I: module-suspend-on-idle.c: Source HeadPh.monitor idle for too long, suspending ...<br>I: module-suspend-on-idle.c: Source Spkr.monitor idle for too long, suspending ...<br>I: module-suspend-on-idle.c


: Sink HeadPh idle for too long, suspending ...<br>I: module-alsa-sink.c: Device suspended...<br><br><br>