mirror of
https://github.com/thestk/stk
synced 2026-01-15 05:51:52 +00:00
Release 4.2.0 tarball
This commit is contained in:
committed by
Stephen Sinclair
parent
fe20fe92a2
commit
de344668dd
@@ -9,10 +9,7 @@
|
||||
<a class="qindex" href="index.html">Home</a> <a class="qindex" href="information.html">Information</a> <a class="qindex" href="classes.html">Classes</a> <a class="qindex" href="download.html">Download</a> <a class="qindex" href="usage.html">Usage</a> <a class="qindex" href="maillist.html">Mail List</a> <a class="qindex" href="system.html">Requirements</a> <a class="qindex" href="links.html">Links</a> <a class="qindex" href="tutorial.html">Tutorial</a></CENTER>
|
||||
<HR>
|
||||
<!-- Generated by Doxygen 1.3.4 -->
|
||||
<h1>VoicForm Class Reference</h1>Four formant synthesis instrument.
|
||||
<a href="#_details">More...</a>
|
||||
<p>
|
||||
<code>#include <<a class="el" href="VoicForm_8h-source.html">VoicForm.h</a>></code>
|
||||
<h1>VoicForm Class Reference</h1><code>#include <<a class="el" href="VoicForm_8h-source.html">VoicForm.h</a>></code>
|
||||
<p>
|
||||
<p>Inheritance diagram for VoicForm:
|
||||
<p><center><img src="classVoicForm.png" usemap="#VoicForm_map" border="0" alt=""></center>
|
||||
@@ -20,13 +17,24 @@
|
||||
<area href="classInstrmnt.html" alt="Instrmnt" shape="rect" coords="0,56,67,80">
|
||||
<area href="classStk.html" alt="Stk" shape="rect" coords="0,0,67,24">
|
||||
</map>
|
||||
<a href="classVoicForm-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
|
||||
<a href="classVoicForm-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
Four formant synthesis instrument.
|
||||
<p>
|
||||
This instrument contains an excitation singing wavetable (looping wave with random and periodic vibrato, smoothing on frequency, etc.), excitation noise, and four sweepable complex resonances.<p>
|
||||
Measured formant data is included, and enough data is there to support either parallel or cascade synthesis. In the floating point case cascade synthesis is the most natural so that's what you'll find here.<p>
|
||||
Control Change Numbers:<ul>
|
||||
<li>Voiced/Unvoiced Mix = 2</li><li>Vowel/Phoneme Selection = 4</li><li>Vibrato Frequency = 11</li><li>Vibrato Gain = 1</li><li>Loudness (Spectral Tilt) = 128</li></ul>
|
||||
<p>
|
||||
by Perry R. Cook and Gary P. Scavone, 1995 - 2004.
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="VoicForm_8h-source.html#l00039">39</a> of file <a class="el" href="VoicForm_8h-source.html">VoicForm.h</a>.<table border=0 cellpadding=0 cellspacing=0>
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a0" doxytag="VoicForm::VoicForm" ></a>
|
||||
</td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a0">VoicForm</a> ()</td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a0">VoicForm</a> ()</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Class constructor, taking the lowest desired playing frequency. <br><br></td></tr>
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Class constructor. </em> <a href="#a0"></a><em><br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a1" doxytag="VoicForm::~VoicForm" ></a>
|
||||
</td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a1">~VoicForm</a> ()</td></tr>
|
||||
|
||||
@@ -36,27 +44,27 @@ void </td><td class="memItemRight" valign=bottom><a class="el" href="classV
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Reset and clear all internal state. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a3" doxytag="VoicForm::setFrequency" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a3">setFrequency</a> (MY_FLOAT frequency)</td></tr>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a3">setFrequency</a> (StkFloat frequency)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set instrument parameters for a particular frequency. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a4" doxytag="VoicForm::setPhoneme" ></a>
|
||||
bool </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a4">setPhoneme</a> (const char *phoneme)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set instrument parameters for the given phoneme. Returns FALSE if phoneme not found. <br><br></td></tr>
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set instrument parameters for the given phoneme. Returns false if phoneme not found. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a5" doxytag="VoicForm::setVoiced" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a5">setVoiced</a> (MY_FLOAT vGain)</td></tr>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a5">setVoiced</a> (StkFloat vGain)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the voiced component gain. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a6" doxytag="VoicForm::setUnVoiced" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a6">setUnVoiced</a> (MY_FLOAT nGain)</td></tr>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a6">setUnVoiced</a> (StkFloat nGain)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the unvoiced component gain. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a7" doxytag="VoicForm::setFilterSweepRate" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a7">setFilterSweepRate</a> (int whichOne, MY_FLOAT rate)</td></tr>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a7">setFilterSweepRate</a> (unsigned int whichOne, StkFloat rate)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the sweep rate for a particular formant filter (0-3). <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a8" doxytag="VoicForm::setPitchSweepRate" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a8">setPitchSweepRate</a> (MY_FLOAT rate)</td></tr>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a8">setPitchSweepRate</a> (StkFloat rate)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set voiced component pitch sweep rate. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a9" doxytag="VoicForm::speak" ></a>
|
||||
@@ -68,40 +76,109 @@ void </td><td class="memItemRight" valign=bottom><a class="el" href="classV
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Stop the voice. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a11" doxytag="VoicForm::noteOn" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a11">noteOn</a> (MY_FLOAT frequency, MY_FLOAT amplitude)</td></tr>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a11">noteOn</a> (StkFloat frequency, StkFloat amplitude)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Start a note with the given frequency and amplitude. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a12" doxytag="VoicForm::noteOff" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a12">noteOff</a> (MY_FLOAT amplitude)</td></tr>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a12">noteOff</a> (StkFloat amplitude)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Stop a note with the given amplitude (speed of decay). <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a13" doxytag="VoicForm::tick" ></a>
|
||||
MY_FLOAT </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a13">tick</a> ()</td></tr>
|
||||
StkFloat </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a13">tick</a> ()</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute one output sample. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a14" doxytag="VoicForm::controlChange" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a14">controlChange</a> (int number, MY_FLOAT value)</td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a14" doxytag="VoicForm::tick" ></a>
|
||||
StkFloat * </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a14">tick</a> (StkFloat *vector, unsigned int vectorSize)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Computer <em>vectorSize</em> outputs and return them in <em>vector</em>. <br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classStkFrames.html">StkFrames</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a15">tick</a> (<a class="el" href="classStkFrames.html">StkFrames</a> &frames, unsigned int channel=1)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Fill a channel of the <a class="el" href="classStkFrames.html">StkFrames</a> object with computed outputs. </em> <a href="#a15"></a><em><br><br></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a16" doxytag="VoicForm::controlChange" ></a>
|
||||
void </td><td class="memItemRight" valign=bottom><a class="el" href="classVoicForm.html#a16">controlChange</a> (int number, StkFloat value)</td></tr>
|
||||
|
||||
<tr><td class="mdescLeft"> </td><td class="mdescRight">Perform the control change specified by <em>number</em> and <em>value</em> (0.0 - 128.0). <br><br></td></tr>
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
Four formant synthesis instrument.
|
||||
<p>
|
||||
This instrument contains an excitation singing wavetable (looping wave with random and periodic vibrato, smoothing on frequency, etc.), excitation noise, and four sweepable complex resonances.<p>
|
||||
Measured formant data is included, and enough data is there to support either parallel or cascade synthesis. In the floating point case cascade synthesis is the most natural so that's what you'll find here.<p>
|
||||
Control Change Numbers:<ul>
|
||||
<li>Voiced/Unvoiced Mix = 2</li><li>Vowel/Phoneme Selection = 4</li><li>Vibrato Frequency = 11</li><li>Vibrato Gain = 1</li><li>Loudness (Spectral Tilt) = 128</li></ul>
|
||||
<p>
|
||||
by Perry R. Cook and Gary P. Scavone, 1995 - 2002.
|
||||
<p>
|
||||
<hr><h2>Constructor & Destructor Documentation</h2>
|
||||
<a class="anchor" name="a0" doxytag="VoicForm::VoicForm" ></a><p>
|
||||
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
||||
<tr>
|
||||
<td class="mdRow">
|
||||
<table cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td class="md" nowrap valign="top"> VoicForm::VoicForm </td>
|
||||
<td class="md" valign="top">( </td>
|
||||
<td class="mdname1" valign="top" nowrap> </td>
|
||||
<td class="md" valign="top"> ) </td>
|
||||
<td class="md" nowrap></td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table cellspacing=5 cellpadding=0 border=0>
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
<td>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="VoicForm_8h-source.html#l00039">39</a> of file <a class="el" href="VoicForm_8h-source.html">VoicForm.h</a>.<hr>The documentation for this class was generated from the following file:<ul>
|
||||
Class constructor.
|
||||
<p>
|
||||
An <a class="el" href="classStkError.html">StkError</a> will be thrown if the rawwave path is incorrectly set. </td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr><h2>Member Function Documentation</h2>
|
||||
<a class="anchor" name="a15" doxytag="VoicForm::tick" ></a><p>
|
||||
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
||||
<tr>
|
||||
<td class="mdRow">
|
||||
<table cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td class="md" nowrap valign="top"> <a class="el" href="classStkFrames.html">StkFrames</a>& VoicForm::tick </td>
|
||||
<td class="md" valign="top">( </td>
|
||||
<td class="md" nowrap valign="top"><a class="el" href="classStkFrames.html">StkFrames</a> & </td>
|
||||
<td class="mdname" nowrap> <em>frames</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td class="md" nowrap>unsigned int </td>
|
||||
<td class="mdname" nowrap> <em>channel</em> = 1</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td class="md">) </td>
|
||||
<td class="md" colspan="2"><code> [virtual]</code></td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table cellspacing=5 cellpadding=0 border=0>
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
<td>
|
||||
|
||||
<p>
|
||||
Fill a channel of the <a class="el" href="classStkFrames.html">StkFrames</a> object with computed outputs.
|
||||
<p>
|
||||
The <code>channel</code> argument should be one or greater (the first channel is specified by 1). An <a class="el" href="classStkError.html">StkError</a> will be thrown if the <code>channel</code> argument is zero or it is greater than the number of channels in the <a class="el" href="classStkFrames.html">StkFrames</a> object.
|
||||
<p>
|
||||
Reimplemented from <a class="el" href="classInstrmnt.html#a10">Instrmnt</a>. </td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr>The documentation for this class was generated from the following file:<ul>
|
||||
<li><a class="el" href="VoicForm_8h-source.html">VoicForm.h</a></ul>
|
||||
<HR>
|
||||
|
||||
<table>
|
||||
<tr><td><A HREF="http://www-ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
|
||||
<tr><td><A HREF="http://ccrma.stanford.edu/software/stk/"><I>The Synthesis ToolKit in C++ (STK)</I></A></td></tr>
|
||||
<tr><td>©1995-2004 Perry R. Cook and Gary P. Scavone. All Rights Reserved.</td></tr>
|
||||
</table>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user