File: buzz.html

package info (click to toggle)
csound-doc 3.47b2-2
  • links: PTS
  • area: non-free
  • in suites: woody
  • size: 1,492 kB
  • ctags: 272
  • sloc: makefile: 36
file content (89 lines) | stat: -rw-r--r-- 4,469 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<HTML>
<TITLE>BUZZ</TITLE>
<CENTER><A NAME="buzz"></A>
<HR><B><A HREF="../REFER.html">QUICK-REF</A></B> - <B><A HREF="../TITLE.html"><FONT SIZE=+1>C</FONT>soundManual</A></B>
- <B><A HREF="./SIG_GENS.html#">Top of this section</A></B> - <A HREF="./loscil.html">Previous</A>
- <A HREF="../CONTENTS.html">Contents</A> - <A HREF="../INDEX.html">Index</A>
- <A HREF="./adsyn.html">Next</A>&nbsp;
<HR></CENTER>

<H2>
buzz, gbuzz, poscil</H2>

<PRE>&nbsp;&nbsp;&nbsp;&nbsp; ar&nbsp;&nbsp; <B>poscil</B>&nbsp;&nbsp;&nbsp; kamp, kcps, kfrac[, iphs]
&nbsp;&nbsp;&nbsp;&nbsp; ar&nbsp;&nbsp; <B>buzz</B>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xamp, xcps, knh, ifn[, iphs]
&nbsp;&nbsp;&nbsp;&nbsp; ar&nbsp;&nbsp; <B>gbuzz</B>&nbsp;&nbsp;&nbsp;&nbsp; xamp, xcps, knh, klh, kr, ifn[, iphs]</PRE>

<HR>
<H4>
<U>DESCRIPTION</U></H4>
Output is a set of harmonically related cosine partials.
<H4>
<U>INITIALIZATION</U></H4>
<I>ifn</I> - table number of a stored function containing (for <B>buzz</B>)
a sine wave, or (for <B>gbuzz</B>) a cosine wave. In either case a large
table of at least 8192 points is recommended.

<P><I>iphs</I> (optional) - initial phase of the fundamental frequency,
expressed as a fraction of a cycle (0 to 1). A negative value will cause
phase initialization to be skipped. The default value is zero
<H4>
<U>PERFORMANCE</U></H4>
<I>kfrac</I> - fractional width of the pulse part of a cycle.<B> poscil</B>
is a k-rate varying pulse-width audio oscillator, with on/off levels set
to provide a zero-average DC offset. Although pulse-width oscillation is
an unnatural signal (it does not occur in natural instruments), it is a
popular source in synthesizers.

<P>The buzz units generate an additive set of harmonically related cosine
partials of fundamental frequency <I>xcps</I>, and whose amplitudes are
scaled so their summation peak equals <I>xamp</I>. The selection and strength
of partials is determined by the following control parameters:

<P><I>knh</I> - total number of harmonics requested. Must be positive.

<P><I>klh</I> - lowest harmonic present. Can be positive, zero or negative.
In <B>gbuzz</B> the set of partials can begin at any partial number and
proceeds upwards; if <I>klh</I> is negative, all partials below zero will
reflect as positive partials without phase change (since cosine is an even
function), and will add constructively to any positive partials in the
set.

<P><I>kr</I> - specifies the multiplier in the series of amplitude coefficients.
This is a power series: if the <I>klh</I>th partial has a strength coefficient
of A, the (<I>klh</I> + n)th partial will have a coefficient of A * (<I>kr</I>
** n), i.e. strength values trace an exponential curve. <I>kr</I> may be
positive, zero or negative, and is not restricted to integers.

<P><B>buzz</B> and <B>gbuzz </B>are useful as complex sound sources in
subtractive synthesis. <B>buzz</B> is a special case of the more general
<B>gbuzz</B> in which <I>klh</I> = <I>kr</I>= 1; it thus produces a set
of knh equal-strength harmonic partials, beginning with the fundamental.
(This is a band-limited pulse train; if the partials extend to the Nyquist,
i.e. <I>knh</I> = int (sr / 2 / fundamental freq.), the result is a real
pulse train of amplitude <I>xamp</I>.) Although both <I>knh</I> and <I>klh</I>
may be varied during performance, their internal values are necessarily
integer and may cause "pops" due to discontinuities in the output; <I>kr,</I>
however, can be varied during performance to good effect. Both <B>buzz</B>
and <B>gbuzz</B> can be amplitude- and/or frequency-modulated by either
control or audio signals.

<P>N.B. These two units have their analogs in <B><A HREF="../Function/gen11.html">GEN11</A></B>,
in which the same set of cosines can be stored in a function table for
sampling by an oscillator. Although computationally more efficient, the
stored pulse train has a fixed spectral content, not a time-varying one
as above.
<CENTER><P>
<HR><B><A HREF="../REFER.html">QUICK-REF</A></B> - <B><A HREF="../TITLE.html"><FONT SIZE=+1>C</FONT>soundManual</A></B>
- <B><A HREF="./SIG_GENS.html#">Top of this section</A></B> - <A HREF="./loscil.html">Previous</A>
- <A HREF="../CONTENTS.html">Contents</A> - <A HREF="../INDEX.html">Index</A>
- <A HREF="./adsyn.html">Next</A>&nbsp;
<HR></CENTER>


<P><CENTER>
<B><I><FONT COLOR="#006600">HTML Csound Manual - <FONT SIZE=-1>&copy;
Jean Pich&eacute; &amp; Peter J. Nix, 1994-97</FONT></FONT></I></B>&nbsp;
</CENTER>
</HTML>