AURA: Unified Multimodal Framework for
Conversational Music Editing

Quoc-Huy Trinh1,4 · Minh-Van Nguyen2,4 · Debesh Jha3

1 Aalto University · 2 Technical University of Denmark · 3 University of South Dakota · 4 OpenRB Lab

arXiv GitHub HuggingFace Model HuggingFace Dataset

Abstract

Instruction-guided music editors typically process each request independently, limiting their ability to support workflows in which users progressively refine a track. We introduce AURA, a unified multimodal framework for conversational music editing. AURA uses a multimodal large language model to interpret the complete dialogue history, an optional image, and reference audio, distilling the editing intent into compact concept tokens. A concept-to-audio module injects these tokens and frame-aligned reference features into a frozen MusicGen backbone, enabling precise edits while preserving unaffected content. AURA optimizes only 91M parameters while retaining 1.9B frozen backbone parameters. Experiments on Slakh2100 and MoisesDB demonstrate substantial improvements in edit correctness and content preservation over existing instruction-guided methods, including a 4–5× reduction in FAD for out-of-domain addition and removal.
AURA architecture diagram
Figure 1. AURA architecture — a multimodal thinker emits concept tokens that condition a dual-stream fusion MusicGen bridge.

Add

Adding an instrument while preserving the existing mix.

Slakh · addStem added: bass

“Music piece. Instruct: Add bass.”

Input
Reference
AURA
Slakh · addStem added: guitar

“Music piece. Instruct: Add guitar.”

Input
Reference
AURA
Slakh · addStem added: piano

“Music piece. Instruct: Add piano.”

Input
Reference
AURA
MoisesDB · addStem added: bass

“Add a distorted bass guitar to the mix to thicken the low end for this rock track.”

Input
Reference
AURA
MoisesDB · addStem added: guitar

“add some subtle fingerpicking guitar to the singer songwriter track”

Input
Reference
AURA
MoisesDB · addStem added: piano

“add piano to the mix”

Input
Reference
AURA

Remove

Removing a target instrument, keeping the rest intact.

Slakh · removeStem removed: bass

“Music piece. Instruct: No bass.”

Input
Reference
AURA
Slakh · removeStem removed: bass

“Music piece. Instruct: No bass.”

Input
Reference
AURA
Slakh · removeStem removed: piano

“Music piece. Instruct: No piano.”

Input
Reference
AURA
MoisesDB · removeStem removed: bass

“remove the bass from the rock mix”

Input
Reference
AURA
MoisesDB · removeStem removed: bass

“Can you mute the bassline in this rap track?”

Input
Reference
AURA
MoisesDB · removeStem removed: piano

“please remove the piano from this pop track”

Input
Reference
AURA

Extract

Isolating a single instrument from the mix.

Slakh · extractStem isolated: drums

“Music piece. Instruct: Only drums.”

Input
Reference
AURA
Slakh · extractStem isolated: drums

“Music piece. Instruct: Only drums.”

Input
Reference
AURA
MoisesDB · extractStem isolated: drums

“Keep only the drums and mute the guitar, bass, and vocals.”

Input
Reference
AURA
MoisesDB · extractStem isolated: guitar

“Keep only the guitar and mute everything else.”

Input
Reference
AURA

Extraction Failure Cases

Where AURA’s extraction breaks down — shown for transparency.

Slakh · extractStem isolated: piano

“Music piece. Instruct: Only piano.”

Extraction fails: the isolated stem is dominated by bleed from other instruments and/or loses the target timbre.

Input
Reference
AURA
Slakh · extractStem isolated: guitar

“Music piece. Instruct: Only guitar.”

Extraction fails: the isolated stem is dominated by bleed from other instruments and/or loses the target timbre.

Input
Reference
AURA
Slakh · extractStem isolated: bass

“Music piece. Instruct: Only bass.”

Extraction fails: the isolated stem is dominated by bleed from other instruments and/or loses the target timbre.

Input
Reference
AURA
MoisesDB · extractStem isolated: guitar

“Keep only the guitar and mute everything else in this rock track.”

Extraction fails: the isolated stem is dominated by bleed from other instruments and/or loses the target timbre.

Input
Reference
AURA
MoisesDB · extractStem isolated: piano

“Mute all instruments except the piano.”

Extraction fails: the isolated stem is dominated by bleed from other instruments and/or loses the target timbre.

Input
Reference
AURA
MoisesDB · extractStem isolated: guitar

“Isolate the guitar track and mute all other instruments.”

Extraction fails: the isolated stem is dominated by bleed from other instruments and/or loses the target timbre.

Input
Reference
AURA

Multi-turn Editing

A dependent 3-turn conversation (remove drums → also bass → also guitar); each turn edits the previous result.

MoisesDB · multi-turn

Original mix, then a 3-turn conversation:

Original mix

Turn 1: “Remove the drums.”

Reference
AURA

Turn 2: “Now also remove the bass.”

Reference
AURA

Turn 3: “And remove the guitar as well.”

Reference
AURA
MoisesDB · multi-turn

Original mix, then a 3-turn conversation:

Original mix

Turn 1: “Remove the drums.”

Reference
AURA

Turn 2: “Now also remove the bass.”

Reference
AURA

Turn 3: “And remove the guitar as well.”

Reference
AURA
MoisesDB · multi-turn

Original mix, then a 3-turn conversation:

Original mix

Turn 1: “Remove the drums.”

Reference
AURA

Turn 2: “Now also remove the bass.”

Reference
AURA

Turn 3: “And remove the guitar as well.”

Reference
AURA
MoisesDB · multi-turn

Original mix, then a 3-turn conversation:

Original mix

Turn 1: “Remove the drums.”

Reference
AURA

Turn 2: “Now also remove the bass.”

Reference
AURA

Turn 3: “And remove the guitar as well.”

Reference
AURA
MoisesDB · multi-turn

Original mix, then a 3-turn conversation:

Original mix

Turn 1: “Remove the drums.”

Reference
AURA

Turn 2: “Now also remove the bass.”

Reference
AURA

Turn 3: “And remove the guitar as well.”

Reference
AURA

Citation

BibTeX
@article{trinh2026aura,
  title     = {AURA: Unified Multimodal Framework for Conversational Music Editing},
  author    = {Trinh, Quoc-Huy and Nguyen, Minh-Van and Jha, Debesh},
  journal   = {arXiv preprint arXiv:2609.14344},
  year      = {2026}
}