Giada Changelog

What's new in Giada 1.0.0

Apr 19, 2024
  • 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;
  • Let Giada pick a default audio device if not specified;
  • Send MIDI data through armed channels to the outside world;
  • [Linux] Remove duplicated .desktop file generation;
  • [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;
  • Fix inability to quit record-on-signal mode;
  • Fix Record-on-signal mode not deactivated after recording audio;
  • Refactoring and code cleanup.

New in Giada 0.26.1 (Feb 26, 2024)

  • Add ability to stop plug-ins scan;
  • Add ability to sort plug-ins in both ascending and descending order;
  • Disable main transport buttons when not available, with better explanation;
  • [Linux] Follow the XDG Base Directory Specification for configuration files;
  • 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;
  • 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;
  • Refactoring and code cleanup.

New in Giada 0.26.0 (Oct 16, 2023)

  • Changelog:
  • Add ability to open more than one plug-in UI (#575) — you can finally have multiple plug-in windows laying around while playing. Very useful for live performances;
  • improved floating legends in Action Editor (#655) — we added some cute floating legends that stick on top of each Action Editor widget, making it easier to edit actions in the right place;
  • huge optimizations to the audio rendering process;
  • Windows: store configuration file in AppData directory — to allow better integration with the environment (#299);
  • Windows: fix missing .dll file on startup (#661);
  • many more usability improvements and smaller optimizations.

New in Giada 0.25.1 (Aug 4, 2023)

  • Enabled realtime scheduling in audio callback;
  • Input audio meter is now affected by the current input volume value;
  • Improved file name validation when saving projects and samples;
  • Fix compilation with format-security compiler flags;
  • Disable metronome when recording in free-loop-length mode;
  • 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 cleanups.

New in Giada 0.25.0 (Jun 3, 2023)

  • 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

New in Giada 0.24.0 (Mar 16, 2023)

  • 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

New in Giada 0.23.2 (Dec 6, 2022)

  • '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)

New in Giada 0.23.0 (Sep 18, 2022)

  • 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

New in Giada 0.22.0 (Jun 11, 2022)

  • 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

New in Giada 0.21.0 (Apr 2, 2022)

  • 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

New in Giada 0.20.1 (Feb 22, 2022)

  • New MIDI I/O activity LEDs on channels
  • New "Missing Assets" alert window
  • 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
  • Fix plug-in clone operation while cloning a channel

New in Giada 0.20.0 (Jan 23, 2022)

  • 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 re-initialization order of engine sub-components
  • Change 'kill chan' wording to 'stop note' in Action Editor
  • Update solo count when deleting a channel
  • Update Main Window title when saving a new project
  • [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

New in Giada 0.19.2 (Dec 16, 2021)

  • Fix wrong computation of soloed channels
  • 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

New in Giada 0.19.0 (Nov 6, 2021)

  • 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

New in Giada 0.18.2 (Sep 12, 2021)

  • 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

New in Giada 0.17.2 (Apr 1, 2021)

  • 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

New in Giada 0.17.1 (Feb 1, 2021)

  • 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)

New in Giada 0.17.0 (Nov 16, 2020)

  • 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)

New in Giada 0.16.4 (Sep 26, 2020)

  • 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

New in Giada 0.16.3.1 (Jun 22, 2020)

  • 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

New in Giada 0.16.3 (Jun 19, 2020)

  • 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

New in Giada 0.16.2.2 (Apr 21, 2020)

  • Ѕwіtсh tо Јѕоn fоr mоdеrn С++ lіbrаrу fоr rеаdіng аnd wrіtіng Јѕоn dаtа
  • Rеѕіzаblе сhаnnеlѕ, іmрrоvеd vеrѕіоn
  • Drор ѕuрроrt fоr rаw раtсhеѕ (ѕtіll rеаdаblе fоr bасkwаrd соmраtіbіlіtу)
  • Ѕіmрlіfу glоbаl соnfіgurаtіоn раrаmеtеrѕ
  • Ѕіmрlіfу соlumn dаtа ѕtоrаgе іn раtсh fіlеѕ
  • Сеntеr аll mісrо-ѕubwіndоwѕ tо ѕсrееn
  • Rеvаmреd МІDІ lеаrnіng аlgоrіthm аnd rеlаtеd UІ соmроnеntѕ
  • Аlwауѕ dіѕрlау ‘R’ buttоn іn Ѕаmрlе Сhаnnеl
  • Dоn’t dоwnlоаd ехtеrnаl fіlеѕ fоr unіt tеѕtѕ
  • Орtіmіzеd UІ drаwіngѕ fоr bаѕе buttоnѕ
  • Моvе buіld іnfо frоm ‘Аbоut’ wіndоw tо соnѕоlе lоg
  • Uрdаtе RtАudіо tо 5.1.0
  • Fіх сrаѕh durіng аudіо rесоrdіng аftеr ореnіng а рrојесt (thаnkѕ АdТb!)

New in Giada 0.16.2 (Mar 1, 2020)

  • 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!)

New in Giada 0.16.1 (Jan 12, 2020)

  • 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

New in Giada 0.16.0 (Dec 3, 2019)

  • 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
  • Show missing (and removable) plug-ins in Plug-in Window list
  • Removed FLTK multithreading initialization

New in Giada 0.15.4 (Mar 21, 2019)

  • 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

New in Giada 0.15.3 (Dec 23, 2018)

  • 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)

New in Giada 0.15.2 (Sep 5, 2018)

  • 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

New in Giada 0.15.1 (Jul 4, 2018)

  • 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

New in Giada 0.15.0 (Apr 17, 2018)

  • 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'

New in Giada 0.14.6 (Mar 15, 2018)

  • 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

New in Giada 0.14.5 (Jan 14, 2018)

  • 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

New in Giada 0.14.4 (Oct 29, 2017)

  • Renameable channels
  • Portable VST path
  • [Sample Editor] Sample shift tool
  • [Sample Editor] Fix non-working 'cut' operation
  • [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 extention from patch name
  • 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'

New in Giada 0.14.3 (Sep 21, 2017)

  • [Sample Editor] New "reverse selection" function
  • [Sample Editor] New "normalize hard" function
  • [Sample Editor] New "copy to channel" 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

New in Giada 0.14.2 (Aug 15, 2017)

  • [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

New in Giada 0.14.1 (Jul 17, 2017)

  • 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)

New in Giada 0.14.0 (May 29, 2017)

  • 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

New in Giada 0.13.4 (Apr 25, 2017)

  • 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

New in Giada 0.13.3 (Mar 24, 2017)

  • New Jack implementation with BPM sync and Rewind (GitHub #89)
  • Update RtMidi to version 2.1.1
  • Improve 'free channel' function (GitHub #105)
  • Fix 'Close' button's position inside MIDI input window
  • Strip VST folder from Git repository
  • New 'Clock' structure for timing operations
  • Fix missing tracker reset on 'free channel' function (GitHub #99)

New in Giada 0.13.2 (Jan 14, 2017)

  • 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)

New in Giada 0.13.1 (Nov 18, 2016)

  • 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)

New in Giada 0.13.0 (Sep 20, 2016)

  • 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

New in Giada 0.12.2 (Jun 5, 2016)

  • Update RtAudio to version 4.1.2
  • Add WASAPI support on Windows
  • Sortable plugins list
  • Store position and size of Available Plugins window
  • Untangle Channels' code from global variables

New in Giada 0.12.1 (May 6, 2016)

  • 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

New in Giada 0.12.0 (Mar 10, 2016)

  • 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

New in Giada 0.11.2 (Jan 17, 2016)

  • 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
  • Fix warnings and errors on GCC 5.3

New in Giada 0.11.1 (Dec 22, 2015)

  • 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

New in Giada 0.11.0 (Dec 2, 2015)

  • 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)

New in Giada 0.10.2 (Oct 21, 2015)

  • 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

New in Giada 0.10.1 (Oct 21, 2015)

  • 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

New in Giada 0.10.0 (Jul 6, 2015)

  • MIDI lightning output
  • Other minor fixes

New in Giada 0.9.6 (May 11, 2015)

  • 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

New in Giada 0.9.5 (Apr 3, 2015)

  • 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

New in Giada 0.9.4 (Feb 25, 2015)

  • 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

New in Giada 0.9.3 (Feb 2, 2015)

  • 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

New in Giada 0.9.2 (Dec 2, 2014)

  • 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 modes, if fired manually, get the first frame truncated (fixed)

New in Giada 0.9.1 (Sep 25, 2014)

  • Bring back custom version of rtAudio in source package
  • Automatically turn up volume when adding new channel
  • Updated 'misc' tab in configuration panel
  • Fix missing jack headers

New in Giada 0.9.0 (Sep 2, 2014)

  • 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 (fixed)
  • Fix potential recordings with odd frames

New in Giada 0.8.4 (Mar 27, 2014)

  • 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

New in Giada 0.8.3 (Feb 14, 2014)

  • 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)

New in Giada 0.8.2 (Jan 13, 2014)

  • Pitch control exposed via MIDI
  • New tools in aSmple 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

New in Giada 0.8.1 (Dec 9, 2013)

  • New, high quality pitch control based on libsamplerate
  • New set of functions 'spread sample to beat/song'
  • [known issue] Internal crossfades have been temporarily disabled. Some clicks may occur

New in Giada 0.8.0 (Nov 11, 2013)

  • 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

New in Giada 0.7.3 (Sep 16, 2013)

  • 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

New in Giada 0.7.2 (Jul 27, 2013)

  • Initial MIDI output support
  • Mute now affects channels with VSTi signals
  • Lots of deb package improvements
  • 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 input device set to < 0 after a system change

New in Giada 0.7.1 (Jun 28, 2013)

  • 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 loopmode ones
  • Fix graphical bugs in Action Editor, sample mode
  • Fix refresh issue in Piano Roll when deleting items
  • Lots of invisible cleanups and improvements

New in Giada 0.7.0 (Jun 5, 2013)

  • 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

New in Giada 0.6.4 (May 8, 2013)

  • Resizable plugin parameter window
  • New and standard package name format
  • 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

New in Giada 0.6.3 (Apr 23, 2013)

  • New 'solo' button
  • Portable project system
  • New 'Single Endless' channel mode
  • GUI enhancements for channels in WAIT or ENDING status
  • Minor fixes & cleanups

New in Giada 0.6.2 (Apr 5, 2013)

  • 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

New in Giada 0.6.1 (Mar 22, 2013)

  • Support for 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

New in Giada 0.6.0 (Mar 2, 2013)

  • 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
  • Output device info dialog refers to wrong device (fixed)

New in Giada 0.5.8 (Feb 7, 2013)

  • Internal samplerate conversion — thanks to libsamplerate, you can configure the sample rate of your soundcard; samples will be transformed accordingly;
  • New "internal mute" feature — mute actions work in a separate layer and they no longer affect the mute button;
  • Bring channels automatically to full volume on sample load — so comfortable!

New in Giada 0.5.7 (Jan 22, 2013)

  • visual grid + snap to grid for the Action Editor
  • better zoom behavior in the Action Editor
  • enhanced VST support (many new opcodes implemented)
  • under-the-hood improvements and fixes

New in Giada 0.5.6 (Jan 3, 2013)

  • 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

New in Giada 0.5.5 (Dec 15, 2012)

  • "Hear what you're playing" feature
  • Fx processing on the input side
  • Ability to add different action types (Action Editor)
  • Desktop integration on Linux (via deb package)
  • Upgrade to FLTK 1.3.2
  • Remove "the action might stop the channel" when loading new samples
  • Fix wrong positioning of zoom tools (Action Editor)
  • Fix unwanted interactions on the grey area (Action Editor)
  • Fix wrong memory alloc during the VST processing
  • VST don't show up in OS X (fixed)
  • Minor internal refactoring + bugfixing

New in Giada 0.5.4 (Nov 26, 2012)

  • VST GUI support
  • Better subwindow management
  • Implemented many other VST opcodes
  • Missing plugins are now shown in the list with a 'dead' state
  • Refresh action editor when changing beats (via beat operator or beat window)
  • Graphical improvements in the action editor
  • Resizable action editor doesn't work well (fixed)
  • Fix auto fadeout for SINGLE_PRESS channels
  • Fix compilation without --enable-vst
  • Fix for a wrong prototype definition of the VST hostCallback

New in Giada 0.5.3 (Oct 29, 2012)

  • Live beat manipulators (x2)(/2)
  • New sub-windows management, faster and more comfortable
  • New optional hard limiter on the output side
  • Action Editor window recalls x,y,w,h zoom and position
  • Usability improvements while handling an action (action editor)
  • Refresh actionEditor window when switching channel mode or delete actions
  • Unable to delete a killchan action (action editor) (fixed)
  • Don't show ACTION_KILLCHAN in a singlepress channel (action editor)
  • Libsndfile no longer statically linked in Linux
  • Fixed a typo in config: "when the sequeCer is halted"
  • redefinition of DEFAULT_PITCH in wingdi.h (windows) (fixed)
  • Upgrade to FLTK 1.3.0
  • Other internal optimizations
  • Other small bugs fixed

New in Giada 0.5.2 (Oct 5, 2012)

  • Add ability to handle actions for loop-mode channels
  • Add ability to record live mute actions for loop-mode channels
  • Lots of live action recording improvements
  • Enhanced usability for the action editor
  • More verbose output if kernel audio fails to start
  • Several internal optimizations

New in Giada 0.5.1 (Oct 5, 2012)

  • First implementation of the Action Editor

New in Giada 0.5.0 (Jul 23, 2012)

  • New custom project folder (.gprj)
  • Sample names are now made unique
  • Fixed unwanted time stretching while exporting a mono sample
  • Lots of minor internal improvements

New in Giada 0.4.13 (Jul 10, 2012)

  • Sample changes are not stored in the project folder (fixed)
  • Normalized samples above 20.0 db become 0.0 db on relaunch (fixed)
  • Wrong look of the normalize dial if > 20.0 db (fixed)
  • missing .wav extension to filepaths (fixed)
  • missing .wav extension to files in the project folder (fixed)
  • Missing "VST bypass" parameter in patch (fixed)

New in Giada 0.4.12 (Jul 2, 2012)

  • VST parameters and stacks are now stored in patch file
  • Upgrade to RtAudio 0.4.11
  • Revised .deb package
  • Enhanced "normalize" function in wave editor
  • Several memory issues fixed
  • Internal enhancements and minor bugs fixed

New in Giada 0.4.11 (Jun 11, 2012)

  • VST stack for each channel
  • Custom paths for plugins, samples and patches
  • Crash in config panel if device is busy (fixed)
  • Graphical bug in the input meter (fixed)
  • ParamLabel added in the VST parameter list

New in Giada 0.4.10 (May 29, 2012)

  • Ability to shift up an down VST plugins
  • Enhanced patch/conf architecture
  • Ability to edit a sample while playing
  • Mutex controls in VST processing
  • Lots of security issues fixed while changing pitch dinamically
  • Enhanced sub-window system
  • Several minor bugs fixed

New in Giada 0.4.9 (May 12, 2012)

  • No more mandatory inputs
  • Pitch value properly stored inside the patch
  • Several small VST host improvements
  • Enhanced window management
  • Ability to browse files while playing with main GUI (non-modal browser)
  • Improved error checking in KernelAudio
  • Wrong style for lower scrollbar in Browser (fixed)
  • Fixed compilation on 64 bit systems
  • Samplerate no longer hardcoded, auto-detected with JACK
  • Minor internal improvements and bugfixing

New in Giada 0.4.8 (Apr 30, 2012)

  • Initial VST support (experimental)
  • Pitch controller (experimental, no filtering)
  • Fixed several memory leaks
  • Minor internal improvements

New in Giada 0.4.7 (Mar 31, 2012)

  • Cut, trim & silence operations in sample editor
  • New "Reload sample" button added
  • Lots of optimizations in the waveform drawing routines
  • The sample is no longer editable while in play mode
  • Fixed potential startup crashes while using Giada with Jack Audio
  • Other minor fixes applied to the configuration panel
  • Fixed compilation on 64 bit systems

New in Giada 0.4.6 (Mar 12, 2012)

  • New device information panel
  • The device configuration now shows only active and available devices
  • Channel panel no longer pops up during a recording process
  • GUI beautifications and other minor graphical fixes
  • Program icon added in all subwindows
  • Action records no longer available during a take, and vice versa
  • Fixed a serious bug that swapped input and output devices
  • Fixed loop behavior in ending mode
  • Fixed clicks when stopping a muted channel in loop

New in Giada 0.4.5 (Mar 12, 2012)

  • Complete GUI redesign
  • New "start/stop action recs" button
  • Lots of internal cleanups and micro refactorings
  • Small drawing glithes in Editor and status box (fixed)
  • An invalid patch puts Giada to init state (fixed)
  • Fixed button repeat on start/stop, action rec, input rec
  • Checks against takes with unique name
  • Message "this action may stop the channel" always shown (fixed)
  • Channel no longer freeable while a take is in progress

New in Giada 0.4.4 (Feb 6, 2012)

  • New input/output channel selector
  • Rewind bypasses the quantizer if triggered via mouse (fixed)
  • Fixed library paths in configure and makefile
  • Added AUTHORS and NEWS files to the source package
  • More robust sample export procedure
  • Issues with mute buttons when opening a patch (fixed)
  • Several usability improvements
  • Minor code cleanups and optimizations

New in Giada 0.4.3 (Jan 24, 2012)

  • New "save project" feature
  • Ability to export a single sample to disk
  • More feedback when removing/clearing actions and samples
  • Sequencer starts automatically when action-rec button is pressed
  • Alert if patch name is empty while saving it
  • Channels now store internally the name of the samples
  • Missing "--no devices found--" in input devices menu (fixed)
  • Alert added if there are no empty channels for recording
  • "Edit->Clear all actions" no longer works (fixed)
  • END button could be used as a channel trigger (fixed)
  • Recorders are available even if device status is wrong (fixed)
  • Missing sample rewind if channel is muted (fixed)
  • Quantizer doesn't work if framesize is odd (fixed)
  • Random segfault when closing Giada (fixed)
  • Lots of code cleanups
  • Other minor improvements and optimizations

New in Giada 0.4.2 (Jan 9, 2012)

  • Live sampling from external input with meter and delay compensation
  • Check against uneven values and overflow in buffersize field
  • Wrong normalized values if volume level is 0.0 (fixed)
  • Boost dial goes crazy if normalized > 20.0 dB (fixed)
  • Boost dial goes crazy if normalized < 0.0 dB (fixed)
  • Unwanted noise click if a muted channel is being rewinded (fixed)
  • Mute doesn't work well for single-shot samples (fixed)
  • Wrong FLTK headers (fixed)
  • Moving chanStart/chanEnd swaps stereo image (fixed)
  • Reset to init state doesn't reset mute buttons (fixed)
  • Wrong chanStart value if > 0 (fixed)

New in Giada 0.4.1 (Dec 8, 2011)

  • Complete mixer engine refactoring
  • Lots of fixes for action recorder/reader
  • Many minor bugs fixed
  • Critical bug fixed in OSX version

New in Giada 0.4.0 (Nov 16, 2011)

  • Support for all major uncompressed file formats (with libsndfile)
  • Enhanced mono > stereo conversion
  • Fixed drawing issues for the start/stop labels inside the waveform
  • Enhanced backward compatibility with old patches
  • Support for compilation

New in Giada 0.3.6 (Nov 2, 2011)

  • (Windows) Ability to list and browse all active drives
  • Change some internal routines plus minor optimizations
  • Added -pedantic and -Werror flag to the compiler
  • Crash if clicking on mute in an empty channel (fixed)
  • Chan status changes if an empty channel is being muted (fixed)

New in Giada 0.3.5 (Nov 2, 2011)

  • Pan controller added
  • New GNU-style source code packaging
  • Revamped .deb package
  • Program icon missing under Windows (fixed)
  • Crash if a sample in patch is missing from the filesystem (fixed)
  • Unable to rewind to beat 1 if quantizer is on and seq stopped (fixed)
  • Several minor glitches fixed

New in Giada 0.3.4 (Oct 10, 2011)

  • Full source code released under GPL license
  • Autosmooth is now toggleable via setup
  • Faster loading process of patch files
  • Various internal cleanups and optimizations
  • Fixed incorrect reading of boost values from patch
  • Fixed a potential bug that prevented the config panel to appear
  • Fixed stereo swap bug
  • Minor graphical revisions

New in Giada 0.3.3 (Sep 29, 2011)

  • New "normalize" function
  • More editing tools added inside the sample editor
  • Waveform beautifications
  • Fixed interaction bugs for boost and volume controls

New in Giada 0.3.2 (Sep 21, 2011)

  • New "mute" button inside the main window
  • Waveform is now updated when the boost value changes
  • Zoomin/zoomout relative to the scrollbar position
  • Fixed garbage output if the volume was "-inf" (windows version)
  • Fixed several rendering issues for short waveforms

New in Giada 0.3.1 (Sep 12, 2011)

  • New boost volume + fine volume control in sample editor
  • Start/End handles inside the editor are now draggable via mouse
  • Fixed scrollbar issues in sample editor
  • Start/end points are now always drawn in the foreground
  • Waveform no longer overflow if a value is greater than the window
  • patch loading process is now faster and cleaner
  • Update to rtAudio 4.0.10

New in Giada 0.3.0 (Aug 30, 2011)

  • New sample editor window
  • Ability to set start/end points within a sample
  • Update to rtAudio 4.0.9
  • Fixed an string overflow inside a patch
  • Fixed a missing memory free if a sample is unreadable
  • Several internal updates and optimizations

New in Giada 0.2.7 (Jul 22, 2011)

  • New way to handle recorded channels as loops
  • Enhanced rewind with quantization support
  • Several minor improvements and fixes

New in Giada 0.2.2 (May 5, 2011)

  • New open-source patch system
  • A patch can now be loaded from any location of the filesystem
  • Enhanced file browser coords system
  • Lots of minor improvements to the sample loading/unloading procedure
  • (win) Init path of file browser now starts from %userProfile%/Desktop
  • Wrong handling of "/" chars fixed in config menu
  • Fixed potential hangs on quit
  • Fixed clicks when stopping sequencer/sample
  • Minor gui beautifications