...
|
...
|
@@ -122,9 +122,9 @@ static int decode_lspf(QCELPContext *q, float *lspf)
|
122
|
122
|
const float *predictors;
|
123
|
123
|
|
124
|
124
|
if (q->bitrate == RATE_OCTAVE || q->bitrate == I_F_Q) {
|
125
|
|
- predictors = (q->prev_bitrate != RATE_OCTAVE &&
|
126
|
|
- q->prev_bitrate != I_F_Q ?
|
127
|
|
- q->prev_lspf : q->predictor_lspf);
|
|
125
|
+ predictors = q->prev_bitrate != RATE_OCTAVE &&
|
|
126
|
+ q->prev_bitrate != I_F_Q ? q->prev_lspf
|
|
127
|
+ : q->predictor_lspf;
|
128
|
128
|
|
129
|
129
|
if (q->bitrate == RATE_OCTAVE) {
|
130
|
130
|
q->octave_count++;
|
...
|
...
|
@@ -136,14 +136,14 @@ static int decode_lspf(QCELPContext *q, float *lspf)
|
136
|
136
|
+ predictors[i] * QCELP_LSP_OCTAVE_PREDICTOR
|
137
|
137
|
+ (i + 1) * ((1 - QCELP_LSP_OCTAVE_PREDICTOR)/11);
|
138
|
138
|
}
|
139
|
|
- smooth = (q->octave_count < 10 ? .875 : 0.1);
|
|
139
|
+ smooth = q->octave_count < 10 ? .875 : 0.1;
|
140
|
140
|
} else {
|
141
|
141
|
erasure_coeff = QCELP_LSP_OCTAVE_PREDICTOR;
|
142
|
142
|
|
143
|
143
|
assert(q->bitrate == I_F_Q);
|
144
|
144
|
|
145
|
145
|
if(q->erasure_count > 1)
|
146
|
|
- erasure_coeff *= (q->erasure_count < 4 ? 0.9 : 0.7);
|
|
146
|
+ erasure_coeff *= q->erasure_count < 4 ? 0.9 : 0.7;
|
147
|
147
|
|
148
|
148
|
for(i = 0; i < 10; i++) {
|
149
|
149
|
q->predictor_lspf[i] =
|
...
|
...
|
@@ -156,11 +156,11 @@ static int decode_lspf(QCELPContext *q, float *lspf)
|
156
|
156
|
// Check the stability of the LSP frequencies.
|
157
|
157
|
lspf[0] = FFMAX(lspf[0], QCELP_LSP_SPREAD_FACTOR);
|
158
|
158
|
for(i=1; i<10; i++)
|
159
|
|
- lspf[i] = FFMAX(lspf[i], (lspf[i-1] + QCELP_LSP_SPREAD_FACTOR));
|
|
159
|
+ lspf[i] = FFMAX(lspf[i], lspf[i - 1] + QCELP_LSP_SPREAD_FACTOR);
|
160
|
160
|
|
161
|
|
- lspf[9] = FFMIN(lspf[9], (1.0 - QCELP_LSP_SPREAD_FACTOR));
|
|
161
|
+ lspf[9] = FFMIN(lspf[9], 1.0 - QCELP_LSP_SPREAD_FACTOR);
|
162
|
162
|
for(i=9; i>0; i--)
|
163
|
|
- lspf[i-1] = FFMIN(lspf[i-1], (lspf[i] - QCELP_LSP_SPREAD_FACTOR));
|
|
163
|
+ lspf[i - 1] = FFMIN(lspf[i - 1], lspf[i] - QCELP_LSP_SPREAD_FACTOR);
|
164
|
164
|
|
165
|
165
|
// Low-pass filter the LSP frequencies.
|
166
|
166
|
ff_weighted_vector_sumf(lspf, lspf, q->prev_lspf, smooth, 1.0-smooth, 10);
|