avcodec/vvc_parser: move avctx->has_b_frames initialization to dec

From Jun Zhao <mypopydev@gmail.com>:
> Should we relocate this to the decoder? Other codecs typically set this
> parameter in the decoder.

Signed-off-by: Wu Jianhua <toqsxw@outlook.com>
release/7.1
Wu Jianhua 5 months ago committed by Nuo Mi
parent 80af195804
commit ae1a9cfd52
  1. 1
      libavcodec/vvc/dec.c
  2. 3
      libavcodec/vvc_parser.c

@ -781,6 +781,7 @@ static void export_frame_params(VVCContext *s, const VVCFrameContext *fc)
c->coded_height = pps->height; c->coded_height = pps->height;
c->width = pps->width - ((pps->r->pps_conf_win_left_offset + pps->r->pps_conf_win_right_offset) << sps->hshift[CHROMA]); c->width = pps->width - ((pps->r->pps_conf_win_left_offset + pps->r->pps_conf_win_right_offset) << sps->hshift[CHROMA]);
c->height = pps->height - ((pps->r->pps_conf_win_top_offset + pps->r->pps_conf_win_bottom_offset) << sps->vshift[CHROMA]); c->height = pps->height - ((pps->r->pps_conf_win_top_offset + pps->r->pps_conf_win_bottom_offset) << sps->vshift[CHROMA]);
c->has_b_frames = sps->r->sps_dpb_params.dpb_max_num_reorder_pics[sps->r->sps_max_sublayers_minus1];
} }
static int frame_setup(VVCFrameContext *fc, VVCContext *s) static int frame_setup(VVCFrameContext *fc, VVCContext *s)

@ -185,9 +185,6 @@ static void set_parser_ctx(AVCodecParserContext *s, AVCodecContext *avctx,
avctx->color_range = avctx->color_range =
sps->vui.vui_full_range_flag ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG; sps->vui.vui_full_range_flag ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG;
avctx->has_b_frames =
sps->sps_dpb_params.dpb_max_num_reorder_pics[sps->sps_max_sublayers_minus1];
if (sps->sps_ptl_dpb_hrd_params_present_flag && if (sps->sps_ptl_dpb_hrd_params_present_flag &&
sps->sps_timing_hrd_params_present_flag) { sps->sps_timing_hrd_params_present_flag) {
uint32_t num = sps->sps_general_timing_hrd_parameters.num_units_in_tick; uint32_t num = sps->sps_general_timing_hrd_parameters.num_units_in_tick;

Loading…
Cancel
Save