SyntekUSBVideoCamera
|
Driver for Syntek USB video camera. More...
#include <linux/module.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/version.h>
#include <linux/errno.h>
#include <linux/slab.h>
#include <linux/kref.h>
#include <linux/usb.h>
#include <media/v4l2-common.h>
#include "stk11xx.h"
Go to the source code of this file.
Macros | |
#define | MAX(a, b) ((a)>(b)?(a):(b)) |
#define | MIN(a, b) ((a)<(b)?(a):(b)) |
#define | CLIP(a, low, high) MAX((low),MIN((high),(a))) |
Functions | |
void | stk11xx_b2rgb24 (uint8_t *bayer, uint8_t *rgb, struct stk11xx_coord *image, struct stk11xx_coord *view, const int hflip, const int vflip, const int factor) |
This function permits to convert an image from bayer to RGB24. More... | |
void | stk11xx_b2rgb32 (uint8_t *bayer, uint8_t *rgb, struct stk11xx_coord *image, struct stk11xx_coord *view, const int hflip, const int vflip, const int factor) |
This function permits to convert an image from bayer to RGB32. More... | |
void | stk11xx_b2bgr24 (uint8_t *bayer, uint8_t *bgr, struct stk11xx_coord *image, struct stk11xx_coord *view, const int hflip, const int vflip, const int factor) |
This function permits to convert an image from bayer to BGR24. More... | |
void | stk11xx_b2bgr32 (uint8_t *bayer, uint8_t *bgr, struct stk11xx_coord *image, struct stk11xx_coord *view, const int hflip, const int vflip, const int factor) |
This function permits to convert an image from bayer to BGR32. More... | |
void | stk11xx_b2uyvy (uint8_t *bayer, uint8_t *yuv, struct stk11xx_coord *image, struct stk11xx_coord *view, const int hflip, const int vflip, const int factor) |
This function permits to convert an image from bayer to YUV (UYVY) More... | |
void | stk11xx_b2yuyv (uint8_t *bayer, uint8_t *yuv, struct stk11xx_coord *image, struct stk11xx_coord *view, const int hflip, const int vflip, const int factor) |
This function permits to convert an image from bayer to YUV (YUYV) More... | |
void | stk11xx_correct_brightness (uint8_t *img, const int width, const int height, const int brightness, int palette, int depth) |
Correct the brightness of an image. More... | |
int | stk11xx_decompress (struct usb_stk11xx *dev) |
Decompress a frame. More... | |
Variables | |
static signed short | stk11xx_yuv_interp [256][8] |
Driver for Syntek USB video camera.
This program 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 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
Definition in file stk11xx-bayer.c.
void stk11xx_b2bgr24 | ( | uint8_t * | bayer, |
uint8_t * | bgr, | ||
struct stk11xx_coord * | image, | ||
struct stk11xx_coord * | view, | ||
const int | hflip, | ||
const int | vflip, | ||
const int | factor | ||
) |
This function permits to convert an image from bayer to BGR24.
bayer | Buffer with the bayer data |
image | Size of image |
view | Size of view |
hflip | Horizontal flip |
vflip | Vertical flip |
factor | Factor of redimensioning |
bgr | Buffer with the BGR data |
Definition at line 661 of file stk11xx-bayer.c.
References stk11xx_coord::x, and stk11xx_coord::y.
Referenced by stk11xx_decompress().
void stk11xx_b2bgr32 | ( | uint8_t * | bayer, |
uint8_t * | bgr, | ||
struct stk11xx_coord * | image, | ||
struct stk11xx_coord * | view, | ||
const int | hflip, | ||
const int | vflip, | ||
const int | factor | ||
) |
This function permits to convert an image from bayer to BGR32.
bayer | Buffer with the bayer data |
image | Size of image |
view | Size of view |
hflip | Horizontal flip |
vflip | Vertical flip |
factor | Factor of redimensioning |
bgr | Buffer with the BGR data |
Definition at line 800 of file stk11xx-bayer.c.
References stk11xx_coord::x, and stk11xx_coord::y.
Referenced by stk11xx_decompress().
void stk11xx_b2rgb24 | ( | uint8_t * | bayer, |
uint8_t * | rgb, | ||
struct stk11xx_coord * | image, | ||
struct stk11xx_coord * | view, | ||
const int | hflip, | ||
const int | vflip, | ||
const int | factor | ||
) |
This function permits to convert an image from bayer to RGB24.
bayer | Buffer with the bayer data |
image | Size of image |
view | Size of view |
hflip | Horizontal flip |
vflip | Vertical flip |
factor | Factor of redimensioning |
rgb | Buffer with the RGB data |
Definition at line 375 of file stk11xx-bayer.c.
References stk11xx_coord::x, and stk11xx_coord::y.
Referenced by stk11xx_decompress().
void stk11xx_b2rgb32 | ( | uint8_t * | bayer, |
uint8_t * | rgb, | ||
struct stk11xx_coord * | image, | ||
struct stk11xx_coord * | view, | ||
const int | hflip, | ||
const int | vflip, | ||
const int | factor | ||
) |
This function permits to convert an image from bayer to RGB32.
bayer | Buffer with the bayer data |
image | Size of image |
view | Size of view |
hflip | Horizontal flip |
vflip | Vertical flip |
factor | Factor of redimensioning |
rgb | Buffer with the RGB data |
Definition at line 514 of file stk11xx-bayer.c.
References stk11xx_coord::x, and stk11xx_coord::y.
Referenced by stk11xx_decompress().
void stk11xx_b2uyvy | ( | uint8_t * | bayer, |
uint8_t * | yuv, | ||
struct stk11xx_coord * | image, | ||
struct stk11xx_coord * | view, | ||
const int | hflip, | ||
const int | vflip, | ||
const int | factor | ||
) |
This function permits to convert an image from bayer to YUV (UYVY)
bayer | Buffer with the bayer data |
image | Size of image |
view | Size of view |
hflip | Horizontal flip |
vflip | Vertical flip |
factor | Factor of redimensioning |
yuv | Buffer with the YUV data |
Definition at line 947 of file stk11xx-bayer.c.
References stk11xx_coord::x, and stk11xx_coord::y.
Referenced by stk11xx_decompress().
void stk11xx_b2yuyv | ( | uint8_t * | bayer, |
uint8_t * | yuv, | ||
struct stk11xx_coord * | image, | ||
struct stk11xx_coord * | view, | ||
const int | hflip, | ||
const int | vflip, | ||
const int | factor | ||
) |
This function permits to convert an image from bayer to YUV (YUYV)
bayer | Buffer with the bayer data |
image | Size of image |
view | Size of view |
hflip | Horizontal flip |
vflip | Vertical flip |
factor | Factor of redimensioning |
yuv | Buffer with the YUV data |
Definition at line 1126 of file stk11xx-bayer.c.
References stk11xx_coord::x, and stk11xx_coord::y.
Referenced by stk11xx_decompress().
void stk11xx_correct_brightness | ( | uint8_t * | img, |
const int | width, | ||
const int | height, | ||
const int | brightness, | ||
int | palette, | ||
int | depth | ||
) |
Correct the brightness of an image.
This function permits to correct the brightness of an image.
img | Buffer to RGB/YUV data |
width | Width of frame |
height | Height of frame |
brightness | Brightness correction |
depth | Color depth |
rgb | Buffer to RGB/YUV data |
Definition at line 271 of file stk11xx-bayer.c.
References brightness.
Referenced by stk11xx_decompress().
int stk11xx_decompress | ( | struct usb_stk11xx * | dev | ) |
Decompress a frame.
This function permits to decompress a frame from the video stream.
dev | Device structure |
Definition at line 155 of file stk11xx-bayer.c.
References stk11xx_video::brightness, stk11xx_video::depth, stk11xx_video::hflip, stk11xx_image_buf::offset, stk11xx_video::palette, stk11xx_b2bgr24(), stk11xx_b2bgr32(), stk11xx_b2rgb24(), stk11xx_b2rgb32(), stk11xx_b2uyvy(), stk11xx_b2yuyv(), stk11xx_correct_brightness(), stk11xx_video::vflip, usb_stk11xx::vsettings, stk11xx_coord::x, and stk11xx_coord::y.
Referenced by dev_stk11xx_decompress().