summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/omx
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/state_trackers/omx')
-rw-r--r--src/gallium/state_trackers/omx/vid_dec.c69
-rw-r--r--src/gallium/state_trackers/omx/vid_dec.h6
-rw-r--r--src/gallium/state_trackers/omx/vid_enc.c33
-rw-r--r--src/gallium/state_trackers/omx/vid_enc.h4
4 files changed, 18 insertions, 94 deletions
diff --git a/src/gallium/state_trackers/omx/vid_dec.c b/src/gallium/state_trackers/omx/vid_dec.c
index de1c3825ebb..4442c5c925d 100644
--- a/src/gallium/state_trackers/omx/vid_dec.c
+++ b/src/gallium/state_trackers/omx/vid_dec.c
@@ -64,21 +64,6 @@ static OMX_ERRORTYPE vid_dec_DecodeBuffer(omx_base_PortType *port, OMX_BUFFERHEA
static OMX_ERRORTYPE vid_dec_FreeDecBuffer(omx_base_PortType *port, OMX_U32 idx, OMX_BUFFERHEADERTYPE *buf);
static void vid_dec_FrameDecoded(OMX_COMPONENTTYPE *comp, OMX_BUFFERHEADERTYPE* input, OMX_BUFFERHEADERTYPE* output);
-static void vid_dec_name(char str[OMX_MAX_STRINGNAME_SIZE])
-{
- snprintf(str, OMX_MAX_STRINGNAME_SIZE, OMX_VID_DEC_BASE_NAME, driver_descriptor.name);
-}
-
-static void vid_dec_name_mpeg2(char str[OMX_MAX_STRINGNAME_SIZE])
-{
- snprintf(str, OMX_MAX_STRINGNAME_SIZE, OMX_VID_DEC_MPEG2_NAME, driver_descriptor.name);
-}
-
-static void vid_dec_name_avc(char str[OMX_MAX_STRINGNAME_SIZE])
-{
- snprintf(str, OMX_MAX_STRINGNAME_SIZE, OMX_VID_DEC_AVC_NAME, driver_descriptor.name);
-}
-
OMX_ERRORTYPE vid_dec_LoaderComponent(stLoaderComponentType *comp)
{
comp->componentVersion.s.nVersionMajor = 0;
@@ -87,67 +72,35 @@ OMX_ERRORTYPE vid_dec_LoaderComponent(stLoaderComponentType *comp)
comp->componentVersion.s.nStep = 1;
comp->name_specific_length = 2;
- comp->name = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (comp->name == NULL)
- goto error;
-
comp->name_specific = CALLOC(comp->name_specific_length, sizeof(char *));
if (comp->name_specific == NULL)
goto error;
- comp->name_specific[0] = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (comp->name_specific[0] == NULL)
- goto error;
-
- comp->name_specific[1] = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (comp->name_specific[1] == NULL)
- goto error;
-
comp->role_specific = CALLOC(comp->name_specific_length, sizeof(char *));
if (comp->role_specific == NULL)
goto error;
- comp->role_specific[0] = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (comp->role_specific[0] == NULL)
- goto error;
-
- comp->role_specific[1] = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (comp->role_specific[1] == NULL)
- goto error;
-
- vid_dec_name(comp->name);
- vid_dec_name_mpeg2(comp->name_specific[0]);
- vid_dec_name_avc(comp->name_specific[1]);
+ comp->name = OMX_VID_DEC_BASE_NAME;
+ comp->name_specific[0] = OMX_VID_DEC_MPEG2_NAME;
+ comp->name_specific[1] = OMX_VID_DEC_AVC_NAME;
- strcpy(comp->role_specific[0], OMX_VID_DEC_MPEG2_ROLE);
- strcpy(comp->role_specific[1], OMX_VID_DEC_AVC_ROLE);
+ comp->role_specific[0] = OMX_VID_DEC_MPEG2_ROLE;
+ comp->role_specific[1] = OMX_VID_DEC_AVC_ROLE;
comp->constructor = vid_dec_Constructor;
-
+
return OMX_ErrorNone;
error:
- FREE(comp->name);
-
- if (comp->name_specific) {
- FREE(comp->name_specific[0]);
- FREE(comp->name_specific[1]);
- FREE(comp->name_specific);
- }
-
- if (comp->role_specific) {
- FREE(comp->role_specific[0]);
- FREE(comp->role_specific[1]);
- FREE(comp->role_specific);
- }
+ FREE(comp->name_specific);
+ FREE(comp->role_specific);
return OMX_ErrorInsufficientResources;
}
static OMX_ERRORTYPE vid_dec_Constructor(OMX_COMPONENTTYPE *comp, OMX_STRING name)
{
- char tmpstr[OMX_MAX_STRINGNAME_SIZE];
vid_dec_PrivateType *priv;
omx_base_video_PortType *port;
struct pipe_screen *screen;
@@ -166,12 +119,10 @@ static OMX_ERRORTYPE vid_dec_Constructor(OMX_COMPONENTTYPE *comp, OMX_STRING nam
priv->profile = PIPE_VIDEO_PROFILE_UNKNOWN;
- vid_dec_name_mpeg2(tmpstr);
- if (!strcmp(name, tmpstr))
+ if (!strcmp(name, OMX_VID_DEC_MPEG2_NAME))
priv->profile = PIPE_VIDEO_PROFILE_MPEG2_MAIN;
- vid_dec_name_avc(tmpstr);
- if (!strcmp(name, tmpstr))
+ if (!strcmp(name, OMX_VID_DEC_AVC_NAME))
priv->profile = PIPE_VIDEO_PROFILE_MPEG4_AVC_HIGH;
priv->BufferMgmtCallback = vid_dec_FrameDecoded;
diff --git a/src/gallium/state_trackers/omx/vid_dec.h b/src/gallium/state_trackers/omx/vid_dec.h
index d6c35b56321..9acf872cfe2 100644
--- a/src/gallium/state_trackers/omx/vid_dec.h
+++ b/src/gallium/state_trackers/omx/vid_dec.h
@@ -50,12 +50,12 @@
#include "os/os_thread.h"
#include "util/u_double_list.h"
-#define OMX_VID_DEC_BASE_NAME "OMX.%s.video_decoder"
+#define OMX_VID_DEC_BASE_NAME "OMX.mesa.video_decoder"
-#define OMX_VID_DEC_MPEG2_NAME "OMX.%s.video_decoder.mpeg2"
+#define OMX_VID_DEC_MPEG2_NAME "OMX.mesa.video_decoder.mpeg2"
#define OMX_VID_DEC_MPEG2_ROLE "video_decoder.mpeg2"
-#define OMX_VID_DEC_AVC_NAME "OMX.%s.video_decoder.avc"
+#define OMX_VID_DEC_AVC_NAME "OMX.mesa.video_decoder.avc"
#define OMX_VID_DEC_AVC_ROLE "video_decoder.avc"
struct vl_vlc;
diff --git a/src/gallium/state_trackers/omx/vid_enc.c b/src/gallium/state_trackers/omx/vid_enc.c
index db4fc8f47e9..15eeb091225 100644
--- a/src/gallium/state_trackers/omx/vid_enc.c
+++ b/src/gallium/state_trackers/omx/vid_enc.c
@@ -96,16 +96,6 @@ static void vid_enc_BufferEncoded(OMX_COMPONENTTYPE *comp, OMX_BUFFERHEADERTYPE*
static void enc_ReleaseTasks(struct list_head *head);
-static void vid_enc_name(char str[OMX_MAX_STRINGNAME_SIZE])
-{
- snprintf(str, OMX_MAX_STRINGNAME_SIZE, OMX_VID_ENC_BASE_NAME, driver_descriptor.name);
-}
-
-static void vid_enc_name_avc(char str[OMX_MAX_STRINGNAME_SIZE])
-{
- snprintf(str, OMX_MAX_STRINGNAME_SIZE, OMX_VID_ENC_AVC_NAME, driver_descriptor.name);
-}
-
OMX_ERRORTYPE vid_enc_LoaderComponent(stLoaderComponentType *comp)
{
comp->componentVersion.s.nVersionMajor = 0;
@@ -115,11 +105,7 @@ OMX_ERRORTYPE vid_enc_LoaderComponent(stLoaderComponentType *comp)
comp->name_specific_length = 1;
comp->constructor = vid_enc_Constructor;
- comp->name = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (!comp->name)
- return OMX_ErrorInsufficientResources;
-
- vid_enc_name(comp->name);
+ comp->name = OMX_VID_ENC_BASE_NAME;
comp->name_specific = CALLOC(1, sizeof(char *));
if (!comp->name_specific)
@@ -129,28 +115,15 @@ OMX_ERRORTYPE vid_enc_LoaderComponent(stLoaderComponentType *comp)
if (!comp->role_specific)
goto error_arrays;
- comp->name_specific[0] = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (!comp->name_specific[0])
- goto error_specific;
-
- vid_enc_name_avc(comp->name_specific[0]);
+ comp->name_specific[0] = OMX_VID_ENC_AVC_NAME;
- comp->role_specific[0] = CALLOC(1, OMX_MAX_STRINGNAME_SIZE);
- if (!comp->role_specific[0])
- goto error_specific;
-
- strcpy(comp->role_specific[0], OMX_VID_ENC_AVC_ROLE);
+ comp->role_specific[0] = OMX_VID_ENC_AVC_ROLE;
return OMX_ErrorNone;
-error_specific:
- FREE(comp->name_specific[0]);
- FREE(comp->role_specific[0]);
-
error_arrays:
FREE(comp->role_specific);
FREE(comp->name_specific);
- FREE(comp->name);
return OMX_ErrorInsufficientResources;
}
diff --git a/src/gallium/state_trackers/omx/vid_enc.h b/src/gallium/state_trackers/omx/vid_enc.h
index 47e4b963d89..ca6ee910dc7 100644
--- a/src/gallium/state_trackers/omx/vid_enc.h
+++ b/src/gallium/state_trackers/omx/vid_enc.h
@@ -46,8 +46,8 @@
#include "vl/vl_defines.h"
#include "vl/vl_compositor.h"
-#define OMX_VID_ENC_BASE_NAME "OMX.%s.video_encoder"
-#define OMX_VID_ENC_AVC_NAME "OMX.%s.video_encoder.avc"
+#define OMX_VID_ENC_BASE_NAME "OMX.mesa.video_encoder"
+#define OMX_VID_ENC_AVC_NAME "OMX.mesa.video_encoder.avc"
#define OMX_VID_ENC_AVC_ROLE "video_encoder.avc"
#define OMX_VID_ENC_BITRATE_MIN 64000