stemit-cli 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +40 -0
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -34,6 +34,7 @@
34
34
  - [Skip BPM/key analysis](#skip-bpmkey-analysis)
35
35
  - [All options](#all-options)
36
36
  - [Available Models](#available-models)
37
+ - [Separation Accuracy](#separation-accuracy)
37
38
  - [Output Structure](#output-structure)
38
39
  - [How It Works](#how-it-works)
39
40
  - [First-Run Setup](#first-run-setup)
@@ -259,6 +260,45 @@ Options:
259
260
 
260
261
  ---
261
262
 
263
+ ## Separation Accuracy
264
+
265
+ stemit uses [Demucs](https://github.com/facebookresearch/demucs) — one of the highest-rated open-source source separation models, consistently ranking at the top of the [Music Demixing Challenge](https://mdx-workshop.github.io/) leaderboards.
266
+
267
+ **What to expect:**
268
+
269
+ | Genre / Instrument | Typical Quality |
270
+ |---|---|
271
+ | Vocals (pop/rock) | Excellent — clean isolation with minimal bleed |
272
+ | Drums | Very good — kick, snare, and cymbals well preserved |
273
+ | Bass | Good — works best when bass is prominent in the mix |
274
+ | Guitar / Piano (`htdemucs_6s`) | Moderate — depends heavily on how prominent the instrument is |
275
+ | Electronic / heavily layered music | Lower — harder to separate tightly mixed synths |
276
+ | Vocals (rap/spoken word) | Good — works well when vocals are dry or lightly processed |
277
+
278
+ **Factors that affect quality:**
279
+
280
+ - **Production style** — heavily compressed or layered mixes are harder to separate
281
+ - **Frequency overlap** — instruments sharing the same frequency range (e.g. bass guitar and kick drum) bleed into each other
282
+ - **Reverb / effects** — wet, heavily reverbed sources are harder to isolate cleanly
283
+ - **Model choice** — `htdemucs_ft` gives the best overall quality; `mdx_extra` is specifically tuned for vocals
284
+
285
+ **Benchmark scores (SDR — Signal-to-Distortion Ratio, higher is better):**
286
+
287
+ The `htdemucs_ft` model achieves approximately:
288
+
289
+ | Stem | SDR |
290
+ |---|---|
291
+ | Vocals | ~8.4 dB |
292
+ | Drums | ~8.6 dB |
293
+ | Bass | ~8.8 dB |
294
+ | Other | ~5.8 dB |
295
+
296
+ > SDR is a standard metric for source separation. Scores above 6 dB are considered good; above 8 dB is excellent. For reference, an SDR of 0 means the output is no better than silence.
297
+
298
+ These scores are competitive with commercial stem separation tools and are state-of-the-art for open-source models. Results on real-world music may vary.
299
+
300
+ ---
301
+
262
302
  ## Output Structure
263
303
 
264
304
  ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stemit-cli",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "CLI tool to split audio into stems (vocals/drums/bass/other), analyze BPM & key, and mute/solo tracks",
5
5
  "type": "module",
6
6
  "bin": {
@@ -30,11 +30,11 @@
30
30
  "license": "MIT",
31
31
  "repository": {
32
32
  "type": "git",
33
- "url": "https://github.com/saravanaraja25/stemit.git"
33
+ "url": "https://github.com/saravanaraja25/stemit-cli.git"
34
34
  },
35
- "homepage": "https://github.com/saravanaraja25/stemit#readme",
35
+ "homepage": "https://github.com/saravanaraja25/stemit-cli#readme",
36
36
  "bugs": {
37
- "url": "https://github.com/saravanaraja25/stemit/issues"
37
+ "url": "https://github.com/saravanaraja25/stemit-cli/issues"
38
38
  },
39
39
  "scripts": {
40
40
  "start": "node bin/stemit.js"