Message ID | 20240505190154.90781-1-sw@jkqxz.net |
---|---|
State | New |
Headers | show |
Series | [FFmpeg-devel,v4,1/5] configure: Remove libva 1.x support | expand |
Context | Check | Description |
---|---|---|
andriy/make_x86 | fail | Make failed |
On So, 2024-05-05 at 20:01 +0100, Mark Thompson wrote: > libva 2.0 was released in 2017 and the 2.x versions are included in all > supported distributions nowadays. Various features no longer need any > configure check after this command, including all codecs except AV1. > Note that the libva version is the API version plus one, so this is > removing support for VAAPI 0.x and requiring VAAPI 1.x. > --- > Changes to the series since v3: > * Reorder so that the series doesn't need to be squashed. > * New patch to remove the driver quirk support (deprecated in the public > header, but will have no effect if set). > > configure | 25 ++++++------------------- > 1 file changed, 6 insertions(+), 19 deletions(-) > > diff --git a/configure b/configure > index ed74583a6f..69fde0bf35 100755 > --- a/configure > +++ b/configure > @@ -2625,7 +2625,6 @@ CONFIG_EXTRA=" > texturedsp > texturedspenc > tpeldsp > - vaapi_1 CONFIG_VAAPI_1 is used in the code. Removing this only caused compiling errors. libavfilter/vaapi_vpp.c: In function ‘ff_vaapi_vpp_config_output’: libavfilter/vaapi_vpp.c:207:9: error: ‘CONFIG_VAAPI_1’ undeclared (first use in this function); did you mean ‘CONFIG_VAAPI’? 207 | if (CONFIG_VAAPI_1) | ^~~~~~~~~~~~~~ | CONFIG_VAAPI Thanks Haihao > vaapi_encode > vc1dsp > videodsp > @@ -3189,7 +3188,7 @@ hevc_dxva2_hwaccel_deps="dxva2 DXVA_PicParams_HEVC" > hevc_dxva2_hwaccel_select="hevc_decoder" > hevc_nvdec_hwaccel_deps="nvdec" > hevc_nvdec_hwaccel_select="hevc_decoder" > -hevc_vaapi_hwaccel_deps="vaapi VAPictureParameterBufferHEVC" > +hevc_vaapi_hwaccel_deps="vaapi" > hevc_vaapi_hwaccel_select="hevc_decoder" > hevc_vdpau_hwaccel_deps="vdpau VdpPictureInfoHEVC" > hevc_vdpau_hwaccel_select="hevc_decoder" > @@ -3261,7 +3260,7 @@ vp9_dxva2_hwaccel_deps="dxva2 DXVA_PicParams_VP9" > vp9_dxva2_hwaccel_select="vp9_decoder" > vp9_nvdec_hwaccel_deps="nvdec" > vp9_nvdec_hwaccel_select="vp9_decoder" > -vp9_vaapi_hwaccel_deps="vaapi VADecPictureParameterBufferVP9_bit_depth" > +vp9_vaapi_hwaccel_deps="vaapi" > vp9_vaapi_hwaccel_select="vp9_decoder" > vp9_vdpau_hwaccel_deps="vdpau VdpPictureInfoVP9" > vp9_vdpau_hwaccel_select="vp9_decoder" > @@ -3354,7 +3353,6 @@ hevc_qsv_decoder_select="hevc_mp4toannexb_bsf qsvdec" > hevc_qsv_encoder_select="hevcparse qsvenc" > hevc_rkmpp_decoder_deps="rkmpp" > hevc_rkmpp_decoder_select="hevc_mp4toannexb_bsf" > -hevc_vaapi_encoder_deps="VAEncPictureParameterBufferHEVC" > hevc_vaapi_encoder_select="atsc_a53 cbs_h265 vaapi_encode" > hevc_v4l2m2m_decoder_deps="v4l2_m2m hevc_v4l2_m2m" > hevc_v4l2m2m_decoder_select="hevc_mp4toannexb_bsf" > @@ -3363,7 +3361,6 @@ mjpeg_cuvid_decoder_deps="cuvid" > mjpeg_qsv_decoder_select="qsvdec" > mjpeg_qsv_encoder_deps="libmfx" > mjpeg_qsv_encoder_select="qsvenc" > -mjpeg_vaapi_encoder_deps="VAEncPictureParameterBufferJPEG" > mjpeg_vaapi_encoder_select="cbs_jpeg jpegtables vaapi_encode" > mp3_mf_encoder_deps="mediafoundation" > mpeg1_cuvid_decoder_deps="cuvid" > @@ -3392,7 +3389,6 @@ vp8_mediacodec_decoder_deps="mediacodec" > vp8_mediacodec_encoder_deps="mediacodec" > vp8_qsv_decoder_select="qsvdec" > vp8_rkmpp_decoder_deps="rkmpp" > -vp8_vaapi_encoder_deps="VAEncPictureParameterBufferVP8" > vp8_vaapi_encoder_select="vaapi_encode" > vp8_v4l2m2m_decoder_deps="v4l2_m2m vp8_v4l2_m2m" > vp8_v4l2m2m_encoder_deps="v4l2_m2m vp8_v4l2_m2m" > @@ -3401,7 +3397,6 @@ vp9_mediacodec_decoder_deps="mediacodec" > vp9_mediacodec_encoder_deps="mediacodec" > vp9_qsv_decoder_select="qsvdec" > vp9_rkmpp_decoder_deps="rkmpp" > -vp9_vaapi_encoder_deps="VAEncPictureParameterBufferVP9" > vp9_vaapi_encoder_select="vaapi_encode" > vp9_qsv_encoder_deps="libmfx MFX_CODEC_VP9" > vp9_qsv_encoder_select="qsvenc" > @@ -3952,9 +3947,9 @@ xfade_vulkan_filter_deps="vulkan spirv_compiler" > yadif_cuda_filter_deps="ffnvcodec" > yadif_cuda_filter_deps_any="cuda_nvcc cuda_llvm" > yadif_videotoolbox_filter_deps="metal corevideo videotoolbox" > -hstack_vaapi_filter_deps="vaapi_1" > -vstack_vaapi_filter_deps="vaapi_1" > -xstack_vaapi_filter_deps="vaapi_1" > +hstack_vaapi_filter_deps="vaapi" > +vstack_vaapi_filter_deps="vaapi" > +xstack_vaapi_filter_deps="vaapi" > hstack_qsv_filter_deps="libmfx" > hstack_qsv_filter_select="qsvvpp" > vstack_qsv_filter_deps="libmfx" > @@ -7252,7 +7247,7 @@ enabled libdrm && > check_pkg_config libdrm_getfb2 libdrm "xf86drmMode.h" drmModeGetFB2 > > enabled vaapi && > - check_pkg_config vaapi "libva >= 0.35.0" "va/va.h" vaInitialize > + check_pkg_config vaapi "libva >= 1.0.0" "va/va.h" vaInitialize > > if enabled vaapi; then > case $target_os in > @@ -7268,18 +7263,10 @@ if enabled vaapi; then > check_pkg_config vaapi_x11 "libva-x11" "va/va_x11.h" vaGetDisplay > fi > > - check_cpp_condition vaapi_1 "va/va.h" "VA_CHECK_VERSION(1, 0, 0)" > - > - check_type "va/va.h va/va_dec_hevc.h" "VAPictureParameterBufferHEVC" > - check_struct "va/va.h" "VADecPictureParameterBufferVP9" bit_depth > check_struct "va/va.h" "VADecPictureParameterBufferAV1" bit_depth_idx > check_type "va/va.h va/va_vpp.h" > "VAProcFilterParameterBufferHDRToneMapping" > check_struct "va/va.h va/va_vpp.h" "VAProcPipelineCaps" rotation_flags > check_struct "va/va.h va/va_vpp.h" "VAProcPipelineCaps" blend_flags > - check_type "va/va.h va/va_enc_hevc.h" "VAEncPictureParameterBufferHEVC" > - check_type "va/va.h va/va_enc_jpeg.h" "VAEncPictureParameterBufferJPEG" > - check_type "va/va.h va/va_enc_vp8.h" "VAEncPictureParameterBufferVP8" > - check_type "va/va.h va/va_enc_vp9.h" "VAEncPictureParameterBufferVP9" > check_type "va/va.h va/va_enc_av1.h" "VAEncPictureParameterBufferAV1" > fi >
On 07/05/2024 06:27, Xiang, Haihao wrote: > On So, 2024-05-05 at 20:01 +0100, Mark Thompson wrote: >> libva 2.0 was released in 2017 and the 2.x versions are included in all >> supported distributions nowadays. Various features no longer need any >> configure check after this command, including all codecs except AV1. >> Note that the libva version is the API version plus one, so this is >> removing support for VAAPI 0.x and requiring VAAPI 1.x. >> --- >> Changes to the series since v3: >> * Reorder so that the series doesn't need to be squashed. >> * New patch to remove the driver quirk support (deprecated in the public >> header, but will have no effect if set). >> >> configure | 25 ++++++------------------- >> 1 file changed, 6 insertions(+), 19 deletions(-) >> >> diff --git a/configure b/configure >> index ed74583a6f..69fde0bf35 100755 >> --- a/configure >> +++ b/configure >> @@ -2625,7 +2625,6 @@ CONFIG_EXTRA=" >> texturedsp >> texturedspenc >> tpeldsp >> - vaapi_1 > > CONFIG_VAAPI_1 is used in the code. Removing this only caused compiling errors. > > libavfilter/vaapi_vpp.c: In function ‘ff_vaapi_vpp_config_output’: > libavfilter/vaapi_vpp.c:207:9: error: ‘CONFIG_VAAPI_1’ undeclared (first use in > this function); did you mean ‘CONFIG_VAAPI’? > 207 | if (CONFIG_VAAPI_1) > | ^~~~~~~~~~~~~~ > | CONFIG_VAAPI You are correct; I didn't think this split through carefully. I suggest returning to the original idea of squashing before push so that the removal is atomic? I'm not sure it's worth dealing with the intermediate states given that they have no particular use. Thanks, - Mark
On Di, 2024-05-07 at 21:25 +0100, Mark Thompson wrote: > On 07/05/2024 06:27, Xiang, Haihao wrote: > > On So, 2024-05-05 at 20:01 +0100, Mark Thompson wrote: > > > libva 2.0 was released in 2017 and the 2.x versions are included in all > > > supported distributions nowadays. Various features no longer need any > > > configure check after this command, including all codecs except AV1. > > > Note that the libva version is the API version plus one, so this is > > > removing support for VAAPI 0.x and requiring VAAPI 1.x. > > > --- > > > Changes to the series since v3: > > > * Reorder so that the series doesn't need to be squashed. > > > * New patch to remove the driver quirk support (deprecated in the public > > > header, but will have no effect if set). > > > > > > configure | 25 ++++++------------------- > > > 1 file changed, 6 insertions(+), 19 deletions(-) > > > > > > diff --git a/configure b/configure > > > index ed74583a6f..69fde0bf35 100755 > > > --- a/configure > > > +++ b/configure > > > @@ -2625,7 +2625,6 @@ CONFIG_EXTRA=" > > > texturedsp > > > texturedspenc > > > tpeldsp > > > - vaapi_1 > > > > CONFIG_VAAPI_1 is used in the code. Removing this only caused compiling > > errors. > > > > libavfilter/vaapi_vpp.c: In function ‘ff_vaapi_vpp_config_output’: > > libavfilter/vaapi_vpp.c:207:9: error: ‘CONFIG_VAAPI_1’ undeclared (first use > > in > > this function); did you mean ‘CONFIG_VAAPI’? > > 207 | if (CONFIG_VAAPI_1) > > | ^~~~~~~~~~~~~~ > > | CONFIG_VAAPI > > You are correct; I didn't think this split through carefully. > > I suggest returning to the original idea of squashing before push so that the > removal is atomic? I'm not sure it's worth dealing with the intermediate > states given that they have no particular use. I'm ok if you want to use a squash commit. BRs Haihao
diff --git a/configure b/configure index ed74583a6f..69fde0bf35 100755 --- a/configure +++ b/configure @@ -2625,7 +2625,6 @@ CONFIG_EXTRA=" texturedsp texturedspenc tpeldsp - vaapi_1 vaapi_encode vc1dsp videodsp @@ -3189,7 +3188,7 @@ hevc_dxva2_hwaccel_deps="dxva2 DXVA_PicParams_HEVC" hevc_dxva2_hwaccel_select="hevc_decoder" hevc_nvdec_hwaccel_deps="nvdec" hevc_nvdec_hwaccel_select="hevc_decoder" -hevc_vaapi_hwaccel_deps="vaapi VAPictureParameterBufferHEVC" +hevc_vaapi_hwaccel_deps="vaapi" hevc_vaapi_hwaccel_select="hevc_decoder" hevc_vdpau_hwaccel_deps="vdpau VdpPictureInfoHEVC" hevc_vdpau_hwaccel_select="hevc_decoder" @@ -3261,7 +3260,7 @@ vp9_dxva2_hwaccel_deps="dxva2 DXVA_PicParams_VP9" vp9_dxva2_hwaccel_select="vp9_decoder" vp9_nvdec_hwaccel_deps="nvdec" vp9_nvdec_hwaccel_select="vp9_decoder" -vp9_vaapi_hwaccel_deps="vaapi VADecPictureParameterBufferVP9_bit_depth" +vp9_vaapi_hwaccel_deps="vaapi" vp9_vaapi_hwaccel_select="vp9_decoder" vp9_vdpau_hwaccel_deps="vdpau VdpPictureInfoVP9" vp9_vdpau_hwaccel_select="vp9_decoder" @@ -3354,7 +3353,6 @@ hevc_qsv_decoder_select="hevc_mp4toannexb_bsf qsvdec" hevc_qsv_encoder_select="hevcparse qsvenc" hevc_rkmpp_decoder_deps="rkmpp" hevc_rkmpp_decoder_select="hevc_mp4toannexb_bsf" -hevc_vaapi_encoder_deps="VAEncPictureParameterBufferHEVC" hevc_vaapi_encoder_select="atsc_a53 cbs_h265 vaapi_encode" hevc_v4l2m2m_decoder_deps="v4l2_m2m hevc_v4l2_m2m" hevc_v4l2m2m_decoder_select="hevc_mp4toannexb_bsf" @@ -3363,7 +3361,6 @@ mjpeg_cuvid_decoder_deps="cuvid" mjpeg_qsv_decoder_select="qsvdec" mjpeg_qsv_encoder_deps="libmfx" mjpeg_qsv_encoder_select="qsvenc" -mjpeg_vaapi_encoder_deps="VAEncPictureParameterBufferJPEG" mjpeg_vaapi_encoder_select="cbs_jpeg jpegtables vaapi_encode" mp3_mf_encoder_deps="mediafoundation" mpeg1_cuvid_decoder_deps="cuvid" @@ -3392,7 +3389,6 @@ vp8_mediacodec_decoder_deps="mediacodec" vp8_mediacodec_encoder_deps="mediacodec" vp8_qsv_decoder_select="qsvdec" vp8_rkmpp_decoder_deps="rkmpp" -vp8_vaapi_encoder_deps="VAEncPictureParameterBufferVP8" vp8_vaapi_encoder_select="vaapi_encode" vp8_v4l2m2m_decoder_deps="v4l2_m2m vp8_v4l2_m2m" vp8_v4l2m2m_encoder_deps="v4l2_m2m vp8_v4l2_m2m" @@ -3401,7 +3397,6 @@ vp9_mediacodec_decoder_deps="mediacodec" vp9_mediacodec_encoder_deps="mediacodec" vp9_qsv_decoder_select="qsvdec" vp9_rkmpp_decoder_deps="rkmpp" -vp9_vaapi_encoder_deps="VAEncPictureParameterBufferVP9" vp9_vaapi_encoder_select="vaapi_encode" vp9_qsv_encoder_deps="libmfx MFX_CODEC_VP9" vp9_qsv_encoder_select="qsvenc" @@ -3952,9 +3947,9 @@ xfade_vulkan_filter_deps="vulkan spirv_compiler" yadif_cuda_filter_deps="ffnvcodec" yadif_cuda_filter_deps_any="cuda_nvcc cuda_llvm" yadif_videotoolbox_filter_deps="metal corevideo videotoolbox" -hstack_vaapi_filter_deps="vaapi_1" -vstack_vaapi_filter_deps="vaapi_1" -xstack_vaapi_filter_deps="vaapi_1" +hstack_vaapi_filter_deps="vaapi" +vstack_vaapi_filter_deps="vaapi" +xstack_vaapi_filter_deps="vaapi" hstack_qsv_filter_deps="libmfx" hstack_qsv_filter_select="qsvvpp" vstack_qsv_filter_deps="libmfx" @@ -7252,7 +7247,7 @@ enabled libdrm && check_pkg_config libdrm_getfb2 libdrm "xf86drmMode.h" drmModeGetFB2 enabled vaapi && - check_pkg_config vaapi "libva >= 0.35.0" "va/va.h" vaInitialize + check_pkg_config vaapi "libva >= 1.0.0" "va/va.h" vaInitialize if enabled vaapi; then case $target_os in @@ -7268,18 +7263,10 @@ if enabled vaapi; then check_pkg_config vaapi_x11 "libva-x11" "va/va_x11.h" vaGetDisplay fi - check_cpp_condition vaapi_1 "va/va.h" "VA_CHECK_VERSION(1, 0, 0)" - - check_type "va/va.h va/va_dec_hevc.h" "VAPictureParameterBufferHEVC" - check_struct "va/va.h" "VADecPictureParameterBufferVP9" bit_depth check_struct "va/va.h" "VADecPictureParameterBufferAV1" bit_depth_idx check_type "va/va.h va/va_vpp.h" "VAProcFilterParameterBufferHDRToneMapping" check_struct "va/va.h va/va_vpp.h" "VAProcPipelineCaps" rotation_flags check_struct "va/va.h va/va_vpp.h" "VAProcPipelineCaps" blend_flags - check_type "va/va.h va/va_enc_hevc.h" "VAEncPictureParameterBufferHEVC" - check_type "va/va.h va/va_enc_jpeg.h" "VAEncPictureParameterBufferJPEG" - check_type "va/va.h va/va_enc_vp8.h" "VAEncPictureParameterBufferVP8" - check_type "va/va.h va/va_enc_vp9.h" "VAEncPictureParameterBufferVP9" check_type "va/va.h va/va_enc_av1.h" "VAEncPictureParameterBufferAV1" fi