Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

62 lines
2.9KB

  1. <h3>Summary</h3>
  2. <p>Compute a 1024 point Fast Fourier Transform (FFT) frequency analysis,
  3. with real value (magnitude) output. The frequency resolution is
  4. 43 Hz, useful detailed for audio visualization.</p>
  5. <h3>Audio Connections</h3>
  6. <table class=doc align=center cellpadding=3>
  7. <tr class=top><th>Port</th><th>Purpose</th></tr>
  8. <tr class=odd><td align=center>In 0</td><td>Signal to convert to frequency bins</td></tr>
  9. </table>
  10. <h3>Functions</h3>
  11. <p class=func><span class=keyword>available</span>();</p>
  12. <p class=desc>Returns true each time the FFT analysis produces new output data.
  13. </p>
  14. <p class=func><span class=keyword>read</span>(binNumber);</p>
  15. <p class=desc>Read a single frequency bin, from 0 to 511. The result is scaled
  16. so 1.0 represents a full scale sine wave.
  17. </p>
  18. <p class=func><span class=keyword>read</span>(firstBin, lastBin);</p>
  19. <p class=desc>Read several frequency bins, returning their sum. The higher
  20. audio octaves are represented by many bins, which are typically read
  21. as a group for audio visualization.
  22. </p>
  23. <p class=func><span class=keyword>averageTogether</span>(number);</p>
  24. <p class=desc>This function does nothing. The 1024 point FFT always
  25. updates at approximately 86 times per second.
  26. </p>
  27. <p class=func><span class=keyword>windowFunction</span>(window);</p>
  28. <p class=desc>Set the window function to be used. AudioWindowHanning1024
  29. is the default. Windowing may be disabled by NULL, but windowing
  30. should be used for all non-periodic (music) signals, and all periodic
  31. signals that are not exact integer division of the sample rate.
  32. </p>
  33. <h3>Examples</h3>
  34. <p class=exam>File &gt; Examples &gt; Audio &gt; Analysis &gt; FFT
  35. </p>
  36. <p class=exam>File &gt; Examples &gt; Audio &gt; Analysis &gt; SpectrumAnalyzerBasic
  37. </p>
  38. <h3>Notes</h3>
  39. <p>The raw 16 bit output data bins may be access with myFFT.output[num], where
  40. num is 0 to 511.</p>
  41. <p>TODO: caveats about spectral leakage vs frequency precision for arbitrary signals</p>
  42. <p>Window Types:
  43. <ul>
  44. <li><span class=literal>AudioWindowHanning1024</span> (default)</li>
  45. <li><span class=literal>AudioWindowBartlett1024</span></li>
  46. <li><span class=literal>AudioWindowBlackman1024</span></li>
  47. <li><span class=literal>AudioWindowFlattop1024</span></li>
  48. <li><span class=literal>AudioWindowBlackmanHarris1024</span></li>
  49. <li><span class=literal>AudioWindowNuttall1024</span></li>
  50. <li><span class=literal>AudioWindowBlackmanNuttall1024</span></li>
  51. <li><span class=literal>AudioWindowWelch1024</span></li>
  52. <li><span class=literal>AudioWindowHamming1024</span></li>
  53. <li><span class=literal>AudioWindowCosine1024</span></li>
  54. <li><span class=literal>AudioWindowTukey1024</span></li>
  55. </ul>
  56. </p>
  57. <p>1024 point FFT has a peak CPU usage of approx 52% on Teensy 3.1.
  58. Average usage is much lower. Future versions might distribute the
  59. load more evenly over time....
  60. </p>