diff options
author | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2016-06-29 23:11:57 -0400 |
---|---|---|
committer | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2016-06-29 23:11:57 -0400 |
commit | 9b1a27a3bce47ccccb24f7caf8918e898044470a (patch) | |
tree | cb5bf09381f9a707083aea2dac88891697a4d5e6 /src | |
parent | 1ac3a5630af4e5fb01d5b8d896c377a5e736cc4c (diff) | |
download | opus-9b1a27a3bce47ccccb24f7caf8918e898044470a.tar.gz |
Address static analysis reports from scan-build
Diffstat (limited to 'src')
-rw-r--r-- | src/analysis.c | 13 | ||||
-rw-r--r-- | src/opus_encoder.c | 10 |
2 files changed, 8 insertions, 15 deletions
diff --git a/src/analysis.c b/src/analysis.c index 360ebcc8..663431a4 100644 --- a/src/analysis.c +++ b/src/analysis.c @@ -540,17 +540,14 @@ static void tonality_analysis(TonalityAnalysisState *tonal, const CELTMode *celt /* Instantaneous probability of speech and music, with beta pre-applied. */ float speech0; float music0; + float p, q; /* One transition every 3 minutes of active audio */ tau = .00005f*frame_probs[1]; - beta = .05f; - if (1) { - /* Adapt beta based on how "unexpected" the new prob is */ - float p, q; - p = MAX16(.05f,MIN16(.95f,frame_probs[0])); - q = MAX16(.05f,MIN16(.95f,tonal->music_prob)); - beta = .01f+.05f*ABS16(p-q)/(p*(1-q)+q*(1-p)); - } + /* Adapt beta based on how "unexpected" the new prob is */ + p = MAX16(.05f,MIN16(.95f,frame_probs[0])); + q = MAX16(.05f,MIN16(.95f,tonal->music_prob)); + beta = .01f+.05f*ABS16(p-q)/(p*(1-q)+q*(1-p)); /* p0 and p1 are the probabilities of speech and music at this frame using only information from previous frame and applying the state transition model */ diff --git a/src/opus_encoder.c b/src/opus_encoder.c index 7333b718..5e6c59b3 100644 --- a/src/opus_encoder.c +++ b/src/opus_encoder.c @@ -860,9 +860,6 @@ opus_int32 compute_frame_size(const void *analysis_pcm, int frame_size, opus_val16 compute_stereo_width(const opus_val16 *pcm, int frame_size, opus_int32 Fs, StereoWidthState *mem) { - opus_val16 corr; - opus_val16 ldiff; - opus_val16 width; opus_val32 xx, xy, yy; opus_val16 sqrt_xx, sqrt_yy; opus_val16 qrrt_xx, qrrt_yy; @@ -915,6 +912,9 @@ opus_val16 compute_stereo_width(const opus_val16 *pcm, int frame_size, opus_int3 mem->YY = MAX32(0, mem->YY); if (MAX32(mem->XX, mem->YY)>QCONST16(8e-4f, 18)) { + opus_val16 corr; + opus_val16 ldiff; + opus_val16 width; sqrt_xx = celt_sqrt(mem->XX); sqrt_yy = celt_sqrt(mem->YY); qrrt_xx = celt_sqrt(sqrt_xx); @@ -929,10 +929,6 @@ opus_val16 compute_stereo_width(const opus_val16 *pcm, int frame_size, opus_int3 mem->smoothed_width += (width-mem->smoothed_width)/frame_rate; /* Peak follower */ mem->max_follower = MAX16(mem->max_follower-QCONST16(.02f,15)/frame_rate, mem->smoothed_width); - } else { - width = 0; - corr=Q15ONE; - ldiff=0; } /*printf("%f %f %f %f %f ", corr/(float)Q15ONE, ldiff/(float)Q15ONE, width/(float)Q15ONE, mem->smoothed_width/(float)Q15ONE, mem->max_follower/(float)Q15ONE);*/ return EXTRACT16(MIN32(Q15ONE, MULT16_16(20, mem->max_follower))); |