switch (pixfmt) {
case V4L2_PIX_FMT_YUV420:
case V4L2_PIX_FMT_YVU420:
- bytesperline = (width * 12) >> 3;
+ bytesperline = width;
break;
case V4L2_PIX_FMT_YUYV:
case V4L2_PIX_FMT_UYVY:
static uint32_t get_sizeimage(uint32_t pixfmt, uint32_t width, uint32_t height)
{
- return get_bytesperline(pixfmt, width) * height;
+ uint32_t sizeimage;
+
+ switch (pixfmt) {
+ case V4L2_PIX_FMT_YUV420:
+ case V4L2_PIX_FMT_YVU420:
+ sizeimage = height * ((width * 12) >> 3);
+ break;
+ case V4L2_PIX_FMT_YUYV:
+ case V4L2_PIX_FMT_UYVY:
+ default:
+ sizeimage = height * width * 2;
+ break;
+ }
+
+
+ return sizeimage;
}
+
/******************************************************************
** Maru Camera Implementation
*****************************************************************/
switch (pixfmt) {
case V4L2_PIX_FMT_YUV420:
case V4L2_PIX_FMT_YVU420:
- bytesperline = (width * 12) >> 3;
+ bytesperline = width;
break;
case V4L2_PIX_FMT_YUYV:
default:
static uint32_t get_sizeimage(uint32_t pixfmt, uint32_t width, uint32_t height)
{
- return get_bytesperline(pixfmt, width) * height;
+ uint32_t sizeimage;
+
+ switch (pixfmt) {
+ case V4L2_PIX_FMT_YUV420:
+ case V4L2_PIX_FMT_YVU420:
+ sizeimage = height * ((width * 12) >> 3);
+ break;
+ case V4L2_PIX_FMT_YUYV:
+ default:
+ sizeimage = height * width * 2;
+ break;
+ }
+
+
+ return sizeimage;
}
void yuyv_to_yuv420(const unsigned char *src, unsigned char *dest,