diff --git a/examples/SimpleFFTExample/Builds/MacOSX/SimpleFFTExample.xcodeproj/project.pbxproj b/examples/SimpleFFTExample/Builds/MacOSX/SimpleFFTExample.xcodeproj/project.pbxproj index 28425966c5..99b47286a4 100644 --- a/examples/SimpleFFTExample/Builds/MacOSX/SimpleFFTExample.xcodeproj/project.pbxproj +++ b/examples/SimpleFFTExample/Builds/MacOSX/SimpleFFTExample.xcodeproj/project.pbxproj @@ -26,6 +26,7 @@ 6D8F1CDC011290A48F8F4FF1 = {isa = PBXBuildFile; fileRef = 8E2372BA8AF97FF946178E91; }; 56A011EC51220996D4F00254 = {isa = PBXBuildFile; fileRef = BF256F6C10EF6FAFC2A585BB; }; 8377B7FE2B3A637A45B04209 = {isa = PBXBuildFile; fileRef = 34137BFFFF3A6B4EB306C276; }; + 375D5475EFE7D060163B3839 = {isa = PBXBuildFile; fileRef = 5AF7E8CD56847D9374659427; }; 802CAC8A9C457A93FF4D7F44 = {isa = PBXBuildFile; fileRef = CD1EED5A10971AA8EAF940B0; }; 54CEEC46CBC59590F7CFFFA3 = {isa = PBXBuildFile; fileRef = B5540A720E3809D34A71A8E5; }; 865FA096794C9649C3E4080C = {isa = PBXBuildFile; fileRef = FF95EC7ADBED0BFF63E32827; }; @@ -48,6 +49,7 @@ 5192F983556BFBE5044419E4 = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Info-App.plist"; path = "Info-App.plist"; sourceTree = "SOURCE_ROOT"; }; 586042EDAF352395AEEB8F6F = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_gui_basics"; path = "../../../../modules/juce_gui_basics"; sourceTree = "SOURCE_ROOT"; }; 5A3DBDB080CBC7DDA0DD9868 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_audio_processors.mm"; path = "../../JuceLibraryCode/include_juce_audio_processors.mm"; sourceTree = "SOURCE_ROOT"; }; + 5AF7E8CD56847D9374659427 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_dsp.mm"; path = "../../JuceLibraryCode/include_juce_dsp.mm"; sourceTree = "SOURCE_ROOT"; }; 5C8B7D09E34F63CFA71E119F = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; 6A66D46C1FBEDAD6A106A536 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; 6E79505C2709E7D4111D4C80 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; @@ -61,6 +63,7 @@ 97FD8ABBD95EF8315ACE375D = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_audio_utils"; path = "../../../../modules/juce_audio_utils"; sourceTree = "SOURCE_ROOT"; }; A1C6587E1BCDCAC216C6853B = {isa = PBXFileReference; lastKnownFileType = file.nib; name = RecentFilesMenuTemplate.nib; path = RecentFilesMenuTemplate.nib; sourceTree = "SOURCE_ROOT"; }; A44D165D613999DC222406FC = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + B38559B5C8DF7BF79ED25F28 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_dsp"; path = "../../../../modules/juce_dsp"; sourceTree = "SOURCE_ROOT"; }; B5540A720E3809D34A71A8E5 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "include_juce_graphics.mm"; path = "../../JuceLibraryCode/include_juce_graphics.mm"; sourceTree = "SOURCE_ROOT"; }; B5EB5287FE6F9608B007EB43 = {isa = PBXFileReference; lastKnownFileType = file; name = "juce_audio_basics"; path = "../../../../modules/juce_audio_basics"; sourceTree = "SOURCE_ROOT"; }; BDCED611BD3BAFC0FD2DB205 = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = System/Library/Frameworks/DiscRecording.framework; sourceTree = SDKROOT; }; @@ -82,6 +85,7 @@ 97FD8ABBD95EF8315ACE375D, 481008DEC177B017970DB235, 325AAB87A72023A100317D03, + B38559B5C8DF7BF79ED25F28, 198C5B54B7E63A0B775DE9EF, 6E8914961E2AC5B0230C118C, 586042EDAF352395AEEB8F6F, @@ -95,6 +99,7 @@ 8E2372BA8AF97FF946178E91, BF256F6C10EF6FAFC2A585BB, 34137BFFFF3A6B4EB306C276, + 5AF7E8CD56847D9374659427, CD1EED5A10971AA8EAF940B0, B5540A720E3809D34A71A8E5, FF95EC7ADBED0BFF63E32827, @@ -124,7 +129,7 @@ 3E9AA92331ACE90F1BDE77D8, 668227B90C7AD85717519435, ); name = Source; sourceTree = ""; }; 98A968A1085AE2C43974C9D9 = {isa = XCBuildConfiguration; buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "c++11"; + CLANG_CXX_LANGUAGE_STANDARD = "c++14"; CLANG_LINK_OBJC_RUNTIME = NO; COMBINE_HIDPI_IMAGES = YES; CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; @@ -155,7 +160,7 @@ SDKROOT_ppc = macosx10.5; USE_HEADERMAP = NO; }; name = Debug; }; 58FAAEBF3AE1ED695E3DC7E2 = {isa = XCBuildConfiguration; buildSettings = { - CLANG_CXX_LANGUAGE_STANDARD = "c++11"; + CLANG_CXX_LANGUAGE_STANDARD = "c++14"; CLANG_LINK_OBJC_RUNTIME = NO; COMBINE_HIDPI_IMAGES = YES; CONFIGURATION_BUILD_DIR = "$(PROJECT_DIR)/build/$(CONFIGURATION)"; @@ -278,6 +283,7 @@ 6D8F1CDC011290A48F8F4FF1, 56A011EC51220996D4F00254, 8377B7FE2B3A637A45B04209, + 375D5475EFE7D060163B3839, 802CAC8A9C457A93FF4D7F44, 54CEEC46CBC59590F7CFFFA3, 865FA096794C9649C3E4080C, diff --git a/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj b/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj index 72c12ce7bb..8cbdec5913 100644 --- a/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj +++ b/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj @@ -876,6 +876,57 @@ true + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -1690,6 +1741,7 @@ + @@ -2028,6 +2080,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj.filters b/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj.filters index 80da371e03..99b8d8d602 100644 --- a/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj.filters +++ b/examples/SimpleFFTExample/Builds/VisualStudio2013/SimpleFFTExample_App.vcxproj.filters @@ -203,6 +203,27 @@ {928D8FCC-5E00-174B-6538-93E8D75AB396} + + {5E662F89-AD8B-D0D6-9BB6-D42DCFC3C38B} + + + {D272EE9B-CA6A-186E-1C62-0DF893C7A34E} + + + {5C139EFD-6DD2-83E0-C013-24CC03428D81} + + + {03DBA258-F2EF-EC1D-5A86-2CEE402FE021} + + + {8EE92EFE-883B-A2FA-161D-94AC912BF1DE} + + + {16B24975-5792-03FC-64A8-D04E59D077E1} + + + {362ADBDB-6FDF-5BD4-9F06-0A0270832F67} + {B098BC87-3298-7E6B-12DC-D26C09CDCAED} @@ -1120,6 +1141,60 @@ Juce Modules\juce_data_structures + + Juce Modules\juce_dsp\containers + + + Juce Modules\juce_dsp\filter_design + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp + + + Juce Modules\juce_dsp + Juce Modules\juce_events\broadcasters @@ -2005,6 +2080,9 @@ Juce Library Code + + Juce Library Code + Juce Library Code @@ -3015,6 +3093,90 @@ Juce Modules\juce_data_structures + + Juce Modules\juce_dsp\containers + + + Juce Modules\juce_dsp\containers + + + Juce Modules\juce_dsp\filter_design + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp + Juce Modules\juce_events\broadcasters diff --git a/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj b/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj index 33aa78fdb2..1779878c91 100644 --- a/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj +++ b/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj @@ -875,6 +875,57 @@ true + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + true @@ -1689,6 +1740,7 @@ + @@ -2027,6 +2079,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj.filters b/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj.filters index 38b36b62b9..cb1d374cb1 100644 --- a/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj.filters +++ b/examples/SimpleFFTExample/Builds/VisualStudio2017/SimpleFFTExample_App.vcxproj.filters @@ -203,6 +203,27 @@ {928D8FCC-5E00-174B-6538-93E8D75AB396} + + {5E662F89-AD8B-D0D6-9BB6-D42DCFC3C38B} + + + {D272EE9B-CA6A-186E-1C62-0DF893C7A34E} + + + {5C139EFD-6DD2-83E0-C013-24CC03428D81} + + + {03DBA258-F2EF-EC1D-5A86-2CEE402FE021} + + + {8EE92EFE-883B-A2FA-161D-94AC912BF1DE} + + + {16B24975-5792-03FC-64A8-D04E59D077E1} + + + {362ADBDB-6FDF-5BD4-9F06-0A0270832F67} + {B098BC87-3298-7E6B-12DC-D26C09CDCAED} @@ -1120,6 +1141,60 @@ Juce Modules\juce_data_structures + + Juce Modules\juce_dsp\containers + + + Juce Modules\juce_dsp\filter_design + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp + + + Juce Modules\juce_dsp + Juce Modules\juce_events\broadcasters @@ -2005,6 +2080,9 @@ Juce Library Code + + Juce Library Code + Juce Library Code @@ -3015,6 +3093,90 @@ Juce Modules\juce_data_structures + + Juce Modules\juce_dsp\containers + + + Juce Modules\juce_dsp\containers + + + Juce Modules\juce_dsp\filter_design + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\frequency + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\maths + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\native + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp\processors + + + Juce Modules\juce_dsp + Juce Modules\juce_events\broadcasters diff --git a/examples/SimpleFFTExample/JuceLibraryCode/AppConfig.h b/examples/SimpleFFTExample/JuceLibraryCode/AppConfig.h index 3297659b93..52023e5800 100644 --- a/examples/SimpleFFTExample/JuceLibraryCode/AppConfig.h +++ b/examples/SimpleFFTExample/JuceLibraryCode/AppConfig.h @@ -55,6 +55,7 @@ #define JUCE_MODULE_AVAILABLE_juce_audio_utils 1 #define JUCE_MODULE_AVAILABLE_juce_core 1 #define JUCE_MODULE_AVAILABLE_juce_data_structures 1 +#define JUCE_MODULE_AVAILABLE_juce_dsp 1 #define JUCE_MODULE_AVAILABLE_juce_events 1 #define JUCE_MODULE_AVAILABLE_juce_graphics 1 #define JUCE_MODULE_AVAILABLE_juce_gui_basics 1 @@ -181,6 +182,25 @@ //#define JUCE_ALLOW_STATIC_NULL_VARIABLES 1 #endif +//============================================================================== +// juce_dsp flags: + +#ifndef JUCE_ASSERTION_FIRFILTER + //#define JUCE_ASSERTION_FIRFILTER 1 +#endif + +#ifndef JUCE_DSP_USE_INTEL_MKL + //#define JUCE_DSP_USE_INTEL_MKL 1 +#endif + +#ifndef JUCE_DSP_USE_SHARED_FFTW + //#define JUCE_DSP_USE_SHARED_FFTW 1 +#endif + +#ifndef JUCE_DSP_USE_STATIC_FFTW + //#define JUCE_DSP_USE_STATIC_FFTW 1 +#endif + //============================================================================== // juce_events flags: diff --git a/examples/SimpleFFTExample/JuceLibraryCode/JuceHeader.h b/examples/SimpleFFTExample/JuceLibraryCode/JuceHeader.h index a64e454cf5..2cbf8f9632 100644 --- a/examples/SimpleFFTExample/JuceLibraryCode/JuceHeader.h +++ b/examples/SimpleFFTExample/JuceLibraryCode/JuceHeader.h @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include diff --git a/examples/SimpleFFTExample/JuceLibraryCode/include_juce_dsp.cpp b/examples/SimpleFFTExample/JuceLibraryCode/include_juce_dsp.cpp new file mode 100644 index 0000000000..430d943f26 --- /dev/null +++ b/examples/SimpleFFTExample/JuceLibraryCode/include_juce_dsp.cpp @@ -0,0 +1,9 @@ +/* + + IMPORTANT! This file is auto-generated each time you save your + project - if you alter its contents, your changes may be overwritten! + +*/ + +#include "AppConfig.h" +#include diff --git a/examples/SimpleFFTExample/JuceLibraryCode/include_juce_dsp.mm b/examples/SimpleFFTExample/JuceLibraryCode/include_juce_dsp.mm new file mode 100644 index 0000000000..1dea5d08a6 --- /dev/null +++ b/examples/SimpleFFTExample/JuceLibraryCode/include_juce_dsp.mm @@ -0,0 +1,9 @@ +/* + + IMPORTANT! This file is auto-generated each time you save your + project - if you alter its contents, your changes may be overwritten! + +*/ + +#include "AppConfig.h" +#include diff --git a/examples/SimpleFFTExample/SimpleFFTExample.jucer b/examples/SimpleFFTExample/SimpleFFTExample.jucer index eb46db1e16..7e712fb522 100644 --- a/examples/SimpleFFTExample/SimpleFFTExample.jucer +++ b/examples/SimpleFFTExample/SimpleFFTExample.jucer @@ -3,7 +3,7 @@ + splashScreenColour="Dark" companyName="ROLI Ltd." cppLanguageStandard="14"> + @@ -52,6 +53,7 @@ + @@ -73,6 +75,7 @@ + @@ -84,6 +87,7 @@ + diff --git a/examples/SimpleFFTExample/Source/SpectrogramComponent.h b/examples/SimpleFFTExample/Source/SpectrogramComponent.h index 0aaeca67a8..eb2234e2d3 100644 --- a/examples/SimpleFFTExample/Source/SpectrogramComponent.h +++ b/examples/SimpleFFTExample/Source/SpectrogramComponent.h @@ -29,7 +29,7 @@ class SpectrogramComponent : public AudioAppComponent, { public: SpectrogramComponent() - : forwardFFT (fftOrder, false), + : forwardFFT (fftOrder), spectrogramImage (Image::RGB, 512, 512, true), fifoIndex (0), nextFFTBlockReady (false) @@ -137,7 +137,7 @@ public: }; private: - FFT forwardFFT; + dsp::FFT forwardFFT; Image spectrogramImage; float fifo [fftSize];