# Licensing This project is released under a **dual non-commercial license**: - [`LICENSE.NSCL-A2SB`](LICENSE.NSCL-A2SB) — NVIDIA Source Code License for A2SB (the upstream license we inherit) - [`LICENSE.PolyForm-NC`](LICENSE.PolyForm-NC) — PolyForm Noncommercial 1.0.0 (our additional terms) You must comply with **both** licenses when using this work. ## What you can do - Use it for **research, evaluation, or any other non-commercial purpose** - Modify it, study it, share modifications under the same terms - Cite, reproduce, and discuss it in academic or technical writing ## What you cannot do - **Use it commercially.** This includes: - Selling the model, the code, or access to either - Including it in a paid product or paid service - Running it as part of a monetized API, SaaS, or hosted offering - Internal use within an organization for revenue-generating activities - Use NVIDIA's name, logos, or trademarks in any derivative If you want commercial use, you'd need a separate commercial license from NVIDIA (for the A2SB-derived parts) and from us (for the rest). We won't pretend otherwise. ## Why two licenses The model and parts of the codebase are derivative works of NVIDIA's A2SB release, which is governed by the NVIDIA Source Code License for A2SB. That license restricts use to non-commercial purposes and we cannot relax that restriction. PolyForm Noncommercial 1.0.0 layers on top with stricter, software-specific terms — source-availability requirements, patent retaliation, clean disclaimers — that the NVIDIA license itself doesn't impose. Both licenses restrict use to non-commercial purposes, so they stack without contradiction. ## What's covered by what | Component | Why it's NSCL-A2SB-bound | Also under PolyForm-NC | |---|---|---| | `training/locutius_train/network.py` | Verbatim port of NVIDIA's `networks.py` | yes | | `training/locutius_train/diffusion.py` | Verbatim port of NVIDIA's `diffusion.py` | yes | | Trained model checkpoints | Derivative of NVIDIA-released A2SB weights | yes | | `corruption-chain/` (the synthesis/profiling package) | Original work, no NVIDIA code | yes | | `training/main.py`, `config.py`, `data.py`, `trainer.py`, `restore.py`, `representation.py`, `utils.py`, `checkpoints.py` | Original work | yes | | Profiles (`corruption-chain/profiles/*.json`) | Original measurements | yes | | Documentation (`README.md`, `PLAN.md`, etc.) | Original | yes | For the A2SB-derived portions, NVIDIA's copyright headers must remain intact when you redistribute. We retain them in the source files. ## Practical examples | Use case | Allowed? | |---|---| | Training your own variant on personal music for personal listening | ✅ | | Publishing a research paper that uses this model | ✅ (cite it) | | Sharing the code/model on GitHub or HuggingFace under the same dual license | ✅ | | Using restored audio you made with the model in a commercial release | ❌ (the *output* is a derivative of the model under NSCL §3.3) | | Selling a "festival audio cleanup" service powered by this model | ❌ | | A streaming platform integrating this to clean audience-recorded uploads | ❌ | | Internal tool inside a record label to triage live recordings before commercial release | ❌ (revenue-adjacent) | | University course using it as a teaching example | ✅ | ## Not legal advice The licenses themselves are the controlling documents — this file just summarizes our reading. We are not lawyers. If you plan to do anything non-trivial with this work, talk to one.