Thanks again to everyone that replied. I looked at the examples, but to be
honest I didn't really understand them completely, and I got a few error
messages when I tried to run them. I have pd-extended installed, but maybe
I'm missing some externals used by the examples. Anyway, I decided to go
with plan B, and use another software package to generate sound files and
then load them into PD. I'm using Octave, an open-source math program that
is mostly compatible with Matlib. It has some built-in functions to read
and write audio files (mono only), but I can generate audio files in just a
few lines of code, like this:
x = linspace(0,2*pi,1024);
y = sin(cos(sin(x) * pi) * pi);
plot(x,y);
title('y = sin(cos(sin x) * pi) * pi)');
wavwrite(y,44100,16,'C:\\Data\\Octave\\sincossin.wav');
The first two lines generate the data (1024 samples in length), the next
two lines draw a graph in a separate window, and the last line writes the
data to a file. I really recommend it if you want to generate audio samples
using math functions.
Then I load the file into PD with the attached patch. Since I know my files
are 1024 samples long, I can just allocate an array of the correct size and
not have to worry about complications.
I attached my patch and a sample file (generated using the code above) if
you're interested.
David.