Sophie

Sophie

distrib > Mageia > 6 > armv7hl > by-pkgid > 52c675b343936dc300a25ab661f24b1f > files > 290

libaubio-devel-0.4.2-2.2.mga6.armv7hl.rpm

<!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/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>aubio: synth/test-wavetable.c</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">aubio
   &#160;<span id="projectnumber">0.4.2~alpha</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">synth/test-wavetable.c</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><span class="preprocessor">#include &lt;<a class="code" href="aubio_8h.html">aubio.h</a>&gt;</span></div><div class="line"><span class="preprocessor">#include &quot;utils_tests.h&quot;</span></div><div class="line"></div><div class="line"><span class="keywordtype">int</span> main (<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div><div class="line">{</div><div class="line">  <a class="code" href="types_8h.html#a73eb223321cb66fc30f473677e6356bb">sint_t</a> err = 0;</div><div class="line"></div><div class="line">  <span class="keywordflow">if</span> (argc &lt; 2) {</div><div class="line">    err = 2;</div><div class="line">    PRINT_ERR(<span class="stringliteral">&quot;not enough arguments\n&quot;</span>);</div><div class="line">    PRINT_MSG(<span class="stringliteral">&quot;usage: %s &lt;output_path&gt; [freq] [samplerate]\n&quot;</span>, argv[0]);</div><div class="line">    <span class="keywordflow">return</span> err;</div><div class="line">  }</div><div class="line"></div><div class="line">  <a class="code" href="types_8h.html#a12a1e9b3ce141648783a82445d02b58d">uint_t</a> samplerate = 44100; <span class="comment">// default is the samplerate of input_path</span></div><div class="line">  <a class="code" href="types_8h.html#a12a1e9b3ce141648783a82445d02b58d">uint_t</a> hop_size = 256;</div><div class="line">  <a class="code" href="types_8h.html#a5d7119468d78a1dc35cf76d0adfb1436">smpl_t</a> freq = 440.;</div><div class="line"></div><div class="line">  <a class="code" href="types_8h.html#a40bb5262bf908c328fbcfbe5d29d0201">char_t</a> *sink_path = argv[1];</div><div class="line">  <span class="keywordflow">if</span> ( argc == 4 ) samplerate = atoi(argv[3]);</div><div class="line">  <span class="keywordflow">if</span> ( argc == 3 ) freq = atof(argv[2]);</div><div class="line"></div><div class="line">  <a name="_a0"></a><a class="code" href="structfvec__t.html">fvec_t</a> *vec = <a name="a1"></a><a class="code" href="fvec_8h.html#aa9bc0906651523429a4ebf7b4342fe73">new_fvec</a>(hop_size);</div><div class="line">  <a class="code" href="sink_8h.html#ab3fd37f3117e99c10c63cb595821c31d">aubio_sink_t</a> *sink = <a name="a2"></a><a class="code" href="sink_8h.html#a2de2683d91ada3cf80fcf418606032e3">new_aubio_sink</a>(sink_path, samplerate);</div><div class="line"></div><div class="line">  <a class="code" href="wavetable_8h.html#abbf3d07fc6bfec0ababa1e36fa4d2953">aubio_wavetable_t</a> * wavetable = <a name="a3"></a><a class="code" href="wavetable_8h.html#ae1433850799b37ef1c13772b8a5d332b">new_aubio_wavetable</a> (samplerate, hop_size);</div><div class="line"></div><div class="line">  <span class="comment">// 2 seconds duration, in samples</span></div><div class="line">  <a class="code" href="types_8h.html#a12a1e9b3ce141648783a82445d02b58d">uint_t</a> duration = 2 * samplerate;</div><div class="line"></div><div class="line">  <a class="code" href="types_8h.html#a12a1e9b3ce141648783a82445d02b58d">uint_t</a> n_frames = 0;</div><div class="line">  <a class="code" href="types_8h.html#a12a1e9b3ce141648783a82445d02b58d">uint_t</a> write = 0;</div><div class="line"></div><div class="line">  <a name="a4"></a><a class="code" href="wavetable_8h.html#aeb76a5d89b91b509b297ea480a1b7b2a">aubio_wavetable_play</a> (wavetable);</div><div class="line">  <a name="a5"></a><a class="code" href="wavetable_8h.html#a1f51931af1a13db4667173aca645d05d">aubio_wavetable_set_freq</a> ( wavetable, freq );</div><div class="line"></div><div class="line">  <a class="code" href="types_8h.html#a12a1e9b3ce141648783a82445d02b58d">uint_t</a> region = 0;</div><div class="line"></div><div class="line">  <span class="keywordflow">do</span> {</div><div class="line">    <span class="keywordflow">if</span> ( n_frames &gt; duration / 3 &amp;&amp; region &lt; 1) {</div><div class="line">      <a name="a6"></a><a class="code" href="wavetable_8h.html#ab39769ce70db186dd340cce48a20431f">aubio_wavetable_stop</a> (wavetable);</div><div class="line">      region++;</div><div class="line">    }</div><div class="line">    <span class="keywordflow">if</span> ( n_frames &gt; 2 * duration / 3 &amp;&amp; region &lt; 2) {</div><div class="line">      <a class="code" href="wavetable_8h.html#aeb76a5d89b91b509b297ea480a1b7b2a">aubio_wavetable_play</a> (wavetable);</div><div class="line">      <a class="code" href="wavetable_8h.html#a1f51931af1a13db4667173aca645d05d">aubio_wavetable_set_freq</a> ( wavetable, freq  / 2.);</div><div class="line">      region++;</div><div class="line">    }</div><div class="line">    <span class="keywordflow">if</span> (duration - n_frames &lt; hop_size * 2 ) {</div><div class="line">      <a class="code" href="wavetable_8h.html#ab39769ce70db186dd340cce48a20431f">aubio_wavetable_stop</a>( wavetable );</div><div class="line">    }</div><div class="line">    <span class="keywordflow">if</span> (duration - n_frames &lt; hop_size ) {</div><div class="line">      write = duration - n_frames;</div><div class="line">    } <span class="keywordflow">else</span> {</div><div class="line">      write = hop_size;</div><div class="line">    }</div><div class="line">    <a name="a7"></a><a class="code" href="wavetable_8h.html#acb766dead872e20b256117a03a0a54ce">aubio_wavetable_do</a> (wavetable, vec, vec);</div><div class="line">    <a name="a8"></a><a class="code" href="sink_8h.html#a72cd56dca6c57b30c8d62797fc9ff687">aubio_sink_do</a>(sink, vec, write);</div><div class="line">    n_frames += hop_size;</div><div class="line">  } <span class="keywordflow">while</span> ( n_frames &lt;= duration );</div><div class="line"></div><div class="line">  <a name="a9"></a><a class="code" href="wavetable_8h.html#aef974c1cee018f29d8b61c12a430b63a">del_aubio_wavetable</a> (wavetable);</div><div class="line">  <a name="a10"></a><a class="code" href="sink_8h.html#a75792712904746e13373dd7227a7e846">del_aubio_sink</a>(sink);</div><div class="line">  <a name="a11"></a><a class="code" href="fvec_8h.html#a86fad6d27aad91c910d1b48195922cb9">del_fvec</a>(vec);</div><div class="line">  <a name="a12"></a><a class="code" href="musicutils_8h.html#a2b5d813f8d70b69add6f4811a68c9424">aubio_cleanup</a>();</div><div class="line"></div><div class="line">  <span class="keywordflow">return</span> 0;</div><div class="line">}</div></div><!-- fragment --> </div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>