From 30f28c109e2ee4b72c009d85fbde6a418abf4db5 Mon Sep 17 00:00:00 2001
From: Kipp Cannon <kipp.cannon@ligo.org>
Date: Tue, 20 Feb 2018 06:14:31 +0900
Subject: [PATCH] mkwhitened_multirate_src(): obey block_duration

- in the FIR-whitener code path
---
 gstlal/python/multirate_datasource.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gstlal/python/multirate_datasource.py b/gstlal/python/multirate_datasource.py
index 314da0ec18..a36c07415d 100644
--- a/gstlal/python/multirate_datasource.py
+++ b/gstlal/python/multirate_datasource.py
@@ -213,13 +213,13 @@ def mkwhitened_multirate_src(pipeline, src, rates, instrument, psd = None, psd_f
 
 		# high pass filter
 		kernel = reference_psd.one_second_highpass_kernel(max(rates), cutoff = 12)
+		block_stride = block_duration * max(rates) // Gst.SECOND
 		assert len(kernel) % 2 == 1, "high-pass filter length is not odd"
-		head = pipeparts.mkfirbank(pipeline, head, fir_matrix = numpy.array(kernel, ndmin = 2), block_stride = max(rates), time_domain = False, latency = (len(kernel) - 1) // 2)
+		head = pipeparts.mkfirbank(pipeline, head, fir_matrix = numpy.array(kernel, ndmin = 2), block_stride = block_stride, time_domain = False, latency = (len(kernel) - 1) // 2)
 
 		# FIR filter for whitening kernel
 		psd_fir_kernel = reference_psd.PSDFirKernel()
-		fir_matrix = numpy.zeros((1, 1 + max(rates) * psd_fft_length), dtype=numpy.float64)
-		head = pipeparts.mkfirbank(pipeline, head, fir_matrix = fir_matrix, block_stride = max(rates), time_domain = False, latency = 0)
+		head = pipeparts.mkfirbank(pipeline, head, fir_matrix = numpy.zeros((1, 1 + max(rates) * psd_fft_length), dtype=numpy.float64), block_stride = block_stride, time_domain = False, latency = 0)
 
 		# compute whitening kernel from PSD
 		def set_fir_psd(whiten, pspec, firbank, psd_fir_kernel):
-- 
GitLab