From: Wim Taymans Date: Mon, 8 Jul 2002 22:18:49 +0000 (+0000) Subject: Fix bufferpool compile issues. please test.. X-Git-Tag: CAPS~279 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=496fd7942c3f45400a28af4b45a286667349ec6c;p=platform%2Fupstream%2Fgst-plugins-base.git Fix bufferpool compile issues. please test.. Original commit message from CVS: Fix bufferpool compile issues. please test.. --- diff --git a/sys/v4l/gstv4lmjpegsrc.c b/sys/v4l/gstv4lmjpegsrc.c index f6fa4c5..f935282 100644 --- a/sys/v4l/gstv4lmjpegsrc.c +++ b/sys/v4l/gstv4lmjpegsrc.c @@ -76,11 +76,15 @@ static GstElementStateReturn gst_v4lmjpegsrc_change_state (GstElement *eleme /* bufferpool functions */ static GstBuffer* gst_v4lmjpegsrc_buffer_new (GstBufferPool *pool, - gint64 location, - gint size, + guint64 location, + guint size, + gpointer user_data); +static GstBuffer* gst_v4lmjpegsrc_buffer_copy (GstBufferPool *pool, + const GstBuffer *srcbuf, + gpointer user_data); +static void gst_v4lmjpegsrc_buffer_free (GstBufferPool *pool, + GstBuffer *buf, gpointer user_data); -static GstBuffer* gst_v4lmjpegsrc_buffer_copy (GstBuffer *srcbuf); -static void gst_v4lmjpegsrc_buffer_free (GstBuffer *buf); static GstCaps *capslist = NULL; @@ -179,11 +183,13 @@ gst_v4lmjpegsrc_init (GstV4lMjpegSrc *v4lmjpegsrc) gst_pad_set_get_function (v4lmjpegsrc->srcpad, gst_v4lmjpegsrc_get); gst_pad_set_connect_function (v4lmjpegsrc->srcpad, gst_v4lmjpegsrc_srcconnect); - v4lmjpegsrc->bufferpool = gst_buffer_pool_new(); - gst_buffer_pool_set_buffer_new_function(v4lmjpegsrc->bufferpool, gst_v4lmjpegsrc_buffer_new); - gst_buffer_pool_set_buffer_copy_function(v4lmjpegsrc->bufferpool, gst_v4lmjpegsrc_buffer_copy); - gst_buffer_pool_set_buffer_free_function(v4lmjpegsrc->bufferpool, gst_v4lmjpegsrc_buffer_free); - gst_buffer_pool_set_user_data(v4lmjpegsrc->bufferpool, v4lmjpegsrc); + v4lmjpegsrc->bufferpool = gst_buffer_pool_new( + NULL, + NULL, + gst_v4lmjpegsrc_buffer_new, + gst_v4lmjpegsrc_buffer_copy, + gst_v4lmjpegsrc_buffer_free, + v4lmjpegsrc); v4lmjpegsrc->frame_width = 0; v4lmjpegsrc->frame_height = 0; @@ -242,7 +248,7 @@ gst_v4lmjpegsrc_get (GstPad *pad) if (!gst_v4lmjpegsrc_grab_frame(v4lmjpegsrc, &num, &(GST_BUFFER_SIZE(buf)))) return NULL; GST_BUFFER_DATA(buf) = gst_v4lmjpegsrc_get_buffer(v4lmjpegsrc, num); - buf->timestamp = v4lmjpegsrc->bsync.timestamp.tv_sec * 1000000000 + + GST_BUFFER_TIMESTAMP (buf) = v4lmjpegsrc->bsync.timestamp.tv_sec * 1000000000 + v4lmjpegsrc->bsync.timestamp.tv_usec * 1000; return buf; @@ -454,15 +460,14 @@ gst_v4lmjpegsrc_change_state (GstElement *element) static GstBuffer* gst_v4lmjpegsrc_buffer_new (GstBufferPool *pool, - gint64 location, - gint size, + guint64 location, + guint size, gpointer user_data) { GstBuffer *buffer; buffer = gst_buffer_new(); if (!buffer) return NULL; - buffer->pool_private = user_data; /* TODO: add interlacing info to buffer as metadata */ @@ -471,7 +476,7 @@ gst_v4lmjpegsrc_buffer_new (GstBufferPool *pool, static GstBuffer* -gst_v4lmjpegsrc_buffer_copy (GstBuffer *srcbuf) +gst_v4lmjpegsrc_buffer_copy (GstBufferPool *pool, const GstBuffer *srcbuf, gpointer user_data) { GstBuffer *buffer; @@ -488,9 +493,9 @@ gst_v4lmjpegsrc_buffer_copy (GstBuffer *srcbuf) static void -gst_v4lmjpegsrc_buffer_free (GstBuffer *buf) +gst_v4lmjpegsrc_buffer_free (GstBufferPool *pool, GstBuffer *buf, gpointer user_data) { - GstV4lMjpegSrc *v4lmjpegsrc = buf->pool_private; + GstV4lMjpegSrc *v4lmjpegsrc = GST_V4LMJPEGSRC (user_data); int n; for (n=0;nbreq.count;n++) diff --git a/sys/v4l/gstv4lsrc.c b/sys/v4l/gstv4lsrc.c index 5cbc007..d3fde6f 100644 --- a/sys/v4l/gstv4lsrc.c +++ b/sys/v4l/gstv4lsrc.c @@ -73,11 +73,15 @@ static GstElementStateReturn gst_v4lsrc_change_state (GstElement *element); /* bufferpool functions */ static GstBuffer* gst_v4lsrc_buffer_new (GstBufferPool *pool, - gint64 location, - gint size, + guint64 offset, + guint size, gpointer user_data); -static GstBuffer* gst_v4lsrc_buffer_copy (GstBuffer *srcbuf); -static void gst_v4lsrc_buffer_free (GstBuffer *buf); +static GstBuffer* gst_v4lsrc_buffer_copy (GstBufferPool *pool, + const GstBuffer *srcbuf, + gpointer user_data); +static void gst_v4lsrc_buffer_free (GstBufferPool *pool, + GstBuffer *buf, + gpointer user_data); static GstCaps *capslist = NULL; @@ -157,11 +161,13 @@ gst_v4lsrc_init (GstV4lSrc *v4lsrc) gst_pad_set_get_function (v4lsrc->srcpad, gst_v4lsrc_get); gst_pad_set_connect_function (v4lsrc->srcpad, gst_v4lsrc_srcconnect); - v4lsrc->bufferpool = gst_buffer_pool_new(); - gst_buffer_pool_set_buffer_new_function(v4lsrc->bufferpool, gst_v4lsrc_buffer_new); - gst_buffer_pool_set_buffer_copy_function(v4lsrc->bufferpool, gst_v4lsrc_buffer_copy); - gst_buffer_pool_set_buffer_free_function(v4lsrc->bufferpool, gst_v4lsrc_buffer_free); - gst_buffer_pool_set_user_data(v4lsrc->bufferpool, v4lsrc); + v4lsrc->bufferpool = gst_buffer_pool_new( + NULL, + NULL, + gst_v4lsrc_buffer_new, + gst_v4lsrc_buffer_copy, + gst_v4lsrc_buffer_free, + v4lsrc); v4lsrc->palette = 0; /* means 'any' - user can specify a specific palette */ v4lsrc->width = 160; @@ -378,7 +384,7 @@ gst_v4lsrc_get (GstPad *pad) g_print ("%lu %lu\n", v4lsrc->timestamp_soft_sync[num].tv_sec, v4lsrc->timestamp_soft_sync[num].tv_usec); - buf->timestamp = v4lsrc->timestamp_soft_sync[num].tv_sec * 1000000 + + GST_BUFFER_TIMESTAMP (buf) = v4lsrc->timestamp_soft_sync[num].tv_sec * 1000000 + v4lsrc->timestamp_soft_sync[num].tv_usec; return buf; @@ -583,16 +589,14 @@ gst_v4lsrc_change_state (GstElement *element) static GstBuffer* gst_v4lsrc_buffer_new (GstBufferPool *pool, - gint64 location, - gint size, + guint64 offset, + guint size, gpointer user_data) { GstBuffer *buffer; buffer = gst_buffer_new(); if (!buffer) return NULL; - buffer->pool_private = user_data; - /* TODO: add interlacing info to buffer as metadata (height>288 or 240 = topfieldfirst, else noninterlaced) */ return buffer; @@ -600,7 +604,7 @@ gst_v4lsrc_buffer_new (GstBufferPool *pool, static GstBuffer* -gst_v4lsrc_buffer_copy (GstBuffer *srcbuf) +gst_v4lsrc_buffer_copy (GstBufferPool *pool, const GstBuffer *srcbuf, gpointer user_data) { GstBuffer *buffer; @@ -617,9 +621,9 @@ gst_v4lsrc_buffer_copy (GstBuffer *srcbuf) static void -gst_v4lsrc_buffer_free (GstBuffer *buf) +gst_v4lsrc_buffer_free (GstBufferPool *pool, GstBuffer *buf, gpointer user_data) { - GstV4lSrc *v4lsrc = buf->pool_private; + GstV4lSrc *v4lsrc = GST_V4LSRC (user_data); int n; for (n=0;nmbuf.frames;n++)