Files
SonicForgeStudio/LICENSE.md
T

103 lines
4.6 KiB
Markdown

# LICENSE — SonicForgeStudio
## 1. Mã nguồn dự án
MIT License
Copyright (c) 2026 SonicForge Studio contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
File văn bản MIT đầy đủ: `LICENSE`.
## 2. Thành phần bên thứ ba
Kiểm tra ngày 2026-08-15 (verify từ PyPI/GitHub/wheel). Các thành phần giữ
license gốc; chi tiết + attribution: `THIRD_PARTY_LICENSES.md`.
### 2.1. npm (`package.json`)
| Thành phần | License |
|---|---|
| react / react-dom 19.x | MIT |
| @babel/cli, @babel/core, @babel/preset-react | MIT |
| jsdom | MIT |
| @tauri-apps/cli 2.x (desktop shell) | Apache-2.0 OR MIT |
### 2.2. Python (`requirements.txt`)
| Thành phần | License |
|---|---|
| fastapi | MIT |
| uvicorn | BSD-3-Clause |
| celery | BSD-3-Clause |
| redis | MIT |
| python-multipart | Apache-2.0 |
| librosa | ISC |
| pydub | MIT |
| numpy | BSD-3-Clause (kèm code nhúng: 0BSD, MIT, Zlib, CC0-1.0) |
| scipy | BSD-3-Clause (kèm OpenBLAS BSD-3, GCC runtime GPL-3.0-with-exception) |
| soundfile | BSD-3-Clause |
| jinja2 | BSD-3-Clause |
| httpx | BSD-3-Clause |
| jsonschema | MIT |
| mido | MIT |
| pyfluidsynth | MIT (wrapper — link FluidSynth **LGPL-2.1+**) |
| sf2utils 1.0.0 | **LGPL-3.0+** (LICENSE.txt trong wheel; metadata PyPI ghi nhầm "GPLv3+") |
| pedalboard 0.9.19 | **GPL-3.0** ⚠️ — xem mục 3 |
### 2.3. Native bridge (`native_bridge/`, C++)
| Thành phần | License |
|---|---|
| fluidsynth (vcpkg) | LGPL-2.1+ |
| vst3sdk (git submodule, `native_bridge/vst3sdk`) | MIT (© 2026 Steinberg Media Technologies GmbH) |
| vestige (dự kiến thêm khi implement VST2, xem `DESIGN_VST2_BACKWARD_COMPAT.md`) | header mã nguồn mở — xác nhận lại file license gốc khi thêm vào repo |
### 2.4. Nhúng (`app/static`)
| Thành phần | License |
|---|---|
| `css/tailwind.min.css` | MIT |
| Lucide icons | ISC |
| `js/vendor/libfluidsynth-2.3.0-sf3.js` + `.wasm` (FluidSynth Emscripten) | **LGPL-2.1+** |
| `js/services/spessasynth_processor.min.js` | MIT — file chết, không include trong `index.html` |
### 2.5. Nội dung âm thanh (`app/storage`)
| Thành phần | License | Trạng thái |
|---|---|---|
| "General MIDI SoundFont v3.0" — © 2006-2010 Rich "Weeds" Nagel | "Some rights reserved" (không rõ điều kiện) | ⚠️ cần attribution hoặc thay SF2 license rõ |
| SGM-V2.01 | Freeware — hạn chế redistribution | ⚠️ không nhúng vào bản phân phối |
## 3. Lưu ý pháp lý khi phân phối
1. **pedalboard (GPL-3.0)** — dùng runtime ở server (`app/core/render_engine.py`,
`app/core/vst_engine.py`, `app/api/v1/plugins.py`) cho render VST3.
GPL-3.0 copyleft → phân phối bản server gộp pedalboard có thể kéo toàn bộ
phần combined theo GPL. Cần: tách pedalboard ra subprocess/plugin riêng
(không import trong process MIT chính) hoặc thay thế bằng host khác.
2. **sf2utils (LGPL-3.0+)** — dùng runtime (`app/core/soundfont_inspector.py`).
LGPL cho phép app MIT dùng nếu giữ notice + (khi phân phối binary) cung cấp
khả năng relink/object tương ứng.
3. **FluidSynth (LGPL-2.1+)** — vừa nhúng Emscripten (`app/static`) vừa link
tĩnh qua vcpkg (`native_bridge`). Bắt buộc: giữ license notice, cung cấp
link/object relinkable khi phân phối bản build.
4. **vst3sdk (MIT)** — tương thích hoàn toàn với dự án MIT.
5. **VST2 SDK của Steinberg** — discontinued, license không cấp mới → hướng
dùng **vestige** (header mã nguồn mở) theo `DESIGN_VST2_BACKWARD_COMPAT.md`,
không nhúng VST2 SDK chính hãng.
6. **SoundFont** — SGM-V2.01 không đưa vào bản phân phối; SF2 Rich Nagel cần
attribution hoặc thay thế.