From 84592805451926edff763a1ad9d89107b830f8c6 Mon Sep 17 00:00:00 2001 From: Tomasz Lauda Date: Wed, 16 Oct 2019 12:56:16 +0200 Subject: [PATCH] src: fix frames calculation for capture stream Fixes source_frames and sink_frames calculation for SRC in the capture pipeline. Signed-off-by: Tomasz Lauda --- src/audio/src/src.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/audio/src/src.c b/src/audio/src/src.c index 11890dcbe59f..6efad8fcdf47 100644 --- a/src/audio/src/src.c +++ b/src/audio/src/src.c @@ -578,20 +578,18 @@ static int src_params(struct comp_dev *dev) cd->sink_rate = src->sink_rate; /* re-write our params with output rate for next component */ params->rate = cd->sink_rate; - cd->source_frames = dev->frames * cd->source_rate / - cd->sink_rate; - cd->sink_frames = dev->frames; } else { /* params rate is sink rate */ cd->source_rate = src->source_rate; cd->sink_rate = params->rate; /* re-write our params with output rate for next component */ params->rate = cd->source_rate; - cd->source_frames = dev->frames; - cd->sink_frames = dev->frames * cd->sink_rate / - cd->source_rate; } + cd->source_frames = dev->frames * cd->source_rate / + cd->sink_rate; + cd->sink_frames = dev->frames; + /* Allocate needed memory for delay lines */ trace_src("src_params(), source_rate = %u, sink_rate = %u", cd->source_rate, cd->sink_rate);