Just a little more clarification on this...
If I understand correctly,
ksmps must be an integer (html/ksmps.html)
-b should be a power of two (html/UsingRealTime.html)
-b should be a power-of-two multiple of ksmps (html/UsingOptimizing.html), or at least, for duplex audio, a multiple of ksmps (
htmlCommandFlags.html#FlagsMinusLowerB)
Two questions-
Are all of these statements up-to-date? and,
Is it okay for KR to be non-integer?
I'm guessing non-integer KR is okay, since the docs don't say that it's NOT okay; and since a second is kind of an arbitrary measurement for things that happen that fast. That is, I don't know of any inherent need for audio buffers to line up with seconds. But with sr=44100, 4 is the highest possible value of ksmps that a) satisfies all of the musts and shoulds above, and b) equates to an integer KR.
-Chuckk
--
http://www.badmuthahubbard.com