Xoradora Workflow Manual

Preface

This guide covers Xoradora 1.0.0-rc.2 on macOS and Windows, with an experimental Linux build. Menu availability depends on the plug-in format or Standalone app. Xoradora is maintained by one person, so please report unclear or outdated instructions should you find them.

For questions or corrections, write to dev@mutagene.net. Messages will be answered promptly by a human, to the extent the developer's available time allows.

Guided view explains individual controls. This manual covers workflows, menu actions, and troubleshooting.

First ten minutes

  1. Load a hit onto a pad and trigger that pad at its Root note.
  2. Open Pad Detail. Use Guided when you are learning a model or looking for a control; use Compact when you already know the model and want the controls and modulation matrix together.
  3. Set Morph to 0% before comparing models. This exposes each model's neutral reconstruction rather than bypassing resynthesis; small model-dependent differences can remain. Use Audition source when you want to hear the original sample itself.
  4. For a neutral comparison, use full trim, Playback Start at 0%, Coarse/Fine at zero, ordinary output settings, and no envelopes or modulation.
  5. Change one thing, retrigger the pad, and listen for the part of the hit that moved. A currently ringing voice may retain values captured when it was triggered.

Compact and Guided views

The switch changes presentation, not sound. Morph remains available in either view. Guided uses consistent warm-grey headings and parameter names throughout its plots, envelopes, controls and modulation matrix, with brighter text for values. Its text and spacing scale together as the editor grows.

Warp's Model Motion group places Track and Slew above Targets, leaving more width for its description.

Xoradora Warp in Compact view with the view switch and Morph highlighted.
Compact keeps the live model, shared controls, and modulation matrix on one surface.
  1. View: switch to Guided whenever a label or interaction is unclear.
  2. Morph: use 0% for neutral and 100% for the stored model design.
Xoradora Warp in Guided view with the view switch highlighted.
Guided describes controls beside their knobs. The timing lanes also let you edit placements and loops; see the RC2 examples below. Open the magnifying glass or press Cmd/Ctrl+F to search names, descriptions, plot labels and units. X clears the query, and Escape clears it or closes an empty search field.
  1. View: return to Compact without changing the sound.

In desktop Compact view, the time or beat axis sits below the waveform or spectrogram, inside the same rounded frame. Drag its labels to pan without changing zoom, just as in Guided. It also works with an envelope selected. Double-click the time-axis labels to fit the view, or right-click for View > Zoom to fit (Command/Ctrl-0); Compact fits the playback range, while Guided fits its full arrangement. Neither view needs a scrollbar or Fit button.

Trigger pads from MIDI

Open Triggering from the header, or press T. Use this page to:

  • choose which MIDI notes reach each pad;
  • set the Root note that plays the pad without chromatic transposition; and
  • choose how Note Off and repeated triggers behave.

Make one pad chromatic

  1. Select the pad in the 4×4 grid.
  2. Drag the blue range strip to move its whole MIDI zone, or drag either blue edge to change Low/High. The grey strips show other pads' zones.
  3. Set the yellow Root by Shift-dragging on the piano. The Root is the note that plays the pad at its stored Coarse/Fine pitch; notes above or below it transpose from there.
  4. Click or drag across the piano to audition the actual mapping. Incoming MIDI notes and held notes illuminate there too.
  5. Leave the other pads on their own notes if only this pad should be chromatic. Deliberately overlap zones when one key should layer several pads.

Pad taps and sequencer steps audition a pad at its current Root, so they remain the untransposed reference after mapping changes. Moving Root changes which external note is untransposed; it does not replace the pad's Coarse/Fine setting.

Choose one-shot, gated, or stacked playback

  • Use T (Trigger) for the usual drum-machine behaviour: MIDI Note Off is ignored, so the hit plays to its natural end unless it is choked or its voice is stolen.
  • Use G (Gate) when releasing the external MIDI key should end the matching voice. Note Off starts the Release fade set in Guided view (5 ms by default). Chokes and Mono retriggers use their own fades.
  • Leave Mono on when a new hit should fade the older voice on the same pad. Turn it off when repeated notes should overlap polyphonically.
  • Use choke groups on the main pad screen for relationships between different pads, such as a closed hat stopping an open hat. Choke, Mono, and Trigger/Gate are independent decisions.

Triggering screen

Select a pad, define where MIDI reaches it, choose its untransposed reference note, then decide how repeated notes and note-offs behave.

Xoradora Triggering screen with the pad selector, MIDI-zone overview, selected range and root strip, and audition keyboard highlighted.
Blue is the selected playable range, yellow is its Root, and muted grey ranges belong to other pads. The example intentionally overlaps pads 01 and 02.
  1. Pad selector: choose the pad whose mapping you are editing; arrows move the selection.
  2. Zone overview: compare all 16 mappings and set each pad's Mono and Trigger/Gate behaviour.
  3. Selected zone: move the blue body or drag its edges; the yellow line shows the Root inside it.
  4. Audition keyboard: hear chromatic transposition and layered overlaps; Shift-drag here to place Root.
What Xoradora does not configure here
  • Enable a MIDI device in the DAW, or in the Standalone audio/MIDI settings.
  • Xoradora receives MIDI on all channels; it does not currently use sustain, pitch bend, or MPE.
  • A sounding voice keeps the MIDI origin and playback mode captured at its trigger. Mapping edits affect the next trigger rather than redirecting a held note.
Zone, Root, Mono, and Trigger/Gate changes are undoable. Use the reset control beside the global tuning chooser to restore the default one-note layout.

