From dd8f761dbfa631ac1e2a54fef0909b1b07b29b18 Mon Sep 17 00:00:00 2001 From: bsp2 Date: Mon, 2 Jul 2018 20:01:51 +0200 Subject: [PATCH] add squinkylabs-plug1 modules + new Win64 VST binary --- .gitignore | 2 + README.md | 7 + .../.vscode/c_cpp_properties.json | 92 + .../community/repos/squinkylabs-plug1/LICENSE | 21 + .../repos/squinkylabs-plug1/LICENSE-dist.txt | 67 + .../repos/squinkylabs-plug1/Makefile | 56 + .../repos/squinkylabs-plug1/README.md | 21 + .../composites/ColoredNoise.h | 309 ++ .../composites/FrequencyShifter.h | 129 + .../composites/TestComposite.h | 65 + .../squinkylabs-plug1/composites/Tremolo.h | 230 ++ .../composites/VocalAnimator.h | 307 ++ .../composites/VocalFilter.h | 212 ++ .../composites/WidgetComposite.h | 22 + .../repos/squinkylabs-plug1/docs/README.md | 31 + .../squinkylabs-plug1/docs/booty-shifter.md | 207 ++ .../squinkylabs-plug1/docs/booty-shifter.png | Bin 0 -> 20917 bytes .../repos/squinkylabs-plug1/docs/colors.png | Bin 0 -> 19561 bytes .../squinkylabs-plug1/docs/composites.md | 67 + .../squinkylabs-plug1/docs/experimental.md | 15 + .../repos/squinkylabs-plug1/docs/formants.png | Bin 0 -> 18698 bytes .../repos/squinkylabs-plug1/docs/growler.jpg | Bin 0 -> 48127 bytes .../repos/squinkylabs-plug1/docs/growler.png | Bin 0 -> 28723 bytes .../docs/installing-binaries.md | 32 + .../squinkylabs-plug1/docs/lfo-waveforms.png | Bin 0 -> 22971 bytes .../squinkylabs-plug1/docs/thread-booster.md | 66 + .../repos/squinkylabs-plug1/docs/unit-test.md | 28 + .../repos/squinkylabs-plug1/dsp/fft/FFT.cpp | 201 ++ .../repos/squinkylabs-plug1/dsp/fft/FFT.h | 39 + .../dsp/fft/FFTCrossFader.cpp | 82 + .../squinkylabs-plug1/dsp/fft/FFTCrossFader.h | 50 + .../squinkylabs-plug1/dsp/fft/FFTData.cpp | 67 + .../repos/squinkylabs-plug1/dsp/fft/FFTData.h | 70 + .../dsp/filters/BiquadFilter.h | 75 + .../dsp/filters/BiquadParams.h | 137 + .../dsp/filters/BiquadState.h | 54 + .../dsp/filters/ButterworthFilterDesigner.cpp | 35 + .../dsp/filters/ButterworthFilterDesigner.h | 14 + .../dsp/filters/FormantTables2.cpp | 283 ++ .../dsp/filters/FormantTables2.h | 29 + .../dsp/filters/HilbertFilterDesigner.cpp | 220 ++ .../dsp/filters/HilbertFilterDesigner.h | 15 + .../dsp/filters/StateVariableFilter.h | 156 + .../dsp/generators/MultiModOsc.h | 128 + .../dsp/generators/SawOscillator.h | 103 + .../dsp/generators/SinOscillator.h | 87 + .../dsp/third-party/falco/DspFilter.cpp | 2815 +++++++++++++++++ .../dsp/third-party/falco/DspFilter.h | 1879 +++++++++++ .../third-party/kiss_fft130/.hg_archival.txt | 4 + .../dsp/third-party/kiss_fft130/.hgignore | 10 + .../dsp/third-party/kiss_fft130/.hgtags | 20 + .../dsp/third-party/kiss_fft130/CHANGELOG | 123 + .../dsp/third-party/kiss_fft130/COPYING | 11 + .../dsp/third-party/kiss_fft130/Makefile | 33 + .../dsp/third-party/kiss_fft130/README | 134 + .../dsp/third-party/kiss_fft130/README.simd | 78 + .../dsp/third-party/kiss_fft130/TIPS | 39 + .../third-party/kiss_fft130/_kiss_fft_guts.h | 164 + .../dsp/third-party/kiss_fft130/kiss_fft.c | 408 +++ .../dsp/third-party/kiss_fft130/kiss_fft.h | 124 + .../dsp/third-party/kiss_fft130/kissfft.hh | 299 ++ .../dsp/third-party/kiss_fft130/test/Makefile | 108 + .../third-party/kiss_fft130/test/benchfftw.c | 94 + .../third-party/kiss_fft130/test/benchkiss.c | 122 + .../third-party/kiss_fft130/test/compfft.py | 92 + .../dsp/third-party/kiss_fft130/test/doit.c | 129 + .../third-party/kiss_fft130/test/fastfir.py | 102 + .../dsp/third-party/kiss_fft130/test/fft.py | 196 ++ .../third-party/kiss_fft130/test/mk_test.py | 117 + .../dsp/third-party/kiss_fft130/test/pstats.c | 49 + .../dsp/third-party/kiss_fft130/test/pstats.h | 7 + .../third-party/kiss_fft130/test/tailscrap.m | 26 + .../third-party/kiss_fft130/test/test_real.c | 172 + .../kiss_fft130/test/test_vs_dft.c | 74 + .../third-party/kiss_fft130/test/testcpp.cc | 73 + .../third-party/kiss_fft130/test/testkiss.py | 162 + .../kiss_fft130/test/twotonetest.c | 94 + .../third-party/kiss_fft130/tools/Makefile | 62 + .../third-party/kiss_fft130/tools/fftutil.c | 208 ++ .../dsp/third-party/kiss_fft130/tools/kfc.c | 116 + .../dsp/third-party/kiss_fft130/tools/kfc.h | 46 + .../kiss_fft130/tools/kiss_fastfir.c | 470 +++ .../kiss_fft130/tools/kiss_fftnd.c | 193 ++ .../kiss_fft130/tools/kiss_fftnd.h | 18 + .../kiss_fft130/tools/kiss_fftndr.c | 118 + .../kiss_fft130/tools/kiss_fftndr.h | 47 + .../third-party/kiss_fft130/tools/kiss_fftr.c | 159 + .../third-party/kiss_fft130/tools/kiss_fftr.h | 46 + .../third-party/kiss_fft130/tools/psdpng.c | 235 ++ .../dsp/utils/AsymRampShaper.h | 80 + .../squinkylabs-plug1/dsp/utils/AudioMath.cpp | 87 + .../squinkylabs-plug1/dsp/utils/AudioMath.h | 92 + .../squinkylabs-plug1/dsp/utils/LookupTable.h | 233 ++ .../dsp/utils/LookupTableFactory.h | 64 + .../dsp/utils/ObjectCache.cpp | 95 + .../squinkylabs-plug1/dsp/utils/ObjectCache.h | 50 + .../squinkylabs-plug1/gfx/ThreadBoost.xd | Bin 0 -> 22521 bytes .../gfx/booty-panel-design.xd | Bin 0 -> 46513 bytes .../gfx/chopper-panel-design.xd | Bin 0 -> 17208 bytes .../squinkylabs-plug1/gfx/formants_panel.xd | Bin 0 -> 34101 bytes .../squinkylabs-plug1/gfx/noun_938401.svg | 4 + .../squinkylabs-plug1/gfx/vocal-anim-panel.xd | Bin 0 -> 89458 bytes .../repos/squinkylabs-plug1/make.objects | 24 + .../repos/squinkylabs-plug1/makefile.msvc | 9 + .../repos/squinkylabs-plug1/pboost/Makefile | 9 + .../repos/squinkylabs-plug1/pboost/pboost.cpp | 260 ++ .../projects/vs_windows/Squinky.sln | 31 + .../projects/vs_windows/Squinky.vcxproj | 226 ++ .../vs_windows/Squinky.vcxproj.filters | 336 ++ .../squinkylabs-plug1/res/blank_panel.svg | 17 + .../squinkylabs-plug1/res/booty_panel.svg | 102 + .../squinkylabs-plug1/res/colors_panel.svg | 45 + .../squinkylabs-plug1/res/cpu_hog_panel.svg | 40 + .../squinkylabs-plug1/res/formants_panel.svg | 44 + .../res/thread_booster_panel.svg | 47 + .../squinkylabs-plug1/res/trem_panel.svg | 46 + .../res/vocal_animator_panel.svg | 88 + .../sqsrc/clock/ClockMult.cpp | 101 + .../squinkylabs-plug1/sqsrc/clock/ClockMult.h | 78 + .../sqsrc/thread/ThreadClient.cpp | 39 + .../sqsrc/thread/ThreadClient.h | 43 + .../sqsrc/thread/ThreadPriority.h | 208 ++ .../sqsrc/thread/ThreadServer.cpp | 60 + .../sqsrc/thread/ThreadServer.h | 54 + .../sqsrc/thread/ThreadSharedState.cpp | 89 + .../sqsrc/thread/ThreadSharedState.h | 113 + .../squinkylabs-plug1/sqsrc/util/Constants.h | 12 + .../sqsrc/util/GateTrigger.h | 65 + .../sqsrc/util/ManagedPool.h | 83 + .../squinkylabs-plug1/sqsrc/util/RingBuffer.h | 79 + .../sqsrc/util/SchmidtTrigger.h | 44 + .../squinkylabs-plug1/src/BootyModule.cpp | 219 ++ .../repos/squinkylabs-plug1/src/CPU_Hog.cpp | 174 + .../src/ColoredNoiseModule.cpp | 249 ++ .../repos/squinkylabs-plug1/src/NoiseDrawer.h | 125 + .../repos/squinkylabs-plug1/src/Squinky.cpp | 24 + .../repos/squinkylabs-plug1/src/Squinky.hpp | 10 + .../squinkylabs-plug1/src/ThreadBoost.cpp | 175 + .../squinkylabs-plug1/src/TremoloModule.cpp | 192 ++ .../src/VocalFilterModule.cpp | 265 ++ .../squinkylabs-plug1/src/VocalModule.cpp | 200 ++ .../community/repos/squinkylabs-plug1/test.mk | 67 + .../squinkylabs-plug1/test/ExtremeTester.h | 126 + .../squinkylabs-plug1/test/MeasureTime.h | 145 + .../repos/squinkylabs-plug1/test/SqTime.h | 51 + .../repos/squinkylabs-plug1/test/TestSignal.h | 89 + .../test/TimeStatsCollector.h | 72 + .../repos/squinkylabs-plug1/test/asserts.h | 57 + .../repos/squinkylabs-plug1/test/main.cpp | 90 + .../repos/squinkylabs-plug1/test/perfTest.cpp | 267 ++ .../squinkylabs-plug1/test/testAudioMath.cpp | 125 + .../squinkylabs-plug1/test/testBiquad.cpp | 208 ++ .../squinkylabs-plug1/test/testClockMult.cpp | 180 ++ .../test/testColoredNoise.cpp | 96 + .../repos/squinkylabs-plug1/test/testFFT.cpp | 292 ++ .../test/testFFTCrossFader.cpp | 313 ++ .../squinkylabs-plug1/test/testFinalLeaks.cpp | 19 + .../test/testFrequencyShifter.cpp | 65 + .../test/testGateTrigger.cpp | 107 + .../squinkylabs-plug1/test/testHilbert.cpp | 79 + .../test/testLookupTable.cpp | 270 ++ .../test/testObjectCache.cpp | 187 ++ .../squinkylabs-plug1/test/testRingBuffer.cpp | 185 ++ .../repos/squinkylabs-plug1/test/testSaw.cpp | 281 ++ .../test/testSinOscillator.cpp | 139 + .../test/testStateVariable.cpp | 125 + .../squinkylabs-plug1/test/testTestSignal.cpp | 120 + .../squinkylabs-plug1/test/testThread.cpp | 234 ++ .../squinkylabs-plug1/test/testTremolo.cpp | 50 + .../test/testVocalAnimator.cpp | 373 +++ plugins/makefile.msvc | 2 + src/plugin.cpp | 2 + vst2_bin/CHANGELOG_VST.txt | 7 + vst2_bin/README_vst2.txt | 15 + vst2_bin/log.txt | 103 +- vst2_bin/plugins/squinkylabs-plug1/LICENSE | 21 + .../squinkylabs-plug1/LICENSE-dist.txt | 67 + vst2_bin/plugins/squinkylabs-plug1/README.md | 21 + .../plugins/squinkylabs-plug1/docs/README.md | 31 + .../squinkylabs-plug1/docs/booty-shifter.md | 207 ++ .../squinkylabs-plug1/docs/booty-shifter.png | Bin 0 -> 20917 bytes .../plugins/squinkylabs-plug1/docs/colors.png | Bin 0 -> 19561 bytes .../squinkylabs-plug1/docs/composites.md | 67 + .../squinkylabs-plug1/docs/experimental.md | 15 + .../squinkylabs-plug1/docs/formants.png | Bin 0 -> 18698 bytes .../squinkylabs-plug1/docs/growler.jpg | Bin 0 -> 48127 bytes .../squinkylabs-plug1/docs/growler.png | Bin 0 -> 28723 bytes .../docs/installing-binaries.md | 32 + .../squinkylabs-plug1/docs/lfo-waveforms.png | Bin 0 -> 22971 bytes .../squinkylabs-plug1/docs/thread-booster.md | 66 + .../squinkylabs-plug1/docs/unit-test.md | 28 + .../squinkylabs-plug1/gfx/ThreadBoost.xd | Bin 0 -> 22521 bytes .../gfx/booty-panel-design.xd | Bin 0 -> 46513 bytes .../gfx/chopper-panel-design.xd | Bin 0 -> 17208 bytes .../squinkylabs-plug1/gfx/formants_panel.xd | Bin 0 -> 34101 bytes .../squinkylabs-plug1/gfx/noun_938401.svg | 4 + .../squinkylabs-plug1/gfx/vocal-anim-panel.xd | Bin 0 -> 89458 bytes .../squinkylabs-plug1/res/blank_panel.svg | 17 + .../squinkylabs-plug1/res/booty_panel.svg | 102 + .../squinkylabs-plug1/res/colors_panel.svg | 45 + .../squinkylabs-plug1/res/cpu_hog_panel.svg | 40 + .../squinkylabs-plug1/res/formants_panel.svg | 44 + .../res/thread_booster_panel.svg | 47 + .../squinkylabs-plug1/res/trem_panel.svg | 46 + .../res/vocal_animator_panel.svg | 88 + vst2_bin/veeseevstrack_instr.dll__ | Bin 24779264 -> 24975872 bytes vst2_common_staticlibs.mk | 1 + 207 files changed, 23523 insertions(+), 44 deletions(-) create mode 100644 plugins/community/repos/squinkylabs-plug1/.vscode/c_cpp_properties.json create mode 100644 plugins/community/repos/squinkylabs-plug1/LICENSE create mode 100644 plugins/community/repos/squinkylabs-plug1/LICENSE-dist.txt create mode 100644 plugins/community/repos/squinkylabs-plug1/Makefile create mode 100644 plugins/community/repos/squinkylabs-plug1/README.md create mode 100644 plugins/community/repos/squinkylabs-plug1/composites/ColoredNoise.h create mode 100644 plugins/community/repos/squinkylabs-plug1/composites/FrequencyShifter.h create mode 100644 plugins/community/repos/squinkylabs-plug1/composites/TestComposite.h create mode 100644 plugins/community/repos/squinkylabs-plug1/composites/Tremolo.h create mode 100644 plugins/community/repos/squinkylabs-plug1/composites/VocalAnimator.h create mode 100644 plugins/community/repos/squinkylabs-plug1/composites/VocalFilter.h create mode 100644 plugins/community/repos/squinkylabs-plug1/composites/WidgetComposite.h create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/README.md create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/booty-shifter.md create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/booty-shifter.png create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/colors.png create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/composites.md create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/experimental.md create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/formants.png create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/growler.jpg create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/growler.png create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/installing-binaries.md create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/lfo-waveforms.png create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/thread-booster.md create mode 100644 plugins/community/repos/squinkylabs-plug1/docs/unit-test.md create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadFilter.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadParams.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadState.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/filters/StateVariableFilter.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/generators/MultiModOsc.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/generators/SawOscillator.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/generators/SinOscillator.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hg_archival.txt create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgignore create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgtags create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/CHANGELOG create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/COPYING create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/Makefile create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README.simd create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/TIPS create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/_kiss_fft_guts.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kissfft.hh create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/Makefile create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/benchfftw.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/benchkiss.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/compfft.py create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/doit.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fastfir.py create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fft.py create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/mk_test.py create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/pstats.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/pstats.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/tailscrap.m create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/test_real.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/test_vs_dft.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/testcpp.cc create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/testkiss.py create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/twotonetest.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/Makefile create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/fftutil.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fastfir.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/psdpng.c create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/utils/AsymRampShaper.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTable.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTableFactory.h create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.h create mode 100644 plugins/community/repos/squinkylabs-plug1/gfx/ThreadBoost.xd create mode 100644 plugins/community/repos/squinkylabs-plug1/gfx/booty-panel-design.xd create mode 100644 plugins/community/repos/squinkylabs-plug1/gfx/chopper-panel-design.xd create mode 100644 plugins/community/repos/squinkylabs-plug1/gfx/formants_panel.xd create mode 100644 plugins/community/repos/squinkylabs-plug1/gfx/noun_938401.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/gfx/vocal-anim-panel.xd create mode 100644 plugins/community/repos/squinkylabs-plug1/make.objects create mode 100644 plugins/community/repos/squinkylabs-plug1/makefile.msvc create mode 100644 plugins/community/repos/squinkylabs-plug1/pboost/Makefile create mode 100644 plugins/community/repos/squinkylabs-plug1/pboost/pboost.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.sln create mode 100644 plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj create mode 100644 plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj.filters create mode 100644 plugins/community/repos/squinkylabs-plug1/res/blank_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/res/booty_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/res/colors_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/res/cpu_hog_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/res/formants_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/res/thread_booster_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/res/trem_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/res/vocal_animator_panel.svg create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadPriority.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/util/Constants.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/util/GateTrigger.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/util/ManagedPool.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/util/RingBuffer.h create mode 100644 plugins/community/repos/squinkylabs-plug1/sqsrc/util/SchmidtTrigger.h create mode 100644 plugins/community/repos/squinkylabs-plug1/src/BootyModule.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/CPU_Hog.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/ColoredNoiseModule.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/NoiseDrawer.h create mode 100644 plugins/community/repos/squinkylabs-plug1/src/Squinky.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/Squinky.hpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/ThreadBoost.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/TremoloModule.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/VocalFilterModule.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/src/VocalModule.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test.mk create mode 100644 plugins/community/repos/squinkylabs-plug1/test/ExtremeTester.h create mode 100644 plugins/community/repos/squinkylabs-plug1/test/MeasureTime.h create mode 100644 plugins/community/repos/squinkylabs-plug1/test/SqTime.h create mode 100644 plugins/community/repos/squinkylabs-plug1/test/TestSignal.h create mode 100644 plugins/community/repos/squinkylabs-plug1/test/TimeStatsCollector.h create mode 100644 plugins/community/repos/squinkylabs-plug1/test/asserts.h create mode 100644 plugins/community/repos/squinkylabs-plug1/test/main.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/perfTest.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testAudioMath.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testBiquad.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testClockMult.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testColoredNoise.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testFFT.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testFFTCrossFader.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testFinalLeaks.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testFrequencyShifter.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testGateTrigger.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testHilbert.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testLookupTable.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testObjectCache.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testRingBuffer.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testSaw.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testSinOscillator.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testStateVariable.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testTestSignal.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testThread.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testTremolo.cpp create mode 100644 plugins/community/repos/squinkylabs-plug1/test/testVocalAnimator.cpp create mode 100644 vst2_bin/plugins/squinkylabs-plug1/LICENSE create mode 100644 vst2_bin/plugins/squinkylabs-plug1/LICENSE-dist.txt create mode 100644 vst2_bin/plugins/squinkylabs-plug1/README.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/README.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/booty-shifter.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/booty-shifter.png create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/colors.png create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/composites.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/experimental.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/formants.png create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/growler.jpg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/growler.png create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/installing-binaries.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/lfo-waveforms.png create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/thread-booster.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/docs/unit-test.md create mode 100644 vst2_bin/plugins/squinkylabs-plug1/gfx/ThreadBoost.xd create mode 100644 vst2_bin/plugins/squinkylabs-plug1/gfx/booty-panel-design.xd create mode 100644 vst2_bin/plugins/squinkylabs-plug1/gfx/chopper-panel-design.xd create mode 100644 vst2_bin/plugins/squinkylabs-plug1/gfx/formants_panel.xd create mode 100644 vst2_bin/plugins/squinkylabs-plug1/gfx/noun_938401.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/gfx/vocal-anim-panel.xd create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/blank_panel.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/booty_panel.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/colors_panel.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/cpu_hog_panel.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/formants_panel.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/thread_booster_panel.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/trem_panel.svg create mode 100644 vst2_bin/plugins/squinkylabs-plug1/res/vocal_animator_panel.svg diff --git a/.gitignore b/.gitignore index 62cb4c9b..073a4152 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,5 @@ *.exp *.lib *.map +*.o + diff --git a/README.md b/README.md index 9b0d2324..3b2f1c01 100644 --- a/README.md +++ b/README.md @@ -233,6 +233,13 @@ The following add-on modules are statically linked with the VST plugin: - SonusModular.Scramblase - SonusModular.Twoff - SonusModular.Yabp + - squinkylabs-plug1.Booty + - squinkylabs-plug1.Vocal + - squinkylabs-plug1.VocalFilter + - squinkylabs-plug1.ColoredNoise + - squinkylabs-plug1.Tremolo + - squinkylabs-plug1.CPU_Hog + - squinkylabs-plug1.ThreadBoost - SubmarineFree.AG106 - SubmarineFree.BB120 - SubmarineFree.FF110 diff --git a/plugins/community/repos/squinkylabs-plug1/.vscode/c_cpp_properties.json b/plugins/community/repos/squinkylabs-plug1/.vscode/c_cpp_properties.json new file mode 100644 index 00000000..85b7d91d --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/.vscode/c_cpp_properties.json @@ -0,0 +1,92 @@ +{ + "configurations": [ + { + "name": "Mac", + "includePath": [ + "/usr/include", + "/usr/local/include", + "${workspaceRoot}" + ], + "defines": [], + "intelliSenseMode": "clang-x64", + "browse": { + "path": [ + "/usr/include", + "/usr/local/include", + "${workspaceRoot}" + ], + "limitSymbolsToIncludedHeaders": true, + "databaseFilename": "" + }, + "macFrameworkPath": [ + "/System/Library/Frameworks", + "/Library/Frameworks" + ], + "cStandard": "c11", + "cppStandard": "c++17" + }, + { + "name": "Linux", + "includePath": [ + "/usr/include", + "/usr/local/include", + "${workspaceRoot}" + ], + "defines": [], + "intelliSenseMode": "clang-x64", + "browse": { + "path": [ + "/usr/include", + "/usr/local/include", + "${workspaceRoot}" + ], + "limitSymbolsToIncludedHeaders": true, + "databaseFilename": "" + }, + "cStandard": "c11", + "cppStandard": "c++17" + }, + { + "name": "Win32", + "includePath": [ + "D:/VisualStudio2017/VC/Tools/MSVC/14.12.25827/include/*", + "D:/VisualStudio2017/VC/Tools/MSVC/14.12.25827/atlmfc/include/*", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/um", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/ucrt", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/shared", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/winrt", + "${workspaceRoot}", + "${workspaceRoot}/dsp/generators", + "${workspaceRoot}/dsp/filters", + "${workspaceRoot}/dsp/utils", + "${workspaceRoot}/src", + "${workspaceRoot}/../../include", + "${workspaceRoot}/dsp/third-party/falco" + ], + "defines": [ + "_EXP", + "_DEBUG", + "UNICODE", + "_UNICODE", + "_VSCODE" + ], + "intelliSenseMode": "msvc-x64", + "browse": { + "path": [ + "D:/VisualStudio2017/VC/Tools/MSVC/14.12.25827/include/*", + "D:/VisualStudio2017/VC/Tools/MSVC/14.12.25827/atlmfc/include/*", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/um", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/ucrt", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/shared", + "C:/Program Files (x86)/Windows Kits/10/Include/10.0.16299.0/winrt", + "${workspaceRoot}" + ], + "limitSymbolsToIncludedHeaders": true, + "databaseFilename": "" + }, + "cStandard": "c11", + "cppStandard": "c++17" + } + ], + "version": 4 +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/LICENSE b/plugins/community/repos/squinkylabs-plug1/LICENSE new file mode 100644 index 00000000..30d73b3d --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 squinkylabs + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/plugins/community/repos/squinkylabs-plug1/LICENSE-dist.txt b/plugins/community/repos/squinkylabs-plug1/LICENSE-dist.txt new file mode 100644 index 00000000..636c5ee5 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/LICENSE-dist.txt @@ -0,0 +1,67 @@ +# kiss FFT + +Copyright (c) 2003-2010 Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +# Vincent Falco + +"A Collection of Useful C++ Classes for Digital Signal Processing" +By Vincent Falco + +Official project location: +http://code.google.com/p/dspfilterscpp/ + +See DspFilter.cpp for notes and bibliography. + +-------------------------------------------------------------------------------- + +License: MIT License (http://www.opensource.org/licenses/mit-license.php) +Copyright (c) 2009 by Vincent Falco + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +# VCV Rack + +Copyright 2016 Andrew Belt + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# VCV Rack Component Library + +Component Library graphics by Grayscale (http://grayscale.info/) +Licensed under CC BY-NC 4.0 (https://creativecommons.org/licenses/by-nc/4.0/) diff --git a/plugins/community/repos/squinkylabs-plug1/Makefile b/plugins/community/repos/squinkylabs-plug1/Makefile new file mode 100644 index 00000000..184d302f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/Makefile @@ -0,0 +1,56 @@ +# Must follow the format in the Naming section of https://vcvrack.com/manual/PluginDevelopmentTutorial.html +SLUG = squinkylabs-plug1 + +# Must follow the format in the Versioning section of https://vcvrack.com/manual/PluginDevelopmentTutorial.html +VERSION = 0.6.5 + +# FLAGS will be passed to both the C and C++ compiler +FLAGS += -I./dsp/generators -I./dsp/utils -I./dsp/filters +FLAGS += -I./dsp/third-party/falco -I./dsp/third-party/kiss_fft130 -I./dsp/third-party/kiss_fft130/tools +FLAGS += -I./sqsrc/thread -I./dsp/fft -I./composites +FLAGS += -I./sqsrc/noise -I./sqsrc/util -I./sqsrc/clock +CFLAGS += +CXXFLAGS += + +# Command line variable to turn on "experimental" modules +ifdef _EXP + FLAGS += -D _EXP +endif +ifdef _CPU_HOG + FLAGS += -D _CPU_HOG +endif +# Macro to use on any target where we don't normally want asserts +ASSERTOFF = -D NDEBUG + +# Make _ASSERT=true will nullify our ASSERTOFF flag, thus allowing them +ifdef _ASSERT + ASSERTOFF = +endif + +# Careful about linking to shared libraries, since you can't assume much about the user's environment and library search path. +# Static libraries are fine. +LDFLAGS += -lpthread + +# Add .cpp and .c files to the build +SOURCES += $(wildcard src/*.cpp) +SOURCES += $(wildcard dsp/**/*.cpp) +SOURCES += $(wildcard dsp/third-party/falco/*.cpp) +SOURCES += dsp/third-party/kiss_fft130/kiss_fft.c +SOURCES += dsp/third-party/kiss_fft130/tools/kiss_fftr.c +SOURCES += $(wildcard sqsrc/**/*.cpp) + +# Add files to the ZIP package when running `make dist` +# The compiled plugin is automatically added. +DISTRIBUTABLES += $(wildcard LICENSE*) res + +# If RACK_DIR is not defined when calling the Makefile, default to two levels above +RACK_DIR ?= ../.. + +# Include the VCV Rack plugin Makefile framework +include $(RACK_DIR)/plugin.mk + +# This turns asserts off for make (plugin), not for test or perf +$(TARGET) : FLAGS += $(ASSERTOFF) + +include test.mk + diff --git a/plugins/community/repos/squinkylabs-plug1/README.md b/plugins/community/repos/squinkylabs-plug1/README.md new file mode 100644 index 00000000..13a7bbcd --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/README.md @@ -0,0 +1,21 @@ +# About SquinkyVCV + +This project is a growing collection of modules for the VCV Rack vritual modular synthesizer. You can find more information about VCV Rack [here](https://vcvrack.com/). + +You can find us on Facebook [here](https://www.facebook.com/SquinkyLabs). + +## Manuals + +Here is the user's manual for our modules: [instruction manual](./docs/booty-shifter.md). It contains descriptions of all of them. + +## Contributing + +Please use our GitHub issues page to report problems, request features, etc. If you don’t already have a GitHub account you will need to create one, as you must be logged in to post to GitHub. + +For general communications, you may use our [Facebook Page](https://www.facebook.com/SquinkyLabs). + +We are not currently accepting pull requests. + +## More information for programmers, builders, and experimenters + +There are "secret" modules, extra code and other things scattered around this repo. Pointers to some of it can be found [in the docs folder](./docs/README.md). diff --git a/plugins/community/repos/squinkylabs-plug1/composites/ColoredNoise.h b/plugins/community/repos/squinkylabs-plug1/composites/ColoredNoise.h new file mode 100644 index 00000000..087daff3 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/composites/ColoredNoise.h @@ -0,0 +1,309 @@ +#pragma once + +#include +#include "assert.h" + +#include "AudioMath.h" +#include "ManagedPool.h" +#include "ThreadClient.h" +#include "ThreadServer.h" +#include "ThreadSharedState.h" + +#include "FFTData.h" +#include "FFT.h" +#include "FFTCrossFader.h" + +class NoiseMessage; + +const int crossfadeSamples = 4 * 1024; +template + +/** + * Implementation of the "Colors" noises generator + */ +class ColoredNoise : public TBase +{ +public: + ColoredNoise(struct Module * module) : TBase(module), crossFader(crossfadeSamples) + { + commonConstruct(); + } + ColoredNoise() : TBase(), crossFader(crossfadeSamples) + { + commonConstruct(); + } + ~ColoredNoise() + { + thread.reset(); // kill the threads before deleting other things + } + + void setSampleRate(float rate) + { + } + + // must be called after setSampleRate + void init() + { + cv_scaler = AudioMath::makeLinearScaler(-8, 8); + } + + // Define all the enums here. This will let the tests and the widget access them. + enum ParamIds + { + SLOPE_PARAM, + SLOPE_TRIM, + NUM_PARAMS + }; + + enum InputIds + { + SLOPE_CV, + NUM_INPUTS + }; + + enum OutputIds + { + AUDIO_OUTPUT, + NUM_OUTPUTS + }; + + enum LightIds + { + NUM_LIGHTS + }; + + /** + * Main processing entry point. Called every sample + */ + void step(); + + float getSlope() const; + + int _msgCount() const; // just for debugging + + typedef float T; // use floats for all signals +private: + + AudioMath::ScaleFun cv_scaler; + bool isRequestPending = false; + + /** + * crossFader generates the audio, but we must + * feed it with NoiseMessage data from the ThreadServer + */ + FFTCrossFader crossFader; + + // just for debugging + int messageCount = 0; + + std::unique_ptr thread; + + /** + * Messages moved between thread, messagePool, and crossFader + * as new noise slopes are requested in response to CV/knob changes. + */ + ManagedPool messagePool; + + void serviceFFTServer(); + void serviceAudio(); + void serviceInputs(); + void commonConstruct(); +}; + +class NoiseMessage : public ThreadMessage +{ +public: + + NoiseMessage() : ThreadMessage(Type::NOISE), + dataBuffer(new FFTDataReal(defaultNumBins)) + { + } + + NoiseMessage(int numBins) : ThreadMessage(Type::NOISE), + dataBuffer(new FFTDataReal(numBins)) + { + } + ~NoiseMessage() + { + } + const int defaultNumBins = 64 * 1024; + + ColoredNoiseSpec noiseSpec; + + /** Server is going to fill this buffer up with time-domain data + */ + std::unique_ptr dataBuffer; +}; + +class NoiseServer : public ThreadServer +{ +public: + NoiseServer(std::shared_ptr state) : ThreadServer(state) + { + } +protected: + /** + * This is called on the server thread, not the audio thread. + * We have plenty of time to do some heavy lifting here. + */ + virtual void handleMessage(ThreadMessage* msg) override + { + if (msg->type != ThreadMessage::Type::NOISE) { + assert(false); + return; + } + + // Unpack the parameters, convert to frequency domain "noise" recipe + NoiseMessage* noiseMessage = static_cast(msg); + reallocSpectrum(noiseMessage); + FFT::makeNoiseSpectrum(noiseSpectrum.get(), + noiseMessage->noiseSpec); + +// Now inverse FFT to time domain noise in client's buffer + FFT::inverse(noiseMessage->dataBuffer.get(), *noiseSpectrum.get()); + FFT::normalize(noiseMessage->dataBuffer.get()); + sendMessageToClient(noiseMessage); + } +private: + std::unique_ptr noiseSpectrum; + + // may do nothing, may create the first buffer, + // may delete the old buffer and make a new one. + void reallocSpectrum(const NoiseMessage* msg) + { + if (noiseSpectrum && ((int) noiseSpectrum->size() == msg->dataBuffer->size())) { + return; + } + + noiseSpectrum.reset(new FFTDataCpx(msg->dataBuffer->size())); + } +}; + +template +float ColoredNoise::getSlope() const +{ + const NoiseMessage* curMsg = crossFader.playingMessage(); + return curMsg ? curMsg->noiseSpec.slope : 0; +} + +template +void ColoredNoise::commonConstruct() +{ + crossFader.enableMakeupGain(true); + std::shared_ptr threadState = std::make_shared(); + std::unique_ptr server(new NoiseServer(threadState)); + + std::unique_ptr client(new ThreadClient(threadState, std::move(server))); + this->thread = std::move(client); +} + +template +int ColoredNoise::_msgCount() const +{ + return messageCount; +} + + +template +void ColoredNoise::serviceFFTServer() +{ + // see if we need to request first frame of sample data + // first request will be white noise. Is that ok? + if (!isRequestPending && crossFader.empty()) { + assert(!messagePool.empty()); + NoiseMessage* msg = messagePool.pop(); + + bool sent = thread->sendMessage(msg); + if (sent) { + isRequestPending = true; + } else { + messagePool.push(msg); + } + } + + // see if any messages came back for us + ThreadMessage* newMsg = thread->getMessage(); + if (newMsg) { + ++messageCount; + assert(newMsg->type == ThreadMessage::Type::NOISE); + NoiseMessage* noise = static_cast(newMsg); + + isRequestPending = false; + + // put it in the cross fader for playback + // give the last one back + NoiseMessage* oldMsg = crossFader.acceptData(noise); + if (oldMsg) { + messagePool.push(oldMsg); + } + } +} + +template +void ColoredNoise::serviceAudio() +{ + float output = 0; + NoiseMessage* oldMessage = crossFader.step(&output); + if (oldMessage) { + // One frame may be done fading - we can take it back. + messagePool.push(oldMessage); + } + + TBase::outputs[AUDIO_OUTPUT].value = output; +} + + +template +void ColoredNoise::serviceInputs() +{ + if (isRequestPending) { + return; // can't do anything until server is free. + } + if (crossFader.empty()) { + return; // if we don't have data, we will be asking anyway + } + if (messagePool.empty()) { + return; // all our buffers are in use + } + + T combinedSlope = cv_scaler( + TBase::inputs[SLOPE_CV].value, + TBase::params[SLOPE_PARAM].value, + TBase::params[SLOPE_TRIM].value); + + // get slope input to one decimal place + int i = int(combinedSlope * 10); + combinedSlope = i / 10.f; + ColoredNoiseSpec sp; + sp.slope = combinedSlope; + sp.highFreqCorner = 6000; + const NoiseMessage* playingData = crossFader.playingMessage(); + if (!playingData || !(sp != playingData->noiseSpec)) { + // If we aren't playing yet, or no change in slope, + // the don't do anything + return; + } + + assert(!messagePool.empty()); + NoiseMessage* msg = messagePool.pop(); + assert(msg); + if (!msg) { + return; + } + msg->noiseSpec = sp; + // TODO: put this logic in one place + bool sent = thread->sendMessage(msg); + if (sent) { + isRequestPending = true; + } else { + messagePool.push(msg); + } +} + +template +void ColoredNoise::step() +{ + serviceFFTServer(); + serviceAudio(); + serviceInputs(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/composites/FrequencyShifter.h b/plugins/community/repos/squinkylabs-plug1/composites/FrequencyShifter.h new file mode 100644 index 00000000..67456eb1 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/composites/FrequencyShifter.h @@ -0,0 +1,129 @@ +#pragma once + +#include "LookupTable.h" +#include "SinOscillator.h" +#include "BiquadFilter.h" +#include "BiquadParams.h" +#include "BiquadState.h" +#include "HilbertFilterDesigner.h" + +/** + * Complete Frequency Shifter composite + * + * If TBase is WidgetComposite, this class is used as the implementation part of the Booty Shifter module. + * If TBase is TestComposite, this class may stand alone for unit tests. + */ +template +class FrequencyShifter : public TBase +{ +public: + FrequencyShifter(struct Module * module) : TBase(module) + { + } + FrequencyShifter() : TBase() + { + } + void setSampleRate(float rate) + { + reciprocalSampleRate = 1 / rate; + HilbertFilterDesigner::design(rate, hilbertFilterParamsSin, hilbertFilterParamsCos); + } + + // must be called after setSampleRate + void init() + { + SinOscillator::setFrequency(oscParams, T(.01)); + exponential2 = ObjectCache::getExp2(); // Get a shared copy of the 2**x lookup. + // This will enable exp mode to track at + // 1V/ octave. + } + + // Define all the enums here. This will let the tests and the widget access them. + enum ParamIds + { + PITCH_PARAM, // the big pitch knob + NUM_PARAMS + }; + + enum InputIds + { + AUDIO_INPUT, + CV_INPUT, + NUM_INPUTS + }; + + enum OutputIds + { + SIN_OUTPUT, + COS_OUTPUT, + NUM_OUTPUTS + }; + + enum LightIds + { + NUM_LIGHTS + }; + + /** + * Main processing entry point. Called every sample + */ + void step(); + + typedef float T; // use floats for all signals + T freqRange = 5; // the freq range switch +private: + SinOscillatorParams oscParams; + SinOscillatorState oscState; + BiquadParams hilbertFilterParamsSin; + BiquadParams hilbertFilterParamsCos; + BiquadState hilbertFilterStateSin; + BiquadState hilbertFilterStateCos; + + std::shared_ptr> exponential2; + + float reciprocalSampleRate; +}; + +template +inline void FrequencyShifter::step() +{ + assert(exponential2->isValid()); + + // Add the knob and the CV value. + T freqHz; + T cvTotal = TBase::params[PITCH_PARAM].value + TBase::inputs[CV_INPUT].value; + if (cvTotal > 5) { + cvTotal = 5; + } + if (cvTotal < -5) { + cvTotal = -5; + } + if (freqRange > .2) { + cvTotal *= freqRange; + cvTotal *= T(1. / 5.); + freqHz = cvTotal; + } else { + cvTotal += 7; // shift up to GE 2 (min value for out 1v/oct lookup) + freqHz = LookupTable::lookup(*exponential2, cvTotal); + freqHz /= 2; // down to 2..2k range that we want. + } + + SinOscillator::setFrequency(oscParams, freqHz * reciprocalSampleRate); + + // Generate the quadrature sin oscillators. + T x, y; + SinOscillator::runQuadrature(x, y, oscState, oscParams); + + // Filter the input through th quadrature filter + const T input = TBase::inputs[AUDIO_INPUT].value; + const T hilbertSin = BiquadFilter::run(input, hilbertFilterStateSin, hilbertFilterParamsSin); + const T hilbertCos = BiquadFilter::run(input, hilbertFilterStateCos, hilbertFilterParamsCos); + + // Cross modulate the two sections. + x *= hilbertSin; + y *= hilbertCos; + + // And combine for final SSB output. + TBase::outputs[SIN_OUTPUT].value = x + y; + TBase::outputs[COS_OUTPUT].value = x - y; +} diff --git a/plugins/community/repos/squinkylabs-plug1/composites/TestComposite.h b/plugins/community/repos/squinkylabs-plug1/composites/TestComposite.h new file mode 100644 index 00000000..3f68162a --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/composites/TestComposite.h @@ -0,0 +1,65 @@ +#pragma once + +#include + +/** +* Base class for composites embeddable in a unit test +* Isolates test from VCV. +*/ + +class TestComposite +{ +public: + TestComposite() : + inputs(20), + outputs(20), + params(20), + lights(20) + { + + } + struct Param + { + float value = 0.0; + }; + + struct Light + { + /** The square of the brightness value */ + float value = 0.0; + float getBrightness(); + void setBrightness(float brightness) + { + value = (brightness > 0.f) ? brightness * brightness : 0.f; + } + void setBrightnessSmooth(float brightness); + }; + + struct Input + { + /** Voltage of the port, zero if not plugged in. Read-only by Module */ + float value = 0.0; + /** Whether a wire is plugged in */ + bool active = false; + Light plugLights[2]; + /** Returns the value if a wire is plugged in, otherwise returns the given default value */ + float normalize(float normalValue) + { + return active ? value : normalValue; + } + }; + + struct Output + { + /** Voltage of the port. Write-only by Module */ + float value = 0.0; + /** Whether a wire is plugged in */ + bool active = false; + Light plugLights[2]; + }; + + std::vector inputs; + std::vector outputs; + std::vector params; + std::vector lights; +}; diff --git a/plugins/community/repos/squinkylabs-plug1/composites/Tremolo.h b/plugins/community/repos/squinkylabs-plug1/composites/Tremolo.h new file mode 100644 index 00000000..57fd03af --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/composites/Tremolo.h @@ -0,0 +1,230 @@ + +#pragma once + +#include + +#include "ClockMult.h" +#include "ObjectCache.h" +#include "AsymRampShaper.h" +#include "GateTrigger.h" + +/** + */ +template +class Tremolo : public TBase +{ +public: + Tremolo(struct Module * module) : TBase(module) + { + } + Tremolo() : TBase() + { + } + void setSampleRate(float rate) + { + reciprocalSampleRate = 1 / rate; + } + + // must be called after setSampleRate + void init(); + + enum ParamIds + { + LFO_RATE_PARAM, + LFO_SHAPE_PARAM, + LFO_SKEW_PARAM, + LFO_PHASE_PARAM, + MOD_DEPTH_PARAM, + CLOCK_MULT_PARAM, + + LFO_SHAPE_TRIM_PARAM, + LFO_SKEW_TRIM_PARAM, + LFO_PHASE_TRIM_PARAM, + MOD_DEPTH_TRIM_PARAM, + NUM_PARAMS + }; + + enum InputIds + { + AUDIO_INPUT, + CLOCK_INPUT, + LFO_SHAPE_INPUT, + LFO_SKEW_INPUT, + LFO_PHASE_INPUT, + MOD_DEPTH_INPUT, + NUM_INPUTS + }; + + enum OutputIds + { + AUDIO_OUTPUT, + SAW_OUTPUT, + LFO_OUTPUT, + NUM_OUTPUTS + }; + + enum LightIds + { + NUM_LIGHTS + }; + + /** + * Main processing entry point. Called every sample + */ + void step(); + +private: + + ClockMult clock; + std::shared_ptr> tanhLookup; + float reciprocalSampleRate = 0; + + AsymRampShaperParams rampShaper; + std::shared_ptr> exp2 = ObjectCache::getExp2(); + + // make some bootstrap scalers + AudioMath::ScaleFun scale_rate; + AudioMath::ScaleFun scale_skew; + AudioMath::ScaleFun scale_shape; + AudioMath::ScaleFun scale_depth; + AudioMath::ScaleFun scale_phase; + + GateTrigger gateTrigger; +}; + + + +template +inline void Tremolo::init() +{ + tanhLookup = ObjectCache::getTanh5(); + clock.setMultiplier(0); + + scale_rate = AudioMath::makeLinearScaler(4.f, 9.f); // log domain, 16 range + scale_skew = AudioMath::makeLinearScaler(-.99f, .99f); + scale_shape = AudioMath::makeLinearScaler(0.f, 1.f); + scale_depth = AudioMath::makeLinearScaler(0.f, 1.f); + scale_phase = AudioMath::makeLinearScaler(-1.f, 1.f); +} + +template +inline void Tremolo::step() +{ + gateTrigger.go(TBase::inputs[CLOCK_INPUT].value); + if (gateTrigger.trigger()) { + clock.refClock(); + } + + int clockMul = (int) round(TBase::params[CLOCK_MULT_PARAM].value); + + // UI is shifted + clockMul++; + if (clockMul > 4) { + clockMul = 0; + } + + + + clock.setMultiplier(clockMul); + + + const float shape = scale_shape( + TBase::inputs[LFO_SHAPE_INPUT].value, + TBase::params[LFO_SHAPE_PARAM].value, + TBase::params[LFO_SHAPE_TRIM_PARAM].value); + + const float skew = scale_skew( + TBase::inputs[LFO_SKEW_INPUT].value, + TBase::params[LFO_SKEW_PARAM].value, + TBase::params[LFO_SKEW_TRIM_PARAM].value); + + const float phase = scale_phase( + TBase::inputs[LFO_PHASE_INPUT].value, + TBase::params[LFO_PHASE_PARAM].value, + TBase::params[LFO_PHASE_TRIM_PARAM].value); + + const float modDepth = scale_depth( + TBase::inputs[MOD_DEPTH_INPUT].value, + TBase::params[MOD_DEPTH_PARAM].value, + TBase::params[MOD_DEPTH_TRIM_PARAM].value); + + if (clockMul == 0) // only calc rate for internal + { + const float logRate = scale_rate( + 0, + TBase::params[LFO_RATE_PARAM].value, + 1); + + float rate = LookupTable::lookup(*exp2, logRate); + float scaledRate = rate * .06f; + clock.setFreeRunFreq(scaledRate * reciprocalSampleRate); + } + + + + // For now, call setup every sample. will eat a lot of cpu + AsymRampShaper::setup(rampShaper, skew, phase); + + // ------------ now generate the lfo waveform + clock.sampleClock(); + float mod = clock.getSaw(); + mod = AsymRampShaper::proc_1(rampShaper, mod); + mod -= 0.5f; + // now we have a skewed saw -.5 to .5 + TBase::outputs[SAW_OUTPUT].value = mod; + + // TODO: don't scale twice - just get it right the first tme + const float shapeMul = std::max(.25f, 10 * shape); + mod *= shapeMul; + + mod = LookupTable::lookup(*tanhLookup.get(), mod); + TBase::outputs[LFO_OUTPUT].value = mod; + + const float gain = modDepth / + LookupTable::lookup(*tanhLookup.get(), (shapeMul / 2)); + const float finalMod = gain * mod + 1; // TODO: this offset by 1 is pretty good, but we + // could add an offset control to make it really "chop" off + + TBase::outputs[AUDIO_OUTPUT].value = TBase::inputs[AUDIO_INPUT].value * finalMod; +} + +/* + + +old plug proc loop. + +// Step 1: generate a saw +// range is 0..1 +SawOsc::gen_v(*sawState, *sawParams, tempBuffer, sampleFrames); + +// step 2: apply skew and phase shift +// range still 0..1 +AsymRampShaper::proc_v(*shaperParams, tempBuffer, tempBuffer, sampleFrames); + +// step 3: shift down to be centered at zero, +// max excursion +-5 at shape "most square" +// min is +/- .25 TODO: put the .25 into the control range itself + +// range = +/- (5 * shape) +// +f_t shapeMul = std::max(.25, 10 * controlValues.lfoShape); +VecBasic::add_mul_c_imp(tempBuffer, sampleFrames, shapeMul, -.5f); + +// now tanh, +// output contered around zero, +// max is tanh(.25) to tanh(5), depending on shape value +// rang = +/- tanh(5 * shape) +LookupUniform::lookup_clip_v(*tanhParams, tempBuffer, tempBuffer, sampleFrames); + + // so: makeup gain of 1/tanh(shapeMul) will get us to +1/-1 + // then multiply by depth to get contered around zero with correct depth + // the add one to get back to trem range! + f_t gain = controlValues.modDepth / tanh(shapeMul/2); + VecBasic::mul_add_c_imp(tempBuffer, sampleFrames, gain, 1); +// scale then add constant + // input = a * input + b + static void mul_add_c_imp(f_t * inout, int size, f_t a, f_t b) { + assert_size(size); + + // now range = +/- tanh(5*shape) * depth / tanh(10 * shape) +*/ diff --git a/plugins/community/repos/squinkylabs-plug1/composites/VocalAnimator.h b/plugins/community/repos/squinkylabs-plug1/composites/VocalAnimator.h new file mode 100644 index 00000000..1a18c209 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/composites/VocalAnimator.h @@ -0,0 +1,307 @@ +#pragma once +#include + +#include "AudioMath.h" +#include "LookupTable.h" +#include "LookupTableFactory.h" +#include "MultiModOsc.h" +#include "ObjectCache.h" +#include "StateVariableFilter.h" + +#define _ANORM + +/** + * Version 2 - make the math sane. + */ +template +class VocalAnimator : public TBase +{ +public: + typedef float T; + static const int numTriangle = 4; + static const int numModOutputs = 3; + static const int numFilters = 4; + + VocalAnimator(struct Module * module) : TBase(module) + { + } + VocalAnimator() : TBase() + { + } + + void setSampleRate(float rate) + { + reciprocalSampleRate = 1 / rate; + modulatorParams.setRateAndSpread(.5, .5, 0, reciprocalSampleRate); + } + + enum ParamIds + { + LFO_RATE_PARAM, + FILTER_Q_PARAM, + FILTER_FC_PARAM, + FILTER_MOD_DEPTH_PARAM, + LFO_RATE_TRIM_PARAM, + FILTER_Q_TRIM_PARAM, + FILTER_FC_TRIM_PARAM, + FILTER_MOD_DEPTH_TRIM_PARAM, + BASS_EXP_PARAM, + + // tracking: + // 0 = all 1v/octave, mod scaled, no on top + // 1 = mod and cv scaled + // 2 = 1, + top filter gets some mod + TRACK_EXP_PARAM, + + // LFO mixing options + // 0 = classic + // 1 = option + // 2 = lf sub + LFO_MIX_PARAM, + + NUM_PARAMS + }; + + enum InputIds + { + AUDIO_INPUT, + LFO_RATE_CV_INPUT, + FILTER_Q_CV_INPUT, + FILTER_FC_CV_INPUT, + FILTER_MOD_DEPTH_CV_INPUT, + NUM_INPUTS + }; + + enum OutputIds + { + AUDIO_OUTPUT, + LFO0_OUTPUT, + LFO1_OUTPUT, + LFO2_OUTPUT, + NUM_OUTPUTS + }; + + enum LightIds + { + LFO0_LIGHT, + LFO1_LIGHT, + LFO2_LIGHT, + BASS_LIGHT, + NUM_LIGHTS + }; + + void init(); + void step(); + T modulatorOutput[numModOutputs]; + + // The frequency inputs to the filters, exposed for testing. + + T filterFrequencyLog[numFilters]; + + const T nominalFilterCenterHz[numFilters] = {522, 1340, 2570, 3700}; + const T nominalFilterCenterLog2[numFilters] = { + std::log2(T(522)), + std::log2(T(1340)), + std::log2(T(2570)), + std::log2(T(3700)) + }; + // 1, .937 .3125 + const T nominalModSensitivity[numFilters] = {T(1), T(.937), T(.3125), 0}; + + // Following are for unit tests. + T normalizedFilterFreq[numFilters]; + bool jamModForTest = false; + T modValueForTest = 0; + + float reciprocalSampleRate; + + using osc = MultiModOsc; + typename osc::State modulatorState; + typename osc::Params modulatorParams; + + StateVariableFilterState filterStates[numFilters]; + StateVariableFilterParams filterParams[numFilters]; + + std::shared_ptr> expLookup; + + // We need a bunch of scalers to convert knob, CV, trim into the voltage + // range each parameter needs. + AudioMath::ScaleFun scale0_1; + AudioMath::ScaleFun scalem2_2; + AudioMath::ScaleFun scaleQ; + AudioMath::ScaleFun scalen5_5; +}; + +template +inline void VocalAnimator::init() +{ + for (int i = 0; i < numFilters; ++i) { + filterParams[i].setMode(StateVariableFilterParams::Mode::BandPass); + filterParams[i].setQ(15); // or should it be 5? + + filterParams[i].setFreq(nominalFilterCenterHz[i] * reciprocalSampleRate); + filterFrequencyLog[i] = nominalFilterCenterLog2[i]; + + normalizedFilterFreq[i] = nominalFilterCenterHz[i] * reciprocalSampleRate; + } + scale0_1 = AudioMath::makeBipolarAudioScaler(0, 1); // full CV range -> 0..1 + scalem2_2 = AudioMath::makeBipolarAudioScaler(-2, 2); // full CV range -> -2..2 + scaleQ = AudioMath::makeBipolarAudioScaler(.71f, 21); + scalen5_5 = AudioMath::makeBipolarAudioScaler(-5, 5); + + // make table of 2 ** x + expLookup = ObjectCache::getExp2(); +} + +template +inline void VocalAnimator::step() +{ + const bool bass = TBase::params[BASS_EXP_PARAM].value > .5; + const auto mode = bass ? + StateVariableFilterParams::Mode::LowPass : + StateVariableFilterParams::Mode::BandPass; + + for (int i = 0; i < numFilters +1 - 1; ++i) { + filterParams[i].setMode(mode); + } + + // Run the modulators, hold onto their output. + // Raw Modulator outputs put in modulatorOutputs[]. + osc::run(modulatorOutput, modulatorState, modulatorParams); + + static const OutputIds LEDOutputs[] = { + LFO0_OUTPUT, + LFO1_OUTPUT, + LFO2_OUTPUT, + }; + // Light up the LEDs with the unscaled Modulator outputs. + for (int i = LFO0_LIGHT; i <= LFO2_LIGHT; ++i) { + TBase::outputs[LEDOutputs[i]].value = modulatorOutput[i]; + TBase::lights[i].value = (modulatorOutput[i] ) * .3f; + TBase::outputs[LEDOutputs[i]].value = modulatorOutput[i]; + } + + // Normalize all the parameters out here + const T qFinal = scaleQ( + TBase::inputs[FILTER_Q_CV_INPUT].value, + TBase::params[FILTER_Q_PARAM].value, + TBase::params[FILTER_Q_TRIM_PARAM].value); + + + const T fc = scalen5_5( + TBase::inputs[FILTER_FC_CV_INPUT].value, + TBase::params[FILTER_FC_PARAM].value, + TBase::params[FILTER_FC_TRIM_PARAM].value); + + + // put together a mod depth parameter from all the inputs + // range is 0..1 + + // cv, knob, trim + const T baseModDepth = scale0_1( + TBase::inputs[FILTER_MOD_DEPTH_CV_INPUT].value, + TBase::params[FILTER_MOD_DEPTH_PARAM].value, + TBase::params[FILTER_MOD_DEPTH_TRIM_PARAM].value); + + // tracking: + // 0 = all 1v/octave, mod scaled, no on top + // 1 = mod and cv scaled + // 2 = 1, + top filter gets some mod + int cvScaleMode = 0; + const float cvScaleParam = TBase::params[TRACK_EXP_PARAM].value; + if (cvScaleParam < .5) { + cvScaleMode = 0; + } else if (cvScaleParam < 1.5) { + cvScaleMode = 1; + } else { + cvScaleMode = 2; + assert(cvScaleParam < 2.5); + } + + // Just do the Q division once, in the outer loop + const T filterNormalizedBandwidth = T(1) / qFinal; + const T input = TBase::inputs[AUDIO_INPUT].value; + T filterMix = 0; // Sum the folder outputs here + + for (int i = 0; i < numFilters; ++i) { + T logFreq = nominalFilterCenterLog2[i]; + + switch (cvScaleMode) { + case 1: + // In this mode (1) CV comes straight through at 1V/8 + // Even on the top (fixed) filter + logFreq += fc; // add without attenuation for 1V/octave + break; + case 0: + // In mode (0) CV gets scaled per filter, as in the original design. + // Since nominalModSensitivity[3] == 0, top doesn't track + logFreq += fc * nominalModSensitivity[i]; + break; + case 2: + if (fc < 0) { + // Normal scaling for Fc less than nominal + logFreq += fc * nominalModSensitivity[i]; + } else { + // above nominal, they all track the high one (so they don't cross) + logFreq += fc * nominalModSensitivity[2]; + } + + break; + default: + assert(false); + } + + // First three filters always modulated, + // (wanted to try modulating 4, but don't have an LFO (yet + const bool modulateThisFilter = (i < 3); + if (modulateThisFilter) { + logFreq += modulatorOutput[i] * + baseModDepth * + nominalModSensitivity[i]; + } + + logFreq += ((i < 3) ? modulatorOutput[i] : 0) * + baseModDepth * + nominalModSensitivity[i]; + + filterFrequencyLog[i] = logFreq; + + // tell lookup not to assert - we know we can go slightly out of range. + T normFreq = LookupTable::lookup(*expLookup, logFreq, true) * reciprocalSampleRate; + normFreq = std::min(normFreq, T(.2)); + + normalizedFilterFreq[i] = normFreq; + filterParams[i].setFreq(normFreq); + + filterParams[i].setNormalizedBandwidth(filterNormalizedBandwidth); + filterMix += StateVariableFilter::run(input, filterStates[i], filterParams[i]); + } +#ifdef _ANORM + filterMix *= filterNormalizedBandwidth * 2; +#else + filterMix *= T(.3); // attenuate to avoid clip +#endif + TBase::outputs[AUDIO_OUTPUT].value = filterMix; + + + int matrixMode; + float mmParam = TBase::params[LFO_MIX_PARAM].value; + if (mmParam < .5) { + matrixMode = 0; + } else if (mmParam < 1.5) { + matrixMode = 1; + } else { + matrixMode = 2; + assert(mmParam < 2.5); + } + + const T spread = T(1.0); + modulatorParams.setRateAndSpread( + scalem2_2( + TBase::inputs[LFO_RATE_CV_INPUT].value, + TBase::params[LFO_RATE_PARAM].value, + TBase::params[LFO_RATE_TRIM_PARAM].value), + spread, + matrixMode, + reciprocalSampleRate); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/composites/VocalFilter.h b/plugins/community/repos/squinkylabs-plug1/composites/VocalFilter.h new file mode 100644 index 00000000..4e0b1d11 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/composites/VocalFilter.h @@ -0,0 +1,212 @@ +#pragma once +#include +#include + +#include "AudioMath.h" +#include "FormantTables2.h" +#include "LookupTable.h" +#include "LookupTableFactory.h" +#include "ObjectCache.h" +#include "StateVariableFilter.h" + +/** + * + */ +template +class VocalFilter : public TBase +{ +public: + typedef float T; + static const int numFilters = FormantTables2::numFormantBands; + + VocalFilter(struct Module * module) : TBase(module) + { + } + VocalFilter() : TBase() + { + } + + void setSampleRate(float rate) + { + reciprocalSampleRate = 1 / rate; + } + + enum ParamIds + { + FILTER_Q_PARAM, + FILTER_Q_TRIM_PARAM, + FILTER_FC_PARAM, + FILTER_FC_TRIM_PARAM, + FILTER_VOWEL_PARAM, + FILTER_VOWEL_TRIM_PARAM, + FILTER_MODEL_SELECT_PARAM, + FILTER_BRIGHTNESS_PARAM, + FILTER_BRIGHTNESS_TRIM_PARAM, + NUM_PARAMS + }; + + enum InputIds + { + AUDIO_INPUT, + FILTER_Q_CV_INPUT, + FILTER_FC_CV_INPUT, + FILTER_VOWEL_CV_INPUT, + FILTER_BRIGHTNESS_INPUT, + NUM_INPUTS + }; + + enum OutputIds + { + AUDIO_OUTPUT, + NUM_OUTPUTS + }; + + enum LightIds + { + LED_A, + LED_E, + LED_I, + LED_O, + LED_U, + NUM_LIGHTS + }; + + void init(); + void step(); + + float reciprocalSampleRate; + + // The frequency inputs to the filters, exposed for testing. + + T filterFrequencyLog[numFilters]; + + StateVariableFilterState filterStates[numFilters]; + StateVariableFilterParams filterParams[numFilters]; + + FormantTables2 formantTables; + std::shared_ptr> expLookup; + std::shared_ptr> db2GainLookup; + + AudioMath::ScaleFun scaleCV_to_formant; + AudioMath::ScaleFun scaleQ; + AudioMath::ScaleFun scaleFc; + AudioMath::ScaleFun scaleBrightness; +}; + +template +inline void VocalFilter::init() +{ + for (int i = 0; i < numFilters; ++i) { + filterParams[i].setMode(StateVariableFilterParams::Mode::BandPass); + filterParams[i].setQ(15); // or should it be 5? + + filterParams[i].setFreq(T(.1)); + } + scaleCV_to_formant = AudioMath::makeLinearScaler(0, formantTables.numVowels - 1); + scaleFc = AudioMath::makeLinearScaler(-2, 2); + scaleBrightness = AudioMath::makeLinearScaler(0, 1); + + AudioMath::ScaleFun rawQKnob = AudioMath::makeLinearScaler(-1, 1); + scaleQ = [rawQKnob](T cv, T param, T trim) { + T temp = rawQKnob(cv, param, trim); + return (temp >= 0) ? + 1 - 3 * temp / 4 : + 1 - temp; + }; + + // get reference to table of 2 ** x + expLookup = ObjectCache::getExp2(); + db2GainLookup = ObjectCache::getDb2Gain(); +} + +template +inline void VocalFilter::step() +{ + int model = 0; + const T switchVal = TBase::params[FILTER_MODEL_SELECT_PARAM].value; + if (switchVal < .5) { + model = 0; + assert(switchVal > -.5); + } else if (switchVal < 1.5) { + model = 1; + } else if (switchVal < 2.5) { + model = 2; + } else if (switchVal < 3.5) { + model = 3; + } else { + model = 4; + assert(switchVal < 4.5); + } + + const T fVowel = scaleCV_to_formant( + TBase::inputs[FILTER_VOWEL_CV_INPUT].value, + TBase::params[FILTER_VOWEL_PARAM].value, + TBase::params[FILTER_VOWEL_TRIM_PARAM].value); + + + int iVowel = (int) std::floor(fVowel); + + assert(iVowel >= 0); + if (iVowel >= formantTables.numVowels) { + printf("formant overflow %f\n", fVowel); + iVowel = formantTables.numVowels - 1; + } + +#if 1 + for (int i = LED_A; i <= LED_U; ++i) { + if (i == iVowel) { + TBase::lights[i].value = ((i + 1) - fVowel) * 1; + TBase::lights[i+1].value = (fVowel - i) * 1; + } else if (i != (iVowel + 1)) { + TBase::lights[i].value = 0; + } + } +#else + for (int i = LED_A; i <= LED_U; ++i) { + TBase::lights[i].value = (i == iVowel) ? T(10) : T(0); + } +#endif + + const T bwMultiplier = scaleQ( + TBase::inputs[FILTER_Q_CV_INPUT].value, + TBase::params[FILTER_Q_PARAM].value, + TBase::params[FILTER_Q_TRIM_PARAM].value); + // printf("bwMultiplier = %f\n", bwMultiplier); + + + const T fPara = scaleFc( + TBase::inputs[FILTER_FC_CV_INPUT].value, + TBase::params[FILTER_FC_PARAM].value, + TBase::params[FILTER_FC_TRIM_PARAM].value); + // fNow -5..5, log + + const T brightness = scaleBrightness( + TBase::inputs[FILTER_BRIGHTNESS_INPUT].value, + TBase::params[FILTER_BRIGHTNESS_PARAM].value, + TBase::params[FILTER_BRIGHTNESS_TRIM_PARAM].value); + + T input = TBase::inputs[AUDIO_INPUT].value; + T filterMix = 0; + for (int i = 0; i < numFilters; ++i) { + const T fcLog = formantTables.getLogFrequency(model, i, fVowel); + const T normalizedBw = bwMultiplier * formantTables.getNormalizedBandwidth(model, i, fVowel); + + // Get the filter gain from the table, but scale by BW to counteract the filters + // gain that tracks Q + T gainDB = formantTables.getGain(model, i, fVowel); + + // blend the table with full gain depending on brightness + T modifiedGainDB = (1 - gainDB) * brightness + gainDB; + + // TODO: why is normalizedBW in this equation? + const T gain =LookupTable::lookup(*db2GainLookup, modifiedGainDB) * normalizedBw; + + T fcFinalLog = fcLog + fPara; + T fcFinal = LookupTable::lookup(*expLookup, fcFinalLog); + + filterParams[i].setFreq(fcFinal * reciprocalSampleRate); + filterParams[i].setNormalizedBandwidth(normalizedBw); + filterMix += gain * StateVariableFilter::run(input, filterStates[i], filterParams[i]); + } + TBase::outputs[AUDIO_OUTPUT].value = 3 * filterMix; +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/composites/WidgetComposite.h b/plugins/community/repos/squinkylabs-plug1/composites/WidgetComposite.h new file mode 100644 index 00000000..b1f3bfc7 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/composites/WidgetComposite.h @@ -0,0 +1,22 @@ +#pragma once + +/** + * Base class for composites embeddable in a VCV Widget + * This is used for "real" implementations + */ +class WidgetComposite +{ +public: + WidgetComposite(Module * parent) : + inputs(parent->inputs), + outputs(parent->outputs), + params(parent->params), + lights(parent->lights) + { + } +protected: + std::vector& inputs; + std::vector& outputs; + std::vector& params; + std::vector& lights; +}; diff --git a/plugins/community/repos/squinkylabs-plug1/docs/README.md b/plugins/community/repos/squinkylabs-plug1/docs/README.md new file mode 100644 index 00000000..71d640ab --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/docs/README.md @@ -0,0 +1,31 @@ +# Squinky Labs modules for VCV Rack + +All of our plugins are free and open source. The [instruction manual](booty-shifter.md) describes all of the released modules. + +All of our released modules may be found in the [VCV Rack plugin manager] (https://vcvrack.com/plugins.html). This is by far the easiest way for most users to install our modules and keep them up to date. + +It is also quite easy to clone this repo and build them yourself. In order to do this, however, you must first download and build [VCV Rack itself](https://github.com/VCVRack/Rack). + +## Information for developer and experimenters + +There are various test modules, test code, and other good things hidden away in this repo. We will try to point you to some that may be of interest. + +Most of the documentation may be found in the [docs folder](../docs/.). + +## Building source + +As with all third-party modules for VCV, you must: + +* Clone the VCV Rack repo. +* Build Rack from source. +* Clone SquinkyVCV in Rack’s plugins folder. +* `CD SquinkyVCV` +* `make` + +## Experimental modules + +At any given time, there may partially finished "experimental" modules in this repo. You can find up to date information on them [here](experimental.md). + +## Unit testing framework + +We have reasonably thorough tests for our code. Some of this might be of interest - it's [here](unit-test.md). \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/docs/booty-shifter.md b/plugins/community/repos/squinkylabs-plug1/docs/booty-shifter.md new file mode 100644 index 00000000..44c078a4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/docs/booty-shifter.md @@ -0,0 +1,207 @@ +# Table of contents + +[Chopper](#chopper) Is a tremolo powered by a clock-synchable LFO. The LFO is highly programmable to give a range of waveforms. + +[Thread Booster](#booster) reduces pops and clicks in VCV Rack by reprogramming VCV's audio engine. + +[Colors](#colors) is a colored noise generator. It can generate all the common **"colors"** of noise, including white, pink, red, blue, and violet. + +[Growler](#growler) is a "vocal animator." It imparts random vocal timbres on anything played through it. The pseudo-random LFOs all have discrete outputs. + +[Booty Shifter](#shifter) is an emulation of the legendary Moog/Bode frequency shifter. + +[Formants](#formants) is a programmable bank of filters that can synthesize various vowel sounds and morph between them. + +[Attenuverters](#atten) + +[CV ranges](#cv) + +# Chopper tremolo / programmable LFO + +In its simplest use, Chopper produces a very wide range of **tremolo** effects. The built-in LFO can produce a wide range of waveforms that cover many of the waveforms produced by the tremolo circuits built into **vintage guitar amplifiers**. + +The LFO is sent to an output so that it may modulate other modules. + +There is also a **clock synchronizer** and multiplier. + +To use Chopper as a tremolo, send a signal to the *in* jack, and listen to the *out* jack. Leave the *clock* control at the default *int* setting. Most of the knob settings will now affect the tremolo effect. + +## Chopper LFO + +![chopper image](../docs/lfo-waveforms.png) + +To understand all the LFO settings, it helps to watch the outputs on a scope. + +The LFO starts as **skewed** sawtooth. In the middle position it is a symmetric triangle wave, at one end a positive sawtooth and at the other a negative sawtooth. The signal is sent to the **saw** output. + +The skewed saw then goes to a **waveshaper**. As the shape control is increased the LFO is gradually rounded and then flattened. The shaped LFO is send to the *lfo* output, and used internally to modulate the audio input. + +LFO Controls: + +* **Shape** Flattens the LFO waveform. +* **Skew** Dials in the amount of asymmetry in the LFO. +* **Depth** Shifts and scales the LFO. + +When used as a tremolo effect, you will hear **more tremolo** when these controls are turned up. + +## Chopper clock + +The LFO in Chopper may be synchronized with the ckin signal. There is a built-in **clock multiplier**. To use the synchronization, patch a clock to the ckin, and select x1 from the **clock** knob. To run at a multiple of the input clock, select x2, x3, or x4. + +When Chopper is being synched, the **Phase** control sets the phase difference between the external clock and the synchronized LFO. This may be used to "dial in" the tremolo so that it sounds exactly on the beat (or off the beat). + +There is also an internal LFO that is controlled by the **Rate** control. Set the clock control to *int* to use the internal clock. + +# Thread Booster + +Thread booster raises the priority of VCV Rack's audio rendering thread. In many cases this decreases the annoying pops, ticks, and dropouts that many users are experiencing. + +Many users have reported that Thread Booster helps significantly. Others have reported that it does not help at all. No one has reported a detrimental effect. + +For a deeper dive into the Thread Booster, you should read [this document](./thread-booster.md). + +Thread Booster has a UI that lets you boost the priority of the audio thread. There are three arbitrary settings: normal, boosted, and real time. When the switch is in the bottom position, the plugin does nothing; the audio thread keeps its default priority. In the boost (middle) position, it sets the thread priority to the highest priority non-real-time setting. In the real-time position it attempts to set it to the highest possible priority, or near it. + +If setting the priority fails, the red error light lights up, and the priority stays where it was last. + +To use Thread Booster, just insert an instance into VCV Rack, then adjust the boost switch. In general we recommend the "real time" setting, if it is available on your computer. + +Once Thread booster is in your session, it will boost all the audio processing - it doesn't matter if other modules are added before or after - they all get boosted. + +Linux users - you must read [the detailed document](./thread-booster.md) to use this module. + +Note to users who downloaded the original version of Thread Booster: we've improved it a bit since then, especially on Linux and Windows. + +# Colors variable slope noise generator + +![noise image](../docs/colors.png) + +Colors is a colored noise generator. It can generate all the common **"colors"** of noise, including white, pink, red, blue, and violet. It can also produce all the colors in between, as it has a **continuously variable slope**. + +Colors has a single control, "slope." This is the slope of the noise spectrum, from -8 dB/octave to +8 dB/octave. + +The slope of the noise is quite accurate in the mid-band, but at the extremes we flatten the slope to keep from boosting super-low frequencies too much, and to avoid putting out enormous amounts of highs. So the slope is flat below 40hz, and above 6kHz. + +## Things to be aware of + +When the **slope** changes, Color needs to do a lot of calculations. While this is normally not a problem, it’s possible that quickly changing the slope of many instances of Colors could cause pops and dropouts. + +The slope control does not respond instantly. If you turn the knob, you will hear the change, but if you were to modulate the CV very quickly you might notice the slowness. + +# Growler + +![vocal formant filter image](./growler.jpg) + +**Growler** is a re-creation of the Vocal Animator circuit invented by Bernie Hutchins, and published in Electronotes magazine in the late 70's. It continuously morphs between different vaguely voice like tones. + +**To get a good sound:** run any harmonically rich signal into the input, and something good will come out. Low frequency pulse waves and distorted sounds make great input. + +The controls do pretty much what you would expect: + +* **LFO** controls the speed of the modulation LFOs. +* **Fc** controls the average frequency of the multiple filters. +* **Q** controls the sharpness of the filters. +* **Depth** controls how much of the modulation LFOs are applied to the filters. + +## How Growler works +![growler scope](./growler.png) + +There are four **bandpass filters**, roughly tuned to some typical vocal formant frequencies: 522, 1340, 2570, and 3700 Hz. The filters are run in parallel, with their outputs summed together. + +The first three filter frequencies are modulated by an LFO comprised of **4 triangle wave LFOs** running at different frequencies. They are summed together in various combinations to drive each of the filters. + +Each **CV input stage** is the same: a knob that supplies a fixed offset and a CV input that is processed by an attenuverter. The processed CV is added to the knob voltage. See below for more on [Attenuverters](#atten) and [CV ranges](#cv). + +The **LFO** Rate control shifts the speed of all 4 LFOs while maintaining the ratio of their frequencies. + +The **Fc** control moves the frequencies of the first three filters, but not by equal amounts. The lowest filter moves at 1V/Oct, but the middle two move less. The top filter is fixed at 3700 Hz. + +The **Q** control does just what it says - controls the Q (resonance) of the filters. + +The **Modulation Depth** controls how much of the summed LFOs get to each filter. Again, the lower filters move farther, and the top filter is fixed. + +The smaller knobs next to the main knobs are **attenuverters**, which scale control voltages. For more on attenuverters, [see below](#atten) + +There are three LFO outputs next to the blinking LFOs. These may be used to modulate other modules, or as semi-random voltage sources. + +**Bass boost** switch. When it’s in the up position (on) there should be more bass. This is done by switching some or all of the filters from bandpass to lowpass. + +LFO **Matrix** switch. This is the unlabeled switch in the LFO section. When it’s down (default position) the LFOs are closely correlated. In the middle we try to make them a little bit more independent. When it’s in the up position the LFOs will often go in different directions. + +# Booty Shifter frequency shifter + +**Booty Shifter** is a frequency shifter inspired by the Moog/Bode frequency shifter module. + +![booty shifter image](./booty-shifter.png) + +The name "Booty Shifter" is a nod to the classic analog module, as well as to a black cat named Booty. + +Booty Shifter will take an audio input and shift the frequencies up or down. This is not like a pitch shift where harmonics will remain in tune; it is an absolute frequency shift in Hz, so in general **harmonics will go way out of tune.** It is similar to a ring-modulator, but less extreme and more versatile. + +## Getting good sounds from Booty Shifter + +Feed in music and shift the frequency a good amount. + +Feed in **speech or radio** and shift it. + +Feed the CV from a **sequencer** to sequence the mayhem. + +Shift **drums** up or down a little bit to re-tune them without the usual pitch-shifting artifacts. + +Small shifts in conjunction with delays can make a chorus-like effect to thicken music. + +## Inputs and outputs + +* **IN** is the audio input. +* **CV** is the pitch shift control voltage. -5V will give minimum shift, +5 will give maximum. +* **DN** is the down-shifted output. +* **UP** is the up-shifted output. + +## Controls + +**RANGE** sets the total shift range in Hz. For example, the 50 Hz setting means that the minimum shift is 50 Hz down, and the maximum is 50 Hz up. + +Range value **Exp is different**. Here minimum shift is 2 Hz, maximum is 2 kHz, with an exponential response. As of version 0.6.2 the response is an accurate 1 Volt per Octave. + +Shift **AMT** is added to the control voltage, with a range of -5..5. + +## Oddities and limitations + +If you shift the frequency up too far, it will alias. There is no anti-aliasing, so if the highest input frequency + shift amount > sample_rate / 2, you will get aliasing. Of course the Bode analog original did not alias. + +If you shift the input down a lot, frequencies will go **below zero and wrap around**. Taken far enough this will completely **reverse the spectrum** of the input. This was a prized feature of the Bode original. + +As you shift the input down, you may start to generate a lot of subsonic energy. A **High Pass filter** may clean this up. + +The down shift **frequency fold-over**, while true to the original, does cause problems when trying to pitch drum tracks down a lot. High pass filtering the input before it is down-shifted can control this. + +# Formants vocal filter + +![formants image](./formants.png) + +Like the **Vocal Animator**, this is a filter bank tuned to the formant frequencies of typical **singing voices**. Unlike Growler, however, the filters do not animate on their own. In addition, the filters are preset to frequencies, bandwidths, and gains that are taken from **measurements of human singers**. + +One of the easiest ways to **get a good sound** from Formants is to use it like a regular VCF. For example, control Fc with an ADSR. Then put a second modulation source into the vowel CV - something as simple as a slow LFO will add interest. + +Use it as a **filter bank**. Just set the knobs for a good sound and leave it fixed to add vocal tones to a pad. Again, modulating the vowel CV can easily give great results. + +Try to synthesize something like **singing** by sequencing the vowel CV of several formants. Leave the Fc in place, or move it slightly as the input pitches move. + +Controls: + +* **Fc** control moves all the filters up and down by the standard one "volt" per octave. +* **Vowel** control smoothly interpolates between 'a', 'e', 'i', 'o', and 'u'. +* **Model** control selects different vocal models: bass, tenor, countertenor, alto, and soprano. +* **Brightness** control gradually boosts the level of the higher formants. When it is all the way down, the filter gains are set by the singing models in the module, which typically fall off with increasing frequency. As this control is increased the gain of the high formant filters is brought up to match the F1 formant filter. + +The **LEDs across the top** indicate which formant is currently being "sung". + +## About Attenuverters + +The small knobs next to the bigger knobs are **attenuverters**. They scale and/or invert the control voltage inputs next to them. When they are turned all the way up the full CV comes through. As they are turned down less CV comes through. Straight up none passes. As they are turned down further the CV comes back, but inverted. + +Sometimes we use attenuverters with a *linear taper*, and sometimes we use an *audio taper*. If you find that on a particular module you do not like the response of the attenuverters, please log a github issue. + +## Control voltage ranges + +Our modules usually expect a control voltage range of **-5 to +5**. The associated offset knobs will also add -5 to +5. After attenuverters are applied to CV the knob value is added. After all that, the result is usually clipped to the -5 to +5 range. diff --git a/plugins/community/repos/squinkylabs-plug1/docs/booty-shifter.png b/plugins/community/repos/squinkylabs-plug1/docs/booty-shifter.png new file mode 100644 index 0000000000000000000000000000000000000000..1d5c6553e255348dafb698ab66e80dc6bc55490d GIT binary patch literal 20917 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 Fe*=K}hQ +class FrequencyShifter : public TBase +{ +... +} +``` +Follow the link to look at [FrequencyShifter](composites/FrequencyShifter.h) + +Create two constructors. One with no arguments for the tests to use, and the other with a `Module *` to use in the VCV plugin. + +Put all the Input, Output, Param, Light enums into the composite class, rather than the normal Widget class. + +To use this composite in a test, derive concrete class from TestComposite +```c++ +using Shifter = FrequencyShifter; +``` +Now you may use this class in a test. The TestComposite base class give your tests access to the inputs and outputs of your "widget" +```c++ + Shifter fs; + + fs.setSampleRate(44100); + fs.init(); + fs.inputs[Shifter::AUDIO_INPUT].value = 0; +``` + +## How it works + +The class hierarchy is something like these crudely drawn UML diagrams +``` +TestWidget -> I/O + | + ^ + / \ + --- + | + FrequencyShifter -> enums + ``` + + ``` + ModuleWidget -> I/O -> Module + | + ^ + / \ + --- + | + FrequencyShifter -> enums +``` + +The purpose of the composite's base class is to provide the inputs/outputs/etc... to the composite. The TestComposite base class has vectors of I/O exposed as public members that the tests may directly manipulate. The WidgetComposite base class just marshals references to the I/O that is already in the VCV provided Widget base class. + +All of the enums for module I/O goes into the composite. So they are available to tests as composite.ENUM_NAME. They are also available to Modules as this->composite.ENUM_NAME. diff --git a/plugins/community/repos/squinkylabs-plug1/docs/experimental.md b/plugins/community/repos/squinkylabs-plug1/docs/experimental.md new file mode 100644 index 00000000..b5fbbbd5 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/docs/experimental.md @@ -0,0 +1,15 @@ +# Experimental Modules + +Usually we have one or two modules that work, but are not ready for release. Often they have very ugly panels, are missing features, aren't tuned yet for performance or playability. + +I most cases there are no pre-built binaries for these plugins, you must build them yourself. + +Never the less, we encourage the curious to build these, try them out, and report back to us on any bugs or desired features. + +## Building experiments + +To build all the modules, including the experimental ones, simply run `make _EXP=1`. + +## Current experiments + +The Thread Booster is quite experimental. It is described [here](thread-booster.md). This one does have a pre-built binary. diff --git a/plugins/community/repos/squinkylabs-plug1/docs/formants.png b/plugins/community/repos/squinkylabs-plug1/docs/formants.png new file mode 100644 index 0000000000000000000000000000000000000000..c96ca7f2bd5105d1eb1d1f93a9efb308e113b559 GIT binary patch literal 18698 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⪼am z`U~M;UC7=KtcM$Z8u`+#!$~X9c#y_QeudoJn0m`T7>Kq`Di419vajyz;J|m{-0Vxc z>vEfJy>fo-a|37^DtlTZBH??Q%~050EyX^@HTwi?E{P)Ff-Kz0hFb1qD)I zHXqIJ;n0%R@Va-K9Xs=8{Um?@Saa+W$XkK(Qe`X_OQ$#}l#FaJIu8S7KvMr` zMqDH7!I8uAWmFBX-})0?w{OOdH5L1*`F~)op>-zzu{9<_(01^v&W^G1aYxsYBn=vK zJ9f3`^zRb^J3EFGXP^`4s#H05babr5NW=eXDosiZj2?J29`@!9n|rUOKea69t~nTp zx>Z7cpKvQrxq?v7r?pd-;umH zBR29Trlws{^a+_p*_>7y_+fnN2=wOoe}kdJeltZo|5reus)!2-2+Gi!^D8Ql-R3=z za|9CHOplXd;k~8$(rXKR(WUW3lEo?&L4}4 zpsLG?0ZW@P>9CwvPI(^J!#3yj0007r8Tq_UP6tT`Hm%UbiJ{)2k3YONXC~{h$)UDUnqH~f;oc@vXfc7u$SJ6%c5}t(e@xQKXDF=_z;dw!{SuR zW7xcMEX6~CEw>xC_>xAg6S%421sp32?*%Vb=26(D#MK=(y>Ay>dv z0UjF#k`HsBo(EcxbRh?3%4b-VP%iG2|Glp-14viI{}gTU0o<3FnAm~;P}+4CCwg<7 z<(T0Kbk)s#_k*9hi&<2l!G7ji!5sj5e8KK5xZ_k{MBT3c=GjbxiBE}H>C8E;LOBO{ z|Li-xK=GuUbo#rAhd;q?dM6l2N(t#jv>BPlh_o3t%fOHN3*w_n*oJ=12KqP0 zpc|RS#0GeRrD!t#px3{i?<5SgK1p~ak$so$z8Nm1J8>S+5eW3x2l|-eAh%+IB)}6Z zgsD`$UQ`h&1${b;%p(x~6w@KC7CkCSK_^tSTk$OlBdO;3AiKyG78$vBw)r&SP>J{r zm7mJ@@84(Nbze0%P0BsJ6t^k7Y`M$L-C4}YZ{7o1;&^Q*grM$fP-;?>!hPS-=)8_{ z0bMLKg0@lDVeVmgAYb?bJLhVu6PJryuw1$LohPv8OoBEvNQ3yJe_Vm7=E6NymSbJ zuLNH&l43R9)I0dVckak1rn&oA;(jKS{yPCNagO69WLP z5#XlIg}1sYdgL`pl1pshMO z<5)9(XTq`H87$Yyv+8S7MnuxMDe_9lsmK0MNABBQFL!r6J(^nkgEgIn8PIh_DgH5L zJH$D|_rm?5X+RoVwJRrYdRp4ULD1%zlYiCGNQy#bJ=E|-H~~SYP~n~(rUaG^lGP(-1SGVe#7M?=X(lh z#eH--4JB@qfG3{dK*321HecVm8(IU4#Fb;UtSZWT4WW4%J(_Ac4|9l*$&#~sFoRRd zZ}JtlN3&m^C}SHmchB>b4pzgpg6=$|6LGpDAn^9Lh=Ag@Wwngy4&kR>x>L&N=F7P&t;8yjm0H6SM1*#$Thsl0N%Wh|hSKI?oMDWrGyb8OS zJjP-QDyZecWP!rbEP7IFuj4)#`WQ#oU0jT=4G>yh01?;UPshb=d!7n@#s;P=7;wGdH>4` zLmH=r*taYb+26mu5Ds_^UjFh#Qp^&o=<0S(lpGBcJsd6N(MCq9ibXFwjV@>5_5XRR z%$>)I^|`r~q7t{apKNg){r5}J_Y={ax9zk1mG-!O`WOcb8VuVIN<*R7=Tko literal 0 HcmV?d00001 diff --git a/plugins/community/repos/squinkylabs-plug1/docs/growler.jpg b/plugins/community/repos/squinkylabs-plug1/docs/growler.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b8fef84b3b10be11aceae03824ff3d26a19051a8 GIT binary patch literal 48127 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 + squinkylabs-plug1/ + plugin.dll + plugin.dylib (optional, unused) + plugin.so (optional, unused) + LICENSE + res/ + + +``` + +The plugins will be under the **Rack** folder. Rack folders are here: + +* MacOS: Documents/Rack/ +* Windows: My Documents/Rack/ +* Linux: ~/.Rack/ diff --git a/plugins/community/repos/squinkylabs-plug1/docs/lfo-waveforms.png b/plugins/community/repos/squinkylabs-plug1/docs/lfo-waveforms.png new file mode 100644 index 0000000000000000000000000000000000000000..e9cd9539e5725543ee7e2c74800212523df92a27 GIT binary patch literal 22971 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 +``` + +After giving Rack this ability, it will stay set until the Rack executable file is changed, either by downloading a new one, or building a new one on top of it. + +## Notes on Windows + +Unlike Linux, the middle boost setting works well on Windows. The realtime setting works well also, although it is not the very highest setting that windows calls realtime. Instead it sets the Rack process as a whole to HIGH_PRIORITY_CLASS, and the sets the audio thread to THREAD_PRIORITY_TIME_CRITICAL. We have found this to give a very good boost without requiring that you run Rack as administrator (which is not recommended). + +We only test on Windows 7. If you have issues with other versions of Windows, please let us know. + +## Notes on OS X + +As usual, it just works on OS X. + +## Caveats and limitations + +If you try this plugin, be aware that changing Rack’s thread priority behind its back may cause some things to misbehave. We have not seen this happen, but it's a real possibility. Running at an elevated priority could make something in VCV or the plugins misbehave or glitch. + +Another limitation is that Thread Booster does not boost the thread(s) that move data between Rack's audio engine and the Audio (sound card) Module(s). + +## Is it dangerous to run at "realtime" priority? + +If you scour the Internet you will find some warnings about boosting thread priorities to super high thread priorities, saying that there is a danger your computer will become unresponsive, possibly even needing to be re-booted. + +While in general this is true, it is not true that raising the priority of a single thread will do this, as a single thread can at worst use all the cycles of a single core. For the last 10 years or so all CPUs have more than one core, so there will always be plenty of CPU left over. + +Most audio programs in fact do raise the priority of their audio threads, and of course work fine. So, while we don't guarantee that Thread Booster will fix all clicks and pops, we do believe that it is very unlikely to do any harm. + +## Questions for testers + +Please use our [GitHub issues](https://github.com/squinkylabs/SquinkyVCV/issues) to send us feedback. Some things we are curious about: + +* With a fully loaded session that starts to make pops and clicks, does thread booster fix it? +* If you are able to run realtime, is there any noticeable difference between boosted and real-time? +* For all reports, please list operating system and version (i.e. Windows-10, OSX 10.12, Ubuntu 16.04). + +## Known issues + +On the Mac, Boosting and the switching back to normal will not restore the original priority. It will actually be running at a lower priority. + +When the Thread Booster comes up initially, no LEDs are illuminated - the normal LED should be. diff --git a/plugins/community/repos/squinkylabs-plug1/docs/unit-test.md b/plugins/community/repos/squinkylabs-plug1/docs/unit-test.md new file mode 100644 index 00000000..3f19698f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/docs/unit-test.md @@ -0,0 +1,28 @@ +# Some notes on our unit tests + +The ./test folder contains a unit test program and test-support classes. + +In general most of this software is fairly unremarkable code that supports unit testing of the various parts of our plugins. + +We find that reasonably thorough unit testing is even more valuable for plugins than for "normal" code. Some of the reasons are: + +* Without unit tests, it can be very easy to make filters that don’t have the response they should ("oops – forget to multiply by 2 pi"), lookup tables aren’t as accurate as they should be, numeric approximations have gross discontinuities, etc. +* Unit tests may be built and debugged with a conventional IDE, whereas (at least for us) debugging a plugin with gdb from inside a running instance of VCV Rack is more difficult. +* It is easy to measure CPU usage in a unit test, whereas it is difficult to impossible to measure while running in VCV Rack. + +This last point is very important, as one of the basic rules of code optimization is that a programmers intuition (guess) as to where the bottlenecks are is remarkably unreliable – you must drive your optimizations from real data. For example, we discovered that over half the CPU time in our vocal filter was in evaluating assertions! + +As stated above, much of the test code is unremarkable, other than its existence. There are a couple of modules however that might be useful to others. + +[MeasureTime](../test/MeasureTime.h) is used to measure the CPU usage of any arbitrary code. It takes a simple lambda and profiles it. + +[Composite pattern](composites.md) allows us to run our plugin code inside a test application as well as inside a VCV Track plugin module. + +[Assert Library](../test/asserts.h) is a very basic collection of assertion macros loosely based on the Chai Assert framework. + +We have enhanced [Makefile](../Makefile) in several useful ways with the addition of [test.mk](../test.mk): + +* Default `make` will generate a plugin with assertions disabled. +* `make test` will generate test.exe, our unit test application, with asserts enabled. +* `make perf` will generate perf.exe, our unit test application, with asserts disabled. +* `make cleantest` is like `make clean`, but for out test code. diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.cpp new file mode 100644 index 00000000..ab4c736c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.cpp @@ -0,0 +1,201 @@ + +#include "AudioMath.h" +#include "FFT.h" +#include "FFTData.h" + +#include +#include "kiss_fft.h" +#include "kiss_fftr.h" + +#include "AudioMath.h" + + +bool FFT::forward(FFTDataCpx* out, const FFTDataReal& in) +{ + if (out->buffer.size() != in.buffer.size()) { + return false; + } + + // step 1: create the cfg, if needed + if (in.kiss_cfg == 0) { + bool inverse_fft = false; + kiss_fftr_cfg newCfg= kiss_fftr_alloc((int)in.buffer.size(), + inverse_fft, + nullptr, nullptr); + + assert (newCfg); + if (!newCfg) { + return false; + } + + // now save off in our typeless pointer. + assert(sizeof(newCfg) == sizeof(in.kiss_cfg)); + in.kiss_cfg = newCfg; + } + + // step 2: do the fft + kiss_fftr_cfg theCfg = reinterpret_cast(in.kiss_cfg); + + // TODO: need a test that this assumption is correct (that we kiss_fft_cpx == std::complex. + kiss_fft_cpx * outBuffer = reinterpret_cast(out->buffer.data()); + kiss_fftr(theCfg, in.buffer.data(), outBuffer); + + // step 4: scale + const float scale = float(1.0 / in.buffer.size()); + for (size_t i = 0; i < in.buffer.size(); ++i) { + out->buffer[i] *= scale; + } + + return true; +} + + +bool FFT::inverse(FFTDataReal* out, const FFTDataCpx& in) +{ + if (out->buffer.size() != in.buffer.size()) { + return false; + } + + // step 1: create the cfg, if needed + if (in.kiss_cfg == 0) { + bool inverse_fft = true; + kiss_fftr_cfg newCfg = kiss_fftr_alloc((int) in.buffer.size(), + inverse_fft, + nullptr, nullptr); + + assert(newCfg); + if (!newCfg) { + return false; + } + + // now save off in our typeless pointer. + assert(sizeof(newCfg) == sizeof(in.kiss_cfg)); + in.kiss_cfg = newCfg; + } + + // step 2: do the fft + kiss_fftr_cfg theCfg = reinterpret_cast(in.kiss_cfg); + + // TODO: need a test that this assumption is correct (that we kiss_fft_cpx == std::complex. + const kiss_fft_cpx * inBuffer = reinterpret_cast(in.buffer.data()); + + kiss_fftri(theCfg, inBuffer, out->buffer.data()); + return true; +} + +int FFT::freqToBin(float freq, float sampleRate, int numBins) +{ + assert(freq <= (sampleRate / 2)); + // bin(numBins) <> sr / 2; + return (int)((freq / sampleRate)*(numBins * 2)); +} + +float FFT::bin2Freq(int bin, float sampleRate, int numBins) +{ + return sampleRate * float(bin) / (float(numBins) * 2); +} + +static float randomPhase() +{ + float phase = (float) rand(); + phase = phase / (float) RAND_MAX; // 0..1 + phase = (float) (phase * (2 * AudioMath::Pi)); + return phase; +} + +static void makeNegSlope(FFTDataCpx* output, const ColoredNoiseSpec& spec) +{ + const int numBins = int(output->size()); + const float lowFreqCorner = 40; + + // find bin for 40 Hz + const int bin40 = FFT::freqToBin(lowFreqCorner, spec.sampleRate, numBins); + + // fill bottom bins with 1.0 mag + for (int i = 0; i <= bin40; ++i) { + output->set(i, std::polar(1.f, randomPhase())); + } + + // now go to the end and at slope + static float k = -spec.slope * log2(lowFreqCorner); + for (int i = bin40 + 1; i < numBins; ++i) { + if (i < numBins / 2) { + const float f = FFT::bin2Freq(i, spec.sampleRate, numBins); + const float gainDb = std::log2(f) * spec.slope + k; + const float gain = float(AudioMath::gainFromDb(gainDb)); + output->set(i, std::polar(gain, randomPhase())); + } else { + output->set(i, cpx(0, 0)); + } + } + output->set(0, 0); // make sure dc bin zero +} + +static void makePosSlope(FFTDataCpx* output, const ColoredNoiseSpec& spec) +{ + const int numBins = int(output->size()); + + // find bin for high corner + const int binHigh = FFT::freqToBin(spec.highFreqCorner, spec.sampleRate, numBins); + + // now go to the end and at slope + float gainMax = 1; // even if nothing in the bins (ut) needs something in there. + static float k = -spec.slope * log2(spec.highFreqCorner); + for (int i = binHigh - 1; i > 0; --i) { + if (i < numBins / 2) { + const float f = FFT::bin2Freq(i, spec.sampleRate, numBins); + const float gainDb = std::log2(f) * spec.slope + k; + const float gain = float(AudioMath::gainFromDb(gainDb)); + gainMax = std::max(gain, gainMax); + output->set(i, std::polar(gain, randomPhase())); + } else { + output->set(i, cpx(0, 0)); + } + } + + // fill top bins with mag mag + for (int i = numBins - 1; i >= binHigh; --i) { + if (i < numBins / 2) { + output->set(i, std::polar(gainMax, randomPhase())); + } else { + output->set(i, cpx(0.0)); + } + } + + output->set(0, 0); // make sure dc bin zero +} + +void FFT::makeNoiseSpectrum(FFTDataCpx* output, const ColoredNoiseSpec& spec) +{ + // for now, zero all first. + const int frameSize = (int) output->size(); + for (int i = 0; i < frameSize; ++i) { + cpx x(0,0); + output->set(i, x); + } + if (spec.slope < 0) { + makeNegSlope(output, spec); + } else { + makePosSlope(output, spec); + } +} + +static float getPeak(const FFTDataReal& data) +{ + float peak = 0; + for (int i = 0; i < data.size(); ++i) { + peak = std::max(peak, std::abs(data.get(i))); + } + return peak; +} + +void FFT::normalize(FFTDataReal* data) +{ + const float peak = getPeak(*data); + const float correction = 1.0f / peak; + for (int i = 0; i < data->size(); ++i) { + float x = data->get(i); + x *= correction; + data->set(i, x); + } +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.h b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.h new file mode 100644 index 00000000..01b717bb --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFT.h @@ -0,0 +1,39 @@ +#pragma once + +class FFTDataCpx; +class FFTDataReal; + + +class ColoredNoiseSpec +{ +public: + float slope = 0; + float highFreqCorner = 4000; + float sampleRate = 44100; + bool operator != (const ColoredNoiseSpec& other) const + { + return (slope != other.slope) || + (highFreqCorner != other.highFreqCorner) || + (sampleRate != other.sampleRate); + } +}; + +class FFT +{ +public: + /** Forward FFT will do the 1/N scaling + */ + static bool forward(FFTDataCpx* out, const FFTDataReal& in); + static bool inverse(FFTDataReal* out, const FFTDataCpx& in); + + // static FFTDataCpx* makeNoiseFormula(float slope, float highFreqCorner, int frameSize); + + /** + * Fills a complex FFT frame with frequency domain data describing noise + */ + static void makeNoiseSpectrum(FFTDataCpx* output, const ColoredNoiseSpec&); + + static void normalize(FFTDataReal*); + static float bin2Freq(int bin, float sampleRate, int numBins); + static int freqToBin(float freq, float sampleRate, int numBins); +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.cpp new file mode 100644 index 00000000..ecda08d5 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.cpp @@ -0,0 +1,82 @@ + +#include "ColoredNoise.h" +#include "FFTCrossFader.h" +#include + +NoiseMessage* FFTCrossFader::step(float* out) +{ + NoiseMessage* usedMessage = nullptr; + if (dataFrames[0] && !dataFrames[1]) { + // just one frame - play it; + *out = dataFrames[0]->dataBuffer->get(curPlayOffset[0]); + advance(0); + + } else if (dataFrames[0] && dataFrames[1]) { + // curPlayOffset1 is the index into buffer 1, but also the crossfade index + assert(curPlayOffset[1] < crossfadeSamples); + + float buffer0Value = dataFrames[0]->dataBuffer->get(curPlayOffset[0]) * + (crossfadeSamples - (curPlayOffset[1]+1)); + float buffer1Value = dataFrames[1]->dataBuffer->get(curPlayOffset[1]) * curPlayOffset[1]; + + // TODO: do we need to pre-divide + *out = (buffer1Value + buffer0Value) / (crossfadeSamples-1); + if (makeupGain) { + float gain = std::sqrt(2.0f) - 1; + float offset = float(curPlayOffset[1]); + float crossM1 = float(crossfadeSamples - 1); + const float halfFade = crossM1 / 2.f; + // printf(" halfFade = %f offset=%f, crossm1=%f initgain=%f\n", halfFade, offset, crossM1, gain); + if (offset < halfFade) { + gain *= offset / crossM1; + gain *= 2.f; + // printf(" low case, off/cross=%f\n", offset / crossM1); + } else { + gain *= (crossM1 - offset) / crossM1; + gain *= 2; + // printf(" high case, c-off/cross=%f\n", (crossM1 - offset) / crossM1); + } + gain += 1; + *out *= gain; + } + advance(0); + advance(1); + if (curPlayOffset[1] == crossfadeSamples) { + // finished fade, can get rid of 0 + usedMessage = dataFrames[0]; + dataFrames[0] = dataFrames[1]; + curPlayOffset[0] = curPlayOffset[1]; + dataFrames[1] = nullptr; + curPlayOffset[1] = 0; + } + + } else { + *out = 0; + } + return usedMessage;; +} + +void FFTCrossFader::advance(int index) +{ + ++curPlayOffset[index]; + if (curPlayOffset[index] >= dataFrames[index]->dataBuffer->size()) { + curPlayOffset[index] = 0; + } +} + +NoiseMessage * FFTCrossFader::acceptData(NoiseMessage* msg) +{ + NoiseMessage* returnedBuffer = nullptr; + if (dataFrames[0] == nullptr) { + dataFrames[0] = msg; + curPlayOffset[0] = 0; + } + else if (dataFrames[1] == nullptr) { + dataFrames[1] = msg; + curPlayOffset[1] = 0; + } else { + // we are full, just ignore this one. + returnedBuffer = msg; + } + return returnedBuffer; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.h b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.h new file mode 100644 index 00000000..fa991b0e --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTCrossFader.h @@ -0,0 +1,50 @@ +#pragma once + +class NoiseMessage; + +/** + * This is a specialized gizmo just for fading between two + * FFT frames + */ +class FFTCrossFader +{ +public: + FFTCrossFader(int crossfadeSamples) : crossfadeSamples(crossfadeSamples) + { + } + NoiseMessage * step(float* out); + NoiseMessage * acceptData(NoiseMessage*); + bool empty() const + { + return !dataFrames[0]; + } + const NoiseMessage* playingMessage() const + { + // TODO: should return second, it exists? + return dataFrames[0]; + } + void enableMakeupGain(bool enable) + { + makeupGain = enable; + } +private: + /** + * The size of the crossfade, in samples + */ + const int crossfadeSamples; + + bool makeupGain = false; + + /** + * current playhead, relative to start of each buffer + */ + int curPlayOffset[2] = {0, 0}; + + + NoiseMessage* dataFrames[2] = {nullptr, nullptr}; + + /** Advance the play offset, + * wrap on overflow. + */ + void advance(int index); +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.cpp new file mode 100644 index 00000000..7324028c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.cpp @@ -0,0 +1,67 @@ + +#include "FFTData.h" +#include "kiss_fft.h" +#include "kiss_fftr.h" + +#include + +int FFTDataCpx::_count = 0; +FFTDataCpx::FFTDataCpx(int numBins) : + buffer(numBins) +{ + ++_count; +} + +FFTDataCpx::~FFTDataCpx() +{ + // We need to manually delete the cfg, since only "we" know + // what type it is. + if (kiss_cfg) { + free(kiss_cfg); + } + --_count; +} + +cpx FFTDataCpx::get(int index) const +{ + assert(index < (int)buffer.size()); + return buffer[index]; +} + + +void FFTDataCpx::set(int index, cpx value) +{ + assert(index < (int)buffer.size()); + buffer[index] = value; +} + +/******************************************************************/ +int FFTDataReal::_count = 0; +FFTDataReal::FFTDataReal(int numBins) : + buffer(numBins) +{ + ++_count; +} + +FFTDataReal::~FFTDataReal() +{ + // We need to manually delete the cfg, since only "we" know + // what type it is. + if (kiss_cfg) { + free(kiss_cfg); + } + --_count; +} + +float FFTDataReal::get(int index) const +{ + assert(index < (int)buffer.size()); + return buffer[index]; +} + + +void FFTDataReal::set(int index, float value) +{ + assert(index < (int)buffer.size()); + buffer[index] = value; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.h b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.h new file mode 100644 index 00000000..6db2c050 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/fft/FFTData.h @@ -0,0 +1,70 @@ +#pragma once + +#include +#include + + +class FFT; + +/** + * Our wrapper api uses std::complex, so we don't need to expose kiss_fft_cpx + * outside. Our implementation assumes the two are equivalent, and that a + * reinterpret_cast can bridge them. + */ +using cpx = std::complex; + +class FFTDataCpx +{ +public: + friend FFT; + FFTDataCpx(int numBins); + ~FFTDataCpx(); + cpx get(int bin) const; + void set(int bin, cpx value); + + int size() const + { + return (int) buffer.size(); + } + static int _count; +private: + std::vector buffer; + + /** + * we store this without type so that clients don't need + * to pull in the kiss_fft headers. It's mutable so it can + * be lazy created by FFT functions. + * Note that the cfg has a "direction" baked into it. For + * now we assume that all FFT with complex input will be inverse FFTs. + */ + mutable void * kiss_cfg = 0; +}; + +/** + * Holds an fft frame of real data. + */ +class FFTDataReal +{ +public: + friend FFT; + FFTDataReal(int numBins); + ~FFTDataReal(); + float get(int numBin) const; + void set(int numBin, float value); + int size() const + { + return (int) buffer.size(); + } + static int _count; +private: + std::vector buffer; + + /** + * we store this without type so that clients don't need + * to pull in the kiss_fft headers. It's mutable so it can + * be lazy created by FFT functions. + * Note that the cfg has a "direction" baked into it. For + * now we assume that all FFT with real input will be forward FFTs. + */ + mutable void * kiss_cfg = 0; +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadFilter.h b/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadFilter.h new file mode 100644 index 00000000..e313646c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadFilter.h @@ -0,0 +1,75 @@ +#pragma once + +template class BiquadState; +template class BiquadParams; + +#include "BiquadParams.h"// what is our forward declaration strategy here? put implementation in c++? +#include "DspFilter.h" // TODO: get rid of this. we need it now because you can't forward declare Cascade::Stage + +/* + * + * (I call this node x in the implementation) + * | + * + * >----- + ----------|--> b0 >-- + --------> + * | | | + * | Z-1 | + * | | | + * |--< -a1 <--|--> b1 >---- + * | | | + * | Z-1 | + * | | | + * | | | + * |--< -a2 <--|--> b2 >---- + * + * + * + */ +template +class BiquadFilter +{ +public: + BiquadFilter() = delete; // we are only static + template + static T run(T input, BiquadState& state, const BiquadParams& params); + + /** + * Translate filter coefficients from Dsp:: conventions to DspParam structure + */ + template + static void fillFromStages(BiquadParams& params, Dsp::Cascade::Stage * stages, int numStages); +}; + +template +template +inline void BiquadFilter::fillFromStages(BiquadParams& params, Dsp::Cascade::Stage * stages, int numStages) +{ + assert(numStages == N); + + for (int i = 0; i < N; ++i) { + const Dsp::Cascade::Stage& stage = stages[i]; + + params.B0(i) = (T) stage.b[0]; + params.B1(i) = (T) stage.b[1]; + params.B2(i) = (T) stage.b[2]; + params.A1(i) = (T) stage.a[1]; + params.A2(i) = (T) stage.a[2]; + } +} + +template +template +inline T BiquadFilter::run(T input, BiquadState& state, const BiquadParams& params) +{ + + for (int stage = 0; stage < N; ++stage) { + T x = input + (params.A1(stage) * state.z0(stage) + params.A2(stage) * state.z1(stage)); + + input = params.B0(stage) * x + + params.B1(stage) * state.z0(stage) + + params.B2(stage) * state.z1(stage); + state.z1(stage) = state.z0(stage); + state.z0(stage) = x; + } + return input; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadParams.h b/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadParams.h new file mode 100644 index 00000000..3fa84dab --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadParams.h @@ -0,0 +1,137 @@ +#pragma once +#include + +extern int _numBiquads; +/** + * Structure to hold the input parameter of a biquad filter: in this case the tap weights. + * + * T is the numeric type (float or double) + * N is the number of stages. So N=2 could be for a three pole or four pole biquad) + */ +template +class BiquadParams +{ +public: + BiquadParams(); + ~BiquadParams(); + + // TODO2: make N be unsigned + + // Let's block copies. They work fine, but we don't need + // to copy. + BiquadParams(const BiquadParams&) = delete; + BiquadParams& operator=(const BiquadParams&) = delete; + + T& B0(int stage); + T& B1(int stage); + T& B2(int stage); + T& A1(int stage); + T& A2(int stage); + T B0(int stage) const; + T B1(int stage) const; + T B2(int stage) const; + T A1(int stage) const; + T A2(int stage) const; + + void dump() const; +private: + T _taps[5 * N]; +}; + +template +inline void BiquadParams::dump() const +{ + for (int stage = 0; stage < N; ++stage) { + printf("%d B0=%f\n", stage, B0(stage)); + printf("%d B1=%f\n", stage, B1(stage)); + printf("%d B2=%f\n", stage, B2(stage)); + printf("%d A1=%f\n", stage, A1(stage)); + printf("%d A2=%f\n\n", stage, A2(stage)); + } +} + +template +inline BiquadParams::BiquadParams() +{ + assert(N > 0); + for (int i = 0; i < N * 5; ++i) { + _taps[i] = 0; + } + ++_numBiquads; +} + +template +inline BiquadParams::~BiquadParams() +{ + --_numBiquads; +} + +template +inline T& BiquadParams::B0(int stage) +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5]; +} + +template +inline T& BiquadParams::B1(int stage) +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 1]; +} + +template +inline T& BiquadParams::B2(int stage) +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 2]; +} + +template +T BiquadParams::A1(int stage) const +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 3]; +} + +template +T BiquadParams::A2(int stage) const +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 4]; +} + +template +T BiquadParams::B0(int stage) const +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5]; +} + +template +T BiquadParams::B1(int stage) const +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 1]; +} + +template +T BiquadParams::B2(int stage) const +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 2]; +} + +template +T& BiquadParams::A1(int stage) +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 3]; +} + +template +T& BiquadParams::A2(int stage) +{ + assert(stage >= 0 && stage < N); + return _taps[stage * 5 + 4]; +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadState.h b/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadState.h new file mode 100644 index 00000000..9ab8e217 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/BiquadState.h @@ -0,0 +1,54 @@ + +#pragma once + +/** + * Structure to hold the mutable state of a biquad filter: in this case the delay memory. + * + * T is the numeric type (float or double) + * N is the number of stages. So N=2 could be for a three pole or four pole biquad) + */ +template +class BiquadState +{ +public: + BiquadState(); + ~BiquadState(); + /** + * accessor for delay memory 0 + * @param stage is the biquad stage index + */ + T& z0(int stage); + T& z1(int stage); +private: + T _state[N * 2]; +}; + +template +inline BiquadState::BiquadState() +{ + assert(N > 0); + for (int i = 0; i < N * 2; ++i) { + _state[i] = 0; + } + _numBiquads++; +} + +template +inline BiquadState::~BiquadState() +{ + _numBiquads--; +} + +template +inline T& BiquadState::z0(int stage) +{ + assert(stage >= 0 && stage < N); + return _state[stage * 2]; +} + +template +inline T& BiquadState::z1(int stage) +{ + assert(stage >= 0 && stage < N); + return _state[stage * 2 + 1]; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.cpp new file mode 100644 index 00000000..2064a8b0 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.cpp @@ -0,0 +1,35 @@ +/** + * ButterworthFilterDesigner + * a bunch of functions for generating the parameters of butterworth filters + */ + +#include "ButterworthFilterDesigner.h" +#include "DspFilter.h" +#include "BiquadFilter.h" +#include + +template +void ButterworthFilterDesigner::designThreePoleLowpass(BiquadParams& outParams, T frequency) +{ + using Filter = Dsp::ButterLowPass<3, 1>; + std::unique_ptr lp3(new Filter()); // std::make_unique is not until C++14 + lp3->SetupAs(frequency); + assert(lp3->GetStageCount() == 2); + BiquadFilter::fillFromStages(outParams, lp3->Stages(), lp3->GetStageCount()); +} + +template +void ButterworthFilterDesigner::designTwoPoleLowpass(BiquadParams& outParams, T frequency) +{ + using Filter = Dsp::ButterLowPass<2, 1>; + std::unique_ptr lp2(new Filter()); + lp2->SetupAs(frequency); + assert(lp2->GetStageCount() == 1); + BiquadFilter::fillFromStages(outParams, lp2->Stages(), lp2->GetStageCount()); +} + +// Explicit instantiation, so we can put implementation into .cpp file +// TODO: option to take out float version (if we don't need it) +// Or put all in header +template class ButterworthFilterDesigner; +template class ButterworthFilterDesigner; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.h b/plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.h new file mode 100644 index 00000000..8f0ef436 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/ButterworthFilterDesigner.h @@ -0,0 +1,14 @@ + +#pragma once + +template +class BiquadParams; + +template +class ButterworthFilterDesigner +{ +public: + ButterworthFilterDesigner() = delete; // we are only static + static void designThreePoleLowpass(BiquadParams& pOut, T frequency); + static void designTwoPoleLowpass(BiquadParams& pOut, T frequency); +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.cpp new file mode 100644 index 00000000..07189deb --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.cpp @@ -0,0 +1,283 @@ + +#include +#include + +#include "AudioMath.h" +#include "FormantTables2.h" + + +static const float freqLookup[FormantTables2::numModels][FormantTables2::numFormantBands][FormantTables2::numVowels] = { + // model = 0(bass) + { + // F1 a + //0=a,1=e,2=i, 3=o 4=u + {600, 400, 250, 400, 350}, + // F2 + {1040, 1620, 1750, 750, 600}, + // F3 + {2250, 2400, 2600, 2400, 2400}, + // F4 + {2450, 2800, 3050, 2600, 2675}, + //F5 + {2750, 3100, 3340, 2900, 2950} + }, + //1(tenor) + { + // F1 + //0=a,1=e,2=i, 3=o 4=u + {650, 400, 290, 400, 350 }, + // F2 + {1080, 1700, 1870, 800, 600 }, + // F3 + {2650, 2600, 2800, 2600, 2700}, + // F4 + {2900, 3200, 3250, 2800, 2900}, + //F5 + {3250, 3850, 3540, 3000, 3300} + }, + //2(countertenor) + { + // F1 + //0=a,1=e,2=i, 3=o 4=u + {660, 440, 270, 430, 370}, + // F2 + {1120, 1800, 1850, 820, 630}, + // F3 + {2750, 2700, 2900, 2700, 2750}, + // F4 + {3000, 3000, 3350, 3000, 3000}, + //F5 + {3350, 3300, 3590, 3300, 3400} + }, + //3(alto) + { + // F1 + //0=a,1=e,2=i, 3=o 4=u + {800, 400, 350, 450, 325}, + // F2 + {1150, 1600, 1700, 800, 700}, + // F3 + {2800, 2700, 2700, 2830, 2530}, + // F4 + {3500, 3300, 3700, 3500, 3500}, + //F5 + {4950, 4950, 4950, 4950, 4950} + }, + // 4(soprano) + { + // F1 + //0=a,1=e,2=i, 3=o 4=u + {800, 350, 270, 450, 325}, + // F2 + {1150, 2000, 2140, 800, 700}, + // F3 + {2900, 2800, 2950, 2830, 2700}, + // F4 + {3900, 3600, 3900, 3800, 3800}, + //F5 + {4950, 4950, 4950, 4950, 4950} + } +}; + +static const float bwLookup[FormantTables2::numModels][FormantTables2::numFormantBands][FormantTables2::numVowels] = { + // model = 0(bass) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {60, 40, 60, 40, 40}, + // F2 + {70, 80, 90, 80, 80}, + // F3 + {110, 100, 100, 100, 100}, + // F4 + {120, 120, 120, 120, 120}, + //F5 + {130, 120, 120, 120, 120} + }, + //1(tenor) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {80, 70, 40, 70, 40}, + // F2 + {90, 80, 90, 80, 60}, + // F3 + {120, 100, 100, 100, 100}, + // F4 + {130, 120, 120, 130, 120}, + // F5 + {140, 120, 120, 135, 120} + }, + //2(countertenor) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {80, 70, 40, 40, 40}, + // F2 + {90, 80, 90, 80, 60}, + // F3 + {120, 100, 100, 100, 100}, + // F4 + {130, 120, 120, 120, 120}, + //F5 + {140, 120, 120, 120, 120} + }, + //3(alto) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {80, 60, 50, 70, 50 }, + // F2 + {90, 80, 100, 80, 60}, + // F3 + {120, 120, 120, 100, 170}, + // F4 + {130, 150, 150, 130, 180}, + //F5 + {140, 200, 200, 135, 200} + }, +// 4(soprano) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {80, 60, 60, 40, 50}, + // F2 + {90, 100, 90, 80, 60}, + // F3 + {120, 120, 100, 100, 170}, + // F4 + {130, 150, 120, 120, 180}, + //F5 + {140, 200, 120, 120, 200} + } +}; + +static const float gainLookup[FormantTables2::numModels][FormantTables2::numFormantBands][FormantTables2::numVowels] = { + // model = 0(bass) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {0, 0, 0, 0, 0, }, + // F2 + {-7, -12, -30, -11, -20}, + // F3 + {-9, -9, -16, -21, -32}, + // F4 + {-12, -12, -22, -20, -28}, + //F5 + {-18, -18, -28, -40, -36} + }, + //1(tenor) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {0, 0, 0, 0, 0}, + // F2 + {-6, -14, -15, -10, -20}, + // F3 + {-7, -12, -18, -12, -17}, + // F4 + {-8, -14, -20, -12, -14}, + //F5 + {-22, -20, -30, -26, -26} + }, + //2(countertenor) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {0, 0, 0, 0, 0}, + // F2 + {-6, -14, -24, -10, -20}, + // F3 + {-23, -18, -24, -26, -23}, + // F4 + {-24, -20, -36, -22, -30}, + //F5 + {-38, -20, -36, -34, -34} + }, + //3(alto) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {0, 0, 0, 0, 0}, + // F2 + {-4, -24, -30, -9, -12}, + // F3 + {-20, -30, -30, -16, -30}, + // F4 + {-36, -35, -36, -28, -40}, + //F5 + {-60, -60, -60, -55, -64} + }, + // 4(soprano) + { + // F1 0 = a, 1 = e, 2 = i, 3 = o 4 = u + {0, 0, 0, 0, 0}, + // F2 + {-6, -20, -12, -11, -16}, + // F3 + {-32, -15, -26, -22, -35}, + // F4 + {-20, -40, -26, -22, -40}, + //F5 + {-50, -56, -44, -50, -60} + } +}; + +FormantTables2::FormantTables2() +{ + + for (int model = 0; model < numModels; ++model) { + for (int formantBand = 0; formantBand < numFormantBands; ++formantBand) { + + LookupTableParams& fparams = freqInterpolators[model][formantBand]; + const float *freqValues = freqLookup[model][formantBand]; + + // It would be more efficient to init the tables with logs, but this + // on the fly conversion is fine. + float temp[numVowels]; + for (int vowel = 0; vowel < numVowels; ++vowel) { + temp[vowel] = std::log2(freqValues[vowel]); + } + LookupTable::initDiscrete(fparams, numVowels, temp); + + // Init Wb lookups with normalized bw ( f2-f1 / fc) + LookupTableParams& bwparams = bwInterpolators[model][formantBand]; + const float *bwValues = bwLookup[model][formantBand]; + for (int vowel = 0; vowel < numVowels; ++vowel) { + temp[vowel] = bwValues[vowel] / freqValues[vowel]; + } + + LookupTable::initDiscrete(bwparams, numVowels, temp); + + LookupTableParams& gparams = gainInterpolators[model][formantBand]; + const float* gainValues = gainLookup[model][formantBand]; + for (int vowel = 0; vowel < numVowels; ++vowel) { + // temp[vowel] = (float) AudioMath::gainFromDb(gainValues[vowel]); + // let's leave these as db + temp[vowel] = gainValues[vowel]; + } + LookupTable::initDiscrete(gparams, numVowels, temp); + } + } +} + +float FormantTables2::getLogFrequency(int model, int formantBand, float vowel) +{ + assert(model >= 0 && model <= numModels); + assert(formantBand >= 0 && formantBand <= numFormantBands); + assert(vowel >= 0 && vowel < numVowels); + + LookupTableParams& params = freqInterpolators[model][formantBand]; + return LookupTable::lookup(params, vowel); +} + +float FormantTables2::getNormalizedBandwidth(int model, int formantBand, float vowel) +{ + assert(model >= 0 && model <= numModels); + assert(formantBand >= 0 && formantBand <= numFormantBands); + assert(vowel >= 0 && vowel < numVowels); + + LookupTableParams& params = bwInterpolators[model][formantBand]; + return LookupTable::lookup(params, vowel); +} +float FormantTables2::getGain(int model, int formantBand, float vowel) +{ + assert(model >= 0 && model <= numModels); + assert(formantBand >= 0 && formantBand <= numFormantBands); + assert(vowel >= 0 && vowel < numVowels); + + LookupTableParams& params = gainInterpolators[model][formantBand]; + return LookupTable::lookup(params, vowel); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.h b/plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.h new file mode 100644 index 00000000..bae1b7e3 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/FormantTables2.h @@ -0,0 +1,29 @@ +#pragma once +#include "LookupTable.h" + +class FormantTables2 +{ +public: + static const int numVowels = 5; + static const int numModels = 5; + static const int numFormantBands = 5; + /** + * Interpolates the frequency using lookups + * @param model = 0(bass) 1(tenor) 2(countertenor) 3(alto) 4(soprano) + * @param index = 0..4 (formant F1..F5) + * @param vowel is the continuous index into the per/vowel lookup tables (0..4) + * 0 = a, 1 = e, 2=i, 3 = o 4 = u + */ + float getLogFrequency(int model, int index, float vowel); + float getNormalizedBandwidth(int model, int index, float vowel); + float getGain(int model, int index, float vowel); + + FormantTables2(); + FormantTables2(const FormantTables2&) = delete; + const FormantTables2& operator==(const FormantTables2&) = delete; +private: + + LookupTableParams freqInterpolators[numModels][numFormantBands]; + LookupTableParams bwInterpolators[numModels][numFormantBands]; + LookupTableParams gainInterpolators[numModels][numFormantBands]; +}; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.cpp new file mode 100644 index 00000000..4830e45d --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.cpp @@ -0,0 +1,220 @@ +/** + * HilbertFilterDesigner + * generate a pair of Hilbert filters + */ + +#include "HilbertFilterDesigner.h" +#include "DspFilter.h" +#include "BiquadFilter.h" +#include + + +const int hilbertOrder = 6; +const bool dumpHilbert = false; + +namespace Dsp { + + /* with these looked up poles, and a "cutoff freq" of 4. + * the filter is good from 4hz to 4k, + * with a phase error ripple about +- .15 degrees + */ + + const double leftPoles[] = { + .3609, + 2.7412, + 11.1573, + 44.7581, + 179.6242, + 798.4578 + }; + + const double rightPoles[] = { + 1.2524, + 5.5671, + 22.3423, + 89.6271, + 364.7914, + 2770.1114 + }; + + const double shift = 4; + + struct Hilb : Prototype + { + + double log2(double x) + { + return log(x) / log(2.0); + } + void dump() + { + printf("log2(2) = %f 8=%f\n", log2(2), log2(8)); + double lastLog = 0; + for (int i = 0; i < 6; ++i) { + double l = shift * leftPoles[i]; + double r = shift * rightPoles[i]; + + printf("i=%d left pole = %f right = %f ratio = %f\n", i, l, r, r / l); + + printf(" log(left)=%f, log(r)=%f\n", log2(l), log2(r)); + + if (i == 0) { + printf(" delta log(r)=%f\n", log2(r) - log2(l)); + + } else { + printf(" delta log(l0=%f (r)=%f\n", log2(l) - lastLog, log2(r) - log2(l)); + } + lastLog = log2(r); + + + if (i > 0) { + double l0 = leftPoles[i - 1]; + double r0 = rightPoles[i - 1]; + printf("L/Lprev = %f, R/Rprev=%f\n", l / l0, r / r0); + } + } + } + + void Design(const Spec &spec) + { + + int n = spec.order; + assert(n == hilbertOrder); + + if (dumpHilbert) + dump(); + + const bool side = spec.rollOff > .5 ? true : false; + + SetPoles(n); + SetZeros(n); + + for (int i = 0; i < n; ++i) { + double f = side ? leftPoles[i] : rightPoles[i]; + Pole(i) = Complex(-f, 0); // TODO: why do we need this negative sign? + Zero(i) = Complex(f, 0); + } + + m_normal.w = 0; + m_normal.gain = 1; + +#ifdef _LOG + Roots & zeros = Zeros(); + Roots & poles = Poles(); + + for (int i = 0; i < n; ++i) { + char buf[512]; + sprintf(buf, "in hibdes i=%d pole = %f,%f i zero = %f,%f i\n", i, + poles.GetNth(i).real(), + poles.GetNth(i).imag(), + zeros.GetNth(i).real(), + zeros.GetNth(i).imag()); + DebugUtil::trace(buf); + + } +#endif + } + }; + + + struct Hilbert : PoleFilterSpace + { + void SetupAs(bool leftSide, double sampleRate) + { + Spec spec; + spec.order = hilbertOrder; + + spec.cutoffFreq = shift; + spec.sampleRate = sampleRate; + + spec.rollOff = leftSide ? 1 : 0; // jam side parameter into this obscure member + PoleFilterSpace::Setup(spec); + } + }; + + + /** just a simple allpass, for debugging + */ +#if 0 + struct HilbTest : Prototype + { + public: + void Design(const Spec &spec) + { + int n = spec.order; + assert(n == hilbertOrderTest); + + const bool side = spec.rollOff > .5 ? true : false; + + + SetPoles(n); + SetZeros(n); + + assert(n == 1); + + double f = .25; + Pole(0) = Complex(-f, 0); + Zero(0) = Complex(f, 0); + + + m_normal.w = 0; + m_normal.gain = 1; + + + +#ifdef _LOG + Roots & zeros = Zeros(); + Roots & poles = Poles(); + + for (int i = 0; i < n; ++i) { + char buf[512]; + sprintf(buf, "i=%d pole = %f,%f i zero = %f,%f i\n", i, + poles.GetNth(i).real(), + poles.GetNth(i).imag(), + zeros.GetNth(i).real(), + zeros.GetNth(i).imag()); + DebugUtil::trace(buf); + + } +#endif + } + }; + + struct HilbertTest : PoleFilterSpace + { + void SetupAs(CalcT cutoffFreq, bool side) + { + Spec spec; + spec.order = hilbertOrderTest; + + spec.cutoffFreq = cutoffFreq * 1; + spec.sampleRate = 44100; + + spec.rollOff = side ? 1 : 0; // jam side parameter into this obscure member + PoleFilterSpace::Setup(spec); + } + }; +#endif +} + + + + +template +void HilbertFilterDesigner::design(double sampleRate, BiquadParams& outSin, BiquadParams& outCos) +{ + Dsp::Hilbert hilbert; + + hilbert.SetupAs(false, sampleRate); + + BiquadFilter::fillFromStages(outSin, hilbert.Stages(), hilbert.GetStageCount()); + hilbert.SetupAs(true, sampleRate); + BiquadFilter::fillFromStages(outCos, hilbert.Stages(), hilbert.GetStageCount()); +} + +// Explicit instantiation, so we can put implementation into .cpp file +// TODO: option to take out double version (if we don't need it) +// Or put all in header +template class HilbertFilterDesigner; +template class HilbertFilterDesigner; + diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.h b/plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.h new file mode 100644 index 00000000..8ed1f1b9 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/HilbertFilterDesigner.h @@ -0,0 +1,15 @@ +#pragma once + +template +class BiquadParams; + +template +class HilbertFilterDesigner +{ +public: + HilbertFilterDesigner() = delete; // we are only static + /** + * generates a pair of biquads, on will be 90 degrees shifter from the other + */ + static void design(double sampleRate, BiquadParams& pOutSin, BiquadParams& pOutCos); +}; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/filters/StateVariableFilter.h b/plugins/community/repos/squinkylabs-plug1/dsp/filters/StateVariableFilter.h new file mode 100644 index 00000000..a9a61109 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/filters/StateVariableFilter.h @@ -0,0 +1,156 @@ +#pragma once + +#include "AudioMath.h" + +template class StateVariableFilterState; +template class StateVariableFilterParams; + +/** + * + * |-----------------------------------------------------> hi pass + * | |->Band (+)----->Notch + * | | | + * input ->( + )------|---> Fc >--(+)-|-> Z**-1 >-|-> Fc >->(+)------>-.--|--> LowPass + * |(-1) | (-1) | | | | | + * | | |-<--------<---| |- +class StateVariableFilter +{ +public: + StateVariableFilter() = delete; // we are only static + static T run(T input, StateVariableFilterState& state, const StateVariableFilterParams& params); + +}; + +template +inline T StateVariableFilter::run(T input, StateVariableFilterState& state, const StateVariableFilterParams& params) +{ + const T dLow = state.z2 + params.fcGain * state.z1; + const T dHi = input - (state.z1 * params.qGain + dLow); + T dBand = dHi * params.fcGain + state.z1; + + // TODO: figure out why we get these crazy values +#if 1 + if (dBand >= 1000) { + dBand = 999; // clip it + } + if (dBand < -1000) { + dBand = -999; // clip it + } + +#endif + + T d; + switch (params.mode) { + case StateVariableFilterParams::Mode::LowPass: + d = dLow; + break; + case StateVariableFilterParams::Mode::HiPass: + d = dHi; + break; + case StateVariableFilterParams::Mode::BandPass: + d = dBand; + break; + case StateVariableFilterParams::Mode::Notch: + d = dLow + dHi; + break; + default: + assert(false); + d = 0.0; + } + + state.z1 = dBand; + state.z2 = dLow; + + return d; +} + +/****************************************************************/ + +template +class StateVariableFilterParams +{ +public: + friend StateVariableFilter; + enum class Mode + { + BandPass, LowPass, HiPass, Notch + }; + + /** + * Set the filter Q. + * Values must be > .5 + */ + void setQ(T q); + + /** + * Normalized bandwidth is bw / fc + * Also is 1 / Q + */ + void setNormalizedBandwidth(T bw); + T getNormalizedBandwidth() const + { + return qGain; + } + + /** + * Set the center frequency. + * units are 1 == sample rate + */ + void setFreq(T f); + void setMode(Mode m) + { + mode = m; + } +private: + Mode mode = Mode::BandPass; + T qGain = 1.; // internal amp gains + T fcGain = T(.001); +}; + +template +inline void StateVariableFilterParams::setQ(T q) +{ + if (q < .49) { + assert(false); + q = T(.6); + } + qGain = 1 / q; +} + +template +inline void StateVariableFilterParams::setNormalizedBandwidth(T bw) +{ + qGain = bw; +} + +template +inline void StateVariableFilterParams::setFreq(T fc) +{ + // Note that we are skipping the high freq warping. + // Going for speed over accuracy + fcGain = T(AudioMath::Pi) * T(2) * fc; +} + +/*******************************************************************************************/ + +template +class StateVariableFilterState +{ +public: + T z1 = 0; // the delay line buffer + T z2 = 0; // the delay line buffer +}; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/generators/MultiModOsc.h b/plugins/community/repos/squinkylabs-plug1/dsp/generators/MultiModOsc.h new file mode 100644 index 00000000..abbf9d5c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/generators/MultiModOsc.h @@ -0,0 +1,128 @@ +#pragma once + +#include + +#include "SawOscillator.h" + +/** + * A bunch of LFOs at slightly different frequencies added together in different ways. + * Taken from Bernie Hutchins' ElectroNotes. + */ +template +class MultiModOsc +{ +public: + MultiModOsc() = delete; + /** + * Make state and params be nested classes so we don't have + * to type as many template arguments. + */ + class State + { + public: + friend MultiModOsc; + private: + SawOscillatorState states[NOsc]; + }; + class Params + { + public: + friend MultiModOsc; + Params(); + /** + * @param rate is -1..1 arbitrary "low frequency" units + */ + void setRateAndSpread(T rate, T spread, int matrixMode, T inverseSampleRate); + private: + SawOscillatorParams params[NOsc]; + int matrixMode = 0; + }; + + static void run(T * output, State&, const Params&); +}; + +template +inline MultiModOsc::Params::Params() +{ + setRateAndSpread(.5, .5, 0, T(1.0 / 44100)); +} + +template +inline void MultiModOsc::Params::setRateAndSpread(T rate, T spread, int inMatrixMode, T inverseSampleRate) +{ + assert(rate >= -10 && rate <= 10); // just a sanity check + assert(inverseSampleRate > (1.0 / 200000)); + assert(inverseSampleRate < (1.0 / 2000)); // same + + T BaseRate = 1.0; + BaseRate *= std::pow(T(3), rate); + const T dNormSpread = spread * T((3.0 / 2.0) + .5); + for (int i = 0; i < NOsc; i++) { + T dMult = 1; + switch (i) { + case 1: + dMult = 1 / T(1.11); + break; + case 0: + dMult = 1.0; + break; + case 2: + dMult = T(1.32); + break; + case 3: + dMult = 1.25; + break; + case 4: + dMult = 1.5; + break; + default: + assert(false); + } + dMult -= 1.0; // norm to 0 + dMult *= dNormSpread; + dMult += 1.0; + + const T x = BaseRate * dMult; + const T actual = x * inverseSampleRate; + SawOscillator::setFrequency(params[i], actual); + this->matrixMode = inMatrixMode; + + } +} + +template +inline void MultiModOsc::run(T* output, State& state, const Params& params) +{ + T modulators[NOsc]; + for (int i = 0; i < NOsc; ++i) { + modulators[i] = SawOscillator::runTri(state.states[i], params.params[i]); + } + // The old implementation had a smarter algorithm, but + // for now hard-wiring it for 4/3 is OK + if ((NOsc == 4) && (NOut == 3)) { + switch (params.matrixMode) { + case 0: // classic mix + output[0] = modulators[0] + modulators[1] + modulators[2]; // not 3 + output[1] = modulators[0] + modulators[1] + modulators[3]; // not 2 + output[2] = modulators[0] + modulators[2] + modulators[3]; // not 1 + break; + case 1: + // slight variation on classic + output[0] = modulators[0] + modulators[1] + modulators[2]; // not 3 + output[1] = modulators[1] + modulators[2] + modulators[3]; // not 0 + output[2] = modulators[0] + modulators[2] + modulators[3]; // not 1 + break; + case 2: + // invert some + output[0] = modulators[0] + modulators[1] + modulators[2]; // not 3 + output[1] = -modulators[0] + modulators[2] + modulators[3]; // not 0 + output[2] = -modulators[1] - modulators[2] - modulators[3]; // not 1 + break; + default: + assert(false); + + } + } else { + assert(false); // need to return something + } +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/generators/SawOscillator.h b/plugins/community/repos/squinkylabs-plug1/dsp/generators/SawOscillator.h new file mode 100644 index 00000000..1290096c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/generators/SawOscillator.h @@ -0,0 +1,103 @@ +#pragma once + +/** + * SawOscillator + * + * Good features: + * frequency may be adjusted while running without glitches + * can generate a quadrature output + * can be configured to do positive and negative frequency + */ +template class SawOscillatorParams; +template class SawOscillatorState; + +template +class SawOscillator +{ +public: + SawOscillator() = delete; // we are only static + static void setFrequency(SawOscillatorParams& params, T freq); // TODO: so we want setters on params? + + // Generates a saw wave from 0..1 + static T runSaw(SawOscillatorState& state, const SawOscillatorParams& params); + + // Generates a triangle wave from -1..1 + static T runTri(SawOscillatorState& state, const SawOscillatorParams& params); + + /** + * gets the regular output and the quadrature output + */ + static void runQuadrature(T& out, T& outQuad, SawOscillatorState& state, const SawOscillatorParams& params); +}; + +template +inline T SawOscillator::runSaw(SawOscillatorState& state, const SawOscillatorParams& params) +{ + T ret = state.phase; + state.phase += params.phaseIncrement; + if (state.phase >= 1) { + state.phase -= 1; + } + + if (frequencyCanBeNegative && (state.phase < 0)) { + state.phase += 1; + } + + return ret; +} + + +template +inline T SawOscillator::runTri(SawOscillatorState& state, const SawOscillatorParams& params) +{ + T output = 4 * runSaw(state, params); // Saw 0...4 + // printf("in tri, 4x = %f ", output); + if (output > 3) { + output -= 4; + } else if (output > 1) { + output = 2 - output; + } + // printf("final = %f \n", output); + return output; +} + +template +inline void SawOscillator::runQuadrature(T& out, T& outQuad, SawOscillatorState& state, const SawOscillatorParams& params) +{ + out = runSaw(state, params); + T quad = out + T(.25); + if (quad >= 1) { + quad -= 1; + } + outQuad = quad; +} + + + +template +inline void SawOscillator::setFrequency(SawOscillatorParams& params, T freq) +{ + if (frequencyCanBeNegative) { + assert(freq >= -.5 && freq < .5); + } else { + assert(freq >= 0 && freq < .5); + } + params.phaseIncrement = freq; +} + +template +class SawOscillatorParams +{ +public: + T phaseIncrement = 0; +}; + +template +class SawOscillatorState +{ +public: + /** + * phase increments from 0...1 + */ + T phase = 0; +}; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/generators/SinOscillator.h b/plugins/community/repos/squinkylabs-plug1/dsp/generators/SinOscillator.h new file mode 100644 index 00000000..1b74b3f8 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/generators/SinOscillator.h @@ -0,0 +1,87 @@ +#pragma once + +#include "AudioMath.h" +#include "LookupTable.h" +#include "ObjectCache.h" +#include "SawOscillator.h" + +template class SinOscillatorParams; +template class SinOscillatorState; + +/** + * A simple sin oscillator based on lookup table. + * Advantage: + * fast. + * frequency may be changed without phase discontinuity. + * Optional quadrature output. + * Disadvantage: + * Not the best spectral purity (significant amount of phase jitter) + */ +template +class SinOscillator +{ +public: + SinOscillator() = delete; // we are only static + static void setFrequency(SinOscillatorParams&, T frequency); + static T run(SinOscillatorState&, const SinOscillatorParams&); + static void runQuadrature(T& output, T& outputQuadrature, SinOscillatorState&, const SinOscillatorParams&); +}; + +template +inline void SinOscillator::setFrequency(SinOscillatorParams& params, T frequency) +{ + + std::function f = AudioMath::makeFunc_Sin(); + + // TODO: figure out a better initialization strategy + // and a better strategy for table size + // with 4096 thd was -130 db. let's use less memory! + // if (!params.lookupParams.isValid()) { + // LookupTable::init(params.lookupParams, 256, 0, 1, f); + // } + assert(params.lookupParams->isValid()); + + SawOscillator::setFrequency(params.sawParams, frequency); +} + +template +inline T SinOscillator::run( + SinOscillatorState& state, const SinOscillatorParams& params) +{ + + const T temp = SawOscillator::runSaw(state.sawState, params.sawParams); + const T ret = LookupTable::lookup(*params.lookupParams, temp); + return ret; +} + +template +inline void SinOscillator::runQuadrature( + T& output, T& outputQuadrature, SinOscillatorState& state, const SinOscillatorParams& params) +{ + + T saw, quadratureSaw; + SawOscillator::runQuadrature(saw, quadratureSaw, state.sawState, params.sawParams); + output = LookupTable::lookup(*params.lookupParams, saw); + outputQuadrature = LookupTable::lookup(*params.lookupParams, quadratureSaw); +}; + +template +class SinOscillatorParams +{ +public: + SawOscillatorParams sawParams; + // LookupTableParams lookupParams; + std::shared_ptr> lookupParams; + SinOscillatorParams() + { + lookupParams = ObjectCache::getSinLookup(); + } + SinOscillatorParams(const SinOscillatorParams&) = delete; +}; + +template +class SinOscillatorState +{ +public: + SawOscillatorState sawState; +}; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.cpp new file mode 100644 index 00000000..b45b54fb --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.cpp @@ -0,0 +1,2815 @@ +/******************************************************************************* + +"A Collection of Useful C++ Classes for Digital Signal Processing" +By Vincent Falco + +Official project location: +http://code.google.com/p/dspfilterscpp/ + +See DspFilter.cpp for notes and bibliography. + +-------------------------------------------------------------------------------- + +License: MIT License (http://www.opensource.org/licenses/mit-license.php) +Copyright (c) 2009 by Vincent Falco + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +******************************************************************************** + +Please direct all comments to either the music-dsp mailing list or +the DSP and Plug-in Development forum: + + http://music.columbia.edu/cmc/music-dsp/ + + http://www.kvraudio.com/forum/viewforum.php?f=33 + http://www.kvraudio.com/forum/ + +Support is provided for performing N-order Dsp floating point filter +operations on M-channel data with a caller specified floating point type. +The implementation breaks a high order IIR filter down into a series of +cascaded second order stages. Tests conclude that numerical stability is +maintained even at higher orders. For example the Butterworth low pass +filter is stable at up to 53 poles. + +Processing functions are provided to use either Direct Form I or Direct +Form II of the filter transfer function. Direct Form II is slightly faster +but can cause discontinuities in the output if filter parameters are changed +during processing. Direct Form I is slightly slower, but maintains fidelity +even when parameters are changed during processing. + +To support fast parameter changes, filters provide two functions for +adjusting parameters. A high accuracy Setup() function, and a faster +form called SetupFast() that uses approximations for trigonometric +functions. The approximations work quite well and should be suitable for +most applications. + +Channels are stored in an interleaved format with M samples per frame +arranged contiguously. A single class instance can process all M channels +simultaneously in an efficient manner. A 'skip' parameter causes the +processing function to advance by skip additional samples in the destination +buffer in between every frame. Through manipulation of the skip paramter it +is possible to exclude channels from processing (for example, only processing +the left half of stereo interleaved data). For multichannel data which is +not interleaved, it will be necessary to instantiate multiple instance of +the filter and set skip=0. + +There are a few other utility classes and functions included that may prove useful. + +Classes: + +Order for PoleFilterSpace derived classes is specified in the number of poles, +except for band pass and band stop filters, for which the number of pole pairs +is specified. + +For some filters there are two versions of Setup(), the one called +SetupFast() uses approximations to trigonometric functions for speed. +This is an option if you are doing frequent parameter changes to the filter. + +There is an example function at the bottom that shows how to use the classes. + + +For a tutorial on digital filter design these are useful resources: + +http://crca.ucsd.edu/~msp/techniques/v0.08/book-html/node1.html + + - Need fast version of pow( 10, x ) + + - Able to specify band-width in octaves + + - Specify center frequency by midi note number + F = 440 * 2^((d-69)/12) where D is your midi note. + know that middle C is considered 60. + http://en.wikipedia.org/wiki/MIDI_Tuning_Standard + +-------------------------------------------------------------------------------- + +PoleFilterSpace ideas are based on a java applet (http://www.falstad.com/dfilter/) +developed by Paul Falstad. + +All of this code was written by the author Vincent Falco except where marked. + +*******************************************************************************/ + +#ifdef _UNITTEST + +#include "DebugUtil.h" +#define bassert assert +#endif + +#include "DspFilter.h" +#include +#include + + + +//------------------------------------------------------------------------------ + +#ifdef _MSC_VER + #define DSP_SSE3_AVAIL +#else + // other build environments +#endif + +//------------------------------------------------------------------------------ + +#ifdef _MSC_VER + #ifdef DSP_SSE3_AVAIL + #include + #include + #endif +#else + // other build environments +#endif + + +//static void dumpRoots(const char * title, Dsp::Roots &roots); + +//****************************************************************************** + +namespace Dsp +{ + + //-------------------------------------------------------------------------- + + // Brent's method is a numerical analysis technique for finding the + // minimum (or maximum) of a function. For filters, we use this to + // normalize the gain of a filter by finding the location where the + // filter has the highest magnitude response, and scaling the output + // by the reciprocal of the magnitude to reach unity gain. For most + // filters this is unnecessary, because we can just sample the response + // at a well known angular frequency. For example, w=0 for a low pass, + // w=pi for a high pass, the geometric center of the passband on a band-pass + // or 0 or pi for a band-stop. For filters with ripple we use a simple + // adjustment based on the ripple amount and whether or not the filter + // is of odd order. However, Brent's method is included in case anyone + // needs it. + + // Implementation of Brent's Method provided by + // John D. Cook (http://www.johndcook.com/) + // The return value of Minimize is the minimum of the function f. + // The location where f takes its minimum is returned in the variable minLoc. + // Notation and implementation based on Chapter 5 of Richard Brent's book + // "Algorithms for Minimization Without Derivatives". + template + CalcT BrentMinimize + ( + TFunction& f, // [in] objective function to minimize + CalcT leftEnd, // [in] smaller value of bracketing interval + CalcT rightEnd, // [in] larger value of bracketing interval + CalcT epsilon, // [in] stopping tolerance + CalcT& minLoc // [out] location of minimum + ) + { + CalcT d, e, m, p, q, r, tol, t2, u, v, w, fu, fv, fw, fx; + static const CalcT c = 0.5*(3.0 - ::std::sqrt(5.0)); + static const CalcT SQRT_DBL_EPSILON = ::std::sqrt(DBL_EPSILON); + + CalcT& a = leftEnd; CalcT& b = rightEnd; CalcT& x = minLoc; + + v = w = x = a + c*(b - a); d = e = 0.0; + fv = fw = fx = f(x); + int counter = 0; + loop: + counter++; + m = 0.5*(a + b); + tol = SQRT_DBL_EPSILON*::fabs(x) + epsilon; t2 = 2.0*tol; + // Check stopping criteria + if (::fabs(x - m) > t2 - 0.5*(b - a)) + { + p = q = r = 0.0; + if (::fabs(e) > tol) + { + // fit parabola + r = (x - w)*(fx - fv); + q = (x - v)*(fx - fw); + p = (x - v)*q - (x - w)*r; + q = 2.0*(q - r); + (q > 0.0) ? p = -p : q = -q; + r = e; e = d; + } + if (::fabs(p) < ::fabs(0.5*q*r) && p < q*(a - x) && p < q*(b - x)) + { + // A parabolic interpolation step + d = p/q; + u = x + d; + // f must not be evaluated too close to a or b + if (u - a < t2 || b - u < t2) + d = (x < m) ? tol : -tol; + } + else + { + // A golden section step + e = (x < m) ? b : a; + e -= x; + d = c*e; + } + // f must not be evaluated too close to x + if (::fabs(d) >= tol) + u = x + d; + else if (d > 0.0) + u = x + tol; + else + u = x - tol; + fu = f(u); + // Update a, b, v, w, and x + if (fu <= fx) + { + (u < x) ? b = x : a = x; + v = w; fv = fw; + w = x; fw = fx; + x = u; fx = fu; + } + else + { + (u < x) ? a = u : b = u; + if (fu <= fw || w == x) + { + v = w; fv = fw; + w = u; fw = fu; + } + else if (fu <= fv || v == x || v == w) + { + v = u; fv = fu; + } + } + goto loop; // Yes, the dreaded goto statement. But the code + // here is faithful to Brent's orginal pseudocode. + } + return fx; + } + + //-------------------------------------------------------------------------- + // + // Fast Trigonometric Functions + // + //-------------------------------------------------------------------------- + + // Three approximations for both sine and cosine at a given angle. + // The faster the routine, the larger the error. + // From http://lab.polygonal.de/2007/07/18/fast-and-accurate-sinecosine-approximation/ + + // Tuned for maximum pole stability. r must be in the range 0..kPi + // This one breaks down considerably at the higher angles. It is + // included only for educational purposes. + inline void fastestsincos( CalcT r, CalcT *sn, CalcT *cs ) + { + const CalcT c=0.70710678118654752440; // std::sqrt(2)/2 + CalcT v=(2-4*c)*r*r+c; + if(r kPi) x -= 2*kPi; + //compute sine + if (x < 0) *sn = 1.27323954 * x + 0.405284735 * x * x; + else *sn = 1.27323954 * x - 0.405284735 * x * x; + //compute cosine: sin(x + PI/2) = cos(x) + x += kPi_2; + if (x > kPi ) x -= 2*kPi; + if (x < 0) *cs = 1.27323954 * x + 0.405284735 * x * x; + else *cs = 1.27323954 * x - 0.405284735 * x * x; + } + + // Slower than ::fastersincos() but still faster than + // sin(), and with the best accuracy of these routines. + inline void fastsincos( CalcT x, CalcT *sn, CalcT *cs ) + { + CalcT s, c; + //always wrap input angle to -PI..PI + if (x < -kPi) x += 2*kPi; + else if (x > kPi) x -= 2*kPi; + //compute sine + if (x < 0) + { + s = 1.27323954 * x + .405284735 * x * x; + if (s < 0) s = .225 * (s * -s - s) + s; + else s = .225 * (s * s - s) + s; + } + else + { + s = 1.27323954 * x - 0.405284735 * x * x; + if (s < 0) s = .225 * (s * -s - s) + s; + else s = .225 * (s * s - s) + s; + } + *sn=s; + //compute cosine: sin(x + PI/2) = cos(x) + x += kPi_2; + if (x > kPi ) x -= 2*kPi; + if (x < 0) + { + c = 1.27323954 * x + 0.405284735 * x * x; + if (c < 0) c = .225 * (c * -c - c) + c; + else c = .225 * (c * c - c) + c; + } + else + { + c = 1.27323954 * x - 0.405284735 * x * x; + if (c < 0) c = .225 * (c * -c - c) + c; + else c = .225 * (c * c - c) + c; + } + *cs=c; + } + + // Faster approximations to std::sqrt() + // From http://ilab.usc.edu/wiki/index.php/Fast_Square_Root + // The faster the routine, the more error in the approximation. + + // Log Base 2 Approximation + // 5 times faster than std::sqrt() + + inline float fastsqrt1( float x ) + { + union { Int32 i; float x; } u; + u.x = x; + u.i = (Int32(1)<<29) + (u.i >> 1) - (Int32(1)<<22); + return u.x; + } + + inline double fastsqrt1( double x ) + { + union { Int64 i; double x; } u; + u.x = x; + u.i = (Int64(1)<<61) + (u.i >> 1) - (Int64(1)<<51); + return u.x; + } + + // Log Base 2 Approximation with one extra Babylonian Step + // 2 times faster than std::sqrt() + + inline float fastsqrt2( float x ) + { + float v=fastsqrt1( x ); + v = 0.5f * (v + x/v); // One Babylonian step + return v; + } + + inline double fastsqrt2(const double x) + { + double v=fastsqrt1( x ); + v = 0.5f * (v + x/v); // One Babylonian step + return v; + } + + // Log Base 2 Approximation with two extra Babylonian Steps + // 50% faster than std::sqrt() + + inline float fastsqrt3( float x ) + { + float v=fastsqrt1( x ); + v = v + x/v; + v = 0.25f* v + x/v; // Two Babylonian steps + return v; + } + + inline double fastsqrt3(const double x) + { + double v=fastsqrt1( x ); + v = v + x/v; + v = 0.25 * v + x/v; // Two Babylonian steps + return v; + } +}; + +//****************************************************************************** + +using namespace Dsp; + +//****************************************************************************** + +// Lightweight class for retrieving CPU information. +struct Cpu +{ +public: + struct Info + { + bool bMMX; + bool bSSE; + bool bSSE2; + bool bSSE3; + bool bSSSE3; // supplemental SSE3 + bool bSSE41; + bool bSSE42; + }; + + Cpu(); + + const Info &GetInfo( void ); + +protected: + Info m_info; +}; + +//------------------------------------------------------------------------------ + +Cpu::Cpu() +{ + m_info.bMMX=false; + m_info.bSSE=false; + m_info.bSSE2=false; + m_info.bSSE3=false; + m_info.bSSSE3=false; + m_info.bSSE41=false; + m_info.bSSE42=false; + +#ifdef _MSC_VER + int inf[4]; + __cpuid( inf, 0 ); + int nIds=inf[0]; + + if( nIds>=1 ) + { + __cpuid( inf, 1 ); + + m_info.bMMX =(inf[3]&(1<<23))!=0; + m_info.bSSE =(inf[3]&(1<<24))!=0; + m_info.bSSE2 =(inf[3]&(1<<25))!=0; + m_info.bSSE3 =(inf[2]&(1<<0))!=0; + m_info.bSSSE3 =(inf[2]&(1<<9))!=0; + m_info.bSSE41 =(inf[2]&(1<<19))!=0; + m_info.bSSE42 =(inf[2]&(1<<20))!=0; + } +#endif +} + +//------------------------------------------------------------------------------ + +const Cpu::Info &Cpu::GetInfo( void ) +{ + return m_info; +} + +//------------------------------------------------------------------------------ + +static Cpu gCpu; + +//****************************************************************************** +// +// Cascade +// +//****************************************************************************** + +Cascade::Cascade() +{ + m_stageCount=0; +} + +//------------------------------------------------------------------------------ + +int Cascade::GetStageCount( void ) +{ + return m_stageCount; +} + +//------------------------------------------------------------------------------ + +void Cascade::SetStageCount( int n ) +{ + assert( n>=1 && n<=m_stageMax ); + m_stageCount=n; +} + +//------------------------------------------------------------------------------ + +Cascade::Stage *Cascade::Stages( void ) +{ + return m_stage; +} + +//------------------------------------------------------------------------------ + +void Cascade::SetStage1( CalcT a1, CalcT a2, CalcT b0, CalcT b1, CalcT b2 ) +{ + m_stage->a[1]=a1; + m_stage->a[2]=a2; + m_stage->b[0]=b0; + m_stage->b[1]=b1; + m_stage->b[2]=b2; +} + +//------------------------------------------------------------------------------ + +void Cascade::Reset( void ) +{ + for( int i=0;iResponse_radian( w ) ); +} + +//****************************************************************************** +// +// CascadeFilter +// +//****************************************************************************** + +void CascadeFilter::Clear( void ) +{ + int n=m_nchan*GetStageCount(); + memset( m_histp, 0, n*sizeof(m_histp[0]) ); +} + +//------------------------------------------------------------------------------ + +// ALL SSE OPTIMIZATIONS ASSUME CalcT as double + +#ifdef DSP_SSE3_AVAIL + +template +static void ProcessISSEStageStereo( size_t frames, Ty *dest, Cascade::Stage *s, + CascadeFilter::Hist *h, int skip ) +{ +#if 1 + CalcT b0=s->b[0]; + __m128d m0=_mm_loadu_pd( &s->a[1] ); // a1 , a2 + __m128d m1=_mm_loadu_pd( &s->b[1] ); // b1 , b2 + __m128d m2=_mm_loadu_pd( &h[0].v[0] ); // h->v[0] , h->v[1] + __m128d m3=_mm_loadu_pd( &h[0].v[2] ); // h->v[2] , h->v[3] + __m128d m4=_mm_loadu_pd( &h[1].v[0] ); // h->v[0] , h->v[1] + __m128d m5=_mm_loadu_pd( &h[1].v[2] ); // h->v[2] , h->v[3] + + while( frames-- ) + { + CalcT in, b0in, out; + + __m128d m6; + __m128d m7; + + in=CalcT(*dest); + b0in=b0*in; + + m6=_mm_mul_pd ( m1, m2 ); // b1*h->v[0] , b2*h->v[1] + m7=_mm_mul_pd ( m0, m3 ); // a1*h->v[2] , a2*h->v[3] + m6=_mm_add_pd ( m6, m7 ); // b1*h->v[0] + a1*h->v[2], b2*h->v[1] + a2*h->v[3] + m7=_mm_load_sd( &b0in ); // b0*in , 0 + m6=_mm_add_sd ( m6, m7 ); // b1*h->v[0] + a1*h->v[2] + in*b0 , b2*h->v[1] + a2*h->v[3] + 0 + m6=_mm_hadd_pd( m6, m7 ); // b1*h->v[0] + a1*h->v[2] + in*b0 + b2*h->v[1] + a2*h->v[3], in*b0 + _mm_store_sd( &out, m6 ); + m6=_mm_loadh_pd( m6, &in ); // out , in + m2=_mm_shuffle_pd( m6, m2, _MM_SHUFFLE2( 0, 1 ) ); // h->v[0]=in , h->v[1]=h->v[0] + m3=_mm_shuffle_pd( m6, m3, _MM_SHUFFLE2( 0, 0 ) ); // h->v[2]=out, h->v[3]=h->v[2] + + *dest++=Ty(out); + + in=CalcT(*dest); + b0in=b0*in; + + m6=_mm_mul_pd ( m1, m4 ); // b1*h->v[0] , b2*h->v[1] + m7=_mm_mul_pd ( m0, m5 ); // a1*h->v[2] , a2*h->v[3] + m6=_mm_add_pd ( m6, m7 ); // b1*h->v[0] + a1*h->v[2], b2*h->v[1] + a2*h->v[3] + m7=_mm_load_sd( &b0in ); // b0*in , 0 + m6=_mm_add_sd ( m6, m7 ); // b1*h->v[0] + a1*h->v[2] + in*b0 , b2*h->v[1] + a2*h->v[3] + 0 + m6=_mm_hadd_pd( m6, m7 ); // b1*h->v[0] + a1*h->v[2] + in*b0 + b2*h->v[1] + a2*h->v[3], in*b0 + _mm_store_sd( &out, m6 ); + m6=_mm_loadh_pd( m6, &in ); // out , in + m4=_mm_shuffle_pd( m6, m4, _MM_SHUFFLE2( 0, 1 ) ); // h->v[0]=in , h->v[1]=h->v[0] + m5=_mm_shuffle_pd( m6, m5, _MM_SHUFFLE2( 0, 0 ) ); // h->v[2]=out, h->v[3]=h->v[2] + + *dest++=Ty(out); + + dest+=skip; + } + + // move history from registers back to state + _mm_storeu_pd( &h[0].v[0], m2 ); + _mm_storeu_pd( &h[0].v[2], m3 ); + _mm_storeu_pd( &h[1].v[0], m4 ); + _mm_storeu_pd( &h[1].v[2], m5 ); + +#else + // Template-specialized version from which the assembly was modeled + CalcT a1=s->a[1]; + CalcT a2=s->a[2]; + CalcT b0=s->b[0]; + CalcT b1=s->b[1]; + CalcT b2=s->b[2]; + while( frames-- ) + { + CalcT in, out; + + in=CalcT(*dest); + out=b0*in+b1*h[0].v[0]+b2*h[0].v[1] +a1*h[0].v[2]+a2*h[0].v[3]; + h[0].v[1]=h[0].v[0]; h[0].v[0]=in; + h[0].v[3]=h[0].v[2]; h[0].v[2]=out; + in=out; + *dest++=Ty(in); + + in=CalcT(*dest); + out=b0*in+b1*h[1].v[0]+b2*h[1].v[1] +a1*h[1].v[2]+a2*h[1].v[3]; + h[1].v[1]=h[1].v[0]; h[1].v[0]=in; + h[1].v[3]=h[1].v[2]; h[1].v[2]=out; + in=out; + *dest++=Ty(in); + + dest+=skip; + } +#endif +} + +#endif + +//------------------------------------------------------------------------------ + +template +void CascadeFilter::ProcessI( size_t frames, Ty *dest, int skip ) +{ +#ifdef DSP_SSE3_AVAIL + // Note there could be a loss of accuracy here. Unlike the original version + // of Process...() we are applying each stage to all of the input data. + // Since the underlying type Ty could be float, the results from this function + // may be different than the unoptimized version. However, it is much faster. + if( m_nchan==2 && gCpu.GetInfo().bSSE3 ) + { + int nstage=GetStageCount(); + Cascade::Stage *s=Stages(); + Hist *h=m_histp; + for( int i=nstage;i;i--,h+=2,s++ ) + { + ProcessISSEStageStereo( frames, dest, s, h, skip ); + } + } + else +#endif + { + int nstage=GetStageCount(); + Cascade::Stage *stagep=Stages(); + while( frames-- ) + { + Hist *h=m_histp; + for( int j=m_nchan;j;j-- ) + { + CalcT in=CalcT(*dest); + Cascade::Stage *s=stagep; + for( int i=nstage;i;i--,h++,s++ ) + { + CalcT out; + out=s->b[0]*in + s->b[1]*h->v[0] + s->b[2]*h->v[1] + + s->a[1]*h->v[2] + s->a[2]*h->v[3]; + h->v[1]=h->v[0]; h->v[0]=in; + h->v[3]=h->v[2]; h->v[2]=out; + in=out; + } + *dest++=Ty(in); + } + dest+=skip; + } + } +} + +//------------------------------------------------------------------------------ + +template +void CascadeFilter::ProcessII( size_t frames, Ty *dest, int skip ) +{ + int nstage=GetStageCount(); + Cascade::Stage *stagep=Stages(); + while( frames-- ) + { + Hist *h=m_histp; + for( int j=m_nchan;j;j-- ) + { + CalcT in=CalcT(*dest); + Cascade::Stage *s=stagep; + for( int i=nstage;i;i--,h++,s++ ) + { + CalcT d2=h->v[2]=h->v[1]; + CalcT d1=h->v[1]=h->v[0]; + CalcT d0=h->v[0]= + in+s->a[1]*d1 + s->a[2]*d2; + in=s->b[0]*d0 + s->b[1]*d1 + s->b[2]*d2; + } + *dest++=Ty(in); + } + dest+=skip; + } +} + +//****************************************************************************** +// +// Biquad +// +//****************************************************************************** + +// Formulas from http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt + +//------------------------------------------------------------------------------ + +Biquad::Biquad() +{ + SetStageCount( 1 ); +} + +//****************************************************************************** + +void BiquadLp::SetupCommon( CalcT sn, CalcT cs, CalcT q ) +{ + CalcT alph = sn / ( 2 * q ); + CalcT a0 = 1 / ( 1 + alph ); + CalcT b1 = 1 - cs; + CalcT b0 = a0 * b1 * 0.5; + CalcT a1 = 2 * cs; + CalcT a2 = alph - 1; + SetStage1( a1*a0, a2*a0, b0, b1*a0, b0 ); +} + +//------------------------------------------------------------------------------ + +void BiquadLp::Setup( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + SetupCommon( sn, cs, q ); +} + +//------------------------------------------------------------------------------ + +void BiquadLp::SetupFast( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + SetupCommon( sn, cs, q ); +} + +//****************************************************************************** + +void BiquadHp::SetupCommon( CalcT sn, CalcT cs, CalcT q ) +{ + CalcT alph = sn / ( 2 * q ); + CalcT a0 = -1 / ( 1 + alph ); + CalcT b1 = -( 1 + cs ); + CalcT b0 = a0 * b1 * -0.5; + CalcT a1 = -2 * cs; + CalcT a2 = 1 - alph; + SetStage1( a1*a0, a2*a0, b0, b1*a0, b0 ); +} + +//------------------------------------------------------------------------------ + +void BiquadHp::Setup( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + SetupCommon( sn, cs, q ); +} + +//------------------------------------------------------------------------------ + +void BiquadHp::SetupFast( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + SetupCommon( sn, cs, q ); +} + +//****************************************************************************** + +void BiquadBp1::SetupCommon( CalcT sn, CalcT cs, CalcT q ) +{ + CalcT alph = sn / ( 2 * q ); + CalcT a0 = -1 / ( 1 + alph ); + CalcT b0 = a0 * ( sn * -0.5 ); + CalcT a1 = -2 * cs; + CalcT a2 = 1 - alph; + SetStage1( a1*a0, a2*a0, b0, 0, -b0 ); +} + +//-------------------------------------------------------------------------- + +void BiquadBp1::Setup( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + SetupCommon( sn, cs, q ); +} + +//-------------------------------------------------------------------------- + +void BiquadBp1::SetupFast( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + SetupCommon( sn, cs, q ); +} + +//****************************************************************************** + +void BiquadBp2::SetupCommon( CalcT sn, CalcT cs, CalcT q ) +{ + CalcT alph = sn / ( 2 * q ); + CalcT b0 = -alph; + CalcT b2 = alph; + CalcT a0 = -1 / ( 1 + alph ); + CalcT a1 = -2 * cs; + CalcT a2 = 1 - alph; + SetStage1( a1*a0, a2*a0, b0*a0, 0, b2*a0 ); +} + +//-------------------------------------------------------------------------- + +void BiquadBp2::Setup( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + SetupCommon( sn, cs, q ); +} + +//-------------------------------------------------------------------------- + +void BiquadBp2::SetupFast( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + SetupCommon( sn, cs, q ); +} + +//****************************************************************************** + +void BiquadBs::SetupCommon( CalcT sn, CalcT cs, CalcT q ) +{ + CalcT alph = sn / ( 2 * q ); + CalcT a0 = 1 / ( 1 + alph ); + CalcT b1 = a0 * ( -2 * cs ); + CalcT a2 = alph - 1; + SetStage1( -b1, a2*a0, a0, b1, a0 ); +} + +//-------------------------------------------------------------------------- + +void BiquadBs::Setup( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + SetupCommon( sn, cs, q ); +} + +//-------------------------------------------------------------------------- + +void BiquadBs::SetupFast( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + SetupCommon( sn, cs, q ); +} + +//****************************************************************************** + +void BiquadAp::SetupCommon( CalcT sn, CalcT cs, CalcT q ) +{ + CalcT alph = sn / ( 2 * q ); + CalcT b2 = 1 + alph; + CalcT a0 = 1 / b2; + CalcT b0 =( 1 - alph ) * a0; + CalcT b1 = -2 * cs * a0; + SetStage1( -b1, -b0, b0, b1, b2*a0 ); +} + +//-------------------------------------------------------------------------- + +void BiquadAp::Setup( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + SetupCommon( sn, cs, q ); +} + +//-------------------------------------------------------------------------- + +void BiquadAp::SetupFast( CalcT normFreq, CalcT q ) +{ + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + SetupCommon( sn, cs, q ); +} + +//****************************************************************************** + +void BiquadLs::SetupCommon( CalcT cs, CalcT A, CalcT sa ) +{ + CalcT An = A-1; + CalcT Ap = A+1; + CalcT Ancs = An*cs; + CalcT Apcs = Ap*cs; + CalcT b0 = A * (Ap - Ancs + sa ); + CalcT b2 = A * (Ap - Ancs - sa ); + CalcT b1 = 2 * A * (An - Apcs); + CalcT a2 = sa - (Ap + Ancs); + CalcT a0 = 1 / (Ap + Ancs + sa ); + CalcT a1 = 2 * (An + Apcs); + SetStage1( a1*a0, a2*a0, b0*a0, b1*a0, b2*a0 ); +} + +//-------------------------------------------------------------------------- + +void BiquadLs::Setup( CalcT normFreq, CalcT dB, CalcT shelfSlope ) +{ + CalcT A = pow( 10, dB/40 ); + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + CalcT al = sn / 2 * ::std::sqrt( (A + 1/A) * (1/shelfSlope - 1) + 2 ); + CalcT sa = 2 * ::std::sqrt( A ) * al; + SetupCommon( cs, A, sa ); +} + +//-------------------------------------------------------------------------- + +// This could be optimized further +void BiquadLs::SetupFast( CalcT normFreq, CalcT dB, CalcT shelfSlope ) +{ + CalcT A = pow( 10, dB/40 ); + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + CalcT al = sn / 2 * fastsqrt1( (A + 1/A) * (1/shelfSlope - 1) + 2 ); + CalcT sa = 2 * fastsqrt1( A ) * al; + SetupCommon( cs, A, sa ); +} + +//****************************************************************************** + +void BiquadHs::SetupCommon( CalcT cs, CalcT A, CalcT sa ) +{ + CalcT An = A-1; + CalcT Ap = A+1; + CalcT Ancs = An*cs; + CalcT Apcs = Ap*cs; + CalcT b0 = A * (Ap + Ancs + sa ); + CalcT b1 = -2 * A * (An + Apcs); + CalcT b2 = A * (Ap + Ancs - sa ); + CalcT a0 = 1 / (Ap - Ancs + sa ); + CalcT a2 = Ancs + sa - Ap; + CalcT a1 = -2 * (An - Apcs); + SetStage1( a1*a0, a2*a0, b0*a0, b1*a0, b2*a0 ); +} + +//-------------------------------------------------------------------------- + +void BiquadHs::Setup( CalcT normFreq, CalcT dB, CalcT shelfSlope ) +{ + CalcT A = pow( 10, dB/40 ); + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + + CalcT alph = sn / 2 * ::std::sqrt( (A + 1/A) * (1/shelfSlope - 1) + 2 ); + CalcT sa = 2 * ::std::sqrt( A ) * alph; + SetupCommon( cs, A, sa ); +} + +//-------------------------------------------------------------------------- + +void BiquadHs::SetupFast( CalcT normFreq, CalcT dB, CalcT shelfSlope ) +{ + CalcT A = pow( 10, dB/40 ); + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + + CalcT alph = sn / 2 * fastsqrt1( (A + 1/A) * (1/shelfSlope - 1) + 2 ); + CalcT sa = 2 * fastsqrt1( A ) * alph; + SetupCommon( cs, A, sa ); +} + +//****************************************************************************** + +void BiquadEq::SetupCommon( CalcT sn, CalcT cs, CalcT alph, CalcT A ) +{ + CalcT t=alph*A; + CalcT b0 = 1 - t; + CalcT b2 = 1 + t; + t=alph/A; + CalcT a0 = 1 / ( 1 + t ); + CalcT a2 = t - 1; + CalcT b1 = a0 * ( -2 * cs ); + CalcT a1 = -b1; + + SetStage1( a1, a2*a0, b0*a0, b1, b2*a0 ); +} + +//-------------------------------------------------------------------------- + +void BiquadEq::Setup( CalcT normFreq, CalcT dB, CalcT bandWidth ) +{ + CalcT A = pow( 10, dB/40 ); + CalcT w0 = 2 * kPi * normFreq; + CalcT cs = cos(w0); + CalcT sn = sin(w0); + CalcT alph = sn * sinh( kLn2/2 * bandWidth * w0/sn ); + SetupCommon( sn, cs, alph, A ); +} + +//-------------------------------------------------------------------------- + +void BiquadEq::SetupFast( CalcT normFreq, CalcT dB, CalcT bandWidth ) +{ + CalcT A = pow( 10, dB/40 ); + CalcT w0 = 2 * kPi * normFreq; + CalcT sn, cs; + fastsincos( w0, &sn, &cs ); + CalcT alph = sn * sinh( kLn2/2 * bandWidth * w0/sn ); + SetupCommon( sn, cs, alph, A ); +} + +//****************************************************************************** +// +// Layout +// +//****************************************************************************** + +void Layout::Realize( Cascade *cascade ) { + Realize_custom(cascade); + //Realize_orig(cascade); +} + +// I had as .00000001, but couldn't make 12th order butter +const double smallNumber = .00000001; +bool closeTo(double x, double y, double tolerance) { + return std::abs(x - y) < tolerance; +} + +void fillStageOneRoot_notNormalized(double * taps, Complex root) { + if (!closeTo(root.imag(), 0, smallNumber)) { + throw std::runtime_error("unmatched complex root"); + } + + + /* h(z) = root - (z**-1) + * will be zero when z**-1 == root + * or z == 1/root + */ + taps[0] = 1.0 / root.real(); + taps[1] = -1; + taps[2] = 0; +} + +bool areConjugates(const Complex& root1, const Complex& root2) { + return closeTo(root1.real(), root2.real(), smallNumber) && + closeTo(root1.imag(), -root2.imag(), smallNumber); + //return (root1.real() == root2.real() && + // closeTo(root1.imag(), -root2.imag(), smallNumber)); +} + +bool isComplex(const Complex& x) { + + return !closeTo(x.imag(), 0, smallNumber); +} + +// (z-p1)*(z-p2) = z**2 - ( p1 + p2) z + p1 * p2 +// = (p1 * p2) + ( -(p1 + p2)) * z + z2 +// = (p1 * p2) * z**-2 - (p1 + p2) * z**-1 + 1 +void fillStageTwoRoots_notNormalized(double * taps, Complex root1, Complex root2) { + if ( (root1.imag() == 0) && (root2.imag()==0)) { + // both are real is ok + } + else if ( areConjugates(root1, root2)) { + } + else + throw std::runtime_error("unmatched complex roots"); + + + // h(z) = root - z ;will be zero when z == root + taps[0] = 1.0; + taps[1] = -(root1 + root2).real(); + taps[2] =(root1 * root2).real(); + //taps[0] = (root1 * root2).real(); + //taps[1] = -(root1 + root2).real(); + //taps[2] =1; +} +/* On input: H(z) = 1 / (a0 + a1z + a2z); + * on output H(z) = 1 / (1 - a1z - a2z) + * + * we drop the scale factor - it will be recalculated later + */ +void normalizeDenominator(double * denTaps) { + denTaps[1] *= -1.0; + denTaps[2] *= -1.0; // now a0 - a1z -a2z + + double scale = 1.0 / denTaps[0]; + + denTaps[0] *= scale; + denTaps[1] *= scale; + denTaps[2] *= scale; + +} +void fillStageOnePole(Cascade::Stage * stage, Complex pole) { + double * taps = stage->a; + fillStageOneRoot_notNormalized(taps, pole); + normalizeDenominator(taps); +} + +void fillStageTwoPoles(Cascade::Stage * stage, Complex pole1, Complex pole2) { + double * taps = stage->a; + fillStageTwoRoots_notNormalized(taps, pole1, pole2); + normalizeDenominator(taps); +} +void fillStageTwoZeros(Cascade::Stage * stage, Complex zero1, Complex zero2) { + double * taps = stage->b; + fillStageTwoRoots_notNormalized(taps, zero1, zero2); +} + +void fillStageOneZero(Cascade::Stage * stage, Complex zero) { + double * taps = stage->b; + fillStageOneRoot_notNormalized(taps, zero); +} + +int locateMatchingRoot(Roots& roots, int indexThatNeedsMatch, int indexMatchDestination) { + const Complex& rootToMatch = roots.GetNth(indexThatNeedsMatch); + for (int i = indexThatNeedsMatch+1; i< roots.GetCount(); ++i) { + Complex& root = roots.GetNth(i); + if (areConjugates(rootToMatch, root)) { + return i; + } + } + throw std::runtime_error("unmatched complex roots c"); +} + +void pairRoots2(Roots& roots) { + int num = roots.GetCount(); + for (int i=0; i= (num-1)) { + // if no more to pair with, we are hosed + throw std::runtime_error("unmatched complex roots b"); + } + else if (areConjugates(root, roots.GetNth(i + 1)) ){ + // if next root already a match, we are cool + ++i; // skip over the matching + } + else { + // here we are first of the pair, but our mate is missing + const int match = locateMatchingRoot(roots, i, i+1); + + // now swap the unmatched root for the match + Complex temp = roots.GetNth(i+1); // save off the one we are moving + roots.GetNth(i+1) = roots.GetNth(match); + roots.GetNth(match) = temp; + ++i; // advance over our mate + + } + } + } + +} + +#if 0 // unused, for now +static void dumpRoots(const char * title, Roots &roots) { + char buf[512]; + sprintf_s(buf, sizeof(buf), "\nDump Roots: %s\n", title); + //DebugUtil::trace(buf); + + for (int i=0; iSetStageCount( stages ); + + + cascade->Reset(); + + for (int i=0; iStages()+ i); + if (poles == 1) { + Complex c=Pole(i * 2); + fillStageOnePole(s, c); + --poles; + } + else { + Complex c1=Pole(i * 2); + Complex c2=Pole(i * 2 + 1); + fillStageTwoPoles(s, c1, c2); + poles -= 2; + } + if (zeros == 1) { + Complex c=Zero(i * 2); + fillStageOneZero(s, c); + --zeros; + } + else { + Complex c1=Zero(i * 2); + Complex c2=Zero(i * 2 + 1); + fillStageTwoZeros(s, c1, c2); + zeros -= 2; + } + + } + + // Normalization + + // The assertions are arbitrary.... + assert(m_normal.w >= 0 && m_normal.w <= kPi); + assert(m_normal.gain < 1000000000000); + assert(m_normal.gain > -1000000000000); + + cascade->Scale( m_normal.gain / std::abs( cascade->Response_radian( m_normal.w ) ) ); +} + +void Layout::Realize_orig( Cascade *cascade ) +{ + // Calculate number of second order sections required. + { + int s1=(CountPoles()+1)/2; + int s2=(CountZeros()+1)/2; + assert( s1==s2 ); // I am not sure if it works otherwise + cascade->SetStageCount( s1>s2?s1:s2 ); + } + + cascade->Reset(); + + int n; + + // Poles + + n=0; + for( int i=0;i0 ) + BuildA( cascade, 2*c.real(), -std::norm(c), &n ); + } + + // Zeros + + n=0; + for( int i=0;i0 ) { + //DebugUtil::trace("Realize img>0\n"); + BuildB( cascade, std::norm(c), -2*c.real(), 1, &n ); + } + else { + //DebugUtil::trace("Realize img<0\n"); + } + } + + // Normalization + + assert(m_normal.w >= 0 && m_normal.w <= 2.0); + assert(m_normal.gain < 1000000000000); + assert(m_normal.gain > -1000000000000); + + cascade->Scale( m_normal.gain / std::abs( cascade->Response_radian( m_normal.w ) ) ); +}; + +//------------------------------------------------------------------------------ + +void Layout::BuildA( Cascade *cascade, CalcT x1, CalcT x2, int *na ) +{ + if( x2!=0 ) + { + Cascade::Stage *s=cascade->Stages()+cascade->GetStageCount()-1-*na; + assert( s->a[1]==0 && s->a[2]==0 ); + s->a[1]=x1; + s->a[2]=x2; + (*na)++; +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "builda2, set a1 to %f a2 %f\n", s->a[1], s->a[2]); + DebugUtil::trace(buf); + } +#endif + } + else + { + // combine + Cascade::Stage *s=cascade->Stages(); + s->a[2]=-s->a[1]*x1; + s->a[1]+=x1; +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "builda1, set a1 to %f a2 %f\n", s->a[1], s->a[2]); + DebugUtil::trace(buf); + } +#endif + if( s->a[2]!=0 ) + { + int n=cascade->GetStageCount()-1-*na; + if( n>0 ) + { + Cascade::Stage *f=cascade->Stages()+n; + f->a[1]=s->a[1]; + f->a[2]=s->a[2]; + s->a[1]=0; + s->a[2]=0; +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "builda1, moved a UP, set a1, a2 to zero\n"); + DebugUtil::trace(buf); + } +#endif + (*na)++; + } + } + } +} + +//------------------------------------------------------------------------------ + +void Layout::BuildB( Cascade *cascade, CalcT x0, CalcT x1, CalcT x2, int *nb ) +{ + +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "enter buildb x0=%f x1=%f x2=%f\n", + x0, x1, x2); + DebugUtil::trace(buf); + } +#endif + if( x2!=0 ) + { + Cascade::Stage *s=cascade->Stages()+cascade->GetStageCount()-1-*nb; + s->b[0]=x0; + s->b[1]=x1; + s->b[2]=x2; + (*nb)++; + +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "buildb, set b0 to %f b1 to %f b2 %f\n", s->b[0], s->b[1], s->b[2]); + DebugUtil::trace(buf); + } +#endif + } + else + { + + + // combine + // (b0 + z b1)(x0 + z x1) = (b0 x0 + (b1 x0+b0 x1) z + b1 x1 z^2) + Cascade::Stage *s=cascade->Stages(); + +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "enter buildb2 b0=%f b1=%f b2=%f \n", + s->b[0], s->b[1], s->b[2] + ); + DebugUtil::trace(buf); + } +#endif + + s->b[2]=s->b[1]*x1; + s->b[1]=s->b[1]*x0+s->b[0]*x1; + s->b[0]*=x0; + +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "buildb 2, set b0 to %f b1 to %f b2 %f\n", s->b[0], s->b[1], s->b[2]); + DebugUtil::trace(buf); + } +#endif + if( s->b[2]!=0 ) + { + int n=cascade->GetStageCount()-1-*nb; + if( n>0 ) + { + Cascade::Stage *f=cascade->Stages()+n; + f->b[0]=s->b[0]; + f->b[1]=s->b[1]; + f->b[2]=s->b[2]; + s->b[0]=1; + s->b[1]=0; + s->b[2]=0; + (*nb)++; +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "buildb 3, set b to 1, bnext b0 to %f b1 to %f b2 %f\n", f->b[0], f->b[1], f->b[2]); + DebugUtil::trace(buf); + } +#endif + } + } + } +} + +//****************************************************************************** + +const Complex Dsp::infinity(std::numeric_limits::infinity()); +//const Complex Dsp::positiveInfinity( 2 ); + +//****************************************************************************** +// +// Transformations +// +//****************************************************************************** + +void LowPass::Transform( const Spec &spec, Layout *result, const Layout &layout ) +{ + Transform( spec, &result->Poles(), layout.Poles() ); + Transform( spec, &result->Zeros(), layout.Zeros() ); + + Normalization n0=layout.GetNormalization(); + Normalization &n=result->GetNormalization(); + n=n0; +} + +//------------------------------------------------------------------------------ + +void LowPass::Transform( const Spec &spec, Roots *result, const Roots &roots ) +{ + CalcT w=2*kPi*spec.cutoffFreq/spec.sampleRate; + // prewarp + CalcT k=tan(w*0.5); + result->SetCount( roots.GetCount() ); + + assert (k > 0); +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "trans fc=%f sr = %f w = %f k = %f\n", + spec.cutoffFreq, spec.sampleRate, w, k); + DebugUtil::trace(buf); + } +#endif + + for( int i=0;iGetNth(i); + + if( r==infinity ) + { + c=Complex( -1, 0 ); + } + else + { + // frequency transform + c=r*k; + // bilinear low-pass xform + c=(1.+c)/(1.-c); + } +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "trans[%d] from %f,%f to %f,%f\n", i, + r.real(), r.imag(), + c.real(), c.imag() + ); + DebugUtil::trace(buf); + } +#endif + } +} + +//------------------------------------------------------------------------------ + +void HighPass::Transform( const Spec &spec, Layout *result, const Layout &layout ) +{ + Transform( spec, &result->Poles(), layout.Poles() ); + Transform( spec, &result->Zeros(), layout.Zeros() ); + + Normalization n0=layout.GetNormalization(); + Normalization &n=result->GetNormalization(); + n.w=kPi-n0.w; + n.gain=n0.gain; +} + +//------------------------------------------------------------------------------ + +void HighPass::Transform( const Spec &spec, Roots *result, const Roots &roots ) +{ + + + + + CalcT w=2*kPi*spec.cutoffFreq/spec.sampleRate; + CalcT k=1./tan(w*0.5); // prewarp + result->SetCount( roots.GetCount() ); + + +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "HP trans fc=%f width=%f sr = %f w = %f k = %f\n", + spec.cutoffFreq, + spec.normWidth, + spec.sampleRate, w, k); + DebugUtil::trace(buf); + } +#endif + + + for( int i=0;iGetNth(i); + + if( r==infinity ) + { + c=Complex( 1, 0 ); + } + else + { + // frequency transform + c=r*k; + // bilinear high-pass xform + c=-(1.+c)/(1.-c); + } +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "trans[%d] from %f,%f to %f,%f\n", i, + r.real(), r.imag(), + c.real(), c.imag() + ); + DebugUtil::trace(buf); + } +#endif + } +} + +//------------------------------------------------------------------------------ + +void BandPass::Transform( const Spec &spec, Layout *result, const Layout &layout ) +{ + //DebugUtil::trace("----- BandPass::Transform (poles then zeros) -----\n"); + Transform( spec, &result->Poles(), layout.Poles() ); + Transform( spec, &result->Zeros(), layout.Zeros() ); + + Normalization n0=layout.GetNormalization(); + Normalization &n=result->GetNormalization(); + + if( n0.w==0 ) // hack + { + CalcT angularWidth=2*kPi*spec.normWidth; + CalcT wc2=2*kPi*spec.centerFreq/spec.sampleRate-(angularWidth/2); + CalcT wc =wc2+angularWidth; + if( wc2<1e-8 ) + wc2=1e-8; + if( wc >kPi-1e-8 ) + wc =kPi-1e-8; + + wc+=n0.w; + wc2+=n0.w; + n.w=2*atan(sqrt(tan(wc*0.5)*tan(wc2*0.5))); + } + else + { + // yes this is a giant hack to make shelves work + n.w=((spec.centerFreq/spec.sampleRate)<0.25)?kPi:0; + } + n.gain=n0.gain; +} + +//------------------------------------------------------------------------------ + +void BandPass::Transform( const Spec &spec, Roots *result, const Roots &roots ) +{ + CalcT angularWidth=2*kPi*spec.normWidth; + m_wc2=2*kPi*spec.centerFreq/spec.sampleRate-(angularWidth/2); + m_wc =m_wc2+angularWidth; + + // Probably filter spec is whack + assert(m_wc2 >= 1e-8); + assert(m_wc <= kPi-1e-8 ); + + if( m_wc2<1e-8 ) + m_wc2=1e-8; + if( m_wc >kPi-1e-8 ) + m_wc =kPi-1e-8; + + int n=roots.GetCount(); + result->SetCount( n*2 ); + + +#ifdef _LOG + { + char buf[512]; + sprintf(buf, "BP trans fc=%f width=%f sr = %f wc2 = %f wc = %f\n", + spec.cutoffFreq, + spec.normWidth, + spec.sampleRate, m_wc2, m_wc); + DebugUtil::trace(buf); + } +#endif + + for( int i=0;iGetNth(j)=Complex( -1, 0 ); + result->GetNth(j+1)=Complex( 1, 0 ); + } + else + { + // bilinear transform + c=(1.+c)/(1.-c); + result->GetNth(j)=BandPassTransform( j, c ); + result->GetNth(j+1)=BandPassTransform( j+1, c ); + } + #ifdef _LOG + { + char buf[512]; + sprintf(buf, "trans[%d] from %f,%f to %f,%f + %f,%f\n", i, + c.real(), c.imag(), + result->GetNth(j).real(), result->GetNth(j).imag(), + result->GetNth(j+1).real(), result->GetNth(j+1).imag() + ); + DebugUtil::trace(buf); + } +#endif + } +} + +//------------------------------------------------------------------------------ + +Complex BandPass::BandPassTransform( int i, const Complex &c ) +{ + CalcT a= cos((m_wc+m_wc2)*0.5)/ + cos((m_wc-m_wc2)*0.5); + CalcT b=1/tan((m_wc-m_wc2)*0.5); + Complex c2(0); + c2=addmul( c2, 4*(b*b*(a*a-1)+1), c ); + c2+=8*(b*b*(a*a-1)-1); + c2*=c; + c2+=4*(b*b*(a*a-1)+1); + c2=std::sqrt( c2 ); + if ((i & 1) == 0) + c2=-c2; + c2=addmul( c2, 2*a*b, c ); + c2+=2*a*b; + Complex c3(0); + c3=addmul( c3, 2*(b-1), c ); + c3+=2*(1+b); + return c2/c3; +} + +//------------------------------------------------------------------------------ + +void BandStop::Transform( const Spec &spec, Layout *result, const Layout &layout ) +{ + Transform( spec, &result->Poles(), layout.Poles() ); + Transform( spec, &result->Zeros(), layout.Zeros() ); + + Normalization n0=layout.GetNormalization(); + Normalization &n=result->GetNormalization(); + + n.w=((spec.centerFreq/spec.sampleRate)<0.25)?kPi:0; + n.gain=n0.gain; +} + +void BandStop::Transform( const Spec &spec, Roots *result, const Roots &roots ) +{ + CalcT angularWidth=2*kPi*spec.normWidth; + m_wc2=2*kPi*spec.centerFreq/spec.sampleRate-(angularWidth/2); + m_wc =m_wc2+angularWidth; + if( m_wc2<1e-8 ) + m_wc2=1e-8; + if( m_wc >kPi-1e-8 ) + m_wc =kPi-1e-8; + + int n=roots.GetCount(); + result->SetCount( n*2 ); + for( int i=0;iGetNth(j)=BandStopTransform( j, c ); + result->GetNth(j+1)=BandStopTransform( j+1, c ); + } +} + +//------------------------------------------------------------------------------ + +void BandStop::DesignZeros( const Spec &spec, Layout *layout ) +{ + int n=spec.order; + Roots *roots=&layout->Zeros(); + roots->SetCount( n*2 ); + for( int i=0;iGetNth(i)=BandStopTransform( i, Complex( -1 ) ); + } +} + +//------------------------------------------------------------------------------ + +Complex BandStop::BandStopTransform( int i, const Complex &c ) +{ + CalcT a=cos((m_wc+m_wc2)*.5) / + cos((m_wc-m_wc2)*.5); + CalcT b=tan((m_wc-m_wc2)*.5); + Complex c2(0); + c2=addmul( c2, 4*(b*b+a*a-1), c ); + c2+=8*(b*b-a*a+1); + c2*=c; + c2+=4*(a*a+b*b-1); + c2=std::sqrt( c2 ); + c2*=((i&1)==0)?.5:-.5; + c2+=a; + c2=addmul( c2, -a, c ); + Complex c3( b+1 ); + c3=addmul( c3, b-1, c ); + return c2/c3; +} + +//****************************************************************************** +// +// Prototype +// +//****************************************************************************** + +//****************************************************************************** +// +// Butterworth +// +//****************************************************************************** + +void Butter::Design( const Spec &spec ) +{ + int n=spec.order; + + SetPoles( n ); + SetZeros( n ); + for( int i=0;i=abs(gainDb) ) + rippleDb=abs(gainDb); + if( gainDb<0 ) + rippleDb=-rippleDb; + CalcT G=std::pow( 10., gainDb/20.0 ); + CalcT Gb=std::pow( 10., (gainDb-rippleDb)/20.0 ); + CalcT G0=1; + CalcT g0=pow(G0,1./n); + CalcT eps; + if( Gb!=G0 ) + eps=sqrt((G*G-Gb*Gb)/(Gb*Gb-G0*G0)); + else + eps=G-1; // This is surely wrong + CalcT b=pow(G/eps+Gb*sqrt(1+1/(eps*eps)), 1./n); + CalcT u=log(b/g0); + CalcT v=log(pow(1./eps+sqrt(1+1/(eps*eps)),1./n)); + + SetPoles( n ); + SetZeros( n ); + for( int i=0;i=abs(gainDb) ) + rippleDb=abs(gainDb); + if( gainDb<0 ) + rippleDb=-rippleDb; + CalcT G=std::pow( 10., gainDb/20.0 ); + CalcT Gb=std::pow( 10., (rippleDb)/20.0 ); + CalcT G0=1; + CalcT g=pow(G,1./n); + CalcT eps; + if( Gb!=G0 ) + eps=sqrt((G*G-Gb*Gb)/(Gb*Gb-G0*G0)); + else + eps=G-1; // This is surely wrong + CalcT b=pow(G0*eps+Gb*sqrt(1+eps*eps), 1./n); + CalcT u=log(b/g); + CalcT v=log(pow(eps+sqrt(1+eps*eps),1./n)); + + SetPoles( n ); + SetZeros( n ); + for( int i=0;i m_em) + m_c1[2*m_m] = 0; + for (i = 0; i <= 2*m_m; i += 2) + m_a1[m_m-i/2] = m_c1[i] + m_d1[i]; + CalcT a0 = findfact(m_m); + int r = 0; + while (r < m_em/2) + { + r++; + m_p[r] /= 10; + m_q1[r] /= 100; + CalcT d = 1+m_p[r]+m_q1[r]; + m_b1[r] = (1+m_p[r]/2)*fbb/d; + m_zf1[r] = fb/pow(d, .25); + m_zq1[r] = 1/sqrt(abs(2*(1-m_b1[r]/(m_zf1[r]*m_zf1[r])))); + m_zw1[r] = tp*m_zf1[r]; + m_rootR[r] = -.5*m_zw1[r]/m_zq1[r]; + m_rootR[r+m_em/2] = m_rootR[r]; + m_rootI[r] = .5*sqrt(abs(m_zw1[r]*m_zw1[r]/(m_zq1[r]*m_zq1[r]) - 4*m_zw1[r]*m_zw1[r])); + m_rootI[r+m_em/2] = -m_rootI[r]; + } + if (a0 != 0) + { + m_rootR[r+1+m_em/2] = -sqrt(fbb/(.1*a0-1))*tp; + m_rootI[r+1+m_em/2] = 0; + } + + SetPoles( n ); + SetZeros( n ); + for( int i=0;i m_em) + { + ji = i-m_em; + jf = m_em; + } + m_c1[i] = 0; + int j; + for(j = ji; j <= jf; j += 2) + m_c1[i] += m_a1[j]*(m_a1[i-j]*pow(10., m_m-i/2)); +} + +//------------------------------------------------------------------------------ + +// calculate f(z) +void Elliptic::calcfz( void ) +{ + int i = 1; + if( m_nin == 1 ) + m_s1[i++] = 1; + for (; i <= m_nin+m_n2; i++) + m_s1[i] = m_s1[i+m_n2] = m_z1[i-m_nin]; + prodpoly(m_nin+2*m_n2); + for (i = 0; i <= m_em; i += 2) + m_a1[i] = m_e*m_b1[i]; + for (i = 0; i <= 2*m_em; i += 2) + calcfz2(i); +} + +//------------------------------------------------------------------------------ + +// determine q(z) +void Elliptic::calcqz( void ) +{ + int i; + for (i = 1; i <= m_nin; i++) + m_s1[i] = -10; + for (; i <= m_nin+m_n2; i++) + m_s1[i] = -10*m_z1[i-m_nin]*m_z1[i-m_nin]; + for (; i <= m_nin+2*m_n2; i++) + m_s1[i] = m_s1[i-m_n2]; + prodpoly(m_m); + int dd = ((m_nin & 1) == 1) ? -1 : 1; + for (i = 0; i <= 2*m_m; i += 2) + m_d1[i] = dd*m_b1[i/2]; +} + +//------------------------------------------------------------------------------ + +// compute factors +CalcT Elliptic::findfact(int t) +{ + int i; + CalcT a = 0; + for (i = 1; i <= t; i++) + m_a1[i] /= m_a1[0]; + m_a1[0] = m_b1[0] = m_c1[0] = 1; + int i1 = 0; + for(;;) + { + if (t <= 2) + break; + CalcT p0 = 0, q0 = 0; + i1++; + for(;;) + { + m_b1[1] = m_a1[1] - p0; + m_c1[1] = m_b1[1] - p0; + for (i = 2; i <= t; i++) + m_b1[i] = m_a1[i]-p0*m_b1[i-1]-q0*m_b1[i-2]; + for (i = 2; i < t; i++) + m_c1[i] = m_b1[i]-p0*m_c1[i-1]-q0*m_c1[i-2]; + int x1 = t-1; + int x2 = t-2; + int x3 = t-3; + CalcT x4 = m_c1[x2]*m_c1[x2]+m_c1[x3]*(m_b1[x1]-m_c1[x1]); + if (x4 == 0) + x4 = 1e-3; + CalcT ddp = (m_b1[x1]*m_c1[x2]-m_b1[t]*m_c1[x3])/x4; + p0 += ddp; + CalcT dq = (m_b1[t]*m_c1[x2]-m_b1[x1]*(m_c1[x1]-m_b1[x1]))/x4; + q0 += dq; + if (abs(ddp+dq) < 1e-6) + break; + } + m_p[i1] = p0; + m_q1[i1] = q0; + m_a1[1] = m_a1[1]-p0; + t -= 2; + for (i = 2; i <= t; i++) + m_a1[i] -= p0*m_a1[i-1]+q0*m_a1[i-2]; + if (t <= 2) + break; + } + + if (t == 2) + { + i1++; + m_p[i1] = m_a1[1]; + m_q1[i1] = m_a1[2]; + } + if (t == 1) + a = -m_a1[1]; + + return a; +} + +//------------------------------------------------------------------------------ + +CalcT Elliptic::calcsn(CalcT u) +{ + CalcT sn = 0; + int j; + // q = modular constant + CalcT q = exp(-kPi*m_Kprime/m_K); + CalcT v = kPi*.5*u/m_K; + for (j = 0; ; j++) + { + CalcT w = pow(q, j+.5); + sn += w*sin((2*j+1)*v)/(1-w*w); + if (w < 1e-7) + break; + } + return sn; +} + +//------------------------------------------------------------------------------ + +CalcT Elliptic::ellipticK(CalcT k) +{ + CalcT a[50]; + CalcT theta[50]; + a[0] = atan(k/sqrt(1-k*k)); + theta[0] = kPi*.5; + int i = 0; + for(;;) + { + CalcT x = 2/(1+sin(a[i]))-1; + CalcT y = sin(a[i])*sin(theta[i]); + a[i+1] = atan(sqrt(1-x*x)/x); + theta[i+1] = .5*(theta[i]+atan(y/sqrt(1-y*y))); + CalcT e = 1-a[i+1]*2/kPi; + i++; + if (e < 1e-7) + break; + if (i == 49) + break; + } + int j; + CalcT p = 1; + for (j = 1; j <= i; j++) + p *= 1+cos(a[j]); + CalcT x = kPi*.25 + theta[i]/2; + return log(tan(x))*p; +} + +//****************************************************************************** +// +// RootFinder +// + +void RootFinder::solve( int degree, Roots *roots, bool bPolish, bool bSort ) +{ + assert( degree<=m_maxdegree ); + + const CalcT EPS=1.0e-14; + int i,its; + Complex x,b,c; + int m=degree; + // copy of coefficients + for( int j=0;j<=m;j++ ) + m_ad[j]=m_a[j]; + // for each root + roots->SetCount( degree ); + for( int j=m-1;j>=0;j-- ) + { + // initial guess at 0 + x=0.0; + laguerre( j+1, m_ad, x, its ); + if( abs(imag(x)) <= 2.0*EPS*abs(real(x)) ) + x=Complex( real(x), 0.0 ); + roots->GetNth(j)=x; + b=m_ad[j+1]; + // deflate + for (int jj=j;jj>=0;jj--) + { + c=m_ad[jj]; + m_ad[jj]=b; + b=x*b+c; + } + } + // polish + if( bPolish ) + for( int j=0;jGetNth(j), its ); + // sort + if( bSort ) + for( int j=1;jGetNth(j); + for( i=j-1;i>=0;i-- ) + { + if( real(roots->GetNth(i)) <= real(x) ) + break; + roots->GetNth(i+1)=roots->GetNth(i); + } + roots->GetNth(i+1)=x; + } +} + +//------------------------------------------------------------------------------ + +void RootFinder::laguerre( int degree, Complex a[], Complex &x, int &its) +{ + const int MR=8,MT=10,MAXIT=MT*MR; + const CalcT EPS=std::numeric_limits::epsilon(); + static const CalcT frac[MR+1]= + {0.0,0.5,0.25,0.75,0.13,0.38,0.62,0.88,1.0}; + Complex dx,x1,b,d,f,g,h,sq,gp,gm,g2; + int m=degree; + for (int iter=1;iter<=MAXIT;iter++) { + its=iter; + b=a[m]; + CalcT err=abs(b); + d=f=0.0; + CalcT abx=abs(x); + for (int j=m-1;j>=0;j--) { + f=x*f+d; + d=x*d+b; + b=x*b+a[j]; + err=abs(b)+abx*err; + } + err *= EPS; + if (abs(b) <= err) return; + g=d/b; + g2=g*g; + h=g2-2.0*f/b; + sq=sqrt(CalcT(m-1)*(CalcT(m)*h-g2)); + gp=g+sq; + gm=g-sq; + CalcT abp=abs(gp); + CalcT abm=abs(gm); + if (abp < abm) gp=gm; + dx=std::max(abp,abm) > 0.0 ? CalcT(m)/gp : std::polar(1+abx,CalcT(iter)); + x1=x-dx; + if (x == x1) return; + if (iter % MT != 0) x=x1; + else x -= frac[iter/MT]*dx; + } + + throw; +} + +//------------------------------------------------------------------------------ + +Complex RootFinder::eval( int degree, const Complex &x ) +{ + Complex y; + if( x!=0. ) + { + for( int i=0;i<=degree;i++ ) + y+=m_a[i]*pow(x,double(i)); + } + else + { + y=m_a[0]; + } + + return y; +} +//****************************************************************************** + +// returns factorial(n) (n!) +static double fact( double n ) +{ + if( n==0 ) + return 1; + else + return n*fact(n-1); +} + +// returns the k-th zero based coefficient of the reverse bessel polynomial of degree n +static double reversebessel( int k, int n ) +{ + return fact(2*n-k)/((fact(n-k)*fact(k))*pow(2.,n-k)); +} + +// returns the k-th zero based coefficient of the reverse bessel polynomial of degree n +#if 0 // unused, for now +static double bessel( int k, int n ) +{ + return fact(n+k)/((fact(n-k)*fact(k))*pow(2.,k)); +} +#endif +//------------------------------------------------------------------------------ + +void Bessel::Design( const Spec &spec ) +{ + int n=spec.order; + + CalcT k=1./sqrt((2*n-1)*log(2.)); + + RootFinderSpace<100> rf; + for( int i=0;i<=n;i++ ) + rf.coef()[i]=Complex( reversebessel( i, n ), 0 ); + rf.solve( n, &Poles() ); + + SetZeros( n ); + for( int i=0;i rf; + rf.solve( degree, ca, co ); + int count=co.size(); + + CalcT r=pow( g, 1./n ); + + SetPoles( count ); + for( int i=0;i f; + + // Set the cutoff to 18,000 Hz. + f.Setup( 18000./sampleRate ); + + // Apply the filter to the data in place using Direct Form II. + f.ProcessII( frames, stereoData ); + } + + { + // Create a two channel low-pass Biquad filter. + Dsp::BiquadLowPass<2> f; + + // Set the cutoff to 440Hz, with Q=0.25 using approximations + // to trigonometric functions for fast parameter changes. + f.SetupFast( 440./sampleRate, 0.25 ); + + // Apply the filter to the data in place using Direct Form I. + f.ProcessI( frames, stereoData ); + } + + // Deinterleave the data, process it using + // separate objects, and re-interleave it. + { + float leftChannel[frames]; + float rightChannel[frames]; + + // De-interleave the data. + deinterleave( frames, leftChannel, rightChannel, stereoData ); + + // Create two four pole pair (8 poles total) Chebyshev + // type I band-pass single channel filters. + Dsp::Cheby1BandPass<4, 1> f[2]; + + // Set the center frequency to 10,000 Hz with a width + // of 800Hz, no more than 1dB of ripple in the pass-band. + f[0].Setup( 10000.0/sampleRate, 800./sampleRate, 1 ); + f[1].Setup( 10000.0/sampleRate, 800./sampleRate, 1 ); + + // Process each channel using Direct Form II. + f[0].ProcessII( frames, leftChannel ); + f[1].ProcessII( frames, rightChannel ); + + // Re-interleave the data. + interleave( frames, stereoData, leftChannel, rightChannel ); + } + + // Apply separate filters to each channel of stereo data. + { + // Create two 2 pole pair Chebyshev type I band-stop single channel filters. + Dsp::Cheby2BandStop<2, 1> f[2]; + + // Set the center frequency to 10,000 Hz with a width + // of 800Hz, with 24dB attenuation in the stop-band. + f[0].Setup( 10000.0/sampleRate, 800./sampleRate, 24 ); + f[1].Setup( 10000.0/sampleRate, 800./sampleRate, 24 ); + + // Process each channel using Direct Form I. skip is set to 1 + // because we want Process() to jump by 1 sample after each output sample + f[0].ProcessI( frames, stereoData, 1 ); + f[1].ProcessI( frames, stereoData+1, 1 ); // right channel starts at stereoData+1 + } + + // Use one filter to process each channel of stereo data. + { + // Create a 2 pole Butterworth high-pass single channel filter + Dsp::ButterHighPass<2,1> f; + + // Set the cutoff frequency to 10,000Hz. + f.Setup( 10000.0/sampleRate ); + + // Process the left channel using Direct Form I using skip=1. + f.ProcessI( frames, stereoData, 1 ); + + // Clear the filter's history buffer to get + // it ready for the right channel. + f.Clear(); + + // Process the right channel using Direct Form I. + f.ProcessI( frames, stereoData+1, 1 ); + } + + // Use one filter to process two single channel buffers having + // different underlying types, with Direct Form I used for the first + // buffer and Direct Form II used for the second. Admittedly this + // is quite a contrived example. + { + float buf1[frames]; + double buf2[frames]; + + // Create a 1 pole Butterworth high-pass single channel filter + Dsp::ButterHighPass<1,1> f; + + // Set the cutoff frequency to 10,000Hz. + f.Setup( 10000.0/sampleRate ); + + // Process buf1 using Direct Form I. + f.ProcessI( frames, buf1 ); + + // Clear the history buffer to avoid + // contamination, since its a different input signal. + f.Clear(); + + // Process buf2 using Direct Form II + f.ProcessII( frames, buf2 ); + + // Ahhh, the miracle of templates + } + + // Plot the magnitude and phase response of a filter. + { + // Create a 1 pole Butterworth low-pass single channel filter + Dsp::ButterLowPass<1,1> f; + + // Set the cutoff to 8,000 Hz. + f.Setup( 8000./sampleRate ); + + // Plot the magnitude response at each frequency. + for( int freq=20;freq( size_t frames, float *dest, int skip ); +template void CascadeFilter::ProcessII( size_t frames, float *dest, int skip ); +#ifdef DSP_SSE3_AVAIL +template void ProcessISSEStageStereo( size_t frames, float *dest, Cascade::Stage *stage, CascadeFilter::Hist *h, int skip ); +#endif + +template void CascadeFilter::ProcessI( size_t frames, double *dest, int skip ); +template void CascadeFilter::ProcessII( size_t frames, double *dest, int skip ); +#ifdef DSP_SSE3_AVAIL +template void ProcessISSEStageStereo( size_t frames, double *dest, Cascade::Stage *stage, CascadeFilter::Hist *h, int skip ); +#endif + +//****************************************************************************** +/* + BIBLIOGRAPHY + +"Chebyshev PoleFilterSpace Properties" +http://cnx.org/content/m16906/latest/ + +"High-Order Digital Parametric Equalizer Design" +Sophocles J. Orfanidis +http://www.ece.rutgers.edu/~orfanidi/ece521/hpeq.pdf + +*/ +//****************************************************************************** +/* + +To do: + +- rewrite of filter specifications +- documentation of filter specifications +- bibliography and references for each formula +- optimize prototypes +- fix chebyI and chebyII shelf formulas for ripple specification + +Changes: + +- Added RootFinder, for finding complex roots of polynomials +- Added Bessel low pass analog prototype +- Added BesselLowPass, BesselHighPass, BesselBandPass, and BesselBandStop filters +*/ diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.h b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.h new file mode 100644 index 00000000..10f266f9 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/falco/DspFilter.h @@ -0,0 +1,1879 @@ +/******************************************************************************* + +"A Collection of Useful C++ Classes for Digital Signal Processing" +By Vincent Falco + +Official project location: +http://code.google.com/p/dspfilterscpp/ + +See DspFilter.cpp for notes and bibliography. + +-------------------------------------------------------------------------------- + +License: MIT License (http://www.opensource.org/licenses/mit-license.php) +Copyright (c) 2009 by Vincent Falco + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +*******************************************************************************/ + +/** + * Portions modified by SquinkyLabs, 2010-2018. + * Added ability to generate biquad pairs. + * Fixed bugs + * Added hilbert filter designer + */ + +#ifndef __DSP_FILTER__ +#define __DSP_FILTER__ + + +#include +#include +#include + +#include +#include +#include + +#include +//#define _LOG + + +#ifdef _MSC_VER +/* MSVC generates a flood of warnings about unreferenced functions */ +//#pragma warning(disable:4505) +#else + #include + #include +#endif +//#include "DebugUtil.h" +namespace Dsp +{ + //-------------------------------------------------------------------------- + + // Compile-time assert to keep us sane + + #define DSP_JOIN(x, y) DSP_JOIN_AGAIN(x, y) + #define DSP_JOIN_AGAIN(x, y) x ## y + + #define DSP_STATIC_ASSERT(e, msg) \ + typedef char DSP_JOIN(assertion_ ## msg ## _failed_at_line_, __LINE__) [(e) ? 1 : -1] + + template + struct is_same { enum { value = false }; }; + template + struct is_same { enum { value = true }; }; + + //-------------------------------------------------------------------------- + // + // Configuration + // + //-------------------------------------------------------------------------- + + // Regardless of the type of sample that the filter operates on (e.g. + // float or double), all calculations are performed using double (or + // better) for stability and accuracy. This controls the underlying + // type used for calculations: + typedef double CalcT; + + typedef int Int32; // Must be 32 bits + + // Must be 64 bits +#ifdef _MSC_VER + typedef __int64 Int64; +#else + typedef int64_t Int64; +#endif + + // This is used to prevent denormalization. + const CalcT vsa=1.0 / 4294967295.0; // for CalcT as float + + // These constants are so important, I made my own copy. If you improve + // the resolution of CalcT be sure to add more significant digits to these. + const CalcT kPi =3.1415926535897932384626433832795028841971; + const CalcT kPi_2 =1.5707963267948966192313216916397514420986; + const CalcT kLn2 =0.693147180559945309417; + const CalcT kLn10 =2.30258509299404568402; + + //-------------------------------------------------------------------------- + + template + inline Ty asinh( Ty x ) + { + return log( x+::std::sqrt(x*x+1) ); + } + + template + inline Ty acosh( Ty x ) + { + return log( x+::std::sqrt(x*x-1) ); + } + + //-------------------------------------------------------------------------- + // + // Complex + // + //-------------------------------------------------------------------------- + + template + inline std::complex addmul( const std::complex &c, Ty v, const std::complex &c1 ) + { + return std::complex( c.real()+v*c1.real(), c.imag()+v*c1.imag() ); + } + + template + inline std::complex recip( const std::complex &c ) + { + Ty n=1.0/std::norm(c); + return std::complex( n*c.real(), n*c.imag() ); + } + + typedef std::complex Complex; + + //-------------------------------------------------------------------------- + // + // Numerical Analysis + // + //-------------------------------------------------------------------------- + + // Container for a set of complex polynomial roots. + // Storage is provided by a derived class. + struct Roots + { + // Get the number of roots available. + int GetCount( void ) const + { + return m_rootCount; + } + + // Set the number of roots available up to max. + void SetCount( int n ) + { + assert( n>=1 && n<=m_rootMax ); + m_rootCount=n; + } + + // Retrieve zero-based i-th root. + Complex &GetNth( int i ) + { + assert( i>=0 && i=0 && i + struct RootsSpace : Roots + { + RootsSpace() + { + m_rootMax=sizeof(m_roots)/sizeof(m_roots[0]); + m_root=m_roots; + } + + private: + Complex m_roots[maxdegree]; + }; + + //-------------------------------------------------------------------------- + + // Finds the complex roots of the given polynomial with + // complex-valued coefficients using a numerical method. + struct RootFinder + { + // Find roots of polynomial f(x)=a[0]+a[1]*x+a[2]*x^2...+a[degree]*x^degree + // The input coefficients are set using coef()[]. + // The solutions are placed in roots. + void solve( int degree, Roots *roots, bool bPolish=false, bool bSort=false ); + + // Evaluates the polynomial at x + Complex eval( int degree, const Complex &x ); + + // Direct access to the input coefficient array of size degree+1. + Complex *coef( void ) + { + return m_a; + } + + private: + // Improves x as a root using Laguerre's method. + // The input coefficient array has degree+1 elements. + void laguerre( int degree, Complex a[], Complex &x, int &its ); + + protected: + int m_maxdegree; + Complex *m_a; // input coefficients (m_maxdegree+1 elements) + Complex *m_ad; // copy of deflating coefficients + }; + + //------------------------------------------------------------------------------ + + template + struct RootFinderSpace : virtual RootFinder + { + RootFinderSpace() + { + m_maxdegree=maxdegree; + m_a=m_a0; + m_ad=m_ad0; + } + + private: + Complex m_a0[maxdegree+1]; + Complex m_ad0[maxdegree+1]; + }; + + //-------------------------------------------------------------------------- + // + // Utility Classes + // + //-------------------------------------------------------------------------- + + // Tracks the peaks in the signal stream using the attack and release parameters + template + class EnvelopeFollower + { + public: + EnvelopeFollower(); + + void Setup( double attackMs, double releaseMs, int sampleRate ); + + template + void Process( size_t count, const Ty *src , int skip=0 ); + + CalcT Envelope( void ) const; + + CalcT env[channels]; + + protected: + CalcT a; + CalcT r; + }; + + //-------------------------------------------------------------------------- + + template + EnvelopeFollower::EnvelopeFollower() + { + for( int i=0;i + CalcT EnvelopeFollower::Envelope( void ) const + { + return env[0]; + } + + template + void EnvelopeFollower::Setup( double attackMs, double releaseMs, int sampleRate ) + { + a = pow( 0.01, 1.0 / ( attackMs * sampleRate * 0.001 ) ); + r = pow( 0.01, 1.0 / ( releaseMs * sampleRate * 0.001 ) ); + } + + template + template + void EnvelopeFollower::Process( size_t count, const Ty *src, int skip ) + { + skip=channels+skip; + for( int i=0;ie ) e = a * ( e - v ) + v; + else e = r * ( e - v ) + v; + s+=skip; + } + env[i]=e; + } + } + + //-------------------------------------------------------------------------- + + // Uses the envelope follower to scale the audio signal into range + // and prevent clipping. If audio signal is already between 0..1, does + // nothing. IsClipping() will return true if the last call to Process() + // contained source data that would have otherwise caused clipping. + // + // For musical purposes attack=10ms and release=500ms seems to work well. + // + struct AutoLimiter + { + void Setup( double attackMs, double releaseMs, int sampleRate ); + + bool IsClipping( void ) const; + + template + void Process( size_t nSamples, Ty *dest ); + + private: + EnvelopeFollower<1> e; + }; + + //-------------------------------------------------------------------------- + + inline void AutoLimiter::Setup( double attackMs, double releaseMs, int sampleRate ) + { + e.Setup( attackMs, releaseMs, sampleRate ); + } + + inline bool AutoLimiter::IsClipping( void ) const + { + return e.Envelope()>1; + } + + template + void AutoLimiter::Process( size_t count, Ty *dest ) + { + while( count-- ) + { + Ty v=*dest; + // don't worry, this should get optimized + e.Process( 1, &v, skip ); + if( e.Envelope()>1 ) + *dest=Ty(*dest/e.Envelope()); + dest+=skip; + } + } + + //-------------------------------------------------------------------------- + // + // Utility Functions + // + // These may prove useful. Since they support multiple channels + // code can measure everything uniformly in terms of number of frames. + // + //-------------------------------------------------------------------------- + + // Fill a sample buffer with zeroes + template + void zero( int channels, size_t frames, Ty *dest, int destSkip=0 ) + { + if( destSkip==0 ) + { + ::memset( dest, 0, channels*frames*sizeof(Ty) ); + } + else + { + while( frames-- ) + { + int n=channels; + while( n-- ) + { + *dest++=0; + } + dest+=destSkip; + } + } + } + + //-------------------------------------------------------------------------- + + // Copy interleaved samples from src to dest (may not overlap). + // skip specifies the number of samples in between interleaved frames. + + // This will perform a conversion between numerical types + template + void copy( int channels, size_t frames, Td *dest, const Ts *src, int destSkip=0, int srcSkip=0 ) + { + while( frames-- ) + { + int n=channels; + while( n-- ) + { + *dest++=*src++; + } + dest+=destSkip; + src+=srcSkip; + } + } + + // Faster version of copy when the source and destination types are the same + template + void copy( int channels, size_t frames, Ty *dest, const Ty *src, int destSkip=0, int srcSkip=0 ) + { + if( destSkip==0 && srcSkip==0 ) + { + ::memcpy( dest, src, channels * frames * sizeof(src[0]) ); + } + else + { + copy( channels, frames, dest, src, destSkip, srcSkip ); + } + } + + //-------------------------------------------------------------------------- + + // Add each sample in src to dest. Does not perform clipping or overflow testing. + template + void mix( int channels, size_t frames, Td *dest, const Ts *src, int destSkip=0, int srcSkip=0 ) + { + while( frames-- ) + { + int n=channels; + while( n-- ) + { + *dest+++=Td(*src++); + } + dest+=destSkip; + src+=srcSkip; + } + } + + //-------------------------------------------------------------------------- + + // Multiply each sample by mult. Does not perform clipping or overflow testing. + template + void scale( int channels, size_t frames, Td *dest, Ty mult, int destSkip=0 ) + { + while( frames-- ) + { + int n=channels; + while( n-- ) + { + *dest++=Td(*dest*mult); + } + dest+=destSkip; + } + } + + //-------------------------------------------------------------------------- + + // Half-wave rectify + template + void rectifyhalf( int channels, size_t frames, Ty *dest, int skip=0 ) + { + while( frames-- ) + { + int n=channels; + while( n-- ) + { + Ty v=*dest; + if( v<0 ) + v=0; + *dest++=v; + } + dest+=skip; + } + } + + //-------------------------------------------------------------------------- + + // Full-wave rectify + template + void rectifyfull( int channels, size_t frames, Ty *dest, int skip=0 ) + { + while( frames-- ) + { + int n=channels; + while( n-- ) + { + *dest++=std::abs(*dest); + } + dest+=skip; + } + } + + //-------------------------------------------------------------------------- + + // Calculate n-order difference + template + void derivative( /*int order,*/ int channels, size_t frames, Ty *dest, int destSkip=0 ) + { + assert( frames>0 ); + + int prev=-(channels+destSkip); + destSkip=destSkip+2*prev; + + Ty *dest0=dest; + + frames--; + dest=dest+frames*(channels+destSkip); + + if( frames>1 ) + { + while( frames-- ) + { + int n=channels; + while( n-- ) + { + *dest++=*dest-dest[prev]; + } + dest=dest+destSkip; + } + } + + int n=channels; + while( n-- ) + { + *dest++=0; + } + } + + //-------------------------------------------------------------------------- + + /* + template + void convolve( int channels, size_t frames, Ty *dest, int kernelSize, const Ty *kernel, int destSkip=0 ) + { + assert( frames>kernelSize ); + + const Ty *kernel0=kernel; + + frames-=kernelSize; + while( frames-- ) + { + int n=channels; + while( n-- ) + { + kernel=kernel0; + } + } + } + */ + + //-------------------------------------------------------------------------- + + // Interleave separate channels from source pointers to destination + // (Destination requires channels*frames samples of storage) + template + void interleave( int channels, size_t frames, Td *dest, const Ts *src[] ) + { + assert( channels!=1 ); + + switch( channels ) + { + case 2: + { + // unroll further if desired + const Ts *l=src[0]; + const Ts *r=src[1]; + switch( frames%4 ) + { + case 3: *dest++=*l++; *dest++=*r++;; + case 2: *dest++=*l++; *dest++=*r++;; + case 1: *dest++=*l++; *dest++=*r++;; + }; + frames/=4; + while( frames-- ) + { + *dest++=*l++; *dest++=*r++; + *dest++=*l++; *dest++=*r++; + *dest++=*l++; *dest++=*r++; + *dest++=*l++; *dest++=*r++; + } + } + break; + + default: + { + for( int i=0;i + void interleave( size_t frames, Td *dest, const Ts *left, const Ts *right ) + { + const Ts *src[2]; + src[0]=left; + src[1]=right; + interleave( 2, frames, dest, src ); + } + + //-------------------------------------------------------------------------- + + // Deinterleave channels from interleaved data to separate pointers. + template + void deinterleave( int channels, size_t frames, Td *dest[], const Ts *src ) + { + assert( channels!=1 ); + + switch( channels ) + { + case 2: + { + // unroll further if desired + Td *l=dest[0]; + Td *r=dest[1]; + switch( frames%4 ) + { + case 3: *l++=*src++; *r++=*src++; + case 2: *l++=*src++; *r++=*src++; + case 1: *l++=*src++; *r++=*src++; + }; + frames/=4; + while( frames-- ) + { + *l++=*src++; *r++=*src++; + *l++=*src++; *r++=*src++; + *l++=*src++; *r++=*src++; + *l++=*src++; *r++=*src++; + } + } + break; + + default: + { + for( int i=0;i + void deinterleave( size_t frames, Td *left, Td *right, const Ts *src ) + { + Td *dest[2]; + dest[0]=left; + dest[1]=right; + deinterleave( 2, frames, dest, src ); + } + + //-------------------------------------------------------------------------- + /* + Units + + w Angular frequency in radians per sample. 0..pi + + */ + //-------------------------------------------------------------------------- + + // Common structure for all filter specifications. + struct Spec + { + int order; // PoleFilterSpace order, >=1 + CalcT sampleRate; // Sample rate in Hz + CalcT cutoffFreq; // Cutoff frequency in Hz + CalcT passRippleDb; // Passband ripple in Db + CalcT stopBandDb; // Minimum stopband attenuation in Db + //CalcT cornerFreq1; // left corner frequency in Hz + //CalcT cornerFreq2; // right corner frequency in Hz + CalcT centerFreq; + CalcT normWidth; + CalcT gainDb; // gain or cut in Db + CalcT rollOff; // for elliptics + + Spec( void ) + { + // This is used as a flag to tell us + // that the structure is uninitialized. + order=0; + } + }; + + //-------------------------------------------------------------------------- + + // Information required to normalize the magnitude response of a filter. + // The Cascade determines the actual magnitude response at w, and applies a + // scale factor to the coefficients to achieve the specified target gain at w. + struct Normalization + { + CalcT w; // angular frequency + CalcT gain; // target gain + }; + + //-------------------------------------------------------------------------- + + // Representation of an Infinite Impulse Response filter modeled + // as a series of coefficients of second order sections. Derived + // classes provide storage for the coefficients. + struct Cascade + { + struct Stage; + + // Original source had no virtual destructor. + // I tried to put one in years ago, and had crashes. + // Seems ok now. + virtual ~Cascade() + { + } + + + // Initializes some important fields. + Cascade(); + + // Return the number of active stages. + int GetStageCount( void ); + + // Set the number of active stages up to max. + void SetStageCount( int n ); + + // Direct access to the stage array. + Stage *Stages( void ); + + // Convenience function for Biquads. + void SetStage1( CalcT a1, CalcT a2, CalcT b0, CalcT b1, CalcT b2 ); + + // Reset coefficients in preparation for realization. + void Reset( void ); + + // Add output scale factor to the cascade. + void Scale( CalcT factor ); + + // Determine response at angular frequency. + // Note that this is the only(?) funciton in the library that works 0.. 2 pi instead of 0..1 + Complex Response_radian( CalcT w ) const; + + // Determine resonse at normalized freq + Complex Response_normalized( CalcT f) const { return Response_radian(f * AudioMath::Pi * 2); } + + // Functor for finding the local + // maximum of the response magnitude. + struct ResponseFunctor + { + ResponseFunctor( Cascade *cascade ); + CalcT operator()( CalcT w ); + + private: + Cascade *m_cascade; + }; + + // The coefficients of one second-order-section. + struct Stage + { + // Reset coefficients. + void Reset( void ) + { + a[1]=0; a[2]=0; b[0]=1; b[1]=0; b[2]=0; + } + + CalcT a[3]; + CalcT b[3]; + }; + + protected: + int m_stageCount; + int m_stageMax; + Stage * m_stage; + }; + + //-------------------------------------------------------------------------- + + // Storage for Cascade stages. + template + struct CascadeSpace : virtual Cascade + { + CascadeSpace() + { + m_stageMax=sizeof(m_stages)/sizeof(m_stages[0]); + m_stage=m_stages; + } + + private: + // Each stage is order 2. + Stage m_stages[(maxorder+1)/2]; + }; + + //-------------------------------------------------------------------------- + + // Adds the ability to process sample data to a Cascade. + // Storage for each channel's history information is provided + // by derived classes. + struct CascadeFilter : virtual Cascade + { + // Clear the history buffer. Used on initialization, + // and should also be used if the audio source is changed + // in between filtering. + void Clear( void ); + + // Process data in place using Direct Form I + // skip is added after each frame. + // Direct Form I is more suitable when the filter parameters + // are changed often. However, it is slightly slower. + template + void ProcessI( size_t frames, Ty *dest, int skip=0 ); + + // Process data in place using Direct Form II + // skip is added after each frame. + // Direct Form II is slightly faster than Direct Form I, + // but changing filter parameters on stream can result + // in discontinuities in the output. It is best suited + // for a filter whose parameters are set only once. + template + void ProcessII( size_t frames, Ty *dest, int skip=0 ); + + // Convenience function that just calls ProcessI. + // Feel free to change the implementation. + template + void Process( size_t frames, Ty *dest, int skip=0 ) + { + ProcessI( frames, dest, skip ); + } + + // History information for one channel of one stage. + struct Hist + { + CalcT v[4]; + }; + + protected: + int m_nchan; + Hist * m_histp; + }; + + //-------------------------------------------------------------------------- + // + // Biquad Second Order IIR Filters + // + //-------------------------------------------------------------------------- + + // Biquad with stage storage. + struct Biquad : CascadeSpace<1> + { + Biquad(); + }; + + //-------------------------------------------------------------------------- + + // Low pass + struct BiquadLp : Biquad + { + void Setup ( CalcT normFreq, CalcT q ); + void SetupFast ( CalcT normFreq, CalcT q ); + protected: + void SetupCommon ( CalcT sn, CalcT cs, CalcT q ); + }; + + //-------------------------------------------------------------------------- + + // High pass + struct BiquadHp : Biquad + { + public: + void Setup ( CalcT normFreq, CalcT q ); + void SetupFast ( CalcT normFreq, CalcT q ); + protected: + void SetupCommon ( CalcT sn, CalcT cs, CalcT q ); + }; + + //-------------------------------------------------------------------------- + + // Band pass 1 + // Constant skirt gain, peak gain=Q + struct BiquadBp1 : Biquad + { + void Setup ( CalcT normFreq, CalcT q ); + void SetupFast ( CalcT normFreq, CalcT q ); + protected: + void SetupCommon ( CalcT sn, CalcT cs, CalcT q ); + }; + + //-------------------------------------------------------------------------- + + // Band pass 2 + // Constant 0dB peak gain + struct BiquadBp2 : Biquad + { + void Setup ( CalcT normFreq, CalcT q ); + void SetupFast ( CalcT normFreq, CalcT q ); + protected: + void SetupCommon ( CalcT sn, CalcT cs, CalcT q ); + }; + + //-------------------------------------------------------------------------- + + // Band stop + struct BiquadBs : Biquad + { + void Setup ( CalcT normFreq, CalcT q ); + void SetupFast ( CalcT normFreq, CalcT q ); + protected: + void SetupCommon ( CalcT sn, CalcT cs, CalcT q ); + }; + + //-------------------------------------------------------------------------- + + // All pass + struct BiquadAp : Biquad + { + void Setup ( CalcT normFreq, CalcT q ); + void SetupFast ( CalcT normFreq, CalcT q ); + protected: + void SetupCommon ( CalcT sn, CalcT cs, CalcT q ); + }; + + //-------------------------------------------------------------------------- + + // Low shelf + struct BiquadLs : Biquad + { + void Setup ( CalcT normFreq, CalcT dB, CalcT shelfSlope=1.0 ); + void SetupFast ( CalcT normFreq, CalcT dB, CalcT shelfSlope=1.0 ); + protected: + void SetupCommon ( CalcT cs, CalcT A, CalcT sa ); + }; + + //-------------------------------------------------------------------------- + + // High shelf + struct BiquadHs : Biquad + { + void Setup ( CalcT normFreq, CalcT dB, CalcT shelfSlope=1.0 ); + void SetupFast ( CalcT normFreq, CalcT dB, CalcT shelfSlope=1.0 ); + protected: + void SetupCommon ( CalcT cs, CalcT A, CalcT sa ); + }; + + //-------------------------------------------------------------------------- + + // Peak/notch + struct BiquadEq : Biquad + { + void Setup ( CalcT normFreq, CalcT dB, CalcT bandWidth ); + void SetupFast ( CalcT normFreq, CalcT dB, CalcT bandWidth ); + protected: + void SetupCommon ( CalcT sn, CalcT cs, CalcT alph, CalcT A ); + }; + + //-------------------------------------------------------------------------- + + // Biquad filter. + template + struct BiquadFilter : CascadeFilter + { + BiquadFilter() + { + m_nchan=channels; + m_histp=m_hist; + memset( m_hist, 0, sizeof(m_hist) ); + } + + private: + Hist m_hist[channels]; + }; + + //-------------------------------------------------------------------------- + + template + struct BiquadLowPass : BiquadLp, BiquadFilter + { + }; + + template + struct BiquadHighPass : BiquadHp, BiquadFilter + { + }; + + template + struct BiquadBandPass1 : BiquadBp1, BiquadFilter + { + }; + + template + struct BiquadBandPass2 : BiquadBp2, BiquadFilter + { + }; + + template + struct BiquadBandStop : BiquadBs, BiquadFilter + { + }; + + template + struct BiquadAllPass : BiquadAp, BiquadFilter + { + }; + + template + struct BiquadLowShelf : BiquadLs, BiquadFilter + { + }; + + template + struct BiquadHighShelf: BiquadHs, BiquadFilter + { + }; + + template + struct BiquadPeak: BiquadEq, BiquadFilter + { + }; + + //-------------------------------------------------------------------------- + // + // Pole Filters + // + //-------------------------------------------------------------------------- + + extern const Complex infinity; + + //-------------------------------------------------------------------------- + + // Representation of a filter as a set of poles and + // zeroes, corresponding to complex-valued roots of + // a rational transfer function. Storage is provided + // by a derived class. + struct Layout + { + // Return the number of available poles. + int CountPoles( void ) const + { + return m_pole->GetCount(); + } + + // Return the number of available zeros. + int CountZeros( void ) const + { + return m_zero->GetCount(); + } + + // Set the number of available poles up to max. + void SetPoles( int n ) + { + m_pole->SetCount( n ); + } + + // Set the number of available zeros up to max. + void SetZeros( int n ) + { + m_zero->SetCount( n ); + } + + // Retrieve the zero-based i-th pole. + Complex &Pole( int i ) + { + return m_pole->GetNth(i); + } + + // Retrieve the zero-based i-th zero. + Complex &Zero( int i ) + { + return m_zero->GetNth(i); + } + + // Direct access to the set of all poles. + Roots &Poles( void ) + { + return *m_pole; + } + + const Roots &Poles( void ) const + { + return *m_pole; + } + + // Direct access to the set of all zeros. + Roots &Zeros( void ) + { + return *m_zero; + } + + const Roots &Zeros( void ) const + { + return *m_zero; + } + + // Access normalization parameters. + Normalization &GetNormalization( void ) + { + return m_normal; + } + + const Normalization &GetNormalization( void ) const + { + return m_normal; + } + + // Build a Cascade from poles and zeroes. + void Realize( Cascade *cascade ); + void Realize_orig( Cascade *cascade ); + void Realize_custom( Cascade *cascade ); + void pairRoots(); + + private: + // Helpers for Realize(). + void BuildA( Cascade *cascade, CalcT x1, CalcT x2, int *na ); + void BuildB( Cascade *cascade, CalcT x0, CalcT x1, CalcT x2, int *nb ); + + protected: + Roots *m_pole; // The pole roots. + Roots *m_zero; // The zero roots. + Normalization m_normal; + }; + + //-------------------------------------------------------------------------- + + // Storage for a Layout. + template + struct LayoutSpace : virtual Layout + { + LayoutSpace() + { + m_pole=&m_poles; + m_zero=&m_zeros; + }; + + private: + RootsSpace m_poles; + RootsSpace m_zeros; + }; + + //-------------------------------------------------------------------------- + + // An abstract analog to digital transformation. This converts the + // layout of the analog prototype into a digital layout based on + // the type of transformation (low pass, high pass, band pass, band stop). + struct Transformation + { + }; + + // Low pass to low pass. + struct LowPass : Transformation + { + void Transform( const Spec &spec, Layout *result, const Layout &layout ); + protected: + void Transform( const Spec &spec, Roots *result, const Roots &roots ); + }; + + // Low pass to high pass. + struct HighPass : Transformation + { + void Transform( const Spec &spec, Layout *result, const Layout &layout ); + protected: + void Transform( const Spec &spec, Roots *result, const Roots &roots ); + }; + + // Low pass to band pass. + // The number of poles and zeroes is doubled. + struct BandPass : Transformation + { + void Transform( const Spec &spec, Layout *result, const Layout &layout ); + protected: + void Transform( const Spec &spec, Roots *result, const Roots &roots ); + Complex BandPassTransform( int i, const Complex &c ); + CalcT m_wc; + CalcT m_wc2; + }; + + // Low pass to band stop. + // The number of poles and zeroes is doubled. + struct BandStop : Transformation + { + void Transform( const Spec &spec, Layout *result, const Layout &layout ); + void Transform( const Spec &spec, Roots *result, const Roots &roots ); + void DesignZeros( const Spec &spec, Layout *layout ); + protected: + Complex BandStopTransform( int i, const Complex &c ); + CalcT m_wc; + CalcT m_wc2; + }; + + //-------------------------------------------------------------------------- + + // Abstract analog filter prototype. The filter is designed with fixed + // specifications and then transformed to the desired response. + // The layout is cached for fast parameter changes. + struct Prototype : virtual Layout + { + }; + + //-------------------------------------------------------------------------- + + // Abstract digital pole filter base + struct PoleFilter : CascadeFilter, virtual Layout + { + virtual void Setup( const Spec &spec )=0; + }; + + //-------------------------------------------------------------------------- + + // Component aggregate for a cascade filter that provides storage + // for coefficients, history buffer, and processing capabilities. + template + struct PoleFilterSpace : PoleFilter, LayoutSpace, CascadeSpace + { + PoleFilterSpace() + { + m_nchan=channels; + m_histp=m_hist; + memset( m_hist, 0, sizeof(m_hist) ); + } + + void Setup( const Spec &spec ) override + { + m_proto.Design( spec ); + m_trans.Transform( spec, this, m_proto ); + Realize( this ); + } + + private: + template + struct PrototypeSpace : Base, LayoutSpace + { + }; + + PrototypeSpace m_proto; + Trans m_trans; + Hist m_hist[channels*((maxorder+1)/2)]; + }; + + //-------------------------------------------------------------------------- + // + // Butterworth + // + //-------------------------------------------------------------------------- + + // Low pass prototype + struct Butter : Prototype + { + void Design( const Spec &spec ); + }; + + // Low shelf prototype + struct ButterShelf : Prototype + { + void Design( const Spec &spec ); + }; + + //-------------------------------------------------------------------------- + + template + struct ButterLowPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ButterHighPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ButterBandPass : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ButterBandStop : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ButterLowShelf : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT gainDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ButterHighShelf : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT gainDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ButterEq : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT gainDb ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + // + // Chebyshev Type I + // + //-------------------------------------------------------------------------- + + // Low pass prototype + struct ChebyI : Prototype + { + void Design( const Spec &spec ); + }; + + // Low shelf prototype + struct ChebyIShelf : Prototype + { + void Design( const Spec &spec ); + }; + + //-------------------------------------------------------------------------- + + template + struct ChebyILowPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIHighPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIBandPass : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIBandStop : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyILowShelf : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT gainDb, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIHighShelf : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT gainDb, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIEq : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT gainDb, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + // + // Chebyshev Type II + // + //-------------------------------------------------------------------------- + + // Low pass prototype + struct ChebyII : Prototype + { + void Design( const Spec &spec ); + }; + + // Low shelf prototype + struct ChebyIIShelf : Prototype + { + void Design( const Spec &spec ); + }; + + //-------------------------------------------------------------------------- + + template + struct ChebyIILowPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT stopBandDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.stopBandDb=stopBandDb; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct ChebyIIHighPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT stopBandDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.stopBandDb=stopBandDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIIBandPass : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT stopBandDb ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.stopBandDb=stopBandDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIIBandStop : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT stopBandDb ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.stopBandDb=stopBandDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIILowShelf : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT gainDb, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIIHighShelf : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT gainDb, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + template + struct ChebyIIEq : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT gainDb, CalcT rippleDb ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.passRippleDb=rippleDb; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + // + // Elliptic + // + //-------------------------------------------------------------------------- + + // Low pass prototype + struct Elliptic : Prototype + { + void Design( const Spec &spec ); + + protected: + void prodpoly ( int sn ); + void calcfz2 ( int i ); + void calcfz ( void ); + void calcqz ( void ); + CalcT findfact ( int t ); + CalcT calcsn ( CalcT u ); + CalcT ellipticK ( CalcT k ); + + protected: + template + struct CalcArray + { + CalcT &operator[](size_t index) + { + assert( index>=0 && index m_zeros; + CalcArray<100> m_c1; + CalcArray<100> m_b1; + CalcArray<100> m_a1; + CalcArray<100> m_d1; + CalcArray<100> m_q1; + CalcArray<100> m_z1; + CalcArray<100> m_f1; + CalcArray<100> m_s1; + CalcArray<100> m_p ; + CalcArray<100> m_zw1; + CalcArray<100> m_zf1; + CalcArray<100> m_zq1; + CalcArray<100> m_rootR; + CalcArray<100> m_rootI; + CalcT m_e; + int m_nin; + int m_m; + int m_n2; + int m_em; + }; + + //-------------------------------------------------------------------------- + + template + struct EllipticLowPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT passRippleDb, CalcT rollOff ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=passRippleDb; + spec.rollOff=rollOff; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct EllipticHighPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT passRippleDb, CalcT rollOff ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.passRippleDb=passRippleDb; + spec.rollOff=rollOff; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct EllipticBandPass : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT passRippleDb, CalcT rollOff ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.passRippleDb=passRippleDb; + spec.rollOff=rollOff; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct EllipticBandStop : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth, CalcT passRippleDb, CalcT rollOff ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + spec.passRippleDb=passRippleDb; + spec.rollOff=rollOff; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + // + // Bessel + // + //-------------------------------------------------------------------------- + + // Low pass prototype + struct Bessel : Prototype + { + void Design( const Spec &spec ); + }; + + // Low shelf prototype + struct BesselShelf : Prototype + { + void Design( const Spec &spec ); + }; + + //-------------------------------------------------------------------------- + + template + struct BesselLowPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct BesselHighPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct BesselBandPass : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct BesselBandStop : PoleFilterSpace + { + void SetupAs( CalcT centerFreq, CalcT normWidth ) + { + Spec spec; + spec.order=order; + spec.centerFreq=centerFreq; + spec.normWidth=normWidth; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + + template + struct BesselLowShelf : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq, CalcT gainDb ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + spec.gainDb=gainDb; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- + // + // Legendere + // + //-------------------------------------------------------------------------- + + // Low pass prototype + struct Legendere : Prototype + { + void Design( const Spec &spec ); + }; + + //-------------------------------------------------------------------------- + + template + struct LegendereLowPass : PoleFilterSpace + { + void SetupAs( CalcT cutoffFreq ) + { + Spec spec; + spec.order=order; + spec.cutoffFreq=cutoffFreq; + spec.sampleRate=1; + PoleFilterSpace::Setup( spec ); + } + }; + + //-------------------------------------------------------------------------- +}; + +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hg_archival.txt b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hg_archival.txt new file mode 100644 index 00000000..a713a11d --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hg_archival.txt @@ -0,0 +1,4 @@ +repo: d844c818f599aea64fe86745cdd2ef9b3d1910dc +node: b354a59534b0a77c43c67deb1eb1bc39eb99b487 +branch: default +tag: v130 diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgignore b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgignore new file mode 100644 index 00000000..978fa7f5 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgignore @@ -0,0 +1,10 @@ +syntax:glob +test/bm_* +test/st_* +test/tkfc_* +test/tr_* +tools/fastconv_* +tools/fastconvr_* +tools/fft_* +*.swp +*~ diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgtags b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgtags new file mode 100644 index 00000000..398c1b6e --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/.hgtags @@ -0,0 +1,20 @@ +32061530d4353ced38386a4578153954f46e5f8e v04_prehg +52a9ca23c9d9600794388912103e0f7d5f4c92ee v1_2_2_prehg +68e0375761a5789d72c4baa2f8265cec26fb546e v110_prehg +69a218df7458f0269a84b07f64678392edbff941 v111_prehg +702f90b11f060d45b23d563764a3b1bd8f851b7d about2do_real_multi_d_prehg +9c3041fb0677c071d7ca2797e22a63fe681d311b b4simd_prehg +9e532c64d324a0844f1efa7c32908fc2bc0cf350 v1_2_6_prehg +a9797b79bf2c61f7c8259ec417a0189caa48b17a v1_2_3_prehg +b1b2739c82378d6e04977440b2c31b7d1b34c266 aftersimd_prehg +b8c210e0bccdeb66930423a528b11b3660491af8 v120_prehg +c16172181d6aef63712a3f7bc31ef555ce7178bd help_prehg +c16172181d6aef63712a3f7bc31ef555ce7178bd v1_2_3a_prehg +c83c1ec6a5f21c40edf3bb9cbfd8ba1f862f1e0f half_bottle_o_wine_prehg +dec01bc9c4c5f807e2e04aef3449031bc5c6b69e v1_2_5_prehg +e6a840a1383ffc83c8ba17ed4b0bf5d6aefc9a34 v127_prehg +ea3a56794d9326d5505b5bf02f98a70217a1b86d v101_prehg +edd6236ecb25904b385856ffae608548ce3df4e5 v011_prehg +f19b7bcef3f322d277d5b51b2b132657cf08c1a7 v1_2_8_prehg +f73f8d58c37d52379e9d7f13d81f5391226209c1 v1_2_1_prehg +9e0bf8478cc337da0de18b7413d51c714aa0db46 v129 diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/CHANGELOG b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/CHANGELOG new file mode 100644 index 00000000..2dd36037 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/CHANGELOG @@ -0,0 +1,123 @@ +1.3.0 2012-07-18 + removed non-standard malloc.h from kiss_fft.h + + moved -lm to end of link line + + checked various return values + + converted python Numeric code to NumPy + + fixed test of int32_t on 64 bit OS + + added padding in a couple of places to allow SIMD alignment of structs + +1.2.9 2010-05-27 + threadsafe ( including OpenMP ) + + first edition of kissfft.hh the C++ template fft engine + +1.2.8 + Changed memory.h to string.h -- apparently more standard + + Added openmp extensions. This can have fairly linear speedups for larger FFT sizes. + +1.2.7 + Shrank the real-fft memory footprint. Thanks to Galen Seitz. + +1.2.6 (Nov 14, 2006) The "thanks to GenArts" release. + Added multi-dimensional real-optimized FFT, see tools/kiss_fftndr + Thanks go to GenArts, Inc. for sponsoring the development. + +1.2.5 (June 27, 2006) The "release for no good reason" release. + Changed some harmless code to make some compilers' warnings go away. + Added some more digits to pi -- why not. + Added kiss_fft_next_fast_size() function to help people decide how much to pad. + Changed multidimensional test from 8 dimensions to only 3 to avoid testing + problems with fixed point (sorry Buckaroo Banzai). + +1.2.4 (Oct 27, 2005) The "oops, inverse fixed point real fft was borked" release. + Fixed scaling bug for inverse fixed point real fft -- also fixed test code that should've been failing. + Thanks to Jean-Marc Valin for bug report. + + Use sys/types.h for more portable types than short,int,long => int16_t,int32_t,int64_t + If your system does not have these, you may need to define them -- but at least it breaks in a + loud and easily fixable way -- unlike silently using the wrong size type. + + Hopefully tools/psdpng.c is fixed -- thanks to Steve Kellog for pointing out the weirdness. + +1.2.3 (June 25, 2005) The "you want to use WHAT as a sample" release. + Added ability to use 32 bit fixed point samples -- requires a 64 bit intermediate result, a la 'long long' + + Added ability to do 4 FFTs in parallel by using SSE SIMD instructions. This is accomplished by + using the __m128 (vector of 4 floats) as kiss_fft_scalar. Define USE_SIMD to use this. + + I know, I know ... this is drifting a bit from the "kiss" principle, but the speed advantages + make it worth it for some. Also recent gcc makes it SOO easy to use vectors of 4 floats like a POD type. + +1.2.2 (May 6, 2005) The Matthew release + Replaced fixed point division with multiply&shift. Thanks to Jean-Marc Valin for + discussions regarding. Considerable speedup for fixed-point. + + Corrected overflow protection in real fft routines when using fixed point. + Finder's Credit goes to Robert Oschler of robodance for pointing me at the bug. + This also led to the CHECK_OVERFLOW_OP macro. + +1.2.1 (April 4, 2004) + compiles cleanly with just about every -W warning flag under the sun + + reorganized kiss_fft_state so it could be read-only/const. This may be useful for embedded systems + that are willing to predeclare twiddle factors, factorization. + + Fixed C_MUL,S_MUL on 16-bit platforms. + + tmpbuf will only be allocated if input & output buffers are same + scratchbuf will only be allocated for ffts that are not multiples of 2,3,5 + + NOTE: The tmpbuf,scratchbuf changes may require synchronization code for multi-threaded apps. + + +1.2 (Feb 23, 2004) + interface change -- cfg object is forward declaration of struct instead of void* + This maintains type saftey and lets the compiler warn/error about stupid mistakes. + (prompted by suggestion from Erik de Castro Lopo) + + small speed improvements + + added psdpng.c -- sample utility that will create png spectrum "waterfalls" from an input file + ( not terribly useful yet) + +1.1.1 (Feb 1, 2004 ) + minor bug fix -- only affects odd rank, in-place, multi-dimensional FFTs + +1.1 : (Jan 30,2004) + split sample_code/ into test/ and tools/ + + Removed 2-D fft and added N-D fft (arbitrary) + + modified fftutil.c to allow multi-d FFTs + + Modified core fft routine to allow an input stride via kiss_fft_stride() + (eased support of multi-D ffts) + + Added fast convolution filtering (FIR filtering using overlap-scrap method, with tail scrap) + + Add kfc.[ch]: the KISS FFT Cache. It takes care of allocs for you ( suggested by Oscar Lesta ). + +1.0.1 (Dec 15, 2003) + fixed bug that occurred when nfft==1. Thanks to Steven Johnson. + +1.0 : (Dec 14, 2003) + changed kiss_fft function from using a single buffer, to two buffers. + If the same buffer pointer is supplied for both in and out, kiss will + manage the buffer copies. + + added kiss_fft2d and kiss_fftr as separate source files (declarations in kiss_fft.h ) + +0.4 :(Nov 4,2003) optimized for radix 2,3,4,5 + +0.3 :(Oct 28, 2003) woops, version 2 didn't actually factor out any radices other than 2. + Thanks to Steven Johnson for finding this one. + +0.2 :(Oct 27, 2003) added mixed radix, only radix 2,4 optimized versions + +0.1 :(May 19 2003) initial release, radix 2 only diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/COPYING b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/COPYING new file mode 100644 index 00000000..2fc6685a --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/COPYING @@ -0,0 +1,11 @@ +Copyright (c) 2003-2010 Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/Makefile b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/Makefile new file mode 100644 index 00000000..96f43d3f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/Makefile @@ -0,0 +1,33 @@ +KFVER=130 + +doc: + @echo "Start by reading the README file. If you want to build and test lots of stuff, do a 'make testall'" + @echo "but be aware that 'make testall' has dependencies that the basic kissfft software does not." + @echo "It is generally unneeded to run these tests yourself, unless you plan on changing the inner workings" + @echo "of kissfft and would like to make use of its regression tests." + +testall: + # The simd and int32_t types may or may not work on your machine + make -C test DATATYPE=simd CFLAGADD="$(CFLAGADD)" test + make -C test DATATYPE=int32_t CFLAGADD="$(CFLAGADD)" test + make -C test DATATYPE=int16_t CFLAGADD="$(CFLAGADD)" test + make -C test DATATYPE=float CFLAGADD="$(CFLAGADD)" test + make -C test DATATYPE=double CFLAGADD="$(CFLAGADD)" test + echo "all tests passed" + +tarball: clean + hg archive -r v$(KFVER) -t tgz kiss_fft$(KFVER).tar.gz + hg archive -r v$(KFVER) -t zip kiss_fft$(KFVER).zip + +clean: + cd test && make clean + cd tools && make clean + rm -f kiss_fft*.tar.gz *~ *.pyc kiss_fft*.zip + +asm: kiss_fft.s + +kiss_fft.s: kiss_fft.c kiss_fft.h _kiss_fft_guts.h + [ -e kiss_fft.s ] && mv kiss_fft.s kiss_fft.s~ || true + gcc -S kiss_fft.c -O3 -mtune=native -ffast-math -fomit-frame-pointer -unroll-loops -dA -fverbose-asm + gcc -o kiss_fft_short.s -S kiss_fft.c -O3 -mtune=native -ffast-math -fomit-frame-pointer -dA -fverbose-asm -DFIXED_POINT + [ -e kiss_fft.s~ ] && diff kiss_fft.s~ kiss_fft.s || true diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README new file mode 100644 index 00000000..03b2e7a9 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README @@ -0,0 +1,134 @@ +KISS FFT - A mixed-radix Fast Fourier Transform based up on the principle, +"Keep It Simple, Stupid." + + There are many great fft libraries already around. Kiss FFT is not trying +to be better than any of them. It only attempts to be a reasonably efficient, +moderately useful FFT that can use fixed or floating data types and can be +incorporated into someone's C program in a few minutes with trivial licensing. + +USAGE: + + The basic usage for 1-d complex FFT is: + + #include "kiss_fft.h" + + kiss_fft_cfg cfg = kiss_fft_alloc( nfft ,is_inverse_fft ,0,0 ); + + while ... + + ... // put kth sample in cx_in[k].r and cx_in[k].i + + kiss_fft( cfg , cx_in , cx_out ); + + ... // transformed. DC is in cx_out[0].r and cx_out[0].i + + free(cfg); + + Note: frequency-domain data is stored from dc up to 2pi. + so cx_out[0] is the dc bin of the FFT + and cx_out[nfft/2] is the Nyquist bin (if exists) + + Declarations are in "kiss_fft.h", along with a brief description of the +functions you'll need to use. + +Code definitions for 1d complex FFTs are in kiss_fft.c. + +You can do other cool stuff with the extras you'll find in tools/ + + * multi-dimensional FFTs + * real-optimized FFTs (returns the positive half-spectrum: (nfft/2+1) complex frequency bins) + * fast convolution FIR filtering (not available for fixed point) + * spectrum image creation + +The core fft and most tools/ code can be compiled to use float, double, + Q15 short or Q31 samples. The default is float. + + +BACKGROUND: + + I started coding this because I couldn't find a fixed point FFT that didn't +use assembly code. I started with floating point numbers so I could get the +theory straight before working on fixed point issues. In the end, I had a +little bit of code that could be recompiled easily to do ffts with short, float +or double (other types should be easy too). + + Once I got my FFT working, I was curious about the speed compared to +a well respected and highly optimized fft library. I don't want to criticize +this great library, so let's call it FFT_BRANDX. +During this process, I learned: + + 1. FFT_BRANDX has more than 100K lines of code. The core of kiss_fft is about 500 lines (cpx 1-d). + 2. It took me an embarrassingly long time to get FFT_BRANDX working. + 3. A simple program using FFT_BRANDX is 522KB. A similar program using kiss_fft is 18KB (without optimizing for size). + 4. FFT_BRANDX is roughly twice as fast as KISS FFT in default mode. + + It is wonderful that free, highly optimized libraries like FFT_BRANDX exist. +But such libraries carry a huge burden of complexity necessary to extract every +last bit of performance. + + Sometimes simpler is better, even if it's not better. + +FREQUENTLY ASKED QUESTIONS: + Q: Can I use kissfft in a project with a ___ license? + A: Yes. See LICENSE below. + + Q: Why don't I get the output I expect? + A: The two most common causes of this are + 1) scaling : is there a constant multiplier between what you got and what you want? + 2) mixed build environment -- all code must be compiled with same preprocessor + definitions for FIXED_POINT and kiss_fft_scalar + + Q: Will you write/debug my code for me? + A: Probably not unless you pay me. I am happy to answer pointed and topical questions, but + I may refer you to a book, a forum, or some other resource. + + +PERFORMANCE: + (on Athlon XP 2100+, with gcc 2.96, float data type) + + Kiss performed 10000 1024-pt cpx ffts in .63 s of cpu time. + For comparison, it took md5sum twice as long to process the same amount of data. + + Transforming 5 minutes of CD quality audio takes less than a second (nfft=1024). + +DO NOT: + ... use Kiss if you need the Fastest Fourier Transform in the World + ... ask me to add features that will bloat the code + +UNDER THE HOOD: + + Kiss FFT uses a time decimation, mixed-radix, out-of-place FFT. If you give it an input buffer + and output buffer that are the same, a temporary buffer will be created to hold the data. + + No static data is used. The core routines of kiss_fft are thread-safe (but not all of the tools directory). + + No scaling is done for the floating point version (for speed). + Scaling is done both ways for the fixed-point version (for overflow prevention). + + Optimized butterflies are used for factors 2,3,4, and 5. + + The real (i.e. not complex) optimization code only works for even length ffts. It does two half-length + FFTs in parallel (packed into real&imag), and then combines them via twiddling. The result is + nfft/2+1 complex frequency bins from DC to Nyquist. If you don't know what this means, search the web. + + The fast convolution filtering uses the overlap-scrap method, slightly + modified to put the scrap at the tail. + +LICENSE: + Revised BSD License, see COPYING for verbiage. + Basically, "free to use&change, give credit where due, no guarantees" + Note this license is compatible with GPL at one end of the spectrum and closed, commercial software at + the other end. See http://www.fsf.org/licensing/licenses + + A commercial license is available which removes the requirement for attribution. Contact me for details. + + +TODO: + *) Add real optimization for odd length FFTs + *) Document/revisit the input/output fft scaling + *) Make doc describing the overlap (tail) scrap fast convolution filtering in kiss_fastfir.c + *) Test all the ./tools/ code with fixed point (kiss_fastfir.c doesn't work, maybe others) + +AUTHOR: + Mark Borgerding + Mark@Borgerding.net diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README.simd b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README.simd new file mode 100644 index 00000000..b0fdac55 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/README.simd @@ -0,0 +1,78 @@ +If you are reading this, it means you think you may be interested in using the SIMD extensions in kissfft +to do 4 *separate* FFTs at once. + +Beware! Beyond here there be dragons! + +This API is not easy to use, is not well documented, and breaks the KISS principle. + + +Still reading? Okay, you may get rewarded for your patience with a considerable speedup +(2-3x) on intel x86 machines with SSE if you are willing to jump through some hoops. + +The basic idea is to use the packed 4 float __m128 data type as a scalar element. +This means that the format is pretty convoluted. It performs 4 FFTs per fft call on signals A,B,C,D. + +For complex data, the data is interlaced as follows: +rA0,rB0,rC0,rD0, iA0,iB0,iC0,iD0, rA1,rB1,rC1,rD1, iA1,iB1,iC1,iD1 ... +where "rA0" is the real part of the zeroth sample for signal A + +Real-only data is laid out: +rA0,rB0,rC0,rD0, rA1,rB1,rC1,rD1, ... + +Compile with gcc flags something like +-O3 -mpreferred-stack-boundary=4 -DUSE_SIMD=1 -msse + +Be aware of SIMD alignment. This is the most likely cause of segfaults. +The code within kissfft uses scratch variables on the stack. +With SIMD, these must have addresses on 16 byte boundaries. +Search on "SIMD alignment" for more info. + + + +Robin at Divide Concept was kind enough to share his code for formatting to/from the SIMD kissfft. +I have not run it -- use it at your own risk. It appears to do 4xN and Nx4 transpositions +(out of place). + +void SSETools::pack128(float* target, float* source, unsigned long size128) +{ + __m128* pDest = (__m128*)target; + __m128* pDestEnd = pDest+size128; + float* source0=source; + float* source1=source0+size128; + float* source2=source1+size128; + float* source3=source2+size128; + + while(pDest + +#define MAXFACTORS 32 +/* e.g. an fft of length 128 has 4 factors + as far as kissfft is concerned + 4*4*4*2 + */ + +struct kiss_fft_state{ + int nfft; + int inverse; + int factors[2*MAXFACTORS]; + kiss_fft_cpx twiddles[1]; +}; + +/* + Explanation of macros dealing with complex math: + + C_MUL(m,a,b) : m = a*b + C_FIXDIV( c , div ) : if a fixed point impl., c /= div. noop otherwise + C_SUB( res, a,b) : res = a - b + C_SUBFROM( res , a) : res -= a + C_ADDTO( res , a) : res += a + * */ +#ifdef FIXED_POINT +#if (FIXED_POINT==32) +# define FRACBITS 31 +# define SAMPPROD int64_t +#define SAMP_MAX 2147483647 +#else +# define FRACBITS 15 +# define SAMPPROD int32_t +#define SAMP_MAX 32767 +#endif + +#define SAMP_MIN -SAMP_MAX + +#if defined(CHECK_OVERFLOW) +# define CHECK_OVERFLOW_OP(a,op,b) \ + if ( (SAMPPROD)(a) op (SAMPPROD)(b) > SAMP_MAX || (SAMPPROD)(a) op (SAMPPROD)(b) < SAMP_MIN ) { \ + fprintf(stderr,"WARNING:overflow @ " __FILE__ "(%d): (%d " #op" %d) = %ld\n",__LINE__,(a),(b),(SAMPPROD)(a) op (SAMPPROD)(b) ); } +#endif + + +# define smul(a,b) ( (SAMPPROD)(a)*(b) ) +# define sround( x ) (kiss_fft_scalar)( ( (x) + (1<<(FRACBITS-1)) ) >> FRACBITS ) + +# define S_MUL(a,b) sround( smul(a,b) ) + +# define C_MUL(m,a,b) \ + do{ (m).r = sround( smul((a).r,(b).r) - smul((a).i,(b).i) ); \ + (m).i = sround( smul((a).r,(b).i) + smul((a).i,(b).r) ); }while(0) + +# define DIVSCALAR(x,k) \ + (x) = sround( smul( x, SAMP_MAX/k ) ) + +# define C_FIXDIV(c,div) \ + do { DIVSCALAR( (c).r , div); \ + DIVSCALAR( (c).i , div); }while (0) + +# define C_MULBYSCALAR( c, s ) \ + do{ (c).r = sround( smul( (c).r , s ) ) ;\ + (c).i = sround( smul( (c).i , s ) ) ; }while(0) + +#else /* not FIXED_POINT*/ + +# define S_MUL(a,b) ( (a)*(b) ) +#define C_MUL(m,a,b) \ + do{ (m).r = (a).r*(b).r - (a).i*(b).i;\ + (m).i = (a).r*(b).i + (a).i*(b).r; }while(0) +# define C_FIXDIV(c,div) /* NOOP */ +# define C_MULBYSCALAR( c, s ) \ + do{ (c).r *= (s);\ + (c).i *= (s); }while(0) +#endif + +#ifndef CHECK_OVERFLOW_OP +# define CHECK_OVERFLOW_OP(a,op,b) /* noop */ +#endif + +#define C_ADD( res, a,b)\ + do { \ + CHECK_OVERFLOW_OP((a).r,+,(b).r)\ + CHECK_OVERFLOW_OP((a).i,+,(b).i)\ + (res).r=(a).r+(b).r; (res).i=(a).i+(b).i; \ + }while(0) +#define C_SUB( res, a,b)\ + do { \ + CHECK_OVERFLOW_OP((a).r,-,(b).r)\ + CHECK_OVERFLOW_OP((a).i,-,(b).i)\ + (res).r=(a).r-(b).r; (res).i=(a).i-(b).i; \ + }while(0) +#define C_ADDTO( res , a)\ + do { \ + CHECK_OVERFLOW_OP((res).r,+,(a).r)\ + CHECK_OVERFLOW_OP((res).i,+,(a).i)\ + (res).r += (a).r; (res).i += (a).i;\ + }while(0) + +#define C_SUBFROM( res , a)\ + do {\ + CHECK_OVERFLOW_OP((res).r,-,(a).r)\ + CHECK_OVERFLOW_OP((res).i,-,(a).i)\ + (res).r -= (a).r; (res).i -= (a).i; \ + }while(0) + + +#ifdef FIXED_POINT +# define KISS_FFT_COS(phase) floor(.5+SAMP_MAX * cos (phase)) +# define KISS_FFT_SIN(phase) floor(.5+SAMP_MAX * sin (phase)) +# define HALF_OF(x) ((x)>>1) +#elif defined(USE_SIMD) +# define KISS_FFT_COS(phase) _mm_set1_ps( cos(phase) ) +# define KISS_FFT_SIN(phase) _mm_set1_ps( sin(phase) ) +# define HALF_OF(x) ((x)*_mm_set1_ps(.5)) +#else +# define KISS_FFT_COS(phase) (kiss_fft_scalar) cos(phase) +# define KISS_FFT_SIN(phase) (kiss_fft_scalar) sin(phase) +# define HALF_OF(x) ((x)*.5) +#endif + +#define kf_cexp(x,phase) \ + do{ \ + (x)->r = KISS_FFT_COS(phase);\ + (x)->i = KISS_FFT_SIN(phase);\ + }while(0) + + +/* a debugging function */ +#define pcpx(c)\ + fprintf(stderr,"%g + %gi\n",(double)((c)->r),(double)((c)->i) ) + + +#ifdef KISS_FFT_USE_ALLOCA +// define this to allow use of alloca instead of malloc for temporary buffers +// Temporary buffers are used in two case: +// 1. FFT sizes that have "bad" factors. i.e. not 2,3 and 5 +// 2. "in-place" FFTs. Notice the quotes, since kissfft does not really do an in-place transform. +#include +#define KISS_FFT_TMP_ALLOC(nbytes) alloca(nbytes) +#define KISS_FFT_TMP_FREE(ptr) +#else +#define KISS_FFT_TMP_ALLOC(nbytes) KISS_FFT_MALLOC(nbytes) +#define KISS_FFT_TMP_FREE(ptr) KISS_FFT_FREE(ptr) +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.c new file mode 100644 index 00000000..103a6b9a --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.c @@ -0,0 +1,408 @@ +/* +Copyright (c) 2003-2010, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + + +#include "_kiss_fft_guts.h" +/* The guts header contains all the multiplication and addition macros that are defined for + fixed or floating point complex numbers. It also delares the kf_ internal functions. + */ + +static void kf_bfly2( + kiss_fft_cpx * Fout, + const size_t fstride, + const kiss_fft_cfg st, + int m + ) +{ + kiss_fft_cpx * Fout2; + kiss_fft_cpx * tw1 = st->twiddles; + kiss_fft_cpx t; + Fout2 = Fout + m; + do{ + C_FIXDIV(*Fout,2); C_FIXDIV(*Fout2,2); + + C_MUL (t, *Fout2 , *tw1); + tw1 += fstride; + C_SUB( *Fout2 , *Fout , t ); + C_ADDTO( *Fout , t ); + ++Fout2; + ++Fout; + }while (--m); +} + +static void kf_bfly4( + kiss_fft_cpx * Fout, + const size_t fstride, + const kiss_fft_cfg st, + const size_t m + ) +{ + kiss_fft_cpx *tw1,*tw2,*tw3; + kiss_fft_cpx scratch[6]; + size_t k=m; + const size_t m2=2*m; + const size_t m3=3*m; + + + tw3 = tw2 = tw1 = st->twiddles; + + do { + C_FIXDIV(*Fout,4); C_FIXDIV(Fout[m],4); C_FIXDIV(Fout[m2],4); C_FIXDIV(Fout[m3],4); + + C_MUL(scratch[0],Fout[m] , *tw1 ); + C_MUL(scratch[1],Fout[m2] , *tw2 ); + C_MUL(scratch[2],Fout[m3] , *tw3 ); + + C_SUB( scratch[5] , *Fout, scratch[1] ); + C_ADDTO(*Fout, scratch[1]); + C_ADD( scratch[3] , scratch[0] , scratch[2] ); + C_SUB( scratch[4] , scratch[0] , scratch[2] ); + C_SUB( Fout[m2], *Fout, scratch[3] ); + tw1 += fstride; + tw2 += fstride*2; + tw3 += fstride*3; + C_ADDTO( *Fout , scratch[3] ); + + if(st->inverse) { + Fout[m].r = scratch[5].r - scratch[4].i; + Fout[m].i = scratch[5].i + scratch[4].r; + Fout[m3].r = scratch[5].r + scratch[4].i; + Fout[m3].i = scratch[5].i - scratch[4].r; + }else{ + Fout[m].r = scratch[5].r + scratch[4].i; + Fout[m].i = scratch[5].i - scratch[4].r; + Fout[m3].r = scratch[5].r - scratch[4].i; + Fout[m3].i = scratch[5].i + scratch[4].r; + } + ++Fout; + }while(--k); +} + +static void kf_bfly3( + kiss_fft_cpx * Fout, + const size_t fstride, + const kiss_fft_cfg st, + size_t m + ) +{ + size_t k=m; + const size_t m2 = 2*m; + kiss_fft_cpx *tw1,*tw2; + kiss_fft_cpx scratch[5]; + kiss_fft_cpx epi3; + epi3 = st->twiddles[fstride*m]; + + tw1=tw2=st->twiddles; + + do{ + C_FIXDIV(*Fout,3); C_FIXDIV(Fout[m],3); C_FIXDIV(Fout[m2],3); + + C_MUL(scratch[1],Fout[m] , *tw1); + C_MUL(scratch[2],Fout[m2] , *tw2); + + C_ADD(scratch[3],scratch[1],scratch[2]); + C_SUB(scratch[0],scratch[1],scratch[2]); + tw1 += fstride; + tw2 += fstride*2; + + Fout[m].r = Fout->r - (kiss_fft_scalar) HALF_OF(scratch[3].r); + Fout[m].i = Fout->i - (kiss_fft_scalar) HALF_OF(scratch[3].i); + + C_MULBYSCALAR( scratch[0] , epi3.i ); + + C_ADDTO(*Fout,scratch[3]); + + Fout[m2].r = Fout[m].r + scratch[0].i; + Fout[m2].i = Fout[m].i - scratch[0].r; + + Fout[m].r -= scratch[0].i; + Fout[m].i += scratch[0].r; + + ++Fout; + }while(--k); +} + +static void kf_bfly5( + kiss_fft_cpx * Fout, + const size_t fstride, + const kiss_fft_cfg st, + int m + ) +{ + kiss_fft_cpx *Fout0,*Fout1,*Fout2,*Fout3,*Fout4; + int u; + kiss_fft_cpx scratch[13]; + kiss_fft_cpx * twiddles = st->twiddles; + kiss_fft_cpx *tw; + kiss_fft_cpx ya,yb; + ya = twiddles[fstride*m]; + yb = twiddles[fstride*2*m]; + + Fout0=Fout; + Fout1=Fout0+m; + Fout2=Fout0+2*m; + Fout3=Fout0+3*m; + Fout4=Fout0+4*m; + + tw=st->twiddles; + for ( u=0; ur += scratch[7].r + scratch[8].r; + Fout0->i += scratch[7].i + scratch[8].i; + + scratch[5].r = scratch[0].r + S_MUL(scratch[7].r,ya.r) + S_MUL(scratch[8].r,yb.r); + scratch[5].i = scratch[0].i + S_MUL(scratch[7].i,ya.r) + S_MUL(scratch[8].i,yb.r); + + scratch[6].r = S_MUL(scratch[10].i,ya.i) + S_MUL(scratch[9].i,yb.i); + scratch[6].i = -S_MUL(scratch[10].r,ya.i) - S_MUL(scratch[9].r,yb.i); + + C_SUB(*Fout1,scratch[5],scratch[6]); + C_ADD(*Fout4,scratch[5],scratch[6]); + + scratch[11].r = scratch[0].r + S_MUL(scratch[7].r,yb.r) + S_MUL(scratch[8].r,ya.r); + scratch[11].i = scratch[0].i + S_MUL(scratch[7].i,yb.r) + S_MUL(scratch[8].i,ya.r); + scratch[12].r = - S_MUL(scratch[10].i,yb.i) + S_MUL(scratch[9].i,ya.i); + scratch[12].i = S_MUL(scratch[10].r,yb.i) - S_MUL(scratch[9].r,ya.i); + + C_ADD(*Fout2,scratch[11],scratch[12]); + C_SUB(*Fout3,scratch[11],scratch[12]); + + ++Fout0;++Fout1;++Fout2;++Fout3;++Fout4; + } +} + +/* perform the butterfly for one stage of a mixed radix FFT */ +static void kf_bfly_generic( + kiss_fft_cpx * Fout, + const size_t fstride, + const kiss_fft_cfg st, + int m, + int p + ) +{ + int u,k,q1,q; + kiss_fft_cpx * twiddles = st->twiddles; + kiss_fft_cpx t; + int Norig = st->nfft; + + kiss_fft_cpx * scratch = (kiss_fft_cpx*)KISS_FFT_TMP_ALLOC(sizeof(kiss_fft_cpx)*p); + + for ( u=0; u=Norig) twidx-=Norig; + C_MUL(t,scratch[q] , twiddles[twidx] ); + C_ADDTO( Fout[ k ] ,t); + } + k += m; + } + } + KISS_FFT_TMP_FREE(scratch); +} + +static +void kf_work( + kiss_fft_cpx * Fout, + const kiss_fft_cpx * f, + const size_t fstride, + int in_stride, + int * factors, + const kiss_fft_cfg st + ) +{ + kiss_fft_cpx * Fout_beg=Fout; + const int p=*factors++; /* the radix */ + const int m=*factors++; /* stage's fft length/p */ + const kiss_fft_cpx * Fout_end = Fout + p*m; + +#ifdef _OPENMP + // use openmp extensions at the + // top-level (not recursive) + if (fstride==1 && p<=5) + { + int k; + + // execute the p different work units in different threads +# pragma omp parallel for + for (k=0;k floor_sqrt) + p = n; /* no more factors, skip to end */ + } + n /= p; + *facbuf++ = p; + *facbuf++ = n; + } while (n > 1); +} + +/* + * + * User-callable function to allocate all necessary storage space for the fft. + * + * The return value is a contiguous block of memory, allocated with malloc. As such, + * It can be freed with free(), rather than a kiss_fft-specific function. + * */ +kiss_fft_cfg kiss_fft_alloc(int nfft,int inverse_fft,void * mem,size_t * lenmem ) +{ + kiss_fft_cfg st=NULL; + size_t memneeded = sizeof(struct kiss_fft_state) + + sizeof(kiss_fft_cpx)*(nfft-1); /* twiddle factors*/ + + if ( lenmem==NULL ) { + st = ( kiss_fft_cfg)KISS_FFT_MALLOC( memneeded ); + }else{ + if (mem != NULL && *lenmem >= memneeded) + st = (kiss_fft_cfg)mem; + *lenmem = memneeded; + } + if (st) { + int i; + st->nfft=nfft; + st->inverse = inverse_fft; + + for (i=0;iinverse) + phase *= -1; + kf_cexp(st->twiddles+i, phase ); + } + + kf_factor(nfft,st->factors); + } + return st; +} + + +void kiss_fft_stride(kiss_fft_cfg st,const kiss_fft_cpx *fin,kiss_fft_cpx *fout,int in_stride) +{ + if (fin == fout) { + //NOTE: this is not really an in-place FFT algorithm. + //It just performs an out-of-place FFT into a temp buffer + kiss_fft_cpx * tmpbuf = (kiss_fft_cpx*)KISS_FFT_TMP_ALLOC( sizeof(kiss_fft_cpx)*st->nfft); + kf_work(tmpbuf,fin,1,in_stride, st->factors,st); + memcpy(fout,tmpbuf,sizeof(kiss_fft_cpx)*st->nfft); + KISS_FFT_TMP_FREE(tmpbuf); + }else{ + kf_work( fout, fin, 1,in_stride, st->factors,st ); + } +} + +void kiss_fft(kiss_fft_cfg cfg,const kiss_fft_cpx *fin,kiss_fft_cpx *fout) +{ + kiss_fft_stride(cfg,fin,fout,1); +} + + +void kiss_fft_cleanup(void) +{ + // nothing needed any more +} + +int kiss_fft_next_fast_size(int n) +{ + while(1) { + int m=n; + while ( (m%2) == 0 ) m/=2; + while ( (m%3) == 0 ) m/=3; + while ( (m%5) == 0 ) m/=5; + if (m<=1) + break; /* n is completely factorable by twos, threes, and fives */ + n++; + } + return n; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.h b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.h new file mode 100644 index 00000000..64c50f4a --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kiss_fft.h @@ -0,0 +1,124 @@ +#ifndef KISS_FFT_H +#define KISS_FFT_H + +#include +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + ATTENTION! + If you would like a : + -- a utility that will handle the caching of fft objects + -- real-only (no imaginary time component ) FFT + -- a multi-dimensional FFT + -- a command-line utility to perform ffts + -- a command-line utility to perform fast-convolution filtering + + Then see kfc.h kiss_fftr.h kiss_fftnd.h fftutil.c kiss_fastfir.c + in the tools/ directory. +*/ + +#ifdef USE_SIMD +# include +# define kiss_fft_scalar __m128 +#define KISS_FFT_MALLOC(nbytes) _mm_malloc(nbytes,16) +#define KISS_FFT_FREE _mm_free +#else +#define KISS_FFT_MALLOC malloc +#define KISS_FFT_FREE free +#endif + + +#ifdef FIXED_POINT +#include +# if (FIXED_POINT == 32) +# define kiss_fft_scalar int32_t +# else +# define kiss_fft_scalar int16_t +# endif +#else +# ifndef kiss_fft_scalar +/* default is float */ +# define kiss_fft_scalar float +# endif +#endif + +typedef struct { + kiss_fft_scalar r; + kiss_fft_scalar i; +}kiss_fft_cpx; + +typedef struct kiss_fft_state* kiss_fft_cfg; + +/* + * kiss_fft_alloc + * + * Initialize a FFT (or IFFT) algorithm's cfg/state buffer. + * + * typical usage: kiss_fft_cfg mycfg=kiss_fft_alloc(1024,0,NULL,NULL); + * + * The return value from fft_alloc is a cfg buffer used internally + * by the fft routine or NULL. + * + * If lenmem is NULL, then kiss_fft_alloc will allocate a cfg buffer using malloc. + * The returned value should be free()d when done to avoid memory leaks. + * + * The state can be placed in a user supplied buffer 'mem': + * If lenmem is not NULL and mem is not NULL and *lenmem is large enough, + * then the function places the cfg in mem and the size used in *lenmem + * and returns mem. + * + * If lenmem is not NULL and ( mem is NULL or *lenmem is not large enough), + * then the function returns NULL and places the minimum cfg + * buffer size in *lenmem. + * */ + +kiss_fft_cfg kiss_fft_alloc(int nfft,int inverse_fft,void * mem,size_t * lenmem); + +/* + * kiss_fft(cfg,in_out_buf) + * + * Perform an FFT on a complex input buffer. + * for a forward FFT, + * fin should be f[0] , f[1] , ... ,f[nfft-1] + * fout will be F[0] , F[1] , ... ,F[nfft-1] + * Note that each element is complex and can be accessed like + f[k].r and f[k].i + * */ +void kiss_fft(kiss_fft_cfg cfg,const kiss_fft_cpx *fin,kiss_fft_cpx *fout); + +/* + A more generic version of the above function. It reads its input from every Nth sample. + * */ +void kiss_fft_stride(kiss_fft_cfg cfg,const kiss_fft_cpx *fin,kiss_fft_cpx *fout,int fin_stride); + +/* If kiss_fft_alloc allocated a buffer, it is one contiguous + buffer and can be simply free()d when no longer needed*/ +#define kiss_fft_free free + +/* + Cleans up some memory that gets managed internally. Not necessary to call, but it might clean up + your compiler output to call this before you exit. +*/ +void kiss_fft_cleanup(void); + + +/* + * Returns the smallest integer k, such that k>=n and k has only "fast" factors (2,3,5) + */ +int kiss_fft_next_fast_size(int n); + +/* for real ffts, we need an even size */ +#define kiss_fftr_next_fast_size_real(n) \ + (kiss_fft_next_fast_size( ((n)+1)>>1)<<1) + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kissfft.hh b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kissfft.hh new file mode 100644 index 00000000..a586cb11 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/kissfft.hh @@ -0,0 +1,299 @@ +#ifndef KISSFFT_CLASS_HH +#include +#include + +namespace kissfft_utils { + +template +struct traits +{ + typedef T_scalar scalar_type; + typedef std::complex cpx_type; + void fill_twiddles( std::complex * dst ,int nfft,bool inverse) + { + T_scalar phinc = (inverse?2:-2)* acos( (T_scalar) -1) / nfft; + for (int i=0;i(0,i*phinc) ); + } + + void prepare( + std::vector< std::complex > & dst, + int nfft,bool inverse, + std::vector & stageRadix, + std::vector & stageRemainder ) + { + _twiddles.resize(nfft); + fill_twiddles( &_twiddles[0],nfft,inverse); + dst = _twiddles; + + //factorize + //start factoring out 4's, then 2's, then 3,5,7,9,... + int n= nfft; + int p=4; + do { + while (n % p) { + switch (p) { + case 4: p = 2; break; + case 2: p = 3; break; + default: p += 2; break; + } + if (p*p>n) + p=n;// no more factors + } + n /= p; + stageRadix.push_back(p); + stageRemainder.push_back(n); + }while(n>1); + } + std::vector _twiddles; + + + const cpx_type twiddle(int i) { return _twiddles[i]; } +}; + +} + +template + > +class kissfft +{ + public: + typedef T_traits traits_type; + typedef typename traits_type::scalar_type scalar_type; + typedef typename traits_type::cpx_type cpx_type; + + kissfft(int nfft,bool inverse,const traits_type & traits=traits_type() ) + :_nfft(nfft),_inverse(inverse),_traits(traits) + { + _traits.prepare(_twiddles, _nfft,_inverse ,_stageRadix, _stageRemainder); + } + + void transform(const cpx_type * src , cpx_type * dst) + { + kf_work(0, dst, src, 1,1); + } + + private: + void kf_work( int stage,cpx_type * Fout, const cpx_type * f, size_t fstride,size_t in_stride) + { + int p = _stageRadix[stage]; + int m = _stageRemainder[stage]; + cpx_type * Fout_beg = Fout; + cpx_type * Fout_end = Fout + p*m; + + if (m==1) { + do{ + *Fout = *f; + f += fstride*in_stride; + }while(++Fout != Fout_end ); + }else{ + do{ + // recursive call: + // DFT of size m*p performed by doing + // p instances of smaller DFTs of size m, + // each one takes a decimated version of the input + kf_work(stage+1, Fout , f, fstride*p,in_stride); + f += fstride*in_stride; + }while( (Fout += m) != Fout_end ); + } + + Fout=Fout_beg; + + // recombine the p smaller DFTs + switch (p) { + case 2: kf_bfly2(Fout,fstride,m); break; + case 3: kf_bfly3(Fout,fstride,m); break; + case 4: kf_bfly4(Fout,fstride,m); break; + case 5: kf_bfly5(Fout,fstride,m); break; + default: kf_bfly_generic(Fout,fstride,m,p); break; + } + } + + // these were #define macros in the original kiss_fft + void C_ADD( cpx_type & c,const cpx_type & a,const cpx_type & b) { c=a+b;} + void C_MUL( cpx_type & c,const cpx_type & a,const cpx_type & b) { c=a*b;} + void C_SUB( cpx_type & c,const cpx_type & a,const cpx_type & b) { c=a-b;} + void C_ADDTO( cpx_type & c,const cpx_type & a) { c+=a;} + void C_FIXDIV( cpx_type & ,int ) {} // NO-OP for float types + scalar_type S_MUL( const scalar_type & a,const scalar_type & b) { return a*b;} + scalar_type HALF_OF( const scalar_type & a) { return a*.5;} + void C_MULBYSCALAR(cpx_type & c,const scalar_type & a) {c*=a;} + + void kf_bfly2( cpx_type * Fout, const size_t fstride, int m) + { + for (int k=0;kreal() - HALF_OF(scratch[3].real() ) , Fout->imag() - HALF_OF(scratch[3].imag() ) ); + + C_MULBYSCALAR( scratch[0] , epi3.imag() ); + + C_ADDTO(*Fout,scratch[3]); + + Fout[m2] = cpx_type( Fout[m].real() + scratch[0].imag() , Fout[m].imag() - scratch[0].real() ); + + C_ADDTO( Fout[m] , cpx_type( -scratch[0].imag(),scratch[0].real() ) ); + ++Fout; + }while(--k); + } + + void kf_bfly5( cpx_type * Fout, const size_t fstride, const size_t m) + { + cpx_type *Fout0,*Fout1,*Fout2,*Fout3,*Fout4; + size_t u; + cpx_type scratch[13]; + cpx_type * twiddles = &_twiddles[0]; + cpx_type *tw; + cpx_type ya,yb; + ya = twiddles[fstride*m]; + yb = twiddles[fstride*2*m]; + + Fout0=Fout; + Fout1=Fout0+m; + Fout2=Fout0+2*m; + Fout3=Fout0+3*m; + Fout4=Fout0+4*m; + + tw=twiddles; + for ( u=0; u=Norig) twidx-=Norig; + C_MUL(t,scratchbuf[q] , twiddles[twidx] ); + C_ADDTO( Fout[ k ] ,t); + } + k += m; + } + } + } + + int _nfft; + bool _inverse; + std::vector _twiddles; + std::vector _stageRadix; + std::vector _stageRemainder; + traits_type _traits; +}; +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/Makefile b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/Makefile new file mode 100644 index 00000000..c204511e --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/Makefile @@ -0,0 +1,108 @@ + +WARNINGS=-W -Wall -Wstrict-prototypes -Wmissing-prototypes -Waggregate-return \ + -Wcast-align -Wcast-qual -Wnested-externs -Wshadow -Wbad-function-cast \ + -Wwrite-strings + +CFLAGS=-O3 -I.. -I../tools $(WARNINGS) +CFLAGS+=-ffast-math -fomit-frame-pointer +#CFLAGS+=-funroll-loops +#CFLAGS+=-march=prescott +#CFLAGS+= -mtune=native +# TIP: try adding -openmp or -fopenmp to enable OPENMP directives and use of multiple cores +#CFLAGS+=-fopenmp +CFLAGS+= $(CFLAGADD) + + +ifeq "$(NFFT)" "" + NFFT=1800 +endif +ifeq "$(NUMFFTS)" "" + NUMFFTS=10000 +endif + +ifeq "$(DATATYPE)" "" + DATATYPE=float +endif + +BENCHKISS=bm_kiss_$(DATATYPE) +BENCHFFTW=bm_fftw_$(DATATYPE) +SELFTEST=st_$(DATATYPE) +TESTREAL=tr_$(DATATYPE) +TESTKFC=tkfc_$(DATATYPE) +FASTFILTREAL=ffr_$(DATATYPE) +SELFTESTSRC=twotonetest.c + + +TYPEFLAGS=-Dkiss_fft_scalar=$(DATATYPE) + +ifeq "$(DATATYPE)" "int16_t" + TYPEFLAGS=-DFIXED_POINT=16 +endif + +ifeq "$(DATATYPE)" "int32_t" + TYPEFLAGS=-DFIXED_POINT=32 +endif + +ifeq "$(DATATYPE)" "simd" + TYPEFLAGS=-DUSE_SIMD=1 -msse +endif + + +ifeq "$(DATATYPE)" "float" + # fftw needs to be built with --enable-float to build this lib + FFTWLIB=-lfftw3f +else + FFTWLIB=-lfftw3 +endif + +FFTWLIBDIR=-L/usr/local/lib/ + +SRCFILES=../kiss_fft.c ../tools/kiss_fftnd.c ../tools/kiss_fftr.c pstats.c ../tools/kfc.c ../tools/kiss_fftndr.c + +all: tools $(BENCHKISS) $(SELFTEST) $(BENCHFFTW) $(TESTREAL) $(TESTKFC) + +tools: + cd ../tools && make all + + +$(SELFTEST): $(SELFTESTSRC) $(SRCFILES) + $(CC) -o $@ $(CFLAGS) $(TYPEFLAGS) $+ -lm + +$(TESTKFC): $(SRCFILES) + $(CC) -o $@ $(CFLAGS) -DKFC_TEST $(TYPEFLAGS) $+ -lm + +$(TESTREAL): test_real.c $(SRCFILES) + $(CC) -o $@ $(CFLAGS) $(TYPEFLAGS) $+ -lm + +$(BENCHKISS): benchkiss.c $(SRCFILES) + $(CC) -o $@ $(CFLAGS) $(TYPEFLAGS) $+ -lm + +$(BENCHFFTW): benchfftw.c pstats.c + @echo "======attempting to build FFTW benchmark" + @$(CC) -o $@ $(CFLAGS) -DDATATYPE$(DATATYPE) $+ $(FFTWLIB) $(FFTWLIBDIR) -lm || echo "FFTW not available for comparison" + +test: all + @./$(TESTKFC) + @echo "======1d & 2-d complex fft self test (type= $(DATATYPE) )" + @./$(SELFTEST) + @echo "======real FFT (type= $(DATATYPE) )" + @./$(TESTREAL) + @echo "======timing test (type=$(DATATYPE))" + @./$(BENCHKISS) -x $(NUMFFTS) -n $(NFFT) + @[ -x ./$(BENCHFFTW) ] && ./$(BENCHFFTW) -x $(NUMFFTS) -n $(NFFT) ||true + @echo "======higher dimensions type=$(DATATYPE))" + @./testkiss.py + +selftest.c: + ./mk_test.py 10 12 14 > selftest.c +selftest_short.c: + ./mk_test.py -s 10 12 14 > selftest_short.c + + +CXXFLAGS=-O3 -ffast-math -fomit-frame-pointer -I.. -I../tools -W -Wall +testcpp: testcpp.cc ../kissfft.hh + $(CXX) -o $@ $(CXXFLAGS) testcpp.cc -lm + + +clean: + rm -f *~ bm_* st_* tr_* kf_* tkfc_* ff_* ffr_* *.pyc *.pyo *.dat testcpp diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/benchfftw.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/benchfftw.c new file mode 100644 index 00000000..8824d195 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/benchfftw.c @@ -0,0 +1,94 @@ +#include +#include +#include +#include +#include "pstats.h" + +#ifdef DATATYPEdouble + +#define CPXTYPE fftw_complex +#define PLAN fftw_plan +#define FFTMALLOC fftw_malloc +#define MAKEPLAN fftw_plan_dft_1d +#define DOFFT fftw_execute +#define DESTROYPLAN fftw_destroy_plan +#define FFTFREE fftw_free + +#elif defined(DATATYPEfloat) + +#define CPXTYPE fftwf_complex +#define PLAN fftwf_plan +#define FFTMALLOC fftwf_malloc +#define MAKEPLAN fftwf_plan_dft_1d +#define DOFFT fftwf_execute +#define DESTROYPLAN fftwf_destroy_plan +#define FFTFREE fftwf_free + +#endif + +#ifndef CPXTYPE +int main(void) +{ + fprintf(stderr,"Datatype not available in FFTW\n" ); + return 0; +} +#else +int main(int argc,char ** argv) +{ + int nfft=1024; + int isinverse=0; + int numffts=1000,i; + + CPXTYPE * in=NULL; + CPXTYPE * out=NULL; + PLAN p; + + pstats_init(); + + while (1) { + int c = getopt (argc, argv, "n:ix:h"); + if (c == -1) + break; + switch (c) { + case 'n': + nfft = atoi (optarg); + break; + case 'x': + numffts = atoi (optarg); + break; + case 'i': + isinverse = 1; + break; + case 'h': + case '?': + default: + fprintf(stderr,"options:\n-n N: complex fft length\n-i: inverse\n-x N: number of ffts to compute\n" + ""); + } + } + + in=FFTMALLOC(sizeof(CPXTYPE) * nfft); + out=FFTMALLOC(sizeof(CPXTYPE) * nfft); + for (i=0;i +#include +#include +#include +#include "kiss_fft.h" +#include "kiss_fftr.h" +#include "kiss_fftnd.h" +#include "kiss_fftndr.h" + +#include "pstats.h" + +static +int getdims(int * dims, char * arg) +{ + char *s; + int ndims=0; + while ( (s=strtok( arg , ",") ) ) { + dims[ndims++] = atoi(s); + //printf("%s=%d\n",s,dims[ndims-1]); + arg=NULL; + } + return ndims; +} + +int main(int argc,char ** argv) +{ + int k; + int nfft[32]; + int ndims = 1; + int isinverse=0; + int numffts=1000,i; + kiss_fft_cpx * buf; + kiss_fft_cpx * bufout; + int real = 0; + + nfft[0] = 1024;// default + + while (1) { + int c = getopt (argc, argv, "n:ix:r"); + if (c == -1) + break; + switch (c) { + case 'r': + real = 1; + break; + case 'n': + ndims = getdims(nfft, optarg ); + if (nfft[0] != kiss_fft_next_fast_size(nfft[0]) ) { + int ng = kiss_fft_next_fast_size(nfft[0]); + fprintf(stderr,"warning: %d might be a better choice for speed than %d\n",ng,nfft[0]); + } + break; + case 'x': + numffts = atoi (optarg); + break; + case 'i': + isinverse = 1; + break; + } + } + int nbytes = sizeof(kiss_fft_cpx); + for (k=0;k + +#include "kiss_fft.h" +#include "kiss_fftnd.h" +#include "kiss_fftr.h" + +BEGIN_BENCH_DOC +BENCH_DOC("name", "kissfft") +BENCH_DOC("version", "1.0.1") +BENCH_DOC("year", "2004") +BENCH_DOC("author", "Mark Borgerding") +BENCH_DOC("language", "C") +BENCH_DOC("url", "http://sourceforge.net/projects/kissfft/") +BENCH_DOC("copyright", +"Copyright (c) 2003,4 Mark Borgerding\n" +"\n" +"All rights reserved.\n" +"\n" +"Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n" +"\n" +" * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n" +" * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n" +" * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n" +"\n" + "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n") +END_BENCH_DOC + +int can_do(struct problem *p) +{ + if (p->rank == 1) { + if (p->kind == PROBLEM_REAL) { + return (p->n[0] & 1) == 0; /* only even real is okay */ + } else { + return 1; + } + } else { + return p->kind == PROBLEM_COMPLEX; + } +} + +static kiss_fft_cfg cfg=NULL; +static kiss_fftr_cfg cfgr=NULL; +static kiss_fftnd_cfg cfgnd=NULL; + +#define FAILIF( c ) \ + if ( c ) do {\ + fprintf(stderr,\ + "kissfft: " #c " (file=%s:%d errno=%d %s)\n",\ + __FILE__,__LINE__ , errno,strerror( errno ) ) ;\ + exit(1);\ + }while(0) + + + +void setup(struct problem *p) +{ + size_t i; + + /* + fprintf(stderr,"%s %s %d-d ", + (p->sign == 1)?"Inverse":"Forward", + p->kind == PROBLEM_COMPLEX?"Complex":"Real", + p->rank); + */ + if (p->rank == 1) { + if (p->kind == PROBLEM_COMPLEX) { + cfg = kiss_fft_alloc (p->n[0], (p->sign == 1), 0, 0); + FAILIF(cfg==NULL); + }else{ + cfgr = kiss_fftr_alloc (p->n[0], (p->sign == 1), 0, 0); + FAILIF(cfgr==NULL); + } + }else{ + int dims[5]; + for (i=0;irank;++i){ + dims[i] = p->n[i]; + } + /* multi-dimensional */ + if (p->kind == PROBLEM_COMPLEX) { + cfgnd = kiss_fftnd_alloc( dims , p->rank, (p->sign == 1), 0, 0 ); + FAILIF(cfgnd==NULL); + } + } +} + +void doit(int iter, struct problem *p) +{ + int i; + void *in = p->in; + void *out = p->out; + + if (p->in_place) + out = p->in; + + if (p->rank == 1) { + if (p->kind == PROBLEM_COMPLEX){ + for (i = 0; i < iter; ++i) + kiss_fft (cfg, in, out); + } else { + /* PROBLEM_REAL */ + if (p->sign == -1) /* FORWARD */ + for (i = 0; i < iter; ++i) + kiss_fftr (cfgr, in, out); + else + for (i = 0; i < iter; ++i) + kiss_fftri (cfgr, in, out); + } + }else{ + /* multi-dimensional */ + for (i = 0; i < iter; ++i) + kiss_fftnd(cfgnd,in,out); + } +} + +void done(struct problem *p) +{ + free(cfg); + cfg=NULL; + free(cfgr); + cfgr=NULL; + free(cfgnd); + cfgnd=NULL; + UNUSED(p); +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fastfir.py b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fastfir.py new file mode 100644 index 00000000..5ff432a3 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fastfir.py @@ -0,0 +1,102 @@ +#!/usr/bin/env python + +from Numeric import * +from FFT import * + +def make_random(len): + import random + res=[] + for i in range(int(len)): + r=random.uniform(-1,1) + i=random.uniform(-1,1) + res.append( complex(r,i) ) + return res + +def slowfilter(sig,h): + translen = len(h)-1 + return convolve(sig,h)[translen:-translen] + +def nextpow2(x): + return 2 ** math.ceil(math.log(x)/math.log(2)) + +def fastfilter(sig,h,nfft=None): + if nfft is None: + nfft = int( nextpow2( 2*len(h) ) ) + H = fft( h , nfft ) + scraplen = len(h)-1 + keeplen = nfft-scraplen + res=[] + isdone = 0 + lastidx = nfft + idx0 = 0 + while not isdone: + idx1 = idx0 + nfft + if idx1 >= len(sig): + idx1 = len(sig) + lastidx = idx1-idx0 + if lastidx <= scraplen: + break + isdone = 1 + Fss = fft(sig[idx0:idx1],nfft) + fm = Fss * H + m = inverse_fft(fm) + res.append( m[scraplen:lastidx] ) + idx0 += keeplen + return concatenate( res ) + +def main(): + import sys + from getopt import getopt + opts,args = getopt(sys.argv[1:],'rn:l:') + opts=dict(opts) + + siglen = int(opts.get('-l',1e4 ) ) + hlen =50 + + nfft = int(opts.get('-n',128) ) + usereal = opts.has_key('-r') + + print 'nfft=%d'%nfft + # make a signal + sig = make_random( siglen ) + # make an impulse response + h = make_random( hlen ) + #h=[1]*2+[0]*3 + if usereal: + sig=[c.real for c in sig] + h=[c.real for c in h] + + # perform MAC filtering + yslow = slowfilter(sig,h) + #print '',yslow,'' + #yfast = fastfilter(sig,h,nfft) + yfast = utilfastfilter(sig,h,nfft,usereal) + #print yfast + print 'len(yslow)=%d'%len(yslow) + print 'len(yfast)=%d'%len(yfast) + diff = yslow-yfast + snr = 10*log10( abs( vdot(yslow,yslow) / vdot(diff,diff) ) ) + print 'snr=%s' % snr + if snr < 10.0: + print 'h=',h + print 'sig=',sig[:5],'...' + print 'yslow=',yslow[:5],'...' + print 'yfast=',yfast[:5],'...' + +def utilfastfilter(sig,h,nfft,usereal): + import compfft + import os + open( 'sig.dat','w').write( compfft.dopack(sig,'f',not usereal) ) + open( 'h.dat','w').write( compfft.dopack(h,'f',not usereal) ) + if usereal: + util = './fastconvr' + else: + util = './fastconv' + cmd = 'time %s -n %d -i sig.dat -h h.dat -o out.dat' % (util, nfft) + print cmd + ec = os.system(cmd) + print 'exited->',ec + return compfft.dounpack(open('out.dat').read(),'f',not usereal) + +if __name__ == "__main__": + main() diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fft.py b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fft.py new file mode 100644 index 00000000..2705f71f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/fft.py @@ -0,0 +1,196 @@ +#!/usr/bin/env python + +import math +import sys +import random + +pi=math.pi +e=math.e +j=complex(0,1) + +def fft(f,inv): + n=len(f) + if n==1: + return f + + for p in 2,3,5: + if n%p==0: + break + else: + raise Exception('%s not factorable ' % n) + + m = n/p + Fout=[] + for q in range(p): # 0,1 + fp = f[q::p] # every p'th time sample + Fp = fft( fp ,inv) + Fout.extend( Fp ) + + for u in range(m): + scratch = Fout[u::m] # u to end in strides of m + for q1 in range(p): + k = q1*m + u # indices to Fout above that became scratch + Fout[ k ] = scratch[0] # cuz e**0==1 in loop below + for q in range(1,p): + if inv: + t = e ** ( j*2*pi*k*q/n ) + else: + t = e ** ( -j*2*pi*k*q/n ) + Fout[ k ] += scratch[q] * t + + return Fout + +def rifft(F): + N = len(F) - 1 + Z = [0] * (N) + for k in range(N): + Fek = ( F[k] + F[-k-1].conjugate() ) + Fok = ( F[k] - F[-k-1].conjugate() ) * e ** (j*pi*k/N) + Z[k] = Fek + j*Fok + + fp = fft(Z , 1) + + f = [] + for c in fp: + f.append(c.real) + f.append(c.imag) + return f + +def real_fft( f,inv ): + if inv: + return rifft(f) + + N = len(f) / 2 + + res = f[::2] + ims = f[1::2] + + fp = [ complex(r,i) for r,i in zip(res,ims) ] + print 'fft input ', fp + Fp = fft( fp ,0 ) + print 'fft output ', Fp + + F = [ complex(0,0) ] * ( N+1 ) + + F[0] = complex( Fp[0].real + Fp[0].imag , 0 ) + + for k in range(1,N/2+1): + tw = e ** ( -j*pi*(.5+float(k)/N ) ) + + F1k = Fp[k] + Fp[N-k].conjugate() + F2k = Fp[k] - Fp[N-k].conjugate() + F2k *= tw + F[k] = ( F1k + F2k ) * .5 + F[N-k] = ( F1k - F2k ).conjugate() * .5 + #F[N-k] = ( F1kp + e ** ( -j*pi*(.5+float(N-k)/N ) ) * F2kp ) * .5 + #F[N-k] = ( F1k.conjugate() - tw.conjugate() * F2k.conjugate() ) * .5 + + F[N] = complex( Fp[0].real - Fp[0].imag , 0 ) + return F + +def main(): + #fft_func = fft + fft_func = real_fft + + tvec = [0.309655,0.815653,0.768570,0.591841,0.404767,0.637617,0.007803,0.012665] + Ftvec = [ complex(r,i) for r,i in zip( + [3.548571,-0.378761,-0.061950,0.188537,-0.566981,0.188537,-0.061950,-0.378761], + [0.000000,-1.296198,-0.848764,0.225337,0.000000,-0.225337,0.848764,1.296198] ) ] + + F = fft_func( tvec,0 ) + + nerrs= 0 + for i in range(len(Ftvec)/2 + 1): + if abs( F[i] - Ftvec[i] )> 1e-5: + print 'F[%d]: %s != %s' % (i,F[i],Ftvec[i]) + nerrs += 1 + + print '%d errors in forward fft' % nerrs + if nerrs: + return + + trec = fft_func( F , 1 ) + + for i in range(len(trec) ): + trec[i] /= len(trec) + + for i in range(len(tvec) ): + if abs( trec[i] - tvec[i] )> 1e-5: + print 't[%d]: %s != %s' % (i,tvec[i],trec[i]) + nerrs += 1 + + print '%d errors in reverse fft' % nerrs + + +def make_random(dims=[1]): + import Numeric + res = [] + for i in range(dims[0]): + if len(dims)==1: + r=random.uniform(-1,1) + i=random.uniform(-1,1) + res.append( complex(r,i) ) + else: + res.append( make_random( dims[1:] ) ) + return Numeric.array(res) + +def flatten(x): + import Numeric + ntotal = Numeric.product(Numeric.shape(x)) + return Numeric.reshape(x,(ntotal,)) + +def randmat( ndims ): + dims=[] + for i in range( ndims ): + curdim = int( random.uniform(2,4) ) + dims.append( curdim ) + return make_random(dims ) + +def test_fftnd(ndims=3): + import FFT + import Numeric + + x=randmat( ndims ) + print 'dimensions=%s' % str( Numeric.shape(x) ) + #print 'x=%s' %str(x) + xver = FFT.fftnd(x) + x2=myfftnd(x) + err = xver - x2 + errf = flatten(err) + xverf = flatten(xver) + errpow = Numeric.vdot(errf,errf)+1e-10 + sigpow = Numeric.vdot(xverf,xverf)+1e-10 + snr = 10*math.log10(abs(sigpow/errpow) ) + if snr<80: + print xver + print x2 + print 'SNR=%sdB' % str( snr ) + +def myfftnd(x): + import Numeric + xf = flatten(x) + Xf = fftndwork( xf , Numeric.shape(x) ) + return Numeric.reshape(Xf,Numeric.shape(x) ) + +def fftndwork(x,dims): + import Numeric + dimprod=Numeric.product( dims ) + + for k in range( len(dims) ): + cur_dim=dims[ k ] + stride=dimprod/cur_dim + next_x = [complex(0,0)]*len(x) + for i in range(stride): + next_x[i*cur_dim:(i+1)*cur_dim] = fft(x[i:(i+cur_dim)*stride:stride],0) + x = next_x + return x + +if __name__ == "__main__": + try: + nd = int(sys.argv[1]) + except: + nd=None + if nd: + test_fftnd( nd ) + else: + sys.exit(0) diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/mk_test.py b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/mk_test.py new file mode 100644 index 00000000..998b730f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/mk_test.py @@ -0,0 +1,117 @@ +#!/usr/bin/env python + +import FFT +import sys +import random +import re +j=complex(0,1) + +def randvec(n,iscomplex): + if iscomplex: + return [ + int(random.uniform(-32768,32767) ) + j*int(random.uniform(-32768,32767) ) + for i in range(n) ] + else: + return [ int(random.uniform(-32768,32767) ) for i in range(n) ] + +def c_format(v,round=0): + if round: + return ','.join( [ '{%d,%d}' %(int(c.real),int(c.imag) ) for c in v ] ) + else: + s= ','.join( [ '{%.60f ,%.60f }' %(c.real,c.imag) for c in v ] ) + return re.sub(r'\.?0+ ',' ',s) + +def test_cpx( n,inverse ,short): + v = randvec(n,1) + scale = 1 + if short: + minsnr=30 + else: + minsnr=100 + + if inverse: + tvecout = FFT.inverse_fft(v) + if short: + scale = 1 + else: + scale = len(v) + else: + tvecout = FFT.fft(v) + if short: + scale = 1.0/len(v) + + tvecout = [ c * scale for c in tvecout ] + + + s="""#define NFFT %d""" % len(v) + """ + { + double snr; + kiss_fft_cpx test_vec_in[NFFT] = { """ + c_format(v) + """}; + kiss_fft_cpx test_vec_out[NFFT] = {""" + c_format( tvecout ) + """}; + kiss_fft_cpx testbuf[NFFT]; + void * cfg = kiss_fft_alloc(NFFT,%d,0,0);""" % inverse + """ + + kiss_fft(cfg,test_vec_in,testbuf); + snr = snr_compare(test_vec_out,testbuf,NFFT); + printf("DATATYPE=" xstr(kiss_fft_scalar) ", FFT n=%d, inverse=%d, snr = %g dB\\n",NFFT,""" + str(inverse) + """,snr); + if (snr<""" + str(minsnr) + """) + exit_code++; + free(cfg); + } +#undef NFFT +""" + return s + +def compare_func(): + s=""" +#define xstr(s) str(s) +#define str(s) #s +double snr_compare( kiss_fft_cpx * test_vec_out,kiss_fft_cpx * testbuf, int n) +{ + int k; + double sigpow,noisepow,err,snr,scale=0; + kiss_fft_cpx err; + sigpow = noisepow = .000000000000000000000000000001; + + for (k=0;k +#include +#include +#include +#include + +#include "pstats.h" + +static struct tms tms_beg; +static struct tms tms_end; +static int has_times = 0; + + +void pstats_init(void) +{ + has_times = times(&tms_beg) != -1; +} + +static void tms_report(void) +{ + double cputime; + if (! has_times ) + return; + times(&tms_end); + cputime = ( ((float)tms_end.tms_utime + tms_end.tms_stime + tms_end.tms_cutime + tms_end.tms_cstime ) - + ((float)tms_beg.tms_utime + tms_beg.tms_stime + tms_beg.tms_cutime + tms_beg.tms_cstime ) ) + / sysconf(_SC_CLK_TCK); + fprintf(stderr,"\tcputime=%.3f\n" , cputime); +} + +static void ps_report(void) +{ + char buf[1024]; +#ifdef __APPLE__ /* MAC OS X */ + sprintf(buf,"ps -o command,majflt,minflt,rss,pagein,vsz -p %d 1>&2",getpid() ); +#else /* GNU/Linux */ + sprintf(buf,"ps -o comm,majflt,minflt,rss,drs,pagein,sz,trs,vsz %d 1>&2",getpid() ); +#endif + if (system( buf )==-1) { + perror("system call to ps failed"); + } +} + +void pstats_report() +{ + ps_report(); + tms_report(); +} + diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/pstats.h b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/pstats.h new file mode 100644 index 00000000..71ff02a4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/pstats.h @@ -0,0 +1,7 @@ +#ifndef PSTATS_H +#define PSTATS_H + +void pstats_init(void); +void pstats_report(void); + +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/tailscrap.m b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/tailscrap.m new file mode 100644 index 00000000..abf90469 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/tailscrap.m @@ -0,0 +1,26 @@ +function maxabsdiff=tailscrap() +% test code for circular convolution with the scrapped portion +% at the tail of the buffer, rather than the front +% +% The idea is to rotate the zero-padded h (impulse response) buffer +% to the left nh-1 samples, rotating the junk samples as well. +% This could be very handy in avoiding buffer copies during fast filtering. +nh=10; +nfft=256; + +h=rand(1,nh); +x=rand(1,nfft); + +hpad=[ h(nh) zeros(1,nfft-nh) h(1:nh-1) ]; + +% baseline comparison +y1 = filter(h,1,x); +y1_notrans = y1(nh:nfft); + +% fast convolution +y2 = ifft( fft(hpad) .* fft(x) ); +y2_notrans=y2(1:nfft-nh+1); + +maxabsdiff = max(abs(y2_notrans - y1_notrans)) + +end diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/test_real.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/test_real.c new file mode 100644 index 00000000..36a0b086 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/test_real.c @@ -0,0 +1,172 @@ +#include "kiss_fftr.h" +#include "_kiss_fft_guts.h" +#include +#include +#include + +static double cputime(void) +{ + struct tms t; + times(&t); + return (double)(t.tms_utime + t.tms_stime)/ sysconf(_SC_CLK_TCK) ; +} + +static +kiss_fft_scalar rand_scalar(void) +{ +#ifdef USE_SIMD + return _mm_set1_ps(rand()-RAND_MAX/2); +#else + kiss_fft_scalar s = (kiss_fft_scalar)(rand() -RAND_MAX/2); + return s/2; +#endif +} + +static +double snr_compare( kiss_fft_cpx * vec1,kiss_fft_cpx * vec2, int n) +{ + int k; + double sigpow=1e-10,noisepow=1e-10,err,snr,scale=0; + +#ifdef USE_SIMD + float *fv1 = (float*)vec1; + float *fv2 = (float*)vec2; + for (k=0;k<8*n;++k) { + sigpow += *fv1 * *fv1; + err = *fv1 - *fv2; + noisepow += err*err; + ++fv1; + ++fv2; + } +#else + for (k=0;k1) + nfft = atoi(argv[1]); + kiss_fft_cpx cin[nfft]; + kiss_fft_cpx cout[nfft]; + kiss_fft_cpx sout[nfft]; + kiss_fft_cfg kiss_fft_state; + kiss_fftr_cfg kiss_fftr_state; + + kiss_fft_scalar rin[nfft+2]; + kiss_fft_scalar rout[nfft+2]; + kiss_fft_scalar zero; + memset(&zero,0,sizeof(zero) ); // ugly way of setting short,int,float,double, or __m128 to zero + + srand(time(0)); + + for (i=0;i1) { + int k; + for (k=1;k +#include +#include + +#include +static inline +double curtime(void) +{ + struct timeval tv; + gettimeofday(&tv, NULL); + return (double)tv.tv_sec + (double)tv.tv_usec*.000001; +} + +using namespace std; + +template +void dotest(int nfft) +{ + typedef kissfft FFT; + typedef std::complex cpx_type; + + cout << "type:" << typeid(T).name() << " nfft:" << nfft; + + FFT fft(nfft,false); + + vector inbuf(nfft); + vector outbuf(nfft); + for (int k=0;k acc = 0; + long double phinc = 2*k0* M_PIl / nfft; + for (int k1=0;k1 x(inbuf[k1].real(),inbuf[k1].imag()); + acc += x * exp( complex(0,-k1*phinc) ); + } + totalpower += norm(acc); + complex x(outbuf[k0].real(),outbuf[k0].imag()); + complex dif = acc - x; + difpower += norm(dif); + } + cout << " RMSE:" << sqrt(difpower/totalpower) << "\t"; + + double t0 = curtime(); + int nits=20e6/nfft; + for (int k=0;k1) { + for (int k=1;k(nfft); dotest(nfft); dotest(nfft); + } + }else{ + dotest(32); dotest(32); dotest(32); + dotest(1024); dotest(1024); dotest(1024); + dotest(840); dotest(840); dotest(840); + } + return 0; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/testkiss.py b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/testkiss.py new file mode 100644 index 00000000..af750654 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/test/testkiss.py @@ -0,0 +1,162 @@ +#!/usr/bin/env python + +import math +import sys +import os +import random +import struct +import popen2 +import getopt +import numpy + +pi=math.pi +e=math.e +j=complex(0,1) + +doreal=0 + +datatype = os.environ.get('DATATYPE','float') + +util = '../tools/fft_' + datatype +minsnr=90 +if datatype == 'double': + fmt='d' +elif datatype=='int16_t': + fmt='h' + minsnr=10 +elif datatype=='int32_t': + fmt='i' +elif datatype=='simd': + fmt='4f' + sys.stderr.write('testkiss.py does not yet test simd') + sys.exit(0) +elif datatype=='float': + fmt='f' +else: + sys.stderr.write('unrecognized datatype %s\n' % datatype) + sys.exit(1) + + +def dopack(x,cpx=1): + x = numpy.reshape( x, ( numpy.size(x),) ) + + if cpx: + s = ''.join( [ struct.pack(fmt*2,c.real,c.imag) for c in x ] ) + else: + s = ''.join( [ struct.pack(fmt,c.real) for c in x ] ) + return s + +def dounpack(x,cpx): + uf = fmt * ( len(x) / struct.calcsize(fmt) ) + s = struct.unpack(uf,x) + if cpx: + return numpy.array(s[::2]) + numpy.array( s[1::2] )*j + else: + return numpy.array(s ) + +def make_random(dims=[1]): + res = [] + for i in range(dims[0]): + if len(dims)==1: + r=random.uniform(-1,1) + if doreal: + res.append( r ) + else: + i=random.uniform(-1,1) + res.append( complex(r,i) ) + else: + res.append( make_random( dims[1:] ) ) + return numpy.array(res) + +def flatten(x): + ntotal = numpy.size(x) + return numpy.reshape(x,(ntotal,)) + +def randmat( ndims ): + dims=[] + for i in range( ndims ): + curdim = int( random.uniform(2,5) ) + if doreal and i==(ndims-1): + curdim = int(curdim/2)*2 # force even last dimension if real + dims.append( curdim ) + return make_random(dims ) + +def test_fft(ndims): + x=randmat( ndims ) + + + if doreal: + xver = numpy.fft.rfftn(x) + else: + xver = numpy.fft.fftn(x) + + open('/tmp/fftexp.dat','w').write(dopack( flatten(xver) , True ) ) + + x2=dofft(x,doreal) + err = xver - x2 + errf = flatten(err) + xverf = flatten(xver) + errpow = numpy.vdot(errf,errf)+1e-10 + sigpow = numpy.vdot(xverf,xverf)+1e-10 + snr = 10*math.log10(abs(sigpow/errpow) ) + print 'SNR (compared to NumPy) : %.1fdB' % float(snr) + + if snr +#include +#include +#include "kiss_fft.h" +#include "kiss_fftr.h" +#include + + +static +double two_tone_test( int nfft, int bin1,int bin2) +{ + kiss_fftr_cfg cfg = NULL; + kiss_fft_cpx *kout = NULL; + kiss_fft_scalar *tbuf = NULL; + + int i; + double f1 = bin1*2*M_PI/nfft; + double f2 = bin2*2*M_PI/nfft; + double sigpow=0; + double noisepow=0; +#if FIXED_POINT==32 + long maxrange = LONG_MAX; +#else + long maxrange = SHRT_MAX;/* works fine for float too*/ +#endif + + cfg = kiss_fftr_alloc(nfft , 0, NULL, NULL); + tbuf = KISS_FFT_MALLOC(nfft * sizeof(kiss_fft_scalar)); + kout = KISS_FFT_MALLOC(nfft * sizeof(kiss_fft_cpx)); + + /* generate a signal with two tones*/ + for (i = 0; i < nfft; i++) { +#ifdef USE_SIMD + tbuf[i] = _mm_set1_ps( (maxrange>>1)*cos(f1*i) + + (maxrange>>1)*cos(f2*i) ); +#else + tbuf[i] = (maxrange>>1)*cos(f1*i) + + (maxrange>>1)*cos(f2*i); +#endif + } + + kiss_fftr(cfg, tbuf, kout); + + for (i=0;i < (nfft/2+1);++i) { +#ifdef USE_SIMD + double tmpr = (double)*(float*)&kout[i].r / (double)maxrange; + double tmpi = (double)*(float*)&kout[i].i / (double)maxrange; +#else + double tmpr = (double)kout[i].r / (double)maxrange; + double tmpi = (double)kout[i].i / (double)maxrange; +#endif + double mag2 = tmpr*tmpr + tmpi*tmpi; + if (i!=0 && i!= nfft/2) + mag2 *= 2; /* all bins except DC and Nyquist have symmetric counterparts implied*/ + + /* if there is power in one of the expected bins, it is signal, otherwise noise*/ + if ( i!=bin1 && i != bin2 ) + noisepow += mag2; + else + sigpow += mag2; + } + kiss_fft_cleanup(); + /*printf("TEST %d,%d,%d noise @ %fdB\n",nfft,bin1,bin2,10*log10(noisepow/sigpow +1e-30) );*/ + return 10*log10(sigpow/(noisepow+1e-50) ); +} + +int main(int argc,char ** argv) +{ + int nfft = 4*2*2*3*5; + if (argc>1) nfft = atoi(argv[1]); + + int i,j; + double minsnr = 500; + double maxsnr = -500; + double snr; + for (i=0;i>4)+1) { + for (j=i;j>4)+7) { + snr = two_tone_test(nfft,i,j); + if (snrmaxsnr) { + maxsnr=snr; + } + } + } + snr = two_tone_test(nfft,nfft/2,nfft/2); + if (snrmaxsnr) maxsnr=snr; + + printf("TwoToneTest: snr ranges from %ddB to %ddB\n",(int)minsnr,(int)maxsnr); + printf("sizeof(kiss_fft_scalar) = %d\n",(int)sizeof(kiss_fft_scalar) ); + return 0; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/Makefile b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/Makefile new file mode 100644 index 00000000..ae7646b8 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/Makefile @@ -0,0 +1,62 @@ +WARNINGS=-W -Wall -Wstrict-prototypes -Wmissing-prototypes -Waggregate-return \ + -Wcast-align -Wcast-qual -Wnested-externs -Wshadow -Wbad-function-cast \ + -Wwrite-strings + +ifeq "$(DATATYPE)" "" + DATATYPE=float +endif + +ifeq "$(DATATYPE)" "int32_t" + TYPEFLAGS=-DFIXED_POINT=32 +endif + +ifeq "$(DATATYPE)" "int16_t" + TYPEFLAGS=-DFIXED_POINT=16 +endif + +ifeq "$(DATATYPE)" "simd" + TYPEFLAGS=-DUSE_SIMD=1 -msse +endif + +ifeq "$(TYPEFLAGS)" "" + TYPEFLAGS=-Dkiss_fft_scalar=$(DATATYPE) +endif + +ifneq ("$(KISS_FFT_USE_ALLOCA)","") + CFLAGS+= -DKISS_FFT_USE_ALLOCA=1 +endif +CFLAGS+= $(CFLAGADD) + + +FFTUTIL=fft_$(DATATYPE) +FASTFILT=fastconv_$(DATATYPE) +FASTFILTREAL=fastconvr_$(DATATYPE) +PSDPNG=psdpng_$(DATATYPE) +DUMPHDR=dumphdr_$(DATATYPE) + +all: $(FFTUTIL) $(FASTFILT) $(FASTFILTREAL) +# $(PSDPNG) +# $(DUMPHDR) + +#CFLAGS=-Wall -O3 -pedantic -march=pentiumpro -ffast-math -fomit-frame-pointer $(WARNINGS) +# If the above flags do not work, try the following +CFLAGS=-Wall -O3 $(WARNINGS) +# tip: try -openmp or -fopenmp to use multiple cores + +$(FASTFILTREAL): ../kiss_fft.c kiss_fastfir.c kiss_fftr.c + $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) -DREAL_FASTFIR $+ -DFAST_FILT_UTIL -lm + +$(FASTFILT): ../kiss_fft.c kiss_fastfir.c + $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -DFAST_FILT_UTIL -lm + +$(FFTUTIL): ../kiss_fft.c fftutil.c kiss_fftnd.c kiss_fftr.c kiss_fftndr.c + $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -lm + +$(PSDPNG): ../kiss_fft.c psdpng.c kiss_fftr.c + $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -lpng -lm + +$(DUMPHDR): ../kiss_fft.c dumphdr.c + $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -lm + +clean: + rm -f *~ fft fft_* fastconv fastconv_* fastconvr fastconvr_* psdpng psdpng_* diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/fftutil.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/fftutil.c new file mode 100644 index 00000000..db5a8151 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/fftutil.c @@ -0,0 +1,208 @@ +/* +Copyright (c) 2003-2004, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include +#include +#include +#include +#include + +#include "kiss_fft.h" +#include "kiss_fftndr.h" + +static +void fft_file(FILE * fin,FILE * fout,int nfft,int isinverse) +{ + kiss_fft_cfg st; + kiss_fft_cpx * buf; + kiss_fft_cpx * bufout; + + buf = (kiss_fft_cpx*)malloc(sizeof(kiss_fft_cpx) * nfft ); + bufout = (kiss_fft_cpx*)malloc(sizeof(kiss_fft_cpx) * nfft ); + st = kiss_fft_alloc( nfft ,isinverse ,0,0); + + while ( fread( buf , sizeof(kiss_fft_cpx) * nfft ,1, fin ) > 0 ) { + kiss_fft( st , buf ,bufout); + fwrite( bufout , sizeof(kiss_fft_cpx) , nfft , fout ); + } + free(st); + free(buf); + free(bufout); +} + +static +void fft_filend(FILE * fin,FILE * fout,int *dims,int ndims,int isinverse) +{ + kiss_fftnd_cfg st; + kiss_fft_cpx *buf; + int dimprod=1,i; + for (i=0;i 0) { + kiss_fftnd (st, buf, buf); + fwrite (buf, sizeof (kiss_fft_cpx), dimprod, fout); + } + free (st); + free (buf); +} + + + +static +void fft_filend_real(FILE * fin,FILE * fout,int *dims,int ndims,int isinverse) +{ + int dimprod=1,i; + kiss_fftndr_cfg st; + void *ibuf; + void *obuf; + int insize,outsize; // size in bytes + + for (i=0;i 0) { + if (isinverse) { + kiss_fftndri(st, + (kiss_fft_cpx*)ibuf, + (kiss_fft_scalar*)obuf); + }else{ + kiss_fftndr(st, + (kiss_fft_scalar*)ibuf, + (kiss_fft_cpx*)obuf); + } + fwrite (obuf, sizeof(kiss_fft_scalar), outsize,fout); + } + free(st); + free(ibuf); + free(obuf); +} + +static +void fft_file_real(FILE * fin,FILE * fout,int nfft,int isinverse) +{ + kiss_fftr_cfg st; + kiss_fft_scalar * rbuf; + kiss_fft_cpx * cbuf; + + rbuf = (kiss_fft_scalar*)malloc(sizeof(kiss_fft_scalar) * nfft ); + cbuf = (kiss_fft_cpx*)malloc(sizeof(kiss_fft_cpx) * (nfft/2+1) ); + st = kiss_fftr_alloc( nfft ,isinverse ,0,0); + + if (isinverse==0) { + while ( fread( rbuf , sizeof(kiss_fft_scalar) * nfft ,1, fin ) > 0 ) { + kiss_fftr( st , rbuf ,cbuf); + fwrite( cbuf , sizeof(kiss_fft_cpx) , (nfft/2 + 1) , fout ); + } + }else{ + while ( fread( cbuf , sizeof(kiss_fft_cpx) * (nfft/2+1) ,1, fin ) > 0 ) { + kiss_fftri( st , cbuf ,rbuf); + fwrite( rbuf , sizeof(kiss_fft_scalar) , nfft , fout ); + } + } + free(st); + free(rbuf); + free(cbuf); +} + +static +int get_dims(char * arg,int * dims) +{ + char *p0; + int ndims=0; + + do{ + p0 = strchr(arg,','); + if (p0) + *p0++ = '\0'; + dims[ndims++] = atoi(arg); +// fprintf(stderr,"dims[%d] = %d\n",ndims-1,dims[ndims-1]); + arg = p0; + }while (p0); + return ndims; +} + +int main(int argc,char ** argv) +{ + int isinverse=0; + int isreal=0; + FILE *fin=stdin; + FILE *fout=stdout; + int ndims=1; + int dims[32]; + dims[0] = 1024; /*default fft size*/ + + while (1) { + int c=getopt(argc,argv,"n:iR"); + if (c==-1) break; + switch (c) { + case 'n': + ndims = get_dims(optarg,dims); + break; + case 'i':isinverse=1;break; + case 'R':isreal=1;break; + case '?': + fprintf(stderr,"usage options:\n" + "\t-n d1[,d2,d3...]: fft dimension(s)\n" + "\t-i : inverse\n" + "\t-R : real input samples, not complex\n"); + exit (1); + default:fprintf(stderr,"bad %c\n",c);break; + } + } + + if ( optind < argc ) { + if (strcmp("-",argv[optind]) !=0) + fin = fopen(argv[optind],"rb"); + ++optind; + } + + if ( optind < argc ) { + if ( strcmp("-",argv[optind]) !=0 ) + fout = fopen(argv[optind],"wb"); + ++optind; + } + + if (ndims==1) { + if (isreal) + fft_file_real(fin,fout,dims[0],isinverse); + else + fft_file(fin,fout,dims[0],isinverse); + }else{ + if (isreal) + fft_filend_real(fin,fout,dims,ndims,isinverse); + else + fft_filend(fin,fout,dims,ndims,isinverse); + } + + if (fout!=stdout) fclose(fout); + if (fin!=stdin) fclose(fin); + + return 0; +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.c new file mode 100644 index 00000000..d94d1240 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.c @@ -0,0 +1,116 @@ +#include "kfc.h" + +/* +Copyright (c) 2003-2004, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + + +typedef struct cached_fft *kfc_cfg; + +struct cached_fft +{ + int nfft; + int inverse; + kiss_fft_cfg cfg; + kfc_cfg next; +}; + +static kfc_cfg cache_root=NULL; +static int ncached=0; + +static kiss_fft_cfg find_cached_fft(int nfft,int inverse) +{ + size_t len; + kfc_cfg cur=cache_root; + kfc_cfg prev=NULL; + while ( cur ) { + if ( cur->nfft == nfft && inverse == cur->inverse ) + break;/*found the right node*/ + prev = cur; + cur = prev->next; + } + if (cur== NULL) { + /* no cached node found, need to create a new one*/ + kiss_fft_alloc(nfft,inverse,0,&len); +#ifdef USE_SIMD + int padding = (16-sizeof(struct cached_fft)) & 15; + // make sure the cfg aligns on a 16 byte boundary + len += padding; +#endif + cur = (kfc_cfg)KISS_FFT_MALLOC((sizeof(struct cached_fft) + len )); + if (cur == NULL) + return NULL; + cur->cfg = (kiss_fft_cfg)(cur+1); +#ifdef USE_SIMD + cur->cfg = (kiss_fft_cfg) ((char*)(cur+1)+padding); +#endif + kiss_fft_alloc(nfft,inverse,cur->cfg,&len); + cur->nfft=nfft; + cur->inverse=inverse; + cur->next = NULL; + if ( prev ) + prev->next = cur; + else + cache_root = cur; + ++ncached; + } + return cur->cfg; +} + +void kfc_cleanup(void) +{ + kfc_cfg cur=cache_root; + kfc_cfg next=NULL; + while (cur){ + next = cur->next; + free(cur); + cur=next; + } + ncached=0; + cache_root = NULL; +} +void kfc_fft(int nfft, const kiss_fft_cpx * fin,kiss_fft_cpx * fout) +{ + kiss_fft( find_cached_fft(nfft,0),fin,fout ); +} + +void kfc_ifft(int nfft, const kiss_fft_cpx * fin,kiss_fft_cpx * fout) +{ + kiss_fft( find_cached_fft(nfft,1),fin,fout ); +} + +#ifdef KFC_TEST +static void check(int nc) +{ + if (ncached != nc) { + fprintf(stderr,"ncached should be %d,but it is %d\n",nc,ncached); + exit(1); + } +} + +int main(void) +{ + kiss_fft_cpx buf1[1024],buf2[1024]; + memset(buf1,0,sizeof(buf1)); + check(0); + kfc_fft(512,buf1,buf2); + check(1); + kfc_fft(512,buf1,buf2); + check(1); + kfc_ifft(512,buf1,buf2); + check(2); + kfc_cleanup(); + check(0); + return 0; +} +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.h b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.h new file mode 100644 index 00000000..9b5fd677 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kfc.h @@ -0,0 +1,46 @@ +#ifndef KFC_H +#define KFC_H +#include "kiss_fft.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* +KFC -- Kiss FFT Cache + +Not needing to deal with kiss_fft_alloc and a config +object may be handy for a lot of programs. + +KFC uses the underlying KISS FFT functions, but caches the config object. +The first time kfc_fft or kfc_ifft for a given FFT size, the cfg +object is created for it. All subsequent calls use the cached +configuration object. + +NOTE: +You should probably not use this if your program will be using a lot +of various sizes of FFTs. There is a linear search through the +cached objects. If you are only using one or two FFT sizes, this +will be negligible. Otherwise, you may want to use another method +of managing the cfg objects. + + There is no automated cleanup of the cached objects. This could lead +to large memory usage in a program that uses a lot of *DIFFERENT* +sized FFTs. If you want to force all cached cfg objects to be freed, +call kfc_cleanup. + + */ + +/*forward complex FFT */ +void kfc_fft(int nfft, const kiss_fft_cpx * fin,kiss_fft_cpx * fout); +/*reverse complex FFT */ +void kfc_ifft(int nfft, const kiss_fft_cpx * fin,kiss_fft_cpx * fout); + +/*free all cached objects*/ +void kfc_cleanup(void); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fastfir.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fastfir.c new file mode 100644 index 00000000..4560aa37 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fastfir.c @@ -0,0 +1,470 @@ +/* +Copyright (c) 2003-2004, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "_kiss_fft_guts.h" + + +/* + Some definitions that allow real or complex filtering +*/ +#ifdef REAL_FASTFIR +#define MIN_FFT_LEN 2048 +#include "kiss_fftr.h" +typedef kiss_fft_scalar kffsamp_t; +typedef kiss_fftr_cfg kfcfg_t; +#define FFT_ALLOC kiss_fftr_alloc +#define FFTFWD kiss_fftr +#define FFTINV kiss_fftri +#else +#define MIN_FFT_LEN 1024 +typedef kiss_fft_cpx kffsamp_t; +typedef kiss_fft_cfg kfcfg_t; +#define FFT_ALLOC kiss_fft_alloc +#define FFTFWD kiss_fft +#define FFTINV kiss_fft +#endif + +typedef struct kiss_fastfir_state *kiss_fastfir_cfg; + + + +kiss_fastfir_cfg kiss_fastfir_alloc(const kffsamp_t * imp_resp,size_t n_imp_resp, + size_t * nfft,void * mem,size_t*lenmem); + +/* see do_file_filter for usage */ +size_t kiss_fastfir( kiss_fastfir_cfg cfg, kffsamp_t * inbuf, kffsamp_t * outbuf, size_t n, size_t *offset); + + + +static int verbose=0; + + +struct kiss_fastfir_state{ + size_t nfft; + size_t ngood; + kfcfg_t fftcfg; + kfcfg_t ifftcfg; + kiss_fft_cpx * fir_freq_resp; + kiss_fft_cpx * freqbuf; + size_t n_freq_bins; + kffsamp_t * tmpbuf; +}; + + +kiss_fastfir_cfg kiss_fastfir_alloc( + const kffsamp_t * imp_resp,size_t n_imp_resp, + size_t *pnfft, /* if <= 0, an appropriate size will be chosen */ + void * mem,size_t*lenmem) +{ + kiss_fastfir_cfg st = NULL; + size_t len_fftcfg,len_ifftcfg; + size_t memneeded = sizeof(struct kiss_fastfir_state); + char * ptr; + size_t i; + size_t nfft=0; + float scale; + int n_freq_bins; + if (pnfft) + nfft=*pnfft; + + if (nfft<=0) { + /* determine fft size as next power of two at least 2x + the impulse response length*/ + i=n_imp_resp-1; + nfft=2; + do{ + nfft<<=1; + }while (i>>=1); +#ifdef MIN_FFT_LEN + if ( nfft < MIN_FFT_LEN ) + nfft=MIN_FFT_LEN; +#endif + } + if (pnfft) + *pnfft = nfft; + +#ifdef REAL_FASTFIR + n_freq_bins = nfft/2 + 1; +#else + n_freq_bins = nfft; +#endif + /*fftcfg*/ + FFT_ALLOC (nfft, 0, NULL, &len_fftcfg); + memneeded += len_fftcfg; + /*ifftcfg*/ + FFT_ALLOC (nfft, 1, NULL, &len_ifftcfg); + memneeded += len_ifftcfg; + /* tmpbuf */ + memneeded += sizeof(kffsamp_t) * nfft; + /* fir_freq_resp */ + memneeded += sizeof(kiss_fft_cpx) * n_freq_bins; + /* freqbuf */ + memneeded += sizeof(kiss_fft_cpx) * n_freq_bins; + + if (lenmem == NULL) { + st = (kiss_fastfir_cfg) malloc (memneeded); + } else { + if (*lenmem >= memneeded) + st = (kiss_fastfir_cfg) mem; + *lenmem = memneeded; + } + if (!st) + return NULL; + + st->nfft = nfft; + st->ngood = nfft - n_imp_resp + 1; + st->n_freq_bins = n_freq_bins; + ptr=(char*)(st+1); + + st->fftcfg = (kfcfg_t)ptr; + ptr += len_fftcfg; + + st->ifftcfg = (kfcfg_t)ptr; + ptr += len_ifftcfg; + + st->tmpbuf = (kffsamp_t*)ptr; + ptr += sizeof(kffsamp_t) * nfft; + + st->freqbuf = (kiss_fft_cpx*)ptr; + ptr += sizeof(kiss_fft_cpx) * n_freq_bins; + + st->fir_freq_resp = (kiss_fft_cpx*)ptr; + ptr += sizeof(kiss_fft_cpx) * n_freq_bins; + + FFT_ALLOC (nfft,0,st->fftcfg , &len_fftcfg); + FFT_ALLOC (nfft,1,st->ifftcfg , &len_ifftcfg); + + memset(st->tmpbuf,0,sizeof(kffsamp_t)*nfft); + /*zero pad in the middle to left-rotate the impulse response + This puts the scrap samples at the end of the inverse fft'd buffer */ + st->tmpbuf[0] = imp_resp[ n_imp_resp - 1 ]; + for (i=0;itmpbuf[ nfft - n_imp_resp + 1 + i ] = imp_resp[ i ]; + } + + FFTFWD(st->fftcfg,st->tmpbuf,st->fir_freq_resp); + + /* TODO: this won't work for fixed point */ + scale = 1.0 / st->nfft; + + for ( i=0; i < st->n_freq_bins; ++i ) { +#ifdef USE_SIMD + st->fir_freq_resp[i].r *= _mm_set1_ps(scale); + st->fir_freq_resp[i].i *= _mm_set1_ps(scale); +#else + st->fir_freq_resp[i].r *= scale; + st->fir_freq_resp[i].i *= scale; +#endif + } + return st; +} + +static void fastconv1buf(const kiss_fastfir_cfg st,const kffsamp_t * in,kffsamp_t * out) +{ + size_t i; + /* multiply the frequency response of the input signal by + that of the fir filter*/ + FFTFWD( st->fftcfg, in , st->freqbuf ); + for ( i=0; in_freq_bins; ++i ) { + kiss_fft_cpx tmpsamp; + C_MUL(tmpsamp,st->freqbuf[i],st->fir_freq_resp[i]); + st->freqbuf[i] = tmpsamp; + } + + /* perform the inverse fft*/ + FFTINV(st->ifftcfg,st->freqbuf,out); +} + +/* n : the size of inbuf and outbuf in samples + return value: the number of samples completely processed + n-retval samples should be copied to the front of the next input buffer */ +static size_t kff_nocopy( + kiss_fastfir_cfg st, + const kffsamp_t * inbuf, + kffsamp_t * outbuf, + size_t n) +{ + size_t norig=n; + while (n >= st->nfft ) { + fastconv1buf(st,inbuf,outbuf); + inbuf += st->ngood; + outbuf += st->ngood; + n -= st->ngood; + } + return norig - n; +} + +static +size_t kff_flush(kiss_fastfir_cfg st,const kffsamp_t * inbuf,kffsamp_t * outbuf,size_t n) +{ + size_t zpad=0,ntmp; + + ntmp = kff_nocopy(st,inbuf,outbuf,n); + n -= ntmp; + inbuf += ntmp; + outbuf += ntmp; + + zpad = st->nfft - n; + memset(st->tmpbuf,0,sizeof(kffsamp_t)*st->nfft ); + memcpy(st->tmpbuf,inbuf,sizeof(kffsamp_t)*n ); + + fastconv1buf(st,st->tmpbuf,st->tmpbuf); + + memcpy(outbuf,st->tmpbuf,sizeof(kffsamp_t)*( st->ngood - zpad )); + return ntmp + st->ngood - zpad; +} + +size_t kiss_fastfir( + kiss_fastfir_cfg vst, + kffsamp_t * inbuf, + kffsamp_t * outbuf, + size_t n_new, + size_t *offset) +{ + size_t ntot = n_new + *offset; + if (n_new==0) { + return kff_flush(vst,inbuf,outbuf,ntot); + }else{ + size_t nwritten = kff_nocopy(vst,inbuf,outbuf,ntot); + *offset = ntot - nwritten; + /*save the unused or underused samples at the front of the input buffer */ + memcpy( inbuf , inbuf+nwritten , *offset * sizeof(kffsamp_t) ); + return nwritten; + } +} + +#ifdef FAST_FILT_UTIL +#include +#include +#include +#include + +static +void direct_file_filter( + FILE * fin, + FILE * fout, + const kffsamp_t * imp_resp, + size_t n_imp_resp) +{ + size_t nlag = n_imp_resp - 1; + + const kffsamp_t *tmph; + kffsamp_t *buf, *circbuf; + kffsamp_t outval; + size_t nread; + size_t nbuf; + size_t oldestlag = 0; + size_t k, tap; +#ifndef REAL_FASTFIR + kffsamp_t tmp; +#endif + + nbuf = 4096; + buf = (kffsamp_t *) malloc ( sizeof (kffsamp_t) * nbuf); + circbuf = (kffsamp_t *) malloc (sizeof (kffsamp_t) * nlag); + if (!circbuf || !buf) { + perror("circbuf allocation"); + exit(1); + } + + if ( fread (circbuf, sizeof (kffsamp_t), nlag, fin) != nlag ) { + perror ("insufficient data to overcome transient"); + exit (1); + } + + do { + nread = fread (buf, sizeof (kffsamp_t), nbuf, fin); + if (nread <= 0) + break; + + for (k = 0; k < nread; ++k) { + tmph = imp_resp+nlag; +#ifdef REAL_FASTFIR +# ifdef USE_SIMD + outval = _mm_set1_ps(0); +#else + outval = 0; +#endif + for (tap = oldestlag; tap < nlag; ++tap) + outval += circbuf[tap] * *tmph--; + for (tap = 0; tap < oldestlag; ++tap) + outval += circbuf[tap] * *tmph--; + outval += buf[k] * *tmph; +#else +# ifdef USE_SIMD + outval.r = outval.i = _mm_set1_ps(0); +#else + outval.r = outval.i = 0; +#endif + for (tap = oldestlag; tap < nlag; ++tap){ + C_MUL(tmp,circbuf[tap],*tmph); + --tmph; + C_ADDTO(outval,tmp); + } + + for (tap = 0; tap < oldestlag; ++tap) { + C_MUL(tmp,circbuf[tap],*tmph); + --tmph; + C_ADDTO(outval,tmp); + } + C_MUL(tmp,buf[k],*tmph); + C_ADDTO(outval,tmp); +#endif + + circbuf[oldestlag++] = buf[k]; + buf[k] = outval; + + if (oldestlag == nlag) + oldestlag = 0; + } + + if (fwrite (buf, sizeof (buf[0]), nread, fout) != nread) { + perror ("short write"); + exit (1); + } + } while (nread); + free (buf); + free (circbuf); +} + +static +void do_file_filter( + FILE * fin, + FILE * fout, + const kffsamp_t * imp_resp, + size_t n_imp_resp, + size_t nfft ) +{ + int fdout; + size_t n_samps_buf; + + kiss_fastfir_cfg cfg; + kffsamp_t *inbuf,*outbuf; + int nread,nwrite; + size_t idx_inbuf; + + fdout = fileno(fout); + + cfg=kiss_fastfir_alloc(imp_resp,n_imp_resp,&nfft,0,0); + + /* use length to minimize buffer shift*/ + n_samps_buf = 8*4096/sizeof(kffsamp_t); + n_samps_buf = nfft + 4*(nfft-n_imp_resp+1); + + if (verbose) fprintf(stderr,"bufsize=%d\n",(int)(sizeof(kffsamp_t)*n_samps_buf) ); + + + /*allocate space and initialize pointers */ + inbuf = (kffsamp_t*)malloc(sizeof(kffsamp_t)*n_samps_buf); + outbuf = (kffsamp_t*)malloc(sizeof(kffsamp_t)*n_samps_buf); + + idx_inbuf=0; + do{ + /* start reading at inbuf[idx_inbuf] */ + nread = fread( inbuf + idx_inbuf, sizeof(kffsamp_t), n_samps_buf - idx_inbuf,fin ); + + /* If nread==0, then this is a flush. + The total number of samples in input is idx_inbuf + nread . */ + nwrite = kiss_fastfir(cfg, inbuf, outbuf,nread,&idx_inbuf) * sizeof(kffsamp_t); + /* kiss_fastfir moved any unused samples to the front of inbuf and updated idx_inbuf */ + + if ( write(fdout, outbuf, nwrite) != nwrite ) { + perror("short write"); + exit(1); + } + }while ( nread ); + free(cfg); + free(inbuf); + free(outbuf); +} + +int main(int argc,char**argv) +{ + kffsamp_t * h; + int use_direct=0; + size_t nh,nfft=0; + FILE *fin=stdin; + FILE *fout=stdout; + FILE *filtfile=NULL; + while (1) { + int c=getopt(argc,argv,"n:h:i:o:vd"); + if (c==-1) break; + switch (c) { + case 'v': + verbose=1; + break; + case 'n': + nfft=atoi(optarg); + break; + case 'i': + fin = fopen(optarg,"rb"); + if (fin==NULL) { + perror(optarg); + exit(1); + } + break; + case 'o': + fout = fopen(optarg,"w+b"); + if (fout==NULL) { + perror(optarg); + exit(1); + } + break; + case 'h': + filtfile = fopen(optarg,"rb"); + if (filtfile==NULL) { + perror(optarg); + exit(1); + } + break; + case 'd': + use_direct=1; + break; + case '?': + fprintf(stderr,"usage options:\n" + "\t-n nfft: fft size to use\n" + "\t-d : use direct FIR filtering, not fast convolution\n" + "\t-i filename: input file\n" + "\t-o filename: output(filtered) file\n" + "\t-n nfft: fft size to use\n" + "\t-h filename: impulse response\n"); + exit (1); + default:fprintf(stderr,"bad %c\n",c);break; + } + } + if (filtfile==NULL) { + fprintf(stderr,"You must supply the FIR coeffs via -h\n"); + exit(1); + } + fseek(filtfile,0,SEEK_END); + nh = ftell(filtfile) / sizeof(kffsamp_t); + if (verbose) fprintf(stderr,"%d samples in FIR filter\n",(int)nh); + h = (kffsamp_t*)malloc(sizeof(kffsamp_t)*nh); + fseek(filtfile,0,SEEK_SET); + if (fread(h,sizeof(kffsamp_t),nh,filtfile) != nh) + fprintf(stderr,"short read on filter file\n"); + + fclose(filtfile); + + if (use_direct) + direct_file_filter( fin, fout, h,nh); + else + do_file_filter( fin, fout, h,nh,nfft); + + if (fout!=stdout) fclose(fout); + if (fin!=stdin) fclose(fin); + + return 0; +} +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.c new file mode 100644 index 00000000..d6c91243 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.c @@ -0,0 +1,193 @@ + + +/* +Copyright (c) 2003-2004, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "kiss_fftnd.h" +#include "_kiss_fft_guts.h" + +struct kiss_fftnd_state{ + int dimprod; /* dimsum would be mighty tasty right now */ + int ndims; + int *dims; + kiss_fft_cfg *states; /* cfg states for each dimension */ + kiss_fft_cpx * tmpbuf; /*buffer capable of hold the entire input */ +}; + +kiss_fftnd_cfg kiss_fftnd_alloc(const int *dims,int ndims,int inverse_fft,void*mem,size_t*lenmem) +{ + kiss_fftnd_cfg st = NULL; + int i; + int dimprod=1; + size_t memneeded = sizeof(struct kiss_fftnd_state); + char * ptr; + + for (i=0;istates[i] */ + dimprod *= dims[i]; + } + memneeded += sizeof(int) * ndims;/* st->dims */ + memneeded += sizeof(void*) * ndims;/* st->states */ + memneeded += sizeof(kiss_fft_cpx) * dimprod; /* st->tmpbuf */ + + if (lenmem == NULL) {/* allocate for the caller*/ + st = (kiss_fftnd_cfg) malloc (memneeded); + } else { /* initialize supplied buffer if big enough */ + if (*lenmem >= memneeded) + st = (kiss_fftnd_cfg) mem; + *lenmem = memneeded; /*tell caller how big struct is (or would be) */ + } + if (!st) + return NULL; /*malloc failed or buffer too small */ + + st->dimprod = dimprod; + st->ndims = ndims; + ptr=(char*)(st+1); + + st->states = (kiss_fft_cfg *)ptr; + ptr += sizeof(void*) * ndims; + + st->dims = (int*)ptr; + ptr += sizeof(int) * ndims; + + st->tmpbuf = (kiss_fft_cpx*)ptr; + ptr += sizeof(kiss_fft_cpx) * dimprod; + + for (i=0;idims[i] = dims[i]; + kiss_fft_alloc (st->dims[i], inverse_fft, NULL, &len); + st->states[i] = kiss_fft_alloc (st->dims[i], inverse_fft, ptr,&len); + ptr += len; + } + /* +Hi there! + +If you're looking at this particular code, it probably means you've got a brain-dead bounds checker +that thinks the above code overwrites the end of the array. + +It doesn't. + +-- Mark + +P.S. +The below code might give you some warm fuzzies and help convince you. + */ + if ( ptr - (char*)st != (int)memneeded ) { + fprintf(stderr, + "################################################################################\n" + "Internal error! Memory allocation miscalculation\n" + "################################################################################\n" + ); + } + return st; +} + +/* + This works by tackling one dimension at a time. + + In effect, + Each stage starts out by reshaping the matrix into a DixSi 2d matrix. + A Di-sized fft is taken of each column, transposing the matrix as it goes. + +Here's a 3-d example: +Take a 2x3x4 matrix, laid out in memory as a contiguous buffer + [ [ [ a b c d ] [ e f g h ] [ i j k l ] ] + [ [ m n o p ] [ q r s t ] [ u v w x ] ] ] + +Stage 0 ( D=2): treat the buffer as a 2x12 matrix + [ [a b ... k l] + [m n ... w x] ] + + FFT each column with size 2. + Transpose the matrix at the same time using kiss_fft_stride. + + [ [ a+m a-m ] + [ b+n b-n] + ... + [ k+w k-w ] + [ l+x l-x ] ] + + Note fft([x y]) == [x+y x-y] + +Stage 1 ( D=3) treats the buffer (the output of stage D=2) as an 3x8 matrix, + [ [ a+m a-m b+n b-n c+o c-o d+p d-p ] + [ e+q e-q f+r f-r g+s g-s h+t h-t ] + [ i+u i-u j+v j-v k+w k-w l+x l-x ] ] + + And perform FFTs (size=3) on each of the columns as above, transposing + the matrix as it goes. The output of stage 1 is + (Legend: ap = [ a+m e+q i+u ] + am = [ a-m e-q i-u ] ) + + [ [ sum(ap) fft(ap)[0] fft(ap)[1] ] + [ sum(am) fft(am)[0] fft(am)[1] ] + [ sum(bp) fft(bp)[0] fft(bp)[1] ] + [ sum(bm) fft(bm)[0] fft(bm)[1] ] + [ sum(cp) fft(cp)[0] fft(cp)[1] ] + [ sum(cm) fft(cm)[0] fft(cm)[1] ] + [ sum(dp) fft(dp)[0] fft(dp)[1] ] + [ sum(dm) fft(dm)[0] fft(dm)[1] ] ] + +Stage 2 ( D=4) treats this buffer as a 4*6 matrix, + [ [ sum(ap) fft(ap)[0] fft(ap)[1] sum(am) fft(am)[0] fft(am)[1] ] + [ sum(bp) fft(bp)[0] fft(bp)[1] sum(bm) fft(bm)[0] fft(bm)[1] ] + [ sum(cp) fft(cp)[0] fft(cp)[1] sum(cm) fft(cm)[0] fft(cm)[1] ] + [ sum(dp) fft(dp)[0] fft(dp)[1] sum(dm) fft(dm)[0] fft(dm)[1] ] ] + + Then FFTs each column, transposing as it goes. + + The resulting matrix is the 3d FFT of the 2x3x4 input matrix. + + Note as a sanity check that the first element of the final + stage's output (DC term) is + sum( [ sum(ap) sum(bp) sum(cp) sum(dp) ] ) + , i.e. the summation of all 24 input elements. + +*/ +void kiss_fftnd(kiss_fftnd_cfg st,const kiss_fft_cpx *fin,kiss_fft_cpx *fout) +{ + int i,k; + const kiss_fft_cpx * bufin=fin; + kiss_fft_cpx * bufout; + + /*arrange it so the last bufout == fout*/ + if ( st->ndims & 1 ) { + bufout = fout; + if (fin==fout) { + memcpy( st->tmpbuf, fin, sizeof(kiss_fft_cpx) * st->dimprod ); + bufin = st->tmpbuf; + } + }else + bufout = st->tmpbuf; + + for ( k=0; k < st->ndims; ++k) { + int curdim = st->dims[k]; + int stride = st->dimprod / curdim; + + for ( i=0 ; istates[k], bufin+i , bufout+i*curdim, stride ); + + /*toggle back and forth between the two buffers*/ + if (bufout == st->tmpbuf){ + bufout = fout; + bufin = st->tmpbuf; + }else{ + bufout = st->tmpbuf; + bufin = fout; + } + } +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.h b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.h new file mode 100644 index 00000000..42e7df5b --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftnd.h @@ -0,0 +1,18 @@ +#ifndef KISS_FFTND_H +#define KISS_FFTND_H + +#include "kiss_fft.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct kiss_fftnd_state * kiss_fftnd_cfg; + +kiss_fftnd_cfg kiss_fftnd_alloc(const int *dims,int ndims,int inverse_fft,void*mem,size_t*lenmem); +void kiss_fftnd(kiss_fftnd_cfg cfg,const kiss_fft_cpx *fin,kiss_fft_cpx *fout); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.c new file mode 100644 index 00000000..ba550dd1 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.c @@ -0,0 +1,118 @@ +/* +Copyright (c) 2003-2004, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "kiss_fftndr.h" +#include "_kiss_fft_guts.h" +#define MAX(x,y) ( ( (x)<(y) )?(y):(x) ) + +struct kiss_fftndr_state +{ + int dimReal; + int dimOther; + kiss_fftr_cfg cfg_r; + kiss_fftnd_cfg cfg_nd; + void * tmpbuf; +}; + +static int prod(const int *dims, int ndims) +{ + int x=1; + while (ndims--) + x *= *dims++; + return x; +} + +kiss_fftndr_cfg kiss_fftndr_alloc(const int *dims,int ndims,int inverse_fft,void*mem,size_t*lenmem) +{ + kiss_fftndr_cfg st = NULL; + size_t nr=0 , nd=0,ntmp=0; + int dimReal = dims[ndims-1]; + int dimOther = prod(dims,ndims-1); + size_t memneeded; + + (void)kiss_fftr_alloc(dimReal,inverse_fft,NULL,&nr); + (void)kiss_fftnd_alloc(dims,ndims-1,inverse_fft,NULL,&nd); + ntmp = + MAX( 2*dimOther , dimReal+2) * sizeof(kiss_fft_scalar) // freq buffer for one pass + + dimOther*(dimReal+2) * sizeof(kiss_fft_scalar); // large enough to hold entire input in case of in-place + + memneeded = sizeof( struct kiss_fftndr_state ) + nr + nd + ntmp; + + if (lenmem==NULL) { + st = (kiss_fftndr_cfg) malloc(memneeded); + }else{ + if (*lenmem >= memneeded) + st = (kiss_fftndr_cfg)mem; + *lenmem = memneeded; + } + if (st==NULL) + return NULL; + memset( st , 0 , memneeded); + + st->dimReal = dimReal; + st->dimOther = dimOther; + st->cfg_r = kiss_fftr_alloc( dimReal,inverse_fft,st+1,&nr); + st->cfg_nd = kiss_fftnd_alloc(dims,ndims-1,inverse_fft, ((char*) st->cfg_r)+nr,&nd); + st->tmpbuf = (char*)st->cfg_nd + nd; + + return st; +} + +void kiss_fftndr(kiss_fftndr_cfg st,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata) +{ + int k1,k2; + int dimReal = st->dimReal; + int dimOther = st->dimOther; + int nrbins = dimReal/2+1; + + kiss_fft_cpx * tmp1 = (kiss_fft_cpx*)st->tmpbuf; + kiss_fft_cpx * tmp2 = tmp1 + MAX(nrbins,dimOther); + + // timedata is N0 x N1 x ... x Nk real + + // take a real chunk of data, fft it and place the output at correct intervals + for (k1=0;k1cfg_r, timedata + k1*dimReal , tmp1 ); // tmp1 now holds nrbins complex points + for (k2=0;k2cfg_nd, tmp2+k2*dimOther, tmp1); // tmp1 now holds dimOther complex points + for (k1=0;k1dimReal; + int dimOther = st->dimOther; + int nrbins = dimReal/2+1; + kiss_fft_cpx * tmp1 = (kiss_fft_cpx*)st->tmpbuf; + kiss_fft_cpx * tmp2 = tmp1 + MAX(nrbins,dimOther); + + for (k2=0;k2cfg_nd, tmp1, tmp2+k2*dimOther); + } + + for (k1=0;k1cfg_r,tmp1,timedata + k1*dimReal); + } +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.h b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.h new file mode 100644 index 00000000..38ec3ab0 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftndr.h @@ -0,0 +1,47 @@ +#ifndef KISS_NDR_H +#define KISS_NDR_H + +#include "kiss_fft.h" +#include "kiss_fftr.h" +#include "kiss_fftnd.h" + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct kiss_fftndr_state *kiss_fftndr_cfg; + + +kiss_fftndr_cfg kiss_fftndr_alloc(const int *dims,int ndims,int inverse_fft,void*mem,size_t*lenmem); +/* + dims[0] must be even + + If you don't care to allocate space, use mem = lenmem = NULL +*/ + + +void kiss_fftndr( + kiss_fftndr_cfg cfg, + const kiss_fft_scalar *timedata, + kiss_fft_cpx *freqdata); +/* + input timedata has dims[0] X dims[1] X ... X dims[ndims-1] scalar points + output freqdata has dims[0] X dims[1] X ... X dims[ndims-1]/2+1 complex points +*/ + +void kiss_fftndri( + kiss_fftndr_cfg cfg, + const kiss_fft_cpx *freqdata, + kiss_fft_scalar *timedata); +/* + input and output dimensions are the exact opposite of kiss_fftndr +*/ + + +#define kiss_fftr_free free + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.c new file mode 100644 index 00000000..35448037 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.c @@ -0,0 +1,159 @@ +/* +Copyright (c) 2003-2004, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include "kiss_fftr.h" +#include "_kiss_fft_guts.h" + +struct kiss_fftr_state{ + kiss_fft_cfg substate; + kiss_fft_cpx * tmpbuf; + kiss_fft_cpx * super_twiddles; +#ifdef USE_SIMD + void * pad; +#endif +}; + +kiss_fftr_cfg kiss_fftr_alloc(int nfft,int inverse_fft,void * mem,size_t * lenmem) +{ + int i; + kiss_fftr_cfg st = NULL; + size_t subsize, memneeded; + + if (nfft & 1) { + fprintf(stderr,"Real FFT optimization must be even.\n"); + return NULL; + } + nfft >>= 1; + + kiss_fft_alloc (nfft, inverse_fft, NULL, &subsize); + memneeded = sizeof(struct kiss_fftr_state) + subsize + sizeof(kiss_fft_cpx) * ( nfft * 3 / 2); + + if (lenmem == NULL) { + st = (kiss_fftr_cfg) KISS_FFT_MALLOC (memneeded); + } else { + if (*lenmem >= memneeded) + st = (kiss_fftr_cfg) mem; + *lenmem = memneeded; + } + if (!st) + return NULL; + + st->substate = (kiss_fft_cfg) (st + 1); /*just beyond kiss_fftr_state struct */ + st->tmpbuf = (kiss_fft_cpx *) (((char *) st->substate) + subsize); + st->super_twiddles = st->tmpbuf + nfft; + kiss_fft_alloc(nfft, inverse_fft, st->substate, &subsize); + + for (i = 0; i < nfft/2; ++i) { + double phase = + -3.14159265358979323846264338327 * ((double) (i+1) / nfft + .5); + if (inverse_fft) + phase *= -1; + kf_cexp (st->super_twiddles+i,phase); + } + return st; +} + +void kiss_fftr(kiss_fftr_cfg st,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata) +{ + /* input buffer timedata is stored row-wise */ + int k,ncfft; + kiss_fft_cpx fpnk,fpk,f1k,f2k,tw,tdc; + + if ( st->substate->inverse) { + fprintf(stderr,"kiss fft usage error: improper alloc\n"); + exit(1); + } + + ncfft = st->substate->nfft; + + /*perform the parallel fft of two real signals packed in real,imag*/ + kiss_fft( st->substate , (const kiss_fft_cpx*)timedata, st->tmpbuf ); + /* The real part of the DC element of the frequency spectrum in st->tmpbuf + * contains the sum of the even-numbered elements of the input time sequence + * The imag part is the sum of the odd-numbered elements + * + * The sum of tdc.r and tdc.i is the sum of the input time sequence. + * yielding DC of input time sequence + * The difference of tdc.r - tdc.i is the sum of the input (dot product) [1,-1,1,-1... + * yielding Nyquist bin of input time sequence + */ + + tdc.r = st->tmpbuf[0].r; + tdc.i = st->tmpbuf[0].i; + C_FIXDIV(tdc,2); + CHECK_OVERFLOW_OP(tdc.r ,+, tdc.i); + CHECK_OVERFLOW_OP(tdc.r ,-, tdc.i); + freqdata[0].r = tdc.r + tdc.i; + freqdata[ncfft].r = tdc.r - tdc.i; +#ifdef USE_SIMD + freqdata[ncfft].i = freqdata[0].i = _mm_set1_ps(0); +#else + freqdata[ncfft].i = freqdata[0].i = 0; +#endif + + for ( k=1;k <= ncfft/2 ; ++k ) { + fpk = st->tmpbuf[k]; + fpnk.r = st->tmpbuf[ncfft-k].r; + fpnk.i = - st->tmpbuf[ncfft-k].i; + C_FIXDIV(fpk,2); + C_FIXDIV(fpnk,2); + + C_ADD( f1k, fpk , fpnk ); + C_SUB( f2k, fpk , fpnk ); + C_MUL( tw , f2k , st->super_twiddles[k-1]); + + freqdata[k].r = (kiss_fft_scalar)HALF_OF(f1k.r + tw.r); + freqdata[k].i = (kiss_fft_scalar) HALF_OF(f1k.i + tw.i); + freqdata[ncfft-k].r = (kiss_fft_scalar) HALF_OF(f1k.r - tw.r); + freqdata[ncfft-k].i = (kiss_fft_scalar) HALF_OF(tw.i - f1k.i); + } +} + +void kiss_fftri(kiss_fftr_cfg st,const kiss_fft_cpx *freqdata,kiss_fft_scalar *timedata) +{ + /* input buffer timedata is stored row-wise */ + int k, ncfft; + + if (st->substate->inverse == 0) { + fprintf (stderr, "kiss fft usage error: improper alloc\n"); + exit (1); + } + + ncfft = st->substate->nfft; + + st->tmpbuf[0].r = freqdata[0].r + freqdata[ncfft].r; + st->tmpbuf[0].i = freqdata[0].r - freqdata[ncfft].r; + C_FIXDIV(st->tmpbuf[0],2); + + for (k = 1; k <= ncfft / 2; ++k) { + kiss_fft_cpx fk, fnkc, fek, fok, tmp; + fk = freqdata[k]; + fnkc.r = freqdata[ncfft - k].r; + fnkc.i = -freqdata[ncfft - k].i; + C_FIXDIV( fk , 2 ); + C_FIXDIV( fnkc , 2 ); + + C_ADD (fek, fk, fnkc); + C_SUB (tmp, fk, fnkc); + C_MUL (fok, tmp, st->super_twiddles[k-1]); + C_ADD (st->tmpbuf[k], fek, fok); + C_SUB (st->tmpbuf[ncfft - k], fek, fok); +#ifdef USE_SIMD + st->tmpbuf[ncfft - k].i *= _mm_set1_ps(-1.0); +#else + st->tmpbuf[ncfft - k].i *= -1; +#endif + } + kiss_fft (st->substate, st->tmpbuf, (kiss_fft_cpx *) timedata); +} diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.h b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.h new file mode 100644 index 00000000..72e5a577 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/kiss_fftr.h @@ -0,0 +1,46 @@ +#ifndef KISS_FTR_H +#define KISS_FTR_H + +#include "kiss_fft.h" +#ifdef __cplusplus +extern "C" { +#endif + + +/* + + Real optimized version can save about 45% cpu time vs. complex fft of a real seq. + + + + */ + +typedef struct kiss_fftr_state *kiss_fftr_cfg; + + +kiss_fftr_cfg kiss_fftr_alloc(int nfft,int inverse_fft,void * mem, size_t * lenmem); +/* + nfft must be even + + If you don't care to allocate space, use mem = lenmem = NULL +*/ + + +void kiss_fftr(kiss_fftr_cfg cfg,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata); +/* + input timedata has nfft scalar points + output freqdata has nfft/2+1 complex points +*/ + +void kiss_fftri(kiss_fftr_cfg cfg,const kiss_fft_cpx *freqdata,kiss_fft_scalar *timedata); +/* + input freqdata has nfft/2+1 complex points + output timedata has nfft scalar points +*/ + +#define kiss_fftr_free free + +#ifdef __cplusplus +} +#endif +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/psdpng.c b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/psdpng.c new file mode 100644 index 00000000..d11a54fd --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/third-party/kiss_fft130/tools/psdpng.c @@ -0,0 +1,235 @@ +/* +Copyright (c) 2003-2004, Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +#include +#include +#include +#include +#include +#include + +#include "kiss_fft.h" +#include "kiss_fftr.h" + +int nfft=1024; +FILE * fin=NULL; +FILE * fout=NULL; + +int navg=20; +int remove_dc=0; +int nrows=0; +float * vals=NULL; +int stereo=0; + +static +void config(int argc,char** argv) +{ + while (1) { + int c = getopt (argc, argv, "n:r:as"); + if (c == -1) + break; + switch (c) { + case 'n': nfft=(int)atoi(optarg);break; + case 'r': navg=(int)atoi(optarg);break; + case 'a': remove_dc=1;break; + case 's': stereo=1;break; + case '?': + fprintf (stderr, "usage options:\n" + "\t-n d: fft dimension(s) [1024]\n" + "\t-r d: number of rows to average [20]\n" + "\t-a : remove average from each fft buffer\n" + "\t-s : input is stereo, channels will be combined before fft\n" + "16 bit machine format real input is assumed\n" + ); + default: + fprintf (stderr, "bad %c\n", c); + exit (1); + break; + } + } + if ( optind < argc ) { + if (strcmp("-",argv[optind]) !=0) + fin = fopen(argv[optind],"rb"); + ++optind; + } + + if ( optind < argc ) { + if ( strcmp("-",argv[optind]) !=0 ) + fout = fopen(argv[optind],"wb"); + ++optind; + } + if (fin==NULL) + fin=stdin; + if (fout==NULL) + fout=stdout; +} + +#define CHECKNULL(p) if ( (p)==NULL ) do { fprintf(stderr,"CHECKNULL failed @ %s(%d): %s\n",__FILE__,__LINE__,#p );exit(1);} while(0) + +typedef struct +{ + png_byte r; + png_byte g; + png_byte b; +} rgb_t; + +static +void val2rgb(float x,rgb_t *p) +{ + const double pi = 3.14159265358979; + p->g = (int)(255*sin(x*pi)); + p->r = (int)(255*abs(sin(x*pi*3/2))); + p->b = (int)(255*abs(sin(x*pi*5/2))); + //fprintf(stderr,"%.2f : %d,%d,%d\n",x,(int)p->r,(int)p->g,(int)p->b); +} + +static +void cpx2pixels(rgb_t * res,const float * fbuf,size_t n) +{ + size_t i; + float minval,maxval,valrange; + minval=maxval=fbuf[0]; + + for (i = 0; i < n; ++i) { + if (fbuf[i] > maxval) maxval = fbuf[i]; + if (fbuf[i] < minval) minval = fbuf[i]; + } + + fprintf(stderr,"min ==%f,max=%f\n",minval,maxval); + valrange = maxval-minval; + if (valrange == 0) { + fprintf(stderr,"min == max == %f\n",minval); + exit (1); + } + + for (i = 0; i < n; ++i) + val2rgb( (fbuf[i] - minval)/valrange , res+i ); +} + +static +void transform_signal(void) +{ + short *inbuf; + kiss_fftr_cfg cfg=NULL; + kiss_fft_scalar *tbuf; + kiss_fft_cpx *fbuf; + float *mag2buf; + int i; + int n; + int avgctr=0; + + int nfreqs=nfft/2+1; + + CHECKNULL( cfg=kiss_fftr_alloc(nfft,0,0,0) ); + CHECKNULL( inbuf=(short*)malloc(sizeof(short)*2*nfft ) ); + CHECKNULL( tbuf=(kiss_fft_scalar*)malloc(sizeof(kiss_fft_scalar)*nfft ) ); + CHECKNULL( fbuf=(kiss_fft_cpx*)malloc(sizeof(kiss_fft_cpx)*nfreqs ) ); + CHECKNULL( mag2buf=(float*)malloc(sizeof(float)*nfreqs ) ); + + memset(mag2buf,0,sizeof(mag2buf)*nfreqs); + + while (1) { + if (stereo) { + n = fread(inbuf,sizeof(short)*2,nfft,fin); + if (n != nfft ) + break; + for (i=0;i + + +/** For Tremolo: lets you smoothly adjust phase and skew +* turns a ramp into a continuously variable dual slope ramp: +* at one extreme it is increasing ramp +* at other extreme it is decreasing +* in between it it triangle +*/ + +class AsymRampShaperParams +{ +public: + float k; //when input < k we are in the rising phase + float a1; // in rising phase, f(x) = a1 * x; + float a2; + float b2; // in falling phase, f(x) = a2 * x + b2 + float phaseOffset; // between 0 and 1 + + bool valid() + { + bool ret = true; + ret &= (k > 0 && k < 1); + ret &= (phaseOffset >= 0 && phaseOffset <= 1); + return ret; + } +}; + + +class AsymRampShaper +{ +public: + + /* skew = -1..1, zero is triangle + * phase = -1..1, zero is no shift + */ + static void setup(AsymRampShaperParams& params, float skew, float phase) + { + // first deal with phase + if (phase < 0) phase += 1; // adjust phase into range convenient for us + // (it all wraps around two pi anyway) + + assert(phase >= 0 && phase <= 1); + params.phaseOffset = phase; + + // now skew + assert(skew > -1 && skew < 1); + params.k = (skew + 1) / (float) 2; // between 0 and 1 + + params.a1 = float(1.0 / params.k); // as x goes 0..k, f(x) 0..1 + params.a2 = float(1.0 / (params.k - 1.0)); + params.b2 = -params.a2; + + assert(params.valid()); + //char buf[512]; + //sprintf(buf, "set k=%f a1=%f a2=%f b2=%f\n", params.k, params.a1, params.a2, params.b2); + //DebugUtil::trace(buf); + } + + static float proc_1(AsymRampShaperParams& params, float input) + { + assert(params.valid()); + input += params.phaseOffset; + if (input > 1) input -= 1; + + float ret = 0; + if (input < params.k) { + ret = input * params.a1; + } else { + ret = params.b2 + input * params.a2; + } + assert(ret >= 0 && ret <= 1); + return ret; + } + +}; + + diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.cpp new file mode 100644 index 00000000..caad2afc --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.cpp @@ -0,0 +1,87 @@ +#include +#include + +#include "AudioMath.h" +#include "LookupTable.h" +#include "ObjectCache.h" + +const double AudioMath::Pi = 3.1415926535897932384626433832795028841971; +const double AudioMath::Pi_2 = 1.5707963267948966192313216916397514420986; +const double AudioMath::Ln2 = 0.693147180559945309417; +const double AudioMath::Ln10 = 2.30258509299404568402; +const double AudioMath::E = 2.71828182845904523536; + +std::function AudioMath::makeFunc_Sin() +{ + return [](double x) { + return std::sin(x * 2 * Pi); + }; +} + +std::function AudioMath::makeFunc_Exp(double xMin, double xMax, double yMin, double yMax) +{ + const double a = (std::log(yMax) - log(yMin)) / (xMax - xMin); + const double b = log(yMin) - a * xMin; + return [a, b](double d) { + return std::exp(a * d + b); + }; +} + +std::function AudioMath::makeFunc_AudioTaper(double dbAtten) +{ + assert(dbAtten < 0); + + const double gainAtQuarter = gainFromDb(dbAtten); + std::function linearFunc; + std::function expFunc; + + { + // for linear part at bottom + const double x0 = 0; + const double x1 = .25; + const double y0 = 0; + const double y1 = gainAtQuarter; + const double a = (y1 - y0) / (x1 - x0); + const double b = y0 - a * x0; + linearFunc = [a, b](double d) { + return a * d + b; + }; + } + + { + // for exp part on top + const double xMin = .25; + const double yMin = gainAtQuarter; + const double xMax = 1; + const double yMax = 1; + expFunc = makeFunc_Exp(xMin, xMax, yMin, yMax); + } + + return [linearFunc, expFunc](double d) { + return (d <= .25) ? linearFunc(d) : expFunc(d); + }; +} + +AudioMath::ScaleFun AudioMath::makeBipolarAudioScaler(float y0, float y1) +{ + // Use a cached singleton for the lookup table - don't need to have unique copies + std::shared_ptr> lookup = ObjectCache::getBipolarAudioTaper(); + const float x0 = -5; + const float x1 = 5; + const float a = (y1 - y0) / (x1 - x0); + const float b = y0 - a * x0; + + // Notice how lambda captures the smart pointer. Now + // lambda owns a reference to it. + return [a, b, lookup](float cv, float knob, float trim) { + auto mappedTrim = LookupTable::lookup(*lookup, trim); + float x = cv * mappedTrim + knob; + x = std::max(-5.0f, x); + x = std::min(5.0f, x); + return a * x + b; + }; +} + + // declare some test variables here +int _numLookupParams = 0; +int _numBiquads = 0; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.h b/plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.h new file mode 100644 index 00000000..fa9cc2e8 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/utils/AudioMath.h @@ -0,0 +1,92 @@ +#pragma once +#include +#include +#include + +class AudioMath +{ +public: + AudioMath() = delete; // we are only static + static const double Pi; + static const double Pi_2; // Pi / 2 + static const double Ln2; + static const double Ln10; + static const double E; + + static bool closeTo(double x, double y, double tolerance) + { + const bool ret = std::abs(x - y) < tolerance; + return ret; + } + + static double db(double g) + { + return 20 * log(g) / Ln10; + } + + static double gainFromDb(double db) + { + return std::exp(Ln10 * db / 20.0); + } + + /** + * Returns a function that generates one period of sin for x = {0..1}. + * Range (output) is -1 to 1. + */ + static std::function makeFunc_Sin(); + + /* + * Returns a function that generates an exponential defined by two points + * At input = xMin, output will be yMin. + * At input = xMax, output will be yMax. + */ + static std::function makeFunc_Exp(double xMin, double xMax, double yMin, double yMax); + + /** + * Returns a function for an "audio taper" attenuator gain. + * function is pure exponential for x > .25, linear for x < .25 + * At input 1, output is 1 + * At input .25, output is the gain corresponding to adAtten + * At input 0, the output is zero. + */ + static std::function makeFunc_AudioTaper(double dbAtten); + + /** + * ScaleFun is a function the combines CV, knob, and trim into a voltage. + * Typically a ScaleFun is like an "attenuverter" + */ + template + using ScaleFun = std::function; + + /** + * Create a ScaleFun with the following properties: + * 1) The values are combined with the typical formula: x = cv * trim + knob; + * 2) x is clipped between -5 and 5 + * 3) range is then interpolated between y0, and y1. + * + * This particular function is used when knobs are -5..5, + * and CV range is -5..5. + */ + template + static ScaleFun makeLinearScaler(T y0, T y1) + { + const T x0 = -5; + const T x1 = 5; + const T a = (y1 - y0) / (x1 - x0); + const T b = y0 - a * x0; + return [a, b](T cv, T knob, T trim) { + T x = cv * trim + knob; + x = std::max(-5.0f, x); + x = std::min(5.0f, x); + return a * x + b; + }; + } + + /** + * Generates a scale function for an audio taper attenuverter. + * Details the same as makeLinearScaler except that the CV + * scaling will be exponential for most values, becoming + * linear near zero. + */ + static ScaleFun makeBipolarAudioScaler(float y0, float y1); +}; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTable.h b/plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTable.h new file mode 100644 index 00000000..6359681b --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTable.h @@ -0,0 +1,233 @@ +#pragma once + +#include +#include +#include +#include + +#include "AudioMath.h" + +template class LookupTableParams; +/* Lookup table with evenly spaced lookup "bins" + * Uses linear interpolation + */ + + // TODO: templatize on size? +template +class LookupTable +{ + +public: + LookupTable() = delete; // we are only static + + /** + * lookup does the table lookup. + * input must be in the range specified at table creation time, otherwise + * it will be limited to the range. + * If allowOutsideDomain, will assert when input must be limited. + */ + static T lookup(const LookupTableParams& params, T input, bool allowOutsideDomain = false); + + /** + * init will create the entries in the lookup table + * bins is the number of entries desired in the lookup table. + * more bins means greater accuracy, but greater memory usage also. + * xMin is the minimum input that will be passed to lookup() + * xMax is the maximum input that will be passed to lookup(). + * xMin..xMax is the domain of the function. + * f is a continuous function that the lookup table will approximate. + */ + static void init(LookupTableParams& params, int bins, T xMin, T xMax, std::function f); + + /** + * initDiscrete will make a table that interpolates between discrete values. + * numEntries is the number of "points" that will be interpolated. + * entries are the discrete y values to be interpolated. + * Very important: x values are assumed to be 0..numEntries-1. That's because + * this lookup table only works with uniform x value. + */ + static void initDiscrete(LookupTableParams& params, int numEntries, const T * yEntries); +private: + static int cvtt(T *); + +#ifdef _DEBUG + static void checkInput(const LookupTableParams& params, const T *in, int sampleFrames) + { + for (int i = 0; i < sampleFrames; ++i) { + f_t input = in[i]; + assert(input >= params.xMin && input <= params.xMax); + } + } +#else +#define checkInput __noop +#endif + +}; + +template +inline T LookupTable::lookup(const LookupTableParams& params, T input, bool allowOutsideDomain) +{ + assert(allowOutsideDomain || (input >= params.xMin && input <= params.xMax)); + // won't happen in the field, + // as assertions are disabled for release. + input = std::min(input, params.xMax); + input = std::max(input, params.xMin); + assert(params.isValid()); + assert(input >= params.xMin && input <= params.xMax); + + // need to scale by bins + T scaledInput = input * params.a + params.b; + assert(params.a != 0); + + int input_int = cvtt(&scaledInput); + T input_float = scaledInput - input_int; + + // Unfortunately, when we use float instead of doubles, + // numeric precision issues get us "out of range". So + // here we clamp to range. It would be more efficient if we didn't do this. + // Perhaps the calculation of a and b could be done so this can't happen? + if (input_float < 0) { + input_float = 0; + } else if (input_float > 1) { + input_float = 1; + } + + assert(input_float >= 0 && input_float <= 1); + assert(input_int >= 0 && input_int <= params.numBins_i); + + T * entry = params.entries + (2 * input_int); + T x = entry[0]; + x += input_float * entry[1]; + return x; +} + +template +inline void LookupTable::init(LookupTableParams& params, + int bins, T x0In, T x1In, std::function f) +{ + params.alloc(bins); + + // f(x0 = ax + 0 == index + // f(x0) = 0 + // f(x1) = bins + params.a = (T) bins / (x1In - x0In); + params.b = -params.a * x0In; + + if (x0In == 0) assert(params.b == 0); + + { + assert(AudioMath::closeTo((params.a * x0In + params.b), 0, .0001)); + assert(AudioMath::closeTo((params.a * x1In + params.b), bins, .0001)); + } + + for (int i = 0; i <= bins; ++i) { + double x0 = (i - params.b) / params.a; + double x1 = ((i + 1) - params.b) / params.a; + + double y0 = f(x0); + double y1 = f(x1); + double slope = y1 - y0; + T * entry = params.entries + (2 * i); + entry[0] = (T) y0; + entry[1] = (T) slope; + } + params.xMin = x0In; + params.xMax = x1In; +} + +template +inline void LookupTable::initDiscrete(LookupTableParams& params, int numEntries, const T * entries) +{ + params.alloc(numEntries); + // Since this version assumes x = 0, 1, 2 .... + // We don't need an interpolation to find which bin we are in + params.a = 1; + params.b = 0; + + for (int i = 0; i < numEntries; ++i) { + int x0 = i; + int x1 = i + 1; + + // Ugh - this will need to get resolved when we "officially" make + // all table support x values outside their range. But for now we + // have a problem: if x == Xmax (numEntries), we need an extra "bin" + // at the end to look up that value, so here we make a flat bit of xMax. + if (i == (numEntries - 1)) { + --x1; + } + + double y0 = entries[x0]; + double y1 = entries[x1]; + double slope = y1 - y0; + + T * entry = params.entries + (2 * i); + entry[0] = (T) y0; + entry[1] = (T) slope; + } + params.xMin = 0; + params.xMax = T(numEntries - 1); +} + +template<> +inline int LookupTable::cvtt(double* input) +{ + auto x = _mm_load_sd(input); + return _mm_cvttsd_si32(x); +} + +template<> +inline int LookupTable::cvtt(float* input) +{ + auto x = _mm_load_ss(input); + return _mm_cvttss_si32(x); +} + +/***************************************************************************/ +extern int _numLookupParams; + +template +class LookupTableParams +{ +public: + int numBins_i = 0; // numBins will be number of entries (pairs of values) + T a = 0, b = 0; // lookup index = a * x + b, so domain of x can be whatever we want + + T * entries = 0; // each entry is value, slope + T xMin = 0; // minimum x value we will accept as input + T xMax = 0; // max x value we will accept as input + + LookupTableParams() + { + ++_numLookupParams; + } + LookupTableParams(const LookupTableParams&) = delete; + LookupTableParams& operator=(const LookupTableParams&) = delete; + + ~LookupTableParams() + { + free(entries); + --_numLookupParams; + } + + bool isValid() const + { + return ((entries != 0) && + (xMax > xMin) && + (numBins_i > 0) + ); + } + + void alloc(int bins) + { + if (entries) free(entries); + // allocate one extra, so we can index all the way to the end... + entries = (T *) malloc((bins + 1) * 2 * sizeof(T)); + numBins_i = bins; + a = 0; + b = 0; + } + +}; + + + diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTableFactory.h b/plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTableFactory.h new file mode 100644 index 00000000..6ef5b4b4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/utils/LookupTableFactory.h @@ -0,0 +1,64 @@ +#pragma once + +#include "LookupTable.h" + +// TODO: this class should not be templatized. the functions should +template +class LookupTableFactory +{ +public: + static void makeBipolarAudioTaper(LookupTableParams& params); + static double audioTaperKnee() + { + return -24; + } + /** + * Factory methods for exp base 2 + * domain = 0..10 + * range = 20..20k (for now). but should be .001 to 1.0? + */ + static void makeExp2(LookupTableParams& params); + static double expYMin() + { + return 4; + } + static double expYMax() + { + return 40000; + } + static double expXMin() + { + return std::log2(expYMin()); + } + static double expXMax() + { + return std::log2(expYMax()); + } +}; + + +template +inline void LookupTableFactory::makeExp2(LookupTableParams& params) +{ + // 128 not enough for one cent + const int bins = 256; + const T xMin = (T) std::log2(expYMin()); + const T xMax = (T) std::log2(expYMax()); + assert(xMin < xMax); + LookupTable::init(params, bins, xMin, xMax, [](double x) { + return std::pow(2, x); + }); +} + +template +inline void LookupTableFactory::makeBipolarAudioTaper(LookupTableParams& params) +{ + const int bins = 32; + std::function audioTaper = AudioMath::makeFunc_AudioTaper(audioTaperKnee()); + const T xMin = -1; + const T xMax = 1; + LookupTable::init(params, bins, xMin, xMax, [audioTaper](double x) { + return (x >= 0) ? audioTaper(x) : -audioTaper(-x); + }); + +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.cpp b/plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.cpp new file mode 100644 index 00000000..2fee4982 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.cpp @@ -0,0 +1,95 @@ + +#include + +#include "AudioMath.h" +#include "LookupTableFactory.h" +#include "ObjectCache.h" + +template +std::shared_ptr> ObjectCache::getBipolarAudioTaper() +{ + std::shared_ptr< LookupTableParams> ret = bipolarAudioTaper.lock(); + if (!ret) { + ret = std::make_shared>(); + LookupTableFactory::makeBipolarAudioTaper(*ret); + bipolarAudioTaper = ret; + } + return ret; +} + +template +std::shared_ptr> ObjectCache::getSinLookup() +{ + std::shared_ptr< LookupTableParams> ret = sinLookupTable.lock(); + if (!ret) { + ret = std::make_shared>(); + std::function f = AudioMath::makeFunc_Sin(); + // Used to use 4096, but 256 gives about 80db snr, so let's save memory + LookupTable::init(*ret, 256, 0, 1, f); + sinLookupTable = ret; + } + return ret; +} + +template +std::shared_ptr> ObjectCache::getExp2() +{ + std::shared_ptr< LookupTableParams> ret = exp2.lock(); + if (!ret) { + ret = std::make_shared>(); + LookupTableFactory::makeExp2(*ret); + exp2 = ret; + } + return ret; +} + + + +template +std::shared_ptr> ObjectCache::getDb2Gain() +{ + std::shared_ptr< LookupTableParams> ret = db2Gain.lock(); + if (!ret) { + ret = std::make_shared>(); + LookupTable::init(*ret, 32, -80, 20, [](double x) { + return AudioMath::gainFromDb(x); + }); + db2Gain = ret; + } + return ret; +} + + +template +std::shared_ptr> ObjectCache::getTanh5() +{ + std::shared_ptr< LookupTableParams> ret = tanh5.lock(); + if (!ret) { + ret = std::make_shared>(); + LookupTable::init(*ret, 256, -5, 5, [](double x) { + return std::tanh(x); + }); + tanh5 = ret; + } + return ret; +} + +// The weak pointer that hold our singletons. +template +std::weak_ptr> ObjectCache::bipolarAudioTaper; + +template +std::weak_ptr> ObjectCache::sinLookupTable; + +template +std::weak_ptr> ObjectCache::exp2; + +template +std::weak_ptr> ObjectCache::db2Gain; + +template +std::weak_ptr> ObjectCache::tanh5; + +// Explicit instantiation, so we can put implementation into .cpp file +template class ObjectCache; +template class ObjectCache; diff --git a/plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.h b/plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.h new file mode 100644 index 00000000..78c63568 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/dsp/utils/ObjectCache.h @@ -0,0 +1,50 @@ +#pragma once + + +#include "LookupTable.h" + +/** + * This class creates objects and caches them. + * Objects in the cache only stay alive as long as there is a reference to the object, + * If all refs go away, the object will be deleted. + * + * All accessors return shared pointers to make the lifetime management easy. + * Clients are free to use the shared_ptr directly, or may use the raw pointer, + * as long as the client holds onto the reference. + */ + +template +class ObjectCache +{ +public: + static std::shared_ptr> getBipolarAudioTaper(); + static std::shared_ptr> getSinLookup(); + + /** + * 2 ** x, not scaled or shifted in any manner, but tables + * selected to span a "reasonable" range when used as frequencies + (4 Hz to 40kHz) + * Exp2 lookup is 2 ** x. + * Domain = {2 .. 15(+)} + * Range = {4 .. 40000} + * accuracy = 1 cent (1V/octave) + */ + static std::shared_ptr> getExp2(); + static std::shared_ptr> getDb2Gain(); + + /** + * tanh, unscaled, from -5 to 5 + */ + static std::shared_ptr> getTanh5(); + +private: + /** + * Cache uses weak pointers. This allows the cached objects to be + * freed when the last client reference goes away. + */ + static std::weak_ptr> bipolarAudioTaper; + static std::weak_ptr> sinLookupTable; + static std::weak_ptr> exp2; + static std::weak_ptr> db2Gain; + static std::weak_ptr> tanh5; +}; diff --git a/plugins/community/repos/squinkylabs-plug1/gfx/ThreadBoost.xd b/plugins/community/repos/squinkylabs-plug1/gfx/ThreadBoost.xd new file mode 100644 index 0000000000000000000000000000000000000000..2f9fcbfde53dc07563f55f766d56aab22360103a GIT binary patch literal 22521 zcmeIa1yml(wl4Z3L4p(9Ex5b8OOW8skGs1CcX!u72n0z;aDsbqg1ZKHm)op;)>wP5 zyU#uMp7Gut?~RdW6b=91HLJR6_N_N@8<#s6kAJM zQx{JMQzHil8%tv&7fX9PCO111Mk5n@uqmUngOQW9jj0o(gOk0Lsj&;4iLr;Pv6<2z zB4Gdl&mvoYIb%}40D(%8{zIgZou!$nvrD(eVC+06#zTs*p4rav!*QjwPHhxSki44& zcG||KW`u27Vs?fLYW~xx(0yl$>I8fGxDz{E7-e6L!s(%7e1UB zo&DR!Sq*D%&zZ%&tu;9Oh+K#9wbQpU z3~ecDw`91pL>tym*|xfM32{o>^Om(kR%ee;cm0c-zk<#Pq;_09+(AVUeMXcFDN23;ev%PH@!=``@{Rn)<>L=M02qT={Ht6t(J zrC3RZ<#xvK0Lw^}$x9z`@%AElHocvR1hQWGk*o({y-MnnuDA#+L4=|)QaWDV5+stK z3f838RCEY5V)X1j21n*KcRXaF`(M{HcQ%nGR3@li2i#W2)(w=hDCu(+B>@23y|K`lk2uW2tdecX`MYbi#Qz z;kAA8d;6Lz;q;ox1k4`P2y&V2o)+ojyo?^m^sp)Ej2)=wxEY(n@R;OU1CY19h-`9) zB3(n#FIeA%w23-K%49&pt%70rP|j`&h%*89;9V@mW+02mV*LkmcPA{dAPJ}c_RjAe%**sseUy*(G7M=IovQM(B zHjbssrMyqE`VmciAru~;bW!J(0k#dOv`8`J1-o!=7Ecr!`CGiCOCt2!knc>!BMkH! z8c7n-OM;eZI{Ju8CLn>>`SF{<*EwAsG}iUgWf92ugnK|~uA(-VZ=_c2vf4LM7rx&LUMZo(mugr@dh3Vy}c5U-6uAJUG&#_j( z_N4-4Jahm>FNK~ZYVbNs-lrjqLK2Fsk}N2*S{WL&n5hjn+Ax28T*A&)5BZ_jB9v9} zY$%k>V$owR8V)b8Livr=n?dXan$`raiN1;Og=+1C>2RGu1wCvGCUw@sS2WXfLi$8I z35DbF`QhyP@o_zZ8dy+zFkd+Z1N$>EVw4?~G14gn(2P~?o_4yLx!X1<H z6Fk@RDf*)l&F{SWBF4y2;3>q8;OO3{!+s!N&nMGjk)1@?6dH&~8CAyXE!^JdQlW<7 zq)PqtdapQ0e2=+k*=U)dF?gN0vKJEyyUc9iSjOO6UBik1(bjo#(dEl*mlNp3f?eh zhJ(M9PJg$)J!Ib|e-g;g)Jm8&`}VLIZvs8|@~))`MX!t#E8DaWK?zkj3*w@Hr8X$0 z^*}C~151=m?ORDQ(vJ1`*M-alM;n4{%Ch+~kD^5*+O&Q=*IJ3zy@E57;gSWn@{a*9 z=F+N#STSRq%isIz3K`N~Z7iO;`UZ?{8JXh}mHJ{AXoRWfn-^@Vvz%0a$+3q`{D$A4 z5r|i&uA<&>_PM?p8^KEaQ1jyLj>M>-#lHEU=$IYU>c9bADGd`e(adZjE7ta{iPj!!@KMt6}d$@PW^$#FRpZ~L5(LE zgo7wTz4yMx_;L@^C%ucT*U+Hh*CF|m z28{=4KhIHI_6^Sw?(TBv1fLzT!dJg07GbXweWM?g+-=>m zYs5S?O}-2oZQ|;J{>u+12;(R*E#{&~*{H-6%(PRy zAWaw7*+=^;3aYf9(+u)ce6Q^I;aO(Y*mB=cKNKOalkstOyKRAbSGKGO$bEX&<>p8B zF4;?1__j119-i*(JdMvQa+xke6&oG*8B1~ZEV2a zs@f;AsHb~+27=g6y>>nd-a(4JT57?xJZR26n1d3uT9t&a8W2)k$6+l6#_W2%n2)Tr zSb9dfOa>t6Z~exk@E>P$T^5B;8o1P!vLEgT`Q-71!zf#O!9q?q}rw^zYD= z+|Zfvlae%SuoBzPYV1CyeEoKjJ=rx&{8jV#5Jm`NWfhZ~rWauge93?(Gb8qJ`a){N zcI8T9TBt-n`z6upkN8HS=DS2vs&?b*7xTBjUMaUHp>asOlOk_MhaAKEHf3x*P(mco z%v>Q8s5oZ}1{DZP(xa8MUtKu)G$F4*uj5HT?#=JmRWt_dSBqd$zM|2OHa2LQ!a?J* zG4bX*I&eBEEZbJK^tFi~fnF6S9g=x4>8zCRsP_`rizV%>SbT|3L?V5TkPK2fX1K`m zA!>>se8;jqW%N3kr35{M_GQ`BMR)fFBK@3q7S!Rz9%e=Rp8OE2*LRaJ`Q1Y5Xr&O; zP-m~FK#QA*`diGN&Vn4MB;%$9?x*RGc0#&@+1gy7d2g@2q*p=t9%kUSyC-$9_^%=~ zdX)Aq-Q=+?Z8E-EhfK>1bmv2sh?@Q=6+Gs(Cwi8W&rgK)!`I?J*MvSaNY!UGXJ0K^ z!Ow6>%m*=k$n0$QQ4`a)xecOKODJYMQ(`#}Q|ema!91f#KMtfxpnXgq4M^$KMw{MKNSJ2Nlz*UZr7TZZqYT+K1yWqigVwsT3~`T^&-}txvBwKF*Yne2D&J zJKUspG#2qQXB1iPyn6x}tFuATT8jepPC_>dzrA$4wey#Hlcu(cJcI7c8nK%xbQ5$WX7N~ zvIp5pRZ_VU>PB{0IpPP|Kx$+uD)a9I3X$&Ig(QTG1z6Mc^{?Y}&SCdYK(6whqPyv> zGK6d^9P^M7J=R<~Wp=Q#L6&t9jBS<^PTne%dp23NbHiMaCr6YHQBDd1u?j;%wS<_h zU(t;TBDqc%icOr2Qu-8JNKs5_<&9L=^oSHU_1I2Ko&TZLg|M_zh=W>~| z)CwxH>XP&M0#`rF#z6vcvK~wiJBW@{58o1QR~zc$)(98yGwpW2zg>(%|A48!5uigx z^d?_YHb>`E3^--Az(=)rFw1T})XuB>jc_5^>tmvf6V>TP z^U#Yk?lJ`Fmc*M6F9vdG%6nCt6JrlPcr1+8Z0OgxW1HqWe<03vbiLN=Mq3=PeJcr~ z3-4R*vbk+auT*BVD}srLXdF0;^vRP#FJd6?8Cib}{{99sF};`*%xRP819BI}%jrr_UTB z3^q2tp*6zX0bLGT!uV^;U&ml)6e!s+sbpfane!)F>4iAmI{j9<|`bG8Q3(!Br0X6?{-F1G_!$4w#K+gpM_{_n{ z)Xmb=ozcP0JVNP>6w*t)m%yh;GScEIz*!pvg7AR@_6i_H+KT6qf^b%m5(QNb6Z`^! zu$pDWMN~Z?4zgh5RV7~a-t|et^h-+yzT3zrAqniFRf^BXK#Qaxlh)ECkyR4u0!hbH zlZ1=HQDb-nDxIqy9L!IjJ+d8Ld3l++-*&_j3E;g^ zU&|J5=C*IgGlYbhqmp7C1%5*cau^fY=KGSZyk*-O`+xO=gI7Dyj*G*ebn15QZ_bwX z^86nQN^`v;SxpBprWJ&gZmsgaKRtSD*E^6x3Ai6-!(NWRm-FfTHBnj`iiEE+QKCT1 z(+5H=Ng>uNS7(^3HWGtoio|9jQmfR>U^N?(_J6p*4hadVY4N?gL=+I+gx%;YmPy*_ z2tm-d&*ZXyQ>OC%RIv9_xVxxIw?S0ro6X5BsCxFZX_4Q#(SjgZY&FWxuh!G!2lI8a-o3Gea@Id93RK?9q7i{) zmzq7vT{sO|eb5Ajq=|{V_gSj=Mg*=1j8v^KFyr2&F%mwU^b#ivc)L|8-d!G$H|P3Z z&cfxtqIx6GEg=dj<_r!~)09BSFWYHzK;mS*xAgef0hy~@ zqpAe*#Y?4-mzZR7_f&aMA{rl6Wj>+M=96D-4d?K=th7N~T9}K~gDjel7Ms#C*)2uG zkO{%gSBH!67BRAwOYbyPXl zY111}{D zdJwTKHiLF@PYk{kxny+y?o{~~!t&QY(5dp#IF(kW;Lxa%+0{vqiH19!k7<<)px-!^-58xBN+bIr@EyzUbS-d&9iGzoP%p~q`-+vV0AWBQ+;HLCPC&os-cG;0D;Cs-y|XFniN7fHqx z4yG}kK{@mKKRs~$NM{ME>V|qes9W}6yxvSRXy!b5C1MC+5=_AF@jQ@vJHk?nEUjH_ za(Cyy#3ImNuh~bWPn~U#94(@NRwbh_>9%qPbNINXd*Qo&)h+vF2@pHtE;B>moc#2p zlN{Unk%ddk&*eZ9aU5{biXbz3zm;VVCxp8~y6OQ8NpZuRFg~>-74%a)i zK)Qr=5@B-nb&>i&&FKF9o9(=9rNF5k_hsK+76MnvSb~0(YT#CzZ>4kjc`o*6ll-0@ z+%vfy$xMf{XJy6!d%?qQC=v9UMihfmrZx(m*LJRU@{f~Bq%q~8H3thhZ*C#n|4{t^c_{QE7O>rdbLEqi%&wdHUZYFYu7y#6+ zzkpmb#&EA2e#a2sKY6!XX2&BL1mj%=!>g%6`jc&x6cX{$35t-u40R882NeRwyCDEM zRWxWV>E?(bMco>I#qP<&v)jce-VDSU3Wiz`W%eG z`x2A3Yblzcz&zJ8^av`eLRwg>)raRPJL1Pk+j90p>nvbpj_oJ>>hK#{;)RX3p_ESW zS)GoS{GWUkiTN;QRBkWl?R|fI70X+QMdbZr+>7iqucg2J7!;)0YjJ)tS@yPB;pi5L zNm2w4$L+(}M*q5eYm0GOvH#O!b6Pl|`~6bP0WC;Mvy-Q}dOoO2F1P^^m({_KWPApa z%a?9^RSDdFMLB+%$87M}jdD|cHooM2Tn5}=(Ba^eZzC?lRX9aX|+XQdF(XjlZ zL=+a<<#l{hm@1S_TL*bU?7IV|;-^$PjaaEyoVtLi5FbosFm{-!WiV)Mo_=wTfC7<= zSMR?=E1nk5=CY&IaUTd-Ma*u2x=eg32>B%=`;Gh&X^4)SlNF8RTr$e8Z-*$5#WwOE9e5p5x(n)0Qo9&=hS)VGT?#_x)!3yb6 z7T1WJmczl(LPHYDNj{{AF*GthXEc`^OC3oDnkNaIXCGlZwQB?qqX49L?2J~N0=y+_ zS9C1oD4@PZD8h#?#%l^``&f4uo49%9WNH8EgfT!A{7{q!i5bwX5 zYN6RgegV?oMyEpygPMRF6->>M?h$cpb0m-#jg`|9esJCUdD6oeYpgRVOn%q^otny^ z!>R;we32Vw6dhP_6iUqBZ^~xGDoTs%R;X7PBlof0HGrm8T1J>#xDkR?RT(6BObXi( zB2{E4vBnwoKA6Cx#u`P2w~t9=H;Atne03s)#7;??MiPFBMi$SvZHIa?j|p-$o%*Qe z6OJ!TATI6j6dNG_TBEwdafNx7M^SPqTSt8@fb;-F4%PjY&?CCwDAiv@6qx{a6?IUx zSdk=^+>;7GV#Oe1;sXLR2zl%SZfv>ZvOa2kp)~hj`$Bhp8yhHtQBZ8y9=LyyjtYga zMvV?$*^~}#PefcT1&dkE_idL)r;H`HK$`gx@ytGoyq4#??$+NY^?x*pFJgF2Qk0yTUYO{<3Rs!WFz1f6Jux(y|Ohk}@kJSyEMvW7J02+xznX-j5u zz21y~Qcp!OWs$7;^b-O_B$n;vXFuk*uy2{06Rx7uVNp^BYK(h5I8LtD&EU5o|+*CHb>b4s|pAUOoFc1Y@nRsNLHfGCXiR*@OUs1>y- zDHOw*@)tY{j^xkr0jW11w2*4?WVQN)2Yn_hV6>6m)0^a*3R-_NI>z*t4yGegA^)dQVK5 zac^vmWoA_bs|yLe%g$&3U2sUq7_i?~BN1cPZ}v#0Rwk3p;dQNzS7s6kgl4y$WA|Gv z2-XJSRo&45jy&0rl*enu+MpDMI-%WR^?oO78 zG3b25DBm2)NJ6KS?{huf=qLY))Z+no$#cMXF{`!k-kffp#X4^eY!dcvk!X*~BvHO6 z67Z_tN;B}2DSeX@sr&@^mINbEbW8P)op&A^eQ242zPv5>r-SFa*aXXmZ+=t#rP-w1u=uZuUGo^}Yh%o#8gTLp0Wa$hxB!^1ZHEA5LLomN?OF@8 zXE!SnlTI>)R;@5j@HV{K5R`^(;FIv|?B=o5NvMgBhL^T@Uv2HJ_y(ZH5evPE!Q&`2 z`;mDfK3lHAMEkY`@nE50!rFW|o98~Bc^--gOvoGDk4YkzLc8g?hi~630w5{t)&^d` zUi-P{yYJ7mqXO-U;If&SzyXyCfT^vaGIk27>tNxuTiE$Z>;bw1&y(f#!nV}*#=w)+5VaqQ3zCK7a4Gm|$LK&Ar=JyC&F5X_9t#tSLNT3iFUa>68k`Z4 zm5vRM4Wlq!+e_oz+rgIhM>*ioUFa}J3uji zTrC664jurH2_?6Mt}W~3T_W+Lc|^m*F2jT&;;!YuD0vWs3N=G^8HX zLufTBhrR(Y%qeyIMg&eoL9`OK<}s4nT31AH!V5x-cjfAz@Vo_^iLXA}E%L@*!NEJw z4pHGiq&H`A*$a+=^KkH2cN;>LYopQIBGtpg_=2o{-QyDx(8pm6%OuCQgnd;!pxP ztiPm$2k*;P93#CLNCkJIJQg38oBW|1zO=h{uG}wgVUIe!@QtV&pW#h6NDmVJIi#nZ zUD#YH={DcCD95}6V#;jWjlP8a#q=S$Wa{=eI3EJmy@jEAj#oS3zpyvMu;9gXsjgrG zs<3I5j?)B~hKbjtvnLMBED%m}wU%Pzr|WCpV0Pi}H(OcF#SMALEA56`67AICdys%r z@3t=nflGgQvQrOJ{64M$lJu7m4Vrme*!yYsyBlT^n4e)-=VBYL7Sx~)CSI}q_o3i3 zp>fA@dGocI007hm$w<5ruM{;5{0k~CvFebICQIzffChn{3oUS!lc}@4tCO**GZQPP zsfh_YHxLasVPP>g<6ven0duh$gIT#a!DgH+?EeNye-=Os2e3RqvIY8x!0DfnbP%+; zh=K?RR1=4AZv?PFK=2OITFxL4a_4h_=(Yb~0s=uZKEv&rQU|HCZ@^j@p?eU~_G|Cm z1p^cf*NiRJ@I5x^!nyNVEy|<^AgCI5AeAj03{hWnqrNhacC@>r`}r~H)8x|AEKTQ`VF>KVY{7^hZ9JPjYQJ$JG0*w^prI zg#>l1uNMuMXL%ji+u0SCE7$e5)Yqmj$P*C}rTWE>Y#UqGWX$4Ljb!zkod?{07;M#~ zkFA$d7o|g-oQQSdeK6e`T(~E&o}#i=p3k-L_R0P9iGhPA#m&u)ETM0IVZUpmYy5Ql zw#UnjtNbZNmZ0mp>w0!JL(m`v@3On7(0!<>u8wM)KJbhPpBRA=T0=vFtB#Y!xOW4h zU5J}I-ZDGHf6m|Cy_DAMTr>UofM|jJ?^mh@QP^r*Q{$d5F-#^4>SY2-5 zZ8JD|d>IriATh8tDySIIKHQkx7#mBl!eyR&YrN60fftF9zNs)XKR=(9nTdywucNKa z%gejruBl_N?qWg^*UN*J!e&@YwT^{_Eeurf`)g>y)ElY{lN0|bLY|3U~TK8VA+fXyX?~+eaNE{tmR$f9lz{x04N)XOKuk=PBy)>$RTmDaQ%pKOElt-U7Q+LZ{nHbn-4NAV-QU;ulQs;X zG4B=^^_-B{cBQ`3jlTV5eU7zzx6Q>2j%6X1!NX*I`-5m;lQoOv+X8R1lVe!q59>bX z*s|#{xgpQs3pF9vf>43@pgs|9f-NLN2aEW0XN1v_UuEYUUI?%vF*TM>F&PcIhnJV? zc~!Eu-t~=*17=@7!~H6H`$#i9f8aWi0~sK^Q#X2f`AweW?(pd7qF;N`6a_fMH4){j zyLJ_}I4wwsv!)wLSGi=*v@v5Zz8%-KpE1e+bH*`^J;a z)9ER;R%8z8{M1+iU{3xM19z+FrON@Br04Rl29Cpwn*(6^a2m66g4wxEO-wnB+1OaX z9GvVt+}vy?JpabPkpa!%{$b$e)2;7-fBugR9K^u0fs>Z|kvuX0p^OvuDc%W}-lVL8 zz7J_eliF=S)J;}BH5ws4C6TVW)JBtfR`!uTIpn(xT1ee6QwGo3aCGbVRfXA*=Mt53 zrm^>9uzxCUTM}qXVk6_(A;mZ)G2Hm2uHe)t=Q`(fs7*bTYb1#94b(a2U$s%cr zzy$toFdAf#3?%`waU$+lZKPNt$qc84Xk09Z2Hmq8f)ePg0)bx8U>BIB58Xym8DnPI zftz5Z+=%VOgJ74-rAhDFY9_jOJ%D!g!prfs$TF4>hfU}=jE{I$h%iAeyfNM!vo=_* zc${L(gsSjXqmYX#E&AAvFq}#9lm)x(DYp-;qa4+^K~Rz;Y5Q(>H$GUvcVDzW-TMi_ zFk8sp_&j>Gywror;vtIrq%L<2(=69+=)jxvQX}*Ss*8sSEAG%b+H39RS({*L<7A$k zH%a})ss0(AXPT!4HaGtco!BqEa)-_Yjm$sm(k&zxgYiJ zAr}U%bF~`i=gSaPT8S|CrbVppOlfj<+sovG*woF-$;w7XMV+0VZf$ShRDk*+Nmo}_ zsi>$>As`^^>ar3=VPIjiva)VgnED0=8e3X6p;(FqjFQ*phN` z6l6#fUw|gG4Gg5nJv^7@<{Ink^YIExO3d8cQqKnm2e-B;ElF`APjP6OnNjgRk{$scB zsx>pC84V@C%p9MZYQ~J?IIR;c{XlQOu&gy4*8JPl#bq#*tj@Fw3C3pAsjQKcOSON$s z8MNEpCGG53G&(glHU_sWj*kb{U0z+0laVpoXZ;8b8fZCRs$*ecp`)W4AWOa^H<#!z#+{Oi3gP9;V=OGNr)NeYH%&d<7`OJP)TItlW7e{=vNxqk zR?YF3_qfFN#!Rh@Z89lBWLBZDM<_#zspR0S6{HGDW z?5DXirhkq2!7!Yu>?hUff5$w)Q9YXn3$cTAa|=ub zj8LhV$QdvY{9mfM!jXv36pqh-j0hx)48$uU34ehI4Mw#Vm#Dx|nzW!73XIIBc9Mt@ z=_Zm0iex#wV!g9VU*z*XI$YWaienlBFBV>{a%OskEJNyos(z$h*) zRm|pArq*rs$?)fl24eRoWhQ;`q`)M`5ecm2L7^$J{Iq|#y}$r(1B?N7)@Xpfa8{O+ zoSfXzA&PfH5e}}f25=Q_PaHsYEn74|962qE1>8AOPm5h#|41Rfdv1Vk^2VYRAR91f z*X{slfxbS`CnV#MT!F<#S8D*T`D!&~VQxNCZKRmXU+|U7hq~4MNFShb@T7(Bp(1+1)w%C6X)`}Mhb@3SWZx$k^aQ#34%rG;k2Eu%(+o|VIL$oc3ceDithmE z7tIjh1xLu|M(=W*&PP@-95ze@(2LiUl;9X1 z^|s26jI^w*yR&UYUVKRznSOw!!v#QH0A@KyL-LgbPp+*7T4ZNml%kv41|NW8q(vty zv|ioyut2n#EdvA$-vu6r70@n>FMTz%hjHv{kLzPnUl(ze=&weI@NV+g$!|;KZ;n@? z2nz$wz+;6H=e5FtF~mZ-Q2hYZx0Bzgb^?G7z-|&p4C^z{duPKMmtQK{cSbujQ5u)&l%C*bw1Y{`@rza@ZHL;t$^EFrQVD?AIyKR4 zL|kLq0KScdl~mO=fF_(LF(7~Roh3z#cdm^>+Sis$Ci$`Z^V47e>N9;Qhp+`~Lvss1 zR-yGJfn3UoL}Xg7X{N8Q&rlp5T}(h}lwy21R-eU+;vslv?rV9`2fYTT5Vx9>-6=Xi zko(=$(MSMli`PXVAZV>XENooy(M2lldc7BAt~+{8+mNgL4*x~4q}zGqiSsY2sP}l& z3`)$SAl6D$X>hOd>BXML9L)~qx^PJnDu5ezNNx#J!p96eBQR{0s51+|eXk3j?$5G4 zUsaA?gE-?u02hEy6f*$Dfz&aL6N7YsaUPj);euXhzuanJ&J&+(Oay?42_mLXWmvCk z2iZRtY496$K;QPWJGh*?A1%GtvsuX<3`aj}?F&Gy*Bt}y?gSu-{h|^FAhqfn?s%Jp z`UJNcM*!)SOkU~!c!fu>4iFvQmj&wA++IKp**zL9yQeB1aJx2 z+52KAfC>0T)xPDt(2q>WD?X9GQ12L2Ls9>Mw>6ZI-(xgv4Vy{dkn|Vr+kr8wRqpqe zO6ch5IC6pbM6tBU8z^ugqU>LbG@{SmKJh_)6yCIr`9V}u3G z79Z{=&ofGuC_yZ4%272=`=xAS88M?4y+X*2}r zQ0Zv*j}KX79pS~-02!p@X{p5a;^2wB z@IoBIkGOEanousWM8U|2oU>T(xL$omLI@uOgNG2uCjta3jxUu_Nzs^~ZK1pf4=NSp z;*N%yVTbV`l@7^}9%dkKejIvfkN5xD8 zv)#cSwewRB2M(e4Orwx&&V^(2+LUvU!|YSy^}N14^VG z-VotdMT%Hj(ws&o&G0y`iOb5qtfZ|+``C@ohpFfg&7@fkLPGs?U`R@)y6oUX%_$Pp zQMMpbY0%`xAS9G$>|Xr|cbcsg6RKInl?et4zo@=G9qj>Cyary@m3eXWIu9F#2q6+Nr z4T>)UsnvJSA3na~UFv$V$h)Niu6-F18*WdoBpHUbv>%guWZ= zfim;^$vTv~JmJ${-bVWj()nv~zK$>De+VExl@)$NOO|zy54^D%eR%t^+fT>V`aP}M zM59+{Ns(Qt>T(rZ9d{BvVpAiu+@Z-U#4P=;@PLi22mbdskwxC6YkTWoEH?aPnBGAr zdO6l+lb4o0>Ghu?{e{0izh(T-RAt~rV~~r5t1Z~h$kOIFS@}O>K>sEy|0XN{CM*9Y zEB_`d|0XN{CM*9YEB_`d|0XN{-=_NgW^Dhat^elk|9*kt|G%$W{3a{^CM*9YEB_`d z|0XN{CM*AcnXC)}@b>=mJfF`Ih`)|MvwkYc{iD{O(TKmN@_eoV1SWvvnVez!ABjEx zUhD5E>z=RwN38;YzWi?!*!^9^-?NbYB?1kgeEdJ2lkD%!|2_T7U(I8q{MG#bUNV@! z%l>=HmcL|w2W03RMNlKofgz`x7=JCW!wx!+j-S?+&D zEBaIJpAXL8!+6hf|M3XK19YRm`uo2K>isG5x$58N`Z?hB*U`ZLxA2#e+>7U|JRl_C N=K)|)Zv8=}`XAl-kfQ(q literal 0 HcmV?d00001 diff --git a/plugins/community/repos/squinkylabs-plug1/gfx/booty-panel-design.xd b/plugins/community/repos/squinkylabs-plug1/gfx/booty-panel-design.xd new file mode 100644 index 0000000000000000000000000000000000000000..80da6266be2cd59c04b08efe37a9fe7a0b445ee4 GIT binary patch literal 46513 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

jyW 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 TW@Q6O^8(>t;G*t%8$mn(ffR)O literal 0 HcmV?d00001 diff --git a/plugins/community/repos/squinkylabs-plug1/gfx/chopper-panel-design.xd b/plugins/community/repos/squinkylabs-plug1/gfx/chopper-panel-design.xd new file mode 100644 index 0000000000000000000000000000000000000000..f27a2e25cee10d183ee2cd26ff6120da55ac5e50 GIT binary patch literal 17208 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 ND;qG=2&wC*{{`1STbTd= literal 0 HcmV?d00001 diff --git a/plugins/community/repos/squinkylabs-plug1/gfx/formants_panel.xd b/plugins/community/repos/squinkylabs-plug1/gfx/formants_panel.xd new file mode 100644 index 0000000000000000000000000000000000000000..53c45a4f47de13968d3ebdecb846a31237e71c1f GIT binary patch literal 34101 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 literal 0 HcmV?d00001 diff --git a/plugins/community/repos/squinkylabs-plug1/gfx/noun_938401.svg b/plugins/community/repos/squinkylabs-plug1/gfx/noun_938401.svg new file mode 100644 index 00000000..8e711ed4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/gfx/noun_938401.svg @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/gfx/vocal-anim-panel.xd b/plugins/community/repos/squinkylabs-plug1/gfx/vocal-anim-panel.xd new file mode 100644 index 0000000000000000000000000000000000000000..ddd12e99d7fc7e2ad1f210dbe081c62576da96ba GIT binary patch literal 89458 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�W`$EF#N?CCF=k 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

o_ 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 literal 0 HcmV?d00001 diff --git a/plugins/community/repos/squinkylabs-plug1/make.objects b/plugins/community/repos/squinkylabs-plug1/make.objects new file mode 100644 index 00000000..38a9a264 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/make.objects @@ -0,0 +1,24 @@ +ALL_OBJ= \ + dsp/fft/FFT.o \ + dsp/fft/FFTCrossFader.o \ + dsp/fft/FFTData.o \ + dsp/filters/ButterworthFilterDesigner.o \ + dsp/filters/FormantTables2.o \ + dsp/filters/HilbertFilterDesigner.o \ + dsp/third-party/falco/DspFilter.o \ + dsp/utils/AudioMath.o \ + dsp/utils/ObjectCache.o \ + sqsrc/clock/ClockMult.o \ + sqsrc/thread/ThreadClient.o \ + sqsrc/thread/ThreadServer.o \ + sqsrc/thread/ThreadSharedState.o \ + src/BootyModule.o \ + src/CPU_Hog.o \ + src/ColoredNoiseModule.o \ + src/Squinky.o \ + src/ThreadBoost.o \ + src/TremoloModule.o \ + src/VocalFilterModule.o \ + src/VocalModule.o + +# pboost/pboost.o diff --git a/plugins/community/repos/squinkylabs-plug1/makefile.msvc b/plugins/community/repos/squinkylabs-plug1/makefile.msvc new file mode 100644 index 00000000..64283b1e --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/makefile.msvc @@ -0,0 +1,9 @@ +SLUG=squinkylabs-plug1 + +include ../../../../dep/yac/install_msvc.mk + +EXTRAFLAGS += -Icomposites/ -Idsp/utils/ -Idsp/third-party/kiss_fft130/ -Idsp/third-party/kiss_fft130/tools/ -Isqsrc/util/ -Isqsrc/thread/ -Idsp/third-party/falco/ -Idsp/generators/ -Idsp/filters/ -Idsp/fft/ -Isqsrc/clock/ + +include make.objects + +include ../../../build_plugin.mk diff --git a/plugins/community/repos/squinkylabs-plug1/pboost/Makefile b/plugins/community/repos/squinkylabs-plug1/pboost/Makefile new file mode 100644 index 00000000..db28bc01 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/pboost/Makefile @@ -0,0 +1,9 @@ + +LDFLAGS += -static -lws2_32 -lPsapi + +pboost.exe : build/pboost.obj + $(CXX) -o $@ $^ $(LDFLAGS) + +build/pboost.obj : pboost.cpp + mkdir build -p + $(CC) $(CFLAGS) -c -o $@ $< diff --git a/plugins/community/repos/squinkylabs-plug1/pboost/pboost.cpp b/plugins/community/repos/squinkylabs-plug1/pboost/pboost.cpp new file mode 100644 index 00000000..838dda00 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/pboost/pboost.cpp @@ -0,0 +1,260 @@ +/** + * This is an unfinished experiment. + * It's a windows only command line program that + * find the Rack process in memory, and sets its + * priority class to realtime. + */ + +#include +#include +#include +#include + +class ProcessNameAndHandle +{ +public: + std::string name; + HANDLE handle = INVALID_HANDLE_VALUE; +}; + +ProcessNameAndHandle getProcessNameAndHandle(DWORD pid); +bool setRealtimePriority(HANDLE pHandle); +bool enablePrivilege(HANDLE hProcess, const char * privilege); +std::string GetLastErrorAsString(); + +int main(int argc, char** argv) +{ + + HANDLE realHandle = GetCurrentProcess(); + bool b = enablePrivilege(realHandle, SE_DEBUG_NAME); + printf("try set debug on us: %d\n", b); + if (!b) { + // TODO: we should re-run here + printf("can't get debug right from system. Try running as admin\n"); + fflush(stdout); + + // Spawn a copy of ourselves, via ShellExecuteEx(). + // The "runas" verb is important because that's what + // internally triggers Windows to open up a UAC prompt. + // HANDLE child = ShellExecuteEx(argc, argv, "runas"); + SHELLEXECUTEINFO sinfo; + memset(&sinfo, 0, sizeof(SHELLEXECUTEINFO)); + sinfo.cbSize = sizeof(SHELLEXECUTEINFO); + sinfo.fMask = SEE_MASK_FLAG_DDEWAIT | + SEE_MASK_NOCLOSEPROCESS; + sinfo.hwnd = NULL; + sinfo.lpFile = argv[0]; + sinfo.lpParameters = ""; + sinfo.lpVerb = "runas"; // <<-- this is what makes a UAC prompt show up + sinfo.nShow = SW_SHOWMAXIMIZED; + + // The only way to get a UAC prompt to show up + // is by calling ShellExecuteEx() with the correct + // SHELLEXECUTEINFO struct. Non privlidged applications + // cannot open/start a UAC prompt by simply spawning + // a process that has the correct XML manifest. + BOOL result = ShellExecuteEx(&sinfo); + if (!result) { + printf("re-exec as admin failed\n"); + return -1; + } + + // HINSTANCE appInstance = sinfo.hInstApp; + + + printf("exec worked. hp=%x\n", sinfo.hProcess); + fflush(stdout); + // User accepted UAC prompt (gave permission). + // The unprivileged parent should wait for + // the privileged child to finish. + WaitForSingleObject(sinfo.hProcess, INFINITE); + printf("orig proc finished waiting\n"); + + DWORD exitCode=666; + GetExitCodeProcess(sinfo.hProcess, &exitCode); + printf("EXIT CODE %d\n", exitCode); + CloseHandle(sinfo.hProcess); + } + + // here were able to set debug + DWORD aProcesses[1024], cbNeeded, cProcesses; + unsigned int i; + + if (!EnumProcesses(aProcesses, sizeof(aProcesses), &cbNeeded)) { + printf("enum proc failed\n"); + return 1; + } + + + // Calculate how many process identifiers were returned. + cProcesses = cbNeeded / sizeof(DWORD); + + // find the pid for Rack. + HANDLE rackProcessHandle = INVALID_HANDLE_VALUE; + std::string rackName("Rack.exe"); + for (i = 0; i < cProcesses; i++) { + if (aProcesses[i] != 0) { + //PrintProcessNameAndID( aProcesses[i] ); + ProcessNameAndHandle proc = getProcessNameAndHandle(aProcesses[i]); + if (proc.name == rackName) { + rackProcessHandle = proc.handle; + } else { + CloseHandle(proc.handle); + } + } + } + + printf("rack pid = %d\n", rackProcessHandle); + if (rackProcessHandle == INVALID_HANDLE_VALUE) { + printf("could not find rack process\n"); + return -1; + } + + bool bSet = setRealtimePriority(rackProcessHandle); + CloseHandle(rackProcessHandle); +} + + + +/** + * + */ +ProcessNameAndHandle getProcessNameAndHandle(DWORD processID) +{ + TCHAR szProcessName[MAX_PATH] = TEXT(""); + + // Get a handle to the process. + HANDLE hProcess = OpenProcess(PROCESS_SET_INFORMATION | PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, + FALSE, processID); + + // Get the process name + if (NULL != hProcess) { + HMODULE hMod; + DWORD cbNeeded; + + if (EnumProcessModules(hProcess, &hMod, sizeof(hMod), + &cbNeeded)) { + GetModuleBaseName(hProcess, hMod, szProcessName, + sizeof(szProcessName) / sizeof(TCHAR)); + } else printf("could not enum proc\n"); + } else { + return {}; + } + + // Release the handle to the process. + // CloseHandle(hProcess); + return {szProcessName, hProcess}; +} + +#if 0 +// Returns the last Win32 error, in string format. Returns an empty string if there is no error.//Returns +std::string GetLastErrorAsString() +{ + //Get the error message, if any. + DWORD errorMessageID = ::GetLastError(); + if (errorMessageID == 0) + return std::string(); //No error message has been recorded + + LPSTR messageBuffer = nullptr; + size_t size = FormatMessageA(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, + NULL, errorMessageID, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPSTR) &messageBuffer, 0, NULL); + + std::string message(messageBuffer, size); + + //Free the buffer. + LocalFree(messageBuffer); + + return message; +} +#endif + +bool setClassRealtime(HANDLE h) +{ + auto x = GetPriorityClass(h); + auto b = SetPriorityClass(h, REALTIME_PRIORITY_CLASS); + auto c = GetPriorityClass(h); + +#if 0 + printf("setrealtime(%d) %d, %d, %d\n", REALTIME_PRIORITY_CLASS, x, b, c); + if (!b) { + printf("SetP call failed with %d (%s)\n", GetLastError(), GetLastErrorAsString().c_str()); + } + #endif + + return c == REALTIME_PRIORITY_CLASS; +} + + +bool enablePrivilege(HANDLE hProcess, const char * privilege) +{ + printf("called ep with %s\n", privilege); + struct + { + DWORD Count; + LUID_AND_ATTRIBUTES Privilege[1]; + } Info; + + HANDLE Token; + BOOL Result; + + // Open the token. + + Result = OpenProcessToken(hProcess, + TOKEN_ADJUST_PRIVILEGES, + &Token); + + if (Result != TRUE) { + printf("ep Cannot open process token.\n"); + return FALSE; + } + + + Info.Count = 1; + Info.Privilege[0].Attributes = SE_PRIVILEGE_ENABLED; + + + // Get the LUID. + Result = LookupPrivilegeValue(NULL, + privilege, + &(Info.Privilege[0].Luid)); + + if (Result != TRUE) { + printf("ep Cannot get privilege for %s.\n", privilege); + return FALSE; + } + + // Adjust the privilege. + Result = AdjustTokenPrivileges(Token, FALSE, + (PTOKEN_PRIVILEGES) &Info, + 0, NULL, NULL); + + CloseHandle(Token); + + // Check the result. + + if (Result != TRUE) { + printf("ep Cannot adjust token privileges (%u)\n", GetLastError()); + return FALSE; + } else { + if (GetLastError() != ERROR_SUCCESS) { + // printf("getlasterror = %d, %s\n", GetLastError(), GetLastErrorAsString().c_str()); + printf("Cannot enable the %s privilege; ", privilege + ); + printf("please check the local policy.\n"); + return FALSE; + } + } + + return TRUE; +} + +/** + * + */ +bool setRealtimePriority(HANDLE hRackProcess) +{ + auto set = setClassRealtime(hRackProcess); + printf("set pri class at start ret %d\n", set); + return set; +} + diff --git a/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.sln b/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.sln new file mode 100644 index 00000000..f83ebbf3 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.27130.2024 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Squinky", "Squinky.vcxproj", "{5DAF445F-56A2-5B5C-EB47-1D24590CF72A}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Debug|Win32.ActiveCfg = Debug|Win32 + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Debug|Win32.Build.0 = Debug|Win32 + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Debug|x64.ActiveCfg = Debug|x64 + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Debug|x64.Build.0 = Debug|x64 + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Release|Win32.ActiveCfg = Release|Win32 + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Release|Win32.Build.0 = Release|Win32 + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Release|x64.ActiveCfg = Release|x64 + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {26DE0C55-7FEF-4C87-892A-C36583FB4783} + EndGlobalSection +EndGlobal diff --git a/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj b/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj new file mode 100644 index 00000000..6c369054 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj @@ -0,0 +1,226 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Win32Proj + {5DAF445F-56A2-5B5C-EB47-1D24590CF72A} + 10.0.16299.0 + + + + Application + true + v141 + + + Application + true + v141 + + + Application + false + v141 + + + Application + false + v141 + + + + + + + + + + + + + + + + + + + true + + + true + + + true + + + true + + + + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Level3 + ProgramDatabase + Disabled + ..\..\dsp\third-party\falco;..\..\dsp\utils;..\..\dsp\generators;..\..\dsp\filters;%(AdditionalIncludeDirectories) + stdcpp14 + + + MachineX86 + true + Console + + + + + WIN32;ARCH_WIN;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDebugDLL + Level3 + ProgramDatabase + Disabled + ..\..\dsp\fft;..\..\dsp\generators;..\..\dsp\filters;..\..\dsp\third-party\falco;..\..\composites;..\..\sqsrc\clock;..\..\sqsrc\util;..\..\sqsrc\thread;..\..\dsp\utils;..\..\dsp\third-party\kiss_fft130;..\..\dsp\third-party\kiss_fft130\tools;%(AdditionalIncludeDirectories) + stdcpp14 + + + true + Console + winmm.lib;%(AdditionalDependencies) + + + + + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDLL + Level3 + ProgramDatabase + + + MachineX86 + true + Console + true + true + + + + + WIN32;ARCH_WIN;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + MultiThreadedDLL + Level3 + ProgramDatabase + ..\..\dsp\fft;..\..\dsp\generators;..\..\dsp\filters;..\..\dsp\third-party\falco;..\..\composites;..\..\sqsrc\clock;..\..\sqsrc\util;..\..\sqsrc\thread;..\..\dsp\utils;..\..\dsp\third-party\kiss_fft130;..\..\dsp\third-party\kiss_fft130\tools;%(AdditionalIncludeDirectories) + + + true + Console + true + true + winmm.lib;%(AdditionalDependencies) + + + + + + \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj.filters b/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj.filters new file mode 100644 index 00000000..b646a4d4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/projects/vs_windows/Squinky.vcxproj.filters @@ -0,0 +1,336 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav + + + {f5dea203-4bd6-45b8-ac87-b6b9a4877380} + + + {6cd4392e-16ed-4f15-9196-dbe57a9f5472} + + + {4ff35a32-d2ce-4426-aaad-d9ef70138cf4} + + + {f5a31e57-cc6b-443c-abf4-46970f118fe1} + + + {c2b8cfc5-30d0-4c94-9424-75409757ee7e} + + + {0ab36cfd-9f38-416a-b356-59180724dbf6} + + + {095df52d-c60a-44cb-9e6f-ff148b9f2730} + + + {95f83ea1-2663-4fa7-86e2-5bb532d82198} + + + {c53ee123-95ef-4304-8445-69048886956b} + + + {4f96103b-8d78-4aec-b054-b4f72c382195} + + + {20dd77d1-e20f-4a4f-8086-472afb19d4e2} + + + {d358068d-664e-470d-93b2-2bb5db2b41e8} + + + {6f955dd1-2a2c-4506-bfc2-4bb55734eb72} + + + {69f82fd1-904a-40e1-8a26-c2cd63f1e979} + + + {dde575bc-41ce-4770-9fd3-411c945a262b} + + + {09a864b6-3479-4e18-b9de-499c30b220a4} + + + {53848339-2c75-4ddc-8933-607d2353adee} + + + {80fd0025-498b-4fd2-98ac-cdae460339fc} + + + {ea30d980-17c6-4bf8-91a7-847e331330c9} + + + {19f721d6-97d9-4952-a547-52e6e418fbf4} + + + {98bc8bb8-3835-46b9-be11-d534f001cac5} + + + {d88fef08-3b09-4979-98d0-41863e55201d} + + + {2919976b-3c5e-48c7-9bc1-70b34d905594} + + + {6c381890-e472-4d98-a18a-8c768ec7a670} + + + + + Source Files\dsp\third-party + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\dsp\filters + + + Source Files\dsp\utils + + + Source Files\test + + + Source Files\dsp\filters + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\dsp\filters + + + Source Files\dsp\utils + + + Source Files\test + + + Source Files\test + + + Source Files\dsp\fft + + + Source Files\dsp\third-party\kiss_fft + + + Source Files\dsp\third-party\kiss_fft + + + Source Files\sqsrc\thread + + + Source Files\sqsrc\thread + + + Source Files\sqsrc\thread + + + Source Files\test + + + Source Files\dsp\fft + + + Source Files\test + + + Source Files\test + + + Source Files\test + + + Source Files\dsp\fft + + + Source Files\test + + + Source Files\test + + + Source Files\sqsrc\clock + + + Source Files\test + + + Source Files\test + + + + + Header Files\dsp\third-party\falco + + + Header Files\dsp\filters + + + Header Files\dsp\filters + + + Header Files\dsp\filters + + + Header Files\dsp\filters + + + Header Files\dsp\generators + + + Header Files\dsp\generators + + + Header Files\dsp\utils + + + Header Files\dsp\utils + + + Header Files\dsp\filters + + + Header Files\test + + + Header Files\composites + + + Header Files\composites + + + Header Files\composites + + + Header Files\test + + + Header Files\test + + + Header Files\dsp\filters + + + Header Files\test + + + Header Files\dsp\generators + + + Header Files\composites + + + Header Files\composites + + + Header Files\dsp\filters + + + Header Files\test + + + Header Files\test + + + Header Files\dsp\utils + + + Header Files\dsp\utils + + + Header Files\dsp\fft + + + Header Files\dsp\fft + + + Header Files\dsp\third-party\kiss_fft + + + Header Files\dsp\third-party\kiss_fft + + + Header Files\sqsrc\thread + + + Header Files\sqsrc\thread + + + Header Files\sqsrc\thread + + + Header Files\sqsrc\util + + + Header Files\sqsrc\util + + + Header Files\composites + + + Header Files\dsp\fft + + + Header Files\sqsrc\clock + + + Header Files\dsp\utils + + + Header Files\composites + + + Header Files\sqsrc\util + + + Header Files\sqsrc\util + + + Header Files\sqsrc\util + + + Header Files\sqsrc\thread + + + \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/res/blank_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/blank_panel.svg new file mode 100644 index 00000000..4e30c038 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/blank_panel.svg @@ -0,0 +1,17 @@ + + + + + + + panel-6b-flat + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/res/booty_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/booty_panel.svg new file mode 100644 index 00000000..1e0183d6 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/booty_panel.svg @@ -0,0 +1,102 @@ + + + + + + + panel-6b-flat + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/res/colors_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/colors_panel.svg new file mode 100644 index 00000000..1c4a661f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/colors_panel.svg @@ -0,0 +1,45 @@ + + + + + + + colors-panel-2-ai + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/res/cpu_hog_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/cpu_hog_panel.svg new file mode 100644 index 00000000..f2e31cda --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/cpu_hog_panel.svg @@ -0,0 +1,40 @@ + + + + + + + cpu_hog_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/res/formants_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/formants_panel.svg new file mode 100644 index 00000000..de591576 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/formants_panel.svg @@ -0,0 +1,44 @@ + + + + + + + formants_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/res/thread_booster_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/thread_booster_panel.svg new file mode 100644 index 00000000..c73c52ef --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/thread_booster_panel.svg @@ -0,0 +1,47 @@ + + + + + + + thread_booster_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/res/trem_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/trem_panel.svg new file mode 100644 index 00000000..eb70aaa7 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/trem_panel.svg @@ -0,0 +1,46 @@ + + + + + + + trem_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/res/vocal_animator_panel.svg b/plugins/community/repos/squinkylabs-plug1/res/vocal_animator_panel.svg new file mode 100644 index 00000000..a567e16f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/res/vocal_animator_panel.svg @@ -0,0 +1,88 @@ + + + + + + + vocal_animator_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.cpp b/plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.cpp new file mode 100644 index 00000000..82e8b695 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.cpp @@ -0,0 +1,101 @@ + +#include +#include "ClockMult.h" +#include + + +void ClockMult::sampleClock() +{ + if (isFreeRun()) { + sampleClockFreeRunMode(); + } else { + sampleClockLockedMode(); + } +} + +void ClockMult::sampleClockFreeRunMode() +{ + sawPhase += freeRunFreq; + if (sawPhase >= 1) { + sawPhase -= 1; + // TODO: do we care about clock out? probably... + } +} + + +void ClockMult::sampleClockLockedMode() +{ + // printf("sampleClock: state=%d saw=%f\n", state, sawPhase); + switch (state) { + case State::INIT: + break; + case State::TRAINING: + ++trainingCounter; + break; + case State::RUNNING: + ++trainingCounter; // we are still training, even while running + sawPhase += learnedFrequency; + if (sawPhase >= 1) { + sawPhase -= 1.f; + } + if (clockOutTimer > 0) { + clockOutTimer--; + } else { + clockOutValue = false; + // printf("clock out one-shot timed out, going low\n"); + } + + break; + + default: + assert(false); + } + // printf("leave sampleClock: state=%d saw=%f\n", state, sawPhase); +} + +/** +* Sends one reference tick to the multiplier +*/ +void ClockMult::refClock() +{ + if (isFreeRun()) { + return; + } + // printf("refClock: state=%d\n", state); + switch (state) { + case State::INIT:// + state = State::TRAINING; + trainingCounter = 0; + // printf("refClock moved from INIT to TRAINIG\n"); + break; + case State::TRAINING: + case State::RUNNING: + // printf("got end train with ctr = %d\n", trainingCounter); + learnedPeriod = trainingCounter; + trainingCounter = 0; + learnedFrequency = (float) freqMultFactor / learnedPeriod; + state = State::RUNNING; + + startNewClock(); + // printf("refClock moved from TRAINING to RUNNING. period = %d freq=%f clockOut=%d\n", learnedPeriod, learnedFrequency, clockOutValue); + break; + + default: + assert(0); + + } + //printf("leave refClock: state=%d\n", state); +} + +void ClockMult::startNewClock() +{ + sawPhase = 0; + clockOutValue = true; + clockOutTimer = 10; // TODO: constants +} + + +void ClockMult::setMultiplier(int x) +{ + freqMultFactor = x; +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.h new file mode 100644 index 00000000..931e1f39 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/clock/ClockMult.h @@ -0,0 +1,78 @@ +#pragma once + + +class ClockMult +{ +public: + /** + * Clocks the multiplier by one sample. + * Returns 0 or more high speed clocks. + */ + void sampleClock(); + + /** + * Sends one reference tick to the multiplier. This is + * the "input" to the multiplier. + */ + void refClock(); + + /** + * 0..1 saw at the same rate as multiplier output. + */ + float getSaw() const + { + return sawPhase; + } + + /** + * The binary pulse output of the clock multiplier + * (note: doesn't work yet) + */ + bool getMultipliedClock() const + { + return clockOutValue; + } + + /** + * @param x >= 1 is the multiplier factor + * x == 0 : free run + */ + void setMultiplier(int x); + + float _getFreq() const + { + return learnedFrequency; + } + + void setFreeRunFreq(float f) + { + freeRunFreq = f; + } +private: + enum class State + { + INIT, + TRAINING, + RUNNING + }; + int trainingCounter = 12345; + int learnedPeriod = 999; + float learnedFrequency = 0; + int freqMultFactor = 0; // if 0, free run, else mult by n. + State state = State::INIT; + + bool clockOutValue = 0; + int clockOutTimer = 0; + + float sawPhase = 0; + float freeRunFreq = 0; + + void startNewClock(); + bool isFreeRun() const + { + return freqMultFactor == 0; + } + void sampleClockFreeRunMode(); + void sampleClockLockedMode(); + +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.cpp b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.cpp new file mode 100644 index 00000000..61c542ce --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.cpp @@ -0,0 +1,39 @@ + +#include "ThreadClient.h" +#include "ThreadServer.h" +#include "ThreadSharedState.h" + +#include + +ThreadClient::ThreadClient(std::shared_ptr state, + std::unique_ptr server) : sharedState(state), _server(std::move(server)) +{ + assert(!sharedState->serverRunning); + _server->start(); + while (!sharedState->serverRunning) { + } +} + +ThreadClient::~ThreadClient() +{ + sharedState->client_askServerToStop(); + sharedState->serverStopRequested.store(true); // ask server to stop + + while (sharedState->serverRunning) { + static bool did = false; + if (!did) { + did = true; + } + } +} + +ThreadMessage * ThreadClient::getMessage() +{ + return sharedState->client_pollMessage(); +} + + +bool ThreadClient::sendMessage(ThreadMessage * message) +{ + return sharedState->client_trySendMessage(message); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.h new file mode 100644 index 00000000..575cbd40 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadClient.h @@ -0,0 +1,43 @@ +#pragma once +#include + +class ThreadSharedState; +class ThreadServer; +class ThreadMessage; + +/** + * This class is meant to be used directly (not sub-classed) + * All APIs are non-blocking (polled), so that they may be called + * from an audio render thread without fear of priority inversion. + * See ThreadSharedState and ThreadSerever for more info. + */ +class ThreadClient +{ +public: + ThreadClient(std::shared_ptr state, std::unique_ptr server); + ~ThreadClient(); + + /** + * Poll to see if a message has come back from the server. + * Will return null if no message waiting. + */ + ThreadMessage * getMessage(); + + /** + * Try to send a message. + * Returns true if message sent. + * + * Message might not be sent for various reasons: + * - Mailbox still has previous message. + * - Unable to lock semaphore without blocking. + */ + bool sendMessage(ThreadMessage *); + + + + const ThreadClient& operator= (const ThreadClient&) = delete; + ThreadClient(const ThreadClient&) = delete; +private: + std::shared_ptr sharedState; + std::unique_ptr _server; +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadPriority.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadPriority.h new file mode 100644 index 00000000..77153b21 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadPriority.h @@ -0,0 +1,208 @@ +#pragma once + +#ifdef ARCH_WIN +#include +#endif + +#ifdef ARCH_LIN +#include +#include +#include +#include +#include +#include +#endif + +class ThreadPriority +{ +public: + /** + * Attempts to boost priority of current thread, but not all + * the way to a "realtime" priority. In genera, should not require + * admin rights. + */ + static bool boostNormal(); + + /** + * Attempts to boost priority of current thread all the way to + * a "realtime" priority. Will require admin rights + */ + static bool boostRealtime(); + + static void restore(); + +#ifdef ARCH_WIN + static bool boostRealtimeWindows(); +#endif +private: + + static bool boostNormalPthread(); + static bool boostRealtimePthread(); + static void restorePthread(); +#ifdef ARCH_LIN + static bool boostNormalLinux(); +#endif +}; + +#ifdef ARCH_WIN +inline bool ThreadPriority::boostRealtimeWindows() +{ + HANDLE h = GetCurrentProcess(); + auto x = GetPriorityClass(h); + printf("cur priority class = %lx, realtime=%x", x, REALTIME_PRIORITY_CLASS); + + SetPriorityClass(h, HIGH_PRIORITY_CLASS); + printf("set pri class to %x is now %lx\n", HIGH_PRIORITY_CLASS, GetPriorityClass(h)); + + bool b = SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL); + int y = GetThreadPriority(GetCurrentThread()); + printf("set pri ret %d, is now %d want %d err=%ld\n", + b, + y, + THREAD_PRIORITY_TIME_CRITICAL, GetLastError()); + fflush(stdout); + return y == THREAD_PRIORITY_TIME_CRITICAL; + +} +#endif + +// Inside Visual Studio test we don't try to link in PThreads, +// So they can't be used here. But they will work on all command line +// test builds, including Windows. +#if !defined(_MSC_VER) || defined(_VSCODE) +inline bool ThreadPriority::boostNormal() +{ +#ifdef ARCH_LIN + return boostNormalLinux(); +#else + return boostNormalPthread(); +#endif +} + +inline bool ThreadPriority::boostRealtime() +{ +#ifdef ARCH_WIN + return boostRealtimeWindows(); +#else + return boostRealtimePthread(); +#endif +} + +inline void ThreadPriority::restore() +{ + restorePthread(); +} + +inline void ThreadPriority::restorePthread() +{ + const pthread_t threadHandle = pthread_self(); + struct sched_param params; + params.sched_priority = 0; // Note that on mac, this is not the default. + // fix this. + const int newPolicy = SCHED_OTHER; + int x = pthread_setschedparam(threadHandle, newPolicy, ¶ms); + if (x != 0) { + printf("failed to set reset sched %d\n", x); + } +} + + +/** + * Linux doesn't support pthread priorities, so + * we use the common hack of setting niceness. + */ +#ifdef ARCH_LIN +inline bool ThreadPriority::boostNormalLinux() +{ + pid_t tid = syscall(SYS_gettid); + const int priority = -20; + int ret = setpriority(PRIO_PROCESS, tid, priority); + if (ret != 0) { + printf("set pri failed, errno = %d\n", errno); + printf("EACCESS=%d\n", EACCES); + } + printf("priority now %d\n", getpriority(PRIO_PROCESS, tid)); + return ret == 0; +} +#endif + +inline bool ThreadPriority::boostNormalPthread() +{ + struct sched_param params; + const pthread_t threadHandle = pthread_self(); + int initPolicy = -10; + pthread_getschedparam(threadHandle, &initPolicy, ¶ms); + printf("in boost, policy was %d, pri was %d otherp=%d\n", initPolicy, params.sched_priority, SCHED_OTHER); + + const int initPriority = params.sched_priority; + + const int newPolicy = SCHED_OTHER; + const int maxPriority = sched_get_priority_max(newPolicy); +#if 1 + { + printf("for OTHER, pri range = %d,%d\n", + sched_get_priority_min(newPolicy), + sched_get_priority_max(newPolicy)); + } +#endif + + if (maxPriority <= initPriority) { + // Linux seems to only offer one priority for SCHED_OTHER; + printf("SCHED_OTHER only supports priority %d\n", maxPriority); + return false; + } + + params.sched_priority = maxPriority; + int x = pthread_setschedparam(threadHandle, newPolicy, ¶ms); + if (x != 0) { + printf("failed to set pri %d for SCHED_OTHER. error= %d\n", maxPriority, x); + } + fflush(stdout); + return x == 0; +} + +inline bool ThreadPriority::boostRealtimePthread() +{ + struct sched_param params; + const pthread_t threadHandle = pthread_self(); + const int newPolicy = SCHED_RR; + const int maxPriority = sched_get_priority_max(newPolicy); + const int minPriority = sched_get_priority_min(newPolicy); + + +#if 0 + if ((maxPriority <= 0) || (minPriority < 0)) { + printf("algorithm doesn't work with rt %d, %d\n", minPriority, maxPriority); + return false; + } +#endif + + // use the mean of min and max. These should all be higher than "non realtime" + // on mac the mean was not as good as elevating as other, to let's try max/ + //const int newPriority = (maxPriority + minPriority) / 2; + const int newPriority = maxPriority; + + printf("realtime min = %d max = %d will use %d\n", minPriority, maxPriority, newPriority); + params.sched_priority = newPriority; + int x = pthread_setschedparam(threadHandle, newPolicy, ¶ms); + if (x != 0) { + printf("failed to set pri %d for SCHED_RR. error= %d\n", newPriority, x); + } + return x == 0; +} + +#else +inline bool ThreadPriority::boostNormal() +{ + return true; +} + +inline bool ThreadPriority::boostRealtime() +{ + return true; +} +inline void ThreadPriority::restore() +{ + +} +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.cpp b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.cpp new file mode 100644 index 00000000..0d9c15e7 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.cpp @@ -0,0 +1,60 @@ + +#include +#include "ThreadServer.h" +#include "ThreadSharedState.h" + +int ThreadServer::_count = 0; +ThreadServer::ThreadServer(std::shared_ptr state) : + sharedState(state) +{ + ++_count; +} + +ThreadServer::~ThreadServer() +{ + --_count; +} + +void ThreadServer::start() +{ + auto startupFunc = [this]() { + this->threadFunction(); + }; + std::unique_ptr th(new std::thread(startupFunc)); + thread = std::move(th); +} + +void ThreadServer::threadFunction() +{ + sharedState->serverRunning = true; + for (bool done = false; !done; ) { + if (sharedState->serverStopRequested.load()) { + done = true; + } else { + // if msg is null, stop was requested (that's not true anyh more, is it?) + ThreadMessage* msg = sharedState->server_waitForMessageOrShutdown(); + if (msg) { + procMessage(msg); + } + } + } + + thread->detach(); + sharedState->serverRunning = false; +} + +//TODO: get rid of this function +void ThreadServer::procMessage(ThreadMessage* msg) +{ + handleMessage(msg); +} + +void ThreadServer::handleMessage(ThreadMessage* ) +{ + assert(false); // derived must override. +} + +void ThreadServer::sendMessageToClient(ThreadMessage* msg) +{ + sharedState->server_sendMessage(msg); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.h new file mode 100644 index 00000000..83154db1 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadServer.h @@ -0,0 +1,54 @@ +#pragma once + +#include +#include + +class ThreadSharedState; +class ThreadMessage; + +/** + * ThreadServer implements a worker thread that can do work + * off of the audio thread in a plugin. + * To do useful work with Thread server: + * Derive a class from ThreadServer, and override handleMessage. + * Define at least one message by deriving from ThreadMessage. + * Control ThreadServer with ThreadClient. + * For more info, refer to ThreadSharedState + */ +class ThreadServer +{ +public: + ThreadServer(std::shared_ptr state); + virtual ~ThreadServer(); + void start(); + + const ThreadServer& operator= (const ThreadServer&) = delete; + ThreadServer(const ThreadServer&) = delete; + static int _count; +protected: + /** + * Derived thread servers must override this to get messages. + * Message is not const, as server is allowed to modify it and + * send it back. + */ + virtual void handleMessage(ThreadMessage*); + + /** + * Utility for sending replies back to the client. + * Will causes an error if there is a message in the mailbox already. + */ + void sendMessageToClient(ThreadMessage*); + + std::shared_ptr sharedState; + std::unique_ptr thread; +private: + + // Message based clients should not override this + virtual void threadFunction(); + + /** + * + * TODO: get rid of proc and handle, if possible + */ + void procMessage(ThreadMessage*); +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.cpp b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.cpp new file mode 100644 index 00000000..de8f2cee --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.cpp @@ -0,0 +1,89 @@ + +#include +#include "ThreadSharedState.h" + +std::atomic ThreadSharedState::_dbgCount; +std::atomic ThreadMessage::_dbgCount; + +#include +#include +#include + +ThreadMessage* ThreadSharedState::server_waitForMessageOrShutdown() +{ + // printf("wait\n"); fflush(stdout); + + std::unique_lock guard(mailboxMutex); // grab the mutex that protects condition + ThreadMessage* returnMessage = nullptr; + for (bool done = false; !done; ) { + if (serverStopRequested.load()) { + done = true; + } else { + returnMessage = mailboxClient2Server.load(); + if (returnMessage) { + done = true; + } + } + if (!done) { + mailboxCondition.wait(guard); + } + } + mailboxClient2Server.store(nullptr); + return returnMessage; +} + +void ThreadSharedState::client_askServerToStop() +{ + serverStopRequested.store(true); // ask server to stop + std::unique_lock guard(mailboxMutex); // grab the mutex + mailboxCondition.notify_all(); // wake up server +} + +ThreadMessage* ThreadSharedState::client_pollMessage() +{ + ThreadMessage* msg = nullptr; + + // grab lock + std::unique_lock guard(mailboxMutex); + msg = mailboxServer2Client.load(); + if (msg) { + mailboxServer2Client.store(nullptr); + } + return msg; +} + +// signal in lock +bool ThreadSharedState::client_trySendMessage(ThreadMessage* msg) +{ + assert(serverRunning.load()); + // If the client tries to send a message before the previous one is read, the + // call will fail and the client must try again. + if (mailboxClient2Server.load()) { + return false; + } + + // Write to mailbox (condition) in lock + + std::unique_lock guard(mailboxMutex, std::defer_lock); + // We must use a try_lock here, as calling regular lock() could cause a priority inversion. + bool didLock = guard.try_lock(); + if (!didLock) { + return false; + } + assert(guard.owns_lock()); + + assert(!mailboxClient2Server.load()); // if there is still a message there we are out of sync + mailboxClient2Server.store(msg); + + mailboxCondition.notify_all(); + return true; +} + +void ThreadSharedState::server_sendMessage(ThreadMessage* msg) +{ + std::unique_lock guard(mailboxMutex); + assert(mailboxServer2Client.load() == nullptr); + mailboxServer2Client.store(msg); +} + + diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.h new file mode 100644 index 00000000..01ad27f2 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/thread/ThreadSharedState.h @@ -0,0 +1,113 @@ +#pragma once + +#include +#include +#include + +/** + * Messaging protocol between client and server. + * + * This protocol has the following goals: + * It is easy to implement. + * It is easy to understand. + * It is thread safe. + * The client's thread will never block. + * + * Basics of the protocol: + * Client initiates all communication. + * For every message sent client -> server, the server will send once back. + * The message objects are owned by whoever created them. Passing + * a message does not transfer ownership. + * Only one message may be "in play" at a time. Until the client + * receives a reply from the server, it may not send another message. + */ + + +/** + * Base class for messages passed between client and server threads. + * Receivers of message will typically examine the "type", and down-cast + * based on that. + */ +class ThreadMessage +{ +public: + enum class Type + { + TEST1, + TEST2, + NOISE // used by ColoredNoise + }; + ThreadMessage(Type t) : type(t) + { + ++_dbgCount; + } + virtual ~ThreadMessage() + { + --_dbgCount; + } + + const Type type; + static std::atomic _dbgCount; +}; + +/** + * ThreadServer and ThreadClient do not refer to each other directly. + * Instead, they both maintain pointers to ThreadSharedState. + * All communication between thread goes through here. + */ +class ThreadSharedState +{ +public: + ThreadSharedState() + { + ++_dbgCount; + serverRunning.store(false); + serverStopRequested.store(false); + mailboxClient2Server.store(nullptr); + mailboxServer2Client.store(nullptr); + } + ~ThreadSharedState() + { + --_dbgCount; + } + std::atomic serverRunning; + std::atomic serverStopRequested; + static std::atomic _dbgCount; + + /** + * If return false, message not sent. + * otherwise message send, and msg may be reused. + */ + bool client_trySendMessage(ThreadMessage* msg); + + ThreadMessage* client_pollMessage(); + void client_askServerToStop(); + + void server_sendMessage(ThreadMessage* msg); + + /** + * returned message is a pointer to a message that we "own" + * temporarily (sender may modify it, but won't delete it). + * + * if null returned, a shutdown has been requested + */ + ThreadMessage* server_waitForMessageOrShutdown(); + + +private: + + /** + * This mutex protects all the private state + */ + std::mutex mailboxMutex; + + /** The message in the mailbox. + * This is an object by whoever created it. Ownership of message + * is not passed. + * TODO: given that a mutex protects us, we have no reason to use atomics here + */ + std::atomic mailboxClient2Server; + std::atomic mailboxServer2Client; + + std::condition_variable mailboxCondition; +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/util/Constants.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/Constants.h new file mode 100644 index 00000000..917f436c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/Constants.h @@ -0,0 +1,12 @@ +#pragma once + +/** + * Gate inputs will be considered "low" if they are below this + */ +const float cGateLow = .8f; + +/** +* Gate inputs will be considered "high" if they are above this +*/ +const float cGateHi = 1.6f; + diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/util/GateTrigger.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/GateTrigger.h new file mode 100644 index 00000000..74e19e7f --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/GateTrigger.h @@ -0,0 +1,65 @@ +#pragma once + +#include "SchmidtTrigger.h" +#include + + +class GateTrigger +{ +public: + GateTrigger() : + _gate(false), + _trigger(false), + _reset(true) + { + } + + void go(float v) + { + const bool newGate = _sc.go(v); + if (_reset) { + if (newGate) // in reset state need to wait for low + return; + else + _reset = false; + } + _trigger = newGate && !_gate; + _gate = newGate; + } + + void reset() + { + _gate = false; + _trigger = false; + _reset = true; + } + + bool gate() const + { + return _gate; + } + + bool trigger() const + { + return _trigger; + } + + float thhi() const + { + return _sc.thhi(); + } + + float thlo() const + { + return _sc.thlo(); + } + +private: + SchmidtTrigger _sc; + bool _gate; + bool _trigger; + bool _reset; // just reset - gate must go low before high to trigger +}; + + + diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/util/ManagedPool.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/ManagedPool.h new file mode 100644 index 00000000..339ab7cc --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/ManagedPool.h @@ -0,0 +1,83 @@ +#pragma once + +#include +#include + +#include "RingBuffer.h" + +/** + * A very specialized container. Made for holding one free + * work buffers, and making sure they are destroyed. + * + * At construction time, objects are created to fill the pool. + * pop the objects to get one, push back to return when done. + * + * Destructor will delete all the objects, even if they are not in the pool + * at the time. + * + * Note that unlike RingBuffer, ManagePool manages T*, not T. + * + * All public functions are no-blocking, so may be called from the audio thread + * without danger. Of course the constructor and destructor are exceptions - they may block. + */ +template +class ManagedPool +{ +public: + ManagedPool(); + + + /** Accessors from RingBuffer + */ + void push(T*); + T* pop(); + bool full() const; + bool empty() const; +private: + /** + * this ring buffer is where the raw T* are kept. + * client pops and pushes here + */ + RingBuffer ringBuffer; + std::vector< std::unique_ptr> lifetimeManager; +}; + +template +inline ManagedPool::ManagedPool() +{ + // Manufacture the items here + for (int i = 0; i < SIZE; ++i) { + T * item = new T(); + ringBuffer.push(item); // put the raw pointer in ring buffer for client to use. + + // Also add managed pointers to delete the objects on destroy. + lifetimeManager.push_back(std::unique_ptr(item)); + } +} + +template +inline void ManagedPool::push(T* value) +{ + ringBuffer.push(value); +} + + +template +inline T* ManagedPool::pop() +{ + return ringBuffer.pop(); +} + +template +inline bool ManagedPool::full() const +{ + return ringBuffer.full(); +} + +template +inline bool ManagedPool::empty() const +{ + return ringBuffer.empty(); +} + + diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/util/RingBuffer.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/RingBuffer.h new file mode 100644 index 00000000..120250c6 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/RingBuffer.h @@ -0,0 +1,79 @@ +#pragma once +#include + +/** + * A simple ring buffer. + * Template arguments are for numeric type stored, and for size. + * Not thread safe. + * Guaranteed to be non-blocking. Adding or removing items will never + * allocate or free memory. + * Objects in RingBuffer are not owned by RingBuffer - they will not be destroyed. + */ +template +class RingBuffer +{ +public: + RingBuffer() + { + for (int i = 0; i < SIZE; ++i) { + memory[i] = 0; + } + } + + void push(T); + T pop(); + bool full() const; + bool empty() const; + +private: + T memory[SIZE]; + bool couldBeFull = false; // full and empty are ambiguous, both are in--out + int inIndex = 0; + int outIndex = 0; + + /** Move up 'p' (a buffer index), wrap around if we hit the end + * (this is the core of the circular ring buffer). + */ + void advance(int &p); +}; + +template +inline void RingBuffer::push(T value) +{ + assert(!full()); + memory[inIndex] = value; + advance(inIndex); + couldBeFull = true; +} + + +template +inline T RingBuffer::pop() +{ + assert(!empty()); + T value = memory[outIndex]; + advance(outIndex); + couldBeFull = false; + return value; +} + +template +inline bool RingBuffer::full() const +{ + return (inIndex == outIndex) && couldBeFull; +} + +template +inline bool RingBuffer::empty() const +{ + return (inIndex == outIndex) && !couldBeFull; +} + +template +inline void RingBuffer::advance(int &p) +{ + if (++p >= SIZE) p = 0; +} + + + diff --git a/plugins/community/repos/squinkylabs-plug1/sqsrc/util/SchmidtTrigger.h b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/SchmidtTrigger.h new file mode 100644 index 00000000..d84612d5 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/sqsrc/util/SchmidtTrigger.h @@ -0,0 +1,44 @@ + +#pragma once + +#include "Constants.h" + +class SchmidtTrigger +{ +public: + SchmidtTrigger(float thLo = cGateLow, float thHi = cGateHi) : + _thLo(thLo), _thHi(thHi), _lastOut(false) + { + } + + bool go(float input) + { + if (_lastOut) // if we were true last time + { + if (input < _thLo) { + _lastOut = false; + } + } else { + if (input > _thHi) { + _lastOut = true; + } + } + return _lastOut; + } + + float thhi() const + { + return _thHi; + } + float thlo() const + { + return _thLo; + } + +private: + const float _thLo; + const float _thHi; + bool _lastOut; +}; + + diff --git a/plugins/community/repos/squinkylabs-plug1/src/BootyModule.cpp b/plugins/community/repos/squinkylabs-plug1/src/BootyModule.cpp new file mode 100644 index 00000000..6e0b1891 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/BootyModule.cpp @@ -0,0 +1,219 @@ +#include "global_pre.hpp" +#include "Squinky.hpp" +#include "FrequencyShifter.h" +#include "WidgetComposite.h" +#include "global_ui.hpp" + +/** + * Implementation class for BootyModule + */ +struct BootyModule : Module +{ + BootyModule(); + + /** + * Overrides of Module functions + */ + void step() override; + json_t *toJson() override; + void fromJson(json_t *rootJ) override; + void onSampleRateChange() override; + + FrequencyShifter shifter; +private: + typedef float T; +public: + ChoiceButton * rangeChoice; +}; + +extern float values[]; +extern const char* ranges[]; + +BootyModule::BootyModule() : Module(shifter.NUM_PARAMS, shifter.NUM_INPUTS, shifter.NUM_OUTPUTS, shifter.NUM_LIGHTS), +shifter(this) +{ + // TODO: can we assume onSampleRateChange() gets called first, so this is unnecessary? + onSampleRateChange(); + shifter.init(); +} + +void BootyModule::onSampleRateChange() +{ + T rate = engineGetSampleRate(); + shifter.setSampleRate(rate); +} + +json_t *BootyModule::toJson() +{ + json_t *rootJ = json_object(); + const int rg = shifter.freqRange; + json_object_set_new(rootJ, "range", json_integer(rg)); + return rootJ; +} + +void BootyModule::fromJson(json_t *rootJ) +{ + json_t *driverJ = json_object_get(rootJ, "range"); + if (driverJ) { + const int rg = json_number_value(driverJ); + + // TODO: should we be more robust about float <> int issues? + //need to tell the control what text to display + for (int i = 0; i < 5; ++i) { + if (rg == values[i]) { + rangeChoice->text = ranges[i]; + } + } + shifter.freqRange = rg; + fflush(stdout); + } +} + +void BootyModule::step() +{ + shifter.step(); +} + +/*********************************************************************************** + * + * RangeChoice selector widget + * + ***********************************************************************************/ + +const char* ranges[5] = { + "5 Hz", + "50 Hz", + "500 Hz", + "5 kHz", + "exp" +}; + +float values[5] = { + 5, + 50, + 500, + 5000, + 0 +}; + +struct RangeItem : MenuItem +{ + RangeItem(int index, float * output, ChoiceButton * inParent) : + rangeIndex(index), rangeOut(output), rangeChoice(inParent) + { + text = ranges[index]; + } + + const int rangeIndex; + float * const rangeOut; + ChoiceButton* const rangeChoice; + + void onAction(EventAction &e) override + { + rangeChoice->text = ranges[rangeIndex]; + *rangeOut = values[rangeIndex]; + } +}; + +struct RangeChoice : ChoiceButton +{ + RangeChoice(float * out, const Vec& pos, float width) : output(out) + { + assert(*output == 5); + this->text = std::string(ranges[0]); + this->box.pos = pos; + this->box.size.x = width; + } + float * const output; + void onAction(EventAction &e) override + { + Menu *menu = rack::global_ui->ui.gScene->createMenu(); + + menu->box.pos = getAbsoluteOffset(Vec(0, box.size.y)).round(); + menu->box.size.x = box.size.x; + { + menu->addChild(new RangeItem(0, output, this)); + menu->addChild(new RangeItem(1, output, this)); + menu->addChild(new RangeItem(2, output, this)); + menu->addChild(new RangeItem(3, output, this)); + menu->addChild(new RangeItem(4, output, this)); + } + } +}; + +//////////////////// +// module widget +//////////////////// + +struct BootyWidget : ModuleWidget +{ + BootyWidget(BootyModule *); +}; + +/** + * Widget constructor will describe my implementation structure and + * provide meta-data. + * This is not shared by all modules in the DLL, just one + */ +BootyWidget::BootyWidget(BootyModule *module) : ModuleWidget(module) +{ + box.size = Vec(6 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/booty_panel.svg"))); + addChild(panel); + } + + const int leftInputX = 11; + const int rightInputX = 55; + + const int row0 = 45; + const int row1 = 102; + static int row2 = 186; + + // Inputs on Row 0 + addInput(Port::create(Vec(leftInputX, row0), Port::INPUT, module, module->shifter.AUDIO_INPUT)); + addInput(Port::create(Vec(rightInputX, row0), Port::INPUT, module, module->shifter.CV_INPUT)); + + // shift Range on row 2 + const float margin = 16; + float xPos = margin; + float width = 6 * RACK_GRID_WIDTH - 2 * margin; + + // TODO: why do we need to reach into the module from here? I guess any + // time UI callbacks need to go bak.. + module->rangeChoice = new RangeChoice(&module->shifter.freqRange, Vec(xPos, row2), width); + addChild(module->rangeChoice); + + // knob on row 1 + addParam(ParamWidget::create(Vec(18, row1), module, module->shifter.PITCH_PARAM, -5.0, 5.0, 0.0)); + + const float row3 = 317.5; + + // Outputs on row 3 + const float leftOutputX = 9.5; + const float rightOutputX = 55.5; + + addOutput(Port::create(Vec(leftOutputX, row3), Port::OUTPUT, module, module->shifter.SIN_OUTPUT)); + addOutput(Port::create(Vec(rightOutputX, row3), Port::OUTPUT, module, module->shifter.COS_OUTPUT)); + + // screws + addChild(Widget::create(Vec(RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); +} + +// Specify the Module and ModuleWidget subclass, human-readable +// manufacturer name for categorization, module slug (should never +// change), human-readable module name, and any number of tags +// (found in `include/tags.hpp`) separated by commas. +RACK_PLUGIN_MODEL_INIT(squinkylabs_plug1, Booty) { + Model *modelBootyModule = Model::create("Squinky Labs", + "squinkylabs-freqshifter", + "Booty Frequency Shifter", EFFECT_TAG, RING_MODULATOR_TAG); + return modelBootyModule; +} + diff --git a/plugins/community/repos/squinkylabs-plug1/src/CPU_Hog.cpp b/plugins/community/repos/squinkylabs-plug1/src/CPU_Hog.cpp new file mode 100644 index 00000000..ee529ed2 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/CPU_Hog.cpp @@ -0,0 +1,174 @@ + +#include +#include "Squinky.hpp" +#ifdef _CPU_HOG + +#include "WidgetComposite.h" + +#include "ThreadClient.h" +#include "ThreadServer.h" +#include "ThreadSharedState.h" + + +/** The following block of constants control what + * this plugin does. Change them and re-build + */ +static const int numLoadThreads = 1; +static const int drawMillisecondSleep = 0; + +static std::atomic drawIsSleeping; + +/** + * Implementation class for BootyModule + */ +struct CPU_HogModule : Module +{ + CPU_HogModule(); + ~CPU_HogModule(); + + /** + * Overrides of Module functions + */ + void step() override; + + int stepsWhileDrawing=0; +private: + typedef float T; + std::vector< std::shared_ptr > threads; +}; + +class PServer : public ThreadServer +{ +public: + PServer(std::shared_ptr state) + : ThreadServer(state) + { + + } + virtual void threadFunction () override; + + ~PServer() { + } +private: + bool didRun = false; + double dummy = 0; +}; + + void PServer::threadFunction() + { + sharedState->serverRunning = true; + for (bool done = false; !done; ) { + if (sharedState->serverStopRequested.load()) { + done = true; + } else { + // now kill a lot of time + for (int i=0; i< 10000; ++i) { + dummy += std::log(rand()) * std::sin(rand()); + } + + } + } + + thread->detach(); + sharedState->serverRunning = false; + } + +CPU_HogModule::CPU_HogModule() : Module(0,0,0,0) +{ + for (int i=0; i state = std::make_shared(); + std::unique_ptr server(new PServer(state)); + threads.push_back( + std::make_shared( + state, + std::move(server))); + } + + // TODO: can we assume onSampleRateChange() gets called first, so this is unnecessary? + onSampleRateChange(); +} + +CPU_HogModule::~CPU_HogModule() +{ + threads.resize(0); +} + + +void CPU_HogModule::step() +{ + if (drawIsSleeping) { + stepsWhileDrawing++; + } +} + +//////////////////// +// module widget +//////////////////// + +struct CPU_HogWidget : ModuleWidget +{ + CPU_HogWidget(CPU_HogModule *); + void draw(NVGcontext *vg) override + { + const CPU_HogModule* pMod = static_cast(module); + std::stringstream s; + s << pMod->stepsWhileDrawing; + steps->text = s.str(); + + ModuleWidget::draw(vg); + if (drawMillisecondSleep) { + drawIsSleeping = true; + std::this_thread::sleep_for(std::chrono::milliseconds(drawMillisecondSleep)); + drawIsSleeping = false; + } + } + Label* steps; +}; + +/** + * Widget constructor will describe my implementation structure and + * provide meta-data. + * This is not shared by all modules in the DLL, just one + */ +CPU_HogWidget::CPU_HogWidget(CPU_HogModule *module) : ModuleWidget(module) +{ + box.size = Vec(6 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/cpu_hog_panel.svg"))); + addChild(panel); + } + + Label* label=new Label(); + label->box.pos = Vec(10, 140); + label->text = "SleepSteps"; + label->color = COLOR_BLACK; + addChild(label); + + steps=new Label(); + steps->box.pos = Vec(10, 180); + steps->text = ""; + steps->color = COLOR_BLACK; + addChild(steps); + + // screws + addChild(Widget::create(Vec(RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); +} + +// Specify the Module and ModuleWidget subclass, human-readable +// manufacturer name for categorization, module slug (should never +// change), human-readable module name, and any number of tags +// (found in `include/tags.hpp`) separated by commas. +RACK_PLUGIN_MODEL_INIT(squinkylabs_plug1, CPU_hog) { + Model *modelCPU_HogModule = Model::create("Squinky Labs", + "squinkylabs-cpuhog", + "CPU Hog", EFFECT_TAG); + return modelCPU_HogModule; +} +#endif + diff --git a/plugins/community/repos/squinkylabs-plug1/src/ColoredNoiseModule.cpp b/plugins/community/repos/squinkylabs-plug1/src/ColoredNoiseModule.cpp new file mode 100644 index 00000000..dd461583 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/ColoredNoiseModule.cpp @@ -0,0 +1,249 @@ + +#include "Squinky.hpp" + +#include "WidgetComposite.h" +#include "ColoredNoise.h" +#include "NoiseDrawer.h" + +/** + * Implementation class for VocalWidget + */ +struct ColoredNoiseModule : Module +{ + ColoredNoiseModule(); + + /** + * Overrides of Module functions + */ + void step() override; + void onSampleRateChange() override; + + ColoredNoise noiseSource; +private: + typedef float T; +}; + +ColoredNoiseModule::ColoredNoiseModule() + : Module(noiseSource.NUM_PARAMS, + noiseSource.NUM_INPUTS, + noiseSource.NUM_OUTPUTS, + noiseSource.NUM_LIGHTS), + noiseSource(this) +{ + onSampleRateChange(); + noiseSource.init(); +} + +void ColoredNoiseModule::onSampleRateChange() +{ + T rate = engineGetSampleRate(); + noiseSource.setSampleRate(rate); +} + +void ColoredNoiseModule::step() +{ + noiseSource.step(); +} + +//////////////////// +// module widget +//////////////////// + +struct ColoredNoiseWidget : ModuleWidget +{ + ColoredNoiseWidget(ColoredNoiseModule *); + Label * slopeLabel; + Label * signLabel; +}; + +// The colors of noise (UI colors) +static const unsigned char red[3] = {0xff, 0x04, 0x14}; +static const unsigned char pink[3] = {0xff, 0x3a, 0x6d}; +static const unsigned char white[3] = {0xff, 0xff, 0xff}; +static const unsigned char blue[3] = {0x54, 0x43, 0xc1}; +static const unsigned char violet[3] = {0x9d, 0x3c, 0xe6}; + +// 0 <= x <= 1 +static float interp(float x, int x0, int x1) +{ + return x1 * x + x0 * (1 - x); +} + +// 0 <= x <= 3 +static void interp(unsigned char * out, float x, const unsigned char* y0, const unsigned char* y1) +{ + x = x * 1.0 / 3.0; // 0..1 + out[0] = interp(x, y0[0], y1[0]); + out[1] = interp(x, y0[1], y1[1]); + out[2] = interp(x, y0[2], y1[2]); +} + +static void copyColor(unsigned char * out, const unsigned char* in) +{ + out[0] = in[0]; + out[1] = in[1]; + out[2] = in[2]; +} + +static void getColor(unsigned char * out, float x) +{ + if (x < -6) { + copyColor(out, red); + } else if (x >= 6) { + copyColor(out, violet); + } else { + if (x < -3) { + interp(out, x + 6, red, pink); + } else if (x < 0) { + interp(out, x + 3, pink, white); + } else if (x < 3) { + interp(out, x + 0, white, blue); + } else if (x < 6) { + interp(out, x - 3, blue, violet); + } else { + copyColor(out, white); + } + } +} + +// the draw size of the colored noise display. +const int colorWidth = 85; +const int colorHeight = 180; +const int colorX = 10; +const int colorY = 170; + +struct ColorDisplay : TransparentWidget +{ + ColoredNoiseModule *module; + ColorDisplay(Label *slopeLabel, Label *signLabel) + : _slopeLabel(slopeLabel), + _signLabel(signLabel) + { + } + + Label* _slopeLabel; + Label* _signLabel; + std::unique_ptr _noiseDrawer; + + void draw(NVGcontext *vg) override + { + // First draw the solid fill + const float slope = module->noiseSource.getSlope(); + unsigned char color[3]; + getColor(color, slope); + nvgFillColor(vg, nvgRGBA(color[0], color[1], color[2], 0xff)); + + nvgBeginPath(vg); + + nvgRect(vg, colorX, colorY, 6 * colorWidth, colorHeight); + nvgFill(vg); + + // then the noise + if (!_noiseDrawer) { + // TODO: this 100x100 was a mistake, but now we like the + // slight stretching. look into this some more to try and + // improve the looks later. + _noiseDrawer.reset(new NoiseDrawer(vg, 100, 100)); + } + _noiseDrawer->draw(vg, colorX, colorY, colorWidth, colorHeight); + + + // update the slope display in the UI + const bool slopeSign = slope >= 0; + const float slopeAbs = std::abs(slope); + std::stringstream s; + s.precision(1); + s.setf(std::ios::fixed, std::ios::floatfield); + + s << slopeAbs << " db/oct"; + _slopeLabel->text = s.str(); + + const char * mini = "\u2005-"; + _signLabel->text = slopeSign ? "+" : mini; + } +}; + +/** + * Widget constructor will describe my implementation structure and + * provide meta-data. + * This is not shared by all modules in the DLL, just one + */ +ColoredNoiseWidget::ColoredNoiseWidget(ColoredNoiseModule *module) : ModuleWidget(module) +{ + box.size = Vec(6 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT); + + // save so we can update later. + slopeLabel = new Label(); + signLabel = new Label(); + + // add the color display + { + ColorDisplay *display = new ColorDisplay(slopeLabel, signLabel); + display->module = module; + display->box.pos = Vec(0, 0); + display->box.size = Vec(6 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT); + addChild(display); + display->module = module; + } + + // Add the background panel + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/colors_panel.svg"))); + addChild(panel); + } + + addOutput(Port::create( + Vec(32, 310), + Port::OUTPUT, + module, + module->noiseSource.AUDIO_OUTPUT)); + Label* label = new Label(); + label->box.pos = Vec(24.2, 294); + label->text = "OUT"; + label->color = COLOR_WHITE; + addChild(label); + + addParam(ParamWidget::create( + Vec(22, 80), module, module->noiseSource.SLOPE_PARAM, -5.0, 5.0, 0.0)); + + addParam(ParamWidget::create( + Vec(58, 46), + module, module->noiseSource.SLOPE_TRIM, -1.0, 1.0, 1.0)); + + addInput(Port::create( + Vec(14, 42), + Port::INPUT, + module, + module->noiseSource.SLOPE_CV)); + + // Create the labels for slope. They will get + // text content later. + const float labelY = 146; + slopeLabel->box.pos = Vec(12, labelY); + slopeLabel->text = ""; + slopeLabel->color = COLOR_BLACK; + addChild(slopeLabel); + signLabel->box.pos = Vec(2, labelY); + signLabel->text = ""; + signLabel->color = COLOR_BLACK; + addChild(signLabel); + + // screws + addChild(Widget::create(Vec(RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); +} + +RACK_PLUGIN_MODEL_INIT(squinkylabs_plug1, ColoredNoise) { + Model *modelColoredNoiseModule = Model::create( + "Squinky Labs", + "squinkylabs-coloredNoise", + "Colored Noise", NOISE_TAG); + return modelColoredNoiseModule; +} + + + diff --git a/plugins/community/repos/squinkylabs-plug1/src/NoiseDrawer.h b/plugins/community/repos/squinkylabs-plug1/src/NoiseDrawer.h new file mode 100644 index 00000000..5ae1c5f9 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/NoiseDrawer.h @@ -0,0 +1,125 @@ + +#pragma once +#include "nanovg.h" + +/** + * Renders animated noise image sing nanogl + */ +// 0 = random pixel grey level +// 1 = random white, bk, transparent. +const int method = 0; +class NoiseDrawer +{ +public: + NoiseDrawer(NVGcontext *vg, float width, float height) + : _width(width), _height(height) + { + makeImage(vg); + _vg = vg; + } + + ~NoiseDrawer() + { + nvgDeleteImage(_vg, _image); + _image = 0; + } + + void draw(NVGcontext *vg, float colorX, float colorY, float colorWidth, float colorHeight); + +private: + /** + * Holds an image (gl texture) in memory for + * the lifetime of the plugin instance. + */ + int _image = 0; + NVGcontext* _vg = nullptr; + const int _width, _height; + + int frameCount = 0; + float randomX = 0; + float randomY = 0; + + void makeImage(NVGcontext *vg); +}; + + +inline void NoiseDrawer::makeImage(NVGcontext *vg) +{ + // let's synthesize some white noise + const int memSize = _width * _height * 4; + unsigned char * memImage = new unsigned char[memSize]; + + for (int row = 0; row < _height; ++row) { + for (int col = 0; col < _width; ++col) { + unsigned char * pix = memImage + (4 * (row*_width + col)); + if (method == 0) { + int value = int((255.f * rand()) / float(RAND_MAX)); + pix[0] = value; + pix[1] = value; + pix[2] = value; + pix[3] = 255; // opaque, for now + } else if (method == 1) { + //generate 0 .. 100 + int rnd = int((100.f * rand()) / float(RAND_MAX)); + int value, alpha; + if (rnd > 75) { + value = 0; + alpha = 255; + } else if (rnd > 75) { + value = 255; + alpha = 255; + } else { + value = 128; + alpha = 0; + } + pix[0] = value; + pix[1] = value; + pix[2] = value; + pix[3] = alpha; + } + } + } + + _image = nvgCreateImageRGBA(vg, + _width, + _height, + NVG_IMAGE_REPEATX | NVG_IMAGE_REPEATY, + memImage); + + assert(_image != 0); + delete[] memImage; +} + + +inline void NoiseDrawer::draw(NVGcontext *vg, + float drawX, + float drawY, + float drawWidth, + float drawHeight) +{ + assert(_image); + + // noise looks slightly better with anti-alias off? + nvgShapeAntiAlias(vg, false); + + // Don't update the noise position every frame. Old TV is only + // 30 fps, and this looks better even slower. + if (frameCount++ > 3) { + randomX = (float) rand() * _width / float(RAND_MAX); + randomY = (float) rand() * _height / float(RAND_MAX); + frameCount = 0; + } + + // Clever trick. We don't draw new noise every time, we just + // draw the same noise image from a random offset. + NVGpaint paint = nvgImagePattern(vg, + randomX, randomY, + _width, _height, + 0, _image, 0.15f); + + nvgBeginPath(vg); + nvgRect(vg, drawX, drawY, drawWidth, drawHeight); + + nvgFillPaint(vg, paint); + nvgFill(vg); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/src/Squinky.cpp b/plugins/community/repos/squinkylabs-plug1/src/Squinky.cpp new file mode 100644 index 00000000..0ab926b4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/Squinky.cpp @@ -0,0 +1,24 @@ +// plugin main +#include "Squinky.hpp" + +RACK_PLUGIN_MODEL_DECLARE(squinkylabs_plug1, Booty); +RACK_PLUGIN_MODEL_DECLARE(squinkylabs_plug1, Vocal); +RACK_PLUGIN_MODEL_DECLARE(squinkylabs_plug1, VocalFilter); +RACK_PLUGIN_MODEL_DECLARE(squinkylabs_plug1, ColoredNoise); +RACK_PLUGIN_MODEL_DECLARE(squinkylabs_plug1, Tremolo); +RACK_PLUGIN_MODEL_DECLARE(squinkylabs_plug1, CPU_Hog); +RACK_PLUGIN_MODEL_DECLARE(squinkylabs_plug1, ThreadBoost); + +RACK_PLUGIN_INIT(squinkylabs_plug1) { + RACK_PLUGIN_INIT_ID(); + + RACK_PLUGIN_MODEL_ADD(squinkylabs_plug1, Booty); + RACK_PLUGIN_MODEL_ADD(squinkylabs_plug1, Vocal); + RACK_PLUGIN_MODEL_ADD(squinkylabs_plug1, VocalFilter); + RACK_PLUGIN_MODEL_ADD(squinkylabs_plug1, ColoredNoise); + RACK_PLUGIN_MODEL_ADD(squinkylabs_plug1, Tremolo); +#ifdef _CPU_HOG + RACK_PLUGIN_MODEL_ADD(squinkylabs_plug1, CPU_Hog); +#endif + RACK_PLUGIN_MODEL_ADD(squinkylabs_plug1, ThreadBoost); +} diff --git a/plugins/community/repos/squinkylabs-plug1/src/Squinky.hpp b/plugins/community/repos/squinkylabs-plug1/src/Squinky.hpp new file mode 100644 index 00000000..c9122bf8 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/Squinky.hpp @@ -0,0 +1,10 @@ +#include "rack.hpp" + +using namespace rack; + +RACK_PLUGIN_DECLARE(squinkylabs_plug1); + +#ifdef USE_VST2 +#define plugin "squinkylabs-plug1" +#endif // USE_VST2 + diff --git a/plugins/community/repos/squinkylabs-plug1/src/ThreadBoost.cpp b/plugins/community/repos/squinkylabs-plug1/src/ThreadBoost.cpp new file mode 100644 index 00000000..204b453d --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/ThreadBoost.cpp @@ -0,0 +1,175 @@ + +#include "Squinky.hpp" +#include "WidgetComposite.h" +#include "ThreadPriority.h" + + +struct ThreadBoostModule : Module +{ + enum ParamIds + { + THREAD_BOOST_PARAM, + NUM_PARAMS + }; + enum InputIds + { + + NUM_INPUTS + }; + enum OutputIds + { + + NUM_OUTPUTS + }; + enum LightIds + { + NORMAL_LIGHT, + BOOSTED_LIGHT, + REALTIME_LIGHT, + ERROR_LIGHT, + NUM_LIGHTS + }; + + ThreadBoostModule(); + + /** + * Overrides of Module functions + */ + void step() override; + +private: + int boostState = 0; + void lightOnly(LightIds l) + { + for (int i = NORMAL_LIGHT; i < NUM_LIGHTS; ++i) { + bool b = (i == l); + lights[i].value = b; + } + } + +}; + +ThreadBoostModule::ThreadBoostModule() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) +{ +} + +void ThreadBoostModule::step() +{ + float x = params[THREAD_BOOST_PARAM].value + .5f; + int i = std::floor(x); + if (i != boostState) { + switch (i) { + case 0: + ThreadPriority::restore(); + lightOnly(NORMAL_LIGHT); + break; + case 1: + { + bool b = ThreadPriority::boostNormal(); + if (b) { + lightOnly(BOOSTED_LIGHT); + } else { + lightOnly(ERROR_LIGHT); + } + break; + } + case 2: + { + bool b = ThreadPriority::boostRealtime(); + if (b) { + lightOnly(REALTIME_LIGHT); + } else { + lightOnly(ERROR_LIGHT); + } + break; + } + } + boostState = i; + } +} + +//////////////////// +// module widget +//////////////////// + +struct ThreadBoostWidget : ModuleWidget +{ + ThreadBoostWidget(ThreadBoostModule *); +}; + +/** + * Widget constructor will describe my implementation structure and + * provide meta-data. + * This is not shared by all modules in the DLL, just one + */ +ThreadBoostWidget::ThreadBoostWidget(ThreadBoostModule *module) + : ModuleWidget(module) +{ + box.size = Vec(6 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/thread_booster_panel.svg"))); + addChild(panel); + } + + addParam(ParamWidget::create( + Vec(30, 140), module, ThreadBoostModule::THREAD_BOOST_PARAM, 0.0f, 2.0f, 0.0f)); + + const int ledX = 10; + const int labelX = 16; + const int ledY = 200; + const int labelY = ledY - 5; + const int deltaY = 30; + Label* label; + addChild(ModuleLightWidget::create>( + Vec(ledX, ledY), module, ThreadBoostModule::NORMAL_LIGHT)); + label = new Label(); + label->box.pos = Vec(labelX, labelY); + label->text = "Normal"; + label->color = COLOR_BLACK; + addChild(label); + + addChild(ModuleLightWidget::create>( + Vec(ledX, ledY + deltaY), module, ThreadBoostModule::BOOSTED_LIGHT)); + label = new Label(); + label->box.pos = Vec(labelX, labelY + deltaY); + label->text = "Boost"; + label->color = COLOR_BLACK; + addChild(label); + + addChild(ModuleLightWidget::create>( + Vec(ledX, ledY + 2 * deltaY), module, ThreadBoostModule::REALTIME_LIGHT)); + label = new Label(); + label->box.pos = Vec(labelX, labelY + 2 * deltaY); + label->text = "Real-time"; + label->color = COLOR_BLACK; + addChild(label); + + addChild(ModuleLightWidget::create>( + Vec(ledX, ledY + 3 * deltaY), module, ThreadBoostModule::ERROR_LIGHT)); + label = new Label(); + label->box.pos = Vec(labelX, labelY + 3 * deltaY); + label->text = "Error"; + label->color = COLOR_BLACK; + addChild(label); + + // screws + addChild(Widget::create(Vec(RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); +} + +// Specify the Module and ModuleWidget subclass, human-readable +// manufacturer name for categorization, module slug (should never +// change), human-readable module name, and any number of tags +// (found in `include/tags.hpp`) separated by commas. +RACK_PLUGIN_MODEL_INIT(squinkylabs_plug1, ThreadBoost) { + Model *modelThreadBoostModule = Model::create("Squinky Labs", + "squinkylabs-booster", + "Thread Booster", UTILITY_TAG); + return modelThreadBoostModule; +} + diff --git a/plugins/community/repos/squinkylabs-plug1/src/TremoloModule.cpp b/plugins/community/repos/squinkylabs-plug1/src/TremoloModule.cpp new file mode 100644 index 00000000..49083acd --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/TremoloModule.cpp @@ -0,0 +1,192 @@ + +#include +#include "Squinky.hpp" +#include "WidgetComposite.h" +#include "Tremolo.h" + +/** + */ +struct TremoloModule : Module +{ +public: + TremoloModule(); + /** + * Overrides of Module functions + */ + void step() override; + void onSampleRateChange() override; + Tremolo tremolo; +private: +}; + +void TremoloModule::onSampleRateChange() +{ + float rate = engineGetSampleRate(); + tremolo.setSampleRate(rate); +} + +TremoloModule::TremoloModule() + : Module(tremolo.NUM_PARAMS, + tremolo.NUM_INPUTS, + tremolo.NUM_OUTPUTS, + tremolo.NUM_LIGHTS), + tremolo(this) +{ + onSampleRateChange(); + tremolo.init(); +} + +void TremoloModule::step() +{ + tremolo.step(); +} + +//////////////////// +// module widget +//////////////////// + +struct TremoloWidget : ModuleWidget +{ + TremoloWidget(TremoloModule *); + + void addLabel(const Vec& v, const char* str, const NVGcolor& color = COLOR_BLACK) + { + Label* label = new Label(); + label->box.pos = v; + label->text = str; + label->color = color; + addChild(label); + } + void addClockSection(TremoloModule *module); + void addIOSection(TremoloModule *module); + void addMainSection(TremoloModule *module); +}; + + +void TremoloWidget::addClockSection(TremoloModule *module) +{ + const float y = 40; // global offset for clock block + const float labelY = y + 36; + + addInput(Port::create(Vec(10, y + 7), Port::INPUT, module, module->tremolo.CLOCK_INPUT)); + addLabel(Vec(2, labelY), "ckin"); + + addParam(ParamWidget::create( + Vec(110, y), module, module->tremolo.LFO_RATE_PARAM, -5.0, 5.0, 0.0)); + addLabel(Vec(104, labelY), "Rate"); + + const float cmy = y; + const float cmx = 60; + addParam(ParamWidget::create( + Vec(cmx, cmy), module, module->tremolo.CLOCK_MULT_PARAM, 0.0f, 4.0f, 4.0f)); + addLabel(Vec(cmx - 8, labelY), "Clock"); + addLabel(Vec(cmx - 19, cmy + 20), "x1"); + addLabel(Vec(cmx + 21, cmy + 20), "int"); + addLabel(Vec(cmx - 24, cmy + 0), "x2"); + addLabel(Vec(cmx + 24, cmy + 0), "x4"); + addLabel(Vec(cmx, cmy - 16), "x3"); +} + +void TremoloWidget::addIOSection(TremoloModule *module) +{ + const float rowIO = 317; + const float label = rowIO - 17; + const float deltaX = 35; + const float x = 10; + + addInput(Port::create(Vec(x, rowIO), Port::INPUT, module, module->tremolo.AUDIO_INPUT)); + addLabel(Vec(8, label), "in"); + + addOutput(Port::create(Vec(x + deltaX, rowIO), Port::OUTPUT, module, module->tremolo.AUDIO_OUTPUT)); + addLabel(Vec(x + deltaX - 6, label), "out", COLOR_WHITE); + + addOutput(Port::create(Vec(x + 2 * deltaX, rowIO), Port::OUTPUT, module, module->tremolo.SAW_OUTPUT)); + addLabel(Vec(x + 2 * deltaX - 7, label), "saw", COLOR_WHITE); + + addOutput(Port::create(Vec(x + 3 * deltaX, rowIO), Port::OUTPUT, module, module->tremolo.LFO_OUTPUT)); + addLabel(Vec(x + 3 * deltaX - 2, label), "lfo", COLOR_WHITE); +} + +void TremoloWidget::addMainSection(TremoloModule *module) +{ + const float knobX = 64; + const float knobY = 100; + const float knobDy = 50; + const float labelX = 100; + const float labelY = knobY; + const float trimX = 40; + const float trimY = knobY + 10; + const float inY = knobY + 6; + const float inX = 8; + + addParam(ParamWidget::create( + Vec(knobX, knobY + 0 * knobDy), module, module->tremolo.LFO_SHAPE_PARAM, -5.0, 5.0, 0.0)); + addParam(ParamWidget::create( + Vec(trimX, trimY + 0 * knobDy), module, module->tremolo.LFO_SHAPE_TRIM_PARAM, -1.0, 1.0, 1.0)); + addInput(Port::create( + Vec(inX, inY + 0 * knobDy), Port::INPUT, module, module->tremolo.LFO_SHAPE_INPUT)); + addLabel( + Vec(labelX, labelY + 0 * knobDy), "Shape"); + + addParam(ParamWidget::create( + Vec(knobX, knobY + 1 * knobDy), module, module->tremolo.LFO_SKEW_PARAM, -5.0, 5.0, 0.0)); + addParam(ParamWidget::create( + Vec(trimX, trimY + 1 * knobDy), module, module->tremolo.LFO_SKEW_TRIM_PARAM, -1.0, 1.0, 1.0)); + addInput(Port::create( + Vec(inX, labelY + 1 * knobDy + 6), Port::INPUT, module, module->tremolo.LFO_SKEW_INPUT)); + addLabel( + Vec(labelX+1, labelY + 1 * knobDy), "Skew"); + + addParam(ParamWidget::create( + Vec(knobX, knobY + 2 * knobDy), module, module->tremolo.LFO_PHASE_PARAM, -5.0, 5.0, 0.0)); + addParam(ParamWidget::create( + Vec(trimX, trimY + 2 * knobDy), module, module->tremolo.LFO_PHASE_TRIM_PARAM, -1.0, 1.0, 1.0)); + addInput(Port::create( + Vec(inX, labelY + 2 * knobDy + 6), Port::INPUT, module, module->tremolo.LFO_PHASE_INPUT)); + addLabel( + Vec(labelX, labelY + 2 * knobDy), "Phase"); + + addParam(ParamWidget::create( + Vec(knobX, knobY + 3 * knobDy), module, module->tremolo.MOD_DEPTH_PARAM, -5.0, 5.0, 0.0)); + addParam(ParamWidget::create( + Vec(trimX, trimY + 3 * knobDy), module, module->tremolo.MOD_DEPTH_TRIM_PARAM, -1.0, 1.0, 1.0)); + addInput(Port::create( + Vec(inX, labelY + 3 * knobDy + 6), Port::INPUT, module, module->tremolo.MOD_DEPTH_INPUT)); + addLabel( + Vec(labelX, labelY + 3 * knobDy), "Depth"); +} + +/** + * Widget constructor will describe my implementation structure and + * provide meta-data. + * This is not shared by all modules in the DLL, just one + */ +TremoloWidget::TremoloWidget(TremoloModule *module) : ModuleWidget(module) +{ + box.size = Vec(10 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT); + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/trem_panel.svg"))); + addChild(panel); + } + + addClockSection(module); + addMainSection(module); + addIOSection(module); + + // screws + addChild(Widget::create(Vec(RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); +} + +RACK_PLUGIN_MODEL_INIT(squinkylabs_plug1, Tremolo) { + Model *modelTremoloModule = Model::create("Squinky Labs", + "squinkylabs-tremolo", + "Chopper Tremolo", EFFECT_TAG, LFO_TAG); + return modelTremoloModule; +} + diff --git a/plugins/community/repos/squinkylabs-plug1/src/VocalFilterModule.cpp b/plugins/community/repos/squinkylabs-plug1/src/VocalFilterModule.cpp new file mode 100644 index 00000000..526b821a --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/VocalFilterModule.cpp @@ -0,0 +1,265 @@ + +#include "Squinky.hpp" + +#include "WidgetComposite.h" +#include "VocalFilter.h" + +/** + * Implementation class for VocalWidget + */ +struct VocalFilterModule : Module +{ + + VocalFilterModule(); + + /** + * Overrides of Module functions + */ + void step() override; + void onSampleRateChange() override; + + VocalFilter vocalFilter; +private: + typedef float T; +}; + +VocalFilterModule::VocalFilterModule() : Module(vocalFilter.NUM_PARAMS, vocalFilter.NUM_INPUTS, vocalFilter.NUM_OUTPUTS, vocalFilter.NUM_LIGHTS), +vocalFilter(this) +{ + onSampleRateChange(); + vocalFilter.init(); +} + +void VocalFilterModule::onSampleRateChange() +{ + T rate = engineGetSampleRate(); + vocalFilter.setSampleRate(rate); +} + +void VocalFilterModule::step() +{ + vocalFilter.step(); +} + +//////////////////// +// module widget +//////////////////// + +struct VocalFilterWidget : ModuleWidget +{ + VocalFilterWidget(VocalFilterModule *); + void addVowelLabels(); + void addModelKnob(VocalFilterModule *module, float x, float y); +}; + +void VocalFilterWidget::addVowelLabels() +{ + const float ledX = 20; + const float ledDx = 26; + const float ledY = 43; + + const float vOffsetX = -8; + const float vOffsetY = 14; + for (int i = 0; i < 5; ++i) { + VocalFilter::LightIds id = (VocalFilter::LightIds) i; + std::string ltext; + switch (id) { + case VocalFilter::LED_A: + ltext = "A"; + break; + case VocalFilter::LED_E: + ltext = "E"; + break; + case VocalFilter::LED_I: + ltext = "I"; + break; + case VocalFilter::LED_O: + ltext = "O"; + break; + case VocalFilter::LED_U: + ltext = "U"; + break; + default: + assert(false); + } + Label * label = nullptr; label = new Label(); + label->text = ltext; + label->color = COLOR_BLACK; + label->box.pos = Vec(ledX + vOffsetX + i * ledDx, ledY + vOffsetY); + + addChild(label); + + addChild(ModuleLightWidget::create>( + Vec(ledX + i * ledDx, ledY), module, id)); + } +} + +void VocalFilterWidget::addModelKnob(VocalFilterModule *module, float x, float y) +{ + // 5 pos vocal model + // 0(bass) 1(tenor) 2(countertenor) 3(alto) 4(soprano) + Label* label = new Label(); + label->box.pos = Vec(x - 18, y + 24); + label->text = "B"; + label->color = COLOR_BLACK; + addChild(label); + + label = new Label(); + label->box.pos = Vec(x - 20, y + 0); + label->text = "T"; + label->color = COLOR_BLACK; + addChild(label); + + label = new Label(); + label->box.pos = Vec(x - 2, y - 20); + label->text = "CT"; + label->color = COLOR_BLACK; + addChild(label); + + label = new Label(); + label->box.pos = Vec(x + 30, y + 0); + label->text = "A"; + label->color = COLOR_BLACK; + addChild(label); + + label = new Label(); + label->box.pos = Vec(x + 23, y + 24); + label->text = "S"; + label->color = COLOR_BLACK; + addChild(label); + + addParam(ParamWidget::create(Vec(x - .5, y), module, module->vocalFilter.FILTER_MODEL_SELECT_PARAM, 0.0f, 4.0f, 2.0f)); +} + +/** + * Widget constructor will describe my implementation structure and + * provide meta-data. + * This is not shared by all modules in the DLL, just one + */ +VocalFilterWidget::VocalFilterWidget(VocalFilterModule *module) : ModuleWidget(module) +{ + box.size = Vec(12 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT); + + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/formants_panel.svg"))); + addChild(panel); + } + + addVowelLabels(); + + const float mid = 70; // the middle area, with the four main knobs + const float rightOffsetY = 40; // right knobs drop this amount + const float row2L = mid + 20; //the first row of knobs + const float row2R = row2L + rightOffsetY; + const float row3L = row2L + rightOffsetY * 2; + const float row3R = row3L + rightOffsetY; + + const float col1 = 10; // the left hand strip of inputs and atternuverters + const float col2 = 50; // left column of big knobs + const float col3 = 100; + const float col4 = 146; // inputs and attv on right + + const float labelOffset = -18; // height of label above knob + const float dyUp = -14; // vertical space between input and atten + const float dyDn = 30; + + const float trimDyL = 1; // move atten down to match knob; + const float trimDyR = 22; // move atten down to match knob; + + const float trimDx = 3; // move to the right to match input + Label* label; + + addParam(ParamWidget::create( + Vec(col2, row2L), + module, module->vocalFilter.FILTER_VOWEL_PARAM, -5.0, 5.0, 0.0)); + addInput(Port::create( + Vec(col1, row2L + dyDn), + Port::INPUT, module, module->vocalFilter.FILTER_VOWEL_CV_INPUT)); + addParam(ParamWidget::create( + Vec(col1 + trimDx, row2L + trimDyL), + module, module->vocalFilter.FILTER_VOWEL_TRIM_PARAM, -1.0, 1.0, 1.0)); + + // Fc + label = new Label(); + label->box.pos = Vec(col3, row2R + labelOffset); + label->text = "Fc"; + label->color = COLOR_BLACK; + addChild(label); + addParam(ParamWidget::create(Vec(col3, row2R), module, module->vocalFilter.FILTER_FC_PARAM, -5.0, 5.0, 0.0)); + addInput(Port::create( + Vec(col4, row2R + dyUp), + Port::INPUT, module, module->vocalFilter.FILTER_FC_CV_INPUT)); + addParam(ParamWidget::create( + Vec(col4 + trimDx, row2R + trimDyR), + module, module->vocalFilter.FILTER_FC_TRIM_PARAM, -1.0, 1.0, 1.0)); + + // Q + label = new Label(); + label->box.pos = Vec(col2, row3L + labelOffset); + label->text = "Q"; + label->color = COLOR_BLACK; + addChild(label); + addParam(ParamWidget::create( + Vec(col2, row3L), + module, module->vocalFilter.FILTER_Q_PARAM, -5.0, 5.0, 0.0)); + addInput(Port::create( + Vec(col1, row3L + dyDn), + Port::INPUT, module, module->vocalFilter.FILTER_Q_CV_INPUT)); + addParam(ParamWidget::create( + Vec(col1 + trimDx, row3L + trimDyL), + module, module->vocalFilter.FILTER_Q_TRIM_PARAM, -1.0, 1.0, 1.0)); + + // Brightness + label = new Label(); + label->box.pos = Vec(col3, row3R + labelOffset); + label->text = "Brite"; + label->color = COLOR_BLACK; + addChild(label); + addParam(ParamWidget::create( + Vec(col3, row3R), + module, module->vocalFilter.FILTER_BRIGHTNESS_PARAM, -5.0, 5.0, 0.0)); + addInput(Port::create( + Vec(col4, row3R + dyUp), + Port::INPUT, module, module->vocalFilter.FILTER_BRIGHTNESS_INPUT)); + addParam(ParamWidget::create( + Vec(col4 + trimDx, row3R + trimDyR), + module, module->vocalFilter.FILTER_BRIGHTNESS_TRIM_PARAM, -1.0, 1.0, 1.0)); + + addModelKnob(module, 71, 274); + + // I.O on row bottom + const float AudioInputX = 10.0; + const float outputX = 140.0; + const float iOrow = 312; + const float ioLabelOffset = -19; + + label = new Label(); + label->box.pos = Vec(outputX - 6, iOrow + ioLabelOffset); + label->text = "Out"; + label->color = COLOR_WHITE; + addChild(label); + label = new Label(); + label->box.pos = Vec(AudioInputX - 1, iOrow + ioLabelOffset); + label->text = "In"; + label->color = COLOR_BLACK; + addChild(label); + addInput(Port::create(Vec(AudioInputX, iOrow), Port::INPUT, module, module->vocalFilter.AUDIO_INPUT)); + addOutput(Port::create(Vec(outputX, iOrow), Port::OUTPUT, module, module->vocalFilter.AUDIO_OUTPUT)); + + /************************************************* + * screws + */ + addChild(Widget::create(Vec(RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); +} + +RACK_PLUGIN_MODEL_INIT(squinkylabs_plug1, VocalFilter) { + Model *modelVocalFilterModule = Model::create("Squinky Labs", + "squinkylabs-vocalfilter", + "Vocal Filter", EFFECT_TAG, FILTER_TAG); + return modelVocalFilterModule; +} diff --git a/plugins/community/repos/squinkylabs-plug1/src/VocalModule.cpp b/plugins/community/repos/squinkylabs-plug1/src/VocalModule.cpp new file mode 100644 index 00000000..ce5576ea --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/src/VocalModule.cpp @@ -0,0 +1,200 @@ +#include "Squinky.hpp" +#include "WidgetComposite.h" +#include "VocalAnimator.h" + +/** + * Implementation class for VocalWidget + */ +struct VocalModule : Module +{ + VocalModule(); + + /** + * Overrides of Module functions + */ + void step() override; + void onSampleRateChange() override; + using Animator = VocalAnimator; + Animator animator; +private: + typedef float T; +}; + +VocalModule::VocalModule() : Module(animator.NUM_PARAMS, animator.NUM_INPUTS, animator.NUM_OUTPUTS, animator.NUM_LIGHTS), +animator(this) +{ + onSampleRateChange(); + animator.init(); +} + +void VocalModule::onSampleRateChange() +{ + T rate = engineGetSampleRate(); + animator.setSampleRate(rate); +} + +void VocalModule::step() +{ + animator.step(); +} + +//////////////////// +// module widget +//////////////////// + +struct VocalWidget : ModuleWidget +{ + VocalWidget(VocalModule *); +}; + +template +struct MuteLight : BASE +{ + MuteLight() + { + this->box.size = mm2px(Vec(6.0f, 6.0f)); + } +}; + +struct NKK2 : SVGSwitch, ToggleSwitch +{ + NKK2() + { + addFrame(SVG::load(assetGlobal("res/ComponentLibrary/NKK_0.svg"))); + addFrame(SVG::load(assetGlobal("res/ComponentLibrary/NKK_2.svg"))); + } +}; + +/** + * Widget constructor will describe my implementation structure and + * provide meta-data. + * This is not shared by all modules in the DLL, just one + */ +VocalWidget::VocalWidget(VocalModule *module) : ModuleWidget(module) +{ + const float width = 14 * RACK_GRID_WIDTH; + box.size = Vec(width, RACK_GRID_HEIGHT); + { + SVGPanel *panel = new SVGPanel(); + panel->box.size = box.size; + panel->setBackground(SVG::load(assetPlugin(plugin, "res/vocal_animator_panel.svg"))); + addChild(panel); + } + /** + * LEDs and LFO outputs + */ + + const float lfoBlockY = 38; // was 22. move down to make space + + const float ledX = width - 46; + const float ledY = lfoBlockY + 7.5; + const float ledSpacingY = 30; + + const float lfoOutY = lfoBlockY; + const float lfoOutX = width - 30; + + const float lfoInputX = 24; + const float lfoInputY = lfoBlockY + 0; + const float lfoTrimX = 68; + const float lfoTrimY = lfoInputY + 3; + + const float lfoRateKnobX = 100; + const float lfoRateKnobY = lfoBlockY + 24; + + addChild(ModuleLightWidget::create>( + Vec(ledX, ledY), module, module->animator.LFO0_LIGHT)); + addChild(ModuleLightWidget::create>( + Vec(ledX, ledY + ledSpacingY), module, module->animator.LFO1_LIGHT)); + addChild(ModuleLightWidget::create>( + Vec(ledX, ledY + 2 * ledSpacingY), module, module->animator.LFO2_LIGHT)); + + addOutput(Port::create( + Vec(lfoOutX, lfoOutY), Port::OUTPUT, module, VocalModule::Animator::LFO0_OUTPUT)); + addOutput(Port::create( + Vec(lfoOutX, lfoOutY + 1 * ledSpacingY), Port::OUTPUT, module, VocalModule::Animator::LFO1_OUTPUT)); + addOutput(Port::create( + Vec(lfoOutX, lfoOutY + 2 * ledSpacingY), Port::OUTPUT, module, VocalModule::Animator::LFO2_OUTPUT)); + + addParam(ParamWidget::create( + Vec(lfoRateKnobX, lfoRateKnobY), module, module->animator.LFO_RATE_PARAM, -5.0, 5.0, 0.0)); + + addInput(Port::create( + Vec(lfoInputX, lfoInputY), Port::INPUT, module, VocalModule::Animator::LFO_RATE_CV_INPUT)); + addParam(ParamWidget::create( + Vec(lfoTrimX, lfoTrimY), module, module->animator.LFO_RATE_TRIM_PARAM, -1.0, 1.0, 1.0)); + + // the matrix switch + addParam(ParamWidget::create( + Vec(42, 65), module, module->animator.LFO_MIX_PARAM, 0.0f, 2.0f, 0.0f)); + + /** + * Parameters and CV + */ + const float mainBlockY = 140; + const float mainBlockX = 20; + + const float colSpacingX = 64; + + const float knobX = mainBlockX + 0; + const float knobY = mainBlockY + 24; + + const float trimX = mainBlockX + 11; + const float trimY = mainBlockY + 78; + + const float inputX = mainBlockX + 8; + const float inputY = mainBlockY + 108; + + addParam(ParamWidget::create( + Vec(knobX, knobY), module, module->animator.FILTER_FC_PARAM, -5.0, 5.0, 0.0)); + addInput(Port::create( + Vec(inputX, inputY), Port::INPUT, module, VocalModule::Animator::FILTER_FC_CV_INPUT)); + addParam(ParamWidget::create( + Vec(trimX, trimY), module, module->animator.FILTER_FC_TRIM_PARAM, -1.0, 1.0, 1.0)); + + addParam(ParamWidget::create( + Vec(knobX + colSpacingX, knobY), module, module->animator.FILTER_Q_PARAM, -5.0, 5.0, 0.0)); + addInput(Port::create( + Vec(inputX + colSpacingX, inputY), Port::INPUT, module, VocalModule::Animator::FILTER_Q_CV_INPUT)); + addParam(ParamWidget::create( + Vec(trimX + colSpacingX, trimY), module, module->animator.FILTER_Q_TRIM_PARAM, -1.0, 1.0, 1.0)); + + addParam(ParamWidget::create( + Vec(knobX + 2 * colSpacingX, knobY), module, module->animator.FILTER_MOD_DEPTH_PARAM, -5.0, 5.0, 0.0)); + addInput(Port::create( + Vec(inputX + 2 * colSpacingX, inputY), Port::INPUT, module, VocalModule::Animator::FILTER_MOD_DEPTH_CV_INPUT)); + addParam(ParamWidget::create( + Vec(trimX + 2 * colSpacingX, trimY), module, module->animator.FILTER_MOD_DEPTH_TRIM_PARAM, -1.0, 1.0, 1.0)); + + const float row3 = 310; + + // I.O on row 3 + const float AudioInputX = inputX; + const float outputX = inputX + 2 * colSpacingX; + + addInput(Port::create( + Vec(AudioInputX, row3), Port::INPUT, module, VocalModule::Animator::AUDIO_INPUT)); + addOutput(Port::create( + Vec(outputX, row3), Port::OUTPUT, module, VocalModule::Animator::AUDIO_OUTPUT)); + + const float bassX = inputX + colSpacingX - 4; + const float bassY = row3 - 8; + + // the bass boost switch + addParam(ParamWidget::create( + Vec(bassX, bassY), module, module->animator.BASS_EXP_PARAM, 0.0f, 1.0f, 0.0f)); + + /************************************************* + * screws + */ + addChild(Widget::create(Vec(RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0))); + addChild(Widget::create(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); + addChild(Widget::create(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH))); +} + +RACK_PLUGIN_MODEL_INIT(squinkylabs_plug1, Vocal) { + Model *modelVocalModule = Model::create("Squinky Labs", + "squinkylabs-vocalanimator", + "Vocal Animator", EFFECT_TAG, FILTER_TAG, LFO_TAG, RANDOM_TAG); + return modelVocalModule; +} diff --git a/plugins/community/repos/squinkylabs-plug1/test.mk b/plugins/community/repos/squinkylabs-plug1/test.mk new file mode 100644 index 00000000..1cbc7e3e --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test.mk @@ -0,0 +1,67 @@ +# makefile fragment to make test.exe, the unit test program. +#include "../../arch.mk" +include $(RACK_DIR)/arch.mk + +TEST_SOURCES = $(wildcard test/*.cpp) +TEST_SOURCES += $(wildcard dsp/**/*.cpp) +TEST_SOURCES += $(wildcard dsp/third-party/falco/*.cpp) +TEST_SOURCES += $(wildcard sqsrc/**/*.cpp) +TEST_SOURCES += dsp/third-party/kiss_fft130/tools/kiss_fftr.c +TEST_SOURCES += dsp/third-party/kiss_fft130/kiss_fft.c + +## This is a list of full paths to the .o files we want to build +TEST_OBJECTS = $(patsubst %, build_test/%.o, $(TEST_SOURCES)) + +build_test/%.cpp.o: %.cpp + mkdir -p $(@D) + $(CXX) $(CXXFLAGS) -c -o $@ $< + +build_test/%.c.o: %.c + mkdir -p $(@D) + $(CXX) $(CXXFLAGS) -c -o $@ $< + +# Always define _PERF for the perf tests. +perf.exe : PERFFLAG = -D _PERF + +# Turn off asserts for perf, unless user overrides on command line +perf.exe : FLAGS += $(ASSERTOFF) + +FLAGS += $(PERFFLAG) + +ifeq ($(ARCH), win) + # don't need these yet + # -lcomdlg32 -lole32 -ldsound -lwinmm +test.exe perf.exe : LDFLAGS = -static \ + -mwindows \ + -lpthread -lopengl32 -lgdi32 -lws2_32 +endif + +ifeq ($(ARCH), lin) +test.exe perf.exe : LDFLAGS = -rdynamic \ + -lpthread -lGL -ldl \ + $(shell pkg-config --libs gtk+-2.0) +endif + +ifeq ($(ARCH), mac) +test.exe perf.exe : LDFLAGS = -stdlib=libc++ -lpthread -ldl \ + -framework Cocoa -framework OpenGL -framework IOKit -framework CoreVideo +endif + +test : test.exe + +## Note that perf and test targets both used build_test for object files, +## So you need to be careful to delete/clean when switching between the two. +## Consider fixing this in the future. +perf : perf.exe + +## cleantest will clean out all the test and perf build products +cleantest : + rm -rfv build_test + rm -fv test.exe + rm -fv perf.exe + +test.exe : $(TEST_OBJECTS) + $(CXX) -o $@ $^ $(LDFLAGS) + +perf.exe : $(TEST_OBJECTS) + $(CXX) -o $@ $^ $(LDFLAGS) \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/ExtremeTester.h b/plugins/community/repos/squinkylabs-plug1/test/ExtremeTester.h new file mode 100644 index 00000000..03b0eebb --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/ExtremeTester.h @@ -0,0 +1,126 @@ +#pragma once + +#include "asserts.h" +#include + +/** + * Utility class that counts up in binary using an array of ints to hold the bits. + * + */ +class BitCounter +{ +public: + void reset(int size) + { + done = false; + state.resize(size); + for (int i = 0; i < size; ++i) { + state[i] = 0; + } + } + bool atMax() const + { + for (size_t i = 0; i < state.size(); ++i) { + if (state[i] == 0) { + return false; + } + } + return true; + } + bool isDone() const + { + return done; + } + void next() + { + if (atMax()) { + done = true; + return; + } + state[0]++; + for (size_t i = 0; i < state.size(); ++i) { + if (state[i] > 1) { + state[i] = 0; + ++state[i + 1]; + } + } + + } + + template + void setState(std::vector& testSignal, const std::vector< std::pair>* signalLimits) + { + for (int i = (int) state.size() - 1; i >= 0; --i) { + float min = -10.f; + float max = 10.f; + if (signalLimits) { // here we want to clip these to the possible values of params + min = (*signalLimits)[i].first; + max = (*signalLimits)[i].second; + + assertNE(min, max); + assertGT(max, min); + } + testSignal[i].value = state[i] > 0 ? max : min; + } + } + + + void dump(const char * label) + { + printf("State (%s): ", label); + for (int i = (int) state.size() - 1; i >= 0; --i) { + printf("%d ", state[i]); + } + printf("\n"); + } +private: + std::vector state; + bool done; + +}; + + +/** +* Tests a composite by feeding all the inputs and parameters (in every possible permutation) +* with extreme inputs. Asserts that the output stays in a semi-sane range. +* Typically this test will fail by triggering an assert in some distant code. +*/ +template +class ExtremeTester +{ +public: + + static void test(T& dut, + const std::vector< std::pair>& paramLimits, + bool checkOutput, + const char * testName) + { + printf("extreme test starting for %s. %s ....\n", testName, checkOutput ? "test output" : ""); + const int numInputs = dut.NUM_INPUTS; + const int numParams = dut.NUM_PARAMS; + const int numOutputs = dut.NUM_OUTPUTS; + assert(numInputs < 20); + assertEQ(paramLimits.size(), numParams); + + const std::vector< std::pair> * nullLimits = nullptr; + BitCounter inputState; + BitCounter paramsState; + for (inputState.reset(numInputs); !inputState.isDone(); inputState.next()) { + inputState.setState(dut.inputs, nullLimits); + for (paramsState.reset(numParams); !paramsState.isDone(); paramsState.next()) { + paramsState.setState(dut.params, ¶mLimits); + for (int i = 0; i < 100; ++i) { + dut.step(); + for (int j = 0; j < numOutputs; ++j) { + const float out = dut.outputs[j].value; + if (checkOutput) { + assertGE(out, -150); + assertLE(out, 150); + } + } + } + } + } + printf("extreme test done\n"); + } +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/MeasureTime.h b/plugins/community/repos/squinkylabs-plug1/test/MeasureTime.h new file mode 100644 index 00000000..095f381c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/MeasureTime.h @@ -0,0 +1,145 @@ +#pragma once + +#include +#define __STDC_FORMAT_MACROS +#include +#include "TimeStatsCollector.h" + +template +class TestBuffers; + + +/** + * class MeasureTime. + * + * Used to estimate the amount of time a function takes to execute. + * Will run the function over and over in a tight loop. Return value of function + * is saved to testBuffers. Otherwise the compiler might optimize the whole thing away. + * Usually ends by printing out the data. + * + * One of that statistics printed out is "quota used per 1 percent". Here we are arbitrarily + * stating that a synthesizer module "should" use only one percent of the available audio processing CPU. + * This won't be the case for all plugins/developers, but certainly is a plausible benchmark. + * + * A big caveat to all this is that code running inside VCV Rack will most likely run slower than the + * same code running in at right loop. Some reasons are: + * - VCV's audio processing thread probably has some internal overheard, so + * it's unlikely that modules will get 100% of one core. + * - In a tight loop all the data you code references will probably end up in fast on-chip + * cache memory. In VCV your step function is called once, then all the other module's step + * functions are called. This may force your data out of cache. + */ +template +class MeasureTime +{ +public: + MeasureTime() = delete; // we are only static + + /** + * Executes function "func" and measures how long it takes. + * Will call func in a tight look lasting minTime seconds. + * When done, prints out statistics. + */ + static void run(const char * name, std::function func, float minTime) + { + int64_t iterations; + bool done = false; + + //keep increasing the number of iterations until we last at least minTime seconds + for (iterations = 100; !done; iterations *= 2) { + double elapsed = measureTimeSub(func, iterations); + if (elapsed >= minTime) { + double itersPerSec = iterations / elapsed; + double full = 44100; + double percent = full * 100 / itersPerSec; + printf("\nmeasure %s over time %f\n", name, minTime); + + printf("did %" PRId64 " iterations in %f seconds\n", iterations, elapsed); + printf("that's %f per sec\n", itersPerSec); + printf("percent CPU usage: %f\n", percent); + printf("best case instances: %f\n", 100 / percent); + printf("quota used per 1 percent : %f\n", percent * 100); + fflush(stdout); + done = true; + } + } + } + + /** + * Run test iterators time, return total seconds. + */ + static double measureTimeSub(std::function func, int64_t iterations) + { + const double t0 = SqTime::seconds(); + for (int64_t i = 0; i < iterations; ++i) { + const T x = func(); + TestBuffers::put(x); + } + + const double t1 = SqTime::seconds(); + const double elapsed = t1 - t0; + return elapsed; + } +}; + + +/** + * Simple producer / consumer for test data. + * Serves up a precalculated list of random numbers. + */ +template +class TestBuffers +{ +public: + static const size_t size = 60000; + static void put(T x) + { + destData[destIndex++] = x; + if (destIndex >= size) { + destIndex = 0; + } + } + static T get() + { + T ret = sourceData[sourceIndex++]; + if (sourceIndex >= size) { + sourceIndex = 0; + } + return ret; + } + // + TestBuffers() + { + for (int i = 0; i < size; ++i) { + sourceData[i] = (float) rand() / (float) RAND_MAX; + } + } +private: + static size_t sourceIndex; + static size_t destIndex; + static T sourceData[size]; + static T destData[size]; +}; + + +template +T TestBuffers::sourceData[size]; + +template +T TestBuffers::destData[size]; + +template +size_t TestBuffers::sourceIndex = 0; + +template +size_t TestBuffers::destIndex = 512; + + +/** + * Simple timer implementation for running inside Visual Studio + */ + + + + + diff --git a/plugins/community/repos/squinkylabs-plug1/test/SqTime.h b/plugins/community/repos/squinkylabs-plug1/test/SqTime.h new file mode 100644 index 00000000..f37b0e0d --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/SqTime.h @@ -0,0 +1,51 @@ +#pragma once +/** + * @class SqTime + * A simple high-res timer. Returns current seconds + */ + + + /** + * Windows version is based on QueryPerformanceFrequency + * Typically this is accurate to 1/3 microsecond. Can be made more + * accurate by tinkering with your bios + */ +#if defined(_MSC_VER) || defined(ARCH_WIN) +#include +class SqTime +{ +public: + static double seconds() + { + LARGE_INTEGER t; + if (frequency == 0) { + + QueryPerformanceFrequency(&t); + frequency = double(t.QuadPart); + } + + QueryPerformanceCounter(&t); + int64_t n = t.QuadPart; + return double(n) / frequency; + } +private: + static double frequency; +}; +double SqTime::frequency = 0; + +#else +#include +class SqTime +{ +public: + static double seconds() + { + struct timespec ts; + int x = clock_gettime(CLOCK_THREAD_CPUTIME_ID, &ts); + assert(x == 0); + + // seconds = sec + nsec / 10**9 + return double(ts.tv_sec) + double(ts.tv_nsec) / (1000.0 * 1000.0 * 1000.0); + } +}; +#endif diff --git a/plugins/community/repos/squinkylabs-plug1/test/TestSignal.h b/plugins/community/repos/squinkylabs-plug1/test/TestSignal.h new file mode 100644 index 00000000..aa51b8ce --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/TestSignal.h @@ -0,0 +1,89 @@ +#pragma once + +#include +#include + +/** + * Utilities for generating and analyzing test signals. + * + * All test signals are +-1volt unless otherwise specified + */ + +template +class TestSignal +{ +public: + TestSignal() = delete; // we are only static + // freq is normalized f / sr + static void generateSin(T * output, int numSamples, T freq); + static double getRMS(const T * signal, int numSamples); + + /** + * Measure the gain of a processing lambda at a specificed frequency + */ + static T measureGain(T freq, std::function func); + + /** + * Measure the RMS output of a generator lambda + */ + static double measureOutput(int samples, std::function func); +}; + + +template +inline void TestSignal::generateSin(T * output, int numSamples, T freq) +{ + assert(freq < .5); + assert(freq > 0); + + double phase = 0; + for (int i = 0; i < numSamples; ++i) { + const double phi = phase * 2 * AudioMath::Pi; + + output[i] = T(std::sin(phi)); + phase += freq; + // should we normalize the phase here, instead of letting it grow? + } +} + +template +inline double TestSignal::getRMS(const T * signal, int numSamples) +{ + assert(numSamples > 0); + double sumSq = 0; + for (int i = 0; i < numSamples; ++i) { + //printf("getRMS, i=%d, samp=%d\n") + sumSq += double(signal[i]) * signal[i]; + } + return std::sqrt(sumSq / numSamples); +} + +template +inline T TestSignal::measureGain(T freq, std::function func) +{ + const int size = 60000; + T input[size]; + T output[size]; + + //generateSin(T * output, int numSamples, T freq); + TestSignal::generateSin(input, size, freq); + for (int i = 0; i < size; ++i) { + output[i] = func(input[i]); + } + T vo = T(TestSignal::getRMS(output, size)); + T vi = T(TestSignal::getRMS(input, size)); + return vo / vi; +} + +template +inline double TestSignal::measureOutput(int numSamples, std::function func) +{ + //std::unique_ptr buffer(new T[numSamples]); + std::vector buffer(numSamples); + for (int i = 0; i < numSamples; ++i) { + buffer[i] = func(); + } + + return getRMS(buffer.data(), numSamples); + +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/TimeStatsCollector.h b/plugins/community/repos/squinkylabs-plug1/test/TimeStatsCollector.h new file mode 100644 index 00000000..7941afa0 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/TimeStatsCollector.h @@ -0,0 +1,72 @@ +#pragma once +#include "SqTime.h" + +/** + * Unfinished time class. Meant to be inserted into other code (like VCV Rack). + * Averages states over time. + * Will printf states every now and then. + * Many ways to improve this - printing from a different thread is one. + */ +class TimeStatsCollector +{ +public: + TimeStatsCollector() + { + } + + /** + * Instrumented code calls this to start a timing sample. + */ + void start() + { + startTime = SqTime::seconds(); + } + + /** + * Instrumented code calls this to step timing + * @param numLoops is the number of "events" since start was called. + */ + void stop(int numLoops) + { + const double stop = SqTime::seconds(); + const double delta = stop - startTime; + numDataPoints += numLoops; + totalTimeFrame += delta; + if (delta < minTime) { + minTime = delta; + } else if (delta > maxTime) { + maxTime = delta; + } + + if (numDataPoints > 1000) { + const double avgTime = totalTimeFrame / numDataPoints; + const double srTime = (1.0 / 44100.0); + const double ratio = avgTime / srTime; + totalTimeGlobal += avgTime; + numFramesInTotal++; + + double runningAvg = totalTimeGlobal / (numFramesInTotal * srTime); + + printf("\nsrTime=%f avtTime=%f\n", srTime, avgTime); + printf("this block: %f%% min=%f max=%f globalmax=%f running avg=%f\n", + ratio * 100, minTime, maxTime, globalMax, runningAvg * 100); + if (globalMax < maxTime) { + globalMax = maxTime; + } + numDataPoints=0; + totalTimeFrame = 0; + minTime = 1000000000; + maxTime = -100000000000; + } + } + +private: + int numDataPoints = 0; // number of samples in current frame. + double totalTimeFrame = 0; // Time spent in the test code this frame. + double startTime; // Start time if current sample + double minTime = 1000000000; // shorted time observed in current frame + double maxTime = -100000000000;// longest time observed in current frame. + double globalMax = -100000000000; + double totalTimeGlobal = 0; + int numFramesInTotal = 0; +}; \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/asserts.h b/plugins/community/repos/squinkylabs-plug1/test/asserts.h new file mode 100644 index 00000000..66f5bf7e --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/asserts.h @@ -0,0 +1,57 @@ +#pragma once + +#include "AudioMath.h" + +#include +#include + +/** + * Our own little assert library, loosely inspired by Chai Assert. + * + * Will print information on failure, then generate a "real" assertion + */ + + +#define assertEQEx(actual, expected, msg) if (actual != expected) { \ + std::cout << "assertEq failed " << msg << " actual value =" << \ + actual << " expected=" << expected << std::endl; \ + assert(false); } + +#define assertEQ(actual, expected) assertEQEx(actual, expected, "") + +#define assertNEEx(actual, expected, msg) if (actual == expected) { \ + std::cout << "assertNE failed " << msg << " did not expect " << \ + actual << " to be == to " << expected << std::endl; \ + assert(false); } + +#define assertNE(actual, expected) assertNEEx(actual, expected, "") + +#define assertClose(actual, expected, diff) if (!AudioMath::closeTo(actual, expected, diff)) { \ + std::cout << "assertClose failed actual value =" << \ + actual << " expected=" << expected << std::endl << std::flush; \ + assert(false); } + + +// assert less than +#define assertLT(actual, expected) if ( actual >= expected) { \ + std::cout << "assertLt " << expected << " actual value = " << \ + actual << std::endl ; \ + assert(false); } + +// assert less than or equal to +#define assertLE(actual, expected) if ( actual > expected) { \ + std::cout << "assertLE " << expected << " actual value = " << \ + actual << std::endl ; \ + assert(false); } + +// assert greater than +#define assertGT(actual, expected) if ( actual <= expected) { \ + std::cout << "assertGT " << expected << " actual value = " << \ + actual << std::endl ; \ + assert(false); } +// assert greater than or equal to +#define assertGE(actual, expected) if ( actual < expected) { \ + std::cout << "assertGE " << expected << " actual value = " << \ + actual << std::endl ; \ + assert(false); } +// leave space after macro \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/main.cpp b/plugins/community/repos/squinkylabs-plug1/test/main.cpp new file mode 100644 index 00000000..3629eaaf --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/main.cpp @@ -0,0 +1,90 @@ +/** + * Unit test entry point + */ + +#include +#include +#include + +extern void testBiquad(); +extern void testTestSignal(); +extern void testSaw(); +extern void testLookupTable(); +extern void testSinOscillator(); +extern void testHilbert(); +extern void testAudioMath(); +extern void perfTest(); +extern void testFrequencyShifter(); +extern void testStateVariable(); +extern void testVocalAnimator(); +extern void testObjectCache(); +extern void testThread(bool exended); +extern void testFFT(); +extern void testRingBuffer(); +extern void testManagedPool(); +extern void testColoredNoise(); +extern void testFFTCrossFader(); +extern void testFinalLeaks(); +extern void testClockMult(); +extern void testTremolo(); +extern void testGateTrigger(); + +int main(int argc, char ** argv) +{ + bool runPerf = false; + bool extended = false; + if (argc > 1) { + std::string arg = argv[1]; + if (arg == "--ext") { + extended = true; + } + } +#ifdef _PERF + runPerf = true; +#ifndef NDEBUG +#error asserts should be off for perf test +#endif +#endif + // While this code may work in 32 bit applications, it's not tested for that. + // Want to be sure we are testing the case we care about. + assert(sizeof(size_t) == 8); + + testAudioMath(); + testRingBuffer(); + testGateTrigger(); + testManagedPool(); + testLookupTable(); + testObjectCache(); + testTestSignal(); + testBiquad(); + testSaw(); + testClockMult(); + + testSinOscillator(); + testHilbert(); + testStateVariable(); + + testFFT(); + testFFTCrossFader(); + testThread(extended); + + // after testing all the components, test composites. + testTremolo(); + testColoredNoise(); + testFrequencyShifter(); + testVocalAnimator(); + + if (runPerf) { + perfTest(); + } + + testFinalLeaks(); + + // When we run inside Visual Studio, don't exit debugger immediately +#if defined(_MSC_VER) + printf("Test passed. Press any key to continue...\n"); fflush(stdout); + getchar(); +#else + printf("Tests passed.\n"); +#endif +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/perfTest.cpp b/plugins/community/repos/squinkylabs-plug1/test/perfTest.cpp new file mode 100644 index 00000000..d1569819 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/perfTest.cpp @@ -0,0 +1,267 @@ +#include +#include +#include +#include + +#include "AudioMath.h" +#include "BiquadParams.h" +#include "BiquadFilter.h" +#include "BiquadState.h" +#include "ColoredNoise.h" +#include "FrequencyShifter.h" +#include "HilbertFilterDesigner.h" +#include "LookupTableFactory.h" +#include "TestComposite.h" +#include "Tremolo.h" +#include "VocalAnimator.h" +#include "VocalFilter.h" + +using Shifter = FrequencyShifter; +using Animator = VocalAnimator; +using VocFilter = VocalFilter; +using Colors = ColoredNoise; +using Trem = Tremolo; + +#include "MeasureTime.h" + +// There are many tests that are disabled with #if 0. +// In most cases they still work, but don't need to be run regularly + +#if 0 +static void test1() +{ + double d = .1; + srand(57); + const double scale = 1.0 / RAND_MAX; + + MeasureTime::run("test1 (do nothing)", [&d, scale]() { + return TestBuffers::get(); + }, 1); + + MeasureTime::run("test1 sin", []() { + float x = std::sin(TestBuffers::get()); + return x; + }, 1); + + MeasureTime::run("test1 sin double", []() { + float x = std::sin(TestBuffers::get()); + return x; + }, 1); + + MeasureTime::run("test1 sinx2 float", []() { + float x = std::sin(TestBuffers::get()); + x = std::sin(x); + return x; + }, 1); + + MeasureTime::run("mult float-10", []() { + float x = TestBuffers::get(); + float y = TestBuffers::get(); + return x * y; + }, 10); + + MeasureTime::run("mult dbl", []() { + double x = TestBuffers::get(); + double y = TestBuffers::get(); + return x * y; + }, 1); + + MeasureTime::run("div float", []() { + float x = TestBuffers::get(); + float y = TestBuffers::get(); + return x / y; + }, 1); + + MeasureTime::run("div dbl", []() { + double x = TestBuffers::get(); + double y = TestBuffers::get(); + return x / y; + }, 1); + + MeasureTime::run("test1 (do nothing)", [&d, scale]() { + return TestBuffers::get(); + }, 1); + + MeasureTime::run("test1 pow2 float", []() { + float x = std::pow(2, TestBuffers::get()); + return x; + }, 1); + MeasureTime::run("test1 pow rnd float", []() { + float x = std::pow(TestBuffers::get(), TestBuffers::get()); + return x; + }, 1); + + MeasureTime::run("test1 exp float", []() { + float x = std::exp(TestBuffers::get()); + return x; + }, 1); +} +#endif + +template +static void testHilbert() +{ + BiquadParams paramsSin; + BiquadParams paramsCos; + BiquadState state; + HilbertFilterDesigner::design(44100, paramsSin, paramsCos); + + MeasureTime::run("hilbert", [&state, ¶msSin]() { + + T d = BiquadFilter::run(TestBuffers::get(), state, paramsSin); + return d; + }, 1); +} + +#if 0 +static void testExpRange() +{ + using T = float; + LookupTableParams table; + LookupTableFactory::makeExp2(table); + + MeasureTime::run("exp lookup", [&table]() { + + T d = LookupTable::lookup(table, TestBuffers::get()); + return d; + }, 1); +} +#endif + +static void testShifter() +{ + Shifter fs; + + fs.setSampleRate(44100); + fs.init(); + + fs.inputs[Shifter::AUDIO_INPUT].value = 0; + + MeasureTime::run("shifter", [&fs]() { + fs.inputs[Shifter::AUDIO_INPUT].value = TestBuffers::get(); + fs.step(); + return fs.outputs[Shifter::SIN_OUTPUT].value; + }, 1); +} + +static void testAnimator() +{ + Animator an; + + an.setSampleRate(44100); + an.init(); + + an.inputs[Shifter::AUDIO_INPUT].value = 0; + + MeasureTime::run("animator", [&an]() { + an.inputs[Shifter::AUDIO_INPUT].value = TestBuffers::get(); + an.step(); + return an.outputs[Shifter::SIN_OUTPUT].value; + }, 1); +} + + +static void testVocalFilter() +{ + VocFilter an; + + an.setSampleRate(44100); + an.init(); + + an.inputs[Shifter::AUDIO_INPUT].value = 0; + + MeasureTime::run("vocal filter", [&an]() { + an.inputs[Shifter::AUDIO_INPUT].value = TestBuffers::get(); + an.step(); + return an.outputs[Shifter::SIN_OUTPUT].value; + }, 1); +} + + + +static void testColors() +{ + Colors co; + + co.setSampleRate(44100); + co.init(); + + + MeasureTime::run("colors", [&co]() { + co.step(); + return co.outputs[Colors::AUDIO_OUTPUT].value; + }, 1); +} + +static void testTremolo() +{ + Trem tr; + + tr.setSampleRate(44100); + tr.init(); + + + MeasureTime::run("trem", [&tr]() { + tr.inputs[Trem::AUDIO_INPUT].value = TestBuffers::get(); + tr.step(); + return tr.outputs[Trem::AUDIO_OUTPUT].value; + }, 1); +} + +#if 0 +static void testAttenuverters() +{ + auto scaler = AudioMath::makeLinearScaler(-2, 2); + MeasureTime::run("linear scaler", [&scaler]() { + float cv = TestBuffers::get(); + float knob = TestBuffers::get(); + float trim = TestBuffers::get(); + return scaler(cv, knob, trim); + }, 1); + + LookupTableParams lookup; + LookupTableFactory::makeBipolarAudioTaper(lookup); + MeasureTime::run("bipolar lookup", [&lookup]() { + float x = TestBuffers::get(); + return LookupTable::lookup(lookup, x); + }, 1); + + + // auto refFuncPos = AudioMath::makeFunc_AudioTaper(LookupTableFactory::audioTaperKnee()); + + { + + auto bipolarScaler = [&lookup, &scaler](float cv, float knob, float trim) { + float scaledTrim = LookupTable::lookup(lookup, cv); + return scaler(cv, knob, scaledTrim); + }; + + MeasureTime::run("bipolar scaler", [&bipolarScaler]() { + float cv = TestBuffers::get(); + float knob = TestBuffers::get(); + float trim = TestBuffers::get(); + return bipolarScaler(cv, knob, trim); + }, 1); + } +} +#endif + +void perfTest() +{ +#if 0 + testAttenuverters(); + testExpRange(); +#endif + testVocalFilter(); + testAnimator(); + testShifter(); + + testColors(); + testTremolo(); + + // test1(); +#if 0 + testHilbert(); + testHilbert(); +#endif +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testAudioMath.cpp b/plugins/community/repos/squinkylabs-plug1/test/testAudioMath.cpp new file mode 100644 index 00000000..5b8d1827 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testAudioMath.cpp @@ -0,0 +1,125 @@ + +#include +#include + +#include "asserts.h" +#include "AudioMath.h" +#include "LookupTableFactory.h" + +using namespace std; + +static void test0() +{ + assert(AudioMath::closeTo(0, 0, .000001)); + assert(AudioMath::closeTo(1000, 1001, 1.1)); + assert(!AudioMath::closeTo(1000, 1010, 1.1)); + assert(!AudioMath::closeTo(1010, 1000, 1.1)); +} + +static void test1() +{ + assert(AudioMath::closeTo(3.145, AudioMath::Pi, .1)); + assert(AudioMath::closeTo(3.145 / 2, AudioMath::Pi_2, .1)); + assert(AudioMath::closeTo(log(10), AudioMath::Ln10, .001)); +} + +static void test2() +{ + const double d = .0001; + std::function f = AudioMath::makeFunc_Sin(); + assert(AudioMath::closeTo(f(0), 0, d)); + assert(AudioMath::closeTo(f(.5), 0, d)); + assert(AudioMath::closeTo(f(.25), 1, d)); + assert(AudioMath::closeTo(f(.75), -1, d)); + assert(AudioMath::closeTo(f(.125), 1.0 / sqrt(2), d)); +} + +static void test3() +{ + const double d = .0001; + std::function f = AudioMath::makeFunc_Exp(0, 4, 2, 32); + + assert(AudioMath::closeTo(f(0), 2, d)); + assert(AudioMath::closeTo(f(1), 4, d)); + assert(AudioMath::closeTo(f(2), 8, d)); + assert(AudioMath::closeTo(f(3), 16, d)); + assert(AudioMath::closeTo(f(4), 32, d)); + assert(f(5) > 33); + assert(f(-1) < 1.5); +} + +static void testAudioTaper() +{ + double db = -18; + std::function f = AudioMath::makeFunc_AudioTaper(db); + assertClose(f(1), 1, .001); + assertClose(f(.25), .125, .001); + assertClose(f(.251), .126, .001); + assertClose(f(.249), 1.0 / 8.0, .001); + assertClose(f(0), 0, .001); +} + +static void testScaler() +{ + AudioMath::ScaleFun f = AudioMath::makeLinearScaler(3, 4); + // scale(cv, knob, trim + + // knob comes through only shifted + assertEQ(f(0, -5, 0), 3.); + assertEQ(f(0, 5, 0), 4.); + assertEQ(f(0, 0, 0), 3.5); + + // cv also come through, it trim up + assertEQ(f(-5, 0, 1), 3.); + assertEQ(f(5, 0, 1), 4.); + assertEQ(f(0, 0, 1), 3.5); + + // no cv if trim 0 + assertEQ(f(-5, 0, 0), 3.5); + + // neg trim inverts cv + assertEQ(f(-5, 0, -1), 4.); + + + // trim half way + assertEQ(f(5, 0, .5), 3.75); +} + +static void testBipolarAudioScaler() +{ + AudioMath::ScaleFun f = AudioMath::makeBipolarAudioScaler(3, 4); + // scale(cv, knob, trim + + // knob comes through only shifted + assertEQ(f(0, -5, 0), 3.); + assertEQ(f(0, 5, 0), 4.); + assertEQ(f(0, 0, 0), 3.5); + + // cv also come through, it trim up + assertEQ(f(-5, 0, 1), 3.); + assertEQ(f(5, 0, 1), 4.); + assertEQ(f(0, 0, 1), 3.5); + + // no cv if trim 0 + assertEQ(f(-5, 0, 0), 3.5); + + // neg trim inverts cv + assertEQ(f(-5, 0, -1), 4.); + + // trim quarter - should be audio knee + auto f2 = AudioMath::makeBipolarAudioScaler(-1, 1); + float x = f2(5, 0, .25); + float y = (float) AudioMath::gainFromDb(LookupTableFactory::audioTaperKnee()); + assertClose(x, y, .001); +} + +void testAudioMath() +{ + test0(); + test1(); + test2(); + test3(); + testAudioTaper(); + testScaler(); + testBipolarAudioScaler(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testBiquad.cpp b/plugins/community/repos/squinkylabs-plug1/test/testBiquad.cpp new file mode 100644 index 00000000..5f78d681 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testBiquad.cpp @@ -0,0 +1,208 @@ +/** + * + */ + +#include +#include + +#include "ButterworthFilterDesigner.h" +#include "BiquadFilter.h" +#include "BiquadFilter.h" +#include "BiquadParams.h" +#include "BiquadParams.h" +#include "BiquadState.h" +#include "BiquadState.h" + + +template +static void testState_0() +{ + BiquadState p; + for (int i = 0; i < N; ++i) { + assert(p.z0(i) == 0); + assert(p.z1(i) == 0); + } + p.z0(0) = 5; + p.z1(0) = 6; + assert(p.z0(0) == 5); + assert(p.z1(0) == 6); + + if (N > 1) { + p.z0(N - 1) = 55; + p.z1(N - 1) = 66; + assert(p.z0(N - 1) == 55); + assert(p.z1(N - 1) == 66); + } + + assert(p.z0(0) == 5); + assert(p.z1(0) == 6); +} + +template +static void testParam_0() +{ + + BiquadParams p; + for (int i = 0; i < N; ++i) { + assert(p.A2(i) == 0); + assert(p.A1(i) == 0); + assert(p.B0(i) == 0); + assert(p.B1(i) == 0); + assert(p.B2(i) == 0); + } + + p.A1(0) = 1; + p.A2(0) = 2; + p.B0(0) = 10; + p.B1(0) = 11; + p.B2(0) = 12; + + assert(p.A1(0) == 1); + assert(p.A2(0) == 2); + assert(p.B0(0) == 10); + assert(p.B1(0) == 11); + assert(p.B2(0) == 12); + + if (N > 1) { + p.A1(N - 1) = 111; + p.A2(N - 1) = 112; + p.B0(N - 1) = 1110; + p.B1(N - 1) = 1111; + p.B2(N - 1) = 1112; + + assert(p.A1(N - 1) == 111); + assert(p.A2(N - 1) == 112); + assert(p.B0(N - 1) == 1110); + assert(p.B1(N - 1) == 1111); + assert(p.B2(N - 1) == 1112); + } + + assert(p.A1(0) == 1); + assert(p.A2(0) == 2); + assert(p.B0(0) == 10); + assert(p.B1(0) == 11); + assert(p.B2(0) == 12); +} + +template +static void test2() +{ + BiquadParams p; + ButterworthFilterDesigner::designThreePoleLowpass(p, T(.1)); + BiquadState s; + T d = BiquadFilter::run(0, s, p); + (void) d; +} + +// test that filter designer does something (more than just generate zero +template +static void testBasicDesigner2() +{ + BiquadParams p; + ButterworthFilterDesigner::designTwoPoleLowpass(p, T(.1)); + assert(p.A1(0) != 0); + assert(p.A2(0) != 0); + assert(p.B1(0) != 0); + assert(p.B2(0) != 0); + assert(p.B0(0) != 0); +} + +// test that filter designer does something (more than just generate zero +template +static void testBasicDesigner3() +{ + BiquadParams p; + ButterworthFilterDesigner::designThreePoleLowpass(p, T(.1)); + assert(p.A1(0) != 0); + assert(p.A2(0) != 0); + assert(p.B1(0) != 0); + assert(p.B2(0) != 0); + assert(p.B0(0) != 0); +} + +// test that filter does something +template +static void testBasicFilter2() +{ + BiquadParams params; + BiquadState state; + ButterworthFilterDesigner::designTwoPoleLowpass(params, T(.1)); + + T lastValue = -1; + + // the first five values of the step increase + for (int i = 0; i < 100; ++i) { + T temp = BiquadFilter::run(1, state, params); + if (i < 5) { + // the first 5 are strictly increasing and below 1 + assert(temp < 1); + assert(temp > lastValue); + } else if (i < 10) { + // the next are all overshoot + assert(temp > 1 && temp < 1.05); + } else if (i > 50) { + //settled + assert(temp > .999 && temp < 1.001); + } + + lastValue = temp; + } + const T val = BiquadFilter::run(1, state, params); + (void) val; + +} + +// test that filter does something +template +static void testBasicFilter3() +{ + BiquadParams params; + BiquadState state; + ButterworthFilterDesigner::designThreePoleLowpass(params, T(.1)); + + T lastValue = 1; + + //the first five values of the step decrease (to -1) + for (int i = 0; i < 100; ++i) { + T temp = BiquadFilter::run(1, state, params); + + if (i < 6) { + // the first 5 are strictly increasing and below 1 + assert(temp > -1); + assert(temp < lastValue); + } else if (i < 10) { + // the next are all overshoot + assert(temp < -1); + assert(temp > -1.1); + } else if (i > 400) { + //settled + assert(temp < -.999 && temp > -1.001); + } + lastValue = temp; + } +} + + +void testBiquad() +{ + testState_0(); + testState_0(); + + testParam_0(); + testParam_0(); + + test2(); + test2(); + + testBasicDesigner2(); + testBasicDesigner2(); + testBasicDesigner3(); + testBasicDesigner3(); + + testBasicFilter2(); + testBasicFilter2(); + testBasicFilter3(); + testBasicFilter3(); + + // TODO: actually measure the freq resp +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testClockMult.cpp b/plugins/community/repos/squinkylabs-plug1/test/testClockMult.cpp new file mode 100644 index 00000000..1440c4c4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testClockMult.cpp @@ -0,0 +1,180 @@ + +#include +#include "asserts.h" + +#include "ClockMult.h" +#include "TestComposite.h" +#include "Tremolo.h" + + +/** + * During training, we should get no output. + * On first ref-clock after training, should go high + */ +static void test0() +{ + ClockMult cm; + cm.setMultiplier(1); + const int period = 4; + + // printf("test0, 0\n"); + cm.refClock(); // give it an external clock + + // printf("test0, 1\n"); + // train with 4 ref clocks() + for (int i = 0; i < period; ++i) { + cm.sampleClock(); + assertEQ(cm.getSaw(), 0); + assertEQ(cm.getMultipliedClock(), false); + // printf("test0, 2\n"); + + } + + // send ref-clock now to set period at 4 and start clocking + cm.refClock(); + assertEQ(cm.getSaw(), 0); + assertEQ(cm.getMultipliedClock(), true); + assertClose(cm._getFreq(), .25f, .000001); +} + + +/** + * Test synched saw output + */ +static void test1() +{ + ClockMult cm; + cm.setMultiplier(1); + const int period = 4; + + // printf("test0, 0\n"); + cm.refClock(); // give it an external clock + + // printf("test0, 1\n"); + // train with 4 ref clocks() + for (int i = 0; i < period; ++i) { + cm.sampleClock(); + assertEQ(cm.getSaw(), 0); + assertEQ(cm.getMultipliedClock(), false); + // printf("test0, 2\n"); + + } + + // send ref-clock now to set period at 4 and start clocking + cm.refClock(); + assertEQ(cm.getSaw(), 0); + assertEQ(cm.getMultipliedClock(), true); + assertClose(cm._getFreq(), .25f, .000001); + + for (int i = 0; i < period - 1; ++i) { + cm.sampleClock(); + // printf("in loop, i=%d, saw=%f\n", i, cm.getSaw()); + assertEQ(cm.getSaw(), .25 * (i + 1)); + assertEQ(cm.getMultipliedClock(), true); + } +} + +/** + * Test free running + */ +static void test2() +{ + ClockMult cm; + cm.setMultiplier(0); + cm.setFreeRunFreq(.1f); + + assertEQ(cm.getSaw(), 0); + for (int i = 0; i < 9; ++i) { + cm.sampleClock(); + assertClose(cm.getSaw(), (i + 1) * .1f, .0001); + } + cm.sampleClock(); + assertClose(cm.getSaw(), 0, .0001); + for (int i = 0; i < 9; ++i) { + cm.sampleClock(); + assertClose(cm.getSaw(), (i + 1) * .1f, .0001); + } +} + + +/** +* Test free running, no interference from ref clock +*/ +static void test4() +{ + ClockMult cm; + cm.setMultiplier(0); + cm.setFreeRunFreq(.1f); + + assertEQ(cm.getSaw(), 0); + for (int i = 0; i < 9; ++i) { + cm.sampleClock(); + cm.refClock(); + assertClose(cm.getSaw(), (i + 1) * .1f, .0001); + } + cm.sampleClock(); + assertClose(cm.getSaw(), 0, .0001); + for (int i = 0; i < 9; ++i) { + cm.refClock(); + cm.sampleClock(); + assertClose(cm.getSaw(), (i + 1) * .1f, .0001); + } +} +/** +* Test synched saw output long term, no jitter +*/ +static void test3(int mult) +{ + + ClockMult cm; + cm.setMultiplier(mult); + + // ref clock period. + const int period = 4 * mult; + + + cm.refClock(); // give it an external clock + + // train with period of ref clocks() + for (int i = 0; i < period; ++i) { + cm.sampleClock(); + assertEQ(cm.getSaw(), 0); + assertEQ(cm.getMultipliedClock(), false); + } + + for (int j = 0; j < 2; ++j) { + // send ref-clock now to set period at 4 and start clocking + cm.refClock(); + + assertEQ(cm.getSaw(), 0); + + assertEQ(cm.getMultipliedClock(), true); + assertClose(cm._getFreq(), .25f, .000001); + + for (int i = 0; i < period; ++i) { + cm.sampleClock(); + //printf("in loop, i=%d saw = %f\n", i, cm.getSaw()); + float expectedSaw = .25f * (i + 1); + while (expectedSaw >= 1) { + expectedSaw -= 1.f; + } + assertClose(cm.getSaw(), expectedSaw, .0001); + + // clock out not working yet + // assertEQ(cm.getMultipliedClock(), true); + } + } +} + +void testClockMult() +{ + test0(); + test1(); + test2(); + test4(); + test3(1); + test3(2); + test3(3); + test3(4); + +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testColoredNoise.cpp b/plugins/community/repos/squinkylabs-plug1/test/testColoredNoise.cpp new file mode 100644 index 00000000..50ffede8 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testColoredNoise.cpp @@ -0,0 +1,96 @@ + +#include "ColoredNoise.h" +#include "TestComposite.h" +#include "asserts.h" + +extern void testFinalLeaks(); + +using Noise = ColoredNoise; + +// bring it up and process a bit. +static void test0() +{ + assertEQ(ThreadServer::_count, 0); + assertEQ(FFTDataCpx::_count, 0); + { + Noise cn; + cn.init(); + // calling step should get client to request an FFT frame + + while (cn._msgCount() < 1) { + cn.step(); + + } + } + assertEQ(ThreadServer::_count, 0); + assertEQ(FFTDataCpx::_count, 0); +} + +// porcess until audio comes out +static void test1() +{ + Noise cn; + cn.init(); + // calling step should get client to request an FFT frame + int num = 0; + bool started = false; + for (bool done = false; !done; ) { + cn.step(); + const float output = cn.outputs[Noise::AUDIO_OUTPUT].value; + if (output > .1) {; + started = true; + } + assert(output < 10); + assert(output > -10); + if (started) { + num++; + if (num > 100000) { + done = true; + } + } + } +} + + +// try to request a few different kinds of noise +static void test2() +{ + Noise cn; + cn.init(); + while (cn._msgCount() < 1) { + cn.step(); + } + cn.params[Noise::SLOPE_PARAM].value = -6; + while (cn._msgCount() < 2) { + cn.step(); + } + cn.params[Noise::SLOPE_PARAM].value = 3; + while (cn._msgCount() < 3) { + cn.step(); + } + cn.params[Noise::SLOPE_PARAM].value = 2; + while (cn._msgCount() < 4) { + cn.step(); + } + cn.params[Noise::SLOPE_PARAM].value = 2.3f; + while (cn._msgCount() < 5) { + cn.step(); + } + cn.params[Noise::SLOPE_PARAM].value = 2.5f; + while (cn._msgCount() < 6) { + cn.step(); + } + cn.params[Noise::SLOPE_PARAM].value = -1.2f; + while (cn._msgCount() < 7) { + cn.step(); + } +} + +void testColoredNoise() +{ + + test0(); + test1(); + test2(); + testFinalLeaks(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testFFT.cpp b/plugins/community/repos/squinkylabs-plug1/test/testFFT.cpp new file mode 100644 index 00000000..636b63b6 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testFFT.cpp @@ -0,0 +1,292 @@ + +#include "asserts.h" +#include +#include + +#include "AudioMath.h" +#include "FFTData.h" +#include "FFT.h" + +extern void testFinalLeaks(); + +static void testAccessors() +{ + FFTDataReal d0(16); + + d0.set(0, 4); + assertEQ(d0.get(0), 4); + + FFTDataCpx dc(16); + + cpx x(3, 4); + dc.set(5, x); + assertEQ(dc.get(5), x); +} + +static void testFFTErrors() +{ + FFTDataReal real(16); + FFTDataCpx cpx(15); + const bool b = FFT::forward(&cpx, real); + assert(!b); // should error if size mismatch +} + +static void testForwardFFT_DC() +{ + FFTDataReal real(16); + FFTDataCpx complex(16); + + // set real for DC + for (int i = 0; i < 16; ++i) { + real.set(i, 1.0); + } + const bool b = FFT::forward(&complex, real); + assert(b); + + for (int i = 0; i < 16; ++i) { + cpx v = complex.get(i); + float mag = std::abs(v); + float expect = (i == 0) ? 1.f : 0.f; + assertEQ(mag, expect); + } +} + +static void test3() +{ + FFTDataReal real(16); + FFTDataCpx complex(16); + + // set real for fundamental sin. + // make peak 2.0 so fft will come out to one + for (int i = 0; i < 16; ++i) { + auto x = 2.0 *sin(AudioMath::Pi * 2.0 * i / 16.0); + real.set(i, float(x)); + } + const bool b = FFT::forward(&complex, real); + assert(b); + + for (int i = 0; i < 16; ++i) { + cpx v = complex.get(i); + float mag = std::abs(v); + + float expect = (i == 1) ? 1.f : 0.f; + assertClose(mag, expect, .0001); + } +} + + +static void testRoundTrip() +{ + FFTDataReal realIn(16); + FFTDataReal realOut(16); + FFTDataCpx complex(16); + + // set real for DC + for (int i = 0; i < 16; ++i) { + realIn.set(i, 1.0); + } + + bool b = FFT::forward(&complex, realIn); + assert(b); + b = FFT::inverse(&realOut, complex); + + for (int i = 0; i < 16; ++i) { + + float expect = 1.f; // scaled DC (TODO: fix scaling) + assertEQ(realOut.get(i) , expect); + } +} + + +static void testNoiseFormula() +{ + const int bins = 64 * 1024 ; + std::unique_ptr data(new FFTDataCpx(bins)); + assertEQ(data->size(), bins); + + FFT::makeNoiseSpectrum(data.get(), ColoredNoiseSpec()); + + std::set phases; + + for (int i = 0; i < bins; ++i) { + const cpx x = data->get(i); + float mag = std::abs(x); + float phase = std::arg(x); + + const float expectedMag = (i == 0) ? 0.f : (i < (bins / 2)) ? 1.f : 0.f; + + assertClose(mag, expectedMag, .0001); + phases.insert(phase); + } +} + +static float getPeak(const FFTDataReal& data) +{ + float peak = 0; + for (int i = 0; i < data.size(); ++i) { + peak = std::max(peak, std::abs(data.get(i))); + } + return peak; +} + + +static void testWhiteNoiseRT() +{ + const int bins = 2048; + std::unique_ptr noiseSpectrum(new FFTDataCpx(bins)); + std::unique_ptr noiseRealSignal(new FFTDataReal(bins)); + std::unique_ptr noiseSpectrum2(new FFTDataCpx(bins)); + + for (int i = 0; i < bins; ++i) { + cpx x(0,0); + noiseSpectrum2->set(i, x); + } + + FFT::makeNoiseSpectrum(noiseSpectrum.get(), ColoredNoiseSpec()); + + FFT::inverse(noiseRealSignal.get(), *noiseSpectrum); + + FFT::forward(noiseSpectrum2.get(), *noiseRealSignal); + + float totalPhase = 0; + float minPhase = 0; + float maxPhase = 0; + for (int i = 0; i < bins/2; ++i) { + float expected = (i == 0) ? 0.f : 1.f; + cpx data = noiseSpectrum2->get(i); + + assertClose(std::abs(data), expected, .0001); + const float phase = std::arg(data); + totalPhase += phase; + minPhase = std::min(phase, minPhase); + maxPhase = std::max(phase, maxPhase); + + //printf("phase[%d] = %f\n", i, std::arg(data)); + } + //printf("TODO: assert on phase\n"); + //printf("total phase=%f, average=%f\n", totalPhase, totalPhase / (bins / 2)); + //printf("maxPhase %f min %f\n", maxPhase, minPhase); +} + +static void testNoiseRTSub(int bins) +{ + std::unique_ptr dataCpx(new FFTDataCpx(bins)); + std::unique_ptr dataReal(new FFTDataReal(bins)); + assertEQ(dataCpx->size(), bins); + FFT::makeNoiseSpectrum(dataCpx.get(), ColoredNoiseSpec()); + + FFT::inverse(dataReal.get(), *dataCpx); + FFT::normalize(dataReal.get()); + + const float peak = getPeak(*dataReal); + + assertClose( peak, 1.0f , .001); + +} + +static void testNoiseRT() +{ + testNoiseRTSub(4); + testNoiseRTSub(8); + testNoiseRTSub(16); + testNoiseRTSub(1024); + testNoiseRTSub(1024 * 64); +} + + +static void testPinkNoise() +{ + const int bins = 1024*4; + std::unique_ptr data(new FFTDataCpx(bins)); + assertEQ(data->size(), bins); + + ColoredNoiseSpec spec; + spec.highFreqCorner = 22100; // makes no difference for - slope; + spec.slope = -3; + spec.sampleRate = 44100; + + FFT::makeNoiseSpectrum(data.get(), spec); + + + // pick a starting bin above our 40 hz low freq corner + const int baseBin = 16; + //float freqBase = 44100 * baseBin / (float) bins; + const float freqBase = FFT::bin2Freq(baseBin, 44100, bins); + assertGT (freqBase, 80); + + // mid-band, quadruple freq should reduce amp by 6db + float mag16 = std::abs(data->get(baseBin)); + float mag64 = std::abs(data->get(4 * baseBin)); + + // TODO: compare in db + assertClose(mag16, 2 * mag64, .01); + + + float lastMag = std::abs(data->get(1)); + for (int i = 1; i < bins / 2; ++i) { + const float mag = std::abs(data->get(i)); + assertLE(mag, lastMag); + lastMag = mag; + } + + for (int i = bins / 2; i < bins; ++i) { + assertClose(std::abs(data->get(i)), 0, .00001); + } +} + +static void testBlueNoise(float corner = 0) +{ + const int bins = 1024 * 4; + std::unique_ptr data(new FFTDataCpx(bins)); + assertEQ(data->size(), bins); + + ColoredNoiseSpec spec; + spec.slope = 3; + spec.sampleRate = 44100; + + if (corner != 0) { + spec.highFreqCorner = corner; + } else { + assertEQ(spec.highFreqCorner, 4000); + } + + FFT::makeNoiseSpectrum(data.get(), spec); + + float freq16 = 44100 * 16 / (float) bins; + assertGT(freq16, 20); + + // mid-band, quadruple freq should reduce amp by 6db + float mag16 = std::abs(data->get(16)); + float mag64 = std::abs(data->get(64)); + + assertClose(2 * mag16, mag64, .1); + + float lastMag = 0; + for (int i = 1; i < bins / 2; ++i) { + const float mag = std::abs(data->get(i)); + assertGE(mag, .999f * lastMag); + lastMag = mag; + } + + for (int i = bins / 2; i < bins; ++i) { + assertClose(std::abs(data->get(i)), 0, .00001); + } +} + +void testFFT() +{ + assertEQ(FFTDataReal::_count, 0); + assertEQ(FFTDataCpx::_count, 0); + testAccessors(); + testFFTErrors(); + testForwardFFT_DC(); + test3(); + testRoundTrip(); + testNoiseFormula(); + testNoiseRT(); + testPinkNoise(); + testBlueNoise(); + testBlueNoise(8000.f); + testWhiteNoiseRT(); + testFinalLeaks(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testFFTCrossFader.cpp b/plugins/community/repos/squinkylabs-plug1/test/testFFTCrossFader.cpp new file mode 100644 index 00000000..8102dcd1 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testFFTCrossFader.cpp @@ -0,0 +1,313 @@ +#include "FFTCrossFader.h" +#include "ColoredNoise.h" +#include "asserts.h" + +#include + + +class Tester +{ +public: + Tester(int crossFadeSize, int frameSize) : + f(crossFadeSize) + { + for (int i = 0; i < 3; ++i) { + std::shared_ptr p = std::make_shared(frameSize); + messages.push_back(p); + } + } + + FFTCrossFader f; + std::vector< std::shared_ptr > messages; +}; + +// accepting data on empty should not return on +static void test0() +{ + Tester test(4, 10); + assertEQ(test.messages[0]->dataBuffer->get(0), 0); + assertEQ(test.messages[0]->dataBuffer->get(9), 0); + + NoiseMessage* t = test.f.acceptData(test.messages[0].get()); + assertEQ(t, 0); +} + +//empty should return 0 +static void test1() +{ + Tester test(4, 10); + for (int i = 0; i < 20; ++i) { + float x = 5; + test.f.step(&x); + assertEQ(x, 0); + } +} + +// one buff, should play it +static void test2() +{ + Tester test(4, 10); + for (int i = 0; i < 10; ++i) { + test.messages[0]->dataBuffer->set(i, float(i)); + } + NoiseMessage* t = test.f.acceptData(test.messages[0].get()); + assertEQ(t, 0); + + // pluy buffer once + for (int i = 0; i < 10; ++i) { + float x = 5; + test.f.step(&x); + assertEQ(x, i); + } + + //play it again. + for (int i = 0; i < 10; ++i) { + float x = 5; + test.f.step(&x); + assertEQ(x, i); + } +} + + +// two buff, should crossfade +static void test3(bool testBuff0) +{ + Tester test(4, 10); + + // fill the buff to test with data, other one with zeros + for (int i = 0; i < 10; ++i) { + test.messages[0]->dataBuffer->set(i, testBuff0 ? 9.f : 0.f); + test.messages[1]->dataBuffer->set(i, testBuff0 ? 0.f : 18.f); + } + + // put both in, to cross fade + NoiseMessage* t = test.f.acceptData(test.messages[0].get()); + assertEQ(t, 0); + t = test.f.acceptData(test.messages[1].get()); + assertEQ(t, 0); + + int emptyCount = 0; + + // play buffer once + + // buffer 0 full of 9, so should see fade 9..0 + float expected0[] = {9, 6, 3, 0, 0, 0, 0, 0, 0, 0}; + + // buffer 0 all zero, 1 all 18, so should see 0..18 + float expected1[] = {0, 6, 12, 18, 18, 18, 18, 18, 18, 18}; + for (int i = 0; i < 10; ++i) { + float x = 5; + t = test.f.step(&x); + if (t) { + ++emptyCount; + } + const float expected = testBuff0 ? expected0[i] : expected1[i]; + assertEQ(x, expected); + } + + //play it again. + for (int i = 0; i < 10; ++i) { + float x = 5; + // test.f.step(&x); + t = test.f.step(&x); + if (t) { + ++emptyCount; + } + const float expectedTail = testBuff0 ? 0.f : 18.f; + assertEQ(x, expectedTail); + } + + assertEQ(emptyCount, 1); +} + + +// two buff, should crossfade. odd size crossfade +static void test7(bool testBuff0) +{ + Tester test(5, 10); + + // fill the buff to test with data, other one with zeros + for (int i = 0; i < 10; ++i) { + test.messages[0]->dataBuffer->set(i, testBuff0 ? 12.f : 0.f); + test.messages[1]->dataBuffer->set(i, testBuff0 ? 0.f : 24.f); + } + + // put both in, to cross fade + NoiseMessage* t = test.f.acceptData(test.messages[0].get()); + assertEQ(t, 0); + t = test.f.acceptData(test.messages[1].get()); + assertEQ(t, 0); + + int emptyCount = 0; + + // play buffer once + + float expected0[] = {12, 9, 6, 3, 0, 0, 0, 0, 0, 0}; + + float expected1[] = {0, 6, 12, 18, 24, 24, 24, 24, 24, 24}; + for (int i = 0; i < 10; ++i) { + float x = 5; + t = test.f.step(&x); + if (t) { + ++emptyCount; + } + const float expected = testBuff0 ? expected0[i] : expected1[i]; + assertEQ(x, expected); + } + + //play it again. + for (int i = 0; i < 10; ++i) { + float x = 5; + // test.f.step(&x); + t = test.f.step(&x); + if (t) { + ++emptyCount; + } + const float expectedTail = testBuff0 ? 0.f : 24.f; + assertEQ(x, expectedTail); + } + + assertEQ(emptyCount, 1); +} + +// extra buffer rejected +static void test4() +{ + Tester test(4, 10); + NoiseMessage* t = test.f.acceptData(test.messages[0].get()); + assertEQ(t, 0); + t = test.f.acceptData(test.messages[1].get()); + assertEQ(t, 0); + t = test.f.acceptData(test.messages[2].get()); + assertNE(t, 0); +} + + +// test wrap-around case +static void test5() +{ + // fade of 4, buffer of 8 + Tester test(4, 8); + + // fill the buff to test with data, other one with zeros + for (int i = 0; i < 8; ++i) { + test.messages[0]->dataBuffer->set(i, 0.f); + test.messages[1]->dataBuffer->set(i, float(i)); + } + + // put zero 0 + NoiseMessage* t = test.f.acceptData(test.messages[0].get()); + + float x; + // clock 6 + for (int i = 0; i < 6; ++i) { + x = 5; + t = test.f.step(&x); + assertEQ(x, 0); // 0 + assertEQ(t, 0); + } + + // now start crossfade + + t = test.f.acceptData(test.messages[1].get()); + assertEQ(t, 0); + + // sample #6. start fade + t = test.f.step(&x); + assertEQ(x, 0); // 0 + assertEQ(t, 0); + + // sample #7. fade #2 + t = test.f.step(&x); + assertClose(x, .3333333f, .0001); // 0 + assertEQ(t, 0); + + // sample#8, fade #3 + t = test.f.step(&x); + assertClose(x, 1.3333333f, .0001); // 0 + assertEQ(t, 0); + + // sample#8, fade #4 (last), buff 0 (?) gets returned + t = test.f.step(&x); + assertClose(x, 3.f, .0001); // 0 + assertNE(t, 0); + + // done fading + t = test.f.step(&x); + assertClose(x, 4.f, .0001); // 0 + assertEQ(t, 0); + + t = test.f.step(&x); + assertClose(x, 5.f, .0001); // 0 + assertEQ(t, 0); + + t = test.f.step(&x); + assertClose(x, 6.f, .0001); // 0 + assertEQ(t, 0); + + t = test.f.step(&x); + assertClose(x, 7.f, .0001); // 0 + assertEQ(t, 0); + + t = test.f.step(&x); + assertClose(x, 0.f, .0001); // 0 + assertEQ(t, 0); +} + +// test makeup gain +static void test6(bool makeup) +{ + // fade of 5, buffer of 8 + Tester test(5, 8); + test.f.enableMakeupGain(makeup); + + // fill the buffers with 1 + for (int i = 0; i < 8; ++i) { + test.messages[0]->dataBuffer->set(i, 1.f); + test.messages[1]->dataBuffer->set(i, 1.f); + } + + // put messages + test.f.acceptData(test.messages[0].get()); + test.f.acceptData(test.messages[1].get()); + + float x; + for (int i = 0; i < 5; ++i) { + x = 5; + test.f.step(&x); + float expected = 1; + if (makeup) switch (i) { + case 0: + case 4: + expected = 1; + break; + case 2: + expected = std::sqrt(2.f); + break; + case 1: + case 3: + expected = (1.f + std::sqrt(2.f)) / 2.f; + break; + default: assert(false); + } + assertClose(x, expected, .0001); + } +} + +void testFFTCrossFader() +{ + assertEQ(FFTDataReal::_count, 0); + test0(); + test1(); + test2(); + test3(true); + test3(false); + test7(true); + test7(false); + test4(); + test5(); + test6(false); + test6(true); + + assertEQ(FFTDataReal::_count, 0); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testFinalLeaks.cpp b/plugins/community/repos/squinkylabs-plug1/test/testFinalLeaks.cpp new file mode 100644 index 00000000..07450bcc --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testFinalLeaks.cpp @@ -0,0 +1,19 @@ + +#include "LookupTable.h" +#include "ThreadSharedState.h" +#include "ThreadServer.h" +#include "FFTData.h" + +#include "asserts.h" +extern int _numBiquads; + +void testFinalLeaks() +{ + assertEQ(ThreadMessage::_dbgCount, 0); + assertEQ(FFTDataReal::_count, 0); + assertEQ(FFTDataCpx::_count, 0); + assertEQ(ThreadSharedState::_dbgCount, 0); + assertEQ(ThreadServer::_count, 0); + assertEQ(_numLookupParams, 0); + assertEQ(_numBiquads, 0) +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testFrequencyShifter.cpp b/plugins/community/repos/squinkylabs-plug1/test/testFrequencyShifter.cpp new file mode 100644 index 00000000..59ba9f0e --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testFrequencyShifter.cpp @@ -0,0 +1,65 @@ +#include +#include + +#include "FrequencyShifter.h" +#include "TestComposite.h" +#include "ExtremeTester.h" + +using Shifter = FrequencyShifter; + +// just test the can compile, etc.. +static void test0() +{ + Shifter fs; + fs.setSampleRate(44100); + fs.init(); + fs.step(); +} + +// test for signal +static void test1() +{ + Shifter fs; + + fs.setSampleRate(44100); + fs.init(); + + fs.inputs[Shifter::AUDIO_INPUT].value = 0; + fs.outputs[Shifter::SIN_OUTPUT].value = 0; + + // with no input, should have no output + for (int i = 0; i < 50; ++i) { + fs.step(); + assert(fs.outputs[Shifter::SIN_OUTPUT].value == 0); + } + + fs.inputs[Shifter::AUDIO_INPUT].value = 1; + // this should produce output + for (int i = 0; i < 50; ++i) { + fs.step(); + assert(!AudioMath::closeTo(fs.outputs[Shifter::SIN_OUTPUT].value, 0, .00001)); + assert(!AudioMath::closeTo(fs.outputs[Shifter::COS_OUTPUT].value, 0, .00001)); + } +} + +static void testExtreme() +{ + + using fp = std::pair; + std::vector< std::pair > paramLimits; + Shifter va; + va.setSampleRate(44100); + va.init(); + + paramLimits.resize(va.NUM_PARAMS); + paramLimits[va.PITCH_PARAM] = fp(-5.f, 5.f); + + ExtremeTester::test(va, paramLimits, true, "shifter"); +} + +void testFrequencyShifter() +{ + test0(); + test1(); + testExtreme(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testGateTrigger.cpp b/plugins/community/repos/squinkylabs-plug1/test/testGateTrigger.cpp new file mode 100644 index 00000000..ef4e7604 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testGateTrigger.cpp @@ -0,0 +1,107 @@ + +#include +#include "GateTrigger.h" +#include "SchmidtTrigger.h" + +static void sc0() +{ + SchmidtTrigger sc(-10, 10); + bool b = sc.go(-20); + assert(!b); +} + + +static void sc1() +{ + SchmidtTrigger sc(-10, 10); + bool b = sc.go(20); + assert(b); +} + +static void sc2() +{ + SchmidtTrigger sc(-10, 10); + bool b = sc.go(20); + assert(b); + b = sc.go(9); + assert(b); + b = sc.go(-9); + assert(b); + b = sc.go(-11); + assert(!b); + + b = sc.go(-999); + assert(!b); + + b = sc.go(9); + assert(!b); + b = sc.go(11); + assert(b); +} + +// check defaults for schmidt +static void sc3() +{ + SchmidtTrigger sc; + bool b = sc.go(cGateHi + .1f); + assert(b); + b = sc.go(cGateLow + .1f); + assert(b); + b = sc.go(cGateLow - .1f); + assert(!b); + + b = sc.go(cGateHi - .1f); + assert(!b); + b = sc.go(cGateHi + .1f); + assert(b); +} + + +// check that threshold accessors are sane +void g_1() +{ + GateTrigger g; + assert(g.thlo() > 0); + assert(g.thhi() > g.thlo()); + + assert(g.thhi() < 10.f); + assert(g.thhi() > 1.f); +} + + +void testAfterReset(GateTrigger& g) +{ + g.go(10.f); // right after "reset", start with gate + assert(!g.gate()); + assert(!g.trigger()); + + g.go(0.f); + assert(!g.gate()); + assert(!g.trigger()); + + g.go(10.f); + assert(g.gate()); + assert(g.trigger()); +} + +void grst1() +{ + GateTrigger g; + testAfterReset(g); + + g.go(10.f); + g.reset(); + testAfterReset(g); +} + + + +void testGateTrigger() +{ + sc0(); + sc1(); + sc2(); + sc3(); + g_1(); + grst1(); +} diff --git a/plugins/community/repos/squinkylabs-plug1/test/testHilbert.cpp b/plugins/community/repos/squinkylabs-plug1/test/testHilbert.cpp new file mode 100644 index 00000000..5c71670c --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testHilbert.cpp @@ -0,0 +1,79 @@ + +#include "HilbertFilterDesigner.h" +#include "AudioMath.h" +#include "BiquadParams.h" +#include "BiquadFilter.h" +#include "BiquadState.h" + +#include +#include +#include + +// test that we can hook it up +template +static void test0() +{ + BiquadParams paramsSin; + BiquadParams paramsCos; + HilbertFilterDesigner::design(44100, paramsSin, paramsCos); +} + +// test that filter designer does something (more than just generate zero +template +static void test1() +{ + BiquadParams paramsSin; + BiquadParams paramsCos; + HilbertFilterDesigner::design(44100, paramsSin, paramsCos); + + const double delta = .00001; + for (int i = 0; i < 3; ++i) { + assert(!AudioMath::closeTo(0, (paramsSin.A1(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsSin.A2(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsSin.B0(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsSin.B1(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsSin.B2(i)), delta)); + + assert(!AudioMath::closeTo(0, (paramsCos.A1(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsCos.A2(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsCos.B0(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsCos.B1(i)), delta)); + assert(!AudioMath::closeTo(0, (paramsCos.B2(i)), delta)); + } +} + +// see if it passes audio +template +static void test2() +{ + BiquadParams paramsSin; + BiquadParams paramsCos; + BiquadState stateSin; + BiquadState stateCos; + HilbertFilterDesigner::design(44100, paramsSin, paramsCos); + + // const T hilbertSin = BiquadFilter::run(input, hilbertFilterStateSin, hilbertFilterParamsSin); + T input = 1; + // T t = BiquadFilter::run(input, state, paramsSin); + for (int i = 0; i < 10; ++i) { + T ts = BiquadFilter::run(input, stateSin, paramsSin); + T tc = BiquadFilter::run(input, stateCos, paramsCos); + assert(!AudioMath::closeTo(ts, 0, .00001)); + assert(!AudioMath::closeTo(tc, 0, .00001)); + } +} + +template +static void test() +{ + test0(); + test1(); + test2(); + +} + +void testHilbert() +{ + test(); + test(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testLookupTable.cpp b/plugins/community/repos/squinkylabs-plug1/test/testLookupTable.cpp new file mode 100644 index 00000000..cb26abb6 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testLookupTable.cpp @@ -0,0 +1,270 @@ + +#include +#include + +#include "asserts.h" +#include "AudioMath.h" +#include "LookupTable.h" +#include "LookupTableFactory.h" + +using namespace std; + +// test that we can call all the functions +template +static void test0() +{ + LookupTableParams p; + const int tableSize = 512; + + std::function f = [](double d) { + return 0; + }; + + LookupTable::init(p, tableSize, 0, 1, f); + LookupTable::lookup(p, 0); +} + +// test that simple lookup works +template +static void test1() +{ + LookupTableParams p; + const int tableSize = 512; + + std::function f = [](double d) { + return 100; + }; + + LookupTable::init(p, tableSize, 0, 1, f); + assert(LookupTable::lookup(p, 0) == 100); + assert(LookupTable::lookup(p, 1) == 100); + assert(LookupTable::lookup(p, T(.342)) == 100); +} + + +// test that sin works +template +static void test2() +{ + LookupTableParams p; + const int tableSize = 512; + + std::function f = [](double d) { + return std::sin(d); + }; + + LookupTable::init(p, tableSize, 0, 1, f); + + const T tolerance = T(0.000001); + for (double d = 0; d < 1; d += .0001) { + T output = LookupTable::lookup(p, T(d)); + + const bool t = AudioMath::closeTo(output, std::sin(d), tolerance); + if (!t) { + cout << "failing with expected=" << std::sin(d) << " actual=" << output << " delta=" << std::abs(output - std::sin(d)); + assert(false); + } + } +} + + +// test that sin works on domain 10..32 +template +static void test3() +{ + LookupTableParams p; + const int tableSize = 16; + + std::function f = [](double d) { + const double s = (d - 10) / 3; + return std::sin(s); + }; + + LookupTable::init(p, tableSize, 10, 13, f); + + const T tolerance = T(0.01); + for (double d = 10; d < 13; d += .0001) { + const T output = LookupTable::lookup(p, T(d)); + + const T expected = (T) std::sin((d - 10.0) / 3); + const bool t = AudioMath::closeTo(output, expected, tolerance); + if (!t) { + cout << "failing with d=" << d << " expected=" << expected << " actual=" << output << " delta=" << std::abs(output - std::sin(d)); + assert(false); + } + } +} + +// test that sin at extremes works +template +static void test4() +{ + LookupTableParams exponential; + + const T xMin = -5; + const T xMax = 5; + + std::function expFunc = AudioMath::makeFunc_Exp(-5, 5, 2, 2000); + LookupTable::init(exponential, 128, -5, 5, expFunc); + + // Had to loosen tolerance to pass with windows gcc. Is there a problem + // with precision, or is this expected with fast math? + const T tolerance = T(0.0003); + T outputLow = LookupTable::lookup(exponential, xMin); + + T outputHigh = LookupTable::lookup(exponential, xMax); + + bool t = AudioMath::closeTo(outputLow, 2, tolerance); + if (!t) { + cout << "failing l with expected=" << 2 << " actual=" << outputLow << " delta=" << std::abs(outputLow - 2) << std::endl; + assert(false); + } + t = AudioMath::closeTo(outputHigh, 2000, tolerance); + if (!t) { + cout << "failing h with expected=" << 2000 << " actual=" << outputHigh << " delta=" << std::abs(outputHigh - 2000) << std::endl; + assert(false); + } +} + +template +static void testDiscrete1() +{ + LookupTableParams lookup; + + T y[] = {0, 10}; + LookupTable::initDiscrete(lookup, 2, y); + + assertEQ(LookupTable::lookup(lookup, 0), 0); + assertEQ(LookupTable::lookup(lookup, .5), 5); + assertEQ(LookupTable::lookup(lookup, 1), 10); + + assertEQ(LookupTable::lookup(lookup, T(.1)), 1); + assertClose(LookupTable::lookup(lookup, T(.01)), T(.1), .00001); +} + +template +static void testDiscrete2() +{ + LookupTableParams lookup; + + T y[] = {100, 100.5, 2000, -10}; + LookupTable::initDiscrete(lookup, 4, y); + + assertEQ(LookupTable::lookup(lookup, 0), 100); + assertEQ(LookupTable::lookup(lookup, 1), 100.5); + assertEQ(LookupTable::lookup(lookup, 2), 2000); + assertEQ(LookupTable::lookup(lookup, 3), -10); + + assertEQ(LookupTable::lookup(lookup, 2.5), 1000 - 5); +} + +template +static void testExpSimpleLookup() +{ + LookupTableParams lookup; + LookupTableFactory::makeExp2(lookup); + + const double xMin = LookupTableFactory::expXMin(); + const double xMax = LookupTableFactory::expXMax(); + assert(5 > xMin); + assert(11 < xMax); + assertClose(LookupTable::lookup(lookup, 5), std::pow(2, 5), .01); + assertClose(LookupTable::lookup(lookup, 11), std::pow(2, 11), 2); // TODO: tighten +} + + + +// test that extreme inputs is clamped +template +static void testExpRange() +{ + LookupTableParams lookup; + LookupTable::makeExp2(lookup); + auto k1 = LookupTable::lookup(lookup, -1); + auto k2 = LookupTable::lookup(lookup, 11); + + assertClose(LookupTable::lookup(lookup, -1), LookupTable::lookup(lookup, 0), .01); + assertClose(LookupTable::lookup(lookup, 11), LookupTable::lookup(lookup, 10), .01); + assertClose(LookupTable::lookup(lookup, -100), LookupTable::lookup(lookup, 0), .01); + assertClose(LookupTable::lookup(lookup, 1100), LookupTable::lookup(lookup, 10), .01); +} + + +template +static void testExpTolerance(T centsTolerance) +{ + const T xMin = (T) LookupTableFactory::expXMin(); + const T xMax = (T) LookupTableFactory::expXMax(); + + LookupTableParams table; + LookupTableFactory::makeExp2(table); + for (T x = xMin; x <= xMax; x += T(.0001)) { + T y = LookupTable::lookup(table, x); // and back + double accurate = std::pow(2.0, x); + double errorCents = std::abs(1200.0 * std::log2(y / accurate)); + assertClose(errorCents, 0, centsTolerance); + } +} + +template +static void testBipolarSimpleLookup() +{ + LookupTableParams lookup; + LookupTableFactory::makeBipolarAudioTaper(lookup); + + assertClose(LookupTable::lookup(lookup, 0), 0, .01); + assertClose(LookupTable::lookup(lookup, 1), 1, .01); + assertClose(LookupTable::lookup(lookup, -1), -1, .01); +} + + +template +static void testBipolarTolerance() +{ + LookupTableParams lookup; + LookupTableFactory::makeBipolarAudioTaper(lookup); + const double toleratedError = 1 - AudioMath::gainFromDb(-.1);// let's go for one db. + assert(toleratedError > 0); + + auto refFuncPos = AudioMath::makeFunc_AudioTaper(LookupTableFactory::audioTaperKnee()); + auto refFuncNeg = [refFuncPos](double x) { + assert(x <= 0); + return -refFuncPos(-x); + }; + + for (double x = -1; x < 1; x += .001) { + + const T test = LookupTable::lookup(lookup, (T) x); + T ref = 1234; + if (x < 0) { + ref = (T) refFuncNeg(x); + } else { + ref = (T) refFuncPos(x); + } + assertClose(test, ref, toleratedError); + } +} + +template +static void test() +{ + test0(); + test1(); + test2(); + test3(); + test4(); + testDiscrete1(); + testDiscrete2(); + testExpSimpleLookup(); + testExpTolerance(100); // 1 semitone + testExpTolerance(10); + testExpTolerance(1); + testBipolarSimpleLookup(); + testBipolarTolerance(); +} + +void testLookupTable() +{ + test(); + test(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testObjectCache.cpp b/plugins/community/repos/squinkylabs-plug1/test/testObjectCache.cpp new file mode 100644 index 00000000..c3d2a133 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testObjectCache.cpp @@ -0,0 +1,187 @@ + +#include "asserts.h" +#include "ObjectCache.h" + +extern int _numLookupParams; + +template +static void testBipolar() +{ + assertEQ(_numLookupParams, 0); + + auto test = ObjectCache::getBipolarAudioTaper(); + assertEQ(_numLookupParams, 1); + auto test2 = ObjectCache::getBipolarAudioTaper(); + assertEQ(_numLookupParams, 1); + test.reset(); + assertEQ(_numLookupParams, 1); + + test2.reset(); + assertEQ(_numLookupParams, 0); + + { + // simple test that bipolar audio scalers use cached lookups, and they work + AudioMath::ScaleFun f = AudioMath::makeBipolarAudioScaler(3, 4); + assertEQ(f(0, -5, 0), 3.); + assertEQ(_numLookupParams, 1); + } + assertEQ(_numLookupParams, 0); + + // make again + test = ObjectCache::getBipolarAudioTaper(); + assertEQ(_numLookupParams, 1); +} + +template +static void testSin() +{ + assertEQ(_numLookupParams, 0); + + auto test = ObjectCache::getSinLookup(); + assertEQ(_numLookupParams, 1); + auto test2 = ObjectCache::getSinLookup(); + assertEQ(_numLookupParams, 1); + test.reset(); + assertEQ(_numLookupParams, 1); + + test2.reset(); + assertEQ(_numLookupParams, 0); + + { + // // simple test that bipolar audio scalers use cached lookups, and they work + AudioMath::ScaleFun f = AudioMath::makeBipolarAudioScaler(3, 4); + assertEQ(f(0, -5, 0), 3.); + assertEQ(_numLookupParams, 1); + } + assertEQ(_numLookupParams, 0); + + // make again + test = ObjectCache::getSinLookup(); + assertEQ(_numLookupParams, 1); +} + + +template +static void testExp2() +{ + assertEQ(_numLookupParams, 0); + + auto test = ObjectCache::getExp2(); + assertEQ(_numLookupParams, 1); + auto test2 = ObjectCache::getExp2(); + assertEQ(_numLookupParams, 1); + test.reset(); + assertEQ(_numLookupParams, 1); + + test2.reset(); + assertEQ(_numLookupParams, 0); + + { + auto test3 = ObjectCache::getExp2(); + const double x = LookupTable::lookup(*test3, (T)3.2); + const double y = std::pow(2, 3.2); + assertClose(x, y, .001); + assertEQ(_numLookupParams, 1); + } + assertEQ(_numLookupParams, 0); + + // make again + test = ObjectCache::getExp2(); + assertEQ(_numLookupParams, 1); +} + +template +static void testExp2b() +{ + { + // make sure exp2 is really 1V/octave + auto ex2 = ObjectCache::getExp2(); + const T a = LookupTable::lookup(*ex2, 5); + const T b = LookupTable::lookup(*ex2, 6); + assertClose(b / a, 2, .001); + } +} + + +template +static void testDb2Gain() +{ + assertEQ(_numLookupParams, 0); + + auto test = ObjectCache::getDb2Gain(); + assertEQ(_numLookupParams, 1); + auto test2 = ObjectCache::getDb2Gain(); + assertEQ(_numLookupParams, 1); + test.reset(); + assertEQ(_numLookupParams, 1); + + test2.reset(); + assertEQ(_numLookupParams, 0); + + { + auto test3 = ObjectCache::getDb2Gain(); + const double x = LookupTable::lookup(*test3, (T) -12); + const double y = AudioMath::gainFromDb(-12); + + + assertClose(x, y, .1); + assertEQ(_numLookupParams, 1); + } + assertEQ(_numLookupParams, 0); + + // make again + test = ObjectCache::getDb2Gain(); + assertEQ(_numLookupParams, 1); +} + +template +static void testDb2Gain2() +{ + assertEQ(_numLookupParams, 0); + + auto test = ObjectCache::getDb2Gain(); + + // .1 db from -80 to +20 + for (double db = -80; db < 20; db += .1) { + const double x = LookupTable::lookup(*test, (T) db); + const double y = AudioMath::gainFromDb(db); + + assertClose(x, y, .2); + } +} + + +template +static void testTanh5() +{ + auto test = ObjectCache::getTanh5(); + auto test2 = ObjectCache::getTanh5(); + assertEQ(_numLookupParams, 1); + + for (double x = -5; x <= 5; x += .1) { + const double y = LookupTable::lookup(*test, (T) x); + const double y0 = std::tanh(x); + + assertClose(y, y0, .01); + } +} + +template +static void test() +{ + testBipolar(); + testSin(); + testExp2(); + testExp2b(); + testDb2Gain(); + testDb2Gain2(); + testTanh5(); +} + +void testObjectCache() +{ + assertEQ(_numLookupParams, 0); + test(); + test(); + assertEQ(_numLookupParams, 0); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testRingBuffer.cpp b/plugins/community/repos/squinkylabs-plug1/test/testRingBuffer.cpp new file mode 100644 index 00000000..faa031c4 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testRingBuffer.cpp @@ -0,0 +1,185 @@ + + +#include "RingBuffer.h" +#include "asserts.h" + + +static void testConstruct() +{ + RingBuffer rb; + assert(rb.empty()); + assert(!rb.full()); + + + RingBuffer rb2; +} + +static void testSimpleAccess() +{ + RingBuffer rb; + rb.push(55); + assert(!rb.empty()); + assert(!rb.full()); + + int x = rb.pop(); + assertEQ(x, 55); + + assert(rb.empty()); + assert(!rb.full()); +} + +static void testMultiAccess() +{ + RingBuffer rb; + rb.push(1234); + rb.push(5678); + assert(!rb.empty()); + assert(!rb.full()); + + int x = rb.pop(); + assertEQ(x, 1234); + + assert(!rb.empty()); + assert(!rb.full()); + + x = rb.pop(); + assertEQ(x, 5678); + + assert(rb.empty()); + assert(!rb.full()); +} + +static void testWrap() +{ + RingBuffer rb; + rb.push(1234); + rb.push(5678); + rb.pop(); + rb.pop(); + rb.push(1); + rb.push(2); + rb.push(3); + + assertEQ(rb.pop(), 1); + assertEQ(rb.pop(), 2); + assertEQ(rb.pop(), 3); + + assert(rb.empty()); +} + +static void testFull() +{ + RingBuffer rb; + rb.push(1234); + rb.push(5678); + rb.pop(); + rb.pop(); + rb.push(1); + rb.push(2); + rb.push(3); + rb.push(4); + assert(rb.full()); + assert(!rb.empty()); + + assertEQ(rb.pop(), 1); + assertEQ(rb.pop(), 2); + assertEQ(rb.pop(), 3); + assertEQ(rb.pop(), 4); + + assert(rb.empty()); + assert(!rb.full()); +} + +static void testOne() +{ + const char * p = "foo"; + RingBuffer rb; + rb.push(p); + assert(!rb.empty()); + assert(rb.full()); + + assertEQ(rb.pop(), p); + assert(rb.empty()); + assert(!rb.full()); +} + + +void testRingBuffer() +{ + testConstruct(); + testSimpleAccess(); + testMultiAccess(); + testWrap(); + testFull(); + testOne(); +} + +/***********************************************************************************************/ +#include "ManagedPool.h" + +static void testMP0() +{ + ManagedPool mp; + assert(mp.full()); + assert(!mp.empty()); +} + +static void testMP_access() +{ + ManagedPool mp; + + int* p = mp.pop(); + *p = 77; + mp.push(p); + assert(mp.full()); + + p = mp.pop(); + assertEQ(*p, 77); +} + +static int count = 0; +class SimpleObj +{ +public: + SimpleObj() + { + ++count; + } + ~SimpleObj() + { + --count; + } +}; + +static void testMP_mem() +{ + assertEQ(count, 0); + { + assertEQ(count, 0); + ManagedPool mp; + assertEQ(count, 4); + } + assertEQ(count, 0); +} + + +static void testMP_mem2() +{ + assertEQ(count, 0); + { + assertEQ(count, 0); + ManagedPool mp; + assertEQ(count, 4); + mp.pop(); + mp.pop(); // make sure the ones we remove still get destroyed + } + assertEQ(count, 0); +} + +void testManagedPool() +{ + testMP0(); + testMP_access(); + testMP_mem(); + testMP_mem2(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testSaw.cpp b/plugins/community/repos/squinkylabs-plug1/test/testSaw.cpp new file mode 100644 index 00000000..3715db5d --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testSaw.cpp @@ -0,0 +1,281 @@ +#include +#include + +#include "MultiModOsc.h" +#include "AudioMath.h" +#include "SawOscillator.h" +#include "TestSignal.h" + +using namespace std; + +// do objects exist? +template +static void testSaw1() +{ + SawOscillatorParams params; + SawOscillator::setFrequency(params, (T(.1))); + SawOscillatorState state; + SawOscillator::runSaw(state, params); + + using osc = MultiModOsc; + typename osc::State mstate; + typename osc::Params mparams; + T output[3]; + osc::run(output, mstate, mparams); +} + +/** + * Does parameter calculation do anything? + */ +template +static void testSaw2() +{ + SawOscillatorParams params; + assert(params.phaseIncrement == 0); + SawOscillator::setFrequency(params, (T(.1))); + assert(params.phaseIncrement > 0); +} + +/** + * Does something come out? + */ +template +static void testSaw3() +{ + SawOscillatorParams params; + SawOscillator::setFrequency(params, (T(.2))); + SawOscillatorState state; + SawOscillator::runSaw(state, params); + const T out = SawOscillator::runSaw(state, params); + assert(out > 0); + assert(out < 1); +} + +/** +* Does something come out? +*/ +template +static void testTri3() +{ + SawOscillatorParams params; + SawOscillator::setFrequency(params, (T(.2))); + SawOscillatorState state; + SawOscillator::runSaw(state, params); + const T out = SawOscillator::runTri(state, params); + assert(out > 0); + assert(out < 1); +} + +/** +* Does something come out? +*/ +template +static void testMulti3() +{ + using osc = MultiModOsc; + typename osc::State state; + typename osc::Params params; + T output[3] = {0, 0, 0}; + T output2[3] = {0, 0, 0}; + + osc::run(output, state, params); + osc::run(output, state, params); + osc::run(output2, state, params); + for (int i = 0; i < 3; ++i) { + assert(output[i] != 0); + assert(output2[i] != 0); + assert(output[i] != output2[i]); + + if (i > 0) { + assert(output[i] != output[i - 1]); + assert(output2[i] != output2[i - 1]); + } + } +} + +/** + * Does it look like a triangle? + */ + +template +static void testTri4() +{ + const T freq = T(.1); // was .01 + const T delta = 2 * freq; + SawOscillatorParams params; + SawOscillator::setFrequency(params, (T(.01))); + SawOscillatorState state; + + T last = -freq; + bool increasing = true; + for (int i = 0; i < 1000; ++i) { + const T output = SawOscillator::runTri(state, params); + + assert(output >= -1); + assert(output <= 1); + if (increasing) { + if (output > last) { + // still increasing + } else { + // started decreasing + + assert(AudioMath::closeTo(output, 1, delta)); + increasing = false; + } + } else { + if (output < last) { + // still decreasing + } else { + // started increasing + assert(AudioMath::closeTo(output, -1, delta)); + increasing = true; + } + } + + last = output; + } +} + +/** +* Does it look like a saw? +*/ +template +static void testSaw4() +{ + const T freq = T(.01); + const T delta = freq / 1000; + SawOscillatorParams params; + SawOscillator::setFrequency(params, (T(.01))); + SawOscillatorState state; + + T last = 0; + for (int i = 0; i < 1000; ++i) { + const T output = SawOscillator::runSaw(state, params); + + assert(output >= 0); + assert(output < 1); + + if (output < last) { + assert(last > .99); + assert(output < .01); + } else { + assert(output < (last + freq + delta)); + } + + last = output; + } +} + +/** +* Is the quadrature really 90 out of phase? +*/ +template +static void testSaw5() +{ + SawOscillatorParams params; + SawOscillator::setFrequency(params, (T(.01))); + SawOscillatorState state; + + T output; + T quadratureOutput; + for (int i = 0; i < 1000; ++i) { + SawOscillator::runQuadrature(output, quadratureOutput, state, params); + + // normalize output (unwrap) + if (quadratureOutput < output) { + quadratureOutput += 1; + } + assert(quadratureOutput = (output + T(.25))); + } +} + + +/** +* Does it look like a negative saw? +*/ +template +static void testSaw6() +{ + const T freq = T(-.01); + const T delta = freq / 1000; + SawOscillatorParams params; + SawOscillator::setFrequency(params, freq); + SawOscillatorState state; + + T last = 0; + for (int i = 0; i < 1000; ++i) { + const T output = SawOscillator::runSaw(state, params); + + assert(output >= 0); + assert(output < 1); + + if (output > last) { + // wrap case - did we more or less wrap? + assert(last < .01); + assert(output > .98); + } else { + // no-wrap - are we decreasing + assert(output > (last + freq + delta)); + } + last = output; + } +} + +/** + * IS the RMS for triangle as expected? + */ +template +static void testTri7() +{ + const int div = 1024; + const T freq = T(1.0 / T(div)); + SawOscillatorParams params; + SawOscillator::setFrequency(params, freq); + SawOscillatorState state; + double amplitude = TestSignal::measureOutput(div, [&state, ¶ms]() { + return SawOscillator::runTri(state, params); + }); + + // RMS of tri wave is 1 / cube root 3 + assert(AudioMath::closeTo(amplitude, 0.57735, .0001)); +} + +template +static void testSaw7() +{ + const int div = 1024; + const T freq = T(1.0 / T(div)); + SawOscillatorParams params; + SawOscillator::setFrequency(params, freq); + SawOscillatorState state; + double amplitude = TestSignal::measureOutput(div * 16, [&state, ¶ms]() { + // normalize to 1V pp + return 2 * SawOscillator::runSaw(state, params) - 1; + }); + + + // RMS of saw wave is 1 / cube root 3 + assert(AudioMath::closeTo(amplitude, 0.57735, .0001)); +} + +template +static void testSawT() +{ + testSaw1(); + testSaw2(); + testSaw3(); + testTri3(); + testMulti3(); + testSaw4(); + testTri4(); + testSaw5(); + testSaw6(); + testTri7(); + testSaw7(); +} + +void testSaw() +{ + testSawT(); + testSawT(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testSinOscillator.cpp b/plugins/community/repos/squinkylabs-plug1/test/testSinOscillator.cpp new file mode 100644 index 00000000..a34343ca --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testSinOscillator.cpp @@ -0,0 +1,139 @@ +#include +#include + +#include "asserts.h" +#include "SinOscillator.h" +using namespace std; + +// test that it can be hooked up +template +static void test1() +{ + SinOscillatorParams p; + SinOscillatorState s; + SinOscillator::setFrequency(p, T(.1)); + T x = SinOscillator::run(s, p); + (void) x; +} + +// test that it makes output +template +static void test2() +{ + SinOscillatorParams p; + SinOscillatorState s; + SinOscillator::setFrequency(p, T(.1)); + T x = SinOscillator::run(s, p); + assert(x == 0); + x = SinOscillator::run(s, p); + assert(x > 0); +} + +// test that sin lookup is correct +template +static void test3() +{ + SinOscillatorParams params; + SinOscillatorState s; + SinOscillator::setFrequency(params, T(.1)); + + auto& lookup = params.lookupParams; + + const double delta = .00001; + + // sin(0) == 0; + T y = LookupTable::lookup(*lookup, 0); + assert(AudioMath::closeTo(y, 0, delta)); + + // sin(2pi) == 0 + y = LookupTable::lookup(*lookup, 1); + assert(AudioMath::closeTo(y, 0, delta)); + + // sin(pi/2) == 1 + y = LookupTable::lookup(*lookup, .25); + assert(AudioMath::closeTo(y, 1, delta)); + + // sin(pi) == 0 + y = LookupTable::lookup(*lookup, .5); + assert(AudioMath::closeTo(y, 0, delta)); +} + +// test that output is correct freq +template +static void test4() +{ + const int clocksPerPeriod = 64; + SinOscillatorParams params; + SinOscillatorState state; + SinOscillator::setFrequency(params, T(1.0 / clocksPerPeriod)); + + const double delta = .00001; + T output, quadrature; + for (int i = 0; i <= clocksPerPeriod; ++i) { + SinOscillator::runQuadrature(output, quadrature, state, params); + if (i == 0) { + // sin+cos(0) = 0 + 1 + assert(AudioMath::closeTo(output, 0, delta)); + assert(AudioMath::closeTo(quadrature, 1, delta)); + } + if (i == 64) { + // sin+cos(0) = 0 + 1 + assert(AudioMath::closeTo(output, 0, delta)); + assert(AudioMath::closeTo(quadrature, 1, delta)); + } + if (i == 16) { + // sin+cos(pi/2) = 1 0 + assert(AudioMath::closeTo(output, 1, delta)); + assert(AudioMath::closeTo(quadrature, 0, delta)); + } + if (i == 32) { + // sin+cos(pi) = 0 -1 + assert(AudioMath::closeTo(output, 0, delta)); + assert(AudioMath::closeTo(quadrature, -1, delta)); + } + if (i == 48) { + // sin+cos(3pi/2) = -1 0 + assert(AudioMath::closeTo(output, -1, delta)); + assert(AudioMath::closeTo(quadrature, 0, delta)); + } + } +} + +template +static void testDistortion() +{ + SinOscillatorParams params; + SinOscillatorState s; + SinOscillator::setFrequency(params, T(.0423781)); + auto& lookup = params.lookupParams; + + double err = 0; + for (double d = 0; d < 1; d += .00123) { + double x = LookupTable::lookup(*lookup, (T) d); + double y = sin(d * AudioMath::Pi * 2); + // printf("d=%f sin=%f look=%f\n", d, y, x); + assertClose(x, y, .01); + + const double e = std::abs(x - y); + err = std::max(err, e); + } + double errDb = AudioMath::db(err); + // printf("THD = %f\n", errDb); + assertLT(errDb, -80); +} + +template +static void test() +{ + test1(); + test2(); + test3(); + test4(); + testDistortion(); +} + +void testSinOscillator() +{ + test(); + test(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testStateVariable.cpp b/plugins/community/repos/squinkylabs-plug1/test/testStateVariable.cpp new file mode 100644 index 00000000..980ee5c6 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testStateVariable.cpp @@ -0,0 +1,125 @@ +#include + +#include "asserts.h" +#include "StateVariableFilter.h" +#include "TestSignal.h" + +/** + * Simple test - can we get output that looks kind of low pass + */ +template +static void test1() +{ + StateVariableFilterParams params; + StateVariableFilterState state; + params.setMode(StateVariableFilterParams::Mode::LowPass); + params.setFreq(T(.05)); // TODO: make an even fraction + params.setQ(T(.7)); + + T lastValue = -1; + for (int i = 0; i < 5; ++i) { + T output = StateVariableFilter::run(1, state, params); + assert(output > lastValue); + lastValue = output; + } +} + + +/** + * Measure freq response at some points + */ +template +static void testLowpass() +{ + const T fc = T(.001); + const T q = T(1.0 / std::sqrt(2)); // butterworth + StateVariableFilterParams params; + StateVariableFilterState state; + params.setMode(StateVariableFilterParams::Mode::LowPass); + params.setFreq(fc); // TODO: make an even fraction + params.setQ(q); + + double g = TestSignal::measureGain(fc / 4, [&state, ¶ms](T input) { + return StateVariableFilter::run(input, state, params); + }); + g = AudioMath::db(g); + assert(AudioMath::closeTo(g, 0, .05)); + + g = TestSignal::measureGain(fc, [&state, ¶ms](T input) { + return StateVariableFilter::run(input, state, params); + }); + g = AudioMath::db(g); + assert(AudioMath::closeTo(g, -3, .05)); + + double g2 = TestSignal::measureGain(fc * 4, [&state, ¶ms](T input) { + return StateVariableFilter::run(input, state, params); + }); + g2 = AudioMath::db(g2); + + double g3 = TestSignal::measureGain(fc * 8, [&state, ¶ms](T input) { + return StateVariableFilter::run(input, state, params); + }); + g3 = AudioMath::db(g3); + assert(AudioMath::closeTo(g2 - g3, 12, 2)); +} + +/** + * Verify that passband gain tracks Q + */ +static void testBandpass() +{ + const float fc = .01f; + const float q = (1.0f / float(std::sqrt(2))); // butterworth + StateVariableFilterParams params; + StateVariableFilterState state; + params.setMode(StateVariableFilterParams::Mode::BandPass); + params.setFreq(fc); // TODO: make an even fraction + params.setQ(q); + + double g0 = TestSignal::measureGain(fc, [&state, ¶ms](float input) { + return StateVariableFilter::run(input, state, params); + }); + g0 = AudioMath::db(g0); + + for (int i = 2; i < 100; i *= 2) { + const float q = float(i); + params.setQ(q); + + double g = TestSignal::measureGain(fc, [&state, ¶ms](float input) { + return StateVariableFilter::run(input, state, params); + }); + g = AudioMath::db(g); + // printf("q = %f, gain db = %f qdb=%f\n", q, g, AudioMath::db(q)); + + assertClose(g, AudioMath::db(q), .5); + } +} + +template +static void testSetBandwidth() +{ + StateVariableFilterParams params; + params.setNormalizedBandwidth(T(.1)); + assertEQ(params.getNormalizedBandwidth(), T(.1)); + + params.setNormalizedBandwidth(T(.5)); + assertEQ(params.getNormalizedBandwidth(), T(.5)); + + params.setQ(10); + assertEQ(params.getNormalizedBandwidth(), T(.1)) +} + +template +static void test() +{ + test1(); + testLowpass(); + testSetBandwidth(); +} + +void testStateVariable() +{ + test(); + test(); + testBandpass(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testTestSignal.cpp b/plugins/community/repos/squinkylabs-plug1/test/testTestSignal.cpp new file mode 100644 index 00000000..2da8fa46 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testTestSignal.cpp @@ -0,0 +1,120 @@ +#include +#include + +#include "AudioMath.h" +#include "TestSignal.h" + +/** + * Test that sin generates a signal +-1 + */ +template +static void test1() +{ + const int size = 20000; + T buffer[size]; + TestSignal::generateSin(buffer, size, T(.01)); + + T min = 1, max = -1; + for (int i = 0; i < size; ++i) { + const T x = buffer[i]; + assert(x <= 1); + assert(x >= -1); + if (min > x) { + min = x; + } + if (max < x) { + max = x; + } + } + + const T delta = T(.0000001); + assert(AudioMath::closeTo(min, T(-1), delta)); + assert(AudioMath::closeTo(max, T(1), delta)); +} + +/** + * Test the period of sin is correct + */ +template +static void test2() +{ + const int size = 20000; + T buffer[size]; + TestSignal::generateSin(buffer, size, T(.001)); + + const T delta = T(.0000001); + assert(AudioMath::closeTo(buffer[0], 0, delta)); + + T last = -1; + int period = 0; + for (int i = 0; i < size; ++i) { + const T x = buffer[i]; + if (x <= last) { + period = (i - 1) * 4; + break; + } + last = x; + } + assert(period == 1000); +} + +template +static void test3() +{ + const int size = 20000; + T buffer[size]; + + buffer[0] = 1; + assert(TestSignal::getRMS(buffer, 1) == 1); + + buffer[0] = -1; + assert(TestSignal::getRMS(buffer, 1) == 1); + + for (int i = 0; i < 5; ++i) { + buffer[i] = 1; + } + assert(TestSignal::getRMS(buffer, 1) == 1); + + for (int i = 0; i < 5; ++i) { + buffer[i] = -2; + } + assert(TestSignal::getRMS(buffer, 1) == 2); + + TestSignal::generateSin(buffer, size, T(.001)); + const double amplitude = TestSignal::getRMS(buffer, size); + assert(AudioMath::closeTo(amplitude, std::sqrt(2.0) / 2, .00001)); +} + +template +static void testUnityGain() +{ + const T gl = TestSignal::measureGain(T(.001), [](T input) { + return input; + }); + + assert(gl == 1); +} + +template +static void test4() +{ + double amp = TestSignal::measureOutput(5, []() { + return T(-3); + }); + assert(amp == 3); +} +template +static void test() +{ + test1(); + test2(); + test3(); + testUnityGain(); + test4(); +} + +void testTestSignal() +{ + test(); + test(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testThread.cpp b/plugins/community/repos/squinkylabs-plug1/test/testThread.cpp new file mode 100644 index 00000000..2f4737db --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testThread.cpp @@ -0,0 +1,234 @@ + +#include "asserts.h" +#include "ThreadSharedState.h" +#include "ThreadServer.h" +#include "ThreadClient.h" +#include "ThreadPriority.h" + +#include +#include +#include + + + +// test that we can build and tear down. +static void test0() +{ + assertEQ(ThreadSharedState::_dbgCount, 0); + { + std::shared_ptr noise = std::make_shared(); + std::unique_ptr server(new ThreadServer(noise)); + std::unique_ptr client(new ThreadClient(noise, std::move(server))); + } + assertEQ(ThreadSharedState::_dbgCount, 0); +} + +static void test1() +{ + for (int i = 0; i < 200; ++i) + test0(); +} + +/**************************************************************************/ + +// client will send to server +class Test1Message : public ThreadMessage +{ +public: + Test1Message() : ThreadMessage(Type::TEST1) + { + } + int payload = 0; +}; + +// client will send to server +class Test2Message : public ThreadMessage +{ +public: + Test2Message() : ThreadMessage(Type::TEST2) + { + } +}; + +class TestServer : public ThreadServer +{ +public: + TestServer(std::shared_ptr state) : ThreadServer(state) + { + } + void handleMessage(ThreadMessage* msg) override + { + switch (msg->type) { + case ThreadMessage::Type::TEST1: + { + Test1Message * tstMsg = static_cast(msg); + assertEQ(tstMsg->payload, nextExpectedPayload); + ++nextExpectedPayload; + tstMsg->payload += 1000; + sendMessageToClient(tstMsg); // send back the modified one + } + break; + default: + assert(false); + } + } + int nextExpectedPayload = 100; +}; + +static void test2() +{ + // Set up all the objects + std::unique_ptr msg(new Test1Message()); + std::shared_ptr state = std::make_shared(); + std::unique_ptr server(new TestServer(state)); + std::unique_ptr client(new ThreadClient(state, std::move(server))); + + for (int count = 0; count < 50; ++count) { + msg->payload = 100 + count; + const int expectedPayload = msg->payload + 1000; + for (bool done = false; !done; ) { + bool b = client->sendMessage(msg.get()); + if (b) { + done = true; + } + } + + for (bool done = false; !done; ) { + auto rxmsg = client->getMessage(); + if (rxmsg) { + done = true; + assert(rxmsg->type == ThreadMessage::Type::TEST1); + Test1Message* tmsg = reinterpret_cast(rxmsg); + assertEQ(tmsg->payload, expectedPayload); + } + } + } +} + +// not a real test +static void test3() +{ + bool b = ThreadPriority::boostNormal(); + bool b2 = ThreadPriority::boostRealtime(); + printf("\nnormal boost: %d\n", b); + printf("realtime boost: %d\n", b2); + ThreadPriority::restore(); +} + +static std::atomic stopNow; +static std::atomic count; +static double xxx, yyy; +static std::atomic slow; +static std::atomic fast; + +//thread func +static void t4(bool iAmIt,int boost) +{ + // printf("t4 called with %d\n", iAmIt); + + if (iAmIt) { + switch (boost) { + case 0: + printf("no boost\n"); + break; + case 1: + printf("boosting\n"); + ThreadPriority::boostNormal(); + break; + case 2: + printf("boosting RT\n"); + ThreadPriority::boostRealtime(); + break; + default: + assert(false); + } + + fflush(stdout); + + } + while (!stopNow) { + for (int i = 0; i < 100000; ++i) { + yyy = yyy + (double) rand(); + } + + if (iAmIt) { + ++fast; + } else { + ++slow; + } + } +} + +// runs all the test treads, returns ratio of work done in the default theads +// and work done in test thread. +static double test4sub(int boost) +{ + stopNow = false; + count = 0; + xxx = 0; + yyy = 0; + slow = 0; + fast = 0; + int numSlow = 0; + std::vector< std::shared_ptr> threads; + + threads.push_back(std::make_shared(t4, true, boost)); + for (int i = 0; i < 9; ++i) { + threads.push_back(std::make_shared(t4, false, 0)); + ++numSlow; + } + + printf("started all\n"); + xxx = 0; + yyy = 0; + + std::this_thread::sleep_for(std::chrono::seconds(20)); + stopNow = true; + + for (auto thread : threads) { + thread->join(); + } + + ThreadPriority::restore(); + const double ret = (double) slow / (double) fast; + printf("slow/fast was %f (%d) ratio=%d\n", ret, (int) slow, numSlow); + return ret; +} + +static void test4() +{ + printf("testing thread priorities, part1. will take a while\n"); fflush(stdout); + const double ref = test4sub(0); + printf("testing thread priorities, part2. will take a while\n"); fflush(stdout); + const double boosted = test4sub(1); + printf("testing thread priorities, part3. will take a while\n"); fflush(stdout); + const double boostedRT = test4sub(2); + printf("ref = %f, boosted = %f rt=%f\n", ref, boosted, boostedRT); fflush(stdout); +} + +#ifdef ARCH_WIN +static void test5() +{ + ThreadPriority::boostRealtimeWindows(); +} +#endif +/*****************************************************************/ + +void testThread(bool extended) +{ + + assertEQ(ThreadSharedState::_dbgCount, 0); + assertEQ(ThreadMessage::_dbgCount, 0); + test0(); + test1(); + test2(); + test3(); + if (extended) { + test4(); + } +#ifdef ARCH_WIN + test5(); +#endif + assertEQ(ThreadSharedState::_dbgCount, 0); + assertEQ(ThreadMessage::_dbgCount, 0); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testTremolo.cpp b/plugins/community/repos/squinkylabs-plug1/test/testTremolo.cpp new file mode 100644 index 00000000..397ed6fd --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testTremolo.cpp @@ -0,0 +1,50 @@ + +#include "asserts.h" +#include "Tremolo.h" +#include "TestComposite.h" + +using Trem = Tremolo; + +static void test0() +{ + Trem t; + t.setSampleRate(44100); + t.init(); + assertEQ(t.outputs[Trem::SAW_OUTPUT].value, 0); + assertEQ(t.outputs[Trem::AUDIO_OUTPUT].value, 0); + t.step(); +} + +static void test1Sub(float skew) +{ + Trem t; + t.setSampleRate(44100); + t.init(); + + t.params[Trem::CLOCK_MULT_PARAM].value = 4; // 4 is free run for Trem + t.params[Trem::LFO_RATE_PARAM].value = 5; // max speed + t.params[Trem::LFO_SKEW_PARAM].value = skew; + float max = -100; + float min = 100; + for (int i = 0; i < 5000; ++i) { + t.step(); + const float x = t.outputs[Trem::SAW_OUTPUT].value; + max = std::max(x, max); + min = std::min(x, min); + } + assertClose(max, .5f, .001); + assertClose(min, -.5f, .001); +} + +static void test1() +{ + test1Sub(0); + test1Sub(5); + test1Sub(-5); +} + +void testTremolo() +{ + test0(); + test1(); +} \ No newline at end of file diff --git a/plugins/community/repos/squinkylabs-plug1/test/testVocalAnimator.cpp b/plugins/community/repos/squinkylabs-plug1/test/testVocalAnimator.cpp new file mode 100644 index 00000000..a8b12d91 --- /dev/null +++ b/plugins/community/repos/squinkylabs-plug1/test/testVocalAnimator.cpp @@ -0,0 +1,373 @@ +#include "asserts.h" + + +#include "ExtremeTester.h" +#include "VocalAnimator.h" +#include "TestComposite.h" +#include "VocalFilter.h" +#include "FormantTables2.h" + +using Animator = VocalAnimator; + +/** + * Verify no output with no input. + */ +static void test0() +{ + Animator anim; + anim.setSampleRate(44100); + anim.init(); + + anim.outputs[Animator::AUDIO_OUTPUT].value = 0; + anim.step(); // prime it + + // with no input, should have no output + for (int i = 0; i < 50; ++i) { + anim.step(); + assert(anim.outputs[Animator::AUDIO_OUTPUT].value == 0); + } +} + +/** + * Verify output with input. + */ +static void test1() +{ + Animator anim; + anim.setSampleRate(44100); + anim.init(); + + anim.outputs[Animator::AUDIO_OUTPUT].value = 0; + anim.inputs[Animator::AUDIO_INPUT].value = 1; + anim.step(); // prime it + // with input, should have output + for (int i = 0; i < 50; ++i) { + anim.step(); + assert(anim.outputs[Animator::AUDIO_OUTPUT].value != 0); + } +} + +/** + * Verify filter settings with no mod. + */ +static void test2() +{ + Animator anim; + anim.setSampleRate(44100); + anim.init(); + for (int i = 0; i < 4; ++i) { + float freq = anim.normalizedFilterFreq[i] * 44100; + assertEQ(freq, anim.nominalFilterCenterHz[i]); + } +} + +/** +* Verify filter settings respond to Fc. +*/ +static void test3() +{ + Animator anim; + anim.setSampleRate(44100); + anim.init(); + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.step(); + + for (int i = 0; i < 4; ++i) { + // assert(anim.filterFrequency[i] == anim.nominalFilterCenter[i]); + float freq = anim.normalizedFilterFreq[i] * 44100; + assertClose(freq, anim.nominalFilterCenterHz[i], 1); + } + + anim.params[anim.FILTER_FC_PARAM].value = 1; + anim.step(); + + + // assert that when we shift up, the expected values shift up + for (int i = 0; i < 4; ++i) { + float freq = anim.normalizedFilterFreq[i] * 44100; + //printf("i=%d, freq=%f, nominal=%f\n", i, freq, anim.nominalFilterCenterHz[i]); + if (i == 3) { + assertClose(freq, anim.nominalFilterCenterHz[i], 1); + } else + assert(freq > anim.nominalFilterCenterHz[i]); + } + +#if 0 + anim.params[anim.FILTER_FC_PARAM].value = -1; + anim.step(); + for (int i = 0; i < 4; ++i) { + if (i == 3) + assert(anim.filterFrequency[i] == anim.nominalFilterCenter[i]); + else + assert(anim.filterFrequency[i] < anim.nominalFilterCenter[i]); + } +#endif +} + +static void testScalers() +{ + Animator anim; + anim.setSampleRate(44100); + anim.init(); + + // cv/knob, trim + + + // cases with no CV + assertClose(.5, anim.scale0_1(0, 0, 1), .001); // knob half, full trim + assertClose(.5, anim.scale0_1(0, 0, -1), .001); // knob half, full neg trim + assertClose(1, anim.scale0_1(0, 5, 0), .001); // knob full + assertClose(0, anim.scale0_1(0, -5, 0), .001); // knob down full + assertClose(.75, anim.scale0_1(0, (5.0f * .5f), 0), .001); // knob 3/4 + + // CV, no knob + assertClose(1, anim.scale0_1(5, 0, 1), .001); // full cv, untrimmed + assertClose(0, anim.scale0_1(-5, 0, 1), .001); // full cv, untrimmed + assertClose(.25, anim.scale0_1((-5.0f * .5f), 0, 1), .001); // 3/4 cv, untrimmed + + // assertClose(.75, anim.scale0_1(5, 0, .5f), .001); // full cv, half trim + assertClose(0, anim.scale0_1(5, 0, -1), .001); // full cv, full neg trim + +} + + +#if 0 +static void dump(const char * msg, const Animator& anim) +{ + std::cout << "dumping " << msg << "\nfiltFreq" + << " " << std::pow(2, anim.filterFrequencyLog[0]) + << " " << std::pow(2, anim.filterFrequencyLog[1]) + << " " << std::pow(2, anim.filterFrequencyLog[2]) + << " " << std::pow(2, anim.filterFrequencyLog[3]) + << std::endl; +} + +static void x() +{ + Animator anim; + anim.setSampleRate(44100); + anim.init(); + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.step(); + + dump("init", anim); + + // TODO: assert here + anim.params[anim.FILTER_FC_PARAM].value = 5; + anim.step(); + dump("fc 5", anim); + + anim.params[anim.FILTER_FC_PARAM].value = -5; + anim.step(); + dump("fc -5", anim); + + std::cout << "\nabout to modulate up. maxLFO, def depth\n"; + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.params[anim.FILTER_MOD_DEPTH_PARAM].value = 0; + anim.jamModForTest = true; + anim.modValueForTest = 5; + anim.step(); + dump("max up def", anim); + + std::cout << "\nabout to modulate up. minLFO, def depth\n"; + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.params[anim.FILTER_MOD_DEPTH_PARAM].value = 0; + anim.jamModForTest = true; + anim.modValueForTest = -5; + anim.step(); + dump("max down def", anim); + + std::cout << "\nabout to modulate up. maxLFO, max depth\n"; + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.params[anim.FILTER_MOD_DEPTH_PARAM].value = 5; + anim.jamModForTest = true; + anim.modValueForTest = 5; + anim.step(); + dump(" modulate up. maxLFO, max depthf", anim); + + + std::cout << "\nabout to modulate down. minLFO, max depth\n"; + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.params[anim.FILTER_MOD_DEPTH_PARAM].value = 5; + anim.jamModForTest = true; + anim.modValueForTest = -5; + anim.step(); + dump(" modulate up. maxLFO, max depthf", anim); + + +#if 0 + // TODO: would be nice to be able to inject an LFO voltage + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.params[anim.FILTER_MOD_DEPTH_PARAM].value = 5; + for (int i = 0; i < 40000; ++i) { + anim.step(); + } + dump("fc 0 depth 1", anim); + + std::cout << "about to to depth -\n"; + // TODO: would be nice to be able to inject an LFO voltage + anim.params[anim.FILTER_FC_PARAM].value = 0; + anim.params[anim.FILTER_MOD_DEPTH_PARAM].value = -5; + for (int i = 0; i < 4000; ++i) { + anim.step(); + } + dump("fc 0 depth -5", anim); +#endif +} +#endif + +/** +*Interpolates the frequency using lookups +* @param model = 0(bass) 1(tenor) 2(countertenor) 3(alto) 4(soprano) +* @param index = 0..4 (formant F1..F5) +* @param vowel is the continuous index into the per / vowel lookup tables(0..4) +* 0 = a, 1 = e, 2 = i, 3 = o 4 = u +*/ +//float getLogFrequency(int model, int index, float vowel) +static void testFormantTables() +{ + FormantTables2 ff; + float x = ff.getLogFrequency(0, 0, 0); + assert(x > 0); + + x = ff.getNormalizedBandwidth(0, 0, 0); + assert(x > 0); + + x = ff.getGain(0, 0, 0); +#if 1 // store DB, not gain + assert(x <= 0); + assert(x >= -62); +#else + assert(x > 0) +#endif + + // spot check a few freq + // formant F2 of alto, 'u' + x = ff.getLogFrequency(3, 1, 4); + assertClose(x, std::log2(700), .0001); + // formant F3 of soprano, 'o' + x = ff.getLogFrequency(4, 2, 3); + assertClose(x, std::log2(2830), .0001); +} + +static void testFormantTables2() +{ + FormantTables2 ff; + for (int model = 0; model < FormantTables2::numModels; ++model) { + for (int formantBand = 0; formantBand < FormantTables2::numFormantBands; ++formantBand) { + for (int vowel = 0; vowel < FormantTables2::numVowels; ++vowel) { + const float f = ff.getLogFrequency(model, formantBand, float(vowel)); + + // check that the frequencies are possible formants + assert(std::pow(2, f) > 100); + assert(std::pow(2, f) < 5500); + + const float nBw = ff.getNormalizedBandwidth(model, formantBand, float(vowel)); + assert(nBw < .5); + assert(nBw > .01); + + // db now + const float gain = ff.getGain(model, formantBand, float(vowel)); + assertLE(gain, 0); + assertGT(gain, -70); + // assertLE(gain, 1); + // assert(gain > 0); + } + } + } +} + + +static void testVocalFilter() +{ + VocalFilter vf; + vf.setSampleRate(44100); + vf.init(); + + vf.outputs[VocalFilter::AUDIO_OUTPUT].value = 0; + vf.inputs[VocalFilter::AUDIO_INPUT].value = 1; + vf.step(); // prime it + // with input, should have output + for (int i = 0; i < 50; ++i) { + vf.step(); + assert(vf.outputs[VocalFilter::AUDIO_OUTPUT].value != 0); + } +} + +static void testInputExtremes() +{ + VocalAnimator va; + va.setSampleRate(44100); + va.init(); + + using fp = std::pair; + std::vector< std::pair > paramLimits; + + paramLimits.resize(va.NUM_PARAMS); + paramLimits[va.LFO_RATE_PARAM] = fp(-5.0f, 5.0f); + // paramLimits[va.LFO_SPREAD_PARAM] = fp(-5.0f, 5.0f); + paramLimits[va.FILTER_FC_PARAM] = fp(-5.0f, 5.0f); + paramLimits[va.FILTER_Q_PARAM] = fp(-5.0f, 5.0f); + paramLimits[va.FILTER_MOD_DEPTH_PARAM] = fp(-5.0f, 5.0f); + + + paramLimits[va.LFO_RATE_TRIM_PARAM] = fp(-1.0f, 1.0f); + paramLimits[va.FILTER_Q_TRIM_PARAM] = fp(-1.0f, 1.0f); + paramLimits[va.FILTER_FC_TRIM_PARAM] = fp(-1.0f, 1.0f); + paramLimits[va.FILTER_MOD_DEPTH_TRIM_PARAM] = fp(-1.0f, 1.0f); + + paramLimits[va.BASS_EXP_PARAM] = fp(0.f, 1.0f); + paramLimits[va.TRACK_EXP_PARAM] = fp(0.f, 2.0f); + paramLimits[va.LFO_MIX_PARAM] = fp(0.f, 1.0f); + + // TODO: why is output going so high? + ExtremeTester< VocalAnimator>::test(va, paramLimits, false, "vocal animator"); +} + + +static void testVocalExtremes() +{ + + VocalFilter va; + va.setSampleRate(44100); + va.init(); + + using fp = std::pair; + std::vector< std::pair > paramLimits; + + paramLimits.resize(va.NUM_PARAMS); + + paramLimits[va.FILTER_Q_PARAM] = fp(-5.0f, 5.0f); + paramLimits[va.FILTER_Q_TRIM_PARAM] = fp(-1.0f, 1.0f); + paramLimits[va.FILTER_FC_PARAM] = fp(-5.0f, 5.0f); + + paramLimits[va.FILTER_FC_TRIM_PARAM] = fp(-1.0f, 1.0f); + paramLimits[va.FILTER_VOWEL_PARAM] = fp(-5.f, 5.0f); + paramLimits[va.FILTER_VOWEL_TRIM_PARAM] = fp(-1.f, 1.0f); + paramLimits[va.FILTER_MODEL_SELECT_PARAM] = fp(0.f, 4.0f); + + paramLimits[va.FILTER_BRIGHTNESS_PARAM] = fp(-5.f, 5.0f); + paramLimits[va.FILTER_BRIGHTNESS_TRIM_PARAM] = fp(-1.0f, 1.0f); + + ExtremeTester< VocalFilter>::test(va, paramLimits, false, "vocal filter"); + +} +void testVocalAnimator() +{ + test0(); + test1(); + test2(); + test3(); + testScalers(); + testFormantTables(); + testFormantTables2(); + + testVocalFilter(); +#if defined(_DEBUG) && true + printf("skipping extremes\n"); +#else + testVocalExtremes(); + testInputExtremes(); +#endif + +} \ No newline at end of file diff --git a/plugins/makefile.msvc b/plugins/makefile.msvc index e42d6502..e2af06f7 100644 --- a/plugins/makefile.msvc +++ b/plugins/makefile.msvc @@ -24,6 +24,7 @@ bin: $(call run_make,LindenbergResearch,bin) $(call run_make,Qwelk,bin) $(call run_make,SonusModular,bin) + $(call run_make,squinkylabs-plug1,bin) $(call run_make,SubmarineFree,bin) $(call run_make,Template,bin) $(call run_make,Valley,bin) @@ -46,6 +47,7 @@ clean: $(call run_make,LindenbergResearch,clean) $(call run_make,Qwelk,clean) $(call run_make,SonusModular,clean) + $(call run_make,squinkylabs-plug1,clean) $(call run_make,SubmarineFree,clean) $(call run_make,Template,clean) $(call run_make,Valley,clean) diff --git a/src/plugin.cpp b/src/plugin.cpp index 0b67c885..e7bff1b4 100644 --- a/src/plugin.cpp +++ b/src/plugin.cpp @@ -581,6 +581,7 @@ extern void init_plugin_Koralfx (rack::Plugin *p); extern void init_plugin_LindenbergResearch (rack::Plugin *p); extern void init_plugin_Qwelk (rack::Plugin *p); extern void init_plugin_SonusModular (rack::Plugin *p); +extern void init_plugin_squinkylabs_plug1 (rack::Plugin *p); extern void init_plugin_SubmarineFree (rack::Plugin *p); extern void init_plugin_Template (rack::Plugin *p); extern void init_plugin_Valley (rack::Plugin *p); @@ -627,6 +628,7 @@ void vst2_load_static_rack_plugins(void) { vst2_load_static_rack_plugin("LindenbergResearch", &init_plugin_LindenbergResearch); vst2_load_static_rack_plugin("Qwelk", &init_plugin_Qwelk); vst2_load_static_rack_plugin("SonusModular", &init_plugin_SonusModular); + vst2_load_static_rack_plugin("squinkylabs-plug1", &init_plugin_squinkylabs_plug1); vst2_load_static_rack_plugin("SubmarineFree", &init_plugin_SubmarineFree); vst2_load_static_rack_plugin("Template", &init_plugin_Template); vst2_load_static_rack_plugin("Valley", &init_plugin_Valley); diff --git a/vst2_bin/CHANGELOG_VST.txt b/vst2_bin/CHANGELOG_VST.txt index 9080c871..3a862aa4 100644 --- a/vst2_bin/CHANGELOG_VST.txt +++ b/vst2_bin/CHANGELOG_VST.txt @@ -12,6 +12,13 @@ - add module VultModules.Tangents - add module VultModules.Tohe - add module VultModules.Trummor +- add module squinkylabs-plug1.Booty +- add module squinkylabs-plug1.Vocal +- add module squinkylabs-plug1.VocalFilter +- add module squinkylabs-plug1.ColoredNoise +- add module squinkylabs-plug1.Tremolo +- add module squinkylabs-plug1.CPU_Hog +- add module squinkylabs-plug1.ThreadBoost ** July 1st, 2018 diff --git a/vst2_bin/README_vst2.txt b/vst2_bin/README_vst2.txt index cc3ca14b..fc42c7bf 100644 --- a/vst2_bin/README_vst2.txt +++ b/vst2_bin/README_vst2.txt @@ -238,6 +238,13 @@ The VST2 plugin includes the following add-on modules: - SonusModular.Scramblase - SonusModular.Twoff - SonusModular.Yabp + - squinkylabs-plug1.Booty + - squinkylabs-plug1.Vocal + - squinkylabs-plug1.VocalFilter + - squinkylabs-plug1.ColoredNoise + - squinkylabs-plug1.Tremolo + - squinkylabs-plug1.CPU_Hog + - squinkylabs-plug1.ThreadBoost - SubmarineFree.AG106 - SubmarineFree.BB120 - SubmarineFree.FF110 @@ -274,6 +281,14 @@ The VST2 plugin includes the following add-on modules: - Valley.UGraph - Valley.Dexter - Valley.Plateau + - VultModules.Debriatus + - VultModules.Lateralus + - VultModules.Rescomb + - VultModules.Splie + - VultModules.Stabile + - VultModules.Tangents + - VultModules.Tohe + - VultModules.Trummor Please notice that the Audible/Mutable Instruments modules appear under a different name in the UI. For example, "Clouds" is listed as "Texture Synthesizer". diff --git a/vst2_bin/log.txt b/vst2_bin/log.txt index 815ac499..9ed8779e 100644 --- a/vst2_bin/log.txt +++ b/vst2_bin/log.txt @@ -1,55 +1,70 @@ [0.000 info src/main.cpp:58] VeeSeeVST Rack 0.6.1 [0.000 info src/main.cpp:61] Global directory: f:\git\VeeSeeVSTRack\vst2_bin\/ [0.000 info src/main.cpp:62] Local directory: f:\git\VeeSeeVSTRack\vst2_bin\/ -[0.000 info src/plugin.cpp:613] vcvrack: Loaded static plugin AS 0.6.1 -[0.001 info src/plugin.cpp:613] vcvrack: Loaded static plugin AudibleInstruments 0.6.1 -[0.001 info src/plugin.cpp:613] vcvrack: Loaded static plugin Befaco 0.6.1 -[0.002 info src/plugin.cpp:613] vcvrack: Loaded static plugin Bogaudio 0.6.1 -[0.002 info src/plugin.cpp:613] vcvrack: Loaded static plugin cf 0.6.1 -[0.002 info src/plugin.cpp:613] vcvrack: Loaded static plugin ErraticInstruments 0.6.1 -[0.002 info src/plugin.cpp:613] vcvrack: Loaded static plugin ESeries 0.6.1 -[0.003 info src/plugin.cpp:613] vcvrack: Loaded static plugin Fundamental 0.6.1 -[0.003 info src/plugin.cpp:613] vcvrack: Loaded static plugin HetrickCV 0.6.1 -[0.003 info src/plugin.cpp:613] vcvrack: Loaded static plugin Koralfx-Modules 0.6.1 -[0.003 info src/plugin.cpp:613] vcvrack: Loaded static plugin LindenbergResearch 0.6.1 -[0.003 info src/plugin.cpp:613] vcvrack: Loaded static plugin Qwelk 0.6.1 -[0.004 info src/plugin.cpp:613] vcvrack: Loaded static plugin SonusModular 0.6.1 -[0.004 info src/plugin.cpp:613] vcvrack: Loaded static plugin SubmarineFree 0.6.1 -[0.004 info src/plugin.cpp:613] vcvrack: Loaded static plugin Template 0.6.1 -[0.004 info src/plugin.cpp:613] vcvrack: Loaded static plugin Valley 0.6.1 -[0.004 info src/plugin.cpp:613] vcvrack: Loaded static plugin VultModules 0.6.1 +[0.000 info src/plugin.cpp:614] vcvrack: Loaded static plugin AS 0.6.1 +[0.000 info src/plugin.cpp:614] vcvrack: Loaded static plugin AudibleInstruments 0.6.1 +[0.001 info src/plugin.cpp:614] vcvrack: Loaded static plugin Befaco 0.6.1 +[0.002 info src/plugin.cpp:614] vcvrack: Loaded static plugin Bogaudio 0.6.1 +[0.002 info src/plugin.cpp:614] vcvrack: Loaded static plugin cf 0.6.1 +[0.002 info src/plugin.cpp:614] vcvrack: Loaded static plugin ErraticInstruments 0.6.1 +[0.002 info src/plugin.cpp:614] vcvrack: Loaded static plugin ESeries 0.6.1 +[0.002 info src/plugin.cpp:614] vcvrack: Loaded static plugin Fundamental 0.6.1 +[0.003 info src/plugin.cpp:614] vcvrack: Loaded static plugin HetrickCV 0.6.1 +[0.003 info src/plugin.cpp:614] vcvrack: Loaded static plugin Koralfx-Modules 0.6.1 +[0.003 info src/plugin.cpp:614] vcvrack: Loaded static plugin LindenbergResearch 0.6.1 +[0.003 info src/plugin.cpp:614] vcvrack: Loaded static plugin Qwelk 0.6.1 +[0.003 info src/plugin.cpp:614] vcvrack: Loaded static plugin SonusModular 0.6.1 +[0.004 info src/plugin.cpp:614] vcvrack: Loaded static plugin squinkylabs-plug1 0.6.1 +[0.004 info src/plugin.cpp:614] vcvrack: Loaded static plugin SubmarineFree 0.6.1 +[0.004 info src/plugin.cpp:614] vcvrack: Loaded static plugin Template 0.6.1 +[0.004 info src/plugin.cpp:614] vcvrack: Loaded static plugin Valley 0.6.1 +[0.004 info src/plugin.cpp:614] vcvrack: Loaded static plugin VultModules 0.6.1 [0.005 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_146097_cc.svg [0.005 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_31859_cc.svg [0.005 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1343816_cc.svg [0.005 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1343811_cc.svg -[0.006 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1084369_cc.svg +[0.005 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1084369_cc.svg [0.006 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1745061_cc.svg [0.006 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_1240789_cc.svg [0.006 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_305536_cc.svg [0.006 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/icons/noun_468341_cc.svg -[0.200 info src/window.cpp:690] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/DejaVuSans.ttf -[0.303 info src/app/RackWidget.cpp:192] Loading patch from string -[0.304 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/AudioInterface.svg -[0.304 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/ScrewSilver.svg -[0.305 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/PJ301M.svg -[0.305 info src/window.cpp:690] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/ShareTechMono-Regular.ttf -[0.306 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/MIDIToCVInterface.svg -[0.308 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/XCO.svg -[0.309 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_68px.svg -[0.309 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_16px.svg -[0.309 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/button_9px_0.svg -[0.309 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/button_9px_1.svg -[0.310 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_38px.svg -[0.310 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_0.svg -[0.310 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_1.svg -[0.310 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/port.svg -[0.311 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Fundamental/res/VCA.svg -[0.311 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/RoundLargeBlackKnob.svg -[0.312 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Fundamental/res/VCF.svg -[0.312 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/RoundHugeBlackKnob.svg -[0.313 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/ADSR.svg -[0.314 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-hexscrew.svg -[0.314 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-SlidePot.svg -[0.314 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-SlidePotHandle.svg -[0.314 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-PJ301M.svg -[3.116 info src/app/RackWidget.cpp:154] Saving patch to string +[0.186 info src/window.cpp:690] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/DejaVuSans.ttf +[0.288 info src/app/RackWidget.cpp:192] Loading patch from string +[0.289 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/AudioInterface.svg +[0.290 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/ScrewSilver.svg +[0.290 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/PJ301M.svg +[0.290 info src/window.cpp:690] Loaded font f:\git\VeeSeeVSTRack\vst2_bin\/res/fonts/ShareTechMono-Regular.ttf +[0.291 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/Core/MIDIToCVInterface.svg +[0.294 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/XCO.svg +[0.294 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_68px.svg +[0.294 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_16px.svg +[0.294 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/button_9px_0.svg +[0.295 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/button_9px_1.svg +[0.295 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/knob_38px.svg +[0.295 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_0.svg +[0.295 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/slider_switch_2_14px_1.svg +[0.296 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Bogaudio/res/port.svg +[0.296 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Fundamental/res/VCA.svg +[0.296 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/RoundLargeBlackKnob.svg +[0.297 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/Fundamental/res/VCF.svg +[0.298 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/RoundHugeBlackKnob.svg +[0.299 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/ADSR.svg +[0.299 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-hexscrew.svg +[0.299 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-SlidePot.svg +[0.300 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-SlidePotHandle.svg +[0.300 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/AS/res/as-PJ301M.svg +[5.065 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/squinkylabs-plug1/res/thread_booster_panel.svg +[5.065 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/NKK_0.svg +[5.066 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/NKK_1.svg +[5.066 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/NKK_2.svg +[9.920 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/squinkylabs-plug1/res/colors_panel.svg +[9.920 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/Rogan2PSWhite.svg +[9.920 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/Trimpot.svg +[14.657 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/squinkylabs-plug1/res/trem_panel.svg +[14.657 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/RoundBlackKnob.svg +[14.658 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/Rogan1PSBlue.svg +[19.194 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/squinkylabs-plug1/res/formants_panel.svg +[26.901 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/squinkylabs-plug1/res/vocal_animator_panel.svg +[40.630 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\plugins/squinkylabs-plug1/res/booty_panel.svg +[40.630 info src/window.cpp:741] Loaded SVG f:\git\VeeSeeVSTRack\vst2_bin\/res/ComponentLibrary/Rogan3PSBlue.svg +[67.401 info src/app/RackWidget.cpp:154] Saving patch to string diff --git a/vst2_bin/plugins/squinkylabs-plug1/LICENSE b/vst2_bin/plugins/squinkylabs-plug1/LICENSE new file mode 100644 index 00000000..30d73b3d --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 squinkylabs + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/vst2_bin/plugins/squinkylabs-plug1/LICENSE-dist.txt b/vst2_bin/plugins/squinkylabs-plug1/LICENSE-dist.txt new file mode 100644 index 00000000..636c5ee5 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/LICENSE-dist.txt @@ -0,0 +1,67 @@ +# kiss FFT + +Copyright (c) 2003-2010 Mark Borgerding + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the author nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +# Vincent Falco + +"A Collection of Useful C++ Classes for Digital Signal Processing" +By Vincent Falco + +Official project location: +http://code.google.com/p/dspfilterscpp/ + +See DspFilter.cpp for notes and bibliography. + +-------------------------------------------------------------------------------- + +License: MIT License (http://www.opensource.org/licenses/mit-license.php) +Copyright (c) 2009 by Vincent Falco + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +# VCV Rack + +Copyright 2016 Andrew Belt + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# VCV Rack Component Library + +Component Library graphics by Grayscale (http://grayscale.info/) +Licensed under CC BY-NC 4.0 (https://creativecommons.org/licenses/by-nc/4.0/) diff --git a/vst2_bin/plugins/squinkylabs-plug1/README.md b/vst2_bin/plugins/squinkylabs-plug1/README.md new file mode 100644 index 00000000..13a7bbcd --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/README.md @@ -0,0 +1,21 @@ +# About SquinkyVCV + +This project is a growing collection of modules for the VCV Rack vritual modular synthesizer. You can find more information about VCV Rack [here](https://vcvrack.com/). + +You can find us on Facebook [here](https://www.facebook.com/SquinkyLabs). + +## Manuals + +Here is the user's manual for our modules: [instruction manual](./docs/booty-shifter.md). It contains descriptions of all of them. + +## Contributing + +Please use our GitHub issues page to report problems, request features, etc. If you don’t already have a GitHub account you will need to create one, as you must be logged in to post to GitHub. + +For general communications, you may use our [Facebook Page](https://www.facebook.com/SquinkyLabs). + +We are not currently accepting pull requests. + +## More information for programmers, builders, and experimenters + +There are "secret" modules, extra code and other things scattered around this repo. Pointers to some of it can be found [in the docs folder](./docs/README.md). diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/README.md b/vst2_bin/plugins/squinkylabs-plug1/docs/README.md new file mode 100644 index 00000000..71d640ab --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/docs/README.md @@ -0,0 +1,31 @@ +# Squinky Labs modules for VCV Rack + +All of our plugins are free and open source. The [instruction manual](booty-shifter.md) describes all of the released modules. + +All of our released modules may be found in the [VCV Rack plugin manager] (https://vcvrack.com/plugins.html). This is by far the easiest way for most users to install our modules and keep them up to date. + +It is also quite easy to clone this repo and build them yourself. In order to do this, however, you must first download and build [VCV Rack itself](https://github.com/VCVRack/Rack). + +## Information for developer and experimenters + +There are various test modules, test code, and other good things hidden away in this repo. We will try to point you to some that may be of interest. + +Most of the documentation may be found in the [docs folder](../docs/.). + +## Building source + +As with all third-party modules for VCV, you must: + +* Clone the VCV Rack repo. +* Build Rack from source. +* Clone SquinkyVCV in Rack’s plugins folder. +* `CD SquinkyVCV` +* `make` + +## Experimental modules + +At any given time, there may partially finished "experimental" modules in this repo. You can find up to date information on them [here](experimental.md). + +## Unit testing framework + +We have reasonably thorough tests for our code. Some of this might be of interest - it's [here](unit-test.md). \ No newline at end of file diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/booty-shifter.md b/vst2_bin/plugins/squinkylabs-plug1/docs/booty-shifter.md new file mode 100644 index 00000000..44c078a4 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/docs/booty-shifter.md @@ -0,0 +1,207 @@ +# Table of contents + +[Chopper](#chopper) Is a tremolo powered by a clock-synchable LFO. The LFO is highly programmable to give a range of waveforms. + +[Thread Booster](#booster) reduces pops and clicks in VCV Rack by reprogramming VCV's audio engine. + +[Colors](#colors) is a colored noise generator. It can generate all the common **"colors"** of noise, including white, pink, red, blue, and violet. + +[Growler](#growler) is a "vocal animator." It imparts random vocal timbres on anything played through it. The pseudo-random LFOs all have discrete outputs. + +[Booty Shifter](#shifter) is an emulation of the legendary Moog/Bode frequency shifter. + +[Formants](#formants) is a programmable bank of filters that can synthesize various vowel sounds and morph between them. + +[Attenuverters](#atten) + +[CV ranges](#cv) + +# Chopper tremolo / programmable LFO + +In its simplest use, Chopper produces a very wide range of **tremolo** effects. The built-in LFO can produce a wide range of waveforms that cover many of the waveforms produced by the tremolo circuits built into **vintage guitar amplifiers**. + +The LFO is sent to an output so that it may modulate other modules. + +There is also a **clock synchronizer** and multiplier. + +To use Chopper as a tremolo, send a signal to the *in* jack, and listen to the *out* jack. Leave the *clock* control at the default *int* setting. Most of the knob settings will now affect the tremolo effect. + +## Chopper LFO + +![chopper image](../docs/lfo-waveforms.png) + +To understand all the LFO settings, it helps to watch the outputs on a scope. + +The LFO starts as **skewed** sawtooth. In the middle position it is a symmetric triangle wave, at one end a positive sawtooth and at the other a negative sawtooth. The signal is sent to the **saw** output. + +The skewed saw then goes to a **waveshaper**. As the shape control is increased the LFO is gradually rounded and then flattened. The shaped LFO is send to the *lfo* output, and used internally to modulate the audio input. + +LFO Controls: + +* **Shape** Flattens the LFO waveform. +* **Skew** Dials in the amount of asymmetry in the LFO. +* **Depth** Shifts and scales the LFO. + +When used as a tremolo effect, you will hear **more tremolo** when these controls are turned up. + +## Chopper clock + +The LFO in Chopper may be synchronized with the ckin signal. There is a built-in **clock multiplier**. To use the synchronization, patch a clock to the ckin, and select x1 from the **clock** knob. To run at a multiple of the input clock, select x2, x3, or x4. + +When Chopper is being synched, the **Phase** control sets the phase difference between the external clock and the synchronized LFO. This may be used to "dial in" the tremolo so that it sounds exactly on the beat (or off the beat). + +There is also an internal LFO that is controlled by the **Rate** control. Set the clock control to *int* to use the internal clock. + +# Thread Booster + +Thread booster raises the priority of VCV Rack's audio rendering thread. In many cases this decreases the annoying pops, ticks, and dropouts that many users are experiencing. + +Many users have reported that Thread Booster helps significantly. Others have reported that it does not help at all. No one has reported a detrimental effect. + +For a deeper dive into the Thread Booster, you should read [this document](./thread-booster.md). + +Thread Booster has a UI that lets you boost the priority of the audio thread. There are three arbitrary settings: normal, boosted, and real time. When the switch is in the bottom position, the plugin does nothing; the audio thread keeps its default priority. In the boost (middle) position, it sets the thread priority to the highest priority non-real-time setting. In the real-time position it attempts to set it to the highest possible priority, or near it. + +If setting the priority fails, the red error light lights up, and the priority stays where it was last. + +To use Thread Booster, just insert an instance into VCV Rack, then adjust the boost switch. In general we recommend the "real time" setting, if it is available on your computer. + +Once Thread booster is in your session, it will boost all the audio processing - it doesn't matter if other modules are added before or after - they all get boosted. + +Linux users - you must read [the detailed document](./thread-booster.md) to use this module. + +Note to users who downloaded the original version of Thread Booster: we've improved it a bit since then, especially on Linux and Windows. + +# Colors variable slope noise generator + +![noise image](../docs/colors.png) + +Colors is a colored noise generator. It can generate all the common **"colors"** of noise, including white, pink, red, blue, and violet. It can also produce all the colors in between, as it has a **continuously variable slope**. + +Colors has a single control, "slope." This is the slope of the noise spectrum, from -8 dB/octave to +8 dB/octave. + +The slope of the noise is quite accurate in the mid-band, but at the extremes we flatten the slope to keep from boosting super-low frequencies too much, and to avoid putting out enormous amounts of highs. So the slope is flat below 40hz, and above 6kHz. + +## Things to be aware of + +When the **slope** changes, Color needs to do a lot of calculations. While this is normally not a problem, it’s possible that quickly changing the slope of many instances of Colors could cause pops and dropouts. + +The slope control does not respond instantly. If you turn the knob, you will hear the change, but if you were to modulate the CV very quickly you might notice the slowness. + +# Growler + +![vocal formant filter image](./growler.jpg) + +**Growler** is a re-creation of the Vocal Animator circuit invented by Bernie Hutchins, and published in Electronotes magazine in the late 70's. It continuously morphs between different vaguely voice like tones. + +**To get a good sound:** run any harmonically rich signal into the input, and something good will come out. Low frequency pulse waves and distorted sounds make great input. + +The controls do pretty much what you would expect: + +* **LFO** controls the speed of the modulation LFOs. +* **Fc** controls the average frequency of the multiple filters. +* **Q** controls the sharpness of the filters. +* **Depth** controls how much of the modulation LFOs are applied to the filters. + +## How Growler works +![growler scope](./growler.png) + +There are four **bandpass filters**, roughly tuned to some typical vocal formant frequencies: 522, 1340, 2570, and 3700 Hz. The filters are run in parallel, with their outputs summed together. + +The first three filter frequencies are modulated by an LFO comprised of **4 triangle wave LFOs** running at different frequencies. They are summed together in various combinations to drive each of the filters. + +Each **CV input stage** is the same: a knob that supplies a fixed offset and a CV input that is processed by an attenuverter. The processed CV is added to the knob voltage. See below for more on [Attenuverters](#atten) and [CV ranges](#cv). + +The **LFO** Rate control shifts the speed of all 4 LFOs while maintaining the ratio of their frequencies. + +The **Fc** control moves the frequencies of the first three filters, but not by equal amounts. The lowest filter moves at 1V/Oct, but the middle two move less. The top filter is fixed at 3700 Hz. + +The **Q** control does just what it says - controls the Q (resonance) of the filters. + +The **Modulation Depth** controls how much of the summed LFOs get to each filter. Again, the lower filters move farther, and the top filter is fixed. + +The smaller knobs next to the main knobs are **attenuverters**, which scale control voltages. For more on attenuverters, [see below](#atten) + +There are three LFO outputs next to the blinking LFOs. These may be used to modulate other modules, or as semi-random voltage sources. + +**Bass boost** switch. When it’s in the up position (on) there should be more bass. This is done by switching some or all of the filters from bandpass to lowpass. + +LFO **Matrix** switch. This is the unlabeled switch in the LFO section. When it’s down (default position) the LFOs are closely correlated. In the middle we try to make them a little bit more independent. When it’s in the up position the LFOs will often go in different directions. + +# Booty Shifter frequency shifter + +**Booty Shifter** is a frequency shifter inspired by the Moog/Bode frequency shifter module. + +![booty shifter image](./booty-shifter.png) + +The name "Booty Shifter" is a nod to the classic analog module, as well as to a black cat named Booty. + +Booty Shifter will take an audio input and shift the frequencies up or down. This is not like a pitch shift where harmonics will remain in tune; it is an absolute frequency shift in Hz, so in general **harmonics will go way out of tune.** It is similar to a ring-modulator, but less extreme and more versatile. + +## Getting good sounds from Booty Shifter + +Feed in music and shift the frequency a good amount. + +Feed in **speech or radio** and shift it. + +Feed the CV from a **sequencer** to sequence the mayhem. + +Shift **drums** up or down a little bit to re-tune them without the usual pitch-shifting artifacts. + +Small shifts in conjunction with delays can make a chorus-like effect to thicken music. + +## Inputs and outputs + +* **IN** is the audio input. +* **CV** is the pitch shift control voltage. -5V will give minimum shift, +5 will give maximum. +* **DN** is the down-shifted output. +* **UP** is the up-shifted output. + +## Controls + +**RANGE** sets the total shift range in Hz. For example, the 50 Hz setting means that the minimum shift is 50 Hz down, and the maximum is 50 Hz up. + +Range value **Exp is different**. Here minimum shift is 2 Hz, maximum is 2 kHz, with an exponential response. As of version 0.6.2 the response is an accurate 1 Volt per Octave. + +Shift **AMT** is added to the control voltage, with a range of -5..5. + +## Oddities and limitations + +If you shift the frequency up too far, it will alias. There is no anti-aliasing, so if the highest input frequency + shift amount > sample_rate / 2, you will get aliasing. Of course the Bode analog original did not alias. + +If you shift the input down a lot, frequencies will go **below zero and wrap around**. Taken far enough this will completely **reverse the spectrum** of the input. This was a prized feature of the Bode original. + +As you shift the input down, you may start to generate a lot of subsonic energy. A **High Pass filter** may clean this up. + +The down shift **frequency fold-over**, while true to the original, does cause problems when trying to pitch drum tracks down a lot. High pass filtering the input before it is down-shifted can control this. + +# Formants vocal filter + +![formants image](./formants.png) + +Like the **Vocal Animator**, this is a filter bank tuned to the formant frequencies of typical **singing voices**. Unlike Growler, however, the filters do not animate on their own. In addition, the filters are preset to frequencies, bandwidths, and gains that are taken from **measurements of human singers**. + +One of the easiest ways to **get a good sound** from Formants is to use it like a regular VCF. For example, control Fc with an ADSR. Then put a second modulation source into the vowel CV - something as simple as a slow LFO will add interest. + +Use it as a **filter bank**. Just set the knobs for a good sound and leave it fixed to add vocal tones to a pad. Again, modulating the vowel CV can easily give great results. + +Try to synthesize something like **singing** by sequencing the vowel CV of several formants. Leave the Fc in place, or move it slightly as the input pitches move. + +Controls: + +* **Fc** control moves all the filters up and down by the standard one "volt" per octave. +* **Vowel** control smoothly interpolates between 'a', 'e', 'i', 'o', and 'u'. +* **Model** control selects different vocal models: bass, tenor, countertenor, alto, and soprano. +* **Brightness** control gradually boosts the level of the higher formants. When it is all the way down, the filter gains are set by the singing models in the module, which typically fall off with increasing frequency. As this control is increased the gain of the high formant filters is brought up to match the F1 formant filter. + +The **LEDs across the top** indicate which formant is currently being "sung". + +## About Attenuverters + +The small knobs next to the bigger knobs are **attenuverters**. They scale and/or invert the control voltage inputs next to them. When they are turned all the way up the full CV comes through. As they are turned down less CV comes through. Straight up none passes. As they are turned down further the CV comes back, but inverted. + +Sometimes we use attenuverters with a *linear taper*, and sometimes we use an *audio taper*. If you find that on a particular module you do not like the response of the attenuverters, please log a github issue. + +## Control voltage ranges + +Our modules usually expect a control voltage range of **-5 to +5**. The associated offset knobs will also add -5 to +5. After attenuverters are applied to CV the knob value is added. After all that, the result is usually clipped to the -5 to +5 range. diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/booty-shifter.png b/vst2_bin/plugins/squinkylabs-plug1/docs/booty-shifter.png new file mode 100644 index 0000000000000000000000000000000000000000..1d5c6553e255348dafb698ab66e80dc6bc55490d GIT binary patch literal 20917 zcma%?byU>RyY2<0k?s^Jkp=~%yF-xf25AtGE-^SP z_x^F$buAYRG0c3wd%y4VeBNh=zgL!dj!uUDR60B6D05$%}G}0(~~DyzyAG4=yxnKfAU0CUQSX> z-NW!O3&n>(YO!+{0g)~c2a)caj32G-$}s=+Yf}lF-qRn(5}v-vT2i>xCV5vYKZ94E z2LHx;5r`uyE*F3!{@mwr3G>(1&GHI;(e*I<*oa}e_f~r0!PuCk|JCy68jCfS`Cr}L z<`X(r=U^nZN#f`Wat(zbtiXi%Zw)arQ_k!tZWEQ-po*%hr=H9sec_x@*_ zVmcSSd=d`(CoBV~fct^AxVU(`&vle*^w@H<8wO1ZyV1({xJtbxvR0*`kTX>B@?d_K zCMdBS`Teg9UPq$W>aSkC3L_rSL>Z)cJm%XT%W84il_%>WEGfk*Hd5(^eaX8`&-!8xV z!Johxi8qT4j>N3zgz34lBxDmoQ$^aT7Co} zGs8YMGVk_%h|$ zC=eDKTNo;-^#|XMGwWHQQg$~I^pR3#zjhV>_vQUFEy+PujkLJ zTsDVt(OsiD6A>Y|$NrDZWJoRUhc|a;<1L?$A0BRxhYRfH-*>{+`xA@8_t-n`PNzSp zY!0WYs8jYv?Z0?xR+P$S@Opn9(ssR-u|HQi$0PthYB@F^#1+0j|DgIJRHxcBMAQ9u zz5=nT=&hvK+UBNIj`zi$)XL?8ZDqK$Wpx52&dJ%7d9QQSxJ8bTxBKJ6y*82aXcSuH zBzSX56mCI8th$+e&f=Pw9YkN=*IKK-^n=h3Wbm?IqZNDq`ucn{+jSj9vZ*>N>CRZz$8;VDwL%9X9 z8qYp;+v3P>{S#7Q(88tZdUM#YI(s~~LrTgiBq2J&UOta_o+}=Lp4;lM-0Xh15DsCQ zDbPiM8Rr+np-xI2#inu7QN$_bwbh z%@)7MWreHLA48erdpWNnd@b2JsT#$246g3=@O%H0E|e7We#Zy+dhB&^6sBhSs)*x? zpy!Aasrkl0Jos@so}|20zgv4yjzNiJ6V}O`LQ!|w`Te8Taj`!7b?%y#aUs~yy%o-obuO7}kwJI2_@i17TKoH$16~a5hDhKHt}cR3*V7Gyf9=peByg^{v+ZS zu7-1xPFP64|1Ivk(zB^mk%?u1&6rIPAj zl#}JwkaVd`DU69&zTF_oHTKiZ&V~N2n3?~NL!5IulX0tbhuS{#IJG68Ijc2 zV@z1TaAfsNLMh7Mi@LR^#P*&}mX2i!oUzsxZK}dxush%NXx<&dPe@3)CHm+Oj2s;A zlO}9caem^jR-5(1nG0gI*#nj-`J7(NqJI!4OdU6RzeaAtukb_ZV~LC z-X?1XME_n@289LAFKH*o1hZv2zg#<6+a8IhmD@d4=$KJ$b_b@2O|AJL-W}o7FO;^+&2@0ab|FE*yQQX2 zHWfedsZF^3JwGKfC{-Ed;=)}K*(+EgFJU$YqM>kGyU!Upe4&fB&DXOMXs&ZTJfugATxNw%X+tXk*PNmwJYBm?o zd4lnHccy};c#brK0~2fWx&Q@UETKQZ|7?`EHtDrS#9%K$LA(j$EX|EcH+m^98QHhX zCgk6gI$VErf+Me95J|XeLdfEaU~aiXb~x@&e#_lS)>0r(K2b6A^1sP*Tk|Y5JUv`tWgZM3-ponwYdPgWgB+c1y)a zS0q~Sr?Ut%uoM%nWtSCN0X1bcmWkWdvo6OFIqp>egC|}mUO7fPPo{)On1`zn>p-VM z3}Lu5L9fpDW)!mCBe=c7ry*uIV6-UFu7-x;()Q@&Jl-Gszf64}CxH9zo%4ipC0zE2 z7(p2KPOdeI+pC%v0ge;7z4J9zau3*){F2?nPZGlu*`vvMmD>k89Xswdn_WM0aqBdY zYbmb`B{MrNH*3%*q>lxo;qOd-UiFnBlR@MK>MV$^uMtQ*pzpL>+{=BkOmgE!1|n!1 z)qE_5lG5LN#6y2Ii)qEb;Ys%hF%3A^|Jf$-6;r3ptIj$KbZ9T`QLDqQ-io|W+hfnk z-gqch5ajT?$!Cz+lD@Hy;}b$ETESp%eK8aRHH9Id%jTB!@!->B)Vr#Ds5b5W#_Jd} zm^WhNOg4e0&o1of=*StuZqQ7Z!G)G!;oSC~)9c*&Ew|U@L6iAlLcT&O*eM^f6x|8t zBC)GRdl04yloBr#O;7%IDJl}?vFJBC?M)ZUPkbdS_6;QZxtM z-fl4MMgM8pD6I+Iuk0|aG7h{{I|W^_!+xbME4$1X z#W^cIeMn=8^+c{~rTpgWpRT9Rv7kTUN6Re@j*sp4Yqz$uMLH$w#hp*Mo$(E#1n`L| z@j){`@w*1T{~HDO zP}nK>t%i`lH(Sg+8?U{+F_<{eEF1r_T(2%g=_q)Yw3+73wX}=VvT>3^z3$e~3^VEt zv^UaTx6b+ewCoo&lAox~bAPM8d@+SR^~kVeIF)_M>< z_{J$?P98hOmhwjDJXbB@>R~iAG*|4k$+n;nbfQbS&%d-6ju#;52o>606&I6;{XN8# zlx+fbpIhn=?;?g&n?ZMg2Ra>Kd^-lhVLWY)SIwcvD2!dTRWey#qgGDf%Luc#`!N&I z^QKI_21iyyNTc)x*-WWMsuJ=UN+Z@yR3%P5woEFm4Aub}ei)3X@^1gm$ac0uEa-Bl ztP|m%%r_Z4rC)AwXFp6=zISA)u< zwu9F62?W@v5g)aTYEy!~Zq$n%qf(;sGXJR`zd|pA4^3n_*K#c`zRkR15Rp?iKzi!Q zx=W@hrJnxk2f2ja8^=I1LRQNrkKLDvS?zC&*b|$6$zb(oM(s|p+IPh(9X!v7r4ULG zG4i8tG4OWB-M`o~@lHyUKU}Ogs&N<%iToG|`EKYWBp9w6zlrzT`c0M!(M-+un8Q+Q zwceb=tOd%5wI7o2B5}J)EeDKR(8KBF&4ia7^B;O)VXT@ETKt*y{@5I0Uow%9YaG^- z`>Rz@X=;Ju1V+vqXpGwJTg0bNRn?Gn)X}8?sC@MxpL@WUF3KRjeRt1aZ z<0j{l1C=vJu1#`@Iw>+mb!;qlju{*?@=v~Rm`b`KMS4R+1Am9d`Obvj{Y|>TxRBeP z`k{_Dbn+f$GUXo8fBKulumaFvN}9_B{18y`#QFb>WowxJ8{85Vb{7z{tdvylAyGLmbV z76ZqE`415_gqDQJqB_7JA75GvZ=}0bletP29qOmrH(LZzhWof31&0|FQ#mIKnap>6 zL6HjNEx{%H%)iv0=zx#^!7egZMg8;0#5=$GS6^;S_lr_-Z#YOG2mG)J=C_^aDUP@n z0xg9}Pd;U`I|{%3<5Mt7wLnCj^YTbOpmw$Lx@T{OdQ)2SJ-dXv4c(5#ijQ(O16R;Brt{2GapGkq>kRT`%bvm)OoS?Cv z*W5k`9v4Hfn4d~iA=(5bEMtYyI-H9xPp5TaRKDO3k-ZcLt42rkP=gULk4POL2<)XSDT9NwS*SlEYvEy;Qoj zs%-&_iJnhDsRmUR>elqGOzKfDt3!(QT*Y!6jf7-+*f&v?-q=FrtjT6sp_BBzhj*%) zm-}^dhP1eN79UX0Ywu-_7T}8XyP8!hKKb&c9?>jZG&EuwwsRFi_6xNxn$Vh(JVU)7^fag|rsfnh!26W4`&Dkf#b{;zSt6qfPm7Dlt5?>*Wl5&9df3O==eLXD-GI%P1{2Pd; z)d-V7rXnSrZ#VFE7T3@8;qi`GeOF=Bk?llJ^WA*G-ONwwp2uY20yC*Faa>(FG7>-EdKHQe$ByXJJWS2Q0`x0}X zcc*))kW|`ons3Hu{QUg(B-cP6E>$lHn!?v${`1!JhgaR6t7=xCiTSD5hC!=q^=Q7& z#tO4mrQKXX7XP5UyvoDA_&kCd?fCOWMn{g`5}uDs=7SLWi3uR3@S--M^pUX**0xO$yf1gs z85^QKhTg?315NQ>!tIojL!dvFT18$NZ;sz(Yd|heR$m%dd2O(8;6mhw?9Rx* z@HHvGD4|Q?t&>h#eQvwda4K_bIzvSQ%A1o#IRq>!{s9843jDGP?S52|5uKf#ysJJ_H$pPAJ-nW$8!96AuE4MZ zSw{bmT>gl~X4u*Y1l_pEV=M4Xz=tK2GiVbSNlHqBf}mNZZQ`nM&=CPl-do$*gH$8G z-KC})JNa0t#RjJ}@$<`77J(wwJmkc2>-DFsM7_jBM4I(whYCuM9zakQ*4uFR=EA4* zVgBz74Gpp1U=wh?WOka60@^hmK&=0mj9*q)NcaqjjlkpsWQ&N1nC<`IInn5I?ShRR zdwIARSrX8h1&=2Q<9ldW_4B?xZ19`|&08szqT}|c1pvQEvrE`LKtl_)9}_2Npm)DQ zv8U+slw4?OX#oL}C&Bm!CL)^LViz>%-Jw;NKv?|%i~zu^lk;;)Z6hC8$iii2MWtSY zauT7eq+LM}{8eO&2~G~Z9GYxeRJMo7(E0AvbsQkh8ne%TqfAM|fzbF!Oy0^|^Z;-a z1WJHqOMO3(&Rw{W>Gk`&7$7i=Z2qT%j8c*JX?saFVqadX7a42rJ}WLR=C&G>Oa^2- zZ`vpTnT8KTmIew;G& z+NCEb2OzuP_V9bG%@@1QEi6j@^JYs&F|D;KI1rN|o2D<%4;Sa=<~{@cupp)Rp+J!- zfy%R!!aBH{hMWK&{|j@c!~4Duq-|H=c7$Qe1Y)U0M?~-g#RRO=-x%NJ%=A_O#CoB3 z7js5{XG@@vzqR@4bqS4RH&lwX<{d_Oet&b3SneJ$RrH}SM*IGq(_hhc3!svqIQlK_ ztOEf!%ze#Z0Y;sh{qW_Jbgm&rhYvAV9;~!wG~NBe775G4Qk8y+{z~ugZ()ufIyN@3 z4My!>r(PPIF-jzYhg9Oo=$d5{ISL}`8>!!n%*eb!6y=$TPVX8c0gPgxqeDGJR$K&n zYWfflvFG#dBt1)BPL2^^p5~>c&e}eh3BT;DY91#8hi>|bJf9?sxg+CASW=Yl7F`5kUNYC~2ZQ3DJpI==y zT692%#qG)UcG^{|(TzN$f`1F=*3cf)2f2lPT%Y7N<4DEWmTqCy+S2 z2i6I-4>y0~y))I*7(ElmZo^h;=w44dQ_d02sxH=VIt9BuGma9j?hg$NJ#Jc};m)32CNC^$VI|y`4_Uzb^Y=le4!=b(8MmU^H}%s%mM+q49Vzv z)abl^y`A$2oV3LeZ90lMA)>e0^*GYS%j7; zVjVZP5QQ2IeTot;<&t$dBuFX&+&rGIktsuRBFMGS;d0tM5my!UF=zMjSgf}nWpnO% zRw^WK5VqeNdZ5^Fu*nD}JWPN$N!Ife+KjcXTq{hAO+?K4H#wCD8fr8Xu`DkADlD@S zl@)$;)e~ZdAt;lQe@jT{mLzK7v|Uq(Hx?HUDr-R{_Fe&d!|o0agPg{7hhQ|=%tWv+ zG<_G@k-yT<-p!`^F5BkDYPBL$h^971&G!(QjuN0=u3IPe1vx5l_tWKj z|HEbx?*YE?Vcztin7DGFEhRZL&9%zr7sV>2lBjEYcs;`C=L0p}oi2*54_MV2+J6NdOX>ekud_6#(C z6}I~Moeci)V9Z}xw#hn zIrB;nOdWsOF`t!uuZOt8xWnjCihRXmqq7^bW3I14G`NyMkcT+1rM``ZQS>4~0hU|{ z$L|~0EH-T8ztq!wleBlkikn&1NTBb&yV3z*F)B88rA|!&nDCW}^h}`kv9RIfG)qb2 z5)er0TJFi+>9tB=vM@WmFsk0`)g$-zFY5=!PKlRqu7cq+SsS#)_qM+HlkwKK5<{vS zu7}apc)|v;jU7_s)_6}>S69$xqNxxY&HAzKu_P!Q;>%h% zDd`AshJLQH5`>*u4C?5=5Z3WR^%QW1lnDkG{b^W1wL=UvV3UOhTszL4zpvXdL=J&AGOAB^59=&{8M5PY5!C)gB zEO0{SMJ=}CXQpX<=~QNSDQ9~z`!>@GlCnP;)IIOsvSZjFnY7trLi0@ zv#5fz9rCoh_Kv(2!v6W;LbMXDm}B&6tc=uPrQ`GZWQe`da72b2AIJLa<~rmQr{*jB zS?^qhfj}N3j8hB`4^NSh!*3YgBDY1n(3qmo5~acZ;zj4;;^KMy=h2Lerp6;2uU-^O z!r#*cg0gL2o>}zT_c%Tr%+jy-pJ%kWO3}V%VjhDc!Y+0uBvPorJd7sc(-f;3UUwm5 zF!{0jmUvYaOs_pIIrOhnBmtA@>vpSbPw5obzlgB6_6yU~GhahPGYl6)xtXOIvb1TL z**4uxN74yhj3ih=YZr0Z2%FdxEjSxy?_go(cM60X@4R1U7GqS&?m-2DKx_7G51SXw zW^1n=Vdna5e$j`s9Hll3AH;IdMx`Q&-fFa&{Q5eWAgoW@u4U*cCA6kTld=uJA*-Zn z@!ys{pRUk~VM%aX))%RJ=cPNRM;x8X28J_f>DBg&Jb7(XclY70EMAmOWs1f>!N==1J=rlcZDI4Km=(e#1h5<}+1r*9x9(uH zg5mqjzGP^rZe7WID81uSWBj#3l+7-zXs}vOd5o0g+JM9FdT0&lb0Yh|Q?et&Se2MX znAXmpyw#cL>{(WmM|IE6XYFAD4x``R7Fb=a_+A;*4c96--LnR2rvSSR)B=f<@bBSa z+x^+{%O(AIX8(8!Dx^I!Ki#F|Wv771xCi%V34Cq`m=AOWB?~PO zT=_Rj(bNy!??vgjza;M}DYFI`QMh#a22b;a0S#F(*sxq6^-MsH~YlwWZnQFAKl<`9}5K)pm&Hus6%WI{> zpL+S3C4EHrG^$rm@)Na>`Z!F{K7~j?3IE$80})tUMm{IoIsUm{3mW*og}h>nH91Cs zr4rpSh2`;xEw6ZPQ)=1IWljV}>VSky9 zAO_|(zx*F>SBr{@<_x_@Lp~NPk3Q%S<>khx2WeiiQw#fRVC{_}zH@$rtWFl4zP zyP3esO7`ZjXIa9&Uhm(>*^R#9()B@X-Ik&Dbv^jQ>30V56p|1Y>_5*dwgwqftT6YMysymNoS??7*@qb)~d)?lC|ILG0*Su zEWK(^HT3!j2*tm&%)j>!Kv03wrm|*{UI;p24{IujI!Pv>s#B;LFIa=bOMMynzch=3 zRuaH>CDceRJry5UWQdNH1%DToC^9&pOxTxn5Gl*b*9!dr6B*c5BQ)TZ@2 z0)ol3dRlo1lORZl=nSTm14;Gj0JNEzMBc5jtYM?iW!LqIQ8?5-U^~L6ii%#1{0qBS zlp;*mSPZ8~7D6fzL~J)i0rL_w0|*0`^zZlZzWo{RT8#>8tpUvjn0BReHR2%VyQuud zB>jO^kLXCk*49=oQFor}mWX3c8UWu0{!bS7oBRrPNh=exvvkk*0rA@!S3J zL5he?feaA2?Q^r7Ox#t_KfqjT6SWzk9kC7E-^#L<7;q5>5|I6{q<_2C(EP)oPzp!T zS~jiDt>xTgWg@yEF4k$gkYnKQKwdxwb7JK$x}&~|_Sc)A<{qH&<1hfB1Ug7LYE zAnaMtIu4#>`)$D(4aMN=o315y*a4?*zOz2E`6UFB#nlW$I4c z{rw*Sd*rqIgX8;gp|;psQrjmeKmxqhQV?DAh;*y0_pUGOhoa}T3nDiZ~s-jpk_ zj$oe^WmwDHrVWsM90Ik0*I@|&P6&Sq(pe}%8_2h~y1wzx@!DfLk7?kbvZ7XN^>CK- z-=Af@rWyv#6OY^!N1g0X%HB-ruo?1(iVMY@?J6jE6P17~#0{=Ze|z&Wh?2n3M9qve zyrzd47iAL>2|cWY$S^Z0>CNXOePJsQPi_6`DKCKRmw|w;xCct7jHF~(gLY8t%g%4{ zRFdr2qAf+1 zjUTCvf|yHS(!m!@0QjXkSZs7*W?gr*1l8r`xY9;HN}`_034bDO)0FPy_jzlw#k)&m zF=^8V_hEE0^a&78?=FIJq8_2jqt*cyTjhSJn-n9FCT{tLeFwAS)6?_uHHHQPwG%$4Z33F7jWcFXZ!f3kCg;=Bfb~Yh+hB>#U#17n zNvNpt;S%uot>_|KK$&Svbf<#kO9mOcuvnOehJ=KKN*2FVIyPNOtLrY_2NDpMG-bM; z=%$!E%9GNe@(2SI7UC-m*ZUL;___*)NH|-(*R9|K| zwtMas7n(0Wi-g*)w0Z(99E|fAV0x1M-ud%6%11$>wWfV%M)cJp8^5+Vv(-6F_wvmDkS$3Q`IT^O}QV%99f z(W|!nnDh1#M5dcH~$&P2{&CYKC>Rkg9Wqfbc z&Q%E?QulUupi)6z3Z(Lx;tjO5)9hyA7*(irxK4O+sKsW%nA^N}lz`o^73eHtcEcn$ z{3t52$Hp)fI|tL0f7+!zCWDF+vFl=Yijj#)ZdU0%`Fjj1V%R9x)dpH427u$X1m7M43sXzrrUWfdeL-AzUmLNXuY8A&k6HjYD0X z{O55oEGa1o2#oBYc|AXU4+I54Lw{&b_(Gv+ng!61z@2$*rCVW9@QGf4-!ScN4i_Tm zJ=&*BzSAiA3{EbnzK?6jV}j&npaXYRuImPPrT-l)6hO*BX~611{1qgal@ZV^A@H7b zSrZ2$cEhM$+|SE?m-AK|$s!MMvxP`N%>mYWg<1qIVrj)GBbXb3QHlN8)@XT|0?qhn zJZ(P^#o_RFFara_(DsX2J#$CW*TR@fU!Rkk_jXR?$!w43jC-gFdz}0Qe(ZM(u!%%Z z&o>fPBIW{cjKsye0jNKj09m8X*0(dTcr<@fu~?@z3%=znA8(@K_5WM#iET=pSnSs+iUa5}YDFa3?!E zJFwoP-t2&RV|@NO3s}b>c%9>S!*r^a!Eekg_d~PNP$_*-*!RX2oemT1RJv}C)*dp~ zCwYPMz1SSNAYYP*qG&x^M*3mqpxp6D$Y99B%fn+J!sK+45FOBV+r@fTX-5Bty9HM9 z%0Yy28#*S z^hLkPrFfde0zs9Bo|7{^58xOXmEG*!kA$pzn^Zzx?>k>`sOPGJjNUD{xO;5$^n)&I5e@N32P4oxJL}WJ+2Kq9Ij7*@o7FeRx8ykC*`*MceaD!Ia^xmxwM@`7oGh? zZiw}?TCOCT&XBg#&_FdvMI|wLczTArdpulkhm2PTH8k+1#D`Ie@qV0?tS{(CS_qvd zLOKXTm4EgUtFr|+J|YFP0C+JEJO(E2&VhG6_ZM?K#E$r^YyH*lQp{15 zK?+zhT`c3x$H~WsE0IH~NzAWwm@rO1537mpColEwiXJ}tX8QYpfeHQ$F z78HOK{#5r1;CkboqS_-Q(ouy7ZY#?5oAB_z>f4bCcN0K#^U+hBRxUZC;K4wM{ASF{ zdL!FGdI^TwBM>jkwbaRRhKLL4w6E7q$aH>7f+qMe|b$LE#l_2#BY zRXwl=dkibj2TH-_A8{Y)(msLKJ9&g}OBtES`|@Qjh`&NkkN^G)MqV1Zqrib2=~ zTj!>b+jZwXo)Tkrs)b{~**F7ekB;rvTP?@!`#W`Jw$M`T>RgulPfWVCuP)iHep&4= zQgdLGwS7C+OnLZ0z@)Y@nXdp|6D6n>b}l%!(0z~}W4V_g74+cn``0()-TJE;{+VP@ zpk*{4!UZ`5;SQiKD6>D*5nZ8ySS=MLB`fpei-iWq98mbPfXLMw0($B3%x6H)vF&2F zFlV7A5f5kRm8?GWT2S)Ga1`;kobdzo=p5G40$zYD=W0kfteAi4Ydwifm~pT>n46>dbk zEaa#`{#d~S6ncw6iV%xfyA*Jl#m&Q3A!0h2lNK}5|fk5~7%@C9X*Fv5jP>RM z!BHy_Nd{!{3k78p_vqG7;Ohp>AhXeehK^1q;@4XCClr4*mmU;Q$WLt@Le;xl*wrG-^JPAeE2e`k4ziY1dm@zbn72C{(;^4BCFvCT3su7XM9 z;Oa_{#hHiefSYqKQU(?pWP@*v>HCz8Em1>QY*jrt{RA;36jDK|HtMfyoV9M2@-e0nX34$TQZ06!YNXZtGrI~V2LfszaE7s~s|#X^VNUgT2rLl=8xaLg>?zh_TtaGLg@W?-09d$9?ssy$4z{Rw?7a3s{qrMP6RxB}E`EDV?y>OfG{=_1Q+q zC-Y3Wt07fQIQ{nfpR%|*E>B4rg{Sa`XB%Xl32GLtnlhsBbC}p#jZss^gd4{lMf<|X zr>_@2wbVKCKz2c?fO9nzD$lAT)Ayt#z+42vJB0(0jSw zW5r*izrzpAE+;^K4J$ULDI>0wfDRD^u>i>Af*kmNpXXwu|9rGmsFIUHNZGg>V>X!vjwtCF#aJkT zO1C)I?(5Avhy|E6v%-zjRN^*>L;(70b{>UDTlUciR8XYJ5n*+j6fX~t~&qKg@he!Mw5C`~y z>I6(9sJS{#<>PhQdsf!gMLR0y<{RXWtu%ViA8eY}=Fx+|G^cNivcgj0WgxTAF__W= z4W11uR%OS77m)EhbDdvSDvHLh<^y=j#~I7 zaKG8!NAF;NxVEd(YS%K#1h;vyVDLU|4`v;T>F&rVE33QR{efY?h|3tMNX>3f zw}ur&0G~5#lwAV{(?E)5spWI5ANZ9-WvDcpQ8SB?4FYrhczPTAj%4(=w?Ps?!zrxf zcogE>fXJlh@m>V;YiKTG!vQ@|enry~VyTdd;LW5bW z91KWQS91YzB5r|9$b|_}ws?;_5Li$3DHST~`n;+o1SzMsj}s6nU{9+3FHh0ps&nJr^0Tih*j`@nsx_5!-(0(Q{YR%RqPJe>dlSGCtO!vr z?}~qod^kG>_$uk6i7c3Osuj4VgJU44+}1EwsK8zFTJK%NHPMAZ+hpID>vIW|o6F!@_);iy(ZSYk9RNj4aD8+ULlAKJBysFPd$OC0F!?}rs*Tf z>nI6uR;R@^#a7$Q%xtd0Xb~bcd_!~bX{(AP?&VbWvNspEW@Y@>5V=u0v-Z+qoEb6 z&tD4+l>e^PnW`|@xL_j4@iVorvd%@~`28=426h-YKc8L?nR!wY2k`l!z$WdIje2EQ zCEJ$ct-BOCRN})PZ&B>m$k*;YrE#gVS)(9%2?z+V=Ks!oNXJqwgBk=xvQ5s#2lhrP zug@pH#Z>K=OWYC*Dn#%D=S?$9G~>O$2OnaT6023J|INE)?0`cf0o~4B1?uM<%z+$1 zJqGQDWA)Uj-j0NVE94AzT0%~Xt2Ta_%t8(|dnS*Rgck`#3%{cNQ^|r6MZ)=SSn;NL zz#r6gFq?4$3K5dcO77S-$RYO1+uIZ0l6#_uMoTrNx0xj2uV`#B5y|AgKY&Yq6H!8M7ltkJJ;e^%A&-)x$>Rpf&O)ibG{}ca z2wG5{3`^d%8mN=MwUg|5F;tOjS^jNr>*7OoVG>z4Xj;Mc@r3w&F_fiaIVc*>fmy_x z5Vo+yq~0-F>U*BU)1$@poeo(cNv^wAWN|A?d4c#u+ASf0qt2C7D}voS=D_35^`3=Z z_O4)6G#vao5h+z?*p#Z21gZq(j>X0=C>6CJ4W3eeiQwKGF`h|7%!iSajFc zCx4_8t5#K{fFy&Kf)(0I8PJ_2(;X*bqJ{41#$l8By;;0!R7^+~#1%Hk!b(CHIj!Qw@BU1w9Atg_d9IX&zSh6+ z<~>i(=d(Vg8S-}8hajJYXH@fB&-(_H?IAUg*!(RSR{o+eFE#J9!@~2W$(;_xvTc&PzYqR z?aYlQ_b}V!lR0Qz)PRA8Szi>m?n$py#V@!o{A}#>S#WcTzEYzy`Vm+t{J}BOw_B=M zZjnsq3p1BxG6rA`EmmqisbR&d6r?+HeYOtL!Bn(FNd59?k^C_=GAA9+`Nhkn_H|XxY(6ycHh`$AAy4Bj%KS*OSiNIcm`AF|k#|FArRkq-5}`+v{tSv04?ZYj8Z6 zK{3s^HV2XEAG4aVhkPuo@4hO|+yk1f(9E7)58RVK%@+GNzb|t2S&PU#M`E%BBnbhQ zYzD>_#JR`6y|o3E1x#fPnq2ZPS0Jo<4S(Of)=D6MUZ&GvIc(|aJ`h4@pzu=Kq&eIs z4>>y5EVqs!$SxJf3y3Pf3x|Q{<75D2Ezg}e{de?_F1MiY+gFK371~YW8Mu1g^>Aeh z5iu{1%gkDqpR@j1kG6}K_PMWLm^p&<81Ro#-RGlvym{8GQtF&?ia6VBLx0S#Dwaz% zEAg%(I1m`h=yRk>bI0=ySSoYsB9rV9x(IhZh5$ol#7=lmy2$ECk_L3sP$ z0~C`yF*f9#)g;>aU%!qhPV}Hxee=y_V<)~>fhd(l6(YsmG@YE}Ie%*5{mZVDYNOUQ zKRHgO+;}rJPg3${cQCGY3cHrDcl|-jFLxOknRTM7sk=}`d^X0+FyZP?S7VLb&Tcj{ zs>Bpwul;iVtA#U-hjMS@xTB10(b$H`ZmeTplCp1+?1k(jM3H62LzWoC*vl4U9s4vn zQ79qVqELvFPAZcuSwbi!p3CQR-p|}~-}B;sU)T4y{Q6BdNo$sVhDK-e`c3)k=c>@& z=7ZQziusfBiAY5N6bkI==a~Qe>Z69fXE9!9kzSo}ZH)UbYDVtNmU!`;3nnd6I&s}j^Q=~IHAhZXf)NMvCc50J<1pgzhIQ^Rk&S%n z#ws=ME{-y;kVW8TU+dms<3=JE0$!Es#H3YKbEA&eq_x%g<{Kq*4tpry=-c33pBFkp zT`p>8ZOh~1aKq)ht|`s^jU+taS|5V+B!A2GF9C=PEdjwhv*&wDQ++OSQRwCiwOeXD zPGtY_+IvooL=`JbWpB(qOZT)Zu9sUwKblO1`j9oQnF=NojJOLQ_)B{WqmWIIk1o}Y z6s0qWe`q0)^A-wcLUB7a%&Y_TwZkR^1@UKt*@1s|rvQT zx$xSSzJerPSGAbE=KmZjNgZ?v3-Rl36x|0IuRh8IMsRBw64u%3#MxRr8qN^_=#zWaKLIdJQ23-*U!Q1+0re#a+$}O-#|edz zUmG}XIjpykP%tAl4IaKZoc+62j9iR^Zy#0gIuM4+5D}GELl3Jpd>*&f<7FcAlU9-! z_cvZDMMXNhs#5aJ)dSx-@Dxj6u|pN)#tBuVS=orRvV`t!DhMieTCfO1iHLC}FNH$6 zeS4_Pb*fQfrRY7ttHC;y`}kCR;Pm4#>B4-A2DJKRQPzvg9&bW`p1VDnP4bVjd3gp~ zVsEQVh~3-qs~m0`Vpasb2Dv2vA?lk>$jXZ&vl{+mRs0^&uv=wb&JX8Qlf<088CJLp zjGcBTk7w;O)Fwf%3*Q%D?+!Glb&_;xxyx|T;MP-NVPU*&d+g#^HF$mwy!UTrW%gP}vlfCyuVK``_&jJb!}pYVfzC}(V=?UJr+${#;i zF`)xR4$pnC7+%emfiwbQdVYS!+y>Kjw!MDU9>Ne`;ctxiw*TkjK8a7Fx0O6?lVR$+ z;8zwi*%IiY{i;}0)Lxnba;*RrB0}qKY5YpUYQF65KJZ?}Ba$BB7sudTWcez?h3CM# z*ejHmJ~&#Lwc2FhykG#f(>$l0k^l@6>Gi@sB|W|O=0;xb#Dir4r(;h<8Jiz4#2{#zQ<7L80Mf6WJfv4mq6ZgMAWtGyMGKf+%=HXka7J*JnuGhO&T!0#W$VNB5KxLFmrQcTJhQW!vG9P69Ewjy!(cd$EdPOkA zN-A0(XRO(Vr5?nwz_yqc-16H-oSm9s&E29xl}&>o5_q-hM68PR^Siquu3uLTHRT_; zZ<509VO^|$CONv9{0*I!^*-*EcI1ZSMt3h&z>nqFVVh5GqJkxe#kRk^7Wxa@RRC}IkhPMz<@s*~_^31d;aXGT-|yO(&*q0$b#%yku~x^{m6 znEUmCwUD?octy{cfgU7JKzgjSWUqCx6SKhViJcdRZl6B+z zZ1JS5qX!;Z+GI~p!fBRl(HX@Gb|Fk=>*j1{dSZ036;+sVx-v%`E6t|ahVBw8<`?-( zv!1gp|HL(Sq}O$ccP7*>bpztzCCzIwVe$YQ=a}c9Sjv@M`KzQ}ycL3p>7;_ee4q$P zD2C!kmt@p&fo75y>VxrG#`#~n*`zWJ+cUgun-UflE^Cu^xX&N0$h)xZ&`Qdod!JcM z)INWOuZAU6fSWr^FK7Fysp6*1;0X3i_G4PZdF@pAjOVCQqv{AN4nu33(v)~iSmFyC z|HZ(D@+Gvqw}t95B;6%*8SZDV@3$4@V>Z5xPshV$t4o0 zJHGDzGuz@2p+`yg@85?3ZWJyy>72SHC#cVq;z>K*Hg!%}1a$U=#l^_&WoLP`;lpbm zg=N(W59-W}tG=XfSJ*^XYmFjND5sIQM{WhHsd6ZHayXLbxA+SI77r?qMR=X-$&ivx zV-m6{XrW4Zc!V%E*u}*8^7KS3<~t6KM2HHV&~_ZKG}wCo5dSahkQrTW7Q=YRz`=oM zuL@3^ubEMwlFL~~6okXZwpGHCww;qBhu``Rb<0T%$a5X1+#Q1YNN zocP$t#)9spgAW$D#Dnj;{x&h%AZn*u3_kFIwI}}P!ycEr7ZeCRr%L8zi1se1OQ!+z z4I$eqBvbN7&214<%w~hpB`qUuq3$2hX!O~uOmYYwf2C>MFXg>L)i7RsLL&cj3r>Nv zKFr5tQe~x*OaGe0=!&*?qjKU!b>BB;3w2bvSiL$@0IFZ)&B9I<{{?ja(e;Xu+0QtZ zgz-xr?GcUGuSO;;<%pd|qHwC!n9e_&$}TPY%t%?jLvEZ{2nOU=3%0ci!`!y`TN;y`N32j+QbZJ`Fww1_q(3ih>^SYKnn@8H9%g zeAllcISIUAdh036V>Hgvp@9n=M>$P742bh_y(q__n;bm>kS z_#&|rdIDiJC1D|P*jO|QI(Rj@1t8Cg`ud*v%*L;ECt8k`!9n*^Z-0OI?f-FGX7QwB z1@8B~bxtPm{`Y-B;K|?5H;;vb`WC#41x?vt9H;m8PwwbAkc5oCUEOca*KSvqdEnJ zZd~2EmF~R9O4p~{2Z&GvNy5pd?i2dbAx$n#&+zw%h3-n@*)?79gd}7t%chaWGP@Yv zFRq^xdOW~8a_9YXFmTfBvr|d-%%LMjdK}2bdWwFvR=a|mfdoO|cC%iEDHVNn_-b5N z=uhj=kEAE52f#6Cp>)-F?)MMCpCzHI)k+SS5N%Gz!F;kAmVVr_fgu z+HYDu2YeI%8UIG;j5~%K-crH;+G{=%vEenv^C94ui<8r-co}~?D{xF(u(-P?oEGw9 zAAW!CS$FHHROwK)wg{#3946U#x@r|(b|0(u3sK;|6U!7v=eueh=`-Rr0HQpVy1Uwq zf0I8lnZP9amUFFXo04s zeWszQc$x(J(gMkvWAST9ZPBQE-0o*6xwz)0j^{M8(M9)wFtf%Vh~KC6HiOR z`ZE`N_w$qgP#B1ytf6&QqS5`sujQxfFJP%QaHLvg{SjmI;{Xoimz&SO=L@9+FI)1m z7;*XUIs?t|U2TOE z;rGpjA>xw!KEHDObm9Cv;ltrXby3i(?WrGq_iqGrZn{oxK|dK@AM2LS$^3p{{dZA) z4DEk5LOHe}eSn5*cYM49&|s7$Sw`@BV4{;tqu2(`NPhzE7~*=@t9Oyj`}%wP%E4^m z&2Zb34UxXW>-9rR|GT#xUpPly?siXTfB*URj`FW|J>cS$!S`jKDEOWi@ajFzx#}NQ zC3BP#-}URe*&H;c;QTz``Q_@SN=BglRy-%r@iyY@$HyDDZo`QLYN5v7^T~m5+#j90 zN#EXfeC`j$o)gwI_qV7|ls3jko`Z(e5kE^Hqoo-2$+S|I;~v4AbvUO!ERJqd8M`_$%q z^S#4T_fOn@f%hzwy-o9zal!i4#2(AE#dKJciD{XSE$mN?c#{ zwEg)tRAz3MN|Ny{UGZBL+CI}Y8Hp1riy%)$>AJX+UJkGKtl8#XsvA=J=dK;u&)-aF zoq^{CCVtC(;sTJoru2%+nStJK^R+R=FY$N$5%8&w>Ry8npA65q1-PBGe0j|2yjWO% z{4Qw%Kp4XaH}>mF$M~I1R({j$OO)sO_YOr*-mKrj--vp@HTLkjr9Upn_|g>+-{U=9 zsOb4U`+Q1Y6Nhq6`u7IhvC#11+ddF~h!U17Un4f&jD5eB&v%Ryou!)k(%ZqIUj_ML zA#-r>P}==-Z_i10JxAl;mMPvINNN5<-n;YczP9o4xi^=s{Z1CZbIVTpGGpm$cO|t$ zFQv4TYg+L(n}DyEAN(pc`DC|1yIUMjf^m$_TZ7~S8=Qn?zpjn?bR8IWb?5Dza=+enyF5ntF*UJx=XN zo`y|13h^22uZx~({G#*pmEfa!_h5PQ$+wo|!QIg;hIR zp-)$+=GTbT`sM3wC{gt{oU>P~Qy-ZJBK@v|8ZFLG($ie_wPS24` zPw>2w?=^bOasAKF>Pyr%{fo=vwdbSUUfkl4-tfR536&XMHMa>r7UD#clK*;5jm2UA z%Fx$>etq5?L889uPtXC}X}Eu8z}MPpDVqbnt7P}jt5{zVl>RH{Z?dOy%#23 zr$wS$muk3ZMgVsY3dFr#3Z{)tBXHUMPyXoaE}p*k{qp*^^u;O6SBFljls5QPle{Ot ztpdIRl4SAfH|_V#qy;&HBQ4bdF47F2gUWgzPg9;icT3(vCgypl1T)2O`gEZlu?|^B zRQq`nvNBi!y~mrABl&wjJNvJBUAi77ed2z39;A?$BCyq}jQzW`h*?G)+9bEdV|y?x zw#&Od;7za*`m~=nr$&|bS?TMBAS1Mg6s5*=;reyQot{iOLaYd%-DUp2F8mj`fYm#0 zANsPL=T;1Hxyy}ibS>Te8gxts|N75gH3wIelV2aBwqN%#mX|YVn5NEA(QD0w#pW5@ zP2NzK4+*tf*_>>=zfY+Dem;TRZXJywVTl6M2V8AO0}ysoldi^9F+9?H2B{Rbb)xNeL!^t>|?& zX~rQ9)mP@X<*t_Ay=kwhdTs=_&*Tf*CRlgx`_O9JAA3p!N~IU zufccE0mBut9*mg1U9R&%%S%*g6?PASB_Te-Y0m-f^=;*ctL4onnVaL?ueXLL>j}rdab(Zq1--z!ce5R?$FT-JLzy)&Rm;#uF$>OOEr7ZtcZFy zA@Qw2==GlqW>-Z$Y5JtUL^4-f5oB6;PESSz#^}<6$($8iP)f8+Q)jvtW~A$TDKN0J z7uEOPpR+G-!REA;HWF2u`Ip)IUI57YYluP2f+pR7dps=k`<$*Vb3OL#t~uv4yYKdT zF8Iwsu47~O*ShoKDQ9licOTwcyx-3GkiTW5(N0nu>kwVm!nM)4Gb?PpFF3Os5}lj9q>wDKfOOC zy4QIWRB(&d4tBY#H2l3efXiTxaM=;k3N2aCqozOE_F1u@>|D^2{LXNH#tXHBk}z8uO%#FO`UWXe=y!q@AxV`{oOhkGl1cRnP|>@xT_y~YR{nipAEnooco(EKp#K&1aZds5_I#!=&a zes}YOlEih#d+TxFu`cj?Qd0!Ng()saPPd|T;4XHCX=(fTFbSSSOVyV{w^LCh$=Cn2 zPH^Wrp3}xAK&s>Q>WCTQ<2wln!Ab1T%)Z{PB-E7-kyXepB2V}Eg4f30mMtK+E_u~z z<$FshJzei5cCDl7jSzsNTTU9n#sFSt$>`$L6auhzZV5udi?R$(oE625s0XS<5=SLv z`suUxoPEI7i%(?|o?c%s_1)j}Q7$1&X&B~ZW<}ma>=&OOR~W#QcNN1sCoCbWLy97W zWW|5uVno)0e$LR|(LmwCBjB5(|_ zki~0vv>~vPCG-`8&z8s?ymq}BI3_{=(=BEjO(~XW^67bBg4~w4xL5{#lgc|VObOund*CbTY{(JWA?snzB zyys+WG+3_t{_ZBbZ|x)jxTh(;KJ&Y&WsvBnE5jOAea&z`qjSejPFe9!2aDH z5hk#ka3UFun%l8%7MZu5+q8X6%Ds}BMN(ZHek11qtrC5O`$VRi{>{~P;+KGl8PPA? zfo%7SdLjtoF@;V^1_XfO%{7s@= zrlHZAd*9!@Tjc8Fj1~Cvt)l`1r7@s*fVm8C_PpD&>HK-Xt2ZWpOJ*Dn+_t}aJ>$8$ z^X{1C5)?i9OqEe)S36Hw^>f|FCq~rtdq7SXdED4@;&T2j-(TBjMfjQWC*DclUEwv# z;fI_owO_Ss0U!ZVFoMqFyNhbj=lvZzPd|TZ=iA3?6le0NYHfx?#h;dci-Yg3Re#T) z2PgLZ)MKL`u5Oo=`qBFne{pK0@W*KLIDiexW-8me`The8AN++cI~HlIxgP72lCJx{}V(>Ppj{y&q_F0 zVmx;DL+gm`RTu#;hu3t`-+;<{J&O?p@jE-v{3r39a0gw54`P-9zfU&bSw3?oJYgYX zS$?iS1EcVsv8Ikah zJpx>}Ec+_iNKE_mX9X9WsN2H2@AG}Z_r0!}JJ4lvOP=qf5;40kfy@$gxxcdzP40I7 zJ;7)=H%!4%M#Zi@@U3%%|Fu#K&#jJYH` zxV-L8qKzDg;tIWKhy;j&!OgFJBfEVRiSrrJr5S`lZ<8i7=!JVv!wU&DPh@xO3u-Ry zUUMaD>vy-2Wr^pps55lN|5NV!KWE1O{ZsrSlQt(5i-_~zu`jI-GcHrv74Lwcb}NWk zM}ZCSnx4#{$Tr2=kR%J=wf%a_zh8|%o@WB?aJy{g&eM>{dLO+Ggv0$0m!DkE_a-8J zKrP!*v{T=;|i zU=cb|H}hhd*ETPhiJ$$wSdbSfwVf>xcVE26KdC8C;=JE^v-V8=%e*lvGR~srU!lVd z*1qp2N{-Zx^H~RK3-PmFs*%@*KW~2Y^__HodwNgymV`y=MbG#5xR3oyEdH5eHi8ad zEblW*xf(l}i`28Y*MI`kPx~gz+Z{^DAHA&>Ye3d}wmUXvy;!3Q*#8*dmD6v4f{~@~ znmte``2^TQ(s0B}3jjOz(zQ>P>Q{gy?pIK2u;YsS%a#dt#p?Gy>PIB)F9ArpzO=ma z=&WG5|BM3o&j?fCKPbNYv(l&4yqN#;J^b$ba^Ojq<5qttWN}F6&inD&d!WAMbn~No zU2Y6UBrV*_PWFW2UhX**-$Rzs9$*r@8dLjShehjF;e>Is^Oce(own)EvMAqL_Ps$Z zy%12BD6+V_ulrXD6VKF=Kv$%)DC-r-Jym?^vG%N-Ig;?|bcpC5GZn}J7@F1JsJw($=9DmnEZk0 zx^$7K>DtW|Nqe7L1b%N%bf=I+HBedxdG02P&hBoM>g2Z_E3MkZ^EgbKTt1`h9s$Zx zA*&rgh40+q(GNzE>tub?)Y*A~;Jcs^vH6WQz$}0K{r!dE-|HIyZxsBZi#-M(K9)!t zrAXcM9HVCzGfI*?5&LF7@A(H^&7~CiivRVGz%Q=1_qmDGLRG={cMjV}K){Sgy*-qA z4{+F*9n)SQhiH0Vr>Q=JRk%dVzE9ZG;OD}r%k*@KJa_6Jw9?PNW82U4seIZKpo4dM zSdZPQ9s$nd+(P>C&pEuzmhHa_oQMV8C!2^x)&Ht@{=Z)uNdS4F4{#(!zjMjA*3W-l zJVkl_tCa;_zG_X9yzc``{0M*D_e(pv;Qm?C#|wtOfZ1U2tBqip+rdiQN4EFw(H62R zcmBhQ_di#;?!M{iog}X{;uzX_D1gij>nf`>P}`1V+pf>1nJNZY;wZZIfA%vsi94ymZ{r{ zE9OPH^}{Dlbg&$J=O;PScbn_RKO_AXAgs4%^0?cMaSFirQc|!Zi`Y|3_%F+6}-u*yQGBF zwkLSCc4!T?bWPOf*(Gr1S+T*(EiX`TyR^(S5M~}xMlGSBTaXFjRrmQGnS*!*ClsN} zj)hy4uoj--At!35Rz*N=wX^UtUGcA$t#WaWD(;hFVjMjXBE}{-?lI1e!{0UX6t$y- zB;NXgal+w{gZ><7R7rGNp)QB_S!P{=Abyz9U1N9YdGP&=VHJ{`;*rZ!P6I2d0Qch7 zjS=}sK^RSsE=r-qSQeK~kVi7nB|iP_^Tt?ariH=m(ZK-@VT8`0;>Ff39lk;ptXP6@ z{{(6H)+vEISmusK3A0t1D)P_5%Dbxg^qjJN6HQ|r<2xqa0j?657}pj~rfT>@C<nX)W}7Ac==_U7jkMhr$4Hosb@UmLA+d3uNzk{)=fpC&)d&Y z6#=)9xy%bW#hY!#lCaAhO>MM_bY@F>VO$Ou729)oBq9Y(sWdxJvyl~MbFHthEr=W> zeG0W;7`bZxHzVhLgWLHAQv zawL-+g{7(>${rsoXwPMX!w!j{R4U?@dYc9f)iQo5rKqoWf~8MIu7p|W7RMfQ+)dNd zRFzZD|0|yOK84DFLkPt|Ao{A^W55KHUe94&z4$?B#yOPTOqY_T-jqE_7aN7(3BVUZ z>ArhkLb+gA$nMZhg8&H(hXwHKy-z^MIIHfNE^Dh&J~sAbRje;R)z??GT6?J>*pfKsWG?7aKCt(6mrG>2L z6>7-2sioCKKyFYzPPHFWur9Pz^#Vi8o6M49{Ym$ti`E)Dz9Q->K1IwoWs3?Z&R@5H zCh2+MRH@I6+2NS-i5cB;RbE>rlgbX0{1GH%Pzr|SX~V~&`h)T{j&iusi)c=)cywu| zu5TO@iN8xi&~&Cm?;c%k6qqDjrfF|f(bnS63&N4=NXF5IN7_8`&IV^SD2>Bd$k|fv zxrgR#YmKn?*RQdDh?~FF?t5Bqj5StFzCijV*yKu{Uj>Z@f(hJ(_ zmoRcS_0u2`cpmTgmGE)fBSmyV78t=!u1*HjaE-*^9XkVJ=l_B00Y=dAzf}N@efFAuGddb zo*n$6IXlx}6%w9`p%K)FNnh&3oTtQWlv|0-p3kmZj4jzgcbFtS zSr=s@oH}GtXVZMgY!@&{BgkfrUY&@ljA!qxI5n1yZot6gBm*JvSQqTnUMcwyR#L^z z$m7y2D_iGQMv7@0sc{PE8a8%?XABRR>)Sn|_x;G!{*disJ(?+oNSpeVmr$zX=M!)2 ztcrd(CcVx6W6w-IH=QG+kfNR;uUcGoyo3j3P=uI)3QEJc>%1k3dreJBWRxRFLm)Lg zWH7HxYIbtUyj8D`3175TZIYD~_bHG0scaY0l&j8*xl8b-Qf78wLV3UimP-9SuEcc+S;T0a#&Ke+oC*iyahpsoQIuCQ-3 zJK=`7SlV+{Vvmr7;AJ(@Oz+w6F9&>nhHMS()IG%eKqg>bA)hL)BUPFvFFIhM{zr^u zioBIsh@BnOt5DP@Sd ziVpwNO3-QlI*jke$o64okU4pQ-gOL1HasEEEpD5=C4~Q|W#RfTX25iryO(x}byC52 zK(RgqEW7QIsjV~e&1DVRq_-D^-Dv`ON8olzKrkGCQ+yH^)61fp!BYiIEc}T|XSQYb zrjQfpW>S3Rpz5e%D?DsNxZzYVLn=ig-vQ6SKT=Wfi(?l>%EPpyLzr`4m)1Y(&Le-J zhJWy)7Dge8-=oWR7A@vsPXd=UZZ)5ZTrz3n?hL6F(mY#p4eK<0Xlx}GKev|23#kE) zJtHXMc9PqF_GuHuDnq(n zLG`aE*+wJE*}AHeVW~=Wx|rV%M-hRFsl1o zFGAR3(6?mDN;3~8QXi#_HwORtv&8Pel0QQ28s?bMoVUqTAUhZd3DLve)bFnuo>x~z zE%nuqqIb9tVQxbLvO#T4q zqDZW+wgP#WK70b2SY=bkq=PUh$rH0Mm@GY@!`7O>NjS)}i5XE6A|R0m z!4h({I_MvBzCmhj%Z9xE^rmKWclJ8}|I*O(? zKH&LA7tj5f4;{8@Q#)o3Ps?+|x6t#vf-$obNC?u1$|XGT1tI!V2Zh;Cky+$;c(RTL zs!dg-I@4v<@ydu*u$0BF1O5f~HtOP(T*4r&qR}*gZa7uq;%uOy%ce!$E&x$JF;2=% zJP9pkT+R*3f6s#md8(jin3~4_RWOMb(c8N?Z0+Y#`~6yUB8QOfl)R zK;|f>a9Jad^bmT8FTMno^~~rth3#j3%|&@G$qR&UH?vSAtTBv3Qaz6+w^jD}Qa~Q# z;*Hy7d{;`7(?*NI1~+V3Bf_iN02W=cO~u}Y>9fSD!WQSZUyk{*xIWztlB^WoS>TqD z&y=Vrs-UhA{aIloCS@VotaEoL2BhRam^VtQ?RHScUD4!(ISLpiscbAHhKX2IJS^X4 zd>LdAk8M{_Dx3{V*g$A*XZ^Kj+f9$f+97d8P>|~-IK+f$re4S7ju^iW3G1QZSy5Wa zXefiMv5375Nm7WwU?g68sH3CCpk9=b_*%~pBeVu{Z!(7R4hoeM=5po@mWeB^SKEz} zl=G({h0~RDcR9pU?_|x$M-P~nGbs{7BYb70r`MsaTu@g_s~%^uUfc8H~(!#^7L8o(Fzcvu+F0!i3@ zZnKHREY|f#M_~{qbH}Y9W?DjY7a1I2(wmUu3Qo6yk}g&I?UX;7qLI4HMYn5ABtmN= z!tr1LmGGX_TtHWSBiXsQagUC>b%o)jk3^0`XLGU2N=bza!|aWV^59t(5)zKJ`b~IM zPu@J0r&_Ee;FXMCbf;cL2c0Jn$jKYZMr+ti@T6xU^MpCIS2AhoQUnelI5Elff5a>N zjZ5`hCJ%~#jvz{@mimkSB(|)^s%G#&!*W_YkeOk$1d(PXQIS?i1)+a&HyT#RSjFnR z=RLz5lE&=QRasPvNO^&2Lvlqw+OeqZZZwN_h;1?#gvTzeeltf1@`cRm`mKbxLly%%y8+$z=l(hNqSC3;GpI zK3-9o0_DthXCeY}hv}c>J8n`*9bu|*@eR0=1cl7t9mI?eC=J{80$?Uu+(@YGmY6~l zhFUWup&x3}u4ZU>(dmgN*}V#h4u6|5z5yxGT@~*_U2tVA)(jH(F+#kVIP9Pq3 zk`s#t%bANeVJpkg&GCHF` zEI*uUu78F@dXE#98a74-O)yp3Wh_L8L=sTotAu&*a~f+=!)X5A)BO&|KT3g#LCI+F zz9k2uMLG#Vbe;If9S6!SUfO7q5)GW}kp`XVbW}=UsCKt}ZW2N1)n1jXTUKFV_~d=i zt;j94b-2DnEQk2PfO=aB?;DXG?2-x%!mj9YE?MJOEnXo*#22+fJ$dwhILhn;^9Ok@ zB6U_2R4^gGdT4gI8{j*uB9jh8Buv?ZIqNASM?hWii68+dbtM3D4V)#+Sa}!SX_fNj zkb1efuqOYOSL%fm#`tWbM9ucRjSgLfmQ@A<&gu_OQ&g4NIb8;zKpYM1+x}N2|(o z8L3-$f|7+0K2F2_r>uAUw}j5!p|fKUIK;UO-k4y|+=`qjhPjo6oGp4QMX^}$zu+Jn zsVJW}->_HxXI$i2T2foo03zHf1*(?b==uo>I zQ)}Ds%3gbEf{hOTu?l6OfKD?zc;rJaj}az)2`txsu|?l5QkA`f!vquG@3L2S>0Fpg z(x`T)Gm2)GPOrC-y#?MV4}GM63)k@Dz*l!vt*tsdwlZ)`i7{`C#;aMBUD_}Bx7PXE z9;wrO{5Q@v=KW>8CKT&~_*86BB^V}tt`7C&WKW)}8lngid8V4epVp`wP-QhHs4|9G zWJjba)}p`4qeMlikMAuGgmGb=NzRT&_U^_93>HQcAz&~*F&jaYumqBkIXl0w;3b>N zt-WfS!q)VRp(w2TxNbzTsJzNCIF>I}Cj;sDWM0#HxI~Pb9GUtWoY*;m84;u_Yi-Pw zq-W@|l^akpZC<3bmRSuoV~f(`#6@L%<@6eKc#W+Zt!09QD8AsLhV zdN?#~ap^dTH1R>P24;pvNregw$_~NQg9isAUfj+VI|O9F#@(~!&}ph@px;mERLTqX_|Y+utA!mgy# zuP096=nZRzHWtj3oeB@2~w5Dh%0B9iey!4#`N6h`44Ov7D}|y#3l*CJFwAPSvneK%AdQHYK$azVS43@PK%V~J^m5}6l;;gq2Z z6idv6mGp78sXH3@E#}i|k0miO@^Y&9UFggs0l=}dhQ?-9>M4Q{vJV1My5w2f==54} z3GKci$T8ZSdXEZhG{-oed=-13R zp4p1tL8cdCX;0v(>%o{K@$`g7({u@Afru6I;Al}6Q{G%Dp++&N8TV(!5DU0OP z1~+$n6&KdVqBBd9a#qsDa00<}oFTv|?84ym>TZh&~I5CfG0f5aD;qZG!Vcq;ro zTh(?>W9^3^BSw>>jAJv41vxuzuIZ#*mOK>q3#x5CnKvR9x6Br{+8zQ!{%Mm%+zz@} zk5C1gqAtI?0F;xpM}*)Ier(`ZRHZX-#dE&kr;6F&Sd+nqL z?njlSupdGof(?%v+>$i#UDRF`2CjZk!l;nPtFNCJOT&eRA)uctVx4MCSep=;F0(FY z?g{3qFm$O|kj$}zCm912asyQ7kbKHnk&Usuxj2v*o#oxfE==unio)5}c*t@bBupFnSUa`LIp_s18C(nx=xX#&FqxNNOv=wK zr$CYAuKcA$aF0{R(Dh8BDl8gHXjJ(4H8^C+C`3>5(0vgiY#-+Yv8cUnQo&Ts8a`;D zPAsDhe;%g5A4$s)6zd)!f{;zI6YP?QwhhC5Ev~HeOs>LM5EYL|5Z5KLl!7Z63IggT zWNZ2r^*L}1AH9m9lEy7|8y-1@WuFZ_M5_w)xv>TXYMQi~Mj}ja$nR@MfPA$-g^t%b z^<-gMJ+El1m5r{WN`wYkmae`yJxkP8Ou41mMY7_)6`D7=?e zU(TYR$`dPSl{f9m^xCiW_f@Hgg3n{rgn-dQc*2ZoxoIXL4izdY;)yqeVc1PTXh(4QF9W=yGV ztgCVTq9P0*Zl-W^H_{=dVz*T&S`FGe$?iMSfv`9qalDn4Fd~9P>#=i5Y|TEl?r_^` z3E!_Rjm3}<)x>E%&98Uz1XE6oKlxqAJmfCe9R;O;#2j!6dcAVU7)-Y)7#201IYIt^ zH!_0|vj6{W%=z*~NcUiv+>BBr{v%kC=7~+Id@fVsW{ndw5-4yaNr8ZdTz$4{naX(E zX=SqqKRzLSh6joCl~^=ZDjHd>1?!ST7;@3DsQ_^NMlEM)-}c=@yyPt@ptfM-Oozrd$}!p*_Z7+W35U6j>I|i0!MoY`pbr%ETi$o) zO~N_2t<#wu=Ff;+5sw@O67j!19thiFQVfD4zfX=SP&iot>o5|w*kM83D4ZeMq2VM) z4XrPy@i>H~EPP6d+>A@9u74U7H8DlD>WQ>d+pESA*PZ#5#PqwZ&4>sHT(eR>DuoHL z-9G38o*=2+Stcu)MO6y3{(EL6D|tD8>%ED=1+O!x}5P6RSXrZCc2EN}KEKcc?^&HCM{2 z`N`;ixex>hSS&f)RMpEF6T`S`a9Ql9R1VX#6dLXSW+1jb$(8lmXzD`1&1r^WYDTfl zejZKwtNIu{7A0O5FlaJ1!3cRvZ>FciKzY~3RnPp)AVj(&xeF_bM9Cj#8>Z`_Mc7cP zildf9#nV9TQx$^^WX%L1mjGB|)?Y&BJ0+V`PxVgHC-d33sY=--7>V*eN*vm#%Y)Rf0M{EoWfHyF9sV3y_W zQHlM{ND{I6S1E+IXz6D?Y8z#VDysim#}O+LYP8!}2^d>pFK z(Ypguv1)nQD)pb{BCR$S&jkUG{l|7D`={PdSw}cHPO5kU8!Q)f)0Y5U5}=VZ2c$Of zZ(u{5^$jh+TWOVVxB(4=O-=vYaQIr`p%)SG`tkR4R921^;T-RxSG6$3)DSg`sR&{`Lo+n2sXvU8;`#{Qe9VH6OUp{0wmlS` zOfBS)EPbit`|kON6JSKkTJ*F3E(Q9kr|(AcCem$}+oZ_~kZ@1y?Ctb@GHcv`uD$Id z5jGprIWY5~@Ap3Lk5wu)<~%*@|LI`*I=L}`W4!IH$E<+5 z5>I{W!rgG#FJsO~UGRkPqQ}%`1p)k3tC-B;On%48^T5nQdq6e^fAEM3S*}ckctj&y zQ(+5?Vm&GFkmo{}cMpB+qQt;}Q2l#GG2Qs704%A1^$!JYX3Z>=qD!@;Wd#Wxo)mc^gFv2 zO3=ZuUP0y&LYwL}u^04rn^20R_4^pk!l75-XGPG^^N6`+k{faXYG5M}2dQG2WPelh!NG^OYlkw6Q+;*j52{0!cKF*qKKs#Cg?BW zsh-UZ7YrV_{jzbEU+Vbi@8E$Y2m4}tKAR--qN972zq!+Uoq)xjU zNFKS@gy*m8`&@N?e+ZLa>q}Xf($2`OnPc!bV0`ixz<@X$o_~YVo;U7p&%Pd&dl*lf z^S3pS!c7o4{fdbpwaj-IqpOhfPt2--sCM$QRdC`;&kqB7r>Vb6&A8sNRzb)Y z?RGVvj*bAsI%E`3B8?!cor+kYqJp!YFMr*(xd_PbuNKFC&<1~5d{Xrhn1S*1{!t*d zH+){0X}%a(a{RBm>V|Jz+e+HlZ^at8mI)>Tx~r)-gG+f4SZJP)l}MlsgOh7U377JA zBqv{-CHSq<#pfU+{jOO5)+R6aYK$i}>4GQ&lg}U)r35E0jWl2m>E@Ur+IgY6%d;%_e*VXA zlO9~$Vki5>7b!t6KobF-cWC{)V984PAEuxABF=&FK=y|JbG%b?IzOhB1)^e2reiz{O& zrFs^QmLywW-Xu(v%kIDWts?|HggA|+S|V{8Dig)iqoo`4GRdqNWWzU#2uDXHvkWpV zF+iuW;O$*p-V2DB$L?mDqmIGVQS9*$)2%fuZsM<|)~tkX%3dMX&*w85=IH1mWNtk(py`k(oA~4o5aV#nRFPA8Ky#s;K#vhXATXD zXClru&PH>aifXA}>Q-swl6IhMl@9+ibt?1v50zJ|3eTH5pEvu^e-`PCC~rh$5nD6C zfvV!#SBP*&@#Gn^rc0C(0oIkU8^?m)`kR{{zk9Byk{%T+_l7^=KGR5qk#zx6OS>tQ z*GCMFqZ!Xjq5U>pbtMhE1xmy6f0W^2>vH4(XV|fG(m53k!Z3kwwY~6%prW z;}VVv*&3ZC^Mtwsu=yunw@+2L+WDGu`|qHTh)iXMIkCAvb$Jjl#dp$qOZENs?PZ#Q z#98G7?)XwyzNU~dOsLhjPijiknzasocs#lE+e2mK#KP6sipFlg^o607W9m<}IL(3B z5M3m&=;(_IdiwKKMbHg0wQISrVRy`x?bXe zM2?!|j!L2!SAaUy`z%m$68JyuTNozCJS=?^(;lDkbIBWTvl>ihHSUBJtw`k0p6L;9AQr&BBPBp}Y}*yG<{gNQ2aBTFb>h%$Q*mN+QDufEFtaZ6BSh&<)3E@O z?asKm@TQa+;^>30WDXby4Q?s$`l-E%j@OpK=zZNuLAKoe5mBpgul!DD#T{ z{vD_vd$u>+o-Yzvxun*%_O=-#Ry#L_9kKFVgyM9wU)IrySNsc6F*ltK{F)i9uq2p1 z*Re(=KAJib6KR%}c3C-F7E;q%?Bj!C6qGX*;Mvsd5hWx8^cuSovcn_xCM7&}JV2Q7 zwU>5w(-co@DT>=f=6!LZm^N?=9B17PC3#glS?3!Ws5DmaPXtQ6#$>-RA?H-*tMi%s z5wLnB|7(P!^Uy?dz}4sq0_VQUzMB_|X6|Srm$CL8hdm5GMF=50GtQ?%etcD}UX zID?HO;gg$!EjC9|<@zJJ!{v{=cF=bFGTaYz)WV6^_>eP)ULLg$WU)e>xl6~`+@OYd zi=t&!rOH%F4bjTyzR*tACZNVH@-bG?Hge|cc#=Vx9&^u1v~;L_aXhqe?TveV`1R-j zcy~?Xv1!FEib|rCUAr6p^0jK>zA|l-^)t&({CU*Fn&Mmly4CdBE#ff@NX#6n``ME&6aEf*(7g0r06zni<& z!vAUR;yWEo_OM^MsGx1(eS;5b!j5c|=C?F5|L9-aih=v?eRk*Nrf^_t-vhlsc`(ww z)rDk&77$$-Lvxki(vEmcFK^oapYVxFO7yjrMOM5O*;fRa+B{QYY60wNA}|t?UBk;a zdLZfS7*Pst#{2d(t;lG1jn5F4W>?)`WURyTTrj|19hMq-ny|1Ap>c09wuZh7%AS8$mNIBR7Dxk%0F2#oy0w2qyL+5~>^=i}v zkQp1_v@Ses4J>5hOJH|v-%+L1o@vgB`CSseL88yb5^_;Iu{$~HLZ;6^47V{8{&al)w`1kL1d=c#$ZIw z#ujfuafZdkG{Yy+k`=$<&Na^dIOnv6;7g<)A;?GwBZ=dW1X1XKc!)g;FJzeS9kL90 zr*12wvkERn1Tcl)z$uo*X_GTn#{^a4+4#&TzYd2h?X z6B!jp#~XB~0#-;&5LQ!MU6l-t`U+mPjy_1TLLcC1?n)mfKmtwb&9Hm10{PP8`ptQw z)A*vCF@aH?gGOV%MEF$Eea_Xc$p-cYY5okq{g!Sa0Luxe`1F8l z(5Tt+vU~lj$|ETpW%V&w>AtoXy~`a)1GhY0R+67b+fkT><$&VJGEP_D#L}99n>$~9 z(;D|59|U@k=wZ7x`;vL21vUv?QC1kY$~~;P$d4$QIv2DDM@3pVCN;36c~Y~B{^04X z@=7{82Yb$wrY=3W06q|zmUGDqCjOm&$#hnTfZUz_6<^CjIqXXU*-*jQ1)M%PELuSs zDqFz49rlSL4>FxbZx7x$eww#Mp?#ZYbX4v?$Fg>vT73&1=aIigD}_#Xe6pQJhx~Xd z$bNiMQm)+KX-e_2VNZVg+%&H&RP~im0MeYcTMX9mcA^7t=t_^vlLhJ^9%`$)Igi94 zkP=#**~W#4z7}u#jNH#asR6}=DnmO8JkKs?xYN3o9fRdzlJ Fe*=K}hQ +class FrequencyShifter : public TBase +{ +... +} +``` +Follow the link to look at [FrequencyShifter](composites/FrequencyShifter.h) + +Create two constructors. One with no arguments for the tests to use, and the other with a `Module *` to use in the VCV plugin. + +Put all the Input, Output, Param, Light enums into the composite class, rather than the normal Widget class. + +To use this composite in a test, derive concrete class from TestComposite +```c++ +using Shifter = FrequencyShifter; +``` +Now you may use this class in a test. The TestComposite base class give your tests access to the inputs and outputs of your "widget" +```c++ + Shifter fs; + + fs.setSampleRate(44100); + fs.init(); + fs.inputs[Shifter::AUDIO_INPUT].value = 0; +``` + +## How it works + +The class hierarchy is something like these crudely drawn UML diagrams +``` +TestWidget -> I/O + | + ^ + / \ + --- + | + FrequencyShifter -> enums + ``` + + ``` + ModuleWidget -> I/O -> Module + | + ^ + / \ + --- + | + FrequencyShifter -> enums +``` + +The purpose of the composite's base class is to provide the inputs/outputs/etc... to the composite. The TestComposite base class has vectors of I/O exposed as public members that the tests may directly manipulate. The WidgetComposite base class just marshals references to the I/O that is already in the VCV provided Widget base class. + +All of the enums for module I/O goes into the composite. So they are available to tests as composite.ENUM_NAME. They are also available to Modules as this->composite.ENUM_NAME. diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/experimental.md b/vst2_bin/plugins/squinkylabs-plug1/docs/experimental.md new file mode 100644 index 00000000..b5fbbbd5 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/docs/experimental.md @@ -0,0 +1,15 @@ +# Experimental Modules + +Usually we have one or two modules that work, but are not ready for release. Often they have very ugly panels, are missing features, aren't tuned yet for performance or playability. + +I most cases there are no pre-built binaries for these plugins, you must build them yourself. + +Never the less, we encourage the curious to build these, try them out, and report back to us on any bugs or desired features. + +## Building experiments + +To build all the modules, including the experimental ones, simply run `make _EXP=1`. + +## Current experiments + +The Thread Booster is quite experimental. It is described [here](thread-booster.md). This one does have a pre-built binary. diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/formants.png b/vst2_bin/plugins/squinkylabs-plug1/docs/formants.png new file mode 100644 index 0000000000000000000000000000000000000000..c96ca7f2bd5105d1eb1d1f93a9efb308e113b559 GIT binary patch literal 18698 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⪼am z`U~M;UC7=KtcM$Z8u`+#!$~X9c#y_QeudoJn0m`T7>Kq`Di419vajyz;J|m{-0Vxc z>vEfJy>fo-a|37^DtlTZBH??Q%~050EyX^@HTwi?E{P)Ff-Kz0hFb1qD)I zHXqIJ;n0%R@Va-K9Xs=8{Um?@Saa+W$XkK(Qe`X_OQ$#}l#FaJIu8S7KvMr` zMqDH7!I8uAWmFBX-})0?w{OOdH5L1*`F~)op>-zzu{9<_(01^v&W^G1aYxsYBn=vK zJ9f3`^zRb^J3EFGXP^`4s#H05babr5NW=eXDosiZj2?J29`@!9n|rUOKea69t~nTp zx>Z7cpKvQrxq?v7r?pd-;umH zBR29Trlws{^a+_p*_>7y_+fnN2=wOoe}kdJeltZo|5reus)!2-2+Gi!^D8Ql-R3=z za|9CHOplXd;k~8$(rXKR(WUW3lEo?&L4}4 zpsLG?0ZW@P>9CwvPI(^J!#3yj0007r8Tq_UP6tT`Hm%UbiJ{)2k3YONXC~{h$)UDUnqH~f;oc@vXfc7u$SJ6%c5}t(e@xQKXDF=_z;dw!{SuR zW7xcMEX6~CEw>xC_>xAg6S%421sp32?*%Vb=26(D#MK=(y>Ay>dv z0UjF#k`HsBo(EcxbRh?3%4b-VP%iG2|Glp-14viI{}gTU0o<3FnAm~;P}+4CCwg<7 z<(T0Kbk)s#_k*9hi&<2l!G7ji!5sj5e8KK5xZ_k{MBT3c=GjbxiBE}H>C8E;LOBO{ z|Li-xK=GuUbo#rAhd;q?dM6l2N(t#jv>BPlh_o3t%fOHN3*w_n*oJ=12KqP0 zpc|RS#0GeRrD!t#px3{i?<5SgK1p~ak$so$z8Nm1J8>S+5eW3x2l|-eAh%+IB)}6Z zgsD`$UQ`h&1${b;%p(x~6w@KC7CkCSK_^tSTk$OlBdO;3AiKyG78$vBw)r&SP>J{r zm7mJ@@84(Nbze0%P0BsJ6t^k7Y`M$L-C4}YZ{7o1;&^Q*grM$fP-;?>!hPS-=)8_{ z0bMLKg0@lDVeVmgAYb?bJLhVu6PJryuw1$LohPv8OoBEvNQ3yJe_Vm7=E6NymSbJ zuLNH&l43R9)I0dVckak1rn&oA;(jKS{yPCNagO69WLP z5#XlIg}1sYdgL`pl1pshMO z<5)9(XTq`H87$Yyv+8S7MnuxMDe_9lsmK0MNABBQFL!r6J(^nkgEgIn8PIh_DgH5L zJH$D|_rm?5X+RoVwJRrYdRp4ULD1%zlYiCGNQy#bJ=E|-H~~SYP~n~(rUaG^lGP(-1SGVe#7M?=X(lh z#eH--4JB@qfG3{dK*321HecVm8(IU4#Fb;UtSZWT4WW4%J(_Ac4|9l*$&#~sFoRRd zZ}JtlN3&m^C}SHmchB>b4pzgpg6=$|6LGpDAn^9Lh=Ag@Wwngy4&kR>x>L&N=F7P&t;8yjm0H6SM1*#$Thsl0N%Wh|hSKI?oMDWrGyb8OS zJjP-QDyZecWP!rbEP7IFuj4)#`WQ#oU0jT=4G>yh01?;UPshb=d!7n@#s;P=7;wGdH>4` zLmH=r*taYb+26mu5Ds_^UjFh#Qp^&o=<0S(lpGBcJsd6N(MCq9ibXFwjV@>5_5XRR z%$>)I^|`r~q7t{apKNg){r5}J_Y={ax9zk1mG-!O`WOcb8VuVIN<*R7=Tko literal 0 HcmV?d00001 diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/growler.jpg b/vst2_bin/plugins/squinkylabs-plug1/docs/growler.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b8fef84b3b10be11aceae03824ff3d26a19051a8 GIT binary patch literal 48127 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 + squinkylabs-plug1/ + plugin.dll + plugin.dylib (optional, unused) + plugin.so (optional, unused) + LICENSE + res/ + + +``` + +The plugins will be under the **Rack** folder. Rack folders are here: + +* MacOS: Documents/Rack/ +* Windows: My Documents/Rack/ +* Linux: ~/.Rack/ diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/lfo-waveforms.png b/vst2_bin/plugins/squinkylabs-plug1/docs/lfo-waveforms.png new file mode 100644 index 0000000000000000000000000000000000000000..e9cd9539e5725543ee7e2c74800212523df92a27 GIT binary patch literal 22971 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 +``` + +After giving Rack this ability, it will stay set until the Rack executable file is changed, either by downloading a new one, or building a new one on top of it. + +## Notes on Windows + +Unlike Linux, the middle boost setting works well on Windows. The realtime setting works well also, although it is not the very highest setting that windows calls realtime. Instead it sets the Rack process as a whole to HIGH_PRIORITY_CLASS, and the sets the audio thread to THREAD_PRIORITY_TIME_CRITICAL. We have found this to give a very good boost without requiring that you run Rack as administrator (which is not recommended). + +We only test on Windows 7. If you have issues with other versions of Windows, please let us know. + +## Notes on OS X + +As usual, it just works on OS X. + +## Caveats and limitations + +If you try this plugin, be aware that changing Rack’s thread priority behind its back may cause some things to misbehave. We have not seen this happen, but it's a real possibility. Running at an elevated priority could make something in VCV or the plugins misbehave or glitch. + +Another limitation is that Thread Booster does not boost the thread(s) that move data between Rack's audio engine and the Audio (sound card) Module(s). + +## Is it dangerous to run at "realtime" priority? + +If you scour the Internet you will find some warnings about boosting thread priorities to super high thread priorities, saying that there is a danger your computer will become unresponsive, possibly even needing to be re-booted. + +While in general this is true, it is not true that raising the priority of a single thread will do this, as a single thread can at worst use all the cycles of a single core. For the last 10 years or so all CPUs have more than one core, so there will always be plenty of CPU left over. + +Most audio programs in fact do raise the priority of their audio threads, and of course work fine. So, while we don't guarantee that Thread Booster will fix all clicks and pops, we do believe that it is very unlikely to do any harm. + +## Questions for testers + +Please use our [GitHub issues](https://github.com/squinkylabs/SquinkyVCV/issues) to send us feedback. Some things we are curious about: + +* With a fully loaded session that starts to make pops and clicks, does thread booster fix it? +* If you are able to run realtime, is there any noticeable difference between boosted and real-time? +* For all reports, please list operating system and version (i.e. Windows-10, OSX 10.12, Ubuntu 16.04). + +## Known issues + +On the Mac, Boosting and the switching back to normal will not restore the original priority. It will actually be running at a lower priority. + +When the Thread Booster comes up initially, no LEDs are illuminated - the normal LED should be. diff --git a/vst2_bin/plugins/squinkylabs-plug1/docs/unit-test.md b/vst2_bin/plugins/squinkylabs-plug1/docs/unit-test.md new file mode 100644 index 00000000..3f19698f --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/docs/unit-test.md @@ -0,0 +1,28 @@ +# Some notes on our unit tests + +The ./test folder contains a unit test program and test-support classes. + +In general most of this software is fairly unremarkable code that supports unit testing of the various parts of our plugins. + +We find that reasonably thorough unit testing is even more valuable for plugins than for "normal" code. Some of the reasons are: + +* Without unit tests, it can be very easy to make filters that don’t have the response they should ("oops – forget to multiply by 2 pi"), lookup tables aren’t as accurate as they should be, numeric approximations have gross discontinuities, etc. +* Unit tests may be built and debugged with a conventional IDE, whereas (at least for us) debugging a plugin with gdb from inside a running instance of VCV Rack is more difficult. +* It is easy to measure CPU usage in a unit test, whereas it is difficult to impossible to measure while running in VCV Rack. + +This last point is very important, as one of the basic rules of code optimization is that a programmers intuition (guess) as to where the bottlenecks are is remarkably unreliable – you must drive your optimizations from real data. For example, we discovered that over half the CPU time in our vocal filter was in evaluating assertions! + +As stated above, much of the test code is unremarkable, other than its existence. There are a couple of modules however that might be useful to others. + +[MeasureTime](../test/MeasureTime.h) is used to measure the CPU usage of any arbitrary code. It takes a simple lambda and profiles it. + +[Composite pattern](composites.md) allows us to run our plugin code inside a test application as well as inside a VCV Track plugin module. + +[Assert Library](../test/asserts.h) is a very basic collection of assertion macros loosely based on the Chai Assert framework. + +We have enhanced [Makefile](../Makefile) in several useful ways with the addition of [test.mk](../test.mk): + +* Default `make` will generate a plugin with assertions disabled. +* `make test` will generate test.exe, our unit test application, with asserts enabled. +* `make perf` will generate perf.exe, our unit test application, with asserts disabled. +* `make cleantest` is like `make clean`, but for out test code. diff --git a/vst2_bin/plugins/squinkylabs-plug1/gfx/ThreadBoost.xd b/vst2_bin/plugins/squinkylabs-plug1/gfx/ThreadBoost.xd new file mode 100644 index 0000000000000000000000000000000000000000..2f9fcbfde53dc07563f55f766d56aab22360103a GIT binary patch literal 22521 zcmeIa1yml(wl4Z3L4p(9Ex5b8OOW8skGs1CcX!u72n0z;aDsbqg1ZKHm)op;)>wP5 zyU#uMp7Gut?~RdW6b=91HLJR6_N_N@8<#s6kAJM zQx{JMQzHil8%tv&7fX9PCO111Mk5n@uqmUngOQW9jj0o(gOk0Lsj&;4iLr;Pv6<2z zB4Gdl&mvoYIb%}40D(%8{zIgZou!$nvrD(eVC+06#zTs*p4rav!*QjwPHhxSki44& zcG||KW`u27Vs?fLYW~xx(0yl$>I8fGxDz{E7-e6L!s(%7e1UB zo&DR!Sq*D%&zZ%&tu;9Oh+K#9wbQpU z3~ecDw`91pL>tym*|xfM32{o>^Om(kR%ee;cm0c-zk<#Pq;_09+(AVUeMXcFDN23;ev%PH@!=``@{Rn)<>L=M02qT={Ht6t(J zrC3RZ<#xvK0Lw^}$x9z`@%AElHocvR1hQWGk*o({y-MnnuDA#+L4=|)QaWDV5+stK z3f838RCEY5V)X1j21n*KcRXaF`(M{HcQ%nGR3@li2i#W2)(w=hDCu(+B>@23y|K`lk2uW2tdecX`MYbi#Qz z;kAA8d;6Lz;q;ox1k4`P2y&V2o)+ojyo?^m^sp)Ej2)=wxEY(n@R;OU1CY19h-`9) zB3(n#FIeA%w23-K%49&pt%70rP|j`&h%*89;9V@mW+02mV*LkmcPA{dAPJ}c_RjAe%**sseUy*(G7M=IovQM(B zHjbssrMyqE`VmciAru~;bW!J(0k#dOv`8`J1-o!=7Ecr!`CGiCOCt2!knc>!BMkH! z8c7n-OM;eZI{Ju8CLn>>`SF{<*EwAsG}iUgWf92ugnK|~uA(-VZ=_c2vf4LM7rx&LUMZo(mugr@dh3Vy}c5U-6uAJUG&#_j( z_N4-4Jahm>FNK~ZYVbNs-lrjqLK2Fsk}N2*S{WL&n5hjn+Ax28T*A&)5BZ_jB9v9} zY$%k>V$owR8V)b8Livr=n?dXan$`raiN1;Og=+1C>2RGu1wCvGCUw@sS2WXfLi$8I z35DbF`QhyP@o_zZ8dy+zFkd+Z1N$>EVw4?~G14gn(2P~?o_4yLx!X1<H z6Fk@RDf*)l&F{SWBF4y2;3>q8;OO3{!+s!N&nMGjk)1@?6dH&~8CAyXE!^JdQlW<7 zq)PqtdapQ0e2=+k*=U)dF?gN0vKJEyyUc9iSjOO6UBik1(bjo#(dEl*mlNp3f?eh zhJ(M9PJg$)J!Ib|e-g;g)Jm8&`}VLIZvs8|@~))`MX!t#E8DaWK?zkj3*w@Hr8X$0 z^*}C~151=m?ORDQ(vJ1`*M-alM;n4{%Ch+~kD^5*+O&Q=*IJ3zy@E57;gSWn@{a*9 z=F+N#STSRq%isIz3K`N~Z7iO;`UZ?{8JXh}mHJ{AXoRWfn-^@Vvz%0a$+3q`{D$A4 z5r|i&uA<&>_PM?p8^KEaQ1jyLj>M>-#lHEU=$IYU>c9bADGd`e(adZjE7ta{iPj!!@KMt6}d$@PW^$#FRpZ~L5(LE zgo7wTz4yMx_;L@^C%ucT*U+Hh*CF|m z28{=4KhIHI_6^Sw?(TBv1fLzT!dJg07GbXweWM?g+-=>m zYs5S?O}-2oZQ|;J{>u+12;(R*E#{&~*{H-6%(PRy zAWaw7*+=^;3aYf9(+u)ce6Q^I;aO(Y*mB=cKNKOalkstOyKRAbSGKGO$bEX&<>p8B zF4;?1__j119-i*(JdMvQa+xke6&oG*8B1~ZEV2a zs@f;AsHb~+27=g6y>>nd-a(4JT57?xJZR26n1d3uT9t&a8W2)k$6+l6#_W2%n2)Tr zSb9dfOa>t6Z~exk@E>P$T^5B;8o1P!vLEgT`Q-71!zf#O!9q?q}rw^zYD= z+|Zfvlae%SuoBzPYV1CyeEoKjJ=rx&{8jV#5Jm`NWfhZ~rWauge93?(Gb8qJ`a){N zcI8T9TBt-n`z6upkN8HS=DS2vs&?b*7xTBjUMaUHp>asOlOk_MhaAKEHf3x*P(mco z%v>Q8s5oZ}1{DZP(xa8MUtKu)G$F4*uj5HT?#=JmRWt_dSBqd$zM|2OHa2LQ!a?J* zG4bX*I&eBEEZbJK^tFi~fnF6S9g=x4>8zCRsP_`rizV%>SbT|3L?V5TkPK2fX1K`m zA!>>se8;jqW%N3kr35{M_GQ`BMR)fFBK@3q7S!Rz9%e=Rp8OE2*LRaJ`Q1Y5Xr&O; zP-m~FK#QA*`diGN&Vn4MB;%$9?x*RGc0#&@+1gy7d2g@2q*p=t9%kUSyC-$9_^%=~ zdX)Aq-Q=+?Z8E-EhfK>1bmv2sh?@Q=6+Gs(Cwi8W&rgK)!`I?J*MvSaNY!UGXJ0K^ z!Ow6>%m*=k$n0$QQ4`a)xecOKODJYMQ(`#}Q|ema!91f#KMtfxpnXgq4M^$KMw{MKNSJ2Nlz*UZr7TZZqYT+K1yWqigVwsT3~`T^&-}txvBwKF*Yne2D&J zJKUspG#2qQXB1iPyn6x}tFuATT8jepPC_>dzrA$4wey#Hlcu(cJcI7c8nK%xbQ5$WX7N~ zvIp5pRZ_VU>PB{0IpPP|Kx$+uD)a9I3X$&Ig(QTG1z6Mc^{?Y}&SCdYK(6whqPyv> zGK6d^9P^M7J=R<~Wp=Q#L6&t9jBS<^PTne%dp23NbHiMaCr6YHQBDd1u?j;%wS<_h zU(t;TBDqc%icOr2Qu-8JNKs5_<&9L=^oSHU_1I2Ko&TZLg|M_zh=W>~| z)CwxH>XP&M0#`rF#z6vcvK~wiJBW@{58o1QR~zc$)(98yGwpW2zg>(%|A48!5uigx z^d?_YHb>`E3^--Az(=)rFw1T})XuB>jc_5^>tmvf6V>TP z^U#Yk?lJ`Fmc*M6F9vdG%6nCt6JrlPcr1+8Z0OgxW1HqWe<03vbiLN=Mq3=PeJcr~ z3-4R*vbk+auT*BVD}srLXdF0;^vRP#FJd6?8Cib}{{99sF};`*%xRP819BI}%jrr_UTB z3^q2tp*6zX0bLGT!uV^;U&ml)6e!s+sbpfane!)F>4iAmI{j9<|`bG8Q3(!Br0X6?{-F1G_!$4w#K+gpM_{_n{ z)Xmb=ozcP0JVNP>6w*t)m%yh;GScEIz*!pvg7AR@_6i_H+KT6qf^b%m5(QNb6Z`^! zu$pDWMN~Z?4zgh5RV7~a-t|et^h-+yzT3zrAqniFRf^BXK#Qaxlh)ECkyR4u0!hbH zlZ1=HQDb-nDxIqy9L!IjJ+d8Ld3l++-*&_j3E;g^ zU&|J5=C*IgGlYbhqmp7C1%5*cau^fY=KGSZyk*-O`+xO=gI7Dyj*G*ebn15QZ_bwX z^86nQN^`v;SxpBprWJ&gZmsgaKRtSD*E^6x3Ai6-!(NWRm-FfTHBnj`iiEE+QKCT1 z(+5H=Ng>uNS7(^3HWGtoio|9jQmfR>U^N?(_J6p*4hadVY4N?gL=+I+gx%;YmPy*_ z2tm-d&*ZXyQ>OC%RIv9_xVxxIw?S0ro6X5BsCxFZX_4Q#(SjgZY&FWxuh!G!2lI8a-o3Gea@Id93RK?9q7i{) zmzq7vT{sO|eb5Ajq=|{V_gSj=Mg*=1j8v^KFyr2&F%mwU^b#ivc)L|8-d!G$H|P3Z z&cfxtqIx6GEg=dj<_r!~)09BSFWYHzK;mS*xAgef0hy~@ zqpAe*#Y?4-mzZR7_f&aMA{rl6Wj>+M=96D-4d?K=th7N~T9}K~gDjel7Ms#C*)2uG zkO{%gSBH!67BRAwOYbyPXl zY111}{D zdJwTKHiLF@PYk{kxny+y?o{~~!t&QY(5dp#IF(kW;Lxa%+0{vqiH19!k7<<)px-!^-58xBN+bIr@EyzUbS-d&9iGzoP%p~q`-+vV0AWBQ+;HLCPC&os-cG;0D;Cs-y|XFniN7fHqx z4yG}kK{@mKKRs~$NM{ME>V|qes9W}6yxvSRXy!b5C1MC+5=_AF@jQ@vJHk?nEUjH_ za(Cyy#3ImNuh~bWPn~U#94(@NRwbh_>9%qPbNINXd*Qo&)h+vF2@pHtE;B>moc#2p zlN{Unk%ddk&*eZ9aU5{biXbz3zm;VVCxp8~y6OQ8NpZuRFg~>-74%a)i zK)Qr=5@B-nb&>i&&FKF9o9(=9rNF5k_hsK+76MnvSb~0(YT#CzZ>4kjc`o*6ll-0@ z+%vfy$xMf{XJy6!d%?qQC=v9UMihfmrZx(m*LJRU@{f~Bq%q~8H3thhZ*C#n|4{t^c_{QE7O>rdbLEqi%&wdHUZYFYu7y#6+ zzkpmb#&EA2e#a2sKY6!XX2&BL1mj%=!>g%6`jc&x6cX{$35t-u40R882NeRwyCDEM zRWxWV>E?(bMco>I#qP<&v)jce-VDSU3Wiz`W%eG z`x2A3Yblzcz&zJ8^av`eLRwg>)raRPJL1Pk+j90p>nvbpj_oJ>>hK#{;)RX3p_ESW zS)GoS{GWUkiTN;QRBkWl?R|fI70X+QMdbZr+>7iqucg2J7!;)0YjJ)tS@yPB;pi5L zNm2w4$L+(}M*q5eYm0GOvH#O!b6Pl|`~6bP0WC;Mvy-Q}dOoO2F1P^^m({_KWPApa z%a?9^RSDdFMLB+%$87M}jdD|cHooM2Tn5}=(Ba^eZzC?lRX9aX|+XQdF(XjlZ zL=+a<<#l{hm@1S_TL*bU?7IV|;-^$PjaaEyoVtLi5FbosFm{-!WiV)Mo_=wTfC7<= zSMR?=E1nk5=CY&IaUTd-Ma*u2x=eg32>B%=`;Gh&X^4)SlNF8RTr$e8Z-*$5#WwOE9e5p5x(n)0Qo9&=hS)VGT?#_x)!3yb6 z7T1WJmczl(LPHYDNj{{AF*GthXEc`^OC3oDnkNaIXCGlZwQB?qqX49L?2J~N0=y+_ zS9C1oD4@PZD8h#?#%l^``&f4uo49%9WNH8EgfT!A{7{q!i5bwX5 zYN6RgegV?oMyEpygPMRF6->>M?h$cpb0m-#jg`|9esJCUdD6oeYpgRVOn%q^otny^ z!>R;we32Vw6dhP_6iUqBZ^~xGDoTs%R;X7PBlof0HGrm8T1J>#xDkR?RT(6BObXi( zB2{E4vBnwoKA6Cx#u`P2w~t9=H;Atne03s)#7;??MiPFBMi$SvZHIa?j|p-$o%*Qe z6OJ!TATI6j6dNG_TBEwdafNx7M^SPqTSt8@fb;-F4%PjY&?CCwDAiv@6qx{a6?IUx zSdk=^+>;7GV#Oe1;sXLR2zl%SZfv>ZvOa2kp)~hj`$Bhp8yhHtQBZ8y9=LyyjtYga zMvV?$*^~}#PefcT1&dkE_idL)r;H`HK$`gx@ytGoyq4#??$+NY^?x*pFJgF2Qk0yTUYO{<3Rs!WFz1f6Jux(y|Ohk}@kJSyEMvW7J02+xznX-j5u zz21y~Qcp!OWs$7;^b-O_B$n;vXFuk*uy2{06Rx7uVNp^BYK(h5I8LtD&EU5o|+*CHb>b4s|pAUOoFc1Y@nRsNLHfGCXiR*@OUs1>y- zDHOw*@)tY{j^xkr0jW11w2*4?WVQN)2Yn_hV6>6m)0^a*3R-_NI>z*t4yGegA^)dQVK5 zac^vmWoA_bs|yLe%g$&3U2sUq7_i?~BN1cPZ}v#0Rwk3p;dQNzS7s6kgl4y$WA|Gv z2-XJSRo&45jy&0rl*enu+MpDMI-%WR^?oO78 zG3b25DBm2)NJ6KS?{huf=qLY))Z+no$#cMXF{`!k-kffp#X4^eY!dcvk!X*~BvHO6 z67Z_tN;B}2DSeX@sr&@^mINbEbW8P)op&A^eQ242zPv5>r-SFa*aXXmZ+=t#rP-w1u=uZuUGo^}Yh%o#8gTLp0Wa$hxB!^1ZHEA5LLomN?OF@8 zXE!SnlTI>)R;@5j@HV{K5R`^(;FIv|?B=o5NvMgBhL^T@Uv2HJ_y(ZH5evPE!Q&`2 z`;mDfK3lHAMEkY`@nE50!rFW|o98~Bc^--gOvoGDk4YkzLc8g?hi~630w5{t)&^d` zUi-P{yYJ7mqXO-U;If&SzyXyCfT^vaGIk27>tNxuTiE$Z>;bw1&y(f#!nV}*#=w)+5VaqQ3zCK7a4Gm|$LK&Ar=JyC&F5X_9t#tSLNT3iFUa>68k`Z4 zm5vRM4Wlq!+e_oz+rgIhM>*ioUFa}J3uji zTrC664jurH2_?6Mt}W~3T_W+Lc|^m*F2jT&;;!YuD0vWs3N=G^8HX zLufTBhrR(Y%qeyIMg&eoL9`OK<}s4nT31AH!V5x-cjfAz@Vo_^iLXA}E%L@*!NEJw z4pHGiq&H`A*$a+=^KkH2cN;>LYopQIBGtpg_=2o{-QyDx(8pm6%OuCQgnd;!pxP ztiPm$2k*;P93#CLNCkJIJQg38oBW|1zO=h{uG}wgVUIe!@QtV&pW#h6NDmVJIi#nZ zUD#YH={DcCD95}6V#;jWjlP8a#q=S$Wa{=eI3EJmy@jEAj#oS3zpyvMu;9gXsjgrG zs<3I5j?)B~hKbjtvnLMBED%m}wU%Pzr|WCpV0Pi}H(OcF#SMALEA56`67AICdys%r z@3t=nflGgQvQrOJ{64M$lJu7m4Vrme*!yYsyBlT^n4e)-=VBYL7Sx~)CSI}q_o3i3 zp>fA@dGocI007hm$w<5ruM{;5{0k~CvFebICQIzffChn{3oUS!lc}@4tCO**GZQPP zsfh_YHxLasVPP>g<6ven0duh$gIT#a!DgH+?EeNye-=Os2e3RqvIY8x!0DfnbP%+; zh=K?RR1=4AZv?PFK=2OITFxL4a_4h_=(Yb~0s=uZKEv&rQU|HCZ@^j@p?eU~_G|Cm z1p^cf*NiRJ@I5x^!nyNVEy|<^AgCI5AeAj03{hWnqrNhacC@>r`}r~H)8x|AEKTQ`VF>KVY{7^hZ9JPjYQJ$JG0*w^prI zg#>l1uNMuMXL%ji+u0SCE7$e5)Yqmj$P*C}rTWE>Y#UqGWX$4Ljb!zkod?{07;M#~ zkFA$d7o|g-oQQSdeK6e`T(~E&o}#i=p3k-L_R0P9iGhPA#m&u)ETM0IVZUpmYy5Ql zw#UnjtNbZNmZ0mp>w0!JL(m`v@3On7(0!<>u8wM)KJbhPpBRA=T0=vFtB#Y!xOW4h zU5J}I-ZDGHf6m|Cy_DAMTr>UofM|jJ?^mh@QP^r*Q{$d5F-#^4>SY2-5 zZ8JD|d>IriATh8tDySIIKHQkx7#mBl!eyR&YrN60fftF9zNs)XKR=(9nTdywucNKa z%gejruBl_N?qWg^*UN*J!e&@YwT^{_Eeurf`)g>y)ElY{lN0|bLY|3U~TK8VA+fXyX?~+eaNE{tmR$f9lz{x04N)XOKuk=PBy)>$RTmDaQ%pKOElt-U7Q+LZ{nHbn-4NAV-QU;ulQs;X zG4B=^^_-B{cBQ`3jlTV5eU7zzx6Q>2j%6X1!NX*I`-5m;lQoOv+X8R1lVe!q59>bX z*s|#{xgpQs3pF9vf>43@pgs|9f-NLN2aEW0XN1v_UuEYUUI?%vF*TM>F&PcIhnJV? zc~!Eu-t~=*17=@7!~H6H`$#i9f8aWi0~sK^Q#X2f`AweW?(pd7qF;N`6a_fMH4){j zyLJ_}I4wwsv!)wLSGi=*v@v5Zz8%-KpE1e+bH*`^J;a z)9ER;R%8z8{M1+iU{3xM19z+FrON@Br04Rl29Cpwn*(6^a2m66g4wxEO-wnB+1OaX z9GvVt+}vy?JpabPkpa!%{$b$e)2;7-fBugR9K^u0fs>Z|kvuX0p^OvuDc%W}-lVL8 zz7J_eliF=S)J;}BH5ws4C6TVW)JBtfR`!uTIpn(xT1ee6QwGo3aCGbVRfXA*=Mt53 zrm^>9uzxCUTM}qXVk6_(A;mZ)G2Hm2uHe)t=Q`(fs7*bTYb1#94b(a2U$s%cr zzy$toFdAf#3?%`waU$+lZKPNt$qc84Xk09Z2Hmq8f)ePg0)bx8U>BIB58Xym8DnPI zftz5Z+=%VOgJ74-rAhDFY9_jOJ%D!g!prfs$TF4>hfU}=jE{I$h%iAeyfNM!vo=_* zc${L(gsSjXqmYX#E&AAvFq}#9lm)x(DYp-;qa4+^K~Rz;Y5Q(>H$GUvcVDzW-TMi_ zFk8sp_&j>Gywror;vtIrq%L<2(=69+=)jxvQX}*Ss*8sSEAG%b+H39RS({*L<7A$k zH%a})ss0(AXPT!4HaGtco!BqEa)-_Yjm$sm(k&zxgYiJ zAr}U%bF~`i=gSaPT8S|CrbVppOlfj<+sovG*woF-$;w7XMV+0VZf$ShRDk*+Nmo}_ zsi>$>As`^^>ar3=VPIjiva)VgnED0=8e3X6p;(FqjFQ*phN` z6l6#fUw|gG4Gg5nJv^7@<{Ink^YIExO3d8cQqKnm2e-B;ElF`APjP6OnNjgRk{$scB zsx>pC84V@C%p9MZYQ~J?IIR;c{XlQOu&gy4*8JPl#bq#*tj@Fw3C3pAsjQKcOSON$s z8MNEpCGG53G&(glHU_sWj*kb{U0z+0laVpoXZ;8b8fZCRs$*ecp`)W4AWOa^H<#!z#+{Oi3gP9;V=OGNr)NeYH%&d<7`OJP)TItlW7e{=vNxqk zR?YF3_qfFN#!Rh@Z89lBWLBZDM<_#zspR0S6{HGDW z?5DXirhkq2!7!Yu>?hUff5$w)Q9YXn3$cTAa|=ub zj8LhV$QdvY{9mfM!jXv36pqh-j0hx)48$uU34ehI4Mw#Vm#Dx|nzW!73XIIBc9Mt@ z=_Zm0iex#wV!g9VU*z*XI$YWaienlBFBV>{a%OskEJNyos(z$h*) zRm|pArq*rs$?)fl24eRoWhQ;`q`)M`5ecm2L7^$J{Iq|#y}$r(1B?N7)@Xpfa8{O+ zoSfXzA&PfH5e}}f25=Q_PaHsYEn74|962qE1>8AOPm5h#|41Rfdv1Vk^2VYRAR91f z*X{slfxbS`CnV#MT!F<#S8D*T`D!&~VQxNCZKRmXU+|U7hq~4MNFShb@T7(Bp(1+1)w%C6X)`}Mhb@3SWZx$k^aQ#34%rG;k2Eu%(+o|VIL$oc3ceDithmE z7tIjh1xLu|M(=W*&PP@-95ze@(2LiUl;9X1 z^|s26jI^w*yR&UYUVKRznSOw!!v#QH0A@KyL-LgbPp+*7T4ZNml%kv41|NW8q(vty zv|ioyut2n#EdvA$-vu6r70@n>FMTz%hjHv{kLzPnUl(ze=&weI@NV+g$!|;KZ;n@? z2nz$wz+;6H=e5FtF~mZ-Q2hYZx0Bzgb^?G7z-|&p4C^z{duPKMmtQK{cSbujQ5u)&l%C*bw1Y{`@rza@ZHL;t$^EFrQVD?AIyKR4 zL|kLq0KScdl~mO=fF_(LF(7~Roh3z#cdm^>+Sis$Ci$`Z^V47e>N9;Qhp+`~Lvss1 zR-yGJfn3UoL}Xg7X{N8Q&rlp5T}(h}lwy21R-eU+;vslv?rV9`2fYTT5Vx9>-6=Xi zko(=$(MSMli`PXVAZV>XENooy(M2lldc7BAt~+{8+mNgL4*x~4q}zGqiSsY2sP}l& z3`)$SAl6D$X>hOd>BXML9L)~qx^PJnDu5ezNNx#J!p96eBQR{0s51+|eXk3j?$5G4 zUsaA?gE-?u02hEy6f*$Dfz&aL6N7YsaUPj);euXhzuanJ&J&+(Oay?42_mLXWmvCk z2iZRtY496$K;QPWJGh*?A1%GtvsuX<3`aj}?F&Gy*Bt}y?gSu-{h|^FAhqfn?s%Jp z`UJNcM*!)SOkU~!c!fu>4iFvQmj&wA++IKp**zL9yQeB1aJx2 z+52KAfC>0T)xPDt(2q>WD?X9GQ12L2Ls9>Mw>6ZI-(xgv4Vy{dkn|Vr+kr8wRqpqe zO6ch5IC6pbM6tBU8z^ugqU>LbG@{SmKJh_)6yCIr`9V}u3G z79Z{=&ofGuC_yZ4%272=`=xAS88M?4y+X*2}r zQ0Zv*j}KX79pS~-02!p@X{p5a;^2wB z@IoBIkGOEanousWM8U|2oU>T(xL$omLI@uOgNG2uCjta3jxUu_Nzs^~ZK1pf4=NSp z;*N%yVTbV`l@7^}9%dkKejIvfkN5xD8 zv)#cSwewRB2M(e4Orwx&&V^(2+LUvU!|YSy^}N14^VG z-VotdMT%Hj(ws&o&G0y`iOb5qtfZ|+``C@ohpFfg&7@fkLPGs?U`R@)y6oUX%_$Pp zQMMpbY0%`xAS9G$>|Xr|cbcsg6RKInl?et4zo@=G9qj>Cyary@m3eXWIu9F#2q6+Nr z4T>)UsnvJSA3na~UFv$V$h)Niu6-F18*WdoBpHUbv>%guWZ= zfim;^$vTv~JmJ${-bVWj()nv~zK$>De+VExl@)$NOO|zy54^D%eR%t^+fT>V`aP}M zM59+{Ns(Qt>T(rZ9d{BvVpAiu+@Z-U#4P=;@PLi22mbdskwxC6YkTWoEH?aPnBGAr zdO6l+lb4o0>Ghu?{e{0izh(T-RAt~rV~~r5t1Z~h$kOIFS@}O>K>sEy|0XN{CM*9Y zEB_`d|0XN{CM*9YEB_`d|0XN{-=_NgW^Dhat^elk|9*kt|G%$W{3a{^CM*9YEB_`d z|0XN{CM*AcnXC)}@b>=mJfF`Ih`)|MvwkYc{iD{O(TKmN@_eoV1SWvvnVez!ABjEx zUhD5E>z=RwN38;YzWi?!*!^9^-?NbYB?1kgeEdJ2lkD%!|2_T7U(I8q{MG#bUNV@! z%l>=HmcL|w2W03RMNlKofgz`x7=JCW!wx!+j-S?+&D zEBaIJpAXL8!+6hf|M3XK19YRm`uo2K>isG5x$58N`Z?hB*U`ZLxA2#e+>7U|JRl_C N=K)|)Zv8=}`XAl-kfQ(q literal 0 HcmV?d00001 diff --git a/vst2_bin/plugins/squinkylabs-plug1/gfx/booty-panel-design.xd b/vst2_bin/plugins/squinkylabs-plug1/gfx/booty-panel-design.xd new file mode 100644 index 0000000000000000000000000000000000000000..80da6266be2cd59c04b08efe37a9fe7a0b445ee4 GIT binary patch literal 46513 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

jyW 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 TW@Q6O^8(>t;G*t%8$mn(ffR)O literal 0 HcmV?d00001 diff --git a/vst2_bin/plugins/squinkylabs-plug1/gfx/chopper-panel-design.xd b/vst2_bin/plugins/squinkylabs-plug1/gfx/chopper-panel-design.xd new file mode 100644 index 0000000000000000000000000000000000000000..f27a2e25cee10d183ee2cd26ff6120da55ac5e50 GIT binary patch literal 17208 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 ND;qG=2&wC*{{`1STbTd= literal 0 HcmV?d00001 diff --git a/vst2_bin/plugins/squinkylabs-plug1/gfx/formants_panel.xd b/vst2_bin/plugins/squinkylabs-plug1/gfx/formants_panel.xd new file mode 100644 index 0000000000000000000000000000000000000000..53c45a4f47de13968d3ebdecb846a31237e71c1f GIT binary patch literal 34101 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 literal 0 HcmV?d00001 diff --git a/vst2_bin/plugins/squinkylabs-plug1/gfx/noun_938401.svg b/vst2_bin/plugins/squinkylabs-plug1/gfx/noun_938401.svg new file mode 100644 index 00000000..8e711ed4 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/gfx/noun_938401.svg @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/vst2_bin/plugins/squinkylabs-plug1/gfx/vocal-anim-panel.xd b/vst2_bin/plugins/squinkylabs-plug1/gfx/vocal-anim-panel.xd new file mode 100644 index 0000000000000000000000000000000000000000..ddd12e99d7fc7e2ad1f210dbe081c62576da96ba GIT binary patch literal 89458 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�W`$EF#N?CCF=k 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

o_ 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 literal 0 HcmV?d00001 diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/blank_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/blank_panel.svg new file mode 100644 index 00000000..4e30c038 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/blank_panel.svg @@ -0,0 +1,17 @@ + + + + + + + panel-6b-flat + + + + + + + + + + diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/booty_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/booty_panel.svg new file mode 100644 index 00000000..1e0183d6 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/booty_panel.svg @@ -0,0 +1,102 @@ + + + + + + + panel-6b-flat + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/colors_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/colors_panel.svg new file mode 100644 index 00000000..1c4a661f --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/colors_panel.svg @@ -0,0 +1,45 @@ + + + + + + + colors-panel-2-ai + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/cpu_hog_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/cpu_hog_panel.svg new file mode 100644 index 00000000..f2e31cda --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/cpu_hog_panel.svg @@ -0,0 +1,40 @@ + + + + + + + cpu_hog_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/formants_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/formants_panel.svg new file mode 100644 index 00000000..de591576 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/formants_panel.svg @@ -0,0 +1,44 @@ + + + + + + + formants_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/thread_booster_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/thread_booster_panel.svg new file mode 100644 index 00000000..c73c52ef --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/thread_booster_panel.svg @@ -0,0 +1,47 @@ + + + + + + + thread_booster_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/trem_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/trem_panel.svg new file mode 100644 index 00000000..eb70aaa7 --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/trem_panel.svg @@ -0,0 +1,46 @@ + + + + + + + trem_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vst2_bin/plugins/squinkylabs-plug1/res/vocal_animator_panel.svg b/vst2_bin/plugins/squinkylabs-plug1/res/vocal_animator_panel.svg new file mode 100644 index 00000000..a567e16f --- /dev/null +++ b/vst2_bin/plugins/squinkylabs-plug1/res/vocal_animator_panel.svg @@ -0,0 +1,88 @@ + + + + + + + vocal_animator_panel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vst2_bin/veeseevstrack_instr.dll__ b/vst2_bin/veeseevstrack_instr.dll__ index 1c9dfe1fc5634e4400d48699fe72d40132bb5a75..0eb588f0040ace15cf384a190afadf742ce4a9ea 100644 GIT binary patch delta 2175398 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�I5HM{jV2&@xF)R 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 z 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 z�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

o}$-`^nJkWJF??8Ul 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%0A1;+DoR@#6#8v0zN)4UP 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%0D>=gNlnpjBK8hpv8x951jnD%C3bhZ93mV?z-NYB zUpV<(WbJ2QgPGbifW1CL9^`Q%J;;samIuIJ>EoWL7CYiE{3?J1PdL$n17xOJ;ZGE;8SVq<}GkN8O0Bkpy4 z2vE+nBxhD@B*Z)3gdd=t=Rf!L{k6Zs2>6?s*zb3FHFL`XiTyoOZk7GdyjKX{1PG;D z6Vc?Ek1e(Vam0)6tJjsC8|_^eU?HOS=Q-0n+_*=ElL0uM#-HHbb>CcGA}XPdIIdCZz8u@l*{Sgp7rPE-;ROUse{mgUHeLjQqL zEE-cc5-Bj6LH?8X@f7k52<&xSp35-PTxcj67Kwj@PqmAzEj;hdY>n0Uvh zr(e$f=kLsWy1qrw9OUCV97k;iMdXs3n_q$>;j}Nyoh_R^JN2b;V~CY=g4pO@!6CJ$ zL{{oiMF^{U)a$BJxHAHa)EwE@Z~Lj2%Y6MecC}^gMr_PqzS`Q)>Q|D{SCYAgc0_U7 zB$bTN`jjs#m?L+rJ;No#VuaOlhpHLAH>>6DI{9+BLw{Au%^vEjZCM^sS*~v-8AlQ? zS2yp?3T?$ZRcXH~agKH;eV2_6j&T2|h;5!LN7P7En5@>v$TS5|6ONpCxy+=Z`|Ro! z?`Tgy6?aTM?B)n}#4EVh3h%R1Rs5now)^nMP@9xAeJN`2Lp}@x| z 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

xz7Occqg4>#E$NhvMV*#+9b(PN-dK@uS_9!0H#Z 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 s*l=WOxy?Z3Q;dw!>7Z}^6m?KL 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 z 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

3Thpv(r?4uU7U}Nf}iHolc0C+P=;(+%h29@ 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ⅅ0~fLO~Jf>Y-{}R_Y*7^ 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 delta 2003993 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ν8Fa2BM*;9WB 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÷Z!ZJxCG~$$8 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 fugP5_K98j@}#$0|} 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

$E{)1G<24d^MZqc=mQQh2ZA$Ndc@)h}5N8 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%0Ay%(NS?4(nR3+R$PqC@n;?vM;Kp&HUrM*!~3 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 z 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

JCWGPM!sH!7hR> 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

H>A4 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