Ticket #491 (new defect)

Opened 17 months ago

Last modified 17 months ago

snd-ca0106: Crackling, skipping and /var/log/messages spamming

Reported by: liviopl Owned by: lennart
Milestone: Component: daemon
Keywords: Cc:

Description

My hardware has recently changed twice and problems still exist.

VIA8235 (snd-via82xx) → VIA8237 (actually C-Media CMI9761A; snd-via82xx too) → Creative Sound Blaster Audigy SE (snd-ca0106)

You can't tell me it's hardware question, because the hardware is first quality.

Also, NVIDIA's driver and Ralink's WiFi? firmware aren't the problem. PA < 0.9.10 had no problems with crackling and skipping at all. Some rewrites might have happened in between.

All the time I'm having the >= 0.9.10, PA is spamming (almost every second!) in /var/log/messages with:

[[[ ALSA woke us up to write new data to the device, but there was actually nothing to write! ]]]

tsched=0 makes PA crackle even more.

--

openSUSE 11.1, PA 0.9.14 from a testrepo (to try out if bug appears in non-distro version; 0.9.13 is shipped).

client.conf: no options set. daemon.conf: http://wklej.org/id/55927/ default.pa : http://wklej.org/id/55929/

--

lspci -vvv info about the soundcard:

[[[ 00:0c.0 Multimedia audio controller: Creative Labs SB Audigy LS

Subsystem: Creative Labs SB0570 [SB Audigy SE] Control: I/O+ Mem- BusMaster?+ SpecCycle?- MemWINV- VGASnoop- ParErr?- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr?- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 32 (500ns min, 5000ns max) Interrupt: pin A routed to IRQ 16 Region 0: I/O ports at d400 [size=32] Capabilities: <access denied> Kernel driver in use: CA0106 Kernel modules: snd-ca0106 ]]]

--

/proc/asound/cards:

[[[ 0 [CA0106 ]: CA0106 - CA0106

Audigy SE [SB0570] at 0xd400 irq 16 ]]]

PS: Onboard card (C-Media CMI9761A disabled in BIOS).

--

/proc/asound/version:

Advanced Linux Sound Architecture Driver Version 1.0.17.

--

Interesting is that when I turn on "CAPTURE feedback" playback control on, PA crackles when I'm typiing, scrolling etc.

Also, any SDL app makes PA go crazy, regardless of SDL_AUDIODRIVER. SDL_AUDIODRIVER=esd makes PA crackle less than in SDL_AUDIODRIVER=pulse mode. Funny.

--

If more info needed, just ask.

Change History

Changed 17 months ago by lennart

The creative drivers are known to be borked. And it's a bit your own fault that you bought Creative, given Creative's anti-open-source track record and the lack of documentation on their side.

See wiki:BrokenSoundDrivers and please follow the recommendations at the end.

Changed 17 months ago by lennart

Oh, and what do you mean by "Capture feedback"?

Changed 17 months ago by liviopl

Lennart, you could easily say that everyone who has good hardware has done a mistake. Just don't, please.

I tried to follow instructions at the end of wiki:BrokenSoundDrivers but it seems there's a problem.

$ ./alsa-time-test > log
ALSA lib confmisc.c:768:(parse_card) cannot find card 'AudioPCI'
ALSA lib conf.c:3513:(_snd_config_evaluate) function snd_func_card_driver returned error: No such device
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:3513:(_snd_config_evaluate) function snd_func_concat returned error: No such device
ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name
ALSA lib conf.c:3513:(_snd_config_evaluate) function snd_func_refer returned error: No such device
ALSA lib conf.c:3985:(snd_config_expand) Evaluate error: No such device
ALSA lib pcm.c:2202:(snd_pcm_open_noupdate) Unknown PCM front:AudioPCI
alsa-time-test: alsa-time-test.c:43: main: Assertion `r == 0' failed.

And "CAPTURE feedback" is a volume slider in volume control, provided by ALSA.

PS: Duplication of bug 490 into this was done by me because server responded with http:500 and I didn't knew whether the bug was filed or not, sorry.

Changed 17 months ago by lennart

Sorry, but what can I say: creative cards are actually very cheap in their design. e.g. to implement surround sound they put several stereo-chips on a board requiring software to split up all multichannel PCM data into seperate 2ch streams in software. Almost all other hardware that some folks would consider 'cheap onboard' stuff gets that part right. With Creative there is a lot of propaganda for surprisingly little actual value.

Sorry, I forgot to mention that you need to pass the device name on the command line of a-t-t, the wiki has been updated accordingly.

Changed 17 months ago by liviopl

Maybe Creative cards _are_ cheap in design, I don't care. I've got one and I'm using it because it sounds better than each one I used before. I don't use all the six channels, only the two. End of topic, sorry. I don't want to listen what life mistakes I've already made. I just want to help you with these annoying problems. Can I?

Still getting problems running a-t-t:

$ ./alsa-time-test hw:0 > log
alsa-time-text: alsa-time-test.c:189: main: Assertion `(unsigned) avail <= buffer_size' failed.
Przerwane

