summaryrefslogtreecommitdiff
path: root/linux/include
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2007-05-19 19:50:35 +0200
committerHans Verkuil <hverkuil@xs4all.nl>2007-05-19 19:50:35 +0200
commit29993ba41c50e8096ffd25fe704990479248d061 (patch)
tree209e48cfa72b02bfa1543f11469855d6a349e76c /linux/include
parente65320dd8af749a0fe8242b59921b56d4eaf8d27 (diff)
downloadmediapointer-dvb-s2-29993ba41c50e8096ffd25fe704990479248d061.tar.gz
mediapointer-dvb-s2-29993ba41c50e8096ffd25fe704990479248d061.tar.bz2
Use v4l2_pix_out_fmt instead of v4l2_pix_fmt for video output format
From: Hans Verkuil <hverkuil@xs4all.nl> Adding top/left fields to v4l2_pix_fmt broke the ABI. To fix this a new v4l2_pix_out_fmt struct was introduced to specify the video output format. This new struct *does* have the additional top/left fields. The V4L2_CAP_VIDEO_OUTPUT_POS capability that was introduced is no longer needed and is removed. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Diffstat (limited to 'linux/include')
-rw-r--r--linux/include/linux/videodev2.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/linux/include/linux/videodev2.h b/linux/include/linux/videodev2.h
index 8e46a2029..3d92c6b69 100644
--- a/linux/include/linux/videodev2.h
+++ b/linux/include/linux/videodev2.h
@@ -243,8 +243,7 @@ struct v4l2_capability
#define V4L2_CAP_SLICED_VBI_CAPTURE 0x00000040 /* Is a sliced VBI capture device */
#define V4L2_CAP_SLICED_VBI_OUTPUT 0x00000080 /* Is a sliced VBI output device */
#define V4L2_CAP_RDS_CAPTURE 0x00000100 /* RDS data capture */
-#define V4L2_CAP_VIDEO_OUTPUT_POS 0x00000200 /* Video output can have x,y coords */
-#define V4L2_CAP_VIDEO_OUTPUT_OVERLAY 0x00000400 /* Can do video output overlay */
+#define V4L2_CAP_VIDEO_OUTPUT_OVERLAY 0x00000200 /* Can do video output overlay */
#define V4L2_CAP_TUNER 0x00010000 /* has a tuner */
#define V4L2_CAP_AUDIO 0x00020000 /* has audio support */
@@ -1274,6 +1273,23 @@ struct v4l2_encoder_cmd {
* Data services API by Michael Schimek
*/
+/* Video output format */
+/* The first part of this structure is identical to the v4l2_pix_format
+ structure, the fields after 'priv' are specific to the video output format. */
+struct v4l2_pix_out_format
+{
+ __u32 width;
+ __u32 height;
+ __u32 pixelformat;
+ enum v4l2_field field;
+ __u32 bytesperline; /* for padding, zero if unused */
+ __u32 sizeimage;
+ enum v4l2_colorspace colorspace;
+ __u32 priv; /* private data, depends on pixelformat */
+ __u32 top;
+ __u32 left;
+};
+
/* Raw VBI */
struct v4l2_vbi_format
{
@@ -1356,6 +1372,7 @@ struct v4l2_format
union
{
struct v4l2_pix_format pix; // V4L2_BUF_TYPE_VIDEO_CAPTURE
+ struct v4l2_pix_out_format pix_out; // V4L2_BUF_TYPE_VIDEO_OUTPUT
struct v4l2_window win; // V4L2_BUF_TYPE_VIDEO_OVERLAY
struct v4l2_vbi_format vbi; // V4L2_BUF_TYPE_VBI_CAPTURE
struct v4l2_sliced_vbi_format sliced; // V4L2_BUF_TYPE_SLICED_VBI_CAPTURE