Loop a pad

  1. Open a pad's Compact Detail view and turn on Loop above the waveform. Drag Loop Start and Loop End to choose the repeated region. Playback begins at Playback Start, plays the intro once, then repeats between the loop markers.
  2. Use the adjacent Play/Stop button to audition the pad, or press A to start or retrigger the preview. Adjust X-fade if the join clicks: drag vertically, or Shift-drag for finer changes. The crossfade overlaps the end and beginning, so the repeat period is slightly shorter than the distance between the markers.
  3. Shape the bounds and crossfade while listening. Pad-grid, Triggering-keyboard and Detail auditions follow those edits. Already-sounding MIDI, sequencer and Phone Link voices retain their trigger-time loop settings; retrigger them to hear the new design.

Choose a finite repeat count

Right-click a loop handle, its shaded range or the Loop control and choose Repeats. Infinite is the default; a finite value gives 1–128 additional repeats after the first pass. For example, Repeats = 2 plays the loop region three times in total, then continues beyond Loop End into the rest of the playable range. The intro and remaining tail each play once. The final pass does not crossfade back to the loop's beginning.

In Guided view, click the small crossfade icon near a loop's End corner. Its popover contains One-shot / Loop, Repeats, and the crossfade slider. Type a count or use minus/plus; enter Infinite for unlimited repeats. Use One-shot or a layer's Play once policy when you want no repetition.

Loop choice Which repeat count applies?
Shared one count for the pad's common loop
Follow shared inherits Shared's bounds, crossfade and count
Own loop that component's own count
Play once / One-shot ignores the repeat count

Counts are saved with the pad, kit and plug-in state, support Undo and host automation, and are not scaled by Morph. Changing a count restarts an active editor audition; already-sounding performance voices keep their original count. Gate release, choke and Stop can end playback before the count is exhausted.

RC2 Strand Guided view with the Partials crossfade popover open, showing One-shot, Loop, Repeats and crossfade controls.
The Partials Own loop has its own Repeats field. This example shows nine additional repeats. Click the image to view the controls at full size.

Give components their own loops

Shared repeats the combined pad sound. All seven resynthesis models also support independent loops: Warp Excitation/Model, Hull Body/Residual, Halo Carrier/Colour, Prism regions, Grain Source/Pattern, Strata roles and Strand components. Frozen samples use Shared looping only.

  1. Establish a Shared loop, then context-click its Start handle or the Loop control and choose Split shared loop.
  2. Select a component and choose Own loop or Play once. Edit its bounds, crossfade and repeat count. Copy shared bounds copies the current Shared bounds, crossfade and count into that component.
  3. Choose Use shared loop to return to the common loop. Stored independent edits remain available when splitting again.

Different lengths and counts produce changing combinations. Bounce to a file or pad is unavailable while independent looping is active, even with finite counts; use Shared looping for the existing bounce workflow. Strand's Show Loop result is a finite observation of the evolving mix, not a conversion to one permanently repeating sample. Return to Arrangement to edit the component bounds.

Trigger ignores external MIDI Note Off: a finite loop completes its repeats and remaining sound, while an Infinite loop keeps playing until stopped or choked. Gate begins its Release fade on the matching Note Off. Pad taps and sequencer steps have no paired Note Off; finite loops finish normally and Infinite loops need a stop or choke.

Desktop N stops auditions and Phone Link pad sounds while leaving external MIDI and the sequencer playing. Shift+N, or Stop all sounds in the Main, Detail or Sequencer menu, stops every voice and the sequencer. X remains available for Keyboard Play.

Edit timing in Guided

The timing lanes in each mode's Guided diagram are editable. Drag the top placement triangles to move a component, and drag loop edges to change Start/End. The floating icon near Loop End opens its playback, Repeats and crossfade controls. Right-click the region or a handle for policies and numeric values. Tempo snapping applies when enabled; hold Alt/Option for free movement.

The coloured cursors show the actual component playback. While a Detail audition is playing, the waveform and spectrogram follow that preview rather than older sounding voices. A red cursor means the previous playable sound is still being auditioned while an updated render prepares.

Guided timing guides remain visible independently of Compact's placement/loop visibility controls. Those visibility controls hide guides, not the saved sound design or looping itself.

Edit envelopes in Guided

Below the mode illustration, Envelopes lists every curve available to that mode in a single row. Names abbreviate to fit, such as S col for Strike Colour or P tune for Partial Tune. Tooltips and expanded titles keep the full names. Compact/Env uses the same single-row approach, with space for the selected target's clock. At the default desktop size and wider, the selectors share that row with the loop controls, crossfade field, preview and ruler. Underlined names are enabled; click a name to enable or disable that envelope. These are independent toggles, so several curves can remain active together. Active editors stack below the names. Click a plain editor title to collapse or expand it without changing the sound. Its caret points down when expanded and right when collapsed. The compact stack uses shorter plots and tighter heading and row spacing, while retaining its shared timeline ruler and touch targets.

Beside an expanded title, the clock icon opens its Time/Beats/Follow inspector, with Length, Delay and duration shortcuts. Drag the horizontal Length and Delay sliders for quick adjustments, or click their value fields to enter exact seconds or beats. Delay is centred on zero; dragging left advances the envelope, and dragging right delays it. Each drag is one undo step. The same controls are available from Compact's envelope clock. The graph shares Compact's point and segment editing. Titles remain unboxed when focused. Hold Shift while dragging a point to constrain its angle. In Time or Beats, drag the last point past the current Length to extend the envelope automatically. Earlier points keep their timing; Undo restores the whole edit. The clock inspector shows the updated Length. Editing Length there still stretches the whole curve. A longer envelope does not extend Playback End or keep an exhausted sound playing. Drag a point close to a neighbour and release to merge them; a ring previews the target. Moving away cancels the merge, and Undo restores it. Merging the final pair leaves one enabled point holding a constant value; its add handle grows the curve again. Guided's millisecond axis stays free of tempo snapping. Every envelope uses the component timelines' plot width, visible time range, tick spacing and Playback Start origin. Click and drag the millisecond labels beneath any time plot or envelope to pan all timing lanes and envelopes together, preserving their shared zoom. Dragging right moves the content right. Guided has no scrollbar or Fit button; use View > Zoom to fit in the context menu or Command/Ctrl-0. On macOS, swipe horizontally with two fingers over any time plot or envelope to pan, or pinch to zoom around the pointer. Desktop pan/zoom shortcuts also act on the shared view. Fit shows the full arrangement, including placements, loops and enabled envelopes, even when their editors are collapsed. Frequency response plots retain their frequency axes. Changing envelope timing or other sound controls preserves the chosen view. Each pad and mode remembers its Guided view for the editor session, separately from Compact. Search for envelopes or a curve name to reveal matching active editors temporarily. Clearing search restores your collapse choices, which last for the current editor session.