Oh, and talking about propaganda. There's much propaganda that PA is now more glitch-free... Three soundcards and still getting problem with PA. Enough to believe this might be issue in PA? Ugh. EOT! Just want to get this fixed as quick as possible.

Changed 17 months ago by lennart

That output is very interesting, please get me the head and tail of the 'log' output as described in the mentioned wiki page. Thanks!

Changed 17 months ago by liviopl

Only head and tail? Okay, you're here you are:

head

3444	3439	0	4416	0	4	1	2
3503	3502	22	4415	0	4	1	2
3509	3509	45	4414	0	4	1	2
3515	3514	68	4413	0	4	1	2
3520	3519	90	4412	0	4	1	2
3525	3524	113	4411	0	4	1	2
3530	3529	136	4410	0	4	1	2
3535	3534	158	4409	0	4	1	2
3540	3539	181	4408	0	4	1	2
3545	3544	204	4407	0	4	1	2
3550	3549	226	4406	0	4	1	2
3555	3554	249	4405	0	4	1	2
3560	3559	272	4404	0	4	1	2
3565	3564	294	4403	0	4	1	2
3570	3569	317	4402	0	4	1	2
3575	3574	340	4401	0	4	1	2
3580	3579	362	4400	0	4	1	2
3585	3584	385	4399	0	4	1	2
3590	3589	408	4398	0	4	1	2
3595	3594	430	4397	0	4	1	2

tail:

232192	232187	209523	3828	580	4	1	3
232210	232205	209523	3835	581	4	1	3
232227	232222	209523	3834	582	4	1	3
232244	232240	209523	3833	583	4	1	3
232261	232257	209523	3832	584	4	1	3
232279	232274	209523	3831	585	4	1	3
232296	232291	209523	3830	586	4	1	3
232313	232309	209523	3829	587	4	1	3
232330	232326	209523	3828	588	4	1	3
232348	232343	209523	3827	589	4	1	3
232365	232360	209705	3834	582	4	1	3
232382	232378	209705	3833	583	4	1	3
232399	232395	209705	3832	584	4	1	3
232417	232412	209705	3831	585	4	1	3
232434	232429	209705	3830	586	4	1	3
232451	232447	209705	3829	587	4	1	3
232468	232464	209705	3828	588	4	1	3
232486	232481	209705	3827	589	4	1	3
232503	232498	209705	3826	590	4	1	3
248529	232516	209705	3825	591	4	1	3
248577	248572	227301	4600	-184	4	1	3

Changed 17 months ago by lennart

Hmm, apparently the CPU is not quick enough to fill this the buffer up when writing sample by sample.

How large is that file? If it is < 5mb when compressed with gzip, could you please mail it to lennart poettering net? Thanks!

Changed 17 months ago by liviopl

Hmm, apparently the CPU is not quick enough to fill this the buffer up when writing sample by sample.

It's Duron 1,6GHz and I know it's slow but I can get only slower ones.

How large is that file?

It's not too big. About 300KB.

could you please mail it to lennart poettering net?

I actually nopasted it: http://www.nopaste.pl/9vi Would you like an e-mail too?

Changed 17 months ago by lennart

  • milestone 0.9.15 deleted

Changed 17 months ago by lennart

  • summary changed from Crackling, skipping and /var/log/messages spamming to snd-ca0106: Crackling, skipping and /var/log/messages spamming
Note: See TracTickets for help on using tickets.