diff --git a/sys/niimaq/gstniimaq.c b/sys/niimaq/gstniimaq.c index 4c6cb7c..8ef8a28 100644 --- a/sys/niimaq/gstniimaq.c +++ b/sys/niimaq/gstniimaq.c @@ -142,7 +142,6 @@ gst_niimaqsrc_frame_start_callback (SESSION_ID sid, IMG_ERR err, IMG_SIGNAL_TYPE signal_type, uInt32 signal_identifier, void *userdata) { GstNiImaqSrc *src = GST_NIIMAQSRC (userdata); - static guint32 index = 0; GstNiImaqSrcTimeEntry *time_entry; time_entry = g_new (GstNiImaqSrcTimeEntry, 1); @@ -150,11 +149,11 @@ gst_niimaqsrc_frame_start_callback (SESSION_ID sid, IMG_ERR err, /* get clock time */ time_entry->clock_time = gst_clock_get_time (gst_element_get_clock (GST_ELEMENT (src))); - time_entry->frame_index = index; + time_entry->frame_index = src->imaqFrameStartNum; g_async_queue_push (src->time_queue, time_entry); - index++; + src->imaqFrameStartNum++; /* return 1 to rearm the callback */ return 1; @@ -443,6 +442,7 @@ gst_niimaqsrc_reset (GstNiImaqSrc * src) /* initialize member variables */ src->cumbufnum = 0; + src->imaqFrameStartNum = 0; src->n_dropped_frames = 0; src->sid = 0; src->iid = 0; diff --git a/sys/niimaq/gstniimaq.h b/sys/niimaq/gstniimaq.h index 26a4915..3835985 100644 --- a/sys/niimaq/gstniimaq.h +++ b/sys/niimaq/gstniimaq.h @@ -62,6 +62,7 @@ struct _GstNiImaqSrc { gint framesize; int rowpixels; + guint64 imaqFrameStartNum; uInt32 cumbufnum; gint64 n_dropped_frames;