Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .flake8

This file was deleted.

5 changes: 3 additions & 2 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ Following command should be ran successfully before to consider a PR for merging

```bash
poetry run pytest tests/
poetry run black spleeter
poetry run isort spleeter
qa-clean:
poetry run ruff check --fix spleeter
poetry run ruff format spleeter
```
5 changes: 2 additions & 3 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,8 @@ A few sentences describing the overall goals of the pull request's commits.

You tested it, right?

- [ ] I implemented unit test whicn ran successfully using `poetry run pytest tests/`
- [ ] Code has been formatted using `poetry run black spleeter`
- [ ] Imports has been formatted using `poetry run isort spleeter``
- [ ] I implemented unit test which ran successfully using `poetry run pytest tests/`
- [ ] Code has been formatted using `poetry run ruff format spleeter`

## Documentation link and external references

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/conda.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ jobs:
build-linux:
strategy:
matrix:
python: [3.7, 3.8]
python: [3.9, 3.10, 3.11, 3.12]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
Expand All @@ -31,7 +31,7 @@ jobs:
build-windows:
strategy:
matrix:
python: [3.7]
python: [3.0, 3.10, 3.11, 3.12]
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ on:
version:
description: "Spleeter version to build image for"
required: true
default: "2.1.2"
default: "2.5.0"
jobs:
cuda-base:
runs-on: ubuntu-latest
strategy:
matrix:
distribution: [3.6, 3.7, 3.8]
distribution: [3.9, 3.10, 3.11, 3.12]
fail-fast: true
steps:
- uses: actions/checkout@v2
Expand All @@ -31,7 +31,7 @@ jobs:
strategy:
matrix:
platform: [cpu, gpu]
distribution: [3.6, 3.7, 3.8]
distribution: [3.9, 3.10, 3.11, 3.12]
fail-fast: true
steps:
- uses: actions/checkout@v2
Expand All @@ -50,7 +50,7 @@ jobs:
--build-arg SPLEETER_VERSION=${{ github.event.inputs.version }} \
-t deezer/${{ env.image }}:${{ matrix.distribution }} \
-f docker/spleeter.dockerfile .
- if: ${{ matrix.distribution == '3.8' }}
- if: ${{ matrix.distribution == '3.11' }}
run: |
docker tag deezer/${{ env.image }}:${{ matrix.distribution }} deezer/${{ env.image }}:latest
- name: Test deezer/${{ env.image }}:${{ matrix.distribution }} image
Expand Down Expand Up @@ -80,7 +80,7 @@ jobs:
- if: ${{ matrix.platform == 'gpu' }}
name: Build Conda base image
run: |
docker build --build-arg BASE=deezer/python-cuda-10-1:3.8 -t conda:gpu -f docker/conda.dockerfile .
docker build --build-arg BASE=deezer/python-cuda-10-1:3.11 -t conda:gpu -f docker/conda.dockerfile .
echo "image=spleeter-gpu" >> $GITHUB_ENV
- name: Build deezer/${{ env.image }}:${{ env.tag }} image
run: |
Expand All @@ -99,7 +99,7 @@ jobs:
strategy:
matrix:
platform: [cpu, gpu]
distribution: [3.6, 3.7, 3.8]
distribution: [3.9, 3.10, 3.11, 3.12]
model: [2stems, 4stems, 5stems]
fail-fast: true
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pypi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: 3.9
python-version: 3.11
- name: Install Poetry
run: |
pip install poetry
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11']
python-version: ['3.9', '3.10', '3.11', '3.12']
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- uses: actions/cache@v2
- uses: actions/cache@v4
env:
model-release: 1
id: spleeter-model-cache
Expand All @@ -33,7 +33,7 @@ jobs:
poetry config virtualenvs.in-project false
poetry config virtualenvs.path ~/.virtualenvs
- name: Cache Poetry virtualenv
uses: actions/cache@v1
uses: actions/cache@v4
id: cache
with:
path: ~/.virtualenvs
Expand All @@ -45,7 +45,7 @@ jobs:
if: steps.cache.outputs.cache-hit != 'true'
- name: Code quality checks
run: |
poetry run black spleeter --check
poetry run isort spleeter --check
poetry run ruff check --no-fix spleeter
poetry run ruff format --check spleeter
- name: Test with pytest
run: poetry run pytest tests/
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Changelog History

## 2.5.0

* Fix CI/CD and add support for python 3.12, dropping 3.8 as it is EOL.
* Update Tensorflow to 2.14.0
* Use Ruff for linting and formatting instead of Flake8, Black and isort.

## 2.4.2

Dependecy upgrades and adding support for python 3.11 (dropping 3.7)
Expand All @@ -8,6 +14,7 @@ Dependecy upgrades and adding support for python 3.11 (dropping 3.7)

Release contrain on specific Tensorflow, numpy and Librosa versions
Dropping explicit support of python 3.6 but adding 3.10

## 2.3.0

Updating dependencies to enable TensorFlow 2.5 support (and Python 3.9 overall)
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Since it's been released, there are multiple forks exposing **Spleeter** through

That being said, many cool projects have been built on top of ours. Notably the porting to the *Ableton Live* ecosystem through the [Spleeter 4 Max](https://github.com/diracdeltas/spleeter4max#spleeter-for-max) project.

**Spleeter** pre-trained models have also been used by professionnal audio softwares. Here's a non-exhaustive list:
**Spleeter** pre-trained models have also been used by professional audio softwares. Here's a non-exhaustive list:

* [iZotope](https://www.izotope.com/en/shop/rx-8-standard.html) in its *Music Rebalance* feature within **RX 8**
* [SpectralLayers](https://new.steinberg.net/spectralayers/) in its *Unmix* feature in **SpectralLayers 7**
Expand Down Expand Up @@ -119,7 +119,7 @@ If you plan to use **Spleeter** on copyrighted material, make sure you get prope

## Troubleshooting

**Spleeter** is a complex piece of software and although we continously try to improve and test it you may encounter unexpected issues running it. If that's the case please check the [FAQ page](https://github.com/deezer/spleeter/wiki/5.-FAQ) first as well as the list of [currently open issues](https://github.com/deezer/spleeter/issues)
**Spleeter** is a complex piece of software and although we continuously try to improve and test it you may encounter unexpected issues running it. If that's the case please check the [FAQ page](https://github.com/deezer/spleeter/wiki/5.-FAQ) first as well as the list of [currently open issues](https://github.com/deezer/spleeter/issues)

### Windows users

Expand All @@ -131,7 +131,7 @@ If you would like to participate in the development of **Spleeter** you are more

## Note

This repository include a demo audio file `audio_example.mp3` which is an excerpt
This repository includes a demo audio file `audio_example.mp3` which is an excerpt
from Slow Motion Dream by Steven M Bryant (c) copyright 2011 Licensed under a Creative
Commons Attribution (3.0) [license](http://dig.ccmixter.org/files/stevieb357/34740)
Ft: CSoul,Alex Beroza & Robert Siekawitch
6 changes: 3 additions & 3 deletions conda/spleeter/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{% set name = "spleeter" %}
{% set version = "2.4.0" %}
{% set version = "2.5.0" %}

package:
name: {{ name|lower }}
Expand All @@ -23,8 +23,8 @@ requirements:
- poetry
run:
- python {{ python }}
- tensorflow ==2.5.0 # [linux]
- tensorflow ==2.5.0 # [win]
- tensorflow ==2.14.0 # [linux]
- tensorflow ==2.14.0 # [win]
- numpy
- pandas
- ffmpeg-python
Expand Down
2 changes: 1 addition & 1 deletion docker/conda.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARG BASE=python:3.7
ARG BASE=python:3.11
FROM ${BASE}

RUN apt-get update --fix-missing \
Expand Down
22 changes: 11 additions & 11 deletions docker/cuda-10-0.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARG BASE=python:3.7
ARG BASE=python:3.11
FROM ${BASE}

ENV CUDA_VERSION 10.0.130
Expand All @@ -18,26 +18,26 @@ LABEL com.nvidia.volumes.needed="nvidia_driver"

RUN apt-get update \
&& apt-get install -y --no-install-recommends \
gnupg2 \
curl \
ca-certificates \
gnupg2 \
curl \
ca-certificates \
&& curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub | apt-key add - \
&& echo "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda.list \
&& echo "deb https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/nvidia-ml.list \
&& apt-get purge --autoremove -y curl \
&& apt-get update \
&& apt-get install -y --no-install-recommends \
cuda-cudart-$CUDA_PKG_VERSION \
cuda-compat-10-0 \
cuda-cudart-$CUDA_PKG_VERSION \
cuda-compat-10-0 \
&& ln -s cuda-10.0 /usr/local/cuda \
&& echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf \
&& echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf \
&& apt-get install -y --no-install-recommends \
cuda-toolkit-10-0 \
cuda-libraries-$CUDA_PKG_VERSION \
cuda-nvtx-$CUDA_PKG_VERSION \
libnccl2=$NCCL_VERSION-1+cuda10.0 \
libcudnn7=$CUDNN_VERSION-1+cuda10.0 \
cuda-toolkit-10-0 \
cuda-libraries-$CUDA_PKG_VERSION \
cuda-nvtx-$CUDA_PKG_VERSION \
libnccl2=$NCCL_VERSION-1+cuda10.0 \
libcudnn7=$CUDNN_VERSION-1+cuda10.0 \
&& apt-mark hold libnccl2 \
&& apt-mark hold libcudnn7 \
&& rm -rf /var/lib/apt/lists/*
24 changes: 12 additions & 12 deletions docker/cuda-10-1.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARG BASE=python:3.8
ARG BASE=python:3.11
FROM ${BASE}

ENV CUDA_VERSION 10.1.243
Expand All @@ -18,27 +18,27 @@ LABEL com.nvidia.volumes.needed="nvidia_driver"

RUN apt-get update \
&& apt-get install -y --no-install-recommends \
gnupg2 \
curl \
ca-certificates \
gnupg2 \
curl \
ca-certificates \
&& curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub | apt-key add - \
&& echo "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda.list \
&& echo "deb https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/nvidia-ml.list \
&& apt-get purge --autoremove -y curl \
&& apt-get update \
&& apt-get install -y --no-install-recommends \
cuda-cudart-$CUDA_PKG_VERSION \
cuda-compat-10-1 \
cuda-cudart-$CUDA_PKG_VERSION \
cuda-compat-10-1 \
&& ln -s cuda-10.1 /usr/local/cuda \
&& echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf \
&& echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf \
&& apt-get install -y --no-install-recommends \
cuda-libraries-$CUDA_PKG_VERSION \
cuda-npp-$CUDA_PKG_VERSION \
cuda-nvtx-$CUDA_PKG_VERSION \
libcublas10=10.2.1.243-1 \
libcudnn7=$CUDNN_VERSION-1+cuda10.1 \
libnccl2=$NCCL_VERSION-1+cuda10.1 \
cuda-libraries-$CUDA_PKG_VERSION \
cuda-npp-$CUDA_PKG_VERSION \
cuda-nvtx-$CUDA_PKG_VERSION \
libcublas10=10.2.1.243-1 \
libcudnn7=$CUDNN_VERSION-1+cuda10.1 \
libnccl2=$NCCL_VERSION-1+cuda10.1 \
&& apt-mark hold libnccl2 \
&& apt-mark hold libcudnn7 \
&& apt-mark hold libcublas10 \
Expand Down
10 changes: 5 additions & 5 deletions docker/cuda-9.2.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARG BASE=python:3.7
ARG BASE=python:3.11
FROM ${BASE}

# FROM 9.2-base-ubuntu18.04
Expand All @@ -13,7 +13,7 @@ ENV CUDA_VERSION 9.2.148
ENV CUDA_PKG_VERSION 9-2=$CUDA_VERSION-1
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
cuda-cudart-$CUDA_PKG_VERSION \
cuda-cudart-$CUDA_PKG_VERSION \
&& ln -s cuda-9.2 /usr/local/cuda \
&& rm -rf /var/lib/apt/lists/*
LABEL com.nvidia.volumes.needed="nvidia_driver"
Expand All @@ -31,9 +31,9 @@ ENV NVIDIA_REQUIRE_CUDA "cuda>=9.2"
ENV NCCL_VERSION 2.3.7
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
cuda-libraries-$CUDA_PKG_VERSION \
cuda-nvtx-$CUDA_PKG_VERSION \
libnccl2=$NCCL_VERSION-1+cuda9.2 \
cuda-libraries-$CUDA_PKG_VERSION \
cuda-nvtx-$CUDA_PKG_VERSION \
libnccl2=$NCCL_VERSION-1+cuda9.2 \
&& apt-mark hold libnccl2 \
&& rm -rf /var/lib/apt/lists/*

Expand Down
2 changes: 1 addition & 1 deletion docker/spleeter-conda.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ ARG BASE=conda

FROM ${BASE}

ARG SPLEETER_VERSION=1.5.3
ARG SPLEETER_VERSION=2.5.0
ENV MODEL_PATH /model

RUN mkdir -p /model
Expand Down
4 changes: 2 additions & 2 deletions docker/spleeter.dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
ARG BASE=python:3.6
ARG BASE=python:3.12

FROM ${BASE}

ARG SPLEETER_VERSION=1.5.3
ARG SPLEETER_VERSION=2.5.0
ENV MODEL_PATH /model

RUN mkdir -p /model
Expand Down
Loading
Loading