r***@si.rr.com
2007-04-18 19:08:50 UTC
Could someone please explain a little more about csounds function
tables to me with regards to "f statements". Lets take for example
GEN10 a simple sinewave generator. I understand it will generate
samples and it needs to store these samples somewhere. I understand
it will store them in a ftable (which is just an array of allocated
memory). So for example if I do:
f1 0 4096 10 1
Above I'm asking for Gen10 to generate a 4096 point sinewave with
amplitude of 1 and to store those samples in ftable 1. However, why
if I do this:
f2 0 4096 10 1
...is that invalid. I get the following error: "INIT ERROR in instr 1:
Invalid table no. 1.000000". Wouldn't the fstatement using f2 do the
same thing as the fstatement using f1 and just store the samples
returned from GEN10 into function table 2? Do the GEN routines have
specific function tables they allocate themselves? So by doing GEN10
it only allocations 1 array for the samples called f1? If so is there
somewhere that lists what ftables the different GEN routines allocate
and what they are used for? Is there a GEN(x) routine that might
allocate f1 and f2 tables and use f1 to store certain data and f2 to
store some other data needed, etc...?
My understanding (which I'm sure is flawed) is that "f1" would
allocate a function table to store the samples in which GEN10
returns. Can someone correct my misguided assumptions please.
thanks.
tables to me with regards to "f statements". Lets take for example
GEN10 a simple sinewave generator. I understand it will generate
samples and it needs to store these samples somewhere. I understand
it will store them in a ftable (which is just an array of allocated
memory). So for example if I do:
f1 0 4096 10 1
Above I'm asking for Gen10 to generate a 4096 point sinewave with
amplitude of 1 and to store those samples in ftable 1. However, why
if I do this:
f2 0 4096 10 1
...is that invalid. I get the following error: "INIT ERROR in instr 1:
Invalid table no. 1.000000". Wouldn't the fstatement using f2 do the
same thing as the fstatement using f1 and just store the samples
returned from GEN10 into function table 2? Do the GEN routines have
specific function tables they allocate themselves? So by doing GEN10
it only allocations 1 array for the samples called f1? If so is there
somewhere that lists what ftables the different GEN routines allocate
and what they are used for? Is there a GEN(x) routine that might
allocate f1 and f2 tables and use f1 to store certain data and f2 to
store some other data needed, etc...?
My understanding (which I'm sure is flawed) is that "f1" would
allocate a function table to store the samples in which GEN10
returns. Can someone correct my misguided assumptions please.
thanks.