projects
/
platform
/
upstream
/
libav.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
131609d
)
ra144enc: zero the reflection coeffs if the filter is unstable
author
Justin Ruggles
<justin.ruggles@gmail.com>
Wed, 21 Dec 2011 21:09:11 +0000
(16:09 -0500)
committer
Justin Ruggles
<justin.ruggles@gmail.com>
Thu, 22 Dec 2011 13:31:07 +0000
(08:31 -0500)
fixes use of uninitialized values if the filter is still unstable after using
the previous frame lpc coefficients.
libavcodec/ra144enc.c
patch
|
blob
|
history
diff --git
a/libavcodec/ra144enc.c
b/libavcodec/ra144enc.c
index
1d260b7
..
ee38bd5
100644
(file)
--- a/
libavcodec/ra144enc.c
+++ b/
libavcodec/ra144enc.c
@@
-477,7
+477,10
@@
static int ra144_encode_frame(AVCodecContext *avctx, uint8_t *frame,
* The filter is unstable: use the coefficients of the previous frame.
*/
ff_int_to_int16(block_coefs[NBLOCKS - 1], ractx->lpc_coef[1]);
- ff_eval_refl(lpc_refl, block_coefs[NBLOCKS - 1], avctx);
+ if (ff_eval_refl(lpc_refl, block_coefs[NBLOCKS - 1], avctx)) {
+ /* the filter is still unstable. set reflection coeffs to zero. */
+ memset(lpc_refl, 0, sizeof(lpc_refl));
+ }
}
init_put_bits(&pb, frame, buf_size);
for (i = 0; i < LPC_ORDER; i++) {