if (priv->sei_needed) {
if (priv->aud_needed) {
- vaapi_encode_h264_add_nal(avctx, au, &priv->aud);
+ err = vaapi_encode_h264_add_nal(avctx, au, &priv->aud);
+ if (err < 0)
+ goto fail;
priv->aud_needed = 0;
}
ff_cbs_fragment_uninit(priv->cbc, au);
- *type = VAEncPackedHeaderH264_SEI;
+ *type = VAEncPackedHeaderRawData;
return 0;
} else {
return AVERROR_EOF;
sps->vui.log2_max_mv_length_horizontal = 16;
sps->vui.log2_max_mv_length_vertical = 16;
sps->vui.max_num_reorder_frames = (ctx->b_per_p > 0);
- sps->vui.max_dec_frame_buffering = vseq->max_num_ref_frames;
+ sps->vui.max_dec_frame_buffering = sps->max_num_ref_frames;
pps->nal_unit_header.nal_ref_idc = 3;
pps->nal_unit_header.nal_unit_type = H264_NAL_PPS;
if (opt->sei & SEI_TIMING) {
memset(&priv->pic_timing, 0, sizeof(priv->pic_timing));
- priv->pic_timing.cpb_removal_delay =
- 2 * sps->vui.num_units_in_tick * priv->cpb_delay;
- priv->pic_timing.dpb_output_delay =
- 2 * sps->vui.num_units_in_tick * priv->dpb_delay;
+ priv->pic_timing.cpb_removal_delay = 2 * priv->cpb_delay;
+ priv->pic_timing.dpb_output_delay = 2 * priv->dpb_delay;
priv->sei_needed = 1;
}