On Mon, May 23, 2005 at 02:47:06PM +0200, cpghost wrote: > Pyun YongHyeon wrote: > > >On Sun, May 15, 2005 at 02:41:24AM -0700, Julian Elischer wrote: > >> cpghost_at_cordula.ws wrote: > >> >On Sat, May 14, 2005 at 06:51:48PM -0700, Julian Elischer wrote: > >> > > >> >>Has anyone run skype successfully on these versions (5 or 6) of > >freeBSD? > >> >>I can run it successfully on 4.x but on my 5.x machine the audio is > >> >>completely > >> >>broken up. like someone is chopping the audio stream. > >> > > >> > > >> >I'm running Skype on 5.4 (via82c686). On an AMD Duron 1200 MHz, the > >> >sound quality is all right; on an EPIA 5000 Eden 500 MHz (also > >via82c686), > >> >the sound is totally chopped and it is impossible to follow. > >> > >> hmm so maybe its the fact that my machine is too slow.. it's also 500MHz > >> my 1GHz 4.11 machine seems to run it fine. > >> > > > >I don't think 500MHz is too slow. Check if kernel converters > >are active when you play audio samples.(cat /dev/sndstat after > >setting hw.snd.verbose=2). > > > > > This is what I get while skype plays the chopped sound of the echo service: > > epia2# cat /dev/sndstat > FreeBSD Audio Driver (newpcm) > Installed devices: > pcm0: <VIA VT82C686A> at io 0xdc00 irq 10 kld snd_via82c686 (1p/1r/0v > channels duplex default) > [pcm0:play:0]: spd 48000, fmt 0x00000010, flags 0x00003030, > 0x00000000, pid 78793 > interrupts 18062, underruns 4824, ready 3580 > {userland} -> feeder_root(0x00000010) -> {hardware} > [pcm0:record:0]: spd 48000, fmt 0x00000010, flags 0x00003030, > 0x00000000, pid 78793 > interrupts 16968, overruns 4808, hfree 512, sfree 3584 > {hardware} -> feeder_root(0x00000010) -> {userland} > > No idea how to interpret this. > Format : sampling rate 48KHz, signed 16bit little endian format channel flags : opened, block size set, DMA active, triggered feeder flags : no flags(no kernel converter involed) It seems that no kernel converters are active. But you have large feeder underrun counters. It means sound quality would be poor. Quick looking the driver source showed that via82c686 has fixed sampling rate(48KHz) for playback. So userland application may need to resampling operations which requires additional CPU cycles. I vaguely guess the driver should work better than other cheap audio cards as it supports scatter/gatter DMA operations. If 500MHz CPU is not sufficient for the driver to work correctly I think something is wrong in the driver. Since I don't have a copy of 82C686 data sheet and hardware I don't know where the problem is. :-( > >Since the driver also needs Giant lock it may suffer from interrupt > >latencies with other devices. In addition if it share IRQ with > >other devices(e.g. USB) the issue would be noticable. > > > > > None that I know of: > > epia2# vmstat -i > interrupt total rate > irq0: clk 30624081 99 > irq1: atkbd0 416592 1 > irq8: rtc 39199914 128 > irq10: pcm0 1210380 3 > irq11: vr0 531082 1 > irq12: psm0 1354640 4 > irq13: npx0 1 0 > irq14: ata0 3681643 12 > Total 77018333 251 > > irc10 is not shared by any other likely interrupt source, or so it seems. > Do you use VCHAN? How about increasing DMA buffer size to 8 or 16KB? Default DMA buffer size is 4KB(via82c686.c, line 44) which I guess too small to support scatter/gatter DMA operations. How many pcm interrupts do you see when you use skype? (Use systat -vmstat 1 to to see the number of interrupts/second.) -- Regards, Pyun YongHyeon http://www.kr.freebsd.org/~yongari | yongari_at_freebsd.orgReceived on Tue May 24 2005 - 03:38:19 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:35 UTC