Video4Linux Programming

Alan Cox

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

For more details see the file COPYING in the source distribution of Linux.

Table of Contents
1. Introduction
2. Radio Devices
2.1. Registering Radio Devices
2.2. Opening And Closing The Radio
2.3. The Ioctl Interface
2.4. Module Wrapper
3. Video Capture Devices
3.1. Video Capture Device Types
3.2. Registering Video Capture Devices
3.3. Opening And Closing The Capture Device
3.4. Interrupt Handling
3.5. Reading The Video Image
3.6. Video Ioctl Handling
3.7. Other Functionality
4. Known Bugs And Assumptions
5. Public Functions Provided
video_unregister_device --  unregister a video4linux device
List of Tables
2-1. Device Types
2-2. struct video_capability fields
2-3. struct video_tuner fields
2-4. struct video_tuner flags
2-5. struct video_tuner modes
2-6. struct video_audio fields
2-7. struct video_audio flags
2-8. struct video_audio modes
3-1. Capture Capabilities
3-2. struct video_channel fields
3-3. struct video_channel flags
3-4. struct video_channel types
3-5. struct video_channel norms
3-6. Framebuffer Encodings
3-7. struct video_window fields
3-8. video_clip fields