Crate visqol_rs

Crate visqol_rs 

Source
Expand description

An implementation of the Virtual Speech Quality Objective Listener(ViSQOL) algorithm, an objective, full-reference metric for perceived audio quality.

§Example

use visqol_rs::constants::{DEFAULT_WINDOW_SIZE, NUM_BANDS_SPEECH};
use visqol_rs::variant::Variant;
use visqol_rs::*;

let path_to_reference_file = "./test_data/clean_speech/reference_signal.wav";
let path_to_degraded_file = "./test_data/clean_speech/degraded_signal.wav";

let variant = Variant::Wideband {
    use_unscaled_mos_mapping: true,
};
let mut visqol =
    visqol_manager::VisqolManager::<NUM_BANDS_SPEECH>::new(variant, DEFAULT_WINDOW_SIZE);

let similarity_result = visqol
    .run(path_to_reference_file, path_to_degraded_file)
    .unwrap();

println!(
    "Mean objective score for degraded file {}: {}",
    path_to_degraded_file, similarity_result.moslqo
);

Modules§

audio_utils
constants
similarity_result
variant
visqol_manager