])
# libva minimum version requirement
-m4_define([libva_package_version], [1.0.16])
-m4_define([va_api_version], [0.32.1])
+m4_define([libva_package_version], [1.0.14])
+m4_define([va_api_version], [0.32.0])
# libdrm minimum version requirement
m4_define([libdrm_version], [2.4.23])
[WAYLAND_SCANNER_RULES(['$(top_srcdir)/src/wayland'])],
[wayland_scanner_rules=""; AC_SUBST(wayland_scanner_rules)])
+dnl Check for JPEG decoding API
+AC_CACHE_CHECK([for JPEG decoding API], ac_cv_have_va_jpeg_decode, [
+ saved_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $LIBVA_DEPS_CFLAGS"
+ saved_LIBS="$LIBS"
+ LIBS="$LIBS $LIBVA_DEPS_LIBS"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <va/va.h>]],
+ [[VAPictureParameterBufferJPEGBaseline pic_param;
+ VASliceParameterBufferJPEGBaseline slice_param;
+ VAHuffmanTableBufferJPEGBaseline huffman_table;
+ VAIQMatrixBufferJPEGBaseline iq_matrix;]])],
+ [ac_cv_have_va_jpeg_decode="yes"],
+ [ac_cv_have_va_jpeg_decode="no"]
+ )
+ CPPFLAGS="$saved_CPPFLAGS"
+ LIBS="$saved_LIBS"
+])
+if test "$ac_cv_have_va_jpeg_decode" = "yes"; then
+ AC_DEFINE(HAVE_VA_JPEG_DECODE, 1,
+ [Defined to 1 if VA-API exposes JPEG decoding])
+fi
+
AC_OUTPUT([
Makefile
debian.upstream/Makefile
intel_batchbuffer_flush(batch);
}
+#ifdef HAVE_VA_JPEG_DECODE
static void
gen7_mfd_jpeg_decode_init(VADriverContextP ctx,
struct decode_state *decode_state,
intel_batchbuffer_end_atomic(batch);
intel_batchbuffer_flush(batch);
}
+#endif
static void
gen7_mfd_decode_picture(VADriverContextP ctx,
gen7_mfd_vc1_decode_picture(ctx, decode_state, gen7_mfd_context);
break;
+#ifdef HAVE_VA_JPEG_DECODE
case VAProfileJPEGBaseline:
gen7_mfd_jpeg_decode_picture(ctx, decode_state, gen7_mfd_context);
break;
+#endif
default:
assert(0);
profile_list[i++] = VAProfileVC1Advanced;
}
+#ifdef HAVE_VA_JPEG_DECODE
if (HAS_JPEG(i965)) {
profile_list[i++] = VAProfileJPEGBaseline;
}
+#endif
/* If the assert fails then I965_MAX_PROFILES needs to be bigger */
assert(i <= I965_MAX_PROFILES);
case VAEncSequenceParameterBufferType:
case VAEncPictureParameterBufferType:
case VAEncSliceParameterBufferType:
- case VAHuffmanTableBufferType:
+#ifdef HAVE_VA_JPEG_DECODE
+ case VAHuffmanTableBufferType:
+#endif
/* Ok */
break;
vaStatus = I965_RENDER_DECODE_BUFFER(slice_data);
break;
+#ifdef HAVE_VA_JPEG_DECODE
case VAHuffmanTableBufferType:
vaStatus = I965_RENDER_DECODE_BUFFER(huffman_table);
break;
+#endif
default:
vaStatus = VA_STATUS_ERROR_UNSUPPORTED_BUFFERTYPE;