nanodsp 0.1.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (964) hide show
  1. nanodsp-0.1.3/.gitignore +214 -0
  2. nanodsp-0.1.3/CHANGELOG.md +295 -0
  3. nanodsp-0.1.3/CMakeLists.txt +242 -0
  4. nanodsp-0.1.3/LICENSE +21 -0
  5. nanodsp-0.1.3/Makefile +160 -0
  6. nanodsp-0.1.3/PKG-INFO +715 -0
  7. nanodsp-0.1.3/README.md +679 -0
  8. nanodsp-0.1.3/TODO.md +3 -0
  9. nanodsp-0.1.3/cmake/hisstools_arch_compat.h +7 -0
  10. nanodsp-0.1.3/cmake/msvc_compat.h +8 -0
  11. nanodsp-0.1.3/demos/demo_analysis.py +107 -0
  12. nanodsp-0.1.3/demos/demo_composed.py +74 -0
  13. nanodsp-0.1.3/demos/demo_daisysp_filters.py +91 -0
  14. nanodsp-0.1.3/demos/demo_delay.py +59 -0
  15. nanodsp-0.1.3/demos/demo_distortion.py +73 -0
  16. nanodsp-0.1.3/demos/demo_dynamics.py +72 -0
  17. nanodsp-0.1.3/demos/demo_filters.py +73 -0
  18. nanodsp-0.1.3/demos/demo_fxdsp.py +105 -0
  19. nanodsp-0.1.3/demos/demo_grainflow.py +244 -0
  20. nanodsp-0.1.3/demos/demo_iir_filters.py +82 -0
  21. nanodsp-0.1.3/demos/demo_modulation.py +61 -0
  22. nanodsp-0.1.3/demos/demo_ops.py +161 -0
  23. nanodsp-0.1.3/demos/demo_pitch.py +65 -0
  24. nanodsp-0.1.3/demos/demo_resample.py +72 -0
  25. nanodsp-0.1.3/demos/demo_reverb.py +67 -0
  26. nanodsp-0.1.3/demos/demo_spectral.py +98 -0
  27. nanodsp-0.1.3/demos/demo_spectral_extra.py +92 -0
  28. nanodsp-0.1.3/demos/demo_synthesis.py +159 -0
  29. nanodsp-0.1.3/demos/s01.wav +0 -0
  30. nanodsp-0.1.3/pyproject.toml +107 -0
  31. nanodsp-0.1.3/src/nanodsp/__init__.py +3 -0
  32. nanodsp-0.1.3/src/nanodsp/__main__.py +1126 -0
  33. nanodsp-0.1.3/src/nanodsp/_cli.py +569 -0
  34. nanodsp-0.1.3/src/nanodsp/_core.cpp +18 -0
  35. nanodsp-0.1.3/src/nanodsp/_core.pyi +2540 -0
  36. nanodsp-0.1.3/src/nanodsp/_core_bloscillators.cpp +112 -0
  37. nanodsp-0.1.3/src/nanodsp/_core_choc.cpp +95 -0
  38. nanodsp-0.1.3/src/nanodsp/_core_common.h +55 -0
  39. nanodsp-0.1.3/src/nanodsp/_core_daisysp.cpp +1535 -0
  40. nanodsp-0.1.3/src/nanodsp/_core_fxdsp.cpp +172 -0
  41. nanodsp-0.1.3/src/nanodsp/_core_grainflow.cpp +613 -0
  42. nanodsp-0.1.3/src/nanodsp/_core_hisstools.cpp +434 -0
  43. nanodsp-0.1.3/src/nanodsp/_core_iirdesign.cpp +364 -0
  44. nanodsp-0.1.3/src/nanodsp/_core_madronalib.cpp +488 -0
  45. nanodsp-0.1.3/src/nanodsp/_core_signalsmith.cpp +433 -0
  46. nanodsp-0.1.3/src/nanodsp/_core_stk.cpp +841 -0
  47. nanodsp-0.1.3/src/nanodsp/_core_vafilters.cpp +94 -0
  48. nanodsp-0.1.3/src/nanodsp/_helpers.py +169 -0
  49. nanodsp-0.1.3/src/nanodsp/analysis.py +717 -0
  50. nanodsp-0.1.3/src/nanodsp/buffer.py +491 -0
  51. nanodsp-0.1.3/src/nanodsp/effects.py +2006 -0
  52. nanodsp-0.1.3/src/nanodsp/io.py +306 -0
  53. nanodsp-0.1.3/src/nanodsp/ops.py +878 -0
  54. nanodsp-0.1.3/src/nanodsp/py.typed +0 -0
  55. nanodsp-0.1.3/src/nanodsp/spectral.py +811 -0
  56. nanodsp-0.1.3/src/nanodsp/stream.py +395 -0
  57. nanodsp-0.1.3/src/nanodsp/synthesis.py +728 -0
  58. nanodsp-0.1.3/thirdparty/DaisySP/.gitignore +128 -0
  59. nanodsp-0.1.3/thirdparty/DaisySP/CMakeLists.txt +69 -0
  60. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.clang-format +62 -0
  61. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.gitattributes +11 -0
  62. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.github/pull_request_template.md +21 -0
  63. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.github/workflows/README.md +35 -0
  64. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.github/workflows/build_docs.yml +13 -0
  65. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.github/workflows/deploy_docs.yml +36 -0
  66. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.github/workflows/style.yml +19 -0
  67. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/.gitignore +128 -0
  68. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/CMakeLists.txt +55 -0
  69. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Doxyfile +2553 -0
  70. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/LICENSE +1495 -0
  71. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Makefile +199 -0
  72. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/README.md +41 -0
  73. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Control/line.cpp +41 -0
  74. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Control/line.h +47 -0
  75. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Dynamics/balance.cpp +56 -0
  76. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Dynamics/balance.h +47 -0
  77. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Dynamics/compressor.cpp +76 -0
  78. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Dynamics/compressor.h +207 -0
  79. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Effects/bitcrush.cpp +34 -0
  80. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Effects/bitcrush.h +50 -0
  81. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Effects/fold.cpp +31 -0
  82. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Effects/fold.h +45 -0
  83. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Effects/reverbsc.cpp +283 -0
  84. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Effects/reverbsc.h +72 -0
  85. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/allpass.cpp +42 -0
  86. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/allpass.h +65 -0
  87. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/atone.cpp +32 -0
  88. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/atone.h +55 -0
  89. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/biquad.cpp +60 -0
  90. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/biquad.h +62 -0
  91. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/comb.cpp +62 -0
  92. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/comb.h +64 -0
  93. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/mode.cpp +89 -0
  94. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/mode.h +50 -0
  95. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/moogladder.cpp +102 -0
  96. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/moogladder.h +52 -0
  97. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/nlfilt.cpp +95 -0
  98. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/nlfilt.h +80 -0
  99. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/tone.cpp +34 -0
  100. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Filters/tone.h +56 -0
  101. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/PhysicalModeling/PolyPluck.h +98 -0
  102. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/PhysicalModeling/pluck.cpp +122 -0
  103. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/PhysicalModeling/pluck.h +97 -0
  104. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Synthesis/blosc.cpp +140 -0
  105. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Synthesis/blosc.h +84 -0
  106. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Utility/jitter.cpp +91 -0
  107. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Utility/jitter.h +56 -0
  108. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Utility/port.cpp +33 -0
  109. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/Utility/port.h +57 -0
  110. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/Source/daisysp-lgpl.h +38 -0
  111. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/ci/run-clang-format.py +379 -0
  112. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/distribution/Makefile_LGPL +145 -0
  113. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/distribution/gather_lgpl.sh +74 -0
  114. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/doc/style_guide.pdf +0 -0
  115. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/util/curve_tester.py +67 -0
  116. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/util/fix_docs.py +57 -0
  117. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/util/fix_style.sh +8 -0
  118. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/util/lut_writer.py +22 -0
  119. nanodsp-0.1.3/thirdparty/DaisySP/DaisySP-LGPL/util/rebuild_docs.sh +33 -0
  120. nanodsp-0.1.3/thirdparty/DaisySP/Doxyfile +2553 -0
  121. nanodsp-0.1.3/thirdparty/DaisySP/LICENSE +69 -0
  122. nanodsp-0.1.3/thirdparty/DaisySP/Makefile +243 -0
  123. nanodsp-0.1.3/thirdparty/DaisySP/README.md +99 -0
  124. nanodsp-0.1.3/thirdparty/DaisySP/Source/Control/adenv.cpp +167 -0
  125. nanodsp-0.1.3/thirdparty/DaisySP/Source/Control/adenv.h +100 -0
  126. nanodsp-0.1.3/thirdparty/DaisySP/Source/Control/adsr.cpp +136 -0
  127. nanodsp-0.1.3/thirdparty/DaisySP/Source/Control/adsr.h +106 -0
  128. nanodsp-0.1.3/thirdparty/DaisySP/Source/Control/phasor.cpp +27 -0
  129. nanodsp-0.1.3/thirdparty/DaisySP/Source/Control/phasor.h +71 -0
  130. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/analogbassdrum.cpp +192 -0
  131. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/analogbassdrum.h +113 -0
  132. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/analogsnaredrum.cpp +219 -0
  133. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/analogsnaredrum.h +106 -0
  134. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/hihat.cpp +96 -0
  135. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/hihat.h +277 -0
  136. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/synthbassdrum.cpp +231 -0
  137. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/synthbassdrum.h +187 -0
  138. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/synthsnaredrum.cpp +201 -0
  139. nanodsp-0.1.3/thirdparty/DaisySP/Source/Drums/synthsnaredrum.h +105 -0
  140. nanodsp-0.1.3/thirdparty/DaisySP/Source/Dynamics/crossfade.cpp +37 -0
  141. nanodsp-0.1.3/thirdparty/DaisySP/Source/Dynamics/crossfade.h +86 -0
  142. nanodsp-0.1.3/thirdparty/DaisySP/Source/Dynamics/limiter.cpp +29 -0
  143. nanodsp-0.1.3/thirdparty/DaisySP/Source/Dynamics/limiter.h +41 -0
  144. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/autowah.cpp +65 -0
  145. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/autowah.h +60 -0
  146. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/chorus.cpp +187 -0
  147. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/chorus.h +190 -0
  148. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/decimator.cpp +46 -0
  149. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/decimator.h +94 -0
  150. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/flanger.cpp +83 -0
  151. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/flanger.h +83 -0
  152. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/overdrive.cpp +32 -0
  153. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/overdrive.h +54 -0
  154. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/phaser.cpp +138 -0
  155. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/phaser.h +139 -0
  156. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/pitchshifter.h +219 -0
  157. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/sampleratereducer.cpp +43 -0
  158. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/sampleratereducer.h +56 -0
  159. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/tremolo.cpp +36 -0
  160. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/tremolo.h +68 -0
  161. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/wavefolder.cpp +20 -0
  162. nanodsp-0.1.3/thirdparty/DaisySP/Source/Effects/wavefolder.h +53 -0
  163. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/fir.h +351 -0
  164. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/ladder.cpp +180 -0
  165. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/ladder.h +144 -0
  166. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/onepole.h +110 -0
  167. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/soap.cpp +65 -0
  168. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/soap.h +70 -0
  169. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/svf.cpp +86 -0
  170. nanodsp-0.1.3/thirdparty/DaisySP/Source/Filters/svf.h +87 -0
  171. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/clockednoise.cpp +59 -0
  172. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/clockednoise.h +66 -0
  173. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/dust.h +62 -0
  174. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/fractal_noise.h +90 -0
  175. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/grainlet.cpp +146 -0
  176. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/grainlet.h +92 -0
  177. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/particle.cpp +95 -0
  178. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/particle.h +92 -0
  179. nanodsp-0.1.3/thirdparty/DaisySP/Source/Noise/whitenoise.h +54 -0
  180. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/KarplusString.cpp +197 -0
  181. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/KarplusString.h +110 -0
  182. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/drip.cpp +213 -0
  183. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/drip.h +61 -0
  184. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/modalvoice.cpp +109 -0
  185. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/modalvoice.h +99 -0
  186. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/resonator.cpp +158 -0
  187. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/resonator.h +191 -0
  188. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/stringvoice.cpp +124 -0
  189. nanodsp-0.1.3/thirdparty/DaisySP/Source/PhysicalModeling/stringvoice.h +102 -0
  190. nanodsp-0.1.3/thirdparty/DaisySP/Source/Sampling/granularplayer.cpp +79 -0
  191. nanodsp-0.1.3/thirdparty/DaisySP/Source/Sampling/granularplayer.h +96 -0
  192. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/fm2.cpp +65 -0
  193. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/fm2.h +73 -0
  194. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/formantosc.cpp +96 -0
  195. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/formantosc.h +81 -0
  196. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/harmonic_osc.h +174 -0
  197. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/oscillator.cpp +83 -0
  198. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/oscillator.h +125 -0
  199. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/oscillatorbank.cpp +147 -0
  200. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/oscillatorbank.h +88 -0
  201. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/variablesawosc.cpp +106 -0
  202. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/variablesawosc.h +80 -0
  203. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/variableshapeosc.cpp +182 -0
  204. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/variableshapeosc.h +95 -0
  205. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/vosim.cpp +81 -0
  206. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/vosim.h +82 -0
  207. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/zoscillator.cpp +159 -0
  208. nanodsp-0.1.3/thirdparty/DaisySP/Source/Synthesis/zoscillator.h +84 -0
  209. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/dcblock.cpp +20 -0
  210. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/dcblock.h +37 -0
  211. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/delayline.h +129 -0
  212. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/dsp.h +352 -0
  213. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/looper.h +314 -0
  214. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/maytrig.h +44 -0
  215. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/metro.cpp +30 -0
  216. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/metro.h +54 -0
  217. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/samplehold.h +69 -0
  218. nanodsp-0.1.3/thirdparty/DaisySP/Source/Utility/smooth_random.h +85 -0
  219. nanodsp-0.1.3/thirdparty/DaisySP/Source/daisysp.h +97 -0
  220. nanodsp-0.1.3/thirdparty/DaisySP/daisysp.sln +25 -0
  221. nanodsp-0.1.3/thirdparty/DaisySP/util/curve_tester.py +67 -0
  222. nanodsp-0.1.3/thirdparty/DaisySP/util/fix_docs.py +57 -0
  223. nanodsp-0.1.3/thirdparty/DaisySP/util/fix_style.sh +8 -0
  224. nanodsp-0.1.3/thirdparty/DaisySP/util/lut_writer.py +22 -0
  225. nanodsp-0.1.3/thirdparty/DaisySP/util/rebuild_docs.sh +33 -0
  226. nanodsp-0.1.3/thirdparty/DaisySP/vs/daisysp-Debug.vgdbsettings +139 -0
  227. nanodsp-0.1.3/thirdparty/DaisySP/vs/daisysp-Release.vgdbsettings +133 -0
  228. nanodsp-0.1.3/thirdparty/DaisySP/vs/daisysp.vcxproj +227 -0
  229. nanodsp-0.1.3/thirdparty/DaisySP/vs/daisysp.vcxproj.filters +407 -0
  230. nanodsp-0.1.3/thirdparty/DaisySP/vs/stm32.props +34 -0
  231. nanodsp-0.1.3/thirdparty/DaisySP/vs/stm32.xml +50 -0
  232. nanodsp-0.1.3/thirdparty/DspFilters/Bessel.cpp +224 -0
  233. nanodsp-0.1.3/thirdparty/DspFilters/Biquad.cpp +236 -0
  234. nanodsp-0.1.3/thirdparty/DspFilters/Butterworth.cpp +212 -0
  235. nanodsp-0.1.3/thirdparty/DspFilters/Cascade.cpp +118 -0
  236. nanodsp-0.1.3/thirdparty/DspFilters/ChebyshevI.cpp +272 -0
  237. nanodsp-0.1.3/thirdparty/DspFilters/ChebyshevII.cpp +271 -0
  238. nanodsp-0.1.3/thirdparty/DspFilters/Custom.cpp +66 -0
  239. nanodsp-0.1.3/thirdparty/DspFilters/Design.cpp +41 -0
  240. nanodsp-0.1.3/thirdparty/DspFilters/Documentation.cpp +456 -0
  241. nanodsp-0.1.3/thirdparty/DspFilters/Elliptic.cpp +384 -0
  242. nanodsp-0.1.3/thirdparty/DspFilters/Filter.cpp +117 -0
  243. nanodsp-0.1.3/thirdparty/DspFilters/Legendre.cpp +344 -0
  244. nanodsp-0.1.3/thirdparty/DspFilters/Param.cpp +309 -0
  245. nanodsp-0.1.3/thirdparty/DspFilters/PoleFilter.cpp +337 -0
  246. nanodsp-0.1.3/thirdparty/DspFilters/RBJ.cpp +207 -0
  247. nanodsp-0.1.3/thirdparty/DspFilters/RootFinder.cpp +187 -0
  248. nanodsp-0.1.3/thirdparty/DspFilters/State.cpp +43 -0
  249. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Bessel.h +485 -0
  250. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Biquad.h +236 -0
  251. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Butterworth.h +436 -0
  252. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Cascade.h +183 -0
  253. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/ChebyshevI.h +465 -0
  254. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/ChebyshevII.h +466 -0
  255. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Common.h +63 -0
  256. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Custom.h +177 -0
  257. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Design.h +64 -0
  258. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Dsp.h +62 -0
  259. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Elliptic.h +359 -0
  260. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Filter.h +269 -0
  261. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Layout.h +170 -0
  262. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Legendre.h +417 -0
  263. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/MathSupplement.h +154 -0
  264. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Params.h +244 -0
  265. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/PoleFilter.h +217 -0
  266. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/RBJ.h +335 -0
  267. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/RootFinder.h +129 -0
  268. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/SmoothedFilter.h +154 -0
  269. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/State.h +323 -0
  270. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Types.h +139 -0
  271. nanodsp-0.1.3/thirdparty/DspFilters/include/DspFilters/Utilities.h +783 -0
  272. nanodsp-0.1.3/thirdparty/GrainflowLib/.gitignore +2 -0
  273. nanodsp-0.1.3/thirdparty/GrainflowLib/.gitmodules +3 -0
  274. nanodsp-0.1.3/thirdparty/GrainflowLib/CMakeLists.txt +26 -0
  275. nanodsp-0.1.3/thirdparty/GrainflowLib/Liscense.txt +7 -0
  276. nanodsp-0.1.3/thirdparty/GrainflowLib/README.md +5 -0
  277. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfEnvelopes.h +616 -0
  278. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfFilters.h +156 -0
  279. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfGenericBufferReader.h +313 -0
  280. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfGrain.h +636 -0
  281. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfGrainCollection.h +488 -0
  282. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfIBufferReader.h +36 -0
  283. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfIoConfig.h +32 -0
  284. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfPanner.h +170 -0
  285. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfParam.h +222 -0
  286. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfRecord.h +326 -0
  287. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfSyn.h +252 -0
  288. nanodsp-0.1.3/thirdparty/GrainflowLib/include/gfUtils.h +134 -0
  289. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/.github/workflows/main.yml +30 -0
  290. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/.gitignore +29 -0
  291. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/AudioFile.h +1615 -0
  292. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/CMakeLists.txt +85 -0
  293. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/LICENSE +9 -0
  294. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/README.md +282 -0
  295. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/examples/CMakeLists.txt +12 -0
  296. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/examples/examples.cpp +146 -0
  297. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/examples/test-audio.wav +0 -0
  298. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/AiffLoadingTests.cpp +415 -0
  299. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/CMakeLists.txt +17 -0
  300. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/FileWritingTests.cpp +192 -0
  301. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/GeneralTests.cpp +119 -0
  302. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/SampleConversionTests.cpp +771 -0
  303. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/WavLoadingTests.cpp +457 -0
  304. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/doctest/doctest.h +7091 -0
  305. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/main.cpp +3 -0
  306. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/makeHeaders.py +96 -0
  307. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_16bit_44100.aif +0 -0
  308. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_16bit_48000.aif +0 -0
  309. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_24bit_44100.aif +0 -0
  310. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_24bit_48000.aif +0 -0
  311. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_32bit_44100.aif +0 -0
  312. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_32bit_48000.aif +0 -0
  313. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_8bit_44100.aif +0 -0
  314. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/aiff_stereo_8bit_48000.aif +0 -0
  315. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_8chan_24bit_48000.wav +0 -0
  316. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_mono_16bit_44100.wav +0 -0
  317. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_mono_16bit_48000.wav +0 -0
  318. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_16bit_44100.wav +0 -0
  319. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_16bit_48000.wav +0 -0
  320. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_24bit_44100.wav +0 -0
  321. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_24bit_48000.wav +0 -0
  322. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_32bit_44100.wav +0 -0
  323. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_32bit_48000.wav +0 -0
  324. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_8bit_44100.wav +0 -0
  325. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-audio/wav_stereo_8bit_48000.wav +0 -0
  326. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_16bit_44100.h +12 -0
  327. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_16bit_48000.h +12 -0
  328. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_24bit_44100.h +12 -0
  329. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_24bit_48000.h +12 -0
  330. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_32bit_44100.h +12 -0
  331. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_32bit_48000.h +12 -0
  332. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_8bit_44100.h +12 -0
  333. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/aiff_stereo_8bit_48000.h +12 -0
  334. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_8chan_24bit_48000.h +12 -0
  335. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_mono_16bit_44100.h +12 -0
  336. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_mono_16bit_48000.h +12 -0
  337. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_16bit_44100.h +12 -0
  338. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_16bit_48000.h +12 -0
  339. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_24bit_44100.h +12 -0
  340. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_24bit_48000.h +12 -0
  341. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_32bit_44100.h +12 -0
  342. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_32bit_48000.h +12 -0
  343. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_8bit_44100.h +12 -0
  344. nanodsp-0.1.3/thirdparty/GrainflowLib/lib/AudioFile/tests/test-headers/wav_stereo_8bit_48000.h +12 -0
  345. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/FFT_Tester/FFT_Tester/main.cpp +332 -0
  346. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/FFT_Tester/FFT_Tester.xcodeproj/project.pbxproj +289 -0
  347. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/FFT_Tester/FFT_Tester.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  348. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/FFT_Tester/FFT_Tester.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  349. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/FFT_Tester/FFT_Tester.xcodeproj/xcshareddata/xcschemes/FFT_Tester.xcscheme +91 -0
  350. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/IR_Manipulation_Tester/IR_Manipulation_Tester/main.cpp +157 -0
  351. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/IR_Manipulation_Tester/IR_Manipulation_Tester.xcodeproj/project.pbxproj +290 -0
  352. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/IR_Manipulation_Tester/IR_Manipulation_Tester.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  353. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/IR_Manipulation_Tester/IR_Manipulation_Tester.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  354. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/IR_Manipulation_Tester/IR_Manipulation_Tester.xcodeproj/xcshareddata/xcschemes/IR_Manipulation_Tester.xcscheme +91 -0
  355. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Peak_Tester/Peak_Tester/main.cpp +49 -0
  356. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Peak_Tester/Peak_Tester.xcodeproj/project.pbxproj +279 -0
  357. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Peak_Tester/Peak_Tester.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  358. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Peak_Tester/Peak_Tester.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  359. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Window_Tester/Window_Tester/main.cpp +214 -0
  360. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Window_Tester/Window_Tester.xcodeproj/project.pbxproj +287 -0
  361. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Window_Tester/Window_Tester.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  362. nanodsp-0.1.3/thirdparty/HISSTools_Library/- Test/Window_Tester/Window_Tester.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  363. nanodsp-0.1.3/thirdparty/HISSTools_Library/.gitignore +39 -0
  364. nanodsp-0.1.3/thirdparty/HISSTools_Library/Allocator.hpp +40 -0
  365. nanodsp-0.1.3/thirdparty/HISSTools_Library/AudioFile/BaseAudioFile.cpp +232 -0
  366. nanodsp-0.1.3/thirdparty/HISSTools_Library/AudioFile/BaseAudioFile.h +133 -0
  367. nanodsp-0.1.3/thirdparty/HISSTools_Library/AudioFile/IAudioFile.cpp +691 -0
  368. nanodsp-0.1.3/thirdparty/HISSTools_Library/AudioFile/IAudioFile.h +115 -0
  369. nanodsp-0.1.3/thirdparty/HISSTools_Library/AudioFile/OAudioFile.cpp +683 -0
  370. nanodsp-0.1.3/thirdparty/HISSTools_Library/AudioFile/OAudioFile.h +77 -0
  371. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/ConvolveErrors.h +19 -0
  372. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/ConvolveSIMD.h +107 -0
  373. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/Convolver.cpp +210 -0
  374. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/Convolver.h +70 -0
  375. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/MemorySwap.h +290 -0
  376. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/MonoConvolve.cpp +258 -0
  377. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/MonoConvolve.h +77 -0
  378. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/NToMonoConvolve.cpp +43 -0
  379. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/NToMonoConvolve.h +35 -0
  380. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/PartitionedConvolve.cpp +426 -0
  381. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/PartitionedConvolve.h +93 -0
  382. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/TimeDomainConvolve.cpp +163 -0
  383. nanodsp-0.1.3/thirdparty/HISSTools_Library/HIRT_Multichannel_Convolution/TimeDomainConvolve.h +50 -0
  384. nanodsp-0.1.3/thirdparty/HISSTools_Library/HISSTools_FFT/Documentation/Doxyfile +2492 -0
  385. nanodsp-0.1.3/thirdparty/HISSTools_Library/HISSTools_FFT/HISSTools_FFT.cpp +248 -0
  386. nanodsp-0.1.3/thirdparty/HISSTools_Library/HISSTools_FFT/HISSTools_FFT.h +372 -0
  387. nanodsp-0.1.3/thirdparty/HISSTools_Library/HISSTools_FFT/HISSTools_FFT_Core.h +1376 -0
  388. nanodsp-0.1.3/thirdparty/HISSTools_Library/Interpolation.hpp +90 -0
  389. nanodsp-0.1.3/thirdparty/HISSTools_Library/KernelSmoother.hpp +337 -0
  390. nanodsp-0.1.3/thirdparty/HISSTools_Library/LICENSE +29 -0
  391. nanodsp-0.1.3/thirdparty/HISSTools_Library/PartialTracker.hpp +444 -0
  392. nanodsp-0.1.3/thirdparty/HISSTools_Library/README.md +3 -0
  393. nanodsp-0.1.3/thirdparty/HISSTools_Library/RandomGenerator.hpp +341 -0
  394. nanodsp-0.1.3/thirdparty/HISSTools_Library/SIMDSupport.hpp +1232 -0
  395. nanodsp-0.1.3/thirdparty/HISSTools_Library/SpectralFunctions.hpp +438 -0
  396. nanodsp-0.1.3/thirdparty/HISSTools_Library/SpectralProcessor.hpp +683 -0
  397. nanodsp-0.1.3/thirdparty/HISSTools_Library/Statistics.hpp +384 -0
  398. nanodsp-0.1.3/thirdparty/HISSTools_Library/TableReader.hpp +401 -0
  399. nanodsp-0.1.3/thirdparty/HISSTools_Library/ThreadLocks.hpp +120 -0
  400. nanodsp-0.1.3/thirdparty/HISSTools_Library/WindowFunctions.hpp +666 -0
  401. nanodsp-0.1.3/thirdparty/choc/.gitignore +4 -0
  402. nanodsp-0.1.3/thirdparty/choc/LICENSE.md +17 -0
  403. nanodsp-0.1.3/thirdparty/choc/choc/audio/choc_AudioFileFormat.h +598 -0
  404. nanodsp-0.1.3/thirdparty/choc/choc/audio/choc_AudioFileFormat_FLAC.h +18008 -0
  405. nanodsp-0.1.3/thirdparty/choc/choc/audio/choc_AudioSampleData.h +299 -0
  406. nanodsp-0.1.3/thirdparty/choc/choc/audio/choc_SampleBuffers.h +974 -0
  407. nanodsp-0.1.3/thirdparty/choc/choc/audio/choc_SincInterpolator.h +157 -0
  408. nanodsp-0.1.3/thirdparty/choc/choc/containers/choc_Value.h +3307 -0
  409. nanodsp-0.1.3/thirdparty/choc/choc/math/choc_MathHelpers.h +125 -0
  410. nanodsp-0.1.3/thirdparty/choc/choc/memory/choc_Endianness.h +329 -0
  411. nanodsp-0.1.3/thirdparty/choc/choc/platform/choc_Assert.h +36 -0
  412. nanodsp-0.1.3/thirdparty/choc/choc/platform/choc_DisableAllWarnings.h +103 -0
  413. nanodsp-0.1.3/thirdparty/choc/choc/platform/choc_ReenableAllWarnings.h +30 -0
  414. nanodsp-0.1.3/thirdparty/choc/choc/text/choc_FloatToString.h +397 -0
  415. nanodsp-0.1.3/thirdparty/choc/choc/text/choc_JSON.h +561 -0
  416. nanodsp-0.1.3/thirdparty/choc/choc/text/choc_StringUtilities.h +600 -0
  417. nanodsp-0.1.3/thirdparty/choc/choc/text/choc_UTF8.h +655 -0
  418. nanodsp-0.1.3/thirdparty/fxdsp/aa_waveshaping.h +202 -0
  419. nanodsp-0.1.3/thirdparty/fxdsp/formant_filter.h +155 -0
  420. nanodsp-0.1.3/thirdparty/fxdsp/fxdsp.h +6 -0
  421. nanodsp-0.1.3/thirdparty/fxdsp/minblep_osc.h +514 -0
  422. nanodsp-0.1.3/thirdparty/fxdsp/psola.h +201 -0
  423. nanodsp-0.1.3/thirdparty/fxdsp/reverbs.h +321 -0
  424. nanodsp-0.1.3/thirdparty/madronalib/.gitignore +218 -0
  425. nanodsp-0.1.3/thirdparty/madronalib/CMakeLists.txt +477 -0
  426. nanodsp-0.1.3/thirdparty/madronalib/LICENSE +21 -0
  427. nanodsp-0.1.3/thirdparty/madronalib/README.md +113 -0
  428. nanodsp-0.1.3/thirdparty/madronalib/cmake/FindDNSSD.cmake +42 -0
  429. nanodsp-0.1.3/thirdparty/madronalib/cmake/FindPortaudio.cmake +107 -0
  430. nanodsp-0.1.3/thirdparty/madronalib/cmake/MacOSXBundleInfo.plist.in.plist +34 -0
  431. nanodsp-0.1.3/thirdparty/madronalib/cmake/scripts/add-plist-value.sh +26 -0
  432. nanodsp-0.1.3/thirdparty/madronalib/docs/wrapper_problems.txt +75 -0
  433. nanodsp-0.1.3/thirdparty/madronalib/external/aes256/aes256.cpp +383 -0
  434. nanodsp-0.1.3/thirdparty/madronalib/external/aes256/aes256.h +46 -0
  435. nanodsp-0.1.3/thirdparty/madronalib/external/cJSON/cJSON.c +1005 -0
  436. nanodsp-0.1.3/thirdparty/madronalib/external/cJSON/cJSON.h +137 -0
  437. nanodsp-0.1.3/thirdparty/madronalib/external/clap/LICENSE +21 -0
  438. nanodsp-0.1.3/thirdparty/madronalib/external/clap/all.h +12 -0
  439. nanodsp-0.1.3/thirdparty/madronalib/external/clap/audio-buffer.h +37 -0
  440. nanodsp-0.1.3/thirdparty/madronalib/external/clap/clap.h +64 -0
  441. nanodsp-0.1.3/thirdparty/madronalib/external/clap/color.h +18 -0
  442. nanodsp-0.1.3/thirdparty/madronalib/external/clap/entry.h +136 -0
  443. nanodsp-0.1.3/thirdparty/madronalib/external/clap/events.h +334 -0
  444. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/ambisonic.h +66 -0
  445. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/audio-ports-activation.h +64 -0
  446. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/audio-ports-config.h +109 -0
  447. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/audio-ports.h +116 -0
  448. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/configurable-audio-ports.h +63 -0
  449. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/context-menu.h +167 -0
  450. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/draft/extensible-audio-ports.h +33 -0
  451. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/draft/resource-directory.h +88 -0
  452. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/draft/transport-control.h +66 -0
  453. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/draft/triggers.h +144 -0
  454. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/draft/tuning.h +76 -0
  455. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/event-registry.h +22 -0
  456. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/gui.h +237 -0
  457. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/latency.h +27 -0
  458. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/log.h +33 -0
  459. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/note-name.h +37 -0
  460. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/note-ports.h +79 -0
  461. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/param-indication.h +77 -0
  462. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/params.h +382 -0
  463. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/posix-fd-support.h +49 -0
  464. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/preset-load.h +53 -0
  465. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/remote-controls.h +83 -0
  466. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/render.h +39 -0
  467. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/state-context.h +72 -0
  468. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/state.h +45 -0
  469. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/surround.h +87 -0
  470. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/tail.h +26 -0
  471. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/thread-check.h +53 -0
  472. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/thread-pool.h +66 -0
  473. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/timer-support.h +31 -0
  474. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/track-info.h +66 -0
  475. nanodsp-0.1.3/thirdparty/madronalib/external/clap/ext/voice-info.h +56 -0
  476. nanodsp-0.1.3/thirdparty/madronalib/external/clap/factory/draft/plugin-invalidation.h +47 -0
  477. nanodsp-0.1.3/thirdparty/madronalib/external/clap/factory/draft/plugin-state-converter.h +99 -0
  478. nanodsp-0.1.3/thirdparty/madronalib/external/clap/factory/plugin-factory.h +42 -0
  479. nanodsp-0.1.3/thirdparty/madronalib/external/clap/factory/preset-discovery.h +313 -0
  480. nanodsp-0.1.3/thirdparty/madronalib/external/clap/fixedpoint.h +16 -0
  481. nanodsp-0.1.3/thirdparty/madronalib/external/clap/host.h +44 -0
  482. nanodsp-0.1.3/thirdparty/madronalib/external/clap/id.h +8 -0
  483. nanodsp-0.1.3/thirdparty/madronalib/external/clap/plugin-features.h +79 -0
  484. nanodsp-0.1.3/thirdparty/madronalib/external/clap/plugin.h +113 -0
  485. nanodsp-0.1.3/thirdparty/madronalib/external/clap/private/macros.h +50 -0
  486. nanodsp-0.1.3/thirdparty/madronalib/external/clap/private/std.h +16 -0
  487. nanodsp-0.1.3/thirdparty/madronalib/external/clap/process.h +66 -0
  488. nanodsp-0.1.3/thirdparty/madronalib/external/clap/stream.h +38 -0
  489. nanodsp-0.1.3/thirdparty/madronalib/external/clap/string-sizes.h +21 -0
  490. nanodsp-0.1.3/thirdparty/madronalib/external/clap/timestamp.h +11 -0
  491. nanodsp-0.1.3/thirdparty/madronalib/external/clap/universal-plugin-id.h +26 -0
  492. nanodsp-0.1.3/thirdparty/madronalib/external/clap/version.h +42 -0
  493. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/Array.h +98 -0
  494. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/Array.hpp +99 -0
  495. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/DynArray.h +101 -0
  496. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/DynArray.hpp +144 -0
  497. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTReal.h +143 -0
  498. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTReal.hpp +917 -0
  499. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealFixLen.h +127 -0
  500. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealFixLen.hpp +323 -0
  501. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealFixLenParam.h +90 -0
  502. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealPassDirect.h +96 -0
  503. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealPassDirect.hpp +205 -0
  504. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealPassInverse.h +101 -0
  505. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealPassInverse.hpp +230 -0
  506. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealSelect.h +78 -0
  507. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealSelect.hpp +63 -0
  508. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealUseTrigo.h +99 -0
  509. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/FFTRealUseTrigo.hpp +92 -0
  510. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/OscSinCos.h +107 -0
  511. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/OscSinCos.hpp +123 -0
  512. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/def.h +60 -0
  513. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestAccuracy.h +108 -0
  514. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestAccuracy.hpp +476 -0
  515. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestHelperFixLen.h +96 -0
  516. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestHelperFixLen.hpp +97 -0
  517. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestHelperNormal.h +97 -0
  518. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestHelperNormal.hpp +103 -0
  519. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestSpeed.h +99 -0
  520. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestSpeed.hpp +227 -0
  521. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestWhiteNoiseGen.h +99 -0
  522. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/TestWhiteNoiseGen.hpp +97 -0
  523. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/conf.h +49 -0
  524. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/fnc.h +57 -0
  525. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/fnc.hpp +60 -0
  526. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/main.cpp +256 -0
  527. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/ClockCycleCounter.cpp +277 -0
  528. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/ClockCycleCounter.h +116 -0
  529. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/ClockCycleCounter.hpp +142 -0
  530. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/Int64.h +63 -0
  531. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/StopWatch.cpp +93 -0
  532. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/StopWatch.h +102 -0
  533. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/StopWatch.hpp +75 -0
  534. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/def.h +57 -0
  535. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/fnc.h +59 -0
  536. nanodsp-0.1.3/thirdparty/madronalib/external/ffft/test/stopwatch/fnc.hpp +77 -0
  537. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/IpEndpointName.cpp +46 -0
  538. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/IpEndpointName.h +83 -0
  539. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/NetworkingUtils.h +56 -0
  540. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/PacketListener.h +50 -0
  541. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/TimerListener.h +47 -0
  542. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/UdpSocket.h +176 -0
  543. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/posix/NetworkingUtils.cpp +63 -0
  544. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/posix/UdpSocket.cpp +626 -0
  545. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/win32/NetworkingUtils.cpp +100 -0
  546. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/ip/win32/UdpSocket.cpp +574 -0
  547. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/MessageMappingOscPacketListener.h +80 -0
  548. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscException.h +62 -0
  549. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscHostEndianness.h +127 -0
  550. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscOutboundPacketStream.cpp +652 -0
  551. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscOutboundPacketStream.h +154 -0
  552. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscPacketListener.h +79 -0
  553. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscPrintReceivedElements.cpp +261 -0
  554. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscPrintReceivedElements.h +54 -0
  555. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscReceivedElements.cpp +769 -0
  556. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscReceivedElements.h +548 -0
  557. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscTypes.cpp +53 -0
  558. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/osc/OscTypes.h +240 -0
  559. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/CriticalSection.cpp +61 -0
  560. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/CriticalSection.h +45 -0
  561. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/NetService.cpp +268 -0
  562. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/NetService.h +159 -0
  563. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/NetServiceBrowser.cpp +159 -0
  564. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/NetServiceBrowser.h +113 -0
  565. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/NetServiceThread.cpp +66 -0
  566. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/NetServiceThread.h +53 -0
  567. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/Thread.cpp +174 -0
  568. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/Thread.h +62 -0
  569. nanodsp-0.1.3/thirdparty/madronalib/external/oscpack/zeroconf/dns_sd.h +2358 -0
  570. nanodsp-0.1.3/thirdparty/madronalib/external/rtaudio/RtAudio.cpp +11571 -0
  571. nanodsp-0.1.3/thirdparty/madronalib/external/rtaudio/RtAudio.h +939 -0
  572. nanodsp-0.1.3/thirdparty/madronalib/external/rtmidi/RtMidi.cpp +5268 -0
  573. nanodsp-0.1.3/thirdparty/madronalib/external/rtmidi/RtMidi.h +677 -0
  574. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/CONTRIBUTING.md +462 -0
  575. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/LICENSE +21 -0
  576. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/Makefile +93 -0
  577. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/README.md +287 -0
  578. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/sse2neon.h +9301 -0
  579. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/sse2neon.sln +31 -0
  580. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/sse2neon.vcxproj +151 -0
  581. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/sse2neon.vcxproj.filters +45 -0
  582. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/README.md +29 -0
  583. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/binding.cpp +35 -0
  584. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/binding.h +19 -0
  585. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/common.cpp +414 -0
  586. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/common.h +490 -0
  587. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/impl.cpp +11935 -0
  588. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/impl.h +572 -0
  589. nanodsp-0.1.3/thirdparty/madronalib/external/sse2neon/tests/main.cpp +38 -0
  590. nanodsp-0.1.3/thirdparty/madronalib/external/utf/LICENSE_1_0.txt +23 -0
  591. nanodsp-0.1.3/thirdparty/madronalib/external/utf/README.md +38 -0
  592. nanodsp-0.1.3/thirdparty/madronalib/external/utf/sample.cpp +55 -0
  593. nanodsp-0.1.3/thirdparty/madronalib/external/utf/tests.cpp +908 -0
  594. nanodsp-0.1.3/thirdparty/madronalib/external/utf/utf.hpp +439 -0
  595. nanodsp-0.1.3/thirdparty/madronalib/include/madronalib.h +31 -0
  596. nanodsp-0.1.3/thirdparty/madronalib/include/mldsp.h +17 -0
  597. nanodsp-0.1.3/thirdparty/madronalib/pathTest.cpp +47 -0
  598. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPBuffer.h +386 -0
  599. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPFilters.h +1573 -0
  600. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPFunctional.h +362 -0
  601. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPGens.h +592 -0
  602. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPMath.h +112 -0
  603. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPMathNEON.h +9 -0
  604. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPMathSSE.h +944 -0
  605. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPOps.h +1476 -0
  606. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPProjections.h +303 -0
  607. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPRouting.h +244 -0
  608. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPSample.h +89 -0
  609. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPScalarMath.h +372 -0
  610. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPScale.h +488 -0
  611. nanodsp-0.1.3/thirdparty/madronalib/source/DSP/MLDSPUtils.h +98 -0
  612. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLActor.cpp +30 -0
  613. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLActor.h +140 -0
  614. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLAudioContext.cpp +142 -0
  615. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLAudioContext.h +105 -0
  616. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLAudioTask.cpp +260 -0
  617. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLAudioTask.h +41 -0
  618. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLClock.cpp +93 -0
  619. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLClock.h +60 -0
  620. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLCollection.h +267 -0
  621. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLEffect.h +44 -0
  622. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLEvent.cpp +13 -0
  623. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLEvent.h +60 -0
  624. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLEventsToSignals.cpp +977 -0
  625. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLEventsToSignals.h +236 -0
  626. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLHash.h +58 -0
  627. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLMIDI.cpp +195 -0
  628. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLMIDI.h +52 -0
  629. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLMemoryUtils.h +55 -0
  630. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLMessage.h +140 -0
  631. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLParameters.h +455 -0
  632. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLPath.cpp +103 -0
  633. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLPath.h +540 -0
  634. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLPlatform.h +53 -0
  635. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLPropertyTree.h +124 -0
  636. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLQueue.h +123 -0
  637. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSerialization.cpp +605 -0
  638. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSerialization.h +95 -0
  639. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSharedResource.h +181 -0
  640. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSignalProcessBuffer.cpp +92 -0
  641. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSignalProcessBuffer.h +37 -0
  642. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSignalProcessor.cpp +38 -0
  643. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSignalProcessor.h +216 -0
  644. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSymbol.cpp +67 -0
  645. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSymbol.h +141 -0
  646. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLSynth.h +95 -0
  647. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLTestUtils.h +310 -0
  648. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLText.cpp +353 -0
  649. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLText.h +222 -0
  650. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLTextUtils.cpp +1265 -0
  651. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLTextUtils.h +157 -0
  652. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLTimer.cpp +230 -0
  653. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLTimer.h +133 -0
  654. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLTree.h +510 -0
  655. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLValue.cpp +342 -0
  656. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLValue.h +249 -0
  657. nanodsp-0.1.3/thirdparty/madronalib/source/app/MLValueChange.h +49 -0
  658. nanodsp-0.1.3/thirdparty/madronalib/source/networking/MLOSCListener.cpp +127 -0
  659. nanodsp-0.1.3/thirdparty/madronalib/source/networking/MLOSCListener.h +53 -0
  660. nanodsp-0.1.3/thirdparty/madronalib/source/networking/MLOSCReceiver.cpp +103 -0
  661. nanodsp-0.1.3/thirdparty/madronalib/source/networking/MLOSCReceiver.h +58 -0
  662. nanodsp-0.1.3/thirdparty/madronalib/source/networking/MLOSCSender.cpp +54 -0
  663. nanodsp-0.1.3/thirdparty/madronalib/source/networking/MLOSCSender.h +58 -0
  664. nanodsp-0.1.3/thirdparty/madronalib/source/procs/MLProcMultiply.cpp +49 -0
  665. nanodsp-0.1.3/thirdparty/signalsmith/CMakeLists.txt +4 -0
  666. nanodsp-0.1.3/thirdparty/signalsmith/LICENSE.txt +21 -0
  667. nanodsp-0.1.3/thirdparty/signalsmith/README.md +40 -0
  668. nanodsp-0.1.3/thirdparty/signalsmith/common.h +47 -0
  669. nanodsp-0.1.3/thirdparty/signalsmith/curves.h +371 -0
  670. nanodsp-0.1.3/thirdparty/signalsmith/delay.h +717 -0
  671. nanodsp-0.1.3/thirdparty/signalsmith/envelopes.h +523 -0
  672. nanodsp-0.1.3/thirdparty/signalsmith/fft.h +522 -0
  673. nanodsp-0.1.3/thirdparty/signalsmith/filters.h +444 -0
  674. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/curves.h +1 -0
  675. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/delay.h +1 -0
  676. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/envelopes.h +1 -0
  677. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/fft.h +1 -0
  678. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/filters.h +1 -0
  679. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/mix.h +1 -0
  680. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/perf.h +1 -0
  681. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/rates.h +1 -0
  682. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/spectral.h +1 -0
  683. nanodsp-0.1.3/thirdparty/signalsmith/include/signalsmith-dsp/windows.h +1 -0
  684. nanodsp-0.1.3/thirdparty/signalsmith/mix.h +218 -0
  685. nanodsp-0.1.3/thirdparty/signalsmith/perf.h +84 -0
  686. nanodsp-0.1.3/thirdparty/signalsmith/rates.h +184 -0
  687. nanodsp-0.1.3/thirdparty/signalsmith/spectral.h +496 -0
  688. nanodsp-0.1.3/thirdparty/signalsmith/windows.h +219 -0
  689. nanodsp-0.1.3/thirdparty/stk/.gitignore +199 -0
  690. nanodsp-0.1.3/thirdparty/stk/CMakeLists.txt +207 -0
  691. nanodsp-0.1.3/thirdparty/stk/INSTALL.md +54 -0
  692. nanodsp-0.1.3/thirdparty/stk/LICENSE +27 -0
  693. nanodsp-0.1.3/thirdparty/stk/Makefile.in +41 -0
  694. nanodsp-0.1.3/thirdparty/stk/README.md +194 -0
  695. nanodsp-0.1.3/thirdparty/stk/STK.podspec +55 -0
  696. nanodsp-0.1.3/thirdparty/stk/cmake/FindCoreAudio.cmake +21 -0
  697. nanodsp-0.1.3/thirdparty/stk/config/config.guess +1441 -0
  698. nanodsp-0.1.3/thirdparty/stk/config/config.sub +1813 -0
  699. nanodsp-0.1.3/thirdparty/stk/config/install.sh +0 -0
  700. nanodsp-0.1.3/thirdparty/stk/configure.ac +255 -0
  701. nanodsp-0.1.3/thirdparty/stk/include/ADSR.h +179 -0
  702. nanodsp-0.1.3/thirdparty/stk/include/Asymp.h +146 -0
  703. nanodsp-0.1.3/thirdparty/stk/include/BandedWG.h +153 -0
  704. nanodsp-0.1.3/thirdparty/stk/include/BeeThree.h +127 -0
  705. nanodsp-0.1.3/thirdparty/stk/include/BiQuad.h +259 -0
  706. nanodsp-0.1.3/thirdparty/stk/include/Blit.h +151 -0
  707. nanodsp-0.1.3/thirdparty/stk/include/BlitSaw.h +148 -0
  708. nanodsp-0.1.3/thirdparty/stk/include/BlitSquare.h +170 -0
  709. nanodsp-0.1.3/thirdparty/stk/include/BlowBotl.h +144 -0
  710. nanodsp-0.1.3/thirdparty/stk/include/BlowHole.h +185 -0
  711. nanodsp-0.1.3/thirdparty/stk/include/BowTable.h +150 -0
  712. nanodsp-0.1.3/thirdparty/stk/include/Bowed.h +157 -0
  713. nanodsp-0.1.3/thirdparty/stk/include/Brass.h +147 -0
  714. nanodsp-0.1.3/thirdparty/stk/include/Chorus.h +172 -0
  715. nanodsp-0.1.3/thirdparty/stk/include/Clarinet.h +152 -0
  716. nanodsp-0.1.3/thirdparty/stk/include/Cubic.h +138 -0
  717. nanodsp-0.1.3/thirdparty/stk/include/Delay.h +188 -0
  718. nanodsp-0.1.3/thirdparty/stk/include/DelayA.h +207 -0
  719. nanodsp-0.1.3/thirdparty/stk/include/DelayL.h +230 -0
  720. nanodsp-0.1.3/thirdparty/stk/include/Drummer.h +130 -0
  721. nanodsp-0.1.3/thirdparty/stk/include/Echo.h +120 -0
  722. nanodsp-0.1.3/thirdparty/stk/include/Effect.h +79 -0
  723. nanodsp-0.1.3/thirdparty/stk/include/Envelope.h +131 -0
  724. nanodsp-0.1.3/thirdparty/stk/include/FM.h +119 -0
  725. nanodsp-0.1.3/thirdparty/stk/include/FMVoices.h +135 -0
  726. nanodsp-0.1.3/thirdparty/stk/include/FileLoop.h +165 -0
  727. nanodsp-0.1.3/thirdparty/stk/include/FileRead.h +141 -0
  728. nanodsp-0.1.3/thirdparty/stk/include/FileWrite.h +116 -0
  729. nanodsp-0.1.3/thirdparty/stk/include/FileWvIn.h +208 -0
  730. nanodsp-0.1.3/thirdparty/stk/include/FileWvOut.h +102 -0
  731. nanodsp-0.1.3/thirdparty/stk/include/Filter.h +124 -0
  732. nanodsp-0.1.3/thirdparty/stk/include/Fir.h +155 -0
  733. nanodsp-0.1.3/thirdparty/stk/include/Flute.h +167 -0
  734. nanodsp-0.1.3/thirdparty/stk/include/FormSwep.h +190 -0
  735. nanodsp-0.1.3/thirdparty/stk/include/FreeVerb.h +251 -0
  736. nanodsp-0.1.3/thirdparty/stk/include/Function.h +41 -0
  737. nanodsp-0.1.3/thirdparty/stk/include/Generator.h +50 -0
  738. nanodsp-0.1.3/thirdparty/stk/include/Granulate.h +209 -0
  739. nanodsp-0.1.3/thirdparty/stk/include/Guitar.h +202 -0
  740. nanodsp-0.1.3/thirdparty/stk/include/HevyMetl.h +126 -0
  741. nanodsp-0.1.3/thirdparty/stk/include/Iir.h +204 -0
  742. nanodsp-0.1.3/thirdparty/stk/include/InetWvIn.h +158 -0
  743. nanodsp-0.1.3/thirdparty/stk/include/InetWvOut.h +98 -0
  744. nanodsp-0.1.3/thirdparty/stk/include/Instrmnt.h +108 -0
  745. nanodsp-0.1.3/thirdparty/stk/include/JCRev.h +166 -0
  746. nanodsp-0.1.3/thirdparty/stk/include/JetTable.h +112 -0
  747. nanodsp-0.1.3/thirdparty/stk/include/LentPitShift.h +263 -0
  748. nanodsp-0.1.3/thirdparty/stk/include/Mandolin.h +143 -0
  749. nanodsp-0.1.3/thirdparty/stk/include/Mesh2D.h +144 -0
  750. nanodsp-0.1.3/thirdparty/stk/include/Messager.h +166 -0
  751. nanodsp-0.1.3/thirdparty/stk/include/MidiFileIn.h +135 -0
  752. nanodsp-0.1.3/thirdparty/stk/include/Modal.h +154 -0
  753. nanodsp-0.1.3/thirdparty/stk/include/ModalBar.h +65 -0
  754. nanodsp-0.1.3/thirdparty/stk/include/Modulate.h +111 -0
  755. nanodsp-0.1.3/thirdparty/stk/include/Moog.h +125 -0
  756. nanodsp-0.1.3/thirdparty/stk/include/Mutex.h +74 -0
  757. nanodsp-0.1.3/thirdparty/stk/include/NRev.h +160 -0
  758. nanodsp-0.1.3/thirdparty/stk/include/Noise.h +84 -0
  759. nanodsp-0.1.3/thirdparty/stk/include/OnePole.h +134 -0
  760. nanodsp-0.1.3/thirdparty/stk/include/OneZero.h +134 -0
  761. nanodsp-0.1.3/thirdparty/stk/include/PRCRev.h +140 -0
  762. nanodsp-0.1.3/thirdparty/stk/include/PercFlut.h +127 -0
  763. nanodsp-0.1.3/thirdparty/stk/include/Phonemes.h +55 -0
  764. nanodsp-0.1.3/thirdparty/stk/include/PitShift.h +111 -0
  765. nanodsp-0.1.3/thirdparty/stk/include/Plucked.h +117 -0
  766. nanodsp-0.1.3/thirdparty/stk/include/PoleZero.h +113 -0
  767. nanodsp-0.1.3/thirdparty/stk/include/Recorder.h +167 -0
  768. nanodsp-0.1.3/thirdparty/stk/include/ReedTable.h +143 -0
  769. nanodsp-0.1.3/thirdparty/stk/include/Resonate.h +124 -0
  770. nanodsp-0.1.3/thirdparty/stk/include/Rhodey.h +128 -0
  771. nanodsp-0.1.3/thirdparty/stk/include/RtAudio.h +939 -0
  772. nanodsp-0.1.3/thirdparty/stk/include/RtMidi.h +677 -0
  773. nanodsp-0.1.3/thirdparty/stk/include/RtWvIn.h +126 -0
  774. nanodsp-0.1.3/thirdparty/stk/include/RtWvOut.h +96 -0
  775. nanodsp-0.1.3/thirdparty/stk/include/SKINImsg.h +129 -0
  776. nanodsp-0.1.3/thirdparty/stk/include/SKINItbl.h +135 -0
  777. nanodsp-0.1.3/thirdparty/stk/include/Sampler.h +75 -0
  778. nanodsp-0.1.3/thirdparty/stk/include/Saxofony.h +166 -0
  779. nanodsp-0.1.3/thirdparty/stk/include/Shakers.h +332 -0
  780. nanodsp-0.1.3/thirdparty/stk/include/Simple.h +126 -0
  781. nanodsp-0.1.3/thirdparty/stk/include/SineWave.h +159 -0
  782. nanodsp-0.1.3/thirdparty/stk/include/SingWave.h +136 -0
  783. nanodsp-0.1.3/thirdparty/stk/include/Sitar.h +129 -0
  784. nanodsp-0.1.3/thirdparty/stk/include/Skini.h +122 -0
  785. nanodsp-0.1.3/thirdparty/stk/include/Socket.h +89 -0
  786. nanodsp-0.1.3/thirdparty/stk/include/Sphere.h +79 -0
  787. nanodsp-0.1.3/thirdparty/stk/include/StifKarp.h +153 -0
  788. nanodsp-0.1.3/thirdparty/stk/include/Stk.h +637 -0
  789. nanodsp-0.1.3/thirdparty/stk/include/TapDelay.h +220 -0
  790. nanodsp-0.1.3/thirdparty/stk/include/TcpClient.h +65 -0
  791. nanodsp-0.1.3/thirdparty/stk/include/TcpServer.h +65 -0
  792. nanodsp-0.1.3/thirdparty/stk/include/Thread.h +98 -0
  793. nanodsp-0.1.3/thirdparty/stk/include/TubeBell.h +125 -0
  794. nanodsp-0.1.3/thirdparty/stk/include/Twang.h +160 -0
  795. nanodsp-0.1.3/thirdparty/stk/include/TwoPole.h +153 -0
  796. nanodsp-0.1.3/thirdparty/stk/include/TwoZero.h +149 -0
  797. nanodsp-0.1.3/thirdparty/stk/include/UdpSocket.h +76 -0
  798. nanodsp-0.1.3/thirdparty/stk/include/Vector3D.h +68 -0
  799. nanodsp-0.1.3/thirdparty/stk/include/VoicForm.h +161 -0
  800. nanodsp-0.1.3/thirdparty/stk/include/Voicer.h +219 -0
  801. nanodsp-0.1.3/thirdparty/stk/include/Whistle.h +128 -0
  802. nanodsp-0.1.3/thirdparty/stk/include/Wurley.h +128 -0
  803. nanodsp-0.1.3/thirdparty/stk/include/WvIn.h +46 -0
  804. nanodsp-0.1.3/thirdparty/stk/include/WvOut.h +85 -0
  805. nanodsp-0.1.3/thirdparty/stk/rawwaves/ahh.raw +0 -0
  806. nanodsp-0.1.3/thirdparty/stk/rawwaves/bassdrum.raw +0 -0
  807. nanodsp-0.1.3/thirdparty/stk/rawwaves/britestk.raw +0 -0
  808. nanodsp-0.1.3/thirdparty/stk/rawwaves/cowbell1.raw +0 -0
  809. nanodsp-0.1.3/thirdparty/stk/rawwaves/crashcym.raw +0 -0
  810. nanodsp-0.1.3/thirdparty/stk/rawwaves/dope.raw +0 -0
  811. nanodsp-0.1.3/thirdparty/stk/rawwaves/eee.raw +0 -0
  812. nanodsp-0.1.3/thirdparty/stk/rawwaves/fwavblnk.raw +0 -0
  813. nanodsp-0.1.3/thirdparty/stk/rawwaves/halfwave.raw +0 -0
  814. nanodsp-0.1.3/thirdparty/stk/rawwaves/hihatcym.raw +0 -0
  815. nanodsp-0.1.3/thirdparty/stk/rawwaves/impuls10.raw +0 -0
  816. nanodsp-0.1.3/thirdparty/stk/rawwaves/impuls20.raw +0 -0
  817. nanodsp-0.1.3/thirdparty/stk/rawwaves/impuls40.raw +0 -0
  818. nanodsp-0.1.3/thirdparty/stk/rawwaves/makefunc.c +55 -0
  819. nanodsp-0.1.3/thirdparty/stk/rawwaves/makemidi.c +33 -0
  820. nanodsp-0.1.3/thirdparty/stk/rawwaves/makewavs.c +116 -0
  821. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand1.raw +0 -0
  822. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand10.raw +0 -0
  823. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand11.raw +0 -0
  824. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand12.raw +0 -0
  825. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand2.raw +0 -0
  826. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand3.raw +0 -0
  827. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand4.raw +0 -0
  828. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand5.raw +0 -0
  829. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand6.raw +0 -0
  830. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand7.raw +0 -0
  831. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand8.raw +0 -0
  832. nanodsp-0.1.3/thirdparty/stk/rawwaves/mand9.raw +0 -0
  833. nanodsp-0.1.3/thirdparty/stk/rawwaves/mandpluk.raw +0 -0
  834. nanodsp-0.1.3/thirdparty/stk/rawwaves/marmstk1.raw +0 -0
  835. nanodsp-0.1.3/thirdparty/stk/rawwaves/ooo.raw +0 -0
  836. nanodsp-0.1.3/thirdparty/stk/rawwaves/peksblnk.raw +0 -0
  837. nanodsp-0.1.3/thirdparty/stk/rawwaves/ppksblnk.raw +0 -0
  838. nanodsp-0.1.3/thirdparty/stk/rawwaves/ridecymb.raw +0 -0
  839. nanodsp-0.1.3/thirdparty/stk/rawwaves/silence.raw +0 -0
  840. nanodsp-0.1.3/thirdparty/stk/rawwaves/sine.c +22 -0
  841. nanodsp-0.1.3/thirdparty/stk/rawwaves/sineblnk.raw +0 -0
  842. nanodsp-0.1.3/thirdparty/stk/rawwaves/sinewave.raw +0 -0
  843. nanodsp-0.1.3/thirdparty/stk/rawwaves/snardrum.raw +0 -0
  844. nanodsp-0.1.3/thirdparty/stk/rawwaves/snglpeak.raw +0 -0
  845. nanodsp-0.1.3/thirdparty/stk/rawwaves/tambourn.raw +0 -0
  846. nanodsp-0.1.3/thirdparty/stk/rawwaves/tomhidrm.raw +0 -0
  847. nanodsp-0.1.3/thirdparty/stk/rawwaves/tomlowdr.raw +0 -0
  848. nanodsp-0.1.3/thirdparty/stk/rawwaves/tommiddr.raw +0 -0
  849. nanodsp-0.1.3/thirdparty/stk/rawwaves/twopeaks.raw +0 -0
  850. nanodsp-0.1.3/thirdparty/stk/src/ADSR.cpp +181 -0
  851. nanodsp-0.1.3/thirdparty/stk/src/Asymp.cpp +112 -0
  852. nanodsp-0.1.3/thirdparty/stk/src/BandedWG.cpp +364 -0
  853. nanodsp-0.1.3/thirdparty/stk/src/BeeThree.cpp +79 -0
  854. nanodsp-0.1.3/thirdparty/stk/src/BiQuad.cpp +182 -0
  855. nanodsp-0.1.3/thirdparty/stk/src/Blit.cpp +78 -0
  856. nanodsp-0.1.3/thirdparty/stk/src/BlitSaw.cpp +91 -0
  857. nanodsp-0.1.3/thirdparty/stk/src/BlitSquare.cpp +95 -0
  858. nanodsp-0.1.3/thirdparty/stk/src/BlowBotl.cpp +122 -0
  859. nanodsp-0.1.3/thirdparty/stk/src/BlowHole.cpp +224 -0
  860. nanodsp-0.1.3/thirdparty/stk/src/Bowed.cpp +180 -0
  861. nanodsp-0.1.3/thirdparty/stk/src/Brass.cpp +158 -0
  862. nanodsp-0.1.3/thirdparty/stk/src/Chorus.cpp +56 -0
  863. nanodsp-0.1.3/thirdparty/stk/src/Clarinet.cpp +138 -0
  864. nanodsp-0.1.3/thirdparty/stk/src/Delay.cpp +110 -0
  865. nanodsp-0.1.3/thirdparty/stk/src/DelayA.cpp +117 -0
  866. nanodsp-0.1.3/thirdparty/stk/src/DelayL.cpp +73 -0
  867. nanodsp-0.1.3/thirdparty/stk/src/Drummer.cpp +141 -0
  868. nanodsp-0.1.3/thirdparty/stk/src/Echo.cpp +51 -0
  869. nanodsp-0.1.3/thirdparty/stk/src/Envelope.cpp +87 -0
  870. nanodsp-0.1.3/thirdparty/stk/src/FM.cpp +179 -0
  871. nanodsp-0.1.3/thirdparty/stk/src/FMVoices.cpp +164 -0
  872. nanodsp-0.1.3/thirdparty/stk/src/FileLoop.cpp +237 -0
  873. nanodsp-0.1.3/thirdparty/stk/src/FileRead.cpp +903 -0
  874. nanodsp-0.1.3/thirdparty/stk/src/FileWrite.cpp +799 -0
  875. nanodsp-0.1.3/thirdparty/stk/src/FileWvIn.cpp +267 -0
  876. nanodsp-0.1.3/thirdparty/stk/src/FileWvOut.cpp +140 -0
  877. nanodsp-0.1.3/thirdparty/stk/src/Fir.cpp +74 -0
  878. nanodsp-0.1.3/thirdparty/stk/src/Flute.cpp +163 -0
  879. nanodsp-0.1.3/thirdparty/stk/src/FormSwep.cpp +136 -0
  880. nanodsp-0.1.3/thirdparty/stk/src/FreeVerb.cpp +227 -0
  881. nanodsp-0.1.3/thirdparty/stk/src/Granulate.cpp +296 -0
  882. nanodsp-0.1.3/thirdparty/stk/src/Guitar.cpp +244 -0
  883. nanodsp-0.1.3/thirdparty/stk/src/HevyMetl.cpp +75 -0
  884. nanodsp-0.1.3/thirdparty/stk/src/Iir.cpp +125 -0
  885. nanodsp-0.1.3/thirdparty/stk/src/InetWvIn.cpp +320 -0
  886. nanodsp-0.1.3/thirdparty/stk/src/InetWvOut.cpp +231 -0
  887. nanodsp-0.1.3/thirdparty/stk/src/JCRev.cpp +136 -0
  888. nanodsp-0.1.3/thirdparty/stk/src/LentPitShift.cpp +52 -0
  889. nanodsp-0.1.3/thirdparty/stk/src/Makefile.in +118 -0
  890. nanodsp-0.1.3/thirdparty/stk/src/Mandolin.cpp +186 -0
  891. nanodsp-0.1.3/thirdparty/stk/src/Mesh2D.cpp +367 -0
  892. nanodsp-0.1.3/thirdparty/stk/src/Messager.cpp +435 -0
  893. nanodsp-0.1.3/thirdparty/stk/src/MidiFileIn.cpp +353 -0
  894. nanodsp-0.1.3/thirdparty/stk/src/Modal.cpp +169 -0
  895. nanodsp-0.1.3/thirdparty/stk/src/ModalBar.cpp +191 -0
  896. nanodsp-0.1.3/thirdparty/stk/src/Modulate.cpp +49 -0
  897. nanodsp-0.1.3/thirdparty/stk/src/Moog.cpp +111 -0
  898. nanodsp-0.1.3/thirdparty/stk/src/Mutex.cpp +104 -0
  899. nanodsp-0.1.3/thirdparty/stk/src/NRev.cpp +119 -0
  900. nanodsp-0.1.3/thirdparty/stk/src/Noise.cpp +34 -0
  901. nanodsp-0.1.3/thirdparty/stk/src/OnePole.cpp +61 -0
  902. nanodsp-0.1.3/thirdparty/stk/src/OneZero.cpp +49 -0
  903. nanodsp-0.1.3/thirdparty/stk/src/PRCRev.cpp +120 -0
  904. nanodsp-0.1.3/thirdparty/stk/src/PercFlut.cpp +85 -0
  905. nanodsp-0.1.3/thirdparty/stk/src/Phonemes.cpp +292 -0
  906. nanodsp-0.1.3/thirdparty/stk/src/PitShift.cpp +90 -0
  907. nanodsp-0.1.3/thirdparty/stk/src/Plucked.cpp +98 -0
  908. nanodsp-0.1.3/thirdparty/stk/src/PoleZero.cpp +73 -0
  909. nanodsp-0.1.3/thirdparty/stk/src/Recorder.cpp +345 -0
  910. nanodsp-0.1.3/thirdparty/stk/src/Resonate.cpp +113 -0
  911. nanodsp-0.1.3/thirdparty/stk/src/Rhodey.cpp +92 -0
  912. nanodsp-0.1.3/thirdparty/stk/src/RtAudio.cpp +11527 -0
  913. nanodsp-0.1.3/thirdparty/stk/src/RtMidi.cpp +5264 -0
  914. nanodsp-0.1.3/thirdparty/stk/src/RtWvIn.cpp +208 -0
  915. nanodsp-0.1.3/thirdparty/stk/src/RtWvOut.cpp +217 -0
  916. nanodsp-0.1.3/thirdparty/stk/src/Sampler.cpp +53 -0
  917. nanodsp-0.1.3/thirdparty/stk/src/Saxofony.cpp +177 -0
  918. nanodsp-0.1.3/thirdparty/stk/src/Shakers.cpp +729 -0
  919. nanodsp-0.1.3/thirdparty/stk/src/Simple.cpp +105 -0
  920. nanodsp-0.1.3/thirdparty/stk/src/SineWave.cpp +78 -0
  921. nanodsp-0.1.3/thirdparty/stk/src/SingWave.cpp +53 -0
  922. nanodsp-0.1.3/thirdparty/stk/src/Sitar.cpp +92 -0
  923. nanodsp-0.1.3/thirdparty/stk/src/Skini.cpp +228 -0
  924. nanodsp-0.1.3/thirdparty/stk/src/Socket.cpp +78 -0
  925. nanodsp-0.1.3/thirdparty/stk/src/Sphere.cpp +50 -0
  926. nanodsp-0.1.3/thirdparty/stk/src/StifKarp.cpp +181 -0
  927. nanodsp-0.1.3/thirdparty/stk/src/Stk.cpp +401 -0
  928. nanodsp-0.1.3/thirdparty/stk/src/TapDelay.cpp +87 -0
  929. nanodsp-0.1.3/thirdparty/stk/src/TcpClient.cpp +105 -0
  930. nanodsp-0.1.3/thirdparty/stk/src/TcpServer.cpp +99 -0
  931. nanodsp-0.1.3/thirdparty/stk/src/Thread.cpp +106 -0
  932. nanodsp-0.1.3/thirdparty/stk/src/TubeBell.cpp +78 -0
  933. nanodsp-0.1.3/thirdparty/stk/src/Twang.cpp +108 -0
  934. nanodsp-0.1.3/thirdparty/stk/src/TwoPole.cpp +76 -0
  935. nanodsp-0.1.3/thirdparty/stk/src/TwoZero.cpp +74 -0
  936. nanodsp-0.1.3/thirdparty/stk/src/UdpSocket.cpp +110 -0
  937. nanodsp-0.1.3/thirdparty/stk/src/VoicForm.cpp +189 -0
  938. nanodsp-0.1.3/thirdparty/stk/src/Voicer.cpp +224 -0
  939. nanodsp-0.1.3/thirdparty/stk/src/Whistle.cpp +256 -0
  940. nanodsp-0.1.3/thirdparty/stk/src/Wurley.cpp +94 -0
  941. nanodsp-0.1.3/thirdparty/stk/src/include/FunctionDiscoveryKeys_devpkey.h +212 -0
  942. nanodsp-0.1.3/thirdparty/stk/src/include/asio.cpp +257 -0
  943. nanodsp-0.1.3/thirdparty/stk/src/include/asio.h +1070 -0
  944. nanodsp-0.1.3/thirdparty/stk/src/include/asiodrivers.cpp +186 -0
  945. nanodsp-0.1.3/thirdparty/stk/src/include/asiodrivers.h +41 -0
  946. nanodsp-0.1.3/thirdparty/stk/src/include/asiodrvr.h +76 -0
  947. nanodsp-0.1.3/thirdparty/stk/src/include/asiolist.cpp +306 -0
  948. nanodsp-0.1.3/thirdparty/stk/src/include/asiolist.h +46 -0
  949. nanodsp-0.1.3/thirdparty/stk/src/include/asiosys.h +82 -0
  950. nanodsp-0.1.3/thirdparty/stk/src/include/dsound.h +2369 -0
  951. nanodsp-0.1.3/thirdparty/stk/src/include/ginclude.h +38 -0
  952. nanodsp-0.1.3/thirdparty/stk/src/include/iasiodrv.h +37 -0
  953. nanodsp-0.1.3/thirdparty/stk/src/include/iasiothiscallresolver.cpp +572 -0
  954. nanodsp-0.1.3/thirdparty/stk/src/include/iasiothiscallresolver.h +202 -0
  955. nanodsp-0.1.3/thirdparty/stk/src/include/soundcard.h +1878 -0
  956. nanodsp-0.1.3/thirdparty/vafilters/bl_polyblep.h +546 -0
  957. nanodsp-0.1.3/thirdparty/vafilters/va_diode_ladder.h +100 -0
  958. nanodsp-0.1.3/thirdparty/vafilters/va_korg35_hpf.h +65 -0
  959. nanodsp-0.1.3/thirdparty/vafilters/va_korg35_lpf.h +64 -0
  960. nanodsp-0.1.3/thirdparty/vafilters/va_moog_half_ladder.h +68 -0
  961. nanodsp-0.1.3/thirdparty/vafilters/va_moog_ladder.h +73 -0
  962. nanodsp-0.1.3/thirdparty/vafilters/va_oberheim.h +87 -0
  963. nanodsp-0.1.3/thirdparty/vafilters/vafilters.h +10 -0
  964. nanodsp-0.1.3/uv.lock +1120 -0
