rsc3/doc-schelp/HelpSource/Classes/Tap.scrbl

63 lines
1.1 KiB
Racket

#lang scribble/manual
@(require (for-label racket))
@title{Tap}
Single tap into a delay line@section{related}
Classes/MultiTap, Classes/PlayBuf
@section{categories}
UGens>Buffer, UGens>Delays>Buffer
@section{description}
The Tap UGen allows a single tap at a delay into a buffer.
Tap uses the link::Classes/PlayBuf:: UGen internally
@section{classmethods}
@section{private}
categories
@section{method}
ar
@section{argument}
bufnum
The index of the buffer to use
@section{argument}
numChannels
Number of channels of the buffer
@section{argument}
delaytime
Tap delay; cannot be modulated
@section{examples}
@racketblock[
// Create a buffer.
b=Buffer.alloc(s, s.sampleRate, 1); //enough space for one second of mono audio
// Write to the Buffer with BufWr, read using two Taps, one for each ear!
(
SynthDef(\helpTap, {|bufnum|
var source, capture;
source= SoundIn.ar(0); //use headphones to avoid feedback
capture= BufWr.ar(source, bufnum, Phasor.ar(0,1, 0, BufFrames.ir(bufnum),1));
Out.ar(0, Tap.ar(bufnum, 1, [0.1,0.9])); //multichannel expansion, so one tap each ear
}).add;
)
x=Synth(\helpTap,[\bufnum, b]);
x.free;
::
]