AutoBass User Manual

Table of Contents

1. Overview

AutoBass is an iOS algorithmic MIDI bass and melody line generator available as a standalone app and an AUv3 MIDI plugin. It generates looping MIDI sequences from a set of musical and rhythmic parameters, and lets you edit the result directly on a piano roll grid.

AutoBass outputs MIDI only. In standalone mode, an optional internal synthesizer lets you hear the result immediately. As an AUv3 plugin, it sends MIDI to any instrument track in your host, giving you full control over the sound.

What AutoBass does well

2. Core Concept

AutoBass generates sequences using a bar-loop algorithm. A template bar of notes and rhythms is created first, then repeated and mutated across the full sequence length.

The model in plain terms

This matters because not all parameters work the same way. Some parameters rebuild the entire sequence when changed. Others adjust timing, velocity, or note state in real time without touching pitches. Understanding which is which helps you work faster.

3. Interface Overview

Top area

Piano roll

The piano roll occupies the center of the screen. The horizontal axis is time measured in beats, divided into measures. The vertical axis shows pitch rows labeled with note names. Generated notes appear as horizontal rectangles spanning their duration.

The Edit button (pencil icon, right side of the piano roll) toggles the edit toolbar, which exposes accent, slide, and move mode toggles plus the transpose and nudge steppers.

Knob row

Below the piano roll, eleven knobs control the main generative and expressive parameters:

Complexity — Mutation — Density — Spread — Offset — Gate — Variety (gate) — Velocity — Variety (velocity) — Swing — Slide

Bottom toolbar

The bottom toolbar contains sequence-level controls:

