--- id: pyrubberband version: "0.4.0" license: ISC license_treatment: permissive maintenance: dormant --- # pyrubberband — Python module to wrap rubberband License: permissive · Maintenance: dormant · Downloads: 98.1K/mo ## What it is and what it does pyrubberband is a lightweight Python wrapper around the Rubberband audio processing tool, enabling time-stretching and pitch-shifting of audio files. It processes audio via the Rubberband command-line interface, reading and writing files to disk rather than operating in-memory. The package depends on numpy and soundfile for audio I/O and manipulation. The wrapper exposes Rubberband's command-line options, allowing you to pass additional arguments to control processing behavior. It is classified as Alpha and supports Python 3.7 through 3.12. The project has been stable since its initial release in 2015 but has not received active development recently, making it suitable for established workflows that don't require new features or frequent updates. Use it for: - Adjust playback speed of audio files without changing pitch for music practice or analysis. - Shift the pitch of recordings up or down while preserving tempo for transposition tasks. - Batch-process audio files with Rubberband CLI options for custom time-stretch and pitch-shift parameters. - Integrate audio time-stretching into music information retrieval or audio analysis pipelines. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides Python wrappers for time-stretching and pitch-shifting audio via the Rubberband command-line tool, processing audio files on disk. Yes, if you need time-stretching or pitch-shifting and already have Rubberband installed or can install it on your target system. The low install friction, permissive license, and stable API make it a straightforward choice for audio processing workflows. No, if you require active maintenance, in-memory processing, or need Rubberband support on Windows without manual setup. ## Install pip install pyrubberband uv add pyrubberband poetry add pyrubberband ## Installing pyrubberband Before you install: Low install friction with a pure-Python wheel. Maintenance is dormant—last release was 683 days ago—but the repository remains active with recent commits and no archived status. Suitable for stable use cases that don't require ongoing feature development. License in practice: Licensed under ISC (permissive), allowing commercial and private use with minimal restrictions. No notable licensing constraints for most use cases. Quickstart: pip install pyrubberband import soundfile as sf import pyrubberband as pyrb y, sr = sf.read("test.wav") y_stretched = pyrb.time_stretch(y, sr, 2.0) Requires the Rubberband command-line tool to be installed separately on your system (e.g., via brew on macOS or package manager on Linux). Verify before relying: - Whether Rubberband CLI installation is straightforward on Windows and Linux systems beyond the macOS example provided. - Performance characteristics and latency for real-time or streaming audio use cases. - Supported audio formats and sample rate constraints beyond the basic example. ## Package facts - License: ISC (permissive) - Python support: supports_current - Install friction: low - Maintenance: dormant - Downloads: 98.1K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags audio time stretching python, pitch shifting library, rubberband wrapper, audio tempo adjustment, sound processing python, audio manipulation, time stretch pitch shift, audio-processing, cli-wrapper, dormant-but-stable [View on SkillFed](https://skillfed.io/packages/pyrubberband) · [View on PyPI](https://pypi.org/project/pyrubberband/)