Releases: JeffreyCA/spleeter-web
Releases · JeffreyCA/spleeter-web
v3.20.1 - Fix first-time Spleeter model download error
Changed
- Fix regression where first-time Spleeter model download fails due to
httpx
not following redirects (#949) - thanks @microtherion for the fix! - Add cleanup logic to remove leftover model files from failed download attempts
- Update dependencies
v3.20.0 - ARM/AArch64 Docker support
Added
- Add Docker support for AArch64 systems (including Apple Silicon)
Changed
- Update Docker Python version to 3.9
- Update Docker CUDA image version to 11.6.1
- Update dependencies
v3.19.0 - Add music player download button and yt-dlp options
Added
- Add 2 environment variables for configuring
yt-dlp
:YOUTUBEDL_SOURCE_ADDR
- Client-side IP address foryt-dlp
to bind to. If you are facing 403 Forbidden errors, try setting this to0.0.0.0
to force all connections through IPv4YOUTUBEDL_VERBOSE
- Set to1
to enable verbose logging foryt-dlp
- Add download button on music player
Changed
- Update dependencies
v3.18.0 - Bug fixes and improvements
Added
- Add
AWS_S3_REGION_NAME
andAWS_S3_SIGNATURE_VERSION
variables for S3 integration - Add more descriptive error logging
Changed
v3.17.0 - Spleeter 5-stem model (with piano)
Added
- Support Spleeter's 5-stem model which separates piano in addition to other accompaniment
Changed
- Update separator form UI to use buttons instead of dropdown menus
- Improve form field validation
- Bring back 'iterations' param for X-UMX model
- Fix Dev Docker Compose config
- Fix bug where deleting dynamic mix may cause blank screen
- Update dependencies
Removed
- Remove frontend upload size check and rely on Nginx and backend instead
v3.16.0 - Lossless output formats and configurable upload limits
Added
- Support lossless output formats (WAV, FLAC)
- Add
UPLOAD_FILE_SIZE_LIMIT
(MB) andYOUTUBE_LENGTH_LIMIT
(minutes) environment variables to customize upload limits
v3.15.0 - Demucs v4 and configurable segment sizes
Added
- Update Demucs to v4, which features new Hybrid Transformer models with average SDR of 9.0
- Add ability to configure segment sizes for Demucs models
- If Demucs separation fails for you due insufficient GPU memory, try setting the environment variable
DEMUCS_SEGMENT_SIZE
to a lower value like10
(default is40
, which requires a around 7 GB of memory). You may have to experiment a bit to find the appropriate value. See this for more info. - Also try setting
PYTORCH_NO_CUDA_MEMORY_CACHING=1
to disable caching
- If Demucs separation fails for you due insufficient GPU memory, try setting the environment variable
Changed
- Update Docker Compose definitions from version
3.4
to Compose Specification- You may have to update your Docker Compose version to the newer version
v3.14.0 - Raise minimum requirements and dependency updates
Changed
- Raise minimum Python version to 3.8 and NodeJS version to 16
- Update Docker images to use Python 3.8 and NodeJS 16 (bullseye)
- Update Spleeter, Demucs, Tensorflow, and other dependencies
Removed
- Remove some unused NPM dependencies
v3.13.0 - HTTPS and Dynamic Mix exporting
Changed
- Update dependencies
- Docker: start Django server using 'api' instead of 0.0.0.0 as bind address
Added
- Support for RTX GPUs - Thanks @Ma5onic! (#142)
- HTTPS support using docker-nginx-certbot.
- To use HTTPS, set
APP_HOST
to your domain name andCERTBOT_EMAIL
to your email in.env
and include-f docker-compose.https.yml
in yourdocker-compose up
command.
- To use HTTPS, set
- Add ability to export Dynamic Mixes based on each component's volume levels.
- To enable this feature, set
ENABLE_CROSS_ORIGIN_HEADERS=1
in.env
and either access Spleeter Web atlocalhost
or enable HTTPS on your domain. This is because it uses SharedArrayBuffers which require cross-origin isolation.- If using an external storage provider, you'll need to set the
Cross-Origin-Resource-Policy
response headers tocross-origin
. See this for more details.
- If using an external storage provider, you'll need to set the
- All the exporting is done in-browser using FFmpeg.WASM.
- Sidenote: Spleeter Web uses a forked version with some cherry-picked changes from the main FFmpeg repo pertaining to the
amix
filter.
- To enable this feature, set
v3.12.0 - Update X-UMX/D3Net models and minor improvements
Changed
- Update X-UMX and D3Net models to latest version
- Fix bug where status icon overlay sometimes disappears
- Fix bug where adding basic auth in front of nginx breaks the app (credit to @jtagcat)
- Update dependencies
Added
- Add
API_HOST
environment variable to control hostname of API server for nginx (credit to @jtagcat) - Show datetime when fetch task or separation task finished on status icon hover
- Model file integrity checks for X-UMX and D3Net models
- Add support for accelerated CPU separation for D3Net using OpenVINO
- To enable, set
D3NET_OPENVINO
environment variable to1
andD3NET_OPENVINO_THREADS
to number of CPU threads to use
- To enable, set
Removed
- Prune unused pip dependencies