[Gstreamer-openmax] [PATCH 05/10] add G_OMX_INIT_PARAM utility macro

Rob Clark rob at ti.com
Sun Mar 7 15:14:52 PST 2010


---
 omx/gstomx_aacdec.c        |    7 +------
 omx/gstomx_aacenc.c        |   22 ++++------------------
 omx/gstomx_adpcmdec.c      |    7 +------
 omx/gstomx_adpcmenc.c      |   12 ++----------
 omx/gstomx_amrnbdec.c      |    7 +------
 omx/gstomx_amrnbenc.c      |   12 ++----------
 omx/gstomx_amrwbdec.c      |    7 +------
 omx/gstomx_amrwbenc.c      |   12 ++----------
 omx/gstomx_audiosink.c     |    7 +------
 omx/gstomx_base_filter.c   |    7 ++-----
 omx/gstomx_base_sink.c     |    7 ++-----
 omx/gstomx_base_src.c      |    7 ++-----
 omx/gstomx_base_videodec.c |   18 +++---------------
 omx/gstomx_base_videoenc.c |   13 ++++---------
 omx/gstomx_g711dec.c       |    7 ++-----
 omx/gstomx_g711enc.c       |    7 ++-----
 omx/gstomx_g729enc.c       |    7 +------
 omx/gstomx_h263enc.c       |    7 +------
 omx/gstomx_h264enc.c       |    7 +------
 omx/gstomx_jpegenc.c       |   20 ++++----------------
 omx/gstomx_mp2dec.c        |    7 +------
 omx/gstomx_mp3dec.c        |    7 +------
 omx/gstomx_mpeg4enc.c      |    7 +------
 omx/gstomx_util.h          |    9 +++++++++
 omx/gstomx_videosink.c     |   17 ++++-------------
 omx/gstomx_volume.c        |    7 +------
 omx/gstomx_vorbisdec.c     |    7 +------
 27 files changed, 57 insertions(+), 204 deletions(-)

diff --git a/omx/gstomx_aacdec.c b/omx/gstomx_aacdec.c
index 1f22dd8..b8f0fb2 100644
--- a/omx/gstomx_aacdec.c
+++ b/omx/gstomx_aacdec.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxAacDec, gst_omx_aacdec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -143,10 +141,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_aacenc.c b/omx/gstomx_aacenc.c
index 565bc82..2eb0e96 100644
--- a/omx/gstomx_aacenc.c
+++ b/omx/gstomx_aacenc.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 enum
 {
     ARG_0,
@@ -303,10 +301,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->in_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
@@ -349,10 +344,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_AUDIO_PARAM_AACPROFILETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_AACPROFILETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         /* Output port configuration. */
         {
@@ -378,10 +370,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->in_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
@@ -393,10 +382,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_AUDIO_PARAM_AACPROFILETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_AACPROFILETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioAac, &param);
diff --git a/omx/gstomx_adpcmdec.c b/omx/gstomx_adpcmdec.c
index 12ee81f..63151d9 100644
--- a/omx/gstomx_adpcmdec.c
+++ b/omx/gstomx_adpcmdec.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxAdpcmDec, gst_omx_adpcmdec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -125,10 +123,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_adpcmenc.c b/omx/gstomx_adpcmenc.c
index fea6bf4..fabb4bd 100644
--- a/omx/gstomx_adpcmenc.c
+++ b/omx/gstomx_adpcmenc.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxAdpcmEnc, gst_omx_adpcmenc, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -116,10 +114,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_ADPCMTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_ADPCMTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioAdpcm, &param);
@@ -180,10 +175,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->in_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_amrnbdec.c b/omx/gstomx_amrnbdec.c
index f32b15f..6d0cbaf 100644
--- a/omx/gstomx_amrnbdec.c
+++ b/omx/gstomx_amrnbdec.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxAmrNbDec, gst_omx_amrnbdec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -116,10 +114,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_amrnbenc.c b/omx/gstomx_amrnbenc.c
index cc3486f..5e1ccff 100644
--- a/omx/gstomx_amrnbenc.c
+++ b/omx/gstomx_amrnbenc.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 enum
 {
     ARG_0,
@@ -181,10 +179,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_AMRTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_AMRTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioAmr, &param);
@@ -231,10 +226,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->in_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_amrwbdec.c b/omx/gstomx_amrwbdec.c
index 20dddcb..cb41789 100644
--- a/omx/gstomx_amrwbdec.c
+++ b/omx/gstomx_amrwbdec.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxAmrWbDec, gst_omx_amrwbdec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -116,10 +114,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_amrwbenc.c b/omx/gstomx_amrwbenc.c
index 3d95272..352b93f 100644
--- a/omx/gstomx_amrwbenc.c
+++ b/omx/gstomx_amrwbenc.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 enum
 {
     ARG_0,
@@ -181,10 +179,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_AMRTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_AMRTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioAmr, &param);
@@ -231,10 +226,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->in_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_audiosink.c b/omx/gstomx_audiosink.c
index 6c912f0..5f63d4c 100644
--- a/omx/gstomx_audiosink.c
+++ b/omx/gstomx_audiosink.c
@@ -22,8 +22,6 @@
 #include "gstomx_audiosink.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxAudioSink, gst_omx_audiosink, GstOmxBaseSink, GST_OMX_BASE_SINK_TYPE);
 
 static GstCaps *
