- config.py: SF_RENDER_ENGINE default 'bridge' (pedalboard GPL-3.0 đã gỡ)
- requirements.txt: bỏ pedalboard==0.9.19
- vst_engine.py: bỏ HAS_PEDALBOARD/check_pedalboard_safe/load_vst/import pedalboard;
midi_events_to_messages giữ làm utility thuần (không gate pedalboard)
- render_engine.py: bỏ nhánh elif vst and HAS_PEDALBOARD + import thừa
- plugins.py: preview/midi-render chỉ qua native_bridge; guard SF_RENDER_ENGINE=bridge
- runtime.py: _vst_render_available() check bridge exe (SF_BRIDGE_PATH/install/) thay find_spec('pedalboard')
- LICENSE.md/THIRD_PARTY_LICENSES.md: bỏ cảnh báo GPL-3.0 pedalboard, đánh số lại
- tests: bỏ test golden so pedalboard + test requires_pedalboard; 114 passed 0 skip
4.2 KiB
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+") |
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
- 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. - 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. - vst3sdk (MIT) — tương thích hoàn toàn với dự án MIT.
- 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. - 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ế.