Feature Requests

Describe a feature you’d like to see in Mela. Provide details of your use case.
Make the Module On Parameter More Performance-Oriented
I received interesting feedback from a Mela user who created a complex and very interesting MIDI preset, and it got me thinking about some of the required changes that can address some shortcomings that have also been bothering me. At the moment, the On parameter is very utilitarian, but it can be optimised to be more performance-oriented. Below are some proposed changes. Add a visual indicator about an On parameter's current state when modulated Currently, an On parameter might look like it’s in an off state, but a modulation might have the state flipped. There’s no way to know this, and the UI will look disabled in that scenario. Solution : add a visual indicator showing the modulated state and don’t dim/disable the module UI. Turning off a module should no longer completely bypass its engine At the moment, when a lane or a module is turned off, the UI is dimmed, the parameters can no longer be changed via UI, and modulations no longer update. Solution : No longer bypass the engine (specific details below) and don’t dim/disable the module UI. Small downside is the module will continue to use some CPU because even when bypassed, it still updates UI and runs some DSP. But that's ok because most likely the user has the module around, so they can unbypass it as needed. MIDI Processors should no longer auto-release notes Currently, if an Arpeggiator or Euclid module receives a C3 note-on, and then the user bypasses the module before receiving the corresponding note-off message, the module will automatically send out a C3 note-off message to prevent stuck notes. Now, the issue with this is, the user might still be holding down the C3 key. Solution: On bypass, Arpeggiator and Euclid simply finish playing their last note(s) and don’t start another note, and they will send out note-on messages for the currently held notes. i.e. in the example above, on bypass C3, note-on will be sent out. That way, when the user finally releases C3, that’s when C3 will stop playing. MIDI Processors update output on parameter change without changing input Currently, some MIDI Processor modules don’t change output if parameters are updated and the input hasn’t changed. For example, if the Chord module settings are adjusted, the output won’t change for the currently held notes. The change will happen only after the input is changed. Solution Part 1: The Chord module should update its output as soon as the note On parameters change. This will allow chord building in real time. Solution Part 2 (unlikely a good idea): The Chord module should update its output as soon as the Pitch value changes. I’m less sure about this. (Vel parameter changes causing the output to the Chord module output to change don’t seem useful at all. Retriggering notes in this case seems like a bad idea.) Continuing on the Solution Part 2, if we go ahead with that, maybe it means things like Note Range and Transposer should also update their outputs as the range or transposition amount changes. Again, I'm not certain this is a good idea. Audio/Pitch Processors crossfade their outputs when the On parameter is toggled Currently, when turning an Audio Processor on or off, there’s an audible click, e.g. VA Filter, this is because audio switches instantly. It’s not a big deal if it’s just trying things out and isn’t automating or modulating the On parameter as part of a song or performance. But if you do want to automate and modulate or even tap on the On toggle during performance would be great if it didn’t click. Also, there’s another issue related to the DSP being turned off for oscillator and LFO modules. The phasor no longer updates. This means if you turn the oscillator off, next time you turn it on, its relative phase would have changed against other modules. The resync will happen on the next note-on event. Solution: Turn the On parameter from a simple on/off 2-state list into a continuous one with [0%, 100%] range and make it crossfade like a wet/dry mix. This means the parameter can be modulated and automated, and will change its value between on and off continuously. It will also be clickless when tapping on it, as there will be a quick 20ms crossfade. For simplicity, it will continue to be a Mono target, meaning it won’t support Poly modulation.
8
·
complete
New Modes for the Group Module
Instead of having separate modules, the Split and Merge features have been integrated into the Group module. I think this approach makes more sense. The update Group module is available as of build 439 . Feedback on this approach is welcome. Details below. Group Module The Group module is now even more versatile. The module lets you group a sequence of modules using its sublane. The signal flow between the containing lane and the sublane depends on one of four modes: Insert, Isolate, Split, or Merge. The module actions menu icon displays the current mode instead of the ellipsis used by other modules. Tapping it opens a menu to change the mode and access standard module actions. Insert Mode The Group module passes its input signals to the sublane and forwards the sublane's output to its own output. Ideal for organising modules. Isolate Mode The Group module doesn't provide any input to the sublane, and ignores its output. The module input and output remain identical. Ideal for creating an independent sublane that appears inline with the containing lane. For example, it can be used to generate an Envelope Follower modulator from a side-chain input. Split Mode The Group module forwards a copy of the input signals to its sublane, and ignores its output. The module input and output remain identical. Ideal for pre-processing signals before sending them to Audio Out, MIDI Out, or Envelope Follower modules. Merge Mode The Group module doesn't provide any input to the sublane, but merges the sublane's output signals with the module's input. The module's MIDI output is a merge of its input and the sublane's output MIDI signals. The Audio output is the sum of the module's input and the sublane's output signals. The output signal is Poly only if both the module's input and the sublane's output are Poly. Ideal for pre-processing signals coming from Audio In, Feedback, or MIDI In modules before merging. Abandoned Split & Merge Modules Split Module The module forwards a copy of the input signals to its sublane. Split's input and output signals are identical. The module is ideal for pre-processing signals before sending them to Audio Out, MIDI Out, or Envelope Follower modules. Split is a Mela Lab module and part of Collection 4. Merge Module The module merges its sublane output signals into the containing lane. The MIDI output is a merge of its input and the sublane's output MIDI signals. The Audio output is the sum of its input and the sublane's output Audio signals. The output signal is Poly only if both the module's input and the sublane's output are Poly. The module is ideal for pre-processing signals coming from Audio In, Feedback, or MIDI In modules before merging. Merge is a Mela Lab module and part of Collection 4.
5
·
complete
Stack Module
Introducing Stack, the first module that processes its submodules in parallel rather than in series, like sublanes. The Stack module feeds a copy of its input signals to all its submodules. The module's output signals depend on the Mode parameter, which has three states: Sum Audio, Merge MIDI, and Passthru. Sum Audio: Stack's output Audio, or the Audio components of the Poly signal, is the sum of the submodule output Audio and/or the Audio components of Poly signals. Sum Audio: If Stack's input and all submodule outputs are Poly signals, the module's output will also be Poly; otherwise, it will be Audio. Sum Audio: The MIDI signal and non-Audio Poly signal components (unless collapsed) remain the same as Stack's input. Merge MIDI: Stack's output MIDI signal is a merge of the submodule output MIDI signals. Merge MIDI: The Audio and Pitch signals, or the Poly signal, remain the same as Stack's input. Passthru: The submodule outputs are ignored, and Stack's output signals are identical to its inputs. You may want to process multiple sublanes in parallel for more complex setups. To do this, simply stack Group modules. With the Stack module, you can create simple MIDI effects, such as converting notes into chords by stacking Transposer modules, or build complex sequencers by combining Group, Euclid, and others. You can also easily create layered synths or effects. Stack lets you view submodules individually or as an expanded horizontal stack. When viewed as a horizontal stack, unlike sublanes, vertical lines replace signal indicator arrows, indicating that the submodules are processed in parallel. Stack is a Mela Lab module and part of Collection 4. Mela 6.4 Build 416: Moved Stack from Mela Lab to the Signal Router category. Mela 6.4 Build 414: You can now think of a Mela preset as a root Stack module with Group submodules. Because that's exactly what it is. Mela preset is now simply stacked, chained, and nested modules. Mela 6.4 Build 413: The MIDI Stack module has been generalised and is now simply called Stack. Instead of having separate MIDI Stack and Audio Stack modules, there is now a single Stack module with different modes. Mela 6.4 Build 411: OK the wait is over, the first stack module is here and ready for testing: Introducing the first stack module: unlike sublanes, where modules are processed in series, a stack module runs its submodules in parallel. The MIDI Stack module feeds a copy of its input signals to all its submodules and merges their output MIDI signals at the output. You may want to process multiple sublanes in parallel for more complex setups. To do this, simply stack Group modules. With the MIDI Stack module, you can create simple MIDI effects, such as converting notes into chords by stacking Transposer modules, or build complex sequencers by combining Group, Euclid, and others. MIDI Stack lets you view submodules individually or as an expanded horizontal stack. When viewing them in a horizontal stack, unlike sublanes, you will notice vertical lines instead of signal indicator arrows, indicating that the submodules are processed in parallel. MIDI Stack also feeds copies of the Poly, Audio, and Pitch signals to the submodules for processing, but their non-MIDI signal outputs are ignored. This means the Poly, Audio, and Pitch signals pass through unaltered. MIDI Stack is a Mela Lab module and part of Collection 4.
2
·
complete
Load More