在VideoWriter初始化后,sscanf无法读取

时间:2016-05-17 13:23:45

标签: c++ opencv scanf

我正在使用sscanf通过缓冲区从文件中读取数据,一切正常,直到我添加此行:

VideoWriter video("test0001.avi",CV_FOURCC('H','2','6','4'),30.0,c,true);

如果我对上面的行进行注释,则sscanf会得到正确的结果,但是,如果我使用我的videoWriter(namespace cv),sscanf似乎无法读取该行。 我使用此代码阅读:

cout << test.LineBuffer << endl;
if ( (sscanf(test.LineBuffer, "%*f {\"x\":%f,\"y\":%f,\"o\":%f}", &xi, &yi, &oi )) != 3 )
    {
        cout <<"read " <<  sscanf(test.LineBuffer, "%*f {\"x\":%f,\"y\":%f,\"o\":%f}", &xi, &yi, &oi ) << " numbers \n " <<endl;
        fprintf(stderr,"error ");
        return -1;
    }

我得到了这个结果:

1440074599.111 {"x":1.538,"y":2.095,"o":-0.699}
read 0 numbers

我们可以看到test.Linebuffer包含期望值。但是如果我之前初始化了我的VideoWriter,即使它完全没有连接到其他变量,sscanf也不会读取它

0 个答案:

没有答案