summaryrefslogtreecommitdiff
path: root/extsnd.html
diff options
context:
space:
mode:
authorIOhannes m zmölnig <zmoelnig@umlautQ.umlaeute.mur.at>2017-08-16 20:26:21 +0200
committerIOhannes m zmölnig <zmoelnig@umlautQ.umlaeute.mur.at>2017-08-16 20:26:21 +0200
commit5a088b89e9cce5dce3daf2aca5e8c2ed3dd59fff (patch)
treec96bbe186ef9ddf978e11d66ee4da90f9bf3d9e9 /extsnd.html
parente56861860a027030bb6d8386ba25f95a057bccdd (diff)
New upstream version 17.5
Diffstat (limited to 'extsnd.html')
-rw-r--r--extsnd.html258
1 files changed, 129 insertions, 129 deletions
diff --git a/extsnd.html b/extsnd.html
index 6419a60..8a6bbe3 100644
--- a/extsnd.html
+++ b/extsnd.html
@@ -186,7 +186,7 @@ related documentation: &nbsp;
<li><a href="#sndobjects">Snd's objects</a>
<ul>
<li><a href="#samplers">Samplers</a>
- <li><a href="#Vcts">Vcts, Float-vectors</a>
+ <li><a href="#Floatvectors">Float-vectors, vcts</a>
<li><a href="#extsndlib">Sndlib</a>
<li><a href="#sndmarks">Marks</a>
<li><a href="#sndmixes">Mixes</a>
@@ -1580,7 +1580,7 @@ samplers, regions, and players, all of which should be compared with equal?, not
<a href="#regionchans">region-chans</a>,
the current selection (<a href="#selectionchans">selection-chans</a>),
<a href="sndclm.html#genericfunctions">mus-channels</a>,
-<a href="#sndmixes">mixes</a>, <a href="#Vcts">vcts</a>, and vectors (always 1 channel), and
+<a href="#sndmixes">mixes</a>, <a href="#Floatvectors">float-vectors</a>, and vectors (always 1 channel), and
<a href="#sndsounds">sounds</a> (as objects or as integers).
</p>
<div class="spacer"></div>
@@ -1671,7 +1671,7 @@ and <a href="#regionframples">region-framples</a>.
<p id="genericmaxamp">maxamp can handle a sound (via the regular <a href="#maxamp">maxamp</a> function),
string (treated as a sound file name, <a href="#mussoundmaxamp">mus-sound-maxamp</a>),
-generator (maxamp of the mus-data vct, if any),
+generator (maxamp of the mus-data float-vector, if any),
float-vector,
region (<a href="#regionmaxamp">region-maxamp</a>),
the current selection (<a href="#selectionmaxamp">selection-maxamp</a>),
@@ -3392,7 +3392,7 @@ demands on memory.
</pre>
<p>make-mix-sampler creates a mix-sampler reading 'mix' starting (in the mix input) at 'beg'.
-See <a href="sndscm.html#mixtovct">mix-&gt;float-vector</a> in mix.scm.
+See <a href="sndscm.html#mixtofv">mix-&gt;float-vector</a> in mix.scm.
</p>
<div class="spacer"></div>
@@ -3669,35 +3669,35 @@ If *reverb* is a snd-&gt;sample generator, for example,
-<!-- INDEX Vcts:Vcts -->
+<!-- INDEX Floatvectors:Float-vectors -->
-<div class="header" id="Vcts">Vcts or float-vectors</div>
+<div class="header" id="Floatvectors">float-vectors or vcts</div>
<p>These are arrays of floats. In s7, use "float-vector", and in Forth and
Ruby use "vct".
</p>
-<!-- VCT TABLE -->
+<!-- FLOATVECTOR TABLE -->
<div class="spacer"></div>
-<!-- list->vct -->
+<!-- list->float-vector -->
<pre class="indented">
-<em class=def id="listtovct">list-&gt;vct</em> lst
<em class=def id="listtofv">list-&gt;float-vector</em> lst
+<em class=emdef>list-&gt;vct</em> lst
</pre>
-<p>return a new float-vector with elements of list 'lst' (equivalent to the <a href="#vct">float-vector</a> function).
+<p>return a new float-vector with elements of list 'lst' (equivalent to the <a href="#fv">float-vector</a> function).
</p>
<div class="spacer"></div>
-<!-- make-vct -->
+<!-- make-float-vector -->
<pre class="indented">
-<em class=def id="makevct">make-vct</em> len (initial-element 0.0)
<em class=def id="makefv">make-float-vector</em> len (initial-element 0.0)
+<em class=emdef>make-vct</em> len (initial-element 0.0)
</pre>
<p>make-float-vector creates a float-vector of size 'len'.
@@ -3705,10 +3705,10 @@ Ruby use "vct".
<div class="spacer"></div>
-<!-- vct -->
+<!-- float-vector -->
<pre class="indented">
-<em class=def id="vct">vct</em> :rest args
<em class=def id="fv">float-vector</em> :rest args
+<em class=emdef>vct</em> :rest args
</pre>
<p>float-vector is equivalent to list-&gt;float-vector with 'args' as the list: <code>(float-vector 0.0 0.1 0.2)</code>.
@@ -3716,10 +3716,10 @@ Ruby use "vct".
<div class="spacer"></div>
-<!-- vct? -->
+<!-- float-vector? -->
<pre class="indented">
-<em class=def id="vctp">vct?</em> v
<em class=def id="fvp">float-vector?</em> v
+<em class=emdef>vct?</em> v
</pre>
<p>float-vector? returns #t if 'v' is a float-vector.
@@ -3727,10 +3727,10 @@ Ruby use "vct".
<div class="spacer"></div>
-<!-- vct-abs! -->
+<!-- float-vector-abs! -->
<pre class="indented">
-<em class=def id="vctabs">vct-abs!</em> v
<em class=def id="fvabs">float-vector-abs!</em> v
+<em class=emdef>vct-abs!</em> v
</pre>
<p>float-vector-abs! replaces each element of 'v' with its absolute value.
@@ -3738,10 +3738,10 @@ Ruby use "vct".
<div class="spacer"></div>
-<!-- vct-add! -->
+<!-- float-vector-add! -->
<pre class="indented">
-<em class=def id="vctadd">vct-add!</em> v1 v2 (off 0)
<em class=def id="fvadd">float-vector-add!</em> v1 v2 (off 0)
+<em class=emdef>vct-add!</em> v1 v2 (off 0)
</pre>
<p>float-vector-add! performs element-wise add: v1[i + off] += v2[i], returning 'v1'.
@@ -3749,10 +3749,10 @@ Ruby use "vct".
<div class="spacer"></div>
-<!-- vct-copy -->
+<!-- float-vector-copy -->
<pre class="indented">
-<em class=def id="vctcopy">vct-copy</em> v
-<em class=def id="fvcopy">float-vector-copy</em> v
+<em class=def id="fvcopy">copy</em> v
+<em class=emdef>vct-copy</em> v
</pre>
<p>float-vector-copy returns a copy of the float-vector 'v'.
@@ -3766,22 +3766,22 @@ Ruby use "vct".
copy file: in Scheme: copy-file, in Ruby: File.copy or File.syscopy<br>
copy string: in Forth: string-copy<br>
copy list: in Forth: list-copy or copy-tree<br>
-copy mix: <a href="sndscm.html#mixtovct">mix-&gt;float-vector</a><br>
+copy mix: <a href="sndscm.html#mixtofv">mix-&gt;float-vector</a><br>
copy sampler: <a href="#copysampler">copy-sampler</a><br>
copy (clone) current sound edit state: <a href="#clonesoundas">clone-sound-as</a><br>
-copy channel data: <a href="#channeltovct">channel-&gt;float-vector</a>, or <a href="#savesoundas">save-sound-as</a><br>
-copy selection data: <a href="#selection2vct">selection-&gt;float-vector</a> or <a href="#saveselection">save-selection</a><br>
-copy region data: <a href="#regiontovct">region-&gt;float-vector</a>, <a href="#saveregion">save-region</a><br>
-copy transform data: <a href="#transformtovct">transform-&gt;float-vector</a><br>
+copy channel data: <a href="#channeltofv">channel-&gt;float-vector</a>, or <a href="#savesoundas">save-sound-as</a><br>
+copy selection data: <a href="#selection2fv">selection-&gt;float-vector</a> or <a href="#saveselection">save-selection</a><br>
+copy region data: <a href="#regiontofv">region-&gt;float-vector</a>, <a href="#saveregion">save-region</a><br>
+copy transform data: <a href="#transformtofv">transform-&gt;float-vector</a><br>
</small></blockquote>
</td></tr></TABLE>
<div class="spacer"></div>
-<!-- vct-equal? -->
+<!-- float-vector-equal? -->
<pre class="indented">
-<em class=def id="vctequal">vct-equal?</em> v1 v2 diff
<em class=def id="fvequal">float-vector-equal?</em> v1 v2 diff
+<em class=emdef>vct-equal?</em> v1 v2 diff
</pre>
<p>float-vector-equal? is an element-wise relative difference check.
@@ -3792,10 +3792,10 @@ are of different lengths, the overlapping portion is checked.
<div class="spacer"></div>
-<!-- vct-fill! -->
+<!-- float-vector-fill! -->
<pre class="indented">
-<em class=def id="vctfill">vct-fill!</em> v val
<em class=def id="fvfill">float-vector-fill!</em> v val
+<em class=emdef>vct-fill!</em> v val
</pre>
<p>float-vector-fill! sets each element of 'v' to 'val': v[i] = val. It returns 'v'.
@@ -3803,10 +3803,10 @@ are of different lengths, the overlapping portion is checked.
<div class="spacer"></div>
-<!-- vct-length -->
+<!-- float-vector-length -->
<pre class="indented">
-<em class=def id="vctlength">vct-length</em> v
<em class=def id="fvlength">float-vector-length</em> v
+<em class=emdef>vct-length</em> v
</pre>
<p>float-vector-length returns the length of 'v'.
@@ -3814,10 +3814,10 @@ are of different lengths, the overlapping portion is checked.
<div class="spacer"></div>
-<!-- vct-max -->
+<!-- float-vector-max -->
<pre class="indented">
-<em class=def id="vctmax">vct-max</em> v
<em class=def id="fvmax">float-vector-max</em> v
+<em class=emdef>vct-max</em> v
</pre>
<p>float-vector-max returns the maximum value of the elements of 'v'.
@@ -3825,10 +3825,10 @@ are of different lengths, the overlapping portion is checked.
<div class="spacer"></div>
-<!-- vct-min -->
+<!-- float-vector-min -->
<pre class="indented">
-<em class=def id="vctmin">vct-min</em> v
<em class=def id="fvmin">float-vector-min</em> v
+<em class=emdef>vct-min</em> v
</pre>
<p>float-vector-min returns the minimum value of the elements of 'v'.
@@ -3836,10 +3836,10 @@ are of different lengths, the overlapping portion is checked.
<div class="spacer"></div>
-<!-- vct-move! -->
+<!-- float-vector-move! -->
<pre class="indented">
-<em class=def id="vctmove">vct-move!</em> v new old backwards
<em class=def id="fvmove">float-vector-move!</em> v new old backwards
+<em class=emdef>vct-move!</em> v new old backwards
</pre>
<p>float-vector-move moves a block of values within a float-vector: v[new++] = v[old++], or
@@ -3848,10 +3848,10 @@ if 'backwards' is #t: v[new--] = v[old--]. It returns 'v'.
<div class="spacer"></div>
-<!-- vct-multiply! -->
+<!-- float-vector-multiply! -->
<pre class="indented">
-<em class=def id="vctmultiply">vct-multiply!</em> v1 v2
<em class=def id="fvmultiply">float-vector-multiply!</em> v1 v2
+<em class=emdef>vct-multiply!</em> v1 v2
</pre>
<p>float-vector-multiply! performs element-wise multiply of two float-vectors: v1[i] *= v2[i]. It returns 'v1'.
@@ -3859,10 +3859,10 @@ if 'backwards' is #t: v[new--] = v[old--]. It returns 'v'.
<div class="spacer"></div>
-<!-- vct-offset! -->
+<!-- float-vector-offset! -->
<pre class="indented">
-<em class=def id="vctoffset">vct-offset!</em> v val
<em class=def id="fvoffset">float-vector-offset!</em> v val
+<em class=emdef>vct-offset!</em> v val
</pre>
<p>float-vector-offset! adds 'val' to each element of 'v': v[i] += val. It returns 'v'.
@@ -3870,10 +3870,10 @@ if 'backwards' is #t: v[new--] = v[old--]. It returns 'v'.
<div class="spacer"></div>
-<!-- vct-peak -->
+<!-- float-vector-peak -->
<pre class="indented">
-<em class=def id="vctpeak">vct-peak</em> v
<em class=def id="fvpeak">float-vector-peak</em> v
+<em class=emdef>vct-peak</em> v
</pre>
<p>float-vector-peak returns the maximum absolute value of the elements of 'v'.
@@ -3881,10 +3881,10 @@ if 'backwards' is #t: v[new--] = v[old--]. It returns 'v'.
<div class="spacer"></div>
-<!-- vct-ref -->
+<!-- float-vector-ref -->
<pre class="indented">
-<em class=def id="vctref">vct-ref</em> v pos
<em class=def id="fvref">float-vector-ref</em> v pos
+<em class=emdef>vct-ref</em> v pos
</pre>
<p>float-vector-ref returns the element 'pos' in 'v': v[pos].
@@ -3892,10 +3892,10 @@ if 'backwards' is #t: v[new--] = v[old--]. It returns 'v'.
<div class="spacer"></div>
-<!-- vct-reverse! -->
+<!-- float-vector-reverse! -->
<pre class="indented">
-<em class=def id="vctreverse">vct-reverse!</em> v size
<em class=def id="fvreverse">float-vector-reverse!</em> v size
+<em class=emdef>vct-reverse!</em> v size
</pre>
<p>float-vector-reverse! reverses the elements of 'v' (in-place), returning 'v'.
@@ -3904,10 +3904,10 @@ If 'size' is given, the reversal centers around it.
<div class="spacer"></div>
-<!-- vct-scale! -->
+<!-- float-vector-scale! -->
<pre class="indented">
-<em class=def id="vctscale">vct-scale!</em> v scl
<em class=def id="fvscale">float-vector-scale!</em> v scl
+<em class=emdef>vct-scale!</em> v scl
</pre>
<p>float-vector-scale! multiplies each element of 'v' by 'scl': v[i] *= scl. It returns 'v'.
@@ -3915,10 +3915,10 @@ If 'size' is given, the reversal centers around it.
<div class="spacer"></div>
-<!-- vct-set! -->
+<!-- float-vector-set! -->
<pre class="indented">
-<em class=def id="vctset">vct-set!</em> v pos val
<em class=def id="fvset">float-vector-set!</em> v pos val
+<em class=emdef>vct-set!</em> v pos val
</pre>
<p>float-vector-set! sets the float-vector 'v' element at 'pos' to 'val': v[pos] = val.
@@ -3927,10 +3927,10 @@ In Scheme, this is the same as (set! (v pos) val).
<div class="spacer"></div>
-<!-- vct-subtract! -->
+<!-- float-vector-subtract! -->
<pre class="indented">
-<em class=def id="vctsubtract">vct-subtract!</em> v1 v2
<em class=def id="fvsubtract">float-vector-subtract!</em> v1 v2
+<em class=emdef>vct-subtract!</em> v1 v2
</pre>
<p>float-vector-subtract! performs an element-wise subtract: v1[i] -= v2[i]. It returns 'v1'.
@@ -3938,10 +3938,10 @@ In Scheme, this is the same as (set! (v pos) val).
<div class="spacer"></div>
-<!-- vct-subseq -->
+<!-- float-vector-subseq -->
<pre class="indented">
-<em class=def id="vctsubseq">vct-subseq</em> v start (end len) nv
<em class=def id="fvsubseq">float-vector-subseq</em> v start (end len) nv
+<em class=emdef>vct-subseq</em> v start (end len) nv
</pre>
<p>float-vector-subseq returns a new float-vector (or 'nv' if given) with the elements of 'v' between 'start' and 'end' inclusive. 'end' defaults
@@ -3950,10 +3950,10 @@ to the end of 'v'.
<div class="spacer"></div>
-<!-- vct+ -->
+<!-- float-vector+ -->
<pre class="indented">
-<em class=def id="vctplus">vct+</em> obj1 obj2
<em class=def id="fvplus">float-vector+</em> obj1 obj2
+<em class=emdef>vct+</em> obj1 obj2
</pre>
<p>float-vector+ combines float-vector-add! and float-vector-offset!,
@@ -3962,10 +3962,10 @@ depending on the type of its arguments.
<div class="spacer"></div>
-<!-- vct* -->
+<!-- float-vector* -->
<pre class="indented">
-<em class=def id="vcttimes">vct*</em> obj1 obj2
<em class=def id="fvtimes">float-vector*</em> obj1 obj2
+<em class=emdef>vct*</em> obj1 obj2
</pre>
<p>float-vector* combines float-vector-multiply! and float-vector-scale!,
@@ -3974,10 +3974,10 @@ depending on the type of its arguments.
<div class="spacer"></div>
-<!-- vct->channel -->
+<!-- float-vector->channel -->
<pre class="indented">
-<em class=def id="vcttochannel">vct-&gt;channel</em> v (beg 0) dur snd chn edpos origin
<em class=def id="fvtochannel">float-vector-&gt;channel</em> v (beg 0) dur snd chn edpos origin
+<em class=emdef>vct-&gt;channel</em> v (beg 0) dur snd chn edpos origin
</pre>
<p>float-vector-&gt;channel sets the samples from 'beg' to 'beg' + 'dur' from the values in 'v'.
@@ -3986,10 +3986,10 @@ This changes (edits) the channel, so 'origin' provides a way to name the edit (f
<div class="spacer"></div>
-<!-- vct->list -->
+<!-- float-vector->list -->
<pre class="indented">
-<em class=def id="vcttolist">vct-&gt;list</em> v
<em class=def id="fvtolist">float-vector-&gt;list</em> v
+<em class=emdef>vct-&gt;list</em> v
</pre>
<p>float-vector-&gt;list returns a list with elements of 'v'.
@@ -3997,10 +3997,10 @@ This changes (edits) the channel, so 'origin' provides a way to name the edit (f
<div class="spacer"></div>
-<!-- vct->string -->
+<!-- float-vector->string -->
<pre class="indented">
-<em class=def id="vcttostring">vct-&gt;string</em> v
<em class=def id="fvtostring">float-vector-&gt;string</em> v
+<em class=emdef>vct-&gt;string</em> v
</pre>
<p>float-vector-&gt;string returns a string describing 'v'.
@@ -4010,7 +4010,7 @@ This changes (edits) the channel, so 'origin' provides a way to name the edit (f
<!-- vct-&gt;vector -->
<pre class="indented">
-<em class=def id="vcttovector">vct-&gt;vector</em> v
+<em class=emdef>vct-&gt;vector</em> v
</pre>
<p>vct-&gt;vector returns a vector with the elements of 'v'.
@@ -4020,7 +4020,7 @@ This changes (edits) the channel, so 'origin' provides a way to name the edit (f
<!-- vector-&gt;vct -->
<pre class="indented">
-<em class=def id="vectortovct">vector-&gt;vct</em> vect
+<em class=emdef>vector-&gt;vct</em> vect
</pre>
<p>vector-&gt;vct returns a vct with elements of vector 'vect'.
@@ -5156,7 +5156,7 @@ the Mix Dialog, various hooks, and various mouse-related actions.
</p>
<p>A mix is an object that represents a channel (one channel in and one channel out) of a sound mix.
-Various mixing functions create these objects (mix-vct for example). In the old days, mixes were identified
+Various mixing functions create these objects (mix-float-vector for example). In the old days, mixes were identified
by integers, so for conversion you can use mix-&gt;integer and integer-&gt;mix.
Say we have a mix object stored in the variable "id":
</p>
@@ -5370,7 +5370,7 @@ red; but (set! (mix-color mx) red) sets only mix mx's waveform to red.
&gt; (mix-home mx)
(#&lt;sound 0&gt; 0 "/home/bil/cl/pistol.snd" 0)
;; (list output-sound-index output-channel input-filename input-channel)
-&gt; (set! mx (mix-vct (make-vct 100 .1) 2000))
+&gt; (set! mx (mix-float-vector (make-float-vector 100 .1) 2000))
#&lt;mix 1&gt;
&gt; (mix-home mx)
(#&lt;sound 0&gt; 0 #f 0)
@@ -5619,16 +5619,16 @@ example, if you know the frequency of the mix sound, you can reflect that in the
<div class="spacer"></div>
-<!-- mix-vct -->
+<!-- mix-float-vector -->
<pre class="indented">
-<em class=def id="mixvct">mix-vct</em> vct beg snd chn with-mix-tags origin
+<em class=def id="mixfv">mix-float-vector</em> v beg snd chn with-mix-tags origin
</pre>
-<p>mix-vct is one of the basic mixing functions. It
-mixes the contents of 'vct' into the given channel starting at sample 'beg'.
+<p>mix-float-vector is one of the basic mixing functions. It
+mixes the contents of 'v' into the given channel starting at sample 'beg'.
If 'with-mix-tags' is #f (the default is #t), the data is
mixed without creating any mix tags.
-mix-vct returns the id of the new mix, or -1 (a simple mix, no tag).
+mix-float-vector returns the id of the new mix, or -1 (a simple mix, no tag).
</p>
<div class="spacer"></div>
@@ -5681,11 +5681,11 @@ mix sound file: <a href="extsnd.html#mix">mix</a> or drag-and-drop it where you
mix channel: see <a href="sndscm.html#mixchannel">mix-channel</a> in extensions.scm<br>
mix region: <a href="extsnd.html#mixregion">mix-region</a><br>
mix selection: <a href="extsnd.html#mixselection">mix-selection</a><br>
-mix vct: <a href="extsnd.html#mixvct">mix-vct</a><br>
+mix float-vector: <a href="extsnd.html#mixfv">mix-float-vector</a><br>
enveloped mix: see <a href="sndscm.html#envelopedmix">enveloped-mix</a> in extensions.scm<br>
read mix samples: <a href="extsnd.html#makemixsampler">make-mix-sampler</a><br>
mix data maxamp: <a href="sndscm.html#mixmaxamp">mix-maxamp</a><br>
-mix data to vct: <a href="sndscm.html#mixtovct">mix-&gt;vct</a><br>
+mix data to float-vector: <a href="sndscm.html#mixtofv">mix-&gt;float-vector</a><br>
save mix data in file: <a href="extsnd.html#savemix">save-mix</a><br>
mix property list: <a href="extsnd.html#mixproperty">mix-property</a> in mix.scm<br>
pan mono sound into stereo: see <a href="sndscm.html#placesound">place-sound</a> in examp.scm<br>
@@ -5922,19 +5922,19 @@ data, and its length in framples.
<div class="spacer"></div>
-<!-- region->vct -->
+<!-- region->float-vector -->
<pre class="indented">
-<em class=def id="regiontovct">region-&gt;vct</em> reg samp samps chan v
+<em class=def id="regiontofv">region-&gt;float-vector</em> reg samp samps chan v
</pre>
-<p>region-&gt;vct returns a vct containing 'samps' samples starting at 'samp' in channel 'chan' of the region 'reg'.
-If 'v' (a vct) is provided, it is filled,
-rather than creating a new vct.
+<p>region-&gt;float-vector returns a float-vector containing 'samps' samples starting at 'samp' in channel 'chan' of the region 'reg'.
+If 'v' (a float-vector) is provided, it is filled,
+rather than creating a new one.
</p>
<pre class="indented">
(define (region-rms n)
- (let* ((data (<em class=red>region-&gt;vct</em> (integer-&gt;region 0) 0 #f n))
+ (let* ((data (<em class=red>region-&gt;float-vector</em> (integer-&gt;region 0) 0 #f n))
(len (length data)))
(sqrt (/ (<a class=quiet href="sndclm.html#dot-product">dot-product</a> data data len) len))))
</pre>
@@ -6070,7 +6070,7 @@ These are equivalent:
<p>filter-selection applies an FIR filter of order 'order' and frequency response 'env'
to the selection. 'env' can be the filter coefficients
-themselves in a vct with at least 'order' elements, or
+themselves in a float-vector with at least 'order' elements, or
a CLM filtering generator (see <a href="#filtersound">filter-sound</a>).
If 'truncate' is #t (the default), the filter output is truncated at the selection
end. If 'truncate' is #f, the extra output ('order' samples worth) is mixed into the stuff following the selection.
@@ -6157,7 +6157,7 @@ saving them in files named 'base'.n: (brksnd 1.0 \"sec\")"))
</pre>
<p>scale-selection-by scales (multiplies) the selection by 'scalers' which can be either a float,
-a list of floats, or a vct. In a multichannel selection, each member of the vct or list
+a list of floats, or a float-vector. In a multichannel selection, each member of the float-vector or list
is applied to the next channel in the selection. (scale-selection-by '(0.0 2.0)) scales
the first channel by 0.0, the second (if any) by 2.0. (scale-selection-by 2.0) scales
all channels by 2.0. Normally the order of channels follows the order of the sounds.
@@ -6171,7 +6171,7 @@ all channels by 2.0. Normally the order of channels follows the order of the so
</pre>
<p>scale-selection-to normalizes the selection to peak amplitude 'norms' which can be either a float,
-a list of floats, or a vct.
+a list of floats, or a float-vector.
</p>
<div class="spacer"></div>
@@ -6501,7 +6501,7 @@ The following substitutions can be made:
<a href="#reversesound">reverse-sound</a> s c e <a href="#reversechannel">reverse-channel</a> beg dur s c e
<A href="#scaleby">scale-by</A> scls s c <a href="#scalechannel">scale-channel</a> scl beg dur s c e
<A href="#scaleto">scale-to</A> scls s c <a href="#normalizechannel">normalize-channel</a> norm beg dur s c e
-<a href="#setsamples">set-samples</a> beg dur data s c trunc origin fchan <a href="#vcttochannel">vct-&gt;channel</a> vct beg dur s c e
+<a href="#setsamples">set-samples</a> beg dur data s c trunc origin fchan <a href="#fvtochannel">float-vector-&gt;channel</a> v beg dur s c e
<a href="#smoothsound">smooth-sound</a> beg dur s c <a href="#smoothchannel">smooth-channel</a> beg dur s c e
<a href="#srcsound">src-sound</a> num base s c e <a href="#srcchannel">src-channel</a> ratio-or-env beg dur s c e
<a href="#undo">undo</a> edits s c <a href="#undochannel">undo-channel</a> edits s c
@@ -6660,7 +6660,7 @@ See <a href="#snpmark">snap-mark-to-beat</a>, or <a href="sndscm.html#snapmixtob
<em class=def id="channelampenvs">channel-amp-envs</em> file chan size peak-file-func work-proc-func
</pre>
-<p>channel-amp-envs returns two vcts of length 'size' containing the peak-amp envelopes of the channel 'chan' of file 'file'.
+<p>channel-amp-envs returns two float-vectors of length 'size' containing the peak-amp envelopes of the channel 'chan' of file 'file'.
'peak-file-func' (if any) is used to get the name of the associated peak-env file if the file is very large.
'work-proc-func' is called when the amp envs are ready if the amp envs are gathered in the background.
If 'file' is a sound, 'size' is an edit-position, and the current amp envs (if any) are returned.
@@ -6768,12 +6768,12 @@ The following code sets the 'unite' button if the current sound has more than 4
<div class="separator"></div>
-<!-- channel->vct -->
+<!-- channel->float-vector -->
<pre class="indented">
-<em class=def id="channeltovct">channel-&gt;vct</em> beg dur snd chn edpos
+<em class=def id="channeltofv">channel-&gt;float-vector</em> beg dur snd chn edpos
</pre>
-<p id="selection2vct">channel-&gt;vct returns a vct with the specified data. In Ruby, the "-&gt;" in a function name is translated to "2",
+<p id="selection2fv">channel-&gt;float-vector returns a float-vector with the specified data. In Ruby, the "-&gt;" in a function name is translated to "2",
so the function call is:
</p>
@@ -6781,16 +6781,16 @@ so the function call is:
</pre>
<pre class="indented">
-(define* (selection-&gt;vct snd chn)
+(define* (selection-&gt;float-vector snd chn)
(cond ((selection-member? snd chn)
- (channel-&gt;vct (selection-position snd chn) (selection-framples snd chn) snd chn))
+ (channel-&gt;float-vector (selection-position snd chn) (selection-framples snd chn) snd chn))
((selection?)
(error 'no-such-channel
- (list "selection-&gt;vct"
+ (list "selection-&gt;float-vector"
(format #f "snd ~A channel ~D is not a member of the selection" snd chn))))
(else
- (error 'no-active-selection (list "selection-&gt;vct")))))
+ (error 'no-active-selection (list "selection-&gt;float-vector")))))
</pre>
<p>See also mark-explode in marks.scm.
@@ -7337,7 +7337,7 @@ if you don't want all the directory junk. See examp.scm for many examples.
<p>The regularized version of filter-sound. If the end of the filtered portion is not the end of the sound,
the 'trunc' argument determines whether the filtered sound is truncated at that point (the default: #t),
or mixed with the overlapping section, similar to the truncate argument to <a href="#filterselection">filter-selection</a>.
-'env' can be either the frequency response envelope, or a vct containing the desired coefficients.
+'env' can be either the frequency response envelope, or a float-vector containing the desired coefficients.
</p>
<div class="separator"></div>
@@ -7349,7 +7349,7 @@ or mixed with the overlapping section, similar to the truncate argument to <a hr
<p>filter-sound applies an FIR filter of order 'order' (actually one more than the nominal order)
and frequency response 'env'
-to the given channel. 'env' can also be a vct containing the filter coefficients,
+to the given channel. 'env' can also be a float-vector containing the filter coefficients,
or any CLM filtering generator
(e.g. comb, formant, one-pole, iir-filter, etc). The generator
is called in C, not Scheme, so this is the fastest way to apply
@@ -7518,7 +7518,7 @@ associated with channel 'chn' in 'snd'.
</pre>
<p id="xdisplayenergy">The current slider values can be read from <a href="#xpositionslider">x-position-slider</a>,
-<a href="#xzoomslider">x-zoom-slider</a>, etc. The 'data' argument can be a list of vcts; each is graphed at the same time, following the sequence of
+<a href="#xzoomslider">x-zoom-slider</a>, etc. The 'data' argument can be a list of float-vectors; each is graphed at the same time, following the sequence of
colors used when channels are superimposed. If 'data'
is a list of numbers, it is assumed to be an envelope (a list of breakpoints).
If 'force-display' is #f (the default is #t), the graph is not
@@ -7649,7 +7649,7 @@ insert some portion of a channel: <a href="sndscm.html#insertchannel">insert-cha
insert a silence: <a href="extsnd.html#padchannel">pad-channel</a>, <a href="extsnd.html#insertsilence">insert-silence</a>, <a href="sndscm.html#padsound">pad-sound</a><br>
insert a region: <a href="extsnd.html#insertregion">insert-region</a><br>
insert the selection: <a href="extsnd.html#insertselection">insert-selection</a><br>
-insert a vct of samples: <a href="extsnd.html#insertsamples">insert-samples</a><br>
+insert a float-vector of samples: <a href="extsnd.html#insertsamples">insert-samples</a><br>
insert a sound: <a href="extsnd.html#insertsound">insert-sound</a><br>
append a sound and silence: <a href="extsnd.html#appendsound">append-sound</a><br>
</small></blockquote>
@@ -7663,7 +7663,7 @@ append a sound and silence: <a href="extsnd.html#appendsound">append-sound</a><b
<em class=def id="insertsamples">insert-samples</em> samp samps data snd chn edpos auto-delete origin
</pre>
-<p>This inserts 'samps' samples of 'data' (normally a vct) starting at sample 'samp' in the given channel.
+<p>This inserts 'samps' samples of 'data' (normally a float-vector) starting at sample 'samp' in the given channel.
'data' can be a filename.
The regularized version of this is:
</p>
@@ -7864,7 +7864,7 @@ can return #f, which means that the data passed in is
deleted (replaced by nothing), or a number which replaces the
current sample,
or #t which halts the mapping operation, leaving trailing samples
-unaffected, or a vct
+unaffected, or a float-vector
the contents of which are spliced into the edited version, effectively
replacing the current sample with any number of samples. This sounds
more complicated than it is! Basically, a map-channel function receives
@@ -8184,7 +8184,7 @@ file ok:
<p>There are
other ways to get at sound file data: <a class=quiet href="#makesampler">make-sampler</a> can be given a filename,
-rather than a sound; file-&gt;vct in examp.scm;
+rather than a sound; file-&gt;float-vector in examp.scm;
<a class=quiet href="#mussoundopeninput">mus-sound-open-input</a> and
there are a variety of CLM-based functions such as
<a class=quiet href="sndclm.html#filetosample">file-&gt;sample</a> and
@@ -8621,7 +8621,7 @@ reverse via FFT: <a href="extsnd.html#sillyreverse">silly-reverse</a><br>
reverse order of channels: <a href="extsnd.html#reversechannels">reverse-channels</a><br>
reverse a list: reverse and reverse!<br>
reverse a string: in Ruby: reverse<br>
-reverse vct: <a href="extsnd.html#vctreverse">vct-reverse!</a><br>
+reverse float-vector: reverse!<br>
</small></blockquote>
</td></tr></TABLE>
<div class="separator"></div>
@@ -8709,7 +8709,7 @@ samples at 'samp', so:
<em class=def id="samples">samples</em> samp samps snd chn edpos
</pre>
-<p>This returns a vct of 'samps' samples starting at 'samp' in the given channel.
+<p>This returns a float-vector of 'samps' samples starting at 'samp' in the given channel.
'samp' defaults to 0. 'samps' defaults to framples - 'samp' (i.e. read to the end of the data).
'pos' is the edit history position to read (it defaults to the current position).
This is settable (as is <a href="#sample">sample</a>):
@@ -8717,9 +8717,9 @@ This is settable (as is <a href="#sample">sample</a>):
<pre class="indented">
&gt; (samples 1000 10)
-#&lt;vct[len=10]: 0.033 0.035 0.034 0.031 0.026 0.020 0.013 0.009 0.005 0.004&gt;
-&gt; (set! (samples 1000 10) (make-vct 10 .1))
-#&lt;vct[len=10]: 0.100 0.100 0.100 0.100 0.100 0.100 0.100 0.100 0.100 0.100&gt;
+#&lt;float-vector[len=10]: 0.033 0.035 0.034 0.031 0.026 0.020 0.013 0.009 0.005 0.004&gt;
+&gt; (set! (samples 1000 10) (make-float-vector 10 .1))
+#&lt;float-vector[len=10]: 0.100 0.100 0.100 0.100 0.100 0.100 0.100 0.100 0.100 0.100&gt;
</pre>
<div class="separator"></div>
@@ -8916,7 +8916,7 @@ Forth:
<p>scale-by <a href="snd.html#scaling">scales</a> the amplitude of 'snd' by 'scalers'. Unlike most of these functions,
scale-by follows the 'sync' buttons and affects all currently sync'd
-channels. 'scalers' can be either a float, a list, or a vct.
+channels. 'scalers' can be either a float, a list, or a float-vector.
In the latter case, the values are used one by one, applying each as
scale-by moves through the channels. If 'sync' is off, channel 'chn'
is scaled (it defaults to the currently selected channel). <code>(scale-by 2.0)</code> doubles all samples.
@@ -9005,7 +9005,7 @@ There are approximately a bazillion ways to scale samples in Snd; here's a potpo
<p>scale-to <a href="snd.html#scaling">normalizes</a> 'snd' to 'norms' (following <a class=quiet href="#sync">sync</a> as in <a href="#scaleby">scale-by</a>).
(scale-to 0.5) scales the current channel so that its maxamp is 0.5.
If all the sound's samples are 0.0, scale-to returns #f and does not perform any edit.
-'norms' can be a number, a list of numbers, or a vct.
+'norms' can be a number, a list of numbers, or a float-vector.
</p>
<div class="separator"></div>
@@ -9122,7 +9122,7 @@ If 'samp' is beyond the end of the file, the file is first zero-padded to reach
</pre>
<p>replaces 10000 samples with data from oboe.snd.
-If 'data' is a vct, set-samples is identical to <a href="#vcttochannel">vct-&gt;channel</a>.
+If 'data' is a float-vector, set-samples is identical to <a href="#fvtochannel">float-vector-&gt;channel</a>.
If 'trunc' is #t and 'samp' is 0, the
sound is truncated (if necessary) to reflect the end of 'data'.
If the in-coming data file has more than one channel, 'infile-chan'
@@ -10034,13 +10034,13 @@ autocorrelation walsh-transform cepstrum
<div class="separator"></div>
-<!-- transform->vct -->
+<!-- transform->float-vector -->
<pre class="indented">
-<em class=def id="transformtovct">transform-&gt;vct</em> snd chn v
+<em class=def id="transformtofv">transform-&gt;float-vector</em> snd chn v
</pre>
-<p>This returns a vct with the transform data from the given channel.
-If 'v' (a vct) is provided, it is filled, rather than creating a new vct.
+<p>This returns a float-vector with the transform data from the given channel.
+If 'v' (a float-vector) is provided, it is filled, rather than creating a new one.
See <a href="#fftpeak">fft-peak</a> for an example.
</p>
<div class="separator"></div>
@@ -10649,7 +10649,7 @@ rattling effect.
</pre>
<p>The <a class=quiet href="snd.html#filtercontrol">filter</a> coefficients (read-only currently). It is
-a vct suitable for use with the <a href="sndclm.html#filter">filter generator</a> or with
+a float-vector suitable for use with the <a href="sndclm.html#filter">filter generator</a> or with
<a href="#filtersound">filter-sound</a>.
</p>
<div class="spacer"></div>
@@ -11282,7 +11282,7 @@ of the resultant graph. 'lo' and 'hi' set which portion of the returned data
to graph (normally 0.0 to 1.0). 'proc' is a function of two
arguments, the length of the desired transform, and a sampler that
can be used to get the current data. Do not free the sampler!
-The function should return a vct containing the transform data.
+The function should return a float-vector containing the transform data.
add-transform returns the new transform's transform-type (an object).
Here's an example that displays a histogram of the current values in 16 bins:
</p>
@@ -11331,11 +11331,11 @@ Here's an example that displays a histogram of the current values in 16 bins:
<em class=def id="fft">fft</em> rl im sgn
</pre>
-<p>This performs an FFT on vcts 'rl' and 'im' (the real and imaginary parts of the
+<p>This performs an FFT on float-vectors 'rl' and 'im' (the real and imaginary parts of the
input data). 'sgn' is 1 for an FFT, -1 for an inverse FFT; (the default is 1).
The CLM <a href="sndclm.html#fft">fft</a> function is called mus-fft in Snd.
The only difference between the two is that Snd's fft determines the fft size from
-the size of the vcts passed to it, whereas CLM's takes the size as an argument.
+the size of the float-vectors passed to it, whereas CLM's takes the size as an argument.
Here's an example that uses the fft to produce a sum of sinusoids each with arbitrary amplitude
and initial-phase:
</p>
@@ -11373,7 +11373,7 @@ and initial-phase:
<em class=def id="sndspectrum">snd-spectrum</em> data window length (linear #t) (beta 0.0) in-place (normalized #t)
</pre>
-<p>This returns the spectrum (as a vct) of 'data' (also a vct) using the fft window 'win'.
+<p>This returns the spectrum (as a float-vector) of 'data' (also a float-vector) using the fft window 'win'.
'length' is the number of samples
of data.
</p>
@@ -11385,7 +11385,7 @@ of data.
<p>If 'linear' is #f (its default is #t), the spectrum is in dB.
'beta' is the fft data window family parameter; it is scaled internally so here it should be between 0.0 and 1.0.
-If 'in-place' is #t, the spectrum is in 'data', otherwise snd-spectrum returns a new vct.
+If 'in-place' is #t, the spectrum is in 'data', otherwise snd-spectrum returns a new float-vector.
</p>
<div class="spacer"></div>
@@ -11414,7 +11414,7 @@ If 'in-place' is #t, the spectrum is in 'data', otherwise snd-spectrum returns a
<p>Other related variables and functions:</p>
<pre class="indented">
<a href="#transformgraphp">transform-graph?</a> <a href="#showtransformpeaks">show-transform-peaks</a> <a href="#transformsample">transform-sample</a>
-<a href="#fftbeta">fft-window-beta</a> <a href="#showselectiontransform">show-selection-transform</a> <a href="#transformtovct">transform-&gt;vct</a>
+<a href="#fftbeta">fft-window-beta</a> <a href="#showselectiontransform">show-selection-transform</a> <a href="#transformtofv">transform-&gt;float-vector</a>
<a href="#aftertransformhook">after-transform-hook</a> <a href="#spectrumend">spectrum-end</a> <a href="#transformframples">transform-framples</a>
<a href="#fftlogfrequency">fft-log-frequency</a> <a href="#spectrohop">spectro-hop</a> <a href="#transformtype">transform-type</a>
<a href="#fftlogmagnitude">fft-log-magnitude</a> <a href="#spectrumstart">spectrum-start</a> <a href="#updatetransformgraph">update-transform-graph</a>
@@ -13750,7 +13750,7 @@ use with <a href="#colormap">colormap</a> or <a href="#colormapref">colormap-ref
'func' is a function of one argument, the desired colormap size; it will be
called whenever the new colormap's values are needed or the colormap size changes,
so that the colormap needs to be recomputed. It should return a list of
-three vcts, each vct containing 'size' values representing respectively
+three float-vectors, each float-vector containing 'size' values representing respectively
the red, green, and blue values (each a number between 0.0 and 1.0).
In the following code, the fields are set from envelopes (this is a loose translation
of FractInt's royal colormap):
@@ -14023,7 +14023,7 @@ or the local envelope editor code in xm-enved.scm.
</pre>
<p>This draws dots of size 'dot-size' from the (x y) pairs in the vector 'positions' in the specified context.
-draw-dots, draw-lines, and fill-polygon take vectors, rather than vcts (which would be more consistent
+draw-dots, draw-lines, and fill-polygon take vectors, rather than float-vectors (which would be more consistent
with the rest of Snd) because the values passed are supposed to be short ints.
</p>
<div class="spacer"></div>
@@ -14223,8 +14223,8 @@ The 'alpha' argument only matters in Gtk.
<p id="displaydb">Use make-graph-data to get the currently displayed data (i.e. the waveform displayed
in the graph, which can be based on an overall peak envelope rather than the
individual samples).
-It returns either a vct (if the graph has one trace), or a
-list of two vcts (the two sides of the peak envelope graph).
+It returns either a float-vector (if the graph has one trace), or a
+list of two float-vectors (the two sides of the peak envelope graph).
'edit-position' defaults to the current edit history position,
'low-sample' defaults to the current window left sample, and
'high-sample' defaults to the current rightmost sample.
@@ -14260,8 +14260,8 @@ The result can be used in the lisp graph:
presenting the same thing in dB in the lisp graph. <a href="sndscm.html#displayenergy">display-energy</a>
in draw.scm is another example. But the real power of this function
comes from its use with graph-data.
-The latter takes its argument (either a vct or a list of two
-vcts), and displays it in any channel's time domain graph using its current graph-style.
+The latter takes its argument (either a float-vector or a list of two
+float-vectors), and displays it in any channel's time domain graph using its current graph-style.
</p>
<div class="spacer"></div>