Skip to main content

MDXNet

Ultimate Vocal Remover powered by MDX Net

License: MIT Python Version GitHub GitHub

MDXNet is a high-quality vocal separation tool that uses the MDX Net architecture. It leverages GPU acceleration (when available) and multi-threaded processing to deliver fast and efficient separation of vocals from audio files.


Table of Contents


Features

  • High-Quality Vocal Separation: Utilizes MDX Net for precise separation.
  • GPU Acceleration: Automatically uses GPU if available.
  • Multi-Threaded Processing: Optimized for faster processing on multi-core systems.

Installation

Install MDXNet directly from GitHub using pip:

pip install git+https://github.com/TheNeodev/mdxnet.git

Make sure you have Python 3.7 or later installed.


Downloading Models

MDXNet requires pre-trained models to operate. Download the required models from the releases page:

After downloading, place the model file (e.g., uvr_models.onnx) in a directory of your choice, and update the model path accordingly in your configuration.


Usage

MDXNet can be used within your Python scripts.

Python API

Below is an example of how to use the Python API for vocal separation:

from mdxnet import MDXProcessor

# Define your model parameters
model_params = {
    # Customize model parameters here
    # e.g., "param1": value, "param2": value,
}

if __name__ == "__main__":
    # Initialize the processor with the model path and parameters.
    processor = MDXProcessor(
        model_path="./uvr_models.onnx",  # Update this path to your downloaded model
        model_params=model_params,
        processor=0  # Set processor index (use 0 for CPU, or specify GPU device index)
    )

    # Process the audio file to separate vocals and instrumental tracks.
    main_path, invert_path = processor.process(
        input_path="./Test.mp3",   # Path to the input audio file
        output_dir="./output",     # Output directory for the separated tracks
        denoise=True,              # Enable denoising (set to False if not needed)
        suffix="Vocals",           # Suffix for the vocal track file
        invert_suffix="Instrumental"  # Suffix for the instrumental track file
    )

    print(f"Separated vocals saved to: {main_path}")
    print(f"Instrumental track saved to: {invert_path}")

Notes:

  • Ensure the model file is correctly placed and the path is updated.
  • Customize the model_params dictionary based on your specific requirements.

Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bugfix.
  3. Make your changes and commit them with clear messages.
  4. Submit a pull request detailing your changes.

For major changes, please open an issue first to discuss what you would like to change.


License

This project is licensed under the MIT License.


Acknowledgments

  • Thanks to the developers behind MDX Net/UVR for their groundbreaking work.
  • Special thanks to all contributors and the community for continuous support.

Metadata

Release files for mdxnet 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mdxnet 1.1.0
File Size Uploaded Provenance Actions
mdxnet-1.1.0.tar.gz 6.9 kB Without provenance Details for mdxnet-1.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mdxnet 1.1.0
File Interpreter ABI Platform Actions
mdxnet-1.1.0-py3-none-any.whl Python 3 none any Details for mdxnet-1.1.0-py3-none-any.whl

Total release size: 14.1 kB

Release files / mdxnet-1.1.0.tar.gz

Download URL mdxnet-1.1.0.tar.gz
Size 6.9 kB
Tags Source
SHA-256 checksum
How to use checksums
ec6bde5a970fbf46175d8c13009ee115ff4e5fd52e736bb4d33e085f27d6da2f
BLAKE2b-256 checksum
How to use checksums
63484a88a83a849c9c4d1bd12a1c214cf8a1cc17f4cf841c127c9a8a9bb393e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.11

Release files / mdxnet-1.1.0-py3-none-any.whl

Download URL mdxnet-1.1.0-py3-none-any.whl
Size 7.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5f4dd64a1722c823a35d90a46f4ee2e3533fe6876281bea919533d7ea2a247a2
BLAKE2b-256 checksum
How to use checksums
969d35d8379bdb1da7fa9ed47549066ee52b9d40dc5d7a22713b900758ff849a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.11

Security for mdxnet 1.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page