Every enabled envelope shows a bright playback spark, whether it uses Time, Beats or Follow. Follow sparks move with the material being read; Time/Beats sparks can continue across audio-loop wraps. Each playing note has its own spark.

Halo's Colour envelope has a neutral centre line. Drag below it to reduce Colour or above it to deepen the spectral shape, including making bass-heavy sounds darker. It adds up to ±1 around the Colour knob, within its -1…2 range. Morph scales this bias; Follow, Time and Beats all use the same range.

Strata has a Colour envelope for each role: Strike, Body, Air and Tail. Below centre darkens that role; above centre brightens it. Each curve adds up to ±1 around its Colour knob and stays within -1…1. Try a dark Body attack that opens gradually while Air closes down.

Strand's Spread, Harmonic and Partial Tune envelopes offset their knobs by up to ±1, ±1 and ±12 semitones. Use Spread to move between clustered and widely spaced partials, Harmonic to settle an inharmonic strike into a tuned tail, or Partial Tune for pitch bends. The centre preserves the knob, Morph scales the motion and knob limits still apply. Set Harmonic above zero to hear negative bias. In Follow mode these three curves follow the Partials output interval, including placement and stretch; reversing Partials reverses the source, while the envelope still runs forward in output time.

Hull's Spread, High Damp and Pitch Variation envelopes also have a neutral centre and bipolar bias around their knobs. Spread moves the resonances closer together or further apart, High Damp changes the decay of upper modes, and Pitch Variation moves a fixed per-hit detuning pattern. Their maximum offsets are ±1, ±4 and ±1 respectively, bounded to the knob ranges and scaled by Morph. Raise High Damp or Pitch Variation above zero to allow negative bias. Follow uses the Body timeline; Time/Beats run from note-on. The seven Hull selectors fit beside the loop controls at the default desktop size; tooltips retain full names when the labels shorten.

Switching Follow, Time and Beats preserves the curve's shape and position at the current tempo, including when switching repeatedly. Follow then tracks the material and its loops; Time advances in seconds, and Beats follows tempo. A negative Delay means the curve starts before Playback Start, so a new note enters partway through it. Changing clocks does not extend the available sound.

Place and stretch components

Use placement to change when a part arrives, and stretch to change how its material unfolds. Set Morph to 100% when comparing the complete stored placement design; Morph toward 0% returns these placements toward neutral.

Model Parts with separate placement
Warp Excitation and Model
Hull Body and Residual
Halo Carrier and Colour
Grain Source and Pattern

Drag the labelled placement flags or use the corresponding offset controls in Guided. Positive offsets delay material; negative offsets advance it, discarding audio before the playable timeline. Reset to start on a placement handle restores zero offset; it does not align that part to a nonzero Playback Start. Use Fit arrangement when real placements lie outside the current view. These operations do not replace the pad's Coarse/Fine pitch controls.

Warp: keep the strike and move the body

  1. Start with a recognisable hit and compare Excitation offset with Model offset. The excitation is the drive into the resonant body; Model moves the changing filter material.
  2. With tracked coefficients, use Coefficient Stretch to slow or accelerate the model's movement without stretching excitation playback. 1x is normal; negative values reverse coefficient traversal. Track = Fixed uses a single filter, so coefficient stretching does not change it.
  3. To keep the strike once but repeat the model motion, split the loop, set Excitation to Play once, and give Model an Own loop. A positive Ring setting provides a longer body interval for the model to traverse.
  4. Add Noise for extra drive, or AGC to bring up quieter existing excitation. Both are off at their neutral setting. Noise has its own level: reducing Excitation Level to its minimum mutes the recorded excitation while leaving the noise drive available. AGC does not generate sound from silence or undo that mute.

Coefficient Stretch changes which model frames are heard; loop markers and cursors still describe the displayed arrangement. Listen at matched output levels when changing the excitation or body.

Grain: repeat damage over changing audio

  1. Split the loop and give Source a longer Own loop.
  2. Give Pattern a shorter Own loop and adjust its placement. The same holes and capture/hold timing now repeat over different source material. Hold captures the material currently under that pattern event.
  3. Compare Holes and Hold while playback runs. Retrigger MIDI or sequencer voices after changing the loop design.
  4. Try Pattern Play once to let the damage pattern finish while Source continues. Source Play once ends the sound when Source finishes; Pattern alone does not supply audio.
RC2 Grain Guided timing lanes: a yellow Source row and blue Pattern row with separate placement flags, loop bounds and crossfade icons.
Grain's Source and Pattern have separate timing lanes. Their bounds can start together, then be edited independently.

For Hull, try delaying Body while retaining the Residual's impact. For Halo, move Colour relative to Carrier to change when the spectral outline meets the texture. These are timing changes within the model, rather than delays added after the complete sound.

