[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-dev] Valid UGen input rates



Most don't... most input rates take audio or control (but may only read them as control rates). IF they ONLY want audio rates (like Pan2 for instance), then inputs are checked. Otherwise, you need to check the source.

Perhaps a classvar for UGen would make sense?

classvar rates;

then - a symbol to describe value inputs?

Josh

On Dec 29, 2009, at 10:06 AM, Sciss wrote:

> is that i am working on an sc client, but i'm trying to design the architecture somewhat different than sclang, so i'm trying to find a reliable way to restrict input rates (preferably at compile time) and wonder how they are encoded in sclang. i see for example, that some ugens override "checkInputs", some redirecting to "checkSameRateAsFirstInput".
> 
> ciao, -sciss-
> 
> 
> Am 29.12.2009 um 18:00 schrieb Josh Parmenter:
> 
>> SinOsc has functions for audio and control rate UGens - my guess is Select just wants ONLY the same rate. I'd have to look at the source, but it might be a good idea to document more of this. I think Scott (?) started to do that some time ago? We really all should pitch in and get that done. With CSound - they name the arguments according to acceptable rates, but an array after the arg description in the doc is probably what we need (and I think it is what Scott started to do?).
>> 
>> Josh
>> 
>> On Dec 29, 2009, at 9:52 AM, Sciss wrote:
>> 
>>> hi,
>>> 
>>> i was wondering whether there is a hard criterion regarding valid ugen input rates. for example:
>>> 
>>> SynthDef( \test, { SinOsc.kr( SinOsc.ar )})
>>> SynthDef( \test, { Select.ar( 0, [ SinOsc.kr ])})
>>> 
>>> the first one is ok, the second one fails. there is hooks in the class library that do some kind of checking, but i wonder if these are always right, and if there is not a way to determine directly  from the plugins (sources) which are the allowed rates...
>>> 
>>> thanks, -sciss-
>>> 
>>> 
>>> _______________________________________________
>>> sc-dev mailing list
>>> 
>>> info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
>>> archive: https://listarc.bham.ac.uk/marchives/sc-dev/
>>> search: https://listarc.bham.ac.uk/lists/sc-dev/search/
>> 
>> ******************************************
>> /* Joshua D. Parmenter
>> http://www.realizedsound.net/josh/
>> 
>> “Every composer – at all times and in all cases – gives his own interpretation of how modern society is structured: whether actively or passively, consciously or unconsciously, he makes choices in this regard. He may be conservative or he may subject himself to continual renewal; or he may strive for a revolutionary, historical or social palingenesis." - Luigi Nono
>> */
>> 
>> 
>> _______________________________________________
>> sc-dev mailing list
>> 
>> info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
>> archive: https://listarc.bham.ac.uk/marchives/sc-dev/
>> search: https://listarc.bham.ac.uk/lists/sc-dev/search/
> 
> 
> _______________________________________________
> sc-dev mailing list
> 
> info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
> archive: https://listarc.bham.ac.uk/marchives/sc-dev/
> search: https://listarc.bham.ac.uk/lists/sc-dev/search/

******************************************
/* Joshua D. Parmenter
http://www.realizedsound.net/josh/

“Every composer – at all times and in all cases – gives his own interpretation of how modern society is structured: whether actively or passively, consciously or unconsciously, he makes choices in this regard. He may be conservative or he may subject himself to continual renewal; or he may strive for a revolutionary, historical or social palingenesis." - Luigi Nono
*/


_______________________________________________
sc-dev mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-dev/
search: https://listarc.bham.ac.uk/lists/sc-dev/search/