[Gstreamer-openmax] [PATCH 1/2] fixes for building for 64bit host

Felipe Contreras felipe.contreras at gmail.com
Fri Feb 26 03:47:45 PST 2010


On Thu, Feb 25, 2010 at 3:55 AM, Rob Clark <rob at ti.com> wrote:
> ---
>  omx/gstomx_base_filter.c |   12 ++++++------
>  omx/gstomx_base_sink.c   |    2 +-
>  2 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/omx/gstomx_base_filter.c b/omx/gstomx_base_filter.c
> index 287f50c..b0353cb 100644
> --- a/omx/gstomx_base_filter.c
> +++ b/omx/gstomx_base_filter.c
> @@ -40,11 +40,11 @@ log_buffer (GstOmxBaseFilter *self,
>             OMX_BUFFERHEADERTYPE *omx_buffer)
>  {
>     GST_DEBUG_OBJECT (self, "omx_buffer: "
> -                      "size=%" G_GUINT32_FORMAT ", "
> -                      "len=%" G_GUINT32_FORMAT ", "
> -                      "flags=%" G_GUINT32_FORMAT ", "
> -                      "offset=%" G_GUINT32_FORMAT ", "
> -                      "timestamp=%" G_GUINT64_FORMAT,
> +                      "size=%lu, "
> +                      "len=%lu, "
> +                      "flags=%lu, "
> +                      "offset=%lu, "
> +                      "timestamp=%lld",
>                       omx_buffer->nAllocLen, omx_buffer->nFilledLen, omx_buffer->nFlags,
>                       omx_buffer->nOffset, omx_buffer->nTimeStamp);
>  }

Interesting, so G_GUINT32_FORMAT doesn't work with OMX_U32.

Probably because of this:
/** OMX_U32 is a 32 bit unsigned quantity that is 32 bit word aligned */
typedef unsigned long OMX_U32;

Can you do a sizeof(OMX_U32) in your 64-bit system? I guess it's 64
bits, and if so, that's a bug in the header files and I wonder if
communication between  different omx components (64bit client vs 32bit
implementation) might be screwed.

-- 
Felipe Contreras




More information about the Gstreamer-openmax mailing list