209 Commits (cf9b54d19b538edd142e7046cc46eefdf63e691a)

Author SHA1 Message Date
  xenakios e0a341972d Add license texts to source code files 7 years ago
  xenakios 8a92376713 Hardcode 8 channels for stretchsource xfade buffer 7 years ago
  xenakios ec13410088 Use the file extensions supported by the AudioFormatManager 7 years ago
  xenakios 7ea18cc805 Add method to get sanitized samplerate as getSampleRate might return 0.0 when called from outside audio processing method. Comment out Spectral visualizer instance in editor. 7 years ago
  xenakios 9cad298ef3 Use home directory for import file dialog initial location 7 years ago
  xenakios 11be9bfde5 Comment out some logging code 7 years ago
  xenakios ff6c0dd529 Increase maximum time stretch amount. Rename plugin binary. 7 years ago
  xenakios 3a16caa712 Save and restore spectral processing order 7 years ago
  xenakios 9cddb76202 Use custom range mapping functions for filter frequencies 7 years ago
  xenakios 45dccb830d Workaround a bug in Juce/MacOS file dialog stuff. Show error messages in GUI. 7 years ago
  xenakios dd9b7f3be3 Some skew for low and high pass filter params 7 years ago
  xenakios dc86913533 Added pause playback feature with fades for smoothing 7 years ago
  xenakios 6ad663da47 Use parameter index constants 7 years ago
  xenakios 40096fc87d Propagate host provided maximum block size to buffering audio source 7 years ago
  xenakios a3c2a07e5b Enable compressor as needed. Apply harmonics bandwidth and Gauss mode 7 years ago
  xenakios 76880a8d5f Update output channel count on the fly. Somewhat hacky... 7 years ago
  xenakios 3fc51ab8c6 Mono output doesn't currently work... 7 years ago
  xenakios d05a5d41a8 Preliminary work to enable multichannel output again with a parameter to determine the output channels to render 7 years ago
  xenakios 71a9419e51 Can afford to update the spectral processing order while dragging the mouse. Changed the drag behavior and drawing again but still not that great. 7 years ago
  xenakios 66fe05f842 Try adding some visual feedback for the spectral order drags 7 years ago
  xenakios 6760dd3e67 Actually set the processing order on mouse up 7 years ago
  xenakios c78c42c153 Added component to allow reordering the spectral processing stages 7 years ago
  xenakios e980344bb3 Remove capture toggle button from editor. Also remove JS engine and dynamic object as those are not used currently. 7 years ago
  xenakios 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. 7 years ago
  xenakios 3dc95b6f1d Avoid setting the audio buffer more than once 7 years ago
  xenakios e411a99f70 If capture buffer used, refresh waveform when GUI has been closed and reopened. 7 years ago
  xenakios 891a85b5a5 Init zero octave parameter to proper value. Use param index constant. 7 years ago
  xenakios 1576cfcf97 Use tryEnter for loop xfadelen setting. Fix oopsie in rate parameter setting... 7 years ago
  xenakios 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... 7 years ago
  xenakios 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... 7 years ago
  xenakios 68d5674eb9 Use parameter index constants. Init octave mixer parameters. 7 years ago
  xenakios 5737b92165 Layout parameters in a grid for now etc 7 years ago
  xenakios 572b1d2515 Added more parameters. Added int constants for parameter indexes. Initial work to do GUI layout with Javascript. Disabled spectrum visualizer for now. 7 years ago
  xenakios 2fe40137cc argh 7 years ago
  xenakios b4502ba442 Add harmonics processing parameters. Add harmonics processing visualization etc 7 years ago
  xenakios 75be994714 Constness 7 years ago
  xenakios ccf7ba303f SpectralVisualizer optimizations, create objects only when needed etc 7 years ago
  xenakios 16868d5ccd Allow FFT object to be constructed without inverse FFT. Added SpectralVisualizer component that does an extremely inefficient visualization of the spectral processing stages. 7 years ago
  xenakios a1f7c52eb0 All/most spectral processing stages now in stand alone functions 7 years ago
  xenakios 4a2cc8ff71 Initial work to separate spectrum processing implementations into stand alone functions from the ProcessedStretch class, to allow visualizations etc without having to instantiate the full ProcessedStretch object 7 years ago
  xenakios e52241ba86 Avoid resetting active source play range when changing file. Update xfade cache when changing file. 7 years ago
  xenakios 5f24356658 Init FFT windowing type 7 years ago
  xenakios da1fea6850 Check volume and loop xfade length in setters before entering mutex 7 years ago
  xenakios eece70d89b Add parameters. Use plain old member variables for main volume and loop xfade length. GUI layout tweak. 7 years ago
  xenakios 4a89c2f1c4 Init FFT size with parameter value 7 years ago
  xenakios 8bd4468603 Parameter and slider stuff. Added spread parameter. Mutex locking fixes. This had went unnoticed because VS for some reason didn't break into the debugger on entering a non recursive multiple times. 7 years ago
  xenakios 73ef79509c Use shared audioformatmanager between plugin instances 7 years ago
  xenakios e9e1c45550 Nicer way to deal with the shared audiothumbnailcache 7 years ago
  xenakios a109d71f09 Use shared thumbnailcache for all plugin instances. Kind of a tricky thing with std::shared_ptr going on here using the deprecated unique method...But, oh well... 7 years ago
  xenakios 9207325698 Lock mutex when restoring plugin state 7 years ago