Instructions to use ssmall256/mlx-audio-separator with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use ssmall256/mlx-audio-separator with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] hf download ssmall256/mlx-audio-separator --local-dir mlx-audio-separator
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
- Atomic Chat
Add initial validated seven-model MLX audio separation catalog
Browse filesPublish safetensors, matching configurations, model cards, validation reports, checksums, and catalog-specific third-party notices. Automatic downloads require the upcoming mlx-audio-separator 0.1.21 release.
- .gitattributes +0 -34
- LICENSE-code +21 -0
- README.md +193 -0
- SHA256SUMS +40 -0
- THIRD_PARTY_NOTICES.md +138 -0
- VALIDATION.md +84 -0
- cards/bs-roformer-sw.md +59 -0
- cards/htdemucs.md +60 -0
- cards/htdemucs_6s.md +60 -0
- cards/htdemucs_ft.md +60 -0
- cards/mel-roformer-instv7n.md +59 -0
- cards/mel-roformer-zfturbo-vocals-v1.md +60 -0
- cards/uvr-mdx-net-inst-hq3.md +59 -0
- catalog.json +552 -0
- catalog.py +188 -0
- models/bs-roformer-sw/config.json +211 -0
- models/bs-roformer-sw/model.safetensors +3 -0
- models/htdemucs/LICENSE +22 -0
- models/htdemucs/htdemucs.safetensors +3 -0
- models/htdemucs/htdemucs_config.json +188 -0
- models/htdemucs_6s/LICENSE +22 -0
- models/htdemucs_6s/htdemucs_6s.safetensors +3 -0
- models/htdemucs_6s/htdemucs_6s_config.json +194 -0
- models/htdemucs_ft/LICENSE +22 -0
- models/htdemucs_ft/htdemucs_ft.safetensors +3 -0
- models/htdemucs_ft/htdemucs_ft_config.json +455 -0
- models/mel-roformer-instv7n/config.json +57 -0
- models/mel-roformer-instv7n/model.safetensors +3 -0
- models/mel-roformer-zfturbo-vocals-v1/LICENSE +31 -0
- models/mel-roformer-zfturbo-vocals-v1/config.json +28 -0
- models/mel-roformer-zfturbo-vocals-v1/model.safetensors +3 -0
- models/uvr-mdx-net-inst-hq3/config.json +12 -0
- models/uvr-mdx-net-inst-hq3/model.safetensors +3 -0
- validation/automatic-downloads.json +298 -0
- validation/bs-roformer-sw.json +92 -0
- validation/htdemucs.json +51 -0
- validation/htdemucs_6s.json +67 -0
- validation/htdemucs_ft.json +51 -0
- validation/mel-roformer-instv7n.json +44 -0
- validation/mel-roformer-zfturbo-vocals-v1.json +34 -0
- validation/uvr-mdx-net-inst-hq3.json +44 -0
.gitattributes
CHANGED
|
@@ -1,35 +1 @@
|
|
| 1 |
-
*.7z filter=lfs diff=lfs merge=lfs -text
|
| 2 |
-
*.arrow filter=lfs diff=lfs merge=lfs -text
|
| 3 |
-
*.bin filter=lfs diff=lfs merge=lfs -text
|
| 4 |
-
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
| 5 |
-
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
| 6 |
-
*.ftz filter=lfs diff=lfs merge=lfs -text
|
| 7 |
-
*.gz filter=lfs diff=lfs merge=lfs -text
|
| 8 |
-
*.h5 filter=lfs diff=lfs merge=lfs -text
|
| 9 |
-
*.joblib filter=lfs diff=lfs merge=lfs -text
|
| 10 |
-
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
| 11 |
-
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
| 12 |
-
*.model filter=lfs diff=lfs merge=lfs -text
|
| 13 |
-
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
| 14 |
-
*.npy filter=lfs diff=lfs merge=lfs -text
|
| 15 |
-
*.npz filter=lfs diff=lfs merge=lfs -text
|
| 16 |
-
*.onnx filter=lfs diff=lfs merge=lfs -text
|
| 17 |
-
*.ot filter=lfs diff=lfs merge=lfs -text
|
| 18 |
-
*.parquet filter=lfs diff=lfs merge=lfs -text
|
| 19 |
-
*.pb filter=lfs diff=lfs merge=lfs -text
|
| 20 |
-
*.pickle filter=lfs diff=lfs merge=lfs -text
|
| 21 |
-
*.pkl filter=lfs diff=lfs merge=lfs -text
|
| 22 |
-
*.pt filter=lfs diff=lfs merge=lfs -text
|
| 23 |
-
*.pth filter=lfs diff=lfs merge=lfs -text
|
| 24 |
-
*.rar filter=lfs diff=lfs merge=lfs -text
|
| 25 |
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
| 26 |
-
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
| 27 |
-
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
| 28 |
-
*.tar filter=lfs diff=lfs merge=lfs -text
|
| 29 |
-
*.tflite filter=lfs diff=lfs merge=lfs -text
|
| 30 |
-
*.tgz filter=lfs diff=lfs merge=lfs -text
|
| 31 |
-
*.wasm filter=lfs diff=lfs merge=lfs -text
|
| 32 |
-
*.xz filter=lfs diff=lfs merge=lfs -text
|
| 33 |
-
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
-
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
-
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LICENSE-code
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) 2024-2026 ssmall256
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 7 |
+
in the Software without restriction, including without limitation the rights
|
| 8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 9 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 10 |
+
furnished to do so, subject to the following conditions:
|
| 11 |
+
|
| 12 |
+
The above copyright notice and this permission notice shall be included in all
|
| 13 |
+
copies or substantial portions of the Software.
|
| 14 |
+
|
| 15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 21 |
+
SOFTWARE.
|
README.md
ADDED
|
@@ -0,0 +1,193 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
library_name: mlx
|
| 3 |
+
pipeline_tag: audio-to-audio
|
| 4 |
+
license: unknown
|
| 5 |
+
tags:
|
| 6 |
+
- mlx
|
| 7 |
+
- audio
|
| 8 |
+
- music-source-separation
|
| 9 |
+
- apple-silicon
|
| 10 |
+
- safetensors
|
| 11 |
+
---
|
| 12 |
+
|
| 13 |
+
# MLX Audio Separator
|
| 14 |
+
|
| 15 |
+
Separate music into vocals, drums, bass, guitar, piano, and other instruments on your
|
| 16 |
+
Apple Silicon Mac. This repository contains seven ready-to-use **safetensors models** for
|
| 17 |
+
[mlx-audio-separator](https://github.com/ssmall256/mlx-audio-separator), with MLX inference,
|
| 18 |
+
matching configurations, and individual validation reports. No PyTorch or ONNX runtime is
|
| 19 |
+
required to use these weights.
|
| 20 |
+
|
| 21 |
+
Download one model or the full collection. All weights are hosted here, organized by model ID.
|
| 22 |
+
|
| 23 |
+
## Models
|
| 24 |
+
|
| 25 |
+
| Model | Output stems | Precision | Size |
|
| 26 |
+
|---|---|---|---:|
|
| 27 |
+
| [BS-RoFormer-SW](cards/bs-roformer-sw.md) | Bass, drums, other, vocals, guitar, piano | float32 | 666.5 MiB |
|
| 28 |
+
| [Mel-RoFormer InstV7n](cards/mel-roformer-instv7n.md) | Instrumental, vocals | float32 | 870.6 MiB |
|
| 29 |
+
| [UVR-MDX-NET Inst HQ3](cards/uvr-mdx-net-inst-hq3.md) | Instrumental, vocals | float32 | 63.8 MiB |
|
| 30 |
+
| [HTDemucs](cards/htdemucs.md) | Drums, bass, other, vocals | float32 | 160.2 MiB |
|
| 31 |
+
| [HTDemucs_FT](cards/htdemucs_ft.md) | Drums, bass, other, vocals | float32 | 640.9 MiB |
|
| 32 |
+
| [HTDemucs_6s](cards/htdemucs_6s.md) | Drums, bass, other, vocals, guitar, piano | float32 | 104.6 MiB |
|
| 33 |
+
| [ZFTurbo Mel-RoFormer Vocals v1](cards/mel-roformer-zfturbo-vocals-v1.md) | Vocals, instrumental | float16 | 64.3 MiB |
|
| 34 |
+
|
| 35 |
+
**BS-RoFormer-SW** separates six instruments in one model. **HTDemucs** produces four stems;
|
| 36 |
+
**HTDemucs_FT** uses four specialist models, and **HTDemucs_6s** adds guitar and piano.
|
| 37 |
+
For vocal and instrumental separation, choose InstV7n, Inst HQ3, or ZFTurbo Vocals v1.
|
| 38 |
+
|
| 39 |
+
All models produce stereo audio at **44.1 kHz**. The complete collection is **2.51 GiB**.
|
| 40 |
+
Download sizes include weights and configurations; runtime memory use is higher and varies by model.
|
| 41 |
+
Weight precision describes the stored tensors, not the precision of every inference operation.
|
| 42 |
+
|
| 43 |
+
## Quick start
|
| 44 |
+
|
| 45 |
+
Requires an **Apple Silicon Mac running macOS 26+**, native **Python 3.10+**, and
|
| 46 |
+
**mlx-audio-separator 0.1.21 or later**.
|
| 47 |
+
|
| 48 |
+
**Release availability:** automatic downloads require the upcoming 0.1.21 package release.
|
| 49 |
+
The model files are available now through [direct downloads](#direct-downloads).
|
| 50 |
+
The CLI and Python examples below apply once 0.1.21 is released; PyPI 0.1.20 does not
|
| 51 |
+
include this catalog integration.
|
| 52 |
+
|
| 53 |
+
Install [mlx-audio-separator](https://github.com/ssmall256/mlx-audio-separator) and choose a model:
|
| 54 |
+
|
| 55 |
+
```bash
|
| 56 |
+
python -m pip install "mlx-audio-separator>=0.1.21"
|
| 57 |
+
mlx-audio-separator song.m4a -m bs-roformer-sw --output_dir stems
|
| 58 |
+
```
|
| 59 |
+
|
| 60 |
+
**The first use downloads the selected model automatically.** The package verifies its weights
|
| 61 |
+
and configuration against bundled SHA-256 hashes, caches them, and separates your audio.
|
| 62 |
+
Later runs reuse the cache and work offline. You do not need to download or convert a checkpoint yourself.
|
| 63 |
+
|
| 64 |
+
The CLI writes FLAC by default; add `--output_format WAV` for WAV files.
|
| 65 |
+
|
| 66 |
+
### Python
|
| 67 |
+
|
| 68 |
+
```python
|
| 69 |
+
from mlx_audio_separator import Separator
|
| 70 |
+
|
| 71 |
+
separator = Separator(output_dir="stems", output_format="WAV")
|
| 72 |
+
separator.load_model("bs-roformer-sw")
|
| 73 |
+
output_files = separator.separate("song.m4a")
|
| 74 |
+
```
|
| 75 |
+
|
| 76 |
+
Reuse the separator for additional files. Each of the seven model cards lists its short catalog ID
|
| 77 |
+
and existing package name; both select the same safetensors. For example, `BS-Roformer-SW.ckpt`
|
| 78 |
+
remains an alias for `bs-roformer-sw`, and `htdemucs_ft.yaml` remains an alias for `htdemucs_ft`.
|
| 79 |
+
The `.ckpt`, `.onnx`, and `.yaml` aliases are model names, not the formats downloaded for these entries.
|
| 80 |
+
Choose a model explicitly: the package's historical default is a different BS-RoFormer checkpoint.
|
| 81 |
+
|
| 82 |
+
## Cache and offline use
|
| 83 |
+
|
| 84 |
+
Automatic downloads go to `~/.cache/mlx-audio-separator/models/<model-id>/`.
|
| 85 |
+
Use `--model_file_dir /path/to/models` in the CLI, or `model_file_dir="/path/to/models"` in Python,
|
| 86 |
+
to choose another model directory. `AUDIO_SEPARATOR_MODEL_DIR` can select an existing directory
|
| 87 |
+
for both interfaces and takes precedence over those options.
|
| 88 |
+
|
| 89 |
+
Set `HF_HUB_OFFLINE=1` or `MLX_AUDIO_SEPARATOR_NO_DOWNLOAD=1` to prohibit downloads.
|
| 90 |
+
A complete, verified cache works without network access. A missing or damaged file produces a
|
| 91 |
+
clear error in offline mode; with downloads enabled, the package fetches the required replacement.
|
| 92 |
+
Failed transfers do not overwrite existing files.
|
| 93 |
+
|
| 94 |
+
To free space, remove an unused model's folder. The next use restores the required files.
|
| 95 |
+
The package also reuses matching files from older model caches where possible.
|
| 96 |
+
|
| 97 |
+
## Direct downloads
|
| 98 |
+
|
| 99 |
+
You can also download weights and configurations directly from this repository's **Files and
|
| 100 |
+
versions** tab, or use the Hugging Face client. This is useful for manual setup or preparing
|
| 101 |
+
an offline machine.
|
| 102 |
+
|
| 103 |
+
```bash
|
| 104 |
+
python -m pip install huggingface_hub
|
| 105 |
+
```
|
| 106 |
+
|
| 107 |
+
```python
|
| 108 |
+
from huggingface_hub import snapshot_download
|
| 109 |
+
|
| 110 |
+
snapshot_download(
|
| 111 |
+
repo_id="ssmall256/mlx-audio-separator",
|
| 112 |
+
local_dir="mlx-separator-models",
|
| 113 |
+
allow_patterns=["models/bs-roformer-sw/*"],
|
| 114 |
+
)
|
| 115 |
+
```
|
| 116 |
+
|
| 117 |
+
Point the normal CLI at the downloaded `models/` directory:
|
| 118 |
+
|
| 119 |
+
```bash
|
| 120 |
+
HF_HUB_OFFLINE=1 mlx-audio-separator song.m4a \
|
| 121 |
+
-m bs-roformer-sw \
|
| 122 |
+
--model_file_dir mlx-separator-models/models \
|
| 123 |
+
--output_dir stems
|
| 124 |
+
```
|
| 125 |
+
|
| 126 |
+
Keep each model's files together under its model ID. Replace `bs-roformer-sw` in both examples
|
| 127 |
+
to choose another model, or use `models/*` as the download pattern for all seven.
|
| 128 |
+
The package verifies manually downloaded files using the same checks as automatic downloads.
|
| 129 |
+
|
| 130 |
+
For reproducible downloads, pass a specific commit with `snapshot_download(revision=...)`.
|
| 131 |
+
Use a package release whose bundled file hashes match that revision. See the
|
| 132 |
+
[Hugging Face download guide](https://huggingface.co/docs/huggingface_hub/guides/download) for more options.
|
| 133 |
+
|
| 134 |
+
## Inference settings
|
| 135 |
+
|
| 136 |
+
RoFormer models use **two overlapping windows** by default: each chunk starts halfway through
|
| 137 |
+
the preceding chunk. Demucs uses **two shifts** and **25% overlap**. Shift offsets are random
|
| 138 |
+
by default; set `--demucs_seed 0` or `demucs_params={"seed": 0}` for repeatable selection.
|
| 139 |
+
Inst HQ3 uses 25% overlap and a segment size of 256. The normal package options remain available
|
| 140 |
+
to adjust these settings.
|
| 141 |
+
|
| 142 |
+
The [catalog manifest](catalog.json) records filenames, sizes, SHA-256 hashes, source checkpoints,
|
| 143 |
+
and conversion details. Each model card includes file hashes, and `SHA256SUMS` covers the
|
| 144 |
+
repository's distributed files.
|
| 145 |
+
|
| 146 |
+
## Validation
|
| 147 |
+
|
| 148 |
+
Every model passed offline inference on a 14-second real-music excerpt in a fresh process,
|
| 149 |
+
producing the expected full-length, finite stereo stems at 44.1 kHz. These checks ran with
|
| 150 |
+
network access disabled and imports of PyTorch, ONNX, and ONNX Runtime blocked.
|
| 151 |
+
|
| 152 |
+
The BS-RoFormer-SW, InstV7n, and Inst HQ3 conversions produced **bit-identical unquantized stems**
|
| 153 |
+
to their original checkpoints loaded through the same MLX implementations. The three Demucs
|
| 154 |
+
models and ZFTurbo Vocals v1 preserve the bytes of their existing published safetensors,
|
| 155 |
+
verified against pinned source revisions.
|
| 156 |
+
|
| 157 |
+
The normal package loader also passed first-use download and offline-cache checks for all seven
|
| 158 |
+
models using a local HTTP mirror of these files. Both runs produced bit-identical unquantized
|
| 159 |
+
stems, with conversion dependencies blocked. See the [automatic-download report](validation/automatic-downloads.json).
|
| 160 |
+
|
| 161 |
+
These checks establish artifact integrity and conversion consistency. The 14-second check is
|
| 162 |
+
not a full quality evaluation or a speed benchmark. See [Validation details](VALIDATION.md)
|
| 163 |
+
for per-model reports and earlier comparisons against
|
| 164 |
+
[python-audio-separator](https://github.com/nomadkaraoke/python-audio-separator), the upstream
|
| 165 |
+
project used for PyTorch references.
|
| 166 |
+
|
| 167 |
+
## Licensing and credit
|
| 168 |
+
|
| 169 |
+
Model weights have individual licensing terms; there is no single license covering the entire
|
| 170 |
+
collection. The **MIT** license in [LICENSE-code](LICENSE-code) applies to the catalog helper.
|
| 171 |
+
See [Third-Party Notices](THIRD_PARTY_NOTICES.md) for checkpoint and conversion credits,
|
| 172 |
+
upstream software attribution, and links to the included model-specific license texts.
|
| 173 |
+
|
| 174 |
+
| Models | Weight license information |
|
| 175 |
+
|---|---|
|
| 176 |
+
| BS-RoFormer-SW | The [source model card](https://huggingface.co/enerjazzer/BS-ROFO-SW-Fixed/tree/a443a2985534b3bc815ef54a5d446c6a0390f974) lists the license as **unknown**. |
|
| 177 |
+
| Mel-RoFormer InstV7n | No weight-specific redistribution license is recorded in the source metadata. |
|
| 178 |
+
| UVR-MDX-NET Inst HQ3 | No weight-specific redistribution license is recorded in the source metadata. |
|
| 179 |
+
| HTDemucs, HTDemucs_FT, HTDemucs_6s | **MIT**, as declared by the pinned [Demucs MLX source repository](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e); license notices accompany the weights. |
|
| 180 |
+
| ZFTurbo Vocals v1 | The [source card](https://huggingface.co/mlx-community/mel-roformer-zfturbo-vocals-v1-mlx/tree/01bef2daebedf39937f552d6da68340fc979c9a0) declares **MIT**, with a caveat that the source license was added after the checkpoint release. Its notice is included unchanged. |
|
| 181 |
+
|
| 182 |
+
An unknown weight license is not a grant of permission. Consult the individual model cards and
|
| 183 |
+
original sources for the terms relevant to your use.
|
| 184 |
+
|
| 185 |
+
The fixed BS-RoFormer-SW checkpoint traces to **jarredou**'s distribution, mirrored by **enerjazzer**;
|
| 186 |
+
InstV7n to **Gabox**; Inst HQ3 to the **UVR/TRvlvr** model release; Demucs to **Meta and the Demucs
|
| 187 |
+
contributors**; and ZFTurbo Vocals v1 to **Roman Solovyev (ZFTurbo)**, with its existing MLX conversion
|
| 188 |
+
from **mlx-community**. Architecture credit belongs to the BS-RoFormer, Mel-Band-RoFormer,
|
| 189 |
+
Demucs, and MDX/UVR authors and contributors.
|
| 190 |
+
|
| 191 |
+
MLX separator development and catalog preparation are maintained by
|
| 192 |
+
[ssmall256](https://huggingface.co/ssmall256). Report runtime issues or request additional models
|
| 193 |
+
in the [mlx-audio-separator issue tracker](https://github.com/ssmall256/mlx-audio-separator/issues).
|
SHA256SUMS
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
ee05350c7fda0af4da116020dd7b976d731de3beed4f5e717d5bcc95ead24550 .gitattributes
|
| 2 |
+
980ed5199ba2b41c564a024ef183f29cec371c1d77b65982a8e21c037bee74f6 LICENSE-code
|
| 3 |
+
ac88c30e525c3f634bb5e16fb00da514692c2aff84975c7e8fd37826db7b42ed README.md
|
| 4 |
+
3685afee0763ef6c3be1718e425dda024dbc69dd01cb82122579eb689b3e80d2 THIRD_PARTY_NOTICES.md
|
| 5 |
+
0946bc24fa11497c3b2a302a96d2bc21cb8dcfa09cb501a1f70f2e34d33c3139 VALIDATION.md
|
| 6 |
+
bb2e30830573d781821f62ae5c7415e021863a99cf1eca67df1e81e42b41b4b3 cards/bs-roformer-sw.md
|
| 7 |
+
da22bc2b2fbc749e666c57b471cc7273ec799b02f7525cb3f2a2c5d674ebc3b5 cards/htdemucs.md
|
| 8 |
+
d926563e4b56b6cf25dcd0e720b5297d81cf14f4fcc63034a8ff3aed54ebba7f cards/htdemucs_6s.md
|
| 9 |
+
740196e8faba91f573bceae68e62c1c7d959c91c3ed66f9731790cf265395e03 cards/htdemucs_ft.md
|
| 10 |
+
e5edfd2544b3ae2a2202303062298f0c67e7b4df38eb47050afcb0dd28d165fa cards/mel-roformer-instv7n.md
|
| 11 |
+
b469ee5f16282aef423f28d6299fd961a04bf729c04f9cb6877760d6c286a284 cards/mel-roformer-zfturbo-vocals-v1.md
|
| 12 |
+
842bf30a9b310b2c8c445d20002ec0b907b454c00811fc202793ce5dc52c6b4a cards/uvr-mdx-net-inst-hq3.md
|
| 13 |
+
8d26f8b48adfe3c96e60f1a360e30eecfa24b620539cd55714d22012ec8dbe95 catalog.json
|
| 14 |
+
41469a84c9cd1ea89be7cc98eae2e72837e5b8d897b9d3fc368d1538015a5c14 catalog.py
|
| 15 |
+
386a86c2061536d2dca349943f1027f3ac5472ccb22b0e18bd528519b90f8931 models/bs-roformer-sw/config.json
|
| 16 |
+
f95907cd5bfdbc783c1cb32f6aafc49b8b6a598477a9d4a48b4f9191c5167707 models/bs-roformer-sw/model.safetensors
|
| 17 |
+
15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51 models/htdemucs/LICENSE
|
| 18 |
+
339d267a7a6983a11eedbdc00413c602a65e9b9103f695fb5c2b2a481cd9d297 models/htdemucs/htdemucs.safetensors
|
| 19 |
+
23657b19db14771aecf366ceedbf846c1386836c10043c97f4569acf05526b78 models/htdemucs/htdemucs_config.json
|
| 20 |
+
15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51 models/htdemucs_6s/LICENSE
|
| 21 |
+
d298f7f746bf53c21baad44fb08e88807ef47feb551dd22f1601a546c85b8e02 models/htdemucs_6s/htdemucs_6s.safetensors
|
| 22 |
+
d5e18c0209be583027d6eb5ec3013a02cd7ef55bc3096e644d8d3577d92e9bd0 models/htdemucs_6s/htdemucs_6s_config.json
|
| 23 |
+
15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51 models/htdemucs_ft/LICENSE
|
| 24 |
+
53f03b1ad4b4d211025a35da65460ba61a17547adf9c0544cad0ebcc8d7bbabb models/htdemucs_ft/htdemucs_ft.safetensors
|
| 25 |
+
6708535a698d4d4dd285a6f0a80d9d3c228fdd6514e53bdf1ddbc2ee9b0fa872 models/htdemucs_ft/htdemucs_ft_config.json
|
| 26 |
+
cd8548fd6a1345cfd0c51970919e15e7262cee954b6ff45bb016ed1364be38c5 models/mel-roformer-instv7n/config.json
|
| 27 |
+
74397de5395ed372059b971d6398106f60d92373ada69b62e986e52c9697a5ba models/mel-roformer-instv7n/model.safetensors
|
| 28 |
+
2b55ae02dcfe9ac8454c41c5e235175512db7429ee7275bab4c4e566b3f80597 models/mel-roformer-zfturbo-vocals-v1/LICENSE
|
| 29 |
+
d110ed4713b403d27e2ae6c7796b1a864576232de4a2070e9762108ca197caa6 models/mel-roformer-zfturbo-vocals-v1/config.json
|
| 30 |
+
ef4aa052845a868cfaff93611477bd8f54d8081bc32f2742a9b3c738f0821191 models/mel-roformer-zfturbo-vocals-v1/model.safetensors
|
| 31 |
+
d8df573c2b0248e3ce77eb8f0fc3c528c9db5368f38335e249e25e05e84415ba models/uvr-mdx-net-inst-hq3/config.json
|
| 32 |
+
72c307239fbc415c9f3c1ef83fee38d19ac98b4b893f1a5afc4345296f48eea8 models/uvr-mdx-net-inst-hq3/model.safetensors
|
| 33 |
+
8e4ff22dba85aa83e92ac8efa1f4d741c9e0cc91c9d4c51ca631c91177f80109 validation/automatic-downloads.json
|
| 34 |
+
ee237e5eb45f11ee6684cdaec3e0deb20bee06ca5025e1af8be73d84756536c2 validation/bs-roformer-sw.json
|
| 35 |
+
b10e9d5117578b4e69220ffeb1ccd339fed595411014f30f8697af2dc0ff86d1 validation/htdemucs.json
|
| 36 |
+
b1be8b6a2d2c03218fbb9b58c9608f471f04b3fefd7d11097eb12a33f3eb38cc validation/htdemucs_6s.json
|
| 37 |
+
1b766b8401bb198ec8aec3e963a87b0dbe7536326cf3f3855e2c6d38d24497ea validation/htdemucs_ft.json
|
| 38 |
+
e4cd78ec803f05b27f02333d953d44f8f55e8411b9e40b2ec37249bec12be071 validation/mel-roformer-instv7n.json
|
| 39 |
+
aeab6734ec12ba55abed0be71fe9d812970585a03cc37b1f35dd8ae1970cf0bd validation/mel-roformer-zfturbo-vocals-v1.json
|
| 40 |
+
8a552063129fa354dd4c1622de93962ec104e97e7b1fc768b56f1984aacd24d2 validation/uvr-mdx-net-inst-hq3.json
|
THIRD_PARTY_NOTICES.md
ADDED
|
@@ -0,0 +1,138 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Third-Party Notices
|
| 2 |
+
|
| 3 |
+
This repository distributes pretrained music-separation weights, their configurations,
|
| 4 |
+
model cards, validation reports, and a catalog helper. It brings together work by the
|
| 5 |
+
model authors, upstream projects, and MLX conversion contributors identified below.
|
| 6 |
+
|
| 7 |
+
Licensing information is recorded per model. [LICENSE-code](LICENSE-code) covers the
|
| 8 |
+
catalog helper; it does not apply a single license to all checkpoint weights. Existing
|
| 9 |
+
model-specific notices are included with the corresponding files. Source revisions,
|
| 10 |
+
filenames, and SHA-256 hashes are recorded in [catalog.json](catalog.json).
|
| 11 |
+
|
| 12 |
+
## BS-RoFormer-SW
|
| 13 |
+
|
| 14 |
+
- **Catalog entry:** [BS-RoFormer-SW](cards/bs-roformer-sw.md).
|
| 15 |
+
- **Fixed checkpoint lineage:** jarredou's distribution, mirrored by
|
| 16 |
+
[enerjazzer/BS-ROFO-SW-Fixed](https://huggingface.co/enerjazzer/BS-ROFO-SW-Fixed/tree/a443a2985534b3bc815ef54a5d446c6a0390f974).
|
| 17 |
+
These names identify the checkpoint's distribution history, not a verified training-author credit.
|
| 18 |
+
- **Conversion input:** `BS-Roformer-SW.ckpt` from the
|
| 19 |
+
[python-audio-separator model-configs release](https://github.com/nomadkaraoke/python-audio-separator/releases/download/model-configs/BS-Roformer-SW.ckpt).
|
| 20 |
+
Its SHA-256 matches the pinned fixed checkpoint above.
|
| 21 |
+
- **MLX conversion:** ssmall256; float32 safetensors and the matching configuration
|
| 22 |
+
prepared with [mlx-audio-separator](https://github.com/ssmall256/mlx-audio-separator).
|
| 23 |
+
- **Weight license information:** the pinned source model card explicitly declares
|
| 24 |
+
`license: unknown`. This catalog does not assign an MIT license to these weights.
|
| 25 |
+
|
| 26 |
+
## Mel-RoFormer InstV7n
|
| 27 |
+
|
| 28 |
+
- **Catalog entry:** [Mel-RoFormer InstV7n](cards/mel-roformer-instv7n.md).
|
| 29 |
+
- **Checkpoint author:** Gabox. The matching checkpoint is available as
|
| 30 |
+
[`INSTV7N.ckpt`](https://huggingface.co/GaboxR67/MelBandRoformers/blob/7860d31d8cc1c73b46c1cbdc2b497210c97478ae/melbandroformers/instrumental/INSTV7N.ckpt)
|
| 31 |
+
in Gabox's model repository.
|
| 32 |
+
- **Conversion input:** `mel_band_roformer_instrumental_instv7n_gabox.ckpt` and its
|
| 33 |
+
configuration from the
|
| 34 |
+
[python-audio-separator model-configs release](https://github.com/nomadkaraoke/python-audio-separator/releases/tag/model-configs).
|
| 35 |
+
- **MLX conversion:** ssmall256; float32 safetensors and the matching configuration
|
| 36 |
+
prepared with mlx-audio-separator.
|
| 37 |
+
- **Weight license information:** no weight-specific redistribution license is recorded
|
| 38 |
+
in the source metadata used for this catalog.
|
| 39 |
+
|
| 40 |
+
## UVR-MDX-NET Inst HQ3
|
| 41 |
+
|
| 42 |
+
- **Catalog entry:** [UVR-MDX-NET Inst HQ3](cards/uvr-mdx-net-inst-hq3.md).
|
| 43 |
+
- **Checkpoint source:** the Ultimate Vocal Remover community and
|
| 44 |
+
[TRvlvr's public UVR model release](https://github.com/TRvlvr/model_repo/releases/tag/all_public_uvr_models).
|
| 45 |
+
- **Conversion input:** `UVR-MDX-NET-Inst_HQ_3.onnx`, with model parameters from the
|
| 46 |
+
upstream UVR catalog used by python-audio-separator.
|
| 47 |
+
- **MLX conversion:** ssmall256; float32 safetensors and the matching configuration
|
| 48 |
+
prepared with mlx-audio-separator.
|
| 49 |
+
- **Weight license information:** no weight-specific redistribution license is recorded
|
| 50 |
+
in the source metadata used for this catalog.
|
| 51 |
+
|
| 52 |
+
## HTDemucs, HTDemucs_FT, and HTDemucs_6s
|
| 53 |
+
|
| 54 |
+
- **Catalog entries:** [HTDemucs](cards/htdemucs.md), [HTDemucs_FT](cards/htdemucs_ft.md),
|
| 55 |
+
and [HTDemucs_6s](cards/htdemucs_6s.md).
|
| 56 |
+
- **Original project and models:** Meta Platforms, Inc. and affiliates, Alexandre
|
| 57 |
+
Défossez, and the [Demucs contributors](https://github.com/facebookresearch/demucs).
|
| 58 |
+
- **MLX conversion and packaging:** ssmall256,
|
| 59 |
+
[demucs-mlx](https://github.com/ssmall256/demucs-mlx).
|
| 60 |
+
- **Distributed artifacts:** unchanged float32 weights and configurations from
|
| 61 |
+
[ssmall256/demucs-mlx at revision `35ecb1a`](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e).
|
| 62 |
+
HTDemucs_FT includes all four specialist models.
|
| 63 |
+
- **License information:** the pinned source repository declares MIT. Its copyright
|
| 64 |
+
and license text is preserved unchanged in each model directory:
|
| 65 |
+
[HTDemucs LICENSE](models/htdemucs/LICENSE),
|
| 66 |
+
[HTDemucs_FT LICENSE](models/htdemucs_ft/LICENSE), and
|
| 67 |
+
[HTDemucs_6s LICENSE](models/htdemucs_6s/LICENSE).
|
| 68 |
+
|
| 69 |
+
The accompanying notices credit:
|
| 70 |
+
|
| 71 |
+
> Copyright (c) Meta Platforms, Inc. and affiliates.
|
| 72 |
+
> Copyright (c) 2026 ssmall256
|
| 73 |
+
|
| 74 |
+
## ZFTurbo Mel-RoFormer Vocals v1
|
| 75 |
+
|
| 76 |
+
- **Catalog entry:** [ZFTurbo Mel-RoFormer Vocals v1](cards/mel-roformer-zfturbo-vocals-v1.md).
|
| 77 |
+
- **Original checkpoint:** Roman Solovyev (ZFTurbo),
|
| 78 |
+
[`model_vocals_mel_band_roformer_sdr_8.42.ckpt`](https://github.com/ZFTurbo/Music-Source-Separation-Training/releases/tag/v1.0.0)
|
| 79 |
+
from Music-Source-Separation-Training v1.0.0.
|
| 80 |
+
- **MLX conversion and packaging:** Xocialize, published through
|
| 81 |
+
[mlx-community/mel-roformer-zfturbo-vocals-v1-mlx](https://huggingface.co/mlx-community/mel-roformer-zfturbo-vocals-v1-mlx/tree/01bef2daebedf39937f552d6da68340fc979c9a0).
|
| 82 |
+
- **Distributed artifacts:** the pinned float16 weights and configuration are copied
|
| 83 |
+
unchanged. This catalog does not reconvert or quantize them.
|
| 84 |
+
- **License information:** the pinned model card declares MIT. The included
|
| 85 |
+
[LICENSE](models/mel-roformer-zfturbo-vocals-v1/LICENSE) preserves its copyright
|
| 86 |
+
notices and disclosure: the source repository's MIT license was added on
|
| 87 |
+
November 4, 2024, after the November 6, 2023 checkpoint release. The source
|
| 88 |
+
redistribution treats the weights as inheriting the repository's current MIT terms;
|
| 89 |
+
explicit retroactive author confirmation was not collected for this catalog.
|
| 90 |
+
|
| 91 |
+
## Architecture and implementation credits
|
| 92 |
+
|
| 93 |
+
The BS-RoFormer, Mel-Band-RoFormer, Demucs, and MDX/UVR architecture authors and
|
| 94 |
+
contributors retain credit for their work. Architecture names describe the model
|
| 95 |
+
families; they do not establish authorship or licensing of every trained checkpoint.
|
| 96 |
+
|
| 97 |
+
[python-audio-separator](https://github.com/nomadkaraoke/python-audio-separator),
|
| 98 |
+
maintained by Nomad Karaoke / karaokenerds and contributors, is the upstream project
|
| 99 |
+
for mlx-audio-separator. The MLX application adapts its model/configuration handling
|
| 100 |
+
conventions and uses it for PyTorch reference inference. Its model-configs release
|
| 101 |
+
also supplies the SW and InstV7n conversion inputs identified above. The application
|
| 102 |
+
source is maintained separately on GitHub.
|
| 103 |
+
|
| 104 |
+
The upstream notice is reproduced below as attribution for that software. It is not
|
| 105 |
+
presented as a license grant for third-party checkpoints distributed through its catalog.
|
| 106 |
+
|
| 107 |
+
### MIT License — python-audio-separator
|
| 108 |
+
|
| 109 |
+
Copyright (c) 2023 karaokenerds
|
| 110 |
+
|
| 111 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 112 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 113 |
+
in the Software without restriction, including without limitation the rights
|
| 114 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 115 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 116 |
+
furnished to do so, subject to the following conditions:
|
| 117 |
+
|
| 118 |
+
The above copyright notice and this permission notice shall be included in all
|
| 119 |
+
copies or substantial portions of the Software.
|
| 120 |
+
|
| 121 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 122 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 123 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 124 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 125 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 126 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 127 |
+
SOFTWARE.
|
| 128 |
+
|
| 129 |
+
## Using and redistributing these files
|
| 130 |
+
|
| 131 |
+
Keep the matching model configuration and applicable notices with each set of weights.
|
| 132 |
+
Refer to the model-specific sources above for terms relevant to your use. An unknown
|
| 133 |
+
or undocumented weight license is not a grant of permission, and the helper's code
|
| 134 |
+
license does not fill that gap.
|
| 135 |
+
|
| 136 |
+
For attribution corrections, please open an issue in
|
| 137 |
+
[mlx-audio-separator](https://github.com/ssmall256/mlx-audio-separator/issues), identifying
|
| 138 |
+
the catalog model and the relevant original source.
|
VALIDATION.md
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Validation
|
| 2 |
+
|
| 3 |
+
The catalog includes an individual JSON report for each of its seven models, linked below. The reports
|
| 4 |
+
record input and output shapes, inference settings, output peaks, file-writing results, and
|
| 5 |
+
conversion comparisons where available.
|
| 6 |
+
|
| 7 |
+
## Catalog checks
|
| 8 |
+
|
| 9 |
+
All seven models passed a fresh-process inference check on the same 14-second stereo music
|
| 10 |
+
excerpt at 44.1 kHz, with overlapping chunks. Each produced the expected number of finite,
|
| 11 |
+
full-length stereo stems and wrote its output audio successfully. Network access was disabled,
|
| 12 |
+
and PyTorch, ONNX, and ONNX Runtime imports were blocked during inference.
|
| 13 |
+
|
| 14 |
+
| Model | Stems checked | Additional verification | Report |
|
| 15 |
+
|---|---:|---|---|
|
| 16 |
+
| BS-RoFormer-SW | 6 | Bit-identical unquantized output versus the original checkpoint in MLX | [JSON](validation/bs-roformer-sw.json) |
|
| 17 |
+
| Mel-RoFormer InstV7n | 2 | Bit-identical unquantized output versus the original checkpoint in MLX | [JSON](validation/mel-roformer-instv7n.json) |
|
| 18 |
+
| UVR-MDX-NET Inst HQ3 | 2 | Bit-identical unquantized output versus the original checkpoint in MLX | [JSON](validation/uvr-mdx-net-inst-hq3.json) |
|
| 19 |
+
| HTDemucs | 4 | Weights and config match the pinned published files | [JSON](validation/htdemucs.json) |
|
| 20 |
+
| HTDemucs_FT | 4 | Weights and config match the pinned published files | [JSON](validation/htdemucs_ft.json) |
|
| 21 |
+
| HTDemucs_6s | 6 | Weights and config match the pinned published files | [JSON](validation/htdemucs_6s.json) |
|
| 22 |
+
| ZFTurbo Vocals v1 | 2 | Weights and config match the pinned published files | [JSON](validation/mel-roformer-zfturbo-vocals-v1.json) |
|
| 23 |
+
|
| 24 |
+
The three new conversions were compared before output quantization, across all ten emitted
|
| 25 |
+
stems. The four reused models were downloaded into an empty cache and verified by size and
|
| 26 |
+
SHA-256 before inference. Their weights retain the original precision: float32 for Demucs,
|
| 27 |
+
float16 for ZFTurbo.
|
| 28 |
+
|
| 29 |
+
RoFormer checks used two overlapping windows. Demucs checks used two shifts, a fixed seed of
|
| 30 |
+
zero, and 25% overlap. The fixed seed makes the validation runs repeatable; normal package use leaves shift selection random unless a seed is supplied. The source audio and separated
|
| 31 |
+
music are not distributed with the models.
|
| 32 |
+
|
| 33 |
+
## Automatic downloads and offline loading
|
| 34 |
+
|
| 35 |
+
The [public API integration report](validation/automatic-downloads.json) covers all seven models
|
| 36 |
+
through normal `Separator.load_model()` and `Separator.separate()` calls. Each test:
|
| 37 |
+
|
| 38 |
+
1. Starts with an empty model directory and downloads the exact repository files from a local HTTP mirror.
|
| 39 |
+
2. Loads the model using its existing package name and separates the 14-second fixture.
|
| 40 |
+
3. Blocks all network connections, creates a new separator, and loads the same cache using the short catalog ID.
|
| 41 |
+
4. Verifies full-length, finite output and bit-identical unquantized stems between both runs.
|
| 42 |
+
|
| 43 |
+
PyTorch, ONNX, and ONNX Runtime imports are blocked throughout. The test checks actual audio writes
|
| 44 |
+
and confirms that each model file is requested exactly once. This exercises download and cache
|
| 45 |
+
behavior independently of Hugging Face availability. The report records the tested implementation's
|
| 46 |
+
source hashes and identifies the local mirror as the download source.
|
| 47 |
+
|
| 48 |
+
CPU tests additionally cover corrupt downloads and caches, interrupted transfers, concurrent
|
| 49 |
+
first use, offline cache misses, older cache reuse, and unchanged routing for other models.
|
| 50 |
+
|
| 51 |
+
## Earlier reference comparisons
|
| 52 |
+
|
| 53 |
+
The following evidence comes from the separator projects' reference tests, independently of
|
| 54 |
+
the catalog packaging checks. PyTorch references use the original
|
| 55 |
+
[python-audio-separator](https://github.com/nomadkaraoke/python-audio-separator).
|
| 56 |
+
|
| 57 |
+
- **BS-RoFormer-SW:** the standard core passes real-checkpoint tests against native
|
| 58 |
+
python-audio-separator references and cross-repository consistency checks. Earlier full-track
|
| 59 |
+
PCM comparisons include near-silent relative-error exceptions bounded by one PCM16 step.
|
| 60 |
+
- **InstV7n and Inst HQ3:** a twelve-track comparison on two hosts passed relative L2 ≤ 0.05
|
| 61 |
+
for every compared stem. The worst values were 0.0120522 and 0.0047207, respectively.
|
| 62 |
+
- **HTDemucs and HTDemucs_FT:** full-track controls with identical shift offsets, following the
|
| 63 |
+
normalization correction, had worst relative L2 errors of 0.000775014 and 0.00106586.
|
| 64 |
+
These are single-track controls. Other corpus comparisons include stochastic shift differences.
|
| 65 |
+
- **HTDemucs_6s:** the existing Demucs model publication reports source-checkpoint parity.
|
| 66 |
+
The catalog check adds offline six-stem inference and exact file verification; it does not
|
| 67 |
+
rerun the PyTorch reference comparison.
|
| 68 |
+
- **ZFTurbo Vocals v1:** earlier release tests cover both stems, overlap, input sample rates,
|
| 69 |
+
and mixture reconstruction. This catalog uses the same published float16 conversion.
|
| 70 |
+
|
| 71 |
+
Detailed methods and results are in the mlx-audio-separator
|
| 72 |
+
[performance report](https://github.com/ssmall256/mlx-audio-separator/blob/main/docs/performance-snapshot.md),
|
| 73 |
+
[release validation](https://github.com/ssmall256/mlx-audio-separator/blob/main/docs/release-validation.md),
|
| 74 |
+
and [RoFormer core documentation](https://github.com/ssmall256/mlx-audio-separator/blob/main/docs/roformer-core.md).
|
| 75 |
+
|
| 76 |
+
## Interpreting the results
|
| 77 |
+
|
| 78 |
+
The catalog checks verify that the packaged files load and preserve the tested MLX behavior.
|
| 79 |
+
They do not provide a new ground-truth SDR score, guarantee separation quality on every song,
|
| 80 |
+
or establish a speedup from the recorded validation wall times. Bit-identical conversion
|
| 81 |
+
results describe original-MLX versus safetensors-MLX outputs, not MLX versus PyTorch.
|
| 82 |
+
|
| 83 |
+
The [manifest](catalog.json) records source identities, runtime versions, and conversion source
|
| 84 |
+
fingerprints. The model cards list file hashes, and `SHA256SUMS` covers the distributed files.
|
cards/bs-roformer-sw.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# BS-RoFormer-SW
|
| 2 |
+
|
| 3 |
+
A six-stem BS-RoFormer model for separating bass, drums, other instruments, vocals, guitar, and piano. These float32 safetensors run directly in MLX on Apple Silicon.
|
| 4 |
+
|
| 5 |
+
| Property | Value |
|
| 6 |
+
|---|---|
|
| 7 |
+
| Catalog ID | `bs-roformer-sw` |
|
| 8 |
+
| Existing package name | `BS-Roformer-SW.ckpt` |
|
| 9 |
+
| Output stems | bass, drums, other, vocals, guitar, piano |
|
| 10 |
+
| Output audio | Stereo, 44,100 Hz |
|
| 11 |
+
| Stored weight precision | `float32` |
|
| 12 |
+
| Download size | 666.5 MiB |
|
| 13 |
+
|
| 14 |
+
## Use this model
|
| 15 |
+
|
| 16 |
+
Install [mlx-audio-separator](../README.md#quick-start), then run:
|
| 17 |
+
|
| 18 |
+
```bash
|
| 19 |
+
mlx-audio-separator song.m4a -m bs-roformer-sw --output_dir stems
|
| 20 |
+
```
|
| 21 |
+
|
| 22 |
+
The first use automatically downloads and verifies this model's safetensors and configuration.
|
| 23 |
+
Later runs reuse the local cache. The existing name `BS-Roformer-SW.ckpt` selects the same model.
|
| 24 |
+
For Python, use `separator.load_model("bs-roformer-sw")`.
|
| 25 |
+
See [direct downloads](../README.md#direct-downloads) to prepare the files manually or use them offline.
|
| 26 |
+
|
| 27 |
+
Chunks contain 588,800 samples (about 13.35 seconds). Two overlapping windows give a half-chunk stride. Inference runs locally on Apple Silicon through `mlx-audio-separator`.
|
| 28 |
+
|
| 29 |
+
## Files and provenance
|
| 30 |
+
|
| 31 |
+
Keep the weights and configuration together in `models/bs-roformer-sw/`.
|
| 32 |
+
|
| 33 |
+
| File | Bytes | SHA-256 |
|
| 34 |
+
|---|---:|---|
|
| 35 |
+
| [`model.safetensors`](../models/bs-roformer-sw/model.safetensors) | 698,841,589 | `f95907cd5bfdbc783c1cb32f6aafc49b8b6a598477a9d4a48b4f9191c5167707` |
|
| 36 |
+
| [`config.json`](../models/bs-roformer-sw/config.json) | 4,282 | `386a86c2061536d2dca349943f1027f3ac5472ccb22b0e18bd528519b90f8931` |
|
| 37 |
+
|
| 38 |
+
The [catalog manifest](../catalog.json) records source hashes, conversion details, and immutable
|
| 39 |
+
upstream revisions where applicable. [Original source artifacts](https://github.com/nomadkaraoke/python-audio-separator/releases/download/model-configs/BS-Roformer-SW.ckpt).
|
| 40 |
+
|
| 41 |
+
## Validation
|
| 42 |
+
|
| 43 |
+
The [inference report](../validation/bs-roformer-sw.json) records 6 finite,
|
| 44 |
+
full-length stereo stems from a 14-second real-music excerpt with overlapping chunks.
|
| 45 |
+
Network access and PyTorch, ONNX, and ONNX Runtime imports were disabled during the check.
|
| 46 |
+
|
| 47 |
+
All unquantized output samples were **bit-identical** to the original checkpoint loaded through the same MLX implementation.
|
| 48 |
+
|
| 49 |
+
The normal package API also passed first-use download and offline inference checks with
|
| 50 |
+
bit-identical output; see the [automatic-download report](../validation/automatic-downloads.json).
|
| 51 |
+
|
| 52 |
+
See [Validation details](../VALIDATION.md) for the scope of these checks and earlier reference
|
| 53 |
+
comparisons. This packaging check does not provide a new separation-quality score or speed benchmark.
|
| 54 |
+
|
| 55 |
+
## License and attribution
|
| 56 |
+
|
| 57 |
+
The source catalog credits **jarredou**. **enerjazzer** hosts the fixed source checkpoint. The [source model card](https://huggingface.co/enerjazzer/BS-ROFO-SW-Fixed/tree/a443a2985534b3bc815ef54a5d446c6a0390f974) explicitly lists the weight license as **unknown**. The catalog helper's MIT license does not establish a license for these weights.
|
| 58 |
+
|
| 59 |
+
See the [collection's licensing and credits](../README.md#licensing-and-credit) for additional sources.
|
cards/htdemucs.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# HTDemucs
|
| 2 |
+
|
| 3 |
+
The four-stem Hybrid Transformer Demucs model: drums, bass, other instruments, and vocals. This entry contains the float32 MLX conversion from ssmall256/demucs-mlx.
|
| 4 |
+
|
| 5 |
+
| Property | Value |
|
| 6 |
+
|---|---|
|
| 7 |
+
| Catalog ID | `htdemucs` |
|
| 8 |
+
| Existing package name | `htdemucs.yaml` |
|
| 9 |
+
| Output stems | drums, bass, other, vocals |
|
| 10 |
+
| Output audio | Stereo, 44,100 Hz |
|
| 11 |
+
| Stored weight precision | `float32` |
|
| 12 |
+
| Download size | 160.2 MiB |
|
| 13 |
+
|
| 14 |
+
## Use this model
|
| 15 |
+
|
| 16 |
+
Install [mlx-audio-separator](../README.md#quick-start), then run:
|
| 17 |
+
|
| 18 |
+
```bash
|
| 19 |
+
mlx-audio-separator song.m4a -m htdemucs --output_dir stems
|
| 20 |
+
```
|
| 21 |
+
|
| 22 |
+
The first use automatically downloads and verifies this model's safetensors and configuration.
|
| 23 |
+
Later runs reuse the local cache. The existing name `htdemucs.yaml` selects the same model.
|
| 24 |
+
For Python, use `separator.load_model("htdemucs")`.
|
| 25 |
+
See [direct downloads](../README.md#direct-downloads) to prepare the files manually or use them offline.
|
| 26 |
+
|
| 27 |
+
The package uses two shifts and 25% overlap. Set `--demucs_seed 0` for repeatable shift selection. Inference runs locally on Apple Silicon through `mlx-audio-separator`.
|
| 28 |
+
|
| 29 |
+
## Files and provenance
|
| 30 |
+
|
| 31 |
+
Keep the weights and configuration together in `models/htdemucs/`.
|
| 32 |
+
|
| 33 |
+
| File | Bytes | SHA-256 |
|
| 34 |
+
|---|---:|---|
|
| 35 |
+
| [`htdemucs.safetensors`](../models/htdemucs/htdemucs.safetensors) | 168,005,865 | `339d267a7a6983a11eedbdc00413c602a65e9b9103f695fb5c2b2a481cd9d297` |
|
| 36 |
+
| [`htdemucs_config.json`](../models/htdemucs/htdemucs_config.json) | 4,215 | `23657b19db14771aecf366ceedbf846c1386836c10043c97f4569acf05526b78` |
|
| 37 |
+
| [`LICENSE`](../models/htdemucs/LICENSE) | 1,117 | `15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51` |
|
| 38 |
+
|
| 39 |
+
The [catalog manifest](../catalog.json) records source hashes, conversion details, and immutable
|
| 40 |
+
upstream revisions where applicable. [Original source artifacts](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e).
|
| 41 |
+
|
| 42 |
+
## Validation
|
| 43 |
+
|
| 44 |
+
The [inference report](../validation/htdemucs.json) records 4 finite,
|
| 45 |
+
full-length stereo stems from a 14-second real-music excerpt with overlapping chunks.
|
| 46 |
+
Network access and PyTorch, ONNX, and ONNX Runtime imports were disabled during the check.
|
| 47 |
+
|
| 48 |
+
Weights and configuration match the pinned published files by SHA-256. The original precision and file contents are unchanged.
|
| 49 |
+
|
| 50 |
+
The normal package API also passed first-use download and offline inference checks with
|
| 51 |
+
bit-identical output; see the [automatic-download report](../validation/automatic-downloads.json).
|
| 52 |
+
|
| 53 |
+
See [Validation details](../VALIDATION.md) for the scope of these checks and earlier reference
|
| 54 |
+
comparisons. This packaging check does not provide a new separation-quality score or speed benchmark.
|
| 55 |
+
|
| 56 |
+
## License and attribution
|
| 57 |
+
|
| 58 |
+
**Meta and the Demucs contributors** developed the original model. The pinned [Demucs MLX model repository](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e) declares **MIT**. The accompanying [license notice](../models/htdemucs/LICENSE) is included unchanged.
|
| 59 |
+
|
| 60 |
+
See the [collection's licensing and credits](../README.md#licensing-and-credit) for additional sources.
|
cards/htdemucs_6s.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# HTDemucs_6s
|
| 2 |
+
|
| 3 |
+
The six-stem Hybrid Transformer Demucs model adds guitar and piano to drums, bass, other instruments, and vocals. This entry contains the float32 MLX conversion from ssmall256/demucs-mlx.
|
| 4 |
+
|
| 5 |
+
| Property | Value |
|
| 6 |
+
|---|---|
|
| 7 |
+
| Catalog ID | `htdemucs_6s` |
|
| 8 |
+
| Existing package name | `htdemucs_6s.yaml` |
|
| 9 |
+
| Output stems | drums, bass, other, vocals, guitar, piano |
|
| 10 |
+
| Output audio | Stereo, 44,100 Hz |
|
| 11 |
+
| Stored weight precision | `float32` |
|
| 12 |
+
| Download size | 104.6 MiB |
|
| 13 |
+
|
| 14 |
+
## Use this model
|
| 15 |
+
|
| 16 |
+
Install [mlx-audio-separator](../README.md#quick-start), then run:
|
| 17 |
+
|
| 18 |
+
```bash
|
| 19 |
+
mlx-audio-separator song.m4a -m htdemucs_6s --output_dir stems
|
| 20 |
+
```
|
| 21 |
+
|
| 22 |
+
The first use automatically downloads and verifies this model's safetensors and configuration.
|
| 23 |
+
Later runs reuse the local cache. The existing name `htdemucs_6s.yaml` selects the same model.
|
| 24 |
+
For Python, use `separator.load_model("htdemucs_6s")`.
|
| 25 |
+
See [direct downloads](../README.md#direct-downloads) to prepare the files manually or use them offline.
|
| 26 |
+
|
| 27 |
+
The package uses two shifts and 25% overlap. Set `--demucs_seed 0` for repeatable shift selection. Inference runs locally on Apple Silicon through `mlx-audio-separator`.
|
| 28 |
+
|
| 29 |
+
## Files and provenance
|
| 30 |
+
|
| 31 |
+
Keep the weights and configuration together in `models/htdemucs_6s/`.
|
| 32 |
+
|
| 33 |
+
| File | Bytes | SHA-256 |
|
| 34 |
+
|---|---:|---|
|
| 35 |
+
| [`htdemucs_6s.safetensors`](../models/htdemucs_6s/htdemucs_6s.safetensors) | 109,726,583 | `d298f7f746bf53c21baad44fb08e88807ef47feb551dd22f1601a546c85b8e02` |
|
| 36 |
+
| [`htdemucs_6s_config.json`](../models/htdemucs_6s/htdemucs_6s_config.json) | 4,302 | `d5e18c0209be583027d6eb5ec3013a02cd7ef55bc3096e644d8d3577d92e9bd0` |
|
| 37 |
+
| [`LICENSE`](../models/htdemucs_6s/LICENSE) | 1,117 | `15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51` |
|
| 38 |
+
|
| 39 |
+
The [catalog manifest](../catalog.json) records source hashes, conversion details, and immutable
|
| 40 |
+
upstream revisions where applicable. [Original source artifacts](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e).
|
| 41 |
+
|
| 42 |
+
## Validation
|
| 43 |
+
|
| 44 |
+
The [inference report](../validation/htdemucs_6s.json) records 6 finite,
|
| 45 |
+
full-length stereo stems from a 14-second real-music excerpt with overlapping chunks.
|
| 46 |
+
Network access and PyTorch, ONNX, and ONNX Runtime imports were disabled during the check.
|
| 47 |
+
|
| 48 |
+
Weights and configuration match the pinned published files by SHA-256. The original precision and file contents are unchanged.
|
| 49 |
+
|
| 50 |
+
The normal package API also passed first-use download and offline inference checks with
|
| 51 |
+
bit-identical output; see the [automatic-download report](../validation/automatic-downloads.json).
|
| 52 |
+
|
| 53 |
+
See [Validation details](../VALIDATION.md) for the scope of these checks and earlier reference
|
| 54 |
+
comparisons. This packaging check does not provide a new separation-quality score or speed benchmark.
|
| 55 |
+
|
| 56 |
+
## License and attribution
|
| 57 |
+
|
| 58 |
+
**Meta and the Demucs contributors** developed the original model. The pinned [Demucs MLX model repository](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e) declares **MIT**. The accompanying [license notice](../models/htdemucs_6s/LICENSE) is included unchanged.
|
| 59 |
+
|
| 60 |
+
See the [collection's licensing and credits](../README.md#licensing-and-credit) for additional sources.
|
cards/htdemucs_ft.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# HTDemucs_FT
|
| 2 |
+
|
| 3 |
+
The fine-tuned four-stem Hybrid Transformer Demucs ensemble. It uses a specialist model for each of drums, bass, other instruments, and vocals. This entry contains the float32 MLX conversion from ssmall256/demucs-mlx.
|
| 4 |
+
|
| 5 |
+
| Property | Value |
|
| 6 |
+
|---|---|
|
| 7 |
+
| Catalog ID | `htdemucs_ft` |
|
| 8 |
+
| Existing package name | `htdemucs_ft.yaml` |
|
| 9 |
+
| Output stems | drums, bass, other, vocals |
|
| 10 |
+
| Output audio | Stereo, 44,100 Hz |
|
| 11 |
+
| Stored weight precision | `float32` |
|
| 12 |
+
| Download size | 640.9 MiB |
|
| 13 |
+
|
| 14 |
+
## Use this model
|
| 15 |
+
|
| 16 |
+
Install [mlx-audio-separator](../README.md#quick-start), then run:
|
| 17 |
+
|
| 18 |
+
```bash
|
| 19 |
+
mlx-audio-separator song.m4a -m htdemucs_ft --output_dir stems
|
| 20 |
+
```
|
| 21 |
+
|
| 22 |
+
The first use automatically downloads and verifies this model's safetensors and configuration.
|
| 23 |
+
Later runs reuse the local cache. The existing name `htdemucs_ft.yaml` selects the same model.
|
| 24 |
+
For Python, use `separator.load_model("htdemucs_ft")`.
|
| 25 |
+
See [direct downloads](../README.md#direct-downloads) to prepare the files manually or use them offline.
|
| 26 |
+
|
| 27 |
+
The package runs all four specialists with two shifts and 25% overlap. Set `--demucs_seed 0` for repeatable shift selection. Inference runs locally on Apple Silicon through `mlx-audio-separator`.
|
| 28 |
+
|
| 29 |
+
## Files and provenance
|
| 30 |
+
|
| 31 |
+
Keep the weights and configuration together in `models/htdemucs_ft/`.
|
| 32 |
+
|
| 33 |
+
| File | Bytes | SHA-256 |
|
| 34 |
+
|---|---:|---|
|
| 35 |
+
| [`htdemucs_ft.safetensors`](../models/htdemucs_ft/htdemucs_ft.safetensors) | 672,024,519 | `53f03b1ad4b4d211025a35da65460ba61a17547adf9c0544cad0ebcc8d7bbabb` |
|
| 36 |
+
| [`htdemucs_ft_config.json`](../models/htdemucs_ft/htdemucs_ft_config.json) | 10,253 | `6708535a698d4d4dd285a6f0a80d9d3c228fdd6514e53bdf1ddbc2ee9b0fa872` |
|
| 37 |
+
| [`LICENSE`](../models/htdemucs_ft/LICENSE) | 1,117 | `15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51` |
|
| 38 |
+
|
| 39 |
+
The [catalog manifest](../catalog.json) records source hashes, conversion details, and immutable
|
| 40 |
+
upstream revisions where applicable. [Original source artifacts](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e).
|
| 41 |
+
|
| 42 |
+
## Validation
|
| 43 |
+
|
| 44 |
+
The [inference report](../validation/htdemucs_ft.json) records 4 finite,
|
| 45 |
+
full-length stereo stems from a 14-second real-music excerpt with overlapping chunks.
|
| 46 |
+
Network access and PyTorch, ONNX, and ONNX Runtime imports were disabled during the check.
|
| 47 |
+
|
| 48 |
+
Weights and configuration match the pinned published files by SHA-256. The original precision and file contents are unchanged.
|
| 49 |
+
|
| 50 |
+
The normal package API also passed first-use download and offline inference checks with
|
| 51 |
+
bit-identical output; see the [automatic-download report](../validation/automatic-downloads.json).
|
| 52 |
+
|
| 53 |
+
See [Validation details](../VALIDATION.md) for the scope of these checks and earlier reference
|
| 54 |
+
comparisons. This packaging check does not provide a new separation-quality score or speed benchmark.
|
| 55 |
+
|
| 56 |
+
## License and attribution
|
| 57 |
+
|
| 58 |
+
**Meta and the Demucs contributors** developed the original models. The pinned [Demucs MLX model repository](https://huggingface.co/ssmall256/demucs-mlx/tree/35ecb1a906ec420b1a28069db575ad070d35860e) declares **MIT**. The accompanying [license notice](../models/htdemucs_ft/LICENSE) is included unchanged.
|
| 59 |
+
|
| 60 |
+
See the [collection's licensing and credits](../README.md#licensing-and-credit) for additional sources.
|
cards/mel-roformer-instv7n.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Mel-RoFormer InstV7n (Gabox)
|
| 2 |
+
|
| 3 |
+
An instrumental and vocal separation model by Gabox, converted to float32 safetensors for MLX inference on Apple Silicon.
|
| 4 |
+
|
| 5 |
+
| Property | Value |
|
| 6 |
+
|---|---|
|
| 7 |
+
| Catalog ID | `mel-roformer-instv7n` |
|
| 8 |
+
| Existing package name | `mel_band_roformer_instrumental_instv7n_gabox.ckpt` |
|
| 9 |
+
| Output stems | Instrumental, Vocals |
|
| 10 |
+
| Output audio | Stereo, 44,100 Hz |
|
| 11 |
+
| Stored weight precision | `float32` |
|
| 12 |
+
| Download size | 870.6 MiB |
|
| 13 |
+
|
| 14 |
+
## Use this model
|
| 15 |
+
|
| 16 |
+
Install [mlx-audio-separator](../README.md#quick-start), then run:
|
| 17 |
+
|
| 18 |
+
```bash
|
| 19 |
+
mlx-audio-separator song.m4a -m mel-roformer-instv7n --output_dir stems
|
| 20 |
+
```
|
| 21 |
+
|
| 22 |
+
The first use automatically downloads and verifies this model's safetensors and configuration.
|
| 23 |
+
Later runs reuse the local cache. The existing name `mel_band_roformer_instrumental_instv7n_gabox.ckpt` selects the same model.
|
| 24 |
+
For Python, use `separator.load_model("mel-roformer-instv7n")`.
|
| 25 |
+
See [direct downloads](../README.md#direct-downloads) to prepare the files manually or use them offline.
|
| 26 |
+
|
| 27 |
+
Chunks contain 485,100 samples (11 seconds). Two overlapping windows give a half-chunk stride. Inference runs locally on Apple Silicon through `mlx-audio-separator`.
|
| 28 |
+
|
| 29 |
+
## Files and provenance
|
| 30 |
+
|
| 31 |
+
Keep the weights and configuration together in `models/mel-roformer-instv7n/`.
|
| 32 |
+
|
| 33 |
+
| File | Bytes | SHA-256 |
|
| 34 |
+
|---|---:|---|
|
| 35 |
+
| [`model.safetensors`](../models/mel-roformer-instv7n/model.safetensors) | 912,889,223 | `74397de5395ed372059b971d6398106f60d92373ada69b62e986e52c9697a5ba` |
|
| 36 |
+
| [`config.json`](../models/mel-roformer-instv7n/config.json) | 1,150 | `cd8548fd6a1345cfd0c51970919e15e7262cee954b6ff45bb016ed1364be38c5` |
|
| 37 |
+
|
| 38 |
+
The [catalog manifest](../catalog.json) records source hashes, conversion details, and immutable
|
| 39 |
+
upstream revisions where applicable. [Original source artifacts](https://github.com/nomadkaraoke/python-audio-separator/releases/download/model-configs/mel_band_roformer_instrumental_instv7n_gabox.ckpt).
|
| 40 |
+
|
| 41 |
+
## Validation
|
| 42 |
+
|
| 43 |
+
The [inference report](../validation/mel-roformer-instv7n.json) records 2 finite,
|
| 44 |
+
full-length stereo stems from a 14-second real-music excerpt with overlapping chunks.
|
| 45 |
+
Network access and PyTorch, ONNX, and ONNX Runtime imports were disabled during the check.
|
| 46 |
+
|
| 47 |
+
All unquantized output samples were **bit-identical** to the original checkpoint loaded through the same MLX implementation.
|
| 48 |
+
|
| 49 |
+
The normal package API also passed first-use download and offline inference checks with
|
| 50 |
+
bit-identical output; see the [automatic-download report](../validation/automatic-downloads.json).
|
| 51 |
+
|
| 52 |
+
See [Validation details](../VALIDATION.md) for the scope of these checks and earlier reference
|
| 53 |
+
comparisons. This packaging check does not provide a new separation-quality score or speed benchmark.
|
| 54 |
+
|
| 55 |
+
## License and attribution
|
| 56 |
+
|
| 57 |
+
The checkpoint is credited to **Gabox** and distributed through the upstream **python-audio-separator** model-configs release. No weight-specific redistribution license is recorded in the source metadata. The catalog helper's MIT license applies to its code only.
|
| 58 |
+
|
| 59 |
+
See the [collection's licensing and credits](../README.md#licensing-and-credit) for additional sources.
|
cards/mel-roformer-zfturbo-vocals-v1.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# ZFTurbo Mel-RoFormer Vocals v1
|
| 2 |
+
|
| 3 |
+
A vocal separation model by Roman Solovyev (ZFTurbo). The separator predicts vocals and derives the instrumental from the mixture. This entry preserves the published mlx-community float16 conversion.
|
| 4 |
+
|
| 5 |
+
| Property | Value |
|
| 6 |
+
|---|---|
|
| 7 |
+
| Catalog ID | `mel-roformer-zfturbo-vocals-v1` |
|
| 8 |
+
| Existing package name | `mel-roformer-zfturbo-vocals-v1-mlx` |
|
| 9 |
+
| Output stems | Vocals, Instrumental |
|
| 10 |
+
| Output audio | Stereo, 44,100 Hz |
|
| 11 |
+
| Stored weight precision | `float16` |
|
| 12 |
+
| Download size | 64.3 MiB |
|
| 13 |
+
|
| 14 |
+
## Use this model
|
| 15 |
+
|
| 16 |
+
Install [mlx-audio-separator](../README.md#quick-start), then run:
|
| 17 |
+
|
| 18 |
+
```bash
|
| 19 |
+
mlx-audio-separator song.m4a -m mel-roformer-zfturbo-vocals-v1 --output_dir stems
|
| 20 |
+
```
|
| 21 |
+
|
| 22 |
+
The first use automatically downloads and verifies this model's safetensors and configuration.
|
| 23 |
+
Later runs reuse the local cache. The existing name `mel-roformer-zfturbo-vocals-v1-mlx` selects the same model.
|
| 24 |
+
For Python, use `separator.load_model("mel-roformer-zfturbo-vocals-v1")`.
|
| 25 |
+
See [direct downloads](../README.md#direct-downloads) to prepare the files manually or use them offline.
|
| 26 |
+
|
| 27 |
+
Chunks contain 352,800 samples (8 seconds). Two overlapping windows give a half-chunk stride. Output is always 44.1 kHz. Inference runs locally on Apple Silicon through `mlx-audio-separator`.
|
| 28 |
+
|
| 29 |
+
## Files and provenance
|
| 30 |
+
|
| 31 |
+
Keep the weights and configuration together in `models/mel-roformer-zfturbo-vocals-v1/`.
|
| 32 |
+
|
| 33 |
+
| File | Bytes | SHA-256 |
|
| 34 |
+
|---|---:|---|
|
| 35 |
+
| [`model.safetensors`](../models/mel-roformer-zfturbo-vocals-v1/model.safetensors) | 67,402,202 | `ef4aa052845a868cfaff93611477bd8f54d8081bc32f2742a9b3c738f0821191` |
|
| 36 |
+
| [`config.json`](../models/mel-roformer-zfturbo-vocals-v1/config.json) | 1,016 | `d110ed4713b403d27e2ae6c7796b1a864576232de4a2070e9762108ca197caa6` |
|
| 37 |
+
| [`LICENSE`](../models/mel-roformer-zfturbo-vocals-v1/LICENSE) | 1,779 | `2b55ae02dcfe9ac8454c41c5e235175512db7429ee7275bab4c4e566b3f80597` |
|
| 38 |
+
|
| 39 |
+
The [catalog manifest](../catalog.json) records source hashes, conversion details, and immutable
|
| 40 |
+
upstream revisions where applicable. [Original source artifacts](https://huggingface.co/mlx-community/mel-roformer-zfturbo-vocals-v1-mlx/tree/01bef2daebedf39937f552d6da68340fc979c9a0).
|
| 41 |
+
|
| 42 |
+
## Validation
|
| 43 |
+
|
| 44 |
+
The [inference report](../validation/mel-roformer-zfturbo-vocals-v1.json) records 2 finite,
|
| 45 |
+
full-length stereo stems from a 14-second real-music excerpt with overlapping chunks.
|
| 46 |
+
Network access and PyTorch, ONNX, and ONNX Runtime imports were disabled during the check.
|
| 47 |
+
|
| 48 |
+
Weights and configuration match the pinned published files by SHA-256. The original precision and file contents are unchanged.
|
| 49 |
+
|
| 50 |
+
The normal package API also passed first-use download and offline inference checks with
|
| 51 |
+
bit-identical output; see the [automatic-download report](../validation/automatic-downloads.json).
|
| 52 |
+
|
| 53 |
+
See [Validation details](../VALIDATION.md) for the scope of these checks and earlier reference
|
| 54 |
+
comparisons. This packaging check does not provide a new separation-quality score or speed benchmark.
|
| 55 |
+
|
| 56 |
+
## License and attribution
|
| 57 |
+
|
| 58 |
+
The original checkpoint is by **Roman Solovyev (ZFTurbo)**; the existing MLX conversion is from **mlx-community**. Its [model card](https://huggingface.co/mlx-community/mel-roformer-zfturbo-vocals-v1-mlx/tree/01bef2daebedf39937f552d6da68340fc979c9a0) declares **MIT**, noting that the source license was added after the checkpoint release and that explicit retroactive author confirmation was not collected. The [license notice](../models/mel-roformer-zfturbo-vocals-v1/LICENSE) preserves that caveat.
|
| 59 |
+
|
| 60 |
+
See the [collection's licensing and credits](../README.md#licensing-and-credit) for additional sources.
|
cards/uvr-mdx-net-inst-hq3.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# UVR-MDX-NET Inst HQ3
|
| 2 |
+
|
| 3 |
+
An instrumental and vocal separation model from the UVR catalog. This float32 safetensors conversion runs in MLX and does not require ONNX Runtime.
|
| 4 |
+
|
| 5 |
+
| Property | Value |
|
| 6 |
+
|---|---|
|
| 7 |
+
| Catalog ID | `uvr-mdx-net-inst-hq3` |
|
| 8 |
+
| Existing package name | `UVR-MDX-NET-Inst_HQ_3.onnx` |
|
| 9 |
+
| Output stems | Instrumental, Vocals |
|
| 10 |
+
| Output audio | Stereo, 44,100 Hz |
|
| 11 |
+
| Stored weight precision | `float32` |
|
| 12 |
+
| Download size | 63.8 MiB |
|
| 13 |
+
|
| 14 |
+
## Use this model
|
| 15 |
+
|
| 16 |
+
Install [mlx-audio-separator](../README.md#quick-start), then run:
|
| 17 |
+
|
| 18 |
+
```bash
|
| 19 |
+
mlx-audio-separator song.m4a -m uvr-mdx-net-inst-hq3 --output_dir stems
|
| 20 |
+
```
|
| 21 |
+
|
| 22 |
+
The first use automatically downloads and verifies this model's safetensors and configuration.
|
| 23 |
+
Later runs reuse the local cache. The existing name `UVR-MDX-NET-Inst_HQ_3.onnx` selects the same model.
|
| 24 |
+
For Python, use `separator.load_model("uvr-mdx-net-inst-hq3")`.
|
| 25 |
+
See [direct downloads](../README.md#direct-downloads) to prepare the files manually or use them offline.
|
| 26 |
+
|
| 27 |
+
The package uses 25% overlap and a segment size of 256. Inference runs locally on Apple Silicon through `mlx-audio-separator`.
|
| 28 |
+
|
| 29 |
+
## Files and provenance
|
| 30 |
+
|
| 31 |
+
Keep the weights and configuration together in `models/uvr-mdx-net-inst-hq3/`.
|
| 32 |
+
|
| 33 |
+
| File | Bytes | SHA-256 |
|
| 34 |
+
|---|---:|---|
|
| 35 |
+
| [`model.safetensors`](../models/uvr-mdx-net-inst-hq3/model.safetensors) | 66,871,394 | `72c307239fbc415c9f3c1ef83fee38d19ac98b4b893f1a5afc4345296f48eea8` |
|
| 36 |
+
| [`config.json`](../models/uvr-mdx-net-inst-hq3/config.json) | 204 | `d8df573c2b0248e3ce77eb8f0fc3c528c9db5368f38335e249e25e05e84415ba` |
|
| 37 |
+
|
| 38 |
+
The [catalog manifest](../catalog.json) records source hashes, conversion details, and immutable
|
| 39 |
+
upstream revisions where applicable. [Original source artifacts](https://github.com/TRvlvr/model_repo/releases/download/all_public_uvr_models/UVR-MDX-NET-Inst_HQ_3.onnx).
|
| 40 |
+
|
| 41 |
+
## Validation
|
| 42 |
+
|
| 43 |
+
The [inference report](../validation/uvr-mdx-net-inst-hq3.json) records 2 finite,
|
| 44 |
+
full-length stereo stems from a 14-second real-music excerpt with overlapping chunks.
|
| 45 |
+
Network access and PyTorch, ONNX, and ONNX Runtime imports were disabled during the check.
|
| 46 |
+
|
| 47 |
+
All unquantized output samples were **bit-identical** to the original checkpoint loaded through the same MLX implementation.
|
| 48 |
+
|
| 49 |
+
The normal package API also passed first-use download and offline inference checks with
|
| 50 |
+
bit-identical output; see the [automatic-download report](../validation/automatic-downloads.json).
|
| 51 |
+
|
| 52 |
+
See [Validation details](../VALIDATION.md) for the scope of these checks and earlier reference
|
| 53 |
+
comparisons. This packaging check does not provide a new separation-quality score or speed benchmark.
|
| 54 |
+
|
| 55 |
+
## License and attribution
|
| 56 |
+
|
| 57 |
+
The checkpoint comes from the **TRvlvr/UVR** public model release. No weight-specific redistribution license is recorded in the source metadata. The catalog helper's MIT license applies to its code only.
|
| 58 |
+
|
| 59 |
+
See the [collection's licensing and credits](../README.md#licensing-and-credit) for additional sources.
|
catalog.json
ADDED
|
@@ -0,0 +1,552 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"catalog_version": "1-draft",
|
| 3 |
+
"conversion": {
|
| 4 |
+
"base_commit": "95a1effb864700a4156f1e199771b58c89da8848",
|
| 5 |
+
"repository": "https://github.com/ssmall256/mlx-audio-separator",
|
| 6 |
+
"source_sha256": {
|
| 7 |
+
"mlx_audio_separator/__init__.py": "7a60ef69c42996da1512c584a0fced4282d96b493aff9b7522d043f36556f9c0",
|
| 8 |
+
"mlx_audio_separator/__main__.py": "86f9909b5db882b7c1f51007adac5ebe62c24d22f224cc9d2fa521e4529cfbe5",
|
| 9 |
+
"mlx_audio_separator/core.py": "6b00478e07f69a5b3a35dfce683ebc42bdd2ac66fe6855557c48a7ddb56615ca",
|
| 10 |
+
"mlx_audio_separator/demucs_mlx/__init__.py": "1cb0541a734668ef204bd3a8bb9e4efeea0f32488b2e0ee0db114ee15941a232",
|
| 11 |
+
"mlx_audio_separator/demucs_mlx/api.py": "e1328d71c1d81fe5159504ede9f317dc8753230a7abffac391803588ae74fab9",
|
| 12 |
+
"mlx_audio_separator/demucs_mlx/apply_mlx.py": "43b9d6b674e53054a6190ff5958c63f9bbdd0e15d44d09646988bb4fa6dfed78",
|
| 13 |
+
"mlx_audio_separator/demucs_mlx/audio.py": "0a419eccc33ab537a9626179d7fc480954a38591c25330d26a6a9b0d2c9806a1",
|
| 14 |
+
"mlx_audio_separator/demucs_mlx/defaults.py": "207c6b62b8fe2927fb7e126f19899fca2cecb07bb7d68869eb0333cf03b7e030",
|
| 15 |
+
"mlx_audio_separator/demucs_mlx/hardware.py": "c8b91faa395528e9a98e7b35a394370fb47b609a1cd0433e2bc63974108ce69a",
|
| 16 |
+
"mlx_audio_separator/demucs_mlx/hub.py": "0ea01ab32275e5607fd47a8ce528b2ee7c9f7fec8d1e27ec294e3bab6dc37599",
|
| 17 |
+
"mlx_audio_separator/demucs_mlx/interop.py": "8c3b7c55e4b0117b9d830ea77f48979793d57d5c7c016b7fcf0036c4f9e232ab",
|
| 18 |
+
"mlx_audio_separator/demucs_mlx/io_pipeline.py": "c7c45d79cbde7d66f9f68d94a83855cf1e5fe36b256907ac36f325a4c27d463c",
|
| 19 |
+
"mlx_audio_separator/demucs_mlx/metal_kernels.py": "8dfb6f1db487b83752d4c2ec1d89f59241d7f0d28a247da4e8709208b02c8576",
|
| 20 |
+
"mlx_audio_separator/demucs_mlx/mlx_backend.py": "e4819443d771187f4b75f297b3b378568b93cc6b1c1b4cc1a568391e7d7bced0",
|
| 21 |
+
"mlx_audio_separator/demucs_mlx/mlx_convert.py": "c8a9d899cccc57306d27c9ae1de3c0f6fbdb624acbe855fcdfdc621a96ed1035",
|
| 22 |
+
"mlx_audio_separator/demucs_mlx/mlx_demucs.py": "0f6db07f2d8a1dff9bf4852b00135c8f06fe559a6e29a8ca3d40306d6c6bf4f0",
|
| 23 |
+
"mlx_audio_separator/demucs_mlx/mlx_hdemucs.py": "9371d5859977443b47a271e5b6e3550f21d022517a05cdae64d66922ce4d8f6e",
|
| 24 |
+
"mlx_audio_separator/demucs_mlx/mlx_htdemucs.py": "628d2aec74e8e6293d7b8983dcc84f8cafd2af37210b5ba86db738f59af7d683",
|
| 25 |
+
"mlx_audio_separator/demucs_mlx/mlx_layers.py": "f4ce3c9e28c41027e9885a48c71c3e573475861edc7d8f8f31a4ee3683284715",
|
| 26 |
+
"mlx_audio_separator/demucs_mlx/mlx_registry.py": "d50be9d6b64a238816302439ccbc95beb1c36d7c6afc277c3bbe83d607b72adc",
|
| 27 |
+
"mlx_audio_separator/demucs_mlx/mlx_transformer.py": "213918c3c82a40fd6bf0f45f5f3f4e4a99dcaf80009d1f4916ba713398f15495",
|
| 28 |
+
"mlx_audio_separator/demucs_mlx/mlx_utils.py": "100050b061783401ec83a90e98bf78e328365e9317ededbf41aeaaeb47f0e87e",
|
| 29 |
+
"mlx_audio_separator/demucs_mlx/model_converter.py": "ee1a65d777d96a74c50bfb7068dd21653467000d411de48d85e7310b0aba0753",
|
| 30 |
+
"mlx_audio_separator/demucs_mlx/secure_demucs.py": "289736dec3dc542b5f51d15ed12b287e8a555a96b06b2947d0a25816044d2f39",
|
| 31 |
+
"mlx_audio_separator/demucs_mlx/spec_mlx.py": "6de75340baec75263049c070d3eb4e2522207f588f885bc560462681ba4ff219",
|
| 32 |
+
"mlx_audio_separator/demucs_mlx/wiener_mlx.py": "11815ee06c9dfad0b55cb62bf4dc30c8b1e668c3dbe2e4a1b12a4318c5b85950",
|
| 33 |
+
"mlx_audio_separator/hf_mel_roformer.py": "0952448f4ef881ab51b1fa6ffa163b0cd3c298ab0d710e7b942e8671a8699a80",
|
| 34 |
+
"mlx_audio_separator/separator/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
| 35 |
+
"mlx_audio_separator/separator/architectures/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
| 36 |
+
"mlx_audio_separator/separator/architectures/demucs_separator.py": "4db7cb8b4367b132bcee6eaca224bbf066107e65191180413540f06cb6f0cccc",
|
| 37 |
+
"mlx_audio_separator/separator/architectures/mdx_separator.py": "80bcae233809e62526c5af7b7fdeb334bdf0df508fe60ef7a7ed025686929269",
|
| 38 |
+
"mlx_audio_separator/separator/architectures/mdxc_separator.py": "56a3cb6cb7e68a9038020d916e87d0106ae0bbc127cda690a2b99a76857f4758",
|
| 39 |
+
"mlx_audio_separator/separator/architectures/vr_separator.py": "bdd871e9751a753691cd760c283dcecb18d6ffd7ffad506c24709cb1499e7178",
|
| 40 |
+
"mlx_audio_separator/separator/audio_chunking.py": "cbe10541fbe43744753d0d387ee933d00daf370d89142df6c6d855f67aae56bc",
|
| 41 |
+
"mlx_audio_separator/separator/common_separator.py": "ddd1370848dd919b54dec495d98aa4f50f584b8978b51249334d4a0930824d8a",
|
| 42 |
+
"mlx_audio_separator/separator/models/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
| 43 |
+
"mlx_audio_separator/separator/models/demucs/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
| 44 |
+
"mlx_audio_separator/separator/models/mdx/__init__.py": "86849f8e4283b7182f02665a04d76955519a18f6b27fd8a58e5bd3a3c80f35eb",
|
| 45 |
+
"mlx_audio_separator/separator/models/mdx/convtdfnet.py": "672c64b1df1fc4fe66ac88cfb808e8972a03125009579641cfd200d7c3e5a937",
|
| 46 |
+
"mlx_audio_separator/separator/models/mdx/loader.py": "b83cb54906c9d79563555ca1cda97ef219ed498b4e2a7985d47daca052ffe3dd",
|
| 47 |
+
"mlx_audio_separator/separator/models/mdx/stft.py": "f9bae135a03e69741b7bede6e0ef330260c0d157d5f2d56bd5cad7c8a9a6171c",
|
| 48 |
+
"mlx_audio_separator/separator/models/mdxc/__init__.py": "d11e15564dd603d03d80426e63263c2b773c63bcacfcd7207818c4316830aba2",
|
| 49 |
+
"mlx_audio_separator/separator/models/mdxc/loader.py": "6d8dbc61bff3a28b107d3b2d715ddaf0a3cf85fad901bd318c54a6d1dd1aefec",
|
| 50 |
+
"mlx_audio_separator/separator/models/mdxc/tfc_tdf_v3_mlx.py": "a7d6534f4e718e982c037b50208a155cc9fcd31aecc738d1493df6d90091e79d",
|
| 51 |
+
"mlx_audio_separator/separator/models/roformer/__init__.py": "e7c8c7e8e35933e6563109cc519882bf95de7dc5a8e2e1cc9df1e783f7be81a2",
|
| 52 |
+
"mlx_audio_separator/separator/models/roformer/_core/__init__.py": "52fcea39466efad1116323236a51e61291aae5635887acdadba5fb2b11d39dce",
|
| 53 |
+
"mlx_audio_separator/separator/models/roformer/_core/config.py": "431e5f6c333c39c32d95a03521cc8f596d435f0e037ec0e0145565e3e5ef6b1b",
|
| 54 |
+
"mlx_audio_separator/separator/models/roformer/_core/convert.py": "66407e7e581633905642612d4c8f37db221b0f5a716ea016846c85af8baff485",
|
| 55 |
+
"mlx_audio_separator/separator/models/roformer/_core/kernels.py": "462bee4bb4f1bf93648549ba5345470a090c7c2e6e7be7fcaecfdd19c94ce11c",
|
| 56 |
+
"mlx_audio_separator/separator/models/roformer/_core/model.py": "fa8673f023fff1ba7f8a3ff0c64029cfc34a197d3df2eeb71cfaaad163129adc",
|
| 57 |
+
"mlx_audio_separator/separator/models/roformer/_core/ops.py": "5bbdc9c7918d269cb3710eceaa597356ecf6162dd5351dfe959a783520f519ce",
|
| 58 |
+
"mlx_audio_separator/separator/models/roformer/_core/separate.py": "0b1e73a66ce5e3b44e6b6eade1547c0d965a39425285c933e6d81d1ff6592542",
|
| 59 |
+
"mlx_audio_separator/separator/models/roformer/_core/stft.py": "528a2e9f6590d209aa3acaba9ccde028adc048b15aaf3e0ac673fe1a8de0351e",
|
| 60 |
+
"mlx_audio_separator/separator/models/roformer/_core/torch_checkpoint.py": "daa597f98ac64243516ba1b6297a31afbf6891db46ad809d54cb2862f04f5f32",
|
| 61 |
+
"mlx_audio_separator/separator/models/roformer/attention_kernel.py": "d9fff54cf1512eb8e2d55e9764643a311d04270e160b54778d607bc9c77f4bb2",
|
| 62 |
+
"mlx_audio_separator/separator/models/roformer/bs_loader.py": "22dcd6d31b21a28e5d035f6072ec8020617f8b032eaf49f75f8808199647d46d",
|
| 63 |
+
"mlx_audio_separator/separator/models/roformer/bs_roformer.py": "5cbfa4f57c0e76d96c4a2e27557bc8aadd67d8984d0dfff8350b5274ddf2409d",
|
| 64 |
+
"mlx_audio_separator/separator/models/roformer/components.py": "95e6618ee61fdcf2f09ec4ba4a2e3ac7deccbc3934f064f5fdb45018ea3b08df",
|
| 65 |
+
"mlx_audio_separator/separator/models/roformer/gelu.py": "35289288313436e239751cb6586d68c65dc032d115d2095147725508796d599a",
|
| 66 |
+
"mlx_audio_separator/separator/models/roformer/linear_kernel.py": "0164e0a0bc411816afbd07b593281b03d5aee75a286a3cd8878e456d59feb9a7",
|
| 67 |
+
"mlx_audio_separator/separator/models/roformer/loader.py": "e2323c97a6a232f17f8f4d8cca9a19712ef9fa31d14bffdd881e36099715c2d3",
|
| 68 |
+
"mlx_audio_separator/separator/models/roformer/mel_band_roformer.py": "4d052e729bd05304f8d19658ebb836fdf6ed9cd0952ce8700d0bfa1dd253da95",
|
| 69 |
+
"mlx_audio_separator/separator/models/roformer/metal_kernels.py": "7963bed370b16fb3b4084e4a8e6c073be5a6e75484f4ed69ce6b6bd15f717f4c",
|
| 70 |
+
"mlx_audio_separator/separator/models/roformer/overlap_add_kernels.py": "2c82fdab2530de985ff808330c6fb14dcfdeec71937691ea668e9d1ef091359a",
|
| 71 |
+
"mlx_audio_separator/separator/models/roformer/stft.py": "3101c957396af8280a3b916860556a945fd51afba4e6ad7ed18cff0a5587b457",
|
| 72 |
+
"mlx_audio_separator/separator/models/vr/__init__.py": "f07c510ea41b3bf8d192f3533294b3163c77a6744e9e19ffd89c3a045273c5cc",
|
| 73 |
+
"mlx_audio_separator/separator/models/vr/layers.py": "423f28f19805aaac834772e57377dd1f73a8d1786aa071d13124d442d6384145",
|
| 74 |
+
"mlx_audio_separator/separator/models/vr/loader.py": "1492693e6fed7ded4dd83df4d20d7ae4edc2789a96fb45c9f7bdaac97cbe0f49",
|
| 75 |
+
"mlx_audio_separator/separator/models/vr/nets.py": "164694d22fb08acbfafd3c6d5f6e87ccca6858d4226ebff8e091c0eef865e3a5",
|
| 76 |
+
"mlx_audio_separator/separator/models/vr/nets_new.py": "829d34393989afcf3583c9a44bc0a134d3da7e368183efdef15e8dd974703ec2",
|
| 77 |
+
"mlx_audio_separator/separator/models/vr/spec_utils.py": "4568a617d3ffe559e6931ae33666c1bc4c838c711749765f2d249d7167b79f7c",
|
| 78 |
+
"mlx_audio_separator/utils/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
| 79 |
+
"mlx_audio_separator/utils/benchmark.py": "b644d4405dbf001f6b8d14ddf7365d685ca353f0c05aac50c6281ccfd2fd5b7f",
|
| 80 |
+
"mlx_audio_separator/utils/cli.py": "e78b2aa10b42b9c14961f6c19530ad82ae38ffda17a18071efbe0f740e62b021",
|
| 81 |
+
"mlx_audio_separator/utils/equivalence.py": "083047b70c0d046886fc08fe9a42aa9001a1d3b031d09c2aa87de3c2c24bf2d7",
|
| 82 |
+
"mlx_audio_separator/utils/performance.py": "337d037ba418abe21d6bd6206d1f6c109a603c1155c9c4e01d8b2b52b4671a6a",
|
| 83 |
+
"scripts/catalog/catalog.py": "1af4c7ae15480b4c029291af7e34c89946dfcf82c54ee3f38a0ee3769f5ca06f",
|
| 84 |
+
"scripts/catalog/prepare.py": "8c7a740c0626848eaf2662cc48619a18458b6dc362ae0656567079c963f88486"
|
| 85 |
+
},
|
| 86 |
+
"versions": {
|
| 87 |
+
"mlx": "0.32.3",
|
| 88 |
+
"mlx-audio-io": "1.3.25",
|
| 89 |
+
"mlx-audio-separator": "0.1.21",
|
| 90 |
+
"mlx-spectro": "0.10.0",
|
| 91 |
+
"numpy": "2.5.3",
|
| 92 |
+
"onnx": "1.23.0",
|
| 93 |
+
"torch": "2.14.0"
|
| 94 |
+
},
|
| 95 |
+
"working_tree_modified": true
|
| 96 |
+
},
|
| 97 |
+
"distribution_layout": "single_hub_repository",
|
| 98 |
+
"format_version": 1,
|
| 99 |
+
"models": [
|
| 100 |
+
{
|
| 101 |
+
"architecture": "MDXC",
|
| 102 |
+
"artifact_origin": "converted",
|
| 103 |
+
"config_filename": "config.json",
|
| 104 |
+
"conversion_audit": {
|
| 105 |
+
"dtypes": [
|
| 106 |
+
"mlx.core.float32"
|
| 107 |
+
],
|
| 108 |
+
"missing_parameters": [],
|
| 109 |
+
"shape_mismatches": [],
|
| 110 |
+
"tensor_count": 1939
|
| 111 |
+
},
|
| 112 |
+
"distribution": "bundled",
|
| 113 |
+
"dtype": "float32",
|
| 114 |
+
"family": "bs",
|
| 115 |
+
"files": [
|
| 116 |
+
{
|
| 117 |
+
"filename": "model.safetensors",
|
| 118 |
+
"sha256": "f95907cd5bfdbc783c1cb32f6aafc49b8b6a598477a9d4a48b4f9191c5167707",
|
| 119 |
+
"size_bytes": 698841589
|
| 120 |
+
},
|
| 121 |
+
{
|
| 122 |
+
"filename": "config.json",
|
| 123 |
+
"sha256": "386a86c2061536d2dca349943f1027f3ac5472ccb22b0e18bd528519b90f8931",
|
| 124 |
+
"size_bytes": 4282
|
| 125 |
+
}
|
| 126 |
+
],
|
| 127 |
+
"id": "bs-roformer-sw",
|
| 128 |
+
"inference_defaults": {
|
| 129 |
+
"chunk_samples": 588800,
|
| 130 |
+
"overlap_windows": 2
|
| 131 |
+
},
|
| 132 |
+
"license": {
|
| 133 |
+
"note": "Source model card explicitly lists license: unknown.",
|
| 134 |
+
"status": "unresolved"
|
| 135 |
+
},
|
| 136 |
+
"name": "BS-RoFormer-SW",
|
| 137 |
+
"sample_rate": 44100,
|
| 138 |
+
"source": {
|
| 139 |
+
"config": {
|
| 140 |
+
"filename": "BS-Roformer-SW.yaml",
|
| 141 |
+
"sha256": "b558996f1e25eb48798bd6502505a5de94c4f966d6edfb1a0420f06cc40b501a",
|
| 142 |
+
"size_bytes": 4653
|
| 143 |
+
},
|
| 144 |
+
"download_url": "https://github.com/nomadkaraoke/python-audio-separator/releases/download/model-configs/BS-Roformer-SW.ckpt",
|
| 145 |
+
"upstream": "https://huggingface.co/enerjazzer/BS-ROFO-SW-Fixed/tree/a443a2985534b3bc815ef54a5d446c6a0390f974",
|
| 146 |
+
"weights": {
|
| 147 |
+
"filename": "BS-Roformer-SW.ckpt",
|
| 148 |
+
"sha256": "24e7d35ee9c64415673d3fd33e06a67cac2c103c5df6267ba1576459c775916e",
|
| 149 |
+
"size_bytes": 699412152
|
| 150 |
+
}
|
| 151 |
+
},
|
| 152 |
+
"stems": [
|
| 153 |
+
"bass",
|
| 154 |
+
"drums",
|
| 155 |
+
"other",
|
| 156 |
+
"vocals",
|
| 157 |
+
"guitar",
|
| 158 |
+
"piano"
|
| 159 |
+
],
|
| 160 |
+
"validation": "validation/bs-roformer-sw.json",
|
| 161 |
+
"weights_filename": "model.safetensors"
|
| 162 |
+
},
|
| 163 |
+
{
|
| 164 |
+
"architecture": "MDXC",
|
| 165 |
+
"artifact_origin": "converted",
|
| 166 |
+
"config_filename": "config.json",
|
| 167 |
+
"conversion_audit": {
|
| 168 |
+
"dtypes": [
|
| 169 |
+
"mlx.core.float32"
|
| 170 |
+
],
|
| 171 |
+
"missing_parameters": [],
|
| 172 |
+
"shape_mismatches": [],
|
| 173 |
+
"tensor_count": 672
|
| 174 |
+
},
|
| 175 |
+
"distribution": "bundled",
|
| 176 |
+
"dtype": "float32",
|
| 177 |
+
"family": "mel",
|
| 178 |
+
"files": [
|
| 179 |
+
{
|
| 180 |
+
"filename": "model.safetensors",
|
| 181 |
+
"sha256": "74397de5395ed372059b971d6398106f60d92373ada69b62e986e52c9697a5ba",
|
| 182 |
+
"size_bytes": 912889223
|
| 183 |
+
},
|
| 184 |
+
{
|
| 185 |
+
"filename": "config.json",
|
| 186 |
+
"sha256": "cd8548fd6a1345cfd0c51970919e15e7262cee954b6ff45bb016ed1364be38c5",
|
| 187 |
+
"size_bytes": 1150
|
| 188 |
+
}
|
| 189 |
+
],
|
| 190 |
+
"id": "mel-roformer-instv7n",
|
| 191 |
+
"inference_defaults": {
|
| 192 |
+
"chunk_samples": 485100,
|
| 193 |
+
"overlap_windows": 2
|
| 194 |
+
},
|
| 195 |
+
"license": {
|
| 196 |
+
"note": "Weight redistribution terms must be confirmed; implementation license does not establish weight licensing.",
|
| 197 |
+
"status": "unresolved"
|
| 198 |
+
},
|
| 199 |
+
"name": "Mel-RoFormer InstV7n (Gabox)",
|
| 200 |
+
"sample_rate": 44100,
|
| 201 |
+
"source": {
|
| 202 |
+
"config": {
|
| 203 |
+
"filename": "config_mel_band_roformer_instrumental_gabox.yaml",
|
| 204 |
+
"sha256": "723af6755b5624be0a58351a13c930c472b51ef677cf2c7943394fefed7c3d4d",
|
| 205 |
+
"size_bytes": 920
|
| 206 |
+
},
|
| 207 |
+
"download_url": "https://github.com/nomadkaraoke/python-audio-separator/releases/download/model-configs/mel_band_roformer_instrumental_instv7n_gabox.ckpt",
|
| 208 |
+
"weights": {
|
| 209 |
+
"filename": "mel_band_roformer_instrumental_instv7n_gabox.ckpt",
|
| 210 |
+
"sha256": "b0ca36af5d1314be46b56c8a53b6be02f98511fa5d7e3e196fd895755e65be3c",
|
| 211 |
+
"size_bytes": 913026650
|
| 212 |
+
}
|
| 213 |
+
},
|
| 214 |
+
"stems": [
|
| 215 |
+
"Instrumental",
|
| 216 |
+
"Vocals"
|
| 217 |
+
],
|
| 218 |
+
"validation": "validation/mel-roformer-instv7n.json",
|
| 219 |
+
"weights_filename": "model.safetensors"
|
| 220 |
+
},
|
| 221 |
+
{
|
| 222 |
+
"architecture": "MDX",
|
| 223 |
+
"artifact_origin": "converted",
|
| 224 |
+
"config_filename": "config.json",
|
| 225 |
+
"conversion_audit": {
|
| 226 |
+
"dtypes": [
|
| 227 |
+
"mlx.core.float32"
|
| 228 |
+
],
|
| 229 |
+
"missing_parameters": [],
|
| 230 |
+
"shape_mismatches": [],
|
| 231 |
+
"tensor_count": 376
|
| 232 |
+
},
|
| 233 |
+
"distribution": "bundled",
|
| 234 |
+
"dtype": "float32",
|
| 235 |
+
"family": "mdx",
|
| 236 |
+
"files": [
|
| 237 |
+
{
|
| 238 |
+
"filename": "model.safetensors",
|
| 239 |
+
"sha256": "72c307239fbc415c9f3c1ef83fee38d19ac98b4b893f1a5afc4345296f48eea8",
|
| 240 |
+
"size_bytes": 66871394
|
| 241 |
+
},
|
| 242 |
+
{
|
| 243 |
+
"filename": "config.json",
|
| 244 |
+
"sha256": "d8df573c2b0248e3ce77eb8f0fc3c528c9db5368f38335e249e25e05e84415ba",
|
| 245 |
+
"size_bytes": 204
|
| 246 |
+
}
|
| 247 |
+
],
|
| 248 |
+
"id": "uvr-mdx-net-inst-hq3",
|
| 249 |
+
"inference_defaults": {
|
| 250 |
+
"overlap_fraction": 0.25,
|
| 251 |
+
"segment_size": 256
|
| 252 |
+
},
|
| 253 |
+
"license": {
|
| 254 |
+
"note": "Weight redistribution terms must be confirmed; implementation license does not establish weight licensing.",
|
| 255 |
+
"status": "unresolved"
|
| 256 |
+
},
|
| 257 |
+
"name": "UVR-MDX-NET Inst HQ3",
|
| 258 |
+
"sample_rate": 44100,
|
| 259 |
+
"source": {
|
| 260 |
+
"config": {
|
| 261 |
+
"filename": "mdx_model_data.json",
|
| 262 |
+
"sha256": "1aca8f9bcc57233bc714029663a9ec2345d9c7721f91e5e08f46392a879c6a9a",
|
| 263 |
+
"size_bytes": 15358
|
| 264 |
+
},
|
| 265 |
+
"download_url": "https://github.com/TRvlvr/model_repo/releases/download/all_public_uvr_models/UVR-MDX-NET-Inst_HQ_3.onnx",
|
| 266 |
+
"weights": {
|
| 267 |
+
"filename": "UVR-MDX-NET-Inst_HQ_3.onnx",
|
| 268 |
+
"sha256": "317554b07fe1ea5279a77f2b1520a41ea4b93432560c4ffd08792c30fddf9adc",
|
| 269 |
+
"size_bytes": 66759214
|
| 270 |
+
}
|
| 271 |
+
},
|
| 272 |
+
"stems": [
|
| 273 |
+
"Instrumental",
|
| 274 |
+
"Vocals"
|
| 275 |
+
],
|
| 276 |
+
"validation": "validation/uvr-mdx-net-inst-hq3.json",
|
| 277 |
+
"weights_filename": "model.safetensors"
|
| 278 |
+
},
|
| 279 |
+
{
|
| 280 |
+
"architecture": "Demucs",
|
| 281 |
+
"artifact_origin": "reused",
|
| 282 |
+
"config_filename": "htdemucs_config.json",
|
| 283 |
+
"distribution": "bundled",
|
| 284 |
+
"dtype": "float32",
|
| 285 |
+
"family": "demucs",
|
| 286 |
+
"files": [
|
| 287 |
+
{
|
| 288 |
+
"filename": "htdemucs.safetensors",
|
| 289 |
+
"sha256": "339d267a7a6983a11eedbdc00413c602a65e9b9103f695fb5c2b2a481cd9d297",
|
| 290 |
+
"size_bytes": 168005865
|
| 291 |
+
},
|
| 292 |
+
{
|
| 293 |
+
"filename": "htdemucs_config.json",
|
| 294 |
+
"sha256": "23657b19db14771aecf366ceedbf846c1386836c10043c97f4569acf05526b78",
|
| 295 |
+
"size_bytes": 4215
|
| 296 |
+
},
|
| 297 |
+
{
|
| 298 |
+
"filename": "LICENSE",
|
| 299 |
+
"sha256": "15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51",
|
| 300 |
+
"size_bytes": 1117
|
| 301 |
+
}
|
| 302 |
+
],
|
| 303 |
+
"id": "htdemucs",
|
| 304 |
+
"inference_defaults": {
|
| 305 |
+
"overlap_fraction": 0.25,
|
| 306 |
+
"shifts": 2
|
| 307 |
+
},
|
| 308 |
+
"license": {
|
| 309 |
+
"notice_source": "mlx_audio_separator/demucs_mlx/LICENSE",
|
| 310 |
+
"source": "https://huggingface.co/ssmall256/demucs-mlx/blob/35ecb1a906ec420b1a28069db575ad070d35860e/README.md",
|
| 311 |
+
"spdx": "MIT",
|
| 312 |
+
"status": "upstream_declared"
|
| 313 |
+
},
|
| 314 |
+
"name": "htdemucs",
|
| 315 |
+
"sample_rate": 44100,
|
| 316 |
+
"source": {
|
| 317 |
+
"note": "Reuses byte-identical published demucs-mlx artifacts; config records official checkpoint signatures and conversion metadata."
|
| 318 |
+
},
|
| 319 |
+
"stems": [
|
| 320 |
+
"drums",
|
| 321 |
+
"bass",
|
| 322 |
+
"other",
|
| 323 |
+
"vocals"
|
| 324 |
+
],
|
| 325 |
+
"upstream_hub": {
|
| 326 |
+
"repo_id": "ssmall256/demucs-mlx",
|
| 327 |
+
"revision": "35ecb1a906ec420b1a28069db575ad070d35860e"
|
| 328 |
+
},
|
| 329 |
+
"validation": "validation/htdemucs.json",
|
| 330 |
+
"weights_filename": "htdemucs.safetensors"
|
| 331 |
+
},
|
| 332 |
+
{
|
| 333 |
+
"architecture": "Demucs",
|
| 334 |
+
"artifact_origin": "reused",
|
| 335 |
+
"config_filename": "htdemucs_ft_config.json",
|
| 336 |
+
"distribution": "bundled",
|
| 337 |
+
"dtype": "float32",
|
| 338 |
+
"family": "demucs",
|
| 339 |
+
"files": [
|
| 340 |
+
{
|
| 341 |
+
"filename": "htdemucs_ft.safetensors",
|
| 342 |
+
"sha256": "53f03b1ad4b4d211025a35da65460ba61a17547adf9c0544cad0ebcc8d7bbabb",
|
| 343 |
+
"size_bytes": 672024519
|
| 344 |
+
},
|
| 345 |
+
{
|
| 346 |
+
"filename": "htdemucs_ft_config.json",
|
| 347 |
+
"sha256": "6708535a698d4d4dd285a6f0a80d9d3c228fdd6514e53bdf1ddbc2ee9b0fa872",
|
| 348 |
+
"size_bytes": 10253
|
| 349 |
+
},
|
| 350 |
+
{
|
| 351 |
+
"filename": "LICENSE",
|
| 352 |
+
"sha256": "15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51",
|
| 353 |
+
"size_bytes": 1117
|
| 354 |
+
}
|
| 355 |
+
],
|
| 356 |
+
"id": "htdemucs_ft",
|
| 357 |
+
"inference_defaults": {
|
| 358 |
+
"overlap_fraction": 0.25,
|
| 359 |
+
"shifts": 2
|
| 360 |
+
},
|
| 361 |
+
"license": {
|
| 362 |
+
"notice_source": "mlx_audio_separator/demucs_mlx/LICENSE",
|
| 363 |
+
"source": "https://huggingface.co/ssmall256/demucs-mlx/blob/35ecb1a906ec420b1a28069db575ad070d35860e/README.md",
|
| 364 |
+
"spdx": "MIT",
|
| 365 |
+
"status": "upstream_declared"
|
| 366 |
+
},
|
| 367 |
+
"name": "htdemucs_ft",
|
| 368 |
+
"sample_rate": 44100,
|
| 369 |
+
"source": {
|
| 370 |
+
"note": "Reuses byte-identical published demucs-mlx artifacts; config records official checkpoint signatures and conversion metadata."
|
| 371 |
+
},
|
| 372 |
+
"stems": [
|
| 373 |
+
"drums",
|
| 374 |
+
"bass",
|
| 375 |
+
"other",
|
| 376 |
+
"vocals"
|
| 377 |
+
],
|
| 378 |
+
"upstream_hub": {
|
| 379 |
+
"repo_id": "ssmall256/demucs-mlx",
|
| 380 |
+
"revision": "35ecb1a906ec420b1a28069db575ad070d35860e"
|
| 381 |
+
},
|
| 382 |
+
"validation": "validation/htdemucs_ft.json",
|
| 383 |
+
"weights_filename": "htdemucs_ft.safetensors"
|
| 384 |
+
},
|
| 385 |
+
{
|
| 386 |
+
"architecture": "Demucs",
|
| 387 |
+
"artifact_origin": "reused",
|
| 388 |
+
"config_filename": "htdemucs_6s_config.json",
|
| 389 |
+
"distribution": "bundled",
|
| 390 |
+
"dtype": "float32",
|
| 391 |
+
"family": "demucs",
|
| 392 |
+
"files": [
|
| 393 |
+
{
|
| 394 |
+
"filename": "htdemucs_6s.safetensors",
|
| 395 |
+
"sha256": "d298f7f746bf53c21baad44fb08e88807ef47feb551dd22f1601a546c85b8e02",
|
| 396 |
+
"size_bytes": 109726583
|
| 397 |
+
},
|
| 398 |
+
{
|
| 399 |
+
"filename": "htdemucs_6s_config.json",
|
| 400 |
+
"sha256": "d5e18c0209be583027d6eb5ec3013a02cd7ef55bc3096e644d8d3577d92e9bd0",
|
| 401 |
+
"size_bytes": 4302
|
| 402 |
+
},
|
| 403 |
+
{
|
| 404 |
+
"filename": "LICENSE",
|
| 405 |
+
"sha256": "15086279d32c0f00c577c0f52ff428daf98b8a1fec0264da1c717c88ad464f51",
|
| 406 |
+
"size_bytes": 1117
|
| 407 |
+
}
|
| 408 |
+
],
|
| 409 |
+
"id": "htdemucs_6s",
|
| 410 |
+
"inference_defaults": {
|
| 411 |
+
"overlap_fraction": 0.25,
|
| 412 |
+
"shifts": 2
|
| 413 |
+
},
|
| 414 |
+
"license": {
|
| 415 |
+
"notice_source": "mlx_audio_separator/demucs_mlx/LICENSE",
|
| 416 |
+
"source": "https://huggingface.co/ssmall256/demucs-mlx/blob/35ecb1a906ec420b1a28069db575ad070d35860e/README.md",
|
| 417 |
+
"spdx": "MIT",
|
| 418 |
+
"status": "upstream_declared"
|
| 419 |
+
},
|
| 420 |
+
"name": "htdemucs_6s",
|
| 421 |
+
"sample_rate": 44100,
|
| 422 |
+
"source": {
|
| 423 |
+
"note": "Reuses byte-identical published demucs-mlx artifacts; config records official checkpoint signatures and conversion metadata."
|
| 424 |
+
},
|
| 425 |
+
"stems": [
|
| 426 |
+
"drums",
|
| 427 |
+
"bass",
|
| 428 |
+
"other",
|
| 429 |
+
"vocals",
|
| 430 |
+
"guitar",
|
| 431 |
+
"piano"
|
| 432 |
+
],
|
| 433 |
+
"upstream_hub": {
|
| 434 |
+
"repo_id": "ssmall256/demucs-mlx",
|
| 435 |
+
"revision": "35ecb1a906ec420b1a28069db575ad070d35860e"
|
| 436 |
+
},
|
| 437 |
+
"validation": "validation/htdemucs_6s.json",
|
| 438 |
+
"weights_filename": "htdemucs_6s.safetensors"
|
| 439 |
+
},
|
| 440 |
+
{
|
| 441 |
+
"architecture": "MDXC",
|
| 442 |
+
"artifact_origin": "reused",
|
| 443 |
+
"config_filename": "config.json",
|
| 444 |
+
"distribution": "bundled",
|
| 445 |
+
"dtype": "float16",
|
| 446 |
+
"family": "zfturbo",
|
| 447 |
+
"files": [
|
| 448 |
+
{
|
| 449 |
+
"filename": "model.safetensors",
|
| 450 |
+
"sha256": "ef4aa052845a868cfaff93611477bd8f54d8081bc32f2742a9b3c738f0821191",
|
| 451 |
+
"size_bytes": 67402202
|
| 452 |
+
},
|
| 453 |
+
{
|
| 454 |
+
"filename": "config.json",
|
| 455 |
+
"sha256": "d110ed4713b403d27e2ae6c7796b1a864576232de4a2070e9762108ca197caa6",
|
| 456 |
+
"size_bytes": 1016
|
| 457 |
+
},
|
| 458 |
+
{
|
| 459 |
+
"filename": "LICENSE",
|
| 460 |
+
"sha256": "2b55ae02dcfe9ac8454c41c5e235175512db7429ee7275bab4c4e566b3f80597",
|
| 461 |
+
"size_bytes": 1779
|
| 462 |
+
}
|
| 463 |
+
],
|
| 464 |
+
"id": "mel-roformer-zfturbo-vocals-v1",
|
| 465 |
+
"inference_defaults": {
|
| 466 |
+
"chunk_samples": 352800,
|
| 467 |
+
"overlap_windows": 2
|
| 468 |
+
},
|
| 469 |
+
"license": {
|
| 470 |
+
"note": "Published card notes the source MIT license was added after the original checkpoint release; explicit retroactive author confirmation was not collected.",
|
| 471 |
+
"notice_source": "https://huggingface.co/mlx-community/mel-roformer-zfturbo-vocals-v1-mlx/resolve/01bef2daebedf39937f552d6da68340fc979c9a0/LICENSE",
|
| 472 |
+
"source": "https://huggingface.co/mlx-community/mel-roformer-zfturbo-vocals-v1-mlx/blob/01bef2daebedf39937f552d6da68340fc979c9a0/README.md",
|
| 473 |
+
"spdx": "MIT",
|
| 474 |
+
"status": "upstream_declared_with_caveat"
|
| 475 |
+
},
|
| 476 |
+
"name": "ZFTurbo Mel-RoFormer Vocals v1",
|
| 477 |
+
"sample_rate": 44100,
|
| 478 |
+
"source": {
|
| 479 |
+
"_class": "MelRoFormerConfig",
|
| 480 |
+
"_dtype": "float16",
|
| 481 |
+
"_mlx_version": "0.31.0",
|
| 482 |
+
"_source_input": "model_vocals_mel_band_roformer_sdr_8.42.ckpt",
|
| 483 |
+
"_source_license_at_conversion": "MIT (current MSS-Training repo LICENSE; LICENSE file added 2024-11-04 in commit 6149a22, post-dating the v1.0.0 release on 2023-11-06)",
|
| 484 |
+
"_source_release": "https://github.com/ZFTurbo/Music-Source-Separation-Training/releases/tag/v1.0.0",
|
| 485 |
+
"_source_repository": "https://github.com/ZFTurbo/Music-Source-Separation-Training",
|
| 486 |
+
"_source_sha256": "d9ce706b49cebf0af018590d8deb47ad5434987bf8f7bd3a87a4e5e8c30acb26",
|
| 487 |
+
"_tool_version": "8380ab8",
|
| 488 |
+
"checkpoint_family": "zfturbo_vocals_v1",
|
| 489 |
+
"chunk_size": 352800,
|
| 490 |
+
"depth": 8,
|
| 491 |
+
"dim": 192,
|
| 492 |
+
"dim_head": 64,
|
| 493 |
+
"ff_mult": 4,
|
| 494 |
+
"heads": 8,
|
| 495 |
+
"hop_length": 512,
|
| 496 |
+
"mask_estimator_depth": 1,
|
| 497 |
+
"mlp_expansion_factor": 4,
|
| 498 |
+
"model_type": "mel_band_roformer",
|
| 499 |
+
"n_fft": 2048,
|
| 500 |
+
"num_bands": 60,
|
| 501 |
+
"num_overlap": 2,
|
| 502 |
+
"num_stems": 1,
|
| 503 |
+
"sample_rate": 44100,
|
| 504 |
+
"win_length": 2048
|
| 505 |
+
},
|
| 506 |
+
"stems": [
|
| 507 |
+
"Vocals",
|
| 508 |
+
"Instrumental"
|
| 509 |
+
],
|
| 510 |
+
"upstream_hub": {
|
| 511 |
+
"repo_id": "mlx-community/mel-roformer-zfturbo-vocals-v1-mlx",
|
| 512 |
+
"revision": "01bef2daebedf39937f552d6da68340fc979c9a0"
|
| 513 |
+
},
|
| 514 |
+
"validation": "validation/mel-roformer-zfturbo-vocals-v1.json",
|
| 515 |
+
"weights_filename": "model.safetensors"
|
| 516 |
+
}
|
| 517 |
+
],
|
| 518 |
+
"publication": {
|
| 519 |
+
"date": "2026-10-11",
|
| 520 |
+
"minimum_runtime_version": "0.1.21",
|
| 521 |
+
"repository": "ssmall256/mlx-audio-separator",
|
| 522 |
+
"runtime_release_status": "upcoming_at_publication",
|
| 523 |
+
"third_party_notices": "THIRD_PARTY_NOTICES.md"
|
| 524 |
+
},
|
| 525 |
+
"review_tools_sha256": {
|
| 526 |
+
"catalog.py": "41469a84c9cd1ea89be7cc98eae2e72837e5b8d897b9d3fc368d1538015a5c14",
|
| 527 |
+
"export_registry.py": "b688c030d8c8d14113bc9f0b9fbba97723a42ad2d847b6e2ce9725bda0e37653",
|
| 528 |
+
"finalize.py": "65208c68de24e2520bbdbaef6c8930f8f590b4ac3e44206d85c8e79c59f1b782",
|
| 529 |
+
"prepare.py": "81ca71f53e24aa53eefc4b03beb563c84a7df14e4b239adb71eec5d802a88df5",
|
| 530 |
+
"preview.py": "1fdd89ad568d206c103e176e363d3abcd2a508106f94425cc2b59341df07c42c",
|
| 531 |
+
"validate.py": "aca2ea18ca56dd71602d5313c825591c87f133e8cccf97266ef672327024e35f",
|
| 532 |
+
"validate_downloads.py": "7e38c0d1678235ad340d62f302c25588ae29fe98b526806089da68235da59f4d"
|
| 533 |
+
},
|
| 534 |
+
"target_repo_id": "ssmall256/mlx-audio-separator",
|
| 535 |
+
"validation_scope": {
|
| 536 |
+
"artifact_inference_job": "mq-07b0fe",
|
| 537 |
+
"artifact_relocation_changed_weights": false,
|
| 538 |
+
"baseline_job": "mq-a8c83e",
|
| 539 |
+
"conversion_job": "mq-565cea",
|
| 540 |
+
"current_bundle_all_models_hash_verified": 7,
|
| 541 |
+
"fixture": "14-second excerpt of Q-BHR.m4a, starting at 45 seconds, decoded once to stereo 44.1 kHz PCM16",
|
| 542 |
+
"fixture_not_distributed": true,
|
| 543 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 544 |
+
"frames": 617400,
|
| 545 |
+
"manifest_job": "mq-15ec6e",
|
| 546 |
+
"new_conversions_materialized_into_empty_cache": 3,
|
| 547 |
+
"new_ground_truth_quality_evaluation": false,
|
| 548 |
+
"new_torch_reference_comparison": false,
|
| 549 |
+
"reused_artifacts_downloaded_from_upstream_into_empty_cache": 4
|
| 550 |
+
},
|
| 551 |
+
"validation_status": "passed_artifact_integrity_offline_inference_and_conversion_roundtrip"
|
| 552 |
+
}
|
catalog.py
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""Verify, materialize, and run a curated catalog. This tool never uploads files."""
|
| 2 |
+
|
| 3 |
+
from __future__ import annotations
|
| 4 |
+
|
| 5 |
+
import argparse
|
| 6 |
+
import hashlib
|
| 7 |
+
import json
|
| 8 |
+
import os
|
| 9 |
+
import shutil
|
| 10 |
+
import tempfile
|
| 11 |
+
import urllib.request
|
| 12 |
+
from pathlib import Path
|
| 13 |
+
|
| 14 |
+
|
| 15 |
+
def digest(path):
|
| 16 |
+
h = hashlib.sha256()
|
| 17 |
+
with Path(path).open("rb") as stream:
|
| 18 |
+
for chunk in iter(lambda: stream.read(4 << 20), b""):
|
| 19 |
+
h.update(chunk)
|
| 20 |
+
return h.hexdigest()
|
| 21 |
+
|
| 22 |
+
|
| 23 |
+
def file_record(path, filename=None):
|
| 24 |
+
path = Path(path)
|
| 25 |
+
return {"filename": filename or path.name, "size_bytes": path.stat().st_size, "sha256": digest(path)}
|
| 26 |
+
|
| 27 |
+
|
| 28 |
+
def safe_path(root, relative):
|
| 29 |
+
root = Path(root).resolve()
|
| 30 |
+
path = (root / relative).resolve()
|
| 31 |
+
if not path.is_relative_to(root) or path == root:
|
| 32 |
+
raise ValueError(f"Path escapes catalog directory: {relative}")
|
| 33 |
+
return path
|
| 34 |
+
|
| 35 |
+
|
| 36 |
+
def verify_file(path, record):
|
| 37 |
+
path = Path(path)
|
| 38 |
+
if not path.is_file() or path.stat().st_size != record["size_bytes"] or digest(path) != record["sha256"]:
|
| 39 |
+
raise ValueError(f"Size or SHA-256 mismatch: {path}")
|
| 40 |
+
|
| 41 |
+
|
| 42 |
+
def read_manifest(bundle):
|
| 43 |
+
manifest = json.loads((Path(bundle) / "catalog.json").read_text())
|
| 44 |
+
if manifest["format_version"] != 1:
|
| 45 |
+
raise ValueError("Unsupported catalog version")
|
| 46 |
+
ids = [entry["id"] for entry in manifest["models"]]
|
| 47 |
+
if len(ids) != len(set(ids)):
|
| 48 |
+
raise ValueError("Duplicate catalog model IDs")
|
| 49 |
+
return manifest
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
def materialize(bundle, cache, selected=None):
|
| 53 |
+
"""Install verified files atomically; never fetch source .ckpt/.onnx files."""
|
| 54 |
+
bundle, cache = Path(bundle), Path(cache)
|
| 55 |
+
manifest = read_manifest(bundle)
|
| 56 |
+
unknown = set(selected or []) - {entry["id"] for entry in manifest["models"]}
|
| 57 |
+
if unknown:
|
| 58 |
+
raise ValueError(f"Unknown catalog models: {sorted(unknown)}")
|
| 59 |
+
for entry in manifest["models"]:
|
| 60 |
+
if selected and entry["id"] not in selected:
|
| 61 |
+
continue
|
| 62 |
+
directory = safe_path(cache, entry["id"])
|
| 63 |
+
directory.mkdir(parents=True, exist_ok=True)
|
| 64 |
+
for record in entry["files"]:
|
| 65 |
+
target = safe_path(directory, record["filename"])
|
| 66 |
+
try:
|
| 67 |
+
verify_file(target, record)
|
| 68 |
+
continue
|
| 69 |
+
except ValueError:
|
| 70 |
+
pass
|
| 71 |
+
temporary = None
|
| 72 |
+
try:
|
| 73 |
+
target.parent.mkdir(parents=True, exist_ok=True)
|
| 74 |
+
with tempfile.NamedTemporaryFile(dir=target.parent, prefix=".download-", delete=False) as out:
|
| 75 |
+
temporary = Path(out.name)
|
| 76 |
+
if entry["distribution"] == "bundled":
|
| 77 |
+
source = safe_path(bundle, f"models/{entry['id']}/{record['filename']}")
|
| 78 |
+
with source.open("rb") as stream:
|
| 79 |
+
shutil.copyfileobj(stream, out, 4 << 20)
|
| 80 |
+
else:
|
| 81 |
+
revision = entry["revision"]
|
| 82 |
+
if len(revision) != 40 or any(c not in "0123456789abcdef" for c in revision):
|
| 83 |
+
raise ValueError("Remote entries require an immutable commit SHA")
|
| 84 |
+
url = f"https://huggingface.co/{entry['repo_id']}/resolve/{revision}/{record['filename']}"
|
| 85 |
+
with urllib.request.urlopen(url, timeout=120) as stream:
|
| 86 |
+
shutil.copyfileobj(stream, out, 4 << 20)
|
| 87 |
+
verify_file(temporary, record)
|
| 88 |
+
temporary.replace(target)
|
| 89 |
+
finally:
|
| 90 |
+
if temporary:
|
| 91 |
+
temporary.unlink(missing_ok=True)
|
| 92 |
+
print(f"Verified {entry['id']}", flush=True)
|
| 93 |
+
return manifest
|
| 94 |
+
|
| 95 |
+
|
| 96 |
+
def bundle_published_artifacts(bundle):
|
| 97 |
+
"""Copy all pinned artifacts into one self-contained publication directory."""
|
| 98 |
+
bundle = Path(bundle)
|
| 99 |
+
manifest = materialize(bundle, bundle / "models")
|
| 100 |
+
for entry in manifest["models"]:
|
| 101 |
+
if entry["distribution"] == "external":
|
| 102 |
+
entry["artifact_origin"] = "reused"
|
| 103 |
+
entry["upstream_hub"] = {"repo_id": entry.pop("repo_id"), "revision": entry.pop("revision")}
|
| 104 |
+
else:
|
| 105 |
+
entry.setdefault("artifact_origin", "converted")
|
| 106 |
+
entry["distribution"] = "bundled"
|
| 107 |
+
manifest["target_repo_id"] = "ssmall256/mlx-audio-separator"
|
| 108 |
+
manifest["distribution_layout"] = "single_hub_repository"
|
| 109 |
+
temporary = bundle / "catalog.json.tmp"
|
| 110 |
+
temporary.write_text(json.dumps(manifest, indent=2, sort_keys=True) + "\n")
|
| 111 |
+
temporary.replace(bundle / "catalog.json")
|
| 112 |
+
return manifest
|
| 113 |
+
|
| 114 |
+
|
| 115 |
+
def local_separator(entry, directory, output):
|
| 116 |
+
"""Use the release's normal separation path with catalog metadata and local weights."""
|
| 117 |
+
from mlx_audio_separator import Separator
|
| 118 |
+
|
| 119 |
+
directory = Path(directory)
|
| 120 |
+
if entry["family"] == "demucs":
|
| 121 |
+
os.environ["DEMUCS_MLX_CACHE_DIR"] = str(directory)
|
| 122 |
+
os.environ["DEMUCS_MLX_NO_DOWNLOAD"] = "1"
|
| 123 |
+
os.environ["HF_HUB_OFFLINE"] = "1"
|
| 124 |
+
|
| 125 |
+
class CatalogSeparator(Separator):
|
| 126 |
+
def download_model_files(self, model_filename):
|
| 127 |
+
path = directory if entry["family"] == "zfturbo" else directory / entry["weights_filename"]
|
| 128 |
+
return entry["id"], entry["architecture"], entry["name"], str(path), None
|
| 129 |
+
|
| 130 |
+
def _load_downloaded_model_data(self, model_path, yaml_config_filename):
|
| 131 |
+
if entry["family"] == "zfturbo":
|
| 132 |
+
from mlx_audio_separator.hf_mel_roformer import load_model_data
|
| 133 |
+
|
| 134 |
+
return load_model_data(directory)
|
| 135 |
+
if entry["family"] == "demucs":
|
| 136 |
+
return {"name": entry["id"]}
|
| 137 |
+
return json.loads((directory / entry["config_filename"]).read_text())
|
| 138 |
+
|
| 139 |
+
separator = CatalogSeparator(
|
| 140 |
+
model_file_dir=str(directory),
|
| 141 |
+
output_dir=str(output),
|
| 142 |
+
log_level=30,
|
| 143 |
+
demucs_params={"shifts": 2, "seed": 0},
|
| 144 |
+
)
|
| 145 |
+
separator.load_model(entry["id"])
|
| 146 |
+
return separator
|
| 147 |
+
|
| 148 |
+
|
| 149 |
+
def run(bundle, cache, model, audio, output):
|
| 150 |
+
manifest = read_manifest(bundle)
|
| 151 |
+
entry = next(entry for entry in manifest["models"] if entry["id"] == model)
|
| 152 |
+
directory = safe_path(cache, model)
|
| 153 |
+
for record in entry["files"]:
|
| 154 |
+
verify_file(safe_path(directory, record["filename"]), record)
|
| 155 |
+
separator = local_separator(entry, directory, output)
|
| 156 |
+
results = separator.separate(str(audio))
|
| 157 |
+
if separator.failed_files or len(results) != len(entry["stems"]):
|
| 158 |
+
raise RuntimeError(f"Incomplete separation: {separator.failed_files}, {results}")
|
| 159 |
+
return results
|
| 160 |
+
|
| 161 |
+
|
| 162 |
+
def main():
|
| 163 |
+
parser = argparse.ArgumentParser(description=__doc__)
|
| 164 |
+
parser.add_argument("command", choices=["verify", "fetch", "separate"])
|
| 165 |
+
parser.add_argument("--bundle", type=Path, default=Path(__file__).resolve().parent)
|
| 166 |
+
parser.add_argument("--cache", type=Path, default=Path.home() / ".cache/mlx-audio-separator/curated-v1")
|
| 167 |
+
parser.add_argument("--model")
|
| 168 |
+
parser.add_argument("--audio", type=Path)
|
| 169 |
+
parser.add_argument("--output", type=Path, default=Path("stems"))
|
| 170 |
+
args = parser.parse_args()
|
| 171 |
+
if args.command == "fetch":
|
| 172 |
+
materialize(args.bundle, args.cache, [args.model] if args.model else None)
|
| 173 |
+
elif args.command == "verify":
|
| 174 |
+
manifest = read_manifest(args.bundle)
|
| 175 |
+
for entry in manifest["models"]:
|
| 176 |
+
directory = args.bundle / "models" / entry["id"] if entry["distribution"] == "bundled" else args.cache / entry["id"]
|
| 177 |
+
for record in entry["files"]:
|
| 178 |
+
verify_file(safe_path(directory, record["filename"]), record)
|
| 179 |
+
print(f"Verified {entry['id']}")
|
| 180 |
+
else:
|
| 181 |
+
if not args.model or not args.audio:
|
| 182 |
+
parser.error("separate requires --model and --audio")
|
| 183 |
+
for path in run(args.bundle, args.cache, args.model, args.audio, args.output):
|
| 184 |
+
print(path)
|
| 185 |
+
|
| 186 |
+
|
| 187 |
+
if __name__ == "__main__":
|
| 188 |
+
main()
|
models/bs-roformer-sw/config.json
ADDED
|
@@ -0,0 +1,211 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"audio": {
|
| 3 |
+
"chunk_size": 588800,
|
| 4 |
+
"dim_f": 1024,
|
| 5 |
+
"dim_t": 801,
|
| 6 |
+
"hop_length": 441,
|
| 7 |
+
"min_mean_abs": 0.0,
|
| 8 |
+
"n_fft": 2048,
|
| 9 |
+
"num_channels": 2,
|
| 10 |
+
"sample_rate": 44100
|
| 11 |
+
},
|
| 12 |
+
"augmentations": {
|
| 13 |
+
"all": {
|
| 14 |
+
"channel_shuffle": 0.5,
|
| 15 |
+
"random_inverse": 0.1,
|
| 16 |
+
"random_polarity": 0.5
|
| 17 |
+
},
|
| 18 |
+
"bass": {
|
| 19 |
+
"pitch_shift": 0.1,
|
| 20 |
+
"pitch_shift_max_semitones": 2,
|
| 21 |
+
"pitch_shift_min_semitones": -2,
|
| 22 |
+
"seven_band_parametric_eq": 0.1,
|
| 23 |
+
"seven_band_parametric_eq_max_gain_db": 6,
|
| 24 |
+
"seven_band_parametric_eq_min_gain_db": -3,
|
| 25 |
+
"tanh_distortion": 0.1,
|
| 26 |
+
"tanh_distortion_max": 0.5,
|
| 27 |
+
"tanh_distortion_min": 0.1
|
| 28 |
+
},
|
| 29 |
+
"drums": {
|
| 30 |
+
"pitch_shift": 0.1,
|
| 31 |
+
"pitch_shift_max_semitones": 5,
|
| 32 |
+
"pitch_shift_min_semitones": -5,
|
| 33 |
+
"seven_band_parametric_eq": 0.1,
|
| 34 |
+
"seven_band_parametric_eq_max_gain_db": 9,
|
| 35 |
+
"seven_band_parametric_eq_min_gain_db": -9,
|
| 36 |
+
"tanh_distortion": 0.1,
|
| 37 |
+
"tanh_distortion_max": 0.6,
|
| 38 |
+
"tanh_distortion_min": 0.1
|
| 39 |
+
},
|
| 40 |
+
"enable": true,
|
| 41 |
+
"loudness": true,
|
| 42 |
+
"loudness_max": 1.5,
|
| 43 |
+
"loudness_min": 0.5,
|
| 44 |
+
"mixup": true,
|
| 45 |
+
"mixup_loudness_max": 1.5,
|
| 46 |
+
"mixup_loudness_min": 0.5,
|
| 47 |
+
"mixup_probs": [
|
| 48 |
+
0.2,
|
| 49 |
+
0.02
|
| 50 |
+
],
|
| 51 |
+
"other": {
|
| 52 |
+
"gaussian_noise": 0.1,
|
| 53 |
+
"gaussian_noise_max_amplitude": 0.015,
|
| 54 |
+
"gaussian_noise_min_amplitude": 0.001,
|
| 55 |
+
"pitch_shift": 0.1,
|
| 56 |
+
"pitch_shift_max_semitones": 4,
|
| 57 |
+
"pitch_shift_min_semitones": -4,
|
| 58 |
+
"time_stretch": 0.1,
|
| 59 |
+
"time_stretch_max_rate": 1.25,
|
| 60 |
+
"time_stretch_min_rate": 0.8
|
| 61 |
+
},
|
| 62 |
+
"vocals": {
|
| 63 |
+
"pitch_shift": 0.1,
|
| 64 |
+
"pitch_shift_max_semitones": 5,
|
| 65 |
+
"pitch_shift_min_semitones": -5,
|
| 66 |
+
"seven_band_parametric_eq": 0.1,
|
| 67 |
+
"seven_band_parametric_eq_max_gain_db": 9,
|
| 68 |
+
"seven_band_parametric_eq_min_gain_db": -9,
|
| 69 |
+
"tanh_distortion": 0.1,
|
| 70 |
+
"tanh_distortion_max": 0.7,
|
| 71 |
+
"tanh_distortion_min": 0.1
|
| 72 |
+
}
|
| 73 |
+
},
|
| 74 |
+
"inference": {
|
| 75 |
+
"batch_size": 1,
|
| 76 |
+
"dim_t": 801,
|
| 77 |
+
"normalize": false,
|
| 78 |
+
"num_overlap": 2
|
| 79 |
+
},
|
| 80 |
+
"is_roformer": true,
|
| 81 |
+
"model": {
|
| 82 |
+
"attn_dropout": 0.1,
|
| 83 |
+
"depth": 12,
|
| 84 |
+
"dim": 256,
|
| 85 |
+
"dim_freqs_in": 1025,
|
| 86 |
+
"dim_head": 64,
|
| 87 |
+
"ff_dropout": 0.1,
|
| 88 |
+
"flash_attn": true,
|
| 89 |
+
"freq_transformer_depth": 1,
|
| 90 |
+
"freqs_per_bands": [
|
| 91 |
+
2,
|
| 92 |
+
2,
|
| 93 |
+
2,
|
| 94 |
+
2,
|
| 95 |
+
2,
|
| 96 |
+
2,
|
| 97 |
+
2,
|
| 98 |
+
2,
|
| 99 |
+
2,
|
| 100 |
+
2,
|
| 101 |
+
2,
|
| 102 |
+
2,
|
| 103 |
+
2,
|
| 104 |
+
2,
|
| 105 |
+
2,
|
| 106 |
+
2,
|
| 107 |
+
2,
|
| 108 |
+
2,
|
| 109 |
+
2,
|
| 110 |
+
2,
|
| 111 |
+
2,
|
| 112 |
+
2,
|
| 113 |
+
2,
|
| 114 |
+
2,
|
| 115 |
+
4,
|
| 116 |
+
4,
|
| 117 |
+
4,
|
| 118 |
+
4,
|
| 119 |
+
4,
|
| 120 |
+
4,
|
| 121 |
+
4,
|
| 122 |
+
4,
|
| 123 |
+
4,
|
| 124 |
+
4,
|
| 125 |
+
4,
|
| 126 |
+
4,
|
| 127 |
+
12,
|
| 128 |
+
12,
|
| 129 |
+
12,
|
| 130 |
+
12,
|
| 131 |
+
12,
|
| 132 |
+
12,
|
| 133 |
+
12,
|
| 134 |
+
12,
|
| 135 |
+
24,
|
| 136 |
+
24,
|
| 137 |
+
24,
|
| 138 |
+
24,
|
| 139 |
+
24,
|
| 140 |
+
24,
|
| 141 |
+
24,
|
| 142 |
+
24,
|
| 143 |
+
48,
|
| 144 |
+
48,
|
| 145 |
+
48,
|
| 146 |
+
48,
|
| 147 |
+
48,
|
| 148 |
+
48,
|
| 149 |
+
48,
|
| 150 |
+
48,
|
| 151 |
+
128,
|
| 152 |
+
129
|
| 153 |
+
],
|
| 154 |
+
"heads": 8,
|
| 155 |
+
"linear_transformer_depth": 0,
|
| 156 |
+
"mask_estimator_depth": 2,
|
| 157 |
+
"mlp_expansion_factor": 4,
|
| 158 |
+
"multi_stft_hop_size": 147,
|
| 159 |
+
"multi_stft_normalized": false,
|
| 160 |
+
"multi_stft_resolution_loss_weight": 1.0,
|
| 161 |
+
"multi_stft_resolutions_window_sizes": [
|
| 162 |
+
4096,
|
| 163 |
+
2048,
|
| 164 |
+
1024,
|
| 165 |
+
512,
|
| 166 |
+
256
|
| 167 |
+
],
|
| 168 |
+
"num_stems": 6,
|
| 169 |
+
"skip_connection": false,
|
| 170 |
+
"stereo": true,
|
| 171 |
+
"stft_hop_length": 512,
|
| 172 |
+
"stft_n_fft": 2048,
|
| 173 |
+
"stft_normalized": false,
|
| 174 |
+
"stft_win_length": 2048,
|
| 175 |
+
"time_transformer_depth": 1,
|
| 176 |
+
"use_torch_checkpoint": false
|
| 177 |
+
},
|
| 178 |
+
"training": {
|
| 179 |
+
"augmentation": false,
|
| 180 |
+
"augmentation_loudness": true,
|
| 181 |
+
"augmentation_loudness_max": 1.5,
|
| 182 |
+
"augmentation_loudness_min": 0.5,
|
| 183 |
+
"augmentation_loudness_type": 1,
|
| 184 |
+
"augmentation_mix": true,
|
| 185 |
+
"augmentation_type": "simple1",
|
| 186 |
+
"batch_size": 2,
|
| 187 |
+
"coarse_loss_clip": true,
|
| 188 |
+
"ema_momentum": 0.999,
|
| 189 |
+
"grad_clip": 0,
|
| 190 |
+
"gradient_accumulation_steps": 1,
|
| 191 |
+
"instruments": [
|
| 192 |
+
"bass",
|
| 193 |
+
"drums",
|
| 194 |
+
"other",
|
| 195 |
+
"vocals",
|
| 196 |
+
"guitar",
|
| 197 |
+
"piano"
|
| 198 |
+
],
|
| 199 |
+
"lr": 1e-05,
|
| 200 |
+
"num_epochs": 1000,
|
| 201 |
+
"num_steps": 1000,
|
| 202 |
+
"optimizer": "adam",
|
| 203 |
+
"other_fix": false,
|
| 204 |
+
"patience": 3,
|
| 205 |
+
"q": 0.95,
|
| 206 |
+
"reduce_factor": 0.95,
|
| 207 |
+
"target_instrument": null,
|
| 208 |
+
"use_amp": true,
|
| 209 |
+
"use_mp3_compress": false
|
| 210 |
+
}
|
| 211 |
+
}
|
models/bs-roformer-sw/model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:f95907cd5bfdbc783c1cb32f6aafc49b8b6a598477a9d4a48b4f9191c5167707
|
| 3 |
+
size 698841589
|
models/htdemucs/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) Meta Platforms, Inc. and affiliates.
|
| 4 |
+
Copyright (c) 2026 ssmall256
|
| 5 |
+
|
| 6 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 7 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 8 |
+
in the Software without restriction, including without limitation the rights
|
| 9 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 10 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 11 |
+
furnished to do so, subject to the following conditions:
|
| 12 |
+
|
| 13 |
+
The above copyright notice and this permission notice shall be included in all
|
| 14 |
+
copies or substantial portions of the Software.
|
| 15 |
+
|
| 16 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 17 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 18 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 19 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 20 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 21 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 22 |
+
SOFTWARE.
|
models/htdemucs/htdemucs.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:339d267a7a6983a11eedbdc00413c602a65e9b9103f695fb5c2b2a481cd9d297
|
| 3 |
+
size 168005865
|
models/htdemucs/htdemucs_config.json
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"args": [],
|
| 3 |
+
"conversion_date": "2026-10-05T14:40:20.987896+00:00",
|
| 4 |
+
"format_version": 1,
|
| 5 |
+
"kwargs": {
|
| 6 |
+
"audio_channels": 2,
|
| 7 |
+
"bottom_channels": 512,
|
| 8 |
+
"cac": true,
|
| 9 |
+
"channels": 48,
|
| 10 |
+
"channels_time": null,
|
| 11 |
+
"context": 1,
|
| 12 |
+
"context_enc": 0,
|
| 13 |
+
"dconv_comp": 8,
|
| 14 |
+
"dconv_depth": 2,
|
| 15 |
+
"dconv_init": 0.001,
|
| 16 |
+
"dconv_mode": 3,
|
| 17 |
+
"depth": 4,
|
| 18 |
+
"emb_scale": 10,
|
| 19 |
+
"emb_smooth": true,
|
| 20 |
+
"end_iters": 0,
|
| 21 |
+
"freq_emb": 0.2,
|
| 22 |
+
"growth": 2,
|
| 23 |
+
"kernel_size": 8,
|
| 24 |
+
"multi_freqs": [],
|
| 25 |
+
"multi_freqs_depth": 3,
|
| 26 |
+
"nfft": 4096,
|
| 27 |
+
"norm_groups": 4,
|
| 28 |
+
"norm_starts": 4,
|
| 29 |
+
"rescale": 0.1,
|
| 30 |
+
"rewrite": true,
|
| 31 |
+
"samplerate": 44100,
|
| 32 |
+
"segment": {
|
| 33 |
+
"__type__": "fraction",
|
| 34 |
+
"denominator": 5,
|
| 35 |
+
"numerator": 39
|
| 36 |
+
},
|
| 37 |
+
"sources": [
|
| 38 |
+
"drums",
|
| 39 |
+
"bass",
|
| 40 |
+
"other",
|
| 41 |
+
"vocals"
|
| 42 |
+
],
|
| 43 |
+
"stride": 4,
|
| 44 |
+
"t_auto_sparsity": false,
|
| 45 |
+
"t_cape_augment": true,
|
| 46 |
+
"t_cape_glob_loc_scale": [
|
| 47 |
+
5000.0,
|
| 48 |
+
1.0,
|
| 49 |
+
1.4
|
| 50 |
+
],
|
| 51 |
+
"t_cape_mean_normalize": true,
|
| 52 |
+
"t_cross_first": false,
|
| 53 |
+
"t_dropout": 0.02,
|
| 54 |
+
"t_emb": "sin",
|
| 55 |
+
"t_gelu": true,
|
| 56 |
+
"t_global_window": 100,
|
| 57 |
+
"t_group_norm": false,
|
| 58 |
+
"t_heads": 8,
|
| 59 |
+
"t_hidden_scale": 4.0,
|
| 60 |
+
"t_layer_scale": true,
|
| 61 |
+
"t_layers": 5,
|
| 62 |
+
"t_lr": null,
|
| 63 |
+
"t_mask_random_seed": 42,
|
| 64 |
+
"t_mask_type": "diag",
|
| 65 |
+
"t_max_period": 10000.0,
|
| 66 |
+
"t_max_positions": 10000,
|
| 67 |
+
"t_norm_first": true,
|
| 68 |
+
"t_norm_in": true,
|
| 69 |
+
"t_norm_in_group": false,
|
| 70 |
+
"t_norm_out": true,
|
| 71 |
+
"t_sin_random_shift": 0,
|
| 72 |
+
"t_sparse_attn_window": 400,
|
| 73 |
+
"t_sparse_cross_attn": false,
|
| 74 |
+
"t_sparse_self_attn": false,
|
| 75 |
+
"t_sparsity": 0.95,
|
| 76 |
+
"t_weight_decay": 0.0,
|
| 77 |
+
"t_weight_pos_embed": 1.0,
|
| 78 |
+
"time_stride": 2,
|
| 79 |
+
"wiener_iters": 0,
|
| 80 |
+
"wiener_residual": false
|
| 81 |
+
},
|
| 82 |
+
"mlx_version": "0.32.3",
|
| 83 |
+
"model_class": "BagOfModelsMLX",
|
| 84 |
+
"model_name": "htdemucs",
|
| 85 |
+
"num_models": 1,
|
| 86 |
+
"per_model_args": [
|
| 87 |
+
[]
|
| 88 |
+
],
|
| 89 |
+
"per_model_classes": [
|
| 90 |
+
"HTDemucsMLX"
|
| 91 |
+
],
|
| 92 |
+
"per_model_kwargs": [
|
| 93 |
+
{
|
| 94 |
+
"audio_channels": 2,
|
| 95 |
+
"bottom_channels": 512,
|
| 96 |
+
"cac": true,
|
| 97 |
+
"channels": 48,
|
| 98 |
+
"channels_time": null,
|
| 99 |
+
"context": 1,
|
| 100 |
+
"context_enc": 0,
|
| 101 |
+
"dconv_comp": 8,
|
| 102 |
+
"dconv_depth": 2,
|
| 103 |
+
"dconv_init": 0.001,
|
| 104 |
+
"dconv_mode": 3,
|
| 105 |
+
"depth": 4,
|
| 106 |
+
"emb_scale": 10,
|
| 107 |
+
"emb_smooth": true,
|
| 108 |
+
"end_iters": 0,
|
| 109 |
+
"freq_emb": 0.2,
|
| 110 |
+
"growth": 2,
|
| 111 |
+
"kernel_size": 8,
|
| 112 |
+
"multi_freqs": [],
|
| 113 |
+
"multi_freqs_depth": 3,
|
| 114 |
+
"nfft": 4096,
|
| 115 |
+
"norm_groups": 4,
|
| 116 |
+
"norm_starts": 4,
|
| 117 |
+
"rescale": 0.1,
|
| 118 |
+
"rewrite": true,
|
| 119 |
+
"samplerate": 44100,
|
| 120 |
+
"segment": {
|
| 121 |
+
"__type__": "fraction",
|
| 122 |
+
"denominator": 5,
|
| 123 |
+
"numerator": 39
|
| 124 |
+
},
|
| 125 |
+
"sources": [
|
| 126 |
+
"drums",
|
| 127 |
+
"bass",
|
| 128 |
+
"other",
|
| 129 |
+
"vocals"
|
| 130 |
+
],
|
| 131 |
+
"stride": 4,
|
| 132 |
+
"t_auto_sparsity": false,
|
| 133 |
+
"t_cape_augment": true,
|
| 134 |
+
"t_cape_glob_loc_scale": [
|
| 135 |
+
5000.0,
|
| 136 |
+
1.0,
|
| 137 |
+
1.4
|
| 138 |
+
],
|
| 139 |
+
"t_cape_mean_normalize": true,
|
| 140 |
+
"t_cross_first": false,
|
| 141 |
+
"t_dropout": 0.02,
|
| 142 |
+
"t_emb": "sin",
|
| 143 |
+
"t_gelu": true,
|
| 144 |
+
"t_global_window": 100,
|
| 145 |
+
"t_group_norm": false,
|
| 146 |
+
"t_heads": 8,
|
| 147 |
+
"t_hidden_scale": 4.0,
|
| 148 |
+
"t_layer_scale": true,
|
| 149 |
+
"t_layers": 5,
|
| 150 |
+
"t_lr": null,
|
| 151 |
+
"t_mask_random_seed": 42,
|
| 152 |
+
"t_mask_type": "diag",
|
| 153 |
+
"t_max_period": 10000.0,
|
| 154 |
+
"t_max_positions": 10000,
|
| 155 |
+
"t_norm_first": true,
|
| 156 |
+
"t_norm_in": true,
|
| 157 |
+
"t_norm_in_group": false,
|
| 158 |
+
"t_norm_out": true,
|
| 159 |
+
"t_sin_random_shift": 0,
|
| 160 |
+
"t_sparse_attn_window": 400,
|
| 161 |
+
"t_sparse_cross_attn": false,
|
| 162 |
+
"t_sparse_self_attn": false,
|
| 163 |
+
"t_sparsity": 0.95,
|
| 164 |
+
"t_weight_decay": 0.0,
|
| 165 |
+
"t_weight_pos_embed": 1.0,
|
| 166 |
+
"time_stride": 2,
|
| 167 |
+
"wiener_iters": 0,
|
| 168 |
+
"wiener_residual": false
|
| 169 |
+
}
|
| 170 |
+
],
|
| 171 |
+
"safetensors_sha256": "339d267a7a6983a11eedbdc00413c602a65e9b9103f695fb5c2b2a481cd9d297",
|
| 172 |
+
"source_artifacts": [
|
| 173 |
+
{
|
| 174 |
+
"checksum": "8726e21a",
|
| 175 |
+
"signature": "955717e8"
|
| 176 |
+
}
|
| 177 |
+
],
|
| 178 |
+
"sub_model_class": "HTDemucsMLX",
|
| 179 |
+
"verification_passed": true,
|
| 180 |
+
"weights": [
|
| 181 |
+
[
|
| 182 |
+
1.0,
|
| 183 |
+
1.0,
|
| 184 |
+
1.0,
|
| 185 |
+
1.0
|
| 186 |
+
]
|
| 187 |
+
]
|
| 188 |
+
}
|
models/htdemucs_6s/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) Meta Platforms, Inc. and affiliates.
|
| 4 |
+
Copyright (c) 2026 ssmall256
|
| 5 |
+
|
| 6 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 7 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 8 |
+
in the Software without restriction, including without limitation the rights
|
| 9 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 10 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 11 |
+
furnished to do so, subject to the following conditions:
|
| 12 |
+
|
| 13 |
+
The above copyright notice and this permission notice shall be included in all
|
| 14 |
+
copies or substantial portions of the Software.
|
| 15 |
+
|
| 16 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 17 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 18 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 19 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 20 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 21 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 22 |
+
SOFTWARE.
|
models/htdemucs_6s/htdemucs_6s.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d298f7f746bf53c21baad44fb08e88807ef47feb551dd22f1601a546c85b8e02
|
| 3 |
+
size 109726583
|
models/htdemucs_6s/htdemucs_6s_config.json
ADDED
|
@@ -0,0 +1,194 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"args": [],
|
| 3 |
+
"conversion_date": "2026-10-05T14:40:32.682284+00:00",
|
| 4 |
+
"format_version": 1,
|
| 5 |
+
"kwargs": {
|
| 6 |
+
"audio_channels": 2,
|
| 7 |
+
"bottom_channels": 0,
|
| 8 |
+
"cac": true,
|
| 9 |
+
"channels": 48,
|
| 10 |
+
"channels_time": null,
|
| 11 |
+
"context": 1,
|
| 12 |
+
"context_enc": 0,
|
| 13 |
+
"dconv_comp": 8,
|
| 14 |
+
"dconv_depth": 2,
|
| 15 |
+
"dconv_init": 0.001,
|
| 16 |
+
"dconv_mode": 3,
|
| 17 |
+
"depth": 4,
|
| 18 |
+
"emb_scale": 10,
|
| 19 |
+
"emb_smooth": true,
|
| 20 |
+
"end_iters": 0,
|
| 21 |
+
"freq_emb": 0.2,
|
| 22 |
+
"growth": 2,
|
| 23 |
+
"kernel_size": 8,
|
| 24 |
+
"multi_freqs": [],
|
| 25 |
+
"multi_freqs_depth": 3,
|
| 26 |
+
"nfft": 4096,
|
| 27 |
+
"norm_groups": 4,
|
| 28 |
+
"norm_starts": 4,
|
| 29 |
+
"rescale": 0.1,
|
| 30 |
+
"rewrite": true,
|
| 31 |
+
"samplerate": 44100,
|
| 32 |
+
"segment": {
|
| 33 |
+
"__type__": "fraction",
|
| 34 |
+
"denominator": 5,
|
| 35 |
+
"numerator": 39
|
| 36 |
+
},
|
| 37 |
+
"sources": [
|
| 38 |
+
"drums",
|
| 39 |
+
"bass",
|
| 40 |
+
"other",
|
| 41 |
+
"vocals",
|
| 42 |
+
"guitar",
|
| 43 |
+
"piano"
|
| 44 |
+
],
|
| 45 |
+
"stride": 4,
|
| 46 |
+
"t_auto_sparsity": false,
|
| 47 |
+
"t_cape_augment": true,
|
| 48 |
+
"t_cape_glob_loc_scale": [
|
| 49 |
+
5000.0,
|
| 50 |
+
1.0,
|
| 51 |
+
1.4
|
| 52 |
+
],
|
| 53 |
+
"t_cape_mean_normalize": true,
|
| 54 |
+
"t_cross_first": false,
|
| 55 |
+
"t_dropout": 0.02,
|
| 56 |
+
"t_emb": "sin",
|
| 57 |
+
"t_gelu": true,
|
| 58 |
+
"t_global_window": 100,
|
| 59 |
+
"t_group_norm": false,
|
| 60 |
+
"t_heads": 8,
|
| 61 |
+
"t_hidden_scale": 4.0,
|
| 62 |
+
"t_layer_scale": true,
|
| 63 |
+
"t_layers": 5,
|
| 64 |
+
"t_lr": null,
|
| 65 |
+
"t_mask_random_seed": 42,
|
| 66 |
+
"t_mask_type": "diag",
|
| 67 |
+
"t_max_period": 10000.0,
|
| 68 |
+
"t_max_positions": 10000,
|
| 69 |
+
"t_norm_first": true,
|
| 70 |
+
"t_norm_in": true,
|
| 71 |
+
"t_norm_in_group": false,
|
| 72 |
+
"t_norm_out": true,
|
| 73 |
+
"t_sin_random_shift": 0,
|
| 74 |
+
"t_sparse_attn_window": 400,
|
| 75 |
+
"t_sparse_cross_attn": false,
|
| 76 |
+
"t_sparse_self_attn": false,
|
| 77 |
+
"t_sparsity": 0.95,
|
| 78 |
+
"t_weight_decay": 0.0,
|
| 79 |
+
"t_weight_pos_embed": 1.0,
|
| 80 |
+
"time_stride": 2,
|
| 81 |
+
"wiener_iters": 0,
|
| 82 |
+
"wiener_residual": false
|
| 83 |
+
},
|
| 84 |
+
"mlx_version": "0.32.3",
|
| 85 |
+
"model_class": "BagOfModelsMLX",
|
| 86 |
+
"model_name": "htdemucs_6s",
|
| 87 |
+
"num_models": 1,
|
| 88 |
+
"per_model_args": [
|
| 89 |
+
[]
|
| 90 |
+
],
|
| 91 |
+
"per_model_classes": [
|
| 92 |
+
"HTDemucsMLX"
|
| 93 |
+
],
|
| 94 |
+
"per_model_kwargs": [
|
| 95 |
+
{
|
| 96 |
+
"audio_channels": 2,
|
| 97 |
+
"bottom_channels": 0,
|
| 98 |
+
"cac": true,
|
| 99 |
+
"channels": 48,
|
| 100 |
+
"channels_time": null,
|
| 101 |
+
"context": 1,
|
| 102 |
+
"context_enc": 0,
|
| 103 |
+
"dconv_comp": 8,
|
| 104 |
+
"dconv_depth": 2,
|
| 105 |
+
"dconv_init": 0.001,
|
| 106 |
+
"dconv_mode": 3,
|
| 107 |
+
"depth": 4,
|
| 108 |
+
"emb_scale": 10,
|
| 109 |
+
"emb_smooth": true,
|
| 110 |
+
"end_iters": 0,
|
| 111 |
+
"freq_emb": 0.2,
|
| 112 |
+
"growth": 2,
|
| 113 |
+
"kernel_size": 8,
|
| 114 |
+
"multi_freqs": [],
|
| 115 |
+
"multi_freqs_depth": 3,
|
| 116 |
+
"nfft": 4096,
|
| 117 |
+
"norm_groups": 4,
|
| 118 |
+
"norm_starts": 4,
|
| 119 |
+
"rescale": 0.1,
|
| 120 |
+
"rewrite": true,
|
| 121 |
+
"samplerate": 44100,
|
| 122 |
+
"segment": {
|
| 123 |
+
"__type__": "fraction",
|
| 124 |
+
"denominator": 5,
|
| 125 |
+
"numerator": 39
|
| 126 |
+
},
|
| 127 |
+
"sources": [
|
| 128 |
+
"drums",
|
| 129 |
+
"bass",
|
| 130 |
+
"other",
|
| 131 |
+
"vocals",
|
| 132 |
+
"guitar",
|
| 133 |
+
"piano"
|
| 134 |
+
],
|
| 135 |
+
"stride": 4,
|
| 136 |
+
"t_auto_sparsity": false,
|
| 137 |
+
"t_cape_augment": true,
|
| 138 |
+
"t_cape_glob_loc_scale": [
|
| 139 |
+
5000.0,
|
| 140 |
+
1.0,
|
| 141 |
+
1.4
|
| 142 |
+
],
|
| 143 |
+
"t_cape_mean_normalize": true,
|
| 144 |
+
"t_cross_first": false,
|
| 145 |
+
"t_dropout": 0.02,
|
| 146 |
+
"t_emb": "sin",
|
| 147 |
+
"t_gelu": true,
|
| 148 |
+
"t_global_window": 100,
|
| 149 |
+
"t_group_norm": false,
|
| 150 |
+
"t_heads": 8,
|
| 151 |
+
"t_hidden_scale": 4.0,
|
| 152 |
+
"t_layer_scale": true,
|
| 153 |
+
"t_layers": 5,
|
| 154 |
+
"t_lr": null,
|
| 155 |
+
"t_mask_random_seed": 42,
|
| 156 |
+
"t_mask_type": "diag",
|
| 157 |
+
"t_max_period": 10000.0,
|
| 158 |
+
"t_max_positions": 10000,
|
| 159 |
+
"t_norm_first": true,
|
| 160 |
+
"t_norm_in": true,
|
| 161 |
+
"t_norm_in_group": false,
|
| 162 |
+
"t_norm_out": true,
|
| 163 |
+
"t_sin_random_shift": 0,
|
| 164 |
+
"t_sparse_attn_window": 400,
|
| 165 |
+
"t_sparse_cross_attn": false,
|
| 166 |
+
"t_sparse_self_attn": false,
|
| 167 |
+
"t_sparsity": 0.95,
|
| 168 |
+
"t_weight_decay": 0.0,
|
| 169 |
+
"t_weight_pos_embed": 1.0,
|
| 170 |
+
"time_stride": 2,
|
| 171 |
+
"wiener_iters": 0,
|
| 172 |
+
"wiener_residual": false
|
| 173 |
+
}
|
| 174 |
+
],
|
| 175 |
+
"safetensors_sha256": "d298f7f746bf53c21baad44fb08e88807ef47feb551dd22f1601a546c85b8e02",
|
| 176 |
+
"source_artifacts": [
|
| 177 |
+
{
|
| 178 |
+
"checksum": "34c22ccb",
|
| 179 |
+
"signature": "5c90dfd2"
|
| 180 |
+
}
|
| 181 |
+
],
|
| 182 |
+
"sub_model_class": "HTDemucsMLX",
|
| 183 |
+
"verification_passed": true,
|
| 184 |
+
"weights": [
|
| 185 |
+
[
|
| 186 |
+
1.0,
|
| 187 |
+
1.0,
|
| 188 |
+
1.0,
|
| 189 |
+
1.0,
|
| 190 |
+
1.0,
|
| 191 |
+
1.0
|
| 192 |
+
]
|
| 193 |
+
]
|
| 194 |
+
}
|
models/htdemucs_ft/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) Meta Platforms, Inc. and affiliates.
|
| 4 |
+
Copyright (c) 2026 ssmall256
|
| 5 |
+
|
| 6 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 7 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 8 |
+
in the Software without restriction, including without limitation the rights
|
| 9 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 10 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 11 |
+
furnished to do so, subject to the following conditions:
|
| 12 |
+
|
| 13 |
+
The above copyright notice and this permission notice shall be included in all
|
| 14 |
+
copies or substantial portions of the Software.
|
| 15 |
+
|
| 16 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 17 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 18 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 19 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 20 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 21 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 22 |
+
SOFTWARE.
|
models/htdemucs_ft/htdemucs_ft.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:53f03b1ad4b4d211025a35da65460ba61a17547adf9c0544cad0ebcc8d7bbabb
|
| 3 |
+
size 672024519
|
models/htdemucs_ft/htdemucs_ft_config.json
ADDED
|
@@ -0,0 +1,455 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"args": [],
|
| 3 |
+
"conversion_date": "2026-10-05T14:40:24.444402+00:00",
|
| 4 |
+
"format_version": 1,
|
| 5 |
+
"kwargs": {
|
| 6 |
+
"audio_channels": 2,
|
| 7 |
+
"bottom_channels": 512,
|
| 8 |
+
"cac": true,
|
| 9 |
+
"channels": 48,
|
| 10 |
+
"channels_time": null,
|
| 11 |
+
"context": 1,
|
| 12 |
+
"context_enc": 0,
|
| 13 |
+
"dconv_comp": 8,
|
| 14 |
+
"dconv_depth": 2,
|
| 15 |
+
"dconv_init": 0.001,
|
| 16 |
+
"dconv_mode": 3,
|
| 17 |
+
"depth": 4,
|
| 18 |
+
"emb_scale": 10,
|
| 19 |
+
"emb_smooth": true,
|
| 20 |
+
"end_iters": 0,
|
| 21 |
+
"freq_emb": 0.2,
|
| 22 |
+
"growth": 2,
|
| 23 |
+
"kernel_size": 8,
|
| 24 |
+
"multi_freqs": [],
|
| 25 |
+
"multi_freqs_depth": 3,
|
| 26 |
+
"nfft": 4096,
|
| 27 |
+
"norm_groups": 4,
|
| 28 |
+
"norm_starts": 4,
|
| 29 |
+
"rescale": 0.1,
|
| 30 |
+
"rewrite": true,
|
| 31 |
+
"samplerate": 44100,
|
| 32 |
+
"segment": {
|
| 33 |
+
"__type__": "fraction",
|
| 34 |
+
"denominator": 5,
|
| 35 |
+
"numerator": 39
|
| 36 |
+
},
|
| 37 |
+
"sources": [
|
| 38 |
+
"drums",
|
| 39 |
+
"bass",
|
| 40 |
+
"other",
|
| 41 |
+
"vocals"
|
| 42 |
+
],
|
| 43 |
+
"stride": 4,
|
| 44 |
+
"t_auto_sparsity": false,
|
| 45 |
+
"t_cape_augment": true,
|
| 46 |
+
"t_cape_glob_loc_scale": [
|
| 47 |
+
5000.0,
|
| 48 |
+
1.0,
|
| 49 |
+
1.4
|
| 50 |
+
],
|
| 51 |
+
"t_cape_mean_normalize": true,
|
| 52 |
+
"t_cross_first": false,
|
| 53 |
+
"t_dropout": 0.02,
|
| 54 |
+
"t_emb": "sin",
|
| 55 |
+
"t_gelu": true,
|
| 56 |
+
"t_global_window": 100,
|
| 57 |
+
"t_group_norm": false,
|
| 58 |
+
"t_heads": 8,
|
| 59 |
+
"t_hidden_scale": 4.0,
|
| 60 |
+
"t_layer_scale": true,
|
| 61 |
+
"t_layers": 5,
|
| 62 |
+
"t_lr": null,
|
| 63 |
+
"t_mask_random_seed": 42,
|
| 64 |
+
"t_mask_type": "diag",
|
| 65 |
+
"t_max_period": 10000.0,
|
| 66 |
+
"t_max_positions": 10000,
|
| 67 |
+
"t_norm_first": true,
|
| 68 |
+
"t_norm_in": true,
|
| 69 |
+
"t_norm_in_group": false,
|
| 70 |
+
"t_norm_out": true,
|
| 71 |
+
"t_sin_random_shift": 0,
|
| 72 |
+
"t_sparse_attn_window": 400,
|
| 73 |
+
"t_sparse_cross_attn": false,
|
| 74 |
+
"t_sparse_self_attn": false,
|
| 75 |
+
"t_sparsity": 0.95,
|
| 76 |
+
"t_weight_decay": 0.05,
|
| 77 |
+
"t_weight_pos_embed": 1.0,
|
| 78 |
+
"time_stride": 2,
|
| 79 |
+
"wiener_iters": 0,
|
| 80 |
+
"wiener_residual": false
|
| 81 |
+
},
|
| 82 |
+
"mlx_version": "0.32.3",
|
| 83 |
+
"model_class": "BagOfModelsMLX",
|
| 84 |
+
"model_name": "htdemucs_ft",
|
| 85 |
+
"num_models": 4,
|
| 86 |
+
"per_model_args": [
|
| 87 |
+
[],
|
| 88 |
+
[],
|
| 89 |
+
[],
|
| 90 |
+
[]
|
| 91 |
+
],
|
| 92 |
+
"per_model_classes": [
|
| 93 |
+
"HTDemucsMLX",
|
| 94 |
+
"HTDemucsMLX",
|
| 95 |
+
"HTDemucsMLX",
|
| 96 |
+
"HTDemucsMLX"
|
| 97 |
+
],
|
| 98 |
+
"per_model_kwargs": [
|
| 99 |
+
{
|
| 100 |
+
"audio_channels": 2,
|
| 101 |
+
"bottom_channels": 512,
|
| 102 |
+
"cac": true,
|
| 103 |
+
"channels": 48,
|
| 104 |
+
"channels_time": null,
|
| 105 |
+
"context": 1,
|
| 106 |
+
"context_enc": 0,
|
| 107 |
+
"dconv_comp": 8,
|
| 108 |
+
"dconv_depth": 2,
|
| 109 |
+
"dconv_init": 0.001,
|
| 110 |
+
"dconv_mode": 3,
|
| 111 |
+
"depth": 4,
|
| 112 |
+
"emb_scale": 10,
|
| 113 |
+
"emb_smooth": true,
|
| 114 |
+
"end_iters": 0,
|
| 115 |
+
"freq_emb": 0.2,
|
| 116 |
+
"growth": 2,
|
| 117 |
+
"kernel_size": 8,
|
| 118 |
+
"multi_freqs": [],
|
| 119 |
+
"multi_freqs_depth": 3,
|
| 120 |
+
"nfft": 4096,
|
| 121 |
+
"norm_groups": 4,
|
| 122 |
+
"norm_starts": 4,
|
| 123 |
+
"rescale": 0.1,
|
| 124 |
+
"rewrite": true,
|
| 125 |
+
"samplerate": 44100,
|
| 126 |
+
"segment": {
|
| 127 |
+
"__type__": "fraction",
|
| 128 |
+
"denominator": 5,
|
| 129 |
+
"numerator": 39
|
| 130 |
+
},
|
| 131 |
+
"sources": [
|
| 132 |
+
"drums",
|
| 133 |
+
"bass",
|
| 134 |
+
"other",
|
| 135 |
+
"vocals"
|
| 136 |
+
],
|
| 137 |
+
"stride": 4,
|
| 138 |
+
"t_auto_sparsity": false,
|
| 139 |
+
"t_cape_augment": true,
|
| 140 |
+
"t_cape_glob_loc_scale": [
|
| 141 |
+
5000.0,
|
| 142 |
+
1.0,
|
| 143 |
+
1.4
|
| 144 |
+
],
|
| 145 |
+
"t_cape_mean_normalize": true,
|
| 146 |
+
"t_cross_first": false,
|
| 147 |
+
"t_dropout": 0.02,
|
| 148 |
+
"t_emb": "sin",
|
| 149 |
+
"t_gelu": true,
|
| 150 |
+
"t_global_window": 100,
|
| 151 |
+
"t_group_norm": false,
|
| 152 |
+
"t_heads": 8,
|
| 153 |
+
"t_hidden_scale": 4.0,
|
| 154 |
+
"t_layer_scale": true,
|
| 155 |
+
"t_layers": 5,
|
| 156 |
+
"t_lr": null,
|
| 157 |
+
"t_mask_random_seed": 42,
|
| 158 |
+
"t_mask_type": "diag",
|
| 159 |
+
"t_max_period": 10000.0,
|
| 160 |
+
"t_max_positions": 10000,
|
| 161 |
+
"t_norm_first": true,
|
| 162 |
+
"t_norm_in": true,
|
| 163 |
+
"t_norm_in_group": false,
|
| 164 |
+
"t_norm_out": true,
|
| 165 |
+
"t_sin_random_shift": 0,
|
| 166 |
+
"t_sparse_attn_window": 400,
|
| 167 |
+
"t_sparse_cross_attn": false,
|
| 168 |
+
"t_sparse_self_attn": false,
|
| 169 |
+
"t_sparsity": 0.95,
|
| 170 |
+
"t_weight_decay": 0.05,
|
| 171 |
+
"t_weight_pos_embed": 1.0,
|
| 172 |
+
"time_stride": 2,
|
| 173 |
+
"wiener_iters": 0,
|
| 174 |
+
"wiener_residual": false
|
| 175 |
+
},
|
| 176 |
+
{
|
| 177 |
+
"audio_channels": 2,
|
| 178 |
+
"bottom_channels": 512,
|
| 179 |
+
"cac": true,
|
| 180 |
+
"channels": 48,
|
| 181 |
+
"channels_time": null,
|
| 182 |
+
"context": 1,
|
| 183 |
+
"context_enc": 0,
|
| 184 |
+
"dconv_comp": 8,
|
| 185 |
+
"dconv_depth": 2,
|
| 186 |
+
"dconv_init": 0.001,
|
| 187 |
+
"dconv_mode": 3,
|
| 188 |
+
"depth": 4,
|
| 189 |
+
"emb_scale": 10,
|
| 190 |
+
"emb_smooth": true,
|
| 191 |
+
"end_iters": 0,
|
| 192 |
+
"freq_emb": 0.2,
|
| 193 |
+
"growth": 2,
|
| 194 |
+
"kernel_size": 8,
|
| 195 |
+
"multi_freqs": [],
|
| 196 |
+
"multi_freqs_depth": 3,
|
| 197 |
+
"nfft": 4096,
|
| 198 |
+
"norm_groups": 4,
|
| 199 |
+
"norm_starts": 4,
|
| 200 |
+
"rescale": 0.1,
|
| 201 |
+
"rewrite": true,
|
| 202 |
+
"samplerate": 44100,
|
| 203 |
+
"segment": {
|
| 204 |
+
"__type__": "fraction",
|
| 205 |
+
"denominator": 5,
|
| 206 |
+
"numerator": 39
|
| 207 |
+
},
|
| 208 |
+
"sources": [
|
| 209 |
+
"drums",
|
| 210 |
+
"bass",
|
| 211 |
+
"other",
|
| 212 |
+
"vocals"
|
| 213 |
+
],
|
| 214 |
+
"stride": 4,
|
| 215 |
+
"t_auto_sparsity": false,
|
| 216 |
+
"t_cape_augment": true,
|
| 217 |
+
"t_cape_glob_loc_scale": [
|
| 218 |
+
5000.0,
|
| 219 |
+
1.0,
|
| 220 |
+
1.4
|
| 221 |
+
],
|
| 222 |
+
"t_cape_mean_normalize": true,
|
| 223 |
+
"t_cross_first": false,
|
| 224 |
+
"t_dropout": 0.02,
|
| 225 |
+
"t_emb": "sin",
|
| 226 |
+
"t_gelu": true,
|
| 227 |
+
"t_global_window": 100,
|
| 228 |
+
"t_group_norm": false,
|
| 229 |
+
"t_heads": 8,
|
| 230 |
+
"t_hidden_scale": 4.0,
|
| 231 |
+
"t_layer_scale": true,
|
| 232 |
+
"t_layers": 5,
|
| 233 |
+
"t_lr": null,
|
| 234 |
+
"t_mask_random_seed": 42,
|
| 235 |
+
"t_mask_type": "diag",
|
| 236 |
+
"t_max_period": 10000.0,
|
| 237 |
+
"t_max_positions": 10000,
|
| 238 |
+
"t_norm_first": true,
|
| 239 |
+
"t_norm_in": true,
|
| 240 |
+
"t_norm_in_group": false,
|
| 241 |
+
"t_norm_out": true,
|
| 242 |
+
"t_sin_random_shift": 0,
|
| 243 |
+
"t_sparse_attn_window": 400,
|
| 244 |
+
"t_sparse_cross_attn": false,
|
| 245 |
+
"t_sparse_self_attn": false,
|
| 246 |
+
"t_sparsity": 0.95,
|
| 247 |
+
"t_weight_decay": 0.05,
|
| 248 |
+
"t_weight_pos_embed": 1.0,
|
| 249 |
+
"time_stride": 2,
|
| 250 |
+
"wiener_iters": 0,
|
| 251 |
+
"wiener_residual": false
|
| 252 |
+
},
|
| 253 |
+
{
|
| 254 |
+
"audio_channels": 2,
|
| 255 |
+
"bottom_channels": 512,
|
| 256 |
+
"cac": true,
|
| 257 |
+
"channels": 48,
|
| 258 |
+
"channels_time": null,
|
| 259 |
+
"context": 1,
|
| 260 |
+
"context_enc": 0,
|
| 261 |
+
"dconv_comp": 8,
|
| 262 |
+
"dconv_depth": 2,
|
| 263 |
+
"dconv_init": 0.001,
|
| 264 |
+
"dconv_mode": 3,
|
| 265 |
+
"depth": 4,
|
| 266 |
+
"emb_scale": 10,
|
| 267 |
+
"emb_smooth": true,
|
| 268 |
+
"end_iters": 0,
|
| 269 |
+
"freq_emb": 0.2,
|
| 270 |
+
"growth": 2,
|
| 271 |
+
"kernel_size": 8,
|
| 272 |
+
"multi_freqs": [],
|
| 273 |
+
"multi_freqs_depth": 3,
|
| 274 |
+
"nfft": 4096,
|
| 275 |
+
"norm_groups": 4,
|
| 276 |
+
"norm_starts": 4,
|
| 277 |
+
"rescale": 0.1,
|
| 278 |
+
"rewrite": true,
|
| 279 |
+
"samplerate": 44100,
|
| 280 |
+
"segment": {
|
| 281 |
+
"__type__": "fraction",
|
| 282 |
+
"denominator": 5,
|
| 283 |
+
"numerator": 39
|
| 284 |
+
},
|
| 285 |
+
"sources": [
|
| 286 |
+
"drums",
|
| 287 |
+
"bass",
|
| 288 |
+
"other",
|
| 289 |
+
"vocals"
|
| 290 |
+
],
|
| 291 |
+
"stride": 4,
|
| 292 |
+
"t_auto_sparsity": false,
|
| 293 |
+
"t_cape_augment": true,
|
| 294 |
+
"t_cape_glob_loc_scale": [
|
| 295 |
+
5000.0,
|
| 296 |
+
1.0,
|
| 297 |
+
1.4
|
| 298 |
+
],
|
| 299 |
+
"t_cape_mean_normalize": true,
|
| 300 |
+
"t_cross_first": false,
|
| 301 |
+
"t_dropout": 0.02,
|
| 302 |
+
"t_emb": "sin",
|
| 303 |
+
"t_gelu": true,
|
| 304 |
+
"t_global_window": 100,
|
| 305 |
+
"t_group_norm": false,
|
| 306 |
+
"t_heads": 8,
|
| 307 |
+
"t_hidden_scale": 4.0,
|
| 308 |
+
"t_layer_scale": true,
|
| 309 |
+
"t_layers": 5,
|
| 310 |
+
"t_lr": null,
|
| 311 |
+
"t_mask_random_seed": 42,
|
| 312 |
+
"t_mask_type": "diag",
|
| 313 |
+
"t_max_period": 10000.0,
|
| 314 |
+
"t_max_positions": 10000,
|
| 315 |
+
"t_norm_first": true,
|
| 316 |
+
"t_norm_in": true,
|
| 317 |
+
"t_norm_in_group": false,
|
| 318 |
+
"t_norm_out": true,
|
| 319 |
+
"t_sin_random_shift": 0,
|
| 320 |
+
"t_sparse_attn_window": 400,
|
| 321 |
+
"t_sparse_cross_attn": false,
|
| 322 |
+
"t_sparse_self_attn": false,
|
| 323 |
+
"t_sparsity": 0.95,
|
| 324 |
+
"t_weight_decay": 0.05,
|
| 325 |
+
"t_weight_pos_embed": 1.0,
|
| 326 |
+
"time_stride": 2,
|
| 327 |
+
"wiener_iters": 0,
|
| 328 |
+
"wiener_residual": false
|
| 329 |
+
},
|
| 330 |
+
{
|
| 331 |
+
"audio_channels": 2,
|
| 332 |
+
"bottom_channels": 512,
|
| 333 |
+
"cac": true,
|
| 334 |
+
"channels": 48,
|
| 335 |
+
"channels_time": null,
|
| 336 |
+
"context": 1,
|
| 337 |
+
"context_enc": 0,
|
| 338 |
+
"dconv_comp": 8,
|
| 339 |
+
"dconv_depth": 2,
|
| 340 |
+
"dconv_init": 0.001,
|
| 341 |
+
"dconv_mode": 3,
|
| 342 |
+
"depth": 4,
|
| 343 |
+
"emb_scale": 10,
|
| 344 |
+
"emb_smooth": true,
|
| 345 |
+
"end_iters": 0,
|
| 346 |
+
"freq_emb": 0.2,
|
| 347 |
+
"growth": 2,
|
| 348 |
+
"kernel_size": 8,
|
| 349 |
+
"multi_freqs": [],
|
| 350 |
+
"multi_freqs_depth": 3,
|
| 351 |
+
"nfft": 4096,
|
| 352 |
+
"norm_groups": 4,
|
| 353 |
+
"norm_starts": 4,
|
| 354 |
+
"rescale": 0.1,
|
| 355 |
+
"rewrite": true,
|
| 356 |
+
"samplerate": 44100,
|
| 357 |
+
"segment": {
|
| 358 |
+
"__type__": "fraction",
|
| 359 |
+
"denominator": 5,
|
| 360 |
+
"numerator": 39
|
| 361 |
+
},
|
| 362 |
+
"sources": [
|
| 363 |
+
"drums",
|
| 364 |
+
"bass",
|
| 365 |
+
"other",
|
| 366 |
+
"vocals"
|
| 367 |
+
],
|
| 368 |
+
"stride": 4,
|
| 369 |
+
"t_auto_sparsity": false,
|
| 370 |
+
"t_cape_augment": true,
|
| 371 |
+
"t_cape_glob_loc_scale": [
|
| 372 |
+
5000.0,
|
| 373 |
+
1.0,
|
| 374 |
+
1.4
|
| 375 |
+
],
|
| 376 |
+
"t_cape_mean_normalize": true,
|
| 377 |
+
"t_cross_first": false,
|
| 378 |
+
"t_dropout": 0.02,
|
| 379 |
+
"t_emb": "sin",
|
| 380 |
+
"t_gelu": true,
|
| 381 |
+
"t_global_window": 100,
|
| 382 |
+
"t_group_norm": false,
|
| 383 |
+
"t_heads": 8,
|
| 384 |
+
"t_hidden_scale": 4.0,
|
| 385 |
+
"t_layer_scale": true,
|
| 386 |
+
"t_layers": 5,
|
| 387 |
+
"t_lr": null,
|
| 388 |
+
"t_mask_random_seed": 42,
|
| 389 |
+
"t_mask_type": "diag",
|
| 390 |
+
"t_max_period": 10000.0,
|
| 391 |
+
"t_max_positions": 10000,
|
| 392 |
+
"t_norm_first": true,
|
| 393 |
+
"t_norm_in": true,
|
| 394 |
+
"t_norm_in_group": false,
|
| 395 |
+
"t_norm_out": true,
|
| 396 |
+
"t_sin_random_shift": 0,
|
| 397 |
+
"t_sparse_attn_window": 400,
|
| 398 |
+
"t_sparse_cross_attn": false,
|
| 399 |
+
"t_sparse_self_attn": false,
|
| 400 |
+
"t_sparsity": 0.95,
|
| 401 |
+
"t_weight_decay": 0.05,
|
| 402 |
+
"t_weight_pos_embed": 1.0,
|
| 403 |
+
"time_stride": 2,
|
| 404 |
+
"wiener_iters": 0,
|
| 405 |
+
"wiener_residual": false
|
| 406 |
+
}
|
| 407 |
+
],
|
| 408 |
+
"safetensors_sha256": "53f03b1ad4b4d211025a35da65460ba61a17547adf9c0544cad0ebcc8d7bbabb",
|
| 409 |
+
"source_artifacts": [
|
| 410 |
+
{
|
| 411 |
+
"checksum": "ba3fe64a",
|
| 412 |
+
"signature": "f7e0c4bc"
|
| 413 |
+
},
|
| 414 |
+
{
|
| 415 |
+
"checksum": "e57c48e6",
|
| 416 |
+
"signature": "d12395a8"
|
| 417 |
+
},
|
| 418 |
+
{
|
| 419 |
+
"checksum": "ef3bcb9c",
|
| 420 |
+
"signature": "92cfc3b6"
|
| 421 |
+
},
|
| 422 |
+
{
|
| 423 |
+
"checksum": "f3cf25b2",
|
| 424 |
+
"signature": "04573f0d"
|
| 425 |
+
}
|
| 426 |
+
],
|
| 427 |
+
"sub_model_class": "HTDemucsMLX",
|
| 428 |
+
"verification_passed": true,
|
| 429 |
+
"weights": [
|
| 430 |
+
[
|
| 431 |
+
1.0,
|
| 432 |
+
0.0,
|
| 433 |
+
0.0,
|
| 434 |
+
0.0
|
| 435 |
+
],
|
| 436 |
+
[
|
| 437 |
+
0.0,
|
| 438 |
+
1.0,
|
| 439 |
+
0.0,
|
| 440 |
+
0.0
|
| 441 |
+
],
|
| 442 |
+
[
|
| 443 |
+
0.0,
|
| 444 |
+
0.0,
|
| 445 |
+
1.0,
|
| 446 |
+
0.0
|
| 447 |
+
],
|
| 448 |
+
[
|
| 449 |
+
0.0,
|
| 450 |
+
0.0,
|
| 451 |
+
0.0,
|
| 452 |
+
1.0
|
| 453 |
+
]
|
| 454 |
+
]
|
| 455 |
+
}
|
models/mel-roformer-instv7n/config.json
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"audio": {
|
| 3 |
+
"chunk_size": 485100,
|
| 4 |
+
"dim_f": 1024,
|
| 5 |
+
"dim_t": 1101,
|
| 6 |
+
"hop_length": 441,
|
| 7 |
+
"min_mean_abs": 0.0,
|
| 8 |
+
"n_fft": 2048,
|
| 9 |
+
"num_channels": 2,
|
| 10 |
+
"sample_rate": 44100
|
| 11 |
+
},
|
| 12 |
+
"inference": {
|
| 13 |
+
"batch_size": 1,
|
| 14 |
+
"dim_t": 1101,
|
| 15 |
+
"num_overlap": 2
|
| 16 |
+
},
|
| 17 |
+
"is_roformer": true,
|
| 18 |
+
"model": {
|
| 19 |
+
"attn_dropout": 0,
|
| 20 |
+
"depth": 6,
|
| 21 |
+
"dim": 384,
|
| 22 |
+
"dim_freqs_in": 1025,
|
| 23 |
+
"dim_head": 64,
|
| 24 |
+
"ff_dropout": 0,
|
| 25 |
+
"flash_attn": true,
|
| 26 |
+
"freq_transformer_depth": 1,
|
| 27 |
+
"heads": 8,
|
| 28 |
+
"mask_estimator_depth": 3,
|
| 29 |
+
"multi_stft_hop_size": 147,
|
| 30 |
+
"multi_stft_normalized": false,
|
| 31 |
+
"multi_stft_resolution_loss_weight": 1.0,
|
| 32 |
+
"multi_stft_resolutions_window_sizes": [
|
| 33 |
+
4096,
|
| 34 |
+
2048,
|
| 35 |
+
1024,
|
| 36 |
+
512,
|
| 37 |
+
256
|
| 38 |
+
],
|
| 39 |
+
"num_bands": 60,
|
| 40 |
+
"num_stems": 1,
|
| 41 |
+
"sample_rate": 44100,
|
| 42 |
+
"stereo": true,
|
| 43 |
+
"stft_hop_length": 441,
|
| 44 |
+
"stft_n_fft": 2048,
|
| 45 |
+
"stft_normalized": false,
|
| 46 |
+
"stft_win_length": 2048,
|
| 47 |
+
"time_transformer_depth": 1
|
| 48 |
+
},
|
| 49 |
+
"training": {
|
| 50 |
+
"instruments": [
|
| 51 |
+
"Instrumental",
|
| 52 |
+
"Vocals"
|
| 53 |
+
],
|
| 54 |
+
"target_instrument": "Instrumental",
|
| 55 |
+
"use_amp": true
|
| 56 |
+
}
|
| 57 |
+
}
|
models/mel-roformer-instv7n/model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:74397de5395ed372059b971d6398106f60d92373ada69b62e986e52c9697a5ba
|
| 3 |
+
size 912889223
|
models/mel-roformer-zfturbo-vocals-v1/LICENSE
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) 2026 Xocialize (MLX conversion and packaging)
|
| 4 |
+
Copyright (c) 2023-2026 Roman Solovyev (ZFTurbo) — original Music-Source-Separation-Training
|
| 5 |
+
repository and Mel-Band-RoFormer vocals_v1 release weights
|
| 6 |
+
|
| 7 |
+
The original ZFTurbo Mel-Band-RoFormer vocals_v1 weights are distributed as a
|
| 8 |
+
release asset of https://github.com/ZFTurbo/Music-Source-Separation-Training
|
| 9 |
+
(release tag v1.0.0, asset model_vocals_mel_band_roformer_sdr_8.42.ckpt). The
|
| 10 |
+
repository's LICENSE file (MIT) was added on 2024-11-04 in commit
|
| 11 |
+
6149a22, approximately one year after the v1.0.0 release on 2023-11-06.
|
| 12 |
+
This redistribution treats the weights as inheriting the repository's current
|
| 13 |
+
MIT terms; see the model card for the full disclosure.
|
| 14 |
+
|
| 15 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 16 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 17 |
+
in the Software without restriction, including without limitation the rights
|
| 18 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 19 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 20 |
+
furnished to do so, subject to the following conditions:
|
| 21 |
+
|
| 22 |
+
The above copyright notice and this permission notice shall be included in all
|
| 23 |
+
copies or substantial portions of the Software.
|
| 24 |
+
|
| 25 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 26 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 27 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 28 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 29 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 30 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 31 |
+
SOFTWARE.
|
models/mel-roformer-zfturbo-vocals-v1/config.json
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_class": "MelRoFormerConfig",
|
| 3 |
+
"model_type": "mel_band_roformer",
|
| 4 |
+
"checkpoint_family": "zfturbo_vocals_v1",
|
| 5 |
+
"dim": 192,
|
| 6 |
+
"depth": 8,
|
| 7 |
+
"heads": 8,
|
| 8 |
+
"dim_head": 64,
|
| 9 |
+
"num_bands": 60,
|
| 10 |
+
"num_stems": 1,
|
| 11 |
+
"ff_mult": 4,
|
| 12 |
+
"mlp_expansion_factor": 4,
|
| 13 |
+
"mask_estimator_depth": 1,
|
| 14 |
+
"n_fft": 2048,
|
| 15 |
+
"hop_length": 512,
|
| 16 |
+
"win_length": 2048,
|
| 17 |
+
"sample_rate": 44100,
|
| 18 |
+
"chunk_size": 352800,
|
| 19 |
+
"num_overlap": 2,
|
| 20 |
+
"_dtype": "float16",
|
| 21 |
+
"_mlx_version": "0.31.0",
|
| 22 |
+
"_tool_version": "8380ab8",
|
| 23 |
+
"_source_input": "model_vocals_mel_band_roformer_sdr_8.42.ckpt",
|
| 24 |
+
"_source_sha256": "d9ce706b49cebf0af018590d8deb47ad5434987bf8f7bd3a87a4e5e8c30acb26",
|
| 25 |
+
"_source_repository": "https://github.com/ZFTurbo/Music-Source-Separation-Training",
|
| 26 |
+
"_source_release": "https://github.com/ZFTurbo/Music-Source-Separation-Training/releases/tag/v1.0.0",
|
| 27 |
+
"_source_license_at_conversion": "MIT (current MSS-Training repo LICENSE; LICENSE file added 2024-11-04 in commit 6149a22, post-dating the v1.0.0 release on 2023-11-06)"
|
| 28 |
+
}
|
models/mel-roformer-zfturbo-vocals-v1/model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:ef4aa052845a868cfaff93611477bd8f54d8081bc32f2742a9b3c738f0821191
|
| 3 |
+
size 67402202
|
models/uvr-mdx-net-inst-hq3/config.json
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"bn": 8,
|
| 3 |
+
"compensate": 1.022,
|
| 4 |
+
"dim_c": 4,
|
| 5 |
+
"g": 48,
|
| 6 |
+
"l": 3,
|
| 7 |
+
"mdx_dim_f_set": 3072,
|
| 8 |
+
"mdx_dim_t_set": 8,
|
| 9 |
+
"mdx_n_fft_scale_set": 6144,
|
| 10 |
+
"num_blocks": 11,
|
| 11 |
+
"primary_stem": "Instrumental"
|
| 12 |
+
}
|
models/uvr-mdx-net-inst-hq3/model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:72c307239fbc415c9f3c1ef83fee38d19ac98b4b893f1a5afc4345296f48eea8
|
| 3 |
+
size 66871394
|
validation/automatic-downloads.json
ADDED
|
@@ -0,0 +1,298 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"status": "passed",
|
| 3 |
+
"download_source": "local HTTP mirror of the publication bundle",
|
| 4 |
+
"public_hub_tested": false,
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"demucs_shifts": 2,
|
| 7 |
+
"demucs_validation_seed": 0,
|
| 8 |
+
"roformer_overlap_windows": 2,
|
| 9 |
+
"source_sha256": {
|
| 10 |
+
"mlx_audio_separator/core.py": "fbac906edf6c125fbf8227050538b51e181a73820e92e7afb31969229cd7db04",
|
| 11 |
+
"mlx_audio_separator/model_hub.py": "96001b3d07b22b52dc727acbdfd37911d86e3d984ca7715fe3d88e1dd4118522",
|
| 12 |
+
"mlx_audio_separator/pretrained_models.json": "c1825eeda86b0739f206c5429e39b2a15e97bf78be12170512816391fe812c75",
|
| 13 |
+
"mlx_audio_separator/demucs_mlx/api.py": "64bcd2846826cb984753de005339712481e47c8d31367a6973f0071ba73a28cc",
|
| 14 |
+
"mlx_audio_separator/demucs_mlx/model_converter.py": "32c83cc1a13fe37b47e732a081be9d07dbb54a18081f6110dae70c318821f5da",
|
| 15 |
+
"mlx_audio_separator/separator/architectures/demucs_separator.py": "0dcf14eb910718d0ca3de41f8eafa31192e0a5a44ce7de929ac92845f866982f",
|
| 16 |
+
"scripts/catalog/validate_downloads.py": "7e38c0d1678235ad340d62f302c25588ae29fe98b526806089da68235da59f4d"
|
| 17 |
+
},
|
| 18 |
+
"models": [
|
| 19 |
+
{
|
| 20 |
+
"model": "bs-roformer-sw",
|
| 21 |
+
"legacy_name": "BS-Roformer-SW.ckpt",
|
| 22 |
+
"status": "passed",
|
| 23 |
+
"offline_output_bit_identical": true,
|
| 24 |
+
"stems": {
|
| 25 |
+
"bass": {
|
| 26 |
+
"shape": [
|
| 27 |
+
617400,
|
| 28 |
+
2
|
| 29 |
+
],
|
| 30 |
+
"peak": 0.3247218430042267,
|
| 31 |
+
"raw_sha256": "e0308e6f3b8c4e82cb2b65e39e029b6f7d53c8527f58cf7de1aa1ca25ce2d10a"
|
| 32 |
+
},
|
| 33 |
+
"drums": {
|
| 34 |
+
"shape": [
|
| 35 |
+
617400,
|
| 36 |
+
2
|
| 37 |
+
],
|
| 38 |
+
"peak": 0.00474020279943943,
|
| 39 |
+
"raw_sha256": "f526e6f84b02efc35d665085da92e37f2915617489e808b5d203940e12576271"
|
| 40 |
+
},
|
| 41 |
+
"other": {
|
| 42 |
+
"shape": [
|
| 43 |
+
617400,
|
| 44 |
+
2
|
| 45 |
+
],
|
| 46 |
+
"peak": 2.648953886819072e-05,
|
| 47 |
+
"raw_sha256": "320f6cdbf3c128e5fdcd78a9e861ee900b9457000be542ea60084b13b037e1bb"
|
| 48 |
+
},
|
| 49 |
+
"vocals": {
|
| 50 |
+
"shape": [
|
| 51 |
+
617400,
|
| 52 |
+
2
|
| 53 |
+
],
|
| 54 |
+
"peak": 0.27387580275535583,
|
| 55 |
+
"raw_sha256": "3e195538e564ce2ee672061f2019479fd2e4b3c1591f5dc687eaca30eab4f3b2"
|
| 56 |
+
},
|
| 57 |
+
"guitar": {
|
| 58 |
+
"shape": [
|
| 59 |
+
617400,
|
| 60 |
+
2
|
| 61 |
+
],
|
| 62 |
+
"peak": 2.9653065212187357e-05,
|
| 63 |
+
"raw_sha256": "cae2ccee73471dcbc9c6bc86c6412faf28e7162b7688b72f4df71a4c4ffe2bdf"
|
| 64 |
+
},
|
| 65 |
+
"piano": {
|
| 66 |
+
"shape": [
|
| 67 |
+
617400,
|
| 68 |
+
2
|
| 69 |
+
],
|
| 70 |
+
"peak": 0.3620210587978363,
|
| 71 |
+
"raw_sha256": "aec64b500b2a552fc18207066573679d0a474e55d61c0b66e4bcb0dbdd9548b0"
|
| 72 |
+
}
|
| 73 |
+
},
|
| 74 |
+
"conversion_dependencies_blocked": true,
|
| 75 |
+
"offline_network_blocked": true
|
| 76 |
+
},
|
| 77 |
+
{
|
| 78 |
+
"model": "mel-roformer-instv7n",
|
| 79 |
+
"legacy_name": "mel_band_roformer_instrumental_instv7n_gabox.ckpt",
|
| 80 |
+
"status": "passed",
|
| 81 |
+
"offline_output_bit_identical": true,
|
| 82 |
+
"stems": {
|
| 83 |
+
"instrumental": {
|
| 84 |
+
"shape": [
|
| 85 |
+
617400,
|
| 86 |
+
2
|
| 87 |
+
],
|
| 88 |
+
"peak": 0.512724757194519,
|
| 89 |
+
"raw_sha256": "16eded8b94f233b67adb17bbdb2d4a794e85c4565829af8f66b39c2db6bc545a"
|
| 90 |
+
},
|
| 91 |
+
"vocals": {
|
| 92 |
+
"shape": [
|
| 93 |
+
617400,
|
| 94 |
+
2
|
| 95 |
+
],
|
| 96 |
+
"peak": 0.29248708486557007,
|
| 97 |
+
"raw_sha256": "e809c0b8ac6cb5314e9e49e7cff4a0a0838da46669d1550d6e2bb2ad8cb2a856"
|
| 98 |
+
}
|
| 99 |
+
},
|
| 100 |
+
"conversion_dependencies_blocked": true,
|
| 101 |
+
"offline_network_blocked": true
|
| 102 |
+
},
|
| 103 |
+
{
|
| 104 |
+
"model": "uvr-mdx-net-inst-hq3",
|
| 105 |
+
"legacy_name": "UVR-MDX-NET-Inst_HQ_3.onnx",
|
| 106 |
+
"status": "passed",
|
| 107 |
+
"offline_output_bit_identical": true,
|
| 108 |
+
"stems": {
|
| 109 |
+
"vocals": {
|
| 110 |
+
"shape": [
|
| 111 |
+
617400,
|
| 112 |
+
2
|
| 113 |
+
],
|
| 114 |
+
"peak": 0.32498443126678467,
|
| 115 |
+
"raw_sha256": "dea2889222b419d685a5d8c1fbe7717d8af4dd9234b9b8d3718df32323a34a19"
|
| 116 |
+
},
|
| 117 |
+
"instrumental": {
|
| 118 |
+
"shape": [
|
| 119 |
+
617400,
|
| 120 |
+
2
|
| 121 |
+
],
|
| 122 |
+
"peak": 0.2586144208908081,
|
| 123 |
+
"raw_sha256": "0d15b30d669fe96a4214aa79839eb31029940d1e7b88cbd1182acf70726b6377"
|
| 124 |
+
}
|
| 125 |
+
},
|
| 126 |
+
"conversion_dependencies_blocked": true,
|
| 127 |
+
"offline_network_blocked": true
|
| 128 |
+
},
|
| 129 |
+
{
|
| 130 |
+
"model": "htdemucs",
|
| 131 |
+
"legacy_name": "htdemucs.yaml",
|
| 132 |
+
"status": "passed",
|
| 133 |
+
"offline_output_bit_identical": true,
|
| 134 |
+
"stems": {
|
| 135 |
+
"drums": {
|
| 136 |
+
"shape": [
|
| 137 |
+
617400,
|
| 138 |
+
2
|
| 139 |
+
],
|
| 140 |
+
"peak": 0.0019488489488139749,
|
| 141 |
+
"raw_sha256": "2d1413830bf9faf27b534c5604e7df4d6b43a8864d701186ce00a32f8367d217"
|
| 142 |
+
},
|
| 143 |
+
"bass": {
|
| 144 |
+
"shape": [
|
| 145 |
+
617400,
|
| 146 |
+
2
|
| 147 |
+
],
|
| 148 |
+
"peak": 0.36053600907325745,
|
| 149 |
+
"raw_sha256": "e1fb147bf64048a2a86909042a32693545c48c94fc42e00fbfd93f789947f772"
|
| 150 |
+
},
|
| 151 |
+
"other": {
|
| 152 |
+
"shape": [
|
| 153 |
+
617400,
|
| 154 |
+
2
|
| 155 |
+
],
|
| 156 |
+
"peak": 0.36171454191207886,
|
| 157 |
+
"raw_sha256": "5da76923636e599e3919a75508cbff4e69de491f6964fd8f65b0a802988f2a3b"
|
| 158 |
+
},
|
| 159 |
+
"vocals": {
|
| 160 |
+
"shape": [
|
| 161 |
+
617400,
|
| 162 |
+
2
|
| 163 |
+
],
|
| 164 |
+
"peak": 0.30794283747673035,
|
| 165 |
+
"raw_sha256": "402db8962619441481c78a98ae4266a3dbac05aea02573ff38a42d4e2414a02d"
|
| 166 |
+
}
|
| 167 |
+
},
|
| 168 |
+
"conversion_dependencies_blocked": true,
|
| 169 |
+
"offline_network_blocked": true
|
| 170 |
+
},
|
| 171 |
+
{
|
| 172 |
+
"model": "htdemucs_ft",
|
| 173 |
+
"legacy_name": "htdemucs_ft.yaml",
|
| 174 |
+
"status": "passed",
|
| 175 |
+
"offline_output_bit_identical": true,
|
| 176 |
+
"stems": {
|
| 177 |
+
"drums": {
|
| 178 |
+
"shape": [
|
| 179 |
+
617400,
|
| 180 |
+
2
|
| 181 |
+
],
|
| 182 |
+
"peak": 0.0010993701871484518,
|
| 183 |
+
"raw_sha256": "021f3d9461374751c44e7af8e8c4252cbacf96e1a131586b352ea5026bb9d9c5"
|
| 184 |
+
},
|
| 185 |
+
"bass": {
|
| 186 |
+
"shape": [
|
| 187 |
+
617400,
|
| 188 |
+
2
|
| 189 |
+
],
|
| 190 |
+
"peak": 0.358381986618042,
|
| 191 |
+
"raw_sha256": "c77c2fe756fe1d20ec8d223c87bedae54cf5a6ff562c5ab349b277852db13c0f"
|
| 192 |
+
},
|
| 193 |
+
"other": {
|
| 194 |
+
"shape": [
|
| 195 |
+
617400,
|
| 196 |
+
2
|
| 197 |
+
],
|
| 198 |
+
"peak": 0.3595317602157593,
|
| 199 |
+
"raw_sha256": "6885bb26dc75bfe013154ebbe6035e2df501fcd650d6f60e8cb5b1ddbd5dada4"
|
| 200 |
+
},
|
| 201 |
+
"vocals": {
|
| 202 |
+
"shape": [
|
| 203 |
+
617400,
|
| 204 |
+
2
|
| 205 |
+
],
|
| 206 |
+
"peak": 0.2946012616157532,
|
| 207 |
+
"raw_sha256": "d594e3bfdc97f1d6d96aab0ad9ee030f67520f713c759da53d9812ce2b67d791"
|
| 208 |
+
}
|
| 209 |
+
},
|
| 210 |
+
"conversion_dependencies_blocked": true,
|
| 211 |
+
"offline_network_blocked": true
|
| 212 |
+
},
|
| 213 |
+
{
|
| 214 |
+
"model": "htdemucs_6s",
|
| 215 |
+
"legacy_name": "htdemucs_6s.yaml",
|
| 216 |
+
"status": "passed",
|
| 217 |
+
"offline_output_bit_identical": true,
|
| 218 |
+
"stems": {
|
| 219 |
+
"drums": {
|
| 220 |
+
"shape": [
|
| 221 |
+
617400,
|
| 222 |
+
2
|
| 223 |
+
],
|
| 224 |
+
"peak": 0.0005281093181110919,
|
| 225 |
+
"raw_sha256": "23386388e11b7d2e846eebf77a46d08ca55f075131679668fb8f6b80914bcf22"
|
| 226 |
+
},
|
| 227 |
+
"bass": {
|
| 228 |
+
"shape": [
|
| 229 |
+
617400,
|
| 230 |
+
2
|
| 231 |
+
],
|
| 232 |
+
"peak": 0.3143438696861267,
|
| 233 |
+
"raw_sha256": "cf2e1c208da316f7ee660de9541220825d8fd8f59808f581f755abd21aa28ff8"
|
| 234 |
+
},
|
| 235 |
+
"other": {
|
| 236 |
+
"shape": [
|
| 237 |
+
617400,
|
| 238 |
+
2
|
| 239 |
+
],
|
| 240 |
+
"peak": 0.0002693339192774147,
|
| 241 |
+
"raw_sha256": "65decc5bd490b7b393da0236101dc5f0ebc7b7ea1c3d3fd893e4cf00a2645a40"
|
| 242 |
+
},
|
| 243 |
+
"vocals": {
|
| 244 |
+
"shape": [
|
| 245 |
+
617400,
|
| 246 |
+
2
|
| 247 |
+
],
|
| 248 |
+
"peak": 0.2923990786075592,
|
| 249 |
+
"raw_sha256": "bbaee6fdf2359590d64aec7e95313c1f75bdf9deae7441bc800f24c2db4cbcaf"
|
| 250 |
+
},
|
| 251 |
+
"guitar": {
|
| 252 |
+
"shape": [
|
| 253 |
+
617400,
|
| 254 |
+
2
|
| 255 |
+
],
|
| 256 |
+
"peak": 0.00031150958966463804,
|
| 257 |
+
"raw_sha256": "b153959c43c377d755894527901b8457279228ae3699f64c0723dbb208b9c68e"
|
| 258 |
+
},
|
| 259 |
+
"piano": {
|
| 260 |
+
"shape": [
|
| 261 |
+
617400,
|
| 262 |
+
2
|
| 263 |
+
],
|
| 264 |
+
"peak": 0.35046419501304626,
|
| 265 |
+
"raw_sha256": "4768791a4f50b9cd1d9a3c418a4141027f09f4c5ee0b209baed0b8575c9b2b9e"
|
| 266 |
+
}
|
| 267 |
+
},
|
| 268 |
+
"conversion_dependencies_blocked": true,
|
| 269 |
+
"offline_network_blocked": true
|
| 270 |
+
},
|
| 271 |
+
{
|
| 272 |
+
"model": "mel-roformer-zfturbo-vocals-v1",
|
| 273 |
+
"legacy_name": "mel-roformer-zfturbo-vocals-v1-mlx",
|
| 274 |
+
"status": "passed",
|
| 275 |
+
"offline_output_bit_identical": true,
|
| 276 |
+
"stems": {
|
| 277 |
+
"vocals": {
|
| 278 |
+
"shape": [
|
| 279 |
+
617400,
|
| 280 |
+
2
|
| 281 |
+
],
|
| 282 |
+
"peak": 0.21046893298625946,
|
| 283 |
+
"raw_sha256": "0726c4b5da0b4745206f414de8b53a59aab7e72abe62dc7bfee11cf7a651383b"
|
| 284 |
+
},
|
| 285 |
+
"instrumental": {
|
| 286 |
+
"shape": [
|
| 287 |
+
617400,
|
| 288 |
+
2
|
| 289 |
+
],
|
| 290 |
+
"peak": 0.5118863582611084,
|
| 291 |
+
"raw_sha256": "a835f80756717db407ffa42d6a7591c397edc7132ff8ef684aaf3e10f9f414cc"
|
| 292 |
+
}
|
| 293 |
+
},
|
| 294 |
+
"conversion_dependencies_blocked": true,
|
| 295 |
+
"offline_network_blocked": true
|
| 296 |
+
}
|
| 297 |
+
]
|
| 298 |
+
}
|
validation/bs-roformer-sw.json
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model": "bs-roformer-sw",
|
| 3 |
+
"status": "passed",
|
| 4 |
+
"mode": "published",
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"fixture_frames": 617400,
|
| 7 |
+
"sample_rate": 44100,
|
| 8 |
+
"stems": {
|
| 9 |
+
"bass": {
|
| 10 |
+
"shape": [
|
| 11 |
+
617400,
|
| 12 |
+
2
|
| 13 |
+
],
|
| 14 |
+
"peak": 0.3247218430042267,
|
| 15 |
+
"finite": true
|
| 16 |
+
},
|
| 17 |
+
"drums": {
|
| 18 |
+
"shape": [
|
| 19 |
+
617400,
|
| 20 |
+
2
|
| 21 |
+
],
|
| 22 |
+
"peak": 0.00474020279943943,
|
| 23 |
+
"finite": true
|
| 24 |
+
},
|
| 25 |
+
"other": {
|
| 26 |
+
"shape": [
|
| 27 |
+
617400,
|
| 28 |
+
2
|
| 29 |
+
],
|
| 30 |
+
"peak": 2.648953886819072e-05,
|
| 31 |
+
"finite": true
|
| 32 |
+
},
|
| 33 |
+
"vocals": {
|
| 34 |
+
"shape": [
|
| 35 |
+
617400,
|
| 36 |
+
2
|
| 37 |
+
],
|
| 38 |
+
"peak": 0.27387580275535583,
|
| 39 |
+
"finite": true
|
| 40 |
+
},
|
| 41 |
+
"guitar": {
|
| 42 |
+
"shape": [
|
| 43 |
+
617400,
|
| 44 |
+
2
|
| 45 |
+
],
|
| 46 |
+
"peak": 2.9653065212187357e-05,
|
| 47 |
+
"finite": true
|
| 48 |
+
},
|
| 49 |
+
"piano": {
|
| 50 |
+
"shape": [
|
| 51 |
+
617400,
|
| 52 |
+
2
|
| 53 |
+
],
|
| 54 |
+
"peak": 0.3620210587978363,
|
| 55 |
+
"finite": true
|
| 56 |
+
}
|
| 57 |
+
},
|
| 58 |
+
"seconds_load_separate_write": 1.4203401249833405,
|
| 59 |
+
"performance_measurement": false,
|
| 60 |
+
"network_disabled": true,
|
| 61 |
+
"conversion_dependencies_blocked": true,
|
| 62 |
+
"settings": {
|
| 63 |
+
"chunk_samples": 588800,
|
| 64 |
+
"overlap_windows": 2
|
| 65 |
+
},
|
| 66 |
+
"source_conversion_roundtrip": {
|
| 67 |
+
"bass": {
|
| 68 |
+
"max_abs_error": 0.0,
|
| 69 |
+
"bit_identical": true
|
| 70 |
+
},
|
| 71 |
+
"drums": {
|
| 72 |
+
"max_abs_error": 0.0,
|
| 73 |
+
"bit_identical": true
|
| 74 |
+
},
|
| 75 |
+
"other": {
|
| 76 |
+
"max_abs_error": 0.0,
|
| 77 |
+
"bit_identical": true
|
| 78 |
+
},
|
| 79 |
+
"vocals": {
|
| 80 |
+
"max_abs_error": 0.0,
|
| 81 |
+
"bit_identical": true
|
| 82 |
+
},
|
| 83 |
+
"guitar": {
|
| 84 |
+
"max_abs_error": 0.0,
|
| 85 |
+
"bit_identical": true
|
| 86 |
+
},
|
| 87 |
+
"piano": {
|
| 88 |
+
"max_abs_error": 0.0,
|
| 89 |
+
"bit_identical": true
|
| 90 |
+
}
|
| 91 |
+
}
|
| 92 |
+
}
|
validation/htdemucs.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model": "htdemucs",
|
| 3 |
+
"status": "passed",
|
| 4 |
+
"mode": "published",
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"fixture_frames": 617400,
|
| 7 |
+
"sample_rate": 44100,
|
| 8 |
+
"stems": {
|
| 9 |
+
"drums": {
|
| 10 |
+
"shape": [
|
| 11 |
+
617400,
|
| 12 |
+
2
|
| 13 |
+
],
|
| 14 |
+
"peak": 0.0019488489488139749,
|
| 15 |
+
"finite": true
|
| 16 |
+
},
|
| 17 |
+
"bass": {
|
| 18 |
+
"shape": [
|
| 19 |
+
617400,
|
| 20 |
+
2
|
| 21 |
+
],
|
| 22 |
+
"peak": 0.36053600907325745,
|
| 23 |
+
"finite": true
|
| 24 |
+
},
|
| 25 |
+
"other": {
|
| 26 |
+
"shape": [
|
| 27 |
+
617400,
|
| 28 |
+
2
|
| 29 |
+
],
|
| 30 |
+
"peak": 0.36171454191207886,
|
| 31 |
+
"finite": true
|
| 32 |
+
},
|
| 33 |
+
"vocals": {
|
| 34 |
+
"shape": [
|
| 35 |
+
617400,
|
| 36 |
+
2
|
| 37 |
+
],
|
| 38 |
+
"peak": 0.30794283747673035,
|
| 39 |
+
"finite": true
|
| 40 |
+
}
|
| 41 |
+
},
|
| 42 |
+
"seconds_load_separate_write": 0.5797994589665905,
|
| 43 |
+
"performance_measurement": false,
|
| 44 |
+
"network_disabled": true,
|
| 45 |
+
"conversion_dependencies_blocked": true,
|
| 46 |
+
"settings": {
|
| 47 |
+
"overlap_fraction": 0.25,
|
| 48 |
+
"shifts": 2
|
| 49 |
+
},
|
| 50 |
+
"validation_seed": 0
|
| 51 |
+
}
|
validation/htdemucs_6s.json
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model": "htdemucs_6s",
|
| 3 |
+
"status": "passed",
|
| 4 |
+
"mode": "published",
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"fixture_frames": 617400,
|
| 7 |
+
"sample_rate": 44100,
|
| 8 |
+
"stems": {
|
| 9 |
+
"drums": {
|
| 10 |
+
"shape": [
|
| 11 |
+
617400,
|
| 12 |
+
2
|
| 13 |
+
],
|
| 14 |
+
"peak": 0.0005281093181110919,
|
| 15 |
+
"finite": true
|
| 16 |
+
},
|
| 17 |
+
"bass": {
|
| 18 |
+
"shape": [
|
| 19 |
+
617400,
|
| 20 |
+
2
|
| 21 |
+
],
|
| 22 |
+
"peak": 0.3143438696861267,
|
| 23 |
+
"finite": true
|
| 24 |
+
},
|
| 25 |
+
"other": {
|
| 26 |
+
"shape": [
|
| 27 |
+
617400,
|
| 28 |
+
2
|
| 29 |
+
],
|
| 30 |
+
"peak": 0.0002693339192774147,
|
| 31 |
+
"finite": true
|
| 32 |
+
},
|
| 33 |
+
"vocals": {
|
| 34 |
+
"shape": [
|
| 35 |
+
617400,
|
| 36 |
+
2
|
| 37 |
+
],
|
| 38 |
+
"peak": 0.2923990786075592,
|
| 39 |
+
"finite": true
|
| 40 |
+
},
|
| 41 |
+
"guitar": {
|
| 42 |
+
"shape": [
|
| 43 |
+
617400,
|
| 44 |
+
2
|
| 45 |
+
],
|
| 46 |
+
"peak": 0.00031150958966463804,
|
| 47 |
+
"finite": true
|
| 48 |
+
},
|
| 49 |
+
"piano": {
|
| 50 |
+
"shape": [
|
| 51 |
+
617400,
|
| 52 |
+
2
|
| 53 |
+
],
|
| 54 |
+
"peak": 0.35046419501304626,
|
| 55 |
+
"finite": true
|
| 56 |
+
}
|
| 57 |
+
},
|
| 58 |
+
"seconds_load_separate_write": 0.864158249925822,
|
| 59 |
+
"performance_measurement": false,
|
| 60 |
+
"network_disabled": true,
|
| 61 |
+
"conversion_dependencies_blocked": true,
|
| 62 |
+
"settings": {
|
| 63 |
+
"overlap_fraction": 0.25,
|
| 64 |
+
"shifts": 2
|
| 65 |
+
},
|
| 66 |
+
"validation_seed": 0
|
| 67 |
+
}
|
validation/htdemucs_ft.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model": "htdemucs_ft",
|
| 3 |
+
"status": "passed",
|
| 4 |
+
"mode": "published",
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"fixture_frames": 617400,
|
| 7 |
+
"sample_rate": 44100,
|
| 8 |
+
"stems": {
|
| 9 |
+
"drums": {
|
| 10 |
+
"shape": [
|
| 11 |
+
617400,
|
| 12 |
+
2
|
| 13 |
+
],
|
| 14 |
+
"peak": 0.0010993701871484518,
|
| 15 |
+
"finite": true
|
| 16 |
+
},
|
| 17 |
+
"bass": {
|
| 18 |
+
"shape": [
|
| 19 |
+
617400,
|
| 20 |
+
2
|
| 21 |
+
],
|
| 22 |
+
"peak": 0.358381986618042,
|
| 23 |
+
"finite": true
|
| 24 |
+
},
|
| 25 |
+
"other": {
|
| 26 |
+
"shape": [
|
| 27 |
+
617400,
|
| 28 |
+
2
|
| 29 |
+
],
|
| 30 |
+
"peak": 0.3595317602157593,
|
| 31 |
+
"finite": true
|
| 32 |
+
},
|
| 33 |
+
"vocals": {
|
| 34 |
+
"shape": [
|
| 35 |
+
617400,
|
| 36 |
+
2
|
| 37 |
+
],
|
| 38 |
+
"peak": 0.2946012616157532,
|
| 39 |
+
"finite": true
|
| 40 |
+
}
|
| 41 |
+
},
|
| 42 |
+
"seconds_load_separate_write": 1.800742125022225,
|
| 43 |
+
"performance_measurement": false,
|
| 44 |
+
"network_disabled": true,
|
| 45 |
+
"conversion_dependencies_blocked": true,
|
| 46 |
+
"settings": {
|
| 47 |
+
"overlap_fraction": 0.25,
|
| 48 |
+
"shifts": 2
|
| 49 |
+
},
|
| 50 |
+
"validation_seed": 0
|
| 51 |
+
}
|
validation/mel-roformer-instv7n.json
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model": "mel-roformer-instv7n",
|
| 3 |
+
"status": "passed",
|
| 4 |
+
"mode": "published",
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"fixture_frames": 617400,
|
| 7 |
+
"sample_rate": 44100,
|
| 8 |
+
"stems": {
|
| 9 |
+
"instrumental": {
|
| 10 |
+
"shape": [
|
| 11 |
+
617400,
|
| 12 |
+
2
|
| 13 |
+
],
|
| 14 |
+
"peak": 0.512724757194519,
|
| 15 |
+
"finite": true
|
| 16 |
+
},
|
| 17 |
+
"vocals": {
|
| 18 |
+
"shape": [
|
| 19 |
+
617400,
|
| 20 |
+
2
|
| 21 |
+
],
|
| 22 |
+
"peak": 0.29248708486557007,
|
| 23 |
+
"finite": true
|
| 24 |
+
}
|
| 25 |
+
},
|
| 26 |
+
"seconds_load_separate_write": 1.1987386250402778,
|
| 27 |
+
"performance_measurement": false,
|
| 28 |
+
"network_disabled": true,
|
| 29 |
+
"conversion_dependencies_blocked": true,
|
| 30 |
+
"settings": {
|
| 31 |
+
"chunk_samples": 485100,
|
| 32 |
+
"overlap_windows": 2
|
| 33 |
+
},
|
| 34 |
+
"source_conversion_roundtrip": {
|
| 35 |
+
"instrumental": {
|
| 36 |
+
"max_abs_error": 0.0,
|
| 37 |
+
"bit_identical": true
|
| 38 |
+
},
|
| 39 |
+
"vocals": {
|
| 40 |
+
"max_abs_error": 0.0,
|
| 41 |
+
"bit_identical": true
|
| 42 |
+
}
|
| 43 |
+
}
|
| 44 |
+
}
|
validation/mel-roformer-zfturbo-vocals-v1.json
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model": "mel-roformer-zfturbo-vocals-v1",
|
| 3 |
+
"status": "passed",
|
| 4 |
+
"mode": "published",
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"fixture_frames": 617400,
|
| 7 |
+
"sample_rate": 44100,
|
| 8 |
+
"stems": {
|
| 9 |
+
"vocals": {
|
| 10 |
+
"shape": [
|
| 11 |
+
617400,
|
| 12 |
+
2
|
| 13 |
+
],
|
| 14 |
+
"peak": 0.21046893298625946,
|
| 15 |
+
"finite": true
|
| 16 |
+
},
|
| 17 |
+
"instrumental": {
|
| 18 |
+
"shape": [
|
| 19 |
+
617400,
|
| 20 |
+
2
|
| 21 |
+
],
|
| 22 |
+
"peak": 0.5118863582611084,
|
| 23 |
+
"finite": true
|
| 24 |
+
}
|
| 25 |
+
},
|
| 26 |
+
"seconds_load_separate_write": 0.689663999946788,
|
| 27 |
+
"performance_measurement": false,
|
| 28 |
+
"network_disabled": true,
|
| 29 |
+
"conversion_dependencies_blocked": true,
|
| 30 |
+
"settings": {
|
| 31 |
+
"chunk_samples": 352800,
|
| 32 |
+
"overlap_windows": 2
|
| 33 |
+
}
|
| 34 |
+
}
|
validation/uvr-mdx-net-inst-hq3.json
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"model": "uvr-mdx-net-inst-hq3",
|
| 3 |
+
"status": "passed",
|
| 4 |
+
"mode": "published",
|
| 5 |
+
"fixture_sha256": "f5d0902f372a61ae2784239d0e097c9246c9d9b90be26a4a4805db8c96efad6d",
|
| 6 |
+
"fixture_frames": 617400,
|
| 7 |
+
"sample_rate": 44100,
|
| 8 |
+
"stems": {
|
| 9 |
+
"vocals": {
|
| 10 |
+
"shape": [
|
| 11 |
+
617400,
|
| 12 |
+
2
|
| 13 |
+
],
|
| 14 |
+
"peak": 0.32498443126678467,
|
| 15 |
+
"finite": true
|
| 16 |
+
},
|
| 17 |
+
"instrumental": {
|
| 18 |
+
"shape": [
|
| 19 |
+
617400,
|
| 20 |
+
2
|
| 21 |
+
],
|
| 22 |
+
"peak": 0.2586144208908081,
|
| 23 |
+
"finite": true
|
| 24 |
+
}
|
| 25 |
+
},
|
| 26 |
+
"seconds_load_separate_write": 0.7514086659066379,
|
| 27 |
+
"performance_measurement": false,
|
| 28 |
+
"network_disabled": true,
|
| 29 |
+
"conversion_dependencies_blocked": true,
|
| 30 |
+
"settings": {
|
| 31 |
+
"overlap_fraction": 0.25,
|
| 32 |
+
"segment_size": 256
|
| 33 |
+
},
|
| 34 |
+
"source_conversion_roundtrip": {
|
| 35 |
+
"vocals": {
|
| 36 |
+
"max_abs_error": 0.0,
|
| 37 |
+
"bit_identical": true
|
| 38 |
+
},
|
| 39 |
+
"instrumental": {
|
| 40 |
+
"max_abs_error": 0.0,
|
| 41 |
+
"bit_identical": true
|
| 42 |
+
}
|
| 43 |
+
}
|
| 44 |
+
}
|