11 March 2008 г. 04:13:02 Jacob Meuser wrote: > On Tue, Mar 11, 2008 at 03:47:51AM +0300, Vadim Jukov wrote: > > Applied fully OK now. > > > > Some sort of strange results appear. I added "***" comments to a > > pure terminal grab. All significant pauses (>3s) mentioned (and a > > few seconds on play needed to distingush "fast" and "normal" > > output). > > > > No "-r 48000" in esd.conf, aRts at defaults (not even restarted). > > aRts frees OSS device on 10 seconds of inactivity. /etc/esd.conf: > > > > <snip> > > [esd] > > auto_spawn=1 > > #spawn_options=-r 48000 -d arts -terminate -nobeeps -as 2 -unix > > spawn_options=-d arts -terminate -nobeeps -as 2 -unix > > spawn_wait_ms=100 > > </snip> > > yeah, this won't work. > > a) you need to tell artsd to use at least 2 (best to use 2, 4, or 8) > buffers of at least 4096 bytes each. artsd uses 1024 byte buffers by > default. it's probably best to use 4096 bytes buffers in general, > and increase number of buffers if you experience dropouts.
0. I changed ESD config first, as you tell below, leaving only "spawn_options=-nobeeps -unix" options line. Now esdplay goes wrong only first time after ESD start. All consequenced calls plays at "normal" speed. 1. 4096 bytes x 10 buffers is default in aRts. 2. Only after your words I realized that I used not defaults, but 4096x21 (maximum you can set through aRts cofiguration window). 3. I tried 4 of 4096 bytes buffers, no changes. "Maximum" setting in aRts configuration window sets "-F 128 -S 8192", it didn't work either. And aRts defaults (4096x10) didn't change anything. 4. If I "chain" esdplay(1) calls, second and consequent plays "normal" and together - but only after first esdplay(1) ("fast") ends. Of course, this is not a big problem. :) > b) autospawn is busted in the newer esound. there's a comment along > the lines of "I think this in an Inherently Bad Idea but I'll leave > it alone for now" where the autospawn code starts. BTW, if ESD ever had good documentation, I (and others) did not bother you with so stupid questions... Poor, poor imperfect world :) > c) even if autospawn worked, it's probably best not to use it in > combination with other sound servers. don't use -terminate or -as > either. (see "0." above) > I have a script that starts/stops both esd and artsd for > when I need to use /dev/audio with something else. Well, as far as I understand, aRts frees "real" device on inactivity, so it shouldn't bother for ESD now (thanks again! :) ). > d) you don't need/want '-d arts' for esd. esd will use artsd if and > only if artsd is running, regardless of -d. OK, thank you for info. ... Maybe information you give is useful to be put in FAQ? I can try to do diffs for this. -- Best wishes, Vadim Zhukov