summaryrefslogtreecommitdiff
path: root/libavcodec/mpeg4videodec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-08-19 10:15:53 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2018-08-25 18:50:30 +0200
commit168d8d56bfb0c69684637f3d04889db647de6238 (patch)
tree487e7dda5f4f4488acb97afcb4ea1c9de479eb74 /libavcodec/mpeg4videodec.c
parent0c71c6d66f9ae8265158181e5b1cbc5c63525fde (diff)
avcodec/mpeg4videodec: Fix slice end detection in mpeg4_decode_studio_mb()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/mpeg4videodec.c')
-rw-r--r--libavcodec/mpeg4videodec.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c
index 24c280df46..1686ed1001 100644
--- a/libavcodec/mpeg4videodec.c
+++ b/libavcodec/mpeg4videodec.c
@@ -1955,6 +1955,14 @@ static int mpeg4_decode_studio_mb(MpegEncContext *s, int16_t block_[12][64])
return SLICE_END;
}
+ //vcon-stp9L1.bits (first frame)
+ if (get_bits_left(&s->gb) == 0)
+ return SLICE_END;
+
+ //vcon-stp2L1.bits, vcon-stp3L1.bits, vcon-stp6L1.bits, vcon-stp7L1.bits, vcon-stp8L1.bits, vcon-stp10L1.bits (first frame)
+ if (get_bits_left(&s->gb) < 8U && show_bits(&s->gb, get_bits_left(&s->gb)) == 0)
+ return SLICE_END;
+
return SLICE_OK;
}