<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 5.50.4134.100" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2><FONT face="Times New Roman" size=3>&nbsp;Yes 
you're right, using two arrays, writing and reading each 
one<BR>&nbsp;alternatively could be a solution i hadn't thought about.&nbsp; But 
that would<BR>&nbsp;mean that the samples i read from the (reading-)array would 
always be 'one<BR>&nbsp;array' later than real time(a delay corresponding to the 
size of the<BR>&nbsp;writing-array). Of course smaller arrays could be used 
(which i would<BR>prefer&nbsp;not to as i want to be able to access for example, 
fragments within the<BR>last&nbsp;5 seconds), or as you suggested more smaller 
arrays.<BR><BR>&nbsp;I was rather thinking if it could be possible to make 
delread~&nbsp; (or some<BR>&nbsp;other object or simple patch) behave like the 
circular queue as described<BR>in&nbsp;Curtis&nbsp; Roads (The computer music 
tutorial,p 433), with the posibility of<BR>&nbsp;several taps (reading-pointers) 
which reading position i could control with<BR>(one-)sample precision. This 
structure would allow to access samples from<BR>real time (in fact one sample 
later than real time) to the time<BR>corresponding to the&nbsp;total length of 
the queue.<BR><BR>&gt; ----- Original Message -----<BR>&gt; From: "Miller 
Puckette" &lt;</FONT><A href="mailto:mpuckett@man104-1.ucsd.edu"><FONT 
face="Times New Roman" size=3>mpuckett@man104-1.ucsd.edu</FONT></A><FONT 
face="Times New Roman" size=3>&gt;<BR>&gt; To: "Gregorio Garc?a" &lt;</FONT><A 
href="mailto:ggkarman@airtel.net"><FONT face="Times New Roman" 
size=3>ggkarman@airtel.net</FONT></A><FONT face="Times New Roman" 
size=3>&gt;<BR>&gt; Cc: "pd-list" &lt;</FONT><A 
href="mailto:pd-list@iem.kug.ac.at"><FONT face="Times New Roman" 
size=3>pd-list@iem.kug.ac.at</FONT></A><FONT face="Times New Roman" 
size=3>&gt;<BR>&gt; Sent: Monday, August 27, 2001 7:54 PM<BR>&gt; Subject: Re: 
[pd] delread~<BR>&gt;<BR>&gt;<BR>&gt; &gt; Hi,<BR>&gt; &gt; I don't think you 
need do do anything funny with block~.&nbsp; The easiest<BR>way<BR>&gt; &gt; to 
proceed might be to maintain a pair of samples and alternately sample<BR>&gt; 
&gt; each one while reading from the other.&nbsp; Alternatively, you can 
maintain<BR>a<BR>&gt; &gt; larger collection of samples from more or less recent 
input.<BR>&gt; &gt;<BR>&gt; &gt; Yes, you do have to specify the size of the 
sample in advance, but that<BR>&gt; doesn't<BR>&gt; &gt; mean you have to use 
all of it.&nbsp; There are sampler patches in the<BR>&gt; &gt; "dsp examples" 
(under "pure documentation") which might help you<BR>forward.<BR>&gt; 
&gt;<BR>&gt; &gt; cheers<BR>&gt; &gt; Miller<BR>&gt; &gt;<BR>&gt; &gt; On Sun, 
Aug 26, 2001 at 04:55:49PM +0200, Gregorio Garc?a wrote:<BR>&gt; &gt; &gt; Hi 
list,<BR>&gt; &gt; &gt;<BR>&gt; &gt; &gt; Im trying to buid a patch that 
processes live input. My wish is i<BR>could<BR>&gt; have<BR>&gt; &gt; &gt; some 
kind of buffer where i could continuously write the input signal<BR>&gt; &gt; 
&gt; (something like a circular qeue?), and arbitrarily read fragments 
of<BR>&gt; sound<BR>&gt; &gt; &gt; within that buffer. I thought of delwrite~/ 
delread~ pairs to<BR>implement<BR>&gt; &gt; &gt; this, but i would like to be 
able to specify the position and total<BR>&gt; length<BR>&gt; &gt; &gt; of the 
audio fragments i want to read in samples (does this make<BR>&gt; sense?). 
Is<BR>&gt; &gt; &gt; the delay amount limited to block size (64 samples? = DSP 
cycle?)<BR>&gt; multiples<BR>&gt; &gt; &gt; (64samples, 128 samples, 194 
samples, etc...)?<BR>&gt; &gt; &gt;<BR>&gt; &gt; &gt; Could i use 
tabsend~/tabreceive~ for this purpose?. What is the usual<BR>&gt; way of<BR>&gt; 
&gt; &gt; using tabsend~/tabreceive~ ? (could you point out an example?). 
What<BR>&gt; input<BR>&gt; &gt; &gt; paramerters can tabreceive~ handle?<BR>&gt; 
&gt; &gt;<BR>&gt; &gt; &gt;&nbsp; Is there a better way for doing this?<BR>&gt; 
&gt; &gt;<BR>&gt; &gt; &gt; thnks<BR>&gt; &gt; &gt;<BR>&gt; 
&gt;<BR>&gt;<BR>&gt;</FONT><BR><BR></FONT></DIV></BODY></HTML>