meye.h 2.5 KB

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