build: fix for older versions of VA-API (< 0.34.0).
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>
Thu, 23 Jan 2014 21:44:09 +0000 (22:44 +0100)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Thu, 23 Jan 2014 21:44:09 +0000 (22:44 +0100)
Fix build with older versions of VA-API (< 0.34.0), or versions without
good enough headers for encoding support for instance.

gst-libs/gst/vaapi/gstvaapicontext.c
gst-libs/gst/vaapi/gstvaapiutils.c

index 236f891..b306a6f 100644 (file)
@@ -152,7 +152,6 @@ context_create (GstVaapiContext * context)
 {
   const GstVaapiContextInfo *const cip = &context->info;
   GstVaapiDisplay *const display = GST_VAAPI_OBJECT_DISPLAY (context);
-  guint va_rate_control;
   VAConfigAttrib attribs[3], *attrib = attribs;
   VAContextID context_id;
   VASurfaceID surface_id;
@@ -196,9 +195,11 @@ context_create (GstVaapiContext * context)
   attrib++;
 
   switch (cip->usage) {
+#if USE_ENCODERS
     case GST_VAAPI_CONTEXT_USAGE_ENCODE:
     {
       const GstVaapiConfigInfoEncoder *const config = &cip->config.encoder;
+      guint va_rate_control;
 
       /* Rate control */
       attrib->type = VAConfigAttribRateControl;
@@ -230,6 +231,7 @@ context_create (GstVaapiContext * context)
       }
       break;
     }
+#endif
     default:
       break;
   }
index 10bc606..87923cc 100644 (file)
@@ -214,16 +214,20 @@ string_of_VARateControl (guint rate_control)
   switch (rate_control) {
     case VA_RC_NONE:
       return "None";
+#ifdef VA_RC_CQP
     case VA_RC_CQP:
       return "CQP";
+#endif
     case VA_RC_CBR:
       return "CBR";
     case VA_RC_VCM:
       return "VCM";
     case VA_RC_VBR:
       return "VBR";
+#ifdef VA_RC_VBR_CONSTRAINED
     case VA_RC_VBR_CONSTRAINED:
       return "VBR-Constrained";
+#endif
     default:
       break;
   }
@@ -492,16 +496,20 @@ from_GstVaapiRateControl (guint value)
   switch (value) {
     case GST_VAAPI_RATECONTROL_NONE:
       return VA_RC_NONE;
+#ifdef VA_RC_CQP
     case GST_VAAPI_RATECONTROL_CQP:
       return VA_RC_CQP;
+#endif
     case GST_VAAPI_RATECONTROL_CBR:
       return VA_RC_CBR;
     case GST_VAAPI_RATECONTROL_VCM:
       return VA_RC_VCM;
     case GST_VAAPI_RATECONTROL_VBR:
       return VA_RC_VBR;
+#ifdef VA_RC_VBR_CONSTRAINED
     case GST_VAAPI_RATECONTROL_VBR_CONSTRAINED:
       return VA_RC_VBR_CONSTRAINED;
+#endif
   }
   GST_ERROR ("unsupported GstVaapiRateControl value %u", value);
   return VA_RC_NONE;
@@ -513,16 +521,20 @@ to_GstVaapiRateControl (guint value)
   switch (value) {
     case VA_RC_NONE:
       return GST_VAAPI_RATECONTROL_NONE;
+#ifdef VA_RC_CQP
     case VA_RC_CQP:
       return GST_VAAPI_RATECONTROL_CQP;
+#endif
     case VA_RC_CBR:
       return GST_VAAPI_RATECONTROL_CBR;
     case VA_RC_VCM:
       return GST_VAAPI_RATECONTROL_VCM;
     case VA_RC_VBR:
       return GST_VAAPI_RATECONTROL_VBR;
+#ifdef VA_RC_VBR_CONSTRAINED
     case VA_RC_VBR_CONSTRAINED:
       return GST_VAAPI_RATECONTROL_VBR_CONSTRAINED;
+#endif
   }
   GST_ERROR ("unsupported VA-API Rate Control value %u", value);
   return GST_VAAPI_RATECONTROL_NONE;