130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* 230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Motion Eye video4linux driver for Sony Vaio PictureBook 330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Copyright (C) 2001-2003 Stelian Pop <stelian@popies.net> 530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Copyright (C) 2001-2002 Alcôve <www.alcove.com> 730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Copyright (C) 2000 Andrew Tridgell <tridge@valinux.com> 930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 1030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Earlier work by Werner Almesberger, Paul `Rusty' Russell and Paul Mackerras. 1130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 1230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Some parts borrowed from various video4linux drivers, especially 1330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * bttv-driver.c and zoran.c, see original files for credits. 1430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 1530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * This program is free software; you can redistribute it and/or modify 1630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * it under the terms of the GNU General Public License as published by 1730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * the Free Software Foundation; either version 2 of the License, or 1830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * (at your option) any later version. 1930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 2030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * This program is distributed in the hope that it will be useful, 2130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * but WITHOUT ANY WARRANTY; without even the implied warranty of 2230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 2330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * GNU General Public License for more details. 2430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * 2530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * You should have received a copy of the GNU General Public License 2630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * along with this program; if not, write to the Free Software 2730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 2830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng */ 2930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng 3030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#ifndef _MEYE_H_ 3130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define _MEYE_H_ 3230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng 3330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/****************************************************************************/ 3430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* Private API for handling mjpeg capture / playback. */ 3530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/****************************************************************************/ 3630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng 3730692c65c4174412c90e79489e98ab85c1a7412fBen Chengstruct meye_params { 3830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng unsigned char subsample; 3930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng unsigned char quality; 4030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng unsigned char sharpness; 4130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng unsigned char agc; 4230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng unsigned char picture; 4330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng unsigned char framerate; 4430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng}; 4530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng 4630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* query the extended parameters */ 4730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define MEYEIOC_G_PARAMS _IOR ('v', BASE_VIDIOC_PRIVATE+0, struct meye_params) 4830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* set the extended parameters */ 4930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define MEYEIOC_S_PARAMS _IOW ('v', BASE_VIDIOC_PRIVATE+1, struct meye_params) 5030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* queue a buffer for mjpeg capture */ 5130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define MEYEIOC_QBUF_CAPT _IOW ('v', BASE_VIDIOC_PRIVATE+2, int) 5230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* sync a previously queued mjpeg buffer */ 5330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define MEYEIOC_SYNC _IOWR('v', BASE_VIDIOC_PRIVATE+3, int) 5430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* get a still uncompressed snapshot */ 5530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define MEYEIOC_STILLCAPT _IO ('v', BASE_VIDIOC_PRIVATE+4) 5630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* get a jpeg compressed snapshot */ 5730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define MEYEIOC_STILLJCAPT _IOR ('v', BASE_VIDIOC_PRIVATE+5, int) 5830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng 5930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/* V4L2 private controls */ 6030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define V4L2_CID_MEYE_AGC (V4L2_CID_USER_MEYE_BASE + 0) 6130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define V4L2_CID_MEYE_PICTURE (V4L2_CID_USER_MEYE_BASE + 1) 6230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define V4L2_CID_MEYE_FRAMERATE (V4L2_CID_USER_MEYE_BASE + 2) 6330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng 6430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#endif 65