From 5860fdb9a9b26e37852520d4598749f65f893bb5 Mon Sep 17 00:00:00 2001 From: "Alfred E. Heggestad" Date: Mon, 21 Mar 2016 22:13:04 +0100 Subject: mos: add pseudo Mean Opinion Score routine thanks to Lorenzo Mangani for the original patch --- test/mos.c | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 test/mos.c (limited to 'test/mos.c') diff --git a/test/mos.c b/test/mos.c new file mode 100644 index 0000000..20b13c2 --- /dev/null +++ b/test/mos.c @@ -0,0 +1,53 @@ +/** + * @file test/mos.c Test the MOS (Mean Opinion Score) calculator + * + * Copyright (C) 2010 - 2016 Creytiv.com + */ +#include +#include +#include "test.h" + + +#define DEBUG_MODULE "mos" +#define DEBUG_LEVEL 5 +#include + + +int test_mos(void) +{ +#define PRECISION 0.001 + static struct { + /* input: */ + double rtt; + double jitter; + uint32_t packet_loss; + + /* output: */ + double r_factor; + double mos; + } testv[] = { + { 0.0, 0.0, 0, 92.95, 4.404 }, + { 500.0, 0.0, 0, 54.20, 2.796 }, + { 1000.0, 0.0, 0, 4.20, 0.990 }, + { 0.0, 100.0, 0, 84.20, 4.172 }, + { 0.0, 200.0, 0, 64.20, 3.315 }, + { 0.0, 0.0, 1, 90.45, 4.350 }, + { 0.0, 0.0, 10, 67.95, 3.499 }, + { 10.0, 10.0, 10, 67.20, 3.463 }, + }; + size_t i; + int err = 0; + + for (i=0; i