Skip to content

Commit aa09eb8

Browse files
authored
Added waveform & spectrogram verification to integration tests (#209)
* Added waveform & spectrogram verification to integration tests * Raised minimum similarity threshold for waveform/spectrogram image comparison in integration tests, except for demucs which is pretty inconsistent with itself * Updated dependencies, moved to using SSIM for wave/spect comparison in integration test * Attempt to fix integration test volatility with demucs by fixing Y axis for waveform images, but spectrograms are still all over the place * Added integration test verifying the output dir and custom output names work as expected * Split waveform and spec thresholds, lowered all, added images to test artifacts for CI * Split DEFAULT_SIMILARITY_THRESHOLD to override spectrogram threshold * Only run integration tests in integration workflow...
1 parent 1bcb041 commit aa09eb8

47 files changed

Lines changed: 1469 additions & 341 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/run-integration-tests.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ jobs:
5959
ls -la $AUDIO_SEPARATOR_MODEL_DIR || echo "Directory empty or doesn't exist"
6060
6161
- name: Run integration tests
62-
run: poetry run pytest tests -v --cov=audio_separator --cov-report=xml
62+
run: poetry run pytest -sv --cov=audio_separator --cov-report=xml tests/integration
6363

6464
- name: Upload coverage reports to Codecov
6565
uses: codecov/codecov-action@v3
@@ -74,3 +74,5 @@ jobs:
7474
path: |
7575
*.flac
7676
tests/*.flac
77+
**/temp_images/**/*.png
78+
tests/**/temp_images/**/*.png

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
*.mp3
1414
tests/model-metrics/results
1515
tests/model-metrics/datasets
16+
temp_images
1617

1718
# Byte-compiled / optimized / DLL files
1819
__pycache__/

poetry.lock

Lines changed: 845 additions & 336 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
44

55
[tool.poetry]
66
name = "audio-separator"
7-
version = "0.31.3"
7+
version = "0.32.0"
88
description = "Easy to use audio stem separation, using various models from UVR trained primarily by @Anjok07"
99
authors = ["Andrew Beveridge <andrew@beveridge.uk>"]
1010
license = "MIT"
@@ -65,7 +65,10 @@ audio-separator = 'audio_separator.utils.cli:main'
6565
[tool.poetry.group.dev.dependencies]
6666
black = ">=23"
6767
pytest = "*"
68-
pytest-cov = "^4.1.0"
68+
pytest-cov = ">=4.1.0"
69+
matplotlib = ">=3.8.0"
70+
pillow = ">=10.1.0"
71+
scikit-image = ">=0.22.0"
6972

7073
[tool.black]
7174
line-length = 140

tests/README.md

Lines changed: 103 additions & 0 deletions
284 KB
34.5 KB
672 KB
50 KB
666 KB

0 commit comments

Comments
 (0)