shithub: opus

Download patch

ref: 0d2ba55ab1978bc7abdbacdd140d34066cc81bb0
parent: 43db56225b5716b61c16a3275f65b8d3d3ea5343
author: Jean-Marc Valin <[email protected]>
date: Mon May 22 23:32:18 EDT 2017

Fixes a surround bug on loud signal

The constant was copied from the analysis code which uses +/-1 as float
scaling, but surround_analysis() uses +/-32767.

--- a/src/opus_multistream_encoder.c
+++ b/src/opus_multistream_encoder.c
@@ -304,7 +304,7 @@
          sum = celt_inner_prod(in, in, frame_size+overlap, 0);
          /* This should filter out both NaNs and ridiculous signals that could
             cause NaNs further down. */
-         if (!(sum < 1e9f) || celt_isnan(sum))
+         if (!(sum < 1e18f) || celt_isnan(sum))
          {
             OPUS_CLEAR(in, frame_size+overlap);
             preemph_mem[c] = 0;