forked from lsp-plugins/lsp-plugins
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCHANGELOG
More file actions
1323 lines (1210 loc) · 74.3 KB
/
CHANGELOG
File metadata and controls
1323 lines (1210 loc) · 74.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
*******************************************************************************
* RECENT CHANGES
*******************************************************************************
=== 1.2.26 ===
* Implemented Matcher plugin series.
* Implemented metadata revisioning to not to corrupt parameter automation in
DAWs like Ardour related to changing port indices when some new parameter is added.
* Added possibility to select between host-friendly and user-frienfly values when
exporting configuration to the file.
* Added 'smooth' parameter in Limiter and Multiband Limiter plugins that allows to
adjust the smoothnes of the ALR knee.
* Optimized spectrum analyzer module: reduced memory usage and memory copying.
* Some optimizations related to plugin port mappings in the UI.
* Removed duplicate and not working filter point thickness settings in UI behavior menu.
* Fixed out-of sync ALR attack and release timings for the Limiter module when
changing the sample rate.
* Fixed moduleinfo.json generation and validation for VST3.
* Fixed possible garbage at the end of KVT BLOB serialization.
* Fixed endianess-related bugs in VST3 headers.
* Fixed some bugs in VST3 plugin state deserialization.
=== 1.2.25 ===
* Improved plugin metadata validation tool in plugin framework.
* VST3 data synchronization between DSP and UI is now performed in the UI thread if possible.
* Fixed VST3 crash on JUCE-based hosts related to improper IRunLoop handling.
* Fixed Room Builder plugin that could not render impulse responses for some built-in rooms.
* Fixed possible SIGFPE crash on LADSPA descriptor generation related to division by zero error.
* Fixed data transport for LV2 plugins that caused many annoying log messages in Ardour.
=== 1.2.24 ===
* Implemented Ring-Modulated sidechain plugin series.
* Implemented Multiband Ring-Modulated sidechain plugin series.
* Implemented A/B preset switching support by plugins.
* Added support of integrated loudness metering for Referencer plugin series.
* Added True Peak limiting modes to the Limiter and Multiband Limiter plugin series.
* Added Piano keyboard layout to all plugins that provide frequency graph.
* Added support of BeginEdit and EndEdit events for CLAP, LV2, VST2 and VST3 formats.
* Moved Dry, Wet and Dry/Wet knobs into a separate Mix overlay for Trigger plugin series.
* Fixed frequency range display for Multiband Compressor, Expander, Gate and
Dynamics Processor plugin series.
* Fixed regressions in LV2 plugin wrapper related to setting path parameters.
* Fixed crash when loading project with Loudness Compensator plugin in IIR mode.
* Fixed VST3 plugins crash under Ardour related to improper IRunLoop interface
operations based on invalid API calls by the DAW.
=== 1.2.23 ===
* Added experimental support of UI for MacOS using FreeType and Cairo libraries.
Contributed by Marvin Edeler.
* Implemented human-friendly preset management in the plugin's UI.
* VST3 plugin state format changed, not backward-compatible with previous versions
of plugins. Downgrading version may cause plugin state loss.
* Added AHDBSSR (Attack, Hold, Decay, Break, Slope, Sustain, Release) envelope control
over loaded samples in Sampler and Multisampler plugin series.
* Added DC offset control for Clipper and Multiband Clipper plugin series.
* Added frequency linking button to the Phaser plugin series that allows to link minimum
and maximum LFO frequencies and to keep logarithmic frequency range being constant.
* Added support of linear axis for frequency in Spectrum Analyzer plugin series.
* Added frequency inspection mode to the Spectrum Analyzer plugin series activated by
'Inspect' button or Ctrl + Left Mouse Button on the graph.
* Added support of minimum-phase filter mode for Loudness Compensator plugin series.
* Added 'M/S Link' and 'S/C Link' buttons to LeftRigth and MidSide versions of following plugins:
* Compressor, Dynamics Builder, Expander, Gate;
* Multiband plugins: Compressor, Dynamics Builder, Expander, Gate;
* Equalizers: Parametric Equalizer and Graphic Equalizer;
* Crossover plugin.
* Added audio channel pre-mixing controls for the following plugins:
* Compressor, Dynamics Processor, Expander, Gate and Limiter;
* Multiband plugins: Compressor, Dynamics Processor, Expander, Gate and Limiter;
* GOTT Compressor.
* Extended collection of built-in rooms for Room Builder plugin series by Boris Gotsulenko
aka borT.
* Added exciter-like effect presets for Phaser plugin series contributed by Attila Schler.
* Added possibility to automatically play samples when navigating file list.
* Added command line option for JACK that allows to specify client name.
* Some bugfixes and improvements in VST3 plugin format, now UI works for editorhost
demo application from the Steinberg VST3 SDK.
* Additional optimizations of 3D space mathematics with AVX instruction set.
* Fixed improper AVX-512 optimization for lanczos kernel genration function which could cause
improper resampling of audio files and yield some plugins to not to work properly.
* Fixed bug in frequency split editing for Mid/Side and Left/Right versions of Crossover plugin.
* Fixed bug in Mid/Side conversion of stereo signal on 32-bit and 64-bit ARM processors.
Contributed by Asahi Lina.
=== 1.2.22 ===
* Implemented Phaser plugin series.
* Implemented overlay widgets which allow to hide rarely used controls under
special buttons which trigger them to pop up.
* Added Feedback Drive control for Chorus and Flanger plugin series.
* Significantly reduced quantization noise for Chorus and Flanger plugin series.
* Better support of widgets activity and coloring in the toolkit library.
* Added pitch knob for pitching files to the Impulse Responses and Impulse Reverb
plugin series.
* Optimized resampling algorithms.
* Added possibility to launch standalone plugins in minimized window state.
* Source code now builds for ARM-based MacOS but without the UI support.
* Fixed problems related to usage of OpenGL under ARM-based devices which do not
support Core OpenGL 3.3 with GLSL 3.3 and above.
* Fixes in OpenGL shaders for support of GLSL 1.80 and several bogus OpenGL
API implementations.
* Fixed broken transport (tempo BPM) synchronization for CLAP plugin format.
* Fixed some command line options that caused JACK version to crash.
* Fixed regression related to creating new global configuration file.
=== 1.2.21 ===
* Implemented default OpenGL rendering engine for the UI for X11-based operating systems.
The rendering engine can be switched back to Cairo by setting LSP_WS_LIB_GLXSURFACE=off
environment variable.
* Added possibility to use custom scaling for each plugin bundle.
* Added highlighting of active item in file navigator nearby sample preview.
* Several optimizations related to scaling widgets in the graphical toolkit library.
* Updated several core libraries for better support of MacOS.
* Additional AVX-512 optimizations of code DSP library.
* Several changes in Sampler and Multisampler plugin series:
* Implemented possibility to Drag&Drop drumkits, SFZ files and LSPC files directly
to the plugin's window for import purpose.
* Muting button does not disable the listen button.
* Added 'velocity' button that allows to disable or enable the volume control
of a sample by the velocity value of the MIDI note.
* Added automatic instrument name assign same to current sample file name if UI behavior
option 'Take instrument name from file' is enabled and the name of instrument is
empty or similar to currently selected sample file.
* Updated several labels in the UI.
* Added workaround for Renoise host related to latency reporting by VST2 and VST3 plugins
on state load.
* Fixed unnecessary output parameter cleanup when importing configuration that caused several
bugs when importing plugin state from file.
* Fixed regression related to impossibility of setting proper values for in several parameters
in the VST3 plugin format.
* Fixed some typos in UI.
=== 1.2.20 ===
* Implemented Referencer plugin series.
* Added "Automatically load files when navigating file list" feature that allows to
automatically load files when navigating file list nearby the loaded sample.
* Added shared memory sends and returns to Mixer plugin series.
* Added shared memory returns to A/B Tester plugin series.
* Added tracking of maximum values to the Spectrum Analyzer plugin series.
* Several fixes around UI Widgets.
* Added 'Stop' button for file preview in plugins that allow audio file loading:
* Impulse Responses;
* Impulse Reverb;
* Room Builder;
* Sampler and Multisampler;
* Trigger.
* Better support of Enter and Escape keys in dialogs.
* Yet more SIMD and AVX-512 optimizations in the DSP library.
* AVX-512 optimizations are now enabled for AMD Ryzen 7000 processor series and later.
* DSP library now supports build for MacOS on Apple M1 and later chips.
* Fixed possible file name loss on deactivated plugins for all modern plugin formats.
* Fixed imprecise spectrum graph and left/right channel desynchronization when rapidly
changing the frequency of filter in Parametric Equalizer plugin series.
* Fixed the behaviour of the 'Inspect' button in the VST3 version of Parametric Equalizer
plugin series. The fix may cause some regressions in user sessions by enabling the
inspection of the first filter.
* Fixed regression related to he AArch64 version of plugins that freezed the host.
=== 1.2.19 ===
* Rollback of source code distribution to tar.gz archive format.
* Fixed unneeded resource object deletion and use-after-free in VST plugin wrapper.
* Fixed window sizing for CLAP plugin format.
* Updated CLAP SDK to 1.2.2.
* Updated VST3 SDK to 3.7.12, may be breaking changes related to parameter identifiers as
Steinberg has twice reduced the set of valid parameter identifiers.
* Several fixes in build scripts.
=== 1.2.18 ===
* Implemented Send Mono and Send Stereo plugins for sending audio streams to
named connection points stored in shared memory.
* Implemented Return Mono and Return Stereo plugins for receiving audio streams from
named connection points stored in shared memory.
* Added inter-communication between Parametric and Graphic Equalizers using new
send/return communication primitives which allows to show the spectrogram of
another Equalizer's output on the graph.
* Added Reverse button for Impulse Responses plugin series that allows to reverse
the impulse response.
* Added support of sidechain passed by shared memory link for Autogain plugin series.
* Added support of sidechain passed by shared memory link for single-band dynamics processing
plugin series:
* Compressor;
* Dynamics Processor;
* Expander;
* Gate;
* Limiter.
* Added support of sidechain passed by shared memory link for multi-band dynamics processing
plugin series:
* GOTT Compressor;
* Multiband Compressor;
* Multiband Dynamics Processor;
* Multiband Expander;
* Multiband Gate;
* Multiband Limiter.
* Mono samples are now played as stereo samples with duplicated left channel for Trigger,
Sampler and Multisampler plugin series.
* Added pre-reverse button to apply sample reversal before cuts, stretches and fades being applied
in Sampler and Multisampler plugin series.
* Several UI improvements related to instrument names in Multisampler plugin series:
instrument name is now displayed in drop-down list and heading of the drop-down group.
* Added documentation_path parameter in user configuration file which allows to
configure the path to the offline documentation installation.
* Update makefiles to simplify cross-compiling, added cross compiling instructions to README.
* Added LUFS meters to the Loudness Compensator plugin series.
* Added reference Pink noise generator of different standard loudness levels to the Loudness
Compensator plugin series.
* Added directory contents view and navigation of currently loaded sample for following plugin series:
* Impulse Responses;
* Impulse Reverb;
* Multsampler;
* Sampler;
* Trigger.
* Fixed random crashes when navigating file dialog in Windows.
* Fixed invalid UI draw issue on Windows when using larger desktop DPI.
* Fixed regression in offline documentation build.
=== 1.2.17 ===
* Changed the binary distribution of plugins. Plugins of different formats are
now packed together into a 7-zip archive. The same is related to documentation
and source code. This allows to gain the economy on the overall size of the
compressed data and number of archives required to download.
* Added basic GStreamer plugin format support.
* Plugins now can be built without UI support if the 'ui' option is omitted
at the configuration stage.
* Added ISO-226:2023 loudness compensation curves to Loudness Compensator plugin series.
* Added balance knobs to LSP Slap-back Delay Stereo plugin.
* Added Suntory Hall Tokyo 3D model to Room Builder presets (contributed by Fowly).
* Updated makefile scripts related to Git checkout (contributed by Johannes Lorenz).
* Improved build tools: UI resources are now built-in only for shared objects/libraries
that actually need them.
* Several AVX-512 optimizations of DSP library.
* Fixed not working MIDI channel setup for the Trigger MIDI plugin series.
* Fixed regression: improper port bindings for Compensation Delay x2 Stereo plugin.
* Fixed several issues related to plugin window sizing for LV2 format.
* Fixed possible access to uninitialized memory when loading built-in resources.
* Fixed improper phase compensation between Dry and Wet channels in
Linear Phase mode for multiband plugin series:
* Multiband Compressor;
* Multiband Dynamics Processor;
* Multiband Expander;
* Multiband Gate.
* Several bugfixes for VST3 wrapper.
=== 1.2.16 ===
* Implemented Chorus plugin series.
* Implemented advanced internal buffer cleanup algorithm that does not cause high CPU load
for Slap-Back Delay plugin.
* Added stereo correlometer to the Spectrum Analyzer plugin series.
* Added feedback to the Slap-Back delay plugin.
* Implemented Dry/Wet balance knob for the following plugin series:
* Artistic Delay;
* Beat Breather;
* Compensation Delay;
* Flanger;
* Impulse Responses;
* Impulse Reverb;
* Room Builder;
* Sampler;
* Multisampler;
* Slap-Back delay.
* Removed 'Amount' knob in Flanger plugin series as it can be fully replaced
by Dry/Wet/DryWet knobs.
* Several fixes related to window position of VST3 plugin format.
* Workaround for Bitwig Studio DAW memory leak when VST3 plugins extensively use messaging.
* Fixed bug related to improper loading of RIFF files with 32-bit float sample format.
* Fixed configuration export for LV2 format where plugins exported paths mapped by
a DAW instead of real file paths.
* Fixed improper numpad key handling in UI for Windows.
* Fixed Artistic Delay which could generate audio garbage on session startup.
* Improved precision of bilinear transform for filters which could blow up signal when
using steep-curved filters.
* Fixed jumping UI controls issues caused by variable widths of different parameters.
=== 1.2.15 ===
* Added experimental VST3 plugin format support.
* Added built-in presets for Compressor plugin series.
* Fixed bug in smoothing mode of Parametric Equalizer and Filter plugins that could
be caused when using large buffer sizes. Additional optimizations to reduce CPU
resources when processing in smoothing mode.
* Updated behaviour of band frequency splits in the UI for Multiband Compressor,
Multiband Expander, Multiband Gate Multiband Dynamic Processor and Crossover plugin series.
* Several bugfixes and improvements in implementations of VST2, LV2 and CLAP formats.
* Added possibility to manually enter channel name in Mixer plugin series.
* Added MIDI velocity control code display in Sampler and Multisampler plugin series.
* Added support of LR2 (12 dB/oct) filters by the Crossover plugins series.
* Added S/M Apply switch to Crossover plugin series that applies effect of Solo/Mute buttons
to corresponding frequency band's outputs.
* Improved grid color and visibility for the Spectrum analyzer plugin series in
Spectralizer mode.
* Implemented Hold option for Compressor, Dynamics Processor, Expander and Gate plugin series.
* Implemented Hold option for Multiband Compressor, Dynamics Processor, Expander and Gate plugin series.
* Added Dry/Wet balance control for Compressor, Dynamics Processor, Expander,
Gate and Trigger plugin series.
* Added Dry/Wet balance control for Multiband Compressor, Dynamics Processor, Expander,
Gate and GOTT Compressor plugin series.
* Fixed phasing issue between dry and wet signal for GOTT Compressor in Linear Phase mode.
* Fixed invalid curve markers display in Multiband Gate plugin series.
* Re-implemented allpass filters for Equalizer that could yield to high frequency
pitch buildup.
* Updated split editing behaviour for Multiband plugin series and Crossover plugin series.
* Added basic UI design guidelines to the documentation.
* Several bugfixes in graphic toolkit library.
=== 1.2.14 ===
* Implemented Clipper plugins series.
* Implemented Multiband Clipper plugin series.
* Implemented Parametric Equalizer x8 plugin series.
* Updated VST 2.x plugin naming to fit the maximum possible length of 31 characters.
* Added tracking of maximum values option for Spectrum Analyzer plugin series.
* Added possibility to change frequency values by double click for GOTT Compressor.
* Improved performance of expression language in the UI.
* Implemented separate input and output signal spectrum analysis for Filter,
Graphic Equalizer and Parametric Equalizer plugin series.
* Updated default value and extended range of the zoom fader for Filter, Graphic
Equalizer and Parametric Equalizer plugin series.
* Added possibility to globally adjust filter point size for Filter, Graphic Equalizer
and Parametric Equalizer plugin series.
* Added gain level display for filter info of the Parametric Equalizer and Filter plugin series.
* Added missing inline display to the Autogain plugin series.
* Threshold markers are now editable for all dynamics and multiband dynamics plugins.
* Implemented switch that controls automatic scaling of spectrum graph for plugin series:
* Beat Breather.
* Filter.
* GOTT Compressor.
* Graphic Equalizer.
* Multiband Compressor.
* Multiband Dynamic Processor.
* Multiband Gate.
* Multiband Expander.
* Multiband Limiter.
* Noise Generator.
* Parametric Equalizer.
* Many code updates that could cause potential problems related to using another
decimal point for floating-point number formatting.
* Added frequency and note displaying for band splits for all multiband plugin
series.
* Added support of storing current file type selection in file dialogs of UI.
* Optimization of compressor and gate functions using AVX-512 instruction set.
* Fixed bug in Mid/Side conversion functions for AArch64 architecture (contributed
by marcan at GitHub).
* Introduced SIMD-optimized expander curve and gain functions.
* Improved performance of logarithmic values calculations for DSP modules.
=== 1.2.13 ===
* Fixed bug in Multiband Limiter plugin series caused by invalid processing of
large input buffers.
* Fixed bug in Compensation Delay plugin series caused by invalid processing of
large input buffers.
* Fixed crackling sound caused by small buffer gaps in Autogain plugin series.
* Fixed bug introduced in 1.2.11 version related to improper optimized function
for AVX-512 instruction set that could cause dynamic processing plugins (like
Compressor, Expander, Gate, etc) work improperly.
* Several optimizations of DSP library with AVX and AVX2 instruction sets.
* Many additional optimizations of DSP library with AVX-512 instruction set.
* Optimizations of compressor, expander and gate modules with SIMD instructions.
* Gate module now uses lsp-dsp-lib for low-level gain and curve optimizations.
* Reduced the gain curve refresh rate for all multiband plugins which may reduce
CPU usage for small input buffer sizes.
* Optimized common gain curve calculation for all multiband plugins.
=== 1.2.12 ===
* Implemented Autogain plugin series for controlling the loudness of the signal
according to the ITU-R BS.1770-4 specificaions.
* Implemented SIMD-optimized curve and gain calculation functions for compressors
which allow to lower the CPU consumption by compressor plugins.
* More AVX-512 optimized functions added to the low-level DSP code.
* Additional SIMD-optimized functions added to DSP library.
* Fixed VST2 plugin crash on UI close in OBS Studio.
* Fixed invalid default values of parameters for CLAP plugin format.
* Fixed double memory free of generated port metadata in CLAP, VST2 and LV2 wrappers.
* Fixed HPF/LPF knob activity in the UI for multiband dynamics plugins.
=== 1.2.11 ===
* Added partial support of AVX-512 instruction set.
* Windows support changed to experimental.
* Fixed code issues reported by the PVS Studio static analyzer.
* Fixed improper band characteristics drawn on band Mute for multiband plugins in
Linear Phase mode.
=== 1.2.10 ===
* Implemented Beat Breather plugin series.
* Added phase switches to Delay Compensator plugin series.
* Implemented Stereo Split mode for stereo version of all dynamic plugins:
* Compressor and Multiband Compressor;
* Dynamics Processor and Multiband Dynamics Processor;
* Expander and Multiband Expander;
* Gate and Multiband Gate;
* GOTT Compressor.
* Added Allpass filter to the Filter plugin series.
* Added Bandpass, Ladder-pass and Ladder-rej filters to Parametric Equalizer
plugin series.
* Introduced Linear Phase mode for the Crossover plugin series.
* Introduced Linear Phase mode for multiband plugin series:
* GOTT Compressor;
* Multiband Compressor;
* Multiband Dynamics Processor;
* Multiband Expander;
* Multiband Gate;
* Multiband Limiter.
* Fixed missing inline display for Phase Detector plugin.
* Fixed invalid input signal level metering for Flanger plugin series.
* Fixed frequency inspection bug for LeftRight and MidSide versions of
Parametric Equalizer plugin series.
* Fixed improper latency value report by Multiband Limiter plugin series.
=== 1.2.8 ===
* Implemented GOTT (Grand Over-The-Top) Compressor plugin series.
* Implemented Filter plugin series.
* Implemented Flanger plugin series.
* Implemented Multiband Limiter plugin series.
* Implemented high-precision oversampling algorithms for Oscilloscope plugin series.
* Updated default values for file selectors in Impulse Responses and Impulse Reverb
plugin series.
* Added generation of explicit element definitions for LV2 groups in TTL files as a
workaround to LV2 problem related to missing predefined port groups' elements.
* Added 'All' channel selector to Sampler and Multisampler plugin series which is now
the default value for channel selector.
* Added missing audio preview for single-channel Sampler Plugin series.
* Adding missing output balance knobs in Impulse Reverb Mono plugin.
* Fixed improper behaviour of the bypass switch for Multiband Compressor, Expander and
Dynamics Processor plugin series.
* Fixed bug in the font manager which could yield memory corrption after complete font
manager cleanup (reproducible when switching visual schemas).
* Fixed memory leakage in the UI (not freed resources on UI close).
* Fixed bug in ALR function for Limiter plugin series which could cause random audio scratches.
* Fixed gain jumping bug in A/B tester plugin.
* Several bugfixes in the core DSP modules provided by the lsp-dsp-units library.
=== 1.2.7 ===
* Fixed CLAP UI support for Bitwig Studio.
* Fixed build that disabled CairoCanvas for Inline Display feature.
* Fixed memory leakage issued by the libcairo font cache on the plugin UI close.
Moved custom font rendering solution to direct usage of libfreetype.
* Fixed crash (BadMatch) for Fluxbox window manager on popup windows.
* Fixed popup window heading display in Fluxbox.
* Fixed non-working solo button for Parametric Equalizer after 1.2.6 release.
* Removed Makefile.d. Dependencies are now automatically generated at the build stage.
* Added possibility to invert the behaviour of mouse scroll for all widgets or
for graph dot widget.
* Added frequency display and gain for each filter of Graphic Equalizer plugin series.
* Added measure button and meter line on graph for Spectrum Analyzer plugin series.
* Added display of filter number, filer channel and filter type near to the
frequency and note.
* Added possibility to change the thickness of lies on the spectrum graph for the
Spectrum Analyzer plugin series.
* Some output parameters like Latency are not exported into configuration file anymore.
=== 1.2.6 ===
* Implemented Mixer plugin series for 4, 8 and 16 Mono/Stereo channels.
* Implemented A/B Tester plugin series with blind option.
* Parametric Equalizer is now smoothly operating with frequency/gain/q factor for each
mode: FIR, IIR, FFT, SPM.
* Added popup menu for more precise control over the equalizer dot on the graph for
Parametric Equalizer.
* Added frequency and note displaying (with detune in cents) over the currently
configured filter in the Parametric Equalizer.
* Implemented automatic and manual inspect mode for filters in Parametric Equalizer.
* Implemented more user-friendly inspecting slider to the Spectrum Analyzer plugin series:
frequency value, amplitude and note (with detune in cents) are displayed now near the
slider which can be adjusted with mouse movements.
* Added basic SFZ import support by the Multisampler plugin series.
* Added shared objects related to 3D rendering to LV2, VST and CLAP packages.
* Fixed buggy tether for the parameter popup window.
* Fixed improper data stream synchronization using LV2:Atom protocol.
* Implemented linear ramping lramp_* functions in the lsp-dsp-lib optimized for
i686, x86_64, ARM32 and AArch64 architectures.
* Fixed avx::dyn_biquad_process_x8_fma3 function implementation which could cause
some data distortion in the output buffer.
* Fixed plugin state out of sync for CLAP plugin format on state restore in REAPER.
* Several bugfixes in UI libraries.
* Better support for build under different ARM architectures.
* The Windows support status has been changed to 'Compiles'.
* The AArch64 support status has been changed to 'Full'.
=== 1.2.5 ===
* Introduced CLAP plugin format support.
* Introduced the 'Override Hydrogen drumkit' feature for Multisampler plugin series.
* Reworked and simplified the behaviour of the parameters that define 'Stretch' and
'Loop' ranges.
* Minimum and maximum values now depend on the sample length for several parameters
like 'Stretch', 'Loop', 'Fade in' and 'Fade out' in the Sampler and Multisampler
plugin series.
* Fixed the application menu spam in GNOME environment by reworking the XDG files
(contributed by sdwolfz).
* Changed VST parameter normalized value mapping for logarithmic parameters.
* Added possibility to specify JACK connections that should be estimated by the
standalone JACK plugin when the plugin connects to the JACK server.
* Implemented plugin metadata validator which runs at the build stage and verifies
the consistency of the plugin metadata.
* Fixed bug related to modification of cyclic parameters for several plugin formats.
* Fixed possible crash when importing configuration data from clipboard.
* Added possibility to enable/disable Knob's scale actions.
* Several bugfixes related to the memory access in the lsp-ws-lib.
=== 1.2.4 ===
* Implemented Noise Generator plugin series.
* Added 'Stretch' and 'Compensate' functions to the sampler plugin (contributed by
Vitalius Kuchalskis).
* Added support of 'Loop' feature by the Sampler plugin series.
* Added audio sample preview feature in the file open dialog for Sampler, Trigger,
Impulse Responses and Impulse Reverb plugin series.
* Extended LSPC (LSP Chunk) file format to support additional types of chunks.
* Added possibility to export Sampler configuration as a single bundle with
the configuration and audio files packaged together into the LSPC file format.
* Fixed broken configuration save and load operations with relative file paths.
* Added 'Min' and 'Max' sidechain sources for single-band and multiband dynamic
processing plugins: Compressor, Dynamic Processor, Expander, Gate.
* Added possibility to add several filters by performing mouse double click on the
graph area for the Parametric Equalizer plugin series.
* Added several built-in presets for the Parametric Equalizer plugin series
(contributed by Largos @ linuxmusicians).
* Fixed performance regression of the UI.
* Significant optimizations of CPU consumption by the dspu::Limiter module.
* Introduced tab control for the lsp-tk lib and lsp-plugin-fw.
* Raised the maximum supported sample rate from 192 kHz to 384 kHz.
* Several bug fixes in lsp-dsp-units library.
* Several bug fixes in lsp-runtime-lib library.
* Several bug fixes in lsp-plugin-fw library.
* Several bug fixes in lsp-tk-lib library.
* Fixed 32-bit ARM architecture detection under 64-bit CPU in makefiles.
=== 1.2.3 ===
* Graphic Toolkit Library lsp-tk-lib has been ported to Windows.
* Updated compressor plugin bundles: added negative boosting gain option in 'Boosting' mode.
* Updated gate plugin bundles: added negative gain option for ducking gateway option.
* Assigned more correct names for sidechain types of dynamic processing plugins.
* Introduced several workarounds for the support of UI by the OBS host.
* Fixed build of i386 DSP code under FreeBSD with Clang compiler.
* Better support of building code for ARMv6, ARMv7 and AArch64 under FreeBSD with Clang compiler.
* Added basic CI tests introduced by GitHub CI.
* Several bugfixes in core libraries.
=== 1.2.2 ===
* Implemented Multiband Dynamic Processor plugin series.
* Changed donation methods.
* Added german translations (contributed by Johannes Guenther).
* Added pitch control for the sample in the Sampler and Multisampler plugin series
(contributed by Vitalius Kuchalskis).
* Added pitch control for the sample in the Trigger plugin series.
* Fixed plugin version tracking which didn't save the updated version
to the configuration file.
* Fixed improper configuration file import in JACK headless mode.
* Fixed segmentation fault error in JACK headless mode when JACK connection was lost.
* Added window scaling button function for plugin window.
=== 1.2.1 ===
* Introduced JACK connection status indication for JACK plugin format.
* Improved keyboard event handling for VST2 plugin format in the case the host prevents
plugins from directly receiving X11 events.
* Updated serialization format of the KVT (Key-Value Tree) for the LV2 plugin format.
* Updated parameter mapping LV2 URI for KVT.
* Updated build (some resources were unnecessary added to builtin resources).
* Updated version handling in the UI wrapper that allows to control multiple bundle
versions in one global configuration file.
* Updated grammar in several text comments (contributed by Dennis Braun).
* Fixed typo in Wavefront Object File Format name.
* Fixed bugs related to usage of custom installation prefix in build scripts.
* Fixed the XDG data installation script that forced to use '/usr/local/share'
location for shared icons.
* Fixed problem with the UI visibility status update for JACK plugin format
that could cause problems of missing of some graphical content in the UI.
* Fixed invalid pointer dereference when exporting configuration file that could cause crashes.
* Fixed bug that caused plugins working in headless mode to crash.
* Fixed regression related to saving state of some plugin controls using lv2:State interface.
* Fixed missing serialization for high-precision parameters in the configuration file.
* Fixed bug related to improper parsing of port name aliases in the UI.
* Fixed typo in Wavefront Object File Format name.
* Fixed bug that could cause improper window sizing in several cases.
=== 1.2.0 ===
* Decomposition of core modules into submodules.
* Implemented multiple visual themes for the plugins.
* Added possibility to change visual themes in runtime.
* Added headless support for JACK plugins.
* Fixed delay compensation issue for Dry/Wet balance for single-banded dynamic plugin series
(Compressor/Gate/Expander/Dynamic Processor).
* Add support of LV2UI:scaleFactor extension - https://github.com/drobilla/lv2/pull/38/commits
* Implemented 'Reset to default' button.
* Added support of building under LoongArch32 and LoongArch64 architectures.
* Added support of building under 32-bit and 64-bit RISC-V architectures.
=== 1.1.31 ===
* Fixed X11 error handling routine that could crash under certain conditions.
* Better support for musl libc (contributed by Artur Sinila).
* Added support of VERBOSE parameter for build system (contributed by Artur Sinila).
* Fixed possible system crash in profiler plugin.
* Updated LV2 TTL generator, now instrument plugins are better compatible with Ardour DAW.
* Updated french translation (contributed by wargreen at Github and Olivier Humbert).
* Migrated hyperlinks from HTTP to HTTPS protocol (contributed by Bruno Vernay).
* Added support of build for 32-bit and 64-bit RISC-V architecture (contributed by Xeonacid at GitHub).
* Fixed window issue for the Fluxbox window manager.
* Fixed build for ARMv8 architecture (contributed by Marek Szuba).
=== 1.1.30 ===
* Implemented Oscilloscope plugin series: x1, x2 and x4. UX design by Boris Gotsulenko.
* Added data streaming port support to plugin framework.
* Added strobe feature to mesh primitives that allows to draw
multiple streamed meshes together.
* Implemented 4-lobe Lanczos oversampling DSP functions for i586 architecture.
* Implemented 4-lobe Lanczos oversampling DSP functions for x86_64 architecture.
* Implemented 4-lobe Lanczos oversampling DSP functions for 32-bit ARM architecture.
* Implemented 4-lobe Lanczos oversampling DSP functions for 64-bit ARM architecture.
* Minor bugfixes in the core library.
* Fixed bug with character set encoding for several systems with limited iconv.
* Fixed latency compensation issue that happened for the 'Bypass' switch/automation.
* Implemented additional 'Boosting' mode for the single-band compressor plugin series.
* Implemented additional 'Boosting' mode for the multiband-band compressor plugin series.
* Updated french translations (contributed by Olivier Humbert).
* Updated italian translations by Stefano Tronci.
* Desktop icon installation moved to a separate 'install_xdg' icon to prevent LSP
icon flooding for several systems which don't support XDG standard.
=== 1.1.29 ===
* Fixed latency computation error for FIR and FFT modes of the filter.
* Optimize FIR and FFT equalizers to use fastconv_ routines instead of FFT.
* Implemented SPM mode for Parametric and Graphic Equalizer plugin series.
* Fixed improper VST call handling for several calls.
* Several typo fixes in documentation (contributed by Olivier Humbert).
* Fixed improper output MIDI event sorting for all plugins.
* Channels of spectrum analyzer are now synchronized.
* Fixed regression related to loading built-in file resources.
* Added extra button to hide/show equalizer section for Impulse Responses and Impulse Reverb
plugin series.
* Updated OBJ file parsing for support less strict file format.
* Fixed improper behaviour of File Open Dialog widget related to file name input.
* Art Delay plugin settings changed: by default multipliers are now set to 1, BPM multiplier allows now
to step with 0.5 values allowing to set dotted notes.
=== 1.1.28 ===
* Implemented Artistic Delay plugin.
* Added delay time and phase inversion for each band of the crossover plugin.
* MIDI octave numbering now starts with "-1", previously it started with "-2".
* Added automatic scanning of installed Hydrogen drumkits to the Multisampler plugin series
and possibility to load them by single click in the main menu.
* Added sample reversal feature to the Sampler/Multisampler/Trigger plugin series.
* Added possibility to change the note number in Sampler/Multisampler/Trigger plugin series
by scrolling mouse wheel over the note number indicator or performing mouse double click on it.
* Added possibility to use relative paths in file configurations.
* Added 'Plugin Manual' menu item to show the documentation to plugin in the browser.
* Added 'UI Manual' menu item to show the documentation to UI in the browser.
* Added tutorial of using hydrogen drumkits in the Multisampler plugin series - contributed by chrisanthropic @ github.
* Updated french translations - contributed by Olivier Humbert.
* Plugins now can be built with Clang C++ compiler version 10+.
* Refactored ipc::Process for better work with vfork() system call.
* Fixed bug in improper RGB -> HSL conversion for UI.
* Fixed regression in led indication for the Compensation Delay plugin series.
* Fixed drag&drop regression after code refactoring.
* Fixed bug in Fraction widget related to nominator drop-down list values.
=== 1.1.26 ===
* Implemented Crossover Plugin series.
* Fixed phase mismatch between channels in the oversampling mode of limiter (contributed by Hector Martin).
* Fixed bug in convolver module which could perform improper tail convolution (reported by Robin Gareus).
Affected plugins: Impulse Responses, Impulse Reverb, Room Builder.
* Fixed small memory leakage in multiband plugins (Compressor, Gate, Expander) related to usage of
Inline Display feature.
* Added support of pg:mainInput and pg:mainOutput LV2 properties in TTL files for all plugins.
* Updated all C++ headers and source files to match the LGPL3+ license headers.
=== 1.1.24 ===
* Implemented Loudness Compensator plugin series (Mono and Stereo).
* Implemented Surge Filter plugin series (Mono and Stereo) for protecting audio chain
from possible pops on playback start/stop events.
* Significant changes the Limiter Plugin series, may be partially incompatible with hosts/wrappers:
* Removed 'Classic' and 'Mixed' modes since these modes do not give effective results.
* Introduced Automatic Level Regulation (ALR) feature enabled by default.
* Added possibility to dump internal state of plugin to file.
* Several plugins now support dumping of internal state.
* Added support of loading Hydrogen drumkits by the Multisampler plugin series.
* Added 'Squared Cosine' and 'Cubic Hermite Spline' windows to Spectrum Analyzer.
* Fixed bug that caused Spectrum Analyzer to ignore window selection.
* Fixed bug in AVX-optimized sidechaining function that could cause invalid behaviour of plugins that
use external/internal sidechain for processing.
* Implemented back-buffering of the window surface, all UI controls now don't glitch on edit.
* Refactored and simplified LV2 parameter transport between UI and plugin code.
* VST plugins now provide possibility to save and load presets and do not crash Host.
* Added support of lv2:StateChanged extension which properly works with Ardour 6.0.145 and higher.
* Fixed improper behaviour of VST controls under REAPER host (and possible other VST hosts).
* Updated metadata for dynamic processors to better match the UI.
* Now all lv2:Atom ports that do not provide MIDI message transfer are marked as lv2:connectionOptional.
* Exported plugin configuration now contains information about original package version.
=== 1.1.22 ===
* Implemented Multiband Gate plugin series.
* Added sidechain low-pass and high-pass filters for Compressor plugin series.
* Added sidechain low-pass and high-pass filters for Expander plugin series.
* Added sidechain low-pass and high-pass filters for Gate plugin series.
* Added sidechain low-pass and high-pass filters for Dynamic Processor plugin series.
* Added sidechain low-pass and high-pass filters for Trigger plugin series.
* Fixed VST2 identifiers for Multiband Expander plugin series.
* Fixed graph issues related to dot editing.
* Added spanish translation of the UI (contributed by Ignotus - ignotus666 at github.com).
* Compressor, Expander, Gate and Dynamic Processor plugins now report latency for the lookahead knob.
* Fixed mapping of some numpad keys that could cause problems when entering manual value in the UI.
* VERSION build variable replaced with LSP_VERSION build variable (contributed by Bruno Vernay).
=== 1.1.21 ===
* Fixed UI synchronization issue on plugin state restore for VST plugin format.
* Fixed improper work of default Attack and Release time parameters for
Dynamic Processor plugin series.
* Fixed build broken by recent LV2 header updates.
* Some french translation fixes (contributed by Olivier Humbert).
=== 1.1.19 ===
* Updated XDG desktop application integration.
* Refactoring of sse::fft functions for better portability between different compilation options.
* Fixed bug in asimd::hdotp functions for AArch64 that caused invalid result output.
* LV2 UI and standalone JACK plugins are now resizable.
* Fixed plugin sizing issues on certain new Linux distributions.
* Refactoring and several fixes of decoding and encoding of MIDI protocol messages.
* Fixed silent MIDI output for JACK plugins.
* Profile binaries are now excluded from release build.
=== 1.1.17 ===
* Desktop integration icons are now more properly following the XDG standard.
* Fixed Lanczos resampling kernel formula for oversampling operations.
* Fixed improper display of units in the UI.
* Added French translation of the UI (contributed by Olivier Humbert).
* Added Italian translation of the UI (contributed by Stefano Tronci).
* Fixed non-working right sidechain channel for stereo version of
Compressor, Dynamic Processor, Expander and Gate plugins.
* Added WM_NAME, WM_CLASS and WM_WINDOW_NAME support for the X11 protocol.
=== 1.1.15 ===
* Fixed improper TTL file generation for several plugins.
* Restored missing SVG files, implemented proper icon installation.
* Added better desktop entry categorization (contributed by Dennis Braun).
* Added protection from NaNs, Inf's and denormal floating point values passed to plugins' audio
inputs, all considered to be invalid values are replaced with zeros.
* Added '-fvisibility=hidden' compilation option to avoid conflict between builtin resources of
shared objects that contain implementation of different plugin formats.
=== 1.1.14 ===
* Implemented Multiband expander plugin series.
* Additional DSP optimizations of code with AVX, AVX2 and FMA3 instruction set or i586 and x86_64 architectures.
* Additional DSP optimizations for AArch64 architecture.
* Reworked and additionally optimized structure of all filter chains.
* Refactored and optimized dynamic filter processing.
* Updated behaviour of limiter in classic mode.
* Implemented multilingual interface support.
* Implemented workaround for Drag&Drop support initiated by GTK-based applications.
* Added russian translations of the user interface.
* Added desktop menu for standalone JACK plugins (contributed by David Runge).
* Added scalable vector graphics (SVG) logo (contributed by Sergey Tkach <http://tkach.de/>).
* Added 4.5 dB/octave envelope compensation for spectrum analyzer, renamed purple noise to violet noise in UI.
* Bypass button now supports LV2:enabled designation, that makes plugin to work more smooth with the host.
* Bypass button now handles effSetBypass VST event, that makes plugin to work more smooth with the host.
* Now LV2 and VST plugins can be compiled without the UI support.
* Removed strict requirement to build UI for LADSPA version of plugins.
* Implemented support of LV2 state:mapPath extension.
* Denied use of -ffast-math compiler option since it may provide incorrect behaviour of standard C
library functions like isnan() and isinf().
* Fixed upward compressor behaviour: now upward compressor has additional compensation knee that prevents from
infinite gain boost on low-level input signals.
* Fixed bug in trigger that caused notes to be immediately cancelled.
* Fixed bug in Profiler plugin that caused crash on saving files to WAV format.
* Fixed bug with producing NaNs by dynamic processors in some cases when knee has zero length.
* Fixed stack corruption bug when working with UI styles and colors.
* Fixed problem with matched Z transform caused by filter characteristics optimizations.
* Fixed bug with pop-up menus in parameter's editing popup window that caused user interface to lock.
* Added SIGPIPE signal blocking for JACK plugin format at startup.
=== 1.1.13 ===
* Fixed improper utilization of AVX2 instruction when the CPU provides only AVX instruction set.
* Fixed some unit tests.
* Removed strict RPATH dependency in build scripts.
=== 1.1.11 ===
* Source code now compiles for the ARMv6A architecture.
* Implemented incoming drag & drop events support for sample loading and file loading widgets.
* Added possibility to double-click the parameter's value and enter it manually with keyboard.
* Added bookmark support by file opening/saving dialogs. Bookmarks are also automatically imported from
GNOME/KDE desktop environments' configuration files.
* Refactored UI of the Parametric Equalizer plugin series.
* Added allpass filters to Parametric Equalizer plugin.
* Added knobs that allow to simultaneously shift frequency for all active filters
in the Parametric Equalizer plugin series.
* Added support of RoomEQ Wizard configuration file format import by Parametric Equalizer plugin series.
* Refactored UI of the Graphic Equalizer plugin series.
* Updated UI of the Multiband Compressor plugin series.
* Implemented allpass filters that add phase compensation for the classic mode of the Multiband compressor
and allow to achieve flat frequency response.
* Changed reverb simulation algorithm for the Room Builder plugin: the algorithm now handles capture objects as opaque
objects, not part of the 3D scene. So the number and location of the captures does not impact the audio simulations.
This allows to render the impulse response in more accurate way. However, even after some set of additional
optimizations has been made, this yields to some performance degradation because there are much more ray
groups required to be processed.
* Added possibility to export state to clipboard and import state from clipboard from the UI of any plugin.
* Added possibility to freeze all graphs in the Spectrum Analyzer simultaneously.
* Added MIDI groups to Multisampler plugin series.
* Added possibility to control how panning and gain controls affect the signal passed to the direct output tracks
of the Multisampler plugin.
* Implemented JSON and JSON5 parsing and serializing mechanisms.
* Implemented XML parsing mechanism without built-in DOCTYPE definition support.
* Removed EXPAT library from build dependencies since LSP Plugins have their own XML parser.
* Implemented more advanced expression language for UIs.
* Implemented styling system and basic styling mechanism for UIs.
* Additionally optimized DSP biquad filters for 32-bit ARM NEON instruction set.
* Additional DSP optimizations for AArch64 architecture.
* Additional DSP optimizations of code with AVX, AVX2 and FMA3 instruction set for i586 and x86_64 architectures.
* Refactored clipboard mechanism for X11 protocol, adds support of INCR selection transfer protocol.
* Refactoring of the UI widgets, eliminated old UI code and some deprecated facilities from all widgets.
* Implemented basic styling mechanism for UI widgets.
* Implemented ipc::Process class that allows to run nested processes with I/O redirection.
Code now prefers vfork() system call over fork().
* Fixed memory corruption bug in Analyzer core module that could crash the system on
non-power-of-two buffer sizes. Affected plugins: Parametric Equalizer, Graphic Equalizer,
Spectrum Analyzer, Multiband Compressor.
* Fixed GLX context synchronization issues that could lead to crashes on several systems.
* Fixed bug with improper mouse pointer coordinates for nested menus.
* Fixed bug with improper latency value reported by Limiter plugin series.
* Fixed corrupted LADSPA binaries due to lack of objects that contain non-required built-in resources.
Replaced objects with empty stubs.
* Fixed problem of improper loading of 3D Wavefont OBJ files that was caused by improper texture coordinate handling.
* Build fixes for AArch64 architecture related to CPU feature detection.
* Updated VST state serialization mechanism to version 3: now plugin properly handle state if there
is no chunk header in the chunk data passed from the host.
=== 1.1.10 ===
* Implemented 3D reverb simulator plugin series - Room Builder Mono and Room Builder Stereo.
* Fixed improper InlineDisplay feature support in LV2 TTL files.
* Plugin names now have 'LSP' prefix for the LV2 format.
* Each plugin can now provide it's custom UI class which is derived from common plugin's UI class.
* Code now compiles for the PPC64 architecture.
* Code now compiles for the IBM s390x architecture.
* Added command-line option to pass configuration file name for standalone JACK plugins.
The settings stored in configuration file will be automatically loaded at startup.
* Updated function signatures for libraries which now support '-fvisibility=hidden'
compilation flag.
* Added support of nested menus in the UI toolkit.
* Added 3D scene rendering support in the UI by using different rendering backends.
* Implemented GLX backend based on openGL 2.x for rendering 3D scenes.
* Implemented key-value tree storage (KVTStorage) for storing and managing dynamic parameters.
* Implemented key-value tree storage (KVTStorage) UI<->DSP synchronization mechanisms.
* Implemented key-value tree storage (KVTStorage) serialization/deserialization in parameters.
* Implemented key-value tree storage (KVTStorage) serialization/deserialization for the plugin state.
* Implemented mechanism for UI<->DSP OSC message interchange.
* Added support of OSC protocol messages serialization, deserialization and pattern matching.
* Optimized complex number functions for AArch64 architecture.
* Changed installation path for jack core library from <lib-path> to <lib-path>/lsp-plugins.
* Added more careful file type analysis for non-EXT file systems.
* Added support of Hygon Dhyana x86 family CPU optimizations and detection of some other CPU vendors.
* Now both release and test binaries are available to build into separate subdirectories independently.
* Improved built-in resource generation tool.
* Embedded resources are now alphabetically sorted to make the build more deterministic.
* Added support of built-in presets for plugin's UI.
=== 1.1.9 ===
* Added experimental support of AArch64 architecture (DSP code is not optimized yet).
* Fixed regression in VST and Standalone plugin formats that caused offline tasks to
not to be launched.
* Improved build system to make source code possible to build for KXStudio repository.
Distribution builders should ensure that the GNU C++ compiler is selected at the build
stage.
* Additional I/O improvements for better WindowsNT support.
=== 1.1.7 ===
* Implemented fully compatible with EqualizerAPO software digital filters that are
now part of the Parametric Equalizer plugin series.
* Fixed issue that caused VST plugins not to load from custom user-defined path.
* Some code parts rewritten for better compatibility with WindowsNT platform.
* Fixed file listing in the file dialog that caused improper reading of remote directories
mounted on the local file system.
* Changed implementation of LV2 MIDI transport so now plugins utilize only one
LV2:Atom input port and one LV2:Atom output port.
* Fixed bug in host<->UI time and position synchronization for VST plugin format.
* Fixed AVX+FMA3 implementation of dynamic biquadratic filters that caused improper
behaviour of the Multi-band compressor plugin on machines that support AVX and FMA3
instruction set.
* Multiband compressor now properly handles the 'Bypass' button.
* Fixed return of improper extension pointers when requested extension is different to
the ui:idleInterface.
* Fixed bug in dynamic processor plugin that could issue invalid metering values.
* Fixed UI size issue for VST plugins in Cockos Reaper.
* Fixed numerous memory leakage issues in UI components.
* Fixed spontaneous crashes when destroying the Profiler Mono/Stereo plugin.
* Fixed embedded resource generation tool that had invalid behaviour for several file systems.
* Reimplemented I/O subsystem.
=== 1.1.5 ===
* Implemented stereo version of Profiler plugin.
* Added 'Spectralizer' and 'Mastering' modes to the Spectrum Analyzer plugin series.
* All SIMD-optimized DSP code now ported to ARMv7A architecture and optimized using ARM NEON instruction set.
* Added Frame Buffer primitive support by plugins and widgets.
* Implemented RGBA and HSLA color manipulation routines for point array rendering optimizations.
* Extended unit and performance test coverage.
* Enabled RELRO and PIE option for binaries, simplified build system.
* Implemented optimized DSP functions for minimum and maximum search.
* Implemented optimized DSP functions for static biquad processing, dynamic biquad processing,
dynamic bilinear transformation.
* Extended DSP code with different set of software rendering functions that enhance visual effects.
* Added support of FreeBSD operating system (plugins are available for building in FreeBSD ports).
* Improved build process, added possibility to specify PREFIX variable for
installing into specified path instead of /usr/local.
* Fixed building issues under Ubuntu Linux related to compiler and linker
flags reordering.
* Fixed system character set detection on certain systems that caused disappearing of text labels in the UI.
* Fixed window decorating issue under the i3 window manager.
* Fixed biquad filter processing routines that could cause memory corruption and/or invalid behaviour
in certain circumstances.
* Fixed serious memory corruption in SSE implementation of fast convolution routines that could cause
spontaneous crashes of convolvers.
* Fixed buffer underflow in Convolver module that could cause memory corruption and spontaneous crashes
of host.
=== 1.1.4 ===
* Changed licensing to GNU Lesser General Public License version 3 (GNU LGPL v3).
* Moved code repository to GitHub while keeping release history.
* Implemented linear impulse response profiler.
* Added basic Raspberry Pi 3B/3B+ (ARMv7A) support (experimental).
* Implemented unit testing subsystem.
* Implemented performance testing subsystem.
* Implemented manual testing subsystem.
* Fixed and optimized convolution algorithm for convolver module that produced invalid output.
* Added LSPC file format implementation.
* Added LSPC file format support to convolver plugins.
* Huge refactoring: DSP code moved from core to separate subtree.
* Partially implemented NEON SIMD instruction support for some DSP assembly functions
for ARMv7A architecture.
* Fixed bugs in some DSP oversampling routines.
* Optimized complex multiplication functions.
* Implemented additional complex number routines.
* Implemented additional functions to DSP core.
* Fixed compilation warnings and errors emitted by the GCC 8 compiler.
* Updated development documentation.
=== 1.1.3 ===
* Updated File saving widget to support different kinds of file types.
* Added support of latency report by JACK version of plugins.
* Added support of playback position report (BPM, etc) by JACK transport for JACK plugin format.
* Added support of playback position report (BPM, etc) by host for LV2 plugin format.
* Added support of playback position report (BPM, etc) by host for VST plugin format.
* Added emulation of playback position report for LADSPA wrapper.
* Implemented Fraction widget for editing time signature.
* Implemented Tempo tap widget for manually adjusting tempo.
* Added possibility to configure Slap-Back delay plugin series using BPM-related time units.
* All grid lines are made more 'darken' in the UI.
* Added delay ramping (interpolation) option for Compensation Delay plugin series. This feature
allows to apply soft delay change when applying automation in DAW.
* Added delay ramping (interpolation) option for Slap-Back Delay plugin series. This feature
allows to apply soft delay change when applying automation in DAW.
* Added modules for reading text files.
* Re-implemented parameter serializing and deserializing interface for more flexible and safe usage.
* Added possibility to copy samples and impulse response files between different AudioFile widgets.
* Fixed GUI crash when pasting data from clipboard.
* Added ability to move the split bars on the Multiband Compressor's graph with the mouse.
=== 1.1.2 ===
* Implemented Muliband Compressor plugin series.
* Added possibility to mute playback by triggering the 'note off' MIDI event in sampler plugin series.
* Implemented ComboGroup wiget for dynamically switching internal contents of the group.
* Fixed error in filter processing algorithms that could yield to invalid
results when source and destination buffers differ.
* Additionally tuned SSE code of static filters.
* Refactored CPU identification routines and optimized assembly routines selection.
* Small fixes in UI grid cell allocation and rendering.
* Improved design of markers: added gradient highliting.
* Fixed some UI issues related to switched port values.
* Removed support of some plugins by LADSPA that can not be supported by LADSPA.
* Optimized calculations related to logarithmic axis.
* Fixed bug in UI expression language that incorrectly interpreted 'not' operation.
* Added power mathematical operator to UI expression language.
=== 1.1.1 ===
* Plugins have been tested under QTractor 0.9.5 and it seems that they are working well.
* Fixed UI resize issue in Carla host.
* Fixed UI redraw issue that didn't show widgets for several cases.
* Optimized spectrum analysis modules by changing code so it now uses more cache-friendly FFT routines.
* Added graph amplitude scaling to Graphic and Parametric equalizers.
* Added graph amplitude scaling to Spectrum Analyzer plugin.
* Fixed possible memory corruption while redrawing the inline display image of parametric equalizer.
* Fixed possible memory corruption in the Dynamic Processor plugin.
* Fixed latency report for equalizer plugins.
* Updated wrapper to make plugins properly supported by Bitwig Studio that doesn't know anything about
kVstParameterUsesIntStep and kVstParameterUsesIntegerMinMax flags.
* Refactored event handling mechanism for widgets: added 'sender' parameter to indicate the widget that
initiated slot execution.
* UI now stores last used path when loading samples, impulse response files and configuration files in
the global configuration file.