[pulseaudio-discuss] [PATCH 09/13] loopback: Track the amount of jitter

Tanu Kaskinen tanuk at iki.fi
Tue Dec 8 12:47:01 PST 2015


On Wed, 2015-02-25 at 19:43 +0100, Georg Chini wrote:
> ---
>  src/modules/module-loopback.c | 18 +++++++++++++++++-
>  1 file changed, 17 insertions(+), 1 deletion(-)

The commit message should say something about why the jitter is tracked.

> diff --git a/src/modules/module-loopback.c b/src/modules/module-loopback.c
> index cbd0ac9..b733663 100644
> --- a/src/modules/module-loopback.c
> +++ b/src/modules/module-loopback.c
> @@ -95,6 +95,8 @@ struct userdata {
>  
>      pa_usec_t source_latency_sum;
>      pa_usec_t sink_latency_sum;
> +    pa_usec_t next_latency;
> +    double latency_error;
>  
>      bool in_pop;
>      bool pop_called;
> @@ -263,15 +265,22 @@ static void adjust_rates(struct userdata *u) {
>                  (double) current_latency / PA_USEC_PER_MSEC,
>                  (double) corrected_latency / PA_USEC_PER_MSEC,
>                  ((double) u->latency_snapshot.sink_latency + current_buffer_latency + u->latency_snapshot.source_latency) / PA_USEC_PER_MSEC);
> -    pa_log_debug("Latency difference: %0.2f ms, rate difference: %i Hz",
> +    pa_log_debug("Latency difference: %0.2f ± %0.2f ms, rate difference: %i Hz",

What does "± %0.2f ms" mean? Is the real latency difference between
those bounds with 100% confidence, or less than 100% confidence?

>                  (double) latency_difference / PA_USEC_PER_MSEC,
> +                (double) 2.5 * u->latency_error * final_latency / PA_USEC_PER_MSEC,

Why is that 2.5 there?

-- 
Tanu


More information about the pulseaudio-discuss mailing list