Copy or move a pad

  • Copy/paste: select a pad, press Command-C / Command-V on macOS or Ctrl-C / Ctrl-V on Windows/Linux, or use Copy pad / Paste pad in the pad menu.
  • Copy by dragging: hold Command on macOS or Ctrl on Windows/Linux while dragging a pad onto another pad. An ordinary drag swaps the pads.
  • Undo: clipboard paste and copy-drag replace the destination as one undo step. They include the sample and complete pad design, including envelopes, modulation, loops, tuning and routing. They can overwrite an occupied pad immediately; use Undo to restore it.

The pad clipboard is a snapshot: later edits to the copied pad do not change it. It lasts within that plug-in/app instance, including editor close/reopen, rather than creating a portable file. Normal text copy/paste retains priority while typing. Use Pad template to transfer a design without replacing the destination sample or routing, or export a portable kit when sharing sounds with another instance or machine.

Play and record from a phone

Phone Link is available from the desktop Standalone app, not hosted AU/VST3/CLAP instances. Put the computer and phone on the same local network, open the header's QR button or Phone Link menu action, and scan the displayed code. The pairing panel closes after connection. Use a new QR/address after restarting Phone Link; its old session address expires.

The phone's Pads screen shows source waveforms and sample names. Tap to play; a moving amber border and Looping label identify active looping voices. Reduced Motion keeps the border static. The Sequencer screen edits the Standalone pattern and transport; tempo, swing and pattern length follow the desktop. Stop all stops all voices and the sequencer. Stop Phone Link on the desktop ends the connection.

Record a take into a pad

Recording is experimental and requires macOS Standalone as the desktop master. Windows/Linux masters offer remote playing and sequencing, but not recording. The recording page needs a browser that can open the Mac's local HTTPS page and grant microphone access. Physical iPhone/Safari certificate-trust and recording validation is still pending; successful pairing alone does not guarantee microphone capture will work on that device.

  1. On the phone, select the microphone / Record tab. This opens the secure recording page when it is available.
  2. Hold the destination pad for about half a second to start a take. In Record mode a short tap plays the pad on release; it does not record. With a hardware keyboard, Shift+Enter starts recording on the focused pad.
  3. Allow microphone access, then record up to 60 seconds. Use Stop when finished. There is no live input monitoring.
  4. Adjust Start and End, and preview the selected region. The waveform keeps the complete take visible while you trim. Use Record again for another attempt or Discard to abandon it.
  5. Choose Use take to send the selected region to that pad. Check the desktop for the completed sample import; receipt of the upload can precede analysis completion. Replacement is undoable on the desktop.

The unimported take exists only in the phone page. Refreshing, navigating away or discarding can lose it. Failed uploads retain the take for retry; after an uncertain response, check the desktop before sending again. Retry requests microphone access again, but a saved denial may need this site's browser Microphone setting changed to Ask or Allow. If Record is unavailable, check the master platform and local HTTPS/browser trust first. Network isolation or VPN routing can also prevent the phone reaching the computer.

On desktop, right-click—or Control-click on macOS—to open a context menu. The available actions depend on where you click.

Location Available actions
a pad on the main screen that pad's sample, routing, sound, transfer, bounce, and view actions
unused space on Pads or anywhere on Triggering the global kit, tuning, display, triggering, remote, and licence menu
the pad-detail surface source/resynthesis audition, display, trim, bounce, template, mutation, and reset actions
the sequencer grid or surrounding sequencer surface copy or clear the current 16-step bank, or clear the pattern
a choke-group or output-bus bin clear that group, or return every pad on that auxiliary bus to Master
a modulation row reset every destination in that source row to zero
Undo and files: edits to pads, kits, routing, mappings, trim, normalisation, and the sequencer are generally undoable. Audition and view choices are not sound edits. Export commands create external files and cannot be reversed by Xoradora's Undo command.

The pad menu

The pad menu contains sample, sound, routing, and transfer actions. Right-click the pad you intend to act on; it does not have to be the currently selected pad.

Item What it does
Edit pad opens Pad Detail for that pad
Sample → Load / Remove sample replaces or clears the pad's sample; Current is a read-only status line
Mute / Solo / Clear all solos changes audition and playback policy without deleting the sound
Routing → Choke groups lets one pad belong to several choke groups; Clear choke groups removes all of that pad's memberships
Routing → Output bus assigns the pad to exactly one output bus; voices already sounding keep the bus captured when they were triggered
Sound → Tune to root adjusts Coarse/Fine from the stored pitch estimate and current tuning map without moving Root or the MIDI zone
Sound → Mutate sound / Evolve toward pad opens an interactive mutation session, or searches toward another loaded pad listed directly in the Evolve toward pad section; Mutate kit from Pad… creates a kit from this source
Sound → HQ mode appears for Strand and prepares its 48-partial tier; new voices use it when the background result is ready
Sample → Edit source in external editor… opens the pad's decoded source in the application chosen in Settings…; save it and return to apply changes automatically, or use Apply external edit… / Discard external edit, shown when this pad has a pending edit
Copy / paste → Copy pad / Paste pad copies a complete pad snapshot or immediately replaces the destination from the instance-local clipboard; one undo step
Copy / paste → Copy whole pad to duplicates the sample and complete pad state into another pad listed in this section, after confirmation when it already contains a sample; Root follows the copied pad, while the destination's Low/High trigger zone remains separately managed on Triggering
Pad template imports or exports sample-independent .xorapad sound settings, or copies them using the Copy template to pad section; it does not replace the destination sample, choke/output routing, mute, or solo state
Bounce renders the audible root-note result into new audio; In place, To empty pad, and a destination in the To pad section create a managed 32-bit WAV and reset the destination controls around it, while To file… writes a 24-bit WAV without replacing a pad
View changes the shared waveform/spectrogram and colour preference, or opens this pad directly in Guided view
Keyboard Play enables or disables the Standalone computer-key performance mapping
Settings… opens desktop preferences, including the global tooltip toggle
Where bounce audio is stored
  • Managed pad bounces are stored in the Managed sample library, which defaults to ~/Library/Application Support/Mutagene/Xoradora on macOS and %LOCALAPPDATA%\Mutagene\Xoradora on Windows. The library path can be changed in Settings...; Xoradora offers to move existing managed samples and keeps saved relative references unchanged.
  • The managed library is the starting folder for sample choosers and a recursive search root for recovering missing samples after state restore. If that search leaves samples unresolved, Xoradora offers another folder chooser for one more recursive search.
  • With no active named kit, the WAV is placed under Session/Samples/<unique-id>/. After a .xorakit has been loaded or exported, new bounces go under <kit-name>.xorakit/Samples/<unique-id>/ inside the managed root.
  • The DAW session stores a reference to this managed WAV, not the WAV audio itself. Do not move or delete managed files by hand. Export a portable .xorakit when the audio needs to travel with the kit to another machine.
  • File… is different: it writes directly to the path selected in the save dialog and does not add that WAV to Xoradora's managed library.
