Commit Graph

47 Commits

Author SHA1 Message Date
c391a2c0af Added free filter envelope random transform 2018-03-03 17:22:23 +02:00
195a630060 Implemented free filter processing. Note that the envelope manipulation from the GUI is not handled thread safely yet 2018-02-27 15:02:34 +02:00
e8d134ce48 More work on free filter 2018-02-27 04:06:53 +02:00
1f24ffb1b6 Moved dry source playback into its own method. Allow moving waveform time selection without having to press shift 2018-02-23 17:43:29 +02:00
122c90bf3f Smooth play range change almost working... 2018-02-22 21:03:46 +02:00
a8079b277f Attempt to do fade outs and fade ins when seeking source sound, but not working yet. Readme changes. 2018-02-22 20:01:29 +02:00
c98b7c70e4 Report unstretched play range length when playing original source 2018-02-22 02:04:30 +02:00
715a753893 Resample unprocessed source sound as needed 2018-02-21 20:16:07 +02:00
e6a7d26d27 Preliminary work to play the sound source unprocessed 2018-02-21 19:34:39 +02:00
b6f5c0ea7d Shorten the FFT switch crossfade length. Remove commented out code. Formatting change. 2018-02-13 22:16:18 +02:00
b179285b93 Added method to sound source to get playback position percent. Avoid seeking sound source when changing FFT size. Readme change. 2018-01-31 20:06:12 +02:00
42061670a8 Clean up. Removed the MultiStretchAudioSource, hopefully it doesn't need to be restored later... 2018-01-30 18:56:00 +02:00
ced5a5e22a Increase spec process enabled button size. Init spread spec process to disabled. Remove checks for spec process enabled states from processBlock 2018-01-30 17:54:06 +02:00
84164da2d7 Finally added enabled buttons for the spectral steps. 2018-01-30 17:32:23 +02:00
22aaaeb836 Got rid of unnecessary buffers. There may have at some point been some reason to do it like that though... 2017-12-27 17:57:00 +02:00
7dcf9831f2 Try zeroing even more buffers, but no help... 2017-12-27 17:43:36 +02:00
a6ec40904c Rename member. Attempt clearing buffers more thoroughly but old audio still appears to be present when restarting playback... 2017-12-27 17:35:30 +02:00
8a92376713 Hardcode 8 channels for stretchsource xfade buffer 2017-12-17 19:54:12 +02:00
11be9bfde5 Comment out some logging code 2017-12-15 21:12:49 +02:00
dc86913533 Added pause playback feature with fades for smoothing 2017-12-14 22:17:45 +02:00
bd1eabf3bf Add more parameters including input capture enabled. A slightly nasty timer hack had to be implemented for that but can't be helped since the Juce provided bool parameter doesn't do callbacks...Small tweaks and fixes. 2017-12-13 18:30:09 +02:00
e411a99f70 If capture buffer used, refresh waveform when GUI has been closed and reopened. 2017-12-13 05:18:39 +02:00
1576cfcf97 Use tryEnter for loop xfadelen setting. Fix oopsie in rate parameter setting... 2017-12-12 20:46:52 +02:00
5a17f43763 Use Juce CriticalSection for main audio processor too. Use tryEnter for changing main volume parameter. Looks like it's best to do the tryEnter stuff for everything possible... 2017-12-12 20:43:43 +02:00
7805f1a0aa Switch to using Juce CriticalSection in StretchSource. Especially when used with tryEnter, seems to help the audio glitches a lot, even when running under the debugger... 2017-12-12 20:27:29 +02:00
5737b92165 Layout parameters in a grid for now etc 2017-12-12 19:54:54 +02:00
75be994714 Constness 2017-12-03 23:28:54 +02:00
5f24356658 Init FFT windowing type 2017-11-28 20:46:04 +02:00
da1fea6850 Check volume and loop xfade length in setters before entering mutex 2017-11-28 16:35:15 +02:00
eece70d89b Add parameters. Use plain old member variables for main volume and loop xfade length. GUI layout tweak. 2017-11-25 21:25:46 +02:00
321e9bbf1c The crossfading between FFT sizes might be working! It seems to be quite heavy for the buffering thread though, so getting glitches in debug build...Removed unused member etc 2017-11-22 18:50:39 +02:00
c43de8120c Attempt to do a crossfade when changing FFT size, using the same stretchsource instance. It's tricky and not really working yet like this. 2017-11-22 00:18:50 +02:00
98858218d5 When setting stretchsource playrange, don't clear the ring buffer and seek only if the current seek position is not within the new play range 2017-11-17 17:17:31 +02:00
6aa514f52b Finally support changing FFT size. This however doesn't now use the double stretch source thing, so glitches will probably happen... Parameter component was changed to support changing the parameter value only on mouse releasee etc 2017-11-17 16:41:33 +02:00
0dcd410780 Support bool parameters in parameter component. Add freeze parameter to plugin. 2017-11-16 19:45:40 +02:00
84e564b393 Still trying... 2017-11-16 02:48:24 +02:00
3fd0b4ea09 Trying to get the Mac build working, but no luck... 2017-11-16 01:42:51 +02:00
c34961995d Implemented a proper equality operator for the processparameters. Also tried something a bit too smart with it, left commented out in the code... 2017-11-15 02:06:36 +02:00
d442e2eaea Added diagnostics to see how often the parameters have been set. Added a somewhat hacky way to avoid doing the parameter updates if not needed, using raw memory comparison. 2017-11-14 19:44:13 +02:00
6487880fb3 Process main volume. Allow importing audio files directly. Tweaks etc 2017-11-14 18:14:14 +02:00
1590110a24 Some improvements. To keep things saner use the single stretch source for now. 2017-11-14 01:50:44 +02:00
aab3fcf2a3 Added WaveformComponent. Audio playback now broken if a file is not set initially, need to sort that out later... 2017-11-13 23:42:13 +02:00
76de3b12a5 Audio input capture more or less running 2017-11-13 22:35:36 +02:00
c32e64a570 Added sound play range parameters. Initial work on audio input capture. 2017-11-13 21:21:30 +02:00
b9db955a99 Initial work on custom GUI 2017-11-13 20:45:23 +02:00
d97975f27a OK, it plays some crappy audio but crashes on quit and all that kind of great stuff 2017-11-13 18:15:07 +02:00
d7ca59b90a Initial git commit 2017-11-13 17:06:08 +02:00