src/StrmParms.c File Reference

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
#include <linux/videodev2.h>
#include "rgb133v4l2.h"

Defines

#define NUM_INPUTS   1
#define DEVICE_OFFSET   0

Functions

int main (int argc, char *argv[])

Define Documentation

#define DEVICE_OFFSET   0

#define NUM_INPUTS   1


Function Documentation

int main ( int  argc,
char *  argv[] 
)

00019 {
00020    int fd = 0;
00021    int i = 0;
00022    struct v4l2_streamparm parms;
00023 
00024    char device_name[128];
00025 
00026    memset(device_name, 0, 128);
00027 
00028    for(i=0; i<NUM_INPUTS; i++)
00029    {
00030       sprintf(device_name, "/dev/video%d", i+DEVICE_OFFSET);
00031       printf("\n\nDevice: %s\n", device_name);
00032       fd = open(device_name, O_RDWR);
00033       if(fd < 0)
00034       {
00035          printf("Failed to open device: %s\n", device_name);
00036          exit(0);
00037       }
00038 
00039       memset (&parms, 0, sizeof(struct v4l2_streamparm));
00040       parms.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
00041       if(ioctl(fd, VIDIOC_G_PARM, &parms) < 0)
00042       {
00043          perror("Failed to get capture streaming parms: ");
00044          close(fd);
00045          exit(0);
00046       }
00047 
00048       printf("Capability(0x%x) Mode(0x%x) Timeperframe(%u/%u)\n",
00049          parms.parm.capture.capability,
00050          parms.parm.capture.capturemode,
00051          parms.parm.capture.timeperframe.numerator,
00052          parms.parm.capture.timeperframe.denominator);
00053 
00054       memset (&parms, 0, sizeof(struct v4l2_streamparm));
00055       parms.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
00056       parms.parm.capture.timeperframe.numerator = 1001;
00057       parms.parm.capture.timeperframe.denominator = 60000;
00058 
00059       printf("Set Timeperframe(%u/%u)\n",
00060          parms.parm.capture.timeperframe.numerator,
00061          parms.parm.capture.timeperframe.denominator);
00062 
00063       if(ioctl(fd, VIDIOC_S_PARM, &parms) < 0)
00064       {
00065          perror("Failed to set capture streaming parms: ");
00066          close(fd);
00067          exit(0);
00068       }
00069 
00070       memset (&parms, 0, sizeof(struct v4l2_streamparm));
00071       parms.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
00072       if(ioctl(fd, VIDIOC_G_PARM, &parms) < 0)
00073       {
00074          perror("Failed to get capture streaming parms: ");
00075          close(fd);
00076          exit(0);
00077       }
00078 
00079       printf("Capability(0x%x) Mode(0x%x) Timeperframe(%u/%u)\n",
00080          parms.parm.capture.capability,
00081          parms.parm.capture.capturemode,
00082          parms.parm.capture.timeperframe.numerator,
00083          parms.parm.capture.timeperframe.denominator);
00084 
00085       close(fd);
00086    }
00087 
00088    return 0;
00089 }


Generated on Fri Jan 20 10:36:57 2017 for Vision Utils by  doxygen 1.4.7