Commit Graph

437 Commits

Author SHA1 Message Date
xenakios
c1901c0528 Rewriting of the offline rendering code 2018-07-09 20:21:06 +03:00
xenakios
d4bab26693 Up version 2018-07-09 20:05:34 +03:00
xenakios
a47448bab0 Use ScopedLock in a few places 2018-07-08 23:10:15 +03:00
xenakios
e92f69e2a9 Renamed envelope component members 2018-07-08 14:38:50 +03:00
xenakios
46c7c59987 readme 2018-07-08 14:17:51 +03:00
xenakios
251d030f75 foo 2018-06-29 20:53:34 +03:00
xenakios
5c900ee9b6 Attempt to store and recall current GUI tab index but not working... 2018-06-29 15:13:49 +03:00
xenakios
22e59efb0e Removed free filter envelope parameters from main parameters GUI 2018-06-29 14:53:22 +03:00
xenakios
dae05fdccf Added parameter components to FreeFilterComponent 2018-06-29 14:49:11 +03:00
xenakios
2d6dce9572 Initial work to move the free filter parameter components to the free gilter tab page 2018-06-29 14:23:48 +03:00
xenakios
4f203de39a Civilized code doesn't use global variables accessed via extern 2018-06-27 13:44:36 +03:00
xenakios
f71f437d3e pragma once 2018-06-21 21:34:43 +03:00
xenakios
1b4c75df0a Added duplicate method for breakpoint envelope. NOTE : the copy is not fully implemented yet. Get free filter envelope duplicate for use with offline rendering. 2018-06-05 21:40:03 +03:00
xenakios
c010a4d48f Keep track of captured length and set sound play range when stopped according to that 2018-06-05 21:11:17 +03:00
xenakios
857c2adf2a Save and restore mute while capturing state 2018-06-04 23:27:08 +03:00
xenakios
24cac9b5c1 Change and add license texts to apply for GPL3 2018-06-04 22:04:53 +03:00
xenakios
413dd31d90 Remove unused member 2018-06-03 21:47:40 +03:00
xenakios
daf191d0d2 Zero envelope random amount at init 2018-06-03 20:31:35 +03:00
xenakios
c5e4f78d0f Add option to mute audio when capturing 2018-06-01 16:31:31 +03:00
xenakios
8547ccc3d4 Increase version 2018-06-01 15:02:03 +03:00
xenakios
b4af0d0ebf Make audio source set play range immediately if it is set when the seek crossfade is active. This effectively disables the smoothed audio but this will have to do for now. The smoothed playback needs to be redesigned from scratch later. Revert the larger disk buffer size. Readme changes. 2018-06-01 14:20:01 +03:00
xenakios
27aabd5e57 macOs build fixes 2018-06-01 01:23:33 +03:00
xenakios
e8d47459a4 foo 2018-05-31 14:11:53 +03:00
xenakios
b8e408a73e Use CriticalSection in audio source. Add bool argument for seek to get immediate seeks. etc 2018-05-31 13:55:32 +03:00
xenakios
1f8f57666d Use convenience method to create components 2018-05-31 13:21:35 +03:00
xenakios
be0cd89869 readme 2018-05-21 21:25:35 +03:00
xenakios
552c165628 Maybe nicer fix for restoring the play range. Use recursive mutex in audio source. 2018-05-21 20:25:32 +03:00
xenakios
eabcd891b3 Calculate disk sample read count. Increase disk read cache 4x. 2018-05-19 15:03:30 +03:00
xenakios
021944dc37 Comment out some logging 2018-05-18 21:34:08 +03:00
xenakios
eb1c840fec Init the thumbnailcache thread in the subclass 2018-05-18 21:19:07 +03:00
xenakios
db7a15d161 Made rewind a parameter. Attempts to fix the time range not being recalled properly in hosts because the time range parameters may be quickly changed when the plugin is initializing and doing the sound source smoothing fades. etc 2018-05-18 16:20:51 +03:00
xenakios
11e61f8cfd Attempt to draw the points in the audio file where the FFTs are taken but of course it doesn't work like this because of the looping 2018-05-11 16:45:34 +03:00
xenakios
5b64b8c779 Add rewind button 2018-05-09 14:02:22 +03:00
xenakios
28f14ddf7a Add looping enabled parameter 2018-05-09 12:33:06 +03:00
xenakios
8a4aee93ec When changing audio file, set the first buffer flag to flush the existing stretched audio faster 2018-05-09 12:17:28 +03:00
xenakios
44114a7f2c Calloutbox tweak 2018-05-07 20:47:17 +03:00
xenakios
7c9e4ac88d Added render settings component 2018-05-07 20:43:27 +03:00
xenakios
29bc7bd5ee Initial work to implement offline render in stand alone build 2018-05-07 20:21:42 +03:00
xenakios
b71eea227d Update plugin title 2018-05-07 18:53:44 +03:00
xenakios
0859d8cdb4 Remove useless code. Read me change. 2018-05-07 15:51:50 +03:00
xenakios
dd333faf2c Bump version to 1.2.0 2018-05-03 15:26:48 +03:00
xenakios
35b3203d4e Draw pitch band numbers in ratiomixer 2018-05-02 13:14:02 +03:00
xenakios
cfbbad0e74 The stretch source doesn't really need to do anything except inc the param change count when the spectral module enabled parameters have changed. However this could get messed up if the spectral module order isn't correctly set in the stretcher instances already...Hmm. 2018-05-01 19:17:59 +03:00
xenakios
fa2564f908 Added dedicated timer for perf meter component 2018-05-01 18:35:00 +03:00
xenakios
60293c6a84 Calculate smoothed prebuffering available amount in the processor 2018-05-01 18:22:21 +03:00
xenakios
d42971e09f Added simple signal smoother class. Use that to smooth out the buffer amount component display. 2018-05-01 17:54:20 +03:00
xenakios
9afca36d64 Updated the buffering audio source from the new JUCE code that removed the use of volatile 2018-05-01 15:11:45 +03:00
xenakios
c4b2ead50d Avoid creating parameter components that are needed in the main GUI 2018-04-29 18:48:28 +03:00
xenakios
2f4c8d4075 foo 2018-04-29 17:04:21 +03:00
xenakios
d898b54ea7 Deserialize should now work 2018-04-26 23:20:16 +03:00
xenakios
81882b9ecb Remove the now unneeded map 2018-04-26 23:15:39 +03:00
xenakios
c8f865dd4a Almost getting there but some still is still messed up... 2018-04-26 23:07:08 +03:00
xenakios
cd15a0ea48 Messy attempt to make the spectral module enabled parameters be tied to particular modules, this needs to be seriously examined... 2018-04-26 21:45:37 +03:00
xenakios
40fcc1bdb0 Remove kiss fft files from repo 2018-04-26 18:03:41 +03:00
xenakios
cf27d43705 Clean up extra opcode stuff 2018-04-26 14:01:46 +03:00
xenakios
2d493d6d81 Add support for some custom VST opcodes 2018-04-25 15:25:29 +03:00
xenakios
2f3a526291 Remove the freeze seek code as it wasn't working. Best to postpone until the stretcher code has been rewritten. 2018-04-23 20:55:25 +03:00
xenakios
2d5064743c Comment out inactive code 2018-04-19 22:57:47 +03:00
xenakios
d294ff7171 Some useless testing with 64 bit floating point stuff 2018-04-17 23:39:26 +03:00
xenakios
d101d4f766 Init the ratio parameters with sensible ratios 2018-04-13 15:36:11 +03:00
xenakios
9f7b288fd6 Readme. Remove the octave mixer sliders from the main GUI. It's kind of nasty creating the parameter components for all the parameters even when they are not visible in the GUI. Should probably redesign how all that is handled... 2018-04-13 15:24:18 +03:00
xenakios
266f2b8e61 GUI tweak 2018-04-03 22:04:10 +03:00
xenakios
fe0fd35021 Store and recall some settings that were not previously handled in the plugin state 2018-04-03 20:08:56 +03:00
xenakios
f45c914c51 GUI tweak 2018-04-03 18:54:28 +03:00
xenakios
08398392ca Implement more ratiomixer parameters etc 2018-04-03 18:32:53 +03:00
xenakios
941ebf31a5 Initial work to change octave mixer spectral module to a more generic ratio mixer module that has more shifters and allows changing the shift ratios. Also added a separate tab page in the GUI for it. 2018-04-03 16:34:20 +03:00
xenakios
3729c4ec28 Glah 2018-04-03 02:07:47 +03:00
xenakios
3401384eff Remove the global processor pointer set. If communication between the plugin instances is needed, it should be implemented properly in a way which also supports the plugins running in different processes... 2018-04-02 20:20:22 +03:00
xenakios
890c568155 Attempt implementing seek while frozen, doesn't work too well like this...Don't use opengl stuff at all if the opengl module isn't set available. 2018-04-02 20:07:55 +03:00
xenakios
ce30e2afd9 Up version number 2018-04-01 18:01:05 +03:00
xenakios
bca5cc5dcf Clean up the non working VST manufacturer specific stuff 2018-03-26 19:31:23 +03:00
xenakios
8421269565 Use global constant for pi instead of define. Calculate sinus transform in envelope transform only if amount more than zero. 2018-03-26 15:40:30 +03:00
xenakios
52ebb38415 Attempt to provide extra data for a special host, not working like this 2018-03-24 01:01:40 +02:00
xenakios
d5f6a99261 Up version 2018-03-21 17:46:21 +02:00
xenakios
faf84a7233 Commented out parameter check. Damn, this got included in the public release... 2018-03-21 17:26:00 +02:00
xenakios
557c16b11c Up version 2018-03-21 16:23:35 +02:00
xenakios
97dfcedf4d Disable the non working waveform mousewheel zoom 2018-03-21 15:36:15 +02:00
xenakios
5f1a04043b Setting spectral module enabled no longer needs to notify host of generic state change. Repaint spectral module chain with timer to keep up to date with parameter changes done from the host. 2018-03-21 14:37:15 +02:00
xenakios
a45136e818 Use native file dialog again. Readme. 2018-03-21 13:48:01 +02:00
xenakios
6b09d11d49 Change the initial order of spectral modules to make the compressor be the last module. This is way too messy like this...But maybe this was the last time this needed to be done... 2018-03-21 13:43:03 +02:00
xenakios
6747d20aa8 Consolidate and clean up storing and recalling parameters. Enable storing and recalling of spectral module order again, using different state IDs. So old states will be discarded, but oh well... 2018-03-21 13:15:48 +02:00
xenakios
a16da5e445 foo 2018-03-16 20:41:44 +02:00
xenakios
3543b80f3a Initialize the module enabled parameters manually. Remove section from the constructor that made VS intellisense not work. 2018-03-16 18:40:59 +02:00
xenakios
88ad2e0de0 GUI size tweaks 2018-03-13 00:33:47 +02:00
xenakios
d4b1bffe7a Kind of working now, but maybe not in the best way... 2018-03-09 19:39:39 +02:00
xenakios
6d7671e8cf The spectral module enabled parameters still not doing so great... 2018-03-09 18:05:33 +02:00
xenakios
7fe4ea982e Remove the spectral module selection and move parameters. Initial attempt to implement the module enabled parameters. Might need to redesign this a bit... 2018-03-06 13:44:36 +02:00
xenakios
4f148a322d blah 2018-03-03 23:06:06 +02:00
xenakios
e1b0f6aaad Remove import file parameter and replace with spectrum module select parameter 2018-03-03 22:48:24 +02:00
xenakios
e5825f52dc OK, it's not going to work... 2018-03-03 22:32:44 +02:00
xenakios
47bf763408 Try adding parameter to open the import file dialog, but now working right at the moment 2018-03-03 22:19:02 +02:00
xenakios
d813794ea9 Added linear interpolation option for envelope random transform, fixes etc 2018-03-03 17:55:02 +02:00
xenakios
c391a2c0af Added free filter envelope random transform 2018-03-03 17:22:23 +02:00
xenakios
536b1ccaf1 Allow free filter to attenuate more 2018-03-03 15:57:24 +02:00
xenakios
71221b41a1 Allow toggling envelope transform X axis wrap 2018-03-03 15:25:16 +02:00
xenakios
cfe2a2b971 Hide the offline render feature for now 2018-03-03 14:36:45 +02:00
xenakios
9212069e65 Blah 2018-03-02 23:37:52 +02:00
xenakios
f474b022f0 A bit better but not much 2018-03-02 23:14:08 +02:00
xenakios
0d6eb09958 Attempt implementing mousewheel zoom into waveform. Badly. 2018-03-02 22:49:32 +02:00
xenakios
0b52559ab1 Stuff 2018-03-02 19:33:47 +02:00
xenakios
595b5992f6 Probably worth upping the version number for the free filter... 2018-02-28 23:10:41 +02:00
xenakios
634f612d9a Make the GUI wider 2018-02-28 20:58:55 +02:00
xenakios
23d8621c83 Remove the original free edit code and the binaural beats code 2018-02-28 19:32:17 +02:00
xenakios
b651e9f064 Parameter group highlight for free filter parameters 2018-02-28 18:57:28 +02:00
xenakios
3c58844266 Explicitly update the envelope minmax values at some places 2018-02-28 18:34:34 +02:00
xenakios
310f549643 Do envelope y scaling based on envelope point min and max values 2018-02-28 16:34:16 +02:00
xenakios
b2944afbab Yet another tilt fix. Change mouse cursor when at envelope segment. Envelope segment hit detection tweak. 2018-02-28 16:01:16 +02:00
xenakios
3816194fbf Fix envelope tilt. Add envelope y scale and tilt as plugin parameters 2018-02-28 14:36:13 +02:00
xenakios
f5995807f4 Add free filter envelope transforms as plugin parameters etc! 2018-02-28 14:20:26 +02:00
xenakios
9774af6e62 Member renames and clean ups 2018-02-28 13:32:46 +02:00
xenakios
b17131fa79 Use lambda for envelope drawing. Ignore using envelope tilt transform for now because it's not correctly implemented. 2018-02-28 13:04:44 +02:00
xenakios
b0e0cd673e Allow changing envelope sin transform frequency 2018-02-28 05:58:22 +02:00
xenakios
b4c3b026e1 Added tilt transform for envelopes 2018-02-28 05:38:19 +02:00
xenakios
e7011d4acb Draw the envelope name 2018-02-28 04:30:28 +02:00
xenakios
8f747819e9 Added sinus transform to envelope. Return proper value when not transformed. 2018-02-28 02:14:27 +02:00
xenakios
d95c41e8aa Improved envelope component keyboard handling logic 2018-02-28 01:16:30 +02:00
xenakios
c6c2855a56 Added scaling transform for envelope 2018-02-28 00:32:18 +02:00
xenakios
ff35bce695 Add envelope transform feature 2018-02-28 00:05:35 +02:00
xenakios
0f70453c3a Simplify the envelope drawing, might come at a slight performance cost 2018-02-27 23:11:03 +02:00
xenakios
3dfb6a3c80 Place both the waveform component and the zoomscrollbar inside the tab component page. Needs a bit more tweaking. 2018-02-27 22:15:14 +02:00
xenakios
d624b2370d Formatting tweaks 2018-02-27 20:14:09 +02:00
xenakios
657c3d6c20 Argh, what a mistake 2018-02-27 20:11:14 +02:00
xenakios
aca3667888 Lock mutex in envelope component. Draw frequency values on x axis. 2018-02-27 19:44:35 +02:00
xenakios
b672213e98 Tweaks to free filter calculations but don't seem to be working correctly yet 2018-02-27 19:21:00 +02:00
xenakios
51049e4ae1 Mutex protect the envelope when manipulating the amount of nodes from the GUI. Should probably redesign this stuff a bit...Init envelope reset nodes. 2018-02-27 15:21:36 +02:00
xenakios
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
xenakios
e8d134ce48 More work on free filter 2018-02-27 04:06:53 +02:00
xenakios
7c61a552c2 Store and restore free filter state 2018-02-27 03:41:54 +02:00
xenakios
cf9b54d19b Initial work to add back the free filter feature 2018-02-27 02:33:41 +02:00
xenakios
600f2d1251 Added some new source files 2018-02-27 01:59:22 +02:00
xenakios
51d40c6daf MacOS build 2018-02-27 00:32:33 +02:00
xenakios
104d1bfd2e Store and recall the number of harmonics parameter. Seriously, have to make this stuff work in a more robust manner... 2018-02-26 22:39:30 +02:00
xenakios
d76ac6118a Allow cancelling offline render 2018-02-26 20:09:47 +02:00
xenakios
ba067f7d4a Do offline render in a thread, show render progress etc 2018-02-26 19:55:32 +02:00
xenakios
46a74c2c51 Offline render might be working more or less now 2018-02-26 18:08:09 +02:00
xenakios
909b61922b Attempt implementing offline rendering from the plugin but not going so great. Looks like the StretchAudioSource doesn't really work that robustly... 2018-02-26 17:49:19 +02:00
xenakios
47638ba0c6 Prepare to allow adding offline rendering feature 2018-02-26 16:34:13 +02:00
xenakios
13d03ecaeb Handle corner case in hasProperties 2018-02-25 21:06:59 +02:00
xenakios
ebffc66e90 Upped version number 2018-02-23 21:27:55 +02:00
xenakios
101825df59 Fix for clang 2018-02-23 21:12:16 +02:00
xenakios
a988086ec6 Whoops, almost forgot the smoothed play range stuff for multiple channels 2018-02-23 21:01:39 +02:00
xenakios
3a8da6de0c Make seeking work again. Some variadic template, fold expression etc trickery for value tree etc. Readme change. 2018-02-23 20:46:51 +02:00
xenakios
3c20facdbc Improve time selection dragging behavior 2018-02-23 18:21:28 +02:00
xenakios
6f6670b2d4 Parameter store and recall stuff 2018-02-23 18:09:01 +02:00
xenakios
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
xenakios
531d2e221b Also allow moving time selection by dragging it from the top 2018-02-23 02:16:41 +02:00
xenakios
f47e848f19 Shorter range change fade length. Readme change. 2018-02-22 22:20:06 +02:00
xenakios
122c90bf3f Smooth play range change almost working... 2018-02-22 21:03:46 +02:00
xenakios
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
xenakios
615f870490 Try improving the spectral module dragging logic but didn't really improve yet. Readme changes. 2018-02-22 15:15:11 +02:00