diff options
author | Sreerenj Balachandran <sreerenj.balachandran@intel.com> | 2017-07-18 16:09:35 -0700 |
---|---|---|
committer | Sreerenj Balachandran <sreerenj.balachandran@intel.com> | 2017-07-18 16:10:16 -0700 |
commit | af2e22ed93feffe0b5370933880fb3d8dc1b9259 (patch) | |
tree | 0259b2f8f8e62e41a31657630862dc161160407f | |
parent | 5ad196d2e46f4f79a5396cb2bbbfae6a0bc29272 (diff) |
FEI: libs: Add FEI functional mode configuration
FEI Entrypoint can work in either one of the 3 different modes:
VA_FEI_FUNCTION_ENC, VA_FEI_FUNCTION_PAK or VA_FEI_FUNCTION_ENC_PAK.
Add infrastructure in gstvaapicontext for this functioal mode
configuration.
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapicontext.c | 11 | ||||
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapicontext.h | 3 |
2 files changed, 12 insertions, 2 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapicontext.c b/gst-libs/gst/vaapi/gstvaapicontext.c index 52d81e20..f8f6f8d5 100644 --- a/gst-libs/gst/vaapi/gstvaapicontext.c +++ b/gst-libs/gst/vaapi/gstvaapicontext.c @@ -229,7 +229,7 @@ config_create (GstVaapiContext * context) { const GstVaapiContextInfo *const cip = &context->info; GstVaapiDisplay *const display = GST_VAAPI_OBJECT_DISPLAY (context); - VAConfigAttrib attribs[4], *attrib = attribs; + VAConfigAttrib attribs[5], *attrib = attribs; VAStatus status; guint value, va_chroma_format; @@ -320,6 +320,15 @@ config_create (GstVaapiContext * context) attrib++; } #endif +#if USE_H264_FEI_ENCODER + if (cip->entrypoint == GST_VAAPI_ENTRYPOINT_SLICE_ENCODE_FEI) { + attrib->type = (VAConfigAttribType) VAConfigAttribFEIFunctionType; + attrib->value = config->fei_function; + attrib++; + /* FeiFixme */ + /* Query the read-only supported MV predictors */ + } +#endif break; } #endif diff --git a/gst-libs/gst/vaapi/gstvaapicontext.h b/gst-libs/gst/vaapi/gstvaapicontext.h index a94259ec..1a50078d 100644 --- a/gst-libs/gst/vaapi/gstvaapicontext.h +++ b/gst-libs/gst/vaapi/gstvaapicontext.h @@ -62,7 +62,7 @@ typedef enum { * @packed_headers: notify encoder that packed headers are submitted (mask). * @roi_capability: if encoder supports regions-of-interest. * @roi_num_supported: The number of regions-of-interest supported. - * + * @fei_function: The functional mode for FEI Entrypoint(VA_FEI_FUNCTION_*) * Extra configuration for encoding. */ struct _GstVaapiConfigInfoEncoder @@ -71,6 +71,7 @@ struct _GstVaapiConfigInfoEncoder guint packed_headers; gboolean roi_capability; guint roi_num_supported; + guint fei_function; }; /** |