@@ -0,0 +1,214 @@
1
+ .DS_Store
2
+
3
+ # Byte-compiled / optimized / DLL files
4
+ __pycache__/
5
+ *.py[codz]
6
+ *$py.class
7
+
8
+ # C extensions
9
+ *.so
10
+
11
+ # Distribution / packaging
12
+ .Python
13
+ build/
14
+ develop-eggs/
15
+ dist/
16
+ downloads/
17
+ eggs/
18
+ .eggs/
19
+ lib64/
20
+ parts/
21
+ sdist/
22
+ var/
23
+ wheels/
24
+ share/python-wheels/
25
+ *.egg-info/
26
+ .installed.cfg
27
+ *.egg
28
+ MANIFEST
29
+
30
+ # PyInstaller
31
+ # Usually these files are written by a python script from a template
32
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+ *.manifest
34
+ *.spec
35
+
36
+ # Installer logs
37
+ pip-log.txt
38
+ pip-delete-this-directory.txt
39
+
40
+ # Unit test / coverage reports
41
+ htmlcov/
42
+ .tox/
43
+ .nox/
44
+ .coverage
45
+ .coverage.*
46
+ .cache
47
+ nosetests.xml
48
+ coverage.xml
49
+ *.cover
50
+ *.py.cover
51
+ .hypothesis/
52
+ cover/
53
+
54
+ # general cache
55
+ .cache
56
+ .*_cache
57
+ .*-cache
58
+
59
+ # Translations
60
+ *.mo
61
+ *.pot
62
+
63
+ # Django stuff:
64
+ *.log
65
+ local_settings.py
66
+ db.sqlite3
67
+ db.sqlite3-journal
68
+
69
+ # Flask stuff:
70
+ instance/
71
+
72
+ # Scrapy stuff:
73
+ .scrapy
74
+
75
+ # Sphinx documentation
76
+ docs/_build/
77
+
78
+ # PyBuilder
79
+ .pybuilder/
80
+ target/
81
+
82
+ # Jupyter Notebook
83
+ .ipynb_checkpoints
84
+
85
+ # IPython
86
+ profile_default/
87
+ ipython_config.py
88
+
89
+ # pyenv
90
+ # For a library or package, you might want to ignore these files since the code is
91
+ # intended to run in multiple environments; otherwise, check them in:
92
+ # .python-version
93
+
94
+ # pipenv
95
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
96
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
97
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
98
+ # install all needed dependencies.
99
+ #Pipfile.lock
100
+
101
+ # UV
102
+ # Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
103
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
104
+ # commonly ignored for libraries.
105
+ #uv.lock
106
+
107
+ # poetry
108
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
109
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
110
+ # commonly ignored for libraries.
111
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
112
+ #poetry.lock
113
+ #poetry.toml
114
+
115
+ # pdm
116
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
117
+ # pdm recommends including project-wide configuration in pdm.toml, but excluding .pdm-python.
118
+ # https://pdm-project.org/en/latest/usage/project/#working-with-version-control
119
+ #pdm.lock
120
+ #pdm.toml
121
+ .pdm-python
122
+ .pdm-build/
123
+
124
+ # pixi
125
+ # Similar to Pipfile.lock, it is generally recommended to include pixi.lock in version control.
126
+ #pixi.lock
127
+ # Pixi creates a virtual environment in the .pixi directory, just like venv module creates one
128
+ # in the .venv directory. It is recommended not to include this directory in version control.
129
+ .pixi
130
+
131
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
132
+ __pypackages__/
133
+
134
+ # Celery stuff
135
+ celerybeat-schedule
136
+ celerybeat.pid
137
+
138
+ # SageMath parsed files
139
+ *.sage.py
140
+
141
+ # Environments
142
+ .env
143
+ .envrc
144
+ .venv
145
+ env/
146
+ venv/
147
+ ENV/
148
+ env.bak/
149
+ venv.bak/
150
+
151
+ # Spyder project settings
152
+ .spyderproject
153
+ .spyproject
154
+
155
+ # Rope project settings
156
+ .ropeproject
157
+
158
+ # mkdocs documentation
159
+ /site
160
+
161
+ # mypy
162
+ .dmypy.json
163
+ dmypy.json
164
+
165
+ # Pyre type checker
166
+ .pyre/
167
+
168
+ # pytype static type analyzer
169
+ .pytype/
170
+
171
+ # Cython debug symbols
172
+ cython_debug/
173
+
174
+ # PyCharm
175
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
176
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
177
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
178
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
179
+ #.idea/
180
+
181
+ # Abstra
182
+ # Abstra is an AI-powered process automation framework.
183
+ # Ignore directories containing user credentials, local state, and settings.
184
+ # Learn more at https://abstra.io/docs
185
+ .abstra/
186
+
187
+ # Visual Studio Code
188
+ # Visual Studio Code specific template is maintained in a separate VisualStudioCode.gitignore
189
+ # that can be found at https://github.com/github/gitignore/blob/main/Global/VisualStudioCode.gitignore
190
+ # and can be added to the global gitignore or merged into this file. However, if you prefer,
191
+ # you could uncomment the following to ignore the entire vscode folder
192
+ # .vscode/
193
+
194
+ # PyPI configuration file
195
+ .pypirc
196
+
197
+ # Cursor
198
+ # Cursor is an AI-powered code editor. `.cursorignore` specifies files/directories to
199
+ # exclude from AI features like autocomplete and code analysis. Recommended for sensitive data
200
+ # refer to https://docs.cursor.com/context/ignore-files
201
+ .cursorignore
202
+ .cursorindexingignore
203
+
204
+ # Marimo
205
+ marimo/_static/
206
+ marimo/_lsp/
207
+ __marimo__/
208
+
209
+ # agents
210
+ .claude
211
+ CLAUDE.md
212
+ AGENTS.md
213
+ GEMINI.md
214
+
@@ -0,0 +1,295 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [0.1.3]
11
+
12
+ ### Added
13
+
14
+ - **Virtual Analog filter bindings** (`nanodsp._core.vafilters`, `nanodsp.effects`) -- 6 Faust-derived analog-modeled filters
15
+ - `MoogLadder` -- 24 dB/oct Moog ladder lowpass with resonance
16
+ - `MoogHalfLadder` -- 12 dB/oct Moog half-ladder lowpass
17
+ - `DiodeLadder` -- 24 dB/oct diode ladder lowpass with internal soft clipping
18
+ - `Korg35LPF` -- 24 dB/oct Korg-35 lowpass
19
+ - `Korg35HPF` -- 24 dB/oct Korg-35 highpass
20
+ - `OberheimSVF` -- multi-mode state-variable filter with 4 simultaneous outputs (LPF, HPF, BPF, BSF)
21
+ - Python wrappers: `va_moog_ladder`, `va_moog_half_ladder`, `va_diode_ladder`, `va_korg35_lpf`, `va_korg35_hpf`, `va_oberheim`
22
+ - 44 tests (`tests/test_vafilters.py`)
23
+
24
+ - **Band-limited oscillator bindings** (`nanodsp._core.bloscillators`, `nanodsp.synthesis`) -- 5 anti-aliased oscillator algorithms
25
+ - `PolyBLEP` -- polynomial band-limited step oscillator with 14 waveforms (sine, cosine, triangle, square, rectangle, sawtooth, ramp, modified triangle/square, half/full-wave rectified sine, triangular pulse, trapezoid fixed/variable)
26
+ - `BlitSaw` -- BLIT (band-limited impulse train) sawtooth with configurable harmonics
27
+ - `BlitSquare` -- BLIT square wave with DC blocker
28
+ - `DPWSaw` -- DPW (differentiated parabolic wave) sawtooth
29
+ - `DPWPulse` -- DPW pulse with variable duty cycle
30
+ - Python wrappers: `polyblep`, `blit_saw`, `blit_square`, `dpw_saw`, `dpw_pulse`
31
+ - 83 tests (`tests/test_bloscillators.py`)
32
+
33
+ - **FX DSP algorithms** (`nanodsp._core.fxdsp`, `nanodsp.effects`, `nanodsp.synthesis`) -- 6 algorithms from cleaned/rewritten third-party sources
34
+ - `HardClipper` -- first-order antiderivative antialiased hard clipping
35
+ - `SoftClipper` -- first-order antiderivative antialiased soft clipping (sin saturation)
36
+ - `Wavefolder` -- second-order antiderivative antialiased wavefolding
37
+ - `SchroederReverb` -- classic 4 parallel feedback combs + 2 series allpasses with optional LFO modulation
38
+ - `MoorerReverb` -- Schroeder extension with 18-tap early reflections delay network
39
+ - `MinBLEP` -- minimum band-limited step oscillator (saw, reverse saw, square, triangle) with precomputed 2048-element table at 64x oversampling
40
+ - `PsolaShifter` -- PSOLA pitch shifting with autocorrelation pitch detection and grain-based resynthesis
41
+ - `FormantFilter` -- 3 cascaded bandpass biquads tuned to vowel formant frequencies (A/E/I/O/U) with blending
42
+ - Python wrappers: `aa_hard_clip`, `aa_soft_clip`, `aa_wavefold`, `schroeder_reverb`, `moorer_reverb`, `formant_filter`, `psola_pitch_shift`, `minblep`
43
+ - 69 tests (`tests/test_fxdsp.py`)
44
+
45
+ - **Multi-order IIR filter design** (`nanodsp._core.iirdesign`, `nanodsp.effects`) -- 5 classical filter families via DspFilters (Vinnie Falco, MIT)
46
+ - Butterworth (maximally flat passband)
47
+ - Chebyshev Type I (passband ripple, sharper rolloff)
48
+ - Chebyshev Type II (stopband ripple, flat passband)
49
+ - Elliptic (sharpest transition, ripple in both bands)
50
+ - Bessel (linear phase, minimal ringing)
51
+ - Each family supports lowpass, highpass, bandpass, bandstop configurations
52
+ - Orders 1-16, returning SOS (second-order sections) coefficients
53
+ - `IIRFilter` class for stateful processing with `setup()`/`process()`/`reset()`/`sos()`
54
+ - `iir_design()` returns SOS coefficient array `[n_sections, 6]`
55
+ - `iir_filter()` applies multi-order IIR filter to AudioBuffer
56
+ - 41 tests (`tests/test_iirdesign.py`)
57
+
58
+ - **Pure NumPy DSP algorithms** -- 7 new functions for API completeness without scipy dependency
59
+ - `ops.xcorr(buf_a, buf_b=None)` -- FFT-based cross-correlation (or autocorrelation in single-arg form)
60
+ - `ops.hilbert(buf)` -- amplitude envelope via analytic signal (FFT method)
61
+ - `ops.envelope(buf)` -- alias for `hilbert`
62
+ - `ops.median_filter(buf, kernel_size=3)` -- per-channel median filtering via stride tricks
63
+ - `ops.lms_filter(buf, ref, filter_len=32, step_size=0.01, normalized=True)` -- NLMS adaptive filter returning `(output, error)`
64
+ - `effects.agc(buf, target_level, max_gain_db, average_len, attack, release)` -- automatic gain control with asymmetric attack/release
65
+ - `analysis.gcc_phat(buf, ref, sample_rate)` -- GCC-PHAT time-delay estimation returning `(delay_seconds, correlation)`
66
+
67
+ - **GrainflowLib bindings** (`nanodsp._core.grainflow`) -- granular synthesis engine (header-only, MIT license)
68
+ - `GfBuffer` -- buffer wrapper bridging numpy `[channels, frames]` arrays to GrainflowLib's internal AudioFile storage
69
+ - `GrainCollection` -- core multi-grain granulator with block-based processing, parameter control (enum and string reflection), buffer assignment, stream management, and auto-overlap
70
+ - `Panner` -- stereo grain panning with three modes (bipolar, unipolar, stereo) using equal-power quarter-sine interpolation
71
+ - `Recorder` -- live recording into buffers with overdub, freeze, sync, and multi-band filter support
72
+ - `Phasor` -- clock generator for grain triggering (continuous-phase ramp [0, 1))
73
+ - 37 enum constants: `PARAM_*` (23 parameter names), `PTYPE_*` (5 parameter types), `STREAM_*` (4 stream modes), `BUF_*` (6 buffer types), `BUFMODE_*` (3 buffer modes), `PAN_*` (3 pan modes)
74
+ - String-based parameter reflection (e.g. `"delayRandom"`, `"rateOffset"`, `"channelMode"`)
75
+ - All processing methods release the GIL for thread safety
76
+ - 49 tests (`tests/test_grainflow.py`)
77
+ - Patched two GrainflowLib upstream bugs for `SigType=float`: `gf_utils::mod` template deduction failure, `stream` method vs member access
78
+
79
+ - **Demo scripts** (`demos/`) -- 16 runnable demo scripts showcasing the full API surface
80
+ - `demo_filters.py` -- 13 biquad filter variants (lowpass, highpass, bandpass, notch, peak, shelving)
81
+ - `demo_modulation.py` -- 10 modulation effects (chorus, flanger, phaser, tremolo)
82
+ - `demo_distortion.py` -- 14 distortion/saturation effects (overdrive, wavefold, bitcrush, decimator, saturate, fold)
83
+ - `demo_reverb.py` -- 12 reverb algorithms (FDN presets, ReverbSc, STK freeverb/jcrev/nrev/prcrev)
84
+ - `demo_dynamics.py` -- 9 dynamics processors (compression, limiting, gating, parallel/multiband compression)
85
+ - `demo_delay.py` -- 8 delay effects (stereo delay, ping-pong, slapback, echo)
86
+ - `demo_pitch.py` -- 10 pitch shifters (time-domain and spectral at various intervals)
87
+ - `demo_spectral.py` -- 12 spectral transforms (time stretch, phase lock, spectral gate, tilt EQ, freeze)
88
+ - `demo_daisysp_filters.py` -- 21 DaisySP filter variants (SVF, ladder, moog, tone, modal, comb)
89
+ - `demo_composed.py` -- 13 composed effects (autowah, sample rate reduce, DC block, exciter, de-esser, vocal chain, mastering, STK chorus)
90
+ - `demo_spectral_extra.py` -- 8 additional spectral transforms (denoise, EQ match, spectral morph)
91
+ - `demo_ops.py` -- 29 core DSP operations (delay, vibrato, convolution, envelopes, fades, panning, stereo widening, crossfade, normalization, trim, oversample)
92
+ - `demo_resample.py` -- 6 resampling variants (madronalib and FFT methods at 22k/48k/96k)
93
+ - `demo_synthesis.py` -- 44 synthesis sounds (oscillators, FM, formant, noise, drums, physical modeling, STK instruments, sequence) -- no input file required
94
+ - `demo_analysis.py` -- audio analysis printout (loudness, spectral features, pitch detection, onset detection, chromagram) -- no audio output
95
+ - `demo_grainflow.py` -- 7 granular synthesis variants (basic cloud, dense cloud, pitch shift up/down, sparse stochastic, stereo panned, recorder)
96
+ - `demo_fxdsp.py` -- 28 FX DSP outputs: antialiased waveshaping (6), Schroeder/Moorer reverbs (6), formant vowels (5), PSOLA pitch shifts (6), minBLEP waveforms (5)
97
+ - `demo_iir_filters.py` -- 23 IIR filter outputs: Butterworth (6), Chebyshev I (4), Chebyshev II (3), Elliptic (3), Bessel (4), order comparison (3)
98
+ - All file-processing scripts accept positional `infile`, optional `-o`/`--out-dir` (default `build/demo-output/`), and `-n`/`--no-normalize` to skip peak normalization
99
+ - Peak normalization (0 dBFS) applied by default to prevent clipping on PCM output
100
+ - `make demos` target -- runs all 18 demo scripts in sequence (`DEMO_INPUT=demos/s01.wav` by default)
101
+
102
+ ### Fixed
103
+
104
+ - **Moorer reverb early reflections routing** -- early reflections now bypass comb filters and mix directly to output (classic Moorer design)
105
+ - **Moorer reverb delay read direction** -- fixed EarlyReflections reading forward (unwritten buffer) instead of backward (past samples)
106
+ - **Schroeder reverb bugs** (from original source) -- all 4 combs incorrectly used same filter instance; allpass path used uninitialized variable
107
+ - **DPW oscillator startup transient** -- seeded differentiator state in `reset()` to eliminate first-sample amplitude spike (~25x) caused by uninitialized `last_value_`
108
+ - **Faust VA filter NaN** -- seeded parameter smoothing registers in MoogLadder, MoogHalfLadder, and DiodeLadder to prevent `log10(~0)` producing -inf/NaN on first samples
109
+
110
+ ## [0.1.2]
111
+
112
+ ### Changed
113
+
114
+ - **GIL release in C++ bindings** -- all ~160 processing functions across 6 binding files now release the Python GIL during computation via `nb::gil_scoped_release`, enabling true multi-threaded parallelism
115
+ - `_core_signalsmith.cpp` -- Biquad, FFT, RealFFT, Delay, LFO, envelope, STFT, Oversampler processing
116
+ - `_core_daisysp.cpp` -- 73 functions: oscillators, filters, effects, dynamics, control, noise, drums, physical modeling, utility
117
+ - `_core_stk.cpp` -- generators, filters (via macro), reverbs (via macro), instruments (via macro), effects, Guitar, Twang
118
+ - `_core_madronalib.cpp` -- `ml_process`/`ml_process_stereo`/`ml_process2` templates (propagates to FDN reverbs, delay, resampling, generators), projections, amp/dB conversions
119
+ - `_core_hisstools.cpp` -- MonoConvolve, Convolver, SpectralProcessor (convolve/correlate/change_phase), KernelSmoother
120
+ - `_core_choc.cpp` -- FLAC read/write file I/O
121
+
122
+ ### Fixed
123
+
124
+ - **Cross-platform build** (Linux, macOS, Windows)
125
+ - Linux: `CMAKE_POSITION_INDEPENDENT_CODE` for static libs linked into shared `.so`
126
+ - Linux: Suppressed GCC `-Wmaybe-uninitialized` false positives from HISSTools `Statistics.hpp`
127
+ - Linux: Dropped aarch64 wheels (HISSTools NEON code requires Apple Clang-specific implicit type conversions)
128
+ - macOS: Set `MACOSX_DEPLOYMENT_TARGET=10.15` for `std::filesystem::path` and nanobind aligned deallocation
129
+ - macOS: Architecture detection via compiler built-in defines (`__aarch64__`) instead of `CMAKE_SYSTEM_PROCESSOR` (correct under cross-compilation)
130
+ - macOS: `cmake/hisstools_arch_compat.h` -- bridges `__aarch64__` (GCC/Linux) to `__arm64__` (Apple/HISSTools)
131
+ - Windows: `NOMINMAX` and `_USE_MATH_DEFINES` for MSVC across all targets
132
+ - Windows: `cmake/msvc_compat.h` -- `__attribute__` no-op and `<cmath>` includes for DaisySP
133
+ - Python < 3.12: Guarded `AudioBuffer.__buffer__` (PEP 688) behind version check
134
+
135
+ - **CI/CD** (`.github/workflows/`)
136
+ - `build-publish.yml` -- cibuildwheel v3.3.1 wheel builds for Linux x86_64, macOS arm64+x86_64, Windows AMD64; TestPyPI + PyPI publish via trusted publishing
137
+ - `ci.yml` -- QA (ruff lint/format, mypy typecheck) + native build/test matrix (ubuntu/macOS/Windows, Python 3.10+3.14)
138
+ - Cross-compile macOS x86_64 wheels from ARM64 runner (macos-latest); tests skipped for x86_64
139
+
140
+ ## [0.1.1]
141
+
142
+ ### Added
143
+
144
+ - **CLI** (`nanodsp.__main__`, `nanodsp._cli`)
145
+ - `nanodsp info <file>` -- audio file metadata (path, format, duration, sample_rate, channels, frames, peak_db, loudness_lufs), `--json` output
146
+ - `nanodsp process <inputs...> -o OUT|-O DIR` -- chainable effect pipeline with `--fx`/`-f` (repeatable) and `--preset`/`-p` (repeatable)
147
+ - Batch mode: `nanodsp process *.wav -O out/` processes multiple files to an output directory
148
+ - Dry-run: `nanodsp process in.wav -n -f lowpass:cutoff_hz=1000` shows the chain without reading or writing files
149
+ - Global `-v`/`--verbose` flag for detailed step-by-step output, `-q`/`--quiet` to suppress non-essential output (mutually exclusive)
150
+ - `nanodsp analyze <file> <type>` -- 10 analysis subcommands (loudness, pitch, onsets, centroid, bandwidth, rolloff, flux, flatness, chromagram, info), `--json` output
151
+ - `nanodsp synth <out> <type>` -- 7 synth types (sine, noise, drum, oscillator, fm, note, sequence)
152
+ - `nanodsp convert <in> <out>` -- format conversion (WAV/FLAC), resampling (`--sample-rate`), channel conversion (`--channels`), bit depth (`-b`)
153
+ - `nanodsp pipe` -- read WAV from stdin, apply `-f`/`-p` effect chain, write WAV to stdout; supports Unix pipe chaining
154
+ - `nanodsp benchmark <function>` -- profile a DSP function with configurable iterations, warmup, buffer size; reports min/max/mean/median/std timing and realtime throughput multiplier, `--json` output
155
+ - `nanodsp preset list|info|apply` -- 30 presets across 8 categories (mastering, voice, spatial, dynamics, lofi, cleanup, creative)
156
+ - `nanodsp list [category]` -- browse all registered functions with signatures across 7 categories (filters, effects, dynamics, spectral, analysis, synthesis, ops)
157
+ - 13 new presets: genre mastering (`master_pop`, `master_hiphop`, `master_classical`, `master_edm`, `master_podcast`), creative effects (`radio`, `underwater`, `megaphone`, `tape_warmth`, `shimmer`, `vaporwave`, `walkie_talkie`), lofi (`8bit`)
158
+ - Function registry with auto-discovery from all modules, `inspect.signature`-based parameter display
159
+ - Preset registry with single-function and chain-based presets, parameter overrides
160
+ - FX token parser (`name:k=v,k=v`) with type coercion from signature defaults
161
+ - `[project.scripts]` entry point: `nanodsp` command
162
+
163
+ - **Audio I/O** (`nanodsp.io`)
164
+ - `read_wav_bytes(data)` -- parse WAV from raw bytes (for stdin/pipe workflows)
165
+ - `write_wav_bytes(buf, bit_depth)` -- serialize AudioBuffer to WAV bytes (for stdout/pipe workflows)
166
+
167
+ - **CHOC FLAC codec** -- read/write FLAC files (16/24-bit) via header-only CHOC library
168
+ - `nanodsp._core.choc` C++ bindings for FLAC read/write
169
+ - `io.read_flac()`, `io.write_flac()` Python wrappers
170
+ - `io.read()`, `io.write()` auto-detect WAV vs FLAC by extension
171
+ - Fixed CHOC upstream bug in 24-bit float-to-int scale factor
172
+
173
+ - **Streaming infrastructure** (`nanodsp.stream`)
174
+ - `RingBuffer` -- multi-channel ring buffer with independent read/write positions
175
+ - `BlockProcessor` -- base class for block-based audio processors
176
+ - `CallbackProcessor` -- wrap a callable as a block processor
177
+ - `ProcessorChain` -- chain multiple processors in series
178
+ - `process_blocks()` -- process a buffer through a function in blocks with optional overlap-add
179
+
180
+ - **DaisySP effects** (via `nanodsp.effects`)
181
+ - Effects: `autowah`, `chorus`, `decimator`, `flanger`, `overdrive`, `phaser`, `pitch_shift`, `sample_rate_reduce`, `tremolo`, `wavefold`, `bitcrush`, `fold`, `reverb_sc`, `dc_block`
182
+ - Filters: `svf_lowpass`, `svf_highpass`, `svf_bandpass`, `svf_notch`, `svf_peak`, `ladder_filter`, `moog_ladder`, `tone_lowpass`, `tone_highpass`, `modal_bandpass`, `comb_filter`
183
+ - Dynamics: `compress`, `limit`
184
+
185
+ - **DaisySP synthesis** (via `nanodsp.synthesis`)
186
+ - Oscillators: `oscillator`, `fm2`, `formant_oscillator`, `bl_oscillator`
187
+ - Noise: `white_noise`, `clocked_noise`, `dust`
188
+ - Drums: `analog_bass_drum`, `analog_snare_drum`, `hihat`, `synthetic_bass_drum`, `synthetic_snare_drum`
189
+ - Physical modeling: `karplus_strong`, `modal_voice`, `string_voice`, `pluck`, `drip`
190
+
191
+ - **STK bindings** (`nanodsp._core.stk`) -- 5 submodules, 39 classes
192
+ - Instruments: `Clarinet`, `Flute`, `Brass`, `Bowed`, `Plucked`, `Sitar`, `StifKarp`, `Saxofony`, `Recorder`, `BlowBotl`, `BlowHole`, `Whistle`, `Guitar`, `Twang`
193
+ - Generators: `SineWave`, `Noise`, `Blit`, `BlitSaw`, `BlitSquare`, `ADSR`, `Asymp`, `Envelope`, `Modulate`
194
+ - Filters: `BiQuad`, `OnePole`, `OneZero`, `TwoPole`, `TwoZero`, `PoleZero`, `FormSwep`
195
+ - Delays: `Delay`, `DelayA`, `DelayL`, `TapDelay`
196
+ - Effects: `FreeVerb`, `JCRev`, `NRev`, `PRCRev`, `Echo`, `Chorus`, `PitShift`, `LentPitShift`
197
+ - High-level wrappers: `stk_reverb`, `stk_chorus`, `stk_echo`, `synth_note`, `synth_sequence`
198
+
199
+ - **Madronalib bindings** (`nanodsp._core.madronalib`) -- 7 submodules
200
+ - FDN reverbs: `FDN4`, `FDN8`, `FDN16` with configurable delays, cutoffs, and feedback
201
+ - Delays: `PitchbendableDelay`
202
+ - Resampling: `Downsampler`, `Upsampler`
203
+ - Generators: `OneShotGen`, `LinearGlide`, `SampleAccurateLinearGlide`, `TempoLock`
204
+ - Projections: 18 easing functions (`smoothstep`, `bell`, `ease_in`, `ease_out`, etc.)
205
+ - Windows: `hamming`, `blackman`, `flat_top`, `triangle`, `raised_cosine`, `rectangle`
206
+ - Utilities: `amp_to_db`, `db_to_amp` (scalar and array overloads)
207
+
208
+ - **HISSTools bindings** (`nanodsp._core.hisstools`) -- 4 submodules
209
+ - Convolution: `MonoConvolve`, `Convolver` (multi-channel) with selectable latency modes
210
+ - Spectral processing: `SpectralProcessor` (convolve, correlate, phase change), `KernelSmoother`
211
+ - Analysis: 24 statistics functions (`stat_mean`, `stat_rms`, `stat_centroid`, `stat_kurtosis`, etc.), `PartialTracker`
212
+ - Windows: 28 window functions (Hann, Blackman-Harris variants, Nuttall variants, flat-top variants, Kaiser, Tukey, etc.)
213
+
214
+ - **Spectral processing** (`nanodsp.spectral`)
215
+ - STFT/ISTFT with Hann window and COLA overlap-add reconstruction
216
+ - Spectral utilities: `magnitude`, `phase`, `from_polar`, `apply_mask`, `spectral_gate`, `spectral_emphasis`, `bin_freq`, `freq_to_bin`
217
+ - Spectral transforms: `time_stretch`, `phase_lock`, `spectral_freeze`, `spectral_morph`, `pitch_shift_spectral`, `spectral_denoise`
218
+ - `eq_match` -- match spectral envelope between two buffers
219
+
220
+ - **Analysis** (`nanodsp.analysis`)
221
+ - Loudness: `loudness_lufs` (ITU-R BS.1770-4), `normalize_lufs`
222
+ - Spectral features: `spectral_centroid`, `spectral_bandwidth`, `spectral_rolloff`, `spectral_flux`, `spectral_flatness_curve`, `chromagram`
223
+ - Pitch detection: `pitch_detect` (YIN algorithm)
224
+ - Onset detection: `onset_detect` (spectral flux with peak picking)
225
+ - Resampling: `resample` (madronalib backend), `resample_fft` (FFT-based)
226
+ - Delay estimation: `gcc_phat` (GCC-PHAT)
227
+
228
+ - **Composed effects** (`nanodsp.effects`)
229
+ - `saturate` (soft/hard/tape modes), `exciter`, `de_esser`, `parallel_compress`
230
+ - `noise_gate`, `stereo_delay` (with ping-pong mode), `multiband_compress`
231
+ - `reverb` with FDN backend and presets (room, hall, plate, chamber, cathedral)
232
+ - `master` -- mastering chain (dc_block, EQ, compress, limit, normalize_lufs)
233
+ - `vocal_chain` -- vocal processing chain (de-esser, EQ, compress, limit, normalize)
234
+ - `agc` -- automatic gain control with asymmetric attack/release
235
+
236
+ - **Core DSP operations** (`nanodsp.ops`)
237
+ - Delay: `delay`, `delay_varying`
238
+ - Envelopes: `box_filter`, `box_stack_filter`, `peak_hold`, `peak_decay`
239
+ - FFT: `rfft`, `irfft`
240
+ - `convolve` -- FFT-based overlap-add convolution
241
+ - Rate conversion: `upsample_2x`, `oversample_roundtrip`
242
+ - Mixing: `hadamard`, `householder`, `crossfade`, `mix_buffers`
243
+ - `lfo` -- cubic LFO with rate/depth variation
244
+ - Normalization: `normalize_peak`, `trim_silence`, `fade_in`, `fade_out`
245
+ - Stereo: `pan`, `mid_side_encode`, `mid_side_decode`, `stereo_widen`
246
+ - Correlation: `xcorr` (FFT-based cross-/auto-correlation)
247
+ - Analytic signal: `hilbert`, `envelope`
248
+ - Filtering: `median_filter`, `lms_filter`
249
+
250
+ - **Biquad filter wrappers** (`nanodsp.effects`)
251
+ - `lowpass`, `highpass`, `bandpass`, `notch`, `peak`, `peak_db`
252
+ - `high_shelf`, `high_shelf_db`, `low_shelf`, `low_shelf_db`, `allpass`
253
+ - `biquad_process` -- process through a pre-configured Biquad
254
+ - All accept frequency in Hz with automatic normalization
255
+
256
+ - **AudioBuffer I/O methods**
257
+ - `AudioBuffer.from_file(path)` -- classmethod to read WAV/FLAC by extension
258
+ - `buf.write(path, bit_depth=16)` -- instance method to write WAV/FLAC by extension
259
+ - `nanodsp._core.pyi` -- complete type stubs for all 12 C++ submodules
260
+ - `Spectrogram` data class for STFT output (`[channels, frames, bins]` complex64)
261
+
262
+ ### Changed
263
+
264
+ - **Module split** -- monolithic `dsp.py` replaced by focused modules:
265
+ - `_helpers.py` -- shared private utilities
266
+ - `ops.py` -- delay, envelopes, FFT, convolution, rates, mix, pan, normalization
267
+ - `effects.py` -- filters, effects, dynamics, reverb, mastering chains
268
+ - `spectral.py` -- STFT, spectral utilities, spectral transforms, eq_match
269
+ - `synthesis.py` -- oscillators, noise, drums, physical modeling, STK synth
270
+ - `analysis.py` -- loudness, spectral features, pitch/onset detection, resampling
271
+ - `__init__.py` stripped to `__version__` only -- no re-exports; use explicit imports
272
+ - `io.py` now supports both WAV and FLAC formats
273
+ - Test suite reorganized into per-module test files (1114 tests)
274
+ - Removed `disable_error_code = ["import-untyped"]` from mypy config (stubs fix this)
275
+
276
+ ## [0.1.0]
277
+
278
+ ### Added
279
+
280
+ - Initial project structure with scikit-build-core + CMake + uv
281
+ - Core C++ bindings via nanobind (`nanodsp._core`):
282
+ - `filters` -- `Biquad` with 16 filter designs, `BiquadDesign` enum
283
+ - `fft` -- `FFT` (complex-to-complex), `RealFFT` (real-to-complex)
284
+ - `delay` -- `Delay` (linear interpolation), `DelayCubic` (cubic interpolation)
285
+ - `envelopes` -- `CubicLfo`, `BoxFilter`, `BoxStackFilter`, `PeakHold`, `PeakDecayLinear`
286
+ - `spectral` -- `STFT` (multi-channel analysis/synthesis)
287
+ - `rates` -- `Oversampler2x`
288
+ - `mix` -- `Hadamard`, `Householder`, `cheap_energy_crossfade`
289
+ - `AudioBuffer` class (pure Python, 2D `[channels, frames]` float32 with metadata)
290
+ - Factory methods: `zeros`, `ones`, `impulse`, `sine`, `noise`, `from_numpy`
291
+ - Channel operations: `to_mono`, `to_channels`, `split`, `concat_channels`
292
+ - Arithmetic operators: `+`, `-`, `*`, `/`, `gain_db`
293
+ - Pipeline: `pipe()` for chaining DSP functions
294
+ - `io.read_wav()`, `io.write_wav()` -- WAV file I/O (8/16/24/32-bit PCM, stdlib `wave`)
295
+ - Test suite with pytest (203 tests)