niimaqsrc: fix timestamp error when video is restarted
This commit is contained in:
parent
45bc0f24aa
commit
ca37f0078b
@ -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)
|
IMG_SIGNAL_TYPE signal_type, uInt32 signal_identifier, void *userdata)
|
||||||
{
|
{
|
||||||
GstNiImaqSrc *src = GST_NIIMAQSRC (userdata);
|
GstNiImaqSrc *src = GST_NIIMAQSRC (userdata);
|
||||||
static guint32 index = 0;
|
|
||||||
GstNiImaqSrcTimeEntry *time_entry;
|
GstNiImaqSrcTimeEntry *time_entry;
|
||||||
|
|
||||||
time_entry = g_new (GstNiImaqSrcTimeEntry, 1);
|
time_entry = g_new (GstNiImaqSrcTimeEntry, 1);
|
||||||
@ -150,11 +149,11 @@ gst_niimaqsrc_frame_start_callback (SESSION_ID sid, IMG_ERR err,
|
|||||||
/* get clock time */
|
/* get clock time */
|
||||||
time_entry->clock_time =
|
time_entry->clock_time =
|
||||||
gst_clock_get_time (gst_element_get_clock (GST_ELEMENT (src)));
|
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);
|
g_async_queue_push (src->time_queue, time_entry);
|
||||||
|
|
||||||
index++;
|
src->imaqFrameStartNum++;
|
||||||
|
|
||||||
/* return 1 to rearm the callback */
|
/* return 1 to rearm the callback */
|
||||||
return 1;
|
return 1;
|
||||||
@ -443,6 +442,7 @@ gst_niimaqsrc_reset (GstNiImaqSrc * src)
|
|||||||
|
|
||||||
/* initialize member variables */
|
/* initialize member variables */
|
||||||
src->cumbufnum = 0;
|
src->cumbufnum = 0;
|
||||||
|
src->imaqFrameStartNum = 0;
|
||||||
src->n_dropped_frames = 0;
|
src->n_dropped_frames = 0;
|
||||||
src->sid = 0;
|
src->sid = 0;
|
||||||
src->iid = 0;
|
src->iid = 0;
|
||||||
|
|||||||
@ -62,6 +62,7 @@ struct _GstNiImaqSrc {
|
|||||||
gint framesize;
|
gint framesize;
|
||||||
int rowpixels;
|
int rowpixels;
|
||||||
|
|
||||||
|
guint64 imaqFrameStartNum;
|
||||||
uInt32 cumbufnum;
|
uInt32 cumbufnum;
|
||||||
gint64 n_dropped_frames;
|
gint64 n_dropped_frames;
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user