nemo_curator.stages.audio.filtering.sigmos
nemo_curator.stages.audio.filtering.sigmos
SIGMOS (Signal-based Mean Opinion Score) filter stage.
Filters audio segments based on SIGMOS quality metrics including noise, overall quality, signal quality, coloration, discontinuity, loudness, and reverberation.
Accepts a single input format: either in-memory (waveform + sample_rate) or audio_filepath to a WAV file. Uses the SigMOS ONNX model directly; no temp files.
The ONNX model is downloaded automatically from Microsoft’s SIG-Challenge
repository on first use and cached at ~/.cache/nemo_curator/sigmos_model/.
Users can also provide a pre-downloaded model via the model_path parameter.
Module Contents
Classes
Functions
Data
API
Bases: ProcessingStage[AudioTask, AudioTask]
SIGMOS quality assessment filter stage.
Filters audio segments based on SIGMOS quality metrics. Input: items with waveform + sample_rate (tensor/array) or audio_filepath (WAV). The ONNX model is loaded once in setup() and reused for all predictions.
The model is automatically downloaded from Microsoft’s SIG-Challenge
GitHub repository on first use and cached at
~/.cache/nemo_curator/sigmos_model/. To skip downloading, place
the ONNX file there manually or pass model_path pointing
directly to the file.
Parameters:
Directory to store the downloaded model weights
(default: ~/.cache/nemo_curator/sigmos_model/).
Direct path to a local SIGMOS ONNX model file. Overrides model_dir when provided.
Minimum noise score (None to disable)
Minimum overall score (None to disable)
Minimum signal score (None to disable)
Minimum coloration score (None to disable)
Minimum discontinuity score (None to disable)
Minimum loudness score (None to disable)
Minimum reverb score (None to disable)
Download SIGMOS ONNX model from Microsoft’s SIG-Challenge repository.
Returns the path to the validated model file.
Run SIGMOS scoring on a single (non-nested) task.
Resolve the ONNX model path: model_path override → model_dir download.
Process a single AudioTask and filter by SIGMOS quality metrics.
When task.data contains a "segments" key (nested mode from VAD),
each segment is evaluated individually and only survivors are kept.
Get (audio mono float32 numpy, sample_rate) from item.
Returns None if unavailable or load fails.