Merge pull request #1376 from StevenPuttemans:bugfix_3186
This commit is contained in:
commit
41b8479d03
@ -1236,10 +1236,10 @@ static int read_frame_v4l2(CvCaptureCAM_V4L* capture) {
|
|||||||
//set timestamp in capture struct to be timestamp of most recent frame
|
//set timestamp in capture struct to be timestamp of most recent frame
|
||||||
capture->timestamp = buf.timestamp;
|
capture->timestamp = buf.timestamp;
|
||||||
|
|
||||||
return 1;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void mainloop_v4l2(CvCaptureCAM_V4L* capture) {
|
static int mainloop_v4l2(CvCaptureCAM_V4L* capture) {
|
||||||
unsigned int count;
|
unsigned int count;
|
||||||
|
|
||||||
count = 1;
|
count = 1;
|
||||||
@ -1273,8 +1273,13 @@ static void mainloop_v4l2(CvCaptureCAM_V4L* capture) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (read_frame_v4l2 (capture))
|
int readresult = read_frame_v412(capture);
|
||||||
break;
|
if (readresult == 2){
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (readresult){
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1354,7 +1359,10 @@ static int icvGrabFrameCAM_V4L(CvCaptureCAM_V4L* capture) {
|
|||||||
{
|
{
|
||||||
// skip first frame. it is often bad -- this is unnotied in traditional apps,
|
// skip first frame. it is often bad -- this is unnotied in traditional apps,
|
||||||
// but could be fatal if bad jpeg is enabled
|
// but could be fatal if bad jpeg is enabled
|
||||||
mainloop_v4l2(capture);
|
if(!mainloop_v4l2(capture)){
|
||||||
|
fprintf( stderr, "HIGHGUI ERROR: V4L: Could not capture image.\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -1366,9 +1374,10 @@ static int icvGrabFrameCAM_V4L(CvCaptureCAM_V4L* capture) {
|
|||||||
|
|
||||||
if (V4L2_SUPPORT == 1)
|
if (V4L2_SUPPORT == 1)
|
||||||
{
|
{
|
||||||
|
if(!mainloop_v4l2(capture)){
|
||||||
mainloop_v4l2(capture);
|
fprintf( stderr, "HIGHGUI ERROR: V4L: Could not capture image.\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif /* HAVE_CAMV4L2 */
|
#endif /* HAVE_CAMV4L2 */
|
||||||
#if defined(HAVE_CAMV4L) && defined(HAVE_CAMV4L2)
|
#if defined(HAVE_CAMV4L) && defined(HAVE_CAMV4L2)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user