diff --git a/subprojects/gst-plugins-bad/sys/va/gstvacaps.c b/subprojects/gst-plugins-bad/sys/va/gstvacaps.c index 72ff8f52dc..4768a79b98 100644 --- a/subprojects/gst-plugins-bad/sys/va/gstvacaps.c +++ b/subprojects/gst-plugins-bad/sys/va/gstvacaps.c @@ -646,7 +646,7 @@ gst_va_create_coded_caps (GstVaDisplay * display, VAProfile profile, if (rt_formats_ptr) *rt_formats_ptr = rt_formats; - caps = gst_va_profile_caps (profile); + caps = gst_va_profile_caps (profile, entrypoint); if (!caps) return NULL; diff --git a/subprojects/gst-plugins-bad/sys/va/gstvah264enc.c b/subprojects/gst-plugins-bad/sys/va/gstvah264enc.c index cf370595f1..5589b0d9c8 100644 --- a/subprojects/gst-plugins-bad/sys/va/gstvah264enc.c +++ b/subprojects/gst-plugins-bad/sys/va/gstvah264enc.c @@ -1528,6 +1528,7 @@ gst_va_h264_enc_reset_state (GstVaBaseEnc * base) static gboolean gst_va_h264_enc_reconfig (GstVaBaseEnc * base) { + GstVaBaseEncClass *klass = GST_VA_BASE_ENC_GET_CLASS (base); GstVideoEncoder *venc = GST_VIDEO_ENCODER (base); GstVaH264Enc *self = GST_VA_H264_ENC (base); GstCaps *out_caps, *reconf_caps = NULL; @@ -1638,7 +1639,7 @@ gst_va_h264_enc_reconfig (GstVaBaseEnc * base) /* Add some tags */ gst_va_base_enc_add_codec_tag (base, "H264"); - out_caps = gst_va_profile_caps (base->profile); + out_caps = gst_va_profile_caps (base->profile, klass->entrypoint); g_assert (out_caps); out_caps = gst_caps_fixate (out_caps); diff --git a/subprojects/gst-plugins-bad/sys/va/gstvah265enc.c b/subprojects/gst-plugins-bad/sys/va/gstvah265enc.c index e52f9acad3..0de6c5ebbd 100644 --- a/subprojects/gst-plugins-bad/sys/va/gstvah265enc.c +++ b/subprojects/gst-plugins-bad/sys/va/gstvah265enc.c @@ -4400,6 +4400,7 @@ done: static gboolean gst_va_h265_enc_reconfig (GstVaBaseEnc * base) { + GstVaBaseEncClass *klass = GST_VA_BASE_ENC_GET_CLASS (base); GstVideoEncoder *venc = GST_VIDEO_ENCODER (base); GstVaH265Enc *self = GST_VA_H265_ENC (base); GstCaps *out_caps, *reconf_caps = NULL;; @@ -4545,7 +4546,7 @@ gst_va_h265_enc_reconfig (GstVaBaseEnc * base) /* Add some tags */ gst_va_base_enc_add_codec_tag (base, "H265"); - out_caps = gst_va_profile_caps (base->profile); + out_caps = gst_va_profile_caps (base->profile, klass->entrypoint); g_assert (out_caps); out_caps = gst_caps_fixate (out_caps); diff --git a/subprojects/gst-plugins-bad/sys/va/gstvaprofile.c b/subprojects/gst-plugins-bad/sys/va/gstvaprofile.c index 572e42d03c..bb3ded49b1 100644 --- a/subprojects/gst-plugins-bad/sys/va/gstvaprofile.c +++ b/subprojects/gst-plugins-bad/sys/va/gstvaprofile.c @@ -157,7 +157,7 @@ gst_va_profile_from_name (GstVaCodecs codec, const gchar * name) } GstCaps * -gst_va_profile_caps (VAProfile profile) +gst_va_profile_caps (VAProfile profile, VAEntrypoint entrypoint) { const struct ProfileMap *map = get_profile_map (profile); GstCaps *caps; diff --git a/subprojects/gst-plugins-bad/sys/va/gstvaprofile.h b/subprojects/gst-plugins-bad/sys/va/gstvaprofile.h index e7a00953ba..99a3e8119a 100644 --- a/subprojects/gst-plugins-bad/sys/va/gstvaprofile.h +++ b/subprojects/gst-plugins-bad/sys/va/gstvaprofile.h @@ -40,7 +40,8 @@ typedef enum } GstVaCodecs; guint32 gst_va_profile_codec (VAProfile profile); -GstCaps * gst_va_profile_caps (VAProfile profile); +GstCaps * gst_va_profile_caps (VAProfile profile, + VAEntrypoint entrypoint); const gchar * gst_va_profile_name (VAProfile profile); VAProfile gst_va_profile_from_name (GstVaCodecs codec, const gchar * name);