diff options
author | clsid2 <clsid2@users.sourceforge.net> | 2010-05-26 16:32:15 +0400 |
---|---|---|
committer | clsid2 <clsid2@users.sourceforge.net> | 2010-05-26 16:32:15 +0400 |
commit | e7a65a2bf7f836ebd1b8965ce50df6338ba6f427 (patch) | |
tree | 085f78759e824c35feebf898e85a68e01eb975a2 /src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/h264_ps.c | |
parent | a6e3bef01c616bd8c53797b9a39333a86a933801 (diff) |
Updated FFmpeg
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@1950 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/h264_ps.c')
-rw-r--r-- | src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/h264_ps.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/h264_ps.c b/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/h264_ps.c index bd4b074a3..e7b444dd1 100644 --- a/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/h264_ps.c +++ b/src/filters/transform/MPCVideoDec/ffmpeg/libavcodec/h264_ps.c @@ -20,7 +20,7 @@ */
/**
- * @file libavcodec/h264_ps.c
+ * @file
* H.264 / AVC / MPEG4 part10 parameter set decoding.
* @author Michael Niedermayer <michaelni@gmx.at>
*/
@@ -205,6 +205,12 @@ static inline int decode_vui_parameters(H264Context *h, SPS *sps){ sps->num_reorder_frames= get_ue_golomb(&s->gb);
get_ue_golomb(&s->gb); /*max_dec_frame_buffering*/
+ if(s->gb.size_in_bits < get_bits_count(&s->gb)){
+ av_log(h->s.avctx, AV_LOG_ERROR, "Overread VUI by %d bits\n", get_bits_count(&s->gb) - s->gb.size_in_bits);
+ sps->num_reorder_frames=0;
+ sps->bitstream_restriction_flag= 0;
+ }
+
if(sps->num_reorder_frames > 16U /*max_dec_frame_buffering || max_dec_frame_buffering > 16*/){
av_log(h->s.avctx, AV_LOG_ERROR, "illegal num_reorder_frames %d\n", sps->num_reorder_frames);
return -1;
|