Re: A-rate vs K-rate
Gabriel Maldonado <[email protected]> Wed, 26 May 2004 11:02:10 +0200
| Newsgroups | gmane.comp.audio.csound.tekno |
|---|---|
| Message-ID | <[email protected]> |
Use the a() function to convert a k-rate signal to an a-rate signal before passing it to the amplitude control of an audio generator. Amplitude should always be converted to a-rate in the latest pass, otherwise audible clicks would be unavoidable in fast transitions. I suggest ksmps=100 for realtime, unless there is a huge amount of k-rate ugens (in which case kr=441 is suggested). However remember that the audio output will be always delayed at least of of ksmps samples when controlling Csound in realtime via midi. For controlling frequency, this is not needed, in most cases. gab Stanislav Shevchenko wrote: > Hello everybody, > > I'm experimenting with CSound in real-time, trying to achieve optimal performance for my instruments. And I can not decide what's the best setting for the control rate (kr). > > Low values of kr (about 1/20 of sr) seem to be unacceptable; I can easily hear the clicks even when amplitude envelope is calculated at k-rate, and if k-rate is used to control the delay time in chorus/flanger, the clicks are even more audible. > > But when kr approaches sr, using the a-rate variables becomes inefficient, because the k-rate opcodes tend to be simpler (k-rate variables are simple numbers, while a-rate variables are arrays, so there is a little overhead in every a-rate opcode). So when sr is equal to kr, the a-rate opcodes produce exactly the same output as k-rate, but a bit slower. > > I come to a paradoxical decision: the fastest way is to set kr = sr, use k-rate opcodes as much as possible, and convert the results to a-rate only when it is inevitable (to use the "outs" opcode, for example). > > Of course, there is an obvious alternative: set kr to be very low, and use a-rate opcodes for the parameters which are usually controlled at k-rate (amplitude, etc). However, there are opcodes that work ONLY at k-rate (like "peak"), so there might be some cases when clicks are inevitable. > > So I'd like to know the opinion of community: what control rate is thought to be the best for real-time, and for what reasons. > > Thanks in advance, > - Stanislav Shevchenko - > _______________________________________________ > csoundtekno mailing list > [email protected] > > Subscribe, unsubscribe, change mailing list options: > http://plot.bek.no/mailman/listinfo/csoundtekno > -- Gabriel Maldonado http://csounds.com/maldonado -- _______________________________________________ csoundtekno mailing list [email protected] Subscribe, unsubscribe, change mailing list options: http://plot.bek.no/mailman/listinfo/csoundtekno