If you’ve benefited commercially from this work, which we’ve poured significant effort into and released under permissive licenses, we hope you’ve found it valuable! While these licenses give you lots of freedom, we believe in nurturing a vibrant ecosystem where innovation can continue to flourish.

So, as a gesture of appreciation and responsibility, we strongly urge commercial entities that have gained from this software to consider making voluntary contributions to music-related non-profit organizations of your choice. Your contribution directly helps support the foundational work that empowers your commercial success and ensures open-source innovation keeps moving forward.

Some suggestions for the beneficiaries are provided here. Please do not hesitate to contribute to the list by opening pull requests there.


SPAUQ: Spatial Audio Quality Evaluation

codecov CircleCI CodeFactor arXiv Documentation Status

SPAUQ is an Implementation of

    1. Watcharasupat and A. Lerch, ``Quantifying Spatial Audio Quality Impairment’’, submitted to ICASSP 2024.

The supplementary derivation is available both on arXiv and here.

Installation

pip install git+https://github.com/karnwatcharasupat/spauq.git@main

CLI Usage

Evaluating one test file against one reference file

spauq-eval-file --reference_path="path/to/ref.wav" \
  --estimate_path="path/to/est.wav"

Evaluating multiple test files against one reference file

spauq-eval-dir --reference_path="path/to/ref.wav" \
  --estimate_dir="path/to/many/estimates \
  --estimate_ext=".wav"

Programmatic usage

from spauq.core.metrics import spauq_eval
import soundfile as sf

reference, fs = sf.read("path/to/ref.wav")
estimate, fse = sf.read("path/to/est.wav")

assert fs == fse

eval_output = spauq_eval(
    reference=reference,
    estimate=estimate,
    fs=fs
)

signal_to_spatial_distortion_ratio = eval_output["SSR"]
signal_to_residual_distortion_ratio = eval_output["SRR"]

Indices and tables