Copy, template, and bounce: Use Copy / paste for another complete playable pad, Pad template to move the design without moving the sample or routing, and Bounce to turn the current processed result into ordinary audio. Destinations are listed directly in these submenus, with no third menu level.

The global menu

Right-click unused space on the main Pads screen. The same menu appears from a right-click on Triggering, with an additional Reset all trigger mappings action. The View submenu is also available in the Sequencer context menu.

Settings… sits beside View in the global, pad, detail and Sequencer menus on desktop. Kit and pattern clear/reset commands are separated at the bottom of their menus. Both microtuning menus show the same tuning-source choices.

Item What it does
Import kit replaces mapped pads from a .xorakit, folder, loose audio files, SFZ, or Hydrogen kit; an occupied kit is confirmed before replacement and the completed import is one undoable operation
Import & mix opens an A/B chooser instead of replacing immediately; keep the current A pad or assign any available imported B pad to each destination, audition the choices, then Apply them as one undoable mix
Export .xorakit bundle writes the portable kit: bundled samples, pad state, MIDI mappings, main pattern, mixer state, and starter attribution data
Export local kit metadata writes paths and settings without copying audio; useful on one machine, but not a portable sharing format
Clear all immediately resets all sixteen pads and clears the sequencer pattern as one undoable edit; if selected accidentally, use Undo before making unrelated edits
Settings… opens the desktop preferences panel, where you enable or disable Show tooltips (on by default), choose the external audio-editor application, change or reveal the managed sample library, and keep those choices on this computer
Check for updates checks the public Xoradora release metadata and reports a newer, current, or unavailable release
Microtuning enables tuning, loads .tun/.scl, selects Local File or MTS-ESP Follow, and shows the current tuning status
Reset all trigger mappings restores the original MIDI 24–39 one-note layout while on Triggering
View selects Main, Triggering/MIDI, or Sequencer just like the top tab buttons, with a check beside the active tab; separate sections contain Waveform/Spectrogram, Ruler, and Monochrome/Colour preferences
Keyboard Play / Phone Link / License manages Standalone keyboard performance, the local-network phone remote, and licence entry/status; recording from the remote is experimental and macOS Standalone only

The pad-detail menu

Right-click the detail background, a normal detail control, or an empty part of the waveform. Right-clicking an envelope point is the important exception described below.

Audition controls stay at the top. View holds display options, while Sample groups range limits and source editing. Mutation, bounce and pad templates follow; Reset remains separate at the bottom. Submenus are only one level deep.

Item What it does
Audition source / Audition resynthesis temporarily compares the original sample path with the reconstructed result; this is not a bypass parameter or a saved edit, and leaving detail returns to resynthesis
Stop all sounds silences all pads, including latched loops; also available with Shift+N
View → Guided view toggles the explanatory Guided surface without changing sound; other View sections control the display, ruler, navigation and palette
Settings… opens desktop preferences directly from detail, including Show tooltips, without returning to the Pads screen
HQ mode appears in Strand and requests the prepared 48-partial result
Sample → Limit playback to this range makes the current Playback Start and playback-end marks the pad's non-destructive legal range, then renormalises the handles without changing the audible result
Sample → Remove range limit reopens the whole source while preserving the handles' absolute positions
Sample → Normalize sample scales the decoded sample to full-scale peak and reruns its analysis; the operation is undoable
Sample → Edit source in external editor… writes a temporary WAV containing the selected pad's decoded source and opens it in the application chosen in Settings…; the pad is unchanged until you return after saving or apply the saved edit manually
Sample → Apply external edit… / Discard external edit appears when this pad has a pending external edit; imports the saved temporary WAV as the pad's new source (undoable), or deletes the working file without changing the pad
Bounce → In place / To file replaces the pad with managed rendered audio, or writes a 24-bit WAV without replacing it; the render follows the current source/resynthesis audition choice
Pad template → Export / Import saves or applies sample-independent .xorapad settings
Mutate sound starts the candidate-based sound mutation workflow
Reset pad parameters after confirmation, resets the pad's shared and mode-specific parameters, modulation, and placement offsets while preserving its sample and selected Resynthesis Mode
External audio editing workflow: choose an editor once in Settings…, then use Edit source in external editor… from a loaded pad's detail menu. Xoradora opens a temporary WAV copy; the managed source remains unchanged until the edit is applied. Save the WAV in the external application and return to Xoradora; the changed WAV is applied automatically and the import is undoable. Use Apply external edit… for a manual retry, or choose Discard external edit when you want to abandon it. Xoradora does not monitor the external application's process and supports one pending working copy at a time.

