Re: [RFC PATCH 4/5] v4l2: add a motion detection event.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu 18 July 2013 02:14:28 Laurent Pinchart wrote:
> Hi Hans,
> 
> Thanks for the patch.
> 
> On Friday 28 June 2013 14:27:33 Hans Verkuil wrote:
> > From: Hans Verkuil <hans.verkuil@xxxxxxxxx>
> > 
> > Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
> > ---
> >  include/uapi/linux/videodev2.h | 17 +++++++++++++++++
> >  1 file changed, 17 insertions(+)
> > 
> > diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
> > index 5cbe815..f926209 100644
> > --- a/include/uapi/linux/videodev2.h
> > +++ b/include/uapi/linux/videodev2.h
> > @@ -1721,6 +1721,7 @@ struct v4l2_streamparm {
> >  #define V4L2_EVENT_EOS				2
> >  #define V4L2_EVENT_CTRL				3
> >  #define V4L2_EVENT_FRAME_SYNC			4
> > +#define V4L2_EVENT_MOTION_DET			5
> >  #define V4L2_EVENT_PRIVATE_START		0x08000000
> > 
> >  /* Payload for V4L2_EVENT_VSYNC */
> > @@ -1752,12 +1753,28 @@ struct v4l2_event_frame_sync {
> >  	__u32 frame_sequence;
> >  };
> > 
> > +#define V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ	(1 << 0)
> > +
> > +/**
> > + * struct v4l2_event_motion_det - motion detection event
> > + * @flags:             if V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ is set, then the
> > + *                     frame_sequence field is valid.
> > + * @frame_sequence:    the frame sequence number associated with this
> > event.
> > + * @region_mask:       which regions detected motion.
> > + */
> > +struct v4l2_event_motion_det {
> > +	__u32 flags;
> > +	__u32 frame_sequence;
> > +	__u32 region_mask;
> 
> Will a 32-bit region mask be extensible enough ? What about hardware that 
> could report motion detection as a (possibly low resolution) binary image ?

I'm not sure whether we should be bothered about this. The struct can easily
be extended later.

Also, in your particular example I would actually expect that that would either
need support for 'large payload events', or you would call G_MATRIX to get that
image.

> > +};
> > +
> >  struct v4l2_event {
> >  	__u32				type;
> >  	union {
> >  		struct v4l2_event_vsync		vsync;
> >  		struct v4l2_event_ctrl		ctrl;
> >  		struct v4l2_event_frame_sync	frame_sync;
> > +		struct v4l2_event_motion_det	motion_det;
> >  		__u8				data[64];
> >  	} u;
> >  	__u32				pending;
> 

Regards,

	Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux