Date: Fri, 17 Jun 2005 13:14:16 -0300 From: Patrick Tracanelli <eksffa@freebsdbrasil.com.br> To: yongari@rndsoft.co.kr Cc: freebsd-multimedia@freebsd.org Subject: Re: pcm0 channel dead Message-ID: <42B2F6D8.7080506@freebsdbrasil.com.br> In-Reply-To: <20050617072237.GC17221@rndsoft.co.kr> References: <42B1BF4F.6020501@freebsdbrasil.com.br> <20050616181220.GE9461@cnd.mcgill.ca> <42B1C276.5070900@freebsdbrasil.com.br> <20050617072237.GC17221@rndsoft.co.kr>
next in thread | previous in thread | raw e-mail | index | archive | help
Pyun YongHyeon wrote: > On Thu, Jun 16, 2005 at 03:18:30PM -0300, Patrick Tracanelli wrote: > > > > > Hi, > > > I guess what you are saying is the your device is half-duplex. > > > > > > Please do a > > > sysctl hw.snd.verbose=3 > > > cat /dev/sndstat > > > > > > --Mat > > > > Here is the output > > > > (eksffa@claire-redfield)~# sysctl hw.snd.verbose=3 > > hw.snd.verbose: 1 -> 3 > > (eksffa@claire-redfield)~# cat /dev/sndstat > > FreeBSD Audio Driver (newpcm) > > Installed devices: > > pcm0: <Acer Labs M5451> at io 0x8800 irq 11 (4p/1r/0v channels duplex > > default) > > [pcm0:record:0]: spd 8000, fmt 0x00000001/0x00000008, flags > > 0x00000000, 0x000000 > > 00 > > interrupts 0, overruns 0, hfree 256, sfree 131072 > > {hardware} -> feeder_root(0x00000008) -> > > feeder_u8toulaw(0x00000008 -> 0x0000000 > > 1) -> {userland} > > Hmm, I think capture mode works ok. > > > [pcm0:play:0]: spd 44100/44097, fmt 0x10000010, flags > > 0x00003030, 0x00000000, pi > > d 657 > > interrupts 5793, underruns 2, ready 131072 > ^^^^^^^^^^^ > This is error condition, playback channel 0 has DMA underruns. > > > {userland} -> feeder_root(0x10000010) -> {hardware} > > [pcm0:play:1]: spd 22050/22042, fmt 0x10000010, flags > > 0x00000000, 0x00000000 > > interrupts 0, underruns 0, ready 0 > > {userland} -> feeder_root(0x10000010) -> {hardware} > > [pcm0:play:2]: spd 0, fmt 0x00000000/0x00000008, flags > > 0x00000000, 0x00000000 > > interrupts 0, underruns 0, ready 0 > > {userland} -> feeder_root(0x00000000) -> {hardware} > > [pcm0:play:3]: spd 0, fmt 0x00000000/0x00000008, flags > > 0x00000000, 0x00000000 > > interrupts 0, underruns 0, ready 0 > > {userland} -> feeder_root(0x00000000) -> {hardware} > > What I can't understand is why other playback channel(channel1, > channel 2) is active, though not triggered to play. Normally you > will use one capture/playback channel. > I have no idea how you can see "capture channel dead" as the > above output indicates playback problem. > Probably the underruns might be caused by a too low HZ value, when I sent this output. It does not get underruns with HZ=100 or =1000, here follows some outputs: (root@claire-redfield)~# cp /dev/audio /tmp/audio.au /dev/audio -> /tmp/audio.au (root@claire-redfield)~# cp /dev/dsp /tmp/au.au /dev/dsp -> /tmp/au.au (root@claire-redfield)~# cp /dev/dspr0.0 /tmp/audio.au /dev/dspr0.0 -> /tmp/audio.au (root@claire-redfield)~# dmesg | tail -3 pcm0:record:0: record interrupt timeout, channel dead (count: -8, c->flags: 135216) pcm0:record:0: record interrupt timeout, channel dead (count: -8, c->flags: 135216) pcm0:record:0: record interrupt timeout, channel dead (count: -8, c->flags: 135216) (root@claire-redfield)~# grep "over\|under" /dev/sndstat interrupts 0, overruns 0, hfree 256, sfree 131072 interrupts 0, underruns 0, ready 0 interrupts 0, underruns 0, ready 0 interrupts 0, underruns 0, ready 0 interrupts 0, underruns 0, ready 0 I have no idea on whatever should be done. Should I ask -CURRENT? -- Patrick Tracanelli
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?42B2F6D8.7080506>