diff options
Diffstat (limited to 'apps/codecs/libffmpegFLAC/decoder.c')
-rw-r--r-- | apps/codecs/libffmpegFLAC/decoder.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/apps/codecs/libffmpegFLAC/decoder.c b/apps/codecs/libffmpegFLAC/decoder.c index 9c85864e26..4dbae972cb 100644 --- a/apps/codecs/libffmpegFLAC/decoder.c +++ b/apps/codecs/libffmpegFLAC/decoder.c | |||
@@ -262,10 +262,12 @@ static int decode_subframe_lpc(FLACContext *s, int32_t* decoded, int pred_order) | |||
262 | if ((s->bps + coeff_prec + av_log2(pred_order)) <= 32) { | 262 | if ((s->bps + coeff_prec + av_log2(pred_order)) <= 32) { |
263 | #if defined(CPU_COLDFIRE) && !defined(SIMULATOR) | 263 | #if defined(CPU_COLDFIRE) && !defined(SIMULATOR) |
264 | (void)sum; | 264 | (void)sum; |
265 | lpc_decode_emac(s->blocksize - pred_order, qlevel, pred_order, decoded + pred_order, coeffs); | 265 | lpc_decode_emac(s->blocksize - pred_order, qlevel, pred_order, |
266 | decoded + pred_order, coeffs); | ||
266 | #elif defined(CPU_ARM) && !defined(SIMULATOR) | 267 | #elif defined(CPU_ARM) && !defined(SIMULATOR) |
267 | (void)sum; | 268 | (void)sum; |
268 | lpc_decode_arm(s->blocksize - pred_order, qlevel, pred_order, decoded + pred_order, coeffs); | 269 | lpc_decode_arm(s->blocksize - pred_order, qlevel, pred_order, |
270 | decoded + pred_order, coeffs); | ||
269 | #else | 271 | #else |
270 | for (i = pred_order; i < s->blocksize; i++) | 272 | for (i = pred_order; i < s->blocksize; i++) |
271 | { | 273 | { |
@@ -276,6 +278,12 @@ static int decode_subframe_lpc(FLACContext *s, int32_t* decoded, int pred_order) | |||
276 | } | 278 | } |
277 | #endif | 279 | #endif |
278 | } else { | 280 | } else { |
281 | #if defined(CPU_COLDFIRE) && !defined(SIMULATOR) | ||
282 | (void)wsum; | ||
283 | (void)j; | ||
284 | lpc_decode_emac_wide(s->blocksize - pred_order, qlevel, pred_order, | ||
285 | decoded + pred_order, coeffs); | ||
286 | #else | ||
279 | for (i = pred_order; i < s->blocksize; i++) | 287 | for (i = pred_order; i < s->blocksize; i++) |
280 | { | 288 | { |
281 | wsum = 0; | 289 | wsum = 0; |
@@ -283,6 +291,7 @@ static int decode_subframe_lpc(FLACContext *s, int32_t* decoded, int pred_order) | |||
283 | wsum += (int64_t)coeffs[j] * (int64_t)decoded[i-j-1]; | 291 | wsum += (int64_t)coeffs[j] * (int64_t)decoded[i-j-1]; |
284 | decoded[i] += wsum >> qlevel; | 292 | decoded[i] += wsum >> qlevel; |
285 | } | 293 | } |
294 | #endif | ||
286 | } | 295 | } |
287 | 296 | ||
288 | return 0; | 297 | return 0; |