Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.xiph.org/xiph/opus.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Marc Valin <jmvalin@jmvalin.ca>2016-06-08 22:19:03 +0300
committerJean-Marc Valin <jmvalin@jmvalin.ca>2016-06-08 22:19:03 +0300
commite6edfd48d60b47b7b5cd7c20447fd5769a00c4a9 (patch)
tree2327989c98940c9c3e111052abed5340b54dfbd0
parent7a669094e9c4766b5e48a257f4d9218874da5fb7 (diff)
Retuning the tf_analysis() lambda
Increasing the value at low rate seems to help a bit.
-rw-r--r--celt/celt_encoder.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/celt/celt_encoder.c b/celt/celt_encoder.c
index c2fb61b5..05cae7b4 100644
--- a/celt/celt_encoder.c
+++ b/celt/celt_encoder.c
@@ -1758,15 +1758,7 @@ int celt_encode_with_ec(CELTEncoder * OPUS_RESTRICT st, const opus_val16 * pcm,
if (effectiveBytes>=15*C && !hybrid && st->complexity>=2 && !st->lfe)
{
int lambda;
- if (effectiveBytes<40)
- lambda = 12;
- else if (effectiveBytes<60)
- lambda = 6;
- else if (effectiveBytes<100)
- lambda = 4;
- else
- lambda = 3;
- lambda*=2;
+ lambda = IMAX(5, 1280/effectiveBytes + 2);
tf_select = tf_analysis(mode, effEnd, isTransient, tf_res, lambda, X, N, LM, tf_estimate, tf_chan);
for (i=effEnd;i<end;i++)
tf_res[i] = tf_res[effEnd-1];