Control Description
Patterns (CC#N) Numbered pattern slots. Tap to select. Tap + to add a new pattern. Long-press to copy, paste, or delete. The CC number shown in the label (default: CC#10) reflects the current setting and is adjustable in the Settings menu.
Duration Tap to cycle the sequence length: 1, 2, 4, 8, 16, 32, or 64 bars. Changing duration triggers full regeneration.
Walk Style Tap to cycle melodic contour modes. Changes the ordering of existing pitches without regenerating the sequence.
Generate Circular arrow icon. Manually triggers a full sequence regeneration.
Scale Music note icon. Opens the scale, key, and octave range picker.
Settings Gear icon. Opens app settings: MIDI channel, MIDI note assignments, knob control style, nudge amount, and MIDI file export.

4. Generation Algorithm

AutoBass builds each sequence in six steps.

Step 1: Rate generation

Note durations are selected from a pool of rhythmic values ranging from double whole notes down to thirty-second notes. Each duration has a preferred complexity range. At low complexity, longer notes (whole, dotted half, half) are heavily weighted. At high complexity, shorter notes (sixteenths, thirty-seconds) dominate. The weighting uses a triangular curve so values near the center of a duration's range are most likely.

Step 2: Pitch generation with chord-tone gravity

Pitches are drawn randomly within the octave range defined by Spread and Offset. A chord-tone gravity value is derived from Complexity: at low complexity the gravity is high (90% of notes snap to chord tones); at high complexity the gravity is low (10%), producing more passing tones and chromatic movement.

Step 3: Walk ordering

The generated pitches are reordered by the active Walk Style. This shapes the melodic contour without changing which pitches exist in the bar. See Section 6 for each mode.

Step 4: Bar-loop with mutation

A template bar is generated from steps 1–3. The sequence then repeats this template across all bars. Each bar rolls a random number against the Mutation value: if the roll is below Mutation, that bar gets a fresh generation instead of repeating the template. At 0% mutation every bar is identical; at 100% every bar is freshly generated.

Step 5: Harmonic anchoring

After all bars are filled, beat positions are examined:

Step 6: Root anchor

The very first note of the entire sequence is forced to the root note to ensure a strong tonal opening regardless of other settings.

5. Parameters

Parameters fall into three categories: those that trigger full sequence regeneration, those that adjust the sequence in real time without changing pitches, and those that only reorder existing pitches.

Parameters that trigger full regeneration

Changing any of these destroys the current sequence and builds a new one.

Parameter Range Default Effect
Scale Major, Minor, and many others Major Sets the scale used for pitch generation and harmonic anchoring
Key C through B C Sets the root note; all pitches and anchor snaps follow this key
Octave Min 0–8 0 Lower boundary of the octave range
Octave Max 0–8 2 Upper boundary of the octave range
Duration 1–64 bars 4 bars Total sequence length; shorter loops repeat more tightly
Complexity 0–100% 50% Low values favor long notes; high values favor short, busy rhythms
Spread 0–100% 50% Controls how wide the pitch range is within the octave boundaries; 100% uses the full span
Offset 0–100% 50% Shifts the pitch spawn center; values above 50% bias toward higher octaves, below 50% toward lower
Mutation 0–100% 30% At 0% every bar is identical to the template; at 100% every bar is freshly generated
Generate button — — Manual trigger; always produces a completely new sequence

Parameters that adjust in real time

These modify the sequence without changing any pitch values. Changing them is non-destructive and instant.

Parameter Range Default Effect
Density 0–100% 90% Converts low-priority notes to rests based on metric strength; 100% keeps all notes, lower values create more space
Velocity 0–127 90 Global base velocity; applied with metric accent weighting so downbeats are naturally louder
Velocity Variety 0–100% 10% Adds per-note random velocity variation around the base value
Gate 0–100% 100% Scales all note durations proportionally; 100% is full written duration, lower values add staccato space
Gate Variety 0–100% 0% Adds per-note random gate length variation
Swing 0–100% 0% Delays every other eighth note by a triplet-based offset; 0% is straight, higher values push toward a shuffle feel
Slide 0–100% 0% Probabilistically marks note-to-note transitions as slides (portamento); only applies between notes on different pitches

Parameters that reorder only

Parameter Options Default Effect
Walk Style Up, Down, Up-Down, Down-Up, Converge, Diverge, Random Random Reorders the pitches within each generated bar to shape melodic direction; does not regenerate or change durations

Parameter notes

Complexity vs. Density

These two knobs both affect how busy the sequence sounds, but they work differently. Complexity shapes the rhythmic structure at generation time — it determines whether notes are long or short. Density trims the result after generation, converting weak-beat notes to rests. Use Complexity to control the character of the groove and Density to thin it out without losing the rhythmic shape.

Spread and Offset together

Spread sets the width of the pitch pool relative to the octave range. Offset shifts the center of that pool. A wide Spread with a high Offset concentrates notes in the upper part of the range. A narrow Spread with a centered Offset keeps everything close to the middle.

Mutation at zero

At 0% mutation, every bar is exactly the template bar. This is useful for tight, repetitive grooves. Increase mutation to introduce variation across the sequence without losing the overall character.

Slide behavior

The Slide knob marks transitions probabilistically. It weights toward notes that have a close interval to their neighbor and that land on stronger beats. A note is only slidable if its next note has a different pitch. Slide markings are sent as legato MIDI: the previous note-off is delayed until after the next note-on, which creates portamento on monophonic synths.

6. Walk Styles

Walk Style reorders the pitches generated in each bar to shape the melodic contour. It does not regenerate the sequence or change durations.

Style Description
Up Pitches are sorted ascending within each bar. Creates a rising line.
Down Pitches are sorted descending within each bar. Creates a falling line.
Up-Down The first half of each bar ascends, the second half descends. Creates an arch shape.
Down-Up The first half descends, the second half ascends. Creates a valley shape.
Converge Pitches move from the outer edges of the range toward the center, alternating high-low.
Diverge Pitches move from the center outward toward the edges, alternating.
Random Stepwise motion with a probability of occasional leaps. Creates a naturally wandering line.

Changing Walk Style on an existing sequence reorders the pitches immediately. Switching back to a previous style restores the same ordering, as long as the sequence has not been regenerated.

7. Sequencer Grid Editing

The piano roll displays the generated sequence and supports several editing operations. Open the edit toolbar by tapping the Edit (pencil) button on the right side of the piano roll.

What you can edit

Move (pitch change)

Enable Move mode, then drag a note vertically to change its pitch to a different scale degree. The note snaps to valid rows in the current scale. Only the pitch changes — duration and position are not affected.

Accent

Enable Accent mode, then tap any note to toggle its accent state. An accented note plays at full velocity (127). Tapping again returns it to the base velocity. Accented notes are displayed in a distinct color.

Slide

Enable Slide mode, then tap a note to toggle its slide state. A slide marker is shown as a line connecting the note to its neighbor. Slide can only be applied to a note that is followed by another note on a different pitch. If the next note is on the same pitch or there is no next note, the tap has no effect.

Delete

Long-press a note to bring up a delete option. Deleting a note removes it entirely from the sequence.

What you cannot edit

Toggle-first workflow

Select Accent, Slide, or Move mode before interacting with notes. The active toggle determines what a tap or drag does. If no mode is active, the piano roll is in view-only state and taps or drags on notes have no effect.

8. Transpose and Nudge

These controls are available in the edit toolbar (open it with the Edit button).

Transpose

The Transpose stepper shifts the sequence key up or down by one semitone per tap. Moving the key changes which root note and scale pitches are used. All generated pitches follow accordingly.

You can also transpose the sequence in real time by sending a MIDI note to AutoBass from an external app. The incoming MIDI note sets the key, making it possible to sequence key changes from a separate sequencer app such as PolyBud or MelodyBud.

Nudge

The Nudge stepper shifts all notes forward or backward in time by a fixed amount. Notes that pass the end of the sequence wrap around to the beginning. Note durations are preserved. The nudge amount (step size) can be adjusted in the Settings menu.

9. Patterns

AutoBass supports multiple independent patterns. Each pattern has its own complete set of parameters: scale, key, octave range, complexity, density, spread, offset, mutation, gate, velocity, swing, slide, walk style, duration, and the full generated sequence.

Managing patterns

MIDI control

The Patterns label shows the currently assigned CC number (default: CC#10). This is adjustable in the Settings menu — pick any CC number that does not conflict with your setup. The toolbar updates to show whichever CC is active, so you always know at a glance which controller to use.

Send that CC with a value from 0 to 127 mapped across your pattern slots to switch patterns in real time during a performance.

CC9 triggers a fresh sequence generation on the currently active pattern.

You can create as many patterns as you need. MIDI CC and AU parameter automation can switch patterns at any time. See Section 10 to have AutoBass switch patterns for you automatically.

10. Pattern Chaining

Pattern Chaining automatically advances through your pattern bank as you play, instead of waiting for a manual switch or MIDI CC message. It lives in the Settings menu (gear icon), in its own Pattern Chaining section below the Nudge settings.

Turn on Pattern Chaining to reveal a Mode picker with three options:

Mode Behavior
Next Plays through patterns in order, looping back to the first pattern after the last.
Random Jumps to a random pattern other than the one currently playing.
Custom Plays a chain you build yourself, with its own pattern order and per-step repeat counts.

Next and Random share one Repeat Count setting (1 to 100) — how many full loops of the current pattern play before the chain moves on. Custom replaces that setting with an Edit Chain row that opens the chain editor.

Building a Custom Chain

The chain editor lists one step at a time. Each step has:

Tap + in the navigation bar to add a new step. Each new step defaults to the pattern right after the last step's, so building a chain that walks through every pattern once is just a few taps of +.

A custom chain is only as valid as the patterns it points to. Deleting a pattern that a chain step refers to does not rewrite the chain — that step is simply skipped during playback, and the chain editor still shows it. Re-add the missing pattern later and the step starts working again exactly as authored. Adding, deleting, or reordering patterns never edits an existing custom chain for you.

Chaining and Manual Switching

Selecting a pattern by hand — tapping a pattern button, sending the pattern MIDI CC, or automating the Pattern AU parameter — always takes priority over the chain. After a manual switch, the chain resumes from its first step the next time it advances, rather than continuing from wherever it left off.

Stopping playback also resets the chain to its first step, so every new take starts the chain from the top.

Chain switches always happen exactly at a pattern's loop boundary, never mid-bar, so the transition stays musically clean even when patterns have different lengths.

11. AUv3 MIDI Plugin Support

AutoBass is available as an AUv3 MIDI plugin that runs inside any compatible iOS host.

Important: AutoBass produces no audio

The AUv3 plugin outputs MIDI only. It does not produce any sound by itself. You must route its MIDI output to an instrument track or synthesizer in your host application. In standalone mode, AutoBass includes an optional internal synthesizer so you can audition sequences directly.

Setting up in a host

  1. Open your AUv3-compatible host (Logic Pro, GarageBand, AUM, Cubasis, Beatmaker 3, etc.)
  2. Add AutoBass as an AUv3 MIDI effect
  3. Route the AutoBass Out MIDI output to an instrument track
  4. Press Play in the host; AutoBass syncs its beat position and tempo from the host transport

Output

Port Content
AutoBass Out All MIDI note events for the active pattern

AutoBass sends a single MIDI output stream. Multi-pattern routing is done by switching patterns via CC10, not by parallel outputs.

Transport and tempo sync

AutoBass reads beat position and tempo directly from the host. Playback starts and stops with the host transport. Sync is sample-accurate.

Parameter automation

All 20 parameters are exposed to the host as automatable AUv3 parameters. You can draw automation lanes for any knob — including Complexity, Mutation, and Generate — to create evolving sequences that change over time within a project.

Pattern Chaining is one of those 20 parameters (0 or 1, boolean) — automating it toggles chaining on or off. The chain's Mode, Repeat Count, and any custom chain steps are saved with the plugin's full state but are not separately automatable parameters.

MIDI input

AutoBass responds to incoming MIDI in both standalone and AUv3 modes:

MIDI Event Effect
Note On Sets the pattern key to the received note; useful for sequencing key changes from another app
CC# (configurable, default 10) Selects a pattern slot
CC9 Triggers a new sequence generation
Program Change 69 Reserved

DAW presets

When running as an AUv3 plugin, the full app state — including all patterns and their individual parameter settings — is saved and restored as part of the host's preset system. Save a plugin preset in your DAW to capture every pattern at once and recall the entire setup instantly in any project.

Exporting MIDI

You can export the current sequence as a MIDI file from the Settings menu. This lets you drag the generated sequence into a DAW or notation app for further editing.

12. Built-In Sampler

The standalone app includes a built-in sampler that receives AutoBass MIDI output and plays back audio samples, letting you hear generated sequences immediately without any external synths.

How the sampler works

The sampler is an AVAudioUnitSampler loaded with an SF2 soundfont. Every note-on from the generated sequence triggers a pitched sample. Note-off stops the sample.

The sampler runs in the same audio session as the app, so output goes directly to the device speakers or headphones.

Sampler controls

Control Range Description
Enabled On/Off Turn the sampler on or off
Volume 0.0–1.0 Output gain of the sampler
Preset 0–127 SF2 soundfont preset index

Preset numbers

The preset number selects which SF2 instrument patch is loaded. General MIDI patch numbers apply: 0 is typically Acoustic Grand Piano, 32 is Acoustic Bass, 33 is Electric Bass (finger), 34 is Electric Bass (pick), and so on. Refer to the GM patch list for bass-specific patch numbers.

Sampler vs external MIDI

The sampler and external MIDI output are not mutually exclusive. AutoBass MIDI is always sent to any connected external devices whether the sampler is on or off. Turning the sampler off silences the internal audio while external MIDI continues flowing.

Sampler availability

The sampler is only present in the standalone app. It is not available in the AUv3 plugin version, since the plugin runs inside a DAW that handles audio routing.

13. Tips and Starting Points

For a classic bass line

For a busy synth sequence

For a groove with swing

For variation across a long sequence

For sequenced key changes

Density vs. Complexity

Density and Complexity both affect how busy the sequence sounds, but only Complexity triggers regeneration. Use Complexity to decide the rhythmic character (long notes vs. short notes), then use Density to trim the result without losing the groove. If you want fewer notes but the same rhythmic feel, reach for Density first.

For arrangements that play themselves

14. Troubleshooting

No sound in standalone mode

Check the Settings menu and confirm the internal sampler is enabled and the volume is above zero. Make sure your device volume is up and silent mode is off.

No MIDI output in the host

Confirm that the AutoBass Out port is enabled and routed to an instrument track in your host's MIDI routing page. The plugin does not produce audio — if you are looking for audio output, add a synthesizer instrument on the target track.

The AUv3 plugin is silent

This is by design. AutoBass outputs MIDI only. Route AutoBass Out to an instrument or synthesizer track to hear the result.

Slide is not working

Slide only applies between two adjacent notes that have different pitches. If the next note is on the same pitch, or there is no following note, the slide flag has no effect. Check that the notes in question are on different rows in the piano roll.

Nudge step size is too large or small

Open Settings and adjust the nudge amount to a finer or coarser value.

The sequence sounds too random

Lower Complexity to favor longer, simpler note values. Lower Mutation so bars repeat more consistently. Use Up or Down walk style instead of Random for a more directional melodic shape. Lower Spread to keep pitches closer together.

Pattern switching via CC is not responding

Open Settings and check which CC number is assigned to pattern selection (default is CC10). Confirm your controller or sequencer is sending that CC number on the correct MIDI channel. CC9 triggers generation.

Pattern Chaining is not advancing

Confirm Pattern Chaining is switched on in Settings and that you have more than one pattern — Next and Random modes have nothing to advance to with only one pattern. If you are using Custom mode, open Edit Chain and confirm it has at least one step. Also check that you have not just tapped a pattern button, sent a pattern CC, or automated the Pattern parameter — a manual switch resets the chain to its first step rather than continuing where it was.

A custom chain skips a step or plays the wrong pattern

Custom chain steps reference a pattern by its position, not a name. If a step is skipped, check whether the pattern it pointed to was deleted — the step reappears once you re-add a pattern in that slot. If a step plays a pattern you did not expect, remember that adding, deleting, or reordering patterns never edits an existing chain, so a step's pattern number may no longer point at the pattern you meant; open Edit Chain and re-point the step.

Final advice

Start simple: pick a scale and key, generate at medium complexity, and listen. Then adjust Density to find the right amount of space, add Swing if needed, and use Gate to shape articulation. Only then explore Spread, Offset, and Mutation for more character. Regenerate freely — each press of Generate is a new starting point.