@@ -109,10 +107,7 @@ setcaps (GstBaseSink *gst_sink,
         {
             OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-            memset (&param, 0, sizeof (param));
-            param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-            param.nVersion.s.nVersionMajor = 1;
-            param.nVersion.s.nVersionMinor = 1;
+            G_OMX_INIT_PARAM (param);
 
             param.nPortIndex = self->in_port->port_index;
             OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_base_filter.c b/omx/gstomx_base_filter.c
index 70bf617..487e4ee 100644
--- a/omx/gstomx_base_filter.c
+++ b/omx/gstomx_base_filter.c
@@ -23,7 +23,7 @@
 #include "gstomx.h"
 #include "gstomx_interface.h"
 
-#include <string.h> /* for memset, memcpy */
+#include <string.h> /* for memcpy */
 
 enum
 {
@@ -55,10 +55,7 @@ setup_ports (GstOmxBaseFilter *self)
 
     core = self->gomx;
 
-    memset (&param, 0, sizeof (param));
-    param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-    param.nVersion.s.nVersionMajor = 1;
-    param.nVersion.s.nVersionMinor = 1;
+    G_OMX_INIT_PARAM (param);
 
     /* Input port configuration. */
 
diff --git a/omx/gstomx_base_sink.c b/omx/gstomx_base_sink.c
index 5ea7c31..bc7e26b 100644
--- a/omx/gstomx_base_sink.c
+++ b/omx/gstomx_base_sink.c
@@ -26,7 +26,7 @@
 #include "gstomx.h"
 #include "gstomx_interface.h"
 
-#include <string.h> /* for memset, memcpy */
+#include <string.h> /* for memcpy */
 
 static gboolean share_input_buffer;
 
@@ -43,10 +43,7 @@ setup_ports (GstOmxBaseSink *self)
 
     core = self->gomx;
 
-    memset (&param, 0, sizeof (param));
-    param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-    param.nVersion.s.nVersionMajor = 1;
-    param.nVersion.s.nVersionMinor = 1;
+    G_OMX_INIT_PARAM (param);
 
     /* Input port configuration. */
 
diff --git a/omx/gstomx_base_src.c b/omx/gstomx_base_src.c
index 54f9032..ba6ad8e 100644
--- a/omx/gstomx_base_src.c
+++ b/omx/gstomx_base_src.c
@@ -22,7 +22,7 @@
 #include "gstomx_base_src.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset, memcpy */
+#include <string.h> /* for memcpy */
 
 GSTOMX_BOILERPLATE (GstOmxBaseSrc, gst_omx_base_src, GstBaseSrc, GST_TYPE_BASE_SRC);
 
@@ -34,10 +34,7 @@ setup_ports (GstOmxBaseSrc *self)
 
     core = self->gomx;
 
-    memset (&param, 0, sizeof (param));
-    param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-    param.nVersion.s.nVersionMajor = 1;
-    param.nVersion.s.nVersionMinor = 1;
+    G_OMX_INIT_PARAM (param);
 
     /* Input port configuration. */
 
diff --git a/omx/gstomx_base_videodec.c b/omx/gstomx_base_videodec.c
index 5c6d1e1..56b79d1 100644
--- a/omx/gstomx_base_videodec.c
+++ b/omx/gstomx_base_videodec.c
@@ -22,8 +22,6 @@
 #include "gstomx_base_videodec.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxBaseVideoDec, gst_omx_base_videodec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -110,11 +108,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamPortDefinition, &param);
@@ -197,10 +191,7 @@ sink_setcaps (GstPad *pad,
         }
     }
 
-    memset (&param, 0, sizeof (param));
-    param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-    param.nVersion.s.nVersionMajor = 1;
-    param.nVersion.s.nVersionMinor = 1;
+    G_OMX_INIT_PARAM (param);
 
     {
         const GValue *codec_data;
@@ -243,10 +234,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         /* Input port configuration. */
         {
diff --git a/omx/gstomx_base_videoenc.c b/omx/gstomx_base_videoenc.c
index d243fbd..f469494 100644
--- a/omx/gstomx_base_videoenc.c
+++ b/omx/gstomx_base_videoenc.c
@@ -22,7 +22,7 @@
 #include "gstomx_base_videoenc.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset, strcmp */
+#include <string.h> /* for strcmp */
 
 enum
 {
@@ -215,10 +215,8 @@ sink_setcaps (GstPad *pad,
 
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+
+        G_OMX_INIT_PARAM (param);
 
         /* Input port configuration. */
         {
@@ -257,10 +255,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         /* Output port configuration. */
         {
diff --git a/omx/gstomx_g711dec.c b/omx/gstomx_g711dec.c
index bc2fb18..623101e 100644
--- a/omx/gstomx_g711dec.c
+++ b/omx/gstomx_g711dec.c
@@ -23,7 +23,7 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset, strcmp */
+#include <string.h> /* for strcmp */
 
 GSTOMX_BOILERPLATE (GstOmxG711Dec, gst_omx_g711dec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
@@ -137,10 +137,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->in_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_g711enc.c b/omx/gstomx_g711enc.c
index ba8d297..003058e 100644
--- a/omx/gstomx_g711enc.c
+++ b/omx/gstomx_g711enc.c
@@ -23,7 +23,7 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset, strcmp */
+#include <string.h> /* for strcmp */
 
 GSTOMX_BOILERPLATE (GstOmxG711Enc, gst_omx_g711enc, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
@@ -147,10 +147,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_g729enc.c b/omx/gstomx_g729enc.c
index 67f9b38..89d58db 100644
--- a/omx/gstomx_g729enc.c
+++ b/omx/gstomx_g729enc.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 #define DEFAULT_DTX TRUE
 
 enum
@@ -225,10 +223,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_AUDIO_PARAM_G729TYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_G729TYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (gomx->omx_handle, OMX_IndexParamAudioG729, &param);
diff --git a/omx/gstomx_h263enc.c b/omx/gstomx_h263enc.c
index 2d2a1a0..9caaff7 100644
--- a/omx/gstomx_h263enc.c
+++ b/omx/gstomx_h263enc.c
@@ -22,8 +22,6 @@
 #include "gstomx_h263enc.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxH263Enc, gst_omx_h263enc, GstOmxBaseVideoEnc, GST_OMX_BASE_VIDEOENC_TYPE);
 
 static GstCaps *
@@ -92,10 +90,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base_filter->out_port->port_index;
         OMX_GetParameter (core->omx_handle, OMX_IndexParamPortDefinition, &param);
diff --git a/omx/gstomx_h264enc.c b/omx/gstomx_h264enc.c
index 7d2c2b6..efc4092 100644
--- a/omx/gstomx_h264enc.c
+++ b/omx/gstomx_h264enc.c
@@ -22,8 +22,6 @@
 #include "gstomx_h264enc.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxH264Enc, gst_omx_h264enc, GstOmxBaseVideoEnc, GST_OMX_BASE_VIDEOENC_TYPE);
 
 static GstCaps *
@@ -91,10 +89,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base_filter->out_port->port_index;
         OMX_GetParameter (core->omx_handle, OMX_IndexParamPortDefinition, &param);
diff --git a/omx/gstomx_jpegenc.c b/omx/gstomx_jpegenc.c
index 63ff8fe..e34c3fc 100644
--- a/omx/gstomx_jpegenc.c
+++ b/omx/gstomx_jpegenc.c
@@ -206,10 +206,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamPortDefinition, &param);
@@ -287,10 +284,7 @@ sink_setcaps (GstPad *pad,
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         /* Input port configuration. */
         {
@@ -322,10 +316,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         /* Output port configuration. */
         {
@@ -341,10 +332,7 @@ omx_setup (GstOmxBaseFilter *omx_base)
     {
         OMX_IMAGE_PARAM_QFACTORTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_IMAGE_PARAM_QFACTORTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nQFactor = self->quality;
         param.nPortIndex = omx_base->out_port->port_index;
diff --git a/omx/gstomx_mp2dec.c b/omx/gstomx_mp2dec.c
index 6e78e5f..564e14c 100644
--- a/omx/gstomx_mp2dec.c
+++ b/omx/gstomx_mp2dec.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxMp2Dec, gst_omx_mp2dec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -119,10 +117,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_mp3dec.c b/omx/gstomx_mp3dec.c
index 3824a9d..a766689 100644
--- a/omx/gstomx_mp3dec.c
+++ b/omx/gstomx_mp3dec.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxMp3Dec, gst_omx_mp3dec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -119,10 +117,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_mpeg4enc.c b/omx/gstomx_mpeg4enc.c
index f365639..3f97fb0 100644
--- a/omx/gstomx_mpeg4enc.c
+++ b/omx/gstomx_mpeg4enc.c
@@ -22,8 +22,6 @@
 #include "gstomx_mpeg4enc.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxMpeg4Enc, gst_omx_mpeg4enc, GstOmxBaseVideoEnc, GST_OMX_BASE_VIDEOENC_TYPE);
 
 static GstCaps *
@@ -93,10 +91,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_PARAM_PORTDEFINITIONTYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base_filter->out_port->port_index;
         OMX_GetParameter (core->omx_handle, OMX_IndexParamPortDefinition, &param);
diff --git a/omx/gstomx_util.h b/omx/gstomx_util.h
index 404df8a..87a1f3f 100644
--- a/omx/gstomx_util.h
+++ b/omx/gstomx_util.h
@@ -195,4 +195,13 @@ GType type_as_function ## _get_type (void)                                    \
   GSTOMX_BOILERPLATE_FULL (type, type_as_function, parent_type, parent_type_macro, \
       __GST_DO_NOTHING)
 
+#include <string.h>  /* for memset */
+#define G_OMX_INIT_PARAM(param) G_STMT_START {                                \
+        memset (&(param), 0, sizeof ((param)));                               \
+        (param).nSize = sizeof (param);                                       \
+        (param).nVersion.s.nVersionMajor = 1;                                 \
+        (param).nVersion.s.nVersionMinor = 1;                                 \
+    } G_STMT_END
+
+
 #endif /* GSTOMX_UTIL_H */
diff --git a/omx/gstomx_videosink.c b/omx/gstomx_videosink.c
index 7c5849b..4cfc300 100644
--- a/omx/gstomx_videosink.c
+++ b/omx/gstomx_videosink.c
@@ -23,7 +23,7 @@
 #include "gstomx_base_sink.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset, strcmp */
+#include <string.h> /* for strcmp */
 
 GSTOMX_BOILERPLATE (GstOmxVideoSink, gst_omx_videosink, GstOmxBaseSink, GST_OMX_BASE_SINK_TYPE);
 
@@ -161,10 +161,7 @@ setcaps (GstBaseSink *gst_sink,
         {
             OMX_PARAM_PORTDEFINITIONTYPE param;
 
-            memset (&param, 0, sizeof (param));
-            param.nSize = sizeof (OMX_PARAM_PORTDEFINITIONTYPE);
-            param.nVersion.s.nVersionMajor = 1;
-            param.nVersion.s.nVersionMinor = 1;
+            G_OMX_INIT_PARAM (param);
 
             param.nPortIndex = omx_base->in_port->port_index;
             OMX_GetParameter (gomx->omx_handle, OMX_IndexParamPortDefinition, &param);
@@ -200,10 +197,7 @@ setcaps (GstBaseSink *gst_sink,
         {
             OMX_CONFIG_ROTATIONTYPE config;
 
-            memset (&config, 0, sizeof (config));
-            config.nSize = sizeof (OMX_CONFIG_ROTATIONTYPE);
-            config.nVersion.s.nVersionMajor = 1;
-            config.nVersion.s.nVersionMinor = 1;
+            G_OMX_INIT_PARAM (config);
 
             config.nPortIndex = omx_base->in_port->port_index;
             OMX_GetConfig (gomx->omx_handle, OMX_IndexConfigCommonScale, &config);
@@ -216,10 +210,7 @@ setcaps (GstBaseSink *gst_sink,
         {
             OMX_CONFIG_SCALEFACTORTYPE config;
 
-            memset (&config, 0, sizeof (config));
-            config.nSize = sizeof (OMX_CONFIG_SCALEFACTORTYPE);
-            config.nVersion.s.nVersionMajor = 1;
-            config.nVersion.s.nVersionMinor = 1;
+            G_OMX_INIT_PARAM (config);
 
             config.nPortIndex = omx_base->in_port->port_index;
             OMX_GetConfig (gomx->omx_handle, OMX_IndexConfigCommonScale, &config);
diff --git a/omx/gstomx_volume.c b/omx/gstomx_volume.c
index 91e116e..61c7f79 100644
--- a/omx/gstomx_volume.c
+++ b/omx/gstomx_volume.c
@@ -24,8 +24,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxVolume, gst_omx_volume, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -121,10 +119,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
diff --git a/omx/gstomx_vorbisdec.c b/omx/gstomx_vorbisdec.c
index aad896a..fa532df 100644
--- a/omx/gstomx_vorbisdec.c
+++ b/omx/gstomx_vorbisdec.c
@@ -23,8 +23,6 @@
 #include "gstomx_base_filter.h"
 #include "gstomx.h"
 
-#include <string.h> /* for memset */
-
 GSTOMX_BOILERPLATE (GstOmxVorbisDec, gst_omx_vorbisdec, GstOmxBaseFilter, GST_OMX_BASE_FILTER_TYPE);
 
 static GstCaps *
@@ -114,10 +112,7 @@ settings_changed_cb (GOmxCore *core)
     {
         OMX_AUDIO_PARAM_PCMMODETYPE param;
 
-        memset (&param, 0, sizeof (param));
-        param.nSize = sizeof (OMX_AUDIO_PARAM_PCMMODETYPE);
-        param.nVersion.s.nVersionMajor = 1;
-        param.nVersion.s.nVersionMinor = 1;
+        G_OMX_INIT_PARAM (param);
 
         param.nPortIndex = omx_base->out_port->port_index;
         OMX_GetParameter (omx_base->gomx->omx_handle, OMX_IndexParamAudioPcm, &param);
-- 
1.6.3.2





More information about the Gstreamer-openmax mailing list