aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2011-12-13 01:26:14 +0100
committerMichael Niedermayer <michaelni@gmx.at>2011-12-13 01:26:14 +0100
commitc9cab022a38272ef878d7e9c397475edae434bd6 (patch)
tree5c3e45d7aa4440e38998dcf2ae8b6928fc015b66
parent376ee20614507df0e6d2004b7b0d10f72cb25167 (diff)
downloadffmpeg-c9cab022a38272ef878d7e9c397475edae434bd6.tar.gz
mpeg4dec: restore error concealment functionality after merge
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/mpeg4video.h2
-rw-r--r--libavcodec/mpeg4videodec.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/libavcodec/mpeg4video.h b/libavcodec/mpeg4video.h
index 00eba68c22..274ded9a1a 100644
--- a/libavcodec/mpeg4video.h
+++ b/libavcodec/mpeg4video.h
@@ -174,7 +174,7 @@ static inline int ff_mpeg4_pred_dc(MpegEncContext * s, int n, int level, int *di
}else{
level += pred;
ret= level;
- if(s->err_recognition&AV_EF_BITSTREAM){
+ if(s->err_recognition&(AV_EF_BITSTREAM|AV_EF_AGGRESSIVE)){
if(level<0){
av_log(s->avctx, AV_LOG_ERROR, "dc<0 at %dx%d\n", s->mb_x, s->mb_y);
return -1;
diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c
index 1a07888832..8492b44e01 100644
--- a/libavcodec/mpeg4videodec.c
+++ b/libavcodec/mpeg4videodec.c
@@ -516,7 +516,7 @@ static inline int mpeg4_decode_dc(MpegEncContext * s, int n, int *dir_ptr)
if (code > 8){
if(get_bits1(&s->gb)==0){ /* marker */
- if(s->err_recognition&AV_EF_BITSTREAM){
+ if(s->err_recognition&(AV_EF_BITSTREAM|AV_EF_COMPLIANT)){
av_log(s->avctx, AV_LOG_ERROR, "dc marker bit missing\n");
return -1;
}
@@ -1012,7 +1012,7 @@ static inline int mpeg4_decode_block(MpegEncContext * s, DCTELEM * block,
else level= level * qmul - qadd;
if((unsigned)(level + 2048) > 4095){
- if(s->err_recognition & AV_EF_BITSTREAM){
+ if(s->err_recognition & (AV_EF_BITSTREAM|AV_EF_AGGRESSIVE)){
if(level > 2560 || level<-2560){
av_log(s->avctx, AV_LOG_ERROR, "|level| overflow in 3. esc, qp=%d\n", s->qscale);
return -1;