Subject: Re: [ecasound] need some buffering advice
From: Kai Vehmanen (k_AT_eca.cx)
Date: Tue Sep 16 2003 - 23:44:09 EEST
On Tue, 16 Sep 2003, Jamie Lutch wrote:
> Hello, i am currently experimenting with the following setup:
> sony vaio+suse 8.2+ pdaudiocf soundcard
> using the following command line:
Are you running as root? To avoid soundcard xruns, ecasound needs to run
with rt-scheduling (SCHED_FIFO) and this requires root-privileges.
> I'm a bit confused by the '-z:intbuf' and 'z:db' commands
> what should I specify for the buffer size if using 'z:db'?
The -z:intbuf means that ecasound maximizes use of soundcard buffering. So
if soundcard supports 64kB of buffering, ecasound will use all of it. With
-z:nointbuf, buffering is limited to 3*X, where X is the engine buffersize
The -z:db option (and -z:nodb to disable) controls disk i/o buffering -
i.e. not related to the soundcard buffering in any way. The default is
'-z:nodb,100000', which is 100000 samples of buffering per non-realtime
audio object (files, pipes, etc). For 32bit, 2ch audio this means 0.8MB of
buffering per audio object... in other words quite a lot. On heavily
loaded systems you may need to use even bigger buffers for the disk i/o
Basicly these buffering mechanisms protect against different threats -
-z:intbuf against process scheduling delays while -z:db against delays in
disk i/o operations. Both are needed for reliable audio processing.
-- http://www.eca.cx Audio software for Linux!
This archive was generated by hypermail 2b28 : Tue Sep 16 2003 - 23:49:00 EEST