Skip to content

[FEAT]: ds.extract_stems(audio_path, drumless=True, verbose=True) creates a drumless backing track but does not return its path. #298

Closed

Description

@bellescoincidences

Summary

ds.extract_stems(audio_path, drumless=True, verbose=True) creates a drumless
backing track but does not return its path.

Detail

extract_stems() (drumscript/init.py) calls separate_audio(), which
returns a dict containing the backing-track path under the key mix. But
extract_stems() discards that dict and constructs its own:

{"status", "drum_stem_path", "original_file", "output_directory"}

so mix never reaches the caller. Verified at runtime — the returned keys are:

['drum_stem_path', 'original_file', 'output_directory', 'status']

The backing track exists on disk (as <input>_no_drums.<ext> inside
output_directory) but the user has to reconstruct that path by hand.

Fix

Carry the path through from separate_audio()'s return value, exposed under a
readable key backing_track_path (not the terse mix). Then update the README
backing-track example to print remove_drums['backing_track_path'].

Target

v0.2.1

Notes

  • v0.2.0 ships a doc-only workaround: the README example uses output_directory.
  • Same class of bug as the build_score() / transcribe() path-reporting fix
    in v0.2.0 — a function doing more than it reports.

Activity

  1. linked a pull request that will close this issuerelease/0.2.0 #286on Aug 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions