如何判断视频是否在opencv中结束?

Vla*_*col 0 c++ opencv video-capture

我试图让视频循环播放.我想检查它是否到达视频的末尾,以便我可以重新实现它; 我如何让它循环?

 VideoStream::VideoStream(Filters* f, char* fileNam):
            filter(f),
            fileName(fileNam){
    TestON = true;
    cap = new VideoCapture(fileNam);
};


void VideoStream::readFrame(){
    if(!cap->isOpened())  // check if we succeeded
    cerr<<"cannot open video file";
    if(cap->get(CV_CAP_PROP_POS_AVI_RATIO==1)){
          cap = new VideoCapture(fileName);
    }
    Mat image;
    cap->read(image);
    if(!image.empty())
        imshow("haha", image);
    waitKey(1);
    image.release();
};
Run Code Online (Sandbox Code Playgroud)

Pag*_*ian 5

VideoCapture::read()返回一个布尔值.如果false这意味着相机已断开连接或视频文件中没有更多帧.