Open-Unmix UMX-HQ drums (ONNX)
An ONNX export of the drums network from Open-Unmix
UMX-HQ (pretrained weights: Zenodo 10.5281/zenodo.3370489,
drums-9619578f.pth, MIT). The Mix Directive desktop app uses it, with the
vocals, drums, bass and other networks
together, for Music Rebalance (re-levelling drums in a mix) and Reduce Bleed's Model mode (keeping a drum stem and reducing the rest). It runs locally with ONNX Runtime on the CPU. No PyTorch is required.
Changes from the original
This is a modified redistribution under the original MIT licence (see LICENSE, © 2019 Inria):
- Only the drums target's network is included, converted to ONNX (opset 17).
- The graph is traced through a thin wrapper that repeats
OpenUnmix.forwardwith a dynamic frame axis. The original reads the frame count as a Python int, which tracing would freeze. Batch size is fixed at 1 and stereo input is fixed. - The STFT/iSTFT and Wiener filtering are not part of the graph. The app turns the four targets' outputs into power-ratio masks instead.
The weights are unchanged (float32). The ONNX output matches PyTorch to within 6e-06.
The newer umxl weights are licensed for non-commercial use only and are not used.
Files
| File | Size | SHA-256 |
|---|---|---|
model.onnx | 35,623,507 bytes | 471628e1e48138a634f962a89f622929980cf5485ed0a4e6e648e9dfcd1145d9 |
export_umxhq_onnx.py, export_umxhq_vocals_onnx.py | — | Scripts that produced model.onnx (python3 export_umxhq_onnx.py out_dir drums) |
Usage
- Input
magnitude: float32[1, 2, 2049, frames]. This is the magnitude STFT of a 44.1 kHz stereo signal (n_fft 4096, hop 1024, periodic Hann window, centred with reflect padding, as intorch.stft). - Output
drums_magnitude: the estimated drums magnitude, the same shape as the input. Use it with the other targets' estimates as power-ratio masks on the complex mix STFT, then invert. - The network is a bidirectional LSTM, so give it a few seconds of context either side when processing in chunks.
Training data
The upstream authors trained UMX-HQ on MUSDB18-HQ and publish the weights under the MIT licence. See the Open-Unmix repository and the Zenodo record.
Citation
Stöter, F.-R., Uhlich, S., Liutkus, A., & Mitsufuji, Y. (2019). Open-Unmix – A Reference Implementation for Music Source Separation. Journal of Open Source Software, 4(41), 1667. https://doi.org/10.21105/joss.01667