diff --git a/gst-libs/gst/vaapi/gstvaapiencoder_h264.c b/gst-libs/gst/vaapi/gstvaapiencoder_h264.c index b87f420e83..10c407bc52 100644 --- a/gst-libs/gst/vaapi/gstvaapiencoder_h264.c +++ b/gst-libs/gst/vaapi/gstvaapiencoder_h264.c @@ -2519,10 +2519,13 @@ ensure_control_rate_params (GstVaapiEncoderH264 * encoder) GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).window_size = encoder->cpb_length; GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).initial_qp = encoder->init_qp; GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).min_qp = encoder->min_qp; + +#if VA_CHECK_VERSION(1,1,0) /* @FIXME: should not set this value, should be ignored if set to zero * * https://github.com/intel/media-driver/issues/587 */ if (encoder->min_qp > 0) GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).max_qp = 51; +#endif #if VA_CHECK_VERSION(1,0,0) GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).rc_flags.bits.mb_rate_control = diff --git a/gst-libs/gst/vaapi/gstvaapiencoder_h264_fei.c b/gst-libs/gst/vaapi/gstvaapiencoder_h264_fei.c index 7bb95200b9..9115281980 100644 --- a/gst-libs/gst/vaapi/gstvaapiencoder_h264_fei.c +++ b/gst-libs/gst/vaapi/gstvaapiencoder_h264_fei.c @@ -2449,10 +2449,14 @@ ensure_misc_params (GstVaapiEncoderH264Fei * encoder, rate_control->window_size = encoder->cpb_length; rate_control->initial_qp = encoder->init_qp; rate_control->min_qp = encoder->min_qp; + +#if VA_CHECK_VERSION(1,1,0) /* @FIXME: should not set this value, should be ignored if set to zero * * https://github.com/intel/media-driver/issues/587 */ if (rate_control->min_qp > 0) rate_control->max_qp = 51; +#endif + rate_control->basic_unit_size = 0; gst_vaapi_enc_picture_add_misc_param (picture, misc); gst_vaapi_codec_object_replace (&misc, NULL); diff --git a/gst-libs/gst/vaapi/gstvaapiencoder_h265.c b/gst-libs/gst/vaapi/gstvaapiencoder_h265.c index 665beebaba..01425523f8 100644 --- a/gst-libs/gst/vaapi/gstvaapiencoder_h265.c +++ b/gst-libs/gst/vaapi/gstvaapiencoder_h265.c @@ -1865,10 +1865,13 @@ ensure_control_rate_params (GstVaapiEncoderH265 * encoder) GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).window_size = encoder->cpb_length; GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).initial_qp = encoder->init_qp; GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).min_qp = encoder->min_qp; + +#if VA_CHECK_VERSION(1,1,0) /* @FIXME: should not set this value, should be ignored if set to zero * * https://github.com/intel/media-driver/issues/587 */ if (encoder->min_qp > 0) GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).max_qp = 51; +#endif #if VA_CHECK_VERSION(1,0,0) GST_VAAPI_ENCODER_VA_RATE_CONTROL (encoder).rc_flags.bits.mb_rate_control =