[pulseaudio-discuss] [PATCH 2/2] sample.c: Allow module-loopback to exceed PA_RATE_MAX

Tanu Kaskinen tanuk at iki.fi
Fri Apr 14 12:42:22 UTC 2017


On Tue, 2017-04-11 at 22:43 +0200, Georg Chini wrote:
> The rate set by module loopback may exceed PA_RATE_MAX by 1%, therefore
> allow rates higher than PA_RATE_MAX in pa_sample_rate_valid().
> ---
>  src/pulse/sample.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/src/pulse/sample.c b/src/pulse/sample.c
> index cb042541..ff77985c 100644
> --- a/src/pulse/sample.c
> +++ b/src/pulse/sample.c
> @@ -105,7 +105,10 @@ int pa_sample_format_valid(unsigned format) {
>  }
>  
>  int pa_sample_rate_valid(uint32_t rate) {
> -    return rate > 0 && rate <= PA_RATE_MAX;
> +    /* The extra 1% is due to module-loopback: it temporarily sets
> +     * a higher-than-nominal rate to get rid of excessive buffer
> +     * latency */
> +    return rate > 0 && rate <= PA_RATE_MAX * 101 / 100;
>  }
>  
>  int pa_channels_valid(uint8_t channels) {

Looks good to me.

-- 
Tanu

https://www.patreon.com/tanuk


More information about the pulseaudio-discuss mailing list