ubuntu で opencv c++ を使用して avi ファイルで再生しようとしていますが、出力が得られません。私が使用しているコードは、aviビデオを再生するために使用されるオンラインで見つけた標準コードですが、出力が表示されません。はい、ビデオは私のsrcコードフォルダーと同じディレクトリにあります。私が見ている唯一のことは、while ループの最初の反復で、フレームが空であるため壊れていることです。しかし、ビデオがvlcで動作しているため、なぜそれが起こっているのかわかりません。過去4〜5時間立ち往生しているので、ここで助けていただければ幸いです。#include "cv.h" // 使用するメインの OpenCV 関数にインクルードします。#include "highgui.h" //GUI 機能を使用するためにインクルードします。
int main(int argc, char** argv)
{
cvNamedWindow("Example3", CV_WINDOW_AUTOSIZE);
//CvCapture* capture = cvCreateFileCapture("20051210-w50s.flv");
CvCapture* capture = cvCreateFileCapture("tree.avi");
/* if(!capture)
{
std::cout <<"Video Not Opened\n";
return -1;
}*/
IplImage* frame = NULL;
while(1) {
frame = cvQueryFrame(capture);
//std::cout << "Inside loop\n";
if (!frame)
break;
cvShowImage("Example3", frame);
char c = cvWaitKey(33);
if (c == 27) break;
}
cvReleaseCapture(&capture);
cvDestroyWindow("Example3");
std::cout << "Hello!";
return 0;
}