|
|
@ -203,12 +203,18 @@ int VideoDev_SVBCam::Open() {
|
|
|
|
|
|
|
|
|
|
|
|
inframe_pixfmt = convert_to_pixelformat(conf_format);
|
|
|
|
inframe_pixfmt = convert_to_pixelformat(conf_format);
|
|
|
|
switch (inframe_pixfmt) {
|
|
|
|
switch (inframe_pixfmt) {
|
|
|
|
|
|
|
|
case (V4L2_PIX_FMT_SGRBG16):
|
|
|
|
|
|
|
|
if ((err = SVBSetOutputImageType(camid, SVB_IMG_RAW16)) != SVB_SUCCESS) {
|
|
|
|
|
|
|
|
print_error(err);
|
|
|
|
|
|
|
|
return VDEV_STATUS_ERROR;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
break;
|
|
|
|
case (V4L2_PIX_FMT_RGB32):
|
|
|
|
case (V4L2_PIX_FMT_RGB32):
|
|
|
|
if ((err = SVBSetOutputImageType(camid, SVB_IMG_RGB32)) != SVB_SUCCESS) {
|
|
|
|
if ((err = SVBSetOutputImageType(camid, SVB_IMG_RGB32)) != SVB_SUCCESS) {
|
|
|
|
print_error(err);
|
|
|
|
print_error(err);
|
|
|
|
return VDEV_STATUS_ERROR;
|
|
|
|
return VDEV_STATUS_ERROR;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case (V4L2_PIX_FMT_RGB24):
|
|
|
|
case (V4L2_PIX_FMT_RGB24):
|
|
|
|
if ((err = SVBSetOutputImageType(camid, SVB_IMG_RGB24)) != SVB_SUCCESS) {
|
|
|
|
if ((err = SVBSetOutputImageType(camid, SVB_IMG_RGB24)) != SVB_SUCCESS) {
|
|
|
|
print_error(err);
|
|
|
|
print_error(err);
|
|
|
@ -362,7 +368,8 @@ int VideoDev_SVBCam::GetDeviceFormats(string device, std::list<string> *formats)
|
|
|
|
Close();
|
|
|
|
Close();
|
|
|
|
return VDEV_STATUS_ERROR;
|
|
|
|
return VDEV_STATUS_ERROR;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
printf ("%s:%d %s height: %ld width: %ld\n", __FILE__, __LINE__, __FUNCTION__, camprop.MaxHeight, camprop.MaxWidth);
|
|
|
|
printf ("%s:%d %s height: %ld width: %ld maxdepth:%d BayerPattern:%d\n", __FILE__, __LINE__, __FUNCTION__, camprop.MaxHeight,
|
|
|
|
|
|
|
|
camprop.MaxWidth, camprop.MaxBitDepth, camprop.BayerPattern);
|
|
|
|
|
|
|
|
|
|
|
|
for(int i=0; i < 8 && camprop.SupportedVideoFormat[i] != SVB_IMG_END; i++) {
|
|
|
|
for(int i=0; i < 8 && camprop.SupportedVideoFormat[i] != SVB_IMG_END; i++) {
|
|
|
|
printf ("%s:%d %s VideoFormat Index:%d ", __FILE__, __LINE__, __FUNCTION__, i);
|
|
|
|
printf ("%s:%d %s VideoFormat Index:%d ", __FILE__, __LINE__, __FUNCTION__, i);
|
|
|
@ -381,6 +388,7 @@ int VideoDev_SVBCam::GetDeviceFormats(string device, std::list<string> *formats)
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case SVB_IMG_RAW16:
|
|
|
|
case SVB_IMG_RAW16:
|
|
|
|
printf("\t\tSVB_IMG_RAW16\n");
|
|
|
|
printf("\t\tSVB_IMG_RAW16\n");
|
|
|
|
|
|
|
|
formats->push_back(convert_from_pixelformat(V4L2_PIX_FMT_SGRBG16));
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case SVB_IMG_Y8:
|
|
|
|
case SVB_IMG_Y8:
|
|
|
|
printf("\t\tSVB_IMG_Y8\n");
|
|
|
|
printf("\t\tSVB_IMG_Y8\n");
|
|
|
|