Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

pwc-ioctl.h

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

Generated at Fri Aug 13 17:29:21 2004 for libRTImage by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001