Re: Relationship of Ecasound -b to jackd -n and -p settings

Kai Vehmanen <[email protected]> Mon, 30 Dec 2013 02:17:33 +0200 (EET)
Newsgroups gmane.comp.audio.ecasound.general
Message-ID <[email protected]>
Hi,

On Wed, 18 Dec 2013, Joel Roth wrote:

> For -p 64, the jack client process callbacks (such as
> Ecasound's) execute every 64 samples. The latency would be
> double that, 128 samples, 2.6ms at 48kHz.
[...]
> So what would be the best match for that in
> Ecasound's -b setting?

good question, and the short answer is that -b cannot be set when using 
JACK, and it's automatically forced to whathever -p setting jackd is run 
with. This apparently hasn't been documented anywhere. I now updated 
ecasound(1) with following description for -b (and special note for JACK).

--cut--
dit(-b:buffer_size)

Sets the processing engine buffer size in samples. The size must be an 
exponent of 2, and it is independent of channel count (e.g. em(-b:1024) at 
48kHz will result in 21.333ms buffer length whether input is mono, stereo 
or 5.1).

This is an important option as this defines the length of one processing 
engine iteration and affects ecasound behaviour in many ways. If not 
explicitly specified, ecasound will try to choose an optimal value based 
on current buffering mode (see em(-B) option). For real-time processing, 
you can try to set this as low as possible to reduce the processing delay. 
Some machines can handle buffer values as low as 64 and 128. In some 
circumstances (for instance when using oscillator envelopes) small buffer 
sizes will make envelopes act more smoothly. When not processing in 
real-time (all inputs and outputs are normal files), larger values may 
help to avoid buffer overruns, lower CPU usage and/or otherwise improve 
performance.

Note that when any JACK input/outputs are used, the buffer size setting is 
overridden and set to period/buffer size reported by JACK server (e.g. 
jackd's '-p' option). It is not possible to turn off this behaviour.

If not explicitly specified, the default buffer size is chosen based on 
current buffering mode (see em(-B)).
--cut--

------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
Ecasound-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ecasound-list