commit | 57092f9dca12f587a5fc1625f45d88c6977edc81 | [log] [tgz] |
---|---|---|
author | Jean-Marc Valin <jmvalin@jmvalin.ca> | Wed Feb 13 13:33:42 2019 -0500 |
committer | Jean-Marc Valin <jmvalin@jmvalin.ca> | Wed Feb 13 16:52:52 2019 -0500 |
tree | 7c665cb88d7ea84412145c9d931f115e98f23566 | |
parent | a7aa7fb382416ff257ab352c3b9cf3d46da51f56 [diff] |
Improve silence handling Copy the previous analysis data instead of flagging as invalid
diff --git a/src/analysis.c b/src/analysis.c index 23bae42..cb46dec 100644 --- a/src/analysis.c +++ b/src/analysis.c
@@ -547,7 +547,11 @@ tonal->mem_fill = 240 + remaining; if (is_silence) { - info->valid = 0; + /* On silence, copy the previous analysis. */ + int prev_pos = tonal->write_pos-2; + if (prev_pos < 0) + prev_pos += DETECT_SIZE; + OPUS_COPY(info, &tonal->info[prev_pos], 1); RESTORE_STACK; return; }