From acf15e84a9526e6f1f1d7008d33e4e21c20ba52e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Wed, 13 Mar 2013 10:29:23 +0100 Subject: [PATCH] omx: Mark OpenMAX buffers as EGLImage if they contain one Needs special handling in some places, e.g. because nFilledLen will always be 0. --- omx/gstomx.c | 3 +++ omx/gstomx.h | 3 +++ 2 files changed, 6 insertions(+) diff --git a/omx/gstomx.c b/omx/gstomx.c index 71a9b61e2a..84bac15e88 100644 --- a/omx/gstomx.c +++ b/omx/gstomx.c @@ -1575,14 +1575,17 @@ gst_omx_port_allocate_buffers_unlocked (GstOMXPort * port, err = OMX_UseBuffer (comp->handle, &buf->omx_buf, port->index, buf, port->port_def.nBufferSize, l->data); + buf->eglimage = FALSE; } else if (images) { err = OMX_UseEGLImage (comp->handle, &buf->omx_buf, port->index, buf, l->data); + buf->eglimage = TRUE; } else { err = OMX_AllocateBuffer (comp->handle, &buf->omx_buf, port->index, buf, port->port_def.nBufferSize); + buf->eglimage = FALSE; } if (err != OMX_ErrorNone) { diff --git a/omx/gstomx.h b/omx/gstomx.h index eeb2e66c42..eedb9ef103 100644 --- a/omx/gstomx.h +++ b/omx/gstomx.h @@ -241,6 +241,9 @@ struct _GstOMXBuffer { /* Cookie of the settings when this buffer was allocated */ gint settings_cookie; + + /* TRUE if this is an EGLImage */ + gboolean eglimage; }; struct _GstOMXClassData {