diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2011-03-28 18:28:28 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-05-20 16:55:31 +0200 |
commit | aee5c2f1fc9c7cd2502ff14f818fcedef666f038 (patch) | |
tree | f1eb50bc8558350d927b7624723ce7203272ceeb /include | |
parent | [media] V4L: mx3_camera: implement .stop_streaming() (diff) | |
download | linux-aee5c2f1fc9c7cd2502ff14f818fcedef666f038.tar.xz linux-aee5c2f1fc9c7cd2502ff14f818fcedef666f038.zip |
[media] V4L: soc-camera: add a livecrop host operation
Add an soc-camera host livecrop operation to implement live zoom. If
a host driver implements it, it should take care to preserve output
frame format, then live crop doesn't break streaming.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/media/soc_camera.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/media/soc_camera.h b/include/media/soc_camera.h index f80b5372baf3..844cd09d7d3e 100644 --- a/include/media/soc_camera.h +++ b/include/media/soc_camera.h @@ -80,6 +80,11 @@ struct soc_camera_host_ops { int (*cropcap)(struct soc_camera_device *, struct v4l2_cropcap *); int (*get_crop)(struct soc_camera_device *, struct v4l2_crop *); int (*set_crop)(struct soc_camera_device *, struct v4l2_crop *); + /* + * The difference to .set_crop() is, that .set_livecrop is not allowed + * to change the output sizes + */ + int (*set_livecrop)(struct soc_camera_device *, struct v4l2_crop *); int (*set_fmt)(struct soc_camera_device *, struct v4l2_format *); int (*try_fmt)(struct soc_camera_device *, struct v4l2_format *); void (*init_videobuf)(struct videobuf_queue *, |