hwcontext_vaapi: Fix compilation with libva versions < 1.4.0
authorMark Thompson <sw@jkqxz.net>
Fri, 27 Apr 2018 12:41:56 +0000 (13:41 +0100)
committerMark Thompson <sw@jkqxz.net>
Fri, 27 Apr 2018 22:29:51 +0000 (23:29 +0100)
The BufferHandle API was added in libva 1.4.0 / VAAPI 0.36.0.

libavutil/hwcontext_vaapi.c

index 53a5b02..7daaa95 100644 (file)
@@ -1164,6 +1164,7 @@ fail:
 }
 #endif
 
+#if VA_CHECK_VERSION(0, 36, 0)
 typedef struct VAAPIDRMImageBufferMapping {
     VAImage      image;
     VABufferInfo buffer_info;
@@ -1323,6 +1324,7 @@ fail:
     av_freep(&mapping);
     return err;
 }
+#endif
 
 static int vaapi_map_to_drm(AVHWFramesContext *hwfc, AVFrame *dst,
                             const AVFrame *src, int flags)
@@ -1333,7 +1335,10 @@ static int vaapi_map_to_drm(AVHWFramesContext *hwfc, AVFrame *dst,
     if (err != AVERROR(ENOSYS))
         return err;
 #endif
+#if VA_CHECK_VERSION(0, 36, 0)
     return vaapi_map_to_drm_abh(hwfc, dst, src, flags);
+#endif
+    return AVERROR(ENOSYS);
 }
 
 #endif /* CONFIG_LIBDRM */