{"id":45640405,"url":"https://github.com/dq-labs/rend","last_synced_at":"2026-04-08T06:01:41.322Z","repository":{"id":338342859,"uuid":"1126487680","full_name":"DQ-Labs/Rend","owner":"DQ-Labs","description":"Offline AI Music Stem Separator for Windows (Demucs GUI).","archived":false,"fork":false,"pushed_at":"2026-04-07T02:59:38.000Z","size":145,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-07T03:27:32.065Z","etag":null,"topics":["ai-tools","audio-processing","demucs","gui","music-production","python","stem-separation"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DQ-Labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-02T02:34:36.000Z","updated_at":"2026-04-07T02:59:44.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/DQ-Labs/Rend","commit_stats":null,"previous_names":["dq-labs/rend"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/DQ-Labs/Rend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DQ-Labs%2FRend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DQ-Labs%2FRend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DQ-Labs%2FRend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DQ-Labs%2FRend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DQ-Labs","download_url":"https://codeload.github.com/DQ-Labs/Rend/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DQ-Labs%2FRend/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31542384,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"online","status_checked_at":"2026-04-08T02:00:06.127Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-tools","audio-processing","demucs","gui","music-production","python","stem-separation"],"created_at":"2026-02-24T02:30:30.033Z","updated_at":"2026-04-08T06:01:41.315Z","avatar_url":"https://github.com/DQ-Labs.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Rend\n\nA simple Windows GUI for AI Music Stem Separation (Demucs) built with CustomTkinter.\n\n## Features\n- **Offline CPU Execution**: Uses `demucs` for processing without requiring a GPU or internet connection for inference (after model download).\n- **6 Model Options**: Choose from htdemucs, htdemucs_ft, htdemucs_6s, mdx, mdx_extra, and mdx_q — from fast defaults to high-precision options (see Model Selection below).\n- **High Quality Mode**: Enable `shifts=2` for better separation quality (runs slower).\n- **Karaoke Mode**: Automatic 2-stem output merging non-vocal stems into a single 'Accompaniment' track.\n- **WAV Export**: Saves separated stems directly as WAV files using `soundfile`.\n- **Dark Mode GUI**: Clean and modern interface powered by `customtkinter`.\n- **Threaded Processing**: Keeps the UI responsive during separation.\n\n## Downloads\n\n**Windows users can download the latest standalone executable (no Python required) from the [Releases Page](https://github.com/DQ-Labs/Rend/releases).**\n\n## Model Selection\n\n| Model | Description |\n|---|---|\n| `htdemucs` | **Default.** Balanced speed and quality. Good starting point. |\n| `htdemucs_ft` | Fine-tuned. Slightly better vocals, but ~4x slower. |\n| `htdemucs_6s` | Experimental 6-stem split: Drums, Bass, Vocals, Guitar, Piano, Other. |\n| `mdx` | Classic model trained on MusDB HQ. Good baseline. |\n| `mdx_extra` | High-precision. Uses extra training data. Good for complex mixes. |\n| `mdx_q` | Quantized. Smaller download, slightly lower quality. |\n\n## Installation\n\n### Prerequisites\n- **Python 3.10+**\n- **FFmpeg**: `ffmpeg.exe` and `ffprobe.exe` must be present in the root directory.\n\n### Setup\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/DQ-Labs/Rend.git\n   cd Rend\n   ```\n\n2. Create and activate a virtual environment:\n   ```bash\n   python -m venv venv\n   .\\venv\\Scripts\\activate\n   ```\n\n3. Install direct dependencies:\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n4. Install Demucs and patch for Windows compatibility:\n   ```powershell\n   .\\setup_dev.ps1\n   ```\n   *This script clones the Demucs source, applies Windows compatibility patches, and installs it as an editable package.*\n\n## Usage\n\nRun the application:\n```bash\npython app.py\n```\n\n1. Click **Select Audio File** and choose an MP3, WAV, or FLAC file.\n2. Pick a model and toggle options as desired.\n3. Click **SEPARATE STEMS**.\n\nOutput stems are saved as WAV files in a folder named `\u003cfilename\u003e_stems` next to the input file (e.g. `mysong.mp3` → `mysong_stems/`).\n\n## Architecture\n- **Local Demucs Source**: The project relies on a local copy of the `demucs` library in `demucs_source/`, installed via `pip install -e .` with custom compatibility patches applied by `setup_dev.ps1`.\n- **Dependency Management**: Core dependencies (`torch`, `soundfile`, `customtkinter`) are listed in `requirements.txt`. Demucs must be installed from source.\n\n## Building from Source\n\nTo create a standalone EXE file using PyInstaller:\n\n1. **Prerequisites**:\n   - `ffmpeg.exe` and `ffprobe.exe` present in the root directory.\n   - Virtual environment activated with all dependencies installed (see Setup above).\n\n2. **Build**:\n   ```bash\n   pyinstaller Rend.spec --clean --noconfirm\n   ```\n\n   The `Rend.spec` file is configured to:\n   - Include `demucs_source` in the path and data bundle.\n   - Bundle `ffmpeg.exe` and `ffprobe.exe` binaries.\n   - Handle hidden imports for `demucs` and `soundfile`.\n   - Create a single-file executable (`dist/Rend.exe`).\n\n## Known Behavior\n- **Launch Time**: The `.exe` takes approximately **30 seconds to launch**. This is normal for a PyInstaller one-file build as it unpacks to a temporary runtime directory on first launch.\n- **First Run**: On the very first separation, the app will automatically download the necessary AI model weights. This requires an internet connection and may take a few minutes. Subsequent runs are fully offline.\n- **Windows SmartScreen**: Because the executable is unsigned, Windows may show a SmartScreen warning on first launch. Click \"More info\" → \"Run anyway\" to proceed.\n\n## Troubleshooting\n\n### Red FFmpeg indicator\n\n![Rend showing a red FFmpeg status dot](assets/ffmpeg-error.png)\n\nIf the **● FFmpeg** dot in the bottom-left is **red**, the app cannot find `ffmpeg.exe` on your system PATH or in the project root.\n\n**This only affects source installs.** The standalone `.exe` from the [Releases Page](https://github.com/DQ-Labs/Rend/releases) bundles FFmpeg automatically — no action needed.\n\nIf you are running from source, place `ffmpeg.exe` and `ffprobe.exe` in the project root directory (alongside `app.py`) and restart the app. FFmpeg builds for Windows are available at [gyan.dev/ffmpeg/builds](https://www.gyan.dev/ffmpeg/builds/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdq-labs%2Frend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdq-labs%2Frend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdq-labs%2Frend/lists"}