[FFmpeg-devel] [PATCH] configure: Require bit_depth field for VAAPI VP9 decode hwaccel

Mark Thompson sw at jkqxz.net
Thu Dec 8 18:26:35 EET 2016

libva versions from 1.6.0 to 1.6.2 do not include it, and therefore
cannot work with VP9 profile >= 2.
On 08/12/16 16:13, James Almer wrote:
> On 12/8/2016 12:55 PM, Mark Thompson wrote:
>> On 08/12/16 15:51, Mark Thompson wrote:
>>> Hacky fix enclosing, only compile tested.
>>> A configure test for this might be better, because we could then check it sensibly in the generic code and bail out earlier?  (Which would permit software decode, this will attempt hardware decode and fail.)
>> Or maybe change the current configure test to drop support for VP9 in those versions entirely?  Newer versions of libva including the field already existed when the first hardware which could do VP9 at all through this was released.
>> - Mark
> Definitely make the first version with that field the minimum in that case.
> The least amount of ifdeffery the better.

Alternate version taking this approach.

 configure | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/configure b/configure
index 21ec552..810e7ab 100755
--- a/configure
+++ b/configure
@@ -2689,7 +2689,7 @@ vp9_dxva2_hwaccel_deps="dxva2 DXVA_PicParams_VP9"
-vp9_vaapi_hwaccel_deps="vaapi VADecPictureParameterBufferVP9"
+vp9_vaapi_hwaccel_deps="vaapi VADecPictureParameterBufferVP9_bit_depth"
@@ -5610,7 +5610,7 @@ check_type "windows.h d3d11.h" "ID3D11VideoContext"
 check_type "d3d9.h dxva2api.h" DXVA2_ConfigPictureDecode -D_WIN32_WINNT=0x0602
 check_type "va/va.h" "VAPictureParameterBufferHEVC"
-check_type "va/va.h" "VADecPictureParameterBufferVP9"
+check_struct "va/va.h" "VADecPictureParameterBufferVP9" bit_depth
 check_type "va/va.h va/va_vpp.h" "VAProcPipelineParameterBuffer"
 check_type "va/va.h va/va_enc_h264.h" "VAEncPictureParameterBufferH264"
 check_type "va/va.h va/va_enc_hevc.h" "VAEncPictureParameterBufferHEVC"

More information about the ffmpeg-devel mailing list