Skip to main content

phantom-audio-separation

Demucs-based stem separation plugin for phantom-audio.

Splits a stereo mix into individual stems (vocals, drums, bass, other) using Meta's Hybrid Transformer Demucs model. This package carries the heavyweight PyTorch + Demucs dependency tree (~2.5 GB) so the core phantom-audio analysis library stays lean and independent of PyTorch's release cadence and platform-support matrix.

Install

# Recommended: via the phantom-audio meta-extra
uv tool install "phantom-audio[separation]" --python 3.13

# Or directly
uv pip install phantom-audio-separation

Usage

Once installed, phantom-audio discovers this plugin automatically through the phantom.separation entry-point group -- no configuration needed. The existing APIs keep working unchanged:

from phantom import separate_stems

result = separate_stems("mix.wav", "./stems")
print(result.stems)  # {"vocals": ".../vocals.wav", "drums": ..., ...}

Or from the CLI / MCP server:

phantom separate mix.wav --output ./stems/

phantom doctor reports phantom-audio-separation as OK only when the plugin is installed and importable.

Note: First use downloads the htdemucs model (~80 MB). Subsequent calls use the cached model.

License

AGPL-3.0-or-later, same as phantom-audio. See the repository LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

phantom_audio_separation-1.5.0.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phantom_audio_separation-1.5.0-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file phantom_audio_separation-1.5.0.tar.gz.

File metadata

  • Download URL: phantom_audio_separation-1.5.0.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for phantom_audio_separation-1.5.0.tar.gz
Algorithm Hash digest
SHA256 ad126c348e0f3f787da0fe1ec9b00f750b048f3539cff7c16de5251df282e91b
MD5 bd78c6ffc8617225425ae51270ca0cb6
BLAKE2b-256 4bdaa191a4be3babc8935a5d2a51618578b1acb18f08e2fbae1fb111f70ee56f

See more details on using hashes here.

File details

Details for the file phantom_audio_separation-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: phantom_audio_separation-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 5.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for phantom_audio_separation-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 95bdf3ca7426b5e0b072c8cb20428aaa619d5e3036e468e7d0a270e483a89b09
MD5 8aa966ca3bb4bd8247be1bcae7632310
BLAKE2b-256 d7ef6348ac5a8d9506036428f8980b778df41c07707be71e2f2e7154b95f1412

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.5.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page