1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */ 2 /* 3 * Motion Eye video4linux driver for Sony Vaio PictureBook 4 * 5 * Copyright (C) 2001-2003 Stelian Pop <stelian@popies.net> 6 * 7 * Copyright (C) 2001-2002 Alcôve <www.alcove.com> 8 * 9 * Copyright (C) 2000 Andrew Tridgell <tridge@valinux.com> 10 * 11 * Earlier work by Werner Almesberger, Paul `Rusty' Russell and Paul Mackerras. 12 * 13 * Some parts borrowed from various video4linux drivers, especially 14 * bttv-driver.c and zoran.c, see original files for credits. 15 * 16 * This program is free software; you can redistribute it and/or modify 17 * it under the terms of the GNU General Public License as published by 18 * the Free Software Foundation; either version 2 of the License, or 19 * (at your option) any later version. 20 * 21 * This program is distributed in the hope that it will be useful, 22 * but WITHOUT ANY WARRANTY; without even the implied warranty of 23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 24 * GNU General Public License for more details. 25 * 26 * You should have received a copy of the GNU General Public License 27 * along with this program; if not, write to the Free Software 28 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 29 */ 30 31 #ifndef _MEYE_H_ 32 #define _MEYE_H_ 33 34 /****************************************************************************/ 35 /* Private API for handling mjpeg capture / playback. */ 36 /****************************************************************************/ 37 38 struct meye_params { 39 unsigned char subsample; 40 unsigned char quality; 41 unsigned char sharpness; 42 unsigned char agc; 43 unsigned char picture; 44 unsigned char framerate; 45 }; 46 47 /* query the extended parameters */ 48 #define MEYEIOC_G_PARAMS _IOR ('v', BASE_VIDIOC_PRIVATE+0, struct meye_params) 49 /* set the extended parameters */ 50 #define MEYEIOC_S_PARAMS _IOW ('v', BASE_VIDIOC_PRIVATE+1, struct meye_params) 51 /* queue a buffer for mjpeg capture */ 52 #define MEYEIOC_QBUF_CAPT _IOW ('v', BASE_VIDIOC_PRIVATE+2, int) 53 /* sync a previously queued mjpeg buffer */ 54 #define MEYEIOC_SYNC _IOWR('v', BASE_VIDIOC_PRIVATE+3, int) 55 /* get a still uncompressed snapshot */ 56 #define MEYEIOC_STILLCAPT _IO ('v', BASE_VIDIOC_PRIVATE+4) 57 /* get a jpeg compressed snapshot */ 58 #define MEYEIOC_STILLJCAPT _IOR ('v', BASE_VIDIOC_PRIVATE+5, int) 59 60 /* V4L2 private controls */ 61 #define V4L2_CID_MEYE_AGC (V4L2_CID_USER_MEYE_BASE + 0) 62 #define V4L2_CID_MEYE_PICTURE (V4L2_CID_USER_MEYE_BASE + 1) 63 #define V4L2_CID_MEYE_FRAMERATE (V4L2_CID_USER_MEYE_BASE + 2) 64 65 #endif 66