Sequencer, routing, modulation, and envelopes

  • Right-click the Sequencer to copy the visible 16-step bank to another available bank, clear only that bank, or clear the entire pattern. Cells and velocity levels are copied together, the destination bank opens after a copy, and every action is undoable.
  • The 16/32/64 steps button is a left-click menu that changes pattern length. The MIDI button copies the active pattern to the clipboard/paste buffer or saves it as a MIDI file using each pad's Root and the stored step velocities.
  • Right-click a choke-group bin to clear every pad assignment from that group. Right-click an auxiliary output-bus bin to move every pad on that bus back to Master. Both are undoable.
  • Right-click a modulation matrix row and choose reset row to return every destination for that source to zero. Double-clicking one matrix cell resets only that cell.
  • Right-click directly on an editable envelope point to delete that point immediately. No menu or confirmation appears; the deletion is undoable. Right-click elsewhere in the waveform opens the ordinary pad-detail menu.

Choose a model by the job

If you want to… Start with Why
reshape a resonant body while retaining its noisy attack Warp it separates excitation from a changing all-pole resonator
retune or rematerialise identifiable ringing tones Hull it separates a modal body from attack, noise, and uncaptured detail
hold, slow, or exaggerate broad spectral colour Halo it separates broad colour from its fine carrier
move low, mid, and high-frequency gestures independently Prism it follows complementary frequency regions separately
create codec-like holes, smear, pre-echo, or aliasing Grain it works with overlapping transform slices
remix strike, body, air, and tail as musical roles Strata it groups learned layers by their role in the hit
edit stable tones, tonal texture, attack, and noise separately Strand it exposes four different reconstruction paths

These are suggested starting points. Once a model is chosen, use Guided view for its controls. If changing mode seems to do nothing immediately, retrigger after its analysis is ready.

Tune a drum to the track

For a kick, tom, bell, or other hit with a stable ringing body:

  1. Decide which MIDI note should play the drum at its target pitch and set the pad's Root to that note.
  2. For ordinary tuning, use Coarse and Fine. For a microtonal song, open the global tuning control, load a .tun or .scl map or choose MTS-ESP Follow, and enable microtuning for the pad.
  3. Choose Sound → Tune to root (current map) from the pad menu. Xoradora uses the stored pitch estimate to choose a Coarse step and the smallest remaining Fine correction. The action is undoable and does not move Root.
  4. Retrigger at the Root note and listen to the ringing body, not only the attack. A noise-heavy, very short, or strongly swept drum may need tuning by ear.
  5. If the body still sounds unpitched, adjust the model's harmonic structure: Warp Harmonic aligns resonant peaks; Strand Harmonic aligns tracked partials. This is separate from transposing the pad.

Keep the pitch decisions separate

Root and Coarse/Fine establish the played reference. Ring makes a Warp body persist. Harmonic gives that persistent body an organised pitched structure.

Xoradora Warp Compact view with Root and pitch, Ring, and Harmonic highlighted.
A reliable order is reference pitch, audible ring, then harmonic organisation.
  1. Root: choose the MIDI note that represents the drum's target pitch.
  2. Coarse/Fine: tune the pad against that reference and the active tuning map.
  3. Ring: make enough resonant body audible to judge its pitch.
  4. Harmonic: organise that body around the played pitch and its integer multiples.
Pitch-related controls
  • Coarse/Fine plus the tuning map set the pad's playback reference.
  • Hull Tune, Strand Partial Tune, or Residual Tune move one reconstructed layer relative to that reference.
  • Harmonic organises resonances or partials; it is not a simple transpose.
  • Time Stretch changes a component's timeline and may reverse it; it does not establish the note.

Change the body without losing the strike

Several models separate the resonant or sustained body from an attack or source-like path. If a body edit weakens the original strike, restore some of the corresponding path below before compensating with broad gain or brightness.

  1. Make the body change first, even if the result temporarily sounds dull.
  2. Restore the model's attack or source-like path until the intended attack is audible.
  3. Match playback levels before comparing the versions; a level difference can bias the comparison.
  4. Only then add output saturation, Voice Ceiling, or extra brightness.
Model Attack or source-like path to restore
Warp the excitation path
Hull Residual
Halo the original fine carrier through Colour Mix
Prism Onset, with Glue when the bands have drifted apart
Grain Transient
Strata Strike
Strand Transient, often with some Noise
If the attack has vanished: reduce the body transformation before boosting the whole pad. Restoring the relevant attack path can recover the strike without using broad gain, leaving more headroom.

Shared output headroom

Every pad has a shared output chain after its selected resynthesis method. The controls are normally left at their defaults, but they can reduce the level of an unusually loud reconstruction. The compact output block keeps Saturation, Voice Ceiling, Pan, and Level in a 2x2 arrangement. For non-Warp modes, Pre-Saturation Gain is available in Guided view:

Control What it does
Pre-Saturation Gain Applies a per-pad trim from -inf to +6 dB after reconstruction and envelopes, before Saturation and Voice Ceiling. It is shown in Guided view for non-Warp modes.
Saturation Adds the optional post-reconstruction tanh colour, with a fixed per-voice safety rail.
Voice Ceiling Applies a fixed per-voice gain and clamp before pad Level and Pan. It is not a dynamic final-output limiter, so overlapping voices or boosted Level can still exceed the final bus headroom.

For Warp, Excitation Level trims the recorded excitation before it enters the resonator, up to +6 dB; its minimum is off. Added Noise has its own level and is not muted by this control. This differs from Pre-Saturation Gain, which trims the reconstructed signal. Reducing the final pad Level cannot undo clipping that already happened in Saturation or Voice Ceiling.

Morph, modulation, and host automation

These four systems serve different purposes:

