summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArthur Grant <[email protected]>2015-08-24 12:19:03 +0200
committerMichael Niedermayer <[email protected]>2015-11-26 16:58:32 +0100
commitdf27f8d5fd727135bbfefb9a1e45fd4569773a70 (patch)
treeb04ce3eca5b3e848c4c10cc3e85df10ad4017f9b
parent00ae76c3d00233a5897ba117a0ec5b00025bb29d (diff)
avformat/hevc: Fix parsing errors
Signed-off-by: Michael Niedermayer <[email protected]> (cherry picked from commit 781efd07415cdf6f676cca5b22147e5d6be0a4c4) Signed-off-by: Michael Niedermayer <[email protected]>
-rw-r--r--libavformat/hevc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavformat/hevc.c b/libavformat/hevc.c
index 32192badca..9932d92298 100644
--- a/libavformat/hevc.c
+++ b/libavformat/hevc.c
@@ -565,7 +565,8 @@ static int hvcc_parse_sps(GetBitContext *gb,
}
if (get_bits1(gb)) { // long_term_ref_pics_present_flag
- for (i = 0; i < get_ue_golomb_long(gb); i++) { // num_long_term_ref_pics_sps
+ unsigned num_long_term_ref_pics_sps = get_ue_golomb_long(gb);
+ for (i = 0; i < num_long_term_ref_pics_sps; i++) { // num_long_term_ref_pics_sps
int len = FFMIN(log2_max_pic_order_cnt_lsb_minus4 + 4, 16);
skip_bits (gb, len); // lt_ref_pic_poc_lsb_sps[i]
skip_bits1(gb); // used_by_curr_pic_lt_sps_flag[i]
@@ -616,11 +617,12 @@ static int hvcc_parse_pps(GetBitContext *gb,
get_se_golomb_long(gb); // pps_cr_qp_offset
/*
+ * pps_slice_chroma_qp_offsets_present_flag u(1)
* weighted_pred_flag u(1)
* weighted_bipred_flag u(1)
* transquant_bypass_enabled_flag u(1)
*/
- skip_bits(gb, 3);
+ skip_bits(gb, 4);
tiles_enabled_flag = get_bits1(gb);
entropy_coding_sync_enabled_flag = get_bits1(gb);