<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>semitone</title> <link rel="stylesheet" type="text/css" href="csound.css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.76.1" /> <link rel="home" href="index.html" title="The Canonical Csound Reference Manual" /> <link rel="up" href="OpcodesTop.html" title="Orchestra Opcodes and Operators" /> <link rel="prev" href="sekere.html" title="sekere" /> <link rel="next" href="sense.html" title="sense" /> </head> <body> <div class="navheader"> <table width="100%" summary="Navigation header"> <tr> <th colspan="3" align="center">semitone</th> </tr> <tr> <td width="20%" align="left"><a accesskey="p" href="sekere.html">Prev</a> </td> <th width="60%" align="center">Orchestra Opcodes and Operators</th> <td width="20%" align="right"> <a accesskey="n" href="sense.html">Next</a></td> </tr> </table> <hr /> </div> <div class="refentry" title="semitone"> <a id="semitone"></a> <div class="titlepage"></div> <a id="IndexSemitone" class="indexterm"></a> <div class="refnamediv"> <h2> <span class="refentrytitle">semitone</span> </h2> <p>semitone — Calculates a factor to raise/lower a frequency by a given amount of semitones. </p> </div> <div class="refsect1" title="Description"> <a id="idp41813888"></a> <h2>Description</h2> <p> Calculates a factor to raise/lower a frequency by a given amount of semitones. </p> </div> <div class="refsect1" title="Syntax"> <a id="idp41814688"></a> <h2>Syntax</h2> <pre class="synopsis"><span class="command"><strong>semitone</strong></span>(x)</pre> <p> This function works at a-rate, i-rate, and k-rate. </p> </div> <div class="refsect1" title="Initialization"> <a id="idp41825488"></a> <h2>Initialization</h2> <p> <span class="emphasis"><em>x</em></span> -- a value expressed in semitones. </p> </div> <div class="refsect1" title="Performance"> <a id="idp41826384"></a> <h2>Performance</h2> <p> The value returned by the <span class="emphasis"><em>semitone</em></span> function is a factor. You can multiply a frequency by this factor to raise/lower it by the given amount of semitones. </p> </div> <div class="refsect1" title="Examples"> <a id="idp41868488"></a> <h2>Examples</h2> <p> Here is an example of the semitone opcode. It uses the file <a class="ulink" href="examples/semitone.csd" target="_top"><em class="citetitle">semitone.csd</em></a>. </p> <div class="example"> <a id="idp41869464"></a> <p class="title"> <strong>Example 750. Example of the semitone opcode.</strong> </p> <div class="example-contents"> <p>See the sections <a class="link" href="UsingRealTime.html" title="Real-Time Audio"><em class="citetitle">Real-time Audio</em></a> and <a class="link" href="CommandFlags.html" title="Csound command line"><em class="citetitle">Command Line Flags</em></a> for more information on using command line flags.</p> <pre class="programlisting"> <span class="csdtag"><CsoundSynthesizer></span> <span class="csdtag"><CsOptions></span> <span class="comment">; Select audio/midi flags here according to platform</span> -odac <span class="comment">;;;realtime audio out</span> <span class="comment">;-iadc ;;;uncomment -iadc if realtime audio input is needed too</span> <span class="comment">; For Non-realtime ouput leave only the line below:</span> <span class="comment">; -o semitone.wav -W ;;; for file output any platform</span> <span class="csdtag"></CsOptions></span> <span class="csdtag"><CsInstruments></span> <span class="ohdr">sr</span> <span class="op">=</span> 44100 <span class="ohdr">ksmps</span> <span class="op">=</span> 32 <span class="ohdr">nchnls</span> <span class="op">=</span> 2 <span class="ohdr">0dbfs</span> <span class="op">=</span> 1 <span class="oblock">instr</span> 1 iroot <span class="op">=</span> 440 <span class="comment">; root note is A above middle-C (440 Hz)</span> ksem <span class="opc">lfo</span> 12, .5, 5 <span class="comment">; generate sawtooth, go from 5 octaves higher to root</span> ksm <span class="op">=</span> <span class="opc">int</span>(ksem) <span class="comment">; produce only whole numbers</span> kfactor <span class="op">=</span> <span class="opc">semitone</span>(ksm) <span class="comment">; for semitones</span> knew <span class="op">=</span> iroot <span class="op">*</span> kfactor <span class="opc">printk2</span> knew <span class="opc">printk2</span> kfactor asig <span class="opc">pluck</span> 1, knew, 1000, 0, 1 asig <span class="opc">dcblock</span> asig <span class="comment">;remove DC</span> <span class="opc">outs</span> asig, asig <span class="oblock">endin</span> <span class="csdtag"></CsInstruments></span> <span class="csdtag"><CsScore></span> <span class="stamnt">i</span> 1 0 5 <span class="stamnt">e</span> <span class="csdtag"></CsScore></span> <span class="csdtag"></CsoundSynthesizer></span> </pre> </div> </div> <p><br class="example-break" /> Its output should include lines like: </p> <pre class="screen"> i1 880.00000 i1 2.00000 i1 830.65625 i1 1.88786 i1 783.94665 i1 1.78170 i1 739.98885 i1 1.68179 i1 698.49586 i1 1.58749 i1 659.21793 i1 1.49822 i1 622.25397 i1 1.41421 i1 587.36267 i1 1.33492 i1 554.33399 i1 1.25985 i1 523.25113 i1 1.18921 i1 493.91116 i1 1.12253 i1 466.13747 i1 1.05940 i1 440.00000 i1 1.00000 ....... </pre> <p> </p> </div> <div class="refsect1" title="See Also"> <a id="idp41872912"></a> <h2>See Also</h2> <p> <a class="link" href="cent.html" title="cent"><em class="citetitle">cent</em></a>, <a class="link" href="db.html" title="db"><em class="citetitle">db</em></a>, <a class="link" href="octave.html" title="octave"><em class="citetitle">octave</em></a> </p> </div> <div class="refsect1" title="Credits"> <a id="idp41874928"></a> <h2>Credits</h2> <p>New in version 4.16</p> </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"><a accesskey="p" href="sekere.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="OpcodesTop.html">Up</a> </td> <td width="40%" align="right"> <a accesskey="n" href="sense.html">Next</a></td> </tr> <tr> <td width="40%" align="left" valign="top">sekere </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> <td width="40%" align="right" valign="top"> sense</td> </tr> </table> </div> </body> </html>