如何在特定文件中检查(控制).avi格式的视频文件,是否超过0KB且可读?

时间:2016-08-18 13:17:36

标签: c++ file opencv readable

如何检查(控制)特定文件中的.avi格式视频文件,是否超过0KB且可读?

例如

; 我有一个录像机按钮,我点击它,然后我的功能记录1分钟并保存到文件test.avi(这个功能在一段时间(真){}声明)

in while(true)

另存为test.avi

另存为test2.avi

另存为test8.avi

那么如何检查这个test.avi和所有其他的视频文件,如果(test.avi不是0KB且可读),我该怎么办?

int main(void) {

    while (true)
    {
        //Check if test.avi ready
        if (test.avi is not 0KB and readable)
        {
            doSomeStuff01();

        }
        /* Check one more Time
        else
        {

        }*/
        //Check if test2.avi ready
        if (test2.avi is not 0KB and readable)
        {
            doSomeStuff02();
        }
        /* Check one more Time
        else
        {

        }*/
        //Check if test3.avi ready
        if (test3.avi is not 0KB and readable)
        {
            doSomeStuff03();
        }
        /* Check one more Time
        else
        {

        }*/
        //Check if test4.avi ready
        if (test4.avi is not 0KB and readable)
        {
            doSomeStuff04();
        }
        /* Check one more Time
        else
        {

        }*/
        //Check if test5.avi ready
        if (test5.avi is not 0KB and readable)
        {
            doSomeStuff05();
        }
        /* Check one more Time
        else
        {

        }*/
        //Check if test6.avi ready
        if (test6.avi is not 0KB and readable)
        {
            doSomeStuff06();
        }
        /* Check one more Time
        else
        {

        }*/
        //Check if test7.avi ready
        if (test7.avi is not 0KB and readable)
        {
            doSomeStuff07();
        }
        /* Check one more Time
        else
        {

        }*/
        //Check if test8.avi ready
        if (test8.avi is not 0KB and readable)
        {
            doSomeStuff08();
        }
        /* Check one more Time
        else
        {

        }*/

    }


    return(0);
}

1 个答案:

答案 0 :(得分:0)

可能有更好的解决方案,但这里有一个想法:

  1. 创建一个VideoCapture并检查是否可以打开.avi文件,否则会捕获异常; http://docs.opencv.org/3.0-beta/modules/videoio/doc/reading_and_writing_video.html

  2. 如果视频为0 kB =无帧:

  3. if(frame.empty()){ cout << "frame is empty" << endl; }