-
Notifications
You must be signed in to change notification settings - Fork 101
/
Copy pathChangeLog
1531 lines (1256 loc) · 56.8 KB
/
ChangeLog
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
--------------------------------------------------------------------------------
Giada - Your Hardcore Loopmachine.
Developed by Monocasual Laboratories
www.giadamusic.com
CHANGELOG
--------------------------------------------------------------------------------
1.1.0 --- 2024 . 10 . 25
- New "Channel Groups" feature
- Update FLTK library to latest master
- Update JUCE Framework to 8.0.1
- Lots of refactoring and code cleanups
1.0.0 --- 2024 . 02 . 24
- Main Menu redesign with macOS support
- Main Window I/O redesign with vertical audio meters
- Show beat number in Main Sequencer
- Redesigned Column menu with improved usability
- New Velocity Editor widget in Sample Channel Action Editor
- Recursive buffer rendering implementation (#538)
- Let Giada pick a default audio device if not specified (#669)
- Send MIDI data through armed channels to the outside world (#498)
- [Linux] Remove duplicated .desktop file generation (#591)
- [Linux] Update metainfo.xml file
- Optimize audio preview rendering: enable it only when Sample Editor is open
- Improved zoom with mouse wheel in Sample Editor and Action Editor
- Fix some Sample Editor operations not working correctly
- Fix grid not showing up correctly in Sample Editor (#679)
- Fix inability to quit record-on-signal mode (#677)
- Fix Record-on-signal mode not deactivated after recording audio (#678)
- Refactoring and code cleanup
0.26.1 --- 2023 . 12. 19
- Add ability to stop plug-ins scan (#423)
- Add ability to sort plug-ins in both ascending and descending order (#542)
- Disable main transport buttons when not available, with better explanation (#629)
- [Linux] Follow the XDG Base Directory Specification for configuration files (#338)
- Close all subwindows on project close before resetting the engine
- Fix assertion when when applying audio config changes and input device is disabled
- Fix assertion when selected RtMidi API is not present in available APIs (#670)
- Fix Sample Editor not picking up Channel properties (pitch, range, ...) when loading a project
- Fix crash when fetching audio device and JACK is in use
- Fix some scrolling glitches in Action Editor
- [Windows] Fix plug-in GUI weird auto-resize when dragged around (#621)
- Refactoring and code cleanup
0.26.0 --- 2023 . 10. 15
- Add ability to open more than one plug-in UI (#575)
- Huge optimizations to the audio rendering process
- Improved floating legends in Action Editor (#655)
- Enabling MIDI lightning also enables MIDI input (#527)
- Enable static linking in Windows build (#661)
- Sample Editor: play preview with the right current pitch and range (#654)
- Right-click over empty column space opens the column menu (#628)
- Don't pass command line arguments to FLTK (#372)
- [Windows] Store configuration file in AppData directory (#299)
- Update FLTK to latest master
- Update RtAudio to 6.0.1
- Lots of code refactoring and internal cleanup
0.25.1 --- 2023 . 08 . 03
- Enabled realtime scheduling in audio callback (#68)
- Input audio meter is now affected by the current input volume value (#239)
- Improved file name validation when saving projects and samples (#641)
- Fix compilation with format-security compiler flags (#447)
- Disable metronome when recording in free-loop-length mode (#514)
- Improved robustness of audio channel selection when changing audio devices in
the configuration panel
- Upgrade libsndfile library to version 1.2.0
- Upgrade nlohmann-json library to version 3.11.2
- Upgrade fmt library to version 10.0.0
- Lots of code refactoring and internal cleanup
0.25.0 --- 2023 . 06 . 05
- Ability to change audio and MIDI engines on the fly — no need to restart Giada
anymore when the audio and/or MIDI devices change. No need to restart also
when changing several properties in the Configuration Window;
- Add new "Clear" button next to all MIDI learning widgets to easily clear the
MIDI binding (#486);
- Set default resampler quality to "Linear" (the fastest one);
- Update FLTK to latest commit available;
- Update JUCE to version 7.0.5;
- Fix Velocity parameter not being usable in Action Editor;
- Fix MIDI Channel parameter not being usable in MIDI input configuration;
- Code refactoring and other architectural improvements.
0.24.0 --- 2023 . 03 . 15
- Revamped MIDI sync Clock support
- MIDI engine refactoring, featuring multi-threading support
- UI: Resizable vu-meters
- UI: New global MIDI activity leds
- More core classes and functions refactoring
- More robust persistence mechanism for project and configuration files
- Add new tests suites for MidiEvent and ChannelFactory
- Set C++ version to C++20
- Update FLTK to latest commit available
0.23.2 --- 2022 . 12 . 05
- 'Kill channel' action now rewinds channels in SINGLE_BASIC_PAUSE mode (#599)
- Update FLTK to latest commit available
- Fix audio recording always getting trimmed to 4 beats (#613)
- Fix weird noise when playing two cloned Sample Channels with altered pitch (#602)
- Fix MIDI channel behavior when key is pressed and channel has ENDING state
- Fix channel's keyboard triggering not working
- Fix missing begin/end points and shift value when cloning Sample channels (#601)
0.23.0 --- 2022 . 09 . 18
- Moveable channels between columns
- Initial LV2 plug-ins support, thanks to JUCE v7.0.1
- Add high DPI screens support + SVG icons, thanks to FLTK 1.4.0
- Store Plug-in List Window width and height in configuration file
- Set JSON for Modern C++ as an external dependency
- Fix Sample Channels that couldn't be killed while in ENDING status
- Lots of code refactoring in Channel class and related components
- Code clean-ups for many UI widgets
0.22.0 --- 2022 . 06 . 13
- Multi-language support via langmaps (#34)
- Add new 'fmt' dependency
- Add vcpkg.json manifest file
- Log compiled RtMidi APIs on startup
- Fix missing header with RtMidi 5.0.0
- Fix Stream Linker button not working (#585)
- Minor code refactoring and cleanups
0.21.0 --- 2022 . 04 . 01
- Custom keyboard mappings for global actions (#213)
- Pressing 'Esc' key no longer closes windows
- Resizable Configuration window
- Shut down the main UI nicely when closing a project or loading a new one
- Prevent crashes when loading a new project by cleaning up the data model
- Fix wrong plug-in processing where the local plug-in buffer was incorrectly
deleted in case of instruments (#563)
- Lots of UI code modernizations and cleanups
- [Windows] Fix several assertions and MSVC warnings
0.20.1 --- 2022 . 02 . 21
- New MIDI I/O activity LEDs on channels (#143)
- New "Missing Assets" alert window (#344)
- Many smaller improvements and cleanups in UI code
- Add ability to sort installed plug-ins by Format (VST, VST3, ...)
- Update JUCE to 6.1.5
- Update custom RtAudio submodule (now pointing to 6.0.0beta1)
- Optimize internal buffer Giada <-> JUCE conversion
- Remove old plug-in parameter storage used in old patches
- Fix deadlock when using JACK transport
- Fix Action Editor grid refresh when changing BPM while the editor window is open (#547)
- Fix plug-in clone operation while cloning a channel (#551)
0.20.0 --- 2022 . 01 . 24
- Show progress bar for long operations
- Improved rendering algorithm for sample channels
- Fix wrong sample tail rendering when pitch != 1.0
- Always display play head in Action Editor (fix #534)
- Fix re-initialization order of engine sub-components (fixes #533)
- Change 'kill chan' wording to 'stop note' in Action Editor (fixes #532)
- Update solo count when deleting a channel (fixes #540)
- Update Main Window title saving a new project (fixes #541)
- [Config] Don't skip MIDI device fetching if one of the ports fail to open
- [CMake] Include FLTK as suggested in the official docs
- Add more unit tests for some Channel components
- Minor cleanups and refactoring
0.19.2 --- 2021 . 12 . 16
- Fix wrong computation of soloed channels
0.19.1 --- 2021 . 12 . 15
- Enable JUCE_DEBUG in Debug builds
- New MidiLighter tests + compile-time dependency injection
- Set limits to minimum zoom level in Action Editors (#425)
- Refactoring and code cleanup for Channel class and other sub-components
- Update JUCE to version 6.1.2
- Update RtAudio to version 5.2.0
- Sanitize MIDI ports values (fixes #515)
- MidiLighter improvements and cleanups (fixes #517)
- Fix off-the-beat metronome (#522)
- Fix number of plug-ins found not being updated after a scan (fix #523)
- Fix PluginManager initialization
- Fix pthread linking in CMake (#520)
- Fix build info not being printed correctly on startup
- [Linux] Fix X error messages on closing some plug-in editors
- [Linux] Fix wrong icon file in XDG desktop file
0.19.0 --- 2021 . 11 . 01
- New "One-shot Pause" channel mode
- Refactoring: new component-based architecture
- Fix crash on startup if recording from mono input
- Improved event handling for plug-ins GUIs
- Fix many compiler warnings on menu items initialization
0.18.2 --- 2021 . 09 . 13
- New stereo In/Out audio meters
- Revamped Action Editor: better UI, improved usability
- Show play head in Action Editor
- Implement queue for MIDI events, fix issue #482
- Simplified Event Dispatcher's Event type
- Move JACK transport operations to new JackTransport class
- Always pick sample rate from the first audio device when using JACK
- Don't send MIDI events if MIDI channel is not playing (#499) or muted (#497)
- Add AtomicSwapper as git submodule
- Upgrade JUCE to version 6.1.0
0.18.1 --- 2021 . 07 . 25
- New resampler architecture: allows for changing quality also for live rendering (#288)
- Gracefully shutdown UI on close to random crashes on quit on Windows
- Fix 'one shot channels with actions as loops' mode not working correctly
- Fix wrong sequencer signals while starting/stopping action recs with JACK (#397)
- Fix extra dot in unique audio file name generation
- Fix sample overflow when looping a sample with pitch != 1.0
- [CMake, Linux] Detect JACK with pkg-config
- [CMake, Linux] Install Freedesktop files and icon
- [CMake, Linux] Add configure switches for ALSA, JACK and PulseAudio
- [macOS] Enable hardened runtime
0.18.0 --- 2021 . 05 . 18
- New 'free loop-length' audio recording mode (#63)
- Many AudioBuffer improvements
- Audio configuration panel refactoring
- KernelAudio improvements and cleanups
- Relaxed BPM handling when working with JACK
- Install executable to FHS compliant location (#450)
- [CI] Don't UPX binaries on macOS (#459)
- Fix Overdub protection ON by default not working (#460)
- Fix crash when moving up from a deleted folder (#455)
0.17.2 --- 2021 . 03 . 29
- New double-buffered audio engine
- Improved audio sample rendering precision
- Show tooltips when hovering over UI components
- Add .clang-format file
- Removed support for Autotools build system
- Removed support for old raw patches
- [CMake] Use find_package command for libsamplerate
- Improved AudioBuffer move semantics
- Send time + position information to plug-ins
- Update JUCE library to version 6.0.7
- Fix crash when saving project with plug-ins in invalid state
0.17.1 --- 2021 . 02 . 01
- Better CMake dependency management
- Add CMake install rules (#422)
- Switch to GitHub Actions for CI and release builds (#440)
- Remove hardcoded 'test' folder in test suite (#432)
- Make sure macOS minimum target is set to 10.14 (#444)
- Fix crash when restarting after setting jack as an audio server (#409, #368)
- Fix crash when clicking "Cancel" button in Browser dialog (#430)
- Fix wrong action ID mapping when cloning a channel (#426)
- Fix scrambled MIDI bindings (#427)
0.17.0 --- 2020 . 11 . 15
- Add CMake build system
- VST3 support
- Show descriptive plug-in names in Plug-in List Window
- Resizable plug-in list
- New persistence mechanism for Plug-ins state
- Improved text truncation for small buttons and text boxes
- Beautify Sample Editor window
- Resizable plug-in list window
- Show descriptive plug-in name in plug-in list
- Update JUCE, version 6.0.4
- Update Catch2 to version 2.13.2
- Replace old filesystem functions in fs.h with std::filesystem
- Add VST3 SDK as git submodule
- Set minimum macOS version to 10.14
- Statically link the MSVC runtime library on Windows
- Avoid crash on opening plug-in list with invalid plug-ins
- Rewind sample channels in loop.once.bar mode on bar, if still playing (fix #403)
- Modernize log::print() function to handle std::string arguments (PR #402)
- Fix playStatus logic for ending sample channels in loop-once-bar mode (#404)
- Fix shrinking beats that could glitch the output (#361)
0.16.4 --- 2020 . 09. 19
- Support for mono inputs
- Overdub mode for Sample Channels with optional overdub protection
- Disable record-on-signal mode when sequencer is running
- Shift + [click on R button] kills action reading when "Treat one-shot channels
with actions as loops" option is on
- Start MIDI channels automatically after action recording session
- Fix wrong sample rate conversion when project rate != system rate
- Fix Wrong begin/end sample markers when loading a project with
samplerate != system.samplerate
- Fix wrong MIDI learn mapping for master parameters
- Fix BPM button disabled after audio recording session
0.16.3 --- 2020 . 06. 15
- Non-virtual Channels architecture
- Added G_DEBUG macro
- Optimized CPU usage when playing with many channels
- Increased UI refresh rate to 30 frames per second
- Improved quantizer precision
- Simplified behavior when halting channels containing recorded actions
- Fix wrong audio sample looping with pitch != 1.0
- Fix MIDI input master values not stored on quit
- Fix One-shot press channel mode not working via mouse
- Fix Action recording overlap (both live and via Action Editor)
- Fix crash when loading a project with missing audio files
- Fix BPM not changing via Jack
0.16.2 --- 2020 . 02 . 18
- Switch to Json for modern C++ library for reading and writing Json data
- Resizable channels, improved version
- Drop support for raw patches (still readable for backward compatibility)
- Simplify global configuration parameters
- Simplify column data storage in patch files
- Center all micro-subwindows to screen
- Revamped MIDI learning algorithm and related UI components
- Always display 'R' button in Sample Channel
- Don't download external files for unit tests
- Optimized UI drawings for base buttons
- Move build info from 'About' window to console log
- Update RtAudio to 5.1.0
- Fix crash during audio recording after opening a project (thanks AdTb!)
0.16.1 --- 2020 . 01 . 08
- FreeBSD support
- Ability to remove empty columns manually
- Gray out bpm value when in JACK client mode
- 'Reset to init state' becomes 'close project' under File menu
- [Linux] Upgrade Travis CI Linux machine to Xenial
- Add namespaces to file system and logging functions
- Remove unused G_quit global variable
- Fix Sample Channels in loop mode not playing automatically after audio
recording
- Fix action recording button status during audio recording, signal mode
0.16.0 --- 2019 . 12 . 02
- Fix columns' resizer bar height on vertical window resize
- Fix crash on MIDI learn global commands
- Fix wrong channel routing when triggering MIDI learnt commands
- Fix rewind button not rewinding sample channels in LOOP_* mode
- Use actual buffer size from KernelAudio when loading channels from a patch
- Remove FLTK multithreading initialization
0.16.0 beta-2 --- 2019 . 11 . 11
- Remove all pthread.h leftovers
- Fix Windows build
- Fix memory corruption on Keyboard refresh
- Fix wave size corruption while editing samples in Sample Editor
- Fix freeze when cloning a Sample Channel with a sample in it
- Fix buffer overflow when playing an edited sample
- Fix crash when loading a project with missing plug-ins
- Fix freeze when pressing 'play' during an audio recording session
- Fix play/ending UI status of MIDI channels
- Fix plug-in sorting on reload
- Fix crash when reloading a sample in the Sample Editor
- Fix messy 'R' button status when toggled
- Fix missing icons and broken checkboxes
- Optimize model updates on keyboard interaction
- Always read Columns data from patch files
- Show missing (and removable) plug-ins in Plug-in Window list
- Create default empty columns on 'Reset to initial state'
- Save relative Wave paths in project files
0.16.0 beta-1 --- 2019 . 10 . 19
- Fix macOS build error + warnings
0.16.0 beta-0 --- 2019 . 10 . 19
- New internal engine<->UI architecture
- New persistence layer
- New MIDI queue for incoming live MIDI messages
- Switch to std::thread
- Absolute #include paths in source code
- Removed Boost parameter from Sample Channel
0.15.4 --- 2019 . 03 . 22
- New record-on-signal option for input and action recording
- Initial support for plug-ins with mono I/O buses
- PluginHost refactoring
- Smart pointers for Wave and Plugin objects
- Remove old and deprecated input delay compensation
- Optimized audio IO processing in Mixer callback
- Atomic I/O meters with improved accuracy
- Fix memory leak when replacing samples in a Sample Channel
- Fix plug-ins ordering method when re-opening Giada
- Fix silent Sample Channel when recording actions a second time
- Fix velocity always discarded when sending key-press to Sample Channel
- Fix inability to record actions with quantizer enabled
0.15.3 --- 2018 . 12 . 24
- Action recorder refactoring
- Optional midimap parameters (thank you @tomek-szczesny)
- Support for "inaudible" MIDI lightning events (thank you @tomek-szczesny)
- Build AppImage for Linux on Travis CI instance
- Huge optimization of the AppImage binary file
- Fix Action Editor repaint on min/max zoom levels
- "Resize recording" flag has been removed
- Change text labels for channel operations
- Smarter column assignment while loading a patch/project
- Fix wrong resizer bar width between Action Editor widgets when zooming
- Can't display custom channel name in Sample Channel (fixed)
- Fix crash when cloning Sample Channel with audio data in it
- Clone channel doesn't clone channel name (fix #219)
0.15.2 --- 2018 . 09 . 05
- New sample-accurate Action Editor
- New MIDI Velocity Editor widget
- Ability to move MIDI events vertically in piano roll (i.e. change note)
- Remove mute action recording
- Better handling of MIDI devices that send NOTEON + velocity 0 as NOTEOFF
- Avoid calls to deprecated JUCE plug-ins methods
- Removed useless pthreadGC2.dll from Windows package
- Can't kill MIDI channels (fix #197)
- Can't record MIDI actions (fix #202)
- Fix missing first beat on metronome rendering
- Fix crash on opening plug-in window on macOS
0.15.1 --- 2018 . 07 . 03
- Deep code refactoring, featuring Channels processors
- Many new unit tests added
- Simplify mutex mechanism
- Fix wrong quantizer value on patch/project load
- Remove the old, buggy and glitchy internal crossfade algorithm
- Fix many potential plug-in crashes on Linux
- Properly close plug-in window on plug-in removal
- Improve BPM changes while running as JACK client
0.15.0 --- 2018 . 04 . 18
- Refactor audio engine into frame-based processing
- Refactor channels readers/writers into channelManager namespace
- Smarter Solo algorithm
- Fix missing .wav extension on recorded audio takes
- Fix wrong Channel status update after 'Clear all actions'
0.14.6 --- 2018 . 03 . 15
- MIDI velocity drives volume for one-shot sample channels
- FLAC and Ogg support
- Ability to use system-provided Catch library (GitHub #151)
- Update Catch to version 2
- Fix unreadable tabs title in Configuration Window (GitHub #168)
- Fix crash on opening About window
- Fix 'read actions' button behavior during ending and waiting statuses
- Fix sound card initialization on MacOS
- [Windows] Fix UI stuck on top-right corner
- [Windows] Fix browsing for directories
0.14.5 --- 2018 . 01 . 15
- OS X builds on Travis CI
- AppImage executable for Linux
- Support for multiple plug-in directories
- New directory browser for adding plug-in directories
- Update plug-in's parameters on program change in plug-in's window
- Improved MIDI action management in Piano Roll
- Simplified conditional rules in Makefile.am
- Fix crash on MIDI learn for plug-in parameters
- Fix crash in MIDI input window if MIDI in params are 0
- Fix unwanted new action when dragging piano items in Piano Roll
- Fix crash while recording on existing project (GitHub #161)
- Fix crash on startup in Windows build
0.14.4 --- 2017 . 10 . 28
- Renameable channels
- Portable VST path
- [Sample Editor] Sample shift tool
- [Linux/Mac] Don't skip '/' path when navigating to upper folders
- Ability to process more than one plug-in instrument at once
- Beautify Configuration Window
- Bring VST window to front when opening UI
- Save 'arm' status to patch/project file
- Revamped Beats and Bpm input windows
- Simplified audio samples' storage in project folders
- Update JUCE to version 5.1.2
- UI-less plug-in window refinements
- Update UI-less plug-in window on MIDI parameter's change
- Strip .gptc/.gprj extension from patch name
- [Sample Editor] Fix non-working 'cut' operation
- Fix missed MIDI events with more than 1 plug-in in the stack
- Fix File Browser path widget drawn incorrectly in OS X
- Fix missing MIDI learn for 'Arm channel' and 'Kill channel'
0.14.3 --- 2017 . 09 . 18
- [Sample Editor] New "reverse selection" function
- [Sample Editor] New "normalize hard" function
- [Sample Editor] New "copy to channel" function
- [Sample Editor] New "copy & paste" function
- [Sample Editor] Double click on waveform selects all
- [Sample Editor] Fix garbled characters in window's title
- [Sample Editor] Fix wrong result on "set pitch to song/bar"
- Resizable channels
- Remove calls to malloc/free in Mixer (use new/delete instead)
- Improved UI management of VST plugins
- Fix infinite loop for one shot retrig samples with quantizer > 0
- Fix wrong geChannel count while saving a patch
- Fix missing greyed-out options in Sample Channel's menu when loading a wrong
sample
- Fix crash while audio recording with BPM set below the default 120
- Print correct octave numbers in Piano Roll
0.14.2 --- 2017 . 08 . 14
- [Sample Editor] Audible preview (with optional loop mode)
- [Sample Editor] Frame-precise editing
- [Sample Editor] Show sample's information
- [Sample Editor] Improved fade out algorithm
- [Sample Editor] Process both left and right channel's data while drawing
- Better Wave objects handling
- Improved channels' memory management
- Improved empty columns cleanup algorithm
- Update Catch version
- Update JUCE version (5.1.1)
- Update Jansson version (2.10)
- Fix missing tempo update on reset to init state
- Fix wrong memory allocation for UI-less plugins
0.14.1 --- 2017 . 07 . 16
- Update JUCE library to 5.0.2
- Show play head in Sample Editor
- Refactor pop up menu in Sample Editor
- Many small fixes and optimizations in waveform drawing routine
- Makefile cleanup
- Fix crash while recording with beats/bars greater than 4/1 (GitHub #134)
0.14.0 --- 2017 . 05 . 29
- Sample Editor reorganized and refactored
- Removed support for old ini-based patch files
- Improved and simplified pan algorithm
- Ability to toggle input monitoring while recording audio
- Lots of code refactoring
- Convert all .h headers to C++ headers
- Update Libsndfile to version 1.0.28
- Fix crash when recording audio
- Fix wrong file path when exporting samples
- Fix a bug that prevented begin/end handles to work in Sample Editor
- Fix Sample Editor's grid value not being stored properly on close
0.13.4 --- 2017 . 04 . 23
- Removed support for old ini-based MIDImap files
- Initial support for channel-based MIDI filtering
- New Orphaned MIDI events in Piano Roll editor
- Improve action filtering in Piano Roll editor
- Lots of code refactoring
- New test suite for Action Recorder
- Fix obscure bug when overdubbing actions and a null loop occurs
- Fix "clear all actions" menu refresh when removing items on Piano Roll
0.13.3 --- 2017 . 03 . 25
- Strip VST folder from Git repository
- Fix 'Close' button's position inside MIDI input window
- Update RtMidi to version 2.1.1
- Improve 'free channel' function (GitHub #105)
- New 'Clock' structure for timing operations
- New Jack implementation with BPM sync and Rewind (GitHub #89)
- Fix missing tracker reset on 'free channel' function (GitHub #99)
0.13.2 --- 2017 . 01 . 14
- MIDI learn for plugins parameters
- Toggle hidden files in File Browser
- Fix broken compilation when build without VST support
- Make sure PluginChooser window has a sane size
- Decouple Recorder from any global variable
- Better source code organization
- Make plugin creation more robust
- More source code reorganization
- Fix crash on clicking scrollbar arrows (GitHub #53)
- Fix crash when doubling/dividing length while recording (GitHub #110)
0.13.1 --- 2016 . 11 . 16
- Input MIDI to MIDI channels/plugins
- Refinements to show/hide 'R' button's dynamics
- Increase piano roll items' height
- Set input volume to max by default
- Start live-recorded sample channels right away
- Avoid potential crashes when loading samples on running channels
- Generate metronome during output post-processing
- Better widgets' layout in Sample Editor
- Lots of source code optimizations and cleanups
- Fix inverted 'R' button's status (GitHub #94)
- Better handling of 'R' button's status when the sequencer is off (GitHub #95)
- Fix non-playing samples if live-recorded and 'R' button is on (GitHub #93)
- Reset button statuses once channels have been freed (GitHub #100)
- Fix missing ASIO and WASAPI APIs on Windows (GitHub #96)
- Missing RtMidi libs on Linux (GitHub #102)
- Fix fade-in/fade-out editing not triggering alert on save (GitHub #101)
0.13.0 --- 2016 . 09 . 20
- Deep file browser refactoring
- Save browser's scroll position and last item selected on opening
- Load patches/projects/samples on double click
- 64 bit builds for Windows
- Prevent deprecated patch from crashing if a plugin is not found in the stack
- Force logger to flush to file on Windows
- Add more default values for windows' dimensions and positions
- Avoid crashes on Configuration panel if no midimaps were selected
- Fix missing keyRelease actions in action editor
- Update JUCE to version 4.2.3
- Don't include JUCE on tests without VST support (GitHub #75)
- Fix compilation errors on GCC 6 (GitHub #82)
- Fix includes on OSX (GitHub #92)
- Fix wrong channel's actions count that prevented "R" button to be toggled
properly
- Fixed a bug that prevented actions on frame 0 to being properly reproduced
- Make Recorder a proper class
- Better naming convention for ActionEditor's children classes
- Source code reorganization
0.12.2 --- 2016 . 06 . 02
- Update RtAudio to version 4.1.2
- Add WASAPI support on Windows
- Sortable plugins list
- Simplify custom RtAudio build and inclusion on Linux
- Fix crashes on startup on OS X El Capitan
- Store position and size of Available Plugins window
- Untangle Channels' code from global variables
0.12.1 --- 2016 . 05 . 06
- Show percentage progress for plugin scan
- Notify if plugins are missing
- Notify if unknown plugins are present
- Fix potential segfault on MasterIn/MasterOut plugins loading
- Proper cleanup of JUCE resources
- Internal refactoring on PluginHost's global variables
0.12.0 --- 2016 . 03 . 07
- Port to JUCE Framework for audio plugin management
- Increase global font size
- Minor UI fixes and cleanups
- Add ability to run tests outside Travis CI
- Switch to C++11
- 64 bit binaries for OS X
- Use new constant for global font size
0.11.2 --- 2016 . 01 . 16
- New JSON-based midimap files
- Add new channel by right-clicking anywhere on a column
- Show warning if patch is using the deprecated file format
- Do not force 32 bit compilation on OS X
- Fix warnings and errors on GCC 5.3
- Fix a bug that prevented MIDI Jack from being selected on Linux
0.11.1 --- 2015 . 12 . 22
- Ability to clone channels
- New JSON-based configuration file
- Port all vectors from old gVector to std::vector
- Deactivate all other MIDI fields when changing MIDI system in Config window
- Minor optimizations in configuration panel, Audio tab
- Assume 'none' as default sound system
- Include Catch header file in source package
- Update Travis CI environment to Ubuntu Trusty
- Fix missing sanitization after reading configuration file
- Fix garbage text in device info window
- Fix wrong config value if no midimaps are available
- Fix garbage text while printing device and port names
0.11.0 --- 2015 . 12 . 02
- New JSON-based patch system
- Properly store column width in patch
- Port all const char* strings to std::string in patch/project glue layer
- Switch to SemVer-like internal versioning system
- More source code reorganization
- Fix potential memory leaks in Mixer
- Fix missing static link of RtMidi on Linux
- Unable to store pitch values > 2.0 (fixed)
- Missing assigned key after opening patch (fixed)
0.10.2 --- 2015 . 10 . 21
- Setup Travis CI automated builds
- Add base framework for unit testing (with Catch)
- Improve behavior of Loop Once family when the sequencer is halted
- Fix empty sample path in sample channels when saving a Project
- Fix disabled "edit actions" for sample channels
- Fix missing pthreadGC2.dll in Windows build
0.10.1 --- 2015 . 08 . 26
- Massive source folders refactoring
- Improved usability of "play" buttons for channels
- Remove support for patches created with Giada < 0.6.x
- Fix check for configured soundsystem (would break compilation on g++5)
- Small fixes and cleanup in Makefile.am
0.10.0 --- 2015 . 07 . 05
- MIDI lightning output
- Other minor fixes
0.9.6 --- 2015 . 05 . 11
- Keyboard binding for MIDI channels
- Support for multiple files in drag-n-drop operations
- Different color for wait/end statuses
- Small improvements to Keyboard grabber widget
- Fix random crashes with Jack enabled
- Fix weird behavior with multiple drag and drop
- Code refactoring
0.9.5 --- 2015 . 03 . 28
- Better column resize algorithm
- New patch loading system with permanent MIDI mapping
- Ability to clear assigned keys (keyboard mode)
- Improved zoom icons in editors
- Fix deprecation warning in configure.ac
0.9.4 --- 2015 . 02 . 24
- Drag-n-drop now works also in existing channels
- Store 'resize recordings' flag in giada.conf
- Better management of duplicate samples
- Add more VST debug information
- Minor fixes and tweaks
0.9.3 --- 2015 . 02 . 01
- New GUI improvement: responsive and resizable columns
- Upgrade to FLTK 1.3.3
- More robust column handling mechanism
- Support for MIDI devices without note-off message (@blablack)
- Fix segfaults when saving a patch with missing plugins
- Fix many minor graphical bugs
- Fix wrong vector assignment in MIDI send event
- Fix reloaded patches with no right tempo/beats displayed
- Fix random odd frames when adding/moving events in Piano Roll
- Minor internal cleanup
0.9.2 --- 2014 . 11 . 29
- New grid layout in Sample Editor
- Load samples via drag n drop
- Add new utility functions: gTrim and gStripFileUrl
- Fix "normalize" button position in Sample Editor
- Minor waveform drawing optimizations
- Add missing files for RtAudio-mod compilation
- All one-shot mode, if fired manually, get the first frame truncated (fixed)
0.9.1 --- 2014 . 09 . 24
- Bring back custom version of rtAudio in source package
- Automatically turn up volume when adding new channel
- Updated 'misc' tab in configuration panel
- Fix startup crash on OS X
- Fix missing jack headers
0.9.0 --- 2014 . 08 . 18
- New full-screen GUI
- Multi-column support
- Advanced logging system
- Upgrade to RtAudio 4.1.1 and RtMidi 2.1.0
- Removed embedded RtAudio (thanks to Arty)
- Fix wrong processing of VST MIDI events on 64 bit version
- Fix stretched buttons when resizing sample editor window
- "Clear all samples" destroys channels (fixed)
- "Free channel" messes up loop / mute buttons (fixes)
- Fix potential recordings with odd frames
0.8.4 --- 2014 . 03 . 27
- New mode 'Loop Bar Once'
- Several small improvements and cleanups to internal utils functions
- Fixed missing title in several subwindows
- (win) Fix runtime error when loading a new project
- Fix chan reset when clicking on waveform
- Properly close subwindows after a channel has been deleted
- Fix 'reload' button not working for samples with updated names
0.8.3 --- 2014 . 02 . 14
- Experimental MIDI timing output with MTC and MIDI clock
- Expose Sequencer x2 and /2 via MIDI
- New pitch operators x2 and /2
- Internal xfade process restored
- "set key..." becomes "setup keyboard input" for sample channels
- MIDI events are now saved as unsigned int in patch
- Same expression on both sides of '|' in recorder.cpp (fixed)
- Muted channels leak some glitches on 'kill' event (fixed)
- Piano roll can't be edited anymore if beats == 32 (fixed)
- Noise when adding new MIDI channel (fixed)
- Boost and Normalize not working (fixed)
- Multiple copies of every file used by the patch (fixed)
- Samples with -1, -2, ... -n suffix are not included in patch (fixed)
- Segfaults when quantizing samples (fixed)
0.8.2 --- 2014 . 01 . 13
- Pitch control exposed via MIDI
- New tools in Sample Editor (linear fade in/out, smooth edges)
- Implemented vstEvent->deltaFrames, gaining more precision with vst
MIDI events
- Add Fl::lock/Fl::unlock dynamics to glue_ calls where needed
- Avoid pitch sliding when changing pitch of a sample in status OFF
- Update copyright info in source files
- Internal fade in and fade out restored
- Add 'Giada' keyword to desktop file
- Fix annoying glitches when playing very short samples
- Fix random crashes when controlling giada via MIDI
- Fix missing MIDI mapping for read-actions button
0.8.1 --- 2013 . 12 . 09
- New, high-quality pitch control based on libsamplerate
- New set of functions 'spread sample to beat/song'
[known issues]
- Internal crossfades have been temporarily disabled. Some clicks may
occur
0.8.0 --- 2013 . 11 . 03
- Initial MIDI input support
- Fix freeze when recording audio inputs on a second channel
- Fix 'R' button to show up even if the channel has no actions
- Fix weird drawings of keypress actions in action editor
- Free channel: delete 'R' button as well
- Shift+key does not kill loop mode channels in a wait status
- Fix issue with 'R' button and newly added actions
- Remove "left"/"right" labels from main buttons
0.7.3 --- 2013 . 09 . 14
- Experimental 64 bit compilation (Linux only)
- Massive internal cleanup of channel/gui channel layers
- Set default mode to full volume on sample load
- Set default mode to oneshot basic
- Faster drawings in piano roll
- Visual aids in piano roll
- Scroll to pointer in piano roll
- Several minor improvements in piano roll's usability
- Revised VST Carbon window popup system
- Minor improvements in startInputRec/stopInputRec procedure
- Fix compile error using local type Plugin* in Channel's constructor
- Fix segfault in OSX when working with VST windows
0.7.2 --- 2013 . 07 . 27
- Initial MIDI output support
- Mute now affects channels with VSTi signals
- Lots of deb package improvements
- Complete rewrite of VST GUI part on OS X
- Don't send MIDI mute on sample channels
- Send MIDI mute for MIDI channels in play mode
- Fix wrong looping due to VST processing in mixer::masterPlay
- Fix jack crashes when using Giada with ALSA
- Fix VST random crashes on OSX, bus error
- Fix input device set to -1 after a system change
0.7.1 --- 2013 . 06 . 27
- Initial Jack Transport support
- Send global note off when sequencer is being stopped
- Send note off when deleting notes in Piano Roll
- Store position and size of Piano Roll in conf file
- Avoid overlap MIDI notes in Piano Roll
- MIDI channel refactoring
- MIDI channels now behave like loop-mode ones
- Fix graphical bugs in Action Editor, sample mode
- Fix refresh issue in Piano Roll when deleting items
- Lots of invisible cleanups and improvements
0.7.0 --- 2013 . 06 . 05
- Initial MIDI output implementation
- Initial VSTi (instrument) support
- New piano roll widget in action editor
- New chan mode: MIDI vs SAMPLE
- Fix E-MU Tracker Pre not correctly listed in audio in/output
0.6.4 --- 2013 . 05 . 07
- Resizable plugin parameter window
- New and standard package name format <name>-<version>.<ext>
- Implement RtAudio::getCompiledApi() to fetch compiled APIs
- Implement audioMasterGetSampleRate, audioMasterGetLanguage VST opcodes
- Add drop-down menu for buffer size values in config panel
- Enhance project portability between OSes
- Lots of fixes and improvements for VST strings and parameters
- Avoid segfault when loading recs from a patch with files not found
- Always remember selected program when shifting up/down plugins
- Fix wrong size of single_press displayed in action editor
- Fix volume actions resized with value set to zero
- Fix volume envelope always over the cover area
- Fix src package extracts to current dir
- Fix segfault in loadpatch process if plugin GUIs are open
- Fix segfault when closing patch with plugins in BAD status
0.6.3 --- 2013 . 04 . 23
- New 'solo' button
- Portable project system
- New 'Single Endless' channel mode
- GUI enhancements for channels in WAIT or ENDING status
- Minor fixes & cleanups
0.6.2 --- 2013 . 04 . 05
- New volume envelope widget
- Zoom with mouse wheel in the action editor
- Graphical enhancements & speedups for the action editor
- Loop-repeat doesn't stop when put in ending mode (fixed)
- Fix draw errors when zooming too much the action editor
- Set silence in wave editor messes up the waveform (fixed)
- Wrong slashes in file path when saving a patch in Windows (fixed)
- Many, many code improvements and bugs fixed
0.6.1 --- 2013 . 03 . 21
- Unlimited number of channels
- Deep internal refactoring, mixer/GUI layers
- Fix random crashes on exit
- Fix crashes when closing Giada with VST windows opened
- Always free Master In plugin stack on exit
- Lots of other minor bugs fixed and small enhancements
0.6.0 --- 2013 . 03 . 02
- New, full-screen, redesigned sample editor
- Zoom with mouse wheel in sample editor
- Use kernelAudio::defaultIn/defaultOut for DEFAULT_SOUNDDEV_OUT
- Volume knob in main window now updates the editor
- Sound system issues in OS X (fixed)
- Output device info dialog refers to wrong device (fixed)
0.5.8 --- 2013 . 02 . 07
- Internal samplerate conversion (with libsamplerate)
- Bring channels automatically to full volume on sample load
- Ability to set the audio device frequency
- New "internal mute" feature
- fix for deprecated VST opcode 14
- fix deb package issues on Ubuntu 12.10 / KXStudio
0.5.7 --- 2013 . 01 . 21
- visual grid + snapping in the action editor
- implement more audioMasterCanDo's in pluginHost
- limit zoom in actionEditor
- revise zoom behavior in actionEditor, now more comfortable
- fix forward declaration & inclusion of several headers
- implemented VST opcode 32
- implemented VST opcode 33
- implemented VST opcode 34
- update website link in tar files
- update copyright info for 2013
0.5.6 --- 2013 . 01 . 03
- New overdub mode for live recording
- Support for VST programs, aka presets
- Lots of VST opcodes implemented
- Fix crash when removing a plugin from the stack
- Fix pops when going to beat 0
- Fix compilation issues without --enable-vst
- Many invisible optimizations and small bugs fixed