Skip to content

Releases: kenny2077/hrrmony

Hrrmony v0.3.0

Choose a tag to compare

@kenny2077 kenny2077 released this 08 Oct 03:25

Security and reliability release, plus refreshed docs.

Security

  • Model downloads pinned: the villager RVC model, RMVPE and HuBERT are all pinned to exact Hugging Face commits.
  • Safe checkpoint loading: checkpoints are loaded with weights_only=True, and HuBERT now loads from safetensors.
  • Web app hardening: it refuses foreign Host headers (DNS rebinding) and cross-origin posts, caps the queue at 8 covers, and deletes files after 24 hours. Use HRRMONY_ALLOWED_HOSTS when it sits behind a proxy.

Fixed

  • A crash when the converted vocal and the instrumental differed by a few samples.
  • --full cutting the end off VBR MP3s.
  • A stale cache when a file was edited, and half-written cache files after an interrupted run.
  • Separation noise boosted to vocal level on near-instrumental tracks. The villager is now capped at 3 dB above the original singer.
  • Web UI: endless polling after an error, double submits while a cover is running, and event listeners piling up after each cover.

Changed

  • The separator loads once and is reused across songs.
  • Covers work offline once the models are downloaded.
  • Shift values are limited to ±24 semitones, through one parser shared by the CLI and the web API.
  • The product page demo plays only the villager. The README has new screenshots, requirements, tested results, a security section and a roadmap.

Install

pip install "hrrmony[gpu,web] @ git+https://github.com/kenny2077/hrrmony@v0.3.0"

Full changelog: CHANGELOG.md

Hrrmony v0.2.0

Choose a tag to compare

@kenny2077 kenny2077 released this 07 Oct 17:11

Villager Sound is now Hrrmony: the villager's "hrmm" + harmony.

Changed

  • New name everywhere. The package, CLI and Python module are hrrmony. The cache variable is HRRMONY_HOME (default ~/.cache/hrrmony), and the repository is kenny2077/hrrmony. GitHub redirects the old repository URL.
  • New pixel villager icon for the web app and the product page.

Added

Upgrading from 0.1.0

pip uninstall villager-sound
pip install "hrrmony[gpu,web] @ git+https://github.com/kenny2077/hrrmony@v0.2.0"
mv ~/.cache/villager-sound ~/.cache/hrrmony   # keep the downloaded models

Then use hrrmony cover / hrrmony serve instead of villager-sound ….

Full changelog: CHANGELOG.md

Villager Sound v0.1.0

Choose a tag to compare

@kenny2077 kenny2077 released this 07 Oct 01:58

First release: turn any song into a Minecraft villager cover, locally.

Highlights

  • Two modes: the best 30 seconds, with the chorus found automatically (--hook), or the whole song (--full).
  • The sound of the viral covers. Vocal separation (Mel-Band RoFormer) and RVC villager voice conversion, with a mix matched against a popular AI villager cover. See how it works.
  • Local web app (villager-sound serve): upload, live progress, A/B playback, MP3/WAV download.
  • CLI tools: cover, serve, doctor and voices, plus a Python API (make_cover).
  • Docker image with CUDA, and a compose file.

Install

pip install "villager-sound[gpu,web] @ git+https://github.com/kenny2077/villager-sound@v0.1.0"
villager-sound doctor

Full changelog: CHANGELOG.md