System Use it for Important consequence
Morph revealing the complete stored model design from neutral it is a macro over model shaping, not a bypass
Modulation matrix velocity-, LFO-, or follower-driven variation within the instrument it is generated during playback and can vary per hit
Host automation exact movement on the DAW timeline the host writes one named parameter lane
Envelopes a repeatable shape over each hit they are edited from the main view and follow the hit rather than song bars

For a predictable Morph:

  1. Build the intended sound at Morph 100%.
  2. Check Morph 0% so you know the neutral endpoint.
  3. Automate Morph when you want the whole design to arrive together.
  4. Automate an underlying parameter when only one audible quality should move.
  5. Avoid automating Morph and one of its underlying controls at the same time unless the interaction is deliberate.

Morph generally does not include tuning, Playback Start, level/pan, output routing, or Resynthesis Mode selection.

Choose one source of movement first

Start with Morph, the internal matrix, an envelope, or a DAW lane. Add a second system only after the first movement is understandable.

Xoradora Halo Compact view with Morph and the modulation matrix highlighted.
Morph is a macro; the matrix is a set of source-to-destination relationships.
  1. Morph: reveal the stored model design as one gesture.
  2. Matrix: add per-hit or continuous variation after the basic sound is working.
Host automation
  1. Choose the pad and model before recording automation.
  2. Touch the intended control so the host exposes the correct lane.
  3. Record or draw values using the displayed unit when the host supports it.
  4. Retrigger after routing or trigger-latched changes.
A held voice may not adopt every newly automated value. Check the next hit before assuming the lane is wrong.

Hear what the separated parts are doing

To assess the components in Strata and Strand, isolate each one briefly before recombining the sound.

For Strand:

  1. Lower Transient and Noise enough to hear the tonal paths.
  2. Hear Partials alone. This is the cleaner, explicitly tracked oscillator bank.
  3. Hear Tonal Residual alone. This is the more source-like tonal body left outside that bank.
  4. Change one transform while its path is isolated.
  5. Recombine Partials, Tonal Residual, Transient, and Noise before making the final judgement.

For Strata, use the same method with Strike, Body, Air, and Tail. Balance the roles before changing the six learned layers; otherwise a quiet role can make a useful structural change seem ineffective.

Component balance and transforms

Xoradora Strand Compact view with its component levels highlighted.
The four level controls let you expose the path you are trying to understand.
  1. Partials, Transient, Noise, Tonal Residual: isolate briefly, then recombine.
If a Strand control seems inaudible: confirm that its component is turned up and not masked by a louder component. Chirp, Partial Slew, Harmonic, and Partial Tune affect the tracked partial path, while Residual Tune and Residual Stretch affect the tonal residual.

When a change is still being prepared

Some controls require a new analysis or cached render. During preparation, Xoradora keeps the current playable result instead of interrupting the sound.

When a change appears delayed:

  1. Stop moving the control.
  2. Allow the new result to finish.
  3. Retrigger the pad.
  4. Compare only after the new hit is playing.

Halo, Prism, Grain, and Strata commonly use prepared results. Warp Harmonic and some Strand analysis or quality choices can also require background work. Analysis controls are poor candidates for rapid host automation; animate Morph or a render-time control when you need continuous musical movement.

The old sound can remain active while a new analysis is prepared

Xoradora Strata Guided view with two preparation-sensitive analysis controls highlighted.
Guided identifies analysis controls; the workflow is to wait, retrigger, and then compare.
  1. Factor Separation can request a replacement analysis.
  2. Factor Normalisation can also change the prepared learned result.
Wait for analysis before comparing. Rapidly moving an analysis control can queue work faster than you can hear it. Make one change and audition the resulting hit.

Workflow troubleshooting

A complex Warp sound causes drop-outs

High-order Warp sounds with Harmonic and Notches can demand more CPU when many hits overlap, especially at very small audio buffers. A changing Warp envelope can force fresh filter and gain calculations even with Track set to Fixed. These calculations can arrive in short bursts, so drop-outs are possible even when average CPU use looks moderate. Changing the Harmonic envelope can also add work, although repeating the same envelope and loop can still reuse previous calculations. The Ring envelope generally preserves that reuse.

Warp prepares predictable filter changes ahead of playback, including Shared loops, Independent loops and non-looping notes with Ring tails. Overlapping non-looping hits can share preparation when their settings and envelope motion match, reducing repeated work. This preserves the sound without adding latency. It reduces preparation bursts but cannot remove every cause of drop-outs: a new note, a live edit or a late preparation result can still require immediate work. Preparation also uses background CPU, so total CPU use can still increase even when the audio callback has more headroom.

For a demanding sound, leave Mono on so each new hit fades the previous voice on that pad, or use the sound sparingly. If overlapping hits are essential, increase the audio buffer. To simplify the sound, try disabling the Warp envelope, reducing Harmonic, or disabling a changing Harmonic envelope. Compare one change at a time; disabling every envelope is usually unnecessary.

Fast Track settings combined with a changing Warp envelope can also cause sustained CPU overload. In that case a larger buffer may not be enough: reduce overlapping hits, simplify the Warp envelope, or try Track set to Fixed.

Neutral sounds unexpectedly processed

Check the Root-note audition, Morph 0%, full trim, Playback Start 0%, zero Coarse/Fine, ordinary output settings, and disabled modulation/envelopes. Neutral means the selected model's own reconstruction, not dry sample playback.

A body edit removed the character of the hit

Restore the model's attack/source-like path from the table above. Do this before adding broad gain or brightness.

Auxiliary outputs are unavailable

The macOS Audio Unit intentionally exposes only the main stereo output. Use VST3 in a host that supports multiple instrument outputs for separate Out 1–4 and component stems, and enable the required outputs in the host. Standalone folds Master and Out 1–4 into its stereo device output; component stem taps are for hosted playback and export.

A held voice ignores a routing change

