Signed-off-by: James Almer <jamr...@gmail.com> --- libavcodec/evc_parse.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/libavcodec/evc_parse.c b/libavcodec/evc_parse.c index b3044eca3f..3e315526fa 100644 --- a/libavcodec/evc_parse.c +++ b/libavcodec/evc_parse.c @@ -441,7 +441,7 @@ static int evc_parse_slice_header(EVCParserContext *ctx, EVCParserSliceHeader *s if(!pps) return AVERROR_INVALIDDATA; - sps = ctx->sps[slice_pic_parameter_set_id]; + sps = ctx->sps[pps->pps_seq_parameter_set_id]; if(!sps) return AVERROR_INVALIDDATA; @@ -654,7 +654,8 @@ int ff_evc_parse_nal_unit(EVCParserContext *ctx, const uint8_t *buf, int buf_siz case EVC_IDR_NUT: // Coded slice of a IDR or non-IDR picture case EVC_NOIDR_NUT: { EVCParserSliceHeader sh; - EVCParserSPS *sps; + const EVCParserSPS *sps; + const EVCParserPPS *pps; int ret; ret = evc_parse_slice_header(ctx, &sh, data, nalu_size); @@ -685,9 +686,11 @@ int ff_evc_parse_nal_unit(EVCParserContext *ctx, const uint8_t *buf, int buf_siz // POC (picture order count of the current picture) derivation // @see ISO/IEC 23094-1:2020(E) 8.3.1 Decoding process for picture order count - sps = ctx->sps[sh.slice_pic_parameter_set_id]; + pps = ctx->pps[sh.slice_pic_parameter_set_id]; + sps = ctx->sps[pps->pps_seq_parameter_set_id]; + av_assert0(sps && pps); - if (sps && sps->sps_pocs_flag) { + if (sps->sps_pocs_flag) { int PicOrderCntMsb = 0; ctx->poc.prevPicOrderCntVal = ctx->poc.PicOrderCntVal; -- 2.41.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".