Capture 1280x720 using OV5642 module
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am using i.MX6 based hardware with which OV5642 module is connected. I am trying to write a application which captures various resolutions of raw video.
Using this application I am able to capture 640x480 and 720x480 raw video. But when I try to capture 1280x720 video it gives me following errors:
--------------------------------------------------------------------------------------------------------------------------------
imx-ipuv3 2400000.ipu: IC output size(1080) cannot exceed 1024
imx-ipuv3 2400000.ipu: failed to calculate prpenc height scaling coefficients
imx-ipuv3 2400000.ipu: IPU Warning - IPU_INT_STAT_5 = 0x00100000
--------------------------------------------------------------------------------------------------------------------------------
Still it continues to capture the frames and dumps it to the file. But when I am playing back that file there was nothing.
Can someone please help me on this?
It would be great if someone can share some sample application for the same.
Thanks,
Dhaval
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
HI Dhaval
for 720P one needs to set capture-mode=4 (one can check with
gst-inspect mfw_v4lsrc), examples can be found on
ov5642 1080p 30 fps and sabre light
Linux Software User Manual (i.MX6) - BlueWiki
error: "IC output size(1080) cannot exceed 1024" means that IPU IC submodule
(used for rotation or resizing) output size is restricted to 1024 max.
So one needs to split image on smaller areas and process (for example rotate)
them, after that combine to whole image.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Igor,
Thanks for your quick reply!
As you suggested, I configured the Capture Mode = 4 following way :
// Set capture stream parameters
struct v4l2_streamparm streamParams;
streamParams.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
streamParams.parm.capture.capturemode = 4;
streamParams.parm.capture.timeperframe.denominator = 30;
streamParams.parm.capture.timeperframe.numerator = 1;
if (0 > ioctl(deviceFd, VIDIOC_S_PARM, &streamParams)) {
printf("ERROR: Failed to set video stream parameters\n");
return -1;
}
But still the captured raw data is not correct. I have attached the snapshot of the same. Also, I didn't find any sample code of video capture on the links you have mentioned.
How the IPU IC Submodule activated, automatically? I haven't done that.
Thanks,
Dhaval
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Have you solved this issue.?
Regards,
Aravinth
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Dhaval,
Did you ever solve this issue?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
HI Dhaval
one can look at below links where similar problem was discussed
https://community.freescale.com/message/361253#361253
https://community.freescale.com/message/373795#373795
Best regards
igor