Output bus assignment is captured when the voice is triggered. Change the route and play a new hit. Existing ringing voices intentionally remain on their original bus.

A parameter move sounds different on every hit

Check velocity modulation, pad/global LFO lanes, envelopes, and random or stable-variation controls. Disable one source at a time rather than resetting the patch.

Automatic tuning chose the wrong pitch

The pitch estimate may be following an overtone or may be unreliable for noise, sweeps, or very short hits. Undo the action, tune Coarse/Fine by ear at the Root note, and use Harmonic only if you want the model to acquire a more stable pitched identity.

Preserve credits with a shared kit

attribution.json is optional. Xoradora does not require it to create, load, export, or share a .xorakit, and does not decide what users may do with their kits. Add it when you want your own credit to remain with a kit or want to carry credits you choose to give other contributors and source authors. If you include the file, record only what you know and leave unknown fields unresolved rather than guessing. The file carries information; it does not grant or restrict permission to use or share the kit.

Report a problem or crash

If Xoradora crashes, hangs, fails to load, loses work, or simply behaves in a way that seems wrong, please write to dev@mutagene.net. Any report is useful, even if it is only a short description or a screenshot. You do not need to diagnose the problem or collect everything listed below before getting in touch; send what you have, and the developer can ask follow-up questions.

A crash report or dump can make a difficult problem much easier to locate. If one is readily available, the original report is more useful than a screenshot of part of it—but a screenshot is still better than no report.

Helpful details, if available

Include whatever is easy to find. Missing items should not stop you from reporting the problem.

  • The installed Xoradora release: use the version shown by the DAW's plug-in information or the About window when present; otherwise include the exact installer or download filename and when it was installed.
  • Operating-system version and CPU architecture; for example, macOS on Apple Silicon or Windows x64.
  • DAW name and version, and whether Xoradora was loaded as VST3, AU, CLAP, LV2, or Standalone.
  • The date, local time, and time zone of the failure. This identifies the matching report when several host crashes exist.
  • Whatever you remember doing before the problem, especially the last control, MIDI event, file import, or transport action.
  • Whether it has happened more than once, and anything you have already noticed about when it does or does not happen.
  • For playback-related problems, any audio settings you happen to know, such as sample rate, buffer size, audio device, or output-bus configuration.
  • A small project, .xorakit, pad template, MIDI file, or audio sample that shows the problem, if one is easy to prepare and can legally be shared. There is no need to delay the initial report while making a minimal example.

This optional template can be pasted into the email. Delete or leave blank anything you do not know:

Xoradora version:
Operating system and CPU:
DAW and version:
Plug-in format:
Failure time and time zone:
What failed: crash / scan failure / project-load failure / hang / other
Steps to reproduce:
Expected result:
Observed result:
How often it happens:
Also happens in a new empty project? yes / no / not tested
Also happens in Standalone? yes / no / not available / not tested
Sample rate, buffer size, audio device and outputs:
Attached crash report, dump, project, kit or sample:

Finding a macOS crash report (optional)

macOS may already have recorded useful information. If you are comfortable collecting it:

  1. Note the approximate time of the crash. There is no need to reproduce it solely to obtain a more exact time.
  2. Open Console, select Crash Reports in the sidebar, and find the .ips report with that timestamp. Apple documents this view in View reports in Console.
  3. For the Standalone, the report normally names Xoradora. For a plug-in, it may instead name the DAW, plug-in scanner, or AU hosting process because that is the process which crashed. Open the report and check that Xoradora appears in the crashed thread or loaded binary images.
  4. Choose File → Reveal in Finder and attach the complete .ips file. User reports are also normally stored under ~/Library/Logs/DiagnosticReports/. If only Console can see the report, copy its complete contents into a plain-text file.

For a repeatable freeze rather than a crash, open Activity Monitor, select the DAW or Xoradora Standalone process, choose More (…) → Sample Process, and save the generated report before force-quitting. Apple describes Sample Process in Run system diagnostics in Activity Monitor.

Finding Windows crash information (optional)

Windows and the DAW may have recorded one or more of the following. Any one of them can help; there is no need to find them all.

  1. Check the DAW's own crash-report or support-package folder first. Attach the package whose timestamp matches the failure; plug-in crashes are normally recorded under the DAW or scanner process name rather than Xoradora.
  2. Open Event Viewer → Windows Logs → Application and find the Error at the crash time, commonly Application Error event 1000. Copy the complete General entry and the Details → XML view into a text file. Include the faulting application, faulting module, exception code, and report ID. Microsoft describes these application-crash records in The application or service crashing behavior troubleshooting guidance.
  3. Check %LOCALAPPDATA%\CrashDumps for a .dmp named after the DAW, scanner, or Xoradora Standalone and created at the same time. This folder only receives dumps when Windows Error Reporting local dump collection has been enabled, so it may not exist.
  4. If there is no dump, send whatever you have. If more detail is needed, the developer may ask whether you are willing to enable a process-specific Windows Error Reporting dump for a later run. Microsoft's Collecting User-Mode Dumps documents the mechanism and its default dump folder; it requires administrator access and should be configured for the process that actually crashes.

An Event Viewer entry identifies the failing process, module, and exception code, but it does not contain a complete stack trace. A matching .dmp, the Xoradora version, and reproduction steps greatly improve the chance of reconstructing the failure against the correct build; please still report the problem when those are unavailable.

Privacy and file size

Crash reports can contain user names and local file paths. Memory dumps can also contain portions of the DAW's process memory. Review reports before sending them, treat dumps as potentially sensitive, and do not include licence keys or audio you are not permitted to share. Zip large reports; if the archive is too large for email, send the written report first and ask for an upload method. If redacting a text crash report, retain its exception information, crashed thread, binary-images or module list, UUIDs, and timestamps.