Ascend… Transcends

I’ve been working on Ascend for a few years now, starting with the enabling infrastructures, the most fundamental of which are pitch detection and onset detection. In my view, pitch and note guided audio processing will be a real game changer!

Ascend VPU is the first Ascend processor, but there are more Ascend processors in the work pipeline. Here’s a list of what to expect. There should be a lot more in this list, but I’d like to start with something that I want to prioritize on, especially those that can’t already be done using standard audio plugins. This post might inspire you to suggest other ideas and user interfaces. Tell me what you think.

Ascend PRE (preprocessor)

Ascend VPU’s preprocessor will be separated as an independent processor: Ascend PRE. The preprocessor negates the actual pickup’s natural comb-filter effect, with a result that is exceptionally rich in harmonics —very much like an acoustic guitar, with a sufficiently flat frequency response curve all throughout the audio frequency range.

Ascend PRE will also include the noise reduction processor, currently also bundled with Ascend VPU. The noise reduction feature is extremely effective. Have a read: Ascend VPU: Noise Reduction. This noise reduction filter is dynamic. It that takes effect on lower level signals for minimizing broadband noise (hiss). A moving average filter, best suitable for reducing random white noise, is inserted at the input. When the signal goes below +12dB the expander threshold, the moving average filter output is cross-faded with the raw input. This noise reduction scheme works well for guitar signals due to the natural decay of high frequencies as the string decays. The filter is very transparent. You will not ever notice that it is there.

Ascend PRE will also have the downward expander. This filter works like a soft gate. Dial in the noise floor with the threshold control and a suitable expansion ratio, and you can eliminate most of the annoying noise (including finger noise and even cross-talk, but more on that later).

Ascend GTE (gate)

This multichannel processor will listen to each string and apply rules on how the audio from each channel will pass through or gets inhibited. Ascend GTE enables: 

Crosstalk elimination: Inhibiting signals a certain threshold below the maximum of all signals. Also, inhibiting mechanical crosstalk (via resonance or mechanical coupling through the bridge and nut) detected as slow attacks (resonance swells).

True monophonic mode: Inhibit all strings except the latest note detected by the onset detector. The latest note will supersede the previous. The previous note will be quickly faded out if it is coming from a different string.

N-Phonic: This is a generalization of the above. Inhibit all strings except the latest N notes detected by the onset detector. Similar to above, but the latest note will supersede the note before the Nth note. A queue, with fixed size of N, holds all currently playing notes. When a new note arrives, the note at the front of the queue will be quickly faded out if it is coming from a different string, and the new note will be added to the back of the queue.

Ascend ENV (envelope)

We should have full control over the volume envelopes from note onset to note offset. The goal is to use a fast and accurate onset detection algorithm for the envelope control from fast staccatos to full infinite sustain.

Volume envelope: Each string will have its own volume envelope with full control over attack, decay, sustain and release, and the taper curve for each envelope segment. The UI will allow for one envelope per string, or global for all strings. For example, plucked bass strings have slower decays compared to treble strings. 

Taper curves go beyond the traditional exponential or linear ADSR segments found in most envelope generators to give more precise control over the character of the note. We should be able to choose the taper curve for each envelope segment.

Scale: If you find it tedious to specify individual volume envelopes for each string, you can have a global setting for all strings, time-scaled by the base frequency. This can give you similar results where lower frequencies decay longer. Each string can have its own scale control.

Modulation: We can detect the actual vibrato applied by the player. We can use this information to modulate volume (tremolo effect) in various amounts.

Ascend TGR (timbre gradients)

Pitch and note guided processing will be a real game changer!

Timbre synthesis: Knowing the fundamental frequency, overtones can be synthesized, giving you control over the harmonic structure of the waveform: its timbre.  

Timbre gradients: Consider a set of distinct timbre settings. We assign such timbre settings a time point, and call these timbre stops, which are basically timbre/time pairs. We can smoothly transition (morph) from one timbre stop to another, over time. The UI will allow a set of timbre stops, per string, or global for all strings. Unlike traditional VCF-like filter controls, this UI is more related to gradient tools found in image editors like photoshop. That’s the reason why I call it timbre gradients. I believe this is a more powerful interface.

Modulation: We can detect the actual vibrato applied by the player. We can use this information to modulate timbre in various amounts.

Velocity:  How hard the string is plucked, picked, hammered, etc. (the initial velocity), may influence the attack timbre gradient: the first two timbre stops. The actual attack velocity, together with a velocity sensitivity control, will determine how much the first timbre will morph into the second. 

Ascend SEQ (sequencer)

A multichannel,16-step, grid-style, audio step sequencer. Each string will be a row in the grid. Each cell may apply one or more of these controls:

  1. Gate: Gate the audio, with control over attack and release.
  2. Volume: Apply volume to provide a more dynamic feel by emphasizing some notes.
  3. Delay: The audio at the start (step 1) of the cycle will be (re)played in a later step.
  4. Pitch shift: Apply note shifts.


  • Delay each string’s signal by successive 8ths, strum a chord, the delayed attack of each string will result in an arpeggio.
  • Pitch shift the note after delay to extend the arpeggio range.

Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Newest Most Voted
Inline Feedbacks
View all comments
Bill Mauchly
Bill Mauchly
2 years ago

This sounds terrific. It will be fantastic to have tools with this level of detailed control. Roland imposes so many preconceptions in their idea of what a guitar processor does. Access to onset, envelope, and pitch detectors opens up creative possibilities.

1 year ago

Some of the links here go to a 404–the fist one on this page (, and the download page for Ascend 1.1.2 ( Just thought I’d let you know! Keep up the great work!


Olav Kvern
Olav Kvern
1 year ago
Reply to  Joel de Guzman

Ah! That’s even more exciting.:-)

Would love your thoughts, please comment.x