skillfed

openunmix

PyTorch-based music source separation toolkit

openunmix v1.3.0 302.7K downloads/30d#7,819 on PyPI1,501
Permissive license MIT DORMANT released

What it is and what it does

Open-Unmix is a PyTorch-based toolkit for music source separation that decomposes mixed audio into individual instrumental stems using pre-trained deep neural networks. It provides ready-to-use models trained on the MUSDB18 dataset to extract vocals, drums, bass, and other instruments from pop music, plus a speech enhancement model. The core architecture is a three-layer bidirectional LSTM that learns to predict magnitude spectrograms of target sources; the `Separator` class combines multiple source models and applies a differentiable Wiener filter to produce final waveforms.

The package is designed for researchers, audio engineers, and artists who need to isolate or analyze individual instruments in recordings. It operates on waveforms or pre-computed spectrograms, handles arbitrary audio lengths due to its recurrent architecture, and includes a command-line interface for batch processing. Installation is straightforward via pip, though the default model weights carry a non-commercial license restriction.

Use it for:

  • Extract vocal tracks from songs for remixing, karaoke, or vocal analysis without manual editing.
  • Isolate drum patterns or bass lines for music production, sampling, or rhythm study.
  • Separate speech from background noise using the `umxse` speech enhancement model.
  • Batch process music libraries to create stem versions for archival or downstream analysis.
  • Research music information retrieval or develop custom source separation models using the provided architecture.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Separates music into individual stems (vocals, drums, bass, other instruments) using pre-trained deep learning models, with optional speech enhancement.

Yes, if you need music source separation and accept the non-commercial license on the default model. The package is stable, low-friction to install, and provides production-ready models with no known vulnerabilities. However, dormancy (850 days since last release) means no active maintenance or bug fixes; consider it if your use case matches the pre-trained models and you do not require ongoing support.

Install

openunmix on PyPI

pip

pip install openunmix

uv

uv add openunmix

poetry

poetry add openunmix

Installing openunmix

Before you install

Low friction installation with a pure Python wheel. The package is dormant (last release 850 days ago) but stable and Production/Stable classified; no active maintenance signals, though the repository remains unarchived with 1501 stars.

License in practice

MIT license (permissive) applies to the package code. Note that the default `umxl` model weights are licensed CC BY-NC-SA 4.0 for non-commercial use only, which may restrict deployment in commercial applications.

Quickstart

pip install openunmix

import openunmix
separator = openunmix.umxl()
# Load audio and separate
waveform, sr = torchaudio.load('track.wav')
stems = separator(waveform)

Requires PyTorch 1.8+ and torchaudio; GPU acceleration optional but recommended for performance. Default model (`umxl`) weights are non-commercial use only.

Verify before relying

  • Whether pre-trained model weights are automatically downloaded on first use or must be manually fetched.
  • Memory and compute requirements for real-time or batch separation on typical hardware.
  • Whether the package supports GPU acceleration beyond what torch and torchaudio provide.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 4 — numpy, torchaudio, torch, tqdm
Maintenance dormant — 850 days since the last release
Last repo commit
First released
Downloads 302,651/month — #7,819 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: openunmix-1.3.0-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Libraries :: Python ModulesTopic :: Software Development :: Quality Assurance

Tags

music source separationstem extraction audiovocal isolation pytorchmusic demixing neural networkaudio source separationseparate drums vocals bassmusic decomposition
music-processingdeep-learningaudio-analysis

More Python Modules packages