summaryrefslogtreecommitdiffstats
path: root/sys/v4l2/gstv4l2src.h
diff options
context:
space:
mode:
authorRonald S. Bultje <rbultje@ronald.bitfreak.net>2003-05-02 21:16:56 +0000
committerRonald S. Bultje <rbultje@ronald.bitfreak.net>2003-05-02 21:16:56 +0000
commitcbd4b72d7c42dc612ddcbdcf43800884c1b68e9d (patch)
tree276ffe0c3d32e70818778480c6f9ea9e14f48d15 /sys/v4l2/gstv4l2src.h
parent98cfd56ea3b21a7a48caf92ad14cf7a5ea719e9d (diff)
Implement element synchronization (#108301)
Original commit message from CVS: Implement element synchronization (#108301)
Diffstat (limited to 'sys/v4l2/gstv4l2src.h')
-rw-r--r--sys/v4l2/gstv4l2src.h25
1 files changed, 24 insertions, 1 deletions
diff --git a/sys/v4l2/gstv4l2src.h b/sys/v4l2/gstv4l2src.h
index 401161c7..ae457e59 100644
--- a/sys/v4l2/gstv4l2src.h
+++ b/sys/v4l2/gstv4l2src.h
@@ -51,7 +51,24 @@ struct _GstV4l2Src {
struct v4l2_buffer bufsettings;
struct v4l2_requestbuffers breq;
struct v4l2_format format;
- guint64 first_timestamp;
+
+ /* A/V sync... frame counter and internal cache */
+ gulong handled;
+ gint last_frame;
+ gint need_writes;
+ gulong last_seq;
+
+ /* clock */
+ GstClock *clock;
+
+ /* time to substract from clock time to get back to timestamp */
+ GstClockTime substract_time;
+
+ /* how often are we going to use each frame? */
+ gint *use_num_times;
+
+ /* how are we going to push buffers? */
+ gboolean use_fixed_fps;
/* bufferpool for the buffers we're gonna use */
GstBufferPool *bufferpool;
@@ -64,6 +81,12 @@ struct _GstV4l2Src {
struct _GstV4l2SrcClass {
GstV4l2ElementClass parent_class;
+
+ void (*frame_capture) (GObject *object);
+ void (*frame_drop) (GObject *object);
+ void (*frame_insert) (GObject *object);
+ void (*frame_lost) (GObject *object,
+ gint num_lost);
};