diff --git a/CHANGELOG.md b/CHANGELOG.md index 83601072e..2b54ab746 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ ### Fixes - fix: fix support for `numpy==2.x` ([@ibevers](https://github.com/ibevers/)) +- fix: fix support for `speechbrain==1.x` ([@Adel-Moumen](https://github.com/Adel-Moumen/)) ### Breaking changes diff --git a/pyannote/audio/pipelines/speaker_verification.py b/pyannote/audio/pipelines/speaker_verification.py index 8c4139b6f..022c1ca6f 100644 --- a/pyannote/audio/pipelines/speaker_verification.py +++ b/pyannote/audio/pipelines/speaker_verification.py @@ -40,7 +40,7 @@ from pyannote.audio.pipelines.utils import PipelineModel, get_model try: - from speechbrain.pretrained import ( + from speechbrain.inference import ( EncoderClassifier as SpeechBrain_EncoderClassifier, ) diff --git a/requirements.txt b/requirements.txt index 3a0aa74dc..5083258cb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,7 +11,7 @@ pytorch_metric_learning >= 2.1.0 rich >= 12.0.0 semver >= 3.0.0 soundfile >= 0.12.1 -speechbrain >= 0.5.14 +speechbrain >= 1.0.0 tensorboardX >= 2.6 torch >= 2.0.0 torch_audiomentations >= 0.11.0 diff --git a/tests/test_speechbrain.py b/tests/test_speechbrain.py new file mode 100644 index 000000000..0ac9b60cf --- /dev/null +++ b/tests/test_speechbrain.py @@ -0,0 +1,20 @@ +import tempfile +import pytest +from speechbrain.inference import EncoderClassifier + + +@pytest.fixture() +def cache(): + return tempfile.mkdtemp() + +def test_import_speechbrain_encoder_classifier(cache): + """This is a simple test that check if speechbrain + EncoderClassifier can be imported. It does not check + if the model is working properly. + """ + + model = EncoderClassifier.from_hparams( + source="speechbrain/spkrec-ecapa-voxceleb", + savedir=cache, + ) + assert isinstance(model, EncoderClassifier)