Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
roadmap:features_roadmap [2019/05/09 20:34] – [Version 0.9.17] deva | roadmap:features_roadmap [2019/07/24 21:36] – [Version 0.9.18] deva |
---|
======Drumgizmo Roadmap====== | ======Drumgizmo Roadmap====== |
Version ending with an even number are stability/bugfix releases (except 0). Versions ending with an odd number are feature releases that are potentially unstable.\\ | Version ending with an even number are stability/bugfix releases (except 0). Versions ending with an odd number are feature releases that are potentially unstable.\\ |
| |
=====Version 0.9.17===== | |
//Feature release//\\ | |
Targeted for release medio April 2019. | |
* {{:check.png}} <del>Add directed choke feature. Design: [[directed choke]]</del> //(deva)// | |
| |
* {{:incheck.png}} Add new improved sample selection algorithm - [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2018_08_20|irc]] //(chaot4)// | |
* {{:uncheck.png}} Add tooltip descriptions for the humanizer knobs. //(chaot4)// | |
* {{:incheck.png}} Write documentation on the new [[documentation:file_formats|XML format]]. //(deva)// | |
| |
* Metadata: | |
* {{:check.png}} <del>Review XML structure [[http://www.drumgizmo.org/wiki/doku.php?id=documentation:file_formats#and_later_currently_unreleased|XML format wiki page]]</del> //(deva/muldjord)// | |
* {{:check.png}} <del>Create new drumkit parser.</del> //(suhr/deva)// | |
* {{:check.png}} <del>Create new instrument parser.</del> //(suhr/deva)// | |
* {{:check.png}} <del>Get rid of eXpat dependency. Use PugiXML instead.</del> //(suhr/deva)// | |
* {{:check.png}} <del>Make unit tests for the drumkit/instrument parsers.</del> //(suhr/deva)// | |
| |
* Plugins: | |
* {{:check.png}} <del>Make clicky-kit functionality.</del> //(chaot4)// | |
* {{:uncheck.png}} Stretch drumkit image. //(chaot4)// | |
* {{:check.png}} <del>Add [[http://lists.lv2plug.in/pipermail/devel-lv2plug.in/2016-November/001696.html|midnam LV2 support]] to plugin based on the names from the instrument files.</del> //(rgareus/deva)// | |
* {{:check.png}} <del>Fix out of bounds drawing of frame</del> //(chaot4)// | |
* {{:check.png}} <del>Add 'set as default' path button in file browser.</del> //(deva)// | |
* {{:check.png}} <del>Add midi [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2019_04_01|aftertouch choke events]].</del> //(deva)// | |
* {{:check.png}} <del>Add tool-tips to frames.</del> //(deva)// | |
| |
* CLI: | |
* {{:check.png}} <del>Add support midi aftertouch chokes for all midi input engines (midifile, jackmidi and ossmidi).</del> //(deva)// | |
| |
* Other: | |
* {{:check.png}} <del>Add version to config xml.</del> //(deva)// | |
* {{:check.png}} <del>Add md5 hashes to drumkit downloads.</del> //(deva)// | |
* {{:check.png}} <del>Generate lv2 manifest/ttl from the code contents of the plugingizmo implmentation.</del> //(deva)// | |
* {{:uncheck.png}} Make channel-count controllable through configure. //(unsassigned)// | |
| |
* BUGS: | |
* {{:check.png}} <del>Fix potential division by zero in rampdown.</del> //(deva)// | |
* {{:check.png}} <del>Fix broken disk stream size limit in plugin config.</del> //(deva)// | |
* {{:check.png}} <del>Fix config file parsing with empty values.</del> //(deva)// | |
* {{:check.png}} <del>Fix creation of config dir if it doesn't exist when config file is about to be written</del> //(deva)// | |
| |
=====Version 0.9.18===== | =====Version 0.9.18===== |
Not yet a target release date. | Not yet a target release date. |
* BUGS: | * BUGS: |
* {{:uncheck.png}} Fix assert(events.empty()) in jackmidi.cc line 97. //(meka)// | * {{:uncheck.png}} Fix assert(events.empty()) in jackmidi.cc line 97. //(unassigned)// |
* {{:uncheck.png}} Disable timing humanizer in the UI if not supported by the host (LV2). //(unassigned)// | |
* {{:uncheck.png}} Fix GUI not showing in Reaper under Windows on first opening it. //(chaot4)// | * {{:uncheck.png}} Fix GUI not showing in Reaper under Windows on first opening it. //(chaot4)// |
* {{:uncheck.png}} Fix crash when Browse window is open and plugin window is closed (see IRC log 6.8.18). //(chaot4)// | * {{:uncheck.png}} Fix crash on Windows when file-browser is open and plugin window is closed (see [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2018_08_06|IRC log]]). //(chaot4)// |
| * {{:uncheck.png}} Fix crashes and weird rendering issues with [[dev:suil-center|>=suil-0.8.3]]. //(deva)// |
| * {{:uncheck.png}} Fix crash when running LV2 from jalv.select and resizing. **not reproducible** (see [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2017_05_14|IRC at 21:51:40]]) //(unassigned)// |
| * {{:uncheck.png}} Flashing loadbar: https://linuxmusicians.com/viewtopic.php?f=56&t=19219 //(deva)// |
| * {{:uncheck.png}} Fix [[https://linuxmusicians.com/viewtopic.php?f=57&t=19991|potential mutex race]]. **not reproducible**//(chaot4)// |
| * {{:incheck.png}} Fix loading of drumkits not reporting errors as text (including dgvalidator). (see [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2019_07_19|IRC at 23:26:29]]) //(deva)// |
| |
| * Sample selection algorithm improvements: |
| * {{:check.png}} <del>Check new sample selection algorithm on crashextra in crocellkit. Very few samples result in large spread in chosen samples with the same input velocity. See [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2019_07_12|irc]].</del> //(chaot4)// |
| * {{:check.png}} <del>Scale values for sample selection to [0,1] for input via CLI.</del> //(chaot4)// |
| |
| * OSX: |
| * {{:check.png}} <del>Set LV2 ui type according to implementation (ie ui:CocoaUI on OSX)</del> //(deva)// |
| * {{:uncheck.png}} Fix LV2/OSX ui corruption on resize in Ardour. |
| * {{:uncheck.png}} Fix VST/OSX ui mouse offset issue in Ardour. |
| * {{:uncheck.png}} Make OSX bundle with LV2 (See [[https://github.com/DISTRHO/DPF|DPF]] / ask falktx) |
| * {{:uncheck.png}} Make OSX bundle with VST (See [[https://github.com/DISTRHO/DPF|DPF]] / ask falktx) |
| |
| * other: |
| * {{:uncheck.png}} Add Linux VST build instructions. //(chaot4)// |
| * {{:uncheck.png}} Add all velocity humanizer CLI options, not just stddev. //(unassigned)// |
| * {{:check.png}} <del>Disable stddev when velocity humanizer is turned off.</del> //(chaot4)// |
| |
| * Low priority: |
| * {{:uncheck.png}} Disable timing humanizer in the UI if not supported by the host (LV2). //(unassigned)// |
| * {{:uncheck.png}} Make file-browser always on top. //(unassigned)// |
* {{:uncheck.png}} Check for real time hazards in the inner loop using [[https://github.com/fundamental/stoat|stoat]]. //(unassigned)// | * {{:uncheck.png}} Check for real time hazards in the inner loop using [[https://github.com/fundamental/stoat|stoat]]. //(unassigned)// |
* {{:uncheck.png}} //Placeholder//: Fix found real time hazards. | * {{:uncheck.png}} //Placeholder//: Fix found real time hazards. |
* {{:uncheck.png}} Fix crashes and weird rendering issues with [[dev:suil-center|>=suil-0.8.3]]. //(unassigned)// | * {{:uncheck.png}} Add escaping of special characters in values (and keys?) in ConfigFile parser. //(unassigned)// |
* {{:uncheck.png}} Fix trebmuh's bug (resize bug). (see IRC log of 0.9.14 release date around 22:00) //(unassigned)// | |
* {{:uncheck.png}} Flashing loadbar: https://linuxmusicians.com/viewtopic.php?f=56&t=19219 | |
* {{:uncheck.png}} Add escaping of special characters in values (and keys?) in ConfigFile parser. | |
* {{:uncheck.png}} Fix [[https://linuxmusicians.com/viewtopic.php?f=57&t=19991|potential mutex race]]. | |
| |
=====Version 0.9.19===== | |
| |
| =====Version 0.9.19 (1.0.0?)===== |
//Feature release//\\ | //Feature release//\\ |
Not yet a target release date. | Not yet a target release date. |
| * UI overhaul. //(pixelwiz)// |
| * Translation support (gettext?). //(unassigned)// |
| |
* OSX: | * OSX: |
* {{:incheck.png}} Cocoa UI backend. //(deva)// | |
* {{:check.png}} <del>Make rendering of pixelbuffer work.</del> //(deva)// | |
* {{:check.png}} <del>Make mouse move and click events work.</del> //(deva)// | |
* {{:check.png}} <del>Make window resizing work.</del> //(deva)// | |
* {{:check.png}} <del>Implement setFixedSize.</del> //(deva)// | |
* {{:check.png}} <del>Support keyboard input events.</del> //(deva)// | |
* {{:check.png}} <del>Detect double click.</del> //(deva)// | |
* {{:check.png}} <del>Support window embedding.</del> //(deva)// | |
* {{:incheck.png}} Fix rendering of pixelbuffer on Mojave OSX. //(deva)// | |
* {{:uncheck.png}} Fix rendering of emdedded window on Mojave OSX. //(deva)// | |
* {{:uncheck.png}} Make partial rendering optimization work. //(deva)// | |
* {{:uncheck.png}} Create [[https://github.com/andreyvit/create-dmg|.dmgs]] for OSX deployment. //(deva)// | * {{:uncheck.png}} Create [[https://github.com/andreyvit/create-dmg|.dmgs]] for OSX deployment. //(deva)// |
| |
* {{:uncheck.png}} Add selection by mouse and keyboard (shift+arrows) in lineedit. //(unassigned)// | * {{:uncheck.png}} Add selection by mouse and keyboard (shift+arrows) in lineedit. //(unassigned)// |
* {{:uncheck.png}} Add support for clipboard. //(unassigned)// | * {{:uncheck.png}} Add support for clipboard. //(unassigned)// |
| * {{:incheck.png}} Stretch drumkit image. //(deva/chaot4)// |
| |
* CLI: | * CLI: |
* {{:uncheck.png}} If you have named jack output channels in your jack drumgizmo client using jack metadata to suggest a port sorting order for e.g. QJackCtl is now possible (ask nils) | * {{:uncheck.png}} If you have named jack output channels in your jack drumgizmo client using jack metadata to suggest a port sorting order for e.g. QJackCtl is now possible (ask nils) |
* {{:uncheck.png}} Add "two output channels mode" which should be super convenient for e-drum kits //(chaot4)// | * {{:uncheck.png}} Add "two output channels mode" which should be super convenient for e-drum kits //(chaot4)// |
| * {{:uncheck.png}} Dynamically set volume modifier based on velocity: [[https://linuxmusicians.com/viewtopic.php?f=57&t=20248]] |
=====Backlog===== | =====Backlog===== |
| |
* {{:uncheck.png}} Add bypass button in the GUI reflected in the DAW {{http://lv2plug.in/ns/ext/parameters/#bypass|lv2}}. It should disable the engine entirely not just mute the outputs. //(unassigned)// | * {{:uncheck.png}} Add bypass button in the GUI reflected in the DAW {{http://lv2plug.in/ns/ext/parameters/#bypass|lv2}}. It should disable the engine entirely not just mute the outputs. //(unassigned)// |
* {{:uncheck.png}} Split up GUI engine code and plugin GUI implementation. //(unassigned)// | * {{:uncheck.png}} Split up GUI engine code and plugin GUI implementation. //(unassigned)// |
* {{:uncheck.png}} Make support for [[https://web.archive.org/web/20140402144550/http://www.cakewalk.com/DevXchange/article.aspx?aid=108|SFZ (archive.org)]] (original, broken [[http://www.cakewalk.com/DevXchange/article.aspx?aid=108|link]]) format, either directly or as a converter (look at calfbox). //(suhr)// | * {{:uncheck.png}} Make support for [[https://web.archive.org/web/20140402144550/http://www.cakewalk.com/DevXchange/article.aspx?aid=108|SFZ (archive.org)]] (original, broken [[http://www.cakewalk.com/DevXchange/article.aspx?aid=108|link]]) format, either directly or as a converter (look at calfbox). [[https://github.com/dahnielson/libsfz|Link to open source lib]]. //(suhr)// |
* {{:uncheck.png}} Display if OSS is enabled by default based on host OS. //(meka)// | * {{:uncheck.png}} Display if OSS is enabled by default based on host OS. //(meka)// |
| |
======Completed Features/Roadmap====== | ======Completed Features/Roadmap====== |
| =====Version 0.9.17===== |
| //Feature release//\\ |
| Released July 15th 2019. |
| * Cocoa UI support for OSX: |
| * {{:check.png}} <del>Make rendering of pixelbuffer work.</del> //(deva)// |
| * {{:check.png}} <del>Make mouse move and click events work.</del> //(deva)// |
| * {{:check.png}} <del>Make window resizing work.</del> //(deva)// |
| * {{:check.png}} <del>Implement setFixedSize.</del> //(deva)// |
| * {{:check.png}} <del>Support keyboard input events.</del> //(deva)// |
| * {{:check.png}} <del>Detect double click.</del> //(deva)// |
| * {{:check.png}} <del>Support window embedding.</del> //(deva)// |
| * {{:check.png}} <del>Fix rendering of pixelbuffer on Mojave OSX.</del> //(deva)// |
| * {{:check.png}} <del>Fix rendering of emdedded window on Mojave OSX.</del> //(deva)// |
| |
| * {{:check.png}} <del>Add directed choke feature. Design: [[directed choke]]</del> //(deva)// |
| |
| * {{:check.png}} <del>Add new improved sample selection algorithm - [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2018_08_20|irc]]</del> //(chaot4)// |
| * {{:check.png}} <del>Add tooltip descriptions for the humanizer knobs.</del> //(chaot4)// |
| * {{:check.png}} <del>Add controls to cli.</del> //(chaot4/deva)// |
| * {{:check.png}} <del>Write documentation on the new [[documentation:file_formats|XML format]].</del> //(deva)// |
| |
| * Metadata: |
| * {{:check.png}} <del>Review XML structure [[http://www.drumgizmo.org/wiki/doku.php?id=documentation:file_formats#and_later_currently_unreleased|XML format wiki page]]</del> //(deva/muldjord)// |
| * {{:check.png}} <del>Create new drumkit parser.</del> //(suhr/deva)// |
| * {{:check.png}} <del>Create new instrument parser.</del> //(suhr/deva)// |
| * {{:check.png}} <del>Get rid of eXpat dependency. Use PugiXML instead.</del> //(suhr/deva)// |
| * {{:check.png}} <del>Make unit tests for the drumkit/instrument parsers.</del> //(suhr/deva)// |
| |
| * Plugins: |
| * {{:check.png}} <del>Make clicky-kit functionality.</del> //(chaot4)// |
| * {{:check.png}} <del>Add [[http://lists.lv2plug.in/pipermail/devel-lv2plug.in/2016-November/001696.html|midnam LV2 support]] to plugin based on the names from the instrument files.</del> //(rgareus/deva)// |
| * {{:check.png}} <del>Fix out of bounds drawing of frame</del> //(chaot4)// |
| * {{:check.png}} <del>Add 'set as default' path button in file browser.</del> //(deva)// |
| * {{:check.png}} <del>Add midi [[https://www.drumgizmo.org/irc-logs/drumgizmo.log.2019_04_01|aftertouch choke events]].</del> //(deva)// |
| * {{:check.png}} <del>Add tool-tips to frames.</del> //(deva)// |
| |
| * CLI: |
| * {{:check.png}} <del>Add support midi aftertouch chokes for all midi input engines (midifile, jackmidi and ossmidi).</del> //(deva)// |
| * {{:check.png}} <del>Add dgvalidator commandline tool for validating drumkits.</del> //(deva)// |
| |
| |
| * Other: |
| * {{:check.png}} <del>Add version to config xml.</del> //(deva)// |
| * {{:check.png}} <del>Add md5 hashes to drumkit downloads.</del> //(deva)// |
| * {{:check.png}} <del>Generate lv2 manifest/ttl from the code contents of the plugingizmo implmentation.</del> //(deva)// |
| * {{:check.png}} <del>Make channel-count controllable through configure.</del> //(deva)// |
| |
| * BUGS: |
| * {{:check.png}} <del>Fix potential division by zero in rampdown.</del> //(deva)// |
| * {{:check.png}} <del>Fix broken disk stream size limit in plugin config.</del> //(deva)// |
| * {{:check.png}} <del>Fix config file parsing with empty values.</del> //(deva)// |
| * {{:check.png}} <del>Fix creation of config dir if it doesn't exist when config file is about to be written</del> //(deva)// |
| |
=====Version 0.9.16===== | =====Version 0.9.16===== |
//Bugfix release//\\ | //Bugfix release//\\ |