00001 /* (C) 2001 Nemosoft Unv. webcam@smcc.demon.nl
00002
00003 This program is free software; you can redistribute it and/or modify
00004 it under the terms of the GNU General Public License as published by
00005 the Free Software Foundation; either version 2 of the License, or
00006 (at your option) any later version.
00007
00008 This program is distributed in the hope that it will be useful,
00009 but WITHOUT ANY WARRANTY; without even the implied warranty of
00010 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00011 GNU General Public License for more details.
00012
00013 You should have received a copy of the GNU General Public License
00014 along with this program; if not, write to the Free Software
00015 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00016 */
00017
00018 #ifndef PWC_IOCTL_H
00019 #define PWC_IOCTL_H
00020
00021 /* These are private ioctl() commands, specific for the Philips webcams.
00022 They contain functions not found in other webcams, and settings not
00023 specified in the Video4Linux API.
00024
00025 The #define names are built up like follows:
00026 VIDIOC VIDeo IOCtl prefix
00027 PWC Philps WebCam
00028 G optional: Get
00029 S optional: Set
00030 ... the function
00031 */
00032
00033
00034
00035
00036 /* The frame rate is encoded in the video_window.flags parameter using
00037 the upper 16 bits, since some flags are defined nowadays. The following
00038 defines provide a mask and shift to filter out this value.
00039
00040 In 'Snapshot' mode the camera freezes its automatic exposure and colour
00041 balance controls.
00042 */
00043 #define PWC_FPS_SHIFT 16
00044 #define PWC_FPS_MASK 0x00FF0000
00045 #define PWC_FPS_FRMASK 0x003F0000
00046 #define PWC_FPS_SNAPSHOT 0x00400000
00047
00048
00049 /* Restore user settings */
00050 #define VIDIOCPWCRUSER _IO('v', 192)
00051 /* Save user settings */
00052 #define VIDIOCPWCSUSER _IO('v', 193)
00053 /* Restore factory settings */
00054 #define VIDIOCPWCFACTORY _IO('v', 194)
00055
00056 /* You can manipulate the compression factor. A compression preference of 0
00057 means use uncompressed modes when available; 1 is low compression, 2 is
00058 medium and 3 is high compression preferred. Of course, the higher the
00059 compression, the lower the bandwidth used but more chance of artefacts
00060 in the image. The driver automatically chooses a higher compression when
00061 the preferred mode is not available.
00062 */
00063 /* Set preferred compression quality (0 = uncompressed, 3 = highest compression) */
00064 #define VIDIOCPWCSCQUAL _IOW('v', 195, int)
00065 /* Get preferred compression quality */
00066 #define VIDIOCPWCGCQUAL _IOR('v', 195, int)
00067
00068 /* Set AGC (Automatic Gain Control); int < 0 = auto, 0..65535 = fixed */
00069 #define VIDIOCPWCSAGC _IOW('v', 200, int)
00070 /* Get AGC; int < 0 = auto; >= 0 = fixed, range 0..65535 */
00071 #define VIDIOCPWCGAGC _IOR('v', 200, int)
00072 /* Set shutter speed; int < 0 = auto; >= 0 = fixed, range 0..65535 */
00073 #define VIDIOCPWCSSHUTTER _IOW('v', 201, int)
00074
00075 #endif
1.2.8.1 written by Dimitri van Heesch,
© 1997-2001